[brussels-dev] strange dladm show-ether output
Sebastien Roy
Sebastien.Roy at Sun.COM
Thu Mar 6 19:06:45 PST 2008
Sowmini.Varadhan at Sun.COM wrote:
> On (03/06/08 18:38), Sebastien Roy wrote:
>> # dladm show-ether
>> LINK PTYPE STATE AUTO SPEED-DUPLEX
>> PAUSE
>> eth0 current unknown yes 1G-u none
>> eth1 current unknown yes 1G-u none
>> eth2 current unknown yes 1G-u none
>> eth3 current unknown yes 1G-u none
>> # dladm show-phys
>> LINK MEDIA STATE SPEED DUPLEX DEVICE
>> eth0 Ethernet up 1000 full nge0
>> eth1 Ethernet up 1000 full nge1
>> eth2 Ethernet up 1000 full e1000g0
>> eth3 Ethernet up 1000 full e1000g1
>>
>> Why is STATE different in these two commands, and what does 1G-u mean
>> for SPEED-DUPLEX in show-ether?
>
> That is because print_phys() in dladm.c extracts the phys info
> for eth0 and queries the kstat for the underlying phys device,
> whereas show_etherprop() calls get_linkduplex with "eth0" itself.
>
> Notice that "dladm show-ether -x" does the right thing
> because the extended output uses dladm_get_single_mac_stat
> (via get_speed_duplex)
>
> If you try
> /net/trigati.east/export/build/sowmini/etherfix/usr/src/cmd/dladm/dladm
> you'll see the fix in action.
That fixes the link state, but the duplex is still "u":
bash-3.2# ./dladm show-ether
LINK PTYPE STATE AUTO SPEED-DUPLEX
PAUSE
bge0 current up no 1G-u none
bge1 current up no 1G-u none
-Seb
More information about the brussels-dev
mailing list