Home
last modified time | relevance | path

Searched refs:kprobe_opcode_t (Results 1 – 25 of 39) sorted by relevance

12

/OK3568_Linux_fs/kernel/arch/powerpc/include/asm/
H A Dkprobes.h32 typedef ppc_opcode_t kprobe_opcode_t; typedef
34 extern kprobe_opcode_t optinsn_slot;
37 extern kprobe_opcode_t optprobe_template_entry[];
38 extern kprobe_opcode_t optprobe_template_op_address[];
39 extern kprobe_opcode_t optprobe_template_call_handler[];
40 extern kprobe_opcode_t optprobe_template_insn[];
41 extern kprobe_opcode_t optprobe_template_call_emulate[];
42 extern kprobe_opcode_t optprobe_template_ret[];
43 extern kprobe_opcode_t optprobe_template_end[];
47 #define MAX_OPTIMIZED_LENGTH sizeof(kprobe_opcode_t) /* 4 bytes */
[all …]
/OK3568_Linux_fs/kernel/arch/arm/include/asm/
H A Dkprobes.h24 typedef u32 kprobe_opcode_t; typedef
47 extern __visible kprobe_opcode_t optprobe_template_entry[];
48 extern __visible kprobe_opcode_t optprobe_template_val[];
49 extern __visible kprobe_opcode_t optprobe_template_call[];
50 extern __visible kprobe_opcode_t optprobe_template_end[];
51 extern __visible kprobe_opcode_t optprobe_template_sub_sp[];
52 extern __visible kprobe_opcode_t optprobe_template_add_sp[];
53 extern __visible kprobe_opcode_t optprobe_template_restore_begin[];
54 extern __visible kprobe_opcode_t optprobe_template_restore_orig_insn[];
55 extern __visible kprobe_opcode_t optprobe_template_restore_end[];
[all …]
/OK3568_Linux_fs/kernel/arch/sh/kernel/
H A Dkprobes.c42 kprobe_opcode_t opcode = *(kprobe_opcode_t *) (p->addr); in arch_prepare_kprobe()
54 memcpy(p->ainsn.insn, p->addr, MAX_INSN_SIZE * sizeof(kprobe_opcode_t)); in arch_copy_kprobe()
62 (unsigned long)p->addr + sizeof(kprobe_opcode_t)); in arch_arm_kprobe()
69 (unsigned long)p->addr + sizeof(kprobe_opcode_t)); in arch_disarm_kprobe()
88 struct kprobe *p = get_kprobe((kprobe_opcode_t *) pc + 1); in kprobe_handle_illslot()
146 __this_cpu_write(saved_current_opcode.addr, (kprobe_opcode_t *)regs->pc); in prepare_singlestep()
158 op1->addr = (kprobe_opcode_t *) regs->regs[reg_nr]; in prepare_singlestep()
162 (kprobe_opcode_t *) (regs->pc + 4 + disp * 2); in prepare_singlestep()
167 (kprobe_opcode_t *) (regs->pc + 4 + in prepare_singlestep()
171 op1->addr = (kprobe_opcode_t *) regs->pr; in prepare_singlestep()
[all …]
/OK3568_Linux_fs/kernel/arch/x86/include/asm/
H A Dkprobes.h26 typedef u8 kprobe_opcode_t; typedef
38 extern __visible kprobe_opcode_t optprobe_template_entry[];
39 extern __visible kprobe_opcode_t optprobe_template_clac[];
40 extern __visible kprobe_opcode_t optprobe_template_val[];
41 extern __visible kprobe_opcode_t optprobe_template_call[];
42 extern __visible kprobe_opcode_t optprobe_template_end[];
59 kprobe_opcode_t *insn;
75 kprobe_opcode_t copied_insn[DISP32_SIZE];
77 kprobe_opcode_t *insn;
/OK3568_Linux_fs/kernel/arch/arc/kernel/
H A Dkprobes.c42 (unsigned long)p->addr + sizeof(kprobe_opcode_t)); in arch_arm_kprobe()
50 (unsigned long)p->addr + sizeof(kprobe_opcode_t)); in arch_disarm_kprobe()
63 sizeof(kprobe_opcode_t)); in arch_remove_kprobe()
73 sizeof(kprobe_opcode_t)); in arch_remove_kprobe()
107 sizeof(kprobe_opcode_t)); in resume_execution()
117 sizeof(kprobe_opcode_t)); in resume_execution()
139 (unsigned long)p->addr + sizeof(kprobe_opcode_t)); in setup_singlestep()
174 p->ainsn.t1_addr = (kprobe_opcode_t *) next_pc; in setup_singlestep()
180 sizeof(kprobe_opcode_t)); in setup_singlestep()
183 p->ainsn.t2_addr = (kprobe_opcode_t *) tgt_if_br; in setup_singlestep()
[all …]
/OK3568_Linux_fs/kernel/arch/powerpc/kernel/
H A Dkprobes.c42 kprobe_opcode_t *kprobe_lookup_name(const char *name, unsigned int offset) in kprobe_lookup_name()
44 kprobe_opcode_t *addr = NULL; in kprobe_lookup_name()
48 addr = (kprobe_opcode_t *)kallsyms_lookup_name(name); in kprobe_lookup_name()
59 addr = (kprobe_opcode_t *)faddr; in kprobe_lookup_name()
62 addr = (kprobe_opcode_t *)ppc_function_entry(addr); in kprobe_lookup_name()
94 addr = (kprobe_opcode_t *)kallsyms_lookup_name(dot_name); in kprobe_lookup_name()
98 addr = (kprobe_opcode_t *)kallsyms_lookup_name(name); in kprobe_lookup_name()
100 addr = (kprobe_opcode_t *)kallsyms_lookup_name(name); in kprobe_lookup_name()
220 ri->ret_addr = (kprobe_opcode_t *)regs->link; in arch_prepare_kretprobe()
320 kprobe_opcode_t insn = *p->ainsn.insn; in kprobe_handler()
[all …]
H A Doptprobes.c75 if (p->addr == (kprobe_opcode_t *)&kretprobe_trampoline) in can_optimize()
76 return (unsigned long)p->addr + sizeof(kprobe_opcode_t); in can_optimize()
149 void patch_imm32_load_insns(unsigned int val, kprobe_opcode_t *addr) in patch_imm32_load_insns()
167 void patch_imm64_load_insns(unsigned long val, int reg, kprobe_opcode_t *addr) in patch_imm64_load_insns()
202 kprobe_opcode_t *op_callback_addr, *emulate_step_addr, *buff; in arch_prepare_optimized_kprobe()
239 size = (TMPL_END_IDX * sizeof(kprobe_opcode_t)) / sizeof(int); in arch_prepare_optimized_kprobe()
257 op_callback_addr = (kprobe_opcode_t *)ppc_kallsyms_lookup_name("optimized_callback"); in arch_prepare_optimized_kprobe()
258 emulate_step_addr = (kprobe_opcode_t *)ppc_kallsyms_lookup_name("emulate_step"); in arch_prepare_optimized_kprobe()
/OK3568_Linux_fs/kernel/arch/x86/kernel/kprobes/
H A Dcore.c138 static kprobe_opcode_t *skip_prefixes(kprobe_opcode_t *insn) in skip_prefixes()
161 kprobe_opcode_t opcode; in can_boost()
214 __recover_probed_insn(kprobe_opcode_t *buf, unsigned long addr) in __recover_probed_insn()
255 MAX_INSN_SIZE * sizeof(kprobe_opcode_t))) in __recover_probed_insn()
271 unsigned long recover_probed_instruction(kprobe_opcode_t *buf, unsigned long addr) in recover_probed_instruction()
287 kprobe_opcode_t buf[MAX_INSN_SIZE]; in can_probe()
324 static int is_IF_modifier(kprobe_opcode_t *insn) in is_IF_modifier()
349 kprobe_opcode_t buf[MAX_INSN_SIZE]; in __copy_instruction()
407 static int prepare_boost(kprobe_opcode_t *buf, struct kprobe *p, in prepare_boost()
463 kprobe_opcode_t buf[MAX_INSN_SIZE]; in arch_copy_kprobe()
[all …]
H A Dcommon.h82 extern unsigned long recover_probed_instruction(kprobe_opcode_t *buf,
96 extern unsigned long __recover_optprobed_insn(kprobe_opcode_t *buf, unsigned long addr);
102 static inline unsigned long __recover_optprobed_insn(kprobe_opcode_t *buf, unsigned long addr) in __recover_optprobed_insn()
H A Dftrace.c23 p = get_kprobe((kprobe_opcode_t *)ip); in kprobe_ftrace_handler()
33 regs->ip = ip + sizeof(kprobe_opcode_t); in kprobe_ftrace_handler()
H A Dopt.c36 unsigned long __recover_optprobed_insn(kprobe_opcode_t *buf, unsigned long addr) in __recover_optprobed_insn()
62 MAX_INSN_SIZE * sizeof(kprobe_opcode_t))) in __recover_optprobed_insn()
76 static void synthesize_clac(kprobe_opcode_t *addr) in synthesize_clac()
92 static void synthesize_set_arg1(kprobe_opcode_t *addr, unsigned long val) in synthesize_set_arg1()
298 kprobe_opcode_t buf[MAX_INSN_SIZE]; in can_optimize()
/OK3568_Linux_fs/kernel/include/linux/
H A Dkprobes.h42 typedef int kprobe_opcode_t; typedef
70 kprobe_opcode_t *addr;
91 kprobe_opcode_t opcode;
166 kprobe_opcode_t *ret_addr;
256 extern int kprobe_on_func_entry(kprobe_opcode_t *addr, const char *sym, unsigned long offset);
273 extern kprobe_opcode_t *__get_insn_slot(struct kprobe_insn_cache *c);
275 kprobe_opcode_t *slot, int dirty);
283 static inline kprobe_opcode_t *get_##__name##_slot(void) \
288 static inline void free_##__name##_slot(kprobe_opcode_t *slot, int dirty)\
375 kprobe_opcode_t *kprobe_lookup_name(const char *name, unsigned int offset);
/OK3568_Linux_fs/kernel/arch/arm64/kernel/probes/
H A Ddecode-insn.c119 is_probed_address_atomic(kprobe_opcode_t *scan_start, kprobe_opcode_t *scan_end) in is_probed_address_atomic()
137 arm_kprobe_decode_insn(kprobe_opcode_t *addr, struct arch_specific_insn *asi) in arm_kprobe_decode_insn()
155 if (offset < (MAX_ATOMIC_CONTEXT_SIZE*sizeof(kprobe_opcode_t))) in arm_kprobe_decode_insn()
156 scan_end = addr - (offset / sizeof(kprobe_opcode_t)); in arm_kprobe_decode_insn()
H A Ddecode-insn.h18 #define MAX_ATOMIC_CONTEXT_SIZE (128 / sizeof(kprobe_opcode_t))
28 arm_kprobe_decode_insn(kprobe_opcode_t *addr, struct arch_specific_insn *asi);
H A Dkprobes.c41 kprobe_opcode_t *addr = p->ainsn.api.insn; in arch_prepare_ss_slot()
54 sizeof(kprobe_opcode_t); in arch_prepare_ss_slot()
184 kcb->ss_ctx.match_addr = addr + sizeof(kprobe_opcode_t); in set_ss_context()
335 p = get_kprobe((kprobe_opcode_t *) addr); in kprobe_handler()
453 ri->ret_addr = (kprobe_opcode_t *)regs->regs[30]; in arch_prepare_kretprobe()
/OK3568_Linux_fs/kernel/arch/parisc/include/asm/
H A Dkprobes.h24 typedef u32 kprobe_opcode_t; typedef
32 sizeof(kprobe_opcode_t))
37 kprobe_opcode_t *insn;
/OK3568_Linux_fs/kernel/arch/arc/include/asm/
H A Dkprobes.h13 typedef u16 kprobe_opcode_t; typedef
23 kprobe_opcode_t *t1_addr, *t2_addr;
24 kprobe_opcode_t t1_opcode, t2_opcode;
/OK3568_Linux_fs/kernel/arch/mips/include/asm/
H A Dkprobes.h28 typedef union mips_instruction kprobe_opcode_t; typedef
37 (MAX_INSN_SIZE * sizeof(kprobe_opcode_t))); \
49 kprobe_opcode_t *insn;
/OK3568_Linux_fs/kernel/arch/arm/probes/kprobes/
H A Dcore.c48 kprobe_opcode_t insn; in arch_prepare_kprobe()
49 kprobe_opcode_t tmp_insn[MAX_INSN_SIZE]; in arch_prepare_kprobe()
132 kprobe_opcode_t insn = p->opcode; in arch_arm_kprobe()
248 p = get_kprobe((kprobe_opcode_t *)(regs->ARM_pc | 1)); in kprobe_handler()
250 p = get_kprobe((kprobe_opcode_t *)regs->ARM_pc); in kprobe_handler()
253 p = get_kprobe((kprobe_opcode_t *)regs->ARM_pc); in kprobe_handler()
423 ri->ret_addr = (kprobe_opcode_t *)regs->ARM_lr; in arch_prepare_kretprobe()
H A Dtest-core.c336 the_kprobe.addr = (kprobe_opcode_t *)func; in test_kprobe()
386 the_kretprobe.kp.addr = (kprobe_opcode_t *)func; in test_kretprobe()
521 .addr = (kprobe_opcode_t *)((uintptr_t)fn + offset), in kprobe_benchmark()
775 coverage_add_registers(struct coverage_entry *entry, kprobe_opcode_t insn) in coverage_add_registers()
842 static void coverage_add(kprobe_opcode_t insn) in coverage_add()
1000 static kprobe_opcode_t current_instruction;
1346 test_before_probe.kprobe.addr = (kprobe_opcode_t *)test_code; in kprobes_test_case_start()
1349 test_case_probe.kprobe.addr = (kprobe_opcode_t *)test_code; in kprobes_test_case_start()
1370 test_after_probe.kprobe.addr = (kprobe_opcode_t *)test_code; in kprobes_test_case_start()
1412 (kprobe_opcode_t *)current_branch_target; in kprobes_test_case_start()
/OK3568_Linux_fs/kernel/arch/mips/kernel/
H A Dkprobes.c124 memcpy(&p->ainsn.insn[0], p->addr + 1, sizeof(kprobe_opcode_t)); in arch_prepare_kprobe()
126 memcpy(&p->ainsn.insn[0], p->addr, sizeof(kprobe_opcode_t)); in arch_prepare_kprobe()
277 kprobe_opcode_t *addr; in kprobe_handler()
280 addr = (kprobe_opcode_t *) regs->cp0_epc; in kprobe_handler()
479 ri->ret_addr = (kprobe_opcode_t *) regs->regs[31]; in arch_prepare_kretprobe()
504 if (p->addr == (kprobe_opcode_t *)kretprobe_trampoline) in arch_trampoline_kprobe()
511 .addr = (kprobe_opcode_t *)kretprobe_trampoline,
/OK3568_Linux_fs/kernel/arch/ia64/kernel/
H A Dkprobes.c414 ri->ret_addr = (kprobe_opcode_t *)regs->b0; in arch_prepare_kretprobe()
501 bundle = &((kprobe_opcode_t *)kprobe_addr)->bundle; in arch_prepare_kprobe()
521 memcpy(&p->opcode, kprobe_addr, sizeof(kprobe_opcode_t)); in arch_prepare_kprobe()
522 memcpy(p->ainsn.insn, kprobe_addr, sizeof(kprobe_opcode_t)); in arch_prepare_kprobe()
537 dest = &((kprobe_opcode_t *)arm_addr)->bundle; in arch_arm_kprobe()
542 sizeof(kprobe_opcode_t) * MAX_INSN_SIZE); in arch_arm_kprobe()
555 flush_icache_range(arm_addr, arm_addr + sizeof(kprobe_opcode_t)); in arch_arm_kprobe()
564 dest = &((kprobe_opcode_t *)arm_addr)->bundle; in arch_disarm_kprobe()
578 flush_icache_range(arm_addr, arm_addr + sizeof(kprobe_opcode_t)); in arch_disarm_kprobe()
701 kprobe_opcode_t *addr = (kprobe_opcode_t *)instruction_pointer(regs); in pre_kprobes_handler()
/OK3568_Linux_fs/kernel/arch/sh/include/asm/
H A Dkprobes.h14 typedef insn_size_t kprobe_opcode_t; typedef
34 kprobe_opcode_t insn[MAX_INSN_SIZE];
/OK3568_Linux_fs/kernel/arch/sparc/include/asm/
H A Dkprobes.h14 typedef u32 kprobe_opcode_t; typedef
32 kprobe_opcode_t insn[MAX_INSN_SIZE];
/OK3568_Linux_fs/kernel/arch/s390/include/asm/
H A Dkprobes.h41 typedef u16 kprobe_opcode_t; typedef
56 kprobe_opcode_t *insn;

12