Home
last modified time | relevance | path

Searched refs:optinsn (Results 1 – 6 of 6) sorted by relevance

/linux-6.6.21/arch/x86/kernel/kprobes/
Dopt.c68 memcpy(buf + 1, op->optinsn.copied_insn, DISP32_SIZE); in __recover_optprobed_insn()
71 memcpy(buf, op->optinsn.copied_insn + offs, DISP32_SIZE - offs); in __recover_optprobed_insn()
346 for (i = 1; i < op->optinsn.size; i++) { in arch_check_optimized_kprobe()
360 op->kp.addr + op->optinsn.size > addr); in arch_within_optimized_kprobe()
367 u8 *slot = op->optinsn.insn; in __arch_remove_optimized_kprobe()
369 int len = TMPL_END_IDX + op->optinsn.size + JMP32_INSN_SIZE; in __arch_remove_optimized_kprobe()
376 op->optinsn.insn = NULL; in __arch_remove_optimized_kprobe()
377 op->optinsn.size = 0; in __arch_remove_optimized_kprobe()
405 op->optinsn.insn = slot = get_optinsn_slot(); in arch_prepare_optimized_kprobe()
429 op->optinsn.size = ret; in arch_prepare_optimized_kprobe()
[all …]
/linux-6.6.21/arch/arm/probes/kprobes/
Dopt-arm.c109 int arch_prepared_optinsn(struct arch_optimized_insn *optinsn) in arch_prepared_optinsn() argument
111 return optinsn->insn != NULL; in arch_prepared_optinsn()
142 if (op->optinsn.insn) { in __arch_remove_optimized_kprobe()
143 free_optinsn_slot(op->optinsn.insn, dirty); in __arch_remove_optimized_kprobe()
144 op->optinsn.insn = NULL; in __arch_remove_optimized_kprobe()
285 op->optinsn.insn = code; in NOKPROBE_SYMBOL()
301 memcpy(op->optinsn.copied_insn, op->kp.addr, in arch_optimize_kprobes()
305 (unsigned long)op->optinsn.insn); in arch_optimize_kprobes()
313 op->optinsn.copied_insn[0]) & 0xf0000000) | in arch_optimize_kprobes()
/linux-6.6.21/arch/powerpc/kernel/
Doptprobes.c121 if (op->optinsn.insn) { in arch_remove_optimized_kprobe()
122 free_optinsn_slot(op->optinsn.insn, 1); in arch_remove_optimized_kprobe()
123 op->optinsn.insn = NULL; in arch_remove_optimized_kprobe()
241 op->optinsn.insn = buff; in arch_prepare_optimized_kprobe()
251 int arch_prepared_optinsn(struct arch_optimized_insn *optinsn) in arch_prepared_optinsn() argument
253 return optinsn->insn != NULL; in arch_prepared_optinsn()
277 memcpy(op->optinsn.copied_insn, op->kp.addr, RELATIVEJUMP_SIZE); in arch_optimize_kprobes()
278 create_branch(&instr, op->kp.addr, (unsigned long)op->optinsn.insn, 0); in arch_optimize_kprobes()
/linux-6.6.21/arch/x86/include/asm/
Dkprobes.h95 static inline int arch_prepared_optinsn(struct arch_optimized_insn *optinsn) in arch_prepared_optinsn() argument
97 return optinsn->size; in arch_prepared_optinsn()
/linux-6.6.21/include/linux/
Dkprobes.h355 struct arch_optimized_insn optinsn; member
359 extern int arch_prepared_optinsn(struct arch_optimized_insn *optinsn);
373 DEFINE_INSN_CACHE_OPS(optinsn);
/linux-6.6.21/kernel/
Dkprobes.c454 return arch_prepared_optinsn(&op->optinsn); in kprobe_optready()
868 if (!arch_prepared_optinsn(&op->optinsn)) { in try_to_optimize_kprobe()