Subject: Re: [PATCH] Unbreak sky2 on 88E8039 with current git

From: Petr Vandrovec <[email-masked]>
Date: Sat, 02 Feb 2008 16:57:12 -0800

Stephen Hemminger wrote:
> On Sat, 2 Feb 2008 11:52:43 +0100
> Petr Vandrovec <[email-masked]> wrote:
> 
>> Hello,
>>   since I synced my tree to Linus's one two days ago, sky2's packet receiption
>> dies almost instantly.  Device still transmits packets, but no receive.  
>> Fortunately fix is simple, unfortunately I do not know why fix works...
>>
>> Commit f03b865491c2f30f2a4d77cdafc69c978ceb38a0 (sky2: align IP header on Rx
>> if possible) stopped aligning receive buffers on devices which do not need
>> HANG_CHECK.  Unfortunately there is at least one device (mine, Yukon FE, rev 3)
>> which is not happy if receive buffer is not aligned.  I have no idea which
>> other chips/revisions are affected as well.
>>
>> Without patch 'ping -f -b 192.168.101.255' RX count stops incrementing in less
>> than 50 packets.  With patch in place it can run like before, for hours...
>> Box is an AMD rev F processor, with nVidia's MCP61 chipset.
>> 							Petr
> 
> I don't have a Yukon FE, but I believe that the Yukon FE does have a ram
> buffer, so you HANG_CHECK should be enabled for that device. You can check
> by running:
> 	ethtool -d eth0 | grep 'Ram Buffer'
> With ram buffer (like XL, EC)
> 	
> # ethtool -d eth0 | grep 'Ram Buffer'
> Ram Buffer                   0x18
> 
> No ram buffer (like EC-U, FE+, ...)
> # ethtool -d eth0 | grep 'Ram Buffer'
> Ram Buffer                   0x00

Some small one (if it is size):

gwy:~# ethtool -d eth0 | grep 'Ram'
Ram Buffer                   0x01

I've never observed hang on that device, and I have it for over year. I 
stress it sufficiently to kill EC rev 2 I have in the notebook when I 
copy some data between these two boxes, but this FE never hung.
							Petr