From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nikolay Aleksandrov Subject: [PATCH net-next v2 0/7] bonding: get rid of curr_slave_lock Date: Thu, 11 Sep 2014 22:49:21 +0200 Message-ID: <1410468568-13781-1-git-send-email-nikolay@redhat.com> Cc: vfalico@gmail.com, j.vosburgh@gmail.com, andy@greyhouse.net, davem@davemloft.net, Nikolay Aleksandrov To: netdev@vger.kernel.org Return-path: Received: from mx1.redhat.com ([209.132.183.28]:16453 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753363AbaIKUui (ORCPT ); Thu, 11 Sep 2014 16:50:38 -0400 Sender: netdev-owner@vger.kernel.org List-ID: Hi all, This is the second patch-set dealing with bond locking and the purpose here is to convert curr_slave_lock into a spinlock called "mode_lock" which can be used in the various modes for their specific needs. The first three patches cleanup the use of curr_slave_lock and prepare it for the conversion which is done in patch 4 and then the modes that were using their own locks are converted to use the new "mode_lock" giving us the opportunity to remove their locks. This patch-set has been tested in each mode by running enslave/release of slaves in parallel with traffic transmission and miimon=1 i.e. running all the time. In fact this lead to the discovery of a subtle bug related to RCU which will be fixed in -net. Also did an allmodconfig test just in case :-) v2: fix bond_3ad_state_machine_handler's use of mode_lock and curr_slave_lock Best regards, Nikolay Aleksandrov Nikolay Aleksandrov (7): bonding: 3ad: clean up curr_slave_lock usage bonding: alb: remove curr_slave_lock bonding: clean curr_slave_lock use bonding: convert curr_slave_lock to a spinlock and rename it bonding: alb: convert to bond->mode_lock bonding: 3ad: convert to bond->mode_lock bonding: adjust locking comments drivers/net/bonding/bond_3ad.c | 84 ++++++-------------- drivers/net/bonding/bond_3ad.h | 1 - drivers/net/bonding/bond_alb.c | 159 +++++++++---------------------------- drivers/net/bonding/bond_alb.h | 2 - drivers/net/bonding/bond_debugfs.c | 4 +- drivers/net/bonding/bond_main.c | 89 ++++----------------- drivers/net/bonding/bond_options.c | 10 +-- drivers/net/bonding/bonding.h | 16 ++-- 8 files changed, 91 insertions(+), 274 deletions(-) -- 1.9.3