Commit 63881472 authored by Paolo Bonzini's avatar Paolo Bonzini Committed by Fam Zheng
Browse files

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: default avatarPaolo Bonzini <pbonzini@redhat.com>
Message-Id: <20180814062739.19640-1-pbonzini@redhat.com>
Signed-off-by: default avatarFam Zheng <famz@redhat.com>
parent 14a2d118
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -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)