From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=44741 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Pi8FV-0003CB-JD for qemu-devel@nongnu.org; Wed, 26 Jan 2011 11:29:42 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Pi8FT-0002jH-Ka for qemu-devel@nongnu.org; Wed, 26 Jan 2011 11:29:37 -0500 Received: from e32.co.us.ibm.com ([32.97.110.150]:39414) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Pi8FT-0002i0-91 for qemu-devel@nongnu.org; Wed, 26 Jan 2011 11:29:35 -0500 Received: from d03relay03.boulder.ibm.com (d03relay03.boulder.ibm.com [9.17.195.228]) by e32.co.us.ibm.com (8.14.4/8.13.1) with ESMTP id p0QGJRV4004692 for ; Wed, 26 Jan 2011 09:19:27 -0700 Received: from d03av02.boulder.ibm.com (d03av02.boulder.ibm.com [9.17.195.168]) by d03relay03.boulder.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id p0QGTXWf106604 for ; Wed, 26 Jan 2011 09:29:33 -0700 Received: from d03av02.boulder.ibm.com (loopback [127.0.0.1]) by d03av02.boulder.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id p0QGTXXd003138 for ; Wed, 26 Jan 2011 09:29:33 -0700 Message-ID: <4D404BEB.50508@linux.vnet.ibm.com> Date: Wed, 26 Jan 2011 10:29:31 -0600 From: Anthony Liguori MIME-Version: 1.0 Subject: Re: [Qemu-devel] [RFC][PATCH 01/12] coroutine: Add gtk-vnc coroutines library References: <1295688567-25496-1-git-send-email-stefanha@linux.vnet.ibm.com> <1295688567-25496-2-git-send-email-stefanha@linux.vnet.ibm.com> <4D403CF3.8080102@redhat.com> <4D40450B.3070705@linux.vnet.ibm.com> <4D404846.3050400@redhat.com> <4D40499D.5010805@codemonkey.ws> <4D404A2E.9010508@redhat.com> In-Reply-To: <4D404A2E.9010508@redhat.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: Avi Kivity Cc: Kevin Wolf , Anthony Liguori , Stefan Hajnoczi , qemu-devel@nongnu.org On 01/26/2011 10:22 AM, Avi Kivity wrote: > On 01/26/2011 06:19 PM, Anthony Liguori wrote: >>> What do you mean by threaded version? >> >> >> Stefan didn't post it, but the original code also has a GThread based >> implementation when ucontext isn't available (like on Windows). It >> uses a mutex to control the execution of the coroutines. > > Ah ok. These can all be hidden under a single API. It is, that's the point of the coroutine abstraction :-) > btw, I think Windows does provide support for user-level threads under > the name Fibers. Yes, I never got around to implementing it though. There was something odd about them that I thought would be difficult to use but I can't remember the details. Regards, Anthony Liguori