[GIT PULL] Modules updates for v5.13
From: Jessica Yu
Date: Wed Apr 28 2021 - 08:58:51 EST
Hi Linus,
Please pull below to receive modules updates for the v5.13 merge window.
A summary can be found in the signed tag.
Thank you,
Jessica
--
The following changes since commit 1e28eed17697bcf343c6743f0028cc3b5dd88bf0:
Linux 5.12-rc3 (2021-03-14 14:41:02 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux.git tags/modules-for-v5.13
for you to fetch changes up to 33121347fb1c359bd6e3e680b9f2c6ced5734a81:
module: treat exit sections the same as init sections when !CONFIG_MODULE_UNLOAD (2021-03-29 13:08:53 +0200)
----------------------------------------------------------------
Modules updates for v5.13
Summary of modules changes for the 5.13 merge window:
- Fix an age old bug involving jump_calls and static_labels when
CONFIG_MODULE_UNLOAD=n. When CONFIG_MODULE_UNLOAD=n, it means you
can't unload modules, so normally the __exit sections of a module are
not loaded at all. However, dynamic code patching (jump_label,
static_call, alternatives) can have sites in __exit sections even if
__exit is never executed.
Reported by Peter Zijlstra: "Alternatives, jump_labels and static_call
all can have relocations into __exit code. Not loading it at all would
be BAD." Therefore, load the __exit sections even when
CONFIG_MODULE_UNLOAD=n, and discard them after init.
Signed-off-by: Jessica Yu <jeyu@xxxxxxxxxx>
----------------------------------------------------------------
Jessica Yu (1):
module: treat exit sections the same as init sections when !CONFIG_MODULE_UNLOAD
kernel/module.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)