aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-powerpc/pgtable.h
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2006-03-23 23:44:19 -0500
committerTrond Myklebust <Trond.Myklebust@netapp.com>2006-03-23 23:44:19 -0500
commit1ebbe2b20091d306453a5cf480a87e6cd28ae76f (patch)
treef5cd7a0fa69b8b1938cb5a0faed2e7b0628072a5 /include/asm-powerpc/pgtable.h
parentac58c9059da8886b5e8cde012a80266b18ca146e (diff)
parent674a396c6d2ba0341ebdd7c1c9950f32f018e2dd (diff)
Merge branch 'linus'
Diffstat (limited to 'include/asm-powerpc/pgtable.h')
-rw-r--r--include/asm-powerpc/pgtable.h14
1 files changed, 7 insertions, 7 deletions
diff --git a/include/asm-powerpc/pgtable.h b/include/asm-powerpc/pgtable.h
index e38931379a72..e9f1f4627e6b 100644
--- a/include/asm-powerpc/pgtable.h
+++ b/include/asm-powerpc/pgtable.h
@@ -188,9 +188,13 @@ static inline pte_t pfn_pte(unsigned long pfn, pgprot_t pgprot)
188#define pte_pfn(x) ((unsigned long)((pte_val(x)>>PTE_RPN_SHIFT))) 188#define pte_pfn(x) ((unsigned long)((pte_val(x)>>PTE_RPN_SHIFT)))
189#define pte_page(x) pfn_to_page(pte_pfn(x)) 189#define pte_page(x) pfn_to_page(pte_pfn(x))
190 190
191#define PMD_BAD_BITS (PTE_TABLE_SIZE-1)
192#define PUD_BAD_BITS (PMD_TABLE_SIZE-1)
193
191#define pmd_set(pmdp, pmdval) (pmd_val(*(pmdp)) = (pmdval)) 194#define pmd_set(pmdp, pmdval) (pmd_val(*(pmdp)) = (pmdval))
192#define pmd_none(pmd) (!pmd_val(pmd)) 195#define pmd_none(pmd) (!pmd_val(pmd))
193#define pmd_bad(pmd) (pmd_val(pmd) == 0) 196#define pmd_bad(pmd) (!is_kernel_addr(pmd_val(pmd)) \
197 || (pmd_val(pmd) & PMD_BAD_BITS))
194#define pmd_present(pmd) (pmd_val(pmd) != 0) 198#define pmd_present(pmd) (pmd_val(pmd) != 0)
195#define pmd_clear(pmdp) (pmd_val(*(pmdp)) = 0) 199#define pmd_clear(pmdp) (pmd_val(*(pmdp)) = 0)
196#define pmd_page_kernel(pmd) (pmd_val(pmd) & ~PMD_MASKED_BITS) 200#define pmd_page_kernel(pmd) (pmd_val(pmd) & ~PMD_MASKED_BITS)
@@ -198,7 +202,8 @@ static inline pte_t pfn_pte(unsigned long pfn, pgprot_t pgprot)
198 202
199#define pud_set(pudp, pudval) (pud_val(*(pudp)) = (pudval)) 203#define pud_set(pudp, pudval) (pud_val(*(pudp)) = (pudval))
200#define pud_none(pud) (!pud_val(pud)) 204#define pud_none(pud) (!pud_val(pud))
201#define pud_bad(pud) ((pud_val(pud)) == 0) 205#define pud_bad(pud) (!is_kernel_addr(pud_val(pud)) \
206 || (pud_val(pud) & PUD_BAD_BITS))
202#define pud_present(pud) (pud_val(pud) != 0) 207#define pud_present(pud) (pud_val(pud) != 0)
203#define pud_clear(pudp) (pud_val(*(pudp)) = 0) 208#define pud_clear(pudp) (pud_val(*(pudp)) = 0)
204#define pud_page(pud) (pud_val(pud) & ~PUD_MASKED_BITS) 209#define pud_page(pud) (pud_val(pud) & ~PUD_MASKED_BITS)
@@ -468,11 +473,6 @@ extern pgd_t swapper_pg_dir[];
468 473
469extern void paging_init(void); 474extern void paging_init(void);
470 475
471#ifdef CONFIG_HUGETLB_PAGE
472#define hugetlb_free_pgd_range(tlb, addr, end, floor, ceiling) \
473 free_pgd_range(tlb, addr, end, floor, ceiling)
474#endif
475
476/* 476/*
477 * This gets called at the end of handling a page fault, when 477 * This gets called at the end of handling a page fault, when
478 * the kernel has put a new PTE into the page table for the process. 478 * the kernel has put a new PTE into the page table for the process.