aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2012-12-14 01:50:19 -0500
committerAl Viro <viro@zeniv.linux.org.uk>2012-12-19 18:07:39 -0500
commit5208ba24e7826519d310474dedaed2f84b0ab6a0 (patch)
tree096a174031c17e47128918da5d8b609c886ca5e0 /arch
parentae903caae267154de7cf8576b130ff474630596b (diff)
missing user_stack_pointer() instances
for the architectures that have usp in pt_regs and do not have user_stack_pointer() already defined. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch')
-rw-r--r--arch/avr32/include/asm/ptrace.h1
-rw-r--r--arch/m32r/include/asm/ptrace.h1
-rw-r--r--arch/microblaze/include/asm/ptrace.h1
-rw-r--r--arch/mips/include/asm/ptrace.h1
-rw-r--r--arch/score/include/asm/ptrace.h1
-rw-r--r--arch/tile/include/asm/ptrace.h1
-rw-r--r--arch/unicore32/include/asm/ptrace.h1
-rw-r--r--arch/x86/um/asm/ptrace.h1
-rw-r--r--arch/xtensa/include/asm/ptrace.h2
9 files changed, 10 insertions, 0 deletions
diff --git a/arch/avr32/include/asm/ptrace.h b/arch/avr32/include/asm/ptrace.h
index 8d3c412fc65f..630e4f9bf5f0 100644
--- a/arch/avr32/include/asm/ptrace.h
+++ b/arch/avr32/include/asm/ptrace.h
@@ -21,6 +21,7 @@
21#define user_mode(regs) (((regs)->sr & MODE_MASK) == MODE_USER) 21#define user_mode(regs) (((regs)->sr & MODE_MASK) == MODE_USER)
22#define instruction_pointer(regs) ((regs)->pc) 22#define instruction_pointer(regs) ((regs)->pc)
23#define profile_pc(regs) instruction_pointer(regs) 23#define profile_pc(regs) instruction_pointer(regs)
24#define user_stack_pointer(regs) ((regs)->sp)
24 25
25static __inline__ int valid_user_regs(struct pt_regs *regs) 26static __inline__ int valid_user_regs(struct pt_regs *regs)
26{ 27{
diff --git a/arch/m32r/include/asm/ptrace.h b/arch/m32r/include/asm/ptrace.h
index c4432f1fb2cf..56795d6cab4c 100644
--- a/arch/m32r/include/asm/ptrace.h
+++ b/arch/m32r/include/asm/ptrace.h
@@ -134,6 +134,7 @@ extern void init_debug_traps(struct task_struct *);
134 134
135#define instruction_pointer(regs) ((regs)->bpc) 135#define instruction_pointer(regs) ((regs)->bpc)
136#define profile_pc(regs) instruction_pointer(regs) 136#define profile_pc(regs) instruction_pointer(regs)
137#define user_stack_pointer(regs) ((regs)->spu)
137 138
138extern void withdraw_debug_trap(struct pt_regs *regs); 139extern void withdraw_debug_trap(struct pt_regs *regs);
139 140
diff --git a/arch/microblaze/include/asm/ptrace.h b/arch/microblaze/include/asm/ptrace.h
index 94e92c805859..fa791e218140 100644
--- a/arch/microblaze/include/asm/ptrace.h
+++ b/arch/microblaze/include/asm/ptrace.h
@@ -60,6 +60,7 @@ struct pt_regs {
60 60
61#define instruction_pointer(regs) ((regs)->pc) 61#define instruction_pointer(regs) ((regs)->pc)
62#define profile_pc(regs) instruction_pointer(regs) 62#define profile_pc(regs) instruction_pointer(regs)
63#define user_stack_pointer(regs) ((regs)->r1)
63 64
64static inline long regs_return_value(struct pt_regs *regs) 65static inline long regs_return_value(struct pt_regs *regs)
65{ 66{
diff --git a/arch/mips/include/asm/ptrace.h b/arch/mips/include/asm/ptrace.h
index cec5e125f7e4..a3186f2bb8a0 100644
--- a/arch/mips/include/asm/ptrace.h
+++ b/arch/mips/include/asm/ptrace.h
@@ -49,6 +49,7 @@ static inline long regs_return_value(struct pt_regs *regs)
49 49
50#define instruction_pointer(regs) ((regs)->cp0_epc) 50#define instruction_pointer(regs) ((regs)->cp0_epc)
51#define profile_pc(regs) instruction_pointer(regs) 51#define profile_pc(regs) instruction_pointer(regs)
52#define user_stack_pointer(r) ((r)->regs[29])
52 53
53extern asmlinkage void syscall_trace_enter(struct pt_regs *regs); 54extern asmlinkage void syscall_trace_enter(struct pt_regs *regs);
54extern asmlinkage void syscall_trace_leave(struct pt_regs *regs); 55extern asmlinkage void syscall_trace_leave(struct pt_regs *regs);
diff --git a/arch/score/include/asm/ptrace.h b/arch/score/include/asm/ptrace.h
index e89dc9b1ef49..99cd4efa918e 100644
--- a/arch/score/include/asm/ptrace.h
+++ b/arch/score/include/asm/ptrace.h
@@ -83,6 +83,7 @@ struct task_struct;
83 83
84#define instruction_pointer(regs) ((unsigned long)(regs)->cp0_epc) 84#define instruction_pointer(regs) ((unsigned long)(regs)->cp0_epc)
85#define profile_pc(regs) instruction_pointer(regs) 85#define profile_pc(regs) instruction_pointer(regs)
86#define user_stack_pointer(r) ((unsigned long)(r)->regs[0])
86 87
87extern void do_syscall_trace(struct pt_regs *regs, int entryexit); 88extern void do_syscall_trace(struct pt_regs *regs, int entryexit);
88extern int read_tsk_long(struct task_struct *, unsigned long, unsigned long *); 89extern int read_tsk_long(struct task_struct *, unsigned long, unsigned long *);
diff --git a/arch/tile/include/asm/ptrace.h b/arch/tile/include/asm/ptrace.h
index 1a4fd9ab0ee1..3f792b6d60d5 100644
--- a/arch/tile/include/asm/ptrace.h
+++ b/arch/tile/include/asm/ptrace.h
@@ -36,6 +36,7 @@ typedef unsigned long pt_reg_t;
36 36
37#define instruction_pointer(regs) ((regs)->pc) 37#define instruction_pointer(regs) ((regs)->pc)
38#define profile_pc(regs) instruction_pointer(regs) 38#define profile_pc(regs) instruction_pointer(regs)
39#define user_stack_pointer(regs) ((regs)->sp)
39 40
40/* Does the process account for user or for system time? */ 41/* Does the process account for user or for system time? */
41#define user_mode(regs) (EX1_PL((regs)->ex1) == USER_PL) 42#define user_mode(regs) (EX1_PL((regs)->ex1) == USER_PL)
diff --git a/arch/unicore32/include/asm/ptrace.h b/arch/unicore32/include/asm/ptrace.h
index 726749dab52f..9df53d991c78 100644
--- a/arch/unicore32/include/asm/ptrace.h
+++ b/arch/unicore32/include/asm/ptrace.h
@@ -54,6 +54,7 @@ static inline int valid_user_regs(struct pt_regs *regs)
54} 54}
55 55
56#define instruction_pointer(regs) ((regs)->UCreg_pc) 56#define instruction_pointer(regs) ((regs)->UCreg_pc)
57#define user_stack_pointer(regs) ((regs)->UCreg_sp)
57 58
58#endif /* __ASSEMBLY__ */ 59#endif /* __ASSEMBLY__ */
59#endif 60#endif
diff --git a/arch/x86/um/asm/ptrace.h b/arch/x86/um/asm/ptrace.h
index 755133258c45..54f8102ccde5 100644
--- a/arch/x86/um/asm/ptrace.h
+++ b/arch/x86/um/asm/ptrace.h
@@ -86,4 +86,5 @@ extern long arch_prctl(struct task_struct *task, int code,
86 unsigned long __user *addr); 86 unsigned long __user *addr);
87 87
88#endif 88#endif
89#define user_stack_pointer(regs) PT_REGS_SP(regs)
89#endif /* __UM_X86_PTRACE_H */ 90#endif /* __UM_X86_PTRACE_H */
diff --git a/arch/xtensa/include/asm/ptrace.h b/arch/xtensa/include/asm/ptrace.h
index da21c17f23aa..43d0d5d7c8a0 100644
--- a/arch/xtensa/include/asm/ptrace.h
+++ b/arch/xtensa/include/asm/ptrace.h
@@ -63,6 +63,8 @@ struct pt_regs {
63# define profile_pc(regs) instruction_pointer(regs) 63# define profile_pc(regs) instruction_pointer(regs)
64# endif 64# endif
65 65
66#define user_stack_pointer(regs) ((regs)->areg[1])
67
66#else /* __ASSEMBLY__ */ 68#else /* __ASSEMBLY__ */
67 69
68# include <asm/asm-offsets.h> 70# include <asm/asm-offsets.h>