diff options
author | jhb <jhb@FreeBSD.org> | 2010-07-16 19:52:03 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2010-07-16 19:52:03 +0000 |
commit | 7f218ea7f4311ac365547a39526a95ad6d6f48b2 (patch) | |
tree | 3e73fc2d4f9389fa4e442d9702563d6a8f95189f /sys/fs | |
parent | ea417bf09acdf5d9f44a16d4325b3b99dda501e3 (diff) | |
download | FreeBSD-src-7f218ea7f4311ac365547a39526a95ad6d6f48b2.zip FreeBSD-src-7f218ea7f4311ac365547a39526a95ad6d6f48b2.tar.gz |
Revert the previous commit. The race is not applicable to the lockmgr
implementation in 8.0 and later as its flags field does not hold dynamic
state such as waiters flags, but is only modified in lockinit() aside
from VN_LOCK_*().
Discussed with: attilio
Diffstat (limited to 'sys/fs')
-rw-r--r-- | sys/fs/cd9660/cd9660_vfsops.c | 2 | ||||
-rw-r--r-- | sys/fs/udf/udf_vfsops.c | 5 |
2 files changed, 1 insertions, 6 deletions
diff --git a/sys/fs/cd9660/cd9660_vfsops.c b/sys/fs/cd9660/cd9660_vfsops.c index b8bc6c6..e27daf8 100644 --- a/sys/fs/cd9660/cd9660_vfsops.c +++ b/sys/fs/cd9660/cd9660_vfsops.c @@ -814,9 +814,7 @@ cd9660_vget_internal(mp, ino, flags, vpp, relocated, isodir) vp->v_op = &cd9660_fifoops; break; default: - VI_LOCK(vp); VN_LOCK_ASHARE(vp); - VI_UNLOCK(vp); break; } diff --git a/sys/fs/udf/udf_vfsops.c b/sys/fs/udf/udf_vfsops.c index af41043..7be5384 100644 --- a/sys/fs/udf/udf_vfsops.c +++ b/sys/fs/udf/udf_vfsops.c @@ -710,11 +710,8 @@ udf_vget(struct mount *mp, ino_t ino, int flags, struct vnode **vpp) break; } - if (vp->v_type != VFIFO) { - VI_LOCK(vp); + if (vp->v_type != VFIFO) VN_LOCK_ASHARE(vp); - VI_UNLOCK(vp); - } if (ino == udf_getid(&udfmp->root_icb)) vp->v_vflag |= VV_ROOT; |