Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 25 Jan 2025 17:34:09 GMT
From:      Mark Johnston <markj@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: 853cd8723494 - main - arm64: Clean up usage of the dtrace invop handler
Message-ID:  <202501251734.50PHY9No044713@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by markj:

URL: https://cgit.FreeBSD.org/src/commit/?id=853cd8723494ccc2e972aaa09e7d04ede1508c95

commit 853cd8723494ccc2e972aaa09e7d04ede1508c95
Author:     Mark Johnston <markj@FreeBSD.org>
AuthorDate: 2025-01-25 16:17:03 +0000
Commit:     Mark Johnston <markj@FreeBSD.org>
CommitDate: 2025-01-25 16:17:03 +0000

    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
---
 sys/arm64/arm64/trap.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/sys/arm64/arm64/trap.c b/sys/arm64/arm64/trap.c
index 544189964ef0..d612905b77c8 100644
--- a/sys/arm64/arm64/trap.c
+++ b/sys/arm64/arm64/trap.c
@@ -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);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202501251734.50PHY9No044713>