When read the state of a virtqueue, vhost_vdpa need to check whether the device is suspended.
This commit verifies whether VHOST_BACKEND_F_SUSPEND is negotiated when checking vhost_vdpa->suspended. Signed-off-by: Zhu Lingshan <lingshan....@intel.com> --- hw/virtio/vhost-vdpa.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/virtio/vhost-vdpa.c b/hw/virtio/vhost-vdpa.c index b3094e8a8b..ae176c06dd 100644 --- a/hw/virtio/vhost-vdpa.c +++ b/hw/virtio/vhost-vdpa.c @@ -1397,7 +1397,7 @@ static int vhost_vdpa_get_vring_base(struct vhost_dev *dev, return 0; } - if (!v->suspended) { + if ((dev->backend_cap & BIT_ULL(VHOST_BACKEND_F_SUSPEND)) && (!v->suspended)) { /* * Cannot trust in value returned by device, let vhost recover used * idx from guest. -- 2.39.1