lkml.org 
[lkml]   [2015]   [May]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Subject[PATCH 00/19] x86, mpx updates for 4.2 (take 8)
    From
    Date

    Changes from take 7 / v22:
    * Add Thomas's reviewed-by
    * merge with tip/x86/fpu changes
    * Fix tiny spelling nit

    Changes from take 6 / v21:
    * Address a bunch of Thomas's review comments.

    Changes from take 5 / v20:

    * Fix get_xsave_addr() to consult xstate_bv in anticipation
    of fixes to xsave code.
    * Bug fix for when an VMA being unmapped has neighbors which
    are bounds tables.
    * Rewrite unmapping code. I didn't do this lightly. It was
    not originally my own code, and I resisted changing it
    because it worked. But, I started bug chasing and decided
    it was unmaintainable. The rewrite ended up removing
    about 20% of the unmapping code and made it much simpler.

    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 a few 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. Rewrite the unmapping code.
    5. Support 32-bit binaries to run on 64-bit kernels

    This set is also available against tip/x86/fpu (8c05f05edb) in git:

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

    Dave Hansen (19):
    x86, mpx, xsave: Fix up bad get_xsave_addr() assumptions
    x86, fpu: Wrap get_xsave_addr() to make it safer
    x86, mpx: Use new get_xsave_field_ptr()
    x86, mpx: Cleanup: Do not pass task around when unnecessary
    x86, mpx: remove redundant MPX_BNDCFG_ADDR_MASK
    x86, mpx: Restrict mmap size check to bounds tables
    x86, mpx: boot-time disable
    x86, mpx: trace #BR exceptions
    x86, mpx: trace entry to bounds exception paths
    x86, mpx: Trace the attempts to find bounds tables
    x86, mpx: trace allocation of new bounds tables
    x86: make is_64bit_mm() widely available
    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: rewrite unmap code
    x86, mpx: do not count MPX VMAs as neighbors when unmapping
    x86, mpx: allow mixed binaries again

    Documentation/kernel-parameters.txt | 4 +
    arch/x86/include/asm/fpu/xstate.h | 1 +
    arch/x86/include/asm/mmu_context.h | 13 +
    arch/x86/include/asm/mpx.h | 74 +++---
    arch/x86/include/asm/processor.h | 12 +-
    arch/x86/include/asm/trace/mpx.h | 131 ++++++++++
    arch/x86/kernel/cpu/common.c | 16 ++
    arch/x86/kernel/fpu/xstate.c | 78 +++++-
    arch/x86/kernel/traps.c | 18 +-
    arch/x86/kernel/uprobes.c | 10 +-
    arch/x86/mm/mpx.c | 508 ++++++++++++++++++++++--------------
    kernel/sys.c | 8 +-
    12 files changed, 606 insertions(+), 267 deletions(-)
    create mode 100644 arch/x86/include/asm/trace/mpx.h



    \
     
     \ /
      Last update: 2015-05-30 01:21    [W:6.904 / U:0.028 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site