Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 22d8b3de authored by Naveen N. Rao's avatar Naveen N. Rao Committed by Michael Ellerman
Browse files

powerpc/kprobes: Emulate instructions on kprobe handler re-entry



On kprobe handler re-entry, try to emulate the instruction rather than single
stepping always.

Acked-by: default avatarAnanth N Mavinakayanahalli <ananth@linux.vnet.ibm.com>
Signed-off-by: default avatarNaveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
parent 1cabd2f8
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -277,6 +277,14 @@ int __kprobes kprobe_handler(struct pt_regs *regs)
			kprobes_inc_nmissed_count(p);
			prepare_singlestep(p, regs);
			kcb->kprobe_status = KPROBE_REENTER;
			if (p->ainsn.boostable >= 0) {
				ret = try_to_emulate(p, regs);

				if (ret > 0) {
					restore_previous_kprobe(kcb);
					return 1;
				}
			}
			return 1;
		} else {
			if (*addr != BREAKPOINT_INSTRUCTION) {