[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 03/12] aio: make aio_context_acquire()/aio_context_release() a no-op
On Wed, Nov 29, 2023 at 02:55:44PM -0500, Stefan Hajnoczi wrote: > aio_context_acquire()/aio_context_release() has been replaced by > fine-grained locking to protect state shared by multiple threads. The > AioContext lock still plays the role of balancing locking in > AIO_WAIT_WHILE() and many functions in QEMU either require that the > AioContext lock is held or not held for this reason. In other words, the > AioContext lock is purely there for consistency with itself and serves > no real purpose anymore. > > Stop actually acquiring/releasing the lock in > aio_context_acquire()/aio_context_release() so that subsequent patches > can remove callers across the codebase incrementally. > > I have performed "make check" and qemu-iotests stress tests across > x86-64, ppc64le, and aarch64 to confirm that there are no failures as a > result of eliminating the lock. > > Signed-off-by: Stefan Hajnoczi <stefanha@xxxxxxxxxx> > --- > util/async.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/util/async.c b/util/async.c > index 8f90ddc304..04ee83d220 100644 > --- a/util/async.c > +++ b/util/async.c > @@ -725,12 +725,12 @@ void aio_context_unref(AioContext *ctx) > > void aio_context_acquire(AioContext *ctx) > { > - qemu_rec_mutex_lock(&ctx->lock); > + /* TODO remove this function */ > } > > void aio_context_release(AioContext *ctx) > { > - qemu_rec_mutex_unlock(&ctx->lock); > + /* TODO remove this function */ > } > > QEMU_DEFINE_STATIC_CO_TLS(AioContext *, my_aiocontext) > -- > 2.42.0 Reviewed-by: Eric Blake <eblake@xxxxxxxxxx> -- Eric Blake, Principal Software Engineer Red Hat, Inc. Virtualization: qemu.org | libguestfs.org
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |