From: Veaceslav Falico <vfalico@redhat.com>
To: netdev@vger.kernel.org
Cc: Jay Vosburgh <fubar@us.ibm.com>,
Andy Gospodarek <andy@greyhouse.net>,
Patrick McHardy <kaber@trash.net>,
"David S. Miller" <davem@davemloft.net>,
Nikolay Aleksandrov <nikolay@redhat.com>,
Veaceslav Falico <vfalico@redhat.com>
Subject: [PATCH net-next v1 0/6] bonding: remove bond->vlan_list
Date: Thu, 8 Aug 2013 12:21:03 +0200 [thread overview]
Message-ID: <1375957269-13100-1-git-send-email-vfalico@redhat.com> (raw)
RFC -> v1: Got some feedback from Nikolay Aleksandrov (privately), tried to
address it, also fixed some bugs that I've found on the way. I
think it's ready to be considered a patchset for
review/inclusion in net-next.
The aim of this patchset is to remove bond->vlan_list completely, and use
8021q's standard functions instead of it.
The patchset is on top of Nik's latest two patches:
[net-next,v2,1/2] bonding: change the bond's vlan syncing functions with
the standard ones
[net-next,v2,2/2] bonding: unwind on bond_add_vlan failure
First two patches add two helper functions to vlan code:
bonding: add rcu to vlan_uses_dev() and make bond_vlan_used() use it
Here we change vlan_uses_dev() to be able to work under both rtnl
and rcu, and use it under rcu_read_lock() in bond_vlan_used().
vlan: add __vlan_find_dev_next()
This function takes dev and vlan_dev and returns the next vlan dev
that uses this dev. It can be used to cycle through the vlan list,
and not only by bonding - but by any network driver that uses its
private vlan list.
Next four patches actually convert bonding to use the new
functions/approach and remove the vlan_list completely.
This patchset solves several issues with bonding, simplify it overall,
RCUify further and add infrastructure to anyone else who'd like to use
8021q standard functions instead of their own vlan_list, which is quite
common amongst network drivers currently.
I'm testing it continuously currently, no issues found, will update on
anything.
CC: Jay Vosburgh <fubar@us.ibm.com>
CC: Andy Gospodarek <andy@greyhouse.net>
CC: Patrick McHardy <kaber@trash.net>
CC: "David S. Miller" <davem@davemloft.net>
CC: Nikolay Aleksandrov <nikolay@redhat.com>
Signed-off-by: Veaceslav Falico <vfalico@redhat.com>
---
drivers/net/bonding/bond_alb.c | 48 ++++++++----
drivers/net/bonding/bond_alb.h | 2 +-
drivers/net/bonding/bond_main.c | 163 ++++++---------------------------------
drivers/net/bonding/bonding.h | 16 ++--
include/linux/if_vlan.h | 8 ++
net/8021q/vlan.h | 6 +-
net/8021q/vlan_core.c | 36 ++++++++-
7 files changed, 115 insertions(+), 164 deletions(-)
next reply other threads:[~2013-08-08 10:20 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-08 10:21 Veaceslav Falico [this message]
2013-08-08 10:21 ` [PATCH v1 net-next 1/6] bonding: add rcu to vlan_uses_dev() and make bond_vlan_used() use it Veaceslav Falico
2013-08-08 10:39 ` [PATCH v2 " Veaceslav Falico
2013-08-08 10:21 ` [PATCH v1 net-next 2/6] vlan: add __vlan_find_dev_next() Veaceslav Falico
2013-08-08 10:21 ` [PATCH v1 net-next 3/6] bonding: make bond_alb use 8021q's dev->vlan_info instead of vlan_list Veaceslav Falico
2013-08-08 10:21 ` [PATCH v1 net-next 4/6] bonding: convert bond_has_this_ip to use bond->dev->vlan_info Veaceslav Falico
2013-08-08 10:21 ` [PATCH v1 net-next 5/6] bonding: convert bond_arp_send_all " Veaceslav Falico
2013-08-08 10:21 ` [PATCH v1 net-next 6/6] bonding: remove unused bond->vlan_list Veaceslav Falico
2013-08-08 10:39 ` [PATCH net-next v1 0/6] bonding: remove bond->vlan_list Veaceslav Falico
2013-08-08 16:49 ` Veaceslav Falico
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=1375957269-13100-1-git-send-email-vfalico@redhat.com \
--to=vfalico@redhat.com \
--cc=andy@greyhouse.net \
--cc=davem@davemloft.net \
--cc=fubar@us.ibm.com \
--cc=kaber@trash.net \
--cc=netdev@vger.kernel.org \
--cc=nikolay@redhat.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).