From nobody Thu Oct 29 06:37:20 2026 X-Original-To: dev-commits-src-branches@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 4jFZKF0n0Qz6xtqN for ; Thu, 29 Oct 2026 06:37:21 +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) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4jFZKD6Lclz3D1j for ; Thu, 29 Oct 2026 06:37:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1793255840; 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=0PkeRJYu+S1eqvN0HL4oEsJ94fTFQ0bWKBKkgt9fiMc=; b=IH5JVrEQ4OPsL4hb0yenEiVk2H1bfahMhDB+guDe799VURZrIq/qoGQNiZKuhZ4Spr8RWp 02xH+mir7A66a3heieW0DhOH2LDh2wad5kSOXnqEjVf4cU21EVEa7mPu9diL8MCBp0LCzO mVBH6kqHHCRTHQATvltoegSbJknpF6axiwVqW43jeNs0CGNvIhy+pnSyNOq7gxP0/Ziwwc tlzaWArOdGskCB8Bp8GUy3JV5xhsnKN+w6pRbRXuglu5AOwpGRGz8yap5hMqiJsyqm7LO3 GXFWusqsYMNSBo7ut2Yr6QTdmixGUZWvmeSunWd9W+skZaTmuqzCZlwQDL+pjA== ARC-Seal: i=1; a=rsa-sha256; d=freebsd.org; s=dkim; cv=none; t=1793255840; b=InOesMQ8Y50qN7mQiIwngGyM0Yst8OOU2EFr8WqlV1JLBT1s3DORqN6KFH6JeOB8OqQiK9 vtlw6NW4Vf6+OrgrF6y4N+clwcRIEhCoe9tj21xgOR3sbsYSsqcdaAvmq7HLOQ3ThX2QZr btaSYUEoMqpTpqfUsu1gRH2fBZUXpnFH6hnBVuQ4e1YDT9RRTGZrxvIN5v341tCtB/n7AV mo4ij+SStrrhZuPHTHkiyVO1H3BtMwMn912BoDI185ndFuRYGWCVClphJZzXocMddMX2cc rVtfsbHMM4a5+R+cSt6VQ9lrLMh1eBhKpuz6jOoTlwrpIetchlcNFc0IXwlsMg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1793255840; 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=0PkeRJYu+S1eqvN0HL4oEsJ94fTFQ0bWKBKkgt9fiMc=; b=CSvdS+hVrt+zEIYoXRRTg3TgkRk4srckEQxvJcQusqBbtM1guDyyPT9yOhvL/YHAgyMfpJ sl6VaIW5kePLth498f0P40VeOZWCipcPfLZMvKCbVPLfwji3dX0WC4nYxa9bT9BPG46YSr DnA6KS4wyHEo1yREFCFocW3U8YGcFAemf1ddrbEFH9/pO4+BGGuIHI1MU5czCvG8mDcx+Z HN8tFUlLrOwKxYfk0zp+RIOcmbv4EPoGKRIfZvRoHc/tn4znUv9iEO+Gp2f9AyQ4/7mdfT 5crkT64CrbYILzpRMtJekQ1MgMnKnF+MLlKKLCD1w5HbcC8QV/zYUWcxUFUTpQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4jFZKD61CQzRkm for ; Thu, 29 Oct 2026 06:37:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3b5ee by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 29 Oct 2026 06:37:20 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 12b44201e47f - stable/15 - ixgbe: Defer flow control programming while admission is closed List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org List-Id: Commits to the stable branches of the FreeBSD src repository 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/stable/15 X-Git-Reftype: branch X-Git-Commit: 12b44201e47f1f5d02840d07ada3eec5d631612b Auto-Submitted: auto-generated Date: Thu, 29 Oct 2026 06:37:20 +0000 Message-Id: <6ae2e9a0.3b5ee.349aa3a@gitrepo.freebsd.org> The branch stable/15 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=12b44201e47f1f5d02840d07ada3eec5d631612b commit 12b44201e47f1f5d02840d07ada3eec5d631612b Author: Kevin Bowling AuthorDate: 2026-09-11 21:42:24 +0000 Commit: Kevin Bowling CommitDate: 2026-10-29 06:37:12 +0000 ixgbe: Defer flow control programming while admission is closed Cache a validated flow control setting without touching hardware when iflib has closed admission. The queues may still be live pending a watchdog stop, or the device may already be stopped or suspended. RX initialization and link setup replay the cached flow control policy. For live updates, decide once under the context lock whether to touch hardware, then mask MDD around SRRCTL writes regardless of a concurrent watchdog closing admission. The context lock excludes actual stop and reinitialization while these writes are in progress. Sponsored by: BBOX.io (cherry picked from commit 5abfd8fe4d1adb74863231f27a9958cf176e3ded) --- sys/dev/ixgbe/if_ix.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c index 1b1c719a30e5..57c9a3e35300 100644 --- a/sys/dev/ixgbe/if_ix.c +++ b/sys/dev/ixgbe/if_ix.c @@ -5665,10 +5665,16 @@ ixgbe_set_flowcntl(struct ixgbe_softc *sc, int fc) return (EINVAL); } + sc->hw.fc.requested_mode = fc; + /* Don't autoneg if forcing a value. */ + sc->hw.fc.disable_fc_autoneg = true; + /* Init replays the policy; closed admission does not prove DMA stopped. */ + if (!iflib_is_running(sc->ctx)) + return (0); + /* Updating SRRCTL on a live queue is itself an MDD violation. */ mdd_active = sc->num_rx_queues > 1 && - (sc->feat_en & IXGBE_FEATURE_SRIOV) != 0 && - iflib_is_running(sc->ctx); + (sc->feat_en & IXGBE_FEATURE_SRIOV) != 0; if (mdd_active) ixgbe_disable_mdd(&sc->hw); if (sc->num_rx_queues > 1) { @@ -5687,10 +5693,6 @@ ixgbe_set_flowcntl(struct ixgbe_softc *sc, int fc) } } - sc->hw.fc.requested_mode = fc; - - /* Don't autoneg if forcing a value */ - sc->hw.fc.disable_fc_autoneg = true; ixgbe_fc_enable(&sc->hw); return (0);