|
From: | Paolo Bonzini |
Subject: | [Qemu-devel] Re: [PATCH 08/10] MCE: Relay UCR MCE to guest |
Date: | Thu, 21 Oct 2010 09:41:35 +0200 |
User-agent: | Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.9) Gecko/20100907 Fedora/3.1.3-1.fc13 Lightning/1.0b3pre Mnenhy/0.8.3 Thunderbird/3.1.3 |
On 10/21/2010 12:03 AM, Anthony Liguori wrote:
The timeout of qemu_kvm_eat_signal is always zero.So then qemu_kvm_eat_signal purely polls and it will happily keep polling as long as there is a signal pending. So what's the point of doing a sigtimedwait() and dropping qemu_mutex?
I agree that keeping the qemu_mutex makes sense if you remove the timeout argument (which I even have a patch for, as part of my Win32 iothread series). Until there is the theoretical possibility of suspending the process, qemu_kvm_eat_signal should drop the mutex.
Why not just check sigpending in a loop?
Because sigtimedwait eats the signal, unlike sigpending (and sigsuspend).
[Prev in Thread] | Current Thread | [Next in Thread] |