[dpdk-dev] [PATCH v6 00/25] Refactor mlx5 to improve performance

Nelio Laranjeiro nelio.laranjeiro at 6wind.com
Fri Jun 24 10:50:36 CEST 2016


Enhance mlx5 with a data path that bypasses Verbs.

The first half of this patchset removes support for functionality completely
rewritten in the second half (scatter/gather, inline send), while the data
path is refactored without Verbs.

The PMD remains usable during the transition.

This patchset must be applied after "Miscellaneous fixes for mlx4 and mlx5".

Changes in v6:
- None.

Changes in v5:
- Fixed checkpatches errors.

Changes in v4:
- Fixed errno return value of mlx5_args().
- Fixed long line above 80 characters.

Changes in v3:
- Rebased patchset on top of next-net/rel_16_07.

Changes in v2:
- Rebased patchset on top of dpdk/master.
- Fixed CQE size on Power8.
- Fixed mbuf assertion failure in debug mode.
- Fixed missing class_id field in rte_pci_id by using RTE_PCI_DEVICE.


Adrien Mazarguil (7):
  mlx5: replace countdown with threshold for Tx completions
  mlx5: add debugging information about Tx queues capabilities
  mlx5: check remaining space while processing Tx burst
  mlx5: resurrect Tx gather support
  mlx5: work around spurious compilation errors
  mlx5: remove redundant Rx queue initialization code
  mlx5: make Rx queue reinitialization safer

Nelio Laranjeiro (17):
  drivers: fix PCI class id support
  mlx5: split memory registration function
  mlx5: remove Tx gather support
  mlx5: remove Rx scatter support
  mlx5: remove configuration variable
  mlx5: remove inline Tx support
  mlx5: split Tx queue structure
  mlx5: split Rx queue structure
  mlx5: update prerequisites for upcoming enhancements
  mlx5: add definitions for data path without Verbs
  mlx5: add support for configuration through kvargs
  mlx5: add Tx/Rx burst function selection wrapper
  mlx5: refactor Rx data path
  mlx5: refactor Tx data path
  mlx5: handle Rx CQE compression
  mlx5: add support for multi-packet send
  mlx5: resurrect Rx scatter support

Yaacov Hazan (1):
  mlx5: add support for inline send

 config/common_base                     |    2 -
 doc/guides/nics/mlx5.rst               |   94 +-
 drivers/crypto/qat/rte_qat_cryptodev.c |    5 +-
 drivers/net/mlx4/mlx4.c                |   18 +-
 drivers/net/mlx5/Makefile              |   49 +-
 drivers/net/mlx5/mlx5.c                |  185 ++-
 drivers/net/mlx5/mlx5.h                |   10 +
 drivers/net/mlx5/mlx5_defs.h           |   26 +-
 drivers/net/mlx5/mlx5_ethdev.c         |  195 ++-
 drivers/net/mlx5/mlx5_fdir.c           |   20 +-
 drivers/net/mlx5/mlx5_mr.c             |  283 ++++
 drivers/net/mlx5/mlx5_prm.h            |  163 +++
 drivers/net/mlx5/mlx5_rxmode.c         |    8 -
 drivers/net/mlx5/mlx5_rxq.c            |  767 ++++-------
 drivers/net/mlx5/mlx5_rxtx.c           | 2232 +++++++++++++++++++-------------
 drivers/net/mlx5/mlx5_rxtx.h           |  176 ++-
 drivers/net/mlx5/mlx5_txq.c            |  370 +++---
 drivers/net/mlx5/mlx5_vlan.c           |    6 +-
 drivers/net/nfp/nfp_net.c              |   12 +-
 19 files changed, 2670 insertions(+), 1951 deletions(-)
 create mode 100644 drivers/net/mlx5/mlx5_mr.c
 create mode 100644 drivers/net/mlx5/mlx5_prm.h

-- 
2.1.4



More information about the dev mailing list