[PATCH] 3/3 Generic sys_rt_sigsuspend
dan at debian.org
Wed Nov 30 02:53:46 EST 2005
On Tue, Nov 29, 2005 at 10:42:03AM +0000, David Woodhouse wrote:
> I believe not. The previous versions would loop until do_signal()
> returned non-zero; i.e. until a signal was actually delivered.
> By returning -ERESTARTNOHAND we achieve the same effect. If there's a
> signal delivered, that gets magically converted to -EINTR, but if
> there's no signal delivered, the syscall gets restarted.
And, crazy coincidence, I think this will fix the recently reported
ptrace attach bug. Right now if you ptrace a process stuck in
sigsuspend, you can't easily force it to return to userspace.
I'll test that if these patches are merged.
More information about the Linuxppc-dev