aboutsummaryrefslogtreecommitdiff
path: root/arch/frv/include/asm/ptrace.h
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2009-06-11 13:05:24 +0100
committerLinus Torvalds <torvalds@linux-foundation.org>2009-06-11 09:01:26 -0700
commit4a3b98932270f5d69f2c081924e356325ed704d9 (patch)
treee2a8e37a37ed7e3be32c12ea233ea18c389549d0 /arch/frv/include/asm/ptrace.h
parent24ceb7e8a6c5dd6e32ac3d43a2424542c97989f5 (diff)
FRV: Implement new-style ptrace
Implement the new-style ptrace for FRV, including adding appropriate tracehooks. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/frv/include/asm/ptrace.h')
-rw-r--r--arch/frv/include/asm/ptrace.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/arch/frv/include/asm/ptrace.h b/arch/frv/include/asm/ptrace.h
index cf6934012b6..a54b535c9e4 100644
--- a/arch/frv/include/asm/ptrace.h
+++ b/arch/frv/include/asm/ptrace.h
@@ -65,6 +65,8 @@
#ifdef __KERNEL__
#ifndef __ASSEMBLY__
+struct task_struct;
+
/*
* we dedicate GR28 to keeping a pointer to the current exception frame
* - gr28 is destroyed on entry to the kernel from userspace
@@ -73,11 +75,18 @@ register struct pt_regs *__frame asm("gr28");
#define user_mode(regs) (!((regs)->psr & PSR_S))
#define instruction_pointer(regs) ((regs)->pc)
+#define user_stack_pointer(regs) ((regs)->sp)
extern unsigned long user_stack(const struct pt_regs *);
extern void show_regs(struct pt_regs *);
#define profile_pc(regs) ((regs)->pc)
-#endif
+
+#define task_pt_regs(task) ((task)->thread.frame0)
+
+#define arch_has_single_step() (1)
+extern void user_enable_single_step(struct task_struct *);
+extern void user_disable_single_step(struct task_struct *);
#endif /* !__ASSEMBLY__ */
+#endif /* __KERNEL__ */
#endif /* _ASM_PTRACE_H */