[PATCH 2/2] powerpc/8xx: Honor execonly protection

From: Christophe Leroy
Date: Fri Aug 18 2023 - 12:14:48 EST


On powerpc 8xx, exec does not imply read so
redefine PAGE_NONE_X as PAGE_NONE + X

Signed-off-by: Christophe Leroy <christophe.leroy@xxxxxxxxxx>
Cc: Russell Currey <ruscur@xxxxxxxxxx>
Cc: Kees Cook <keescook@xxxxxxxxxxxx>
---
arch/powerpc/include/asm/nohash/32/pte-8xx.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/powerpc/include/asm/nohash/32/pte-8xx.h b/arch/powerpc/include/asm/nohash/32/pte-8xx.h
index b234a93b05f1..f47d36d40a26 100644
--- a/arch/powerpc/include/asm/nohash/32/pte-8xx.h
+++ b/arch/powerpc/include/asm/nohash/32/pte-8xx.h
@@ -79,7 +79,7 @@

/* Permission masks used to generate the __P and __S table */
#define PAGE_NONE __pgprot(_PAGE_BASE | _PAGE_NA)
-#define PAGE_NONE_X __pgprot(_PAGE_BASE | _PAGE_RO | _PAGE_EXEC)
+#define PAGE_NONE_X __pgprot(_PAGE_BASE | _PAGE_NA | _PAGE_EXEC)
#define PAGE_SHARED __pgprot(_PAGE_BASE)
#define PAGE_SHARED_X __pgprot(_PAGE_BASE | _PAGE_EXEC)
#define PAGE_COPY __pgprot(_PAGE_BASE | _PAGE_RO)
--
2.41.0