From: Paolo Bonzini Date: Tue, 14 Aug 2018 06:27:39 +0000 (+0200) Subject: nvme: correct locking around completion X-Git-Tag: v3.1.0-rc0~57^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6388147296cd4c841a7d4409ba622c200332a8c7;p=thirdparty%2Fqemu.git nvme: correct locking around completion nvme_poll_queues is already protected by q->lock, and AIO callbacks are invoked outside the AioContext lock. So remove the acquire/release pair in nvme_handle_event. Signed-off-by: Paolo Bonzini Message-Id: <20180814062739.19640-1-pbonzini@redhat.com> Signed-off-by: Fam Zheng --- diff --git a/block/nvme.c b/block/nvme.c index 781d77d6d25..29294038fcc 100644 --- a/block/nvme.c +++ b/block/nvme.c @@ -489,10 +489,8 @@ static void nvme_handle_event(EventNotifier *n) BDRVNVMeState *s = container_of(n, BDRVNVMeState, irq_notifier); trace_nvme_handle_event(s); - aio_context_acquire(s->aio_context); event_notifier_test_and_clear(n); nvme_poll_queues(s); - aio_context_release(s->aio_context); } static bool nvme_add_io_queue(BlockDriverState *bs, Error **errp)