mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-07-05 22:12:16 +00:00
switchdev: Pass original device to port netdev driver
switchdev drivers need to know the netdev on which the switchdev op was invoked. For example, the STP state of a VLAN interface configured on top of a port can change while being member in a bridge. In this case, the underlying driver should only change the STP state of that particular VLAN and not of all the VLANs configured on the port. However, current switchdev infrastructure only passes the port netdev down to the driver. Solve that by passing the original device down to the driver as part of the required switchdev object / attribute. This doesn't entail any change in current switchdev drivers. It simply enables those supporting stacked devices to know the originating device and act accordingly. Signed-off-by: Ido Schimmel <idosch@mellanox.com> Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
9d547833f0
commit
6ff64f6f92
8 changed files with 22 additions and 0 deletions
|
@ -50,6 +50,7 @@ enum switchdev_attr_id {
|
|||
};
|
||||
|
||||
struct switchdev_attr {
|
||||
struct net_device *orig_dev;
|
||||
enum switchdev_attr_id id;
|
||||
u32 flags;
|
||||
union {
|
||||
|
@ -68,6 +69,7 @@ enum switchdev_obj_id {
|
|||
};
|
||||
|
||||
struct switchdev_obj {
|
||||
struct net_device *orig_dev;
|
||||
enum switchdev_obj_id id;
|
||||
u32 flags;
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue