Remove the last source of SMP TLB invalidations in the critical code path
commit4337f7226d11d68ecb964c130452e090963c68a1
authorMatthew Dillon <dillon@dragonflybsd.org>
Fri, 8 Jun 2007 00:57:04 +0000 (8 00:57 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Fri, 8 Jun 2007 00:57:04 +0000 (8 00:57 +0000)
treec2740d0889103c294a17f1981acb997929497699
parent95571d4dc337a9a09b7cf8d49b762d855a045fcf
Remove the last source of SMP TLB invalidations in the critical code path
for fork/exec/exit/wait sequences.  The pmap page directory is now left
cached in kernel memory until the pmap is destroyed via the objcache
dtor function for VM spaces (vmspace_dtor() -> pmap_puninit()).

This improves fork/exec performance and significantly reduces the IPI
messaging load and other cross-cpu interactions.
sys/platform/pc32/i386/pmap.c
sys/platform/pc32/include/pmap.h