powerpc: Get USE_STRICT_MM_TYPECHECKS working again
The typesafe version of the powerpc pagetable handling (with USE_STRICT_MM_TYPECHECKS defined) has bitrotted again. This patch makes a bunch of small fixes to get it back to building status. It's still not enabled by default as gcc still generates worse code with it for some reason. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
committed by
Benjamin Herrenschmidt
parent
cd301c7ba4
commit
f5ea64dcba
@@ -117,10 +117,10 @@
|
||||
#define PAGE_AGP __pgprot(_PAGE_BASE | _PAGE_WRENABLE | _PAGE_NO_CACHE)
|
||||
#define HAVE_PAGE_AGP
|
||||
|
||||
#define PAGE_PROT_BITS __pgprot(_PAGE_GUARDED | _PAGE_COHERENT | \
|
||||
_PAGE_NO_CACHE | _PAGE_WRITETHRU | \
|
||||
_PAGE_4K_PFN | _PAGE_RW | _PAGE_USER | \
|
||||
_PAGE_ACCESSED | _PAGE_DIRTY | _PAGE_EXEC)
|
||||
#define PAGE_PROT_BITS (_PAGE_GUARDED | _PAGE_COHERENT | \
|
||||
_PAGE_NO_CACHE | _PAGE_WRITETHRU | \
|
||||
_PAGE_4K_PFN | _PAGE_RW | _PAGE_USER | \
|
||||
_PAGE_ACCESSED | _PAGE_DIRTY | _PAGE_EXEC)
|
||||
/* PTEIDX nibble */
|
||||
#define _PTEIDX_SECONDARY 0x8
|
||||
#define _PTEIDX_GROUP_IX 0x7
|
||||
@@ -264,9 +264,9 @@ static inline pte_t pte_mkhuge(pte_t pte) {
|
||||
return pte; }
|
||||
static inline pte_t pte_mkspecial(pte_t pte) {
|
||||
pte_val(pte) |= _PAGE_SPECIAL; return pte; }
|
||||
static inline unsigned long pte_pgprot(pte_t pte)
|
||||
static inline pgprot_t pte_pgprot(pte_t pte)
|
||||
{
|
||||
return __pgprot(pte_val(pte)) & PAGE_PROT_BITS;
|
||||
return __pgprot(pte_val(pte) & PAGE_PROT_BITS);
|
||||
}
|
||||
|
||||
/* Atomic PTE updates */
|
||||
|
Reference in New Issue
Block a user