|
1 | 1 | #ifndef _ASM_POWERPC_BOOK3S_64_HASH_64K_H
|
2 | 2 | #define _ASM_POWERPC_BOOK3S_64_HASH_64K_H
|
3 | 3 |
|
4 |
| -#define PTE_INDEX_SIZE 8 |
5 |
| -#define PMD_INDEX_SIZE 5 |
6 |
| -#define PUD_INDEX_SIZE 5 |
7 |
| -#define PGD_INDEX_SIZE 12 |
8 |
| - |
9 |
| -#define PTRS_PER_PTE (1 << PTE_INDEX_SIZE) |
10 |
| -#define PTRS_PER_PMD (1 << PMD_INDEX_SIZE) |
11 |
| -#define PTRS_PER_PUD (1 << PUD_INDEX_SIZE) |
12 |
| -#define PTRS_PER_PGD (1 << PGD_INDEX_SIZE) |
| 4 | +#define H_PTE_INDEX_SIZE 8 |
| 5 | +#define H_PMD_INDEX_SIZE 5 |
| 6 | +#define H_PUD_INDEX_SIZE 5 |
| 7 | +#define H_PGD_INDEX_SIZE 12 |
13 | 8 |
|
14 | 9 | /* With 4k base page size, hugepage PTEs go at the PMD level */
|
15 | 10 | #define MIN_HUGEPTE_SHIFT PAGE_SHIFT
|
16 | 11 |
|
17 |
| -/* PMD_SHIFT determines what a second-level page table entry can map */ |
18 |
| -#define PMD_SHIFT (PAGE_SHIFT + PTE_INDEX_SIZE) |
19 |
| -#define PMD_SIZE (1UL << PMD_SHIFT) |
20 |
| -#define PMD_MASK (~(PMD_SIZE-1)) |
21 |
| - |
22 |
| -/* PUD_SHIFT determines what a third-level page table entry can map */ |
23 |
| -#define PUD_SHIFT (PMD_SHIFT + PMD_INDEX_SIZE) |
24 |
| -#define PUD_SIZE (1UL << PUD_SHIFT) |
25 |
| -#define PUD_MASK (~(PUD_SIZE-1)) |
26 |
| - |
27 |
| -/* PGDIR_SHIFT determines what a fourth-level page table entry can map */ |
28 |
| -#define PGDIR_SHIFT (PUD_SHIFT + PUD_INDEX_SIZE) |
29 |
| -#define PGDIR_SIZE (1UL << PGDIR_SHIFT) |
30 |
| -#define PGDIR_MASK (~(PGDIR_SIZE-1)) |
31 |
| - |
32 | 12 | #define H_PAGE_COMBO 0x00001000 /* this is a combo 4k page */
|
33 | 13 | #define H_PAGE_4K_PFN 0x00002000 /* PFN is for a single 4k page */
|
34 | 14 | /*
|
|
57 | 37 | #define PTE_FRAG_SIZE_SHIFT 12
|
58 | 38 | #define PTE_FRAG_SIZE (1UL << PTE_FRAG_SIZE_SHIFT)
|
59 | 39 |
|
60 |
| -/* Bits to mask out from a PMD to get to the PTE page */ |
61 |
| -#define PMD_MASKED_BITS 0xc0000000000000ffUL |
62 |
| -/* Bits to mask out from a PUD to get to the PMD page */ |
63 |
| -#define PUD_MASKED_BITS 0xc0000000000000ffUL |
64 |
| -/* Bits to mask out from a PGD to get to the PUD page */ |
65 |
| -#define PGD_MASKED_BITS 0xc0000000000000ffUL |
66 |
| - |
67 | 40 | #ifndef __ASSEMBLY__
|
68 | 41 | #include <asm/errno.h>
|
69 | 42 |
|
@@ -135,14 +108,15 @@ static inline int remap_4k_pfn(struct vm_area_struct *vma, unsigned long addr,
|
135 | 108 | __pgprot(pgprot_val(prot) | H_PAGE_4K_PFN));
|
136 | 109 | }
|
137 | 110 |
|
138 |
| -#define PTE_TABLE_SIZE PTE_FRAG_SIZE |
| 111 | +#define H_PTE_TABLE_SIZE PTE_FRAG_SIZE |
139 | 112 | #ifdef CONFIG_TRANSPARENT_HUGEPAGE
|
140 |
| -#define PMD_TABLE_SIZE ((sizeof(pmd_t) << PMD_INDEX_SIZE) + (sizeof(unsigned long) << PMD_INDEX_SIZE)) |
| 113 | +#define H_PMD_TABLE_SIZE ((sizeof(pmd_t) << PMD_INDEX_SIZE) + \ |
| 114 | + (sizeof(unsigned long) << PMD_INDEX_SIZE)) |
141 | 115 | #else
|
142 |
| -#define PMD_TABLE_SIZE (sizeof(pmd_t) << PMD_INDEX_SIZE) |
| 116 | +#define H_PMD_TABLE_SIZE (sizeof(pmd_t) << PMD_INDEX_SIZE) |
143 | 117 | #endif
|
144 |
| -#define PUD_TABLE_SIZE (sizeof(pud_t) << PUD_INDEX_SIZE) |
145 |
| -#define PGD_TABLE_SIZE (sizeof(pgd_t) << PGD_INDEX_SIZE) |
| 118 | +#define H_PUD_TABLE_SIZE (sizeof(pud_t) << PUD_INDEX_SIZE) |
| 119 | +#define H_PGD_TABLE_SIZE (sizeof(pgd_t) << PGD_INDEX_SIZE) |
146 | 120 |
|
147 | 121 | #ifdef CONFIG_HUGETLB_PAGE
|
148 | 122 | /*
|
|
0 commit comments