summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--block/io.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/block/io.c b/block/io.c
index 9dc265b34d..fb99a7151c 100644
--- a/block/io.c
+++ b/block/io.c
@@ -816,7 +816,9 @@ static int coroutine_fn bdrv_driver_pwritev(BlockDriverState *bs,
int ret;
if (drv->bdrv_co_pwritev) {
- ret = drv->bdrv_co_pwritev(bs, offset, bytes, qiov, flags);
+ ret = drv->bdrv_co_pwritev(bs, offset, bytes, qiov,
+ flags & bs->supported_write_flags);
+ flags &= ~bs->supported_write_flags;
goto emulate_flags;
}