Skip to contentSkip to conversation

bonding: sysfs patch broke module renaming

DISCUSSION Patrick McHardy 2 participants 2 messages Jan 19, 2007

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

The sysfs patch broke using multiple instances of the bonding module through module renaming (modprobe -o). In recent kernels it fails with -EEXIST when trying to add the bonding_masters file for the second time, in older kernels (where sysfs_add_file didn't check for duplicates) it will crash when unloading the modules.

I don't see a good way to fix it, can someone please look into this?

#1 lore raw
Quoted 5 lines · Patrick McHardy

The sysfs patch broke using multiple instances of the bonding module through module renaming (modprobe -o). In recent kernels it fails with -EEXIST when trying to add the bonding_masters file for the second time, in older kernels (where sysfs_add_file didn't check for duplicates) it will crash when unloading the modules.

Ok, I see what the problem is; it's got to do with out device
creation was changed at some point for the sysfs stuff that broke the multiple load logic. I don't think it has to do with the sysfs_add_file duplicate check business; I can see the error in how bond_create() is called in the new (post-sysfs) stuff, although I haven't tracked it down to a particular changeset.

There'a also a separate error handling bug I see in
bond_create() that I don't even get to because it bails out first.

	Anyway, let me see what I can work out to fix this up.

	-J

---
-Jay Vosburgh, IBM Linux Technology Center, [email protected]