lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20221109163426.76164-1-nbd@nbd.name>
Date:   Wed,  9 Nov 2022 17:34:14 +0100
From:   Felix Fietkau <nbd@....name>
To:     netdev@...r.kernel.org, Matthias Brugger <matthias.bgg@...il.com>
Cc:     Vladimir Oltean <olteanv@...il.com>,
        linux-arm-kernel@...ts.infradead.org,
        linux-mediatek@...ts.infradead.org
Subject: [PATCH net-next v2 00/12] Multiqueue + DSA untag support + fixes for mtk_eth_soc

This series contains multiple improvements for mtk_eth_soc:

On devices with QDMA (MT7621 and newer), multiqueue support is implemented
by using the SoC's traffic shaper function, which sits on the DMA engine.
The driver exposes traffic shaper queues as network stack queues and configures
them to the link speed limit. This fixes an issue where traffic to slower ports
would drown out traffic to faster ports. It also fixes packet drops and jitter
when running hardware offloaded traffic alongside traffic from the CPU.

On MT7622, the DSA tag for MT753x switches can be untagged by the DMA engine,
which removes the need for header mangling in the DSA tag driver.

This is implemented by letting DSA skip the tag receive function, if the port
is passed via metadata dst type METADATA_HW_PORT_MUX

Also part of this series are a number of fixes to TSO/SG support

Changes in v2:
- drop the use of skb vlan tags to pass the port information to the tag driver,
  use metadata_dst instead
- fix a small issue in enabling untag

Felix Fietkau (12):
  net: ethernet: mtk_eth_soc: account for vlan in rx header length
  net: ethernet: mtk_eth_soc: increase tx ring side for QDMA devices
  net: ethernet: mtk_eth_soc: avoid port_mg assignment on MT7622 and
    newer
  net: ethernet: mtk_eth_soc: implement multi-queue support for per-port
    queues
  net: dsa: tag_mtk: assign per-port queues
  net: ethernet: mediatek: ppe: assign per-port queues for offloaded
    traffic
  net: ethernet: mtk_eth_soc: compile out netsys v2 code on mt7621
  net: dsa: add support for DSA rx offloading via metadata dst
  net: ethernet: mtk_eth_soc: fix VLAN rx hardware acceleration
  net: ethernet: mtk_eth_soc: work around issue with sending small
    fragments
  net: ethernet: mtk_eth_soc: set NETIF_F_ALL_TSO
  net: ethernet: mtk_eth_soc: drop packets to WDMA if the ring is full

 drivers/net/ethernet/mediatek/mtk_eth_soc.c   | 461 ++++++++++++++----
 drivers/net/ethernet/mediatek/mtk_eth_soc.h   |  49 +-
 drivers/net/ethernet/mediatek/mtk_ppe.c       |  22 +-
 drivers/net/ethernet/mediatek/mtk_ppe.h       |   4 +
 .../net/ethernet/mediatek/mtk_ppe_offload.c   |  12 +-
 net/core/flow_dissector.c                     |   4 +-
 net/dsa/dsa.c                                 |  18 +-
 net/dsa/tag_mtk.c                             |   2 +
 8 files changed, 469 insertions(+), 103 deletions(-)

-- 
2.38.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ