summaryrefslogtreecommitdiffstats
path: root/arch/arm/kernel/kprobes.h
diff options
context:
space:
mode:
authorJon Medhurst <tixy@yxit.co.uk>2011-04-20 10:52:38 +0100
committerTixy <tixy@medhuaa1.miniserver.com>2011-07-13 17:32:40 +0000
commit221bf15ffd2ad6cdc624aa4274f706499501c123 (patch)
treeb4742d2b4cedda73e387b9ab9812a00a280e55ed /arch/arm/kernel/kprobes.h
parent691b2ff294a4787f3e54f5bb541570ac74bcb6f4 (diff)
downloadlinux-221bf15ffd2ad6cdc624aa4274f706499501c123.tar.gz
linux-221bf15ffd2ad6cdc624aa4274f706499501c123.tar.bz2
linux-221bf15ffd2ad6cdc624aa4274f706499501c123.zip
ARM: kprobes: Split out internal parts of kprobes.h
Later, we will be adding a considerable amount of internal implementation definitions to kprobe header files and it would be good to have these in local header file along side the source code, rather than pollute the existing header which is include by all users of kprobes. To this end, we add arch/arm/kernel/kprobes.h and move into this the existing internal defintions from arch/arm/include/asm/kprobes.h Signed-off-by: Jon Medhurst <tixy@yxit.co.uk> Acked-by: Nicolas Pitre <nicolas.pitre@linaro.org>
Diffstat (limited to 'arch/arm/kernel/kprobes.h')
-rw-r--r--arch/arm/kernel/kprobes.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/arch/arm/kernel/kprobes.h b/arch/arm/kernel/kprobes.h
new file mode 100644
index 000000000000..87a5241b2f18
--- /dev/null
+++ b/arch/arm/kernel/kprobes.h
@@ -0,0 +1,37 @@
+/*
+ * arch/arm/kernel/kprobes.h
+ *
+ * Contents moved from arch/arm/include/asm/kprobes.h which is
+ * Copyright (C) 2006, 2007 Motorola Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ */
+
+#ifndef _ARM_KERNEL_KPROBES_H
+#define _ARM_KERNEL_KPROBES_H
+
+/*
+ * This undefined instruction must be unique and
+ * reserved solely for kprobes' use.
+ */
+#define KPROBE_BREAKPOINT_INSTRUCTION 0xe7f001f8
+
+enum kprobe_insn {
+ INSN_REJECTED,
+ INSN_GOOD,
+ INSN_GOOD_NO_SLOT
+};
+
+enum kprobe_insn arm_kprobe_decode_insn(kprobe_opcode_t,
+ struct arch_specific_insn *);
+
+void __init arm_kprobe_decode_init(void);
+
+#endif /* _ARM_KERNEL_KPROBES_H */