mozilla/rr — pull request #723 by cgjones (2014-02-21 03:14:53+00:00)
Title: Buffer poll() syscalls.

This otherwise innocuous patch exposed a bug in restart-syscall
handling, and in fact it's been working by accident until now. The
kernel restarts syscalls differently. -ERESTART_RESTARTBLOCK and
ptrace-declined-signals apparently don't change the $ip, so the tracee
stays at the syscall instruction. The others apparently move the $ip
back to before the syscall, so the tracee has to advance to re-enter
the syscall instruction. rr simply checks the $ip to see if re-entry
is needed.

Resolves #228.