From nobody Thu Jul 30 02:48:04 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 4h9YXj71Fwz6mPtL for ; Thu, 30 Jul 2026 02:48:05 +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 4h9YXh6f0mz3FFy for ; Thu, 30 Jul 2026 02:48:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1785379684; 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=CHKyqzMi6vxlDGXrIJJKmbINjGx5h9TMgBfV5Pdn9CE=; b=evA9n5v7R7/jFRIF2z+uNanJlQtBrPmWUb2Gi0NvnCnU+/nO7wKn53gCxG2+lkkAm3nhB+ b0Czujju+vYJB4XhbtzJKO0cA6JbEumHEcryiKJVjHHorsqRNg8U3TqclAK1THVqjnNkNv nuRfkwH7aRv9Q4TSCrT8BPwG0Zj/ds80akva3Y3kPjt8dlIwzr+X54ywmv3hoRPFgeDpFJ V6xn8Jhbe3Zv/EeEcPe1I/WkrR0HY9ZI7Q30tqy39dnTWQl8utSiAxBzZcadQgzxoEF/E5 hdJg3rabukOG15GOpIS1lGHUGXsfabclLTe7rdgMGpZosWfXgtbNKswZPtbAyA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1785379684; a=rsa-sha256; cv=none; b=bqfQvRbSeClmHHi1Ls1EhSVXtBwdxM8KfQJFO9dGdiVdaYbkCvhPhEWLip/JwpYYm8VzaX s3592cWje+rgiV75xPrInQvhwujPD2Wyvv5A/TKrLWfVQg/NDuRAt0AdDTIcF6v0bE8OnX HFfC3GlLUwzSxnDV8OF0MT4a6MTnoJWBA55fUu4JB0KuRsYT8IQ4y6hJJQkKbAG3BRGCKb nEZ4/KjPQi5gL41SYkcKGI7N3L1nooguDKRnwBt25nK78b/UXIjq2RC199BCZbrJwAMnht ieDFk9n9B396fThjoqDOlkzUAyVOYMgompy9CCfGXTIY8eXZ6wOyFgFAe6lNpA== 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=1785379684; 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=CHKyqzMi6vxlDGXrIJJKmbINjGx5h9TMgBfV5Pdn9CE=; b=k9mBgiLSv8AKA1pn0zDbBeWOOI1iWhybKp0pC2oRUyhar4YcCj9uIr2J/lPT6Nt+5nVadv 8QOPVcswXOM3UCGvjgIPyIsTNWnt8PmG/w2VDDP4bpy5a1q1pJYBIqw1GJ/t+prTB2b2/9 z2rdLTgl7wYRRHG9/422YFD8yIAroJ9BP8EP2CaENTfHshQjFs43RwGajReEfLcwIv+L7N GW5qf5PfdETy6Awf4LjbEVR9mj9OLOXi6L344zu0HfsRiV5y0ui6gZ+ruwBpSrYxOk6RVD ySn/K7/SHp3IXSxVlQPFvNahGR2iO3G+XMJZYKeEtMHa58SeEtE5ogi3moQZ/w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h9YXh5cqRztjb for ; Thu, 30 Jul 2026 02:48:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 1cdb3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 30 Jul 2026 02:48:04 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kevin Bowling Subject: git: bcb62ec0e3d5 - main - igb: Guard register dump during queue setup 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: bcb62ec0e3d592892f0f304269ed2722d1bae75a Auto-Submitted: auto-generated Date: Thu, 30 Jul 2026 02:48:04 +0000 Message-Id: <6a6abb64.1cdb3.7ee494c8@gitrepo.freebsd.org> The branch main has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=bcb62ec0e3d592892f0f304269ed2722d1bae75a commit bcb62ec0e3d592892f0f304269ed2722d1bae75a Author: Kevin Bowling AuthorDate: 2026-07-30 02:26:48 +0000 Commit: Kevin Bowling CommitDate: 2026-07-30 02:47:33 +0000 igb: Guard register dump during queue setup The register-dump sysctl is installed before iflib allocates the queue arrays and remains visible while they are freed. Return ENXIO outside the queue lifetime instead of dereferencing a NULL or stale array. Sponsored by: BBOX.io --- sys/dev/e1000/if_em.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index eaaa7c5fd2f0..42e7113bff48 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -845,6 +845,13 @@ static int em_get_regs(SYSCTL_HANDLER_ARGS) int rc; uint32_t rxqid, txqid; + /* + * This sysctl is registered before iflib allocates the queue arrays, + * and remains registered while iflib tears them down. + */ + if (sc->rx_queues == NULL || sc->tx_queues == NULL) + return (ENXIO); + regs_buff = malloc(sizeof(u32) * IGB_REGS_LEN, M_DEVBUF, M_WAITOK); memset(regs_buff, 0, IGB_REGS_LEN * sizeof(u32)); rxqid = sc->rx_queues[0].rxr.me;