From 2f47da5f7f88d3966a2cb33cc9de53f134fea367 Mon Sep 17 00:00:00 2001 From: Paolo Bonzini Date: Mon, 13 Feb 2017 14:52:29 +0100 Subject: block: explicitly acquire aiocontext in timers that need it Reviewed-by: Stefan Hajnoczi Signed-off-by: Paolo Bonzini Reviewed-by: Fam Zheng Reviewed-by: Daniel P. Berrange Message-id: 20170213135235.12274-13-pbonzini@redhat.com Signed-off-by: Stefan Hajnoczi --- util/aio-posix.c | 2 -- util/aio-win32.c | 2 -- util/qemu-coroutine-sleep.c | 2 +- 3 files changed, 1 insertion(+), 5 deletions(-) (limited to 'util') diff --git a/util/aio-posix.c b/util/aio-posix.c index b590c5add7..4dc597ce9b 100644 --- a/util/aio-posix.c +++ b/util/aio-posix.c @@ -454,9 +454,7 @@ bool aio_dispatch(AioContext *ctx, bool dispatch_fds) } /* Run our timers */ - aio_context_acquire(ctx); progress |= timerlistgroup_run_timers(&ctx->tlg); - aio_context_release(ctx); return progress; } diff --git a/util/aio-win32.c b/util/aio-win32.c index ab6d0e56b5..810e1c600c 100644 --- a/util/aio-win32.c +++ b/util/aio-win32.c @@ -403,9 +403,7 @@ bool aio_poll(AioContext *ctx, bool blocking) progress |= aio_dispatch_handlers(ctx, event); } while (count > 0); - aio_context_acquire(ctx); progress |= timerlistgroup_run_timers(&ctx->tlg); - aio_context_release(ctx); return progress; } diff --git a/util/qemu-coroutine-sleep.c b/util/qemu-coroutine-sleep.c index 25de3ed3dd..9c5655041b 100644 --- a/util/qemu-coroutine-sleep.c +++ b/util/qemu-coroutine-sleep.c @@ -25,7 +25,7 @@ static void co_sleep_cb(void *opaque) { CoSleepCB *sleep_cb = opaque; - qemu_coroutine_enter(sleep_cb->co); + aio_co_wake(sleep_cb->co); } void coroutine_fn co_aio_sleep_ns(AioContext *ctx, QEMUClockType type, -- cgit v1.2.1