|
521 | 521 | * to a CPU TLB 4k PFN (4k => 12 bits to shift) */
|
522 | 522 | #define PAGE_ADD_SHIFT (PAGE_SHIFT-12)
|
523 | 523 | #define PAGE_ADD_HUGE_SHIFT (REAL_HPAGE_SHIFT-12)
|
| 524 | + #define PFN_START_BIT (63-ASM_PFN_PTE_SHIFT+(63-58)-PAGE_ADD_SHIFT) |
524 | 525 |
|
525 | 526 | /* Drop prot bits and convert to page addr for iitlbt and idtlbt */
|
526 | 527 | .macro convert_for_tlb_insert20 pte,tmp
|
527 | 528 | #ifdef CONFIG_HUGETLB_PAGE
|
528 | 529 | copy \pte,\tmp
|
529 |
| - extrd,u \tmp,(63-ASM_PFN_PTE_SHIFT)+(63-58)+PAGE_ADD_SHIFT,\ |
530 |
| - 64-PAGE_SHIFT-PAGE_ADD_SHIFT,\pte |
| 530 | + extrd,u \tmp,PFN_START_BIT,PFN_START_BIT+1,\pte |
531 | 531 |
|
532 | 532 | depdi _PAGE_SIZE_ENCODING_DEFAULT,63,\
|
533 | 533 | (63-58)+PAGE_ADD_SHIFT,\pte
|
534 | 534 | extrd,u,*= \tmp,_PAGE_HPAGE_BIT+32,1,%r0
|
535 | 535 | depdi _HUGE_PAGE_SIZE_ENCODING_DEFAULT,63,\
|
536 | 536 | (63-58)+PAGE_ADD_HUGE_SHIFT,\pte
|
537 | 537 | #else /* Huge pages disabled */
|
538 |
| - extrd,u \pte,(63-ASM_PFN_PTE_SHIFT)+(63-58)+PAGE_ADD_SHIFT,\ |
539 |
| - 64-PAGE_SHIFT-PAGE_ADD_SHIFT,\pte |
| 538 | + extrd,u \pte,PFN_START_BIT,PFN_START_BIT+1,\pte |
540 | 539 | depdi _PAGE_SIZE_ENCODING_DEFAULT,63,\
|
541 | 540 | (63-58)+PAGE_ADD_SHIFT,\pte
|
542 | 541 | #endif
|
|
0 commit comments