From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:49362) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X0QhW-0004A3-PR for qemu-devel@nongnu.org; Fri, 27 Jun 2014 03:36:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1X0QhO-0008Dq-Gg for qemu-devel@nongnu.org; Fri, 27 Jun 2014 03:36:02 -0400 Received: from mx1.redhat.com ([209.132.183.28]:41286) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X0QhO-0008Di-8i for qemu-devel@nongnu.org; Fri, 27 Jun 2014 03:35:54 -0400 Message-ID: <53AD1ED3.9010302@redhat.com> Date: Fri, 27 Jun 2014 09:35:47 +0200 From: Paolo Bonzini MIME-Version: 1.0 References: <53AC3C72.6080308@redhat.com> <53AC3F8E.20808@redhat.com> <53AC42DA.2000703@redhat.com> <53ACFA2E.8080901@redhat.com> <20140627062318.GA5223@noname.redhat.com> In-Reply-To: <20140627062318.GA5223@noname.redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [regression] dataplane: throughout -40% by commit 580b6b2aa2 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Kevin Wolf Cc: Ming Lei , Fam Zheng , qemu-devel@nongnu.org, Stefan Hajnoczi , "Michael S. Tsirkin" Il 27/06/2014 08:23, Kevin Wolf ha scritto: > Note that there is already an interface in block.c that takes multiple > requests at once, bdrv_aio_multiwrite(). It is currently used by > virtio-blk, even though not in dataplane mode. It also submits > individual requests to the block drivers currently, so effectively it > doesn't make a difference, just the problem occurs in the block layer > instead of the device. > > We should either improve bdrv_aio_multiwrite() to submit the requests in > a batch to the block drivers, add a bdrv_aio_multiwrite() and use it for > dataplane as well (possibly with a flag for disabling the request merging > if we want to keep the current behaviour for dataplane); or, if we > consider it a bad interface, replace it altogether with the new thing > even for normal virtio-blk. In fact, what's the status of Fam's patches to unify request processing between dataplane and non-dataplane? They would add multiwrite support (also rerror/werror and blockstats). I was hoping that they could get in 2.1. Paolo > If this makes a difference for dataplane, it probably makes a difference > for all block devices.