From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:39993) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QSexP-00010u-0q for qemu-devel@nongnu.org; Fri, 03 Jun 2011 20:43:15 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QSexN-0002Oe-MD for qemu-devel@nongnu.org; Fri, 03 Jun 2011 20:43:14 -0400 Received: from mail-pw0-f45.google.com ([209.85.160.45]:55029) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QSexN-0002OY-8o for qemu-devel@nongnu.org; Fri, 03 Jun 2011 20:43:13 -0400 Received: by pwi6 with SMTP id 6so1340779pwi.4 for ; Fri, 03 Jun 2011 17:43:12 -0700 (PDT) MIME-Version: 1.0 From: Fam Zheng Date: Sat, 4 Jun 2011 08:42:52 +0800 Message-ID: Content-Type: text/plain; charset=UTF-8 Subject: [Qemu-devel] [PATCH 08/12] VMDK: vmdk_close for extents List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Kevin Wolf , Stefan Hajnoczi , Christoph Hellwig Signed-off-by: Fam Zheng --- block/vmdk.c | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) diff --git a/block/vmdk.c b/block/vmdk.c index 1d74b62..bbab68a 100644 --- a/block/vmdk.c +++ b/block/vmdk.c @@ -1086,10 +1086,15 @@ exit: static void vmdk_close(BlockDriverState *bs) { + int i; BDRVVmdkState *s = bs->opaque; - qemu_free(s->extents[0].l1_table); - qemu_free(s->extents[0].l2_cache); + for (i = 0; i < s->num_extents; i++) { + qemu_free(s->extents[i].l1_table); + qemu_free(s->extents[i].l2_cache); + qemu_free(s->extents[i].l1_backup_table); + } + qemu_free(s->extents); } static int vmdk_flush(BlockDriverState *bs)