From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:39853) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qbq3g-0005BW-6B for qemu-devel@nongnu.org; Wed, 29 Jun 2011 04:23:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Qbq3e-0005SO-8o for qemu-devel@nongnu.org; Wed, 29 Jun 2011 04:23:39 -0400 Received: from mx1.redhat.com ([209.132.183.28]:32170) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qbq3d-0005SK-NL for qemu-devel@nongnu.org; Wed, 29 Jun 2011 04:23:38 -0400 Message-ID: <4E0AE0FE.2090905@redhat.com> Date: Wed, 29 Jun 2011 10:23:26 +0200 From: Paolo Bonzini MIME-Version: 1.0 References: <4DEE2B15.4090809@redhat.com> <4DF21447.6090005@suse.de> <20110612075140.GB11941@redhat.com> In-Reply-To: <20110612075140.GB11941@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] virtio scsi host draft specification, v3 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Michael S. Tsirkin" Cc: Christoph Hellwig , Stefan Hajnoczi , "kvm@vger.kernel.org" , Rusty Russell , qemu-devel , Linux Kernel Mailing List , Hannes Reinecke , Linux Virtualization On 06/12/2011 09:51 AM, Michael S. Tsirkin wrote: >> > >> > If a device uses more than one queue it is the responsibility of the >> > device to ensure strict request ordering. > Maybe I misunderstand - how can this be the responsibility of > the device if the device does not get the information about > the original ordering of the requests? > > For example, if the driver is crazy enough to put > all write requests on one queue and all barriers > on another one, how is the device supposed to ensure > ordering? I agree here, in fact I misread Hannes's comment as "if a driver uses more than one queue it is responsibility of the driver to ensure strict request ordering". If you send requests to different queues, you know that those requests are independent. I don't think anything else is feasible in the virtio framework. Paolo