diff options
author | AKASHI Takahiro <takahiro.akashi@linaro.org> | 2016-11-14 15:15:05 +0900 |
---|---|---|
committer | Jessica Yu <jeyu@redhat.com> | 2016-11-27 16:15:33 -0800 |
commit | 39290b389ea2654f9190e3b48c57d27b24def83e (patch) | |
tree | c56b3f6505001d9c4bf25d5588e79e79f2db0ea8 /include/linux/init.h | |
parent | 71d9f5079358c148e71eba930e436a7a0cb35d95 (diff) | |
download | lwn-39290b389ea2654f9190e3b48c57d27b24def83e.tar.gz lwn-39290b389ea2654f9190e3b48c57d27b24def83e.zip |
module: extend 'rodata=off' boot cmdline parameter to module mappings
The current "rodata=off" parameter disables read-only kernel mappings
under CONFIG_DEBUG_RODATA:
commit d2aa1acad22f ("mm/init: Add 'rodata=off' boot cmdline parameter
to disable read-only kernel mappings")
This patch is a logical extension to module mappings ie. read-only mappings
at module loading can be disabled even if CONFIG_DEBUG_SET_MODULE_RONX
(mainly for debug use). Please note, however, that it only affects RO/RW
permissions, keeping NX set.
This is the first step to make CONFIG_DEBUG_SET_MODULE_RONX mandatory
(always-on) in the future as CONFIG_DEBUG_RODATA on x86 and arm64.
Suggested-by: and Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Kees Cook <keescook@chromium.org>
Acked-by: Rusty Russell <rusty@rustcorp.com.au>
Link: http://lkml.kernel.org/r/20161114061505.15238-1-takahiro.akashi@linaro.org
Signed-off-by: Jessica Yu <jeyu@redhat.com>
Diffstat (limited to 'include/linux/init.h')
-rw-r--r-- | include/linux/init.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/init.h b/include/linux/init.h index e30104ceb86d..885c3e6d0f9d 100644 --- a/include/linux/init.h +++ b/include/linux/init.h @@ -126,6 +126,9 @@ void prepare_namespace(void); void __init load_default_modules(void); int __init init_rootfs(void); +#if defined(CONFIG_DEBUG_RODATA) || defined(CONFIG_DEBUG_SET_MODULE_RONX) +extern bool rodata_enabled; +#endif #ifdef CONFIG_DEBUG_RODATA void mark_rodata_ro(void); #endif |