Hi Paolo, Am 06.11.2017 um 12:27 schrieb Paolo Bonzini: > On 06/11/2017 12:09, Stefan Priebe - Profihost AG wrote: >> HI Paolo, >> >> could this patchset be related? > > Uh oh, yes it should. Jason, any ways to fix it? I suppose we need to > disable UFO in the newest machine types, but do we also have to do > (software) UFO in vhost-net and QEMU for migration compatibility?
Any news on this? Greets, Stefan > Thanks, > > Paolo > >> Greets, >> Stefan >> >> Am 06.11.2017 um 10:52 schrieb Stefan Priebe - Profihost AG: >>> Hi Paolo, >>> >>> Am 06.11.2017 um 10:49 schrieb Paolo Bonzini: >>>> On 06/11/2017 10:48, Stefan Priebe - Profihost AG wrote: >>>>> Hi Paolo, >>>>> >>>>> Am 06.11.2017 um 10:40 schrieb Paolo Bonzini: >>>>>> On 06/11/2017 10:38, Stefan Priebe - Profihost AG wrote: >>>>>>> Hello, >>>>>>> >>>>>>> i've upgraded some servers from kernel 4.4 to 4.12 - both running Qemu >>>>>>> 2.9.1. >>>>>>> >>>>>>> If i migrate a VM from a host running kernel 4.4 to a host running 4.12 >>>>>>> i get: >>>>>>> >>>>>>> kvm: virtio-net: saved image requires TUN_F_UFO support >>>>>>> kvm: Failed to load virtio-net-device:tmp >>>>>>> kvm: Failed to load virtio-net:virtio >>>>>>> kvm: error while loading state for instance 0x0 of device >>>>>>> '0000:00:12.0/virtio-net' >>>>>>> kvm: load of migration failed: Invalid argument >>>>>>> >>>>>>> >>>>>>> while migrating from 4.12 to 4.4 works fine. >>>>>>> >>>>>>> Can anybody help? Is this expected? >>>>>> >>>>>> Can you check why peer_has_ufo failed (in hw/net/virtio-net.c)? >>>>> >>>>> May be - how can i archieve this? Patching the code is not a problem if >>>>> you can give me a hint. >>>>> >>>>>> Also, did this ioctl fail when the tap device was set up on the 4.12 >>>>>> destination? >>>>>> int tap_probe_has_ufo(int fd) >>>>>> { >>>>>> unsigned offload; >>>>>> >>>>>> offload = TUN_F_CSUM | TUN_F_UFO; >>>>>> >>>>>> if (ioctl(fd, TUNSETOFFLOAD, offload) < 0) >>>>>> return 0; >>>>>> >>>>>> return 1; >>>>>> } >>>>> >>>>> Should there be any kernel output or how can i detect / check it? >>>> >>>> For both, the simplest answer is probably just using printf. >>> >>> arg i missed an important part. The kernel is an opensuse SLE15 one. >>> >>> I've seen it contains the following patchset: >>> https://www.spinics.net/lists/netdev/msg443821.html >>> >>> Greets, >>> Stefan >>> >