Re: [PATCH]virtio-pci: Check if is_avq is NULL

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

 



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
> > >
> > >
> >
> >
>






[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux