[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH] qcow2: Invalidate cache after failed read
From: |
Kevin Wolf |
Subject: |
[Qemu-devel] [PATCH] qcow2: Invalidate cache after failed read |
Date: |
Thu, 28 Oct 2010 16:23:40 +0200 |
The cache content may be destroyed after a failed read, better not use it any
more.
Signed-off-by: Kevin Wolf <address@hidden>
---
block/qcow2-cluster.c | 1 +
block/qcow2-refcount.c | 1 +
2 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/block/qcow2-cluster.c b/block/qcow2-cluster.c
index 4f7dc59..b040208 100644
--- a/block/qcow2-cluster.c
+++ b/block/qcow2-cluster.c
@@ -188,6 +188,7 @@ static int l2_load(BlockDriverState *bs, uint64_t l2_offset,
ret = bdrv_pread(bs->file, l2_offset, *l2_table,
s->l2_size * sizeof(uint64_t));
if (ret < 0) {
+ qcow2_l2_cache_reset(bs);
return ret;
}
diff --git a/block/qcow2-refcount.c b/block/qcow2-refcount.c
index 0efb676..a10453c 100644
--- a/block/qcow2-refcount.c
+++ b/block/qcow2-refcount.c
@@ -103,6 +103,7 @@ static int load_refcount_block(BlockDriverState *bs,
ret = bdrv_pread(bs->file, refcount_block_offset, s->refcount_block_cache,
s->cluster_size);
if (ret < 0) {
+ s->refcount_block_cache_offset = 0;
return ret;
}
--
1.7.2.3
- [Qemu-devel] [PATCH] qcow2: Invalidate cache after failed read,
Kevin Wolf <=