Date: Fri, 20 Jun 2025 02:42:53 GMT From: Olivier Certner <olce@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: 3e5aeb20645f - main - runq: Fix printing status word bits Message-ID: <202506200242.55K2gr8d093626@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=3e5aeb20645fa0a67ce50d96c5136de14067a944 commit 3e5aeb20645fa0a67ce50d96c5136de14067a944 Author: Olivier Certner <olce@FreeBSD.org> AuthorDate: 2025-06-20 02:26:28 +0000 Commit: Olivier Certner <olce@FreeBSD.org> CommitDate: 2025-06-20 02:42:11 +0000 runq: Fix printing status word bits 'rqsw_t' is 'unsigned long', strictly longer than integers on 64-bit platforms. While here, factor out the print format for a status word. Fixes: d2ac231616f0 ("Make the run queue parameters machine dependent...") MFC after: 1 month Event: Kitchener-Waterloo Hackathon 202506 Sponsored by: The FreeBSD Foundation --- sys/kern/kern_switch.c | 11 ++++++++--- sys/sys/runq.h | 1 + 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/sys/kern/kern_switch.c b/sys/kern/kern_switch.c index bd0d987594ea..917f73682564 100644 --- a/sys/kern/kern_switch.c +++ b/sys/kern/kern_switch.c @@ -326,7 +326,9 @@ runq_sw_set_not_empty_op(int idx, int sw_idx, rqsw_t sw_bit, rqsw_t *swp) rqsw_t old_sw __unused = *swp; *swp |= sw_bit; - CTR4(KTR_RUNQ, "runq_sw_set_not_empty: idx=%d sw_idx=%d bits=%#x->%#x", + CTR4(KTR_RUNQ, + "runq_sw_set_not_empty: idx=%d sw_idx=%d " + "bits=" RQSW_PRI "->" RQSW_PRI, idx, sw_idx, old_sw, *swp); return (0); } @@ -349,7 +351,9 @@ runq_sw_set_empty_op(int idx, int sw_idx, rqsw_t sw_bit, rqsw_t *swp) rqsw_t old_sw __unused = *swp; *swp &= ~sw_bit; - CTR4(KTR_RUNQ, "runq_sw_set_empty: idx=%d sw_idx=%d bits=%#x->%#x", + CTR4(KTR_RUNQ, + "runq_sw_set_empty: idx=%d sw_idx=%d " + "bits=" RQSW_PRI "->" RQSW_PRI, idx, sw_idx, old_sw, *swp); return (0); } @@ -525,7 +529,8 @@ last_mask: goto return_idx; return (-1); return_idx: - CTR4(KTR_RUNQ, "runq_findq: bits=%#x->%#x i=%d idx=%d", + CTR4(KTR_RUNQ, + "runq_findq: bits=" RQSW_PRI "->" RQSW_PRI " i=%d idx=%d", (*rqsw)[i], w, i, idx); return (idx); } diff --git a/sys/sys/runq.h b/sys/sys/runq.h index fb9b9908fe57..997c131b24b1 100644 --- a/sys/sys/runq.h +++ b/sys/sys/runq.h @@ -60,6 +60,7 @@ struct thread; typedef unsigned long rqsw_t; /* runq's status words type. */ #define RQSW_BPW (sizeof(rqsw_t) * NBBY) /* Bits per runq word. */ +#define RQSW_PRI "%#lx" /* printf() directive. */ /* Number of status words to cover RQ_NQS queues. */ #define RQSW_NB (howmany(RQ_NQS, RQSW_BPW))
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202506200242.55K2gr8d093626>