diff options
author | jlemon <jlemon@FreeBSD.org> | 2001-09-29 19:28:31 +0000 |
---|---|---|
committer | jlemon <jlemon@FreeBSD.org> | 2001-09-29 19:28:31 +0000 |
commit | 7265fc9a25abf1e7ce5c2f861868d50ff0cb7ac7 (patch) | |
tree | 059d83b39e680ff22f9e9aee5eb54410ca5ecbe3 /sys/pci/if_ste.c | |
parent | 7ec889372d0e5b4a87c80ff2e066f5c6419b2b28 (diff) | |
download | FreeBSD-src-7265fc9a25abf1e7ce5c2f861868d50ff0cb7ac7.zip FreeBSD-src-7265fc9a25abf1e7ce5c2f861868d50ff0cb7ac7.tar.gz |
Do not call mii_pollstat() from within device tick routines; the status
information is updated by mii_tick().
Pointed out by: wpaul (a while back)
Diffstat (limited to 'sys/pci/if_ste.c')
-rw-r--r-- | sys/pci/if_ste.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/sys/pci/if_ste.c b/sys/pci/if_ste.c index b68ccdd..554b070 100644 --- a/sys/pci/if_ste.c +++ b/sys/pci/if_ste.c @@ -864,13 +864,11 @@ static void ste_stats_update(xsc) stats.ste_multi_colls + stats.ste_late_colls; mii_tick(mii); - if (!sc->ste_link) { - mii_pollstat(mii); - if (mii->mii_media_status & IFM_ACTIVE && - IFM_SUBTYPE(mii->mii_media_active) != IFM_NONE) - sc->ste_link++; - if (ifp->if_snd.ifq_head != NULL) - ste_start(ifp); + if (!sc->ste_link && mii->mii_media_status & IFM_ACTIVE && + IFM_SUBTYPE(mii->mii_media_active) != IFM_NONE) { + sc->ste_link++; + if (ifp->if_snd.ifq_head != NULL) + ste_start(ifp); } sc->ste_stat_ch = timeout(ste_stats_update, sc, hz); |