Re: [PATCH] team: set IFF_SLAVE on team ports

From: Chas Williams
Date: Thu Sep 27 2018 - 10:04:31 EST




On 07/10/15 02:41, Jiri Pirko wrote:
Thu, Jul 09, 2015 at 05:36:55PM CEST, jblunck@xxxxxxxxxxxxx wrote:
On Thu, Jul 9, 2015 at 12:07 PM, Jiri Pirko <jiri@xxxxxxxxxxx> wrote:
Thu, Jul 09, 2015 at 11:58:34AM CEST, jblunck@xxxxxxxxxxxxx wrote:
The code in net/ipv6/addrconf.c:addrconf_notify() tests for IFF_SLAVE to
decide if it should start the address configuration. Since team ports
shouldn't get link-local addresses assigned lets set IFF_SLAVE when linking
a port to the team master.

I don't want to use IFF_SLAVE in team. Other master-slave devices are
not using that as well, for example bridge, ovs, etc.


Maybe they need to get fixed too. I've used that flag because it is
documented as
a "slave of a load balancer" which describes what a team port is.


I think that this should be fixed in addrconf_notify. It should lookup
if there is a master on top and bail out in that case.

There are other virtual interfaces that have a master assigned and want to
participate in IPv6 address configuration.

Can you give me an example?

I would like to revisit this patch (yes, I know it has been a while). I believe the VRF implementation uses master to group the interfaces under
a single interface.

I don't see a reason not to use IFF_SLAVE since team and bonding are fairly similar.


Unless we want to have a cascade of conditionals testing the priv_flags in
addrconf_notify() this is asking for a new net_device_flags flag.
Maybe something
generic like IFF_L2PORT ?

Thanks,
Jan

[ Jiri, sorry for getting that mail twice ]