summaryrefslogtreecommitdiffstats
path: root/sys/netinet6/mld6.c
diff options
context:
space:
mode:
authoryongari <yongari@FreeBSD.org>2009-12-22 20:11:56 +0000
committeryongari <yongari@FreeBSD.org>2009-12-22 20:11:56 +0000
commit036ec4b1ff6b99a6f3c3df922a4eb744d68e1c62 (patch)
tree3ff804719ab32ac5f5d12fca3622cde563fd926a /sys/netinet6/mld6.c
parent4822b84df379c1e8a850868c8bfdb42e70249f76 (diff)
downloadFreeBSD-src-036ec4b1ff6b99a6f3c3df922a4eb744d68e1c62.zip
FreeBSD-src-036ec4b1ff6b99a6f3c3df922a4eb744d68e1c62.tar.gz
Reimplement miibus_statchg method. Don't rely on link state change
interrupt. If we want to use link state change interrupt ste(4) should also implement auto-negotiation complete handler as well as various PHY access handling. Now link state change is handled by mii(4) polling so it will automatically update link state UP/DOWN events which in turn make ste(4) usable with lagg(4). r199559 added a private timer to drive watchdog and the timer also used to drive MAC statistics update. Because the MAC statistics update is called whenever statistics counter reaches near-full, it drove watchdog timer too fast such that it caused false watchdog timeouts under heavy TX traffic conditions. Fix the regression by separating ste_stats_update() from driving watchdog timer and introduce a new function ste_tick() that handles periodic job such as driving watchdog, MAC statistics update and link state check etc. While I'm here clear armed watchdog timer in ste_stop().
Diffstat (limited to 'sys/netinet6/mld6.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud