Current mlx5 net PMD and future mlx5(regex,...) PMDs that run and share the same HCAs need to use common memory management driver. Memory management codes embeddedly use multi-process IPC for primary/secondary processes to register and sync on memory registrations MRs. That's the main reason to refactor and move multi-process IPC APIs to mlx5 common driver and make it become the base commit, then refactor and move common MR codes to common driver in subsequent patch.
Vu Pham (2): common/mlx5: refactor multi-process IPC handling codes to common driver common/mlx5: refactor memory management codes drivers/common/mlx5/Makefile | 4 +- drivers/common/mlx5/meson.build | 2 + drivers/common/mlx5/mlx5_common_mp.c | 188 ++++ drivers/common/mlx5/mlx5_common_mp.h | 98 ++ drivers/common/mlx5/mlx5_common_mr.c | 1108 +++++++++++++++++++++ drivers/common/mlx5/mlx5_common_mr.h | 160 ++++ drivers/common/mlx5/rte_common_mlx5_version.map | 27 + drivers/net/mlx5/mlx5.c | 19 +- drivers/net/mlx5/mlx5.h | 55 +- drivers/net/mlx5/mlx5_mp.c | 242 +---- drivers/net/mlx5/mlx5_mr.c | 1169 +---------------------- drivers/net/mlx5/mlx5_mr.h | 87 +- drivers/net/mlx5/mlx5_rxtx.c | 4 +- drivers/net/mlx5/mlx5_rxtx.h | 10 +- drivers/net/mlx5/mlx5_rxtx_vec.h | 2 + drivers/net/mlx5/mlx5_trigger.c | 1 + drivers/net/mlx5/mlx5_txq.c | 3 +- 17 files changed, 1692 insertions(+), 1487 deletions(-) create mode 100644 drivers/common/mlx5/mlx5_common_mp.c create mode 100644 drivers/common/mlx5/mlx5_common_mp.h create mode 100644 drivers/common/mlx5/mlx5_common_mr.c create mode 100644 drivers/common/mlx5/mlx5_common_mr.h -- 2.16.6