[SPARC64]: TSB refinements.
Move {init_new,destroy}_context() out of line. Do not put huge pages into the TSB, only base page size translations. There are some clever things we could do here, but for now let's be correct instead of fancy. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
56fb4df6da
commit
09f94287f7
@@ -55,6 +55,17 @@ tsb_reload:
|
||||
brgez,a,pn %g5, tsb_do_fault
|
||||
stx %g0, [%g1]
|
||||
|
||||
/* If it is larger than the base page size, don't
|
||||
* bother putting it into the TSB.
|
||||
*/
|
||||
srlx %g5, 32, %g2
|
||||
sethi %hi(_PAGE_ALL_SZ_BITS >> 32), %g4
|
||||
sethi %hi(_PAGE_SZBITS >> 32), %g7
|
||||
and %g2, %g4, %g2
|
||||
cmp %g2, %g7
|
||||
bne,a,pn %xcc, tsb_tlb_reload
|
||||
stx %g0, [%g1]
|
||||
|
||||
TSB_WRITE(%g1, %g5, %g6)
|
||||
|
||||
/* Finally, load TLB and return from trap. */
|
||||
|
Reference in New Issue
Block a user