[SPARC64]: Add infrastructure for dynamic TSB sizing.
This also cleans up tsb_context_switch(). The assembler routine is now __tsb_context_switch() and the former is an inline function that picks out the bits from the mm_struct and passes it into the assembler code as arguments. setup_tsb_parms() computes the locked TLB entry to map the TSB. Later when we support using the physical address quad load instructions of Cheetah+ and later, we'll simply use the physical address for the TSB register value and set the map virtual and PTE both to zero. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
09f94287f7
commit
98c5584cfc
@@ -441,8 +441,7 @@ void flush_thread(void)
|
||||
|
||||
mm = t->task->mm;
|
||||
if (mm)
|
||||
tsb_context_switch(__pa(mm->pgd),
|
||||
mm->context.sparc64_tsb);
|
||||
tsb_context_switch(mm);
|
||||
|
||||
set_thread_wsaved(0);
|
||||
|
||||
|
Reference in New Issue
Block a user