aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/kern/kern_exit.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/kern/kern_exit.c b/sys/kern/kern_exit.c
index 5f37ca63c7c7b..8c82e42ea3a8a 100644
--- a/sys/kern/kern_exit.c
+++ b/sys/kern/kern_exit.c
@@ -367,8 +367,11 @@ exit1(struct thread *td, int rv)
p->p_tracecred = NULL;
mtx_unlock(&ktrace_mtx);
PROC_UNLOCK(p);
- if (tracevp != NULL)
+ if (tracevp != NULL) {
+ mtx_lock(&Giant);
vrele(tracevp);
+ mtx_unlock(&Giant);
+ }
if (tracecred != NULL)
crfree(tracecred);
#endif