sched clock: revert various sched_clock() changes
authorIngo Molnar <mingo@elte.hu>
Mon, 14 Apr 2008 06:50:02 +0000 (08:50 +0200)
committerIngo Molnar <mingo@elte.hu>
Thu, 31 Jul 2008 15:20:29 +0000 (17:20 +0200)
commite4e4e534faa3c2be4e165ce414f44b76ada7208c
tree615280ce53bdba4f99c95616d2a1527c3b863c39
parent39675e89fb472c1b9c8e740e00acb1df2bbc6be7
sched clock: revert various sched_clock() changes

Found an interactivity problem on a quad core test-system - simple
CPU loops would occasionally delay the system un an unacceptable way.

After much debugging with Peter Zijlstra it turned out that the problem
is caused by the string of sched_clock() changes - they caused the CPU
clock to jump backwards a bit - which confuses the scheduler arithmetics.

(which is unsigned for performance reasons)

So revert:

 # c300ba2: sched_clock: and multiplier for TSC to gtod drift
 # c0c8773: sched_clock: only update deltas with local reads.
 # af52a90: sched_clock: stop maximum check on NO HZ
 # f7cce27: sched_clock: widen the max and min time

This solves the interactivity problems.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Acked-by: Mike Galbraith <efault@gmx.de>
include/linux/sched.h
kernel/sched_clock.c
kernel/time/tick-sched.c