From nobody Wed Aug 12 03:02:26 2026 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 4hKYFH05Ntz6m9K2 for ; Wed, 12 Aug 2026 03:02:27 +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 "YR1" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4hKYFG6VV4z3hN6 for ; Wed, 12 Aug 2026 03:02:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1786503746; 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=1B4dfVuENhGG7TI6y8i1B1h4j0gCfW5sEFKJiE1FWvQ=; b=JYKPqIIMGn7vGSaO8dkXjkOqvsl7iaCLSBWYpBXB2x9+2xo6QaufR7UhiyTbU0D1/84o1M xsBIneMULc+CYck01vbKYVveVV4ZXuIac9KGaouk5f3v8wBFdGyJF0c7IliaNMX/YY6/Vy MjWMxXSpQ/Fz7hnTqh1AnjaDh9kyyDqMx6C7wIak82Ls5JwnMDyvUEa0ERjD4X4VveaXYU elyzMiSJUu/YcknAt690/0aWLnhbDw6Q4KKVLRWeBrFgpFKW/Gkx+5B5cV5d/mONgIWaQf 9n+uyeFLHy1y0rV2AeVvaJ00WBfUjb3Z2V0DwG94ZlNdT1MdXEzMswIAsmbLaQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1786503746; a=rsa-sha256; cv=none; b=qICJDipqDrlh9OOeqRqlq7S6cDW3Hr9orpCGVfJPhkeY85xvFn1n/e7zVg9D8EPqhv1XPV 7skkTGxoNyKdPqa6jUnRfL/Gg1cYJlQiWnw85Rx3ajzI9uR8dBJRFwKlkpr+mdEsYXtxFU 22qeKtVVnDZYU7z0KhNSmdv2lhSRke/1KqSUvnBDK5oVZwXb0ZApU1zWcEfUDVxWW5LW3i S60ojP9pDRFDLM0lGbSlTaRxkH0WIRA9buQO70F78ir0370i1vzSl+slhtKY+F053qv42V hP4YE3/XEaC71Sj74hJH4GyA+ihC+K5LTpSiEZQCpld4ZoqgxAIr4s83fF8CSg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1786503746; 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=1B4dfVuENhGG7TI6y8i1B1h4j0gCfW5sEFKJiE1FWvQ=; b=P+/FRmxcwlMHDIy8+FmqIdNDyXKl/DK1Oe02CgzRaOSlh6g9pRnhlFiazFW4VmNfIFXC0E Kc2bv7Ap1sJgl5/J5I7hbBOAml69sdRhfqL1vji/ch/w+HtHQf9EpGlRjC3WbY55z8TWz4 ansI5Y5VLmp7sc92lMQ+84ITSzeMwEulVU1hnXP4ICMs1YY1TjjHlAjIObDq9IhkRosMFw wvYb2ZOKnDYpTDvaFxMFIDOyI7mKJWJallb7cGRV/ItHQ5Mu+I5Gedp4oyTqxnc3JMTe6c HImJYqgoFHi6TIsZhJ7ex5OB41U6qDu8MHp05Gl7as9DPwOBmpT2gLWY/Df7wg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4hKYFG5FPHz1M4T for ; Wed, 12 Aug 2026 03:02:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 34af3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 12 Aug 2026 03:02:26 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kevin Bowling Subject: git: 7dd826171b69 - main - e1000: Fix the multiqueue debug register dump 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: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7dd826171b69a01c234ba6e9117917398ba2705e Auto-Submitted: auto-generated Date: Wed, 12 Aug 2026 03:02:26 +0000 Message-Id: <6a7be242.34af3.2718e490@gitrepo.freebsd.org> The branch main has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=7dd826171b69a01c234ba6e9117917398ba2705e commit 7dd826171b69a01c234ba6e9117917398ba2705e Author: Kevin Bowling AuthorDate: 2026-08-12 00:33:18 +0000 Commit: Kevin Bowling CommitDate: 2026-08-12 02:59:21 +0000 e1000: Fix the multiqueue debug register dump The debug routine advanced ring pointers as if rings were contiguous. They are embedded in queue structures, so rings beyond queue zero had the wrong stride. The bogus queue index could cause an invalid MMIO read and panic the machine. Index the queue arrays first and then select the embedded ring. MFC after: 2 weeks --- sys/dev/e1000/if_em.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index 66a298ecf21c..691531601b8a 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -6749,9 +6749,6 @@ em_print_debug_info(struct e1000_softc *sc) device_printf(dev, "queue state is unavailable\n"); return; } - txr = &sc->tx_queues->txr; - rxr = &sc->rx_queues->rxr; - if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) printf("Interface is RUNNING "); else @@ -6762,14 +6759,16 @@ em_print_debug_info(struct e1000_softc *sc) else printf("and ACTIVE\n"); - for (int i = 0; i < sc->tx_num_queues; i++, txr++) { + for (int i = 0; i < sc->tx_num_queues; i++) { + txr = &sc->tx_queues[i].txr; device_printf(dev, "TX Queue %d ------\n", i); device_printf(dev, "hw tdh = %d, hw tdt = %d\n", E1000_READ_REG(&sc->hw, E1000_TDH(txr->me)), E1000_READ_REG(&sc->hw, E1000_TDT(txr->me))); } - for (int j=0; j < sc->rx_num_queues; j++, rxr++) { + for (int j = 0; j < sc->rx_num_queues; j++) { + rxr = &sc->rx_queues[j].rxr; device_printf(dev, "RX Queue %d ------\n", j); device_printf(dev, "hw rdh = %d, hw rdt = %d\n", E1000_READ_REG(&sc->hw, E1000_RDH(rxr->me)),