Tulip and Interrupt mitigation
Hello,
the tulip driver (as of 2.4.7, maybe earlyer versions too) has code in tulip_interrupt to switch to interrupt mitigation on heavy network load. The problem is: I have heavy network load, my system (Athlon 900 MHz with 1 GB) spends 100% of the time in the interrupt, but it does not switch to mitigation.
If I force the card to mitigation (by changing the code of tulip driver) I don't loose any packets and get 20% idle time. Great!
I don't use CONFIG_NET_HW_FLOWCONTROL because sometimes my network goes down for about 5 seconds. This does not happen without CONFIG_NET_HW_FLOWCONTROL.
The problem seems to be the following: Mitigation is switched on if we receive (or send) a lot of packets during a single interrupt. But this never happens. During an interrupt I receive or send about 5 packets, so no mitigation is started. But the interrupt is called very quickly after leaving again, seeing another 5 packets and so on.
My tulip cards use 21143 chips.
Thanks in advance,
Thomas Mischke