]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
virtio-pci: Check if is_avq is NULL
authorLi Zhang <zhanglikernel@gmail.com>
Sat, 16 Mar 2024 05:25:54 +0000 (13:25 +0800)
committerMichael S. Tsirkin <mst@redhat.com>
Wed, 22 May 2024 12:39:41 +0000 (08:39 -0400)
commitc8fae27d141a32a1624d0d0d5419d94252824498
treede050c966953c6a0ee689055db7e60e516bb1eb1
parentc0a7233f583f9aa53b5066785201746cdcd8fd24
virtio-pci: Check if is_avq is NULL

[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@gmail.com>
Message-Id: <1710566754-3532-1-git-send-email-zhanglikernel@gmail.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
drivers/virtio/virtio_pci_common.c