Thread (30 messages) flat view 30 messages, 3 authors, 2021-01-18

Re: [PATCH v6 net-next 07/15] net: remove return value from dev_get_stats

From: Saeed Mahameed <saeed@kernel.org>
Date: 2021-01-11 22:09:14

On Sat, 2021-01-09 at 19:26 +0200, Vladimir Oltean wrote:
From: Vladimir Oltean <vladimir.oltean@nxp.com>

After commit 28172739f0a2 ("net: fix 64 bit counters on 32 bit
arches"),
dev_get_stats got an additional argument for storage of statistics.
At
this point, dev_get_stats could return either the passed "storage"
argument, or the output of .ndo_get_stats64.

Then commit caf586e5f23c ("net: add a core netdev->rx_dropped
counter")
came, and the output of .ndo_get_stats64 (still returning a pointer
to
struct rtnl_link_stats64) started being ignored.

Then came commit bc1f44709cf2 ("net: make ndo_get_stats64 a void
function") which made .ndo_get_stats64 stop returning anything.

So now, dev_get_stats always reports the "storage" pointer received
as
argument. This is useless. Some drivers are dealing with unnecessary
complexity due to this, using another pointer to poke around the
returned statistics, when they can do that directly through the
stack-allocated struct rtnl_link_stats64.

Refactor these callers to ignore the return value completely and just
access the values from their struct rtnl_link_stats64 local variable.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Saeed Mahameed <saeedm@nvidia.com>

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help