mirror of
https://github.com/opnsense/src.git
synced 2026-04-15 14:29:58 -04:00
disablement assumptions in kern_fork.c by adding another API call, cpu_critical_fork_exit(). Cleanup the td_savecrit field by moving it from MI to MD. Temporarily move cpu_critical*() from <arch>/include/cpufunc.h to <arch>/<arch>/critical.c (stage-2 will clean this up). Implement interrupt deferral for i386 that allows interrupts to remain enabled inside critical sections. This also fixes an IPI interlock bug, and requires uses of icu_lock to be enclosed in a true interrupt disablement. This is the stage-1 commit. Stage-2 will occur after stage-1 has stabilized, and will move cpu_critical*() into its own header file(s) + other things. This commit may break non-i386 architectures in trivial ways. This should be temporary. Reviewed by: core Approved by: core |
||
|---|---|---|
| .. | ||
| atkbd_isa.c | ||
| atkbdc_isa.c | ||
| atrtc.c | ||
| fd.c | ||
| fdreg.h | ||
| isa_common.c | ||
| isa_common.h | ||
| isa_if.m | ||
| isahint.c | ||
| isareg.h | ||
| isavar.h | ||
| orm.c | ||
| pnp.c | ||
| pnpparse.c | ||
| pnpreg.h | ||
| pnpvar.h | ||
| ppc.c | ||
| ppcreg.h | ||
| psm.c | ||
| rtc.h | ||
| syscons_isa.c | ||
| vga_isa.c | ||