summaryrefslogtreecommitdiff
path: root/sys/kern/vfs_subr.c
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2008-08-01 09:46:19 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2008-08-01 09:46:19 +0000
commitcb917b839b94adf81f241d51bcd2a1ce82161618 (patch)
tree20f5445f82a8aac528ac6803d9bf5f1b4b31ed62 /sys/kern/vfs_subr.c
parent5e38927c8c78b301b63e4c30508cf75fd60fa0e4 (diff)
Notes
Diffstat (limited to 'sys/kern/vfs_subr.c')
-rw-r--r--sys/kern/vfs_subr.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c
index 835cb29af636..4bdbb47d52c3 100644
--- a/sys/kern/vfs_subr.c
+++ b/sys/kern/vfs_subr.c
@@ -59,6 +59,7 @@ __FBSDID("$FreeBSD$");
#include <sys/kdb.h>
#include <sys/kernel.h>
#include <sys/kthread.h>
+#include <sys/lockf.h>
#include <sys/malloc.h>
#include <sys/mount.h>
#include <sys/namei.h>
@@ -2537,6 +2538,10 @@ vgonel(struct vnode *vp)
VNASSERT(vp->v_object == NULL, vp,
("vop_reclaim left v_object vp=%p, tag=%s", vp, vp->v_tag));
/*
+ * Clear the advisory locks and wake up waiting threads.
+ */
+ lf_purgelocks(vp, &(vp->v_lockf));
+ /*
* Delete from old mount point vnode list.
*/
delmntque(vp);