arm64: Clean up usage of the dtrace invop handler

- Don't consume the breakpoint if all invop handlers returned a non-zero
  value.
- Fix style nits.

MFC after:	2 weeks
Sponsored by:	Innovate UK
This commit is contained in:
Mark Johnston
2025-01-25 16:17:03 +00:00
parent 096a5c6cd2
commit 853cd87234
+3 -4
View File
@@ -548,11 +548,10 @@ do_el1h_sync(struct thread *td, struct trapframe *frame)
break;
case EXCP_BRK:
#ifdef KDTRACE_HOOKS
if ((esr & ESR_ELx_ISS_MASK) == 0x40d && \
dtrace_invop_jump_addr != 0) {
dtrace_invop_jump_addr(frame);
if ((esr & ESR_ELx_ISS_MASK) == 0x40d /* BRK_IMM16_VAL */ &&
dtrace_invop_jump_addr != NULL &&
dtrace_invop_jump_addr(frame) == 0)
break;
}
#endif
#ifdef KDB
kdb_trap(exception, 0, frame);