From: Stephen Hemminger <stephen@networkplumber.org>
To: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
Cc: netdev@vger.kernel.org, roopa@cumulusnetworks.com,
davem@davemloft.net, jhs@mojatatu.com
Subject: Re: [PATCH net-next 0/7] bridge: per-vlan stats
Date: Wed, 27 Apr 2016 10:06:01 -0700 [thread overview]
Message-ID: <20160427100601.6bbf9d28@samsung9> (raw)
In-Reply-To: <1461773902-13528-1-git-send-email-nikolay@cumulusnetworks.com>
On Wed, 27 Apr 2016 18:18:15 +0200
Nikolay Aleksandrov <nikolay@cumulusnetworks.com> wrote:
> Hi,
> This set adds support for bridge per-vlan statistics.
> In order to be able to dump statistics we need a way to continue
> dumping after reaching maximum size, thus patches 01-03 extend the new
> stats API with a per-device extended link stats attribute and callback
> which can save its local state and continue where it left off afterwards.
> I considered using the already existing "fill_xstats" callback but it gets
> confusing since we need to separate the linkinfo dump from the new stats
> api dump and adding a flag/argument to do that just looks messy. I don't
> think the rtnl_link_ops size is an issue, so adding these seemed like the
> cleaner approach.
>
> Patch 05 converts the pvid to a pointer so we can consolidate the vlan
> stats accounting paths later, also allows to simplify the pvid code.
> Patches 06 and 07 add the stats support and netlink dump support
> respectively.
> I've tested this set with both old and modified iproute2, kmemleak on and
> some traffic stress tests while adding/removing vlans and ports.
>
> Thank you,
> Nik
>
> Note: Jamal I haven't forgotten about the per-port per-vlan stats, I've got
> a follow-up patch that adds it. You can easily see that the infrastructure
> for private port/vlan stats is in place after this set. Though the stats
> api will need some more changes to support that.
>
>
> Nikolay Aleksandrov (7):
> net: rtnetlink: allow rtnl_fill_statsinfo to save private state
> counter
> net: rtnetlink: allow only one idx saving stats attribute
> net: rtnetlink: add linkxstats callbacks and attribute
> net: constify is_skb_forwardable's arguments
> bridge: vlan: RCUify pvid
> bridge: vlan: learn to count
> bridge: netlink: export per-vlan stats
>
> include/linux/netdevice.h | 3 +-
> include/net/rtnetlink.h | 10 +++
> include/uapi/linux/if_bridge.h | 8 +++
> include/uapi/linux/if_link.h | 9 +++
> net/bridge/br_netlink.c | 80 ++++++++++++++++++++----
> net/bridge/br_private.h | 32 +++++-----
> net/bridge/br_vlan.c | 134 +++++++++++++++++++++++++++++------------
> net/core/dev.c | 2 +-
> net/core/rtnetlink.c | 64 +++++++++++++++++---
> 9 files changed, 266 insertions(+), 76 deletions(-)
>
I am concerned this adds unnecessary complexity (more bugs)
and overhead (slower performance). Statistics are not free, and having
them in a convenient place maybe unnecessary duplication.
next prev parent reply other threads:[~2016-04-27 17:06 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-27 16:18 [PATCH net-next 0/7] bridge: per-vlan stats Nikolay Aleksandrov
2016-04-27 16:18 ` [PATCH net-next 1/7] net: rtnetlink: allow rtnl_fill_statsinfo to save private state counter Nikolay Aleksandrov
2016-04-27 16:18 ` [PATCH net-next 2/7] net: rtnetlink: allow only one idx saving stats attribute Nikolay Aleksandrov
2016-04-28 5:18 ` Roopa Prabhu
2016-04-28 8:40 ` Nikolay Aleksandrov
2016-04-27 16:18 ` [PATCH net-next 3/7] net: rtnetlink: add linkxstats callbacks and attribute Nikolay Aleksandrov
2016-04-27 16:18 ` [PATCH net-next 4/7] net: constify is_skb_forwardable's arguments Nikolay Aleksandrov
2016-04-27 16:18 ` [PATCH net-next 5/7] bridge: vlan: RCUify pvid Nikolay Aleksandrov
2016-04-27 16:18 ` [PATCH net-next 6/7] bridge: vlan: learn to count Nikolay Aleksandrov
2016-04-27 16:18 ` [PATCH net-next 7/7] bridge: netlink: export per-vlan stats Nikolay Aleksandrov
2016-04-27 17:06 ` Stephen Hemminger [this message]
2016-04-27 17:13 ` [PATCH net-next 0/7] bridge: " Nikolay Aleksandrov
2016-04-28 8:43 ` Nikolay Aleksandrov
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=20160427100601.6bbf9d28@samsung9 \
--to=stephen@networkplumber.org \
--cc=davem@davemloft.net \
--cc=jhs@mojatatu.com \
--cc=netdev@vger.kernel.org \
--cc=nikolay@cumulusnetworks.com \
--cc=roopa@cumulusnetworks.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).