[dpdk-dev] [PATCH v2 0/5] net/qede: fixes and enhancement

Shahed Shaikh shshaikh at marvell.com
Thu Sep 12 17:24:11 CEST 2019

First four patches are part of a fix for the ovs-dpdk issue
with 100Gb NIC [1].
Fifth patch adds support for drop action in rte_flow.

As per HW design of 100Gb mode, device internally uses 2 engines
(eng0 and eng1), and both engines need to be configured symmetrically.
Based on this requirement, driver design chose an approach
to allow user to allocate only even number of queues and split
those queues on both engines equally.

This approach puts a limitation on number of queues to be allocated -
i.e. user can't configure odd number of queues on 100Gb mode.
OVS configures DPDK port with 1 rxq and 1 txq, which causes initialization
of qede port to fail.

This patch series changes the implementation of queue allocation method
for 100Gb devices by removing above mentioned limitation and allowing
user to configure odd number of queues.

Fix is split into 4 logical patches -
 - First patch refactors Rx and Tx queue setup code to lay a foundation
   for actual fix.
 - Second patch actually implements a new approach to fix the issue.
 - Third patch fixes RSS configuration w.r.t. new approach.
 - Fourth patch fixes statistics code impacted due to new approach.

change in v2:
Fixed compilation failure from patch 2 on clang compiler.

Shahed Shaikh (5):
  net/qede: refactor Rx and Tx queue setup
  net/qede: fix ovs-dpdk failure when using odd number of queues on
    100Gb mode
  net/qede: fix RSS configuration as per new 100Gb queue allocation
  net/qede: fix stats flow as per new 100Gb queue allocation method
  net/qede: implement rte_flow drop action

 doc/guides/nics/qede.rst              |  39 +++
 drivers/net/qede/base/ecore_dev_api.h |   1 +
 drivers/net/qede/base/ecore_l2.c      |  50 ++--
 drivers/net/qede/base/ecore_l2_api.h  |  39 ++-
 drivers/net/qede/qede_ethdev.c        | 331 +++++++++++------------
 drivers/net/qede/qede_ethdev.h        |   6 +-
 drivers/net/qede/qede_filter.c        |  27 +-
 drivers/net/qede/qede_rxtx.c          | 361 +++++++++++++++++++-------
 drivers/net/qede/qede_rxtx.h          |  26 +-
 9 files changed, 549 insertions(+), 331 deletions(-)


More information about the dev mailing list