• Vasily Gorbik's avatar
    s390: correct CALL_ON_STACK back_chain saving · 75794257
    Vasily Gorbik authored
    Currently CALL_ON_STACK saves r15 as back_chain in the first stack frame of
    the stack we about to switch to. But if a function which uses CALL_ON_STACK
    calls other function it allocates a stack frame for a callee. In this
    case r15 is pointing to a callee stack frame and not a stack frame of
    function itself. This results in dummy unwinding entry with random
    sp and ip values.
    
    Introduce and utilize current_frame_address macro to get an address of
    actual function stack frame.
    Reviewed-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
    Signed-off-by: default avatarVasily Gorbik <gor@linux.ibm.com>
    75794257
stacktrace.h 3.61 KB