Message ID | 20200918074710.27810-4-sgarzare@redhat.com |
---|---|
State | Superseded |
Headers | show |
Series | vhost-vsock: force virtio version 1 | expand |
On Fri, 18 Sep 2020 09:47:09 +0200 Stefano Garzarella <sgarzare@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 vhost-user-vsock-pci device: > > $ ./qemu-system-x86_64 ... \ > -chardev socket,id=char0,reconnect=0,path=/tmp/vhost4.socket \ > -device vhost-user-vsock-pci,chardev=char0 > qemu-system-x86_64: -device vhost-user-vsock-pci,chardev=char0: > device is modern-only, use disable-legacy=on > > virtio-vsock 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, as done for vhost-vsock-pci, removing the need to specify > 'disable-legacy=on' on vhost-user-vsock-pci device. > > Cc: qemu-stable@nongnu.org > Suggested-by: Cornelia Huck <cohuck@redhat.com> > Reviewed-by: Cornelia Huck <cohuck@redhat.com> > Signed-off-by: Stefano Garzarella <sgarzare@redhat.com> > --- > v2: > - fixed commit message [Cornelia] > --- > hw/virtio/vhost-user-vsock-pci.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/hw/virtio/vhost-user-vsock-pci.c b/hw/virtio/vhost-user-vsock-pci.c > index 763f89984e..14109121e2 100644 > --- a/hw/virtio/vhost-user-vsock-pci.c > +++ b/hw/virtio/vhost-user-vsock-pci.c > @@ -41,6 +41,7 @@ static void vhost_user_vsock_pci_realize(VirtIOPCIProxy *vpci_dev, Error **errp) > VHostUserVSockPCI *dev = VHOST_USER_VSOCK_PCI(vpci_dev); > DeviceState *vdev = DEVICE(&dev->vdev); > > + virtio_pci_force_virtio_1(vpci_dev); Maybe add a comment /* unlike vhost-vsock, we do not need to care about pre-5.1 compat */ to help when we look at this in the future? > qdev_realize(vdev, BUS(&vpci_dev->bus), errp); > } > > @@ -69,7 +70,6 @@ static void vhost_user_vsock_pci_instance_init(Object *obj) > static const VirtioPCIDeviceTypeInfo vhost_user_vsock_pci_info = { > .base_name = TYPE_VHOST_USER_VSOCK_PCI, > .generic_name = "vhost-user-vsock-pci", > - .transitional_name = "vhost-user-vsock-pci-transitional", > .non_transitional_name = "vhost-user-vsock-pci-non-transitional", > .instance_size = sizeof(VHostUserVSockPCI), > .instance_init = vhost_user_vsock_pci_instance_init, Otherwise, Reviewed-by: Cornelia Huck <cohuck@redhat.com>
On Fri, Sep 18, 2020 at 11:23:16AM +0200, Cornelia Huck wrote: > On Fri, 18 Sep 2020 09:47:09 +0200 > Stefano Garzarella <sgarzare@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 vhost-user-vsock-pci device: > > > > $ ./qemu-system-x86_64 ... \ > > -chardev socket,id=char0,reconnect=0,path=/tmp/vhost4.socket \ > > -device vhost-user-vsock-pci,chardev=char0 > > qemu-system-x86_64: -device vhost-user-vsock-pci,chardev=char0: > > device is modern-only, use disable-legacy=on > > > > virtio-vsock 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, as done for vhost-vsock-pci, removing the need to specify > > 'disable-legacy=on' on vhost-user-vsock-pci device. > > > > Cc: qemu-stable@nongnu.org > > Suggested-by: Cornelia Huck <cohuck@redhat.com> > > Reviewed-by: Cornelia Huck <cohuck@redhat.com> > > Signed-off-by: Stefano Garzarella <sgarzare@redhat.com> > > --- > > v2: > > - fixed commit message [Cornelia] > > --- > > hw/virtio/vhost-user-vsock-pci.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/hw/virtio/vhost-user-vsock-pci.c b/hw/virtio/vhost-user-vsock-pci.c > > index 763f89984e..14109121e2 100644 > > --- a/hw/virtio/vhost-user-vsock-pci.c > > +++ b/hw/virtio/vhost-user-vsock-pci.c > > @@ -41,6 +41,7 @@ static void vhost_user_vsock_pci_realize(VirtIOPCIProxy *vpci_dev, Error **errp) > > VHostUserVSockPCI *dev = VHOST_USER_VSOCK_PCI(vpci_dev); > > DeviceState *vdev = DEVICE(&dev->vdev); > > > > + virtio_pci_force_virtio_1(vpci_dev); > > Maybe add a comment > > /* unlike vhost-vsock, we do not need to care about pre-5.1 compat */ > > > to help when we look at this in the future? Sure, I'll add in v4. > > > qdev_realize(vdev, BUS(&vpci_dev->bus), errp); > > } > > > > @@ -69,7 +70,6 @@ static void vhost_user_vsock_pci_instance_init(Object *obj) > > static const VirtioPCIDeviceTypeInfo vhost_user_vsock_pci_info = { > > .base_name = TYPE_VHOST_USER_VSOCK_PCI, > > .generic_name = "vhost-user-vsock-pci", > > - .transitional_name = "vhost-user-vsock-pci-transitional", > > .non_transitional_name = "vhost-user-vsock-pci-non-transitional", > > .instance_size = sizeof(VHostUserVSockPCI), > > .instance_init = vhost_user_vsock_pci_instance_init, > > Otherwise, > Reviewed-by: Cornelia Huck <cohuck@redhat.com> > Thanks, Stefano
diff --git a/hw/virtio/vhost-user-vsock-pci.c b/hw/virtio/vhost-user-vsock-pci.c index 763f89984e..14109121e2 100644 --- a/hw/virtio/vhost-user-vsock-pci.c +++ b/hw/virtio/vhost-user-vsock-pci.c @@ -41,6 +41,7 @@ static void vhost_user_vsock_pci_realize(VirtIOPCIProxy *vpci_dev, Error **errp) VHostUserVSockPCI *dev = VHOST_USER_VSOCK_PCI(vpci_dev); DeviceState *vdev = DEVICE(&dev->vdev); + virtio_pci_force_virtio_1(vpci_dev); qdev_realize(vdev, BUS(&vpci_dev->bus), errp); } @@ -69,7 +70,6 @@ static void vhost_user_vsock_pci_instance_init(Object *obj) static const VirtioPCIDeviceTypeInfo vhost_user_vsock_pci_info = { .base_name = TYPE_VHOST_USER_VSOCK_PCI, .generic_name = "vhost-user-vsock-pci", - .transitional_name = "vhost-user-vsock-pci-transitional", .non_transitional_name = "vhost-user-vsock-pci-non-transitional", .instance_size = sizeof(VHostUserVSockPCI), .instance_init = vhost_user_vsock_pci_instance_init,