aboutsummaryrefslogtreecommitdiff
path: root/sys/kern/kern_lockf.c
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2009-06-17 12:43:04 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2009-06-17 12:43:04 +0000
commitf02c9d2858458473a0b142258f5ef65ca9ce3fe8 (patch)
tree913ee906107af6bf4d2e40345128df5fb719d6dc /sys/kern/kern_lockf.c
parentd50c1d79d005ccb513fea8549d8560d533dca128 (diff)
downloadsrc-f02c9d2858458473a0b142258f5ef65ca9ce3fe8.tar.gz
src-f02c9d2858458473a0b142258f5ef65ca9ce3fe8.zip
Decrement state->ls_threads when vnode appeared to be doomed.
Reported and tested by: pho
Notes
Notes: svn path=/head/; revision=194356
Diffstat (limited to 'sys/kern/kern_lockf.c')
-rw-r--r--sys/kern/kern_lockf.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/kern/kern_lockf.c b/sys/kern/kern_lockf.c
index 84496cf41cd4..bac7ac82cabc 100644
--- a/sys/kern/kern_lockf.c
+++ b/sys/kern/kern_lockf.c
@@ -646,6 +646,8 @@ lf_advlockasync(struct vop_advlockasync_args *ap, struct lockf **statep,
*/
VI_LOCK(vp);
if (vp->v_iflag & VI_DOOMED) {
+ state->ls_threads--;
+ wakeup(state);
VI_UNLOCK(vp);
sx_xunlock(&state->ls_lock);
lf_free_lock(lock);