summaryrefslogtreecommitdiff
path: root/tmpfs/tmpfs.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2002-03-24 01:48:26 +0000
committerRoland McGrath <roland@gnu.org>2002-03-24 01:48:26 +0000
commite032a9c4b8bf2b5404225fd3a064724682be6a02 (patch)
tree0792f5057400b7c11fd25cf2e473238062d5cc29 /tmpfs/tmpfs.c
parentf568eeb7d5680e73f776627eec514991323d0e96 (diff)
2002-03-23 Roland McGrath <roland@frob.com>
* tmpfs.c (main): Don't release REALNODE.
Diffstat (limited to 'tmpfs/tmpfs.c')
-rw-r--r--tmpfs/tmpfs.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/tmpfs/tmpfs.c b/tmpfs/tmpfs.c
index 63031eca..b7268282 100644
--- a/tmpfs/tmpfs.c
+++ b/tmpfs/tmpfs.c
@@ -1,5 +1,5 @@
/* Main program and global state for tmpfs.
- Copyright (C) 2000, 2001 Free Software Foundation, Inc.
+ Copyright (C) 2000,01,02 Free Software Foundation, Inc.
This file is part of the GNU Hurd.
@@ -265,7 +265,6 @@ main (int argc, char **argv)
/* Propagate permissions, owner, etc. from underlying node to
the root directory of the new (empty) filesystem. */
err = io_stat (realnode, &st);
- mach_port_deallocate (mach_task_self (), realnode);
if (err)
{
error (0, err, "cannot stat underlying node");
@@ -294,6 +293,9 @@ main (int argc, char **argv)
diskfs_root_node->dn_stat.st_mode |= S_IROOT;
diskfs_root_node->dn_stat.st_nlink = 2;
+ /* We must keep the REALNODE send right to remain the active
+ translator for the underlying node. */
+
mutex_unlock (&diskfs_root_node->lock);
/* and so we die, leaving others to do the real work. */