powerpc/mm: Handle _PTE_NONE_MASK
authorAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Fri, 29 Apr 2016 13:25:46 +0000 (23:25 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Sun, 1 May 2016 08:32:45 +0000 (18:32 +1000)
I am splitting this as a separate patch to get better review. If ok
we should merge this with previous patch.

Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/include/asm/book3s/64/hash.h

index 5566702127817d534406c39f896367f513d1bd10..451617e437a21e4c18306f2a6abe65aefa889d50 100644 (file)
@@ -36,8 +36,7 @@
 #endif
 #define _PAGE_SPECIAL          0x00400 /* software: special page */
 #define H_PAGE_BUSY            0x00800 /* software: PTE & hash are busy */
-
-
+#define H_PTE_NONE_MASK                _PAGE_HPTEFLAGS
 #define H_PAGE_F_GIX_SHIFT     57
 #define H_PAGE_F_GIX           (7ul << 57)     /* HPTE index within HPTEG */
 #define H_PAGE_F_SECOND                (1ul << 60)     /* HPTE is in 2ndary HPTEG */
 #define _PTEIDX_SECONDARY      0x8
 #define _PTEIDX_GROUP_IX       0x7
 
-#define _PTE_NONE_MASK _PAGE_HPTEFLAGS
 /*
  * _PAGE_CHG_MASK masks of bits that are to be preserved across
  * pgprot changes
@@ -379,7 +377,7 @@ static inline int pte_write(pte_t pte)              { return !!(pte_val(pte) & _PAGE_WRITE);
 static inline int pte_dirty(pte_t pte)         { return !!(pte_val(pte) & _PAGE_DIRTY); }
 static inline int pte_young(pte_t pte)         { return !!(pte_val(pte) & _PAGE_ACCESSED); }
 static inline int pte_special(pte_t pte)       { return !!(pte_val(pte) & _PAGE_SPECIAL); }
-static inline int pte_none(pte_t pte)          { return (pte_val(pte) & ~_PTE_NONE_MASK) == 0; }
+static inline int pte_none(pte_t pte)          { return (pte_val(pte) & ~H_PTE_NONE_MASK) == 0; }
 static inline pgprot_t pte_pgprot(pte_t pte)   { return __pgprot(pte_val(pte) & PAGE_PROT_BITS); }
 
 #ifdef CONFIG_HAVE_ARCH_SOFT_DIRTY