diff options
author | Linus Torvalds | 2019-07-18 12:06:57 -0700 |
---|---|---|
committer | Linus Torvalds | 2019-07-18 12:06:57 -0700 |
commit | da0acd7c656c09b362b5095dc8595f8655dc1223 (patch) | |
tree | 6e4a3bba1abc52d3593345d8617e8c874a1b708c /arch/arm | |
parent | 818e95c768c6607a1df4cf022c00c3c58e2f203e (diff) | |
parent | 93651f80dcb616b8c9115cdafc8e57a781af22d0 (diff) |
Merge tag 'modules-for-v5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux
Pull module updates from Jessica Yu:
"Summary of modules changes for the 5.3 merge window:
- Code fixes and cleanups
- Fix bug where set_memory_x() wasn't being called when rodata=n
- Fix bug where -EEXIST was being returned for going modules
- Allow arches to override module_exit_section()"
* tag 'modules-for-v5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/jeyu/linux:
modules: fix compile error if don't have strict module rwx
ARM: module: recognize unwind exit sections
module: allow arch overrides for .exit section names
modules: fix BUG when load module with rodata=n
kernel/module: Fix mem leak in module_add_modinfo_attrs
kernel: module: Use struct_size() helper
kernel/module.c: Only return -EEXIST for modules that have finished loading
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/kernel/module.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm/kernel/module.c b/arch/arm/kernel/module.c index b3d439c41c7b..deef17f34bd2 100644 --- a/arch/arm/kernel/module.c +++ b/arch/arm/kernel/module.c @@ -55,6 +55,13 @@ void *module_alloc(unsigned long size) } #endif +bool module_exit_section(const char *name) +{ + return strstarts(name, ".exit") || + strstarts(name, ".ARM.extab.exit") || + strstarts(name, ".ARM.exidx.exit"); +} + int apply_relocate(Elf32_Shdr *sechdrs, const char *strtab, unsigned int symindex, unsigned int relindex, struct module *module) |