]> git.ipfire.org Git - thirdparty/qemu.git/blobdiff - block.c
block: Add return value for bdrv_flush_all()
[thirdparty/qemu.git] / block.c
diff --git a/block.c b/block.c
index c7c3e06f83dbfe6deeef21a25216b8b4e8b15abf..d338a20d1091bf629ccd7afea87eae50bb42d748 100644 (file)
--- a/block.c
+++ b/block.c
@@ -2907,13 +2907,19 @@ int bdrv_get_flags(BlockDriverState *bs)
     return bs->open_flags;
 }
 
-void bdrv_flush_all(void)
+int bdrv_flush_all(void)
 {
     BlockDriverState *bs;
+    int result = 0;
 
     QTAILQ_FOREACH(bs, &bdrv_states, list) {
-        bdrv_flush(bs);
+        int ret = bdrv_flush(bs);
+        if (ret < 0 && !result) {
+            result = ret;
+        }
     }
+
+    return result;
 }
 
 int bdrv_has_zero_init(BlockDriverState *bs)