diff options
| author | David S. Miller <davem@davemloft.net> | 2017-10-09 20:18:12 +0300 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2017-10-09 20:18:12 +0300 |
| commit | 905618437da4d166e296fb24d66e8e7b79f541ef (patch) | |
| tree | 7dbb7fb51d137a8f01d30c72352fe1c4c028be75 /include/linux | |
| parent | 31070e7fa0d9d2ae1d5d16a5ba980529fac7b6f9 (diff) | |
| parent | 593bc28ae211b864e7e0720ffc65a14cc5cff101 (diff) | |
| download | linux-905618437da4d166e296fb24d66e8e7b79f541ef.tar.xz | |
Merge branch 'mlxsw-Offload-bridge-device-mrouter'
Jiri Pirko says:
====================
mlxsw: Offload bridge device mrouter
Yotam says:
Similarly to a bridged port, the bridge device itself can be configured by
the user to be an mrouter port. In this case, all multicast traffic should
be forwarded to it. Make the mlxsw Spectrum driver offload these directives
to the Spectrum hardware.
Patches 1 and 2 add a new switchdev notification for bridge device mrouter
port status and make the bridge module notify about it.
Patches 3-5 change the mlxsw Spectrum driver to handle these notifications
by adding the Spectrum router port to the bridge MDB entries.
v1->v2:
- patch1:
- Don't add the MDB_RTR_TYPE_TEMP state and use the timer_pending to
distinguish between learning-on and learning-off states
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/if_bridge.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/if_bridge.h b/include/linux/if_bridge.h index 316ee113a220..02639ebea2f0 100644 --- a/include/linux/if_bridge.h +++ b/include/linux/if_bridge.h @@ -64,6 +64,7 @@ int br_multicast_list_adjacent(struct net_device *dev, bool br_multicast_has_querier_anywhere(struct net_device *dev, int proto); bool br_multicast_has_querier_adjacent(struct net_device *dev, int proto); bool br_multicast_enabled(const struct net_device *dev); +bool br_multicast_router(const struct net_device *dev); #else static inline int br_multicast_list_adjacent(struct net_device *dev, struct list_head *br_ip_list) @@ -84,6 +85,10 @@ static inline bool br_multicast_enabled(const struct net_device *dev) { return false; } +static inline bool br_multicast_router(const struct net_device *dev) +{ + return false; +} #endif #if IS_ENABLED(CONFIG_BRIDGE) && IS_ENABLED(CONFIG_BRIDGE_VLAN_FILTERING) |
