Commit 9aae0df6a3cb6fbbfe30b1649644a862632fbfdd
Exists in
ti-lsk-linux-4.1.y
and in
10 other branches
Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux
Pull arm64 fixes from Catalin Marinas: "arm64 and generic kernel/module.c (acked by Rusty) fixes for CONFIG_DEBUG_SET_MODULE_RONX" * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: kernel/module.c: Update debug alignment after symtable generation arm64: Don't use is_module_addr in setting page attributes
Showing 2 changed files Side-by-side Diff
arch/arm64/mm/pageattr.c
... | ... | @@ -51,7 +51,10 @@ |
51 | 51 | WARN_ON_ONCE(1); |
52 | 52 | } |
53 | 53 | |
54 | - if (!is_module_address(start) || !is_module_address(end - 1)) | |
54 | + if (start < MODULES_VADDR || start >= MODULES_END) | |
55 | + return -EINVAL; | |
56 | + | |
57 | + if (end < MODULES_VADDR || end >= MODULES_END) | |
55 | 58 | return -EINVAL; |
56 | 59 | |
57 | 60 | data.set_mask = set_mask; |
kernel/module.c
... | ... | @@ -2313,11 +2313,13 @@ |
2313 | 2313 | info->symoffs = ALIGN(mod->core_size, symsect->sh_addralign ?: 1); |
2314 | 2314 | info->stroffs = mod->core_size = info->symoffs + ndst * sizeof(Elf_Sym); |
2315 | 2315 | mod->core_size += strtab_size; |
2316 | + mod->core_size = debug_align(mod->core_size); | |
2316 | 2317 | |
2317 | 2318 | /* Put string table section at end of init part of module. */ |
2318 | 2319 | strsect->sh_flags |= SHF_ALLOC; |
2319 | 2320 | strsect->sh_entsize = get_offset(mod, &mod->init_size, strsect, |
2320 | 2321 | info->index.str) | INIT_OFFSET_MASK; |
2322 | + mod->init_size = debug_align(mod->init_size); | |
2321 | 2323 | pr_debug("\t%s\n", info->secstrings + strsect->sh_name); |
2322 | 2324 | } |
2323 | 2325 |