On 01.06.2015 18:09, Max Reitz wrote:
The L2 cache must cover at least two L2 tables, because during COW two
L2 tables are accessed simultaneously.

Reported-by: Alexander Graf <[email protected]>
Cc: qemu-stable <[email protected]>
Signed-off-by: Max Reitz <[email protected]>
---
  block/qcow2.h | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/block/qcow2.h b/block/qcow2.h
index 0076512..aa20022 100644
--- a/block/qcow2.h
+++ b/block/qcow2.h
@@ -62,7 +62,8 @@
  #define MIN_CLUSTER_BITS 9
  #define MAX_CLUSTER_BITS 21
-#define MIN_L2_CACHE_SIZE 1 /* cluster */
+/* Must be at least 2 to cover COW */
+#define MIN_L2_CACHE_SIZE 2 /* clusters */
/* Must be at least 4 to cover all cases of refcount table growth */
  #define MIN_REFCOUNT_CACHE_SIZE 4 /* clusters */

Of course git send-email ignored the qemu-stable line... CC-ing manually.

Max

Reply via email to