This series cleanups the control plane part and the way it uses the different kind of objects (DPDK queues, Verbs Queues, ...). It has three goals:
1. Reduce the memory usage by sharing all possible objects. 2. Leave the configuration to the control plane and the creation/destruction of queues to the dev_start/dev_stop() to have a better control on object and easily apply the configuration. 3. Create all flows through the generic flow API, it will also help to implement a detection collision algorithm as all flows are using the same service and thus the same kind of object. Nelio Laranjeiro (21): net/mlx5: merge action and flow parser structure net/mlx5: remove flow director support net/mlx5: prefix Rx queue control structures net/mlx5: prefix Tx control queue structures net/mlx5: remove redundant started flag net/mlx5: verify all flows are been removed on close net/mlx5: add reference counter on memory region net/mlx5: separate DPDK from Verbs Rx queue objects net/mlx5: separate DPDK from Verbs Tx queue objects net/mlx5: add reference counter on DPDK Tx queues net/mlx5: add reference counter on DPDK Rx queues net/mlx5: remove queue drop support net/mlx5: make indirection tables sharable net/mlx5: add Hash Rx queue object net/mlx5: disable priority protection in flows net/mlx5: use flow to enable promiscuous mode net/mlx5: use flow to enable all multi mode net/mlx5: use flow to enable unicast traffic net/mlx5: handle a single RSS hash key for all protocols net/mlx5: remove hash Rx queues support net/mlx5: support RSS hash configuration in generic flow action doc/guides/nics/features/mlx5.ini | 1 - doc/guides/nics/mlx5.rst | 2 - drivers/net/mlx5/Makefile | 1 - drivers/net/mlx5/mlx5.c | 91 +- drivers/net/mlx5/mlx5.h | 85 +- drivers/net/mlx5/mlx5_defs.h | 3 - drivers/net/mlx5/mlx5_ethdev.c | 16 +- drivers/net/mlx5/mlx5_fdir.c | 1094 ------------------- drivers/net/mlx5/mlx5_flow.c | 1009 ++++++++++-------- drivers/net/mlx5/mlx5_mac.c | 403 +------ drivers/net/mlx5/mlx5_mr.c | 229 ++-- drivers/net/mlx5/mlx5_rss.c | 127 +-- drivers/net/mlx5/mlx5_rxmode.c | 376 +------ drivers/net/mlx5/mlx5_rxq.c | 1929 ++++++++++++++++------------------ drivers/net/mlx5/mlx5_rxtx.c | 39 +- drivers/net/mlx5/mlx5_rxtx.h | 285 +++-- drivers/net/mlx5/mlx5_rxtx_vec_sse.c | 35 +- drivers/net/mlx5/mlx5_stats.c | 4 +- drivers/net/mlx5/mlx5_trigger.c | 301 +++++- drivers/net/mlx5/mlx5_txq.c | 711 ++++++++----- drivers/net/mlx5/mlx5_utils.h | 2 + drivers/net/mlx5/mlx5_vlan.c | 61 +- 22 files changed, 2695 insertions(+), 4109 deletions(-) delete mode 100644 drivers/net/mlx5/mlx5_fdir.c -- 2.1.4