Message ID | 1394663197.3915.61.camel@joe-AO722 |
---|---|
State | RFC, archived |
Delegated to: | David Miller |
Headers | show |
On Wed, 2014-03-12 at 15:26 -0700, Joe Perches wrote: > On Wed, 2014-03-12 at 21:14 +0000, Ben Hutchings wrote: > > These look like the statistic names specified in IEEE 802.3. I would > > support a general move to using standard names for MAC stats in Ethernet > > drivers, because they are quite clearly defined and widely implemented > > in hardware. However, that is not the current practice in most Linux > > drivers. > > Hey Ben. > > Maybe something like this would be a start? > > Change the actual #defines/strings to taste. > > Maybe this shouldn't be in uapi or maybe in if_ether.h [...] This is pointless without also nailing down the definition of each statistic. That could be done with reference to standards/RFCs, of course. Ben.
On Wed, Mar 12, 2014 at 7:28 PM, Ben Hutchings <ben@decadent.org.uk> wrote: > On Wed, 2014-03-12 at 15:26 -0700, Joe Perches wrote: >> On Wed, 2014-03-12 at 21:14 +0000, Ben Hutchings wrote: >> > These look like the statistic names specified in IEEE 802.3. I would >> > support a general move to using standard names for MAC stats in Ethernet >> > drivers, because they are quite clearly defined and widely implemented >> > in hardware. However, that is not the current practice in most Linux >> > drivers. >> >> Hey Ben. >> >> Maybe something like this would be a start? >> >> Change the actual #defines/strings to taste. >> >> Maybe this shouldn't be in uapi or maybe in if_ether.h > [...] > > This is pointless without also nailing down the definition of each > statistic. That could be done with reference to standards/RFCs, of > course. As I was working through the V4 patch and looking at the names used by other drivers, it occurred to me it would be useful to create a set of standard definitions that referenced the relevant IEEE Specification and RFC. I'm willing to take that on for this submission by adding those to the driver documentation. I think that would be useful to users and could then be moved to a "standard definitions" text file that other drivers could reference. Joe had a few more comments I'd like to address (thanks Joe), I could pick this up as part of a V5 submission if you agree, or if you have a different suggestion I could possibly take that on as well. > > Ben. > > -- > Ben Hutchings > Experience is directly proportional to the value of equipment destroyed. > - Carolyn Scheppner All the best, Vince -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, 2014-03-12 at 19:42 -0500, Vince Bridgers wrote: > As I was working through the V4 patch and looking at the names used by > other drivers, it occurred to me it would be useful to create a set of > standard definitions that referenced the relevant IEEE Specification > and RFC. I'm willing to take that on for this submission by adding > those to the driver documentation. I think that would be useful to > users and could then be moved to a "standard definitions" text file > that other drivers could reference. [] > I could > pick this up as part of a V5 submission if you agree, or if you have a > different suggestion I could possibly take that on as well. I suggest if you want to do it, you do it separately from this Altera TSE submission. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/include/uapi/linux/ethtool.h b/include/uapi/linux/ethtool.h index fd161e9..24b8b51 100644 --- a/include/uapi/linux/ethtool.h +++ b/include/uapi/linux/ethtool.h @@ -498,6 +498,36 @@ struct ethtool_pauseparam { #define ETH_GSTRING_LEN 32 +#define ETH_GSTRING_RX_PKTS "rx_packets" +#define ETH_GSTRING_RX_BYTES "rx_bytes" +#define ETH_GSTRING_RX_TOTAL_BYTES "rx_total_bytes" +#define ETH_GSTRING_RX_TOTAL_PKTS "rx_total_packets" +#define ETH_GSTRING_RX_CRC_ERRS "rx_crc_errors" +#define ETH_GSTRING_RX_ALIGN_ERRS "rx_align_errors" +#define ETH_GSTRING_RX_PAUSE "rx_pause" +#define ETH_GSTRING_RX_ERRS "rx_errors" +#define ETH_GSTRING_RX_UNICAST "rx_unicast" +#define ETH_GSTRING_RX_MULTICAST "rx_multicast" +#define ETH_GSTRING_RX_BROADCAST "rx_broadcast" +#define ETH_GSTRING_RX_FIFO_DROPS "rx_fifo_drops" +#define ETH_GSTRING_RX_UNDERSIZE "rx_undersize" +#define ETH_GSTRING_RX_OVERSIZE "rx_oversize" +#define ETH_GSTRING_RX_DUPLICATES "rx_duplicates" +#define ETH_GSTRING_RX_DROPPED "rx_dropped" +#define ETH_GSTRING_RX_FRAGMENTS "rx_fragments" + +#define ETH_GSTRING_TX_PKTS "tx_packets" +#define ETH_GSTRING_TX_BYTES "tx_bytes" +#define ETH_GSTRING_TX_TOTAL_BYTES "tx_total_bytes" +#define ETH_GSTRING_TX_TOTAL_PKTS "tx_total_packets" +#define ETH_GSTRING_TX_PAUSE "tx_pause" +#define ETH_GSTRING_TX_ERRS "tx_errors" +#define ETH_GSTRING_TX_DISCARDS "tx_discards" +#define ETH_GSTRING_TX_UNICAST "tx_unicast" +#define ETH_GSTRING_TX_MULTICAST "tx_multicast" +#define ETH_GSTRING_TX_BROADCAST "tx_broadcast" +#define ETH_GSTRING_TX_DROPPED "tx_dropped" + /** * enum ethtool_stringset - string set ID * @ETH_SS_TEST: Self-test result names, for use with %ETHTOOL_TEST