From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:46000) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QmPlU-00081Q-I4 for qemu-devel@nongnu.org; Thu, 28 Jul 2011 08:32:37 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QmPlT-0008HK-Hx for qemu-devel@nongnu.org; Thu, 28 Jul 2011 08:32:36 -0400 Received: from mx1.redhat.com ([209.132.183.28]:59686) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QmPlT-0008H3-9H for qemu-devel@nongnu.org; Thu, 28 Jul 2011 08:32:35 -0400 Message-ID: <4E31578E.2080704@redhat.com> Date: Thu, 28 Jul 2011 14:35:26 +0200 From: Kevin Wolf MIME-Version: 1.0 References: <20110728120931.GB17045@lst.de> In-Reply-To: <20110728120931.GB17045@lst.de> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] Block layer roadmap List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Christoph Hellwig Cc: devin122@gmail.com, Stefan Hajnoczi , Jagane Sundar , Dor Laor , qemu-devel , Markus Armbruster , Feiran Zheng , Frediano Ziglio , Jes Sorensen , Paolo Bonzini Am 28.07.2011 14:09, schrieb Christoph Hellwig: > On Wed, Jul 27, 2011 at 01:37:31PM +0100, Stefan Hajnoczi wrote: >> Coroutines in the block layer [Kevin] >> * Programming model to simplify block drivers without blocking QEMU threads > > Can anyone explain what the whole point of this is? It really just is > a bit of syntactic sugar for the current async state machines. What does > it buy us over going for real threading? The only current block driver that really does everything in an async state machine is qed. It's definitely not nice code, and having to convert all of the other block drivers to this would be a lot of work. So if it only means that we're making things async that would block the VCPU until now, isn't that a great improvement already? The advantage compared to threading is that it allows an easy and incremental transition. Kevin