summaryrefslogtreecommitdiffstats
path: root/arch/arm/kernel/perf_event.c
diff options
context:
space:
mode:
authorNikolay Borisov <Nikolay.Borisov@arm.com>2014-06-03 20:48:43 +0200
committerRussell King <rmk+kernel@arm.linux.org.uk>2014-07-18 13:29:12 +0200
commit6888e32a9e0b284c4dcdefcc3158949110699bc2 (patch)
tree62cb52821952d64da2758f040004409f435c8102 /arch/arm/kernel/perf_event.c
parentARM: 8070/1: Introduce arm_get_current_stack_frame() (diff)
downloadlinux-6888e32a9e0b284c4dcdefcc3158949110699bc2.tar.xz
linux-6888e32a9e0b284c4dcdefcc3158949110699bc2.zip
ARM: 8071/1: perf: Make perf use arm_get_current_stackframe
Make the perf backend use the API so that it correctly references the FP when in THUMB2 mode Signed-off-by: Nikolay Borisov <Nikolay.Borisov@arm.com> Acked-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/kernel/perf_event.c')
-rw-r--r--arch/arm/kernel/perf_event.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/arch/arm/kernel/perf_event.c b/arch/arm/kernel/perf_event.c
index 4238bcba9d60..ae3e216a52c2 100644
--- a/arch/arm/kernel/perf_event.c
+++ b/arch/arm/kernel/perf_event.c
@@ -621,10 +621,7 @@ perf_callchain_kernel(struct perf_callchain_entry *entry, struct pt_regs *regs)
return;
}
- fr.fp = regs->ARM_fp;
- fr.sp = regs->ARM_sp;
- fr.lr = regs->ARM_lr;
- fr.pc = regs->ARM_pc;
+ arm_get_current_stackframe(regs, &fr);
walk_stackframe(&fr, callchain_trace, entry);
}