block: Remove BDRV_O_COPY_ON_READ for bs->file
authorKevin Wolf <kwolf@redhat.com>
Fri, 11 Apr 2014 19:36:45 +0000 (21:36 +0200)
committerKevin Wolf <kwolf@redhat.com>
Wed, 30 Apr 2014 09:05:00 +0000 (11:05 +0200)
Copy on Read makes sense on the format level where backing files are
implemented, but it's not required on the protocol level. While it
shouldn't actively break anything to have COR enabled on both layers,
needless serialisation and allocation checks may impact performance.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
block.c

diff --git a/block.c b/block.c
index c6d5ab9..9f88bcc 100644 (file)
--- a/block.c
+++ b/block.c
@@ -793,7 +793,7 @@ static int bdrv_inherited_flags(int flags)
     }
 
     /* Clear flags that only apply to the top layer */
-    flags &= ~(BDRV_O_SNAPSHOT | BDRV_O_NO_BACKING);
+    flags &= ~(BDRV_O_SNAPSHOT | BDRV_O_NO_BACKING | BDRV_O_COPY_ON_READ);
 
     return flags;
 }