Some ppc64 signal/ptrace patches.

Benjamin Herrenschmidt benh at kernel.crashing.org
Sat Nov 27 15:20:18 EST 2004


On Fri, 2004-11-26 at 14:18 +0000, David Woodhouse wrote:
> First, single-stepping into and out of signals wasn't working. We were
> sending a SIGTRAP to the debugger on the second instruction of the
> handler, not the first.
> 
> Second, the return path from sigsuspend() was stomping on the r4 and r5
> registers (the args to the signal handler) by using syscall_exit to get
> back to userspace instead of ret_from_except.
> 
> Third, signals were remaining masked when a signal handler was _NOT_
> invoked due to having a bogus altstack. We aborted the setup of the
> signal frame and forced a SIGSEGV, but we didn't put the original signal
> mask back. As discovered by Bodo Stroesser.

I haven't looked in detail yet at the patch, but have you double chcked
that restarting is still OK ? I remember the whole thing beeing quite
fragile ...

Ben.





More information about the Linuxppc64-dev mailing list