From 5be717c021102b66a0b387a4993588e2852c371f Mon Sep 17 00:00:00 2001 From: truckman Date: Sun, 11 Jan 2004 23:44:32 +0000 Subject: Don't try to unlock the directory vnode in null_lookup() if the lock is shared with the underlying file system and the lookup in the underlying file system did the unlock for us. --- sys/fs/nullfs/null_vnops.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sys/fs') diff --git a/sys/fs/nullfs/null_vnops.c b/sys/fs/nullfs/null_vnops.c index c4d6f00f..c528a13 100644 --- a/sys/fs/nullfs/null_vnops.c +++ b/sys/fs/nullfs/null_vnops.c @@ -392,7 +392,7 @@ null_lookup(ap) * Rely only on the PDIRUNLOCK flag which should be carefully * tracked by underlying filesystem. */ - if (cnp->cn_flags & PDIRUNLOCK) + if ((cnp->cn_flags & PDIRUNLOCK) && dvp->v_vnlock != ldvp->v_vnlock) VOP_UNLOCK(dvp, LK_THISLAYER, td); if ((error == 0 || error == EJUSTRETURN) && lvp != NULL) { if (ldvp == lvp) { -- cgit v1.1