.. | .. |
---|
45 | 45 | { |
---|
46 | 46 | return (pmd_t *)pud; |
---|
47 | 47 | } |
---|
| 48 | +#define pmd_offset pmd_offset |
---|
48 | 49 | |
---|
49 | 50 | #define pmd_val(x) (pud_val((x).pud)) |
---|
50 | 51 | #define __pmd(x) ((pmd_t) { __pud(x) } ) |
---|
51 | 52 | |
---|
52 | 53 | #define pud_page(pud) (pmd_page((pmd_t){ pud })) |
---|
53 | | -#define pud_page_vaddr(pud) (pmd_page_vaddr((pmd_t){ pud })) |
---|
| 54 | +#define pud_pgtable(pud) ((pmd_t *)(pmd_page_vaddr((pmd_t){ pud }))) |
---|
54 | 55 | |
---|
55 | 56 | /* |
---|
56 | 57 | * allocating and freeing a pmd is trivial: the 1-entry pmd is |
---|
.. | .. |
---|
60 | 61 | static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) |
---|
61 | 62 | { |
---|
62 | 63 | } |
---|
63 | | -#define __pmd_free_tlb(tlb, x, a) do { } while (0) |
---|
| 64 | +#define pmd_free_tlb(tlb, x, a) do { } while (0) |
---|
64 | 65 | |
---|
65 | 66 | #undef pmd_addr_end |
---|
66 | 67 | #define pmd_addr_end(addr, end) (end) |
---|