]> git.baikalelectronics.ru Git - kernel.git/commit
clocksource: Simplify the logic around clocksource wrapping safety margins
authorJohn Stultz <john.stultz@linaro.org>
Thu, 12 Mar 2015 04:16:30 +0000 (21:16 -0700)
committerIngo Molnar <mingo@kernel.org>
Thu, 12 Mar 2015 09:16:38 +0000 (10:16 +0100)
commit42f91d3b02344724ff86b9190c2d446127a3f3fd
tree220b416eda9d12618ec45394efb44974ec219e8a
parent76a7710db6652c275acce1ca377ec9f9594eca0c
clocksource: Simplify the logic around clocksource wrapping safety margins

The clocksource logic has a number of places where we try to
include a safety margin. Most of these are 12% safety margins,
but they are inconsistently applied and sometimes are applied
on top of each other.

Additionally, in the previous patch, we corrected an issue
where we unintentionally in effect created a 50% safety margin,
which these 12.5% margins where then added to.

So to simplify the logic here, this patch removes the various
12.5% margins, and consolidates adding the margin in one place:
clocks_calc_max_nsecs().

Additionally, Linus prefers a 50% safety margin, as it allows
bad clock values to be more easily caught. This should really
have no net effect, due to the corrected issue earlier which
caused greater then 50% margins to be used w/o issue.

Signed-off-by: John Stultz <john.stultz@linaro.org>
Acked-by: Stephen Boyd <sboyd@codeaurora.org> (for the sched_clock.c bit)
Cc: Dave Jones <davej@codemonkey.org.uk>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Prarit Bhargava <prarit@redhat.com>
Cc: Richard Cochran <richardcochran@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/1426133800-29329-3-git-send-email-john.stultz@linaro.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
kernel/time/clocksource.c
kernel/time/sched_clock.c