Anthony Liguori writes ("[PATCH][RFC] Use signalfd() to work around signal/select
race"):
Here's my patch to work around the signal/select race. I think it cleans up
the code quite nicely. While signalfd() is Linux-bias, I think it's a nice
interface and the emulation isn't too bad.
I've only lightly tested. I'm looking to see what people's reaction would be
to this.
For the avoidance of any doubt, following my criticisms of Anthony's
approach: I think it's essential that we have at least one of
Anthony's or my fixes to this problem.
Obviously I prefer my patch because I wrote it, but other people might
prefer it because it's textually much smaller, closer to the existing
code, and doesn't use threads.
Also, my patch has been pretty thoroughly tested, including some
performance stress testing, as part of the Xen 3.3.0 release.