On Tue, 19 Jul 2005, Jason L Tibbitts III wrote:
mii-tool -v eth0:
eth0: negotiated 100baseTx-FD flow-control, link ok
product info: vendor 00:50:43, model 2 rev 3
basic mode: autonegotiation enabled
basic status: autonegotiation complete, link ok
capabilities: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
advertising: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control
link partner: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD flow-control
So it looks like it's on (although I don't understand the
"capabilities" line and why it differs). But (and here's the big
deal) the switch does not recognize that flow control is on. It still
shows "None" in the "Flow Control Status" column. UDP NFS performance
is still abysmal. (Maybe I'm wrong in thinking that flow control will
help this.) By abysmal, I mean it's about thirty times slower than
when I force things to drop to 100mbit.
something can't keep up, and is dropping packets is my guess. a tcpdump
of the abysmal NFS performance might help here. Flow control will only
help you *if and only if* you're seeing mpc (missed packet) drops in
ethtool -S. otherwise you have some other problem.
JB> As for debugging the autoneg process, there isn't much to do with
JB> that, as it is all run by hardware, we just set up registers and
JB> reset the phy.
That's what I figured. Frankly, I'm tempted to blame the switch
here. Testing under Windows (which I've yet to do) should shine more
light on this.
So right now I'm going under the assumption that you have a switch
problem.
One other question I have: in e1000.txt the FlowControl parameter is
documented as using the EEPROM for default values. Does anyone where
in the ethtool -e output I can see the default FlowControl values? I
don't have the fortitude to poke around there, but I'm willing to try
if someone can tell me what bytes to alter.
After looking through the code in e1000_setup_link, it appears that word
0xF is the interesting one, thats bytes 0x1E and 0x1F. bits 13 and 12,
indicate pause capability.
you're interested in printing the phy status once link negotiation is
complete. Interestingly, we're already making this info available to
ethtool, it just doesn't print it yet.
If you rebuild ethtool and print all the output from get regs (through
dword 0..25) I'll help you decode it. More work, i know, yay.
Jesse
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html