diff options
author | David A. Long <dave.long@linaro.org> | 2014-03-07 11:23:04 -0500 |
---|---|---|
committer | David A. Long <dave.long@linaro.org> | 2014-03-18 16:39:40 -0400 |
commit | c7edc9e326d53ca5ef9bed82de0740c6b107d55b (patch) | |
tree | 262d901b5e4d61930d5bc8ff68b9ddd807e3f956 /arch/arm/kernel/uprobes.h | |
parent | b4cd605ca92d9a8a2f71355cb45dd943ebcb0c97 (diff) | |
download | talos-obmc-linux-c7edc9e326d53ca5ef9bed82de0740c6b107d55b.tar.gz talos-obmc-linux-c7edc9e326d53ca5ef9bed82de0740c6b107d55b.zip |
ARM: add uprobes support
Using Rabin Vincent's ARM uprobes patches as a base, enable uprobes
support on ARM.
Caveats:
- Thumb is not supported
Signed-off-by: Rabin Vincent <rabin@rab.in>
Signed-off-by: David A. Long <dave.long@linaro.org>
Diffstat (limited to 'arch/arm/kernel/uprobes.h')
-rw-r--r-- | arch/arm/kernel/uprobes.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/arch/arm/kernel/uprobes.h b/arch/arm/kernel/uprobes.h new file mode 100644 index 000000000000..1d0c12dfbd03 --- /dev/null +++ b/arch/arm/kernel/uprobes.h @@ -0,0 +1,35 @@ +/* + * Copyright (C) 2012 Rabin Vincent <rabin at rab.in> + * + * 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. + */ + +#ifndef __ARM_KERNEL_UPROBES_H +#define __ARM_KERNEL_UPROBES_H + +enum probes_insn uprobe_decode_ldmstm(probes_opcode_t insn, + struct arch_probes_insn *asi, + const struct decode_header *d); + +enum probes_insn decode_ldr(probes_opcode_t insn, + struct arch_probes_insn *asi, + const struct decode_header *d); + +enum probes_insn +decode_rd12rn16rm0rs8_rwflags(probes_opcode_t insn, + struct arch_probes_insn *asi, + const struct decode_header *d); + +enum probes_insn +decode_wb_pc(probes_opcode_t insn, struct arch_probes_insn *asi, + const struct decode_header *d, bool alu); + +enum probes_insn +decode_pc_ro(probes_opcode_t insn, struct arch_probes_insn *asi, + const struct decode_header *d); + +extern const union decode_action uprobes_probes_actions[]; + +#endif |