Wednesday, May 9, 2018 2:14 PM, Yongseok Koh: > Subject: [dpdk-dev] [PATCH v2 0/3] net/mlx5: add Multi-Packet Rx support > > Multi-Packet Rx Queue (MPRQ a.k.a Striding RQ) can further save PCIe > bandwidth by posting a single large buffer for multiple packets. Instead of > posting a buffer per a packet, one large buffer is posted in order to receive > multiple packets on the buffer. A MPRQ buffer consists of multiple fixed-size > strides and each stride receives one packet. > > Rx packet is mem-copied to a user-provided mbuf if the size of Rx packet is > comparatively small, or PMD attaches the Rx packet to the mbuf by external > buffer attachment - rte_pktmbuf_attach_extbuf(). A mempool for external > buffers will be allocated and managed by PMD. > > This patchset should be applied after: > net/mlx5: add new Memory Region support >
Series applied to next-net-mlx, thanks. > > v2: > * add mprq_log_stride_num parameter to configure the number of strides. > * enable configuring larger max_rx_pkt_len than the size of user-provided > mbuf. The size of the stride isn't static anymore but dynamically > determined. > * enhance documentation. > * fix issues from review. > > Yongseok Koh (3): > net/mlx5: separate filling Rx flags > net/mlx5: add a function to rdma-core glue > net/mlx5: add Multi-Packet Rx support > > doc/guides/nics/mlx5.rst | 58 +++++ > drivers/net/mlx5/Makefile | 5 + > drivers/net/mlx5/mlx5.c | 83 +++++++ > drivers/net/mlx5/mlx5.h | 11 + > drivers/net/mlx5/mlx5_defs.h | 18 ++ > drivers/net/mlx5/mlx5_ethdev.c | 3 + > drivers/net/mlx5/mlx5_glue.c | 16 ++ > drivers/net/mlx5/mlx5_glue.h | 8 + > drivers/net/mlx5/mlx5_prm.h | 15 ++ > drivers/net/mlx5/mlx5_rxq.c | 494 > ++++++++++++++++++++++++++++++++++++--- > drivers/net/mlx5/mlx5_rxtx.c | 307 +++++++++++++++++++++--- > drivers/net/mlx5/mlx5_rxtx.h | 37 ++- > drivers/net/mlx5/mlx5_rxtx_vec.c | 4 + > drivers/net/mlx5/mlx5_rxtx_vec.h | 3 +- > drivers/net/mlx5/mlx5_trigger.c | 6 +- > 15 files changed, 992 insertions(+), 76 deletions(-) > > -- > 2.11.0