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.
This commit is contained in:
Don Lewis 2004-01-11 23:44:32 +00:00
parent a7a120f649
commit b8b67f93a4
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=124404

View File

@ -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) {