qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] Re: [PATCH 2/7] Enable I/O thread and VNC threads by de


From: Aurelien Jarno
Subject: Re: [Qemu-devel] Re: [PATCH 2/7] Enable I/O thread and VNC threads by default
Date: Tue, 08 Feb 2011 12:15:46 +0100
User-agent: Mozilla-Thunderbird 2.0.0.24 (X11/20100329)

Anthony Liguori a écrit :
> On 02/08/2011 04:06 AM, Aurelien Jarno wrote:
>> Yes, it's slow. But is it a problem? You assume that people use QEMU
>> only for emulating SMP platforms. This is a wrong assumption. Beside the
>> x86 target, only sparc really supports SMP emulation.
>>    
> 
> It's *not* just about performance.
> 
> TCG requires a signal to break out of a tight chained TB loop.  If you 
> have a guest in a tight loop waiting for something external (like 
> polling on a in-memory flag), the device emulation will not get to run 
> until a signal is fired.
> 
> Unless you set SIGIO on every file descriptor that selects polls on (and 
> you can't because there are a number that just don't support SIGIO), 
> then you have a race condition.
> 

In practice you will get a signal when the next timer event expire. I
agree it's suboptimal, but it works, and has been like that for here.

Having that fixed through an I/O thread is actually quite nice, however
it should not be done ignoring all the *current* drawbacks of the
iothread mode. We know them (at least for some of them), so let's try to
solve them.

And now, I don't buy the argument "it's been there for years", it was
*disabled* by default.

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
address@hidden                 http://www.aurel32.net



reply via email to

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