From 1b16b181d12075ffc084f2a593e16fe3dd8f6f6d Mon Sep 17 00:00:00 2001 From: jhb Date: Fri, 2 Jul 2004 19:09:50 +0000 Subject: - Change mi_switch() and sched_switch() to accept an optional thread to switch to. If a non-NULL thread pointer is passed in, then the CPU will switch to that thread directly rather than calling choosethread() to pick a thread to choose to. - Make sched_switch() aware of idle threads and know to do TD_SET_CAN_RUN() instead of sticking them on the run queue rather than requiring all callers of mi_switch() to know to do this if they can be called from an idlethread. - Move constants for arguments to mi_switch() and thread_single() out of the middle of the function prototypes and up above into their own section. --- sys/kern/subr_trap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sys/kern/subr_trap.c') diff --git a/sys/kern/subr_trap.c b/sys/kern/subr_trap.c index 11550c0..b7b461e 100644 --- a/sys/kern/subr_trap.c +++ b/sys/kern/subr_trap.c @@ -242,7 +242,7 @@ ast(struct trapframe *framep) #endif mtx_lock_spin(&sched_lock); sched_prio(td, kg->kg_user_pri); - mi_switch(SW_INVOL); + mi_switch(SW_INVOL, NULL); mtx_unlock_spin(&sched_lock); #ifdef KTRACE if (KTRPOINT(td, KTR_CSW)) -- cgit v1.1