Realtek RTL8110 (SB) watchdog timeout.

Pyun YongHyeon pyunyh at gmail.com
Fri Aug 1 08:09:34 UTC 2008


On Fri, Aug 01, 2008 at 03:12:05AM +0200, Eugene Butusov wrote:
 > Hi,
 > 
 >   After updating from 7.0-RELEASE to STABLE (around 15/08) my NIC 
 > refuses to handle large file transfers.
 > 
 > pciconf -lv
 > 
 > re0 at pci0:4:0:0: class=0x020000 card=0x001a6409 chip=0x816910ec 
 > rev=0x10 hdr=0x00
 >     vendor     = 'Realtek Semiconductor'
 >     device     = 'RTL8110SB Single-Chip Gigabit LOM Ethernet Controller'
 >     class      = network
 >     subclass   = ethernet
 > 
 > Log messages:
 > 
 > re: watchdog timeout
 > re: link changed to DOWN
 > re: link changed to UP
 > 
 > When someone tried to copy large (i.e. 700MB) file from samba share 
 > (local gigabit network) or ftp (same LAN),
 > the NIC was reseted. For a while host was not accesible from the 
 > network, and then it came back with log messages shown above.
 > I've tried to tune samba socket options (SO_RCVBUF=16384 
 > SO_SNDBUF=16384), and this fixed the problem for samba users. One 
 > interesting thing: copying file to windows XP machine worked fine, 
 > while Vista (SP1 x64) caused the problem.
 > 
 > What solved the problem definitely was disabling TSO for re0 (ifconfig 

One of developer also reported TSO issue. But his hardware was a
plain 8169S. Given that you're seeing TSO issues on 8110SB I'm
afraid all RealTek 8169/8110 series may suffer from the TSO issues.
Under certain circumtances, the controller generates corrupted
frames for TSO case and this seem to be resulted in watchdog
timeouts.
I'm not sure recent PCIe based 8168/8110 family also suffers from
the issue as no one have complained the issue.

 > re0 -tso). I haven't notice any performance drop and it works fine, 
 > but I'm just curious what happened to the 'good' driver from 7.0-RELEASE.
 > 

I don't think re(4) in 7.0-RELEASE is bug free. If you check commit
logs in RELENG_7 you may see what I mean. At the time of re(4)
overhauling, I added TSO to re(4). Generally TSO shall not increase
Tx performance but TSO significantly saves CPU cycles for TCP bulk
transfers. The saved CPU power could be used for other tasks.

Anyway, thanks for reporting, I'll disable TSO in next monday.

-- 
Regards,
Pyun YongHyeon


More information about the freebsd-stable mailing list