diff options
author | jeff <jeff@FreeBSD.org> | 2008-03-12 10:12:01 +0000 |
---|---|---|
committer | jeff <jeff@FreeBSD.org> | 2008-03-12 10:12:01 +0000 |
commit | acb93d599cf9e4c7fc183f5568b740813472ff16 (patch) | |
tree | c3fbc6ec97828161d5fc648204b80efb7998da35 /sys/kern/subr_trap.c | |
parent | 72babed2a5bcb10d29075f3c1495c9aca3e0af60 (diff) | |
download | FreeBSD-src-acb93d599cf9e4c7fc183f5568b740813472ff16.zip FreeBSD-src-acb93d599cf9e4c7fc183f5568b740813472ff16.tar.gz |
Remove kernel support for M:N threading.
While the KSE project was quite successful in bringing threading to
FreeBSD, the M:N approach taken by the kse library was never developed
to its full potential. Backwards compatibility will be provided via
libmap.conf for dynamically linked binaries and static binaries will
be broken.
Diffstat (limited to 'sys/kern/subr_trap.c')
-rw-r--r-- | sys/kern/subr_trap.c | 24 |
1 files changed, 1 insertions, 23 deletions
diff --git a/sys/kern/subr_trap.c b/sys/kern/subr_trap.c index d8168af..1701fba 100644 --- a/sys/kern/subr_trap.c +++ b/sys/kern/subr_trap.c @@ -119,15 +119,6 @@ userret(struct thread *td, struct trapframe *frame) thread_suspend_check(0); /* Can suspend or kill */ PROC_UNLOCK(p); } - -#ifdef KSE - /* - * Do special thread processing, e.g. upcall tweaking and such. - */ - if (p->p_flag & P_SA) - thread_userret(td, frame); -#endif - /* * Charge system time if profiling. */ @@ -135,7 +126,6 @@ userret(struct thread *td, struct trapframe *frame) addupc_task(td, TRAPF_PC(frame), td->td_pticks * psratio); } - /* * Let the scheduler adjust our priority etc. */ @@ -173,11 +163,6 @@ ast(struct trapframe *framep) td->td_frame = framep; td->td_pticks = 0; -#ifdef KSE - if ((p->p_flag & P_SA) && (td->td_mailbox == NULL)) - thread_user_enter(td); -#endif - /* * This updates the td_flag's for the checks below in one * "atomic" operation with turning off the astpending flag. @@ -188,18 +173,11 @@ ast(struct trapframe *framep) thread_lock(td); flags = td->td_flags; td->td_flags &= ~(TDF_ASTPENDING | TDF_NEEDSIGCHK | - TDF_NEEDRESCHED | TDF_INTERRUPT | TDF_ALRMPEND | TDF_PROFPEND | + TDF_NEEDRESCHED | TDF_ALRMPEND | TDF_PROFPEND | TDF_MACPEND); thread_unlock(td); PCPU_INC(cnt.v_trap); - /* - * XXXKSE While the fact that we owe a user profiling - * tick is stored per thread in this code, the statistics - * themselves are still stored per process. - * This should probably change, by which I mean that - * possibly the location of both might change. - */ if (td->td_ucred != p->p_ucred) cred_update_thread(td); if (td->td_pflags & TDP_OWEUPC && p->p_flag & P_PROFIL) { |