Merge tag 'mpx-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/daveh...
authorLinus Torvalds <torvalds@linux-foundation.org>
Fri, 31 Jan 2020 00:11:50 +0000 (16:11 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 31 Jan 2020 00:11:50 +0000 (16:11 -0800)
Pull x86 MPX removal from Dave Hansen:
 "MPX requires recompiling applications, which requires compiler
  support. Unfortunately, GCC 9.1 is expected to be be released without
  support for MPX. This means that there was only a relatively small
  window where folks could have ever used MPX. It failed to gain wide
  adoption in the industry, and Linux was the only mainstream OS to ever
  support it widely.

  Support for the feature may also disappear on future processors.

  This set completes the process that we started during the 5.4 merge
  window when the MPX prctl()s were removed. XSAVE support is left in
  place, which allows MPX-using KVM guests to continue to function"

* tag 'mpx-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/daveh/x86-mpx:
  x86/mpx: remove MPX from arch/x86
  mm: remove arch_bprm_mm_init() hook
  x86/mpx: remove bounds exception code
  x86/mpx: remove build infrastructure
  x86/alternatives: add missing insn.h include

1  2 
arch/x86/Kconfig
arch/x86/include/asm/disabled-features.h
arch/x86/include/asm/mmu_context.h
arch/x86/include/asm/processor.h
arch/x86/kernel/alternative.c
arch/x86/kernel/cpu/common.c
arch/x86/kernel/cpu/intel.c
arch/x86/kernel/setup.c
arch/x86/kernel/traps.c
arch/x86/mm/Makefile
fs/exec.c

Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -893,13 -947,9 +893,11 @@@ void __init setup_arch(char **cmdline_p
        init_mm.end_data = (unsigned long) _edata;
        init_mm.brk = _brk_end;
  
-       mpx_mm_init(&init_mm);
        code_resource.start = __pa_symbol(_text);
        code_resource.end = __pa_symbol(_etext)-1;
 -      data_resource.start = __pa_symbol(_etext);
 +      rodata_resource.start = __pa_symbol(__start_rodata);
 +      rodata_resource.end = __pa_symbol(__end_rodata)-1;
 +      data_resource.start = __pa_symbol(_sdata);
        data_resource.end = __pa_symbol(_edata)-1;
        bss_resource.start = __pa_symbol(__bss_start);
        bss_resource.end = __pa_symbol(__bss_stop)-1;
  #include <asm/mach_traps.h>
  #include <asm/alternative.h>
  #include <asm/fpu/xstate.h>
- #include <asm/trace/mpx.h>
- #include <asm/mpx.h>
  #include <asm/vm86.h>
  #include <asm/umip.h>
 +#include <asm/insn.h>
 +#include <asm/insn-eval.h>
  
  #ifdef CONFIG_X86_64
  #include <asm/x86_init.h>
Simple merge
diff --cc fs/exec.c
Simple merge