diff options
author | Huacai Chen <chenhuacai@loongson.cn> | 2025-01-25 18:51:42 +0800 |
---|---|---|
committer | Huacai Chen <chenhuacai@loongson.cn> | 2025-01-25 18:51:42 +0800 |
commit | 0816b2ea18284e2598faec024a4df6a93591bd17 (patch) | |
tree | ce63397ae182dd84da583ad9464db27b7c40575b /arch/loongarch | |
parent | 613d4164f5a5032716f79106f48a59286c7b1c24 (diff) |
LoongArch: Add pgprot_nx() implementation
Commit cca98e9f8b5ebcd964 ("mm: enforce that vmap can't map pages
executable") enforces the W^X protection by not allowing remapping
existing pages as executable. Add LoongArch bits so that LoongArch
can benefit the same protection.
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
Diffstat (limited to 'arch/loongarch')
-rw-r--r-- | arch/loongarch/include/asm/pgtable-bits.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/loongarch/include/asm/pgtable-bits.h b/arch/loongarch/include/asm/pgtable-bits.h index 82cd3a9f094b..45bfc65a0c9f 100644 --- a/arch/loongarch/include/asm/pgtable-bits.h +++ b/arch/loongarch/include/asm/pgtable-bits.h @@ -96,6 +96,13 @@ #define _PAGE_IOREMAP pgprot_val(PAGE_KERNEL_SUC) +#define pgprot_nx pgprot_nx + +static inline pgprot_t pgprot_nx(pgprot_t _prot) +{ + return __pgprot(pgprot_val(_prot) | _PAGE_NO_EXEC); +} + #define pgprot_noncached pgprot_noncached static inline pgprot_t pgprot_noncached(pgprot_t _prot) |