[SPARC64]: Fix two bugs wrt. kernel 4MB TSB.
1) The TSB lookup was not using the correct hash mask. 2) It was not aligned on a boundary equal to it's size, which is required by the sun4v Hypervisor. wasn't having it's return value checked, and that bug will be fixed up as well in a subsequent changeset. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -61,8 +61,11 @@ unsigned long kern_linear_pte_xor[2] __read_mostly;
|
||||
unsigned long kpte_linear_bitmap[KPTE_BITMAP_BYTES / sizeof(unsigned long)];
|
||||
|
||||
#ifndef CONFIG_DEBUG_PAGEALLOC
|
||||
/* A special kernel TSB for 4MB and 256MB linear mappings. */
|
||||
struct tsb swapper_4m_tsb[KERNEL_TSB4M_NENTRIES];
|
||||
/* A special kernel TSB for 4MB and 256MB linear mappings.
|
||||
* Space is allocated for this right after the trap table
|
||||
* in arch/sparc64/kernel/head.S
|
||||
*/
|
||||
extern struct tsb swapper_4m_tsb[KERNEL_TSB4M_NENTRIES];
|
||||
#endif
|
||||
|
||||
#define MAX_BANKS 32
|
||||
|
Reference in New Issue
Block a user