From nobody Fri Aug 21 00:33:32 2026 X-Original-To: dev-commits-src-all@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 4hR1WJ5Qm2z6pN5Z for ; Fri, 21 Aug 2026 00:33:32 +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 4hR1WJ4TRPz421G for ; Fri, 21 Aug 2026 00:33:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1787272412; 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=bQ8X29enV1kVQt9vIt7fZZyIO7tKJOrgKUQYHJdPXrY=; b=FnNZsnLhwgCka0dmBs8sazKkLK/FW5bq4Zk6WMvb2neH3mWQvt/IhwMzuqpEt/FRttC7hC J8wsRb3yNbHxf4kSOXLfz/0Lxbu3fQcb1VxfdIpPhoWtaeJ99hNB6Nf9HjuCtH3NUEr5Hj qSca0UyJ8eZETL3K8F6cTrbkITtI65gyRSSpPVKNfeBBJfnqv1h+EjqnM6MJXsg7aQYNOP h8eGCEL2mlmMvnRmBr9b417ICon155U/GFPGpMBjR+1Ucqj59vM1gRWQ2KZwtQnpibsgy/ jPJTCpb5t/l7X1cHGE1X40vTyxzYk0Fb9XP8/Y2ktU8AUokOXWbDKY23HsRx3A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1787272412; a=rsa-sha256; cv=none; b=CHqebWVwvBeGj5UaxZiro31WMzOzqpUiTwPkaV+ShQdQINcP9qhLCBQNO25GblepU4DLxy stIykxadghfkN0LmkFQS/ZgEm/kAx3DAyIXOK3hc2cbHRUSTOCY22OT0LglZcG471oBgkp zhYZuYXUNVjwqtBjobIe+u58UQAp3LBsNkl+nni9w5JQBfafOCRq+3I2ODSe+LwC6MMko2 ssva9t8Yj5W5luqRxFhn6Cx6w0SC+71l3a5YvZYrKoBQ+KQ8LZMIrYNTMpXTXg7D7+fQRe 3/ro6f4VEwHrFAwyVfXXj6Qu0PjLIBPITRDaUTW4Az1dRI3GMaIbDUxH2bmD6A== 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=1787272412; 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=bQ8X29enV1kVQt9vIt7fZZyIO7tKJOrgKUQYHJdPXrY=; b=dqKhXz9ewvJ98bWhsWJoPZsH4ykZj4f4XsBsArhQcI7y6jlWNO+4TAMhRNmvWWQxAumU0m a0U6AN8Bl4cSFMlWOPumdMDl+WuxEEeJ8AvWfk3/Uu/FkjUTDHv2M2Q3/Kry6bJgrUumm4 Fa+33dwOHyBJlt0kRNwXofokMKhbM1K2frvkPOEI75QxT2S0TYZihOgxG1eJ8uXekXOWcs IzhMcFKI4OU4KGGX8UHTssnq3yCjNHrQNFFoTNCBC0dfmXzqqJXnBe7IeSWYy+nJ7VIFve iIlLM+XZBzmMKwveouU1q8zbY8yNU7oA8jHXwEGojUIUYjViNhqGirMdBFTCdQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4hR1WJ35d2zhB2 for ; Fri, 21 Aug 2026 00:33:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 22dc8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 21 Aug 2026 00:33:32 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 79abd5ab0d58 - stable/15 - ixgbe: Use PF MTU for 82599 VF jumbo policy List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@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/15 X-Git-Reftype: branch X-Git-Commit: 79abd5ab0d58c8b84ed2034fc6d6120a49e919f4 Auto-Submitted: auto-generated Date: Fri, 21 Aug 2026 00:33:32 +0000 Message-Id: <6a879cdc.22dc8.511f12a9@gitrepo.freebsd.org> The branch stable/15 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=79abd5ab0d58c8b84ed2034fc6d6120a49e919f4 commit 79abd5ab0d58c8b84ed2034fc6d6120a49e919f4 Author: Kevin Bowling AuthorDate: 2026-08-05 14:14:44 +0000 Commit: Kevin Bowling CommitDate: 2026-08-21 00:33:22 +0000 ixgbe: Use PF MTU for 82599 VF jumbo policy The shared maximum frame size is raised by VF LPE requests, so it cannot describe the PF MTU when enforcing the 82599 PF/VF jumbo restriction. Consult the PF ifnet MTU instead. Also correct the API 1.1 and later comparison so a jumbo VF is enabled when, and only when, the PF itself uses a jumbo MTU. This matches the policy implemented by DPDK. (cherry picked from commit 2a803e6f349c3d6cf770089f8a71bc5139308465) --- sys/dev/ixgbe/if_sriov.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/sys/dev/ixgbe/if_sriov.c b/sys/dev/ixgbe/if_sriov.c index 32b4935e3b44..af0027a073c8 100644 --- a/sys/dev/ixgbe/if_sriov.c +++ b/sys/dev/ixgbe/if_sriov.c @@ -491,6 +491,9 @@ ixgbe_vf_clear_mac_filters(struct ixgbe_softc *sc, struct ixgbe_vf *vf, static boolean_t ixgbe_vf_frame_size_compatible(struct ixgbe_softc *sc, struct ixgbe_vf *vf) { + if_t ifp; + bool pf_jumbo; + /* * Frame size compatibility between PF and VF is only a problem on * 82599-based cards. X540 and later support any combination of jumbo @@ -499,6 +502,10 @@ ixgbe_vf_frame_size_compatible(struct ixgbe_softc *sc, struct ixgbe_vf *vf) if (sc->hw.mac.type != ixgbe_mac_82599EB) return (true); + /* sc->max_frame_size includes VF requests; use the PF's actual MTU. */ + ifp = iflib_get_ifp(sc->ctx); + pf_jumbo = if_getmtu(ifp) > ETHERMTU; + switch (vf->api_ver) { case IXGBE_API_VER_1_0: case IXGBE_API_VER_UNKNOWN: @@ -506,8 +513,7 @@ ixgbe_vf_frame_size_compatible(struct ixgbe_softc *sc, struct ixgbe_vf *vf) * On legacy (1.0 and older) VF versions, we don't support * jumbo frames on either the PF or the VF. */ - if (sc->max_frame_size > ETHER_MAX_LEN || - vf->maximum_frame_size > ETHER_MAX_LEN) + if (pf_jumbo || vf->maximum_frame_size > ETHER_MAX_LEN) return (false); return (true); @@ -526,10 +532,7 @@ ixgbe_vf_frame_size_compatible(struct ixgbe_softc *sc, struct ixgbe_vf *vf) * Jumbo frames only work with VFs if the PF is also using * jumbo frames. */ - if (sc->max_frame_size <= ETHER_MAX_LEN) - return (true); - - return (false); + return (pf_jumbo); } } /* ixgbe_vf_frame_size_compatible */