]> git.karo-electronics.de Git - karo-tx-linux.git/commit
perf, powerpc: Handle events that raise an exception without overflowing
authorAnton Blanchard <anton@samba.org>
Wed, 9 Mar 2011 03:38:42 +0000 (14:38 +1100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 21 Mar 2011 19:45:51 +0000 (12:45 -0700)
commit9008aa5b68fe409f419c4404de3fb36d43abbe39
tree702641142e523545b4448f6f415c5810a5af20e4
parent585f09f8bfb60e2b093da4fc7d6078dd8e161bb4
perf, powerpc: Handle events that raise an exception without overflowing

commit 0837e3242c73566fc1c0196b4ec61779c25ffc93 upstream.

Events on POWER7 can roll back if a speculative event doesn't
eventually complete. Unfortunately in some rare cases they will
raise a performance monitor exception. We need to catch this to
ensure we reset the PMC. In all cases the PMC will be 256 or less
cycles from overflow.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <20110309143842.6c22845e@kryten>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
arch/powerpc/include/asm/reg.h
arch/powerpc/kernel/perf_event.c