From: Oleksij Rempel <o.rempel@pengutronix.de>
To: "Björn Töpel" <bjorn@kernel.org>
Cc: Maxime Chevallier <maxime.chevallier@bootlin.com>,
Andrew Lunn <andrew@lunn.ch>, Jakub Kicinski <kuba@kernel.org>,
netdev@vger.kernel.org, "David S. Miller" <davem@davemloft.net>,
Andrew Lunn <andrew+netdev@lunn.ch>,
Donald Hunter <donald.hunter@gmail.com>,
Eric Dumazet <edumazet@google.com>,
Naveen Mamindlapalli <naveenm@marvell.com>,
Paolo Abeni <pabeni@redhat.com>, Simon Horman <horms@kernel.org>,
Danielle Ratson <danieller@nvidia.com>,
Hariprasad Kelam <hkelam@marvell.com>,
Ido Schimmel <idosch@nvidia.com>,
Kory Maincent <kory.maincent@bootlin.com>,
Leon Romanovsky <leon@kernel.org>,
Michael Chan <michael.chan@broadcom.com>,
Pavan Chebbi <pavan.chebbi@broadcom.com>,
Piergiorgio Beruto <piergiorgio.beruto@gmail.com>,
Russell King <linux@armlinux.org.uk>,
Saeed Mahameed <saeedm@nvidia.com>, Shuah Khan <shuah@kernel.org>,
Tariq Toukan <tariqt@nvidia.com>,
Willem de Bruijn <willemb@google.com>,
linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org,
linux-rdma@vger.kernel.org
Subject: Re: [PATCH net-next 02/11] ethtool: Add loopback netlink UAPI definitions
Date: Sun, 15 Mar 2026 16:09:47 +0100 [thread overview]
Message-ID: <abbLu-OjngRjcc09@pengutronix.de> (raw)
In-Reply-To: <873423y27k.fsf@all.your.base.are.belong.to.us>
Hi Björn,
On Fri, Mar 13, 2026 at 08:11:11PM +0100, Björn Töpel wrote:
> Folks, thanks for the elaborate discussion (accidental complexity vs
> essential complexity comes to mind...)!
Sorry for overthinking :)
> Maxime Chevallier <maxime.chevallier@bootlin.com> writes:
>
> > Hi Andrew,
> >
> >>> One more issue is the test data generator location. The data generator
> >>> is not always the CPU. We have HW generators located in components like
> >>> PHYs or we may use external source (remote loopback).
> >>
> >> At the moment, we don't have a Linux model for such generators. There
> >> is interest in them, but nobody has actually stepped up and proposed
> >> anything. I do see there is an intersect, we need to be able to
> >> represent them in the topology, and know which way they are pointing,
> >> but i don't think they have a direct influence on loopback.
> >
> > If I'm following Oleksij, the idea would be to have on one side the
> > ability to "dump" the link topology with a finer granularity so that we
> > can see all the different blocks (pcs, pma, pmd, etc.), how they are
> > chained together and who's driving them (MAC, PHY (+ phy_index), module,
> > etc.), and on another side commands to configure loopback on them, with
> > the ability to also configure traffic generators in the future, gather
> > stats, etc.
> >
> > Another can of worms for sure, and probably too much for what Björn is
> > trying to achieve. It's hard to say if this is overkill or not, there's
> > interest in that for sure, but also quite a lot of work to do...
>
> It's great to have these discussion as input to the first (minimal!)
> series, so we can extend/build on it later.
>
> If I try to make sense of the above discussions...
>
> Rough agreement on:
>
> - Depth/ordering should be local to a component, not global across the
> whole path.
ack
> - Cross-component ordering comes from existing infrastructure (PHY link
> topology, phy_index).
ack
> - The current component set (MAC/PHY/MODULE) is reasonable for a first
> pass.
I do not have strong opinion here.
> - HW traffic generators and full topology dumps are interesting but out
> of scope for now (Please? ;-)).
It didn't tried to push it here. My point is - image me or may be you,
will need to implement it in the next step. This components will need to
cooperate and user will need to understand the relation and/or topology.
The diagnostic is all about topology.
> So, maybe the next steps are:
>
> 1. Keep the current component model (MAC/PHY/MODULE) and the
> NEAR_END/FAR_END direction (naming need to change as Maxime said).
Probably good to document that NEAR_END/FAR_END or local/remote is
related to the viewpoint convention. Otherwise it will get confusing
with components which mount in a unusual direction (embedded worlds is
full of it :))
> 2. Add a depth (or order?) field to ETHTOOL_A_LOOPBACK_ENTRY as Jakub
> suggested, local to each component instance. This addresses the
> "multiple loopback points within one MAC" case without requiring a
> global ordering. I hope it addresses what Oleksij's switch example
> needs (multiple local loops at different depths within one
> component) *insert that screaming emoji*.
ack. I guess "depth" fits to the "viewpoint" terminology.
> 3. Document the viewpoint convention clearly.
ack
> 4. Punt on the grand topology dump. Too much to chew.
ack
> 5. Don't worry about DSA CPU ports - they don't have a netif, so
> loopback doesn't apply there today. If someone adds netifs for CPU
> ports later, depth handles it.
ack
> TL;DR: Add depth, document the viewpoint convention, and ship
> it^W^Winterate.
>
> Did I get that right?
I'm ok with it, but maintainers will have the last word.
Best Regards,
Oleksij
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
next prev parent reply other threads:[~2026-03-15 15:10 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-10 10:47 [PATCH net-next 00/11] ethtool: Generic loopback support Björn Töpel
2026-03-10 10:47 ` [PATCH net-next 01/11] ethtool: Add dump_one_dev callback for per-device sub-iteration Björn Töpel
2026-03-12 2:32 ` Jakub Kicinski
2026-03-13 16:36 ` Björn Töpel
2026-03-10 10:47 ` [PATCH net-next 02/11] ethtool: Add loopback netlink UAPI definitions Björn Töpel
2026-03-11 7:33 ` Maxime Chevallier
2026-03-11 10:39 ` Björn Töpel
2026-03-11 15:30 ` Andrew Lunn
2026-03-11 15:42 ` Maxime Chevallier
2026-03-11 19:37 ` Andrew Lunn
2026-03-12 2:47 ` Jakub Kicinski
2026-03-12 13:46 ` Andrew Lunn
2026-03-13 0:21 ` Jakub Kicinski
2026-03-11 10:50 ` Oleksij Rempel
2026-03-12 2:49 ` Jakub Kicinski
2026-03-11 15:22 ` Andrew Lunn
2026-03-11 15:35 ` Maxime Chevallier
2026-03-11 19:26 ` Andrew Lunn
2026-03-12 2:50 ` Jakub Kicinski
2026-03-12 5:04 ` Oleksij Rempel
2026-03-12 7:49 ` Maxime Chevallier
2026-03-12 8:46 ` Oleksij Rempel
2026-03-12 13:34 ` Andrew Lunn
2026-03-12 13:51 ` Oleksij Rempel
2026-03-12 16:39 ` Maxime Chevallier
2026-03-13 19:11 ` Björn Töpel
2026-03-15 15:09 ` Oleksij Rempel [this message]
2026-03-15 16:20 ` Björn Töpel
2026-03-18 15:59 ` Andrew Lunn
2026-03-10 10:47 ` [PATCH net-next 03/11] ethtool: Add loopback GET/SET netlink implementation Björn Töpel
2026-03-12 2:51 ` [net-next,03/11] " Jakub Kicinski
2026-03-10 10:47 ` [PATCH net-next 04/11] ethtool: Add CMIS loopback helpers for module loopback control Björn Töpel
2026-03-10 10:47 ` [PATCH net-next 05/11] selftests: drv-net: Add loopback driver test Björn Töpel
2026-03-10 10:47 ` [PATCH net-next 06/11] ethtool: Add MAC loopback support via ethtool_ops Björn Töpel
2026-03-11 6:04 ` [PATCH 6/11] " Naveen Mamindlapalli
2026-03-10 10:47 ` [PATCH net-next 07/11] netdevsim: Add MAC loopback simulation Björn Töpel
2026-03-10 10:47 ` [PATCH net-next 08/11] selftests: drv-net: Add MAC loopback netdevsim test Björn Töpel
2026-03-10 10:47 ` [PATCH net-next 09/11] MAINTAINERS: Add entry for ethtool loopback Björn Töpel
2026-03-10 10:47 ` [PATCH net-next 10/11] netdevsim: Add module EEPROM simulation via debugfs Björn Töpel
2026-03-12 2:52 ` [net-next,10/11] " Jakub Kicinski
2026-03-10 10:47 ` [PATCH net-next 11/11] selftests: drv-net: Add CMIS loopback netdevsim test Björn Töpel
2026-03-11 6:18 ` [PATCH net-next 00/11] ethtool: Generic loopback support Naveen Mamindlapalli
2026-03-11 10:24 ` Björn Töpel
2026-03-12 2:53 ` Jakub Kicinski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=abbLu-OjngRjcc09@pengutronix.de \
--to=o.rempel@pengutronix.de \
--cc=andrew+netdev@lunn.ch \
--cc=andrew@lunn.ch \
--cc=bjorn@kernel.org \
--cc=danieller@nvidia.com \
--cc=davem@davemloft.net \
--cc=donald.hunter@gmail.com \
--cc=edumazet@google.com \
--cc=hkelam@marvell.com \
--cc=horms@kernel.org \
--cc=idosch@nvidia.com \
--cc=kory.maincent@bootlin.com \
--cc=kuba@kernel.org \
--cc=leon@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=maxime.chevallier@bootlin.com \
--cc=michael.chan@broadcom.com \
--cc=naveenm@marvell.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=pavan.chebbi@broadcom.com \
--cc=piergiorgio.beruto@gmail.com \
--cc=saeedm@nvidia.com \
--cc=shuah@kernel.org \
--cc=tariqt@nvidia.com \
--cc=willemb@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.