diff options
Diffstat (limited to 'arch/s390/include/asm/kprobes.h')
| -rw-r--r-- | arch/s390/include/asm/kprobes.h | 20 |
1 files changed, 2 insertions, 18 deletions
diff --git a/arch/s390/include/asm/kprobes.h b/arch/s390/include/asm/kprobes.h index 330f68caffe4..a231a9439c4b 100644 --- a/arch/s390/include/asm/kprobes.h +++ b/arch/s390/include/asm/kprobes.h | |||
| @@ -31,7 +31,6 @@ | |||
| 31 | #include <linux/ptrace.h> | 31 | #include <linux/ptrace.h> |
| 32 | #include <linux/percpu.h> | 32 | #include <linux/percpu.h> |
| 33 | 33 | ||
| 34 | #define __ARCH_WANT_KPROBES_INSN_SLOT | ||
| 35 | struct pt_regs; | 34 | struct pt_regs; |
| 36 | struct kprobe; | 35 | struct kprobe; |
| 37 | 36 | ||
| @@ -58,23 +57,12 @@ typedef u16 kprobe_opcode_t; | |||
| 58 | /* Architecture specific copy of original instruction */ | 57 | /* Architecture specific copy of original instruction */ |
| 59 | struct arch_specific_insn { | 58 | struct arch_specific_insn { |
| 60 | /* copy of original instruction */ | 59 | /* copy of original instruction */ |
| 61 | kprobe_opcode_t *insn; | 60 | kprobe_opcode_t insn[MAX_INSN_SIZE]; |
| 62 | int fixup; | ||
| 63 | int ilen; | ||
| 64 | int reg; | ||
| 65 | }; | 61 | }; |
| 66 | 62 | ||
| 67 | struct ins_replace_args { | ||
| 68 | kprobe_opcode_t *ptr; | ||
| 69 | kprobe_opcode_t old; | ||
| 70 | kprobe_opcode_t new; | ||
| 71 | }; | ||
| 72 | struct prev_kprobe { | 63 | struct prev_kprobe { |
| 73 | struct kprobe *kp; | 64 | struct kprobe *kp; |
| 74 | unsigned long status; | 65 | unsigned long status; |
| 75 | unsigned long saved_psw; | ||
| 76 | unsigned long kprobe_saved_imask; | ||
| 77 | unsigned long kprobe_saved_ctl[3]; | ||
| 78 | }; | 66 | }; |
| 79 | 67 | ||
| 80 | /* per-cpu kprobe control block */ | 68 | /* per-cpu kprobe control block */ |
| @@ -82,17 +70,13 @@ struct kprobe_ctlblk { | |||
| 82 | unsigned long kprobe_status; | 70 | unsigned long kprobe_status; |
| 83 | unsigned long kprobe_saved_imask; | 71 | unsigned long kprobe_saved_imask; |
| 84 | unsigned long kprobe_saved_ctl[3]; | 72 | unsigned long kprobe_saved_ctl[3]; |
| 85 | struct pt_regs jprobe_saved_regs; | ||
| 86 | unsigned long jprobe_saved_r14; | ||
| 87 | unsigned long jprobe_saved_r15; | ||
| 88 | struct prev_kprobe prev_kprobe; | 73 | struct prev_kprobe prev_kprobe; |
| 74 | struct pt_regs jprobe_saved_regs; | ||
| 89 | kprobe_opcode_t jprobes_stack[MAX_STACK_SIZE]; | 75 | kprobe_opcode_t jprobes_stack[MAX_STACK_SIZE]; |
| 90 | }; | 76 | }; |
| 91 | 77 | ||
| 92 | void arch_remove_kprobe(struct kprobe *p); | 78 | void arch_remove_kprobe(struct kprobe *p); |
| 93 | void kretprobe_trampoline(void); | 79 | void kretprobe_trampoline(void); |
| 94 | int is_prohibited_opcode(kprobe_opcode_t *instruction); | ||
| 95 | void get_instruction_type(struct arch_specific_insn *ainsn); | ||
| 96 | 80 | ||
| 97 | int kprobe_fault_handler(struct pt_regs *regs, int trapnr); | 81 | int kprobe_fault_handler(struct pt_regs *regs, int trapnr); |
| 98 | int kprobe_exceptions_notify(struct notifier_block *self, | 82 | int kprobe_exceptions_notify(struct notifier_block *self, |
