diff options
Diffstat (limited to 'arch/powerpc/include/asm/perf_event.h')
-rw-r--r-- | arch/powerpc/include/asm/perf_event.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/perf_event.h b/arch/powerpc/include/asm/perf_event.h index 5c16b891d501..0bb23725b1e7 100644 --- a/arch/powerpc/include/asm/perf_event.h +++ b/arch/powerpc/include/asm/perf_event.h | |||
@@ -26,8 +26,13 @@ | |||
26 | #include <asm/ptrace.h> | 26 | #include <asm/ptrace.h> |
27 | #include <asm/reg.h> | 27 | #include <asm/reg.h> |
28 | 28 | ||
29 | /* | ||
30 | * Overload regs->result to specify whether we should use the MSR (result | ||
31 | * is zero) or the SIAR (result is non zero). | ||
32 | */ | ||
29 | #define perf_arch_fetch_caller_regs(regs, __ip) \ | 33 | #define perf_arch_fetch_caller_regs(regs, __ip) \ |
30 | do { \ | 34 | do { \ |
35 | (regs)->result = 0; \ | ||
31 | (regs)->nip = __ip; \ | 36 | (regs)->nip = __ip; \ |
32 | (regs)->gpr[1] = *(unsigned long *)__get_SP(); \ | 37 | (regs)->gpr[1] = *(unsigned long *)__get_SP(); \ |
33 | asm volatile("mfmsr %0" : "=r" ((regs)->msr)); \ | 38 | asm volatile("mfmsr %0" : "=r" ((regs)->msr)); \ |