Pull ARM updates from Russell King: - remove a now unnecessary usage of the KERNEL_DS for sys_oabi_epoll_ctl() - update my email address in a number of drivers - decompressor EFI updates from Ard Biesheuvel - module unwind section handling updates - sparsemem Kconfig cleanups - make act_mm macro respect THREAD_SIZE * tag 'for-linus' of git://git.armlinux.org.uk/~rmk/linux-arm: ARM: 8980/1: Allow either FLATMEM or SPARSEMEM on the multiplatform build ARM: 8979/1: Remove redundant ARCH_SPARSEMEM_DEFAULT setting ARM: 8978/1: mm: make act_mm() respect THREAD_SIZE ARM: decompressor: run decompressor in place if loaded via UEFI ARM: decompressor: move GOT into .data for EFI enabled builds ARM: decompressor: defer loading of the contents of the LC0 structure ARM: decompressor: split off _edata and stack base into separate object ARM: decompressor: move headroom variable out of LC0 ARM: 8976/1: module: allow arch overrides for .init section names ARM: 8975/1: module: fix handling of unwind init sections ARM: 8974/1: use SPARSMEM_STATIC when SPARSEMEM is enabled ARM: 8971/1: replace the sole use of a symbol with its definition ARM: 8969/1: decompressor: simplify libfdt builds Update rmk's email address in various drivers ARM: compat: remove KERNEL_DS usage in sys_oabi_epoll_ctl()
Showing the changes to kernel/module.c (1 of 24 files). Show all
Unified · Split
| @@ -2400,7 +2400,7 @@ static void layout_sections(struct module *mod, struct load_info *info) · 2399 unmodified lines | ||
| 2400 | 2400 | if ((s->sh_flags & masks[m][0]) != masks[m][0] |
| 2401 | 2401 | || (s->sh_flags & masks[m][1]) |
| 2402 | 2402 | || s->sh_entsize != ~0UL |
| 2403 | − || strstarts(sname, ".init")) | |
| 2403 | + || module_init_section(sname)) | |
| 2404 | 2404 | continue; |
| 2405 | 2405 | s->sh_entsize = get_offset(mod, &mod->core_layout.size, s, i); |
| 2406 | 2406 | pr_debug("\t%s\n", sname); |
| @@ -2433,7 +2433,7 @@ static void layout_sections(struct module *mod, struct load_info *info) · 26 unmodified lines | ||
| 2433 | 2433 | if ((s->sh_flags & masks[m][0]) != masks[m][0] |
| 2434 | 2434 | || (s->sh_flags & masks[m][1]) |
| 2435 | 2435 | || s->sh_entsize != ~0UL |
| 2436 | − || !strstarts(sname, ".init")) | |
| 2436 | + || !module_init_section(sname)) | |
| 2437 | 2437 | continue; |
| 2438 | 2438 | s->sh_entsize = (get_offset(mod, &mod->init_layout.size, s, i) |
| 2439 | 2439 | | INIT_OFFSET_MASK); |
| @@ -2768,6 +2768,11 @@ void * __weak module_alloc(unsigned long size) · 328 unmodified lines | ||
| 2768 | 2768 | return vmalloc_exec(size); |
| 2769 | 2769 | } |
| 2770 | 2770 | |
| 2771 | +bool __weak module_init_section(const char *name) | |
| 2772 | +{ | |
| 2773 | + return strstarts(name, ".init"); | |
| 2774 | +} | |
| 2775 | + | |
| 2771 | 2776 | bool __weak module_exit_section(const char *name) |
| 2772 | 2777 | { |
| 2773 | 2778 | return strstarts(name, ".exit"); |