aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorRusty Lynch <rusty.lynch@intel.com>2005-06-23 03:09:30 -0400
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-23 12:45:23 -0400
commit8bc76772ad653bcaad1b0af72aafb6072ef0fa87 (patch)
treed778f0cc2640e078338d84cdc67cda403cc47d7b /include
parentcd2675bf65455a45b54228b7acc0c6a26a164cb6 (diff)
[PATCH] Kprobes ia64 cleanup
A cleanup of the ia64 kprobes implementation such that all of the bundle manipulation logic is concentrated in arch_prepare_kprobe(). With the current design for kprobes, the arch specific code only has a chance to return failure inside the arch_prepare_kprobe() function. This patch moves all of the work that was happening in arch_copy_kprobe() and most of the work that was happening in arch_arm_kprobe() into arch_prepare_kprobe(). By doing this we can add further robustness checks in arch_arm_kprobe() and refuse to insert kprobes that will cause problems. Signed-off-by: Rusty Lynch <Rusty.lynch@intel.com> Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include')
-rw-r--r--include/asm-ia64/kprobes.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/asm-ia64/kprobes.h b/include/asm-ia64/kprobes.h
index d30af77a0b11..cec4d9958307 100644
--- a/include/asm-ia64/kprobes.h
+++ b/include/asm-ia64/kprobes.h
@@ -30,6 +30,8 @@
30 30
31#define BREAK_INST (long)(__IA64_BREAK_KPROBE << 6) 31#define BREAK_INST (long)(__IA64_BREAK_KPROBE << 6)
32 32
33struct kprobe;
34
33typedef struct _bundle { 35typedef struct _bundle {
34 struct { 36 struct {
35 unsigned long long template : 5; 37 unsigned long long template : 5;
@@ -79,6 +81,11 @@ static inline void jprobe_return(void)
79{ 81{
80} 82}
81 83
84/* ia64 does not need this */
85static inline void arch_copy_kprobe(struct kprobe *p)
86{
87}
88
82#ifdef CONFIG_KPROBES 89#ifdef CONFIG_KPROBES
83extern int kprobe_exceptions_notify(struct notifier_block *self, 90extern int kprobe_exceptions_notify(struct notifier_block *self,
84 unsigned long val, void *data); 91 unsigned long val, void *data);