diff options
author | David A. Long <dave.long@linaro.org> | 2014-03-06 17:53:34 -0500 |
---|---|---|
committer | David A. Long <dave.long@linaro.org> | 2014-03-18 16:39:35 -0400 |
commit | b2531dd5e5f19ea01d67aed82d81c5f778ec0fb7 (patch) | |
tree | 32f85a64ef9d5f54aa475d0d7638db169bb8a3d7 /arch/arm/include | |
parent | 6fe50a28ba6e5fafb4a549dea666dd15297dd8bd (diff) |
ARM: move shared uprobe/kprobe definitions into new include file
Separate the kprobe-only definitions from the definitions needed by
both kprobes and uprobes.
Signed-off-by: David A. Long <dave.long@linaro.org>
Acked-by: Jon Medhurst <tixy@linaro.org>
Diffstat (limited to 'arch/arm/include')
-rw-r--r-- | arch/arm/include/asm/kprobes.h | 15 | ||||
-rw-r--r-- | arch/arm/include/asm/probes.h | 36 |
2 files changed, 37 insertions, 14 deletions
diff --git a/arch/arm/include/asm/kprobes.h b/arch/arm/include/asm/kprobes.h index fd2e5caec6ed..6e1046661f07 100644 --- a/arch/arm/include/asm/kprobes.h +++ b/arch/arm/include/asm/kprobes.h | |||
@@ -28,21 +28,8 @@ | |||
28 | #define kretprobe_blacklist_size 0 | 28 | #define kretprobe_blacklist_size 0 |
29 | 29 | ||
30 | typedef u32 kprobe_opcode_t; | 30 | typedef u32 kprobe_opcode_t; |
31 | |||
32 | struct kprobe; | 31 | struct kprobe; |
33 | typedef void (kprobe_insn_handler_t)(struct kprobe *, struct pt_regs *); | 32 | #include <asm/probes.h> |
34 | typedef unsigned long (kprobe_check_cc)(unsigned long); | ||
35 | typedef void (kprobe_insn_singlestep_t)(struct kprobe *, struct pt_regs *); | ||
36 | typedef void (kprobe_insn_fn_t)(void); | ||
37 | |||
38 | /* Architecture specific copy of original instruction. */ | ||
39 | struct arch_specific_insn { | ||
40 | kprobe_opcode_t *insn; | ||
41 | kprobe_insn_handler_t *insn_handler; | ||
42 | kprobe_check_cc *insn_check_cc; | ||
43 | kprobe_insn_singlestep_t *insn_singlestep; | ||
44 | kprobe_insn_fn_t *insn_fn; | ||
45 | }; | ||
46 | 33 | ||
47 | struct prev_kprobe { | 34 | struct prev_kprobe { |
48 | struct kprobe *kp; | 35 | struct kprobe *kp; |
diff --git a/arch/arm/include/asm/probes.h b/arch/arm/include/asm/probes.h new file mode 100644 index 000000000000..90c5f5485202 --- /dev/null +++ b/arch/arm/include/asm/probes.h | |||
@@ -0,0 +1,36 @@ | |||
1 | /* | ||
2 | * arch/arm/include/asm/probes.h | ||
3 | * | ||
4 | * Original contents copied from arch/arm/include/asm/kprobes.h | ||
5 | * which contains the following notice... | ||
6 | * | ||
7 | * Copyright (C) 2006, 2007 Motorola Inc. | ||
8 | * | ||
9 | * This program is free software; you can redistribute it and/or modify | ||
10 | * it under the terms of the GNU General Public License version 2 as | ||
11 | * published by the Free Software Foundation. | ||
12 | * | ||
13 | * This program is distributed in the hope that it will be useful, | ||
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
16 | * General Public License for more details. | ||
17 | */ | ||
18 | |||
19 | #ifndef _ASM_PROBES_H | ||
20 | #define _ASM_PROBES_H | ||
21 | |||
22 | typedef void (kprobe_insn_handler_t)(struct kprobe *, struct pt_regs *); | ||
23 | typedef unsigned long (kprobe_check_cc)(unsigned long); | ||
24 | typedef void (kprobe_insn_singlestep_t)(struct kprobe *, struct pt_regs *); | ||
25 | typedef void (kprobe_insn_fn_t)(void); | ||
26 | |||
27 | /* Architecture specific copy of original instruction. */ | ||
28 | struct arch_specific_insn { | ||
29 | kprobe_opcode_t *insn; | ||
30 | kprobe_insn_handler_t *insn_handler; | ||
31 | kprobe_check_cc *insn_check_cc; | ||
32 | kprobe_insn_singlestep_t *insn_singlestep; | ||
33 | kprobe_insn_fn_t *insn_fn; | ||
34 | }; | ||
35 | |||
36 | #endif | ||