Apparent fxp regression in FreeBSD 8.4-RC3

John-Mark Gurney jmg at funkthat.com
Fri May 24 15:23:27 UTC 2013


Hiroki Sato wrote this message on Fri, May 24, 2013 at 16:36 +0900:
> Hiroki Sato <hrs at FreeBSD.org> wrote
>   in <20130524.162926.395058052118975996.hrs at allbsd.org>:
> 
> hr> YongHyeon PYUN <pyunyh at gmail.com> wrote
> hr>   in <20130524054720.GA1496 at michelle.cdnetworks.com>:
> hr>
> hr>  A workaround is specifying the following line in rc.conf:
> hr>
> hr>  ifconfig_fxp0="DHCP media 100baseTX mediaopt full-duplex"
> 
>  Hmm, I guess this can happen on other NICs when the link negotiation
>  causes a link-state flap.  Is it true?

Just as a bit of history of this change (since I think I may have
introduced part of this issue in 163061 of if_fxp.c)...  fxp used to
previously not drop link when you would switch from autoneg to a fixed
media...

The problem with this was that if you booted it always defaults to
autoneg and if your switch was autoneg, then the switch would negotiate
100/full.  If you then manually switched fxp to 100/full, things would
be fine till either the switch was reset and/or the cable pulled.  Then
when the switch came back and was not be able to autoneg, it then would
make the link 100/half, which of course would cause problems....  I made
this change because it was better to flap the link on media switch, and
force and earlier detection that there was this mismatch between the
switch, then possibly months or years later...

I actually believe all 100Mbps cards should do this on media change in
order to prevent the above issue...  Unless of course the card can do both
autoneg and fixed media at the same time, which is probably the problem
with this fxp chip/phy...

Hope this helps with some history behind this issue..

-- 
  John-Mark Gurney				Voice: +1 415 225 5579

     "All that I will do, has been done, All that I have, has not."


More information about the freebsd-stable mailing list