Lines Matching refs:p

27 int __kprobes arch_prepare_kprobe(struct kprobe *p)  in arch_prepare_kprobe()  argument
31 if ((unsigned long)p->addr & 0x01) { in arch_prepare_kprobe()
40 pr_debug("copy kprobe at %p\n", p->addr); in arch_prepare_kprobe()
41 memcpy(p->ainsn.insn, p->addr, MAX_INSN_SIZE * sizeof(kprobe_opcode_t)); in arch_prepare_kprobe()
42 p->opcode = *p->addr; in arch_prepare_kprobe()
48 void __kprobes arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() argument
50 pr_debug("arming kprobe at %p\n", p->addr); in arch_arm_kprobe()
52 *p->addr = BREAKPOINT_INSTRUCTION; in arch_arm_kprobe()
53 flush_icache_range((unsigned long)p->addr, in arch_arm_kprobe()
54 (unsigned long)p->addr + sizeof(kprobe_opcode_t)); in arch_arm_kprobe()
57 void __kprobes arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() argument
59 pr_debug("disarming kprobe at %p\n", p->addr); in arch_disarm_kprobe()
61 *p->addr = p->opcode; in arch_disarm_kprobe()
62 flush_icache_range((unsigned long)p->addr, in arch_disarm_kprobe()
63 (unsigned long)p->addr + sizeof(kprobe_opcode_t)); in arch_disarm_kprobe()
66 static void __kprobes prepare_singlestep(struct kprobe *p, struct pt_regs *regs) in prepare_singlestep() argument
71 p->addr, regs->pc); in prepare_singlestep()
85 *p->addr = p->opcode; in prepare_singlestep()
86 flush_icache_range((unsigned long)p->addr, in prepare_singlestep()
87 (unsigned long)p->addr + sizeof(kprobe_opcode_t)); in prepare_singlestep()
90 static void __kprobes resume_execution(struct kprobe *p, struct pt_regs *regs) in resume_execution() argument
100 *p->addr = BREAKPOINT_INSTRUCTION; in resume_execution()
101 flush_icache_range((unsigned long)p->addr, in resume_execution()
102 (unsigned long)p->addr + sizeof(kprobe_opcode_t)); in resume_execution()
105 static void __kprobes set_current_kprobe(struct kprobe *p) in set_current_kprobe() argument
107 __this_cpu_write(current_kprobe, p); in set_current_kprobe()
112 struct kprobe *p; in kprobe_handler() local
127 p = get_kprobe(addr); in kprobe_handler()
128 if (p) { in kprobe_handler()
137 p = kprobe_running(); in kprobe_handler()
138 if (p->break_handler && p->break_handler(p, regs)) in kprobe_handler()
145 p = get_kprobe(addr); in kprobe_handler()
146 if (!p) in kprobe_handler()
150 set_current_kprobe(p); in kprobe_handler()
151 if (p->pre_handler && p->pre_handler(p, regs)) in kprobe_handler()
156 prepare_singlestep(p, regs); in kprobe_handler()
230 int __kprobes setjmp_pre_handler(struct kprobe *p, struct pt_regs *regs) in setjmp_pre_handler() argument
232 struct jprobe *jp = container_of(p, struct jprobe, kp); in setjmp_pre_handler()
252 int __kprobes longjmp_break_handler(struct kprobe *p, struct pt_regs *regs) in longjmp_break_handler() argument