summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_thread.c
diff options
context:
space:
mode:
authordavidxu <davidxu@FreeBSD.org>2004-05-21 14:50:23 +0000
committerdavidxu <davidxu@FreeBSD.org>2004-05-21 14:50:23 +0000
commite7578c3795e2978e62ac24580afb7f9486ddf33b (patch)
treee39896ecc10bd3422a18751741389addfe29602b /sys/kern/kern_thread.c
parenteda6d52241e471f4183ce733b1e3b874867e0296 (diff)
downloadFreeBSD-src-e7578c3795e2978e62ac24580afb7f9486ddf33b.zip
FreeBSD-src-e7578c3795e2978e62ac24580afb7f9486ddf33b.tar.gz
Clear KSE thread flags after KSE thread mode is ended. The side effect
of not clearing the flags for execv() syscall will result that a new program runs in KSE thread mode without enabling it. Submitted by: tjr Modified by: davidxu
Diffstat (limited to 'sys/kern/kern_thread.c')
-rw-r--r--sys/kern/kern_thread.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/kern/kern_thread.c b/sys/kern/kern_thread.c
index 43b0f74..88b2689 100644
--- a/sys/kern/kern_thread.c
+++ b/sys/kern/kern_thread.c
@@ -2217,7 +2217,7 @@ thread_single_end(void)
td = curthread;
p = td->td_proc;
PROC_LOCK_ASSERT(p, MA_OWNED);
- p->p_flag &= ~P_STOPPED_SINGLE;
+ p->p_flag &= ~(P_STOPPED_SINGLE | P_SINGLE_EXIT);
mtx_lock_spin(&sched_lock);
p->p_singlethread = NULL;
/*
OpenPOWER on IntegriCloud