• Linus Torvalds's avatar
    x86: fix stackframe ownership confusion in sys_sigaltstack() · 1c400de9
    Linus Torvalds authored
    gcc doesn't understand that "asmlinkage" routines have the
    argument stack owned by the assembly-language caller, and the
    recent sparse cleanup made gcc think it owns enough stack
    frame space to make a tailcall by overwriting "struct pt_regs"
    that is set up by the low-level system call code.
    
    Hide that problem again.
    
    The real fix would be to tell gcc that the caller owns the
    stack frame that it set up, but we don't have any such
    interfaces, so for now the best we can do is to hide it.
    1c400de9
signal.c 15.9 KB