diff options
author | bdrewery <bdrewery@FreeBSD.org> | 2017-03-04 18:11:59 +0000 |
---|---|---|
committer | bdrewery <bdrewery@FreeBSD.org> | 2017-03-04 18:11:59 +0000 |
commit | 437cffabbe9b24302427eb1124be7f61e2765639 (patch) | |
tree | 06cf2890a3b8fc7ef6d3534e320150fc3cb9b150 /sys/kern | |
parent | 33b43ee4221e92ec973b26a62fba98e517958d99 (diff) | |
download | FreeBSD-src-437cffabbe9b24302427eb1124be7f61e2765639.zip FreeBSD-src-437cffabbe9b24302427eb1124be7f61e2765639.tar.gz |
MFC r313909:
Fix panic with unlocked vnode to vrecycle().
Diffstat (limited to 'sys/kern')
-rw-r--r-- | sys/kern/uipc_mqueue.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/kern/uipc_mqueue.c b/sys/kern/uipc_mqueue.c index 4028694..ccc4465 100644 --- a/sys/kern/uipc_mqueue.c +++ b/sys/kern/uipc_mqueue.c @@ -703,7 +703,9 @@ do_recycle(void *context, int pending __unused) { struct vnode *vp = (struct vnode *)context; + vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); vrecycle(vp); + VOP_UNLOCK(vp, 0); vdrop(vp); } |