• Max Filippov's avatar
    xtensa: fix kernel register spilling · 77d6273e
    Max Filippov authored
    call12 can't be safely used as the first call in the inline function,
    because the compiler does not extend the stack frame of the bounding
    function accordingly, which may result in corruption of local variables.
    
    If a call needs to be done, do call8 first followed by call12.
    
    For pure assembly code in _switch_to increase stack frame size of the
    bounding function.
    
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarMax Filippov <jcmvbkbc@gmail.com>
    77d6273e
entry.S 44.2 KB