From 9b7b5a29f5a8a10f96ce1d2737e1c86f1254b4f3 Mon Sep 17 00:00:00 2001 From: "Michael I. Bushnell" Date: Fri, 21 Jul 1995 21:51:25 +0000 Subject: (diskfs_get_filemap): Free initial reference created by pager_create. --- ext2fs/pager.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'ext2fs') diff --git a/ext2fs/pager.c b/ext2fs/pager.c index 97fdd31b..558c87e4 100644 --- a/ext2fs/pager.c +++ b/ext2fs/pager.c @@ -671,8 +671,12 @@ diskfs_get_filemap (struct node *node) upi->p = pager_create (upi, pager_bucket, MAY_CACHE, MEMORY_OBJECT_COPY_DELAY); node->dn->fileinfo = upi; + right = pager_get_port (node->dn->fileinfo->p); + ports_port_deref (node->dn->fileinfo->p); } - right = pager_get_port (node->dn->fileinfo->p); + else + /* XXX race; see ufs/pager.c here. */ + right = pager_get_port (node->dn->fileinfo->p); spin_unlock (&node_to_page_lock); mach_port_insert_right (mach_task_self (), right, right, -- cgit v1.2.3