Use LOG2_ID_PAGE_SIZE again for the identity mapping in regions 6 & 7.
Make the default translation size the same as the PBVM page size to avoid inserting overlapping translations in the TC. That generally is very bad.
This commit is contained in:
parent
12021c508b
commit
1615b77f79
@ -716,8 +716,8 @@ ia64_init(void)
|
||||
* handlers. Here we just make sure that they have the largest
|
||||
* possible page size to minimise TLB usage.
|
||||
*/
|
||||
ia64_set_rr(IA64_RR_BASE(6), (6 << 8) | (PAGE_SHIFT << 2));
|
||||
ia64_set_rr(IA64_RR_BASE(7), (7 << 8) | (PAGE_SHIFT << 2));
|
||||
ia64_set_rr(IA64_RR_BASE(6), (6 << 8) | (LOG2_ID_PAGE_SIZE << 2));
|
||||
ia64_set_rr(IA64_RR_BASE(7), (7 << 8) | (LOG2_ID_PAGE_SIZE << 2));
|
||||
ia64_srlz_d();
|
||||
|
||||
/* Initialize/setup physical memory datastructures */
|
||||
|
@ -208,8 +208,8 @@ ia64_ap_startup(void)
|
||||
ia64_ap_state.as_trace = 0x100;
|
||||
|
||||
ia64_set_rr(IA64_RR_BASE(5), (5 << 8) | (PAGE_SHIFT << 2) | 1);
|
||||
ia64_set_rr(IA64_RR_BASE(6), (6 << 8) | (PAGE_SHIFT << 2));
|
||||
ia64_set_rr(IA64_RR_BASE(7), (7 << 8) | (PAGE_SHIFT << 2));
|
||||
ia64_set_rr(IA64_RR_BASE(6), (6 << 8) | (LOG2_ID_PAGE_SIZE << 2));
|
||||
ia64_set_rr(IA64_RR_BASE(7), (7 << 8) | (LOG2_ID_PAGE_SIZE << 2));
|
||||
ia64_srlz_d();
|
||||
|
||||
pcpup = ia64_ap_state.as_pcpu;
|
||||
|
@ -105,6 +105,11 @@
|
||||
#endif
|
||||
#define KSTACK_GUARD_PAGES 0 /* pages of kstack guard; 0 disables */
|
||||
|
||||
/* The default size of identity mappings in region 6 & 7. */
|
||||
#ifndef LOG2_ID_PAGE_SIZE
|
||||
#define LOG2_ID_PAGE_SIZE 16
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Mach derived conversion macros
|
||||
*/
|
||||
|
Loading…
x
Reference in New Issue
Block a user