From nobody Mon Dec 8 00:50:09 2025 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 4dPk0d2rCtz6Jc1S for ; Mon, 08 Dec 2025 00:50: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dPk0d1yPnz3DWr for ; Mon, 08 Dec 2025 00:50:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765155009; 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=eLE/OZiekfpz+pznueSQXI76+BgQkgrFxqiSB5ZDLDU=; b=J/iacFErbDZOvnkn7JLnCBVgF6z7ZnL+AYGqJtkVLnZtMx6VoO1l1AKAR/HkgEY3x1MYJn YbxYVJ1kNGSkV7lNB55mj5lKTa6PJrZym+Jjn5k3qH5RX0OaljPQCPWmgxCavgDIRHXNgu 61QwiSBJAH85f2ijLmawUNLF43hzLidZjIJgKujDKHGUF9TbrAMVnrxJrO10DB/c3+zb9F 41hmpbmfxHAklXOmyMdZj2dOsZfkrp0oZI1+p77tLEdMPP4wV7iZlenDjb5YSd2fut1hFd hd3QXwEL7vGc2ZYf11P1AMJb+mCSD/+CaLs0WTbg1NHEkYaUac+0CE1F+yKLRQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765155009; 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=eLE/OZiekfpz+pznueSQXI76+BgQkgrFxqiSB5ZDLDU=; b=LR2u60gIzjL7+RjZ/dC3AGIB9Q2PCD0/QWrpNK331NAzv6Q0OF67P4RQqhOJ0X9nT4awI/ 82XByEAsHLjp40EDaWZB15eFZPie53fPWymzTNokEfx0qKiIm2ijOKmd+xT/UCeoLSdrFZ wBui3PMcRYKCJT3+91LkbgGfQA3Bk2V94hBN7a9RVzcPETDGgz4gTiQFRSPNakQQ6BDHh7 cYiib6iJc7WGbvb0Kd/Nz55RKazzguQoZ78yG35Y1wENhmggI/lOwCW2JD8B0Q1CLojRQF L+C1qKn1a4oyi0EQyh2zrrptx4td3V1KjCCyCaX0mqmsM/5QC/MLRz5QN9da8g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765155009; a=rsa-sha256; cv=none; b=TGNqgBsLRVs0v9v3ellgTwgQudHoLuEpL5yl3ODCwZCqSGlNiOIgQl/NTOrnfSBRVpKW3J kWkxSKy6rkt5UezNRPg4SwY8A1QjQndfaqGBWM3Oonb/uPeUunWp8yjJR4Blp9LICohomq vOVIIKcadfHY9HwVwnJ0DPRhtf54Ir0Lyo+i9R0WnIF0eg9lk/awoV9z8V6y40fisCDvrZ qTXWUdwKkZCRMJ+MoLw1vFUCle/LfhkaCgIN5SBIvab0TIikF27sNyGZvpcuJD7NyUECBG bRQ8QnFBnQYjZwfKqZNL3d3bpPVlkOW81oOdAHPN2p2w1VpsOj1EtNO7kA+Clw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dPk0d1Npnz14vr for ; Mon, 08 Dec 2025 00:50:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 255e7 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 00:50:09 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: 58c80b2e79ce - stable/15 - release: Include comms/usbmuxd to DVD to ensure ipheth(4) works 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 58c80b2e79ce3b40a933507234f29d4200ab8463 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 00:50:09 +0000 Message-Id: <693620c1.255e7.234a4599@gitrepo.freebsd.org> The branch stable/15 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=58c80b2e79ce3b40a933507234f29d4200ab8463 commit 58c80b2e79ce3b40a933507234f29d4200ab8463 Author: Li-Wen Hsu AuthorDate: 2025-12-05 23:57:48 +0000 Commit: Li-Wen Hsu CommitDate: 2025-12-08 00:49:09 +0000 release: Include comms/usbmuxd to DVD to ensure ipheth(4) works PR: 291370 Reviewed by: emaste, aokblast, dch MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54074 (cherry picked from commit 90eda629964cbe4c2472aa3f1b8a427e60e78834) --- release/scripts/pkg-stage.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/release/scripts/pkg-stage.sh b/release/scripts/pkg-stage.sh index c575f2d32bae..b64fe5e5f1e5 100755 --- a/release/scripts/pkg-stage.sh +++ b/release/scripts/pkg-stage.sh @@ -14,6 +14,7 @@ export ROOTDIR="$PWD/dvd" export PORTSDIR="${PORTSDIR:-/usr/ports}" _DVD_PACKAGES=" +comms/usbmuxd devel/git@lite editors/emacs@nox editors/vim From nobody Mon Dec 8 00:50:41 2025 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 4dPk1G5K08z6Jc96 for ; Mon, 08 Dec 2025 00:50:42 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dPk1G0vcPz3F9n for ; Mon, 08 Dec 2025 00:50:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765155042; 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=G7LFnBGL9Y4Xvgmj0vW+uq9n1bJuxGCm72EA5oJaezY=; b=OKohWp9lhbF+GfbfOntEt/FkjQ23hZbUGWgTbzbw25FZLxOaDhendgX2NDQWBElq08Nwwj lnYgTSwCZ5CbSD7ihnFu2ZxSSHf6VD381vHs7cOJAg+niYUQYe27nOJ0Y+7YNkp7KUugn3 lx2qcwIL84i6JSZRSfGakvs81YH3lRdnIQxHk14uANu9WxxEJpi5EZl65usY6C0Uy9lG9J 0oFEhOtDaWnlRuc5fxDdeppOeE+g40h9PtMeFim+bt7NN3G3X46KRikAnte92ghaJGNhOD x3M48VxrV2GCsaPodtk/n8rCgmBDveOH08jM3vMSdtAY3GfS7jhp41lrt6sdgQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765155042; 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=G7LFnBGL9Y4Xvgmj0vW+uq9n1bJuxGCm72EA5oJaezY=; b=Qj+8Km14p68cuvWNXwclSGRV1t7voJ3Tg9tPtgTtn4+T3xa57hz9PSlGVx/Q7jBakmOine eqQc2pT787g1xIoGLt4SLmqRN7/wwru4bVdVZfxm5/N8MLfqEcmcBA4itTsEqn0I60Rz2D rEKiDNTNb/s5g5fjMMghvuBkP8pzWiL22AQgpbeHnGL0SqywCnMcb29NgRfXnTbBqus/rd sfQbNWzF0TMwY1h4wey1o2R5UpUrXYSbY4dJvovf7O9Frjvvoi8WQKtoVLAfMa1xQx5dnP naLOuMExloXTe1ol3NTgAYR3ZtGCuag8ipZP+qP7ZKuOoS9TgLNHdPYexAt6Zg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765155042; a=rsa-sha256; cv=none; b=JXFO20CkRnSpxt3ZPhEvvepi6pLIvfwLYGAXTvX0mk4Slx1u3uuDUywWCKpimdpfwaarFW TeVF1IhRAl4GILAs/CtbPQNya5gnYcoc5J6BbyAkMPu5n0dVgpgnqCbZm5qQLXkwGbQGAb ltSI/VAwj01mKwAyIweptw1Eqkj8wRchRiKVU0YQZOUZHFTQ9I5tlmCHkeUl2mea4aPF6o rZ3m2fJYKf/z4bx+rYftj2Ppawv+4gG6W5k74wL5neY+KpX4BVkVyubDVgJzXF44dzJ0CD 1tGU5StteqZ17Qgo3HoOnBe7luw3IvKzeGCFDtcPz+mItVjj7m73LcWEi/HasA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dPk1F71xxz157S for ; Mon, 08 Dec 2025 00:50:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 263f1 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 00:50:41 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Li-Wen Hsu Subject: git: 9b1cd02f363f - stable/14 - release: Include comms/usbmuxd to DVD to ensure ipheth(4) works 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 9b1cd02f363f4b9c1ebcafef41b99c0898bb8d7c Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 00:50:41 +0000 Message-Id: <693620e1.263f1.40e8b831@gitrepo.freebsd.org> The branch stable/14 has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=9b1cd02f363f4b9c1ebcafef41b99c0898bb8d7c commit 9b1cd02f363f4b9c1ebcafef41b99c0898bb8d7c Author: Li-Wen Hsu AuthorDate: 2025-12-05 23:57:48 +0000 Commit: Li-Wen Hsu CommitDate: 2025-12-08 00:50:15 +0000 release: Include comms/usbmuxd to DVD to ensure ipheth(4) works PR: 291370 Reviewed by: emaste, aokblast, dch MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54074 (cherry picked from commit 90eda629964cbe4c2472aa3f1b8a427e60e78834) --- release/scripts/pkg-stage.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/release/scripts/pkg-stage.sh b/release/scripts/pkg-stage.sh index cff3b9edcb16..2c70b59be241 100755 --- a/release/scripts/pkg-stage.sh +++ b/release/scripts/pkg-stage.sh @@ -13,6 +13,7 @@ export PKGCMD="/usr/sbin/pkg -d --rootdir ${ROOTDIR}" export PORTSDIR="${PORTSDIR:-/usr/ports}" _DVD_PACKAGES=" +comms/usbmuxd devel/git@lite misc/freebsd-doc-all net/mpd5 From nobody Mon Dec 8 14:17:39 2025 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 4dQ3wN3tqQz6JsM8 for ; Mon, 08 Dec 2025 14:17:40 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ3wM74S0z3q92 for ; Mon, 08 Dec 2025 14:17:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203460; 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=TdYGVgAQNFTf9sJy7rrQdQwSw52wEJIVsosoHYSBSkM=; b=bHPGa7jcWMTRh8VfEgTiNpxKkEDQh3MpZ298MYucc5pZ19gjHsImAiXlrROd/1B1e//6X6 UKDrnC3eHUaBhgtqeBHYq3vuOq/mzZFwIpVpi50p+WcU/h8AnX4VeGdkS0KbeHFmcI9Uwn /JUna4mxB6SmDXxh1/8Clmlnod8OI1/KNa1UQabXPCx4cAwcdwi1EoVRj51xb6msGgydLx ioHsx8ccagf2XMZ2sPmMc6G/YDmxmhqtMOgifV6NSedeXXAAh1ABfdltksy19lQ6jFdLko oFNcGPsSvTC9LMvrpqzp0JSYiPWhHdeMJAgP+oPR8KPm+z7I+p5vqgKxRdemqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203460; 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=TdYGVgAQNFTf9sJy7rrQdQwSw52wEJIVsosoHYSBSkM=; b=N02NVMbewPbN0txr3CwdIh1cYGcihATGoBpYARpq+K8J0JoSErLak36CUUAz5hl4tNfon7 AC/GRGj0AfeuPeqmDFeCO6wwOIdzgRgVb/Es8Ixx8bsflhIq1UY1Tt7xqFqQNnLnyetNO2 euhNlNIXbHWgPRKI5q+rLjQDk7AW7u6oQSXtOwgeq1eR4YGCoTv/QD+PFR9t3dN7Wr5f80 QzqJSA8eRnWvQz+E7v3vBnl4Sqj16gFWWwhkIkie0p+RVRgtfnTFj+f1EDgftJqB3GeZAA cGLVgosRKXeeR6obixjpm9On3Gytnkg3EAAzDLt2Cb5QF71K1LqM6NTTrXiYNg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765203460; a=rsa-sha256; cv=none; b=i/MiLo1bjw9F04a0zEFrAET4V4ms/vBJPkqbS3WsJ6ophP0fObqMUraGTRMzEIletVDy/I nhgA4zuv1r7ugOW1pTvHhBoLLqozV4oICJW3eH6+BJXLXHI3oJ6X0JgQzAjUf2I8WZcdn3 7h79DfW7CqANxODXXjOt0OoNXrSohZyl5yKwtwIaR7ka9uyXJULcvEymFCxXCq+E1MxcZp YOg3c0HVtoo129JJTckNzn0JdaPWITi9bHvzuYaPMuCBwnnyTzXvVpVmiMwn2+t0jEDV2l i8uimXnetY9mlGwXDR2+KsNzGrb2XRBJaVJffS76KJQAnPvl5PLqgHjOpaZkjg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ3wM68SWz1N6 for ; Mon, 08 Dec 2025 14:17:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2feac by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 14:17:39 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: cd0e5f95d070 - stable/15 - rc.subr: Try to make svjc option handling a bit easier to read 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 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/15 X-Git-Reftype: branch X-Git-Commit: cd0e5f95d070d832675b8b9af696ed366d8fdb2c Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 14:17:39 +0000 Message-Id: <6936de03.2feac.6fecb084@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=cd0e5f95d070d832675b8b9af696ed366d8fdb2c commit cd0e5f95d070d832675b8b9af696ed366d8fdb2c Author: Mark Johnston AuthorDate: 2025-11-17 16:39:43 +0000 Commit: Mark Johnston CommitDate: 2025-12-08 14:14:57 +0000 rc.subr: Try to make svjc option handling a bit easier to read Specifically, make this code fit in fewer columns: - deindent cases to conform to the usual style, - use a local variable to minimize duplication in each case. No functional change intended. Reviewed by: 0mp, netchild MFC after: 2 weeks Sponsored by: Klara, Inc. Sponsored by: Modirum MDPay Differential Revision: https://reviews.freebsd.org/D53754 (cherry picked from commit 7861d051de2ea2f244bcf73111a04389dc5bcf51) --- libexec/rc/rc.subr | 88 +++++++++++++++++++++++++++++------------------------- 1 file changed, 47 insertions(+), 41 deletions(-) diff --git a/libexec/rc/rc.subr b/libexec/rc/rc.subr index 8317ff5c0922..ec4970c8db94 100644 --- a/libexec/rc/rc.subr +++ b/libexec/rc/rc.subr @@ -1246,49 +1246,55 @@ run_rc_command() if [ -n "$_svcj_options" ]; then # translate service jail options _svcj_sysvipc_x=0 for _svcj_option in $_svcj_options; do + _opts= case "$_svcj_option" in - mlock) - _svcj_cmd_options="allow.mlock ${_svcj_cmd_options}" - ;; - netv4) - _svcj_cmd_options="${_svcj_ip4} allow.reserved_ports ${_svcj_cmd_options}" - ;; - netv6) - _svcj_cmd_options="${_svcj_ip6} allow.reserved_ports ${_svcj_cmd_options}" - ;; - net_basic) - _svcj_cmd_options="${_svcj_ip4} ${_svcj_ip6} allow.reserved_ports ${_svcj_cmd_options}" - ;; - net_raw) - _svcj_cmd_options="allow.raw_sockets ${_svcj_cmd_options}" - ;; - net_all) - _svcj_cmd_options="allow.socket_af allow.raw_sockets allow.reserved_ports ${_svcj_ip4} ${_svcj_ip6} ${_svcj_cmd_options}" - ;; - nfsd) - _svcj_cmd_options="allow.nfsd enforce_statfs=1 ${_svcj_cmd_options}" - ;; - routing) - _svcj_cmd_options="allow.routing ${_svcj_cmd_options}" - ;; - settime) - _svcj_cmd_options="allow.settime ${_svcj_cmd_options}" - ;; - sysvipc) - _svcj_sysvipc_x=$((${_svcj_sysvipc_x} + 1)) - _svcj_cmd_options="sysvmsg=inherit sysvsem=inherit sysvshm=inherit ${_svcj_cmd_options}" - ;; - sysvipcnew) - _svcj_sysvipc_x=$((${_svcj_sysvipc_x} + 1)) - _svcj_cmd_options="sysvmsg=new sysvsem=new sysvshm=new ${_svcj_cmd_options}" - ;; - vmm) - _svcj_cmd_options="allow.vmm ${_svcj_cmd_options}" - ;; - *) - echo ${name}: unknown service jail option: $_svcj_option - ;; + mlock) + _opts="allow.mlock" + ;; + netv4) + _opts="${_svcj_ip4} allow.reserved_ports" + ;; + netv6) + _opts="${_svcj_ip6} allow.reserved_ports" + ;; + net_basic) + _opts="${_svcj_ip4} ${_svcj_ip6}" + _opts="${_opts} allow.reserved_ports" + ;; + net_raw) + _opts="allow.raw_sockets" + ;; + net_all) + _opts="allow.socket_af" + _opts="${_opts} allow.raw_sockets" + _opts="${_opts} allow.reserved_ports" + _opts="${_opts} ${_svcj_ip4} ${_svcj_ip6}" + ;; + nfsd) + _opts="allow.nfsd enforce_statfs=1" + ;; + routing) + _opts="allow.routing" + ;; + settime) + _opts="allow.settime" + ;; + sysvipc) + _svcj_sysvipc_x=$((${_svcj_sysvipc_x} + 1)) + _opts="sysvmsg=inherit sysvsem=inherit sysvshm=inherit" + ;; + sysvipcnew) + _svcj_sysvipc_x=$((${_svcj_sysvipc_x} + 1)) + _opts="sysvmsg=new sysvsem=new sysvshm=new" + ;; + vmm) + _opts="allow.vmm" + ;; + *) + echo ${name}: unknown service jail option: $_svcj_option + ;; esac + _svcj_cmd_options="${_opts} ${_svcj_cmd_options}" done if [ ${_svcj_sysvipc_x} -gt 1 ]; then echo -n "ERROR: more than one sysvipc option is " From nobody Mon Dec 8 14:17:40 2025 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 4dQ3wP1sfMz6JsH8 for ; Mon, 08 Dec 2025 14:17:41 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ3wP0P72z3q2M for ; Mon, 08 Dec 2025 14:17:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203461; 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=wWqSoN8zHlwSXfViZuLUXLEIDaPvGpW79xpOOxLvOBM=; b=ttfNcIdkCpl5y++nSZQH/cVYMTHk7feiFYC73n8kTkH+wBzBFTI6bZ7xXWZ3AVQp3fHJ/C wr6zBhd5prc3PbAcnhVdeKZND6uuRa2UiB64784lmEnGm88A7lpPqwFPGRsZ3l4wkBPM1Q Z+Llaq70lKjmOW9fHFIT2rl+2kELNDYPxCrJ6obxzAyH/90wt+GDrRySYXsLTUy6TRKtzw W1RPOVuspMYWRhDfH/inrQeeMSgUKqeX9+QG0NQ/OwWcXMU6ybaaAMX8GxjVfb7NkDY1mb ferxCBvDLGSN7DZywc2sdXOQtg5GMiJ2hVSC+1ACq+rLPTH2gBsu1qv2G+r2mA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203461; 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=wWqSoN8zHlwSXfViZuLUXLEIDaPvGpW79xpOOxLvOBM=; b=UQp8iKNjyg0WpxXjHKVf/anmCW1t5U1w61f/hkNrAlvFMO5c/92qhC5xZD89hXmulRWc3o 3SDYTYtoFja1WQU2h/w+X9+4qkb8W9u86gLl/dG7fWv94D6w14+NhB6pTy+a1dGll1EZXd eXkD5R1ioXN5Et0UX1zAbLMbbsycDkX87VKDdzsrCDsM5nkDFUzy9/o/ooh20Ve/TUdg9E LuzvCx0srlO3fOeVxsu0S7dnR5YsVKY0yWZw7pBiyQM+1ablZuHCD3j8IKTjZQEUYDHoAA LGfVszB+0jmWpExL0GQ2jyCerybv9oO2LgJjHWnlxi5zuU75MiLxRVZIMmo0KQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765203461; a=rsa-sha256; cv=none; b=t6xr9bushu500a1M4QF6edh1B1cbithRQ0JLK8EIYPrXLznutGMC8FtNacd0LhiLR2p5WY Fcg7yPWmCvb9+OkDBo5URnZ9U+kauMsoBGRwe15rd9CUImuqvm/suxHKyVJZUBc1JtKmCn YH5cnPq39omaERIRdoPhNhzbT+WJTFP+F/EJ7etPJCwU67pi004YhyYm4Omlh5UlnvAzir GZX40U0WSimTrM1IEs11Slsl72Gbi9rdl54hMyO6jp0UehExfySNmhRi+qDG2hk4ZY1JDf gduRLAWgIpTi4TwDYF0C/s1TJIJ8ydX9sueXSpb9noCQXvTifLvf1aqBnDUANg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ3wN6szqz1d8 for ; Mon, 08 Dec 2025 14:17:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2eed3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 14:17:40 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: dc88f0003e85 - stable/15 - setaudit: Initial import 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 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/15 X-Git-Reftype: branch X-Git-Commit: dc88f0003e8550f95264aa20a869227ad68312ad Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 14:17:40 +0000 Message-Id: <6936de04.2eed3.6d06a38d@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=dc88f0003e8550f95264aa20a869227ad68312ad commit dc88f0003e8550f95264aa20a869227ad68312ad Author: Mark Johnston AuthorDate: 2025-11-17 16:40:10 +0000 Commit: Mark Johnston CommitDate: 2025-12-08 14:14:58 +0000 setaudit: Initial import Unmodified sources from https://github.com/csjayp/setaudit at commit aa4dd9dfa40b6437030d718834236f4eaeb18ccb. Some follow-up changes will fix a few issues and make it easier to use this utility in the rc framework. Reviewed by: csjp MFC after: 2 weeks Sponsored by: Modirum MDPay Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D53669 (cherry picked from commit dcb0790bad434ace7cf53259e7a9bcefbef1c69b) --- usr.sbin/Makefile | 1 + usr.sbin/setaudit/.gitignore | 2 + usr.sbin/setaudit/Makefile | 8 +++ usr.sbin/setaudit/setaudit.8 | 78 ++++++++++++++++++++++++ usr.sbin/setaudit/setaudit.c | 140 +++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 229 insertions(+) diff --git a/usr.sbin/Makefile b/usr.sbin/Makefile index 44679ca290a5..0290ed4f1c58 100644 --- a/usr.sbin/Makefile +++ b/usr.sbin/Makefile @@ -117,6 +117,7 @@ SUBDIR.${MK_AUDIT}+= auditdistd .endif SUBDIR.${MK_AUDIT}+= auditreduce SUBDIR.${MK_AUDIT}+= praudit +SUBDIR.${MK_AUDIT}+= setaudit SUBDIR.${MK_AUTHPF}+= authpf SUBDIR.${MK_AUTOFS}+= autofs SUBDIR.${MK_BLACKLIST}+= blacklistctl diff --git a/usr.sbin/setaudit/.gitignore b/usr.sbin/setaudit/.gitignore new file mode 100644 index 000000000000..459fdebd0a30 --- /dev/null +++ b/usr.sbin/setaudit/.gitignore @@ -0,0 +1,2 @@ +setaudit +setaudit.o diff --git a/usr.sbin/setaudit/Makefile b/usr.sbin/setaudit/Makefile new file mode 100644 index 000000000000..a2e8b37c5c30 --- /dev/null +++ b/usr.sbin/setaudit/Makefile @@ -0,0 +1,8 @@ +PROG= setaudit +MAN= setaudit.8 + +WARNS?= 3 + +LIBADD+= bsm + +.include diff --git a/usr.sbin/setaudit/setaudit.8 b/usr.sbin/setaudit/setaudit.8 new file mode 100644 index 000000000000..8d0c8716ff73 --- /dev/null +++ b/usr.sbin/setaudit/setaudit.8 @@ -0,0 +1,78 @@ +.\" Copyright (c) 2018-2022 Mateusz Piotrowski <0mp@FreeBSD.org> +.\" +.\" 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. +.Dd March 21, 2018 +.Dt SETAUDIT 8 +.Os +.Sh NAME +.Nm setaudit +.Nd "specify audit configurations on a process" +.Sh SYNOPSIS +.Nm +.Op Fl 46 +.Op Fl a Ar auid +.Op Fl m Ar mask +.Op Fl s Ar source +.Op Fl p Ar port +.Ar command ... +.Sh DESCRIPTION +.Nm +is a tool to specify audit configurations on a process. +.Pp +The following options are available: +.Bl -tag -width ".Fl d Ar argument" +.It Fl 4 +Use IPv4. +.It Fl 6 +Use IPv6. +.It Fl a Ar auid +Audit user ID. +.It Fl m Ar mask +String representation of an audit mask. +.It Fl s Ar source +IPv4 or IPv6 address of a Terminal ID. +.It Fl p Ar port +Port of a Terminal ID. +.Xr +.El +.Sh EXAMPLES +Enable all exe related audit events performed by +.Ar command +and its child processes: +.Pp +.Dl # setaudit -m ex command +.Sh SEE ALSO +.Xr getaudit 2 , +.Xr setaudit 2 , +.Xr au_mask 3 , +.Xr libbsm 3 , +.Xr audit_user 5 , +.Xr audit 8 +.Sh HISTORY +The +.Nm +utility was written by +.An Christian S.J. Peron Aq Mt csjp@FreeBSD.org . +.Sh AUTHORS +This +manual page was written by +.An Mateusz Piotrowski Aq Mt 0mp@FreeBSD.org . diff --git a/usr.sbin/setaudit/setaudit.c b/usr.sbin/setaudit/setaudit.c new file mode 100644 index 000000000000..cfe8f2bc7155 --- /dev/null +++ b/usr.sbin/setaudit/setaudit.c @@ -0,0 +1,140 @@ +/*- + * Copyright (c) 2018 Christian S.J. Peron + * All rights reserved. + * + * 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 +#include + +#include +#include + +#include + +#include +#include +#include +#include +#include +#include +#include + +static char *aflag; +static char *mflag; +static char *sflag; + +static void +usage(char *prog) +{ + + (void) fprintf(stderr, + "usage: %s [-46] [-a auid] [-m mask] [-s source] [-p port] command ...\n", + prog); + exit(1); +} + +int +main(int argc, char *argv []) +{ + struct sockaddr_in6 *sin6; + struct sockaddr_in *sin; + struct addrinfo hints; + auditinfo_addr_t aia; + struct addrinfo *res; + struct passwd *pwd; + char *r, *prog; + int ch, error; + + prog = argv[0]; + bzero(&aia, sizeof(aia)); + bzero(&hints, sizeof(hints)); + aia.ai_termid.at_type = AU_IPv4; + hints.ai_family = PF_UNSPEC; + while ((ch = getopt(argc, argv, "46a:m:s:p:")) != -1) + switch (ch) { + case '4': + hints.ai_family = PF_INET; + break; + case '6': + hints.ai_family = PF_INET6; + break; + case 'a': + aflag = optarg; + break; + case 'm': + mflag = optarg; + break; + case 's': + sflag = optarg; + break; + case 'p': + aia.ai_termid.at_port = htons(atoi(optarg)); + break; + default: + usage(prog); + /* NOT REACHED */ + } + argc -= optind; + argv += optind; + if (argc == 0) + usage(prog); + if (aflag) { + pwd = getpwnam(aflag); + if (pwd == NULL) { + aia.ai_auid = strtoul(aflag, &r, 10); + if (r != NULL) + errx(1, "%s: invalid user", aflag); + } else + aia.ai_auid = pwd->pw_uid; + } + if (mflag) { + if (getauditflagsbin(mflag, &aia.ai_mask) < 0) + err(1, "getauditflagsbin"); + } + if (sflag) { + error = getaddrinfo(sflag, NULL, &hints, &res); + if (error) + errx(1, "%s", gai_strerror(error)); + switch (res->ai_family) { + case PF_INET6: + sin6 = (struct sockaddr_in6 *) res->ai_addr; + bcopy(&sin6->sin6_addr.s6_addr, + &aia.ai_termid.at_addr[0], + sizeof(struct in6_addr)); + aia.ai_termid.at_type = AU_IPv6; + break; + case PF_INET: + sin = (struct sockaddr_in *) res->ai_addr; + bcopy(&sin->sin_addr.s_addr, + &aia.ai_termid.at_addr[0], + sizeof(struct in_addr)); + aia.ai_termid.at_type = AU_IPv4; + break; + } + } + if (setaudit_addr(&aia, sizeof(aia)) < 0) { + err(1, "setaudit_addr"); + } + (void) execvp(*argv, argv); + err(1, "%s", *argv); +} From nobody Mon Dec 8 14:17:42 2025 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 4dQ3wQ3F4zz6Js37 for ; Mon, 08 Dec 2025 14:17:42 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ3wQ0cwXz3qJ7 for ; Mon, 08 Dec 2025 14:17:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203462; 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=geyE32tawLC4sSiU0zVzMMYbZSv7eI5H/NH8EknGjxI=; b=uzlUAJzlKD01H5zoS16JJaZdpIn/2XdmrXsJqxvix28cpcIjA+RbjtGNNfBLZq7SLrePoF rPgwxTlFr5c79s+cooXANL4RoqZ2bnPE1/p9Nt6IGslB/Px1kOML+H9Fp/l4Zo2Gr+GgJu eTy9x39UqquVoh6WdzWfFzSZ/a/Uw0E4uo0oai3+k+sQQ7IVXBpwBK5najIvwd3s/fI3Jp QNa3lXRlSGpgr/2YWnENislmQD/I8yXiscIthoHzv7Uj4n4rI2OYzvL0Yl4qUGGTqogDxJ UkUWsRV93KBO94jXq2YLiAStdYm1UtSTEvbyXrFqLYITaEVDmTg1MXzSkBF2+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203462; 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=geyE32tawLC4sSiU0zVzMMYbZSv7eI5H/NH8EknGjxI=; b=svPGyl03VzlGH4HygYHhJvzJTX9z2ZAb4/eUL+INvuPJaQiWN5yMVqfPqGclq4SFw29wM3 kfOq3gZdlrDjs7ol/+F3u18K0EqxX7id0mGo3s2wVrrBia8Fsk7zH5gXD9kKLr9bxzriWw yjt+9kjDQpAJUShAiqWK9UV621XX5GEdqIp+izAOCx+iPAEjGoP2LRB2gsmr6KX4yTZkOG 7GCkNX87snCR/maDOJxyt0fOrjjMWqqtrM2ENZLp+nw0HbCEf9kVeTt9B+JMwa+MwqphLF xbtQs9GYc7UerUJltD4WKeHmtmEBTU0qSPeiJN6Cq2Lx6EZ8tlNahQTNiPS5YQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765203462; a=rsa-sha256; cv=none; b=rMqsnwjlpIyQhUBVO9mtqyWGrJK2hI2F/uiCCw9Nm/Ffugm1oQxXBDI4ZQyIcdb8zySr1B O+eNXkOjerNEjr8QlxoJhiKeDJzeyxGbG8onrnillUXFE/lAU2APnWAf4s7QC1SLaPtYoD 95SICTsOKv2mr+yXwpkhNpDLvdBlhFqp3JCmnpQCK9jg4YMmVIyoLYwvVbTHj34W5JGDz6 XmZgiJjrcROxGHLBqmjiMByg3FKq68SOQYPr4GXT421vWTymNNlSfQH9EOCLzNw+IFxqcO sZo5e/ZEHW6NWOK6P3Ce2oH4VrTASsTL17YKSbBcEsK2ZX5s1PDYBHEThq4lpA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ3wQ09kPzrV for ; Mon, 08 Dec 2025 14:17:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2f13b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 14:17:42 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 6addb7cec0f3 - stable/15 - setaudit: Bump WARNS and fix some style bugs 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 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/15 X-Git-Reftype: branch X-Git-Commit: 6addb7cec0f3d862377320ba7bf7b13e012a8ecc Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 14:17:42 +0000 Message-Id: <6936de06.2f13b.7319bac9@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=6addb7cec0f3d862377320ba7bf7b13e012a8ecc commit 6addb7cec0f3d862377320ba7bf7b13e012a8ecc Author: Mark Johnston AuthorDate: 2025-11-17 16:40:57 +0000 Commit: Mark Johnston CommitDate: 2025-12-08 14:14:58 +0000 setaudit: Bump WARNS and fix some style bugs - Cast sockaddrs through void to silence warnings about expected alignment. - Fix cast style. - Sort includes. - Make some global variables local. - Sort options. No functional change intended. Reviewed by: csjp MFC after: 2 weeks Sponsored by: Modirum MDPay Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D53670 (cherry picked from commit a9be8f9968198600eefcd1b4423a29ea2016e020) --- usr.sbin/setaudit/Makefile | 2 -- usr.sbin/setaudit/setaudit.c | 34 ++++++++++++++++------------------ 2 files changed, 16 insertions(+), 20 deletions(-) diff --git a/usr.sbin/setaudit/Makefile b/usr.sbin/setaudit/Makefile index a2e8b37c5c30..548780f4cd03 100644 --- a/usr.sbin/setaudit/Makefile +++ b/usr.sbin/setaudit/Makefile @@ -1,8 +1,6 @@ PROG= setaudit MAN= setaudit.8 -WARNS?= 3 - LIBADD+= bsm .include diff --git a/usr.sbin/setaudit/setaudit.c b/usr.sbin/setaudit/setaudit.c index cfe8f2bc7155..bdf33ab4cf3d 100644 --- a/usr.sbin/setaudit/setaudit.c +++ b/usr.sbin/setaudit/setaudit.c @@ -23,6 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ + #include #include @@ -31,23 +32,18 @@ #include -#include +#include +#include #include +#include +#include #include #include -#include -#include -#include - -static char *aflag; -static char *mflag; -static char *sflag; static void usage(char *prog) { - - (void) fprintf(stderr, + (void)fprintf(stderr, "usage: %s [-46] [-a auid] [-m mask] [-s source] [-p port] command ...\n", prog); exit(1); @@ -62,15 +58,17 @@ main(int argc, char *argv []) auditinfo_addr_t aia; struct addrinfo *res; struct passwd *pwd; - char *r, *prog; + char *aflag, *mflag, *sflag, *r, *prog; int ch, error; + aflag = mflag = sflag = NULL; + prog = argv[0]; bzero(&aia, sizeof(aia)); bzero(&hints, sizeof(hints)); aia.ai_termid.at_type = AU_IPv4; hints.ai_family = PF_UNSPEC; - while ((ch = getopt(argc, argv, "46a:m:s:p:")) != -1) + while ((ch = getopt(argc, argv, "46a:m:p:s:")) != -1) switch (ch) { case '4': hints.ai_family = PF_INET; @@ -84,12 +82,12 @@ main(int argc, char *argv []) case 'm': mflag = optarg; break; - case 's': - sflag = optarg; - break; case 'p': aia.ai_termid.at_port = htons(atoi(optarg)); break; + case 's': + sflag = optarg; + break; default: usage(prog); /* NOT REACHED */ @@ -117,14 +115,14 @@ main(int argc, char *argv []) errx(1, "%s", gai_strerror(error)); switch (res->ai_family) { case PF_INET6: - sin6 = (struct sockaddr_in6 *) res->ai_addr; + sin6 = (struct sockaddr_in6 *)(void *)res->ai_addr; bcopy(&sin6->sin6_addr.s6_addr, &aia.ai_termid.at_addr[0], sizeof(struct in6_addr)); aia.ai_termid.at_type = AU_IPv6; break; case PF_INET: - sin = (struct sockaddr_in *) res->ai_addr; + sin = (struct sockaddr_in *)(void *)res->ai_addr; bcopy(&sin->sin_addr.s_addr, &aia.ai_termid.at_addr[0], sizeof(struct in_addr)); @@ -135,6 +133,6 @@ main(int argc, char *argv []) if (setaudit_addr(&aia, sizeof(aia)) < 0) { err(1, "setaudit_addr"); } - (void) execvp(*argv, argv); + (void)execvp(*argv, argv); err(1, "%s", *argv); } From nobody Mon Dec 8 14:17:43 2025 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 4dQ3wR3Lr8z6JsKC for ; Mon, 08 Dec 2025 14:17:43 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ3wR1L1wz3q7d for ; Mon, 08 Dec 2025 14:17:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203463; 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=hQ0klcVz9G0HCNNUrcJnuAzul/1iNFp5myaysoce7kM=; b=I4ryljmyAsCsG+co9NLYc9ApEBxfupZirhpDax/ZuvatibOWQ6RjzPrXpRPGMtkbO6jqe9 5elKR+P1v3QoA+/fo9r78dl9a6X+KVQypTNEoPZEBVzzmzQw5ahMs+0UOEgMH85301EKT6 BLQUCJJrB/o+CiAXZkCk2N8Y84cIFLr0kU9ID7+Ndv+EicLWQt8u4GsTBenxIhfET2Ap5G KwzxSScfpT2ZNnNPXWdEqqJJla6JB0KN9oCIlaxTOLOpK546r5ZFK4OjP33zWD/meZeTn5 2LjWbOoN6N8cEez2WnyydjLAh8hVa9EsoKgSl3ZxWbixDb6CrBD/4OLSx6EtVg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203463; 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=hQ0klcVz9G0HCNNUrcJnuAzul/1iNFp5myaysoce7kM=; b=bhiroY7k+BMeSHukZAoHQc2PVCcCr1Fgl90r9zEhV4k/fttk3ksUedcSjZvrAAa5/8xBPA beXzMhY2ymp7O6hP/m9KAt9b4x62Ec/rmN/kRmTSS3eATBPJlPcVBHXCf3E8icOzuPoQ1W bJK/1Fuat7iFeFhm3gbjfVJz2S73RGAb5ObPQkbmut6g+KNT7ZDdF1E9ZdniwDaDmPHCgD ENTOwHwbW+ApZbM29FaQhW1ajjSyOJrBioh595AbDZr6z44MRR2nhYN8rA9HVpflrTqRjp oHCuqgxRN3TDK5muO+4iSqKVZBAXcWIzaRdgHzHPbvfJHP6ucn7i4nZw++eB/w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765203463; a=rsa-sha256; cv=none; b=MJGez+JM3b+NSEjQSCasq3mHTR1ksm/2OwKll0eijg3g/kvMX6rRbTpXy4AmHy+a1r5phn RdpnfCALKNLMHPoWKGvTvQfnHn/42xWZa9xr6qmOGVO85NouOjPv0859ze9Qwh1q7fO2xU pyj6+zRT7L4C4iKiWbDnRoY8XcLhg78EZsxpGaVhnWJuixbTJ6B2DlfsAw6sxHjq9HSSuM vbBrtiYBOjgw7qBTjy/iBaOKcdElK/zBnEZhykYRnTSNVLkO7QMwrDI0K/nV0/0sdFEtbF RPsig6I+iqKrZ/AC+Fym3zA6V8AtxMKDCXzcDSiMT5lXv9f8zFGf4Y4ez+e4ug== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ3wR0vDDzrW for ; Mon, 08 Dec 2025 14:17:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 302f4 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 14:17:43 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 1f9378a8eb69 - stable/15 - setaudit: Fix handling of numeric UIDs 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 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/15 X-Git-Reftype: branch X-Git-Commit: 1f9378a8eb698c14a97beb34483f6c1155619b58 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 14:17:43 +0000 Message-Id: <6936de07.302f4.15bd68e6@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=1f9378a8eb698c14a97beb34483f6c1155619b58 commit 1f9378a8eb698c14a97beb34483f6c1155619b58 Author: Mark Johnston AuthorDate: 2025-11-17 16:45:11 +0000 Commit: Mark Johnston CommitDate: 2025-12-08 14:14:58 +0000 setaudit: Fix handling of numeric UIDs The usage of strtoul() was incorrect. Reviewed by: csjp MFC after: 2 weeks Sponsored by: Modirum MDPay Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D53671 (cherry picked from commit 551191e14e223e1cbee5e9f72e08d4e2576b9127) --- usr.sbin/setaudit/setaudit.8 | 2 +- usr.sbin/setaudit/setaudit.c | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/usr.sbin/setaudit/setaudit.8 b/usr.sbin/setaudit/setaudit.8 index 8d0c8716ff73..7dc3e05a4473 100644 --- a/usr.sbin/setaudit/setaudit.8 +++ b/usr.sbin/setaudit/setaudit.8 @@ -45,7 +45,7 @@ Use IPv4. .It Fl 6 Use IPv6. .It Fl a Ar auid -Audit user ID. +Audit user ID or user name. .It Fl m Ar mask String representation of an audit mask. .It Fl s Ar source diff --git a/usr.sbin/setaudit/setaudit.c b/usr.sbin/setaudit/setaudit.c index bdf33ab4cf3d..adea52a83a8d 100644 --- a/usr.sbin/setaudit/setaudit.c +++ b/usr.sbin/setaudit/setaudit.c @@ -58,7 +58,7 @@ main(int argc, char *argv []) auditinfo_addr_t aia; struct addrinfo *res; struct passwd *pwd; - char *aflag, *mflag, *sflag, *r, *prog; + char *aflag, *mflag, *sflag, *prog; int ch, error; aflag = mflag = sflag = NULL; @@ -99,8 +99,10 @@ main(int argc, char *argv []) if (aflag) { pwd = getpwnam(aflag); if (pwd == NULL) { + char *r; + aia.ai_auid = strtoul(aflag, &r, 10); - if (r != NULL) + if (*r != '\0') errx(1, "%s: invalid user", aflag); } else aia.ai_auid = pwd->pw_uid; From nobody Mon Dec 8 14:17:44 2025 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 4dQ3wS4nqbz6JsKD for ; Mon, 08 Dec 2025 14:17:44 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ3wS28Ksz3qCl for ; Mon, 08 Dec 2025 14:17:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203464; 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=LiBFO+rUoFlZRNT2zraQtUiiM/cen4I/zjAQoZ+HWOY=; b=N6o+Z1IzB+MSJ6AmbCazEZq+POgPPEsNgt/FykmGU627irUPqcZtL3DCw8U0kwwGjgYPQK 2QlJSuWIy0SHEW1Ujs6ymIuFPQix/n8cGkjwC00fU5F/yoHGvLGOh+4Dg5LF7fzDwfKKaS p6X5sfFqx0137KuR5t0pY13XBPWclnfHjP1Ep+OcfBiUU4cjpUhwPzZ9Vmobk7ufKHq0YZ duXQ2WlUK1drCbvU5P/jZLNE/l118WkcWXfRH/LE6NGGqcwDWzqvoRgaK/iAb8Clj2UtQ7 lsCgy+hLmSuvQCJQMTvJlZMxok8YyEBS2C08UL5QTMJ2f13inq1XTo65/jGIMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203464; 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=LiBFO+rUoFlZRNT2zraQtUiiM/cen4I/zjAQoZ+HWOY=; b=w55RE7UlfBJYnqIoLCAvh+igmRKkc0LjYmLv18cPM/BO9piR/9XnVs5gTcyVuDz7HpNfxb lQ4zpk4fClQ8ZEfaqhqA9GTZe3vcRZHHHzCRC5j2QAf7DxUl2DyeNiAbzgydsvQNO8SIcr tiW9Q5u6bje1iMDneNGEO6ho1IBx6ee1fZsl3bdbAifEStzBiqxQ6JdahvJvfB4igwOHJK hf9GVMoe8thNYWjDBdNEer31L0azuv1yQvkUhVuoAN9HSzMV4YCjDt4WqwruLF4UZ+jGKK wwSGkMiFu1oCAwXQ7qjHHZWuZFJYDAYobtfuxxoCgj7bNdv5G3Zjyglwf4GC+w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765203464; a=rsa-sha256; cv=none; b=rhyH/N2RK9M8YuzeSZuHBhechiBa9fwB2PQzwPuXjXwomw0ghz9Nhg0S8T+UYK3X1Ukhag VVigTa6ntIlWiTgZd12xG3OpZcRWn54dI7cE9aOiX8V0eZXpE9HicAM0q5dhn0bv25gQKY Ic6vlM/7cRVcKGYBiZ6bm7YWVCrgN8u8igd8N9mEU19V7s0qNrEnCgMeRugJWA3lde5AGf nxDQ/8hZ9sj8+gS/Wa2LWTvtxokpELn7fVg9Pg0+0eEvreHL1UH7GJR2FM1xZWWNMEZ1tU xEqFVm3wWOgEFuA2+xDiwvT3PiFevgOjpjUkyaEeAf/Av0bNyInFPSEotfEWIQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ3wS1fLWz1NB for ; Mon, 08 Dec 2025 14:17:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30190 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 14:17:44 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 80a089d4359a - stable/15 - setaudit: Add an update mode 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 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/15 X-Git-Reftype: branch X-Git-Commit: 80a089d4359ab014ee017860cc23da40f7a4c8fd Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 14:17:44 +0000 Message-Id: <6936de08.30190.3e423581@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=80a089d4359ab014ee017860cc23da40f7a4c8fd commit 80a089d4359ab014ee017860cc23da40f7a4c8fd Author: Mark Johnston AuthorDate: 2025-11-17 16:45:29 +0000 Commit: Mark Johnston CommitDate: 2025-12-08 14:14:58 +0000 setaudit: Add an update mode By default, setaudit(8) overwrites the whole audit session state. For the purpose of overwriting only a single field, e.g., the audit user, this is inconvenient. Add -U to accomodate this case: when specified, setaudit(8) will first fetch the current session state block and then will only overwrite those fields specified on the command line. Reviewed by: csjp MFC after: 2 weeks Sponsored by: Modirum MDPay Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D53672 (cherry picked from commit 1238610a27d5bc0914f524296ff587d86eec4c52) --- usr.sbin/setaudit/setaudit.8 | 12 +++++++++++- usr.sbin/setaudit/setaudit.c | 38 ++++++++++++++++++++++++++++---------- 2 files changed, 39 insertions(+), 11 deletions(-) diff --git a/usr.sbin/setaudit/setaudit.8 b/usr.sbin/setaudit/setaudit.8 index 7dc3e05a4473..7dd66225979c 100644 --- a/usr.sbin/setaudit/setaudit.8 +++ b/usr.sbin/setaudit/setaudit.8 @@ -28,7 +28,7 @@ .Nd "specify audit configurations on a process" .Sh SYNOPSIS .Nm -.Op Fl 46 +.Op Fl 46U .Op Fl a Ar auid .Op Fl m Ar mask .Op Fl s Ar source @@ -44,6 +44,16 @@ The following options are available: Use IPv4. .It Fl 6 Use IPv6. +.It Fl U +Update audit session state rather than overwriting it. +By default, +.Nm +will overwrite the entire audit session state using the specified +parameters. +If +.Fl U +is specified, only the parameters given on the command line will be +updated, leaving the rest unchanged. .It Fl a Ar auid Audit user ID or user name. .It Fl m Ar mask diff --git a/usr.sbin/setaudit/setaudit.c b/usr.sbin/setaudit/setaudit.c index adea52a83a8d..af8f481afcb3 100644 --- a/usr.sbin/setaudit/setaudit.c +++ b/usr.sbin/setaudit/setaudit.c @@ -35,6 +35,7 @@ #include #include #include +#include #include #include #include @@ -44,7 +45,7 @@ static void usage(char *prog) { (void)fprintf(stderr, - "usage: %s [-46] [-a auid] [-m mask] [-s source] [-p port] command ...\n", + "usage: %s [-46U] [-a auid] [-m mask] [-p port] [-s source] command ...\n", prog); exit(1); } @@ -56,19 +57,21 @@ main(int argc, char *argv []) struct sockaddr_in *sin; struct addrinfo hints; auditinfo_addr_t aia; - struct addrinfo *res; - struct passwd *pwd; char *aflag, *mflag, *sflag, *prog; + dev_t term_port; + uint32_t term_type; int ch, error; + bool Uflag; aflag = mflag = sflag = NULL; + Uflag = false; prog = argv[0]; bzero(&aia, sizeof(aia)); bzero(&hints, sizeof(hints)); - aia.ai_termid.at_type = AU_IPv4; + term_type = AU_IPv4; hints.ai_family = PF_UNSPEC; - while ((ch = getopt(argc, argv, "46a:m:p:s:")) != -1) + while ((ch = getopt(argc, argv, "46a:m:p:s:U")) != -1) switch (ch) { case '4': hints.ai_family = PF_INET; @@ -83,11 +86,14 @@ main(int argc, char *argv []) mflag = optarg; break; case 'p': - aia.ai_termid.at_port = htons(atoi(optarg)); + term_port = htons(atoi(optarg)); break; case 's': sflag = optarg; break; + case 'U': + Uflag = true; + break; default: usage(prog); /* NOT REACHED */ @@ -96,7 +102,14 @@ main(int argc, char *argv []) argv += optind; if (argc == 0) usage(prog); + + if (Uflag) { + if (getaudit_addr(&aia, sizeof(aia)) < 0) + err(1, "getaudit_addr"); + } if (aflag) { + struct passwd *pwd; + pwd = getpwnam(aflag); if (pwd == NULL) { char *r; @@ -112,6 +125,8 @@ main(int argc, char *argv []) err(1, "getauditflagsbin"); } if (sflag) { + struct addrinfo *res; + error = getaddrinfo(sflag, NULL, &hints, &res); if (error) errx(1, "%s", gai_strerror(error)); @@ -121,20 +136,23 @@ main(int argc, char *argv []) bcopy(&sin6->sin6_addr.s6_addr, &aia.ai_termid.at_addr[0], sizeof(struct in6_addr)); - aia.ai_termid.at_type = AU_IPv6; + term_type = AU_IPv6; break; case PF_INET: sin = (struct sockaddr_in *)(void *)res->ai_addr; bcopy(&sin->sin_addr.s_addr, &aia.ai_termid.at_addr[0], sizeof(struct in_addr)); - aia.ai_termid.at_type = AU_IPv4; + term_type = AU_IPv4; break; } } - if (setaudit_addr(&aia, sizeof(aia)) < 0) { - err(1, "setaudit_addr"); + if (!Uflag || sflag) { + aia.ai_termid.at_port = term_port; + aia.ai_termid.at_type = term_type; } + if (setaudit_addr(&aia, sizeof(aia)) < 0) + err(1, "setaudit_addr"); (void)execvp(*argv, argv); err(1, "%s", *argv); } From nobody Mon Dec 8 14:17:45 2025 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 4dQ3wT6HGLz6JsKH for ; Mon, 08 Dec 2025 14:17:45 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ3wT3dLdz3qNp for ; Mon, 08 Dec 2025 14:17:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203465; 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=Y3OPSVZ4oTDvMeHrhoVdUsotDObPvc0a26JdGvyofOE=; b=HoQQkUhTFz7+5pU1CXvai/lftj38Ocxf6fl7gKyL3dODk9lyvybkQmbFijxVBcS99fqgS/ 1RxwYWbxb56cQuMvJ3LOaCCFAi7GTAPDNWqs6SqR5uF3MhS8ft821HtZ0dVC0CH2sIDoNh 461nYNK2um6+5dzYOP/N2bKZYyxGvBtACJrOKEIIMtvWoHMBZ1MsCl+CgrxQsEhsMcpqMm DCVTqsPu8yeNNFKp5BjZnFR1hNFv75gqWKoNW6qbkMrGYnAOF4bJLBa0RKjePuGaINvcas uyDeo9X5hBMu4b26FHexKCC5317NqyGg+5W1yNFytbpVTFRr9/EUIm5J9lUTCQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203465; 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=Y3OPSVZ4oTDvMeHrhoVdUsotDObPvc0a26JdGvyofOE=; b=CY0PhxEEc9fqogyHDcgHszDQJZznYy18x8WQX0zzZ6A4O9J6eiPoV/rayEH5yqKckw5Z1t i/8lGBLAidqVebY/z1ijrS+8q/lC1vMBJyyFBWL8nJUFxBnFLHJqFZ+M61ha9oLh6i2jpH V6FPb1npIsa2q+Jza1z7Hs8aDHY2iLu935b8Sjn2oNKgFhoZGGdFaimclBMdHToxsRiO0q 5V/mskk9m4OvwU8wJfKB35Q9zqQUe5UPLrzeGlF7zwkvQQwS9+NwvQcX3+nkrq23azoQMi iZCF4PfBFez4IsqUxoULD5M2PwrtQueznqpbin8PRA7Sl2LU0OR7+33kXxJUqg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765203465; a=rsa-sha256; cv=none; b=WRVAmXLz23r8qfe/tLrrd2iIZ/GVVCWD6TqKLFcadIpaHPK40TqWwu8vfwuozDEdUDWaH5 +iMjWV9TrWfYYDaSmM1J1YmK3dk2QH0ZVoNJ4S4DkeLAq/xYnFDWjk1DFbIczPP73l5jJs 1NbHrWMmoIp2VraL+f22xnj3lOBIvH4N9q7Vaqx2Sqsz3evNj3eI/iTDj+g9QMAJlzKODS qD/a3QZtQYwlf40o3/Ikh+IxUJ/Ylzi/fzCsOt7r18/H9826nZHaqZNgUtLWqIRJwOSjrO wxxhGGiGyAyXyKMjOHBQmXbp2dUa/TaMI87Dn9/U9rEPfkMQG0jieOLFiAH07g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ3wT2RW1z1NC for ; Mon, 08 Dec 2025 14:17:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2eed7 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 14:17:45 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: e4e7b5840f97 - stable/15 - rc.subr: Remove misguided cpuset usage 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 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/15 X-Git-Reftype: branch X-Git-Commit: e4e7b5840f97d7ee7963f8a4d3fc30ad0ad802af Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 14:17:45 +0000 Message-Id: <6936de09.2eed7.6577f819@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=e4e7b5840f97d7ee7963f8a4d3fc30ad0ad802af commit e4e7b5840f97d7ee7963f8a4d3fc30ad0ad802af Author: Mark Johnston AuthorDate: 2025-11-17 16:45:44 +0000 Commit: Mark Johnston CommitDate: 2025-12-08 14:14:58 +0000 rc.subr: Remove misguided cpuset usage When running an rc command, if the target rc script defines _cmd, e.g., start_cmd=..., then the run_rc_command() executes that instead of $command. In general it's a shell function, and "cpuset -l " doesn't work. Moreover, it doesn't really make sense to run cpuset for anything other than start_cmd. Other optional isolation mechanisms (e.g., _fib, _chroot) are only used when invoking $command directly as part of the "start" command. Make _cpuset consistent with everything else by removing these extraneous cpuset invocations. Reviewed by: 0mp MFC after: 2 weeks Sponsored by: Modirum MDPay Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D53746 (cherry picked from commit 71f6592a01506899efd91306b6d8147f14a6b219) --- libexec/rc/rc.subr | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libexec/rc/rc.subr b/libexec/rc/rc.subr index ec4970c8db94..c8060c87eb6e 100644 --- a/libexec/rc/rc.subr +++ b/libexec/rc/rc.subr @@ -1365,7 +1365,7 @@ run_rc_command() _run_rc_precmd || return 1 fi if ! checkyesno ${name}_svcj; then - _run_rc_doit "$_cpusetcmd $_cmd $rc_extra_args" || return 1 + _run_rc_doit "$_cmd $rc_extra_args" || return 1 else case "$rc_arg" in start) @@ -1394,7 +1394,7 @@ run_rc_command() name=svcj-${name} && _return=0 fi else - _run_rc_doit "$_cpusetcmd $_cmd $rc_extra_args" || _return=1 + _run_rc_doit "$_cmd $rc_extra_args" || _return=1 fi ;; stop) @@ -1402,7 +1402,7 @@ run_rc_command() $SERVICE -E _rc_svcj=jailing -j svcj-${name} ${name} ${_rc_prefix}stop $rc_extra_args || _return=1 $JAIL_CMD -r svcj-${name} 2>/dev/null else - _run_rc_doit "$_cpusetcmd $_cmd $rc_extra_args" || _return=1 + _run_rc_doit "$_cmd $rc_extra_args" || _return=1 fi ;; restart|status) ;; # no special case needed for svcj or handled somewhere else @@ -1412,7 +1412,7 @@ run_rc_command() if checkyesno _rc_svcj_extra_cmd && [ "${_rc_svcj}" != jailing ]; then $SERVICE -v -E _rc_svcj=jailing -j svcj-${name} ${name} ${_rc_prefix}${rc_arg} $rc_extra_args || _return=1 else - _run_rc_doit "$_cpusetcmd $_cmd $rc_extra_args" || _return=1 + _run_rc_doit "$_cmd $rc_extra_args" || _return=1 fi ;; esac From nobody Mon Dec 8 14:17:46 2025 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 4dQ3wW0fhMz6JsQM for ; Mon, 08 Dec 2025 14:17: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ3wV485zz3qD9 for ; Mon, 08 Dec 2025 14:17:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203466; 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=mssuRq5YRAR6rpkVQnY1PKw0ryUd0pkiHumCYW8uEoc=; b=Q+wxlC5UuuzRb6uNxQcCnrCAtfB4ktZMposllrTVU0cGyasMXkU1hkaZsy+CaxTS7Fdb6N eTZknEDw5FxraMOvpKbYoO5E6nKczd9LSVQlMilDPbGJWACt2Orz3bp1XpUNjMw3EK5nA0 nbSDVwEu+/9ibfDazIqr1WBxo3hmGFfbIcDwjXDUIQyWGlwFRlEUyllLQ7xFx+4D1Q0Vjo rmhmkFvMLCehu/mbUFuOP74T1t71d8o1pZe1FBdILb15fTAkchQYRhkCm/7MQMFHiYJZ8B ut93ICrpNQAHnzBjuwo+D68osJRfYwP+ftwZ/4LTq0mSSjPr6+Sbg2wOhbp3eA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203466; 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=mssuRq5YRAR6rpkVQnY1PKw0ryUd0pkiHumCYW8uEoc=; b=bews8EWE5mnmN++jcD+bbPRW9M4N1kh6HChRSgKF6eKgit7m0xSBzs3Xvzl0DM0yQV4wyU tNNfbVeYn9TDrx7gI1xODwaxdTyVZNOM0S1XWrvxmJ0XeYQ/3zR+akq7dr5SuexGTxxTh2 z+/BGbJtM6r2YFFNwR5BWRVLZD40CYSGqLBEgt50I77jiWzjoaoy4Rh+hKcUBNptUSnjAh +Di4IdsRIS50pnpN+aqYsmoDEvRNh4nShcHWmERRq5vucD+ymL/mJmv1pXvpLgUZHIh+LK ak28e0SjxUks954QO/xJhtuDEgyl6Gm00uLmE7KGB41jpymUddMsuo+QbYAINA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765203466; a=rsa-sha256; cv=none; b=rUmeY13k76e4QF/hJXgqNgB+W1jXTmLkx9+PTmYzhKNal+7vrP8sYR6Q4MmAq1pEgFfTez Q+b2SEYqC1Pi9JbNXQISMnZYM3XGWbzPD12gFI3zygPelsqk9obYS/xplgnNAFgMhr3bPZ nmo5WJDRtombIK1BoKI1ZNHyJrRzJl7nq9g/R9r6LBoCpkJadlPUCVvHPnmKiNrs18ppsb 9UBRLkkKZAgtkhzJJcHgB1sxCLTiFi/oFsuyDWBhqbWe2yTnIlP5cRHsgwATeMEDDq2e58 p6coh1dKRoqoeY35cvUjBwGmgNfaiVpL4roCCGvS2Pz5GnCx520xi7trbp5Z2A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ3wV3Dxpz1B8 for ; Mon, 08 Dec 2025 14:17:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30343 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 14:17:46 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 7edef9117688 - stable/15 - rc.subr: Support setting the audit user when starting services 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 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/15 X-Git-Reftype: branch X-Git-Commit: 7edef9117688a15d53123f837efa25bf9e4a9d28 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 14:17:46 +0000 Message-Id: <6936de0a.30343.132fdc81@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=7edef9117688a15d53123f837efa25bf9e4a9d28 commit 7edef9117688a15d53123f837efa25bf9e4a9d28 Author: Mark Johnston AuthorDate: 2025-11-17 16:45:58 +0000 Commit: Mark Johnston CommitDate: 2025-12-08 14:14:58 +0000 rc.subr: Support setting the audit user when starting services When an unprivileged user restarts a service using, e.g., sudo, the service runs with the audit user ID set to that of the unprivileged user. This can have surprising effects: for instance, a user that restarts a jail that is running sshd will end up with their UID attached to all audit logs associated with users who log in via that sshd instance. (sshd will set the audit user, but this is disallowed in jails by default.) Add support for rc.conf directives which cause rc to override the audit user. Specifically, make _audit_user=foo cause the audit user to be set to "foo" for service . A plain audit_user=foo directive causes all services to be started as foo. Note, like other similar rc features, this feature is limited to rc services which are run by executing a command. Shell functions can't be wrapped this way. Reviewed by: 0mp MFC after: 2 weeks Sponsored by: Modirum MDPay Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D53747 (cherry picked from commit 39ee24182b92114d006abc2b8095334a1d8a083c) --- libexec/rc/rc.subr | 18 +++++++++++++++++- share/man/man5/rc.conf.5 | 14 ++++++++++++-- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/libexec/rc/rc.subr b/libexec/rc/rc.subr index c8060c87eb6e..c6f29c6b0c99 100644 --- a/libexec/rc/rc.subr +++ b/libexec/rc/rc.subr @@ -55,6 +55,7 @@ JAIL_CMD=/usr/sbin/jail _svcj_generic_params="path=/ mount.nodevfs host=inherit" JID=0 CPUSET="/bin/cpuset" +SETAUDIT="/usr/sbin/setaudit" # Cache the services that we loaded with load_rc_config. _loaded_services="" @@ -923,6 +924,9 @@ startmsg() # Meant to be used in /etc/rc.conf to override # ${command}. # +# ${name}_audit_user n Override the audit user for ${command}, +# specified as a user name or UID. +# # ${name}_chroot n Directory to chroot to before running ${command} # Requires /usr to be mounted. # @@ -1141,6 +1145,15 @@ run_rc_command() _cpusetcmd="$CPUSET -l $_cpuset" fi + eval _audit_user=\$${name}_audit_user + if [ -z "$_audit_user" -a -n "$audit_user" ]; then + _audit_user=$audit_user + fi + _setauditcmd= + if [ -n "$_audit_user" ]; then + _setauditcmd="setaudit -U -a $_audit_user" + fi + # If a specific jail has a specific svcj request, honor it (YES/NO). # If not (variable empty), evaluate the global svcj catch-all. # A global YES can be overriden by a specific NO, and a global NO is overriden @@ -1505,6 +1518,7 @@ run_rc_command() _doit="\ ${_nice:+nice -n $_nice }\ $_cpusetcmd \ +$_setauditcmd \ ${_fib:+setfib -F $_fib }\ ${_env:+env $_env }\ chroot ${_user:+-u $_user }${_group:+-g $_group }${_groups:+-G $_groups }\ @@ -1514,7 +1528,9 @@ $_chroot $command $rc_flags $command_args" _doit="\ ${_fib:+setfib -F $_fib }\ ${_env:+env $_env }\ -$_cpusetcmd $command $rc_flags $command_args" +$_cpusetcmd \ +$_setauditcmd \ +$command $rc_flags $command_args" if [ -n "$_user" ]; then _doit="su -m $_user -c 'sh -c \"$_doit\"'" fi diff --git a/share/man/man5/rc.conf.5 b/share/man/man5/rc.conf.5 index 6274c1ee5b94..fa8d8aab8c4e 100644 --- a/share/man/man5/rc.conf.5 +++ b/share/man/man5/rc.conf.5 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 5, 2025 +.Dd November 14, 2025 .Dt RC.CONF 5 .Os .Sh NAME @@ -190,6 +190,17 @@ Setting this option will bypass that check at boot time and always test whether or not the service is actually running. Enabling this option is likely to increase your boot time if services are enabled that utilize the force_depend check. +.It Ao Ar name Ac Ns Va _audit_user +.Pq Vt str +A user name or UID to use as the +.Xr audit 4 +user for the service. +Run the chrooted service under this system group. +By default, when an unprvileged user restarts a service using a utility +such as sudo or doas, the service's will audit session will point to the +unprivileged user, which may be undesirable. +In that case, this variable can be used to override the audit user using +.Xr setaudit 8 . .It Ao Ar name Ac Ns Va _chroot .Pq Vt str .Xr chroot 8 @@ -209,7 +220,6 @@ The value to run the service under. .It Ao Ar name Ac Ns Va _group .Pq Vt str -Run the chrooted service under this system group. Unlike the .Ao Ar name Ac Ns Va _user setting, this setting has no effect if the service is not chrooted. From nobody Mon Dec 8 14:17:47 2025 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 4dQ3wX0Qt0z6JsMM for ; Mon, 08 Dec 2025 14:17:48 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ3wW4CHRz3qPG for ; Mon, 08 Dec 2025 14:17:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203467; 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=JJ0KNHpR1RO1qATn+E9einKDY2VMKAX25gK+eHQ5BiQ=; b=TydPUJs/ig3hFFtUCko2oNAq0XPItiDOZIo6nRwacgtEIcmhq6DGt3KYgh9GcWwrer1P5f +MfomayTSWCwo5yTPiSf/uaa/swK5rDCP66eD3uGJOzd3vbL52uy2UoRsXvhvhXowQXSZB we+IjDyFExm3AI/6kRg47NlzurPCml4IfQxRIm8AytXYszEodK4UXq2TqaJqBW3KABpmlV mZA9Zw8HJEviD8L8oTGP/lwZ05dnUyP7U5J8PL3KmYKxNLwVrg0TVTXOxhvdcHNkL+5ek/ uUA93h1gFZ5QgfQ9P/NTV1+ftgOszXoMVFFFlvfHdi64g9J1a/r5SVwa7n4B1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203467; 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=JJ0KNHpR1RO1qATn+E9einKDY2VMKAX25gK+eHQ5BiQ=; b=hc9glGHkhLqddvw/z5vyFk+CIk3geoyXKr5BFcqhItcF5C0RCzZLTtlRByiUkSNU8XMRyD XLRdEDzebCXyEJyzrsGJkOK8AB4t6z+5GJMuztBve1m284pDWAMVHB6y2q3H33TWmgnN4s IphGWk7o4sAqwYw+5rbeeDuWJCuuVyhX/iWGPx3OkKrzL4bqqMFE/VwtIBO/G7kGEbIyKa k5XQtNHre3OBI2r6A+bSepnU1CSvnJsKXqA4imQpacEq/es34nkx6PYf2uodnn3udtWSKB W/mcuVMSV3PAIyX4rTB+TzD6YdJaP7ThjN53/GRgNujN+sTAdF4g82qMN3yqXQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765203467; a=rsa-sha256; cv=none; b=lNZy5K+NQV4bh26Wizikw1R5OFOSiRw2iPX8ACULm6nLrYN6bVqlh0w/UZg3CrgNITEuaL kiB4afffYF6fzFPrFyvWWViiMBNB+PF27TWMb+7HlrrU/+/Nt5NrEzgAU6TPpON29J8nRA j1CW38jYeqd8OPjQL4ybSWk16n+4NhAeWVghiYpjM8s8tGnSwI5Ai8fOdq3NhBkot9s3Q6 eiylcOVAWrDIiscVQm6wuIDIzeMlkUEuySCTeLCUW2AD45nu7C1jxM/MhhQgDpQjCxTYJw 39Z7xo8UWvy5QD71MNH2Xi/uyP3druI8DpIh0bEAVyAUSSvNmGFdnsPwchm04g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ3wW3n1gz1Sf for ; Mon, 08 Dec 2025 14:17:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30e2b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 14:17:47 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Minsoo Choo From: Mark Johnston Subject: git: e7c4eaff60ea - stable/15 - dtrace: remove sparc tests 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 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/15 X-Git-Reftype: branch X-Git-Commit: e7c4eaff60ea4c1392601bd97c4fc4bb89b99ea8 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 14:17:47 +0000 Message-Id: <6936de0b.30e2b.738635c1@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=e7c4eaff60ea4c1392601bd97c4fc4bb89b99ea8 commit e7c4eaff60ea4c1392601bd97c4fc4bb89b99ea8 Author: Minsoo Choo AuthorDate: 2025-11-29 19:02:42 +0000 Commit: Mark Johnston CommitDate: 2025-12-08 14:15:22 +0000 dtrace: remove sparc tests Signed-off-by: Minsoo Choo Reviewed by: markj MFC after: 1 week Pull Request: https://github.com/freebsd/freebsd-src/pull/1907 (cherry picked from commit d667cc77ba20082c16457ef4ae7f3060d9ab70b1) --- .../dtrace/test/tst/sparc/arrays/tst.uregsarray.d | 85 ------------- .../tst/sparc/pid/err.D_PROC_ALIGN.misaligned.d | 40 ------- .../tst/sparc/pid/err.D_PROC_ALIGN.misaligned.exe | 29 ----- .../cmd/dtrace/test/tst/sparc/pid/tst.br.d | 70 ----------- .../cmd/dtrace/test/tst/sparc/pid/tst.br.d.out | 23 ---- .../cmd/dtrace/test/tst/sparc/pid/tst.br.s | 81 ------------- .../cmd/dtrace/test/tst/sparc/pid/tst.branch.d | 78 ------------ .../cmd/dtrace/test/tst/sparc/pid/tst.branch.s | 63 ---------- .../cmd/dtrace/test/tst/sparc/pid/tst.embedded.d | 73 ------------ .../cmd/dtrace/test/tst/sparc/pid/tst.embedded.s | 59 --------- .../dtrace/test/tst/sparc/usdt/tst.tailcall.ksh | 132 --------------------- .../test/tst/sparc/ustack/annotated_helper.d | 32 ----- .../dtrace/test/tst/sparc/ustack/helper_helper.d | 32 ----- .../dtrace/test/tst/sparc/ustack/tst.annotated.c | 43 ------- .../dtrace/test/tst/sparc/ustack/tst.annotated.d | 35 ------ .../test/tst/sparc/ustack/tst.annotated.d.out | 4 - .../dtrace/test/tst/sparc/ustack/tst.circstack.d | 46 ------- .../dtrace/test/tst/sparc/ustack/tst.circstack.s | 44 ------- .../cmd/dtrace/test/tst/sparc/ustack/tst.helper.c | 81 ------------- .../cmd/dtrace/test/tst/sparc/ustack/tst.helper.d | 44 ------- .../dtrace/test/tst/sparc/ustack/tst.helper.d.out | 4 - .../dtrace/test/tst/sparc/ustack/tst.trapstat.ksh | 87 -------------- 22 files changed, 1185 deletions(-) diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/arrays/tst.uregsarray.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/arrays/tst.uregsarray.d deleted file mode 100644 index 3ef38983ad52..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/arrays/tst.uregsarray.d +++ /dev/null @@ -1,85 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - - -#pragma ident "%Z%%M% %I% %E% SMI" - - -/* - * ASSERTION: - * Positive test to make sure that we can invoke sparc - * ureg[] aliases. - * - * SECTION: User Process Tracing/uregs Array - * - * NOTES: This test does no verification - the value of the output - * is not deterministic. - */ - -#pragma D option quiet - -BEGIN -{ - printf("R_G0 = 0x%x\n", uregs[R_G0]); - printf("R_G1 = 0x%x\n", uregs[R_G1]); - printf("R_G2 = 0x%x\n", uregs[R_G2]); - printf("R_G3 = 0x%x\n", uregs[R_G3]); - printf("R_G4 = 0x%x\n", uregs[R_G4]); - printf("R_G5 = 0x%x\n", uregs[R_G5]); - printf("R_G6 = 0x%x\n", uregs[R_G6]); - printf("R_G7 = 0x%x\n", uregs[R_G7]); - printf("R_O0 = 0x%x\n", uregs[R_O0]); - printf("R_O1 = 0x%x\n", uregs[R_O1]); - printf("R_O2 = 0x%x\n", uregs[R_O2]); - printf("R_O3 = 0x%x\n", uregs[R_O3]); - printf("R_O4 = 0x%x\n", uregs[R_O4]); - printf("R_O5 = 0x%x\n", uregs[R_O5]); - printf("R_O6 = 0x%x\n", uregs[R_O6]); - printf("R_O7 = 0x%x\n", uregs[R_O7]); - printf("R_L0 = 0x%x\n", uregs[R_L0]); - printf("R_L1 = 0x%x\n", uregs[R_L1]); - printf("R_L2 = 0x%x\n", uregs[R_L2]); - printf("R_L3 = 0x%x\n", uregs[R_L3]); - printf("R_L4 = 0x%x\n", uregs[R_L4]); - printf("R_L5 = 0x%x\n", uregs[R_L5]); - printf("R_L6 = 0x%x\n", uregs[R_L6]); - printf("R_L7 = 0x%x\n", uregs[R_L7]); - printf("R_I0 = 0x%x\n", uregs[R_I0]); - printf("R_I1 = 0x%x\n", uregs[R_I1]); - printf("R_I2 = 0x%x\n", uregs[R_I2]); - printf("R_I3 = 0x%x\n", uregs[R_I3]); - printf("R_I4 = 0x%x\n", uregs[R_I4]); - printf("R_I5 = 0x%x\n", uregs[R_I5]); - printf("R_I6 = 0x%x\n", uregs[R_I6]); - printf("R_I7 = 0x%x\n", uregs[R_I7]); - printf("R_CCR = 0x%x\n", uregs[R_CCR]); - printf("R_PC = 0x%x\n", uregs[R_PC]); - printf("R_NPC = 0x%x\n", uregs[R_NPC]); - printf("R_Y = 0x%x\n", uregs[R_Y]); - printf("R_ASI = 0x%x\n", uregs[R_ASI]); - printf("R_FPRS = 0x%x\n", uregs[R_FPRS]); - exit(0); -} diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/err.D_PROC_ALIGN.misaligned.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/err.D_PROC_ALIGN.misaligned.d deleted file mode 100644 index 3e4662740816..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/err.D_PROC_ALIGN.misaligned.d +++ /dev/null @@ -1,40 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -/* - * ASSERTION: On SPARC, you can't trace misaligned offsets - * - * SECTION: User Process Tracing/pid Provider - * - * NOTES: - * - */ - -pid$1:a.out:main:7 -{ -} diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/err.D_PROC_ALIGN.misaligned.exe b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/err.D_PROC_ALIGN.misaligned.exe deleted file mode 100644 index 595db1de33da..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/err.D_PROC_ALIGN.misaligned.exe +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/ksh -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# - -# -# Copyright 2006 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" - -sleep 1000000 diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.d deleted file mode 100644 index cf1dc02ec47c..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.d +++ /dev/null @@ -1,70 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2007 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -/* - * ASSERTION: Trace all instructions in the function 'test' to verify that - * the branches are emulated correctly. - */ - -#pragma D option destructive -#pragma D option quiet - -pid$1:a.out:waiting:entry -{ - this->a = (char *)alloca(1); - *this->a = 1; - copyout(this->a, arg0, 1); -} - -pid$1:a.out:test: -{ - printf("%s:%s\n", probefunc, probename); -} - -syscall::rexit:entry -/pid == $1/ -{ - exit(0); -} - - -BEGIN -{ - /* - * Let's just do this for 5 seconds. - */ - timeout = timestamp + 5000000000; -} - -profile:::tick-4 -/timestamp > timeout/ -{ - trace("test timed out"); - exit(1); -} - diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.d.out b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.d.out deleted file mode 100644 index 8559271e4aac..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.d.out +++ /dev/null @@ -1,23 +0,0 @@ -test:entry -test:0 -test:4 -test:8 -test:c -test:10 -test:14 -test:18 -test:1c -test:20 -test:24 -test:28 -test:2c -test:30 -test:34 -test:38 -test:3c -test:40 -test:44 -test:48 -test:4c -test:return - diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.s b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.s deleted file mode 100644 index dfa7d27074f2..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.s +++ /dev/null @@ -1,81 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2007 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -#include - - DGDEF(__fsr_init_value) - .word 0 - - ENTRY(waiting) - retl - ldub [%o0], %o0 - SET_SIZE(waiting) - - ENTRY(test) - mov 1, %g1 - - brz %g1, 1f - nop - brlez %g1, 1f - nop - brlz %g0, 1f - nop - brlz %g1, 1f - nop - brnz %g0, 1f - sub %g0, 2, %g1 - brgz %g1, 1f - nop - brgz %g0, 1f - nop - brgez %g1, 1f - nop - - mov %g1, %o0 - -1: - retl - nop - SET_SIZE(test) - - ENTRY(main) - save %sp, -SA(MINFRAME + 4), %sp - stb %g0, [%fp - 4] -1: - call waiting - sub %fp, 4, %o0 - tst %o0 - bz 1b - nop - - call test - nop - - ret - restore %g0, %g0, %o0 - SET_SIZE(main) diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.branch.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.branch.d deleted file mode 100644 index cfcf0a715d1a..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.branch.d +++ /dev/null @@ -1,78 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -/* - * ASSERTION: - * - * SECTION: - * - * NOTES: - * - */ - -#pragma D option destructive - -pid$1:a.out:waiting:entry -{ - this->a = (char *)alloca(1); - *this->a = 1; - copyout(this->a, arg0, 1); -} - -pid$1:a.out:main:, -pid$1:a.out:other: -{ -} - -pid$1:a.out:bad:entry -{ - exit(1); -} - -syscall::rexit:entry -/pid == $1/ -{ - exit(0); -} - - -BEGIN -{ - /* - * Let's just do this for 5 seconds. - */ - timeout = timestamp + 5000000000; -} - -profile:::tick-4 -/timestamp > timeout/ -{ - trace("test timed out"); - exit(1); -} - diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.branch.s b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.branch.s deleted file mode 100644 index 3e6531f32190..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.branch.s +++ /dev/null @@ -1,63 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2007 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -#include - - DGDEF(__fsr_init_value) - .word 0 - - ENTRY(waiting) - retl - ldub [%o0], %o0 - SET_SIZE(waiting) - - ENTRY(main) - save %sp, -SA(MINFRAME + 4), %sp - stb %g0, [%fp - 4] -1: - call waiting - sub %fp, 4, %o0 - tst %o0 - bz 1b - nop - - restore - - tst %g0 - be other - nop - - ALTENTRY(bad) - illtrap - SET_SIZE(bad) - SET_SIZE(main) - - ENTRY(other) - retl - clr %o0 - SET_SIZE(other) diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.embedded.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.embedded.d deleted file mode 100644 index c484c3f0c721..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.embedded.d +++ /dev/null @@ -1,73 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -/* - * ASSERTION: - * - * SECTION: - * - * NOTES: - * - */ - -#pragma D option destructive - -pid$1:a.out:waiting:entry -{ - this->a = (char *)alloca(1); - *this->a = 1; - copyout(this->a, arg0, 1); -} - -pid$1:a.out:main:, -pid$1:a.out:inner: -{ -} - -syscall::rexit:entry -/pid == $1/ -{ - exit(0); -} - - -BEGIN -{ - /* - * Let's just do this for 5 seconds. - */ - timeout = timestamp + 5000000000; -} - -profile:::tick-4 -/timestamp > timeout/ -{ - trace("test timed out"); - exit(1); -} - diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.embedded.s b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.embedded.s deleted file mode 100644 index 612f0b926142..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.embedded.s +++ /dev/null @@ -1,59 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2007 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -#include - - DGDEF(__fsr_init_value) - .word 0 - - ENTRY(waiting) - retl - ldub [%o0], %o0 - SET_SIZE(waiting) - - ENTRY(main) - save %sp, -SA(MINFRAME + 4), %sp - stb %g0, [%fp - 4] -1: - call waiting - sub %fp, 4, %o0 - tst %o0 - bz 1b - nop - - restore - - ALTENTRY(inner) - nop - nop - nop - SET_SIZE(inner) - - retl - clr %o0 - SET_SIZE(main) diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/usdt/tst.tailcall.ksh b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/usdt/tst.tailcall.ksh deleted file mode 100644 index c3651ecf7eb4..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/usdt/tst.tailcall.ksh +++ /dev/null @@ -1,132 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# - -# -# Copyright 2007 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# ident "%Z%%M% %I% %E% SMI" - -# -# ASSERTION: Make sure USDT probes work as tail-calls on SPARC. -# - -if [ $# != 1 ]; then - echo expected one argument: '<'dtrace-path'>' - exit 2 -fi - -dtrace=$1 -DIR=/var/tmp/dtest.$$ - -mkdir $DIR -cd $DIR - -cat > test.s < - - DGDEF(__fsr_init_value) - .word 0 - - ENTRY(test) - save %sp, -SA(MINFRAME + 4), %sp - mov 9, %i0 - mov 19, %i1 - mov 2006, %i2 - call __dtrace_test___fire - restore - SET_SIZE(test) - - ENTRY(main) - save %sp, -SA(MINFRAME + 4), %sp - -1: - call test - nop - - ba 1b - nop - - ret - restore %g0, %g0, %o0 - SET_SIZE(main) -EOF - -cat > prov.d < timeout/ -{ - trace("test timed out"); - exit(1); -} -EOF - -status=$? - -cd / -/bin/rm -rf $DIR - -exit $status diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/annotated_helper.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/annotated_helper.d deleted file mode 100644 index 3577f86f8ee6..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/annotated_helper.d +++ /dev/null @@ -1,32 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#ident "%Z%%M% %I% %E% SMI" - -dtrace:helper:ustack: -{ - "@it's annotated" -} diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/helper_helper.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/helper_helper.d deleted file mode 100644 index 8abc47d006dc..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/helper_helper.d +++ /dev/null @@ -1,32 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -dtrace:helper:ustack: -{ - "" -} diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/tst.annotated.c b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/tst.annotated.c deleted file mode 100644 index 8cdf8abad5af..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/tst.annotated.c +++ /dev/null @@ -1,43 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -int -baz(void) -{ - return (8); -} - -int -main(int argc, char **argv) -{ - for (;;) { - baz(); - } - - return (0); -} diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/tst.annotated.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/tst.annotated.d deleted file mode 100644 index dd795bece03f..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/tst.annotated.d +++ /dev/null @@ -1,35 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * *** 375 LINES SKIPPED *** From nobody Mon Dec 8 14:17:48 2025 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 4dQ3wY1nQZz6Js3Q for ; Mon, 08 Dec 2025 14:17:49 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ3wX58cFz3qTh for ; Mon, 08 Dec 2025 14:17:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203468; 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=WJ8z+v4BK7Q5EeyI5zzd/S4w6rr6Wd1Ronuaf1RmUEA=; b=Bd47UxXHMFqy/KC5KwcmAzwnJklSnsKz+UCFLj4eCCUVg2ZaNH2UXdt0hyNnqgzeNewo/K SsCRrr27Xso3E4y1TGRyUaYtlCSjjnLN/YBGE5XY1LKwf6YMqtKAb0jNu405AfSBQYa6fz UACr2XQsMmAFgsg7dgLAcC41IqrSMPuJrJceoTNdVqvieGUxaX31tXbpvAV5t51Z+AgzIX FVGc0WVi5vLepSrK6zNepXFZC9zvmfpcLXm8TEtHIMuZ5fGofWKIBbWtNn6Vd9Q9bCgx3z 84pfQqH+Mp2otBkr2GVxrQKJ7e6JQj+P9AQt8CQaZq+hvIcEViGslscB/WBmoQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203468; 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=WJ8z+v4BK7Q5EeyI5zzd/S4w6rr6Wd1Ronuaf1RmUEA=; b=pm82SX9gD5QXr5CCmHP2Be5Ntbfq777qiWE2bbY8Pg4kVO++fhyULWR5TmZcO8C9U1JRJ+ 9CUTkh+2/aD6prvM4A/OO2tVTLS3MdQHIcwMO/W4nbndWM4yTAVUKhaTzdZBfXYlbpqqK4 V7K7X+/zP7PxHAThhjJu19hChlydXa+w9myfpG7HgIi7p9bfJA1YQCORnoXDvjdg1Nk4/x vG7NuALlFMlNPGF75O+Pobc45613VpfEAbFhPT/H3lwyNqsVXFXcmFJAv9m+JIukBPd5pO jCV+Kt2M0h1O3R7oHhZkos4sQjrAhnA+49CnP8280lfkP1tuOgbtntD2djf6ng== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765203468; a=rsa-sha256; cv=none; b=PAZ1sFG2wU3aZT/4Kql5t3zK7Nv8ZXEmhNyXlUA5lHyq2xl1FTX/1MQKHctQdOCS4F5bAY MNfAXeItmZPX31MJ9vsGRSt6MVxoIr2uCT2xDoGGGy0Cx75Cnwu9+MPdklnFF2TLYhTKty flunXm0MtR/8pQY9nWrjlcvkTRnSzZe+l/N5pLHSUNiJEwZ5lpkDib3/gdOMIuAtVBrgJ6 iOaQALBj4cZtZymaRc0QRo9Q+2Yr5+ukyViOXJ7ZG0tbup5HUe8M9ldlHwWhDZeUD/VkmG czjoaVcvMzVYA+EBIqHFpMPzrqPr5xd26rKdi/eaDmHaHjx4pNRl+wvXeA/5yw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ3wX4GSwzvN for ; Mon, 08 Dec 2025 14:17:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30347 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 14:17:48 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Minsoo Choo From: Mark Johnston Subject: git: 2553f68ff13f - stable/15 - libdtrace: remove sparc code 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 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/15 X-Git-Reftype: branch X-Git-Commit: 2553f68ff13f35d5e47f015e7094940b9cddb629 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 14:17:48 +0000 Message-Id: <6936de0c.30347.fe57813@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=2553f68ff13f35d5e47f015e7094940b9cddb629 commit 2553f68ff13f35d5e47f015e7094940b9cddb629 Author: Minsoo Choo AuthorDate: 2025-11-29 19:02:59 +0000 Commit: Mark Johnston CommitDate: 2025-12-08 14:15:24 +0000 libdtrace: remove sparc code Signed-off-by: Minsoo Choo Reviewed by: markj MFC after: 1 week Pull Request: https://github.com/freebsd/freebsd-src/pull/1907 (cherry picked from commit dfd35cd244c081dad9bc0fa602ee230e4ea1d5c2) --- .../opensolaris/lib/libdtrace/sparc/dt_isadep.c | 338 --------------------- .../contrib/opensolaris/lib/libdtrace/sparc/regs.d | 120 -------- 2 files changed, 458 deletions(-) diff --git a/cddl/contrib/opensolaris/lib/libdtrace/sparc/dt_isadep.c b/cddl/contrib/opensolaris/lib/libdtrace/sparc/dt_isadep.c deleted file mode 100644 index ed05275e7f83..000000000000 --- a/cddl/contrib/opensolaris/lib/libdtrace/sparc/dt_isadep.c +++ /dev/null @@ -1,338 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License, Version 1.0 only - * (the "License"). You may not use this file except in compliance - * with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ -/* - * Copyright 2005 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -#include -#include -#include -#include -#include - -#include -#include - -#define OP(x) ((x) >> 30) -#define OP2(x) (((x) >> 22) & 0x07) -#define COND(x) (((x) >> 25) & 0x0f) -#define A(x) (((x) >> 29) & 0x01) - -#define OP_BRANCH 0 - -#define OP2_BPcc 0x1 -#define OP2_Bicc 0x2 -#define OP2_BPr 0x3 -#define OP2_FBPfcc 0x5 -#define OP2_FBfcc 0x6 - -/*ARGSUSED*/ -int -dt_pid_create_entry_probe(struct ps_prochandle *P, dtrace_hdl_t *dtp, - fasttrap_probe_spec_t *ftp, const GElf_Sym *symp) -{ - ftp->ftps_type = DTFTP_ENTRY; - ftp->ftps_pc = (uintptr_t)symp->st_value; - ftp->ftps_size = (size_t)symp->st_size; - ftp->ftps_noffs = 1; - ftp->ftps_offs[0] = 0; - - if (ioctl(dtp->dt_ftfd, FASTTRAPIOC_MAKEPROBE, ftp) != 0) { - dt_dprintf("fasttrap probe creation ioctl failed: %s\n", - strerror(errno)); - return (dt_set_errno(dtp, errno)); - } - - return (1); -} - -int -dt_pid_create_return_probe(struct ps_prochandle *P, dtrace_hdl_t *dtp, - fasttrap_probe_spec_t *ftp, const GElf_Sym *symp, uint64_t *stret) -{ - - uint32_t *text; - int i; - int srdepth = 0; - - if ((text = malloc(symp->st_size + 4)) == NULL) { - dt_dprintf("mr sparkle: malloc() failed\n"); - return (DT_PROC_ERR); - } - - if (Pread(P, text, symp->st_size, symp->st_value) != symp->st_size) { - dt_dprintf("mr sparkle: Pread() failed\n"); - free(text); - return (DT_PROC_ERR); - } - - /* - * Leave a dummy instruction in the last slot to simplify edge - * conditions. - */ - text[symp->st_size / 4] = 0; - - ftp->ftps_type = DTFTP_RETURN; - ftp->ftps_pc = symp->st_value; - ftp->ftps_size = symp->st_size; - ftp->ftps_noffs = 0; - - for (i = 0; i < symp->st_size / 4; i++) { - /* - * If we encounter an existing tracepoint, query the - * kernel to find out the instruction that was - * replaced at this spot. - */ - while (text[i] == FASTTRAP_INSTR) { - fasttrap_instr_query_t instr; - - instr.ftiq_pid = Pstatus(P)->pr_pid; - instr.ftiq_pc = symp->st_value + i * 4; - - if (ioctl(dtp->dt_ftfd, FASTTRAPIOC_GETINSTR, - &instr) != 0) { - - if (errno == ESRCH || errno == ENOENT) { - if (Pread(P, &text[i], 4, - instr.ftiq_pc) != 4) { - dt_dprintf("mr sparkle: " - "Pread() failed\n"); - free(text); - return (DT_PROC_ERR); - } - continue; - } - - free(text); - dt_dprintf("mr sparkle: getinstr query " - "failed: %s\n", strerror(errno)); - return (DT_PROC_ERR); - } - - text[i] = instr.ftiq_instr; - break; - } - - /* save */ - if ((text[i] & 0xc1f80000) == 0x81e00000) { - srdepth++; - continue; - } - - /* restore */ - if ((text[i] & 0xc1f80000) == 0x81e80000) { - srdepth--; - continue; - } - - if (srdepth > 0) { - /* ret */ - if (text[i] == 0x81c7e008) - goto is_ret; - - /* return */ - if (text[i] == 0x81cfe008) - goto is_ret; - - /* call or jmpl w/ restore in the slot */ - if (((text[i] & 0xc0000000) == 0x40000000 || - (text[i] & 0xc1f80000) == 0x81c00000) && - (text[i + 1] & 0xc1f80000) == 0x81e80000) - goto is_ret; - - /* call to one of the stret routines */ - if ((text[i] & 0xc0000000) == 0x40000000) { - int32_t disp = text[i] << 2; - uint64_t dest = ftp->ftps_pc + i * 4 + disp; - - dt_dprintf("dest = %llx\n", (u_longlong_t)dest); - - if (dest == stret[0] || dest == stret[1] || - dest == stret[2] || dest == stret[3]) - goto is_ret; - } - } else { - /* external call */ - if ((text[i] & 0xc0000000) == 0x40000000) { - int32_t dst = text[i] << 2; - - dst += i * 4; - - if ((uintptr_t)dst >= (uintptr_t)symp->st_size) - goto is_ret; - } - - /* jmpl into %g0 -- this includes the retl pseudo op */ - if ((text[i] & 0xfff80000) == 0x81c00000) - goto is_ret; - - /* external branch -- possible return site */ - if (OP(text[i]) == OP_BRANCH) { - int32_t dst; - int baa; - - switch (OP2(text[i])) { - case OP2_BPcc: - dst = text[i] & 0x7ffff; - dst <<= 13; - dst >>= 11; - - baa = COND(text[i]) == 8 && A(text[i]); - break; - case OP2_Bicc: - dst = text[i] & 0x3fffff; - dst <<= 10; - dst >>= 8; - - baa = COND(text[i]) == 8 && A(text[i]); - break; - case OP2_BPr: - dst = (((text[i]) >> 6) & 0xc000) | - ((text[i]) & 0x3fff); - dst <<= 16; - dst >>= 14; - - baa = 0; - break; - case OP2_FBPfcc: - dst = text[i] & 0x7ffff; - dst <<= 13; - dst >>= 11; - - baa = COND(text[i]) == 8 && A(text[i]); - break; - case OP2_FBfcc: - dst = text[i] & 0x3fffff; - dst <<= 10; - dst >>= 8; - - baa = COND(text[i]) == 8 && A(text[i]); - break; - default: - continue; - } - - dst += i * 4; - - /* - * Interpret branches outside of the function's - * bounds as potential return sites. If the - * branch is a ba,a don't skip the instruction - * in the delay slot. - */ - if ((uintptr_t)dst >= - (uintptr_t)symp->st_size) { - if (baa) - goto is_ret_baa; - else - goto is_ret; - } - } - } - - continue; -is_ret: - i++; -is_ret_baa: - dt_dprintf("return at offset %x\n", i * 4); - ftp->ftps_offs[ftp->ftps_noffs++] = i * 4; - } - - free(text); - if (ftp->ftps_noffs > 0) { - if (ioctl(dtp->dt_ftfd, FASTTRAPIOC_MAKEPROBE, ftp) != 0) { - dt_dprintf("fasttrap probe creation ioctl failed: %s\n", - strerror(errno)); - return (dt_set_errno(dtp, errno)); - } - } - - - return (ftp->ftps_noffs); -} - -/*ARGSUSED*/ -int -dt_pid_create_offset_probe(struct ps_prochandle *P, dtrace_hdl_t *dtp, - fasttrap_probe_spec_t *ftp, const GElf_Sym *symp, ulong_t off) -{ - if (off & 0x3) - return (DT_PROC_ALIGN); - - ftp->ftps_type = DTFTP_OFFSETS; - ftp->ftps_pc = (uintptr_t)symp->st_value; - ftp->ftps_size = (size_t)symp->st_size; - ftp->ftps_noffs = 1; - ftp->ftps_offs[0] = off; - - if (ioctl(dtp->dt_ftfd, FASTTRAPIOC_MAKEPROBE, ftp) != 0) { - dt_dprintf("fasttrap probe creation ioctl failed: %s\n", - strerror(errno)); - return (dt_set_errno(dtp, errno)); - } - - return (1); -} - -/*ARGSUSED*/ -int -dt_pid_create_glob_offset_probes(struct ps_prochandle *P, dtrace_hdl_t *dtp, - fasttrap_probe_spec_t *ftp, const GElf_Sym *symp, const char *pattern) -{ - ulong_t i; - - ftp->ftps_type = DTFTP_OFFSETS; - ftp->ftps_pc = (uintptr_t)symp->st_value; - ftp->ftps_size = (size_t)symp->st_size; - ftp->ftps_noffs = 0; - - /* - * If we're matching against everything, just iterate through each - * instruction in the function, otherwise look for matching offset - * names by constructing the string and comparing it against the - * pattern. - */ - if (strcmp("*", pattern) == 0) { - for (i = 0; i < symp->st_size; i += 4) { - ftp->ftps_offs[ftp->ftps_noffs++] = i; - } - } else { - char name[sizeof (i) * 2 + 1]; - - for (i = 0; i < symp->st_size; i += 4) { - (void) sprintf(name, "%lx", i); - if (gmatch(name, pattern)) - ftp->ftps_offs[ftp->ftps_noffs++] = i; - } - } - - if (ioctl(dtp->dt_ftfd, FASTTRAPIOC_MAKEPROBE, ftp) != 0) { - dt_dprintf("fasttrap probe creation ioctl failed: %s\n", - strerror(errno)); - return (dt_set_errno(dtp, errno)); - } - - return (ftp->ftps_noffs); -} diff --git a/cddl/contrib/opensolaris/lib/libdtrace/sparc/regs.d b/cddl/contrib/opensolaris/lib/libdtrace/sparc/regs.d deleted file mode 100644 index 7c4bc0fac519..000000000000 --- a/cddl/contrib/opensolaris/lib/libdtrace/sparc/regs.d +++ /dev/null @@ -1,120 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License, Version 1.0 only - * (the "License"). You may not use this file except in compliance - * with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ -/* - * Copyright 2003 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -inline int R_G0 = 0; -#pragma D binding "1.0" R_G0 -inline int R_G1 = 1; -#pragma D binding "1.0" R_G1 -inline int R_G2 = 2; -#pragma D binding "1.0" R_G2 -inline int R_G3 = 3; -#pragma D binding "1.0" R_G3 -inline int R_G4 = 4; -#pragma D binding "1.0" R_G4 -inline int R_G5 = 5; -#pragma D binding "1.0" R_G5 -inline int R_G6 = 6; -#pragma D binding "1.0" R_G6 -inline int R_G7 = 7; -#pragma D binding "1.0" R_G7 - -inline int R_O0 = 8; -#pragma D binding "1.0" R_O0 -inline int R_O1 = 9; -#pragma D binding "1.0" R_O1 -inline int R_O2 = 10; -#pragma D binding "1.0" R_O2 -inline int R_O3 = 11; -#pragma D binding "1.0" R_O3 -inline int R_O4 = 12; -#pragma D binding "1.0" R_O4 -inline int R_O5 = 13; -#pragma D binding "1.0" R_O5 -inline int R_O6 = 14; -#pragma D binding "1.0" R_O6 -inline int R_O7 = 15; -#pragma D binding "1.0" R_O7 - -inline int R_L0 = 16; -#pragma D binding "1.0" R_L0 -inline int R_L1 = 17; -#pragma D binding "1.0" R_L1 -inline int R_L2 = 18; -#pragma D binding "1.0" R_L2 -inline int R_L3 = 19; -#pragma D binding "1.0" R_L3 -inline int R_L4 = 20; -#pragma D binding "1.0" R_L4 -inline int R_L5 = 21; -#pragma D binding "1.0" R_L5 -inline int R_L6 = 22; -#pragma D binding "1.0" R_L6 -inline int R_L7 = 23; -#pragma D binding "1.0" R_L7 - -inline int R_I0 = 24; -#pragma D binding "1.0" R_I0 -inline int R_I1 = 25; -#pragma D binding "1.0" R_I1 -inline int R_I2 = 26; -#pragma D binding "1.0" R_I2 -inline int R_I3 = 27; -#pragma D binding "1.0" R_I3 -inline int R_I4 = 28; -#pragma D binding "1.0" R_I4 -inline int R_I5 = 29; -#pragma D binding "1.0" R_I5 -inline int R_I6 = 30; -#pragma D binding "1.0" R_I6 -inline int R_I7 = 31; -#pragma D binding "1.0" R_I7 - -inline int R_CCR = 32; -#pragma D binding "1.0" R_CCR -inline int R_PC = 33; -#pragma D binding "1.0" R_PC -inline int R_nPC = 34; -#pragma D binding "1.0" R_nPC -inline int R_NPC = R_nPC; -#pragma D binding "1.0" R_NPC -inline int R_Y = 35; -#pragma D binding "1.0" R_Y -inline int R_ASI = 36; -#pragma D binding "1.0" R_ASI -inline int R_FPRS = 37; -#pragma D binding "1.0" R_FPRS -inline int R_PS = R_CCR; -#pragma D binding "1.0" R_PS -inline int R_SP = R_O6; -#pragma D binding "1.0" R_SP -inline int R_FP = R_I6; -#pragma D binding "1.0" R_FP -inline int R_R0 = R_O0; -#pragma D binding "1.0" R_R0 -inline int R_R1 = R_O1; -#pragma D binding "1.0" R_R1 From nobody Mon Dec 8 14:17:49 2025 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 4dQ3wZ2HDnz6JsMW for ; Mon, 08 Dec 2025 14:17:50 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ3wY5dTZz3qV2 for ; Mon, 08 Dec 2025 14:17:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203469; 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=mHfRNpubNSYP1oJJRZy7Z+joPKnYoLfZF6L5kVQdd5c=; b=pbRCyafKiL1QDJeK/VA3jTFVLRiY6DBMoycQiskPmQXuePiBQpgjdlcODp6GUbWk37SrXf EwWrgU5DT6o/7GLqgaod9i+a47jo8xyrP8KjpAbUbygI58HCUNkTET3Z27ntp+iHpb0d1q l/4cRB6EJ619VyxWZxgJkltgiNOn4ZjPTfLVOygSambj8I0Y0Rn0JR6uQ8x4/nUg3A+3B+ UADAqTAYYpeFnKvZxxgSahR4S4N8Iy7bzPF+Pmsypk5zBZXiSSAhzsvvPbzMCe13b05KKs GFf8EVVbaTPkvyy44+CHbST04U3vTlyPLo3IYsigvp2jC/lv5ddBJ/I+Wg/SWA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203469; 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=mHfRNpubNSYP1oJJRZy7Z+joPKnYoLfZF6L5kVQdd5c=; b=ij3MXM507UXbzTQDN6Q9RekBCcmbAdd0acMNBEq2jfMVXNkbJjKfHhhf/4EVUoeYr6X4wX tm0cOGoOiJU+T6y08yd16m0pjwEFsI/ZtIIzKbjQqbz9iLUKkC7if9BdVA7tdHJ0eZWuzw LbcVIrUmwsdYiXGn4pqQqDSiX3RKODIbBd4pvEqy+MjdMqd/cfqyo7DWxeXgjUeA9M1EYA +EIBaliE5zvNZ/rSMpt8og1/tWpztgunpWpVBhdscyKEYA6a3Iqr3LVXgSSE/Uit1HlX3C r9/8/joklB8l1FgFvr8B9Ue/wAjVRt8cJh/B1WFpjoJtYWC4MGB6L8gdV3dvQQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765203469; a=rsa-sha256; cv=none; b=C35gNIZqq70Q3l2LqBM5NMDwcbnMgcoiT43Ue1V56Gv7tjkJUUs5dLM3Xm6IhesQkA4yAq /iDZLaej+AtN5PCWNbtkjfkJ/VSIn6ridGrTQHZmcrW1tyBPaTdJNrWHwHvQd1qvdPTAls 8oFcfU2wnVbFKcKfi6u4ut7lPd2ZinbCwxFViHc2MyKWzXf0ptfnwSHU4yELIFg3fXBaPR 6nDGa1U+XyAi3kHkcXVbdFoUkH4mVYh2CQ5WW7mCsK8wnyRNxIIewolOk3EZEeJ9i+wZ3f S0u8XrGwFotBU9t7PrnwY52gidzOs2gfm/iz71gA81Qt6skPdKqNOITFXwCsTA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ3wY52njz1Qh for ; Mon, 08 Dec 2025 14:17:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 304ab by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 14:17:49 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Minsoo Choo From: Mark Johnston Subject: git: d77f00f7e585 - stable/15 - opensolaris: remove references to sparc 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 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/15 X-Git-Reftype: branch X-Git-Commit: d77f00f7e585d6efe819f008f79851d8d2cbdd9c Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 14:17:49 +0000 Message-Id: <6936de0d.304ab.386d545c@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=d77f00f7e585d6efe819f008f79851d8d2cbdd9c commit d77f00f7e585d6efe819f008f79851d8d2cbdd9c Author: Minsoo Choo AuthorDate: 2025-11-30 18:56:26 +0000 Commit: Mark Johnston CommitDate: 2025-12-08 14:15:26 +0000 opensolaris: remove references to sparc Signed-off-by: Minsoo Choo Reviewed by: markj MFC after: 1 week Pull Request: https://github.com/freebsd/freebsd-src/pull/1907 (cherry picked from commit d11ff7f93386f36a385ea01498fd9ff9ff3862ce) --- .../cmd/dtrace/test/cmd/jdtrace/exception.lst | 1 - .../cmd/dtrace/test/tst/common/safety/tst.vahole.d | 4 ---- .../opensolaris/cmd/dtrace/test/tst/common/usdt/prov.h | 9 --------- cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c | 13 ------------- .../opensolaris/lib/libdtrace/common/dt_program.c | 17 +++-------------- cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c | 4 ---- 6 files changed, 3 insertions(+), 45 deletions(-) diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/jdtrace/exception.lst b/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/jdtrace/exception.lst index 19fc3aca51c2..035dd5cb694e 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/jdtrace/exception.lst +++ b/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/jdtrace/exception.lst @@ -66,7 +66,6 @@ common/usdt/tst.reeval.ksh common/usdt/tst.static.ksh common/usdt/tst.static2.ksh common/usdt/tst.user.ksh -sparc/usdt/tst.tailcall.ksh common/pid/tst.provregex3.ksh common/pid/tst.provregex4.ksh diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/safety/tst.vahole.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/safety/tst.vahole.d index 2ef40a5ac474..a285509316d9 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/safety/tst.vahole.d +++ b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/safety/tst.vahole.d @@ -38,11 +38,7 @@ fbt::: { n++; -#ifdef __sparc - trace(*(int *)0x8000000000000000 ^ rand()); -#else trace(*(int *)(`kernelbase - 1)); -#endif } dtrace:::ERROR diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/usdt/prov.h b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/usdt/prov.h index e29654edb672..bebf9754f691 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/usdt/prov.h +++ b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/usdt/prov.h @@ -15,21 +15,12 @@ extern "C" { #define TESTER_ENTRY() \ __dtrace_tester___entry() -#ifndef __sparc #define TESTER_ENTRY_ENABLED() \ __dtraceenabled_tester___entry() -#else -#define TESTER_ENTRY_ENABLED() \ - __dtraceenabled_tester___entry(0) -#endif extern void __dtrace_tester___entry(void); -#ifndef __sparc extern int __dtraceenabled_tester___entry(void); -#else -extern int __dtraceenabled_tester___entry(long); -#endif #else diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c index 40200771fd4d..f2352ffe832a 100644 --- a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c +++ b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c @@ -1263,19 +1263,6 @@ alloc: else if (flags & DTRACE_O_ILP32) dtp->dt_conf.dtc_ctfmodel = CTF_MODEL_ILP32; -#ifdef __sparc - /* - * On SPARC systems, __sparc is always defined for - * and __sparcv9 is defined if we are doing a 64-bit compile. - */ - if (dt_cpp_add_arg(dtp, "-D__sparc") == NULL) - return (set_open_errno(dtp, errp, EDT_NOMEM)); - - if (dtp->dt_conf.dtc_ctfmodel == CTF_MODEL_LP64 && - dt_cpp_add_arg(dtp, "-D__sparcv9") == NULL) - return (set_open_errno(dtp, errp, EDT_NOMEM)); -#endif - #ifdef illumos #ifdef __x86 /* diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_program.c b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_program.c index 232a3723b11d..ca7bf407290f 100644 --- a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_program.c +++ b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_program.c @@ -441,12 +441,8 @@ dt_header_decl(dt_idhash_t *dhp, dt_ident_t *idp, void *data) return (dt_set_errno(dtp, errno)); if (fprintf(infop->dthi_out, - "#ifndef\t__sparc\n" - "extern int __dtraceenabled_%s___%s(void);\n" - "#else\n" - "extern int __dtraceenabled_%s___%s(long);\n" - "#endif\n", - infop->dthi_pfname, fname, infop->dthi_pfname, fname) < 0) + "extern int __dtraceenabled_%s___%s(void);\n", + infop->dthi_pfname, fname) < 0) return (dt_set_errno(dtp, errno)); return (0); @@ -509,15 +505,8 @@ dt_header_probe(dt_idhash_t *dhp, dt_ident_t *idp, void *data) if (!infop->dthi_empty) { if (fprintf(infop->dthi_out, - "#ifndef\t__sparc\n" - "#define\t%s_%s_ENABLED() \\\n" - "\t__dtraceenabled_%s___%s()\n" - "#else\n" "#define\t%s_%s_ENABLED() \\\n" - "\t__dtraceenabled_%s___%s(0)\n" - "#endif\n", - infop->dthi_pmname, mname, - infop->dthi_pfname, fname, + "\t__dtraceenabled_%s___%s()\n", infop->dthi_pmname, mname, infop->dthi_pfname, fname) < 0) return (dt_set_errno(dtp, errno)); diff --git a/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c b/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c index 42faaad65db5..815cc5478473 100644 --- a/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c +++ b/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c @@ -1360,11 +1360,7 @@ typedef struct fp_size_map { static const fp_size_map_t fp_encodings[] = { { { 4, 4 }, { CTF_FP_SINGLE, CTF_FP_CPLX, CTF_FP_IMAGRY } }, { { 8, 8 }, { CTF_FP_DOUBLE, CTF_FP_DCPLX, CTF_FP_DIMAGRY } }, -#ifdef __sparc - { { 16, 16 }, { CTF_FP_LDOUBLE, CTF_FP_LDCPLX, CTF_FP_LDIMAGRY } }, -#else { { 12, 16 }, { CTF_FP_LDOUBLE, CTF_FP_LDCPLX, CTF_FP_LDIMAGRY } }, -#endif { { 0, 0 }, { 0, 0, 0 } } }; From nobody Mon Dec 8 14:17:50 2025 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 4dQ3wb0dWQz6JsQY for ; Mon, 08 Dec 2025 14:17:51 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ3wZ68lxz3qDq for ; Mon, 08 Dec 2025 14:17:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203470; 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=narg/LG3w1uqG55d88H5+qPYf4h86Xr5uckp5gfjfeA=; b=fCcPxdhizpxEKe27Y7VbIWQ0bOHe+A3iygAUYyTixd/bEX+Jd/qOtPRmUe8etuD95NLWkr M/wqlImcnxRFpNjigB9vhoyGTgtp6StrK5NaC175NyCkOzOJq42ATeM5OWNsy33JnNgpCJ 5J3RzoI4dTdwP+i8ZPvW7N1Xvc3QPPj4vWHuqY//0gv+M2jeAc2vsUEliEsHaBfNEBr2xv Z6xqlH1r4u3uiM0BDWdAdgRiIJqyF2Mv2yYUQNllPYR2bXhz0cP7tKVH1T52LEbicUCbQ5 uKR1tYw2p9RxPPdwUoTxHsPRQTV6vk3r/v55NUk+sxxbBc/C6H8DMtPMz0c78Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203470; 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=narg/LG3w1uqG55d88H5+qPYf4h86Xr5uckp5gfjfeA=; b=W/Z70bIgdgyjaFJEI6WakfZ8iQj6ZByfBvcOtsFto+j/9rwovhoZFdCCzXLn7rlM6Jkz1q pSjbaWyMxME71IBBCu1hnzKBkhIZsd/bEAB88szyHyolkyUEm77rbtX+IYmpwNagoS+F3d BuCqmWxxrxsCvMEombDm1xvA9svMoUGsfAbEaWRADDtek186Sh8u/nMEgK0QOfaN3mFvfQ gM5+d707UnNwwijjh6NgrzOKx+OvxLrjDYYbSuDqJtvYuU4qL1fjTTS38UaTPb++IydCw3 PF63a+JuxGxIyCOhx1l9jCTMnRGmfwCFXdQGrfjvUwrcNkfGpR6z+RWcET86dA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765203470; a=rsa-sha256; cv=none; b=s8IjY25mgrTew3IxfpMRdY+vq10hzFMHpCQ6YRjYaJa5Ygas8AKC0qXMy/h6OjCSeIFfEE LO+m+EoS4fnKCfGX6l9Pgvujrv/ejCipHozhzVxIfKxzUhI+EG3NqujR4uqhn0GzXlnopm oqBSwEPB8NMZytN5g6LrQ1+gKDOSkKppspekrV86Nc61406UmYBxpWXS4uPVxrdQlIsl03 3q9dY+xN/w7AEGvSE0q7YhNTgZo/JGeChlx13S7ZX5OomUK9rPalhLEP3HXa+oPq1SfjSv +xLpXpxKsql39Ap3FUhSPEtsoaGlazQycExlhzFKUXm1y9DupgRZ/EI0nVuN6g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ3wZ5m8zzwy for ; Mon, 08 Dec 2025 14:17:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2eedb by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 14:17:50 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Minsoo Choo From: Mark Johnston Subject: git: 955555c57de0 - stable/15 - dtrace.1: remove sparc 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 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/15 X-Git-Reftype: branch X-Git-Commit: 955555c57de041b452df0d1d4f72071cb2b4af2c Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 14:17:50 +0000 Message-Id: <6936de0e.2eedb.20f56f9@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=955555c57de041b452df0d1d4f72071cb2b4af2c commit 955555c57de041b452df0d1d4f72071cb2b4af2c Author: Minsoo Choo AuthorDate: 2025-11-30 19:01:14 +0000 Commit: Mark Johnston CommitDate: 2025-12-08 14:15:27 +0000 dtrace.1: remove sparc Signed-off-by: Minsoo Choo Reviewed by: markj MFC after: 1 week Pull Request: https://github.com/freebsd/freebsd-src/pull/1907 (cherry picked from commit 507cfc42799f38d6960cd3a14eb66294c5fda4ff) --- cddl/contrib/opensolaris/cmd/dtrace/dtrace.1 | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/cddl/contrib/opensolaris/cmd/dtrace/dtrace.1 b/cddl/contrib/opensolaris/cmd/dtrace/dtrace.1 index 66f0e432a3b0..41f084cf85dd 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/dtrace.1 +++ b/cddl/contrib/opensolaris/cmd/dtrace/dtrace.1 @@ -20,7 +20,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 12, 2025 +.Dd November 30, 2025 .Dt DTRACE 1 .Os .Sh NAME @@ -837,10 +837,6 @@ __unix .It __SVR4 .It -__sparc (on SPARC systems only) -.It -__sparcv9 (on SPARC systems only when 64-bit programs are compiled) -.It __i386 (on x86 systems only when 32-bit programs are compiled) .It __amd64 (on x86 systems only when 64-bit programs are compiled) From nobody Mon Dec 8 14:17:51 2025 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 4dQ3wc1RCLz6JsHQ for ; Mon, 08 Dec 2025 14:17:52 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ3wb72vJz3qDy for ; Mon, 08 Dec 2025 14:17:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203472; 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=pc9XEuP26YFRzMqlwXf5uv0fvPrgxLZQQpL9yxWT1IA=; b=xSWljNDPrU7jMyc5j9p7ylJS1RMZM2xneFdznUYOaaPGJHYeYNxFGPyMaXNytuWXkpol7p WI0+DJzuCv2fqYUR1xbLKh5bKyoiNm2vKOTWznJEfjqb+wpclOnh9SJjI0BjtiCBGciewH TbyNFMJfBghpxM58E4TZ6s7BJebsJLRexnoHKrdqMLfB0+l8ZbHjlHrxylTOOflThZ8NcR Z70xD1qO5IPeNR9m0DJAFnNlkl4fvBSKKixijti+hnYZJ2bsbMCpb2dndmO5vxhGDeT00b OOOsRwvHRfIhukgQ3Co9ObQ5e2ZSVXHoAy/v85LecG6J8jmmHUmgvwC99Bajsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203472; 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=pc9XEuP26YFRzMqlwXf5uv0fvPrgxLZQQpL9yxWT1IA=; b=yELHgqkr6AeEez2t5ozzfzGgGjW9iR2gocUik6UAwU7dDQ8Q3R4j/L4hHla4pkS5WVc6/4 wU1FOeaEkMrHN3FUDxefw+fSmPkdDUDVoSCtiqHm8NLynqBKUr9PD1n7TlvC8WEBz9TGcT C8JHuFQWlT4Om6Tvqp98462BaGeDXkaIRPENFVZyI5GhfbUMAAJutFWjyTogq60JBtDn06 dUUHP6pCvXdbpifDLPFnXMx+uz8wGQFKg7iMu+9CKUkfZpi/GLyj+A4WTPXHsPvbrqtHDY 3Ji/rB7kPHAZKcNsqQ9G6N5nODD0riMYGGU0s9r3cOU86PVegWBTIC516CZdHA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765203472; a=rsa-sha256; cv=none; b=QQVLe78RMnqfFR4scuqzrCydAtQrXmS8q3J6l/0sNjJyMO30Mezlrr5XGPoDh4u0z2Vd/+ stC16Xbf6UlPRWBuYNJpSeaeR7uepgDQpXOeHRcptfRwL0xUG1QWdYlu/Mbxt4sEkY1ZpE 6Jls7XnZwhoXKcCzsilFOcXea5oEavaeRo94OpTPB8G3OCk9RUYrDtU8wMzQjQJwYTMd0h 2eV9anYSnDZpP3M21CIj3XjIPsdvHjuwh/IGpBJ9M/hWA9qhmh7Ent670tP/ItsKD2awRR Vw0Rh/+1VPR0IrXh3LL2e7hr7N0cjXlgFgddhWSN9X7VbHBdgKLsbIAhU4ea0A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ3wb6Z0Cz1Qj for ; Mon, 08 Dec 2025 14:17:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2f03d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 14:17:51 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 78fcd8c4e3d0 - stable/15 - dtrace tests: Update names after the syscall::exit probe was renamed 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 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/15 X-Git-Reftype: branch X-Git-Commit: 78fcd8c4e3d0efc3298f79c866fb9db60bf4281d Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 14:17:51 +0000 Message-Id: <6936de0f.2f03d.5ab437e1@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=78fcd8c4e3d0efc3298f79c866fb9db60bf4281d commit 78fcd8c4e3d0efc3298f79c866fb9db60bf4281d Author: Mark Johnston AuthorDate: 2025-12-01 13:46:20 +0000 Commit: Mark Johnston CommitDate: 2025-12-08 14:15:27 +0000 dtrace tests: Update names after the syscall::exit probe was renamed MFC after: 1 week Fixes: e7e964cb2ebd ("syscalls: normalize _exit(2) declerations") (cherry picked from commit 17fd7780fbbb59932b72b5dac6bda93f67743b83) --- cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.vfork.d | 2 +- cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.d | 2 +- cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.d | 2 +- cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise3.d | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.vfork.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.vfork.d index e8fc9b4dfba1..1324d4eaec4f 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.vfork.d +++ b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.vfork.d @@ -54,7 +54,7 @@ pid$1:a.out:go: exit(1); } -syscall::exit:entry +syscall::_exit:entry /pid == $1/ { exit(0); diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.d index 30bf5ae4bf0a..64fe885b6124 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.d +++ b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.d @@ -54,7 +54,7 @@ syscall::getpid:entry timeout = timestamp + 500000000; } -syscall::exit:entry +syscall::_exit:entry /pid == $1/ { exit(0); diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.d index 7d18442d7408..8b08bface705 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.d +++ b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.d @@ -54,7 +54,7 @@ syscall::getpid:return timeout = timestamp + 500000000; } -syscall::exit:entry +syscall::_exit:entry /pid == $1/ { exit(0); diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise3.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise3.d index 30bf5ae4bf0a..64fe885b6124 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise3.d +++ b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise3.d @@ -54,7 +54,7 @@ syscall::getpid:entry timeout = timestamp + 500000000; } -syscall::exit:entry +syscall::_exit:entry /pid == $1/ { exit(0); From nobody Mon Dec 8 14:21:16 2025 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 4dQ40X6GsFz6Jsbw for ; Mon, 08 Dec 2025 14:21: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ40X5BRrz3tr8 for ; Mon, 08 Dec 2025 14:21:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203676; 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=gDq2S1S1YYlkkAvf1+5We0rxNBiQYXQIZduHbl/7Oz4=; b=JNzy521z8CRijx/myIaear9NrJGUd7n1P/VLHMyZy5NbLxFLFx6rkbjp3h0lTcDoDEkpxe phhAFBqDkIOYDeB/psPqcV6LERFP6iuSKRH1HSc4e5S/LKnZqLcyXhHdEKtoSJ0FZGjnd2 fi0Zc2/Mh9bNGpGgYFpw+Q+ArQ8r1eYMGr9XvNYfGf48A46QEHiRVT/eufkgZriHTMOPHZ DJ20EXSzwKJfuqAq0vfs2qUtqdin6WYZRxPBgTBfNC3wBPELVknCt3U3HJRwUHl78B29FL rsKJ20HTr21JcS1BhWh7FkPX8ep1sb/Md+utzjm2FnBXFP2aVxv8oZcwhS03UQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765203676; 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=gDq2S1S1YYlkkAvf1+5We0rxNBiQYXQIZduHbl/7Oz4=; b=dGVqh0y4v0Cdfci/s6IVjf5mMtHNSnvIviAny4lvZvMh4DsKqe8K9IB5R2GggKvteQbOAB g/CNMU5p4wyl+TUM9bCCWYowl0UPfs/iTfgaaxA6tBiYSAdjh5EDzCn7CHSnoS86Cw8rpq oFYKVRsj9R3J5X97ITd2w9+dIhlRSdcKiLR0W4rvuasrAnavg+3r684NAOyCDAVEmCYnTk Ex3CE8/vafykw3UXNobtupDgoLQll5ruX07yTmhHHdx/2YgrTHi2Yoxie6eFIp634Tq+jQ fi84VPqnxICjxSwsDG7oPmLuuOpYp2Hi2+BM8gzvgpsoNIiPKwwbG6K8oGu7/g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765203676; a=rsa-sha256; cv=none; b=RVZg22Nn133UQWw31SmxhyvsSt8P0IRmUJmSsiLY79/a7JFwDsZrxpNil6mJm77rtuAjaL VgyIwnGbPTyE3U2z6YnfZDwxON8QIqr/lad5mTH7vDSLb9K/HjE3XUL855WzvgbkUsuXdm S6DSs8jVXW8/+usR+EHgHoojJU3pNEyxCGXyt/+cVykMXkdMV6zkg/RQvV9/VBzqfLQSu+ pdkTPx7kB5noOjt7DHHCGdg0+D7+okiNr/YFwZWr6f7kS2dMLrHKARdc0rgXUSO39g0qZR vKwtnNzmPkeKUGWgZ/ut7nrkqOTQBwP6iwlKvHW8B+QgQwwLtZy/xiYfBWjBeg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ40X4pDSz1Nc for ; Mon, 08 Dec 2025 14:21:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3007c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 14:21:16 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 3be3d3522967 - stable/15 - certctl.8: Prefer the new TRUSTDESTDIR variable 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 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: 3be3d352296706206302c3ffb0b812b48cd2774d Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 14:21:16 +0000 Message-Id: <6936dedc.3007c.56a193f5@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=3be3d352296706206302c3ffb0b812b48cd2774d commit 3be3d352296706206302c3ffb0b812b48cd2774d Author: Jose Luis Duran AuthorDate: 2025-12-05 17:36:49 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-08 14:19:45 +0000 certctl.8: Prefer the new TRUSTDESTDIR variable With the reimplementation in C of certctl, the environment variable previously known as CERTDESTDIR was renamed to TRUSTDESTDIR for consistency. Although the previous variable is still valid, prefer the new one, as it is described in the manual page, while the old one is not. Reviewed by: des MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54044 (cherry picked from commit 5c7176bba30ab3b250177cba3923bdc84b68a7c7) --- usr.sbin/certctl/certctl.8 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/usr.sbin/certctl/certctl.8 b/usr.sbin/certctl/certctl.8 index e58da8e7ff84..2d38ce020c04 100644 --- a/usr.sbin/certctl/certctl.8 +++ b/usr.sbin/certctl/certctl.8 @@ -24,7 +24,7 @@ .\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd October 9, 2025 +.Dd December 3, 2025 .Dt CERTCTL 8 .Os .Sh NAME @@ -106,7 +106,7 @@ in and all untrusted certificates in .Ev UNTRUSTPATH . A copy of each trusted certificate is placed in -.Ev CERTDESTDIR +.Ev TRUSTDESTDIR and each untrusted certificate in .Ev UNTRUSTDESTDIR . In addition, a bundle containing the trusted certificates is placed in From nobody Mon Dec 8 15:44:08 2025 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 4dQ5r90PnRz6K01X for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5r84bdNz43kQ for ; Mon, 08 Dec 2025 15:44:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208648; 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=Cf9fbFlXSv9TnobXZt1XDlmvZSa5l+9AqDjjey5F8l0=; b=X9AfrpY+izYYp7H7tUiNPfiilIVEQbhfwMvJhVPfJ61BtMEXna6EPEw0Ejno6GGUvzeVtv j2EjciVDEZjo2pA0Jy/6A/dO1lrNGowgT5bhUGUkW43+p0AHb1tKAoLoVc/foZLpaHHADp c1UAiD09hbSBz9Af6eu75wHMVfLG5wbWbrDeGYIDolyOQeAxTc6lG6pVVXXMG49YcUf41r Lu1+1EAS7R/nVKLKzUKwxZoHpcUVKBgW07PK+wmax9EU1KGaVqzku354TWUIVRbU/vNxnL T8yfaxdjGsHV2VXjug0TkwPwSg/bIN6YKTfNZ7QLgARl3yqJAlGvmJ9mrKPt4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208648; 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=Cf9fbFlXSv9TnobXZt1XDlmvZSa5l+9AqDjjey5F8l0=; b=lQ/yLgkkbEEK1UZNnnBjD8hhg/0ake8a/Q56T3R+44ndaKbL0lgKzF0RjjRKDqkignr8C/ TjT0qcdomL+jQcgPIaniaR2EJEnPLaMFm39x+sIzfBZEezvch3B+gkaaiZMIhoOxneGtkV lHHZhRF7uVS2AKmnRz3IULg4khbuiE9QDs/bZ6X06GAZdE/E/RMAmqoiiiDh8L2vcYXQX3 DU3Ab3xzegmUOsDvqkSJjf2dF7n0Ru0M4gwhcMNEZkJrl1S7uZC2V622zEUyj4u4bvd/0m UuLyQBp8lHWvlT8HsVmZeKb0PWQqrawRjSy0MLp2QID5Ukc8TVwynl4cKHINzA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208648; a=rsa-sha256; cv=none; b=jZkY5Am/wFQVy2PYrDpO+zwBzgJGyfEx2ln2zE8H2jwO+9gg7LWrVcDClt4TvzS0fPwI+I qawCOFBkuambKVGvB63q3Bb22nDMUDcuZDx4HZd73GrEc0dPAOX+S0UhinTuXO6zSnLpZ5 GiXfz9gbZVQ8thjK00DOZdI3Cvt3Pq96JLKMIBxIKdffY65hPNtzDZSFQVopOUuy6GsVt1 FjwJu5fvIVQtLIE3Z3yljKo8q+r6jwFTMpk8MgeGpN5/jaaW/OTGcNxJJV015p3CHNT5cf JZiB/Z9NVLsgUowKZDuAxs0LlPVKG2WQwg/FLLlILNMuvejZMeXH2z5ob1zsww== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5r841cqz3hW for ; Mon, 08 Dec 2025 15:44:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 36d5a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:08 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: d389d1ac1699 - stable/15 - LinuxKPI: 802.11: initialize the passed in chandef in cfg80211_chandef_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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: d389d1ac1699aea517a18cf73486e7077cfbda46 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:08 +0000 Message-Id: <6936f248.36d5a.519688a9@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=d389d1ac1699aea517a18cf73486e7077cfbda46 commit d389d1ac1699aea517a18cf73486e7077cfbda46 Author: Bjoern A. Zeeb AuthorDate: 2025-11-17 22:54:07 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:50 +0000 LinuxKPI: 802.11: initialize the passed in chandef in cfg80211_chandef_create cfg80211_chandef_create() gets passed a pointer to a cfg80211_chan_def. It seems that several users are passing in an uninitialized variable from the stack and expect cfg80211_chandef_create() to initialize it. Run memset() on the struct, which for all callers currently seems to do the right thing, to avoid later accesses to uninitialized struct members like "punctured". Reported by: CI (gcc build) Sponsonred by: The FreeBSD Foundation (cherry picked from commit 640205bc22c8b2bd31c766f4d0c409c183a8b8dc) --- sys/compat/linuxkpi/common/include/net/cfg80211.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/net/cfg80211.h b/sys/compat/linuxkpi/common/include/net/cfg80211.h index f769cfdd4075..305026b34451 100644 --- a/sys/compat/linuxkpi/common/include/net/cfg80211.h +++ b/sys/compat/linuxkpi/common/include/net/cfg80211.h @@ -1450,7 +1450,7 @@ cfg80211_chandef_create(struct cfg80211_chan_def *chandef, KASSERT(chandef != NULL, ("%s: chandef is NULL\n", __func__)); KASSERT(chan != NULL, ("%s: chan is NULL\n", __func__)); - /* memset(chandef, 0, sizeof(*chandef)); */ + memset(chandef, 0, sizeof(*chandef)); chandef->chan = chan; chandef->center_freq1 = chan->center_freq; /* chandef->width, center_freq2, punctured */ From nobody Mon Dec 8 15:44:09 2025 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 4dQ5r96bVFz6JyY4 for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5r95D3Kz43bY for ; Mon, 08 Dec 2025 15:44:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208649; 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=D6PMoLRMW+opYrIUJlS6YmuHoo/cAKoTo49SmoFy+E4=; b=EY4PQMhvA1cJqPCe1mA497+1fnbpKi1I4/VLTUCCLYK/ad2duaFVvPniofqzQZ77tnxpZ1 32EWnQraKPdv//Ia3DhC+8NcRx/fmb6WaRJpSFJo/cFbyj9fYOtT696jV4f9IOh3Ei3YC0 tq/NK0UbXaCPo41feZe1IUsnSohY6L8GLl0MSUckov7nEPGtrCmbReE9EpFoXtCrQfcvM6 ZHoBaPlKBZ2lfHS7WjM1HwbT3gESyC3CRxy2UpdqU+E5QaVoTWmQKjAVe8Udn3FsFdAMLa /VkOY2Iu03tswTHWjjTCcyBYa6Mz8r2nQhTPgAM+3UmClF0NoZKwQ4AGpQRrfQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208649; 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=D6PMoLRMW+opYrIUJlS6YmuHoo/cAKoTo49SmoFy+E4=; b=ErQBjTASHiFoeRR8ccVnkQVbBzDwOdjm+HF/wVwFgD5sbFYgNEfijURWE7R9E0ZR6bYGlK 2q4OvjdKumv/EH7AKMWk1AmenrjodcGXn+wGdsv239sFWWuZgTlDKHENj+FsrrPGjmKO/T 3Cf/kfNf1qfGUa8UAzszqgvlWli7M2uX7TKaIQUUjOXCQLU5FkSuHJNkIaZp8E2QzG6vpf m2RjpC3dqMxnKjxXjgg9Obk3X2VOB+AawjrrOfzC9X/Fy+MW2CBsVgh34os48fBr+AlDQW ZZjQyQo4jKydhEAakj6SFCGzrVO6WY84ja1loLulyaQWytTQiioNB2tU1sExMg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208649; a=rsa-sha256; cv=none; b=CoX8yHYnZ5sOXFIo7IInQUgX0Cd8Tl4EQwRN2QsSVuSRt4Lwshj4VeFxqyuHSj3NdJpcXf TUsOrLWLAjtGGLEg0ElNAIgXDuQuLjc0eNhyfm9deJ9WVCgPBRFqZmFZU+YhOOkK7glW6/ ngQZtxDxPnavZ6Zqk2hVoAa7nAt+DF6vNyYyJx/VpKy+Kcq/JGukUy2arZuHY5ChSQLzKf osCEfjUzj55Nw/FddUluH+vJu/abuO3XgkWd7W0+o5lSSReFg5aI4wrm7e4CkfVRFyE/gR 088fG3LkAODGFAFqiBQCKw5QjbHgd79zGELqoAnptUfYWR69QwpLOGklO3U7Bw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5r94qZwz3M4 for ; Mon, 08 Dec 2025 15:44:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 38759 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:09 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 4dde7d280a5f - stable/15 - iwlwifi/mld: only get tid after checking that it is a dataqos frame 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 4dde7d280a5f2a0218632b995d916fb1ae10cd7f Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:09 +0000 Message-Id: <6936f249.38759.9e849a8@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=4dde7d280a5f2a0218632b995d916fb1ae10cd7f commit 4dde7d280a5f2a0218632b995d916fb1ae10cd7f Author: Bjoern A. Zeeb AuthorDate: 2025-11-19 02:13:15 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:50 +0000 iwlwifi/mld: only get tid after checking that it is a dataqos frame Like we did for mvm, only get the tid after all the other checks are done by the function in order to not trigger an assert. Linux will likely return a random value there which later is not used as the driver does an early return. In LinuxKPI we do check that the frame assumptions hold up, which does not go so well for a random frame. Sponsored by: The FreeBSD Foundation PR: 290808 (cherry picked from commit 9040277864ab28cabfc53f238e900bc19ac75d7e) --- sys/contrib/dev/iwlwifi/mld/agg.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sys/contrib/dev/iwlwifi/mld/agg.c b/sys/contrib/dev/iwlwifi/mld/agg.c index 3a346bcd6665..e3bc8767297a 100644 --- a/sys/contrib/dev/iwlwifi/mld/agg.c +++ b/sys/contrib/dev/iwlwifi/mld/agg.c @@ -201,7 +201,11 @@ iwl_mld_reorder(struct iwl_mld *mld, struct napi_struct *napi, struct iwl_mld_link_sta *mld_link_sta; u32 reorder = le32_to_cpu(desc->reorder_data); bool amsdu, last_subframe, is_old_sn, is_dup; +#if defined(__linux__) u8 tid = ieee80211_get_tid(hdr); +#elif defined(__FreeBSD__) + u8 tid; +#endif u8 baid; u16 nssn, sn; u32 sta_mask = 0; @@ -243,6 +247,10 @@ iwl_mld_reorder(struct iwl_mld *mld, struct napi_struct *napi, for_each_mld_link_sta(mld_sta, mld_link_sta, link_id) sta_mask |= BIT(mld_link_sta->fw_id); +#if defined(__FreeBSD__) + tid = ieee80211_get_tid(hdr); +#endif + /* verify the BAID is correctly mapped to the sta and tid */ if (IWL_FW_CHECK(mld, tid != baid_data->tid || From nobody Mon Dec 8 15:44:10 2025 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 4dQ5rC1Kjzz6JyyX for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rB64NHz441S for ; Mon, 08 Dec 2025 15:44:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208650; 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=ZIjFzn5J23dp6IKxNzU/LlQzaTc05ToM2FnO4aidPNE=; b=HMR5UA8lx1BzBJAf4bcUuXKz3/DMoythlVIjF4ff2Lv4KygqriBzeKx4Su4xiAOw5DDgzg M4xpBP+9MrE1nKVI/NyzqsTmfMuX6iE3YNAvmzNrWnJ3AgOTqanh2rvLHghojoEyKv9J8J 0YAps/mYBSYld2eWRbHSLjgs8zT1MesOhEYzBxzMsJ8U5IPM6Rl8+szZ7CTSE9OiO5Wyh1 u5Gg9Qlg05Kylq8k1IHqB+UD6sr7pA3/aF92y2ynLflWgXHEltgSE85Fra3H06zdKE9Inn wV78HidE6fofD49rgoUVzmK5bCTZ5JZTVZ/ReWLQjW+h/0466Al9TNsxWkefFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208650; 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=ZIjFzn5J23dp6IKxNzU/LlQzaTc05ToM2FnO4aidPNE=; b=EcpqUcdXswIOsQY1H5xqEMXo+uxLTVnpzBE2X+c+2UwrSLDbUhAMSmrB+yB8NzQqzD7fOB JBYlB9KRW7jEuQoHrCzfQ/WFBY/BH2dWUda5+pI69JCG9W5OoBpOdBKy+5PIDjZ97HqKYy 9ef4CoLPsgWs9povnHoAENwRj0l4nG5+TPT1l388ClYgMnpyI4fFFdv5CtZWyMpa5g3c6F my5CCspIX4yB6Y5qfvdVjhB8vzt6YhKL3Ha9+IlHJch7kEAZMu2UpA2H6pKpXgABeHQW2D elmZv5HdTlN4gB9jnNhJshV2Dy8WZDgJ9/tSKwieI2ztwp7aEHxWDBID0MNrow== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208650; a=rsa-sha256; cv=none; b=XyFYIBe7kKygJsQ8btNDrOJaQGcUnS8/WuaqTWz8NSI43yUcpwoPbz7NM0wLnCiGhx71AP ZHWAwm7bQWbye/5Z2r24x0GmN2OZ5xCHQSc6N1fl1bvgk+uoSjpKcO7Dw9AHW4wafuHnEe iUlpoUuh1j8wu9vAhxZOQCU8vKjyUZYLn6N5ETByRabKG3fKFYFxHBanPq6HvIvvxrHM2R ytPt2K3D3XD7M8QuNe9zdvAvCzFVy9Swf/j7UGIBHcqbhWZI47Sr4SbWLmziBxoB250xfX YDcA5ovv8HTfZcYO35Y7IVuRaAUxaISOf3HR82bKrMEjb2mZEVu+wIUQ30y4zg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rB5gGsz3PL for ; Mon, 08 Dec 2025 15:44:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 38ac6 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:10 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 5d22abb18771 - stable/15 - LinuxKPI: 802.11: use a _check rather than a _protected version for linksta 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 5d22abb18771cb6c7578ff417bb801c7b4e8b51e Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:10 +0000 Message-Id: <6936f24a.38ac6.46bceed4@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=5d22abb18771cb6c7578ff417bb801c7b4e8b51e commit 5d22abb18771cb6c7578ff417bb801c7b4e8b51e Author: Bjoern A. Zeeb AuthorDate: 2025-11-19 02:16:39 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:51 +0000 LinuxKPI: 802.11: use a _check rather than a _protected version for linksta Switch to link_sta_dereference_check rather than _protected to access the value. The actual problem we hit was elsewhere though. Sponsored by: The FreeBSD Foundation (cherry picked from commit 0021f70800a1d83a42e3a4dff10c352e67a1bcce) --- sys/compat/linuxkpi/common/include/net/mac80211.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index ee1ace3684de..0eda07a8235c 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -1315,7 +1315,7 @@ ieee80211_hw_restart_disconnect(struct ieee80211_vif *vif) for (_linkid = 0; _linkid < nitems((_sta)->link); _linkid++) \ if ( ((_vif)->active_links == 0 /* no MLO */ || \ ((_vif)->active_links & BIT(_linkid)) != 0) && \ - (_linksta = link_sta_dereference_protected((_sta), (_linkid))) ) + (_linksta = link_sta_dereference_check((_sta), (_linkid))) ) /* -------------------------------------------------------------------------- */ From nobody Mon Dec 8 15:44:11 2025 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 4dQ5rD2MSbz6JyYD for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rD1F8hz43yw for ; Mon, 08 Dec 2025 15:44:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208652; 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=g9dd1X7wKrEYnc9A121B1xXhFaaxOGV24p/xeD3hxm4=; b=C7yBapKd0OojUsx5pjliBtUc1055VqeiKgdbKDkbfpup75R/mNPPn5Vh9bfX7YTh9UTCwv KigFmPpQ2MQ2XJP8tEvo+a9Yn2zU4izMwFFpDG5h24/l/9693uUZO0IGQe1g3A0C9blL2Q MZD1HQebPpzSbYjzH2haS0x/8LixSwpcRxgejY9Fe4i7Hr1DR98z+p3A2ck7sTNOcm1Hbn M/CjkJtv6JzYcwl4k5KgGEIiY/z60oFETwFxOPJf/P5VbBWeupueUv+yRQ/ob3m6KalrLx CsbzKvJZ4KIrDWLf1cm8+flOPRCBURsZmAzkorukrOVz8RWwcmNhbWUCKcMK7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208652; 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=g9dd1X7wKrEYnc9A121B1xXhFaaxOGV24p/xeD3hxm4=; b=ZkhxidB7jcavVnhX2ZNNnl2V0LOz1OaL+wn+D4WxPNg4bj3NWAy5v9JJbfpZjTLsKmDtbm R3SZgSbgodNsE8rL7/OeJEGRMemz9Lx2UlUBUwM+aIcTc+Ln/bdEJiDHKW8JadzWxWNEP/ PBCdPgk+6j4J3Dc2F5ncRQrV7nRk8VlIQRIJ5bhTcNYj+Tqw1wttgaXBNpfc06TQgdoNkR ZfOgo+ec1+sGbe4cSE7yqvTr4sHojtNEUTKSB9eOpj2iQyPSg/ewGVvN9XAPJjS/lbzAmf 7YRMlH/pO1J10z/2Bw8kMDRlHGuX+2EczXeDh7K6ffaemqfM3xRLyH0PglcA8Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208652; a=rsa-sha256; cv=none; b=XJ3PWJsF96PhlaaIArETdxLh+Idll/UlxzIQJnttdieijJgn8yGojxJ5BwzcDf/vCJ3V2n 1QLdQIZhgJpkdj5jxJECuU8yE9KOxe4ZtICxubt0kIKQr8k7qalS3ZIzSaRTWzVJ0V7dko 6nCsmGG1654QRZdiJBorvZpOAgJ7ilXCXQY1UG43TCyIeofsTuMc/TC8/N50D83GPBKUQK 2nOTnaJOPfYBOaXjAKtFH/AhJP5FKgCTOOySEcxY2n7utQdcHeTnhH0d2RRpY3det2N+4j vADQ3WJMrTz3fDaVWDdBxSR4nsFmpSWAQUj9MdUIxmZwMFdGy5NFAMrOeM/jOg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rC6Np6z3M5 for ; Mon, 08 Dec 2025 15:44:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 399ee by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:11 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 49977df63c40 - stable/15 - LinuxKPI: 802.11: implement mtx support for ieee80211_iterate_interfaces 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 49977df63c406940b77a35b2373ea4d193abf1e9 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:11 +0000 Message-Id: <6936f24b.399ee.6a702bd2@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=49977df63c406940b77a35b2373ea4d193abf1e9 commit 49977df63c406940b77a35b2373ea4d193abf1e9 Author: Bjoern A. Zeeb AuthorDate: 2025-11-19 02:18:43 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:51 +0000 LinuxKPI: 802.11: implement mtx support for ieee80211_iterate_interfaces Implement the lockdep_assert_wiphy call for ieee80211_iterate_active_interfaces_mtx() to avoid a warning when used and to make sure callers comply with assumptions. Leave an "IMPROVE" note as we can likely switch another of the multiple callers to RCU. Sponsored by: The FreeBSD Foundation (cherry picked from commit 90b6a9ac0c1f4333f87f4b172482f40979324d7c) --- sys/compat/linuxkpi/common/src/linux_80211.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index f025f191a3bd..c68ed4491c3b 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -6906,17 +6906,23 @@ linuxkpi_ieee80211_iterate_interfaces(struct ieee80211_hw *hw, if (flags & ~(IEEE80211_IFACE_ITER_NORMAL| IEEE80211_IFACE_ITER_RESUME_ALL| IEEE80211_IFACE_SKIP_SDATA_NOT_IN_DRIVER| - IEEE80211_IFACE_ITER_ACTIVE|IEEE80211_IFACE_ITER__ATOMIC)) { + IEEE80211_IFACE_ITER_ACTIVE|IEEE80211_IFACE_ITER__ATOMIC| + IEEE80211_IFACE_ITER__MTX)) { ic_printf(lhw->ic, "XXX TODO %s flags(%#x) not yet supported.\n", __func__, flags); } + if ((flags & IEEE80211_IFACE_ITER__MTX) != 0) + lockdep_assert_wiphy(hw->wiphy); + active = (flags & IEEE80211_IFACE_ITER_ACTIVE) != 0; atomic = (flags & IEEE80211_IFACE_ITER__ATOMIC) != 0; nin_drv = (flags & IEEE80211_IFACE_SKIP_SDATA_NOT_IN_DRIVER) != 0; - if (atomic) + if (atomic) { + IMPROVE("LKPI_80211_LHW_LVIF_LOCK atomic assume to be rcu?"); LKPI_80211_LHW_LVIF_LOCK(lhw); + } TAILQ_FOREACH(lvif, &lhw->lvif_head, lvif_entry) { struct ieee80211vap *vap; From nobody Mon Dec 8 15:44:13 2025 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 4dQ5rF4M8lz6JywG for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rF0yddz444j for ; Mon, 08 Dec 2025 15:44:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208653; 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=P2C8OcIMVaSFutCT+xqq+DqKUMeh2FJH52CtutOXmp8=; b=FsNKXM0itRGBWvQnu8XfcgRwnJMAyr5tFe/zB2K23rwL/1TGlYtL+4v3csDTE10HHXcvtZ yHX1TNBgWVpl4PnycXsshnIeYAfkjAdqtO7/+Ys1qhsI6JXUIU22K73MZWxZB5fi/0AXlN 02u/CvAGLRzywFTtkPjWp5CfpbB9myG0asdTa4IopJOmMj90K3tCQcfcULUBX8mvr3eZGc aH7kdFEwttyFl/8tWzTOuApKq111QidiKBhCizURCirmLIROeQr3ZQ3vJOL4t9n/iH3jQC UkbE0jBRDs7kxX801n7Nr589Cg4FpCCE4xlDs4MIIB+F/T0oWk90hsh+MwWmIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208653; 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=P2C8OcIMVaSFutCT+xqq+DqKUMeh2FJH52CtutOXmp8=; b=VTL2KlHQh09HCKponPAA+NuUX+B5TmakoPLMxJG71Axqly2hJNNzdveHai7GnsbE064ppu yMfhR/Q9LQY4YAi1yNOhKUnX2wqJ6M3HNR9YIUi3LJ1jsSXOP/wWXI5d7CKvi3XvH54Rof oLLXERqurLfmFT8hwFaXT3W/Z86WGnCRUtB4oHQpmz/y0aOX4n7TuNemBu5mGJvPqfHoXu L23WudXZm0On/XIJ7KDjlYPcKbtx5alBnR1xlv9etAFl1Vhba7AgHaDQrW6IbO/xsuKh52 S/fN7bhBd9TvXDLCDag1JxKXp+dYx3IKs/+b1zNXsnGW8rqzpUbEO1B2lEfcjg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208653; a=rsa-sha256; cv=none; b=uhibUeY35CTZ+1i4Ha9NJcZk5NC88nDI/+F3fw0HbSAMOxFLVpLRKZ80gwDLv82mWmYwcf hpacAlDlobhdaowyTwIzM/ryfh2hHOLmh5EOrmrkJu9xnVZBHXyz2LY+d0/Ptl4o3vY1TB /1ia9hJfQZdk5o82n0nd8wGRb9KwH/OF+DPw4rlUccfBMeEMhBiribD2kf3lFqMO7qoE2X +KBh2QtwP2EToVlMCbYhSUhXvT/93PLZITJ/Z/UkBY/pzvHK5OiJuH9QcM74DAajoMlRqI LupL1rFs+oUFDAAL/CqXI27FDp9uD3cyAicQRu3W02KPNkgMZJKGoFzcoEuDSw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rF06zgz3sj for ; Mon, 08 Dec 2025 15:44:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 38aca by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:13 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 4d3c09c79a04 - stable/15 - LinuxKPI: 802.11: initialize a backpointer on the link_sta 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 4d3c09c79a04b2bafbee86f50a9bd25d490762b7 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:13 +0000 Message-Id: <6936f24d.38aca.6a975bec@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=4d3c09c79a04b2bafbee86f50a9bd25d490762b7 commit 4d3c09c79a04b2bafbee86f50a9bd25d490762b7 Author: Bjoern A. Zeeb AuthorDate: 2025-11-19 02:21:00 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:51 +0000 LinuxKPI: 802.11: initialize a backpointer on the link_sta iwlwifi/mld uses the back pointer in iwl_mld_link_sta_from_mac80211(). Initialize it to make BE200 cards work again. Sponsored by: The FreeBSD Foundation PR; 290808 (cherry picked from commit d1180baa9b99538481f3780fc8f4e6e464a15e99) --- sys/compat/linuxkpi/common/src/linux_80211.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index c68ed4491c3b..8b1f5f0e0399 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -832,6 +832,7 @@ lkpi_lsta_alloc(struct ieee80211vap *vap, const uint8_t mac[IEEE80211_ADDR_LEN], sta->deflink.smps_mode = IEEE80211_SMPS_OFF; sta->deflink.bandwidth = IEEE80211_STA_RX_BW_20; sta->deflink.rx_nss = 1; + sta->deflink.sta = sta; lkpi_sta_sync_from_ni(hw, vif, sta, ni, false); From nobody Mon Dec 8 15:44:14 2025 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 4dQ5rG4F7Vz6Jyyf for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rG1JZXz4407 for ; Mon, 08 Dec 2025 15:44:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208654; 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=ggU601CqC6M7002dE/oNFfmypBo6AX8hebO+Dj3KtrE=; b=PtpN9jF48dkNUO0GQcSEv090qBB916a65SGzUbXoX6OefkJGSBNFfsF68TXuM2QvSvK5iQ vzNjZRr07EHP8pqGlIh+P3dWTeIcl4q7OEwGSkY/mVAXZI9sAh9ikLwM0HhLE+6s+aLCKX bQr+PzFvnmxPSkqI74+9dSEHoS2b2CAOnXMSJCzan8TZoCthWjfdeDxStIng0KBkpMRS/j XiDW+eSEc8jCmhlYJNZE0CsqtuwfVPaz2imXHp2zHX0fTuVJkjoVBm7HFlzUk+Wx7BRJG3 sOJmfPY1G8CCyzxHuSsGXBqtTVAmuNL3TFva22n38cx/ax5fQiBdY8D5/ikExA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208654; 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=ggU601CqC6M7002dE/oNFfmypBo6AX8hebO+Dj3KtrE=; b=gGrpcLtV41E4u+14lMQzpfBXI+EHo8NrnxBrNuTTs9iiVfyeDugBpHGr8izVuaka5yjBAl W/zZDfdOf/G8iArLuf/ryCrpkrs9yKjmncnYXWb8r2krL8nPwHbArT27aHQe0uHP/S1TcL KNZaiMkXVpKa7Lg/bZ/mrA7VsjROVBHofGcLuqPwZ1VX2+V9MocrNEstY+5E3ntkW9uoHc 0rh00FWpYCczsKAhbV4RcxIfxhHVBQmGJ6fHtNLQutFzdIelPWfmuPe0fXYKOs7Erdf55n FIiYhTXkdeNUJFSf53b3hx66VR2F1NapX8qrKiMfXm3EPacUlejFljOHP12lzQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208654; a=rsa-sha256; cv=none; b=kThS78Wjlt1Wtb0mPzmcaHfhdz+AXiXEA34iOg2oXtAucF3kmRlJfud31twbskI04ZeeQQ q04icIvZEiuryeGYauFchxjIvmgIyZWPXARlI7YfoOzygfOs/zbvjvX7YtEkQ21hTDmyh5 9vtDov/1SWuAV4AGXJMIePdr4qhZNKTq25Wt3x+C2a6AEXnz5vrX/kLUmwyrZz54yt6xde W3NncgHy3S7lU2aeBrdDHLFYPXcjWf0lBT5Bmm7D0v0PPXCcfYgGdzUjzjGj3wlFdOHrF0 nLeunr3PFZcrnUhGgk4+N1z4OUbjfEiYKcOFNd2l32sG70nI9jR8o9gapyhhVQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rG0mbnz3qg for ; Mon, 08 Dec 2025 15:44:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 384bc by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:14 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 2032abb31cbe - stable/15 - LinuxKPI: pci: undo the pci_resource_len() check in lkpi_pci_request_region() 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 2032abb31cbe067d41067a81e529d91f1bace4c9 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:14 +0000 Message-Id: <6936f24e.384bc.79fe44ba@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=2032abb31cbe067d41067a81e529d91f1bace4c9 commit 2032abb31cbe067d41067a81e529d91f1bace4c9 Author: Bjoern A. Zeeb AuthorDate: 2025-12-02 16:04:22 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:51 +0000 LinuxKPI: pci: undo the pci_resource_len() check in lkpi_pci_request_region() Creating non-passthru SR-IOV interfaces on a mlx5en(4) failed. The problem lies in the pci_resource_len() call but not that the BAR length is tmeporary 0 but in that we call lkpi_pci_get_bar() with a true argument which will create the BAR resource for us and report the approriate length back. However, the later call to bus_alloc_resource_any() will then fail given the resource already exists. Restore the previous behaviour and let bus_alloc_resource_any() do the work. Adjust the return values from -ENODEV to -EBUSY to match callers expectations. In linuxkpi_pcim_request_all_regions(), like in linuxkpi_pci_request_regions(), filter out the -EBUSY errors as "not an error" and try the next bar. This also seems to be consistent with the expectations of the callers. PR: 290793 Reported by: David BOYER (jcduss13 gmail.com) Tested on: mlx5en, iwlwifi, mt7921 Reviewed by: kib Fixes: 7e21158d44cd "implement [linuxkpi_]pcim_request_all_regions()" Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D53902 (cherry picked from commit ed29ffd396e522a45ab1980c12a75b3409b51712) --- sys/compat/linuxkpi/common/src/linux_pci.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_pci.c b/sys/compat/linuxkpi/common/src/linux_pci.c index 8507a59a8df3..fb3f648df496 100644 --- a/sys/compat/linuxkpi/common/src/linux_pci.c +++ b/sys/compat/linuxkpi/common/src/linux_pci.c @@ -1223,13 +1223,6 @@ lkpi_pci_request_region(struct pci_dev *pdev, int bar, const char *res_name, if (!lkpi_pci_bar_id_valid(bar)) return (-EINVAL); - /* - * If the bar is not valid, return success without adding the BAR; - * otherwise linuxkpi_pcim_request_all_regions() will error. - */ - if (pci_resource_len(pdev, bar) == 0) - return (0); - /* Likewise if it is neither IO nor MEM, nothing to do for us. */ type = pci_resource_type(pdev, bar); if (type < 0) return (0); @@ -1241,7 +1234,7 @@ lkpi_pci_request_region(struct pci_dev *pdev, int bar, const char *res_name, device_printf(pdev->dev.bsddev, "%s: failed to alloc " "bar %d type %d rid %d\n", __func__, bar, type, PCIR_BAR(bar)); - return (-ENODEV); + return (-EBUSY); } /* @@ -1285,7 +1278,7 @@ linuxkpi_pci_request_regions(struct pci_dev *pdev, const char *res_name) for (i = 0; i <= PCIR_MAX_BAR_0; i++) { error = pci_request_region(pdev, i, res_name); - if (error && error != -ENODEV) { + if (error && error != -EBUSY) { pci_release_regions(pdev); return (error); } @@ -1300,7 +1293,7 @@ linuxkpi_pcim_request_all_regions(struct pci_dev *pdev, const char *res_name) for (bar = 0; bar <= PCIR_MAX_BAR_0; bar++) { error = lkpi_pci_request_region(pdev, bar, res_name, true); - if (error != 0) { + if (error != 0 && error != -EBUSY) { device_printf(pdev->dev.bsddev, "%s: bar %d res_name '%s': " "lkpi_pci_request_region returned %d\n", __func__, bar, res_name, error); From nobody Mon Dec 8 15:44:15 2025 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 4dQ5rJ0rnMz6K01h for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rH2bKXz440K for ; Mon, 08 Dec 2025 15:44:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208655; 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=NR0TT/MycgTjh31Z2mKPl/7bllRyGSw/S/JG6qwJ0Qs=; b=iNBxgZFHd/pcxg4/tWMaSu/jY2NUF1SMCg+A4bLRyjukAnBkCGvQhc+6KhsM+ViofdpBuq 5MFwNb+dfPAjwiAnroK4yiZBfoo8bi/IxiVSYBu3c0jW4esek3nqkqfj8D4D2KqgRPeAS5 jowBkKWh/aA7OTNiu0hGJ54jVg2vPUsgY3mStaTkQ7vXnM+J3hjRZl5uJQ5RZMa9lLTB/g w3UjmbDaaRL9BHhAzLVLTNWg1dT0vdqtx34R8RTC1PBm1UK9NGYsQOuELDXFM3BTL8Qwh2 vc+mM/kqbNZ5SGthkbRdE0jXHoQYud/qLv+thjrJBjXRwR9zrzG/o7vgtSGHEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208655; 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=NR0TT/MycgTjh31Z2mKPl/7bllRyGSw/S/JG6qwJ0Qs=; b=srG56o6fFXqBOObdTG1apK338iJfuhfq8U3xnZkG7als7/33cuDLbS1IswE3yrr+iSzvcm WBgH3dyuQsqpxzxVE/w4u8/62e0UCTc32FEQwojrdCYtCA8ZkmilJmnB0yRGec83HVSLBd 6/xdxIgc+6aLSBMnLxBGIsidaTQTi35AXkcQn/sWofWwCOwv1UH+34mJBmifBo2Rfy7yAN 6TQEXYBaZQJhBsf/IzeC040UXD7v0kg1zLPp8jKKoe+SLoXB8GoElULvsKPCkwrVper1NV bOyIg+z3CF7yBGjco+8plhwB+ZJZnPXnwuqkJoTjj7GOKt+Z1Jbd0Uq8+SuOKA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208655; a=rsa-sha256; cv=none; b=uGIpftQMRnOi1B2QlzTNmRYi+jpzL9n7LLNfFKAS4o/gw8mOhIFH9495pm6hhdj5J9FCCf 2QFX7EPHydy19DBONaNG8IZyWXT5IcYgprAcjfyJDUQyP8TmDybMD9Mmv/ASR6f3BwlxsO NlpbY2PufExGbtUX7Yj2XM2Kgkkcs+6kZBH/LNTsEwNEDsyKUR0a+CNTcD08BqmbUk/nK6 GCE/81oPR3noX6TbDX+wKnI5Zytn7Kga2cV8NrHsNaIk/7QrzfUykH+a+zMF5LRvFheNr7 FpfcVOTB0gcBPIVuCtkRXLfxJJly39teoQqRZ+EFmDwcCzyhMcqVDGgc7p/Thg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rH1ZYDz3CB for ; Mon, 08 Dec 2025 15:44:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 392f3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:15 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 07555b10469d - stable/15 - LinuxKPI: 802.11: when synching HT and VHT cap, mask rx_mcs 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 07555b10469d0cb613cfeedfd1239d5c4b6e507f Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:15 +0000 Message-Id: <6936f24f.392f3.22b934e5@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=07555b10469d0cb613cfeedfd1239d5c4b6e507f commit 07555b10469d0cb613cfeedfd1239d5c4b6e507f Author: Bjoern A. Zeeb AuthorDate: 2025-11-28 23:10:45 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:52 +0000 LinuxKPI: 802.11: when synching HT and VHT cap, mask rx_mcs When we sync the sta data, mask the rx_mcs with what the hardware is able to do so that we do not leave, e.g., a 2nd stream enabled on a 1x1 chipset. iwlwifi(4) has a further check for the smps_mode to limit to NSS=1 but I believe that is historic and not actually in use anymore. This fixes firmware crashes on TLC updates with nss=1 but the nss=2 array index also being populated (with HT/VHT80/160 mcs information): data being populated: iwlwifi0: 0x20101A0D | ADVANCED_SYSASSERT iwlwifi0: 0x00000006 | umac data1 iwlwifi0: 0x00000001 | umac data2 iwlwifi0: 0x000003FF | umac data3 iwlwifi0: 0x____050F | last host cmd Reported by: Claudio Zumbo (claudiozumbo gmail.com), Erik Power Tested by: Claudio Zumbo, Erik Power (eppower umich.edu) PR: 290622 Sponsored by: The FreeBSD Foundation (cherry picked from commit adb4901ac9ae6c2ceb4194d139ed3176f6ed5e55) --- sys/compat/linuxkpi/common/src/linux_80211.c | 99 ++++++++++++++++++++-------- 1 file changed, 71 insertions(+), 28 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 8b1f5f0e0399..8098d02da1a9 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -128,11 +128,11 @@ SYSCTL_INT(_compat_linuxkpi_80211, OID_AUTO, debug, CTLFLAG_RWTUN, #define UNIMPLEMENTED if (linuxkpi_debug_80211 & D80211_TODO) \ printf("XXX-TODO %s:%d: UNIMPLEMENTED\n", __func__, __LINE__) -#define TRACEOK() if (linuxkpi_debug_80211 & D80211_TRACEOK) \ - printf("XXX-TODO %s:%d: TRACEPOINT\n", __func__, __LINE__) +#define TRACEOK(_fmt, ...) if (linuxkpi_debug_80211 & D80211_TRACEOK) \ + printf("%s:%d: TRACEPOINT " _fmt "\n", __func__, __LINE__, ##__VA_ARGS__) #else #define UNIMPLEMENTED do { } while (0) -#define TRACEOK() do { } while (0) +#define TRACEOK(...) do { } while (0) #endif /* #define PREP_TX_INFO_DURATION (IEEE80211_TRANS_WAIT * 1000) */ @@ -474,12 +474,14 @@ lkpi_sync_chanctx_cw_from_rx_bw(struct ieee80211_hw *hw, #if defined(LKPI_80211_HT) static void -lkpi_sta_sync_ht_from_ni(struct ieee80211_vif *vif, struct ieee80211_sta *sta, - struct ieee80211_node *ni) +lkpi_sta_sync_ht_from_ni(struct ieee80211_hw *hw, struct ieee80211_vif *vif, + struct ieee80211_sta *sta, struct ieee80211_node *ni) { struct ieee80211vap *vap; uint8_t *ie; struct ieee80211_ht_cap *htcap; + struct ieee80211_sta_ht_cap *ht_cap, *sta_ht_cap; + enum nl80211_band band; int i, rx_nss; if ((ni->ni_flags & IEEE80211_NODE_HT) == 0) { @@ -513,13 +515,23 @@ lkpi_sta_sync_ht_from_ni(struct ieee80211_vif *vif, struct ieee80211_sta *sta, * MCS sets from the Rx MCS Bitmask; then there is MCS 32 and * MCS33.. is UEQM. */ + band = vif->bss_conf.chanctx_conf->def.chan->band; + ht_cap = &hw->wiphy->bands[band]->ht_cap; + sta_ht_cap = &sta->deflink.ht_cap; rx_nss = 0; for (i = 0; i < 4; i++) { - if (htcap->mcs.rx_mask[i] != 0) + TRACEOK("HT rx_mask[%d] sta %#04x & hw %#04x", i, + sta_ht_cap->mcs.rx_mask[i], ht_cap->mcs.rx_mask[i]); + sta_ht_cap->mcs.rx_mask[i] = + sta_ht_cap->mcs.rx_mask[i] & ht_cap->mcs.rx_mask[i]; + /* XXX-BZ masking unequal modulation? */ + + if (sta_ht_cap->mcs.rx_mask[i] != 0) rx_nss++; } if (rx_nss > 0) { - sta->deflink.rx_nss = rx_nss; + TRACEOK("HT rx_nss = max(%d, %d)", rx_nss, sta->deflink.rx_nss); + sta->deflink.rx_nss = MAX(rx_nss, sta->deflink.rx_nss); } else { sta->deflink.ht_cap.ht_supported = false; return; @@ -548,14 +560,15 @@ lkpi_sta_sync_ht_from_ni(struct ieee80211_vif *vif, struct ieee80211_sta *sta, #if defined(LKPI_80211_VHT) static void -lkpi_sta_sync_vht_from_ni(struct ieee80211_vif *vif, struct ieee80211_sta *sta, - struct ieee80211_node *ni) +lkpi_sta_sync_vht_from_ni(struct ieee80211_hw *hw, struct ieee80211_vif *vif, + struct ieee80211_sta *sta, struct ieee80211_node *ni) { + struct ieee80211_sta_vht_cap *vht_cap, *sta_vht_cap;; enum ieee80211_sta_rx_bandwidth bw; + enum nl80211_band band; uint32_t width; int rx_nss; - uint16_t rx_mcs_map; - uint8_t mcs; + uint16_t rx_map, tx_map; if ((ni->ni_flags & IEEE80211_NODE_VHT) == 0 || !IEEE80211_IS_CHAN_VHT_5GHZ(ni->ni_chan)) { @@ -609,18 +622,49 @@ lkpi_sta_sync_vht_from_ni(struct ieee80211_vif *vif, struct ieee80211_sta *sta, sta->deflink.bandwidth = bw; skip_bw: + band = vif->bss_conf.chanctx_conf->def.chan->band; + vht_cap = &hw->wiphy->bands[band]->vht_cap; + sta_vht_cap = &sta->deflink.vht_cap; + rx_nss = 0; - rx_mcs_map = sta->deflink.vht_cap.vht_mcs.rx_mcs_map; + rx_map = tx_map = 0; for (int i = 7; i >= 0; i--) { - mcs = rx_mcs_map >> (2 * i); - mcs &= 0x3; - if (mcs != IEEE80211_VHT_MCS_NOT_SUPPORTED) { - rx_nss = i + 1; - break; + uint8_t card, sta; + + card = (vht_cap->vht_mcs.rx_mcs_map >> (2 * i)) & 0x3; + sta = (sta_vht_cap->vht_mcs.rx_mcs_map >> (2 * i)) & 0x3; + if (sta != IEEE80211_VHT_MCS_NOT_SUPPORTED) { + if (card == IEEE80211_VHT_MCS_NOT_SUPPORTED) + sta = IEEE80211_VHT_MCS_NOT_SUPPORTED; + else { + sta = MIN(sta, card); + rx_nss = i + 1; + } + } + rx_map |= (sta << (2 * i)); + + card = (vht_cap->vht_mcs.tx_mcs_map >> (2 * i)) & 0x3; + sta = (sta_vht_cap->vht_mcs.tx_mcs_map >> (2 * i)) & 0x3; + if (sta != IEEE80211_VHT_MCS_NOT_SUPPORTED) { + if (card == IEEE80211_VHT_MCS_NOT_SUPPORTED) + sta = IEEE80211_VHT_MCS_NOT_SUPPORTED; + else + sta = MIN(sta, card); } + tx_map |= (sta << (2 * i)); + } + TRACEOK("VHT rx_mcs_map %#010x->%#010x, tx_mcs_map %#010x->%#010x, rx_nss = %d", + sta_vht_cap->vht_mcs.rx_mcs_map, rx_map, + sta_vht_cap->vht_mcs.tx_mcs_map, tx_map, rx_nss); + sta_vht_cap->vht_mcs.rx_mcs_map = rx_map; + sta_vht_cap->vht_mcs.tx_mcs_map = tx_map; + if (rx_nss > 0) { + TRACEOK("VHT rx_nss = max(%d, %d)", rx_nss, sta->deflink.rx_nss); + sta->deflink.rx_nss = MAX(rx_nss, sta->deflink.rx_nss); + } else { + sta->deflink.vht_cap.vht_supported = false; + return; } - if (rx_nss > 0) - sta->deflink.rx_nss = rx_nss; switch (sta->deflink.vht_cap.cap & IEEE80211_VHT_CAP_MAX_MPDU_MASK) { case IEEE80211_VHT_CAP_MAX_MPDU_LENGTH_11454: @@ -642,18 +686,18 @@ lkpi_sta_sync_from_ni(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_sta *sta, struct ieee80211_node *ni, bool updchnctx) { -#if defined(LKPI_80211_HT) - lkpi_sta_sync_ht_from_ni(vif, sta, ni); -#endif -#if defined(LKPI_80211_VHT) - lkpi_sta_sync_vht_from_ni(vif, sta, ni); -#endif - /* * Ensure rx_nss is at least 1 as otherwise drivers run into * unexpected problems. */ - sta->deflink.rx_nss = MAX(1, sta->deflink.rx_nss); + sta->deflink.rx_nss = 1; + +#if defined(LKPI_80211_HT) + lkpi_sta_sync_ht_from_ni(hw, vif, sta, ni); +#endif +#if defined(LKPI_80211_VHT) + lkpi_sta_sync_vht_from_ni(hw, vif, sta, ni); +#endif /* * We are also called from node allocation which net80211 @@ -6237,7 +6281,6 @@ lkpi_ic_getradiocaps_ht(struct ieee80211com *ic, struct ieee80211_hw *hw, #endif IMPROVE("PS, ampdu_*, ht_cap.mcs.tx_params, ..."); - ic->ic_htcaps |= IEEE80211_HTCAP_SMPS_OFF; /* Only add HT40 channels if supported. */ if ((ic->ic_htcaps & IEEE80211_HTCAP_CHWIDTH40) != 0 && From nobody Mon Dec 8 15:44:16 2025 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 4dQ5rJ46HTz6Jyys for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rJ2r5nz43nb for ; Mon, 08 Dec 2025 15:44:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208656; 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=6SFyxa9P4xvdAUxPfyCzYC+PcMEAw/fB7YidW+X7Vso=; b=pIpIaWS5ZXd99/iVEnjixRaE64weGABmfOlU0dUse+8EsuG7EEAR6Eo+GxLo5tASDRDjmm LU1O1n9OLJedfjrOedwAl155cS9+R3b4+Mzmw5C7BcIhlZ8+v6KM5cUxgfDfUg7IRtpQrP EeM0Mi0+atlQGtLVNyGohCn8y7ixhWrCiNWgoQJxy/bxan/VP+ZE0mMvJgqDRe7PjpNlud 2GTpRlNeTC/ogMMvo1oMYJGlow34md0HIydp+e9xQWN/HeElAevmS5CnhvqJqRsKjikulw mPmNQ851gvrhW9/UvnrdwS1i4xHCjpaft5RNTeVktQP8oYqjCGSZCnVas6HeJQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208656; 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=6SFyxa9P4xvdAUxPfyCzYC+PcMEAw/fB7YidW+X7Vso=; b=auJPq/cvO8Q/xlQuY+Zed+/w9whuiuOKmdPJsEibhrBgr0Ag0TkIzaa0NsGDGqGM7bItaz 4Dp2m50m16uZ0QjPcrvwhNOuCq66gnMpaiMG0bbAyr0JhyEK9d6ggzupct2Kj7QdcS6onM ZAiBWG2qybH4UW5F6Y3kyw94eUb6EFxm5GjcY/XNJgSjsWbu5DhqlriU16n36I0GonVVNo 3pl3uSoLqrtYYMBVTHXXUEst4mgFDDlmtrWlBk/foO8q9GNfYi0t0h4e5tBeUF3WcYyujO aybUHc2mH5E34aumCyPJFuLep6pEKmc6ZZEKfMjBzCNG8yo6ObfswJgi8+sqUg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208656; a=rsa-sha256; cv=none; b=k6WgeDd1KKEOC2Wd+RY77pTy+n0y8BYfZ+5rimGc4ns0RLo776XcMs2QVHi76taoFByDGJ qi/+Y4x6ULiPE9lqLz2L9yYsySRREE0Sscw4zDRBRepoAhXYZVFkaR0lWleUHDTxNqSB41 ggB9u855w+bitqKRAUHwlyjkS2SBrbzjkB6iDUcmCVJTKKN1vBbE3829H640ISFNMZ9XtH SNp3eP1T4bIC7mSq+rFdfA1WGwACFXo/y5XNrtq44rL6CH5I3py/2qxRr4UjI9FVckWuJg 9FRO/rhPblBTIeMDh3KMP5iqyOy+02d+kuybuAu28iiPsjSUM7GtPfG3fp6KUA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rJ2M9dz3sm for ; Mon, 08 Dec 2025 15:44:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 392f7 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:16 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 8dd5b13df6d8 - stable/15 - LinuxKPI: page.c: remove a spurious character from a comment 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 8dd5b13df6d851c9dbb0811605bb0b5ddf3e1d27 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:16 +0000 Message-Id: <6936f250.392f7.7aec2e5c@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=8dd5b13df6d851c9dbb0811605bb0b5ddf3e1d27 commit 8dd5b13df6d851c9dbb0811605bb0b5ddf3e1d27 Author: Bjoern A. Zeeb AuthorDate: 2025-12-03 00:45:39 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:52 +0000 LinuxKPI: page.c: remove a spurious character from a comment No functional changes. Sponsored by: The FreeBSD Foundation (cherry picked from commit 45d8bfdcba37996993748f4667646f5dc9f54506) --- sys/compat/linuxkpi/common/src/linux_page.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/src/linux_page.c b/sys/compat/linuxkpi/common/src/linux_page.c index 628af17df853..a71a708c1bd8 100644 --- a/sys/compat/linuxkpi/common/src/linux_page.c +++ b/sys/compat/linuxkpi/common/src/linux_page.c @@ -175,7 +175,7 @@ linux_free_pages(struct page *page, unsigned int order) * contexts. * * Some pages are allocated by `linux_alloc_pages()` - * above, but not all of them are. For instance in the + * above, but not all of them are. For instance in the * DRM drivers, some pages come from * `shmem_read_mapping_page_gfp()`. * From nobody Mon Dec 8 15:44:17 2025 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 4dQ5rL0Xvtz6Jybt for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rK3dCxz43nm for ; Mon, 08 Dec 2025 15:44:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208657; 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=BFP2JYxpHmP6c/AuMwEl3n7InGHkI9TrqGqLh4OUf4Y=; b=jK9sWr1bB/kzViZDmPJzXBQuGXeGUVoQjAaf5YDE43fPoSWu3MbkYHSjmVzHeDTgB2zHuJ BKpnO8NaHxbahviMUc/DN35JkRw682skOuVcwEqprRTN3+zwNFKKwYThEtXgpoxCMaD22N BSu0Aunnz1Gg1y62CL0faI7UVcHMMg7qoOEK7dVdRu/HrX5SpfkWptbznyF9WFn8riv8UI EBr8JJf6UJ2nNL+d3VRUNvuCpI15nwmzcEvu7Ot63h1m8G4B+75KTx7OVdFHlQKY8KQsia xEybOUJ0LTBznnqkWxOfBtilRKoF/11gq8NmZKwomiECYjPH9iqsePWqPkVhXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208657; 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=BFP2JYxpHmP6c/AuMwEl3n7InGHkI9TrqGqLh4OUf4Y=; b=l5mIL90WkIbAPwlWZrJ4YIOzPBOHnjAHvyuEzw7Ne7MHWcFfWcdAPsoZssEnFjJ6HvpYDX sQhNEW7yh9R2JVla2qdC7FLPkiEeXS6cxbluPRgh+m1MrYKM8n0z7O9CUYU40/Iqco43iR OnceAPp7vov4WGORyHopqnkrFTYHWy+cNmav21365TBOrPpTBeIPQCIt/5sEE5ZoilVsrI r1+mxXHQ5/P9iy3TGtjVaAcGToXITsTTQH532e1M1CqMUoJzJI/eGPbCvQD1FAalNf/nRB H5fwMCwpCMAmcCohTEU3TA7NRDyRXoSuv5q8ytv9RKPrGoa0R5cq5VE4uS40Lw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208657; a=rsa-sha256; cv=none; b=s6djPAbfYve8AvzwT1npIJ1odiqrEL0Pijg9eCKVY3AY4RO+h7EW6Q4TQfdW5NXa8wGJIr l1BqReeRaHwCmmf7l8je8UaCc6XKIUia2FeGQWW1couLEt7LPNx1PY2mwgMSs6bPS5RKvn MS5WFTS+bHJa1T9lvex2JG4QLz+gK3Uqh5QaCtxI/AAtSCeu19CYKL9qCYgtS5SkshINyC 1Q1EtIpejutrbl/Dfrf4+Xi2hdWXR12UDm1vGeu+sHq3eozqMg7k92wXlEFwfuBz13+PYD 7d4NJo4wg2wNKYNx6kZgzHX8Ia3vmezZ0zPh2f3qcwWBcDtro7BbvKdMgRMfWA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rK39ZGz3qh for ; Mon, 08 Dec 2025 15:44:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 374e0 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:17 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: c55874da4cf5 - stable/15 - LinuxKPI: 802.11: make airtime fairness an IMPROVE 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: c55874da4cf57800fc8a665ee221e4c2e1ac6601 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:17 +0000 Message-Id: <6936f251.374e0.ba22292@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=c55874da4cf57800fc8a665ee221e4c2e1ac6601 commit c55874da4cf57800fc8a665ee221e4c2e1ac6601 Author: Bjoern A. Zeeb AuthorDate: 2025-12-03 00:55:36 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:52 +0000 LinuxKPI: 802.11: make airtime fairness an IMPROVE We are ways away from implementing "airtime fairness" in LinuxKPI (or rather net80211). For now make it an 'improve' rather than a 'todo' to get the logging away. Everything will work without it. Sponsored by: The FreeBSD Foundation (cherry picked from commit 86bfe5b4d5a7b90d3746059dd1f87cdd5a0bf90c) --- sys/compat/linuxkpi/common/include/net/mac80211.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index 0eda07a8235c..ea9797befe58 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -2291,7 +2291,7 @@ static __inline void ieee80211_sta_register_airtime(struct ieee80211_sta *sta, uint8_t tid, uint32_t duration, int x) { - TODO(); + IMPROVE("NL80211_EXT_FEATURE_AIRTIME_FAIRNESS and TX queus"); } static __inline void From nobody Mon Dec 8 15:44:19 2025 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 4dQ5rM6hfqz6K04Y for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rM5F81z449G for ; Mon, 08 Dec 2025 15:44:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208659; 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=6aKvtIb8Nx0aetSuyDghjbDhVEihXmznkAjd9bOwRHc=; b=GDxcOp3655zmnD/e6n3wgenmnHfahx5W3kd7g55X+Aq8IiFafE8PyLcKKcUxrUL4kTnkuZ Qb3PmQ9XAovaMVd7t8unfuSAmx4FAbcfvdi6rhBHBl/Cq7zBD5bPea+mn66Rd88jdaS2gV q71pJSn+monrSruKEKP2KnDS1xT1c3oVhDAyFQhSkmIKs2c5jW+Kmehcp2Ln0fbbNDRQao ZYsq6lMnmacniqXFV33nRR8G/pKyElTJgK9q/I5nddLHZnS4GTH+NAppVK7K1GauFako0V KrLS+eMw2c+SWfDsp4JFfEskd3VG0UNY51y4Zvfs+QLN3nCaB8v/Axpe1LiD9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208659; 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=6aKvtIb8Nx0aetSuyDghjbDhVEihXmznkAjd9bOwRHc=; b=mNMwiC2FdrYsyGCyjYIvkw/KlDvvJd2v96/bYgY8nCbjt8jFtILP1DjkRDwYwIFq1tkRSu V+pLiPXZYjiyumQyuyuuXbFSeL/tySziwjOvhuXbu5340UDNI8ceitX2jgnLhzoJKKFeb3 pAa65eQi3dPLNR/dv2SpDEWNJ/+NYnC6Im5q8e4/+KsrOjBYhqiuRMC5xd1/Ce5zp+dBww qQ5ft9VwKHKXcvODxqQJSssvkfHoT8A3qIdxIqfY93tDONeKxW3zCM86gZwMRUIbmNu68r lojc1JRVMVBTAzGEqT/uAe6PfkmPm0N0Rhjv2U5u+blD/gV2vfFo1veH3AkpQQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208659; a=rsa-sha256; cv=none; b=VCXcFRPjUkyL57DghwsRdCgxx4WLB2DBO59HO4KSTcbBFTH7QDYoSrz5McnedXJrzPop3D F3K969q+A6M02F0a3pP5ZkFR599hVl697ghYKqtw96MFbTDdbYlRq8eJkaMB7c4oBl2Y+9 PDBXyi2q/xGckqKFF8OUwZfnjFUH1tOaAQGZyFLFwAh6SIr0eJAZP2ySRQjUNxxZHhywBT xz/jOUhFvRvYx/nYEvvWLkIYJa/y0VJsK3F0KDJXiAIg+GhxpuaFKjF8/rxo+9s/0QNvG/ oTXktSJMR6nOKlM2ntW1Z3gIH1ntUMYVYCHtU4Ed5OaVAIsuoVfpPjXB0UvzRg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rM4nm2z3B5 for ; Mon, 08 Dec 2025 15:44:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 374e4 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:19 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 85db0f528a06 - stable/15 - LinuxKPI: 802.11: fill in more skeleton functions 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 85db0f528a067e298eabfcaf9c845369999c6dda Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:19 +0000 Message-Id: <6936f253.374e4.53267e5d@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=85db0f528a067e298eabfcaf9c845369999c6dda commit 85db0f528a067e298eabfcaf9c845369999c6dda Author: Bjoern A. Zeeb AuthorDate: 2025-11-29 03:19:47 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:53 +0000 LinuxKPI: 802.11: fill in more skeleton functions Some of these are used by mt76 and while I was here and it only was a handfull I figured I should just clean this all up. There is one problem in that between 802.11az and 802.11-2024 action frame formats have changed; I got compile errors from iwlwifi(4) given I updated them to -2024 so we remain on older versions for the moment. Sponsored by: The FreeBSD Foundation (cherry picked from commit af22833348c6c7ffed0186651437b5f50be1550b) --- .../linuxkpi/common/include/linux/ieee80211.h | 168 +++++++++++++++++---- sys/compat/linuxkpi/common/include/net/cfg80211.h | 4 + 2 files changed, 141 insertions(+), 31 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/ieee80211.h b/sys/compat/linuxkpi/common/include/linux/ieee80211.h index ea8c0fc8ef5e..12160df43915 100644 --- a/sys/compat/linuxkpi/common/include/linux/ieee80211.h +++ b/sys/compat/linuxkpi/common/include/linux/ieee80211.h @@ -43,8 +43,13 @@ extern int linuxkpi_debug_80211; #ifndef D80211_TODO #define D80211_TODO 0x1 #endif +#ifndef D80211_IMPROVE +#define D80211_IMPROVE 0x2 +#endif #define TODO(fmt, ...) if (linuxkpi_debug_80211 & D80211_TODO) \ printf("%s:%d: XXX LKPI80211 TODO " fmt "\n", __func__, __LINE__, ##__VA_ARGS__) +#define IMPROVE(fmt, ...) if (linuxkpi_debug_80211 & D80211_IMPROVE) \ + printf("%s:%d: XXX LKPI80211 IMPROVE " fmt "\n", __func__, __LINE__, ##__VA_ARGS__) /* 9.4.2.55 Management MIC element (CMAC-256, GMAC-128, and GMAC-256). */ @@ -568,17 +573,25 @@ struct ieee80211_mgmt { uint8_t tpc_elem_tx_power; uint8_t tpc_elem_link_margin; } __packed tpc_report; - /* 9.6.8.33 Fine Timing Measurement frame format */ + /* 802.11-2024, 9.6.7.32 FTM Request frame format */ + struct { + uint8_t public_action; + uint8_t trigger; + uint8_t variable[0]; + } __packed ftmr; + /* 802.11az-2022, 9.6.7.33 Fine Timing Measurement (FTM) frame format */ + /* XXX CHANGED IN 802.11-2024, 9.6.7.33 Fine Timing Measurement frame format */ struct { - uint8_t dialog_token; - uint8_t follow_up; - uint8_t tod[6]; - uint8_t toa[6]; + uint8_t public_action; + uint8_t dialog_token; + uint8_t follow_up; + uint8_t tod[6]; + uint8_t toa[6]; uint16_t tod_error; uint16_t toa_error; uint8_t variable[0]; } __packed ftm; - /* 802.11-2016, 9.6.5.2 ADDBA Request frame format */ + /* 802.11-2024, 9.6.4.2 ADDBA Request frame format */ struct { uint8_t action_code; uint8_t dialog_token; @@ -588,9 +601,12 @@ struct ieee80211_mgmt { /* Optional follows... */ uint8_t variable[0]; } __packed addba_req; - /* XXX */ + /* 802.11-2024, 9.6.13.3 Event Report frame format */ struct { + uint8_t wnm_action; uint8_t dialog_token; + /* Optional follows... */ + uint8_t variable[0]; } __packed wnm_timing_msr; } u; } __packed action; @@ -1087,24 +1103,42 @@ ieee80211_is_bufferable_mmpdu(struct sk_buff *skb) struct ieee80211_mgmt *mgmt; __le16 fc; + KASSERT(skb->len >= sizeof(fc), ("%s: skb %p short len %d\n", + __func__, skb, skb->len)); + mgmt = (struct ieee80211_mgmt *)skb->data; fc = mgmt->frame_control; - /* 11.2.2 Bufferable MMPDUs, 80211-2020. */ - /* XXX we do not care about IBSS yet. */ + /* 11.2.2 Bufferable MMPDUs, 802.11-2024. */ + IMPROVE("XXX IBBS"); if (!ieee80211_is_mgmt(fc)) return (false); - if (ieee80211_is_action(fc)) /* XXX FTM? */ - return (true); /* XXX false? */ if (ieee80211_is_disassoc(fc)) return (true); if (ieee80211_is_deauth(fc)) return (true); + if (!ieee80211_is_action(fc)) + return (false); - TODO(); + /* + * Now we know it is an action frame, so we can check for a proper + * length before accessing any further data to check if it is an + * FTM/FTMR, which is non-bufferable. + * 9.6.7.32 FTM Request frame format + * 9.6.7.33 FTM frame format + */ + if (skb->len < offsetofend(typeof(*mgmt), u.action.u.ftm.public_action)) + return (false); - return (false); + if (mgmt->u.action.category != IEEE80211_ACTION_CAT_PUBLIC) + return (false); + + if (mgmt->u.action.u.ftm.public_action == 33 || /* FTM xxx defines? */ + mgmt->u.action.u.ftmr.public_action == 32) /* FTMR xxx defines? */ + return (false); + + return (true); } static __inline bool @@ -1207,53 +1241,125 @@ ieee80211_get_DA(struct ieee80211_hdr *hdr) return (hdr->addr1); } +static __inline bool +ieee80211_has_morefrags(__le16 fc) +{ + + fc &= htole16(IEEE80211_FC1_MORE_FRAG << 8); + return (fc != 0); +} + static __inline bool ieee80211_is_frag(struct ieee80211_hdr *hdr) { - TODO(); - return (false); + return (ieee80211_has_morefrags(hdr->frame_control) || + (hdr->seq_ctrl & htole16(IEEE80211_SEQ_FRAG_MASK)) != 0); } static __inline bool -ieee80211_is_first_frag(__le16 fc) +ieee80211_is_first_frag(__le16 seq_ctrl) { - TODO(); - return (false); + return ((seq_ctrl & htole16(IEEE80211_SEQ_FRAG_MASK)) == 0); } static __inline bool ieee80211_is_robust_mgmt_frame(struct sk_buff *skb) { - TODO(); - return (false); + struct ieee80211_mgmt *mgmt; + + if (skb->len < sizeof(mgmt->frame_control)) + return (false); + mgmt = (struct ieee80211_mgmt *)skb->data; + + /* 802.11-2024, 12.2.7 Requirements for management frame protection */ + + if (ieee80211_is_disassoc(mgmt->frame_control)) + return (true); + if (ieee80211_is_deauth(mgmt->frame_control)) + return (true); + + if (!ieee80211_is_action(mgmt->frame_control)) + return (false); + + /* + * If the action frame is a protected frame the peer has already + * decided that it is a robust mgmt frame. + * This is not exactly in the books but maintaining the below + * table will go out of sync eventually and this can save us. + */ + if (ieee80211_has_protected(mgmt->frame_control)) + return (true); + + /* + * 802.11-2024, 9.4.1.11 Action Fields, + * Table 9-81-Category values; check for the ones marked Robust: no. + */ + /* Check length again before accessing more data. */ + if (skb->len < offsetofend(typeof(*mgmt), u.action.category)) + return (false); + + switch (mgmt->u.action.category) { + case 4: /* Public */ + case 7: /* HT */ + case 11: /* Unprotected WNM */ + /* 12 */ /* TDLS */ + case 15: /* Self-protected */ + case 20: /* Unprotected DMG */ + case 21: /* VHT */ + case 22: /* Unprotected S1G */ + case 30: /* HE */ + case 127: /* Vendor-specific */ + return (false); + default: + return (true); + } } static __inline bool ieee80211_is_ftm(struct sk_buff *skb) { - TODO(); + struct ieee80211_mgmt *mgmt; + + /* First check length before accessing data. */ + if (skb->len < offsetofend(typeof(*mgmt), u.action.u.ftm.public_action)) + return (false); + + mgmt = (struct ieee80211_mgmt *)skb->data; + if (!ieee80211_is_action(mgmt->frame_control)) + return (false); + if (mgmt->u.action.category != IEEE80211_ACTION_CAT_PUBLIC) + return (false); + if (mgmt->u.action.u.ftm.public_action == 33) /* FTM xxx defines? */ + return (true); + return (false); } static __inline bool ieee80211_is_timing_measurement(struct sk_buff *skb) { - TODO(); - return (false); -} + struct ieee80211_mgmt *mgmt; + + /* First check length before accessing data. */ + if (skb->len < offsetofend(typeof(*mgmt), u.action.u.wnm_timing_msr.wnm_action)) + return (false); + + mgmt = (struct ieee80211_mgmt *)skb->data; + if (!ieee80211_is_action(mgmt->frame_control)) + return (false); + + if (mgmt->u.action.category != IEEE80211_ACTION_CAT_UNPROTECTED_WNM) + return (false); + if (mgmt->u.action.u.wnm_timing_msr.wnm_action == 1) /* Event Report xxx defines? */ + return (true); -static __inline bool -ieee80211_has_pm(__le16 fc) -{ - TODO(); return (false); } static __inline bool -ieee80211_has_morefrags(__le16 fc) +ieee80211_has_pm(__le16 fc) { - - fc &= htole16(IEEE80211_FC1_MORE_FRAG << 8); + fc &= htole16(IEEE80211_FC1_PWR_MGT << 8); return (fc != 0); } diff --git a/sys/compat/linuxkpi/common/include/net/cfg80211.h b/sys/compat/linuxkpi/common/include/net/cfg80211.h index 305026b34451..d7ed2bc97c98 100644 --- a/sys/compat/linuxkpi/common/include/net/cfg80211.h +++ b/sys/compat/linuxkpi/common/include/net/cfg80211.h @@ -55,10 +55,14 @@ extern int linuxkpi_debug_80211; #ifndef D80211_IMPROVE #define D80211_IMPROVE 0x2 #endif +#ifndef TODO #define TODO(fmt, ...) if (linuxkpi_debug_80211 & D80211_TODO) \ printf("%s:%d: XXX LKPI80211 TODO " fmt "\n", __func__, __LINE__, ##__VA_ARGS__) +#endif +#ifndef IMPROVE #define IMPROVE(fmt, ...) if (linuxkpi_debug_80211 & D80211_IMPROVE) \ printf("%s:%d: XXX LKPI80211 IMPROVE " fmt "\n", __func__, __LINE__, ##__VA_ARGS__) +#endif enum rfkill_hard_block_reasons { RFKILL_HARD_BLOCK_NOT_OWNER = BIT(0), From nobody Mon Dec 8 15:44:18 2025 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 4dQ5rL6vDPz6K06p for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rL4JjPz44CT for ; Mon, 08 Dec 2025 15:44:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208658; 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=BTWWqV96a/gRKcpGyObX/1XXicnT/3sb117u0cAjgLI=; b=s3iDqDjY/xM8CiWPsTResuAN46AOurkyItMY7vjnIPvii4DFFc938twGYwnw9qnJ6V6QvU fT/CjfHwEy0B35e52VYULx3p1bwXM+6N88cj17HPK/Rm4IBrvM1ekVlDDaQB0NDZzl/zDN z0tUN4f2CqOilJlUp59BcGvM77Pf9zvNG0ylkfsOU4RJWwG6r09SyccazEhiGzlX2DRhe1 R3TyXdYS0UUY7U8aUzcF+KaGiJqqrL5zDOAFR/tfnq5XM3TjjeBegRZt+0bVg44K1bLCGT 9ut3sIAbcxby8J+FEQ4yMLSmnLbEJPAnnxjelghB0wPX3IZgUCjF8cPA0lF/xA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208658; 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=BTWWqV96a/gRKcpGyObX/1XXicnT/3sb117u0cAjgLI=; b=RevjsddyM4r2tRrB+iiytS9lK4TYFmKcxG2+jSmaojn+cPXTLc2Euk1M6X1VzJyUYDnorI 47jzixPtfZu11QTMv3hDnApAzT/BF+0qh2iFpFkSsFd9ZrLfJMEsGn6SC5HOxkYpQe3Vym kQuur8cGjjME1X/b4nQ+5DCeyEJl1puCo/JzhEFwKhSuTKWYS+DLLV357a/3FpgIsOn8ha BmaFkHaYQ98FWWosxgrlA98xSvSBKHGeAeXERofm88vm0PiVEAhqa/nDgt+re0C9BJ1qP+ Js8AjCrwyOJt7J1f6HHPYdsV+pzGA+/4c6OlCqMoQodAvW2vp4r3CW0ss/ASiA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208658; a=rsa-sha256; cv=none; b=aYGVGkmDFERk0wtZtxdJAcyvbNM8LYQ5MRfbcV2pMsgUxDkKOUimEq//Vje+YuNBditmP5 Y/Ki5OCMgG5Ha9qSlU+AzNA0+6emnXfraJhjbJiBS452oq6vloaRaC/Pyk5e01HhqKEpsU u39Z1M/elKEgNO8H+Ujahz61G4J+0Kogil0duQ87+2zmB7DBxCemcRdqjUpQiRQUlHED5h MZHRvUM/WgZwru39WvI6RlqPPF6EL9aDWcMoGpXoUOISLU+KqCiUuAxamNOMFbbfcH8Ej0 YOSmltjvNkAm6U4W27fR/0hQclv24dDdkjxsDMVAWAWsRsGpM+JdGPmtBFZi/A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rL3qPjz3fT for ; Mon, 08 Dec 2025 15:44:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 38d8d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:18 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 0f496780deee - stable/15 - LinuxKPI: device: add a pr_debug("TODO") call to device_release_driver() 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 0f496780deee49cfd86f4e02db775b706405fef9 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:18 +0000 Message-Id: <6936f252.38d8d.13089475@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=0f496780deee49cfd86f4e02db775b706405fef9 commit 0f496780deee49cfd86f4e02db775b706405fef9 Author: Bjoern A. Zeeb AuthorDate: 2025-12-03 01:09:24 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:52 +0000 LinuxKPI: device: add a pr_debug("TODO") call to device_release_driver() The logic in device_release_driver() got disabled in 93b14194acaf2 and since left alone. Add a pr_debug() call so we have a chance to notice if that code is actually still in need to be fixed and re-enabled. Sponsored by: The FreeBSD Foundation (cherry picked from commit fc9666d0fc0c2541e44bfbcaa5bb1b670395687c) --- sys/compat/linuxkpi/common/include/linux/device.h | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/compat/linuxkpi/common/include/linux/device.h b/sys/compat/linuxkpi/common/include/linux/device.h index c291133e2e0b..8834f1799e61 100644 --- a/sys/compat/linuxkpi/common/include/linux/device.h +++ b/sys/compat/linuxkpi/common/include/linux/device.h @@ -557,6 +557,7 @@ static inline void device_release_driver(struct device *dev) { + pr_debug("%s: TODO\n", __func__); #if 0 /* This leads to panics. Disable temporarily. Keep to rework. */ From nobody Mon Dec 8 15:44:20 2025 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 4dQ5rP43CSz6Jyc3 for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rN5wZqz449T for ; Mon, 08 Dec 2025 15:44:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208660; 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=tc8bZpclt16x1c9GgQqMUPsF6PMjDfsRVugjcwrbx6g=; b=DM+6aBxJ07DuYA2s7l3zSrA9K/BFyJv5hVdc1Q1bffNnMFJuaHvgkeHikPVq89f3yNQE1v VmMdJgQ0FBBAtagahhIiaJsVGDhhsz+KpIfUW16KVVxFDjoPuuh3ydIRtH8qLmYyiHVri/ 7iQK3UAQuN8xiOEPcLd2wxvp04vR0SKs9QNRYHSmtCOkHOBH76cs4Shar50burnQaIBKlH oe1lE6gOB61bD2txTcY2cdYzCQopgYjbEpv1ZSk5oCAHrPgPxy7lqLGbF5Mryn9tnXVn2m 8/B/si448sVKKQbuxFDzDwbUzYK8EjNgstIkkexqmyDAsusBhJZSt6cTdhS23A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208660; 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=tc8bZpclt16x1c9GgQqMUPsF6PMjDfsRVugjcwrbx6g=; b=Q5l8ovwgoyHXMaQO/7YJQAsCaETY5w9b/KJ/TPnHWkHrcggiryC/fksUup19pvm30UUkvk 8oKD0qdu1EuBnAHG0fG/wknVsmvBK+W3Rn/wqUlZspy10Du1UmzA2vD3WYqmjSF11y0kbf PTYpgC155GQw+7t4OzYb+8xJ9pz8zpV4X61SUvM1uUKz5nRv0Z+Z3COFib8pQnzp8r+mhj N0neJ07Wd8qTPlzEfeVdExHvc66Mi68K2IB0sMehuiygCbSp1LANbn8vuzrpwFgxdc2ld0 l6345tIdtBxOvT4x84uqMxiNd3mrd+KUSQvQLuKt1c/9lx1MOXzoAI+j1ECSXQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208660; a=rsa-sha256; cv=none; b=rcfXD8IjKCnGK6iB8IMa2fTbZup2x2n23Iswm9WYp/NLt4kHJORJZULa6oV57wPVe0Mc6k HjqpNPxcTyZjmKo1jjAquwXds/CDp0FeoBy8S9l0Zzb6AL11KFl2Hgbdhc0WyB0N5RBVvj 4XxAMhBmOXCkWp61gn2CS5DS1+qqm7fRS19hEs/xGROQdYhHnQan8kFwW1hzHFVkYvZb6E +ILj7h9YnlpA7Nw1h3pt4MU0uJdXFciVHmetWlBb7dJXJTWYF4jPmzToiuiaSLl3AzrTAt 8hOcfmU3Srw3pIZdA9OUvP8iKxWTjnB+2kJqrdQWy26DFR5F8AQmyiV17H0Q/A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rN5X89z3hb for ; Mon, 08 Dec 2025 15:44:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 38d0c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:20 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: a714641fa538 - stable/15 - LinuxKPI: 802.11: move ieee80211_offload_flags 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: a714641fa5380cc320d23181d4b18f7f89ccd183 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:20 +0000 Message-Id: <6936f254.38d0c.228e07d8@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=a714641fa5380cc320d23181d4b18f7f89ccd183 commit a714641fa5380cc320d23181d4b18f7f89ccd183 Author: Bjoern A. Zeeb AuthorDate: 2025-12-03 00:58:03 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:53 +0000 LinuxKPI: 802.11: move ieee80211_offload_flags Move the enum and leave a comment on the struct member for the vif about the type. No functional changes. Sponsored by: The FreeBSD Foundation (cherry picked from commit b10ff7ed37a9b891bec7e1093e44fa7abb2054b4) --- sys/compat/linuxkpi/common/include/net/mac80211.h | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index ea9797befe58..6e2f3f2d8781 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -824,11 +824,17 @@ struct ieee80211_vif_cfg { uint8_t ap_addr[ETH_ALEN]; }; +enum ieee80211_offload_flags { + IEEE80211_OFFLOAD_ENCAP_4ADDR, + IEEE80211_OFFLOAD_ENCAP_ENABLED, + IEEE80211_OFFLOAD_DECAP_ENABLED, +}; + struct ieee80211_vif { /* TODO FIXME */ enum nl80211_iftype type; int cab_queue; - int offload_flags; + int offload_flags; /* enum ieee80211_offload_flags */ enum ieee80211_vif_driver_flags driver_flags; bool p2p; bool probe_req_reg; @@ -945,12 +951,6 @@ struct ieee80211_low_level_stats { uint32_t dot11RTSSuccessCount; }; -enum ieee80211_offload_flags { - IEEE80211_OFFLOAD_ENCAP_4ADDR, - IEEE80211_OFFLOAD_ENCAP_ENABLED, - IEEE80211_OFFLOAD_DECAP_ENABLED, -}; - struct ieee80211_ops { /* TODO FIXME */ int (*start)(struct ieee80211_hw *); From nobody Mon Dec 8 15:44:22 2025 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 4dQ5rR2FVsz6K0CS for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rR02QWz44GZ for ; Mon, 08 Dec 2025 15:44:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208663; 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=mqu6wktXJq8YGlaW8NVUkKklocO7n+PnWDQ+ZO826nk=; b=jz3uY7Wy/E9wFBh2lAainPetxyy9Nkd8n02F8NNK0+BAFbyxdRZqS2ztWe/tfJjUY+vpwM 3/1g5TEKPRNSz8XJnq1cKEbUSteGp+vkg22K8oscGX6Rp2H2xkyuaSRX7f5GEt6+AVyeyj ENh3bfXncM37M7ZD9CC3grjADXu+1r3oTck8yyaxdRJ3hITZLrHVDpQuBysADQD4ZpO7VV vWiN9z+EcvSP6jGi778/A+LaXHsr8VjEJhe1P6O7nfhjdn4kYj+U7w2pfFYmyaGor54HPZ HrEA0CigrF24OKiISjPnCIDuJli3JCH7eherTdz/yPvoGNX6/hjZ1DYDo4sdAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208663; 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=mqu6wktXJq8YGlaW8NVUkKklocO7n+PnWDQ+ZO826nk=; b=eoNB6qDm0A5BgtULk9zVI4A0GdWAGBff2+l5DZHDy1ZJwvlBqGPS/9XHjkuKs6p0EtdCW/ bJrrHikCK79jn/zNs5Q6dUZng3pu12aEEl6WhpS4Y3V3Yc8tgmx5dNbkI9qZ3V6+XpKZIa 5XoRdPLWuVvzOV3lE+fs3nPmKqqvl7xJcNWEzJsafZBWlaID+807zCTfWyyHrwfCY9WaE6 TD1K5kq+Q19H9mT/A0QhkJB+dbOLPuDi9fVZLSvUkuMaEB5BPe9ip5dF2d9hF1oyxPv6oX epr2/IFX2tN36iYTsk6bIIBU05T4sa8GBoK+Q2d1i9Y+NoOEMbI6FlhEiIl3mg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208663; a=rsa-sha256; cv=none; b=oBzXUT2luMQSh3EIn8/vyPP/tLCuI2WWfYMCrKkzaiQoIPku79y96qXSv6zTwo6PcSharW BCjfJjA0B5yEsXbfWfU4ZqGlb2qkfkRM2JfrAVczPL9LofEkah5pcDfEz0z+aca3fyl9Lk rdfoaX2EkeZNY6wq4c2xiRTiZ8nJC0j11WR1GUc9am5sVwWCxuq2B+IEOESr7fQGS0eRNf R0eWoSrsIlw7/vbloUyZmVvQnhdHW+20thj2GnQsAs763FXqd5Z+7ZmIlK/iH6SzMfOUtZ 25traof4h9nhkgi3vGd39imSquClLHi8EH86i6k3HVRH1LEzIbqYR+gdHiKQuQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rQ6fNgz3CD for ; Mon, 08 Dec 2025 15:44:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37aaf by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:22 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: e2ebe56c50e7 - stable/15 - mt76: set appropriate CONFIG options for the module build 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: e2ebe56c50e77f3302c85a8203f8fa4050ae0f54 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:22 +0000 Message-Id: <6936f256.37aaf.6bb26b9f@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=e2ebe56c50e77f3302c85a8203f8fa4050ae0f54 commit e2ebe56c50e77f3302c85a8203f8fa4050ae0f54 Author: Bjoern A. Zeeb AuthorDate: 2025-11-25 17:16:49 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:53 +0000 mt76: set appropriate CONFIG options for the module build Always set CONFIG_ARCH_DMA_ADDR_T_64BIT as it is true for all architectures we support. Add an option for CONFIG_NET_MEDIATEK_SOC_WED, which we currently do not yet support. Sponsored by: The FreeBSD Foundation (cherry picked from commit 87aa494dfca73204516799033821ab1db184933f) --- sys/modules/mt76/Makefile.inc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sys/modules/mt76/Makefile.inc b/sys/modules/mt76/Makefile.inc index 35a8e34f14d3..44aa94c954a8 100644 --- a/sys/modules/mt76/Makefile.inc +++ b/sys/modules/mt76/Makefile.inc @@ -6,11 +6,15 @@ COMMONDIR= ${SRCTOP}/sys/contrib/dev/mediatek/mt76 WITH_CONFIG_PM= 0 WITH_DEBUGFS= 0 +WITH_SOC_WED= 0 # Other SRCS+= ${LINUXKPI_GENSRCS} SRCS+= opt_wlan.h opt_inet6.h opt_inet.h +# This is true for all architectures we build for. +CFLAGS+= -DCONFIG_ARCH_DMA_ADDR_T_64BIT + # Helpful after fresh imports. #CFLAGS+= -ferror-limit=0 @@ -22,8 +26,13 @@ CFLAGS+= -DCONFIG_PM=${WITH_CONFIG_PM} CFLAGS+= -DCONFIG_MAC80211_DEBUGFS=${WITH_DEBUGFS} .endif +.if defined(WITH_SOC_WED) && ${WITH_SOC_WED} > 0 +CFLAGS+= CONFIG_NET_MEDIATEK_SOC_WED +.endif + CFLAGS+= -I${COMMONDIR} CFLAGS+= ${LINUXKPI_INCLUDES} CFLAGS+= -DLINUXKPI_VERSION=61700 + # end From nobody Mon Dec 8 15:44:21 2025 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 4dQ5rQ2tkwz6K04b for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rP6RKGz44D3 for ; Mon, 08 Dec 2025 15:44:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208662; 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=LY0TWIL3/Bb3kvy/gk+zlKJBjQChik64D3nAiJclbe0=; b=K1FDg6xBboBw/FMdwi6j9zgPYkedsTTrA01ptWgbMJRPNOHEdI5Mz6dqOl5iKnw2BHfkk9 Aio6NjJEF1/vGLEs+DbTcwbIKFtHtHHKsFkzQoe8NbGa1j6NQuVo/ixme/AiNqAOAy0Wxc QPsCdAEsS4P6z23/4KkDwVjuh+PdVuuz9p4zPd+xDFntm8DC6sznPeL/bnlIO27k0SZlj3 85BRyOb/c9ZC3+Jxzf93EPesa6qMLIQQsG3wBWXZzOL+VNDVmdt/wOc4UlHxR9G/mimDX2 Antuf84P5XwInj0Tfk9dEbQgyjl4+t/MvCrrNgaCOqC9nqmPs+IEwZ2wFFIKXA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208661; 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=LY0TWIL3/Bb3kvy/gk+zlKJBjQChik64D3nAiJclbe0=; b=HELrAx1mGqV84s4ax1jYVq7moY76JSDmBcQvy9vXg2MA6FWjQa0bt+fT3MuxE2PVgVr2pK c4NQjt1TJV5z8vwhJDdQ2GY3CWhsi1dLVbyzSFtMjUH/1UVhqf8O2zXFHFqlgMRMdMAk01 Yd3UGZTBDSxzQD3Yj20QBW9mQIoPnXCvDqfO0sw0ZZiuO3F8N/PqMIs+VdKPNg+1m1A7xD ws9eal67UhC/Dup8j4LEVs02f1iduk7fc63WFV1I/XqFq2x48oYpJGVOyqu/DEK+sdeHCr 2ium6p45qpLkW+X5AsODrIvqAj+cPXCdSitjhurIH6Gwt2QBcTz2OQFA0vr6YQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208661; a=rsa-sha256; cv=none; b=G5tBcETIsE4BavvcjGX3K1F0BJM+3qXf1Rel6kLQ96yLRAiu7FPbjblIg2jCAmBoRSUqyy /Gjx9pNAF39aH682jWBW49c/KDB6MtHsR8oCjiZ2ux3DaxuYWnd4DthQ9oKtEYt25zDhK3 rN+xqc61pkJtcKL4Vezs2gzJ1xCEtMcBeA7krvQiyQeYWccWv/jykq5glCM/oV2PLODFTh 8yWAEpzy37hH2onBdrSnfrCd5rEojCdgidEavInM2Nl60U3w6VeR9LykfRDRW8kp9sHpzK aUti+Hc0AIVK+TgVM3WNfHhd6XMI64M4Iifv7uNpH/PfKwgyz+oSzVcRZKB7sg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rP61W5z3vm for ; Mon, 08 Dec 2025 15:44:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 39a81 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:21 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 7ed3a99f3563 - stable/15 - LinuxKPI: mt76: depend on CONFIG_NET_MEDIATEK_SOC_WED 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 7ed3a99f3563fce1f1088a376151e7ad68b738d6 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:21 +0000 Message-Id: <6936f255.39a81.3abac974@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=7ed3a99f3563fce1f1088a376151e7ad68b738d6 commit 7ed3a99f3563fce1f1088a376151e7ad68b738d6 Author: Bjoern A. Zeeb AuthorDate: 2025-11-25 17:20:50 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:53 +0000 LinuxKPI: mt76: depend on CONFIG_NET_MEDIATEK_SOC_WED If CONFIG_NET_MEDIATEK_SOC_WED is not set then be silent; if CONFIG_NET_MEDIATEK_SOC_WED is set we will enable logic or rather te pr_debug("TODO") calls for now. Spsonsored by: The FreeBSD Foundation (cherry picked from commit 51c73fc5f5dd95c6a0e3d232091a732a14c7ecc9) --- .../common/include/linux/soc/mediatek/mtk_wed.h | 28 +++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h b/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h index 9f3a1ee4c139..2b9c6ae4911e 100644 --- a/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h +++ b/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h @@ -14,6 +14,7 @@ struct mtk_wed_device { #define WED_WO_STA_REC 0x6 +#if defined(CONFIG_NET_MEDIATEK_SOC_WED) #define mtk_wed_device_start(_dev, _mask) do { pr_debug("%s: TODO\n", __func__); } while(0) #define mtk_wed_device_detach(_dev) do { pr_debug("%s: TODO\n", __func__); } while(0) #define mtk_wed_device_irq_get(_dev, _mask) 0 @@ -29,7 +30,6 @@ struct mtk_wed_device { static inline bool mtk_wed_device_active(struct mtk_wed_device *dev __unused) { - pr_debug("%s: TODO\n", __func__); return (false); } @@ -42,4 +42,30 @@ mtk_wed_get_rx_capa(struct mtk_wed_device *dev __unused) return (false); } +#else /* ! CONFIG_NET_MEDIATEK_SOC_WED */ + +#define mtk_wed_device_start(_dev, _mask) do { } while(0) +#define mtk_wed_device_detach(_dev) do { } while(0) +#define mtk_wed_device_irq_get(_dev, _mask) 0 +#define mtk_wed_device_irq_set_mask(_dev, _mask) do { } while(0) +#define mtk_wed_device_update_msg(_dev, _id, _msg, _len) -ENODEV +#define mtk_wed_device_dma_reset(_dev) do { } while (0) +#define mtk_wed_device_ppe_check(_dev, _skb, _reason, _entry) do { } while (0) +#define mtk_wed_device_stop(_dev) do { } while(0) +#define mtk_wed_device_start_hw_rro(_dev, _mask, _b) do { } while(0) +#define mtk_wed_device_setup_tc(_dev, _ndev, _type, _tdata) -EOPNOTSUPP + +static inline bool +mtk_wed_device_active(struct mtk_wed_device *dev __unused) +{ + return (false); +} + +static inline bool +mtk_wed_get_rx_capa(struct mtk_wed_device *dev __unused) +{ + return (false); +} +#endif /* CONFIG_NET_MEDIATEK_SOC_WED */ + #endif /* _LINUXKPI_LINUX_SOC_MEDIATEK_MTK_WED_H */ From nobody Mon Dec 8 15:44:24 2025 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 4dQ5rS6YhTz6K0CW for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rS0cFPz44DL for ; Mon, 08 Dec 2025 15:44:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208664; 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=uT2BKbuM0vWSfDe+WqXxXKrE23Uwvnz+YsVZDh7FkC0=; b=jRWI2eCe5o5aLzcul3yq8ejz7+ym3yZJTKh9kgwyYJXEzWgmZFvs7Urmx9zXCClvQiXukb LEo2u3Wp85K0gHJu3/Aw2n15tvR5toDfI80884+iJFvsCNupiMd27pO9ecgZAvG1qXNm+5 JWeQRDlJiRzcNXASpg6BzUKaQPbezQYb+WFUe1JQugLhKCWgPXPPtDugur5VVyvG80HHgk g613qUG89TkWxKInJOSMHJY9qC5sHRlCaIyXXjedSiq8VVyT28HAwrCPMlWHb8dGbw75Jf Glpsnkzg0rFQBw/RgV5sye7Kv0f/ZaZbM42pSW2E1/7z8z10ebFLUz3AVE31wA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208664; 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=uT2BKbuM0vWSfDe+WqXxXKrE23Uwvnz+YsVZDh7FkC0=; b=oK1JJMXHL3O1wUHa1sRXlWdmX3aViel/5Y1xjIiFe0pdt4xiDt81mMfK/hs5rcevST8S5T /bWSuRHylOQ4HYEC7CZ5SpmUC6WfZsnEmIj2JaiKX+HH+VUSfFk8UpqDl2Wca+6D6YhVu3 2ur1/YhMOzqsej6iqSINvghMo9Y4kmpt1NLrE9lBd+Ps7u3b+HMhc+fAB99rwETkSk+O8J rPocvXOPKjuG8iuIN4MI0gJZ2ALLzvkx8hSfk/SBgQtDeZJlZTKGbAFm6QbBkM+bkCKH2S vcaGStPqlwLkF+soSinbCd+s709hjVUgagQEpk+NCs7lzbkX7fsyMZ8Zrnq3Mw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208664; a=rsa-sha256; cv=none; b=E9X4o0tlKS56GSwnh1+K7ia5H/lsdfc/T0meacJTvqUapT60bzjpMgc3lWMWfgAz7GGXH+ lDhgtsZCslh382yq2Hhe/Eq1zoBV7zsLtBqk1wUebiVt1IiY15jMucIxeEVL2na5b7zKge FPrvD+ZEs4wT+K21Whzjd3TKX7Kac9pPsMw8jrmX5AOpeY74WbqGKhjeEhl9DFBwMd8cer H3mnXFlTI/eHKWAokdEpz6Ko2W6uvByIoWiARIHphlErr0aS8vjEALiOtMPP/1FbRtdxzO TenhWCIsqoRjdyLIf/PifXnhd+uZZMxVp8Sj1nT6b9UqgLkC3zDLO4kuFhaeCQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rS08PPz3vn for ; Mon, 08 Dec 2025 15:44:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37ab3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:24 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 4b61bd759c34 - stable/15 - mt76: ieee80211_is_first_frag() operates on the seq_ctrl field not on fc. 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 4b61bd759c345c3fbfc0b18c9529a77124f48b82 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:24 +0000 Message-Id: <6936f258.37ab3.63cb506b@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=4b61bd759c345c3fbfc0b18c9529a77124f48b82 commit 4b61bd759c345c3fbfc0b18c9529a77124f48b82 Author: Bjoern A. Zeeb AuthorDate: 2025-11-29 00:51:36 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:54 +0000 mt76: ieee80211_is_first_frag() operates on the seq_ctrl field not on fc. Pass the correct field to ieee80211_is_first_frag(); otherwise the results may vary. Sponsored by: The FreeBSD Foundation (cherry picked from commit c67fd35e58c6ee1e19877a7fe5998885683abedc) --- sys/contrib/dev/mediatek/mt76/mac80211.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/contrib/dev/mediatek/mt76/mac80211.c b/sys/contrib/dev/mediatek/mt76/mac80211.c index 927d8519104f..d2ace8870451 100644 --- a/sys/contrib/dev/mediatek/mt76/mac80211.c +++ b/sys/contrib/dev/mediatek/mt76/mac80211.c @@ -1340,7 +1340,7 @@ mt76_check_ccmp_pn(struct sk_buff *skb) * All further fragments will be validated by mac80211 only. */ if (ieee80211_is_frag(hdr) && - !ieee80211_is_first_frag(hdr->frame_control)) + !ieee80211_is_first_frag(hdr->seq_ctrl)) return; } From nobody Mon Dec 8 15:44:25 2025 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 4dQ5rT5Kp6z6K0G1 for ; Mon, 08 Dec 2025 15:44:25 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rT1c6wz44Mq for ; Mon, 08 Dec 2025 15:44:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208665; 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=8rdUWG+9eXhyGOHT6FgejB8TNTGgGIDoTA/SM2MggdI=; b=PjTl7a9+DSp/C/PA5qBTfINxF323kR8HaC5FQ8D3BPqEeB15dTo7ksAS+SmDW5R678SOz2 +XuV86RXe5wI3rJrPP+mD+J4oIGyUHjZHCeVgI2zVacjM7Pee2OyxRTh502o2BbukZJIhO zCHHYTUobJ6N6WDiRS5poogU23LIb3MBroMpm0NLFk3DDFnOOJ+DAs+izHkTBVrTvgHTT+ pGVjnG4llSzRAwBhLn3+XvX+n2TBbwJ1y3xpP5fVTbRPbSxW79lCeV9ar663tC7Mbj97uz 7/YowkrvpE+1cPEyqf7SYAPLTHk6YHeCVrLTuMjX19gFQDhjpX0kB8hAG7Vpvw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208665; 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=8rdUWG+9eXhyGOHT6FgejB8TNTGgGIDoTA/SM2MggdI=; b=vMQzC+xKtmUV6lidEwgmZbpTssBbnKjJng/pLqOCphQlRz8qtQpz1sXU2T2XtSIlSSl0u6 /gRc9bDbTiLMWQV39jd8480PolOQa5M1fHyrnZH7e1Bzjq/lQbhyZ5Wu07rw273qR4goB4 p2ju5zATduvQpyZVttIvTjSMazRJE/mk5WeZWixxopTfhuDUCOBZb4FOpAmJ8IsQ5WonUv 01eR4xnZY7dPx2d6UPDDygsbWDtEVrKkfgY/lOl9FGcv6h0E6zzgun6bWUO6KtjMXDK9c6 EHA4otf03n6KVoY4StLlBw/oFjkBIoP8r134KA+Zj91rrcYJbptPh622mpCqpg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208665; a=rsa-sha256; cv=none; b=Haj1LJcrXyxQbwImHLu6xLAdV+ICBberoTk9VrlzFw8Zda0EsD5ThjTKFys+Fm5zQsKPRc 7o6DJXBNavFvgWg/oxxgo15wCpDg63nvDG/YlJwMG07XPnfmITqXTEqzK+uSeFEscNt8UP 3wowG5H99BEdnNiyBPjipxZ9TTJYoHfwBXsX+vEkLYU7yNukRu9zyYfzjH0u4uSYnUCIWu hxloYzFg4bVWG8RdsSKcZxwAhklnVDRwaED4KqosSV9HsfTLR7U6Z5e5Gd7ZhCvdfAU3F1 IBxuM9sktKY4Bgnr56fDSA57INM5bMdtae8edFhHoyulca0nOju0Zs7pJ00Frg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rT0vPZz3PP for ; Mon, 08 Dec 2025 15:44:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 38b98 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:25 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: c22fa080c766 - stable/15 - mt76: util.h: extend worker 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: c22fa080c7661903094c9baeb99f9318bc5a1aef Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:25 +0000 Message-Id: <6936f259.38b98.2631103d@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=c22fa080c7661903094c9baeb99f9318bc5a1aef commit c22fa080c7661903094c9baeb99f9318bc5a1aef Author: Bjoern A. Zeeb AuthorDate: 2025-12-03 01:01:28 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:54 +0000 mt76: util.h: extend worker name In mt76_worker_setup() add the "name" argument to the description for the worker thread. That way we have a chance to keep them apart. While here, rename a variable and shorten the the (c)/SPDX section according to new style. (cherry picked from commit 9492230fd3d1e58696e9fd99cb9680b27bf1d424) --- sys/contrib/dev/mediatek/mt76/util.h | 39 ++++++++---------------------------- 1 file changed, 8 insertions(+), 31 deletions(-) diff --git a/sys/contrib/dev/mediatek/mt76/util.h b/sys/contrib/dev/mediatek/mt76/util.h index f6c0ecaf33e6..73a784fe2707 100644 --- a/sys/contrib/dev/mediatek/mt76/util.h +++ b/sys/contrib/dev/mediatek/mt76/util.h @@ -1,30 +1,7 @@ -/*- - * SPDX-License-Identifier: BSD-2-Clause - * - * Copyright (c) 2020,2022-2023 Bjoern A. Zeeb - * - * 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. +/* + * Copyright (c) 2020-2025 Bjoern A. Zeeb * - * 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. - * - * $FreeBSD$ + * SPDX-License-Identifier: BSD-2-Clause */ #ifndef _MT76_UTIL_H @@ -69,23 +46,23 @@ mt76_wcid_mask_clear(u32 *mask, u16 bit) /* See, e.g., __mt76_worker_fn for some details. */ static inline int -mt76_worker_setup(struct ieee80211_hw *hw, struct mt76_worker *w, +mt76_worker_setup(struct ieee80211_hw *hw __unused, struct mt76_worker *w, void (*wfunc)(struct mt76_worker *), const char *name) { - int rc; + int error; if (wfunc) w->fn = wfunc; w->task = kthread_run(__mt76_worker_fn, w, - "mt76-worker"); + "mt76-%s", name); if (!IS_ERR(w->task)) return (0); - rc = PTR_ERR(w->task); + error = PTR_ERR(w->task); w->task = NULL; - return (rc); + return (error); } static inline void From nobody Mon Dec 8 15:44:26 2025 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 4dQ5rV5kPTz6K0G3 for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rV1zPCz443N for ; Mon, 08 Dec 2025 15:44:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208666; 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=z7b4rivyzba2WnaPtI9pLAQqKeyLO49A1Rde74dJZfQ=; b=CREtjWSxwhoiO5HgHCi0BqjoTVWxY0JvQec5NyWbj2KPPNuqW3ADFEUMlsaZRU+e4Xfmr/ 3kkOdIjwn7vm2dGMPQAa7s1bqj2gqzkT1EV/BS9CF+lNgpFDjWLg8w8vPft21gHTB+0WLB vJDk61Lz1I6bWSwSJIMTAYVcWnDIx2KtSdAL14NeEmwVvweZky492hvBybgjjjcnvYhmP/ 3hOdeRSczuM12a6vddY8G2UebD7vjfCA6Q8oSvvRB3S1GONSyfcz1QUkLFXDrCVEL8xw22 9XQDcPdE5Npw7a9a26lt3oocDPoXGYt017gsqylrieWiK64Rh3Rtg1mpy5j7YA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208666; 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=z7b4rivyzba2WnaPtI9pLAQqKeyLO49A1Rde74dJZfQ=; b=oghBU2wJNpCvaEaCoEgHKLUtc9ZdHur1vQzHodL9+DGC/RdsF2Zh3+mSLctrCrxUkj4Zb6 wxJhWVsEjZfEBVGS1N7fqSMG2MI+/kD2x8MVkMU4yg+R/H1NeScIF7SUoS78c3jkR/iz1P EeRtlcFZ0RPJOrQorTyeUY17zvvN2tNt+pgvarVzaZYHliEr9J8H671w1ZSM6VARuyebmU 8q1lB/vAT8j/w7Ft0Ne3BIut8wZ8wucvOJFjlT694y8MxqQYh7ec1TmSM3e7Fg9tZPAsjC wJA8FE9219VDyKP3tBfn0idK+aY83svewQD+FFs6tKLyqtIYxLZ1gG2Bbf5JOw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208666; a=rsa-sha256; cv=none; b=MeZegvclx+I3C/fmWdjiCp9XA9W2UFbTiGawNBhyrmHMho/74zB2OGd6pQZJ/oEHkwHKUz pos7BlU182l2JBbUyy3WK3Owde/q0clpQ0djpxJ8IMk5eDHMVRJDLKtvsMq62VYvj008Pv 8aa8KeCJA9W0ubNdAHd4VyMeXWjT/g6jUTK64wZwo2LDk57YmRA6QihS7zOI28ZR/eYG+m SQTJ4MjouPwpijSjA5cG366qAGGtzkNYAjSM9qW73sNt4JIY3IPGhCoGt+0TpezqQ+mkef agNCdOf1fhEqNHd0TAM6UeC/KfDdfpK0zj7NOjbybmsnv8pS/+8mIt8OSmXCng== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rV1PLgz3PQ for ; Mon, 08 Dec 2025 15:44:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 374e8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:26 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 8f7cbd2ecaf1 - stable/15 - mt76: add LINUXKPI_PARAM_PREFIX for module_param* 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 8f7cbd2ecaf1fd89974c15f0598a67ee57fc5afd Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:26 +0000 Message-Id: <6936f25a.374e8.c584daa@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=8f7cbd2ecaf1fd89974c15f0598a67ee57fc5afd commit 8f7cbd2ecaf1fd89974c15f0598a67ee57fc5afd Author: Bjoern A. Zeeb AuthorDate: 2025-12-03 01:05:05 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:54 +0000 mt76: add LINUXKPI_PARAM_PREFIX for module_param* In order to not overwrite sysctl/tunables under compat.linuxkpi we need to prefix the module_param* names with a per-driver/file designator to make them (more) uniq. Add the FreeBSD specific LINUXKPI_PARAM_PREFIX defines for that where missing in mt76. Sponsored by: The FreeBSD Foundation (cherry picked from commit 853e0440c97a4a1797edd6d653fba4398dc885e8) --- sys/contrib/dev/mediatek/mt76/mt7915/coredump.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7915/eeprom.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7915/mcu.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7915/mmio.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7921/mcu.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7925/mcu.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7925/pci.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7996/coredump.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7996/mcu.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7996/mmio.c | 4 ++++ sys/contrib/dev/mediatek/mt76/usb.c | 4 ++++ 11 files changed, 44 insertions(+) diff --git a/sys/contrib/dev/mediatek/mt76/mt7915/coredump.c b/sys/contrib/dev/mediatek/mt76/mt7915/coredump.c index 5daf2258dfe6..8c9a69837c86 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7915/coredump.c +++ b/sys/contrib/dev/mediatek/mt76/mt7915/coredump.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2022 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7915_ +#endif + #include #include #include diff --git a/sys/contrib/dev/mediatek/mt76/mt7915/eeprom.c b/sys/contrib/dev/mediatek/mt76/mt7915/eeprom.c index 0df2bd93c82e..9214286ca000 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7915/eeprom.c +++ b/sys/contrib/dev/mediatek/mt76/mt7915/eeprom.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2020 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7915_ +#endif + #include #include #include "mt7915.h" diff --git a/sys/contrib/dev/mediatek/mt76/mt7915/mcu.c b/sys/contrib/dev/mediatek/mt76/mt7915/mcu.c index f83f4eaa8a24..17c9c261960f 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7915/mcu.c +++ b/sys/contrib/dev/mediatek/mt76/mt7915/mcu.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2020 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7915_ +#endif + #include #include "mt7915.h" #include "mcu.h" diff --git a/sys/contrib/dev/mediatek/mt76/mt7915/mmio.c b/sys/contrib/dev/mediatek/mt76/mt7915/mmio.c index 83a828b7c578..ace2441d41a9 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7915/mmio.c +++ b/sys/contrib/dev/mediatek/mt76/mt7915/mmio.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2020 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7915_ +#endif + #include #include #include diff --git a/sys/contrib/dev/mediatek/mt76/mt7921/mcu.c b/sys/contrib/dev/mediatek/mt76/mt7921/mcu.c index 4b95d7c0a225..57b9de7a6659 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7921/mcu.c +++ b/sys/contrib/dev/mediatek/mt76/mt7921/mcu.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2020 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7921_ +#endif + #include #include #include "mt7921.h" diff --git a/sys/contrib/dev/mediatek/mt76/mt7925/mcu.c b/sys/contrib/dev/mediatek/mt76/mt7925/mcu.c index d62d461db699..77e494a4ece0 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7925/mcu.c +++ b/sys/contrib/dev/mediatek/mt76/mt7925/mcu.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2023 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7925_ +#endif + #include #include #include "mt7925.h" diff --git a/sys/contrib/dev/mediatek/mt76/mt7925/pci.c b/sys/contrib/dev/mediatek/mt76/mt7925/pci.c index 3417fc5db6a9..e34f99abd16c 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7925/pci.c +++ b/sys/contrib/dev/mediatek/mt76/mt7925/pci.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2023 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7925_pci_ +#endif + #include #include #include diff --git a/sys/contrib/dev/mediatek/mt76/mt7996/coredump.c b/sys/contrib/dev/mediatek/mt76/mt7996/coredump.c index 303d6e80a666..433846d2319e 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7996/coredump.c +++ b/sys/contrib/dev/mediatek/mt76/mt7996/coredump.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2023 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7996_ +#endif + #include #include #include diff --git a/sys/contrib/dev/mediatek/mt76/mt7996/mcu.c b/sys/contrib/dev/mediatek/mt76/mt7996/mcu.c index 5099aa2004b7..443cd21a32b8 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7996/mcu.c +++ b/sys/contrib/dev/mediatek/mt76/mt7996/mcu.c @@ -3,6 +3,10 @@ * Copyright (C) 2022 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7996_ +#endif + #include #include #include "mt7996.h" diff --git a/sys/contrib/dev/mediatek/mt76/mt7996/mmio.c b/sys/contrib/dev/mediatek/mt76/mt7996/mmio.c index bb82f5807ff8..05a3d9019167 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7996/mmio.c +++ b/sys/contrib/dev/mediatek/mt76/mt7996/mmio.c @@ -3,6 +3,10 @@ * Copyright (C) 2022 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7996_ +#endif + #include #include #include diff --git a/sys/contrib/dev/mediatek/mt76/usb.c b/sys/contrib/dev/mediatek/mt76/usb.c index f9e67b8c3b3c..11f9d2808f15 100644 --- a/sys/contrib/dev/mediatek/mt76/usb.c +++ b/sys/contrib/dev/mediatek/mt76/usb.c @@ -3,6 +3,10 @@ * Copyright (C) 2018 Lorenzo Bianconi */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt76_usb_ +#endif + #include #include "mt76.h" #include "usb_trace.h" From nobody Mon Dec 8 15:44:27 2025 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 4dQ5rW4xkRz6K09f for ; Mon, 08 Dec 2025 15:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ5rW2dfYz44HN for ; Mon, 08 Dec 2025 15:44:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208667; 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=ygZhrxyQuOs88xnFzQ2ii9StVloCtMa9lZvL0Wg8YAk=; b=ubR4My+4uUpEK8BAanhyDRzPfsLDvB44OHa15pp3Poowa/X1oPDpEZXXl5wKPE2dfjgshz 6J8lhbRDrOG6EojG/g+xKkJgJwVajaT+XYTo2U+qmAsUOjyztg03OSqMYcPxai2E9cTcCH 13GLxVyTf70kEOkgUdx9izzaTSjr+dhP2zPgntS6hWeodbeC70Eusp8udd65NhcBALz2Lk fO282dXMp1sQ057W6XVWwTY2gPcwpyyGAtknThOHYZzQOnXIr8BpTTgaV34jMTEI/KGF/i 8nuViN2V5ySO8flN8iJZGtYVF2vLuR1zBwFT5vm06ww1lNpriXxOcCBtVRN/kw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765208667; 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=ygZhrxyQuOs88xnFzQ2ii9StVloCtMa9lZvL0Wg8YAk=; b=XNbEzPyrZbBJcT9JRnDkumLsjalM8XWWgRoAVI8OrUOKYxB7LZxgwzcGuAID6THIPjECra uZ+HDFjK8fzb/0Bm5wXQUr06TRWOFwvSh4ajnACu1sZ/LyM18k/ADZx7U/6pHjpgWif7tg vl+Ar18F9rcIwa05XbUzb5qfRzBwro6wqpWU7622ok5itJvPfUqgoPXXL0lFQrS1Jpgg5g f+N3uD5Z9zTaTvidgH8oYGVjVAtL7Z8UELjKot+nigTTiIn4fZSG9pOv8qNH0iSC9ngviR Qfgf+EYej2P+DioHqWoU1edP2OaJrDmhzwNBcxq1qRkpaE7LcYG3+zuRMVDtwQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765208667; a=rsa-sha256; cv=none; b=PmfyXL0BiCNxn9rS5qtyY7aXtB0U0XgXPzmGSWaJ29s7iZhXyetKZpdgc0SN/nv4masKTd b+/mPlOqGN4vFfA3sznvBi78TkZ487ILxznO8ztbJgCbjNipJR6PG4TWv6YVbzvSw/JKgc l5uf7cRnTeAulb6u62M5aVyPbezuxjyHngjMc/fod253B9y7x5hYmMSJlGvLsQKsuBQO79 Y0NG72QX8bIcDK+iosO98DYl8uSBVMH+mh2ZEwa/Sya6+VDfCDUml+AdJz/mf13wggU+tE 1+XBlnzUpjuOXkBKaV5R95MN7DtJUybx2YZUntuIUZhDccBxXFM5FW9n3zWaVg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ5rW1psKz3hg for ; Mon, 08 Dec 2025 15:44:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 38d91 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 15:44:27 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Bjoern A. Zeeb Subject: git: e65e9bc1b4dd - stable/15 - rtw88: update Realtek's rtw88 driver 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: e65e9bc1b4dd4503b77c311dafdfc77eabe3243c Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 15:44:27 +0000 Message-Id: <6936f25b.38d91.3c7944eb@gitrepo.freebsd.org> The branch stable/15 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=e65e9bc1b4dd4503b77c311dafdfc77eabe3243c commit e65e9bc1b4dd4503b77c311dafdfc77eabe3243c Author: Bjoern A. Zeeb AuthorDate: 2025-12-06 09:41:26 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-08 15:43:54 +0000 rtw88: update Realtek's rtw88 driver This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 7d0a66e4bb9081d75c82ec4957c50034cb0ea449 ( tag: v6.18 ). Merge commit 'e543442afe3ad5b27616575be2d2402b988656eb' into rtw88 Sponsored by: The FreeBSD Foundation (cherry picked from commit 8b4477f6b8e1b82acfef558a11facbb2797cb690) --- sys/contrib/dev/rtw88/led.c | 13 +++++++------ sys/contrib/dev/rtw88/sdio.c | 4 ++++ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/sys/contrib/dev/rtw88/led.c b/sys/contrib/dev/rtw88/led.c index 25aa6cbaa728..4cc62e49d167 100644 --- a/sys/contrib/dev/rtw88/led.c +++ b/sys/contrib/dev/rtw88/led.c @@ -6,13 +6,17 @@ #include "debug.h" #include "led.h" -static int rtw_led_set_blocking(struct led_classdev *led, - enum led_brightness brightness) +static int rtw_led_set(struct led_classdev *led, + enum led_brightness brightness) { struct rtw_dev *rtwdev = container_of(led, struct rtw_dev, led_cdev); + mutex_lock(&rtwdev->mutex); + rtwdev->chip->ops->led_set(led, brightness); + mutex_unlock(&rtwdev->mutex); + return 0; } @@ -36,10 +40,7 @@ void rtw_led_init(struct rtw_dev *rtwdev) if (!rtwdev->chip->ops->led_set) return; - if (rtw_hci_type(rtwdev) == RTW_HCI_TYPE_PCIE) - led->brightness_set = rtwdev->chip->ops->led_set; - else - led->brightness_set_blocking = rtw_led_set_blocking; + led->brightness_set_blocking = rtw_led_set; snprintf(rtwdev->led_name, sizeof(rtwdev->led_name), "rtw88-%s", dev_name(rtwdev->dev)); diff --git a/sys/contrib/dev/rtw88/sdio.c b/sys/contrib/dev/rtw88/sdio.c index cc2d4fef3587..99d7c629eac6 100644 --- a/sys/contrib/dev/rtw88/sdio.c +++ b/sys/contrib/dev/rtw88/sdio.c @@ -144,6 +144,10 @@ static u32 rtw_sdio_to_io_address(struct rtw_dev *rtwdev, u32 addr, static bool rtw_sdio_use_direct_io(struct rtw_dev *rtwdev, u32 addr) { + if (!test_bit(RTW_FLAG_POWERON, rtwdev->flags) && + !rtw_sdio_is_bus_addr(addr)) + return false; + return !rtw_sdio_is_sdio30_supported(rtwdev) || rtw_sdio_is_bus_addr(addr); } From nobody Mon Dec 8 18:09:12 2025 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 4dQ93Y1pDVz6K8nh for ; Mon, 08 Dec 2025 18:09: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ93X5lvSz3bc0 for ; Mon, 08 Dec 2025 18:09:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765217352; 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=3kAu31RYWcK7KUphKSSU6EOaHZWpTonUs9nxz/I2Ej4=; b=qMd8bkQqUpVRAlqZ54xvFhTwNUB7fShEGqhjTQ1auCARAzed8V0mu18niKJb3AiDUyU4Mr /1ZO7IfEUXmNY9lnxsk7rXJNFxf8l/NCtL5SQO9NPwkAq6MvEBR6p4J/QIcPjTAagHLYOe ofQID4qHEjMShfOr/p4R3eYefE47+4vOSjPETQQ5FlM5NDCYNoIwENxvMcF8EmmGDOvvq3 wpFwT4oHSx0o1Zgz3FPoG0AHjU/XxUo7pBo3i8pbVvx1seGHXYF4Vmq+lQV0+QZF73UPyX aviKnHz18IYTddLy/7wNuNtl/PZiKAXgbIrgJQTxpoELMRCW1S92jjWTwaXZxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765217352; 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=3kAu31RYWcK7KUphKSSU6EOaHZWpTonUs9nxz/I2Ej4=; b=O1m4cKWz7ncI4sMWakVmRj7TcxJBtC75g7mgjqSPeI3kZKAuTjpEDGARvXARC5w2YFTTHS 9bEbNO9LMxYDYERL9tfTfVjbaIACvx0Nijjhvnc5APWIUJDdTQUKp82sOmTv+H0QuQ0fwv UTvYzOLsgJ8FGsP/TqCGP5lDyT+h8JLfEJX0nCQLl8b+CqeUtCd1yyH0T2Pr+BbpTRAADy j2UVtd0uukLTtdfzPUVhlSk/oRQ3GQ75I1MAte9+YbM2LkZjLtqPFoenntGwx5TGyPVTeT HjYz9lUeh3QjMSVWqeuwJmaqHmA3RYeKwzRxKRDQ1l+sZJuigU7QE5O699DTNQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765217352; a=rsa-sha256; cv=none; b=vCDs+GtoJFYO14TIMmD5STAbviEsCCzcbWCCBjP2CYTLqvTERwG1v+Cg5fxSp8WHVgtwYu 8zft/9hP316JL8lzBivwPTHNSqYtY+rMEz/xf4sPop5MrIbcwODnmSKa6MyD3ZIOn1urdY oU2VZCopSUCldzSFytL9WFWYeeFAsJy46ArmlIEzY1oevvhJCMxG22vsXgTGOoqDAQR4H1 mxSz81GxDJpTCsiOxTLnelQRsjJmlG7Xg0FjmC9FK8ikan8uZZj/tD+M2qSQEiKvcFagjd Rwaqjdi9McNk2FLa2hj7rO0rEPY5Ey6VrUgaR+DwX3LZOPRwJSMFcpOz+JtXhg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ93X51wtz7F5 for ; Mon, 08 Dec 2025 18:09:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id d9f9 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 18:09:12 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Austin Shafer Subject: git: 3bb980089e35 - stable/15 - linuxkpi: add stub implementation of pm_vt_switch_(un)register 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ashafer X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 3bb980089e3511f94398aee75de4abcebc524668 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 18:09:12 +0000 Message-Id: <69371448.d9f9.2bcc247@gitrepo.freebsd.org> The branch stable/15 has been updated by ashafer: URL: https://cgit.FreeBSD.org/src/commit/?id=3bb980089e3511f94398aee75de4abcebc524668 commit 3bb980089e3511f94398aee75de4abcebc524668 Author: Austin Shafer AuthorDate: 2025-10-28 17:03:18 +0000 Commit: Austin Shafer CommitDate: 2025-12-08 18:08:20 +0000 linuxkpi: add stub implementation of pm_vt_switch_(un)register This adds empty implementations of pm_vt_switch_(un)register which are used by nvidia-drm. We do not need to specify anything here as a VT switch always happens on suspend/resume. Sponsored by: NVIDIA Reviewed by: kbowling (mentor), emaste Differential Revision: https://reviews.freebsd.org/D53400 (cherry picked from commit 75aa13c64aba71f6f26d05e8fcf96e3862d44cde) --- sys/compat/linuxkpi/common/include/linux/pm.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/pm.h b/sys/compat/linuxkpi/common/include/linux/pm.h index c8d943027909..932697e0eda8 100644 --- a/sys/compat/linuxkpi/common/include/linux/pm.h +++ b/sys/compat/linuxkpi/common/include/linux/pm.h @@ -97,4 +97,18 @@ pm_wakeup_event(struct device *dev __unused, unsigned int x __unused) pr_debug("%s: TODO\n", __func__); } +/* + * We do not need to specify anything here as a VT switch always happens on + * suspend/resume. + */ +static inline void +pm_vt_switch_required(struct device *dev __unused, bool required __unused) +{ +} + +static inline void +pm_vt_switch_unregister(struct device *dev __unused) +{ +} + #endif /* _LINUXKPI_LINUX_PM_H */ From nobody Mon Dec 8 18:09:13 2025 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 4dQ93Z0sZwz6K8rl for ; Mon, 08 Dec 2025 18:09: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQ93Y6D1nz3bmv for ; Mon, 08 Dec 2025 18:09:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765217353; 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=mubXpqlNcVOUKa2l4eCkhGd8iEj9QpN2OQRe3FoSH5Y=; b=h2PaLas/NQ9YjSTEhzAe99+9la8gOolCYgG2Utg78pDgGdwvPXhQhxU+xtjfC+u+AalTvN oHJQE7+pJpwa1tvzyePaskiNMILPmrVc/uKVkKGONIc3/iZhh6zobQGAhhZRxBHKH0I3RP INEhBTtjuNDAves7qezgy3hVTkoRKzq4hUL0OsNInJuPZ6j8l8PSG2YB72XF/71+KdOUWS fVZ9j3P/kggC9cDrDgBbymMPf3NopzeWrK/Zk75mCq86a/xAjPygK5rwZ2VJnfQaTJbH9M 3DL4gBF27ebCF2MjmOMumtbQLEkMZHU3Xa0MsfufBO3zEY1pWJ5Enig9MXjsVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765217353; 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=mubXpqlNcVOUKa2l4eCkhGd8iEj9QpN2OQRe3FoSH5Y=; b=oebsrLQ7drmHvZfsaWlZHfrM7fayyQm6fqCDcqLoEj5Q9dptFUY93vX0OBMDAgXvJ0OBxh NCDF5G+Wtgmfn0du9L4DNytu0Dfj+xCN5VAt5oezWG8b3sn72gVCSYJ92lb9spgYOaxnC8 +vIEoFGeI8LjKG4g02v5vy7xRzl9N/F2W+0nFooFNLYPzi+80+SkH8NanArAPCA0Kn4yOd MQt2tyzS+OtRCO+KVFVkMWHRr3plFBdVLib2p5dzBGKp4WGqiCXQA/cJm2jpWUxUCc681e Zoq693sGHnhOt0+dSKijccjIl1FyFG5lKaIipaSp6CACjqGyLX7N2Am/dvFhdw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765217353; a=rsa-sha256; cv=none; b=nIiwNTwUXoUjsVIKSj/PCoQiZnw5yhuclkppI2mKFRQYHyOiwpXRB5IGA0QtHsRTJW5kw8 fVBgz4WT/vRvHCgfqVRJD0wAtOxKSnQyqTh2Q4AFR6d3WudOBddaUUTMxmw51CgbWuZhFu Z7v7hDzTziXVLXIRIA4exdtvxOUSBM4c+UYr+OsU7mHAZPBfye663hTWpGDLU1Y37YsxFk wWm4Ql6Z5It+ui/trDA+EzfAFdS9O/lRe0HakHWRTCl/TYZ/JgU/x+UHsmLgDc9A0+7+tL g/+W2B1yb5wmAfwTn0U6Fdqz05FLsQ8rV/ZxWFRLGoUcJb+8xUraNMO+MomMzQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQ93Y5pF8z78n for ; Mon, 08 Dec 2025 18:09:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id cb52 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 18:09:13 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Austin Shafer Subject: git: 452b92fadae1 - stable/15 - linuxkpi: gracefully handle page lookup failure in lkpi_vmf_insert_pfn_prot_locked 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ashafer X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 452b92fadae16e30f815203863bb9dd92ddff762 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 18:09:13 +0000 Message-Id: <69371449.cb52.3c135d9c@gitrepo.freebsd.org> The branch stable/15 has been updated by ashafer: URL: https://cgit.FreeBSD.org/src/commit/?id=452b92fadae16e30f815203863bb9dd92ddff762 commit 452b92fadae16e30f815203863bb9dd92ddff762 Author: Austin Shafer AuthorDate: 2025-10-28 18:08:01 +0000 Commit: Austin Shafer CommitDate: 2025-12-08 18:08:32 +0000 linuxkpi: gracefully handle page lookup failure in lkpi_vmf_insert_pfn_prot_locked Currently lkpi_vmf_insert_pfn_prot_locked will check the page iter to find a usage of the page. If no page was found, it continues on to try using PHYS_TO_VM_PAGE() to get a page. Currently it does not check if a valid page was found before passing it to vm_page_busy_acquire, which can cause a kernel page fault as vm_page_busy_acquire expects a valid page pointer. This can easily be triggered while starting KDE6 in wayland mode, which many users have been reporting. With this change plasma6 starts properly in wayland mode. Sponsored by: NVIDIA PR: 288565 Reviewed by: markj, kbowling (mentor) Differential Revision: https://reviews.freebsd.org/D53412 (cherry picked from commit 03b214a35db1ebdc7575cad8d695c65daf2817bf) --- sys/compat/linuxkpi/common/src/linux_page.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/compat/linuxkpi/common/src/linux_page.c b/sys/compat/linuxkpi/common/src/linux_page.c index a71a708c1bd8..2b2827579cba 100644 --- a/sys/compat/linuxkpi/common/src/linux_page.c +++ b/sys/compat/linuxkpi/common/src/linux_page.c @@ -345,6 +345,10 @@ retry: page = vm_page_grab_iter(vm_obj, pindex, VM_ALLOC_NOCREAT, &pages); if (page == NULL) { page = PHYS_TO_VM_PAGE(IDX_TO_OFF(pfn)); + if (page == NULL) { + pctrie_iter_reset(&pages); + return (VM_FAULT_SIGBUS); + } if (!vm_page_busy_acquire(page, VM_ALLOC_WAITFAIL)) { pctrie_iter_reset(&pages); goto retry; From nobody Mon Dec 8 22:27:53 2025 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 4dQGp208CGz6KTHj for ; Mon, 08 Dec 2025 22:27:54 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQGp16RBFz3Jyn for ; Mon, 08 Dec 2025 22:27:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765232873; 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=IKWqIlU+LjqQ+UUoTpsLSq/JoUbCK9QdSFWcTjkeexs=; b=gxLHm+L/xs5Myl2x5LkRml1AmFyVTW/uwL4bLTjuinNrvgPIKK9bIsW1dtrbiWK4T0OJS3 KV6uzkdYt5vamj9VTKXDN1AD04e0WE35qwWSewyLEv8aLTJTxtRTDQrvO47iyhst+Ia6AI G+DYw3fmJ04YFC0BoZE3+0qDw+I+lJn3cKEhT8/59iTxO6EnegRuFu/SOyHLekYM7Vf4++ u/zFjQaq+blIrmpiLOUgoFXLqSWd3yHPQpQQjfTlYZ368GNaWJtdY5XFwX+4A+FvyP/4tP YIGSvfuK4zzjiVpLm7rWJHnKkxuDdARwXjhADwo4l0RR+MuoTkRo4prCs3WUuw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765232873; 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=IKWqIlU+LjqQ+UUoTpsLSq/JoUbCK9QdSFWcTjkeexs=; b=f7ehRnkircblr0vCLI5ezaTCeGZRAGfx1ay1lDn+EIfU1vE5/IyOPedbgosbJManPnJLMt daB+M+m6E64evMswbp98hRf5Z1aUkPnpyRI9c5txRy5u6CSSLg9uM1ghin4c3ON9bTXQKX XebH/eQUGV6vNTvyMgGX5OyZdfI/oDQHPlIl+aSrn9BulQLl3jhMxu3S3VRdRvxJGNRbGP uY3IZ/S29Xg1c9xdeFtpu+lWJFnNZPgrsY7YraPZtPJVkMv1G0gADb7cNxWMgb6Jvs+Kl1 OXQXnrHLtTsP8jJyPQKw8UDOY8/Ed/JTkFeiG1T8xLxOYbSPbNHotr7enl5eEQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765232873; a=rsa-sha256; cv=none; b=u3y7cqi9L+uAuSWWCHs30IEaKXPwjFhLzW0m5VIQ7nxvztI6tX2SMxXGU+caQ4yekw1bIH /B6ZS7QKLfsFeuH9rA14sklWDHBwBcX2ce80Osl+I39nQwLfASbtATxizX5eFcBfroEyAe 3ZWeeP0Z39ozh1IW5y2vsirV1yVBcZMEJ3nqwBY3LN88R8/EDE7Q+ouVFI7tFek2IzrdGi T8mVqwrr5zQxqq7oA84l3EvI20iO+fcPhYzk1k+EqvBdMi/L6uWvSH8nEfdNyH5knYk5l6 BROdrssalq/wLXcTJuZcOTeaoSLoJAm99YXX+k3NU9k46z5hyfdgYLEO6fjdxw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQGp15gS6zX19 for ; Mon, 08 Dec 2025 22:27:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 387bb by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 22:27:53 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Austin Shafer Subject: git: 5287dd47b5b6 - stable/14 - linuxkpi: add stub implementation of pm_vt_switch_(un)register 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ashafer X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 5287dd47b5b643baba645cde51bf39f787c738d6 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 22:27:53 +0000 Message-Id: <693750e9.387bb.3a5268c@gitrepo.freebsd.org> The branch stable/14 has been updated by ashafer: URL: https://cgit.FreeBSD.org/src/commit/?id=5287dd47b5b643baba645cde51bf39f787c738d6 commit 5287dd47b5b643baba645cde51bf39f787c738d6 Author: Austin Shafer AuthorDate: 2025-10-28 17:03:18 +0000 Commit: Austin Shafer CommitDate: 2025-12-08 20:46:48 +0000 linuxkpi: add stub implementation of pm_vt_switch_(un)register This adds empty implementations of pm_vt_switch_(un)register which are used by nvidia-drm. We do not need to specify anything here as a VT switch always happens on suspend/resume. Sponsored by: NVIDIA Reviewed by: kbowling (mentor), emaste Differential Revision: https://reviews.freebsd.org/D53400 (cherry picked from commit 75aa13c64aba71f6f26d05e8fcf96e3862d44cde) --- sys/compat/linuxkpi/common/include/linux/pm.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/pm.h b/sys/compat/linuxkpi/common/include/linux/pm.h index c8d943027909..932697e0eda8 100644 --- a/sys/compat/linuxkpi/common/include/linux/pm.h +++ b/sys/compat/linuxkpi/common/include/linux/pm.h @@ -97,4 +97,18 @@ pm_wakeup_event(struct device *dev __unused, unsigned int x __unused) pr_debug("%s: TODO\n", __func__); } +/* + * We do not need to specify anything here as a VT switch always happens on + * suspend/resume. + */ +static inline void +pm_vt_switch_required(struct device *dev __unused, bool required __unused) +{ +} + +static inline void +pm_vt_switch_unregister(struct device *dev __unused) +{ +} + #endif /* _LINUXKPI_LINUX_PM_H */ From nobody Mon Dec 8 22:27:54 2025 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 4dQGp327w5z6KTbR for ; Mon, 08 Dec 2025 22:27: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQGp26TJTz3Jbv for ; Mon, 08 Dec 2025 22:27:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765232874; 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=Ph+te4oK85If2uWm+t0TjOBsrO3AVQSW2k3uB03Zl2w=; b=EFrWcDr4FGqiBUPccOxtEJVwz2ngA8VancAGQJc2n46cLZNGp9WzSdmDS8q45niksQjmGD gg6nWCrnlePfiMRc0ZpUWohx+9p0i6uEAUndvrNr27A+6CH/3OgyZILRi6CPXUqdkQmGwZ Gaiga4ATvvAOohRZKW3LF3mjaRQa7JGjn+JVlF7Wf/CAgS3Enl0jRARIFpZmSEB4PVqYfp unN+ZFjQOIMLxrwv2l8Ckr1kG76bGAo256f4YhK3EaG/EVF0mucZdVSNmL9+8bt8N7ll2o 71tHM2pcknbyS+FNW9uMUXboierGnm/sv8e865ELb36oOMLgCdQpI6J4EtiYzw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765232874; 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=Ph+te4oK85If2uWm+t0TjOBsrO3AVQSW2k3uB03Zl2w=; b=WeqZwO6U62BXv7A1ytC2+hZgHPGcaYJnrhHbfSAEBAdhaLw2GWSiMRLoEiyjZASbMlyDWj 0uYla2JZm/4Vq+NmIpAeHZpbzl0R899E6nXORU+lW3Efd/wULUC39nBYxYGY3EFCLf7EuF a0qz7frnE2I7OqKCaz+bOZLFSw0RVY2yCmB3C8M79/jYPG4wv88AifSu4I/fZv/xA4kkeG g2oW3BY2MpJRKOy8FoT6NyJm1N0eoBuQdfhBlIxI1zunYP8hL4sFJE7/Tg+qvoWlknzv2D joMb6cgSeActqreZHwXgxNJMIKF9jPh+8wFGuvCqCrGPYPzCy8BJoF6nQoLncw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765232874; a=rsa-sha256; cv=none; b=A5K8RDmnXB8PRxyLIaTOsMxXRH5Kt/UILqmOY7Slt/Ya7Z+kiifwll0E0OjJpeaeuIrAlq WdLXDh12w8TzQfbYHZYOvDoYfh9xZepWAelBC9uWK1n9pm9BBL10Chh9AR4vq1bpCZzmT7 dyuJmlvGPpFiy7levVPQ2V/737LDdEpzsk80IRzdyM3Tf6VHaL7zhol0ty217QX1hk0Q8r 0Ydf6c/CjXHibJRDzNIbAXJbYu7Ra2Vlv90RxN0tNS2Eok97chacPAYyHyhxh5396PTV+x InCl5lgWzpa9vlAe3lbq+g1pwp11TCNe3LVfRB3pEdTNlmeMgg0SQHvUvXlcug== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQGp25zDXzX73 for ; Mon, 08 Dec 2025 22:27:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 39d98 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 08 Dec 2025 22:27:54 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Austin Shafer Subject: git: 5f9b7cde517e - stable/14 - linuxkpi: gracefully handle page lookup failure in lkpi_vmf_insert_pfn_prot_locked 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ashafer X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 5f9b7cde517ecd0d821b9730f37ebbdc25dbd349 Auto-Submitted: auto-generated Date: Mon, 08 Dec 2025 22:27:54 +0000 Message-Id: <693750ea.39d98.58d6607c@gitrepo.freebsd.org> The branch stable/14 has been updated by ashafer: URL: https://cgit.FreeBSD.org/src/commit/?id=5f9b7cde517ecd0d821b9730f37ebbdc25dbd349 commit 5f9b7cde517ecd0d821b9730f37ebbdc25dbd349 Author: Austin Shafer AuthorDate: 2025-10-28 18:08:01 +0000 Commit: Austin Shafer CommitDate: 2025-12-08 22:26:39 +0000 linuxkpi: gracefully handle page lookup failure in lkpi_vmf_insert_pfn_prot_locked Currently lkpi_vmf_insert_pfn_prot_locked will check the page iter to find a usage of the page. If no page was found, it continues on to try using PHYS_TO_VM_PAGE() to get a page. Currently it does not check if a valid page was found before passing it to vm_page_busy_acquire, which can cause a kernel page fault as vm_page_busy_acquire expects a valid page pointer. This can easily be triggered while starting KDE6 in wayland mode, which many users have been reporting. With this change plasma6 starts properly in wayland mode. Sponsored by: NVIDIA PR: 288565 Reviewed by: markj, kbowling (mentor) Differential Revision: https://reviews.freebsd.org/D53412 Fixed conflicts during MFC, re-reviewed by kbowling (cherry picked from commit 03b214a35db1ebdc7575cad8d695c65daf2817bf) --- sys/compat/linuxkpi/common/src/linux_page.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/compat/linuxkpi/common/src/linux_page.c b/sys/compat/linuxkpi/common/src/linux_page.c index b910ada90a4d..15b90eb3c470 100644 --- a/sys/compat/linuxkpi/common/src/linux_page.c +++ b/sys/compat/linuxkpi/common/src/linux_page.c @@ -317,6 +317,8 @@ retry: page = vm_page_grab(vm_obj, pindex, VM_ALLOC_NOCREAT); if (page == NULL) { page = PHYS_TO_VM_PAGE(IDX_TO_OFF(pfn)); + if (page == NULL) + return (VM_FAULT_SIGBUS); if (!vm_page_busy_acquire(page, VM_ALLOC_WAITFAIL)) goto retry; if (page->object != NULL) { From nobody Mon Dec 8 22:58:39 2025 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 4dQHTl3g1Pz6KWYk for ; Mon, 08 Dec 2025 22:58:51 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-qt1-f179.google.com (mail-qt1-f179.google.com [209.85.160.179]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQHTk66NZz3PWm for ; Mon, 08 Dec 2025 22:58:50 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-qt1-f179.google.com with SMTP id d75a77b69052e-4ed82ee9e57so60804991cf.0 for ; Mon, 08 Dec 2025 14:58:50 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765234730; x=1765839530; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=I+VzbmorW+WJb6jdRDJLXlzMwamVlJ/JBiSr8kIWTGg=; b=kQvOhcrsFhwFDQxuN0WNlnCxcJ+Pqzn2w4KaE1rKjd1Jmy0gtIRlJC8qDMW5ywIIRG ABx054+UDDYxBZeeJ5wXTmIqk2xtZ1apn8GS2/8ENkQJNi0sFemn3UTQ43c+wMV4hGoa VPj5/IsKxRDPsh7kW+Y1zs8riibbaBB6OxTl7K9PJ50rHEA/+woughM0mM/5QoD4hwv3 gKFsA1LJDPFwISEONlUTGdbexKO16Rt6Wz13tjpYn7Yz428p4uyt5Fxtw1acfbhD55Ow zR9IuePZgfsZv0sJqhTuYCDS407BtomEvhsDScTbbU+IFpoihhmjPr18rVspeZr7wPkJ mvOw== X-Forwarded-Encrypted: i=1; AJvYcCVB6GQ3hM3flolDu8IchzG5WTCkdVuQ5td3I58BVkoJ5xGfFgE3V7VeALrSomVXFKRrSfiAyvuul5kElilbfS5iH7BL4DreT2w=@freebsd.org X-Gm-Message-State: AOJu0Yws2NGNEiafIY7h/qwpyo+oJ8IAWgyfD4CkFXlWU6tJwNA1iPAj 5sxJ/exWUtgCYLZ6ftLimvk1LHvy23xHv+UrQYZ4Q2QJV8Co+J8k+4Bd0T6p9Ec+hlFyrIbFlbB Y8R/cvwD7k9rFyAQeindQFEed5cpto5o= X-Gm-Gg: ASbGnct/3lPMTgulAxFV8SbHXDS16XXCBRMAwZtJHh7OHtIrAQy6A8nn07XvVroZcsx uG9Rr4bHOF4S7wKfbnosi/4FprSeK6p8UFO4AgrKi7AOXK1QJvwuCx8gAYdNv9TiQxYOAHYAZDo Rm9PZhfrfp65rr3fDW9B+5kXTFHfHVXwqlIZcC4DNMiyHJafw+7kvzWirTc4FkUKDzNZgLGiiZ5 M6ho5l4A212Ymw82wEmeTurL8VvDVwu7yJPzm/7EWwP3HSEOUC3pw3MqNEitvfzvzgazEWjvznE rx1S6T6sAoBTAVSntHlFCVFjxnQUcw== X-Google-Smtp-Source: AGHT+IHWteIPZTsMBDzUbxfZ2PDEv0JNCFAnRZBBkbd1fvjec17Cpvqv/LsfR7w1MEDj9M4ymxz6FOAayA+IAklaUtQ= X-Received: by 2002:ac8:5850:0:b0:4b3:3b2:2b4b with SMTP id d75a77b69052e-4f03fc51fa5mr126887531cf.0.1765234729827; Mon, 08 Dec 2025 14:58:49 -0800 (PST) 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 MIME-Version: 1.0 References: <693750e9.387bb.3a5268c@gitrepo.freebsd.org> In-Reply-To: <693750e9.387bb.3a5268c@gitrepo.freebsd.org> From: Adrian Chadd Date: Mon, 8 Dec 2025 14:58:39 -0800 X-Gm-Features: AQt7F2oiL6Pi7lxwKVuUkf-WuYr9CIiDenUa8Kri0CDwPuYhtQPC1jJwBkSygnY Message-ID: Subject: Re: git: 5287dd47b5b6 - stable/14 - linuxkpi: add stub implementation of pm_vt_switch_(un)register To: Austin Shafer Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-branches@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; TAGGED_FROM(0.00)[]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4dQHTk66NZz3PWm .. does it? There's a sysctl to turn on vt switching on/off for suspend/resume, no? -a On Mon, 8 Dec 2025 at 14:27, Austin Shafer wrote: > > The branch stable/14 has been updated by ashafer: > > URL: https://cgit.FreeBSD.org/src/commit/?id=5287dd47b5b643baba645cde51bf39f787c738d6 > > commit 5287dd47b5b643baba645cde51bf39f787c738d6 > Author: Austin Shafer > AuthorDate: 2025-10-28 17:03:18 +0000 > Commit: Austin Shafer > CommitDate: 2025-12-08 20:46:48 +0000 > > linuxkpi: add stub implementation of pm_vt_switch_(un)register > > This adds empty implementations of pm_vt_switch_(un)register which > are used by nvidia-drm. We do not need to specify anything here as > a VT switch always happens on suspend/resume. > > Sponsored by: NVIDIA > Reviewed by: kbowling (mentor), emaste > Differential Revision: https://reviews.freebsd.org/D53400 > > (cherry picked from commit 75aa13c64aba71f6f26d05e8fcf96e3862d44cde) > --- > sys/compat/linuxkpi/common/include/linux/pm.h | 14 ++++++++++++++ > 1 file changed, 14 insertions(+) > > diff --git a/sys/compat/linuxkpi/common/include/linux/pm.h b/sys/compat/linuxkpi/common/include/linux/pm.h > index c8d943027909..932697e0eda8 100644 > --- a/sys/compat/linuxkpi/common/include/linux/pm.h > +++ b/sys/compat/linuxkpi/common/include/linux/pm.h > @@ -97,4 +97,18 @@ pm_wakeup_event(struct device *dev __unused, unsigned int x __unused) > pr_debug("%s: TODO\n", __func__); > } > > +/* > + * We do not need to specify anything here as a VT switch always happens on > + * suspend/resume. > + */ > +static inline void > +pm_vt_switch_required(struct device *dev __unused, bool required __unused) > +{ > +} > + > +static inline void > +pm_vt_switch_unregister(struct device *dev __unused) > +{ > +} > + > #endif /* _LINUXKPI_LINUX_PM_H */ > From nobody Tue Dec 9 00:28:56 2025 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 4dQKTh3tX3z6JcbQ for ; Tue, 09 Dec 2025 00:28:56 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQKTh2qw2z3XjL for ; Tue, 09 Dec 2025 00:28:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765240136; 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=cWZyJLjJT8SGRRCLNYIDxHxBZFBgHSIMVsShJvow8Tk=; b=eawZij/yto2axsV60oGaOvuVhzU0uKTpVBqTKEE9oJzCisGvSWwSZWgewNFri+mjTBbB6K vd6WvadoEq8mGcjy0+U3SEVglMg5oThJfksJNPAktuMhZBXh0T98zTIyK99/YyIm/+TBxY 25/CBseOVYJUGjrJktC1Y8ztvdXT9HQp7CbOoPTv+oZF5D4zpAL7Kn+gk2ZfaohHIeWq/Q SOI9KVpiXTTeOv3sKhWbePfLBB1pX5fhobi5ss15UDDxs8FYglh4qp12WMc0TueM4St7rP 9jSRyMmsJA2Gwf2tmgeYfahqR42BBLsS/FI1Ul+PAYIUIahD74gRD8GnHwMlhQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765240136; 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=cWZyJLjJT8SGRRCLNYIDxHxBZFBgHSIMVsShJvow8Tk=; b=KELBsV4Q94kcwpuca6Ux9HMfC4KLPhSjI9/k2pmULDzmArrfB14kJJsmSTFhTMyvINR8hG fYy2CNNWwGTh6BbXFT8KZyu51CeInPHM9tbPGikJBPXofddCkL+dD/5GakVaNPXfla2RID K1y3B497EF7Jvd2eeZzXCyks76TH9NBL98imUgzHWIBXqXx2cceZsmMbBuSmyeAXPt+q2G Wuan8ug563bxbOBOWzrFXDPGoXJ/1llPL21um2nked/490Ie5OQaffIQQgPO0Ai8OrnDEP ik5L/RrTBcOL06Upr3NwpmOs5udNip64CVyxcYqb63x17CegmToAlNJNzPsLdg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765240136; a=rsa-sha256; cv=none; b=glsv2ODV75XNEZ7YRPTIWc+NSBXI6kJILcJGXjekXsLsFcuPDi2Dkmfz13TGZlJMVK/xJW HnVr82t+qY8wm9mH2j2YAHBcm7imLVSYyks2T5LcZMFurnEqvD6zhxTkAAIelC9rud3HJ+ yrFIC99lGhPYgEPnwBr2D/zhfl8B07IKYQfZKQyoc5JJbGYF1wNHu7OJT8nsaReMr49BN5 bi9xvRaCkwWDen+JeA62+EVlgKXiOBXFEKzl+xlJqteNhdhn/s+Gib05PqHhTn81gS3nDk jVLiKQnQo5wfdOg1qa9Vi9ve2SQMxbdj0R/CSLysdNRMaRLDf2zgDshBtquJgA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQKTh1hb6zc2l for ; Tue, 09 Dec 2025 00:28:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id b7fd by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 00:28:56 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: ccb0a245dff8 - stable/15 - kern/subr_vmem.c: convert explicit vmem_list_lock use to macros 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 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: ccb0a245dff8ecd976908445e3788e5c58a35406 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 00:28:56 +0000 Message-Id: <69376d48.b7fd.6ef485d4@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=ccb0a245dff8ecd976908445e3788e5c58a35406 commit ccb0a245dff8ecd976908445e3788e5c58a35406 Author: Konstantin Belousov AuthorDate: 2025-10-14 17:13:46 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-09 00:24:55 +0000 kern/subr_vmem.c: convert explicit vmem_list_lock use to macros (cherry picked from commit 202292ef107834bfdbec357a9d1a88b9fcf9ceaa) --- sys/kern/subr_vmem.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/sys/kern/subr_vmem.c b/sys/kern/subr_vmem.c index 9288b0935441..06c104b9fce2 100644 --- a/sys/kern/subr_vmem.c +++ b/sys/kern/subr_vmem.c @@ -194,6 +194,9 @@ static LIST_HEAD(, vmem) vmem_list = LIST_HEAD_INITIALIZER(vmem_list); static uma_zone_t vmem_zone; /* ---- misc */ +#define VMEM_LIST_LOCK() mtx_lock(&vmem_list_lock) +#define VMEM_LIST_UNLOCK() mtx_unlock(&vmem_list_lock) + #define VMEM_CONDVAR_INIT(vm, wchan) cv_init(&vm->vm_cv, wchan) #define VMEM_CONDVAR_DESTROY(vm) cv_destroy(&vm->vm_cv) #define VMEM_CONDVAR_WAIT(vm) cv_wait(&vm->vm_cv, &vm->vm_lock) @@ -777,7 +780,7 @@ vmem_periodic(void *unused, int pending) vmem_size_t desired; vmem_size_t current; - mtx_lock(&vmem_list_lock); + VMEM_LIST_LOCK(); LIST_FOREACH(vm, &vmem_list, vm_alllist) { #ifdef DIAGNOSTIC /* Convenient time to verify vmem state. */ @@ -802,7 +805,7 @@ vmem_periodic(void *unused, int pending) */ VMEM_CONDVAR_BROADCAST(vm); } - mtx_unlock(&vmem_list_lock); + VMEM_LIST_UNLOCK(); callout_reset(&vmem_periodic_ch, vmem_periodic_interval, vmem_periodic_kick, NULL); @@ -1271,9 +1274,9 @@ vmem_init(vmem_t *vm, const char *name, vmem_addr_t base, vmem_size_t size, } } - mtx_lock(&vmem_list_lock); + VMEM_LIST_LOCK(); LIST_INSERT_HEAD(&vmem_list, vm, vm_alllist); - mtx_unlock(&vmem_list_lock); + VMEM_LIST_UNLOCK(); return vm; } @@ -1301,9 +1304,9 @@ void vmem_destroy(vmem_t *vm) { - mtx_lock(&vmem_list_lock); + VMEM_LIST_LOCK(); LIST_REMOVE(vm, vm_alllist); - mtx_unlock(&vmem_list_lock); + VMEM_LIST_UNLOCK(); vmem_destroy1(vm); } From nobody Tue Dec 9 00:28:57 2025 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 4dQKTj4h0Wz6Jd66 for ; Tue, 09 Dec 2025 00:28:57 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQKTj2CDZz3Xvt for ; Tue, 09 Dec 2025 00:28:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765240137; 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=SPl9yF/Qoru4VJJT8vB+E3UQfL4Xu+4AIf1Tz0Iwefk=; b=ysU1pnkuw60vvbkHV0b1yt5oXkQEm/yXAlkJwHcUeD3YYc7VWbTVBObEZBAro8ZGLLcIW/ lblZw2bMpqAEfsGkiWfCAjus3hsnKHvOr/u7sHccD17pKfiXOAWBWEPPmTtn7YOc2keIFB CUrm/uN6Fzf2HOWPMX/Vv+9WhWwe3TvrvWQOgrMsfih2KklwiHAcyqjOid3+ThbMNrK2XA y5TF6lhtHu/d8ZnIsXOSDS7yb0MZrlft8VAfIQjnDJzq9rkaTVbUHP+xfRRNHNm5UEvrPC NKOUELccyQFO/sDTQXXJ8iDSjPW6xiLHV/hUUqd2CGd9UmtGYXcn9tGSagsknA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765240137; 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=SPl9yF/Qoru4VJJT8vB+E3UQfL4Xu+4AIf1Tz0Iwefk=; b=BJWu18DirfjVFvMgaW0mi6ffGp0MLvLGgBZZXJDwvj0IYTrrpHkXCnn3/J/+/9b5AHRI6W MZ7Nma9KHLn9OndI5It8KTI2lh6nIJkRFcqfkpXnION0C3Nkrc3IY1lSQfkN8/Phji+Svj JeioKXa2ROReB0cmESnaqq0nhHkdlc78pOpSPJ9sj8PeORaOBUBclT3pUNDqBTZXsIYhqL yxM1KCWcS0tM6HWALs+fng4RiOPiGJHTaLDtXR8qojVHKfenYCBC/Erb7qyXgOaB2JW62P OhW5OUlwxRUOmkkmZWaayD9j2jE+RBHybVXR4vR72x2/4aa//1JkixRR0pmb+w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765240137; a=rsa-sha256; cv=none; b=Mm8rJkED5V6hl9lKt6WFO1HtxSQHdyEPtJHNvag1IC8IyZJmYH4Pof9RRxrX5Xn1H7RJA4 vbsxVvqkulImiMic2H3n/nhCm6Wpfn9sf2dAS0GkT2zYtSWn7sukN3wc/6sVeZrAFCBgGF FVLRHYYFZ6GyOLbyifWch5gIlB6579DPla2lZWRDUR7UzfyLocTZiWvuMX6rP5kX2LGkGD cK2j1q6a+VVgWpvxSPQyiCqqcfsySNiF6WHha4LcPanfeGcaDqf5AE9heMdgwvTxkdLC0c Ni+zg/CJ53r+JmOmWzZxINDNphk48y39XeJiSaqyTB4xVwNc4tWzOrCfPSMdGg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQKTj1cW7zbws for ; Tue, 09 Dec 2025 00:28:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id dd01 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 00:28:57 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: c4b0e25fa1f3 - stable/15 - kern/subr_vmem.c: remove unused VMEM_TRYLOCK() macro 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 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: c4b0e25fa1f3ad9766e117658e7af6250e181616 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 00:28:57 +0000 Message-Id: <69376d49.dd01.4f2e0ca2@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=c4b0e25fa1f3ad9766e117658e7af6250e181616 commit c4b0e25fa1f3ad9766e117658e7af6250e181616 Author: Konstantin Belousov AuthorDate: 2025-10-16 23:53:41 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-09 00:24:55 +0000 kern/subr_vmem.c: remove unused VMEM_TRYLOCK() macro (cherry picked from commit 305e33d4c6edd735590909161ff0847e73e68b66) --- sys/kern/subr_vmem.c | 1 - 1 file changed, 1 deletion(-) diff --git a/sys/kern/subr_vmem.c b/sys/kern/subr_vmem.c index 06c104b9fce2..507c8ad897e9 100644 --- a/sys/kern/subr_vmem.c +++ b/sys/kern/subr_vmem.c @@ -203,7 +203,6 @@ static uma_zone_t vmem_zone; #define VMEM_CONDVAR_BROADCAST(vm) cv_broadcast(&vm->vm_cv) #define VMEM_LOCK(vm) mtx_lock(&vm->vm_lock) -#define VMEM_TRYLOCK(vm) mtx_trylock(&vm->vm_lock) #define VMEM_UNLOCK(vm) mtx_unlock(&vm->vm_lock) #define VMEM_LOCK_INIT(vm, name) mtx_init(&vm->vm_lock, (name), NULL, MTX_DEF) #define VMEM_LOCK_DESTROY(vm) mtx_destroy(&vm->vm_lock) From nobody Tue Dec 9 00:28:58 2025 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 4dQKTl2sWSz6Jcyb for ; Tue, 09 Dec 2025 00:28:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQKTk75SBz3Xjb for ; Tue, 09 Dec 2025 00:28:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765240139; 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=A9sxe8CUttv7f+HVhsJp0GlBS2x0XbO9N4cNNlkJ/JI=; b=ty+zZJNPmKG7vmhUUVRKp9cGRRUWNHiJ5jP4JYL97IYuM+aZPWZLX6Lc8TS8NN/wMKokIv raKr5Sk2ysBWAadl4RuwWCFPxVqJnFmT0IMEl7gqy/pVLPKYP5kOXHwEidtpWi8Z/gN4Ux CE+acnhLnVFmoXu0uLZOLrPo8nuIiqWXbTdyq4pvL4eKmgIgI5uAK24Zp6/s1Lx2dGwa3r u8Coaj5tLyi+ZeoRhn5FmrguWAqIxQRnUoSAB3d38+OM6a7SBBp6fewa7nESmm6ozQF4zP ZI2MYZ1JaScE6IdHboMcJodXsEorEi1oiLUGYsaNRkBLcmyxCVFUwTjDymlepQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765240139; 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=A9sxe8CUttv7f+HVhsJp0GlBS2x0XbO9N4cNNlkJ/JI=; b=KWt4jC2lbUPkPPqKJL2MH0mC/+ujc3PjyWJOpDw8vDLKj8Ee00qBKbQ8JTOwbmXG8ITvv6 ErIC5nA8KSrpARZ4EqitRzX9v5x/LbJsGO3ROpA3uI8SMfUC1pUIshrse3t+rEB4KzMm37 1vkLZTjUmfW7EISw5E55TrjhQ6oV3hFMtAduQP/8frK4qoPu0C88afBYe92pZrb5t4pau1 Ii//QjXb0zdHhxBf8IpBxY6fx0NjNFdbW1t61r3OmYd/UpyAaiqInLXILEfiEJCstyjG2g 92WhmH5RRQ630BrkTMCBLTRjAVvpNiraAlDs5pg1Ns3MachAyfXv1hCZnwXE4A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765240139; a=rsa-sha256; cv=none; b=eKgzoZiTfAfd/g1BqB3u9PJq6oducCdRwMDiSiGtECd7OCOYSJjkm7yblPJe3pt+u45eQr OJCVo+Uhu0NdXXuSVUDVFG9GzbEXY8K6lfF+fC7LzqFz9+BdB08aFuGfllg3jvHEPOiDWr m+/ZqsxcpWs9svBNp+W9OV96eg9tuGJJfmei7hc+hfjz5vtUSDzWA+K0XwGY6Tu+nznX6d v+gYJjt1nxZHwknaFRcDKS5VzL9XF3rpZN6nFp2V+Qyv9KGvsPaDREBWP0WCqh3/GI/cus t86Gkbp20zQZuaWuCz02LAjlriB/j38lK4J5MjgIbwqDmVAd9snYmYdOgWzq9g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQKTk2SNGzc50 for ; Tue, 09 Dec 2025 00:28:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id bfc2 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 00:28:58 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 3ae14e8f332f - stable/15 - libuvmem: usermode port of vmem(9) 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 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: 3ae14e8f332f0ca918efce8aa19ab7f2bcbc3517 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 00:28:58 +0000 Message-Id: <69376d4a.bfc2.209d3fdd@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=3ae14e8f332f0ca918efce8aa19ab7f2bcbc3517 commit 3ae14e8f332f0ca918efce8aa19ab7f2bcbc3517 Author: Konstantin Belousov AuthorDate: 2020-12-21 17:41:34 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-09 00:24:55 +0000 libuvmem: usermode port of vmem(9) (cherry picked from commit 1ecf01065b45018de3901c8bf89d703af737feeb) --- lib/Makefile | 1 + lib/libuvmem/Makefile | 17 +++ lib/libuvmem/Symbol.map | 15 +++ share/mk/bsd.libnames.mk | 1 + share/mk/src.libnames.mk | 5 + sys/contrib/openzfs/include/sys/zfs_context.h | 2 + sys/kern/subr_vmem.c | 151 +++++++++++++++++++++++--- sys/sys/vmem.h | 23 ++-- usr.sbin/bhyve/Makefile | 2 +- 9 files changed, 194 insertions(+), 23 deletions(-) diff --git a/lib/Makefile b/lib/Makefile index 75a2355aa452..216ba1d58473 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -107,6 +107,7 @@ SUBDIR= ${SUBDIR_BOOTSTRAP} \ libulog \ libutil \ libutil++ \ + libuvmem \ ${_libvgl} \ libwrap \ libxo \ diff --git a/lib/libuvmem/Makefile b/lib/libuvmem/Makefile new file mode 100644 index 000000000000..9d13eabd277c --- /dev/null +++ b/lib/libuvmem/Makefile @@ -0,0 +1,17 @@ +PACKAGE= runtime + +LIB= uvmem +SRCS= subr_vmem.c + +SHLIB_MAJOR= 1 +LIBADD+= pthread +CFLAGS.clang+=-Wno-thread-safety-analysis + +SYMBOL_MAPS= ${.CURDIR}/Symbol.map +VERSION_DEF= ${SRCTOP}/lib/libc/Versions.def + +.include + +.PATH: ${SRCTOP}/sys/kern + +.include diff --git a/lib/libuvmem/Symbol.map b/lib/libuvmem/Symbol.map new file mode 100644 index 000000000000..0f408460cd9c --- /dev/null +++ b/lib/libuvmem/Symbol.map @@ -0,0 +1,15 @@ +FBSD_1.9 { + vmem_add; + vmem_alloc; + vmem_create; + vmem_destroy; + vmem_free; + vmem_init; + vmem_roundup_size; + vmem_set_import; + vmem_set_limit; + vmem_set_reclaim; + vmem_size; + vmem_xalloc; + vmem_xfree; +}; diff --git a/share/mk/bsd.libnames.mk b/share/mk/bsd.libnames.mk index 2f099e0579b2..54bdfd301cd3 100644 --- a/share/mk/bsd.libnames.mk +++ b/share/mk/bsd.libnames.mk @@ -171,6 +171,7 @@ LIBUSB?= ${LIBDESTDIR}${LIBDIR_BASE}/libusb.a LIBUSBHID?= ${LIBDESTDIR}${LIBDIR_BASE}/libusbhid.a LIBUTIL?= ${LIBDESTDIR}${LIBDIR_BASE}/libutil.a LIBUUTIL?= ${LIBDESTDIR}${LIBDIR_BASE}/libuutil.a +LIBUVMEM?= ${LIBDESTDIR}${LIBDIR_BASE}/libuvmem.a LIBVERTO?= ${LIBDESTDIR}${LIBDIR_BASE}/libverto.a LIBVGL?= ${LIBDESTDIR}${LIBDIR_BASE}/libvgl.a LIBVMMAPI?= ${LIBDESTDIR}${LIBDIR_BASE}/libvmmapi.a diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk index 93f041196c95..f92c08edbcca 100644 --- a/share/mk/src.libnames.mk +++ b/share/mk/src.libnames.mk @@ -236,6 +236,7 @@ _LIBRARIES= \ usb \ usbhid \ util \ + uvmem \ uutil \ verto \ vmmapi \ @@ -490,6 +491,7 @@ _DP_fifolog= z _DP_ipf= kvm _DP_tpool= spl _DP_uutil= avl spl +_DP_uvmem= pthread _DP_zfs= md pthread rt umem util uutil m avl bsdxml crypto geom nvpair \ z zfs_core zutil _DP_zfsbootenv= zfs nvpair @@ -766,6 +768,9 @@ LIBSYS_PIC?= ${LIBSYS_PICDIR}/libsys_pic.a LIBSAMPLERATEDIR?= ${_LIB_OBJTOP}/lib/libsamplerate LIBSAMPLERATE?= ${LIBSAMPLERATEDIR}/libsamplerate${PIE_SUFFIX}.a +LIBUVMEMDIR= ${OBJTOP}/lib/libuvmem +LIBUVMEM?= ${LIBUVMEMDIR}/libuvmem${PIE_SUFFIX}.a + # Define a directory for each library. This is useful for adding -L in when # not using a --sysroot or for meta mode bootstrapping when there is no # Makefile.depend. These are sorted by directory. diff --git a/sys/contrib/openzfs/include/sys/zfs_context.h b/sys/contrib/openzfs/include/sys/zfs_context.h index 7112d3ef5c99..d8c83ae5a31b 100644 --- a/sys/contrib/openzfs/include/sys/zfs_context.h +++ b/sys/contrib/openzfs/include/sys/zfs_context.h @@ -50,7 +50,9 @@ extern "C" { #include #include #include +#ifndef __FreeBSD__ #include +#endif #include #include #include diff --git a/sys/kern/subr_vmem.c b/sys/kern/subr_vmem.c index 507c8ad897e9..afc327c512ce 100644 --- a/sys/kern/subr_vmem.c +++ b/sys/kern/subr_vmem.c @@ -41,6 +41,9 @@ */ #include + +#ifdef _KERNEL + #include "opt_ddb.h" #include @@ -75,6 +78,28 @@ #include #include +#else /* _KERNEL */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define KASSERT(a, b) +#define MPASS(a) +#define WITNESS_WARN(a, b, c) +#define panic(...) assert(0) + +#endif /* _KERNEL */ + #define VMEM_OPTORDER 5 #define VMEM_OPTVALUE (1 << VMEM_OPTORDER) #define VMEM_MAXORDER \ @@ -87,24 +112,40 @@ #define VMEM_FITMASK (M_BESTFIT | M_FIRSTFIT | M_NEXTFIT) -#define VMEM_FLAGS (M_NOWAIT | M_WAITOK | M_USE_RESERVE | M_NOVM | \ - M_BESTFIT | M_FIRSTFIT | M_NEXTFIT) - -#define BT_FLAGS (M_NOWAIT | M_WAITOK | M_USE_RESERVE | M_NOVM) - #define QC_NAME_MAX 16 /* * Data structures private to vmem. */ +#ifdef _KERNEL + +#define VMEM_FLAGS (M_NOWAIT | M_WAITOK | M_USE_RESERVE | M_NOVM | \ + M_BESTFIT | M_FIRSTFIT | M_NEXTFIT) + +#define BT_FLAGS (M_NOWAIT | M_WAITOK | M_USE_RESERVE | M_NOVM) + MALLOC_DEFINE(M_VMEM, "vmem", "vmem internal structures"); +#else /* _KERNEL */ + +/* bit-compat with kernel */ +#define M_ZERO 0 +#define M_NOVM 0 +#define M_USE_RESERVE 0 + +#define VMEM_FLAGS (M_NOWAIT | M_BESTFIT | M_FIRSTFIT | M_NEXTFIT) + +#define BT_FLAGS 0 + +#endif /* _KERNEL */ + typedef struct vmem_btag bt_t; TAILQ_HEAD(vmem_seglist, vmem_btag); LIST_HEAD(vmem_freelist, vmem_btag); LIST_HEAD(vmem_hashlist, vmem_btag); +#ifdef _KERNEL struct qcache { uma_zone_t qc_cache; vmem_t *qc_vmem; @@ -113,6 +154,7 @@ struct qcache { }; typedef struct qcache qcache_t; #define QC_POOL_TO_QCACHE(pool) ((qcache_t *)(pool->pr_qcache)) +#endif #define VMEM_NAME_MAX 16 @@ -132,8 +174,13 @@ struct vmem_btag { /* vmem arena */ struct vmem { +#ifdef _KERNEL struct mtx_padalign vm_lock; struct cv vm_cv; +#else + pthread_mutex_t vm_lock; + pthread_cond_t vm_cv; +#endif char vm_name[VMEM_NAME_MAX+1]; LIST_ENTRY(vmem) vm_alllist; struct vmem_hashlist vm_hash0[VMEM_HASHSIZE_MIN]; @@ -165,8 +212,10 @@ struct vmem { /* Space exhaustion callback. */ vmem_reclaim_t *vm_reclaimfn; +#ifdef _KERNEL /* quantum cache */ qcache_t vm_qcache[VMEM_QCACHE_IDX_MAX]; +#endif }; #define BT_TYPE_SPAN 1 /* Allocated from importfn */ @@ -178,6 +227,7 @@ struct vmem { #define BT_END(bt) ((bt)->bt_start + (bt)->bt_size - 1) +#ifdef _KERNEL #if defined(DIAGNOSTIC) static int enable_vmem_check = 0; SYSCTL_INT(_debug, OID_AUTO, vmem_check, CTLFLAG_RWTUN, @@ -190,10 +240,17 @@ static int vmem_periodic_interval; static struct task vmem_periodic_wk; static struct mtx_padalign __exclusive_cache_line vmem_list_lock; -static LIST_HEAD(, vmem) vmem_list = LIST_HEAD_INITIALIZER(vmem_list); static uma_zone_t vmem_zone; +#else /* _KERNEL */ +static pthread_mutex_t vmem_list_lock = PTHREAD_MUTEX_INITIALIZER; + +#endif /* _KERNEL */ + +static LIST_HEAD(, vmem) vmem_list = LIST_HEAD_INITIALIZER(vmem_list); + /* ---- misc */ +#ifdef _KERNEL #define VMEM_LIST_LOCK() mtx_lock(&vmem_list_lock) #define VMEM_LIST_UNLOCK() mtx_unlock(&vmem_list_lock) @@ -207,6 +264,21 @@ static uma_zone_t vmem_zone; #define VMEM_LOCK_INIT(vm, name) mtx_init(&vm->vm_lock, (name), NULL, MTX_DEF) #define VMEM_LOCK_DESTROY(vm) mtx_destroy(&vm->vm_lock) #define VMEM_ASSERT_LOCKED(vm) mtx_assert(&vm->vm_lock, MA_OWNED); +#else /* _KERNEL */ +#define VMEM_LIST_LOCK() pthread_mutex_lock(&vmem_list_lock) +#define VMEM_LIST_UNLOCK() pthread_mutex_unlock(&vmem_list_lock) + +#define VMEM_CONDVAR_INIT(vm, wchan) pthread_cond_init(&vm->vm_cv, NULL) +#define VMEM_CONDVAR_DESTROY(vm) pthread_cond_destroy(&vm->vm_cv) +#define VMEM_CONDVAR_WAIT(vm) pthread_cond_wait(&vm->vm_cv, &vm->vm_lock) +#define VMEM_CONDVAR_BROADCAST(vm) pthread_cond_broadcast(&vm->vm_cv) + +#define VMEM_LOCK(vm) pthread_mutex_lock(&vm->vm_lock) +#define VMEM_UNLOCK(vm) pthread_mutex_unlock(&vm->vm_lock) +#define VMEM_LOCK_INIT(vm, name) pthread_mutex_init(&vm->vm_lock, NULL) +#define VMEM_LOCK_DESTROY(vm) pthread_mutex_destroy(&vm->vm_lock) +#define VMEM_ASSERT_LOCKED(vm) pthread_mutex_isowned_np(&vm->vm_lock) +#endif /* _KERNEL */ #define VMEM_ALIGNUP(addr, align) (-(-(addr) & -(align))) @@ -231,6 +303,7 @@ static uma_zone_t vmem_zone; */ #define BT_MAXFREE (BT_MAXALLOC * 8) +#ifdef _KERNEL /* Allocator for boundary tags. */ static uma_zone_t vmem_bt_zone; @@ -245,7 +318,8 @@ vmem_t *transient_arena = &transient_arena_storage; #ifdef DEBUG_MEMGUARD static struct vmem memguard_arena_storage; vmem_t *memguard_arena = &memguard_arena_storage; -#endif +#endif /* DEBUG_MEMGUARD */ +#endif /* _KERNEL */ static bool bt_isbusy(bt_t *bt) @@ -265,12 +339,13 @@ bt_isfree(bt_t *bt) * at least the maximum possible tag allocations in the arena. */ static __noinline int -_bt_fill(vmem_t *vm, int flags) +_bt_fill(vmem_t *vm, int flags __unused) { bt_t *bt; VMEM_ASSERT_LOCKED(vm); +#ifdef _KERNEL /* * Only allow the kernel arena and arenas derived from kernel arena to * dip into reserve tags. They are where new tags come from. @@ -278,6 +353,7 @@ _bt_fill(vmem_t *vm, int flags) flags &= BT_FLAGS; if (vm != kernel_arena && vm->vm_arg != kernel_arena) flags &= ~M_USE_RESERVE; +#endif /* * Loop until we meet the reserve. To minimize the lock shuffle @@ -286,12 +362,18 @@ _bt_fill(vmem_t *vm, int flags) * holding a vmem lock. */ while (vm->vm_nfreetags < BT_MAXALLOC) { +#ifdef _KERNEL bt = uma_zalloc(vmem_bt_zone, (flags & M_USE_RESERVE) | M_NOWAIT | M_NOVM); +#else + bt = malloc(sizeof(struct vmem_btag)); +#endif if (bt == NULL) { +#ifdef _KERNEL VMEM_UNLOCK(vm); bt = uma_zalloc(vmem_bt_zone, flags); VMEM_LOCK(vm); +#endif if (bt == NULL) break; } @@ -351,7 +433,11 @@ bt_freetrim(vmem_t *vm, int freelimit) VMEM_UNLOCK(vm); while ((bt = LIST_FIRST(&freetags)) != NULL) { LIST_REMOVE(bt, bt_freelist); +#ifdef _KERNEL uma_zfree(vmem_bt_zone, bt); +#else + free(bt); +#endif } } @@ -538,6 +624,7 @@ bt_insfree(vmem_t *vm, bt_t *bt) /* ---- vmem internal functions */ +#ifdef _KERNEL /* * Import from the arena into the quantum cache in UMA. * @@ -722,8 +809,6 @@ vmem_startup(void) #endif } -/* ---- rehash */ - static int vmem_rehash(vmem_t *vm, vmem_size_t newhashsize) { @@ -821,6 +906,7 @@ vmem_start_callout(void *unused) vmem_periodic_kick, NULL); } SYSINIT(vfs, SI_SUB_CONFIGURE, SI_ORDER_ANY, vmem_start_callout, NULL); +#endif /* _KERNEL */ static void vmem_add1(vmem_t *vm, vmem_addr_t addr, vmem_size_t size, int type) @@ -876,10 +962,12 @@ vmem_destroy1(vmem_t *vm) { bt_t *bt; +#ifdef _KERNEL /* * Drain per-cpu quantum caches. */ qc_destroy(vm); +#endif /* * The vmem should now only contain empty segments. @@ -891,14 +979,23 @@ vmem_destroy1(vmem_t *vm) while ((bt = TAILQ_FIRST(&vm->vm_seglist)) != NULL) bt_remseg(vm, bt); - if (vm->vm_hashlist != NULL && vm->vm_hashlist != vm->vm_hash0) + if (vm->vm_hashlist != NULL && vm->vm_hashlist != vm->vm_hash0) { +#ifdef _KERNEL free(vm->vm_hashlist, M_VMEM); +#else + free(vm->vm_hashlist); +#endif + } bt_freetrim(vm, 0); VMEM_CONDVAR_DESTROY(vm); VMEM_LOCK_DESTROY(vm); +#ifdef _KERNEL uma_zfree(vmem_zone, vm); +#else + free(vm); +#endif } static int @@ -1055,8 +1152,10 @@ vmem_try_fetch(vmem_t *vm, const vmem_size_t size, vmem_size_t align, int flags) avail = vm->vm_size - vm->vm_inuse; bt_save(vm); VMEM_UNLOCK(vm); +#ifdef _KERNEL if (vm->vm_qcache_max != 0) qc_drain(vm); +#endif if (vm->vm_reclaimfn != NULL) vm->vm_reclaimfn(vm, flags); VMEM_LOCK(vm); @@ -1236,8 +1335,14 @@ vmem_init(vmem_t *vm, const char *name, vmem_addr_t base, vmem_size_t size, { vmem_size_t i; +#ifdef _KERNEL MPASS(quantum > 0); MPASS((quantum & (quantum - 1)) == 0); +#else + assert(quantum == 0); + assert(qcache_max == 0); + quantum = 1; +#endif bzero(vm, sizeof(*vm)); @@ -1252,7 +1357,11 @@ vmem_init(vmem_t *vm, const char *name, vmem_addr_t base, vmem_size_t size, vm->vm_size = 0; vm->vm_limit = 0; vm->vm_inuse = 0; +#ifdef _KERNEL qc_init(vm, qcache_max); +#else + (void)qcache_max; +#endif TAILQ_INIT(&vm->vm_seglist); vm->vm_cursor.bt_start = vm->vm_cursor.bt_size = 0; @@ -1290,7 +1399,13 @@ vmem_create(const char *name, vmem_addr_t base, vmem_size_t size, vmem_t *vm; +#ifdef _KERNEL vm = uma_zalloc(vmem_zone, flags & (M_WAITOK|M_NOWAIT)); +#else + assert(quantum == 0); + assert(qcache_max == 0); + vm = malloc(sizeof(vmem_t)); +#endif if (vm == NULL) return (NULL); if (vmem_init(vm, name, base, size, quantum, qcache_max, @@ -1302,7 +1417,6 @@ vmem_create(const char *name, vmem_addr_t base, vmem_size_t size, void vmem_destroy(vmem_t *vm) { - VMEM_LIST_LOCK(); LIST_REMOVE(vm, vm_alllist); VMEM_LIST_UNLOCK(); @@ -1324,7 +1438,6 @@ int vmem_alloc(vmem_t *vm, vmem_size_t size, int flags, vmem_addr_t *addrp) { const int strat __unused = flags & VMEM_FITMASK; - qcache_t *qc; flags &= VMEM_FLAGS; MPASS(size > 0); @@ -1332,7 +1445,10 @@ vmem_alloc(vmem_t *vm, vmem_size_t size, int flags, vmem_addr_t *addrp) if ((flags & M_NOWAIT) == 0) WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, "vmem_alloc"); +#ifdef _KERNEL if (size <= vm->vm_qcache_max) { + qcache_t *qc; + /* * Resource 0 cannot be cached, so avoid a blocking allocation * in qc_import() and give the vmem_xalloc() call below a chance @@ -1344,6 +1460,7 @@ vmem_alloc(vmem_t *vm, vmem_size_t size, int flags, vmem_addr_t *addrp) if (__predict_true(*addrp != 0)) return (0); } +#endif return (vmem_xalloc(vm, size, 0, 0, 0, VMEM_ADDR_MIN, VMEM_ADDR_MAX, flags, addrp)); @@ -1463,14 +1580,17 @@ out: void vmem_free(vmem_t *vm, vmem_addr_t addr, vmem_size_t size) { - qcache_t *qc; MPASS(size > 0); +#ifdef _KERNEL if (size <= vm->vm_qcache_max && __predict_true(addr >= VMEM_ADDR_QCACHE_MIN)) { + qcache_t *qc; + qc = &vm->vm_qcache[(size - 1) >> vm->vm_quantum_shift]; uma_zfree(qc->qc_cache, (void *)addr); } else +#endif vmem_xfree(vm, addr, size); } @@ -1564,11 +1684,13 @@ vmem_size(vmem_t *vm, int typemask) return (0); default: panic("vmem_size"); + return (0); } } /* ---- debug */ +#ifdef _KERNEL #if defined(DDB) || defined(DIAGNOSTIC) static void bt_dump(const bt_t *, int (*)(const char *, ...) @@ -1820,3 +1942,4 @@ vmem_check(vmem_t *vm) } #endif /* defined(DIAGNOSTIC) */ +#endif /* _KERNEL */ diff --git a/sys/sys/vmem.h b/sys/sys/vmem.h index 20eee9f6ccd3..daceac796722 100644 --- a/sys/sys/vmem.h +++ b/sys/sys/vmem.h @@ -33,8 +33,6 @@ #include -#ifdef _KERNEL - typedef struct vmem vmem_t; typedef uintptr_t vmem_addr_t; @@ -44,10 +42,24 @@ typedef size_t vmem_size_t; #define VMEM_ADDR_QCACHE_MIN 1 #define VMEM_ADDR_MAX (~(vmem_addr_t)0) +/* vmem_size typemask */ +#define VMEM_ALLOC 0x01 +#define VMEM_FREE 0x02 +#define VMEM_MAXFREE 0x10 + typedef int (vmem_import_t)(void *, vmem_size_t, int, vmem_addr_t *); typedef void (vmem_release_t)(void *, vmem_addr_t, vmem_size_t); typedef void (vmem_reclaim_t)(vmem_t *, int); +#ifndef _KERNEL +#define M_NOWAIT 0x0800 /* userspace hack */ +#define M_FIRSTFIT 0x1000 /* only for vmem, fast fit */ +#define M_BESTFIT 0x2000 /* only for vmem, low fragmentation */ +#define M_NEXTFIT 0x8000 /* only for vmem, follow cursor */ +#endif + +__BEGIN_DECLS + /* * Create a vmem: * name - Name of the region @@ -134,11 +146,6 @@ void vmem_printall(const char *, int (*fn)(const char *, ...) __printflike(1, 2)); void vmem_startup(void); -/* vmem_size typemask */ -#define VMEM_ALLOC 0x01 -#define VMEM_FREE 0x02 -#define VMEM_MAXFREE 0x10 - -#endif /* _KERNEL */ +__END_DECLS #endif /* !_SYS_VMEM_H_ */ diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index e5e8bf9b5567..12844ec83b27 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -95,7 +95,7 @@ CFLAGS+=-I${.CURDIR} \ -I${.CURDIR}/../../contrib/lib9p \ -I${SRCTOP}/sys -LIBADD+= vmmapi md nv pthread z util sbuf cam 9p +LIBADD+= vmmapi md nv uvmem pthread z util sbuf cam 9p .if ${MK_BHYVE_SNAPSHOT} != "no" LIBADD+= ucl xo From nobody Tue Dec 9 00:28:59 2025 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 4dQKTl6PGKz6Jcvx for ; Tue, 09 Dec 2025 00:28:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQKTl3lwxz3XZ1 for ; Tue, 09 Dec 2025 00:28:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765240139; 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=YOr9CmfCAS+fzEbWzLsZwBbDXmWQebHTrkXs6fxPo8Y=; b=mhXKf1NfeVb53++iJC11gB0M4cUFFypI7h8eWbxoNu/rF1SqYLNOIKdTYL3vqdp6k2/ltF iIKnwlSJ9ONZmu34+ZhtpslXBR3lT+jmihZ54fy24LgB4oC4iOicEjl2jUO5cXTfxrI+G8 WpqRKdo/eVgqIqHOqi+74K3vs99KQD/tTey4h1Zso3eJ+3k91AXpnIWZ+s+Zuuf8tNcB/j XGeMA/ftCKldvEr0uP9RvEpbzJPmVRneny3rz1W0Tl4Ta0bSnJU5yUmijuhurLtrHn/JDC QOGR3kT2IwrfB53KJGG+lqdRExm8ew6AbqohQ4QFGqcwlmb7eqvJgdC482kmUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765240139; 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=YOr9CmfCAS+fzEbWzLsZwBbDXmWQebHTrkXs6fxPo8Y=; b=sb0YJMFOIHf2zn80O05YI5JhcBDLz8+u8NnXPdFjqAz8DDyEpxv+zD1FksfW6B/MuCUgOR LsFKJXfKCI5lIUF6U2kYktK7vI6BxnRU0ZRM3xoGuy1llEMOXCs1zw84bSkcidj2gNLLl+ kp68VFsPLqjkf15x2a6Fxic9EELDGn0p93j2EoNtQzvxvpfGqA1Kq9ZcdFWqAcWCdRYIPs iIJ0eV+SfDrFJ6RTx4esMNrdCfn5V2FSDwywwVaLqWPCNPrEcndbpt58oO4Z1Pfe1d3WWD 9iGOWafTGcxHfCMtLpH03vkA9p1sC395g6jvH9HIiHoXqfvghXrip9Xkci6TZA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765240139; a=rsa-sha256; cv=none; b=HeKzJ8aqYnBKuKT0Ih4X58lq2WqaqLZEiu9sykEYwfoB4vCc1E7owbBXHveCwLhqg8V7I/ 0VV/aTsjNyJ1jUDYLH379jg7YhQdqtmVBqo49B++DMiLED7bt1IIchjXvaWf+nqiejYyRQ Lim17gwN7Cc5g7V85WnkCOXRw33sNY2bmm9p4g7T3WLDQzN0lAr02cvmkLMm1/gHfqeWIp tyS3OpV+Qw9Qv/Q1/lt2ZABPHF6pjWOrK39DY/MJt1Ifdsl4FJ4r7Yl5cH2Gg6Ws4aVQaD cNqD2Hp0c/tAgZKl00S10ihdArCSEhk+SruCOQWw48nCH+RbCtQKrYRR9l8tRA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQKTl3J0gzc6x for ; Tue, 09 Dec 2025 00:28:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id c4fa by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 00:28:59 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 7be091979260 - stable/15 - libuvmem: provide man page mostly as a pointer to vmem(9) 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 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: 7be09197926008df7343861a645f4a5895377f91 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 00:28:59 +0000 Message-Id: <69376d4b.c4fa.38cdc372@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=7be09197926008df7343861a645f4a5895377f91 commit 7be09197926008df7343861a645f4a5895377f91 Author: Konstantin Belousov AuthorDate: 2025-10-15 22:10:16 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-09 00:24:55 +0000 libuvmem: provide man page mostly as a pointer to vmem(9) (cherry picked from commit 7295aeaf5f5cbbbb16d4992b13b08bce09f03609) --- lib/libuvmem/Makefile | 2 ++ lib/libuvmem/libuvmem.3 | 71 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+) diff --git a/lib/libuvmem/Makefile b/lib/libuvmem/Makefile index 9d13eabd277c..0dae3eb77a74 100644 --- a/lib/libuvmem/Makefile +++ b/lib/libuvmem/Makefile @@ -10,6 +10,8 @@ CFLAGS.clang+=-Wno-thread-safety-analysis SYMBOL_MAPS= ${.CURDIR}/Symbol.map VERSION_DEF= ${SRCTOP}/lib/libc/Versions.def +MAN= libuvmem.3 + .include .PATH: ${SRCTOP}/sys/kern diff --git a/lib/libuvmem/libuvmem.3 b/lib/libuvmem/libuvmem.3 new file mode 100644 index 000000000000..5fbb50ec57c2 --- /dev/null +++ b/lib/libuvmem/libuvmem.3 @@ -0,0 +1,71 @@ +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2025 The FreeBSD Foundation +.\" +.\" This documentation was written by +.\" Konstantin Belousov under sponsorship +.\" from the FreeBSD Foundation. +.\" +.Dd October 16, 2025 +.Dt LIBUVMEM 3 +.Os +.Sh NAME +.Nm libuvmem +.Nd userspace general purpose resource allocator +.Sh SYNOPSIS +.Lb libuvmem +.In sys/vmem.h +.Sh DESCRIPTION +The +.Nm +is a general purpose resource allocator. +It is a port of the kernel facility of the similar name +.Nm vmem . +.Pp +Refer to the description of the kernel allocator +.Xr vmem 9 +to get the documentation for it. +.Sh NOTES +The +.Dq quantum cache +feature is not implemented for userspace, and the +.Fa quantum +and +.Fa qcache_max +arguments of the +.Fn vmem_create +function are ignored. +.Pp +The library internally uses +.Xr malloc 3 +to allocate structures tracking allocations. +.Pp +The allocator is thread-safe. +Locks for separate +.Nm vmem's +are independent between each other. +.Pp +The supported +.Fa flags +for the +.Fn vmem_xalloc +function are +.Bl -bullet +.It +.Dv M_NOWAIT +.It +.Dv M_FIRSTFIT +.It +.Dv M_BESTFIT +.It +.Dv M_NEXTFIT +.El +.Sh AUTHORS +See +.Xr vmem 9 +for the history of the kernel allocator. +.Pp +The userspace port for +.Fx +was done by +.An Konstantin Belousov Aq Mt kib@FreeBSD.org . From nobody Tue Dec 9 01:23:58 2025 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 4dQLjC05y9z6Jhtb for ; Tue, 09 Dec 2025 01:23:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQLjB5w7zz3djJ for ; Tue, 09 Dec 2025 01:23:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765243438; 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=KRbLWfIAr5gvg1iHAYgUY+NEyoV2OuqvbUCLZReGq7E=; b=yJ21EyEYZG2gun8vFRggVsy7frodGsd23ykjXfG5WWP7fsWf376kiNN+FgolrIif4uAlwR OzyXBgAQH/UPICLip4ETVhIDfjB9b3kMociFs7feMR0lmiWSWq0Q2QWdb+rEI3IdBIsrlU 9bdcKE9cfGzG6Jh3cOIbaKit44pWNm5iUnWU1wqRcJiEnHiTvLaGbH6r22gvOZAbdCtV0P J7TwRL82Z7P8oDBO9H3y86jmpt5bhZt4/4DPmm3ZaKVH4s+4l/67/H0t4m7F0OOa1v4bji XNGXu47D/r6tjCZpUhvtyL49iQABOPPcL64Gj/Q0667+TRIkFPwaAYjXHv4R4Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765243438; 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=KRbLWfIAr5gvg1iHAYgUY+NEyoV2OuqvbUCLZReGq7E=; b=NEvLRsPLIze4vPD/8rqiJqSx6ChXHw/rBZz3POeo6wyU3bRKRz9DQ+sUBNWG3fBFBWk4x/ K27rS7pfwt/qRxntMraGIcfTefVGSDSqWKTjQRE8Fh42we9Patpw3qiiJkhwQhIMbXaupb OSXJvibbL5LiMxwrR0qE2poRVM1ndU/om3hGktouyF9p4jaXTR/ThPWufhmTfQR5+j26wd 48/egJxoOg7ACEfe9um5ONvQsLyyCl3eBWxmcAzqhp03fVUr2zBlaL25J1lOiYR3Nmm/+/ FWFRiLVi6XemcP4HbSUEYf5V/HvaH8HCFSVzy0viPsNrSYXO9+9hg8LWOESCrQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765243438; a=rsa-sha256; cv=none; b=u24ms4BdmCts1ixldUiWcErLwFFyjUFYXvWOGMPzHnvHUDQaDOP5co+1EKwwswgC5SC+Bh XWZBUPSTn9cFA9J1cumvIajO+greZQJBu9mZBljlvafYVnyDqSOWsOw6wqzeFreeaPUoK0 cqBLE8cO0dCZ6vmRXWSnZVr2cDSyIHbTVecIWZQfecqueDY0n1Lk4R+onGQwg++Vo9H0ea qd1Vc4oHysA2NAjlwoLKbQ12EG3jJ2d3ugwqn0X5S0xUm2y7ItK47SthwIV2BI5WI6Aks9 19Qnav/5O8oz+jIPS0taEW/gA7K3BDcw+pMkQ2slhIjHVePGNHjAz9453mgQ/w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQLjB5VKKzdMQ for ; Tue, 09 Dec 2025 01:23:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 23a57 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 01:23:58 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Robert Clausecker From: Konstantin Belousov Subject: git: 36b12ea1fbfb - stable/15 - lib/libc: add FBSD-1.9 to Versions.def 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 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: 36b12ea1fbfb218806751c1befd52ac14c46b2f0 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 01:23:58 +0000 Message-Id: <69377a2e.23a57.219cad28@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=36b12ea1fbfb218806751c1befd52ac14c46b2f0 commit 36b12ea1fbfb218806751c1befd52ac14c46b2f0 Author: Robert Clausecker AuthorDate: 2025-10-03 01:43:48 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-09 01:23:16 +0000 lib/libc: add FBSD-1.9 to Versions.def (cherry picked from commit 969c1191957a9ad689546ddb4e8c4df2217c5052) --- lib/libc/Versions.def | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/libc/Versions.def b/lib/libc/Versions.def index 184e107d225a..1c7b34bef35b 100644 --- a/lib/libc/Versions.def +++ b/lib/libc/Versions.def @@ -42,6 +42,10 @@ FBSD_1.7 { FBSD_1.8 { } FBSD_1.7; +# This version was first added to 16.0-current. +FBSD_1.9 { +} FBSD_1.8; + # This is our private namespace. Any global interfaces that are # strictly for use only by other FreeBSD applications and libraries # are listed here. We use a separate namespace so we can write @@ -49,4 +53,4 @@ FBSD_1.8 { # # Please do NOT increment the version of this namespace. FBSDprivate_1.0 { -} FBSD_1.8; +} FBSD_1.9; From nobody Tue Dec 9 11:18:41 2025 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 4dQbvP4f17z6KQSW for ; Tue, 09 Dec 2025 11:18:41 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQbvP25jjz3VhC for ; Tue, 09 Dec 2025 11:18:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765279121; 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=rwLj5vb+KWp0ml2V5Mx++VZaiUJSontgMepgvkKSHjE=; b=XQYcwXbYcY69UOMmgr08KNtAd4Xuk9CmSjUAJQKCB1lzvkGGVuy8Rp5JcqpzAOxaRbPlhY U3zCv2qtP1FGLF9cs8lFRZVP17pEoQWuw0BEk5GND2bBIYkFIbROIqiBdItV782F9r2vtb 36xQeHs8zgfRoOnbJP2ORlsIhnoyw/lT7UOc1vDrtUQRdKxYanqTrj4J7JE8s6u/89KT9D dK1EaeszQin0x+GM5Scu6ZGbUzQ5tA/Mi+KmtXUOOkLTeisx0YC4YtFg2kOBOhhwHl9HMC s1AhX+behC3xSnY+1L+PAPnYXKQvs0TnOK/laFXS1/IfSWnH0tDAKc0SvWxoYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765279121; 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=rwLj5vb+KWp0ml2V5Mx++VZaiUJSontgMepgvkKSHjE=; b=CWSitcv6GOp2/aI+GN8BYf1XeMtz3FheM5Fy8setKncix73+ymLZC1aUr9UuFlXTlAKZHL NXWfovISe6Z8plEZDuX7/26k3sf9SA2t80MTykqUfFAxy3mZicNDzDY1VEnCbgTgXScedC LZbOhoK6g+vGG4UehvR/Mqw+FtuDKXA5g2Atfzi03V5hBAIM+27Kh//5AL681pKuDG2WbK CRLG517CrU9f3PX/+VVdfZhh+lR2bxhhE6aEkD3xbZmrmxgkEIrhG6ucQCuWTxQn8mmr3b R4PVBYQr/e8RDbhiNgoWXbbuOeSM1gWuYcSCBBNMY6UMgKHpJnizHHFTE5CqXw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765279121; a=rsa-sha256; cv=none; b=Bk0uPC62rENQJZfCn82/KytUpHi0V6cllEi4lN6A2haELI/coMRDajK4I2SfeiOvFSDLik ZsKHmXxsHhRUPDWaopnzcnUWnb++xHH1BOQNFIPv6CxoND+sH3+8SH4zHGyWq5CGN3poYg FlMpJCtWZOeSEjXOKp0wZES3Mxco0ySXb2E99WESbAkFrg7O7mFMK6UrQcMCVYV/Kd2jpN W2f9B55AmB3Rvb/vLRVitCLl1CnWd8qq4hZyARkwXSbY2FkBlJutlFsUgdm3q6hOQIS0RS ogdyWpVF5KMpee0/PZUTYZUlRxTZsjaJHQKiVmt3tX6u3bbMgQE8RWV1xF1BoQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQbvP1fmJzwj2 for ; Tue, 09 Dec 2025 11:18:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3ff9e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 11:18:41 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: b2d547abb76f - stable/14 - pfsync: fix incorrect unlock during destroy 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b2d547abb76fb4e88c0fb58b50b8dfaf5447d737 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 11:18:41 +0000 Message-Id: <69380591.3ff9e.6d3ced3b@gitrepo.freebsd.org> The branch stable/14 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=b2d547abb76fb4e88c0fb58b50b8dfaf5447d737 commit b2d547abb76fb4e88c0fb58b50b8dfaf5447d737 Author: Kristof Provost AuthorDate: 2025-12-01 21:30:56 +0000 Commit: Kristof Provost CommitDate: 2025-12-09 10:29:27 +0000 pfsync: fix incorrect unlock during destroy During pfsync_clone_destroy() we clean up pending packets. This may involve calling pfsync_undefer() or callout_drain(). We may not hold the bucket lock during callout_drain(), but must hold it during pfsync_undefer(). We incorrectly always released the lock, leading to assertion failures during cleanup if there were pending deferred packets. MFC after: 1 week Sponsored by: Orange Business Services (cherry picked from commit 639e65144aa71cb03b5431861803f528308760dc) --- sys/netpfil/pf/if_pfsync.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c index 2a5cb0612d36..cf46a8da94df 100644 --- a/sys/netpfil/pf/if_pfsync.c +++ b/sys/netpfil/pf/if_pfsync.c @@ -457,13 +457,13 @@ pfsync_clone_destroy(struct ifnet *ifp) TAILQ_FIRST(&b->b_deferrals); ret = callout_stop(&pd->pd_tmo); - PFSYNC_BUCKET_UNLOCK(b); if (ret > 0) { pfsync_undefer(pd, 1); } else { + PFSYNC_BUCKET_UNLOCK(b); callout_drain(&pd->pd_tmo); + PFSYNC_BUCKET_LOCK(b); } - PFSYNC_BUCKET_LOCK(b); } MPASS(b->b_deferred == 0); MPASS(TAILQ_EMPTY(&b->b_deferrals)); From nobody Tue Dec 9 11:18:42 2025 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 4dQbvQ5xD1z6KQSX for ; Tue, 09 Dec 2025 11:18:42 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQbvQ3nJfz3Vmg for ; Tue, 09 Dec 2025 11:18:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765279122; 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=s4eoDlmROCJe5SVcUThx72jye+n/fwsm7Ee/7kWLNk0=; b=AaY9xvjACytLIP7OD/bhIvDJzd0cgZ/WI7jgP0eucsnxu+VL3g+a4m9lnWysz39QtDObLT i+Ler1BUoaV0OSGuZSHKhA//GGoZ0z6vIQK8e7oZys5QwGgM88+895/1UmKSGTPyl42F47 vJ4lDJdXkid/6Rhwnnga+yvT1C/2hkIcmXba0Kaprc9pXUXa8kHdmqrbkcVvDYnL9FO2k1 hGyGvKy2hqr5xRav5AEqnb460NIGZbdWYV1mmGUmtMkq0KsVnmZ+OvAMZtqGnjK2spVdxB dSBkVHRQukR3dD53AjTZT1R1zCVd6wLu41G9hVzHLf5XJsFMU4dOI7q2gklqkg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765279122; 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=s4eoDlmROCJe5SVcUThx72jye+n/fwsm7Ee/7kWLNk0=; b=EtPidjUctDUA+xCd78Lu+JZQxlH1VRAGE8OJDCjTxM2EZyoOPAu9foVH/lEOdEj/1+82cR 9WV3bUz3wfRpwyuuPExh2vR5bzTzJpAcjh+mvEypkNo1Ob/Lw07t6MEwQvHXzWEwj8e/Gh vt+eqB397NwohO40K0lsfmqubFAqJH6vZtHmyAUxSl5X6lUpc29sj2HIlcY9ezGVeCDtn1 diOisAkm5m1dAVfz96QENi/V54dFXpf8cWPEisCF8L3NZrGp3dIc/Ykhr5fhNA/icmHfXv jDv3F3btLlUgBdD1k7fjDH1RApNSK1qBvdIRY3FASkDPdbnSi22/Qxea3cIeLg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765279122; a=rsa-sha256; cv=none; b=TJOHqZxjuTjUvY+Xxmmn5Hppx5zW5BbN67bJuLzMLPM8a37JxpkG13tQsaJfT0oJrb0wnQ c+1wgdAJx3k+WRbRqZq7tvAYW7Q+mbfNZh269V6z2anm9sUXEjx6c++IJ6jwf2g8n+cp6f mfkWnCNLevq7AyXFYiwiMVscxTFJUBs22LPFmSWccYjJHnhlhe2UztbYbwG1lIOMTB0Rdj 9UWfd9AK9+Ka/GkiUeSQpEKlYuwCJXb4SHJ3uFoqAVEoh39ZFqxyg4g53+Ou+SZoULDvrM 6ROm3souPiSI2ulZYaziYkZaSMnzbX4IxPW3+mzJhUljZyZxD5jWzFXLBIsWlw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQbvQ3Ll8zwTc for ; Tue, 09 Dec 2025 11:18:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 8c00 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 11:18:42 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: a06df4218348 - stable/15 - pfsync: fix incorrect unlock during destroy 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: a06df42183489627619fec45d26f799b1de1a12e Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 11:18:42 +0000 Message-Id: <69380592.8c00.4525180a@gitrepo.freebsd.org> The branch stable/15 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=a06df42183489627619fec45d26f799b1de1a12e commit a06df42183489627619fec45d26f799b1de1a12e Author: Kristof Provost AuthorDate: 2025-12-01 21:30:56 +0000 Commit: Kristof Provost CommitDate: 2025-12-09 10:47:33 +0000 pfsync: fix incorrect unlock during destroy During pfsync_clone_destroy() we clean up pending packets. This may involve calling pfsync_undefer() or callout_drain(). We may not hold the bucket lock during callout_drain(), but must hold it during pfsync_undefer(). We incorrectly always released the lock, leading to assertion failures during cleanup if there were pending deferred packets. MFC after: 1 week Sponsored by: Orange Business Services (cherry picked from commit 639e65144aa71cb03b5431861803f528308760dc) --- sys/netpfil/pf/if_pfsync.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c index de69ecbb0985..b571734b4250 100644 --- a/sys/netpfil/pf/if_pfsync.c +++ b/sys/netpfil/pf/if_pfsync.c @@ -466,13 +466,13 @@ pfsync_clone_destroy(struct ifnet *ifp) TAILQ_FIRST(&b->b_deferrals); ret = callout_stop(&pd->pd_tmo); - PFSYNC_BUCKET_UNLOCK(b); if (ret > 0) { pfsync_undefer(pd, 1); } else { + PFSYNC_BUCKET_UNLOCK(b); callout_drain(&pd->pd_tmo); + PFSYNC_BUCKET_LOCK(b); } - PFSYNC_BUCKET_LOCK(b); } MPASS(b->b_deferred == 0); MPASS(TAILQ_EMPTY(&b->b_deferrals)); From nobody Tue Dec 9 11:18:43 2025 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 4dQbvR64Tmz6KQBN for ; Tue, 09 Dec 2025 11:18:43 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQbvR4hdNz3Vq8 for ; Tue, 09 Dec 2025 11:18:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765279123; 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=eFlyQyC5FzCSZn30dmMnmImRD1HjZM+NNcO1B7auorc=; b=Vp6J2ImIHyssfyXlWhP1bbaWoyGYrvPk2YxgcWLnGMHIsL6cao2UHAEEuH9kcdbKG019vn ndytHj3SDdKxHukkYbhcjYdGiASDoJANM8IyGQxiKvDZB7fxT5DnUhkSsVSITCoa62Dpoq GJ8Cfev5wwxp7SsxBOPVHSrsjZw5YEnn+LwE2oDF7RjfgUQV7dWijaHim8u49NRFPrJxHr 1uzpWcR9IHFDNaMIf5J739rr3AYp7RmrTvuW0R/87WOsGtb+J0NIJ4K06ymmmV3ug6hKnu soxmtgyZfGzUjS4As/R4NSiOPHqiGqGyDm8gU+TFFmHC1RmG0Pd71QPwOSLaZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765279123; 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=eFlyQyC5FzCSZn30dmMnmImRD1HjZM+NNcO1B7auorc=; b=l0prC0FATybIdZ8GdgX83pKDds4T8SeZz5X7GL4Ga1+0IZI+1kF0lZW7K1DbM8smo4QgEs 0CXDIxsAcNYHSKMwv9FR/edtdGqcJ8MI0E/WiYccbp5pQDjx/8hyPa6xn10fHIMTIvMJtL FSgIVAW99Q+j/Kjqc6n6Dchlsjyi5VktqnOKjOeaODC6I0fT8RST9NrR2jkFcghQUM1/go PB4Bx9zglvxqiw8hmk+LHsSLisMNd0mm/fCApGTCzxc6aUs93cvBHGoihTHmk4Ciszm2dK SdpwDHP+OrEGnCrMpKcy/AhgBFEoV9M7vXlIPVhKC/15illw3dQiD+cUrHfJCg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765279123; a=rsa-sha256; cv=none; b=lSEuAW3exSBcp+RdVCntW7JHVxBUGSwtQjqAQUScDB5iGXoK7kADajJzKlEBJSDiKXIzQW ZEjMa+m8zXmnMxYhbytKadMlNpEC0q9U8omzIwXFXU2WtIfCOOqdqBp7JQGDlGLKHmqcB2 bkOddisvdicXGSkzHpd2Twzk153VHFcl4yL9nVyGAIFluDv6o+CxraFMj58M0gJ72+FToh qbsJCK8yoYAO3H+PUWfcJ7gxR2GDPwrh1O3cjiGMwCHATHw86pgWDgNWLxCI8p+lUntn68 9j699lEaD3g80fmUd5PIor1syFjejPfach9L3R47aPTAVLu9rC604fa8jamrdw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQbvR46vjzw3B for ; Tue, 09 Dec 2025 11:18:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3f25e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 11:18:43 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: c09ffa69b6c9 - stable/15 - pfctl: restore '-Tload -f pf.conf' functionality 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: c09ffa69b6c9f404e62dd07660abaa898f955c90 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 11:18:43 +0000 Message-Id: <69380593.3f25e.146738ab@gitrepo.freebsd.org> The branch stable/15 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=c09ffa69b6c9f404e62dd07660abaa898f955c90 commit c09ffa69b6c9f404e62dd07660abaa898f955c90 Author: Kristof Provost AuthorDate: 2025-12-01 15:05:09 +0000 Commit: Kristof Provost CommitDate: 2025-12-09 10:47:33 +0000 pfctl: restore '-Tload -f pf.conf' functionality Allow only tables to be loaded from a file, rather than everything (i.e. including options, rules). Add a test case for this. PR: 291318 MFC after: 1 week Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 7a283c40188ff7b0a4bae1a47bbd9ecc17ded132) --- sbin/pfctl/pfctl.c | 3 ++- tests/sys/netpfil/pf/table.sh | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/sbin/pfctl/pfctl.c b/sbin/pfctl/pfctl.c index 48ae54dd2fec..19a20ce0ec3a 100644 --- a/sbin/pfctl/pfctl.c +++ b/sbin/pfctl/pfctl.c @@ -3326,7 +3326,8 @@ main(int argc, char *argv[]) if ((opts & PF_OPT_NODNS) && (opts & PF_OPT_USEDNS)) errx(1, "-N and -r are mutually exclusive"); - if ((tblcmdopt == NULL) ^ (tableopt == NULL)) + if ((tblcmdopt == NULL) ^ (tableopt == NULL) && + (tblcmdopt == NULL || *tblcmdopt != 'l')) usage(); if (tblcmdopt != NULL) { diff --git a/tests/sys/netpfil/pf/table.sh b/tests/sys/netpfil/pf/table.sh index 65492545a13b..6f7c0939d31a 100644 --- a/tests/sys/netpfil/pf/table.sh +++ b/tests/sys/netpfil/pf/table.sh @@ -673,6 +673,40 @@ large_cleanup() pft_cleanup } +atf_test_case "load" "cleanup" +load_head() +{ + atf_set descr 'Test pfctl -T load (PR 291318)' + atf_set require.user root +} + +load_body() +{ + pft_init + + epair_send=$(vnet_mkepair) + ifconfig ${epair_send}a 192.0.2.1/24 up + + vnet_mkjail alcatraz ${epair_send}b + jexec alcatraz ifconfig ${epair_send}b 192.0.2.2/24 up + jexec alcatraz pfctl -e + + echo -e "table persist { 172.16/12 }\nblock\npass in from \n" \ + | atf_check -s exit:0 jexec alcatraz pfctl -Tload -f - + + atf_check -s exit:0 -o ignore ping -c 3 192.0.2.2 + + atf_check -s exit:0 -o not-match:"block" \ + jexec alcatraz pfctl -sr + atf_check -s exit:0 -o match:'172.16.0.0/12' \ + jexec alcatraz pfctl -Tshow -t private +} + +load_cleanup() +{ + pft_cleanup +} + atf_init_test_cases() { atf_add_test_case "v4_counters" @@ -689,4 +723,5 @@ atf_init_test_cases() atf_add_test_case "anchor" atf_add_test_case "flush" atf_add_test_case "large" + atf_add_test_case "load" } From nobody Tue Dec 9 15:24:15 2025 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 4dQjLr1CGPz6Kn3t for ; Tue, 09 Dec 2025 15:24: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQjLr0m1sz3x59 for ; Tue, 09 Dec 2025 15:24:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765293860; 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=3yjtv5BSJKtMBxbENdNawmPv5z4Wm84Wqw60PZYSla0=; b=cUXditfvbZMa8Vn2fzcUtry+twoYm7kaN4Z+V8WbY/cbHVy4M/G4hqP3Y1lmwLBOVekO+/ wynyT0diLBwTabMLj32ztAzQkkYIL+Ucx5cNGxLNF0zvNEcClWUJeaTthVCg7bGmEUw9qJ rZrPT4Ry7moVj3x3ATEsr82pe+EVEwucQ1Ht9sxOxfZRNVykknKnb2IkW8wj1W4SwMWIpG UCBZlqqXePk9hjnjuI8mA+g8Ru8ABqDDJc4i0KGLqvTKhLWD8obrVCMeZqb+n9JAeSlyVu ImGuxqcF1COeJmRTQjfUg8eHzZAPbJaYRrOqEnZeRlMoI7MIXv1e6WpY+PMxRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765293860; 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=3yjtv5BSJKtMBxbENdNawmPv5z4Wm84Wqw60PZYSla0=; b=oj/qaRFmi6o/6Dc9wkLI3171vLmG6Gkm2EypolvEq2ymxs0ZYbQHeoUyohNdwq7DBl7Ux5 vtxmyJ+l3HmemR7H5KmDnHmnLicvYu7FCnhLNwePbmSp3iigyb8Ys4ToUZVeQcoxjAe4+Z faF8SRioM2lYpW8HL227cPKYtYViIdV7i3AB7Od0c1vsxp5OVu6TTt65Q6qFZ9IyxWkSDK V280ekvg/6dixAy/4FLRbzU22d9QOQjRoMvfWbNVvrzWZRpyqR2n3Cr9H2TJ9G7R5qrrGm iS+Uvi1519exK+6nuxSdeBJS6xIQf1GuhG084E5OtI5wGA55lOZnJgsc/Sz9Zg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765293860; a=rsa-sha256; cv=none; b=uARtg0II/Sx3b0xf7Ami9eyDw0mk4qcw0jG8pR20bYLFOUDvUGiO5CuU8MfjvevI0IC8dM lAAvG6csYl5wyv5dNasz01uKKUV0e7vxogpFz4QSJVTFJonh9h6pWJdX6DAJin25njLDAT 3mon2O4sq0dnQO4k4EnIlgjC/Th0paqdU0au2pmKigVn27oyMl1lC1Ezq+7o5IO+6/RGs8 sotq1OrQ6B+lFBHqP6bN/AIv7g5GOEplfYZNSTO6rnAkSI2jZbQy0V3HHJ8WyVuiN2FtDw Q9UJuOYnMWxlj5P+81kocVVxG+uaVn50sXhZCCTtIpDSmShmUbWE0vauKJtlhQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQjLl0C8rz14Rp for ; Tue, 09 Dec 2025 15:24:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 328d5 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 15:24:15 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: f8c53a64a7d1 - stable/15 - src.opts.mk: Enable LLDB for 32-bit arm 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: f8c53a64a7d1f599f0710454faeeefa469cee56a Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 15:24:15 +0000 Message-Id: <69383f1f.328d5.3d0a63bb@gitrepo.freebsd.org> The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=f8c53a64a7d1f599f0710454faeeefa469cee56a commit f8c53a64a7d1f599f0710454faeeefa469cee56a Author: Ed Maste AuthorDate: 2025-09-21 14:31:05 +0000 Commit: Ed Maste CommitDate: 2025-12-09 15:24:00 +0000 src.opts.mk: Enable LLDB for 32-bit arm It was previously disabled when we built for older 32-bit arm targets which lack 64-bit atomics. As we now support armv7 at a minimum there is no need to disable LLDB. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52668 (cherry picked from commit 69415879e9e493cba78b3a4afb1a78d813a2eb8a) --- share/man/man5/src.conf.5 | 6 +++--- share/mk/src.opts.mk | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5 index 0d304a6b4667..ba8b79b7c5bd 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 October 1, 2025 +.Dd October 22, 2025 .Dt SRC.CONF 5 .Os .Sh NAME @@ -956,12 +956,12 @@ Do not build LLVM's lld linker. Do not build the LLDB debugger. .Pp This is a default setting on -arm/armv7 and riscv/riscv64. +riscv/riscv64. .It Va WITH_LLDB Build the LLDB debugger. .Pp This is a default setting on -amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and powerpc/powerpc64le. +amd64/amd64, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc64 and powerpc/powerpc64le. .It Va WITHOUT_LLD_BOOTSTRAP Do not build the LLD linker during the bootstrap phase of the build. diff --git a/share/mk/src.opts.mk b/share/mk/src.opts.mk index c8c3d89873fb..91ea9534fcd6 100644 --- a/share/mk/src.opts.mk +++ b/share/mk/src.opts.mk @@ -302,7 +302,7 @@ __DEFAULT_NO_OPTIONS+=FDT __DEFAULT_YES_OPTIONS+=FDT .endif -.if ${__T:Marm*} == "" && ${__T:Mriscv64*} == "" +.if ${__T:Mriscv64*} == "" __DEFAULT_YES_OPTIONS+=LLDB .else __DEFAULT_NO_OPTIONS+=LLDB From nobody Tue Dec 9 15:27:14 2025 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 4dQjQh55yzz6Kn7D; Tue, 09 Dec 2025 15:27:40 +0000 (UTC) (envelope-from ashafer@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (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 "smtp.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQjQh32fjz40MJ; Tue, 09 Dec 2025 15:27:40 +0000 (UTC) (envelope-from ashafer@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765294060; 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: in-reply-to:in-reply-to:references:references; bh=RMylcktqDhOcdCTdOKhzsn2sdl37whIUQyndZzGar30=; b=v35ywwPRlkTKhr6XYrjJRtlsyJ66m71xOBdImdu5n/6g3FkxkdGnBAzU09Tor3R3qO65G8 VgpDMiN73a3a0Sa7kuGveYCPBuIhSYIVCgsBb7i549sV8syjWQ19V66poYv9NyHe2/i6Oj VXGVO2YTgSH2n/2yTN8Qd6lmEzeDqCljBMJ78gWwC0tvz0ME5FT0qW8dM08we4on0ThOZL KxcsElGWvm0lq6aR3m/vOJjT2i+K5yh+obXsT++FRbLPYD3/PHXv4QB1Xhkx6rKR9eaQO0 sqrtHQsbNC+wfacLGFvBJYTSYjcsxXKhSm0GQ/UjjjgknZwd2B4PpvMnqkK7Jg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765294060; 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: in-reply-to:in-reply-to:references:references; bh=RMylcktqDhOcdCTdOKhzsn2sdl37whIUQyndZzGar30=; b=jl30mjMQFZh11yNnG3zahN4/+KGCwxaQFV2kCdphl8lSbGS4DFX4M5yZgpl21x0WVIQ9qQ RiHkX2I/UmY2YfUSM5JHJ6r9buFZ09v5TTGVa2EecYl2lsE1+zDFaITK8tdB17sWj0boJr gtGQ6BlAeRYCXMLySeGOFJDbfZLP2DrXAbDYDuixB2sNGaHSGgcMOj2zoWEU7Q6UZWVdq/ UeGiHjCiG6ei6B02PSpnUYVS7ZQCInWzDTEybTeLqNEieU/DCBSCy03Si+CEEydYUCkE4m MbQikk3K1Dp9kOn3dOhBMC3E1Kcdj1iD1I6K9VErD2IslRGW0C8zIoIYFyiqzg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765294060; a=rsa-sha256; cv=none; b=F/qqgweQZ12fJh1Shz9oUG2InmgwMOIdrb03XvScv41BR9Gk8S25MI+2lsshrkblep+9OF zZe2CG1Pel0iQzzbuxFC0KkusKcQvnHIW9zp6V3doe3ZqC4r3Hsk3ctSHgUgmgP+mNZEn8 /P5Pfm2ei7153lDlEc+xKrbS98WPKO6laolUazVLHNxhP04y/UXyRtereS2nw7iAP/hTFP H/x4Ie9XPbEDlcg6Ju82UWZLFw8CXvpmSpamC328GNcfwYoS9RHq+5ZZiYYV1ZyyOWgIo2 VbNHpaTbJBSOI3aY4l7B5fP+8ER/jNflzilpQgBlqZmGS2ZywLp+C7/DhQYrxw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from [10.20.214.191] (unknown [12.22.141.131]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: ashafer) by smtp.freebsd.org (Postfix) with ESMTPSA id 4dQjQh0DbfzQnX; Tue, 09 Dec 2025 15:27:39 +0000 (UTC) (envelope-from ashafer@FreeBSD.org) Message-ID: <629adec7-02e8-47d2-9ceb-65d0b11589b2@FreeBSD.org> Date: Tue, 9 Dec 2025 10:27:14 -0500 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 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: 5287dd47b5b6 - stable/14 - linuxkpi: add stub implementation of pm_vt_switch_(un)register To: Adrian Chadd Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-branches@freebsd.org References: <693750e9.387bb.3a5268c@gitrepo.freebsd.org> Content-Language: en-US From: Austin Shafer In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit In the default behavior I believe it does. The reason for it is that the VT switch path triggers the driver to save app contexts and video memory and the like, so historically (on Linux too) having the VT switch triggered that shared path to get things ready before doing the suspend. I don't think I've tested with turning that off, I'm not sure exactly why you'd want to. I haven't heard of that sysctl actually. Thanks, Austin On 12/8/25 5:58 PM, Adrian Chadd wrote: > .. does it? There's a sysctl to turn on vt switching on/off for > suspend/resume, no? > > > > -a > > On Mon, 8 Dec 2025 at 14:27, Austin Shafer wrote: >> >> The branch stable/14 has been updated by ashafer: >> >> URL: https://cgit.FreeBSD.org/src/commit/?id=5287dd47b5b643baba645cde51bf39f787c738d6 >> >> commit 5287dd47b5b643baba645cde51bf39f787c738d6 >> Author: Austin Shafer >> AuthorDate: 2025-10-28 17:03:18 +0000 >> Commit: Austin Shafer >> CommitDate: 2025-12-08 20:46:48 +0000 >> >> linuxkpi: add stub implementation of pm_vt_switch_(un)register >> >> This adds empty implementations of pm_vt_switch_(un)register which >> are used by nvidia-drm. We do not need to specify anything here as >> a VT switch always happens on suspend/resume. >> >> Sponsored by: NVIDIA >> Reviewed by: kbowling (mentor), emaste >> Differential Revision: https://reviews.freebsd.org/D53400 >> >> (cherry picked from commit 75aa13c64aba71f6f26d05e8fcf96e3862d44cde) >> --- >> sys/compat/linuxkpi/common/include/linux/pm.h | 14 ++++++++++++++ >> 1 file changed, 14 insertions(+) >> >> diff --git a/sys/compat/linuxkpi/common/include/linux/pm.h b/sys/compat/linuxkpi/common/include/linux/pm.h >> index c8d943027909..932697e0eda8 100644 >> --- a/sys/compat/linuxkpi/common/include/linux/pm.h >> +++ b/sys/compat/linuxkpi/common/include/linux/pm.h >> @@ -97,4 +97,18 @@ pm_wakeup_event(struct device *dev __unused, unsigned int x __unused) >> pr_debug("%s: TODO\n", __func__); >> } >> >> +/* >> + * We do not need to specify anything here as a VT switch always happens on >> + * suspend/resume. >> + */ >> +static inline void >> +pm_vt_switch_required(struct device *dev __unused, bool required __unused) >> +{ >> +} >> + >> +static inline void >> +pm_vt_switch_unregister(struct device *dev __unused) >> +{ >> +} >> + >> #endif /* _LINUXKPI_LINUX_PM_H */ >> From nobody Tue Dec 9 15:49:32 2025 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 4dQjvw4vq1z6KpM1 for ; Tue, 09 Dec 2025 15:49:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQjvw3TxTz42x4 for ; Tue, 09 Dec 2025 15:49:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765295372; 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=QZdK/VB+fOmt8Q7B13+EdAZWWxIAUh9tWX7EmaLh5nE=; b=PT8o8eakbdIeN515ysmRxbLDeykoHoQu/lQHqXN52tPiUpNFdZF1bL1YkfGB1tDcEV3y8S aWRvIVcQroMPcOOJ3voPUCI9rYDcMopLsZ6EBMsOt6k0/RzfDvVHP/v9AS/SNHezegyLvp PfRVVOPIBfqrYc3XH+7wbnMF4tQHxSoYheLZ34VHNjcSa4R42g2cTO09NgHYmh1365oUMJ Gxa0ldyGzaGYdHp7+AbzG7BrnVbFIa+ok6dKmpW5JNvxIX4VHh9iRMZW8HETnG9bz7M/tc aDZFqSYiGPTZAw9ysvT7kxD6JHO6hX+18525F3W8sJmYGbZRN8U/VP5RnRDM8A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765295372; 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=QZdK/VB+fOmt8Q7B13+EdAZWWxIAUh9tWX7EmaLh5nE=; b=EcaHIAYgVsoJRqlxwDmfW0BFzqsg6m4SWCewW9dPgRMuJKXz9ztZmCGrnUXZFyAMWKPYFg NAqsp+IMrH71PuwNHmqv91Qhng7advVmdhzqYK1uJFRFB1UjxoitvERjt5UnPXbFOjcI9a cPbnjw90CJnp9+FQrs37jjDQ0dlXDRSqPmaaqPYtljxjEgJ2olWv2XLWWt89V2F7AIpRi3 bNUMPv8XZvHA4GzvZUJdFN/dfF0eQYO8X5w8FxphtUun8kAzUVN8pJVqHoxFv3gfkEvoEz 7LLhr3M4FCv63WNpGvfcO29NztFf20X2QIhkhzOrUYedlhOwvp8Qa3pv2Do/Cw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765295372; a=rsa-sha256; cv=none; b=D0yxpShimWTPYpKOOH87lMHugGJ6WGNW00tZttF8WSZYO/RW+VOgnlIPax+kibmxDegDux JmxUkWeuPT2oBYhswwp37WthhWF6gjtcc7l+9jSILZUz0qm3FpDoH/yWw9oNIgUeICcFfe +DCbmSuNc7X6SUPVDqXq4H25yuz+M3WUkdrwQb04JEQ2PsNqr0AEk95xYQ2MKIFH9rnegc K/3hIS+9YNNWhEbkCvm6niXqoqOv79gM/VuoJZrBYFzQdSN/YzDT0aGxM1h6GX/ixVHbPC Ei8dCYuR3QXkMpUYl+paa2759qGww17sMlyLfyglmNBe+re7n5mFXtmdV3nYAQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQjvw2qdzz14WL for ; Tue, 09 Dec 2025 15:49:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 333cd by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 15:49:32 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: ShengYi Hung From: Ed Maste Subject: git: 87fdc35e5869 - stable/15 - lldb: Fix Architecture parsing by reading the ELF header. (#162811) 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 87fdc35e586930d9782efee4c0217d5e19b9274a Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 15:49:32 +0000 Message-Id: <6938450c.333cd.691606d4@gitrepo.freebsd.org> The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=87fdc35e586930d9782efee4c0217d5e19b9274a commit 87fdc35e586930d9782efee4c0217d5e19b9274a Author: ShengYi Hung AuthorDate: 2025-11-21 18:28:25 +0000 Commit: Ed Maste CommitDate: 2025-12-09 15:49:10 +0000 lldb: Fix Architecture parsing by reading the ELF header. (#162811) Currently, LLDB in FreeBSD host sets the Process Architecture used by lldbserver as Default one. Which cause problem when trying to debug a 32bit binary on amd64 platform since the lldb itself will found mismatch architecture with lldbserver's return. Notice that this patch is only a partial fix for the debugging problem. We are still unable to debug x86 on x86_64 so that we don't provide testcase in this patch. PR: 289945 Obtained from: llvm-project 394e7ded8b6bcff1382468b407ca620a2837f41b (cherry picked from commit fa1c56b3affaab7be6ece43070b36da2e75787cb) --- .../llvm-project/lldb/source/Host/freebsd/Host.cpp | 41 +++++++++++++++------- 1 file changed, 28 insertions(+), 13 deletions(-) diff --git a/contrib/llvm-project/lldb/source/Host/freebsd/Host.cpp b/contrib/llvm-project/lldb/source/Host/freebsd/Host.cpp index 110e803b3354..0778eb320dcf 100644 --- a/contrib/llvm-project/lldb/source/Host/freebsd/Host.cpp +++ b/contrib/llvm-project/lldb/source/Host/freebsd/Host.cpp @@ -14,12 +14,13 @@ #include #include -#include - #include #include #include +#include "llvm/Object/ELF.h" + +#include "lldb/Host/FileSystem.h" #include "lldb/Host/Host.h" #include "lldb/Host/HostInfo.h" #include "lldb/Utility/DataBufferHeap.h" @@ -101,17 +102,33 @@ GetFreeBSDProcessArgs(const ProcessInstanceInfoMatch *match_info_ptr, proc_args.AppendArgument(llvm::StringRef(cstr)); } - return true; -} - -static bool GetFreeBSDProcessCPUType(ProcessInstanceInfo &process_info) { - if (process_info.ProcessIDIsValid()) { - process_info.GetArchitecture() = - HostInfo::GetArchitecture(HostInfo::eArchKindDefault); + auto buffer_sp = FileSystem::Instance().CreateDataBuffer(pathname, 0x20, 0); + if (!buffer_sp) { + process_info.Clear(); return true; } - process_info.GetArchitecture().Clear(); - return false; + uint8_t exe_class = + llvm::object::getElfArchType( + {reinterpret_cast(buffer_sp->GetBytes()), + size_t(buffer_sp->GetByteSize())}) + .first; + + switch (exe_class) { + case llvm::ELF::ELFCLASS32: + process_info.SetArchitecture( + HostInfo::GetArchitecture(HostInfo::eArchKind32)); + break; + case llvm::ELF::ELFCLASS64: + process_info.SetArchitecture( + HostInfo::GetArchitecture(HostInfo::eArchKind64)); + break; + case llvm::ELF::ELFCLASSNONE: + process_info.SetArchitecture( + HostInfo::GetArchitecture(HostInfo::eArchKindDefault)); + break; + } + + return true; } static bool GetFreeBSDProcessUserAndGroup(ProcessInstanceInfo &process_info) { @@ -218,7 +235,6 @@ uint32_t Host::FindProcessesImpl(const ProcessInstanceInfoMatch &match_info, // Make sure our info matches before we go fetch the name and cpu type if (match_info_noname.Matches(process_info) && GetFreeBSDProcessArgs(&match_info, process_info)) { - GetFreeBSDProcessCPUType(process_info); if (match_info.Matches(process_info)) process_infos.push_back(process_info); } @@ -232,7 +248,6 @@ bool Host::GetProcessInfo(lldb::pid_t pid, ProcessInstanceInfo &process_info) { if (GetFreeBSDProcessArgs(NULL, process_info)) { // should use libprocstat instead of going right into sysctl? - GetFreeBSDProcessCPUType(process_info); GetFreeBSDProcessUserAndGroup(process_info); return true; } From nobody Tue Dec 9 15:49:33 2025 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 4dQjvx72Mdz6KpS7 for ; Tue, 09 Dec 2025 15:49:33 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQjvx5cmmz439J for ; Tue, 09 Dec 2025 15:49:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765295373; 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=WRo0JUib3sMp8XrrPRbR5iIB38nWBCkPemY7WwLRGvU=; b=T/oAi4NMe2BPnxZCUoZPBCJXWr7/+pKke3vUMOuS2Q+bSND5MSDcwbRukjcWaQ5Y2qtDlA J8DqM5S8YRkmXQWOeYWpW6kPFokd83RlenJ89uWYpbt3UcqMeWXOcjBj6ZDPGny9OvLRkr ktFCWoEH5fGnUMw/it4oQ85AuThn8wxKhg0v/cfYqU9hkg6Wuv2cgn53J3jJ89dZJNKFU9 HoDsx6YYjPHvO3H1vgoQrCQ3i5aOyXEtOR9duFS+1QX9eTpNSFVM7RU8FtSAx3Dpp2hBDj pzSGv/bT8BcNHjkbaeCx0CAOdZpsFPLikV6wLfROKonzs4DoB4CqkH+g5VDinQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765295373; 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=WRo0JUib3sMp8XrrPRbR5iIB38nWBCkPemY7WwLRGvU=; b=FFMvN6ymGfT8d9fr9O5hi3QzdO6hR3PgWwCaaRw5pVfzmHbN+zyvU4idOKVflu0IWIbhwD cFuptznOIP/f/nJ/v5QMYSv3/rrLppffHdCNIAJ2ZIvjwALL7BhDRHjAU9A0yioW51jXTE ji9PNuBw3t9Af0fdiTj7xZgw+xDMjPQfymaG5HLLtf+QvDkrAsWThudVcxRBqDlAbqKPM2 IlsNZ/P2PRfWHcrTNz/7vXRsgEfP2l8zHpDRKMUJhsgVaQDhnzz4Jb3MFh3ExxYsAYSp2T P2wQejPuS+rTpv8Kb0eqlPLBGtlcO/HskgP6wROKosIzRUTBy2TTiBuk66qZZQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765295373; a=rsa-sha256; cv=none; b=eLJwJEqgofMCgLyReiyH6dXApJzu4PeCyAWXE/nH77fgSeUYOJOI2v8jrfB72ZNZLF+3ts fENYx1dyvs4CT8yBjTnusWo+uH2kLdoqwNIVRfMk03o/7hB2z93MlW76O9Z0YXrPVj/aks Ma6M6tiovEThUOU9sRR3glCK0HKaB7X0TLM/I9YuhAG++eydn5+96cFyAefojM0JmE93tO V+kOkVY66i7xuKnkPjAxJXzkFD7jGDvr74qqrt2eaD0Pr141vDr8d4dLHfVyA8vPKRt8Wt fVn2M21rjqPoo/HZgzaxHaYP7hqhb+HULaY/W3Q5xBz2t+1nB2z3zn1lwkVF4w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQjvx50fSz14l3 for ; Tue, 09 Dec 2025 15:49:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 324f0 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 15:49:33 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: ShengYi Hung From: Ed Maste Subject: git: ee286907ad45 - stable/15 - lldb: Fix empty register set when trying to get size of register 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: ee286907ad455f967233f715bd468f1d0ff01f6c Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 15:49:33 +0000 Message-Id: <6938450d.324f0.53896171@gitrepo.freebsd.org> The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=ee286907ad455f967233f715bd468f1d0ff01f6c commit ee286907ad455f967233f715bd468f1d0ff01f6c Author: ShengYi Hung AuthorDate: 2025-11-21 18:30:25 +0000 Commit: Ed Maste CommitDate: 2025-12-09 15:49:11 +0000 lldb: Fix empty register set when trying to get size of register The register set information is stored as a singleton in GetRegisterInfo_i386. However, other functions later access this information assuming it is stored in GetSharedRegisterInfoVector. To resolve this inconsistency, we remove the original construction logic and instead initialize the singleton using llvm::call_once within the appropriate function (GetSharedRegisterInfoVector_i386). PR: 289945 Obtained from: llvm-project 41859c27842eeda1ef6ff18f3b2fb269388c0857 (cherry picked from commit 1d1a2e6932d682c40ab878bf83cbbde02d8d0af1) --- .../Utility/RegisterContextFreeBSD_x86_64.cpp | 44 ++++++++++------------ 1 file changed, 20 insertions(+), 24 deletions(-) diff --git a/contrib/llvm-project/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp b/contrib/llvm-project/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp index e0f3971c6e27..c361b2abb726 100644 --- a/contrib/llvm-project/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp +++ b/contrib/llvm-project/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp @@ -9,6 +9,7 @@ #include "RegisterContextFreeBSD_x86_64.h" #include "RegisterContextFreeBSD_i386.h" #include "RegisterContextPOSIX_x86.h" +#include "llvm/Support/Threading.h" #include using namespace lldb_private; @@ -69,40 +70,34 @@ struct UserArea { #include "RegisterInfos_x86_64.h" #undef DECLARE_REGISTER_INFOS_X86_64_STRUCT -static std::vector &GetSharedRegisterInfoVector() { - static std::vector register_infos; - return register_infos; -} - -static const RegisterInfo * -GetRegisterInfo_i386(const lldb_private::ArchSpec &arch) { - static std::vector g_register_infos( - GetSharedRegisterInfoVector()); - - // Allocate RegisterInfo only once - if (g_register_infos.empty()) { - // Copy the register information from base class - std::unique_ptr reg_interface( - new RegisterContextFreeBSD_i386(arch)); - const RegisterInfo *base_info = reg_interface->GetRegisterInfo(); - g_register_infos.insert(g_register_infos.end(), &base_info[0], - &base_info[k_num_registers_i386]); +static std::vector & +GetSharedRegisterInfoVector_i386(const lldb_private::ArchSpec &arch) { + static std::vector g_register_infos; + static llvm::once_flag g_initialized; + llvm::call_once(g_initialized, [&]() { + if (g_register_infos.empty()) { + // Copy the register information from base class + std::unique_ptr reg_interface( + new RegisterContextFreeBSD_i386(arch)); + const RegisterInfo *base_info = reg_interface->GetRegisterInfo(); + g_register_infos.insert(g_register_infos.end(), &base_info[0], + &base_info[k_num_registers_i386]); // Include RegisterInfos_x86_64 to update the g_register_infos structure // with x86_64 offsets. #define UPDATE_REGISTER_INFOS_I386_STRUCT_WITH_X86_64_OFFSETS #include "RegisterInfos_x86_64.h" #undef UPDATE_REGISTER_INFOS_I386_STRUCT_WITH_X86_64_OFFSETS - } - - return &g_register_infos[0]; + } + }); + return g_register_infos; } static const RegisterInfo * PrivateGetRegisterInfoPtr(const lldb_private::ArchSpec &target_arch) { switch (target_arch.GetMachine()) { case llvm::Triple::x86: - return GetRegisterInfo_i386(target_arch); + return &GetSharedRegisterInfoVector_i386(target_arch)[0]; case llvm::Triple::x86_64: return g_register_infos_x86_64; default: @@ -116,9 +111,10 @@ PrivateGetRegisterCount(const lldb_private::ArchSpec &target_arch) { switch (target_arch.GetMachine()) { case llvm::Triple::x86: // This vector should have already been filled. - assert(!GetSharedRegisterInfoVector().empty() && + assert(!GetSharedRegisterInfoVector_i386(target_arch).empty() && "i386 register info vector not filled."); - return static_cast(GetSharedRegisterInfoVector().size()); + return static_cast( + GetSharedRegisterInfoVector_i386(target_arch).size()); case llvm::Triple::x86_64: return static_cast(sizeof(g_register_infos_x86_64) / sizeof(g_register_infos_x86_64[0])); From nobody Tue Dec 9 15:52:54 2025 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 4dQjzq12Mdz6Kpmj for ; Tue, 09 Dec 2025 15:52: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQjzq0GTMz443S for ; Tue, 09 Dec 2025 15:52:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765295575; 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=m0bmDatfToix1HSDtcB4eZCwOQnub6xaL+SeY6ie8Yk=; b=v0JvEBOR8bT4kdYlGMvx60goxfHqmTnwKY1L9uQAbB7asP8o1tqH+lGuA7RvDKDoWWVtV9 dIAMKgyJYS+b56WsQW4TfUSURCsmgZ9LO2RBeSQZdTHGgkFkWb5MKIRCSGWAa8pZCWt2Xg K+VC4hEAXBacTcsAsQ0KqJc3uJCPNdGdEIPsNVHtXehp200vFMqhApKgbP0TYwOCL3Bnr4 3rF4LcjI9aEjs37erzkOcQt31rT2tHOY12hQj6CrwxMGcDuhAq7dX6uyNjB7ECR+DAt8pM MWMt1p8c93L7/iutL2cxq9e83mYtdAjnyXdlYP3NrqOediGsUlSZcBv28i2WsA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765295575; 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=m0bmDatfToix1HSDtcB4eZCwOQnub6xaL+SeY6ie8Yk=; b=ec0c8a6y7Rj8VEpAB3r+WXhaloZhLw0EGRo/1xYIOr3xT3y9bNovkGnzQ2B+hCPLcUMvey NwDor8SQFwRqGiQ9GcI5C9m+XpE02zEs2qIHrZt6n+olZolZufkgBg+37aFPYALM6ttbYG vn6aX6ba99b5+Mal3ufj0cdCEdtYZGqSaK11OfAsFRs5lfcWDYHoXA1dNA+Qrz6rvGUSNV gnnhCaVs69NAA6QMf98yNPmvA2CQrEsm4JdwttfPbtlnXlxGI/kz/3zuiRMSoIpBvH/54f BNIvPd8ZAO+XOj1NuQdv1E54bZgu8y2SPZf05o8ygWpsu3zVon4AsAPQjxnKUw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765295575; a=rsa-sha256; cv=none; b=TA0tmp5U7YQV1iu61KtB+Jo9IRCumafGfPoclPl9qsiJPD5I3ksiDAebNAiZMO6YTVkLXp omILuUXTngwK8EvfNVQyWUnEbvm5AsBIm3ZK4lWO9GDJLmjYatb4uf/EEhMGQqjwc42B3A aiMPJsgAX4p0pOrPJLVUqof3T0me2E5y8w5NQVLKjDphxvZrMHPKz4kgw11zCitMP7jjYQ jLKp/szE+PeVso+MRUIqs6b8HmXTibv6TKI2k/Qm4XvpFBzhru0f0abTa1jF0CYXHRz6b1 SvST6dyiGPGUZs6Kga9U51FZp6OzEb06KcSPU981EJUwJBgjcuwt+QBBfbS4DQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQjzp6xkdz15B5 for ; Tue, 09 Dec 2025 15:52:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 350a9 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 15:52:54 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: ShengYi Hung From: Ed Maste Subject: git: 58be4610c91f - stable/14 - lldb: Fix Architecture parsing by reading the ELF header. (#162811) 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 58be4610c91f4ed1a6c29482ca555b2798f70b05 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 15:52:54 +0000 Message-Id: <693845d6.350a9.68fe41f2@gitrepo.freebsd.org> The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=58be4610c91f4ed1a6c29482ca555b2798f70b05 commit 58be4610c91f4ed1a6c29482ca555b2798f70b05 Author: ShengYi Hung AuthorDate: 2025-11-21 18:28:25 +0000 Commit: Ed Maste CommitDate: 2025-12-09 15:52:31 +0000 lldb: Fix Architecture parsing by reading the ELF header. (#162811) Currently, LLDB in FreeBSD host sets the Process Architecture used by lldbserver as Default one. Which cause problem when trying to debug a 32bit binary on amd64 platform since the lldb itself will found mismatch architecture with lldbserver's return. Notice that this patch is only a partial fix for the debugging problem. We are still unable to debug x86 on x86_64 so that we don't provide testcase in this patch. PR: 289945 Obtained from: llvm-project 394e7ded8b6bcff1382468b407ca620a2837f41b (cherry picked from commit fa1c56b3affaab7be6ece43070b36da2e75787cb) (cherry picked from commit 87fdc35e586930d9782efee4c0217d5e19b9274a) --- .../llvm-project/lldb/source/Host/freebsd/Host.cpp | 41 +++++++++++++++------- 1 file changed, 28 insertions(+), 13 deletions(-) diff --git a/contrib/llvm-project/lldb/source/Host/freebsd/Host.cpp b/contrib/llvm-project/lldb/source/Host/freebsd/Host.cpp index 110e803b3354..0778eb320dcf 100644 --- a/contrib/llvm-project/lldb/source/Host/freebsd/Host.cpp +++ b/contrib/llvm-project/lldb/source/Host/freebsd/Host.cpp @@ -14,12 +14,13 @@ #include #include -#include - #include #include #include +#include "llvm/Object/ELF.h" + +#include "lldb/Host/FileSystem.h" #include "lldb/Host/Host.h" #include "lldb/Host/HostInfo.h" #include "lldb/Utility/DataBufferHeap.h" @@ -101,17 +102,33 @@ GetFreeBSDProcessArgs(const ProcessInstanceInfoMatch *match_info_ptr, proc_args.AppendArgument(llvm::StringRef(cstr)); } - return true; -} - -static bool GetFreeBSDProcessCPUType(ProcessInstanceInfo &process_info) { - if (process_info.ProcessIDIsValid()) { - process_info.GetArchitecture() = - HostInfo::GetArchitecture(HostInfo::eArchKindDefault); + auto buffer_sp = FileSystem::Instance().CreateDataBuffer(pathname, 0x20, 0); + if (!buffer_sp) { + process_info.Clear(); return true; } - process_info.GetArchitecture().Clear(); - return false; + uint8_t exe_class = + llvm::object::getElfArchType( + {reinterpret_cast(buffer_sp->GetBytes()), + size_t(buffer_sp->GetByteSize())}) + .first; + + switch (exe_class) { + case llvm::ELF::ELFCLASS32: + process_info.SetArchitecture( + HostInfo::GetArchitecture(HostInfo::eArchKind32)); + break; + case llvm::ELF::ELFCLASS64: + process_info.SetArchitecture( + HostInfo::GetArchitecture(HostInfo::eArchKind64)); + break; + case llvm::ELF::ELFCLASSNONE: + process_info.SetArchitecture( + HostInfo::GetArchitecture(HostInfo::eArchKindDefault)); + break; + } + + return true; } static bool GetFreeBSDProcessUserAndGroup(ProcessInstanceInfo &process_info) { @@ -218,7 +235,6 @@ uint32_t Host::FindProcessesImpl(const ProcessInstanceInfoMatch &match_info, // Make sure our info matches before we go fetch the name and cpu type if (match_info_noname.Matches(process_info) && GetFreeBSDProcessArgs(&match_info, process_info)) { - GetFreeBSDProcessCPUType(process_info); if (match_info.Matches(process_info)) process_infos.push_back(process_info); } @@ -232,7 +248,6 @@ bool Host::GetProcessInfo(lldb::pid_t pid, ProcessInstanceInfo &process_info) { if (GetFreeBSDProcessArgs(NULL, process_info)) { // should use libprocstat instead of going right into sysctl? - GetFreeBSDProcessCPUType(process_info); GetFreeBSDProcessUserAndGroup(process_info); return true; } From nobody Tue Dec 9 15:52:56 2025 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 4dQjzr1ywbz6Kpmk for ; Tue, 09 Dec 2025 15:52:56 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQjzr0wQXz43Vh for ; Tue, 09 Dec 2025 15:52:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765295576; 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=uCXtxJHrvd+udxuFn6UCpVivbSnQQGvM8306+O04tcE=; b=Y6enN/0TMgZaC2g9/ue91+AozzkDrZK7s6M8mzE8LwLwKtEGofcT1IyKDrniQMisM1CEEm bMwhTvqdwl7naNBs2v1VmMUDDwmNLyNN/9NWAidBPdrAUw5DZmFT2SWy7yeT4+8mlu5zJP YTXHYO3/QyUINyTR1hhmap8iqfJfdbHB42wt2zGwLCqSsGX7XDNcDTUclyLEar6jfcG2cb mhgQYaiwMLiH0PpGLirgb4qiQtZFJTdmifkO/pU4w6+YpT8OtjIUN0GORq/x4/4WyEa/Fw O1GxTdYbM8y8Mf++AU+DTbRwGOP/GEix2WIvuSYha+i/5WQkmRX9hsFQCp1Pgw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765295576; 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=uCXtxJHrvd+udxuFn6UCpVivbSnQQGvM8306+O04tcE=; b=EKQg3ZUXMDS/01kOqyirIiHDVn2I7i1WScUc/8t7hbXd+U4t6sk5SG6pXOSlHM35l7onKx SXVhM6Y7Bc0a7bqt/rJaMQ/6fdwBsy8Q5YlgDWBxWTEJ2YcC4HqKVjjpQxcZBcRmsURUjl Ems7DCcGVzURNeiNJbkkFKTdOqF5MvjM04FBHZlomNg66dv9vaA6TZhXZfEG44DekS0OhF qtIKdviC4hka1Wv+Na4Cv8PXxCkleLYI0vad+Y2Z7uhZdNYQRP0ZHE/rejkWRHcHZMXByZ wvo9tc+LeWNuR/Wa0G/3m+yrp3bjQXk5cgc+CpQfqOfM37dt+vdcdwdehdXgJQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765295576; a=rsa-sha256; cv=none; b=hyM/ISsMb73MmOodGuePrcuBavuBjBS7vkiLBvrIfsDAoJHzXQxMVniwJirX2z/vcl23+4 ri2XcDkU8uFMySGh/ceB4s7dB1CBYM5Osj4eku5oPxo0RZscrCmWkxafQlNMSSInwTcmvr ZNo5z9Tb1hAedm+6zHDw1aBF9MoWSPkBkwDo4IOAX7au7VG1XUMmkpCEypM6/CLG2Ga23P JMwKcjnIwZIzrBXeeQJp6YUbMOp0zSz+s/sslH0MPjPswiCqrO1yeFnaUm/TjxtXOZMG/i WIXPFy3BBxmSi3S617Xiu7QDLq3kAYKkzVBwocC1/DH8F0Ys56uH9P/vL9Q5Ew== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQjzr0Csqz14Wr for ; Tue, 09 Dec 2025 15:52:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3364f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 15:52:56 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: ShengYi Hung From: Ed Maste Subject: git: 20133eccbdd8 - stable/14 - lldb: Fix empty register set when trying to get size of register 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 20133eccbdd854915e88c6f720212814f2f5313b Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 15:52:56 +0000 Message-Id: <693845d8.3364f.3d426240@gitrepo.freebsd.org> The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=20133eccbdd854915e88c6f720212814f2f5313b commit 20133eccbdd854915e88c6f720212814f2f5313b Author: ShengYi Hung AuthorDate: 2025-11-21 18:30:25 +0000 Commit: Ed Maste CommitDate: 2025-12-09 15:52:31 +0000 lldb: Fix empty register set when trying to get size of register The register set information is stored as a singleton in GetRegisterInfo_i386. However, other functions later access this information assuming it is stored in GetSharedRegisterInfoVector. To resolve this inconsistency, we remove the original construction logic and instead initialize the singleton using llvm::call_once within the appropriate function (GetSharedRegisterInfoVector_i386). PR: 289945 Obtained from: llvm-project 41859c27842eeda1ef6ff18f3b2fb269388c0857 (cherry picked from commit 1d1a2e6932d682c40ab878bf83cbbde02d8d0af1) (cherry picked from commit ee286907ad455f967233f715bd468f1d0ff01f6c) --- .../Utility/RegisterContextFreeBSD_x86_64.cpp | 44 ++++++++++------------ 1 file changed, 20 insertions(+), 24 deletions(-) diff --git a/contrib/llvm-project/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp b/contrib/llvm-project/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp index e0f3971c6e27..c361b2abb726 100644 --- a/contrib/llvm-project/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp +++ b/contrib/llvm-project/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp @@ -9,6 +9,7 @@ #include "RegisterContextFreeBSD_x86_64.h" #include "RegisterContextFreeBSD_i386.h" #include "RegisterContextPOSIX_x86.h" +#include "llvm/Support/Threading.h" #include using namespace lldb_private; @@ -69,40 +70,34 @@ struct UserArea { #include "RegisterInfos_x86_64.h" #undef DECLARE_REGISTER_INFOS_X86_64_STRUCT -static std::vector &GetSharedRegisterInfoVector() { - static std::vector register_infos; - return register_infos; -} - -static const RegisterInfo * -GetRegisterInfo_i386(const lldb_private::ArchSpec &arch) { - static std::vector g_register_infos( - GetSharedRegisterInfoVector()); - - // Allocate RegisterInfo only once - if (g_register_infos.empty()) { - // Copy the register information from base class - std::unique_ptr reg_interface( - new RegisterContextFreeBSD_i386(arch)); - const RegisterInfo *base_info = reg_interface->GetRegisterInfo(); - g_register_infos.insert(g_register_infos.end(), &base_info[0], - &base_info[k_num_registers_i386]); +static std::vector & +GetSharedRegisterInfoVector_i386(const lldb_private::ArchSpec &arch) { + static std::vector g_register_infos; + static llvm::once_flag g_initialized; + llvm::call_once(g_initialized, [&]() { + if (g_register_infos.empty()) { + // Copy the register information from base class + std::unique_ptr reg_interface( + new RegisterContextFreeBSD_i386(arch)); + const RegisterInfo *base_info = reg_interface->GetRegisterInfo(); + g_register_infos.insert(g_register_infos.end(), &base_info[0], + &base_info[k_num_registers_i386]); // Include RegisterInfos_x86_64 to update the g_register_infos structure // with x86_64 offsets. #define UPDATE_REGISTER_INFOS_I386_STRUCT_WITH_X86_64_OFFSETS #include "RegisterInfos_x86_64.h" #undef UPDATE_REGISTER_INFOS_I386_STRUCT_WITH_X86_64_OFFSETS - } - - return &g_register_infos[0]; + } + }); + return g_register_infos; } static const RegisterInfo * PrivateGetRegisterInfoPtr(const lldb_private::ArchSpec &target_arch) { switch (target_arch.GetMachine()) { case llvm::Triple::x86: - return GetRegisterInfo_i386(target_arch); + return &GetSharedRegisterInfoVector_i386(target_arch)[0]; case llvm::Triple::x86_64: return g_register_infos_x86_64; default: @@ -116,9 +111,10 @@ PrivateGetRegisterCount(const lldb_private::ArchSpec &target_arch) { switch (target_arch.GetMachine()) { case llvm::Triple::x86: // This vector should have already been filled. - assert(!GetSharedRegisterInfoVector().empty() && + assert(!GetSharedRegisterInfoVector_i386(target_arch).empty() && "i386 register info vector not filled."); - return static_cast(GetSharedRegisterInfoVector().size()); + return static_cast( + GetSharedRegisterInfoVector_i386(target_arch).size()); case llvm::Triple::x86_64: return static_cast(sizeof(g_register_infos_x86_64) / sizeof(g_register_infos_x86_64[0])); From nobody Tue Dec 9 16:32:59 2025 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 4dQkt36LSyz6J9GM for ; Tue, 09 Dec 2025 16:32:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQkt35Hy9z3GPK for ; Tue, 09 Dec 2025 16:32:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297979; 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=j9jdbI2fkaeWVRIKn2o59YNvjIjxdspUWxaz6jVnfSA=; b=qH01Pe35YBwWMbJTrU39Hfw7KHVvmuPoEtlliCkfWwAiaxgAjXhR+CZcNLMfTghSPJufxM B79jqSRhh3yt0HdRpYGiGS+5hThAY8bQgGRX2YhHqdz6VuATYAhnfbMHcyaktaT/OroBqe 4yCS+dxNGcwSDlAbYDKCm6b6pUjbIfI2G8ICT2RgfPhzlPmG7SgrZT4/dCGg3EvFZu8vlP mv/efgrmSH0lG8oo4f2p63zQhYnPhddFigA2HOiIbBKBcmLPXwBIDv97V48QmtECpKjFRK yt6fQngZRuuHHfzRT5B6lqJ2mYPhV+yP2+l7CopdGzQuB7WhMWNjsmKqMoMnbg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297979; 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=j9jdbI2fkaeWVRIKn2o59YNvjIjxdspUWxaz6jVnfSA=; b=rDHwqBK9tMZeSdaHb0I2lEXubGjLnO+2ipbAV1yD9ce/RoGvUdG4imVIRxPp0Kt7T4iZrm fYqBxBYGmBzyq+BAU1+Rr69wvq1PCLQh9K5lm/zNuwP1iOZZU/M4irqsWYSVeViB0LouM4 1zA6HEWoxTVbkj9qnKDG4rOgSz+dXTcJqdOeDWxD9n3i5laHTvd9TaoN96UnBWcxewbBEh e9hQLMiBvr9UfRvteiPfvr//mS4FpSyiK33nUbzV2FqZlmGHvfn6C8UcDgvfsNqNA8XqFa F25XwG3ai5OwOoM7/BunTHpXixJdy10F41IxWmLiuAmuzsc6X3/g5GAL2Czo+Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765297979; a=rsa-sha256; cv=none; b=OZDWfF9GIgTw7cHEEgzNFH7YqiqaVNdijb9vE8j+xvAU94gmKwT79KzqY6cfyby0v/n6GL BsVje0QkBJ12Bh95TVFE3TxDhmlq4ezofrIB7rBaeiI3vmaC5cIzwuKj7PUJYlpvO0dNgG DhPqkELQVSrFka7fYdkvtJNCSdyrMFvUTUX1Zzt3uzCSIgPu9O+DRCH8R+OaaO6/ZGA7jv yh9zFmnrofRXfHzN92nImXST75BERIELV+YhVc8qfst4Qp/XAyMPPphiaW9+fihkAL5WJX W/gZJUX4utVacVvsHBLurOkTHey59xmLz+92+bQpQFqlX6cwbKysuXsRGRp3pw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQkt34rzpz15rN for ; Tue, 09 Dec 2025 16:32:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 9407 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 16:32:59 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 8befd2d2b6a0 - stable/15 - agp: Export intel_gtt_read_pte, required by i915kms 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 8befd2d2b6a0c5d54fa53246a89ae09009007799 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 16:32:59 +0000 Message-Id: <69384f3b.9407.55b3b777@gitrepo.freebsd.org> The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=8befd2d2b6a0c5d54fa53246a89ae09009007799 commit 8befd2d2b6a0c5d54fa53246a89ae09009007799 Author: Ed Maste AuthorDate: 2025-11-25 18:40:35 +0000 Commit: Ed Maste CommitDate: 2025-12-09 16:32:08 +0000 agp: Export intel_gtt_read_pte, required by i915kms This isn't used by modern cards, but is needed for i915kms to load on a system that has agp as a module not compiled into the kernel. PR: 291214 Reviewed by: cy Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D53906 (cherry picked from commit a87c1e2dd8fc997d6ee603c252c543afe8a4d2a4) --- sys/modules/agp/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/modules/agp/Makefile b/sys/modules/agp/Makefile index d27a78b7e437..f24f05f28407 100644 --- a/sys/modules/agp/Makefile +++ b/sys/modules/agp/Makefile @@ -36,6 +36,7 @@ EXPORT_SYMS+= intel_gtt_clear_range \ intel_gtt_install_pte \ intel_gtt_get \ intel_gtt_chipset_flush \ + intel_gtt_read_pte \ intel_gtt_unmap_memory \ intel_gtt_map_memory \ intel_gtt_insert_sg_entries \ From nobody Tue Dec 9 16:33:00 2025 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 4dQkt50Hgfz6J8wr for ; Tue, 09 Dec 2025 16:33: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQkt45xhMz3GqF for ; Tue, 09 Dec 2025 16:33:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297980; 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=PaeuyfHuKL5hKozNT8YfS11rHzH3fJvhmfS2wbGkGcA=; b=sJJny17qWm1HAePRWLEbz3M5UqnwkuaFp9kP6n2CCRIE3UAaSe4pE2UZsd0MebfdpASu1E IslNWOOzKIihvPgCYZTtWOWUpNiNTEMqGqhGHop5AmI5zGa1RR3IWpNLTKzK6PNvokmeHv Hyt0a0ZGFfah69U6TD/Vyey8prcVRhZYn1KfByE6q67t7oYCi7/G/ga9zZn6hkqqAM5jtI l9ksj90w6TKR5a/jZSU2+JtHdZsSM6afxnFH+9oMrgk/kYWHUpfj7yPCekK76MWXLUNuU/ oYFQnzUXO0eWX8MqpRckBGEQtYlzBspayOzvGlI0nINWSamVmpyhN8u0Z+r7Vg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297980; 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=PaeuyfHuKL5hKozNT8YfS11rHzH3fJvhmfS2wbGkGcA=; b=Jc4UZvEBJHwHhZFp7DEnXuf8JeuPuMaEWLVr1KhFi0/a3eKNsMu1bTy8hAIcbhMOBVexNI 9AgI6sf49GOlvEqatqeBE3bVcn9k8iCom0yfTHP4bmQtBq3SMyGEBYk6iuKbGPQ0ZcCbBp p8sJeBc1++000JdhYnUBxVpJMITFkDrFtYYNM/NV3cmXEMrvGlvjh4/61WR9mDBSK8IyUD 0lU7wFLwqMXa5TD2W29xPs7YqMh81iRaEJqcXhblRbg1nQMsLkMi1zI1Qrjo6fQJHvKP1h v34a644OVZR1SB3PZjP05QHCNMl6g/VUeWseOYhQPM9LC8qNJ+/Cfu07nbTkeA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765297980; a=rsa-sha256; cv=none; b=trcun9QS4DcrZx8aHd6yrE8o5z6hWco1sqWMG9gT/lf9dknXjrEFmGs/ej8ZZPJlfpff/A NGUzseo/LNiGUqMaIOWo9CFCKw9K0Q0oxAqH6Qi3K6KUmcTM7dy8UxXIckEAR3kgikQHZ0 +ygMWNbszT2UlM57LlDmttw1iOg4N47VV43dWH0lc+xzOKsxgDrdZvdZ5g1KF7pxQo4U5g M2UxFfzU1A9y71ev95Z4KX/zbpNkKooHLq7fvNPvRO6CXZfXoz96sbhdsVkZ5oWITNj2F2 X4w3nQRZfoTNaWKYv1hPUuqdgxEm+vr/g0JuEDIlkisguep7PrZAzxqbPUZvFg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQkt45J0Jz16Jw for ; Tue, 09 Dec 2025 16:33:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 926e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 16:33:00 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: e96948147eb2 - stable/15 - mqueue: Export kern_kmq_* symbols from kernel module 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: e96948147eb2c22b19817548cbde25ace5e7a9de Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 16:33:00 +0000 Message-Id: <69384f3c.926e.47fcdb0b@gitrepo.freebsd.org> The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=e96948147eb2c22b19817548cbde25ace5e7a9de commit e96948147eb2c22b19817548cbde25ace5e7a9de Author: Ed Maste AuthorDate: 2025-11-25 19:06:25 +0000 Commit: Ed Maste CommitDate: 2025-12-09 16:32:08 +0000 mqueue: Export kern_kmq_* symbols from kernel module linux.ko supports POSIX message queues using these symbols, so they need to be exported rather than relying on the kernel linker's misfeature of linking against debug or local symbols (which will soon be disabled by default). Reported by: mav Reviewed by: zlei Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D53907 (cherry picked from commit e00a781c216cb12603a0a71c9ca293dde3e06250) (cherry picked from commit eb90470f5f2a0e5c820c47be329423f5c60ca247) --- sys/modules/mqueue/Makefile | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sys/modules/mqueue/Makefile b/sys/modules/mqueue/Makefile index dbc804ba30fb..b857ed3a9787 100644 --- a/sys/modules/mqueue/Makefile +++ b/sys/modules/mqueue/Makefile @@ -5,4 +5,12 @@ SRCS= uipc_mqueue.c \ vnode_if.h \ opt_posix.h opt_capsicum.h +EXPORT_SYMS= \ + kern_kmq_notify \ + kern_kmq_open \ + kern_kmq_setattr \ + kern_kmq_timedreceive \ + kern_kmq_timedsend \ + sys_kmq_unlink + .include From nobody Tue Dec 9 16:33:01 2025 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 4dQkt646Hrz6J8wv for ; Tue, 09 Dec 2025 16:33:02 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQkt62CYwz3HBb for ; Tue, 09 Dec 2025 16:33:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297982; 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=YYrPdYm7KyV3eGTXriQwzbjIoApyBeyaSJTiBooMpIY=; b=yN5hu7Cco++vW1svp3ZWRaAmZrUnL12MkQt0i+WgLcb+AwWeBDyqRBNzpdh6erSMIRUwLo ErM3WdAzIWpdC8TmVKhNrK3tTyY+b1Mh9UyvaiM/TIxwQ2d8K+FdkMgQ7RU8nyRm6qr5x3 ikYjEuQv1XPOqDAwdTgaqfG9sEnpsZ7oxu2TjWD7c9j7bnemlBQLnexiuUNQkeHIrIDbEK HD0b0wC/zjVqqRUhRqEwVPHS3qLx+P/5IEgUKXgNxR4ULOl74nfsPOHGoxP3JJ1DsInpPI EpxgpUaTMggZB97moDq65zHXG53VrapE9Cdny7cXJeV52jG7YL7/j3SkGR31Jw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297982; 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=YYrPdYm7KyV3eGTXriQwzbjIoApyBeyaSJTiBooMpIY=; b=EVpAfysUvGWKxNvwvpveVRPMR6qZP16BAdAuSs5+VxzZUxydCySjxD8obREiSU3nVAR4M9 hyM0UXZACUlidMjlFrC42xa+DHrB3imIePpxwY1qbys8VZBGs27XpA05z8rC9AhKWfaU73 xqRmhP57MEQ1eLfnORrOwGcbn/dLOVoFMULkqkrqmG2oyfkx4H9nVQIXOpz05n98BzdHkt pmDD7EKMyCSjKLY9N0hArzj+p9qFTNE4qXaCA48yY4yBp4U72A+AAZ/2wsPe14Hq5jm9fR 9kpeezO590hqzS2fPno/p83WbIMQW8JjH55WOojrWa7uAhCre4t/llfphrujFw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765297982; a=rsa-sha256; cv=none; b=ROKKVa4sgWMcqAXjtCJDSGhq6QIzh4Q2URCif/F51tdwpt7lDy2ifkMh1hiRF1Ez7AJAAp DV8ECuLxc5jBHBhlnNLjqkNCabRUgO7BSQ0Hp4QS49kCjdbkNhVoZW4eFd7MIEQLPt3zjj NBKSyMGIT8Z4XkHHcPgltH86Eb1Wld2yhvKqQ3i2DirFBs+RdpeL2H2HWa9mG75YwTlG5N hMZ/kuEqKfpxpS71ZTzuK+RbAEJTuEwtUPc74YYT2MRTwGFDCnKxO4AJ3CfDTu6Wb/9axP 0kEY0VovXTEffQhMPIsKXsqpWoMGKzYuFSBEUEDpdvKJWi8nHG2OZp/O3zGt9A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQkt561B7z15cN for ; Tue, 09 Dec 2025 16:33:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 9743 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 16:33:01 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: ab4f4f4efaac - stable/15 - kgssapi: Remove broken MOD_UNLOAD code 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: ab4f4f4efaac85bbf235e60f2ced4876a9e916f2 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 16:33:01 +0000 Message-Id: <69384f3d.9743.64e3e17a@gitrepo.freebsd.org> The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=ab4f4f4efaac85bbf235e60f2ced4876a9e916f2 commit ab4f4f4efaac85bbf235e60f2ced4876a9e916f2 Author: Ed Maste AuthorDate: 2025-11-27 16:44:08 +0000 Commit: Ed Maste CommitDate: 2025-12-09 16:32:09 +0000 kgssapi: Remove broken MOD_UNLOAD code The module panicked at unload with "recursing but non-recursive rw". There is a comment that "Unloading of the kgssapi module is not currently supported" and the MOD_UNLOAD case falls through to returning EOPNOTSUPP anyway. Just #if 0 the code in the unload path, leaving it as a hint in case someone implements unload support later on. PR: 291249 Reviewed by: rmacklem Fixes: ad704a34bc2c ("Use syscall_helper_register(9) rather than syscall_register().") Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D53949 (cherry picked from commit 6901376f59b870ddbb0d922e3455a388333cd460) --- sys/kgssapi/gss_impl.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/kgssapi/gss_impl.c b/sys/kgssapi/gss_impl.c index c9cd4d880695..323b379e1619 100644 --- a/sys/kgssapi/gss_impl.c +++ b/sys/kgssapi/gss_impl.c @@ -88,6 +88,7 @@ kgss_load(void) return (0); } +#if 0 static void kgss_unload(void) { @@ -96,6 +97,7 @@ kgss_unload(void) clnt_destroy(KGSS_VNET(kgss_gssd_handle)); KGSS_CURVNET_RESTORE(); } +#endif int kgss_oid_equal(const gss_OID oid1, const gss_OID oid2) @@ -297,8 +299,10 @@ kgssapi_modevent(module_t mod, int type, void *data) error = kgss_load(); break; case MOD_UNLOAD: +#if 0 kgss_unload(); mtx_destroy(&kgss_gssd_lock); +#endif /* * Unloading of the kgssapi module is not currently supported. * If somebody wants this, we would need to keep track of From nobody Tue Dec 9 16:33:02 2025 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 4dQkt72ttFz6J90r for ; Tue, 09 Dec 2025 16:33:03 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQkt70qkYz3HBn for ; Tue, 09 Dec 2025 16:33:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297983; 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=xwSZ7m11mz/pDFx8jVYGSNylwV1Shm1skSdDYJLCL7E=; b=hrp3wnIE2QFbtoEUZK6e5ZU9T+s8GoGq+GMKawTYdsKc1ZDUWWqV8FL11X1tG8RAHipEkM iYfodri1pD5YRafl8HUcSUkIEN0dqeKtZxsip0m9MGqCPRClHSdaD3ACqvnGeDcJ9NkG05 ARMWOpK6i3YM6Jevxekc/HApCAsfpA9nNtESnIz6YiqZTdtirS63ovc3vZiRVw6A5ef2ty HM4blTnXspmtaEjIkHGsJSdRcBcH883cufXm6fiz0O+6ccTQyB87sm5TgIk8Xu+ycyyco+ k7+5c+JEIdE0BhGSOQMZkWbUEXQzlyRpO+7UBjcJ1ZKjpJQZzQR+2dubwT9lQg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297983; 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=xwSZ7m11mz/pDFx8jVYGSNylwV1Shm1skSdDYJLCL7E=; b=FuqyjnAc1u+qFcYW1Uzq2EV+ZcNykiGXL2+yVVl4ttFjwTMAI/5u2KNipCs+CsAxvTmwYe tnBcHIILUNCWDg8ryg0Q5ZpfAeMCV8qqpC/dSEuXFeSeoOrZ07CXqcckxfrdsMEfAavOaN RpXBjwuMsCNwD9vb1CcNJ5+LByfqts9m+0L9WV+CaPLyrZFO5EUS6TgjIQpFYip/KbPpZ1 A7UeH4v6VXLnbAQZVcYVCobRg+lFQY36pgj5xe2BmhQwGqB3jdaYTE7hqGLmM0bpx7usnj bEUveOI4DZawWLCwPGWyOqTeiJ1NaXFV0qANAuvyYRUzL+1xAHDdlu/n9LhfmQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765297983; a=rsa-sha256; cv=none; b=lcFNlpyu4aFNmBWL3KVuruhRkZdwOuC2Zco4KghxljUTfB0Pee+qey+4fWBl6P7byiTbOT De69YiL1GJbcSdF0ADWJfs/Qo1HdinmOWxyPl7dCGLICmHnZOEw3vcOj71ddOWgUj6QD9q zWhQanE6jH5Yo9jzWUZsYIWFpGHoVYPBE5WpaNlYze0x6PpgRpbDzQ1U5bMPC6gokI5uh4 AdV4RJ0sd3Zf3kWfqf3pbiG53MNJccDLWB39LMw0Ro4xBP1x3OpIdWkcDIc7vGLYSzgtDh M43uKTTmxXzYSmj/XKbivoQw7nKsfLBQODsqOzI7iVbWmmN2nS7/HdS0wVivIg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQkt66mGWz165R for ; Tue, 09 Dec 2025 16:33:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 8a60 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 16:33:02 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 437c77476e72 - stable/15 - diff3: Remove bespoke getopt.h 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 437c77476e726e0414e460c973fd88fe812ce2b4 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 16:33:02 +0000 Message-Id: <69384f3e.8a60.7beeca04@gitrepo.freebsd.org> The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=437c77476e726e0414e460c973fd88fe812ce2b4 commit 437c77476e726e0414e460c973fd88fe812ce2b4 Author: Ed Maste AuthorDate: 2025-11-18 13:16:22 +0000 Commit: Ed Maste CommitDate: 2025-12-09 16:32:09 +0000 diff3: Remove bespoke getopt.h diff3's getopt.h included a function declaration without a prototype, which produces a compiler warning. Just remove the bespoke getopt.h and use the system header. Reported by: Mark Millard Reviewed by: fuz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D53802 (cherry picked from commit 38829592dc77e9ead4259785e0bfb93bd4c2fe34) --- contrib/diff/lib/getopt.h | 176 ---------------------------------------------- 1 file changed, 176 deletions(-) diff --git a/contrib/diff/lib/getopt.h b/contrib/diff/lib/getopt.h deleted file mode 100644 index c61768c691bf..000000000000 --- a/contrib/diff/lib/getopt.h +++ /dev/null @@ -1,176 +0,0 @@ -/* Declarations for getopt. - Copyright (C) 1989-1994,1996-1999,2001,2003,2004 - Free Software Foundation, Inc. - This file is part of the GNU C Library. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#ifndef _GETOPT_H - -#ifndef __need_getopt -# define _GETOPT_H 1 -#endif - -/* If __GNU_LIBRARY__ is not already defined, either we are being used - standalone, or this is the first header included in the source file. - If we are being used with glibc, we need to include , but - that does not exist if we are standalone. So: if __GNU_LIBRARY__ is - not defined, include , which will pull in for us - if it's from glibc. (Why ctype.h? It's guaranteed to exist and it - doesn't flood the namespace with stuff the way some other headers do.) */ -#if !defined __GNU_LIBRARY__ -# include -#endif - -#ifndef __THROW -# ifndef __GNUC_PREREQ -# define __GNUC_PREREQ(maj, min) (0) -# endif -# if defined __cplusplus && __GNUC_PREREQ (2,8) -# define __THROW throw () -# else -# define __THROW -# endif -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -/* For communication from `getopt' to the caller. - When `getopt' finds an option that takes an argument, - the argument value is returned here. - Also, when `ordering' is RETURN_IN_ORDER, - each non-option ARGV-element is returned here. */ - -extern char *optarg; - -/* Index in ARGV of the next element to be scanned. - This is used for communication to and from the caller - and for communication between successive calls to `getopt'. - - On entry to `getopt', zero means this is the first call; initialize. - - When `getopt' returns -1, this is the index of the first of the - non-option elements that the caller should itself scan. - - Otherwise, `optind' communicates from one call to the next - how much of ARGV has been scanned so far. */ - -extern int optind; - -/* Callers store zero here to inhibit the error message `getopt' prints - for unrecognized options. */ - -extern int opterr; - -/* Set to an option character which was unrecognized. */ - -extern int optopt; - -#ifndef __need_getopt -/* Describe the long-named options requested by the application. - The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector - of `struct option' terminated by an element containing a name which is - zero. - - The field `has_arg' is: - no_argument (or 0) if the option does not take an argument, - required_argument (or 1) if the option requires an argument, - optional_argument (or 2) if the option takes an optional argument. - - If the field `flag' is not NULL, it points to a variable that is set - to the value given in the field `val' when the option is found, but - left unchanged if the option is not found. - - To have a long-named option do something other than set an `int' to - a compiled-in constant, such as set a value from `optarg', set the - option's `flag' field to zero and its `val' field to a nonzero - value (the equivalent single-letter option character, if there is - one). For long options that have a zero `flag' field, `getopt' - returns the contents of the `val' field. */ - -struct option -{ - const char *name; - /* has_arg can't be an enum because some compilers complain about - type mismatches in all the code that assumes it is an int. */ - int has_arg; - int *flag; - int val; -}; - -/* Names for the values of the `has_arg' field of `struct option'. */ - -# define no_argument 0 -# define required_argument 1 -# define optional_argument 2 -#endif /* need getopt */ - - -/* Get definitions and prototypes for functions to process the - arguments in ARGV (ARGC of them, minus the program name) for - options given in OPTS. - - Return the option character from OPTS just read. Return -1 when - there are no more options. For unrecognized options, or options - missing arguments, `optopt' is set to the option letter, and '?' is - returned. - - The OPTS string is a list of characters which are recognized option - letters, optionally followed by colons, specifying that that letter - takes an argument, to be placed in `optarg'. - - If a letter in OPTS is followed by two colons, its argument is - optional. This behavior is specific to the GNU `getopt'. - - The argument `--' causes premature termination of argument - scanning, explicitly telling `getopt' that there are no more - options. - - If OPTS begins with `--', then non-option arguments are treated as - arguments to the option '\0'. This behavior is specific to the GNU - `getopt'. */ - -#ifdef __GNU_LIBRARY__ -/* Many other libraries have conflicting prototypes for getopt, with - differences in the consts, in stdlib.h. To avoid compilation - errors, only prototype getopt for the GNU C library. */ -extern int getopt (int ___argc, char *const *___argv, const char *__shortopts) - __THROW; -#else /* not __GNU_LIBRARY__ */ -extern int getopt (); -#endif /* __GNU_LIBRARY__ */ - -#ifndef __need_getopt -extern int getopt_long (int ___argc, char *const *___argv, - const char *__shortopts, - const struct option *__longopts, int *__longind) - __THROW; -extern int getopt_long_only (int ___argc, char *const *___argv, - const char *__shortopts, - const struct option *__longopts, int *__longind) - __THROW; - -#endif - -#ifdef __cplusplus -} -#endif - -/* Make sure we later can get all the definitions and declarations. */ -#undef __need_getopt - -#endif /* getopt.h */ From nobody Tue Dec 9 16:33:04 2025 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 4dQkt82bxHz6J9CW for ; Tue, 09 Dec 2025 16:33:04 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQkt80tWbz3H5G for ; Tue, 09 Dec 2025 16:33:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297984; 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=mMBXxzelOCY7Pf/XvH+Y/WZZr+1CIjSjP6EZGMzavfE=; b=wugyIf/UdlKzosxYK6fPg7m5Nyskhjrjl3u3HQ37r9S1DdWYH6gFu6hMS1hjywCk+u+CYn pW2zOtMVrcQW6f1C9gZ2yZ7LqUiBPkYIG6zTYndioEcoUgg6n5nkHxRhCLOdKcXpIcKIrF iePNFHxL9XSZR5UINtMxdpfrU4U6JMSp1Iv1WTnLGGPc0G4O2DIiYgK/UXc+pOkTQkPKSX Za6UEnDckDFhbAjRJW8eDWXv4uRewZMrvipAOKcVkKL4J0PSQe+bZnv+bl6+Sj+ZJuXkjB kA1K8cIh5OCk0RAKXpQ4ly+rcoP4mdNnbzLT/jbiSH/aCz9bvGPndOE4HLB91g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297984; 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=mMBXxzelOCY7Pf/XvH+Y/WZZr+1CIjSjP6EZGMzavfE=; b=lWoscvZZAYkKvaaGppj1/vFB0TlKquDGPwmcJsprJC8fzV6kGCjssGRZD4FgBDbHjUypzZ MVuzSTfpX5M4zSsbwkrfLNKckrpf92Iuu6yt+wDlIWF0YeThZuSED45rYey2gFuMp10HQC eBebColkPchB1+QvGJTNUryhdxjP/QkYrrF/BZGmLg7PIn68iZ1Mquc8c/BIxRC4M/y6vJ 0wcl7ee7AUUDnPj0ShlHodZp1D/Xtz68l+9Sfp2hAGgkR0dJYjrdu/jdE8KAquqZWqmvNR MbXGv+rT7CnKNwFoXnVdF68YgAHdPF6TEf7htGXqGxIRHNJcGWxt7CjypLw7SA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765297984; a=rsa-sha256; cv=none; b=Ak+VyFGpWWpYtBvJkM+9e9I4qagwEBRpCkOkguITFj1JAfmTESv/ffwUSmIfsHIaNbIa1W JvG9868qrieoAohcPIioGDac+vMX0aD906KEkg8TE4JCesLTEsvlcgKpnkmayvT4/akTRu BIFN5m+o7754WtR0c/1foDQ6xMIu/7msoJB1hPfAHZw8TM/70TVc5PDeYXUCIuE6/J7bA9 Ks+ZTKznIg6M1day45fusOqKp0VmhhMG0ihJdrC8liuvy+GEBI9kFJdNYeJAJYUWEOf07w LEOSiuMMDDMkorSL8llA+EsCm7GWRXoI/xtBN9H/ZCrBq0fL+dp2EbIKh5lMWA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQkt80QVLz15p7 for ; Tue, 09 Dec 2025 16:33:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 9e83 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 16:33:04 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 56bdfd2d967a - stable/15 - diff3: Use logical-not, not bitwise for booleans 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 56bdfd2d967ac104dc599bced168e1a200aa168e Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 16:33:04 +0000 Message-Id: <69384f40.9e83.e16d401@gitrepo.freebsd.org> The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=56bdfd2d967ac104dc599bced168e1a200aa168e commit 56bdfd2d967ac104dc599bced168e1a200aa168e Author: Ed Maste AuthorDate: 2025-11-18 13:20:40 +0000 Commit: Ed Maste CommitDate: 2025-12-09 16:32:09 +0000 diff3: Use logical-not, not bitwise for booleans And compare impcompat != 0 as it's actually an integer incremented on each use of one of the AeExX3 options. Reviewed by: fuz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D53808 (cherry picked from commit abcb80f46c2607fc16564ca87cc25f0908f29f99) --- contrib/diff/src/diff3.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/contrib/diff/src/diff3.c b/contrib/diff/src/diff3.c index c915d6b04c87..d0e8137756db 100644 --- a/contrib/diff/src/diff3.c +++ b/contrib/diff/src/diff3.c @@ -299,9 +299,9 @@ main (int argc, char **argv) } } - edscript = incompat & ~merge; /* -AeExX3 without -m implies ed script. */ - show_2nd |= ~incompat & merge; /* -m without -AeExX3 implies -A. */ - flagging |= ~incompat & merge; + edscript = (incompat != 0) & !merge; /* -AeExX3 without -m implies ed script. */ + show_2nd |= !incompat & merge; /* -m without -AeExX3 implies -A. */ + flagging |= !incompat & merge; if (incompat > 1 /* Ensure at most one of -AeExX3. */ || finalwrite & merge /* -i -m would rewrite input file. */ From nobody Tue Dec 9 16:33:05 2025 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 4dQkt95ZmKz6J9GX for ; Tue, 09 Dec 2025 16:33: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQkt91lZQz3H6W for ; Tue, 09 Dec 2025 16:33:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297985; 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=T5vhOceZbcT8aVu1qdnJIKeVW2J2Sb6Z+kA+kRG/nMg=; b=ukIPKOyE9pQ63MuETilGw7Jmtfwpfbe2aZT2tTBxeAtql+QnEnJkTm9FBpDYJlypH1mxER S2qtbDeu4e17x9iiyHmWVya9u5TnWyteT63QpW0EtkwHjnupxx4DO1GX1R9BU7ZdyrN5Hk m3OKrY9dtAHAJZ1pXMHgk1PfxyZNcqm9gJSeRugQ7D5Y7eXvPUN2fBmPj5rGC/ra8+fX01 hGQ9kAzb8t8uJ5kpcneFaKQFl9JJFWQaWBSTHgY2Gtssc9ztLBF5tlu+9WTUcwS85PyK9l Jfz3vU9AJc+m8dIYIoaTVKQIm6k+AFOXiVdT6KVFzujbKHh6FN6Xu5a2umnQUA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297985; 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=T5vhOceZbcT8aVu1qdnJIKeVW2J2Sb6Z+kA+kRG/nMg=; b=ubTdNtIDC9ikZeqQSe2E8V4aJnjlq/BJIjglTUjVtiGZ0hdySSlLJH6/HtwKxNC+7XriPs IspCFNT+Ycq8YLMn/6Fj0oGnOtT0VtAplesM+EkX5EjUgwZda1wW0Fj6xS/EwtDb9CyhtL Jzr8JNixkE71GEt3LQWjbqwgu3y+708GQmQMKy+l0nSq4JURSj6XfBBRndo7Ul8hnXQZw5 mxEJQkPaDNvsWFuiM4C+5Maa5X5obXgTQJNeizSGUtVkrk7/LD1DPwkw763FU2QmZsiZKl /FdvwP3KNrKtj5Asjimkonq3a2B7HuKIZ4NFEr1lbiFpOMtzcM+H+mGOLyf53Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765297985; a=rsa-sha256; cv=none; b=JrmXEo3hKk5Po8kmkaH452/Pkk1e93TmAPgC+sa9OpMOECUoY3fL2vVNkGuC50xrXRsRBH VyVJwNmjQYjXl+UIYihe67oTcAo+HKtCDsFxXCi8Pal3dY+9M6l8QR6qODhXpTKSFP/qJs tqcr8Bt4TO3erNJQXZFMe7alWu3bAfRIBdeLLtu9kofuPyhwFU109xdoDs+SVyDkyC2pSP Dg3+x+8pHdJfzZ7FcNC7ZOhUp7Qdrj14cV2/syejcWMm3vX6EqFD8w3UWudJ+nFwTgWfeb Lc68A3AFH1b80N6WnZXmWiPyt0TXtALRMP2G0QyAMPE5hDDypnV9ajMPJgbhsw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQkt91BFKz16Jx for ; Tue, 09 Dec 2025 16:33:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 9f00 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 16:33:05 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: de67d3cfc653 - stable/15 - boot.config.5: Clarify that this controls legacy boot blocks 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: de67d3cfc6537f6bfa8f2601da7af9c165d09075 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 16:33:05 +0000 Message-Id: <69384f41.9f00.4684f492@gitrepo.freebsd.org> The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=de67d3cfc6537f6bfa8f2601da7af9c165d09075 commit de67d3cfc6537f6bfa8f2601da7af9c165d09075 Author: Ed Maste AuthorDate: 2025-09-09 16:06:03 +0000 Commit: Ed Maste CommitDate: 2025-12-09 16:32:09 +0000 boot.config.5: Clarify that this controls legacy boot blocks Reviewed by; ziaee Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52460 (cherry picked from commit e96359d111aaffa6bf0ea72a6f183eb3b91e6c72) --- share/man/man5/boot.config.5 | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/share/man/man5/boot.config.5 b/share/man/man5/boot.config.5 index 0b6d4c7b34e9..ddc232952f10 100644 --- a/share/man/man5/boot.config.5 +++ b/share/man/man5/boot.config.5 @@ -21,12 +21,12 @@ .\" 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 October 12, 2020 +.Dd November 14, 2025 .Dt BOOT.CONFIG 5 .Os .Sh NAME .Nm boot.config -.Nd "Configuration file for the boot blocks" +.Nd "Configuration file for the legacy boot blocks" .Sh DESCRIPTION The .Nm @@ -34,9 +34,9 @@ file contains options for the .Fx boot block code. .Pp -When the +When the first- and second-stage .Fx -boot loader runs, it searches the +boot loaders run, they search the .Dq Li a slice of the boot partition for a .Nm From nobody Tue Dec 9 16:33:06 2025 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 4dQktC1rlzz6J8ps for ; Tue, 09 Dec 2025 16:33: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQktB2X1Rz3HCV for ; Tue, 09 Dec 2025 16:33:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297986; 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=DVgNWIh3p4n/uunxLpQQD+kHkJfiDX186vL+xSa+fbM=; b=DkLYYGNy3zLF9KnMCQhq5ZE7gpq39/49W9/I1bLilhseAHRX7SZjUNXZ36FuNtjJ144KmH Sg8SDPNdhwLLGFMS0wp2nvnWKYreCo0O82WqOXAlh+pOZb+ZU8rUmGDJE8Ozq7jsOnZMe2 pzfxhi7ZI/80jLexykze7m6F3Q+vnf1q8r8M2npUhUBOaibcA38hQH0x57CARjrEE2KxFB sHbBjrWkBHzv2zpAF9nttgyYyq8ui8NFY+AYG37Xy9n9uDZFf6cFEAqsDkHUm5Yv6SZMTC DRcR74szJIy3eJljd1iy+3kcoE/ZQS3XGunbQxGTe52Gc/hGugUNF/+cNTbVyQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297986; 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=DVgNWIh3p4n/uunxLpQQD+kHkJfiDX186vL+xSa+fbM=; b=jhVaDRkV8T4GJ8jhiIQxQH/teZfYXfYhAqlg0mjQ1a5cFAeTU1w7W+BDcO0vL3n2z5c1zR 7BA5hh6XZQ/3Vchee6pShHYqVgpvMuuxvvBC+djf25/I22h0Z7zLg5lGeQxHQCI8UAeDIk 7T+R7OKDimehzR9vFFyn+7ArNn0gM36nuuqiSDIy9kE4v+LMDyRLndJkEwndxnR/oOHYoY vYLqsehQFjbXUmSjFC4mWetQmUyg5WXcshibNyHCwQOqd7/Cso0ygsryK+cUisXM7gY0gm edAkP0yIQjfsIsytDJZ487Eb1cPzCTjCE99j0u4EFSeJzxsIQTPB6uNZTzDA0g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765297986; a=rsa-sha256; cv=none; b=j4JqWO8EUkJ8WlHz/wUXO2X8Pyfj4sTVX89Nlc7evTYNst9MItM0d6CqZQSepDJJFtYgYJ 8pw7Lj6wHRy00SzZUONfGmBcP48LnvmYEezeet157SKOZyEMT0hcoZelCZ1KlWCV/2lglu TpBzJmDK0oUXu6D734jNV5wjgClX15njFwGLGDq4PeBCbF+qbFPY9uR9l1nlWGS1kTJnXb GUDtyrIFI0GLdLvEj1RZCStkepqOeSDYMvsJSg+gF9QzKkfeecDtL8Bug765ofddAp9c86 DyFrfdRlm6sqzN42ObwL+FWxC20igLYQZK68QjvifSCBJDkQ4BMTAkKIMvGpYQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQktB1xPsz15xH for ; Tue, 09 Dec 2025 16:33:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 9287 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 16:33:06 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 3f2d86bfbf6c - stable/15 - fdc.4: Correct igor-reported warnings 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 3f2d86bfbf6c8e1f4db72018dab446547cfb6ca9 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 16:33:06 +0000 Message-Id: <69384f42.9287.76bb156c@gitrepo.freebsd.org> The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=3f2d86bfbf6c8e1f4db72018dab446547cfb6ca9 commit 3f2d86bfbf6c8e1f4db72018dab446547cfb6ca9 Author: Ed Maste AuthorDate: 2025-11-16 22:43:40 +0000 Commit: Ed Maste CommitDate: 2025-12-09 16:32:09 +0000 fdc.4: Correct igor-reported warnings Sponsored by: The FreeBSD Foundation (cherry picked from commit e1b027b276dfba017d12b8a112af3251e79effc5) --- share/man/man4/fdc.4 | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/share/man/man4/fdc.4 b/share/man/man4/fdc.4 index 929baf3a234b..774dc3f18cd6 100644 --- a/share/man/man4/fdc.4 +++ b/share/man/man4/fdc.4 @@ -350,13 +350,15 @@ Print when an unknown IOCTL is used. .El .It Dv debug.fdc.fifo For enhanced controllers, allows a non-default FIFO -threshold setting. The default is 8 bytes. +threshold setting. +The default is 8 bytes. .It Dv debug.fdc.retries -Maximum number of retries to attempt. The default is 10. +Maximum number of retries to attempt. +The default is 10. .It Dv debug.fdc.spec1 Specification byte one (step-rate + head unload). -The default step rate is 6 ms. The default head unload -time is 240 ms. +The default step rate is 6 ms. +The default head unload time is 240 ms. .It Dv debug.fdc.spec2 Specification byte two (head load time + no-dma). The default head load time is 16 ms, and no-dma is 0 From nobody Tue Dec 9 16:33:07 2025 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 4dQktC5QPMz6J9Cp for ; Tue, 09 Dec 2025 16:33: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQktC3MNmz3HGC for ; Tue, 09 Dec 2025 16:33:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297987; 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=GqfNsehzENWartYp94bFo6bUQhBMuE9oBRfDJpNXc4A=; b=jfKm5I3JymxjiKtmqOLe0hnC1sNGZJb575MZTibSq8d5oAkgVDQAlBRZPmNcGdJdOytHcw 0HJ1w5wuXKhDWGEgNzWUKClvpqBiheglwPCMuaO4Z3j6PpGMklEe/qqbyXPj37NL7u9Mw8 DwiEPTUwK4oIrk4Fc7DGE+PrrvRUxsa0bvO1svVnExGEbaYTWI9xz3pn7obkU0B3WjfZCK T565OQbUYPD8td68nBuiA3x+fWy60iYgT2yYIP8wZiJNmeo8oQZmE+1DMTI/EqRXhERZkJ ziRzp6xN2/LEbXGIB0HwsXR8jgBk4JGIPs5ghd8goFmbrwFcysBvZZ9RPYuUQw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297987; 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=GqfNsehzENWartYp94bFo6bUQhBMuE9oBRfDJpNXc4A=; b=w7j8d6+ToVs8ldPxTHk3oKi/kQAWo5r4inTQ2dE9KVOWD5HwhFbGpTqJ7MliXaUIIq7Q4e vLkDsrMwYGO8WeSRWIWFYwiuGeE7HYIm8BddYj2TwvI+u2gS3a9rgaI2ER0/gxzCp6s9tL PWNdFIWOZFpKMO4g+gOw/YKp9xZWruS5CeU24vAOTrTlDoj+PbcHy4P9vQJ8Yyukj8Nd7m ArUtRDtRX49P02h0UdjWWn8QNDBiYfRd9fWAHC1QV+a7i5Nltb/6N67s5Y11FzUSwOphhL 8wzNBFQuln6bmzjDhWo2KR+NxRQGQSyBmu4YuDQMozGAIsGrZVu/bYZtw6bOUg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765297987; a=rsa-sha256; cv=none; b=g2W3JtJUhhUriBegjLBgxE2R2Nae6s2lqccWaVizhnVnrmsnyrV50SP3vTR3YFCnhsgst7 BB9e0nQwBzzJK53SzGKxWqx2McndBhzU3XCC7vt/xGmQzycTQxCpkMfuRhwKxDpQ3zuemx MQea4WESB7nVlSd+HG/YeHKaSYaBC0fEndmVLD7PvkN2m835ZJjDH55+kjdRqdA7MHT+k+ 11MdJ+i6Eo2naJGsHm+s0BUwAf9/lVsq+sfngQrNY3i8IUAxjUhcVImcHL6brQAObZ8BoN 5+/X4l3lBfY0tSggivtD6C9n0H72X0xgL+2Clz2AiIUSgdOH8LT3MsxmfU9YLQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQktC2jWWz16BK for ; Tue, 09 Dec 2025 16:33:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 98c4 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 16:33:07 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 661b40ffdee2 - stable/15 - Deprecate fdc(4) and floppy utilities 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 661b40ffdee25dd81d19fbbcd6cb09e3ec159342 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 16:33:07 +0000 Message-Id: <69384f43.98c4.4e0a0cf6@gitrepo.freebsd.org> The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=661b40ffdee25dd81d19fbbcd6cb09e3ec159342 commit 661b40ffdee25dd81d19fbbcd6cb09e3ec159342 Author: Ed Maste AuthorDate: 2023-08-22 14:45:14 +0000 Commit: Ed Maste CommitDate: 2025-12-09 16:32:09 +0000 Deprecate fdc(4) and floppy utilities Floppies have been obsolete for over a decade. Add a deprecation note now and plan to remove fdc(4) support in 16. Reviewed by: ziaee Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D41549 (cherry picked from commit 4c736cfc69a7ef81c48c8431b31c7e31746fe816) --- share/man/man4/fdc.4 | 8 +++++++- usr.sbin/fdcontrol/fdcontrol.8 | 7 ++++++- usr.sbin/fdformat/fdformat.8 | 7 ++++++- usr.sbin/fdread/fdread.1 | 7 ++++++- usr.sbin/fdwrite/fdwrite.1 | 7 ++++++- 5 files changed, 31 insertions(+), 5 deletions(-) diff --git a/share/man/man4/fdc.4 b/share/man/man4/fdc.4 index 774dc3f18cd6..937be2077b26 100644 --- a/share/man/man4/fdc.4 +++ b/share/man/man4/fdc.4 @@ -25,7 +25,7 @@ .\" (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 October 10, 2023 +.Dd November 16, 2025 .Dt FDC 4 .Os .Sh NAME @@ -47,6 +47,12 @@ In .Cd hint.fd.1.at="fdc0" .Cd hint.fd.1.drive="1" .Cd hint.fd.1.flags="0x0" +.Sh DEPRECATION NOTICE +The +.Nm +driver is deprecated and may not be present in +.Fx 16.0 +and later. .Sh DESCRIPTION .Ss Device Usage This driver provides access to floppy disk drives. diff --git a/usr.sbin/fdcontrol/fdcontrol.8 b/usr.sbin/fdcontrol/fdcontrol.8 index 23c3a2ee20de..cbf8864d5fe7 100644 --- a/usr.sbin/fdcontrol/fdcontrol.8 +++ b/usr.sbin/fdcontrol/fdcontrol.8 @@ -23,7 +23,7 @@ .\" USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH .\" DAMAGE. .\" -.Dd April 7, 2017 +.Dd November 16, 2025 .Dt FDCONTROL 8 .Os .Sh NAME @@ -37,6 +37,11 @@ .Op Fl s Ar fmtstr .Op Fl v .Ar device +.Sh DEPRECATION NOTICE +.Nm +is deprecated and may not be present in +.Fx 16.0 +and later. .Sh DESCRIPTION The .Nm diff --git a/usr.sbin/fdformat/fdformat.8 b/usr.sbin/fdformat/fdformat.8 index bf18f93f5e87..72ec2bd2be5c 100644 --- a/usr.sbin/fdformat/fdformat.8 +++ b/usr.sbin/fdformat/fdformat.8 @@ -22,7 +22,7 @@ .\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd May 23, 2020 +.Dd November 16, 2025 .Dt FDFORMAT 8 .Os .Sh NAME @@ -35,6 +35,11 @@ .Op Fl s Ar fmtstr .Op Fl nqvy .Ar device +.Sh DEPRECATION NOTICE +.Nm +is deprecated and may not be present in +.Fx 16.0 +and later. .Sh DESCRIPTION The .Nm diff --git a/usr.sbin/fdread/fdread.1 b/usr.sbin/fdread/fdread.1 index c0036906bee6..83892877b48b 100644 --- a/usr.sbin/fdread/fdread.1 +++ b/usr.sbin/fdread/fdread.1 @@ -24,7 +24,7 @@ .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" .\" -.Dd May 14, 2001 +.Dd November 16, 2025 .Dt FDREAD 1 .Os .Sh NAME @@ -40,6 +40,11 @@ .Op Fl d Ar device .Fl I Ar numsects .Op Fl t Ar trackno +.Sh DEPRECATION NOTICE +.Nm +is deprecated and may not be present in +.Fx 16.0 +and later. .Sh DESCRIPTION The .Nm diff --git a/usr.sbin/fdwrite/fdwrite.1 b/usr.sbin/fdwrite/fdwrite.1 index 9d188de02d83..4773cfa20d9a 100644 --- a/usr.sbin/fdwrite/fdwrite.1 +++ b/usr.sbin/fdwrite/fdwrite.1 @@ -7,7 +7,7 @@ .\" ---------------------------------------------------------------------------- .\" .\" -.Dd September 16, 1993 +.Dd November 16, 2025 .Dt FDWRITE 1 .Os .Sh NAME @@ -19,6 +19,11 @@ .Op Fl y .Op Fl f Ar inputfile .Op Fl d Ar device +.Sh DEPRECATION NOTICE +.Nm +is deprecated and may not be present in +.Fx 16.0 +and later. .Sh DESCRIPTION The .Nm From nobody Tue Dec 9 16:33:08 2025 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 4dQktD6VRqz6J8xG for ; Tue, 09 Dec 2025 16:33: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQktD3XMSz3HGb for ; Tue, 09 Dec 2025 16:33:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297988; 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=lq75W/MkV8zZMgRCCmuNOaBtm9R/U2mK0U9MhjzkfyA=; b=pkrW99+IwrS/vsjJpPF9kboeK07BcqRXhd+hGQTkT3CUjfvi+lH5Pw+8EdY79RiJyqNFBy cGl3jsmbpksJhYEegV5wTpbybi1uz0aBlT3F8NQn108NBj19qcClM/UVYtrs40sdQ4+YeT AU8Me+yazUP8y4sdlnkE41NH7E7OdDTCMnkfeUQFD3FPJKIdhnWmWtgVBlVc726KSP0/NP uD+X9bzB2vh1/mdZ7q6Ui8IBlA3CuCqe0/BKCB9hMivWWFcyE0IpGjFZFKGUwBz5AKcQsa PnbZToAFqftU6safJRvsK/mQXfaP1+WBfBDgS29lFnNaP4jti2GzvTb6Wzl/mA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765297988; 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=lq75W/MkV8zZMgRCCmuNOaBtm9R/U2mK0U9MhjzkfyA=; b=RJXFUnUuoX0kLHbxrcgtkeCJ2T1n6fSCFepSMeG71XihaHwF6BUdIjM1YYhd9AWtnFArHr dsG9Ngs7nNIVt3At/Y80pnfGJQYJOF9UKZpZmkZFXjgVvTPvRKXQ/GrU6QNP+61BbzvHxx LBjEeJ8X2D2XZWpOdRoCYGSCtJIGBbXr8XCGEJPSUK+MkuM91F9vIEbcq51amPe+DZzdst 9denLj5lIv6qCYaY93K8/o+KfhUeLPBk63iZBxzp2V+wWWWdKMEfDC/e/F70N1d3fHNvRN 28wFyqtVLkTLleldHhwXOCxITkxw/peExuypAdDPmwLSU20YD6r2yh0FlknFRQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765297988; a=rsa-sha256; cv=none; b=Jvg+p9m7SQheZjs5eoDd3zndJXnuI/2nnTHjBFE8/wtzziJgObqh0CWrV/iWn7sFPapGnd yl5FMnI7uXXFARU7nMd7zZsWujJNWI4eOjNz/lnJ3r8+u4/1zKhqIZiAkjwNgx0fKw552a q8Ew60qC/xtFP5vu4jDvsB7NfhtBWRKETdbpMq0m0Eki3aNYWT0tl9DEs6MaFJpP+ny6D6 fqxj//7Z+JQu0Gxa9FFiFRbpPJg2BihYGYSeM2DPZHR0ypVqce48q4UlLfucVDkgU0T+E3 Mu6SF1xvSZ7xCEoUA9u/swr/cmqLLCRaTbnuoiR+4gyQMtyhaIGNjXz4kGBLrw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQktD331Jz16BL for ; Tue, 09 Dec 2025 16:33:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 928b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 16:33:08 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 224d65015465 - stable/15 - vt: Allow VT_SETMODE with frsig=0 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 224d65015465d085f2e07edccef1f23a8c217b88 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 16:33:08 +0000 Message-Id: <69384f44.928b.50550a61@gitrepo.freebsd.org> The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=224d65015465d085f2e07edccef1f23a8c217b88 commit 224d65015465d085f2e07edccef1f23a8c217b88 Author: Ed Maste AuthorDate: 2025-09-30 19:39:34 +0000 Commit: Ed Maste CommitDate: 2025-12-09 16:32:10 +0000 vt: Allow VT_SETMODE with frsig=0 Linux does not check that any of the signals in vt_mode VT_SETMODE ioctl (relsig, acqsig, frsig) are valid, but FreeBSD required that all three are valid. frsig is unusued in both Linux and FreeBSD, and software typically leaves it unset. To improve portability, allow frsig to be set to zero. PR: 289812 Reported by: Dušan Gvozdenović Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52835 (cherry picked from commit 5198c32210039d8dc92554647384eee75688848c) --- sys/dev/vt/vt_core.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/dev/vt/vt_core.c b/sys/dev/vt/vt_core.c index b51ef6766de4..6d1012110678 100644 --- a/sys/dev/vt/vt_core.c +++ b/sys/dev/vt/vt_core.c @@ -3044,9 +3044,9 @@ skip_thunk: DPRINTF(5, "reset WAIT_ACQ, "); return (0); } else if (mode->mode == VT_PROCESS) { - if (!ISSIGVALID(mode->relsig) || - !ISSIGVALID(mode->acqsig) || - !ISSIGVALID(mode->frsig)) { + if (!(ISSIGVALID(mode->relsig) && + ISSIGVALID(mode->acqsig) && + (mode->frsig == 0 || ISSIGVALID(mode->frsig)))) { DPRINTF(5, "error EINVAL\n"); return (EINVAL); } From nobody Tue Dec 9 16:40:47 2025 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 4dQl341sByz6J9lk for ; Tue, 09 Dec 2025 16:40:48 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dQl335Dc7z3LqJ for ; Tue, 09 Dec 2025 16:40:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765298447; 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=jOZtZU9n9YFJnVqpMzhyx15ZWspbKkKnkX8w709oPLU=; b=InAkI8aqoTmKZlW0fmOztA9AgI0fAfSStNfCZlRwi2agonl8tK68g0VgG+XkAlEQzmWXJi xvai4xPG9fluDlpsXX2l4n0P8oL8oL/4BUEnKxf7ILLcIfkcYzcTTBgfJZNVzx8jfVDLBI hs0JxQW9/pbfSbcKCMpaIO/Rp4NRvOMDr7RdolfPuriF5RTVJyu0elVT1uMjiWY6X8RI8k Mx8vAUK7P54hV/macT8xnHBUSeW9B0OPqmL1yC1/2hLzc27FZaNGN4HPS85kXpi4zHdLbI Gs8D0UEJ9eiv8g1RJbVCUQt2yio4NZc+FAWuseonCBMXKxIyHjcFqBRKl60yPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765298447; 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=jOZtZU9n9YFJnVqpMzhyx15ZWspbKkKnkX8w709oPLU=; b=xfQqXn50KipSIKSCClFzfOEvBBEhatSx9Ama1r5ymdk3zkPVFJXRmy0lTrIzqcudPiDbaX AIkUX7p0oDFzLwDZKfwfMhed8lraTghVjgThj5KqXJa+UtjwM1mAaL6lc4MCK1VsJHwDf0 KV8yuosL+g2CdxCoVJP2IDgNa+Z4Mj1Ov8G1wGGhgH2fkyDA//TkONrsEKdoCyRjfb8zrO OqMmmR61v0RaeyiwcMMhE0OetrEfuRrjcZFAV2pqfc9kF2w60Kas9Vwnvc/2AUqZt0g+4H gs7/jjzl2mm1nK7JxHo94DJVm3XKRTHcMn1Ihg1ryhOe44Hb/neC5zDphUa8Tg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765298447; a=rsa-sha256; cv=none; b=Pb/1xZetTtC+o7Hlslw0JAF/HT4GGPisJish37f6NI5Qu/wN5Gs6Da7hGOM+dX2USKty8R o9fzfv+Wt6aFmcthpm9SZbgXNbeYL/aD+1pc/UBqKOvsR2GYaxtLrUmZvIXm9x89cYtcve 4zMQXtmGi90xqZHwu6EwWORTjm31XmVWayqsfJn9X4GAzzK/EXqktqsJWTE2caAo6EI7Zw heHU4ohzKbRoBUrYjXh4AJLq4/EerElQgoBgbDMG3KVlimnuIAPigSIJvwx9y7K89icPsb yt7ACXs4iYKo0OaQhsc6ewGhih7AeO88pSAS4dtPfDgGqn4lsxhl4A11msh+4w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dQl334Xzfz15xT for ; Tue, 09 Dec 2025 16:40:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 95c8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 09 Dec 2025 16:40:47 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 63b77ab1554e - stable/14 - kgssapi: Remove broken MOD_UNLOAD code 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 63b77ab1554eb642ad28c35339f08ccfeaab13e5 Auto-Submitted: auto-generated Date: Tue, 09 Dec 2025 16:40:47 +0000 Message-Id: <6938510f.95c8.69d7790a@gitrepo.freebsd.org> The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=63b77ab1554eb642ad28c35339f08ccfeaab13e5 commit 63b77ab1554eb642ad28c35339f08ccfeaab13e5 Author: Ed Maste AuthorDate: 2025-11-27 16:44:08 +0000 Commit: Ed Maste CommitDate: 2025-12-09 16:40:33 +0000 kgssapi: Remove broken MOD_UNLOAD code The module panicked at unload with "recursing but non-recursive rw". There is a comment that "Unloading of the kgssapi module is not currently supported" and the MOD_UNLOAD case falls through to returning EOPNOTSUPP anyway. Just #if 0 the code in the unload path, leaving it as a hint in case someone implements unload support later on. PR: 291249 Reviewed by: rmacklem Fixes: ad704a34bc2c ("Use syscall_helper_register(9) rather than syscall_register().") Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D53949 (cherry picked from commit 6901376f59b870ddbb0d922e3455a388333cd460) (cherry picked from commit ab4f4f4efaac85bbf235e60f2ced4876a9e916f2) --- sys/kgssapi/gss_impl.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/kgssapi/gss_impl.c b/sys/kgssapi/gss_impl.c index ae37cb646f1f..f4b09749fdef 100644 --- a/sys/kgssapi/gss_impl.c +++ b/sys/kgssapi/gss_impl.c @@ -78,12 +78,14 @@ kgss_load(void) return (0); } +#if 0 static void kgss_unload(void) { syscall_helper_unregister(gssd_syscalls); } +#endif int sys_gssd_syscall(struct thread *td, struct gssd_syscall_args *uap) @@ -344,8 +346,10 @@ kgssapi_modevent(module_t mod, int type, void *data) error = kgss_load(); break; case MOD_UNLOAD: +#if 0 kgss_unload(); mtx_destroy(&kgss_gssd_lock); +#endif /* * Unloading of the kgssapi module is not currently supported. * If somebody wants this, we would need to keep track of From nobody Wed Dec 10 03:37:40 2025 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 4dR1d06yY6z6KJ5V for ; Wed, 10 Dec 2025 03:37:40 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dR1d0465cz3bGY for ; Wed, 10 Dec 2025 03:37:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765337860; 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=19O1m36oUNt54x9OHzfq4MgRRtTrNU1NHmsYj/YOeII=; b=N5LBfDB96Oek8T15EjE9NNOMws6rTvqUq/pC47VsS4aet7p7jRsQVqDsGcgNSsSW4DJ8Ze LSd3EnUytVFYg5Q+xuxADIMPcQJjW9pCK/ohBsSxRHjQWJPkdwNAHjdtXtIFsiQf0mLV3o 35nCKcKgwI0XNUqh+ABbfXaD6VkMmCNWcToEjy0JyIKKy7tHZBF+Rz59qSRlLXootztRnN PoZMs4GFSOuMPbpr412fU56rOV2FicGI9pgng7bAwPleL06eDpUIBV9QGy/7LpgSOi2FRX MIBBYENCDuSBNCAT00+Lk+ZrFJCmlg9sE3Y8n6u+J8MwnHTfSaeigLQp9rCe0g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765337860; 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=19O1m36oUNt54x9OHzfq4MgRRtTrNU1NHmsYj/YOeII=; b=holbbWvV00jpZOvHem8IZmSkFVFoM+gOJYAQ2ugYhBkHjQCeUjEDzYvDk+r5YmFXFCHrg0 bO6itEK7TmcBAFDCDZUVwrTKZRSsR+DALJJWzgXoKf67zLBlzqckMlhwYuq8X53TQle/97 tKhf+ELYIbgEoFPmAiBiACAP23pa7KfzkLNUmaIksM+CHLRp1JJ/XN2iDBHUGczr7Ej0xk 1KgFpJFFvpD1uhE6RgxiCVXhGcRpJA9/PVOD11TxUSt64nqO0KaU07VN7zZiqq+uYr2UQg gu87Tl7PS1t9p1QwCzMzzYiKyd4Lk2Cor6gm+tXJ5nN93bIQuN8GgHdHtBgGmA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765337860; a=rsa-sha256; cv=none; b=S0KqC/KNTkwOX0SqsUHEreZZdbtca8paEJ3mPKfPosINpofWmGCia6aaY3zH+C75tcDTRV JjXPWPaerJN67/79QEQfqVswrVKlI61X40dHNtnAbeQ/dOx7QUffO6gNZFNiJToRgf40P0 cWL50cBxeVs8XW0nEBdSWYbWJPRFnPQaOONdfUDP+jH3buEm0IIWmlU5/s834c726ErQBn VxUCUcBpgnBtMrbh/ZEGRFDT01Aa3+tg3oA6HVJYACztTTfQ/2tUN2QB3oNSsIrUmFVKz9 XWAN5U+/kDw/dOOsiPeuZKlIFfzH4IbIUTdpvc72YGWUjCS+pvuu9IVCjNBo/A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dR1d0391wzC9w for ; Wed, 10 Dec 2025 03:37:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 326ed by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 10 Dec 2025 03:37:40 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Rick Macklem Subject: git: ffd47a4bc671 - stable/15 - nfs_nfsdstate.c: Add sanity checks for lock stateids 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 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: ffd47a4bc6716452da795aeaed3429d2392abb73 Auto-Submitted: auto-generated Date: Wed, 10 Dec 2025 03:37:40 +0000 Message-Id: <6938eb04.326ed.300fcfa@gitrepo.freebsd.org> The branch stable/15 has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=ffd47a4bc6716452da795aeaed3429d2392abb73 commit ffd47a4bc6716452da795aeaed3429d2392abb73 Author: Rick Macklem AuthorDate: 2025-11-26 19:20:27 +0000 Commit: Rick Macklem CommitDate: 2025-12-10 03:36:04 +0000 nfs_nfsdstate.c: Add sanity checks for lock stateids Bugzilla PR reported a crash caused by a synthetic client doing a Lock operation request with a delegation stateid. This patch fixes the problem by adding sanity checks for the type of stateid provided as an argument to the Lock and LockU operations. It has been tested with the FreeBSD, Linux and Solaris 11.4 clients. Hopefully, other NFSv4 clients will work ok as well. PR: 291080 (cherry picked from commit aa1cf240887ddcca66dfb969fdc5a8d545396037) --- sys/fs/nfsserver/nfs_nfsdstate.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/sys/fs/nfsserver/nfs_nfsdstate.c b/sys/fs/nfsserver/nfs_nfsdstate.c index 111b0f26d0b5..3fae2be5af46 100644 --- a/sys/fs/nfsserver/nfs_nfsdstate.c +++ b/sys/fs/nfsserver/nfs_nfsdstate.c @@ -1977,6 +1977,20 @@ tryagain: error = NFSERR_BADSTATEID; } + /* + * Sanity check the stateid for the Lock/LockU cases. + */ + if (error == 0 && (new_stp->ls_flags & NFSLCK_LOCK) != 0 && + (((new_stp->ls_flags & NFSLCK_OPENTOLOCK) != 0 && + (stp->ls_flags & NFSLCK_OPEN) == 0) || + ((new_stp->ls_flags & NFSLCK_OPENTOLOCK) == 0 && + (stp->ls_flags & NFSLCK_LOCK) == 0))) + error = NFSERR_BADSTATEID; + if (error == 0 && (new_stp->ls_flags & NFSLCK_UNLOCK) != 0 && + (stp->ls_flags & NFSLCK_LOCK) == 0) + error = NFSERR_BADSTATEID; + + /* Sanity check the delegation stateid. */ if (error == 0 && (stp->ls_flags & (NFSLCK_DELEGREAD | NFSLCK_DELEGWRITE)) && getlckret == 0 && stp->ls_lfp != lfp) From nobody Wed Dec 10 03:41:57 2025 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 4dR1jx4rs3z6KJlZ for ; Wed, 10 Dec 2025 03:41:57 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dR1jx455cz3c0g for ; Wed, 10 Dec 2025 03:41:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765338117; 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=OY24TvhWh+NT7Fo2l+BjTcGFkKEMfgpvowfdvYGhxjA=; b=NTBg6i/YDE+x7exCKnWQ1eaAa9KDUvUndnPunyP/jSknY11Mrx7SSFkAwt3HE4BDY+66Y2 KPr/Hba1JiHONGozLvW/DWQu3Bn86YnjOuvZ5HmuLKkmFKRLVBonD/sHVz1m8n0BYifezi TKjAbzJ3WBTwuLWomFjNtzzyHy/MA+rRUUg2Adxaqrh3/Yk/EapKwICNWudrVJthF5C5/n fAi8iwFxeTC9/mfmnLIhGCCECv92VeDZfgakO4KKSxpZiBNPSj3MomrtsZd8Uh698jFCHK LCclft3T/Btmz6keMLyM4jbt3GNCTZ4s4feU38Txk6InxkFa9iarrEJ+4k2LMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765338117; 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=OY24TvhWh+NT7Fo2l+BjTcGFkKEMfgpvowfdvYGhxjA=; b=m2NPNGy8mjMpce2meNKREywErzWf+Q9wRAXd5bGx2FNuQMTjPtNvZUp84bl0hE+hBWtaEc ZeH1uiUs/uxH71o7pDiOkdxLQYviXYItjisacGd7wkePRH3ml46hTfmvjsEsd6N3V/+mQI xB0Sfd+u4cAZI6lH7UxbwUHFIgqQ+HKW0vLw2yvuSPvWmrrgkEy5ooy77gJA9LmcUYujRn DKLSImcuv12yk6NAkFHYKvRfz/MteRbd9AA8p6n76CR0UGQ9xxHWqfoU6BdvkPBlCpkmzW oSzs3b0+M0YS1+bD1b9HAh4fdIsREesONZ/WHN3Zag5E0u/WfDGnSjLbhADj/A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765338117; a=rsa-sha256; cv=none; b=QRnk5kFLbuNkFN7//2GKfGV3I4h/dpy3cWJuX0M4HyvIqeO1O4kAvhLnAHFxdWGP4F0c3c zUpKd/GFPvnrqcNdFR9o1Fv48js/irt12utxFHe1RTi+UFAAnsKn2u3vrvt6ythdLHaHx+ c1CscSkFHs0hJOJwco5Tk1KQJgi0cniA4VGTxvoLOrvADjiETd4MwfbuCuNbtQeCVNNNT9 +m8AxK1HXEM9oD5xVrmSI0IO3tOZ+Fb4GSX1SU7qp40cg2hBBwgEM2NILYjs3/Yy3Zj4P7 ueSSZcbA5boeYM8haLyZS+6tB9e8mE5o1+WT33qT4LT2e/PhFQuL3R+Vcq/2oA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dR1jx3TzczCBb for ; Wed, 10 Dec 2025 03:41:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 35343 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 10 Dec 2025 03:41:57 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Rick Macklem Subject: git: c8180893d7fe - stable/14 - nfs_nfsdstate.c: Add sanity checks for lock stateids 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 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: c8180893d7fef8557d8f8cdd5945468be5023da2 Auto-Submitted: auto-generated Date: Wed, 10 Dec 2025 03:41:57 +0000 Message-Id: <6938ec05.35343.5e5f3f8a@gitrepo.freebsd.org> The branch stable/14 has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=c8180893d7fef8557d8f8cdd5945468be5023da2 commit c8180893d7fef8557d8f8cdd5945468be5023da2 Author: Rick Macklem AuthorDate: 2025-11-26 19:20:27 +0000 Commit: Rick Macklem CommitDate: 2025-12-10 03:40:53 +0000 nfs_nfsdstate.c: Add sanity checks for lock stateids Bugzilla PR reported a crash caused by a synthetic client doing a Lock operation request with a delegation stateid. This patch fixes the problem by adding sanity checks for the type of stateid provided as an argument to the Lock and LockU operations. It has been tested with the FreeBSD, Linux and Solaris 11.4 clients. Hopefully, other NFSv4 clients will work ok as well. PR: 291080 (cherry picked from commit aa1cf240887ddcca66dfb969fdc5a8d545396037) --- sys/fs/nfsserver/nfs_nfsdstate.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/sys/fs/nfsserver/nfs_nfsdstate.c b/sys/fs/nfsserver/nfs_nfsdstate.c index cca977b31e8e..ece924630514 100644 --- a/sys/fs/nfsserver/nfs_nfsdstate.c +++ b/sys/fs/nfsserver/nfs_nfsdstate.c @@ -1972,6 +1972,20 @@ tryagain: error = NFSERR_BADSTATEID; } + /* + * Sanity check the stateid for the Lock/LockU cases. + */ + if (error == 0 && (new_stp->ls_flags & NFSLCK_LOCK) != 0 && + (((new_stp->ls_flags & NFSLCK_OPENTOLOCK) != 0 && + (stp->ls_flags & NFSLCK_OPEN) == 0) || + ((new_stp->ls_flags & NFSLCK_OPENTOLOCK) == 0 && + (stp->ls_flags & NFSLCK_LOCK) == 0))) + error = NFSERR_BADSTATEID; + if (error == 0 && (new_stp->ls_flags & NFSLCK_UNLOCK) != 0 && + (stp->ls_flags & NFSLCK_LOCK) == 0) + error = NFSERR_BADSTATEID; + + /* Sanity check the delegation stateid. */ if (error == 0 && (stp->ls_flags & (NFSLCK_DELEGREAD | NFSLCK_DELEGWRITE)) && getlckret == 0 && stp->ls_lfp != lfp) From nobody Wed Dec 10 14:40:55 2025 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 4dRJLH46klz6KfQl for ; Wed, 10 Dec 2025 14:40: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRJLH2g3zz3D00 for ; Wed, 10 Dec 2025 14:40:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765377655; 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=3bGeY87NPbKW91LsvSqvYpMyd4MoXoBynJdLogIoAIg=; b=OF5+32QcdJPqn1ToR9J2+V/58++NNtoTZeYYLpfkdimRE65pBPOJhrvlpe/m3aPjNS21+h 19yJG2fbXmgFty0zQA0bv5JGwTxk+dPQ+s9lacXKT3aiOJhWGOQBs3EKK+femQIMIGSm+k uN/92rCWeMnMUyZ6H/EzT6NdqZvZTvMR5kwpcehezlXKlEb6/OayTKs5x7bUsfuR8tez+/ VW4MQHEeecGGvHMTVz7ghzZBcuu7t7ug2Mb9lZhIS58KBmXHRA8a32jo8eWVNpnfr/wAz+ 0xJq5fR8+YhnwvsFUqIgWvCsqrlqV05upWatq7tkaME9zJ0D/zbyzV3NDW8T5Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765377655; 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=3bGeY87NPbKW91LsvSqvYpMyd4MoXoBynJdLogIoAIg=; b=NcoBjisKs7PI6qCuX5QzA7Pm1U4lhnm9sTemOE7Lb+QdX0wjanEqkXt3AtWeA2hU/7T1/0 G1R+057dShgTEE6HaomhZuuoIWwz+yBXMMJpzMCFCbrSaauJgeAKt7JJhlD8mOEVyYiOrL 3pKBC+yO1+jcWYU273vmwNw2gw4j0o3exflPUm1TZ/GztQiWVl8j0EPKMkxvdP1H0PSyga kz2Z0eDSuVJu3VQkQcdNr0MWk5qxyNPMqqdNT8SNncwi6ooSE9XYleGtVjyYKUdeDG6Buf LoiDc/KaTLtdhMXqlaHXwWDzOfj2oP43Ay/Pz8Pnjflg4HaM9xNDCormVhw1Lw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765377655; a=rsa-sha256; cv=none; b=WCMXBqx3iP9KKwf+Q0eMH8EOg8/Ouxtj83oqnp6VttoIz1XrcWfRIVxiME0CkKvBPKfZKo N4hocNyCgp2GnxhRlePZ2j719AZxNUoLO+RfU81wL+m7uy4E4tAYfdJAvicONmal8nTxMU CYM8vRNuYw610T6fsh9Cvey3VQHalBpbf+sWMeI/qn8crzuYvh//90g0MBmMHodP2dH37Q VvCMv0JH9DRpIMGoiBbkOSLOCWpXfTgs7WPXgjwcVWITNyK9f7Zj4hyFxVmwOnlqE7tmGy YqL3IVWCjrxZqUd5n4GrKIwGefXQo0U/gvPEdu0h58x6I9huYZgj+1Wcz2klKw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dRJLH1zwDzpTr for ; Wed, 10 Dec 2025 14:40:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30956 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 10 Dec 2025 14:40:55 +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: ce1e7a7921b2 - stable/14 - certctl: Always copy bundle fragments 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 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: ce1e7a7921b27b82d8cda499058e685250cc695a Auto-Submitted: auto-generated Date: Wed, 10 Dec 2025 14:40:55 +0000 Message-Id: <69398677.30956.96cf66@gitrepo.freebsd.org> The branch stable/14 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=ce1e7a7921b27b82d8cda499058e685250cc695a commit ce1e7a7921b27b82d8cda499058e685250cc695a Author: Dag-Erling Smørgrav AuthorDate: 2025-12-10 14:40:22 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-12-10 14:40:22 +0000 certctl: Always copy bundle fragments When processing a bundle, we split it into individual certificates stored in temporary files, then pass the name of each temporary file to the creation function. Since the temporary files will later be deleted, we need to force the creation function to copy rather than symlink these files. PR: 290957 Fixes: 986c43bd80e7 ("certctl: Add an option to copy files.") Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D54081 --- usr.sbin/certctl/certctl.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/certctl/certctl.sh b/usr.sbin/certctl/certctl.sh index 2bde651de126..696bc4d6a176 100755 --- a/usr.sbin/certctl/certctl.sh +++ b/usr.sbin/certctl/certctl.sh @@ -197,7 +197,7 @@ do_scan() eolcvt "$CFILE" | egrep '^(---|[0-9A-Za-z/+=]+$)' | \ split -p '^-+BEGIN CERTIFICATE-+$' - "$SPLITDIR/x" for CERT in $(find "$SPLITDIR" -type f) ; do - "$CFUNC" "$CERT" + LINK=-c "$CFUNC" "$CERT" done rm -rf "$SPLITDIR" ;; From nobody Wed Dec 10 14:40:56 2025 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 4dRJLJ5lSNz6Kf8Y for ; Wed, 10 Dec 2025 14:40:56 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRJLJ3TDfz3D6r for ; Wed, 10 Dec 2025 14:40:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765377656; 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=3z/ZL7jKN2uEjZEzreJk9sO3Xyl/mET9W/ewnDgjOiU=; b=LjAvxnbR/lBScNtQjhVELme+p/NmAV07Kj8BkPblVCTZcLhhVCZz+ag0zF+Pbf1yDx/iYt P9CsNU2uloZg2T9D/UplWwFtcu/ZnAozbFeYYyhyI14zJ+Bc7she0WxVMF4vFVIwlgZIk4 NGLWxvti8OPTNWw/uFUFq1bWNTeqd4MFtOHhO2Y70JSuko9LtSNeewch1AxFDC+m+oBOUJ pjhpvBB/RJeQgRfH2SoCSucuvWipaF3OBLPpiHikRzTs+rztOw/QNCalKlGi0i++5irpHn GNKSLVLKsKTjrwZteSCQcGQuzFlibsQOfdX/7Rf0nPtF4ukLZjrS+8N48OzLQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765377656; 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=3z/ZL7jKN2uEjZEzreJk9sO3Xyl/mET9W/ewnDgjOiU=; b=vaVG4wQDaqKMfB5Lq8JKZ/DsLSSDcazzA7W8dCaBFk9p51gyRx8Xkma/RWw3iy6SLDNf21 5uGFD+m72fHWzhXElIXg3qN8Yoo9JfzfMDkJ4BbXiDoIl1MsZGpyCTmR54mH9fUJeJb5Bp Ydw1tU9OglmBVDioMxzom+/QLukq8pXBUuDo0R2gi0B00ebjHxVHXbfLjeJX8+d22VVbHN blF0PaD/jRJtInvzA+AHBhFq4OQq8fOinYmtjL75HSLXuhmteoFiutTIX6GRi6T4X6Wyvm QSI1vHzDMTSzA9pK6PFaaxf8jEvQSZ/D5W7/sCyLhXVV5N4hr5xgHHPNO8GhtA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765377656; a=rsa-sha256; cv=none; b=TYZhyakXnK82ABxJXkJMfZFYmmGlcKd5mgkEpbMHalOhGXojpgajtlZLEVmLR4K7sdxfWF dqDYBN+d3PcH6gxtg3d6/P9gACQVaTgJH0shAju0uCtUQ8TJccCk0rsqSrzTAJ0VidxGes JuU0CX16V763PJxc8oL6eKZdi66idoY4RSLrApdBMZLjchunUfdjG73kN3MPFkFglTSVvp vRdkQj29Qwv6upjehMkmiQBwFbkEIq4xuamIZrVwrdlytzqlyojrr8au4JP0gznLGoEXa9 G+zOZlAFjBbU5EUN3DUd5u3Hhw6W7NJixB08eMVRGsf9cvv3PRXDBo4m4MZq3w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dRJLJ2n08zq0G for ; Wed, 10 Dec 2025 14:40:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 31781 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 10 Dec 2025 14:40:56 +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: 7ad8cbab66f4 - stable/14 - certctl: Improve option processing 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 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: 7ad8cbab66f4db25be75e7a91c025a50bcab5dc2 Auto-Submitted: auto-generated Date: Wed, 10 Dec 2025 14:40:56 +0000 Message-Id: <69398678.31781.da915ce@gitrepo.freebsd.org> The branch stable/14 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=7ad8cbab66f4db25be75e7a91c025a50bcab5dc2 commit 7ad8cbab66f4db25be75e7a91c025a50bcab5dc2 Author: Dag-Erling Smørgrav AuthorDate: 2025-12-10 14:40:28 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-12-10 14:40:28 +0000 certctl: Improve option processing For subcommands that did not take any arguments, we never bothered to check that none were passed. Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D54082 --- usr.sbin/certctl/certctl.sh | 93 +++++++++++++++++++++++++++++++++++---------- 1 file changed, 72 insertions(+), 21 deletions(-) diff --git a/usr.sbin/certctl/certctl.sh b/usr.sbin/certctl/certctl.sh index 696bc4d6a176..bdca2d94ca8d 100755 --- a/usr.sbin/certctl/certctl.sh +++ b/usr.sbin/certctl/certctl.sh @@ -46,7 +46,7 @@ VERBOSE=false info() { - echo "${0##*/}: $@" >&2 + echo "${SCRIPTNAME}: $@" >&2 } verbose() @@ -228,6 +228,15 @@ do_list() cmd_rehash() { + local flag + + while getopts "" flag; do + case "$flag" in + *) usage ;; + esac + done + shift $((OPTIND - 1)) + [ $# -eq 0 ] || usage if [ -e "$CERTDESTDIR" ] ; then perform find "$CERTDESTDIR" \( -type f -or -type l \) -delete @@ -246,31 +255,59 @@ cmd_rehash() cmd_list() { + local flag + + while getopts "" flag; do + case "$flag" in + *) usage ;; + esac + done + shift $((OPTIND - 1)) + [ $# -eq 0 ] || usage + info "Listing Trusted Certificates:" do_list "$CERTDESTDIR" } cmd_untrust() { - local UTFILE + local flag filename + + while getopts "" flag; do + case "$flag" in + *) usage ;; + esac + done + shift $((OPTIND - 1)) + [ $# -gt 0 ] || usage - shift # verb perform install -d -m 0755 "$UNTRUSTDESTDIR" - for UTFILE in "$@"; do - info "Adding $UTFILE to untrusted list" - create_untrusted "$UTFILE" + for filename in "$@"; do + if [ -s "$filename" ] ; then + info "Adding $filename to untrusted list" + create_untrusted "$filename" + else + info "Cannot find $filename" + ERRORS=$((ERRORS + 1)) + fi done } cmd_trust() { - local UTFILE untrustedhash certhash hash + local flag filename untrustedhash certhash hash - shift # verb - for UTFILE in "$@"; do - if [ -s "$UTFILE" ] ; then - hash=$(do_hash "$UTFILE") - certhash=$(openssl x509 -sha1 -in "$UTFILE" -noout -fingerprint) + while getopts "" flag; do + case "$flag" in + *) usage ;; + esac + done + shift $((OPTIND - 1)) + [ $# -gt 0 ] || usage + for filename in "$@"; do + if [ -s "$filename" ] ; then + hash=$(do_hash "$filename") + certhash=$(openssl x509 -sha1 -in "$filename" -noout -fingerprint) for UNTRUSTEDFILE in $(find $UNTRUSTDESTDIR -name "$hash.*") ; do untrustedhash=$(openssl x509 -sha1 -in "$UNTRUSTEDFILE" -noout -fingerprint) if [ "$certhash" = "$untrustedhash" ] ; then @@ -278,11 +315,11 @@ cmd_trust() perform rm -f $UNTRUSTEDFILE fi done - elif [ -e "$UNTRUSTDESTDIR/$UTFILE" ] ; then - info "Removing $UTFILE from untrusted list" - perform rm -f "$UNTRUSTDESTDIR/$UTFILE" + elif [ -e "$UNTRUSTDESTDIR/$filename" ] ; then + info "Removing $filename from untrusted list" + perform rm -f "$UNTRUSTDESTDIR/$filename" else - info "Cannot find $UTFILE" + info "Cannot find $filename" ERRORS=$((ERRORS + 1)) fi done @@ -290,6 +327,16 @@ cmd_trust() cmd_untrusted() { + local flag + + while getopts "" flag; do + case "$flag" in + *) usage ;; + esac + done + shift $((OPTIND - 1)) + [ $# -eq 0 ] || usage + info "Listing Untrusted Certificates:" do_list "$UNTRUSTDESTDIR" } @@ -322,6 +369,7 @@ while getopts cD:d:M:nUv flag; do n) NOOP=true ;; U) UNPRIV=true ;; v) VERBOSE=true ;; + *) usage ;; esac done shift $((OPTIND - 1)) @@ -343,15 +391,18 @@ fi : ${UNTRUSTDESTDIR:=${DESTDIR}${DISTBASE}/etc/ssl/untrusted} [ $# -gt 0 ] || usage -case "$1" in -list) cmd_list ;; -rehash) cmd_rehash ;; +CMD=$1 +shift +OPTIND=1 +case "${CMD}" in +list) cmd_list "$@" ;; +rehash) cmd_rehash "$@" ;; blacklist) cmd_untrust "$@" ;; untrust) cmd_untrust "$@" ;; trust) cmd_trust "$@" ;; unblacklist) cmd_trust "$@" ;; -untrusted) cmd_untrusted ;; -blacklisted) cmd_untrusted ;; +untrusted) cmd_untrusted "$@" ;; +blacklisted) cmd_untrusted "$@" ;; *) usage # NOTREACHED esac From nobody Wed Dec 10 17:38:59 2025 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 4dRNHl6syVz6KtqD for ; Wed, 10 Dec 2025 17:38:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRNHl4FJNz3lVr for ; Wed, 10 Dec 2025 17:38:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765388339; 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=ZI9b4bfZiV4lG1zq8B6WZK1iHI1Mqlpv9tweZPlrMUM=; b=Vzcq79uYPBaTeopWFwxDsaJjywKH+pCN8Xd4lARHYfAaExYHZbHQv25+h0bWyN7rieJwvx csZ1ywvuPk0sr6jagbdx/M/e2Wtj49KlSlhjXWicYrYlYl6yCFbVVzAz6w9ia4WGYZLDAV iViZc0xL12uY2+Z+RSHYYzIOuRCQDTQs0TgxYl2A64bu7hQkI6auLGDGiz22e/yRWMQUGg g70bawUaHBIyTs0fFelsSkyPKm2vk0MUHA1n1Lmp52jI7Me/WqsacqTTTKfx6pU6UL4BDN aJRt7/lSzdmtA/AmGOhxw2jd7ff2RCanwKOBMjEOmlG7QCKN5M+Vc1A2od2/lA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765388339; 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=ZI9b4bfZiV4lG1zq8B6WZK1iHI1Mqlpv9tweZPlrMUM=; b=smwk56m64O0/NeZsWNeZu0KI7IrjrC5UzLknbyUVqayhFVs00HeUsEqfXwb22oPGmfVV8g t/mLMhTnIbnfsuIdGhbLnYcVTwn6WGRrRv3h2K1lPeRDBHz/4QnTKieniAWjWKDQDTIXnx rYqKlycAWqzrpR28DD2k7lyy9dMYh2lgYW05v6A2BLukbOCAjIr8aNd57hmntOGr2ISSFg JnqstRUEATIFt2oCsqRB9Hsj6LvKPoIZZ4IZpV21OqZgJt/JPxMj1yHNxkb0tbTvU9QXCy aldQnW0s/lGK1KKfTpyc/tI/rB0eys6NVRDNBI026y3Wmq9s8FD4VyTNy0axlg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765388339; a=rsa-sha256; cv=none; b=IrqxXmtIWImuQP72miimiVUdFZqyJhQg98khwFng48toR41PQXmc6kG1Have0AqBzJAdyE lOL5e6v4Y/8FSm0XPaTzN6e75qr1AKLzgYG7W8B1mtg3eRTUDOTHsWd2PkkeYggZQQcPyz 9fBzCRAfRk75K4O7EL89NleI/EVW1e10JbHfmHcNgt0XxPdRx0rHyiwYfPG83rbA05gChc 81NTo+g2RTogy2mMPWgXMOnWrrJDqLwyELPpvMTqva8BMcbA6Z3805fP5TJTcB9wL/bYDr J1arXVAN66Y0YMymSukxpnC6C54p2IiRxjrqyj7UVzHnynduxOQPXOJ9rYvhKg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dRNHl2qFgzvjF for ; Wed, 10 Dec 2025 17:38:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id a199 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 10 Dec 2025 17:38:59 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Bartosz Sobczak From: Krzysztof Galazka Subject: git: bb69c090b5b2 - stable/15 - irdma(4): fix potential memory leak on qhash cqp operation 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kgalazka X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: bb69c090b5b21ac243c5be2c5679114473c73b12 Auto-Submitted: auto-generated Date: Wed, 10 Dec 2025 17:38:59 +0000 Message-Id: <6939b033.a199.33fb60e6@gitrepo.freebsd.org> The branch stable/15 has been updated by kgalazka: URL: https://cgit.FreeBSD.org/src/commit/?id=bb69c090b5b21ac243c5be2c5679114473c73b12 commit bb69c090b5b21ac243c5be2c5679114473c73b12 Author: Bartosz Sobczak AuthorDate: 2025-11-24 18:41:41 +0000 Commit: Krzysztof Galazka CommitDate: 2025-12-10 17:20:56 +0000 irdma(4): fix potential memory leak on qhash cqp operation It was found that in some circumstances when launching non-waiting create qhash cqp operation the refcount on the cqp_request may be not properly decremented leading to a memory leak. Signed-off-by: Bartosz Sobczak Reviewed by: anzhu_netapp.com Tested by: mateusz.moga_intel.com Approved by: kbowling (mentor) Sponsored by: Intel Corporation Differential Revision: https://reviews.freebsd.org/D53732 (cherry picked from commit 7b6644e160ed63b633e7c68a3cacf2c71d216cd5) --- sys/dev/irdma/icrdma.c | 4 +- sys/dev/irdma/irdma_cm.c | 38 +------------ sys/dev/irdma/irdma_hw.c | 132 ++++++++++++++++++++++++++++++++++++--------- sys/dev/irdma/irdma_main.h | 3 +- 4 files changed, 114 insertions(+), 63 deletions(-) diff --git a/sys/dev/irdma/icrdma.c b/sys/dev/irdma/icrdma.c index 576a185b013f..a4f3904a820c 100644 --- a/sys/dev/irdma/icrdma.c +++ b/sys/dev/irdma/icrdma.c @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: GPL-2.0 or Linux-OpenIB * - * Copyright (c) 2021 - 2023 Intel Corporation + * Copyright (c) 2021 - 2025 Intel Corporation * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU @@ -52,7 +52,7 @@ /** * Driver version */ -char irdma_driver_version[] = "1.2.36-k"; +char irdma_driver_version[] = "1.2.37-k"; /** * irdma_init_tunable - prepare tunables diff --git a/sys/dev/irdma/irdma_cm.c b/sys/dev/irdma/irdma_cm.c index d4d4f328fb43..f3ca761b32f6 100644 --- a/sys/dev/irdma/irdma_cm.c +++ b/sys/dev/irdma/irdma_cm.c @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: GPL-2.0 or Linux-OpenIB * - * Copyright (c) 2015 - 2023 Intel Corporation + * Copyright (c) 2015 - 2025 Intel Corporation * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU @@ -1683,31 +1683,6 @@ irdma_get_vlan_ipv4(struct iw_cm_id *cm_id, u32 *addr) return vlan_id; } -static int -irdma_manage_qhash_wait(struct irdma_pci_f *rf, struct irdma_cm_info *cm_info) -{ - struct irdma_cqp_request *cqp_request = cm_info->cqp_request; - int cnt = rf->sc_dev.hw_attrs.max_cqp_compl_wait_time_ms * CQP_TIMEOUT_THRESHOLD; - u32 ret_val; - - if (!cqp_request) - return -ENOMEM; - do { - irdma_cqp_ce_handler(rf, &rf->ccq.sc_cq); - mdelay(1); - } while (!READ_ONCE(cqp_request->request_done) && --cnt); - - ret_val = cqp_request->compl_info.op_ret_val; - irdma_put_cqp_request(&rf->cqp, cqp_request); - if (cnt) { - if (!ret_val) - return 0; - return -EINVAL; - } - - return -ETIMEDOUT; -} - /** * irdma_add_mqh_ifa_cb - Adds multiple qhashes for IPv4/IPv6 * @arg: Calback argument structure from irdma_add_mqh @@ -1771,16 +1746,7 @@ irdma_add_mqh_ifa_cb(void *arg, struct ifaddr *ifa, u_int count) irdma_iw_get_vlan_prio(child_listen_node->loc_addr, cm_info->user_pri, cm_info->ipv4); - ret = irdma_manage_qhash(iwdev, cm_info, - IRDMA_QHASH_TYPE_TCP_SYN, - IRDMA_QHASH_MANAGE_TYPE_ADD, - NULL, false); - if (ret) { - kfree(child_listen_node); - return ret; - } - /* wait for qhash finish */ - ret = irdma_manage_qhash_wait(iwdev->rf, cm_info); + ret = irdma_add_qhash_wait_no_lock(iwdev, cm_info); if (ret) { kfree(child_listen_node); return ret; diff --git a/sys/dev/irdma/irdma_hw.c b/sys/dev/irdma/irdma_hw.c index 05004b1ccc83..64c05b8663e0 100644 --- a/sys/dev/irdma/irdma_hw.c +++ b/sys/dev/irdma/irdma_hw.c @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: GPL-2.0 or Linux-OpenIB * - * Copyright (c) 2015 - 2023 Intel Corporation + * Copyright (c) 2015 - 2025 Intel Corporation * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU @@ -2581,35 +2581,22 @@ irdma_send_syn_cqp_callback(struct irdma_cqp_request *cqp_request) } /** - * irdma_manage_qhash - add or modify qhash + * irdma_qhash_info_prepare - fill info for qhash op * @iwdev: irdma device + * @cqp_info: cqp info * @cminfo: cm info for qhash * @etype: type (syn or quad) * @mtype: type of qhash - * @cmnode: cmnode associated with connection - * @wait: wait for completion */ -int -irdma_manage_qhash(struct irdma_device *iwdev, struct irdma_cm_info *cminfo, - enum irdma_quad_entry_type etype, - enum irdma_quad_hash_manage_type mtype, void *cmnode, - bool wait) +static void +irdma_qhash_info_prepare(struct irdma_device *iwdev, + struct cqp_cmds_info *cqp_info, + struct irdma_cm_info *cminfo, + enum irdma_quad_entry_type etype, + enum irdma_quad_hash_manage_type mtype) { struct irdma_qhash_table_info *info; - struct irdma_cqp *iwcqp = &iwdev->rf->cqp; - struct irdma_cqp_request *cqp_request; - struct cqp_cmds_info *cqp_info; - struct irdma_cm_node *cm_node = cmnode; - int status; - - cqp_request = irdma_alloc_and_get_cqp_request(iwcqp, wait); - if (!cqp_request) - return -ENOMEM; - cminfo->cqp_request = cqp_request; - if (!wait) - atomic_inc(&cqp_request->refcnt); - cqp_info = &cqp_request->info; info = &cqp_info->in.u.manage_qhash_table_entry.info; memset(info, 0, sizeof(*info)); info->vsi = &iwdev->vsi; @@ -2641,6 +2628,105 @@ irdma_manage_qhash(struct irdma_device *iwdev, struct irdma_cm_info *cminfo, info->src_ip[2] = cminfo->rem_addr[2]; info->src_ip[3] = cminfo->rem_addr[3]; } + cqp_info->cqp_cmd = IRDMA_OP_MANAGE_QHASH_TABLE_ENTRY; + cqp_info->post_sq = 1; +} + +/** + * irdma_add_qhash_wait_no_lock - add qhash, blocking w/o lock + * @iwdev: irdma device + * @cminfo: cm info for qhash + */ +int +irdma_add_qhash_wait_no_lock(struct irdma_device *iwdev, + struct irdma_cm_info *cminfo) +{ + struct irdma_qhash_table_info *info; + struct irdma_cqp *iwcqp = &iwdev->rf->cqp; + struct irdma_cqp_request *cqp_request; + struct cqp_cmds_info *cqp_info; + int cnt = iwdev->rf->sc_dev.hw_attrs.max_cqp_compl_wait_time_ms * CQP_TIMEOUT_THRESHOLD; + int status; + int ret_val; + + cqp_request = irdma_alloc_and_get_cqp_request(iwcqp, false); + if (!cqp_request) + return -ENOMEM; + + cqp_info = &cqp_request->info; + info = &cqp_info->in.u.manage_qhash_table_entry.info; + irdma_qhash_info_prepare(iwdev, cqp_info, cminfo, IRDMA_QHASH_TYPE_TCP_SYN, + IRDMA_QHASH_MANAGE_TYPE_ADD); + if (info->ipv4_valid) + irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_CM, + "ADD caller: %pS loc_port=0x%04x rem_port=0x%04x loc_addr=%x rem_addr=%x mac=%x:%x:%x:%x:%x:%x, vlan_id=%d\n", + __builtin_return_address(0), info->src_port, + info->dest_port, info->src_ip[0], info->dest_ip[0], + info->mac_addr[0], info->mac_addr[1], + info->mac_addr[2], info->mac_addr[3], + info->mac_addr[4], info->mac_addr[5], + cminfo->vlan_id); + else + irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_CM, + "ADD caller: %pS loc_port=0x%04x rem_port=0x%04x loc_addr=%x:%x:%x:%x rem_addr=%x:%x:%x:%x mac=%x:%x:%x:%x:%x:%x, vlan_id=%d\n", + __builtin_return_address(0), info->src_port, + info->dest_port, IRDMA_PRINT_IP6(info->src_ip), + IRDMA_PRINT_IP6(info->dest_ip), info->mac_addr[0], + info->mac_addr[1], info->mac_addr[2], + info->mac_addr[3], info->mac_addr[4], + info->mac_addr[5], cminfo->vlan_id); + + cqp_info->in.u.manage_qhash_table_entry.cqp = &iwdev->rf->cqp.sc_cqp; + cqp_info->in.u.manage_qhash_table_entry.scratch = (uintptr_t)cqp_request; + status = irdma_handle_cqp_op(iwdev->rf, cqp_request); + if (status) { + irdma_put_cqp_request(iwcqp, cqp_request); + irdma_dev_warn(&iwdev->ibdev, "manage_qhash cqp op failure %d\n", status); + return status; + } + + do { + irdma_cqp_ce_handler(iwdev->rf, &iwdev->rf->ccq.sc_cq); + mdelay(1); + } while (!READ_ONCE(cqp_request->request_done) && --cnt); + + ret_val = cqp_request->compl_info.op_ret_val; + status = (cnt) ? ret_val : -ETIMEDOUT; + + irdma_put_cqp_request(iwcqp, cqp_request); + + return status; +} + +/** + * irdma_manage_qhash - add or modify qhash + * @iwdev: irdma device + * @cminfo: cm info for qhash + * @etype: type (syn or quad) + * @mtype: type of qhash + * @cmnode: cmnode associated with connection + * @wait: wait for completion + */ +int +irdma_manage_qhash(struct irdma_device *iwdev, struct irdma_cm_info *cminfo, + enum irdma_quad_entry_type etype, + enum irdma_quad_hash_manage_type mtype, void *cmnode, + bool wait) +{ + struct irdma_qhash_table_info *info; + struct irdma_cqp *iwcqp = &iwdev->rf->cqp; + struct irdma_cqp_request *cqp_request; + struct cqp_cmds_info *cqp_info; + struct irdma_cm_node *cm_node = cmnode; + int status; + + cqp_request = irdma_alloc_and_get_cqp_request(iwcqp, wait); + if (!cqp_request) + return -ENOMEM; + + cqp_info = &cqp_request->info; + info = &cqp_info->in.u.manage_qhash_table_entry.info; + irdma_qhash_info_prepare(iwdev, cqp_info, cminfo, etype, mtype); if (cmnode) { cqp_request->callback_fcn = irdma_send_syn_cqp_callback; cqp_request->param = cmnode; @@ -2671,8 +2757,6 @@ irdma_manage_qhash(struct irdma_device *iwdev, struct irdma_cm_info *cminfo, cqp_info->in.u.manage_qhash_table_entry.cqp = &iwdev->rf->cqp.sc_cqp; cqp_info->in.u.manage_qhash_table_entry.scratch = (uintptr_t)cqp_request; - cqp_info->cqp_cmd = IRDMA_OP_MANAGE_QHASH_TABLE_ENTRY; - cqp_info->post_sq = 1; status = irdma_handle_cqp_op(iwdev->rf, cqp_request); if (status && cm_node && !wait) irdma_rem_ref_cm_node(cm_node); diff --git a/sys/dev/irdma/irdma_main.h b/sys/dev/irdma/irdma_main.h index 5b292ceafea8..9181f3b70463 100644 --- a/sys/dev/irdma/irdma_main.h +++ b/sys/dev/irdma/irdma_main.h @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: GPL-2.0 or Linux-OpenIB * - * Copyright (c) 2015 - 2023 Intel Corporation + * Copyright (c) 2015 - 2025 Intel Corporation * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU @@ -563,6 +563,7 @@ int irdma_manage_qhash(struct irdma_device *iwdev, struct irdma_cm_info *cminfo, enum irdma_quad_entry_type etype, enum irdma_quad_hash_manage_type mtype, void *cmnode, bool wait); +int irdma_add_qhash_wait_no_lock(struct irdma_device *iwdev, struct irdma_cm_info *cminfo); void irdma_receive_ilq(struct irdma_sc_vsi *vsi, struct irdma_puda_buf *rbuf); void irdma_free_sqbuf(struct irdma_sc_vsi *vsi, void *bufp); void irdma_free_qp_rsrc(struct irdma_qp *iwqp); From nobody Wed Dec 10 17:46:29 2025 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 4dRNSQ2m5Gz6KvK3 for ; Wed, 10 Dec 2025 17: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRNSP6Wk5z3m2w for ; Wed, 10 Dec 2025 17:46:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765388789; 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=UUXi541RH7rqRhYYG6bFbQSExCfj3Qa8vwOXGghE6A8=; b=B5ZbufLc2WlF47FK42y3EguTdHcIIeDFfd0gyH9F6uJP37LVBgmZWTbGNJzCPoACO6fzYW z7UPW0V+X6ZI72Zq8hl2+IX3cW9Cbix1BlD4lTmPzRtsOXvu79hBqqFnUT3RFxj/tO4iSC J19Ic515wjxNpGjCfCmkfqfz01m36rbmj5v0WKay5hScrwT7RE56f6ODAIXosDVis/+oFg sZXavy6rA6hY3m9oMapS2DDG7KpVI6Ja1IQQ5L/6XtnVh+Wv/5MFB1KMa9lFhfu9PeiKNG aCK+qcZltihJgtKUL1XpNFm9SW3NV1NeGrHYaEWGLxndTfqdXzGu3pAbbJa+6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765388789; 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=UUXi541RH7rqRhYYG6bFbQSExCfj3Qa8vwOXGghE6A8=; b=JISegfUEKgNX2xC5r2ljjkAvs5AbIrlEf6HcVHagTwS9DMYUF0S00ACiQ4SwraA3BR7SgZ xh/U10ERmf0nlnMWWpn2m10KseTRBXd8pTwv3d/FePE1Mf59UzjaMQuG8W/42CsDB6gISb 2kjF1Ka0jhOVgkEOFICnR+bsjOqbUqAy+d5E/Yds1jIk4avsBVjFlZcaMQ9YuPoKgJCr6P cjsoQTWoJO07SDehIoy2CsAQnzcX+mDJ6gKRacbRozWCFWdgpKyrsd6+dmxSEoOcEMZi1n 01ahrQmDrjByFqgYrCaQZ3RrTxL2NXsMfLZnBfrAkhfYwO2iJffdlsGkk6NG5Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765388789; a=rsa-sha256; cv=none; b=qKmJfCmCxZHxkE5TgZKM3XQpZ2xRpnnht7TqYr7/45YNZQ8B94q5Dn6BduwGwZOJBMkQG2 uxghuCSkTYNH/acaTdF3YS9jboqeYXowk11UWwRKCdUaFA5ZjhQPZidHo5TuaO4sj8Uyc4 IsrHdjwOcs3MYkivM31khl2zRtS1CZ3hBlHq9opveasJ7/+jy+1AFrNfz7Sy9rVnYzqEQp Nyn9r5k4n+UGWC0ZDmd9+BYSLlt7ycfZw96XIg97dM8bAALC6/7z/RKkYVpLYlp7nqOwlt Lf45PECOVWbtdK2/rtd1aVux5bAlmjQRP4T0feEwrpMHK3wRcKFYBzh1xAbBbg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dRNSP5rw7zvvs for ; Wed, 10 Dec 2025 17:46:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id bec0 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 10 Dec 2025 17:46:29 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Bartosz Sobczak From: Krzysztof Galazka Subject: git: 17bc0155cbc2 - stable/14 - irdma(4): fix potential memory leak on qhash cqp operation 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kgalazka X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 17bc0155cbc215683be997045cda44d3a7662014 Auto-Submitted: auto-generated Date: Wed, 10 Dec 2025 17:46:29 +0000 Message-Id: <6939b1f5.bec0.4ddd6412@gitrepo.freebsd.org> The branch stable/14 has been updated by kgalazka: URL: https://cgit.FreeBSD.org/src/commit/?id=17bc0155cbc215683be997045cda44d3a7662014 commit 17bc0155cbc215683be997045cda44d3a7662014 Author: Bartosz Sobczak AuthorDate: 2025-11-24 18:41:41 +0000 Commit: Krzysztof Galazka CommitDate: 2025-12-10 17:39:44 +0000 irdma(4): fix potential memory leak on qhash cqp operation It was found that in some circumstances when launching non-waiting create qhash cqp operation the refcount on the cqp_request may be not properly decremented leading to a memory leak. Signed-off-by: Bartosz Sobczak Reviewed by: anzhu_netapp.com Tested by: mateusz.moga_intel.com Approved by: kbowling (mentor) Sponsored by: Intel Corporation Differential Revision: https://reviews.freebsd.org/D53732 (cherry picked from commit 7b6644e160ed63b633e7c68a3cacf2c71d216cd5) --- sys/dev/irdma/icrdma.c | 4 +- sys/dev/irdma/irdma_cm.c | 38 +------------ sys/dev/irdma/irdma_hw.c | 132 ++++++++++++++++++++++++++++++++++++--------- sys/dev/irdma/irdma_main.h | 3 +- 4 files changed, 114 insertions(+), 63 deletions(-) diff --git a/sys/dev/irdma/icrdma.c b/sys/dev/irdma/icrdma.c index 576a185b013f..a4f3904a820c 100644 --- a/sys/dev/irdma/icrdma.c +++ b/sys/dev/irdma/icrdma.c @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: GPL-2.0 or Linux-OpenIB * - * Copyright (c) 2021 - 2023 Intel Corporation + * Copyright (c) 2021 - 2025 Intel Corporation * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU @@ -52,7 +52,7 @@ /** * Driver version */ -char irdma_driver_version[] = "1.2.36-k"; +char irdma_driver_version[] = "1.2.37-k"; /** * irdma_init_tunable - prepare tunables diff --git a/sys/dev/irdma/irdma_cm.c b/sys/dev/irdma/irdma_cm.c index 167e3c67390c..07f84040c442 100644 --- a/sys/dev/irdma/irdma_cm.c +++ b/sys/dev/irdma/irdma_cm.c @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: GPL-2.0 or Linux-OpenIB * - * Copyright (c) 2015 - 2023 Intel Corporation + * Copyright (c) 2015 - 2025 Intel Corporation * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU @@ -1683,31 +1683,6 @@ irdma_get_vlan_ipv4(struct iw_cm_id *cm_id, u32 *addr) return vlan_id; } -static int -irdma_manage_qhash_wait(struct irdma_pci_f *rf, struct irdma_cm_info *cm_info) -{ - struct irdma_cqp_request *cqp_request = cm_info->cqp_request; - int cnt = rf->sc_dev.hw_attrs.max_cqp_compl_wait_time_ms * CQP_TIMEOUT_THRESHOLD; - u32 ret_val; - - if (!cqp_request) - return -ENOMEM; - do { - irdma_cqp_ce_handler(rf, &rf->ccq.sc_cq); - mdelay(1); - } while (!READ_ONCE(cqp_request->request_done) && --cnt); - - ret_val = cqp_request->compl_info.op_ret_val; - irdma_put_cqp_request(&rf->cqp, cqp_request); - if (cnt) { - if (!ret_val) - return 0; - return -EINVAL; - } - - return -ETIMEDOUT; -} - /** * irdma_add_mqh_ifa_cb - Adds multiple qhashes for IPv4/IPv6 * @arg: Calback argument structure from irdma_add_mqh @@ -1771,16 +1746,7 @@ irdma_add_mqh_ifa_cb(void *arg, struct ifaddr *ifa, u_int count) irdma_iw_get_vlan_prio(child_listen_node->loc_addr, cm_info->user_pri, cm_info->ipv4); - ret = irdma_manage_qhash(iwdev, cm_info, - IRDMA_QHASH_TYPE_TCP_SYN, - IRDMA_QHASH_MANAGE_TYPE_ADD, - NULL, false); - if (ret) { - kfree(child_listen_node); - return ret; - } - /* wait for qhash finish */ - ret = irdma_manage_qhash_wait(iwdev->rf, cm_info); + ret = irdma_add_qhash_wait_no_lock(iwdev, cm_info); if (ret) { kfree(child_listen_node); return ret; diff --git a/sys/dev/irdma/irdma_hw.c b/sys/dev/irdma/irdma_hw.c index 05004b1ccc83..64c05b8663e0 100644 --- a/sys/dev/irdma/irdma_hw.c +++ b/sys/dev/irdma/irdma_hw.c @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: GPL-2.0 or Linux-OpenIB * - * Copyright (c) 2015 - 2023 Intel Corporation + * Copyright (c) 2015 - 2025 Intel Corporation * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU @@ -2581,35 +2581,22 @@ irdma_send_syn_cqp_callback(struct irdma_cqp_request *cqp_request) } /** - * irdma_manage_qhash - add or modify qhash + * irdma_qhash_info_prepare - fill info for qhash op * @iwdev: irdma device + * @cqp_info: cqp info * @cminfo: cm info for qhash * @etype: type (syn or quad) * @mtype: type of qhash - * @cmnode: cmnode associated with connection - * @wait: wait for completion */ -int -irdma_manage_qhash(struct irdma_device *iwdev, struct irdma_cm_info *cminfo, - enum irdma_quad_entry_type etype, - enum irdma_quad_hash_manage_type mtype, void *cmnode, - bool wait) +static void +irdma_qhash_info_prepare(struct irdma_device *iwdev, + struct cqp_cmds_info *cqp_info, + struct irdma_cm_info *cminfo, + enum irdma_quad_entry_type etype, + enum irdma_quad_hash_manage_type mtype) { struct irdma_qhash_table_info *info; - struct irdma_cqp *iwcqp = &iwdev->rf->cqp; - struct irdma_cqp_request *cqp_request; - struct cqp_cmds_info *cqp_info; - struct irdma_cm_node *cm_node = cmnode; - int status; - - cqp_request = irdma_alloc_and_get_cqp_request(iwcqp, wait); - if (!cqp_request) - return -ENOMEM; - cminfo->cqp_request = cqp_request; - if (!wait) - atomic_inc(&cqp_request->refcnt); - cqp_info = &cqp_request->info; info = &cqp_info->in.u.manage_qhash_table_entry.info; memset(info, 0, sizeof(*info)); info->vsi = &iwdev->vsi; @@ -2641,6 +2628,105 @@ irdma_manage_qhash(struct irdma_device *iwdev, struct irdma_cm_info *cminfo, info->src_ip[2] = cminfo->rem_addr[2]; info->src_ip[3] = cminfo->rem_addr[3]; } + cqp_info->cqp_cmd = IRDMA_OP_MANAGE_QHASH_TABLE_ENTRY; + cqp_info->post_sq = 1; +} + +/** + * irdma_add_qhash_wait_no_lock - add qhash, blocking w/o lock + * @iwdev: irdma device + * @cminfo: cm info for qhash + */ +int +irdma_add_qhash_wait_no_lock(struct irdma_device *iwdev, + struct irdma_cm_info *cminfo) +{ + struct irdma_qhash_table_info *info; + struct irdma_cqp *iwcqp = &iwdev->rf->cqp; + struct irdma_cqp_request *cqp_request; + struct cqp_cmds_info *cqp_info; + int cnt = iwdev->rf->sc_dev.hw_attrs.max_cqp_compl_wait_time_ms * CQP_TIMEOUT_THRESHOLD; + int status; + int ret_val; + + cqp_request = irdma_alloc_and_get_cqp_request(iwcqp, false); + if (!cqp_request) + return -ENOMEM; + + cqp_info = &cqp_request->info; + info = &cqp_info->in.u.manage_qhash_table_entry.info; + irdma_qhash_info_prepare(iwdev, cqp_info, cminfo, IRDMA_QHASH_TYPE_TCP_SYN, + IRDMA_QHASH_MANAGE_TYPE_ADD); + if (info->ipv4_valid) + irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_CM, + "ADD caller: %pS loc_port=0x%04x rem_port=0x%04x loc_addr=%x rem_addr=%x mac=%x:%x:%x:%x:%x:%x, vlan_id=%d\n", + __builtin_return_address(0), info->src_port, + info->dest_port, info->src_ip[0], info->dest_ip[0], + info->mac_addr[0], info->mac_addr[1], + info->mac_addr[2], info->mac_addr[3], + info->mac_addr[4], info->mac_addr[5], + cminfo->vlan_id); + else + irdma_debug(&iwdev->rf->sc_dev, IRDMA_DEBUG_CM, + "ADD caller: %pS loc_port=0x%04x rem_port=0x%04x loc_addr=%x:%x:%x:%x rem_addr=%x:%x:%x:%x mac=%x:%x:%x:%x:%x:%x, vlan_id=%d\n", + __builtin_return_address(0), info->src_port, + info->dest_port, IRDMA_PRINT_IP6(info->src_ip), + IRDMA_PRINT_IP6(info->dest_ip), info->mac_addr[0], + info->mac_addr[1], info->mac_addr[2], + info->mac_addr[3], info->mac_addr[4], + info->mac_addr[5], cminfo->vlan_id); + + cqp_info->in.u.manage_qhash_table_entry.cqp = &iwdev->rf->cqp.sc_cqp; + cqp_info->in.u.manage_qhash_table_entry.scratch = (uintptr_t)cqp_request; + status = irdma_handle_cqp_op(iwdev->rf, cqp_request); + if (status) { + irdma_put_cqp_request(iwcqp, cqp_request); + irdma_dev_warn(&iwdev->ibdev, "manage_qhash cqp op failure %d\n", status); + return status; + } + + do { + irdma_cqp_ce_handler(iwdev->rf, &iwdev->rf->ccq.sc_cq); + mdelay(1); + } while (!READ_ONCE(cqp_request->request_done) && --cnt); + + ret_val = cqp_request->compl_info.op_ret_val; + status = (cnt) ? ret_val : -ETIMEDOUT; + + irdma_put_cqp_request(iwcqp, cqp_request); + + return status; +} + +/** + * irdma_manage_qhash - add or modify qhash + * @iwdev: irdma device + * @cminfo: cm info for qhash + * @etype: type (syn or quad) + * @mtype: type of qhash + * @cmnode: cmnode associated with connection + * @wait: wait for completion + */ +int +irdma_manage_qhash(struct irdma_device *iwdev, struct irdma_cm_info *cminfo, + enum irdma_quad_entry_type etype, + enum irdma_quad_hash_manage_type mtype, void *cmnode, + bool wait) +{ + struct irdma_qhash_table_info *info; + struct irdma_cqp *iwcqp = &iwdev->rf->cqp; + struct irdma_cqp_request *cqp_request; + struct cqp_cmds_info *cqp_info; + struct irdma_cm_node *cm_node = cmnode; + int status; + + cqp_request = irdma_alloc_and_get_cqp_request(iwcqp, wait); + if (!cqp_request) + return -ENOMEM; + + cqp_info = &cqp_request->info; + info = &cqp_info->in.u.manage_qhash_table_entry.info; + irdma_qhash_info_prepare(iwdev, cqp_info, cminfo, etype, mtype); if (cmnode) { cqp_request->callback_fcn = irdma_send_syn_cqp_callback; cqp_request->param = cmnode; @@ -2671,8 +2757,6 @@ irdma_manage_qhash(struct irdma_device *iwdev, struct irdma_cm_info *cminfo, cqp_info->in.u.manage_qhash_table_entry.cqp = &iwdev->rf->cqp.sc_cqp; cqp_info->in.u.manage_qhash_table_entry.scratch = (uintptr_t)cqp_request; - cqp_info->cqp_cmd = IRDMA_OP_MANAGE_QHASH_TABLE_ENTRY; - cqp_info->post_sq = 1; status = irdma_handle_cqp_op(iwdev->rf, cqp_request); if (status && cm_node && !wait) irdma_rem_ref_cm_node(cm_node); diff --git a/sys/dev/irdma/irdma_main.h b/sys/dev/irdma/irdma_main.h index 5b292ceafea8..9181f3b70463 100644 --- a/sys/dev/irdma/irdma_main.h +++ b/sys/dev/irdma/irdma_main.h @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: GPL-2.0 or Linux-OpenIB * - * Copyright (c) 2015 - 2023 Intel Corporation + * Copyright (c) 2015 - 2025 Intel Corporation * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU @@ -563,6 +563,7 @@ int irdma_manage_qhash(struct irdma_device *iwdev, struct irdma_cm_info *cminfo, enum irdma_quad_entry_type etype, enum irdma_quad_hash_manage_type mtype, void *cmnode, bool wait); +int irdma_add_qhash_wait_no_lock(struct irdma_device *iwdev, struct irdma_cm_info *cminfo); void irdma_receive_ilq(struct irdma_sc_vsi *vsi, struct irdma_puda_buf *rbuf); void irdma_free_sqbuf(struct irdma_sc_vsi *vsi, void *bufp); void irdma_free_qp_rsrc(struct irdma_qp *iwqp); From nobody Wed Dec 10 18:05:56 2025 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 4dRNtr55Qjz6KwJd for ; Wed, 10 Dec 2025 18:05:56 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRNtr4f7Gz3ntH for ; Wed, 10 Dec 2025 18:05:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765389956; 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=tGrBjQksLnrxMzvHS7B3TfCJMC1v8f5LwqqzOt+SG5U=; b=Fe26T97i7q+dhUZmlgxQfGs0gbxk1VLa8c5xiUUgGx/c7b9pBRrV6Gx+4hdZ4sGKdv3ETY qW52e1ITRJB8HqNR+ADHHu/C3/Q2tnl3Rh8gVnx+YlPL4FS+MifV1gqsias7ckmuAfgrQ4 vQy65kHN77Z+OZoXA0AN3c0MPXs/5qw4gVC0nwXwoSjvvU2pnq8lIKjYJg8M+rqUs+aazl T1FhYdU+kdsDaLOjSt4eQzY8SCdo6VHazvvsz2TFvP2hg20W+lX6hZkdyKnahQCGEwOFkl vcOyhDHBJXWZxfAoEoE7CueoPW13GIk0Bn7vHT/dw9yF2jxiG/vxYvTw1l/oLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765389956; 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=tGrBjQksLnrxMzvHS7B3TfCJMC1v8f5LwqqzOt+SG5U=; b=tkaZ67eB2QwNnNoqyMcqzv2KgT2rVHVqDORRiFaLDFEjTMdMzml9K9Q4owzTf0OhCcwY+b zhYQg8Vll6hrDbNPZAXe3U88oPsMYrNDDHnwxewI79fh8gFwUatN7GbOVFxwc+BDZWg1VH 5dvySe9yHro7foXHE2UvBkEtR39brRmIluBhTb3DrETJ5u48VshtESfqcTu3orwbi6epJk d9pN6CjLagrVe8h4H8LEcPeRmkHdvyIDe2Iy5Pf3VnGWjiI70onXMllR8FGRYqfanB73bn z2d4nbcCKaUj9e6xfOkjh3R2GbYAZDosUCV0EL2SJbEUFcLUGeu6U+fOoJclIA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765389956; a=rsa-sha256; cv=none; b=Asz7JKrjbdJ82cGZn4h1rdTcvMXU8SCGHKhkAfJOZK7ZsfTbihqHW4F1pvIu4CigPiMcTh 7mnbjiTrqxVaW5yHGw3BGG69LU2zoHd91giQlCwTlLpUajNxOu3dWDER0ZEbkRv1z/GV4i mfL+8uWyF1924Xo78z7mLqGfGEeu/9CBzAWC0YIpcB7cazah3kuCR7ydtDRy8n1ziXqTCR xFWbb6CVEJXEtkjqCDvDs5jYhweSQqCCEG/xD5g7uIfHRVcss5XaiFoLqzkBP7/UNLCYVb TztMU8xzsdasIUfWjnR/r9reH61SPOIg7LpGmyBgNZPtmzENh2FnPRDz8bYSMA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dRNtr3NcMzwB3 for ; Wed, 10 Dec 2025 18:05:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id b952 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 10 Dec 2025 18:05:56 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 23aaa07e6da6 - stable/15 - Makefile.inc1: Force NO_ROOT for distribute* and package* 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 23aaa07e6da6c2125a8f7bfc15966d34c5ed7340 Auto-Submitted: auto-generated Date: Wed, 10 Dec 2025 18:05:56 +0000 Message-Id: <6939b684.b952.4b0a1bbc@gitrepo.freebsd.org> The branch stable/15 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=23aaa07e6da6c2125a8f7bfc15966d34c5ed7340 commit 23aaa07e6da6c2125a8f7bfc15966d34c5ed7340 Author: Ed Maste AuthorDate: 2024-12-11 13:50:55 +0000 Commit: Ed Maste CommitDate: 2025-12-10 18:05:09 +0000 Makefile.inc1: Force NO_ROOT for distribute* and package* These targets are used to produce legacy dist sets for install media and now always use NO_ROOT mode. Extend existing logic that forces NO_ROOT mode to these cases to ensure they do not run in the wrong mode. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D50551 (cherry picked from commit 300aa267efaa08564337797e89590737a7cc6af0) --- Makefile.inc1 | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index 6ef7bdf101f7..2c4a73c5c743 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -198,13 +198,18 @@ _GCC_BROKEN=boot code linker script issues. .endif .if ${.MAKE.OS} != "FreeBSD" -CROSSBUILD_HOST=${.MAKE.OS} +CROSSBUILD_HOST=${.MAKE.OS} # Unset for native FreeBSD builds .if ${.MAKE.OS} != "Linux" && ${.MAKE.OS} != "Darwin" .warning Unsupported crossbuild system: ${.MAKE.OS}. Build will probably fail! .endif +.endif # We need to force NO_ROOT/DB_FROM_SRC builds when building on other operating # systems since the BSD.foo.dist specs contain users and groups that do not -# exist by default on a Linux/MacOS system. +# exist by default on a Linux/MacOS system. The distribute* and package* +# targets used for install media legacy distribution sets also always use and +# require NO_ROOT mode. +.if defined(CROSSBUILD_HOST) || make(distributeworld) || make(packageworld) || \ + make(distributekernel) || make(packagekernel) NO_ROOT:= 1 DB_FROM_SRC:= 1 .export NO_ROOT From nobody Wed Dec 10 19:58:37 2025 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 4dRRKV3kmbz6L3Z2 for ; Wed, 10 Dec 2025 19:55:42 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-qv1-f44.google.com (mail-qv1-f44.google.com [209.85.219.44]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRRKT200pz440Y for ; Wed, 10 Dec 2025 19:55:41 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=freebsd.org (policy=none); spf=pass (mx1.freebsd.org: domain of adrian.chadd@gmail.com designates 209.85.219.44 as permitted sender) smtp.mailfrom=adrian.chadd@gmail.com Received: by mail-qv1-f44.google.com with SMTP id 6a1803df08f44-8845498be17so2898336d6.3 for ; Wed, 10 Dec 2025 11:55:41 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765396540; x=1766001340; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=5BwU0yQmPLpETzCf0XVhTT5cccgp09puoUenOj/cj80=; b=nEtHU7vV9Y8hxSwPTY1eRAuNM9jlNLmt66y7rC+umBajuHqtu7cG8lZ3hlWcnd1L8M L4xvoUSXAlnTd7zC6vBX8QCRD8iZ7ZqGrfXMJ4BSpRFCJX1LYu+8MGcrLCrJGpW+wjrC ST+f/U1voiWIl/KopqQPgEkSqe96A4/2pGsXvprPnsmAxdnwTCdp6vQBnKJJmJ6rRkDb w4RUQVUnm7HzotbhOodEfNuVL7lgT2XAW0jvI/ehbDEvfEF8WBzIJmRh4mI+lGC+Yqmr mSBSzYFuOcyx73WjmIB1TyNRKcDpnL38Q3V5wOKNGFf2ZD8OhV2O1Yuh3P8DwK/6KpRV sv0g== X-Forwarded-Encrypted: i=1; AJvYcCX+hzGBM4WVreA5QJ1vxoc9BA/Kdj0gW3jetgFo/qVkQhWAwpViVgUo4iC4L48EETkiLZCc+TBGDmdFRDrsizYrCM1pcvocxDI=@freebsd.org X-Gm-Message-State: AOJu0Ywh2hwtfHcled7zhAark9ppECtImz1xLwUS3SnpWXLvnoyRZ00M EPXHvfRvSSEonoEaUf7IrpgLTgwseD2VGlbj8V+89vJLbPRcOB3W5wrf0NQd4TAjl7rfpePU241 NFlKQQP9VreMjuHuWcpKgwxQGTm+gIk0= X-Gm-Gg: ASbGncsiZnJ5vAtCtPjEMifFvGGVOZTDfrizaBHxgby38IVwqxBeOLkNzq6HfPqTe2g ytElkdU3dHquGzySiuuBRlkCBdy5bIrbouWwL3gf4IsuNUwRY3g/Q3MzeH12zqsWOGp9rmhZuOF WS7tC4qhrY6r4EbjvO08bo9l3bR4Ksk0o2kTyOAGCRaVcaY+3DRgJqN4mge2ijfwkJTTCbTw1pM ELiBKiI+DQMYw8XanUIiU82ZOFs/K7A43C+UJOLbWzW3WuATHzv+lhc5hLsQWrUn8tQEoCDmikI Jh7cx1q3jsLu+V7zjPcpIYeftYadJA== X-Google-Smtp-Source: AGHT+IGesaom4jwqdl1lJzOZtwSIOkAFZR6KCttn1QxuZ7UnICQZioYV+H7dtnagMHXuGIQIWXYGbM+5CNOiFmv/uC8= X-Received: by 2002:ac8:5708:0:b0:4ee:2312:6059 with SMTP id d75a77b69052e-4f1b19d337amr54205271cf.19.1765396539883; Wed, 10 Dec 2025 11:55:39 -0800 (PST) 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 MIME-Version: 1.0 References: <693750e9.387bb.3a5268c@gitrepo.freebsd.org> <629adec7-02e8-47d2-9ceb-65d0b11589b2@FreeBSD.org> In-Reply-To: <629adec7-02e8-47d2-9ceb-65d0b11589b2@FreeBSD.org> From: Adrian Chadd Date: Wed, 10 Dec 2025 11:58:37 -0800 X-Gm-Features: AQt7F2qSRmKFLuOSQdDcDpvZeBzccPy-JKWt5TfWNfR60302_5Tq2MbVuODnjmY Message-ID: Subject: Re: git: 5287dd47b5b6 - stable/14 - linuxkpi: add stub implementation of pm_vt_switch_(un)register To: Austin Shafer Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-branches@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.52 / 15.00]; NEURAL_HAM_LONG(-1.00)[-0.999]; NEURAL_HAM_SHORT(-0.99)[-0.994]; NEURAL_HAM_MEDIUM(-0.63)[-0.627]; FORGED_SENDER(0.30)[adrian@freebsd.org,adrianchadd@gmail.com]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17:c]; MIME_GOOD(-0.10)[text/plain]; DMARC_POLICY_SOFTFAIL(0.10)[freebsd.org : SPF not aligned (relaxed), No valid DKIM,none]; FREEMAIL_ENVFROM(0.00)[gmail.com]; TO_DN_SOME(0.00)[]; ARC_NA(0.00)[]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.85.219.44:from]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; MIME_TRACE(0.00)[0:+]; RCVD_COUNT_ONE(0.00)[1]; R_DKIM_NA(0.00)[]; MLMMJ_DEST(0.00)[dev-commits-src-branches@freebsd.org]; RCVD_IN_DNSWL_NONE(0.00)[209.85.219.44:from]; FROM_NEQ_ENVFROM(0.00)[adrian@freebsd.org,adrianchadd@gmail.com]; FROM_HAS_DN(0.00)[]; MISSING_XM_UA(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[dev-commits-src-branches@freebsd.org]; TAGGED_FROM(0.00)[]; RCVD_TLS_LAST(0.00)[]; RCPT_COUNT_THREE(0.00)[4] X-Rspamd-Queue-Id: 4dRRKT200pz440Y On Tue, 9 Dec 2025 at 07:27, Austin Shafer wrote: > > In the default behavior I believe it does. The reason for it is that > the VT switch path triggers the driver to save app contexts and video > memory and the like, so historically (on Linux too) having the VT > switch triggered that shared path to get things ready before doing > the suspend. > > I don't think I've tested with turning that off, I'm not sure exactly > why you'd want to. I haven't heard of that sysctl actually. I've been using it until recently because an i915 bug broke acceleration after VT switch out/switch back. -adrian From nobody Wed Dec 10 21:10:15 2025 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 4dRSzX3HHcz6JgMW for ; Wed, 10 Dec 2025 21:10: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRSzW6K32z4FGh for ; Wed, 10 Dec 2025 21:10:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765401015; 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=5U/LYlhmV9ASgzfHAK0kAeM29+2W78ryY1GkRoXgqlg=; b=wo9NtKNUNITGB6CxEsqdK+LHZErTJ8VAsuEdxglMmq9hys4imhlLJ+6w8JB8gQ2PyYRyyJ YQjz/sAQ8HXVWFzxtd5//LNn0oT4ZLs0r1QdqZx9GuixlAzdCHP40U0tqvgxc22SN0y9GF oGQzoJBFzsUqGr7qg1mMnL8Q6Nulc4t83GLpQJQEZuRfimPuF8soJ6+ePJFdCAFZDL4p// 1W3b+rmYpVFdUubBInjpPLLh6Io9WTEO8A6lOi9E7QxXLjSiMYKkwNouTLMHXAjDRi26Kk UGxj8o2LaaoDlDORUqasQ5kvg9/74kGQV7IatcAYTxSpfkYaYYxPQvqGpQhEHg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765401015; 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=5U/LYlhmV9ASgzfHAK0kAeM29+2W78ryY1GkRoXgqlg=; b=xelpV4tTKUapH90iB2Z4yxr9mxZ0vtQ913uM3yex56cGzFe9pcG6mAYYf/jpjfLdKl4zXc av17UF+zBsQmRcgL0CCrCe+jQP8gQSLWmIALeW5uUrTFKOH/+ZybOHOB0NI+3u+vDSLHOU 2BDdx1r/gMjcvHvmfFW/thYRb9nfmc9nVYmjUibo3KyfKChkMIDUk8u7b4Zpd7jd7IWls8 HS1238L8LdUgt6nIOOOOHJu9BzPFFwq280s3nWBqSg5Ifx+/mXfDhBc5PYV6BVjbQks2Ok sBnPn4FkxPvEGq5DlOzV7IOO9t7sX55U/xdNoSQnrweT7Wgw6fXJNY9uOAXf0A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765401015; a=rsa-sha256; cv=none; b=MYMJlvbtNESxj+F5wcP70L93hsHkpNajHZu614jA+5VDMEItdXqZJO+QoEgEsMHIBZ2Yjd BTl0kvf0I4hAwOSutJbAEYFQ2U30qos8rX/D7+2LrJcKMXBfxqbJEzDmDZJy6cdYOWkR2x Mv0jPDFukAbJBk/2KfotPyqRZNQ2w2t6L2ftkOT8TtcZiMS2W5NZ5iltSXOrf3sak/FWsz G3leGzoWwVLUMXbcScsOPH6i787OVmuLBdnrvXgdzYw315TAOybBGfagDyoKCbxoGs8DpU uc+DpWLt3oP7b6TvBuKzqq95cKMsGlUNyU1JyOlluMgHxD8lQj8pgq2MQalV8A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dRSzW5W65z11vB for ; Wed, 10 Dec 2025 21:10:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2f9d9 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 10 Dec 2025 21:10:15 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: f9a4a42eedcd - stable/15 - rc.d/{ipfilter,ippool}: Fix typo in variable 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: f9a4a42eedcd8d283045c30e5dc531845a094e3c Auto-Submitted: auto-generated Date: Wed, 10 Dec 2025 21:10:15 +0000 Message-Id: <6939e1b7.2f9d9.54da3b37@gitrepo.freebsd.org> The branch stable/15 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=f9a4a42eedcd8d283045c30e5dc531845a094e3c commit f9a4a42eedcd8d283045c30e5dc531845a094e3c Author: Cy Schubert AuthorDate: 2025-12-09 20:32:24 +0000 Commit: Cy Schubert CommitDate: 2025-12-10 21:10:06 +0000 rc.d/{ipfilter,ippool}: Fix typo in variable name (cherry picked from commit f04b23ce3547c238dcd52d4fa1a7d401ad38d1b1) --- libexec/rc/rc.d/ipfilter | 2 +- libexec/rc/rc.d/ippool | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libexec/rc/rc.d/ipfilter b/libexec/rc/rc.d/ipfilter index 9b64fcff0c7a..1253294b09cf 100755 --- a/libexec/rc/rc.d/ipfilter +++ b/libexec/rc/rc.d/ipfilter @@ -33,7 +33,7 @@ required_modules="ipl:ipfilter" ipfilter_start() { echo "Enabling ipfilter." - if [ -n "${ifilter_optionlist}" ]; then + if [ -n "${ipfilter_optionlist}" ]; then if ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes'; then ${ipfilter_program:-/sbin/ipf} -D fi diff --git a/libexec/rc/rc.d/ippool b/libexec/rc/rc.d/ippool index 5ef0d0522621..f47a42267106 100755 --- a/libexec/rc/rc.d/ippool +++ b/libexec/rc/rc.d/ippool @@ -27,7 +27,7 @@ required_modules="ipl:ipfilter" ippool_start_precmd() { rc_flags="-f ${ippool_rules} ${rc_flags}" - if [ -n "${ifilter_optionlist}" ]; then + if [ -n "${ipfilter_optionlist}" ]; then ${ipfilter_program:-/sbin/ipf} -T "${ipfilter_optionlist}" fi } From nobody Wed Dec 10 21:10:16 2025 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 4dRSzY2rmcz6JgPt for ; Wed, 10 Dec 2025 21:10: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRSzY0Zgdz4FKK for ; Wed, 10 Dec 2025 21:10:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765401017; 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=VuypOgCF7dkC8dhLKBlMCgbd2eNHnP0nEIhFOzF8eE0=; b=ikehpqtEauLofctdYieUKqZ//lIja83yiQqKXMAviLIpGO0/xfldQ5UCrVJ3K/ic2qTLrv LQe5IEnWTwkixqV/sOE/gy3Z/cuuedpskaDo3rARbiRXlFAcETHwOsNoYSAG/+SrSqPhg6 0gVdygWG3bFyTY6eMM/BuFjVCDzavi13HA1TpXybnBkaaXiBqO867wFNRrgXu2uSFRaNaY nGNUTVSoV4DhwqHBWCAd2jnqwQcHSkVeCgysvMvCcsMlixKucNXUlcdFCPrrVlH5NvXCId G18JV/0fNG/xjEC+/ymgbOMEO0NxD5HbmMRhna+UfiXLpPCQhOrorYahJn8mfQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765401017; 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=VuypOgCF7dkC8dhLKBlMCgbd2eNHnP0nEIhFOzF8eE0=; b=LHJYltqyr1IdbVnR85tzp8d1q313PiiPz6GxOj5ILUQO4QJ8PId22h+5oa27ow1jRSV0uj j6/HzH3HSnZyNW+6/MhqBA5RYdRpZOdK+WGADzL6Rzy9KZkVSJcAbjpvpB3fB8qv3ebno6 GE6hthYwSud0IuUiYfbX8Yup+lOJTcY92atSDLcMIGVY01PdDd5nh+jm/jpzMtklubu9SR oc1x2/LlJ0GIqWzFZSHk+bahcr2HVB2UPaYuq64hNav3q3lSJE/JxmKvrNMw9HhH3MqMXT LEhY63VhbcNyHROvFyWhLT5zdq8BbE7/DlmzYZsZphNPFyIml7hE+8v8nf9U3w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765401017; a=rsa-sha256; cv=none; b=J+MkqGw96UDGt13vVr7o1bsGE5cMZ8hCDMu7RC0WjHzs09ExZRwNFr2b1e1sRnEP77f4Km uKzAr7eo5eaxbUG8eyGeC+muEk7guEf+cyoD6yPJH1+r+eRHfuN79uAcyLh4kJvAFLt8Iv wUnzsxoQ0t3wAOMVajFkgcC9zKOq4EBLHRoLAOjxQy0HRFq5FOQ+ddGHDzGY+SO9uMhVYU o6/5e46IxXcXgFH/kLBsYRhGqWJpG1ClSUg31OhHe/6slT6gpKaAVqmYqJ65UaZvOTN9Lb SO/slAJ4314JS/YlsgqYK9QBotx2yjY/pvDlS4oAKo8W6AzFv15YNdVltml/qw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dRSzX5pt7z11vC for ; Wed, 10 Dec 2025 21:10:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30b44 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 10 Dec 2025 21:10:16 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: d9b9de6608b3 - stable/15 - rc.d/ipfilter: ipfilter must be enabled for options to take 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: d9b9de6608b3cbca03f1448595bb12c87a0f99b5 Auto-Submitted: auto-generated Date: Wed, 10 Dec 2025 21:10:16 +0000 Message-Id: <6939e1b8.30b44.235e96e1@gitrepo.freebsd.org> The branch stable/15 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=d9b9de6608b3cbca03f1448595bb12c87a0f99b5 commit d9b9de6608b3cbca03f1448595bb12c87a0f99b5 Author: Cy Schubert AuthorDate: 2025-12-09 23:42:07 +0000 Commit: Cy Schubert CommitDate: 2025-12-10 21:10:07 +0000 rc.d/ipfilter: ipfilter must be enabled for options to take ipfilter options are erased and reset to default when ipfilter is disabled. This results in nullifying options from rc.conf that were previously set. 8d6feaaaa26f, which added this code, was incorrect as it was for a bug in ipfilter 4.2.28 and no longer applies to ipfilter 5.1.2. Fixes: 8d6feaaaa26f (cherry picked from commit cc1e4aae5a67a20f3c0fff13612364e6e4404f93) --- libexec/rc/rc.d/ipfilter | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/libexec/rc/rc.d/ipfilter b/libexec/rc/rc.d/ipfilter index 1253294b09cf..a68e6f60a6f2 100755 --- a/libexec/rc/rc.d/ipfilter +++ b/libexec/rc/rc.d/ipfilter @@ -33,14 +33,11 @@ required_modules="ipl:ipfilter" ipfilter_start() { echo "Enabling ipfilter." + if ! ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes'; then + ${ipfilter_program:-/sbin/ipf} -E + fi if [ -n "${ipfilter_optionlist}" ]; then - if ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes'; then - ${ipfilter_program:-/sbin/ipf} -D - fi ${ipfilter_program:-/sbin/ipf} -T "${ipfilter_optionlist}" - ${ipfilter_program:-/sbin/ipf} -E - elif ! ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes'; then - ${ipfilter_program:-/sbin/ipf} -E fi ${ipfilter_program:-/sbin/ipf} -Fa if [ -r "${ipfilter_rules}" ]; then From nobody Wed Dec 10 21:10:34 2025 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 4dRSzt5LWvz6JgPx for ; Wed, 10 Dec 2025 21:10:34 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRSzt4YMkz4FhC for ; Wed, 10 Dec 2025 21:10:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765401034; 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=bULCRHHnCnML2zzlVMOb/2NIEuhHzRWD6p45aPdn9M8=; b=fUIHDlPcoH0cPZteRyEhvVY3U1pu5l16puj80/Rn71sD4IIEtfjrfTVffCOxXOZ1L8sC+T ovgdZvw+ZpFqVtIJUg9OBmETtAqHAmqLy+HS7nWxINOng4O0ko4IVC9GxJlK5C0/WgxKsZ mWWC1g7F+i/iGKDtvqf6VSOoVmleiVhwSGpSumbbd10fBv1eWqN7gP4I68qK7kYj9p9gbK R/Pep4DN3LVG7C4CnBVbGZundQA+AvRTifft49Tl5c2ngaYACtGsspH144ccM/2VCQ/S+s W/5DW+arKGW/pBu9ehfPzHyKVGKvBDvfBVrHpkZU8AV+rtLLAno5/kifQae74g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765401034; 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=bULCRHHnCnML2zzlVMOb/2NIEuhHzRWD6p45aPdn9M8=; b=qjgJt+TDqj0mEIMk+Xyl/JDNgmE86bu6Mn4II73Zpno6zJy5mjUP42g05M1MXgPIx1IL9p qjBLySYb5mypBZXXVX++0HlovQBOeAAbNeS9L14HXqmZNmg8KT/WO1NWUvSBwNlu3Y2DjT wARI7jDVA+qFWGt51oYZFoZI1Rs9n6tcaSnQI+AxXPAJEt1tR3P00JwIIAXE05buSdBcwW vgCGd4uKoGPa5TsQFw21OIcxQ6kISd3fD9T03ecUd92N15yemIagGBl7fXc0MsWqUt4+pE 7hNgsbv9r5Df4KEJFRoHMhjv6VQEVTGALBemfaMBB/41pp68Au7ovBuzvdwJjg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765401034; a=rsa-sha256; cv=none; b=S9HAmfd1zBnxsxaSuJlnO4K8XV4v3e+BQRdHvccZvv+m3DB546Ibh696eBlE+Y9jWyQqcj zCN7UJXb2huuoBOhr2xFmGyy88dwkWjpx10TicM/avYZxiktBYYsr7g5fEuFzxvVCjXA8m hWOzlzsxTaVHjfDZTPua2pfEon1XVxD5/d+X/CrR+8xpPcMcZL79oflw8CmsqT1sOX8yel w7kL+o1OMprOUaEoKl/kGB9G18xmNTQUb8PnnM+sRbvDvzsd3w1/iavFClMsrdueYwfa1c jlFkvf15JUdDhVbJZ2hYDaLCwLwn9dqCbOA6jDhmSV3dqbJn95frNqAs7tdqvg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dRSzt43dBz11x5 for ; Wed, 10 Dec 2025 21:10:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 31adb by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 10 Dec 2025 21:10:34 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: 448a117d06e6 - stable/14 - rc.d/{ipfilter,ippool}: Fix typo in variable 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 448a117d06e6c857c55830bbf30684ed31503234 Auto-Submitted: auto-generated Date: Wed, 10 Dec 2025 21:10:34 +0000 Message-Id: <6939e1ca.31adb.64afa5ee@gitrepo.freebsd.org> The branch stable/14 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=448a117d06e6c857c55830bbf30684ed31503234 commit 448a117d06e6c857c55830bbf30684ed31503234 Author: Cy Schubert AuthorDate: 2025-12-09 20:32:24 +0000 Commit: Cy Schubert CommitDate: 2025-12-10 21:10:29 +0000 rc.d/{ipfilter,ippool}: Fix typo in variable name (cherry picked from commit f04b23ce3547c238dcd52d4fa1a7d401ad38d1b1) --- libexec/rc/rc.d/ipfilter | 2 +- libexec/rc/rc.d/ippool | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libexec/rc/rc.d/ipfilter b/libexec/rc/rc.d/ipfilter index 410303d3a128..e6cc99cdbcde 100755 --- a/libexec/rc/rc.d/ipfilter +++ b/libexec/rc/rc.d/ipfilter @@ -30,7 +30,7 @@ required_modules="ipl:ipfilter" ipfilter_start() { echo "Enabling ipfilter." - if [ -n "${ifilter_optionlist}" ]; then + if [ -n "${ipfilter_optionlist}" ]; then if ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes'; then ${ipfilter_program:-/sbin/ipf} -D fi diff --git a/libexec/rc/rc.d/ippool b/libexec/rc/rc.d/ippool index 527e1fc780b2..3c696af58e49 100755 --- a/libexec/rc/rc.d/ippool +++ b/libexec/rc/rc.d/ippool @@ -23,7 +23,7 @@ required_modules="ipl:ipfilter" ippool_start_precmd() { rc_flags="-f ${ippool_rules} ${rc_flags}" - if [ -n "${ifilter_optionlist}" ]; then + if [ -n "${ipfilter_optionlist}" ]; then ${ipfilter_program:-/sbin/ipf} -T "${ipfilter_optionlist}" fi } From nobody Wed Dec 10 21:10:35 2025 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 4dRSzv6GJjz6JgMh for ; Wed, 10 Dec 2025 21:10:35 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRSzv4tR8z4FkD for ; Wed, 10 Dec 2025 21:10:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765401035; 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=GmazqeYXuYWFBnIqkJqWu8ztCTj+Pi2Nt6XQUaAbVSU=; b=skIAG2+qfeObL04fOSj+hAyVX3lMLq2v1UIYt1X4KOX+sAyvmFsLD6liuk5gxxDAa/Dls3 ViH1ITCqjY4gMQuDGXu+g3NBmwiedDHPlKhru+4xc4FN4L8FfaLrb3rpQ+W9tHYK/8j+qw 7W9W2vfhc3Bek/uTXfc54hD7TKz4jza/aG3QoqruyA613rGfouzUabaIk0MtB8ugL5B8dH zKZYJIx1wX5iBqLZncXXS6fVCHX49NKa2nbRBa+wJZvuqknPWCW/gDLWal0ZCihnxv2CQq 1EUnsp4ziYDn+m7f2Lktq7x7BufM0BvTibi4C6/MWtAzMSXxQnCxjNlbACkghg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765401035; 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=GmazqeYXuYWFBnIqkJqWu8ztCTj+Pi2Nt6XQUaAbVSU=; b=oZhLLTQtWcrD9FuL2ZoSlVhF67cMGvdvyTzmi9iakxwByvrVZOu5ufxojRDDsuZwZaojSx feUDZ9VgI90YbqtcDHqSp8xpBUQx2qL1stqW0D7TBA2E7ea1hT8Vw+CgMRgvIhJuy4Mk8T ihcpY4VaxC1BZsfxTPhM/3DcA+pUEADC8S/UBoAuli8vlaK4slF7CvM2s2hq1Do+nX5Bc9 AYsEmxjDIvz5wyQmfYuwy/eRx02d9fGcr9OpAcXxpPFuzynulkNvjboa/IX8Gia4vnSw0q o98cWPW05uo5ZLF71WqmrJJ8iPfSnvffGOSmi1LIDl0fnYkjnT/DqtzcN4QpyQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765401035; a=rsa-sha256; cv=none; b=bH8SbjpMuupvoGrsk97vl4KEVcs4odZs67u4FmpffjD1ElW8U8gt0+GAo9nzdxZRmU92yY Mllx6nRw9nO3+LO0R89t/8K5AGCiNUjJD3lfcxVP1iuCyCjCjVWSIM7oJZY9dt9N7+gq3Z CMaMmOjf/+vFltg0mRsmeUwr++XFacVH/HVkMgGCcSHZoay7THXVNnYgSD7E7WaOAIaIvY VmkZ6Tbbk/nN5LOsaLQu67sIGXqW/wmKeLk5n1V7w083sXwpYMMqfA98JfGEqLnT+IPjgN +s2C0b9POHJ7R+/K7lEDinf72NoYPc4knBtj9ms4FOsk/8tQCGt6Zk1Jfw/eFA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dRSzv4N1Tz11Kp for ; Wed, 10 Dec 2025 21:10:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30bd8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 10 Dec 2025 21:10:35 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: 0ce6b2f829dc - stable/14 - rc.d/ipfilter: ipfilter must be enabled for options to take 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 0ce6b2f829dc403520f57b62dde0c52f50bd5303 Auto-Submitted: auto-generated Date: Wed, 10 Dec 2025 21:10:35 +0000 Message-Id: <6939e1cb.30bd8.25bb0772@gitrepo.freebsd.org> The branch stable/14 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=0ce6b2f829dc403520f57b62dde0c52f50bd5303 commit 0ce6b2f829dc403520f57b62dde0c52f50bd5303 Author: Cy Schubert AuthorDate: 2025-12-09 23:42:07 +0000 Commit: Cy Schubert CommitDate: 2025-12-10 21:10:29 +0000 rc.d/ipfilter: ipfilter must be enabled for options to take ipfilter options are erased and reset to default when ipfilter is disabled. This results in nullifying options from rc.conf that were previously set. 8d6feaaaa26f, which added this code, was incorrect as it was for a bug in ipfilter 4.2.28 and no longer applies to ipfilter 5.1.2. Fixes: 8d6feaaaa26f (cherry picked from commit cc1e4aae5a67a20f3c0fff13612364e6e4404f93) --- libexec/rc/rc.d/ipfilter | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/libexec/rc/rc.d/ipfilter b/libexec/rc/rc.d/ipfilter index e6cc99cdbcde..319414688381 100755 --- a/libexec/rc/rc.d/ipfilter +++ b/libexec/rc/rc.d/ipfilter @@ -30,14 +30,11 @@ required_modules="ipl:ipfilter" ipfilter_start() { echo "Enabling ipfilter." + if ! ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes'; then + ${ipfilter_program:-/sbin/ipf} -E + fi if [ -n "${ipfilter_optionlist}" ]; then - if ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes'; then - ${ipfilter_program:-/sbin/ipf} -D - fi ${ipfilter_program:-/sbin/ipf} -T "${ipfilter_optionlist}" - ${ipfilter_program:-/sbin/ipf} -E - elif ! ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes'; then - ${ipfilter_program:-/sbin/ipf} -E fi ${ipfilter_program:-/sbin/ipf} -Fa if [ -r "${ipfilter_rules}" ]; then From nobody Wed Dec 10 21:10:52 2025 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 4dRT0D4kvVz6JgQK for ; Wed, 10 Dec 2025 21:10:52 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRT0D2wt4z4GK8 for ; Wed, 10 Dec 2025 21:10:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765401052; 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=bMRC0+WIg0WpMVdYt6AugE4DxWVH8kDCROyrF7wq8iw=; b=Mcr8vr1saLta/WlvSmBQpghSrfP7DMAOkcbkmzckR/EuMO4+KvuHxKNkoa8SS4THVGkMW3 ATVDbv7TL+/z0mU21yfg94C9VrMS1GvaulCX4JzgEDiTVNXOmHoMZsUWGJ6iePg2s8Wbud rINscwAPwf3Fdb6uptvp9AnPYfhlb5tTlPp3dAgx+Dyx1do91m6KKjeKjDDnmZbnvn6VCx WKi4oEj1dL+jIHqEMojB8zz4ttf+OGx9/zVPttNsbgI8gvWjxrS43vxoKGGtWMDjrOtnLI 607EGB9Ei3niNbOP3eFxujfF6+HELRwVRRwt7ccf8PB+BTmYnyMC/hYx5WkQ+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765401052; 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=bMRC0+WIg0WpMVdYt6AugE4DxWVH8kDCROyrF7wq8iw=; b=eYVNf1SnEpYgfiGnP6XdfVg2kM1KstFEwyrAiPTl56d/9nFuxZ4S5YFTfDlXynxo0vIxD1 g1ztlkdWWYrXxe2VFv/h7EK5YRRsr+tcPG5CGvjcp4l9ToYEla8nvvboz9joChm/f5n04F 1+laVaXkJKzE2NUF1JBFy9OB5aGGOMwzVOYifCMIO+5a26s7SABxOV8sZPxsL5T52mETkX up29pCTn9EjTtDCR6GxkNjBITYTv3XHvUbYPax2dam74Lv5SRJ+SlqIi8koi1/FV5dnCBk 5S57+ehX3WbxwL8xZ9WVHpUXzFfb2rZOkZuzdI/PCkE4exet9oR0cGWyu+wqVw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765401052; a=rsa-sha256; cv=none; b=NuL7ULiwCwuwJDKdLrOceFPgdFNTgjh9rRM7qKTZx8u1Frsqn2ftbZdJmDlHAmIo9No+J3 LWzUBnfwv26+eT2J0CuEfvTY7TbSx7VtAw6Tto8/iMQ044CejcQ4x97giqv5cOW71ehOTz Y5c4nJqN7hUqs53kLJevvHhlob8V+QVC3RmxT8/dvW6oWE0RpaiVq7jEpEAXnYdPBZ4mQ1 +8VVrq21jzpN/POySGuluAQMyULCvfm2LqbporglfHzcygLwZxjM3gnmNxgS++LqaGDKg+ NVfd1PQLXd2Lh0kZi136Ko6w5ZlAlRd0X0ue18ocZtMO7kg3DplapG3u/Y6wtQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dRT0D2WV5z11Ks for ; Wed, 10 Dec 2025 21:10:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30b48 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 10 Dec 2025 21:10:52 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: 07b5eb3b6a5c - stable/13 - rc.d/{ipfilter,ippool}: Fix typo in variable 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 07b5eb3b6a5c7727ec66e50135fad5b9df5dd31d Auto-Submitted: auto-generated Date: Wed, 10 Dec 2025 21:10:52 +0000 Message-Id: <6939e1dc.30b48.4bd6a9d6@gitrepo.freebsd.org> The branch stable/13 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=07b5eb3b6a5c7727ec66e50135fad5b9df5dd31d commit 07b5eb3b6a5c7727ec66e50135fad5b9df5dd31d Author: Cy Schubert AuthorDate: 2025-12-09 20:32:24 +0000 Commit: Cy Schubert CommitDate: 2025-12-10 21:10:47 +0000 rc.d/{ipfilter,ippool}: Fix typo in variable name (cherry picked from commit f04b23ce3547c238dcd52d4fa1a7d401ad38d1b1) --- libexec/rc/rc.d/ipfilter | 2 +- libexec/rc/rc.d/ippool | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libexec/rc/rc.d/ipfilter b/libexec/rc/rc.d/ipfilter index de406f8e1740..449b8f0741b8 100755 --- a/libexec/rc/rc.d/ipfilter +++ b/libexec/rc/rc.d/ipfilter @@ -30,7 +30,7 @@ required_modules="ipl:ipfilter" ipfilter_start() { echo "Enabling ipfilter." - if [ -n "${ifilter_optionlist}" ]; then + if [ -n "${ipfilter_optionlist}" ]; then if ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes'; then ${ipfilter_program:-/sbin/ipf} -D fi diff --git a/libexec/rc/rc.d/ippool b/libexec/rc/rc.d/ippool index 527e1fc780b2..3c696af58e49 100755 --- a/libexec/rc/rc.d/ippool +++ b/libexec/rc/rc.d/ippool @@ -23,7 +23,7 @@ required_modules="ipl:ipfilter" ippool_start_precmd() { rc_flags="-f ${ippool_rules} ${rc_flags}" - if [ -n "${ifilter_optionlist}" ]; then + if [ -n "${ipfilter_optionlist}" ]; then ${ipfilter_program:-/sbin/ipf} -T "${ipfilter_optionlist}" fi } From nobody Wed Dec 10 21:10:53 2025 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 4dRT0F6TfDz6JgQM for ; Wed, 10 Dec 2025 21:10:53 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRT0F42Kfz4GKN for ; Wed, 10 Dec 2025 21:10:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765401053; 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=AglzVKHTURQbzI0P8uUGmzg4FBgW+kr/EpbqFG2MChU=; b=P0guf1l2+pyTSqO8j0jB/zEf2Ik7C53Aa8msRS14BRvzKgPfGjs0G4JkrfNqrCVsjVkRAc eF6Mo2BFxO9b9t2iwGHwr4tVyv0op6YNWaRwHXoTxihC2HrtoRrObjF1Di2fRu8e855q7o 8YjdGOXa1h8hrWSe04nIlN3sNZHYH3RHewG7lrID0tFIYW3Seb/6n2dNW//U8TQUpedwsg GKgA12Xb9OtlBZDMrmWU9xmWENCnc68ub4ifUnhG5PfKWQwhwkstyOSsChhmQsIXZI76j/ 2GjlEGoyDZh7rwZyrCe6QenbIHNflEqCtdT4pV8YHxCYOkrCV3zAHc/j2SWoMA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765401053; 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=AglzVKHTURQbzI0P8uUGmzg4FBgW+kr/EpbqFG2MChU=; b=NbkWB71U/lWuw8QEDSJMclFPoVz+huX07vxww09hhFIiDc2GSC0VrdTBvMeGXIuMJ/ohdT 83mDse+oFwVraf4ymQXsakcCVVtJx6gvNhg5pMrj6zNgkt7ja60DEbcF6X/CK0tf5CkXPZ FTlWEjvMuMbafRWmPLFacWarhfqDaXD78+Pdpmg1B9Hi1wQnOzkt/PBLYXj7Fb5JZeP8qf hwdQd5CmNZDDL/RMaXmCrxfftcIhh8+zPLZFmwkP/5GVZyX5uZqH2/FFaRBvAMZ1mU6ljr FMussYUmL4DYGcebou3be55EPpVwg/f+PP1eYO0kqC5s1bOuYZuVqQFsMikvRA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765401053; a=rsa-sha256; cv=none; b=jHTiglNlk4sKc3ZcoZWGqbAbMTxVr3Ij9cs4VS1RUe4/do9WIbMFNyfNJcJALLiBFBs4FZ oNs4dj4gdccaYKS9f4iww1qlNZOl2vGx3L54rdHOGtEkHkYPYU30T54RUB6yKlip4sJPzX YD1SfXkqwBJxxRIlrizxLf17b9PrDCZD4tai3ZCR+p+8+O0Jl+22DDDgt6XiZHXvLTQSJD UoGjgMXi10DTZbeV4tI13aa2gmFSdBHvQsAawArhJ7P+9JmV4vZawoC0jWQX0OP+ZuJW4U BzxIDf1Thwvd+e1EtpUbI5TyO90YDQJJSs3h8Rr5CQ2pfmLp87jFR7+48y7txA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dRT0F2VvRz127r for ; Wed, 10 Dec 2025 21:10:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2fcf0 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 10 Dec 2025 21:10:53 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: d077ec7c0fa3 - stable/13 - rc.d/ipfilter: ipfilter must be enabled for options to take 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: d077ec7c0fa3d1fef03cbd63e1b70dae625b05b7 Auto-Submitted: auto-generated Date: Wed, 10 Dec 2025 21:10:53 +0000 Message-Id: <6939e1dd.2fcf0.7e6f15ae@gitrepo.freebsd.org> The branch stable/13 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=d077ec7c0fa3d1fef03cbd63e1b70dae625b05b7 commit d077ec7c0fa3d1fef03cbd63e1b70dae625b05b7 Author: Cy Schubert AuthorDate: 2025-12-09 23:42:07 +0000 Commit: Cy Schubert CommitDate: 2025-12-10 21:10:47 +0000 rc.d/ipfilter: ipfilter must be enabled for options to take ipfilter options are erased and reset to default when ipfilter is disabled. This results in nullifying options from rc.conf that were previously set. 8d6feaaaa26f, which added this code, was incorrect as it was for a bug in ipfilter 4.2.28 and no longer applies to ipfilter 5.1.2. Fixes: 8d6feaaaa26f (cherry picked from commit cc1e4aae5a67a20f3c0fff13612364e6e4404f93) --- libexec/rc/rc.d/ipfilter | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/libexec/rc/rc.d/ipfilter b/libexec/rc/rc.d/ipfilter index 449b8f0741b8..f027faa9d13a 100755 --- a/libexec/rc/rc.d/ipfilter +++ b/libexec/rc/rc.d/ipfilter @@ -30,14 +30,11 @@ required_modules="ipl:ipfilter" ipfilter_start() { echo "Enabling ipfilter." + if ! ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes'; then + ${ipfilter_program:-/sbin/ipf} -E + fi if [ -n "${ipfilter_optionlist}" ]; then - if ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes'; then - ${ipfilter_program:-/sbin/ipf} -D - fi ${ipfilter_program:-/sbin/ipf} -T "${ipfilter_optionlist}" - ${ipfilter_program:-/sbin/ipf} -E - elif ! ${ipfilter_program:-/sbin/ipf} -V | grep -q 'Running: yes'; then - ${ipfilter_program:-/sbin/ipf} -E fi ${ipfilter_program:-/sbin/ipf} -Fa if [ -r "${ipfilter_rules}" ]; then From nobody Thu Dec 11 09:25:52 2025 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 4dRnJK0WRpz6KdnX for ; Thu, 11 Dec 2025 09:25:53 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRnJJ6hjDz3fHW for ; Thu, 11 Dec 2025 09:25:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765445152; 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=bB4P5isZmJy8YsOpP+g9zIDTLcSLW1dLj/Yx+/gSUIk=; b=JgatSw0dZnPMH1F9uJTkQCdo4u5rWveGG8qYGaWbt/0NPNAsgQhY1qeckCBCLbkxey8uEI +DlBv6VZP/9DZzCLq4a/epHgrLMzn8yfr52qnDlqTG1mAP69t5ILoJk6be6FeRdjwPP4Gn /+YSqIz7N3Sm997AJQDsdkD58eTZuVnQ52wqUuujeicwtjeJ7PgFF2a9OzobDbLMS8nCez kMdPLX/s06wsjfHaEfjCJqZ2VBY9TCOlynSm4Dk4cpmMVvsZkPWX2lbUFuEEJ8oMU/1pXC hw4d3fWtROHtTwT7YnJTHIVeaJQ+HvKCs2i0I84davDIgJDdc4iXPQPPthPKCw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765445152; 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=bB4P5isZmJy8YsOpP+g9zIDTLcSLW1dLj/Yx+/gSUIk=; b=j/3j0kqyW41FxnnMrNYoSV8blkOAmt3ITNECZ7mKYk2deuWypQenZQrnw7+b9GEXbxgoFD NI32iLruIYbl7WygexEyMDe4EdAlaBwgm+0U4AW+EgHdQqXhkC9neK9N1zry5VtZBEK51E 9gd678KfY2+/1boIjwpXc9uu0FYSC4ww6M95lGV95JMLotkGWtFnhmehsbJcqBhJ9gE3+T f+H9MSiZeO/YYgi5Ppw5NBOdfcedx1BzuFIWOnbqn2KiZe1hkjvTS8EReXdhTxmtbL5AI9 UjDSGAw4dQM9hWgPZpCM/ceMxts/TXoPuxzjbeBYcjmsRa3VjKfvjWqEDj+7gQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765445152; a=rsa-sha256; cv=none; b=r6IwflTp4gH5IFXKqWyfswhgU2qUhtSMa6S8bzB9Rc5jHQzricZC2oBxqE0GIrYwoBgBWa S8I7ZTFc5a1CV8Bh6wVKkwSiVmKALr337k2KFDLL3lY/oK1nuV7xAGmHysVbogQUtO+7KX 1Mz+6ILsaBp680mD4Lx+SFodEptb5ZFtls8XAOeujZoNPvFAvODj7jAse8KZasVKKdSkus +W53R81x+CIfZS02MyMiLzWSKA0/x3OjIGRfKHvq/tldZJKj8mQZkKtPOpDhDARo3WHClA cMSoxHUfs8eeJZUMeW943R5hO2j4yR+WH+IfRHUCIZFXQn9vw7JHCSwCp9L9mg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dRnJJ6Hmzz96Q for ; Thu, 11 Dec 2025 09:25:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 336ff by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 09:25:52 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: f629ee03fa78 - stable/15 - libpfctl: improve error handling 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: f629ee03fa788d94fd5865eb49848a5b66d5c6ae Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 09:25:52 +0000 Message-Id: <693a8e20.336ff.3b187540@gitrepo.freebsd.org> The branch stable/15 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=f629ee03fa788d94fd5865eb49848a5b66d5c6ae commit f629ee03fa788d94fd5865eb49848a5b66d5c6ae Author: Kristof Provost AuthorDate: 2025-11-25 13:48:29 +0000 Commit: Kristof Provost CommitDate: 2025-12-11 09:22:22 +0000 libpfctl: improve error handling If we fail to open /dev/pf don't try to close it again. That would result in errno getting overwritten by close(), hiding potentially useful information. MFC after: 2 weeks Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 238ad591da9eede122a708be925b6b6a20e9046b) --- lib/libpfctl/libpfctl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/libpfctl/libpfctl.c b/lib/libpfctl/libpfctl.c index 8dea373d8941..0b3bb25163b8 100644 --- a/lib/libpfctl/libpfctl.c +++ b/lib/libpfctl/libpfctl.c @@ -76,7 +76,6 @@ pfctl_open(const char *pf_device) struct pfctl_handle *h; h = calloc(1, sizeof(struct pfctl_handle)); - h->fd = -1; h->fd = open(pf_device, O_RDWR); if (h->fd < 0) @@ -87,7 +86,8 @@ pfctl_open(const char *pf_device) return (h); error: - close(h->fd); + if (h->fd != -1) + close(h->fd); snl_free(&h->ss); free(h); From nobody Thu Dec 11 09:25:53 2025 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 4dRnJL1X55z6Kdl0 for ; Thu, 11 Dec 2025 09:25:54 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRnJL0YNYz3fL0 for ; Thu, 11 Dec 2025 09:25:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765445154; 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=fR7Y1wKVRBYNObDVHzeS/x1wvs8FHPPSBdP2V2sFWKc=; b=Fy3RlGH42ezidXFMBA84G7wLfBk0IVE6roOKLm8BhYWAocf8gxn5DLnqwYNuhr+Gy5fDRL DFAw0N250BtDTC2JcV8PcI/MPysxP5NjNk/ct9wxcjq5G9IE48wA30MYHHUny/D8jTOg9r 6XXIcRUfwXfywslNHAdOhixfizgYzCBapc8SPtDf0G6uCtjfdHQ1ZhmIMqdwFTljolG8+F 3ose5laZrqv0f2TMKYUv4aYldYLUCOOMbKBNT0K0gUj3krHljoGkfl7J1F96smPZZUGqNb tIY47ma+rnhn8u8Si9Z6NSvH5PhGqXQuo8baA1q4iklPMJuPhWmt/Tmzqf7xRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765445154; 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=fR7Y1wKVRBYNObDVHzeS/x1wvs8FHPPSBdP2V2sFWKc=; b=U5rAq07DG51Q30QtrXjeN8WqG/s1TsehLptSqd+jMglaLFLiMd2ETLUjYc83Htgcd1ZCxB 8nSaSbdaICk/mUdCqGsuNTMIih0oQEA9GDT5yLH22P512Pq8A87582AQbrF5r6KOM2fl1T StvE3Cc4nDlrr0K6T5UvxKk3GECKcyOiZtM+loHic7jvQS3s/N7/yThHInLWu1IAY3z6YH fSVRuiz30T70GU7AHUGLId2tGOfImE07SFW1SP7mQ8fRg2kNbJR9oW1ZslD6vs3LIt60h3 g7+kqvF1Ykwj6ro2Zi1uaj92Jq2iyuR1icn9zm1Um8laNLLHE4tXYqy8s1DqTQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765445154; a=rsa-sha256; cv=none; b=LbhXTFgIX3GF5nq71zZhmu/ACcVf13a8x2tNznznQDIZRgkSNj3z2pk193EdrT5g0vKbk4 umql+ttSrsP27zhqIk9jcMC3tnu3NNZ6pWcGKlaNBqxUPWwzu8aDIXIykTopI16X+Pzs8d HI8V83D9LnnaFNIOPx8C3Ar2eVT+bGFUeN4QtQ/T/5N8S+wtQkR/ciljjaR4ZHmHoxKKX8 9eHlmI0M5foL/39nGdjI9+W1PUMCegiq6JjdpxO+tVR5bGOHjQzeuj4Xwbiq3k+PGXmSVw 5GGzwVCbVUIqSq+9QbXnjJ9nO9e8bwcY5qzoasNkLtzgyimLQBYGfX1+hvl8DQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dRnJL00bcz96R for ; Thu, 11 Dec 2025 09:25:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3400a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 09:25:53 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: cc638b24d56a - stable/15 - pf: relax sctp v_tag verification 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: cc638b24d56a1472eb366e4320529d6bf77fd4e8 Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 09:25:53 +0000 Message-Id: <693a8e21.3400a.3daa588@gitrepo.freebsd.org> The branch stable/15 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=cc638b24d56a1472eb366e4320529d6bf77fd4e8 commit cc638b24d56a1472eb366e4320529d6bf77fd4e8 Author: Kristof Provost AuthorDate: 2025-11-25 09:59:02 +0000 Commit: Kristof Provost CommitDate: 2025-12-11 09:22:22 +0000 pf: relax sctp v_tag verification pf was too strict when validating SCTP tags. When a server receives a retransmitted INIT it will reply with a random initiate tag every time. However, pf saves the first initiate tag and expects every subsequent INIT_ACK retransmission to have the same tag. This is not the case, leading to endless INIT/INIT_ACK cycles. Allow the tag to be updated as long as we've not gone past COOKIE_WAIT. Add a test case to verify this. MFC after: 2 weeks See also: https://redmine.pfsense.org/issues/16516 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit bc3b72ff48953551e0e8bd6e5a2c718ecd973285) --- sys/netpfil/pf/pf.c | 6 +++- tests/sys/netpfil/pf/sctp.py | 67 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+), 1 deletion(-) diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index fa6dd41cecee..fb67c37b1556 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -7362,7 +7362,11 @@ pf_sctp_track(struct pf_kstate *state, struct pf_pdesc *pd, } if (src->scrub != NULL) { - if (src->scrub->pfss_v_tag == 0) + /* + * Allow tags to be updated, in case of retransmission of + * INIT/INIT_ACK chunks. + **/ + if (src->state <= SCTP_COOKIE_WAIT) src->scrub->pfss_v_tag = pd->hdr.sctp.v_tag; else if (src->scrub->pfss_v_tag != pd->hdr.sctp.v_tag) return (PF_DROP); diff --git a/tests/sys/netpfil/pf/sctp.py b/tests/sys/netpfil/pf/sctp.py index f492f26b63a1..9f1d7dea4ef6 100644 --- a/tests/sys/netpfil/pf/sctp.py +++ b/tests/sys/netpfil/pf/sctp.py @@ -551,6 +551,73 @@ class TestSCTP(VnetTestTemplate): assert re.search(r"epair.*sctp 192.0.2.1:.*192.0.2.3:1234", states) assert re.search(r"epair.*sctp 192.0.2.1:.*192.0.2.2:1234", states) +class TestSCTP_SRV(VnetTestTemplate): + REQUIRED_MODULES = ["sctp", "pf"] + TOPOLOGY = { + "vnet1": {"ifaces": ["if1"]}, + "vnet2": {"ifaces": ["if1"]}, + "if1": {"prefixes4": [("192.0.2.1/24", "192.0.2.2/24")]}, + } + + def vnet2_handler(self, vnet): + ToolsHelper.print_output("/sbin/pfctl -e") + ToolsHelper.pf_rules([ + "set state-policy if-bound", + "pass inet proto sctp", + "pass on lo"]) + + # Start an SCTP server process, pipe the ppid + data back to the other vnet? + srv = SCTPServer(socket.AF_INET, port=1234) + while True: + srv.accept(vnet) + + @pytest.mark.require_user("root") + @pytest.mark.require_progs(["scapy"]) + def test_initiate_tag_check(self): + # Ensure we don't send ABORTs in response to the other end's INIT_ACK + # That'd interfere with our test. + ToolsHelper.print_output("/sbin/sysctl net.inet.sctp.blackhole=2") + + import scapy.all as sp + + packet = sp.IP(src="192.0.2.1", dst="192.0.2.2") \ + / sp.SCTP(sport=1234, dport=1234) \ + / sp.SCTPChunkInit(init_tag=1, n_in_streams=1, n_out_streams=1, a_rwnd=1500) + packet.show() + + r = sp.sr1(packet, timeout=3) + assert r + r.show() + assert r.getlayer(sp.SCTP) + assert r.getlayer(sp.SCTPChunkInitAck) + assert r.getlayer(sp.SCTP).tag == 1 + + # Send another INIT with the same initiate tag, expect another init ack + packet = sp.IP(src="192.0.2.1", dst="192.0.2.2") \ + / sp.SCTP(sport=1234, dport=1234) \ + / sp.SCTPChunkInit(init_tag=1, n_in_streams=1, n_out_streams=1, a_rwnd=1500) + packet.show() + + r = sp.sr1(packet, timeout=3) + assert r + r.show() + assert r.getlayer(sp.SCTP) + assert r.getlayer(sp.SCTPChunkInitAck) + assert r.getlayer(sp.SCTP).tag == 1 + + # Send an INIT with a different initiate tag, expect another init ack + packet = sp.IP(src="192.0.2.1", dst="192.0.2.2") \ + / sp.SCTP(sport=1234, dport=1234) \ + / sp.SCTPChunkInit(init_tag=42, n_in_streams=1, n_out_streams=1, a_rwnd=1500) + packet.show() + + r = sp.sr1(packet, timeout=3) + assert r + r.show() + assert r.getlayer(sp.SCTP) + assert r.getlayer(sp.SCTPChunkInitAck) + assert r.getlayer(sp.SCTP).tag == 42 + class TestSCTPv6(VnetTestTemplate): REQUIRED_MODULES = ["sctp", "pf"] TOPOLOGY = { From nobody Thu Dec 11 09:25:57 2025 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 4dRnJP4dWtz6Kdfg for ; Thu, 11 Dec 2025 09:25:57 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRnJP2DyQz3f7B for ; Thu, 11 Dec 2025 09:25:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765445157; 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=p6diJrvk+N7kaJg/3CDbFNgzumMMdRJGPwo/nxZIfbc=; b=VmF7hcDR7ha/574+g5G3qq2fHjM+NkiMMORmGKRHcbzNApWofIc5KWoger+W5np4bbLrhP yjauUtPsjBw3KEYZGcyueie4sMq+KrRkhU6+lsq01Q4xZgiP6uNuvXOiuIStyRspuGg2tl QPS2eF0wSrn10B9xwXq//pwEcFdNZYAsasM3DpTcF+u+i5ec2cqli0FKQoDJb5kRhhsch0 CPUURoD2e3GDT0tcpahMMyxJgkrnjbYo55GaiSnDqb6Ziq3xoSvASITmAqlpM5fQY+ZO7I nuqd8CWLj+NhmiGPtuVuhPAJEgFr2aCkp0zzF4uBxor8Vl6cBNjlR5Vy1LEzRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765445157; 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=p6diJrvk+N7kaJg/3CDbFNgzumMMdRJGPwo/nxZIfbc=; b=Ig3x1K2gcRQQZIXRFS7AkaReMKvCS8i06CZ9/O3GWhOXE9RABSunh7f937T1e9LLVLp++p B+ftiTbskdhQA1hWTIaTiQoETwKyDr3esYHA12huEUF94mLnO1ShDNktKMUxDUE9417b4C RX6hMpqif2T+L2I7LLSRBOGKBh5CTNCfFFSH/PlUzWsJujHxxVEAmU5dp2BznCuOj38766 i3zdvbQYA/iq1zG/mYezX+N/wMGHq/5a9PLsLhCQyQPSgoD/aLyoSe9dURad2LLK+HCaRp sBWWXu+F3g5YDtFXqPqZJp26lspaJ6cjrgl9vg+RuJQfswAm1W0fpMOp5sU+Lw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765445157; a=rsa-sha256; cv=none; b=Uuu2QfV3ncFX50IACndHZ5HL7nvMO5giK/RL2O0aItHBv2aSSLKnjPmsrVK/Rhy9LuhEKP KrquumtXPwhK5IbjFvXUoRgzqyyG8OiZmxKaLI4iqaq9to5uDJUl0kczn1jTIXvd5/Keed miv0jQk/sPi0Byh8fmmyLDXovOucKQURuc4hqoK6HfgjUwRY7Kc49qFnDt+Cs32kegg4Ex C+0nQYdhubfOSCoIlIitfGQylyXzQtl8tZ7rsPD3Cb9QywEtxrQqNCxwaDrt0ncKypOPIJ AHzd5ObMORpTVdlaWcvq10LiURWpBk/GwVrlStGjDgcnkAhTsty2gnvP+WPYlw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dRnJP1Sq1z985 for ; Thu, 11 Dec 2025 09:25:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 342cd by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 09:25:57 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: a717a40f8449 - stable/14 - pf: relax sctp v_tag verification 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: a717a40f84490473a3bad5fa012ddac13e9dca60 Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 09:25:57 +0000 Message-Id: <693a8e25.342cd.30d66731@gitrepo.freebsd.org> The branch stable/14 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=a717a40f84490473a3bad5fa012ddac13e9dca60 commit a717a40f84490473a3bad5fa012ddac13e9dca60 Author: Kristof Provost AuthorDate: 2025-11-25 09:59:02 +0000 Commit: Kristof Provost CommitDate: 2025-12-11 09:22:33 +0000 pf: relax sctp v_tag verification pf was too strict when validating SCTP tags. When a server receives a retransmitted INIT it will reply with a random initiate tag every time. However, pf saves the first initiate tag and expects every subsequent INIT_ACK retransmission to have the same tag. This is not the case, leading to endless INIT/INIT_ACK cycles. Allow the tag to be updated as long as we've not gone past COOKIE_WAIT. Add a test case to verify this. MFC after: 2 weeks See also: https://redmine.pfsense.org/issues/16516 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit bc3b72ff48953551e0e8bd6e5a2c718ecd973285) --- sys/netpfil/pf/pf.c | 8 ++++-- tests/sys/netpfil/pf/sctp.py | 67 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+), 2 deletions(-) diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index 44d72d228104..dbd5ef04ef00 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -6238,9 +6238,13 @@ pf_test_state_sctp(struct pf_kstate **state, struct pfi_kkif *kif, } if (src->scrub != NULL) { - if (src->scrub->pfss_v_tag == 0) { + /* + * Allow tags to be updated, in case of retransmission of + * INIT/INIT_ACK chunks. + **/ + if (src->state <= SCTP_COOKIE_WAIT) src->scrub->pfss_v_tag = pd->hdr.sctp.v_tag; - } else if (src->scrub->pfss_v_tag != pd->hdr.sctp.v_tag) + else if (src->scrub->pfss_v_tag != pd->hdr.sctp.v_tag) return (PF_DROP); } diff --git a/tests/sys/netpfil/pf/sctp.py b/tests/sys/netpfil/pf/sctp.py index da42ce527195..a871994ee118 100644 --- a/tests/sys/netpfil/pf/sctp.py +++ b/tests/sys/netpfil/pf/sctp.py @@ -530,6 +530,73 @@ class TestSCTP(VnetTestTemplate): assert re.search(r"epair.*sctp 192.0.2.1:.*192.0.2.3:1234", states) assert re.search(r"epair.*sctp 192.0.2.1:.*192.0.2.2:1234", states) +class TestSCTP_SRV(VnetTestTemplate): + REQUIRED_MODULES = ["sctp", "pf"] + TOPOLOGY = { + "vnet1": {"ifaces": ["if1"]}, + "vnet2": {"ifaces": ["if1"]}, + "if1": {"prefixes4": [("192.0.2.1/24", "192.0.2.2/24")]}, + } + + def vnet2_handler(self, vnet): + ToolsHelper.print_output("/sbin/pfctl -e") + ToolsHelper.pf_rules([ + "set state-policy if-bound", + "pass inet proto sctp", + "pass on lo"]) + + # Start an SCTP server process, pipe the ppid + data back to the other vnet? + srv = SCTPServer(socket.AF_INET, port=1234) + while True: + srv.accept(vnet) + + @pytest.mark.require_user("root") + @pytest.mark.require_progs(["scapy"]) + def test_initiate_tag_check(self): + # Ensure we don't send ABORTs in response to the other end's INIT_ACK + # That'd interfere with our test. + ToolsHelper.print_output("/sbin/sysctl net.inet.sctp.blackhole=2") + + import scapy.all as sp + + packet = sp.IP(src="192.0.2.1", dst="192.0.2.2") \ + / sp.SCTP(sport=1234, dport=1234) \ + / sp.SCTPChunkInit(init_tag=1, n_in_streams=1, n_out_streams=1, a_rwnd=1500) + packet.show() + + r = sp.sr1(packet, timeout=3) + assert r + r.show() + assert r.getlayer(sp.SCTP) + assert r.getlayer(sp.SCTPChunkInitAck) + assert r.getlayer(sp.SCTP).tag == 1 + + # Send another INIT with the same initiate tag, expect another init ack + packet = sp.IP(src="192.0.2.1", dst="192.0.2.2") \ + / sp.SCTP(sport=1234, dport=1234) \ + / sp.SCTPChunkInit(init_tag=1, n_in_streams=1, n_out_streams=1, a_rwnd=1500) + packet.show() + + r = sp.sr1(packet, timeout=3) + assert r + r.show() + assert r.getlayer(sp.SCTP) + assert r.getlayer(sp.SCTPChunkInitAck) + assert r.getlayer(sp.SCTP).tag == 1 + + # Send an INIT with a different initiate tag, expect another init ack + packet = sp.IP(src="192.0.2.1", dst="192.0.2.2") \ + / sp.SCTP(sport=1234, dport=1234) \ + / sp.SCTPChunkInit(init_tag=42, n_in_streams=1, n_out_streams=1, a_rwnd=1500) + packet.show() + + r = sp.sr1(packet, timeout=3) + assert r + r.show() + assert r.getlayer(sp.SCTP) + assert r.getlayer(sp.SCTPChunkInitAck) + assert r.getlayer(sp.SCTP).tag == 42 + class TestSCTPv6(VnetTestTemplate): REQUIRED_MODULES = ["sctp", "pf"] TOPOLOGY = { From nobody Thu Dec 11 09:26:00 2025 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 4dRnJS4Frrz6Kf56 for ; Thu, 11 Dec 2025 09:26:00 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dRnJS2TTJz3fJL for ; Thu, 11 Dec 2025 09:26:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765445160; 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=izobr8z4MDHIVq5FnTGTnDiWlui8z9nugY25xiCTEdU=; b=tB8zMo4/Kxsrli8ku3ujdU/wCIQWA2ziArczQ1AsEfEG5O7kqcFjclRx3KZ3E10Rj6UV/k DOiamoUyTCKchXWA57E2ih1Qj+6NhFbg8zCxerTnvHnN+XknQdu8Z/2+0K+A8n2l9u1SPR ssQU7OMz6/o87ZIoHY2HtPqJzPs4H2FN0Skq7FIAp8/DFlPhk7VMylQt/Z8GvtAs0OE7Fs YYpCrpr9F7Ji+PCrZm5/zQn2QeiBPJWx0biocbC6tAWtrNoB2TawLWTvBThM8p0/MMpUkg RXqrkWd2TCdVLZ4YxWZUTG10P5uxhiGhHSlhNfBYtNZcOVqRnwsjnsxFGy4WnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765445160; 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=izobr8z4MDHIVq5FnTGTnDiWlui8z9nugY25xiCTEdU=; b=W40GjzF96n+PGe9VTcSAqDfVcU0W39hsn44dGFgaCeUuFtZJKZSMKbVwf3Q1MRX1MxQVcm S3j6fdRlA269mBHdtdRdmPtb9VweOg9XGHtF4i4KJMo9qd7Wk51wA8xEn+d5BhGsRwxPjg B7mA7cmlMMYmexFtjTHrra2gqvwlldsq/7D05TInKoH7H0Ooay9K/+VWbeNzgHwiQ8HvY4 dc0MGTQIXqT8In2GAlPP4JSrZA4bWg99KOswbgaZrdmlea65dMT2KW6pNAW5PezxRbnv8h zpCN770d2V6e3zxg9YCaBuWQGxES90KP4ZqfBBBAPAKt4/oy2e8JBVE7x1qBZA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765445160; a=rsa-sha256; cv=none; b=X6YSp8uaDVgy+lYU9VHu6xZJm7rfYo12MgLjHPTxkXELnZjGLBvtu0fMNWVOQavoBG3TNc evsbbKHGBZfEudy8IF/kbZ7XMkp6He8AYdpfXOoi+pUgxMJxXsQTUN3xJEhTx8vGEgTDHr 4SSCK7/KxfIDBvzqQpaCJeErPbjSxbOcSG2yee7t6hzY2KIWRe8fVFUmFDF4LcdNrZzDxh EotbjIu6fkOrX7g3LKgQT78AYsnsm8nNV5rBrymrur+Wxlh7gkSAbmvd2bxSOfzYsRnPF5 cEzrAerTiP3Ix4vOeyVEkHofM8TdIhkGjH876BoMGMZ+hsH2BkYIBBjZkqxhIw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dRnJS1xPLz8k3 for ; Thu, 11 Dec 2025 09:26:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3408c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 09:26:00 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 7b4482f3834a - stable/13 - pf: relax sctp v_tag verification 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 7b4482f3834a93142f10a7dfe47b4456dbdf3660 Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 09:26:00 +0000 Message-Id: <693a8e28.3408c.51c68660@gitrepo.freebsd.org> The branch stable/13 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=7b4482f3834a93142f10a7dfe47b4456dbdf3660 commit 7b4482f3834a93142f10a7dfe47b4456dbdf3660 Author: Kristof Provost AuthorDate: 2025-11-25 09:59:02 +0000 Commit: Kristof Provost CommitDate: 2025-12-11 09:22:15 +0000 pf: relax sctp v_tag verification pf was too strict when validating SCTP tags. When a server receives a retransmitted INIT it will reply with a random initiate tag every time. However, pf saves the first initiate tag and expects every subsequent INIT_ACK retransmission to have the same tag. This is not the case, leading to endless INIT/INIT_ACK cycles. Allow the tag to be updated as long as we've not gone past COOKIE_WAIT. Add a test case to verify this. MFC after: 2 weeks See also: https://redmine.pfsense.org/issues/16516 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit bc3b72ff48953551e0e8bd6e5a2c718ecd973285) --- sys/netpfil/pf/pf.c | 8 ++++-- tests/sys/netpfil/pf/sctp.py | 67 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+), 2 deletions(-) diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index 16ce78560e2d..5b0aeecda2b8 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -5640,9 +5640,13 @@ pf_test_state_sctp(struct pf_kstate **state, struct pfi_kkif *kif, } if (src->scrub != NULL) { - if (src->scrub->pfss_v_tag == 0) { + /* + * Allow tags to be updated, in case of retransmission of + * INIT/INIT_ACK chunks. + **/ + if (src->state <= SCTP_COOKIE_WAIT) src->scrub->pfss_v_tag = pd->hdr.sctp.v_tag; - } else if (src->scrub->pfss_v_tag != pd->hdr.sctp.v_tag) + else if (src->scrub->pfss_v_tag != pd->hdr.sctp.v_tag) return (PF_DROP); } diff --git a/tests/sys/netpfil/pf/sctp.py b/tests/sys/netpfil/pf/sctp.py index 38bb9f2dff74..bb3487a0e4f9 100644 --- a/tests/sys/netpfil/pf/sctp.py +++ b/tests/sys/netpfil/pf/sctp.py @@ -426,6 +426,73 @@ class TestSCTP(VnetTestTemplate): assert re.search(r"all sctp 192.0.2.4:.*192.0.2.3:1234", states) assert re.search(r"all sctp 192.0.2.4:.*192.0.2.2:1234", states) +class TestSCTP_SRV(VnetTestTemplate): + REQUIRED_MODULES = ["sctp", "pf"] + TOPOLOGY = { + "vnet1": {"ifaces": ["if1"]}, + "vnet2": {"ifaces": ["if1"]}, + "if1": {"prefixes4": [("192.0.2.1/24", "192.0.2.2/24")]}, + } + + def vnet2_handler(self, vnet): + ToolsHelper.print_output("/sbin/pfctl -e") + ToolsHelper.pf_rules([ + "set state-policy if-bound", + "pass inet proto sctp", + "pass on lo"]) + + # Start an SCTP server process, pipe the ppid + data back to the other vnet? + srv = SCTPServer(socket.AF_INET, port=1234) + while True: + srv.accept(vnet) + + @pytest.mark.require_user("root") + @pytest.mark.require_progs(["scapy"]) + def test_initiate_tag_check(self): + # Ensure we don't send ABORTs in response to the other end's INIT_ACK + # That'd interfere with our test. + ToolsHelper.print_output("/sbin/sysctl net.inet.sctp.blackhole=2") + + import scapy.all as sp + + packet = sp.IP(src="192.0.2.1", dst="192.0.2.2") \ + / sp.SCTP(sport=1234, dport=1234) \ + / sp.SCTPChunkInit(init_tag=1, n_in_streams=1, n_out_streams=1, a_rwnd=1500) + packet.show() + + r = sp.sr1(packet, timeout=3) + assert r + r.show() + assert r.getlayer(sp.SCTP) + assert r.getlayer(sp.SCTPChunkInitAck) + assert r.getlayer(sp.SCTP).tag == 1 + + # Send another INIT with the same initiate tag, expect another init ack + packet = sp.IP(src="192.0.2.1", dst="192.0.2.2") \ + / sp.SCTP(sport=1234, dport=1234) \ + / sp.SCTPChunkInit(init_tag=1, n_in_streams=1, n_out_streams=1, a_rwnd=1500) + packet.show() + + r = sp.sr1(packet, timeout=3) + assert r + r.show() + assert r.getlayer(sp.SCTP) + assert r.getlayer(sp.SCTPChunkInitAck) + assert r.getlayer(sp.SCTP).tag == 1 + + # Send an INIT with a different initiate tag, expect another init ack + packet = sp.IP(src="192.0.2.1", dst="192.0.2.2") \ + / sp.SCTP(sport=1234, dport=1234) \ + / sp.SCTPChunkInit(init_tag=42, n_in_streams=1, n_out_streams=1, a_rwnd=1500) + packet.show() + + r = sp.sr1(packet, timeout=3) + assert r + r.show() + assert r.getlayer(sp.SCTP) + assert r.getlayer(sp.SCTPChunkInitAck) + assert r.getlayer(sp.SCTP).tag == 42 + class TestSCTPv6(VnetTestTemplate): REQUIRED_MODULES = ["sctp", "pf"] TOPOLOGY = { From nobody Thu Dec 11 18:05:51 2025 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 4dS0rH32hKz6K7WN for ; Thu, 11 Dec 2025 18:05:51 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dS0rH2Jfwz46bM for ; Thu, 11 Dec 2025 18:05:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765476351; 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=Ix+20c06W4J3eZaAelBKC/xw4Vo0Eja3LV0WYOxjP9s=; b=lZlHVs3tuvr1wThkiRFdcJC+2IF/+Amajm7xmNsk2Mn6BPUysBpajADMKN7AGRRrwgJxAN +jHwte/zDT0bD0EmWJDb+ZuF+C33Y2+Q+XGsx4EuXgXMtWxUytIRMMAMcSfw8oY26RAwgT fHVd8nWWwp6BwOMte/Pb4DF2LPjJ4ExXryz2X6r04RGMapTiTtXRpkkuRZI6qplPwu6q5H LbroGBrjCoBW1NxGiRVEDsLy3bB5S36wKBpjmTPcoIWoUkaoRtb3gMhzIQLvnVOaWviukM bpNTrDamh6xWr9QU5OXxNy4rCoU5hjqCuyr+eTtDsAWv27BXS2KvI3vuYkq0qw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765476351; 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=Ix+20c06W4J3eZaAelBKC/xw4Vo0Eja3LV0WYOxjP9s=; b=mAsTJWl5B5/RoVxvB7tsFzzqyTDwzJJ93M9Sv/A1yFsP3Xs+TccnsuVeir+6nTe2/ossls EfPXkjC0ogXgwP0xX+i1r4V0LatWOvX12bDUaY5fH6qOcMKTUCxf5Ml+za3t3jTmmCUsEh 1JgqCcXDNqScqm0UIYUjyJ1VYDsP7F8ZZg674htVcsfgsDwcTBXXCWY2i+upMrWdXExgbq Ag+WwTBJ2kZR16aAmkDUhml8vmMaWpmJabPvJIrqkpWpzz/tqR7S6FjJTxB6+bMM1imxsJ s6TfsO633xAnrx/OTY1zCGnjtHoPGwUnsMHxvkwGFHKuaZJGxwxxeO3x+TMZFw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765476351; a=rsa-sha256; cv=none; b=AjIObHgzzWQSv8oFXoeNmxINQZKFKbriw2KhOCsAa39rQzAKJE0FEHFPKDIi1C7gIGzhDp NC+UMPbRjB/5y+g1qtrIaklc46neRDwQw3ZNPGN8zlQgSTXvGnwCsqsWD/tsBwEQMhqIiq 8/w4ol36/K6RcIsCXnZUvDCqeUIpTME/bmYmpTYoXUWVMJzhFtUfiQxcKifztvJp2Y3BbW yutjd8ZuLa0Tmgv6ufomnHjySMcp7bG7SGaDHuO6Qw432q0zzn21aVMz94QG/5dsp6odi5 dpLWuykQTz9K7T0ZLgakQDx/awmLfSnpZJn73URIFbKrpas7G2bnlPVMmwaqUA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dS0rH1tYyzhvp for ; Thu, 11 Dec 2025 18:05:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 21aaf by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 18:05:51 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: f50f8cbb401b - stable/15 - riscv/pmap: Handle superpages in pmap_extract_and_hold() 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 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/15 X-Git-Reftype: branch X-Git-Commit: f50f8cbb401b35d0fad17ae1f84c56040bf12d2c Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 18:05:51 +0000 Message-Id: <693b07ff.21aaf.7fe3f4f8@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=f50f8cbb401b35d0fad17ae1f84c56040bf12d2c commit f50f8cbb401b35d0fad17ae1f84c56040bf12d2c Author: Mark Johnston AuthorDate: 2025-12-03 13:41:30 +0000 Commit: Mark Johnston CommitDate: 2025-12-11 17:59:09 +0000 riscv/pmap: Handle superpages in pmap_extract_and_hold() Without this change, vm_fault_quick_hold_pages() falls back to the slow fault handler when it encounters a superpage mapping. Reviewed by: alc, kib Reported and tested by: br MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54022 (cherry picked from commit 20a0a2f8f36f5db704b674106fa61d8d95b6b071) --- sys/riscv/riscv/pmap.c | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/sys/riscv/riscv/pmap.c b/sys/riscv/riscv/pmap.c index 26efaecc64d1..0deb8b93a6dc 100644 --- a/sys/riscv/riscv/pmap.c +++ b/sys/riscv/riscv/pmap.c @@ -1134,19 +1134,29 @@ pmap_extract(pmap_t pmap, vm_offset_t va) vm_page_t pmap_extract_and_hold(pmap_t pmap, vm_offset_t va, vm_prot_t prot) { + pd_entry_t *l2p, l2; pt_entry_t *l3p, l3; vm_page_t m; m = NULL; PMAP_LOCK(pmap); - l3p = pmap_l3(pmap, va); - if (l3p != NULL && (l3 = pmap_load(l3p)) != 0) { - if ((l3 & PTE_W) != 0 || (prot & VM_PROT_WRITE) == 0) { - m = PTE_TO_VM_PAGE(l3); - if (!vm_page_wire_mapped(m)) - m = NULL; + l2p = pmap_l2(pmap, va); + if (l2p == NULL || ((l2 = pmap_load(l2p)) & PTE_V) == 0) { + ; + } else if ((l2 & PTE_RWX) != 0) { + if ((l2 & PTE_W) != 0 || (prot & VM_PROT_WRITE) == 0) { + m = PHYS_TO_VM_PAGE(L2PTE_TO_PHYS(l2) + + (va & L2_OFFSET)); + } + } else { + l3p = pmap_l2_to_l3(l2p, va); + if ((l3 = pmap_load(l3p)) != 0) { + if ((l3 & PTE_W) != 0 || (prot & VM_PROT_WRITE) == 0) + m = PTE_TO_VM_PAGE(l3); } } + if (m != NULL && !vm_page_wire_mapped(m)) + m = NULL; PMAP_UNLOCK(pmap); return (m); } From nobody Thu Dec 11 18:05:52 2025 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 4dS0rJ5cRhz6K7nm for ; Thu, 11 Dec 2025 18:05:52 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dS0rJ3N44z46JG for ; Thu, 11 Dec 2025 18:05:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765476352; 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=tHJx026Qxu5cdPbgX0AkzoV3HQeryVd3l2p47vSWTgg=; b=SoDz+sabAJyk10bRG9Rfm7IGLAFCkTq+TjUAMObBbiOUEZ+ILdJrglRplICjd0wmgO4LTM 4p2to4vQRslIAkNzgPB8Ut5NnPuitQOfgP8hXhYe4ll2LPCmxayU+O9Sd1sc2VyZMsNsRD T/yxoz0Dh8Muoo+mDgNZGPKh6pgJxyNRsT+q9CXcu3NZ4gG1lc2VL6DW2whnRo+Hls8XLG vdWgl8DGbmTXTCS2iuVA1UUBNlCqIJ3R1v6nuNl3Hj+eZ1vfRRY2pHWmWwjZ0Mo1djCign Fjz2g6Ys0ICXDfwiOFdcS8zuWBU1QijxpIbHXOftJ6Bxf+ZeQgW37022s0uRJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765476352; 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=tHJx026Qxu5cdPbgX0AkzoV3HQeryVd3l2p47vSWTgg=; b=iYeKqz8PPYtSqpeMbVy8C+83llgbGpPWV9CfLCNdhQoci7nPtnprp5yARCsPQD+TgElmyG pK+0ZQNTRxHKQeETLrIVSn2xxdf+sGhYHQ+s6bzKF2E5uaWUgme9QeTVIr9cZ6GYzLV+YG d3d88HOjyoClql0PrNHPIiyTLRtLKP9iG7BaX3nlmjkvbg2sZSiCoaBDv+jhbgSqiwK4Wq uRpU4Zd58ldkqBryxF4TMWCnRthHbTydZWyFq1vg2TpsrmulCzRfvizDnwVflEi+wkrkA1 Qipoqt1gG3ThGYS/j/35/P+SMCGH0orJ63MVrKll8gyQa0GkPbALDqDGHLYQBw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765476352; a=rsa-sha256; cv=none; b=oXNa3ovNAhLdqUciYTXvQh4aryy8skoOHpeLFm4MhN3kSSQSFNizEfO3yG714tG3UbXX+B s+CQndXr8M2YpkKfpiITtQ3VAM5GePDw+nZgw4bQpq3D0br6toa+proSdpFNvJ+Rb26YwE LaELIUD/fy+WT5h8Snp5xWM7fA8iLwoLLoLJag5vjmuEw9RCwtyH7tI3V3/q2kE5QTS+Zq fDIPwaboOubtPM4HxByy1fCSuamPra31tBZledAsjgVccHWn8RFyOPhO8WUqyykiprq4JR nq+05qRg86/aaHw1ulNxBTouic5mxQ1mp9RrbI2gJc8zELvxP/8S0POowj67nw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dS0rJ2VBFzj7Z for ; Thu, 11 Dec 2025 18:05:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 21788 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 18:05:52 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: e29fe1c251a1 - stable/15 - divert: Use CK_SLISTs for the divcb hash table 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 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/15 X-Git-Reftype: branch X-Git-Commit: e29fe1c251a1a95ccb989779d0d7921666c038d4 Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 18:05:52 +0000 Message-Id: <693b0800.21788.53469aa1@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=e29fe1c251a1a95ccb989779d0d7921666c038d4 commit e29fe1c251a1a95ccb989779d0d7921666c038d4 Author: Mark Johnston AuthorDate: 2025-12-03 13:43:04 +0000 Commit: Mark Johnston CommitDate: 2025-12-11 17:59:09 +0000 divert: Use CK_SLISTs for the divcb hash table The hash table is accessed in ip_divert_packet(), and there the accesses are synchronized only by the net epoch, so plain SLIST is not safe. Reviewed by: ae MFC after: 1 week Sponsored by: OPNsense Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54011 (cherry picked from commit 74f7e916211acafd10af05efd893ccbac1881119) --- sys/netinet/ip_divert.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/sys/netinet/ip_divert.c b/sys/netinet/ip_divert.c index 5a561814cdb5..f98a599e7554 100644 --- a/sys/netinet/ip_divert.c +++ b/sys/netinet/ip_divert.c @@ -35,6 +35,7 @@ #include "opt_sctp.h" #include +#include #include #include #include @@ -137,7 +138,7 @@ static int div_output_outbound(int family, struct socket *so, struct mbuf *m); struct divcb { union { - SLIST_ENTRY(divcb) dcb_next; + CK_SLIST_ENTRY(divcb) dcb_next; intptr_t dcb_bound; #define DCB_UNBOUND ((intptr_t)-1) }; @@ -147,7 +148,7 @@ struct divcb { struct epoch_context dcb_epochctx; }; -SLIST_HEAD(divhashhead, divcb); +CK_SLIST_HEAD(divhashhead, divcb); VNET_DEFINE_STATIC(struct divhashhead, divhash[DIVHASHSIZE]) = {}; #define V_divhash VNET(divhash) @@ -273,7 +274,7 @@ divert_packet(struct mbuf *m, bool incoming) } /* Put packet on socket queue, if any */ - SLIST_FOREACH(dcb, &V_divhash[DIVHASH(nport)], dcb_next) + CK_SLIST_FOREACH(dcb, &V_divhash[DIVHASH(nport)], dcb_next) if (dcb->dcb_port == nport) break; @@ -601,7 +602,7 @@ div_detach(struct socket *so) so->so_pcb = NULL; DIVERT_LOCK(); if (dcb->dcb_bound != DCB_UNBOUND) - SLIST_REMOVE(&V_divhash[DCBHASH(dcb)], dcb, divcb, dcb_next); + CK_SLIST_REMOVE(&V_divhash[DCBHASH(dcb)], dcb, divcb, dcb_next); V_dcb_count--; V_dcb_gencnt++; DIVERT_UNLOCK(); @@ -620,16 +621,16 @@ div_bind(struct socket *so, struct sockaddr *nam, struct thread *td) return EINVAL; port = ((struct sockaddr_in *)nam)->sin_port; DIVERT_LOCK(); - SLIST_FOREACH(dcb, &V_divhash[DIVHASH(port)], dcb_next) + CK_SLIST_FOREACH(dcb, &V_divhash[DIVHASH(port)], dcb_next) if (dcb->dcb_port == port) { DIVERT_UNLOCK(); return (EADDRINUSE); } dcb = so->so_pcb; if (dcb->dcb_bound != DCB_UNBOUND) - SLIST_REMOVE(&V_divhash[DCBHASH(dcb)], dcb, divcb, dcb_next); + CK_SLIST_REMOVE(&V_divhash[DCBHASH(dcb)], dcb, divcb, dcb_next); dcb->dcb_port = port; - SLIST_INSERT_HEAD(&V_divhash[DIVHASH(port)], dcb, dcb_next); + CK_SLIST_INSERT_HEAD(&V_divhash[DIVHASH(port)], dcb, dcb_next); DIVERT_UNLOCK(); return (0); @@ -668,7 +669,7 @@ div_pcblist(SYSCTL_HANDLER_ARGS) DIVERT_LOCK(); for (int i = 0; i < DIVHASHSIZE; i++) - SLIST_FOREACH(dcb, &V_divhash[i], dcb_next) { + CK_SLIST_FOREACH(dcb, &V_divhash[i], dcb_next) { if (dcb->dcb_gencnt <= xig.xig_gen) { struct xinpcb xi; From nobody Thu Dec 11 18:05:53 2025 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 4dS0rK5mhjz6K7nn for ; Thu, 11 Dec 2025 18:05:53 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dS0rK3q6Hz46fx for ; Thu, 11 Dec 2025 18:05:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765476353; 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=u6Z97UcldscRCZ8YH9pQTWkjimc0maNO9ucLLrvLLd0=; b=oWxd89V+E/L/xMna3+n7JPbWyk5XumF3i4EaiJ4gcYzdbEo+y/zWqMuVEddY2IJww8+oz/ jN3a2uWugb7+hORrBkbBGWRRXC1lytFO0kBZp3biD3/+5DIkX1zjN+f9oPKz1vyrgvA5q3 f1Jz0dkcOXnPhb/0n7hEX0fJ1FhdyP7Vse1OHtAqpG2OCE8yKRgShw0Aj2O630OuFF9Tpe hCB9gV+n9pF8uoKEriWUXj48mO7mdQ5Hy7hSFvjwyR+/5GgYZY+tIM2A8+1PAHh+e2LcXm MI9xjoVcybmUs8sdf5SnforSwxEB4v/036vY0ud6r5rcgk/0VxHBXm/1/t7yWQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765476353; 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=u6Z97UcldscRCZ8YH9pQTWkjimc0maNO9ucLLrvLLd0=; b=jDwIBFIV07WMXqcGhd1Ams7wzKq+IuOklBtZpMDkBJxFZdry9gz5Cs2fgmGD2HFGRjf/EU gUznsz66uBZYB60VGXUN+ZXp7ilVav9xV3xkrz2ktWXckYzYO9LbZcEVpQj2eBfm0ycA7D dw4lw7tj29Xmt2dGqH2o0kDpP367xMTUnAdjIRHvMRFOyMy1BLbr8LtHohEA/QexvBNrHg jcITjw5lU0Lz0ZzEadAtK++MKY2sXsuhW8dTxbxbJOTlUwZpVK/PxyP8kPFqJUYMcjPyJL iVQY/9hZGMwGGUpUtAtqNXfV4N1g4twGdc6bvjdNPaXgSKTaYBK9NHVH2g4/fg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765476353; a=rsa-sha256; cv=none; b=vMCJs4bXX0f/sv04JMxLvSfcd15dfy/kG4QvEKolSepHMA9nIJD5vyJQZMra0TeZZWjbmP vvdRD8Sx6RzqCivgumjdabc7if1tDQk5f+nfGDnc4dO5RpG9QxPIGOIGufmbaNVIN2QrSN /igZrN9Pi5yUmigWg1miDJSl2AmWVjaqddolAGORICKq+aWnp0OI5xrnn2Uy2JqSR5ohkq BwVKr5N2tBXY0KbI4yL/wVh8FaSwjas/i9WvleWhtWIQ3baYHsaxJ22Ffj0seW3U9as764 YhpwOAMhFWJYk2TAAr8iQWzvygT7OUsVwzQiMKgfpHfbhDC/Dt9EF3eJIW91Pg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dS0rK3K3SzjFF for ; Thu, 11 Dec 2025 18:05:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 215a9 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 18:05:53 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 7720566c1ae7 - stable/15 - libdtrace: Update io.d to chase changes to struct bio layout 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 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/15 X-Git-Reftype: branch X-Git-Commit: 7720566c1ae76038f8859f321afd8517eba01277 Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 18:05:53 +0000 Message-Id: <693b0801.215a9.70755a95@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=7720566c1ae76038f8859f321afd8517eba01277 commit 7720566c1ae76038f8859f321afd8517eba01277 Author: Mark Johnston AuthorDate: 2025-11-05 21:51:55 +0000 Commit: Mark Johnston CommitDate: 2025-12-11 18:04:13 +0000 libdtrace: Update io.d to chase changes to struct bio layout Fixes: 6c406b5b9312 ("exterror(9): add infra for bufs and bios") (cherry picked from commit 1ca7542a1b31fffefaac5a2ff45ef23f908b33c2) --- cddl/lib/libdtrace/io.d | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cddl/lib/libdtrace/io.d b/cddl/lib/libdtrace/io.d index d576f57476ce..484e6416bac7 100644 --- a/cddl/lib/libdtrace/io.d +++ b/cddl/lib/libdtrace/io.d @@ -73,7 +73,7 @@ translator bufinfo_t < struct bio *B > { b_lblkno = 0; b_resid = B->bio_resid; b_bufsize = 0; /* XXX gnn */ - b_error = B->bio_error; + b_error = B->bio_exterr.error; }; /* From nobody Thu Dec 11 20:22:48 2025 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 4dS3tJ1jdMz6KJQb for ; Thu, 11 Dec 2025 20:22:48 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dS3tJ13kVz3Vpd for ; Thu, 11 Dec 2025 20:22:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765484568; 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=H3pTPrOG45ukLz4iviD6aCApLCbi9db4DwAl5HCV0jU=; b=X4NhCCnA37doNfnDYxteoNq0tN/DC2Bl/WvtX0vRcfo4UmvBMe+un/5NEDXsilSLMHt6+C vB8GwE0gHe0xfZzhi6ZmO2/E5s5TPz+klnnXMXlMqHzlyDBPqZoAE+bLAq6HgBZDkaqk9B 6VogX7zbPGxuOTp6fmjDWTXAX97BxCPqXixMLvk+CAvyTQ1kcnkfBiVF4QlUpkaR3VIudR 5zbjqUD1r2jYFsSHOaOHolk5581yvZA0bPUvkP07X9q6WegKjz8G6i86FXYM7Ol4tRNm/v 0pNOMQuTd4da+um6cQlbnNw2oCX6XU8/ulo/bXe2JvqZm/FxdqjM8/oDa48fbQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765484568; 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=H3pTPrOG45ukLz4iviD6aCApLCbi9db4DwAl5HCV0jU=; b=In/JyjVD96jwVMmPKgw80ZgVjOqkvNIFT+TVEsMB446cjM/WTh82mAk3iDxym52T8r/V52 AqyNIwVhLZ7zVqzVcz0TmaTAk7quHQ1UE3YfAHEk5QvwdDR6Xd617j9kMA+fXlfQS3o/zL TXkuoomvplUrNsIqWJ27yfKUnH2ncFlSJT6xXcMmxUBveWExL/qHooeIixL1CeKxpSGLhc JTl6WEsd2g+4CDKPRJPAuAWL3tKjnC88MglMeRrNRWhRDF4wBJY9QlobBb+OQahA71QGpR pcNjxIImbe0xhynri7qI+97YsMVbMRxDLPMQFIoj5qTTpFJYkMtxBbLSYsdcPg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765484568; a=rsa-sha256; cv=none; b=gaaZx+REhcN4KFBWei0x1dKLjP44aPZ/eVPgWefufYPtOBzs8nmNfSCmJ1++BnJOi86SCv fAWsmHnuUgzSSE+y+m1G2fX8fk0WF6+94tKzWGxkCzYOa67mdC5d+ql46HbuAJCTjENgG3 jYlhyRzWXnvbS3Kgzxd5sR6KD8LPVOkSkDHrpkO6k6ebXhXJFzwugYJBbtzAqeBHhYIJBx vOSDSdHJBK9HN0AdvO8kN1lGdnHzxYcoiglaztmviKM+LQDuzcqQA+hDQlp7Cy3qNdzT9O K//gvwEpZOYZjcimMGeoczxgGp2x4BoRQsGDxWidRBhn4sNllJXYrOzLf3LZbQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dS3tJ0YJ4zmww for ; Thu, 11 Dec 2025 20:22:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2f26a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 20:22:48 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: =?utf-8?Q?Ana=C3=ABll?=e CAZUC From: Mitchell Horne Subject: git: a40167734ecb - stable/15 - pmc: add alderlake model 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: a40167734ecb3aba4e714e49baa4e6693aec2631 Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 20:22:48 +0000 Message-Id: <693b2818.2f26a.50d19f27@gitrepo.freebsd.org> The branch stable/15 has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=a40167734ecb3aba4e714e49baa4e6693aec2631 commit a40167734ecb3aba4e714e49baa4e6693aec2631 Author: Anaëlle CAZUC AuthorDate: 2025-12-04 17:32:39 +0000 Commit: Mitchell Horne CommitDate: 2025-12-11 19:31:53 +0000 pmc: add alderlake model The commit 601925180df4 added the models 6-B7, 6-BA, 6-BF to libpmc, but they must also be added to the hwpmc module to allow pmc to work on those CPUs. Reviewed by: mhorne MFC after: 1 week Fixes: 601925180df4 ("libpmc: add more alderlake models") Sponsored by: Stormshield Differential Revision: https://reviews.freebsd.org/D49255 (cherry picked from commit 057dae35ffc6b17dacc84fa21921e93a17ce12b0) --- sys/dev/hwpmc/hwpmc_intel.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/dev/hwpmc/hwpmc_intel.c b/sys/dev/hwpmc/hwpmc_intel.c index b195fcb3f362..68693e00c426 100644 --- a/sys/dev/hwpmc/hwpmc_intel.c +++ b/sys/dev/hwpmc/hwpmc_intel.c @@ -211,6 +211,9 @@ pmc_intel_initialize(void) break; case 0x97: case 0x9A: + case 0xB7: + case 0xBA: + case 0xBF: cputype = PMC_CPU_INTEL_ALDERLAKE; nclasses = 3; break; From nobody Thu Dec 11 20:22:49 2025 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 4dS3tK51bJz6KJQc for ; Thu, 11 Dec 2025 20:22:49 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dS3tK3S78z3Vpf for ; Thu, 11 Dec 2025 20:22:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765484569; 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=e1BX0LZLOskwQvS3LyIA5oPISGtvC8wjgQMnRFO9ZlE=; b=uEyQeLaXCo5k51uJi79r8t837ftQ+7trHAB5avhMqbkifGgU6i41g233VgCVgSNPHIOGtp 4F/TaCbOHgMxI9E/JDm+2FhoFI6ZzSJHN0EzHua2UyqeLYEdskkYvVsR1LIEODSZV6KV2M QKSAY4vYD99Bldc8/l+JoSeO5c6DL6thHZDYln02ajlaxnxXW8oXI0fk5v/I15MLXt0/LA Qs0IqnLn5ogH4yiL1H330rfRDlj2eN033IibZFTWRdEVLQR8HeiWglxPykTR9AKA4jM9XC imXWnFtPvW+Aus7uaA192aB/Dgdg6S0KZD1vMMt1r7RB0nRfaMvG+bNraID0/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765484569; 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=e1BX0LZLOskwQvS3LyIA5oPISGtvC8wjgQMnRFO9ZlE=; b=KRahd38o4+OzMksxtcxOfD7HzL1MqlcN/0JRX2xqwoWJtQbbzmw9qquMHBQ6y9ETP6Zi1R fh8lbP75puyH+7XR2j7T1DZ94XtY2JbAEC17DWka44giHKfADE7PIt13k74MR4CXoZa2+J af53v3cOIvxGgLn8t5Ww4AeqPussah9cqCImECRbDYOhGM/TuG18alh10f53IthBkbMQ5z LWvCFrfgt0tLQovpck3Bc8oBEo4N/K7iC5niWz2jiHDZpi0qQ+0h3f3K0vh3LW+09r6Umv z6YqrD1oWqd/P17YdNvMMUVWiv6/LajYkRM1nNllZMk6KH/JI5RT653+nGpvGA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765484569; a=rsa-sha256; cv=none; b=DjnbngVe2YTmbXmRpG52E/MhWDt/OaUFJcan50hBEVKQvgu8rtCRdOPW8FxtJsVUBk22Lz ZtQ4IoakwaWscP/eGeZQGgvAhx3z2KczbIhjQgZm2Vz6MDvZlK0mf0ul54JWGrtdAAHnmO rWW+qkkZEHhrgydnji77ImHNRnSMY60YLUtqgnkLSZ7v/17dWDBOi4IWUnh2fOmKrrOqBa tHRHYIDjF35fwdNtbZbrWbZaI1e9ycaYLTDjzLYiOdZqetT1O0rHnOtayr7L/MSpfkftWZ /ns6Cm5xLxAPtL2mynHnKM0c4tlX8BslPT8g/Dr0AB1Ab9QJI6R5tT/eeVE90Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dS3tK33Cnzn2H for ; Thu, 11 Dec 2025 20:22:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3022b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 20:22:49 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: =?utf-8?Q?Ana=C3=ABll?=e CAZUC From: Mitchell Horne Subject: git: 6b0cb6ea249e - stable/15 - pmc: add emerald rapids model 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 6b0cb6ea249e05ef1bb608420add9363b0cee6b2 Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 20:22:49 +0000 Message-Id: <693b2819.3022b.3de4005d@gitrepo.freebsd.org> The branch stable/15 has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=6b0cb6ea249e05ef1bb608420add9363b0cee6b2 commit 6b0cb6ea249e05ef1bb608420add9363b0cee6b2 Author: Anaëlle CAZUC AuthorDate: 2025-12-04 17:36:32 +0000 Commit: Mitchell Horne CommitDate: 2025-12-11 19:31:53 +0000 pmc: add emerald rapids model This commit adds emerald rapids CPU model to hwpmc/libpmc. JSON event definitions are imported from Intel perfmon version 1.06. Reviewed by: mhorne MFC after: 1 week Sponsored by: Stormshield Differential Revision: https://reviews.freebsd.org/D49228 (cherry picked from commit 51a01f3debff8abf63c7cc21db9523c8feb53823) --- .../pmu-events/arch/x86/emeraldrapids/cache.json | 888 +++ .../arch/x86/emeraldrapids/floating-point.json | 214 + .../arch/x86/emeraldrapids/frontend.json | 389 ++ .../pmu-events/arch/x86/emeraldrapids/memory.json | 344 ++ .../pmu-events/arch/x86/emeraldrapids/other.json | 315 + .../arch/x86/emeraldrapids/pipeline.json | 962 +++ .../arch/x86/emeraldrapids/uncore-cache.json | 6248 ++++++++++++++++++++ .../arch/x86/emeraldrapids/uncore-cxl.json | 450 ++ .../x86/emeraldrapids/uncore-interconnect.json | 6199 +++++++++++++++++++ .../arch/x86/emeraldrapids/uncore-io.json | 3617 +++++++++++ .../arch/x86/emeraldrapids/uncore-memory.json | 3308 +++++++++++ .../arch/x86/emeraldrapids/uncore-power.json | 197 + .../arch/x86/emeraldrapids/virtual-memory.json | 165 + lib/libpmc/pmu-events/arch/x86/mapfile.csv | 1 + sys/dev/hwpmc/hwpmc_intel.c | 4 + sys/sys/pmc.h | 1 + 16 files changed, 23302 insertions(+) diff --git a/lib/libpmc/pmu-events/arch/x86/emeraldrapids/cache.json b/lib/libpmc/pmu-events/arch/x86/emeraldrapids/cache.json new file mode 100644 index 000000000000..ab09bd9fb409 --- /dev/null +++ b/lib/libpmc/pmu-events/arch/x86/emeraldrapids/cache.json @@ -0,0 +1,888 @@ +[ + { + "BriefDescription": "L1D.HWPF_MISS", + "EventCode": "0x51", + "EventName": "L1D.HWPF_MISS", + "SampleAfterValue": "1000003", + "UMask": "0x20" + }, + { + "BriefDescription": "Counts the number of cache lines replaced in L1 data cache.", + "EventCode": "0x51", + "EventName": "L1D.REPLACEMENT", + "PublicDescription": "Counts L1D data line replacements including opportunistic replacements, and replacements that require stall-for-replace or block-for-replace.", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Number of cycles a demand request has waited due to L1D Fill Buffer (FB) unavailability.", + "EventCode": "0x48", + "EventName": "L1D_PEND_MISS.FB_FULL", + "PublicDescription": "Counts number of cycles a demand request has waited due to L1D Fill Buffer (FB) unavailability. Demand requests include cacheable/uncacheable demand load, store, lock or SW prefetch accesses.", + "SampleAfterValue": "1000003", + "UMask": "0x2" + }, + { + "BriefDescription": "Number of phases a demand request has waited due to L1D Fill Buffer (FB) unavailability.", + "CounterMask": "1", + "EdgeDetect": "1", + "EventCode": "0x48", + "EventName": "L1D_PEND_MISS.FB_FULL_PERIODS", + "PublicDescription": "Counts number of phases a demand request has waited due to L1D Fill Buffer (FB) unavailability. Demand requests include cacheable/uncacheable demand load, store, lock or SW prefetch accesses.", + "SampleAfterValue": "1000003", + "UMask": "0x2" + }, + { + "BriefDescription": "This event is deprecated. Refer to new event L1D_PEND_MISS.L2_STALLS", + "Deprecated": "1", + "EventCode": "0x48", + "EventName": "L1D_PEND_MISS.L2_STALL", + "SampleAfterValue": "1000003", + "UMask": "0x4" + }, + { + "BriefDescription": "Number of cycles a demand request has waited due to L1D due to lack of L2 resources.", + "EventCode": "0x48", + "EventName": "L1D_PEND_MISS.L2_STALLS", + "PublicDescription": "Counts number of cycles a demand request has waited due to L1D due to lack of L2 resources. Demand requests include cacheable/uncacheable demand load, store, lock or SW prefetch accesses.", + "SampleAfterValue": "1000003", + "UMask": "0x4" + }, + { + "BriefDescription": "Number of L1D misses that are outstanding", + "EventCode": "0x48", + "EventName": "L1D_PEND_MISS.PENDING", + "PublicDescription": "Counts number of L1D misses that are outstanding in each cycle, that is each cycle the number of Fill Buffers (FB) outstanding required by Demand Reads. FB either is held by demand loads, or it is held by non-demand loads and gets hit at least once by demand. The valid outstanding interval is defined until the FB deallocation by one of the following ways: from FB allocation, if FB is allocated by demand from the demand Hit FB, if it is allocated by hardware or software prefetch. Note: In the L1D, a Demand Read contains cacheable or noncacheable demand loads, including ones causing cache-line splits and reads due to page walks resulted from any request type.", + "SampleAfterValue": "1000003", + "UMask": "0x1" + }, + { + "BriefDescription": "Cycles with L1D load Misses outstanding.", + "CounterMask": "1", + "EventCode": "0x48", + "EventName": "L1D_PEND_MISS.PENDING_CYCLES", + "PublicDescription": "Counts duration of L1D miss outstanding in cycles.", + "SampleAfterValue": "1000003", + "UMask": "0x1" + }, + { + "BriefDescription": "L2 cache lines filling L2", + "EventCode": "0x25", + "EventName": "L2_LINES_IN.ALL", + "PublicDescription": "Counts the number of L2 cache lines filling the L2. Counting does not cover rejects.", + "SampleAfterValue": "100003", + "UMask": "0x1f" + }, + { + "BriefDescription": "L2_LINES_OUT.NON_SILENT", + "EventCode": "0x26", + "EventName": "L2_LINES_OUT.NON_SILENT", + "SampleAfterValue": "200003", + "UMask": "0x2" + }, + { + "BriefDescription": "Non-modified cache lines that are silently dropped by L2 cache when triggered by an L2 cache fill.", + "EventCode": "0x26", + "EventName": "L2_LINES_OUT.SILENT", + "PublicDescription": "Counts the number of lines that are silently dropped by L2 cache when triggered by an L2 cache fill. These lines are typically in Shared or Exclusive state. A non-threaded event.", + "SampleAfterValue": "200003", + "UMask": "0x1" + }, + { + "BriefDescription": "Cache lines that have been L2 hardware prefetched but not used by demand accesses", + "EventCode": "0x26", + "EventName": "L2_LINES_OUT.USELESS_HWPF", + "PublicDescription": "Counts the number of cache lines that have been prefetched by the L2 hardware prefetcher but not used by demand access when evicted from the L2 cache", + "SampleAfterValue": "200003", + "UMask": "0x4" + }, + { + "BriefDescription": "All accesses to L2 cache [This event is alias to L2_RQSTS.REFERENCES]", + "EventCode": "0x24", + "EventName": "L2_REQUEST.ALL", + "PublicDescription": "Counts all requests that were hit or true misses in L2 cache. True-miss excludes misses that were merged with ongoing L2 misses. [This event is alias to L2_RQSTS.REFERENCES]", + "SampleAfterValue": "200003", + "UMask": "0xff" + }, + { + "BriefDescription": "Read requests with true-miss in L2 cache. [This event is alias to L2_RQSTS.MISS]", + "EventCode": "0x24", + "EventName": "L2_REQUEST.MISS", + "PublicDescription": "Counts read requests of any type with true-miss in the L2 cache. True-miss excludes L2 misses that were merged with ongoing L2 misses. [This event is alias to L2_RQSTS.MISS]", + "SampleAfterValue": "200003", + "UMask": "0x3f" + }, + { + "BriefDescription": "L2 code requests", + "EventCode": "0x24", + "EventName": "L2_RQSTS.ALL_CODE_RD", + "PublicDescription": "Counts the total number of L2 code requests.", + "SampleAfterValue": "200003", + "UMask": "0xe4" + }, + { + "BriefDescription": "Demand Data Read access L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.ALL_DEMAND_DATA_RD", + "PublicDescription": "Counts Demand Data Read requests accessing the L2 cache. These requests may hit or miss L2 cache. True-miss exclude misses that were merged with ongoing L2 misses. An access is counted once.", + "SampleAfterValue": "200003", + "UMask": "0xe1" + }, + { + "BriefDescription": "Demand requests that miss L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.ALL_DEMAND_MISS", + "PublicDescription": "Counts demand requests that miss L2 cache.", + "SampleAfterValue": "200003", + "UMask": "0x27" + }, + { + "BriefDescription": "Demand requests to L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.ALL_DEMAND_REFERENCES", + "PublicDescription": "Counts demand requests to L2 cache.", + "SampleAfterValue": "200003", + "UMask": "0xe7" + }, + { + "BriefDescription": "L2_RQSTS.ALL_HWPF", + "EventCode": "0x24", + "EventName": "L2_RQSTS.ALL_HWPF", + "SampleAfterValue": "200003", + "UMask": "0xf0" + }, + { + "BriefDescription": "RFO requests to L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.ALL_RFO", + "PublicDescription": "Counts the total number of RFO (read for ownership) requests to L2 cache. L2 RFO requests include both L1D demand RFO misses as well as L1D RFO prefetches.", + "SampleAfterValue": "200003", + "UMask": "0xe2" + }, + { + "BriefDescription": "L2 cache hits when fetching instructions, code reads.", + "EventCode": "0x24", + "EventName": "L2_RQSTS.CODE_RD_HIT", + "PublicDescription": "Counts L2 cache hits when fetching instructions, code reads.", + "SampleAfterValue": "200003", + "UMask": "0xc4" + }, + { + "BriefDescription": "L2 cache misses when fetching instructions", + "EventCode": "0x24", + "EventName": "L2_RQSTS.CODE_RD_MISS", + "PublicDescription": "Counts L2 cache misses when fetching instructions.", + "SampleAfterValue": "200003", + "UMask": "0x24" + }, + { + "BriefDescription": "Demand Data Read requests that hit L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.DEMAND_DATA_RD_HIT", + "PublicDescription": "Counts the number of demand Data Read requests initiated by load instructions that hit L2 cache.", + "SampleAfterValue": "200003", + "UMask": "0xc1" + }, + { + "BriefDescription": "Demand Data Read miss L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.DEMAND_DATA_RD_MISS", + "PublicDescription": "Counts demand Data Read requests with true-miss in the L2 cache. True-miss excludes misses that were merged with ongoing L2 misses. An access is counted once.", + "SampleAfterValue": "200003", + "UMask": "0x21" + }, + { + "BriefDescription": "L2_RQSTS.HWPF_MISS", + "EventCode": "0x24", + "EventName": "L2_RQSTS.HWPF_MISS", + "SampleAfterValue": "200003", + "UMask": "0x30" + }, + { + "BriefDescription": "Read requests with true-miss in L2 cache. [This event is alias to L2_REQUEST.MISS]", + "EventCode": "0x24", + "EventName": "L2_RQSTS.MISS", + "PublicDescription": "Counts read requests of any type with true-miss in the L2 cache. True-miss excludes L2 misses that were merged with ongoing L2 misses. [This event is alias to L2_REQUEST.MISS]", + "SampleAfterValue": "200003", + "UMask": "0x3f" + }, + { + "BriefDescription": "All accesses to L2 cache [This event is alias to L2_REQUEST.ALL]", + "EventCode": "0x24", + "EventName": "L2_RQSTS.REFERENCES", + "PublicDescription": "Counts all requests that were hit or true misses in L2 cache. True-miss excludes misses that were merged with ongoing L2 misses. [This event is alias to L2_REQUEST.ALL]", + "SampleAfterValue": "200003", + "UMask": "0xff" + }, + { + "BriefDescription": "RFO requests that hit L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.RFO_HIT", + "PublicDescription": "Counts the RFO (Read-for-Ownership) requests that hit L2 cache.", + "SampleAfterValue": "200003", + "UMask": "0xc2" + }, + { + "BriefDescription": "RFO requests that miss L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.RFO_MISS", + "PublicDescription": "Counts the RFO (Read-for-Ownership) requests that miss L2 cache.", + "SampleAfterValue": "200003", + "UMask": "0x22" + }, + { + "BriefDescription": "SW prefetch requests that hit L2 cache.", + "EventCode": "0x24", + "EventName": "L2_RQSTS.SWPF_HIT", + "PublicDescription": "Counts Software prefetch requests that hit the L2 cache. Accounts for PREFETCHNTA and PREFETCHT0/1/2 instructions when FB is not full.", + "SampleAfterValue": "200003", + "UMask": "0xc8" + }, + { + "BriefDescription": "SW prefetch requests that miss L2 cache.", + "EventCode": "0x24", + "EventName": "L2_RQSTS.SWPF_MISS", + "PublicDescription": "Counts Software prefetch requests that miss the L2 cache. Accounts for PREFETCHNTA and PREFETCHT0/1/2 instructions when FB is not full.", + "SampleAfterValue": "200003", + "UMask": "0x28" + }, + { + "BriefDescription": "Core-originated cacheable requests that missed L3 (Except hardware prefetches to the L3)", + "EventCode": "0x2e", + "EventName": "LONGEST_LAT_CACHE.MISS", + "PublicDescription": "Counts core-originated cacheable requests that miss the L3 cache (Longest Latency cache). Requests include data and code reads, Reads-for-Ownership (RFOs), speculative accesses and hardware prefetches to the L1 and L2. It does not include hardware prefetches to the L3, and may not count other types of requests to the L3.", + "SampleAfterValue": "100003", + "UMask": "0x41" + }, + { + "BriefDescription": "Core-originated cacheable requests that refer to L3 (Except hardware prefetches to the L3)", + "EventCode": "0x2e", + "EventName": "LONGEST_LAT_CACHE.REFERENCE", + "PublicDescription": "Counts core-originated cacheable requests to the L3 cache (Longest Latency cache). Requests include data and code reads, Reads-for-Ownership (RFOs), speculative accesses and hardware prefetches to the L1 and L2. It does not include hardware prefetches to the L3, and may not count other types of requests to the L3.", + "SampleAfterValue": "100003", + "UMask": "0x4f" + }, + { + "BriefDescription": "Retired load instructions.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.ALL_LOADS", + "PEBS": "1", + "PublicDescription": "Counts all retired load instructions. This event accounts for SW prefetch instructions of PREFETCHNTA or PREFETCHT0/1/2 or PREFETCHW.", + "SampleAfterValue": "1000003", + "UMask": "0x81" + }, + { + "BriefDescription": "Retired store instructions.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.ALL_STORES", + "PEBS": "1", + "PublicDescription": "Counts all retired store instructions.", + "SampleAfterValue": "1000003", + "UMask": "0x82" + }, + { + "BriefDescription": "All retired memory instructions.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.ANY", + "PEBS": "1", + "PublicDescription": "Counts all retired memory instructions - loads and stores.", + "SampleAfterValue": "1000003", + "UMask": "0x83" + }, + { + "BriefDescription": "Retired load instructions with locked access.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.LOCK_LOADS", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions with locked access.", + "SampleAfterValue": "100007", + "UMask": "0x21" + }, + { + "BriefDescription": "Retired load instructions that split across a cacheline boundary.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.SPLIT_LOADS", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions that split across a cacheline boundary.", + "SampleAfterValue": "100003", + "UMask": "0x41" + }, + { + "BriefDescription": "Retired store instructions that split across a cacheline boundary.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.SPLIT_STORES", + "PEBS": "1", + "PublicDescription": "Counts retired store instructions that split across a cacheline boundary.", + "SampleAfterValue": "100003", + "UMask": "0x42" + }, + { + "BriefDescription": "Retired load instructions that miss the STLB.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.STLB_MISS_LOADS", + "PEBS": "1", + "PublicDescription": "Number of retired load instructions that (start a) miss in the 2nd-level TLB (STLB).", + "SampleAfterValue": "100003", + "UMask": "0x11" + }, + { + "BriefDescription": "Retired store instructions that miss the STLB.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.STLB_MISS_STORES", + "PEBS": "1", + "PublicDescription": "Number of retired store instructions that (start a) miss in the 2nd-level TLB (STLB).", + "SampleAfterValue": "100003", + "UMask": "0x12" + }, + { + "BriefDescription": "Completed demand load uops that miss the L1 d-cache.", + "EventCode": "0x43", + "EventName": "MEM_LOAD_COMPLETED.L1_MISS_ANY", + "PublicDescription": "Number of completed demand load requests that missed the L1 data cache including shadow misses (FB hits, merge to an ongoing L1D miss)", + "SampleAfterValue": "1000003", + "UMask": "0xfd" + }, + { + "BriefDescription": "Retired load instructions whose data sources were HitM responses from shared L3", + "Data_LA": "1", + "EventCode": "0xd2", + "EventName": "MEM_LOAD_L3_HIT_RETIRED.XSNP_FWD", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions whose data sources were HitM responses from shared L3.", + "SampleAfterValue": "20011", + "UMask": "0x4" + }, + { + "BriefDescription": "Retired load instructions whose data sources were L3 hit and cross-core snoop missed in on-pkg core cache.", + "Data_LA": "1", + "EventCode": "0xd2", + "EventName": "MEM_LOAD_L3_HIT_RETIRED.XSNP_MISS", + "PEBS": "1", + "PublicDescription": "Counts the retired load instructions whose data sources were L3 hit and cross-core snoop missed in on-pkg core cache.", + "SampleAfterValue": "20011", + "UMask": "0x1" + }, + { + "BriefDescription": "Retired load instructions whose data sources were hits in L3 without snoops required", + "Data_LA": "1", + "EventCode": "0xd2", + "EventName": "MEM_LOAD_L3_HIT_RETIRED.XSNP_NONE", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions whose data sources were hits in L3 without snoops required.", + "SampleAfterValue": "100003", + "UMask": "0x8" + }, + { + "BriefDescription": "Retired load instructions whose data sources were L3 and cross-core snoop hits in on-pkg core cache", + "Data_LA": "1", + "EventCode": "0xd2", + "EventName": "MEM_LOAD_L3_HIT_RETIRED.XSNP_NO_FWD", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions whose data sources were L3 and cross-core snoop hits in on-pkg core cache.", + "SampleAfterValue": "20011", + "UMask": "0x2" + }, + { + "BriefDescription": "Retired load instructions which data sources missed L3 but serviced from local dram", + "Data_LA": "1", + "EventCode": "0xd3", + "EventName": "MEM_LOAD_L3_MISS_RETIRED.LOCAL_DRAM", + "PEBS": "1", + "PublicDescription": "Retired load instructions which data sources missed L3 but serviced from local DRAM.", + "SampleAfterValue": "100007", + "UMask": "0x1" + }, + { + "BriefDescription": "MEM_LOAD_L3_MISS_RETIRED.REMOTE_DRAM", + "Data_LA": "1", + "EventCode": "0xd3", + "EventName": "MEM_LOAD_L3_MISS_RETIRED.REMOTE_DRAM", + "PEBS": "1", + "SampleAfterValue": "1000003", + "UMask": "0x2" + }, + { + "BriefDescription": "Retired load instructions whose data sources was forwarded from a remote cache", + "Data_LA": "1", + "EventCode": "0xd3", + "EventName": "MEM_LOAD_L3_MISS_RETIRED.REMOTE_FWD", + "PEBS": "1", + "PublicDescription": "Retired load instructions whose data sources was forwarded from a remote cache.", + "SampleAfterValue": "100007", + "UMask": "0x8" + }, + { + "BriefDescription": "MEM_LOAD_L3_MISS_RETIRED.REMOTE_HITM", + "Data_LA": "1", + "EventCode": "0xd3", + "EventName": "MEM_LOAD_L3_MISS_RETIRED.REMOTE_HITM", + "PEBS": "1", + "SampleAfterValue": "1000003", + "UMask": "0x4" + }, + { + "BriefDescription": "Retired instructions with at least 1 uncacheable load or lock.", + "Data_LA": "1", + "EventCode": "0xd4", + "EventName": "MEM_LOAD_MISC_RETIRED.UC", + "PEBS": "1", + "PublicDescription": "Retired instructions with at least one load to uncacheable memory-type, or at least one cache-line split locked access (Bus Lock).", + "SampleAfterValue": "100007", + "UMask": "0x4" + }, + { + "BriefDescription": "Number of completed demand load requests that missed the L1, but hit the FB(fill buffer), because a preceding miss to the same cacheline initiated the line to be brought into L1, but data is not yet ready in L1.", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_RETIRED.FB_HIT", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions with at least one uop was load missed in L1 but hit FB (Fill Buffers) due to preceding miss to the same cache line with data not ready.", + "SampleAfterValue": "100007", + "UMask": "0x40" + }, + { + "BriefDescription": "Retired load instructions with L1 cache hits as data sources", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_RETIRED.L1_HIT", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions with at least one uop that hit in the L1 data cache. This event includes all SW prefetches and lock instructions regardless of the data source.", + "SampleAfterValue": "1000003", + "UMask": "0x1" + }, + { + "BriefDescription": "Retired load instructions missed L1 cache as data sources", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_RETIRED.L1_MISS", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions with at least one uop that missed in the L1 cache.", + "SampleAfterValue": "200003", + "UMask": "0x8" + }, + { + "BriefDescription": "Retired load instructions with L2 cache hits as data sources", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_RETIRED.L2_HIT", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions with L2 cache hits as data sources.", + "SampleAfterValue": "200003", + "UMask": "0x2" + }, + { + "BriefDescription": "Retired load instructions missed L2 cache as data sources", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_RETIRED.L2_MISS", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions missed L2 cache as data sources.", + "SampleAfterValue": "100021", + "UMask": "0x10" + }, + { + "BriefDescription": "Retired load instructions with L3 cache hits as data sources", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_RETIRED.L3_HIT", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions with at least one uop that hit in the L3 cache.", + "SampleAfterValue": "100021", + "UMask": "0x4" + }, + { + "BriefDescription": "Retired load instructions missed L3 cache as data sources", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_RETIRED.L3_MISS", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions with at least one uop that missed in the L3 cache.", + "SampleAfterValue": "50021", + "UMask": "0x20" + }, + { + "BriefDescription": "MEM_STORE_RETIRED.L2_HIT", + "EventCode": "0x44", + "EventName": "MEM_STORE_RETIRED.L2_HIT", + "SampleAfterValue": "200003", + "UMask": "0x1" + }, + { + "BriefDescription": "Retired memory uops for any access", + "EventCode": "0xe5", + "EventName": "MEM_UOP_RETIRED.ANY", + "PublicDescription": "Number of retired micro-operations (uops) for load or store memory accesses", + "SampleAfterValue": "1000003", + "UMask": "0x3" + }, + { + "BriefDescription": "Counts demand instruction fetches and L1 instruction cache prefetches that hit in the L3 or were snooped from another core's caches on the same socket.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_CODE_RD.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x3F803C0004", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand instruction fetches and L1 instruction cache prefetches that resulted in a snoop hit a modified line in another core's caches which forwarded the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_CODE_RD.L3_HIT.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x10003C0004", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand instruction fetches and L1 instruction cache prefetches that hit a modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_CODE_RD.SNC_CACHE.HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1008000004", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand instruction fetches and L1 instruction cache prefetches that either hit a non-modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_CODE_RD.SNC_CACHE.HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x808000004", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that hit in the L3 or were snooped from another core's caches on the same socket.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x3F803C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that resulted in a snoop hit a modified line in another core's caches which forwarded the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x10003C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that resulted in a snoop that hit in another core, which did not forward the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HIT_NO_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x4003C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that resulted in a snoop hit in another core's caches which forwarded the unmodified data to the requesting core.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x8003C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that were supplied by a cache on a remote socket where a snoop hit a modified line in another core's caches which forwarded the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.REMOTE_CACHE.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1030000001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that were supplied by a cache on a remote socket where a snoop hit in another core's caches which forwarded the unmodified data to the requesting core.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.REMOTE_CACHE.SNOOP_HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x830000001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that hit a modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.SNC_CACHE.HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1008000001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that either hit a non-modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.SNC_CACHE.HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x808000001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand reads for ownership (RFO) requests and software prefetches for exclusive ownership (PREFETCHW) that hit in the L3 or were snooped from another core's caches on the same socket.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_RFO.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x3F803C0002", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand reads for ownership (RFO) requests and software prefetches for exclusive ownership (PREFETCHW) that resulted in a snoop hit a modified line in another core's caches which forwarded the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_RFO.L3_HIT.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x10003C0002", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand reads for ownership (RFO) requests and software prefetches for exclusive ownership (PREFETCHW) that hit a modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_RFO.SNC_CACHE.HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1008000002", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand reads for ownership (RFO) requests and software prefetches for exclusive ownership (PREFETCHW) that either hit a non-modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_RFO.SNC_CACHE.HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x808000002", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts hardware prefetches to the L3 only that hit in the L3 or were snooped from another core's caches on the same socket.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.HWPF_L3.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x80082380", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that hit in the L3 or were snooped from another core's caches on the same socket.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x3F003C4477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that resulted in a snoop hit a modified line in another core's caches which forwarded the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.L3_HIT.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x10003C4477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that resulted in a snoop that hit in another core, which did not forward the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.L3_HIT.SNOOP_HIT_NO_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x4003C4477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that resulted in a snoop hit in another core's caches which forwarded the unmodified data to the requesting core.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.L3_HIT.SNOOP_HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x8003C4477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that were supplied by a cache on a remote socket where a snoop was sent and data was returned (Modified or Not Modified).", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.REMOTE_CACHE.SNOOP_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1830004477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that were supplied by a cache on a remote socket where a snoop hit a modified line in another core's caches which forwarded the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.REMOTE_CACHE.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1030004477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that were supplied by a cache on a remote socket where a snoop hit in another core's caches which forwarded the unmodified data to the requesting core.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.REMOTE_CACHE.SNOOP_HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x830004477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that hit a modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.SNC_CACHE.HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1008004477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that either hit a non-modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.SNC_CACHE.HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x808004477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand reads for ownership (RFO), hardware prefetch RFOs (which bring data to L2), and software prefetches for exclusive ownership (PREFETCHW) that hit to a (M)odified cacheline in the L3 or snoop filter.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.RFO_TO_CORE.L3_HIT_M", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1F80040022", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts streaming stores that hit in the L3 or were snooped from another core's caches on the same socket.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.STREAMING_WR.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x80080800", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "OFFCORE_REQUESTS.ALL_REQUESTS", + "EventCode": "0x21", + "EventName": "OFFCORE_REQUESTS.ALL_REQUESTS", + "SampleAfterValue": "100003", + "UMask": "0x80" + }, + { + "BriefDescription": "Demand and prefetch data reads", + "EventCode": "0x21", + "EventName": "OFFCORE_REQUESTS.DATA_RD", + "PublicDescription": "Counts the demand and prefetch data reads. All Core Data Reads include cacheable 'Demands' and L2 prefetchers (not L3 prefetchers). Counting also covers reads due to page walks resulted from any request type.", + "SampleAfterValue": "100003", + "UMask": "0x8" + }, + { + "BriefDescription": "Demand Data Read requests sent to uncore", + "EventCode": "0x21", + "EventName": "OFFCORE_REQUESTS.DEMAND_DATA_RD", + "PublicDescription": "Counts the Demand Data Read requests sent to uncore. Use it in conjunction with OFFCORE_REQUESTS_OUTSTANDING to determine average latency in the uncore.", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "This event is deprecated. Refer to new event OFFCORE_REQUESTS_OUTSTANDING.DATA_RD", + "Deprecated": "1", + "EventCode": "0x20", + "EventName": "OFFCORE_REQUESTS_OUTSTANDING.ALL_DATA_RD", + "SampleAfterValue": "1000003", + "UMask": "0x8" + }, + { + "BriefDescription": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DATA_RD", + "CounterMask": "1", + "EventCode": "0x20", + "EventName": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DATA_RD", + "SampleAfterValue": "1000003", + "UMask": "0x8" + }, + { + "BriefDescription": "Cycles where at least 1 outstanding demand data read request is pending.", + "CounterMask": "1", + "EventCode": "0x20", + "EventName": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_DATA_RD", + "SampleAfterValue": "2000003", + "UMask": "0x1" + }, + { + "BriefDescription": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_RFO", + "CounterMask": "1", + "EventCode": "0x20", + "EventName": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_RFO", + "SampleAfterValue": "1000003", + "UMask": "0x4" + }, + { + "BriefDescription": "OFFCORE_REQUESTS_OUTSTANDING.DATA_RD", + "EventCode": "0x20", + "EventName": "OFFCORE_REQUESTS_OUTSTANDING.DATA_RD", + "SampleAfterValue": "1000003", + "UMask": "0x8" + }, + { + "BriefDescription": "For every cycle, increments by the number of outstanding demand data read requests pending.", + "EventCode": "0x20", + "EventName": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD", + "PublicDescription": "For every cycle, increments by the number of outstanding demand data read requests pending. Requests are considered outstanding from the time they miss the core's L2 cache until the transaction completion message is sent to the requestor.", + "SampleAfterValue": "1000003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts bus locks, accounts for cache line split locks and UC locks.", + "EventCode": "0x2c", + "EventName": "SQ_MISC.BUS_LOCK", + "PublicDescription": "Counts the more expensive bus lock needed to enforce cache coherency for certain memory accesses that need to be done atomically. Can be created by issuing an atomic instruction (via the LOCK prefix) which causes a cache line split or accesses uncacheable memory.", + "SampleAfterValue": "100003", + "UMask": "0x10" + }, + { + "BriefDescription": "Number of PREFETCHNTA instructions executed.", + "EventCode": "0x40", + "EventName": "SW_PREFETCH_ACCESS.NTA", + "PublicDescription": "Counts the number of PREFETCHNTA instructions executed.", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Number of PREFETCHW instructions executed.", + "EventCode": "0x40", + "EventName": "SW_PREFETCH_ACCESS.PREFETCHW", + "PublicDescription": "Counts the number of PREFETCHW instructions executed.", + "SampleAfterValue": "100003", + "UMask": "0x8" + }, + { + "BriefDescription": "Number of PREFETCHT0 instructions executed.", + "EventCode": "0x40", + "EventName": "SW_PREFETCH_ACCESS.T0", + "PublicDescription": "Counts the number of PREFETCHT0 instructions executed.", + "SampleAfterValue": "100003", + "UMask": "0x2" + }, + { + "BriefDescription": "Number of PREFETCHT1 or PREFETCHT2 instructions executed.", + "EventCode": "0x40", + "EventName": "SW_PREFETCH_ACCESS.T1_T2", + "PublicDescription": "Counts the number of PREFETCHT1 or PREFETCHT2 instructions executed.", + "SampleAfterValue": "100003", + "UMask": "0x4" + } +] diff --git a/lib/libpmc/pmu-events/arch/x86/emeraldrapids/floating-point.json b/lib/libpmc/pmu-events/arch/x86/emeraldrapids/floating-point.json new file mode 100644 index 000000000000..1bdefaf96287 --- /dev/null +++ b/lib/libpmc/pmu-events/arch/x86/emeraldrapids/floating-point.json @@ -0,0 +1,214 @@ +[ + { + "BriefDescription": "ARITH.FPDIV_ACTIVE", + "CounterMask": "1", + "EventCode": "0xb0", + "EventName": "ARITH.FPDIV_ACTIVE", + "SampleAfterValue": "1000003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all microcode FP assists.", + "EventCode": "0xc1", + "EventName": "ASSISTS.FP", + "PublicDescription": "Counts all microcode Floating Point assists.", + "SampleAfterValue": "100003", + "UMask": "0x2" + }, + { + "BriefDescription": "ASSISTS.SSE_AVX_MIX", + "EventCode": "0xc1", + "EventName": "ASSISTS.SSE_AVX_MIX", + "SampleAfterValue": "1000003", + "UMask": "0x10" + }, + { + "BriefDescription": "FP_ARITH_DISPATCHED.PORT_0 [This event is alias to FP_ARITH_DISPATCHED.V0]", + "EventCode": "0xb3", + "EventName": "FP_ARITH_DISPATCHED.PORT_0", + "SampleAfterValue": "2000003", + "UMask": "0x1" + }, + { + "BriefDescription": "FP_ARITH_DISPATCHED.PORT_1 [This event is alias to FP_ARITH_DISPATCHED.V1]", + "EventCode": "0xb3", + "EventName": "FP_ARITH_DISPATCHED.PORT_1", + "SampleAfterValue": "2000003", + "UMask": "0x2" + }, + { + "BriefDescription": "FP_ARITH_DISPATCHED.PORT_5 [This event is alias to FP_ARITH_DISPATCHED.V2]", + "EventCode": "0xb3", + "EventName": "FP_ARITH_DISPATCHED.PORT_5", + "SampleAfterValue": "2000003", + "UMask": "0x4" + }, + { *** 22467 LINES SKIPPED *** From nobody Thu Dec 11 20:22:50 2025 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 4dS3tL739Qz6KJWX for ; Thu, 11 Dec 2025 20:22:50 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dS3tL4ZN3z3VcY for ; Thu, 11 Dec 2025 20:22:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765484570; 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=IVZDlLUL3f5H6LG1qC6Bnpv+310NRrlUgU7htUbqumE=; b=FWkvNiqT2yFg4nAiFGnxCnA/YX1PVOjJOmRF1DqmCHUclbR5Q0HvjWsg9ztRSQwMvc1EPc Uj8KaM1CY1vMjDziohqCWPO7kSkv0Zen66vSQsIvAYgVHB/+TZrv+mMhlWBIHuJ6hGDUTG wdOiBt0ND0HkvHx2WixU09tVxgoB+iDdK1oE0nKlalYHorx3S0oF4DinyFB61BkzTyiwl0 i+wSSXQogXfiIRToZow6yYw7Zw6ZIF3ema+bB6MZ2plQZDwCfdziSRPssxL1WbtWT4dVV2 d0gtdWGOKXGqb6EzVyZ5kbzvr/UrXz476DZpJqgib47RRXAAYCS8EsadUdEKAQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765484570; 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=IVZDlLUL3f5H6LG1qC6Bnpv+310NRrlUgU7htUbqumE=; b=rMx386Qf7u19TdtcFXgDu2NIPTifGwKdAfTCd8oWPyD/dkGLxa0/vaPuj1xo8XbTkxe9Sa fEvBQMaAMgvJn0xI7DuGW814A+sscXKvLqCZ2iZi83zFx4XxHGKN3Bec8/f51/1LUSesza rznNWRZa61dAa8WwGX+vzC/gyUA8Z0AJ2LzKYBuFyUGolzqolXgJ91xUTKuYADiU0M432q +WurKr4Qay5P668g/0YfYyQ9zA5Q2/fuPlJiCSr5yJ/FFWBTNkB8Nc1TuCqGFrzLD23Kfk IoGb61PzKriZeq/qaAakpDN7S9P9aSF9uP9IpT5ptbJ1KgFvOq4AsGMg/+5GMQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765484570; a=rsa-sha256; cv=none; b=XDR3FL8OP/pQP2ieTJAk6l7dIEN5AWeOe1/L4lzbgaVLiBO8qXWMOeSJqKL3n2Jzips71V N52AQRYoM6uMQi/HSBJC8ALepAqpp7D0TN5J+h9b1v+6NA1tyikiS6nUmOXxVG3YCew3cW 9C7qlEzEEk1AwgXYEeDr8czkFUXOeDFuqv3jKWLhW+Hk60zZ4k1CXdK1N2r3mlglS8WIFX T/Z6z79RDRewl1W2EAV9Bk3f8UnWq+8AfTI2fwmr4JWCeDT6tNRwmpaYnQSrIznGv4oaoe IQM9LVTuSShriigt9DeMF67zadGg7pXLc74s/9Haq6Y1MTtq2YQVPwoEWhOTIw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dS3tL3kWhzmhB for ; Thu, 11 Dec 2025 20:22:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 302da by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 20:22:50 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: =?utf-8?Q?Ana=C3=ABll?=e CAZUC From: Mitchell Horne Subject: git: 9ac702781508 - stable/15 - pmc: add alderlaken model 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 9ac702781508caeda85e7adafec0890e0c52fe28 Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 20:22:50 +0000 Message-Id: <693b281a.302da.3c521175@gitrepo.freebsd.org> The branch stable/15 has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=9ac702781508caeda85e7adafec0890e0c52fe28 commit 9ac702781508caeda85e7adafec0890e0c52fe28 Author: Anaëlle CAZUC AuthorDate: 2025-12-04 17:52:23 +0000 Commit: Mitchell Horne CommitDate: 2025-12-11 19:31:54 +0000 pmc: add alderlaken model This commit adds alderlaken CPU model to hwpmc/libpmc. JSON event definitions are imported from Intel perfmon version 1.16. Reviewed by: mhorne MFC after: 1 week Sponsored by: Stormshield Differential Revision: https://reviews.freebsd.org/D49229 (cherry picked from commit ca3e47b0ea68664c7e10e1c3e28c5ac7d9932c21) --- .../arch/x86/alderlaken/adln-metrics.json | 583 +++++++++++++++++++++ .../pmu-events/arch/x86/alderlaken/cache.json | 330 ++++++++++++ .../arch/x86/alderlaken/floating-point.json | 18 + .../pmu-events/arch/x86/alderlaken/frontend.json | 26 + .../pmu-events/arch/x86/alderlaken/memory.json | 81 +++ .../pmu-events/arch/x86/alderlaken/other.json | 38 ++ .../pmu-events/arch/x86/alderlaken/pipeline.json | 533 +++++++++++++++++++ .../arch/x86/alderlaken/uncore-memory.json | 175 +++++++ .../arch/x86/alderlaken/uncore-other.json | 33 ++ .../arch/x86/alderlaken/virtual-memory.json | 47 ++ lib/libpmc/pmu-events/arch/x86/mapfile.csv | 1 + sys/dev/hwpmc/hwpmc_intel.c | 4 + sys/sys/pmc.h | 1 + 13 files changed, 1870 insertions(+) diff --git a/lib/libpmc/pmu-events/arch/x86/alderlaken/adln-metrics.json b/lib/libpmc/pmu-events/arch/x86/alderlaken/adln-metrics.json new file mode 100644 index 000000000000..535acee4ab7f --- /dev/null +++ b/lib/libpmc/pmu-events/arch/x86/alderlaken/adln-metrics.json @@ -0,0 +1,583 @@ +[ + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to frontend stalls.", + "MetricExpr": "TOPDOWN_FE_BOUND.ALL / SLOTS", + "MetricGroup": "TopdownL1", + "MetricName": "tma_frontend_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to frontend bandwidth restrictions due to decode, predecode, cisc, and other limitations.", + "MetricExpr": "TOPDOWN_FE_BOUND.FRONTEND_LATENCY / SLOTS", + "MetricGroup": "TopdownL2;tma_frontend_bound_group", + "MetricName": "tma_frontend_latency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to instruction cache misses.", + "MetricExpr": "TOPDOWN_FE_BOUND.ICACHE / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_latency_group", + "MetricName": "tma_icache", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to Instruction Table Lookaside Buffer (ITLB) misses.", + "MetricExpr": "TOPDOWN_FE_BOUND.ITLB / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_latency_group", + "MetricName": "tma_itlb", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to BACLEARS, which occurs when the Branch Target Buffer (BTB) prediction or lack thereof, was corrected by a later branch predictor in the frontend", + "MetricExpr": "TOPDOWN_FE_BOUND.BRANCH_DETECT / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_latency_group", + "MetricName": "tma_branch_detect", + "PublicDescription": "Counts the number of issue slots that were not delivered by the frontend due to BACLEARS, which occurs when the Branch Target Buffer (BTB) prediction or lack thereof, was corrected by a later branch predictor in the frontend. Includes BACLEARS due to all branch types including conditional and unconditional jumps, returns, and indirect branches.", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to BTCLEARS, which occurs when the Branch Target Buffer (BTB) predicts a taken branch.", + "MetricExpr": "TOPDOWN_FE_BOUND.BRANCH_RESTEER / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_latency_group", + "MetricName": "tma_branch_resteer", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to frontend bandwidth restrictions due to decode, predecode, cisc, and other limitations.", + "MetricExpr": "TOPDOWN_FE_BOUND.FRONTEND_BANDWIDTH / SLOTS", + "MetricGroup": "TopdownL2;tma_frontend_bound_group", + "MetricName": "tma_frontend_bandwidth", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to the microcode sequencer (MS).", + "MetricExpr": "TOPDOWN_FE_BOUND.CISC / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_bandwidth_group", + "MetricName": "tma_cisc", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to decode stalls.", + "MetricExpr": "TOPDOWN_FE_BOUND.DECODE / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_bandwidth_group", + "MetricName": "tma_decode", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to wrong predecodes.", + "MetricExpr": "TOPDOWN_FE_BOUND.PREDECODE / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_bandwidth_group", + "MetricName": "tma_predecode", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to other common frontend stalls not categorized.", + "MetricExpr": "TOPDOWN_FE_BOUND.OTHER / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_bandwidth_group", + "MetricName": "tma_other_fb", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the total number of issue slots that were not consumed by the backend because allocation is stalled due to a mispredicted jump or a machine clear", + "MetricExpr": "(SLOTS - (TOPDOWN_FE_BOUND.ALL + TOPDOWN_BE_BOUND.ALL + TOPDOWN_RETIRING.ALL)) / SLOTS", + "MetricGroup": "TopdownL1", + "MetricName": "tma_bad_speculation", + "PublicDescription": "Counts the total number of issue slots that were not consumed by the backend because allocation is stalled due to a mispredicted jump or a machine clear. Only issue slots wasted due to fast nukes such as memory ordering nukes are counted. Other nukes are not accounted for. Counts all issue slots blocked during this recovery window including relevant microcode flows and while uops are not yet available in the instruction queue (IQ). Also includes the issue slots that were consumed by the backend but were thrown away because they were younger than the mispredict or machine clear.", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to branch mispredicts.", + "MetricExpr": "TOPDOWN_BAD_SPECULATION.MISPREDICT / SLOTS", + "MetricGroup": "TopdownL2;tma_bad_speculation_group", + "MetricName": "tma_branch_mispredicts", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the total number of issue slots that were not consumed by the backend because allocation is stalled due to a machine clear (nuke) of any kind including memory ordering and memory disambiguation.", + "MetricExpr": "TOPDOWN_BAD_SPECULATION.MACHINE_CLEARS / SLOTS", + "MetricGroup": "TopdownL2;tma_bad_speculation_group", + "MetricName": "tma_machine_clears", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to a machine clear (slow nuke).", + "MetricExpr": "TOPDOWN_BAD_SPECULATION.NUKE / SLOTS", + "MetricGroup": "TopdownL3;tma_machine_clears_group", + "MetricName": "tma_nuke", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of machine clears relative to the number of nuke slots due to SMC. ", + "MetricExpr": "tma_nuke * (MACHINE_CLEARS.SMC / MACHINE_CLEARS.SLOW)", + "MetricGroup": "TopdownL4;tma_nuke_group", + "MetricName": "tma_smc", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of machine clears relative to the number of nuke slots due to memory ordering. ", + "MetricExpr": "tma_nuke * (MACHINE_CLEARS.MEMORY_ORDERING / MACHINE_CLEARS.SLOW)", + "MetricGroup": "TopdownL4;tma_nuke_group", + "MetricName": "tma_memory_ordering", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of machine clears relative to the number of nuke slots due to FP assists. ", + "MetricExpr": "tma_nuke * (MACHINE_CLEARS.FP_ASSIST / MACHINE_CLEARS.SLOW)", + "MetricGroup": "TopdownL4;tma_nuke_group", + "MetricName": "tma_fp_assist", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of machine clears relative to the number of nuke slots due to memory disambiguation. ", + "MetricExpr": "tma_nuke * (MACHINE_CLEARS.DISAMBIGUATION / MACHINE_CLEARS.SLOW)", + "MetricGroup": "TopdownL4;tma_nuke_group", + "MetricName": "tma_disambiguation", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of machine clears relative to the number of nuke slots due to page faults. ", + "MetricExpr": "tma_nuke * (MACHINE_CLEARS.PAGE_FAULT / MACHINE_CLEARS.SLOW)", + "MetricGroup": "TopdownL4;tma_nuke_group", + "MetricName": "tma_page_fault", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to a machine clear classified as a fast nuke due to memory ordering, memory disambiguation and memory renaming.", + "MetricExpr": "TOPDOWN_BAD_SPECULATION.FASTNUKE / SLOTS", + "MetricGroup": "TopdownL3;tma_machine_clears_group", + "MetricName": "tma_fast_nuke", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the total number of issue slots that were not consumed by the backend due to backend stalls", + "MetricExpr": "TOPDOWN_BE_BOUND.ALL / SLOTS", + "MetricGroup": "TopdownL1", + "MetricName": "tma_backend_bound", + "PublicDescription": "Counts the total number of issue slots that were not consumed by the backend due to backend stalls. Note that uops must be available for consumption in order for this event to count. If a uop is not available (IQ is empty), this event will not count. The rest of these subevents count backend stalls, in cycles, due to an outstanding request which is memory bound vs core bound. The subevents are not slot based events and therefore can not be precisely added or subtracted from the Backend_Bound_Aux subevents which are slot based.", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles due to backend bound stalls that are core execution bound and not attributed to outstanding demand load or store stalls. ", + "MetricExpr": "max(0, tma_backend_bound - tma_load_store_bound)", + "MetricGroup": "TopdownL2;tma_backend_bound_group", + "MetricName": "tma_core_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to stores or loads. ", + "MetricExpr": "min((TOPDOWN_BE_BOUND.ALL / SLOTS), (LD_HEAD.ANY_AT_RET / CLKS) + tma_store_bound)", + "MetricGroup": "TopdownL2;tma_backend_bound_group", + "MetricName": "tma_load_store_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to store buffer full.", + "MetricExpr": "tma_mem_scheduler * (MEM_SCHEDULER_BLOCK.ST_BUF / MEM_SCHEDULER_BLOCK.ALL)", + "MetricGroup": "TopdownL3;tma_load_store_bound_group", + "MetricName": "tma_store_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles that the oldest load of the load buffer is stalled at retirement due to a load block.", + "MetricExpr": "LD_HEAD.L1_BOUND_AT_RET / CLKS", + "MetricGroup": "TopdownL3;tma_load_store_bound_group", + "MetricName": "tma_l1_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles that the oldest load of the load buffer is stalled at retirement due to a store forward block.", + "MetricExpr": "LD_HEAD.ST_ADDR_AT_RET / CLKS", + "MetricGroup": "TopdownL4;tma_l1_bound_group", + "MetricName": "tma_store_fwd", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles that the oldest load of the load buffer is stalled at retirement due to a first level TLB miss.", + "MetricExpr": "LD_HEAD.DTLB_MISS_AT_RET / CLKS", + "MetricGroup": "TopdownL4;tma_l1_bound_group", + "MetricName": "tma_stlb_hit", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles that the oldest load of the load buffer is stalled at retirement due to a second level TLB miss requiring a page walk.", + "MetricExpr": "LD_HEAD.PGWALK_AT_RET / CLKS", + "MetricGroup": "TopdownL4;tma_l1_bound_group", + "MetricName": "tma_stlb_miss", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles that the oldest load of the load buffer is stalled at retirement due to a number of other load blocks.", + "MetricExpr": "LD_HEAD.OTHER_AT_RET / CLKS", + "MetricGroup": "TopdownL4;tma_l1_bound_group", + "MetricName": "tma_other_l1", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles a core is stalled due to a demand load which hit in the L2 Cache.", + "MetricExpr": "(MEM_BOUND_STALLS.LOAD_L2_HIT / CLKS) - (MEM_BOUND_STALLS_AT_RET_CORRECTION * MEM_BOUND_STALLS.LOAD_L2_HIT / MEM_BOUND_STALLS.LOAD)", + "MetricGroup": "TopdownL3;tma_load_store_bound_group", + "MetricName": "tma_l2_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles a core is stalled due to a demand load which hit in the Last Level Cache (LLC) or other core with HITE/F/M.", + "MetricExpr": "(MEM_BOUND_STALLS.LOAD_LLC_HIT / CLKS) - (MEM_BOUND_STALLS_AT_RET_CORRECTION * MEM_BOUND_STALLS.LOAD_LLC_HIT / MEM_BOUND_STALLS.LOAD)", + "MetricGroup": "TopdownL3;tma_load_store_bound_group", + "MetricName": "tma_l3_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to a demand load miss which hit in DRAM or MMIO (Non-DRAM).", + "MetricExpr": "(MEM_BOUND_STALLS.LOAD_DRAM_HIT / CLKS) - (MEM_BOUND_STALLS_AT_RET_CORRECTION * MEM_BOUND_STALLS.LOAD_DRAM_HIT / MEM_BOUND_STALLS.LOAD)", + "MetricGroup": "TopdownL3;tma_load_store_bound_group", + "MetricName": "tma_dram_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to a demand load miss which hits in the L2, LLC, DRAM or MMIO (Non-DRAM) but could not be correctly attributed or cycles in which the load miss is waiting on a request buffer.", + "MetricExpr": "max(0, tma_load_store_bound - (tma_store_bound + tma_l1_bound + tma_l2_bound + tma_l3_bound + tma_dram_bound))", + "MetricGroup": "TopdownL3;tma_load_store_bound_group", + "MetricName": "tma_other_load_store", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the total number of issue slots that were not consumed by the backend due to backend stalls", + "MetricExpr": "tma_backend_bound", + "MetricGroup": "TopdownL1", + "MetricName": "tma_backend_bound_aux", + "PublicDescription": "Counts the total number of issue slots that were not consumed by the backend due to backend stalls. Note that UOPS must be available for consumption in order for this event to count. If a uop is not available (IQ is empty), this event will not count. All of these subevents count backend stalls, in slots, due to a resource limitation. These are not cycle based events and therefore can not be precisely added or subtracted from the Backend_Bound subevents which are cycle based. These subevents are supplementary to Backend_Bound and can be used to analyze results from a resource perspective at allocation. ", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the total number of issue slots that were not consumed by the backend due to backend stalls", + "MetricExpr": "tma_backend_bound", + "MetricGroup": "TopdownL2;tma_backend_bound_aux_group", + "MetricName": "tma_resource_bound", + "PublicDescription": "Counts the total number of issue slots that were not consumed by the backend due to backend stalls. Note that uops must be available for consumption in order for this event to count. If a uop is not available (IQ is empty), this event will not count. ", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to memory reservation stalls in which a scheduler is not able to accept uops.", + "MetricExpr": "TOPDOWN_BE_BOUND.MEM_SCHEDULER / SLOTS", + "MetricGroup": "TopdownL3;tma_resource_bound_group", + "MetricName": "tma_mem_scheduler", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles, relative to the number of mem_scheduler slots, in which uops are blocked due to store buffer full", + "MetricExpr": "tma_mem_scheduler * (MEM_SCHEDULER_BLOCK.ST_BUF / MEM_SCHEDULER_BLOCK.ALL)", + "MetricGroup": "TopdownL4;tma_mem_scheduler_group", + "MetricName": "tma_st_buffer", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles, relative to the number of mem_scheduler slots, in which uops are blocked due to load buffer full", + "MetricExpr": "tma_mem_scheduler * MEM_SCHEDULER_BLOCK.LD_BUF / MEM_SCHEDULER_BLOCK.ALL", + "MetricGroup": "TopdownL4;tma_mem_scheduler_group", + "MetricName": "tma_ld_buffer", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles, relative to the number of mem_scheduler slots, in which uops are blocked due to RSV full relative ", + "MetricExpr": "tma_mem_scheduler * MEM_SCHEDULER_BLOCK.RSV / MEM_SCHEDULER_BLOCK.ALL", + "MetricGroup": "TopdownL4;tma_mem_scheduler_group", + "MetricName": "tma_rsv", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to IEC or FPC RAT stalls, which can be due to FIQ or IEC reservation stalls in which the integer, floating point or SIMD scheduler is not able to accept uops.", + "MetricExpr": "TOPDOWN_BE_BOUND.NON_MEM_SCHEDULER / SLOTS", + "MetricGroup": "TopdownL3;tma_resource_bound_group", + "MetricName": "tma_non_mem_scheduler", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to the physical register file unable to accept an entry (marble stalls).", + "MetricExpr": "TOPDOWN_BE_BOUND.REGISTER / SLOTS", + "MetricGroup": "TopdownL3;tma_resource_bound_group", + "MetricName": "tma_register", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to the reorder buffer being full (ROB stalls).", + "MetricExpr": "TOPDOWN_BE_BOUND.REORDER_BUFFER / SLOTS", + "MetricGroup": "TopdownL3;tma_resource_bound_group", + "MetricName": "tma_reorder_buffer", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to certain allocation restrictions.", + "MetricExpr": "TOPDOWN_BE_BOUND.ALLOC_RESTRICTIONS / SLOTS", + "MetricGroup": "TopdownL3;tma_resource_bound_group", + "MetricName": "tma_alloc_restriction", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to scoreboards from the instruction queue (IQ), jump execution unit (JEU), or microcode sequencer (MS).", + "MetricExpr": "TOPDOWN_BE_BOUND.SERIALIZATION / SLOTS", + "MetricGroup": "TopdownL3;tma_resource_bound_group", + "MetricName": "tma_serialization", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the numer of issue slots that result in retirement slots. ", + "MetricExpr": "TOPDOWN_RETIRING.ALL / SLOTS", + "MetricGroup": "TopdownL1", + "MetricName": "tma_retiring", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of uops that are not from the microsequencer. ", + "MetricExpr": "(TOPDOWN_RETIRING.ALL - UOPS_RETIRED.MS) / SLOTS", + "MetricGroup": "TopdownL2;tma_retiring_group", + "MetricName": "tma_base", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of floating point operations per uop with all default weighting.", + "MetricExpr": "UOPS_RETIRED.FPDIV / SLOTS", + "MetricGroup": "TopdownL3;tma_base_group", + "MetricName": "tma_fp_uops", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of uops retired excluding ms and fp div uops.", + "MetricExpr": "(TOPDOWN_RETIRING.ALL - UOPS_RETIRED.MS - UOPS_RETIRED.FPDIV) / SLOTS", + "MetricGroup": "TopdownL3;tma_base_group", + "MetricName": "tma_other_ret", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of uops that are from the complex flows issued by the micro-sequencer (MS)", + "MetricExpr": "UOPS_RETIRED.MS / SLOTS", + "MetricGroup": "TopdownL2;tma_retiring_group", + "MetricName": "tma_ms_uops", + "PublicDescription": "Counts the number of uops that are from the complex flows issued by the micro-sequencer (MS). This includes uops from flows due to complex instructions, faults, assists, and inserted flows.", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "", + "MetricExpr": "CPU_CLK_UNHALTED.CORE", + "MetricName": "CLKS" + }, + { + "BriefDescription": "", + "MetricExpr": "CPU_CLK_UNHALTED.CORE_P", + "MetricName": "CLKS_P" + }, + { + "BriefDescription": "", + "MetricExpr": "5 * CLKS", + "MetricName": "SLOTS" + }, + { + "BriefDescription": "Instructions Per Cycle", + "MetricExpr": "INST_RETIRED.ANY / CLKS", + "MetricName": "IPC" + }, + { + "BriefDescription": "Cycles Per Instruction", + "MetricExpr": "CLKS / INST_RETIRED.ANY", + "MetricName": "CPI" + }, + { + "BriefDescription": "Uops Per Instruction", + "MetricExpr": "UOPS_RETIRED.ALL / INST_RETIRED.ANY", + "MetricName": "UPI" + }, + { + "BriefDescription": "Percentage of total non-speculative loads with a store forward or unknown store address block", + "MetricExpr": "100 * LD_BLOCKS.DATA_UNKNOWN / MEM_UOPS_RETIRED.ALL_LOADS", + "MetricName": "Store_Fwd_Blocks" + }, + { + "BriefDescription": "Percentage of total non-speculative loads with a address aliasing block", + "MetricExpr": "100 * LD_BLOCKS.4K_ALIAS / MEM_UOPS_RETIRED.ALL_LOADS", + "MetricName": "Address_Alias_Blocks" + }, + { + "BriefDescription": "Percentage of total non-speculative loads that are splits", + "MetricExpr": "100 * MEM_UOPS_RETIRED.SPLIT_LOADS / MEM_UOPS_RETIRED.ALL_LOADS", + "MetricName": "Load_Splits" + }, + { + "BriefDescription": "Instructions per Branch (lower number means higher occurance rate)", + "MetricExpr": "INST_RETIRED.ANY / BR_INST_RETIRED.ALL_BRANCHES", + "MetricName": "IpBranch" + }, + { + "BriefDescription": "Instruction per (near) call (lower number means higher occurance rate)", + "MetricExpr": "INST_RETIRED.ANY / BR_INST_RETIRED.CALL", + "MetricName": "IpCall" + }, + { + "BriefDescription": "Instructions per Load", + "MetricExpr": "INST_RETIRED.ANY / MEM_UOPS_RETIRED.ALL_LOADS", + "MetricName": "IpLoad" + }, + { + "BriefDescription": "Instructions per Store", + "MetricExpr": "INST_RETIRED.ANY / MEM_UOPS_RETIRED.ALL_STORES", + "MetricName": "IpStore" + }, + { + "BriefDescription": "Number of Instructions per non-speculative Branch Misprediction", + "MetricExpr": "INST_RETIRED.ANY / BR_MISP_RETIRED.ALL_BRANCHES", + "MetricName": "IpMispredict" + }, + { + "BriefDescription": "Instructions per Far Branch", + "MetricExpr": "INST_RETIRED.ANY / (BR_INST_RETIRED.FAR_BRANCH / 2)", + "MetricName": "IpFarBranch" + }, + { + "BriefDescription": "Ratio of all branches which mispredict", + "MetricExpr": "BR_MISP_RETIRED.ALL_BRANCHES / BR_INST_RETIRED.ALL_BRANCHES", + "MetricName": "Branch_Mispredict_Ratio" + }, + { + "BriefDescription": "Ratio between Mispredicted branches and unknown branches", + "MetricExpr": "BR_MISP_RETIRED.ALL_BRANCHES / BACLEARS.ANY", + "MetricName": "Branch_Mispredict_to_Unknown_Branch_Ratio" + }, + { + "BriefDescription": "Percentage of all uops which are ucode ops", + "MetricExpr": "100 * UOPS_RETIRED.MS / UOPS_RETIRED.ALL", + "MetricName": "Microcode_Uop_Ratio" + }, + { + "BriefDescription": "Percentage of all uops which are FPDiv uops", + "MetricExpr": "100 * UOPS_RETIRED.FPDIV / UOPS_RETIRED.ALL", + "MetricName": "FPDiv_Uop_Ratio" + }, + { + "BriefDescription": "Percentage of all uops which are IDiv uops", + "MetricExpr": "100 * UOPS_RETIRED.IDIV / UOPS_RETIRED.ALL", + "MetricName": "IDiv_Uop_Ratio" + }, + { + "BriefDescription": "Percentage of all uops which are x87 uops", + "MetricExpr": "100 * UOPS_RETIRED.X87 / UOPS_RETIRED.ALL", + "MetricName": "X87_Uop_Ratio" + }, + { + "BriefDescription": "Average Frequency Utilization relative nominal frequency", + "MetricExpr": "CLKS / CPU_CLK_UNHALTED.REF_TSC", + "MetricName": "Turbo_Utilization" + }, + { + "BriefDescription": "Fraction of cycles spent in Kernel mode", + "MetricExpr": "cpu@CPU_CLK_UNHALTED.CORE@k / CPU_CLK_UNHALTED.CORE", + "MetricName": "Kernel_Utilization" + }, + { + "BriefDescription": "Average CPU Utilization", + "MetricExpr": "CPU_CLK_UNHALTED.REF_TSC / TSC", + "MetricName": "CPU_Utilization" + }, + { + "BriefDescription": "Cycle cost per L2 hit", + "MetricExpr": "MEM_BOUND_STALLS.LOAD_L2_HIT / MEM_LOAD_UOPS_RETIRED.L2_HIT", + "MetricName": "Cycles_per_Demand_Load_L2_Hit" + }, + { + "BriefDescription": "Cycle cost per LLC hit", + "MetricExpr": "MEM_BOUND_STALLS.LOAD_LLC_HIT / MEM_LOAD_UOPS_RETIRED.L3_HIT", + "MetricName": "Cycles_per_Demand_Load_L3_Hit" + }, + { + "BriefDescription": "Cycle cost per DRAM hit", + "MetricExpr": "MEM_BOUND_STALLS.LOAD_DRAM_HIT / MEM_LOAD_UOPS_RETIRED.DRAM_HIT", + "MetricName": "Cycles_per_Demand_Load_DRAM_Hit" + }, + { + "BriefDescription": "Percent of instruction miss cost that hit in the L2", + "MetricExpr": "100 * MEM_BOUND_STALLS.IFETCH_L2_HIT / (MEM_BOUND_STALLS.IFETCH)", + "MetricName": "Inst_Miss_Cost_L2Hit_Percent" + }, + { + "BriefDescription": "Percent of instruction miss cost that hit in the L3", + "MetricExpr": "100 * MEM_BOUND_STALLS.IFETCH_LLC_HIT / (MEM_BOUND_STALLS.IFETCH)", + "MetricName": "Inst_Miss_Cost_L3Hit_Percent" + }, + { + "BriefDescription": "Percent of instruction miss cost that hit in DRAM", + "MetricExpr": "100 * MEM_BOUND_STALLS.IFETCH_DRAM_HIT / (MEM_BOUND_STALLS.IFETCH)", + "MetricName": "Inst_Miss_Cost_DRAMHit_Percent" + }, + { + "BriefDescription": "load ops retired per 1000 instruction", + "MetricExpr": "1000 * MEM_UOPS_RETIRED.ALL_LOADS / INST_RETIRED.ANY", + "MetricName": "MemLoadPKI" + }, + { + "BriefDescription": "C1 residency percent per core", + "MetricExpr": "cstate_core@c1\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C1_Core_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C6 residency percent per core", + "MetricExpr": "cstate_core@c6\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C6_Core_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C7 residency percent per core", + "MetricExpr": "cstate_core@c7\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C7_Core_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C2 residency percent per package", + "MetricExpr": "cstate_pkg@c2\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C2_Pkg_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C3 residency percent per package", + "MetricExpr": "cstate_pkg@c3\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C3_Pkg_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C6 residency percent per package", + "MetricExpr": "cstate_pkg@c6\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C6_Pkg_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C7 residency percent per package", + "MetricExpr": "cstate_pkg@c7\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C7_Pkg_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C8 residency percent per package", + "MetricExpr": "cstate_pkg@c8\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C8_Pkg_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C9 residency percent per package", + "MetricExpr": "cstate_pkg@c9\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C9_Pkg_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C10 residency percent per package", + "MetricExpr": "cstate_pkg@c10\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C10_Pkg_Residency", + "ScaleUnit": "100%" + } +] diff --git a/lib/libpmc/pmu-events/arch/x86/alderlaken/cache.json b/lib/libpmc/pmu-events/arch/x86/alderlaken/cache.json new file mode 100644 index 000000000000..043445ae14a8 --- /dev/null +++ b/lib/libpmc/pmu-events/arch/x86/alderlaken/cache.json @@ -0,0 +1,330 @@ +[ + { + "BriefDescription": "Counts the number of cacheable memory requests that miss in the LLC. Counts on a per core basis.", + "EventCode": "0x2e", + "EventName": "LONGEST_LAT_CACHE.MISS", + "PublicDescription": "Counts the number of cacheable memory requests that miss in the Last Level Cache (LLC). Requests include demand loads, reads for ownership (RFO), instruction fetches and L1 HW prefetches. If the platform has an L3 cache, the LLC is the L3 cache, otherwise it is the L2 cache. Counts on a per core basis.", + "SampleAfterValue": "200003", + "UMask": "0x41" + }, + { + "BriefDescription": "Counts the number of cacheable memory requests that access the LLC. Counts on a per core basis.", + "EventCode": "0x2e", + "EventName": "LONGEST_LAT_CACHE.REFERENCE", + "PublicDescription": "Counts the number of cacheable memory requests that access the Last Level Cache (LLC). Requests include demand loads, reads for ownership (RFO), instruction fetches and L1 HW prefetches. If the platform has an L3 cache, the LLC is the L3 cache, otherwise it is the L2 cache. Counts on a per core basis.", + "SampleAfterValue": "200003", + "UMask": "0x4f" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to an instruction cache or TLB miss which hit in the L2, LLC, DRAM or MMIO (Non-DRAM).", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.IFETCH", + "PublicDescription": "Counts the number of cycles the core is stalled due to an instruction cache or translation lookaside buffer (TLB) miss which hit in the L2, LLC, DRAM or MMIO (Non-DRAM).", + "SampleAfterValue": "200003", + "UMask": "0x38" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to an instruction cache or TLB miss which hit in DRAM or MMIO (Non-DRAM).", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.IFETCH_DRAM_HIT", + "PublicDescription": "Counts the number of cycles the core is stalled due to an instruction cache or translation lookaside buffer (TLB) miss which hit in DRAM or MMIO (non-DRAM).", + "SampleAfterValue": "200003", + "UMask": "0x20" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to an instruction cache or TLB miss which hit in the L2 cache.", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.IFETCH_L2_HIT", + "PublicDescription": "Counts the number of cycles the core is stalled due to an instruction cache or Translation Lookaside Buffer (TLB) miss which hit in the L2 cache.", + "SampleAfterValue": "200003", + "UMask": "0x8" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to an instruction cache or TLB miss which hit in the LLC or other core with HITE/F/M.", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.IFETCH_LLC_HIT", + "PublicDescription": "Counts the number of cycles the core is stalled due to an instruction cache or Translation Lookaside Buffer (TLB) miss which hit in the Last Level Cache (LLC) or other core with HITE/F/M.", + "SampleAfterValue": "200003", + "UMask": "0x10" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to a demand load miss which hit in the L2, LLC, DRAM or MMIO (Non-DRAM).", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.LOAD", + "SampleAfterValue": "200003", + "UMask": "0x7" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to a demand load miss which hit in DRAM or MMIO (Non-DRAM).", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.LOAD_DRAM_HIT", + "SampleAfterValue": "200003", + "UMask": "0x4" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to a demand load which hit in the L2 cache.", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.LOAD_L2_HIT", + "SampleAfterValue": "200003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to a demand load which hit in the LLC or other core with HITE/F/M.", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.LOAD_LLC_HIT", + "PublicDescription": "Counts the number of cycles the core is stalled due to a demand load which hit in the Last Level Cache (LLC) or other core with HITE/F/M.", + "SampleAfterValue": "200003", + "UMask": "0x2" + }, + { + "BriefDescription": "Counts the number of load uops retired that hit in DRAM.", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_UOPS_RETIRED.DRAM_HIT", + "PEBS": "1", + "SampleAfterValue": "200003", + "UMask": "0x80" + }, + { + "BriefDescription": "Counts the number of load uops retired that hit in the L2 cache.", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_UOPS_RETIRED.L2_HIT", + "PEBS": "1", + "SampleAfterValue": "200003", + "UMask": "0x2" + }, + { + "BriefDescription": "Counts the number of load uops retired that hit in the L3 cache.", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_UOPS_RETIRED.L3_HIT", + "PEBS": "1", + "SampleAfterValue": "200003", + "UMask": "0x4" + }, + { + "BriefDescription": "Counts the number of cycles that uops are blocked for any of the following reasons: load buffer, store buffer or RSV full.", + "EventCode": "0x04", + "EventName": "MEM_SCHEDULER_BLOCK.ALL", + "SampleAfterValue": "20003", + "UMask": "0x7" + }, + { + "BriefDescription": "Counts the number of cycles that uops are blocked due to a load buffer full condition.", + "EventCode": "0x04", + "EventName": "MEM_SCHEDULER_BLOCK.LD_BUF", + "SampleAfterValue": "20003", + "UMask": "0x2" + }, + { + "BriefDescription": "Counts the number of cycles that uops are blocked due to an RSV full condition.", + "EventCode": "0x04", + "EventName": "MEM_SCHEDULER_BLOCK.RSV", + "SampleAfterValue": "20003", + "UMask": "0x4" + }, + { + "BriefDescription": "Counts the number of cycles that uops are blocked due to a store buffer full condition.", + "EventCode": "0x04", + "EventName": "MEM_SCHEDULER_BLOCK.ST_BUF", + "SampleAfterValue": "20003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts the number of load uops retired.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.ALL_LOADS", + "PEBS": "1", + "PublicDescription": "Counts the total number of load uops retired.", + "SampleAfterValue": "200003", + "UMask": "0x81" + }, + { + "BriefDescription": "Counts the number of store uops retired.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.ALL_STORES", + "PEBS": "1", + "PublicDescription": "Counts the total number of store uops retired.", + "SampleAfterValue": "200003", + "UMask": "0x82" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 128 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_128", + "MSRIndex": "0x3F6", + "MSRValue": "0x80", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 128 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 16 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_16", + "MSRIndex": "0x3F6", + "MSRValue": "0x10", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 16 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 256 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_256", + "MSRIndex": "0x3F6", + "MSRValue": "0x100", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 256 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 32 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_32", + "MSRIndex": "0x3F6", + "MSRValue": "0x20", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 32 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 4 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_4", + "MSRIndex": "0x3F6", + "MSRValue": "0x4", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 4 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 512 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_512", + "MSRIndex": "0x3F6", + "MSRValue": "0x200", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 512 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 64 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_64", + "MSRIndex": "0x3F6", + "MSRValue": "0x40", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 64 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 8 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_8", + "MSRIndex": "0x3F6", + "MSRValue": "0x8", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 8 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of retired split load uops.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.SPLIT_LOADS", + "PEBS": "1", + "SampleAfterValue": "200003", + "UMask": "0x41" + }, + { + "BriefDescription": "Counts the number of stores uops retired. Counts with or without PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.STORE_LATENCY", + "PEBS": "2", + "PublicDescription": "Counts the number of stores uops retired. Counts with or without PEBS enabled. If PEBS is enabled and a PEBS record is generated, will populate PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x6" + }, + { + "BriefDescription": "Counts demand data reads that were supplied by the L3 cache.", + "EventCode": "0xB7", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x3F803C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that were supplied by the L3 cache where a snoop was sent, the snoop hit, and modified data was forwarded.", + "EventCode": "0xB7", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x10003C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that were supplied by the L3 cache where a snoop was sent, the snoop hit, but no data was forwarded.", + "EventCode": "0xB7", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HIT_NO_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x4003C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that were supplied by the L3 cache where a snoop was sent, the snoop hit, and non-modified data was forwarded.", + "EventCode": "0xB7", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x8003C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand reads for ownership (RFO) and software prefetches for exclusive ownership (PREFETCHW) that were supplied by the L3 cache.", + "EventCode": "0xB7", + "EventName": "OCR.DEMAND_RFO.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x3F803C0002", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand reads for ownership (RFO) and software prefetches for exclusive ownership (PREFETCHW) that were supplied by the L3 cache where a snoop was sent, the snoop hit, and modified data was forwarded.", + "EventCode": "0xB7", + "EventName": "OCR.DEMAND_RFO.L3_HIT.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x10003C0002", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts the number of issue slots every cycle that were not delivered by the frontend due to instruction cache misses.", + "EventCode": "0x71", + "EventName": "TOPDOWN_FE_BOUND.ICACHE", + "SampleAfterValue": "1000003", + "UMask": "0x20" + } +] diff --git a/lib/libpmc/pmu-events/arch/x86/alderlaken/floating-point.json b/lib/libpmc/pmu-events/arch/x86/alderlaken/floating-point.json new file mode 100644 index 000000000000..30e8ca3c1485 --- /dev/null +++ b/lib/libpmc/pmu-events/arch/x86/alderlaken/floating-point.json @@ -0,0 +1,18 @@ +[ + { + "BriefDescription": "Counts the number of floating point operations retired that required microcode assist.", + "EventCode": "0xc3", + "EventName": "MACHINE_CLEARS.FP_ASSIST", + "PublicDescription": "Counts the number of floating point operations retired that required microcode assist, which is not a reflection of the number of FP operations, instructions or uops.", + "SampleAfterValue": "20003", + "UMask": "0x4" + }, + { + "BriefDescription": "Counts the number of floating point divide uops retired (x87 and SSE, including x87 sqrt).", + "EventCode": "0xc2", + "EventName": "UOPS_RETIRED.FPDIV", + "PEBS": "1", + "SampleAfterValue": "2000003", + "UMask": "0x8" + } +] *** 1014 LINES SKIPPED *** From nobody Thu Dec 11 20:38:00 2025 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 4dS4Cr1F4vz6KKbb for ; Thu, 11 Dec 2025 20:38:00 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dS4Cr0WGWz3XXq for ; Thu, 11 Dec 2025 20:38:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765485480; 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=kG5b4G/wJKlPay6PUnG4hnkLJS8dST3iTCaCAcmyklc=; b=yhEy2gg8MxMMzNFX2r2PJl811+2aSNWfCXyqkEoX9QMUt/XA2zi6GAPGCwu2+KnVl97r3L HrUkOXSl9sn1KIT3yktDJKpyHZ9f5RNumeWmVsz4+/2u2FuZPKVbTiXXMGIGmT6ZHkb/Sn 8Au2y0Muf5tCvKWjzKQz1Gojsdf8/8cKGwdPaBJiA1mz7gPGHRpgY8NjEwWooTkfoL32zD 4xM9I7YKST1IkRURaqQmEtAvezpYd8qPPD9zRxgdqa6VxFYyCs54RtKUpxxf5j+TOEqSg6 +Vxjd04B06WBg0j3jYQ103X846l/A3m89Z4fG3kzRh0WqX2XB8GwdeTjujnH3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765485480; 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=kG5b4G/wJKlPay6PUnG4hnkLJS8dST3iTCaCAcmyklc=; b=mPVSHWxEwLODRzG2yQGX5v6s4BpgZIXWFnqOafeN/8IQ6S0kehZnhc9HuyzE4UFt95OZBR 1HM7pMw0/d4d6v62STPDDRzG1adeFiCGLfzTlzokOb3crLn9J/Ll3R39vi52r01HzFAv9C Fmf3SW6rVNWSMwZcMoNjSzpWH2bowGE6BREfJqoG75s1uZpB6iN8rK414Dk8qhuMr8I/Vz 2Xsg38mqaxnx67rG9wyaYoBLpuppSFXfCzp5qmSJbgOVoLhlS8hUEh/TslfG7m2R3ZLioU 3mBT3G/qKfcPNTUK8qZfP5tXGiiqBq7CwTaFoWxWLgOSKPNp6Fj9/asXaRgOBA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765485480; a=rsa-sha256; cv=none; b=TwZurQ2SOO83kS6Cih0mB/bUX7T/vT+wP9NoRRu1vqU6XvxLbn1X2Jksurtdd9NCsKyL6g Vi7JLhh//pv+C5XL/5ecPsm868iq+QLfgSEAccyye1khX2j2kWN+2XrJj6WMw6k3AvoeZx Ik1m/Y940y4vQG+yIomuhlolVpM1KPFJ6sB4/3YPKKd+bzdjeeTbok61FSbLNeDMl7t/3U EYkHajkoEssCY2kxYEBqirVjBogmJYygjnwpTZVZQfc4PCRmD9hRVd8tOokOhdS4K9g56y oNydWBrIiK8rcVolkSa0GQI6sFAWVd9g1RgFf1V/D+D8pPQnhVxPFkNJ8xcctg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dS4Cr036qznCT for ; Thu, 11 Dec 2025 20:38:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30995 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 20:38:00 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: =?utf-8?Q?Ana=C3=ABll?=e CAZUC From: Mitchell Horne Subject: git: 2635037db770 - stable/14 - pmc: add alderlake model 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 2635037db7702ddad40d3349bd7a56e54408fced Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 20:38:00 +0000 Message-Id: <693b2ba8.30995.6c80a02c@gitrepo.freebsd.org> The branch stable/14 has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=2635037db7702ddad40d3349bd7a56e54408fced commit 2635037db7702ddad40d3349bd7a56e54408fced Author: Anaëlle CAZUC AuthorDate: 2025-12-04 17:32:39 +0000 Commit: Mitchell Horne CommitDate: 2025-12-11 20:24:29 +0000 pmc: add alderlake model The commit 601925180df4 added the models 6-B7, 6-BA, 6-BF to libpmc, but they must also be added to the hwpmc module to allow pmc to work on those CPUs. Reviewed by: mhorne MFC after: 1 week Fixes: 601925180df4 ("libpmc: add more alderlake models") Sponsored by: Stormshield Differential Revision: https://reviews.freebsd.org/D49255 (cherry picked from commit 057dae35ffc6b17dacc84fa21921e93a17ce12b0) --- sys/dev/hwpmc/hwpmc_intel.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/dev/hwpmc/hwpmc_intel.c b/sys/dev/hwpmc/hwpmc_intel.c index f6e18316d8c4..c28a520aaabf 100644 --- a/sys/dev/hwpmc/hwpmc_intel.c +++ b/sys/dev/hwpmc/hwpmc_intel.c @@ -212,6 +212,9 @@ pmc_intel_initialize(void) break; case 0x97: case 0x9A: + case 0xB7: + case 0xBA: + case 0xBF: cputype = PMC_CPU_INTEL_ALDERLAKE; nclasses = 3; break; From nobody Thu Dec 11 20:38:01 2025 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 4dS4Cs5Pfsz6KKKC for ; Thu, 11 Dec 2025 20:38: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dS4Cs3CyGz3Xbc for ; Thu, 11 Dec 2025 20:38:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765485481; 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=LSf+nvxWO2x4XHIKfpcROGmIqRlGw51pUVcFaIU2TcU=; b=O33qAd7JyQb5GOC7uZrPwB208Xdwsu2SalKRWfd3s6PAdDMCNT0631upU36LSUCZd41M2l qekcMaVQ1Yl+Pt7JEvgZL7mzWiQ8gMpMWJoOy4/0TfJNiZWgfmmmoxuBvBzVCLbl0UF3m4 rZLSHoAYBCa81FV40cKC0AoAlaZzfAyHjS460z0cnPc9b0+L9hP6N/cPvx82LsLsd9ShOh HZziNchnfMfaFh/kMGGrz16Z+96Ifv9SdAWnBp2bcdhbFPeKxITadtIDuB5R790WOfKnru eWuqjiRBWA4wfZAyMrASLuqDO8AeG7TqqOSge+J3l2kEcVIo2DrJRu+RVZM9nw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765485481; 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=LSf+nvxWO2x4XHIKfpcROGmIqRlGw51pUVcFaIU2TcU=; b=lkKxfKYQbCK2aYWgYG8yUjafpZwfLxjN909SPCiky6Ulo1OIFeud7QNyPgJInad0DkNt+s YvtLRe6SuasrZbf/ZkvY4mHfiUnccat0FjgPzECugAFA9wSk+4DNmDIDlFcl25JV7MzkwM 59JFxVM2H/pLcjrlMOclIOq8UE4n+nU/9gft1pcKq218NQ4254+p10FI8NesrpiLYaDTWT Z0+O/FqZHLtm4hzwejZFLJlgDxxoEM2kbR1rcifXu1pKxnQX3YyhLvHtgC0Fq1ZpvKmIQM RqiYl4tIRGj/PNlt6Pd8NmXN4k+rnl36nQqIKGCfz1M0iDFucqdaCFZH37pTXQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765485481; a=rsa-sha256; cv=none; b=XRsySTtEYENa0pHv8rkpgbwXXzhFJ8XyOntN+Dkir1fst1FCo7EfofO9RvyFGJ7tuvkWvo ZGJcFcbfZIaqiNuTv2/aFK3Cuyr9xhyHQZSZ3hgKNBh+bosFbbOEcVjQjk6vVRXlXo/JGK WYqBYVqaJC3Ef/j+NUhFpqchP2I/kpmqq0wJrHdhrWtHR4eE+6/Sr94JO+MBZrQfKTCNb1 0dgNMZdEk76zUEkIBWi1Itub/9j7BlmyL/HicWec3y9jl6bVjsVaICkM+y5Bk18IV4/cWO 5kpDkiA3vPUSIJx7iAxZcvuN8oPCA3EQq3frTTKQ12sA3OKd0gmi8dZexRUXOA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dS4Cs2lMWzn3G for ; Thu, 11 Dec 2025 20:38:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30fc2 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 20:38:01 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: =?utf-8?Q?Ana=C3=ABll?=e CAZUC From: Mitchell Horne Subject: git: f7129ef918b7 - stable/14 - pmc: add emerald rapids model 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f7129ef918b77596536107e5687a14907bda07c1 Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 20:38:01 +0000 Message-Id: <693b2ba9.30fc2.52a22032@gitrepo.freebsd.org> The branch stable/14 has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=f7129ef918b77596536107e5687a14907bda07c1 commit f7129ef918b77596536107e5687a14907bda07c1 Author: Anaëlle CAZUC AuthorDate: 2025-12-04 17:36:32 +0000 Commit: Mitchell Horne CommitDate: 2025-12-11 20:24:29 +0000 pmc: add emerald rapids model This commit adds emerald rapids CPU model to hwpmc/libpmc. JSON event definitions are imported from Intel perfmon version 1.06. Reviewed by: mhorne MFC after: 1 week Sponsored by: Stormshield Differential Revision: https://reviews.freebsd.org/D49228 (cherry picked from commit 51a01f3debff8abf63c7cc21db9523c8feb53823) --- .../pmu-events/arch/x86/emeraldrapids/cache.json | 888 +++ .../arch/x86/emeraldrapids/floating-point.json | 214 + .../arch/x86/emeraldrapids/frontend.json | 389 ++ .../pmu-events/arch/x86/emeraldrapids/memory.json | 344 ++ .../pmu-events/arch/x86/emeraldrapids/other.json | 315 + .../arch/x86/emeraldrapids/pipeline.json | 962 +++ .../arch/x86/emeraldrapids/uncore-cache.json | 6248 ++++++++++++++++++++ .../arch/x86/emeraldrapids/uncore-cxl.json | 450 ++ .../x86/emeraldrapids/uncore-interconnect.json | 6199 +++++++++++++++++++ .../arch/x86/emeraldrapids/uncore-io.json | 3617 +++++++++++ .../arch/x86/emeraldrapids/uncore-memory.json | 3308 +++++++++++ .../arch/x86/emeraldrapids/uncore-power.json | 197 + .../arch/x86/emeraldrapids/virtual-memory.json | 165 + lib/libpmc/pmu-events/arch/x86/mapfile.csv | 1 + sys/dev/hwpmc/hwpmc_intel.c | 4 + sys/sys/pmc.h | 1 + 16 files changed, 23302 insertions(+) diff --git a/lib/libpmc/pmu-events/arch/x86/emeraldrapids/cache.json b/lib/libpmc/pmu-events/arch/x86/emeraldrapids/cache.json new file mode 100644 index 000000000000..ab09bd9fb409 --- /dev/null +++ b/lib/libpmc/pmu-events/arch/x86/emeraldrapids/cache.json @@ -0,0 +1,888 @@ +[ + { + "BriefDescription": "L1D.HWPF_MISS", + "EventCode": "0x51", + "EventName": "L1D.HWPF_MISS", + "SampleAfterValue": "1000003", + "UMask": "0x20" + }, + { + "BriefDescription": "Counts the number of cache lines replaced in L1 data cache.", + "EventCode": "0x51", + "EventName": "L1D.REPLACEMENT", + "PublicDescription": "Counts L1D data line replacements including opportunistic replacements, and replacements that require stall-for-replace or block-for-replace.", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Number of cycles a demand request has waited due to L1D Fill Buffer (FB) unavailability.", + "EventCode": "0x48", + "EventName": "L1D_PEND_MISS.FB_FULL", + "PublicDescription": "Counts number of cycles a demand request has waited due to L1D Fill Buffer (FB) unavailability. Demand requests include cacheable/uncacheable demand load, store, lock or SW prefetch accesses.", + "SampleAfterValue": "1000003", + "UMask": "0x2" + }, + { + "BriefDescription": "Number of phases a demand request has waited due to L1D Fill Buffer (FB) unavailability.", + "CounterMask": "1", + "EdgeDetect": "1", + "EventCode": "0x48", + "EventName": "L1D_PEND_MISS.FB_FULL_PERIODS", + "PublicDescription": "Counts number of phases a demand request has waited due to L1D Fill Buffer (FB) unavailability. Demand requests include cacheable/uncacheable demand load, store, lock or SW prefetch accesses.", + "SampleAfterValue": "1000003", + "UMask": "0x2" + }, + { + "BriefDescription": "This event is deprecated. Refer to new event L1D_PEND_MISS.L2_STALLS", + "Deprecated": "1", + "EventCode": "0x48", + "EventName": "L1D_PEND_MISS.L2_STALL", + "SampleAfterValue": "1000003", + "UMask": "0x4" + }, + { + "BriefDescription": "Number of cycles a demand request has waited due to L1D due to lack of L2 resources.", + "EventCode": "0x48", + "EventName": "L1D_PEND_MISS.L2_STALLS", + "PublicDescription": "Counts number of cycles a demand request has waited due to L1D due to lack of L2 resources. Demand requests include cacheable/uncacheable demand load, store, lock or SW prefetch accesses.", + "SampleAfterValue": "1000003", + "UMask": "0x4" + }, + { + "BriefDescription": "Number of L1D misses that are outstanding", + "EventCode": "0x48", + "EventName": "L1D_PEND_MISS.PENDING", + "PublicDescription": "Counts number of L1D misses that are outstanding in each cycle, that is each cycle the number of Fill Buffers (FB) outstanding required by Demand Reads. FB either is held by demand loads, or it is held by non-demand loads and gets hit at least once by demand. The valid outstanding interval is defined until the FB deallocation by one of the following ways: from FB allocation, if FB is allocated by demand from the demand Hit FB, if it is allocated by hardware or software prefetch. Note: In the L1D, a Demand Read contains cacheable or noncacheable demand loads, including ones causing cache-line splits and reads due to page walks resulted from any request type.", + "SampleAfterValue": "1000003", + "UMask": "0x1" + }, + { + "BriefDescription": "Cycles with L1D load Misses outstanding.", + "CounterMask": "1", + "EventCode": "0x48", + "EventName": "L1D_PEND_MISS.PENDING_CYCLES", + "PublicDescription": "Counts duration of L1D miss outstanding in cycles.", + "SampleAfterValue": "1000003", + "UMask": "0x1" + }, + { + "BriefDescription": "L2 cache lines filling L2", + "EventCode": "0x25", + "EventName": "L2_LINES_IN.ALL", + "PublicDescription": "Counts the number of L2 cache lines filling the L2. Counting does not cover rejects.", + "SampleAfterValue": "100003", + "UMask": "0x1f" + }, + { + "BriefDescription": "L2_LINES_OUT.NON_SILENT", + "EventCode": "0x26", + "EventName": "L2_LINES_OUT.NON_SILENT", + "SampleAfterValue": "200003", + "UMask": "0x2" + }, + { + "BriefDescription": "Non-modified cache lines that are silently dropped by L2 cache when triggered by an L2 cache fill.", + "EventCode": "0x26", + "EventName": "L2_LINES_OUT.SILENT", + "PublicDescription": "Counts the number of lines that are silently dropped by L2 cache when triggered by an L2 cache fill. These lines are typically in Shared or Exclusive state. A non-threaded event.", + "SampleAfterValue": "200003", + "UMask": "0x1" + }, + { + "BriefDescription": "Cache lines that have been L2 hardware prefetched but not used by demand accesses", + "EventCode": "0x26", + "EventName": "L2_LINES_OUT.USELESS_HWPF", + "PublicDescription": "Counts the number of cache lines that have been prefetched by the L2 hardware prefetcher but not used by demand access when evicted from the L2 cache", + "SampleAfterValue": "200003", + "UMask": "0x4" + }, + { + "BriefDescription": "All accesses to L2 cache [This event is alias to L2_RQSTS.REFERENCES]", + "EventCode": "0x24", + "EventName": "L2_REQUEST.ALL", + "PublicDescription": "Counts all requests that were hit or true misses in L2 cache. True-miss excludes misses that were merged with ongoing L2 misses. [This event is alias to L2_RQSTS.REFERENCES]", + "SampleAfterValue": "200003", + "UMask": "0xff" + }, + { + "BriefDescription": "Read requests with true-miss in L2 cache. [This event is alias to L2_RQSTS.MISS]", + "EventCode": "0x24", + "EventName": "L2_REQUEST.MISS", + "PublicDescription": "Counts read requests of any type with true-miss in the L2 cache. True-miss excludes L2 misses that were merged with ongoing L2 misses. [This event is alias to L2_RQSTS.MISS]", + "SampleAfterValue": "200003", + "UMask": "0x3f" + }, + { + "BriefDescription": "L2 code requests", + "EventCode": "0x24", + "EventName": "L2_RQSTS.ALL_CODE_RD", + "PublicDescription": "Counts the total number of L2 code requests.", + "SampleAfterValue": "200003", + "UMask": "0xe4" + }, + { + "BriefDescription": "Demand Data Read access L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.ALL_DEMAND_DATA_RD", + "PublicDescription": "Counts Demand Data Read requests accessing the L2 cache. These requests may hit or miss L2 cache. True-miss exclude misses that were merged with ongoing L2 misses. An access is counted once.", + "SampleAfterValue": "200003", + "UMask": "0xe1" + }, + { + "BriefDescription": "Demand requests that miss L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.ALL_DEMAND_MISS", + "PublicDescription": "Counts demand requests that miss L2 cache.", + "SampleAfterValue": "200003", + "UMask": "0x27" + }, + { + "BriefDescription": "Demand requests to L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.ALL_DEMAND_REFERENCES", + "PublicDescription": "Counts demand requests to L2 cache.", + "SampleAfterValue": "200003", + "UMask": "0xe7" + }, + { + "BriefDescription": "L2_RQSTS.ALL_HWPF", + "EventCode": "0x24", + "EventName": "L2_RQSTS.ALL_HWPF", + "SampleAfterValue": "200003", + "UMask": "0xf0" + }, + { + "BriefDescription": "RFO requests to L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.ALL_RFO", + "PublicDescription": "Counts the total number of RFO (read for ownership) requests to L2 cache. L2 RFO requests include both L1D demand RFO misses as well as L1D RFO prefetches.", + "SampleAfterValue": "200003", + "UMask": "0xe2" + }, + { + "BriefDescription": "L2 cache hits when fetching instructions, code reads.", + "EventCode": "0x24", + "EventName": "L2_RQSTS.CODE_RD_HIT", + "PublicDescription": "Counts L2 cache hits when fetching instructions, code reads.", + "SampleAfterValue": "200003", + "UMask": "0xc4" + }, + { + "BriefDescription": "L2 cache misses when fetching instructions", + "EventCode": "0x24", + "EventName": "L2_RQSTS.CODE_RD_MISS", + "PublicDescription": "Counts L2 cache misses when fetching instructions.", + "SampleAfterValue": "200003", + "UMask": "0x24" + }, + { + "BriefDescription": "Demand Data Read requests that hit L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.DEMAND_DATA_RD_HIT", + "PublicDescription": "Counts the number of demand Data Read requests initiated by load instructions that hit L2 cache.", + "SampleAfterValue": "200003", + "UMask": "0xc1" + }, + { + "BriefDescription": "Demand Data Read miss L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.DEMAND_DATA_RD_MISS", + "PublicDescription": "Counts demand Data Read requests with true-miss in the L2 cache. True-miss excludes misses that were merged with ongoing L2 misses. An access is counted once.", + "SampleAfterValue": "200003", + "UMask": "0x21" + }, + { + "BriefDescription": "L2_RQSTS.HWPF_MISS", + "EventCode": "0x24", + "EventName": "L2_RQSTS.HWPF_MISS", + "SampleAfterValue": "200003", + "UMask": "0x30" + }, + { + "BriefDescription": "Read requests with true-miss in L2 cache. [This event is alias to L2_REQUEST.MISS]", + "EventCode": "0x24", + "EventName": "L2_RQSTS.MISS", + "PublicDescription": "Counts read requests of any type with true-miss in the L2 cache. True-miss excludes L2 misses that were merged with ongoing L2 misses. [This event is alias to L2_REQUEST.MISS]", + "SampleAfterValue": "200003", + "UMask": "0x3f" + }, + { + "BriefDescription": "All accesses to L2 cache [This event is alias to L2_REQUEST.ALL]", + "EventCode": "0x24", + "EventName": "L2_RQSTS.REFERENCES", + "PublicDescription": "Counts all requests that were hit or true misses in L2 cache. True-miss excludes misses that were merged with ongoing L2 misses. [This event is alias to L2_REQUEST.ALL]", + "SampleAfterValue": "200003", + "UMask": "0xff" + }, + { + "BriefDescription": "RFO requests that hit L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.RFO_HIT", + "PublicDescription": "Counts the RFO (Read-for-Ownership) requests that hit L2 cache.", + "SampleAfterValue": "200003", + "UMask": "0xc2" + }, + { + "BriefDescription": "RFO requests that miss L2 cache", + "EventCode": "0x24", + "EventName": "L2_RQSTS.RFO_MISS", + "PublicDescription": "Counts the RFO (Read-for-Ownership) requests that miss L2 cache.", + "SampleAfterValue": "200003", + "UMask": "0x22" + }, + { + "BriefDescription": "SW prefetch requests that hit L2 cache.", + "EventCode": "0x24", + "EventName": "L2_RQSTS.SWPF_HIT", + "PublicDescription": "Counts Software prefetch requests that hit the L2 cache. Accounts for PREFETCHNTA and PREFETCHT0/1/2 instructions when FB is not full.", + "SampleAfterValue": "200003", + "UMask": "0xc8" + }, + { + "BriefDescription": "SW prefetch requests that miss L2 cache.", + "EventCode": "0x24", + "EventName": "L2_RQSTS.SWPF_MISS", + "PublicDescription": "Counts Software prefetch requests that miss the L2 cache. Accounts for PREFETCHNTA and PREFETCHT0/1/2 instructions when FB is not full.", + "SampleAfterValue": "200003", + "UMask": "0x28" + }, + { + "BriefDescription": "Core-originated cacheable requests that missed L3 (Except hardware prefetches to the L3)", + "EventCode": "0x2e", + "EventName": "LONGEST_LAT_CACHE.MISS", + "PublicDescription": "Counts core-originated cacheable requests that miss the L3 cache (Longest Latency cache). Requests include data and code reads, Reads-for-Ownership (RFOs), speculative accesses and hardware prefetches to the L1 and L2. It does not include hardware prefetches to the L3, and may not count other types of requests to the L3.", + "SampleAfterValue": "100003", + "UMask": "0x41" + }, + { + "BriefDescription": "Core-originated cacheable requests that refer to L3 (Except hardware prefetches to the L3)", + "EventCode": "0x2e", + "EventName": "LONGEST_LAT_CACHE.REFERENCE", + "PublicDescription": "Counts core-originated cacheable requests to the L3 cache (Longest Latency cache). Requests include data and code reads, Reads-for-Ownership (RFOs), speculative accesses and hardware prefetches to the L1 and L2. It does not include hardware prefetches to the L3, and may not count other types of requests to the L3.", + "SampleAfterValue": "100003", + "UMask": "0x4f" + }, + { + "BriefDescription": "Retired load instructions.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.ALL_LOADS", + "PEBS": "1", + "PublicDescription": "Counts all retired load instructions. This event accounts for SW prefetch instructions of PREFETCHNTA or PREFETCHT0/1/2 or PREFETCHW.", + "SampleAfterValue": "1000003", + "UMask": "0x81" + }, + { + "BriefDescription": "Retired store instructions.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.ALL_STORES", + "PEBS": "1", + "PublicDescription": "Counts all retired store instructions.", + "SampleAfterValue": "1000003", + "UMask": "0x82" + }, + { + "BriefDescription": "All retired memory instructions.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.ANY", + "PEBS": "1", + "PublicDescription": "Counts all retired memory instructions - loads and stores.", + "SampleAfterValue": "1000003", + "UMask": "0x83" + }, + { + "BriefDescription": "Retired load instructions with locked access.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.LOCK_LOADS", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions with locked access.", + "SampleAfterValue": "100007", + "UMask": "0x21" + }, + { + "BriefDescription": "Retired load instructions that split across a cacheline boundary.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.SPLIT_LOADS", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions that split across a cacheline boundary.", + "SampleAfterValue": "100003", + "UMask": "0x41" + }, + { + "BriefDescription": "Retired store instructions that split across a cacheline boundary.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.SPLIT_STORES", + "PEBS": "1", + "PublicDescription": "Counts retired store instructions that split across a cacheline boundary.", + "SampleAfterValue": "100003", + "UMask": "0x42" + }, + { + "BriefDescription": "Retired load instructions that miss the STLB.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.STLB_MISS_LOADS", + "PEBS": "1", + "PublicDescription": "Number of retired load instructions that (start a) miss in the 2nd-level TLB (STLB).", + "SampleAfterValue": "100003", + "UMask": "0x11" + }, + { + "BriefDescription": "Retired store instructions that miss the STLB.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_INST_RETIRED.STLB_MISS_STORES", + "PEBS": "1", + "PublicDescription": "Number of retired store instructions that (start a) miss in the 2nd-level TLB (STLB).", + "SampleAfterValue": "100003", + "UMask": "0x12" + }, + { + "BriefDescription": "Completed demand load uops that miss the L1 d-cache.", + "EventCode": "0x43", + "EventName": "MEM_LOAD_COMPLETED.L1_MISS_ANY", + "PublicDescription": "Number of completed demand load requests that missed the L1 data cache including shadow misses (FB hits, merge to an ongoing L1D miss)", + "SampleAfterValue": "1000003", + "UMask": "0xfd" + }, + { + "BriefDescription": "Retired load instructions whose data sources were HitM responses from shared L3", + "Data_LA": "1", + "EventCode": "0xd2", + "EventName": "MEM_LOAD_L3_HIT_RETIRED.XSNP_FWD", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions whose data sources were HitM responses from shared L3.", + "SampleAfterValue": "20011", + "UMask": "0x4" + }, + { + "BriefDescription": "Retired load instructions whose data sources were L3 hit and cross-core snoop missed in on-pkg core cache.", + "Data_LA": "1", + "EventCode": "0xd2", + "EventName": "MEM_LOAD_L3_HIT_RETIRED.XSNP_MISS", + "PEBS": "1", + "PublicDescription": "Counts the retired load instructions whose data sources were L3 hit and cross-core snoop missed in on-pkg core cache.", + "SampleAfterValue": "20011", + "UMask": "0x1" + }, + { + "BriefDescription": "Retired load instructions whose data sources were hits in L3 without snoops required", + "Data_LA": "1", + "EventCode": "0xd2", + "EventName": "MEM_LOAD_L3_HIT_RETIRED.XSNP_NONE", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions whose data sources were hits in L3 without snoops required.", + "SampleAfterValue": "100003", + "UMask": "0x8" + }, + { + "BriefDescription": "Retired load instructions whose data sources were L3 and cross-core snoop hits in on-pkg core cache", + "Data_LA": "1", + "EventCode": "0xd2", + "EventName": "MEM_LOAD_L3_HIT_RETIRED.XSNP_NO_FWD", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions whose data sources were L3 and cross-core snoop hits in on-pkg core cache.", + "SampleAfterValue": "20011", + "UMask": "0x2" + }, + { + "BriefDescription": "Retired load instructions which data sources missed L3 but serviced from local dram", + "Data_LA": "1", + "EventCode": "0xd3", + "EventName": "MEM_LOAD_L3_MISS_RETIRED.LOCAL_DRAM", + "PEBS": "1", + "PublicDescription": "Retired load instructions which data sources missed L3 but serviced from local DRAM.", + "SampleAfterValue": "100007", + "UMask": "0x1" + }, + { + "BriefDescription": "MEM_LOAD_L3_MISS_RETIRED.REMOTE_DRAM", + "Data_LA": "1", + "EventCode": "0xd3", + "EventName": "MEM_LOAD_L3_MISS_RETIRED.REMOTE_DRAM", + "PEBS": "1", + "SampleAfterValue": "1000003", + "UMask": "0x2" + }, + { + "BriefDescription": "Retired load instructions whose data sources was forwarded from a remote cache", + "Data_LA": "1", + "EventCode": "0xd3", + "EventName": "MEM_LOAD_L3_MISS_RETIRED.REMOTE_FWD", + "PEBS": "1", + "PublicDescription": "Retired load instructions whose data sources was forwarded from a remote cache.", + "SampleAfterValue": "100007", + "UMask": "0x8" + }, + { + "BriefDescription": "MEM_LOAD_L3_MISS_RETIRED.REMOTE_HITM", + "Data_LA": "1", + "EventCode": "0xd3", + "EventName": "MEM_LOAD_L3_MISS_RETIRED.REMOTE_HITM", + "PEBS": "1", + "SampleAfterValue": "1000003", + "UMask": "0x4" + }, + { + "BriefDescription": "Retired instructions with at least 1 uncacheable load or lock.", + "Data_LA": "1", + "EventCode": "0xd4", + "EventName": "MEM_LOAD_MISC_RETIRED.UC", + "PEBS": "1", + "PublicDescription": "Retired instructions with at least one load to uncacheable memory-type, or at least one cache-line split locked access (Bus Lock).", + "SampleAfterValue": "100007", + "UMask": "0x4" + }, + { + "BriefDescription": "Number of completed demand load requests that missed the L1, but hit the FB(fill buffer), because a preceding miss to the same cacheline initiated the line to be brought into L1, but data is not yet ready in L1.", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_RETIRED.FB_HIT", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions with at least one uop was load missed in L1 but hit FB (Fill Buffers) due to preceding miss to the same cache line with data not ready.", + "SampleAfterValue": "100007", + "UMask": "0x40" + }, + { + "BriefDescription": "Retired load instructions with L1 cache hits as data sources", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_RETIRED.L1_HIT", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions with at least one uop that hit in the L1 data cache. This event includes all SW prefetches and lock instructions regardless of the data source.", + "SampleAfterValue": "1000003", + "UMask": "0x1" + }, + { + "BriefDescription": "Retired load instructions missed L1 cache as data sources", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_RETIRED.L1_MISS", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions with at least one uop that missed in the L1 cache.", + "SampleAfterValue": "200003", + "UMask": "0x8" + }, + { + "BriefDescription": "Retired load instructions with L2 cache hits as data sources", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_RETIRED.L2_HIT", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions with L2 cache hits as data sources.", + "SampleAfterValue": "200003", + "UMask": "0x2" + }, + { + "BriefDescription": "Retired load instructions missed L2 cache as data sources", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_RETIRED.L2_MISS", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions missed L2 cache as data sources.", + "SampleAfterValue": "100021", + "UMask": "0x10" + }, + { + "BriefDescription": "Retired load instructions with L3 cache hits as data sources", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_RETIRED.L3_HIT", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions with at least one uop that hit in the L3 cache.", + "SampleAfterValue": "100021", + "UMask": "0x4" + }, + { + "BriefDescription": "Retired load instructions missed L3 cache as data sources", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_RETIRED.L3_MISS", + "PEBS": "1", + "PublicDescription": "Counts retired load instructions with at least one uop that missed in the L3 cache.", + "SampleAfterValue": "50021", + "UMask": "0x20" + }, + { + "BriefDescription": "MEM_STORE_RETIRED.L2_HIT", + "EventCode": "0x44", + "EventName": "MEM_STORE_RETIRED.L2_HIT", + "SampleAfterValue": "200003", + "UMask": "0x1" + }, + { + "BriefDescription": "Retired memory uops for any access", + "EventCode": "0xe5", + "EventName": "MEM_UOP_RETIRED.ANY", + "PublicDescription": "Number of retired micro-operations (uops) for load or store memory accesses", + "SampleAfterValue": "1000003", + "UMask": "0x3" + }, + { + "BriefDescription": "Counts demand instruction fetches and L1 instruction cache prefetches that hit in the L3 or were snooped from another core's caches on the same socket.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_CODE_RD.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x3F803C0004", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand instruction fetches and L1 instruction cache prefetches that resulted in a snoop hit a modified line in another core's caches which forwarded the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_CODE_RD.L3_HIT.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x10003C0004", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand instruction fetches and L1 instruction cache prefetches that hit a modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_CODE_RD.SNC_CACHE.HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1008000004", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand instruction fetches and L1 instruction cache prefetches that either hit a non-modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_CODE_RD.SNC_CACHE.HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x808000004", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that hit in the L3 or were snooped from another core's caches on the same socket.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x3F803C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that resulted in a snoop hit a modified line in another core's caches which forwarded the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x10003C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that resulted in a snoop that hit in another core, which did not forward the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HIT_NO_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x4003C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that resulted in a snoop hit in another core's caches which forwarded the unmodified data to the requesting core.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x8003C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that were supplied by a cache on a remote socket where a snoop hit a modified line in another core's caches which forwarded the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.REMOTE_CACHE.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1030000001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that were supplied by a cache on a remote socket where a snoop hit in another core's caches which forwarded the unmodified data to the requesting core.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.REMOTE_CACHE.SNOOP_HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x830000001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that hit a modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.SNC_CACHE.HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1008000001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that either hit a non-modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_DATA_RD.SNC_CACHE.HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x808000001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand reads for ownership (RFO) requests and software prefetches for exclusive ownership (PREFETCHW) that hit in the L3 or were snooped from another core's caches on the same socket.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_RFO.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x3F803C0002", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand reads for ownership (RFO) requests and software prefetches for exclusive ownership (PREFETCHW) that resulted in a snoop hit a modified line in another core's caches which forwarded the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_RFO.L3_HIT.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x10003C0002", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand reads for ownership (RFO) requests and software prefetches for exclusive ownership (PREFETCHW) that hit a modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_RFO.SNC_CACHE.HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1008000002", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand reads for ownership (RFO) requests and software prefetches for exclusive ownership (PREFETCHW) that either hit a non-modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.DEMAND_RFO.SNC_CACHE.HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x808000002", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts hardware prefetches to the L3 only that hit in the L3 or were snooped from another core's caches on the same socket.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.HWPF_L3.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x80082380", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that hit in the L3 or were snooped from another core's caches on the same socket.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x3F003C4477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that resulted in a snoop hit a modified line in another core's caches which forwarded the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.L3_HIT.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x10003C4477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that resulted in a snoop that hit in another core, which did not forward the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.L3_HIT.SNOOP_HIT_NO_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x4003C4477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that resulted in a snoop hit in another core's caches which forwarded the unmodified data to the requesting core.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.L3_HIT.SNOOP_HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x8003C4477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that were supplied by a cache on a remote socket where a snoop was sent and data was returned (Modified or Not Modified).", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.REMOTE_CACHE.SNOOP_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1830004477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that were supplied by a cache on a remote socket where a snoop hit a modified line in another core's caches which forwarded the data.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.REMOTE_CACHE.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1030004477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that were supplied by a cache on a remote socket where a snoop hit in another core's caches which forwarded the unmodified data to the requesting core.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.REMOTE_CACHE.SNOOP_HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x830004477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that hit a modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.SNC_CACHE.HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1008004477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all (cacheable) data read, code read and RFO requests including demands and prefetches to the core caches (L1 or L2) that either hit a non-modified line in a distant L3 Cache or were snooped from a distant core's L1/L2 caches on this socket when the system is in SNC (sub-NUMA cluster) mode.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.READS_TO_CORE.SNC_CACHE.HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x808004477", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand reads for ownership (RFO), hardware prefetch RFOs (which bring data to L2), and software prefetches for exclusive ownership (PREFETCHW) that hit to a (M)odified cacheline in the L3 or snoop filter.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.RFO_TO_CORE.L3_HIT_M", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x1F80040022", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts streaming stores that hit in the L3 or were snooped from another core's caches on the same socket.", + "EventCode": "0x2A,0x2B", + "EventName": "OCR.STREAMING_WR.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x80080800", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "OFFCORE_REQUESTS.ALL_REQUESTS", + "EventCode": "0x21", + "EventName": "OFFCORE_REQUESTS.ALL_REQUESTS", + "SampleAfterValue": "100003", + "UMask": "0x80" + }, + { + "BriefDescription": "Demand and prefetch data reads", + "EventCode": "0x21", + "EventName": "OFFCORE_REQUESTS.DATA_RD", + "PublicDescription": "Counts the demand and prefetch data reads. All Core Data Reads include cacheable 'Demands' and L2 prefetchers (not L3 prefetchers). Counting also covers reads due to page walks resulted from any request type.", + "SampleAfterValue": "100003", + "UMask": "0x8" + }, + { + "BriefDescription": "Demand Data Read requests sent to uncore", + "EventCode": "0x21", + "EventName": "OFFCORE_REQUESTS.DEMAND_DATA_RD", + "PublicDescription": "Counts the Demand Data Read requests sent to uncore. Use it in conjunction with OFFCORE_REQUESTS_OUTSTANDING to determine average latency in the uncore.", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "This event is deprecated. Refer to new event OFFCORE_REQUESTS_OUTSTANDING.DATA_RD", + "Deprecated": "1", + "EventCode": "0x20", + "EventName": "OFFCORE_REQUESTS_OUTSTANDING.ALL_DATA_RD", + "SampleAfterValue": "1000003", + "UMask": "0x8" + }, + { + "BriefDescription": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DATA_RD", + "CounterMask": "1", + "EventCode": "0x20", + "EventName": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DATA_RD", + "SampleAfterValue": "1000003", + "UMask": "0x8" + }, + { + "BriefDescription": "Cycles where at least 1 outstanding demand data read request is pending.", + "CounterMask": "1", + "EventCode": "0x20", + "EventName": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_DATA_RD", + "SampleAfterValue": "2000003", + "UMask": "0x1" + }, + { + "BriefDescription": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_RFO", + "CounterMask": "1", + "EventCode": "0x20", + "EventName": "OFFCORE_REQUESTS_OUTSTANDING.CYCLES_WITH_DEMAND_RFO", + "SampleAfterValue": "1000003", + "UMask": "0x4" + }, + { + "BriefDescription": "OFFCORE_REQUESTS_OUTSTANDING.DATA_RD", + "EventCode": "0x20", + "EventName": "OFFCORE_REQUESTS_OUTSTANDING.DATA_RD", + "SampleAfterValue": "1000003", + "UMask": "0x8" + }, + { + "BriefDescription": "For every cycle, increments by the number of outstanding demand data read requests pending.", + "EventCode": "0x20", + "EventName": "OFFCORE_REQUESTS_OUTSTANDING.DEMAND_DATA_RD", + "PublicDescription": "For every cycle, increments by the number of outstanding demand data read requests pending. Requests are considered outstanding from the time they miss the core's L2 cache until the transaction completion message is sent to the requestor.", + "SampleAfterValue": "1000003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts bus locks, accounts for cache line split locks and UC locks.", + "EventCode": "0x2c", + "EventName": "SQ_MISC.BUS_LOCK", + "PublicDescription": "Counts the more expensive bus lock needed to enforce cache coherency for certain memory accesses that need to be done atomically. Can be created by issuing an atomic instruction (via the LOCK prefix) which causes a cache line split or accesses uncacheable memory.", + "SampleAfterValue": "100003", + "UMask": "0x10" + }, + { + "BriefDescription": "Number of PREFETCHNTA instructions executed.", + "EventCode": "0x40", + "EventName": "SW_PREFETCH_ACCESS.NTA", + "PublicDescription": "Counts the number of PREFETCHNTA instructions executed.", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Number of PREFETCHW instructions executed.", + "EventCode": "0x40", + "EventName": "SW_PREFETCH_ACCESS.PREFETCHW", + "PublicDescription": "Counts the number of PREFETCHW instructions executed.", + "SampleAfterValue": "100003", + "UMask": "0x8" + }, + { + "BriefDescription": "Number of PREFETCHT0 instructions executed.", + "EventCode": "0x40", + "EventName": "SW_PREFETCH_ACCESS.T0", + "PublicDescription": "Counts the number of PREFETCHT0 instructions executed.", + "SampleAfterValue": "100003", + "UMask": "0x2" + }, + { + "BriefDescription": "Number of PREFETCHT1 or PREFETCHT2 instructions executed.", + "EventCode": "0x40", + "EventName": "SW_PREFETCH_ACCESS.T1_T2", + "PublicDescription": "Counts the number of PREFETCHT1 or PREFETCHT2 instructions executed.", + "SampleAfterValue": "100003", + "UMask": "0x4" + } +] diff --git a/lib/libpmc/pmu-events/arch/x86/emeraldrapids/floating-point.json b/lib/libpmc/pmu-events/arch/x86/emeraldrapids/floating-point.json new file mode 100644 index 000000000000..1bdefaf96287 --- /dev/null +++ b/lib/libpmc/pmu-events/arch/x86/emeraldrapids/floating-point.json @@ -0,0 +1,214 @@ +[ + { + "BriefDescription": "ARITH.FPDIV_ACTIVE", + "CounterMask": "1", + "EventCode": "0xb0", + "EventName": "ARITH.FPDIV_ACTIVE", + "SampleAfterValue": "1000003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts all microcode FP assists.", + "EventCode": "0xc1", + "EventName": "ASSISTS.FP", + "PublicDescription": "Counts all microcode Floating Point assists.", + "SampleAfterValue": "100003", + "UMask": "0x2" + }, + { + "BriefDescription": "ASSISTS.SSE_AVX_MIX", + "EventCode": "0xc1", + "EventName": "ASSISTS.SSE_AVX_MIX", + "SampleAfterValue": "1000003", + "UMask": "0x10" + }, + { + "BriefDescription": "FP_ARITH_DISPATCHED.PORT_0 [This event is alias to FP_ARITH_DISPATCHED.V0]", + "EventCode": "0xb3", + "EventName": "FP_ARITH_DISPATCHED.PORT_0", + "SampleAfterValue": "2000003", + "UMask": "0x1" + }, + { + "BriefDescription": "FP_ARITH_DISPATCHED.PORT_1 [This event is alias to FP_ARITH_DISPATCHED.V1]", + "EventCode": "0xb3", + "EventName": "FP_ARITH_DISPATCHED.PORT_1", + "SampleAfterValue": "2000003", + "UMask": "0x2" + }, + { + "BriefDescription": "FP_ARITH_DISPATCHED.PORT_5 [This event is alias to FP_ARITH_DISPATCHED.V2]", + "EventCode": "0xb3", + "EventName": "FP_ARITH_DISPATCHED.PORT_5", + "SampleAfterValue": "2000003", + "UMask": "0x4" + }, + { *** 22467 LINES SKIPPED *** From nobody Thu Dec 11 20:38:02 2025 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 4dS4Ct5dmTz6KKKH for ; Thu, 11 Dec 2025 20:38:02 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dS4Ct4Fr0z3Xbd for ; Thu, 11 Dec 2025 20:38:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765485482; 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=Kr9DVftwl8i/OwBfCvXTcENBLZa0f6wlqA7fRqKg/UA=; b=EiwUBHuePo0h2WdXT2Ynw0H5H5/BJ43L4DrXwBK6cjBzYCJ/dGRTMbUizY40atvVZy76Lx 3QqNcylKGarYYSSt3f4llDKNW8KvT7owAwqhPhbUAGvddgXKu969AQaVRas/I86FcsdZFC 9hjdgGWIQ5yFkdVkQRLI15M6UIQOTe+SSzom0cGWlsYU7E2J7lKjD2DXxqPPBCvhxtpYNR AI/vujlct0CaLrAhTR5Ho0mWphLT4LZA8MJhIdq9Hlc4DnUgVt51ZRESvwhIvmGe/+j+J0 qrGhg5JQCU22JF+sAQGV3XTH3f/HWyXWPbptOSdOQRozta5hcn+D/cSG97qcpw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765485482; 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=Kr9DVftwl8i/OwBfCvXTcENBLZa0f6wlqA7fRqKg/UA=; b=RtjDkDgatuh6tpE0ZD0UXL6LyVSaiZRcJXxycFIgZ4xVpsbk58Uy0HKIbTz5iP9F7z9M1H xU0XJYBZM0PLT1j2F4iMOyH6AjV5gDtV9DRlvihiuA2znCVEvcnG4Qrv0LLciS4aGNh+XO XTITbZffi8Ip5dCv+Aj0mFJDOnoNwD0RCFyWq7FhdBLcKfCSQNUGHXja1HGsSbeNVNBWXL SDpqfK22Q9AuZpXtm/tDuUSBX3FN8+5E4+FlhEOkNIBOwY3BgMIEJT4dIh0ILUGliCQ/tJ Qov9godF+YeJ6EwLMWBrRDGDl3Kt9SgweSOZ/gQ1ZJVoM6aLQNOnmLSOLrHPdQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765485482; a=rsa-sha256; cv=none; b=vhLplUddCHh198Kw/ZjcaAq4Ek3zJFp9YWk84mpzNv6lDuf19Wfex/nxJmB3ptDrHjB+uQ yScC6N+DLSzi7g4ilfo1T/Uiblcl7z7Ho+OhEKVnN/ttd0yubgE18d+StibqXDPryh0I4Q M8dRZlepkuWmHLnC8V+2C9JnsKTBBOHw2J2a+42h6zRecMr/8yvrjYq91su6AkNofjPpOW tVEx+/NJZGSs9Z2alao4zhJlfresYWmHWUaeql1wnY5lMNUEPgxOmSyGBFSHQf4R9yONgq mjhcOQjxGfciHOZgoL85U6ldG0c4ulKf4N5mfXoaUpZSGodoEgxmfzOAGaVUpw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dS4Ct3g5Kzml8 for ; Thu, 11 Dec 2025 20:38:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 313d7 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 20:38:02 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: =?utf-8?Q?Ana=C3=ABll?=e CAZUC From: Mitchell Horne Subject: git: e56189d4436b - stable/14 - pmc: add alderlaken model 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e56189d4436b91c2ccf915774cb2eef53c8eca0e Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 20:38:02 +0000 Message-Id: <693b2baa.313d7.4892b4c@gitrepo.freebsd.org> The branch stable/14 has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=e56189d4436b91c2ccf915774cb2eef53c8eca0e commit e56189d4436b91c2ccf915774cb2eef53c8eca0e Author: Anaëlle CAZUC AuthorDate: 2025-12-04 17:52:23 +0000 Commit: Mitchell Horne CommitDate: 2025-12-11 20:24:29 +0000 pmc: add alderlaken model This commit adds alderlaken CPU model to hwpmc/libpmc. JSON event definitions are imported from Intel perfmon version 1.16. Reviewed by: mhorne MFC after: 1 week Sponsored by: Stormshield Differential Revision: https://reviews.freebsd.org/D49229 (cherry picked from commit ca3e47b0ea68664c7e10e1c3e28c5ac7d9932c21) --- .../arch/x86/alderlaken/adln-metrics.json | 583 +++++++++++++++++++++ .../pmu-events/arch/x86/alderlaken/cache.json | 330 ++++++++++++ .../arch/x86/alderlaken/floating-point.json | 18 + .../pmu-events/arch/x86/alderlaken/frontend.json | 26 + .../pmu-events/arch/x86/alderlaken/memory.json | 81 +++ .../pmu-events/arch/x86/alderlaken/other.json | 38 ++ .../pmu-events/arch/x86/alderlaken/pipeline.json | 533 +++++++++++++++++++ .../arch/x86/alderlaken/uncore-memory.json | 175 +++++++ .../arch/x86/alderlaken/uncore-other.json | 33 ++ .../arch/x86/alderlaken/virtual-memory.json | 47 ++ lib/libpmc/pmu-events/arch/x86/mapfile.csv | 1 + sys/dev/hwpmc/hwpmc_intel.c | 4 + sys/sys/pmc.h | 1 + 13 files changed, 1870 insertions(+) diff --git a/lib/libpmc/pmu-events/arch/x86/alderlaken/adln-metrics.json b/lib/libpmc/pmu-events/arch/x86/alderlaken/adln-metrics.json new file mode 100644 index 000000000000..535acee4ab7f --- /dev/null +++ b/lib/libpmc/pmu-events/arch/x86/alderlaken/adln-metrics.json @@ -0,0 +1,583 @@ +[ + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to frontend stalls.", + "MetricExpr": "TOPDOWN_FE_BOUND.ALL / SLOTS", + "MetricGroup": "TopdownL1", + "MetricName": "tma_frontend_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to frontend bandwidth restrictions due to decode, predecode, cisc, and other limitations.", + "MetricExpr": "TOPDOWN_FE_BOUND.FRONTEND_LATENCY / SLOTS", + "MetricGroup": "TopdownL2;tma_frontend_bound_group", + "MetricName": "tma_frontend_latency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to instruction cache misses.", + "MetricExpr": "TOPDOWN_FE_BOUND.ICACHE / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_latency_group", + "MetricName": "tma_icache", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to Instruction Table Lookaside Buffer (ITLB) misses.", + "MetricExpr": "TOPDOWN_FE_BOUND.ITLB / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_latency_group", + "MetricName": "tma_itlb", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to BACLEARS, which occurs when the Branch Target Buffer (BTB) prediction or lack thereof, was corrected by a later branch predictor in the frontend", + "MetricExpr": "TOPDOWN_FE_BOUND.BRANCH_DETECT / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_latency_group", + "MetricName": "tma_branch_detect", + "PublicDescription": "Counts the number of issue slots that were not delivered by the frontend due to BACLEARS, which occurs when the Branch Target Buffer (BTB) prediction or lack thereof, was corrected by a later branch predictor in the frontend. Includes BACLEARS due to all branch types including conditional and unconditional jumps, returns, and indirect branches.", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to BTCLEARS, which occurs when the Branch Target Buffer (BTB) predicts a taken branch.", + "MetricExpr": "TOPDOWN_FE_BOUND.BRANCH_RESTEER / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_latency_group", + "MetricName": "tma_branch_resteer", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to frontend bandwidth restrictions due to decode, predecode, cisc, and other limitations.", + "MetricExpr": "TOPDOWN_FE_BOUND.FRONTEND_BANDWIDTH / SLOTS", + "MetricGroup": "TopdownL2;tma_frontend_bound_group", + "MetricName": "tma_frontend_bandwidth", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to the microcode sequencer (MS).", + "MetricExpr": "TOPDOWN_FE_BOUND.CISC / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_bandwidth_group", + "MetricName": "tma_cisc", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to decode stalls.", + "MetricExpr": "TOPDOWN_FE_BOUND.DECODE / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_bandwidth_group", + "MetricName": "tma_decode", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to wrong predecodes.", + "MetricExpr": "TOPDOWN_FE_BOUND.PREDECODE / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_bandwidth_group", + "MetricName": "tma_predecode", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not delivered by the frontend due to other common frontend stalls not categorized.", + "MetricExpr": "TOPDOWN_FE_BOUND.OTHER / SLOTS", + "MetricGroup": "TopdownL3;tma_frontend_bandwidth_group", + "MetricName": "tma_other_fb", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the total number of issue slots that were not consumed by the backend because allocation is stalled due to a mispredicted jump or a machine clear", + "MetricExpr": "(SLOTS - (TOPDOWN_FE_BOUND.ALL + TOPDOWN_BE_BOUND.ALL + TOPDOWN_RETIRING.ALL)) / SLOTS", + "MetricGroup": "TopdownL1", + "MetricName": "tma_bad_speculation", + "PublicDescription": "Counts the total number of issue slots that were not consumed by the backend because allocation is stalled due to a mispredicted jump or a machine clear. Only issue slots wasted due to fast nukes such as memory ordering nukes are counted. Other nukes are not accounted for. Counts all issue slots blocked during this recovery window including relevant microcode flows and while uops are not yet available in the instruction queue (IQ). Also includes the issue slots that were consumed by the backend but were thrown away because they were younger than the mispredict or machine clear.", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to branch mispredicts.", + "MetricExpr": "TOPDOWN_BAD_SPECULATION.MISPREDICT / SLOTS", + "MetricGroup": "TopdownL2;tma_bad_speculation_group", + "MetricName": "tma_branch_mispredicts", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the total number of issue slots that were not consumed by the backend because allocation is stalled due to a machine clear (nuke) of any kind including memory ordering and memory disambiguation.", + "MetricExpr": "TOPDOWN_BAD_SPECULATION.MACHINE_CLEARS / SLOTS", + "MetricGroup": "TopdownL2;tma_bad_speculation_group", + "MetricName": "tma_machine_clears", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to a machine clear (slow nuke).", + "MetricExpr": "TOPDOWN_BAD_SPECULATION.NUKE / SLOTS", + "MetricGroup": "TopdownL3;tma_machine_clears_group", + "MetricName": "tma_nuke", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of machine clears relative to the number of nuke slots due to SMC. ", + "MetricExpr": "tma_nuke * (MACHINE_CLEARS.SMC / MACHINE_CLEARS.SLOW)", + "MetricGroup": "TopdownL4;tma_nuke_group", + "MetricName": "tma_smc", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of machine clears relative to the number of nuke slots due to memory ordering. ", + "MetricExpr": "tma_nuke * (MACHINE_CLEARS.MEMORY_ORDERING / MACHINE_CLEARS.SLOW)", + "MetricGroup": "TopdownL4;tma_nuke_group", + "MetricName": "tma_memory_ordering", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of machine clears relative to the number of nuke slots due to FP assists. ", + "MetricExpr": "tma_nuke * (MACHINE_CLEARS.FP_ASSIST / MACHINE_CLEARS.SLOW)", + "MetricGroup": "TopdownL4;tma_nuke_group", + "MetricName": "tma_fp_assist", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of machine clears relative to the number of nuke slots due to memory disambiguation. ", + "MetricExpr": "tma_nuke * (MACHINE_CLEARS.DISAMBIGUATION / MACHINE_CLEARS.SLOW)", + "MetricGroup": "TopdownL4;tma_nuke_group", + "MetricName": "tma_disambiguation", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of machine clears relative to the number of nuke slots due to page faults. ", + "MetricExpr": "tma_nuke * (MACHINE_CLEARS.PAGE_FAULT / MACHINE_CLEARS.SLOW)", + "MetricGroup": "TopdownL4;tma_nuke_group", + "MetricName": "tma_page_fault", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to a machine clear classified as a fast nuke due to memory ordering, memory disambiguation and memory renaming.", + "MetricExpr": "TOPDOWN_BAD_SPECULATION.FASTNUKE / SLOTS", + "MetricGroup": "TopdownL3;tma_machine_clears_group", + "MetricName": "tma_fast_nuke", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the total number of issue slots that were not consumed by the backend due to backend stalls", + "MetricExpr": "TOPDOWN_BE_BOUND.ALL / SLOTS", + "MetricGroup": "TopdownL1", + "MetricName": "tma_backend_bound", + "PublicDescription": "Counts the total number of issue slots that were not consumed by the backend due to backend stalls. Note that uops must be available for consumption in order for this event to count. If a uop is not available (IQ is empty), this event will not count. The rest of these subevents count backend stalls, in cycles, due to an outstanding request which is memory bound vs core bound. The subevents are not slot based events and therefore can not be precisely added or subtracted from the Backend_Bound_Aux subevents which are slot based.", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles due to backend bound stalls that are core execution bound and not attributed to outstanding demand load or store stalls. ", + "MetricExpr": "max(0, tma_backend_bound - tma_load_store_bound)", + "MetricGroup": "TopdownL2;tma_backend_bound_group", + "MetricName": "tma_core_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to stores or loads. ", + "MetricExpr": "min((TOPDOWN_BE_BOUND.ALL / SLOTS), (LD_HEAD.ANY_AT_RET / CLKS) + tma_store_bound)", + "MetricGroup": "TopdownL2;tma_backend_bound_group", + "MetricName": "tma_load_store_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to store buffer full.", + "MetricExpr": "tma_mem_scheduler * (MEM_SCHEDULER_BLOCK.ST_BUF / MEM_SCHEDULER_BLOCK.ALL)", + "MetricGroup": "TopdownL3;tma_load_store_bound_group", + "MetricName": "tma_store_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles that the oldest load of the load buffer is stalled at retirement due to a load block.", + "MetricExpr": "LD_HEAD.L1_BOUND_AT_RET / CLKS", + "MetricGroup": "TopdownL3;tma_load_store_bound_group", + "MetricName": "tma_l1_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles that the oldest load of the load buffer is stalled at retirement due to a store forward block.", + "MetricExpr": "LD_HEAD.ST_ADDR_AT_RET / CLKS", + "MetricGroup": "TopdownL4;tma_l1_bound_group", + "MetricName": "tma_store_fwd", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles that the oldest load of the load buffer is stalled at retirement due to a first level TLB miss.", + "MetricExpr": "LD_HEAD.DTLB_MISS_AT_RET / CLKS", + "MetricGroup": "TopdownL4;tma_l1_bound_group", + "MetricName": "tma_stlb_hit", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles that the oldest load of the load buffer is stalled at retirement due to a second level TLB miss requiring a page walk.", + "MetricExpr": "LD_HEAD.PGWALK_AT_RET / CLKS", + "MetricGroup": "TopdownL4;tma_l1_bound_group", + "MetricName": "tma_stlb_miss", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles that the oldest load of the load buffer is stalled at retirement due to a number of other load blocks.", + "MetricExpr": "LD_HEAD.OTHER_AT_RET / CLKS", + "MetricGroup": "TopdownL4;tma_l1_bound_group", + "MetricName": "tma_other_l1", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles a core is stalled due to a demand load which hit in the L2 Cache.", + "MetricExpr": "(MEM_BOUND_STALLS.LOAD_L2_HIT / CLKS) - (MEM_BOUND_STALLS_AT_RET_CORRECTION * MEM_BOUND_STALLS.LOAD_L2_HIT / MEM_BOUND_STALLS.LOAD)", + "MetricGroup": "TopdownL3;tma_load_store_bound_group", + "MetricName": "tma_l2_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles a core is stalled due to a demand load which hit in the Last Level Cache (LLC) or other core with HITE/F/M.", + "MetricExpr": "(MEM_BOUND_STALLS.LOAD_LLC_HIT / CLKS) - (MEM_BOUND_STALLS_AT_RET_CORRECTION * MEM_BOUND_STALLS.LOAD_LLC_HIT / MEM_BOUND_STALLS.LOAD)", + "MetricGroup": "TopdownL3;tma_load_store_bound_group", + "MetricName": "tma_l3_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to a demand load miss which hit in DRAM or MMIO (Non-DRAM).", + "MetricExpr": "(MEM_BOUND_STALLS.LOAD_DRAM_HIT / CLKS) - (MEM_BOUND_STALLS_AT_RET_CORRECTION * MEM_BOUND_STALLS.LOAD_DRAM_HIT / MEM_BOUND_STALLS.LOAD)", + "MetricGroup": "TopdownL3;tma_load_store_bound_group", + "MetricName": "tma_dram_bound", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to a demand load miss which hits in the L2, LLC, DRAM or MMIO (Non-DRAM) but could not be correctly attributed or cycles in which the load miss is waiting on a request buffer.", + "MetricExpr": "max(0, tma_load_store_bound - (tma_store_bound + tma_l1_bound + tma_l2_bound + tma_l3_bound + tma_dram_bound))", + "MetricGroup": "TopdownL3;tma_load_store_bound_group", + "MetricName": "tma_other_load_store", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the total number of issue slots that were not consumed by the backend due to backend stalls", + "MetricExpr": "tma_backend_bound", + "MetricGroup": "TopdownL1", + "MetricName": "tma_backend_bound_aux", + "PublicDescription": "Counts the total number of issue slots that were not consumed by the backend due to backend stalls. Note that UOPS must be available for consumption in order for this event to count. If a uop is not available (IQ is empty), this event will not count. All of these subevents count backend stalls, in slots, due to a resource limitation. These are not cycle based events and therefore can not be precisely added or subtracted from the Backend_Bound subevents which are cycle based. These subevents are supplementary to Backend_Bound and can be used to analyze results from a resource perspective at allocation. ", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the total number of issue slots that were not consumed by the backend due to backend stalls", + "MetricExpr": "tma_backend_bound", + "MetricGroup": "TopdownL2;tma_backend_bound_aux_group", + "MetricName": "tma_resource_bound", + "PublicDescription": "Counts the total number of issue slots that were not consumed by the backend due to backend stalls. Note that uops must be available for consumption in order for this event to count. If a uop is not available (IQ is empty), this event will not count. ", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to memory reservation stalls in which a scheduler is not able to accept uops.", + "MetricExpr": "TOPDOWN_BE_BOUND.MEM_SCHEDULER / SLOTS", + "MetricGroup": "TopdownL3;tma_resource_bound_group", + "MetricName": "tma_mem_scheduler", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles, relative to the number of mem_scheduler slots, in which uops are blocked due to store buffer full", + "MetricExpr": "tma_mem_scheduler * (MEM_SCHEDULER_BLOCK.ST_BUF / MEM_SCHEDULER_BLOCK.ALL)", + "MetricGroup": "TopdownL4;tma_mem_scheduler_group", + "MetricName": "tma_st_buffer", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles, relative to the number of mem_scheduler slots, in which uops are blocked due to load buffer full", + "MetricExpr": "tma_mem_scheduler * MEM_SCHEDULER_BLOCK.LD_BUF / MEM_SCHEDULER_BLOCK.ALL", + "MetricGroup": "TopdownL4;tma_mem_scheduler_group", + "MetricName": "tma_ld_buffer", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of cycles, relative to the number of mem_scheduler slots, in which uops are blocked due to RSV full relative ", + "MetricExpr": "tma_mem_scheduler * MEM_SCHEDULER_BLOCK.RSV / MEM_SCHEDULER_BLOCK.ALL", + "MetricGroup": "TopdownL4;tma_mem_scheduler_group", + "MetricName": "tma_rsv", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to IEC or FPC RAT stalls, which can be due to FIQ or IEC reservation stalls in which the integer, floating point or SIMD scheduler is not able to accept uops.", + "MetricExpr": "TOPDOWN_BE_BOUND.NON_MEM_SCHEDULER / SLOTS", + "MetricGroup": "TopdownL3;tma_resource_bound_group", + "MetricName": "tma_non_mem_scheduler", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to the physical register file unable to accept an entry (marble stalls).", + "MetricExpr": "TOPDOWN_BE_BOUND.REGISTER / SLOTS", + "MetricGroup": "TopdownL3;tma_resource_bound_group", + "MetricName": "tma_register", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to the reorder buffer being full (ROB stalls).", + "MetricExpr": "TOPDOWN_BE_BOUND.REORDER_BUFFER / SLOTS", + "MetricGroup": "TopdownL3;tma_resource_bound_group", + "MetricName": "tma_reorder_buffer", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to certain allocation restrictions.", + "MetricExpr": "TOPDOWN_BE_BOUND.ALLOC_RESTRICTIONS / SLOTS", + "MetricGroup": "TopdownL3;tma_resource_bound_group", + "MetricName": "tma_alloc_restriction", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of issue slots that were not consumed by the backend due to scoreboards from the instruction queue (IQ), jump execution unit (JEU), or microcode sequencer (MS).", + "MetricExpr": "TOPDOWN_BE_BOUND.SERIALIZATION / SLOTS", + "MetricGroup": "TopdownL3;tma_resource_bound_group", + "MetricName": "tma_serialization", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the numer of issue slots that result in retirement slots. ", + "MetricExpr": "TOPDOWN_RETIRING.ALL / SLOTS", + "MetricGroup": "TopdownL1", + "MetricName": "tma_retiring", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of uops that are not from the microsequencer. ", + "MetricExpr": "(TOPDOWN_RETIRING.ALL - UOPS_RETIRED.MS) / SLOTS", + "MetricGroup": "TopdownL2;tma_retiring_group", + "MetricName": "tma_base", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of floating point operations per uop with all default weighting.", + "MetricExpr": "UOPS_RETIRED.FPDIV / SLOTS", + "MetricGroup": "TopdownL3;tma_base_group", + "MetricName": "tma_fp_uops", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of uops retired excluding ms and fp div uops.", + "MetricExpr": "(TOPDOWN_RETIRING.ALL - UOPS_RETIRED.MS - UOPS_RETIRED.FPDIV) / SLOTS", + "MetricGroup": "TopdownL3;tma_base_group", + "MetricName": "tma_other_ret", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "Counts the number of uops that are from the complex flows issued by the micro-sequencer (MS)", + "MetricExpr": "UOPS_RETIRED.MS / SLOTS", + "MetricGroup": "TopdownL2;tma_retiring_group", + "MetricName": "tma_ms_uops", + "PublicDescription": "Counts the number of uops that are from the complex flows issued by the micro-sequencer (MS). This includes uops from flows due to complex instructions, faults, assists, and inserted flows.", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "", + "MetricExpr": "CPU_CLK_UNHALTED.CORE", + "MetricName": "CLKS" + }, + { + "BriefDescription": "", + "MetricExpr": "CPU_CLK_UNHALTED.CORE_P", + "MetricName": "CLKS_P" + }, + { + "BriefDescription": "", + "MetricExpr": "5 * CLKS", + "MetricName": "SLOTS" + }, + { + "BriefDescription": "Instructions Per Cycle", + "MetricExpr": "INST_RETIRED.ANY / CLKS", + "MetricName": "IPC" + }, + { + "BriefDescription": "Cycles Per Instruction", + "MetricExpr": "CLKS / INST_RETIRED.ANY", + "MetricName": "CPI" + }, + { + "BriefDescription": "Uops Per Instruction", + "MetricExpr": "UOPS_RETIRED.ALL / INST_RETIRED.ANY", + "MetricName": "UPI" + }, + { + "BriefDescription": "Percentage of total non-speculative loads with a store forward or unknown store address block", + "MetricExpr": "100 * LD_BLOCKS.DATA_UNKNOWN / MEM_UOPS_RETIRED.ALL_LOADS", + "MetricName": "Store_Fwd_Blocks" + }, + { + "BriefDescription": "Percentage of total non-speculative loads with a address aliasing block", + "MetricExpr": "100 * LD_BLOCKS.4K_ALIAS / MEM_UOPS_RETIRED.ALL_LOADS", + "MetricName": "Address_Alias_Blocks" + }, + { + "BriefDescription": "Percentage of total non-speculative loads that are splits", + "MetricExpr": "100 * MEM_UOPS_RETIRED.SPLIT_LOADS / MEM_UOPS_RETIRED.ALL_LOADS", + "MetricName": "Load_Splits" + }, + { + "BriefDescription": "Instructions per Branch (lower number means higher occurance rate)", + "MetricExpr": "INST_RETIRED.ANY / BR_INST_RETIRED.ALL_BRANCHES", + "MetricName": "IpBranch" + }, + { + "BriefDescription": "Instruction per (near) call (lower number means higher occurance rate)", + "MetricExpr": "INST_RETIRED.ANY / BR_INST_RETIRED.CALL", + "MetricName": "IpCall" + }, + { + "BriefDescription": "Instructions per Load", + "MetricExpr": "INST_RETIRED.ANY / MEM_UOPS_RETIRED.ALL_LOADS", + "MetricName": "IpLoad" + }, + { + "BriefDescription": "Instructions per Store", + "MetricExpr": "INST_RETIRED.ANY / MEM_UOPS_RETIRED.ALL_STORES", + "MetricName": "IpStore" + }, + { + "BriefDescription": "Number of Instructions per non-speculative Branch Misprediction", + "MetricExpr": "INST_RETIRED.ANY / BR_MISP_RETIRED.ALL_BRANCHES", + "MetricName": "IpMispredict" + }, + { + "BriefDescription": "Instructions per Far Branch", + "MetricExpr": "INST_RETIRED.ANY / (BR_INST_RETIRED.FAR_BRANCH / 2)", + "MetricName": "IpFarBranch" + }, + { + "BriefDescription": "Ratio of all branches which mispredict", + "MetricExpr": "BR_MISP_RETIRED.ALL_BRANCHES / BR_INST_RETIRED.ALL_BRANCHES", + "MetricName": "Branch_Mispredict_Ratio" + }, + { + "BriefDescription": "Ratio between Mispredicted branches and unknown branches", + "MetricExpr": "BR_MISP_RETIRED.ALL_BRANCHES / BACLEARS.ANY", + "MetricName": "Branch_Mispredict_to_Unknown_Branch_Ratio" + }, + { + "BriefDescription": "Percentage of all uops which are ucode ops", + "MetricExpr": "100 * UOPS_RETIRED.MS / UOPS_RETIRED.ALL", + "MetricName": "Microcode_Uop_Ratio" + }, + { + "BriefDescription": "Percentage of all uops which are FPDiv uops", + "MetricExpr": "100 * UOPS_RETIRED.FPDIV / UOPS_RETIRED.ALL", + "MetricName": "FPDiv_Uop_Ratio" + }, + { + "BriefDescription": "Percentage of all uops which are IDiv uops", + "MetricExpr": "100 * UOPS_RETIRED.IDIV / UOPS_RETIRED.ALL", + "MetricName": "IDiv_Uop_Ratio" + }, + { + "BriefDescription": "Percentage of all uops which are x87 uops", + "MetricExpr": "100 * UOPS_RETIRED.X87 / UOPS_RETIRED.ALL", + "MetricName": "X87_Uop_Ratio" + }, + { + "BriefDescription": "Average Frequency Utilization relative nominal frequency", + "MetricExpr": "CLKS / CPU_CLK_UNHALTED.REF_TSC", + "MetricName": "Turbo_Utilization" + }, + { + "BriefDescription": "Fraction of cycles spent in Kernel mode", + "MetricExpr": "cpu@CPU_CLK_UNHALTED.CORE@k / CPU_CLK_UNHALTED.CORE", + "MetricName": "Kernel_Utilization" + }, + { + "BriefDescription": "Average CPU Utilization", + "MetricExpr": "CPU_CLK_UNHALTED.REF_TSC / TSC", + "MetricName": "CPU_Utilization" + }, + { + "BriefDescription": "Cycle cost per L2 hit", + "MetricExpr": "MEM_BOUND_STALLS.LOAD_L2_HIT / MEM_LOAD_UOPS_RETIRED.L2_HIT", + "MetricName": "Cycles_per_Demand_Load_L2_Hit" + }, + { + "BriefDescription": "Cycle cost per LLC hit", + "MetricExpr": "MEM_BOUND_STALLS.LOAD_LLC_HIT / MEM_LOAD_UOPS_RETIRED.L3_HIT", + "MetricName": "Cycles_per_Demand_Load_L3_Hit" + }, + { + "BriefDescription": "Cycle cost per DRAM hit", + "MetricExpr": "MEM_BOUND_STALLS.LOAD_DRAM_HIT / MEM_LOAD_UOPS_RETIRED.DRAM_HIT", + "MetricName": "Cycles_per_Demand_Load_DRAM_Hit" + }, + { + "BriefDescription": "Percent of instruction miss cost that hit in the L2", + "MetricExpr": "100 * MEM_BOUND_STALLS.IFETCH_L2_HIT / (MEM_BOUND_STALLS.IFETCH)", + "MetricName": "Inst_Miss_Cost_L2Hit_Percent" + }, + { + "BriefDescription": "Percent of instruction miss cost that hit in the L3", + "MetricExpr": "100 * MEM_BOUND_STALLS.IFETCH_LLC_HIT / (MEM_BOUND_STALLS.IFETCH)", + "MetricName": "Inst_Miss_Cost_L3Hit_Percent" + }, + { + "BriefDescription": "Percent of instruction miss cost that hit in DRAM", + "MetricExpr": "100 * MEM_BOUND_STALLS.IFETCH_DRAM_HIT / (MEM_BOUND_STALLS.IFETCH)", + "MetricName": "Inst_Miss_Cost_DRAMHit_Percent" + }, + { + "BriefDescription": "load ops retired per 1000 instruction", + "MetricExpr": "1000 * MEM_UOPS_RETIRED.ALL_LOADS / INST_RETIRED.ANY", + "MetricName": "MemLoadPKI" + }, + { + "BriefDescription": "C1 residency percent per core", + "MetricExpr": "cstate_core@c1\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C1_Core_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C6 residency percent per core", + "MetricExpr": "cstate_core@c6\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C6_Core_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C7 residency percent per core", + "MetricExpr": "cstate_core@c7\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C7_Core_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C2 residency percent per package", + "MetricExpr": "cstate_pkg@c2\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C2_Pkg_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C3 residency percent per package", + "MetricExpr": "cstate_pkg@c3\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C3_Pkg_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C6 residency percent per package", + "MetricExpr": "cstate_pkg@c6\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C6_Pkg_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C7 residency percent per package", + "MetricExpr": "cstate_pkg@c7\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C7_Pkg_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C8 residency percent per package", + "MetricExpr": "cstate_pkg@c8\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C8_Pkg_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C9 residency percent per package", + "MetricExpr": "cstate_pkg@c9\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C9_Pkg_Residency", + "ScaleUnit": "100%" + }, + { + "BriefDescription": "C10 residency percent per package", + "MetricExpr": "cstate_pkg@c10\\-residency@ / TSC", + "MetricGroup": "Power", + "MetricName": "C10_Pkg_Residency", + "ScaleUnit": "100%" + } +] diff --git a/lib/libpmc/pmu-events/arch/x86/alderlaken/cache.json b/lib/libpmc/pmu-events/arch/x86/alderlaken/cache.json new file mode 100644 index 000000000000..043445ae14a8 --- /dev/null +++ b/lib/libpmc/pmu-events/arch/x86/alderlaken/cache.json @@ -0,0 +1,330 @@ +[ + { + "BriefDescription": "Counts the number of cacheable memory requests that miss in the LLC. Counts on a per core basis.", + "EventCode": "0x2e", + "EventName": "LONGEST_LAT_CACHE.MISS", + "PublicDescription": "Counts the number of cacheable memory requests that miss in the Last Level Cache (LLC). Requests include demand loads, reads for ownership (RFO), instruction fetches and L1 HW prefetches. If the platform has an L3 cache, the LLC is the L3 cache, otherwise it is the L2 cache. Counts on a per core basis.", + "SampleAfterValue": "200003", + "UMask": "0x41" + }, + { + "BriefDescription": "Counts the number of cacheable memory requests that access the LLC. Counts on a per core basis.", + "EventCode": "0x2e", + "EventName": "LONGEST_LAT_CACHE.REFERENCE", + "PublicDescription": "Counts the number of cacheable memory requests that access the Last Level Cache (LLC). Requests include demand loads, reads for ownership (RFO), instruction fetches and L1 HW prefetches. If the platform has an L3 cache, the LLC is the L3 cache, otherwise it is the L2 cache. Counts on a per core basis.", + "SampleAfterValue": "200003", + "UMask": "0x4f" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to an instruction cache or TLB miss which hit in the L2, LLC, DRAM or MMIO (Non-DRAM).", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.IFETCH", + "PublicDescription": "Counts the number of cycles the core is stalled due to an instruction cache or translation lookaside buffer (TLB) miss which hit in the L2, LLC, DRAM or MMIO (Non-DRAM).", + "SampleAfterValue": "200003", + "UMask": "0x38" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to an instruction cache or TLB miss which hit in DRAM or MMIO (Non-DRAM).", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.IFETCH_DRAM_HIT", + "PublicDescription": "Counts the number of cycles the core is stalled due to an instruction cache or translation lookaside buffer (TLB) miss which hit in DRAM or MMIO (non-DRAM).", + "SampleAfterValue": "200003", + "UMask": "0x20" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to an instruction cache or TLB miss which hit in the L2 cache.", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.IFETCH_L2_HIT", + "PublicDescription": "Counts the number of cycles the core is stalled due to an instruction cache or Translation Lookaside Buffer (TLB) miss which hit in the L2 cache.", + "SampleAfterValue": "200003", + "UMask": "0x8" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to an instruction cache or TLB miss which hit in the LLC or other core with HITE/F/M.", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.IFETCH_LLC_HIT", + "PublicDescription": "Counts the number of cycles the core is stalled due to an instruction cache or Translation Lookaside Buffer (TLB) miss which hit in the Last Level Cache (LLC) or other core with HITE/F/M.", + "SampleAfterValue": "200003", + "UMask": "0x10" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to a demand load miss which hit in the L2, LLC, DRAM or MMIO (Non-DRAM).", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.LOAD", + "SampleAfterValue": "200003", + "UMask": "0x7" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to a demand load miss which hit in DRAM or MMIO (Non-DRAM).", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.LOAD_DRAM_HIT", + "SampleAfterValue": "200003", + "UMask": "0x4" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to a demand load which hit in the L2 cache.", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.LOAD_L2_HIT", + "SampleAfterValue": "200003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts the number of cycles the core is stalled due to a demand load which hit in the LLC or other core with HITE/F/M.", + "EventCode": "0x34", + "EventName": "MEM_BOUND_STALLS.LOAD_LLC_HIT", + "PublicDescription": "Counts the number of cycles the core is stalled due to a demand load which hit in the Last Level Cache (LLC) or other core with HITE/F/M.", + "SampleAfterValue": "200003", + "UMask": "0x2" + }, + { + "BriefDescription": "Counts the number of load uops retired that hit in DRAM.", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_UOPS_RETIRED.DRAM_HIT", + "PEBS": "1", + "SampleAfterValue": "200003", + "UMask": "0x80" + }, + { + "BriefDescription": "Counts the number of load uops retired that hit in the L2 cache.", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_UOPS_RETIRED.L2_HIT", + "PEBS": "1", + "SampleAfterValue": "200003", + "UMask": "0x2" + }, + { + "BriefDescription": "Counts the number of load uops retired that hit in the L3 cache.", + "Data_LA": "1", + "EventCode": "0xd1", + "EventName": "MEM_LOAD_UOPS_RETIRED.L3_HIT", + "PEBS": "1", + "SampleAfterValue": "200003", + "UMask": "0x4" + }, + { + "BriefDescription": "Counts the number of cycles that uops are blocked for any of the following reasons: load buffer, store buffer or RSV full.", + "EventCode": "0x04", + "EventName": "MEM_SCHEDULER_BLOCK.ALL", + "SampleAfterValue": "20003", + "UMask": "0x7" + }, + { + "BriefDescription": "Counts the number of cycles that uops are blocked due to a load buffer full condition.", + "EventCode": "0x04", + "EventName": "MEM_SCHEDULER_BLOCK.LD_BUF", + "SampleAfterValue": "20003", + "UMask": "0x2" + }, + { + "BriefDescription": "Counts the number of cycles that uops are blocked due to an RSV full condition.", + "EventCode": "0x04", + "EventName": "MEM_SCHEDULER_BLOCK.RSV", + "SampleAfterValue": "20003", + "UMask": "0x4" + }, + { + "BriefDescription": "Counts the number of cycles that uops are blocked due to a store buffer full condition.", + "EventCode": "0x04", + "EventName": "MEM_SCHEDULER_BLOCK.ST_BUF", + "SampleAfterValue": "20003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts the number of load uops retired.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.ALL_LOADS", + "PEBS": "1", + "PublicDescription": "Counts the total number of load uops retired.", + "SampleAfterValue": "200003", + "UMask": "0x81" + }, + { + "BriefDescription": "Counts the number of store uops retired.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.ALL_STORES", + "PEBS": "1", + "PublicDescription": "Counts the total number of store uops retired.", + "SampleAfterValue": "200003", + "UMask": "0x82" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 128 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_128", + "MSRIndex": "0x3F6", + "MSRValue": "0x80", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 128 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 16 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_16", + "MSRIndex": "0x3F6", + "MSRValue": "0x10", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 16 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 256 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_256", + "MSRIndex": "0x3F6", + "MSRValue": "0x100", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 256 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 32 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_32", + "MSRIndex": "0x3F6", + "MSRValue": "0x20", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 32 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 4 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_4", + "MSRIndex": "0x3F6", + "MSRValue": "0x4", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 4 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 512 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_512", + "MSRIndex": "0x3F6", + "MSRValue": "0x200", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 512 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 64 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_64", + "MSRIndex": "0x3F6", + "MSRValue": "0x40", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 64 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 8 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.LOAD_LATENCY_GT_8", + "MSRIndex": "0x3F6", + "MSRValue": "0x8", + "PEBS": "2", + "PublicDescription": "Counts the number of tagged loads with an instruction latency that exceeds or equals the threshold of 8 cycles as defined in MEC_CR_PEBS_LD_LAT_THRESHOLD (3F6H). Only counts with PEBS enabled. If a PEBS record is generated, will populate the PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x5" + }, + { + "BriefDescription": "Counts the number of retired split load uops.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.SPLIT_LOADS", + "PEBS": "1", + "SampleAfterValue": "200003", + "UMask": "0x41" + }, + { + "BriefDescription": "Counts the number of stores uops retired. Counts with or without PEBS enabled.", + "Data_LA": "1", + "EventCode": "0xd0", + "EventName": "MEM_UOPS_RETIRED.STORE_LATENCY", + "PEBS": "2", + "PublicDescription": "Counts the number of stores uops retired. Counts with or without PEBS enabled. If PEBS is enabled and a PEBS record is generated, will populate PEBS Latency and PEBS Data Source fields accordingly.", + "SampleAfterValue": "1000003", + "UMask": "0x6" + }, + { + "BriefDescription": "Counts demand data reads that were supplied by the L3 cache.", + "EventCode": "0xB7", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x3F803C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that were supplied by the L3 cache where a snoop was sent, the snoop hit, and modified data was forwarded.", + "EventCode": "0xB7", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x10003C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that were supplied by the L3 cache where a snoop was sent, the snoop hit, but no data was forwarded.", + "EventCode": "0xB7", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HIT_NO_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x4003C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand data reads that were supplied by the L3 cache where a snoop was sent, the snoop hit, and non-modified data was forwarded.", + "EventCode": "0xB7", + "EventName": "OCR.DEMAND_DATA_RD.L3_HIT.SNOOP_HIT_WITH_FWD", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x8003C0001", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand reads for ownership (RFO) and software prefetches for exclusive ownership (PREFETCHW) that were supplied by the L3 cache.", + "EventCode": "0xB7", + "EventName": "OCR.DEMAND_RFO.L3_HIT", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x3F803C0002", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts demand reads for ownership (RFO) and software prefetches for exclusive ownership (PREFETCHW) that were supplied by the L3 cache where a snoop was sent, the snoop hit, and modified data was forwarded.", + "EventCode": "0xB7", + "EventName": "OCR.DEMAND_RFO.L3_HIT.SNOOP_HITM", + "MSRIndex": "0x1a6,0x1a7", + "MSRValue": "0x10003C0002", + "SampleAfterValue": "100003", + "UMask": "0x1" + }, + { + "BriefDescription": "Counts the number of issue slots every cycle that were not delivered by the frontend due to instruction cache misses.", + "EventCode": "0x71", + "EventName": "TOPDOWN_FE_BOUND.ICACHE", + "SampleAfterValue": "1000003", + "UMask": "0x20" + } +] diff --git a/lib/libpmc/pmu-events/arch/x86/alderlaken/floating-point.json b/lib/libpmc/pmu-events/arch/x86/alderlaken/floating-point.json new file mode 100644 index 000000000000..30e8ca3c1485 --- /dev/null +++ b/lib/libpmc/pmu-events/arch/x86/alderlaken/floating-point.json @@ -0,0 +1,18 @@ +[ + { + "BriefDescription": "Counts the number of floating point operations retired that required microcode assist.", + "EventCode": "0xc3", + "EventName": "MACHINE_CLEARS.FP_ASSIST", + "PublicDescription": "Counts the number of floating point operations retired that required microcode assist, which is not a reflection of the number of FP operations, instructions or uops.", + "SampleAfterValue": "20003", + "UMask": "0x4" + }, + { + "BriefDescription": "Counts the number of floating point divide uops retired (x87 and SSE, including x87 sqrt).", + "EventCode": "0xc2", + "EventName": "UOPS_RETIRED.FPDIV", + "PEBS": "1", + "SampleAfterValue": "2000003", + "UMask": "0x8" + } +] *** 1014 LINES SKIPPED *** From nobody Thu Dec 11 20:43:35 2025 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 4dS4LJ1vyrz6KLDl for ; Thu, 11 Dec 2025 20:43:36 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dS4LH5JtHz3Zp5 for ; Thu, 11 Dec 2025 20:43:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765485815; 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=BKp23ytcUH2YM4K34jMDHhfqDfP3eVHp38GcmQcch9Y=; b=iQwKLn0sumT//3tsrTNTEy3g971uQSVW+Y2W+MOu+5Bt2XoatrOQ52S/oa+1rN8LlvZ+cI iPhbJekkvlfgWq/lsn/JN4TFlNh+qBnbJMS9nEl2Tc24rQq9SbVaiENuM9jsPO12kw3gjs iETYiLzxomfjgiRqZ3o23ce6e7YQm6XyZj9PP0iB8GL5xcrNn9yi1GfhyTcIG4CNfRO1TL HVkHQaIeONsq/pmL+hTgFWcGdDwZYtvBvGuWLh5fhdBJS9Fy5MxOlQtQNxUcqb9KypsI7G ovwS5F9o6TZfwz+NJ8Z2lAq6Q77x5tjd+ZkFb6GIgMLo2kJ7/Y1pF7vGWRDuww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765485815; 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=BKp23ytcUH2YM4K34jMDHhfqDfP3eVHp38GcmQcch9Y=; b=MuoNSxA5TcKxGFKTnhDw7S1mZSAkBziy82sT4L1DO+ELIyetJ6G1fQr0DWm54+kfM3Z/8z UbchYKNZvJAkFf3q50u5Uob4BPBsVf4hApntT7Mbq2Yra2M270/bYkFTf8QJvvctzf6jI6 2uiJ0cmpxITJdz5MuF59FwqkLWkV6TiqWnuP10lDKZbzBeG7oRtWNek7N8xH38XrXc9LrG 7Hmgfbvmo/A7tZB6EmJcwJ4XcNKZLQoGSztgGFYOPO7NzUDlhs8r/t5NcmKE5/mVZFWJaD OAgeZbsyx0Oq1oKOFwO8U/Rjn43zbe6tkNccevaNkL0KjCgkyKw7xv1IemPCoA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765485815; a=rsa-sha256; cv=none; b=rjfYbiQ0bib9RpF3sZXX/w0b15dM4j9cwJnKnKgGt8DZ6Jba8l5BKnHk/XMcTslk1gbfo5 tNUiLYaKussrL2p/cXu6BGLOTYFxkQ00VOM4DD8E0B7f7rfQ962AtF1emS8BlwMLg0ufgF 4EZ3FHe88Eihml+5ejJNr94tP3jSBOQjgxQjgYBGdb150WQtKRJ3179ynL6DJcTkYialGl 0kBkc6WihRBdLv1K0Gg5D5WjQDHzx8Ar5nM7ytO/OTKm2t351vJHx5UN2W6oQMt+OvMVQx hUOgcmYo2kweuycZdbD+kRV2ahdwOypd1Yvu4hLlNoa7U7DYKnTw18G/VmMc7A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dS4LH4pkbzmlj for ; Thu, 11 Dec 2025 20:43:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 318ed by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 20:43:35 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 714051f3f804 - stable/15 - e1000: Bump 82574/82583 PBA to 32K 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 714051f3f804f094a6d68ebd2044beadd8ba6b96 Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 20:43:35 +0000 Message-Id: <693b2cf7.318ed.2ab06dd2@gitrepo.freebsd.org> The branch stable/15 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=714051f3f804f094a6d68ebd2044beadd8ba6b96 commit 714051f3f804f094a6d68ebd2044beadd8ba6b96 Author: Kevin Bowling AuthorDate: 2025-11-21 05:02:00 +0000 Commit: Kevin Bowling CommitDate: 2025-12-11 20:43:12 +0000 e1000: Bump 82574/82583 PBA to 32K The reporter contacted me with packet loss and throughput fluctuations on a low power machine (Intel J1900) that got worse with the recent AIM algorithm in FreeBSD 14.2+. 32K RX PBA matches Linux default. Add a conditional path since we don't otherwise do a fixup for jumbo frames to retain space for two frames in Tx. With this change and an additional errata change, the throughput meets line rate for the reporter. Reported by: Codin Tested by: Codin (cherry picked from commit aa30bab9a92e1be230b9708bff9f33aae7d384e5) --- sys/dev/e1000/if_em.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index 465e019029d9..444b16912fee 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -3080,9 +3080,13 @@ em_reset(if_ctx_t ctx) case e1000_82573: pba = E1000_PBA_12K; /* 12K for Rx, 20K for Tx */ break; + /* 82574/82583: Total Packet Buffer is 40K */ case e1000_82574: case e1000_82583: - pba = E1000_PBA_20K; /* 20K for Rx, 20K for Tx */ + if (hw->mac.max_frame_size > 8192) + pba = E1000_PBA_22K; /* 22K for Rx, 18K for Tx */ + else + pba = E1000_PBA_32K; /* 32K for RX, 8K for Tx */ break; case e1000_ich8lan: pba = E1000_PBA_8K; From nobody Thu Dec 11 20:43:36 2025 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 4dS4LK4B8hz6KLS1 for ; Thu, 11 Dec 2025 20:43:37 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dS4LK0pTGz3ZgX for ; Thu, 11 Dec 2025 20:43:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765485817; 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=iqppPUw0x7PL9IiaTqvO+dlWqWDicYXABDtqNrBW+8g=; b=pfWvQG1NQiM+QEfOZ0Azm095Ur9eM83ZtjpsE6/eoLUTpEeTmsVyrptux8x9O9Uoqlsyck jEbVcqX8hUSUOWewU+a/jphZ0RvrxkAQ4Y6jOaIZoPXu2UUewr/mgI7dZim00uPOTy6P73 bkulcn8w1dQjcMHApTcD7GePWjEOlPAeQRsEgSQQElfBqphDU3o0Hf+ludeyAUEJdLfJlf zx2BArZ6LjH6ba0jRK6sxfQm6g8BWqlWfswj5G+WaHxabN+p8fgtJF2PEId3OImQktpc0z XmO/+Pa5KHqQeve2ZborBMc4OS0MTLibnB4U0YYsictvn5PzfBlBUlN2JJ1D+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765485817; 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=iqppPUw0x7PL9IiaTqvO+dlWqWDicYXABDtqNrBW+8g=; b=u1a8G7QOmj4XhDysn0yqDacsscli7pIbXIu3atYVD8ibumN3ayDv9bqGkf/+nlC8l3AgmA 0PMqZcRWaKEGwvT2oZvuVNpEM7Zv/GtrUMWrInWhQXLQbEb4MsJPZpn/wGZzJeHEgKAiI6 Z7OYp7qRQAmuThBmdAtoxYesx+nspzIiKc/8nSK8uxBTYlrs5tbr99/FlkpOshEggUblzA J2x8KUQm1kweXGU4REkgjtx2nKXUlehOuQVYsj44BhfEGe50UfTRUTU61jMq/rX0igqb6D uaPoKXOYbJV6jItg4y0CRDWBEhD6rLGvx+beOKfKxEmY12N/EkZD0sTMWYkj9w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765485817; a=rsa-sha256; cv=none; b=Vr2ikxYBXrZnyrgoa5A3Z0MaxisOxglwu7vdcGNL4EeJWvJy0dcXLXFw4nxaPyCBruYsiT ElOoQU7Bgpl7m7faJG7R+MoaHn9An7uS9LEu3IlIcKVmQsCpnC60DzNqItzSd3FIRTAR5i GDGTHbVXmOPUSplIvUnWv8Q0I46mRSO0J2jNazqJtermYnUfUiMwMBRiZAw0p7bJII6sxb GGOiN7iiBVLMzMkPPmzD6Rp00U2gdP1FWOH3hBxISKHvizZ3wv+PFMXGpmEstXyvNNR6Ko XHC2JZ0782125cJko6vExFnCfwGc9q2Zibr/bmdJC831Edb4OJgC98/pkBXU0Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dS4LJ5ZbMzmlk for ; Thu, 11 Dec 2025 20:43:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30eaf by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 20:43:36 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: ca69366da969 - stable/15 - e1000: Don't enable ASPM L1 without L0s 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: ca69366da969ad95630d2db9458849ddef226229 Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 20:43:36 +0000 Message-Id: <693b2cf8.30eaf.6b59ae41@gitrepo.freebsd.org> The branch stable/15 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=ca69366da969ad95630d2db9458849ddef226229 commit ca69366da969ad95630d2db9458849ddef226229 Author: Kevin Bowling AuthorDate: 2025-11-21 05:47:03 +0000 Commit: Kevin Bowling CommitDate: 2025-12-11 20:43:26 +0000 e1000: Don't enable ASPM L1 without L0s Reporter noted packet loss with 82583. NVM is down level. The errata docs mention disabling this, which should be the firmware default, so I am not sure why we were enabling this bit. Linux and OpenBSD have the same issue, while NetBSD got it right. Reported by: Codin Tested by: Codin (cherry picked from commit 2ead091715dee327b3e00bc9840e1a95827b8e82) --- sys/dev/e1000/e1000_82571.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/dev/e1000/e1000_82571.c b/sys/dev/e1000/e1000_82571.c index e8970adf996f..650169663f56 100644 --- a/sys/dev/e1000/e1000_82571.c +++ b/sys/dev/e1000/e1000_82571.c @@ -1118,7 +1118,8 @@ static s32 e1000_init_hw_82571(struct e1000_hw *hw) case e1000_82574: case e1000_82583: reg_data = E1000_READ_REG(hw, E1000_GCR); - reg_data |= E1000_GCR_L1_ACT_WITHOUT_L0S_RX; + /* 82574 Errata 25, 82583 Errata 12 */ + reg_data &= ~E1000_GCR_L1_ACT_WITHOUT_L0S_RX; E1000_WRITE_REG(hw, E1000_GCR, reg_data); break; default: From nobody Thu Dec 11 20:44:27 2025 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 4dS4MH61x1z6KLY7 for ; Thu, 11 Dec 2025 20:44: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dS4MH2R3Mz3cDh for ; Thu, 11 Dec 2025 20:44:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765485867; 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=m5t7NTeVf+rRvpStZedxbZO2nqD5aK/qUazCApmB30g=; b=b9HDOUstEUvRt3/kHoLjtnS4i7yPxgqxFDwCPYsVI4oCxzbjsFdgFiYdWLW4BIl+CpxtPq KH/X+6WZc+AFExNPqWNLSH+ZU08ciEQvLNPs+oL0KaxW2bDO4ClBSKnejddqah2Sjve5c/ ru2xAB56mKBEeKDvYzADhUnE1cuMMc+EuE3q7SwT5wS2YZfY04/ND5FEvvM7zIR5oEm9DE 9aJilZ7Wlh4IzDPk0sOVnKZWGu0rwg2bIUDuEx6zXVpjnVqEAvpmW00PRbLhTS0hkp4yZb mLex72xMpq/mC2R01fsjMkxZcVMMuCoyJw5yCqwictNYhDVxMhb1Wvt5bp6uEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765485867; 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=m5t7NTeVf+rRvpStZedxbZO2nqD5aK/qUazCApmB30g=; b=Q1Qnhucn8hWUUQY+tw+jk1NRbFUKwpa+8V/82hbrjdX8BMMY5G6wAsbXZyO9uoI5xo+vLd +Tkuj9YvEMKRQL/+J93auTwJuzchvtLcKFoA8R8cXcnlena545CopD5+wcDbDyfoL2mTML ot44cqUVosG7YXGeYM3ZzJQzZ8p0V/1h8xt86Ib8yFdi2PZFiYGh9X/jIswWN8AsgaTrvH z14Ti7bO8r8r3rY5zhwvK3B5GfiWmxZTD9WGi3cd2QtJ3cWMREl0QP4DCmNNQqt/8ET6W+ n+08SFb8HVAVl+AS2s1V1FUbGcJMsXkJ3+3ezSG7TpAJjODuv/upnnNdz5dL0Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765485867; a=rsa-sha256; cv=none; b=s+C8dGOty/w04f2Ayqzafics4pUHbRPaG71He+3QsgMArfsipHe15aMSEuq76b5Azfo2X+ I1pCyk9G1uerXeWyXOxTmUFUpy2IpT8y6ITu7Myzq6yqkSv5FMP9iIfdbRSVbcNek7ky+W R3dN1hBQAyNkY2scHfRZoWMILYYbC23W8JA0N2kkpAw/1d8FwjCnAJTLNF68Dr3WHEfKk5 fmi05HquQxlMfF6d/JdMib4r0jj2q8o+gfpR1PXYQAaF9iLg6pXlBS+KqX+7b3hJHuetbM Xp5Qj5gqULueZLlTfYPzboZtQq8P2n0hBFDgHqFL/fwxaEREjh6zVPc42UcEuw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dS4MH22B4znF7 for ; Thu, 11 Dec 2025 20:44:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 32245 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 20:44:27 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: 618083e96701 - stable/14 - e1000: Bump 82574/82583 PBA to 32K 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 618083e96701c4c1ca197fa5d9a677471785515b Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 20:44:27 +0000 Message-Id: <693b2d2b.32245.8a9a250@gitrepo.freebsd.org> The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=618083e96701c4c1ca197fa5d9a677471785515b commit 618083e96701c4c1ca197fa5d9a677471785515b Author: Kevin Bowling AuthorDate: 2025-11-21 05:02:00 +0000 Commit: Kevin Bowling CommitDate: 2025-12-11 20:44:00 +0000 e1000: Bump 82574/82583 PBA to 32K The reporter contacted me with packet loss and throughput fluctuations on a low power machine (Intel J1900) that got worse with the recent AIM algorithm in FreeBSD 14.2+. 32K RX PBA matches Linux default. Add a conditional path since we don't otherwise do a fixup for jumbo frames to retain space for two frames in Tx. With this change and an additional errata change, the throughput meets line rate for the reporter. Reported by: Codin Tested by: Codin (cherry picked from commit aa30bab9a92e1be230b9708bff9f33aae7d384e5) --- sys/dev/e1000/if_em.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index ce4269728903..0a25f4ec46b5 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -3105,9 +3105,13 @@ em_reset(if_ctx_t ctx) case e1000_82573: pba = E1000_PBA_12K; /* 12K for Rx, 20K for Tx */ break; + /* 82574/82583: Total Packet Buffer is 40K */ case e1000_82574: case e1000_82583: - pba = E1000_PBA_20K; /* 20K for Rx, 20K for Tx */ + if (hw->mac.max_frame_size > 8192) + pba = E1000_PBA_22K; /* 22K for Rx, 18K for Tx */ + else + pba = E1000_PBA_32K; /* 32K for RX, 8K for Tx */ break; case e1000_ich8lan: pba = E1000_PBA_8K; From nobody Thu Dec 11 20:44:28 2025 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 4dS4MJ6TLwz6KLNl for ; Thu, 11 Dec 2025 20:44:28 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dS4MJ3d9Fz3cBt for ; Thu, 11 Dec 2025 20:44:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765485868; 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=dUcUVb3Dp6Z0yKJG30o0K99iqhiivRUbP0ABbhgNlE0=; b=DjwGoX4nWnYMOP8UmfsHvNa4e0CDLZqI5T/QCFRR8gWi9s30M/Olc7HxM5fwb9yVj2O/IR tLpYL9FVci24TqZu4hYh8958AtgBMfiy+tCdL/Z3w0IduVWiQ4sZlOUCWmBD2Ce84MMlpQ 7rdU1Mh9HgKpRrs2YypXx+fpTP092RX/qQ/HhReD4oqSvAVS1DSr+6OecAIL5F7HbwqfRQ lHLIWrn8NXOVPBXP8aUsE6Iol3ZahJjErXx9qON2kD3u8rhVJHNZCc2+NvPGh2hkVChsGU 35+0fu+KBwp3y+pKtY++ba8e4Jx/jaSp5r8H9z5gIsipnYPUkQJ0fXD4lUUhVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765485868; 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=dUcUVb3Dp6Z0yKJG30o0K99iqhiivRUbP0ABbhgNlE0=; b=b6946lz/ADcylDEuFond+uvDsa36G1wKPbvq3ywhjgWSL1weGERRDiaSqD4kiiQYA1gTWN srysvF/3PI5HLUbTd2HYBIMpnnXbddzGKCOvMZ3ZVP6IYvFIaWtebDjtcJ5q+0MTnL2sqV AamD7xkGjK7RmScGsOkFQsARfXQ5Jm+911mVqxTtkfHAX+TFanMpWSpPolC0XDj4I6AbDz mmFikPs7bM/czHrnSN9+LpxdUxyr7o8wXZavj7pE4PJDNzCDgmBEzqx2EUuEYRO8RLnXou 3NA0N0jzv/RXdqJdEn3fZ+1mAh7lTegUcieMWs0c7orx7P/RwfJJOk1wrUyOxg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765485868; a=rsa-sha256; cv=none; b=t82o/O11uU3E/O1rooGM4Aj33C9PzYg2IDt5Wq5pe2gLxA32WwV1inxAhtb1gwcFjedtD2 XUpY5Yj3z07xRaG5cNEJC/dfzes5ZXDT+Lz+4FeiHmJn44LvpvHhL47EEXp4pJ33RuNLgY BABXxD/dWLOIw9dmz6nkst4w9H6wUhxHRBnk0fbg9syyNGoqiJ+JRv81BHdjMJ11WqDiyN FIdOoVpIh9R/EZutqNFh0AudGMX3fSu0yKwJrLrlhHh27rLOKowgaGHnPF30U2mc9gu3OY b6r+HI65+34yYMP8fBeiZMEquZ53tqbyuF4q5yh4mf3xRsXNQ9+zi4BdsT5aTA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dS4MJ2pVRznT2 for ; Thu, 11 Dec 2025 20:44:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 31b37 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 20:44:28 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kevin Bowling Subject: git: f2a21b1b483c - stable/14 - e1000: Don't enable ASPM L1 without L0s 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kbowling X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f2a21b1b483ce8c54adac59e254611dad5c25fd9 Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 20:44:28 +0000 Message-Id: <693b2d2c.31b37.45741c40@gitrepo.freebsd.org> The branch stable/14 has been updated by kbowling: URL: https://cgit.FreeBSD.org/src/commit/?id=f2a21b1b483ce8c54adac59e254611dad5c25fd9 commit f2a21b1b483ce8c54adac59e254611dad5c25fd9 Author: Kevin Bowling AuthorDate: 2025-11-21 05:47:03 +0000 Commit: Kevin Bowling CommitDate: 2025-12-11 20:44:09 +0000 e1000: Don't enable ASPM L1 without L0s Reporter noted packet loss with 82583. NVM is down level. The errata docs mention disabling this, which should be the firmware default, so I am not sure why we were enabling this bit. Linux and OpenBSD have the same issue, while NetBSD got it right. Reported by: Codin Tested by: Codin (cherry picked from commit 2ead091715dee327b3e00bc9840e1a95827b8e82) --- sys/dev/e1000/e1000_82571.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/dev/e1000/e1000_82571.c b/sys/dev/e1000/e1000_82571.c index e8970adf996f..650169663f56 100644 --- a/sys/dev/e1000/e1000_82571.c +++ b/sys/dev/e1000/e1000_82571.c @@ -1118,7 +1118,8 @@ static s32 e1000_init_hw_82571(struct e1000_hw *hw) case e1000_82574: case e1000_82583: reg_data = E1000_READ_REG(hw, E1000_GCR); - reg_data |= E1000_GCR_L1_ACT_WITHOUT_L0S_RX; + /* 82574 Errata 25, 82583 Errata 12 */ + reg_data &= ~E1000_GCR_L1_ACT_WITHOUT_L0S_RX; E1000_WRITE_REG(hw, E1000_GCR, reg_data); break; default: From nobody Thu Dec 11 21:02:19 2025 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 4dS4lv1rF6z6KMsB for ; Thu, 11 Dec 2025 21:02: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dS4lv0yT1z3hBl for ; Thu, 11 Dec 2025 21:02:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765486939; 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=mPWU+spBOPLQZm6lW8AgT1Ku6RBgLXQNf7EiZqIZnLM=; b=yV8R6E9hpe1yGKcNv/U+DZmDMj9y7KjBk7Ho/68u2OXzzTYrbUjx+umqYjZNZwZP6cbY3Z YRTm/noviFw4iAQ/8VqOR6aDoLa9QsRk25K8q1/NJ7DoblzKwWCvryNxHU3Xhh6b7/Xxnd WSvtc3C53QPTHWxh2VEz3exaZ6c1IsluZW4AQ15VXJII8lr3qlmQiEE7dffcHu59JZq35Y naRSRkB4WUmaKZYUa8Rp+Zba2lWhdEXz5eB3O95NUiiICpXSdQprqcVYmMIA0YHo69ftVe BGuYf41djKuzFah+IthPgIKGhrH2Y7mKv6QXO/VjoOyDuqNDTGMBdi6iHXLUPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765486939; 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=mPWU+spBOPLQZm6lW8AgT1Ku6RBgLXQNf7EiZqIZnLM=; b=iiXVmz0c1g50Jl4dr1cOA6q7mVk31FdLwkBbj9uUog4gbKEJ+Glw3ZjRd+FMivvCJf+7CG bcG7SKSbah+g3H1EnT7cann2NZlcpbobY7+gHLJREPm4DEcuUmCv3exTlQ5Bdl4KzbWBYr JgJHomgPt7aqlXsoG1pXHk8nPyD5on9HwtJuHazfzf1UzETBXuxBvr/6oNomGtgaHXSGNN ciecQeXiyt53GGhvj7Xbpaf3pTv6BFkGjl0mpvbhRwqg4xJVr7njvu8mL/giNNuHbSjJpO /gJSanMJE1qLPtPQZ+MCLzlXIiUkxtWei56oNOq7AvdwuspsJw2IbToDCGFPSw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765486939; a=rsa-sha256; cv=none; b=KZ65kD+u+l+u1D9sFrM7W9kLP22ppJ69UIeHt/zCqk2ozy979Ae84pSoMgGAZ8nyqsX26o 4QdmlMQ259TNp2sMnF9vSONHwkCDEsnM76uBxvXz3UAe5aorHT2SlvLTGSdf1doW7kqvjq ATeOkx56QHvSZPi9eZocnIqzBgw6GKCGKUF0arI5zjj8PRH50/mbL5PfdTDkt2tFupKP/S EJFbTTxYIpY/Icg6VLi6SP5TbM2QjxPPGXCCRFwfpYe+RR3CRS+gYBi7j8BSuIWKLk52vx M03FHo3o+ihdC3uL1npKMxobG2j/woEgyVxZVtEzRIzdYDX0bVtJzESUHoiDrg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dS4lv0CjSznb0 for ; Thu, 11 Dec 2025 21:02:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 32b3f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 11 Dec 2025 21:02:19 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mitchell Horne Subject: git: 5588350cf9d4 - stable/15 - pfind(9): follow-up fixes and improvements 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 5588350cf9d40bec254708097bfa26f0c429d9c1 Auto-Submitted: auto-generated Date: Thu, 11 Dec 2025 21:02:19 +0000 Message-Id: <693b315b.32b3f.53a095b6@gitrepo.freebsd.org> The branch stable/15 has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=5588350cf9d40bec254708097bfa26f0c429d9c1 commit 5588350cf9d40bec254708097bfa26f0c429d9c1 Author: Mitchell Horne AuthorDate: 2023-01-28 18:48:33 +0000 Commit: Mitchell Horne CommitDate: 2025-12-11 21:02:12 +0000 pfind(9): follow-up fixes and improvements (Found on a branch from a year ago.) - Adjust NAMEs - MLINKS: add pfind_any.9, pfind_any_locked.9; remove old zpfind.9 - Reword the description of pfind_any() so that it doesn't imply only zombie processes are returned - Fix a comma - Use .Dv for the macro PRS_ZOMBIE - Move the (logically separate) final statement to a new paragraph - .Xr to pget(9) Reviewed by: 0mp Fixes: 07d78399eb79 ("pfind(9): Update to recent behavior") Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D53548 (cherry picked from commit 2ace05b65a2c912888aeec921fc6f990a5c36909) --- ObsoleteFiles.inc | 3 +++ share/man/man9/Makefile | 3 ++- share/man/man9/pfind.9 | 34 +++++++++++++++++----------------- 3 files changed, 22 insertions(+), 18 deletions(-) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 0a35f9c33f8b..8b08bc5ff496 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -51,6 +51,9 @@ # xargs -n1 | sort | uniq -d; # done +# 20251204: zpfind.9 alias to pfind.9 removed +OLD_FILES+=usr/share/man/man9/zpfind.9 + # 20251121: Remove duplicate pam_krb5 manual page OLD_FILES+=usr/share/man/man8/pam-krb5.8.gz diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile index 11557907d5fe..2ecc511c8523 100644 --- a/share/man/man9/Makefile +++ b/share/man/man9/Makefile @@ -1853,7 +1853,8 @@ MLINKS+=pfil.9 pfil_add_hook.9 \ pfil.9 pfil_remove_hook.9 \ pfil.9 pfil_run_hooks.9 \ pfil.9 pfil_link.9 -MLINKS+=pfind.9 zpfind.9 +MLINKS+=pfind.9 pfind_any.9 \ + pfind.9 pfind_any_locked.9 MLINKS+=PHOLD.9 PRELE.9 \ PHOLD.9 _PHOLD.9 \ PHOLD.9 _PRELE.9 \ diff --git a/share/man/man9/pfind.9 b/share/man/man9/pfind.9 index ebcf7a565150..298b6b3ef326 100644 --- a/share/man/man9/pfind.9 +++ b/share/man/man9/pfind.9 @@ -22,11 +22,13 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd December 3, 2024 +.Dd November 3, 2025 .Dt PFIND 9 .Os .Sh NAME -.Nm pfind , zpfind +.Nm pfind , +.Nm pfind_any , +.Nm pfind_any_locked .Nd locate a process by number .Sh SYNOPSIS .In sys/param.h @@ -38,16 +40,13 @@ .Ft "struct proc *" .Fn pfind_any_locked "pid_t pid" .Sh DESCRIPTION +The .Fn pfind -takes a -.Fa pid -as its argument and returns a pointer to the -.Vt proc -structure whose PID is specified in the argument only if the -.Fa pid -is on the -.Va allproc -list. +function walks the list of processes in the system, looking for the one with a +process ID of +.Fa pid . +If the process exists, and is not in the zombie state, a pointer to the process +structure will be returned. .Pp .Fn pfind_any takes a @@ -56,21 +55,21 @@ as its argument. .Fn pfind_any searches the .Va allproc -list and returns the first process whose PID matches and whose state is -.Va PRS_ZOMBIE . +list and returns the first process with a matching PID, whose state may be +.Dv PRS_ZOMBIE . .Pp .Fn pfind_any_locked is similar to -.Fn pfind_any -,but it does not lock the process hash bucket -for the given +.Fn pfind_any , +but it does not lock the process hash bucket for the given .Vt pid . Instead, it asserts the corresponding process hash bucket is already locked. +.Pp All three functions .Fn pfind , .Fn pfind_any , and -.Fn pgfind_any_locked +.Fn pfind_any_locked lock the .Vt proc structure before returning. @@ -85,6 +84,7 @@ structure on success or .Dv NULL on failure. .Sh SEE ALSO +.Xr pget 9 , .Xr pgfind 9 .Sh AUTHORS This manual page was written by From nobody Fri Dec 12 11:59:02 2025 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 4dSSfb2DZQz6KpDk for ; Fri, 12 Dec 2025 11:59:03 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dSSfb0V3sz3FbQ for ; Fri, 12 Dec 2025 11:59:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765540743; 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=zzybWeXesjgisAT/XxQRozx82kv6t56ofTCM9bYVVkM=; b=oFJuB6ptJCaeb8o0MDUzJ4YhguThDgZClksU+zDx3P845wFCaYXp7A8ZaKzYjT8ypK55aX vnQYd+dg+W7U6zNc+2cN1UyskR+iEsgE/Gy1pavFxYpaBnWNTqu5JnC1d4LDykpQMQ1bFs xdBqZokdOHlSCZKI2XVcczzYnPuC0XijqppFkFWj3EaGIO3Vg7ElBH9p+uaRAP9ijnJ7B+ KHoeTIPFxn3A59E+HVm+qzCxvzpCSAKd10Kz4jjTt8jzXmozxHCFq123lZ+B0WYEBS/Pw5 Wiod+Zzq2npEEOhbIcZU7YvQrhLBb62XSDP3MIVaPOfOuZLwNmUNeJI5adhW8Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765540743; 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=zzybWeXesjgisAT/XxQRozx82kv6t56ofTCM9bYVVkM=; b=Fi2E04Hyp1xCVPBWSaT9ySFkDguUki6gq2H2yygralx+QStkMAQm3xflKp17NFYlTAl62F 7XZB8YKV93ao1xysYnMI3jG47frmqqRxPdwIb2gLSnSJp7bTm482ipOw42ivXMq6YoJCmv jPkX42F76sFG3yDGkZVQtU2WGt6IyXMXy03sY3nCE0tCTOV1vlCS5VGQVJnTdhgqInuf0O krFieeoWVUKLGvVnAB3V40RbRsVuxuwEDgaPSjS5aPUpxpKDdIhue0RPYRPgUDl5CcrU5r 8LLGKFJ5ZJN8MPow95FbElvWn4kBvPwVPz5YqqpvR0xPNf1PyEEeKL4xAuQl9A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765540743; a=rsa-sha256; cv=none; b=LA0iKXwxk23bO6xcg+ES1J+6CHCaoIlr92FjoNB+mMC+dl9ztJkscdFX7nUHVFAH6az/98 2otZQYEMR2oE80fnlUQTm/CjVrhdLG6QYX9axKpv8ffxNfRI63iMQOoH/VApg8l81nWY/D zrsX3zxvlp7FjDVcrTUcb9Fb7hWrl5P4B0CHZoJDt9Gg6inX177eFCJ8BOl/y9vHu9FoLO IWTsmCZo8p/BYDLe4OxQclE8vFhQ6bg4wu9Wv3+ZrKpQfpLTFCglaOxV8Fwc45ky5jLmiC 4XKIPH2E21icrwXFJ+9bS7O4SgXxcaO75ytC4IgK6PER4eCVzrfp0kjl0Nv/YQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dSSfZ6bJPzjJ for ; Fri, 12 Dec 2025 11:59:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id dfcd by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 12 Dec 2025 11:59:02 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Robert Clausecker Subject: git: e72536a11fab - stable/15 - lib/libc: add recallocarray() 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 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: e72536a11fab2dbd17174a3205c394b82ae65b88 Auto-Submitted: auto-generated Date: Fri, 12 Dec 2025 11:59:02 +0000 Message-Id: <693c0386.dfcd.3857eee4@gitrepo.freebsd.org> The branch stable/15 has been updated by fuz: URL: https://cgit.FreeBSD.org/src/commit/?id=e72536a11fab2dbd17174a3205c394b82ae65b88 commit e72536a11fab2dbd17174a3205c394b82ae65b88 Author: Robert Clausecker AuthorDate: 2025-10-02 14:33:55 +0000 Commit: Robert Clausecker CommitDate: 2025-12-12 10:32:37 +0000 lib/libc: add recallocarray() This function from OpenBSD is a hybrid of reallocarray() and calloc(). It reallocates an array, clearing any newly allocated items. reallocarray() ultimately originates from OpenBSD. The source is taken from lib/libopenbsd, which now no longer has the function unless when bootstrapping (needed for mandoc). Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D52863 (cherry picked from commit 42664610795bc0a728851ba6223fcf9b93801167) --- include/stdlib.h | 2 ++ lib/libc/stdlib/Makefile.inc | 3 +- lib/libc/stdlib/Symbol.map | 4 +++ lib/libc/stdlib/reallocarray.3 | 37 ++++++++++++++++++++++++- lib/{libopenbsd => libc/stdlib}/recallocarray.c | 0 lib/libopenbsd/Makefile | 8 ++++-- 6 files changed, 50 insertions(+), 4 deletions(-) diff --git a/include/stdlib.h b/include/stdlib.h index ba0cf4b5e88e..784cb63bfc5b 100644 --- a/include/stdlib.h +++ b/include/stdlib.h @@ -314,6 +314,8 @@ int radixsort(const unsigned char **, int, const unsigned char *, unsigned); void *reallocarray(void *, size_t, size_t) __result_use_check __alloc_size2(2, 3); +void *recallocarray(void *, size_t, size_t, size_t) __result_use_check + __alloc_size2(3, 4); void *reallocf(void *, size_t) __result_use_check __alloc_size(2); int rpmatch(const char *); char *secure_getenv(const char *); diff --git a/lib/libc/stdlib/Makefile.inc b/lib/libc/stdlib/Makefile.inc index ca199a669be1..e7b9955b9646 100644 --- a/lib/libc/stdlib/Makefile.inc +++ b/lib/libc/stdlib/Makefile.inc @@ -10,7 +10,7 @@ MISRCS+=C99_Exit.c a64l.c abort.c abs.c atexit.c atof.c atoi.c atol.c atoll.c \ insque.c l64a.c labs.c ldiv.c llabs.c lldiv.c lsearch.c \ merge.c mergesort_b.c ptsname.c qsort.c qsort_r.c qsort_r_compat.c \ qsort_s.c quick_exit.c radixsort.c rand.c \ - random.c reallocarray.c reallocf.c realpath.c remque.c \ + random.c reallocarray.c reallocf.c realpath.c recallocarray.c remque.c \ set_constraint_handler_s.c strfmon.c strtoimax.c \ strtol.c strtold.c strtoll.c strtoq.c strtoul.c strtonum.c strtoull.c \ strtoumax.c strtouq.c system.c tdelete.c tfind.c tsearch.c twalk.c @@ -76,6 +76,7 @@ MLINKS+=random.3 initstate.3 \ random.3 srandom.3 \ random.3 srandomdev.3 MLINKS+=radixsort.3 sradixsort.3 +MLINKS+=reallocarray.3 recallocarray.3 MLINKS+=set_constraint_handler_s.3 abort_handler_s.3 MLINKS+=set_constraint_handler_s.3 ignore_handler_s.3 MLINKS+=strfmon.3 strfmon_l.3 diff --git a/lib/libc/stdlib/Symbol.map b/lib/libc/stdlib/Symbol.map index 2b79ca2ece8b..53d71bcafb7d 100644 --- a/lib/libc/stdlib/Symbol.map +++ b/lib/libc/stdlib/Symbol.map @@ -131,6 +131,10 @@ FBSD_1.8 { getenv_r; }; +FBSD_1.9 { + recallocarray; +}; + FBSDprivate_1.0 { __system; _system; diff --git a/lib/libc/stdlib/reallocarray.3 b/lib/libc/stdlib/reallocarray.3 index 80035c67a497..d72513c2f301 100644 --- a/lib/libc/stdlib/reallocarray.3 +++ b/lib/libc/stdlib/reallocarray.3 @@ -26,7 +26,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd May 1, 2015 +.Dd October 2, 2025 .Dt REALLOCARRAY 3 .Os .Sh NAME @@ -38,6 +38,8 @@ .In stdlib.h .Ft void * .Fn reallocarray "void *ptr" "size_t nmemb" "size_t size" +.Ft void * +.Fn recallocarray "void *ptr" "size_t oldnmeb" "size_t nmemb" size_t size" .Sh DESCRIPTION The .Fn reallocarray @@ -52,6 +54,33 @@ and checks for integer overflow in the calculation .Fa nmemb * .Fa size . +.Pp +The +.Fn recallocarray +function is similar to the +.Fn reallocarray +function +except it ensures newly allocated memory is cleared similar to +.Fn calloc . +If +.Fa ptr +is +.Dv NULL , +.Fa oldnmemb +is ignored and the call is equivalent to +.Fn calloc . +If +.Fa ptr +is not +.Dv NULL , +.Fa oldnmemb +must be a value such that +.Fa oldnmemb +* +.Fa size +is the size of the earlier allocation that returned +.Fa ptr , +otherwise the behaviour is undefined. .Sh RETURN VALUES The .Fn reallocarray @@ -142,3 +171,9 @@ function first appeared in .Ox 5.6 and .Fx 11.0 . +The +.Fn recallocarray +function first appeared in +.Ox 6.1 +and +.Fx 15.1 . diff --git a/lib/libopenbsd/recallocarray.c b/lib/libc/stdlib/recallocarray.c similarity index 100% rename from lib/libopenbsd/recallocarray.c rename to lib/libc/stdlib/recallocarray.c diff --git a/lib/libopenbsd/Makefile b/lib/libopenbsd/Makefile index 53bd0200934f..80ae0f90621a 100644 --- a/lib/libopenbsd/Makefile +++ b/lib/libopenbsd/Makefile @@ -1,8 +1,12 @@ LIB= openbsd SRCS= imsg-buffer.c \ imsg.c \ - ohash.c \ - recallocarray.c + ohash.c +.if defined(BOOTSTRAPPING) +.PATH: ${SRCTOP}/lib/libc/stdlib +SRCS+= recallocarray.c +.endif + .if !defined(BOOTSTRAPPING) # Skip getdtablecount.c when bootstrapping since it doesn't compile for Linux # and is not used by any of the bootstrap tools From nobody Fri Dec 12 11:59:04 2025 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 4dSSfc1pY8z6Kp2X for ; Fri, 12 Dec 2025 11:59:04 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dSSfc0rL2z3G6L for ; Fri, 12 Dec 2025 11:59:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765540744; 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=y3vZJKcYgZXMSEzQEFcIcXTD1lMTjWSOjP6RsKFdCgk=; b=vJ3vhkqXbPF0ZPAr++EQh6A/QjymbNUlsZBbf7siS8m5rEhLK24NMhivC+TSjRt8iSlTxL R4MhykPAngNyockfpTnJ8CX+BMddLseHuJO/Sts5OijF5aYunT91FHDn4VgbyqmnHoAfcg e80VF7YfCcNWQQoYQwdY01G6AJkP5+HCq1stRNzk/ZC0a3DunrDde87FDOXfHeyC5m39l3 dgl99pnCKHAZwV/SRZ4F3dkLJEp2TuoEhvXr5XWt1fJaxI3UMnyCoC3vaMwT86NLPG+9Ju U9oeQfNCycSfZnnd0/JNLxzM4CyAcFMvt7NgtVKPuMorGAkbSP/KTaNiNzN5GQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765540744; 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=y3vZJKcYgZXMSEzQEFcIcXTD1lMTjWSOjP6RsKFdCgk=; b=wF7ZMGna4/JVw3AM88Ac6ov02DooaRz+AuuqByUY5fPXcrj14cLxQg+pQjH7a7gnLbnI+7 EUM3JKna0EY7dKcTCpFaYP7vjR7cDVFNbNDA3+us6YnOD7nIFTmqd6KQ3rgJD4P2h9H04o lkdAdMAH4TkaC7pr0C/4Wi4zBsHLatGsEpbnSHu+DYivSvh3Oa1Id1ySCjwFWP9Wvp1Kh5 7IyojTZwze5LOYV54qYnIQkpxHmIqN2Z49RDmrbG1cBPkoGhzDyrsKDyVXL1KCRfYBJMIO txCL3/ySctEelcmECDwX+wqCYd+2uHpM8pbpxN/EMm5RjOEhv68nXJ1ezG8zPw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765540744; a=rsa-sha256; cv=none; b=KRjuQU2Cf2J2yEytzHbdiL7glIGGtRdq4XQhE2nZDSfB6nRxDVmurttQlrrqzZrs4vali4 mCVCTGvXpf3mQVa5LJyMAxN9/JOnP77Ne29ITGBsUerdilKgUQYRjE8AkL91x//FfhpCfo GLGpbhJ4y+f7H2/KKsy/WvHQOs73uHzAO7NqQ9g9iSI9eg80kUNJkXAkpdIB5agXLJo88C rL+KMJAS6khXndu25kfWSCMSEdbV9cJTxMcoaVvRwx5SZGtoQXWxhr+IsXdc8yw7iFvKwp +DXnZa5E5Phc8o0HeUFeR7g1DibNZ6Sxc80plcLIuc5GoiZUsulLYJqnhN1rDA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dSSfc0HG9z1jy for ; Fri, 12 Dec 2025 11:59:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id bb68 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 12 Dec 2025 11:59:04 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Robert Clausecker Subject: git: 24ea81047de7 - stable/15 - lib/libc: implement C23 memalignment() 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 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: 24ea81047de7c75fd57c54deda0b36c3225c367b Auto-Submitted: auto-generated Date: Fri, 12 Dec 2025 11:59:04 +0000 Message-Id: <693c0388.bb68.5e9fe38f@gitrepo.freebsd.org> The branch stable/15 has been updated by fuz: URL: https://cgit.FreeBSD.org/src/commit/?id=24ea81047de7c75fd57c54deda0b36c3225c367b commit 24ea81047de7c75fd57c54deda0b36c3225c367b Author: Robert Clausecker AuthorDate: 2025-11-10 17:54:41 +0000 Commit: Robert Clausecker CommitDate: 2025-12-12 10:32:58 +0000 lib/libc: implement C23 memalignment() This new function computes the alignment of a pointer. It is part of ISO/IEC 9899:2024, the new C standard. If the pointer is a null pointer, null is returned. I have tried to write an implementation that can cope with traditional address-based architectures, even if size_t and uintptr_t are of different length. Adjustments may be needed for CHERI though. A man page is provided, too. No unit test for now. Reviewed by: kib, imp, ziaee (manpages), pauamma@gundo.com Approved by: markj (mentor) MFC after: 1 month Relnotes: yes Differential Revision: https://reviews.freebsd.org/D53673 (cherry picked from commit 6c57e368eb1777f6097158eeca2fcc175d068dba) --- include/stdlib.h | 8 +++++++ lib/libc/stdlib/Makefile.inc | 4 ++-- lib/libc/stdlib/Symbol.map | 1 + lib/libc/stdlib/memalignment.3 | 53 ++++++++++++++++++++++++++++++++++++++++++ lib/libc/stdlib/memalignment.c | 28 ++++++++++++++++++++++ 5 files changed, 92 insertions(+), 2 deletions(-) diff --git a/include/stdlib.h b/include/stdlib.h index 784cb63bfc5b..3e54b5feb6de 100644 --- a/include/stdlib.h +++ b/include/stdlib.h @@ -167,6 +167,14 @@ int at_quick_exit(void (*)(void)) __noexcept; _Noreturn void quick_exit(int) /* __noexcept -- not ready ABI issues? */; #endif /* __ISO_C_VISIBLE >= 2011 */ + +/* + * C23 extensions + */ +#if __ISO_C_VISIBLE >= 2023 +size_t memalignment(const void *) __pure2; +#endif /* __ISO_C_VISIBLE >= 2023 */ + /* * Extensions made by POSIX relative to C. */ diff --git a/lib/libc/stdlib/Makefile.inc b/lib/libc/stdlib/Makefile.inc index e7b9955b9646..b878a7625e9f 100644 --- a/lib/libc/stdlib/Makefile.inc +++ b/lib/libc/stdlib/Makefile.inc @@ -7,7 +7,7 @@ MISRCS+=C99_Exit.c a64l.c abort.c abs.c atexit.c atof.c atoi.c atol.c atoll.c \ div.c exit.c getenv.c getopt.c getopt_long.c \ getsubopt.c hcreate.c hcreate_r.c hdestroy_r.c heapsort.c heapsort_b.c \ hsearch_r.c imaxabs.c imaxdiv.c \ - insque.c l64a.c labs.c ldiv.c llabs.c lldiv.c lsearch.c \ + insque.c l64a.c labs.c ldiv.c llabs.c lldiv.c lsearch.c memalignment.c \ merge.c mergesort_b.c ptsname.c qsort.c qsort_r.c qsort_r_compat.c \ qsort_s.c quick_exit.c radixsort.c rand.c \ random.c reallocarray.c reallocf.c realpath.c recallocarray.c remque.c \ @@ -35,7 +35,7 @@ MAN+= a64l.3 abort.3 abs.3 atexit.3 atof.3 \ atoi.3 atol.3 at_quick_exit.3 bsearch.3 \ div.3 exit.3 getenv.3 getopt.3 getopt_long.3 getsubopt.3 \ hcreate.3 imaxabs.3 imaxdiv.3 insque.3 labs.3 ldiv.3 llabs.3 lldiv.3 \ - lsearch.3 memory.3 ptsname.3 qsort.3 \ + lsearch.3 memalignment.3 memory.3 ptsname.3 qsort.3 \ quick_exit.3 \ radixsort.3 rand.3 random.3 reallocarray.3 reallocf.3 realpath.3 \ set_constraint_handler_s.3 \ diff --git a/lib/libc/stdlib/Symbol.map b/lib/libc/stdlib/Symbol.map index 53d71bcafb7d..8b7e97c3cbdc 100644 --- a/lib/libc/stdlib/Symbol.map +++ b/lib/libc/stdlib/Symbol.map @@ -132,6 +132,7 @@ FBSD_1.8 { }; FBSD_1.9 { + memalignment; recallocarray; }; diff --git a/lib/libc/stdlib/memalignment.3 b/lib/libc/stdlib/memalignment.3 new file mode 100644 index 000000000000..4a2269a82c81 --- /dev/null +++ b/lib/libc/stdlib/memalignment.3 @@ -0,0 +1,53 @@ +.\" +.\" Copyright (c) 2025 Robert Clausecker +.\" +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.Dd November 10, 2025 +.Dt MEMALIGNMENT 3 +.Os +.Sh NAME +.Nm memalignment +.Nd find the memory alignment of an object +.Sh SYNOPSIS +.Lb libc +.In stdlib.h +.Ft size_t +.Fn memalignment "const void *ptr" +.Sh DESCRIPTION +The +.Fn memalignment +function determines the alignment of the object pointed to by +.Fa ptr . +This alignment is a power of\~2, and may be larger than the range +supported by the +.Sy alignof +operator. +The value returned can be compared to the result of +.Sy alignof , +and if it is greater or equal, the alignment requirement of the operand +is satisfied. +.Sh RETURN VALUES +Returns the alignment of +.Fa ptr +as a power of\~2. +If +.Fa ptr +is a null pointer, an alignment of zero is returned. +An alignment of zero indicates that the tested pointer cannot be used to +access an object of any type. +.Sh SEE ALSO +.Xr aligned_alloc 3 , +.Xr posix_memalign 3 +.Sh STANDARDS +The +.Fn memalignment +function conforms to +.St -isoC-2023 . +.Sh HISTORY +The +.Fn memalignment +function was added in +.Fx 15.1. +.Sh AUTHOR +.An Robert Clausecker Aq Mt fuz@FreeBSD.org diff --git a/lib/libc/stdlib/memalignment.c b/lib/libc/stdlib/memalignment.c new file mode 100644 index 000000000000..771ddc2f5253 --- /dev/null +++ b/lib/libc/stdlib/memalignment.c @@ -0,0 +1,28 @@ +/* + * Copyright (c) 2025 Robert Clausecker + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#include +#include + +size_t +memalignment(const void *p) +{ + uintptr_t align; + + if (p == NULL) + return (0); + + align = (uintptr_t)p; + align &= -align; + +#if UINTPTR_MAX > SIZE_MAX + /* if alignment overflows size_t, return maximum possible */ + if (align > SIZE_MAX) + align = SIZE_MAX - SIZE_MAX/2; +#endif + + return (align); +} From nobody Fri Dec 12 11:59:05 2025 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 4dSSfd4tkvz6KpKf for ; Fri, 12 Dec 2025 11:59: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dSSfd23Zqz3FbY for ; Fri, 12 Dec 2025 11:59:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765540745; 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=Yhww0vapjxr8e5sdxF3FEw64MbPzrtZPKN44sJnpXZg=; b=Y+zHF7N1mFcmxivNgvlRuFTYI5Y5Wc5f0pe8UATPZx8ImcoJOEWzsgtWQHw65poiyobqmk yEEYzGqOwd0X0rJMGcxYYfhF64IJLj8oYeRRZshJfviD4fi75BRiiEjXqDB2H1pNXybU2P LVJY/aYU2ccn4VSvP9h/rqQ6idWigrcMpA74v4gfJ+M4/VXBUr8Igic8jmT6EWdcDIDuDe McTb8VvjWcfEfE3Y/HtNY7isWuKrNkP5ZPBXIiqDN6GWNLIIEr9uPnu+ABkLq3/4nHExAx XadZf46rfc/uXW/WdYMY8jZeniFq3nl7OM26IZw9xLMFsAk+ckjLMwAnwvabIg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765540745; 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=Yhww0vapjxr8e5sdxF3FEw64MbPzrtZPKN44sJnpXZg=; b=DJZ/Ltvf8xjPKDd4yMhOcFaybf3v3vctz3N/d2AAHWqVhpYP75U4if0hPfEmqx3HXLh/OY xZ9BdTt5CibZp8QbU2nTmwy+/2dE28JoPzF8K2b+il5eqMwRoovm/aJ3pNrYsdoWPZMAOW oF/hz9KocdL6x4BABBI0wC0wn2OCzVkQwnT7xu25fAHr+D6npev9kbC1tGV37QeAmtWWio SFf8BL43M3+PwKRs09bhpNWld8JP82MjEhfnggwWEUQAfknX9ZLB/SAi8pZ962Ylkl0lze /eg4Z9op/F7MiGamNrbSFxLDpVnNStgbMl3GYtRTzEkaioIzygQan0Dl9KYxGg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765540745; a=rsa-sha256; cv=none; b=Ng8YG5g6dJvPVN+PZ6wWgHFaANL75VoTWoNhDN5jEtGkWhpkCcAN+kNDFGFbQsxpe1L6y/ kp+YAAuw7FgcQP26A1dgZs03iXig+l2JZTOA4h3p1wyJaknIt9tSsuC/KKExeUX2hVHL7Y TwLoefQB849gDUOCoIqC2EPqRFr/lZlSFAqWoU/lEeZbG9fdeXPR/O6cEG+u8zJXTApKnO 7W6+tZ56dcs2Z40OLZty5YONprGUM3CcEQmynIF8sFfEqZHArov65XDlcBVHNpaFg+l3M5 UkSwN5h4ec8N3h7laCENWNu6JLXi6Pzc/UEPSR7VhrCEGlixO3FcGxO2ZZlWxA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dSSfd0vk7z1Qb for ; Fri, 12 Dec 2025 11:59:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id cdc4 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 12 Dec 2025 11:59:05 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Robert Clausecker Subject: git: cd79149b9e13 - stable/15 - */*: remove recallocarray() compat shims following import into libc 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 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: cd79149b9e132f7c850a2317f6d3960f0a16b486 Auto-Submitted: auto-generated Date: Fri, 12 Dec 2025 11:59:05 +0000 Message-Id: <693c0389.cdc4.7cd8c803@gitrepo.freebsd.org> The branch stable/15 has been updated by fuz: URL: https://cgit.FreeBSD.org/src/commit/?id=cd79149b9e132f7c850a2317f6d3960f0a16b486 commit cd79149b9e132f7c850a2317f6d3960f0a16b486 Author: Robert Clausecker AuthorDate: 2025-10-02 14:36:13 +0000 Commit: Robert Clausecker CommitDate: 2025-12-12 10:37:07 +0000 */*: remove recallocarray() compat shims following import into libc libopenbsd retains recallocarray() during bootstrapping for now as it is needed for mandoc. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D52864 (cherry picked from commit acd546f01e58354af049455472980c6c4a52e18b) --- lib/libdiff/Makefile | 2 +- lib/libfido2/Makefile | 1 - tests/oclo/Makefile | 1 - usr.bin/mandoc/Makefile | 3 +-- 4 files changed, 2 insertions(+), 5 deletions(-) diff --git a/lib/libdiff/Makefile b/lib/libdiff/Makefile index 8541ff424de2..25f849a69e05 100644 --- a/lib/libdiff/Makefile +++ b/lib/libdiff/Makefile @@ -8,7 +8,7 @@ INTERNALLIB= # API not published or supported. SRCS= diff_atomize_text.c diff_main.c diff_myers.c \ diff_patience.c diff_output.c diff_output_plain.c \ - diff_output_unidiff.c diff_output_edscript.c recallocarray.c + diff_output_unidiff.c diff_output_edscript.c WARNS= CFLAGS+= -I${SRCTOP}/contrib/libdiff/compat/include diff --git a/lib/libfido2/Makefile b/lib/libfido2/Makefile index 10c008967e3d..021a32dd514b 100644 --- a/lib/libfido2/Makefile +++ b/lib/libfido2/Makefile @@ -43,7 +43,6 @@ SRCS+= u2f.c SRCS+= util.c SRCS+= openbsd-compat/freezero.c -SRCS+= openbsd-compat/recallocarray.c CFLAGS+= -I ${DIST}/src -I${SRCTOP}/contrib/libcbor/src -I${.CURDIR}/../libcbor CFLAGS+= -D_FIDO_INTERNAL diff --git a/tests/oclo/Makefile b/tests/oclo/Makefile index 350c9f857c85..6f73aec0ff7c 100644 --- a/tests/oclo/Makefile +++ b/tests/oclo/Makefile @@ -5,7 +5,6 @@ TESTSDIR= ${TESTSBASE}/cddl/oclo PLAIN_TESTS_C= oclo oclo_errors ocloexec_verify SRCS.oclo= oclo.c -LIBADD.oclo+= openbsd LIBADD.ocloexec_verify+= util .include diff --git a/usr.bin/mandoc/Makefile b/usr.bin/mandoc/Makefile index 2c7c3ed85040..181d4e16c8ee 100644 --- a/usr.bin/mandoc/Makefile +++ b/usr.bin/mandoc/Makefile @@ -60,8 +60,7 @@ LIB_SRCS= ${LIBMAN_SRCS} \ mandoc_xr.c \ msec.c \ preconv.c \ - read.c \ - compat_recallocarray.c \ + read.c HTML_SRCS= eqn_html.c \ html.c \ From nobody Fri Dec 12 12:49:39 2025 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 4dSTn005Dgz6Ks5f for ; Fri, 12 Dec 2025 12:49:40 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dSTmz6K8wz3N0l for ; Fri, 12 Dec 2025 12:49:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765543779; 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=EEGNFzRpCTJBvXYg1lAHMAJt2oxQx9D8zQr9YvX2gZk=; b=Dvp69p7LI8+zI1V+CRocnWIWdIiIGlcSEIM9EOp2ygZZRIcVMB4PENzC2l2I9VwwAXhlF1 GqxLc1CbTB9/rU+XovqSJnwNoqCXmNRm/kYjm0rxLNtxxqYfz8JnAnDDcDZDmHoLnTAMqF 7LFuFwMlF0SmId04ia4WuiEvyJ5xrjxLysqwPnHzggMHJfsfKXdGQUlYEPA9jzh6ASSwpQ yjYXod63vrNvOCRNF8rwHB96mN59JnX0c27G1LxoyF0Nm0dAS+5kjhbaIw99G/VQ1ztftt YVHecmk1k13Hs8MZrm2DzwDVg4bdFGuLymC7o5pWghaAHCDcgtg4XaDtlzq8Xg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765543779; 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=EEGNFzRpCTJBvXYg1lAHMAJt2oxQx9D8zQr9YvX2gZk=; b=GNqyTClZ6KLgqngJpPhABsxC43hgfEEcwPsbkGTqxwFClVHGcmW6EWuWuZelQeO6y4z+On A9b4E7FZCKvoKJMKKm2qhBM8EspRPEr8KWgk7cP7t04Edh/tEdXCJM6FW3N39ieLozrJuh I0v2WqjI7Mr0gjQgW4aFuRxjzOICT91NbNgpq6r2DMqJliBRXV/kn1evnqGfO5P4eVSsDZ yatbVcsPXiQhhrryobJCctIQfQ3ZsvRY7jyC8jCdc6o0j3rIB8s031hxfHKo1FZakppYHJ 5rfhbp17rXvemCR/wfzi6c9FIxhEQ42XPjuaQm0pGDVJLug/ymcqvSnS4jTTyQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765543779; a=rsa-sha256; cv=none; b=ZwJ/l+/IHGUU7cZnb5kAGjVsN5He0sI4gjmR51luZMskSZkJpdrltAOdqSxm0VRZCXvqeB PY8n/4gsPJ58kwkbl+bdBV2LVpnZ0oHNusmIxLaUwfehDR/Xn2GtB774UedFiOHv7un9cB n6j6UissX6PkRD8PwrI6XtEkBgErMiG7mwqfHtW9XmTkiOM9jAAVD5Tk+tctke6AsUQgfv lKshgoARDj7NJiGUj3gGFZd0gkdUPj+RYZKXA7RleK8/fW2n3OaXdUP9WI9wL6omtfKkaE uIPrXvn3I4fSs0CJgrExSuCG4ihoCytx8K8UASd+F7SR84Er2kYDV0I8DF4C4w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dSTmz5f46z30G for ; Fri, 12 Dec 2025 12:49:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 23f03 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 12 Dec 2025 12:49:39 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andrew Gallatin Subject: git: f14ca373dde5 - stable/15 - splice: Fix leaks that can happen when initiating a 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gallatin X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: f14ca373dde536fe4dbded3da328f79226fbbfa5 Auto-Submitted: auto-generated Date: Fri, 12 Dec 2025 12:49:39 +0000 Message-Id: <693c0f63.23f03.176546f0@gitrepo.freebsd.org> The branch stable/15 has been updated by gallatin: URL: https://cgit.FreeBSD.org/src/commit/?id=f14ca373dde536fe4dbded3da328f79226fbbfa5 commit f14ca373dde536fe4dbded3da328f79226fbbfa5 Author: Andrew Gallatin AuthorDate: 2025-12-09 21:06:20 +0000 Commit: Andrew Gallatin CommitDate: 2025-12-12 12:43:33 +0000 splice: Fix leaks that can happen when initiating a splice - change the state to SPLICE_EXCEPTION to allow so_unsplice() to work to cleanup failed splices (fixes socket reference leak) - NULL out sp->dst when unsplicing from so_splice() before so2 has been been referenced. - Deal with a null sp->dst / so2 in so_unsplice - Fix asserts that talked about sp->state == SPLICE_INIT; that state is not possible here. Differential Revision: https://reviews.freebsd.org/D54157 Reviewed by: markj Sponsored by: Netflix Fixes: c0c5d01e5374 ("so_splice: Synchronize so_unsplice() with so_splice()") MFC after: 3 days (cherry picked from commit a837d1fe49e0255d81c670dc271ff245ae960097) --- sys/kern/uipc_socket.c | 44 +++++++++++++++++++++++++++----------------- 1 file changed, 27 insertions(+), 17 deletions(-) diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index 00aa5f9309b2..9eba3ad2e082 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -1726,6 +1726,10 @@ so_splice(struct socket *so, struct socket *so2, struct splice *splice) error = EBUSY; if (error != 0) { SOCK_UNLOCK(so2); + mtx_lock(&sp->mtx); + sp->dst = NULL; + sp->state = SPLICE_EXCEPTION; + mtx_unlock(&sp->mtx); so_unsplice(so, false); return (error); } @@ -1733,6 +1737,10 @@ so_splice(struct socket *so, struct socket *so2, struct splice *splice) if (so->so_snd.sb_tls_info != NULL) { SOCK_SENDBUF_UNLOCK(so2); SOCK_UNLOCK(so2); + mtx_lock(&sp->mtx); + sp->dst = NULL; + sp->state = SPLICE_EXCEPTION; + mtx_unlock(&sp->mtx); so_unsplice(so, false); return (EINVAL); } @@ -1799,20 +1807,20 @@ so_unsplice(struct socket *so, bool timeout) SOCK_UNLOCK(so); so2 = sp->dst; - SOCK_LOCK(so2); - KASSERT(!SOLISTENING(so2), ("%s: so2 is listening", __func__)); - SOCK_SENDBUF_LOCK(so2); - KASSERT(sp->state == SPLICE_INIT || - (so2->so_snd.sb_flags & SB_SPLICED) != 0, - ("%s: so2 is not spliced", __func__)); - KASSERT(sp->state == SPLICE_INIT || - so2->so_splice_back == sp, - ("%s: so_splice_back != sp", __func__)); - so2->so_snd.sb_flags &= ~SB_SPLICED; - so2rele = so2->so_splice_back != NULL; - so2->so_splice_back = NULL; - SOCK_SENDBUF_UNLOCK(so2); - SOCK_UNLOCK(so2); + if (so2 != NULL) { + SOCK_LOCK(so2); + KASSERT(!SOLISTENING(so2), ("%s: so2 is listening", __func__)); + SOCK_SENDBUF_LOCK(so2); + KASSERT((so2->so_snd.sb_flags & SB_SPLICED) != 0, + ("%s: so2 is not spliced", __func__)); + KASSERT(so2->so_splice_back == sp, + ("%s: so_splice_back != sp", __func__)); + so2->so_snd.sb_flags &= ~SB_SPLICED; + so2rele = so2->so_splice_back != NULL; + so2->so_splice_back = NULL; + SOCK_SENDBUF_UNLOCK(so2); + SOCK_UNLOCK(so2); + } /* * No new work is being enqueued. The worker thread might be @@ -1852,9 +1860,11 @@ so_unsplice(struct socket *so, bool timeout) sorwakeup(so); CURVNET_SET(so->so_vnet); sorele(so); - sowwakeup(so2); - if (so2rele) - sorele(so2); + if (so2 != NULL) { + sowwakeup(so2); + if (so2rele) + sorele(so2); + } CURVNET_RESTORE(); so_splice_free(sp); return (0); From nobody Fri Dec 12 18:13:35 2025 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 4dScyl3G6Mz6K4FK for ; Fri, 12 Dec 2025 18:13:35 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dScyl2RZ2z3HdS for ; Fri, 12 Dec 2025 18:13:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765563215; 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=CtrSLqpQlFG0KxB5iEbocTlszaxKCBR0uc90hcp34A8=; b=ecV69paZSQJ1/OUKb5bVyBDmBgR3ZM4nF0LXLFzEIutHFW16xtcUhaE34rQc7LQ7jydtQL qaezZ8bTPc+KBmf7JSQ9JbyMukE6D85cv55mpflsqDF2YXLqUQtGi5boYq2AINtZ4HBya1 1QSe0JLEesuutlh9mXU83YKI6N2PO7L5H1v7cGMuOUXHG+Bb8qmsG+kRPLIIHrDYDEL2+S 3jslAuno0p2bA5cxzAGr70bcgm+EVjvByqYEEQpmZqZs8NH79wvB0C89KhMcNNo81ZfUOd IHHJzi+H6ytf0NTEilugQvNwFBKR0/lhPwq0m00A0vGQQdrdIbI1ziG1KRzbCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765563215; 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=CtrSLqpQlFG0KxB5iEbocTlszaxKCBR0uc90hcp34A8=; b=oRfHQ6vaR7d/ekI8rOI2xBjav46DdLkR8woE/AKW2czH4/1JeqqPBrsXaBDNS3y+7Imjp6 25jne55cpMXc4wuSnY7vPhBWoHu3Vqd5sjXbQdfmXaP8pcGF9D+X1ZPMtNyQ6DpAV0xSdH bbDdxzoMJ+L16XVj0qrqud5oR3oyXD2T4GT1yVB8r0yR+1olZ9T8DSHlKqF9lQeKNaPyNo Crk/6kOFGUssSSN9oGbDAq7enfY5vX8ZtgN1DOXUgTc630YYAfVW7v94I5ytoZ5Si7JjqF 7ALJoJodsnfXrbt0BYNy1urj1S/oSSM5V0j6bthbMzK0rDkdRTaBronORXjkuA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765563215; a=rsa-sha256; cv=none; b=MouQKd0+lV4yLdj50VDOfj9m+2dxvd8Yy4V6Of6m8wWxZwN/mZJBc/AB3XOD9K93k4PsGt lisoLzTUIZchdJuFDoaKqNx0Wf9KUnIXb6c8yJPVofoUVoDr4jT8qTKhJGbptBWSMbEZHW Mj0abCWNtShDeUJQeUgQS6GqKf4NDsch80MdHSy9u2awrvYi7Y6H9AaDpIzzA/gAUSn5va KKiyUPH8Wch0vMLLt/lUStMIEHwTqAlDejJjrVsLVzVxhcSdN8xsxZr1uo383izpCJah0k 9xObT97ctJKPhqHBwvJYOPPTqjzeBHFX8gtUHU+lSXxVLGZinx3DR5gVFcyOug== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dScyl1vMszCjj for ; Fri, 12 Dec 2025 18:13:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id c5ad by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 12 Dec 2025 18:13:35 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: e1c985ccc335 - stable/14 - vt: Allow VT_SETMODE with frsig=0 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e1c985ccc335beb37bb34b368c5c019cc5f80f9c Auto-Submitted: auto-generated Date: Fri, 12 Dec 2025 18:13:35 +0000 Message-Id: <693c5b4f.c5ad.1268944a@gitrepo.freebsd.org> The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=e1c985ccc335beb37bb34b368c5c019cc5f80f9c commit e1c985ccc335beb37bb34b368c5c019cc5f80f9c Author: Ed Maste AuthorDate: 2025-09-30 19:39:34 +0000 Commit: Ed Maste CommitDate: 2025-12-12 18:13:13 +0000 vt: Allow VT_SETMODE with frsig=0 Linux does not check that any of the signals in vt_mode VT_SETMODE ioctl (relsig, acqsig, frsig) are valid, but FreeBSD required that all three are valid. frsig is unusued in both Linux and FreeBSD, and software typically leaves it unset. To improve portability, allow frsig to be set to zero. PR: 289812 Reported by: Dušan Gvozdenović Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D52835 (cherry picked from commit 5198c32210039d8dc92554647384eee75688848c) (cherry picked from commit 224d65015465d085f2e07edccef1f23a8c217b88) --- sys/dev/vt/vt_core.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/dev/vt/vt_core.c b/sys/dev/vt/vt_core.c index 50f12512a81c..5cf45a7c61b2 100644 --- a/sys/dev/vt/vt_core.c +++ b/sys/dev/vt/vt_core.c @@ -3049,9 +3049,9 @@ skip_thunk: DPRINTF(5, "reset WAIT_ACQ, "); return (0); } else if (mode->mode == VT_PROCESS) { - if (!ISSIGVALID(mode->relsig) || - !ISSIGVALID(mode->acqsig) || - !ISSIGVALID(mode->frsig)) { + if (!(ISSIGVALID(mode->relsig) && + ISSIGVALID(mode->acqsig) && + (mode->frsig == 0 || ISSIGVALID(mode->frsig)))) { DPRINTF(5, "error EINVAL\n"); return (EINVAL); } From nobody Sat Dec 13 02:19:47 2025 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 4dSqll2jXRz6Kkpc for ; Sat, 13 Dec 2025 02:19: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dSqll22vMz46Q9 for ; Sat, 13 Dec 2025 02:19:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765592387; 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=umzYLWJR/mFFXDO64kvQWW0Ni/ZcThLdtz3JUtugFqA=; b=czYFe9S2/h7wfvafnje5CD5F3oUpZwVq+quJweKqfclMZ1xyKovNAE2cxw9coLxJbEiIWG MBV1OpXaKMSrFy0vPaRREG6oi/LqVZRSUEgfTVmmYDyAbIIgUkrc9if2a4dYAMdxLA1Dha 5gOS+dwROBzTaE5fEMB0tjotpDd5dS6EQ3kP/OUacw/tMQbwwyiZ/RaNC4ERhvc/topz5n 8Hssj21PWdfFTW8hOuwinBX94wealsU74pPePNCFtNlMVCjF351XoZ9etjMhhjQXHjQnrB 59RaXTvjCXtFeh3SdxBJJCFHcCkMf2kuYDJscI7fZQrbQ6u3M52eVXwgUNqKfA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765592387; 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=umzYLWJR/mFFXDO64kvQWW0Ni/ZcThLdtz3JUtugFqA=; b=pgp1hhBETeWQJPzgUdlmaOW8VMmxBNSFV1xbXwH28ZMmmjfCRm5sDTI8ykBu0WNh5HcDZb ades9+RYSQwOHQFd5dJJuSg7Yt0nAhuB9gB4Y1g+y6XT9b8FLPk6nJgONk2G/gXCsxzTn0 T/qXCYtsNCCxpSy+bjt/XKah0EZyNmtHbxsTzipwSznKKs52n5Vwr74BlQKKc/ESQXrDDY nKpT4nBwmbsWKhRxnBlvFhrbUol8eA0+zkjCTUieJsMDfWazLBibNoD+jkYNWJ+dpSjjgz pLnyo4lWCAVs2TZODfSt3mn02uEa7GuOjF7PM/yykDUCoPL7liBK5Xu3hYlVnA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765592387; a=rsa-sha256; cv=none; b=BwLkeXGnZhxdUgiIRogYY5hdgdV4zk7YwLOPb9zfAsN7BsK0qoVcbae+hdPuL+/vi9du3V 1C/vcnfJsERNm/d1NGA62VOwj0pIrdBa6LAltBXeFNXbl5Gc3V9ItqUw7pDrCm987RhV1J /vpsB5Ghccfr8bM1Y4eCSsBbv9RhHlBcDyiqo2163BCJ0kgU2WFrKptCaa8Zl7VsHh8DLo p1ERuLO3wn0WFe4owlkSwcXsos4GecqOdUTL2q8tyIu2zv4wJelIKNgEx9dAIyeJFMnsvo 7NRpnn5uczINV/cKNd1pSaH6A0LPYuwyFKc52MY+qPaEDT3mjk8bZZMlGel+ng== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dSqll1bWgzkJj for ; Sat, 13 Dec 2025 02:19:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2ddbe by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 02:19:47 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: f97082ae700e - stable/15 - krb5: Add missing symbol 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: f97082ae700e67b9c441d869bed003713e8ef483 Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 02:19:47 +0000 Message-Id: <693ccd43.2ddbe.3a72f78d@gitrepo.freebsd.org> The branch stable/15 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=f97082ae700e67b9c441d869bed003713e8ef483 commit f97082ae700e67b9c441d869bed003713e8ef483 Author: Cy Schubert AuthorDate: 2025-12-11 14:00:45 +0000 Commit: Cy Schubert CommitDate: 2025-12-13 02:19:40 +0000 krb5: Add missing symbol Submitted by: lampa@fit.vutbr.cz PR: 291565 (cherry picked from commit f825427c0ae975025e831542782d4078b063a82e) --- krb5/lib/gssapi/version.map | 1 + 1 file changed, 1 insertion(+) diff --git a/krb5/lib/gssapi/version.map b/krb5/lib/gssapi/version.map index c0e66aa3c382..42f32cc55edf 100644 --- a/krb5/lib/gssapi/version.map +++ b/krb5/lib/gssapi/version.map @@ -39,6 +39,7 @@ HEIMDAL_GSS_2.0 { gss_inquire_cred; gss_inquire_cred_by_mech; gss_inquire_cred_by_oid; + gss_inquire_sec_context_by_oid; gss_inquire_mech_for_saslname; gss_inquire_mechs_for_name; gss_inquire_name; From nobody Sat Dec 13 04:15:16 2025 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 4dStK04yNsz6Ktlp for ; Sat, 13 Dec 2025 04:15: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dStK03FSlz4Jld for ; Sat, 13 Dec 2025 04:15:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599316; 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=xd0+MgdHSSchYcicNeqkKNCnpbi0bF//Xgn+IxqjpZE=; b=uFb8tqrzZjVGOzgzv3Is7Ija+B/bJQM9GHPPT9P7a7Cd5E1zsBITB7YWqonyobk0ADvfrs 7vQ8VxVvfZrhWrkEbNzkNYiDdrUJB5dcj9TUT3vIgSBUHFQe+D9hCEYvx7ZBDjuviG4WTv Ti8yQtxkpd+JAjaJ5eJFid+te81kBlpjQX/iqpSmgkgoCfkKGSiwFHU4W0Sq1dhHalpOoF dVzo3muYiZS/CXdBunlfhwgvWCD0r0LHhdrN887KgKs2v/ZComplYpKeKV0DC6ska/1Khv u+Z/fxo2Z4lRYydkNB5zFQyHys87AWlXTIkgBKzmrW6oBDM8YTPOSWbMLP2COg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599316; 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=xd0+MgdHSSchYcicNeqkKNCnpbi0bF//Xgn+IxqjpZE=; b=jbxBQVIY5RpsXdUoTy71G5uuierYF0thtGbIhcCrAQNaq8tbxCgQ5eb1Pb11Yvtxy6G7rU jKQWl0ENMiJ43IcAPm0yv//hg4z1AYk1PGKymKR/qqNiQDMI8NtE9be4mVAWIsjHB04LIn 878f4kGWAuU07jWdrwJtWK4vGuJvZkyT6GhOKWOKtVql0u+extowPmelhdBeJOIGN7IW8Y HtLqld5apXkNXnfF2rk6kmu3Bls6Gy+7vVoaFvUMLAsXDrJhsmjhiwCLokwQCpD+i+ClbI B//VnvltXuMa/QYBqaMWJ1YqmuuL5qOguySeBsc/ruIyUw5VCRj8BRSQPkG/cA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765599316; a=rsa-sha256; cv=none; b=FY0FEKiPA9I1UklzCYnGIj8U9whW73ZYMVp4H5cRKVthU6IwWPxvOOMb4RLNMy3IBzaVCf rRe/wvXEMRYhtrS9Arnnvx+m5wlpod8CzYhl7kk6iKAxFFQWrZ7ZtsjQlvXSsY94JbErVO yNd7ocAyl4o272I6KAH+kIkykwjCcB0wdEYdyhPYFrOTbudQQMGqZdokvogus3/chHbxhL 72ehm7QbUBCWxQGxJZfhMkcSqPWafqn8vjnB8SPt3Pjm0CDAHEY681AyXVgGwTw0uSOH30 akwriVHgNIseOCX452/ipK/M8W5Zj40ZzWAzor/WDVyJYUalE8hke+EwVsqyWA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dStK02q3NznV8 for ; Sat, 13 Dec 2025 04:15:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3a698 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 04:15:16 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 3bf4c0dc2043 - stable/15 - cldr2def.pl: Add international currency parameters 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 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: 3bf4c0dc20431bfe10bfac21177af0b964e8a75c Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 04:15:16 +0000 Message-Id: <693ce854.3a698.56f4ac11@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=3bf4c0dc20431bfe10bfac21177af0b964e8a75c commit 3bf4c0dc20431bfe10bfac21177af0b964e8a75c Author: Jose Luis Duran AuthorDate: 2025-12-06 12:20:16 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-13 04:12:58 +0000 cldr2def.pl: Add international currency parameters Add the missing international monetary parameters present in the lconv struct. See also https://unicode-org.atlassian.net/browse/CLDR-237. Reviewed by: bapt MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53915 (cherry picked from commit faf33e05013fb3fc79cc035c1ff7b52f3fa1af1b) --- tools/tools/locale/tools/cldr2def.pl | 42 +++++++++++++++++++++++------------- 1 file changed, 27 insertions(+), 15 deletions(-) diff --git a/tools/tools/locale/tools/cldr2def.pl b/tools/tools/locale/tools/cldr2def.pl index ea49c21300c4..998e176de918 100755 --- a/tools/tools/locale/tools/cldr2def.pl +++ b/tools/tools/locale/tools/cldr2def.pl @@ -121,6 +121,12 @@ my %DESC = ( "n_sep_by_space" => "n_sep_by_space", "p_sign_posn" => "p_sign_posn", "n_sign_posn" => "n_sign_posn", + "int_p_cs_precedes" => "int_p_cs_precedes", + "int_n_cs_precedes" => "int_n_cs_precedes", + "int_p_sep_by_space" => "int_p_sep_by_space", + "int_n_sep_by_space" => "int_n_sep_by_space", + "int_p_sign_posn" => "int_p_sign_posn", + "int_n_sign_posn" => "int_n_sign_posn", # msgdef "yesexpr" => "yesexpr", @@ -166,21 +172,27 @@ if ($TYPE eq "numericdef") { if ($TYPE eq "monetdef") { %keys = ( - "int_curr_symbol" => "s", - "currency_symbol" => "s", - "mon_decimal_point" => "s", - "mon_thousands_sep" => "s", - "mon_grouping" => "ai", - "positive_sign" => "s", - "negative_sign" => "s", - "int_frac_digits" => "i", - "frac_digits" => "i", - "p_cs_precedes" => "i", - "p_sep_by_space" => "i", - "n_cs_precedes" => "i", - "n_sep_by_space" => "i", - "p_sign_posn" => "i", - "n_sign_posn" => "i" + "int_curr_symbol" => "s", + "currency_symbol" => "s", + "mon_decimal_point" => "s", + "mon_thousands_sep" => "s", + "mon_grouping" => "ai", + "positive_sign" => "s", + "negative_sign" => "s", + "int_frac_digits" => "i", + "frac_digits" => "i", + "p_cs_precedes" => "i", + "p_sep_by_space" => "i", + "n_cs_precedes" => "i", + "n_sep_by_space" => "i", + "p_sign_posn" => "i", + "n_sign_posn" => "i", + "int_p_cs_precedes" => "i", + "int_n_cs_precedes" => "i", + "int_p_sep_by_space" => "i", + "int_n_sep_by_space" => "i", + "int_p_sign_posn" => "i", + "int_n_sign_posn" => "i" ); get_fields(); print_fields(); From nobody Sat Dec 13 04:15:18 2025 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 4dStK34pDkz6KtgR for ; Sat, 13 Dec 2025 04:15: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dStK31Sspz4JgY for ; Sat, 13 Dec 2025 04:15:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599319; 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=c49foFWe/6aT9TOrth/xrE8+Y162fWAfPZZUJhexYhs=; b=XuqGwNMUPB/KYivosiAoB7ZhLeD23x9g8w0xXu0rw6fxJJkN1Cx21qCmJ/9A06UP+LLMv9 Fp/S++GlvWq4rpnaBNJzhlGYw53bCYkzyGhh/sDI8uLXQSNEaoVm+ZLHEk+zV0LK7DAC66 sizCdPucMZDzWY0dMX03EGfJUlI3HAVvI8Y6RD5KfGfoC8PpKhp0kHW5z7XRFTl42oewrN dcn+DeNHFXvOAqLJhhpoS+59BCdA2OLf2k54FK5CVuceWSGfnM+AEezqxib9TL2QhEwZvv cawz7oCZ2FdazDHt8YZQ+t4Rv9BQuBXOxFKjRa97AYtJ+Nrqq1wZB6z9b6LjFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599319; 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=c49foFWe/6aT9TOrth/xrE8+Y162fWAfPZZUJhexYhs=; b=Peqx9u9Z+OSYYW58Sn0j9hVO7lu1XRvPefs9q1EFQev7RjWdKltYUZCKLnOQp2uEf0BXo2 zzpGi145obN8z2YTO+x3ZxbNM5+SBIHJt8koD5p/r1s8IIXYA3jIZWgDU5FD6BWss+nwD2 BNnQICP1o1DPP3jvHtehCcPCVuR1qwgySDiTLKvfEUBAf56caHIib1vucZTY8A2uoz6KQo ZoF8lu9D9tM9r1btiQo5J+Ct7a97+3/y19W8LSpeJAwkZ3+iCIBRIPnU64QRm8rWRFuiBY bJTsYsu3jljm0XpBdMtKr3QT3OKoWu2NzICV9Jqwx/4yb8UDA67xWH5HdWj8OA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765599319; a=rsa-sha256; cv=none; b=OfESQY9+LCBgerZhCU5AS9a2GpYZ/efobHssbTz6pM3gsA9sLXN4aQHJDhkP4igjQC+qV2 XeOd0Ee2BOmPxPXnUuqwHEWNdaN1FIWVx3WVe1M1wVgguCbl4WHWEGOVr9BHkSej/7TGvG E6e0V/sC17M51BCTBxz8TAscp45VJw2Ua02EJ3DV3dl3XBebXTCqmuJpAg1paMJQbuzvNm 1nr17Z/oTrHuk+YEWDYFetwiveJESw+zoSbFTjHC0B3Zl927tRQRJovxyZiEWo1dBwxF25 WAVjv2d0MsGX6I/5YXz6b4ywguQCqzK2NR7/jkWM6aS9SwRZ6IGMq6mhYDA36Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dStK26t3fznyG for ; Sat, 13 Dec 2025 04:15:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 39762 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 04:15:18 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 5c8f96b36a3c - stable/15 - locale: make posix 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 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: 5c8f96b36a3c816f9f1b7781c7397ff73cee0a5d Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 04:15:18 +0000 Message-Id: <693ce856.39762.293dad9@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=5c8f96b36a3c816f9f1b7781c7397ff73cee0a5d commit 5c8f96b36a3c816f9f1b7781c7397ff73cee0a5d Author: Jose Luis Duran AuthorDate: 2025-12-06 12:20:17 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-13 04:13:31 +0000 locale: make posix Run make posix to generate monetary definition files with the international parameters missing from localeconv(3)'s lconv struct. Manually convert the "frozen" non-unicode locales under share/monetdef. Reviewed by: bapt MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53917 (cherry picked from commit 9df8243a2e0ab1ef027cbfbcb4105f5f0ce108e1) --- share/monetdef/be_BY.CP1131.src | 18 ++++++++++++++++++ share/monetdef/be_BY.ISO8859-5.src | 18 ++++++++++++++++++ share/monetdef/bg_BG.CP1251.src | 18 ++++++++++++++++++ share/monetdef/cs_CZ.ISO8859-2.src | 18 ++++++++++++++++++ share/monetdef/da_DK.ISO8859-15.src | 18 ++++++++++++++++++ share/monetdef/en_AU.US-ASCII.src | 18 ++++++++++++++++++ share/monetdef/en_CA.US-ASCII.src | 18 ++++++++++++++++++ share/monetdef/en_GB.ISO8859-15.src | 18 ++++++++++++++++++ share/monetdef/en_GB.US-ASCII.src | 18 ++++++++++++++++++ share/monetdef/en_HK.ISO8859-1.src | 18 ++++++++++++++++++ share/monetdef/en_IE.ISO8859-1.src | 18 ++++++++++++++++++ share/monetdef/en_IE.ISO8859-15.src | 18 ++++++++++++++++++ share/monetdef/en_NZ.US-ASCII.src | 18 ++++++++++++++++++ share/monetdef/en_SG.ISO8859-1.src | 18 ++++++++++++++++++ share/monetdef/en_US.US-ASCII.src | 18 ++++++++++++++++++ share/monetdef/en_ZA.ISO8859-15.src | 18 ++++++++++++++++++ share/monetdef/en_ZA.US-ASCII.src | 18 ++++++++++++++++++ share/monetdef/es_AR.ISO8859-1.src | 18 ++++++++++++++++++ share/monetdef/es_MX.ISO8859-1.src | 18 ++++++++++++++++++ share/monetdef/fr_CA.ISO8859-15.src | 18 ++++++++++++++++++ share/monetdef/fr_CH.ISO8859-15.src | 18 ++++++++++++++++++ share/monetdef/hi_IN.ISCII-DEV.src | 18 ++++++++++++++++++ share/monetdef/hr_HR.ISO8859-2.src | 18 ++++++++++++++++++ share/monetdef/hu_HU.ISO8859-2.src | 18 ++++++++++++++++++ share/monetdef/hy_AM.ARMSCII-8.src | 18 ++++++++++++++++++ share/monetdef/is_IS.ISO8859-15.src | 18 ++++++++++++++++++ share/monetdef/it_CH.ISO8859-15.src | 18 ++++++++++++++++++ share/monetdef/it_IT.ISO8859-15.src | 18 ++++++++++++++++++ share/monetdef/ja_JP.SJIS.src | 18 ++++++++++++++++++ share/monetdef/ja_JP.eucJP.src | 18 ++++++++++++++++++ share/monetdef/ko_KR.eucKR.src | 18 ++++++++++++++++++ share/monetdef/nb_NO.ISO8859-15.src | 18 ++++++++++++++++++ share/monetdef/nl_BE.ISO8859-1.src | 18 ++++++++++++++++++ share/monetdef/nl_BE.ISO8859-15.src | 18 ++++++++++++++++++ share/monetdef/nl_NL.ISO8859-1.src | 18 ++++++++++++++++++ share/monetdef/nl_NL.ISO8859-15.src | 18 ++++++++++++++++++ share/monetdef/nn_NO.ISO8859-15.src | 18 ++++++++++++++++++ share/monetdef/pl_PL.ISO8859-2.src | 18 ++++++++++++++++++ share/monetdef/pt_BR.ISO8859-1.src | 18 ++++++++++++++++++ share/monetdef/ro_RO.ISO8859-2.src | 18 ++++++++++++++++++ share/monetdef/ru_RU.CP866.src | 18 ++++++++++++++++++ share/monetdef/ru_RU.ISO8859-5.src | 18 ++++++++++++++++++ share/monetdef/ru_RU.KOI8-R.src | 18 ++++++++++++++++++ share/monetdef/sl_SI.ISO8859-2.src | 18 ++++++++++++++++++ share/monetdef/sr_RS.ISO8859-2.src | 18 ++++++++++++++++++ share/monetdef/sv_FI.ISO8859-1.src | 18 ++++++++++++++++++ share/monetdef/sv_FI.ISO8859-15.src | 18 ++++++++++++++++++ share/monetdef/sv_SE.ISO8859-15.src | 18 ++++++++++++++++++ share/monetdef/tr_TR.ISO8859-9.src | 18 ++++++++++++++++++ share/monetdef/uk_UA.CP1251.src | 18 ++++++++++++++++++ share/monetdef/uk_UA.ISO8859-5.src | 18 ++++++++++++++++++ share/monetdef/uk_UA.KOI8-U.src | 18 ++++++++++++++++++ share/monetdef/zh_CN.GB2312.src | 18 ++++++++++++++++++ share/monetdef/zh_CN.GBK.src | 18 ++++++++++++++++++ share/monetdef/zh_CN.eucCN.src | 18 ++++++++++++++++++ share/monetdef/zh_TW.Big5.src | 18 ++++++++++++++++++ share/monetdef_unicode/af_ZA.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/am_ET.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/ar_AE.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/ar_EG.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/ar_JO.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/ar_MA.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/ar_QA.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/ar_SA.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/be_BY.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/bg_BG.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/cs_CZ.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/da_DK.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/de_AT.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/en_AU.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/en_CA.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/en_GB.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/en_NZ.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/en_PH.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/en_SG.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/en_US.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/en_ZA.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/es_AR.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/es_CR.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/es_MX.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/fa_AF.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/fa_IR.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/fr_CA.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/fr_CH.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/fr_FR.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/ga_IE.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/he_IL.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/hi_IN.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/hu_HU.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/hy_AM.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/is_IS.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/it_CH.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/it_IT.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/ja_JP.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/kk_KZ.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/ko_KR.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/mn_MN.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/nl_NL.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/pl_PL.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/pt_BR.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/ro_RO.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/ru_RU.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/se_NO.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/sk_SK.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/sl_SI.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/sr_RS.UTF-8@latin.src | 18 ++++++++++++++++++ share/monetdef_unicode/sv_FI.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/sv_SE.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/tr_TR.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/uk_UA.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/zh_CN.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/zh_HK.UTF-8.src | 18 ++++++++++++++++++ share/monetdef_unicode/zh_TW.UTF-8.src | 18 ++++++++++++++++++ 113 files changed, 2034 insertions(+) diff --git a/share/monetdef/be_BY.CP1131.src b/share/monetdef/be_BY.CP1131.src index 04c7cddf5a1c..93e9f52c3724 100644 --- a/share/monetdef/be_BY.CP1131.src +++ b/share/monetdef/be_BY.CP1131.src @@ -47,4 +47,22 @@ Br # # n_sign_posn 1 +# +# int_p_cs_precedes +0 +# +# int_n_cs_precedes +0 +# +# int_p_sep_by_space +1 +# +# int_n_sep_by_space +1 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/be_BY.ISO8859-5.src b/share/monetdef/be_BY.ISO8859-5.src index 0d976d56952e..37d019b2ef54 100644 --- a/share/monetdef/be_BY.ISO8859-5.src +++ b/share/monetdef/be_BY.ISO8859-5.src @@ -47,4 +47,22 @@ Br # # n_sign_posn 1 +# +# int_p_cs_precedes +0 +# +# int_n_cs_precedes +0 +# +# int_p_sep_by_space +1 +# +# int_n_sep_by_space +1 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/bg_BG.CP1251.src b/share/monetdef/bg_BG.CP1251.src index 4ecb7ca69d54..cfbc126f81f5 100644 --- a/share/monetdef/bg_BG.CP1251.src +++ b/share/monetdef/bg_BG.CP1251.src @@ -47,4 +47,22 @@ BGN # # n_sign_posn 1 +# +# int_p_cs_precedes +0 +# +# int_n_cs_precedes +0 +# +# int_p_sep_by_space +1 +# +# int_n_sep_by_space +1 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/cs_CZ.ISO8859-2.src b/share/monetdef/cs_CZ.ISO8859-2.src index 1157dc869f09..22fc34d891af 100644 --- a/share/monetdef/cs_CZ.ISO8859-2.src +++ b/share/monetdef/cs_CZ.ISO8859-2.src @@ -47,4 +47,22 @@ K # # n_sign_posn 1 +# +# int_p_cs_precedes +0 +# +# int_n_cs_precedes +0 +# +# int_p_sep_by_space +1 +# +# int_n_sep_by_space +1 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/da_DK.ISO8859-15.src b/share/monetdef/da_DK.ISO8859-15.src index 3985d4b6b8d1..1e36d27f6223 100644 --- a/share/monetdef/da_DK.ISO8859-15.src +++ b/share/monetdef/da_DK.ISO8859-15.src @@ -47,4 +47,22 @@ kr. # # n_sign_posn 1 +# +# int_p_cs_precedes +0 +# +# int_n_cs_precedes +0 +# +# int_p_sep_by_space +1 +# +# int_n_sep_by_space +1 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/en_AU.US-ASCII.src b/share/monetdef/en_AU.US-ASCII.src index d575632f51a4..5e10a548553d 100644 --- a/share/monetdef/en_AU.US-ASCII.src +++ b/share/monetdef/en_AU.US-ASCII.src @@ -47,4 +47,22 @@ $ # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/en_CA.US-ASCII.src b/share/monetdef/en_CA.US-ASCII.src index c5ccb89feec3..279ab212b8f6 100644 --- a/share/monetdef/en_CA.US-ASCII.src +++ b/share/monetdef/en_CA.US-ASCII.src @@ -47,4 +47,22 @@ $ # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/en_GB.ISO8859-15.src b/share/monetdef/en_GB.ISO8859-15.src index 869ddf754511..e2c49f8c56bd 100644 --- a/share/monetdef/en_GB.ISO8859-15.src +++ b/share/monetdef/en_GB.ISO8859-15.src @@ -47,4 +47,22 @@ GBP # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/en_GB.US-ASCII.src b/share/monetdef/en_GB.US-ASCII.src index b9e88de73fa5..b203b7b97c91 100644 --- a/share/monetdef/en_GB.US-ASCII.src +++ b/share/monetdef/en_GB.US-ASCII.src @@ -47,4 +47,22 @@ GBP # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/en_HK.ISO8859-1.src b/share/monetdef/en_HK.ISO8859-1.src index faf104e580f9..644d893193a9 100644 --- a/share/monetdef/en_HK.ISO8859-1.src +++ b/share/monetdef/en_HK.ISO8859-1.src @@ -47,4 +47,22 @@ HK$ # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/en_IE.ISO8859-1.src b/share/monetdef/en_IE.ISO8859-1.src index 0f45ca65a815..0780bafc6b88 100644 --- a/share/monetdef/en_IE.ISO8859-1.src +++ b/share/monetdef/en_IE.ISO8859-1.src @@ -47,4 +47,22 @@ Eu # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/en_IE.ISO8859-15.src b/share/monetdef/en_IE.ISO8859-15.src index 81d1443a31fd..986a97e3e1bc 100644 --- a/share/monetdef/en_IE.ISO8859-15.src +++ b/share/monetdef/en_IE.ISO8859-15.src @@ -47,4 +47,22 @@ EUR # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/en_NZ.US-ASCII.src b/share/monetdef/en_NZ.US-ASCII.src index d1db38293199..26cc0d7eba98 100644 --- a/share/monetdef/en_NZ.US-ASCII.src +++ b/share/monetdef/en_NZ.US-ASCII.src @@ -47,4 +47,22 @@ $ # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/en_SG.ISO8859-1.src b/share/monetdef/en_SG.ISO8859-1.src index 6e8a6eb10fdc..4764a5116b0c 100644 --- a/share/monetdef/en_SG.ISO8859-1.src +++ b/share/monetdef/en_SG.ISO8859-1.src @@ -47,4 +47,22 @@ $ # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/en_US.US-ASCII.src b/share/monetdef/en_US.US-ASCII.src index 6fb1bf4e9649..a17374f4ae1c 100644 --- a/share/monetdef/en_US.US-ASCII.src +++ b/share/monetdef/en_US.US-ASCII.src @@ -47,4 +47,22 @@ $ # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/en_ZA.ISO8859-15.src b/share/monetdef/en_ZA.ISO8859-15.src index 9f2ba68c0953..944db959e1ea 100644 --- a/share/monetdef/en_ZA.ISO8859-15.src +++ b/share/monetdef/en_ZA.ISO8859-15.src @@ -47,4 +47,22 @@ R # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/en_ZA.US-ASCII.src b/share/monetdef/en_ZA.US-ASCII.src index 6756cfaff99e..044a4f3a69e3 100644 --- a/share/monetdef/en_ZA.US-ASCII.src +++ b/share/monetdef/en_ZA.US-ASCII.src @@ -47,4 +47,22 @@ R # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/es_AR.ISO8859-1.src b/share/monetdef/es_AR.ISO8859-1.src index 87c6f3462737..2566a212ed9e 100644 --- a/share/monetdef/es_AR.ISO8859-1.src +++ b/share/monetdef/es_AR.ISO8859-1.src @@ -47,4 +47,22 @@ $ # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +1 +# +# int_n_sep_by_space +1 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/es_MX.ISO8859-1.src b/share/monetdef/es_MX.ISO8859-1.src index c65dce11043a..1973748553a5 100644 --- a/share/monetdef/es_MX.ISO8859-1.src +++ b/share/monetdef/es_MX.ISO8859-1.src @@ -47,4 +47,22 @@ $ # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/fr_CA.ISO8859-15.src b/share/monetdef/fr_CA.ISO8859-15.src index 65c6b0727979..ff74b24d8207 100644 --- a/share/monetdef/fr_CA.ISO8859-15.src +++ b/share/monetdef/fr_CA.ISO8859-15.src @@ -47,4 +47,22 @@ $ # # n_sign_posn 1 +# +# int_p_cs_precedes +0 +# +# int_n_cs_precedes +0 +# +# int_p_sep_by_space +1 +# +# int_n_sep_by_space +1 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/fr_CH.ISO8859-15.src b/share/monetdef/fr_CH.ISO8859-15.src index 49261a06dc8f..82932939d304 100644 --- a/share/monetdef/fr_CH.ISO8859-15.src +++ b/share/monetdef/fr_CH.ISO8859-15.src @@ -47,4 +47,22 @@ CHF # # n_sign_posn 1 +# +# int_p_cs_precedes +0 +# +# int_n_cs_precedes +0 +# +# int_p_sep_by_space +1 +# +# int_n_sep_by_space +1 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/hi_IN.ISCII-DEV.src b/share/monetdef/hi_IN.ISCII-DEV.src index 0f58fd6e9461..035c0e5bd627 100644 --- a/share/monetdef/hi_IN.ISCII-DEV.src +++ b/share/monetdef/hi_IN.ISCII-DEV.src @@ -47,4 +47,22 @@ INR # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/hr_HR.ISO8859-2.src b/share/monetdef/hr_HR.ISO8859-2.src index 05a75c9b53e1..5ed037f3acfd 100644 --- a/share/monetdef/hr_HR.ISO8859-2.src +++ b/share/monetdef/hr_HR.ISO8859-2.src @@ -47,4 +47,22 @@ HRK # # n_sign_posn 1 +# +# int_p_cs_precedes +0 +# +# int_n_cs_precedes +0 +# +# int_p_sep_by_space +1 +# +# int_n_sep_by_space +1 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/hu_HU.ISO8859-2.src b/share/monetdef/hu_HU.ISO8859-2.src index a6550bb27031..ff9e968a6b8f 100644 --- a/share/monetdef/hu_HU.ISO8859-2.src +++ b/share/monetdef/hu_HU.ISO8859-2.src @@ -47,4 +47,22 @@ Ft # # n_sign_posn 1 +# +# int_p_cs_precedes +0 +# +# int_n_cs_precedes +0 +# +# int_p_sep_by_space +1 +# +# int_n_sep_by_space +1 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/hy_AM.ARMSCII-8.src b/share/monetdef/hy_AM.ARMSCII-8.src index 260d61e853fb..b3fbd859def8 100644 --- a/share/monetdef/hy_AM.ARMSCII-8.src +++ b/share/monetdef/hy_AM.ARMSCII-8.src @@ -47,4 +47,22 @@ AMD # # n_sign_posn 1 +# +# int_p_cs_precedes +0 +# +# int_n_cs_precedes +0 +# +# int_p_sep_by_space +1 +# +# int_n_sep_by_space +1 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/is_IS.ISO8859-15.src b/share/monetdef/is_IS.ISO8859-15.src index aa054fd1856a..e854f72000c9 100644 --- a/share/monetdef/is_IS.ISO8859-15.src +++ b/share/monetdef/is_IS.ISO8859-15.src @@ -47,4 +47,22 @@ ISK # # n_sign_posn 1 +# +# int_p_cs_precedes +0 +# +# int_n_cs_precedes +0 +# +# int_p_sep_by_space +1 +# +# int_n_sep_by_space +1 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/it_CH.ISO8859-15.src b/share/monetdef/it_CH.ISO8859-15.src index 527926f0dc2a..68f2fea6c0b9 100644 --- a/share/monetdef/it_CH.ISO8859-15.src +++ b/share/monetdef/it_CH.ISO8859-15.src @@ -47,4 +47,22 @@ CHF # # n_sign_posn 4 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +1 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +4 # EOF diff --git a/share/monetdef/it_IT.ISO8859-15.src b/share/monetdef/it_IT.ISO8859-15.src index 34f343226766..d804775866f0 100644 --- a/share/monetdef/it_IT.ISO8859-15.src +++ b/share/monetdef/it_IT.ISO8859-15.src @@ -47,4 +47,22 @@ EUR # # n_sign_posn 1 +# +# int_p_cs_precedes +0 +# +# int_n_cs_precedes +0 +# +# int_p_sep_by_space +1 +# +# int_n_sep_by_space +1 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/ja_JP.SJIS.src b/share/monetdef/ja_JP.SJIS.src index 25e84b0c7806..07f7fc765433 100644 --- a/share/monetdef/ja_JP.SJIS.src +++ b/share/monetdef/ja_JP.SJIS.src @@ -47,4 +47,22 @@ JPY # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/ja_JP.eucJP.src b/share/monetdef/ja_JP.eucJP.src index 332d772c1e79..41328a6cdeb8 100644 --- a/share/monetdef/ja_JP.eucJP.src +++ b/share/monetdef/ja_JP.eucJP.src @@ -47,4 +47,22 @@ JPY # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/ko_KR.eucKR.src b/share/monetdef/ko_KR.eucKR.src index 2305b17c3b1c..9f56738e2341 100644 --- a/share/monetdef/ko_KR.eucKR.src +++ b/share/monetdef/ko_KR.eucKR.src @@ -47,4 +47,22 @@ KRW # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# +# int_n_cs_precedes +1 +# +# int_p_sep_by_space +0 +# +# int_n_sep_by_space +0 +# +# int_p_sign_posn +1 +# +# int_n_sign_posn +1 # EOF diff --git a/share/monetdef/nb_NO.ISO8859-15.src b/share/monetdef/nb_NO.ISO8859-15.src index a6483cf4046e..6882efc62bcb 100644 --- a/share/monetdef/nb_NO.ISO8859-15.src +++ b/share/monetdef/nb_NO.ISO8859-15.src @@ -47,4 +47,22 @@ kr # # n_sign_posn 1 +# +# int_p_cs_precedes +1 +# *** 2202 LINES SKIPPED *** From nobody Sat Dec 13 04:15:20 2025 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 4dStK451Fgz6KtdW for ; Sat, 13 Dec 2025 04:15: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dStK412Qtz4Jgc for ; Sat, 13 Dec 2025 04:15:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599320; 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=SP+t2bq1CSN6D9SA23+G2IC31L2kiQk8Rqe3L4aMhtE=; b=lofm3uqejgeUmX841dLVUWw933E6MrcujK+fGJxzca+f1uJZAKabU/t4B9T4J9mst7wHzh VVpzL80F3Lvm94LP0862+hHCxLhuSSVaRFmJA8cWFjB2uOM9iGZUuDm52MW9PsYQgMhgrR sHzxni4eKVsjWJqoV9DmdgbUm+ca30UmHQwxWy08pjJ/izodrpYz3ddJBCUZE4fSJd2NBm Yhyg7GC6vdszp9FM9aZsGzqyqd67RuooUpftYiTnL7ASknZ3zjkP+57IYBgmFREklFzoNH GF39LyJndP3hU9kuYJQ8XINuFIeThhOQT1kU1HKueKjYwW0RlDuHFWfjKSePVg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599320; 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=SP+t2bq1CSN6D9SA23+G2IC31L2kiQk8Rqe3L4aMhtE=; b=nw/5c45c90euI/6UuotoeHzlYNPtKI6BDEfCVgFiCts0tLM+/mf6K52yZvtydfMRHjXKdz wqlLlNAt6BJmcqR5MCril08yJbcFjTX92zv2HV4PhF/FuyEU+Hz0d7qKL43KBmMdjEIcox sORxM7KekUlLaQUuZ5EPpe63HUNvZ3gQ7cYtbGTQlsdyZGYSpM+G1iCfikhq5Qmd74A3CR PTV1qVD2jzcLDDvUXL7hOt9qbHPEaCnQCpyHhaHCloJGKOpyuO+XOMGK91RJ9GPrjW5ykt ctChZyWi6dFT97JSqovDkA/eTBq0db/TXAoClM7Zm+HKYVBI4aVpLYQQQ6cJeA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765599320; a=rsa-sha256; cv=none; b=W2n8N3nvmZJI1sk2SUUxr6EZYdWqHy1cjGSU1+dwG8+8BBP29pBY8iPeGswybLL7AsfeL+ 2wPxAwblfmyyEY0OauuVAol5CICfcy9XjUSGiP0t13PTn3lOQpDhIY0WTUD3mjCErU5x5P 0SChIhutLQuFIHOuQYChF+OtEENSETxWNip+q/pXFeRV9jhtGBitrZWE7qtR+0gguy0obZ CvXXMY/fimE+9xyQwTfeZD6KvjXEjbffOWx/KV6JuAYPMjbkjAl/myHSl8tvqPZCheJZy0 dXAJi8Irtc2AcJgJt4r0cxSfe+3W7i8g0t+IvKJNQSAUzQJrsawpmiUdg4zBhQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dStK40Rstznvk for ; Sat, 13 Dec 2025 04:15:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3a704 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 04:15:20 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: e1ab892e25f1 - stable/15 - cldr2def.pl: Fix make install 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 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: e1ab892e25f10271532719b65aa4e200e7cdba76 Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 04:15:20 +0000 Message-Id: <693ce858.3a704.682f90fc@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=e1ab892e25f10271532719b65aa4e200e7cdba76 commit e1ab892e25f10271532719b65aa4e200e7cdba76 Author: Jose Luis Duran AuthorDate: 2025-12-06 12:20:18 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-13 04:13:44 +0000 cldr2def.pl: Fix make install Follow up on 86c71e97d19f ("pkgbase: locales: Also tag the files dir"), and adapt cldr2def.pl script in order to fix make install. Reviewed by: bapt MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53961 (cherry picked from commit 95f37aa3e51ce46821059b2c9dbb02fef5c4bec5) --- tools/tools/locale/tools/cldr2def.pl | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tools/tools/locale/tools/cldr2def.pl b/tools/tools/locale/tools/cldr2def.pl index 998e176de918..f0aaf07c02d9 100755 --- a/tools/tools/locale/tools/cldr2def.pl +++ b/tools/tools/locale/tools/cldr2def.pl @@ -923,6 +923,7 @@ sub make_makefile { ".for f t in \${LOCALES_MAPPED}\n" . "FILES+=\t\$t.LC_COLLATE\n" . "FILESDIR_\$t.LC_COLLATE=\t\${LOCALEDIR}/\$t\n" . + "FILESDIR_\$t.LC_COLLATEPACKAGE=\tlocales\n" . "\$t.LC_COLLATE: \${.CURDIR}/\$f.src\n" . "\tlocaledef \${LOCALEDEF_ENDIAN} -D -U " . "-i \${.ALLSRC} \\\n" . @@ -1102,6 +1103,7 @@ SYMLINKS+= ../\$f/\${FILESNAME} \\ .for f in \${LOCALES} FILESDIR_\${f}.${SRCOUT2}= \${LOCALEDIR}/\${f} +FILESDIR_\${f}.${SRCOUT2}PACKAGE= locales .endfor ${SRCOUT3}.include From nobody Sat Dec 13 04:15:15 2025 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 4dStK45JSQz6Ktls for ; Sat, 13 Dec 2025 04:15: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dStJz2d1Rz4Jd3 for ; Sat, 13 Dec 2025 04:15:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599315; 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=MoKfsG/yUMbkxAqs+gGpG5XcUmN8njc4J3UaIetBUcI=; b=Pp+/avok6cI/wehAZdTPCbXPQNY6u5b/jWedkB1403i0vMBj+2zoQPpkjZYDF4cmgg05HV sC2ttU4QDjmv86Tgd2rUO36u5+6RE2OGN23NUQemog4RBrWmdr77caC7cYnjP8ymlCxqqN iQz3xSWhvxYf8Thhv4VJXoJ7h5ElRzRnMqt5CUKbLh42fSRR3cA5GHr2HG9+IUwVxc47B2 iiXMnqHKxau5ZF2ZGrrM008y0dGSBFUOXGzQNpU70Ct6WJt1GEC2so/KlQ5xpyTa+sIago Rlx9aAP7YhPf8DiWA73E7nx8xQMNEmrQhBeIZ8dyGegBTtUnkqqJDH61Aimx6w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599315; 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=MoKfsG/yUMbkxAqs+gGpG5XcUmN8njc4J3UaIetBUcI=; b=PT+ftz+8ayeESDRoWRygmSR5UQi2+hG8to4OVgRpkPO6ffyL++eSeY6iVoHrT2rz0+anTN adrcDsZxY3x2OZ0DO1vFY61kYgAYaTeh1N4oCQvrupAHeDQ/t2KaSC+4vVDCR7bNowSYe+ KR/OEaruKnPH77t3DV0VZDo0q65UHbyrNf6jBodOmgUJuPHeKyO9J1JZjoKXcVTJA0wZkX YS8EMyY7qLF2dipuk3lfzf4je+WTL2C0zPDwiSashawHFnwDeyJMSL3NtDgNZkfq1T8H2B 0FtXCSkp8BWayJi9XKZZ4Mexb8PRG9qoH91hKa299DnUNUZdB1ERs6oPUsUrbg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765599315; a=rsa-sha256; cv=none; b=lPyYuSsRMMsUtusmI3XKyUSeed5Ze/0qqnRqMJzezwB7hzjR/1Z3KTp6nXRnCtOHp0FYdM uO42yTXxM60WaMf7Rz8s5t/mjSKy0avrpkzeTMr6ToQOB2yZUoZ9Q3YU7XL5MYU+E7VeIz WBnpF7oKBY/ADUZ2kG/gWhD1aa+k/7ESc7UfHF2ZwERaChFwZ9wV/AVodzz2WwoJ09vVIN lVH3SZcJOjh4rrpWss4ZFE3wnIazkiFEdRHHqKegS+nGTb7wA0MdEwH9rX7B/XdnwKpumE us3OfJ/H+GvScrHioofSeYHQfejN+nxKJNr58wOJFo47wOAgF0RjfI5Va3ZB0Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dStJz220Pznvf for ; Sat, 13 Dec 2025 04:15:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 387e5 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 04:15:15 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 622351189897 - stable/15 - cldr2def.pl: Cleanup white space 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 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: 622351189897962251981be4dc6eec7a09d18263 Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 04:15:15 +0000 Message-Id: <693ce853.387e5.1f39c22c@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=622351189897962251981be4dc6eec7a09d18263 commit 622351189897962251981be4dc6eec7a09d18263 Author: Jose Luis Duran AuthorDate: 2025-12-06 12:20:15 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-13 04:12:36 +0000 cldr2def.pl: Cleanup white space No functional change intended. Reviewed by: bapt MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53914 (cherry picked from commit 09701dc19cf0d6f1a41abcae89c00122546498fb) --- tools/tools/locale/tools/cldr2def.pl | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tools/tools/locale/tools/cldr2def.pl b/tools/tools/locale/tools/cldr2def.pl index e59e6d3b13a1..ea49c21300c4 100755 --- a/tools/tools/locale/tools/cldr2def.pl +++ b/tools/tools/locale/tools/cldr2def.pl @@ -383,9 +383,9 @@ sub resolve_enc_addition { sub get_languages { my %data = get_xmldata($ETCDIR); - %languages = %{$data{L}}; - %translations = %{$data{T}}; - %alternativemonths = %{$data{AM}}; + %languages = %{$data{L}}; + %translations = %{$data{T}}; + %alternativemonths = %{$data{AM}}; } sub transform_ctypes { @@ -826,7 +826,7 @@ EOF # $rv = translate($enc, $cm) # if (!defined $rv); if (!defined $rv) { - print STDERR + print STDERR "Could not convert $k ($cm) from $DEFENCODING to $enc\n"; $okay = 0; next; @@ -854,7 +854,7 @@ EOF # $cm) # if (!defined $rv); if (!defined $rv) { - print STDERR + print STDERR "Could not convert $k ($cm) from $DEFENCODING to $enc\n"; $okay = 0; next; From nobody Sat Dec 13 04:15:21 2025 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 4dStK60V2Lz6KtdZ for ; Sat, 13 Dec 2025 04:15: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dStK52n15z4Jll for ; Sat, 13 Dec 2025 04:15:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599321; 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=fJJghzaAp3fqeqgyGbxfzCm0G4n6kCUhtp+A/6sL5bo=; b=c8Tis0dmtpbq9E4r5VW3hOL94Akb4Ff+5meSnOUGwk6wMjoltlpBTaflBu7t0UmnON11ph ci4dbL6fcsxPioFn7aCu+HGulfhgwGy7nMQxZPG0VdP6101uKhQO8s3BLgGlhTvUq9lWb4 ith3GZE5oazq1yTS5tiFhpv2xmEaRlgAgSYIueKm42iseqbp6YpMDztzC0YkIIgkRsH1pD XqxFrzka6BJrK/pl2qGgaQ6OWotkGKAOWh2/UgP47lVcZKIlYtZ4E4qVxdcidL0goMqu6r yXKgNE+mvumSI8iXCcL4FQzFjlzlD96cXtzX52L9J20Yfp0P0DcnurZFuazQtg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599321; 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=fJJghzaAp3fqeqgyGbxfzCm0G4n6kCUhtp+A/6sL5bo=; b=Cujen+Eo5U/bEjJHId3EGwfsCOxILxQoWMhSteCae4897qHRFt4DwAyoj4dv8ceWTIPei1 0O0hLmVB+yfyLLC8FawlI0OdWEf/TbEW/PlQaCez+bI7LJNFPrlUSm/guQs7Dyjts1wMXD +TyknaM0sT9BKoZyldLMDsu94ZjedUa4Kc5mGq9cqH3fDURxedywRgscuJQSdiS9O5Zss3 EUEx8k66gq84vL1T9RYQWorIi+AacW1O7fQc89096PP8eWWiWPblaik+DXUFYbEQwG3sth gKVRho+alFTdawzXOMkOD8vHz+0T3WCXgMahKwhvfl44O2WuD3QsnoY3o0NZ2w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765599321; a=rsa-sha256; cv=none; b=NxFT6lC3V9IMCJXahkC4P7hbTp/lDFCpgyRtZSh+m+7Th+mU86CAmzmR05HXwJxkhchjrG 6myoZ6GSR9e6AT/nuy2g6FqwWI0Dvc6Nl9erI7OuyUnTRpYHdjdOc9lTroXTZsKYgMBwe4 uCfxo7MIcM9lSWrYkW8XLvwHpwFJpakfoHUUH85HDQRxFUZimejgCv9NlShrdojoHz+/xh Z/cR8Z7qraYMOO/9d4vcUc2bT5/j2lUcJcSATRBxQ52dvV7i6vIVDntcg4dkfU0E++5sQD ImcKBxGJucKR2rku2orMDiFMnlh+TG6maQc9xuz+COurDAIfq0pzU2yyNKt9uA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dStK519Tzznl1 for ; Sat, 13 Dec 2025 04:15:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3aa89 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 04:15:21 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: bd37a9b1282c - stable/15 - locale: make install 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 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: bd37a9b1282c10ec8ff36e73c7ed3eaa3fcf2876 Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 04:15:21 +0000 Message-Id: <693ce859.3aa89.15bdd672@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=bd37a9b1282c10ec8ff36e73c7ed3eaa3fcf2876 commit bd37a9b1282c10ec8ff36e73c7ed3eaa3fcf2876 Author: Jose Luis Duran AuthorDate: 2025-12-06 12:20:18 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-13 04:13:56 +0000 locale: make install Reviewed by: bapt MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53962 (cherry picked from commit 36cfa8093d25f8a5b598bd8ae74d7cbaafdc1879) --- share/colldef_unicode/Makefile | 2 ++ share/monetdef_unicode/Makefile | 1 + share/msgdef_unicode/Makefile | 1 + share/numericdef_unicode/Makefile | 1 + 4 files changed, 5 insertions(+) diff --git a/share/colldef_unicode/Makefile b/share/colldef_unicode/Makefile index 464f631fe309..16fd2fc92e34 100644 --- a/share/colldef_unicode/Makefile +++ b/share/colldef_unicode/Makefile @@ -114,11 +114,13 @@ SYMLINKS+= ../$f/${FILESNAME} \ .for f in ${LOCALES} FILESDIR_${f}.LC_COLLATE= ${LOCALEDIR}/${f} +FILESDIR_${f}.LC_COLLATEPACKAGE= locales .endfor .for f t in ${LOCALES_MAPPED} FILES+= $t.LC_COLLATE FILESDIR_$t.LC_COLLATE= ${LOCALEDIR}/$t +FILESDIR_$t.LC_COLLATEPACKAGE= locales $t.LC_COLLATE: ${.CURDIR}/$f.src localedef ${LOCALEDEF_ENDIAN} -D -U -i ${.ALLSRC} \ -V ${CLDR_VERSION} \ diff --git a/share/monetdef_unicode/Makefile b/share/monetdef_unicode/Makefile index c19c4ca07f02..ecc19b9f5ff3 100644 --- a/share/monetdef_unicode/Makefile +++ b/share/monetdef_unicode/Makefile @@ -106,6 +106,7 @@ SYMLINKS+= ../$f/${FILESNAME} \ .for f in ${LOCALES} FILESDIR_${f}.out= ${LOCALEDIR}/${f} +FILESDIR_${f}.outPACKAGE= locales .endfor .include diff --git a/share/msgdef_unicode/Makefile b/share/msgdef_unicode/Makefile index 8d966b73c15c..45d51c009553 100644 --- a/share/msgdef_unicode/Makefile +++ b/share/msgdef_unicode/Makefile @@ -106,6 +106,7 @@ SYMLINKS+= ../$f/${FILESNAME} \ .for f in ${LOCALES} FILESDIR_${f}.out= ${LOCALEDIR}/${f} +FILESDIR_${f}.outPACKAGE= locales .endfor .include diff --git a/share/numericdef_unicode/Makefile b/share/numericdef_unicode/Makefile index 6b0d6b52a13d..7e81f9309899 100644 --- a/share/numericdef_unicode/Makefile +++ b/share/numericdef_unicode/Makefile @@ -106,6 +106,7 @@ SYMLINKS+= ../$f/${FILESNAME} \ .for f in ${LOCALES} FILESDIR_${f}.out= ${LOCALEDIR}/${f} +FILESDIR_${f}.outPACKAGE= locales .endfor .include From nobody Sat Dec 13 04:15:22 2025 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 4dStK65Sshz6KtJX for ; Sat, 13 Dec 2025 04:15: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dStK62S16z4JZV for ; Sat, 13 Dec 2025 04:15:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599322; 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=JmMuErVjOjIBu6TXVFS1vrcOD3ZwcUTBhf6BJEhwRM0=; b=O2CUYP0IMEiq6kLnVdd9X1diG2ABwxYDJxA/vJ7NUIcuUmEkpQoF7J3p4B+OIg13WK0LmZ N9LX9kQBxWHMFM6vavDxVdCiu+e8ZLwkBWzPTmmd/d//UZN9onEj9nTecUfdntvEahkkfl PACmVOqYZtUzwSBvKAaaTn1MWUge+378vT/OA1hY1XEsO5+UU3fVfydTCDB7eFvQu41d6U UjyXgngBGPtr9b7DdAtJT3ny86T/A3lWoD6AA2wwQFEvNPcAeIImesQYKpwZya8cK+NZou 9/Gam+nvy0qc54Lfq+LhluW7EcmWlEfYT3TuRPeDokZTKpWsU7M7yrUDxj0T5w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599322; 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=JmMuErVjOjIBu6TXVFS1vrcOD3ZwcUTBhf6BJEhwRM0=; b=V62xOWkNW3VM7ax3OstsZXhUfWLf1KhZjh9VLEbObQ123v5wxdS70kemMi2+FuPcH1tikV GKDr4Nw92lMR9+Yc556+7Vh/XHTdfHKQZDaJC3j9OkZOS/aK7VtygLy8ZGHU5/4X4mYT9j 3vsMar+golafE/opHm7IWQcpjt/xewoBZnK3ry2v+BrjXAmimrPggonRrQH2i203ZcBQqn kGd8RDqdx/9ytds0EaLLyf/Sd9v5eyLfLcgWJuPL/CrQxDp0vEddZ0KNAB4xn2PMvdubE9 CN+45LWHt0Zvn1SnxsUfPqFUNx3S9vEf1pGNGtE4XSzNmE7rOE+1Q8tdwAg4Jw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765599322; a=rsa-sha256; cv=none; b=nREOqz8//pi2G3iQ92DHgvvCL9xTLNS0fW4nmHusjHmVil9HGxWOq3C7wrkJNjlxN1kNeF w9B4CPj7beEH6VVsDlfQ1Dl04FQj5S8wRHM1UI4yXWM5igXUrs/SJVG/EmbYkWTpj90zHp XYcrBtjgotQoY/8Nei0C/vYm+4aZFGtin4vMMN7TZPxv3jrQW4jAeFidc+4L0ctJMS9XCm R5CISq0QDHS3oSSPwWeve3ic689/y2L5JAEFjLTogp3I3nZpDdyhlbD/PiaAXQ1jdFwtao MHD1VvxZPInUbYOPh6bbRGZ8hH5n3RR2jAoCvDe5B/ufSgMOdBA0aOCQcPKHAA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dStK61wBvznh9 for ; Sat, 13 Dec 2025 04:15:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3983c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 04:15:22 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 438c3249fb61 - stable/15 - locale: tools: Make finalize idempotent 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 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: 438c3249fb612d1d264bb122ec70b5a66b462acd Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 04:15:22 +0000 Message-Id: <693ce85a.3983c.412f43a3@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=438c3249fb612d1d264bb122ec70b5a66b462acd commit 438c3249fb612d1d264bb122ec70b5a66b462acd Author: Jose Luis Duran AuthorDate: 2025-12-06 12:20:19 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-13 04:14:07 +0000 locale: tools: Make finalize idempotent The finalize script renames source files with 3 components in their name into names with two components with an @modifier, in the process. Running the script for a second time without cleaning will strip the @modifier from the files, producing invalid Makefiles and unusable locales. Prevent this by adding a guard at the beginning of the script. Also, use a sub-shell for directory changes to avoid working directory issues. Reviewed by: bapt MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53981 (cherry picked from commit 934364da7fc8cd3ba4d030d0478163b41dda1b37) --- tools/tools/locale/tools/finalize | 115 ++++++++++++++++++++------------------ 1 file changed, 60 insertions(+), 55 deletions(-) diff --git a/tools/tools/locale/tools/finalize b/tools/tools/locale/tools/finalize index 23afaddafa9b..b4dc38360451 100755 --- a/tools/tools/locale/tools/finalize +++ b/tools/tools/locale/tools/finalize @@ -69,64 +69,69 @@ AWKCMD="/## PLACEHOLDER/ { \ while ( getline line < \"${TEMP4}\" ) {print line} } \ !/## / { print \$0 }" -# Rename the sources with 3 components name into the POSIX version of the name using @modifier -mkdir -p $old $new -cd $old -pwd -for i in *_*_*.*.src; do - if [ "$i" = "*_*_*.*.src" ]; then - break - fi - oldname=${i%.*} - nname=`echo $oldname | awk '{ split($0, a, "_"); print a[1]"_"a[3]"@"a[2];} '` - mv -f ${oldname}.src ${nname}.src - sed -i '' -e "s/${oldname}/${nname}/g" Makefile -done - -# For variable without @modifier ambiguity do not keep the @modifier -for i in *@*.src; do - if [ "$i" = "*@*.src" ]; then - break - fi - oldname=${i%.*} - shortname=${oldname%@*} - if [ $(ls ${shortname}@* | wc -l) -eq 1 ] ; then - mv -f $i ${shortname}.src - sed -i '' -e "s/${oldname}/${shortname}/g" Makefile - fi -done - -# Rename the modifiers into non abbreviated version -for i in *@Latn.src; do - if [ "$i" = "*@Latn.src" ]; then - break - fi - mv -f ${i} ${i%@*}@latin.src - sed -i '' -e "s/${i%.*}/${i%@*}@latin/g" Makefile -done - -for i in *@Cyrl.src; do - if [ "$i" = "*@Cyrl.src" ]; then - break - fi - mv -f ${i} ${i%@*}@cyrillic.src - sed -i '' -e "s/${i%.*}/${i%@*}@cyrillic/g" Makefile -done - -# On locales with multiple modifiers rename the "default" version without the @modifier -default_locales="sr_RS@cyrillic" -for i in ${default_locales}; do - localename=${i%@*} - mod=${i#*@} - for l in ${localename}.*@${mod}.src; do - if [ "$l" = "${localename}.*@${mod}.src" ]; then +if ! find "$old" -name "*_*_*.*.src" -type f -print -quit | grep -q .; then + exit +fi + +mkdir -p $new +( + cd $old + + # Rename the sources with 3 components name into the POSIX version of the name using @modifier + for i in *_*_*.*.src; do + if [ "$i" = "*_*_*.*.src" ]; then + break + fi + oldname=${i%.*} + nname=`echo $oldname | awk '{ split($0, a, "_"); print a[1]"_"a[3]"@"a[2];} '` + mv -f ${oldname}.src ${nname}.src + sed -i '' -e "s/${oldname}/${nname}/g" Makefile + done + + # For variable without @modifier ambiguity do not keep the @modifier + for i in *@*.src; do + if [ "$i" = "*@*.src" ]; then + break + fi + oldname=${i%.*} + shortname=${oldname%@*} + if [ $(ls ${shortname}@* | wc -l) -eq 1 ] ; then + mv -f $i ${shortname}.src + sed -i '' -e "s/${oldname}/${shortname}/g" Makefile + fi + done + + # Rename the modifiers into non abbreviated version + for i in *@Latn.src; do + if [ "$i" = "*@Latn.src" ]; then break fi - mv -f ${l} ${l%@*}.src - sed -i '' -e "s/${l%.*}/${l%@*}/g" Makefile + mv -f ${i} ${i%@*}@latin.src + sed -i '' -e "s/${i%.*}/${i%@*}@latin/g" Makefile + done + + for i in *@Cyrl.src; do + if [ "$i" = "*@Cyrl.src" ]; then + break + fi + mv -f ${i} ${i%@*}@cyrillic.src + sed -i '' -e "s/${i%.*}/${i%@*}@cyrillic/g" Makefile + done + + # On locales with multiple modifiers rename the "default" version without the @modifier + default_locales="sr_RS@cyrillic" + for i in ${default_locales}; do + localename=${i%@*} + mod=${i#*@} + for l in ${localename}.*@${mod}.src; do + if [ "$l" = "${localename}.*@${mod}.src" ]; then + break + fi + mv -f ${l} ${l%@*}.src + sed -i '' -e "s/${l%.*}/${l%@*}/g" Makefile + done done -done -cd - +) grep '^LOCALES+' ${old}/Makefile > ${TEMP} From nobody Sat Dec 13 04:15:17 2025 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 4dStK71RWnz6KtJY for ; Sat, 13 Dec 2025 04:15: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dStK16bdcz4JdB for ; Sat, 13 Dec 2025 04:15:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599318; 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=lo96ArEQ3kyQst1q6vTqTjIw0mS419sc1TRX4bLK53o=; b=QMamoGK2Q2jMDmAMr4IE8/8aRDx6pDej/aRoPHoMaXw3L0Ilfh/j9Qaan9JRGe/xX+Zj5p OuAiKF0x/RBMpqwHpNPZehNTMvN3zm4eL9T/6JQbYB24IxNujeNuolsgf9RhFkwBvxq6n4 Bm7Iz1IJAnLpQx6oL5z9pfG9RdnXMANOdD8DpLTSSsfEm/S7jP1k9gXC7aIsbSUQctmsLl izF9NeaWtJm1NB3kHxP2C0Z4tVN9ysBhxhct8okiGATZHYgJRRDHhZtFlvdV+B2UeHc6F8 AsY332AnO7kdigY7qXHH75dQFxaPugR+V1GiVS/G0b194wRlsxmybnLqiGAlsQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599318; 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=lo96ArEQ3kyQst1q6vTqTjIw0mS419sc1TRX4bLK53o=; b=IFNCeum4jaqIdqBcrl2/Rz+/gEACU48byVb/KIkljnrMt4yeC8fEa/b01Cz+ZkOe3hVZRb 42uYB/W3d6yndqpDNSvLBTaGZOXfmzFrKT7SBJVrPIixUW0TYcKHnUBlq6xQWC1dBX3x5u MtSFl/mcwPe9sDC5J6+Bw3ayRTmeUxKacdatJSXqQ9Xe2gm0CVuND693WuBNzqsjMCHvgR FrmECeKbA7QGCmvKQAW3fdL74wZ9U1sXMxO7gkPk1XJhUMQTUj4hRr7PWTOVJK4qvXaFCA ixAE5LXEMKhrp5zS4p5oBrYzpEcNfzsAlchV9jSRPSGuY9tS0lcuARPbOYuDrw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765599318; a=rsa-sha256; cv=none; b=vUVto3UHM+1agbWPf+tKNqzhQ2E7cPiK6R+CWf4cRs2RafutFOxXKwflZiFHf+32y0LW9g 1VPMHt7DAy24QpdWm8rSH6YWkgB13yMgk0fLzNP3I4rh0H3STwkEsmEQKwzZnMKH4ENy71 t91l602aIrMwxZCkMmIvUFflbInqRwkx7lMUZ8kkCNS9QD7n5MS2ZNMoZke3x8y2szWi5a 1qxto9G7SA7trvss3UbSJuvIpbp9RIGk/e5Jxln1+CwabxidV/gOPosZxZ1E7N4C/wSHLF jKSkc701CPlfJqR7DcC5qY5ZnkLcN5Z2EQrgamF1q7hhEiLPw28k1wsjoVTV3g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dStK15yVzznks for ; Sat, 13 Dec 2025 04:15:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 38df4 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 04:15:17 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: ca92ab68b46d - stable/15 - locale: make build to bump widths.txt 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 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: ca92ab68b46d1b6dc4b903b6ede4c70582d693ad Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 04:15:17 +0000 Message-Id: <693ce855.38df4.36d06ab7@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=ca92ab68b46d1b6dc4b903b6ede4c70582d693ad commit ca92ab68b46d1b6dc4b903b6ede4c70582d693ad Author: Jose Luis Duran AuthorDate: 2025-12-06 12:20:16 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-13 04:13:17 +0000 locale: make build to bump widths.txt Reviewed by: bapt MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53916 (cherry picked from commit 30aa5507f349f761770c5cf49989d6cf7eb3498d) --- tools/tools/locale/etc/final-maps/map.UTF-8 | 2 +- tools/tools/locale/etc/final-maps/widths.txt | 190 ++++++++++++++++++++++++++- 2 files changed, 190 insertions(+), 2 deletions(-) diff --git a/tools/tools/locale/etc/final-maps/map.UTF-8 b/tools/tools/locale/etc/final-maps/map.UTF-8 index 6c3431c99b90..7d2c7049f961 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-2024 Unicode, Inc. +# Copyright © 1991-2025 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 3d0535be3884..06f8e9598573 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.9.0. +# utf8proc 2.10.0. # ----------------------------------------------------------------------------- WIDTH 0 @@ -1422,6 +1422,14 @@ WIDTH 2 2 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 2 2 2 @@ -1435,6 +1443,12 @@ WIDTH 2 2 2 + 2 + 2 + 2 + 2 + 2 + 2 2 2 2 @@ -9436,6 +9450,70 @@ 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 @@ -52482,6 +52560,116 @@ WIDTH 0 0 0 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 0 0 0 From nobody Sat Dec 13 04:15:23 2025 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 4dStK807Jvz6Ktlw for ; Sat, 13 Dec 2025 04:15: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dStK7386kz4JZg for ; Sat, 13 Dec 2025 04:15:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599323; 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=zWFQ38jG6fYl8yput4XTjuhBuYbN8JJOM5mVTlBznDI=; b=A3uJu5rB6gRztRJU+CwT97o83iogSgITu5EHLhfEcVkS9P1QgGWTasIN/g0Ya3S/oF1dk5 5sYTZNzEU6sW+xEmxP0TWyum3cKgQUdgISVMLBFIOv2Hz9y6ekGdtL+4siZvAoiJoB0MiP twKdn9icx0tvLrauhB3DSUWf/dOn/juK4XSH/xk+1uAU0SBcbEbOHB8hCX7ixnDt2f/olH YjNjnhcHyYbYX5fcbGHmtY07JsgYIJveR72I8eDaQH4vH8AwV1EY6Jo+h4Q0jBvn4crIaI IM9JIVmnIN3W6HMvfeE46SY/Ib5RG33kCqrJbmB6Ze9MtDdU+fBs6iq/j0/aBg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599323; 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=zWFQ38jG6fYl8yput4XTjuhBuYbN8JJOM5mVTlBznDI=; b=TEiyE/cIQl5LoWAIhld52X7j2ihSuL4sA3G1d80O5LmrVxogaHGgLNTzKzpF2lKwfy3jvU U4SlLL+KY4sxWXoPYMP9j3rX2VsJIXVVb6U/cPTOAJKLUqtXoDEQU+uK9CWlNm5UNQrqCX uOqi4KzTpjwMlKpLwOPkqvnGOIFw2uAidd22NUjTJVteLV7GpF5YJDnLT2+hv4C1AsKSAf fZJ3yeGM2UAdPFxTlQDTXIqi8gddP/HbDltc+P76u5Yl0UV/HQIjDLK76brTEmlH6qKAon Z4o+bytA19Cd2Bk0nqgqApLTb6l9KizUDPC8JWhZOh8EkbH+faGAs+uOYcey2w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765599323; a=rsa-sha256; cv=none; b=cfk2BH8npZaoGlXRBsB0sbF4AKjNZQm36NEHIcaeGwx8+Hd2oXWpw01Ixt4FWDpD8jVxvb xKEYCmZJZ04+uN/gdeIWbCKK2EKS05VZP+CztJG4LUufmyOsOep5HNjIw8W/wqnvHWp0go tyNPDlBmuZDqE9tJsaYNu3Yfneuce49ibYUJzUlS44JSObffBVp3MrLlL/dQ1WSXhdSzV4 DoeHva2+GtIBF6ZRUFTx3SuaY+yBOD8e3xKU+GCpRiE/aJQx5HqGJNVBejNin76W/fXHGI qDRaIaaE184OX3YXz3z3oa+VhSlMwJmYOiYLBNmKcSksb8/c7/SYirpwcBza5A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dStK72f7Lzmy8 for ; Sat, 13 Dec 2025 04:15:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3a708 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 04:15:23 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 6e2164b36b24 - stable/15 - locale: Update to UCD 17.0.0 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 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: 6e2164b36b2473f0a819e43d0b308e5f59d4c11e Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 04:15:23 +0000 Message-Id: <693ce85b.3a708.15a75f6c@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=6e2164b36b2473f0a819e43d0b308e5f59d4c11e commit 6e2164b36b2473f0a819e43d0b308e5f59d4c11e Author: Jose Luis Duran AuthorDate: 2025-12-06 12:20:19 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-13 04:14:19 +0000 locale: Update to UCD 17.0.0 Starting with Unicode 17.0.0, the zipped versions of the data files are only published in https://www.unicode.org/Public//ucd/ https://www.unicode.org/Public/zipped/ReadMe.txt Reviewed by: bapt MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53982 (cherry picked from commit 13ae4904ad7d4677a8d894c91362f2d2479965b6) --- tools/tools/locale/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/tools/locale/Makefile b/tools/tools/locale/Makefile index b49c90e691be..3428cdad93dd 100644 --- a/tools/tools/locale/Makefile +++ b/tools/tools/locale/Makefile @@ -8,7 +8,7 @@ # CLDRVERSION= 45.0 -UCDVERSION= 15.0.0 +UCDVERSION= 17.0.0 .if ${.CURDIR} == ${.OBJDIR} .error Do make obj first. @@ -125,7 +125,7 @@ ENCODINGS= UTF-8 \ 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_UCD= https://www.unicode.org/Public/zipped/${UCDVERSION}/UCD.zip +CLDRFILES_UCD= https://www.unicode.org/Public/${UCDVERSION}/ucd/UCD.zip # fetch and extract targets ${UNIDIR}: From nobody Sat Dec 13 04:15:24 2025 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 4dStK9090pz6Ktgl for ; Sat, 13 Dec 2025 04:15:25 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dStK83qn3z4Jp9 for ; Sat, 13 Dec 2025 04:15:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599324; 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=XXaXohKolJRh+7eTJY7ArutVQdB+dOEeiw5eBbvq/SI=; b=TKTtQzOTCDPtLAG2sVqZrZVqOywxBxBtlgdrLOy9RhvBeiJI3nNkjZpRzUxlJpGtLjvc13 7SdXfuuFts+/wXdhxCQVu1aaTPILrVWJIrqiMAi3hU0B6tUPsve0L2grWGgDaivD8mbsVx dv3Fxamz8K8AOqxyxhPfZx4K2zfNJrShN6Tbi8aB66Nz0yh690JhTCQOXA8cxljiUi32RJ GVIRBzVogtLLcL2gZd1TokLJ5nr1w5lB8tvJXbcddm3zq+8az+rdrmAr176qwaAFXcGy4E YSiCLfQm6bAEPS80CdMvT5JH4JkFMWlp5CW8gWPdiz00cXRag/JUQWPdUqzRpQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599324; 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=XXaXohKolJRh+7eTJY7ArutVQdB+dOEeiw5eBbvq/SI=; b=iK5WwNBTrhD/y2gd90gB6huMyMPtY/SXuaw9F8o+dHeWb8zLY6iRo2TgIcORXrFd1MUp0J bfOdb+6uswHGSn4pe+WSEYdGb+zCJI+eFKhwmhXLpLfBXtV+TXhCZYQvtBpHA7x6/630ag 8li/BuFOSOrhumXC02XDyOlXc4/kXndIhLEAAylA5AGg0SuR1xi7fmaRvr7NBZL7BedSgX zS9g9Qv6fzzCc/dmNxz+su6Iec4PUFqTUL7K3KL+5quft2erDuESm8g2IO/hQIkv70Ryc7 Jczm5g5apUwTio4GL2yJo+QMmTMgG6WzLQKNt5Kt8HL69d83QOhS3T86oJS5sg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765599324; a=rsa-sha256; cv=none; b=Ae0w0u122ShFuyEBCJmkn4yF30fuvLM/SLWKHgjnLctVXJ0J9EvPJYsHqazjE5QBQvhG4t hGDRqdBRd9+KljE3JrTV9yi1hBevc0E9JAN/H0fv1kxbv2rlwZRZIa5UxJhZ2vOk7qhX7I 0e93F0ICJtss1ofcxQoJO755WDplJy/C2/UiXIYUzx7DqPr1pE0hZ1/xVvpzCoqeVrhQpq rOzUzpoqOsnjKzwirRmYFfsZzhrFyI7/Xx72l16Z3ZC+jLMCPsipgRo477ap1M/Ngy39ze o9accwGr+sy0BgUg1aXyKRDnfoO9N4jUkcB4Gy9diHjd8sFjOotxwuC5pKgUBQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dStK83N7lznK4 for ; Sat, 13 Dec 2025 04:15:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3aa8d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 04:15:24 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: e148f05cd117 - stable/15 - locale: Update Unicode to CLDR 48 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 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: e148f05cd117b9c1c29ef5f60ea5e649f87e68e6 Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 04:15:24 +0000 Message-Id: <693ce85c.3aa8d.526f2411@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=e148f05cd117b9c1c29ef5f60ea5e649f87e68e6 commit e148f05cd117b9c1c29ef5f60ea5e649f87e68e6 Author: Jose Luis Duran AuthorDate: 2025-12-06 12:20:20 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-13 04:14:32 +0000 locale: Update Unicode to CLDR 48 Reviewed by: bapt MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53983 (cherry picked from commit d20da5c9736c3d93fc96e5e1c4dc40bed47bc419) --- 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 3428cdad93dd..24701af85199 100644 --- a/tools/tools/locale/Makefile +++ b/tools/tools/locale/Makefile @@ -7,7 +7,7 @@ # Modified by John Marino to suit DragonFly needs # -CLDRVERSION= 45.0 +CLDRVERSION= 48 UCDVERSION= 17.0.0 .if ${.CURDIR} == ${.OBJDIR} From nobody Sat Dec 13 04:15:25 2025 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 4dStKH05Gfz6KtmD for ; Sat, 13 Dec 2025 04: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dStKG4Cv8z4Jrr for ; Sat, 13 Dec 2025 04:15:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599330; 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=FQag7XgVy1mYWZW8p6PgQsCCyWVUBQO++xSYlC3HPi4=; b=vHiRE06GrCJSxDg0nW+yc8fN+L/ChQMAUvZTcAsA1Qawf0fBoen+9nSE76NOEEUhbayyoR 33n/wza/qN/cJj7GXjK4DamT4e4FoRAmunV9hm+HO/ESA2CEK+48WP30CY+XNVHc/sxxRb iDAxHwGv0GZQ7B4wsvO0fxxbEzFq99B0SnBX5ajxjFyAJOTEOFrrLRRbJhQfVDMFUqwLnE aX3Xi7/xn9i3D5/Slt83Io+RgYXZ+2pFg9XM5kiIrA7nPEWz6qhQd5FfQbEa/HkqRFO37r kNEVrB9//o1GXQJZ39CBErwcz7l8fGls7o0tBhUfQ1iB0yXGOMhZThqIZjMdBw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765599330; 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=FQag7XgVy1mYWZW8p6PgQsCCyWVUBQO++xSYlC3HPi4=; b=fIfVrWMjSPQBMD8MPouoTxRCnex/UsV/8CMbZ3Ky6JQT9CwZ2lQ1Q+BAi8HhH6qVCGnMt3 RBeEZAupgAb+19+gtJ57pdWAxmiZGhG5DMMKgt0zS7B+GZOkCHxV4FtJ7GCKYJM2HMMxRt E915gEutM4zlAffRjyydY47Y+HHgGAfpDVhW9D7xlpEHEkc3hYRTahgEUMBewBaUC20q1W GtBN9BBzbL2QWaclALhSifvYkwjphKl/oeH2JSDrkWbUVMGEp500KeyVBZwCsaL3Y63DUK fYWHSjzWKunA9HoiMW7lvKTwX6HmyRVft77pvz8AKDdMTkLZH0zvSec6krAZJg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765599330; a=rsa-sha256; cv=none; b=LZB7SUM3DORVjym5aNDa4TNZN8ypSPrbPvJx1aDaSMTt+c/OBBp6G7PP7dC5cSIUJE3WKO 1Tl3kcMXpQm8MN77xp9H8hO9Yv5wu/ESR/oH6e0yITg7aevfbd0vyVTV+fucCFrdbq3tbX gYyv+e1kSUt+wrh/djbibtZGja0IxEwxyfRrfE8IrpE6c30rqj2PX3HSW6JwkPrEnBERcl Z3VMw+2MkaqhTrSL6DIgg7lhjbwQGlgGqD+Z4ZqsvMgxfpWoYUzNgW/jZR+xWlBs9K4LoI pt5xMgEkHeLaBv/UcQtN6SyCjyhB666H+FZB2t4STNtNf5uOZfOH4ouIQuvpcQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dStKG3Wy7znyL for ; Sat, 13 Dec 2025 04:15:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 38d3f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 04:15:25 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 476a063a88aa - stable/15 - locale: make install Unicode 17.0.0/CLDR 48 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 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: 476a063a88aa370c42d56818f8a41cd2ce92db16 Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 04:15:25 +0000 Message-Id: <693ce85d.38d3f.21ae1836@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=476a063a88aa370c42d56818f8a41cd2ce92db16 commit 476a063a88aa370c42d56818f8a41cd2ce92db16 Author: Jose Luis Duran AuthorDate: 2025-12-08 18:44:21 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-13 04:14:46 +0000 locale: make install Unicode 17.0.0/CLDR 48 Unicode 17.0 adds 4803 characters, for a total of 159,801 characters. The new additions include 4 new scripts: - Sidetic - Tolong Siki - Beria Erfe - Tai Yo https://www.unicode.org/versions/Unicode17.0.0/ (cherry picked from commit 2cfd9fe87b90eddb9d0b3df3459d923092c491fb) --- share/colldef_unicode/Makefile | 2 +- share/colldef_unicode/af_ZA.UTF-8.src | 4545 +- share/colldef_unicode/am_ET.UTF-8.src | 1300 +- share/colldef_unicode/ar_SA.UTF-8.src | 3139 +- share/colldef_unicode/be_BY.UTF-8.src | 1724 +- share/colldef_unicode/ca_AD.UTF-8.src | 4549 +- share/colldef_unicode/cs_CZ.UTF-8.src | 4637 +- share/colldef_unicode/da_DK.UTF-8.src | 4729 +- share/colldef_unicode/el_GR.UTF-8.src | 1252 +- share/colldef_unicode/en_US.UTF-8.src | 4549 +- share/colldef_unicode/es_MX.UTF-8.src | 4553 +- share/colldef_unicode/et_EE.UTF-8.src | 4577 +- share/colldef_unicode/fa_AF.UTF-8.src | 3243 +- share/colldef_unicode/fa_IR.UTF-8.src | 3229 +- share/colldef_unicode/fi_FI.UTF-8.src | 4545 +- share/colldef_unicode/fr_CA.UTF-8.src | 4549 +- share/colldef_unicode/he_IL.UTF-8.src | 720 +- share/colldef_unicode/hi_IN.UTF-8.src | 1060 +- share/colldef_unicode/hu_HU.UTF-8.src | 5669 +- share/colldef_unicode/hy_AM.UTF-8.src | 718 +- share/colldef_unicode/is_IS.UTF-8.src | 4581 +- share/colldef_unicode/ja_JP.UTF-8.src | 17042 ++--- share/colldef_unicode/kk_KZ.UTF-8.src | 1724 +- share/colldef_unicode/ko_KR.UTF-8.src | 40058 ++++++------ share/colldef_unicode/lt_LT.UTF-8.src | 4561 +- share/colldef_unicode/lv_LV.UTF-8.src | 4605 +- share/colldef_unicode/nn_NO.UTF-8.src | 4729 +- share/colldef_unicode/pl_PL.UTF-8.src | 4585 +- share/colldef_unicode/ro_RO.UTF-8.src | 4569 +- share/colldef_unicode/ru_RU.UTF-8.src | 1716 +- share/colldef_unicode/se_NO.UTF-8.src | 4585 +- share/colldef_unicode/sk_SK.UTF-8.src | 4645 +- share/colldef_unicode/sl_SI.UTF-8.src | 4569 +- share/colldef_unicode/sr_RS.UTF-8.src | 1712 +- share/colldef_unicode/sr_RS.UTF-8@latin.src | 4619 +- share/colldef_unicode/sv_SE.UTF-8.src | 4549 +- share/colldef_unicode/tr_TR.UTF-8.src | 4569 +- share/colldef_unicode/uk_UA.UTF-8.src | 1732 +- share/colldef_unicode/zh_CN.UTF-8.src | 86373 ++++++++++++------------- share/colldef_unicode/zh_TW.UTF-8.src | 5208 +- share/ctypedef/C.UTF-8.src | 5771 +- share/monetdef_unicode/Makefile | 8 +- share/monetdef_unicode/af_ZA.UTF-8.src | 68 - share/monetdef_unicode/bg_BG.UTF-8.src | 68 - share/monetdef_unicode/en_ZA.UTF-8.src | 4 +- share/monetdef_unicode/hu_HU.UTF-8.src | 4 +- share/monetdef_unicode/it_CH.UTF-8.src | 2 +- share/numericdef_unicode/Makefile | 2 +- share/numericdef_unicode/it_CH.UTF-8.src | 2 +- tools/tools/locale/etc/final-maps/map.UTF-8 | 9988 +++ tools/tools/locale/etc/final-maps/widths.txt | 61 + 51 files changed, 152537 insertions(+), 137461 deletions(-) diff --git a/share/colldef_unicode/Makefile b/share/colldef_unicode/Makefile index 16fd2fc92e34..0a76b605502e 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= "45.0" +CLDR_VERSION= "48" .include diff --git a/share/colldef_unicode/af_ZA.UTF-8.src b/share/colldef_unicode/af_ZA.UTF-8.src index 0861ec5cf5fa..c3758c2ef890 100644 --- a/share/colldef_unicode/af_ZA.UTF-8.src +++ b/share/colldef_unicode/af_ZA.UTF-8.src @@ -34,7 +34,6 @@ collating-symbol collating-symbol collating-symbol collating-symbol -collating-symbol collating-symbol collating-symbol collating-symbol @@ -78,438 +77,441 @@ collating-symbol collating-symbol collating-symbol collating-symbol -collating-symbol -collating-symbol -collating-symbol +collating-symbol +collating-symbol collating-symbol collating-symbol collating-symbol collating-symbol collating-symbol -collating-symbol +collating-symbol collating-symbol -collating-symbol +collating-symbol collating-symbol -collating-symbol -collating-symbol +collating-symbol +collating-symbol collating-symbol +collating-symbol collating-symbol collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol -collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol +collating-symbol order_start forward;forward;forward;forward @@ -539,7 +541,6 @@ order_start forward;forward;forward;forward - @@ -583,438 +584,441 @@ order_start forward;forward;forward;forward - - - + + *** 317073 LINES SKIPPED *** From nobody Sat Dec 13 22:02:31 2025 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 4dTL0S10Bvz6K8Zm for ; Sat, 13 Dec 2025 22:02:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dTL0S049Mz42wt for ; Sat, 13 Dec 2025 22:02:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663352; 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=gyQKMq6IZd0hcgsi2Y4uiyihx8F3fDSgcCaIHTgErl4=; b=SaOkDicK09pcwdOxl03jcIGEWmvfUQvnTQJMsEYLtomPGNrrtPLWhgfZ2AMbL5XuRM45ZH BaMQw9/y3GN/rro/6WSVH6EZbu7yzIFZIYyqJpni8dUkaXzAiudTRbqReGUZg81nJLQ0lQ MCxWyc4+wJZTQpfHLkk04na5erXgf7MFeHJo9Wk2GZG1dmctHmbAcz0/JhuP2F3M3TZru4 QTU8dqstCTu9bjDnPS7Pd4pfEEKGIowxmiilX/jclp72ahgdg2kUrgmvxcIlnK1jg7BUZL 62bOKtk9a9rLTkB6hxSq/Nsyu6F8y5nXHfYzL4x7/hHrSdIkkD6HIm0/ioQt4w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663352; 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=gyQKMq6IZd0hcgsi2Y4uiyihx8F3fDSgcCaIHTgErl4=; b=qoEP7cX+ysKMEuDYYwLcWLIJhOhB6Q/dDlPZVOzptbcIG+kp14HNutT4olbL5Z2zwL5EWw WjfF1lx2WP8ohJdmbJy+0aKPzZMAMSx6NK9RFgpXkoFuTT4Pro96jU4m+gHlN1pX0eZe6U dr5KOWvTId4Sk0olAthaLiN6+ZILixrb79lkoWfGIi32IUdYP39Jg5hE+q4W6G5M6T7pwt 2CDM+7TD50GbvMs63v6L/zpSF4avayRHbCQGUiKEvem2fzeswLbzgfvVkbf2/xNGwHJRbj dkmZ5VxfR/TOBSD185Lg+qyUsFZ4ztxfeO8VSMU0LMsSJot3zjrUFJ6QAt450Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765663352; a=rsa-sha256; cv=none; b=CJ8EQBXV4UwDNI9NOBml2zC5ZE4pdt8rspYuDIO3WGXLULJ+VvhsMpv7KM/IKj5rpTRuqc 7yTJqF8ytFAxFoatWbzuqP7fPE0H9j+7+kdJVswQhP8iU0KJFvDYhIRyL66ceeC13hJ49J q5B4WJBjD9RCLkUJ7F/eb24OdBmSLLl+LEgU7MRigO6goUxQhu5A+mIfpQodbzGzwSDyvk 5/E1r3O+QbonG+8RPeuGrBrPMaPE7VgqzipLDHyFXaaRQmN19PjuqLauaN8+4z0nI5KZ8Q mthQsuP5zKJQt1+J61Yvva23wzqTZA22Xay9/VzLlKdoqjU6pGs7oNbR36rdtQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dTL0R6Dx1z1KZQ for ; Sat, 13 Dec 2025 22:02:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37b22 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 22:02:31 +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: fe2d226d8feb - stable/14 - bus: Return 0 if reading an ivar fails 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 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: fe2d226d8febd7705370ca9933c600dfe1b1e448 Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 22:02:31 +0000 Message-Id: <693de277.37b22.68de5a4c@gitrepo.freebsd.org> The branch stable/14 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=fe2d226d8febd7705370ca9933c600dfe1b1e448 commit fe2d226d8febd7705370ca9933c600dfe1b1e448 Author: Dag-Erling Smørgrav AuthorDate: 2025-12-05 14:57:37 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-12-12 18:52:50 +0000 bus: Return 0 if reading an ivar fails In the non-INVARIANTS case, return 0 rather than stack garbage if reading an ivar fails (in the INVARIANTS case, we still panic). MFC after: 1 week Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D54078 (cherry picked from commit 4c2295c15860e70c8bd3f05f9229d2fc40dfd50d) --- sys/sys/bus.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/sys/bus.h b/sys/sys/bus.h index 90db267d4bb2..a2189e068293 100644 --- a/sys/sys/bus.h +++ b/sys/sys/bus.h @@ -904,7 +904,7 @@ DECLARE_MODULE(name##_##busname, name##_##busname##_mod, \ \ static __inline type varp ## _get_ ## var(device_t dev) \ { \ - uintptr_t v; \ + uintptr_t v = 0; \ int e __diagused; \ e = BUS_READ_IVAR(device_get_parent(dev), dev, \ ivarp ## _IVAR_ ## ivar, &v); \ From nobody Sat Dec 13 22:02:32 2025 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 4dTL0S74Kmz6K8gY for ; Sat, 13 Dec 2025 22:02:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dTL0S4rClz434r for ; Sat, 13 Dec 2025 22:02:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663352; 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=WJ3iTqMmSOvmGv/8qIES1DzX0jVG8DgafKRwk3u6JSY=; b=UUSd/e0AndxfsfHN1o66b9bkoTk9IJmkSvjwRxOT6jA/tLr4X26qaUmwsvuaKtyuUTOsWj nQpmpQOkdMEp0CdTqXaXMfNFaFcXdRHA/i2juNK4bLUiT9NXN+d4JLyLmn8jKJyx/tSHlM 4UX4xP8TxtQpku4/AlQpcUKDtQKHMjfxd2euq5P+WrAgFOHyhELq0p/MRESkbMiru8Cvt5 MP+nXbaq0nb2m8lZNdaNPnsZiN3W9tCxw+jR2r6utSYH7Gp1rQglP4Zoawk2dMcU6vkUkR R6SU6eLeZIl9m9/FTjszJmL0IsFC9+M/X1LKGubBLPddk2BZdgrhdmBLDUrGtw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663352; 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=WJ3iTqMmSOvmGv/8qIES1DzX0jVG8DgafKRwk3u6JSY=; b=fvYBBMTDWp7fAVHgH+dJHqnOETFvE/kKyr5QhEUKU4Ze7Rp4QIMR1Uv+tNiDVaCCB75Snj UadQggBPJrdyn+RzCikbB15rmlsuAiQO4BQCiBUzBVnrezmbmFNdc5Mkd9VEW01yluQWHH KkYUvC06yGRsjxNNHNg+vduySTC97hrmfbulsgrSfmL49tGVjw1GhXrIg8RfYBojyr509G Yip3WgIM4NhHabsHfWqoJ0Ac/Hh3LEokDZYj83ejC0J5HJjri1iN8AX6283kwtH3jCzOTo Hh6Zckhs2hSi5XOq5GFDnRM5h/K9iGZ+Ew7A2aPv1/HhTOIndydzRRpsBBkHqA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765663352; a=rsa-sha256; cv=none; b=Y9iuC2rrDswFF6ZjBx0PpdIYIhHR4bJOZ++kA1+aUtsUGbBvcE0imN1VSTDUypgWmMfa2c b4DbDMQ/p8W+K5PMmEEGWSEuiZYMvZ/sskszS2lT63VtfGedSe7ny/B+jgxP1Bi3nBfRmC NqS9lTaKq6EpvKkV6HLmqQZ7IcYZqSPPgh8EqoF9IRSv/vB8btJ6XXuJb/CYX9kvu+rJsO 5oudhCXcR3Z1nxXahNwLr1R3PrxeZkUnxRbmBkMjIF2D/b03eOgAhD3QLTF5fSdkSnMk6x x+Bt/EJ+klsSo5W04+PJ0aVtQcoj2hSAd2vRcMObP1QZuFSxZS9oK1dvgOzUsQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dTL0S4814z1L3Z for ; Sat, 13 Dec 2025 22:02:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37e2d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 22:02:32 +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: 13ffee994008 - stable/13 - fsync: Open files in non-blocking mode 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 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/13 X-Git-Reftype: branch X-Git-Commit: 13ffee9940082f1a6c134f3b3d40e464bf9fb3b3 Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 22:02:32 +0000 Message-Id: <693de278.37e2d.7ba83ae7@gitrepo.freebsd.org> The branch stable/13 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=13ffee9940082f1a6c134f3b3d40e464bf9fb3b3 commit 13ffee9940082f1a6c134f3b3d40e464bf9fb3b3 Author: Dag-Erling Smørgrav AuthorDate: 2025-12-05 14:57:44 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-12-12 18:53:02 +0000 fsync: Open files in non-blocking mode This avoids blocking forever when invoked on a fifo. MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D54084 (cherry picked from commit 69e041521a80a0b8950f6ec25269a9c3949d6590) --- usr.bin/fsync/fsync.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/fsync/fsync.c b/usr.bin/fsync/fsync.c index 16d5a176da93..7c43ab42f768 100644 --- a/usr.bin/fsync/fsync.c +++ b/usr.bin/fsync/fsync.c @@ -52,7 +52,7 @@ main(int argc, char *argv[]) rval = EX_OK; for (i = 1; i < argc; ++i) { - if ((fd = open(argv[i], O_RDONLY)) == -1) { + if ((fd = open(argv[i], O_RDONLY | O_NONBLOCK)) == -1) { warn("open %s", argv[i]); if (rval == EX_OK) rval = EX_NOINPUT; From nobody Sat Dec 13 22:02:33 2025 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 4dTL0T2dW5z6K8t4 for ; Sat, 13 Dec 2025 22:02:33 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dTL0T1CFXz43LJ for ; Sat, 13 Dec 2025 22:02:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663353; 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=0/SZxox8Mzef9deoIyJ2fj7pRcuTGFXxq3eG2/7YRLY=; b=OUGzQzJ8KKoestPwH9xn53j0wXuq1gnQBnsAP1d4+Sadyjat7Led0oPQ1cmIJNvYchIlRo u7hvHObB8GBSxXKbW3VS1VZ8HubEUv6R4Bwe7K3jgUeqbG7yrwMsPad46OmmhS+r1ECbV2 gmT9G5GAqgElM8PjlTxIcW/lV5Uqak8zaBFKns5VYbK8kHV2AkJ6kQHjIeqMg2DBNFfLXe 4109eOUZDgaG6kEFk6J29M09GwhrpiXUlKigoQAzkoZE7DZMIkS/tLvWotyfZQAdcLjFT1 oIZjBTjOe4ykBYc8lIVej5jgqAORVXhLUvo4BhkC5I+EcrU1l3gR9aL7VxS/+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663353; 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=0/SZxox8Mzef9deoIyJ2fj7pRcuTGFXxq3eG2/7YRLY=; b=dziGhjwZsnXhLpvWXZEE+q9Jz5h5UkUUPsSMEpc5FDQsA644ZceEpfIxpzCYH6gZPEH1wX zKqpQBTgIvDqmkgQvES8fQlQoHcceiDZZtzA91t7NyJcnlsCwl8LdLbH/VFCWd7FGyCBtt b6BP2a0EJYgtQIO2mettMYmZzv6ChbX2uqugxQDjmKS6kcDYKxHwlUb9ouxQTqveygx1SS NNiTGKz5ydbOdzRf874dhS6gbXV1CNxndSXdiyVh7ykwN6kvMTd0S2pqDzNOoCp4lZX0lD uv/E6fbgiBnGV4EEXW/ubdh6HtMtuqKnRCtBfbghS7p5Ix7kD3lTy+sQHyufJA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765663353; a=rsa-sha256; cv=none; b=j031rP0xGpjAaaOj6nUuu1BTEu4nI+PikWyetrbTl/bU+x7UpJBMJYibNKYZaOJBmMp0Lm ER/a/+kTLL7e/YJbTtMnhD2lngDqrCP52CrNTLBNttt0iWI/jwt/TXz/mf3ngkeBGDlGm6 Js+T++tjXOCBKcX5yZej6Qz3gJxtX2JhjwEH1c2OKkoJsyR4Rdlc/tqTxkzdVWcplgJiQH PS+QUyd0BQjkeskosxW4Rcjg5ZGkUp7by+DlCNGa30IOJBlersYatwtCBpBIXSj6WQ16AF T7BU/sxQyrl7Ie5wgUELGE+FFw6w1ygWBxa8m6fI3SQNX11F2CHHhWRX2uyzEg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dTL0T0k2Rz1KZS for ; Sat, 13 Dec 2025 22:02:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37cfa by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 22:02:33 +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: ed66f6e92735 - stable/15 - bus: Return 0 if reading an ivar fails 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 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: ed66f6e927357097933eb78f7f39a6f826819538 Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 22:02:33 +0000 Message-Id: <693de279.37cfa.50cfdbd2@gitrepo.freebsd.org> The branch stable/15 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=ed66f6e927357097933eb78f7f39a6f826819538 commit ed66f6e927357097933eb78f7f39a6f826819538 Author: Dag-Erling Smørgrav AuthorDate: 2025-12-05 14:57:37 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-12-13 22:01:13 +0000 bus: Return 0 if reading an ivar fails In the non-INVARIANTS case, return 0 rather than stack garbage if reading an ivar fails (in the INVARIANTS case, we still panic). MFC after: 1 week Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D54078 (cherry picked from commit 4c2295c15860e70c8bd3f05f9229d2fc40dfd50d) --- sys/sys/bus.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/sys/bus.h b/sys/sys/bus.h index 40b9e53ba039..77250bb1df4c 100644 --- a/sys/sys/bus.h +++ b/sys/sys/bus.h @@ -890,7 +890,7 @@ DECLARE_MODULE(_name##_##busname, _name##_##busname##_mod, \ \ static __inline type varp ## _get_ ## var(device_t dev) \ { \ - uintptr_t v; \ + uintptr_t v = 0; \ int e __diagused; \ e = BUS_READ_IVAR(device_get_parent(dev), dev, \ ivarp ## _IVAR_ ## ivar, &v); \ From nobody Sat Dec 13 22:02:32 2025 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 4dTL0T2dVJz6K99F for ; Sat, 13 Dec 2025 22:02:33 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dTL0T0Fj9z43LH for ; Sat, 13 Dec 2025 22:02:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663353; 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=8jabVedSvFzMj2GS01r3TOdeAW1h8a6iIYRqX5y8X28=; b=BdCjXilO5Qx3iIaYkgwNQb9DcLF2OgjVe7odiP2qKV8cGlnT8Nt4GcuFnYt1dODl9Ds8NI W3SQa9PWKfaUAY6b9YnvKmzYNIv/tr6LZSpP4GBPp+GhVOqQU9khKno6VclZdYMrCfggl/ Cp1s29nzG0w38BBmXsPNdD13ddJbhFzIgF/mKTjob6bqi1bkWUEfO4nV8UW2WgXmenppZg sW3FJD+NNLk/ot+MagoTwVBFDJpiD6TFR2I3oWUy/VU4nNPFaqoGFgwrPTbWiBn0qm3Ynl esLoUYO96trdqnhut/xobnwTP7KS/eTpPyLWBfonU6PpWKcxHygMq9+c9ot+XA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663353; 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=8jabVedSvFzMj2GS01r3TOdeAW1h8a6iIYRqX5y8X28=; b=B8hUnzDardz1FZ1ubxZgpEa59ETzhia06ChfPeo60xI4NbO1zyNurGGygI4FwPBMmJmZRb l/vLk3u883w60iKWK/FpL7Ex/AdPeFdr4dnhpQ7zgNvbNWtbWvBGozxa8D9p9XAcfThNEr qK96hEKC0knUR1j7iCM41WniVypa7mUxqq7GEQAGhtWeBtHwBu7uHRR+8juoUM3cA6Zkud iVA7mPLwILvNF0c8MZcmukyrmH+qvsYkMfoMCOImUVRviXUkzHKFfWLkZpzF97IaQ+27jI jp2tCFrJ9RM4IlI+WsAEAiI2xCcezww/OYbUebPCZWQA2xmjnfJOTXyop+IclQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765663353; a=rsa-sha256; cv=none; b=MMhwwrkRHHgWRkMhrBU5nwAgpcnrkJMK85nLgYg9821dRW01Xp9/Gs2bf7U1HvcbyraTOI XPPLNUF1E/wjPFN/85SELlvWcJEnJkM9JE9G06VNnuBHFAUm4EPphnJY4eMiVpiOCwaJAq 6ijcDYrtjrfOhSvtJmSMzheJCUQHdnT+IdgJyQwC44Rd2FMD1HX3kmn9Jbq0rgU5xjXIsw yFyYWHoawflK5IzbDRJ2vqCp6BreSJ24Y+IgxgtxhyXw2aoyrAq7QlPaOMply6D5Mx0lN7 8++JryZN9LJ9i5L8I8kWDcDdN9NSHbFJv4D9QqhpIbrAnCoCQknuRahKbKMjbg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dTL0S6k23z1KZR for ; Sat, 13 Dec 2025 22:02:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37aa7 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 22:02:32 +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: 718fabf1cfa5 - stable/14 - fsync: Open files in non-blocking mode 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 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: 718fabf1cfa5cc170efd1ef9b106389c29ae7876 Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 22:02:32 +0000 Message-Id: <693de278.37aa7.7387672f@gitrepo.freebsd.org> The branch stable/14 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=718fabf1cfa5cc170efd1ef9b106389c29ae7876 commit 718fabf1cfa5cc170efd1ef9b106389c29ae7876 Author: Dag-Erling Smørgrav AuthorDate: 2025-12-05 14:57:44 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-12-12 18:52:51 +0000 fsync: Open files in non-blocking mode This avoids blocking forever when invoked on a fifo. MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D54084 (cherry picked from commit 69e041521a80a0b8950f6ec25269a9c3949d6590) --- usr.bin/fsync/fsync.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/fsync/fsync.c b/usr.bin/fsync/fsync.c index 16d5a176da93..7c43ab42f768 100644 --- a/usr.bin/fsync/fsync.c +++ b/usr.bin/fsync/fsync.c @@ -52,7 +52,7 @@ main(int argc, char *argv[]) rval = EX_OK; for (i = 1; i < argc; ++i) { - if ((fd = open(argv[i], O_RDONLY)) == -1) { + if ((fd = open(argv[i], O_RDONLY | O_NONBLOCK)) == -1) { warn("open %s", argv[i]); if (rval == EX_OK) rval = EX_NOINPUT; From nobody Sat Dec 13 22:02:34 2025 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 4dTL0V30rsz6K8bG for ; Sat, 13 Dec 2025 22:02:34 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dTL0V0wF6z42x4 for ; Sat, 13 Dec 2025 22:02:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663354; 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=3IgNPdkkamAC2ZzzHFNLgxmA9JwU4C7lpZ+KxW1C0E0=; b=tMaTYaLXd/GWtqhIaBJzQJSyrGiGmnEMNnfDMGbbC+hIVMAwrPwnD3VEwnAxTIyjvM/X+V enYfRuNAIUjopQFh01NE+2ky4//y0/66XKZhdtgs5n6r9FuAzwVutOXpypY7jXWtEG86vH +P+t82MNxnsxZVjmcCpMFmKuENqqrCrBTRr1ESPZRy7+gwnPxD0m/H4ol96uQN/GOokHFr eCBvD6jqoHUSZI1qGmLFkbaAYrx1jzvb0alknQyC6NM2Ard6Wzpgw+7szT/AfTuaWiGbbA yve7C9fupBXfFgSvf9yFAi8AmPynBW4oPZmuaOKP0GjvNzmfDgxWYxvfMcgUJw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663354; 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=3IgNPdkkamAC2ZzzHFNLgxmA9JwU4C7lpZ+KxW1C0E0=; b=Lr0NgKGvckO7OxHZMCG65ZvPqx13PUVeipCaskMi8X5yOgLZ9y9FO7UDMDOxgUc2Re3g7z 0Guzfak6i60YhHxkQbFEUJrdU6O50D7fO9CcFlkhw054dCmhVrRwYDM8AtB+g6MSK4lLxe Q/eioym9ZK3mGl2KgtNRFqL7UzCfXet4zpC/ygInVd9TV2nf50wPyhyeB00kb5kkuBjCvo ofE6EeeHuHtAYMjnOZFreyPvDfudjB08civPP8GIarPpzAEzom3o6sDJN4OyIabONNLtOr 9feC7fd2POlfpZK1DbZqG5LjW4OzAwVqdnoxnzUwn86nqohkiNCTukFzOt4UHQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765663354; a=rsa-sha256; cv=none; b=pWcfbs8Gf1XVnKfylD2uC0nPZcZfn1PvPC9TlzvQSID3xoF5k2TDQ4yiVk3HiuoKD5wpmv /3gHq2VTNm6haPayeHP0hRhUyxgSFLgd3lmIasNhxDEuD8R9dI4jRxGx3UeiyCgEuD+raZ opLcnrilBoKa7C2bU70StfQWJlrGzNRBsl6w1M5/yRkB0l8LP+zFtAm4K01J1290QxvcOu HofqlQjBdFcJcyHUb4DHZfxC3khfhkB2EJrqv+EFVS8F5m6+zLmaFMZGId2Srl7ebepvX8 ngvElmiDHp7M12geGJtUWhlAaw6AHI+A6rXZUf54AfQkSkR8l/bdDfhr0FG7wQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dTL0V0Q9kz1Kr5 for ; Sat, 13 Dec 2025 22:02:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 373f8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 22:02:34 +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: cfb6742f8a01 - stable/14 - cleanvar: Fix startup order 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 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: cfb6742f8a01d319b0ee91bcd0edececbd5b52e5 Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 22:02:34 +0000 Message-Id: <693de27a.373f8.54625a79@gitrepo.freebsd.org> The branch stable/14 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=cfb6742f8a01d319b0ee91bcd0edececbd5b52e5 commit cfb6742f8a01d319b0ee91bcd0edececbd5b52e5 Author: Dag-Erling Smørgrav AuthorDate: 2025-12-08 10:30:05 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-12-12 18:56:02 +0000 cleanvar: Fix startup order Instead of having FILESYSTEMS require cleanvar, which doesn't really make semantic sense, say that cleanvar needs to run before FILESYSTEMS. MFC after: 3 days Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D54118 (cherry picked from commit 6ce227d6274869a95150746d2f2d8c8c5ed9a266) --- libexec/rc/rc.d/FILESYSTEMS | 2 +- libexec/rc/rc.d/cleanvar | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/libexec/rc/rc.d/FILESYSTEMS b/libexec/rc/rc.d/FILESYSTEMS index 1bf52077be8e..d93d65153e41 100755 --- a/libexec/rc/rc.d/FILESYSTEMS +++ b/libexec/rc/rc.d/FILESYSTEMS @@ -3,7 +3,7 @@ # # PROVIDE: FILESYSTEMS -# REQUIRE: root mountcritlocal cleanvar tmp +# REQUIRE: root mountcritlocal tmp var # This is a dummy dependency, for services which require filesystems # to be mounted before starting. It also serves as the default early / diff --git a/libexec/rc/rc.d/cleanvar b/libexec/rc/rc.d/cleanvar index 08e647dde5ae..6eb084827212 100755 --- a/libexec/rc/rc.d/cleanvar +++ b/libexec/rc/rc.d/cleanvar @@ -4,6 +4,7 @@ # PROVIDE: cleanvar # REQUIRE: var +# BEFORE: FILESYSTEMS . /etc/rc.subr From nobody Sat Dec 13 22:02:34 2025 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 4dTL0V59lQz6K8t9 for ; Sat, 13 Dec 2025 22:02:34 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dTL0V1yHxz42r5 for ; Sat, 13 Dec 2025 22:02:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663354; 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=NHAc/0hqKehO2eVznKaHBmt/Cs4RG9fKJ1AqW5ZCITU=; b=Hs2lqcbWE6+MrwvCJFCGuKjYC/IpGGCCWarp1W6Xdnq4QIn+GyQ9UTGx/s629MgmHeGMvM KYtEFmaQDAYHd6rRMe26ENTZQ8i5GSUIGiGr4W72o7vKEdPKzMordHJnBTDGlOHfJ4mPoG kRCSG3E0PnZ8AfNaDqv4TFL396RWM/5tVCHYPAPHsNQDlE5t5BwurAmKD2D5OHo7YpRqP4 9THO2T5SG05r4YjKEIhP3u36k6SnHcB6Gdi8zAiTxSnqrJ2ZQNjD3lIgSbK+nN8AnN4eFi E8t/Y31czD69xVr7w4UiG4RRO5kCqHMFGTfU4KLeIXWhUtA6Dco/9xEtPZMpdg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663354; 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=NHAc/0hqKehO2eVznKaHBmt/Cs4RG9fKJ1AqW5ZCITU=; b=rMEjXFk2O0TIx3xg0NL9tL1igL5Vh5jhgy9ZEzqjTvLftFdp4b0Gax5MO/fcr31SirKJOi F6IA96MafMdk2Cj0q/xLS1rPg+PYOlekqtll59xUECN7w6vdmOLWI98LzODche53N2wEBD Ft3N/OavOxSFKmsoT8D6gTUPrt9Vi9FsjHWLAmjbqII0flHFBxURED+bvJKQwiKfQa+mwT eqzBXe04llqShlHFjr4MEfl5fSuHdu9Wpqm+dlSF8lWD2GbjUyAMoZisy1m5zNgvoOhpgE T99Rs1F2EQu1c8O0GGg/BG6faJkjcCatnLzSNpoeerqQAKcY+L/5CcGnfu18CA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765663354; a=rsa-sha256; cv=none; b=keA9MGRdhi03g+rO0kq9XJNSF9RhuM/Tp2cVFF9otXUoJkaHW3A1CM6Yb5GPXZwKIIh0hf 1iPBBfh9b2UbXGaDPhDKZoMnT1eeVXMmkYO5x6V1JVDeQE90glMDLr/erny0Ar80VT5xa8 kZz2KKVseoiNTF0+pNtSh+h6jE2/eK34Tgz8lknDIlj7UUPjbA5WTy9hIUNyOUVz0JQbP/ aVesWiVaEbzf80TmKPuzYKWDFl3Iyx/frNK7BU3wlUpszHCtj4nukv+oXJrZlgNiy4u3O+ 1MmXsemNnwx+qYS6LP9J7Vnx4CmiFaC7cbdVuCeJNlSNvVbjJ9lLF6sV/F4Ugg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dTL0V1M71z1L3c for ; Sat, 13 Dec 2025 22:02:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 34d7e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 22:02:34 +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: 287255520f1f - stable/15 - fsync: Open files in non-blocking mode 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 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: 287255520f1fa20fab327d9c5850f8ceee9e4922 Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 22:02:34 +0000 Message-Id: <693de27a.34d7e.189d4864@gitrepo.freebsd.org> The branch stable/15 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=287255520f1fa20fab327d9c5850f8ceee9e4922 commit 287255520f1fa20fab327d9c5850f8ceee9e4922 Author: Dag-Erling Smørgrav AuthorDate: 2025-12-05 14:57:44 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-12-13 22:01:14 +0000 fsync: Open files in non-blocking mode This avoids blocking forever when invoked on a fifo. MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D54084 (cherry picked from commit 69e041521a80a0b8950f6ec25269a9c3949d6590) --- usr.bin/fsync/fsync.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/fsync/fsync.c b/usr.bin/fsync/fsync.c index 9968bc8614a5..f3dbeed3cb77 100644 --- a/usr.bin/fsync/fsync.c +++ b/usr.bin/fsync/fsync.c @@ -49,7 +49,7 @@ main(int argc, char *argv[]) rval = EX_OK; for (i = 1; i < argc; ++i) { - if ((fd = open(argv[i], O_RDONLY)) == -1) { + if ((fd = open(argv[i], O_RDONLY | O_NONBLOCK)) == -1) { warn("open %s", argv[i]); if (rval == EX_OK) rval = EX_NOINPUT; From nobody Sat Dec 13 22:02:35 2025 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 4dTL0X0pkLz6K8nX for ; Sat, 13 Dec 2025 22:02:36 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dTL0W4v9Mz439s for ; Sat, 13 Dec 2025 22:02:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663355; 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=94vmtxnlYVmbmUALKrCSu4IfJYlyc4I5UlFtCrMDf6w=; b=cUuVDCuwqLMxmDVwHTKb+fglrim+nR/ITCUE4Bh85dOEy1illNYmfx+PKRR+ya+UKeZefX OmhkTo+a5jIHG/weRdZ2ynYVxqOpMCMOnl+L9pSDfmmYyk3BEoh51aQerhcxR3Kii15bSD L4kvctTECAfagXz0Bo/mvYrR4fwdd9XaxqbHSkKLxxuE0Uq0fmjA8f8dB+QqfcLDGElog2 jzp+Sc95w8V0ffheHh0pbFoL264DXObSe/HPVesoYrmpfRLLGoruPfCBHRhoE5GaoL9KIL Tl0/SWbk+sNQEd1xE1b+Afne3dQfIAoastde6oT0PdcspzAGOFBSHM6CwceOzw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663355; 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=94vmtxnlYVmbmUALKrCSu4IfJYlyc4I5UlFtCrMDf6w=; b=d0v3R3xVyydx9c9X+kphfcIdUFMa3K6tRE27Qu0hFevWmFC/tnHdoK6TP5Qx2bXrxhXDC/ jWs+SwztT0+Hbgz0lAhW4b1AoWBWVcosY/tJQz0dayAgizsrEHkp1mtnYI9ZZUR7p5tQbg BRoM50jwGhqv/u85uVkrUuz6Kui1Dym6pwsm8GdeUDPY0FGrsZ7i06ISWwVoIFvIbSmdKJ DMFD1gK5UBsihaAU5aMxnuaC+CF6A8VoGh8yIdD5dm71DqrXirAl/MWXKmAAcP1VRkaRaE 0fkdSkZAdmxX5bJ2HIITUt2FAwKPvLPprUExRGFFNrxYe1r4Vn+i/dmw5BzAdA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765663355; a=rsa-sha256; cv=none; b=Hw+HT8L9PosDWKakf0fxkBzl87cc6iP4huEgi7d6bwhVCnlM01fkQLlbXF82Fj8x2+2Xgt Be+PLYcszMLKeWG8Hc2ubIeN+eVGozcTo0NT5LSYZK2RvMdJtknpECFf7AjrP/wIKIxLMu 2wyDYUP/VuSWHgSWKSzkyg4hECSg96CGhC0fMDgIb9ESiHT7HC74I6E+rhFkumm7bZdACK S6sRcTKeG1GgOD9B4Wq3twdr20JEYB9Ae8e3ZWO45Tah2V+rGSKy+/Pq2BDG11WyDaz4o0 crcCBJRnxkqIblAYOTktHCMxkLzUeYBSCyG1E/yvFTzZz+O5W0DV9bQOzK1/VQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dTL0W23zJz1Kr6 for ; Sat, 13 Dec 2025 22:02:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37fb5 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 22:02:35 +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: 5f8988b2fbd4 - stable/15 - libsysdecode: Use consistent include 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 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: 5f8988b2fbd4683182f32c8e39d9749ca403ea5d Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 22:02:35 +0000 Message-Id: <693de27b.37fb5.2e57e6fc@gitrepo.freebsd.org> The branch stable/15 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=5f8988b2fbd4683182f32c8e39d9749ca403ea5d commit 5f8988b2fbd4683182f32c8e39d9749ca403ea5d Author: Dag-Erling Smørgrav AuthorDate: 2025-12-07 13:06:41 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-12-13 22:01:14 +0000 libsysdecode: Use consistent include path mkioctls should look at the same set of headers as mktables does. MFC after: 1 week Fixes: 139d114acc7b ("libsysdecode use MKTABLES_INCLUDEDIR") Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Reviewed by: sjg Differential Revision: https://reviews.freebsd.org/D54106 (cherry picked from commit c51876a107310984ba3a31b088caebcfd86a9844) --- lib/libsysdecode/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libsysdecode/Makefile b/lib/libsysdecode/Makefile index 11f45355b8e2..60422d3fc9ef 100644 --- a/lib/libsysdecode/Makefile +++ b/lib/libsysdecode/Makefile @@ -144,7 +144,7 @@ ioctl.c.tmp: .PHONY .endif ioctl.c.tmp: mkioctls .META env CPP="${CPP}" MK_PF="${MK_PF}" \ - /bin/sh ${.CURDIR}/mkioctls ${SYSROOT:U${DESTDIR}}${INCLUDEDIR} > ${.TARGET} + /bin/sh ${.CURDIR}/mkioctls ${MKTABLES_INCLUDEDIR} > ${.TARGET} ioctl.c: ioctl.c.tmp if [ ! -e ${.TARGET} ] || ! cmp -s ${.TARGET} ${.TARGET}.tmp; then \ From nobody Sat Dec 13 22:02:35 2025 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 4dTL0X0mP2z6K8tG for ; Sat, 13 Dec 2025 22:02:36 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dTL0W3kX2z42vg for ; Sat, 13 Dec 2025 22:02:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663355; 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=jvBDa6ye9pd2dNWHznyrkQ0iUELYV3eoV8hUKGqlKnA=; b=kayi35kz9QNK+OnlFOVUGkHoMV+tQtbCI6ziYxrYl7kE0k4kGQ5lw1gqDy3P+Xey0SEGy/ 32sfs4ZK7vaQU588qWD1E04/7IL1phBHEVgSLBrdKco8VMiFOumA9pOogbUvRkyP5UaLCn 1FhxvAw8NiT/DRlYlCk6TIT31mpjknzgpAr85x69XBi63HZ1nroX/Iv01mu8NkssWIvywn 3C/ztXWMIaWfWweSmEUiqtxgK+v4N3iRQ1hlPNh6YYn0qYzzLs6YA+UJQu45UG29j1NqZ+ ybsaSlCy7OtFstpIJL1hUOCFKyLy5J5wO1ZZH/ekvjxLcUJ6ByLiWF9i3CdkEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663355; 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=jvBDa6ye9pd2dNWHznyrkQ0iUELYV3eoV8hUKGqlKnA=; b=sWR9I1g2Ya8eGwrAp3K+wydMuH74w1xUj6u0wyCD7e4LFUPbNxno+lWU2ugZtsczvKl21H aNgbrCSETUMgmqr9g1QBSURtmn6zJ435Rn1zBldKuszstoG0UPsadNnUizh4wp/+FRvl7S yBrQmRAcl8byz+mVg1kHgzcrLEBNy1t5WtI6jkYDLBj9ZnzY3ntoWrHd3Nj6EAr/L2nVSf goB6p2MXMUkt5FimxlmrezaemdXm22SQ6y1dWbjNtO+htvDAN5LH4zjqwl0Ghy5knrzPYU AvEYAxPCpsxz2ziDa7RO3ogK4ane9IZgPWO1O1zmNWs3/lOr/jJibXJ8PjOH0g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765663355; a=rsa-sha256; cv=none; b=dH2cOIZaBpA8408ZqGzxdyE4LG4T8ZZdxwXPX+t69Yqmwe1062JOw6pssHR5c5x2U2TIIK A3DkU9XkrkXgXPC5OGkNGJt5irySsKS48Fb9DfEKjIKP363sYxhvKE7aZOHYlwXbR+4BLX 7JX/tK7J9lEMHqG+Qma9YQ/8sP/5qRWqve7rmHymn7y/SKB9CfRqgSAvzf887twNGNmEjr x6xufLazXQ93b5Vp8SWIj1qt0YYPhtR+OxveKXE7vke0DepIcRL6aLY3Iqfap2nH+Imnyk LmalHELgFt/3dI0GfWLXBfJjZNHXU6X2MhV2RtDOqGplDld4Lg65JTtM1tFwkQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dTL0W1FW0z1L3f for ; Sat, 13 Dec 2025 22:02:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37b26 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 22:02:35 +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: fb5c9871764f - stable/14 - noshutdown: Fix startup order 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 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: fb5c9871764fb93905d45c569ed198ee52c9c22e Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 22:02:35 +0000 Message-Id: <693de27b.37b26.62fd4ead@gitrepo.freebsd.org> The branch stable/14 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=fb5c9871764fb93905d45c569ed198ee52c9c22e commit fb5c9871764fb93905d45c569ed198ee52c9c22e Author: Dag-Erling Smørgrav AuthorDate: 2025-12-08 10:30:10 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-12-12 18:56:03 +0000 noshutdown: Fix startup order This rc script exists solely to create a file, so have it explicitly require FILESYSTEMS. In its current form, it was as likely as not to end up running before cleanvar, which would undo its work. MFC after: 3 days Fixes: 384d976725a5 ("rc.d: Add precious_machine rc.conf knob to create /var/run/noshutdown") Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D54119 (cherry picked from commit e540e8b2c04f03b4210a3bf2f421c05b918d1b51) --- libexec/rc/rc.d/noshutdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libexec/rc/rc.d/noshutdown b/libexec/rc/rc.d/noshutdown index 54924310a6c7..4c2ae9a3f488 100755 --- a/libexec/rc/rc.d/noshutdown +++ b/libexec/rc/rc.d/noshutdown @@ -3,7 +3,7 @@ # # PROVIDE: noshutdown -# REQUIRE: var +# REQUIRE: FILESYSTEMS # BEFORE: LOGIN . /etc/rc.subr From nobody Sat Dec 13 22:02:36 2025 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 4dTL0Y0Nkmz6K8lt for ; Sat, 13 Dec 2025 22:02:37 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dTL0X3H8Yz43Lf for ; Sat, 13 Dec 2025 22:02:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663356; 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=n2f4AxGOqDt+Tc2OejcfmBaF4D2dzXa6WAu/E59hvTs=; b=sFMoAwBCIPSzABmrAeMoUuMrXMKOxr3v8eauSIh5MqYlfZ7pduQHCETGfqyIAAIhEXfqEy w6Dxqqlh/8m9bigIBmu/SJKYO+umzFMClI16UH0PKFZbzlBPE78nPvOKa/uLM+cHtwWjEm gbSU8CNOszfekzcv/ZkZV4NNfTJcyMzs+lZmANykBZ0E0PMpFdLcanVWNTQpcCUm+alC7H VHoXwSqzmBFlOBiEVSdpSRIkgCgICbg/pz20sjZ67Cv7tMw6UzBuq0okqir9PSwcoxbXSp 8giEJFL9QRlL1BkhOPx3qcpPhrj8ONUV2PL29saurrDtDdtYAO9PWPaJdPCo8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663356; 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=n2f4AxGOqDt+Tc2OejcfmBaF4D2dzXa6WAu/E59hvTs=; b=QU4QBXDGve1gpLEKtK+phXnneCOCMpJiuTmk1I9VrsCP7eS23e2c/QF9lJ7OSl3TRMO0CU ZHrjlJooYUw+M+3cFxAFev7p/wBtTKU0znr6z0/cN0PDdEPlxx/mKex7PUg/D8vDcc4Xl/ QrrWk+Ps6RvNbmuNlA6di0YI9FdVlHByT/xW6XsiMLIwW0AeDQYcBwR1oEGdvb31DWB+xo 6nhRMBvREyfmw2yYG+20QsKqJ9z1AZ54rAdJTAjh8zYCrOD47hf6Dh1oeAPDQRQp8Lz6V6 hJ9wC0gFJZWvv0KhqAQME7bsiN/HbJ24rMVE5XGJc/2Z6NF8xYABr5ISE7FEBA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765663356; a=rsa-sha256; cv=none; b=gaLD3dXZ6+Gk2320vTXcqy23nWfYSJmpkAGVT2qUoBqziggxjsfsuUXhzGTFGOdji+YhRx TGxPZvPAwnZBIMqP2ZYh26yTF8MvXA4UH2LorfO24/S0/MVXHDiZ6BaBIEoxIrXe7DAdlA uOe3n0tea4Y2mPD5lO+IAX03TRzQx35LrWe/w5RCAJcktCRZk69LR4xOd5CnJ//vNnsunI fQ1O45JpBOjC8Pw4OSYvuq3ZAVX7yRvUt5PLIeE+i34i8uYN727EebVGmLWnTkRUBat0MX 6nU/CSyhgiWHTS3cTkuljBKbXPh8vYv8vlJ+kehoPg4U09E8Fy4YNvaWXAuEBQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dTL0X2sw5z1L3g for ; Sat, 13 Dec 2025 22:02:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37b2a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 22:02:36 +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: ca876906cfc1 - stable/15 - cleanvar: Fix startup order 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 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: ca876906cfc10099873998c497758d5a8e2e0091 Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 22:02:36 +0000 Message-Id: <693de27c.37b2a.48cc17f3@gitrepo.freebsd.org> The branch stable/15 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=ca876906cfc10099873998c497758d5a8e2e0091 commit ca876906cfc10099873998c497758d5a8e2e0091 Author: Dag-Erling Smørgrav AuthorDate: 2025-12-08 10:30:05 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-12-13 22:01:14 +0000 cleanvar: Fix startup order Instead of having FILESYSTEMS require cleanvar, which doesn't really make semantic sense, say that cleanvar needs to run before FILESYSTEMS. MFC after: 3 days Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D54118 (cherry picked from commit 6ce227d6274869a95150746d2f2d8c8c5ed9a266) --- libexec/rc/rc.d/FILESYSTEMS | 2 +- libexec/rc/rc.d/cleanvar | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/libexec/rc/rc.d/FILESYSTEMS b/libexec/rc/rc.d/FILESYSTEMS index 1bf52077be8e..d93d65153e41 100755 --- a/libexec/rc/rc.d/FILESYSTEMS +++ b/libexec/rc/rc.d/FILESYSTEMS @@ -3,7 +3,7 @@ # # PROVIDE: FILESYSTEMS -# REQUIRE: root mountcritlocal cleanvar tmp +# REQUIRE: root mountcritlocal tmp var # This is a dummy dependency, for services which require filesystems # to be mounted before starting. It also serves as the default early / diff --git a/libexec/rc/rc.d/cleanvar b/libexec/rc/rc.d/cleanvar index dce5baa6875b..daae456fbe71 100755 --- a/libexec/rc/rc.d/cleanvar +++ b/libexec/rc/rc.d/cleanvar @@ -4,6 +4,7 @@ # PROVIDE: cleanvar # REQUIRE: var +# BEFORE: FILESYSTEMS . /etc/rc.subr From nobody Sat Dec 13 22:02:38 2025 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 4dTL0b0rLTz6K8m1 for ; Sat, 13 Dec 2025 22:02: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dTL0Z4zWPz42xl for ; Sat, 13 Dec 2025 22:02:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663358; 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=IDAgyuJoI8wtPiPzLPYtDY7YIU5RCKJWjCIIzqQVhcQ=; b=dB6Vwol5LybeQQT5XxEl0guR87iAmZeP2MxXticWQTrY1JeDjCdI4X3G3D1SufHvpcSmea 8i2kp/189gR/0zQDizcj2RtSmLzkKMu5vDgLqE/lBGzclzSonrpKafoySYqesQBHDGemag KKw4D6ZaWfQTZzTpjgw+ieWIT5fp8Un/aoCfpNhok8I7JwCTn/Q26ZVhV88bkOmjvR4oaD zpl2YLpwC2XP8+DcnhV+Hv1ZdRhUrbxcd2NYr8TF34cLSq29SVp1KtQ5GsBomCZZlREV/O DuvcSd42cj2YylGnE8bDLTEmb8WZrCqCMlz8xZzM0/Xii2XBYHnMuXje8fj/IA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663358; 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=IDAgyuJoI8wtPiPzLPYtDY7YIU5RCKJWjCIIzqQVhcQ=; b=jyWKya0wLYKh/t9iDlx5vhPpoz/vfHMeBcjhQSCMud6qQZaHh1cqx0SgIsHrZobMOz1yjk nhXprUz9I1/khw18QQ7rweJwpRYTSZ7Md9kfmM/3pBm1DLgi/tNsoTs2PHBu+9Tf/L3aPA mlJrqGN26H1llyYUTpOhA8RJ+TsUQaYU2ocFb8aW9Chujwr65ab6MBpTy4FYv6u0sFt80Z TQr1JUOE1IMor1WP3EWoWjRMRkNDf8bg0I8Noav+B/8UTEHrNwcGgSSnS/32U2q/QZh3wI pVSDc5AkyPmBSAauXNqK8JZRpoe5j7q8vQjp8sFZgpizJMRfT95z+g62LyGmOA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765663358; a=rsa-sha256; cv=none; b=J5oPfZzUnJJ23O59v5qFDzd9jxMgdnRLX1eph7cphTSn2urvYEV0MO0hDr/e907dz0Er6o gGZOqYDkhmquC2tABxpD/RGQVCayIEGf547q6L5SdeQbq1rxUmZbmFa2N23x7COGcB9AKA A1oFnj4m9u7NdF4JwrZtvKDNmYmvhMq0xa3p6t8YSx2b6vs4YXbazabFfabVTplNBa841h b+4SsvtfA9gTBVQunvQXVTBnffM2CRQRJ70lYqkD4CwzQ81q94m6SBouS7cmsDKc5NurBv WySiPgYVLRTqEBE1R6+8XtLUjw/8TBvkkou47/QXg+EmGbvqs6Khp3PwkSa4RA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dTL0Z4b0tz1Kr7 for ; Sat, 13 Dec 2025 22:02:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 384f0 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 22:02:38 +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: 68ed90d5b089 - stable/15 - nextboot: Reimplement missing -a 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 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: 68ed90d5b08995ce28dd44c57b25723f393096c6 Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 22:02:38 +0000 Message-Id: <693de27e.384f0.94c9f0d@gitrepo.freebsd.org> The branch stable/15 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=68ed90d5b08995ce28dd44c57b25723f393096c6 commit 68ed90d5b08995ce28dd44c57b25723f393096c6 Author: Dag-Erling Smørgrav AuthorDate: 2025-12-08 10:30:17 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-12-13 22:01:14 +0000 nextboot: Reimplement missing -a option * Reimplement the -a option which was available in the original shell script and is still documented. * Print the correct usage string when invoked as nextboot. * Add the -D option to the manual page synopsis. MFC after: 1 week Fixes: fd6d47375a78 ("rescue,nextboot: Install nextboot as a link to reboot, rm nextboot.sh") Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D54120 (cherry picked from commit de670c611b17939712a81dc56f73a3ff84f6c178) --- sbin/reboot/nextboot.8 | 4 ++-- sbin/reboot/reboot.c | 44 ++++++++++++++++++++++++++++++++++---------- 2 files changed, 36 insertions(+), 12 deletions(-) diff --git a/sbin/reboot/nextboot.8 b/sbin/reboot/nextboot.8 index 188063dbfd3b..52f77bb75ebd 100644 --- a/sbin/reboot/nextboot.8 +++ b/sbin/reboot/nextboot.8 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd March 29, 2022 +.Dd December 8, 2025 .Dt NEXTBOOT 8 .Os .Sh NAME @@ -30,7 +30,7 @@ .Nd "specify an alternate kernel and boot flags for the next reboot" .Sh SYNOPSIS .Nm -.Op Fl af +.Op Fl aDf .Op Fl e Ar variable=value .Op Fl k Ar kernel .Op Fl o Ar options diff --git a/sbin/reboot/reboot.c b/sbin/reboot/reboot.c index f6065e80fb66..59ae83ef6f6a 100644 --- a/sbin/reboot/reboot.c +++ b/sbin/reboot/reboot.c @@ -112,12 +112,13 @@ zfsbootcfg(const char *pool, bool force) } static void -write_nextboot(const char *fn, const char *env, bool force) +write_nextboot(const char *fn, const char *env, bool append, bool force) { char tmp[PATH_MAX]; FILE *fp; struct statfs sfs; - int tmpfd; + ssize_t ret; + int fd, tmpfd; bool supported = false; bool zfs = false; @@ -145,6 +146,7 @@ write_nextboot(const char *fn, const char *env, bool force) E("Path too long %s", fn); if (strlcat(tmp, ".XXXXXX", sizeof(tmp)) >= sizeof(tmp)) E("Path too long %s", fn); + tmpfd = mkstemp(tmp); if (tmpfd == -1) E("mkstemp %s", tmp); @@ -153,6 +155,21 @@ write_nextboot(const char *fn, const char *env, bool force) if (fp == NULL) E("fdopen %s", tmp); + if (append) { + if ((fd = open(fn, O_RDONLY)) < 0) { + if (errno != ENOENT) + E("open %s", fn); + } else { + do { + ret = copy_file_range(fd, NULL, tmpfd, NULL, + SSIZE_MAX, 0); + if (ret < 0) + E("copy %s to %s", fn, tmp); + } while (ret > 0); + close(fd); + } + } + if (fprintf(fp, "%s%s", supported ? "nextboot_enable=\"YES\"\n" : "", env != NULL ? env : "") < 0) { @@ -216,7 +233,7 @@ add_env(char **env, const char *key, const char *value) * Different options are valid for different programs. */ #define GETOPT_REBOOT "cDde:fk:lNno:pqr" -#define GETOPT_NEXTBOOT "De:fk:o:" +#define GETOPT_NEXTBOOT "aDe:fk:o:" int main(int argc, char *argv[]) @@ -225,7 +242,7 @@ main(int argc, char *argv[]) const struct passwd *pw; struct stat st; int ch, howto = 0, i, sverrno; - bool Dflag, fflag, lflag, Nflag, nflag, qflag; + bool aflag, Dflag, fflag, lflag, Nflag, nflag, qflag; uint64_t pageins; const char *user, *kernel = NULL, *getopts = GETOPT_REBOOT; char *env = NULL, *v; @@ -240,9 +257,12 @@ main(int argc, char *argv[]) /* reboot */ howto = 0; } - Dflag = fflag = lflag = Nflag = nflag = qflag = false; + aflag = Dflag = fflag = lflag = Nflag = nflag = qflag = false; while ((ch = getopt(argc, argv, getopts)) != -1) { switch(ch) { + case 'a': + aflag = true; + break; case 'c': howto |= RB_POWERCYCLE; break; @@ -363,7 +383,7 @@ main(int argc, char *argv[]) } if (env != NULL) - write_nextboot(PATH_NEXTBOOT, env, fflag); + write_nextboot(PATH_NEXTBOOT, env, aflag, fflag); if (donextboot) exit (0); @@ -483,10 +503,14 @@ restart: static void usage(void) { - - (void)fprintf(stderr, dohalt ? - "usage: halt [-clNnpq] [-k kernel]\n" : - "usage: reboot [-cdlNnpqr] [-k kernel]\n"); + if (donextboot) { + fprintf(stderr, "usage: nextboot [-aDf] " + "[-e name=value] [-k kernel] [-o options]\n"); + } else { + fprintf(stderr, dohalt ? + "usage: halt [-clNnpq] [-k kernel]\n" : + "usage: reboot [-cdlNnpqr] [-k kernel]\n"); + } exit(1); } From nobody Sat Dec 13 22:02:37 2025 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 4dTL0Z4FBHz6K8h2 for ; Sat, 13 Dec 2025 22:02:38 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dTL0Y47mDz43Lr for ; Sat, 13 Dec 2025 22:02:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663357; 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=BbcpHgIXgt/OENiD+ECHh5ZmsOh38KAUDVhFHkgAWYk=; b=S4hWfP3Zi3mmhXtdRjRsZeJVAo77aRs/qSr7LjpAAbUrazhBX8toniRY2SY7HbH4Dp0j60 Dn2rQwy3TZD0tbuIGbABUngUGYGiehbMj0ORy/jFgwvUK/S8XhxxctrlIEoUCwtQzNGIwa MTrIxCKX9p4nD1/id/8IHHUTItJCHnbtN1UuILsJLyUsDWrsLOp6rYICNlEePIgmilmRzE 8kVLZRNV7fXJMKcBA0eU76HW+gJIVG7kZp0X+XHLgrJhvJ15RGlAENuHuwkRaLlR3k9X2g MjQqiP9GLT1PLRHfQ2Yn9aIzZov/d4+JrJyifoZPsMtbApOeKK0XoPy/taReRA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765663357; 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=BbcpHgIXgt/OENiD+ECHh5ZmsOh38KAUDVhFHkgAWYk=; b=UuNnNeR/TnTOPmvtWr26EelNb1Z1GhQxeCMjxlijhncicPfNbAS6eq/YFqsAkbbBC3PB/R /Is2C4EnUDEeNdsWTxPqw8FVd1FEnh8Ko16h9t/WRAGI+37BRFcItYYJnmOw1bUH7wFpZi N+bR4t5QmOVzTfrL3AZSXDg0jFOekdFkgmkS/KpcdDCHjoRJydyhSDJI4EGV2XOtNU0ncX vdOcN82Ao2YamMsGf3TRtjQxY6c3bygW9n+2hr+3kWGzCUBVa2SCNeDDdI4QrCpII7b8Y6 g5Q0ZuBmev7/y2dkzSgY9kOL7Jj2Pfpo+wMxjsVbWizwV3OazdEckzON//WGNA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765663357; a=rsa-sha256; cv=none; b=laGN9ZTjtsuUyoC9jmRdnIcrq2sN1rndWXh9w7Jh6EsHa8i9S1oJOpG90Dt7HCkJOmlVb3 1MV56nnoGdnVBtu8YgIMUplE3SVJuMszbg46Wb2ZromwUIvsyfFmAOSCSjm6c42ProHx1U YMy2wVNqx/thG7XS9UcJqTqse2uwTWCLKSVAD/lGVWtoRInPMB+G0VIUasIikOdcq0xCYo 8onQGI6BOZdnexYDCZ+qhT7WaIBVN03ctunDTJhHAgWRZX6mltHGqTTKe0InZqCojZXl3z 4ddNMjcNAF07B2Ipmz4zN2uTuRDFGesgT8ZhcnU2+iv5mwzjp9isKvaIQPjYSQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dTL0Y3jDSz1KZT for ; Sat, 13 Dec 2025 22:02:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 38012 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 22:02:37 +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: 8959eda100d5 - stable/15 - noshutdown: Fix startup order 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 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: 8959eda100d518383401b5bc64ea227f2dac28b2 Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 22:02:37 +0000 Message-Id: <693de27d.38012.6f4378a@gitrepo.freebsd.org> The branch stable/15 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=8959eda100d518383401b5bc64ea227f2dac28b2 commit 8959eda100d518383401b5bc64ea227f2dac28b2 Author: Dag-Erling Smørgrav AuthorDate: 2025-12-08 10:30:10 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-12-13 22:01:14 +0000 noshutdown: Fix startup order This rc script exists solely to create a file, so have it explicitly require FILESYSTEMS. In its current form, it was as likely as not to end up running before cleanvar, which would undo its work. MFC after: 3 days Fixes: 384d976725a5 ("rc.d: Add precious_machine rc.conf knob to create /var/run/noshutdown") Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D54119 (cherry picked from commit e540e8b2c04f03b4210a3bf2f421c05b918d1b51) --- libexec/rc/rc.d/noshutdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libexec/rc/rc.d/noshutdown b/libexec/rc/rc.d/noshutdown index 54924310a6c7..4c2ae9a3f488 100755 --- a/libexec/rc/rc.d/noshutdown +++ b/libexec/rc/rc.d/noshutdown @@ -3,7 +3,7 @@ # # PROVIDE: noshutdown -# REQUIRE: var +# REQUIRE: FILESYSTEMS # BEFORE: LOGIN . /etc/rc.subr From nobody Sat Dec 13 22:55:54 2025 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 4dTMB23mplz6KF3Q for ; Sat, 13 Dec 2025 22:55:54 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dTMB22vRmz3FkV for ; Sat, 13 Dec 2025 22:55:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765666554; 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=PcnBCulaRibrpUXwFc2TwCz0SnINqs6+dshP+xMQwVc=; b=Tz6f4FxfbuOEgaIq5jVlbxW/SRLjwnwd64GZGFD33R0f7I0RRgQBKUfkSQ4eItcIxH//1S aCwqbptLVQQHs3OQhObq0TE3m5hmJq+zk63diY/13zL/DLmB+iqMPk95/hfYvU0Gr4kdcl y1j1aQzaNT77KM45kQs77Uih7aMWYuv0vKhS44hjJ2YELEhNL1HX9CFiFY0pw7n9gglCDy ylRjQhOF0sP22DLhb/JoqjLMXwvTT0cZNUXcHuXtTFL/ZlLtjBYaYwINRpsw0d4abAHJmL +5BUzoGWBC3Wd6KNbnCoCl1G337GcpDB3RM/4BXiM/1iNI8/e85hspwwb7NH1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765666554; 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=PcnBCulaRibrpUXwFc2TwCz0SnINqs6+dshP+xMQwVc=; b=NVp/g5cRwJfbHk/0CY82gtIEfFi/vZaKtx7vm+Af9a+PRNJZIznqukOkmHql121lR7iOHX 4jiADBvx+8Oz5ZHFweYN+Jz+tBvLyqsLP4qD/LYYRYNmquGcwUjQyq4RmjuPIa/5Dm1SZ0 PstDOSWx4+3+EmMSLJOoi09BopIFmGgIurU6fu5xQySdpkgYN2IrbVJLDXNS9kC/iWr+oP MupOHN4L2Ynkf9xLuqd3ESukJ9uWGCplJl5VEBxrRP6uk6SkS0uvzlJywFYywbDK3ZkBnY nG7dEoj508cuKu71/0iR1LXA70hQHDPesMV4DhuxSALlH8m1+KaKkrygbCA6dQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765666554; a=rsa-sha256; cv=none; b=HVByosrv5yt/qIPZxHOSZnRfO0BG+BA0N2P0BbndnRZPGMMJnz/VRacA9H7tcx7Nj6UJkR MGAVycHUOy31+94uVozl8np1HhmCfj4khCvKIK9C+cyeLD+iRpbfqViBFLHIhyeH7rnn0d NsEQ/8bSPxceuPZ/FPyGsMk+E+5AofPClIUtgSA+YlSAE+6Pfij3k7yhQJwRFo/dIwobM6 Ilho8D1jkgQbW+dMOy/yEcaXhgSyuf6eWmubClmWMJfVGn4TTPCQRU0KRg0nSPDHbj0Bio nF2uNgWNuuxvBagZo9zqFfnYv5mQ8EK/ChwK8ilMsaNOaCblA2icdjDlhxB7nw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dTMB22H2nz1MFK for ; Sat, 13 Dec 2025 22:55:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3cc03 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 13 Dec 2025 22:55:54 +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: 33510b16e663 - stable/14 - nextboot: Reimplement missing -a 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 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: 33510b16e663bde5be5e4a56ccb17f848c41ef4e Auto-Submitted: auto-generated Date: Sat, 13 Dec 2025 22:55:54 +0000 Message-Id: <693deefa.3cc03.148779ba@gitrepo.freebsd.org> The branch stable/14 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=33510b16e663bde5be5e4a56ccb17f848c41ef4e commit 33510b16e663bde5be5e4a56ccb17f848c41ef4e Author: Dag-Erling Smørgrav AuthorDate: 2025-12-13 22:46:25 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-12-13 22:54:14 +0000 nextboot: Reimplement missing -a option PR: 260520 MFC after: 3 days Fixes: e307eb94ae52 ("loader: zfs should support bootonce an nextboot") --- sbin/reboot/nextboot.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sbin/reboot/nextboot.sh b/sbin/reboot/nextboot.sh index 0c9cca51eb8d..5b8611b499ab 100644 --- a/sbin/reboot/nextboot.sh +++ b/sbin/reboot/nextboot.sh @@ -115,6 +115,10 @@ set -e nextboot_tmp=$(mktemp $(dirname ${nextboot_file})/nextboot.XXXXXX) +if [ ${append} = "YES" -a -f ${nextboot_file} ]; then + cp -f ${nextboot_file} ${nextboot_tmp} +fi + if [ -n "${zfs}" ]; then zfsbootcfg -z ${zfs} -n freebsd:nvstore -k nextboot_enable -v YES cat >> ${nextboot_tmp} << EOF From nobody Sun Dec 14 08:30:17 2025 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 4dTbwv1yWHz6L0WW for ; Sun, 14 Dec 2025 08:30: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dTbwp1Q1Sz47FC for ; Sun, 14 Dec 2025 08:30:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765701018; 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=nrI3K8MJMw3JRUepogo+4ya1SlfKcqgtfnKlgDYqw4k=; b=YoOuAzrBNmfH3zgMfNk0Jg1+YxEjxoGINwqPVxT3f4W7EOIwoaBXBBVO1UEzwdfOpxEhvG NsHgnq6J0NdQQMEtPN6fx6KjgfYYN9PNdAiIJgN2bFhz5jAPglriPk/aXxOixQJOHfkJ8j 4nOBzu15c4IuFk/oeInhYfD60j0BQt9IWe6JK3fjOlkPdfUQkcvtKf9WTQC5oCtiV+Puey rE1EzicKtoPgiI+pViK4jV40/Sj1/V7nwJMh0hGbhILBH0GqdcduBzIF69Vyy58KyiX/YO swn2oH8Nkgj2A47SbhrfGMZGR2ZU4Y9e0nnQxP/Olqr3Z5JR70jKInV3R81Hpg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765701018; 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=nrI3K8MJMw3JRUepogo+4ya1SlfKcqgtfnKlgDYqw4k=; b=SMbqtOyv+A8ku3zL7QGVCpdt93Wd6O15K0RLv5Y27JZG9gqrkaVYTKS13/TVR3exFzVMO9 aUaT94xxkYqVHB/1dhhrRLcMziNiQArBAzoiHEp4KytFeuQ6xo9O15+2lLiOfdgYUACzGJ aEzjru1+lkNFTTzNN3QzqUQN/w/hTyQXuokXV/jrEgtIoEX/cOZ9SD+s9fuHhmBc/niTON ekF618/Z4okTl+JMgIfegaVCbLCibusgQnKoFrSwo1tDJsyvZkAoBqflJ5PkscG4L9iDc1 gNYVcP4QPM5we3Urmiddu3JV2fjhvyjMNmrrIU1+uxJsCIRYn2FvPw7DvShFAQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765701018; a=rsa-sha256; cv=none; b=S2TQa/kaL/2V2KItT7d7xEnCLYFSdUiG6ambhwDQ+/HqsUweseFXjSdO+dWTB9sPVVUsCD kO8ALyfdUnSjUQRpnJ7y76zKT83nnrfk2WqpY768TP5ie65U9yW1Gt16GTM1O8vIjExVLi ccawe00UdTSY0p0lw8/cq8zGO/ALqxLsrQ89dGl2/9zmCSdyD/NVWGMK8RSerWt8JpygtQ ny/XR6U29XHAJo4uUHLiRmcsYzlJu5yLvWsFLtZs6rinhkUW4aS1ihJaGXFGkbUJIvHjZj 4T72pkkbeYbLcRDStVy5TyY4QawxUq4nNPYNeg5JoPkysRLOLpzqzhscn2BSxw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dTbwp0S28z9dh for ; Sun, 14 Dec 2025 08:30:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2f94b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sun, 14 Dec 2025 08:30:17 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Philip Paeps Subject: git: b94c971dd0cf - stable/15 - contrib/tzdata: import tzdata 2025c 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: philip X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: b94c971dd0cfe22c17639f18677eca92abdc5189 Auto-Submitted: auto-generated Date: Sun, 14 Dec 2025 08:30:17 +0000 Message-Id: <693e7599.2f94b.1d84d8e3@gitrepo.freebsd.org> The branch stable/15 has been updated by philip: URL: https://cgit.FreeBSD.org/src/commit/?id=b94c971dd0cfe22c17639f18677eca92abdc5189 commit b94c971dd0cfe22c17639f18677eca92abdc5189 Author: Philip Paeps AuthorDate: 2025-12-11 06:55:42 +0000 Commit: Philip Paeps CommitDate: 2025-12-14 08:28:55 +0000 contrib/tzdata: import tzdata 2025c Changes: https://github.com/eggert/tz/blob/2025c/NEWS (cherry picked from commit a86dc94b84d177da8f00d1c9420ef0860576e4c4) --- contrib/tzdata/CONTRIBUTING | 36 ++-- contrib/tzdata/Makefile | 196 ++++++++++++++------- contrib/tzdata/NEWS | 135 ++++++++++++++ contrib/tzdata/README | 14 +- contrib/tzdata/SECURITY | 2 +- contrib/tzdata/africa | 9 +- contrib/tzdata/antarctica | 12 +- contrib/tzdata/asia | 6 +- contrib/tzdata/australasia | 10 +- contrib/tzdata/backzone | 8 +- contrib/tzdata/calendars | 27 +-- contrib/tzdata/checknow.awk | 5 + contrib/tzdata/europe | 52 ++++-- contrib/tzdata/leap-seconds.list | 8 +- contrib/tzdata/leapseconds | 19 +- contrib/tzdata/leapseconds.awk | 11 +- contrib/tzdata/northamerica | 53 ++++-- contrib/tzdata/southamerica | 6 +- contrib/tzdata/theory.html | 367 ++++++++++++++++++++------------------- contrib/tzdata/version | 2 +- contrib/tzdata/zone1970.tab | 20 +-- contrib/tzdata/zonenow.tab | 94 +++++----- 22 files changed, 683 insertions(+), 409 deletions(-) diff --git a/contrib/tzdata/CONTRIBUTING b/contrib/tzdata/CONTRIBUTING index f6edbd3be7d3..c5fa803f7275 100644 --- a/contrib/tzdata/CONTRIBUTING +++ b/contrib/tzdata/CONTRIBUTING @@ -10,26 +10,27 @@ warning, the data entries do not cover all of civil time before 1970, and undoubtedly errors remain in the code and data. Feel free to fill gaps or fix mistakes, and please email improvements to for use in the future. In your email, please give -reliable sources that reviewers can check. +reliable sources that reviewers can check. The mailing list and its +archives are public, so please do not send confidential information. ## Contributing technical changes To email small changes, please run a POSIX shell command like -'diff -u old/europe new/europe >myfix.patch', and attach -'myfix.patch' to the email. +‘diff -u old/europe new/europe >myfix.patch’, and attach +‘myfix.patch’ to the email. For more-elaborate or possibly controversial changes, such as renaming, adding or removing zones, please read -"Theory and pragmatics of the tz code and data" +“Theory and pragmatics of the tz code and data” . It is also good to browse the mailing list archives for examples of patches that tend to work well. Changes should contain commentary citing reliable sources. -Citations should use "https:" URLs if available. +Citations should use ‘https:’ URLs if available. For changes that fix sensitive security-related bugs, please see the -distribution's 'SECURITY' file. +distribution’s SECURITY file. Please submit changes against either the latest release or the main branch of the development @@ -54,11 +55,11 @@ If you use Git the following workflow may be helpful: git checkout -b mybranch - * Sleuth by using 'git blame'. For example, when fixing data for - Africa/Sao_Tome, if the command 'git blame africa' outputs a line - '2951fa3b (Paul Eggert 2018-01-08 09:03:13 -0800 1068) Zone - Africa/Sao_Tome 0:26:56 - LMT 1884', commit 2951fa3b should - provide some justification for the 'Zone Africa/Sao_Tome' line. + * Sleuth by using ‘git blame’. For example, when fixing data for + Africa/Sao_Tome, if the command ‘git blame africa’ outputs a line + ‘2951fa3b (Paul Eggert 2018-01-08 09:03:13 -0800 1068) Zone + Africa/Sao_Tome 0:26:56 - LMT 1884’, commit 2951fa3b should + provide some justification for the ‘Zone Africa/Sao_Tome’ line. * Edit source files. Include commentary that justifies the changes by citing reliable sources. @@ -69,28 +70,31 @@ If you use Git the following workflow may be helpful: ./zdump -v America/Los_Angeles Although builds assume only basic POSIX, they use extra features - if available. 'make check' accesses validator.w3.org unless you - lack 'curl' or use 'make CURL=:'. If you have the latest GCC, - "make CFLAGS='$(GCC_DEBUG_FLAGS)'" does extra checking. + if available. ‘make check’ accesses validator.w3.org unless you + lack ‘curl’ or use ‘make CURL=:’. If you have the latest GCC, + ‘make CFLAGS='$(GCC_DEBUG_FLAGS)'’ does extra checking. * For each separable change, commit it in the new branch, e.g.: git add northamerica git commit - See recent 'git log' output for the commit-message style. + See recent ‘git log’ output for the commit-message style. * Create patch files 0001-..., 0002-..., ... git format-patch main + * Check that the patch files and your email setup contain only + information that you want to make public. + * After reviewing the patch files, send the patches to for others to review. git send-email main For an archived example of such an email, see - "[PROPOSED] Fix off-by-1 error for Jamaica and T&C before 1913" + “[PROPOSED] Fix off-by-1 error for Jamaica and T&C before 1913” . * Start anew by getting current with the main branch again diff --git a/contrib/tzdata/Makefile b/contrib/tzdata/Makefile index 2130582c2deb..bb7cb1014f73 100644 --- a/contrib/tzdata/Makefile +++ b/contrib/tzdata/Makefile @@ -3,17 +3,30 @@ # 2009-05-17 by Arthur David Olson. # Request POSIX conformance; this must be the first non-comment line. .POSIX: +# By default, builds of code and data assume POSIX.1-2001 or later; +# this assumption can be relaxed by tailoring the build as described below. # On older platforms you may need to scrounge for POSIX conformance. # For example, on Solaris 10 (2005) with Sun Studio 12 aka Sun C 5.9 (2007), # use 'PATH=/usr/xpg4/bin:$PATH make CC=c99'. +# Reproducible builds of distribution tarballs also need a copy of the +# Git repository, and assume the behavior of the following programs +# (or later versions): +# Git 2.7.0 (2016) +# GNU Coreutils 6.3 (2006) +# GNU Tar 1.14 (2004) +# GnuPG 1.4 (2004) +# Although tzdb does not come with a software bill of materials, +# you should be able to construct one based on the above information, +# your platform, and the way you use this Makefile. # To affect how this Makefile works, you can run a shell script like this: # # #!/bin/sh -# make CC='gcc -std=gnu23' "$@" +# make CFLAGS='-O2 -DHAVE_GETTEXT=0' "$@" # -# This example script is appropriate for a circa 2024 GNU/Linux system -# where a non-default setting enables this package's optional use of C23. +# This example script is appropriate for a GNU/Linux system +# which needs more optimization than default, and which does not want +# gettext's internationalization of diagnostics. # # Alternatively, you can simply edit this Makefile to tailor the following # macro definitions. @@ -150,8 +163,9 @@ TIME_T_ALTERNATIVES_TAIL = int_least32_t.ck uint_least32_t.ck \ # below. If you want both sets of data available, with leap seconds counted # normally, use # REDO= right_posix -# below. POSIX mandates that leap seconds not be counted; for compatibility -# with it, use "posix_only" or "posix_right". Use POSIX time on systems with +# below. POSIX mandates that leap seconds not be counted, and a +# nonnegative TZ_CHANGE_INTERVAL also assumes this, so to be compatible with +# these, use "posix_only" or "posix_right". Use POSIX time on systems with # leap smearing; this can work better than unsmeared "right" time with # applications that are not leap second aware, and is closer to unsmeared # "right" time than unsmeared POSIX time is (e.g., 0.5 vs 1.0 s max error). @@ -206,6 +220,12 @@ PACKRATLIST= UTF8_LOCALE= en_US.utf8 +# Extra flags for producing man page files like tzfile.5.txt. +# These flags are used only if groff (or mandoc) is present. +# Each option should begin with "-" and should lack shell metacharacters. +# Plausible options include -Tascii and -Tutf8. +MANFLAGS= -Tutf8 + # Non-default libraries needed to link. # On some hosts, this should have -lintl unless CFLAGS has -DHAVE_GETTEXT=0. LDLIBS= @@ -219,14 +239,19 @@ LDLIBS= # -DEPOCH_OFFSET=N if the 'time' function returns a value N greater # than what POSIX specifies, assuming local time is UT. # For example, N is 252460800 on AmigaOS. +# -DFREE_PRESERVES_ERRNO=[01] if the 'free' function munges or preserves errno +# (default is guessed) # -DHAVE_DECL_ASCTIME_R=0 if does not declare asctime_r # on POSIX platforms predating POSIX.1-2024 # -DHAVE_DECL_ENVIRON if declares 'environ' # -DHAVE_DECL_TIMEGM=0 if does not declare timegm # -DHAVE_DIRECT_H if mkdir needs (MS-Windows) +# -DHAVE_FCHMOD=0 if your system lacks the fchmod function # -DHAVE__GENERIC=0 if _Generic does not work* +# -DHAVE_GETEUID=0 if gete?[ug]id do not work # -DHAVE_GETRANDOM if getrandom works (e.g., GNU/Linux), # -DHAVE_GETRANDOM=0 to avoid using getrandom +# -DHAVE_GETRESUID=0 if getres[ug]id do not work # -DHAVE_GETTEXT if gettext works (e.g., GNU/Linux, FreeBSD, Solaris), # where LDLIBS also needs to contain -lintl on some hosts; # -DHAVE_GETTEXT=0 to avoid using gettext @@ -234,28 +259,43 @@ LDLIBS= # ctime_r and asctime_r incompatibly with POSIX.1-2017 and earlier # (Solaris when _POSIX_PTHREAD_SEMANTICS is not defined). # -DHAVE_INTTYPES_H=0 if does not work*+ +# -DHAVE_ISSETUGID=1 if issetugid works, 0 otherwise (default is guessed) +# If 0, you may also use -DHAVE_SYS_AUXV_H=1 if works, +# 0 otherwise (default is guessed). # -DHAVE_LINK=0 if your system lacks a link function # -DHAVE_LOCALTIME_R=0 if your system lacks a localtime_r function # -DHAVE_LOCALTIME_RZ=0 if you do not want zdump to use localtime_rz # localtime_rz can make zdump significantly faster, but is nonstandard. # -DHAVE_MALLOC_ERRNO=0 if malloc etc. do not set errno on failure. +# -DHAVE_MEMPCPY=1 if your system has mempcpy, 0 if not (default is guessed) # -DHAVE_POSIX_DECLS=0 if your system's include files do not declare -# functions like 'link' or variables like 'tzname' required by POSIX +# variables like 'tzname' required by POSIX +# -DHAVE_PWD_H=0 if your system lacks pwd.h, grp.h and corresponding functions +# If 0, you may also need -Dgid_t=G -Duid_t=U +# to define gid_t and uid_t to be types G and U. # -DHAVE_SETENV=0 if your system lacks the setenv function +# -DHAVE_SETMODE=[01] if your system lacks or has the setmode and getmode +# functions (default is guessed) # -DHAVE_SNPRINTF=0 if your system lacks the snprintf function+ # -DHAVE_STDCKDINT_H=0 if neither nor substitutes like # __builtin_add_overflow work* # -DHAVE_STDINT_H=0 if does not work*+ # -DHAVE_STRFTIME_L if declares locale_t and strftime_l # -DHAVE_STRDUP=0 if your system lacks the strdup function +# -DHAVE_STRNLEN=0 if your system lacks the strnlen function+ # -DHAVE_STRTOLL=0 if your system lacks the strtoll function+ +# -DHAVE_STRUCT_STAT_ST_CTIM=0 if struct stat lacks a member st_ctim+ +# -DHAVE_STRUCT_TIMESPEC=0 if your system lacks struct timespec+ # -DHAVE_SYMLINK=0 if your system lacks the symlink function # -DHAVE_SYS_STAT_H=0 if does not work* +# If 0, you may also need -Dmode_t=M to define mode_t to be type M. # -DHAVE_TZSET=0 if your system lacks a tzset function # -DHAVE_UNISTD_H=0 if does not work* # -DHAVE_UTMPX_H=0 if does not work* # -Dlocale_t=XXX if your system uses XXX instead of locale_t # -DMKTIME_MIGHT_OVERFLOW if mktime might fail due to time_t overflow +# -DOPENAT_TZDIR if tzset should use openat on TZDIR then a relative open. +# See localtime.c for details. # -DPORT_TO_C89 if tzcode should also run on mostly-C89 platforms+ # Typically it is better to use a later standard. For example, # with GCC 4.9.4 (2016), prefer '-std=gnu11' to '-DPORT_TO_C89'. @@ -274,8 +314,36 @@ LDLIBS= # -DTHREAD_SAFE to make localtime.c thread-safe, as POSIX requires; # not needed by the main-program tz code, which is single-threaded. # Append other compiler flags as needed, e.g., -pthread on GNU/Linux. +# The following options can also be used: +# -DTHREAD_PREFER_SINGLE to prefer speed in single-threaded apps, +# at some cost in CPU time and energy in multi-threaded apps. +# The following options can also be used: +# -DHAVE___ISTHREADED=1 if there is an extern int __isthreaded +# variable, 0 otherwise (default is guessed) +# -DHAVE_SYS_SINGLE_THREADED_H=0 if works, +# 0 otherwise (default is guessed) +# -DTHREAD_RWLOCK to use read-write locks intead of mutexes. +# This can improve paralellism and thus save real time +# if many threads call tzcode functions simultaneously. +# It also costs CPU time and thus energy. +# -DTHREAD_TM_MULTI to have gmtime, localtime, and offtime +# return different struct tm * addresses in different threads. +# This supports unportable programs that call +# gmtime/localtime/offtime when they should call +# gmtime_r/localtime_r/offtime_r to avoid races. +# Because the corresponding storage is freed on thread exit, +# this option is incompatible with POSIX.1-2024 and earlier. +# It also costs CPU time and memory. # -Dtime_tz=\"T\" to use T as the time_t type, rather than the system time_t # This is intended for internal use only; it mangles external names. +# -DTZ_CHANGE_INTERVAL=N if functions depending on TZ should check +# no more often than every N seconds for TZif file changes. +# If N is negative (the default), no such checking is done. +# This option is intended for platforms that want localtime etc. +# to respond to changes to a file selected by TZ, including to +# TZDEFAULT (normally /etc/localtime) if TZ is unset. +# On these platforms, REDO should be "posix_only" or "posix_right". +# This option does not affect tzalloc-allocated objects. # -DTZ_DOMAIN=\"foo\" to use "foo" for gettext domain name; default is "tz" # -DTZ_DOMAINDIR=\"/path\" to use "/path" for gettext directory; # the default is system-supplied, typically "/usr/lib/locale" @@ -314,7 +382,7 @@ LDLIBS= # Select instrumentation via "make GCC_INSTRUMENT='whatever'". GCC_INSTRUMENT = \ -fsanitize=undefined -fsanitize-address-use-after-scope \ - -fsanitize-undefined-trap-on-error -fstack-protector + -fsanitize-trap=all -fstack-protector # Omit -fanalyzer from GCC_DEBUG_FLAGS, as it makes GCC too slow. GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 \ $(GCC_INSTRUMENT) \ @@ -393,7 +461,9 @@ GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 \ # functions to be added to the time conversion library. # "offtime" is like "gmtime" except that it accepts a second (long) argument # that gives an offset to add to the time_t when converting it. -# I.e., "offtime" is like calling "localtime_rz" with a fixed-offset zone. +# "offtime_r" is to "offtime" what "gmtime_r" is to "gmtime". +# I.e., "offtime" and "offtime_r" are like calling "localtime_rz" +# with a fixed-offset zone. # "timelocal" is nearly equivalent to "mktime". # "timeoff" is like "timegm" except that it accepts a second (long) argument # that gives an offset to use when converting to a time_t. @@ -451,6 +521,11 @@ leaplist_URI = \ https://hpiers.obspm.fr/iers/bul/bulc/ntp/leap-seconds.list # The file is generated by the IERS Earth Orientation Centre, in Paris. leaplist_TZ = Europe/Paris +# +# To fetch leap-seconds.list from NIST via a less-secure protocol +# and with less-volatile metadata, use these settings: +#leaplist_URI = ftp://ftp.boulder.nist.gov/pub/time/leap-seconds.list +#leaplist_TZ = America/Denver # The zic command and its arguments. @@ -510,13 +585,10 @@ SAFE_CHARSET3= 'abcdefghijklmnopqrstuvwxyz{|}~' SAFE_CHARSET= $(SAFE_CHARSET1)$(SAFE_CHARSET2)$(SAFE_CHARSET3) SAFE_CHAR= '[]'$(SAFE_CHARSET)'-]' -# These non-alphabetic, non-ASCII printable characters are Latin-1, -# and so are likely displayable even in editors like XEmacs 21 -# that have limited display capabilities. -UNUSUAL_OK_LATIN_1 = ¡¢£¤¥¦§¨©«¬®¯°±²³´¶·¸¹»¼½¾¿×÷ -# Non-ASCII non-letters that OK_CHAR allows, as these characters are -# useful in commentary. -UNUSUAL_OK_CHARSET= $(UNUSUAL_OK_LATIN_1) +# These non-alphabetic, non-ASCII printable characters are +# used in commentary or in generated *.txt files +# and are not likely to cause confusion. +UNUSUAL_OK_CHARSET= §«°±»½¾×–‘’“”•→−≤★⟨⟩⯪ # Put this in a bracket expression to match spaces. s = [:space:] @@ -525,9 +597,6 @@ s = [:space:] # This is the same as SAFE_CHAR, except that UNUSUAL_OK_CHARSET and # multibyte letters are also allowed so that commentary can contain a # few safe symbols and people's names and can quote non-English sources. -# Other non-letters are limited to ASCII renderings for the -# convenience of maintainers using XEmacs 21.5.34, which by default -# mishandles Unicode characters U+0100 and greater. OK_CHAR= '[][:alpha:]$(UNUSUAL_OK_CHARSET)'$(SAFE_CHARSET)'-]' # SAFE_LINE matches a line of safe characters. @@ -874,9 +943,9 @@ UTF8_LOCALE_MISSING = \ character-set.ck: $(ENCHILADA) $(UTF8_LOCALE_MISSING) || { \ sharp='#' && \ - ! grep -Env $(SAFE_LINE) $(MANS) date.1 $(MANTXTS) \ - $(MISC) $(SOURCES) $(WEB_PAGES) \ - CONTRIBUTING LICENSE README SECURITY \ + ! grep -Env $(SAFE_LINE) $(MANS) date.1 \ + $(MISC) $(SOURCES) \ + LICENSE \ version tzdata.zi && \ ! grep -Env $(SAFE_LINE)'|^UNUSUAL_OK_'$(OK_CHAR)'*$$' \ Makefile && \ @@ -888,11 +957,9 @@ character-set.ck: $(ENCHILADA) white-space.ck: $(ENCHILADA) $(UTF8_LOCALE_MISSING) || { \ - enchilada='$(ENCHILADA)' && \ patfmt=' \t|[\f\r\v]' && pat=$$(printf "$$patfmt\\n") && \ ! grep -En "$$pat|[$s]\$$" \ - $${enchilada%leap-seconds.list*} \ - $${enchilada#*leap-seconds.list}; \ + $(ENCHILADA:leap-seconds.list=); \ } touch $@ @@ -959,8 +1026,10 @@ now.ck: checknow.awk date tzdata.zi zdump zic zone1970.tab zonenow.tab ./zdump -i -t 0,$$future \ $$(find "$$PWD/$@d" -name Etc -prune \ -o -type f ! -name '*.tab' -print) \ - >$@d/zdump-1970.tab + >$@d/zdump-1970.tab && \ $(AWK) \ + -v now=$$now \ + -v now_out=$@.out \ -v zdump_table=$@d/zdump-now.tab \ -f checknow.awk zonenow.tab $(AWK) \ @@ -970,7 +1039,8 @@ now.ck: checknow.awk date tzdata.zi zdump zic zone1970.tab zonenow.tab -v zdump_table=$@d/zdump-1970.tab \ -f checknow.awk rm -fr $@d - touch $@ + touch $@.out + mv $@.out $@ tables.ck: checktab.awk $(YDATA) backward zone.tab zone1970.tab for tab in $(ZONETABLES); do \ @@ -1031,7 +1101,7 @@ zishrink-posix.ck zishrink-right.ck: \ clean_misc: rm -fr *.ckd *.dir - rm -f *.ck *.core *.o *.out core core.* \ + rm -f *.ck *.core *.o *.out *.t core core.* \ date tzdir.h tzselect version.h zdump zic libtz.a clean: clean_misc rm -fr tzdb-*/ @@ -1059,7 +1129,7 @@ zdump.8.txt: zdump.8 zic.8.txt: zic.8 $(MANTXTS): workman.sh - LC_ALL=C sh workman.sh $(@:.txt=) >$@.out + LC_ALL=C sh workman.sh $(MANFLAGS) $(@:.txt=) >$@.out mv $@.out $@ # Set file timestamps deterministically if possible, @@ -1108,7 +1178,7 @@ set-timestamps.out: $(EIGHT_YARDS) if git diff --quiet HEAD $$file; then \ time=$$(TZ=UTC0 git log -1 \ --format='tformat:%cd' \ - --date='format:%Y-%m-%dT%H:%M:%SZ' \ + --date='format-local:%Y-%m-%dT%H:%M:%SZ' \ $$file) && \ echo "+ touch -md $$time $$file" && \ touch -md $$time $$file; \ @@ -1207,12 +1277,12 @@ $(TIME_T_ALTERNATIVES): $(VERSION_DEPS) touch $@ TRADITIONAL_ASC = \ - tzcode$(VERSION).tar.gz.asc \ - tzdata$(VERSION).tar.gz.asc + tzcode$(VERSION).tar.gz.asc.t \ + tzdata$(VERSION).tar.gz.asc.t REARGUARD_ASC = \ - tzdata$(VERSION)-rearguard.tar.gz.asc + tzdata$(VERSION)-rearguard.tar.gz.asc.t ALL_ASC = $(TRADITIONAL_ASC) $(REARGUARD_ASC) \ - tzdb-$(VERSION).tar.lz.asc + tzdb-$(VERSION).tar.lz.asc.t tarballs rearguard_tarballs tailored_tarballs traditional_tarballs \ signatures rearguard_signatures traditional_signatures: \ @@ -1224,29 +1294,31 @@ signatures rearguard_signatures traditional_signatures: \ # other means. Ordinarily these rules are used only by the above # non-_version rules, which set VERSION on the 'make' command line. tarballs_version: traditional_tarballs_version rearguard_tarballs_version \ - tzdb-$(VERSION).tar.lz + tzdb-$(VERSION).tar.lz.t rearguard_tarballs_version: \ - tzdata$(VERSION)-rearguard.tar.gz + tzdata$(VERSION)-rearguard.tar.gz.t traditional_tarballs_version: \ - tzcode$(VERSION).tar.gz tzdata$(VERSION).tar.gz + tzcode$(VERSION).tar.gz.t tzdata$(VERSION).tar.gz.t tailored_tarballs_version: \ - tzdata$(VERSION)-tailored.tar.gz + tzdata$(VERSION)-tailored.tar.gz.t signatures_version: $(ALL_ASC) rearguard_signatures_version: $(REARGUARD_ASC) traditional_signatures_version: $(TRADITIONAL_ASC) -tzcode$(VERSION).tar.gz: set-timestamps.out +tzcode$(VERSION).tar.gz.t: set-timestamps.out $(SETUP_TAR) && \ $$TAR -cf - \ $(COMMON) $(DOCS) $(SOURCES) | \ - gzip $(GZIPFLAGS) >$@.out - mv $@.out $@ + gzip $(GZIPFLAGS) >$(@:.t=) + $(SET_TIMESTAMP) $(@:.t=) $(COMMON) $(DOCS) $(SOURCES) + touch $@ -tzdata$(VERSION).tar.gz: set-timestamps.out +tzdata$(VERSION).tar.gz.t: set-timestamps.out $(SETUP_TAR) && \ $$TAR -cf - $(TZDATA_DIST) | \ - gzip $(GZIPFLAGS) >$@.out - mv $@.out $@ + gzip $(GZIPFLAGS) >$(@:.t=) + $(SET_TIMESTAMP) $(@:.t=) $(TZDATA_DIST) + touch $@ # Create empty files with a reproducible timestamp. CREATE_EMPTY = TZ=UTC0 touch -mt 202010122253.00 @@ -1255,7 +1327,7 @@ CREATE_EMPTY = TZ=UTC0 touch -mt 202010122253.00 # for backwards compatibility with tz releases 2018e through 2022a. # They should go away eventually. To build rearguard tarballs you # can instead use 'make DATAFORM=rearguard tailored_tarballs'. -tzdata$(VERSION)-rearguard.tar.gz: rearguard.zi set-timestamps.out +tzdata$(VERSION)-rearguard.tar.gz.t: rearguard.zi set-timestamps.out rm -fr $@.dir mkdir $@.dir ln $(TZDATA_DIST) $@.dir @@ -1273,8 +1345,11 @@ tzdata$(VERSION)-rearguard.tar.gz: rearguard.zi set-timestamps.out (cd $@.dir && \ $$TAR -cf - \ $(TZDATA_DIST) pacificnew | \ - gzip $(GZIPFLAGS)) >$@.out - mv $@.out $@ + gzip $(GZIPFLAGS)) >$(@:.t=) + $(SET_TIMESTAMP) $(@:.t=) \ + $$(cd $@.dir && \ + ls $(TZDATA_DIST) pacificnew | sed 's,^,$@.dir/,') + touch $@ # Create a tailored tarball suitable for TZUpdater and compatible tools. # For example, 'make DATAFORM=vanguard tailored_tarballs' makes a tarball @@ -1283,7 +1358,7 @@ tzdata$(VERSION)-rearguard.tar.gz: rearguard.zi set-timestamps.out # traditional tarball, as data entries are put into 'etcetera' even if they # came from some other source file. However, the effect should be the same # for ordinary use, which reads all the source files. -tzdata$(VERSION)-tailored.tar.gz: set-timestamps.out +tzdata$(VERSION)-tailored.tar.gz.t: set-timestamps.out rm -fr $@.dir mkdir $@.dir : The dummy pacificnew pacifies TZUpdater 2.3.1 and earlier. @@ -1295,7 +1370,7 @@ tzdata$(VERSION)-tailored.tar.gz: set-timestamps.out cd $@.dir && \ $(CREATE_EMPTY) $(PRIMARY_YDATA) $(NDATA) backward \ $$pacificnew - (grep '^#' tzdata.zi && echo && cat $(DATAFORM).zi) \ + (sed '/^#/!d' tzdata.zi && echo && cat $(DATAFORM).zi) \ >$@.dir/etcetera touch -mr tzdata.zi $@.dir/etcetera sed -n \ @@ -1316,24 +1391,29 @@ tzdata$(VERSION)-tailored.tar.gz: set-timestamps.out ln $$links $@.dir $(SETUP_TAR) && \ (cd $@.dir && \ - $$TAR -cf - * | gzip $(GZIPFLAGS)) >$@.out - mv $@.out $@ + $$TAR -cf - *) | gzip $(GZIPFLAGS) >$(@:.t=) + $(SET_TIMESTAMP) $(@:.t=) \ + $$(cd $@.dir && ls * | sed 's,^,$@.dir/,') + touch $@ -tzdb-$(VERSION).tar.lz: set-timestamps.out set-tzs-timestamp.out +tzdb-$(VERSION).tar.lz.t: set-timestamps.out set-tzs-timestamp.out rm -fr tzdb-$(VERSION) mkdir tzdb-$(VERSION) ln $(ENCHILADA) tzdb-$(VERSION) $(SET_TIMESTAMP) tzdb-$(VERSION) tzdb-$(VERSION)/* $(SETUP_TAR) && \ - $$TAR -cf - tzdb-$(VERSION) | lzip -9 >$@.out - mv $@.out $@ + $$TAR -cf - tzdb-$(VERSION) | lzip -9 >$(@:.t=) + $(SET_TIMESTAMP) $(@:.t=) tzdb-$(VERSION) + touch $@ -tzcode$(VERSION).tar.gz.asc: tzcode$(VERSION).tar.gz -tzdata$(VERSION).tar.gz.asc: tzdata$(VERSION).tar.gz -tzdata$(VERSION)-rearguard.tar.gz.asc: tzdata$(VERSION)-rearguard.tar.gz -tzdb-$(VERSION).tar.lz.asc: tzdb-$(VERSION).tar.lz +tzcode$(VERSION).tar.gz.asc.t: tzcode$(VERSION).tar.gz.t +tzdata$(VERSION).tar.gz.asc.t: tzdata$(VERSION).tar.gz.t +tzdata$(VERSION)-rearguard.tar.gz.asc.t: tzdata$(VERSION)-rearguard.tar.gz.t +tzdb-$(VERSION).tar.lz.asc.t: tzdb-$(VERSION).tar.lz.t $(ALL_ASC): - $(GPG) --armor --detach-sign $? + $(GPG) --armor --detach-sign $(?:.t=) + $(SET_TIMESTAMP) $(@:.t=) $(?:.t=) + touch $@ TYPECHECK_CFLAGS = $(CFLAGS) -DTYPECHECK -D__time_t_defined -D_TIME_T typecheck: long-long.ck unsigned.ck diff --git a/contrib/tzdata/NEWS b/contrib/tzdata/NEWS index 8c0771641ef0..eef59a2b095b 100644 --- a/contrib/tzdata/NEWS +++ b/contrib/tzdata/NEWS @@ -1,5 +1,140 @@ News for the tz database +Release 2025c - 2025-12-10 14:42:37 -0800 + + Briefly: + Several code changes for compatibility with FreeBSD. + + Changes to past timestamps + + Baja California agreed with California’s DST rules in 1953 and in + 1961 through 1975, instead of observing standard time all year. + (Thanks to Alois Treindl.) + + Changes to build procedure + + Files in distributed tarballs now have correct commit times. + Formerly, the committer’s time zone was incorrectly ignored. + + Distribution products (*.asc, *.gz, and *.lz) now have + reproducible timestamps. Formerly, only the contents of the + compressed tarballs had reproducible timestamps. + + By default, distributed formatted man pages (*.txt) now use UTF-8 + and are left-adjusted more consistently. A new Makefile macro + MANFLAGS can override these defaults. (Thanks to G. Branden + Robinson for inspiring these changes.) + + Changes to code + + An unset TZ is no longer invalid when /etc/localtime is missing, + and is abbreviated "UTC" not "-00". This reverts to 2024b behavior. + (Problem and patch reported by Dag-Erling Smørgrav.) + + New function offtime_r, short for fixed-offset localtime_rz. + It is defined if STD_INSPIRED is defined. + (Patch from Dag-Erling Smørgrav.) + + tzset etc. are now more cautious about questionable TZ settings. + Privileged programs now reject TZ settings that start with '/', + unless they are TZDEFAULT (default "/etc/localtime") or + start with TZDIR then '/' (default "/usr/share/zoneinfo/"). + Unprivileged programs now require files to be regular files + and reject relative names containing ".." directory components; + formerly, only privileged programs did those two things. + These changes were inspired by similar behavior in FreeBSD. + On NetBSD, unprivileged programs now use O_REGULAR to check + whether a TZ setting starting with '/' names a regular file, + avoiding a minor security race still present elsewhere. + TZ strings taken from tzalloc arguments are now treated with + no less caution than TZ strings taken from the environment, as + the old undocumented behavior would have been hard to explain. + tzset etc. no longer use the ‘access’ system call to check access; + instead they now use the system calls issetugid, getauxval, + getresuid/getresgid, and geteuid/getegid/getuid/getgid (whichever + first works) to test whether a program is privileged. + Compile with -DHAVE_SYS_AUXV_H=[01] to enable or disable + which (if it defines AT_SECURE) enables getauxval, + and compile with -DHAVE_ISSETUGID=[01], -DHAVE_GETRESUID=[01], and + -DHAVE_GETEUID=[01] to enable or disable the other calls’ use. + + The new CFLAGS option -DTZ_CHANGE_INTERVAL=N makes tzset etc. + check for TZif file changes if the in-memory data are N seconds + old or more, and are derived from the TZ environment variable. + This is intended for platforms that want tzset etc. to reflect + changes to whatever file TZ selects (including changes to + /etc/localtime if TZ is unset). If N is negative (the default) + these checks are omitted; this is the traditional behavior. + + The new CFLAGS options -DHAVE_STRUCT_STAT_ST_CTIM=0 and + -DHAVE_STRUCT_TIMESPEC=0 port to non-POSIX.1-2008 platforms + that lack st_ctim and struct timespec, respectively. + + tzset etc. now treat ' ' like '_' in time zone abbreviations, + just as they treat other invalid bytes. This continues the + transition begun in release 96k, which removed spaces in tzdata + because the spaces break time string parsers. + + The new CFLAGS option -DTHREAD_PREFER_SINGLE causes tzcode + in single-threaded processes to avoid locks, as FreeBSD does. + This can save time in single-threaded apps. The threadedness + testing costs CPU time and energy in multi-threaded apps. + New options -DHAVE___ISTHREADED and -DHAVE_SYS_SINGLE_THREADED_H + can help configure how to test for single-threadedness. + + The new CFLAGS option -DTHREAD_RWLOCK uses read-write locks, as + macOS does, instead of mutexes. This saves real time when TZ is + rarely changing and many threads call tzcode simultaneously. + It costs more CPU time and energy. + + The new CFLAGS option -TTHREAD_TM_MULTI causes localtime to return + a pointer to thread-specific memory, as FreeBSD does, instead of + to the same memory in all threads. This supports unportable + programs that incorrectly use localtime instead of localtime_r. + This option affects gmtime and offtime similarly to localtime. + Because the corresponding storage is freed on thread exit, this + option is incompatible with POSIX.1-2024 and earlier. It also + costs CPU time and memory. + + tzfree now preserves errno, consistently with POSIX.1-2024 ‘free’. + + tzcode now uses mempcpy if available, guessing its availability. + Compile with -DHAVE_MEMPCPY=1 or 0 to override the guess. + + tzcode now uses strnlen to improve asymptotic performance a bit. + Compile with -DHAVE_STRNLEN=0 if your platform lacks it. + + tzcode now hand-declares unistd.h-provided symbols like getopt + if HAVE_UNISTD_H=0, not if HAVE_POSIX_DECLS=0. + + tzset etc. now have an experimental OPENAT_TZDIR option; + see Makefile and localtime.c for details. + + On platforms like GNU/Hurd that do not define PATH_MAX, + exceedingly long TZ strings no longer fail merely because they + exceed an arbitrary file name length limit imposed by tzcode. + + zic has new options inspired by FreeBSD. ‘-D’ skips creation of + output ancestor directories, ‘-m MODE’ sets output files’ mode, + and ‘-u OWNER[:GROUP]’ sets output files’ owner and group. + + zic now uses the fdopen function, which was standardized by + POSIX.1-1988 and is now safe to use in portable code. + This replaces its use of the older umask function, which + complicated maintenance. + + Changes to commentary + + The leapseconds file contains commentary about the IERS and NIST + last-modified and expiration timestamps for leap second data. + (Thanks to Judah Levine.) + + Commentary now also uses characters from the set –‘’“”•≤ as this + can be useful and should work with current applications. This + also affects data in iso3166.tab and zone1970.tab, which now + contain strings like “Côte d’Ivoire” instead of “Côte d'Ivoire”. + + Release 2025b - 2025-03-22 13:40:46 -0700 Briefly: diff --git a/contrib/tzdata/README b/contrib/tzdata/README index edabd2e0690f..f22ec5492d09 100644 --- a/contrib/tzdata/README +++ b/contrib/tzdata/README @@ -1,8 +1,8 @@ README for the tz distribution -"Where do I set the hands of the clock?" -- Les Tremayne as The King -"Oh that--you can set them any place you want." -- Frank Baxter as The Scientist - (from the Bell System film "About Time") +“Where do I set the hands of the clock?” – Les Tremayne as The King +“Oh that – you can set them any place you want.” – Frank Baxter as The Scientist + (from the Bell System film “About Time”) The Time Zone Database (called tz, tzdb or zoneinfo) contains code and data that represent the history of local time for many representative @@ -13,12 +13,12 @@ and daylight-saving rules. See or the file tz-link.html for how to acquire the code and data. -Once acquired, read the leading comments in the file "Makefile" +Once acquired, read the leading comments in the file ‘Makefile’ and make any changes needed to make things right for your system, especially when using a platform other than current GNU/Linux. Then run the following commands, substituting your desired -installation directory for "$HOME/tzdir": +installation directory for ‘$HOME/tzdir’: make TOPDIR="$HOME/tzdir" install "$HOME/tzdir/usr/bin/zdump" -v America/Los_Angeles @@ -39,12 +39,12 @@ The information in the time zone data files is by no means authoritative; fixes and enhancements are welcome. Please see the file CONTRIBUTING for details. -Thanks to these Time Zone Caballeros who've made major contributions to the +Thanks to these Time Zone Caballeros who’ve made major contributions to the time conversion package: Keith Bostic; Bob Devine; Paul Eggert; Robert Elz; Guy Harris; Mark Horton; John Mackin; and Bradley White. Thanks also to Michael Bloom, Art Neilson, Stephen Prince, John Sovereign, and Frank Wales for testing work, and to Gwillim Law for checking local mean time data. -Thanks in particular to Arthur David Olson, the project's founder and first +Thanks in particular to Arthur David Olson, the project’s founder and first maintainer, to whom the time zone community owes the greatest debt of all. None of them are responsible for remaining errors. diff --git a/contrib/tzdata/SECURITY b/contrib/tzdata/SECURITY index 40128bc86dd2..dbce8bbd5d2d 100644 --- a/contrib/tzdata/SECURITY +++ b/contrib/tzdata/SECURITY @@ -1,7 +1,7 @@ Please report any sensitive security-related bugs via email to the tzdb designated coordinators, currently Paul Eggert and Tim Parenti . -Put "tzdb security" at the start of your email's subject line. +Put “tzdb security” at the start of your email’s subject line. We prefer communications to be in English. You should receive a response within a week. If not, please follow up diff --git a/contrib/tzdata/africa b/contrib/tzdata/africa index fd6c44aaa5b7..ec067bee524d 100644 --- a/contrib/tzdata/africa +++ b/contrib/tzdata/africa @@ -4,9 +4,9 @@ # 2009-05-17 by Arthur David Olson. # This file is by no means authoritative; if you think you know better, -# go ahead and edit the file (and please send any changes to -# tz@iana.org for general use in the future). For more, please see -# the file CONTRIBUTING in the tz distribution. +# go ahead and edit the file, and please send any changes to +# the public mailing list tz@iana.org for general use in the future. +# For more, please see the file CONTRIBUTING in the tz distribution. # From Paul Eggert (2018-05-27): # @@ -115,8 +115,9 @@ Zone Atlantic/Cape_Verde -1:34:04 - LMT 1912 Jan 01 2:00u # Praia -1:00 - %z # Chad +# Fort-Lamy was renamed to N’Djamena on 1973-04-06. # Zone NAME STDOFF RULES FORMAT [UNTIL] -Zone Africa/Ndjamena 1:00:12 - LMT 1912 Jan 1 # N'Djamena +Zone Africa/Ndjamena 1:00:12 - LMT 1912 Jan 1 # Fort-Lamy 1:00 - WAT 1979 Oct 14 1:00 1:00 WAST 1980 Mar 8 1:00 - WAT diff --git a/contrib/tzdata/antarctica b/contrib/tzdata/antarctica index 2e90a5e09d17..f46ac479cbd4 100644 --- a/contrib/tzdata/antarctica +++ b/contrib/tzdata/antarctica @@ -3,13 +3,10 @@ # This file is in the public domain, so clarified as of # 2009-05-17 by Arthur David Olson. -# From Paul Eggert (1999-11-15): -# To keep things manageable, we list only locations occupied year-round; see -# COMNAP - Stations and Bases -# http://www.comnap.aq/comnap/comnap.nsf/P/Stations/ -# and -# Summary of the Peri-Antarctic Islands (1998-07-23) -# http://www.spri.cam.ac.uk/bob/periant.htm +# From Paul Eggert (2025-08-16): +# To keep things manageable, list only locations occupied year-round; see +# Antarctic Facilities Information +# https://www.comnap.aq/antarctic-facilities-information # for information. # Unless otherwise specified, we have no time zone information. @@ -144,6 +141,7 @@ Zone Antarctica/Mawson 0 - -00 1954 Feb 13 # China - year-round bases # Great Wall, King George Island, -6213-05858, since 1985-02-20 # Zhongshan, Larsemann Hills, Prydz Bay, -6922+07623, since 1989-02-26 +# Qinling, Inexpressible I, Terra Nova Bay, -7456+16343, since 2024-02-07 # France - year-round bases (also see "France & Italy") # diff --git a/contrib/tzdata/asia b/contrib/tzdata/asia index d3d1059ac90d..dd76bdfc70b7 100644 --- a/contrib/tzdata/asia +++ b/contrib/tzdata/asia @@ -4,9 +4,9 @@ # 2009-05-17 by Arthur David Olson. # This file is by no means authoritative; if you think you know better, -# go ahead and edit the file (and please send any changes to -# tz@iana.org for general use in the future). For more, please see -# the file CONTRIBUTING in the tz distribution. +# go ahead and edit the file, and please send any changes to +# the public mailing list tz@iana.org for general use in the future. +# For more, please see the file CONTRIBUTING in the tz distribution. # From Paul Eggert (2019-07-11): # diff --git a/contrib/tzdata/australasia b/contrib/tzdata/australasia index 405944536cd3..e52aab109bca 100644 --- a/contrib/tzdata/australasia +++ b/contrib/tzdata/australasia @@ -937,9 +937,9 @@ Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila # NOTES # This file is by no means authoritative; if you think you know better, -# go ahead and edit the file (and please send any changes to -# tz@iana.org for general use in the future). For more, please see -# the file CONTRIBUTING in the tz distribution. +# go ahead and edit the file, and please send any changes to +# the public mailing list tz@iana.org for general use in the future. +# For more, please see the file CONTRIBUTING in the tz distribution. # From Paul Eggert (2018-11-18): # @@ -1988,6 +1988,7 @@ Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila # From Paul Eggert (2018-11-19): # The 1921-01-15 introduction of standard time is in Shanks; it is also in # "Standard Time Throughout the World", US National Bureau of Standards (1935), +# https://nvlpubs.nist.gov/nistpubs/Legacy/circ/nbscircular406.pdf # page 3, which does not give the UT offset. In response to a comment by # Phake Nick I set the Nauru time of occupation by Japan to # 1942-08-29/1945-09-08 by using dates from: @@ -2055,9 +2056,10 @@ Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila # https://webspace.science.uu.nl/~gent0113/idl/idl_alaska_samoa.htm # Although Shanks & Pottenger says they both switched to UT -11:30 -# in 1911, and to -11 in 1950. many earlier sources give -11 +# in 1911, and to -11 in 1950, many earlier sources give -11 # for American Samoa, e.g., the US National Bureau of Standards # circular "Standard Time Throughout the World", 1932. +# https://nvlpubs.nist.gov/nistpubs/Legacy/circ/nbscircular399.pdf # Assume American Samoa switched to -11 in 1911, not 1950, # and that after 1950 they agreed until (western) Samoa skipped a # day in 2011. Assume also that the Samoas follow the US and New diff --git a/contrib/tzdata/backzone b/contrib/tzdata/backzone index dd7a86758374..3c7e720ab4e7 100644 --- a/contrib/tzdata/backzone +++ b/contrib/tzdata/backzone @@ -2,10 +2,10 @@ # This file is in the public domain. -# This file is by no means authoritative; if you think you know -# better, go ahead and edit it (and please send any changes to -# tz@iana.org for general use in the future). For more, please see -# the file CONTRIBUTING in the tz distribution. +# This file is by no means authoritative; if you think you know better, +# go ahead and edit the file, and please send any changes to +# the public mailing list tz@iana.org for general use in the future. +# For more, please see the file CONTRIBUTING in the tz distribution. # When proposing changes to this file, please use 'git format-patch' # format, either by attaching the resulting .patch file to your email, diff --git a/contrib/tzdata/calendars b/contrib/tzdata/calendars index f4ed9e434e50..699de85cbffa 100644 --- a/contrib/tzdata/calendars +++ b/contrib/tzdata/calendars @@ -16,30 +16,9 @@ and (in Paris only) 1871-05-06 through 1871-05-23. Russia -From Chris Carrier (1996-12-02): -On 1929-10-01 the Soviet Union instituted an "Eternal Calendar" -with 30-day months plus 5 holidays, with a 5-day week. -On 1931-12-01 it changed to a 6-day week; in 1934 it reverted to the -Gregorian calendar while retaining the 6-day week; on 1940-06-27 it -reverted to the 7-day week. With the 6-day week the usual days -off were the 6th, 12th, 18th, 24th and 30th of the month. -(Source: Evitiar Zerubavel, _The Seven Day Circle_) - - -Mark Brader reported a similar story in "The Book of Calendars", edited -by Frank Parise (1982, Facts on File, ISBN 0-8719-6467-8), page 377. But: - -From: Petteri Sulonen (via Usenet) -Date: 14 Jan 1999 00:00:00 GMT -... - -If your source is correct, how come documents between 1929 and 1940 were -still dated using the conventional, Gregorian calendar? - -I can post a scan of a document dated December 1, 1934, signed by -Yenukidze, the secretary, on behalf of Kalinin, the President of the -Executive Committee of the Supreme Soviet, if you like. - +Soviet Russia adopted the Gregorian calendar on 1918-02-14. +It also used 5- and 6-day work weeks at times, in parallel with the +Gregorian calendar; see . Sweden (and Finland) diff --git a/contrib/tzdata/checknow.awk b/contrib/tzdata/checknow.awk index 450490ee3768..8139ad57ecd2 100644 --- a/contrib/tzdata/checknow.awk +++ b/contrib/tzdata/checknow.awk @@ -50,5 +50,10 @@ END { status = 1 } } + if (now_out) { + for (data in zones) { + printf "%s=%s\n", now, zones[data] >>now_out + } + } exit status } diff --git a/contrib/tzdata/europe b/contrib/tzdata/europe index df334fc27c1d..af5217103845 100644 --- a/contrib/tzdata/europe +++ b/contrib/tzdata/europe @@ -4,9 +4,9 @@ # 2009-05-17 by Arthur David Olson. # This file is by no means authoritative; if you think you know better, -# go ahead and edit the file (and please send any changes to -# tz@iana.org for general use in the future). For more, please see -# the file CONTRIBUTING in the tz distribution. +# go ahead and edit the file, and please send any changes to +# the public mailing list tz@iana.org for general use in the future. +# For more, please see the file CONTRIBUTING in the tz distribution. # From Paul Eggert (2017-02-10): # @@ -42,7 +42,7 @@ # . He writes: # "It is requested that corrections and additions to these tables # may be sent to Mr. John Milne, Royal Geographical Society, -# Savile Row, London." Nowadays please email them to tz@iana.org. +# Savile Row, London." Nowadays please see the file CONTRIBUTING. # # Byalokoz EL. New Counting of Time in Russia since July 1, 1919. # This Russian-language source was consulted by Vladimir Karpinsky; see @@ -54,7 +54,7 @@ *** 1619 LINES SKIPPED *** From nobody Sun Dec 14 08:30:48 2025 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 4dTbxN4GzYz6L0h7 for ; Sun, 14 Dec 2025 08:30:48 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dTbxN3bwNz47mw for ; Sun, 14 Dec 2025 08:30:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765701048; 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=Cx7Bl1XpQtaUVUVE1m0IT+s4b3teupYU1f6CFfeh2tg=; b=bXgnncpFYN96nRdl3tga//3w4W56vm5/QwLpjkwWvSNAOkgo1XTFNGwGgRBTIjlBSiG+Rg kztvD7/fP8SLKg6/7se7Y79WmifYXNADDR6xogDqKwj4TLcv8VJwOUBCh10m6nFquUghu2 MUit62O5Y1MlbjFAtCHhAnltolygJltQwXU6q9t1djptKJB7Dk979y+xRUQs1krYnukoup 1TNqToag07I3IRhmLSQHDK6KHFe3C8/EXcMBf7IMPvGYaDbGNW8VZ52zTxskpOcETMyJFd hwjLm8bkO8KP5hB3FyCXGAoWC7VOMoiubKzzx92XqqQOQjQHoHfanS3mtWTv0g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765701048; 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=Cx7Bl1XpQtaUVUVE1m0IT+s4b3teupYU1f6CFfeh2tg=; b=BoQ7Qxr6SPkuCvBnmZQH1lS3rvhT/SZnRjtIxvv5sYfeocn4fkpe4jo5HcwMWavBSMM+QQ Le68tp3+XG0PDMtbuhk4pU29qKjlE/D6dSP9VdWronEAisMW06LrxMRBWTwrZl1Ww7SJ8L Hr6V32PgWlOD61eCLzV2IyUljJYVGr5Xbp/wazY6r0j/KoEXCByktMHzqMKfkdua2OaiPX Nhb2pLN3MIk/LzVPCnbiOhUztqD1Zt2/hBckoU49bSFaJyZuHQsV3zT+smcYDTR4JxAzQx JyGaLeSMU/uXJZV0sMhKANjAuX01rIg6hcnEbaR6WIavjLokWv34p+sSE/Br3A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765701048; a=rsa-sha256; cv=none; b=GUW5dbBFXWREBYxlDFTS+EsQ4Z0lYcH2Wl6VGqY/6b9LCEvEo+DsoTGn/TkMfiHyNJAEYe 4HUcsJ1DgddkS1nUrBUo3FN6DliP0oj31PajY0xVMmKTnBLtqtOceyLts6rfrcxJrW+C+w T+poJX/XV4+OPLGOn0cW1Onf46S2SZd/hcH/48T1qG6FtSU88j4EtLta5fDURnYCs4V5/r 3uwTaHzCk15ptWGpU+Qi/rZo75IE9Gf7+RhCCJiIhmrTDXHzdFWgVfo49+uYt1HouweXRV +w5LezggW+IaAPl/ucYFueymWEv5CI84dk3z+q7dJiULt4pHbOPpUdd9/AnlBg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dTbxN2wxgz9hQ for ; Sun, 14 Dec 2025 08:30:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2fe46 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sun, 14 Dec 2025 08:30:48 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Philip Paeps Subject: git: 68e2f4cc5e4e - stable/14 - contrib/tzdata: import tzdata 2025c 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: philip X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 68e2f4cc5e4ef17e64da2a25fb9918a0e1074b03 Auto-Submitted: auto-generated Date: Sun, 14 Dec 2025 08:30:48 +0000 Message-Id: <693e75b8.2fe46.527ab66b@gitrepo.freebsd.org> The branch stable/14 has been updated by philip: URL: https://cgit.FreeBSD.org/src/commit/?id=68e2f4cc5e4ef17e64da2a25fb9918a0e1074b03 commit 68e2f4cc5e4ef17e64da2a25fb9918a0e1074b03 Author: Philip Paeps AuthorDate: 2025-12-11 06:55:42 +0000 Commit: Philip Paeps CommitDate: 2025-12-14 08:29:53 +0000 contrib/tzdata: import tzdata 2025c Changes: https://github.com/eggert/tz/blob/2025c/NEWS (cherry picked from commit a86dc94b84d177da8f00d1c9420ef0860576e4c4) --- contrib/tzdata/CONTRIBUTING | 36 ++-- contrib/tzdata/Makefile | 196 ++++++++++++++------- contrib/tzdata/NEWS | 135 ++++++++++++++ contrib/tzdata/README | 14 +- contrib/tzdata/SECURITY | 2 +- contrib/tzdata/africa | 9 +- contrib/tzdata/antarctica | 12 +- contrib/tzdata/asia | 6 +- contrib/tzdata/australasia | 10 +- contrib/tzdata/backzone | 8 +- contrib/tzdata/calendars | 27 +-- contrib/tzdata/checknow.awk | 5 + contrib/tzdata/europe | 52 ++++-- contrib/tzdata/leap-seconds.list | 8 +- contrib/tzdata/leapseconds | 19 +- contrib/tzdata/leapseconds.awk | 11 +- contrib/tzdata/northamerica | 53 ++++-- contrib/tzdata/southamerica | 6 +- contrib/tzdata/theory.html | 367 ++++++++++++++++++++------------------- contrib/tzdata/version | 2 +- contrib/tzdata/zone1970.tab | 20 +-- contrib/tzdata/zonenow.tab | 94 +++++----- 22 files changed, 683 insertions(+), 409 deletions(-) diff --git a/contrib/tzdata/CONTRIBUTING b/contrib/tzdata/CONTRIBUTING index f6edbd3be7d3..c5fa803f7275 100644 --- a/contrib/tzdata/CONTRIBUTING +++ b/contrib/tzdata/CONTRIBUTING @@ -10,26 +10,27 @@ warning, the data entries do not cover all of civil time before 1970, and undoubtedly errors remain in the code and data. Feel free to fill gaps or fix mistakes, and please email improvements to for use in the future. In your email, please give -reliable sources that reviewers can check. +reliable sources that reviewers can check. The mailing list and its +archives are public, so please do not send confidential information. ## Contributing technical changes To email small changes, please run a POSIX shell command like -'diff -u old/europe new/europe >myfix.patch', and attach -'myfix.patch' to the email. +‘diff -u old/europe new/europe >myfix.patch’, and attach +‘myfix.patch’ to the email. For more-elaborate or possibly controversial changes, such as renaming, adding or removing zones, please read -"Theory and pragmatics of the tz code and data" +“Theory and pragmatics of the tz code and data” . It is also good to browse the mailing list archives for examples of patches that tend to work well. Changes should contain commentary citing reliable sources. -Citations should use "https:" URLs if available. +Citations should use ‘https:’ URLs if available. For changes that fix sensitive security-related bugs, please see the -distribution's 'SECURITY' file. +distribution’s SECURITY file. Please submit changes against either the latest release or the main branch of the development @@ -54,11 +55,11 @@ If you use Git the following workflow may be helpful: git checkout -b mybranch - * Sleuth by using 'git blame'. For example, when fixing data for - Africa/Sao_Tome, if the command 'git blame africa' outputs a line - '2951fa3b (Paul Eggert 2018-01-08 09:03:13 -0800 1068) Zone - Africa/Sao_Tome 0:26:56 - LMT 1884', commit 2951fa3b should - provide some justification for the 'Zone Africa/Sao_Tome' line. + * Sleuth by using ‘git blame’. For example, when fixing data for + Africa/Sao_Tome, if the command ‘git blame africa’ outputs a line + ‘2951fa3b (Paul Eggert 2018-01-08 09:03:13 -0800 1068) Zone + Africa/Sao_Tome 0:26:56 - LMT 1884’, commit 2951fa3b should + provide some justification for the ‘Zone Africa/Sao_Tome’ line. * Edit source files. Include commentary that justifies the changes by citing reliable sources. @@ -69,28 +70,31 @@ If you use Git the following workflow may be helpful: ./zdump -v America/Los_Angeles Although builds assume only basic POSIX, they use extra features - if available. 'make check' accesses validator.w3.org unless you - lack 'curl' or use 'make CURL=:'. If you have the latest GCC, - "make CFLAGS='$(GCC_DEBUG_FLAGS)'" does extra checking. + if available. ‘make check’ accesses validator.w3.org unless you + lack ‘curl’ or use ‘make CURL=:’. If you have the latest GCC, + ‘make CFLAGS='$(GCC_DEBUG_FLAGS)'’ does extra checking. * For each separable change, commit it in the new branch, e.g.: git add northamerica git commit - See recent 'git log' output for the commit-message style. + See recent ‘git log’ output for the commit-message style. * Create patch files 0001-..., 0002-..., ... git format-patch main + * Check that the patch files and your email setup contain only + information that you want to make public. + * After reviewing the patch files, send the patches to for others to review. git send-email main For an archived example of such an email, see - "[PROPOSED] Fix off-by-1 error for Jamaica and T&C before 1913" + “[PROPOSED] Fix off-by-1 error for Jamaica and T&C before 1913” . * Start anew by getting current with the main branch again diff --git a/contrib/tzdata/Makefile b/contrib/tzdata/Makefile index 2130582c2deb..bb7cb1014f73 100644 --- a/contrib/tzdata/Makefile +++ b/contrib/tzdata/Makefile @@ -3,17 +3,30 @@ # 2009-05-17 by Arthur David Olson. # Request POSIX conformance; this must be the first non-comment line. .POSIX: +# By default, builds of code and data assume POSIX.1-2001 or later; +# this assumption can be relaxed by tailoring the build as described below. # On older platforms you may need to scrounge for POSIX conformance. # For example, on Solaris 10 (2005) with Sun Studio 12 aka Sun C 5.9 (2007), # use 'PATH=/usr/xpg4/bin:$PATH make CC=c99'. +# Reproducible builds of distribution tarballs also need a copy of the +# Git repository, and assume the behavior of the following programs +# (or later versions): +# Git 2.7.0 (2016) +# GNU Coreutils 6.3 (2006) +# GNU Tar 1.14 (2004) +# GnuPG 1.4 (2004) +# Although tzdb does not come with a software bill of materials, +# you should be able to construct one based on the above information, +# your platform, and the way you use this Makefile. # To affect how this Makefile works, you can run a shell script like this: # # #!/bin/sh -# make CC='gcc -std=gnu23' "$@" +# make CFLAGS='-O2 -DHAVE_GETTEXT=0' "$@" # -# This example script is appropriate for a circa 2024 GNU/Linux system -# where a non-default setting enables this package's optional use of C23. +# This example script is appropriate for a GNU/Linux system +# which needs more optimization than default, and which does not want +# gettext's internationalization of diagnostics. # # Alternatively, you can simply edit this Makefile to tailor the following # macro definitions. @@ -150,8 +163,9 @@ TIME_T_ALTERNATIVES_TAIL = int_least32_t.ck uint_least32_t.ck \ # below. If you want both sets of data available, with leap seconds counted # normally, use # REDO= right_posix -# below. POSIX mandates that leap seconds not be counted; for compatibility -# with it, use "posix_only" or "posix_right". Use POSIX time on systems with +# below. POSIX mandates that leap seconds not be counted, and a +# nonnegative TZ_CHANGE_INTERVAL also assumes this, so to be compatible with +# these, use "posix_only" or "posix_right". Use POSIX time on systems with # leap smearing; this can work better than unsmeared "right" time with # applications that are not leap second aware, and is closer to unsmeared # "right" time than unsmeared POSIX time is (e.g., 0.5 vs 1.0 s max error). @@ -206,6 +220,12 @@ PACKRATLIST= UTF8_LOCALE= en_US.utf8 +# Extra flags for producing man page files like tzfile.5.txt. +# These flags are used only if groff (or mandoc) is present. +# Each option should begin with "-" and should lack shell metacharacters. +# Plausible options include -Tascii and -Tutf8. +MANFLAGS= -Tutf8 + # Non-default libraries needed to link. # On some hosts, this should have -lintl unless CFLAGS has -DHAVE_GETTEXT=0. LDLIBS= @@ -219,14 +239,19 @@ LDLIBS= # -DEPOCH_OFFSET=N if the 'time' function returns a value N greater # than what POSIX specifies, assuming local time is UT. # For example, N is 252460800 on AmigaOS. +# -DFREE_PRESERVES_ERRNO=[01] if the 'free' function munges or preserves errno +# (default is guessed) # -DHAVE_DECL_ASCTIME_R=0 if does not declare asctime_r # on POSIX platforms predating POSIX.1-2024 # -DHAVE_DECL_ENVIRON if declares 'environ' # -DHAVE_DECL_TIMEGM=0 if does not declare timegm # -DHAVE_DIRECT_H if mkdir needs (MS-Windows) +# -DHAVE_FCHMOD=0 if your system lacks the fchmod function # -DHAVE__GENERIC=0 if _Generic does not work* +# -DHAVE_GETEUID=0 if gete?[ug]id do not work # -DHAVE_GETRANDOM if getrandom works (e.g., GNU/Linux), # -DHAVE_GETRANDOM=0 to avoid using getrandom +# -DHAVE_GETRESUID=0 if getres[ug]id do not work # -DHAVE_GETTEXT if gettext works (e.g., GNU/Linux, FreeBSD, Solaris), # where LDLIBS also needs to contain -lintl on some hosts; # -DHAVE_GETTEXT=0 to avoid using gettext @@ -234,28 +259,43 @@ LDLIBS= # ctime_r and asctime_r incompatibly with POSIX.1-2017 and earlier # (Solaris when _POSIX_PTHREAD_SEMANTICS is not defined). # -DHAVE_INTTYPES_H=0 if does not work*+ +# -DHAVE_ISSETUGID=1 if issetugid works, 0 otherwise (default is guessed) +# If 0, you may also use -DHAVE_SYS_AUXV_H=1 if works, +# 0 otherwise (default is guessed). # -DHAVE_LINK=0 if your system lacks a link function # -DHAVE_LOCALTIME_R=0 if your system lacks a localtime_r function # -DHAVE_LOCALTIME_RZ=0 if you do not want zdump to use localtime_rz # localtime_rz can make zdump significantly faster, but is nonstandard. # -DHAVE_MALLOC_ERRNO=0 if malloc etc. do not set errno on failure. +# -DHAVE_MEMPCPY=1 if your system has mempcpy, 0 if not (default is guessed) # -DHAVE_POSIX_DECLS=0 if your system's include files do not declare -# functions like 'link' or variables like 'tzname' required by POSIX +# variables like 'tzname' required by POSIX +# -DHAVE_PWD_H=0 if your system lacks pwd.h, grp.h and corresponding functions +# If 0, you may also need -Dgid_t=G -Duid_t=U +# to define gid_t and uid_t to be types G and U. # -DHAVE_SETENV=0 if your system lacks the setenv function +# -DHAVE_SETMODE=[01] if your system lacks or has the setmode and getmode +# functions (default is guessed) # -DHAVE_SNPRINTF=0 if your system lacks the snprintf function+ # -DHAVE_STDCKDINT_H=0 if neither nor substitutes like # __builtin_add_overflow work* # -DHAVE_STDINT_H=0 if does not work*+ # -DHAVE_STRFTIME_L if declares locale_t and strftime_l # -DHAVE_STRDUP=0 if your system lacks the strdup function +# -DHAVE_STRNLEN=0 if your system lacks the strnlen function+ # -DHAVE_STRTOLL=0 if your system lacks the strtoll function+ +# -DHAVE_STRUCT_STAT_ST_CTIM=0 if struct stat lacks a member st_ctim+ +# -DHAVE_STRUCT_TIMESPEC=0 if your system lacks struct timespec+ # -DHAVE_SYMLINK=0 if your system lacks the symlink function # -DHAVE_SYS_STAT_H=0 if does not work* +# If 0, you may also need -Dmode_t=M to define mode_t to be type M. # -DHAVE_TZSET=0 if your system lacks a tzset function # -DHAVE_UNISTD_H=0 if does not work* # -DHAVE_UTMPX_H=0 if does not work* # -Dlocale_t=XXX if your system uses XXX instead of locale_t # -DMKTIME_MIGHT_OVERFLOW if mktime might fail due to time_t overflow +# -DOPENAT_TZDIR if tzset should use openat on TZDIR then a relative open. +# See localtime.c for details. # -DPORT_TO_C89 if tzcode should also run on mostly-C89 platforms+ # Typically it is better to use a later standard. For example, # with GCC 4.9.4 (2016), prefer '-std=gnu11' to '-DPORT_TO_C89'. @@ -274,8 +314,36 @@ LDLIBS= # -DTHREAD_SAFE to make localtime.c thread-safe, as POSIX requires; # not needed by the main-program tz code, which is single-threaded. # Append other compiler flags as needed, e.g., -pthread on GNU/Linux. +# The following options can also be used: +# -DTHREAD_PREFER_SINGLE to prefer speed in single-threaded apps, +# at some cost in CPU time and energy in multi-threaded apps. +# The following options can also be used: +# -DHAVE___ISTHREADED=1 if there is an extern int __isthreaded +# variable, 0 otherwise (default is guessed) +# -DHAVE_SYS_SINGLE_THREADED_H=0 if works, +# 0 otherwise (default is guessed) +# -DTHREAD_RWLOCK to use read-write locks intead of mutexes. +# This can improve paralellism and thus save real time +# if many threads call tzcode functions simultaneously. +# It also costs CPU time and thus energy. +# -DTHREAD_TM_MULTI to have gmtime, localtime, and offtime +# return different struct tm * addresses in different threads. +# This supports unportable programs that call +# gmtime/localtime/offtime when they should call +# gmtime_r/localtime_r/offtime_r to avoid races. +# Because the corresponding storage is freed on thread exit, +# this option is incompatible with POSIX.1-2024 and earlier. +# It also costs CPU time and memory. # -Dtime_tz=\"T\" to use T as the time_t type, rather than the system time_t # This is intended for internal use only; it mangles external names. +# -DTZ_CHANGE_INTERVAL=N if functions depending on TZ should check +# no more often than every N seconds for TZif file changes. +# If N is negative (the default), no such checking is done. +# This option is intended for platforms that want localtime etc. +# to respond to changes to a file selected by TZ, including to +# TZDEFAULT (normally /etc/localtime) if TZ is unset. +# On these platforms, REDO should be "posix_only" or "posix_right". +# This option does not affect tzalloc-allocated objects. # -DTZ_DOMAIN=\"foo\" to use "foo" for gettext domain name; default is "tz" # -DTZ_DOMAINDIR=\"/path\" to use "/path" for gettext directory; # the default is system-supplied, typically "/usr/lib/locale" @@ -314,7 +382,7 @@ LDLIBS= # Select instrumentation via "make GCC_INSTRUMENT='whatever'". GCC_INSTRUMENT = \ -fsanitize=undefined -fsanitize-address-use-after-scope \ - -fsanitize-undefined-trap-on-error -fstack-protector + -fsanitize-trap=all -fstack-protector # Omit -fanalyzer from GCC_DEBUG_FLAGS, as it makes GCC too slow. GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 \ $(GCC_INSTRUMENT) \ @@ -393,7 +461,9 @@ GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 \ # functions to be added to the time conversion library. # "offtime" is like "gmtime" except that it accepts a second (long) argument # that gives an offset to add to the time_t when converting it. -# I.e., "offtime" is like calling "localtime_rz" with a fixed-offset zone. +# "offtime_r" is to "offtime" what "gmtime_r" is to "gmtime". +# I.e., "offtime" and "offtime_r" are like calling "localtime_rz" +# with a fixed-offset zone. # "timelocal" is nearly equivalent to "mktime". # "timeoff" is like "timegm" except that it accepts a second (long) argument # that gives an offset to use when converting to a time_t. @@ -451,6 +521,11 @@ leaplist_URI = \ https://hpiers.obspm.fr/iers/bul/bulc/ntp/leap-seconds.list # The file is generated by the IERS Earth Orientation Centre, in Paris. leaplist_TZ = Europe/Paris +# +# To fetch leap-seconds.list from NIST via a less-secure protocol +# and with less-volatile metadata, use these settings: +#leaplist_URI = ftp://ftp.boulder.nist.gov/pub/time/leap-seconds.list +#leaplist_TZ = America/Denver # The zic command and its arguments. @@ -510,13 +585,10 @@ SAFE_CHARSET3= 'abcdefghijklmnopqrstuvwxyz{|}~' SAFE_CHARSET= $(SAFE_CHARSET1)$(SAFE_CHARSET2)$(SAFE_CHARSET3) SAFE_CHAR= '[]'$(SAFE_CHARSET)'-]' -# These non-alphabetic, non-ASCII printable characters are Latin-1, -# and so are likely displayable even in editors like XEmacs 21 -# that have limited display capabilities. -UNUSUAL_OK_LATIN_1 = ¡¢£¤¥¦§¨©«¬®¯°±²³´¶·¸¹»¼½¾¿×÷ -# Non-ASCII non-letters that OK_CHAR allows, as these characters are -# useful in commentary. -UNUSUAL_OK_CHARSET= $(UNUSUAL_OK_LATIN_1) +# These non-alphabetic, non-ASCII printable characters are +# used in commentary or in generated *.txt files +# and are not likely to cause confusion. +UNUSUAL_OK_CHARSET= §«°±»½¾×–‘’“”•→−≤★⟨⟩⯪ # Put this in a bracket expression to match spaces. s = [:space:] @@ -525,9 +597,6 @@ s = [:space:] # This is the same as SAFE_CHAR, except that UNUSUAL_OK_CHARSET and # multibyte letters are also allowed so that commentary can contain a # few safe symbols and people's names and can quote non-English sources. -# Other non-letters are limited to ASCII renderings for the -# convenience of maintainers using XEmacs 21.5.34, which by default -# mishandles Unicode characters U+0100 and greater. OK_CHAR= '[][:alpha:]$(UNUSUAL_OK_CHARSET)'$(SAFE_CHARSET)'-]' # SAFE_LINE matches a line of safe characters. @@ -874,9 +943,9 @@ UTF8_LOCALE_MISSING = \ character-set.ck: $(ENCHILADA) $(UTF8_LOCALE_MISSING) || { \ sharp='#' && \ - ! grep -Env $(SAFE_LINE) $(MANS) date.1 $(MANTXTS) \ - $(MISC) $(SOURCES) $(WEB_PAGES) \ - CONTRIBUTING LICENSE README SECURITY \ + ! grep -Env $(SAFE_LINE) $(MANS) date.1 \ + $(MISC) $(SOURCES) \ + LICENSE \ version tzdata.zi && \ ! grep -Env $(SAFE_LINE)'|^UNUSUAL_OK_'$(OK_CHAR)'*$$' \ Makefile && \ @@ -888,11 +957,9 @@ character-set.ck: $(ENCHILADA) white-space.ck: $(ENCHILADA) $(UTF8_LOCALE_MISSING) || { \ - enchilada='$(ENCHILADA)' && \ patfmt=' \t|[\f\r\v]' && pat=$$(printf "$$patfmt\\n") && \ ! grep -En "$$pat|[$s]\$$" \ - $${enchilada%leap-seconds.list*} \ - $${enchilada#*leap-seconds.list}; \ + $(ENCHILADA:leap-seconds.list=); \ } touch $@ @@ -959,8 +1026,10 @@ now.ck: checknow.awk date tzdata.zi zdump zic zone1970.tab zonenow.tab ./zdump -i -t 0,$$future \ $$(find "$$PWD/$@d" -name Etc -prune \ -o -type f ! -name '*.tab' -print) \ - >$@d/zdump-1970.tab + >$@d/zdump-1970.tab && \ $(AWK) \ + -v now=$$now \ + -v now_out=$@.out \ -v zdump_table=$@d/zdump-now.tab \ -f checknow.awk zonenow.tab $(AWK) \ @@ -970,7 +1039,8 @@ now.ck: checknow.awk date tzdata.zi zdump zic zone1970.tab zonenow.tab -v zdump_table=$@d/zdump-1970.tab \ -f checknow.awk rm -fr $@d - touch $@ + touch $@.out + mv $@.out $@ tables.ck: checktab.awk $(YDATA) backward zone.tab zone1970.tab for tab in $(ZONETABLES); do \ @@ -1031,7 +1101,7 @@ zishrink-posix.ck zishrink-right.ck: \ clean_misc: rm -fr *.ckd *.dir - rm -f *.ck *.core *.o *.out core core.* \ + rm -f *.ck *.core *.o *.out *.t core core.* \ date tzdir.h tzselect version.h zdump zic libtz.a clean: clean_misc rm -fr tzdb-*/ @@ -1059,7 +1129,7 @@ zdump.8.txt: zdump.8 zic.8.txt: zic.8 $(MANTXTS): workman.sh - LC_ALL=C sh workman.sh $(@:.txt=) >$@.out + LC_ALL=C sh workman.sh $(MANFLAGS) $(@:.txt=) >$@.out mv $@.out $@ # Set file timestamps deterministically if possible, @@ -1108,7 +1178,7 @@ set-timestamps.out: $(EIGHT_YARDS) if git diff --quiet HEAD $$file; then \ time=$$(TZ=UTC0 git log -1 \ --format='tformat:%cd' \ - --date='format:%Y-%m-%dT%H:%M:%SZ' \ + --date='format-local:%Y-%m-%dT%H:%M:%SZ' \ $$file) && \ echo "+ touch -md $$time $$file" && \ touch -md $$time $$file; \ @@ -1207,12 +1277,12 @@ $(TIME_T_ALTERNATIVES): $(VERSION_DEPS) touch $@ TRADITIONAL_ASC = \ - tzcode$(VERSION).tar.gz.asc \ - tzdata$(VERSION).tar.gz.asc + tzcode$(VERSION).tar.gz.asc.t \ + tzdata$(VERSION).tar.gz.asc.t REARGUARD_ASC = \ - tzdata$(VERSION)-rearguard.tar.gz.asc + tzdata$(VERSION)-rearguard.tar.gz.asc.t ALL_ASC = $(TRADITIONAL_ASC) $(REARGUARD_ASC) \ - tzdb-$(VERSION).tar.lz.asc + tzdb-$(VERSION).tar.lz.asc.t tarballs rearguard_tarballs tailored_tarballs traditional_tarballs \ signatures rearguard_signatures traditional_signatures: \ @@ -1224,29 +1294,31 @@ signatures rearguard_signatures traditional_signatures: \ # other means. Ordinarily these rules are used only by the above # non-_version rules, which set VERSION on the 'make' command line. tarballs_version: traditional_tarballs_version rearguard_tarballs_version \ - tzdb-$(VERSION).tar.lz + tzdb-$(VERSION).tar.lz.t rearguard_tarballs_version: \ - tzdata$(VERSION)-rearguard.tar.gz + tzdata$(VERSION)-rearguard.tar.gz.t traditional_tarballs_version: \ - tzcode$(VERSION).tar.gz tzdata$(VERSION).tar.gz + tzcode$(VERSION).tar.gz.t tzdata$(VERSION).tar.gz.t tailored_tarballs_version: \ - tzdata$(VERSION)-tailored.tar.gz + tzdata$(VERSION)-tailored.tar.gz.t signatures_version: $(ALL_ASC) rearguard_signatures_version: $(REARGUARD_ASC) traditional_signatures_version: $(TRADITIONAL_ASC) -tzcode$(VERSION).tar.gz: set-timestamps.out +tzcode$(VERSION).tar.gz.t: set-timestamps.out $(SETUP_TAR) && \ $$TAR -cf - \ $(COMMON) $(DOCS) $(SOURCES) | \ - gzip $(GZIPFLAGS) >$@.out - mv $@.out $@ + gzip $(GZIPFLAGS) >$(@:.t=) + $(SET_TIMESTAMP) $(@:.t=) $(COMMON) $(DOCS) $(SOURCES) + touch $@ -tzdata$(VERSION).tar.gz: set-timestamps.out +tzdata$(VERSION).tar.gz.t: set-timestamps.out $(SETUP_TAR) && \ $$TAR -cf - $(TZDATA_DIST) | \ - gzip $(GZIPFLAGS) >$@.out - mv $@.out $@ + gzip $(GZIPFLAGS) >$(@:.t=) + $(SET_TIMESTAMP) $(@:.t=) $(TZDATA_DIST) + touch $@ # Create empty files with a reproducible timestamp. CREATE_EMPTY = TZ=UTC0 touch -mt 202010122253.00 @@ -1255,7 +1327,7 @@ CREATE_EMPTY = TZ=UTC0 touch -mt 202010122253.00 # for backwards compatibility with tz releases 2018e through 2022a. # They should go away eventually. To build rearguard tarballs you # can instead use 'make DATAFORM=rearguard tailored_tarballs'. -tzdata$(VERSION)-rearguard.tar.gz: rearguard.zi set-timestamps.out +tzdata$(VERSION)-rearguard.tar.gz.t: rearguard.zi set-timestamps.out rm -fr $@.dir mkdir $@.dir ln $(TZDATA_DIST) $@.dir @@ -1273,8 +1345,11 @@ tzdata$(VERSION)-rearguard.tar.gz: rearguard.zi set-timestamps.out (cd $@.dir && \ $$TAR -cf - \ $(TZDATA_DIST) pacificnew | \ - gzip $(GZIPFLAGS)) >$@.out - mv $@.out $@ + gzip $(GZIPFLAGS)) >$(@:.t=) + $(SET_TIMESTAMP) $(@:.t=) \ + $$(cd $@.dir && \ + ls $(TZDATA_DIST) pacificnew | sed 's,^,$@.dir/,') + touch $@ # Create a tailored tarball suitable for TZUpdater and compatible tools. # For example, 'make DATAFORM=vanguard tailored_tarballs' makes a tarball @@ -1283,7 +1358,7 @@ tzdata$(VERSION)-rearguard.tar.gz: rearguard.zi set-timestamps.out # traditional tarball, as data entries are put into 'etcetera' even if they # came from some other source file. However, the effect should be the same # for ordinary use, which reads all the source files. -tzdata$(VERSION)-tailored.tar.gz: set-timestamps.out +tzdata$(VERSION)-tailored.tar.gz.t: set-timestamps.out rm -fr $@.dir mkdir $@.dir : The dummy pacificnew pacifies TZUpdater 2.3.1 and earlier. @@ -1295,7 +1370,7 @@ tzdata$(VERSION)-tailored.tar.gz: set-timestamps.out cd $@.dir && \ $(CREATE_EMPTY) $(PRIMARY_YDATA) $(NDATA) backward \ $$pacificnew - (grep '^#' tzdata.zi && echo && cat $(DATAFORM).zi) \ + (sed '/^#/!d' tzdata.zi && echo && cat $(DATAFORM).zi) \ >$@.dir/etcetera touch -mr tzdata.zi $@.dir/etcetera sed -n \ @@ -1316,24 +1391,29 @@ tzdata$(VERSION)-tailored.tar.gz: set-timestamps.out ln $$links $@.dir $(SETUP_TAR) && \ (cd $@.dir && \ - $$TAR -cf - * | gzip $(GZIPFLAGS)) >$@.out - mv $@.out $@ + $$TAR -cf - *) | gzip $(GZIPFLAGS) >$(@:.t=) + $(SET_TIMESTAMP) $(@:.t=) \ + $$(cd $@.dir && ls * | sed 's,^,$@.dir/,') + touch $@ -tzdb-$(VERSION).tar.lz: set-timestamps.out set-tzs-timestamp.out +tzdb-$(VERSION).tar.lz.t: set-timestamps.out set-tzs-timestamp.out rm -fr tzdb-$(VERSION) mkdir tzdb-$(VERSION) ln $(ENCHILADA) tzdb-$(VERSION) $(SET_TIMESTAMP) tzdb-$(VERSION) tzdb-$(VERSION)/* $(SETUP_TAR) && \ - $$TAR -cf - tzdb-$(VERSION) | lzip -9 >$@.out - mv $@.out $@ + $$TAR -cf - tzdb-$(VERSION) | lzip -9 >$(@:.t=) + $(SET_TIMESTAMP) $(@:.t=) tzdb-$(VERSION) + touch $@ -tzcode$(VERSION).tar.gz.asc: tzcode$(VERSION).tar.gz -tzdata$(VERSION).tar.gz.asc: tzdata$(VERSION).tar.gz -tzdata$(VERSION)-rearguard.tar.gz.asc: tzdata$(VERSION)-rearguard.tar.gz -tzdb-$(VERSION).tar.lz.asc: tzdb-$(VERSION).tar.lz +tzcode$(VERSION).tar.gz.asc.t: tzcode$(VERSION).tar.gz.t +tzdata$(VERSION).tar.gz.asc.t: tzdata$(VERSION).tar.gz.t +tzdata$(VERSION)-rearguard.tar.gz.asc.t: tzdata$(VERSION)-rearguard.tar.gz.t +tzdb-$(VERSION).tar.lz.asc.t: tzdb-$(VERSION).tar.lz.t $(ALL_ASC): - $(GPG) --armor --detach-sign $? + $(GPG) --armor --detach-sign $(?:.t=) + $(SET_TIMESTAMP) $(@:.t=) $(?:.t=) + touch $@ TYPECHECK_CFLAGS = $(CFLAGS) -DTYPECHECK -D__time_t_defined -D_TIME_T typecheck: long-long.ck unsigned.ck diff --git a/contrib/tzdata/NEWS b/contrib/tzdata/NEWS index 8c0771641ef0..eef59a2b095b 100644 --- a/contrib/tzdata/NEWS +++ b/contrib/tzdata/NEWS @@ -1,5 +1,140 @@ News for the tz database +Release 2025c - 2025-12-10 14:42:37 -0800 + + Briefly: + Several code changes for compatibility with FreeBSD. + + Changes to past timestamps + + Baja California agreed with California’s DST rules in 1953 and in + 1961 through 1975, instead of observing standard time all year. + (Thanks to Alois Treindl.) + + Changes to build procedure + + Files in distributed tarballs now have correct commit times. + Formerly, the committer’s time zone was incorrectly ignored. + + Distribution products (*.asc, *.gz, and *.lz) now have + reproducible timestamps. Formerly, only the contents of the + compressed tarballs had reproducible timestamps. + + By default, distributed formatted man pages (*.txt) now use UTF-8 + and are left-adjusted more consistently. A new Makefile macro + MANFLAGS can override these defaults. (Thanks to G. Branden + Robinson for inspiring these changes.) + + Changes to code + + An unset TZ is no longer invalid when /etc/localtime is missing, + and is abbreviated "UTC" not "-00". This reverts to 2024b behavior. + (Problem and patch reported by Dag-Erling Smørgrav.) + + New function offtime_r, short for fixed-offset localtime_rz. + It is defined if STD_INSPIRED is defined. + (Patch from Dag-Erling Smørgrav.) + + tzset etc. are now more cautious about questionable TZ settings. + Privileged programs now reject TZ settings that start with '/', + unless they are TZDEFAULT (default "/etc/localtime") or + start with TZDIR then '/' (default "/usr/share/zoneinfo/"). + Unprivileged programs now require files to be regular files + and reject relative names containing ".." directory components; + formerly, only privileged programs did those two things. + These changes were inspired by similar behavior in FreeBSD. + On NetBSD, unprivileged programs now use O_REGULAR to check + whether a TZ setting starting with '/' names a regular file, + avoiding a minor security race still present elsewhere. + TZ strings taken from tzalloc arguments are now treated with + no less caution than TZ strings taken from the environment, as + the old undocumented behavior would have been hard to explain. + tzset etc. no longer use the ‘access’ system call to check access; + instead they now use the system calls issetugid, getauxval, + getresuid/getresgid, and geteuid/getegid/getuid/getgid (whichever + first works) to test whether a program is privileged. + Compile with -DHAVE_SYS_AUXV_H=[01] to enable or disable + which (if it defines AT_SECURE) enables getauxval, + and compile with -DHAVE_ISSETUGID=[01], -DHAVE_GETRESUID=[01], and + -DHAVE_GETEUID=[01] to enable or disable the other calls’ use. + + The new CFLAGS option -DTZ_CHANGE_INTERVAL=N makes tzset etc. + check for TZif file changes if the in-memory data are N seconds + old or more, and are derived from the TZ environment variable. + This is intended for platforms that want tzset etc. to reflect + changes to whatever file TZ selects (including changes to + /etc/localtime if TZ is unset). If N is negative (the default) + these checks are omitted; this is the traditional behavior. + + The new CFLAGS options -DHAVE_STRUCT_STAT_ST_CTIM=0 and + -DHAVE_STRUCT_TIMESPEC=0 port to non-POSIX.1-2008 platforms + that lack st_ctim and struct timespec, respectively. + + tzset etc. now treat ' ' like '_' in time zone abbreviations, + just as they treat other invalid bytes. This continues the + transition begun in release 96k, which removed spaces in tzdata + because the spaces break time string parsers. + + The new CFLAGS option -DTHREAD_PREFER_SINGLE causes tzcode + in single-threaded processes to avoid locks, as FreeBSD does. + This can save time in single-threaded apps. The threadedness + testing costs CPU time and energy in multi-threaded apps. + New options -DHAVE___ISTHREADED and -DHAVE_SYS_SINGLE_THREADED_H + can help configure how to test for single-threadedness. + + The new CFLAGS option -DTHREAD_RWLOCK uses read-write locks, as + macOS does, instead of mutexes. This saves real time when TZ is + rarely changing and many threads call tzcode simultaneously. + It costs more CPU time and energy. + + The new CFLAGS option -TTHREAD_TM_MULTI causes localtime to return + a pointer to thread-specific memory, as FreeBSD does, instead of + to the same memory in all threads. This supports unportable + programs that incorrectly use localtime instead of localtime_r. + This option affects gmtime and offtime similarly to localtime. + Because the corresponding storage is freed on thread exit, this + option is incompatible with POSIX.1-2024 and earlier. It also + costs CPU time and memory. + + tzfree now preserves errno, consistently with POSIX.1-2024 ‘free’. + + tzcode now uses mempcpy if available, guessing its availability. + Compile with -DHAVE_MEMPCPY=1 or 0 to override the guess. + + tzcode now uses strnlen to improve asymptotic performance a bit. + Compile with -DHAVE_STRNLEN=0 if your platform lacks it. + + tzcode now hand-declares unistd.h-provided symbols like getopt + if HAVE_UNISTD_H=0, not if HAVE_POSIX_DECLS=0. + + tzset etc. now have an experimental OPENAT_TZDIR option; + see Makefile and localtime.c for details. + + On platforms like GNU/Hurd that do not define PATH_MAX, + exceedingly long TZ strings no longer fail merely because they + exceed an arbitrary file name length limit imposed by tzcode. + + zic has new options inspired by FreeBSD. ‘-D’ skips creation of + output ancestor directories, ‘-m MODE’ sets output files’ mode, + and ‘-u OWNER[:GROUP]’ sets output files’ owner and group. + + zic now uses the fdopen function, which was standardized by + POSIX.1-1988 and is now safe to use in portable code. + This replaces its use of the older umask function, which + complicated maintenance. + + Changes to commentary + + The leapseconds file contains commentary about the IERS and NIST + last-modified and expiration timestamps for leap second data. + (Thanks to Judah Levine.) + + Commentary now also uses characters from the set –‘’“”•≤ as this + can be useful and should work with current applications. This + also affects data in iso3166.tab and zone1970.tab, which now + contain strings like “Côte d’Ivoire” instead of “Côte d'Ivoire”. + + Release 2025b - 2025-03-22 13:40:46 -0700 Briefly: diff --git a/contrib/tzdata/README b/contrib/tzdata/README index edabd2e0690f..f22ec5492d09 100644 --- a/contrib/tzdata/README +++ b/contrib/tzdata/README @@ -1,8 +1,8 @@ README for the tz distribution -"Where do I set the hands of the clock?" -- Les Tremayne as The King -"Oh that--you can set them any place you want." -- Frank Baxter as The Scientist - (from the Bell System film "About Time") +“Where do I set the hands of the clock?” – Les Tremayne as The King +“Oh that – you can set them any place you want.” – Frank Baxter as The Scientist + (from the Bell System film “About Time”) The Time Zone Database (called tz, tzdb or zoneinfo) contains code and data that represent the history of local time for many representative @@ -13,12 +13,12 @@ and daylight-saving rules. See or the file tz-link.html for how to acquire the code and data. -Once acquired, read the leading comments in the file "Makefile" +Once acquired, read the leading comments in the file ‘Makefile’ and make any changes needed to make things right for your system, especially when using a platform other than current GNU/Linux. Then run the following commands, substituting your desired -installation directory for "$HOME/tzdir": +installation directory for ‘$HOME/tzdir’: make TOPDIR="$HOME/tzdir" install "$HOME/tzdir/usr/bin/zdump" -v America/Los_Angeles @@ -39,12 +39,12 @@ The information in the time zone data files is by no means authoritative; fixes and enhancements are welcome. Please see the file CONTRIBUTING for details. -Thanks to these Time Zone Caballeros who've made major contributions to the +Thanks to these Time Zone Caballeros who’ve made major contributions to the time conversion package: Keith Bostic; Bob Devine; Paul Eggert; Robert Elz; Guy Harris; Mark Horton; John Mackin; and Bradley White. Thanks also to Michael Bloom, Art Neilson, Stephen Prince, John Sovereign, and Frank Wales for testing work, and to Gwillim Law for checking local mean time data. -Thanks in particular to Arthur David Olson, the project's founder and first +Thanks in particular to Arthur David Olson, the project’s founder and first maintainer, to whom the time zone community owes the greatest debt of all. None of them are responsible for remaining errors. diff --git a/contrib/tzdata/SECURITY b/contrib/tzdata/SECURITY index 40128bc86dd2..dbce8bbd5d2d 100644 --- a/contrib/tzdata/SECURITY +++ b/contrib/tzdata/SECURITY @@ -1,7 +1,7 @@ Please report any sensitive security-related bugs via email to the tzdb designated coordinators, currently Paul Eggert and Tim Parenti . -Put "tzdb security" at the start of your email's subject line. +Put “tzdb security” at the start of your email’s subject line. We prefer communications to be in English. You should receive a response within a week. If not, please follow up diff --git a/contrib/tzdata/africa b/contrib/tzdata/africa index fd6c44aaa5b7..ec067bee524d 100644 --- a/contrib/tzdata/africa +++ b/contrib/tzdata/africa @@ -4,9 +4,9 @@ # 2009-05-17 by Arthur David Olson. # This file is by no means authoritative; if you think you know better, -# go ahead and edit the file (and please send any changes to -# tz@iana.org for general use in the future). For more, please see -# the file CONTRIBUTING in the tz distribution. +# go ahead and edit the file, and please send any changes to +# the public mailing list tz@iana.org for general use in the future. +# For more, please see the file CONTRIBUTING in the tz distribution. # From Paul Eggert (2018-05-27): # @@ -115,8 +115,9 @@ Zone Atlantic/Cape_Verde -1:34:04 - LMT 1912 Jan 01 2:00u # Praia -1:00 - %z # Chad +# Fort-Lamy was renamed to N’Djamena on 1973-04-06. # Zone NAME STDOFF RULES FORMAT [UNTIL] -Zone Africa/Ndjamena 1:00:12 - LMT 1912 Jan 1 # N'Djamena +Zone Africa/Ndjamena 1:00:12 - LMT 1912 Jan 1 # Fort-Lamy 1:00 - WAT 1979 Oct 14 1:00 1:00 WAST 1980 Mar 8 1:00 - WAT diff --git a/contrib/tzdata/antarctica b/contrib/tzdata/antarctica index 2e90a5e09d17..f46ac479cbd4 100644 --- a/contrib/tzdata/antarctica +++ b/contrib/tzdata/antarctica @@ -3,13 +3,10 @@ # This file is in the public domain, so clarified as of # 2009-05-17 by Arthur David Olson. -# From Paul Eggert (1999-11-15): -# To keep things manageable, we list only locations occupied year-round; see -# COMNAP - Stations and Bases -# http://www.comnap.aq/comnap/comnap.nsf/P/Stations/ -# and -# Summary of the Peri-Antarctic Islands (1998-07-23) -# http://www.spri.cam.ac.uk/bob/periant.htm +# From Paul Eggert (2025-08-16): +# To keep things manageable, list only locations occupied year-round; see +# Antarctic Facilities Information +# https://www.comnap.aq/antarctic-facilities-information # for information. # Unless otherwise specified, we have no time zone information. @@ -144,6 +141,7 @@ Zone Antarctica/Mawson 0 - -00 1954 Feb 13 # China - year-round bases # Great Wall, King George Island, -6213-05858, since 1985-02-20 # Zhongshan, Larsemann Hills, Prydz Bay, -6922+07623, since 1989-02-26 +# Qinling, Inexpressible I, Terra Nova Bay, -7456+16343, since 2024-02-07 # France - year-round bases (also see "France & Italy") # diff --git a/contrib/tzdata/asia b/contrib/tzdata/asia index d3d1059ac90d..dd76bdfc70b7 100644 --- a/contrib/tzdata/asia +++ b/contrib/tzdata/asia @@ -4,9 +4,9 @@ # 2009-05-17 by Arthur David Olson. # This file is by no means authoritative; if you think you know better, -# go ahead and edit the file (and please send any changes to -# tz@iana.org for general use in the future). For more, please see -# the file CONTRIBUTING in the tz distribution. +# go ahead and edit the file, and please send any changes to +# the public mailing list tz@iana.org for general use in the future. +# For more, please see the file CONTRIBUTING in the tz distribution. # From Paul Eggert (2019-07-11): # diff --git a/contrib/tzdata/australasia b/contrib/tzdata/australasia index 405944536cd3..e52aab109bca 100644 --- a/contrib/tzdata/australasia +++ b/contrib/tzdata/australasia @@ -937,9 +937,9 @@ Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila # NOTES # This file is by no means authoritative; if you think you know better, -# go ahead and edit the file (and please send any changes to -# tz@iana.org for general use in the future). For more, please see -# the file CONTRIBUTING in the tz distribution. +# go ahead and edit the file, and please send any changes to +# the public mailing list tz@iana.org for general use in the future. +# For more, please see the file CONTRIBUTING in the tz distribution. # From Paul Eggert (2018-11-18): # @@ -1988,6 +1988,7 @@ Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila # From Paul Eggert (2018-11-19): # The 1921-01-15 introduction of standard time is in Shanks; it is also in # "Standard Time Throughout the World", US National Bureau of Standards (1935), +# https://nvlpubs.nist.gov/nistpubs/Legacy/circ/nbscircular406.pdf # page 3, which does not give the UT offset. In response to a comment by # Phake Nick I set the Nauru time of occupation by Japan to # 1942-08-29/1945-09-08 by using dates from: @@ -2055,9 +2056,10 @@ Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila # https://webspace.science.uu.nl/~gent0113/idl/idl_alaska_samoa.htm # Although Shanks & Pottenger says they both switched to UT -11:30 -# in 1911, and to -11 in 1950. many earlier sources give -11 +# in 1911, and to -11 in 1950, many earlier sources give -11 # for American Samoa, e.g., the US National Bureau of Standards # circular "Standard Time Throughout the World", 1932. +# https://nvlpubs.nist.gov/nistpubs/Legacy/circ/nbscircular399.pdf # Assume American Samoa switched to -11 in 1911, not 1950, # and that after 1950 they agreed until (western) Samoa skipped a # day in 2011. Assume also that the Samoas follow the US and New diff --git a/contrib/tzdata/backzone b/contrib/tzdata/backzone index dd7a86758374..3c7e720ab4e7 100644 --- a/contrib/tzdata/backzone +++ b/contrib/tzdata/backzone @@ -2,10 +2,10 @@ # This file is in the public domain. -# This file is by no means authoritative; if you think you know -# better, go ahead and edit it (and please send any changes to -# tz@iana.org for general use in the future). For more, please see -# the file CONTRIBUTING in the tz distribution. +# This file is by no means authoritative; if you think you know better, +# go ahead and edit the file, and please send any changes to +# the public mailing list tz@iana.org for general use in the future. +# For more, please see the file CONTRIBUTING in the tz distribution. # When proposing changes to this file, please use 'git format-patch' # format, either by attaching the resulting .patch file to your email, diff --git a/contrib/tzdata/calendars b/contrib/tzdata/calendars index f4ed9e434e50..699de85cbffa 100644 --- a/contrib/tzdata/calendars +++ b/contrib/tzdata/calendars @@ -16,30 +16,9 @@ and (in Paris only) 1871-05-06 through 1871-05-23. Russia -From Chris Carrier (1996-12-02): -On 1929-10-01 the Soviet Union instituted an "Eternal Calendar" -with 30-day months plus 5 holidays, with a 5-day week. -On 1931-12-01 it changed to a 6-day week; in 1934 it reverted to the -Gregorian calendar while retaining the 6-day week; on 1940-06-27 it -reverted to the 7-day week. With the 6-day week the usual days -off were the 6th, 12th, 18th, 24th and 30th of the month. -(Source: Evitiar Zerubavel, _The Seven Day Circle_) - - -Mark Brader reported a similar story in "The Book of Calendars", edited -by Frank Parise (1982, Facts on File, ISBN 0-8719-6467-8), page 377. But: - -From: Petteri Sulonen (via Usenet) -Date: 14 Jan 1999 00:00:00 GMT -... - -If your source is correct, how come documents between 1929 and 1940 were -still dated using the conventional, Gregorian calendar? - -I can post a scan of a document dated December 1, 1934, signed by -Yenukidze, the secretary, on behalf of Kalinin, the President of the -Executive Committee of the Supreme Soviet, if you like. - +Soviet Russia adopted the Gregorian calendar on 1918-02-14. +It also used 5- and 6-day work weeks at times, in parallel with the +Gregorian calendar; see . Sweden (and Finland) diff --git a/contrib/tzdata/checknow.awk b/contrib/tzdata/checknow.awk index 450490ee3768..8139ad57ecd2 100644 --- a/contrib/tzdata/checknow.awk +++ b/contrib/tzdata/checknow.awk @@ -50,5 +50,10 @@ END { status = 1 } } + if (now_out) { + for (data in zones) { + printf "%s=%s\n", now, zones[data] >>now_out + } + } exit status } diff --git a/contrib/tzdata/europe b/contrib/tzdata/europe index df334fc27c1d..af5217103845 100644 --- a/contrib/tzdata/europe +++ b/contrib/tzdata/europe @@ -4,9 +4,9 @@ # 2009-05-17 by Arthur David Olson. # This file is by no means authoritative; if you think you know better, -# go ahead and edit the file (and please send any changes to -# tz@iana.org for general use in the future). For more, please see -# the file CONTRIBUTING in the tz distribution. +# go ahead and edit the file, and please send any changes to +# the public mailing list tz@iana.org for general use in the future. +# For more, please see the file CONTRIBUTING in the tz distribution. # From Paul Eggert (2017-02-10): # @@ -42,7 +42,7 @@ # . He writes: # "It is requested that corrections and additions to these tables # may be sent to Mr. John Milne, Royal Geographical Society, -# Savile Row, London." Nowadays please email them to tz@iana.org. +# Savile Row, London." Nowadays please see the file CONTRIBUTING. # # Byalokoz EL. New Counting of Time in Russia since July 1, 1919. # This Russian-language source was consulted by Vladimir Karpinsky; see @@ -54,7 +54,7 @@ *** 1619 LINES SKIPPED *** From nobody Sun Dec 14 08:31:24 2025 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 4dTby50pfjz6L0sS for ; Sun, 14 Dec 2025 08:31:25 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dTby50GRQz486v for ; Sun, 14 Dec 2025 08:31:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765701085; 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=07i+AwThGNuxFQ0Z8LkWR2C2pOTL46oVVahWlySg+p0=; b=iAF7QarlkeRrODKrVWNWrC8ptqR8GliquNSsgU0/xTV1LAb+i3Xd+KSpY9TxbOSuUWZCkm zapx5nprp1PiRBaNM/0Pye7uJMK+T9lBQv6CrWzs8JdKrJF1KHqZrJuGTHcB082JSQAYSM Z5nPF/kqYgl4NSBvtSXc3rHbf8hN5tPoiA6r/PygBkQPNQ/r5ZlFs9JMzMUtxThKkHk8JF fGeonx0nIZX7ZL576z/xh1h20yflroBN8VhcZ2XsEf+7zPZwY/cHRjZaHJQqfk14elvRgI TeSbF4RtABSDNZZ3ynwo8VjXHxx+NHzx/McEUwflD1/t06PXnoGt5M0UrLo1dg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765701085; 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=07i+AwThGNuxFQ0Z8LkWR2C2pOTL46oVVahWlySg+p0=; b=GTQHvuce+4uJqHW+6lXxoTvc1YxcpR5i7ucCywlaEOu59u9yCrKYrdaV6wbHFOGP0drEGf MtNdROL8sFABcGdb88kGZ71rPfsJEEVIxhkX+mlMzy4N3mqU4fkpDALb+lfGlYKlqsxS+l jGS4YK4MhQZxpQAchb1vDdykXTINRDMP5opLJ+YUEpTBh+Xv+yETwyWu8vjDy7uSfhCYxl Vs5NhJR4Un7RDaEO8uOsEiz7nunNfS+aFg7Tn8dA6kyX6f+vz7/3Ivl3HMtoR80oNyuKWN 158QqM0DW6jhVlCeRT5AiFMBkSb7lCmDLuvQTXLO+XxKHqVgvnNVd3zpupLDzg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765701085; a=rsa-sha256; cv=none; b=DDVTjlHA3xzWWgptU3xHzQxvd5YwWYVnH4oIc6jE/niXK9ZRfMu6iraqnyydaTcAUrDqf/ YOS15rXw2NHxZUwfDjBWjhjhLSIngwQOvB+M36peXFnVk/ZiQkCVkJwrlFgrAsVciWj3eh +Je6MkCNoZOD7s1EnInXhMwqAvm5xDCpf3xtt1hAr/GeGOug4wwfYy350kcDvwK4nVwz/Y vh4ObxOao3scFHvsiw/Sdg9cARrbsi9LIojR+wAXuTpLIw7f03J6X2FqvQAJVk99S4DmCf S79iY+ZhnjuDZwRzm8fDIIBwXB1PFPeYvDhObkKgHLwyM+GZxISazV4lLto2Mw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dTby46qfYz9hj for ; Sun, 14 Dec 2025 08:31:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30056 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sun, 14 Dec 2025 08:31:24 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Philip Paeps Subject: git: c7edaaf43fe8 - stable/13 - contrib/tzdata: import tzdata 2025c 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 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: philip X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: c7edaaf43fe894f4915e05dc11295c0ad4d31a3f Auto-Submitted: auto-generated Date: Sun, 14 Dec 2025 08:31:24 +0000 Message-Id: <693e75dc.30056.4cb044ad@gitrepo.freebsd.org> The branch stable/13 has been updated by philip: URL: https://cgit.FreeBSD.org/src/commit/?id=c7edaaf43fe894f4915e05dc11295c0ad4d31a3f commit c7edaaf43fe894f4915e05dc11295c0ad4d31a3f Author: Philip Paeps AuthorDate: 2025-12-11 06:55:42 +0000 Commit: Philip Paeps CommitDate: 2025-12-14 08:30:23 +0000 contrib/tzdata: import tzdata 2025c Changes: https://github.com/eggert/tz/blob/2025c/NEWS (cherry picked from commit a86dc94b84d177da8f00d1c9420ef0860576e4c4) --- contrib/tzdata/CONTRIBUTING | 36 ++-- contrib/tzdata/Makefile | 196 ++++++++++++++------- contrib/tzdata/NEWS | 135 ++++++++++++++ contrib/tzdata/README | 14 +- contrib/tzdata/SECURITY | 2 +- contrib/tzdata/africa | 9 +- contrib/tzdata/antarctica | 12 +- contrib/tzdata/asia | 6 +- contrib/tzdata/australasia | 10 +- contrib/tzdata/backzone | 8 +- contrib/tzdata/calendars | 27 +-- contrib/tzdata/checknow.awk | 5 + contrib/tzdata/europe | 52 ++++-- contrib/tzdata/leap-seconds.list | 8 +- contrib/tzdata/leapseconds | 19 +- contrib/tzdata/leapseconds.awk | 11 +- contrib/tzdata/northamerica | 53 ++++-- contrib/tzdata/southamerica | 6 +- contrib/tzdata/theory.html | 367 ++++++++++++++++++++------------------- contrib/tzdata/version | 2 +- contrib/tzdata/zone1970.tab | 20 +-- contrib/tzdata/zonenow.tab | 94 +++++----- 22 files changed, 683 insertions(+), 409 deletions(-) diff --git a/contrib/tzdata/CONTRIBUTING b/contrib/tzdata/CONTRIBUTING index f6edbd3be7d3..c5fa803f7275 100644 --- a/contrib/tzdata/CONTRIBUTING +++ b/contrib/tzdata/CONTRIBUTING @@ -10,26 +10,27 @@ warning, the data entries do not cover all of civil time before 1970, and undoubtedly errors remain in the code and data. Feel free to fill gaps or fix mistakes, and please email improvements to for use in the future. In your email, please give -reliable sources that reviewers can check. +reliable sources that reviewers can check. The mailing list and its +archives are public, so please do not send confidential information. ## Contributing technical changes To email small changes, please run a POSIX shell command like -'diff -u old/europe new/europe >myfix.patch', and attach -'myfix.patch' to the email. +‘diff -u old/europe new/europe >myfix.patch’, and attach +‘myfix.patch’ to the email. For more-elaborate or possibly controversial changes, such as renaming, adding or removing zones, please read -"Theory and pragmatics of the tz code and data" +“Theory and pragmatics of the tz code and data” . It is also good to browse the mailing list archives for examples of patches that tend to work well. Changes should contain commentary citing reliable sources. -Citations should use "https:" URLs if available. +Citations should use ‘https:’ URLs if available. For changes that fix sensitive security-related bugs, please see the -distribution's 'SECURITY' file. +distribution’s SECURITY file. Please submit changes against either the latest release or the main branch of the development @@ -54,11 +55,11 @@ If you use Git the following workflow may be helpful: git checkout -b mybranch - * Sleuth by using 'git blame'. For example, when fixing data for - Africa/Sao_Tome, if the command 'git blame africa' outputs a line - '2951fa3b (Paul Eggert 2018-01-08 09:03:13 -0800 1068) Zone - Africa/Sao_Tome 0:26:56 - LMT 1884', commit 2951fa3b should - provide some justification for the 'Zone Africa/Sao_Tome' line. + * Sleuth by using ‘git blame’. For example, when fixing data for + Africa/Sao_Tome, if the command ‘git blame africa’ outputs a line + ‘2951fa3b (Paul Eggert 2018-01-08 09:03:13 -0800 1068) Zone + Africa/Sao_Tome 0:26:56 - LMT 1884’, commit 2951fa3b should + provide some justification for the ‘Zone Africa/Sao_Tome’ line. * Edit source files. Include commentary that justifies the changes by citing reliable sources. @@ -69,28 +70,31 @@ If you use Git the following workflow may be helpful: ./zdump -v America/Los_Angeles Although builds assume only basic POSIX, they use extra features - if available. 'make check' accesses validator.w3.org unless you - lack 'curl' or use 'make CURL=:'. If you have the latest GCC, - "make CFLAGS='$(GCC_DEBUG_FLAGS)'" does extra checking. + if available. ‘make check’ accesses validator.w3.org unless you + lack ‘curl’ or use ‘make CURL=:’. If you have the latest GCC, + ‘make CFLAGS='$(GCC_DEBUG_FLAGS)'’ does extra checking. * For each separable change, commit it in the new branch, e.g.: git add northamerica git commit - See recent 'git log' output for the commit-message style. + See recent ‘git log’ output for the commit-message style. * Create patch files 0001-..., 0002-..., ... git format-patch main + * Check that the patch files and your email setup contain only + information that you want to make public. + * After reviewing the patch files, send the patches to for others to review. git send-email main For an archived example of such an email, see - "[PROPOSED] Fix off-by-1 error for Jamaica and T&C before 1913" + “[PROPOSED] Fix off-by-1 error for Jamaica and T&C before 1913” . * Start anew by getting current with the main branch again diff --git a/contrib/tzdata/Makefile b/contrib/tzdata/Makefile index 2130582c2deb..bb7cb1014f73 100644 --- a/contrib/tzdata/Makefile +++ b/contrib/tzdata/Makefile @@ -3,17 +3,30 @@ # 2009-05-17 by Arthur David Olson. # Request POSIX conformance; this must be the first non-comment line. .POSIX: +# By default, builds of code and data assume POSIX.1-2001 or later; +# this assumption can be relaxed by tailoring the build as described below. # On older platforms you may need to scrounge for POSIX conformance. # For example, on Solaris 10 (2005) with Sun Studio 12 aka Sun C 5.9 (2007), # use 'PATH=/usr/xpg4/bin:$PATH make CC=c99'. +# Reproducible builds of distribution tarballs also need a copy of the +# Git repository, and assume the behavior of the following programs +# (or later versions): +# Git 2.7.0 (2016) +# GNU Coreutils 6.3 (2006) +# GNU Tar 1.14 (2004) +# GnuPG 1.4 (2004) +# Although tzdb does not come with a software bill of materials, +# you should be able to construct one based on the above information, +# your platform, and the way you use this Makefile. # To affect how this Makefile works, you can run a shell script like this: # # #!/bin/sh -# make CC='gcc -std=gnu23' "$@" +# make CFLAGS='-O2 -DHAVE_GETTEXT=0' "$@" # -# This example script is appropriate for a circa 2024 GNU/Linux system -# where a non-default setting enables this package's optional use of C23. +# This example script is appropriate for a GNU/Linux system +# which needs more optimization than default, and which does not want +# gettext's internationalization of diagnostics. # # Alternatively, you can simply edit this Makefile to tailor the following # macro definitions. @@ -150,8 +163,9 @@ TIME_T_ALTERNATIVES_TAIL = int_least32_t.ck uint_least32_t.ck \ # below. If you want both sets of data available, with leap seconds counted # normally, use # REDO= right_posix -# below. POSIX mandates that leap seconds not be counted; for compatibility -# with it, use "posix_only" or "posix_right". Use POSIX time on systems with +# below. POSIX mandates that leap seconds not be counted, and a +# nonnegative TZ_CHANGE_INTERVAL also assumes this, so to be compatible with +# these, use "posix_only" or "posix_right". Use POSIX time on systems with # leap smearing; this can work better than unsmeared "right" time with # applications that are not leap second aware, and is closer to unsmeared # "right" time than unsmeared POSIX time is (e.g., 0.5 vs 1.0 s max error). @@ -206,6 +220,12 @@ PACKRATLIST= UTF8_LOCALE= en_US.utf8 +# Extra flags for producing man page files like tzfile.5.txt. +# These flags are used only if groff (or mandoc) is present. +# Each option should begin with "-" and should lack shell metacharacters. +# Plausible options include -Tascii and -Tutf8. +MANFLAGS= -Tutf8 + # Non-default libraries needed to link. # On some hosts, this should have -lintl unless CFLAGS has -DHAVE_GETTEXT=0. LDLIBS= @@ -219,14 +239,19 @@ LDLIBS= # -DEPOCH_OFFSET=N if the 'time' function returns a value N greater # than what POSIX specifies, assuming local time is UT. # For example, N is 252460800 on AmigaOS. +# -DFREE_PRESERVES_ERRNO=[01] if the 'free' function munges or preserves errno +# (default is guessed) # -DHAVE_DECL_ASCTIME_R=0 if does not declare asctime_r # on POSIX platforms predating POSIX.1-2024 # -DHAVE_DECL_ENVIRON if declares 'environ' # -DHAVE_DECL_TIMEGM=0 if does not declare timegm # -DHAVE_DIRECT_H if mkdir needs (MS-Windows) +# -DHAVE_FCHMOD=0 if your system lacks the fchmod function # -DHAVE__GENERIC=0 if _Generic does not work* +# -DHAVE_GETEUID=0 if gete?[ug]id do not work # -DHAVE_GETRANDOM if getrandom works (e.g., GNU/Linux), # -DHAVE_GETRANDOM=0 to avoid using getrandom +# -DHAVE_GETRESUID=0 if getres[ug]id do not work # -DHAVE_GETTEXT if gettext works (e.g., GNU/Linux, FreeBSD, Solaris), # where LDLIBS also needs to contain -lintl on some hosts; # -DHAVE_GETTEXT=0 to avoid using gettext @@ -234,28 +259,43 @@ LDLIBS= # ctime_r and asctime_r incompatibly with POSIX.1-2017 and earlier # (Solaris when _POSIX_PTHREAD_SEMANTICS is not defined). # -DHAVE_INTTYPES_H=0 if does not work*+ +# -DHAVE_ISSETUGID=1 if issetugid works, 0 otherwise (default is guessed) +# If 0, you may also use -DHAVE_SYS_AUXV_H=1 if works, +# 0 otherwise (default is guessed). # -DHAVE_LINK=0 if your system lacks a link function # -DHAVE_LOCALTIME_R=0 if your system lacks a localtime_r function # -DHAVE_LOCALTIME_RZ=0 if you do not want zdump to use localtime_rz # localtime_rz can make zdump significantly faster, but is nonstandard. # -DHAVE_MALLOC_ERRNO=0 if malloc etc. do not set errno on failure. +# -DHAVE_MEMPCPY=1 if your system has mempcpy, 0 if not (default is guessed) # -DHAVE_POSIX_DECLS=0 if your system's include files do not declare -# functions like 'link' or variables like 'tzname' required by POSIX +# variables like 'tzname' required by POSIX +# -DHAVE_PWD_H=0 if your system lacks pwd.h, grp.h and corresponding functions +# If 0, you may also need -Dgid_t=G -Duid_t=U +# to define gid_t and uid_t to be types G and U. # -DHAVE_SETENV=0 if your system lacks the setenv function +# -DHAVE_SETMODE=[01] if your system lacks or has the setmode and getmode +# functions (default is guessed) # -DHAVE_SNPRINTF=0 if your system lacks the snprintf function+ # -DHAVE_STDCKDINT_H=0 if neither nor substitutes like # __builtin_add_overflow work* # -DHAVE_STDINT_H=0 if does not work*+ # -DHAVE_STRFTIME_L if declares locale_t and strftime_l # -DHAVE_STRDUP=0 if your system lacks the strdup function +# -DHAVE_STRNLEN=0 if your system lacks the strnlen function+ # -DHAVE_STRTOLL=0 if your system lacks the strtoll function+ +# -DHAVE_STRUCT_STAT_ST_CTIM=0 if struct stat lacks a member st_ctim+ +# -DHAVE_STRUCT_TIMESPEC=0 if your system lacks struct timespec+ # -DHAVE_SYMLINK=0 if your system lacks the symlink function # -DHAVE_SYS_STAT_H=0 if does not work* +# If 0, you may also need -Dmode_t=M to define mode_t to be type M. # -DHAVE_TZSET=0 if your system lacks a tzset function # -DHAVE_UNISTD_H=0 if does not work* # -DHAVE_UTMPX_H=0 if does not work* # -Dlocale_t=XXX if your system uses XXX instead of locale_t # -DMKTIME_MIGHT_OVERFLOW if mktime might fail due to time_t overflow +# -DOPENAT_TZDIR if tzset should use openat on TZDIR then a relative open. +# See localtime.c for details. # -DPORT_TO_C89 if tzcode should also run on mostly-C89 platforms+ # Typically it is better to use a later standard. For example, # with GCC 4.9.4 (2016), prefer '-std=gnu11' to '-DPORT_TO_C89'. @@ -274,8 +314,36 @@ LDLIBS= # -DTHREAD_SAFE to make localtime.c thread-safe, as POSIX requires; # not needed by the main-program tz code, which is single-threaded. # Append other compiler flags as needed, e.g., -pthread on GNU/Linux. +# The following options can also be used: +# -DTHREAD_PREFER_SINGLE to prefer speed in single-threaded apps, +# at some cost in CPU time and energy in multi-threaded apps. +# The following options can also be used: +# -DHAVE___ISTHREADED=1 if there is an extern int __isthreaded +# variable, 0 otherwise (default is guessed) +# -DHAVE_SYS_SINGLE_THREADED_H=0 if works, +# 0 otherwise (default is guessed) +# -DTHREAD_RWLOCK to use read-write locks intead of mutexes. +# This can improve paralellism and thus save real time +# if many threads call tzcode functions simultaneously. +# It also costs CPU time and thus energy. +# -DTHREAD_TM_MULTI to have gmtime, localtime, and offtime +# return different struct tm * addresses in different threads. +# This supports unportable programs that call +# gmtime/localtime/offtime when they should call +# gmtime_r/localtime_r/offtime_r to avoid races. +# Because the corresponding storage is freed on thread exit, +# this option is incompatible with POSIX.1-2024 and earlier. +# It also costs CPU time and memory. # -Dtime_tz=\"T\" to use T as the time_t type, rather than the system time_t # This is intended for internal use only; it mangles external names. +# -DTZ_CHANGE_INTERVAL=N if functions depending on TZ should check +# no more often than every N seconds for TZif file changes. +# If N is negative (the default), no such checking is done. +# This option is intended for platforms that want localtime etc. +# to respond to changes to a file selected by TZ, including to +# TZDEFAULT (normally /etc/localtime) if TZ is unset. +# On these platforms, REDO should be "posix_only" or "posix_right". +# This option does not affect tzalloc-allocated objects. # -DTZ_DOMAIN=\"foo\" to use "foo" for gettext domain name; default is "tz" # -DTZ_DOMAINDIR=\"/path\" to use "/path" for gettext directory; # the default is system-supplied, typically "/usr/lib/locale" @@ -314,7 +382,7 @@ LDLIBS= # Select instrumentation via "make GCC_INSTRUMENT='whatever'". GCC_INSTRUMENT = \ -fsanitize=undefined -fsanitize-address-use-after-scope \ - -fsanitize-undefined-trap-on-error -fstack-protector + -fsanitize-trap=all -fstack-protector # Omit -fanalyzer from GCC_DEBUG_FLAGS, as it makes GCC too slow. GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 \ $(GCC_INSTRUMENT) \ @@ -393,7 +461,9 @@ GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 \ # functions to be added to the time conversion library. # "offtime" is like "gmtime" except that it accepts a second (long) argument # that gives an offset to add to the time_t when converting it. -# I.e., "offtime" is like calling "localtime_rz" with a fixed-offset zone. +# "offtime_r" is to "offtime" what "gmtime_r" is to "gmtime". +# I.e., "offtime" and "offtime_r" are like calling "localtime_rz" +# with a fixed-offset zone. # "timelocal" is nearly equivalent to "mktime". # "timeoff" is like "timegm" except that it accepts a second (long) argument # that gives an offset to use when converting to a time_t. @@ -451,6 +521,11 @@ leaplist_URI = \ https://hpiers.obspm.fr/iers/bul/bulc/ntp/leap-seconds.list # The file is generated by the IERS Earth Orientation Centre, in Paris. leaplist_TZ = Europe/Paris +# +# To fetch leap-seconds.list from NIST via a less-secure protocol +# and with less-volatile metadata, use these settings: +#leaplist_URI = ftp://ftp.boulder.nist.gov/pub/time/leap-seconds.list +#leaplist_TZ = America/Denver # The zic command and its arguments. @@ -510,13 +585,10 @@ SAFE_CHARSET3= 'abcdefghijklmnopqrstuvwxyz{|}~' SAFE_CHARSET= $(SAFE_CHARSET1)$(SAFE_CHARSET2)$(SAFE_CHARSET3) SAFE_CHAR= '[]'$(SAFE_CHARSET)'-]' -# These non-alphabetic, non-ASCII printable characters are Latin-1, -# and so are likely displayable even in editors like XEmacs 21 -# that have limited display capabilities. -UNUSUAL_OK_LATIN_1 = ¡¢£¤¥¦§¨©«¬®¯°±²³´¶·¸¹»¼½¾¿×÷ -# Non-ASCII non-letters that OK_CHAR allows, as these characters are -# useful in commentary. -UNUSUAL_OK_CHARSET= $(UNUSUAL_OK_LATIN_1) +# These non-alphabetic, non-ASCII printable characters are +# used in commentary or in generated *.txt files +# and are not likely to cause confusion. +UNUSUAL_OK_CHARSET= §«°±»½¾×–‘’“”•→−≤★⟨⟩⯪ # Put this in a bracket expression to match spaces. s = [:space:] @@ -525,9 +597,6 @@ s = [:space:] # This is the same as SAFE_CHAR, except that UNUSUAL_OK_CHARSET and # multibyte letters are also allowed so that commentary can contain a # few safe symbols and people's names and can quote non-English sources. -# Other non-letters are limited to ASCII renderings for the -# convenience of maintainers using XEmacs 21.5.34, which by default -# mishandles Unicode characters U+0100 and greater. OK_CHAR= '[][:alpha:]$(UNUSUAL_OK_CHARSET)'$(SAFE_CHARSET)'-]' # SAFE_LINE matches a line of safe characters. @@ -874,9 +943,9 @@ UTF8_LOCALE_MISSING = \ character-set.ck: $(ENCHILADA) $(UTF8_LOCALE_MISSING) || { \ sharp='#' && \ - ! grep -Env $(SAFE_LINE) $(MANS) date.1 $(MANTXTS) \ - $(MISC) $(SOURCES) $(WEB_PAGES) \ - CONTRIBUTING LICENSE README SECURITY \ + ! grep -Env $(SAFE_LINE) $(MANS) date.1 \ + $(MISC) $(SOURCES) \ + LICENSE \ version tzdata.zi && \ ! grep -Env $(SAFE_LINE)'|^UNUSUAL_OK_'$(OK_CHAR)'*$$' \ Makefile && \ @@ -888,11 +957,9 @@ character-set.ck: $(ENCHILADA) white-space.ck: $(ENCHILADA) $(UTF8_LOCALE_MISSING) || { \ - enchilada='$(ENCHILADA)' && \ patfmt=' \t|[\f\r\v]' && pat=$$(printf "$$patfmt\\n") && \ ! grep -En "$$pat|[$s]\$$" \ - $${enchilada%leap-seconds.list*} \ - $${enchilada#*leap-seconds.list}; \ + $(ENCHILADA:leap-seconds.list=); \ } touch $@ @@ -959,8 +1026,10 @@ now.ck: checknow.awk date tzdata.zi zdump zic zone1970.tab zonenow.tab ./zdump -i -t 0,$$future \ $$(find "$$PWD/$@d" -name Etc -prune \ -o -type f ! -name '*.tab' -print) \ - >$@d/zdump-1970.tab + >$@d/zdump-1970.tab && \ $(AWK) \ + -v now=$$now \ + -v now_out=$@.out \ -v zdump_table=$@d/zdump-now.tab \ -f checknow.awk zonenow.tab $(AWK) \ @@ -970,7 +1039,8 @@ now.ck: checknow.awk date tzdata.zi zdump zic zone1970.tab zonenow.tab -v zdump_table=$@d/zdump-1970.tab \ -f checknow.awk rm -fr $@d - touch $@ + touch $@.out + mv $@.out $@ tables.ck: checktab.awk $(YDATA) backward zone.tab zone1970.tab for tab in $(ZONETABLES); do \ @@ -1031,7 +1101,7 @@ zishrink-posix.ck zishrink-right.ck: \ clean_misc: rm -fr *.ckd *.dir - rm -f *.ck *.core *.o *.out core core.* \ + rm -f *.ck *.core *.o *.out *.t core core.* \ date tzdir.h tzselect version.h zdump zic libtz.a clean: clean_misc rm -fr tzdb-*/ @@ -1059,7 +1129,7 @@ zdump.8.txt: zdump.8 zic.8.txt: zic.8 $(MANTXTS): workman.sh - LC_ALL=C sh workman.sh $(@:.txt=) >$@.out + LC_ALL=C sh workman.sh $(MANFLAGS) $(@:.txt=) >$@.out mv $@.out $@ # Set file timestamps deterministically if possible, @@ -1108,7 +1178,7 @@ set-timestamps.out: $(EIGHT_YARDS) if git diff --quiet HEAD $$file; then \ time=$$(TZ=UTC0 git log -1 \ --format='tformat:%cd' \ - --date='format:%Y-%m-%dT%H:%M:%SZ' \ + --date='format-local:%Y-%m-%dT%H:%M:%SZ' \ $$file) && \ echo "+ touch -md $$time $$file" && \ touch -md $$time $$file; \ @@ -1207,12 +1277,12 @@ $(TIME_T_ALTERNATIVES): $(VERSION_DEPS) touch $@ TRADITIONAL_ASC = \ - tzcode$(VERSION).tar.gz.asc \ - tzdata$(VERSION).tar.gz.asc + tzcode$(VERSION).tar.gz.asc.t \ + tzdata$(VERSION).tar.gz.asc.t REARGUARD_ASC = \ - tzdata$(VERSION)-rearguard.tar.gz.asc + tzdata$(VERSION)-rearguard.tar.gz.asc.t ALL_ASC = $(TRADITIONAL_ASC) $(REARGUARD_ASC) \ - tzdb-$(VERSION).tar.lz.asc + tzdb-$(VERSION).tar.lz.asc.t tarballs rearguard_tarballs tailored_tarballs traditional_tarballs \ signatures rearguard_signatures traditional_signatures: \ @@ -1224,29 +1294,31 @@ signatures rearguard_signatures traditional_signatures: \ # other means. Ordinarily these rules are used only by the above # non-_version rules, which set VERSION on the 'make' command line. tarballs_version: traditional_tarballs_version rearguard_tarballs_version \ - tzdb-$(VERSION).tar.lz + tzdb-$(VERSION).tar.lz.t rearguard_tarballs_version: \ - tzdata$(VERSION)-rearguard.tar.gz + tzdata$(VERSION)-rearguard.tar.gz.t traditional_tarballs_version: \ - tzcode$(VERSION).tar.gz tzdata$(VERSION).tar.gz + tzcode$(VERSION).tar.gz.t tzdata$(VERSION).tar.gz.t tailored_tarballs_version: \ - tzdata$(VERSION)-tailored.tar.gz + tzdata$(VERSION)-tailored.tar.gz.t signatures_version: $(ALL_ASC) rearguard_signatures_version: $(REARGUARD_ASC) traditional_signatures_version: $(TRADITIONAL_ASC) -tzcode$(VERSION).tar.gz: set-timestamps.out +tzcode$(VERSION).tar.gz.t: set-timestamps.out $(SETUP_TAR) && \ $$TAR -cf - \ $(COMMON) $(DOCS) $(SOURCES) | \ - gzip $(GZIPFLAGS) >$@.out - mv $@.out $@ + gzip $(GZIPFLAGS) >$(@:.t=) + $(SET_TIMESTAMP) $(@:.t=) $(COMMON) $(DOCS) $(SOURCES) + touch $@ -tzdata$(VERSION).tar.gz: set-timestamps.out +tzdata$(VERSION).tar.gz.t: set-timestamps.out $(SETUP_TAR) && \ $$TAR -cf - $(TZDATA_DIST) | \ - gzip $(GZIPFLAGS) >$@.out - mv $@.out $@ + gzip $(GZIPFLAGS) >$(@:.t=) + $(SET_TIMESTAMP) $(@:.t=) $(TZDATA_DIST) + touch $@ # Create empty files with a reproducible timestamp. CREATE_EMPTY = TZ=UTC0 touch -mt 202010122253.00 @@ -1255,7 +1327,7 @@ CREATE_EMPTY = TZ=UTC0 touch -mt 202010122253.00 # for backwards compatibility with tz releases 2018e through 2022a. # They should go away eventually. To build rearguard tarballs you # can instead use 'make DATAFORM=rearguard tailored_tarballs'. -tzdata$(VERSION)-rearguard.tar.gz: rearguard.zi set-timestamps.out +tzdata$(VERSION)-rearguard.tar.gz.t: rearguard.zi set-timestamps.out rm -fr $@.dir mkdir $@.dir ln $(TZDATA_DIST) $@.dir @@ -1273,8 +1345,11 @@ tzdata$(VERSION)-rearguard.tar.gz: rearguard.zi set-timestamps.out (cd $@.dir && \ $$TAR -cf - \ $(TZDATA_DIST) pacificnew | \ - gzip $(GZIPFLAGS)) >$@.out - mv $@.out $@ + gzip $(GZIPFLAGS)) >$(@:.t=) + $(SET_TIMESTAMP) $(@:.t=) \ + $$(cd $@.dir && \ + ls $(TZDATA_DIST) pacificnew | sed 's,^,$@.dir/,') + touch $@ # Create a tailored tarball suitable for TZUpdater and compatible tools. # For example, 'make DATAFORM=vanguard tailored_tarballs' makes a tarball @@ -1283,7 +1358,7 @@ tzdata$(VERSION)-rearguard.tar.gz: rearguard.zi set-timestamps.out # traditional tarball, as data entries are put into 'etcetera' even if they # came from some other source file. However, the effect should be the same # for ordinary use, which reads all the source files. -tzdata$(VERSION)-tailored.tar.gz: set-timestamps.out +tzdata$(VERSION)-tailored.tar.gz.t: set-timestamps.out rm -fr $@.dir mkdir $@.dir : The dummy pacificnew pacifies TZUpdater 2.3.1 and earlier. @@ -1295,7 +1370,7 @@ tzdata$(VERSION)-tailored.tar.gz: set-timestamps.out cd $@.dir && \ $(CREATE_EMPTY) $(PRIMARY_YDATA) $(NDATA) backward \ $$pacificnew - (grep '^#' tzdata.zi && echo && cat $(DATAFORM).zi) \ + (sed '/^#/!d' tzdata.zi && echo && cat $(DATAFORM).zi) \ >$@.dir/etcetera touch -mr tzdata.zi $@.dir/etcetera sed -n \ @@ -1316,24 +1391,29 @@ tzdata$(VERSION)-tailored.tar.gz: set-timestamps.out ln $$links $@.dir $(SETUP_TAR) && \ (cd $@.dir && \ - $$TAR -cf - * | gzip $(GZIPFLAGS)) >$@.out - mv $@.out $@ + $$TAR -cf - *) | gzip $(GZIPFLAGS) >$(@:.t=) + $(SET_TIMESTAMP) $(@:.t=) \ + $$(cd $@.dir && ls * | sed 's,^,$@.dir/,') + touch $@ -tzdb-$(VERSION).tar.lz: set-timestamps.out set-tzs-timestamp.out +tzdb-$(VERSION).tar.lz.t: set-timestamps.out set-tzs-timestamp.out rm -fr tzdb-$(VERSION) mkdir tzdb-$(VERSION) ln $(ENCHILADA) tzdb-$(VERSION) $(SET_TIMESTAMP) tzdb-$(VERSION) tzdb-$(VERSION)/* $(SETUP_TAR) && \ - $$TAR -cf - tzdb-$(VERSION) | lzip -9 >$@.out - mv $@.out $@ + $$TAR -cf - tzdb-$(VERSION) | lzip -9 >$(@:.t=) + $(SET_TIMESTAMP) $(@:.t=) tzdb-$(VERSION) + touch $@ -tzcode$(VERSION).tar.gz.asc: tzcode$(VERSION).tar.gz -tzdata$(VERSION).tar.gz.asc: tzdata$(VERSION).tar.gz -tzdata$(VERSION)-rearguard.tar.gz.asc: tzdata$(VERSION)-rearguard.tar.gz -tzdb-$(VERSION).tar.lz.asc: tzdb-$(VERSION).tar.lz +tzcode$(VERSION).tar.gz.asc.t: tzcode$(VERSION).tar.gz.t +tzdata$(VERSION).tar.gz.asc.t: tzdata$(VERSION).tar.gz.t +tzdata$(VERSION)-rearguard.tar.gz.asc.t: tzdata$(VERSION)-rearguard.tar.gz.t +tzdb-$(VERSION).tar.lz.asc.t: tzdb-$(VERSION).tar.lz.t $(ALL_ASC): - $(GPG) --armor --detach-sign $? + $(GPG) --armor --detach-sign $(?:.t=) + $(SET_TIMESTAMP) $(@:.t=) $(?:.t=) + touch $@ TYPECHECK_CFLAGS = $(CFLAGS) -DTYPECHECK -D__time_t_defined -D_TIME_T typecheck: long-long.ck unsigned.ck diff --git a/contrib/tzdata/NEWS b/contrib/tzdata/NEWS index 8c0771641ef0..eef59a2b095b 100644 --- a/contrib/tzdata/NEWS +++ b/contrib/tzdata/NEWS @@ -1,5 +1,140 @@ News for the tz database +Release 2025c - 2025-12-10 14:42:37 -0800 + + Briefly: + Several code changes for compatibility with FreeBSD. + + Changes to past timestamps + + Baja California agreed with California’s DST rules in 1953 and in + 1961 through 1975, instead of observing standard time all year. + (Thanks to Alois Treindl.) + + Changes to build procedure + + Files in distributed tarballs now have correct commit times. + Formerly, the committer’s time zone was incorrectly ignored. + + Distribution products (*.asc, *.gz, and *.lz) now have + reproducible timestamps. Formerly, only the contents of the + compressed tarballs had reproducible timestamps. + + By default, distributed formatted man pages (*.txt) now use UTF-8 + and are left-adjusted more consistently. A new Makefile macro + MANFLAGS can override these defaults. (Thanks to G. Branden + Robinson for inspiring these changes.) + + Changes to code + + An unset TZ is no longer invalid when /etc/localtime is missing, + and is abbreviated "UTC" not "-00". This reverts to 2024b behavior. + (Problem and patch reported by Dag-Erling Smørgrav.) + + New function offtime_r, short for fixed-offset localtime_rz. + It is defined if STD_INSPIRED is defined. + (Patch from Dag-Erling Smørgrav.) + + tzset etc. are now more cautious about questionable TZ settings. + Privileged programs now reject TZ settings that start with '/', + unless they are TZDEFAULT (default "/etc/localtime") or + start with TZDIR then '/' (default "/usr/share/zoneinfo/"). + Unprivileged programs now require files to be regular files + and reject relative names containing ".." directory components; + formerly, only privileged programs did those two things. + These changes were inspired by similar behavior in FreeBSD. + On NetBSD, unprivileged programs now use O_REGULAR to check + whether a TZ setting starting with '/' names a regular file, + avoiding a minor security race still present elsewhere. + TZ strings taken from tzalloc arguments are now treated with + no less caution than TZ strings taken from the environment, as + the old undocumented behavior would have been hard to explain. + tzset etc. no longer use the ‘access’ system call to check access; + instead they now use the system calls issetugid, getauxval, + getresuid/getresgid, and geteuid/getegid/getuid/getgid (whichever + first works) to test whether a program is privileged. + Compile with -DHAVE_SYS_AUXV_H=[01] to enable or disable + which (if it defines AT_SECURE) enables getauxval, + and compile with -DHAVE_ISSETUGID=[01], -DHAVE_GETRESUID=[01], and + -DHAVE_GETEUID=[01] to enable or disable the other calls’ use. + + The new CFLAGS option -DTZ_CHANGE_INTERVAL=N makes tzset etc. + check for TZif file changes if the in-memory data are N seconds + old or more, and are derived from the TZ environment variable. + This is intended for platforms that want tzset etc. to reflect + changes to whatever file TZ selects (including changes to + /etc/localtime if TZ is unset). If N is negative (the default) + these checks are omitted; this is the traditional behavior. + + The new CFLAGS options -DHAVE_STRUCT_STAT_ST_CTIM=0 and + -DHAVE_STRUCT_TIMESPEC=0 port to non-POSIX.1-2008 platforms + that lack st_ctim and struct timespec, respectively. + + tzset etc. now treat ' ' like '_' in time zone abbreviations, + just as they treat other invalid bytes. This continues the + transition begun in release 96k, which removed spaces in tzdata + because the spaces break time string parsers. + + The new CFLAGS option -DTHREAD_PREFER_SINGLE causes tzcode + in single-threaded processes to avoid locks, as FreeBSD does. + This can save time in single-threaded apps. The threadedness + testing costs CPU time and energy in multi-threaded apps. + New options -DHAVE___ISTHREADED and -DHAVE_SYS_SINGLE_THREADED_H + can help configure how to test for single-threadedness. + + The new CFLAGS option -DTHREAD_RWLOCK uses read-write locks, as + macOS does, instead of mutexes. This saves real time when TZ is + rarely changing and many threads call tzcode simultaneously. + It costs more CPU time and energy. + + The new CFLAGS option -TTHREAD_TM_MULTI causes localtime to return + a pointer to thread-specific memory, as FreeBSD does, instead of + to the same memory in all threads. This supports unportable + programs that incorrectly use localtime instead of localtime_r. + This option affects gmtime and offtime similarly to localtime. + Because the corresponding storage is freed on thread exit, this + option is incompatible with POSIX.1-2024 and earlier. It also + costs CPU time and memory. + + tzfree now preserves errno, consistently with POSIX.1-2024 ‘free’. + + tzcode now uses mempcpy if available, guessing its availability. + Compile with -DHAVE_MEMPCPY=1 or 0 to override the guess. + + tzcode now uses strnlen to improve asymptotic performance a bit. + Compile with -DHAVE_STRNLEN=0 if your platform lacks it. + + tzcode now hand-declares unistd.h-provided symbols like getopt + if HAVE_UNISTD_H=0, not if HAVE_POSIX_DECLS=0. + + tzset etc. now have an experimental OPENAT_TZDIR option; + see Makefile and localtime.c for details. + + On platforms like GNU/Hurd that do not define PATH_MAX, + exceedingly long TZ strings no longer fail merely because they + exceed an arbitrary file name length limit imposed by tzcode. + + zic has new options inspired by FreeBSD. ‘-D’ skips creation of + output ancestor directories, ‘-m MODE’ sets output files’ mode, + and ‘-u OWNER[:GROUP]’ sets output files’ owner and group. + + zic now uses the fdopen function, which was standardized by + POSIX.1-1988 and is now safe to use in portable code. + This replaces its use of the older umask function, which + complicated maintenance. + + Changes to commentary + + The leapseconds file contains commentary about the IERS and NIST + last-modified and expiration timestamps for leap second data. + (Thanks to Judah Levine.) + + Commentary now also uses characters from the set –‘’“”•≤ as this + can be useful and should work with current applications. This + also affects data in iso3166.tab and zone1970.tab, which now + contain strings like “Côte d’Ivoire” instead of “Côte d'Ivoire”. + + Release 2025b - 2025-03-22 13:40:46 -0700 Briefly: diff --git a/contrib/tzdata/README b/contrib/tzdata/README index edabd2e0690f..f22ec5492d09 100644 --- a/contrib/tzdata/README +++ b/contrib/tzdata/README @@ -1,8 +1,8 @@ README for the tz distribution -"Where do I set the hands of the clock?" -- Les Tremayne as The King -"Oh that--you can set them any place you want." -- Frank Baxter as The Scientist - (from the Bell System film "About Time") +“Where do I set the hands of the clock?” – Les Tremayne as The King +“Oh that – you can set them any place you want.” – Frank Baxter as The Scientist + (from the Bell System film “About Time”) The Time Zone Database (called tz, tzdb or zoneinfo) contains code and data that represent the history of local time for many representative @@ -13,12 +13,12 @@ and daylight-saving rules. See or the file tz-link.html for how to acquire the code and data. -Once acquired, read the leading comments in the file "Makefile" +Once acquired, read the leading comments in the file ‘Makefile’ and make any changes needed to make things right for your system, especially when using a platform other than current GNU/Linux. Then run the following commands, substituting your desired -installation directory for "$HOME/tzdir": +installation directory for ‘$HOME/tzdir’: make TOPDIR="$HOME/tzdir" install "$HOME/tzdir/usr/bin/zdump" -v America/Los_Angeles @@ -39,12 +39,12 @@ The information in the time zone data files is by no means authoritative; fixes and enhancements are welcome. Please see the file CONTRIBUTING for details. -Thanks to these Time Zone Caballeros who've made major contributions to the +Thanks to these Time Zone Caballeros who’ve made major contributions to the time conversion package: Keith Bostic; Bob Devine; Paul Eggert; Robert Elz; Guy Harris; Mark Horton; John Mackin; and Bradley White. Thanks also to Michael Bloom, Art Neilson, Stephen Prince, John Sovereign, and Frank Wales for testing work, and to Gwillim Law for checking local mean time data. -Thanks in particular to Arthur David Olson, the project's founder and first +Thanks in particular to Arthur David Olson, the project’s founder and first maintainer, to whom the time zone community owes the greatest debt of all. None of them are responsible for remaining errors. diff --git a/contrib/tzdata/SECURITY b/contrib/tzdata/SECURITY index 40128bc86dd2..dbce8bbd5d2d 100644 --- a/contrib/tzdata/SECURITY +++ b/contrib/tzdata/SECURITY @@ -1,7 +1,7 @@ Please report any sensitive security-related bugs via email to the tzdb designated coordinators, currently Paul Eggert and Tim Parenti . -Put "tzdb security" at the start of your email's subject line. +Put “tzdb security” at the start of your email’s subject line. We prefer communications to be in English. You should receive a response within a week. If not, please follow up diff --git a/contrib/tzdata/africa b/contrib/tzdata/africa index fd6c44aaa5b7..ec067bee524d 100644 --- a/contrib/tzdata/africa +++ b/contrib/tzdata/africa @@ -4,9 +4,9 @@ # 2009-05-17 by Arthur David Olson. # This file is by no means authoritative; if you think you know better, -# go ahead and edit the file (and please send any changes to -# tz@iana.org for general use in the future). For more, please see -# the file CONTRIBUTING in the tz distribution. +# go ahead and edit the file, and please send any changes to +# the public mailing list tz@iana.org for general use in the future. +# For more, please see the file CONTRIBUTING in the tz distribution. # From Paul Eggert (2018-05-27): # @@ -115,8 +115,9 @@ Zone Atlantic/Cape_Verde -1:34:04 - LMT 1912 Jan 01 2:00u # Praia -1:00 - %z # Chad +# Fort-Lamy was renamed to N’Djamena on 1973-04-06. # Zone NAME STDOFF RULES FORMAT [UNTIL] -Zone Africa/Ndjamena 1:00:12 - LMT 1912 Jan 1 # N'Djamena +Zone Africa/Ndjamena 1:00:12 - LMT 1912 Jan 1 # Fort-Lamy 1:00 - WAT 1979 Oct 14 1:00 1:00 WAST 1980 Mar 8 1:00 - WAT diff --git a/contrib/tzdata/antarctica b/contrib/tzdata/antarctica index 2e90a5e09d17..f46ac479cbd4 100644 --- a/contrib/tzdata/antarctica +++ b/contrib/tzdata/antarctica @@ -3,13 +3,10 @@ # This file is in the public domain, so clarified as of # 2009-05-17 by Arthur David Olson. -# From Paul Eggert (1999-11-15): -# To keep things manageable, we list only locations occupied year-round; see -# COMNAP - Stations and Bases -# http://www.comnap.aq/comnap/comnap.nsf/P/Stations/ -# and -# Summary of the Peri-Antarctic Islands (1998-07-23) -# http://www.spri.cam.ac.uk/bob/periant.htm +# From Paul Eggert (2025-08-16): +# To keep things manageable, list only locations occupied year-round; see +# Antarctic Facilities Information +# https://www.comnap.aq/antarctic-facilities-information # for information. # Unless otherwise specified, we have no time zone information. @@ -144,6 +141,7 @@ Zone Antarctica/Mawson 0 - -00 1954 Feb 13 # China - year-round bases # Great Wall, King George Island, -6213-05858, since 1985-02-20 # Zhongshan, Larsemann Hills, Prydz Bay, -6922+07623, since 1989-02-26 +# Qinling, Inexpressible I, Terra Nova Bay, -7456+16343, since 2024-02-07 # France - year-round bases (also see "France & Italy") # diff --git a/contrib/tzdata/asia b/contrib/tzdata/asia index d3d1059ac90d..dd76bdfc70b7 100644 --- a/contrib/tzdata/asia +++ b/contrib/tzdata/asia @@ -4,9 +4,9 @@ # 2009-05-17 by Arthur David Olson. # This file is by no means authoritative; if you think you know better, -# go ahead and edit the file (and please send any changes to -# tz@iana.org for general use in the future). For more, please see -# the file CONTRIBUTING in the tz distribution. +# go ahead and edit the file, and please send any changes to +# the public mailing list tz@iana.org for general use in the future. +# For more, please see the file CONTRIBUTING in the tz distribution. # From Paul Eggert (2019-07-11): # diff --git a/contrib/tzdata/australasia b/contrib/tzdata/australasia index 405944536cd3..e52aab109bca 100644 --- a/contrib/tzdata/australasia +++ b/contrib/tzdata/australasia @@ -937,9 +937,9 @@ Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila # NOTES # This file is by no means authoritative; if you think you know better, -# go ahead and edit the file (and please send any changes to -# tz@iana.org for general use in the future). For more, please see -# the file CONTRIBUTING in the tz distribution. +# go ahead and edit the file, and please send any changes to +# the public mailing list tz@iana.org for general use in the future. +# For more, please see the file CONTRIBUTING in the tz distribution. # From Paul Eggert (2018-11-18): # @@ -1988,6 +1988,7 @@ Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila # From Paul Eggert (2018-11-19): # The 1921-01-15 introduction of standard time is in Shanks; it is also in # "Standard Time Throughout the World", US National Bureau of Standards (1935), +# https://nvlpubs.nist.gov/nistpubs/Legacy/circ/nbscircular406.pdf # page 3, which does not give the UT offset. In response to a comment by # Phake Nick I set the Nauru time of occupation by Japan to # 1942-08-29/1945-09-08 by using dates from: @@ -2055,9 +2056,10 @@ Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila # https://webspace.science.uu.nl/~gent0113/idl/idl_alaska_samoa.htm # Although Shanks & Pottenger says they both switched to UT -11:30 -# in 1911, and to -11 in 1950. many earlier sources give -11 +# in 1911, and to -11 in 1950, many earlier sources give -11 # for American Samoa, e.g., the US National Bureau of Standards # circular "Standard Time Throughout the World", 1932. +# https://nvlpubs.nist.gov/nistpubs/Legacy/circ/nbscircular399.pdf # Assume American Samoa switched to -11 in 1911, not 1950, # and that after 1950 they agreed until (western) Samoa skipped a # day in 2011. Assume also that the Samoas follow the US and New diff --git a/contrib/tzdata/backzone b/contrib/tzdata/backzone index dd7a86758374..3c7e720ab4e7 100644 --- a/contrib/tzdata/backzone +++ b/contrib/tzdata/backzone @@ -2,10 +2,10 @@ # This file is in the public domain. -# This file is by no means authoritative; if you think you know -# better, go ahead and edit it (and please send any changes to -# tz@iana.org for general use in the future). For more, please see -# the file CONTRIBUTING in the tz distribution. +# This file is by no means authoritative; if you think you know better, +# go ahead and edit the file, and please send any changes to +# the public mailing list tz@iana.org for general use in the future. +# For more, please see the file CONTRIBUTING in the tz distribution. # When proposing changes to this file, please use 'git format-patch' # format, either by attaching the resulting .patch file to your email, diff --git a/contrib/tzdata/calendars b/contrib/tzdata/calendars index f4ed9e434e50..699de85cbffa 100644 --- a/contrib/tzdata/calendars +++ b/contrib/tzdata/calendars @@ -16,30 +16,9 @@ and (in Paris only) 1871-05-06 through 1871-05-23. Russia -From Chris Carrier (1996-12-02): -On 1929-10-01 the Soviet Union instituted an "Eternal Calendar" -with 30-day months plus 5 holidays, with a 5-day week. -On 1931-12-01 it changed to a 6-day week; in 1934 it reverted to the -Gregorian calendar while retaining the 6-day week; on 1940-06-27 it -reverted to the 7-day week. With the 6-day week the usual days -off were the 6th, 12th, 18th, 24th and 30th of the month. -(Source: Evitiar Zerubavel, _The Seven Day Circle_) - - -Mark Brader reported a similar story in "The Book of Calendars", edited -by Frank Parise (1982, Facts on File, ISBN 0-8719-6467-8), page 377. But: - -From: Petteri Sulonen (via Usenet) -Date: 14 Jan 1999 00:00:00 GMT -... - -If your source is correct, how come documents between 1929 and 1940 were -still dated using the conventional, Gregorian calendar? - -I can post a scan of a document dated December 1, 1934, signed by -Yenukidze, the secretary, on behalf of Kalinin, the President of the -Executive Committee of the Supreme Soviet, if you like. - +Soviet Russia adopted the Gregorian calendar on 1918-02-14. +It also used 5- and 6-day work weeks at times, in parallel with the +Gregorian calendar; see . Sweden (and Finland) diff --git a/contrib/tzdata/checknow.awk b/contrib/tzdata/checknow.awk index 450490ee3768..8139ad57ecd2 100644 --- a/contrib/tzdata/checknow.awk +++ b/contrib/tzdata/checknow.awk @@ -50,5 +50,10 @@ END { status = 1 } } + if (now_out) { + for (data in zones) { + printf "%s=%s\n", now, zones[data] >>now_out + } + } exit status } diff --git a/contrib/tzdata/europe b/contrib/tzdata/europe index df334fc27c1d..af5217103845 100644 --- a/contrib/tzdata/europe +++ b/contrib/tzdata/europe @@ -4,9 +4,9 @@ # 2009-05-17 by Arthur David Olson. # This file is by no means authoritative; if you think you know better, -# go ahead and edit the file (and please send any changes to -# tz@iana.org for general use in the future). For more, please see -# the file CONTRIBUTING in the tz distribution. +# go ahead and edit the file, and please send any changes to +# the public mailing list tz@iana.org for general use in the future. +# For more, please see the file CONTRIBUTING in the tz distribution. # From Paul Eggert (2017-02-10): # @@ -42,7 +42,7 @@ # . He writes: # "It is requested that corrections and additions to these tables # may be sent to Mr. John Milne, Royal Geographical Society, -# Savile Row, London." Nowadays please email them to tz@iana.org. +# Savile Row, London." Nowadays please see the file CONTRIBUTING. # # Byalokoz EL. New Counting of Time in Russia since July 1, 1919. # This Russian-language source was consulted by Vladimir Karpinsky; see @@ -54,7 +54,7 @@ *** 1619 LINES SKIPPED ***