From: "Michael S. Tsirkin" <m...@redhat.com> When vhost device stops, its implementation synchronizes kernel state back to virtio.c so we can continue emulating the device in userspace.
This patch ensures that virtio.c's signalled_used_valid flag is reset so that userspace does not suppress guest notifications due to stale signalled_used values. Cc: qemu-sta...@nongnu.org Signed-off-by: Michael S. Tsirkin <m...@redhat.com> (cherry picked from commit 3561ba14188b3c1e54246ed6db97896bbc082d2f) Signed-off-by: Michael Roth <mdr...@linux.vnet.ibm.com> --- hw/virtio/vhost.c | 1 + 1 file changed, 1 insertion(+) diff --git a/hw/virtio/vhost.c b/hw/virtio/vhost.c index fbabf99..0dabf26 100644 --- a/hw/virtio/vhost.c +++ b/hw/virtio/vhost.c @@ -761,6 +761,7 @@ static void vhost_virtqueue_stop(struct vhost_dev *dev, fflush(stderr); } virtio_queue_set_last_avail_idx(vdev, idx, state.num); + virtio_queue_invalidate_signalled_used(vdev, idx); assert (r >= 0); cpu_physical_memory_unmap(vq->ring, virtio_queue_get_ring_size(vdev, idx), 0, virtio_queue_get_ring_size(vdev, idx)); -- 1.7.9.5