[Pull Request][jammy] Add OVS Internal Port HW Offload to mlx5 driver

Zachary Tahenakos zachary.tahenakos at canonical.com
Thu Aug 4 13:05:42 UTC 2022

BugLink: https://bugs.launchpad.net/bugs/1983498

SRU Justification


A request has been made, originating from
https://bugs.launchpad.net/bugs/1980730, to add support for OVS internal
port offload for the mlx5 driver. This feature takes care of certain
traffic workloads that are not currently being offloaded to the hardware.

[Test Case]

Tested by the requester.

[Where things could go wrong]

These changes could potentially introduce regressions in behavior of the
mlx5 driver.

The following changes since commit 4cc5e60c9399a10400737bda19312574b5a5c7a2:

  UBUNTU: Ubuntu-5.15.0-45.48 (2022-07-19 18:57:17 -0300)

are available in the Git repository at:


for you to fetch changes up to 5195a9ae669b266eb35cd8ee604923d4c5e5058a:

  net/mlx5e: TC, fix decap fallback to uplink when int port not supported
(2022-08-03 15:10:10 -0400)

Ariel Levkovich (11):
      net/mlx5e: Refactor rx handler of represetor device
      net/mlx5e: Use generic name for the forwarding dev pointer
      net/mlx5: E-Switch, Add ovs internal port mapping to metadata support
      net/mlx5e: Accept action skbedit in the tc actions list
      net/mlx5e: Offload tc rules that redirect to ovs internal port
      net/mlx5e: Offload internal port as encap route device
      net/mlx5e: Add indirect tc offload of ovs internal port
      net/mlx5e: Term table handling of internal port rules
      net/mlx5: Support internal port as decap route device
      net/mlx5e: Fix wrong source vport matching on tunnel rule
      net/mlx5e: TC, fix decap fallback to uplink when int port not

Christophe JAILLET (1):
      net/mlx5: Fix some error handling paths in 'mlx5e_tc_add_fdb_flow()'

Dima Chumak (2):
      net/mlx5e: Enable TC offload for ingress MACVLAN
      net/mlx5e: Fix nullptr on deleting mirroring rule

Gal Pressman (1):
      net/mlx5e: Fix skb memory leak when TC classifier action offloads are

Roi Dayan (2):
      net/mlx5e: TC, Fix memory leak with rules with internal port
      net/mlx5e: Avoid implicit modify hdr for decap drop rule

Vlad Buslov (1):
      net/mlx5e: Support accept action

 drivers/net/ethernet/mellanox/mlx5/core/Makefile   |   2 +-
 .../net/ethernet/mellanox/mlx5/core/en/rep/tc.c    | 132 ++++--
 .../net/ethernet/mellanox/mlx5/core/en/rep/tc.h    |  14 +-
 .../ethernet/mellanox/mlx5/core/en/tc/int_port.c   | 457
 .../ethernet/mellanox/mlx5/core/en/tc/int_port.h   |  65 +++
 .../net/ethernet/mellanox/mlx5/core/en/tc_priv.h   |   2 +
 .../net/ethernet/mellanox/mlx5/core/en/tc_tun.c    |  33 +-
 .../ethernet/mellanox/mlx5/core/en/tc_tun_encap.c  |  35 ++
 drivers/net/ethernet/mellanox/mlx5/core/en_rep.c   |  13 +-
 drivers/net/ethernet/mellanox/mlx5/core/en_rep.h   |   4 +
 drivers/net/ethernet/mellanox/mlx5/core/en_rx.c    |  22 +-
 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c    | 205 ++++++++-
 drivers/net/ethernet/mellanox/mlx5/core/en_tc.h    |  11 +-
 drivers/net/ethernet/mellanox/mlx5/core/eswitch.h  |  16 +
 .../ethernet/mellanox/mlx5/core/eswitch_offloads.c |  84 ++--
 .../mellanox/mlx5/core/eswitch_offloads_termtbl.c  |   7 +-
 16 files changed, 998 insertions(+), 104 deletions(-)
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en/tc/int_port.c
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en/tc/int_port.h
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20220804/518ccf6c/attachment.html>

More information about the kernel-team mailing list