• Paul Mackerras's avatar
    [PATCH] ppc64: fix single-stepping into/out of signal handlers · 44e0a901
    Paul Mackerras authored
    This is the second of 3 patches from David Woodhouse which fix various
    problems with signal handling on ppc64.
    
    The problem that this patch fixes is that a process being single-stepped
    will execute one instruction too many in certain cases: when a signal is
    delivered, when a signal handler returns, and when a system call
    instruction is single-stepped.  This patch fixes it by checking if the
    process is being single-stepped in the syscall exit path and on signal
    delivery, and stopping it if so.  To avoid slowing down the syscall exit
    path in the normal case, we use a bit in the thread_info flags, which can
    be tested along with the other bits we already test in the syscall exit
    path.
    Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    44e0a901
signal.c 15.7 KB