Bug 508277 - ifenslave fails with too many open files in system
Summary: ifenslave fails with too many open files in system
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: iputils
Version: 11
Hardware: x86_64
OS: Linux
low
medium
Target Milestone: ---
Assignee: Jiri Skala
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-06-26 11:48 UTC by Nigel Rumens
Modified: 2014-11-09 22:31 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-08-31 17:00:07 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Nigel Rumens 2009-06-26 11:48:18 UTC
Description of problem: ifenslave on wireless device fails with Error: SIOCBONDENSLAVE failed: Too many open files in system


Version-Release number of selected component (if applicable): Fedora 11


How reproducible: every time


Steps to Reproduce:
1.ifenslave bond0 eth1
2.
3.
  
Actual results: error message 
Error: SIOCBONDENSLAVE failed: Too many open files in system



Expected results: eth1 is a slave to bond0


Additional info:

setup is dell 1525 laptop with wired and wireless nic's normally I use these as a bond device in backup mode with the wired device as the primary and wireless as the secondary.

This has been working fine with both F10 and F11. Then I updated the machine this morning when it started failing with the above error.

This mornings update was to kernel 2.6.29.5-191.fc11.x86_64

Etherenet devices are
09:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8040 PCI-E Fast Ethernet Controller (rev 12)
0b:00.0 Network controller: Broadcom Corporation BCM4312 802.11b/g (rev 01)

the broadcom is eth1

both devices work fine when configured separately but I am now unable to create a bond device out of them.

Comment 1 Andy Gospodarek 2009-06-30 15:19:48 UTC
Can you tell me which kernel worked previously?

There have been some changes to bonding code upstream recently (in the last two weeks), but I'm not sure that is the problem.

There is also this tunable:

/proc/sys/fs/file-max

which may have some effect.  What does that output look like on your currently-running system?  On an upstream kernel based on 2.6.30, mine shows:

# cat /proc/sys/fs/file-max 
100216

and on a f10 system running 2.6.27, mine shows:

# cat /proc/sys/fs/file-max 
733944

Comment 2 Nigel Rumens 2009-06-30 19:08:31 UTC
Previous working kernel was kernel-2.6.29.4-167.fc11.x86_64

# cat /proc/sys/fs/file-max
300478

One other thing I forgot is the error above is with ifenslave -v without the -v option it simply says Enslave failed

anything else you need just let me know

Comment 3 Andy Gospodarek 2009-06-30 20:02:55 UTC
Do you get the same error if you try to add the slave to the bond by doing this:

echo +eth0 > /sys/class/net/bond0/bonding/slaves

Comment 4 Nigel Rumens 2009-06-30 20:30:00 UTC
Yep same error

# echo +eth1 > /sys/class/net/bond0/bonding/slaves
-bash: echo: write error: Too many open files in system

Comment 5 Andy Gospodarek 2009-06-30 21:06:04 UTC
This sounds more like a kernel problem than something specific to ifenslave.

Can you open any files (like what about just creating a new file in /tmp)?

Comment 6 Nigel Rumens 2009-06-30 21:48:23 UTC
Yes everything seems to be working fine apart from that - I can create files. Don't see anything strange in messages etc. Can ifconfig up and down both wired and wireless nic's and have either one working.

That's how I'm doing this just ifconfig and iwconfiged the wireless card up (not near the lan cable at the moment) and I'm away.

Apart from not being able to create a bond device out of them now I've not noticed any other problems at all.

Comment 7 Andy Gospodarek 2009-07-01 19:49:25 UTC
Can you enslave eth0 without problems?

Can you also try this: 

# echo 800000 > /proc/sys/fs/file-max

and see if you can then enslave eth1.

Of course there has been no change to the BCM4312 driver in fedora between those builds.

Have you been using the fedora driver or are you using one from broadcom or some other source?

Comment 8 Nigel Rumens 2009-07-01 20:07:13 UTC
I can enslave eth0 no problem

tried enslaving eth1 after doing echo 800000 > /proc/sys/fs/file-max
no change - still the same error

I am using the broadcom and kmod-wl from rpmfusion

# yum list installed | grep wl
akmod-wl.x86_64                          5.10.91.9-3.fc11              @rpmfusion-nonfree-updates
broadcom-wl.noarch                       5.10.91.9-1.fc11              @rpmfusion-nonfree-updates
iwl3945-firmware.noarch                  15.32.2.9-1.fc11              installed
iwl4965-firmware.noarch                  228.57.2.23-5.fc11            installed
iwl5000-firmware.noarch                  8.24.2.12-1.fc11              installed
kmod-wl.x86_64                           5.10.91.9-3.fc11.1            @rpmfusion-nonfree-updates
kmod-wl-2.6.29.3-155.fc11.x86_64.x86_64  5.10.79.10-2.fc11.6           installed
kmod-wl-2.6.29.4-167.fc11.x86_64.x86_64  5.10.91.9-3.fc11              @rpmfusion-nonfree-updates
kmod-wl-2.6.29.5-191.fc11.x86_64.x86_64  5.10.91.9-3.fc11.1            @rpmfusion-nonfree-updates

Comment 9 Nigel Rumens 2009-08-29 11:51:22 UTC
Looks like this bug is down to the broadcom driver.

I just grabbed the latest b43 driver from linux wireless which now supports my device:- 

0b:00.0 Network controller [0280]: Broadcom Corporation BCM4312 802.11b/g [14e4:4315] (rev 01)

and now ifenslave works perfectly and I once again have a fully functional bond0

Comment 10 Andy Gospodarek 2009-08-31 17:00:07 UTC
Sounds great!  I'll close this out, then.


Note You need to log in before you can comment on or make changes to this bug.