In virtio_queue_enable(), we checked virtio feature VIRTIO_F_VERSION_1. This check is not necessary, and conflict with SeaBIOS. The problem appeared in SeaBIOS. But we also remove this check.
Link: https://www.mail-archive.com/qemu-devel@nongnu.org/msg920538.html Signed-off-by: Xuan Zhuo <xuanz...@linux.alibaba.com> --- hw/virtio/virtio.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c index 9683b2e158..701e23ea6a 100644 --- a/hw/virtio/virtio.c +++ b/hw/virtio/virtio.c @@ -2499,11 +2499,6 @@ void virtio_queue_enable(VirtIODevice *vdev, uint32_t queue_index) { VirtioDeviceClass *k = VIRTIO_DEVICE_GET_CLASS(vdev); - if (!virtio_vdev_has_feature(vdev, VIRTIO_F_VERSION_1)) { - error_report("queue_enable is only suppported in devices of virtio " - "1.0 or later."); - } - if (k->queue_enable) { k->queue_enable(vdev, queue_index); } -- 2.32.0.3.g01195cf9f