Skip to contentSkip to conversation

vhost: clear signalled_used_valid on vhost stop

PATCH New Michael S. Tsirkin 1 participant 1 message Aug 12, 2013

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 vhost: clear signalled_used_valid on vhost stop

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.

---
 hw/virtio/vhost.c | 1 +
 1 file changed, 1 insertion(+)
hw/virtio/vhost.c +1 -0
index 8f6ab13..9e336ad 100644
@@ -762,6 +762,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));
Signature · 1 line
MST