Tue, May 17, 2016 at 10:39:08AM CEST, tg...@suug.ch wrote: >On 05/12/16 at 01:48pm, Jiri Pirko wrote: >> diff --git a/net/core/dev.c b/net/core/dev.c >> index 12436d1..a69e418 100644 >> --- a/net/core/dev.c >> +++ b/net/core/dev.c >> @@ -7376,6 +7376,8 @@ EXPORT_SYMBOL(netdev_stats_to_stats64); >> * The device driver may provide its own method by setting >> * dev->netdev_ops->get_stats64 or dev->netdev_ops->get_stats; >> * otherwise the internal statistics structure is used. >> + * If device supports both HW & SW statistics - this function should >> + * return the HW statistics. >> */ >> struct rtnl_link_stats64 *dev_get_stats(struct net_device *dev, >> struct rtnl_link_stats64 *storage) > >Can we clarify in a comment that given HW stats are available whether this >would continue to account for something like a memory allocation failure >through tx_dropped (for drivers which do skb_realloc_headroom() in xmit) >or tx_busy for when the ring is busy? HW would never see such failures Is >the expectation that dev_get_stats() continues to include these software >failures?
I think it makes sense to merge HW counters with the kernel error counters you mention. We'll fix that. Thanks.