diff options
author | davidxu <davidxu@FreeBSD.org> | 2003-04-27 04:32:40 +0000 |
---|---|---|
committer | davidxu <davidxu@FreeBSD.org> | 2003-04-27 04:32:40 +0000 |
commit | 450b9799cebe44ddf6aab7b644e8871ac433d92a (patch) | |
tree | a7349c65ad685b5dc799bc2bd9c31285d2b7c344 /sys/kern/kern_thread.c | |
parent | 0c267521bcf1feea70b96249554a94417834e5d4 (diff) | |
download | FreeBSD-src-450b9799cebe44ddf6aab7b644e8871ac433d92a.zip FreeBSD-src-450b9799cebe44ddf6aab7b644e8871ac433d92a.tar.gz |
unlock sched_lock at right time.
Diffstat (limited to 'sys/kern/kern_thread.c')
-rw-r--r-- | sys/kern/kern_thread.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/kern/kern_thread.c b/sys/kern/kern_thread.c index ac7daa4..6502e23 100644 --- a/sys/kern/kern_thread.c +++ b/sys/kern/kern_thread.c @@ -1681,9 +1681,9 @@ thread_userret(struct thread *td, struct trapframe *frame) else upcalls += kg2->kg_numupcalls; } - mtx_unlock_spin(&sched_lock); if (upcalls >= max_threads_per_proc) break; + mtx_unlock_spin(&sched_lock); p->p_maxthrwaits++; msleep(&p->p_numthreads, &p->p_mtx, PPAUSE|PCATCH, "maxthreads", NULL); |