Home
last modified time | relevance | path

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

/arch/x86/kernel/
Duprobes.c218 static int uprobe_init_insn(struct arch_uprobe *auprobe, struct insn *insn, bool x86_64) in uprobe_init_insn() argument
222 insn_init(insn, auprobe->insn, x86_64); in uprobe_init_insn()
277 static void riprel_analyze(struct arch_uprobe *auprobe, struct insn *insn) in riprel_analyze() argument
292 cursor = auprobe->insn + insn_offset_rex_prefix(insn); in riprel_analyze()
309 cursor = auprobe->insn + insn_offset_vex_prefix(insn) + 1; in riprel_analyze()
375 auprobe->defparam.fixups |= UPROBE_FIX_RIP_SI; in riprel_analyze()
378 auprobe->defparam.fixups |= UPROBE_FIX_RIP_DI; in riprel_analyze()
382 auprobe->defparam.fixups |= UPROBE_FIX_RIP_BX; in riprel_analyze()
389 cursor = auprobe->insn + insn_offset_modrm(insn); in riprel_analyze()
399 scratch_reg(struct arch_uprobe *auprobe, struct pt_regs *regs) in scratch_reg() argument
[all …]
/arch/arm/kernel/
Duprobes.c32 int set_swbp(struct arch_uprobe *auprobe, struct mm_struct *mm, in set_swbp() argument
36 __opcode_to_mem_arm(auprobe->bpinsn)); in set_swbp()
39 bool arch_uprobe_ignore(struct arch_uprobe *auprobe, struct pt_regs *regs) in arch_uprobe_ignore() argument
41 if (!auprobe->asi.insn_check_cc(regs->ARM_cpsr)) { in arch_uprobe_ignore()
49 bool arch_uprobe_skip_sstep(struct arch_uprobe *auprobe, struct pt_regs *regs) in arch_uprobe_skip_sstep() argument
53 if (!auprobe->simulate) in arch_uprobe_skip_sstep()
56 opcode = __mem_to_opcode_arm(*(unsigned int *) auprobe->insn); in arch_uprobe_skip_sstep()
58 auprobe->asi.insn_singlestep(opcode, &auprobe->asi, regs); in arch_uprobe_skip_sstep()
75 int arch_uprobe_analyze_insn(struct arch_uprobe *auprobe, struct mm_struct *mm, in arch_uprobe_analyze_insn() argument
86 insn = __mem_to_opcode_arm(*(unsigned int *)auprobe->insn); in arch_uprobe_analyze_insn()
[all …]
Duprobes-arm.c69 static void uprobe_set_pc(struct arch_uprobe *auprobe, in uprobe_set_pc() argument
73 u32 pcreg = auprobe->pcreg; in uprobe_set_pc()
79 static void uprobe_unset_pc(struct arch_uprobe *auprobe, in uprobe_unset_pc() argument
84 regs->uregs[auprobe->pcreg] = autask->backup; in uprobe_unset_pc()
87 static void uprobe_aluwrite_pc(struct arch_uprobe *auprobe, in uprobe_aluwrite_pc() argument
91 u32 pcreg = auprobe->pcreg; in uprobe_aluwrite_pc()
97 static void uprobe_write_pc(struct arch_uprobe *auprobe, in uprobe_write_pc() argument
101 u32 pcreg = auprobe->pcreg; in uprobe_write_pc()
111 struct arch_uprobe *auprobe = container_of(asi, struct arch_uprobe, in decode_pc_ro() local
117 reg = uprobes_substitute_pc(&auprobe->ixol[0], regs); in decode_pc_ro()
[all …]
/arch/s390/kernel/
Duprobes.c20 int arch_uprobe_analyze_insn(struct arch_uprobe *auprobe, struct mm_struct *mm, in arch_uprobe_analyze_insn() argument
23 return probe_is_prohibited_opcode(auprobe->insn); in arch_uprobe_analyze_insn()
26 int arch_uprobe_pre_xol(struct arch_uprobe *auprobe, struct pt_regs *regs) in arch_uprobe_pre_xol() argument
33 auprobe->saved_per = psw_bits(regs->psw).r; in arch_uprobe_pre_xol()
34 auprobe->saved_int_code = regs->int_code; in arch_uprobe_pre_xol()
51 int arch_uprobe_post_xol(struct arch_uprobe *auprobe, struct pt_regs *regs) in arch_uprobe_post_xol() argument
53 int fixup = probe_get_fixup_type(auprobe->insn); in arch_uprobe_post_xol()
58 psw_bits(regs->psw).r = auprobe->saved_per; in arch_uprobe_post_xol()
59 regs->int_code = auprobe->saved_int_code; in arch_uprobe_post_xol()
64 int reg = (auprobe->insn[0] & 0xf0) >> 4; in arch_uprobe_post_xol()
[all …]
/arch/powerpc/kernel/
Duprobes.c50 int arch_uprobe_analyze_insn(struct arch_uprobe *auprobe, in arch_uprobe_analyze_insn() argument
64 int arch_uprobe_pre_xol(struct arch_uprobe *auprobe, struct pt_regs *regs) in arch_uprobe_pre_xol() argument
112 int arch_uprobe_post_xol(struct arch_uprobe *auprobe, struct pt_regs *regs) in arch_uprobe_post_xol() argument
167 void arch_uprobe_abort_xol(struct arch_uprobe *auprobe, struct pt_regs *regs) in arch_uprobe_abort_xol() argument
181 bool arch_uprobe_skip_sstep(struct arch_uprobe *auprobe, struct pt_regs *regs) in arch_uprobe_skip_sstep() argument
189 ret = emulate_step(regs, auprobe->insn); in arch_uprobe_skip_sstep()
/arch/arm/include/asm/
Duprobes.h36 void (*prehandler)(struct arch_uprobe *auprobe,
39 void (*posthandler)(struct arch_uprobe *auprobe,