[PATCH v2 0/3] CONFIG_DEBUG_SET_MODULE_RONX bug fix and cleanups

Josh Poimboeuf
2015-11-05T21:19:32Z

Patch 1/3 is a livepatch bug fix for a crash which occurs when loading a
patch module on a kernel without CONFIG_DEBUG_SET_MODULE_RONX.

Patch 2/3 is a module code cleanup to make setting and clearing RO and
NX more symmetrical. It also adds some new functions which are used by
patch 3.

Patch 3/3 is a livepatch cleanup for simplification of the livepatch
relocation code.

v2:
- removed set_page_attributes() duplication in livepatch cleanup patch
in favor of using new {un}set_module_core_ro_nx() functions
- changed 'size' from int to size_t

Josh Poimboeuf (3):
livepatch: Fix crash with !CONFIG_DEBUG_SET_MODULE_RONX
module: Use the same logic for setting and unsetting RO/NX
livepatch: Cleanup module page permission changes

arch/x86/kernel/livepatch.c | 24 ++----------------
include/linux/module.h | 4 +++
kernel/livepatch/core.c | 15 ++++++++----
kernel/module.c | 59 +++++++++++++++++++++++----------------------
4 files changed, 46 insertions(+), 56 deletions(-)

--
2.4.3