diff options
author | Stefan Hajnoczi <stefanha@redhat.com> | 2017-01-12 11:46:11 +0000 |
---|---|---|
committer | Michael S. Tsirkin <mst@redhat.com> | 2017-01-18 22:59:53 +0200 |
commit | 1448c133e19372359d9de68626c06088ba79a34b (patch) | |
tree | 564100eb7e05d387280baec5032d5e87e32f8a08 | |
parent | 332fa82d0963409fa14997a02639289afa226596 (diff) | |
download | qemu-1448c133e19372359d9de68626c06088ba79a34b.zip |
virtio: disable notifications again after poll succeeded
While AioContext is in polling mode virtqueue notifications are not
necessary. Some device virtqueue handlers enable notifications. Make
sure they stay disabled to avoid unnecessary vmexits.
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Tested-by: Richard Henderson <rth@twiddle.net>
Tested-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
-rw-r--r-- | hw/virtio/virtio.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c index f04ab7aa6d..34065c78f8 100644 --- a/hw/virtio/virtio.c +++ b/hw/virtio/virtio.c @@ -2126,6 +2126,9 @@ static bool virtio_queue_host_notifier_aio_poll(void *opaque) } virtio_queue_notify_aio_vq(vq); + + /* In case the handler function re-enabled notifications */ + virtio_queue_set_notification(vq, 0); return true; } |