diff options
author | Anton Blanchard <anton@samba.org> | 2011-03-08 22:38:42 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2011-03-16 09:04:13 -0400 |
commit | 0837e3242c73566fc1c0196b4ec61779c25ffc93 (patch) | |
tree | db77cdc93b99b1433b73a461f44543983af746bc /arch/powerpc/include | |
parent | 7d5d02dadd43db7f829775e404e82019c5d5586f (diff) |
perf, powerpc: Handle events that raise an exception without overflowing
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>
Cc: <stable@kernel.org> # as far back as it applies cleanly
LKML-Reference: <20110309143842.6c22845e@kryten>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/powerpc/include')
-rw-r--r-- | arch/powerpc/include/asm/reg.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/reg.h b/arch/powerpc/include/asm/reg.h index 125fc1ad665d..7626fa78e1f8 100644 --- a/arch/powerpc/include/asm/reg.h +++ b/arch/powerpc/include/asm/reg.h | |||
@@ -880,6 +880,7 @@ | |||
880 | #define PV_970 0x0039 | 880 | #define PV_970 0x0039 |
881 | #define PV_POWER5 0x003A | 881 | #define PV_POWER5 0x003A |
882 | #define PV_POWER5p 0x003B | 882 | #define PV_POWER5p 0x003B |
883 | #define PV_POWER7 0x003F | ||
883 | #define PV_970FX 0x003C | 884 | #define PV_970FX 0x003C |
884 | #define PV_630 0x0040 | 885 | #define PV_630 0x0040 |
885 | #define PV_630p 0x0041 | 886 | #define PV_630p 0x0041 |