This patch set contains multiple-thread flow operations support for the flow objects.
Suanming Mou (19): net/mlx5: use thread safe index pool for flow objects net/mlx5: make meter action thread safe net/mlx5: make VLAN network interface thread safe net/mlx5: create global jump action net/mlx5: create global default miss action net/mlx5: create global drop action net/mlx5: add flow table tunnel offload attribute net/mlx5: fix redundant Direct Verbs resources allocate net/mlx5: remove unused mreg copy code net/mlx5: make header reformat action thread safe net/mlx5: optimize shared RSS list operation net/mlx5: make Rx queue thread safe net/mlx5: simplify sample attributes net/mlx5: fix sample register error flow net/mlx5: make sample and mirror action thread safe net/mlx5: make tunnel offloading table thread safe net/mlx5: remove unused hash list operations net/mlx5: make tunnel hub list thread safe net/mlx5: make shared action list thread safe Xueming Li (15): net/mlx5: use thread specific flow workspace net/mlx5: reuse flow Id as hairpin Id net/mlx5: indexed pool supports zero size entry net/mlx5: use indexed pool as ID generator net/mlx5: make rte flow list thread safe net/mlx5: support concurrent access for hash list net/mlx5: make flow table cache thread safe net/mlx5: make flow tag list thread safe net/mlx5: make flow modify action list thread safe net/mlx5: make metadata copy flow list thread safe net/mlx5: introduce thread safe linked list cache net/mlx5: make matcher list thread safe net/mlx5: make port ID action cache thread safe net/mlx5: make push VLAN action cache thread safe net/mlx5: remove shared context lock --- v5: - fix table refcnt leak issue. v4: - rebase the code on top of the latest code to fix the conflict. v3: - rebase the code on top of the new added features. - New feature code adaption for multiple-thread support. v2: - fix review comments. - remove unused mreg copy code. - drop the sh lock removing patch as new feature still not fully updated. --- doc/guides/nics/mlx5.rst | 1 + doc/guides/rel_notes/release_20_11.rst | 1 + drivers/common/mlx5/linux/mlx5_nl.h | 1 + drivers/net/mlx5/linux/mlx5_os.c | 119 +- drivers/net/mlx5/linux/mlx5_vlan_os.c | 5 + drivers/net/mlx5/mlx5.c | 278 +--- drivers/net/mlx5/mlx5.h | 69 +- drivers/net/mlx5/mlx5_flow.c | 756 +++++------ drivers/net/mlx5/mlx5_flow.h | 164 ++- drivers/net/mlx5/mlx5_flow_dv.c | 2259 ++++++++++++++------------------ drivers/net/mlx5/mlx5_flow_meter.c | 72 +- drivers/net/mlx5/mlx5_flow_verbs.c | 86 +- drivers/net/mlx5/mlx5_rxq.c | 302 +++-- drivers/net/mlx5/mlx5_rxtx.h | 23 +- drivers/net/mlx5/mlx5_utils.c | 345 ++++- drivers/net/mlx5/mlx5_utils.h | 320 ++++- 16 files changed, 2464 insertions(+), 2337 deletions(-) -- 1.8.3.1