Implemetation of Shared Rx queue. Depends-on: series-18996 ("ethdev: introduce shared Rx queue") Depends-on: series-18065 ("net/mlx5: keep indirect actions across port restart") Depends-on: series-18939 ("ethdev: change queue release callback")
Xueming Li (11): common/mlx5: support receive queue user index common/mlx5: support receive memory pool net/mlx5: clean Rx queue code net/mlx5: split multiple packet Rq memory pool net/mlx5: split Rx queue net/mlx5: move Rx queue reference count net/mlx5: move Rx queue hairpin info to private data net/mlx5: remove port info from shareable Rx queue net/mlx5: move Rx queue DevX resource net/mlx5: remove Rx queue data list from device net/mlx5: support shared Rx queue doc/guides/nics/features/mlx5.ini | 1 + doc/guides/nics/mlx5.rst | 6 + drivers/common/mlx5/mlx5_common_devx.c | 310 ++++++++++-- drivers/common/mlx5/mlx5_common_devx.h | 19 +- drivers/common/mlx5/mlx5_devx_cmds.c | 52 ++ drivers/common/mlx5/mlx5_devx_cmds.h | 16 + drivers/common/mlx5/mlx5_prm.h | 93 +++- drivers/common/mlx5/version.map | 1 + drivers/net/mlx5/linux/mlx5_os.c | 2 + drivers/net/mlx5/linux/mlx5_verbs.c | 161 +++--- drivers/net/mlx5/mlx5.c | 11 +- drivers/net/mlx5/mlx5.h | 17 +- drivers/net/mlx5/mlx5_devx.c | 249 ++++----- drivers/net/mlx5/mlx5_ethdev.c | 16 +- drivers/net/mlx5/mlx5_flow.c | 45 +- drivers/net/mlx5/mlx5_mr.c | 7 +- drivers/net/mlx5/mlx5_rss.c | 6 +- drivers/net/mlx5/mlx5_rx.c | 31 +- drivers/net/mlx5/mlx5_rx.h | 49 +- drivers/net/mlx5/mlx5_rxq.c | 618 ++++++++++++++++------- drivers/net/mlx5/mlx5_rxtx.c | 6 +- drivers/net/mlx5/mlx5_rxtx_vec.c | 8 +- drivers/net/mlx5/mlx5_stats.c | 9 +- drivers/net/mlx5/mlx5_trigger.c | 161 +++--- drivers/net/mlx5/mlx5_vlan.c | 16 +- drivers/regex/mlx5/mlx5_regex_fastpath.c | 2 +- 26 files changed, 1289 insertions(+), 623 deletions(-) -- 2.33.0