From 822d3c835515a6e1d6b56ae89bfb042147973ea7 Mon Sep 17 00:00:00 2001 From: jeff Date: Mon, 30 Jan 2006 08:19:01 +0000 Subject: - Lock access to vrele() with VFS_LOCK_GIANT() rather than mtx_lock(&Giant). Sponsored by: Isilon Systems, Inc. --- sys/kern/kern_ktrace.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'sys/kern/kern_ktrace.c') diff --git a/sys/kern/kern_ktrace.c b/sys/kern/kern_ktrace.c index fbb0b0d..7f42f67 100644 --- a/sys/kern/kern_ktrace.c +++ b/sys/kern/kern_ktrace.c @@ -46,6 +46,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -830,9 +831,11 @@ ktrops(td, p, ops, facs, vp) mtx_unlock(&ktrace_mtx); PROC_UNLOCK(p); if (tracevp != NULL) { - mtx_lock(&Giant); + int vfslocked; + + vfslocked = VFS_LOCK_GIANT(tracevp->v_mount); vrele(tracevp); - mtx_unlock(&Giant); + VFS_UNLOCK_GIANT(vfslocked); } if (tracecred != NULL) crfree(tracecred); -- cgit v1.1