Igor Mitsyanko
2018-03-10 03:03:03 UTC
Main goal of the patchset is to allow for flooding offload to switchdev
in scenarios when HW switchdev ports and SW ports are operating in a
single bridge.
In case a data frame that needs to be flooded is ingressed on a SW port,
it needs to be flooded to a single HW port of any given
switchdev-capable hardware only. Switchdev hardware will than take care
about flooding to the rest of the ports that it manages.
Igor Mitsyanko (5):
bridge: initialize port flags with switchdev defaults
bridge: propagate BR_ flags updates through sysfs to switchdev
bridge: allow switchdev port to handle flooding by itself
bridge: provide sysfs and netlink interface to set BR_FLOOD_OFFLOAD
bridge: verify "HW only" flags can't be set without HW support
include/linux/if_bridge.h | 1 +
include/uapi/linux/if_link.h | 1 +
net/bridge/br_forward.c | 2 ++
net/bridge/br_if.c | 17 ++++++++++++++++-
net/bridge/br_netlink.c | 8 +++++++-
net/bridge/br_private.h | 13 ++++++++++++-
net/bridge/br_switchdev.c | 14 +++++++++++++-
net/bridge/br_sysfs_if.c | 17 +++++++++++++----
8 files changed, 65 insertions(+), 8 deletions(-)
in scenarios when HW switchdev ports and SW ports are operating in a
single bridge.
In case a data frame that needs to be flooded is ingressed on a SW port,
it needs to be flooded to a single HW port of any given
switchdev-capable hardware only. Switchdev hardware will than take care
about flooding to the rest of the ports that it manages.
Igor Mitsyanko (5):
bridge: initialize port flags with switchdev defaults
bridge: propagate BR_ flags updates through sysfs to switchdev
bridge: allow switchdev port to handle flooding by itself
bridge: provide sysfs and netlink interface to set BR_FLOOD_OFFLOAD
bridge: verify "HW only" flags can't be set without HW support
include/linux/if_bridge.h | 1 +
include/uapi/linux/if_link.h | 1 +
net/bridge/br_forward.c | 2 ++
net/bridge/br_if.c | 17 ++++++++++++++++-
net/bridge/br_netlink.c | 8 +++++++-
net/bridge/br_private.h | 13 ++++++++++++-
net/bridge/br_switchdev.c | 14 +++++++++++++-
net/bridge/br_sysfs_if.c | 17 +++++++++++++----
8 files changed, 65 insertions(+), 8 deletions(-)
--
2.9.5
2.9.5