From nobody Sat Aug 22 00:47:07 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 4hRdmW3fs7z6pr29 for ; Sat, 22 Aug 2026 00:47:07 +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 "YR2" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4hRdmW34pwz3LQK for ; Sat, 22 Aug 2026 00:47:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1787359627; 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=RH0p1sG83GQ5S6dchoEx59+trN6BpjrvjGd1YQg6czQ=; b=b3odnm/Jkhv5JaMONFJEOImBeeuim+StkOeHMxDd0mBS5pMMaQ1QVTBRlQC8FzM0aUiW3V izAQUx9+W1GSYNxLJkpNVfLHF7LjcwGgmwzbG/qqTak9ztZOsXW3wM8tEvlk+eOE6GC/JL FZep/nkp31cI9N7rmhidBmSK15stu2lnHDdUfg1yjsjDOg1xQKZtJZDE8YJ3c5QHkG8mXn QD8wbrZGNsps28TtH64ikGgnjxhq+Ys/ciFfkAbosZmgcLQqBzxT9w93NuNzSOShyjdmaM IEPYuDi1bYjKp9KRbBXPG8vdoRnwBietnWELJ6GtBobydzg4PwOMhBOZQ83i+A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1787359627; a=rsa-sha256; cv=none; b=sTyorcliDnUpXiFyWbXwluRp7qv4x9yqCw2NBJYfy2U3IRByaku+7dVpgYxNirYjt58MdA uZFEFFb8IWm0usFBlbNeoOYVUItGgOSu1koAsSFVO1OapzzQABYWIQa73bUjw5nHTe6d9Y AbJPWcX+Xlp5q1h7D6n+OKGYlYztjVnNQIH9K7VujMCkCW6VdRBZY4VDmYQuCSph3CvyW+ N6+ooXgTx09sud/1ENgBubFD4wdYA9j7GSH1s9tDkkMuUzdH9u3fr8CCzedOLi1n3zOjzL lRJdvd1rw4o7yOCsVKz8i0ia9zzyryUYj6+CDumXBATDfyEKeJFIh3/8/R7A5g== 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=1787359627; 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=RH0p1sG83GQ5S6dchoEx59+trN6BpjrvjGd1YQg6czQ=; b=KWQCxO83W0B+CSNmpRyi5JlLE2sq0fvqQDKLMBTK3eMouuTW8GcWF17pXbeXAa8oGOKPSK d76BvlqcLOcuaKc6YH4wh2FbiSrYLSSW4PHCOy3AdG9WU1IIq6fdUF3ytr2cH3adynU/yF ZFeblG2vQxKkuo/m2dytmqcdATSJo6wtaRChqjCMStbIO3p39uPkEpY9UF4xn0DcexCn/L brl8mSY7gM9nCRwSO1uT9dCGUIOUyiDp6FoiYMdLIr2KyipISBi61/U1CX8AiP/pit/oMA UYGmfMtLmM3xOsYDPwIo1sIf8pnjXJI7vDJ+JwNbf4VT9gl/pNtk1mklnv8dhA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4hRdmW1bB8zBcG for ; Sat, 22 Aug 2026 00:47:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 24f0b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 22 Aug 2026 00:47:07 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 2db7e1143a77 - stable/14 - ixgbe: Reject Flow Director with SR-IOV List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/14 X-Git-Reftype: branch X-Git-Commit: 2db7e1143a770b8c61a2de26b75ff36244c970cc Auto-Submitted: auto-generated Date: Sat, 22 Aug 2026 00:47:07 +0000 Message-Id: <6a88f18b.24f0b.3ffc50c4@gitrepo.freebsd.org> The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=2db7e1143a770b8c61a2de26b75ff36244c970cc commit 2db7e1143a770b8c61a2de26b75ff36244c970cc Author: Kevin Bowling AuthorDate: 2026-08-08 11:11:09 +0000 Commit: Kevin Bowling CommitDate: 2026-08-22 00:46:53 +0000 ixgbe: Reject Flow Director with SR-IOV The iflib Flow Director path does not assign filters using the absolute queue and pool identifiers required by SR-IOV. Reject the combination during preflight validation rather than allowing an unsupported configuration to alter the PF receive path. The loader tunable is fixed before VFs can be created, so validation also prevents the reverse ordering of this combination. (cherry picked from commit c017bceda48c766780ab1d2239b296242fcf9cf2) --- share/man/man4/ix.4 | 3 ++- sys/dev/ixgbe/if_sriov.c | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/share/man/man4/ix.4 b/share/man/man4/ix.4 index 822a8040caf4..33b723c0fcd2 100644 --- a/share/man/man4/ix.4 +++ b/share/man/man4/ix.4 @@ -29,7 +29,7 @@ .\" .\" * Other names and brands may be claimed as the property of others. .\" -.Dd August 7, 2026 +.Dd August 8, 2026 .Dt IX 4 .Os .Sh NAME @@ -168,6 +168,7 @@ Enable Flow Director. Flow Director directs Ethernet packets to the core where the packet consuming process, application, container, or microservice is running. +SR-IOV configuration is rejected when Flow Director is enabled. .It Va hw.ix.enable_rss Enable Receive-Side Scaling (RSS). When RSS is enabled, all of the receive data processing for diff --git a/sys/dev/ixgbe/if_sriov.c b/sys/dev/ixgbe/if_sriov.c index ff873d4652f8..4e98b2b5de0c 100644 --- a/sys/dev/ixgbe/if_sriov.c +++ b/sys/dev/ixgbe/if_sriov.c @@ -1698,6 +1698,11 @@ ixgbe_iov_validate(struct ixgbe_softc *sc, u16 num_vfs) if (sc->vfs != NULL || sc->vf_mac_filters != NULL || (sc->feat_en & IXGBE_FEATURE_SRIOV)) return (EBUSY); + if (sc->feat_en & IXGBE_FEATURE_FDIR) { + device_printf(sc->dev, + "Flow Director is not supported with SR-IOV\n"); + return (ENOTSUP); + } if (sc->intr_type != IFLIB_INTR_MSIX) { device_printf(sc->dev, "SR-IOV requires MSI-X\n"); return (ENOTSUP);