Commit:     1466a21997212a5fb33d5da9357841972b28b007
Parent:     a5e68c02fe4d8dff2ff3c5212f9f67082849cc4b
Author:     Jay Vosburgh <[EMAIL PROTECTED]>
AuthorDate: Tue Nov 6 13:33:28 2007 -0800
Committer:  Jeff Garzik <[EMAIL PROTECTED]>
CommitDate: Sat Nov 10 04:25:14 2007 -0500

    bonding: fix rtnl locking merge error
        Looks like I incorrectly merged one of the rtnl lock changes,
    so that one function, bonding_show_active_slave, held rtnl but didn't
    release it, and another, bonding_store_active_slave, never held rtnl but
    did release it.
        Fixed so the first function doesn't mess with rtnl, and the
    second correctly acquires and releases rtnl.
        Bug reported by Moni Shoua <[EMAIL PROTECTED]>
    Signed-off-by: Jay Vosburgh <[EMAIL PROTECTED]>
    Signed-off-by: Jeff Garzik <[EMAIL PROTECTED]>
 drivers/net/bonding/bond_sysfs.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/bonding/bond_sysfs.c b/drivers/net/bonding/bond_sysfs.c
index 7a06ade..b29330d 100644
--- a/drivers/net/bonding/bond_sysfs.c
+++ b/drivers/net/bonding/bond_sysfs.c
@@ -1193,8 +1193,6 @@ static ssize_t bonding_show_active_slave(struct device *d,
        struct bonding *bond = to_bond(d);
        int count;
-       rtnl_lock();
        curr = bond->curr_active_slave;
@@ -1216,7 +1214,9 @@ static ssize_t bonding_store_active_slave(struct device 
         struct slave *new_active = NULL;
        struct bonding *bond = to_bond(d);
+       rtnl_lock();
        if (!USES_PRIMARY(bond->params.mode)) {
                printk(KERN_INFO DRV_NAME
                       ": %s: Unable to change active slave; %s is in mode 
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at

Reply via email to