Hi David, Jakub,

This patch series addresses a long standing with no known impact today
with the overloading of netdev_ops done by the DSA layer.

First we introduce a ndo_equal netdev_ops function pointer, then we have
DSA utilize it, and finally all in tree users are converted to using
either netdev_ops_equal() or __netdev_ops_equal() (for const struct
net_device reference).

I did my best to build test each driver being changed here.

A coccinelle script will be submitted later on when it works with the
coccicheck target integration.

Florian Fainelli (3):
  net: Introduce netdev_ops_equal
  net: dsa: Implement ndo_equal for CPU port net_device
  net: treewide: Convert to netdev_ops_equal()

 drivers/net/ethernet/broadcom/bcmsysport.c    |  4 +--
 drivers/net/ethernet/broadcom/bnxt/bnxt_vfr.c |  2 +-
 .../net/ethernet/cavium/liquidio/lio_vf_rep.c |  2 +-
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c |  2 +-
 .../net/ethernet/mellanox/mlx5/core/en_rep.c  |  4 +--
 .../net/ethernet/mellanox/mlx5/core/en_tc.c   |  2 +-
 .../net/ethernet/mellanox/mlxsw/spectrum.c    |  2 +-
 drivers/net/ethernet/mscc/ocelot_net.c        |  2 +-
 drivers/net/ethernet/netronome/nfp/nfp_net.h  |  2 +-
 .../net/ethernet/netronome/nfp/nfp_net_repr.h |  2 +-
 drivers/net/ethernet/rocker/rocker_main.c     |  2 +-
 drivers/net/ethernet/sfc/efx.c                |  2 +-
 drivers/net/ethernet/sfc/falcon/efx.c         |  2 +-
 .../net/ethernet/stmicro/stmmac/stmmac_main.c |  2 +-
 drivers/net/ethernet/ti/cpsw_new.c            |  2 +-
 drivers/net/ethernet/via/via-velocity.c       |  2 +-
 drivers/net/gtp.c                             |  2 +-
 drivers/net/hyperv/netvsc_drv.c               |  4 +--
 drivers/net/ipvlan/ipvlan_main.c              |  2 +-
 drivers/net/ppp/ppp_generic.c                 |  2 +-
 drivers/net/team/team.c                       |  2 +-
 drivers/net/tun.c                             |  4 +--
 .../broadcom/brcm80211/brcmfmac/core.c        |  4 +--
 drivers/net/wireless/quantenna/qtnfmac/core.c |  2 +-
 drivers/s390/net/qeth_l3_main.c               |  4 +--
 drivers/staging/fsl-dpaa2/ethsw/ethsw.c       |  2 +-
 .../staging/unisys/visornic/visornic_main.c   |  2 +-
 include/linux/netdevice.h                     | 26 +++++++++++++++++++
 net/atm/clip.c                                |  2 +-
 net/dsa/master.c                              |  9 +++++++
 net/dsa/slave.c                               |  2 +-
 net/openvswitch/vport-internal_dev.c          |  4 +--
 net/openvswitch/vport-internal_dev.h          |  2 +-
 33 files changed, 73 insertions(+), 38 deletions(-)

-- 
2.25.1

Reply via email to