Preemption by an interrupt thread is an involuntary switch, not a voluntary
one. Pointy-hat to: me
This commit is contained in:
parent
3398752a77
commit
2e1aacccac
@ -387,7 +387,7 @@ ithread_schedule(struct ithd *ithread, int do_switch)
|
||||
mtx_intr_enable(&sched_lock);
|
||||
if (curproc != PCPU_GET(idleproc))
|
||||
setrunqueue(curproc);
|
||||
curproc->p_stats->p_ru.ru_nvcsw++;
|
||||
curproc->p_stats->p_ru.ru_nivcsw++;
|
||||
mi_switch();
|
||||
sched_lock.mtx_savecrit = savecrit;
|
||||
} else
|
||||
|
Loading…
Reference in New Issue
Block a user