From: Michael Baum <michae...@nvidia.com> These patches add support to external Rx queues. External queue is a queue that is managed by a process external to DPDK, but uses DPDK process to generate its flow rules.
For the hardware to allow the DPDK process to set rules for it, the process needs to use the same PD of the external process. In addition, the indexes of the queues in hardware are represented by 32-bit compared to the rte_flow indexes represented by 16-bit, so the processes need to share some mapping between the indexes. These patches allow the external process to provide devargs which enable importing its context and PD, instead of prepare new ones. In addition, an API is provided for mapping for the indexes of the queues. Michael Baum (3): common/mlx5: glue device and PD importation common/mlx5: add shared PD support net/mlx5: add external Rx queue drivers/common/mlx5/linux/mlx5_common_os.c | 160 +++++++++++++++++-- drivers/common/mlx5/linux/mlx5_common_os.h | 6 - drivers/common/mlx5/linux/mlx5_glue.c | 21 +++ drivers/common/mlx5/linux/mlx5_glue.h | 4 + drivers/common/mlx5/mlx5_common.c | 32 ++-- drivers/common/mlx5/mlx5_common.h | 6 +- drivers/common/mlx5/windows/mlx5_common_os.c | 29 +++- drivers/common/mlx5/windows/mlx5_common_os.h | 1 - drivers/net/mlx5/mlx5_rx.h | 6 + drivers/net/mlx5/rte_pmd_mlx5.h | 45 ++++++ 10 files changed, 272 insertions(+), 38 deletions(-) -- 2.25.1