aboutsummaryrefslogtreecommitdiff
path: root/include/asm-ia64/kprobes.h
diff options
context:
space:
mode:
authorTony Luck <tony.luck@intel.com>2008-04-17 10:14:51 -0700
committerTony Luck <tony.luck@intel.com>2008-04-17 10:14:51 -0700
commit71b264f85ff50c14fe945ffff06ae0d5e9a9124e (patch)
tree9fd79c63fd630c4d030a97d254d42a3a73f1328b /include/asm-ia64/kprobes.h
parentf4df39cbdd9e9ab615e80148cc271db22a8508ad (diff)
parent072f042df335d7e0da2027637bcf720d7ff1589b (diff)
Pull miscellaneous into release branch
Conflicts: arch/ia64/kernel/mca.c
Diffstat (limited to 'include/asm-ia64/kprobes.h')
-rw-r--r--include/asm-ia64/kprobes.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/include/asm-ia64/kprobes.h b/include/asm-ia64/kprobes.h
index d03bf9ff68e..ef71b57fc2f 100644
--- a/include/asm-ia64/kprobes.h
+++ b/include/asm-ia64/kprobes.h
@@ -30,8 +30,12 @@
#include <asm/break.h>
#define __ARCH_WANT_KPROBES_INSN_SLOT
-#define MAX_INSN_SIZE 1
+#define MAX_INSN_SIZE 2 /* last half is for kprobe-booster */
#define BREAK_INST (long)(__IA64_BREAK_KPROBE << 6)
+#define NOP_M_INST (long)(1<<27)
+#define BRL_INST(i1, i2) ((long)((0xcL << 37) | /* brl */ \
+ (0x1L << 12) | /* many */ \
+ (((i1) & 1) << 36) | ((i2) << 13))) /* imm */
typedef union cmp_inst {
struct {
@@ -112,6 +116,7 @@ struct arch_specific_insn {
#define INST_FLAG_FIX_RELATIVE_IP_ADDR 1
#define INST_FLAG_FIX_BRANCH_REG 2
#define INST_FLAG_BREAK_INST 4
+ #define INST_FLAG_BOOSTABLE 8
unsigned long inst_flag;
unsigned short target_br_reg;
unsigned short slot;