perf_counter: x86: More accurate counter update
authorPeter Zijlstra <a.p.zijlstra@chello.nl>
Wed, 13 May 2009 07:45:19 +0000 (09:45 +0200)
committerIngo Molnar <mingo@elte.hu>
Fri, 15 May 2009 07:46:54 +0000 (09:46 +0200)
commitec3232bdf8518bea8410f0027f870b24d3aa8753
tree5aa20585dfec4053f92f5da5ae7488b13a8bebb4
parent1a853e36871b533ccc3f3c5bdd5cd0d867043a00
perf_counter: x86: More accurate counter update

Take the counter width into account instead of assuming 32 bits.

In particular Nehalem has 44 bit wide counters, and all
arithmetics should happen on a 44-bit signed integer basis.

[ Impact: fix rare event imprecision, warning message on Nehalem ]

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
LKML-Reference: <new-submission>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/cpu/perf_counter.c