x86/pgtable: unify pagetable accessors, #4
authorIngo Molnar <mingo@elte.hu>
Wed, 30 Jan 2008 12:32:56 +0000 (13:32 +0100)
committerIngo Molnar <mingo@elte.hu>
Wed, 30 Jan 2008 12:32:56 +0000 (13:32 +0100)
add new ops to 32-bit.

based on:

 Subject: x86/pgtable: unify pagetable accessors
 From: Jeremy Fitzhardinge <jeremy@goop.org>

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
include/asm-x86/pgtable_32.h

index c1e855fdf60eb3814e5782ff3359590bf7a55eeb..b3e92124fc3fd891c42871a999155e78d46c75b2 100644 (file)
@@ -123,6 +123,14 @@ static inline pte_t pte_mkyoung(pte_t pte) { return __pte(pte_val(pte) | _PAGE_A
 static inline pte_t pte_mkwrite(pte_t pte)     { return __pte(pte_val(pte) | _PAGE_RW); }
 static inline pte_t pte_mkhuge(pte_t pte)      { return __pte(pte_val(pte) | _PAGE_PSE); }
 
+static inline pte_t pte_clrhuge(pte_t pte)     { return __pte(pte_val(pte) & ~_PAGE_PSE); }
+static inline pte_t pte_mkexec(pte_t pte)      { return __pte(pte_val(pte) & ~_PAGE_NX); }
+
+static inline int pmd_large(pmd_t pte) {
+       return (pmd_val(pte) & (_PAGE_PSE|_PAGE_PRESENT)) ==
+               (_PAGE_PSE|_PAGE_PRESENT);
+}
+
 #ifdef CONFIG_X86_PAE
 # include <asm/pgtable-3level.h>
 #else