v2: - Fixed commit message in patche 1 and 2 [Cornelia] - Added Cornelia's R-b tags in all patches
v1: https://lists.gnu.org/archive/html/qemu-devel/2020-08/msg04373.html Recenlty changes in QEMU 5.1 requires to set 'disable-legacy=on' on vhost-vsock-pci and vhost-user-vsock-pci devices: $ ./qemu-system-x86_64 ... -device vhost-vsock-pci,guest-cid=5 qemu-system-x86_64: -device vhost-vsock-pci,guest-cid=5: device is modern-only, use disable-legacy=on As discussed with Cornelia [1], this series force virtio version 1 to vhost-vsock-pci, vhost-user-vsock-pci, and vhost-vsock-ccw devices. virtio-vsock was introduced after the release of VIRTIO 1.0 specifications, so it should be 'modern-only'. In addition Cornelia verified that forcing a legacy mode on vhost-vsock-pci device using x86-64 host and s390x guest, so with different endianness, produces strange behaviours. About migration, QEMU 5.1 already requires that the source and destination specify 'disable-legacy=on', otherwise the migration fails in this way: qemu-system-x86_64: get_pci_config_device: Bad config data: i=0x2 read: 12 device: 53 cmask: ff wmask: 0 w1cmask:0 qemu-system-x86_64: Failed to load PCIDevice:config qemu-system-x86_64: Failed to load virtio-vhost_vsock:virtio qemu-system-x86_64: error while loading state for instance 0x0 of device '0000:00:03.0/virtio-vhost_vsock' qemu-system-x86_64: load of migration failed: Invalid argument With this series applied there is the same requirements. Alternatively we have to detach and re-attach the device manually. Thanks, Stefano [1] https://lists.nongnu.org/archive/html/qemu-devel/2020-08/msg02515.html Stefano Garzarella (3): vhost-vsock-pci: force virtio version 1 vhost-user-vsock-pci: force virtio version 1 vhost-vsock-ccw: force virtio version 1 hw/s390x/vhost-vsock-ccw.c | 2 ++ hw/virtio/vhost-user-vsock-pci.c | 2 +- hw/virtio/vhost-vsock-pci.c | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) -- 2.26.2
