Module Name: src
Committed By: manu
Date: Fri Aug 10 14:52:57 UTC 2012
Modified Files:
src/sys/fs/puffs: puffs_vnops.c
Log Message:
Missing bit in previous commit (prevent race between create|mknod|mkdir|symlink
and reclaim)
To generate a diff of this commit:
cvs rdiff -u -r1.172 -r1.173 src/sys/fs/puffs/puffs_vnops.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/fs/puffs/puffs_vnops.c
diff -u src/sys/fs/puffs/puffs_vnops.c:1.172 src/sys/fs/puffs/puffs_vnops.c:1.173
--- src/sys/fs/puffs/puffs_vnops.c:1.172 Fri Aug 10 08:42:11 2012
+++ src/sys/fs/puffs/puffs_vnops.c Fri Aug 10 14:52:56 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: puffs_vnops.c,v 1.172 2012/08/10 08:42:11 manu Exp $ */
+/* $NetBSD: puffs_vnops.c,v 1.173 2012/08/10 14:52:56 manu Exp $ */
/*
* Copyright (c) 2005, 2006, 2007 Antti Kantee. All Rights Reserved.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: puffs_vnops.c,v 1.172 2012/08/10 08:42:11 manu Exp $");
+__KERNEL_RCSID(0, "$NetBSD: puffs_vnops.c,v 1.173 2012/08/10 14:52:56 manu Exp $");
#include <sys/param.h>
#include <sys/buf.h>
@@ -761,6 +761,8 @@ puffs_vnop_create(void *v)
va_ttl, cn_ttl, SETATTR_CHSIZE);
}
+ VPTOPP(*ap->a_vpp)->pn_nlookup++;
+
out:
vput(dvp);
@@ -818,6 +820,8 @@ puffs_vnop_mknod(void *v)
va_ttl, cn_ttl, SETATTR_CHSIZE);
}
+ VPTOPP(*ap->a_vpp)->pn_nlookup++;
+
out:
vput(dvp);
PUFFS_MSG_RELEASE(mknod);
@@ -1791,6 +1795,8 @@ puffs_vnop_mkdir(void *v)
va_ttl, cn_ttl, SETATTR_CHSIZE);
}
+ VPTOPP(*ap->a_vpp)->pn_nlookup++;
+
out:
vput(dvp);
PUFFS_MSG_RELEASE(mkdir);
@@ -1955,6 +1961,8 @@ puffs_vnop_symlink(void *v)
va_ttl, cn_ttl, SETATTR_CHSIZE);
}
+ VPTOPP(*ap->a_vpp)->pn_nlookup++;
+
out:
vput(dvp);
PUFFS_MSG_RELEASE(symlink);