• Guo Ren's avatar
    csky: Add support for restartable sequence · 9866d141
    Guo Ren authored
    Copied and adapted from vincent's patch, but modified for csky.
    
    ref:
    https://lore.kernel.org/linux-riscv/1572919114-3886-3-git-send-email-vincent.chen@sifive.com/raw
    
    Add calls to rseq_signal_deliver(), rseq_handle_notify_resume() and
    rseq_syscall() to introduce RSEQ support.
    
    1. Call the rseq_handle_notify_resume() function on return to userspace
       if TIF_NOTIFY_RESUME thread flag is set.
    
    2. Call the rseq_signal_deliver() function to fixup on the pre-signal
       frame when a signal is delivered on top of a restartable sequence
       critical section.
    
    3. Check that system calls are not invoked from within rseq critical
       sections by invoking rseq_signal() from ret_from_syscall(). With
       CONFIG_DEBUG_RSEQ, such behavior results in termination of the
       process with SIGSEGV.
    Signed-off-by: default avatarGuo Ren <guoren@linux.alibaba.com>
    9866d141
Kconfig 5.79 KB