diff --git a/sys/arm64/arm64/trap.c b/sys/arm64/arm64/trap.c index 64a27b138a9..fdcb7e708da 100644 --- a/sys/arm64/arm64/trap.c +++ b/sys/arm64/arm64/trap.c @@ -538,11 +538,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);