Messages in this thread | | | Date | Mon, 6 May 2019 12:40:35 +0200 | From | Ingo Molnar <> | Subject | [GIT PULL] x86/mm changes for v5.2 |
| |
Linus,
Please pull the latest x86-mm-for-linus git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86-mm-for-linus
# HEAD: caa841360134f863987f2d4f77b8dc2fbb7596f8 x86/mm: Initialize PGD cache during mm initialization
The changes in this tree are:
- text_poke() fixes and an extensive set of executability lockdowns, to (hopefully) eliminate the last residual circumstances under which we are using W|X mappings even temporarily on x86 kernels. This required a broad range of surgery in text patching facilities, module loading, trampoline handling and other bits.
- Tweak page fault messages to be more informative and more structured.
- Remove DISCONTIGMEM support on x86-32 and make SPARSEMEM the default.
- Reduce KASLR granularity on 5-level paging kernels from 512 GB to 1 GB.
- Misc other changes and updates.
out-of-topic modifications in x86-mm-for-linus: ------------------------------------------------- arch/Kconfig # d253ca0c3865: x86/mm/cpa: Add set_direct_m include/asm-generic/pgtable.h # caa841360134: x86/mm: Initialize PGD cache include/asm-generic/tlb.h # 5932c9fd19e6: mm/tlb: Provide default nmi_ include/linux/filter.h # d53d2f78cead: bpf: Use vmalloc special fla # f2c65fb3221a: x86/modules: Avoid breaking include/linux/mm.h # d63326928611: mm/hibernation: Make hiberna include/linux/sched/task.h # 13585fa0668c: fork: Provide a function for include/linux/set_memory.h # d253ca0c3865: x86/mm/cpa: Add set_direct_m include/linux/uprobes.h # aad42dd44db0: uprobes: Initialize uprobes include/linux/vmalloc.h # 868b104d7379: mm/vmalloc: Add flag for fre kernel/bpf/core.c # d53d2f78cead: bpf: Use vmalloc special fla kernel/events/uprobes.c # aad42dd44db0: uprobes: Initialize uprobes kernel/module.c # 1a7b7d922081: modules: Use vmalloc special # f2c65fb3221a: x86/modules: Avoid breaking kernel/power/snapshot.c # d63326928611: mm/hibernation: Make hiberna kernel/trace/bpf_trace.c # c7b6f29b6257: bpf: Fail bpf_probe_write_us mm/page_alloc.c # d63326928611: mm/hibernation: Make hiberna mm/vmalloc.c # 868b104d7379: mm/vmalloc: Add flag for fre
Thanks,
Ingo
------------------> Andy Lutomirski (1): x86/mm: Introduce temporary mm structs
Baoquan He (2): x86/mm/KASLR: Use only one PUD entry for real mode trampoline x86/mm/KASLR: Reduce randomization granularity for 5-level paging to 1GB
Borislav Petkov (1): x86/fault: Make fault messages more succinct
Jiri Kosina (1): x86/mm: Remove in_nmi() warning from 64-bit implementation of vmalloc_fault()
Kees Cook (1): x86/build: Move _etext to actual end of .text
Mike Rapoport (2): x86/Kconfig: Make SPARSEMEM default for 32-bit x86 x86/Kconfig: Deprecate DISCONTIGMEM support for 32-bit x86
Nadav Amit (18): x86/mm/tlb: Remove 'struct flush_tlb_info' from the stack x86/alternatives: Add text_poke_kgdb() to not assert the lock when debugging mm/tlb: Provide default nmi_uaccess_okay() bpf: Fail bpf_probe_write_user() while mm is switched x86/jump_label: Use text_poke_early() during early init x86/mm: Save debug registers when loading a temporary mm uprobes: Initialize uprobes earlier fork: Provide a function for copying init_mm x86/alternatives: Initialize temporary mm for patching x86/alternatives: Use temporary mm for text poking x86/kgdb: Avoid redundant comparison of patched code x86/ftrace: Set trampoline pages as executable x86/kprobes: Set instruction page as executable x86/modules: Avoid breaking W^X while loading modules x86/jump-label: Remove support for custom text poker x86/alternatives: Remove the return value of text_poke_*() x86/alternatives: Add comment about module removal races x86/mm: Initialize PGD cache during mm initialization
Rick Edgecombe (7): x86/mm/cpa: Add set_direct_map_*() functions mm/hibernation: Make hibernation handle unmapped pages mm/vmalloc: Add flag for freeing of special permsissions modules: Use vmalloc special flag bpf: Use vmalloc special flag x86/ftrace: Use vmalloc special flag x86/kprobes: Use vmalloc special flag
Sean Christopherson (2): x86/fault: Reword initial BUG message for unhandled page faults x86/fault: Decode and print #PF oops in human readable form
Stephen Kitt (1): x86/mm: Fix the 56-bit addresses memory map in Documentation/x86/x86_64/mm.txt
Documentation/x86/x86_64/mm.txt | 6 +- arch/Kconfig | 4 + arch/x86/Kconfig | 11 +- arch/x86/include/asm/fixmap.h | 2 - arch/x86/include/asm/mmu_context.h | 56 ++++++++++ arch/x86/include/asm/pgtable.h | 3 + arch/x86/include/asm/set_memory.h | 3 + arch/x86/include/asm/text-patching.h | 7 +- arch/x86/include/asm/tlbflush.h | 2 + arch/x86/kernel/alternative.c | 201 +++++++++++++++++++++++++++-------- arch/x86/kernel/ftrace.c | 22 ++-- arch/x86/kernel/jump_label.c | 21 ++-- arch/x86/kernel/kgdb.c | 25 ++--- arch/x86/kernel/kprobes/core.c | 19 +++- arch/x86/kernel/module.c | 2 +- arch/x86/kernel/vmlinux.lds.S | 6 +- arch/x86/mm/fault.c | 55 ++++------ arch/x86/mm/init.c | 37 +++++++ arch/x86/mm/kaslr.c | 94 +++++++--------- arch/x86/mm/pageattr.c | 16 +-- arch/x86/mm/pgtable.c | 10 +- arch/x86/mm/tlb.c | 116 ++++++++++++++------ arch/x86/xen/mmu_pv.c | 2 - include/asm-generic/pgtable.h | 2 + include/asm-generic/tlb.h | 9 ++ include/linux/filter.h | 18 +--- include/linux/mm.h | 18 ++-- include/linux/sched/task.h | 1 + include/linux/set_memory.h | 11 ++ include/linux/uprobes.h | 5 + include/linux/vmalloc.h | 15 +++ init/main.c | 6 ++ kernel/bpf/core.c | 1 - kernel/events/uprobes.c | 8 +- kernel/fork.c | 25 +++-- kernel/module.c | 82 +++++++------- kernel/power/snapshot.c | 5 +- kernel/trace/bpf_trace.c | 8 ++ mm/page_alloc.c | 7 +- mm/vmalloc.c | 113 ++++++++++++++++---- 40 files changed, 711 insertions(+), 343 deletions(-)
| |