qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Re: [PATCH v3 14/22] kvm: Fix race between timer signals an


From: Avi Kivity
Subject: [Qemu-devel] Re: [PATCH v3 14/22] kvm: Fix race between timer signals and vcpu entry under !IOTHREAD
Date: Mon, 31 Jan 2011 18:30:12 +0200
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.13) Gecko/20101209 Fedora/3.1.7-0.35.b3pre.fc14 Lightning/1.0b3pre Thunderbird/3.1.7

On 01/31/2011 04:31 PM, Jan Kiszka wrote:
>>
>>  And how would you be kicked out of the select() call if it is waiting
>>  with a timeout? We only have a single thread here.
>
>  If we use signalfd() (either kernel provided or thread+pipe), we kick
>  out of select by select()ing it (though I don't see how it works without
>  an iothread, since an fd can't stop a vcpu unless you enable SIGIO on
>  it, which is silly for signalfd)
>
>  If you leave it as a naked signal, then it can break out of either
>  pselect() or vcpu.
>
>  Since the goal is to drop !CONFIG_IOTHREAD, the first path seems better,
>  I just don't understand the problem with emulated signalfd().
>

With the emulated signalfd, there won't be any signal for the VCPU while
in KVM_RUN.


I see it now - with a real signalfd, kvm unmasks the signal, and that takes precedence over signalfd and exits the vcpu.

--
error compiling committee.c: too many arguments to function




reply via email to

[Prev in Thread] Current Thread [Next in Thread]