summaryrefslogtreecommitdiffstats
path: root/sys/sys/namei.h
diff options
context:
space:
mode:
authoreivind <eivind@FreeBSD.org>1999-12-18 22:57:38 +0000
committereivind <eivind@FreeBSD.org>1999-12-18 22:57:38 +0000
commitb264357e5d8dd3bf1d25f4aa7190a4055990a966 (patch)
tree1416122f7a35c7e61ad01506878db8d89d19159f /sys/sys/namei.h
parentc663a6bbe90e1e5d7ad54c1c05d4395ef28991bd (diff)
downloadFreeBSD-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/sys/namei.h')
-rw-r--r--sys/sys/namei.h3
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))) { \
OpenPOWER on IntegriCloud