public inbox for netdev@vger.kernel.org
 help / color / mirror / Atom feed
From: Vladimir Oltean <olteanv@gmail.com>
To: Lukasz Majewski <lukma@denx.de>
Cc: Jakub Kicinski <kuba@kernel.org>,
	netdev@vger.kernel.org, Paolo Abeni <pabeni@redhat.com>,
	Eric Dumazet <edumazet@google.com>,
	"David S. Miller" <davem@davemloft.net>,
	Oleksij Rempel <o.rempel@pengutronix.de>,
	Tristram.Ha@microchip.com,
	Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
	Simon Horman <horms@kernel.org>,
	Dan Carpenter <dan.carpenter@linaro.org>,
	"Ricardo B. Marliere" <ricardo@marliere.net>,
	Casper Andersson <casper.casan@gmail.com>,
	linux-kernel@vger.kernel.org,
	Woojung Huh <woojung.huh@microchip.com>,
	UNGLinuxDriver@microchip.com, Andrew Lunn <andrew@lunn.ch>
Subject: Re: [PATCH v2 net-next] net: dsa: Allow only up to two HSR HW offloaded ports for KSZ9477
Date: Wed, 19 Jun 2024 18:48:14 +0300	[thread overview]
Message-ID: <20240619154814.dvjcry7ahvtznfxb@skbuf> (raw)
In-Reply-To: <20240619171057.766c657b@wsk>

On Wed, Jun 19, 2024 at 05:10:57PM +0200, Lukasz Majewski wrote:
> > How do you know you are rejecting the offloading of the interlink
> > port, and not of one of the ring ports?
> 
> It seems like iproute2 is providing the correct ordering (and assures
> that lan3/port2 is called as a third one - please see below).

This is not iproute2 providing the correct ordering, but rather
hsr_dev_finalize() in the kernel calling hsr_add_port() in a certain
order that matches what is expected in ksz9477.

Granted, this isn't an actual functional problem, but given that you
are fixing a newly developed feature for net-next, and that this is API
that gets progressively harder to change as more devices implement
offloads, I would expect a more obvious signaling mechanism to exist
for this, and now seems a good time to do it, rather than opting for the
most minimal fix.

One way to make the restriction more elegantly obvious (both to the user
and to the kernel developer) that it is about interlink ports rather
than the number of ports in general is to carry the port type in a
structure similar to struct netdev_lag_upper_info.

You would have to make hsr_portdev_setup() call something else rather
than netdev_upper_dev_link(), because that eats the "void *upper_info"
argument when calling __netdev_upper_dev_link(). Possibly create a new
netdev_upper_dev_link_info() ("link upper dev with extra info")
function, which only HSR calls with a new info structure. Then, the DSA
core has access to that and implicitly to the port type, and from there
on, you can apply the proper restriction.

  reply	other threads:[~2024-06-19 15:48 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-19 13:42 [PATCH v2 net-next] net: dsa: Allow only up to two HSR HW offloaded ports for KSZ9477 Lukasz Majewski
2024-06-19 13:54 ` Dan Carpenter
2024-06-19 14:27 ` Andrew Lunn
2024-06-19 14:42 ` Vladimir Oltean
2024-06-19 15:10   ` Lukasz Majewski
2024-06-19 15:48     ` Vladimir Oltean [this message]
2024-06-19 15:59       ` Vladimir Oltean
2024-06-20  7:59         ` Lukasz Majewski
2024-06-20  9:02           ` Vladimir Oltean
2024-06-20 12:00             ` Lukasz Majewski
2024-06-20 12:06               ` Vladimir Oltean
2024-06-20 13:28                 ` Lukasz Majewski
2024-06-20 14:33                   ` Vladimir Oltean
2024-06-21  8:31                     ` Lukasz Majewski
2024-06-21  8:43                       ` Vladimir Oltean
2024-06-19 21:54       ` Vladimir Oltean

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=20240619154814.dvjcry7ahvtznfxb@skbuf \
    --to=olteanv@gmail.com \
    --cc=Tristram.Ha@microchip.com \
    --cc=UNGLinuxDriver@microchip.com \
    --cc=andrew@lunn.ch \
    --cc=bigeasy@linutronix.de \
    --cc=casper.casan@gmail.com \
    --cc=dan.carpenter@linaro.org \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=horms@kernel.org \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lukma@denx.de \
    --cc=netdev@vger.kernel.org \
    --cc=o.rempel@pengutronix.de \
    --cc=pabeni@redhat.com \
    --cc=ricardo@marliere.net \
    --cc=woojung.huh@microchip.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox