summaryrefslogtreecommitdiff
path: root/ufs
diff options
context:
space:
mode:
authorHurd Maintainers <hurd-maintainers@gnu.org>1994-10-06 02:18:38 +0000
committerHurd Maintainers <hurd-maintainers@gnu.org>1994-10-06 02:18:38 +0000
commit5b306b8c5c71825f2cfa3ab9c7d14fb8319d5daf (patch)
tree0e2bc8aabee520baf026717f0490231922cce16b /ufs
parent62142106252c36ee8e966b4b58696a00c9637194 (diff)
entered into RCS
Diffstat (limited to 'ufs')
-rw-r--r--ufs/inode.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/ufs/inode.c b/ufs/inode.c
index 9321d2e8..e5ba31c9 100644
--- a/ufs/inode.c
+++ b/ufs/inode.c
@@ -211,10 +211,10 @@ diskfs_new_hardrefs (struct node *np)
static error_t
read_disknode (struct node *np)
{
+ static int fsid, fsidset;
struct stat *st = &np->dn_stat;
struct dinode *di = dino (np->dn->number);
error_t err;
- volatile long long pid = getpid ();
err = diskfs_catch_exception ();
if (err)
@@ -222,8 +222,14 @@ read_disknode (struct node *np)
np->istranslated = !! di->di_trans;
+ if (!fsidset)
+ {
+ fsid = getpid ();
+ fsidset = 1;
+ }
+
st->st_fstype = FSTYPE_UFS;
- st->st_fsid = pid;
+ st->st_fsid = fsid;
st->st_ino = np->dn->number;
st->st_gen = di->di_gen;
st->st_rdev = di->di_rdev;