lkml.org 
[lkml]   [2020]   [May]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.14 030/114] x86/entry/64: Fix unwind hints in rewind_stack_do_exit()
    Date
    From: Jann Horn <jannh@google.com>

    commit f977df7b7ca45a4ac4b66d30a8931d0434c394b1 upstream.

    The LEAQ instruction in rewind_stack_do_exit() moves the stack pointer
    directly below the pt_regs at the top of the task stack before calling
    do_exit(). Tell the unwinder to expect pt_regs.

    Fixes: 8c1f75587a18 ("x86/entry/64: Add unwind hint annotations")
    Reviewed-by: Miroslav Benes <mbenes@suse.cz>
    Signed-off-by: Jann Horn <jannh@google.com>
    Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    Cc: Andy Lutomirski <luto@kernel.org>
    Cc: Dave Jones <dsj@fb.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Vince Weaver <vincent.weaver@maine.edu>
    Link: https://lore.kernel.org/r/68c33e17ae5963854916a46f522624f8e1d264f2.1587808742.git.jpoimboe@redhat.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    arch/x86/entry/entry_64.S | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    --- a/arch/x86/entry/entry_64.S
    +++ b/arch/x86/entry/entry_64.S
    @@ -1649,7 +1649,7 @@ ENTRY(rewind_stack_do_exit)

    movq PER_CPU_VAR(cpu_current_top_of_stack), %rax
    leaq -PTREGS_SIZE(%rax), %rsp
    - UNWIND_HINT_FUNC sp_offset=PTREGS_SIZE
    + UNWIND_HINT_REGS

    call do_exit
    END(rewind_stack_do_exit)

    \
     
     \ /
      Last update: 2020-05-18 19:46    [W:3.196 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site