[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <cover.1419900414.git.luto@amacapital.net>
Date: Mon, 29 Dec 2014 16:52:24 -0800
From: Andy Lutomirski <luto@...capital.net>
To: linux-kernel@...r.kernel.org, x86@...nel.org,
Dave Hansen <dave.hansen@...ux.intel.com>,
Thomas Gleixner <tglx@...utronix.de>
Cc: Andy Lutomirski <luto@...capital.net>
Subject: [PATCH 3.19 0/3] Possible MPX improvements for 3.19
I don't have the hardware, so this is only compile-tested.
Patches 1 and 2 should be safe. Patch 1 is a bugfix, although given the
bitness sensitivity of the MPX data structures, any user code that hits
the bug is probably doomed to failure anyway. Patch 2 is a hardening
change that adds almost no complexity (it's mostly just reordering some
code) that will make it considerably harder to exploit a possibly insn
decoder vulnerability using threads that modify MPX instructions that
send #BR before the trap handler runs.
Patch 3 will be much more controversial, since it's a complete ABI
break. The ABI in question has never appeared in a released kernel,
though. If patch 3 is not okay, then I want to fix the prctl
implementation to at least validate its arguments.
Andy Lutomirski (3):
x86, mpx: Check user mode bitness correctly when decoding instructions
x86, mpx: Short-circuit the instruction decoder for unexpected opcodes
x86, mpx: Change the MPX enable/disable API to arch_prctl
arch/x86/include/asm/ptrace.h | 5 +++++
arch/x86/include/uapi/asm/prctl.h | 15 +++++++++++----
arch/x86/kernel/process_64.c | 10 ++++++++++
arch/x86/mm/mpx.c | 28 ++++++++++++++++++----------
include/uapi/linux/prctl.h | 6 ------
kernel/sys.c | 12 ------------
6 files changed, 44 insertions(+), 32 deletions(-)
--
2.1.0
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists