From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=38091 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PmYFC-0007h3-HI for qemu-devel@nongnu.org; Mon, 07 Feb 2011 16:03:35 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PmYDw-0002sK-Gx for qemu-devel@nongnu.org; Mon, 07 Feb 2011 16:02:17 -0500 Received: from mail-wy0-f173.google.com ([74.125.82.173]:44641) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PmYDw-0002qM-BB for qemu-devel@nongnu.org; Mon, 07 Feb 2011 16:02:16 -0500 Received: by wyg36 with SMTP id 36so5236248wyg.4 for ; Mon, 07 Feb 2011 13:02:15 -0800 (PST) Message-ID: <4D505DCB.9050406@codemonkey.ws> Date: Mon, 07 Feb 2011 15:02:03 -0600 From: Anthony Liguori MIME-Version: 1.0 Subject: Re: [Qemu-devel] Re: [PATCH 2/7] Enable I/O thread and VNC threads by default References: <1295902845-29807-1-git-send-email-aliguori@us.ibm.com> <1295902845-29807-3-git-send-email-aliguori@us.ibm.com> <4D3DFD20.8060004@linux.vnet.ibm.com> <20110125091741.GB30239@edde.se.axis.com> <20110125133453.GC5427@amt.cnet> <20110207101255.GA20413@amt.cnet> <20110207160350.GA26332@amt.cnet> <4D501C71.7090708@redhat.com> <4D50279B.5010102@siemens.com> In-Reply-To: <4D50279B.5010102@siemens.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Jan Kiszka Cc: Anthony Liguori , Stefan Hajnoczi , Marcelo Tosatti , qemu-devel@nongnu.org, Anthony Liguori , Paul Brook , "Edgar E. Iglesias" , Paolo Bonzini , Arun Bharadwaj 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 > >