[dpdk-dev] [PATCH v2 00/16] Enhance mlx5 with Mellanox OFED 3.1
Adrien Mazarguil
adrien.mazarguil at 6wind.com
Fri Oct 30 19:55:03 CET 2015
Mellanox OFED 3.1 [1] comes with improved APIs that Mellanox ConnectX-4
(mlx5) adapters can take advantage of, such as:
- Separate post and doorbell operations on all queues.
- Lightweight RX queues called Work Queues (WQs).
- Low-level RSS indirection table and hash key configuration.
This patchset enhances mlx5 with all of these for better performance and
flexibility. Documentation is updated accordingly.
[1] http://www.mellanox.com/page/products_dyn?product_family=26&mtag=linux_sw_drivers
Changes in v2:
- Fixed compilation errors due to a missing libibverbs callback in the first
two commits.
- Improved clean up in device stop function.
- Added flows clean up when going promiscuous to save HW resources.
- Removed VF check in promiscuous mode.
- Added RSS support for IPv6 flows.
- Renamed flow specification generator function.
- Modified allmulticast code to use enhanced flow specifications.
- Remaining changes are caused by rebase on v2 of the initial patchset
("Mellanox ConnectX-4 PMD (mlx5)").
Adrien Mazarguil (7):
mlx5: use fast Verbs interface for scattered RX operation
mlx5: get rid of the WR structure in RX queue elements
mlx5: refactor RX code for the new Verbs RSS API
app/testpmd: fix missing initialization in the RSS hash show command
mlx5: add IPv6 RSS support using experimental flows
mlx5: enable multi packet send WR in TX CQ
doc: update mlx5 documentation
Nelio Laranjeiro (5):
mlx5: adapt indirection table size depending on RX queues number
mlx5: add RSS hash update/get
mlx5: use one RSS hash key per flow type
app/testpmd: add missing type to RSS hash commands
mlx5: disable useless flows in promiscuous mode
Olga Shern (3):
mlx5: use separate indirection table for default hash RX queue
mlx5: define specific flow steering rules for each hash RX QP
mlx5: use alternate method to configure promisc and allmulti modes
Yaacov Hazan (1):
mlx5: fix compilation error with GCC < 4.6
app/test-pmd/cmdline.c | 45 +-
app/test-pmd/config.c | 69 +-
app/test-pmd/testpmd.h | 6 +-
doc/guides/nics/mlx5.rst | 26 +
doc/guides/testpmd_app_ug/testpmd_funcs.rst | 2 +-
drivers/net/mlx5/Makefile | 14 +-
drivers/net/mlx5/mlx5.c | 67 +-
drivers/net/mlx5/mlx5.h | 54 +-
drivers/net/mlx5/mlx5_defs.h | 3 +
drivers/net/mlx5/mlx5_ethdev.c | 54 +-
drivers/net/mlx5/mlx5_mac.c | 212 +++---
drivers/net/mlx5/mlx5_rss.c | 213 ++++++
drivers/net/mlx5/mlx5_rxmode.c | 313 +++++----
drivers/net/mlx5/mlx5_rxq.c | 1012 ++++++++++++++++++---------
drivers/net/mlx5/mlx5_rxtx.c | 68 +-
drivers/net/mlx5/mlx5_rxtx.h | 97 ++-
drivers/net/mlx5/mlx5_trigger.c | 87 +--
drivers/net/mlx5/mlx5_txq.c | 7 +
drivers/net/mlx5/mlx5_utils.h | 2 -
drivers/net/mlx5/mlx5_vlan.c | 33 +-
20 files changed, 1532 insertions(+), 852 deletions(-)
create mode 100644 drivers/net/mlx5/mlx5_rss.c
--
2.1.0
More information about the dev
mailing list