aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc/kernel
diff options
context:
space:
mode:
authorDavid Ahern <david.ahern@oracle.com>2015-06-15 16:15:46 -0400
committerDavid S. Miller <davem@davemloft.net>2015-06-25 06:01:03 -0700
commit2d89cd8625c4af01a2683b18c3c8194cc3b3067c (patch)
tree93d8f24e2555c4ffc0b559286d13a37b19020272 /arch/sparc/kernel
parentsparc64: perf: Add sanity checking on addresses in user stack (diff)
downloadlinux-dev-2d89cd8625c4af01a2683b18c3c8194cc3b3067c.tar.xz
linux-dev-2d89cd8625c4af01a2683b18c3c8194cc3b3067c.zip
sparc64: perf: Use UREG_FP rather than UREG_I6
perf walks userspace callchains by following frame pointers. Use the UREG_FP macro to make it clearer that the %fp is being used. Signed-off-by: David Ahern <david.ahern@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc/kernel')
-rw-r--r--arch/sparc/kernel/perf_event.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/sparc/kernel/perf_event.c b/arch/sparc/kernel/perf_event.c
index a665e3f8c6c6..689db65f8529 100644
--- a/arch/sparc/kernel/perf_event.c
+++ b/arch/sparc/kernel/perf_event.c
@@ -1756,7 +1756,7 @@ static void perf_callchain_user_64(struct perf_callchain_entry *entry,
{
unsigned long ufp;
- ufp = regs->u_regs[UREG_I6] + STACK_BIAS;
+ ufp = regs->u_regs[UREG_FP] + STACK_BIAS;
do {
struct sparc_stackf __user *usf;
struct sparc_stackf sf;
@@ -1780,7 +1780,7 @@ static void perf_callchain_user_32(struct perf_callchain_entry *entry,
{
unsigned long ufp;
- ufp = regs->u_regs[UREG_I6] & 0xffffffffUL;
+ ufp = regs->u_regs[UREG_FP] & 0xffffffffUL;
do {
unsigned long pc;