[Bug 166724] if_re(4): watchdog timeout

[email protected] Sun, 19 Jul 2026 18:51:44 +0000
Newsgroups gmane.os.freebsd.devel.net
Message-ID <[email protected]/bugzilla/>
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D166724

--- Comment #142 from [email protected] ---
A commit in branch main references this bug:

URL:
https://cgit.FreeBSD.org/src/commit/?id=3D42f3088bd980a469dbbc3e6b568edb7ce=
0ab2bc3

commit 42f3088bd980a469dbbc3e6b568edb7ce0ab2bc3
Author:     J=C3=A9r=C3=A9mie Jourdin <[email protected]>
AuthorDate: 2026-07-19 18:47:17 +0000
Commit:     Adrian Chadd <[email protected]>
CommitDate: 2026-07-19 18:47:21 +0000

    re(4): harden re_watchdog() recovery and log controller state

    Distinguish the two failure classes from the PR in a single log line
    (ring indices, ISR/IMR, TXCFG, interrupt mode): lost interrupt vs
    genuine DMA stall.

    Bail out instead of re-initializing when the controller reads back
    all-ones (fallen off the bus; reinit cannot help).

    Re-assert the driver's existing ASPM-disabled policy before reinit,
    since firmware/power transitions re-arming L0s/L1 is a documented
    stall trigger.

    Diagnostics-only on the recovered path; no fast-path change.

    * Field diagnostics running on an RTL8168H production fleet; the log
      format distinguishes lost-doorbell / DMA-stall / dead-controller
      without a debug build.

    Reviewed by:    adrian
    Differential Revision:  https://reviews.freebsd.org/D58279
    PR: kern/166724

 sys/dev/re/if_re.c | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++=
+---
 1 file changed, 58 insertions(+), 3 deletions(-)

--=20
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.=