On Feb 24, 2010, at 10:31 PM, David Laight wrote: > On Thu, Feb 25, 2010 at 05:53:23AM +0000, Matt Thomas wrote: >> >> Log Message: >> Make the UP and MP ASID allocation algorithm common. Significantly improve >> the algorithm. Now when we exhaust the ASIDs, interrogate the TLB for active >> ASIDS and release all the other for future allocations. This leaves the >> TLB entries with ASIDs valid avoiding the need to re-incur TLB misses for >> them. > > I presume it is willing to kill some TLB entries if the above doesn't > find any (or enough) free ASIDs ? > Or is the ASID number space guaranteed to be significantly higher that > the number of TLBs ??
If it can't reclaim at least half of the ASID space, it invalidates all ASID based entries in the TLB. And for MIPS32/MIPS64 the ASID space is at least 4x the number of TLB entries.