From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MGV24-0001PQ-EX for qemu-devel@nongnu.org; Tue, 16 Jun 2009 05:32:44 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MGV1z-0001ED-By for qemu-devel@nongnu.org; Tue, 16 Jun 2009 05:32:43 -0400 Received: from [199.232.76.173] (port=53236 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MGV1z-0001Dc-0c for qemu-devel@nongnu.org; Tue, 16 Jun 2009 05:32:39 -0400 Received: from mx20.gnu.org ([199.232.41.8]:27872) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1MGV1y-0000k1-Ka for qemu-devel@nongnu.org; Tue, 16 Jun 2009 05:32:38 -0400 Received: from mx2.redhat.com ([66.187.237.31]) by mx20.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MGV1x-0003tL-Qn for qemu-devel@nongnu.org; Tue, 16 Jun 2009 05:32:38 -0400 Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26]) by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n5G9Wa2x003926 for ; Tue, 16 Jun 2009 05:32:36 -0400 From: Kevin Wolf Date: Tue, 16 Jun 2009 11:31:27 +0200 Message-Id: <1245144690-27805-1-git-send-email-kwolf@redhat.com> Subject: [Qemu-devel] [PATCH 0/3] qcow2: Write complete sectors List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Kevin Wolf Once upon a time, there was a bdrv_pwrite that actually wrote single bytes to the file... However, today it is emulated by a read-modify-write cycle which aligns the request to sector size. This is slow. And we don't need it: qcow2 often has the complete sector in memory, we don't need to read it from the disk again. These patches change the writes to L1 tables, L2 tables and refcount blocks to write complete sectors instead of single entries. This series depends on the qcow2 split to apply cleanly. Kevin Wolf (3): l2_allocate: Write complete sectors alloc_cluster_link_l2: Write complete sectors update_refcount: Write complete sectors block/qcow2-cluster.c | 61 +++++++++++++++++++++++++++++++++++++++++------ block/qcow2-refcount.c | 34 ++++++++++++++++++++------ 2 files changed, 79 insertions(+), 16 deletions(-)