Messages in this thread | | | Date | Wed, 28 Apr 2021 14:58:44 +0200 | From | Jessica Yu <> | Subject | [GIT PULL] Modules updates for v5.13 |
| |
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@kernel.org>
---------------------------------------------------------------- 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(-)
| |