Skip to content
Commit ce37df91 authored by Paolo Bonzini's avatar Paolo Bonzini Committed by Michael Roth
Browse files

virtio: always use handle_aio_output if registered



Commit ad07cd69 ("virtio-scsi: always use dataplane path if ioeventfd is
active", 2016-10-30) and 9ffe337c ("virtio-blk: always use dataplane
path if ioeventfd is active", 2016-10-30) broke the virtio 1.0
indirect access registers.

The indirect access registers bypass the ioeventfd, so that virtio-blk
and virtio-scsi now repeatedly try to initialize dataplane instead of
triggering the guest->host EventNotifier.  Detect the situation by
checking vq->handle_aio_output; if it is not NULL, trigger the
EventNotifier, which is how the device expects to get notifications
and in fact the only thread-safe manner to deliver them.

Fixes: ad07cd69
Fixes: 9ffe337c
Cc: qemu-stable@nongnu.org
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
Reviewed-by: default avatarMichael S. Tsirkin <mst@redhat.com>
Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
Reviewed-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
(cherry picked from commit e49a6618)
Signed-off-by: default avatarMichael Roth <mdroth@linux.vnet.ibm.com>
parent dc35a137
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment