git: 63171222540e - main - cxgbe(4): adjustments to the output of the slow interrupt handler

From: Navdeep Parhar <np_at_FreeBSD.org>
Date: Wed, 18 Mar 2026 23:43:47 UTC
The branch main has been updated by np:

URL: https://cgit.FreeBSD.org/src/commit/?id=63171222540e10a58f3acacf65a412f44043f511

commit 63171222540e10a58f3acacf65a412f44043f511
Author:     Navdeep Parhar <np@FreeBSD.org>
AuthorDate: 2026-03-18 21:56:37 +0000
Commit:     Navdeep Parhar <np@FreeBSD.org>
CommitDate: 2026-03-18 21:56:37 +0000

    cxgbe(4): adjustments to the output of the slow interrupt handler
    
    - Display an appropriate alert character instead of a question mark for
      unknown bits.
    - Display all fatal bits for a register and not just the ones that are
      currently set.
    
    MFC after:      1 week
    Sponsored by:   Chelsio Communications
---
 sys/dev/cxgbe/common/t4_hw.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/sys/dev/cxgbe/common/t4_hw.c b/sys/dev/cxgbe/common/t4_hw.c
index 494f83a47135..24ac018cc49c 100644
--- a/sys/dev/cxgbe/common/t4_hw.c
+++ b/sys/dev/cxgbe/common/t4_hw.c
@@ -4797,7 +4797,6 @@ struct intr_info {
 static inline char
 intr_alert_char(u32 cause, u32 enable, u32 fatal)
 {
-
 	if (cause & fatal)
 		return ('!');
 	if (cause & enable)
@@ -4817,7 +4816,7 @@ show_intr_info(struct adapter *sc, const struct intr_info *ii, uint32_t cause,
 	if (verbose || ucause != 0 || flags & IHF_RUN_ALL_ACTIONS) {
 		alert = intr_alert_char(cause, enabled, fatal);
 		CH_ALERT(sc, "%c %s 0x%x = 0x%08x, E 0x%08x, F 0x%08x\n", alert,
-		    ii->name, ii->cause_reg, cause, enabled, fatal);
+		    ii->name, ii->cause_reg, cause, enabled, ii->fatal);
 	}
 
 	leftover = verbose ? cause : ucause;
@@ -4829,8 +4828,10 @@ show_intr_info(struct adapter *sc, const struct intr_info *ii, uint32_t cause,
 		CH_ALERT(sc, "  %c [0x%08x] %s\n", alert, msgbits, details->msg);
 		leftover &= ~msgbits;
 	}
-	if (leftover != 0 && leftover != (verbose ? cause : ucause))
-		CH_ALERT(sc, "  ? [0x%08x]\n", leftover);
+	if (leftover != 0 && leftover != (verbose ? cause : ucause)) {
+		alert = intr_alert_char(leftover, enabled, fatal);
+		CH_ALERT(sc, "  %c [0x%08x]\n", alert, leftover);
+	}
 }
 
 /*