lkml.org 
[lkml]   [2017]   [Sep]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[tip:x86/fpu] x86/fpu: Turn WARN_ON() in context switch into WARN_ON_FPU()
    Commit-ID:  03eaec81ac09814817e9f0307d572ffe8365f980
    Gitweb: http://git.kernel.org/tip/03eaec81ac09814817e9f0307d572ffe8365f980
    Author: Andi Kleen <ak@linux.intel.com>
    AuthorDate: Sat, 23 Sep 2017 15:00:06 +0200
    Committer: Ingo Molnar <mingo@kernel.org>
    CommitDate: Sun, 24 Sep 2017 13:04:35 +0200

    x86/fpu: Turn WARN_ON() in context switch into WARN_ON_FPU()

    copy_xregs_to_kernel checks if the alternatives have been already
    patched.

    This WARN_ON() is always executed in every context switch.

    All the other checks in fpu internal.h are WARN_ON_FPU(), but
    this one is plain WARN_ON(). I assume it was forgotten to switch it.

    So switch it to WARN_ON_FPU() too to avoid some unnecessary code
    in the context switch, and a potentially expensive cache line miss for the
    global variable.

    Signed-off-by: Andi Kleen <ak@linux.intel.com>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: Andy Lutomirski <luto@amacapital.net>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Dave Hansen <dave.hansen@linux.intel.com>
    Cc: Eric Biggers <ebiggers3@gmail.com>
    Cc: Fenghua Yu <fenghua.yu@intel.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Oleg Nesterov <oleg@redhat.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Rik van Riel <riel@redhat.com>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Yu-cheng Yu <yu-cheng.yu@intel.com>
    Link: http://lkml.kernel.org/r/20170329062605.4970-1-andi@firstfloor.org
    Link: http://lkml.kernel.org/r/20170923130016.21448-24-mingo@kernel.org
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    ---
    arch/x86/include/asm/fpu/internal.h | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/arch/x86/include/asm/fpu/internal.h b/arch/x86/include/asm/fpu/internal.h
    index 629e7abc..2dca7c6 100644
    --- a/arch/x86/include/asm/fpu/internal.h
    +++ b/arch/x86/include/asm/fpu/internal.h
    @@ -350,7 +350,7 @@ static inline void copy_xregs_to_kernel(struct xregs_state *xstate)
    u32 hmask = mask >> 32;
    int err;

    - WARN_ON(!alternatives_patched);
    + WARN_ON_FPU(!alternatives_patched);

    XSTATE_XSAVE(xstate, lmask, hmask, err);

    \
     
     \ /
      Last update: 2017-09-26 10:38    [W:4.245 / U:0.452 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site