lkml.org 
[lkml]   [2016]   [Mar]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC PATCH net-next 2/2] net: dsa: support SWITCHDEV_ATTR_ID_PORT_BRIDGE_IF
Wed, Mar 09, 2016 at 07:32:13PM CET, andrew@lunn.ch wrote:
>Hi Vivien
>
>> -static bool dsa_slave_dev_check(struct net_device *dev)
>> -{
>> - return dev->netdev_ops == &dsa_slave_netdev_ops;
>> -}
>
>Where is the equivalent of this happening? Where do we check that the
>interface added to the bridge is part of the switch?
>
>> -int dsa_slave_netdevice_event(struct notifier_block *unused,
>> - unsigned long event, void *ptr)
>> -{
>> - struct net_device *dev;
>> - int err = 0;
>> -
>> - switch (event) {
>> - case NETDEV_CHANGEUPPER:
>> - dev = netdev_notifier_info_to_dev(ptr);
>> - if (!dsa_slave_dev_check(dev))
>> - goto out;
>> -
>> - err = dsa_slave_master_changed(dev);
>> - if (err && err != -EOPNOTSUPP)
>> - netdev_warn(dev, "failed to reflect master change\n");
>> -
>> - break;
>> - }
>> -
>> -out:
>> - return NOTIFY_DONE;
>> -}
>
>How about team/bonding? We are not ready to implement it yet with the
>Marvell devices, but at some point we probably will. Won't we need the
>events then? We need to know when a switch port has been added to a
>team?
>
>Or do you think a switchdev object will be added for this case?
>Mellanox already have the ability to add switch interfaces to a team,
>and then add the team to a bridge. So we need to ensure your solution
>works for such stacked systems.

I have to look at this more closer tomorrow, but I'm missing motivation
behind this. Using existing notifiers, drivers can easily monitor what
is going on with their uppers. Why do we need this to be changed?

\
 
 \ /
  Last update: 2016-03-09 21:01    [W:0.147 / U:0.528 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site