 Messages in this thread  On Sat, 15 Nov 2003, Paul Mackerras
wrote: > (Having interrupts disabled during do_signal is
interesting, given > that its subroutines call __put_user and
friends. :)  Actually, look closer. We don't do that.   > Thus I
think the race was possibly a little wider on PPC than on x86: >
we didn't have to get back to userspace, the interrupt could
happen > during do_signal.  No. If it happens during do_signal()
(on x86 or ppc), we'd just not _handle_ the signal at all. We'd
return to user space, restart the system call, and handle the
signal as the restarted system call is returning. No  In short,
even on ppc, the window _literally_ is "after we've returned,
but before we restart".  > Now you have me scared, because I
can't see where the restart_syscall > system call resets
current_thread_info()->restart_block.fn to >
do_no_restart_syscall.  It doesn't.  The rule is: the
restart_block is _only_ meaningful if you return
-ERESTART_BLOCK. So at any other time it contains stale data.  >
Am I