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?