freebsd-src/sys/sparc64
Jake Burkholder 5573db3f0b Allocate tlb contexts on the fly in cpu_switch, instead of statically 1 to 1
with pmaps.  When the context numbers wrap around we flush all user mappings
from the tlb.  This makes use of the array indexed by cpuid to allow a pmap
to have a different context number on a different cpu.  If the context numbers
are then divided evenly among cpus such that none are shared, we can avoid
sending tlb shootdown ipis in an smp system for non-shared pmaps.  This also
removes a limit of 8192 processes (pmaps) that could be active at any given
time due to running out of tlb contexts.

Inspired by:		the brown book
Crucial bugfix from:	tmm
2002-03-04 05:20:29 +00:00
..
compile Obrien created this directory, but I didn't cvs add cvsignore 2001-07-01 23:37:03 +00:00
conf I was able to boot this kernel using the latest WIP kernel sources. 2002-02-25 22:13:44 +00:00
ebus Minor bug fixes (add a missing break, correct the resource ranges, remove 2002-02-13 15:35:22 +00:00
include Allocate tlb contexts on the fly in cpu_switch, instead of statically 1 to 1 2002-03-04 05:20:29 +00:00
isa Fix typos in a comment. 2002-02-13 15:43:42 +00:00
pci Merge r1.39 from NetBSD (manage both streaming caches for psycho pairs). 2002-02-13 16:07:59 +00:00
sbus Add support for the SBus, which is used in early Sun UltraSPARC machines. 2002-02-13 16:11:36 +00:00
sparc64 Allocate tlb contexts on the fly in cpu_switch, instead of statically 1 to 1 2002-03-04 05:20:29 +00:00