summaryrefslogtreecommitdiff
path: root/arch/sparc
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2008-07-27 12:59:21 +0400
committerDavid S. Miller <davem@davemloft.net>2008-07-28 04:32:58 +0400
commitac76cfd0881b5dc45a9301e3a4f73ff9ccc2d2f2 (patch)
treebdf97af626c7e412a43acb53cac6aa1b042ead3a /arch/sparc
parent95698466cf50b707d8a55af87e4dbec56b1533cb (diff)
downloadlinux-ac76cfd0881b5dc45a9301e3a4f73ff9ccc2d2f2.tar.xz
sparc: Add user_stack_pointer().
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc')
-rw-r--r--arch/sparc/include/asm/ptrace_32.h1
-rw-r--r--arch/sparc/include/asm/ptrace_64.h1
2 files changed, 2 insertions, 0 deletions
diff --git a/arch/sparc/include/asm/ptrace_32.h b/arch/sparc/include/asm/ptrace_32.h
index 0401cc7ec38e..d43c88b86834 100644
--- a/arch/sparc/include/asm/ptrace_32.h
+++ b/arch/sparc/include/asm/ptrace_32.h
@@ -74,6 +74,7 @@ struct sparc_stackf {
#define user_mode(regs) (!((regs)->psr & PSR_PS))
#define instruction_pointer(regs) ((regs)->pc)
+#define user_stack_pointer(regs) ((regs)->u_regs[UREG_FP])
unsigned long profile_pc(struct pt_regs *);
extern void show_regs(struct pt_regs *);
#endif
diff --git a/arch/sparc/include/asm/ptrace_64.h b/arch/sparc/include/asm/ptrace_64.h
index a682e66d5c4a..ec6d45c84cd0 100644
--- a/arch/sparc/include/asm/ptrace_64.h
+++ b/arch/sparc/include/asm/ptrace_64.h
@@ -146,6 +146,7 @@ do { current_thread_info()->syscall_noerror = 1; \
} while (0)
#define user_mode(regs) (!((regs)->tstate & TSTATE_PRIV))
#define instruction_pointer(regs) ((regs)->tpc)
+#define user_stack_pointer(regs) ((regs)->u_regs[UREG_FP])
#define regs_return_value(regs) ((regs)->u_regs[UREG_I0])
#ifdef CONFIG_SMP
extern unsigned long profile_pc(struct pt_regs *);