Am 29.11.2023 um 20:55 hat Stefan Hajnoczi geschrieben: > This is the big patch that removes > aio_context_acquire()/aio_context_release() from the block layer and > affected block layer users. > > There isn't a clean way to split this patch and the reviewers are likely > the same group of people, so I decided to do it in one patch. > > Signed-off-by: Stefan Hajnoczi <stefa...@redhat.com>
> @@ -7585,29 +7433,12 @@ void coroutine_fn bdrv_co_leave(BlockDriverState *bs, > AioContext *old_ctx) > > void coroutine_fn bdrv_co_lock(BlockDriverState *bs) > { > - AioContext *ctx = bdrv_get_aio_context(bs); > - > - /* In the main thread, bs->aio_context won't change concurrently */ > - assert(qemu_get_current_aio_context() == qemu_get_aio_context()); > - > - /* > - * We're in coroutine context, so we already hold the lock of the main > - * loop AioContext. Don't lock it twice to avoid deadlocks. > - */ > - assert(qemu_in_coroutine()); > - if (ctx != qemu_get_aio_context()) { > - aio_context_acquire(ctx); > - } > + /* TODO removed in next patch */ > } It's still there at the end of the series. > void coroutine_fn bdrv_co_unlock(BlockDriverState *bs) > { > - AioContext *ctx = bdrv_get_aio_context(bs); > - > - assert(qemu_in_coroutine()); > - if (ctx != qemu_get_aio_context()) { > - aio_context_release(ctx); > - } > + /* TODO removed in next patch */ > } This one, too. Reviewed-by: Kevin Wolf <kw...@redhat.com>