On Tue, 8 Sep 2020 21:33:09 +0200 Eric Auger <eric.au...@redhat.com> wrote:
> Commit 9b3a35ec82 ("virtio: verify that legacy support is not > accidentally on") added a safety check that requires to set > 'disable-legacy=on' on virtio-iommu-pci: > > qemu-system-aarch64: -device virtio-iommu-pci: device is modern-only, > use disable-legacy=on > > virtio-iommu was introduced after the release of VIRTIO 1.0 > specifications, so it should be 'modern-only'. > > This patch forces virtio version 1 and removes the 'transitional_name' > property removing the need to specify 'disable-legacy=on' on > virtio-iommu-pci device. Not sure whether this patch has been queued already, and how much we care about migration compatibility for virtio-iommu, but would it make sense to force modern on 5.1+ compat machines only? (see https://lore.kernel.org/qemu-devel/20200918074710.27810-1-sgarz...@redhat.com/) > > Cc: qemu-sta...@nongnu.org > Signed-off-by: Eric Auger <eric.au...@redhat.com> > Reviewed-by: Cornelia Huck <coh...@redhat.com> > > --- > v1 -> v2: > - Added Connie's R-b > --- > hw/virtio/virtio-iommu-pci.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/hw/virtio/virtio-iommu-pci.c b/hw/virtio/virtio-iommu-pci.c > index ba62d60a0a..3b6f7a11c6 100644 > --- a/hw/virtio/virtio-iommu-pci.c > +++ b/hw/virtio/virtio-iommu-pci.c > @@ -68,6 +68,7 @@ static void virtio_iommu_pci_realize(VirtIOPCIProxy > *vpci_dev, Error **errp) > object_property_set_link(OBJECT(dev), "primary-bus", > OBJECT(pci_get_bus(&vpci_dev->pci_dev)), > &error_abort); > + virtio_pci_force_virtio_1(vpci_dev); > qdev_realize(vdev, BUS(&vpci_dev->bus), errp); > } > > @@ -97,7 +98,6 @@ static void virtio_iommu_pci_instance_init(Object *obj) > static const VirtioPCIDeviceTypeInfo virtio_iommu_pci_info = { > .base_name = TYPE_VIRTIO_IOMMU_PCI, > .generic_name = "virtio-iommu-pci", > - .transitional_name = "virtio-iommu-pci-transitional", > .non_transitional_name = "virtio-iommu-pci-non-transitional", > .instance_size = sizeof(VirtIOIOMMUPCI), > .instance_init = virtio_iommu_pci_instance_init,