Re: [Bonding-devel] Re: [PATCH] Fix for 802.3ad shutdown issue

From: Mitch Williams
Date: Wed Nov 17 2004 - 19:00:31 EST




On Wed, 17 Nov 2004, David Smithson wrote:

>
> Hi all. Where could I get my hands on a nicely-formatted version of
> this patch? I'm looking to patch my FC3 2.6.9 kernel.
>

Sorry for the mangling, David. Here's the patch, hopefully looking a
little better now that I've figured out how get Pine talking through our
corporate net.
-Mitch Williams


diff -uprN -X dontdiff linux/drivers/net/bonding/bonding.h linux-2.6.9/drivers/net/bonding/bonding.h
--- linux/drivers/net/bonding/bonding.h 2004-10-18 14:53:44.000000000 -0700
+++ linux-2.6.9/drivers/net/bonding/bonding.h 2004-10-29 14:01:14.000000000 -0700
@@ -36,8 +36,8 @@
#include "bond_3ad.h"
#include "bond_alb.h"

-#define DRV_VERSION "2.6.0"
-#define DRV_RELDATE "January 14, 2004"
+#define DRV_VERSION "2.6.1"
+#define DRV_RELDATE "October 29, 2004"
#define DRV_NAME "bonding"
#define DRV_DESCRIPTION "Ethernet Channel Bonding Driver"

diff -uprN -X dontdiff linux/drivers/net/bonding/bond_main.c linux-2.6.9/drivers/net/bonding/bond_main.c
--- linux/drivers/net/bonding/bond_main.c 2004-10-18 14:55:21.000000000 -0700
+++ linux-2.6.9/drivers/net/bonding/bond_main.c 2004-10-29 14:01:37.000000000 -0700
@@ -469,6 +469,13 @@
* * Add support for VLAN hardware acceleration capable slaves.
* * Add capability to tag self generated packets in ALB/TLB modes.
* Set version to 2.6.0.
+ * 2004/10/29 - Mitch Williams <mitch.a.williams at intel dot com>
+ * - Fixed bug when unloading module while using 802.3ad. If
+ * spinlock debugging is turned on, this causes a stack dump.
+ * Solution is to move call to dev_remov_pack outside of the
+ * spinlock.
+ * Set version to 2.6.1.
+ *
*/

//#define BONDING_DEBUG 1
@@ -3566,15 +3573,15 @@ static int bond_close(struct net_device
{
struct bonding *bond = bond_dev->priv;

- write_lock_bh(&bond->lock);
-
- bond_mc_list_destroy(bond);
-
if (bond->params.mode == BOND_MODE_8023AD) {
/* Unregister the receive of LACPDUs */
bond_unregister_lacpdu(bond);
}

+ write_lock_bh(&bond->lock);
+
+ bond_mc_list_destroy(bond);
+
/* signal timers not to re-arm */
bond->kill_timers = 1;

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/