It was unspecified what happens to indirect actions when a port is stopped, possibly reconfigured, and started again. MLX5 PMD, the first one to use indirect actions, intended to keep them across such a sequence, but the implementation was buggy. Patches 1-3 fix the PMD behavior, patch 4 adds common specification with rationale.
Dmitry Kozlyuk (4): net/mlx5: discover max flow priority using DevX net/mlx5: create drop queue using DevX net/mlx5: preserve indirect actions across port restart ethdev: document indirect flow action life cycle doc/guides/prog_guide/rte_flow.rst | 10 + drivers/net/mlx5/linux/mlx5_os.c | 5 - drivers/net/mlx5/mlx5_devx.c | 204 +++++++++++++++++--- drivers/net/mlx5/mlx5_flow.c | 292 ++++++++++++++++++++++++++--- drivers/net/mlx5/mlx5_flow.h | 6 + drivers/net/mlx5/mlx5_flow_dv.c | 103 ++++++++++ drivers/net/mlx5/mlx5_flow_verbs.c | 77 +------- drivers/net/mlx5/mlx5_rx.h | 4 + drivers/net/mlx5/mlx5_rxq.c | 99 ++++++++-- drivers/net/mlx5/mlx5_trigger.c | 10 + lib/ethdev/rte_flow.h | 4 + 11 files changed, 680 insertions(+), 134 deletions(-) -- 2.25.1