From mboxrd@z Thu Jan 1 00:00:00 1970 From: Pekka Enberg Subject: [PATCH 6/9] kvm tools, qcow: Don't fdatasync() L2 table writeout Date: Sat, 9 Jul 2011 16:02:39 +0300 Message-ID: <1310216563-17503-7-git-send-email-penberg@kernel.org> References: <1310216563-17503-1-git-send-email-penberg@kernel.org> Cc: Pekka Enberg , Asias He , Cyrill Gorcunov , Ingo Molnar , Prasad Joshi , Sasha Levin To: kvm@vger.kernel.org Return-path: Received: from filtteri2.pp.htv.fi ([213.243.153.185]:59359 "EHLO filtteri2.pp.htv.fi" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753371Ab1GINDB (ORCPT ); Sat, 9 Jul 2011 09:03:01 -0400 In-Reply-To: <1310216563-17503-1-git-send-email-penberg@kernel.org> Sender: kvm-owner@vger.kernel.org List-ID: There's now now point in making sure new L2 tables actually hit the disk before we write out data to clusters because they are not visible on-disk until qcow_disk_flush() is called which flushes the L1 table. Cc: Asias He Cc: Cyrill Gorcunov Cc: Ingo Molnar Cc: Prasad Joshi Cc: Sasha Levin Signed-off-by: Pekka Enberg --- tools/kvm/disk/qcow.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/tools/kvm/disk/qcow.c b/tools/kvm/disk/qcow.c index 0fef92f..35408ab 100644 --- a/tools/kvm/disk/qcow.c +++ b/tools/kvm/disk/qcow.c @@ -345,7 +345,7 @@ static u64 qcow_write_l2_table(struct qcow *q, u64 *table) clust_sz = 1 << header->cluster_bits; off = ALIGN(f_sz, clust_sz); - if (qcow_pwrite_sync(q->fd, table, sz * sizeof(u64), off) < 0) + if (pwrite_in_full(q->fd, table, sz * sizeof(u64), off) < 0) return 0; return off; -- 1.7.0.4