[RFC][PATCH 0/8] x86, mpx: Support 32-bit binaries on 64-bit kernels

From: Dave Hansen
Date: Fri Dec 12 2014 - 14:12:15 EST


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(-)

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/