• Vladimir Oltean's avatar
    net: ethtool: netlink: retrieve stats from multiple sources (eMAC, pMAC) · 04692c90
    Vladimir Oltean authored
    IEEE 802.3-2018 clause 99 defines a MAC Merge sublayer which contains an
    Express MAC and a Preemptible MAC. Both MACs are hidden to higher and
    lower layers and visible as a single MAC (packet classification to eMAC
    or pMAC on TX is done based on priority; classification on RX is done
    based on SFD).
    
    For devices which support a MAC Merge sublayer, it is desirable to
    retrieve individual packet counters from the eMAC and the pMAC, as well
    as aggregate statistics (their sum).
    
    Introduce a new ETHTOOL_A_STATS_SRC attribute which is part of the
    policy of ETHTOOL_MSG_STATS_GET and, and an ETHTOOL_A_PAUSE_STATS_SRC
    which is part of the policy of ETHTOOL_MSG_PAUSE_GET (accepted when
    ETHTOOL_FLAG_STATS is set in the common ethtool header). Both of these
    take values from enum ethtool_mac_stats_src, defaulting to "aggregate"
    in the absence of the attribute.
    
    Existing drivers do not need to pay attention to this enum which was
    added to all driver-facing structures, just the ones which report the
    MAC merge layer as supported.
    Signed-off-by: default avatarVladimir Oltean <vladimir.oltean@nxp.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    04692c90
stats.c 14.7 KB