Re: [PATCH net-next v2 0/9] net: Get rid of switchdev_port_attr_get()

From: Florian Fainelli
Date: Fri Feb 15 2019 - 19:37:44 EST


On 2/15/19 2:53 PM, Florian Fainelli wrote:
> Hi all,
>
> 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, please ignore this version, I will repost one that actually
builds, need to keep mangling with my kernel configuration and keep
those drivers enabled...

>
> 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
>
> Florian Fainelli (9):
> Documentation: networking: switchdev: Update port parent ID section
> net: switchdev: Add PORT_PRE_BRIDGE_FLAGS
> mlxsw: spectrum: Handle PORT_PRE_BRIDGE_FLAGS
> staging: fsl-dpaa2: ethsw: Handle PORT_PRE_BRIDGE_FLAGS
> net: dsa: Add setter for SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS
> rocker: Check Handle PORT_PRE_BRIDGE_FLAGS
> net: bridge: Stop calling switchdev_port_attr_get()
> net: Remove SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS_SUPPORT
> net: Get rid of switchdev_port_attr_get()
>
> Documentation/networking/switchdev.txt | 16 ++--
> .../mellanox/mlxsw/spectrum_switchdev.c | 38 +++++-----
> drivers/net/ethernet/rocker/rocker_main.c | 75 +++++++++++--------
> drivers/staging/fsl-dpaa2/ethsw/ethsw.c | 32 ++++----
> include/net/switchdev.h | 13 +---
> net/bridge/br_switchdev.c | 11 ++-
> net/dsa/dsa_priv.h | 6 ++
> net/dsa/port.c | 17 +++++
> net/dsa/slave.c | 24 +++---
> 9 files changed, 128 insertions(+), 104 deletions(-)
>


--
Florian