Broadcom BCM4401 100Base-T driver module freezes ethernet connection, then reinitializes the device

Bug #60532 reported by David Anes
2
Affects Status Importance Assigned to Milestone
linux-source-2.6.15 (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Binary package hint: linux-image-2.6.15-26-k7

Current driver being used: Driver: b44.c:v0.97 (Nov 30, 2005) shipped with Ubuntu Dapper Drake.

Using the Broadcom in-kernel shipped driver, the ethernet device reinitializes itself when operates at a sostained high transfer rate. At about 200-300KB max speed is reached without errors/reinitiazations, but a 100Mbit ethernet device can go up to 8MB transfer rates approximately.

I do not know why this happens. Two years ago, a similar problem was happening with something called Watchdog:

NETDEV WATCHDOG: eth0: transmit timed out
eth0: Link is down.
eth0: Link is up at 100 Mbps, full duplex.
eth0: Flow control is off for TX and off for RX.

I've tried the latest available driver from the Broadcom webpage, and still happens. This has started with recent drivers. 6 months before, this was not happening. I noticed this recently, I was thinking the errors where from the University switches where I work, but I've isolated the error to the Broadcom driver.

MORE INFO:

Kernel Info:
=======================================================================
kraptor@krmobile:~$ uname -a
Linux krmobile 2.6.15-26-k7 #1 SMP PREEMPT Fri Sep 8 20:38:34 UTC 2006 i686 GNU/Linux

Loaded modules info
=======================================================================
kraptor@krmobile:~$ sudo lsmod
Module Size Used by
vmnet 40740 13
vmmon 117708 0
binfmt_misc 13192 1
rfcomm 44244 0
l2cap 29184 5 rfcomm
bluetooth 54372 4 rfcomm,l2cap
ppdev 10052 0
radeon 119200 2
drm 78292 3 radeon
cpufreq_stats 6912 0
tc1100_wmi 7172 0
video 16644 0
acpi_sbs 20556 0
battery 10308 1 acpi_sbs
i2c_acpi_ec 5440 1 acpi_sbs
container 4928 0
button 6992 0
pcc_acpi 12736 0
sony_acpi 5900 0
ac 5508 1 acpi_sbs
dev_acpi 11652 0
hotkey 11812 0
ext3 148424 1
jbd 65684 1 ext3
dm_mod 63640 1
md_mod 76244 0
cpufreq_userspace 6816 1
cpufreq_powersave 2240 0
cpufreq_ondemand 8104 0
cpufreq_conservative 9256 0
powernow_k7 9192 0
freq_table 5152 2 cpufreq_stats,powernow_k7
sr_mod 18276 0
sbp2 25540 0
scsi_mod 145736 2 sr_mod,sbp2
lp 12612 0
af_packet 25224 4
snd_ali5451 27084 3
snd_ac97_codec 99296 1 snd_ali5451
snd_ac97_bus 2688 1 snd_ac97_codec
joydev 10688 0
parport_pc 38340 1
parport 39560 3 ppdev,lp,parport_pc
snd_pcm_oss 56352 0
snd_mixer_oss 20800 1 snd_pcm_oss
snd_pcm 96772 5 snd_ali5451,snd_ac97_codec,snd_pcm_oss
snd_timer 27204 1 snd_pcm
snd 60068 10 snd_ali5451,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer
pcmcia 42108 0
psmouse 40132 0
serio_raw 8132 0
b44 28108 0
ipw2200 113836 0
i2c_ali1535 7812 0
i2c_ali15x3 8388 0
i2c_core 23168 3 i2c_acpi_ec,i2c_ali1535,i2c_ali15x3
mii 6528 1 b44
soundcore 11040 1 snd
snd_page_alloc 11592 1 snd_pcm
pcspkr 2564 0
ieee80211 40072 1 ipw2200
ieee80211_crypt 6848 1 ieee80211
ieee80211_1_1_13 41096 0
ieee80211_1_1_13_crypt 7360 1 ieee80211_1_1_13
yenta_socket 30092 1
rsrc_nonstatic 14784 1 yenta_socket
pcmcia_core 45528 3 pcmcia,yenta_socket,rsrc_nonstatic
ati_agp 9932 1
agpgart 37072 2 drm,ati_agp
shpchp 49312 0
pci_hotplug 30916 1 shpchp
tsdev 8320 0
evdev 10432 2
usbhid 42912 0
reiserfs 284400 1
ide_generic 1792 0
ehci_hcd 36104 0
ohci_hcd 22788 0
usbcore 139012 4 usbhid,ehci_hcd,ohci_hcd
ohci1394 37684 0
ieee1394 307160 2 sbp2,ohci1394
ide_cd 36228 0
cdrom 41504 2 sr_mod,ide_cd
ide_disk 19520 4
alim15x3 13196 0 [permanent]
generic 5444 0
thermal 14088 0
processor 27208 2 powernow_k7,thermal
fan 5124 0
capability 5256 0
commoncap 7616 1 capability
vga16fb 14344 1
vgastate 10304 1 vga16fb
fbcon 44640 72
tileblit 3072 1 fbcon
font 8640 1 fbcon
bitblit 6592 1 fbcon
softcursor 2752 1 bitblit

PCI Data info
=======================================================================
kraptor@krmobile:~$ sudo lspci -vvv
0000:00:00.0 Host bridge: ATI Technologies Inc AGP Bridge [IGP 320M] (rev 13)
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 64
        Region 0: Memory at d4000000 (32-bit, prefetchable) [size=64M]
        Region 1: Memory at d0400000 (32-bit, prefetchable) [size=4K]
        Region 2: I/O ports at 8090 [disabled] [size=4]
        Capabilities: [a0] AGP version 2.0
                Status: RQ=16 Iso- ArqSz=0 Cal=0 SBA+ ITACoh- GART64- HTrans- 64bit- FW+ AGP3- Rate=x1,x2,x4
                Command: RQ=1 ArqSz=0 Cal=0 SBA+ AGP+ GART64- 64bit- FW- Rate=x4

0000:00:01.0 PCI bridge: ATI Technologies Inc PCI Bridge [IGP 320M] (rev 01) (prog-if 00 [Normal decode])
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap- 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 99
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=68
        I/O behind bridge: 00009000-00009fff
        Memory behind bridge: d0100000-d01fffff
        Prefetchable memory behind bridge: e0000000-efffffff
        BridgeCtl: Parity- SERR- NoISA+ VGA+ MAbort- >Reset- FastB2B-

0000:00:07.0 ISA bridge: ALi Corporation M1533 PCI to ISA Bridge [Aladdin IV]
        Subsystem: ALi Corporation ALI M1533 Aladdin IV ISA Bridge
        Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 0
        Capabilities: [a0] Power Management version 1
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

0000:00:08.0 Multimedia audio controller: ALi Corporation M5451 PCI AC-Link Controller Audio Device (rev 02)
        Subsystem: Rioworks: Unknown device 2029
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR+ <PERR+
        Latency: 64 (500ns min, 6000ns max)
        Interrupt: pin A routed to IRQ 11
        Region 0: I/O ports at 8400 [size=256]
        Region 1: Memory at d0006000 (32-bit, non-prefetchable) [size=4K]
        Capabilities: [dc] Power Management version 2
                Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2+,D3hot+,D3cold+)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

0000:00:09.0 Modem: ALi Corporation M5457 AC'97 Modem Controller (prog-if 00 [Generic])
        Subsystem: Rioworks: Unknown device 2027
        Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Interrupt: pin A routed to IRQ 5
        Region 0: Memory at d0007000 (32-bit, non-prefetchable) [size=4K]
        Region 1: I/O ports at 8800 [size=256]
        Capabilities: [40] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot+,D3cold+)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

0000:00:0a.0 CardBus bridge: Texas Instruments PCI4410 PC card Cardbus Controller (rev 02)
        Subsystem: Rioworks: Unknown device 2029
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 168, Cache Line Size: 0x10 (64 bytes)
        Interrupt: pin A routed to IRQ 10
        Region 0: Memory at ffbfe000 (32-bit, non-prefetchable) [size=4K]
        Bus: primary=00, secondary=02, subordinate=05, sec-latency=176
        Memory window 0: 20000000-21fff000 (prefetchable)
        Memory window 1: 22000000-23fff000
        I/O window 0: 00001000-000010ff
        I/O window 1: 00001400-000014ff
        BridgeCtl: Parity- SERR- ISA- VGA- MAbort- >Reset+ 16bInt+ PostWrite+
        16-bit legacy interface ports at 0001

0000:00:0a.1 FireWire (IEEE 1394): Texas Instruments PCI4410 FireWire Controller (rev 02) (prog-if 10 [OHCI])
        Subsystem: Rioworks: Unknown device 2029
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 64 (750ns min, 1000ns max), Cache Line Size: 0x10 (64 bytes)
        Interrupt: pin A routed to IRQ 10
        Region 0: Memory at d000b000 (32-bit, non-prefetchable) [size=2K]
        Region 1: Memory at d0000000 (32-bit, non-prefetchable) [size=16K]
        Capabilities: [44] Power Management version 1
                Flags: PMEClk- DSI- D1- D2+ AuxCurrent=0mA PME(D0-,D1-,D2+,D3hot+,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

0000:00:0c.0 Network controller: Intel Corporation PRO/Wireless 2200BG (rev 05)
        Subsystem: Intel Corporation: Unknown device 2702
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 64 (750ns min, 6000ns max), Cache Line Size: 0x10 (64 bytes)
        Interrupt: pin A routed to IRQ 10
        Region 0: Memory at d0008000 (32-bit, non-prefetchable) [size=4K]
        Capabilities: [dc] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
                Status: D0 PME-Enable- DSel=0 DScale=1 PME-

0000:00:0d.0 USB Controller: NEC Corporation USB (rev 43) (prog-if 10 [OHCI])
        Subsystem: Rioworks: Unknown device 2029
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 64 (250ns min, 10500ns max), Cache Line Size: 0x10 (64 bytes)
        Interrupt: pin A routed to IRQ 11
        Region 0: Memory at d0009000 (32-bit, non-prefetchable) [size=4K]
        Capabilities: [40] Power Management version 2
                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

0000:00:0d.1 USB Controller: NEC Corporation USB (rev 43) (prog-if 10 [OHCI])
        Subsystem: Rioworks: Unknown device 2029
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 64 (250ns min, 10500ns max), Cache Line Size: 0x10 (64 bytes)
        Interrupt: pin B routed to IRQ 11
        Region 0: Memory at d000a000 (32-bit, non-prefetchable) [size=4K]
        Capabilities: [40] Power Management version 2
                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

0000:00:0d.2 USB Controller: NEC Corporation USB 2.0 (rev 04) (prog-if 20 [EHCI])
        Subsystem: Rioworks: Unknown device 2029
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 132 (4000ns min, 8500ns max), Cache Line Size: 0x10 (64 bytes)
        Interrupt: pin C routed to IRQ 11
        Region 0: Memory at d000b800 (32-bit, non-prefetchable) [size=256]
        Capabilities: [40] Power Management version 2
                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

0000:00:0e.0 Ethernet controller: Broadcom Corporation BCM4401 100Base-T (rev 01)
        Subsystem: Rioworks: Unknown device 2029
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort+ <TAbort- <MAbort- >SERR- <PERR-
        Latency: 64
        Interrupt: pin A routed to IRQ 11
        Region 0: Memory at d0004000 (32-bit, non-prefetchable) [size=8K]
        Expansion ROM at 24000000 [disabled] [size=128K]
        Capabilities: [40] Power Management version 2
                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
                Status: D0 PME-Enable- DSel=0 DScale=2 PME-

0000:00:10.0 IDE interface: ALi Corporation M5229 IDE (rev c4) (prog-if fa)
        Subsystem: Rioworks: Unknown device 2029
        Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 0 (500ns min, 1000ns max)
        Interrupt: pin A routed to IRQ 0
        Region 4: I/O ports at 8080 [size=16]
        Capabilities: [60] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

0000:00:11.0 Bridge: ALi Corporation M7101 Power Management Controller [PMU]
        Subsystem: Rioworks: Unknown device 2029
        Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-

0000:01:05.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility U1 (prog-if 00 [VGA])
        Subsystem: Rioworks eMachines M5312 builtin Video
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B+
        Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 66 (2000ns min), Cache Line Size: 0x10 (64 bytes)
        Interrupt: pin A routed to IRQ 10
        Region 0: Memory at e0000000 (32-bit, prefetchable) [size=256M]
        Region 1: I/O ports at 9000 [size=256]
        Region 2: Memory at d0100000 (32-bit, non-prefetchable) [size=64K]
        Expansion ROM at d0120000 [disabled] [size=128K]
        Capabilities: [58] AGP version 2.0
                Status: RQ=48 Iso- ArqSz=0 Cal=0 SBA+ ITACoh- GART64- HTrans- 64bit- FW- AGP3- Rate=x1,x2,x4
                Command: RQ=16 ArqSz=0 Cal=0 SBA+ AGP+ GART64- 64bit- FW- Rate=x4
        Capabilities: [50] Power Management version 2
                Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

Revision history for this message
Sebastian Rode (sebastian-ro-deactivatedaccount) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. You reported this bug a while ago and there hasn't been any activity in it recently. We were wondering is this still an issue for you? Can you try with latest updates?
Thanks in advance.

Changed in linux-source-2.6.15:
status: New → Incomplete
Revision history for this message
David Anes (kraptor) wrote :

This was fixed long time ago, and forgot to tell here.

Changed in linux-source-2.6.15:
status: Incomplete → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.