12/02/2018 19:42, Gaëtan Rivet:
> Hi Matan,
> On Sun, Feb 11, 2018 at 05:27:34PM +0000, Matan Azrad wrote:
> > Fail-safe PMD manages the states of its sub-devices gradually:
> > DEV_UNDEFINED, DEV_PARSED, DEV_PROBED, DEV_ACTIVE, DEV_STARTED.
> > When the sub-device arguments successfully was parsed, the state is
> > raised from DEV_UNDEFINED to DEV_PARSED.
> > When the sub-device successfully was probed, the state is raised from
> > DEV_PARSED to DEV_PROBED.
> > When the sub-device successfully was configured by
> > rte_eth_dev_configure(), the state is raised from DEV_PROBED to
> > DEV_ACTIVE.
> > When the sub-device successfully was started by rte_eth_dev_start(), the
> > state is raised from DEV_ACTIVE to DEV_STARTED.
> > When the sub-device successfully was stopped by rte_eth_dev_stop(), the
> > state is degraded from DEV_STARTED to DEV_ACTIVE.
> > When the sub-device successfully was closed by rte_eth_dev_close(), the
> > state is degraded from DEV_ACTIVE to DEV_PROBED.
> > When the sub-device successfully was removed by
> > rte_eal_hotplug_remove(), the state is degraded from DEV_PROBED to
> > DEV_UNDEFINED.
> > Fail-safe dev_configure() operation calls to its sub-devices
> > dev_configure() operation, but only for sub-devices which are in
> > DEV_PROBED state, means that sub-devices which are in DEV_ACTIVE state
> > because the application triggered dev_stop() operation cannot be
> > reconfigured again by dev_configure() operation which is really
> > problematic when application wants to reconfigure its ports.
> > Actually, the application may get success report when some of the
> > sub-devices are not in the wanted configuration.
> > The current behavior of fail-safe dev_configure() is correct only for
> > the first time dev_configure() is triggered by the application or for
> > sub-device synchronization in plug-in event, but it ignores the option
> > for reconfiguration from application side.
> > Allow calling to sub-devices dev_configure() operations also in
> > DEV_ACTIVE state when the call was triggered by the application.
> > Fixes: a46f8d584eb8 ("net/failsafe: add fail-safe PMD")
> > Cc: sta...@dpdk.org
> > Signed-off-by: Matan Azrad <ma...@mellanox.com>
> The commit log is too verbose, but otherwise the issue is real and the
> fix correct.
> Acked-by: Gaetan Rivet <gaetan.ri...@6wind.com>