lkml.org 
[lkml]   [2018]   [Feb]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[tip:x86/pti] x86/speculation: Fix up array_index_nospec_mask() asm constraint
    Commit-ID:  87360f969eb214fb22b7e03acb2475a809e040c5
    Gitweb: https://git.kernel.org/tip/87360f969eb214fb22b7e03acb2475a809e040c5
    Author: Dan Williams <dan.j.williams@intel.com>
    AuthorDate: Tue, 6 Feb 2018 18:22:40 -0800
    Committer: Ingo Molnar <mingo@kernel.org>
    CommitDate: Tue, 13 Feb 2018 14:01:25 +0100

    x86/speculation: Fix up array_index_nospec_mask() asm constraint

    Allow the compiler to handle @size as an immediate value or memory
    directly rather than allocating a register.

    Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Dan Williams <dan.j.williams@intel.com>
    Cc: Andy Lutomirski <luto@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Link: http://lkml.kernel.org/r/151797010204.1289.1510000292250184993.stgit@dwillia2-desk3.amr.corp.intel.com
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    ---
    arch/x86/include/asm/barrier.h | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/arch/x86/include/asm/barrier.h b/arch/x86/include/asm/barrier.h
    index 30d4061..e1259f0 100644
    --- a/arch/x86/include/asm/barrier.h
    +++ b/arch/x86/include/asm/barrier.h
    @@ -40,7 +40,7 @@ static inline unsigned long array_index_mask_nospec(unsigned long index,

    asm ("cmp %1,%2; sbb %0,%0;"
    :"=r" (mask)
    - :"r"(size),"r" (index)
    + :"g"(size),"r" (index)
    :"cc");
    return mask;
    }
    \
     
     \ /
      Last update: 2018-02-13 14:07    [W:2.499 / U:0.164 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site