From: David Miller <davem@davemloft.net>
To: jiri@resnulli.us
Cc: netdev@vger.kernel.org, nogahf@mellanox.com, idosch@mellanox.com,
	eladr@mellanox.com, yotamg@mellanox.com, ogerlitz@mellanox.com,
	roopa@cumulusnetworks.com, nikolay@cumulusnetworks.com,
	linville@tuxdriver.com, tgraf@suug.ch, gospo@cumulusnetworks.com,
	sfeldma@gmail.com, sd@queasysnail.net, eranbe@mellanox.com,
	ast@plumgrid.com, edumazet@google.com,
	hannes@stressinduktion.org
Subject: Re: [patch net-next 2/4] rtnetlink: add HW/SW stats distinction in rtnl_fill_stats
Date: Thu, 12 May 2016 11:51:11 -0400 (EDT)	[thread overview]
Message-ID: <20160512.115111.1092968654376249787.davem@davemloft.net> (raw)
In-Reply-To: <1463053730-14991-3-git-send-email-jiri@resnulli.us>
From: Jiri Pirko <jiri@resnulli.us>
Date: Thu, 12 May 2016 13:48:48 +0200
>  	sp = nla_data(attr);
>  	dev_get_stats(dev, sp);
>  
> +	err = dev_get_sw_stats(dev, &sw_stats);
> +	if (!err) {
> +		attr = nla_reserve_64bit(skb, IFLA_SW_STATS64,
> +					 sizeof(struct rtnl_link_stats64),
> +					 IFLA_PAD);
> +
> +		if (!attr)
> +			return -EMSGSIZE;
> +
> +		copy_rtnl_link_stats64(nla_data(attr), &sw_stats);
> +	}
Jiri, the whole point of the 64-bit padding stuff is so that we don't
need to copy the stats twice, once onto an on-stack copy and then
again to the attribute.
The way this sw stats stuff is designed you can't do it right.  It is
absolutely essential that the nla_reserve_64bits() call occur first,
and then you pass nla_data(attr) directly into the sw stats NDO operation.
Please rearrange this whole mechanism so that you can pass the NLA
attribute pointer down into the driver rather than doing all of these
copies.
Thanks.
next prev parent reply	other threads:[~2016-05-12 15:51 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-12 11:48 [patch net-next 0/4] return offloaded stats as default and expose original sw start Jiri Pirko
2016-05-12 11:48 ` [patch net-next 1/4] netdevice: add SW statistics ndo Jiri Pirko
2016-05-12 21:10   ` Roopa Prabhu
2016-05-12 22:23     ` Florian Fainelli
2016-05-13  6:06       ` Jiri Pirko
2016-05-13  6:03     ` Jiri Pirko
2016-05-13 18:47       ` Roopa Prabhu
2016-05-14 12:49         ` Jiri Pirko
2016-05-14 15:47           ` Roopa Prabhu
2016-05-14 18:46             ` Jiri Pirko
2016-05-15  4:11               ` Roopa Prabhu
2016-05-15  6:47                 ` Jiri Pirko
2016-05-15 15:44               ` Andrew Lunn
2016-05-16  9:00                 ` Jiri Pirko
2016-05-17  8:39   ` Thomas Graf
2016-05-17  8:41     ` Jiri Pirko
2016-05-17 14:42       ` Roopa Prabhu
2016-05-12 11:48 ` [patch net-next 2/4] rtnetlink: add HW/SW stats distinction in rtnl_fill_stats Jiri Pirko
2016-05-12 15:51   ` David Miller [this message]
2016-05-12 11:48 ` [patch net-next 3/4] net: core: add SW stats to if_stats_msg Jiri Pirko
2016-05-12 11:48 ` [patch net-next 4/4] mlxsw: spectrum: Implement SW stats ndo and expose HW stats by default Jiri Pirko
  -- strict thread matches above, loose matches on Subject: below --
2016-05-12  9:59 [patch net-next 0/4] return offloaded stats as default and expose original sw start Jiri Pirko
2016-05-12  9:59 ` [patch net-next 2/4] rtnetlink: add HW/SW stats distinction in rtnl_fill_stats Jiri Pirko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox
  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):
  git send-email \
    --in-reply-to=20160512.115111.1092968654376249787.davem@davemloft.net \
    --to=davem@davemloft.net \
    --cc=ast@plumgrid.com \
    --cc=edumazet@google.com \
    --cc=eladr@mellanox.com \
    --cc=eranbe@mellanox.com \
    --cc=gospo@cumulusnetworks.com \
    --cc=hannes@stressinduktion.org \
    --cc=idosch@mellanox.com \
    --cc=jiri@resnulli.us \
    --cc=linville@tuxdriver.com \
    --cc=netdev@vger.kernel.org \
    --cc=nikolay@cumulusnetworks.com \
    --cc=nogahf@mellanox.com \
    --cc=ogerlitz@mellanox.com \
    --cc=roopa@cumulusnetworks.com \
    --cc=sd@queasysnail.net \
    --cc=sfeldma@gmail.com \
    --cc=tgraf@suug.ch \
    --cc=yotamg@mellanox.com \
    /path/to/YOUR_REPLY
  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
  Be sure your reply has a Subject: header at the top and a blank line
  before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).