From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48584) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UnP9y-0007VT-MU for qemu-devel@nongnu.org; Fri, 14 Jun 2013 04:15:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UnP9v-0002sS-5Z for qemu-devel@nongnu.org; Fri, 14 Jun 2013 04:15:02 -0400 Received: from mx1.redhat.com ([209.132.183.28]:15634) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UnP9u-0002sL-TH for qemu-devel@nongnu.org; Fri, 14 Jun 2013 04:14:59 -0400 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r5E8EwK2018374 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Fri, 14 Jun 2013 04:14:58 -0400 Date: Fri, 14 Jun 2013 10:14:55 +0200 From: Kevin Wolf Message-ID: <20130614081455.GA2389@dhcp-200-207.str.redhat.com> References: <1371124063-12971-1-git-send-email-kwolf@redhat.com> <1371124063-12971-6-git-send-email-kwolf@redhat.com> <51BA424A.2020105@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <51BA424A.2020105@redhat.com> Subject: Re: [Qemu-devel] [PATCH 5/5] block: Always enable discard on the protocol level List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: qemu-devel@nongnu.org, stefanha@redhat.com Am 14.06.2013 um 00:06 hat Paolo Bonzini geschrieben: > Il 13/06/2013 07:47, Kevin Wolf ha scritto: > > Turning on discard options in qcow2 doesn't help a lot when the discard > > requests that it issues are thrown away by the raw-posix layer. This > > patch always enables discard functionality on the protocol level so that > > it's the image format's responsibility to send (or not) discard > > requests. Requests sent by the guest will be allowed or ignored by the > > top level BlockDriverState, which depends on the discard=... option like > > before. > > > > In particular, this means that even without specifying options, the > > qcow2 default of discarding deleted snapshots actually takes effect now, > > both for qemu and qemu-img. > > > > Signed-off-by: Kevin Wolf > > --- > > block.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/block.c b/block.c > > index 79ad33d..0a7cf2f 100644 > > --- a/block.c > > +++ b/block.c > > @@ -1045,7 +1045,7 @@ int bdrv_open(BlockDriverState *bs, const char *filename, QDict *options, > > extract_subqdict(options, &file_options, "file."); > > > > ret = bdrv_file_open(&file, filename, file_options, > > - bdrv_open_flags(bs, flags)); > > + bdrv_open_flags(bs, flags | BDRV_O_UNMAP)); > > if (ret < 0) { > > goto fail; > > } > > > > Can you still disable it with -drive file.discard=ignore? This requires a few more changes (basically moving BDRV_O_UNMAP from flags into a boolean in the QDict), but I think eventually we'll want to allow this. Kevin