diff options
Diffstat (limited to 'arch/powerpc/include/asm/pgalloc-64.h')
| -rw-r--r-- | arch/powerpc/include/asm/pgalloc-64.h | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/arch/powerpc/include/asm/pgalloc-64.h b/arch/powerpc/include/asm/pgalloc-64.h index 16cb92d215d2..4b0be20fcbfd 100644 --- a/arch/powerpc/include/asm/pgalloc-64.h +++ b/arch/powerpc/include/asm/pgalloc-64.h | |||
| @@ -16,6 +16,7 @@ struct vmemmap_backing { | |||
| 16 | unsigned long phys; | 16 | unsigned long phys; |
| 17 | unsigned long virt_addr; | 17 | unsigned long virt_addr; |
| 18 | }; | 18 | }; |
| 19 | extern struct vmemmap_backing *vmemmap_list; | ||
| 19 | 20 | ||
| 20 | /* | 21 | /* |
| 21 | * Functions that deal with pagetables that could be at any level of | 22 | * Functions that deal with pagetables that could be at any level of |
| @@ -147,11 +148,9 @@ static inline void pgtable_free_tlb(struct mmu_gather *tlb, | |||
| 147 | static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t table, | 148 | static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t table, |
| 148 | unsigned long address) | 149 | unsigned long address) |
| 149 | { | 150 | { |
| 150 | struct page *page = page_address(table); | ||
| 151 | |||
| 152 | tlb_flush_pgtable(tlb, address); | 151 | tlb_flush_pgtable(tlb, address); |
| 153 | pgtable_page_dtor(page); | 152 | pgtable_page_dtor(table); |
| 154 | pgtable_free_tlb(tlb, page, 0); | 153 | pgtable_free_tlb(tlb, page_address(table), 0); |
| 155 | } | 154 | } |
| 156 | 155 | ||
| 157 | #else /* if CONFIG_PPC_64K_PAGES */ | 156 | #else /* if CONFIG_PPC_64K_PAGES */ |
