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: Anthony Liguori
Subject: Re: [Qemu-devel] Re: [PATCH 2/7] Enable I/O thread and VNC threads by default
Date: Mon, 07 Feb 2011 15:02:03 -0600
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.15) Gecko/20101027 Lightning/1.0b1 Thunderbird/3.0.10

On 02/07/2011 11:10 AM, Jan Kiszka wrote:
On 2011-02-07 17:23, Paolo Bonzini wrote:
On 02/07/2011 05:03 PM, Marcelo Tosatti wrote:
Is there any other issue that prevents turning CONFIG_IOTHREAD on by
default?
I think Windows support.

Signal support is actually easy because we can "hack" the IPI as
"suspend the VCPU thread+do work in the iothread context+resume the VCPU
thread" (the IPI handler doesn't longjmp).

Threading primitives support is tricky but not hard (there is lots of
code around, especially if you can make assumptions such as "always hold
the mutex while signaling a cond. variable").
!CONFIG_IOTHREAD code is doomed to bitrot once we switch to default
iothread mode. So if Windows support is not converted to a threading
model with moderate differences to POSIX, it will likely bitrot a well.
Therefore, conversion should be started rather sooner than later (by
someone interested in that platform).

As far as I'm concerned, Windows support is already deprecated as noone has stepped up to enhance it or support for a number of years now. We shouldn't remove existing code that supports it or refuse to take reasonable patches but if enabling IO thread by default breaks it, so be it.

Regards,

Anthony Liguori

Jan





reply via email to

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