From nobody Wed Jul 8 07:52:12 2026 X-Original-To: dev-commits-src-main@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 4gw9Kn5NBsz6kvNb for ; Wed, 08 Jul 2026 07:52:13 +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 "YR1" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4gw9Kn1Wgdz4JFr for ; Wed, 08 Jul 2026 07:52:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1783497133; 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=c4qcDqmMKjKHwhVng4rCaxx8Rv5yr8uITRZWZeqqFUw=; b=fBRezappUScrUgEXfuj+zs6ZlGQlRmLgDhsJP5EISpWodh6fv5m9fDBM0G2jxkuiYcdNDr f0clLzL1WMU122PiGekXHe3esNEw5Qg3lWjgcdA17KQCBFk2InjBpeTAMHoaCVKq21lmYu /2wi0V9HThw81mDs/OV9K+K19+kOmWQeFaKoQ/T4Yc0029O0Cg7ubkJ40FUmTPJhHqLK1o NtDsKzSH13DQmQiXWOfr/3nKynnzxvillWtlSbQdVzTug3LHJ3L9pYna2I8W2pOBox3Tg5 HeJlLCy3cY9ZzxmMtM4/zXK4j3pb85MA6P4zBUYOxUz3FYdn/cB2EpJhPIgykw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1783497133; a=rsa-sha256; cv=none; b=etaxMJv0fvalHqERiq7YycWlKUQL0Y+kmqeAcgK1KoUjysQyH7fhzPnSC9THTJOE1raNql E4m1jfJdHB4varT9p9X282b12WkI7d3ByJxPiLRsMstLgeyobPKVwmoGYN5YRzYhGau/Be JWErJFYUKAcyD+c5MP65d34rYvfWwhMbh7vPI1Jxob/P7T8IQ9HrDdvzwjZjkL/U7eC+4f By4m5s3p9Pna7ja87tW03KWsbaqey9GnBoopmcz8zWJy+CMhcGLcOKO7mADXYIrnsUKCln dNg1fM7fqmH/P9A+DMl3E3rypzsPnqDk6vdySrRk4QScVMJ1KNdKgOZExvVyrw== 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=1783497133; 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=c4qcDqmMKjKHwhVng4rCaxx8Rv5yr8uITRZWZeqqFUw=; b=aV3nQ0r6kh3RsJy2mWvudO2aYdKH5PdmHkZlKIEMl87XWNAFJFfP5qTEQRWkL6xSCX4Ob1 WNnXArnJwMuoDKM3Zg7u2EPZQsqYiKNLSjusetj9MiESjnafJ9z0l7hLim1ZJl6Xro2P6X AUaB8kNjpD6QcSk0MGPjq0DeTLrbdg7iHQwl+5zJwRqP13mgEbZlm88lpHIzJJiNvdPxfy iGaTtVsCE2VtcHVLN1FEUBeNc2S0sNVdFBxcKNhsRhPmsymyRPyIhOSDf2hibCZCj10rav CoTX9ODiCB2Dkv5yjHFrxc4M/ZpPRA77umP8JEOHWFT6FBQcu/MUQ5EGOs8Wyw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gw9Km6Ckdz1B84 for ; Wed, 08 Jul 2026 07:52:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 4749f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 08 Jul 2026 07:52:12 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: c38abd64dbc1 - main - if_epair: support IFCAP_MEXTPG List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@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: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c38abd64dbc18ec10a4f80e74ae4a304c075aa5c Auto-Submitted: auto-generated Date: Wed, 08 Jul 2026 07:52:12 +0000 Message-Id: <6a4e01ac.4749f.1f2bb97d@gitrepo.freebsd.org> The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=c38abd64dbc18ec10a4f80e74ae4a304c075aa5c commit c38abd64dbc18ec10a4f80e74ae4a304c075aa5c Author: Kristof Provost AuthorDate: 2026-07-06 09:16:41 +0000 Commit: Kristof Provost CommitDate: 2026-07-08 07:23:17 +0000 if_epair: support IFCAP_MEXTPG Enable IFCAP_MEXTPG by default, which may bring performance benefits. Allow it to be disabled, and when disabled assert that we do not receive any mbufs with M_EXTPG set. This is useful for testing. Default the tests to disabling MEXTPG support. Reviewed by: zlei Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D58054 --- sys/net/if_epair.c | 7 ++++++- tests/sys/common/vnet.subr | 4 +++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/sys/net/if_epair.c b/sys/net/if_epair.c index 60849ca1d4f2..5addd43b6190 100644 --- a/sys/net/if_epair.c +++ b/sys/net/if_epair.c @@ -351,6 +351,10 @@ epair_transmit(struct ifnet *ifp, struct mbuf *m) return (E2BIG); } + if ((ifp->if_capenable & IFCAP_MEXTPG) == 0) { + M_ASSERTMAPPED(m); + } + /* * We are not going to use the interface en/dequeue mechanism * on the TX side. We are called from ether_output_frame() @@ -632,7 +636,8 @@ epair_setup_ifp(struct epair_softc *sc, char *name, int unit) ifp->if_capabilities = IFCAP_VLAN_MTU | IFCAP_VLAN_HWTAGGING | IFCAP_TXCSUM | IFCAP_RXCSUM | - IFCAP_TXCSUM_IPV6 | IFCAP_RXCSUM_IPV6; + IFCAP_TXCSUM_IPV6 | IFCAP_RXCSUM_IPV6 | + IFCAP_MEXTPG; ifp->if_capenable = ifp->if_capabilities; epair_caps_changed(ifp); ifp->if_transmit = epair_transmit; diff --git a/tests/sys/common/vnet.subr b/tests/sys/common/vnet.subr index 245dbaea517a..781bde4943fa 100644 --- a/tests/sys/common/vnet.subr +++ b/tests/sys/common/vnet.subr @@ -46,7 +46,9 @@ vnet_mkepair() # compute checksums, it just marks packets that this computation still # needs to be done. However, some test cases verify the checksum. # Therefore disable this for IPv4 and IPv6. - ifconfig ${ifname} -txcsum -txcsum6 + # Also disable MEXTPG support, so the tests can verify that the network + # stack don't pass MEXTPG mbufs to interfaces that don't support it. + ifconfig ${ifname} -txcsum -txcsum6 -mextpg list_interface $ifname list_interface ${ifname%a}b echo ${ifname%a}