diff options
author | eivind <eivind@FreeBSD.org> | 1999-12-18 22:57:38 +0000 |
---|---|---|
committer | eivind <eivind@FreeBSD.org> | 1999-12-18 22:57:38 +0000 |
commit | b264357e5d8dd3bf1d25f4aa7190a4055990a966 (patch) | |
tree | 1416122f7a35c7e61ad01506878db8d89d19159f /sys | |
parent | c663a6bbe90e1e5d7ad54c1c05d4395ef28991bd (diff) | |
download | FreeBSD-src-b264357e5d8dd3bf1d25f4aa7190a4055990a966.zip FreeBSD-src-b264357e5d8dd3bf1d25f4aa7190a4055990a966.tar.gz |
Do NOT unlock dvp if LOCKPARENT && vp == dvp. Does not affect any code
presently in the tree.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/sys/namei.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/sys/namei.h b/sys/sys/namei.h index 143c0f0..29e35e1 100644 --- a/sys/sys/namei.h +++ b/sys/sys/namei.h @@ -181,7 +181,8 @@ NDINIT(ndp, op, flags, segflg, namep, p) _ndp->ni_cnd.cn_flags &= ~HASBUF; \ } \ if (!(_flags & NDF_NO_DVP_UNLOCK) && \ - (_ndp->ni_cnd.cn_flags & LOCKPARENT)) \ + (_ndp->ni_cnd.cn_flags & LOCKPARENT) && \ + _ndp->ni_dvp != _ndp->ni_vp) \ VOP_UNLOCK(_ndp->ni_dvp, 0, _ndp->ni_cnd.cn_proc); \ if (!(_flags & NDF_NO_DVP_RELE) && \ (_ndp->ni_cnd.cn_flags & (LOCKPARENT|WANTPARENT))) { \ |