diff options
author | Peter Zijlstra <peterz@infradead.org> | 2010-09-10 16:32:53 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-09-10 21:17:45 -0400 |
commit | 5ee5e97ee9bca919af11c562beeaf61741ad33f1 (patch) | |
tree | 1456b2d8a8adcebe63dba1dd9f0c849d0349b5fb /arch/x86 | |
parent | 9aea5a65aa7a1af9a4236dfaeb0088f1624f9919 (diff) |
x86, tsc: Fix a preemption leak in restore_sched_clock_state()
A real life genuine preemption leak..
Reported-and-tested-by: Jeff Chua <jeff.chua.linux@gmail.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Acked-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/x86')
-rw-r--r-- | arch/x86/kernel/tsc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kernel/tsc.c b/arch/x86/kernel/tsc.c index d632934cb638..26a863a9c2a8 100644 --- a/arch/x86/kernel/tsc.c +++ b/arch/x86/kernel/tsc.c | |||
@@ -655,7 +655,7 @@ void restore_sched_clock_state(void) | |||
655 | 655 | ||
656 | local_irq_save(flags); | 656 | local_irq_save(flags); |
657 | 657 | ||
658 | get_cpu_var(cyc2ns_offset) = 0; | 658 | __get_cpu_var(cyc2ns_offset) = 0; |
659 | offset = cyc2ns_suspend - sched_clock(); | 659 | offset = cyc2ns_suspend - sched_clock(); |
660 | 660 | ||
661 | for_each_possible_cpu(cpu) | 661 | for_each_possible_cpu(cpu) |