Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d2cf0050 authored by Aneesh Kumar K.V's avatar Aneesh Kumar K.V Committed by Michael Ellerman
Browse files

powerpc/mm: Handle _PTE_NONE_MASK



I am splitting this as a separate patch to get better review. If ok
we should merge this with previous patch.

Signed-off-by: default avatarAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
parent 945537df
Loading
Loading
Loading
Loading
+2 −4
Original line number Diff line number Diff line
@@ -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 */
@@ -134,7 +133,6 @@
#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