2ddceed1d9
where curcpu() is defined as curlwp->l_cpu: - mi_switch(): undo the ~2007ish optimisation to unlock curlwp before calling cpu_switchto(). It's not safe to let other actors mess with the LWP (in particular l->l_cpu) while it's still context switching. This removes l->l_ctxswtch. - Move the LP_RUNNING flag into l->l_flag and rename to LW_RUNNING since it's now covered by the LWP's lock. - Ditch lwp_exit_switchaway() and just call mi_switch() instead. Everything is in cache anyway so it wasn't buying much by trying to avoid saving old state. This means cpu_switchto() will never be called with prevlwp == NULL. - Remove some KERNEL_LOCK handling which hasn't been needed for years. |
||
---|---|---|
.. | ||
db_access.c | ||
db_access.h | ||
db_autoconf.c | ||
db_autoconf.h | ||
db_break.c | ||
db_break.h | ||
db_command.c | ||
db_command.h | ||
db_cpu.c | ||
db_cpu.h | ||
db_elf.c | ||
db_examine.c | ||
db_expr.c | ||
db_extern.h | ||
db_input.c | ||
db_interface.h | ||
db_kernel.c | ||
db_lex.c | ||
db_lex.h | ||
db_lwp.c | ||
db_lwp.h | ||
db_output.c | ||
db_output.h | ||
db_panic.c | ||
db_print.c | ||
db_proc.c | ||
db_proc.h | ||
db_run.c | ||
db_run.h | ||
db_sym.c | ||
db_sym.h | ||
db_trap.c | ||
db_user.h | ||
db_variables.c | ||
db_variables.h | ||
db_watch.c | ||
db_watch.h | ||
db_write_cmd.c | ||
db_xxx.c | ||
ddb.h | ||
ddbvar.h | ||
files.ddb | ||
TODO |