svn commit: r252453 - stable/8/sys/dev/bge

Pyun YongHyeon yongari at FreeBSD.org
Mon Jul 1 06:58:36 UTC 2013


Author: yongari
Date: Mon Jul  1 06:58:35 2013
New Revision: 252453
URL: http://svnweb.freebsd.org/changeset/base/252453

Log:
  MFC r251481:
    Do not report current link status if driver is not running.
    Reporting link status in driver has a side-effect that makes mii(4)
    check current link status.  mii(4) will call link status change
    callback when it sees link state change.  Normally this wouldn't
    have problems. However, ASF/IPMI firmware can actively access PHY
    regardless of driver's running state such that reporting link
    status for not-running interface can generate meaningless link
    UP/DOWN messages.
  
    This change also makes dhclient think driver got a valid link
    regardless of link establishment so it will bypass dhclient's
    initial link status check. I think that wouldn't be issue
    though.

Modified:
  stable/8/sys/dev/bge/if_bge.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/dev/   (props changed)
  stable/8/sys/dev/bge/   (props changed)

Modified: stable/8/sys/dev/bge/if_bge.c
==============================================================================
--- stable/8/sys/dev/bge/if_bge.c	Mon Jul  1 06:58:05 2013	(r252452)
+++ stable/8/sys/dev/bge/if_bge.c	Mon Jul  1 06:58:35 2013	(r252453)
@@ -5621,6 +5621,10 @@ bge_ifmedia_sts(struct ifnet *ifp, struc
 
 	BGE_LOCK(sc);
 
+	if ((ifp->if_flags & IFF_UP) == 0) {
+		BGE_UNLOCK(sc);
+		return;
+	}
 	if (sc->bge_flags & BGE_FLAG_TBI) {
 		ifmr->ifm_status = IFM_AVALID;
 		ifmr->ifm_active = IFM_ETHER;


More information about the svn-src-stable mailing list