Too many interrupts on eepro100
Christian Reis <[email protected]>
| Newsgroups | gmane.linux.drivers.eepro100.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi there, Still tracking down the problem with that eepro100 card that hogs CPU when doing block read/write. I've done a bit more testing and I've more or less cut down the problem to the following fact: it's generating too many interrupts. I have two boxes, with the same CPU and parts, but one has an ALI chipset and the other, a SIS530. This is linux-2.4.19, with Andrey's stock 1.36 driver. Basically, while the ALI computer seems to coast through block read/write (procinfo -D shows me 50-100 interrupts every refresh), the second computer is just busy doing context switches (procinfo -D shows me 5000-10000 interrupts ever refresh). At the end of a run of 'dd if=/dev/zero of=TESTFILE bs=1k count=100000', the ALI's network card has processed 18485 interrupts while the card in the SIS computer has processed 68753. Something's definitely wrong. I have been reading a bit, and I'm unsure if this has to do with interrupt mitigation (does this driver support this), with something broken in the PCI setup (perhaps in BIOS) or it's something unrelated. Donald, Andrey, any ideas? Donald, should I try to compile your driver into the kernel? These are diskless boxes, so I can't load them as modules, and this also rules out the Intel e100 driver. Let me know if you have a suggestion as to what I could do. I've run eepro100-diag and pci-config, and I've disabled sleep mode in the cards. I've also looked carefully between the two computer's output, and there *are* some very slight differences between the register contents -- would sending that in be helpful? Take care, -- Christian Reis, Senior Engineer, Async Open Source, Brazil. http://async.com.br/~kiko/ | [+55 16] 261 2331 | NMFL