Module Name: src Committed By: ad Date: Fri Dec 6 21:36:11 UTC 2019
Modified Files: src/sys/kern: kern_exec.c kern_exit.c kern_idle.c kern_lwp.c kern_sig.c kern_sleepq.c kern_softint.c kern_synch.c src/sys/sys: sched.h Log Message: Make it possible to call mi_switch() and immediately switch to another CPU. This seems to take about 3us on my Intel system. Two changes required: - Have the caller to mi_switch() be responsible for calling spc_lock(). - Avoid using l->l_cpu in mi_switch(). While here: - Add a couple of calls to membar_enter() - Have the idle LWP set itself to LSIDL, to match softint_thread(). - Remove unused return value from mi_switch(). To generate a diff of this commit: cvs rdiff -u -r1.484 -r1.485 src/sys/kern/kern_exec.c cvs rdiff -u -r1.277 -r1.278 src/sys/kern/kern_exit.c cvs rdiff -u -r1.27 -r1.28 src/sys/kern/kern_idle.c cvs rdiff -u -r1.216 -r1.217 src/sys/kern/kern_lwp.c cvs rdiff -u -r1.380 -r1.381 src/sys/kern/kern_sig.c cvs rdiff -u -r1.53 -r1.54 src/sys/kern/kern_sleepq.c cvs rdiff -u -r1.54 -r1.55 src/sys/kern/kern_softint.c cvs rdiff -u -r1.328 -r1.329 src/sys/kern/kern_synch.c cvs rdiff -u -r1.79 -r1.80 src/sys/sys/sched.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.