OSDN Git Service

Merge branch 'net-Get-rid-of-switchdev_port_attr_get'
authorDavid S. Miller <davem@davemloft.net>
Thu, 21 Feb 2019 22:55:14 +0000 (14:55 -0800)
committerDavid S. Miller <davem@davemloft.net>
Thu, 21 Feb 2019 22:55:14 +0000 (14:55 -0800)
commitd0e698d57a94601bef7010e69b2e3c7d6f9aa311
treefe54edf01ad8eaf850d9f6697bc7e219f4415236
parentdb088ca3c13983b250ea6efc24148e8617d59ffb
parent010c8f01aa7fe18ea97d302e1c7e9ca83bc27433
Merge branch 'net-Get-rid-of-switchdev_port_attr_get'

Florian Fainelli says:

====================
net: Get rid of switchdev_port_attr_get()

This patch series splits the removal of the switchdev_ops that was
proposed a few times before and first tackles the easy part which is the
removal of the single call to switchdev_port_attr_get() within the
bridge code.

As suggestd by Ido, this patch series adds a
SWITCHDEV_ATTR_ID_PORT_PRE_BRIDGE_FLAGS which is used in the same
context as the caller of switchdev_port_attr_set(), so not deferred, and
then the operation is carried out in deferred context with setting a
support bridge port flag.

Follow-up patches will do the switchdev_ops removal after introducing
the proper helpers for the switchdev blocking notifier to work across
stacked devices (unlike the previous submissions).

David this does depend on Russell's "[PATCH net-next v5 0/3] net: dsa:
mv88e6xxx: fix IPv6".

Changes in v3:

- rebased against net-next/master after Russell's IPv6 changes to DSA
- ignore prepare/commit phase for PRE_BRIDGE_FLAGS since we don't
  want to trigger the WARN() in net/switchdev/switchdev.c in the commit
  phase

Changes in v2:

- differentiate callers not supporting switchdev_port_attr_set() from
  the driver not being able to support specific bridge flags

- pass "mask" instead of "flags" for the PRE_BRIDGE_FLAGS check

- skip prepare phase for PRE_BRIDGE_FLAGS

- corrected documentation a bit more

- tested bridge_vlan_aware.sh with veth/VRF
====================

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