]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/asm-i386/pgtable.h
Merge branch 'master'
[linux-2.6-omap-h63xx.git] / include / asm-i386 / pgtable.h
index 47bc1ffa3d4cfb42321cec3bf25d9da23ccc8486..0e3ec809352d45cb3fa3de0d9ce03bcb3e6a66f3 100644 (file)
@@ -203,7 +203,8 @@ extern unsigned long pg0[];
 #define pte_present(x) ((x).pte_low & (_PAGE_PRESENT | _PAGE_PROTNONE))
 #define pte_clear(mm,addr,xp)  do { set_pte_at(mm, addr, xp, __pte(0)); } while (0)
 
-#define pmd_none(x)    (!pmd_val(x))
+/* To avoid harmful races, pmd_none(x) should check only the lower when PAE */
+#define pmd_none(x)    (!(unsigned long)pmd_val(x))
 #define pmd_present(x) (pmd_val(x) & _PAGE_PRESENT)
 #define pmd_clear(xp)  do { set_pmd(xp, __pmd(0)); } while (0)
 #define        pmd_bad(x)      ((pmd_val(x) & (~PAGE_MASK & ~_PAGE_USER)) != _KERNPG_TABLE)
@@ -431,9 +432,6 @@ extern void noexec_setup(const char *str);
 #define kern_addr_valid(addr)  (1)
 #endif /* CONFIG_FLATMEM */
 
-#define io_remap_page_range(vma, vaddr, paddr, size, prot)             \
-               remap_pfn_range(vma, vaddr, (paddr) >> PAGE_SHIFT, size, prot)
-
 #define io_remap_pfn_range(vma, vaddr, pfn, size, prot)                \
                remap_pfn_range(vma, vaddr, pfn, size, prot)