This series collects fixes for the fail-safe PMD found while testing
live migration of a VF-backed sub-device (iavf) paired with a virtio-net
standby sub-device.

- double release of the sub-device port on hot-unplug;
- NULL queue-release op on sub-devices that do not implement it;
- MAC address pool size off-by-one and replay of zeroed MAC slots;
- unsupported link-status control (-ENOTSUP) treated as fatal;
- Rx/Tx burst still polling a removed sub-device: the fast-path ops are
  copied into rte_eth_fp_ops at start, so swapping the burst functions
  at runtime had no effect;
- sub-device removal not detected without the RMV interrupt (e.g. VFIO
  device release), now handled through a bus device-event callback.

v3:
- Split the removal-detection change (v2 patch 5/5) into a fix for the
  Rx/Tx burst path (5/6) and the new device-event based detection (6/6).
- Patch 1/6: reword and drop the redundant braces; the port is already
  released by rte_eth_dev_close() or rte_dev_remove().
- Patch 2/6: correct the Fixes tag to the fail-safe PMD commit and drop
  the unneeded ETH(sdev) != NULL check.
- Patch 5/6: new, the actual crash fix for the burst path.
- Patch 6/6: simplify the device-event callback and note that the bus
  delivers the event automatically for VFIO.

v2:
- Added an ETH(sdev) != NULL check (removed again in v3).
- Clarified secondary-process detection in a comment.


Sandeep Penigalapati (6):
  net/failsafe: fix double release of sub-device port
  net/failsafe: fix queue release without sub-device op
  net/failsafe: fix MAC address pool size and replay
  net/failsafe: ignore unsupported link status update
  net/failsafe: fix Rx/Tx burst after sub-device removal
  net/failsafe: detect sub-device removal via device event

 drivers/net/failsafe/failsafe_ether.c   | 42 ++++++++++---
 drivers/net/failsafe/failsafe_ops.c     | 27 +++++++-
 drivers/net/failsafe/failsafe_private.h | 13 ++--
 drivers/net/failsafe/failsafe_rxtx.c    | 83 +------------------------
 4 files changed, 65 insertions(+), 100 deletions(-)

-- 
2.34.1

Reply via email to