On 09.05.23 08:31, Eugenio Perez Martin wrote:
On Mon, May 8, 2023 at 9:12 PM Stefan Hajnoczi <stefa...@redhat.com> wrote:
[...]
VHOST_USER_GET_VRING_BASE itself isn't really enough because it stops a
specific virtqueue but not the whole device. Unfortunately stopping all
virtqueues is not the same as SUSPEND since spontaneous device activity
is possible independent of any virtqueue (e.g. virtio-scsi events and
maybe virtio-net link status).
That's why I think SUSPEND is necessary for a solution that's generic
enough to cover all device types.
I agree.
In particular virtiofsd is already resetting all the device at
VHOST_USER_GET_VRING_BASE if I'm not wrong, so that's even more of a
reason to implement suspend call.
Oh, no, just the vring in question. Not the whole device.
In addition, we still need the GET_VRING_BASE call anyway, because,
well, we want to restore the vring on the destination via SET_VRING_BASE.
Hanna