aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/include/asm/pgtable.h
diff options
context:
space:
mode:
authorJeremy Fitzhardinge <jeremy@goop.org>2009-02-05 11:31:11 -0800
committerJeremy Fitzhardinge <jeremy@goop.org>2009-02-06 12:31:50 -0800
commit99510238bb428091e7caba020bc5e18b5f30b619 (patch)
tree6b6080beb83ad75d63b378e1ea7050a015269e50 /arch/x86/include/asm/pgtable.h
parentx86: unify pgd_bad (diff)
downloadlinux-dev-99510238bb428091e7caba020bc5e18b5f30b619.tar.xz
linux-dev-99510238bb428091e7caba020bc5e18b5f30b619.zip
x86: unify pmd_bad
Impact: cleanup Unify and demacro pmd_bad. Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Diffstat (limited to 'arch/x86/include/asm/pgtable.h')
-rw-r--r--arch/x86/include/asm/pgtable.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h
index 38882f6cc827..72bf53ef60bf 100644
--- a/arch/x86/include/asm/pgtable.h
+++ b/arch/x86/include/asm/pgtable.h
@@ -514,6 +514,11 @@ static inline pte_t *pte_offset_kernel(pmd_t *pmd, unsigned long address)
return (pte_t *)pmd_page_vaddr(*pmd) + pte_index(address);
}
+static inline int pmd_bad(pmd_t pmd)
+{
+ return (pmd_val(pmd) & ~(PTE_PFN_MASK | _PAGE_USER)) != _KERNPG_TABLE;
+}
+
#if PAGETABLE_LEVELS > 2
static inline int pud_present(pud_t pud)
{