diff mbox

[v2,04/11] blockdev: add note that block_job_cb() must be thread-safe

Message ID 1413889440-32577-5-git-send-email-stefanha@redhat.com
State New
Headers show

Commit Message

Stefan Hajnoczi Oct. 21, 2014, 11:03 a.m. UTC
This function is correct but we should document the constraint that
everything must be thread-safe.

Emitting QMP events and scheduling BHs are both thread-safe so nothing
needs to be done here.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
---
 blockdev.c | 5 +++++
 1 file changed, 5 insertions(+)
diff mbox

Patch

diff --git a/blockdev.c b/blockdev.c
index c46876c..a891f8e 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -1953,6 +1953,11 @@  out:
 
 static void block_job_cb(void *opaque, int ret)
 {
+    /* Note that this function may be executed from another AioContext besides
+     * the QEMU main loop.  If you need to access anything that assumes the
+     * QEMU global mutex, use a BH or introduce a mutex.
+     */
+
     BlockDriverState *bs = opaque;
     const char *msg = NULL;