Messages in this thread | | | Subject | [RFC][PATCH 0/8] x86, mpx: Support 32-bit binaries on 64-bit kernels | From | Dave Hansen <> | Date | Fri, 12 Dec 2014 11:12:13 -0800 |
| |
This is 3.20 material. I'm hoping to get some comments early in case folks have some issues with the way it's being done.
--
The MPX hardware structures differ in layout in 32 and 64-bit mode. A 32-bit binary running on a 64-bit kernel needs the 32-bit structures, so we need code which switches between the two modes.
The first patch is just a documentation update. The next 5 patches are really just prepwork. The meat is in the last 3.
x86: make is_64bit_mm() widely available x86: make __VIRTUAL_MASK safe to use on 32 bit x86, mpx: we do not allocate the bounds directory x86, mpx: remove redundant MPX_BNDCFG_ADDR_MASK x86, mpx: Add temporary variable to reduce masking x86, mpx: new directory entry to addr helper x86, mpx: do 32-bit-only cmpxchg for 32-bit apps x86, mpx: support 32bit binaries on 64bit kernel
Documentation/x86/intel_mpx.txt | 12 +++- arch/x86/include/asm/mmu_context.h | 13 +++++ arch/x86/include/asm/mpx.h | 2 arch/x86/include/asm/page_types.h | 8 +++ arch/x86/kernel/uprobes.c | 10 --- arch/x86/mm/mpx.c | 93 ++++++++++++++++++++++++++++++------- 6 files changed, 107 insertions(+), 31 deletions(-)
| |