--- b/arch/x86/Kconfig | 2 +- b/kernel/module/main.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff -puN arch/x86/Kconfig~x86-STRICT_MODULE_RWX arch/x86/Kconfig --- a/arch/x86/Kconfig~x86-STRICT_MODULE_RWX 2026-10-01 06:31:14.379577124 -0700 +++ b/arch/x86/Kconfig 2026-10-01 06:31:39.777436090 -0700 @@ -85,7 +85,7 @@ config X86 select ARCH_HAS_DMA_OPS if GART_IOMMU || XEN select ARCH_HAS_EARLY_DEBUG if KGDB select ARCH_HAS_ELF_RANDOMIZE - select ARCH_HAS_EXECMEM_ROX if X86_64 && STRICT_MODULE_RWX + select ARCH_HAS_EXECMEM_ROX if X86_64 select ARCH_HAS_FAST_MULTIPLIER select ARCH_HAS_FORTIFY_SOURCE select ARCH_HAS_GCOV_PROFILE_ALL diff -puN kernel/module/main.c~x86-STRICT_MODULE_RWX kernel/module/main.c --- a/kernel/module/main.c~x86-STRICT_MODULE_RWX 2026-10-01 06:44:42.417795788 -0700 +++ b/kernel/module/main.c 2026-10-01 06:51:28.048722976 -0700 @@ -1355,7 +1355,8 @@ static int module_memory_alloc(struct mo if (!ptr) return -ENOMEM; - mod->mem[type].is_rox = execmem_is_rox(execmem_type); + if (IS_ENABLED(STRICT_MODULE_RWX)) + mod->mem[type].is_rox = execmem_is_rox(execmem_type); /* * The pointer to these blocks of memory are stored on the module _