mirror of
https://github.com/torvalds/linux.git
synced 2024-11-07 20:51:47 +00:00
ARM: Change more ARM kprobes symbol names to something more generic
Change kprobe_emulate_none, kprobe_simulate_nop, and arm_kprobe_decode_init function names to something more appropriate for code being shared outside of the kprobes subsystem. Also, move the new arm_probes_decode_init declaration out of the kprobes.h include file and into the probes.h include file. Signed-off-by: David A. Long <dave.long@linaro.org> Acked-by: Jon Medhurst <tixy@linaro.org>
This commit is contained in:
parent
f145d664df
commit
eb73ea97e6
@ -302,10 +302,10 @@ emulate_rdlo12rdhi16rn0rm8_rwflags_nopc(probes_opcode_t insn,
|
||||
}
|
||||
|
||||
const union decode_action kprobes_arm_actions[NUM_PROBES_ARM_ACTIONS] = {
|
||||
[PROBES_EMULATE_NONE] = {.handler = kprobe_emulate_none},
|
||||
[PROBES_SIMULATE_NOP] = {.handler = kprobe_simulate_nop},
|
||||
[PROBES_PRELOAD_IMM] = {.handler = kprobe_simulate_nop},
|
||||
[PROBES_PRELOAD_REG] = {.handler = kprobe_simulate_nop},
|
||||
[PROBES_EMULATE_NONE] = {.handler = probes_emulate_none},
|
||||
[PROBES_SIMULATE_NOP] = {.handler = probes_simulate_nop},
|
||||
[PROBES_PRELOAD_IMM] = {.handler = probes_simulate_nop},
|
||||
[PROBES_PRELOAD_REG] = {.handler = probes_simulate_nop},
|
||||
[PROBES_BRANCH_IMM] = {.handler = simulate_blx1},
|
||||
[PROBES_MRS] = {.handler = simulate_mrs},
|
||||
[PROBES_BRANCH_REG] = {.handler = simulate_blx2bx},
|
||||
@ -326,8 +326,8 @@ const union decode_action kprobes_arm_actions[NUM_PROBES_ARM_ACTIONS] = {
|
||||
[PROBES_DATA_PROCESSING_IMM] = {
|
||||
.handler = emulate_rd12rn16rm0rs8_rwflags},
|
||||
[PROBES_MOV_HALFWORD] = {.handler = emulate_rd12rm0_noflags_nopc},
|
||||
[PROBES_SEV] = {.handler = kprobe_emulate_none},
|
||||
[PROBES_WFE] = {.handler = kprobe_simulate_nop},
|
||||
[PROBES_SEV] = {.handler = probes_emulate_none},
|
||||
[PROBES_WFE] = {.handler = probes_simulate_nop},
|
||||
[PROBES_SATURATE] = {.handler = emulate_rd12rn16rm0_rwflags_nopc},
|
||||
[PROBES_REV] = {.handler = emulate_rd12rm0_noflags_nopc},
|
||||
[PROBES_MMI] = {.handler = emulate_rd12rn16rm0_rwflags_nopc},
|
||||
|
@ -613,8 +613,8 @@ const union decode_action kprobes_t16_actions[NUM_PROBES_T16_ACTIONS] = {
|
||||
[PROBES_T16_SIGN_EXTEND] = {.handler = t16_emulate_loregs_rwflags},
|
||||
[PROBES_T16_PUSH] = {.decoder = t16_decode_push},
|
||||
[PROBES_T16_POP] = {.decoder = t16_decode_pop},
|
||||
[PROBES_T16_SEV] = {.handler = kprobe_emulate_none},
|
||||
[PROBES_T16_WFE] = {.handler = kprobe_simulate_nop},
|
||||
[PROBES_T16_SEV] = {.handler = probes_emulate_none},
|
||||
[PROBES_T16_WFE] = {.handler = probes_simulate_nop},
|
||||
[PROBES_T16_IT] = {.decoder = t16_decode_it},
|
||||
[PROBES_T16_CMP] = {.handler = t16_emulate_loregs_rwflags},
|
||||
[PROBES_T16_ADDSUB] = {.handler = t16_emulate_loregs_noitrwflags},
|
||||
@ -644,12 +644,12 @@ const union decode_action kprobes_t32_actions[NUM_PROBES_T32_ACTIONS] = {
|
||||
[PROBES_T32_MOVW] = {.handler = t32_emulate_rd8rn16_noflags},
|
||||
[PROBES_T32_SAT] = {.handler = t32_emulate_rd8rn16rm0_rwflags},
|
||||
[PROBES_T32_BITFIELD] = {.handler = t32_emulate_rd8rn16_noflags},
|
||||
[PROBES_T32_SEV] = {.handler = kprobe_emulate_none},
|
||||
[PROBES_T32_WFE] = {.handler = kprobe_simulate_nop},
|
||||
[PROBES_T32_SEV] = {.handler = probes_emulate_none},
|
||||
[PROBES_T32_WFE] = {.handler = probes_simulate_nop},
|
||||
[PROBES_T32_MRS] = {.handler = t32_simulate_mrs},
|
||||
[PROBES_T32_BRANCH_COND] = {.decoder = t32_decode_cond_branch},
|
||||
[PROBES_T32_BRANCH] = {.handler = t32_simulate_branch},
|
||||
[PROBES_T32_PLDI] = {.handler = kprobe_simulate_nop},
|
||||
[PROBES_T32_PLDI] = {.handler = probes_simulate_nop},
|
||||
[PROBES_T32_LDR_LIT] = {.handler = t32_simulate_ldr_literal},
|
||||
[PROBES_T32_LDRSTR] = {.handler = t32_emulate_ldrstr},
|
||||
[PROBES_T32_SIGN_EXTEND] = {.handler = t32_emulate_rd8rn16rm0_rwflags},
|
||||
|
@ -614,7 +614,7 @@ static struct undef_hook kprobes_arm_break_hook = {
|
||||
|
||||
int __init arch_init_kprobes()
|
||||
{
|
||||
arm_kprobe_decode_init();
|
||||
arm_probes_decode_init();
|
||||
#ifdef CONFIG_THUMB2_KERNEL
|
||||
register_undef_hook(&kprobes_thumb16_break_hook);
|
||||
register_undef_hook(&kprobes_thumb32_break_hook);
|
||||
|
@ -57,8 +57,6 @@ enum kprobe_insn arm_kprobe_decode_insn(probes_opcode_t,
|
||||
|
||||
#endif
|
||||
|
||||
void __init arm_kprobe_decode_init(void);
|
||||
|
||||
#include "probes.h"
|
||||
|
||||
#endif /* _ARM_KERNEL_KPROBES_H */
|
||||
|
@ -76,7 +76,7 @@ void __init test_alu_write_pc_interworking(void)
|
||||
#endif /* !test_alu_write_pc_interworking */
|
||||
|
||||
|
||||
void __init arm_kprobe_decode_init(void)
|
||||
void __init arm_probes_decode_init(void)
|
||||
{
|
||||
find_str_pc_offset();
|
||||
test_load_write_pc_interworking();
|
||||
@ -175,13 +175,13 @@ probes_check_cc * const probes_condition_checks[16] = {
|
||||
};
|
||||
|
||||
|
||||
void __kprobes kprobe_simulate_nop(probes_opcode_t opcode,
|
||||
void __kprobes probes_simulate_nop(probes_opcode_t opcode,
|
||||
struct arch_specific_insn *asi,
|
||||
struct pt_regs *regs)
|
||||
{
|
||||
}
|
||||
|
||||
void __kprobes kprobe_emulate_none(probes_opcode_t opcode,
|
||||
void __kprobes probes_emulate_none(probes_opcode_t opcode,
|
||||
struct arch_specific_insn *asi,
|
||||
struct pt_regs *regs)
|
||||
{
|
||||
|
@ -24,6 +24,8 @@
|
||||
#include <linux/kprobes.h>
|
||||
#include "kprobes.h"
|
||||
|
||||
void __init arm_probes_decode_init(void);
|
||||
|
||||
#if __LINUX_ARM_ARCH__ >= 7
|
||||
|
||||
/* str_pc_offset is architecturally defined from ARMv7 onwards */
|
||||
@ -131,9 +133,9 @@ static inline void __kprobes alu_write_pc(long pcv, struct pt_regs *regs)
|
||||
}
|
||||
|
||||
|
||||
void __kprobes kprobe_simulate_nop(probes_opcode_t, struct arch_specific_insn *,
|
||||
void __kprobes probes_simulate_nop(probes_opcode_t, struct arch_specific_insn *,
|
||||
struct pt_regs *regs);
|
||||
void __kprobes kprobe_emulate_none(probes_opcode_t, struct arch_specific_insn *,
|
||||
void __kprobes probes_emulate_none(probes_opcode_t, struct arch_specific_insn *,
|
||||
struct pt_regs *regs);
|
||||
|
||||
enum kprobe_insn __kprobes
|
||||
|
Loading…
Reference in New Issue
Block a user