aboutsummaryrefslogtreecommitdiff
path: root/sys/kern/vfs_subr.c
diff options
context:
space:
mode:
authorRick Macklem <rmacklem@FreeBSD.org>2013-04-16 14:22:16 +0000
committerRick Macklem <rmacklem@FreeBSD.org>2013-04-16 14:22:16 +0000
commit64fa8df6e047006958c09808da6f341fc95e4ea0 (patch)
treead72dba4198d7f6b8a52a8a510da04bcec6c7b04 /sys/kern/vfs_subr.c
parentfe3fcf7b3ae8a008570828ae7d660d4118ed828e (diff)
downloadsrc-64fa8df6e047006958c09808da6f341fc95e4ea0.tar.gz
src-64fa8df6e047006958c09808da6f341fc95e4ea0.zip
Allow the vnode to be unlocked for the weird case of
LK_EXCLOTHER. LK_EXCLOTHER is only used to acquire a usecount on a vnode during NFSv4 recovery from an expired lease. Reported and tested by: pho MFC after: 2 weeks
Notes
Notes: svn path=/head/; revision=249548
Diffstat (limited to 'sys/kern/vfs_subr.c')
-rw-r--r--sys/kern/vfs_subr.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c
index a303fe6c3308..9a27ae7d0a23 100644
--- a/sys/kern/vfs_subr.c
+++ b/sys/kern/vfs_subr.c
@@ -4123,7 +4123,7 @@ vop_lock_post(void *ap, int rc)
struct vop_lock1_args *a = ap;
ASSERT_VI_UNLOCKED(a->a_vp, "VOP_LOCK");
- if (rc == 0)
+ if (rc == 0 && (a->a_flags & LK_EXCLOTHER) == 0)
ASSERT_VOP_LOCKED(a->a_vp, "VOP_LOCK");
#endif
}