Author: adrian
Date: Sun Mar 29 21:41:05 2015
New Revision: 280825
URL: https://svnweb.freebsd.org/changeset/base/280825

Log:
  Fix more ticks wrapping bugs exposed by the ticks wrapping bug check.
  
  This symptom is "calibrations don't ever run", which may cause some
  pretty spectacularly bad behaviour in noisy environments or with longer
  uptimes.
  
  Thanks to dtrace to make it easy to check if specific non-inlined functions
  are getting called by things like the ANI and calibration HAL methods.
  Grr.
  
  Tested:
  
  * AR9380, STA mode

Modified:
  head/sys/dev/ath/if_ath.c

Modified: head/sys/dev/ath/if_ath.c
==============================================================================
--- head/sys/dev/ath/if_ath.c   Sun Mar 29 21:12:59 2015        (r280824)
+++ head/sys/dev/ath/if_ath.c   Sun Mar 29 21:41:05 2015        (r280825)
@@ -2546,11 +2546,11 @@ ath_init(void *arg)
         * state cached in the driver.
         */
        sc->sc_diversity = ath_hal_getdiversity(ah);
-       sc->sc_lastlongcal = 0;
+       sc->sc_lastlongcal = ticks;
        sc->sc_resetcal = 1;
        sc->sc_lastcalreset = 0;
-       sc->sc_lastani = 0;
-       sc->sc_lastshortcal = 0;
+       sc->sc_lastani = ticks;
+       sc->sc_lastshortcal = ticks;
        sc->sc_doresetcal = AH_FALSE;
        /*
         * Beacon timers were cleared here; give ath_newstate()
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to