lkml.org 
[lkml]   [2019]   [May]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 4.14 052/167] x86/mm: Remove in_nmi() warning from 64-bit implementation of vmalloc_fault()
    Date
    From: Jiri Kosina <jkosina@suse.cz>

    [ Upstream commit a65c88e16f32aa9ef2e8caa68ea5c29bd5eb0ff0 ]

    In-NMI warnings have been added to vmalloc_fault() via:

    ebc8827f75 ("x86: Barf when vmalloc and kmemcheck faults happen in NMI")

    back in the time when our NMI entry code could not cope with nested NMIs.

    These days, it's perfectly fine to take a fault in NMI context and we
    don't have to care about the fact that IRET from the fault handler might
    cause NMI nesting.

    This warning has already been removed from 32-bit implementation of
    vmalloc_fault() in:

    6863ea0cda8 ("x86/mm: Remove in_nmi() warning from vmalloc_fault()")

    but the 64-bit version was omitted.

    Remove the bogus warning also from 64-bit implementation of vmalloc_fault().

    Reported-by: Nicolai Stange <nstange@suse.de>
    Signed-off-by: Jiri Kosina <jkosina@suse.cz>
    Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
    Cc: Andy Lutomirski <luto@kernel.org>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Dave Hansen <dave.hansen@linux.intel.com>
    Cc: Frederic Weisbecker <fweisbec@gmail.com>
    Cc: Joerg Roedel <jroedel@suse.de>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Fixes: 6863ea0cda8 ("x86/mm: Remove in_nmi() warning from vmalloc_fault()")
    Link: http://lkml.kernel.org/r/nycvar.YFH.7.76.1904240902280.9803@cbobk.fhfr.pm
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    arch/x86/mm/fault.c | 2 --
    1 file changed, 2 deletions(-)

    diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c
    index 794c35c4ca736..b162f92fd55cf 100644
    --- a/arch/x86/mm/fault.c
    +++ b/arch/x86/mm/fault.c
    @@ -426,8 +426,6 @@ static noinline int vmalloc_fault(unsigned long address)
    if (!(address >= VMALLOC_START && address < VMALLOC_END))
    return -1;

    - WARN_ON_ONCE(in_nmi());
    -
    /*
    * Copy kernel mappings over when needed. This can also
    * happen within a race in page table update. In the later
    --
    2.20.1
    \
     
     \ /
      Last update: 2019-05-22 21:38    [W:4.032 / U:0.072 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site