_very_ strange problems with r8169 nic driver
Hi All,
Im in the process of trying to get a network interface up on my new AMD64 box (debian woody, kernel 2.6.8.1).
My motherboard has two onboard NICs, an RTL8201 and an RTL8110S. Searching the web it appears that the correct driver for the RTL8110S is r8169.c.
The documentation for this driver also suggests that it works with the RTL8110S.
I can compile and run this driver in the kernel or as a module. That is fine. However after a small amount of packets the driver dies a horrible death and locks up the machine to an unrecoverable state.
A good demonestration of this error is bringing up the network interface and trying to ping another computer on my network:
#insmod r8169.ko
... Module startup info, autonegotiates successfully at 10Mb/s
#ping 10.3.128.22
64 bytes from 10.3.128.22: icmp_seq=0 ttl=59 time=3.4 ms
64 bytes from 10.3.128.22: icmp_seq=1 ttl=59 time=3.4 ms
...............
64 bytes from 10.3.128.22: icmp_seq=59 ttl=59 time=3.4 ms
64 bytes from 10.3.128.22: icmp_seq=60 ttl=59 time=3.4 ms
(here the ping pauses for approx. 30s, it can still be used normally)
NETDEV WATCHDOG: eth0: transmit timer out
eth0: no rx Buffer allocated
(this message is repeated, there is no response from the computer from keypress, even numlock toggle does not work)
This seems like a pretty serious problem for me. Has anybody else seen this error or know how to fix it. It seems to be something along the lines of a dodgy free routine for memory on the nic or something.
Any ideas on how to fix this?
-- Chris
|