block coroutines functions run in different aiocontext, and are
not protected by the BQL. Therefore are I/O.

Signed-off-by: Emanuele Giuseppe Esposito <eespo...@redhat.com>
Reviewed-by: Paolo Bonzini <pbonz...@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefa...@redhat.com>
---
 block/coroutines.h | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/block/coroutines.h b/block/coroutines.h
index 514d169d23..079de537a0 100644
--- a/block/coroutines.h
+++ b/block/coroutines.h
@@ -27,6 +27,13 @@
 
 #include "block/block_int.h"
 
+/*
+ * I/O API functions. These functions are thread-safe.
+ *
+ * See include/block/block-io.h for more information about
+ * the I/O API.
+ */
+
 int coroutine_fn bdrv_co_check(BlockDriverState *bs,
                                BdrvCheckResult *res, BdrvCheckMode fix);
 int coroutine_fn bdrv_co_invalidate_cache(BlockDriverState *bs, Error **errp);
-- 
2.27.0


Reply via email to