Messages in this thread | | | Date | Sun, 1 Dec 2019 23:22:08 +0100 | From | Ingo Molnar <> | Subject | [GIT PULL] x86 fixes |
| |
Linus,
Please pull the latest x86-urgent-for-linus git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86-urgent-for-linus
# HEAD: 91298f1a302dad0f0f630413c812818636faa8a0 x86/mm/pat: Fix off-by-one bugs in interval tree search
Various fixes:
- Fix the PAT performance regression that downgraded write-combining device memory regions to uncached.
- There's been a number of bugs in 32-bit double fault handling - hopefully all fixed now.
- Fix an LDT crash
- Fix an FPU over-optimization that broke with GCC9 code optimizations.
- Misc cleanups
Thanks,
Ingo
------------------> Andy Lutomirski (9): selftests/x86/single_step_syscall: Check SYSENTER directly lkdtm: Add a DOUBLE_FAULT crash type on x86 x86/traps: Disentangle the 32-bit and 64-bit doublefault code x86/doublefault/32: Rename doublefault.c to doublefault_32.c x86/doublefault/32: Move #DF stack and TSS to cpu_entry_area x86/doublefault/32: Rewrite the x86_32 #DF handler and unify with 64-bit x86/traps: die() instead of panicking on a double fault x86/ptrace: Remove set_segment_reg() implementations for current x86/ptrace: Document FSBASE and GSBASE ABI oddities
Borislav Petkov (2): x86/entry/32: Remove unused 'restore_all_notrace' local label x86/ioperm: Save an indentation level in tss_update_io_bitmap()
Ingo Molnar (1): x86/mm/pat: Fix off-by-one bugs in interval tree search
Joerg Roedel (1): x86/mm/32: Sync only to VMALLOC_END in vmalloc_sync_all()
Sebastian Andrzej Siewior (1): x86/fpu: Don't cache access to fpu_fpregs_owner_ctx
arch/x86/Kconfig.debug | 2 +- arch/x86/entry/entry_32.S | 43 ++++++- arch/x86/include/asm/cpu_entry_area.h | 12 ++ arch/x86/include/asm/doublefault.h | 13 +++ arch/x86/include/asm/fpu/internal.h | 2 +- arch/x86/include/asm/pgtable_32_types.h | 7 +- arch/x86/include/asm/processor.h | 2 - arch/x86/include/asm/traps.h | 3 + arch/x86/kernel/Makefile | 4 +- arch/x86/kernel/cpu/common.c | 12 +- arch/x86/kernel/doublefault.c | 86 -------------- arch/x86/kernel/doublefault_32.c | 136 ++++++++++++++++++++++ arch/x86/kernel/dumpstack_32.c | 30 +++++ arch/x86/kernel/process.c | 52 ++++----- arch/x86/kernel/ptrace.c | 36 ++++-- arch/x86/kernel/traps.c | 31 +++-- arch/x86/mm/cpu_entry_area.c | 14 ++- arch/x86/mm/fault.c | 2 +- arch/x86/mm/pat_interval.c | 12 +- drivers/misc/lkdtm/bugs.c | 39 +++++++ drivers/misc/lkdtm/core.c | 3 + drivers/misc/lkdtm/lkdtm.h | 3 + tools/testing/selftests/x86/single_step_syscall.c | 94 +++++++++++++-- 23 files changed, 467 insertions(+), 171 deletions(-) create mode 100644 arch/x86/include/asm/doublefault.h delete mode 100644 arch/x86/kernel/doublefault.c create mode 100644 arch/x86/kernel/doublefault_32.c
| |