Skip to contentSkip to conversation

3c59x driver: card not responding after a while

DISCUSSION Ronny T. Lampert (EED) 8 participants 10 messages May 31, 2002 – Jun 5, 2002

lore
Share & tools
lore
#0 lore raw

Hello,

I'm having (reproducable) problems with the 3c59x driver; after a while (depends on card/traffic), the card doesn't send nor receive anymore.

I had 3c905B and 3c905C series, both affected. I did also change mainboard-slots.
My current card is identifying as:
00:0c.0 Ethernet controller: 3Com Corporation 3c905C-TX [Fast Etherlink] (rev 74)
Subsystem: 3Com Corporation 3C905C-TX Fast Etherlink for PC
Management NIC

        Flags: bus master, medium devsel, latency 64, IRQ 11
        I/O ports at e800 [size=128]
        Memory at ed000000 (32-bit, non-prefetchable) [size=128]
        Expansion ROM at ec000000 [disabled] [size=128K]
        Capabilities: [dc] Power Management version 2

Kernels were
o RH 7.2 stock (2.4.7)
o 2.4.17 (custom, driver builtin) (after a while)
o 2.4.18 (custom, driver builtin) (depending on traffic, last time:
[ifconfig output after the device is frozen]

          RX packets:249782 errors:0 dropped:0 overruns:94 frame:0
          TX packets:32712 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100 
          RX bytes:49988234 (47.6 Mb)  TX bytes:8716361 (8.3 Mb)

2.2.19 worked fine.
gcc -v is gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-98) (std from RH 7.2; no 'kgcc' available)
I saw no changes in 2.4.19*, so I went out asking you :)

Machine is a K6-2 500 via a VIA MVP3 chipset, Shuttle mainboard (if that matters).

If you do a /etc/init.d/network restart (or ifconfig eth0 down ; ifconfig eth0 ... up), the card works again.
dmesg is not reporting anything.
I also did force the card to using fixed 100BaseTx-FD, didn't change anything.

If you need further information or more testing please say so. Please also include me on CC.
Thanks.

Signature · 4 lines
Ronny T. Lampert		email: [email protected]
System Administrator		voice: +49 911 255 1214
Ericsson Eurolab Deutschland	fax:   +49 911 255 1960
Nuernberg, Germany
#1 lore raw

Ronny T. Lampert (EED) on Fri 31/05 17:34 +0200:

Quoted 3 lines

I'm having (reproducable) problems with the 3c59x driver; after a while (depends on card/traffic), the card doesn't send nor receive anymore.

- are you using netfilter?

- cat /proc/net/dev, what does the fifo counter say when iface hung?

- it degrades over time and only after quite a bit of data pumped through it does it hang right? and slowly decreasing throughput right?

- I feel much better to know someone else has this bug! I thought sure I was crazy since I did not hear of this problem from anyone else and 905B is very common card.

Quoted 1 line

o RH 7.2 stock (2.4.7)

wait this worked or didn't? for me 2.4.7 works fine, 2.4.17 does not.

Quoted 2 lines

If you do a /etc/init.d/network restart (or ifconfig eth0 down ; ifconfig eth0 ... up), the card works again.

yep, same thing here...I was to try 2.4.7 3c59x.c with otherwise recent kernel but have not got around to this yet...

#2 lore raw

hmm i can't say i'm experiencing any problems, perhaps this might help;

Quoted 6 lines · Scott McDermott

Ronny T. Lampert (EED) on Fri 31/05 17:34 +0200:

Quoted 3 lines

I'm having (reproducable) problems with the 3c59x driver; after a while (depends on card/traffic), the card doesn't send nor receive anymore.

- are you using netfilter?

Yep

Quoted 2 lines

- it degrades over time and only after quite a bit of data pumped through it does it hang right? and slowly decreasing throughput right?

Stays consistent, 60+ day uptime.

Quoted 3 lines

- I feel much better to know someone else has this bug! I thought sure I was crazy since I did not hear of this problem from anyone else and 905B is very common card.

You might have to plead insanity ;)

Quoted 3 lines
Quoted 1 line

o RH 7.2 stock (2.4.7)

wait this worked or didn't? for me 2.4.7 works fine, 2.4.17 does not.

iirc stock RH7.2 and RH7.3 worked fine.

Quoted 2 lines

yep, same thing here...I was to try 2.4.7 3c59x.c with otherwise recent kernel but have not got around to this yet...

I'm running 2.4.18-pre7-ac1, 2.4.19-pre8-ac(can't recall), all the boxes transfer 2G+ of data a day (home network). IIRC i've been using those cards since 2.4.2ish almost without skipping any version updates.

Cards are 3c905B on i440BX, SIS5595 and ServerWorks CNB20LE

I hope this information is of some use to you.

Regards,
Zwane

Signature · 1 line
http://function.linuxpower.ca
#3 lore raw
In reply to Ronny T. Lampert (EED)
Quoted 6 lines · Ronny T. Lampert (EED)

Hello,

I'm having (reproducable) problems with the 3c59x driver; after a while (depends on card/traffic), the card doesn't send nor receive anymore.

I see this too. I always thought it was the less-than-perfect ABIT BP6 loosing an irq or something. (odd that it _always_ is the NIC that goes though...) I also have a k6 with the same NIC, and another UP machine at work. They never fail this way.
Could it be a SMP problem?

Quoted 2 lines

If you do a /etc/init.d/network restart (or ifconfig eth0 down ; ifconfig eth0 ... up), the card works again.

That never helped me - "shutdown -r now" is my way to recovery. The card driver is compiled in, perhaps I should try making it modular and unload/reload.

Helge Hafting

#4 lore raw
Quoted 5 lines · Helge Hafting

I see this too. I always thought it was the less-than-perfect ABIT BP6 loosing an irq or something. (odd that it _always_ is the NIC that goes though...) I also have a k6 with the same NIC, and another UP machine at work. They never fail this way.
Could it be a SMP problem?

I wouldn't think so, i use it on SMP extensively without a hitch.

Cheers,
Zwane

Signature · 1 line
http://function.linuxpower.ca
#5 lore raw
In reply to Helge Hafting
Quoted 9 lines · Zwane Mwaikambo
Quoted 5 lines · Helge Hafting

I see this too. I always thought it was the less-than-perfect ABIT BP6 loosing an irq or something. (odd that it _always_ is the NIC that goes though...) I also have a k6 with the same NIC, and another UP machine at work. They never fail this way.
Could it be a SMP problem?

I wouldn't think so, i use it on SMP extensively without a hitch.

"me too" - have been using 3c905B cards in various SMP (and UP) boxes for a couple of years now and they've never failed me, even on bp6. in fact i seem to have missed out on the plague of bp6 problems, even when running dual 300a overclocked to 450. strange.

j.

Signature · 1 line
toyota power: http://indigoid.net/
#6 lore raw
In reply to Helge Hafting
Quoted 10 lines · Helge Hafting
Quoted 3 lines · Ronny T. Lampert (EED)

I'm having (reproducable) problems with the 3c59x driver; after a while (depends on card/traffic), the card doesn't send nor receive anymore.

I see this too. I always thought it was the less-than-perfect ABIT BP6 loosing an irq or something. (odd that it _always_ is the NIC that goes though...) I also have a k6 with the same NIC, and another UP machine at work. They never fail this way.
Could it be a SMP problem?

Try increasing max_interrupt_work from 32 to 128 (located in drivers/net/3c59x.c). Joe

#7 lore raw
In reply to Helge Hafting
Quoted 10 lines · john slee
Quoted 8 lines · Zwane Mwaikambo
Quoted 5 lines · Helge Hafting

I see this too. I always thought it was the less-than-perfect ABIT BP6 loosing an irq or something. (odd that it _always_ is the NIC that goes though...) I also have a k6 with the same NIC, and another UP machine at work. They never fail this way.
Could it be a SMP problem?

Quoted 7 lines
Quoted 1 line

I wouldn't think so, i use it on SMP extensively without a hitch.

"me too" - have been using 3c905B cards in various SMP (and UP) boxes for a couple of years now and they've never failed me, even on bp6. in fact i seem to have missed out on the plague of bp6 problems, even when running dual 300a overclocked to 450. strange.

That driver is solid for SMP. It's possible that the BP6 is losing its IRQ routing assignments, or the APIC is getting stuck. We had extensive problems with that last year. A workaround was implemented and as far as I can tell, the problem went away.

It seems to affect network cards most because they typically generate the most interrupts.

Try booting the machine with the `noapic' option.

-

#8 lore raw
In reply to Helge Hafting
Quoted 28 lines · Andrew Morton
Quoted 11 lines · john slee
Quoted 9 lines · Zwane Mwaikambo
Quoted 5 lines · Helge Hafting

I see this too. I always thought it was the less-than-perfect ABIT BP6 loosing an irq or something. (odd that it _always_ is the NIC that goes though...) I also have a k6 with the same NIC, and another UP machine at work. They never fail this way.
Could it be a SMP problem?

Quoted 7 lines
Quoted 1 line

I wouldn't think so, i use it on SMP extensively without a hitch.

"me too" - have been using 3c905B cards in various SMP (and UP) boxes for a couple of years now and they've never failed me, even on bp6. in fact i seem to have missed out on the plague of bp6 problems, even when running dual 300a overclocked to 450. strange.

That driver is solid for SMP. It's possible that the BP6 is losing its IRQ routing assignments, or the APIC is getting stuck. We had extensive problems with that last year. A workaround was implemented and as far as I can tell, the problem went away.

Quoted 4 lines

It seems to affect network cards most because they typically generate the most interrupts.

Try booting the machine with the `noapic' option.

If I remember correctly, back in January we (we being Andrew Morton and myself) talked about my 3C905C-TX not willing to share an interrupt with my SBLive!...

I've spotted the same problem, this time sharing an interrupt between my 3C905C-TX and an Intel i82559 10/100 ethernet controller (kernel is 2.4.19pre7).

The situation is a bit different : using the 3C905C with the SBLive! resulted in a total lock-up of the machine, whereas using both network cards usually generate network timeouts and weird errors.

Putting the cards in separate (meaning different IRQ lines) PCI slots solved the problem (same solution than between 3C905 and SBLive!). All 3 cards are now working perfectly, at the same time.

Motherboard is MSI BXMaster (i440BX).

Signature · 6 lines
F. CAMI
----------------------------------------------------------
 "To disable the Internet to save EMI and Disney is the
moral equivalent of burning down the library of Alexandria
to ensure the livelihood of monastic scribes."
              - John Ippolito (Guggenheim)
#9 lore raw
In reply to Helge Hafting

Hi,

Quoted 3 lines
Quoted 3 lines

That driver is solid for SMP. It's possible that the BP6 is losing its IRQ routing assignments, or the APIC is getting stuck. We had extensive problems with that last

...

Quoted 3 lines
Quoted 3 lines

It seems to affect network cards most because they typically generate the most interrupts.
Try booting the machine with the `noapic' option.

Even on an UP and no-MP-capable K6? IMHO this won't help (at least myself).

Quoted 5 lines

and myself) talked about my 3C905C-TX not willing to share an interrupt with my SBLive!...
I've spotted the same problem, this time sharing an interrupt between my 3C905C-TX and an Intel i82559 10/100 ethernet controller (kernel is 2.4.19pre7).

I forgot to mention that there is only the 3c905 and a gfxcard (AGP) in the box, no interrupts shared - I THOUGHT!
Then a quick lspci -v revealed both sharing IRQ 11. Will try to reassign IRQs.

Thank you! :-)
Hope this is solved.

Signature · 4 lines
Ronny T. Lampert		email: [email protected]
System Administrator		voice: +49 911 255 1214
Ericsson Eurolab Deutschland	fax:   +49 911 255 1960
Nuernberg, Germany