[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1194920136881-git-send-email-fubar@us.ibm.com>
Date: Mon, 12 Nov 2007 18:15:36 -0800
From: Jay Vosburgh <fubar@...ibm.com>
To: netdev@...r.kernel.org
Cc: davem@...emloft.net, jgarzik@...ox.com, monis@...taire.com,
Jay Vosburgh <fubar@...ibm.com>
Subject: [PATCH] bonding: Fix resource use after free
Fix bond_destroy and bond_free_all to not reference the
struct net_device after calling unregister_netdevice.
Bug and offending change reported by Moni Shoua <monis@...taire.com>
Signed-off-by: Jay Vosburgh <fubar@...ibm.com>
---
Copying DaveM since Jeff is out this week; please apply for 2.6.24.
-J
drivers/net/bonding/bond_main.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
index a198404..423298c 100644
--- a/drivers/net/bonding/bond_main.c
+++ b/drivers/net/bonding/bond_main.c
@@ -1847,9 +1847,9 @@ int bond_release(struct net_device *bond_dev, struct net_device *slave_dev)
*/
void bond_destroy(struct bonding *bond)
{
- unregister_netdevice(bond->dev);
bond_deinit(bond->dev);
bond_destroy_sysfs_entry(bond);
+ unregister_netdevice(bond->dev);
}
/*
@@ -4475,8 +4475,8 @@ static void bond_free_all(void)
bond_mc_list_destroy(bond);
/* Release the bonded slaves */
bond_release_all(bond_dev);
- unregister_netdevice(bond_dev);
bond_deinit(bond_dev);
+ unregister_netdevice(bond_dev);
}
#ifdef CONFIG_PROC_FS
--
1.5.3.1
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists