Date: Sat, 08 Aug 2026 11:59:21 +0000 From: Kevin Bowling <kbowling@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: c017bceda48c - main - ixgbe: Reject Flow Director with SR-IOV Message-ID: <6a771a19.35fca.7d9e8972@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch main has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=c017bceda48c766780ab1d2239b296242fcf9cf2 commit c017bceda48c766780ab1d2239b296242fcf9cf2 Author: Kevin Bowling <kbowling@FreeBSD.org> AuthorDate: 2026-08-08 11:11:09 +0000 Commit: Kevin Bowling <kbowling@FreeBSD.org> CommitDate: 2026-08-08 11:59:13 +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. MFC after: 2 weeks --- 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);home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6a771a19.35fca.7d9e8972>
