So here is another round of this series, which is the result of
earlier discussions with Linus and his suggestions around
improvements to clocksource validation in the hope we can more
easily catch bad hardware.

There's also a few cleanups Linus suggested as well as a few I've been
meaning to get to for awhile.

I tried in address all the feedback that had been given, adding
the checks behind CONFIG_DEBUG_TIMEKEEPING.  I also sorted out a
sane way to print rate-limited warnings if we see cycle deltas that
are too large, or if they look like small underflows.

I'd like to get this queued into -tip soon so it can get as much
testing in -next as possible.

If there are any objections or feedback, I'd love to hear it!

New in v4:
* Lots and lots of typo corrections and minor cleanups suggested
  by Ingo.
* Dropped "Remove clocksource_max_deferment()" patch
* Added "Rename __clocksource_updatefreq_*..." patch
* I realized one of the patches (Improve clocksource watchdog
  reporting) didn't have a proper cc list, so while it was on lkml
  folks may not have reviewed it before.

thanks
-john

Cc: Dave Jones <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Richard Cochran <[email protected]>
Cc: Prarit Bhargava <[email protected]>
Cc: Stephen Boyd <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Peter Zijlstra <[email protected]>

John Stultz (12):
  clocksource: Simplify clocks_calc_max_nsecs logic
  clocksource: Simplify logic around clocksource wrapping safety margins
  clocksource: Add max_cycles to clocksource structure
  time: Add debugging checks to warn if we see delays
  time: Add infrastructure to cap clocksource reads to the max_cycles
    value
  time: Try to catch clocksource delta underflows
  time: Add warnings when overflows or underflows are observed
  clocksource: Improve clocksource watchdog reporting
  clocksource: Mostly kill clocksource_register()
  sparc: Convert to using clocksource_register_hz()
  clocksource: Add some debug info about clocksources being registered
  clocksource: Rename __clocksource_updatefreq_* to
    __clocksource_update_freq_*

 arch/arm/plat-omap/counter_32k.c |   2 +-
 arch/s390/kernel/time.c          |   2 +-
 arch/sparc/kernel/time_32.c      |   6 +-
 drivers/clocksource/em_sti.c     |   2 +-
 drivers/clocksource/sh_cmt.c     |   2 +-
 drivers/clocksource/sh_tmu.c     |   2 +-
 include/linux/clocksource.h      |  26 ++++--
 kernel/time/clocksource.c        | 171 ++++++++++++++++++---------------------
 kernel/time/jiffies.c            |   5 +-
 kernel/time/sched_clock.c        |   6 +-
 kernel/time/timekeeping.c        | 127 ++++++++++++++++++++++++++---
 lib/Kconfig.debug                |  12 +++
 12 files changed, 235 insertions(+), 128 deletions(-)

-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to