max_interrupt_work values

Bob's 2nd account
Sun Dec 6 04:01:49 1998


I am having some problems with a Netgear card and am getting a messages of
" eth0: Too much work during an interrupt, csr5=0xfd6980c0. " at the console 
and it is in the 'dmesg'. I read in the list archives that increaing the value
of the max_interrupt_work int in the tulip.c code can help this. I tried this,
setting it to 40 and then to 50. It definitely worked to some extent.

But is there a limit to how high this should/can be set? Should I worry about
data loss if this value is increased past the default value? Is there a way to
determine the optimal value beside trial and error?

I don't have a strong understanding of interrupts and certainly not of ethernet
drivers, so any insight would help.

-Bob Burton

By the way: I tested this out by FTP'ing files from the Linux Server to a 
Windoze95 client via the DOS FTP program. With the max_interrupt_work=25, 
anything more then 50MB would give me the 'too much work' message. But with
the max_interrupt_work=50, I could FTP 100 MB's no problem, although I tried
FTp'ing a 180MB file as a bit of an extreme test and I didn't get the 'too much
work' message, but everything on eth0 did slow to a crawl.

System Info:
RedHat Linux 5.1, kernel 2.0.34-0.6
Netgear FA310TX, using tulip.c v.90, as a module