switchdev: push bridge attributes down
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v2 Latest4 patches 3 repliesIn review
- v14 patches 11 repliesSuperseded
Patches in v2 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/4 | switchdev: add bridge attributesinclude/ include/ | +6 | 3 replies | |
| 2/4 | switchdev: skip over ports returning -EOPNOTSUPP when recursing portsinclude/ net/ | +9 | 0 replies | |
| 3/4 | bridge: push bridge setting ageing_time down to switchdevnet/ net/ net/ +2 more | +30 | 0 replies | |
| 4/4 | rocker: handle setting bridge ageing_timedrivers/ | +22 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v2 yet.
Cover letter [PATCH net-next v2 0/4] switchdev: push bridge attributes down
From: Scott Feldman <[email protected]>
Push bridge-level attributes down to switchdev drivers. This patchset adds the infrastructure and then pushes, as an example, ageing_time attribute down from bridge to switchdev (rocker) driver. Add some range-checking for ageing_time.
# ip link set dev br0 type bridge ageing_time 1000
# ip link set dev br0 type bridge ageing_time 999 RTNETLINK answers: Numerical result out of range
Up until now, switchdev attrs where port-level attrs, so the netdev used in switchdev_attr_set() would be a switch port or bond of switch ports. With bridge-level attrs, the netdev passed to switchdev_attr_set() is the bridge netdev. The same recusive algo is used to visit the leaves of the stacked drivers to set the attr, it's just in this case we start one layer higher in the stack. One note is not all ports in the bridge may support setting a bridge-level attribute, so rather than failing the entire set, we'll skip over those ports returning -EOPNOTSUPP.
v1->v2: rebase w/ net-next
Scott Feldman (4):
switchdev: add bridge attributes
switchdev: skip over ports returning -EOPNOTSUPP when recursing ports
bridge: push bridge setting ageing_time down to switchdev
rocker: handle setting bridge ageing_time
drivers/net/ethernet/rocker/rocker.c | 22 ++++++++++++++++++++++ include/net/switchdev.h | 6 ++++++ include/uapi/linux/if_link.h | 2 +- net/bridge/br_ioctl.c | 3 +-- net/bridge/br_netlink.c | 6 +++--- net/bridge/br_private.h | 1 + net/bridge/br_stp.c | 24 ++++++++++++++++++++++++ net/bridge/br_sysfs_br.c | 3 +-- net/switchdev/switchdev.c | 9 ++++++++- 9 files changed, 67 insertions(+), 9 deletions(-)
Signature · 1 line
1.7.10.4