Merge branch 'switchdev_ageing_time'
authorDavid S. Miller <davem@davemloft.net>
Mon, 12 Oct 2015 12:20:28 +0000 (05:20 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 12 Oct 2015 12:20:28 +0000 (05:20 -0700)
commitd5404915a92de00cc2a6bd1d1b7f923b70effbd1
tree0b6644b45bbcea58bc03619f4551dd9736b49143
parent7533ce3055bbe9577276a847125b156c44a5bbce
parentd0cf57f9dddb50ea404bf747a3c6b22b29f82b9a
Merge branch 'switchdev_ageing_time'

Scott Feldman says:

====================
switchdev: push bridge ageing_time attribute down

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.

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.

v2->v3: Per Jiri review: push only ageing_time attr down at this time, and
don't pass raw bridge IFLA_BR_* values; rather use new switchdev attr ID for
ageing_time.

v1->v2: rebase w/ net-next
====================

Signed-off-by: David S. Miller <davem@davemloft.net>