On 06/09/2011 01:10 PM, Paolo Bonzini wrote:
These are two old patches that I never submitted because I didn't really
think they were useful except as cleanups. Recently, however, Alex Graf
mentioned some problems that Mac OS X has with iothread, and they sounded
to me like they were related to these patches. And quite surprisingly,
both of them were fixing bugs!
Mac OS X still has problems with iothread according to Alex's testing
(Linux times out in libata, and reactos likewise hangs early on I/O),
but at least the patches fix deadlocks and keep a responsive UI.
Paolo Bonzini (2):
iothread: replace fair_mutex with a condition variable
qemu-timer: change unix timer to dynticks
cpus.c | 24 +++++++++---------------
qemu-timer.c | 40 ++++++++++++++++++++++++++++------------
2 files changed, 37 insertions(+), 27 deletions(-)
Ping? 1/2 is probably somehow working around the sigmask problem fixed
by Alexandre (Mac people, can you check?), but it is way more readable
than the fair_mutex IMNSHO. I would be surprised if 2/2 also turned out
to be a workaround, but even if this were the case, it makes CPU usage
lower.
Paolo