On Thu, Nov 06, 2025 at 09:04:46AM +0100, Eugenio Perez Martin wrote:
> On Wed, Oct 29, 2025 at 1:50 PM Wafer Xie <[email protected]> wrote:
> >
> > When stopping a vhost-vdpa device, only the first queue pair is marked as 
> > suspended,
> > while the remaining queues are not updated to the suspended state.
> > As a result, when stopping a multi-queue vhost-vdpa device,
> > the following error message will be printed.
> >
> > qemu-system-x86_64:vhost VQ 2 ring restore failed: -1: Operation not 
> > permitted (1)
> >
> > qemu-system-x86_64:vhost VQ 3 ring restore failed: -1: Operation not 
> > permitted (1)
> >
> > Fixes: b6662cb7 ("vdpa: add vhost_vdpa->suspended parameter")
> >
> > Signed-off-by: Wafer Xie <[email protected]>
> > ---
> >  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 7061b6e1a3..2d5e6aca74 100644
> > --- a/hw/virtio/vhost-vdpa.c
> > +++ b/hw/virtio/vhost-vdpa.c
> > @@ -1481,7 +1481,7 @@ static int vhost_vdpa_get_vring_base(struct vhost_dev 
> > *dev,
> >          return 0;
> >      }
> >
> > -    if (!v->suspended) {
> > +    if (!v->suspended && vhost_vdpa_first_dev(dev)) {
> 
> I'm sorry I missed this fix!
> 
> Good catch, thank you very much! But the right fix is to move
> v->suspended to v->shared, and then all the vhost_vdpa devices cannot
> have different suspended states.
> 
> Apart from that, please include the tag
> 
> Fixes: 0bb302a9960a ("vdpa: add vhost_vdpa_suspend")
> 
> In the patch description.
> 
> Thanks!


Eugenio do you want to post the fix?

> >          /*
> >           * Cannot trust in value returned by device, let vhost recover used
> >           * idx from guest.
> > --
> > 2.34.1
> >


Reply via email to