• Vladimir Oltean's avatar
    net: dsa: suppress appending ethtool stats to LAG DSA masters · cfeb84a5
    Vladimir Oltean authored
    Similar to the discussion about tracking the admin/oper state of LAG DSA
    masters, we have the problem here that struct dsa_port *cpu_dp caches a
    single pair of orig_ethtool_ops and netdev_ops pointers.
    
    So if we call dsa_master_setup(bond0, cpu_dp) where cpu_dp is also the
    dev->dsa_ptr of one of the physical DSA masters, we'd effectively
    overwrite what we cached from that physical netdev with what replaced
    from the bonding interface.
    
    We don't need DSA ethtool stats on the bonding interface when used as
    DSA master, it's good enough to have them just on the physical DSA
    masters, so suppress this logic.
    Signed-off-by: default avatarVladimir Oltean <vladimir.oltean@nxp.com>
    Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
    cfeb84a5
master.c 10.9 KB