[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240420-port-mirroring-v3-0-0fe3ac52006d@microchip.com>
Date: Sat, 20 Apr 2024 21:29:09 +0200
From: Daniel Machon <daniel.machon@...rochip.com>
To: "David S. Miller" <davem@...emloft.net>, Eric Dumazet
<edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>, Paolo Abeni
<pabeni@...hat.com>, Lars Povlsen <lars.povlsen@...rochip.com>, "Steen
Hegelund" <Steen.Hegelund@...rochip.com>, <UNGLinuxDriver@...rochip.com>,
Russell King <linux@...linux.org.uk>
CC: <netdev@...r.kernel.org>, <linux-arm-kernel@...ts.infradead.org>,
<linux-kernel@...r.kernel.org>, Horatiu Vultur
<horatiu.vultur@...rochip.com>, "Russell King (Oracle)"
<rmk+kernel@...linux.org.uk>, Uwe Kleine-König
<u.kleine-koenig@...gutronix.de>, Vladimir Oltean <vladimir.oltean@....com>,
Yue Haibing <yuehaibing@...wei.com>, Daniel Machon
<daniel.machon@...rochip.com>
Subject: [PATCH net-next v3 0/5] net: sparx5: add support for port
mirroring
This series adds support for port mirroring, and port mirroring stats,
through tc matchall action FLOW_ACTION_MIRRED.
The hardware has three independent mirroring probes. Each probe can be
configured with a separate set of filtering conditions that must be
fulfilled before traffic is mirrored.
A mirror probe can have up to 64 source ports and a single monitor port.
The direction of a mirror probe determines if rx or tx traffic is
mirrored from the source port to the monitor port.
To: David S. Miller <davem@...emloft.net>
To: Eric Dumazet <edumazet@...gle.com>
To: Jakub Kicinski <kuba@...nel.org>
To: Paolo Abeni <pabeni@...hat.com>
To: Lars Povlsen <lars.povlsen@...rochip.com>
To: Steen Hegelund <Steen.Hegelund@...rochip.com>
To: UNGLinuxDriver@...rochip.com
To: Russell King <linux@...linux.org.uk>
Cc: netdev@...r.kernel.org
Cc: linux-arm-kernel@...ts.infradead.org
Cc: linux-kernel@...r.kernel.org
Cc: Horatiu Vultur <horatiu.vultur@...rochip.com>
Cc: Russell King (Oracle) <rmk+kernel@...linux.org.uk>
Cc: Uwe Kleine-König <u.kleine-koenig@...gutronix.de>
Cc: Vladimir Oltean <vladimir.oltean@....com>
Cc: Yue Haibing <yuehaibing@...wei.com>
Signed-off-by: Daniel Machon <daniel.machon@...rochip.com>
---
Changes in v3:
- Ditch do_div() (patch #3) to fix warning on hexagon arch, reported by intel bot
- Link to v2: https://lore.kernel.org/r/20240418-port-mirroring-v2-0-20642868b386@microchip.com
Changes in v2:
- Fix clang build warning about uninitialized variable 'err'
- Link to v1: https://lore.kernel.org/r/20240418-port-mirroring-v1-0-e05c35007c55@microchip.com
---
Daniel Machon (5):
net: sparx5: add new register definitions
net: sparx5: add bookkeeping code for matchall rules
net: sparx5: add port mirroring implementation
net: sparx5: add the tc glue to support port mirroring
net: sparx5: add support for matchall mirror stats
drivers/net/ethernet/microchip/sparx5/Makefile | 3 +-
.../net/ethernet/microchip/sparx5/sparx5_main.c | 3 +
.../net/ethernet/microchip/sparx5/sparx5_main.h | 25 +++
.../ethernet/microchip/sparx5/sparx5_main_regs.h | 68 ++++++
.../net/ethernet/microchip/sparx5/sparx5_mirror.c | 235 +++++++++++++++++++++
.../ethernet/microchip/sparx5/sparx5_tc_matchall.c | 125 ++++++++++-
6 files changed, 449 insertions(+), 10 deletions(-)
---
base-commit: 1c25fe9a044d5334153a3585754b26553f8287b9
change-id: 20240402-port-mirroring-81735171ecfa
Best regards,
--
Daniel Machon <daniel.machon@...rochip.com>
Powered by blists - more mailing lists