From nobody Mon Jul 13 01:41:55 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 4gz4tK1wlFz6lL2F for ; Mon, 13 Jul 2026 01:42:01 +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 4gz4tK12Nlz3JJK for ; Mon, 13 Jul 2026 01:42:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1783906921; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J9uErUOqpfKlbw3WLFbvJaAdQ9kySH8k0pmu0KG2Mj4=; b=QAmZmkRvVtDbpx7lDaDBm7Co9ViPvyat7Xyo62123v6vLSiqQWkDZvfAJn2VFnf7hn3czt mpx+AzXLXpomvvvX/pKDksUPVaCEU6MzKkuqSPcNz7uvk8qvgIRKTq6gBhoRNf7OEgO+Tw fcMJ1dX0jMTxoKRO5N98UIo1osyjORvpgTql8bcMCea3oB4sQpxG5vfeE6sUG94iMF72LH OK4W2C+LdH+cKS6m0Jn11Bo6hfsQxYjDvr8x39VC3X5cUtueRUEOO6B2nkmlTZHqPpfArH N4ZZpIOs+fU1ocA0onYcnX3iu1lm5F4xteuxEt/l417k1R1SOTf9XPcTlLdj6Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1783906921; a=rsa-sha256; cv=none; b=p+EUga+j1OR4xU7iaow0dob0Nsy1J5f2LCz/MWhUiiMUEtE+zzW23UfuGW124g+UPWMCMz 0mMgJHjQLJ4chAjfhD157rGOeMsEbWcHGPNgCtT1y66K3WdA82VzvbW3tVrTIi1GX6lTn/ kI+9DhWGXihaU2bGRNMCMujoBbrPOmgbTS1O7nL0rFRhrXlv2kqUf5KH9dW3DNduOpLudQ vEBgWPeiPwxgOkxIRbGGrRmDhGGbxzGo3BaB2hjphS6xyd643L6kZS+pgXT52V/hvp47lH EthXhmygaAuRkkq04NRJ1SPQTxIckHWmRLN4itZdx8CIq9KspVyH/HWcwfIaKg== 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=1783906921; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J9uErUOqpfKlbw3WLFbvJaAdQ9kySH8k0pmu0KG2Mj4=; b=wVeQCn+ZgIebBpRtpc5QKHBI6JABNk+2CVwZLa5TBt78cEDoAcjWc9XYyVOR7SKNyPQi3n RNfBSrAc8INGFLOrZz/Y7h6oRF9MvtSP82OSiDR+OZHdqnIlbN1HC4tM/9GB37EYXCGjvQ Z+QJSA8W1//EItVWvO1/1oHqipzTuJF4I3XBFHos0Jl7iHZO9ParvnXtYHKkcoAG1wM8im 2+pbxMxCJM0AsUJ3KVasn4F+xULcZJfmX+z4AsH4oZJKGjDDRRQZHWBUPmGaPl/yz3qlBk PfdA9EHSbK6aIVXmxHuq+X1v6MBPafQJMVa5mtfMNeK3gsLIaKHhgtkLx6Wfaw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gz4tJ6hrlzdsk for ; Mon, 13 Jul 2026 01:42:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 307a3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 13 Jul 2026 01:41:55 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Peter Ganzhorn From: Zhenlei Huang Subject: git: 37340348b9a8 - stable/14 - iflib: Add a missing CURVNET_RESTORE() in the error path 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: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 37340348b9a8eee17ade7b732f3d541e592df840 Auto-Submitted: auto-generated Date: Mon, 13 Jul 2026 01:41:55 +0000 Message-Id: <6a544263.307a3.654e4404@gitrepo.freebsd.org> The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=37340348b9a8eee17ade7b732f3d541e592df840 commit 37340348b9a8eee17ade7b732f3d541e592df840 Author: Peter Ganzhorn AuthorDate: 2026-04-20 16:59:59 +0000 Commit: Zhenlei Huang CommitDate: 2026-07-13 01:40:06 +0000 iflib: Add a missing CURVNET_RESTORE() in the error path Signed-off-by: Peter Ganzhorn Reviewed by: zlei Fixes: 6d49b41ee84b iflib: Add pfil hooks MFC after: 3 days Pull Request: https://github.com/freebsd/freebsd-src/pull/2150 (cherry picked from commit f49f61f19463c21125bb1215cf8e0530f52953e3) (cherry picked from commit d11419ed37a61a4896381f91fd942c4fff2e66dd) --- sys/net/iflib.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/net/iflib.c b/sys/net/iflib.c index 0a90c417cc80..de76215f9f44 100644 --- a/sys/net/iflib.c +++ b/sys/net/iflib.c @@ -2944,8 +2944,10 @@ iflib_rxeof(iflib_rxq_t rxq, qidx_t budget) ri.iri_frags = rxq->ifr_frags; err = ctx->isc_rxd_pkt_get(ctx->ifc_softc, &ri); - if (err) + if (err) { + CURVNET_RESTORE(); goto err; + } rx_pkts += 1; rx_bytes += ri.iri_len; if (sctx->isc_flags & IFLIB_HAS_RXCQ) { From nobody Mon Jul 13 07:39:11 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 4gzDpS25g0z6kX3W for ; Mon, 13 Jul 2026 07:39:12 +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 4gzDpS05T9z3tPF for ; Mon, 13 Jul 2026 07:39:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1783928352; 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=YkRcyYVO3rU2xJjPISSsUw9fbG5m/uzBY+puUmJBFns=; b=yyxmCHqs4Ek6+QKrCJFzCoUScgL4gL9nR8zlsFvNfUGLQi6olkynDjrU1zJbOpfm2YK6mM 5A30uAWcocuzWpxoIw+HknIiSR4EUeq42YUQNjfHMHEQ46/OVZZZ8naiqOV0GZtTa6kT8Q eblNybEy5jWH/Acmw3d+JL69OUN1oGLhVz36tBsV5dNfa6sk3bObPFECGRqPLwOUx1EbnB PQVJ4dD/AoH22zW1zp369ysuqVdhQZBTDPKDq+Wp74HhgayFWKNRM42FMXv3Fmeh2sSnKr mmHGCBrwIPv41ZsFbhw/a0SqksGFIVSz2ct8qf5HB9Ikwnpt9CPn3yt4/VetxQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1783928352; a=rsa-sha256; cv=none; b=ebO1IPQkUGmEfNiHHTmRoEVnixrgde1YqGTfOY1oMfMMX7ymvExeJX7bGulavSVhRRuv9m gg/tM16iyGDRNGrT/TJpXhkS81cnd+tvoCV2aHrbW9cP6Lc6hOwJ+hq3aUrcbeLpV2RCpK Zp8kVuzDIyF3BJsdMr9YrdubEg+gJP75ULFQC9AnJvzQTkUuAmL61zGozf+vjh5357+1dB vXSjamDBhHVYndy3EJz3rHQjqtGtNsHZwnNXUEzOlmJLVaVOHY8btW0eCT/ejcraRS+LxD 7ABMQI5qlPTvSg8INQs+/jX5x92KRVZ49CUOJ3p1YgaJGtg04eRlghQo6K0s8w== 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=1783928352; 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=YkRcyYVO3rU2xJjPISSsUw9fbG5m/uzBY+puUmJBFns=; b=ep68l0qGCWRdprloO+dcnU8BxguTfnTEOzdGzXaORLn3d1yNGMa9e/enmJYKICJQeodp+z wjCazPsFqeC1ZyOSVZyqGnDkiXteEKjoRZ+wg+IGdf/7RF5ayd7IP1WJlr1p5qx6eHqgpi ZZy3Yfujyx0z6TbZMFJxU1N5BDIRJqOP229ZnPqgA9OKzv7r8oCZSaixszfgB5WDMHNMrI 9i5UGJj7B+qhwYcagsc4hn4Hr0z1fscU6gjFF0ttJWMlDyzHT+XSJU50/oxV1f4eiSWB6r 7jE+wzIuPodHxNbwVn8vlMU6wiE3LLVEVZ+90y8NH9f7xtMlc1arXbLHrgSFtQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gzDpR5nxDzpgk for ; Mon, 13 Jul 2026 07:39:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 23cdf by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 13 Jul 2026 07:39:11 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dag-Erling=?utf-8?Q? Sm=C3=B8rg?=rav Subject: git: b775479ca2c4 - stable/15 - src.conf(5): Suggest using ccache4 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: des X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: b775479ca2c4fa286562e184a2cb9329448f33e5 Auto-Submitted: auto-generated Date: Mon, 13 Jul 2026 07:39:11 +0000 Message-Id: <6a54961f.23cdf.2062005c@gitrepo.freebsd.org> The branch stable/15 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=b775479ca2c4fa286562e184a2cb9329448f33e5 commit b775479ca2c4fa286562e184a2cb9329448f33e5 Author: Dag-Erling Smørgrav AuthorDate: 2026-07-02 15:16:52 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2026-07-13 07:30:06 +0000 src.conf(5): Suggest using ccache4 We have separate ports for Ccache 3 and 4. Suggest both, rather than only the Ccache 3 port. Rearrange the text somewhat to avoid an excessively ragged edge on a standard 80-column terminal. MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D58005 (cherry picked from commit a2545f68f64b4cfcc13ca2d372c8b9fef1c6331e) --- share/man/man5/src.conf.5 | 19 ++++++++----------- tools/build/options/WITH_CCACHE_BUILD | 17 +++++++---------- 2 files changed, 15 insertions(+), 21 deletions(-) diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5 index 2ec7862b1a21..cc1b58d28f5d 100644 --- a/share/man/man5/src.conf.5 +++ b/share/man/man5/src.conf.5 @@ -1,5 +1,5 @@ .\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. -.Dd June 26, 2026 +.Dd July 13, 2026 .Dt SRC.CONF 5 .Os .Sh NAME @@ -348,22 +348,19 @@ Use .Xr ccache 1 for the build. No configuration is required except to install the -.Sy devel/ccache +.Sy devel/ccache , +.Sy devel/ccache4 , or .Sy devel/sccache -package. +port or package; in the latter case, set +.Sy CCACHE_NAME=sccache . When using with .Xr distcc 1 , set -.Sy CCACHE_PREFIX=/usr/local/bin/distcc . -When using with sccache -set -.Sy CCACHE_NAME=sccache -in -.Xr src.conf 5 . -The default cache directory of +.Sy CCACHE_PREFIX=${LOCALBASE}/bin/distcc . +The default cache directory is .Pa $HOME/.ccache -will be used, which can be overridden by setting +and can be changed by setting .Sy CCACHE_DIR . The .Sy CCACHE_COMPILERCHECK diff --git a/tools/build/options/WITH_CCACHE_BUILD b/tools/build/options/WITH_CCACHE_BUILD index 9a5c2ce1cb80..f2a8505ee372 100644 --- a/tools/build/options/WITH_CCACHE_BUILD +++ b/tools/build/options/WITH_CCACHE_BUILD @@ -2,22 +2,19 @@ Use .Xr ccache 1 for the build. No configuration is required except to install the -.Sy devel/ccache +.Sy devel/ccache , +.Sy devel/ccache4 , or .Sy devel/sccache -package. +port or package; in the latter case, set +.Sy CCACHE_NAME=sccache . When using with .Xr distcc 1 , set -.Sy CCACHE_PREFIX=/usr/local/bin/distcc . -When using with sccache -set -.Sy CCACHE_NAME=sccache -in -.Xr src.conf 5 . -The default cache directory of +.Sy CCACHE_PREFIX=${LOCALBASE}/bin/distcc . +The default cache directory is .Pa $HOME/.ccache -will be used, which can be overridden by setting +and can be changed by setting .Sy CCACHE_DIR . The .Sy CCACHE_COMPILERCHECK From nobody Mon Jul 13 07:39:21 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 4gzDpf1vrBz6kXXr for ; Mon, 13 Jul 2026 07:39:22 +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 4gzDpf0vtVz3tmx for ; Mon, 13 Jul 2026 07:39:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1783928362; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zTyh/Eei5iwYBsEJIhifL84o+SccRbNGM3UluvETaig=; b=p8Kmx9KmAi6Tb8WUjg+dLWT8JjfYV24wCHG3LnTfmmirlneVit3Xoxfo2HM7KPAAE/y6ri qT2TdM6FPl8fN74z362OlBSWybKR/3Za+698BcBJEoKATwiqHATnMtwJ7D+3uMdYK55e6b EHlfbpRwVTD2yzSwXx8iKjSn6ipD61YUHX3GXOuLmGx6t4mB1vqOZkRDA6MWnMgeUrenNM IX2wudPzPjYp7FCYwb4d4luxZvGhjCqobmmjRb6YM/HwCNTQE7jzANO83ICuVNl1fQnQW1 r8bzDBBDQ/odNs/qJFyWnuTdGVgZlqTa6Wl9Rulf2qoWr51wjqgc0vdPrkghAQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1783928362; a=rsa-sha256; cv=none; b=VN+VxwwHGx/niuP9UAAp5PR+/nyuXdzGFYm1jkk72U3EveTVoEjFFe7J1UrDsKkTHcKXUs zfSYnnhkskkrsl7GXqiawZI5k8mykLszWKPRN0GDzgtNGnwk1VYmpRiMTNdJkFXdjXgDPr XFsVy2NAhWL50NG8gc3vot6plrjuPNRWlIwvd6a2lEBtyFAMcA1/PqALsf6r6aWESw6RFh ALAxRSqgZSGptDBY4Z4a1olDiftBohe/dL+RofkQXIxJ6c7lCwB/hYuVUv5juSDMSYTpyk nLysm4c9HsT4en454YUZn0/3fdv6rF4mmBoM7PEH7fkfJLoYgdX6DgkpR8ljxA== 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=1783928362; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zTyh/Eei5iwYBsEJIhifL84o+SccRbNGM3UluvETaig=; b=OOyZRkvCV1CCHcuKPpt+iTA8qWOhLh7Y2rpCogC2xFN+wzM400TTFSvzf2HIztTU+SulZL R1zSnRRnmkAy5B1ITMF5xaHVIeO196Z6wUeRfIiUsbzuAPvlPXxPFEbA7SidyPT3z4Pw4Z CV427Emddm15UP2FZSt2fPEZhICDSz2v1N8gAzC9wDPpxzW7IGEg2ZfgMqhyBy1+z2xRbf vHdiOK8W8j2RZdVXTZlFihFmsPSM/sBspZpvfGICDzhLT04kK80yTY/MRjN7WTKISKOFYw bp9ABiFO1t4gmT+5VxfHmCiDCJPLcbPpuSM+xzh18zPnWfybS6wU53D3/TGaZQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gzDpd75bRzq63 for ; Mon, 13 Jul 2026 07:39:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 25ba8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 13 Jul 2026 07:39:21 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: SHENGYI HONG From: Dag-Erling=?utf-8?Q? Sm=C3=B8rg?=rav Subject: git: cd2c1451dc17 - stable/14 - share/mk: Add sccache suport for WITH_CCACHE_BUILD option 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: des X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: cd2c1451dc17520fc2cb8939fa8d8b1d3f9508e8 Auto-Submitted: auto-generated Date: Mon, 13 Jul 2026 07:39:21 +0000 Message-Id: <6a549629.25ba8.23a2aced@gitrepo.freebsd.org> The branch stable/14 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=cd2c1451dc17520fc2cb8939fa8d8b1d3f9508e8 commit cd2c1451dc17520fc2cb8939fa8d8b1d3f9508e8 Author: SHENGYI HONG AuthorDate: 2025-06-20 05:37:23 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2026-07-13 07:29:11 +0000 share/mk: Add sccache suport for WITH_CCACHE_BUILD option By setting CCACHE_NAME=sccache , sccache can be used as an alternative for ccache. Reviewed by: emaste, jhb Event: Kitchener-Waterloo Hackathon 202506 Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49417 (cherry picked from commit 10cb3979a9bde6c8e441e3ba4aa5fd09963c484f) --- share/mk/bsd.compiler.mk | 12 +++++++++++- tools/build/options/WITH_CCACHE_BUILD | 7 +++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/share/mk/bsd.compiler.mk b/share/mk/bsd.compiler.mk index fd236b2e6b8f..b6a9a3586cc9 100644 --- a/share/mk/bsd.compiler.mk +++ b/share/mk/bsd.compiler.mk @@ -64,9 +64,10 @@ CCACHE_BUILD_TYPE?= command # PATH since it is more clear that ccache is used and avoids wasting time # for mkdep/linking/asm builds. LOCALBASE?= /usr/local +CCACHE_NAME?= ccache CCACHE_PKG_PREFIX?= ${LOCALBASE} CCACHE_WRAPPER_PATH?= ${CCACHE_PKG_PREFIX}/libexec/ccache -CCACHE_BIN?= ${CCACHE_PKG_PREFIX}/bin/ccache +CCACHE_BIN?= ${CCACHE_PKG_PREFIX}/bin/${CCACHE_NAME} .if exists(${CCACHE_BIN}) # Export to ensure sub-makes can filter it out for mkdep/linking and # to chain down into kernel build which won't include this file. @@ -120,7 +121,12 @@ CCACHE_NOCPP2= 1 .endif # Canonicalize CCACHE_DIR for meta mode usage. .if !defined(CCACHE_DIR) +.if !empty(CCACHE_BIN:M*sccache) +# Get the temp directory and remove beginning and trailing \" +CCACHE_DIR!= ${CCACHE_BIN} -s | awk '$$2 == "location" && $$3 == "Local" {print substr($$5, 2, length($$5) - 2)}' +.else CCACHE_DIR!= ${CCACHE_BIN} -p | awk '$$2 == "cache_dir" {print $$4}' +.endif .export CCACHE_DIR .endif .if !empty(CCACHE_DIR) && empty(.MAKE.META.IGNORE_PATHS:M${CCACHE_DIR}) @@ -132,7 +138,11 @@ CCACHE_DIR:= ${CCACHE_DIR:tA} # comparisons. .MAKE.META.IGNORE_PATHS+= ${CCACHE_BIN} ccache-print-options: .PHONY +.if !empty(CCACHE_BIN:M*sccache) + @${CCACHE_BIN} -s +.else @${CCACHE_BIN} -p +.endif # !empty(CCACHE_BIN:M*sccache) .endif # exists(${CCACHE_BIN}) .endif # ${MK_CCACHE_BUILD} == "yes" diff --git a/tools/build/options/WITH_CCACHE_BUILD b/tools/build/options/WITH_CCACHE_BUILD index 9e53769287e5..9a5c2ce1cb80 100644 --- a/tools/build/options/WITH_CCACHE_BUILD +++ b/tools/build/options/WITH_CCACHE_BUILD @@ -3,11 +3,18 @@ Use for the build. No configuration is required except to install the .Sy devel/ccache +or +.Sy devel/sccache package. When using with .Xr distcc 1 , set .Sy CCACHE_PREFIX=/usr/local/bin/distcc . +When using with sccache +set +.Sy CCACHE_NAME=sccache +in +.Xr src.conf 5 . The default cache directory of .Pa $HOME/.ccache will be used, which can be overridden by setting From nobody Mon Jul 13 07:39:23 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 4gzDpg3cLlz6kX16 for ; Mon, 13 Jul 2026 07:39:23 +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 4gzDpg2BkKz3tWr for ; Mon, 13 Jul 2026 07:39:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1783928363; 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=FALsNt/Apv79trOrhM4aexd8/UB5WMwhFcBApM0JOFk=; b=xS2EVrfRg1xpIFWwHFGZze5VPsYyfDhLtViBEHALvmq919m7vYP5K9oZDx5ipwPZKsXaKE uwdvVEkzvoWctchk5Wx9FeKbXH+TYskyzsfxuGbeOzbHpE5ks2ZuoEEHn8iZgPXSjBpFVp msGrB7RtpuMv6HdJLdfCyBvr6hKcMVS19v7/8UMTmrAN2iyig/AiO1XKNPN0NmAO1Ah9eU qkwbH9r0XH9rbCDC3teX6vy6m9VlCZvAni1VLXtQ/9Pep45IeY+kbDTtt1SqIfC/Md4Dj/ 1DjFvwNlJp1b5bgvY2IgCY3nV/Zz14IhLBZ5154+9Aov2BGs/W6sUlOsjpFB/A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1783928363; a=rsa-sha256; cv=none; b=x/PktGjda4uVOvp7mdLc0zuMX0fuMivOhHqKusT1qYRl/VMSj/3S4uIa2Rn6G4tfCN8CzI ycBRUj3sN3r058dPQ3DOUrwr3rHoBAtnuwEoGu1e7tbT//DHVKPuLmmeSvQM1Hxav7mDUE Y4Uz8YOTlVXYUNfjQaphokMS64tEkotzHoERcY9s7bkhIxxi/qXwER5xTGRCCU+wWJdN6K jX7PY+ej+Z+2q1IX2UKVTmiioRmyG49OP45BRSw5xmD9rP6TtME7uLXPqRoczZ26960zkg Bh0y33Lca8NUrO0AtrI9hPkqYLraA5MluapmCMD0n7sSEoA8oBKHn7APa7NwOw== 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=1783928363; 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=FALsNt/Apv79trOrhM4aexd8/UB5WMwhFcBApM0JOFk=; b=nNgwIu174P4kP1pzmTMs5yqHi8istVnaWDBjmFQXCFGzIfHkrWYY7zjVbUYn2G3R0eGwZN HOeQPUDSWvNkf/Znh2hrKqPGeBBrTMu9zwRR17HtTqTyZOvjsp2pN6HGJzmJhAFwrx/CU/ m/NSuN00g5WEtadvfXqK8S+zhpZJgRPnyx5R/UGQFm8J/oKXPo5Q3sfnUEqdNGYgsHplWb eROg1I8lW7DwOHYjfMubnXuTM0Oz1CPjAfhpLRAwmVfZbR8KGXeL4o0/P/B1jVpIlfTcjy 0SzTyBelFB3ut/G8Q8sf85uBGKiO6qOM9KddQijl0ngSlGRkgEiTuia/sFzBcw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gzDpg0qxvzpRv for ; Mon, 13 Jul 2026 07:39:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 261ba by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 13 Jul 2026 07:39:23 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dag-Erling=?utf-8?Q? Sm=C3=B8rg?=rav Subject: git: e16857e08fea - stable/14 - src.conf(5): Suggest using ccache4 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: des X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e16857e08feaf2c59f0f6cf83ac8f1d6eddb0b4d Auto-Submitted: auto-generated Date: Mon, 13 Jul 2026 07:39:23 +0000 Message-Id: <6a54962b.261ba.6f033f0b@gitrepo.freebsd.org> The branch stable/14 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=e16857e08feaf2c59f0f6cf83ac8f1d6eddb0b4d commit e16857e08feaf2c59f0f6cf83ac8f1d6eddb0b4d Author: Dag-Erling Smørgrav AuthorDate: 2026-07-02 15:16:52 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2026-07-13 07:38:44 +0000 src.conf(5): Suggest using ccache4 We have separate ports for Ccache 3 and 4. Suggest both, rather than only the Ccache 3 port. Rearrange the text somewhat to avoid an excessively ragged edge on a standard 80-column terminal. MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D58005 (cherry picked from commit a2545f68f64b4cfcc13ca2d372c8b9fef1c6331e) --- share/man/man5/src.conf.5 | 16 ++++++++++------ tools/build/options/WITH_CCACHE_BUILD | 17 +++++++---------- 2 files changed, 17 insertions(+), 16 deletions(-) diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5 index bc82020946cc..a62144344178 100644 --- a/share/man/man5/src.conf.5 +++ b/share/man/man5/src.conf.5 @@ -1,5 +1,5 @@ .\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. -.Dd June 26, 2026 +.Dd July 13, 2026 .Dt SRC.CONF 5 .Os .Sh NAME @@ -294,15 +294,19 @@ Use .Xr ccache 1 for the build. No configuration is required except to install the -.Sy devel/ccache -package. +.Sy devel/ccache , +.Sy devel/ccache4 , +or +.Sy devel/sccache +port or package; in the latter case, set +.Sy CCACHE_NAME=sccache . When using with .Xr distcc 1 , set -.Sy CCACHE_PREFIX=/usr/local/bin/distcc . -The default cache directory of +.Sy CCACHE_PREFIX=${LOCALBASE}/bin/distcc . +The default cache directory is .Pa $HOME/.ccache -will be used, which can be overridden by setting +and can be changed by setting .Sy CCACHE_DIR . The .Sy CCACHE_COMPILERCHECK diff --git a/tools/build/options/WITH_CCACHE_BUILD b/tools/build/options/WITH_CCACHE_BUILD index 9a5c2ce1cb80..f2a8505ee372 100644 --- a/tools/build/options/WITH_CCACHE_BUILD +++ b/tools/build/options/WITH_CCACHE_BUILD @@ -2,22 +2,19 @@ Use .Xr ccache 1 for the build. No configuration is required except to install the -.Sy devel/ccache +.Sy devel/ccache , +.Sy devel/ccache4 , or .Sy devel/sccache -package. +port or package; in the latter case, set +.Sy CCACHE_NAME=sccache . When using with .Xr distcc 1 , set -.Sy CCACHE_PREFIX=/usr/local/bin/distcc . -When using with sccache -set -.Sy CCACHE_NAME=sccache -in -.Xr src.conf 5 . -The default cache directory of +.Sy CCACHE_PREFIX=${LOCALBASE}/bin/distcc . +The default cache directory is .Pa $HOME/.ccache -will be used, which can be overridden by setting +and can be changed by setting .Sy CCACHE_DIR . The .Sy CCACHE_COMPILERCHECK From nobody Mon Jul 13 12:35: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 4gzMMv6Y8rz6l9K6 for ; Mon, 13 Jul 2026 12:35: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 "YR1" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4gzMMv3xJDz3V5P for ; Mon, 13 Jul 2026 12:35:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1783946107; 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=dtdC+KwOgjJIYG0XFjsrpDQvCeyoG7cVZuaW1VHXX+4=; b=CQ9tZfsAmgnmGyG3YPx/X8B1uIJG0NNfnB7UuRDMKw8a7QKMu2p1NJO/Aml9VRIMaVIJq5 siw8x0HgSSwP+E5epZM5u7MOQD96eXzjaNtPrmlZrQm1h9HP+OO+CTSLDyN9sYSnceqfId Wn8AsNh/Zh2kVX7oqNDxCE0P3X8CHwB1goVe2IRVOJ+thpb3pJ9cxblPa3sbncyrQfVJum mYH8sKLun3tEKAGg7nvu9MXNSNsD01LLRu6wJ1TQkb1/zDilJ02hnt1Bp31QTyq+WqpAwZ 9Jtc8+oM4GcH6Jn+/pJsL4YNDW8gAMKNApRWBQ1sh3pWWYaLftzvcwwYO5CcnA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1783946107; a=rsa-sha256; cv=none; b=f3jiT6AFka8CEpAbnm0mPpdPwksST6JXFtqgEePp43FyX6gBzpSjHVwJPGfxcYI8x+GdL+ Cxb95+ebjX1JMPUeEzpPHk4Jpsv2LdJ/Ur+crVknm8c4/YkHYyCxjShbnfIa6yE9Rhp3ck RaGX32+TVop2nNIg+C771JTfYMNUdb5amRno3ck7MSzny9lseVJez/tnyf/cZn5rLrwalT gWT6h0+9PTqEyWh+fReZ2vWXmzy7wBpmlIV6H6XyzaMLPR599u3vkHmYR3rPhFGgl3sh92 i0VpXpCh7EBAToiN5GEHVSrzplTri/i+dfRvIYPs7rAqeRBPK80+FBhBJMIzBA== 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=1783946107; 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=dtdC+KwOgjJIYG0XFjsrpDQvCeyoG7cVZuaW1VHXX+4=; b=phaa97b2xUG7fL8bU7+lYBXdCHYApCyJBeV2J265rQ0fbq5Xnh8gSfV/QWyosEV59LuRN3 JfROv0wx9OucqsorQ66morYJsA80l4/xZ25m/UipZEbPonwaqMSB5f712HU3Tg6PgIV3Ps Vgd0i+ZD2LRQx1LgyPEoWXzFflij/GyYWaHvKy1w990QTBjRKLqUSi5xc/JywodR6Cl06L +qC9eo08C366QHW9csoaJG+LjoGXTL+EgPEVXjmzc0H2ARM1HH0Sk/fSS67e5aB2Zk6leU dY6XolkXurvHOqtU2r10KDBeJaDoisEaqsHCf8y5Qs/fvr7Jd2Cw/EUtOND2dA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gzMMv2kktzyLh for ; Mon, 13 Jul 2026 12:35:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2641c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 13 Jul 2026 12:35:07 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: a0b62311f278 - stable/15 - locale: Do not strip the suffix from CLDRVERSION 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: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: a0b62311f278bbe101c0163d4a14a5997d9f8b89 Auto-Submitted: auto-generated Date: Mon, 13 Jul 2026 12:35:07 +0000 Message-Id: <6a54db7b.2641c.482b578f@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=a0b62311f278bbe101c0163d4a14a5997d9f8b89 commit a0b62311f278bbe101c0163d4a14a5997d9f8b89 Author: Jose Luis Duran AuthorDate: 2026-06-28 23:07:23 +0000 Commit: Jose Luis Duran CommitDate: 2026-07-13 12:31:33 +0000 locale: Do not strip the suffix from CLDRVERSION The upstream CLDR directory structure requires the full version string. Remove the ':R' modifier to fix the fetch paths. Previously this worked because major releases were published in a directory without the ".0" suffix, while the filenames included it. Starting with CLDR 47, the upstream layout changed to use the full version string exclusively, causing the fetch URLs to break for point releases. MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D57625 (cherry picked from commit 77ca1ce66283aa84258ef2323b692711df16158c) --- tools/tools/locale/Makefile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/tools/locale/Makefile b/tools/tools/locale/Makefile index 24701af85199..69988ced09c8 100644 --- a/tools/tools/locale/Makefile +++ b/tools/tools/locale/Makefile @@ -122,9 +122,9 @@ ENCODINGS= UTF-8 \ UTF-32 # CLDR files -CLDRFILES_CORE= https://unicode.org/Public/cldr/${CLDRVERSION:R}/core.zip -CLDRFILES_KEY= https://unicode.org/Public/cldr/${CLDRVERSION:R}/cldr-keyboards-${CLDRVERSION}.zip -CLDRFILES_TOOLS=https://unicode.org/Public/cldr/${CLDRVERSION:R}/cldr-tools-${CLDRVERSION}.jar +CLDRFILES_CORE= https://unicode.org/Public/cldr/${CLDRVERSION}/core.zip +CLDRFILES_KEY= https://unicode.org/Public/cldr/${CLDRVERSION}/cldr-keyboards-${CLDRVERSION}.zip +CLDRFILES_TOOLS=https://unicode.org/Public/cldr/${CLDRVERSION}/cldr-tools-${CLDRVERSION}.jar CLDRFILES_UCD= https://www.unicode.org/Public/${UCDVERSION}/ucd/UCD.zip # fetch and extract targets From nobody Mon Jul 13 12:35:08 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 4gzMMw6GW3z6l9kq for ; Mon, 13 Jul 2026 12:35:08 +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 4gzMMw4RGFz3V6s for ; Mon, 13 Jul 2026 12:35:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1783946108; 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=I1wcPA+dhYyxKSsoR5tT5AMx0a2P1F3zdIygeJMPtDA=; b=mzxzXmTA4emredIn39K4dYu2RPKXgCOb3Uz3X/0LCWdsYorXc2n1oI5uvx/uRtx4OwCf8z xswZJ890APvz5RY4scLUAQz8SgosagvqTBwR5+z3IwnKd1aN8UbSxJ1ZPY1PVyjOPIz/CW mOc0/KIdf8lUg8XPUhkSfPmSLk5Q5H3IbVRd5YMvD7crk7TIa11pkDxh5TKnbDonHP0+58 /w30pRldEzwoxqcyabn64FfkEBAv6YtbEwfFGUXCZ+Z98aCMnQBsBfIBdaoZp8XEemow8s 4yVI88pPqdTTDidqUWwF+w7oxaFruAYhxnMIoON0LdWA4mt6gFNXm2KWznwrIA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1783946108; a=rsa-sha256; cv=none; b=GNEbPVy0f5JjzzLNlWPIX821ifdnsoW9ttLhOuZt0L+67BBzhsWNNcNQEdhliyq6wQzhzn nti06PYP53PV9sl5tZg76rxp4by1QqWxfE4TfxrfVjlnETrmKIh7xJ+B3aW4WLMkpOhbQ7 bkQ3HVoaNWJKo2PNNlp4wKXFyxChfY6QqFhil8vdoreMp6UHMmQW/D59FqpSdzv3BI41U2 yJ+f95ijtMmotf7M+Xc5387ZC5l/ayVsfjdeqE3cPaiwJrscLvj9Rar89Cu1M3lXIAVLSN ziiW4C2VB240XD/CBGp2a+AKHBjXgQASPM8osk9k9uQeXq7WVxQucgBAUWKxtA== 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=1783946108; 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=I1wcPA+dhYyxKSsoR5tT5AMx0a2P1F3zdIygeJMPtDA=; b=kQkVQ+59sQBbROwB6QPfcAByOsRv/GtKjzCoHFX1tDzlK8cgaOUTiVf718oRsOsOJpW223 vDBgNPp098Fy4NNNloBLX1j/KNduqc6UKUmnZRDnNzRc7Cj0IBA3tTin6ri7/0nIt2EOmV jWHvkEV8tfW5z3S9TQ/TxDRm40hmS1xS/R+/Sm0qbQkybQqbWiqYELUV5bRzxeZo0XPdUs 6wAinsI7doDWDpLRxkB79gVQj3aZVCPs4vKggj+XFwIalnAZLOETHFUCPUviPQxnSl72wB MB6DWBjFR04/Np5vv89mefHN0JFIJaQj994urZ8rim6angHDauCPxvKsak/GBw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gzMMw3WRgzymB for ; Mon, 13 Jul 2026 12:35:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 25747 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 13 Jul 2026 12:35:08 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: e8cca479b57a - stable/15 - locale: Update Unicode to CLDR 48.2 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: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: e8cca479b57a70d98d511fa86548bcb9f51e9c0c Auto-Submitted: auto-generated Date: Mon, 13 Jul 2026 12:35:08 +0000 Message-Id: <6a54db7c.25747.641adb85@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=e8cca479b57a70d98d511fa86548bcb9f51e9c0c commit e8cca479b57a70d98d511fa86548bcb9f51e9c0c Author: Jose Luis Duran AuthorDate: 2026-06-28 23:07:30 +0000 Commit: Jose Luis Duran CommitDate: 2026-07-13 12:34:34 +0000 locale: Update Unicode to CLDR 48.2 Notable changes: - Group separator for number formatting was updated to ' in fr-CH consistent with other Swiss locales. - Some fixes to date formats including: Hv available formats were updated to match behavior in CLDR 47 due to web compatibility issues related to current JS capabilities. - Emoji annotations fixes including collisions between emoji short names. - Updated AM/PM for ko & ps to be consistent with how the wide forms are localized. Reviewed by: bapt MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D57626 (cherry picked from commit 9edbff33aa299dfe7693e18f5bff682bd7ac6b40) --- tools/tools/locale/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/tools/locale/Makefile b/tools/tools/locale/Makefile index 69988ced09c8..d6b9b15f1943 100644 --- a/tools/tools/locale/Makefile +++ b/tools/tools/locale/Makefile @@ -7,7 +7,7 @@ # Modified by John Marino to suit DragonFly needs # -CLDRVERSION= 48 +CLDRVERSION= 48.2 UCDVERSION= 17.0.0 .if ${.CURDIR} == ${.OBJDIR} From nobody Mon Jul 13 12:35:09 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 4gzMMy5cDhz6l9j1 for ; Mon, 13 Jul 2026 12:35:10 +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 4gzMMy0ppVz3Ttq for ; Mon, 13 Jul 2026 12:35:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1783946110; 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=zuOCBLzK3KuQKQs+ZNjy3M4DCgjYYy1r3yEooCrTFQ8=; b=YRlWUAbI8t60CtxWX0HtCbz7CsrQGpacQ3tdh6g/8ffdqPreqS2eeAuzYg7k/oBeBtelKF egejRjz09zjo16CaeKpE8+QLp+fREnNP+k72cIGIcMfq+uK2fZ31qaOyS/QVZbbAuzlONx I6goHierbTmxDdJtUCP0UHbr/WV0fiBm9U7v8gBT6tkErTHXEDotD3Cyo6dva+cEycx/Yl gHCqwN8fQUrA6xUQyAK/x8EBGn3k/x5UonQm+YHTbXVFc8IYbGfK2icwMOhOafSmNq3tor /aOc4+nrsu/ezOS0V1zCfkUACWFt3O6HZ9Yfi9VH83ovCodRcV1OfoDSNt511w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1783946110; a=rsa-sha256; cv=none; b=a1xmMunH9GGWg++WENfTbsO0HimBfOBkUBz1dN+JlP3OJwYQH0gaV1FiXwinIrr3iW0DaZ tpBvFr6OOybw3EzVyO3XgYnOSzG3IOcUFOi5O6Qzn1/spSGqUeBncz078x96Raw5Eaqgtp yqQSMpQ6ApvLsIeChZv6NsketvrrY4ZF+K+eq0aCGd5XIeNDFlqz3NQWHyt8Tk+h02ZPPg CYm1/TYpM/cKHhAnp/gJFsyKryOpJIeK0edPHL2EOriA7UTM4Uyfh8tymm8Xr6L7WwwplW lxNQRtEdwg4pu9mPh+4z1b9IpPftjkMXPGrbIXlkLzxRcfO6cxF7EnubNTao6Q== 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=1783946110; 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=zuOCBLzK3KuQKQs+ZNjy3M4DCgjYYy1r3yEooCrTFQ8=; b=E7K1SxvGNigmzrXnC7oXOQTAW9lU9O0U8oz7JC6VKU3No0pJQvDKR5zzZhXuINr8r8Z/v1 +YcCrNznyeCYi/tsTikryI8x5zgjerXrFKUjU5+bN4+862Z3/sK3e2+rO5oMuhXWcxIHrr 8oegc7adV2iHWONi/mh3TwEq+r3R3zvq4zPRB5KYe1vkVuJUB8BSqtKdPJmaZfwK23oAgN 7faLagqIeis29R4J0d/J2OjnSANypKhlZ8/esFlGcIExzDXQDDe1PW9gMpzMGaG3P94MyF FRrZkcnGcSwuXaTccZ4rREyevMBPIJdvDunKzhJsB9qftefjIkweZBmg32DIUg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gzMMx6jhszyWP for ; Mon, 13 Jul 2026 12:35:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 26a70 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 13 Jul 2026 12:35:09 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: cc3f89c1e053 - stable/15 - locale: make install Unicode 17.0.0/CLDR 48.2 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: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: cc3f89c1e05388df8d765418d2d8bc8f430de8ea Auto-Submitted: auto-generated Date: Mon, 13 Jul 2026 12:35:09 +0000 Message-Id: <6a54db7d.26a70.7b848019@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=cc3f89c1e05388df8d765418d2d8bc8f430de8ea commit cc3f89c1e05388df8d765418d2d8bc8f430de8ea Author: Jose Luis Duran AuthorDate: 2026-06-28 23:07:38 +0000 Commit: Jose Luis Duran CommitDate: 2026-07-13 12:34:51 +0000 locale: make install Unicode 17.0.0/CLDR 48.2 Data changes: 48.1: - Update RSD (Serbian Dinar) to use 2-digits for non-cash and 0-digits for cash. - Fix issue with tippi and bindi in Punjabi exemplars. - Fix parsing issue in numeric date+time patterns for zh_Hant and yue. - Fix issues with hour cycle display names for several languages. https://cldr.unicode.org/downloads/cldr-48#481-changes 48.2: - Group separator for number formatting was updated to ' in fr-CH consistent with other Swiss locales. - Some fixes to date formats including: Hv available formats were updated to match behavior in CLDR 47 due to web compatibility issues related to current JS capabilities. - Emoji annotations fixes including collisions between emoji short names. - Updated AM/PM for ko & ps to be consistent with how the wide forms are localized. https://cldr.unicode.org/downloads/cldr-48#482-changes MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D57627 (cherry picked from commit cfd5bdcb4ee56c658ebc7cf7ea941261d1cd7f73) --- share/colldef_unicode/Makefile | 2 +- share/monetdef_unicode/fr_CH.UTF-8.src | 2 +- share/monetdef_unicode/sr_RS.UTF-8@latin.src | 4 +- share/numericdef_unicode/Makefile | 2 +- share/numericdef_unicode/fr_CH.UTF-8.src | 14 + tools/tools/locale/etc/final-maps/map.UTF-8 | 2 +- tools/tools/locale/etc/final-maps/widths.txt | 4517 +++++++++++++++++++++++++- 7 files changed, 4536 insertions(+), 7 deletions(-) diff --git a/share/colldef_unicode/Makefile b/share/colldef_unicode/Makefile index 0a76b605502e..69f3688fa5da 100644 --- a/share/colldef_unicode/Makefile +++ b/share/colldef_unicode/Makefile @@ -7,7 +7,7 @@ FILESNAME= LC_COLLATE .SUFFIXES: .src .LC_COLLATE MAPLOC= ${.CURDIR}/../../tools/tools/locale/etc/final-maps -CLDR_VERSION= "48" +CLDR_VERSION= "48.2" .include diff --git a/share/monetdef_unicode/fr_CH.UTF-8.src b/share/monetdef_unicode/fr_CH.UTF-8.src index 84a3a0846a05..ea24690ce9fb 100644 --- a/share/monetdef_unicode/fr_CH.UTF-8.src +++ b/share/monetdef_unicode/fr_CH.UTF-8.src @@ -13,7 +13,7 @@ CHF . # # mon_thousands_sep -  +' # # mon_grouping 3 diff --git a/share/monetdef_unicode/sr_RS.UTF-8@latin.src b/share/monetdef_unicode/sr_RS.UTF-8@latin.src index 4ee8e2adfa42..264a9972df90 100644 --- a/share/monetdef_unicode/sr_RS.UTF-8@latin.src +++ b/share/monetdef_unicode/sr_RS.UTF-8@latin.src @@ -25,10 +25,10 @@ RSD - # # int_frac_digits -0 +2 # # frac_digits -0 +2 # # p_cs_precedes 0 diff --git a/share/numericdef_unicode/Makefile b/share/numericdef_unicode/Makefile index 949b7aa24019..5eed2147019f 100644 --- a/share/numericdef_unicode/Makefile +++ b/share/numericdef_unicode/Makefile @@ -11,6 +11,7 @@ FILESNAME= LC_NUMERIC LOCALES+= en_US.UTF-8 LOCALES+= fa_IR.UTF-8 +LOCALES+= fr_CH.UTF-8 LOCALES+= fr_FR.UTF-8 LOCALES+= hi_IN.UTF-8 LOCALES+= it_CH.UTF-8 @@ -90,7 +91,6 @@ SAME+= tr_TR.UTF-8 ca_ES.UTF-8 SAME+= tr_TR.UTF-8 ca_AD.UTF-8 SAME+= tr_TR.UTF-8 ar_MA.UTF-8 SAME+= it_CH.UTF-8 de_CH.UTF-8 -SAME+= fr_FR.UTF-8 fr_CH.UTF-8 SAME+= fr_FR.UTF-8 fr_BE.UTF-8 FILES= ${LOCALES:S/$/.out/} diff --git a/share/numericdef_unicode/fr_CH.UTF-8.src b/share/numericdef_unicode/fr_CH.UTF-8.src new file mode 100644 index 000000000000..f8a756dd3b7b --- /dev/null +++ b/share/numericdef_unicode/fr_CH.UTF-8.src @@ -0,0 +1,14 @@ +# Warning: Do not edit. This file is automatically generated from the +# tools in /usr/src/tools/tools/locale. The data is obtained from the +# CLDR project, obtained from http://cldr.unicode.org/ +# ----------------------------------------------------------------------------- +# +# decimal_point +, +# +# thousands_sep +' +# +# grouping +3 +# EOF diff --git a/tools/tools/locale/etc/final-maps/map.UTF-8 b/tools/tools/locale/etc/final-maps/map.UTF-8 index e7d5276ba526..cdf67b5e1f78 100644 --- a/tools/tools/locale/etc/final-maps/map.UTF-8 +++ b/tools/tools/locale/etc/final-maps/map.UTF-8 @@ -5,7 +5,7 @@ # charset: UTF-8 ###################### ################################################################################################# -# Copyright © 1991-2025 Unicode, Inc. +# Copyright © 1991-2026 Unicode, Inc. # For terms of use, see http://www.unicode.org/copyright.html # SPDX-License-Identifier: Unicode-3.0 # CLDR data files are interpreted according to the LDML specification (http://unicode.org/reports/tr35/) diff --git a/tools/tools/locale/etc/final-maps/widths.txt b/tools/tools/locale/etc/final-maps/widths.txt index 44556c718ecc..2f009f85003a 100644 --- a/tools/tools/locale/etc/final-maps/widths.txt +++ b/tools/tools/locale/etc/final-maps/widths.txt @@ -1,6 +1,6 @@ # Warning: Do not edit. This file is automatically generated from the # tools in /usr/src/tools/tools/locale. The data is obtained from the -# utf8proc 2.10.0. +# utf8proc 2.11.3. # ----------------------------------------------------------------------------- WIDTH 0 @@ -1175,6 +1175,33 @@ WIDTH 0 0 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 0 0 0 @@ -43794,6 +43821,8 @@ WIDTH 0 0 0 + 0 + 0 0 0 0 @@ -44173,6 +44202,14 @@ WIDTH 0 0 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 0 0 0 @@ -44403,6 +44440,11 @@ WIDTH 0 2 2 + 2 + 2 + 2 + 2 + 2 2 2 2 @@ -50539,6 +50581,14 @@ WIDTH 2 2 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 2 2 2 @@ -51787,6 +51837,143 @@ WIDTH 2 2 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 2 2 2 @@ -52906,6 +53093,11 @@ WIDTH 0 0 0 + 0 + 0 + 0 + 0 + 0 0 0 0 @@ -53713,6 +53905,7 @@ WIDTH 2 2 2 + 2 2 2 2 @@ -54006,6 +54199,8 @@ WIDTH 2 2 2 + 2 + 2 2 2 2 @@ -54062,6 +54257,8 @@ WIDTH 2 2 2 + 2 + 2 2 2 2 @@ -54088,6 +54285,8 @@ WIDTH 2 2 2 + 2 + 2 2 2 2 @@ -100971,6 +101170,12 @@ WIDTH 2 2 2 + 2 + 2 + 2 + 2 + 2 + 2 2 2 2 @@ -106955,6 +107160,18 @@ WIDTH 2 2 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 2 2 2 @@ -124723,6 +124940,4304 @@ WIDTH 2 2 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 *** 3784 LINES SKIPPED *** From nobody Mon Jul 13 20:49:47 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 4gzZLg3LnPz6lmkN for ; Mon, 13 Jul 2026 20:49:47 +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 4gzZLg2hhHz3fvB for ; Mon, 13 Jul 2026 20:49:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1783975787; 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=jlN4kUxUvTIbp7EXgvDYXgQlC7knuv7F8ToXuQS/YlQ=; b=a+I/8ZN8Z0koW8zBJwRbkWuws1glbeJcy+v1pGK4KUQwIawFOHti8fJDqJjk0EgPkF2fYO j2tCNtW8T5n+Ehx6noasGayWGC0Dl4AbZ1W+mY90QeajTWh+z1q/8d4kWHECF6QM2MCLsf dfzz4f9ElnrvLr73PU66KZ4hbRXniedT9AutSVwDbPO6VIAF/kUMm/7tP4Yu4rwYuhh+Lv eS+9ojmql51E1+RKEDC9IXtLMxhqpvBAs1NkBrqfLLEnX2bzw7I0u+mhMM3x6n5PKMkrce VuUm85TZ/i/e+CXJCOp+M1i4pBNLqQTKvPgDDcr9kekiQ80MmewLMfU0CTnuyw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1783975787; a=rsa-sha256; cv=none; b=Yw3ivCV4YLJq8UWtAeswpkbo7Ob/4At7BjoJNRBgDEW2aNaB6rrjnNv7bp0GM4ZivDB7XQ wZ758UqSNQPRMLeHHRKRbi8kofVOYmPqIJoSksEeqe8GDr8m72C0NBpsGUkY3lkDRTvHQe 2x6WwH4gDbVItfYvTMWkbr+QJydKJsvS+slsrWVYpqZXLkA9LSS2lIIhvNgT8fuNlxj0Ip 5+KYfAuyzbW5wOmQ3wVqje7/C8zvwOs9QA/vD3L0zqX9Bk4ZGRODNTL0IoizoAah/hTlMx S1BTz9k3JM0AmmsCB+EcVyJ0Wvo5T7vtDFIBRwOxKA4zSF6ZvmVSOBEjvt2HvQ== 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=1783975787; 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=jlN4kUxUvTIbp7EXgvDYXgQlC7knuv7F8ToXuQS/YlQ=; b=Jet5nRojhu9WywE3D2peks2SAwM33DJoqY2r51YwPcjZIJcvoJH/Qe3FrPfQmsVAvDISTQ atQnPZ892jZX91sax83dSzbxKP7EHbLIZbbK3xYfDTS17hOB061+/m8VYTgX04oK1DQj+O LNpwWhhM3TYOCn0W1nUGTXd/PgjDFH+TFgqkaOeU0m97BWK0hGofTt3JHVruwrPYECDA3N +T+CO+uhAm9yWr/oyCtsgOnmgc7O646PgMN5c960QJSYTWIaeyDNkfaig6Rv4yAus+tafk 0+J+4nTzWo9FsNasN92tXPlly3CR/MNjVZ/wJSXAt5ov/MwexOO+GNOzOj4xDQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gzZLg14GczWm for ; Mon, 13 Jul 2026 20:49:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 38877 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 13 Jul 2026 20:49:47 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Pouria Mousavizadeh Tehrani Subject: git: 7b4bad292d68 - stable/15 - if_ovpn: Fix memory leak in VNET during unload 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: pouria X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 7b4bad292d684323139e674bd9798114a3966f4e Auto-Submitted: auto-generated Date: Mon, 13 Jul 2026 20:49:47 +0000 Message-Id: <6a554f6b.38877.33f44206@gitrepo.freebsd.org> The branch stable/15 has been updated by pouria: URL: https://cgit.FreeBSD.org/src/commit/?id=7b4bad292d684323139e674bd9798114a3966f4e commit 7b4bad292d684323139e674bd9798114a3966f4e Author: Pouria Mousavizadeh Tehrani AuthorDate: 2026-07-06 16:23:56 +0000 Commit: Pouria Mousavizadeh Tehrani CommitDate: 2026-07-13 20:48:26 +0000 if_ovpn: Fix memory leak in VNET during unload Unloading if_ovpn while it's in use by other vnets causes memory leaks and panics. Fix this by reverting VNET_SYSUNINIT and adjusting the SI_SUB initialization order. Reviewed by: markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54175 (cherry picked from commit bf142ea4760bd4391092d9cc0038a0870cf7e0b2) --- sys/net/if_ovpn.c | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/sys/net/if_ovpn.c b/sys/net/if_ovpn.c index b4796fb95589..19fab11f3dde 100644 --- a/sys/net/if_ovpn.c +++ b/sys/net/if_ovpn.c @@ -2847,9 +2847,19 @@ vnet_ovpn_init(const void *unused __unused) }; V_ovpn_cloner = ifc_attach_cloner(ovpngroupname, &req); } -VNET_SYSINIT(vnet_ovpn_init, SI_SUB_PSEUDO, SI_ORDER_ANY, +VNET_SYSINIT(vnet_ovpn_init, SI_SUB_PROTO_IFATTACHDOMAIN, SI_ORDER_ANY, vnet_ovpn_init, NULL); +static void +vnet_ovpn_uninit(void) +{ + + if (V_ovpn_cloner != NULL) + ifc_detach_cloner(V_ovpn_cloner); +} +VNET_SYSUNINIT(vnet_ovpn_uninit, SI_SUB_PROTO_IFATTACHDOMAIN, SI_ORDER_ANY, + vnet_ovpn_uninit, NULL); + static int ovpn_prison_remove(void *obj, void *data __unused) { @@ -2891,12 +2901,6 @@ ovpnmodevent(module_t mod, int type, void *data) case MOD_UNLOAD: if (ovpn_osd_jail_slot != 0) osd_jail_deregister(ovpn_osd_jail_slot); - CURVNET_SET(vnet0); - if (V_ovpn_cloner != NULL) { - ifc_detach_cloner(V_ovpn_cloner); - V_ovpn_cloner = NULL; - } - CURVNET_RESTORE(); break; default: return (EOPNOTSUPP); @@ -2911,6 +2915,6 @@ static moduledata_t ovpn_mod = { 0 }; -DECLARE_MODULE(if_ovpn, ovpn_mod, SI_SUB_PSEUDO, SI_ORDER_ANY); +DECLARE_MODULE(if_ovpn, ovpn_mod, SI_SUB_PROTO_IFATTACHDOMAIN, SI_ORDER_ANY); MODULE_VERSION(if_ovpn, 1); MODULE_DEPEND(if_ovpn, crypto, 1, 1, 1); From nobody Tue Jul 14 13:52:21 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 4h012g07Jvz6llvH for ; Tue, 14 Jul 2026 13:52:27 +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 4h012f4y57z3GTG for ; Tue, 14 Jul 2026 13:52:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784037146; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cY5Y36N2LI3Z5CW4XrBcUnDwqpECWQ9QNy6bV4k46us=; b=N/Lf5JjSJfFvlAtMkIGAy0bcwB6k11gP6cTXD4uzNI6N4h4urhQAtnv9Kjdd07lCBhxd75 uQq1cX9q01nKJ+BJlBIX3bNWFcYRGWJZZGR7X1c3NBK8lngHEQiy/lkVmVcY6tXpLM3nX8 AcpbbnhIz5H7P+s++fg0yP+7EDdZzKthRr2c5weWwSNEfkLBwDTyGF6y5Pn1iHwku96zN1 OBLijo4y+t5TToCFuu1nHvLRxJBgm7YZ2ip5s/3BLiF0XlqY51AZRWPDzuXV9NmKQesGIt UqPvRWGH+hWlXgjSirV2TRcHg7q7eKOAxEJX1O2MW1Rhhh434pL+74Y/d+U65A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784037146; a=rsa-sha256; cv=none; b=ZTIA1vbQ6PP1TH0vJLnpKG0Deyat/wRxNYTUPT+d7mc7A6/DLRTDSY+yGB+wmmui6rWXYW lnM+h1zPd1wYbiY0Hfsu/q9r0ATCrbuFEuFJkWOOSWbcYn9DHaqfbsqKKvoaDY3JCm6HTj 8x1FfYiTX1wd8VXB2vwll/GrEdRD4Dcr3RS0VqGmUbImLU5/pq3TxBhJ91txalGRJGUrmN /Gs8CVtHTtaoYpH/gSgpU2BdXjuwNx3/meifVk0d7b5GHnlOE92ojQsavpX/B/U+XlTzsU 2ygAyopcxoloV0yr75VGXS2Wwo1ZeAZ0tacMcxItKhmCCThIQawU7uwx9+KhJA== 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=1784037146; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cY5Y36N2LI3Z5CW4XrBcUnDwqpECWQ9QNy6bV4k46us=; b=ZvfCvH0MEsr0jkW9pFu1COy1b0gysBsIKymEjNSsUiiu9vnS/txuXpP1HDZByV3pMHBV7W yY0ZmfwSUwna0txMwcLfE9CHWpK+KMFeX9wN57hWWE4KLtWw2iUDD5Y+RkqKRlmT/cZyGb 2gYIFErPCZZS9HHGjCBPcUpGOJ1eZOCiGM5T3MYNZg6i+AELUtenuYnFlV1o3kogT7ENr5 7eOqeyAtKZey5IsKBvUcWFtlw2W2OmcukNBHXSpwnnOhxjYopCyluHguGOBCQRRnugmPP8 BKMdWF4Z8z72j0dRGTrb04Ar3+GkuRyCLjllFS5Z02bB3javScauA50/zHnUBw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h012f3brdznRJ for ; Tue, 14 Jul 2026 13:52:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 36b67 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 13:52:21 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Goran=?utf-8?Q? Meki=C4=87?= From: Christos Margiolis Subject: git: a619438615fb - stable/15 - sound: track kqueue low watermark per-knote for mmaped channels 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: christos X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: a619438615fb6bff50b84541681cc38e55ff78c4 Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 13:52:21 +0000 Message-Id: <6a563f15.36b67.755d1b26@gitrepo.freebsd.org> The branch stable/15 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=a619438615fb6bff50b84541681cc38e55ff78c4 commit a619438615fb6bff50b84541681cc38e55ff78c4 Author: Goran Mekić AuthorDate: 2026-07-06 12:06:17 +0000 Commit: Christos Margiolis CommitDate: 2026-07-14 13:52:12 +0000 sound: track kqueue low watermark per-knote for mmaped channels Use kn->kn_sdata to track the last bs->total value for each knote attached to an mmaped channel. An event is delivered only when the total byte counter has advanced by at least c->lw since the last delivery. After delivery kn_sdata is updated to the current total. Each knote tracks its own watermark independently, so multiple knotes attached to the same mmaped channel all receive events correctly. Non-mmap channels keep the existing level-triggered behavior via chn_polltrigger(). MFC after: 1 week Reviewed by: christos Differential Revision: https://reviews.freebsd.org/D57833 (cherry picked from commit 24576c39789ca13846b9450155923ee0e377aeb4) --- sys/dev/sound/pcm/channel.c | 14 +++++++++----- sys/dev/sound/pcm/channel.h | 2 +- sys/dev/sound/pcm/dsp.c | 14 +++++++++++++- 3 files changed, 23 insertions(+), 7 deletions(-) diff --git a/sys/dev/sound/pcm/channel.c b/sys/dev/sound/pcm/channel.c index a0ee16a14386..40a08d48fb21 100644 --- a/sys/dev/sound/pcm/channel.c +++ b/sys/dev/sound/pcm/channel.c @@ -270,11 +270,15 @@ chn_lockdestroy(struct pcm_channel *c) /** * @brief Determine channel is ready for I/O * + * @param ref_total for mmaped channels, the previous byte counter + * * snapshot from which to compute the delta to + * * bufsoft->total; ignored for non-mmaped channels. + * * @retval 1 = ready for I/O * @retval 0 = not ready for I/O */ int -chn_polltrigger(struct pcm_channel *c) +chn_polltrigger(struct pcm_channel *c, u_int64_t ref_total) { struct snd_dbuf *bs = c->bufsoft; u_int delta; @@ -282,10 +286,10 @@ chn_polltrigger(struct pcm_channel *c) CHN_LOCKASSERT(c); if (c->flags & CHN_F_MMAP) { - if (bs->prev_total < c->lw) + if (ref_total < c->lw) delta = c->lw; else - delta = bs->total - bs->prev_total; + delta = bs->total - ref_total; } else { if (c->direction == PCMDIR_PLAY) delta = sndbuf_getfree(bs); @@ -316,7 +320,7 @@ chn_wakeup(struct pcm_channel *c) if (CHN_EMPTY(c, children.busy)) { KNOTE_LOCKED(&bs->sel.si_note, 0); - if (SEL_WAITING(&bs->sel) && chn_polltrigger(c)) + if (SEL_WAITING(&bs->sel) && chn_polltrigger(c, bs->prev_total)) selwakeuppri(&bs->sel, PRIBIO); CHN_BROADCAST(&c->intr_cv); } else { @@ -830,7 +834,7 @@ chn_poll(struct pcm_channel *c, int ev, struct thread *td) } ret = 0; - if (chn_polltrigger(c)) { + if (chn_polltrigger(c, bs->prev_total)) { chn_pollreset(c); ret = ev; } else diff --git a/sys/dev/sound/pcm/channel.h b/sys/dev/sound/pcm/channel.h index 6fa4338dce4a..c7f5bf93b8e5 100644 --- a/sys/dev/sound/pcm/channel.h +++ b/sys/dev/sound/pcm/channel.h @@ -260,7 +260,7 @@ int chn_read(struct pcm_channel *c, struct uio *buf); u_int32_t chn_start(struct pcm_channel *c, int force); int chn_sync(struct pcm_channel *c, int threshold); int chn_flush(struct pcm_channel *c); -int chn_polltrigger(struct pcm_channel *c); +int chn_polltrigger(struct pcm_channel *c, u_int64_t ref_total); int chn_poll(struct pcm_channel *c, int ev, struct thread *td); char *chn_mkname(char *buf, size_t len, struct pcm_channel *c); diff --git a/sys/dev/sound/pcm/dsp.c b/sys/dev/sound/pcm/dsp.c index fbe9f8a04325..60c06e27e41f 100644 --- a/sys/dev/sound/pcm/dsp.c +++ b/sys/dev/sound/pcm/dsp.c @@ -3010,7 +3010,13 @@ dsp_kqevent(struct knote *kn, long hint) return (1); } kn->kn_data = 0; - if (chn_polltrigger(ch)) { + /* + * For mmaped channels pass the knote's own reference point so the + * low watermark is tracked per-knote. Non-mmaped channels ignore + * the reference and fire based on the current amount of ready/free + * data in the buffer, so all knotes see the same live state. + */ + if (chn_polltrigger(ch, (u_int64_t)kn->kn_sdata)) { if (kn->kn_filter == EVFILT_READ) { kn->kn_data = sndbuf_getready(ch->bufsoft); if (ch->flags & CHN_F_MMAP) @@ -3025,6 +3031,7 @@ dsp_kqevent(struct knote *kn, long hint) kn->kn_kevent.ext[0] = sndbuf_getready(ch->bufsoft) / ch->bufsoft->align; } kn->kn_kevent.ext[1] = ch->xruns; + kn->kn_sdata = ch->bufsoft->total; } return (kn->kn_data > 0); @@ -3070,6 +3077,11 @@ dsp_kqfilter(struct cdev *dev, struct knote *kn) knlist_add(&ch->bufsoft->sel.si_note, kn, 1); CHN_UNLOCK(ch); kn->kn_hook = ch; + /* + * Start tracking from the current position so the first event + * fires after c->lw additional bytes have been transferred. + */ + kn->kn_sdata = ch->bufsoft->prev_total; } else err = EINVAL; PCM_GIANT_LEAVE(d); From nobody Tue Jul 14 14:56: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 4h02S82CbVz6kqgt for ; Tue, 14 Jul 2026 14:56:08 +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 4h02S76hwgz3Lj0 for ; Tue, 14 Jul 2026 14:56:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040967; 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=uoFXaaaP2Zi97RnQuBrDuKrR8JPDD/IKrP4OFzlPLKs=; b=hbTceAyvNeJuF6tAwcAyhsmrFCBHrF9nkx3DVkGSlsU4DjaFaJmMGpSIBoH7PNUXdZoNa7 D4I6xlCk9uMtTOl0xV7EGJiA0vQbvAhyXmAMeAUdfLr9FlJzsJPBG8xcj7DD5IQvcGMZ3w uvTyoQtPirwjKrvEiru2h0j3kdZscWw8fkyvCPI5KT2butsGGqYF6rOJHi05J5arLMuHx/ xeNPNm7UKqQ66BadIiRZisgOKr/aj+jdJZV9I/jfrA8+gqAuTqogDl4Q1pSQEvKt9Ls6JT ugT3Ut8TUVDxMooStxrOl1S+V9ylqC+vDNRS004ay9XYXa3nBc5YFQehyZF+wg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040967; a=rsa-sha256; cv=none; b=SOjHsNsPSweKPgtDHA1tFUqWvoOVZJ/xlkHHjWrrbuBUnsoqV3Jhq7upzuttWTPuIYLdoJ K9pF9i4XPhvcTECUeS+S8sr1ns0WqGb8GaU9TbVSyRLlQKdVWx5RKpg92hNvzWO/1eoUSm e5vtrmzeAZ6GpnMq4lZjYJlDgRDo/sSk19Bkzlf6vtyAHF2wqoq5JcK8vre2wFvmGeukUC qKyNBHMV512LRzhWeH23yqv69PkNNV1YY2twPrdrVkP0uSxUbHr5SDFuvCFyAjuA57ZfQj uM7G3WalcmCF7wMBVcu66u9DaAcP11S1z8+C6W2ZZ7H7GHmL6EgEfjnGtIOakQ== 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=1784040967; 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=uoFXaaaP2Zi97RnQuBrDuKrR8JPDD/IKrP4OFzlPLKs=; b=a53hf7DvZsITGTxxWSY7Jut4FmtpjLEo6V9LdxiAErbVixdAMLCLT2xKCOP3N9qKiFGWm0 fvthW4yrsHaZAODAmqRUxfxM3NIky9D6sGXS903H7AGGw6eiDFzANgkMrsKoYg9SpCfi/g SshNkDJDYNHiG7WvnsSDoBbuTub7Sg2/4H131s3aTYM85TkeeSMQrVVk/H0zeZnJddMeya DOoaL5WkwEA83bdNb44WPPH2pxtJ4KJolF81uQgZehrso8XGmLtab1r/q3vA1gGIldSfu9 TLPm4u49IwcCX+QMO6LyPoQFiNtbmq41lFbZV4NuWzKy6rboKQUhJEzCc5NPKg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02S74cTDzpyg for ; Tue, 14 Jul 2026 14:56:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3b3de by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:07 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 38cbd2588f0b - stable/14 - ucode: Fix validation on Intel platforms 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 38cbd2588f0b6f677f42287af425ac913da46294 Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:07 +0000 Message-Id: <6a564e07.3b3de.6ce63759@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=38cbd2588f0b6f677f42287af425ac913da46294 commit 38cbd2588f0b6f677f42287af425ac913da46294 Author: Mark Johnston AuthorDate: 2026-05-27 20:18:05 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 13:02:07 +0000 ucode: Fix validation on Intel platforms The check for the extended signature table was backwards, so we always ignored it. We should verify that the extended signature table fits within the total image size. Reviewed by: jrm, kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D57209 (cherry picked from commit 0beb172898499fff51eed4df3d9284cd1094afbb) --- sys/x86/x86/ucode.c | 32 ++++++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 8 deletions(-) diff --git a/sys/x86/x86/ucode.c b/sys/x86/x86/ucode.c index 298ce5448853..9233e9fa93a8 100644 --- a/sys/x86/x86/ucode.c +++ b/sys/x86/x86/ucode.c @@ -179,7 +179,6 @@ ucode_intel_match(const uint8_t *data, size_t *len) uint64_t platformid; size_t resid; uint32_t data_size, flags, regs[4], sig, total_size; - int i; do_cpuid(1, regs); sig = regs[0]; @@ -201,19 +200,35 @@ ucode_intel_match(const uint8_t *data, size_t *len) if (total_size == 0) total_size = UCODE_INTEL_DEFAULT_DATA_SIZE + sizeof(struct ucode_intel_header); - if (data_size > total_size + sizeof(struct ucode_intel_header)) + + if (total_size > data_size + sizeof(struct ucode_intel_header)) table = (const struct ucode_intel_extsig_table *) ((const uint8_t *)(hdr + 1) + data_size); else table = NULL; - if (hdr->processor_signature == sig) { - if ((hdr->processor_flags & flags) != 0) { - *len = data_size; - return (hdr + 1); + if (hdr->processor_signature == sig && + (hdr->processor_flags & flags) != 0) { + *len = data_size; + return (hdr + 1); + } + if (table != NULL) { + size_t extsize; + + extsize = total_size - + (data_size + sizeof(struct ucode_intel_header)); + if (extsize < sizeof(struct ucode_intel_extsig_table)) { + ucode_error = VERIFICATION_FAILED; + break; } - } else if (table != NULL) { - for (i = 0; i < table->signature_count; i++) { + extsize -= sizeof(struct ucode_intel_extsig_table); + for (uint32_t i = 0; i < table->signature_count; i++) { + if (extsize < sizeof(struct ucode_intel_extsig)) { + ucode_error = VERIFICATION_FAILED; + goto out; + } + extsize -= sizeof(struct ucode_intel_extsig); + entry = &table->entries[i]; if (entry->processor_signature == sig && (entry->processor_flags & flags) != 0) { @@ -223,6 +238,7 @@ ucode_intel_match(const uint8_t *data, size_t *len) } } } +out: return (NULL); } From nobody Tue Jul 14 14:56:08 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 4h02S90bbHz6kqZs for ; Tue, 14 Jul 2026 14:56:09 +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 4h02S86QLtz3Ll1 for ; Tue, 14 Jul 2026 14:56:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040968; 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=296jIKtA/IJQxHT7hAgQoVe9sSyfSRgTtA3J2YFnbS0=; b=juDBxLGRRZP1KXez8xBVUrpQOsaHqy6Yt1/Bq3QEJoBQT7M0qprIPmwKQl3OEedFN5lfs8 1z12hh+VvDImYycgDd4eV9MYXhCqDAE0ksyj14Xh7ve0XIPselEryaTtxI4CEtxr7dvXI+ WrMPJk70W67En6sgG1J0WQv0RZQFMdy1tnSSamnLjxMuFRWjAO0Vpl4GsktcsXuELZztS7 soHhju2Wy0efRucv22XP6euKpCxu43JAQN28HSN7FjIQOSzA10dygdvBRer1Pa+agMaAkZ +8lUKLJGZ4/Suf+Sp8ie4BVfClkLmm65rTUrcbfKzBXhv8cRMLS2Onh3BmJT/Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040968; a=rsa-sha256; cv=none; b=tGcBz00ZlkL18XpTHTIFqckaoAT1tXwcFJ7yEIdFupIMxe4G4VwBmwDwP1+P9ZjetRYtPS bp1h8muNKykQXUi1r01ruVeq2p1EvIuwRGFv1V2EnrSfMJQ4nclYelkDioY+alKj5voKIQ PsJFdLrwBIoR04MOYH7Yjwt93ltDKJEfMMtXDbmLZvZI+I+omknTMnx0T0bEucshCoZ1m2 x3dN2ZrZ1WIZco+mII50Y/m48MaPQJ/RlgfP+IqqJ/xXJDIOTXGYJ7UXw/JbYcjUwfUoBR /QV13DkJ2+yS7OqzXY9OKaEr6FA4AR8FPn1i2AMb/ps64FFfwapxo9EHKYtOHg== 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=1784040968; 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=296jIKtA/IJQxHT7hAgQoVe9sSyfSRgTtA3J2YFnbS0=; b=wSeeMrwD7Bj7BnnpPk+XEafZ2SKAcKlE9f4hnrxnhiUUng05ESalXdz6xCPehnCUcwbbn1 CP7uzkIP1at4O54N6M26spDTfIZzcUnjqYPjWcv+v+ktgQlTvPSZ2ZFdC5BHET81t8jvhU 1P6P06Q3nuIVewoDBak0s/mTzkDRSjsarZFbrHeaKnNWk8hr18r3HfLcS627FBAsiOepht dGGp+hKQpCUf2LTW3rq+JxrBaf0T1mn9hytCmL/K+lC/YQfH25Gs43DAqqLA8NuaVRShrl nChttvqYF0T19qtAZESfgCP6xcvJQ2W9Si1QakzHU8O25KWIzHtIKsA4+EnTdg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02S85570zqV0 for ; Tue, 14 Jul 2026 14:56:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3d2b2 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:08 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 451325c5e15d - stable/14 - ucode: ucode_error can be defined with static 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 451325c5e15d3dd0b385c2286984b105d2898d6f Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:08 +0000 Message-Id: <6a564e08.3d2b2.6df7c9b4@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=451325c5e15d3dd0b385c2286984b105d2898d6f commit 451325c5e15d3dd0b385c2286984b105d2898d6f Author: Mark Johnston AuthorDate: 2026-05-27 20:41:15 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 13:02:07 +0000 ucode: ucode_error can be defined with static MFC after: 1 week (cherry picked from commit 96256587b06cfcdbeb1789145f5e427831b3d732) --- sys/x86/x86/ucode.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/x86/x86/ucode.c b/sys/x86/x86/ucode.c index 9233e9fa93a8..1064c091ee1e 100644 --- a/sys/x86/x86/ucode.c +++ b/sys/x86/x86/ucode.c @@ -73,7 +73,7 @@ static const void *ucode_data; static struct ucode_ops *ucode_loader; /* Variables used for reporting success or failure. */ -enum { +static enum { NO_ERROR, NO_MATCH, VERIFICATION_FAILED, From nobody Tue Jul 14 14:56:09 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 4h02SB0gv9z6kqTx for ; Tue, 14 Jul 2026 14:56:10 +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 4h02S96lFbz3Lfm for ; Tue, 14 Jul 2026 14:56:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040969; 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=Dz2joyREsNNzBihtCTtZDlZXVgNGNlHvhOEB0tzfyxk=; b=c7griOW4WWsAgmWj2FLrw44wXJLVJBu4QJiMK4nAoYfnrSRTVga+LAVneTmNUmmujEnL2V KMbHQXSnYXQB9s1MjxFX3hACBY5JvuoLdOe+flS8FsGJ5fHFifA5MR03CMuN5A222TuHh/ 0UUWx6GkFFf3aUG/4PDc3mEehU63ZYzDegz3UgU2/mSEXcshElbmtiRn7P5sN05f0HlwMJ T+q2hU2fMt2nSGjrR7gjI9qYPj8/XSo3QXtT4qjq6qa4yBykw13+QtzFGO1D7Fdrw6vktF PeZqJI8X9vd/fVCWUa5rPVCtlc9+YRfqwe0bMAW4N/0z5jqKoHxfJyXXNX37gg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040970; a=rsa-sha256; cv=none; b=VWSL+dRO+coZ18SsIR/M8PtPcgXZ5BqzC2VW+ktFHrZ6t7Ls2IW3q6OWcTn343TT/swn2n lnt1nY2bMrHXoHiDp6wgAJN+5IFx5G/IcZyRG78XlbZKKtgqfrgH1hE5LQW3MrhWx7E54f pqSNjmX4lSwaJfsYTldU2jQJL/3YKJt9w1/53vNttqfe9wYnUnFhhiNOwyuJZ+2VJoYmg5 c6dBraPYDiZyeE7U0N7lJk3El6OMrU6z737nc0M/AwQRHVCpSUKbdSZ+nJsDZJT6SqP+yh jV9s9/cIRyzdCjHdy9v1mCdh7QP0+SLiqBgNNRigs2xPCd3VvfY/Yy+do+bFXA== 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=1784040969; 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=Dz2joyREsNNzBihtCTtZDlZXVgNGNlHvhOEB0tzfyxk=; b=F+IlRjeWYBZzIx7bscujFIQMnaKPM+1iSzDCNxyrDPQHTDJISpbx1pfydNBvRqSe0t1vJR GKk/MEUO8iTDOfZVPMAfz1iCrQnZS5UX5afY7QzxWLIb9aVtim0cExfJ/UGmJMgZ3J7UAF 9E0KMJ1nlcog/q31goOjqHNkp1nNCF8O5BFGcjoCupOZVNyhQT6MWrU6mXrlyfA6PmA1lo l7KNE4A+squJMLxM6IyYJAErmlNEEqSXCZrr3bU74e/ZW9OjIwtXLUZiV6BUL3p1Qf/en6 cjAZHE0mSrXKxTDpyNk6YCrMKYL51JKsi6rHB47fzRZ1DZw2etP3EMe0+kdp4g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02S95lclzqRN for ; Tue, 14 Jul 2026 14:56:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3dad6 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:09 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 4542cc1d14bf - stable/14 - kernel: Enable -fstack-protector-strong by default 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 4542cc1d14bfa965c51093b1f1aa5d5ce11be3e0 Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:09 +0000 Message-Id: <6a564e09.3dad6.cd8a76e@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=4542cc1d14bfa965c51093b1f1aa5d5ce11be3e0 commit 4542cc1d14bfa965c51093b1f1aa5d5ce11be3e0 Author: Mark Johnston AuthorDate: 2026-05-22 14:45:52 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 13:02:07 +0000 kernel: Enable -fstack-protector-strong by default This extends stack canary use to all functions which define arrays on the stack, not just those which operate on byte buffers. This option would have made it harder to exploit SA-26:18.setcred and SA-26:08.rpcsec_gss. The change bloats the amd64 kernel text by about 350KB and increases the number of covered functions from ~1500 to ~9000 (within the kernel itself, i.e., not counting kernel modules). Reviewed by: olce, olivier, emaste MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D56870 (cherry picked from commit 8deebce931fa9b469cf28a082038a64caf972602) --- sys/conf/kern.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/conf/kern.mk b/sys/conf/kern.mk index f0c35bdeaa1f..daa637f038eb 100644 --- a/sys/conf/kern.mk +++ b/sys/conf/kern.mk @@ -234,7 +234,7 @@ CFLAGS+= -fwrapv # Stack Smashing Protection (SSP) support # .if ${MK_SSP} != "no" -CFLAGS+= -fstack-protector +CFLAGS+= -fstack-protector-strong .endif # From nobody Tue Jul 14 14:56:10 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 4h02SC3BkTz6kqV2 for ; Tue, 14 Jul 2026 14:56:11 +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 4h02SC03ZJz3LxM for ; Tue, 14 Jul 2026 14:56:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040971; 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=eUWA8V1TdOeM2OPgQyJfbHX7bx+9ZgamRiftPrAS8fY=; b=SwRduyQrPML5XFUDX3cYqgmJoJSRwsebNHmJP+sag/dD8iPAJP9j2cNWsF6RYqrk4vmdiq RWgm0VOPk9a2E1Qvr1GJtoz713kxwqltJts4MjbdM6luQhnRtqjH/vnxPXnbbI1J/Y/wUL GzFvObL3VSkJ4F6aiw2iTSEstIgAGDYfL5vBombVLQLSpRg99wS3F94uy4P2CZSA8tKjL4 8Cg1BK/bGgS4B8yRZwo2yqg+K42QeIzA+Cwe8VE/XLwgAtk7On0TAhy2+zYj4qoa6kkDeO tWt50a3iKMgRgbmrXYpx0UrC3d9dNZwBpgsh+HWPLdzJYdwzV5CDLnlwu4mOvQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040971; a=rsa-sha256; cv=none; b=cwpD3DIzApbYezkfy5+zM2yWJ964qRnl4XZhIDdELTkaEVIJz83m6TpUK9x3mccnBCqD7H N1eh18crKC80D6mFBjxXcz9XG9OCRy2HmUnfkp30kIDHRp89UwizmQ7NkBr13ZXhxsHtdM OO7WUGeCd2um1ZsFFiZft+Lj0P17CVtcbglzdiFjFWmqdNRw+8SsFidY/XcvyLFGSobZ+5 NAMy8kc2gWKKRiZKfBWijS+DBumYFeueh2Q3AvVNJW+jgfOU56sqbIAe6Qww6GhUz/JZ2g S6KJWyeHKzdocLOB7LzvyRtffligsAj1+ry90pe1KCcE+8UznVd5X3G/Qwzlnw== 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=1784040971; 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=eUWA8V1TdOeM2OPgQyJfbHX7bx+9ZgamRiftPrAS8fY=; b=HjHn5Q2A6D/8e/pA3KIPwg6/rTu7EFP4MiPALkZBp2XvM4tg6lSbki6cnlD7wMCbPuxeFP ZuP07P3/9FW/3Vd4sZAviYSDDbUcWzApjcPiasYt5uE8hnqRH4zj4u2HoP4whiL1zZvrs4 QESyR3uE3Z/xzCLfQ1LCp0kJZ2Ap4xunDQa+bjtFh0c2+fZZZZSB3EwWRsJz2Yjfovy/Ep 1tBEz7Q5PQaGUg8aSoqeAA5Oy0Q4WJYv0hAW2XlFwTu2kb379qw6PnoWS0ZL4Pls8YPdHN aUhLK1HaAi9QKJHdLoXD4e2XZIZo0bHAD8ImFFdsNhm+iUKnWyKnREGo38i7tA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02SB68V9zqV1 for ; Tue, 14 Jul 2026 14:56:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3c7ce by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:10 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 4b539c58e986 - stable/14 - libalias: Serialize updates to the global instance list 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 4b539c58e986ad46d2180abba33796511669124f Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:10 +0000 Message-Id: <6a564e0a.3c7ce.348bbdb1@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=4b539c58e986ad46d2180abba33796511669124f commit 4b539c58e986ad46d2180abba33796511669124f Author: Mark Johnston AuthorDate: 2026-06-08 22:46:32 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 13:02:07 +0000 libalias: Serialize updates to the global instance list libalias maintains a global list of all libalias handles. The list was updated without any locking, but nothing prevents updates from running concurrently. MFC after: 1 week (cherry picked from commit 2ff705f32a2033201a8f83f1ade5ddbc0460387d) --- sys/netinet/libalias/alias_db.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/sys/netinet/libalias/alias_db.c b/sys/netinet/libalias/alias_db.c index 4bb95549aaaf..365e89138ce6 100644 --- a/sys/netinet/libalias/alias_db.c +++ b/sys/netinet/libalias/alias_db.c @@ -34,6 +34,7 @@ #include #include #include +#include #include #include #else @@ -61,6 +62,10 @@ #include "alias_db.h" +#ifdef _KERNEL +static struct mtx list_mtx; +MTX_SYSINIT(libalias_list, &list_mtx, "libalias list lock", MTX_DEF); +#endif static LIST_HEAD(, libalias) instancehead = LIST_HEAD_INITIALIZER(instancehead); int LibAliasTime; @@ -2099,8 +2104,14 @@ LibAliasInit(struct libalias *la) /* kernel cleans up on module unload */ if (LIST_EMPTY(&instancehead)) atexit(finishoff); +#endif +#ifdef _KERNEL + mtx_lock(&list_mtx); #endif LIST_INSERT_HEAD(&instancehead, la, instancelist); +#ifdef _KERNEL + mtx_unlock(&list_mtx); +#endif #ifdef _KERNEL LibAliasTime = time_uptime; @@ -2167,8 +2178,14 @@ LibAliasUninit(struct libalias *la) UninitPacketAliasLog(la); #ifndef NO_FW_PUNCH UninitPunchFW(la); +#endif +#ifdef _KERNEL + mtx_lock(&list_mtx); #endif LIST_REMOVE(la, instancelist); +#ifdef _KERNEL + mtx_unlock(&list_mtx); +#endif LIBALIAS_UNLOCK(la); LIBALIAS_LOCK_DESTROY(la); free(la); From nobody Tue Jul 14 14:56:06 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 4h02SC6w4lz6kqV4 for ; Tue, 14 Jul 2026 14:56:11 +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 4h02SC56pPz3LxW for ; Tue, 14 Jul 2026 14:56:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040971; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZNRJQJTR2/kNPzxSQBu1aFs/5Ib1/5vLLefg1TLzpXk=; b=dV+jblzA+74fTbLHIS6IjbidPfCqBqFaCywa9nWmkm+kr3iOD40H6lWgYwJLMY6qS8hCg/ z04Vg/sH0SqgxpzTddMV9aUrl4DvU8jvpWYuu/gWZdN25vjIa559rWUNSo/Sbf2GzmK1A5 fzyRYE90UBzcvm3IgtZ4NEf76OoJiSd381HgZmzUeZ0qy/fL3X4AXFXchRVEiT/Q2YgDNu AngtcHuDpvuDYIioPUUxIjYnKtILzLDp3WD3MOnJc4RCGb5yM0TQi1YpO18OPJvFhQGaGK mijQTFPg4Zrnv9B4LopnKzzi8Ji+1BwMzzqnVy+uZ8199QgiXyiifPE9ABnF5g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040971; a=rsa-sha256; cv=none; b=gaas3omRHJO5qYaeFkrUAxwYW+aqUU1jcI56X0SNJhVfVuwz4oDBJf6IX+gYEdKRInWfQa agYIjjpZDaQDMX0Qn2zv0q3YcNy/h/CAChKUGu5++b0mTj48CcFRaTp7xHbKCK/gknDpOH vlpAWMTrG9qqmgdMMNR8/V9VDp384hy1nUztdteMS9MJNjP77mljSJ3k45e9hMTAeyvMuH 4okV34Mczw1ToXgBJ4xpKzh9Rf2UKpDm45KIv4fwFx2LjisFrmGrPmZs+O+559DKO54krw 7TkTWj67dsqSG53VR6EpdLUJTv/nViEbxLxsKIWTJQN2y0nQWOcjhFnZHNA7tw== 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=1784040971; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZNRJQJTR2/kNPzxSQBu1aFs/5Ib1/5vLLefg1TLzpXk=; b=X1tnB+4gIgCFZTfjKfT3yS4UwxeOLi7y0Fk6osxCnLnwMPkpHgkBP81DFXdWdCWs5DIchg 3rF1g5A57t/eVAufiqLZlz+zWdMecToqnIWp6J9tJ5vBcOX/801BuJ+hb/1guUfOk31PKO LHK4fscqCk4bFG1MOOF4ZYLIzP23RVW39INy8y9N1C/fZM8WswoO15ziNfNjAcYXUkpWjz m/3EAB6tThKpwC/ojulopHqp6sMfvqW2BQv3rNP2y1lBoakYmPd6rfxaFgWtDjsLtAXT3N iNggute+MyuOIQLfwv+zR6jFYC4KjEitwiz8Mx4KjFSN4kYF1BcFYTZmwHbahQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02SC3grjzqFy for ; Tue, 14 Jul 2026 14:56:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3d688 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:06 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Chuck Silvers From: Mark Johnston Subject: git: 1e857a99478b - stable/14 - x86/ucode: add const where appropriate 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1e857a99478b77b862380d5f64c127bde0f7c9ac Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:06 +0000 Message-Id: <6a564e06.3d688.5f1ad6a7@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=1e857a99478b77b862380d5f64c127bde0f7c9ac commit 1e857a99478b77b862380d5f64c127bde0f7c9ac Author: Chuck Silvers AuthorDate: 2024-02-13 16:15:25 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 13:02:07 +0000 x86/ucode: add const where appropriate Sponsored by: Netflix Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D43865 (cherry picked from commit fd24a63a38d0d4cb4f5041ef232036abe09d9d4f) --- sys/x86/include/ucode.h | 2 +- sys/x86/x86/ucode.c | 40 +++++++++++++++++++++------------------- 2 files changed, 22 insertions(+), 20 deletions(-) diff --git a/sys/x86/include/ucode.h b/sys/x86/include/ucode.h index cf9c756fc8f3..e97d41c89ed0 100644 --- a/sys/x86/include/ucode.h +++ b/sys/x86/include/ucode.h @@ -56,7 +56,7 @@ struct ucode_intel_extsig_table { } entries[0]; }; -int ucode_intel_load(void *data, bool unsafe, +int ucode_intel_load(const void *data, bool unsafe, uint64_t *nrevp, uint64_t *orevp); size_t ucode_load_bsp(uintptr_t free); void ucode_load_ap(int cpu); diff --git a/sys/x86/x86/ucode.c b/sys/x86/x86/ucode.c index ee398921a243..298ce5448853 100644 --- a/sys/x86/x86/ucode.c +++ b/sys/x86/x86/ucode.c @@ -51,14 +51,14 @@ #include #include -static void *ucode_intel_match(uint8_t *data, size_t *len); -static int ucode_intel_verify(struct ucode_intel_header *hdr, +static const void *ucode_intel_match(const uint8_t *data, size_t *len); +static int ucode_intel_verify(const struct ucode_intel_header *hdr, size_t resid); static struct ucode_ops { const char *vendor; - int (*load)(void *, bool, uint64_t *, uint64_t *); - void *(*match)(uint8_t *, size_t *); + int (*load)(const void *, bool, uint64_t *, uint64_t *); + const void *(*match)(const uint8_t *, size_t *); } loaders[] = { { .vendor = INTEL_VENDOR_ID, @@ -68,8 +68,8 @@ static struct ucode_ops { }; /* Selected microcode update data. */ -static void *early_ucode_data; -static void *ucode_data; +static const void *early_ucode_data; +static const void *ucode_data; static struct ucode_ops *ucode_loader; /* Variables used for reporting success or failure. */ @@ -104,7 +104,7 @@ log_msg(void *arg __unused) SYSINIT(ucode_log, SI_SUB_CPU, SI_ORDER_FIRST, log_msg, NULL); int -ucode_intel_load(void *data, bool unsafe, uint64_t *nrevp, uint64_t *orevp) +ucode_intel_load(const void *data, bool unsafe, uint64_t *nrevp, uint64_t *orevp) { uint64_t nrev, orev; uint32_t cpuid[4]; @@ -141,9 +141,10 @@ ucode_intel_load(void *data, bool unsafe, uint64_t *nrevp, uint64_t *orevp) } static int -ucode_intel_verify(struct ucode_intel_header *hdr, size_t resid) +ucode_intel_verify(const struct ucode_intel_header *hdr, size_t resid) { - uint32_t cksum, *data, size; + const uint32_t *data; + uint32_t cksum, size; int i; if (resid < sizeof(struct ucode_intel_header)) @@ -161,7 +162,7 @@ ucode_intel_verify(struct ucode_intel_header *hdr, size_t resid) return (1); cksum = 0; - data = (uint32_t *)hdr; + data = (const uint32_t *)hdr; for (i = 0; i < size / sizeof(uint32_t); i++) cksum += data[i]; if (cksum != 0) @@ -169,12 +170,12 @@ ucode_intel_verify(struct ucode_intel_header *hdr, size_t resid) return (0); } -static void * -ucode_intel_match(uint8_t *data, size_t *len) +static const void * +ucode_intel_match(const uint8_t *data, size_t *len) { - struct ucode_intel_header *hdr; - struct ucode_intel_extsig_table *table; - struct ucode_intel_extsig *entry; + const struct ucode_intel_header *hdr; + const struct ucode_intel_extsig_table *table; + const struct ucode_intel_extsig *entry; uint64_t platformid; size_t resid; uint32_t data_size, flags, regs[4], sig, total_size; @@ -187,7 +188,7 @@ ucode_intel_match(uint8_t *data, size_t *len) flags = 1 << ((platformid >> 50) & 0x7); for (resid = *len; resid > 0; data += total_size, resid -= total_size) { - hdr = (struct ucode_intel_header *)data; + hdr = (const struct ucode_intel_header *)data; if (ucode_intel_verify(hdr, resid) != 0) { ucode_error = VERIFICATION_FAILED; break; @@ -201,8 +202,8 @@ ucode_intel_match(uint8_t *data, size_t *len) total_size = UCODE_INTEL_DEFAULT_DATA_SIZE + sizeof(struct ucode_intel_header); if (data_size > total_size + sizeof(struct ucode_intel_header)) - table = (struct ucode_intel_extsig_table *) - ((uint8_t *)(hdr + 1) + data_size); + table = (const struct ucode_intel_extsig_table *) + ((const uint8_t *)(hdr + 1) + data_size); else table = NULL; @@ -318,7 +319,8 @@ ucode_load_bsp(uintptr_t free) uint32_t regs[4]; char vendor[13]; } cpuid; - uint8_t *addr, *fileaddr, *match; + const uint8_t *fileaddr, *match; + uint8_t *addr; char *type; uint64_t nrev, orev; caddr_t file; From nobody Tue Jul 14 14:56:11 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 4h02SD539fz6kqh4 for ; Tue, 14 Jul 2026 14:56:12 +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 4h02SD1zcgz3LgD for ; Tue, 14 Jul 2026 14:56:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040972; 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=/ovVxOrjjqxnpDF/OYOS9Fw/JtJrzYtEIY+n4efFrqo=; b=CIRtisiDG9lNd3OrkdoGGGm3/ztaiZ5j1pgBLTXJV3wB/o0eTto8oi6MyUvO/OahfGefHY Wo5rE6ArRtxBh/O6ha2Y0BqZUe1ZKlNN13txcYxmH0wvS+QvEer56ydTGV8U9DbUzuz7Re zEfoSJy4/rRfPvAdaIVDI6Euq0KA+kymMdLIdhN1ckcvpBgRxgWZTuhby7cHKKshI9Bm4k cDOetHZZpukkiMBrpRmxeezWu3DHGa9ohtrrr9mPBi17TrUIs/0dkLL1HCBr255R9Fzsjv dkhef4whH3a0KGCU/zGxzq1KMHQ1RT+WjohiQCTu4KYcqGRi8teO+f3mejDh/Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040972; a=rsa-sha256; cv=none; b=vW9DLwOW1TkXxOD8qVU1Z3SsdNsp9Szd8UjRi2yKQtBCHih9w+NA/VzVUrELI1JHgLL9uh YSLe1E3yAHiqwQHDpmX5Y6zVJMWFxM6GcINc0e83YxVjfqnR9fnQG76srSZzCQPhRwbExZ 6OUWkkEZRGb8WyrPkPdgRGGtFyoqrA3oodAqmynn/k7VRphALfuLP0wARC8ctrECSdMzm/ RWiSEWQUsTVfeK0I82ABIKCevLMzzsGCcCFUJPlMOCSXTgSh5spERCF72rxsmcAJ0psBl6 l5dxRXWuoO6c1sHBMjUEgPi5z1T7jZQSMnag6CUpDu6hOpdoc6ubnHJpf+H28w== 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=1784040972; 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=/ovVxOrjjqxnpDF/OYOS9Fw/JtJrzYtEIY+n4efFrqo=; b=VPrs5ns3J5hBo48SXgKFbR+2CnHgCmvKXxra4tDh0lHQj31wVryYlcMhY+j38scs95ynnM 9YuUO6/2XUzmSlai0y//eTAWLJPmRoxWYSQmoQWs+4G0+5hC+1hrHmj8BBqyElmPAwNaaf +ASBhvDfqOIE4f+HfRAmV0LMRlnmk0Waqiv4oC0wfOBpfw6Ppe3pWul7b6qhknA1sdBMe8 gXZJKldIg8gbAyycYI9UyE3JoVIrt6DKD+B5MAajejUlbzlWtFyin+UoCTfzCeoxAM26NB L0lfa3rxRJYFzCFwQBIBic3K2WHLLfvwwShwi+/RIKCwNUkM0Hzn4g+Yx7c6ow== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02SC6d5RzqJ6 for ; Tue, 14 Jul 2026 14:56:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3b3e2 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:11 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: f49ca172b70e - stable/14 - iconv.3: Fix formatting of the error section 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f49ca172b70ef22ca0e2b9b4b486f4b537507c76 Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:11 +0000 Message-Id: <6a564e0b.3b3e2.4a83c6c4@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=f49ca172b70ef22ca0e2b9b4b486f4b537507c76 commit f49ca172b70ef22ca0e2b9b4b486f4b537507c76 Author: Mark Johnston AuthorDate: 2026-06-08 22:46:08 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 13:02:07 +0000 iconv.3: Fix formatting of the error section MFC after: 1 week (cherry picked from commit c491c2db2f37399eba7a356c4bfa298d64012101) --- lib/libc/iconv/iconv.3 | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/libc/iconv/iconv.3 b/lib/libc/iconv/iconv.3 index 577b537e5c21..d20171cf5717 100644 --- a/lib/libc/iconv/iconv.3 +++ b/lib/libc/iconv/iconv.3 @@ -238,6 +238,7 @@ There is no converter specified by and .Fa dstname . .El +.Pp The .Fn iconv_open_into function may cause an error in the following cases: From nobody Tue Jul 14 14:56:13 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 4h02SF3bG9z6kqdh for ; Tue, 14 Jul 2026 14:56: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 4h02SF1Q5Bz3Lxs for ; Tue, 14 Jul 2026 14:56:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040973; 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=rWNgVKaFsH+x/o3rIguVqK4YDvaTuyPv6BsHZX4KJeQ=; b=d9xB+7i2dQjW3Qky1qra8bbYsfmwHxopKStWK2fnhkzb6MELnFYirCUFT4CEoWjIThymnk fWV+O+alrRyH/rmc7SZQuEHNMnIAuTkvHE3iJsvFPFR3Xiouqnj5IgnfZpDtc9n+7OTZ2b eOd6fp2j3Ifsf4U33RbJxYLp2HuMJCKC+V3nnhnLCn4YezGp1tM3CEaopVZnpy6krjrXoK aPWkrI1MJMaa7IJkDkTktyINYZfaIxtEe7r5HKaE3+WNPfHTZt9k3LZDseqkGhez6uydNa 4uox8IYE1dFRXSWXuGrmQnSZ5L+VOISsn0jOEFXDBlX9ope+4/cfuGJ1oM1XQg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040973; a=rsa-sha256; cv=none; b=wsmNik5ldypF2zsin+ih4FaUJtp2lEFA67HEjZg01AYttNt6hULW9AXJ/AxWm0P+iydgDc YwHaJapQNmwy9GVh5POs4VeEgz1O4PsYQI9YXDCjPyQ173OnO0479N/R24OWXen6808FHb iJgbnHv9BN4GTLizwakv8AAXgQcDWC6z+HWMRiQBFu9jr+Rm4a0ECO0915EMalbRhVRhqO JHnk6d0hoAJ1RuKXJ/+3Og9eokflCFbEvIdNo0zrihyF+Aho3dYGgP5r0LaTrL4OeM2Ni3 FmhxewrBiNEJCH91Z92ii2q+iwSHob3RO4B3EUeIwpAx5cbH4cTBa1pvuXDJOQ== 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=1784040973; 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=rWNgVKaFsH+x/o3rIguVqK4YDvaTuyPv6BsHZX4KJeQ=; b=xjLS/QcBRGMUC7klmrFVWR3O1/RxBAmDctsRxRM7ipkAE4ZPOJRTCSaMfuuaLIScy4xTUO YgN+HjeDd2JRGjCb9Ahuq6FEjjA/dMrcDFyw8VUJ7dHeIGXLcosFCSkVgoQ8NaysMptOU7 UKh906h+e/AOgowwvuCPmnNwX90a5JLC2NUn7XTB6QU9ucGZ4Za4vyN+h2lDGTAqu5Na7O UPHjJQ9j4ipVxJO61Tz1bu1mKRX7drgiqQdCiORqRdCAeDt5gT0QigWDs6koy4tkIoKSIL F9sExkIeaLngtT3gDwuplndmBmXBrIAH5ZbgoC9MblJs3hKMuLUPqke/kZ/O7Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02SF0B2Wzq5H for ; Tue, 14 Jul 2026 14:56:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3d68d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:13 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: d4b1fe786860 - stable/14 - netinet tests: Fix leaks in ip6_v4mapped_test 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d4b1fe786860c0ab56c14a08b9555816fd44bd52 Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:13 +0000 Message-Id: <6a564e0d.3d68d.419f47c9@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=d4b1fe786860c0ab56c14a08b9555816fd44bd52 commit d4b1fe786860c0ab56c14a08b9555816fd44bd52 Author: Mark Johnston AuthorDate: 2023-10-20 14:05:58 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 14:08:40 +0000 netinet tests: Fix leaks in ip6_v4mapped_test Reported by: Coverity MFC after: 1 week (cherry picked from commit 6ad6929974e6394d57a40f7d43c899963c6ae5ec) --- tests/sys/netinet/ip6_v4mapped_test.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tests/sys/netinet/ip6_v4mapped_test.c b/tests/sys/netinet/ip6_v4mapped_test.c index d4c4ed526ab5..bbc8d11d63ef 100644 --- a/tests/sys/netinet/ip6_v4mapped_test.c +++ b/tests/sys/netinet/ip6_v4mapped_test.c @@ -294,8 +294,7 @@ ATF_TC_BODY(tcp_v4mapped_bind, tc) error = connect(csock, &su_mapped.saddr, su_mapped.saddr.sa_len); if (error != 0 && errno == EADDRINUSE) { /* This is the specific error we were looking for. */ - ATF_REQUIRE_MSG(error == 0, - "client connect %d failed, " + atf_tc_fail("client connect %d failed, " " client had duplicate port: %s", i, strerror(errno)); } @@ -312,6 +311,8 @@ ATF_TC_BODY(tcp_v4mapped_bind, tc) } ATF_REQUIRE_MSG(i >= 1, "No successful connections"); ATF_REQUIRE_MSG(got_bind_error == true, "No expected bind error"); + + ATF_REQUIRE(close(lsock) == 0); } ATF_TC_CLEANUP(tcp_v4mapped_bind, tc) { @@ -365,6 +366,7 @@ ATF_TC_BODY(udp_v4mapped_sendto, tc) ATF_REQUIRE_MSG(error == 0, "getaddrinfo: %s", gai_strerror(error)); memcpy(&sin6, aip->ai_addr, sizeof(sin6)); sin6.sin6_port = port; + freeaddrinfo(aip); ch = 0x42; n = sendto(s, &ch, 1, 0, (struct sockaddr *)&sin6, sizeof(sin6)); @@ -383,6 +385,9 @@ ATF_TC_BODY(udp_v4mapped_sendto, tc) n = recv(ls, &ch, 1, 0); ATF_REQUIRE_MSG(n == 1, "recv() failed: %s", strerror(errno)); ATF_REQUIRE(ch == 0x42); + + ATF_REQUIRE(close(s) == 0); + ATF_REQUIRE(close(ls) == 0); } ATF_TP_ADD_TCS(tp) From nobody Tue Jul 14 14:56:14 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 4h02SG59nJz6kqhH for ; Tue, 14 Jul 2026 14:56:14 +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 4h02SG23g0z3Lll for ; Tue, 14 Jul 2026 14:56:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040974; 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=WLYD5pkw37lA9n68VU+cInFE+S75HZ7QztZBnIFR+So=; b=QrrrlTtlesGAS2TJ1lGmQMzOAD0lVd7fUd5XYIUeyyTCqxCt6UdkPnCxuxk5+UcIAO9xgW ejh7057FWzKBD955yi01XRznSyN3L8Fc/EzourwmU15oAvOIO73gEkBZMJiet3DxHhD2+w tEu2iZdlbxNwcqH5LvOERd4kmDl9YP2jl6CQtDRt2u1P0jdOH6gagnV4Vj6R8HIm5I7P6C 4Qr/1BYLdRaodK0Zvsfnv/K8bQHEjenBgCU9hLQgGObSKBUynJWK2GUs1KdYCaD9PCpP8A kLNzk48Jug0gaMo1C+a5DKjjdvZc+eUXhdIACIVq8H4QTmJ369iodiD0B18Srw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040974; a=rsa-sha256; cv=none; b=v0o+gWqC4CcSPxsxv1OeYCMdT28UYz/PYYV5BO5il06L2b0KkebSjalbQwmoQLHKH5V8nL xsDvtiamjgdTZrsPYQ5s2vD9EQ34PoMAFdxPzfN2YxMKY8SF0NGWvecx6WXVGFcgrP9Yzg ark2QUNlgg3niQBjreIyEtO5Q03QODsQUYMq2JszI27Wr1RpIvBVaZPv5EeFfqkXLOdtbN +KRGvb16sQoQ6IogiuuPcZ9t3mMQ+V63HlPajpyri122ijbFttWK0lFUtaXOFhdhBA99P6 2GGo69rS/1gQRW6edbF+sQYpMvKpmI4LcVN29FRMG3MetQWbiJtSbcMXyrknNw== 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=1784040974; 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=WLYD5pkw37lA9n68VU+cInFE+S75HZ7QztZBnIFR+So=; b=IFA3YrsIzgrBr98iTZt5i5DKBMAQeBcj2o5hQ7yIVc857OIOu4i3D2XFlcXXil8gn1+ZCW KX5bgIaQLgT+ojmCR9despwlZnWUmgnKYC0aPpk7jDLBOsMl9c5/CfHNjCrbidWNpr1S7C +NXhKXuFPRsYtkGw9uF1rOPOw0+0jw2mJp6wZddDmjgyBJa2a/HP01I06T6TcyuzHyZbr3 YGnuSuf2QB4FZBasuw7XhNNkosXy18tzGCLrM8RRQikbWtfwqk8UXJxYSpGTWputoddB2F N8zV+jHggX1rO8Nqs1qdfBH2DS8H1LlY4iyMTaagyccvhQriqo5JV4GT6rAubw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02SG0xH7zpn2 for ; Tue, 14 Jul 2026 14:56:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3da5b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:14 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 1d5f1086c486 - stable/14 - queue.3: Add MLINKs for *_EMPTY_ATOMIC 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1d5f1086c4866a5e851be423687d73cb948f3222 Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:14 +0000 Message-Id: <6a564e0e.3da5b.1f5e31f4@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=1d5f1086c4866a5e851be423687d73cb948f3222 commit 1d5f1086c4866a5e851be423687d73cb948f3222 Author: Mark Johnston AuthorDate: 2025-11-10 15:30:50 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 14:08:40 +0000 queue.3: Add MLINKs for *_EMPTY_ATOMIC MFC after: 1 week Fixes: d2870b8666f2 ("queue: Add atomic variants for *_EMPTY") (cherry picked from commit 1563da200d4d3d56799267f1bbc58933a6c21331) --- share/man/man3/Makefile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/share/man/man3/Makefile b/share/man/man3/Makefile index 0cabb74c6266..42e648828cf3 100644 --- a/share/man/man3/Makefile +++ b/share/man/man3/Makefile @@ -201,6 +201,7 @@ MLINKS+= Q_SIGNSHFT.3 Q_SSIGN.3 \ MLINKS+= queue.3 LIST_CLASS_ENTRY.3 \ queue.3 LIST_CLASS_HEAD.3 \ queue.3 LIST_EMPTY.3 \ + queue.3 LIST_EMPTY_ATOMIC.3 \ queue.3 LIST_ENTRY.3 \ queue.3 LIST_FIRST.3 \ queue.3 LIST_FOREACH.3 \ @@ -222,6 +223,7 @@ MLINKS+= queue.3 LIST_CLASS_ENTRY.3 \ queue.3 SLIST_CLASS_ENTRY.3 \ queue.3 SLIST_CLASS_HEAD.3 \ queue.3 SLIST_EMPTY.3 \ + queue.3 SLIST_EMPTY_ATOMIC.3 \ queue.3 SLIST_ENTRY.3 \ queue.3 SLIST_FIRST.3 \ queue.3 SLIST_FOREACH.3 \ @@ -244,6 +246,7 @@ MLINKS+= queue.3 LIST_CLASS_ENTRY.3 \ queue.3 STAILQ_CLASS_HEAD.3 \ queue.3 STAILQ_CONCAT.3 \ queue.3 STAILQ_EMPTY.3 \ + queue.3 STAILQ_EMPTY_ATOMIC.3 \ queue.3 STAILQ_ENTRY.3 \ queue.3 STAILQ_FIRST.3 \ queue.3 STAILQ_FOREACH.3 \ @@ -268,6 +271,7 @@ MLINKS+= queue.3 LIST_CLASS_ENTRY.3 \ queue.3 TAILQ_CLASS_HEAD.3 \ queue.3 TAILQ_CONCAT.3 \ queue.3 TAILQ_EMPTY.3 \ + queue.3 TAILQ_EMPTY_ATOMIC.3 \ queue.3 TAILQ_ENTRY.3 \ queue.3 TAILQ_FIRST.3 \ queue.3 TAILQ_FOREACH.3 \ From nobody Tue Jul 14 14:56:15 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 4h02SJ10z2z6kqxn for ; Tue, 14 Jul 2026 14:56:16 +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 4h02SH3M5pz3LyF for ; Tue, 14 Jul 2026 14:56:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040975; 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=oJVopJYT4iNE+pwwBFmKbDBV9UP4GXKYaWtztX2WwfQ=; b=GAir2OWc7adpGcBhEa4tpIe+cdbx1UReD5F7lej+1BKyWYm3NyPCHvAvBEpCCiMgH/rriB Ae1ryXNgOgPggFs7uxNGlWeOUpy+0akkvhIS/DfxhM5Brf7+f3zG5KqVqbduJrnTHLetji YVgGamrMAjN6GzajEThRMpKnV58RRg8aeCnWEFN55HNafWFLCGl4gLDqQ4t8RiBJFvfHGH Cxu/bLtq3WRByEbAzAbt4IkhCDx6E5o1aBg+Dgo4jEFxBx0OFgL+GM+N4LbvjUV2JZaaIP SUeeWnElGOvDD7G5g2721uUVQ7U+3IXn/2889lqVvAK8mUVo+qJSPJDh3a9x8Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040975; a=rsa-sha256; cv=none; b=Mq2zLRblXn/qDPaQeRCM/5/eSNH0JL/oGaVnJLNRcTLdysf/zV5ToLpSsG+OaxLDni4eb8 0ksH7pMPUunuonocNVpoU+psP23y+cfpcli13lxfyGNooH9/3cberJ9bI0S8RI3b6Ys95I Ov9tcxYuLAdwlqxzBgtqV2nsLxYD3FA019eiEC+9pjvnchUAGV78DBoAozPr+ulEHn8wCZ pgSp2KANFRGuel/pLAgDHM5JrdYeoBjsvA2Mu48om/JuqoJyTBvAIAplZXRCp3yIzX9pH8 hF/O1k85+vxs7DvPcGvqKbprfJgEMiie7YaiiWpiYFqMSVq9rJJOPcD7Mu6ezA== 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=1784040975; 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=oJVopJYT4iNE+pwwBFmKbDBV9UP4GXKYaWtztX2WwfQ=; b=p1m6xilidnjKfzVp7DmRv2nNTGVJdcVTTPY4h64Qg0iJzNCGcwm5CokSyi/f31ess3hG3F 5nAOc2Wdkb0bLvcXHPvUy66xyu/IxK2jWIuc4nRXZWCa+5BY9s/YNVPSUGwcRsNJtGUOru g+KyUg3LzL0TtGwIhEknhKOLI8s5lntQkaZeaAHmnCYXjTuHF/Vf4NIQr3luMFxUTUgYCd dJZTiBDeJCtyz4Z9JVEYhQ4e4SPVqWzAMW/iN2c1M453CYkcdh7TPQHq5WA2o9vQlkC68O nsQY+zkuiyJBH/QHYGZw/BR0P0S8Xsmm6J/53aCuqjithM4Ytr2gmn4x1uAV0Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02SH1yFtzpyh for ; Tue, 14 Jul 2026 14:56:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3e1ba by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:15 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 60585ee63af6 - stable/14 - so_splice: Fix the KTLS check for the sink socket in so_splice() 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 60585ee63af6c738bdcc0261da57192a547bfbf6 Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:15 +0000 Message-Id: <6a564e0f.3e1ba.53a21d51@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=60585ee63af6c738bdcc0261da57192a547bfbf6 commit 60585ee63af6c738bdcc0261da57192a547bfbf6 Author: Mark Johnston AuthorDate: 2026-04-16 19:57:36 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 14:08:40 +0000 so_splice: Fix the KTLS check for the sink socket in so_splice() Reviewed by: gallatin Reported by: Claude Sonnet 4.6 Fixes: 1000cc4a0d39 ("so_splice: Disallow splicing with KTLS-enabled sockets") MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D56385 (cherry picked from commit d88a159da42a75dbd46ea4f6f9c8059975dab5e8) --- sys/kern/uipc_socket.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index 2e7bf0b5e5fa..515f038b78fa 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -1707,7 +1707,7 @@ so_splice(struct socket *so, struct socket *so2, struct splice *splice) return (error); } SOCK_SENDBUF_LOCK(so2); - if (so->so_snd.sb_tls_info != NULL) { + if (so2->so_snd.sb_tls_info != NULL) { SOCK_SENDBUF_UNLOCK(so2); SOCK_UNLOCK(so2); so_unsplice(so, false); From nobody Tue Jul 14 14:56:16 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 4h02SK2QkBz6kqxp for ; Tue, 14 Jul 2026 14:56:17 +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 4h02SK030cz3M6n for ; Tue, 14 Jul 2026 14:56:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040977; 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=C1Lkxvc3GTcmP6WgNAlkmrHTjPPAdzQKeOxOK5VjqTs=; b=G3HEk1QseF1Kh4h6PNhweP5tbPZbX5BnaIr9thM+7k2w0TEqq+WJHRNgtAQ6X2FL2djOX+ 7WTw37GP7Hph9Ou63IO/Md4B8P3NMMDkVIKH/zP2kNLsXJDUNL5rTKRLuTLvFMuk8t1Rl/ TM005kiZu7RtC0GDrQ5pyqp2+yUgXwZovMIoPGZqxqrcXZsexXM9s4EEOz0OcMY/g3WmiO H+uFzpXyJ6vtKugwobMpnOLDBBE3pttsylXwMkZ10b7RRPQGu2OJgwfjF1t+q7i3C56ACI nPGspKnEJ0vty+/GL81AHa19rUlhOyR31NmQbBvKD4fSBz3/l2N2gPI+OtSAxA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040977; a=rsa-sha256; cv=none; b=ym9FM9pDnfRGxoy+m8Bu4A/Zt6qahBe+/B5mVtQuEjO51DBO+uCF8LLDAIx+tGe7/U/Lo2 kcOZWtf+5K4KGYBJ/kGV1ei/Y0zwJqME/vqbwp3dMjAsg9+BuT4rVkac7enPLKI8OlxbTQ +vQeWT9aGdL1ZhKUISwxdZ7HMKvMJ6YoxKX1HQLIJlULjKTszoB7NqDpAMusp30jVhIyUr CH8Pc49u2PdZNlWmoyVL2dv085V2e/c3uWmww66hQq6fCAeK65ShB4Q/QRL4ARzqUn4ktT /ZaQcNnFmY31EeAZIgppYyty1n1vc8QQY6aDBpbN3K8v09pTvzqN+XH1SPo8sw== 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=1784040977; 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=C1Lkxvc3GTcmP6WgNAlkmrHTjPPAdzQKeOxOK5VjqTs=; b=pe1toBgz16cEkbbrkoX+l9fvnj6o7+5Gem7MMnAr5P8VSBvmn/qOzTSXe4mxO3tkrXzKOI IQwPhV7I0C6YqhFDPyUNBWsOch/MStKjPX2BGl4k7bjzZC8pH0mUnpLS4Jd6prfBclSIfb b1PznO+gmugWXJ+KJYwqM0oA3u1purxMigoNnSRoBmOooanlRD8FWT7lp+xH7+CV4C37T/ bc+sbmRJxTp8ctKvs2oXNYB505SAfW6mOH29CSffiYcbs9jU35d4t9VlZWGWH4stsGhqAu pE8WRFlu/p5UkQqwD1F4qwAxlHuKALVMa1Jd2hbJSIybt59WkaVmrKgv1CNe4Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02SJ2p3hzq1r for ; Tue, 14 Jul 2026 14:56:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3da5f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:16 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 7cf84b5c9954 - stable/14 - kinst/arm64: Fix return values from kinst_invop() 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 7cf84b5c995456ddc3807d918c684438042cb977 Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:16 +0000 Message-Id: <6a564e10.3da5f.6d174cd6@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=7cf84b5c995456ddc3807d918c684438042cb977 commit 7cf84b5c995456ddc3807d918c684438042cb977 Author: Mark Johnston AuthorDate: 2026-05-20 14:49:28 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 14:08:40 +0000 kinst/arm64: Fix return values from kinst_invop() After commit 853cd8723494 it became invalid for kinst_invop() to return 0: dtrace_invop_start() would convert this to a sentinel value indicating that it did not consume the breakpoint, and so we'd just call kdb_trap() to handle it. Change kinst_invop() to return NOP_INSTR after handling a matching breakpoint. NOP_INSTR is handled by advancing the ELR, so we have to compensate by subtracting INSTR_SIZE before returning. Reviewed by: christos MFC after: 1 week Fixes: 853cd8723494 ("arm64: Clean up usage of the dtrace invop handler") Differential Revision: https://reviews.freebsd.org/D56987 (cherry picked from commit d6f0e671d0797b56011880f84d12ce5fb20bf099) --- sys/cddl/dev/kinst/aarch64/kinst_isa.c | 38 ++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/sys/cddl/dev/kinst/aarch64/kinst_isa.c b/sys/cddl/dev/kinst/aarch64/kinst_isa.c index bf3ab1d35de3..bfc3c5d66eec 100644 --- a/sys/cddl/dev/kinst/aarch64/kinst_isa.c +++ b/sys/cddl/dev/kinst/aarch64/kinst_isa.c @@ -18,7 +18,7 @@ DPCPU_DEFINE_STATIC(struct kinst_cpu_state, kinst_state); -static int +static void kinst_emulate(struct trapframe *frame, const struct kinst_probe *kp) { kinst_patchval_t instr = kp->kp_savedval; @@ -132,17 +132,13 @@ kinst_emulate(struct trapframe *frame, const struct kinst_probe *kp) else frame->tf_elr += INSN_SIZE; } - - return (0); } static int kinst_jump_next_instr(struct trapframe *frame, const struct kinst_probe *kp) { - frame->tf_elr = (register_t)((const uint8_t *)kp->kp_patchpoint + - INSN_SIZE); - - return (0); + frame->tf_elr = (register_t)(uintptr_t)kp->kp_patchpoint; + return (NOP_INSTR); } static void @@ -216,21 +212,27 @@ kinst_invop(uintptr_t addr, struct trapframe *frame, uintptr_t scratch) dtrace_probe(kp->kp_id, 0, 0, 0, 0, 0); cpu->cpu_dtrace_caller = 0; - if (kp->kp_md.emulate) - return (kinst_emulate(frame, kp)); + if (kp->kp_md.emulate) { + kinst_emulate(frame, kp); + } else { + ks->state = KINST_PROBE_FIRED; + ks->kp = kp; - ks->state = KINST_PROBE_FIRED; - ks->kp = kp; + /* + * Cache the current SPSR and clear interrupts for the duration + * of the double breakpoint. + */ + ks->status = frame->tf_spsr; + frame->tf_spsr |= PSR_I; + frame->tf_elr = (register_t)kp->kp_tramp; + } /* - * Cache the current SPSR and clear interrupts for the duration - * of the double breakpoint. + * NOP_INSTR is handled in dtrace_invop_start() by advancing the ELR, so + * compensate by subtracting INSTR_SIZE before returning. */ - ks->status = frame->tf_spsr; - frame->tf_spsr |= PSR_I; - frame->tf_elr = (register_t)kp->kp_tramp; - - return (0); + frame->tf_elr -= INSN_SIZE; + return (NOP_INSTR); } void From nobody Tue Jul 14 14:56:17 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 4h02SL6sGxz6kqxx for ; Tue, 14 Jul 2026 14:56:18 +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 4h02SK6Q9mz3MB8 for ; Tue, 14 Jul 2026 14:56:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040977; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pmEanxJMP/0YN7oYzBZZcB2R6qqy5bnadcifRkaImok=; b=lbQ7C+0X68N1FD+ChebU8OeJyStIclvNlwTKYPXhxp7J7cXjQAUpmtxI+7ZXO3nzxIUgTF oyHyj46akPNzUCdZ/BJCf3VXpmI28jbFTDW2frD0VaktyDqh4cDzzfwh3qAC/8tfMxOL8I dHfAe1Rpvw+aedGXScCyAJLSsfqgM6qPsT4Sh0LE2ggjq1tDI9cEggfU/IVGNurImQqt0B u00brqSXkth0LI9Ltb6WXiO011tk7LQmUCv9KenutzZVb6e8k7CIPjVGlvru9Rpwk/+TX1 c98SHqFx1Lij7chYLggDQHTZXyeE2htZtT6dtEZx8eorw+eBG093SRlA6pv1ww== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040977; a=rsa-sha256; cv=none; b=MvI3kpvu0mdke8XlaY9cPQaCw7AmjEWaeiFej+lZqOsgrisN2FZ/CSmckEAIKR7X5HAx/b noI7h0v+gQJpCjblZV78xRBvW103ZFIRP9U7x59WaQrGevaRqjVsP3YKLlHx2fAdFsQgFe feje/+KrZg7/Hzth9Nm+IJLdpwkyzHRed2NsIyE2JEaDrqoCR5a6Es//Q2ZWFelRgrr73c 7/0ozl8FdMZ5hTzPrpsV14b4vTpyN8GjlP7942oYtqjMh84YOjjiUrz20ox3Sz9+ZQjKFL Spddda5Jhzfi/PrqMw2rAzHAiTeIJHgLawRy1H0Q56NdhbPbURSm771kYonrUg== 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=1784040977; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pmEanxJMP/0YN7oYzBZZcB2R6qqy5bnadcifRkaImok=; b=MqAF5/jPW5tOGA/QWHgE3tlhJomBAFqFZ+t/5nMIgc0yvLjiujQvetgaLN2rTIAQJum6Sr yDlSvAGaoDxaim8WEjJfs1HmWjiW9BfScYr65oa/JKbBKDRFM6+0p88GG30nqtYlUQuh1n 0bCbvi8wl8UCoNeLuToydl1FrickaBrkqR2QAJ/hISXkE5itolXIYBssnENBQJYbcnsEi8 F+IbKiVP8vEHDwkYtmp643S6wwy2mehi1TWy63QbkGgHiBigUP3ZsmtqDGzqpg2uiibqj+ giiOgYC7ZIeRkUor+4vFr/8b354WaGS/0ESG4dU7QnuoD+Bd0QkvoR97b3YwKA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02SK3fFpzq5L for ; Tue, 14 Jul 2026 14:56:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3c268 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:17 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Allan Jude From: Mark Johnston Subject: git: 085667c5f8ed - stable/14 - Reset kvo_laundry to prevent it being cumulative 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 085667c5f8ed6d4b3200c86dc7a8c90c48768b7e Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:17 +0000 Message-Id: <6a564e11.3c268.d3813f@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=085667c5f8ed6d4b3200c86dc7a8c90c48768b7e commit 085667c5f8ed6d4b3200c86dc7a8c90c48768b7e Author: Allan Jude AuthorDate: 2025-06-25 13:38:50 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 14:08:40 +0000 Reset kvo_laundry to prevent it being cumulative `sysctl vm.objects`, used by `vmstat -o` was not resetting the laundry counter to 0 inside the loop, causing it to show the sum of the laundry count for all previous objects instead of only the laundry count for the current object. Fixes: a86373bc93ee1c850943e8585d0d426479378145 Reviewed by: markj Sponsored by: Klara, Inc. Sponsored by: Modirum MDPay Differential Revision: https://reviews.freebsd.org/D50907 (cherry picked from commit 32f9c9699a5a56ef8ef1da8e2974a8b34e2b84f5) --- sys/vm/vm_object.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c index ff164c03c5a5..22f4388a2ba8 100644 --- a/sys/vm/vm_object.c +++ b/sys/vm/vm_object.c @@ -2577,6 +2577,7 @@ vm_object_list_handler(struct sysctl_req *req, bool swap_only) kvo->kvo_memattr = obj->memattr; kvo->kvo_active = 0; kvo->kvo_inactive = 0; + kvo->kvo_laundry = 0; kvo->kvo_flags = 0; if (!swap_only) { TAILQ_FOREACH(m, &obj->memq, listq) { From nobody Tue Jul 14 14:56:18 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 4h02SM1hGqz6kr6j for ; Tue, 14 Jul 2026 14:56:19 +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 4h02SL5P0wz3LpV for ; Tue, 14 Jul 2026 14:56:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040978; 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=5vzz73XLhzyzZ//tob2q0tkXo/Tgtv89DNcmjbo1/y0=; b=S03RO873wSTnBerH6yIrJibX6+573CUtPft6MwHE+IQz1fEoGupUlOBSVZ1OcVjzU8O9d1 XhXtzc27jazye3NjwmV7b7TvMH4Y2hWEaBA+IuXX4nagzJp9wq3DI8L56RrtDgDCmp4kfd e1xv8oz1G+duHsJ5RbEUKlgFPb3OCY8HM8/Z+y328x0MKVi0ZYcyCUsWy5yscCgjx2FsAK p+GwQMOE4lyDzgEf0YdhlcRreKnrDXx6+kzzbSPuWAnRq7WAeLZByDBrEcQN/jbmxJBUz3 j2sZtSqQLhSujAG2shPQ466sfvD8d/sWilDMA5JpGf8P9UPxv5LrJGCgcL1qGg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040978; a=rsa-sha256; cv=none; b=RmSc/DMq0rHJieWDcHlna/0ODoiMxr507/dpOt+uaEdLnojJEM+Exy/Sd+vsn5siulLuLo qnIpsgdkfmkCTX2KXAeRCKhK3h+QpVkukUHtGgAPJ9nJFkaj88jqkdFt8/aNHEHRuuFfEs VNZP3SxPEnvNIUT+wA3ybOdvlkhoxyh4Z6yR7m5hCbPxTmQv36tW19TkNjNBxFiqwYpnZj mGTxIJlp+lPAkDkBE1EgVybgtbitxq6SkxDCYDqO8/Yb+MFzOdJFzx0KQNhFGZU1RFrgW/ cgN7AFYoiOhwotrTRgexx/V23NpPiNgkv9u0PEFdo+hr7tsldKd8dQOtf4fkyA== 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=1784040978; 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=5vzz73XLhzyzZ//tob2q0tkXo/Tgtv89DNcmjbo1/y0=; b=wAYNPMsnTxNwbmDAL6hNGLcYZDG8wufjwqYQNrqKgwb/+KoFDaXCQ7VB+gQ4CcptoD19Jt 5hQDch4yehzOfYcLwhQqfsc29ya06eem50K8jUFQzuNXRHD2mLTGpO/xuZPN3Pd0oYhCBV v6vEy3oPf3qhBSYabYPt89j7Qs08HbOJ8EzhkOCSeagqyRGPD5TM3e/Wg2MznUohXhW7OD O7lk14O2S6oQHbdv3msurEIlvOPIqSHLtRlS9/8JhnC7rXzffskUFPI0xCQkdbtzhNzes5 jkNnfUy7p97VMctDKNSG7P3m8icr3hZ1ElnqmOAI0EWwrYoF1Wj4OF5iiSqiSA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02SL4QY2zpn3 for ; Tue, 14 Jul 2026 14:56:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3d2b6 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:18 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: cdd4f32526f5 - stable/14 - if_ovpn: Fix a lock leak in an error path 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: cdd4f32526f5f2b7295164aafa53de2f2e7562ea Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:18 +0000 Message-Id: <6a564e12.3d2b6.6052901@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=cdd4f32526f5f2b7295164aafa53de2f2e7562ea commit cdd4f32526f5f2b7295164aafa53de2f2e7562ea Author: Mark Johnston AuthorDate: 2026-06-20 14:12:19 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 14:08:40 +0000 if_ovpn: Fix a lock leak in an error path Reviewed by: kp MFC after: 1 week Fixes: 04a7134c1e92 ("if_ovpn: fix use-after-free of mbuf") Differential Revision: https://reviews.freebsd.org/D57696 (cherry picked from commit f7b71f832c990da0bf203095f02405df665529d0) --- sys/net/if_ovpn.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/net/if_ovpn.c b/sys/net/if_ovpn.c index 3a04249ec554..041250cc2c08 100644 --- a/sys/net/if_ovpn.c +++ b/sys/net/if_ovpn.c @@ -2554,6 +2554,7 @@ ovpn_udp_input(struct mbuf *m, int off, struct inpcb *inp, m = m_unshare(m, M_NOWAIT); if (m == NULL) { + OVPN_RUNLOCK(sc); OVPN_COUNTER_ADD(sc, nomem_data_pkts_in, 1); if_inc_counter(sc->ifp, IFCOUNTER_IERRORS, 1); return (true); From nobody Tue Jul 14 14:56:19 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 4h02SN2NsMz6kqhl for ; Tue, 14 Jul 2026 14:56:20 +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 4h02SM657cz3Lpm for ; Tue, 14 Jul 2026 14:56:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040979; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GKlaiCXHlBQjwHRog1ySkw0uA+4QfwM8lny4OlO6wdQ=; b=vHgNSa+3xr5nVfjW2u3udCsmn3vbE5Imabj/ex080lCzOBUxihA/A0BaSEUDjCs78sw+R0 SESsOvzlA0YYuGjRRzMii+hBTfiwFiWcJbMLxmndDKbOfCFCjyBTIwM5ZiNiMYxwMAiMWm QfxHIFyoKj6fflHzrAmJeEKNJYAfOxa35GBdsb1jzu2Ft+irYRD0oOG4c0PrcsrLhlXKX1 DZK/wsOGkmdxPiMWfvZ7qB7GnrLcShwSGyJ4GSvJ53JsJhYaVt4wFcozq4BeifzKUYRUut gAG33tMAGnotBzjCTTywY3+lCUWW7uYK1zbdDDuYNcrNZxVOpcOq1JnI4JpElg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040979; a=rsa-sha256; cv=none; b=GSsdpQClt+aj87L2FuqeHe6Qrjg4irlMY6b0z7pmKOEmqIE5KSVNFwMxCpE932CER3IxNg K09Qomxe4HOqkzd4SDBZ27rHvFMEwEKaU/47mxuibLkuMX/H83rFLZLJLkRwIq6z0j5bf7 IAxDrhCqQnm5M5CnCxQk4sa8Mut1mjktTiGeJeT6pkUdqLGe/ffHG8HAbEvYR2/7ljMjEn vNBg5uPoFybiVLaWzcmpdPd+RPrTUjrNsAJdPEyMsmcbqMW5Zn/MocNuXPNEBAO+EB0vAQ kdkNSxO+YsxfwUE6r3htRXeeWh0T6D5mWXj68mNzfonNE/u4sZnaUO6rTneuPg== 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=1784040979; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GKlaiCXHlBQjwHRog1ySkw0uA+4QfwM8lny4OlO6wdQ=; b=oA/h+mBfUp+tB9PJtsIx6FTrOPdqFF9vewgGpaCgHhHTdeWb1/G/xLjwrS6dGdn7wSv5kH Q9qKCgEs2LvohJcJck2k7lIoMLe6t2+N1o4ppJGxksQDiJqfHkWtFQU5gXAs2yH7yPAqje u9R2smxwKqq4raIcdta8Arsf6Frk/kEUTq8mJl7p47YiVtUtCmLNMs1JmgzbFyXyXKCPOu II35z/y/YEqQgazBNv3iEYZdn8D//4H17YdtoQZMyFquhGpcaxB73geoUiogiwr3jSMbK6 yeRPfzskw4hFdrn41noul9Yp657lQFIaief8ns8F5/q0zGD1zWbO5KTu2hwECQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02SM4wr2zq1t for ; Tue, 14 Jul 2026 14:56:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3dc22 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:19 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Jane Smith From: Mark Johnston Subject: git: eba4bf368329 - stable/14 - librpcsec_gss: Fix an off-by-one in rpc_gss_get_principal_name() 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: eba4bf368329eab4609b5b05589ba4f344c4f2a9 Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:19 +0000 Message-Id: <6a564e13.3dc22.5654db69@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=eba4bf368329eab4609b5b05589ba4f344c4f2a9 commit eba4bf368329eab4609b5b05589ba4f344c4f2a9 Author: Jane Smith AuthorDate: 2026-06-22 21:40:53 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 14:08:40 +0000 librpcsec_gss: Fix an off-by-one in rpc_gss_get_principal_name() Include an extra byte for the nul-terminator, otherwise we may end up with an out-of-bounds write. The corresponding bug in the kernel implementation was fixed by commit e3081f7e3e2d ("kgssapi(4): Fix string overrun in Kerberos principal construction"). Reviewed by: markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D57738 (cherry picked from commit 635ad6f2ec97e9c6b1f15620cd5ee84eb632082f) --- lib/librpcsec_gss/svc_rpcsec_gss.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/librpcsec_gss/svc_rpcsec_gss.c b/lib/librpcsec_gss/svc_rpcsec_gss.c index 73b92371e6d0..a15542330697 100644 --- a/lib/librpcsec_gss/svc_rpcsec_gss.c +++ b/lib/librpcsec_gss/svc_rpcsec_gss.c @@ -247,7 +247,7 @@ rpc_gss_get_principal_name(rpc_gss_principal_t *principal, * Construct a gss_buffer containing the full name formatted * as "name/node@domain" where node and domain are optional. */ - namelen = strlen(name); + namelen = strlen(name) + 1; if (node) { namelen += strlen(node) + 1; } From nobody Tue Jul 14 14:56:20 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 4h02SP3VQBz6kqsk for ; Tue, 14 Jul 2026 14:56:21 +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 4h02SP09Bfz3MF9 for ; Tue, 14 Jul 2026 14:56:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040981; 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=jKiOZ+T5YladgkzFHT2LBPXXhqAg2w2S6OAT9UqC1RE=; b=h9q52J5OdMkn62zLovpQ/ICb86Cn3w0qoAQmR/5vNyFje1g8WG8JUOsCTeEgScG/3tMg66 /uDUESJWjZkxT+tqXK5XA1ssU9ad1sid1laGolOZSpnsur+kpFsqcYj6HTS2j8/PJ3zFia 6fp9PAasFMEDDuHbViAFh+A6EwMlxU36P303Q4sVgc3V2wauyuOb8xn0R394n9RT9a/zFT 56L2cKaoqu0DOo5st8pf/Yn8JTmIOee7zNymmrGq5YLEMWV4eLE9K0KJFLfjEdrWDJYbnZ RH9MQdrFKdw7Zfky9CZyeJRgTQKFDzzsEbOqDk+AKzCxe3C2I/VtT98y+wTrrw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040981; a=rsa-sha256; cv=none; b=OhYKS2pURnIlV0CgxzjkUbExvI5QSXYW6tXJ1sg2bLYe63nXWzAf5MPeazP1WN09akh1CC IdLkqUW4VFUuNycEH9OFDBOf0Zkl6J888BRvzBKISAfUIFZqdb+FSgrJgcnZ4WWELp/UKU 01ocwGT8xN0kEkWHhVAgQbKqG2bTQAzt9t0CllBE4UMHX9hY5hgZuDonZ7o+6zx3JtptOE qwjizWJkgt2kVuRVLKM9p5Sd+4dpTkCjHaTwnqoAOoDoxwDDLuWt+ngvkps4eWrl7Ztj/B KH0WZqP/aWWZpEMCNXEqAFK4MCWheQWc2R7Hk8ZFsVev+u3N5DlHfO10uOynzw== 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=1784040981; 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=jKiOZ+T5YladgkzFHT2LBPXXhqAg2w2S6OAT9UqC1RE=; b=E8KYoi4yOzjIkA3TfNzeTFVk1GRF6HtS2QGq3UGEZHLJ9B1flIFDZRrDh6fyZVvkh2rRmK jmP3vyfqmPMr3rjYxh2HXvp5cgXI3nrN6Ix/2Lv3Ym9+c7e7JIdNTbV4XspDFQe5AEZPsM 5YPFUesDWRNSQ2YE+NSflwckjMxBhcNjf64ozHCkrGbhfJqdS1i2mFniQsmgQhsGURVi/5 NDfP9fJQy6+xgB6aDYmph113S73oBJK5BSnUkFFWueM/VBW1+y76lNxUCmav6fMYpKUpF5 OKtmup/aMuR22tLRoJZSukEW6wjiW3zEWdzQSLSqwD/bYb2FrpI1VYyEBP1sew== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02SN5kgCzqG3 for ; Tue, 14 Jul 2026 14:56:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3ee92 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:20 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 9af7633c6095 - stable/14 - makefs/zfs: Explicitly include sys/param.h for nitems() 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 9af7633c6095c4bb09edc95b63401bad621f469c Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:20 +0000 Message-Id: <6a564e14.3ee92.48755af7@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=9af7633c6095c4bb09edc95b63401bad621f469c commit 9af7633c6095c4bb09edc95b63401bad621f469c Author: Mark Johnston AuthorDate: 2026-06-22 20:19:32 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 14:08:41 +0000 makefs/zfs: Explicitly include sys/param.h for nitems() MFC after: 1 week Sponsored by: The FreeBSD Foundation (cherry picked from commit 88deb1cff92cb3620c248f32fa6e7bdbc5301213) --- usr.sbin/makefs/zfs/dsl.c | 1 + 1 file changed, 1 insertion(+) diff --git a/usr.sbin/makefs/zfs/dsl.c b/usr.sbin/makefs/zfs/dsl.c index 8a8cee7c82b2..d3870a789a56 100644 --- a/usr.sbin/makefs/zfs/dsl.c +++ b/usr.sbin/makefs/zfs/dsl.c @@ -28,6 +28,7 @@ * SUCH DAMAGE. */ +#include #include #include #include From nobody Tue Jul 14 14:56:21 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 4h02SQ3hBdz6krC0 for ; Tue, 14 Jul 2026 14:56:22 +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 4h02SQ0R98z3MQh for ; Tue, 14 Jul 2026 14:56:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040982; 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=mQ4EzLx7Pjjq/82h0F08RJAZT8ZE7Y2fEG5fe0H7o50=; b=QKCBoSueChwRJhEUwMMAG4A4DaLS4ahWTkF92lp0K97ynzXMEiWXXbgBRTFEcV6DbI8D3O 75CPCqWR6MpYabteED/sCX3lM190qD0iRQ0mJU96ZigOeP8ErbdU46Wl8LEvpokZFHqaPx lVJ6Vzk+kGsStfc5Tmv8tQ298UEPraQUrQdOJ5qiA8q5La/jN/T6wrzFaMyTGczpeAI55i t2O5WeFe2HhqEnFAjm7DJ+utpkzVCd1CNvaax8ywjv01tY0pEopvXL0PP5ChTa0PjxzlCC 7gpQAEHPKA8QG9T2OzcotLRO1/OxuQGF5VbO50sxMdpM9x6KU0dd7wJ1HJFenA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040982; a=rsa-sha256; cv=none; b=HR8z5VURjACq1AJ+9dAFWkzisAeWxGIy8PHRszlz2QxMinQJEszioJ6vRovNp4zEcEs0su 5au3ANKhjozqxfiTodTAE21SFmp8pVSqPOGTtjOEMB8G75rL/JfRLIX1l0C6cszTNpDEvO svVjKNk2PQ3yNDPhgPah9aJA/rq+7mQhQQ0wHKBgmFfD4I/KlaZ7KbIR+IA/0XFikJbGBY LpETlZJI784DK65zjicq/UqJ94pvhm9iLPG3sAln5oeElA96vCPvZx2e4rQigpsp/boS9r UjtHc5oHk/4uVrsyFGJLtWL03d7UFBny7I4Uv/Ux+w6h8GVQbejg+bVCISzlRg== 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=1784040982; 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=mQ4EzLx7Pjjq/82h0F08RJAZT8ZE7Y2fEG5fe0H7o50=; b=nSFgARJVDPXYkOdDD9KrQS7V3SdpanPwiiE6/wWrf0KfGJOiZTDNHj+nxHli6aCdXeuC53 mEzc6HA6LwhPgFFxwYWiwV0rkzDRNNkNJoJRolo9hHGWQBRq0MRuyGu1uBnNWu6iXaM/MX vvL6zY6mHmMfiggsYF9foLD+E7dX8loE0sct1sHWLj3vrpS/xRfAzDE5X+IgC14RViiMtN Im9IG6QUyXhdbg8RPOoMusMqOAMgAKUc2Bo4eUhdk9a4T1nEuDopdXcdGgferLiGjJm61d i3P9dRVPR4eFguXieIN3X4D14nhBXojkKyTKfgO6FIbHxeZDJ37Z3AcTQVqSmA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02SP6WzYzq5N for ; Tue, 14 Jul 2026 14:56:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3e835 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:21 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: f815c5442538 - stable/14 - install: Explicitly include sys/param.h for MAXPATHLEN 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f815c54425383a7d226cd1a104d403cf6d466026 Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:21 +0000 Message-Id: <6a564e15.3e835.66b36988@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=f815c54425383a7d226cd1a104d403cf6d466026 commit f815c54425383a7d226cd1a104d403cf6d466026 Author: Mark Johnston AuthorDate: 2026-06-22 20:19:29 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 14:08:41 +0000 install: Explicitly include sys/param.h for MAXPATHLEN MFC after: 1 week Sponsored by: The FreeBSD Foundation (cherry picked from commit ca89b0fa1a93744a5bbf7a5c949826bbee4e2559) --- usr.bin/xinstall/xinstall.c | 1 + 1 file changed, 1 insertion(+) diff --git a/usr.bin/xinstall/xinstall.c b/usr.bin/xinstall/xinstall.c index 68f8604d3438..d9e48ddada03 100644 --- a/usr.bin/xinstall/xinstall.c +++ b/usr.bin/xinstall/xinstall.c @@ -42,6 +42,7 @@ static char sccsid[] = "@(#)xinstall.c 8.1 (Berkeley) 7/21/93"; #endif /* not lint */ #endif +#include #include #include #include From nobody Tue Jul 14 14:56:23 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 4h02SR3xdzz6kr4K for ; Tue, 14 Jul 2026 14:56:23 +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 4h02SR1lKzz3MNY for ; Tue, 14 Jul 2026 14:56:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040983; 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=JQiD2lafzHnZyELTsG4OvsMxM7373aQ+FN5BS1EMCpY=; b=CfHNo0giwLy0doet/G0HJRk4EOiT925wd3nbclCAakLdgy4H8dQBSeVYg7VFFoeRG2lyF5 JgTDTpfXtJ8fRpLGJgjBoXelCS7dtsMemDicELMHWEBd5Msz3/J4IIyjH9EoQ3y/oNkd4O wudHObPtAw3C8CzNOqM3WaEVG1zIi+qzJ+YneYo4/C6Qvo+TNem5oX1Eif8jiYicXoD92P ck4uMp4A7zxvK38wo3VyqjR1/DaKdXeEUKokgbPMxJU9UjTy0rJpS3BCjbaR0HDk8NBF37 AsJAT3cGauPKI+/+zi8oRYzCkD3qcJgtqa4Kq1opoAJJjoWU1zOkefZ6Em5OsQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040983; a=rsa-sha256; cv=none; b=dOWtFlgSrTdyIWRQWn9nMwyESpL3qbPb5x9rQ4WF0NVa0t0esS2M27NUDpX9aFROgX4p4j 6ELHSd5wpLzUWKXFrR/GnET32Uxxa8vL1OjIS8VPF7s9MbmZ+KKChBmAYlYyNjEMiH3OVQ ydZmzD51FMmhvsiXj/5D9ODhEiAgBZGt2bVb7TqlIgiChlHwRlPXpQqvRAkkHdSYOqCbzg eDDtUOZXgDSfsQvwgJcKAMZHiRz/n5tPlCYlhCL87Un9zxvY51rSNdQAgvlG7lA/FHiC9I mCx40hUMRHXtFzojFm2wgYbBYkJ5MS2hfBodwPSvOyw3M9UOJzaekPHAwRE7Sg== 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=1784040983; 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=JQiD2lafzHnZyELTsG4OvsMxM7373aQ+FN5BS1EMCpY=; b=oVXer31YArFWT/txeW42oqjYALaNjg3Dynt54e6ItI2r+Z5ftM8YxxlXudaLqCLQxxBZz7 z1cEzqAO1swrEaWxgErMKjP51cRLiOTJn7oOYPPfmK3KYgU6c11+5ScvqxB52gjTljiolS 5/7kd+M8c8aHKKox7x3+bbtgqXmtUiR5rvOWUPIjCdQvr4D/WyycwN8tWUe+gWhjCWXcU+ VEX9oz8tpcd/g94zfW4TgQA7eZdm9iaEHDMk23NWTRsLeEX/cLjR2gW0o67DNIkr3Mi75Y t55Mbd6PRD5T23JZZRMNUv+DP8XdcWhpwz/+0JE/t9cP+N/Jw5uGms9ULcXx0g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02SR0CHTzq5P for ; Tue, 14 Jul 2026 14:56:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3ee96 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:23 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: f82ee475aaf6 - stable/14 - tests: Add pjdfstest integration 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f82ee475aaf6489dc1ae5257aa64bc3345bdce16 Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:23 +0000 Message-Id: <6a564e17.3ee96.592d2978@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=f82ee475aaf6489dc1ae5257aa64bc3345bdce16 commit f82ee475aaf6489dc1ae5257aa64bc3345bdce16 Author: Mark Johnston AuthorDate: 2026-06-19 13:27:04 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 14:08:41 +0000 tests: Add pjdfstest integration Use ATF to wrap the new reimplementation of pjdfstest that came out of GSOC 2022, now available in the ports tree as filesystems/pjdfstest. So far I added tests for UFS (with several different option combinations), tmpfs and ZFS, plus ZFS+nullfs. All of these create a memory disk, initialize the filesystem, and point the pjdfstest executable at it. In the future it would be good to add tests for at least NFS and p9fs. Reviewed by: asomers MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D56605 (cherry picked from commit 8fd4d1c0fff8441b42dbab767810db7aeaf796c3) --- etc/mtree/BSD.tests.dist | 2 + tests/sys/fs/Makefile | 1 + tests/sys/fs/pjdfstest/Makefile | 12 ++++ tests/sys/fs/pjdfstest/tmpfs.sh | 60 +++++++++++++++++++ tests/sys/fs/pjdfstest/ufs.sh | 130 ++++++++++++++++++++++++++++++++++++++++ tests/sys/fs/pjdfstest/zfs.sh | 96 +++++++++++++++++++++++++++++ 6 files changed, 301 insertions(+) diff --git a/etc/mtree/BSD.tests.dist b/etc/mtree/BSD.tests.dist index 574a41378a90..7ef46352298b 100644 --- a/etc/mtree/BSD.tests.dist +++ b/etc/mtree/BSD.tests.dist @@ -790,6 +790,8 @@ fs fusefs .. + pjdfstest + .. tarfs .. tmpfs diff --git a/tests/sys/fs/Makefile b/tests/sys/fs/Makefile index f0fd2cc5955f..16ba97a32232 100644 --- a/tests/sys/fs/Makefile +++ b/tests/sys/fs/Makefile @@ -13,6 +13,7 @@ TESTSRC= ${SRCTOP}/contrib/netbsd-tests/fs .if ${COMPILER_FEATURES:Mc++14} && ${MK_GOOGLETEST} != "no" TESTS_SUBDIRS+= fusefs .endif +TESTS_SUBDIRS+= pjdfstest TESTS_SUBDIRS+= tarfs TESTS_SUBDIRS+= tmpfs diff --git a/tests/sys/fs/pjdfstest/Makefile b/tests/sys/fs/pjdfstest/Makefile new file mode 100644 index 000000000000..62e937198e34 --- /dev/null +++ b/tests/sys/fs/pjdfstest/Makefile @@ -0,0 +1,12 @@ +TESTSDIR= ${TESTSBASE}/sys/fs/pjdfstest + +PACKAGE= tests + +ATF_TESTS_SH+= tmpfs \ + ufs \ + zfs + +# Tests use an external resource. +TEST_METADATA.p9fs+= is_exclusive=true + +.include diff --git a/tests/sys/fs/pjdfstest/tmpfs.sh b/tests/sys/fs/pjdfstest/tmpfs.sh new file mode 100644 index 000000000000..cd56acbd04c6 --- /dev/null +++ b/tests/sys/fs/pjdfstest/tmpfs.sh @@ -0,0 +1,60 @@ +# +# Copyright (c) 2026 Mark Johnston +# +# SPDX-License-Identifier: BSD-2-Clause +# + +setup() +{ + cat <<__EOF__ > pjdfstest.toml +[features] +chflags = {} +posix_fallocate = {} +rename_ctime = {} +stat_st_birthtime = {} +utimensat = {} +utime_now = {} + +[settings] +naptime = 0.001 +__EOF__ + + atf_check mkdir mnt + atf_check mount -t tmpfs none mnt +} + +doit() +{ + atf_check -o ignore pjdfstest -c pjdfstest.toml -p mnt + atf_check umount mnt + atf_check rmdir mnt +} + +cleanup() +{ + if [ -d ./mnt ]; then + umount ./mnt + fi +} + +atf_test_case tmpfs cleanup +tmpfs_head() +{ + atf_set descr "Checks that pjdfstest passes on tmpfs" + atf_set require.progs pjdfstest + atf_set require.user root +} +tmpfs_body() +{ + setup + doit +} +tmpfs_cleanup() +{ + cleanup +} + +atf_init_test_cases() +{ + atf_add_test_case tmpfs +} diff --git a/tests/sys/fs/pjdfstest/ufs.sh b/tests/sys/fs/pjdfstest/ufs.sh new file mode 100644 index 000000000000..4bba5698df00 --- /dev/null +++ b/tests/sys/fs/pjdfstest/ufs.sh @@ -0,0 +1,130 @@ +# +# Copyright (c) 2026 Mark Johnston +# +# SPDX-License-Identifier: BSD-2-Clause +# + +setup() +{ + local md + + atf_check -o save:md mdconfig -a -t swap -s 1g + md=/dev/$(cat md) + atf_check -o ignore -e ignore newfs -t $@ $md + + cat <<__EOF__ > pjdfstest.toml +[features] +chflags = {} +posix_fallocate = {} +rename_ctime = {} +stat_st_birthtime = {} +utimensat = {} +utime_now = {} + +[settings] +naptime = 0.001 +__EOF__ + + atf_check mkdir mnt + atf_check mount $md ./mnt +} + +doit() +{ + atf_check -o ignore pjdfstest -c pjdfstest.toml -p mnt + atf_check umount ./mnt + atf_check rmdir ./mnt +} + +cleanup() +{ + if [ -d ./mnt ]; then + umount ./mnt + fi + if [ -s md ]; then + mdconfig -d -u $(cat md) + fi +} + +atf_test_case ufs1 cleanup +ufs1_head() +{ + atf_set descr "Run pjdfstest on a UFS1 filesystem" + atf_set require.user root + atf_set require.progs pjdfstest +} +ufs1_body() +{ + setup -O 1 + # UFS1 doesn't have 64-bit timestamps or a birthtime field in the inode. + cat >> pjdfstest.toml <<__EOF__ +expected_failures = [ +"utimensat::birthtime", +"utimensat::y2038" +] +__EOF__ + doit +} +ufs1_cleanup() +{ + cleanup +} + +atf_test_case ufs2_nosu cleanup +ufs2_nosu_head() +{ + atf_set descr "Run pjdfstest on a UFS2 filesystem without soft updates" + atf_set require.user root + atf_set require.progs pjdfstest +} +ufs2_nosu_body() +{ + setup -O 2 -u + doit +} +ufs2_nosu_cleanup() +{ + cleanup +} + +atf_test_case ufs2_su cleanup +ufs2_su_head() +{ + atf_set descr "Run pjdfstest on a UFS2 filesystem with soft updates" + atf_set require.user root + atf_set require.progs pjdfstest +} +ufs2_su_body() +{ + setup -O 2 -U + doit +} +ufs2_su_cleanup() +{ + cleanup +} + +atf_test_case ufs2_suj cleanup +ufs2_suj_head() +{ + atf_set descr "Run pjdfstest on a UFS2 filesystem with soft updates journaling" + atf_set require.user root + atf_set require.progs pjdfstest +} +ufs2_suj_body() +{ + setup -O 2 -U -j + doit +} +ufs2_suj_cleanup() +{ + cleanup +} + +atf_init_test_cases() +{ + atf_add_test_case ufs1 + atf_add_test_case ufs2_nosu + atf_add_test_case ufs2_su + atf_add_test_case ufs2_suj +} diff --git a/tests/sys/fs/pjdfstest/zfs.sh b/tests/sys/fs/pjdfstest/zfs.sh new file mode 100644 index 000000000000..44e539b7abd2 --- /dev/null +++ b/tests/sys/fs/pjdfstest/zfs.sh @@ -0,0 +1,96 @@ +# +# Copyright (c) 2026 Mark Johnston +# +# SPDX-License-Identifier: BSD-2-Clause +# + +setup() +{ + local disk pool + + truncate -s 1g disk + + cat <<__EOF__ > pjdfstest.toml +[features] +chflags = {} +rename_ctime = {} +stat_st_birthtime = {} +utimensat = {} +utime_now = {} + +[settings] +naptime = 0.001 +__EOF__ + + atf_check mkdir mnt + pool=pjdfstest$$ + atf_check zpool create -m $(pwd)/mnt $pool $(pwd)/disk + echo $pool > pool +} + +doit() +{ + local mp + + mp=${1:-mnt} + atf_check -o ignore pjdfstest -c pjdfstest.toml -p $mp + if [ "$mp" != "mnt" ]; then + atf_check umount $mp + atf_check rmdir $mp + fi + atf_check zpool destroy $(cat pool) + atf_check rm -f pool +} + +cleanup() +{ + if [ -s pool ]; then + zpool destroy $(cat pool) + fi +} + +atf_test_case zfs cleanup +zfs_head() +{ + atf_set descr "Checks that pjdfstest passes on zfs" + atf_set require.user root + atf_set require.progs pjdfstest +} +zfs_body() +{ + setup + doit +} +zfs_cleanup() +{ + cleanup +} + +atf_test_case zfs_nullfs cleanup +zfs_nullfs_head() +{ + atf_set descr "Checks that pjdfstest passes on zfs mounted via nullfs" + atf_set require.user root + atf_set require.progs pjdfstest +} +zfs_nullfs_body() +{ + setup + atf_check mkdir mnt2 + atf_check mount -t nullfs mnt mnt2 + doit mnt2 +} +zfs_nullfs_cleanup() +{ + if [ -d mnt2 ]; then + umount mnt2 + rmdir mnt2 + fi + cleanup +} + +atf_init_test_cases() +{ + atf_add_test_case zfs + atf_add_test_case zfs_nullfs +} From nobody Tue Jul 14 14:56:24 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 4h02SS5jJ1z6kqws for ; Tue, 14 Jul 2026 14:56:24 +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 4h02SS265tz3M9d for ; Tue, 14 Jul 2026 14:56:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040984; 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=B9M0m9A/XeHT1S9J2wXjev7Krn5pzQ3Y40/q16PU0qo=; b=ka0SL5+DiLylwHokEuLalHs/zVEhmYz8qykOcQ3maFkbQUD77yEv++WLl7fb+C31n4Dx3H f4EG+3S3m/nlbiyOuDlcODTocaqUn66+VVJtCZ47ryKUMQ0HaIqVw/63twN0HHw7h3WwF8 nbuIZdfnhlzYWYb7WmcuqzHiLw2vnEtJJ9arNq33ksNux4iOupY5pdokYGLGYbu8sKAqqF YS/HMrAi2nvnI/J/JWDNh/eHOf8ofONN21k4hk1W7sQZUpTQnfFLE9pNKrqT+VkaplB+MF ulZY1nK+4m/19a0XJ+MYeqphZrJrrqO/x6gPVkp8nBSNyVTWc268KcynL/ieJA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040984; a=rsa-sha256; cv=none; b=YAGRjLsy7xacwOF/E4fDmmzBeAGnCp9pgUe7KdHtaA2ObgsQZfFdovCxcTBGI73mYrAOvJ GaNY0yS5o+I6O+ZBuw+tFZbhkIXR9M2AC9ioPsKbXOQ05D3HYURI1Pxd4vnaKo9nTapUpY ekwNFugirQCY2TU1HSd7u5cNi4/tnb8CCZo5yom0S7Ig4nxZoiXGyBcU3ERjS+WU51u2dk RHrHTwmoFEy9K9EXmcJ023onyR3D4vXwn94kZBrUFLxlgtoJtmu4aD85v0JwyT6ImGLI/Y OH+9KrCooU/ZX86tfJ5AS8LZ5XuaasTelmOHAQr771sFoo51kW4P5oFRd9hnPg== 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=1784040984; 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=B9M0m9A/XeHT1S9J2wXjev7Krn5pzQ3Y40/q16PU0qo=; b=P8g9zR3pf6kMAo8eUUfWsNKJxaaUIyGnYQi5K7ggiVhYSrZK0KHjR+dkye7pnyP/Jenxww SyDqA3XLguHwrUdaLql9ALZPR4D8qdZRX1iHR1EKALGwIAEsLIL5GR3t4+GZn+hV4WudRt dYfm/1L6RjDHabhMV3d2zke0zTgzUpXDCfuj2T6//kYiPD+ks4SR8SwIK1Dd0vYO2Cv0LZ IznvN0Nm+idWxNyVpqud/tH/XEg84J97rAeeLcfTmhCDi+PFd/8ySPTtDL8h4qLJLAJncn DRmcO2+cJUsnPDXbyv1EEMVzXMI5Tk34+dPXBw4ROvb6gWtL2tITxIRYn8tB9A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02SS0zYpzq5Q for ; Tue, 14 Jul 2026 14:56:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3ee9a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:24 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 32ae329ac9c2 - stable/14 - udp: Wrap a long line in udp_send() 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 32ae329ac9c24109ec71969deaa00fdb39705844 Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:24 +0000 Message-Id: <6a564e18.3ee9a.4d9effb8@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=32ae329ac9c24109ec71969deaa00fdb39705844 commit 32ae329ac9c24109ec71969deaa00fdb39705844 Author: Mark Johnston AuthorDate: 2026-06-15 15:57:01 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 14:08:41 +0000 udp: Wrap a long line in udp_send() No functional change intended. MFC after: 1 week (cherry picked from commit 3b69c7201fd06b368090f2ee3840d384a949cba8) --- sys/netinet/udp_usrreq.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/netinet/udp_usrreq.c b/sys/netinet/udp_usrreq.c index a1000dadf583..4506a85da7b3 100644 --- a/sys/netinet/udp_usrreq.c +++ b/sys/netinet/udp_usrreq.c @@ -1140,7 +1140,8 @@ udp_send(struct socket *so, int flags, struct mbuf *m, struct sockaddr *addr, * We will need network epoch in either case, to safely lookup into * pcb hash. */ - use_cached_route = sin == NULL || (inp->inp_laddr.s_addr == INADDR_ANY && inp->inp_lport == 0); + use_cached_route = sin == NULL || + (inp->inp_laddr.s_addr == INADDR_ANY && inp->inp_lport == 0); if (use_cached_route || (flags & PRUS_IPV6) != 0) INP_WLOCK(inp); else From nobody Tue Jul 14 14:56:25 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 4h02SV0d93z6kr8v for ; Tue, 14 Jul 2026 14:56:26 +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 4h02ST4z8fz3MG1 for ; Tue, 14 Jul 2026 14:56:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784040985; 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=kAFLMh8cIqwW414P9Fve8XshZaSJPWtxFSjlJqe/ENU=; b=Nh8+Pi39XOb1OU+CyU9VMfi+GQdzs4v+e5pvd03SGtdQovfOqhIPrZyeejeFssbjpk33fT DofCf4/TrCpghGTfCpOIedQvl+Bf6sZOo1tQNDzec6RNlc+tS5AUHrEooiQLwY2/ljh4Tt tpQF2gLIpR3KyWAHefJQzczSmOuYmwv06l8/597xJbgCLZSyx1geVeTQqOE8+uY+TMqSeL Hs82snFKaHHjXKvpY4VkZKKGFkefBy8BrfUOo/U5DvRiL2MA9MbJ2BORE4sQsP8esyZv8F +jrRp6d72Xv5nBIaPhtnZVW1Q866J4i7XoRhb55e2SEwSqIZFKrtHaSYrmfCmA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784040985; a=rsa-sha256; cv=none; b=qoxNzOoo7fyRho8uWIKolmQRMdKNJJiwj1i/PCE8qSzj0Ut6cAHzUWdr876vrW3UKZbZLz Rzvt+kYdTzGaTTNZinR8dFT7ulmYcSe2Nq582dol68vXHtppygoRKrzzcoprsNxJCVQRys F3Y85XYff25qBZNfBjiFENYcts6+um5irX6Wz3FcgqJ0XXjN93x8lj0lHup9QRNEcKYyOr 2YSGwXe+YLJNqunh8Y+cgkLALK5Ey5T8O7wO/v+GRi49HuA+vg6sIs2Y/bOvYNOwhWs+Yp WydTW/J1w79fvE+kfk0MHBsj7IfaDghJ0Uf1e06P06g+CjoYsjkQEsgha46Ktw== 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=1784040985; 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=kAFLMh8cIqwW414P9Fve8XshZaSJPWtxFSjlJqe/ENU=; b=gCmX5zsbkKRLS59j/kOB04kmNfPlllF2BrXepMWnhrnPTOHzzuQlmYuzHIz3rJoUNte/5S eW0waBFjZd5lXCY9+AAzuNolQ32nI73mmJVIji4ekwmD/a/YkXFDDz4FhNHRNpglKcuVMY Tv1K7WO8cq+E9TuHW1mCAiQ848T7xmPVb2DVhNaKA7aID0seaND8GO0RwtREWihKNLKof1 aGU5ITqorReW0weqaZMo87PXBU+KwXhKX/9EzjI+J1iV9dB1Tg/sE6J334qMsgmk5rSqWN b8IZTyM2iNvsUF4JXaBgPz/g7YLDWmvcc1lKwfumDG1AjP6ILU6gerKAtlNf2A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h02ST1qHwzpn5 for ; Tue, 14 Jul 2026 14:56:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3e951 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 14:56:25 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 49b5356bc3e9 - stable/14 - linux/futex: Don't load a timeout when try-locking a mutex 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 49b5356bc3e97ec42709996814b0e4d8a582eafb Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 14:56:25 +0000 Message-Id: <6a564e19.3e951.4a9c9d0f@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=49b5356bc3e97ec42709996814b0e4d8a582eafb commit 49b5356bc3e97ec42709996814b0e4d8a582eafb Author: Mark Johnston AuthorDate: 2026-07-07 22:52:56 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 14:08:41 +0000 linux/futex: Don't load a timeout when try-locking a mutex linux_sys_futex() does not copyin a timespec for the timeout if the operation is LINUX_FUTEX_TRYLOCK_PI, presumably because it doesn't make sense to specify a timeout for a try-lock operation. However, this means that we pass a userspace timespec pointer to linux_umtx_abs_timeout_init(). Modify linux_futex_lock_pi() to not initialize the timeout if we're try-locking. Reviewed by: kib, dchagin Reported by: Yuxiang Yang, Yizhou Zhao, Ao Wang, Xuewei Feng, Qi Li, and Ke Xu from Tsinghua University using GLM-5.2 from Z.ai MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58061 (cherry picked from commit 407c7c339adb429efcb6658accd16399031c34ca) --- sys/compat/linux/linux_futex.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/sys/compat/linux/linux_futex.c b/sys/compat/linux/linux_futex.c index 37d0142bae8b..27a6e580cc70 100644 --- a/sys/compat/linux/linux_futex.c +++ b/sys/compat/linux/linux_futex.c @@ -356,7 +356,7 @@ linux_futex(struct thread *td, struct linux_futex_args *args) static int linux_futex_lock_pi(struct thread *td, bool try, struct linux_futex_args *args) { - struct umtx_abs_timeout timo; + struct umtx_abs_timeout timo, *timop; struct linux_emuldata *em; struct umtx_pi *pi, *new_pi; struct thread *td1; @@ -370,8 +370,12 @@ linux_futex_lock_pi(struct thread *td, bool try, struct linux_futex_args *args) &uq->uq_key); if (error != 0) return (error); - if (args->ts != NULL) - linux_umtx_abs_timeout_init(&timo, args); + if (!try && args->ts != NULL) { + timop = &timo; + linux_umtx_abs_timeout_init(timop, args); + } else { + timop = NULL; + } umtxq_lock(&uq->uq_key); pi = umtx_pi_lookup(&uq->uq_key); @@ -546,8 +550,7 @@ linux_futex_lock_pi(struct thread *td, bool try, struct linux_futex_args *args) /* We set the contested bit, sleep. */ error = umtxq_sleep_pi(uq, pi, owner, "futexp", - args->ts == NULL ? NULL : &timo, - (args->flags & FUTEX_SHARED) != 0); + timop, (args->flags & FUTEX_SHARED) != 0); if (error != 0) continue; From nobody Tue Jul 14 23:08:23 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 4h0FN753Hlz6lRpH for ; Tue, 14 Jul 2026 23:08:23 +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 4h0FN72yLZz3J0N for ; Tue, 14 Jul 2026 23:08:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784070503; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hgYwFMphbjH3KyCeUYBsGSDgpIXZ+w4kG3qxyEXCuSs=; b=NTE0L9yBowuhdYdVB2U7o3fgmSpEmHgDTC48+juqkyLyah57hkW04TM2SBZV5H7Hj3/7Jl wAOkmmGhAHcv0jGKXUkVbe5uxZMkR6XwjTGyZHtGvZub9gCYI+wSULoQXGQpIZ4A0WXFt8 qfcK6CkzbiZ+dLd0Vh6tvVE3REogyV8IO+r6o/U6Sm3upJrLFlYMjX9hpmWYbj3PsOrSFg +y+PKwU3Of59IbAzvWi7FkbDUnqWyjrV47Xucbkh9sLhcRyyFsS4yI0jCRtMt9Wx/Sdh0k EtWkBH8blb2Qc2a/u2Z+0DlmZHPXL66R2agS/5SEOLPXd97ZMgL9eT3YsCOzdg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784070503; a=rsa-sha256; cv=none; b=nLWSWeBcMurLdYocmPzDvRNv1DMfCcpzzdW1tHKwJfEcpn+TY1h6dDhj/34A+Ryj7l8/ei EK6vM4MsVlfXGFNVTE0yiDIpa8pREAWDAzCsdZwac0jzsyXMhL1CRbHWc7TCRze/MetFoN tzdsr063ouVWQAH/g1v21gaN6gdz66TklvWEKGSuUn466S0vOR2GyfIswFDmM+ewOptYb4 RlhYQwr8HDkbE5eVpivH9G4lgpTaWD8Y5zpZlBBBg1ZPBsm9RB0zzA7nUnrTYkrp2H8zbR 4JNAogguXNE1/shn8bHNtLNhs/Nsefxu34/+xmNjzVTy+xPI90rtTYFfrAoyCw== 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=1784070503; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hgYwFMphbjH3KyCeUYBsGSDgpIXZ+w4kG3qxyEXCuSs=; b=aNUO67dGcb7QmBDyly6ck8DKHHSevhp4ok4JDRW0Y9bh0R+fZ4hch3wUy2tEIy0Lrs9ALA A5/LJVqG+Q6QpXz27VEl3V8yp2bcVcPBWAnEfikXGDUXAWUgMi6BWl8s0QC6YrRk/2e1xH WM4wnEZFYQEmQnlAr9fKIDr+GXrvY8RXCHVDIYo3+e7+9MjSOUtSdA6uTUSebTPUCO7uv9 IwbvTMUzEX2IyP8ChMMUZ95zMJbwOMMdKsjgwiN7FDk1ycYMMNEOIKhoeD/NEMJ4Z1d54M apP12XkVXlmZoCS7OeGRashro7QA2EFkfdcNL4QJATuGFLBO8HN1ThxRv+2uMQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h0FN71Fgwz14Wv for ; Tue, 14 Jul 2026 23:08:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 23170 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 23:08:23 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Gleb Smirnoff From: Mark Johnston Subject: git: d73ce9d7264a - stable/14 - accf_tls: accept filter that waits for TLS handshake header 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d73ce9d7264a0c7a506fc5f0acfe5fa051dad7f8 Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 23:08:23 +0000 Message-Id: <6a56c167.23170.24e8dc55@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=d73ce9d7264a0c7a506fc5f0acfe5fa051dad7f8 commit d73ce9d7264a0c7a506fc5f0acfe5fa051dad7f8 Author: Gleb Smirnoff AuthorDate: 2024-04-24 20:36:43 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 23:08:12 +0000 accf_tls: accept filter that waits for TLS handshake header (cherry picked from commit c68eed82a3dcadf0c826e9e150f59769f4c44f24) --- share/man/man9/Makefile | 1 + share/man/man9/accf_tls.9 | 95 +++++++++++++++++++++++++++++++++++++ sys/conf/NOTES | 1 + sys/conf/files | 1 + sys/conf/options | 1 + sys/modules/Makefile | 1 + sys/modules/accf_tls/Makefile | 7 +++ sys/netinet/accf_tls.c | 106 ++++++++++++++++++++++++++++++++++++++++++ tests/sys/kern/socket_accf.c | 61 +++++++++++++++++++++++- 9 files changed, 273 insertions(+), 1 deletion(-) diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile index 4e275e3099e9..6ae2a2e62d12 100644 --- a/share/man/man9/Makefile +++ b/share/man/man9/Makefile @@ -5,6 +5,7 @@ MAN= accept_filter.9 \ accf_data.9 \ accf_dns.9 \ accf_http.9 \ + accf_tls.9 \ acl.9 \ alq.9 \ altq.9 \ diff --git a/share/man/man9/accf_tls.9 b/share/man/man9/accf_tls.9 new file mode 100644 index 000000000000..331ea2aa4fb8 --- /dev/null +++ b/share/man/man9/accf_tls.9 @@ -0,0 +1,95 @@ +.\" +.\" Copyright (c) 2024 Gleb Smirnoff +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR +.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT, +.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.\" " +.Dd April 24, 2024 +.Dt ACCF_TLS 9 +.Os +.Sh NAME +.Nm accf_tls +.Nd "buffer incoming connections until a TLS handshake like requests arrive" +.Sh SYNOPSIS +.Nm options INET +.Nm options ACCEPT_FILTER_TLS +.Nm kldload accf_tls +.Sh DESCRIPTION +This is a filter to be placed on a socket that will be using +.Fn accept 2 +to receive incoming HTTPS connections. +It prevents the application from receiving the connected descriptor via +.Fn accept 2 +until a full TLS handshake has been buffered by the kernel. +The +.Nm +will first check that byte at offset 0 is +.Va 0x16 , +which matches handshake type. +Then it will read 2-byte request length value at offset 3 and will +continue reading until reading the entire length of the handshake is buffered. +If something other than +.Va 0x16 +is at offset 0, the kernel will allow the application to receive the +connection descriptor via +.Fn accept 2 . +.Pp +The utility of +.Nm +is such that a server will not have to context switch several times +before performing the initial parsing of the request. +This effectively reduces the amount of required CPU utilization +to handle incoming requests by keeping active +processes in preforking servers such as Apache low +and reducing the size of the file descriptor set that needs +to be managed by interfaces such as +.Fn select , +.Fn poll +or +.Fn kevent +based servers. +.Sh EXAMPLES +Assuming ACCEPT_FILTER_TLS has been included in the kernel config +file or the +.Nm +module +has been loaded, this will enable the TLS accept filter +on the socket +.Fa sok . +.Bd -literal -offset 0i + struct accept_filter_arg afa; + + bzero(&afa, sizeof(afa)); + strcpy(afa.af_name, "tlsready"); + setsockopt(sok, SOL_SOCKET, SO_ACCEPTFILTER, &afa, sizeof(afa)); +.Ed +.Sh SEE ALSO +.Xr setsockopt 2 , +.Xr accept_filter 9 +.Sh HISTORY +The +.Nm +accept filter was introduced in +.Fx 15.0 . +.Sh AUTHORS +The +.Nm +filter was written by +.An Maksim Yevmenkin . diff --git a/sys/conf/NOTES b/sys/conf/NOTES index a81d04d0dfcd..9dc204dd4d14 100644 --- a/sys/conf/NOTES +++ b/sys/conf/NOTES @@ -1064,6 +1064,7 @@ options MBUF_PROFILING options ACCEPT_FILTER_DATA options ACCEPT_FILTER_DNS options ACCEPT_FILTER_HTTP +options ACCEPT_FILTER_TLS # TCP_SIGNATURE adds support for RFC 2385 (TCP-MD5) digests. These are # carried in TCP option 19. This option is commonly used to protect diff --git a/sys/conf/files b/sys/conf/files index d3affcf0a24d..4f5ac7de8988 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -4296,6 +4296,7 @@ netgraph/ng_vlan_rotate.c optional netgraph_vlan_rotate netinet/accf_data.c optional accept_filter_data inet netinet/accf_dns.c optional accept_filter_dns inet netinet/accf_http.c optional accept_filter_http inet +netinet/accf_tls.c optional accept_filter_tls inet netinet/if_ether.c optional inet ether netinet/igmp.c optional inet netinet/in.c optional inet diff --git a/sys/conf/options b/sys/conf/options index 6337eb14f6a4..ed97d359bd8a 100644 --- a/sys/conf/options +++ b/sys/conf/options @@ -421,6 +421,7 @@ ISP_FCTAPE_OFF opt_isp.h ACCEPT_FILTER_DATA ACCEPT_FILTER_DNS ACCEPT_FILTER_HTTP +ACCEPT_FILTER_TLS ALTQ opt_global.h ALTQ_CBQ opt_altq.h ALTQ_CDNR opt_altq.h diff --git a/sys/modules/Makefile b/sys/modules/Makefile index b185744527d8..16ba0024864b 100644 --- a/sys/modules/Makefile +++ b/sys/modules/Makefile @@ -20,6 +20,7 @@ SUBDIR= \ accf_data \ accf_dns \ accf_http \ + accf_tls \ acl_nfs4 \ acl_posix1e \ ${_acpi} \ diff --git a/sys/modules/accf_tls/Makefile b/sys/modules/accf_tls/Makefile new file mode 100644 index 000000000000..f45b2f057f0a --- /dev/null +++ b/sys/modules/accf_tls/Makefile @@ -0,0 +1,7 @@ + +.PATH: ${SRCTOP}/sys/netinet + +KMOD= accf_tls +SRCS= accf_tls.c + +.include diff --git a/sys/netinet/accf_tls.c b/sys/netinet/accf_tls.c new file mode 100644 index 000000000000..9f1ed7000474 --- /dev/null +++ b/sys/netinet/accf_tls.c @@ -0,0 +1,106 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause-FreeBSD + * + * Copyright (c) 2018-2024 Netflix + * Author: Maksim Yevmenkin + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#define ACCEPT_FILTER_MOD + +#include +#include +#include +#include +#include +#include +#include + +static int sbfull(struct sockbuf *sb); +static uint8_t sbmget8(struct mbuf *m, int offset); +static int so_hastls(struct socket *so, void *arg, int waitflag); + +ACCEPT_FILTER_DEFINE(accf_tls, "tlsready", so_hastls, NULL, NULL, 1); + +static int +sbfull(struct sockbuf *sb) +{ + + return (sbused(sb) >= sb->sb_hiwat || sb->sb_mbcnt >= sb->sb_mbmax); +} + +static uint8_t +sbmget8(struct mbuf *m, int offset) +{ + struct mbuf *n = m->m_nextpkt; + + while (m != NULL && offset >= m->m_len) { + offset -= m->m_len; + m = m->m_next; + if (m == NULL) { + m = n; + n = m->m_nextpkt; + } + } + + return *(mtod(m, uint8_t *) + offset); +} + +static int +so_hastls(struct socket *so, void *arg, int waitflag) +{ + struct sockbuf *sb = &so->so_rcv; + int avail; + uint16_t reclen; + + if ((sb->sb_state & SBS_CANTRCVMORE) || sbfull(sb)) + return (SU_ISCONNECTED); /* can't wait any longer */ + + /* + * struct { + * ContentType type; - 1 byte, 0x16 handshake + * ProtocolVersion version; - 2 bytes (major, minor) + * uint16 length; - 2 bytes, NBO, 2^14 max + * opaque fragment[TLSPlaintext.length]; + * } TLSPlaintext; + */ + + /* Did we get at least 5 bytes */ + avail = sbavail(sb); + if (avail < 5) + return (SU_OK); /* nope */ + + /* Does this look like TLS handshake? */ + if (sbmget8(sb->sb_mb, 0) != 0x16) + return (SU_ISCONNECTED); /* nope */ + + /* Did we get a complete TLS record? */ + reclen = (uint16_t) sbmget8(sb->sb_mb, 3) << 8; + reclen |= (uint16_t) sbmget8(sb->sb_mb, 4); + + if (reclen <= 16384 && avail < (int) 5 + reclen) + return (SU_OK); /* nope */ + + return (SU_ISCONNECTED); +} diff --git a/tests/sys/kern/socket_accf.c b/tests/sys/kern/socket_accf.c index 384062810c8d..747bcda87010 100644 --- a/tests/sys/kern/socket_accf.c +++ b/tests/sys/kern/socket_accf.c @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: BSD-2-Clause * - * Copyright (c) 2022 Gleb Smirnoff + * Copyright (c) 2022-2024 Gleb Smirnoff * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -29,6 +29,7 @@ #include #include #include +#include #include @@ -151,10 +152,68 @@ ATF_TC_BODY(http, tc) ATF_REQUIRE((a = accept(l, NULL, 0)) > 0); } +ATF_TC_WITHOUT_HEAD(tls); +ATF_TC_BODY(tls, tc) +{ + struct accept_filter_arg afa = { + .af_name = "tlsready" + }; + struct sockaddr_in sin; + int l, s, a; + + l = listensock(&sin); + accfon(l, &afa); + s = clientsock(&sin); + + /* 1) No data. */ + ATF_REQUIRE(accept(l, NULL, 0) == -1); + ATF_REQUIRE(errno == EAGAIN); + + /* 2) Less than 5 bytes. */ + ATF_REQUIRE(usend(s, "foo", sizeof("foo")) == sizeof("foo")); + ATF_REQUIRE(errno == EAGAIN); + + /* 3) Something that doesn't look like TLS handshake. */ + ATF_REQUIRE(usend(s, "bar", sizeof("bar")) == sizeof("bar")); + ATF_REQUIRE((a = accept(l, NULL, 0)) > 0); + + close(s); + close(a); + + /* 4) Partial TLS record. */ + s = clientsock(&sin); + struct { + uint8_t type; + uint16_t version; + uint16_t length; + } __attribute__((__packed__)) header = { + .type = 0x16, + .length = htons((uint16_t)(arc4random() % 16384)), + }; + _Static_assert(sizeof(header) == 5, ""); + ATF_REQUIRE(usend(s, &header, sizeof(header)) == sizeof(header)); + ssize_t sent = 0; + do { + size_t len; + char *buf; + + ATF_REQUIRE(accept(l, NULL, 0) == -1); + ATF_REQUIRE(errno == EAGAIN); + + len = arc4random() % 1024; + buf = alloca(len); + ATF_REQUIRE(usend(s, buf, len) == (ssize_t)len); + sent += len; + } while (sent < ntohs(header.length)); + /* TLS header with bytes >= declared length. */ + ATF_REQUIRE((a = accept(l, NULL, 0)) > 0); +} + ATF_TP_ADD_TCS(tp) { ATF_TP_ADD_TC(tp, data); ATF_TP_ADD_TC(tp, http); + ATF_TP_ADD_TC(tp, tls); return (atf_no_error()); } From nobody Tue Jul 14 23:08:24 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 4h0FN84hpwz6lRjb for ; Tue, 14 Jul 2026 23:08:24 +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 4h0FN83HQYz3J3P for ; Tue, 14 Jul 2026 23:08:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784070504; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=INomFkYzOC4adiC9ivUEG6AKrW7NlB5yloLxDKHZbTk=; b=K/jDHAq1UaTcT98BIf/vlwCLy2yA6qbHSTijh/WBUVC/0pTo4t196DkvGMxD7LRLIWXt2e RXrOBR5ueLVhmPXJjbMc8eWkLNuJfx4phXF68Esh0cLvK+lUD6L2HPskHupjrrj+F1H07C EJKraDVKuj0VhkNtrBaQ/EJpmys3fkHtZSl958TN5rSv3/xwSymbvjlDjx5EtGFfJQQsBS Nn+kSTDdQXTcpJnssvwZFNdzTQlAVXjO1YhlyjizszgYUrkM3jX7JQkJKB+RfoIbFg14qW jdmNk/A9Jsl632afTgOMgha5Dp5jc8vF0mpwTVlxfdOUTtn8W/6x/tzANRXQ0g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784070504; a=rsa-sha256; cv=none; b=qKimHK410VwV5xXLa7PKizFSQf76ICiNQJkfs/k3jq/H/AMP5QG3yJVhmCWlnRJHJKgVjb f8vUtdgST7fAhtrQLUCHKw8PW9GBekFJdLQOHfkZ0kjh1lGjFSGNjR8HmhdhdzETVYvsJX ZV7yhKaoVFPuIen+t1lH1xSk+W2e2zMjuLgjX/c0nhJiceU6/kBy8nhRCimkgSQXYoGxGe s0GtG3jd10OT8yRsS3ccPCJV9bUDXzSTLsJynZruYCOcFrfiuqO7c+uTdMeKGDW5Eg3D2F qJ+uFT7UR646zvR3jIfGgQvCyTY2FxGEj1P+NIhgeEfvZ+22b6Gr1Gc5nACpRA== 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=1784070504; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=INomFkYzOC4adiC9ivUEG6AKrW7NlB5yloLxDKHZbTk=; b=vvdie9bf/QjF5qYd0iqHas5MRR9rPsvk2jw5oTPAfQPOzRrl6xyWnfaLrTCUPJlVUVrf9X ohAbIUVv9xYMrC2xn6gJobhntqmOhcKEEYR04c3nvn/W+ILt+Yv14elXipg3lNj5KijKlJ zvylcYdP0pDDINKiQeJ2ptprKgJWd9WQoQpmm6CAw67Qc9iWX70/q4h9cNu59u3FSwH8sv nD7gMjtrJO6ymfIEovMEp7M1n6QSin1O70MUPmSfCvJp3n6wh59eKblcqR+JfvMqz31Obu t7W9saOstc2rNqIW0urJBSiBvYNqNUMbXjBH1oF2FDjPThzICoDuJnz9qQ1aJw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h0FN8271sz155N for ; Tue, 14 Jul 2026 23:08:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 23789 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 23:08:24 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Gleb Smirnoff From: Mark Johnston Subject: git: 39e1726a20c8 - stable/14 - accept_filter: return different errors for non-listener and a busy socket 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 39e1726a20c80c8acef7a45ca1686ac8a4646c6f Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 23:08:24 +0000 Message-Id: <6a56c168.23789.eefd7bc@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=39e1726a20c80c8acef7a45ca1686ac8a4646c6f commit 39e1726a20c80c8acef7a45ca1686ac8a4646c6f Author: Gleb Smirnoff AuthorDate: 2024-04-25 04:50:58 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 23:08:12 +0000 accept_filter: return different errors for non-listener and a busy socket The fact that an accept filter needs to be cleared first before setting to a different one isn't properly documented. The requirement that the socket needs already be listening, although trivial, isn't documented either. At least return a more meaningful error than EINVAL for an existing filter. Cover this with a test case. (cherry picked from commit 19307b86d31b7dea4bb5c3f7e233ee0e59049258) --- sys/kern/uipc_accf.c | 6 +++++- tests/sys/kern/socket_accf.c | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/sys/kern/uipc_accf.c b/sys/kern/uipc_accf.c index c63b5a1179bc..9e30e7839103 100644 --- a/sys/kern/uipc_accf.c +++ b/sys/kern/uipc_accf.c @@ -276,10 +276,14 @@ accept_filt_setopt(struct socket *so, struct sockopt *sopt) * without first removing it. */ SOCK_LOCK(so); - if (!SOLISTENING(so) || so->sol_accept_filter != NULL) { + if (__predict_false(!SOLISTENING(so))) { error = EINVAL; goto out; } + if (__predict_false(so->sol_accept_filter != NULL)) { + error = EBUSY; + goto out; + } /* * Invoke the accf_create() method of the filter if required. The diff --git a/tests/sys/kern/socket_accf.c b/tests/sys/kern/socket_accf.c index 747bcda87010..ae6522397cf7 100644 --- a/tests/sys/kern/socket_accf.c +++ b/tests/sys/kern/socket_accf.c @@ -209,11 +209,43 @@ ATF_TC_BODY(tls, tc) ATF_REQUIRE((a = accept(l, NULL, 0)) > 0); } +/* Check changing to a different filter. */ +ATF_TC_WITHOUT_HEAD(change); +ATF_TC_BODY(change, tc) +{ + struct accept_filter_arg dfa = { + .af_name = "dataready" + }; + struct accept_filter_arg hfa = { + .af_name = "httpready" + }; + struct sockaddr_in sin; + int n, l; + + l = listensock(&sin); + accfon(l, &dfa); + + /* Refuse to change filter without explicit removal of the old one. */ + ATF_REQUIRE(setsockopt(l, SOL_SOCKET, SO_ACCEPTFILTER, &hfa, + sizeof(hfa)) != 0 && errno == EBUSY); + + /* But allow after clearing. */ + ATF_REQUIRE(setsockopt(l, SOL_SOCKET, SO_ACCEPTFILTER, NULL, 0) == 0); + ATF_REQUIRE(setsockopt(l, SOL_SOCKET, SO_ACCEPTFILTER, &hfa, + sizeof(hfa)) == 0); + + /* Must be listening socket. */ + ATF_REQUIRE((n = socket(PF_INET, SOCK_STREAM, 0)) > 0); + ATF_REQUIRE(setsockopt(n, SOL_SOCKET, SO_ACCEPTFILTER, &dfa, + sizeof(dfa)) != 0 && errno == EINVAL); +} + ATF_TP_ADD_TCS(tp) { ATF_TP_ADD_TC(tp, data); ATF_TP_ADD_TC(tp, http); ATF_TP_ADD_TC(tp, tls); + ATF_TP_ADD_TC(tp, change); return (atf_no_error()); } From nobody Tue Jul 14 23:08:25 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 4h0FNB18yMz6lRfG for ; Tue, 14 Jul 2026 23:08:26 +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 4h0FN94dCpz3Hrt for ; Tue, 14 Jul 2026 23:08:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784070505; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3UPyh/nbudl+oF3d8XUBdIb5/GZ932TFVOteDHt6vEk=; b=ppLpnN79tJPSsEJrkAxj512NOQIFK22x2YmxWXDErcUzjPqLcHOn/frxSQU+IIr7jmHB4b 6GhUxHBaVYka6gloaASUQp4qoJvKctW9N7kF4UWcu97ulPweMuNEh13XWKJFRT5+Omy2EB mHXC30tUGsUJQBsWumQL2bIU02JT+Cxi8IXcyjipfxXkqtR8PT3idZHsVWyHmUjymX1ZDO 5RwdzmB1+aWU3mtD7xC38JlvOJ1ot+95vhS1rRPTHaTQyUgJS7TgDK7ta7yR0azgPTWU4H ZOzG3sBJumDZFWv5bBjBNGr+o0XW3lwKuHj9qHvifzQNlZ3MGtnQs/shpwC3/Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784070505; a=rsa-sha256; cv=none; b=i+okLpkZt/pWDa/d0hlLzxQ1py42Zal7+5q1CpdAQ2lOP7LX4frvYziznD9BJfeUVeOZsT A9wxpiDvd75U1IxvOA1K5iIN3GkM7ACoeWerJWrtre6sNs7NCp598LjlxbAgMM0OBfg1lU qHRjcPxCnapv4PYzRtrcVB5iysKz4IFXSyIR9PTDAi3n4qxMdca56Yn0uv97E6Ij2n6hkD QqvCEip9HBr94uWqqT2n0zOakQBu36X+X+/0GrrUniVnic02NhfHKFI3pAStqXYGz0ATJE 1iOUSlzXdyEgPU1TqGeY6n4RGTIdQis8w5g8yWzI1gDLZmh+zHfOJg+oZKhlWg== 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=1784070505; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3UPyh/nbudl+oF3d8XUBdIb5/GZ932TFVOteDHt6vEk=; b=UL5u5+fzEn7Nv+XnXgPT8Pl5xxliMw1LBXghQcBF1GuLDfzH8mlJmtGX76MTXKnhdfT4sU FhyRcBjjf93SYqw9BUIMEsiimbnEYQ7sRXmaMYu/kFe9i10Y/N0An7dQ+RzPE39//+TvKH BDxTOrrbrGtvaMK39nQOQdGEM0nKuKl4mCb2vv//O1GCEpoEKNN22zOW26LJ/frxx6TksJ Zwfu1y0iIzSy/4KHjQhMFjwZU98mRyEl9IVmWZhiCshV8kUEtbYvaQBdCPtqaLiu4Lv20P kEUICh2kuWtH9k9z4GTCwCsWj6jGmrHMCS/DqU2ImYdJbHm6R6vgS6GF8LuNBA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h0FN92x2dz14Wx for ; Tue, 14 Jul 2026 23:08:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 23175 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 23:08:25 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Gleb Smirnoff From: Mark Johnston Subject: git: e56cb0b4cc3c - stable/14 - sockets: inherit SO_ACCEPTFILTER from listener to child 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e56cb0b4cc3c48bbf287fc5eba427c66b228acbb Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 23:08:25 +0000 Message-Id: <6a56c169.23175.554d364f@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=e56cb0b4cc3c48bbf287fc5eba427c66b228acbb commit e56cb0b4cc3c48bbf287fc5eba427c66b228acbb Author: Gleb Smirnoff AuthorDate: 2024-04-24 00:17:14 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 23:08:13 +0000 sockets: inherit SO_ACCEPTFILTER from listener to child This is crucial for operation of accept_filter(9). See added comment. Fixes: d29b95ecc0d049406d27a6c11939d40a46658733 (cherry picked from commit a8acc2bf5699556946dda2a37589d3c3bd9762c6) --- sys/kern/uipc_socket.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index 515f038b78fa..c9691d351a58 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -1166,9 +1166,13 @@ solisten_clone(struct socket *head) * including those completely irrelevant to a new born socket. For * compatibility with older versions we will inherit a list of * meaningful options. + * The crucial bit to inherit is SO_ACCEPTFILTER. We need it present + * in the child socket for soisconnected() promoting socket from the + * incomplete queue to complete. It will be cleared before the child + * gets available to accept(2). */ - so->so_options = head->so_options & (SO_KEEPALIVE | SO_DONTROUTE | - SO_LINGER | SO_OOBINLINE | SO_NOSIGPIPE); + so->so_options = head->so_options & (SO_ACCEPTFILTER | SO_KEEPALIVE | + SO_DONTROUTE | SO_LINGER | SO_OOBINLINE | SO_NOSIGPIPE); so->so_linger = head->so_linger; so->so_state = head->so_state; so->so_fibnum = head->so_fibnum; From nobody Tue Jul 14 23:08:26 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 4h0FNC1KTGz6lRh3 for ; Tue, 14 Jul 2026 23:08:27 +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 4h0FNB6m0cz3HvT for ; Tue, 14 Jul 2026 23:08:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784070506; 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=ueScVxeMYaMLMJMmODnE6wtzcu+GIz6OP2s/CSiqf/E=; b=stoAV81C17QCqAegGXN0K6GQq0aLOQsPQFYHmQLaXJy79V4FHjP5MzSYA4xFI5u2zKqyZh 6hAODtgBPoizDtH2g3SUE+uPLF50mSG52s0Aym2pVdktJvNA3ZTjQwoFWDg4O4ylZvlIT0 W0qcmhRdP6E88uLBw5/HUaU4KHcxnTjiL6B3WCfW2xwVccc6kUSUDmnjs7mybg9rAVrHLK 8EZa8pmbcxg9VxY2pb6WDEARIHjJuV3vLQFVoEg3dR4e8la0ZZnxAeoOfd1ayU8cqHMbTK ntsIUsnuzpuZQkqxFglY0eaUpeU8OHml1OUZ+yMBT+qaw1eZK++ROSqcLML26g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784070506; a=rsa-sha256; cv=none; b=Iwo+O5zLdHIc2AUSEWQJqB5xKxsYdFgTrjZB7phLmYPftGWwD4BaVKMzHMpIcdID4hJriG 7iqWtyM8h81BA6bCPAb42cqrxCu/svARvs1iUAGUPSMm5aZHonwe+L8ombzHx+c7tR+jx2 5aR4VAlY/77+cRVN3wTH6x/ES5Fe28YD1SE0dr6PnPV+eIK5ve7BNhxRUqKKYcC3ocZFzZ ZTG+0dcmo0y3pM8oD8HgOyABpD36yF8/oYma+urkNf1kPjEyBuXw2n5apqr/MgKLS3Odn9 rI02f9liNSDWjezEgS9ewj5vSs+zb/wDFu8I2xo1i7JntJdJbd3VzsbbNH/cjw== 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=1784070506; 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=ueScVxeMYaMLMJMmODnE6wtzcu+GIz6OP2s/CSiqf/E=; b=di8ylYOo58KQ3dmCyBXH1gMOMtWuJh85+ZY8Wn+tShlxZMnpeL5XTKp6jkiGOCX1dtg4No NfhVC3vAKFeUySwkdkX3WMNDYm9wJ9IEkC2zw5oiiDt3pUKWs1Z0yOrKwSr6kNmi1hk9OV UfMnVOkFkGaLMI9QR5dEaI7yqpRZNrcPrHkoQ58/tnw08Z3cNi70Z7PvOZUldUTbIt4uMQ E+zGNIuisXlQ3/wfypix2irplHUyYaugwmWCqJuwJGJ08l9SPwNLwNChR/1xZbCkik1eHa gWyQjzi/PyiLf5B1P9z0GlRl8G5PSwJW0xi5o6bq3xFvJGEBD7lbHz9ZJllZgA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h0FNB3kdLz14np for ; Tue, 14 Jul 2026 23:08:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2317a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 23:08:26 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 4d07fdc1eb0b - stable/14 - fibs_test: Mark same_ip_multiple_ifaces_fib0 as expected to fail 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 4d07fdc1eb0b8ff9ee3b74ac0bceaf07b1c813f0 Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 23:08:26 +0000 Message-Id: <6a56c16a.2317a.4e7f0760@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=4d07fdc1eb0b8ff9ee3b74ac0bceaf07b1c813f0 commit 4d07fdc1eb0b8ff9ee3b74ac0bceaf07b1c813f0 Author: Mark Johnston AuthorDate: 2025-06-26 21:19:14 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 23:08:13 +0000 fibs_test: Mark same_ip_multiple_ifaces_fib0 as expected to fail The test relies on being able to assign the same interface address to two different tap interfaces; it then removes one of the addresses, which at one point would trigger a kernel panic. Since 361a8395f0b0 it is not possible to assign an address multiple times this way, so the test fails. Just mark it as expected to fail for now: if the kernel's behaviour here changes again, this test might be a useful seatbelt. MFC after: 2 weeks (cherry picked from commit 6bdc9743d8f8c9727e5101d6cb6f2a85a13c5acb) --- tests/sys/netinet/fibs_test.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/sys/netinet/fibs_test.sh b/tests/sys/netinet/fibs_test.sh index 794d22a3882b..2e4a7c3da7db 100644 --- a/tests/sys/netinet/fibs_test.sh +++ b/tests/sys/netinet/fibs_test.sh @@ -320,6 +320,9 @@ same_ip_multiple_ifaces_fib0_body() # Setup the interfaces, then remove one alias. It should not panic. setup_tap 0 inet ${ADDR} ${MASK0} TAP0=${TAP} + # After commit 361a8395f0b0e6f254fd138798232529679d99f6 it became + # an error to assign the same interface address twice. + atf_expect_fail "The test results in an ifconfig error and thus spuriously fails" setup_tap 0 inet ${ADDR} ${MASK1} TAP1=${TAP} ifconfig ${TAP1} -alias ${ADDR} From nobody Tue Jul 14 23:08:22 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 4h0FNC4mVrz6lRfL for ; Tue, 14 Jul 2026 23:08:27 +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 4h0FNC2WCqz3J7P for ; Tue, 14 Jul 2026 23:08:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784070507; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rs9xcruhQImfef8h8+4E30INQJQBZmo+q0EEWBabY3s=; b=TiU35JrGtiXdPbznZEDCKBBTdtOegmsWVh8jB7IYTQUBbpTgTf7xLjRIjt2PTdwjAnBPfB 5Htq/v8/mOsivGyiv5EbQ7+WLXU2yP1+NQVJaRUcCsgSzD9dnp2qxaqtVm4e8HE/FPZ0xD vFlgsg79pB8O/NIJIyKFhUpXe2Vsv6/aFMuP0mIio0wBrhtZGfPXrFTMyrdcnuG161p8G6 Hrejrvjv2YlEiJ/K2xf6wxmBt03nyHBO2HvdCNI4dvui5eAavvPGfAMaKYkjStD08ESQT4 ou2W/wN3PUsJB6YtFy/1BAbK8ptn1co4UJPY309yFTUccw366S5uRJCBju1URg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784070507; a=rsa-sha256; cv=none; b=bn7+CbkqkWJIrmfepEDEOi+M2jwr5f7I9Of4FD61JQyv1R8Z/eYWFHLiItv19/QMo16FW6 7CQiqoOogRR60+9kqMvU/2uClnOivuNnEfVarSrneWyIlYP8X2pF/OEY8GKmTgl5wT03dL anlOVFhE4JtZ/sqJOo8oliCEogfxmGiigP6fYAUkZkC90trwnWhBfOhpVTuaaZiiwbVMn6 4VJhvIrKuXCEgm3DyH/wu1AaaItmlFIzSXoBJdLzqKYy4hy+Uf0mGPr2ESTY3ya8Y0wrxO yZcNkwV7SIFAcAWGKXK2WnICoywkGBb5k5VgTrK6qDDY+4iXBi+3izANxkFlXA== 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=1784070507; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rs9xcruhQImfef8h8+4E30INQJQBZmo+q0EEWBabY3s=; b=izZgqIKnR24nnknaDyTGNdiXs+j7wFHOPgaWlP7vqPCSm5hjC7WPu/yG5pstVzwvc5g1fT UaXgrtRGDzaPMwD25OiMXJsmgy78Pj6J0LQ7feiluYzzPVf7xMewGLx/Kk+4Wy1HEJQMDs 0UpEdRLgstpaupj/3Os8gmEvdkxjjOwnqnVxlh5Mf5u2cMkDkujnxrnmN+mrhsu92cTMQ5 HTLh62xAstKfuEPVY3wB7OTjN4WIIugLUS3PAs0cDRTxmjlXA8ZajiM8mINrvLIEeG8xkv B6rS8tP0qE2WCFFIABmp4xQuvOMECqNLyPw+QNezzjw6XqriMAIP9Um70j9MkA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h0FNC0l0Tz155Q for ; Tue, 14 Jul 2026 23:08:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 21c44 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 14 Jul 2026 23:08:22 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Hiroki Sato From: Mark Johnston Subject: git: 8cd74424eb6d - stable/14 - netinet6: Remove ndpr_raf_ra_derived flag 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 8cd74424eb6d739c1616b3b7b4545faad8e666f2 Auto-Submitted: auto-generated Date: Tue, 14 Jul 2026 23:08:22 +0000 Message-Id: <6a56c166.21c44.21c63e94@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=8cd74424eb6d739c1616b3b7b4545faad8e666f2 commit 8cd74424eb6d739c1616b3b7b4545faad8e666f2 Author: Hiroki Sato AuthorDate: 2025-06-12 18:46:46 +0000 Commit: Mark Johnston CommitDate: 2026-07-14 23:08:12 +0000 netinet6: Remove ndpr_raf_ra_derived flag This flag was introduced at 8036234c72c9361711e867cc1a0c6a7fe0babd84 to prevent the SIOCSPFXFLUSH_IN6 ioctl from removing manually-added entries. However, this flag did actually not work due to an incomplete implementation making prelist_update() not handle it before calling nd6_prelist_add(). This patch removes the flag because a prefix is derived from an RA always has an entry in the ndpr_advrtrs member in the struct nd_prefix. Having a separate flag is not a good idea because it can cause a mismatch between the flag and the ndpr_advrtrs entry. Testing using LIST_EMPTY() is simpler for the origial goal. This also removes in a prefix check in the ICMPV6CTL_ND6_PRLIST sysctl to exclude manually-added entries. This ioctl is designed to list all entries, and there is no relationship to SIOCSPFXFLUSH_IN6. Differential Revision: https://reviews.freebsd.org/D46441 (cherry picked from commit 0c891822310cebd11c22bb59391f85bc53c94fa3) --- sys/netinet6/in6_var.h | 4 +--- sys/netinet6/nd6.c | 8 +++----- sys/netinet6/nd6.h | 1 - sys/netinet6/nd6_rtr.c | 1 - 4 files changed, 4 insertions(+), 10 deletions(-) diff --git a/sys/netinet6/in6_var.h b/sys/netinet6/in6_var.h index e99e796a3140..0aa9612126f6 100644 --- a/sys/netinet6/in6_var.h +++ b/sys/netinet6/in6_var.h @@ -325,8 +325,7 @@ struct in6_prflags { struct prf_ra { u_char onlink : 1; u_char autonomous : 1; - u_char ra_derived: 1; - u_char reserved : 5; + u_char reserved : 6; } prf_ra; u_char prf_reserved1; u_short prf_reserved2; @@ -357,7 +356,6 @@ struct in6_prefixreq { #define ipr_raf_onlink ipr_flags.prf_ra.onlink #define ipr_raf_auto ipr_flags.prf_ra.autonomous -#define ipr_raf_ra_derived ipr_flags.prf_ra.ra_derived #define ipr_statef_onlink ipr_flags.prf_state.onlink diff --git a/sys/netinet6/nd6.c b/sys/netinet6/nd6.c index 6ec5a8b54cf4..8480e7fc90e3 100644 --- a/sys/netinet6/nd6.c +++ b/sys/netinet6/nd6.c @@ -84,11 +84,11 @@ #include +#define ND6_PREFIX_WITH_ROUTER(pr) !LIST_EMPTY(&(pr)->ndpr_advrtrs) + #define ND6_SLOWTIMER_INTERVAL (60 * 60) /* 1 hour */ #define ND6_RECALC_REACHTM_INTERVAL (60 * 120) /* 2 hours */ -#define SIN6(s) ((const struct sockaddr_in6 *)(s)) - MALLOC_DEFINE(M_IP6NDP, "ip6ndp", "IPv6 Neighbor Discovery"); VNET_DEFINE_STATIC(int, nd6_prune) = 1; @@ -1796,7 +1796,7 @@ nd6_ioctl(u_long cmd, caddr_t data, struct ifnet *ifp) ND6_WLOCK(); LIST_FOREACH_SAFE(pr, &V_nd_prefix, ndpr_entry, next) { - if (pr->ndpr_raf_ra_derived) + if (ND6_PREFIX_WITH_ROUTER(pr)) nd6_prefix_unlink(pr, &prl); } ND6_WUNLOCK(); @@ -2675,8 +2675,6 @@ nd6_sysctl_prlist(SYSCTL_HANDLER_ARGS) ND6_RLOCK(); LIST_FOREACH(pr, &V_nd_prefix, ndpr_entry) { - if (!pr->ndpr_raf_ra_derived) - continue; p.prefix = pr->ndpr_prefix; if (sa6_recoverscope(&p.prefix)) { log(LOG_ERR, "scope error in prefix list (%s)\n", diff --git a/sys/netinet6/nd6.h b/sys/netinet6/nd6.h index 6d717a321027..83a69e65e057 100644 --- a/sys/netinet6/nd6.h +++ b/sys/netinet6/nd6.h @@ -246,7 +246,6 @@ struct nd_prefix { #define ndpr_raf ndpr_flags #define ndpr_raf_onlink ndpr_flags.onlink #define ndpr_raf_auto ndpr_flags.autonomous -#define ndpr_raf_ra_derived ndpr_flags.ra_derived #define ndpr_raf_router ndpr_flags.router struct nd_pfxrouter { diff --git a/sys/netinet6/nd6_rtr.c b/sys/netinet6/nd6_rtr.c index 18abb12e2640..eeecbe2c70c4 100644 --- a/sys/netinet6/nd6_rtr.c +++ b/sys/netinet6/nd6_rtr.c @@ -520,7 +520,6 @@ nd6_ra_input(struct mbuf *m, int off, int icmp6len) ND_OPT_PI_FLAG_ONLINK) ? 1 : 0; pr.ndpr_raf_auto = (pi->nd_opt_pi_flags_reserved & ND_OPT_PI_FLAG_AUTO) ? 1 : 0; - pr.ndpr_raf_ra_derived = 1; pr.ndpr_plen = pi->nd_opt_pi_prefix_len; pr.ndpr_vltime = ntohl(pi->nd_opt_pi_valid_time); pr.ndpr_pltime = ntohl(pi->nd_opt_pi_preferred_time); From nobody Wed Jul 15 08:15:29 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 4h0TWQ0wZlz6l5tq for ; Wed, 15 Jul 2026 08:15:30 +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 4h0TWP6PNrz4733 for ; Wed, 15 Jul 2026 08:15:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784103329; 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=keU9uAnOtKbT4vpQeIOFesL/1TNYPGmXUYEt6CD9lgY=; b=Z//TLrAGlyGF1Hiwu6y5ClxA8Tcj+Rm9AMK4giVRY6EzURt+ktE8Yu3SU+qRN7P4i8ZH1y HH3i3vV/fu93XJGZXw93ncN0O0uFGLqVY6EHwxT3/UsSAQd7ckpl5xBrpG7pztPuBtHRlu gq6mHzQlX0P3mvsiQsMzMNHIlSLfeMGtssFpK2oG12w4FtS0upuWXSlHbCF7vM0RREjMW3 AXTHUoLfSBnOtcSLLIcPckLayZw52XEyGnjkUNmS29H4rjr2d77gcq/f/6DIxAkGinAABM Y42LurFBoAGc5bK77sJSXP7BJZKqYrByLXTCSIn54KNqdSzxlohMWC/MAr1cdQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784103329; a=rsa-sha256; cv=none; b=VaYE9jc4xlRgLC1vteQt6lNia+AaIPGevszUQSNdz4UwiRb05cxKruMDQC/M5tcDk9JV88 h97UR57LYjqGNkaCFUdnXPmyyq6ZWzgPzESX0cigjDS6Xw63wvnoXjpLGsQTIuv2v2XMkM PZ3MNH/du9ecnuvcmxQkd1Sl+rZCejRKZKCxTofYZp0TVTdw5ROkW6SRRTw7j636fadfLa TzNjwkdXzGDxCMv1fJYl8Kb9gnwynHJjmVmM7Hd3gM49ESrgBKlmtmeAQ95hmFa72gUM16 x2OKS7tJ1Gx2r0wKpiBrBJw/JPPjUtaNPKbhnA7IzTkQFWKrs1q1/xCMH8u5uQ== 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=1784103329; 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=keU9uAnOtKbT4vpQeIOFesL/1TNYPGmXUYEt6CD9lgY=; b=BK5yF6KCcb8BGuUEoIxyEeLTzK6gLHJdUgMzWTI9TIOvUyav6FW4wa57susS+yGLW3ny1H 2yk+70qnxrZN9Aa75SsVFStfmR2PGtlPEfbVEYIZbOPfUsZnewl86Ow+qphWPHZtn9QHID 8uFpY9EF9lwV2BqwtvbOQy1jYAZpFURA1sMI4KxDau5YY2/ABh3zPg8cUDT3Z7btdU5shV b0dWSr6PuQB2NJy9YYpNfrSN2Jx0ngx8jGtoBCxLIubJJ6h8qMGo8hSe0j/6Lfd3rE4tTV 3Y8U0j7tzf3IzXDAbs0orOkixbnn8m6Fl+d3mxVBpgZw8Ww9//29UCHah/MbvQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h0TWP5Jqwz7HH for ; Wed, 15 Jul 2026 08:15:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3c1b3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 15 Jul 2026 08:15:29 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Christos Margiolis Subject: git: 6d66485276cb - stable/15 - sound: Remove dead code in dsp_ioctl() 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: christos X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 6d66485276cba8f49a87487a92080b3ad7b7c46c Auto-Submitted: auto-generated Date: Wed, 15 Jul 2026 08:15:29 +0000 Message-Id: <6a5741a1.3c1b3.4a9b0c81@gitrepo.freebsd.org> The branch stable/15 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=6d66485276cba8f49a87487a92080b3ad7b7c46c commit 6d66485276cba8f49a87487a92080b3ad7b7c46c Author: Christos Margiolis AuthorDate: 2026-07-08 18:11:54 +0000 Commit: Christos Margiolis CommitDate: 2026-07-15 08:15:25 +0000 sound: Remove dead code in dsp_ioctl() Sponsored by; The FreeBSD Foundation MFC after: 1 week (cherry picked from commit 69c4e2b68a588272de6ab86e302d87188bfef2a6) --- sys/dev/sound/pcm/dsp.c | 8 -------- 1 file changed, 8 deletions(-) diff --git a/sys/dev/sound/pcm/dsp.c b/sys/dev/sound/pcm/dsp.c index 60c06e27e41f..b78164d8a963 100644 --- a/sys/dev/sound/pcm/dsp.c +++ b/sys/dev/sound/pcm/dsp.c @@ -770,10 +770,6 @@ dsp_ioctl(struct cdev *i_dev, u_long cmd, caddr_t arg, int mode, case AIONWRITE: /* how many bytes can write ? */ if (wrch) { CHN_LOCK(wrch); -/* - if (wrch && wrch->bufhard.dl) - while (chn_wrfeed(wrch) == 0); -*/ *arg_i = sndbuf_getfree(wrch->bufsoft); CHN_UNLOCK(wrch); } else { @@ -986,9 +982,6 @@ dsp_ioctl(struct cdev *i_dev, u_long cmd, caddr_t arg, int mode, case FIONREAD: /* get # bytes to read */ if (rdch) { CHN_LOCK(rdch); -/* if (rdch && rdch->bufhard.dl) - while (chn_rdfeed(rdch) == 0); -*/ *arg_i = sndbuf_getready(rdch->bufsoft); CHN_UNLOCK(rdch); } else { @@ -1630,7 +1623,6 @@ dsp_ioctl(struct cdev *i_dev, u_long cmd, caddr_t arg, int mode, ret = EINVAL; else { struct snd_dbuf *bs; - /* int tmp; */ oss_count_t *oc = (oss_count_t *)arg; From nobody Wed Jul 15 08:15:30 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 4h0TWR31gfz6l62y for ; Wed, 15 Jul 2026 08:15:31 +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 4h0TWR0PCmz47GL for ; Wed, 15 Jul 2026 08:15:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784103331; 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=tj4122MyF6kV9cQEjDVHtYVHaR9qq7OcbFNJSUDya6g=; b=XcT9W5w/Fn/el9lix1WPIW7SqYBow2ViWI3fUv8xUpRbH5xNf2NFatU/oRa+yaftxYJKBA Uxrk0U/sqthKjXqX3FG6J/B+KScz46HcXUIwbX3jr3Hn3ggU4hOFt7pzhRTe7bEGbd5qjS UHd/Zqa/j43SQvgT/ntq3KUy5oU7u7/GF1qO1u/wse5RMCxJ9DLIJlW19XbDjgsiy6k3gu LS1nFxdjrCsahPZp/mIPvOjppZlP3u88OAOIm0UlOmxsqyErnXnj5AJvenlNTVOUHDXQzR N2roYKNacIeW7hjECkrKybil5cvZwuJRlP+jCHtSGbfRp3PE7Y+D+pm6ftPwlg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784103331; a=rsa-sha256; cv=none; b=IGLcf9TAkoNEjHEWzjst3DAAh9WFfM04pseza7X45Yj7yvUqUVIy0EjO2Iekc/SsB1Lk4e FPl+ieVAZ5bCyVcdGoXBTygSCmIdrCJPAM5IpLQthgLH9Hi2XaKO0pCaRVtaBEuCU7ok5l PK5c4ARXuXxN5IRk0wPUd1gUj05GJDZVfVu/kVa2zR/1qmQTB1/ZhFzFNQf2XBbMdAdBYm TQpKE1jfnjNYXglSX1LdJaq3n+glURuI2bkTLSgDqKo25vR+KCllfHf2Q+XJyMqC50FFEI V0TZBo1sESpqLI60P5ydTK/YuAn2yiwvJrGezZ6YDZMS3VDBWwygCFfZVnIySQ== 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=1784103331; 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=tj4122MyF6kV9cQEjDVHtYVHaR9qq7OcbFNJSUDya6g=; b=Ep+ji+LFbcIXYRP3PCNvAFhKZErFBN+aekZ2yYXlQgzZKG0qWro2CQFfcb4QW1A3uN8U2F t+BVXtO1bCrqR+WPa5ZYx6u1wLrPSsnfbWtcyDhjk83e/7S8yAvtW7krc/3IyaVnFQ9DyW G7onEERa2kdZuPXOZ5hsNIxC8xeo+NkJYb9f8Y9V1//lnkv8kBW+x7NGky4V6gv1FPYn1k +9ws9vEgz578CoA4xdAWLWlVbkmU12bcDgiExv8SUNUBS6HtxiqzVbCyFClItxz0tPOk9u eFMeyLEwa6axL11+r7iZOgyhjUA4gkdaKIStp6srFz+7AHmiYaEyjU3hTDeTNw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h0TWQ6JpDz7WY for ; Wed, 15 Jul 2026 08:15:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3d18f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 15 Jul 2026 08:15:30 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Christos Margiolis Subject: git: 896f9ba7d4cc - stable/15 - sound: Pass format and speed as arguments to sndbuf_create() 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: christos X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 896f9ba7d4cc98ba476cdae425898269d53952dc Auto-Submitted: auto-generated Date: Wed, 15 Jul 2026 08:15:30 +0000 Message-Id: <6a5741a2.3d18f.35edd6d3@gitrepo.freebsd.org> The branch stable/15 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=896f9ba7d4cc98ba476cdae425898269d53952dc commit 896f9ba7d4cc98ba476cdae425898269d53952dc Author: Christos Margiolis AuthorDate: 2026-07-08 18:18:49 +0000 Commit: Christos Margiolis CommitDate: 2026-07-15 08:15:25 +0000 sound: Pass format and speed as arguments to sndbuf_create() Sponsored by: The FreeBSD Foundation MFC after: 1 week (cherry picked from commit 815dc35b7b5ed694fc1986d054149e375b8a17bd) --- sys/dev/sound/pcm/buffer.c | 5 ++++- sys/dev/sound/pcm/buffer.h | 2 +- sys/dev/sound/pcm/channel.c | 8 ++------ 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/sys/dev/sound/pcm/buffer.c b/sys/dev/sound/pcm/buffer.c index 86278a46a731..73f75716a198 100644 --- a/sys/dev/sound/pcm/buffer.c +++ b/sys/dev/sound/pcm/buffer.c @@ -46,7 +46,8 @@ #include "snd_fxdiv_gen.h" struct snd_dbuf * -sndbuf_create(struct pcm_channel *channel, const char *desc) +sndbuf_create(struct pcm_channel *channel, u_int32_t fmt, u_int32_t spd, + const char *desc) { struct snd_dbuf *b; @@ -54,6 +55,8 @@ sndbuf_create(struct pcm_channel *channel, const char *desc) refcount_init(&b->refcount, 1); snprintf(b->name, SNDBUF_NAMELEN, "%s:%s", channel->name, desc); b->channel = channel; + sndbuf_setfmt(b, fmt); + sndbuf_setspd(b, spd); return b; } diff --git a/sys/dev/sound/pcm/buffer.h b/sys/dev/sound/pcm/buffer.h index fee41db2ff82..34f885db6609 100644 --- a/sys/dev/sound/pcm/buffer.h +++ b/sys/dev/sound/pcm/buffer.h @@ -60,7 +60,7 @@ struct snd_dbuf { char name[SNDBUF_NAMELEN]; }; -struct snd_dbuf *sndbuf_create(struct pcm_channel *channel, const char *desc); +struct snd_dbuf *sndbuf_create(struct pcm_channel *channel, u_int32_t fmt, u_int32_t spd, const char *desc); void sndbuf_destroy(struct snd_dbuf *b); void sndbuf_ref(struct snd_dbuf *b); void sndbuf_rele(struct snd_dbuf *b); diff --git a/sys/dev/sound/pcm/channel.c b/sys/dev/sound/pcm/channel.c index 40a08d48fb21..ff7620c772c3 100644 --- a/sys/dev/sound/pcm/channel.c +++ b/sys/dev/sound/pcm/channel.c @@ -1223,8 +1223,8 @@ chn_init(struct snddev_info *d, struct pcm_channel *parent, kobj_class_t cls, chn_vpc_reset(c, SND_VOL_C_PCM, 1); CHN_UNLOCK(c); - b = sndbuf_create(c, "primary"); - bs = sndbuf_create(c, "secondary"); + b = sndbuf_create(c, c->format, c->speed, "primary"); + bs = sndbuf_create(c, c->format, c->speed, "secondary"); if (b == NULL || bs == NULL) { device_printf(d->dev, "%s(): failed to create %s buffer\n", __func__, b == NULL ? "hardware" : "software"); @@ -1246,10 +1246,6 @@ chn_init(struct snddev_info *d, struct pcm_channel *parent, kobj_class_t cls, goto fail; } - sndbuf_setfmt(b, c->format); - sndbuf_setspd(b, c->speed); - sndbuf_setfmt(bs, c->format); - sndbuf_setspd(bs, c->speed); sndbuf_setup(bs, NULL, 0); /** From nobody Wed Jul 15 13:37:06 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 4h0cfV4KLZz6lV3M for ; Wed, 15 Jul 2026 13:37:06 +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 4h0cfV3VYbz3V8Z for ; Wed, 15 Jul 2026 13:37:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784122626; 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=1mVIV4Wz31mOwPmK1CwUiD5UMPpmsrxW28Try66uGxA=; b=jbiNR/ctIcSssMqI1JD+3SbakhLpvStfRV/ORmpWEpsyHTpoc+xGrH4nAAmwIzPs5Q6gZ2 5l+MiLe23ka9c10nfEr2DJclKpuHLFzDX24+FkTm68ZrAe6CLE6ObqRwVUaX5IANYT0L8k PfTkRRKVTmetp6HRfarog/pXUkbx0TNCVaRCDx762xXejWhU+scSzW5iUfroxT6ulTPlR/ rjuYAIpBITMtzXxtxSnuxvhvyVud4qHkySHEex4jif3M9zVPlgAJGSa/IWJ4nWDqpG7Ilx llZfJMxuUM08NU54swYLdqUW1bLPWzW7tgrQmipuypae4M0uOeoj2C2xL1I4Mg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784122626; a=rsa-sha256; cv=none; b=RoxX7GTKR7uKK62NUgYW7M4Flj2OPO3jOjjeSWB/nIjBZzuTFw85fRuUc60Pcm0jY0L/8M ETw0VDTM1gFTBZ1dALVchpFi8JyjS7YId/QLRg4qALyaF48qNUu1PXn3WGEDjsoIz4Fse7 o5IuLLiCm2elVXdV3hpfJ3DWMkyqCALCbqWYX5rrHmK1cT+10fqHZRPKWBDv3TaEgjow2h /L5jEqjxd/0P8fETY9zEB6Z8htv3fyNsFLGiXtdGHFDya1Ah7F8Wf+uhP/sb8ztHQLy39V MU6CBB4NowaWw7A84GVrn4pXzrJrwV+pb9fpbz0pOmbtOzudVK2VgIXBybwBYg== 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=1784122626; 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=1mVIV4Wz31mOwPmK1CwUiD5UMPpmsrxW28Try66uGxA=; b=GhQrzXdTZicP9Kz2C81HHDuwObNgRxrMJkTG/HGPxoq9o/a5VI6YWGB1NU2fe7sz231EY1 H20bazZCpXnIvrLJuUPji0xZQ4cW0p9NqQ81YW2KY+pn8efHzOsqpIRBdvMJrdYrRXSZL+ xEOUyxkz7ZsyFMo0Hfq8mq5LnJlSr0K5zV7WI6pfyrP9lVrdWXuklS+qylcOvJIfz9LBxe wX9C05WnJPnkjBscWDWxjDGaBMK8hHxmFVcD9cgGj448unqIhF1vsJOg0gkL95Y103wjWr f3iTs2Au+TYWu4S8aCnSdKuW4B52GbZ1vyqBZy6UYPsn0KSk1D5YUza+niZDHw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h0cfV1zfCzZh7 for ; Wed, 15 Jul 2026 13:37:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3750c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 15 Jul 2026 13:37:06 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 00e880819cc5 - stable/14 - libc locale/localeconv.c: use release semantic when clearing locale_changed 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: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 00e880819cc5b8249222792ec82c45444a50eb2d Auto-Submitted: auto-generated Date: Wed, 15 Jul 2026 13:37:06 +0000 Message-Id: <6a578d02.3750c.1981361d@gitrepo.freebsd.org> The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=00e880819cc5b8249222792ec82c45444a50eb2d commit 00e880819cc5b8249222792ec82c45444a50eb2d Author: Konstantin Belousov AuthorDate: 2026-07-05 02:50:27 +0000 Commit: Konstantin Belousov CommitDate: 2026-07-15 13:36:50 +0000 libc locale/localeconv.c: use release semantic when clearing locale_changed PR: 296410 (cherry picked from commit 4efbcf36a0d49ab142023a767871532f515f1381) --- lib/libc/locale/localeconv.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/libc/locale/localeconv.c b/lib/libc/locale/localeconv.c index 018d650741f8..497c6f43992b 100644 --- a/lib/libc/locale/localeconv.c +++ b/lib/libc/locale/localeconv.c @@ -91,7 +91,7 @@ localeconv_l(locale_t loc) M_ASSIGN_CHAR(int_n_sep_by_space); M_ASSIGN_CHAR(int_p_sign_posn); M_ASSIGN_CHAR(int_n_sign_posn); - atomic_store_int(&loc->monetary_locale_changed, 0); + atomic_store_rel_int(&loc->monetary_locale_changed, 0); } if (atomic_load_acq_int(&loc->numeric_locale_changed) != 0) { @@ -104,7 +104,7 @@ localeconv_l(locale_t loc) N_ASSIGN_STR(decimal_point); N_ASSIGN_STR(thousands_sep); N_ASSIGN_STR(grouping); - atomic_store_int(&loc->numeric_locale_changed, 0); + atomic_store_rel_int(&loc->numeric_locale_changed, 0); } return ret; From nobody Thu Jul 16 17:58:05 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 4h1LP970xwz6lhb9 for ; Thu, 16 Jul 2026 17:58:05 +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 4h1LP9610Kz3Slr for ; Thu, 16 Jul 2026 17:58:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784224685; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6ovDU/8Ff1S9VT9taTCC6sIPuFp2aP8xhG+RfR2lR+Q=; b=EXKj9G59Bf7zBFu7KbrD7IsLNVwoq8ZzDXx+IsaQsy349tSNBhxkos5TS2O5FkLP2428hE ETn7ysdl+5dsrr/QBwtbNWjrbIm+P0bDQa+WmUBuT0InrasY7QhgAOnEVqzW6J6XOWG/HJ ZTer4vlZ5I4mwJb2KgBgoCRCSftzVtQirSu7rvtblSwV3MA4xLJcyTAq1pEflw0OHopgJ+ X2TuTj6u54LBN6GwqxosNiyWy0GIViZ4nMdtVWeyK13HO1lU0zWP3SEiIldJ9VaeestJVU 7Y5Yy3/hqWlxpEq4OPE5+wr9MnvjFKJHd6iNkZxMTsc/77/47D7WOLVMRCVWYA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784224685; a=rsa-sha256; cv=none; b=VU2vlqQULyWFj/tDczVlWbWSGvupcLdDuMmcBhJBwqAt6hAKP06aZu/phurnObgEwaxm1+ N194fLVY757wDQ1hsZWU7AnnNox/YW11ceCPcPQoNJZUWW4F8qba9LMUU7XH3awz2QXXOu I0upVArXp8udt1UX1KF81egJK9MzLdcT5aVV7b51Pt/XNZpJZ40HD5FbgDXXUA0pgaJS++ gSA5qlBvyZN5rHaCnonNq+vcvpYCMS652Udsw8KSehwnFVUltm95k4bmv5B7B40Wm36AQa xrCM7u30y5zU/WGuwaU6NmEI9xZZsjZToDSJB+d+uiyBS59TYS0to11i61DW0g== 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=1784224685; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6ovDU/8Ff1S9VT9taTCC6sIPuFp2aP8xhG+RfR2lR+Q=; b=WExHcJ8r0mpPt8Von9myNhvFGFLRdiLRYw1vXo668Byar1n1H0P30S6uHYYGEhOVCG2Jv2 UeCJSeYFU10ZE4gfApDxq0FobztUNWfxqQc8waGiM5SHM1kEaPEcLy1Q1LTbTfhR7tZ+SV Yh1R+f4Gb0OnivIGgLxDQZ5yIyXlaWD64Lf759RA8N1DDo+1Jq2+b7k5a0rKp1xeCw0dUH trjdhZ1hcG/3+1RMIOVjNNdasj2P3zrCawfIe5/UlACZlsbRELJIiKWcWoDFvIRY9gszNO iEpCj+cQM+WTZdUtNQFD6uMHARXAdR0/2hEBHc9hHDyL4vaaBYo2Fzn8uI1Cyw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h1LP9512lz1Qhb for ; Thu, 16 Jul 2026 17:58:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 345e7 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 16 Jul 2026 17:58:05 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Faraz Vahedi From: Robert Clausecker Subject: git: 13ba63a5f5b6 - stable/15 - libc: Suppress content for C23 and later 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: fuz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 13ba63a5f5b699a8ba1de8eccb878d527e3d5e10 Auto-Submitted: auto-generated Date: Thu, 16 Jul 2026 17:58:05 +0000 Message-Id: <6a591bad.345e7.11f68753@gitrepo.freebsd.org> The branch stable/15 has been updated by fuz: URL: https://cgit.FreeBSD.org/src/commit/?id=13ba63a5f5b699a8ba1de8eccb878d527e3d5e10 commit 13ba63a5f5b699a8ba1de8eccb878d527e3d5e10 Author: Faraz Vahedi AuthorDate: 2026-05-20 10:06:16 +0000 Commit: Robert Clausecker CommitDate: 2026-07-16 17:56:48 +0000 libc: Suppress content for C23 and later C23 deprecates and specifies that the header shall provide no content (§7.15.1). Signed-off-by: Faraz Vahedi Pull Request: https://github.com/freebsd/freebsd-src/pull/2223 MFC after: 1 month Reviewed by: imp, fuz (cherry picked from commit 694baf88c2ae5957fdb24ed163993109987e1ef9) --- include/stdalign.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/include/stdalign.h b/include/stdalign.h index 00ae5677f449..1b439565f588 100644 --- a/include/stdalign.h +++ b/include/stdalign.h @@ -26,6 +26,8 @@ * SUCH DAMAGE. */ +#if __STDC_VERSION__ < 202311L + #ifndef __alignas_is_defined #define __alignas_is_defined 1 @@ -45,3 +47,5 @@ #endif #endif /* !__alignof_is_defined */ + +#endif /* __STDC_VERSION__ < 202311L */ From nobody Thu Jul 16 17:58:04 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 4h1LPG3k6Pz6lhbC for ; Thu, 16 Jul 2026 17:58:10 +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 4h1LPG0nn0z3T5M for ; Thu, 16 Jul 2026 17:58:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784224690; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bROh3xfcfiu1IhAJacQsLs5cBv66UKYggyQTR8CawqI=; b=vVk87jMU2mJXiFMfNOC/rSnSeOAzvGsaDUoXrDaZCRjzzly2qe7QzcaADdxAfn9ICxdoy8 E9hbZJTy+n9bqDvIVbULMpqm8Kv85WKRZc6no246J5XfjTFjSETEQNXQHIIAucdufvmJYk /f10tWn25Pv1INZ9Fj9IpY8qdSLqIdydZOn5SE3Z0iBHTrz2J1x9zXWmc/F+B2KUon3X3t X7vf6D8Uf8P2IOXZElrs1cUueThhyE2tBCi36QVdnzSHtj3/SpKmb2jeX32m65zI5rsGFw daQV2ejHobGbkKorjxIKwKCkXZxnjoO4YoeuSHPpyWZ0bVgajDfP9winGLZSMA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784224690; a=rsa-sha256; cv=none; b=IekAmQeNJ6fD1Iy7XhmTJH/5GMfIGgpnGUzG30TODc7XMZEdrk6hcFwYQXg3C8QS4VTU6C y/ROQMHbMGeWFkdj9Z1GTwi3RbTgbYmoJFfklkHAyheAwfYX8fZHHlndw+EXY18AfgmdMI YIxtgco/dVnZ460m+aHPrhjCc9sdFtWFYDB1u5A866zn8PBvOBjZ/A9dxyWyjNjBmE3yAW vDlggcLL+WP61HFZr1Kq6ldywy2E/xYU2s1DO2WUavTK0ph8qsvHmkP6+UchRq7mdUaWkZ TGRmYkXzhL8UL1P3osZ7K1BKfNJCqbW/A5c8Kuk6l7txurP8MZvPqMdxBDxFbQ== 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=1784224690; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bROh3xfcfiu1IhAJacQsLs5cBv66UKYggyQTR8CawqI=; b=NwpyjEZXd5Ni8YETfYdsprsZT8tgCCAL+8OFMxA8Zdgt3pvbDbZih6ySXEhKqBosbmGzR7 nZQY50cYJoHdG/RkhAhJMj6HjB5iEwylehz96R93BgY75V0E/UQ2xymh0Eca7E8TSNolsk uMO7+hfTFsbd85zn5FzIle4tfkKrzOJtza9nvE09q8vz70/ck9TkQD9Xz47jOwxKFFJEmR N85zLYu5AtRlyk5G+EJeMOmJqgP/FJwtPYdD/lWx7CWFplMYBsZA7mf0ILKwS0UugOUnfK zuLXlnJXfanujEphoo/g+rMVhbqi34Fz0i8XU9RwtczeyDP/ZhjjWYbqMiiE4g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h1LPF6k4Wz1Qhf for ; Thu, 16 Jul 2026 17:58:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 345e2 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 16 Jul 2026 17:58:04 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Faraz Vahedi From: Robert Clausecker Subject: git: c985e25e0c0e - stable/15 - libc: Add free_sized() and free_aligned_sized() as per C23 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: fuz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: c985e25e0c0e3a60c73bcff5a0d1daf7af041200 Auto-Submitted: auto-generated Date: Thu, 16 Jul 2026 17:58:04 +0000 Message-Id: <6a591bac.345e2.4efe79b8@gitrepo.freebsd.org> The branch stable/15 has been updated by fuz: URL: https://cgit.FreeBSD.org/src/commit/?id=c985e25e0c0e3a60c73bcff5a0d1daf7af041200 commit c985e25e0c0e3a60c73bcff5a0d1daf7af041200 Author: Faraz Vahedi AuthorDate: 2026-05-16 18:36:17 +0000 Commit: Robert Clausecker CommitDate: 2026-07-16 17:56:48 +0000 libc: Add free_sized() and free_aligned_sized() as per C23 Add C23 sized deallocation entry points as thin wrappers around free(3). Implementations may ignore size and alignment hints, so behaviour stays correct for existing allocations without validating caller metadata yet. When jemalloc is updated to 5.3.1, rewire these to je_free_sized() and je_free_aligned_sized() so deallocation can use the allocator's sized deallocation (free_sized for fast paths and free_aligned_sized for correct aligned hints.) Please note this change satisfies the standard interface only. Both functions should be delegated to jemalloc after the upgrade so callers get the intended allocator behaviour; until then, hints are unused and neither sized nor aligned-sized deallocation optimizations apply. Signed-off-by: Faraz Vahedi Reviewed by: fuz Pull Request: https://github.com/freebsd/freebsd-src/pull/2201 MFC after: 1 month (cherry picked from commit 5f732742ad5b3133a860a8969cf2bd13dc9ac358) --- include/stdlib.h | 2 + lib/libc/stdlib/malloc/Makefile.inc | 9 +++ lib/libc/stdlib/malloc/Symbol.map | 7 ++ lib/libc/stdlib/malloc/free_aligned_sized.c | 21 ++++++ lib/libc/stdlib/malloc/free_sized.3 | 100 ++++++++++++++++++++++++++++ lib/libc/stdlib/malloc/free_sized.c | 20 ++++++ lib/libc/stdlib/memory.3 | 17 ++++- 7 files changed, 175 insertions(+), 1 deletion(-) diff --git a/include/stdlib.h b/include/stdlib.h index 3e54b5feb6de..2b3fe8bb8baf 100644 --- a/include/stdlib.h +++ b/include/stdlib.h @@ -173,6 +173,8 @@ _Noreturn void */ #if __ISO_C_VISIBLE >= 2023 size_t memalignment(const void *) __pure2; +void free_sized(void *, size_t) __noexcept; +void free_aligned_sized(void *, size_t, size_t) __noexcept; #endif /* __ISO_C_VISIBLE >= 2023 */ /* diff --git a/lib/libc/stdlib/malloc/Makefile.inc b/lib/libc/stdlib/malloc/Makefile.inc index 3bae4ff1505b..e7e3b49a355a 100644 --- a/lib/libc/stdlib/malloc/Makefile.inc +++ b/lib/libc/stdlib/malloc/Makefile.inc @@ -1,3 +1,12 @@ SYM_MAPS+=${LIBC_SRCTOP}/stdlib/malloc/Symbol.map +.PATH: ${LIBC_SRCTOP}/stdlib/malloc + +MISRCS+= free_aligned_sized.c \ + free_sized.c + +MAN+= free_sized.3 + +MLINKS+= free_sized.3 free_aligned_sized.3 + .include "${LIBC_SRCTOP}/stdlib/malloc/${OPT_LIBC_MALLOC}/Makefile.inc" diff --git a/lib/libc/stdlib/malloc/Symbol.map b/lib/libc/stdlib/malloc/Symbol.map index d3aa7f3f9988..d1fefd8ca0c2 100644 --- a/lib/libc/stdlib/malloc/Symbol.map +++ b/lib/libc/stdlib/malloc/Symbol.map @@ -47,6 +47,13 @@ FBSD_1.4 { __mallctlbymib; }; +FBSD_1.9 { + free_sized; + free_aligned_sized; + __free_sized; + __free_aligned_sized; +}; + FBSDprivate_1.0 { _malloc_thread_cleanup; _malloc_prefork; diff --git a/lib/libc/stdlib/malloc/free_aligned_sized.c b/lib/libc/stdlib/malloc/free_aligned_sized.c new file mode 100644 index 000000000000..6bb238e0b2ba --- /dev/null +++ b/lib/libc/stdlib/malloc/free_aligned_sized.c @@ -0,0 +1,21 @@ +/* + * Copyright (c) 2026 Faraz Vahedi + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#include +#include + +void __free(void *); + +void +__free_aligned_sized(void *ptr, size_t alignment, size_t size) +{ + + (void)alignment; + (void)size; + __free(ptr); +} + +__weak_reference(__free_aligned_sized, free_aligned_sized); diff --git a/lib/libc/stdlib/malloc/free_sized.3 b/lib/libc/stdlib/malloc/free_sized.3 new file mode 100644 index 000000000000..f208c829d933 --- /dev/null +++ b/lib/libc/stdlib/malloc/free_sized.3 @@ -0,0 +1,100 @@ +.\" +.\" Copyright (c) 2026 Faraz Vahedi +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd May 17, 2026 +.Dt FREE_SIZED 3 +.Os +.Sh NAME +.Nm free_sized , +.Nm free_aligned_sized +.Nd C23 sized deallocation functions +.Sh SYNOPSIS +.Lb libc +.In stdlib.h +.Ft void +.Fn free_sized "void *ptr" "size_t size" +.Ft void +.Fn free_aligned_sized "void *ptr" "size_t alignment" "size_t size" +.Sh DESCRIPTION +The +.Fn free_sized +function deallocates the memory referenced by +.Fa ptr +that was previously allocated by +.Xr malloc 3 , +.Xr realloc 3 , +or +.Xr calloc 3 . +The +.Fa size +argument shall equal the size passed to the allocation function. +The result of an +.Xr aligned_alloc 3 +may not be passed to +.Fn free_sized . +.Pp +The +.Fn free_aligned_sized +function deallocates memory referenced by +.Fa ptr +that was previously allocated by +.Xr aligned_alloc 3 . +The +.Fa alignment +and +.Fa size +arguments shall equal the values supplied to the allocation function. +The result of an +.Xr malloc 3 , +.Xr calloc 3 , +or +.Xr realloc 3 +may not be passed to +.Fn free_aligned_sized . +.Pp +If +.Fa ptr +is neither a null pointer nor a pointer returned by the allocation functions +described above for the corresponding deallocation function, the behaviour is +undefined, and so is supplying a +.Fa size +or +.Fa alignment +that does not match the original allocation. +.Sh IMPLEMENTATION NOTES +The C standard permits an implementation to ignore the +.Fa size +and +.Fa alignment +hints. +The current implementation forwards to +.Xr free 3 +without validating these arguments, so behaviour remains correct for +well-formed use. +.Pp +These functions will be wired to the system allocator's sized deallocation, +once supported, as with the rest of the memory allocation API, so that +.Fa size +and +.Fa alignment +hints are used for performance and security benefits. +That behaviour conforms to the practice recommended for each function in the +C standard. +.Sh SEE ALSO +.Xr free 3 , +.Xr malloc 3 , +.Xr calloc 3 , +.Xr realloc 3 , +.Xr aligned_alloc 3 , +.Xr jemalloc 3 +.Sh STANDARDS +The +.Fn free_sized +and +.Fn free_aligned_sized +functions conform to +.St -isoC-2023 . +.Sh AUTHOR +.An Faraz Vahedi Aq Mt kfv@kfv.io diff --git a/lib/libc/stdlib/malloc/free_sized.c b/lib/libc/stdlib/malloc/free_sized.c new file mode 100644 index 000000000000..b9242ac13862 --- /dev/null +++ b/lib/libc/stdlib/malloc/free_sized.c @@ -0,0 +1,20 @@ +/* + * Copyright (c) 2026 Faraz Vahedi + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#include +#include + +void __free(void *); + +void +__free_sized(void *ptr, size_t size) +{ + + (void)size; + __free(ptr); +} + +__weak_reference(__free_sized, free_sized); diff --git a/lib/libc/stdlib/memory.3 b/lib/libc/stdlib/memory.3 index b7703cf44bd5..16674e8f208e 100644 --- a/lib/libc/stdlib/memory.3 +++ b/lib/libc/stdlib/memory.3 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 18, 2023 +.Dd May 17, 2026 .Dt MEMORY 3 .Os .Sh NAME @@ -33,6 +33,8 @@ .Nm alloca , .Nm calloc , .Nm free , +.Nm free_sized , +.Nm free_aligned_sized , .Nm malloc , .Nm posix_memalign , .Nm realloc , @@ -53,6 +55,10 @@ .Fn calloc "size_t nelem" "size_t elsize" .Ft void .Fn free "void *ptr" +.Ft void +.Fn free_sized "void *ptr" "size_t size" +.Ft void +.Fn free_aligned_sized "void *ptr" "size_t alignment" "size_t size" .Ft void * .Fn malloc "size_t size" .Ft int @@ -79,6 +85,8 @@ individual manual pages. .Xr alloca 3 , .Xr calloc 3 , .Xr free 3 , +.Xr free_aligned_sized 3 , +.Xr free_sized 3 , .Xr malloc 3 , .Xr posix_memalign 3 , .Xr realloc 3 , @@ -101,3 +109,10 @@ and .Fn posix_memalign functions conform to .St -p1003.1-2001 . +.Pp +The +.Fn free_sized +and +.Fn free_aligned_sized +functions conform to +.St -isoC-2023 . From nobody Thu Jul 16 18:32:47 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 4h1M9C54DFz6lkxn for ; Thu, 16 Jul 2026 18:32:47 +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 4h1M9C4ZVJz3Ync for ; Thu, 16 Jul 2026 18:32:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784226767; 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=CO/MY7RGCTkU4epRmhI872hOHu7frq2vfTvbvDFeRCY=; b=H606r1f/+57ojEaPNS0HbFuYD5gv0i8xtUjXcBwhJrmedd+E+NZ40lT8HMPGQnW4+XfncI vmW80uXTbpg6ZwuI2a+IbnIGJYH3Sti1+9B1r4o0JW1k5iqjgsX2gg9Wr4LOfUFlyfCql9 yJrrfRKFHQWSmh9bP31qa4+UjJboy1vL3mgF7JO+C4Y6FdyBmcq0kZIqTR/00wuiwNkW6p JCLu+zhqJ6TYWGHI/suIu883z4F5CaBdNmdA/cCslHJOloQfPiwzCpiRV4elOd7SPKloVX 4tlFbndNnFQl6u4HxCaTyWDJZGPmP62D7Gq6ixZ6oQIQHl9s9gdIViuSnQb50g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784226767; a=rsa-sha256; cv=none; b=H0rV37yjJm/I4uuDBaR0X8WVA+AAFBnZVtv70dwuPzJH9OQwqexwL/6pv21KbBRMecLkw/ t6yQbeeuyuD5gGwbfVPSXE1H9oEdsQuTQ8H4eDX8id3XystAU+MH5gTXK75tjscSx+nkRU Jwygv/IOMhjKGcioo9TFGsuQWVFyLtLgbnAiYia6HpZKwBjWSxv6BOjuoyS+G0DDykO5wK X3DpGozN2MPdBZFVbMyevjXQIpypkqPe86UvAQwsBb1Muqni3aA7BCDWJ8UQ66Z/xJYFSu /VerU81JMgmQ9Slhwy5+0FQ0DrwWfSRH4pwGqAZS6PmXUSQBvaFwUJGVoc6D0Q== 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=1784226767; 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=CO/MY7RGCTkU4epRmhI872hOHu7frq2vfTvbvDFeRCY=; b=PccHSo2Jl0wo6P5ETUSNUzYq5rtIZxLnPHZwR8DGl1C88syxMWoI0WnYjpXHEtoVKR0qsV dRYf6MbjYVCZdXfUlKj70AHWFC4gA1Yp3Pj6u+HWIGJDevxIUEmFigyVpYQXYrRBQS3i9e d4kmG6JSeE/HI8o23DLCjopuf/89Bw1TgZHkd+E0qIpFwo0y6uLcX09BAx/GHJKo3GBOXV cQgwL96F217KOL+T8XMe/Dti5ZDktjA2NV3wgoOXMA5nWUuBhNDI3Mz/mQzfuei/TXt4tB rwroQuw2ydBoGLwCyYdpNg7I07gB6QRezY7G0IEv+kTNF6p8RLNQljve/A2C7Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h1M9C2qTqz1SBL for ; Thu, 16 Jul 2026 18:32:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37f3a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 16 Jul 2026 18:32:47 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 2e089a89812b - stable/15 - Add a few missed files to ObsoleteFiles.inc 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: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 2e089a89812b56329741cd8dc2d272405a6e73ff Auto-Submitted: auto-generated Date: Thu, 16 Jul 2026 18:32:47 +0000 Message-Id: <6a5923cf.37f3a.2c90f9ef@gitrepo.freebsd.org> The branch stable/15 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=2e089a89812b56329741cd8dc2d272405a6e73ff commit 2e089a89812b56329741cd8dc2d272405a6e73ff Author: Dimitry Andric AuthorDate: 2026-07-12 14:15:29 +0000 Commit: Dimitry Andric CommitDate: 2026-07-16 18:25:25 +0000 Add a few missed files to ObsoleteFiles.inc There were still some left-over files under usr/tests/gnu/usr.bin/diff, causing the directory to not be fully removed. Add these to OLD_FILES. Fixes: 134a4c78d070 (cherry picked from commit f72cfefae99befe47fefc4683cd6957edaaf0e86) --- ObsoleteFiles.inc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index d9924e3e2e42..db41b4273010 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -51,6 +51,15 @@ # xargs -n1 | sort | uniq -d; # done +# 20260707: Removed GNU subtree +OLD_FILES+=usr/tests/gnu/Kyuafile +OLD_FILES+=usr/tests/gnu/lib/Kyuafile +OLD_DIRS+=usr/tests/gnu/lib +OLD_DIRS+=usr/tests/gnu/usr.bin/diff +OLD_FILES+=usr/tests/gnu/usr.bin/Kyuafile +OLD_DIRS+=usr/tests/gnu/usr.bin +OLD_DIRS+=usr/tests/gnu + # 20260602: Removed by 0a36787e4c1f on 20210723 OLD_FILES+=usr/share/locale/hr_HR.ISO8859-2/LC_MESSAGES OLD_FILES+=usr/share/locale/nl_BE.ISO8859-1/LC_MESSAGES From nobody Thu Jul 16 20:04: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 4h1PBc05Vlz6lrK8 for ; Thu, 16 Jul 2026 20:04:08 +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 4h1PBb6J03z3mqp for ; Thu, 16 Jul 2026 20:04:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784232247; 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=c97KOf532PBkyNWY6aYYQI2WsOS3KKOqugLWCEw3TwM=; b=brisLaY7kFzsezc+TGYdBykSAMbz6ddujUGFDxXCJQ1IvsGDCgg3yTPNZgBS7/XdRtemrA KKxCbffbyDhBlGp8hQq5rJJOVGnAbqKsyUVf5Trjql8n0pngWADWbz9lc0aO57KzfP0OKZ 99zn+XkXw0PzEtrSr4roUDYBcNbzvCXQEGOToBthrDjYKSkES7CKtJbxWJm18lDHJdoO3K 99XzuMRuo3RHZbKCtvVNs8yxZ0gHoWd78+5W9teqDkeUHrRdq6Ya8/HsVdyvh/8+V1orVO Gzb3vc6+EmCk21tUlTo8HTrFkp/HnlgoQLHJNtRDOWIaw9bSYSYxp4Yhd86Z0Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784232247; a=rsa-sha256; cv=none; b=YHG4k7UEAhXz8ghSrVCESMI+ZnuegyqKjjHvQGh6Z4HfakqgVKjvBT7jbBhmPMEOpfy+jH jseKLeb7483DAttZUqLHpP7uW8n+OWPVs+h9549uyJgPaauwu6T7aCs8Ic52EEmN4Dq6uD KTv7Q5AAlr4gqTcqb8SKv4g8qNfJ1jGWgwqRXnklW0Bg/miXAnmwH7ikiKUefs16r32pJK J1yZ0TyFlTHTfeDmwkHd2CXwnC/x4U51rIiEgiZXcGxDWi6Cg9FFNzCHFWs4A2YgdU+L6j F5v35yohfpMYoAIXxL0+JcTcSRO8ZMAwZ7Q7t9XRHEt32VaUtx6sQRcnagSRjg== 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=1784232247; 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=c97KOf532PBkyNWY6aYYQI2WsOS3KKOqugLWCEw3TwM=; b=Ep101GNP6/cmcSAQVOxK1fhGwZSRxdOFe/zV0lVHBPp5YkyjZlKeWd98TavcL27vjP2RGJ uOU0l3Zyxp12uLUIUDWDjPO6RHNEbC9WDVlkeOOZmtRJuflR3yI66gSeJ96cEGCWIxjigp /wJjG9Kcg5bqwUfQEqvDjolqbY3DCA4WeNMxcyvXUfogAT8HTpZMe6J3CPBafIBmjID50v P0x1j0x5q/5PUaK06jGd3vpYaGEJDeIPy0zBgbeGEEHIpAJK/majG8KpPIhq9AdTsdYGZQ wa+H6o/DJGP2TjAmYJDF156iulHzBoEJhXtEcTAl9qyqWonZqpThd9HGDPIdzw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h1PBb5CvRz1CC for ; Thu, 16 Jul 2026 20:04:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 40ee5 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 16 Jul 2026 20:04:07 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 33175a505997 - stable/14 - Add a few missed files to ObsoleteFiles.inc 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: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 33175a5059970bf9e888a799d3578e2902d765af Auto-Submitted: auto-generated Date: Thu, 16 Jul 2026 20:04:07 +0000 Message-Id: <6a593937.40ee5.5ecf27c5@gitrepo.freebsd.org> The branch stable/14 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=33175a5059970bf9e888a799d3578e2902d765af commit 33175a5059970bf9e888a799d3578e2902d765af Author: Dimitry Andric AuthorDate: 2026-07-12 14:15:29 +0000 Commit: Dimitry Andric CommitDate: 2026-07-16 18:32:31 +0000 Add a few missed files to ObsoleteFiles.inc There were still some left-over files under usr/tests/gnu/usr.bin/diff, causing the directory to not be fully removed. Add these to OLD_FILES. Fixes: 134a4c78d070 (cherry picked from commit f72cfefae99befe47fefc4683cd6957edaaf0e86) --- ObsoleteFiles.inc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index fdc4f8b7bad2..6c5c3b87aa92 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -51,6 +51,15 @@ # xargs -n1 | sort | uniq -d; # done +# 20260707: Removed GNU subtree +OLD_FILES+=usr/tests/gnu/Kyuafile +OLD_FILES+=usr/tests/gnu/lib/Kyuafile +OLD_DIRS+=usr/tests/gnu/lib +OLD_DIRS+=usr/tests/gnu/usr.bin/diff +OLD_FILES+=usr/tests/gnu/usr.bin/Kyuafile +OLD_DIRS+=usr/tests/gnu/usr.bin +OLD_DIRS+=usr/tests/gnu + # 20260602: Removed by 0a36787e4c1f on 20210723 OLD_FILES+=usr/share/locale/hr_HR.ISO8859-2/LC_MESSAGES OLD_FILES+=usr/share/locale/nl_BE.ISO8859-1/LC_MESSAGES From nobody Fri Jul 17 01:36:06 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 4h1XYg08qvz6mDLL for ; Fri, 17 Jul 2026 01:36: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 "YR1" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4h1XYf6mLRz3Hpd for ; Fri, 17 Jul 2026 01:36:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784252166; 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=WmryslYBSVWz/IVDoKU45fwQxQNxtSJ1NH+avrWadI0=; b=YYh9HHOlNUSWDjmfeRtxxnDGTX+e1JmoC2cRY5+Q1pQ5bVD8dkkgpP7VsAR0spzPYB152O oi7Y102oEVuHFdGjH4D4kQzbOCvuOsSve241i02jAxzJ07Y1Wqp4/HPxuNQXpd5duNPJIe m3q811apN9PDgLmbce2vW0zs8zl1Ru7lDTQs1QXmP0VAL4uFujpPT8koKMsnsm+alqzImJ IK0x90SdH1Cad77BVcSxj9wBYfbI8gdVzXTNVwGTuEFmH0BUvyjDE0GqdCY4eir7NRNBW6 OhmQTqAsgqHTse5yT6hCbI3MfxqkGj3KstgwhqSx7q/D7+gJ9gGIZRPhQrx8sg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784252166; a=rsa-sha256; cv=none; b=kjPs2k99Ntz7fQBJaef/9bPoRX49UC1RnL8FxyPNRdAjCQHShn8OA5GRw7AzWdGyBomXOB vaPrmy5nD5nY8KlqaIlfQ9X9plorNa07BjTmVk0tea3fm0mD1caFn40ShGR3eyrRZvouQW 2X+nt8rguUMGJW0DCD5bhBG/OCMbnAyF9EqMVmBJX0ktoQfOBa67vSHuHyOfFZ2u1Gyrx+ ymDrSTcCny/eya5g78brZR52VSEJl86TvWKRKboAEkSVXv6vEBfV3zKWEHmHjfTGc7yaRR ij5mEwcCENyckIOdoulfCNBceJrEkNczxpNiCWOwWT2sdr55vekFDeVhUQFwwQ== 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=1784252166; 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=WmryslYBSVWz/IVDoKU45fwQxQNxtSJ1NH+avrWadI0=; b=xiw/m3It22XWY4LQKApl7GGnn8HIGDErEWh4GNy/1/H3F+HVZbX0ohyfcv0lVd2aGMtJso aiAmRk0KFzM/oo41NUMHgz/JEXzAuBkS9ltZNLRYfLVTb+px8dmVu4BmsAF0QsHSvPhPe6 OnCti1ILmb1dDYWck6QgEaTr8rT4KcIO7zCZ+HjfNX13N79sPM59ColuDJGyGB6x5Z/qTk bpel0QpizhbXj26ZGH+LQw3sX898nWIAH2xkPXl+UNlOnVoXzq85ll7kZfMaELp6SLOX8S FUO/J/xFD1Bcxkrbss6paObrwHACAO9Vih1x+zFRIglB4qKfzK4xeiSdYEi6dQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h1XYf5ZcCz9pX for ; Fri, 17 Jul 2026 01:36:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3d37c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 17 Jul 2026 01:36:06 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: f5f296477da5 - stable/15 - kern_execve.c: simplify execve_block_wait() 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: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: f5f296477da5c54602b5394894c106d5fdda44e2 Auto-Submitted: auto-generated Date: Fri, 17 Jul 2026 01:36:06 +0000 Message-Id: <6a598706.3d37c.3385c5d1@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=f5f296477da5c54602b5394894c106d5fdda44e2 commit f5f296477da5c54602b5394894c106d5fdda44e2 Author: Konstantin Belousov AuthorDate: 2026-07-10 10:05:13 +0000 Commit: Konstantin Belousov CommitDate: 2026-07-17 00:16:40 +0000 kern_execve.c: simplify execve_block_wait() (cherry picked from commit 8a365723923e4eadad962d9c7e8162dfbfe3e78c) --- sys/kern/kern_exec.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/sys/kern/kern_exec.c b/sys/kern/kern_exec.c index 89141c979d07..9dedd60ce4fa 100644 --- a/sys/kern/kern_exec.c +++ b/sys/kern/kern_exec.c @@ -414,17 +414,11 @@ execve_block(struct thread *td, struct proc *p) void execve_block_wait(struct thread *td, struct proc *p) { - bool first; - PROC_ASSERT_HELD(p); PROC_LOCK_ASSERT(p, MA_OWNED); - for (first = true;; first = false) { - if (!first) - PROC_LOCK(p); - if (execve_block(td, p)) - return; - } + while (!execve_block(td, p)) + PROC_LOCK(p); } void From nobody Fri Jul 17 02:45:41 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 4h1Z630BsWz6mHtf for ; Fri, 17 Jul 2026 02:45:47 +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 4h1Z626cRsz3PDZ for ; Fri, 17 Jul 2026 02:45:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784256347; 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=mYGULsL6FCtkw92K5mEYeaNisABGu8fvW+C4rI0qgt8=; b=shm1LWUBDNMB5nDGeCXL+jOhgEG6wmZepVna/iIh/DjGMhfwdMwIdS3zYXpDOlw3L+xp0D mUsIdmkCzQiuCLIUZJJhUyFPh8ehSD5RS2xmf23Ezdul3rkPzuIk4eOYvjczjX+kjywZIZ C1e3tYI54bSMQQkbYC6VSIuHHdP/148ZyMqXLwtfjrupQiZupZWoIBMgarae1gnUs4ORGO sQWx71el3DtPCrByBb7yFgQ/d4LhgoZYR8xlwbo1fIhtYFHV1L3LlUcoByETVQM1CVwFgP LeP4HbnoyQuJESK7Zptp6hXeAAD6sbnb9+E8E9CCwspx47P96h8wTIQr7kUKtw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784256347; a=rsa-sha256; cv=none; b=qnKqpZNa55vkvU0q0lm7Ktwj+nYBY3wYDOlDGtjri3+1W68ASnPHiNKpuPn0XoMtK6F+n8 rhoS2C5t40Cm9v4USZ2jm3c9iLIhOJyTD4Ttp/uw0gYgCqSlTxe2YAuPeM/jCq1/FfB+0B xUkSor3sbCNFF8+QzLHCOnppHSlvAz+0CTydi3JTQNiOj70aAesfDzRizPYbktmf4Fquwu d5+oF220ygqPr4Eiq3HmKwzzcLUm1DfbF7StskXtFrylENayzeN7k2/GtyowEO9cdrCoKe jcpyiMcOjmDB3y/GJQV6/Y0W4X4NqWgiRl9ByxXNjpHlojGfXxpvYXhhKSQQKg== 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=1784256347; 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=mYGULsL6FCtkw92K5mEYeaNisABGu8fvW+C4rI0qgt8=; b=MQ31p5wMc5CfNeJwT8fQpj6z1hLHyeY94jzH1/7veAodkil7c7Z25Dzh6LYvBx3uWgQec4 arKw7Y5uYIXkmEXittlcHYr72Yv7GJtvN/rxlnQVue+RQarH3h9r/b4hc3ThfRjwqL6pbc qofCqXmlPw1GBj2cMQ7M8Uk6Di1MBfS7iQNDGHW672GHFmJjql5ACW8pvE5fdTC6hvHwVf /tuDV02ayMqG4jzCzr0bRk3EbSqOMHRzpV1pAsnIImFlDMxO8fC2wSzjSAtN+Dwu2c7/pm n95eBUKLLSLLDLnfK8XoJjxsVzNUe46CqvAZmWE7Zxblm5oy+KDyAHiJcT6Mog== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h1Z6255r8zDDY for ; Fri, 17 Jul 2026 02:45:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 1e09b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 17 Jul 2026 02:45:41 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Enji Cooper Subject: git: 0b5f2b4885a3 - stable/15 - Remove `$FreeBSD$` from upstream-provided config file 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: ngie X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 0b5f2b4885a3ad81513d8c594a560bf669c23aca Auto-Submitted: auto-generated Date: Fri, 17 Jul 2026 02:45:41 +0000 Message-Id: <6a599755.1e09b.724f4be5@gitrepo.freebsd.org> The branch stable/15 has been updated by ngie: URL: https://cgit.FreeBSD.org/src/commit/?id=0b5f2b4885a3ad81513d8c594a560bf669c23aca commit 0b5f2b4885a3ad81513d8c594a560bf669c23aca Author: Enji Cooper AuthorDate: 2026-06-12 05:45:28 +0000 Commit: Enji Cooper CommitDate: 2026-07-17 02:45:18 +0000 Remove `$FreeBSD$` from upstream-provided config file This diff reduces with the content provided by upstream (OpenSSL). MFC after: 1 week (cherry picked from commit 2de6d07e16aa4d902b7b322a869f89a07348e851) --- crypto/openssl/apps/openssl.cnf | 1 - 1 file changed, 1 deletion(-) diff --git a/crypto/openssl/apps/openssl.cnf b/crypto/openssl/apps/openssl.cnf index 4e8a335b95f3..abace0ea7f1c 100644 --- a/crypto/openssl/apps/openssl.cnf +++ b/crypto/openssl/apps/openssl.cnf @@ -1,4 +1,3 @@ -# $FreeBSD$ # # OpenSSL example configuration file. # See doc/man5/config.pod for more info. From nobody Fri Jul 17 02:46:30 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 4h1Z6t4r0Vz6mJGt for ; Fri, 17 Jul 2026 02:46:30 +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 4h1Z6t47kgz3PQT for ; Fri, 17 Jul 2026 02:46:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784256390; 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=eZ3Ia3zWkOKTuojYPBpMnfKIt8iYYq+WH2xFPim5KEQ=; b=r3cFUiAiiXI1Lp3eLf6eKcekp4t363WQhjssFNteDyMLjZWaMhrcISUeNkHqt6aZDCjB5o bw8u2dkGg/6V5Tn1Yt9KH5xE/fNQSgjafVjjQ6vfOGEYxTqKOCqkgNcnjKHYA24TZIK1P6 I9+WtMbbM/Ru3Ms6Io4B+N4795bUTxcb/UwphBnV3Oh/Bd8rHAAcOnSoSYGjlwgAM6vhHI +Jt0YbJ0EvhLrh/ptEkZZ+dgypxlaj8CLh0uCZ8G08D+iu36Lbv5MDXrqnesvHDETEMhyj BSL2QFnkJMZMN6OdOQkxBFZQk2hBYJoKNU+L+S60XNGeistYuRVsxWp7PNTwiQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784256390; a=rsa-sha256; cv=none; b=Id9cBojaQ3+Rux7Ljaiso7a9J/IkUKdGnKowdGJ4/Dx/c00sZ1yAWiJfV7jxI9QeNQ7zr+ jX/jwta99oK7CypzvcZ5nkqPP2ZhdmsEMinveL49HW14RHG0XBOKqGknV1WJnCTNoZpCmd inIHMM3qwLVhprYJzemd74siLNN8tVowh7wn0twqpiC8SP47KPT4PhYs3iWt7LcJnxDOZO QvxyD4PRfXWJyqeUAdax6nuqdM84XIKhcfG22mIVv2MGn6uH9YBfKNxkZPvz5fvRW8SJTo 5jzNyqs//P7l3iB65SsQrvrXWDPS6mHHYhScq3u/F3rvh6+NlIurhUzsBpRsLg== 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=1784256390; 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=eZ3Ia3zWkOKTuojYPBpMnfKIt8iYYq+WH2xFPim5KEQ=; b=t0nGJwMrv9589VYoDfAXVlDnyfvQPV9qLQdFszPFfynWpPNp51xk8iLbsF3kKJVP5liQLE pJxVCNq7+fo56qnSDnEvKS2FwC8xxJWg4l+juv47u9sJf+wI6xfMTVb+17sLjgYkMA66ix eXfAXvO7jy818T2Rsa0YStq3JRxg/DxmRUPipge3alwqg7V9U8+jvdXWBeL/nVrAIdhZ39 4DHXJx/+IaSZELjv2u5OthEKXvTGCokmYZqwCq7VNC003jgBegEsKzH39JegSud1nTbLyq 6zfaKBCgM+f8pVpieJpdg2Bn05NCxvQtOxE8aX34AD6/8MWECeAAZ45oNSdKMQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h1Z6t2tdpzCv9 for ; Fri, 17 Jul 2026 02:46:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 1d19a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 17 Jul 2026 02:46:30 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Enji Cooper Subject: git: 8a33b1d98e22 - stable/14 - Remove `$FreeBSD$` from upstream-provided config file 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: ngie X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 8a33b1d98e221905699fa94a93932ef9c88ca692 Auto-Submitted: auto-generated Date: Fri, 17 Jul 2026 02:46:30 +0000 Message-Id: <6a599786.1d19a.657115d1@gitrepo.freebsd.org> The branch stable/14 has been updated by ngie: URL: https://cgit.FreeBSD.org/src/commit/?id=8a33b1d98e221905699fa94a93932ef9c88ca692 commit 8a33b1d98e221905699fa94a93932ef9c88ca692 Author: Enji Cooper AuthorDate: 2026-06-12 05:45:28 +0000 Commit: Enji Cooper CommitDate: 2026-07-17 02:46:14 +0000 Remove `$FreeBSD$` from upstream-provided config file This diff reduces with the content provided by upstream (OpenSSL). MFC after: 1 week (cherry picked from commit 2de6d07e16aa4d902b7b322a869f89a07348e851) --- crypto/openssl/apps/openssl.cnf | 1 - 1 file changed, 1 deletion(-) diff --git a/crypto/openssl/apps/openssl.cnf b/crypto/openssl/apps/openssl.cnf index 7996120cc67e..12bc40896ef2 100644 --- a/crypto/openssl/apps/openssl.cnf +++ b/crypto/openssl/apps/openssl.cnf @@ -1,4 +1,3 @@ -# $FreeBSD$ # # OpenSSL example configuration file. # See doc/man5/config.pod for more info. From nobody Fri Jul 17 02:47:39 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 4h1Z8C5QPgz6mHty for ; Fri, 17 Jul 2026 02:47:39 +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 4h1Z8C4mD5z3PvM for ; Fri, 17 Jul 2026 02:47:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784256459; 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=eNli75NLRp+dbmSgxXyjr+yX4u0R1h/8mWXDfayUmWM=; b=pS1IC5wSSRK6B0gomdZ3AS90N0kJYKx0rTTmEywYOwM61dJZ89+EPYRb8wUy6MdU67K4Ti 8hd2Kxgu+C8DVrB3h+y1EhdjIvfEv8W/Fo+/Tot/owKxLUinSvAQUPyAbuTU7Zt72Up3ts bcCS32GaLpZ/ONmFytl2Jmjkbxfh2e70OS8FtN16LV60Uuo6w6R28fNC1AxyNpE2EwJetS UztB/E+sRXDbzS8H1bNSLwbjkQoCJ6+F/Fr5mIGBxTuk+SemWhnGSCJra8MAModu364gAC cVAOI4gPG4/OtzBc7kHRnC2IDAgahRljOaCl4KPOOKdgcphOskiaXsGDwFm3Ng== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784256459; a=rsa-sha256; cv=none; b=wLBUCT7xo8feWhXYQBP7gsKc9V4Gpd0p9PK4vz1W3jCUiHBPa6E9QpOiAB30U9NiANhyJQ RQZC3Ofg4gd2VlhZVtKKVOcIuv42SsBSjSjRYhVDwIYLfFCU4asBmM0VKVfKUfuzEiB4AD 8cSKevw5fWvGlcrxvMvokmHIGhu1qv3TmlZ8EbMrTIpoI5Ew7FpJVydDaU9OHsgikzrkWL AJu/PyEBPysQ1jWtkXN5RKc/UbTLOLUI7Lk7pEMnWhhLOnO75gR0H01kZzheRZ3fs3421j jVJA+Tni7zGHVynd5yJbSU4cCPh5W3zW93ZHRx920FjszfuIahu6m/OTOvgYgw== 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=1784256459; 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=eNli75NLRp+dbmSgxXyjr+yX4u0R1h/8mWXDfayUmWM=; b=rnS968RPXVoRp8x8whPElbaA3pzTAIE1QMqknSeEGRolwmVOuDydCiaCHYMPD9Ou4qNd3R 30yXlvgQt1SZ45IKpTfgdQ3yLXRV1l6UpZzC+NwcXU5ChXX0fM7ipNtyclrXD+qzXwPxqX IMib6xGDnM45UML5ajVz5im4LV+CsHbKltNwzIfnyCODhQ41ztz1D5DAEpU5an1K6HVbVI Q8bRFmavbReTfPpgXyhJT84ZyzVXiufg/rV1STAvDVRZ6Lc9DY8JpO6BG04KYHs2ZL2V6F zlHDObajnImaKcBryeLqNWA7WMqK0woxGoTdmfbbRteZw7uW2vZd2JjeibIn8g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h1Z8C3ZbFzD4f for ; Fri, 17 Jul 2026 02:47:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 1e09f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 17 Jul 2026 02:47:39 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Enji Cooper Subject: git: 993fbb604c9f - stable/15 - Remove fips-module related diff 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: ngie X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 993fbb604c9fa0624b22f78ea3a7a3829102c22d Auto-Submitted: auto-generated Date: Fri, 17 Jul 2026 02:47:39 +0000 Message-Id: <6a5997cb.1e09f.6c990c4a@gitrepo.freebsd.org> The branch stable/15 has been updated by ngie: URL: https://cgit.FreeBSD.org/src/commit/?id=993fbb604c9fa0624b22f78ea3a7a3829102c22d commit 993fbb604c9fa0624b22f78ea3a7a3829102c22d Author: Enji Cooper AuthorDate: 2026-06-12 05:48:19 +0000 Commit: Enji Cooper CommitDate: 2026-07-17 02:47:24 +0000 Remove fips-module related diff This particular change didn't come from upstream. It was added locally in 7a991ecd1 when attempting to enable the fips provider with 3.0. Given the fact that we no longer build the fips provider and the fips provider build process (including sources) is very prescribed to specific build steps and source versions, there's no reason why we need to continue carrying around this diff anymore. MFC after: 1 week Signed-off-by: Enji Cooper (cherry picked from commit d6e3662bc1f5054d81b1ceab641396047c2cad94) --- crypto/openssl/crypto/bn/bn_const.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/crypto/openssl/crypto/bn/bn_const.c b/crypto/openssl/crypto/bn/bn_const.c index 5e0f470663b3..07a3a4a7c380 100644 --- a/crypto/openssl/crypto/bn/bn_const.c +++ b/crypto/openssl/crypto/bn/bn_const.c @@ -76,12 +76,10 @@ BIGNUM *BN_get_rfc2409_prime_1024(BIGNUM *bn) * RFC2312 specifies a generator of 22. */ -#ifndef FIPS_MODULE BIGNUM *BN_get_rfc3526_prime_1536(BIGNUM *bn) { return COPY_BN(bn, ossl_bignum_modp_1536_p); } -#endif /*- * "2048-bit MODP Group" from RFC3526, Section 3. From nobody Sat Jul 18 00:28:10 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 4h270p4HjGz6llp2 for ; Sat, 18 Jul 2026 00:28:10 +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 4h270p3d5Dz3QJx for ; Sat, 18 Jul 2026 00:28:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784334490; 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=mELc5ydWc+2onFVhR+wIkopHAuip27uIjuUoMmIqbVg=; b=vkhM/XORJ0eQoTBmgKHlLoXaoasUFUynNNWYo7TdtT3weJMq5IE15UlYHV6FwWfp9SoReZ vWVK1Q+adaY/sjovhsk/WecFnaTnHMurdRv+DZWrapLM/xbwGpR/P6MH6W0U54GUXM0HXt IX1BXUsIvkSfvsqcK9GUGHDCaKfKfOo11kPt+LZE/+cgOYJv4ikin4wPKY8QfSs2eARqnt 5aIV11Uw8DRnfhldedxE/jU4Sv+fvJ9MrVQYzp5J4SdVYOBCVOZZ1MZhQ75N5qLgoXODL1 7DFL9hlLGgH0zlqdd2Cr3Y14qyQzBC3Je6GI60lthapsDp47ABtqYRFZ03Y5Xg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784334490; a=rsa-sha256; cv=none; b=jIH/8xtwdP+fSmSRVELDmo2BYhmefXZMaEy5UUnYzABCSXxPcSH7MSsGbJzzbRHIVT7awY aEryhPJhwzltIZcwl5yTrJFBlymaH6euTkVKW5MpAWfeQJlFmJ5e2lvib7DFQm95qwpNMO A7HGNSTPZI586nFk2VLGlR/2XKwFUAWhpRqfRrWi7sZ5r5RTvAat2tFCRc2WiIgyrs+2Y/ /La60P+W9OTuY2xT6nZS3MhEpa6pJY3Lv1pRcwmQBC2lo6SOvwTumFOPwqfosYHfONMf9Z Ma/wXq6e0gXfJuRvsFdV+wj7CxYHEYZkfKO8Op4ZdXKErn3Shrz95WvHNkExUQ== 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=1784334490; 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=mELc5ydWc+2onFVhR+wIkopHAuip27uIjuUoMmIqbVg=; b=gBYy8f7L9PQDpPAHzUwBTBUwInrcWQmberdWZPm1LigbY2QEKeu4SAbIr9g+j3+PLApUi9 I4lpAuneolRFjNqzPttz7x1GXpHUG4qCQjVERA3TNveDDmFFa/lrT2AeDw5N5tDOy+FX9x EzjS2Fh+VaUC2nJ2IjTTlX9SrMs3oUx2fliFORMrIyLjfG4kuT26xVESR9MtiaULgqtJey +qe12Z0VmYTOfLR5INf59GBywtypPefdz+gyVyrNBK+sg7rMbKguuqHdd2W+1OC7/ucmUf ucMU5U0H375tY2bdRPt9XAuZWzPWtU4fy687QRKG/FFb7e2nkV4s7YifA/q4OA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h270p1z97z18Qp for ; Sat, 18 Jul 2026 00:28:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3f32c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 18 Jul 2026 00:28:10 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: e0fe82303f0d - stable/15 - renameat(2): add AT_RENAME_EXCHANGE flag 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: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: e0fe82303f0d8474849103cf77976198380af1a5 Auto-Submitted: auto-generated Date: Sat, 18 Jul 2026 00:28:10 +0000 Message-Id: <6a5ac89a.3f32c.70f2323c@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=e0fe82303f0d8474849103cf77976198380af1a5 commit e0fe82303f0d8474849103cf77976198380af1a5 Author: Konstantin Belousov AuthorDate: 2026-06-18 18:12:01 +0000 Commit: Konstantin Belousov CommitDate: 2026-07-18 00:27:24 +0000 renameat(2): add AT_RENAME_EXCHANGE flag (cherry picked from commit 8e6e77ec25bc5809500d29bf318a843b40205657) --- sys/kern/vfs_syscalls.c | 70 ++++++++++++++++++++++++++++++++++++++++--------- sys/sys/fcntl.h | 2 ++ 2 files changed, 59 insertions(+), 13 deletions(-) diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c index 2e6b4e9a3cad..769ebbcd18dc 100644 --- a/sys/kern/vfs_syscalls.c +++ b/sys/kern/vfs_syscalls.c @@ -3754,12 +3754,13 @@ sys_renameat2(struct thread *td, struct renameat2_args *uap) #ifdef MAC static int kern_renameat_mac(struct thread *td, int oldfd, const char *old, int newfd, - const char *new, enum uio_seg pathseg, struct nameidata *fromnd) + const char *new, enum uio_seg pathseg, struct nameidata *fromnd, int op, + int ndflags) { int error; - NDINIT_ATRIGHTS(fromnd, DELETE, LOCKPARENT | LOCKLEAF | AUDITVNODE1, - pathseg, old, oldfd, &cap_renameat_source_rights); + NDINIT_ATRIGHTS(fromnd, op, LOCKPARENT | LOCKLEAF | AUDITVNODE1 | + ndflags, pathseg, old, oldfd, &cap_renameat_source_rights); if ((error = namei(fromnd)) != 0) return (error); error = mac_vnode_check_rename_from(td->td_ucred, fromnd->ni_dvp, @@ -3784,23 +3785,35 @@ kern_renameat(struct thread *td, int oldfd, const char *old, int newfd, struct vnode *tvp, *fvp, *tdvp; struct nameidata fromnd, tond; uint64_t tondflags; - int error; + int error, fndflags, op; short irflag; + bool exchange; - if ((flags & ~(AT_RENAME_NOREPLACE)) != 0) + if ((flags & ~(AT_RENAME_NOREPLACE | AT_RENAME_EXCHANGE)) != 0) + return (EINVAL); + if ((flags & (AT_RENAME_NOREPLACE | AT_RENAME_EXCHANGE)) == + (AT_RENAME_NOREPLACE | AT_RENAME_EXCHANGE)) return (EINVAL); + if ((flags & AT_RENAME_EXCHANGE) != 0) { + op = RENAME; + exchange = true; + } else { + op = DELETE; + exchange = false; + } + fndflags = 0; again: tmp = mp = NULL; bwillwrite(); #ifdef MAC if (mac_vnode_check_rename_from_enabled()) { error = kern_renameat_mac(td, oldfd, old, newfd, new, pathseg, - &fromnd); + &fromnd, op, fndflags); if (error != 0) return (error); } else { #endif - NDINIT_ATRIGHTS(&fromnd, DELETE, WANTPARENT | AUDITVNODE1, + NDINIT_ATRIGHTS(&fromnd, op, WANTPARENT | AUDITVNODE1 | fndflags, pathseg, old, oldfd, &cap_renameat_source_rights); if ((error = namei(&fromnd)) != 0) return (error); @@ -3808,6 +3821,11 @@ again: } #endif fvp = fromnd.ni_vp; + if (exchange && fvp == NULL) { + NDFREE_PNBUF(&fromnd); + vrele(fromnd.ni_dvp); + return (ENOENT); + } tondflags = LOCKPARENT | LOCKLEAF | NOCACHE | AUDITVNODE2; if (fromnd.ni_vp->v_type == VDIR) tondflags |= WILLBEDIR; @@ -3846,6 +3864,29 @@ again: error = EEXIST; goto out; } + if (exchange) { + if (tvp == NULL) { + error = ENOENT; + goto out; + } + if (tvp->v_type == VDIR && fndflags == 0) { + fndflags = WILLBEDIR; +again2: + NDFREE_PNBUF(&fromnd); + vrele(fromnd.ni_dvp); + vrele(fvp); + NDFREE_PNBUF(&tond); + VOP_VPUT_PAIR(tdvp, &tvp, true); + error = sig_intr(); + if (error != 0) + goto out1; + goto again; + } + if (tvp->v_type != VDIR && fndflags != 0) { + fndflags = 0; + goto again2; + } + } error = vn_start_write(fvp, &mp, V_NOWAIT); if (error != 0) { again1: @@ -3888,12 +3929,15 @@ again1: goto out; } if (tvp != NULL) { - if (fvp->v_type == VDIR && tvp->v_type != VDIR) { - error = ENOTDIR; - goto out; - } else if (fvp->v_type != VDIR && tvp->v_type == VDIR) { - error = EISDIR; - goto out; + if (!exchange) { + if (fvp->v_type == VDIR && tvp->v_type != VDIR) { + error = ENOTDIR; + goto out; + } else if (fvp->v_type != VDIR && + tvp->v_type == VDIR) { + error = EISDIR; + goto out; + } } #ifdef CAPABILITIES if (newfd != AT_FDCWD && (tond.ni_resflags & NIRES_ABS) == 0) { diff --git a/sys/sys/fcntl.h b/sys/sys/fcntl.h index 80cbca4ea753..44f43f745762 100644 --- a/sys/sys/fcntl.h +++ b/sys/sys/fcntl.h @@ -260,7 +260,9 @@ typedef __pid_t pid_t; #define AT_EMPTY_PATH 0x4000 /* Operate on dirfd if path is empty */ #define AT_RENAME_NOREPLACE 0x0001 /* Fail rename if target exists */ +#define AT_RENAME_EXCHANGE 0x0002 /* Atomically exchange 'from' and 'to' */ #define RENAME_NOREPLACE AT_RENAME_NOREPLACE +#define RENAME_EXCHANGE AT_RENAME_EXCHANGE #endif /* __BSD_VISIBLE */ /* From nobody Sat Jul 18 00:28:11 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 4h270q6lhsz6llm0 for ; Sat, 18 Jul 2026 00:28:11 +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 4h270q4fszz3QX7 for ; Sat, 18 Jul 2026 00:28:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784334491; 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=hv7v7JlPv8SykjPwNj4FNim4agTrX0Q5sbhFSoJfl7o=; b=Zkv2gqN82CWKauT8Ed9UVdbcxL2r2GzmbtqzyEVpl7mlrsMvCt1szGtS0nbA2JwZlh8+lX Y1mL4e+jnXp02B6aVnRAaGsTGAdRl1OvWJfC3Vp7r5iIoUBfN3PcNC9iHKWQ+F6CxIDhl0 sLAXQG3gu6ALqmTr24rTvTMUARj0xLQtDr+2TWxJQy0OqP12tYSAHvWaT4AQru0jCEZQWw UMY4w7scuFG9VgFXrxaR//sgpNoQXP2t9Dx/JdAScjphFIALN0BoM7vkWxOcVgttEg/IMA /Z+R4zGyhsUbuWvrgEmmC60b+fuza7X++QAi12D8BNobTxnTTlr1dwOfJejL5w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784334491; a=rsa-sha256; cv=none; b=BgpGNNGuWSgQE8ifzGFHvGHQL165ykjZrARmQvHU4QsUb2iFz5oxRrachDezUujqJS5CBR VTmBW4aWYm5nF27lV/AF6e7E+5CZA0dQce8V91FGsh846CgpKs544N41UFm4BKhevrq7SH EVyvp1267ZJL76gXFxaQSY/DeFOeBrQjSd02yMt43xJep6UYD/Iy9ow2Mkl5N90bN/fXUk f60Gfpq07QGPXb9NxOP22HrVoNho8mHh2yO5nnN6N+PHYuXLfz4/NtDIqf8rkKPBUPv9mm srvWCCMGbfGNrOwommfxqSGyTveWc730phS1s4ONqEhw1BRVdYpB3nJMmN1aqQ== 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=1784334491; 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=hv7v7JlPv8SykjPwNj4FNim4agTrX0Q5sbhFSoJfl7o=; b=oE3vICywpxG+uOCaS6ErSPDGe2oDLSynQZYbwM4t4WCeywtRKos6W3lj8VNvMyTa2x5ioI 96jPy0RJmCAAEI1j2pIvtbrBpl5qjiLzx8ZzapPP8tKvc2CYbvM9We5kZEfthy2NMp5Gfi eBgIX1gxpL11/3gRgKbgvD1vtFjOLPexRxBEg7l45WLQE2vVtAbM/DaFdhrTd6Lxll8IUO 7JpL6CJJUYgQLuY/bZ8VHD0B+DHFeJR9MHHe6qlI9n0feym4laoU5NU+bLN2djbawLPnEp WKAMPxeOe1tMwPDR0RUgrrH0mrFmBJmlPtD+vmxtHfMBAPlIPYQ+b6egGBVoXA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h270q2nFsz194b for ; Sat, 18 Jul 2026 00:28:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3fa24 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 18 Jul 2026 00:28:11 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 090fff7c6e88 - stable/15 - rename.2: Document AT_RENAME_EXCHANGE 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: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 090fff7c6e883c076df77f04771592ebaf415a33 Auto-Submitted: auto-generated Date: Sat, 18 Jul 2026 00:28:11 +0000 Message-Id: <6a5ac89b.3fa24.46810cac@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=090fff7c6e883c076df77f04771592ebaf415a33 commit 090fff7c6e883c076df77f04771592ebaf415a33 Author: Konstantin Belousov AuthorDate: 2026-06-19 08:40:25 +0000 Commit: Konstantin Belousov CommitDate: 2026-07-18 00:27:24 +0000 rename.2: Document AT_RENAME_EXCHANGE (cherry picked from commit 3055c47f6024b087a90021edb05992304a119827) --- lib/libsys/rename.2 | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/libsys/rename.2 b/lib/libsys/rename.2 index dbad50edb9a9..2a4729dfc8d0 100644 --- a/lib/libsys/rename.2 +++ b/lib/libsys/rename.2 @@ -143,6 +143,12 @@ and .Fa to exists, the request fails with the error .Er EEXIST . +.It Dv AT_RENAME_EXCHANGE +Atomically exchange the files pointed to by the +.Fa from +and +.Fa to +names. .El .Sh RETURN VALUES .Rv -std rename From nobody Sat Jul 18 00:28:12 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 4h270s0qVbz6llPJ for ; Sat, 18 Jul 2026 00:28: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 4h270r6P6Cz3QK2 for ; Sat, 18 Jul 2026 00:28:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784334492; 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=ozCBpe/JLse0sTeKBoTX6n6heObNmdFVR0P4djayGVA=; b=jEAT5qjJfEQTmGJZq/9OBzK21LFxBPeGs2+SDFgs3jDcvy2xDq55AYC/YLYmVTHcOzj2JE uae5dbtfsbttHZHSl8X0H4vXq/LBnst7Pj8BTOJeLRGuV+vs4Mc8LVnuFucfC7xIFr++MK r8IfggPUP+B3sOtvA2mg1oX8sUcSEui6qsC1Ne1hgp7gB6FimK92if862Fha1IL1ZEHcan zY87nja8e/lnazG1y/2/bXqSriKh61UqnJ16/vaxM8/ZhLz0y+Bx7CYWmmN9cFd5mIz+hc c1/hwRQkZi5SMjNRSQZVb2HTd8GIQNwWZZrc+f85icMSz1pxqIQQLQ4EfrmesA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784334492; a=rsa-sha256; cv=none; b=ilgagvf0uzkxb/TeOsRQMaEyYbb1Rpe0EYReCw8P3NkOXH4MAypGkKItpYmO3ybFQum9KL Eq84TPIiAHGeWbj6NO21RtQfdSZVvQPXXsbu8fcJEkLTHKT1I7LD+JrIy+8w4tyDau2zRa gnEX4vInJhMQRL6WNce2UK0oWE1fSOwKR9ezO9D0h5aJJNMIompW0uQhYFEYy31ikvWpXO Q1wROP0dMdgZe+bgfXKFDw+7s0HQTTcmI659pA3aVok6BUYm06PkrS0Ry9gYL7zcLC7I4Q F3WbW4AJjV05BJdiIEtqTYOEesrirBAwy3jeX6ktWhJMGQ32YP9RlYXMB+U+kw== 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=1784334492; 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=ozCBpe/JLse0sTeKBoTX6n6heObNmdFVR0P4djayGVA=; b=nFkTk34cXPPAzLq7DyvNv45Oh/QBhY+goQ6FH3y/50uqgOiok/e/tKiD3VwzNSBjbdd3iP y/lOPy8CSuXgnmzcCTZkrbsTAmrgaY6X2zpj3IO6v4GBrNFYNwXtEytnPFGgt+b9ADtcwt LvwsT3ZBdLaFTnxbq/ePVEb2pb32xcJrq5Sw1Gyy2LyWRTPEiHss9jYPZd8RiVaQ7nQ6I2 VRRgMXZnBAVryBh8Yi11ydoY+3eNc9oubK6Nv+6G2Cd0IcbF7aB2UIL/AIg5X05fz5zCX6 NN/RXNNlyXnidDkNxmO/jC9pBxGcAI4n9VqNZz87mGGkSNFSd9L1tNbM63hv3A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h270r3YlZz1974 for ; Sat, 18 Jul 2026 00:28:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3e3df by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 18 Jul 2026 00:28:12 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 5dc55cc4591e - stable/15 - tmpfs_rename(): style 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: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 5dc55cc4591ef9d7aecc934a69351259cba99a10 Auto-Submitted: auto-generated Date: Sat, 18 Jul 2026 00:28:12 +0000 Message-Id: <6a5ac89c.3e3df.20e37057@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=5dc55cc4591ef9d7aecc934a69351259cba99a10 commit 5dc55cc4591ef9d7aecc934a69351259cba99a10 Author: Konstantin Belousov AuthorDate: 2026-06-19 08:11:18 +0000 Commit: Konstantin Belousov CommitDate: 2026-07-18 00:27:24 +0000 tmpfs_rename(): style (cherry picked from commit 631b8ff9318a83b985d3a8a790dd0fc1bab9d5cd) --- sys/fs/tmpfs/tmpfs_vnops.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/fs/tmpfs/tmpfs_vnops.c b/sys/fs/tmpfs/tmpfs_vnops.c index edd620cfdb5b..d42d601e630c 100644 --- a/sys/fs/tmpfs/tmpfs_vnops.c +++ b/sys/fs/tmpfs/tmpfs_vnops.c @@ -1104,8 +1104,8 @@ tmpfs_rename(struct vop_rename_args *v) } } - if ((fnode->tn_flags & (NOUNLINK | IMMUTABLE | APPEND)) - || (fdnode->tn_flags & (APPEND | IMMUTABLE))) { + if ((fnode->tn_flags & (NOUNLINK | IMMUTABLE | APPEND)) != 0 || + (fdnode->tn_flags & (APPEND | IMMUTABLE)) != 0) { error = EPERM; goto out_locked; } From nobody Sat Jul 18 00:28:13 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 4h270t2gtMz6llrx for ; Sat, 18 Jul 2026 00:28:14 +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 4h270s6cnDz3QXP for ; Sat, 18 Jul 2026 00:28:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784334493; 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=O2hX53gaGVE3F1da6WCanPPNobL/rQ7k44kdk8LUSck=; b=yUwGKng2zbQEGfplBuoPAZe1oOokpdQctqEWd2/bqqMeYDq/lwBpmkL0NFLXUwUpBXC1eo 4hc1tc2KRQMfdhV0o3vddbF6zCBxUNJDJAU+pBXzCE4YLGhOqDz2eNPhndI7JmgEReZPQM gyF818IAcdPxgDS727QhMMcgN7DROObHgEN/sa6a2Q16SOlUa+CUfWg/EMlz0q0ZrnP0+r 8BBoa/f1FMKzI3P0Npn/aWR4WucWjFVf8AeK7+s+9LiT4PqLgLdQ8vISnwBMk9kQG/z5ki e1UaOVcn65uxhqg2lmv1fregFE4GmnDsn+iB8MMe++VkfIhIEgeqcXBmQEQT5w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784334493; a=rsa-sha256; cv=none; b=pzI19MiEVKwEAjmwQkJEPe30CmpS73HtsY5vhptTaBNYJ4tTOwPg/XIQOMi2BIUoN0KWj0 yw0hTHI+KtjX4sJH0tH16tSmjVYgcC8n/FqqIldIX9eeXK8YrS52ax8ZlGPhENNzTF2+Dz cUBTeBUZStNnJA6CoId5eXb+O+qqzouAnP1AZDe0uOgP2DR9HR+ovl4fK6AaaSX4OYKvpa 62xoxkHfR2L9VSypn+mUmoNo1edy445MpcZ2AmOnHtYSL2gWwPaTp2T9RJVPiz/2FbhyfE AV4FV1wKccm4SnCj1maFlMlbaXkEp9D6HIwQwgOTwcH5lgHXzwTA6t3ch5RWaw== 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=1784334493; 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=O2hX53gaGVE3F1da6WCanPPNobL/rQ7k44kdk8LUSck=; b=eLpFs+zUIbM1LTNoaWsCQj7mmgFGMrzeMngP5T8pCoB8mMYfprkA/PD2t1QIs4vIW9kUwS iEzrEQO03yhrge1mkE+vAbIX3IYKHH7BQoZyIiahsz6mYTuyIrv6oUfs2MA90RLi+tolYW haIC6hGVNmFYbSHXm2YM+yUHhBtgu7EAEpOhl5Duhju4u9akvJizYb+eNSRBc5ObIRkv3D wp2jZULMOE4nx5fj3bQXeI3f2I/MkfMiXKeF56z5UctXI4X1XOL2Rsxvwl5Sa/mtvrZikQ CZjaQKIFkMJ4MkVifjYYKM+u5ZGkopdKfE7MeWzrmoXL6Hm2CgO3m/rXIZDP4w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h270s4KCwz18cB for ; Sat, 18 Jul 2026 00:28:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3fc68 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 18 Jul 2026 00:28:13 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: feb4c9d089bf - stable/15 - tmpfs: extract tmpfs_rename_check/set_parent() from tmpfs_rename() 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: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: feb4c9d089bf6505408997ad132d816865262de0 Auto-Submitted: auto-generated Date: Sat, 18 Jul 2026 00:28:13 +0000 Message-Id: <6a5ac89d.3fc68.66e6f523@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=feb4c9d089bf6505408997ad132d816865262de0 commit feb4c9d089bf6505408997ad132d816865262de0 Author: Konstantin Belousov AuthorDate: 2026-06-18 20:01:35 +0000 Commit: Konstantin Belousov CommitDate: 2026-07-18 00:27:24 +0000 tmpfs: extract tmpfs_rename_check/set_parent() from tmpfs_rename() (cherry picked from commit 5e0b96e728af9916ac59d65e37155a95e06c3b5e) --- sys/fs/tmpfs/tmpfs_vnops.c | 167 ++++++++++++++++++++++++--------------------- 1 file changed, 89 insertions(+), 78 deletions(-) diff --git a/sys/fs/tmpfs/tmpfs_vnops.c b/sys/fs/tmpfs/tmpfs_vnops.c index d42d601e630c..9239d146ee9d 100644 --- a/sys/fs/tmpfs/tmpfs_vnops.c +++ b/sys/fs/tmpfs/tmpfs_vnops.c @@ -962,6 +962,89 @@ releout: return (error); } +static int +tmpfs_rename_check_parent(struct tmpfs_mount *tmp, struct tmpfs_node *fdnode, + struct vnode *fvp, struct tmpfs_node *fnode, struct tmpfs_dirent *de, + struct tmpfs_node *tdnode, struct ucred *tcred) +{ + struct tmpfs_node *n; + int error; + + TMPFS_NODE_LOCK(fnode); + error = tmpfs_access_locked(fvp, fnode, VWRITE, tcred); + TMPFS_NODE_UNLOCK(fnode); + if (error != 0) + return (error); + + /* + * Ensure the target directory is not a child of the + * directory being moved. Otherwise, we'd end up + * with stale nodes. + * + * TMPFS_LOCK guarantees that no nodes are freed while + * traversing the list. Nodes can only be marked as + * removed: tn_parent == NULL. + */ + n = tdnode; + TMPFS_LOCK(tmp); + TMPFS_NODE_LOCK(n); + while (n != n->tn_dir.tn_parent) { + struct tmpfs_node *parent; + + if (n == fnode) { + TMPFS_NODE_UNLOCK(n); + TMPFS_UNLOCK(tmp); + return (EINVAL); + } + parent = n->tn_dir.tn_parent; + TMPFS_NODE_UNLOCK(n); + if (parent == NULL) { + n = NULL; + break; + } + TMPFS_NODE_LOCK(parent); + if (parent->tn_dir.tn_parent == NULL) { + TMPFS_NODE_UNLOCK(parent); + n = NULL; + break; + } + n = parent; + } + TMPFS_UNLOCK(tmp); + if (n == NULL) + return (EINVAL); + + TMPFS_NODE_UNLOCK(n); + + return (0); +} + +static void +tmpfs_rename_set_parent(struct tmpfs_node *fdnode, struct tmpfs_node *fnode, + struct tmpfs_dirent *de, struct tmpfs_node *tdnode) +{ + /* Adjust the parent pointer. */ + TMPFS_VALIDATE_DIR(fnode); + TMPFS_NODE_LOCK(de->td_node); + de->td_node->tn_dir.tn_parent = tdnode; + TMPFS_NODE_UNLOCK(de->td_node); + + /* + * As a result of changing the target of the '..' + * entry, the link count of the source and target + * directories has to be adjusted. + */ + TMPFS_NODE_LOCK(tdnode); + TMPFS_ASSERT_LOCKED(tdnode); + tdnode->tn_links++; + TMPFS_NODE_UNLOCK(tdnode); + + TMPFS_NODE_LOCK(fdnode); + TMPFS_ASSERT_LOCKED(fdnode); + fdnode->tn_links--; + TMPFS_NODE_UNLOCK(fdnode); +} + static int tmpfs_rename(struct vop_rename_args *v) { @@ -1129,86 +1212,14 @@ tmpfs_rename(struct vop_rename_args *v) * In case we are moving a directory, we have to adjust its * parent to point to the new parent. */ - if (de->td_node->tn_type == VDIR) { - struct tmpfs_node *n; - - TMPFS_NODE_LOCK(fnode); - error = tmpfs_access_locked(fvp, fnode, VWRITE, - tcnp->cn_cred); - TMPFS_NODE_UNLOCK(fnode); - if (error) { - if (newname != NULL) - free(newname, M_TMPFSNAME); + if (fnode->tn_type == VDIR) { + error = tmpfs_rename_check_parent(tmp, fdnode, fvp, + fnode, de, tdnode, tcnp->cn_cred); + if (error != 0) { + free(newname, M_TMPFSNAME); goto out_locked; } - - /* - * Ensure the target directory is not a child of the - * directory being moved. Otherwise, we'd end up - * with stale nodes. - */ - n = tdnode; - /* - * TMPFS_LOCK guaranties that no nodes are freed while - * traversing the list. Nodes can only be marked as - * removed: tn_parent == NULL. - */ - TMPFS_LOCK(tmp); - TMPFS_NODE_LOCK(n); - while (n != n->tn_dir.tn_parent) { - struct tmpfs_node *parent; - - if (n == fnode) { - TMPFS_NODE_UNLOCK(n); - TMPFS_UNLOCK(tmp); - error = EINVAL; - if (newname != NULL) - free(newname, M_TMPFSNAME); - goto out_locked; - } - parent = n->tn_dir.tn_parent; - TMPFS_NODE_UNLOCK(n); - if (parent == NULL) { - n = NULL; - break; - } - TMPFS_NODE_LOCK(parent); - if (parent->tn_dir.tn_parent == NULL) { - TMPFS_NODE_UNLOCK(parent); - n = NULL; - break; - } - n = parent; - } - TMPFS_UNLOCK(tmp); - if (n == NULL) { - error = EINVAL; - if (newname != NULL) - free(newname, M_TMPFSNAME); - goto out_locked; - } - TMPFS_NODE_UNLOCK(n); - - /* Adjust the parent pointer. */ - TMPFS_VALIDATE_DIR(fnode); - TMPFS_NODE_LOCK(de->td_node); - de->td_node->tn_dir.tn_parent = tdnode; - TMPFS_NODE_UNLOCK(de->td_node); - - /* - * As a result of changing the target of the '..' - * entry, the link count of the source and target - * directories has to be adjusted. - */ - TMPFS_NODE_LOCK(tdnode); - TMPFS_ASSERT_LOCKED(tdnode); - tdnode->tn_links++; - TMPFS_NODE_UNLOCK(tdnode); - - TMPFS_NODE_LOCK(fdnode); - TMPFS_ASSERT_LOCKED(fdnode); - fdnode->tn_links--; - TMPFS_NODE_UNLOCK(fdnode); + tmpfs_rename_set_parent(fdnode, fnode, de, tdnode); } } From nobody Sat Jul 18 00:28:14 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 4h270v64sZz6ll0S for ; Sat, 18 Jul 2026 00:28:15 +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 4h270v1740z3QPK for ; Sat, 18 Jul 2026 00:28:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784334495; 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=JN7nmaDxT6EEHg8rtZSFbFv5fEY9WshAp9yjRcsnwiY=; b=P3dQZv2M5pofLmP1yAigcW+gcSGhXLIYbZqrRTRE8EoRY51oXEQfrdFV14toi89aMFUcef PhcNYDIpXstVMA7EjhAvNmDBBZ6EXFsLMnbW5oRnj1w/up5P1/FHMo8edn88+0AIm7Q47m XxGOq2rms7ZyqtOTJJO0AgXmoCj1qCK6lecxmRL+B3ZLu95Q1VYUDdVKhqeLMH/bFA4Atn k/4qk0QAC8XUeCOFa77h5UZA/CEYTt5geobyqyqgBRqmnidtH6CrIoOxma0GUIjBnTcxVS GJFsEoASUcsZIMb/K+n+hvSlLzWIOCqmlVFMzIjQf4uEX56HPmu9JMn3Y0W+3Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784334495; a=rsa-sha256; cv=none; b=bj2kdOfozhLR7Q93coIOqcjLZr1BkOxMDCScy63sd3t3b1GNMeorSVJHytxdZjreAbHAAQ 4siIdrmrefa3Zv/ySR2ltvmJ6ooFJMPmCi4dWuhUEFcP/k+DajGIpx2nPZk+3hJZPgMQ03 xw0YK7K4oyOhn4HMCmzkdJWgW1F/WPWSmW229LqLdG/MUSXoAI/JAhwJCTefPP8g5dEOt4 Zhc17mfouTfvO4p09YkoR8e8mP6NvQ2UygRL2hC+X/5zYywDHnej8egJ9TkblTgpHL6B1a y8ygFRfhkByQ5nfBx1rrh9oleluec8UDZaHjHX0bbGiM5LByEobYWhBPU7gHaA== 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=1784334495; 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=JN7nmaDxT6EEHg8rtZSFbFv5fEY9WshAp9yjRcsnwiY=; b=w4LRNkZF55MLRRYGjbtT6nbNt9cmczohD/gWhiLnttSw2BLjcZ0jNXV/K9dXvbJVOEjd5A gTWnAZ9+KclINfnDQJsNE2sLT/Zo0ZXmk91Zo52fW1Hm/1Vni538dRaznCaJJ3GivD+gBU w+W5P57BjJSy7R/HTOpW0xqWvtYfWNrtzMxKXuFjvV1gNE6FxdZz018c7BIqCelZe9xUPf 5w3a2ZW34R/JyMdTd26yhYXdutf7Dn8ihQVXRg+lcykZv9RwEzdjmIvhu5EOPN2VmnF/Ry Ktx/g4B67aZ/w58wwK34DA5ecOB7G9p7ADoR3twWDyq68w93wonuhwj8xKEAGg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h270t4mK1z199T for ; Sat, 18 Jul 2026 00:28:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3d4f7 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 18 Jul 2026 00:28:14 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 672345cd24e1 - stable/15 - tmpfs: implement AT_RENAME_EXCHANGE 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: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 672345cd24e131f171df469d902165963dab4557 Auto-Submitted: auto-generated Date: Sat, 18 Jul 2026 00:28:14 +0000 Message-Id: <6a5ac89e.3d4f7.72ba1241@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=672345cd24e131f171df469d902165963dab4557 commit 672345cd24e131f171df469d902165963dab4557 Author: Konstantin Belousov AuthorDate: 2026-06-18 18:40:40 +0000 Commit: Konstantin Belousov CommitDate: 2026-07-18 00:27:25 +0000 tmpfs: implement AT_RENAME_EXCHANGE (cherry picked from commit 7e06c33151e7664f6d664ee282d8da1985ce94aa) --- sys/fs/tmpfs/tmpfs_vnops.c | 90 ++++++++++++++++++++++++++++++++++------------ 1 file changed, 67 insertions(+), 23 deletions(-) diff --git a/sys/fs/tmpfs/tmpfs_vnops.c b/sys/fs/tmpfs/tmpfs_vnops.c index 9239d146ee9d..61fedc194db5 100644 --- a/sys/fs/tmpfs/tmpfs_vnops.c +++ b/sys/fs/tmpfs/tmpfs_vnops.c @@ -1055,7 +1055,7 @@ tmpfs_rename(struct vop_rename_args *v) struct vnode *tvp = v->a_tvp; struct componentname *tcnp = v->a_tcnp; char *newname; - struct tmpfs_dirent *de; + struct tmpfs_dirent *de, *tde; struct tmpfs_mount *tmp; struct tmpfs_node *fdnode; struct tmpfs_node *fnode; @@ -1063,8 +1063,11 @@ tmpfs_rename(struct vop_rename_args *v) struct tmpfs_node *tdnode; int error; bool want_seqc_end; + bool exchange; want_seqc_end = false; + newname = NULL; + error = 0; /* * Disallow cross-device renames. @@ -1076,16 +1079,15 @@ tmpfs_rename(struct vop_rename_args *v) goto out; } - if ((v->a_flags & ~(AT_RENAME_NOREPLACE)) != 0) { + if ((v->a_flags & ~(AT_RENAME_NOREPLACE | AT_RENAME_EXCHANGE)) != 0) { error = EOPNOTSUPP; goto out; } /* If source and target are the same file, there is nothing to do. */ - if (fvp == tvp) { - error = 0; + if (fvp == tvp) goto out; - } + exchange = (v->a_flags & AT_RENAME_EXCHANGE) != 0; /* * If we need to move the directory between entries, lock the @@ -1138,6 +1140,8 @@ tmpfs_rename(struct vop_rename_args *v) fdnode = VP_TO_TMPFS_DIR(fdvp); fnode = VP_TO_TMPFS_NODE(fvp); de = tmpfs_dir_lookup(fdnode, fnode, fcnp); + if (exchange) + tde = tmpfs_dir_lookup(tdnode, tnode, tcnp); /* * Entry can disappear before we lock fdvp. @@ -1151,6 +1155,13 @@ tmpfs_rename(struct vop_rename_args *v) goto out_locked; } MPASS(de->td_node == fnode); + if (exchange) { + if (tde == NULL) { + error = ENOENT; + goto out_locked; + } + MPASS(tde->td_node == tnode); + } /* * If re-naming a directory to another preexisting directory @@ -1168,22 +1179,27 @@ tmpfs_rename(struct vop_rename_args *v) goto out_locked; } - if (fnode->tn_type == VDIR && tnode->tn_type == VDIR) { - if (tnode->tn_size != 0 && - ((tcnp->cn_flags & IGNOREWHITEOUT) == 0 || - tnode->tn_size > tnode->tn_dir.tn_wht_size)) { - error = ENOTEMPTY; + if (!exchange) { + if (fnode->tn_type == VDIR && tnode->tn_type == VDIR) { + if (tnode->tn_size != 0 && + ((tcnp->cn_flags & IGNOREWHITEOUT) == 0 || + tnode->tn_size > + tnode->tn_dir.tn_wht_size)) { + error = ENOTEMPTY; + goto out_locked; + } + } else if (fnode->tn_type == VDIR && + tnode->tn_type != VDIR) { + error = ENOTDIR; goto out_locked; + } else if (fnode->tn_type != VDIR && + tnode->tn_type == VDIR) { + error = EISDIR; + goto out_locked; + } else { + MPASS(fnode->tn_type != VDIR && + tnode->tn_type != VDIR); } - } else if (fnode->tn_type == VDIR && tnode->tn_type != VDIR) { - error = ENOTDIR; - goto out_locked; - } else if (fnode->tn_type != VDIR && tnode->tn_type == VDIR) { - error = EISDIR; - goto out_locked; - } else { - MPASS(fnode->tn_type != VDIR && - tnode->tn_type != VDIR); } } @@ -1197,11 +1213,9 @@ tmpfs_rename(struct vop_rename_args *v) * Ensure that we have enough memory to hold the new name, if it * has to be changed. */ - if (fcnp->cn_namelen != tcnp->cn_namelen || - bcmp(fcnp->cn_nameptr, tcnp->cn_nameptr, fcnp->cn_namelen) != 0) { + if (!exchange && (fcnp->cn_namelen != tcnp->cn_namelen || + bcmp(fcnp->cn_nameptr, tcnp->cn_nameptr, fcnp->cn_namelen) != 0)) newname = malloc(tcnp->cn_namelen, M_TMPFSNAME, M_WAITOK); - } else - newname = NULL; /* * If the node is being moved to another directory, we have to do @@ -1219,8 +1233,38 @@ tmpfs_rename(struct vop_rename_args *v) free(newname, M_TMPFSNAME); goto out_locked; } + } + if (exchange && tnode->tn_type == VDIR) { + MPASS(newname == NULL); + error = tmpfs_rename_check_parent(tmp, tdnode, tvp, + tnode, tde, fdnode, fcnp->cn_cred); + if (error != 0) + goto out_locked; + } + if (fnode->tn_type == VDIR) tmpfs_rename_set_parent(fdnode, fnode, de, tdnode); + if (exchange && tnode->tn_type == VDIR) + tmpfs_rename_set_parent(tdnode, tnode, tde, fdnode); + } + if (exchange) { + de->td_node = tnode; + tde->td_node = fnode; + if (tmpfs_use_nc(fvp)) { + cache_purge(fvp); + cache_purge(tvp); + cache_enter(tdvp, fvp, tcnp); + cache_enter(fdvp, tvp, fcnp); + } + fdnode->tn_status |= TMPFS_NODE_MODIFIED | TMPFS_NODE_CHANGED; + fdnode->tn_accessed = true; + tmpfs_update(fdvp); + if (fdvp != tdvp) { + tdnode->tn_status |= TMPFS_NODE_MODIFIED | + TMPFS_NODE_CHANGED; + tdnode->tn_accessed = true; + tmpfs_update(tdvp); } + goto out_locked; } /* From nobody Sat Jul 18 01:16:54 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 4h28530mGwz6lq36 for ; Sat, 18 Jul 2026 01:16:55 +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 4h285305TPz3XZh for ; Sat, 18 Jul 2026 01:16:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784337415; 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=BmQxGYwEjgs4dLhrLXB4BLq6ut3KUubnP01we73G7dM=; b=HSvMYr6oSe/qj4CItFFXJhQagzo7kTYoZNXghRuLQTC9FxeD5CetmK+1WEGOjMjJMNCryq SzHUEYbOrjwgaQCpRRXMj6TILSF0rTE6ENX4oDz/czbeQ1uGS+St8rHUcVrmTWHPHiZOWh lnrWzhZ+V4dlUUu37DSkggk8pPudXU4NojKVReeKT2ETM/vjD1Ir72kv5JhWVQLSucyf9g HGu1a4pgnXoPTTzLeDzMYE/a90v6uWOchcNw5lR/eTVsHbOMVj6jHQbOOgs9v+dwbghLJD xWOw77T7PsKQ2Udu2B/69EmI2wnYCG9rivwDyScbqfCuOvU/HMyVD+Cq42J7Mg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784337415; a=rsa-sha256; cv=none; b=E5/XmYqTZR7VzHkAl0b/Ss9Lxv8Sa77VJ7Fe8ysPQ1wuH5WA02EF7mVgnx7uW3PVaY0n1H GCz+DWExOmpEcrzKo0zwXXNFcWEbwxyWXjuXDCgbMtr+L0b7i4ysRnPsHElWNd2qkhUBhi 4+plnL431toeKHVwQXX9vs/hkSc3KLtzIO7xjJynFkKwb2e+CE205pVtt9BSjng+Ecvoi0 U5wxarw5mJGYUB09LO4vGWZKgQ6InYsPY36Z0iHaC/pYPggSZt2WVkwWjZlZ5do/6gsDq4 3+2HiagaMyTdeZgc59EC2Iom2ZsLhdZANOsIpniOu+k0H0ab92p+SHGXMftu/g== 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=1784337415; 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=BmQxGYwEjgs4dLhrLXB4BLq6ut3KUubnP01we73G7dM=; b=omkirjvg0690sEe6PHc+CaS5+30NikFpfRsx6aH2wXQfPWYbRPHwrHT0+kslzQ7hRMGPY8 f3PB2RNILIY9zvGdEdtJjrQY7XLbG5YBLpsbGA/x4Rq1ycx16TpumTt/mnjGtoKghoTOff l04uxze2SFjjWXw40BIrlNErX8EUh36NdOIDNizq5wwsFg3YvrrtV3eD7ZHtAiBS0xBw+y Ay3JsF8M7q2ZaX+nFTrdjvpUHw/14de4LkPrKATqk5TAmq0jB8brS5lYVmLtsRj+SHBfyb Eo+L+1Y6Ivk7/4fG4x1rWqr/TMkYBhe2Ny/n24AOa3u8kUHcsituNh1SjJ/CfA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h28525jF7z1BM5 for ; Sat, 18 Jul 2026 01:16:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 440a0 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 18 Jul 2026 01:16:54 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Rick Macklem Subject: git: 299bbb762db7 - stable/15 - nfs_clstate.c: Fix handling of delegation upgrades 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: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 299bbb762db7c6971ad68de412830dee8c0bae0a Auto-Submitted: auto-generated Date: Sat, 18 Jul 2026 01:16:54 +0000 Message-Id: <6a5ad406.440a0.1311ae8a@gitrepo.freebsd.org> The branch stable/15 has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=299bbb762db7c6971ad68de412830dee8c0bae0a commit 299bbb762db7c6971ad68de412830dee8c0bae0a Author: Rick Macklem AuthorDate: 2026-07-04 22:00:02 +0000 Commit: Rick Macklem CommitDate: 2026-07-18 01:15:17 +0000 nfs_clstate.c: Fix handling of delegation upgrades Commit 016570c4463d modified the client to handle the upgrade of a read delegation to a write delegation, where the server provides the same delegation stateid to the client. However, it failed to check if the delegation structure was currently in use. Without this patch, if the structure was in use, a use after free could occur. This patch handles the "in use" case by copying the necessary fields into the current/old structure and free's the new one instead of the old one that is "in use". PR: 296224 (cherry picked from commit fe6677e7f440d1aa52de036639efc55047ab9a2b) --- sys/fs/nfs/nfsclstate.h | 6 ++++-- sys/fs/nfsclient/nfs_clstate.c | 45 +++++++++++++++++++++++++++++++++--------- 2 files changed, 40 insertions(+), 11 deletions(-) diff --git a/sys/fs/nfs/nfsclstate.h b/sys/fs/nfs/nfsclstate.h index 92669ff8d1aa..714187e8a96b 100644 --- a/sys/fs/nfs/nfsclstate.h +++ b/sys/fs/nfs/nfsclstate.h @@ -162,17 +162,19 @@ struct nfscldeleg { struct nfsclownerhead nfsdl_owner; /* locally issued state */ struct nfscllockownerhead nfsdl_lock; nfsv4stateid_t nfsdl_stateid; - struct acl_entry nfsdl_ace; /* Delegation ace */ struct nfsclclient *nfsdl_clp; struct nfsv4lock nfsdl_rwlock; /* for active I/O ops */ +#define nfsdl_startcopy nfsdl_ace + struct acl_entry nfsdl_ace; /* Delegation ace */ struct nfscred nfsdl_cred; /* Cred. used for Open */ time_t nfsdl_timestamp; /* used for stale cleanup */ u_int64_t nfsdl_sizelimit; /* Limit for file growth */ u_int64_t nfsdl_size; /* saved copy of file size */ u_int64_t nfsdl_change; /* and change attribute */ struct timespec nfsdl_modtime; /* local modify time */ - u_int16_t nfsdl_fhlen; u_int8_t nfsdl_flags; +#define nfsdl_endcopy nfsdl_fhlen + u_int16_t nfsdl_fhlen; u_int8_t nfsdl_fh[1]; /* must be last */ }; diff --git a/sys/fs/nfsclient/nfs_clstate.c b/sys/fs/nfsclient/nfs_clstate.c index 93e543197265..5c2d281cf35a 100644 --- a/sys/fs/nfsclient/nfs_clstate.c +++ b/sys/fs/nfsclient/nfs_clstate.c @@ -467,8 +467,11 @@ nfscl_deleg(mount_t mp, struct nfsclclient *clp, u_int8_t *nfhp, } else { /* * A delegation already exists. If the new one is a Write - * delegation and the old one a Read delegation, return the - * Read delegation. Otherwise, return the new delegation. + * delegation and the old one a Read delegation, upgrade + * if possible. The upgrade can be done if either: + * - The stateid is the same (true for the FreeBSD nfs server). + * - The current delegation is not locked. + * Otherwise, return the new delegation. */ if (dp != NULL) { if (NFSBCMP(dp->nfsdl_stateid.other, @@ -476,13 +479,37 @@ nfscl_deleg(mount_t mp, struct nfsclclient *clp, u_int8_t *nfhp, trydelegret = true; if ((dp->nfsdl_flags & NFSCLDL_WRITE) != 0 && (tdp->nfsdl_flags & NFSCLDL_READ) != 0) { - TAILQ_REMOVE(&clp->nfsc_deleg, tdp, nfsdl_list); - LIST_REMOVE(tdp, nfsdl_hash); - TAILQ_INSERT_HEAD(&clp->nfsc_deleg, dp, - nfsdl_list); - LIST_INSERT_HEAD(NFSCLDELEGHASH(clp, nfhp, - fhlen), dp, nfsdl_hash); - dp->nfsdl_timestamp = NFSD_MONOSEC + 120; + if (tdp->nfsdl_rwlock.nfslock_usecnt == 0 && + tdp->nfsdl_rwlock.nfslock_lock == 0) { + TAILQ_REMOVE(&clp->nfsc_deleg, tdp, + nfsdl_list); + LIST_REMOVE(tdp, nfsdl_hash); + TAILQ_INSERT_HEAD(&clp->nfsc_deleg, dp, + nfsdl_list); + LIST_INSERT_HEAD(NFSCLDELEGHASH(clp, + nfhp, fhlen), dp, nfsdl_hash); + dp->nfsdl_timestamp = NFSD_MONOSEC + + 120; + } else if (!trydelegret) { + /* + * For this case, the fields in + * struct nfscldeleg that change for a + * write delegation must be copied. + * This way, the delegation structure + * does not get free'd prematurely. + */ + memcpy(&tdp->nfsdl_startcopy, + &dp->nfsdl_startcopy, + __rangeof(struct nfscldeleg, + nfsdl_startcopy, nfsdl_endcopy)); + TAILQ_REMOVE(&clp->nfsc_deleg, tdp, + nfsdl_list); + TAILQ_INSERT_HEAD(&clp->nfsc_deleg, tdp, + nfsdl_list); + tdp->nfsdl_timestamp = NFSD_MONOSEC + + 120; + tdp = dp; /* Free the new one. */ + } } else { tdp = dp; /* Return this one. */ } From nobody Sat Jul 18 01:38:19 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 4h28Yl33xmz6lrc9 for ; Sat, 18 Jul 2026 01:38:19 +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 4h28Yl2KdFz3ZRV for ; Sat, 18 Jul 2026 01:38:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1784338699; 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=Tc2omBbUcJFj1+lUGcCudkTHyc72bUCFe21pu+egDlQ=; b=k6mXSOU5AiGhJGRfmgWxEqFPGzRhMUgkFGKrSBWj3yReIVPcfIsuliBSeLkfnp8xjXxHv1 x83t8wEkIWuQaZX/+kZyOD8SliBgJV5r/vWwrhw9KTSoMA0PWsPVJ7tCGJD8AtBfJ7MUO5 oMlePMwiX7X2gc0nVQ9XN37BrO7FfdfM+o+wRT5m3dtiJl0vOcaCfIwFKQ01F2xCS3Fa88 UowasKENSHUkj2N1D+YYHhW8G2PV/Kfz9vTJb4sHELINCggXR564fer6rXHsd+k/kRiSSD YO4Zg3wGdQJu/dx7BUcykNaZkcJUkb9u/9VbjoNRCeTog4Ah4HDL97IEysek/g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1784338699; a=rsa-sha256; cv=none; b=xGKmtzuObs0RgoHzpq1zV9UAQP7b0YlRv1OiePFbnWXoTgFQLPAjrbot1RVJcYl7BakHKd GC6MuFoT8jpRzGZS9JE6vsTRdTlVXzVhLve8kMqRQDaSCJP8ujJqCp2ArBztx3qyaU9fdh OwY0ETuiRp1YIHPDN0qcfMgeNVbuAR0/gWbU95Lb9ebDAcmn6RulZwPJfL1Apjs4TrpUW7 HAXRynXXEd51lUGZNny4yQ7a3+4VU5B/EtA5TlsdwInqlmTgLZYLHCZ2I5z12X40QFPTOW rVc/YhDW4yoLIHQcXAwcat/3gs4rae6lEAd5qX0wdYgJwTuV7lDlXvavLo86AA== 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=1784338699; 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=Tc2omBbUcJFj1+lUGcCudkTHyc72bUCFe21pu+egDlQ=; b=b23V4lldCBxigR2Ki75Q7UrMIPre6xAVLtiKn9zD31pRwFVinAtEgV7vqJ2yaKjofYd+Cw yzuy4fz29qbOlhOgYJJs2NpyyyrIZnUB5O++CeocCalWWnuQXs03KE1psqC9LiuENr85YC f6Is40aRd+Wit2f4KrOcwtDzJ3wlexUjWbG4amX88z0XDtVQI0H2gjgaTcQyIW2OnNPEhr dn0l2l0IBOTdkjO+Jxstr8EOfQaa8yi2MNo1bJ54wxx7QwEAX8PrIn4lJ32lhKB6c0v7Lr 7craHbC+akf7u/vBT3oXSxQAsp9877yC8ZaLZM1vhPshClb03BQhbrXM1AKUBw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4h28Yl17V6z1C0R for ; Sat, 18 Jul 2026 01:38:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 46896 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 18 Jul 2026 01:38:19 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Rick Macklem Subject: git: a51fdce1b28a - stable/14 - nfs_clstate.c: Fix handling of delegation upgrades 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: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: a51fdce1b28aba5e857f0d4a27d2e2e59dd0ef7e Auto-Submitted: auto-generated Date: Sat, 18 Jul 2026 01:38:19 +0000 Message-Id: <6a5ad90b.46896.208522f7@gitrepo.freebsd.org> The branch stable/14 has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=a51fdce1b28aba5e857f0d4a27d2e2e59dd0ef7e commit a51fdce1b28aba5e857f0d4a27d2e2e59dd0ef7e Author: Rick Macklem AuthorDate: 2026-07-04 22:00:02 +0000 Commit: Rick Macklem CommitDate: 2026-07-18 01:36:06 +0000 nfs_clstate.c: Fix handling of delegation upgrades Commit 016570c4463d modified the client to handle the upgrade of a read delegation to a write delegation, where the server provides the same delegation stateid to the client. However, it failed to check if the delegation structure was currently in use. Without this patch, if the structure was in use, a use after free could occur. This patch handles the "in use" case by copying the necessary fields into the current/old structure and free's the new one instead of the old one that is "in use". PR: 296224 (cherry picked from commit fe6677e7f440d1aa52de036639efc55047ab9a2b) --- sys/fs/nfs/nfsclstate.h | 6 ++++-- sys/fs/nfsclient/nfs_clstate.c | 45 +++++++++++++++++++++++++++++++++--------- 2 files changed, 40 insertions(+), 11 deletions(-) diff --git a/sys/fs/nfs/nfsclstate.h b/sys/fs/nfs/nfsclstate.h index 92669ff8d1aa..714187e8a96b 100644 --- a/sys/fs/nfs/nfsclstate.h +++ b/sys/fs/nfs/nfsclstate.h @@ -162,17 +162,19 @@ struct nfscldeleg { struct nfsclownerhead nfsdl_owner; /* locally issued state */ struct nfscllockownerhead nfsdl_lock; nfsv4stateid_t nfsdl_stateid; - struct acl_entry nfsdl_ace; /* Delegation ace */ struct nfsclclient *nfsdl_clp; struct nfsv4lock nfsdl_rwlock; /* for active I/O ops */ +#define nfsdl_startcopy nfsdl_ace + struct acl_entry nfsdl_ace; /* Delegation ace */ struct nfscred nfsdl_cred; /* Cred. used for Open */ time_t nfsdl_timestamp; /* used for stale cleanup */ u_int64_t nfsdl_sizelimit; /* Limit for file growth */ u_int64_t nfsdl_size; /* saved copy of file size */ u_int64_t nfsdl_change; /* and change attribute */ struct timespec nfsdl_modtime; /* local modify time */ - u_int16_t nfsdl_fhlen; u_int8_t nfsdl_flags; +#define nfsdl_endcopy nfsdl_fhlen + u_int16_t nfsdl_fhlen; u_int8_t nfsdl_fh[1]; /* must be last */ }; diff --git a/sys/fs/nfsclient/nfs_clstate.c b/sys/fs/nfsclient/nfs_clstate.c index 624b782baf6e..602f2d70ed8b 100644 --- a/sys/fs/nfsclient/nfs_clstate.c +++ b/sys/fs/nfsclient/nfs_clstate.c @@ -466,8 +466,11 @@ nfscl_deleg(mount_t mp, struct nfsclclient *clp, u_int8_t *nfhp, } else { /* * A delegation already exists. If the new one is a Write - * delegation and the old one a Read delegation, return the - * Read delegation. Otherwise, return the new delegation. + * delegation and the old one a Read delegation, upgrade + * if possible. The upgrade can be done if either: + * - The stateid is the same (true for the FreeBSD nfs server). + * - The current delegation is not locked. + * Otherwise, return the new delegation. */ if (dp != NULL) { if (NFSBCMP(dp->nfsdl_stateid.other, @@ -475,14 +478,38 @@ nfscl_deleg(mount_t mp, struct nfsclclient *clp, u_int8_t *nfhp, trydelegret = true; if ((dp->nfsdl_flags & NFSCLDL_WRITE) != 0 && (tdp->nfsdl_flags & NFSCLDL_READ) != 0) { - TAILQ_REMOVE(&clp->nfsc_deleg, tdp, nfsdl_list); - LIST_REMOVE(tdp, nfsdl_hash); *dpp = NULL; - TAILQ_INSERT_HEAD(&clp->nfsc_deleg, dp, - nfsdl_list); - LIST_INSERT_HEAD(NFSCLDELEGHASH(clp, nfhp, - fhlen), dp, nfsdl_hash); - dp->nfsdl_timestamp = NFSD_MONOSEC + 120; + if (tdp->nfsdl_rwlock.nfslock_usecnt == 0 && + tdp->nfsdl_rwlock.nfslock_lock == 0) { + TAILQ_REMOVE(&clp->nfsc_deleg, tdp, + nfsdl_list); + LIST_REMOVE(tdp, nfsdl_hash); + TAILQ_INSERT_HEAD(&clp->nfsc_deleg, dp, + nfsdl_list); + LIST_INSERT_HEAD(NFSCLDELEGHASH(clp, + nfhp, fhlen), dp, nfsdl_hash); + dp->nfsdl_timestamp = NFSD_MONOSEC + + 120; + } else if (!trydelegret) { + /* + * For this case, the fields in + * struct nfscldeleg that change for a + * write delegation must be copied. + * This way, the delegation structure + * does not get free'd prematurely. + */ + memcpy(&tdp->nfsdl_startcopy, + &dp->nfsdl_startcopy, + __rangeof(struct nfscldeleg, + nfsdl_startcopy, nfsdl_endcopy)); + TAILQ_REMOVE(&clp->nfsc_deleg, tdp, + nfsdl_list); + TAILQ_INSERT_HEAD(&clp->nfsc_deleg, tdp, + nfsdl_list); + tdp->nfsdl_timestamp = NFSD_MONOSEC + + 120; + tdp = dp; /* Free the new one. */ + } } else { *dpp = NULL; tdp = dp; /* Return this one. */