diff options
author | Christoph Hellwig <hch@lst.de> | 2007-05-16 08:52:19 -0400 |
---|---|---|
committer | Tony Luck <tony.luck@intel.com> | 2007-05-16 12:00:51 -0400 |
commit | 576fe0bd7e52dce7afb6b9b2450744555b2eb53a (patch) | |
tree | acf2a5f8d7f7906cfa2da9bf53a74d8e3fcd42bb /include | |
parent | 17028c5c91580036eb41da2fad292965fa3b9a7d (diff) |
[IA64] optimize pagefaults a little
Get rid of the notifier list and call the kprobes code directly
if compiled in. This mirrors the changes that recently went
into powerpc, s390 and sparc64.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-ia64/kdebug.h | 16 | ||||
-rw-r--r-- | include/asm-ia64/kprobes.h | 1 |
2 files changed, 14 insertions, 3 deletions
diff --git a/include/asm-ia64/kdebug.h b/include/asm-ia64/kdebug.h index ba211e011a1d..320cd8e754ea 100644 --- a/include/asm-ia64/kdebug.h +++ b/include/asm-ia64/kdebug.h | |||
@@ -28,14 +28,24 @@ | |||
28 | */ | 28 | */ |
29 | #include <linux/notifier.h> | 29 | #include <linux/notifier.h> |
30 | 30 | ||
31 | extern int register_page_fault_notifier(struct notifier_block *); | 31 | /* |
32 | extern int unregister_page_fault_notifier(struct notifier_block *); | 32 | * These are only here because kprobes.c wants them to implement a |
33 | * blatant layering violation. Will hopefully go away soon once all | ||
34 | * architectures are updated. | ||
35 | */ | ||
36 | static inline int register_page_fault_notifier(struct notifier_block *nb) | ||
37 | { | ||
38 | return 0; | ||
39 | } | ||
40 | static inline int unregister_page_fault_notifier(struct notifier_block *nb) | ||
41 | { | ||
42 | return 0; | ||
43 | } | ||
33 | 44 | ||
34 | enum die_val { | 45 | enum die_val { |
35 | DIE_BREAK = 1, | 46 | DIE_BREAK = 1, |
36 | DIE_FAULT, | 47 | DIE_FAULT, |
37 | DIE_OOPS, | 48 | DIE_OOPS, |
38 | DIE_PAGE_FAULT, | ||
39 | DIE_MACHINE_HALT, | 49 | DIE_MACHINE_HALT, |
40 | DIE_MACHINE_RESTART, | 50 | DIE_MACHINE_RESTART, |
41 | DIE_MCA_MONARCH_ENTER, | 51 | DIE_MCA_MONARCH_ENTER, |
diff --git a/include/asm-ia64/kprobes.h b/include/asm-ia64/kprobes.h index 2abc98b336f3..6382e52ec227 100644 --- a/include/asm-ia64/kprobes.h +++ b/include/asm-ia64/kprobes.h | |||
@@ -120,6 +120,7 @@ struct arch_specific_insn { | |||
120 | unsigned short slot; | 120 | unsigned short slot; |
121 | }; | 121 | }; |
122 | 122 | ||
123 | extern int kprobes_fault_handler(struct pt_regs *regs, int trapnr); | ||
123 | extern int kprobe_exceptions_notify(struct notifier_block *self, | 124 | extern int kprobe_exceptions_notify(struct notifier_block *self, |
124 | unsigned long val, void *data); | 125 | unsigned long val, void *data); |
125 | 126 | ||