• Mohsin Bashir's avatar
    eth: fbnic: Add support to fetch group stats · 4eb7f20b
    Mohsin Bashir authored
    Add support for group stats for mac. The fbnic_set_counter help preserve
    the default values for counters which are not touched by the driver.
    
    The 'reset' flag in 'get_eth_mac_stats' allows to choose between
    resetting the counter to recent most value or fetching the aggregated
    values of the counter.
    
    The 'fbnic_stat_rd64' read 64b stats counters in an atomic fashion using
    read-read-read approach. This allows to isolate cases where counter is
    moving too fast making accuracy of the counter questionable.
    
    Command: ethtool -S eth0 --groups eth-mac
    Example Output:
    eth-mac-FramesTransmittedOK: 421644
    eth-mac-FramesReceivedOK: 3849708
    eth-mac-FrameCheckSequenceErrors: 0
    eth-mac-AlignmentErrors: 0
    eth-mac-OctetsTransmittedOK: 64799060
    eth-mac-FramesLostDueToIntMACXmitError: 0
    eth-mac-OctetsReceivedOK: 5134513531
    eth-mac-FramesLostDueToIntMACRcvError: 0
    eth-mac-MulticastFramesXmittedOK: 568
    eth-mac-BroadcastFramesXmittedOK: 454
    eth-mac-MulticastFramesReceivedOK: 276106
    eth-mac-BroadcastFramesReceivedOK: 26119
    eth-mac-FrameTooLongErrors: 0
    Signed-off-by: default avatarMohsin Bashir <mohsin.bashr@gmail.com>
    Reviewed-by: default avatarSimon Horman <horms@kernel.org>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    4eb7f20b
fbnic_csr.h 35.2 KB