qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 56/56] vhost: clear signalled_used_valid on vhost st


From: Michael Roth
Subject: [Qemu-devel] [PATCH 56/56] vhost: clear signalled_used_valid on vhost stop
Date: Tue, 13 Aug 2013 10:11:20 -0500

From: "Michael S. Tsirkin" <address@hidden>

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: address@hidden
Signed-off-by: Michael S. Tsirkin <address@hidden>
(cherry picked from commit 3561ba14188b3c1e54246ed6db97896bbc082d2f)

Signed-off-by: Michael Roth <address@hidden>
---
 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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]