Hi Jens,

> -----Original Message-----
> From: Jens Freimann <jfreim...@redhat.com>
> Sent: Tuesday, October 29, 2019 6:49 AM
> To: qemu-devel@nongnu.org
> Cc: ehabk...@redhat.com; m...@redhat.com; berra...@redhat.com;
> la...@redhat.com; aa...@redhat.com; ai...@redhat.com; Parav Pandit
> <pa...@mellanox.com>; dgilb...@redhat.com; alex.william...@redhat.com;
> arm...@redhat.com; ebl...@redhat.com; jasow...@redhat.com;
> quint...@redhat.com; pbonz...@redhat.com
> Subject: [PATCH v7 0/11] add failover feature for assigned network devices
> 
> This is implementing the host side of the net_failover concept
> (https://www.kernel.org/doc/html/latest/networking/net_failover.html)
> 
> Changes since v6:
> * reword patch description of 06/11 (Markus)
> * have qemu_savevm_state_guest_unplug_pending() return true when at
>   least one device is still not unplugged (Dave)
> 
> The general idea is that we have a pair of devices, a vfio-pci and a 
> virtio-net
> device. Before migration the vfio device is unplugged and data flows to the
> virtio-net device, on the target side another vfio-pci device is plugged in 
> to take
> over the data-path. In the guest the net_failover module will pair net devices
> with the same MAC address.
> 
> * Patch 1 adds the infrastructure to hide the device for the qbus and qdev 
> APIs
> 
> * Patch 2 adds checks to PCIDevice for only allowing ethernet devices as
>   failover primary and only PCIExpress capable devices
> 
> * Patch 3 sets a new flag for PCIDevice 'partially_hotplugged' which we
>   use to skip the unrealize code path when doing a unplug of the primary
>   device
> 
> * Patch 4 sets the pending_deleted_event before triggering the guest
>   unplug request
> 
> * Patch 5 and 6 add new qmp events, one sends the device id of a device
>   that was just requested to be unplugged from the guest and another one
>   to let libvirt know if VIRTIO_NET_F_STANDBY was negotiated
> 
> * Patch 7 make sure that we can unplug the vfio-device before
>   migration starts
> 
> * Patch 8 adds a new migration state that is entered while we wait for
>   devices to be unplugged by guest OS
> 
> * Patch 9 just adds the new migration state to a check in libqos code
> 
> * Patch 10 In the second patch the virtio-net uses the API to defer adding the
> vfio
>   device until the VIRTIO_NET_F_STANDBY feature is acked. It also
>   implements the migration handler to unplug the device from the guest and
>   re-plug in case of migration failure
> 
> * Patch 11 allows migration for failover vfio-pci devices
> 

Patches are great to see failover capability enabled on the netdevice.
However it's very difficult to test it without having libvirt support.
Can we please have the necessary libvirt enhancements?
I will be able to test it with Mellanox ConnectX5 device + qemu + libvirt.

[..]


Reply via email to