On Fri, Mar 16, 2007 at 02:16:48PM -0700, Stephen Hemminger wrote: > On Fri, 16 Mar 2007 14:36:45 -0600 > Rob Sims <[EMAIL PROTECTED]> wrote:
> > Are there some debug hooks that can be activated? My sky2 stops > > responding (very light load) about twice a day. The netdev watchdog > > notices after a while and is able to reactivate the interface: > > Mar 15 13:28:12 btd kernel: NETDEV WATCHDOG: eth0: transmit timed out > > Mar 15 13:28:12 btd kernel: sky2 eth0: tx timeout > > Mar 15 13:28:12 btd kernel: sky2 eth0: transmit ring 458 .. 435 report=458 > > done=458 > > Mar 15 13:28:12 btd kernel: sky2 eth0: disabling interface > > Mar 15 13:28:12 btd kernel: sky2 eth0: enabling interface > > Mar 15 13:28:12 btd kernel: sky2 eth0: ram buffer 48K > > Mar 15 13:28:15 btd kernel: sky2 eth0: Link is up at 1000 Mbps, full > > duplex, flow control both > > Use ethtool -S to if there are any pause frames, etc. See if frames are > still making it into PHY statistics but not being received. > > Use ethtool -d to dump registers. Need current version of ethtool with decode > logic. > > Then look for things like is Ram buffer read/write pointer changing? > > Is GMAC stuck in pause: > > Normal is: > GMAC 1 > Status 0x5010 (see GM_GPSR_XXX in sky2.h) > Control 0x1800 > > Stuck is > GMAC 1 > Status 0x5810 (or 0x5A10) First, here's the described hang in action, on the Core2 Duo on a 1Gb hub: GMAC 1 Status/Control remains at 0x5010/0x1800 until module is removed. Read/write buffer pointers are changing. Full ethtool output in http://www.robsims.com/sky2.netmon.log.gz This machine was also having major throughput problems - 17 kB/s. Rebooting brought it to ~ 20 MB/s. Booting into a kernel with the proprietary sk98lin kernel module showed ~ 80MB/s. Finally, returning to sky2 gave 117 MB/s. Tests run using netcat, dd, /dev/zero, and /dev/null, transmitting from the problem box to an e1000 via a Netgear GS108. No hangs were observed during the "load test." I also had a hang on a Pentium 4 w/sky2, 100Mb/s hub. I neglected to try removing and re-inserting the module before rebooting. GMAC 1 Status 0xF004 Control 0x1800 RAMbuffer pointers not moving, Read buffer Read pointer != Write pointer. http://www.robsims.com/sky2.ethtooldumps.tgz Thanks for looking at this. -- Rob
signature.asc
Description: Digital signature