From: Stephen Hemminger <shemminger@vyatta.com>
To: Vlad Dogaru <ddvlad@rosedu.org>
Cc: netdev@vger.kernel.org, jamal <hadi@cyberus.ca>,
Octavian Purdila <opurdila@ixiacom.com>
Subject: Re: [PATCH v3 0/2] net: add device groups
Date: Fri, 14 Jan 2011 08:08:10 -0800 [thread overview]
Message-ID: <20110114080810.2f128064@nehalam> (raw)
In-Reply-To: <1294997911-13866-1-git-send-email-ddvlad@rosedu.org>
On Fri, 14 Jan 2011 11:38:29 +0200
Vlad Dogaru <ddvlad@rosedu.org> wrote:
> This patchset implements network device grouping and simple manipulation
> of groups. Netlink has been updated to provide group information and
> means of applying changes to members of a specific group via a single
> message.
>
> The patchset has a corresponding one for iproute2, which implements the
> new functionality in userspace.
>
> Some basic testing, using 1024 dummy network interfaces (all of them in
> group 0):
>
> # time { for i in `seq 0 1023`; do ip l s dev dummy$i up; done }
>
> real 0m7.70s
> user 0m0.36s
> sys 0m4.85s
>
> # time ip l s devgroup 0 up
>
> real 0m0.14s
> user 0m0.00s
> sys 0m0.14s
>
> # time { for i in `seq 0 1023`; do ip l s dev dummy$i mtu 2000; done }
>
> real 0m7.43s
> user 0m0.48s
> sys 0m4.72s
>
> # time ip l s devgroup 0 mtu 2000
>
> real 0m0.02s
> user 0m0.00s
> sys 0m0.02s
>
> Improvement stems both from less user-kernel communication and from less
> processes being created.
>
> Changes since version 2:
> * fix net_device field type (should be int, not unsigned int).
> * fix typo in commit message.
>
> Changes since version 1:
> * we avoid adding a new attribute type by using the following
> convention: if no device name is specified, the interface index is
> negative, and there is a group specified, we change parameters for
> the whole group.
> * the dummy module is no longer modified to include an initial group
> for the devices it creates. The user is responsible for moving them
> to a different group by means of the provided netlink interface.
>
> Vlad Dogaru (2):
> net_device: add support for network device groups
> netlink: support setting devgroup parameters
>
> include/linux/if_link.h | 1 +
> include/linux/netdevice.h | 7 +++++++
> net/core/dev.c | 12 ++++++++++++
> net/core/rtnetlink.c | 38 ++++++++++++++++++++++++++++++++++----
> 4 files changed, 54 insertions(+), 4 deletions(-)
What about a read/write sysfs interface as well?
/sys/class/net/eth0/devgroup
Not sure if numeric devgroup is best choice. Since this is more of
a human interface parameter maybe it should be a string? Or have
a translation in the utilities /etc/iproute2/devgroup?
--
next prev parent reply other threads:[~2011-01-14 16:08 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-14 9:38 [PATCH v3 0/2] net: add device groups Vlad Dogaru
2011-01-14 9:38 ` [PATCH v3 1/2] net_device: add support for network " Vlad Dogaru
2011-01-14 15:10 ` jamal
2011-01-20 7:41 ` David Miller
2011-01-14 9:38 ` [PATCH v3 2/2] netlink: support setting devgroup parameters Vlad Dogaru
2011-01-14 15:10 ` jamal
2011-01-20 7:41 ` David Miller
2011-01-14 16:08 ` Stephen Hemminger [this message]
2011-01-15 16:45 ` [PATCH v3 0/2] net: add device groups Vlad Dogaru
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=20110114080810.2f128064@nehalam \
--to=shemminger@vyatta.com \
--cc=ddvlad@rosedu.org \
--cc=hadi@cyberus.ca \
--cc=netdev@vger.kernel.org \
--cc=opurdila@ixiacom.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.