Jakub Kicinski
2020-Oct-11 22:10 UTC
[Bridge] [PATCH net-next 00/12] net: add and use function dev_fetch_sw_netstats for fetching pcpu_sw_netstats
On Sun, 11 Oct 2020 21:34:58 +0200 Heiner Kallweit wrote:> In several places the same code is used to populate rtnl_link_stats64 > fields with data from pcpu_sw_netstats. Therefore factor out this code > to a new function dev_fetch_sw_netstats().FWIW probably fine to convert nfp_repr_get_host_stats64() as well, just take out the drop counter and make it a separate atomic. If you're up for that.
Heiner Kallweit
2020-Oct-11 22:29 UTC
[Bridge] [PATCH net-next 00/12] net: add and use function dev_fetch_sw_netstats for fetching pcpu_sw_netstats
On 12.10.2020 00:10, Jakub Kicinski wrote:> On Sun, 11 Oct 2020 21:34:58 +0200 Heiner Kallweit wrote: >> In several places the same code is used to populate rtnl_link_stats64 >> fields with data from pcpu_sw_netstats. Therefore factor out this code >> to a new function dev_fetch_sw_netstats(). > > FWIW probably fine to convert nfp_repr_get_host_stats64() as well, just > take out the drop counter and make it a separate atomic. If you're up > for that. >Looking at nfp_repr_get_host_stats64() I'm not sure why the authors decided to add a 64bit tx drop counter, struct net_device_stats has an unsigned long tx_dropped counter already. And that the number of dropped tx packets exceeds 32bit (on 32bit systems) seems not very likely.
Jakub Kicinski
2020-Oct-11 22:41 UTC
[Bridge] [PATCH net-next 00/12] net: add and use function dev_fetch_sw_netstats for fetching pcpu_sw_netstats
On Mon, 12 Oct 2020 00:29:52 +0200 Heiner Kallweit wrote:> On 12.10.2020 00:10, Jakub Kicinski wrote: > > On Sun, 11 Oct 2020 21:34:58 +0200 Heiner Kallweit wrote: > >> In several places the same code is used to populate rtnl_link_stats64 > >> fields with data from pcpu_sw_netstats. Therefore factor out this code > >> to a new function dev_fetch_sw_netstats(). > > > > FWIW probably fine to convert nfp_repr_get_host_stats64() as well, just > > take out the drop counter and make it a separate atomic. If you're up > > for that. > > > Looking at nfp_repr_get_host_stats64() I'm not sure why the authors > decided to add a 64bit tx drop counter, struct net_device_stats has > an unsigned long tx_dropped counter already. And that the number of > dropped tx packets exceeds 32bit (on 32bit systems) seems not very > likely.struct net_device::stats? That's not per-cpu. Or do you mean struct net_device::tx_dropped? That'd work nicely.