summaryrefslogtreecommitdiff
path: root/blockdev.c
diff options
context:
space:
mode:
authorKevin Wolf <kwolf@redhat.com>2016-03-15 14:34:37 +0100
committerKevin Wolf <kwolf@redhat.com>2016-03-30 12:16:01 +0200
commit72e775c7d9de3eaa35a6edaf9d87cedee149d0f5 (patch)
tree6146ef9c8ce3f93f11df617a2e6d4dfeba72b82e /blockdev.c
parente4b24b497e4171a89da541fe83c3dc84c51d42da (diff)
downloadqemu-72e775c7d9de3eaa35a6edaf9d87cedee149d0f5.zip
block: Always set writeback mode in blk_new_open()
All callers of blk_new_open() either don't rely on the WCE bit set after blk_new_open() because they explicitly set it anyway, or they pass BDRV_O_CACHE_WB unconditionally. This patch changes blk_new_open() so that it always enables writeback mode and asserts that BDRV_O_CACHE_WB is clear. For those callers that used to pass BDRV_O_CACHE_WB unconditionally, the flag is removed now. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Reviewed-by: Max Reitz <mreitz@redhat.com>
Diffstat (limited to 'blockdev.c')
-rw-r--r--blockdev.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/blockdev.c b/blockdev.c
index b65891382b..00a77dc750 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -598,6 +598,7 @@ static BlockBackend *blockdev_init(const char *file, QDict *bs_opts,
qdict_set_default_str(bs_opts, BDRV_OPT_CACHE_WB, writethrough ? "off" : "on");
qdict_set_default_str(bs_opts, BDRV_OPT_CACHE_DIRECT, "off");
qdict_set_default_str(bs_opts, BDRV_OPT_CACHE_NO_FLUSH, "off");
+ assert((bdrv_flags & BDRV_O_CACHE_MASK) == 0);
if (runstate_check(RUN_STATE_INMIGRATE)) {
bdrv_flags |= BDRV_O_INACTIVE;