powerpc/book3e: redefine pte_mkprivileged() and pte_mkuser()
Book3e defines both _PAGE_USER and _PAGE_PRIVILEGED, so the nohash default pte_mkprivileged() and pte_mkuser() are not usable. This patch redefines them for book3e. In theorie, only pte_mkprivileged() needs to be redefined because _PAGE_USER includes _PAGE_PRIVILEGED, but it is less confusing to redefine both. Fixes: a0da4bc166f2 ("powerpc/mm: Allow platforms to redefine some helpers") Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
parent
b9fb4480a3
commit
bde1a1335c
@ -104,5 +104,21 @@
|
||||
#define PAGE_READONLY __pgprot(_PAGE_BASE | _PAGE_USER)
|
||||
#define PAGE_READONLY_X __pgprot(_PAGE_BASE | _PAGE_USER | _PAGE_EXEC)
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
static inline pte_t pte_mkprivileged(pte_t pte)
|
||||
{
|
||||
return __pte((pte_val(pte) & ~_PAGE_USER) | _PAGE_PRIVILEGED);
|
||||
}
|
||||
|
||||
#define pte_mkprivileged pte_mkprivileged
|
||||
|
||||
static inline pte_t pte_mkuser(pte_t pte)
|
||||
{
|
||||
return __pte((pte_val(pte) & ~_PAGE_PRIVILEGED) | _PAGE_USER);
|
||||
}
|
||||
|
||||
#define pte_mkuser pte_mkuser
|
||||
#endif /* __ASSEMBLY__ */
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
#endif /* _ASM_POWERPC_NOHASH_PTE_BOOK3E_H */
|
||||
|
Loading…
x
Reference in New Issue
Block a user