diff mbox series

[v4,14/19] blockjob: block_job_get_aio_context is a GS function

Message ID 20220128115031.4061565-15-eesposit@redhat.com
State New
Headers show
Series job: replace AioContext lock with job_mutex | expand

Commit Message

Emanuele Giuseppe Esposito Jan. 28, 2022, 11:50 a.m. UTC
Move block_job_get_aio_context under the GS category in blockjob.h,
as it is always called with the BQL held.

This is done also to simplify the coming job->aiocontext protection.

For more infos about the GS API, see include/block/block-global-state.h

Signed-off-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
---
 blockjob.c               |  1 +
 include/block/blockjob.h | 15 ++++++++-------
 2 files changed, 9 insertions(+), 7 deletions(-)
diff mbox series

Patch

diff --git a/blockjob.c b/blockjob.c
index a6c94b6b64..04d868f020 100644
--- a/blockjob.c
+++ b/blockjob.c
@@ -568,5 +568,6 @@  BlockErrorAction block_job_error_action(BlockJob *job, BlockdevOnError on_err,
 
 AioContext *block_job_get_aio_context(BlockJob *job)
 {
+    assert(qemu_in_main_thread());
     return job->job.aio_context;
 }
diff --git a/include/block/blockjob.h b/include/block/blockjob.h
index a9a6cf2b84..376cd95877 100644
--- a/include/block/blockjob.h
+++ b/include/block/blockjob.h
@@ -169,6 +169,14 @@  BlockJobInfo *block_job_query_locked(BlockJob *job, Error **errp);
  */
 void block_job_iostatus_reset_locked(BlockJob *job);
 
+/*
+ * block_job_get_aio_context:
+ *
+ * Returns aio context associated with a block job.
+ */
+AioContext *block_job_get_aio_context(BlockJob *job);
+
+
 /* Common functions that are neither I/O nor Global State */
 
 /**
@@ -186,11 +194,4 @@  bool block_job_is_internal(BlockJob *job);
  */
 const BlockJobDriver *block_job_driver(BlockJob *job);
 
-/*
- * block_job_get_aio_context:
- *
- * Returns aio context associated with a block job.
- */
-AioContext *block_job_get_aio_context(BlockJob *job);
-
 #endif