All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/17] x86, mpx updates for 4.2 (take 5)
@ 2015-04-22 18:27 Dave Hansen
  2015-04-22 18:27 ` [PATCH 01/17] x86, fpu: wrap get_xsave_addr() to make it safer Dave Hansen
                   ` (16 more replies)
  0 siblings, 17 replies; 24+ messages in thread
From: Dave Hansen @ 2015-04-22 18:27 UTC (permalink / raw)
  To: linux-kernel; +Cc: x86, tglx, Dave Hansen

Changes from take 4 / v19:

 * Do not pass a task_struct around when we are
   really just going to operate on current

Changes from take 3 / v18 (all minor):

 * use DECLARE_EVENT_CLASS()/DEFINE_EVENT() for
   the ranged tracepoints to save 10 lines of code.

Changes from take 2 / v17 (all minor):

 * fix a couple of whitespace borkages caught by checkpatch,
   and a spelling error or two.
 * replace printk with pr_info() for boot disable
 * change trace print format for address intervals
 * fix up variable name in tsk_get_xsave_addr() comment
 * remove tsk_get_xsave_field() GPL export
 * fix up Qiaowei's From:

--

Hi x86 maintainers,

There are 4 basic things going on here:
1. Make FPU/xsave code preempt safe and work properly
2. Add trace points to make kernel and app debugging easier
3. Add a boot-time disable for mpx
4. Support 32-bit binaries to run on 64-bit kernels

I've hesitated sending this in the past few weeks as
the FPU code had a lot of churn and affected our
ability to test on current kernels.  It seems to have
settled down and appears more stable now.

As mentioned in the tsk_get_xsave_addr() patches, this must
be applied after Oleg's fixes which currently ends with:

	commit 7fc253e27 ("x86/fpu: Kill eager_fpu_init_bp()")

This also sees breakage unless either booted with 'noxsaves'
or if it has Fenghua's set from here applied:

	http://lkml.kernel.org/r/1429678319-61356-1-git-send-email-fenghua.yu@intel.com

This set is also available against 4.0-rc4 in git:

  git://git.kernel.org/pub/scm/linux/kernel/git/daveh/x86-mpx.git mpx-v20

Dave Hansen (17):
  x86, fpu: wrap get_xsave_addr() to make it safer
  x86, mpx: use new tsk_get_xsave_addr()
  x86, mpx: trace #BR exceptions
  x86, mpx: trace entry to bounds exception paths
  x86, mpx: trace ranged MPX operations
  x86, mpx: trace allocation of new bounds tables
  x86, mpx: boot-time disable
  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 32-bit binaries on 64-bit kernel
  x86, mpx: allow mixed binaries again
  x86, mpx: cleanup: do not pass task around when unnecessary

 Documentation/kernel-parameters.txt |   4 +
 arch/x86/include/asm/mmu_context.h  |  13 ++
 arch/x86/include/asm/mpx.h          |  76 +++++-----
 arch/x86/include/asm/page_types.h   |   8 +
 arch/x86/include/asm/processor.h    |  12 +-
 arch/x86/include/asm/trace/mpx.h    | 121 +++++++++++++++
 arch/x86/include/asm/xsave.h        |   1 +
 arch/x86/kernel/cpu/common.c        |  16 ++
 arch/x86/kernel/traps.c             |  13 +-
 arch/x86/kernel/uprobes.c           |  10 +-
 arch/x86/kernel/xsave.c             |  32 ++++
 arch/x86/mm/mpx.c                   | 283 ++++++++++++++++++++++++++++--------
 kernel/sys.c                        |   8 +-
 13 files changed, 473 insertions(+), 124 deletions(-)
 create mode 100644 arch/x86/include/asm/trace/mpx.h


^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2015-05-08 17:42 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-04-22 18:27 [PATCH 00/17] x86, mpx updates for 4.2 (take 5) Dave Hansen
2015-04-22 18:27 ` [PATCH 01/17] x86, fpu: wrap get_xsave_addr() to make it safer Dave Hansen
2015-04-25  9:31   ` Borislav Petkov
2015-05-05 17:27     ` Borislav Petkov
2015-05-08 17:42       ` Dave Hansen
2015-04-22 18:27 ` [PATCH 02/17] x86, mpx: use new tsk_get_xsave_addr() Dave Hansen
2015-04-22 19:18   ` Yu, Fenghua
2015-04-22 19:32     ` Dave Hansen
2015-04-22 21:21       ` Yu, Fenghua
2015-04-22 18:27 ` [PATCH 03/17] x86, mpx: trace #BR exceptions Dave Hansen
2015-04-22 18:27 ` [PATCH 04/17] x86, mpx: trace entry to bounds exception paths Dave Hansen
2015-04-22 18:27 ` [PATCH 05/17] x86, mpx: trace ranged MPX operations Dave Hansen
2015-04-22 18:27 ` [PATCH 06/17] x86, mpx: trace allocation of new bounds tables Dave Hansen
2015-04-22 18:27 ` [PATCH 07/17] x86, mpx: boot-time disable Dave Hansen
2015-04-22 18:27 ` [PATCH 08/17] x86: make is_64bit_mm() widely available Dave Hansen
2015-04-22 18:27 ` [PATCH 09/17] x86: make __VIRTUAL_MASK safe to use on 32 bit Dave Hansen
2015-04-22 18:27 ` [PATCH 10/17] x86, mpx: we do not allocate the bounds directory Dave Hansen
2015-04-22 18:27 ` [PATCH 11/17] x86, mpx: remove redundant MPX_BNDCFG_ADDR_MASK Dave Hansen
2015-04-22 18:27 ` [PATCH 12/17] x86, mpx: Add temporary variable to reduce masking Dave Hansen
2015-04-22 18:27 ` [PATCH 13/17] x86, mpx: new directory entry to addr helper Dave Hansen
2015-04-22 18:27 ` [PATCH 14/17] x86, mpx: do 32-bit-only cmpxchg for 32-bit apps Dave Hansen
2015-04-22 18:27 ` [PATCH 15/17] x86, mpx: support 32-bit binaries on 64-bit kernel Dave Hansen
2015-04-22 18:27 ` [PATCH 16/17] x86, mpx: allow mixed binaries again Dave Hansen
2015-04-22 18:27 ` [PATCH 17/17] x86, mpx: cleanup: do not pass task around when unnecessary Dave Hansen

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.