From nobody Fri Aug 21 00:44:58 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 4hR1mW0q3Tz6pP7V for ; Fri, 21 Aug 2026 00:44:59 +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 4hR1mV2l5cz45P5 for ; Fri, 21 Aug 2026 00:44:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1787273098; 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=MqZiieLhNEzJhZTELg1ck/qPS9Te9f80HTLynWgBuU0=; b=ehADbH+Co8nKOTZ4kRlCv1KvFljX8KIzaBX5VV7UnwewT/DloIp4PPCDDDafOt1cEOMMRo RN71Qvxi9Wl9oicSq9j8mMIyfYGOj1cbfHpKGZ/F2+2ak7n4gL6U2TFVu/IGVydm2rB35q trg/vkYsuRIr211gYNpUCElcWBCJWUAEKPQstG6fsggktjU0ump/8we3GpMalvw2kAl1/g SKSxZXFL/f7urO333p4TYQn11gvJna/m/LtSYE4rNA0zuqNPdvDAAqM1OQ75cj6MyiDvZO 2oqb5r0MhewT+zpHYdqoafTdXwBhh4A/Sly0y3TwqZ2/RhB+m87QJzgS4r2SDQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1787273098; a=rsa-sha256; cv=none; b=YM2hzRjjXKUdddQfi65v1UYzcm/o79eSdA3hqVEfIUcdX2HSfyZw6Y7cDwHaxNzlXUgqxH 1/qxn9QP58WPCRadk+aLFDxobVG9gvQCMPgXU/tzfP+TzpzqhYSTuqlJuERPgXXdd6P2RU 8MfS2iEjUaQW+7+3ws57urzdQ6Vm0kLBnB6N72mpmtICYrerK05OFfStBA7zGBiJigoRN4 FuP2ll2NWDhg1j95JWpSeuu1v/F8mURlfRwIigoACCfD/3AtsAaNev7ey+vv+PmmlF6mjE XQIvWD4KQBn3cNE/JBcROITEiF2aw9pqRMQTz25xRE83pWIFgEwnvGGtXznmNA== 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=1787273098; 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=MqZiieLhNEzJhZTELg1ck/qPS9Te9f80HTLynWgBuU0=; b=NJa4Wu/ocDoMvPVmUylVioZigBeJE0ZmdyIYbvynoeSXh7MCBCD9P4xKD+EFh3KHN78Fgp aBnn6098gHd8xDKx5upNw0NGLdiXyzQ9sHOKJPVMgmIJSUkvkZUI/RtQc21rbLHoCkCM4N tYAfgFjt/Un18qh86PekteI90WOLPZoQkvqUv3HnrpN5AP+uHMdKRXFonuv6ngUZ3l+Hui UdOLABrgRJgX+yDw4GGc7CXRlJ+uUFtEk71+3SbdLiuI6G/xh3TALJbEvHON0q5CBEIfGz RONXXO2Vw5abYhqkrh8l4UeuVBy1FqE1Z5wqqVsT0NxAMSWeJgobr/Gcm6xoHA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4hR1mV1cTpzhf7 for ; Fri, 21 Aug 2026 00:44:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2316f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 21 Aug 2026 00:44:58 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: c36be2987c8b - stable/14 - 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/14 X-Git-Reftype: branch X-Git-Commit: c36be2987c8bf386651a73d92f1e414626d29d78 Auto-Submitted: auto-generated Date: Fri, 21 Aug 2026 00:44:58 +0000 Message-Id: <6a879f8a.2316f.1fbdfe4@gitrepo.freebsd.org> The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=c36be2987c8bf386651a73d92f1e414626d29d78 commit c36be2987c8bf386651a73d92f1e414626d29d78 Author: Kevin Bowling AuthorDate: 2026-08-05 14:14:44 +0000 Commit: Kevin Bowling CommitDate: 2026-08-21 00:43:59 +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 */