On Fri, Oct 23, 2026 at 4:16 AM Stefan Hajnoczi <[email protected]> wrote: > > Please update docs/devel/multiple-iothreads.rst. It still refers to > iothread_get_aio_context() instead of the new API. >
Hi Stefan, Thanks for pointing this out. Would it be okay to include the documentation update as a separate patch in the next revision like this? diff --git a/docs/devel/multiple-iothreads.rst b/docs/devel/multiple-iothreads.rst index a6eb046267..c184222d71 100644 --- a/docs/devel/multiple-iothreads.rst +++ b/docs/devel/multiple-iothreads.rst @@ -88,11 +88,20 @@ argument, which is used to check for and prevent re-entrancy problems. For BHs associated with devices, the reentrancy-guard is contained in the corresponding ``DeviceState`` and named ``mem_reentrancy_guard``. -The ``AioContext`` can be obtained from the ``IOThread`` using -``iothread_get_aio_context()`` or for the main loop using -``qemu_get_aio_context()``. Code that takes an ``AioContext`` argument -works both in ``IOThread``\ s or the main loop, depending on which ``AioContext`` -instance the caller passes in. +The ``AioContext`` can be obtained from an ``IOThread`` using +``iothread_ref_and_get_aio_context(iothread, holder)``, or from the main loop +using ``qemu_get_aio_context()``. Code accepting an ``AioContext`` works with +either event loop. + +The holder-aware get registers a holder and takes an IOThread reference. +After the caller has finished using the context, release the reference with +``iothread_unref_and_put_aio_context()``, passing the same IOThread and an +equivalent holder. Both calls require the BQL. No matching IOThread put is +needed for the main loop's context. + +``iothread_unsafe_get_aio_context()`` neither registers a holder nor takes a +reference. It is for legacy callers that ensure the IOThread's lifetime +themselves; new code must use the holder-aware API. How to synchronize with an ``IOThread`` --------------------------------------- When you have a chance, I'd also appreciate your review of the remaining patches that don't yet have Reviewed-by tags. Thanks Chen > Thanks, > Stefan >
