From nobody Wed Jun 21 15:48:43 2023 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QmSbH4Tr8z4gCml; Wed, 21 Jun 2023 15:48:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QmSbH3ywfz43pD; Wed, 21 Jun 2023 15:48:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687362523; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PawlSA0cqpEq3CqCVUk8akzN5RtxLiAihI+5n0RDyUw=; b=vnwVSooJtAwOX9L28D2SZzo2za+BqYHnBY5x1+NuKBpiKCuql6QucaptJ3nAVSXCHu64aY 1HQ6hmwGKhdF+8W3BLBzp4sDPLfxdJ5kcGbjN+YqFqqRd79VvwkosoFKMHfUkCMuT12Une KhoeQt7l0RaEPGotAW/5mvdsR82Ly9gEALGMQ1INCUrepWL2c3ZlfprmmDQt0C3W6h8sd0 yyuJyBymBN20DgWo9QNvOgMKLrE3S5fggyQwPEv1G5tl4RWDvwpiIx9xssP2jJSX5ljRep TBWR++XlDFO5hmDIwPJEZiMCLk+2o0RCh5fESq71fb/lk34ckaa9CKtz/VEHUg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1687362523; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PawlSA0cqpEq3CqCVUk8akzN5RtxLiAihI+5n0RDyUw=; b=Qbk3EcG3QWc0Y3ZUc0BlOxdEA50SzoA9lzcCNuvAflXWs5+oyJvUSscQM0OsG77y7vDxdq ZrDewvIKRjA4Hm7JNPz+Ygj3CYaapcMqwqZO9MbTO4Tt5Q9NWOUU8ZJ8XG5qdAUVmycvrY 8lUuB5wkrjT4FbD3EoUbfaedEmGhnFLzaTCyupdhOtWcCkN2awF/EktU6anPRZzs+JAw1l 8Z61gGBIAgP4OJ34b0sLGK7vUMoKBtAKbsWcomp/diBrVk0KCgQuSfBo4VwK6IGXeN9Q9j /IIl93C1tkhjmXAGtcac5EIdA3r7tch3nM/h7hcg+iHeU53RNCuXGEQUS9Y2tA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1687362523; a=rsa-sha256; cv=none; b=r+fS1znIHikQ3KUqEYmqFCCdYfWrDLbbQy0p9PnRErZ0ksNA357ZvA0q/yCMk1zduq20fi 534vX4yJzmaZU1G1Vld3UyrmmGzXRPCuS9v5i6+jd/O9xM6Jl9CJBGpeVDFSL+a2KcEh29 5AfrkplbKHZKS15jfvX8PEBswf4yfgEtUwfSgG1p8iJIXL/X33nUeWj+MFXyHoXxLYhY1f uvUAA/qYC5bAOJJv6A/btdVR8s+lnJk8gAKbd1xeQF0iODSyTorfU+tL2etaKLI+q85SNh DVRE+xHOjXs91GSWrifUJfXbqz468dbn1JsrueWUmMEhJ/Bm3JACHqe/AnAzZw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4QmSbH2vCXzmxw; Wed, 21 Jun 2023 15:48:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 35LFmhPR056095; Wed, 21 Jun 2023 15:48:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 35LFmhQU056094; Wed, 21 Jun 2023 15:48:43 GMT (envelope-from git) Date: Wed, 21 Jun 2023 15:48:43 GMT Message-Id: <202306211548.35LFmhQU056094@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Christos Margiolis Subject: git: e5c7aa5c703e - main - arm64: print '0x' before hex values List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-main@freebsd.org X-BeenThere: dev-commits-src-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e5c7aa5c703e268a80331be3a587449995563770 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=e5c7aa5c703e268a80331be3a587449995563770 commit e5c7aa5c703e268a80331be3a587449995563770 Author: Christos Margiolis AuthorDate: 2023-06-21 15:47:06 +0000 Commit: Christos Margiolis CommitDate: 2023-06-21 15:47:06 +0000 arm64: print '0x' before hex values Not making it explicit that we're printing values in hex can be misleading when the number doesn't contain hex-only symbols (a-f). A good example of this is print_gp_register(), where we print "(func + offset)"; if the offset doesn't contain a-f symbols, it's not immediately clear if that value is in decimal or hex. Using '%#' instead of '0x%' also isn't a better option, it doesn't print '0x' if the value is 0, and it also messes up column alignment. Reviewed by: imp, markj Approved by: markj (mentor) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D40583 --- sys/arm64/arm64/trap.c | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/sys/arm64/arm64/trap.c b/sys/arm64/arm64/trap.c index 9b1b73aeb55d..7b5c7bc61fd3 100644 --- a/sys/arm64/arm64/trap.c +++ b/sys/arm64/arm64/trap.c @@ -213,7 +213,7 @@ align_abort(struct thread *td, struct trapframe *frame, uint64_t esr, if (!lower) { print_registers(frame); print_gp_register("far", far); - printf(" esr: %16lx\n", esr); + printf(" esr: 0x%.16lx\n", esr); panic("Misaligned access from kernel space!"); } @@ -328,7 +328,7 @@ data_abort(struct thread *td, struct trapframe *frame, uint64_t esr, if (td->td_md.md_spinlock_count != 0) { print_registers(frame); print_gp_register("far", far); - printf(" esr: %.16lx\n", esr); + printf(" esr: 0x%.16lx\n", esr); panic("data abort with spinlock held (spinlock count %d != 0)", td->td_md.md_spinlock_count); } @@ -337,7 +337,7 @@ data_abort(struct thread *td, struct trapframe *frame, uint64_t esr, WARN_GIANTOK, NULL, "Kernel page fault") != 0) { print_registers(frame); print_gp_register("far", far); - printf(" esr: %16lx\n", esr); + printf(" esr: 0x%.16lx\n", esr); panic("data abort in critical section or under mutex"); } @@ -378,7 +378,7 @@ bad_far: printf("Fatal data abort:\n"); print_registers(frame); print_gp_register("far", far); - printf(" esr: %16lx\n", esr); + printf(" esr: 0x%.16lx\n", esr); #ifdef KDB if (debugger_on_trap) { @@ -390,7 +390,7 @@ bad_far: return; } #endif - panic("vm_fault failed: %lx error %d", + panic("vm_fault failed: 0x%lx error %d", frame->tf_elr, error); } } @@ -409,14 +409,14 @@ print_gp_register(const char *name, uint64_t value) db_expr_t offset; #endif - printf(" %s: %16lx", name, value); + printf(" %s: 0x%.16lx", name, value); #if defined(DDB) /* If this looks like a kernel address try to find the symbol */ if (value >= VM_MIN_KERNEL_ADDRESS) { sym = db_search_symbol(value, DB_STGY_ANY, &offset); if (sym != C_DB_SYM_NULL) { db_symbol_values(sym, &sym_name, &sym_value); - printf(" (%s + %lx)", sym_name, offset); + printf(" (%s + 0x%lx)", sym_name, offset); } } #endif @@ -434,10 +434,10 @@ print_registers(struct trapframe *frame) reg); print_gp_register(name, frame->tf_x[reg]); } - printf(" sp: %16lx\n", frame->tf_sp); + printf(" sp: 0x%.16lx\n", frame->tf_sp); print_gp_register(" lr", frame->tf_lr); print_gp_register("elr", frame->tf_elr); - printf("spsr: %16lx\n", frame->tf_spsr); + printf("spsr: 0x%.16lx\n", frame->tf_spsr); } #ifdef VFP @@ -485,8 +485,8 @@ do_el1h_sync(struct thread *td, struct trapframe *frame) #endif CTR4(KTR_TRAP, - "do_el1_sync: curthread: %p, esr %lx, elr: %lx, frame: %p", td, - esr, frame->tf_elr, frame); + "do_el1_sync: curthread: %p, esr 0x%lx, elr: 0x%lx, frame: %p", + td, esr, frame->tf_elr, frame); /* * Enable debug exceptions if we aren't already handling one. They will @@ -506,7 +506,7 @@ do_el1h_sync(struct thread *td, struct trapframe *frame) #endif { print_registers(frame); - printf(" esr: %16lx\n", esr); + printf(" esr: 0x%.16lx\n", esr); panic("VFP exception in the kernel"); } break; @@ -519,8 +519,8 @@ do_el1h_sync(struct thread *td, struct trapframe *frame) } else { print_registers(frame); print_gp_register("far", far); - printf(" esr: %16lx\n", esr); - panic("Unhandled EL1 %s abort: %x", + printf(" esr: 0x%.16lx\n", esr); + panic("Unhandled EL1 %s abort: 0x%x", exception == EXCP_INSN_ABORT ? "instruction" : "data", dfsc); } @@ -564,7 +564,7 @@ do_el1h_sync(struct thread *td, struct trapframe *frame) default: print_registers(frame); print_gp_register("far", far); - panic("Unknown kernel exception %x esr_el1 %lx", exception, + panic("Unknown kernel exception 0x%x esr_el1 0x%lx", exception, esr); } } @@ -579,7 +579,7 @@ do_el0_sync(struct thread *td, struct trapframe *frame) /* Check we have a sane environment when entering from userland */ KASSERT((uintptr_t)get_pcpu() >= VM_MIN_KERNEL_ADDRESS, - ("Invalid pcpu address from userland: %p (tpidr %lx)", + ("Invalid pcpu address from userland: %p (tpidr 0x%lx)", get_pcpu(), READ_SPECIALREG(tpidr_el1))); kasan_mark(frame, sizeof(*frame), sizeof(*frame), 0); @@ -599,8 +599,8 @@ do_el0_sync(struct thread *td, struct trapframe *frame) intr_enable(); CTR4(KTR_TRAP, - "do_el0_sync: curthread: %p, esr %lx, elr: %lx, frame: %p", td, esr, - frame->tf_elr, frame); + "do_el0_sync: curthread: %p, esr 0x%lx, elr: 0x%lx, frame: %p", + td, esr, frame->tf_elr, frame); switch (exception) { case EXCP_FP_SIMD: @@ -637,8 +637,8 @@ do_el0_sync(struct thread *td, struct trapframe *frame) else { print_registers(frame); print_gp_register("far", far); - printf(" esr: %16lx\n", esr); - panic("Unhandled EL0 %s abort: %x", + printf(" esr: 0x%.16lx\n", esr); + panic("Unhandled EL0 %s abort: 0x%x", exception == EXCP_INSN_ABORT_L ? "instruction" : "data", dfsc); } @@ -730,7 +730,7 @@ do_serror(struct trapframe *frame) print_registers(frame); print_gp_register("far", far); - printf(" esr: %16lx\n", esr); + printf(" esr: 0x%.16lx\n", esr); panic("Unhandled System Error"); } @@ -745,6 +745,6 @@ unhandled_exception(struct trapframe *frame) print_registers(frame); print_gp_register("far", far); - printf(" esr: %16lx\n", esr); + printf(" esr: 0x%.16lx\n", esr); panic("Unhandled exception"); }