On 3/8/2017 3:15 PM, Gaetan Rivet wrote: > This PMD intercepts and manages Ethernet device removal events issued by > slave PMDs and re-initializes them transparently when brought back so that > existing applications do not need to be modified to benefit from true > hot-plugging support. > > The stacked PMD approach shares many similarities with the bonding PMD but > with a different purpose. While bonding provides the ability to group > several links into a single logical device for enhanced throughput and > supports fail-over at link level, this one manages the sudden disappearance > of the underlying device; it guarantees applications face a valid device in > working order at all times. > > Each fail-safe instance is configured to run atop one or several > devices, with one defined as the preferred device. Hot-plug events are > handled on all of them, and Tx is always directed to the preferred device > if present or to the next available failover device (Rx is always performed > on all devices for simplicity). > > Moreover, the configured slaves (preferred or failover) do not need to be > present at initialization time and may appear later. > > Slaves configuration is continuously synchronized with that of the virtual > device, which exposes their common set of capabilities to the application. > Failure to apply the current configuration state to a slave for any reason > simply reschedules its initialization. > > This series depends on the series > [PATCH 0/4] clarify eth_dev state management > [PATCH 0/5] add device removal event > > v1 --> v2: > > - Wrote documentation > - Fixed commit logs, signed-off-by > - Added LSC event support > - A few minor fixes > > Gaetan Rivet (13): > ethdev: save VLAN filter setting > ethdev: add flow API rule copy function > ethdev: add deferred intermediate device state > pci: expose device detach routine > pci: expose parse and probe routines > net/failsafe: add fail-safe PMD > net/failsafe: add plug-in support > net/failsafe: add flexible device definition > net/failsafe: support flow API > net/failsafe: support offload capabilities > net/failsafe: add fast burst functions > net/failsafe: support device removal > net/failsafe: support link status change event
Postponed to next release (17.08) based on tech board decision [1] [1] http://dpdk.org/ml/archives/dev/2017-March/061009.html