diff options
author | peter <peter@FreeBSD.org> | 2004-03-13 22:31:39 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 2004-03-13 22:31:39 +0000 |
commit | 1cb95fd2b70283ee01393976b8c4f6582fe4c61f (patch) | |
tree | 889a20a7869b0ea5ed48e021f905fe415332a764 /sys/kern/subr_trap.c | |
parent | 43cfb3a55ff1241827aed24e87f2cd5f80566c2b (diff) | |
download | FreeBSD-src-1cb95fd2b70283ee01393976b8c4f6582fe4c61f.zip FreeBSD-src-1cb95fd2b70283ee01393976b8c4f6582fe4c61f.tar.gz |
Push Giant down a little further:
- no longer serialize on Giant for thread_single*() and family in fork,
exit and exec
- thread_wait() is mpsafe, assert no Giant
- reduce scope of Giant in exit to not cover thread_wait and just do
vm_waitproc().
- assert that thread_single() family are not called with Giant
- remove the DROP/PICKUP_GIANT macros from thread_single() family
- assert that thread_suspend_check() s not called with Giant
- remove manual drop_giant hack in thread_suspend_check since we know it
isn't held.
- remove the DROP/PICKUP_GIANT macros from thread_suspend_check() family
- mark kse_create() mpsafe
Diffstat (limited to 'sys/kern/subr_trap.c')
-rw-r--r-- | sys/kern/subr_trap.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/sys/kern/subr_trap.c b/sys/kern/subr_trap.c index 3e40672..9d17208 100644 --- a/sys/kern/subr_trap.c +++ b/sys/kern/subr_trap.c @@ -114,9 +114,8 @@ userret(td, frame, oticks) /* * Do special thread processing, e.g. upcall tweaking and such. */ - if (p->p_flag & P_SA) { + if (p->p_flag & P_SA) thread_userret(td, frame); - } /* * Charge system time if profiling. |