On Tue, Oct 15, 2019 at 01:03:17PM -0600, Alex Williamson wrote: > On Fri, 11 Oct 2019 13:20:05 +0200 > Jens Freimann <jfreim...@redhat.com> wrote: > > > This is implementing the host side of the net_failover concept > > (https://www.kernel.org/doc/html/latest/networking/net_failover.html) > > > > Changes since v2: > > * back out of creating failover pair when it is a non-networking > > vfio-pci device (Alex W) > > * handle migration state change from within the migration thread. I do a > > timed wait on a semaphore and then check if all unplugs were > > succesful. Added a new function to each device that checks the device > > if the unplug for it has happened. When all devices report the succesful > > unplug *or* the time/retries is up, continue with the migration or > > cancel. When not all devices could be unplugged I am cancelling at the > > moment. It is likely that we can't plug it back at the destination which > > would result in degraded network performance. > > * fix a few bugs regarding re-plug on migration source and target > > * run full set of tests including migration tests > > * add patch for libqos to tolerate new migration state > > * squashed patch 1 and 2, added patch 8 > > > > 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 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 3 sets the pending_deleted_event before triggering the guest > > unplug request > > These only cover pcie hotplug, is this feature somehow dependent on > pcie? There's also ACPI-based PCI hotplug, SHPC hotplug, and it looks > like s390 has it's own version (of course) of PCI hotplug. IMO, we > either need to make an attempt to support this universally or the > option needs to fail if the hotplug controller doesn't support partial > removal. Thanks, > > Alex
Alex, could you please comment a bit more on vfio patches? Besides what you point out here, any other issues? -- MST