e225b7bd09
- Reorganize locking in UVM and provide extra serialisation for pmap(9). New lock order: [vmpage-owner-lock] -> pmap-lock. - Simplify locking in some pmap(9) modules by removing P->V locking. - Use lock object on vmobjlock (and thus vnode_t::v_interlock) to share the locks amongst UVM objects where necessary (tmpfs, layerfs, unionfs). - Rewrite and optimise x86 TLB shootdown code, make it simpler and cleaner. Add TLBSTATS option for x86 to collect statistics about TLB shootdowns. - Unify /dev/mem et al in MI code and provide required locking (removes kernel-lock on some ports). Also, avoid cache-aliasing issues. Thanks to Andrew Doran and Joerg Sonnenberger, as their initial patches formed the core changes of this branch. |
||
---|---|---|
.. | ||
autoconf.c | ||
bus_space.c | ||
clock.c | ||
consinit.c | ||
context.S | ||
cpu.c | ||
db_interface.c | ||
db_trace.c | ||
efi.c | ||
exception.S | ||
genassym.cf | ||
interrupt.c | ||
locore.S | ||
machdep.c | ||
mainbus.c | ||
mca.c | ||
pal.S | ||
pmap.c | ||
process_machdep.c | ||
sal.c | ||
sapic.c | ||
setjmp.S | ||
ssc.c | ||
support.S | ||
sys_machdep.c | ||
syscall_stubs.S | ||
syscall.c | ||
trap.c | ||
vm_machdep.c |