On Tue, May 14, 2024 at 11:37 PM li zhang <zhanglikernel@xxxxxxxxx> wrote: > > Hi, > Two months have passed and this bug seems to have not been fixed. > Sincerely, > Li Zhang Adding Michael and virtualization-list. Please use get_maintainer.pl to make sure the patch reaches the maintainer. Thanks > > Jason Wang <jasowang@xxxxxxxxxx> 于2024年3月21日周四 14:19写道: > > > > On Sat, Mar 16, 2024 at 1:26 PM Li Zhang <zhanglikernel@xxxxxxxxx> wrote: > > > > > > [bug] > > > In the virtio_pci_common.c function vp_del_vqs, vp_dev->is_avq is involved > > > to determine whether it is admin virtqueue, but this function vp_dev->is_avq > > > may be empty. For installations, virtio_pci_legacy does not assign a value > > > to vp_dev->is_avq. > > > > > > [fix] > > > Check whether it is vp_dev->is_avq before use. > > > > > > [test] > > > Test with virsh Attach device > > > Before this patch, the following command would crash the guest system > > > > > > After applying the patch, everything seems to be working fine. > > > > > > Signed-off-by: Li Zhang <zhanglikernel@xxxxxxxxx> > > > > Acked-by: Jason Wang <jasowang@xxxxxxxxxx> > > > > Thanks > > > > > --- > > > drivers/virtio/virtio_pci_common.c | 2 +- > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > diff --git a/drivers/virtio/virtio_pci_common.c b/drivers/virtio/virtio_pci_common.c > > > index b655fcc..3c18fc1 100644 > > > --- a/drivers/virtio/virtio_pci_common.c > > > +++ b/drivers/virtio/virtio_pci_common.c > > > @@ -236,7 +236,7 @@ void vp_del_vqs(struct virtio_device *vdev) > > > int i; > > > > > > list_for_each_entry_safe(vq, n, &vdev->vqs, list) { > > > - if (vp_dev->is_avq(vdev, vq->index)) > > > + if (vp_dev->is_avq && vp_dev->is_avq(vdev, vq->index)) > > > continue; > > > > > > if (vp_dev->per_vq_vectors) { > > > -- > > > 1.8.3.1 > > > > > > > > > > >