From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50983) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WIIGt-00019Y-LT for qemu-devel@nongnu.org; Tue, 25 Feb 2014 08:42:13 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WIIGn-0006OY-MB for qemu-devel@nongnu.org; Tue, 25 Feb 2014 08:42:07 -0500 Received: from mx1.redhat.com ([209.132.183.28]:56570) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WIIGn-0006NH-DN for qemu-devel@nongnu.org; Tue, 25 Feb 2014 08:42:01 -0500 Date: Tue, 25 Feb 2014 14:41:57 +0100 From: Kevin Wolf Message-ID: <20140225134157.GE3339@dhcp-200-207.str.redhat.com> References: <1393074022-32388-1-git-send-email-pl@kamp.de> <20140224101152.GE3775@dhcp-200-207.str.redhat.com> <530B1E3D.8050204@kamp.de> <530B2143.1030808@redhat.com> <530B42B2.1040909@kamp.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <530B42B2.1040909@kamp.de> Subject: Re: [Qemu-devel] [RFC PATCH] block: optimize zero writes with bdrv_write_zeroes List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Lieven Cc: Paolo Bonzini , qemu-devel@nongnu.org, stefanha@redhat.com, mreitz@redhat.com Am 24.02.2014 um 14:01 hat Peter Lieven geschrieben: > On 24.02.2014 11:38, Paolo Bonzini wrote: > >Il 24/02/2014 11:26, Peter Lieven ha scritto: > >> > >>I personally do not need this for QCOW2 but for iSCSI. Here the optimization > >>is basically saved bandwidth since a zero write becomes a WRITESAME. > > > >It saves bandwidth, but at the potential cost of extra host CPU > >utilization. I would be fine with having this automatically, but > >drv->bdrv_co_write_zeroes is not the right check because it is > >true for qcow2 and raw formats. Something using bdrv_get_info is > >probably better, because it would have fewer or no false > >positives. > > > >>In all cases if unmap=on it would additionally save disk space. > > > >It would also cause worse performance though. I think the automatic addition BDRV_REQ_MAY_UNMAP is what should be a separate option. Perhaps you can have a three-state option, detect-zeros=no/yes/unmap. > > What would be the desired way to store this flag in the BlockDriverState? Some new enum field? Kevin