Files
linux/kernel
Rusty Russell 01fbd3fa49 UPSTREAM: module: clean up RO/NX handling.
commit 85c898db63 upstream.

Modules have three sections: text, rodata and writable data.  The code
handled the case where these overlapped, however they never can:
debug_align() ensures they are always page-aligned.

This is why we got away with manually traversing the pages in
set_all_modules_text_rw() without rounding.

We create three helper functions: frob_text(), frob_rodata() and
frob_writable_data().  We then call these explicitly at every point,
so it's clear what we're doing.

We also expose module_enable_ro() and module_disable_ro() for
livepatch to use.

Reviewed-by: Josh Poimboeuf <jpoimboe@redhat.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
2017-08-11 19:31:04 +05:30
..
2015-04-11 22:27:55 -04:00
2014-10-09 22:26:04 -04:00
2015-11-04 08:23:51 -05:00
2014-08-08 15:57:18 -07:00
2015-04-12 21:03:31 +02:00
2015-11-23 09:44:58 +01:00
2014-12-04 14:34:54 -05:00
2017-05-20 14:27:02 +02:00
2017-07-05 14:37:19 +02:00
2015-01-17 10:02:23 +13:00
2015-11-05 19:34:48 -08:00