MIPS: Put PGD in C0_CONTEXT for 64-bit R2 processors.
Processors that support the mips64r2 ISA can in four instructions convert a shifted PGD pointer stored in the upper bits of c0_context into a usable pointer. By doing this we save a memory load and associated potential cache miss in the TLB exception handlers. Since the upper bits of c0_context were holding the CPU number, we move this to the upper bits of c0_xcontext which doesn't have enough bits to hold the PGD pointer, but has plenty for the CPU number. Signed-off-by: David Daney <ddaney@caviumnetworks.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
committed by
Ralf Baechle
parent
92078e0618
commit
82622284dd
@@ -462,7 +462,9 @@ void __init_refok free_initmem(void)
|
||||
__pa_symbol(&__init_end));
|
||||
}
|
||||
|
||||
#ifndef CONFIG_MIPS_PGD_C0_CONTEXT
|
||||
unsigned long pgd_current[NR_CPUS];
|
||||
#endif
|
||||
/*
|
||||
* On 64-bit we've got three-level pagetables with a slightly
|
||||
* different layout ...
|
||||
|
Reference in New Issue
Block a user