[PATCH] Allow system call restarts upon signal interruption

Adam Jackson ajax at nwnk.net
Wed May 13 09:04:41 PDT 2015


On Wed, 2015-05-13 at 08:32 +0200, Mark Kettenis wrote:

> Doesn't the "smart" scheduler rely on the interrupt behviour as well?

The scare quotes aren't necessary, the smart scheduler really is
materially better than the alternative.  Try cairo-demo's multi.sh of,
say, fish-demo for a nice illustration of the difference.

But also, no not really.  The timer is only active while we're
actually processing requests, and all the handler does is increment a
tick counter that we check the next time through the dispatch loop. 
 None of that cares about syscall restarts for correctness.  The
server in general doesn't do restartable request processing, so even
if syscalls did throw EINTR we're not using that as a cue to pause the
current client.

- ajax


More information about the xorg-devel mailing list