Re: [Bonding-devel] [PATCH] bonding: fix multiple module load problem

From: Jay Vosburgh
Date: Tue Jun 09 2009 - 13:38:20 EST

>Some users still load bond module multiple times to create bonding
>devices. This accidentally was broken when sysfs interface was added.

After looking at it, I think the multiple load stuff was broken
by the following:

commit b8a9787eddb0e4665f31dd1d64584732b2b5d051
Author: Jay Vosburgh <fubar@xxxxxxxxxx>
Date: Fri Jun 13 18:12:04 2008 -0700

bonding: Allow setting max_bonds to zero

Permit bonding to function rationally if max_bonds is set to
zero. This will load the module, but create no master devices (which can
be created via sysfs).

Requires some change to bond_create_sysfs; currently, the
netdev sysfs directory is determined from the first bonding device created,
but this is no longer possible. Instead, an interface from net/core is
created to create and destroy files in net_class.

Based on a patch submitted by Phil Oester <kernel@xxxxxxxxxxxxx>.
Modified by Jay Vosburgh to fix the sysfs issue mentioned above and to
update the documentation.

Signed-off-by: Phil Oester <kernel@xxxxxxxxxxxx>
Signed-off-by: Jay Vosburgh <fubar@xxxxxxxxxx>
Signed-off-by: Jeff Garzik <jgarzik@xxxxxxxxxx>

So, the patch below should probably go to -stable, too.

>Note: sysfs and procfs still produce WARN() messages when this is done
>so the sysfs method is the recommended API.
>Signed-off-by: Stephen Hemminger <shemminger@xxxxxxxxxx>

Signed-off-by: Jay Vosburgh <fubar@xxxxxxxxxx>

>Patch against 2.6.30-rc8
>--- a/drivers/net/bonding/bond_sysfs.c 2009-06-09 10:07:29.618979856 -0700
>+++ b/drivers/net/bonding/bond_sysfs.c 2009-06-09 10:18:04.039973238 -0700
>@@ -1538,6 +1538,7 @@ int bond_create_sysfs(void)
> printk(KERN_ERR
> "network device named %s already exists in sysfs",
>+ ret = 0;
> }
> return ret;


-Jay Vosburgh, IBM Linux Technology Center, fubar@xxxxxxxxxx
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at