From nobody Mon Jan 19 10:53:06 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dvnNy2Jy7z6NZh4 for ; Mon, 19 Jan 2026 10:53:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dvnNy1L0Rz44CK for ; Mon, 19 Jan 2026 10:53:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768819986; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FoPGmwyd7TdxgacRuesTRclcz0oHLJ3ggoLLD0zVkpo=; b=dY+0orwSn5Hq2vikt6GBuZcxKA9HY1vJ2z5d929+tXNx56AgZNJxmkK1k/bDvEfIzfasCs Unk310GitU0KIbIyHze3c7Gj0yhL7ECoG3sB3R9CNl+d7rqXO1URUPOKyCh3nbZV/ge4Lf jNy4lEypxmj4YGgmIdCdi9O0KByNP6STiEqvCEvVTBm7RGmWaybWfvFMNgwn0/zniaEf4S 9HwmMDH8GpefEb3UdC4ERQMDCkAy5yuEDduJFRvIyB/FNyf0cIs+kL6Qutfq8Vf2K4fNMI 4sgQEtKSRogYOuUVRJ4GOa8uC5o428yyFiNZSuw8F6xmgqVB0DNcdWfIrIjEnQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768819986; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FoPGmwyd7TdxgacRuesTRclcz0oHLJ3ggoLLD0zVkpo=; b=x8gFauieJCXImcdkfRULuodFHmBReGvG5ZGv7raeM7uZUvI64TN/O5ayVIJDbzVyLbv0Bi uC5D+KF6Pj/zvfTiXneREFUeRliQ/RKTacapuJyWc/zQCG9Bo8cjfX4m0oKJpwTn9Z1li2 1HWOiTKcZ9SzBQC7A4sr4O793Ep9VmwYCzt/Rj8cBTkAFxlfFrDllYaDr3rV++psCJVdJO cvKIbQgwbboqgQuQzrjuBlayvdBwq1FHovMf7FvuHMeWjqqcHVjpY9bRhanxbQpKf+em9i EfYkC6AgmoQM2gsyY5DrX9mOww7JwVvWvSLCuC/F3wCVl+Ipo1Cd4leupY74vw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768819986; a=rsa-sha256; cv=none; b=yqw/kHAD4xeOxF0iz2UFjLjPG4EUYlSFZpUuSzRiqRHADzanpiYuXOKuUEjD+iOdfgtXAF svCKl1kx+UwjGQ2MQtqhLaRzLnR92S3u49xAY7Xm+4ibzvW/wvvtN4jwtRovs94hxmVDFk SHh2MvYGURuRovDJlJxWjIaXWKVPUFMO95ZueoYY9GR3qAK2UGmnfvrd0he7Er3vP6ZiNx FSAtVloJLx0SOAUpS1Uou9Gan1SgCdxQwPl/qiqU/7E4XkL/wRwS9hxp99BXuHp+nnD9Sd JcvmOLCeSqUY94t1sEO5wF0U6MtnPK5osyMJZgG/tp1gqNGgSTD9R2BLwrhrBA== 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 4dvnNy0r2BzCmC for ; Mon, 19 Jan 2026 10:53:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 340f9 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 10:53:06 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Wolfram Schneider Subject: git: a2c87d4f88e1 - main - symlink.7: add a new section "mount options" List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wosch X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a2c87d4f88e1bfe3b7007fa7148ebc7d37fc54cc Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 10:53:06 +0000 Message-Id: <696e0d12.340f9.18aa526@gitrepo.freebsd.org> The branch main has been updated by wosch: URL: https://cgit.FreeBSD.org/src/commit/?id=a2c87d4f88e1bfe3b7007fa7148ebc7d37fc54cc commit a2c87d4f88e1bfe3b7007fa7148ebc7d37fc54cc Author: Wolfram Schneider AuthorDate: 2026-01-19 10:47:53 +0000 Commit: Wolfram Schneider CommitDate: 2026-01-19 10:47:53 +0000 symlink.7: add a new section "mount options" Add a new section "mount options" to explain the mount option nosymfollow in more details. Differential Revision: https://reviews.freebsd.org/D54530 --- bin/ln/symlink.7 | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/bin/ln/symlink.7 b/bin/ln/symlink.7 index 28d9908f2053..db251e1d2985 100644 --- a/bin/ln/symlink.7 +++ b/bin/ln/symlink.7 @@ -72,13 +72,15 @@ or a loop is detected. links that may be followed, and an error results if this limit is exceeded.) .Pp -There are three separate areas that need to be discussed. +There are four separate areas that need to be discussed. They are as follows: .Pp .Bl -enum -compact -offset indent .It Symbolic links used as file name arguments for system calls. .It +Mount options to ignore symbolic links. +.It Symbolic links specified as command line arguments to utilities that are not traversing a file tree. .It @@ -178,6 +180,20 @@ The system call was added later when the limitations of the new .Xr chown 2 became apparent. +.Ss Mount options +.Fx +has a +.Xr mount 8 +option nosymfollow. When this option is enabled, the kernel +does not follow symlinks on the mounted file system and return EACCES. +You can still create or remove symlinks, or read the value of a symbolic link. +.Pp +This option is intended to be used when mounting file systems from +untrusted external storage systems or public writable /tmp file systems +to prevent symlink-based privilege escalation and sandbox escape attacks. +.Pp +The mount option nosymfollow first appeared in +.Fx 3.0 .Ss Commands not traversing a file tree. The second area is symbolic links, specified as command line file name arguments, to commands which are not traversing a file tree. @@ -478,4 +494,5 @@ whether specified on the command line or encountered in the tree walk. .Xr unlink 2 , .Xr fts 3 , .Xr remove 3 , -.Xr chown 8 +.Xr chown 8 , +.Xr mount 8 From nobody Mon Jan 19 14:33:09 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dvtGt1SLpz6Nsh6 for ; Mon, 19 Jan 2026 14:33:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dvtGs6C1rz3dtq for ; Mon, 19 Jan 2026 14:33:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768833189; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SDAj4/MBtMn3HJx0k+QzduBh5BBFcbvA2VuJQIwC6+s=; b=nua7y1mNhl8Bb1BEzf+lqelTq+ip3b2Hsaj0Gm12r7WMLHr2QeoOXWSjT7yvdGZ1SvUOYA z/HIBI4MY/YkDzcCyfCDD7WsovjhOfAVu2CouZ3wZ9ypVTDxKkRQhHVQyebUc+1cyhSbD/ gOtx7lojCVmJajD/M1Q2Jb9DzRKzkFisMUR583p14utJ023fuTH3SV23dAiW7dh4HToQ5v Ft6gVsXZUtdATb2aFcOnuX/uOQPpoQMcDyhVJSen4u5qzHNBPI3Ff7Y61eEx8m8TPOLb8K dM6KpCR1Mj8udylX1BukjupkkydZFOJoO1r87wu606BC3OwJD+Q876IZhsHxTw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768833189; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SDAj4/MBtMn3HJx0k+QzduBh5BBFcbvA2VuJQIwC6+s=; b=v+01SbrhmzCUKfS+KBNNBR+C7fUaigtCoTxHcPtbU/970M5Zzi73zNE4ay0lfU3fi7bwHU 3C94KD551b4GYgIIWyPmVn6klU/MHaJKweNR9IPdFaYDUUek/DceHKJqZI8KYn9MFq8wD+ a0imOaqaaQXJF55W8dQpzG/tIaAr8WvuOjEtwGuzlCTO6RlrgLX9kq8eHRpHJqdF4m/PJc sdgMYpWAAi2P0WLVg4BxDYrV7SR4cyX99usZl5mL5KG7zAyS8+2U9J+ixKTjyMy6LOrEwe 1WmIOFBkYz00ZQcpVygBAhJOtbvoIoE+1DTYeUMEWunWNqStUNk1ZOaxKUTvAg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768833189; a=rsa-sha256; cv=none; b=AfcgkF6oMThVdc2zeXVX6og589k8/EGWqMOy0IJAOIE5hY8hhaHJnLuCigpTFI8zABG8se nMLcbFdhaHYAKbB2AzhmSwDsTvOSOZcss96bogNgkPAqcLvH5MUP82VQ42ROmM/xaPYkNe ZlWq6lzbAnkoJurUMnLWJZhGDkih7J7dZ0h+GiEn34o4VVNkNSiEG1it1UY+3tKZJ9284Q JoDYjGWBmHHYvpf19Aqy+IUuWR/wdAF2o2y2qv+bTUGl1xueVC8fgRs0YUov5zV2zDfAZS 6sxokrp+P/S6mm6AX07qbtF6jAPDHxLCHWAqIob70DN7BjQcYyG9P50C7gUlAg== 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 4dvtGs5nqFzc1W for ; Mon, 19 Jan 2026 14:33:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2106b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 14:33:09 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 99afbc5cc7ae - main - vmm: Avoid clobbering errors from vmm_modinit() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 99afbc5cc7ae8ba7b112fbafbf24ea2575a65ba4 Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 14:33:09 +0000 Message-Id: <696e40a5.2106b.55f274bf@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=99afbc5cc7ae8ba7b112fbafbf24ea2575a65ba4 commit 99afbc5cc7ae8ba7b112fbafbf24ea2575a65ba4 Author: Mark Johnston AuthorDate: 2026-01-19 14:29:33 +0000 Commit: Mark Johnston CommitDate: 2026-01-19 14:29:33 +0000 vmm: Avoid clobbering errors from vmm_modinit() Reported by: novel Reviewed by: bnovkov Fixes: e758074458df ("vmm: Move the module load handler to vmm_dev.c") Differential Revision: https://reviews.freebsd.org/D54750 --- sys/dev/vmm/vmm_dev.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sys/dev/vmm/vmm_dev.c b/sys/dev/vmm/vmm_dev.c index a5322f05d28f..fa51dc950459 100644 --- a/sys/dev/vmm/vmm_dev.c +++ b/sys/dev/vmm/vmm_dev.c @@ -1228,9 +1228,11 @@ vmm_handler(module_t mod, int what, void *arg) if (error == 0) vmm_initialized = true; else { - error = vmmdev_cleanup(); - KASSERT(error == 0, - ("%s: vmmdev_cleanup failed: %d", __func__, error)); + int error1 __diagused; + + error1 = vmmdev_cleanup(); + KASSERT(error1 == 0, + ("%s: vmmdev_cleanup failed: %d", __func__, error1)); } break; case MOD_UNLOAD: From nobody Mon Jan 19 15:50:01 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dvvzY5gXfz6NyP1 for ; Mon, 19 Jan 2026 15:50: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dvvzY4k0Xz3qcB for ; Mon, 19 Jan 2026 15:50:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768837801; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yjquCRfFG38L+lJX6lHNkSfyLiJYySD8+BswKac1A78=; b=hxPns3bhg6PnOTbYA2+6c8lDcxL0MgZOfRDdMmGSqMS2h/e13xLxOUFwttAK89MPzqiwUp 3r5uW+UMd29r2UmZXbi4jybXmqBz6vDBxi8H0ClHsXjwMrkf2RPjuX0D89gJkR1p9wlKMK SP9C19/2C5FjblT7KgQZkT+IY0sUe4SVPUXKVCTZgRoBlAO3jpKnEY/Z/JSG8T7jGCAVsc iE7XHDWShqNcE1tY80NlNJzQL7fptCqTekRgO9FpMuZOPU0xymlIQAfgZcoMjIJ3Fd9ZMs 3t0C3ok4TxZZNrle0PuGhloKd0K8wAEjT7217sEzusBjyDG2PsT3bmtgg0Gmpg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768837801; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yjquCRfFG38L+lJX6lHNkSfyLiJYySD8+BswKac1A78=; b=WE4/FHlFDDe34SEJO5RbotdptDEgCepz1o03EkU4MDriixVf6ij7kKs02X3B6d1wntiFd8 1wzv1pKAAYyPRA9rMVzHXRI5X/Bqbkax++b8NdYZXxYJpmbU8tXNoB2vt73420BUPEljFh v3p7G1eiNCnEyJdh0lmXSFsJCmfXbPJUSeyZaquLyTGmV/80z1lMRyh9IQK5VJCnrd1Tww v5Z+Dg7MlBXzYyYHZ0xS/yeyYBOdEj+uYlD2GLx7qyaDuo5Hervs8v7fBI+KPytZEEjjEX 0EwFsN2lgLU9DYKGIc5EBUaKE/nW5P3J98WBo/tGiUrZrQlIics3zw9qP8w+KA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768837801; a=rsa-sha256; cv=none; b=CxU7X6Tgqz4SWsxDkWD9wDR2W899/RFTjETkz5+mM4NKM4tX8ayAZXWJBVGjo/72ldok9F 0Pc4PLOMYJpDiFiqDLS0iYbiBSGTRcKraVTyOss/P6EvSEG/skQ8cs3ybjEBZ8hIFOkmJ3 WMUKUSJB2mPZLYqOtQQkK8ssxY8doPdTTvVEbbuGFNN6n+2KHI2tCkBXjUVu9lANZaCKTd yQi32i9BzPiEZZWLpnuey7j1+GFsym+YCTJP5gtUvcf+x2/CNBmM/9+7MvHqfyJ4d8qrmk Lc+M9OvxNyA0f6x0ARuQ3Kf/AmaJrt0noDJLqptg5WdHNE/hJvpZNTGtZKKOAQ== 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 4dvvzY3qKGzf1S for ; Mon, 19 Jan 2026 15:50:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 308e8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 15:50:01 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Gallatin Subject: git: d91ae61f8fc2 - main - iflib: null out freed mbuf in iflib_txsd_free List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: d91ae61f8fc2dd4ab3c208f25570b91a0725e2e4 Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 15:50:01 +0000 Message-Id: <696e52a9.308e8.211fdd74@gitrepo.freebsd.org> The branch main has been updated by gallatin: URL: https://cgit.FreeBSD.org/src/commit/?id=d91ae61f8fc2dd4ab3c208f25570b91a0725e2e4 commit d91ae61f8fc2dd4ab3c208f25570b91a0725e2e4 Author: Andrew Gallatin AuthorDate: 2026-01-19 15:41:02 +0000 Commit: Andrew Gallatin CommitDate: 2026-01-19 15:45:49 +0000 iflib: null out freed mbuf in iflib_txsd_free When adding the IFLIB_GET_MBUF/FLAGS, I neglected to NULL out the mbuf in the descriptor ring. I didn't think this should matter as the I thought this code was only used when the ring was about to be freed. But I was wrong, and leaving a stale mbuf in there can cause panics. Reported by: Marek Zarychta (https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292547) Fixes: 14d93f612f26 Sponsored by: Netflix --- sys/net/iflib.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/net/iflib.c b/sys/net/iflib.c index 5c37f199e84c..b0e4bb9470c9 100644 --- a/sys/net/iflib.c +++ b/sys/net/iflib.c @@ -1890,6 +1890,7 @@ iflib_txsd_free(if_ctx_t ctx, iflib_txq_t txq, int i) bus_dmamap_unload(txq->ift_tso_buf_tag, txq->ift_sds.ifsd_tso_map[i]); } + txq->ift_sds.ifsd_m[i] = NULL; m_freem(m); DBG_COUNTER_INC(tx_frees); } From nobody Mon Jan 19 15:56:49 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dvw7Q0XsNz6P071 for ; Mon, 19 Jan 2026 15:56: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dvw7P6qLxz3t1Y for ; Mon, 19 Jan 2026 15:56:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768838210; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bZz4j7UA1aj+WglDzXFwYTrtX71iMyPPCuMnb2ugD2U=; b=KdsviMxrJY1zFBqLlhuKsPqE4GONf1lsQ5ERKyiJ8iax9NCZUitvVokkQrgqMQXKcGNZc9 3B1My7FYX41dK+XMTMu1i94RKCuF9sl+Q7VNro1Bsvkmuwlu/JgneB0gmhyrxKRna5v4Ze 4O/WM7Yt8q1hZ6SLdU690CF40cRXBRjAEFoPnzr4MXdfMXTVmCoZ3jGll9MUcHNKj+cAN0 ASt8LhB2MS2mi8EB2fX9BVKoWqdxlDqdO4T5h1b0lpmei+RXrZxyoOJounPHk+Nw5uW6e+ HdJECgNk+7mjn9PCz8kNNqtk4fCyzzQu7d6AWs5YlUpa+Yxe7Aicf7/VMUBdQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768838210; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bZz4j7UA1aj+WglDzXFwYTrtX71iMyPPCuMnb2ugD2U=; b=e8zKdMLmarSJoToQvuFFos15zgv52mckl8AAJWGgZ60GNgBnIHcGleZNcleahW2WSLX5BU O4iZabsnzAMQFIJy+0rfe2WimmU0SxMZ92I67De5Iy8F68Ezi7Ca7qbq9Xi29mSrWwZ7Xu 2H5Mx7pkoKIIGv74wE9JSI9FgUwVF/9lvWC20j4sKuy/2YXCh1kXWa4ACackmTfYvG82A5 AUWS3tBG69VqbgwFDoBPn+jpg8Xcv2Qp7ZTsuNfplVrVYA8y5oEDFROzGycZJ8bQpnmkUg vW9ElKYA6bD2X2uj32epAIMOpgzgZ3XYGPoeBv5Xw6FSaRKkkFwyWQvCKgcOuw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768838210; a=rsa-sha256; cv=none; b=H9V+mayyb8fDIALBMJoiWCuyHO93mUlzZTgAvkCqmh3h5ju3X/UyFrBiJ67eJS72t7BeYI 4HhUN2rsW/pUeYSJGABqHamsi46PJPBzpIVR++zJQrJCJFIAyaLSyQKKa4GhiBoaSHazjK EUafom8kzBQR1Y37tgBijmDX2lxQ94UR5Jkql3cxTfVUez3CRh19K1TdNqhUiXm51H0aPE dnmQ1ICYdl8IVfujuP8g9kEveEqsDY0o1DQRMkKGYlePH9iNmiQ0203Bsv/DK3Bt4VM/Kd OXMriGfqA+uAP5PX4SOd1s17MS45APqkNPGB98fjnkqJ2binSU61bTm6Tb4oeQ== 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 4dvw7P6QrHzf2H for ; Mon, 19 Jan 2026 15:56:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3121e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 15:56:49 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 3a6289e1e53f - main - .github: Disable checklist workflow on forks List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3a6289e1e53ffe11b91b754d3b8241001b2cbfb8 Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 15:56:49 +0000 Message-Id: <696e5441.3121e.5126d838@gitrepo.freebsd.org> The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=3a6289e1e53ffe11b91b754d3b8241001b2cbfb8 commit 3a6289e1e53ffe11b91b754d3b8241001b2cbfb8 Author: John Baldwin AuthorDate: 2026-01-19 15:56:20 +0000 Commit: John Baldwin CommitDate: 2026-01-19 15:56:20 +0000 .github: Disable checklist workflow on forks Reviewed by: imp Obtained from: CheriBSD Sponsored by: AFRL, DARPA Pull Request: https://github.com/freebsd/freebsd-src/pull/1973 --- .github/workflows/checklist.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/checklist.yml b/.github/workflows/checklist.yml index 303db9eb8534..65e640a2a0e4 100644 --- a/.github/workflows/checklist.yml +++ b/.github/workflows/checklist.yml @@ -13,6 +13,7 @@ permissions: jobs: checklist: name: commit + if: github.repository == 'freebsd/freebsd-src' runs-on: ubuntu-latest steps: - uses: actions/github-script@v7 From nobody Mon Jan 19 16:20:46 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dvwg32sz6z6P1ZW for ; Mon, 19 Jan 2026 16:20: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dvwg302hGz3xcX for ; Mon, 19 Jan 2026 16:20:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768839647; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=t+TYdzAe4vYqr32nLq7Omu1VfZU+M3itrsXbLOQaifw=; b=K1dolN5Y+7YKOlnay2Y5nDe/N1jOzrol+BmEu43/Pvkh/pGR+9p+oR0rkjebG/0V7mRzHd dnSpXhjr303NJaa7MXizuYivjFsc9OLsr7HutypFGfLhb3NfITCYe9fKxw+1cCHasApZVX lInI4nORE/QPpI4QPdHy73MkiExqcoMe4w/uz15a9nHTQe7rf6BL2vK0JqCH0tQMUesGuD oCykJgFzhsWCDMidmZFg10LME0tqS7UlWVgN3YHUSCAkvSXpcLg6swgVsRGVmvmtW37dKz m7mXJgodmrfc78oegvXl02+eeFx82odI/0n5+/JuOUIGQgL5mVqu3X+DKFnXfA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768839647; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=t+TYdzAe4vYqr32nLq7Omu1VfZU+M3itrsXbLOQaifw=; b=ZXkK+UJ6EW1mNbHCEqX7mpcu5fmpKKigt/xw5iySgRh7pWiSj5qqJG9j9b+5VfCPJZjcw7 DoIkCWJd+o+y0Ek97BmGtEiYHZuF+wUQ/qSjQmS8ANXNASWliktWd5RATL9+bDlJK33YUz 4qgQe4EJ/wtB1S/PLMu5BpoeAQifGaqItvdWu9QeYhnKYsNK+VnEgND6JOIJrcHrFfh+Ep FGf1BpAbvBOoiRIc7dIAl3oRDUEQGSRV6VQC3yOP2ILMhWf8OSS5yvjr1eb614zCm36cun JShMJWjP8U7cPX0DfRQLLw9nLGm7qjryUOjo8PFjNlC3q0WsplH0G0TSu4JURw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768839647; a=rsa-sha256; cv=none; b=EEta3w0nzdLLoO6jAabfN6+hDyB5fetv4p2Z8yNjNNR1nseQRE9tLeu733xE8U7zfugaHA O6V/vZRx0ednSyZ1r5KUHkA9/5UA/W6DuNZYmMzZ1AAmpDco0zm37QYHT9iLSdB2JFDCYG jZakkBptEMzBWE3CsgPViaQo42F3S6rRcjNxKT+IX4RvwZzsZVJMoN5EYr3dGQYMiAgeFb 7L9KJhCdH/jiCPciNtYl9BCh1wd5ZASATS6OpTEpAQRaQVGV7+kG7En4wD9Ymp7JxtCwrq JqKxLvJiejB5cyM1LNjW9c6+Gw3JefclPdDnFqmlkjYwFf+/jVIOq2V9PbniRg== 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 4dvwg265KXzg8f for ; Mon, 19 Jan 2026 16:20:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 34332 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 16:20:46 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 83d988288675 - main - sys: do not allow entering vm_fault() on boot until VM is initialized List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 83d98828867591b5d842573ed6edcec7392f82df Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 16:20:46 +0000 Message-Id: <696e59de.34332.c043f54@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=83d98828867591b5d842573ed6edcec7392f82df commit 83d98828867591b5d842573ed6edcec7392f82df Author: Konstantin Belousov AuthorDate: 2026-01-18 21:14:59 +0000 Commit: Konstantin Belousov CommitDate: 2026-01-19 16:20:36 +0000 sys: do not allow entering vm_fault() on boot until VM is initialized On amd64, a hack sets td_critnest to 1 in hammer_time(), and then clear it before returning from hammer_time(), which is too early. Instead, set TDP_NOFAULTING for thread0, and clear the flag after vm_init() finished. Noted by: adrian Reviewed by: adrian (previous version), markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54768 --- sys/amd64/amd64/machdep.c | 5 +---- sys/kern/init_main.c | 12 +++++++++++- sys/vm/vm_init.c | 8 ++++++++ 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/sys/amd64/amd64/machdep.c b/sys/amd64/amd64/machdep.c index 2fce1a7e64b6..cae58181000f 100644 --- a/sys/amd64/amd64/machdep.c +++ b/sys/amd64/amd64/machdep.c @@ -1518,13 +1518,11 @@ hammer_time(u_int64_t modulep, u_int64_t physfree) /* * We initialize the PCB pointer early so that exception - * handlers will work. Also set up td_critnest to short-cut - * the page fault handler. + * handlers will work. */ cpu_max_ext_state_size = sizeof(struct savefpu); set_top_of_stack_td(&thread0); thread0.td_pcb = get_pcb_td(&thread0); - thread0.td_critnest = 1; /* * The console and kdb should be initialized even earlier than here, @@ -1615,7 +1613,6 @@ hammer_time(u_int64_t modulep, u_int64_t physfree) #ifdef FDT x86_init_fdt(); #endif - thread0.td_critnest = 0; kasan_init(); kmsan_init(); diff --git a/sys/kern/init_main.c b/sys/kern/init_main.c index 4144297d674c..39357b8d4440 100644 --- a/sys/kern/init_main.c +++ b/sys/kern/init_main.c @@ -104,7 +104,17 @@ void mi_startup(void); /* Should be elsewhere */ static struct session session0; static struct pgrp pgrp0; struct proc proc0; -struct thread0_storage thread0_st __aligned(32); +struct thread0_storage thread0_st __aligned(32) = { + .t0st_thread = { + /* + * thread0.td_pflags is set with TDP_NOFAULTING to + * short-cut the vm page fault handler until it is + * ready. It is cleared in vm_init() after VM + * initialization. + */ + .td_pflags = TDP_NOFAULTING, + }, +}; struct vmspace vmspace0; struct proc *initproc; diff --git a/sys/vm/vm_init.c b/sys/vm/vm_init.c index a0d3651ba266..2764b438d27b 100644 --- a/sys/vm/vm_init.c +++ b/sys/vm/vm_init.c @@ -159,6 +159,14 @@ vm_mem_init(void *dummy) pmap_init(); vm_pager_init(); + /* + * Now we can properly handle calls into vm_fault() from + * kernel page faults during initialization, typically to + * panic. Clear the nofaulting flag set for thread0 in the + * image, see kern/init_main.c + */ + curthread->td_pflags &= ~TDP_NOFAULTING; + #ifdef INVARIANTS vm_check_pagesizes(); #endif From nobody Mon Jan 19 16:20:47 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dvwg42lQlz6P1XC for ; Mon, 19 Jan 2026 16:20: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dvwg4076jz3y2T for ; Mon, 19 Jan 2026 16:20:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768839648; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=chMWPVCWMkgQ6GOc8Z3YraneEkWOVdVolOpSZfqdK6Y=; b=AUKMUO/EViN7OHWMLwnhvw0AJT09g561mrPkme1bjYdxFXNcx8KYc0rfgQbYqB+L/7BKjY N/lZB7lHAw5QD3GbNAqf/0pTkLy4HnjpVG7oF5jsg/4J3N6fLlteao7M6ZmU0EIlNMOsw4 8Hfg7ysYOerppFbKdqQkYFer/tnGBrrFErvWX84Ri7tjhSqzolte5rlzvMihP79meDhaPe XPFpDYCYzmlXksm05XDF3obx8OPOJHvK1mBIeFAMZbAioygf5bXnH1pfg/UsnC0aIVhne0 3/HxmJ4bXGutIz5REpZwJun3E2E7k+30uBNba4abccXhnRt0B7tw+QTqg5gAcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768839648; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=chMWPVCWMkgQ6GOc8Z3YraneEkWOVdVolOpSZfqdK6Y=; b=AgVQRUw2Lp5AjuLXANShyiwd2gjVDv9x3XrwNwGju0KHue0Kug29FkeGO/XDUlyV3AQ7pV W48CGI5MwrGZYmt96czSk01GL0mUl/A639vFb2jQcKpeRLz2jNDVSpwPGPOkYnn+xlnBU3 TNdaIE7wOTvNpSSiH7R528FC+IlM6LIAbl25HBDSLccT1QG0qYDRTqhA6xMpNtA+hH6abr H6a4Z3X3xD9zCRSPEeDSD9inpg0EYrUgeqezY+7hFkwrBPTaCX3PTC6yrbZ0QyKL/9Yeba 4N3kPbBum1xM6FfVIu8ecnWnICtwrZq/A5rbHplv36cyIoI+TinhtInxapCZjA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768839648; a=rsa-sha256; cv=none; b=mf1Z38v2fuJpAO1S6vqLeGrMGkh7EFwRCKjkMhhw4Wayznt778jUBBNDDCPjARQOcJwVnB c5CrRemImJ+LdISAh9s+/zQkJI6ENQXHPPlp/52KGfDIXrot6yQNeFNzA0oxm6rwkSVIxb bYrrCuwzWLzMbmXLh6Dzp89Uv5THOVRu9KhxjmAjoDjpfsJhdOeV/c9bOpT3Zaka6a6bqn jEXDBEZwg66yuBDL49naX5YYrkKvZGsaw/CvE5VNFEOV1vPq2UqBtw7wCY0/Xfyp9lFTMm d9aOvg0eaz00CmavvLojvgFkzeweBUcNpecP1d2858SfnnDNH4THyNajcue+/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 4dvwg36LdLzfbS for ; Mon, 19 Jan 2026 16:20:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 33c97 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 16:20:47 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: ad5e3cb95034 - main - x86/local_apic.c: add lapic_maxlvt() helper List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: ad5e3cb950344f9822dbbd90f5ac7c256f97fa4c Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 16:20:47 +0000 Message-Id: <696e59df.33c97.37dc64f0@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=ad5e3cb950344f9822dbbd90f5ac7c256f97fa4c commit ad5e3cb950344f9822dbbd90f5ac7c256f97fa4c Author: Konstantin Belousov AuthorDate: 2026-01-19 12:50:09 +0000 Commit: Konstantin Belousov CommitDate: 2026-01-19 16:20:36 +0000 x86/local_apic.c: add lapic_maxlvt() helper that calculates the max index of the present LVT entry from the value of the LAPIC version register. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54773 --- sys/x86/x86/local_apic.c | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/sys/x86/x86/local_apic.c b/sys/x86/x86/local_apic.c index 053d9814c14c..68f42c9eed0b 100644 --- a/sys/x86/x86/local_apic.c +++ b/sys/x86/x86/local_apic.c @@ -314,6 +314,16 @@ SYSCTL_INT(_hw_apic, OID_AUTO, ds_idle_timeout, CTLFLAG_RWTUN, static void lapic_calibrate_initcount(struct lapic *la); +/* + * Calculate the max index of the present LVT entry from the value of + * the LAPIC version register. + */ +static int +lapic_maxlvt(uint32_t version) +{ + return ((version & APIC_VER_MAXLVT) >> MAXLVTSHIFT); +} + /* * Use __nosanitizethread to exempt the LAPIC I/O accessors from KCSan * instrumentation. Otherwise, if x2APIC is not available, use of the global @@ -753,7 +763,7 @@ lapic_dump(const char* str) int i; version = lapic_read32(LAPIC_VERSION); - maxlvt = (version & APIC_VER_MAXLVT) >> MAXLVTSHIFT; + maxlvt = lapic_maxlvt(version); printf("cpu%d %s:\n", PCPU_GET(cpuid), str); printf(" ID: 0x%08x VER: 0x%08x LDR: 0x%08x DFR: 0x%08x", lapic_read32(LAPIC_ID), version, @@ -834,7 +844,7 @@ lapic_setup(int boot) la = &lapics[lapic_id()]; KASSERT(la->la_present, ("missing APIC structure")); version = lapic_read32(LAPIC_VERSION); - maxlvt = (version & APIC_VER_MAXLVT) >> MAXLVTSHIFT; + maxlvt = lapic_maxlvt(version); /* Initialize the TPR to allow all interrupts. */ lapic_set_tpr(0); @@ -990,7 +1000,7 @@ lapic_enable_pcint(void) #endif /* Fail if the PMC LVT is not present. */ - maxlvt = (lapic_read32(LAPIC_VERSION) & APIC_VER_MAXLVT) >> MAXLVTSHIFT; + maxlvt = lapic_maxlvt(lapic_read32(LAPIC_VERSION)); if (maxlvt < APIC_LVT_PMC) return (0); if (refcount_acquire(&pcint_refcnt) > 0) @@ -1014,7 +1024,7 @@ lapic_disable_pcint(void) #endif /* Fail if the PMC LVT is not present. */ - maxlvt = (lapic_read32(LAPIC_VERSION) & APIC_VER_MAXLVT) >> MAXLVTSHIFT; + maxlvt = lapic_maxlvt(lapic_read32(LAPIC_VERSION)); if (maxlvt < APIC_LVT_PMC) return; if (!refcount_release(&pcint_refcnt)) @@ -1883,7 +1893,7 @@ DB_SHOW_COMMAND_FLAGS(lapic, db_show_lapic, DB_CMD_MEMSAFE) v = lapic_read32(LAPIC_VERSION); db_printf("version = %d.%d\n", (v & APIC_VER_VERSION) >> 4, v & 0xf); - db_printf("max LVT = %d\n", (v & APIC_VER_MAXLVT) >> MAXLVTSHIFT); + db_printf("max LVT = %d\n", lapic_maxlvt(v)); v = lapic_read32(LAPIC_SVR); db_printf("SVR = %02x (%s)\n", v & APIC_SVR_VECTOR, v & APIC_SVR_ENABLE ? "enabled" : "disabled"); From nobody Mon Jan 19 16:20:49 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dvwg55jgCz6P1Zd for ; Mon, 19 Jan 2026 16:20: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dvwg50WYqz3xnk for ; Mon, 19 Jan 2026 16:20:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768839649; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xC9hYirVVMIh6xTPYvfTEx5NxynJHn2QI6Xd5UjmwFM=; b=Y2RzELve1WSJFyv8hTars41mQup5rLdjOhRo+ue9/4G9RiqHVyt9FbUM5ocKcaTAB0/+GB SA1GrP9mudJvRE7D7yySBOshvWTQjnz8VczgC8Fx9mybPvDYXhoyVSKabJEMHouG8Wx+t8 LcIDYRcaeZ5jwMSTwVqEk+A7dhyAxPuS1g6baZbFxtLf0DNnYpx2DoTv1XRPFnBPp9CP2j etfyzXAYK+H5Ia7JE+bm4qcU4rOh1j1bV3cjLJ39UETNZpH1qjhe9oAqGCTSmb0TKCwu82 BaeQAOkoRA/yHDERePlAuK0EOSL8hOx8SdLzPw+aFcvcJvfNAiVsNceAQRHT3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768839649; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xC9hYirVVMIh6xTPYvfTEx5NxynJHn2QI6Xd5UjmwFM=; b=HE1vSW69yCd1NcwJtgt5Oq8whjekQsMEKDr32QSJgBaT0IrDKJ88SAGTp4cmEePCe8uYaq pheFxi51I/dyhTqASAvidBgRzosCS8egfaTcz19qkSmZMJnYbG2+letLsFukbRbQzzD0fH N5YwZV8UWrJXhhDFozkAJ9KV75uNFa+tGyG2uyJKJDGqiBZss5/ayEhOzuWy53l+P4DHUK xXjkGZ5ILCR9Dqdz8ke8cOLy7Q2XqKMWA+8GObN3zoZTfz3Lm0L9RqS3jxGbZEZSWvmrAo oPl9L6YRjhadRW5639pd3RhgcwJ1hjhDwMdqWqXzcwNJpWvXdYYlGaoBd0cOQg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768839649; a=rsa-sha256; cv=none; b=jjNlLZoqpl3QIr9qpZeOzu10XtwpD0MU3CZDyTAWwysKFdElFM4qjjO9oB0vdN65EnZPKd 0zXHcAAjkYf3yb/rRV78OxnXiuHS+k9XeirLOD3oUsuHoKbMU2oZaf6IwSXqZqIBncmX7k 31+IC1+/iXgThT2DZUlvKb7Nrs4Uy2+ONumAYdE1aIm/t4Aw0gIo10f2OPCbFQYOL8Nl2j heZ6/K0964PTxZClNZ7F9x/uOgdXg7ISMfqXdUWSLfvR14B9+9aMYTiSOKl9yqMhAUSU3n NvXxMiho3VUu3uQlehRTDqovwTJCmsRwlRlYsAilNu1KHOrVW7hWfro72ZCTsg== 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 4dvwg505h8zfwX for ; Mon, 19 Jan 2026 16:20:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 33d19 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 16:20:49 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 709a53c8b20b - main - x86/local_apic.c: Properly calculate the number of LVT entries List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 709a53c8b20b5770f7e2f117d4799b5617479976 Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 16:20:49 +0000 Message-Id: <696e59e1.33d19.4d981373@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=709a53c8b20b5770f7e2f117d4799b5617479976 commit 709a53c8b20b5770f7e2f117d4799b5617479976 Author: Konstantin Belousov AuthorDate: 2026-01-19 11:55:36 +0000 Commit: Konstantin Belousov CommitDate: 2026-01-19 16:20:37 +0000 x86/local_apic.c: Properly calculate the number of LVT entries First, the CMCI entry index is APIC_LVT_MAX, so it was excluded unconditionall [1]. Second, the number of entries is reported by the version register, and we must not access past the last reported entry. Reported by: olivier [1] Fixes: 11f954b021a1aadde1d03d40ed5d6b529e14da98 Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54773 --- sys/x86/include/apicreg.h | 7 ++++++- sys/x86/x86/local_apic.c | 7 +++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/sys/x86/include/apicreg.h b/sys/x86/include/apicreg.h index 1252647fbab3..4cc9cabdad9e 100644 --- a/sys/x86/include/apicreg.h +++ b/sys/x86/include/apicreg.h @@ -439,7 +439,12 @@ typedef struct IOAPIC ioapic_t; #define APIC_EXTF_SEIO_CAP 0x00000002 #define APIC_EXTF_IER_CAP 0x00000001 -/* LVT table indices */ +/* + * LVT table indices. + * Must be ordered following the appearance of the LVT entries in + * series the LAPIC versions, which is reported by LAPIC_VERSION + * MAXLVT field. + */ #define APIC_LVT_LINT0 0 #define APIC_LVT_LINT1 1 #define APIC_LVT_TIMER 2 diff --git a/sys/x86/x86/local_apic.c b/sys/x86/x86/local_apic.c index 68f42c9eed0b..b444142d5481 100644 --- a/sys/x86/x86/local_apic.c +++ b/sys/x86/x86/local_apic.c @@ -819,9 +819,12 @@ lapic_early_mask_vec(const struct lvt *l) static void lapic_early_mask_vecs(void) { - int elvt_count, i; + int elvt_count, lvts_count, i; + uint32_t version; - for (i = 0; i < APIC_LVT_MAX; i++) + version = lapic_read32(LAPIC_VERSION); + lvts_count = min(nitems(lvts), lapic_maxlvt(version) + 1); + for (i = 0; i < lvts_count; i++) lapic_early_mask_vec(&lvts[i]); elvt_count = amd_read_elvt_count(); From nobody Mon Jan 19 16:30:18 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dvwt240k6z6P29Q for ; Mon, 19 Jan 2026 16:30: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dvwt21qdgz41YB for ; Mon, 19 Jan 2026 16: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=1768840218; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qo3HCuSQQw5aINDbk1SlPG/IlvwGmHkh1b/n3hZRNLI=; b=XTn+Z+ENo8LvKgDNOoTh15GZkihSKXptuHt5pT3sxOA1ECw55iZzLZfssLxekMqvMe8AkF VLdFSKJ9+76uyqFN6DM6ai3Xy/gKLsgNZ74kPrxqiUGQBW0ByNNpzR64oTs9rfAiJCWlja BetDAdgk/SoPwJYv0j/51B0WEPEl9CtcNA1xltD4nKGirZVgK1U8YH1PBDbmo3pL1jI6Ge TuWln8bIxFGGpAjpQhWWNOsbUBRpbrmBJOrR3RvvfrzVZUBaHZNMKrWIq21rJrHHdoZljU DqQT+l9b0QCCyKxdJf4ln4NJEDr1CF18OUkHQvf+0TUlwfQhciyX/HVOmwGM8w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768840218; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qo3HCuSQQw5aINDbk1SlPG/IlvwGmHkh1b/n3hZRNLI=; b=SH2s7f55EEpcMoOI6BRIJhI+IDMepnYjnfq+KAlSnoYPZL3YMU/U8EVVvQqRLjKx2aAua4 T4fdjRLrsCepEfPx4oo4ROwa/Dw0e9T/o/4s0onqOhst1byU7EP3chtU8gGYmiMHop3pSU pLb0dUdSoEgDQiT6xmwrH5VojYuLcxZee9z19sn7k3L5TDrMVdyi8mDKTnVc6v3b7UppG6 88D3CPCKZZ/Enu0lD31axzEz+w8noSyyXO1DdiG+ukhD6GcYTMUGA+bdfB6UfTMP7xSrmN wPEuDQFe65m/sErPgj6MIBmxEqfIvGM+tiQJvvwjxPM61UAhrmb/ahJ7/NSQ9g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768840218; a=rsa-sha256; cv=none; b=cYlYZ8Z2JIOofjdtmXEFuuFgsJTlunjTTbIup0URhIMjub9ucohlL2gz5n6WroiTFAZmGZ RjMWPFAmjg/lWYIzYuJFvfu0Iof4jiREvt0N1sCaRSeiskwpMrOhTKAtn4TcWgaheZcQ1U /SnCGRPEcMgdy0LO2FU6TmgXiK8X0TZL6oYXfq/UXF97l9yeTGt+R6QgEm1FDY9DaKvKQO 20LqZk5zJShPSyjGBMp0b5Yj3ALyz/6skaMJbeh01yIqZMoDMxlmIOq5qrRDckPi7RtBm/ onbFR12NqIObUv74ZYIYDK0mYRvVb6Q9lswuqceBumTSRh2bwj4mIOOg9qRY0w== 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 4dvwt20mjvzftw for ; Mon, 19 Jan 2026 16:30:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 33bf8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 16:30:18 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Aymeric Wibo Subject: git: 4b534b814aa0 - main - acpi: Fix not calling AcpiLeaveSleepState() in S3 path List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: obiwac X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4b534b814aa03b44660ede6d5f1a62cb33c24115 Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 16:30:18 +0000 Message-Id: <696e5c1a.33bf8.2bac138f@gitrepo.freebsd.org> The branch main has been updated by obiwac: URL: https://cgit.FreeBSD.org/src/commit/?id=4b534b814aa03b44660ede6d5f1a62cb33c24115 commit 4b534b814aa03b44660ede6d5f1a62cb33c24115 Author: Aymeric Wibo AuthorDate: 2026-01-19 13:19:52 +0000 Commit: Aymeric Wibo CommitDate: 2026-01-19 16:30:10 +0000 acpi: Fix not calling AcpiLeaveSleepState() in S3 path When resuming from ACPI suspend, the ACPI_SS_SLP_PREP bit in slp_state was being checked and subsequently unset when calling resumeclock(). This bit was also being checked for the AcpiLeaveSleepState() call in the non-s2idle path, but having just been unset, it was never actually being called. Change this so that resumeclock() is always being called (since we never goto breakout between suspendclock() and resumeclock() anyway) and ACPI_SS_SLP_PREP is purely used for AcpiEnterSleepStatePrep() and AcpiLeaveSleepState() in the non-s2idle paths. PR: 292568 Reported by: Marek Zarychta Reviewed by: olce Tested by: Marek Zarychta Approved by: olce Fixes: 7669cbd0f064 (“acpi: Suspend-to-idle support (s2idle)”) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54777 --- sys/dev/acpica/acpi.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/sys/dev/acpica/acpi.c b/sys/dev/acpica/acpi.c index 518cbce19e33..c76bc8477537 100644 --- a/sys/dev/acpica/acpi.c +++ b/sys/dev/acpica/acpi.c @@ -3645,8 +3645,8 @@ acpi_EnterSleepState(struct acpi_softc *sc, enum power_stype stype) AcpiFormatException(status)); goto backout; } + slp_state |= ACPI_SS_SLP_PREP; } - slp_state |= ACPI_SS_SLP_PREP; if (sc->acpi_sleep_delay > 0) DELAY(sc->acpi_sleep_delay * 1000000); @@ -3672,16 +3672,13 @@ acpi_EnterSleepState(struct acpi_softc *sc, enum power_stype stype) case POWER_STYPE_UNKNOWN: __unreachable(); } + resumeclock(); /* * Back out state according to how far along we got in the suspend * process. This handles both the error and success cases. */ backout: - if ((slp_state & ACPI_SS_SLP_PREP) != 0) { - resumeclock(); - slp_state &= ~ACPI_SS_SLP_PREP; - } if ((slp_state & ACPI_SS_GPE_SET) != 0) { acpi_wake_prep_walk(sc, stype); sc->acpi_stype = POWER_STYPE_AWAKE; @@ -3691,7 +3688,7 @@ backout: DEVICE_RESUME(root_bus); slp_state &= ~ACPI_SS_DEV_SUSPEND; } - if (stype != POWER_STYPE_SUSPEND_TO_IDLE && (slp_state & ACPI_SS_SLP_PREP) != 0) { + if ((slp_state & ACPI_SS_SLP_PREP) != 0) { AcpiLeaveSleepState(acpi_sstate); slp_state &= ~ACPI_SS_SLP_PREP; } From nobody Mon Jan 19 16:45:46 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dvxCt2QDkz6P38w for ; Mon, 19 Jan 2026 16:45:46 +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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dvxCt1P7Cz45PM for ; Mon, 19 Jan 2026 16:45:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768841146; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/Ce3k8V2nZpVytRQPg8JzyzF9TIvUYqEEwEjrRuid7A=; b=RfxmltWSHcQwnoG8e4qyescPdcaOwGkThgBNCPpiScsO/hMJr3TshIXQErOLDs03wrZ2hR GxD8V7RxGbBSadOJJCmEbet44PD4LFKaXmutpaQN0NpoLFq9ERhifYId6E9Fb1QtpCyWzc 4YOjl5RXiVaXPkSgr8OzMLR/887GjUPQgwkVrG2YLqXaCxgYlhZqPFQakEDjDsG7EGakla 2NYArUdUupXfOJc8S7HB6kwZO1aOzeNd9pB+t6ZkcLuM9V97ldaIWdQ3e57eSeM2P1da6R jSFtt0pAFhy0APq7KebPG61JL59TUB5cZfCz0Rbmn/dgufjur8CYo9C9hi4xyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768841146; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/Ce3k8V2nZpVytRQPg8JzyzF9TIvUYqEEwEjrRuid7A=; b=Cbe5va0XmIXaYR7+2FkfA1+aZIfnmOxbedgj3D3zTE0YN5pC13tcdU8zVxb8ngU4+HsBta jC1YC8KoK7YX/c/Y95VQ1NOgmzIwcKi2FQHrqgFbgVqgT7nGsaUmPzYA9X7bAcUt5tOG+H HBZi+57DhZqKORoLyTLk4QRpnuRxM3M0B18RPWdtxj+mc1eu1ITwBz+uTmU9oNvq1lORgG 8kpVKvYNbW3VnfVcRDl2ZmpsAjI4ixeoN1nYgPMiqOYldE6HfSloAX/3tZSBAjyX/YUB1C KcBMmUi3hkRm3SC8EOwcfUHhCseW3BZ5Md9RjUG3mLyjR0pKMq0+IUek/EjIMg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768841146; a=rsa-sha256; cv=none; b=n8PibcXjZFjk+dUA+Q1ufqJC4+0ngZF3TEZEpd9oiqmnRFuv1nvtMNzu5gGCd0JLzNKh3i Soz8weunqlDJoXf+CryVJcXGbSKHn7kjeal667GXXeHL4r65nU1Z2T9fy2TeP2CYi/IMGA gtnlukS68PpkHqfvp2nzuc7ERF976JjZYJGQHa8d3/JWkLqTDWKIA4OTVvnC1yrVsRN00Y 5U6MPB0ZCrnXsnNH+u7qog5Q0/as5OiNMfkNS5yqm4Inf4h6YESaocbsKU7N9o2newaWKr H9/Cx4/vWj7Dcc5KHS/0ieVXipg7SZo5e+aCkPlbR9HCK+kzJaSFQqkyA9/JhQ== 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 4dvxCt0sv3zgP9 for ; Mon, 19 Jan 2026 16:45:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3650e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 16:45:46 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 002c50ea23b9 - main - amd64/vmm: remove unused static function vcpu_state2str() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 002c50ea23b99b415b1b392d3dd5ea6223c3a74c Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 16:45:46 +0000 Message-Id: <696e5fba.3650e.2726d423@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=002c50ea23b99b415b1b392d3dd5ea6223c3a74c commit 002c50ea23b99b415b1b392d3dd5ea6223c3a74c Author: Konstantin Belousov AuthorDate: 2026-01-19 16:25:50 +0000 Commit: Konstantin Belousov CommitDate: 2026-01-19 16:45:40 +0000 amd64/vmm: remove unused static function vcpu_state2str() It is guarded by #ifdef KTR, so the warning does not show up under usual kernel configs. Fixes: ed85203fb7a0334041db6da07e45ddda4caef13d Sponsored by: The FreeBSD Foundation Differential revision: https://reviews.freebsd.org/D54781 --- sys/amd64/vmm/vmm.c | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/sys/amd64/vmm/vmm.c b/sys/amd64/vmm/vmm.c index 6312fafa2975..050cc93d2605 100644 --- a/sys/amd64/vmm/vmm.c +++ b/sys/amd64/vmm/vmm.c @@ -204,26 +204,6 @@ VMM_STAT(VMEXIT_USERSPACE, "number of vm exits handled in userspace"); VMM_STAT(VMEXIT_RENDEZVOUS, "number of times rendezvous pending at exit"); VMM_STAT(VMEXIT_EXCEPTION, "number of vm exits due to exceptions"); -#ifdef KTR -static const char * -vcpu_state2str(enum vcpu_state state) -{ - - switch (state) { - case VCPU_IDLE: - return ("idle"); - case VCPU_FROZEN: - return ("frozen"); - case VCPU_RUNNING: - return ("running"); - case VCPU_SLEEPING: - return ("sleeping"); - default: - return ("unknown"); - } -} -#endif - static void vcpu_cleanup(struct vcpu *vcpu, bool destroy) { From nobody Mon Jan 19 16:57:18 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dvxTB5NlPz6P45K for ; Mon, 19 Jan 2026 16:57: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dvxTB2lvkz46fw for ; Mon, 19 Jan 2026 16:57:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768841838; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=snZBkR2xRvYOGj+I+oOIAzC0e2EsMFBXvoE00t7SvbI=; b=nIWWfLDZn4gu7+MORiRhboJWQwf0vPh3zlYhojoDRgFS2ufLcLy01pC5ZyS8FgRerHTVwZ Lw5XKdeHUfcl9zy8gWCAjT5exyzWnnZmmU2PcVi44xvuoAf0j/kG9UpoO/8NGHMW6zhXgR X2RxPXmHpaihkBPjpsvQsuZKvZuTqnaHwuFAC9JyP1p8Ma9W7U7qpTT30L8M/3wbWoW9xT YdpbeOEe0WKn2wfFmRjt9E9AX5OdR0O73XIPFQqdFClddUgBDcyG6QOMRtkdfblqzbUIA3 KoIW2WWoXnuKSmlKvgft3O9Ew/aTqv7O5dynk+ALJ4aAVzlyg1JUy5ZWVGctwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768841838; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=snZBkR2xRvYOGj+I+oOIAzC0e2EsMFBXvoE00t7SvbI=; b=AmXc9gUUgO/lCD/FvQI5gfrKAZxkisELLvdIhCPk+fBTKGYsD8e+Q0JhJQUOIGtDvF0PDL JvvX9uSWSH02N5sMCojre1jwgWIK92C4fTXqM+foUfTa2dHoApm+NbYvKo0+MF4vTA90yC rDBf12wQS2Zj8PJOApfEd7MwNhipLPQkmOVrZwWNsavtS3aT7HoJ39wguPOVKMJJi5+END GBc7z+M84Lg01tI1ug1jjKv8zBvBiapClzQcGHTTYeKPJ8a6g3wHzzco4mZGItTH6BXMIY 9uRlkYAuIXBXuAbwATHNVUvee5/vSHjgvCw4Jej3/s4E5V7/dKCbeNss+A1VQA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768841838; a=rsa-sha256; cv=none; b=GrwdzGrOsSTM7Da/Jv3DcriXImrgbzqb3u8FudFH4dTfL27FAmu9wSJ8cfO+OZKdgVQK1r y4SzaWLMAGrPnwcPRt40NBhgoYlhqY67oeU8Jnuoba9LX6YcCTpsSgCmTDXzs0eAwv3cq3 cDFz0mw/oBU9Udt4r3qxgt2CSZ7TM8+H/OtUmSM65vd5IV5v9w8hSY7MkjxsKdeMmvOqTF 701kGdTZ8AgPFrh0/Bp7tvcPtqMSrfEAcS51yP+XbaBKUkf8whO/sNJf1WX3cceqcr1SG3 J6obgpEHOuFQoxMYddiTxTM/XokmL9NtjnNvne3sFqEkLwYCxvwqtGlKxA4UzQ== 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 4dvxTB2B5nzgwB for ; Mon, 19 Jan 2026 16:57:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 362dc by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 16:57:18 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 902e3057cd5c - main - lib/libthr: add pthread_tryjoin(3) test List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 902e3057cd5c7a076b78dd559b7b264610af59aa Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 16:57:18 +0000 Message-Id: <696e626e.362dc.783d32c2@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=902e3057cd5c7a076b78dd559b7b264610af59aa commit 902e3057cd5c7a076b78dd559b7b264610af59aa Author: Konstantin Belousov AuthorDate: 2026-01-18 12:47:40 +0000 Commit: Konstantin Belousov CommitDate: 2026-01-19 16:50:08 +0000 lib/libthr: add pthread_tryjoin(3) test Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54766 --- lib/libthr/tests/Makefile | 1 + lib/libthr/tests/pthread_tryjoin_test.c | 62 +++++++++++++++++++++++++++++++++ 2 files changed, 63 insertions(+) diff --git a/lib/libthr/tests/Makefile b/lib/libthr/tests/Makefile index 017b740157dc..5ffcd7b046c8 100644 --- a/lib/libthr/tests/Makefile +++ b/lib/libthr/tests/Makefile @@ -36,6 +36,7 @@ NETBSD_ATF_TESTS_SH+= resolv_test ATF_TESTS_C+= atfork_test ATF_TESTS_C+= umtx_op_test ATF_TESTS_C+= pthread_sigqueue_test +ATF_TESTS_C+= pthread_tryjoin_test LIBADD+= pthread LIBADD.fpu_test+= m diff --git a/lib/libthr/tests/pthread_tryjoin_test.c b/lib/libthr/tests/pthread_tryjoin_test.c new file mode 100644 index 000000000000..ba88ac2ed6f5 --- /dev/null +++ b/lib/libthr/tests/pthread_tryjoin_test.c @@ -0,0 +1,62 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright 2025 The FreeBSD Foundation + * + * This software was developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +static atomic_int finish; + +static void * +thr_fun(void *arg) +{ + while (atomic_load_explicit(&finish, memory_order_relaxed) != 1) + sleep(1); + atomic_store_explicit(&finish, 2, memory_order_relaxed); + return (arg); +} + +ATF_TC(pthread_tryjoin); +ATF_TC_HEAD(pthread_tryjoin, tc) +{ + atf_tc_set_md_var(tc, "descr", + "Checks pthread_tryjoin(3)"); +} + +ATF_TC_BODY(pthread_tryjoin, tc) +{ + pthread_t thr; + void *retval; + int error, x; + + error = pthread_create(&thr, NULL, thr_fun, &x); + ATF_REQUIRE_EQ(error, 0); + + error = pthread_tryjoin_np(thr, &retval); + ATF_REQUIRE_EQ(error, EBUSY); + + atomic_store_explicit(&finish, 1, memory_order_relaxed); + while (atomic_load_explicit(&finish, memory_order_relaxed) != 2) + sleep(1); + + error = pthread_tryjoin_np(thr, &retval); + ATF_REQUIRE_EQ(error, 0); + ATF_REQUIRE_EQ(retval, &x); +} + +ATF_TP_ADD_TCS(tp) +{ + ATF_TP_ADD_TC(tp, pthread_tryjoin); + return (atf_no_error()); +} From nobody Mon Jan 19 16:57:15 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dvxT74F0nz6P47t for ; Mon, 19 Jan 2026 16:57:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dvxT71mfkz46jJ for ; Mon, 19 Jan 2026 16:57:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768841835; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pmoorP8p5FI9m7UShxOnPPzN2te0VKb1uKSfPZJm0n0=; b=OAmxbwxbFtbwPN9/CU2LVpsefYMYyflvaSRAusfBxUFVdaH5mU/5ZxPN4EG475SoB0kdWK AiegYL1oFb+hfOwHAkYayl8LoTKEd8tjoxOND6QJiSux4JqEU7YO6NHGymxGu3dkT+uofD 8DzcEtMxD7SqiVDaHXw1VuX+C+Sf/J53I6wDXG6VeqjNfHk86qLKf4VPS/YCPjUe1fet0o jTfLSPRtqhn04nD1ua8qAZIvPKLNAprXHb0+wEpr0OI2yhJqKVA2ju8g2WNui4+5ZrAd3a 3KDFDG1z+o5yYnwmU0+I8eYafhnoyv0oALpx8OyTPL7lXQBwOjStY3NhQhNOog== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768841835; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pmoorP8p5FI9m7UShxOnPPzN2te0VKb1uKSfPZJm0n0=; b=r7Ze7kyPHYiuWQ34IrUjFuK5OS6SdHgCyNe3YV1f169WvKJSikhuQNs30/U1F8mMKXOB3P ry0RInCiPUN3x6Zz2rwY0yP3W4bShXfWiNSKbD7+puKxArKt7SXPCb3LgiKLsna2dptsNy JdS/VPPlQJSpSP5VmSWNZYyQCmCFwmAnddVTWlJLHXhCJTNp6OZcSQ6lhdxiqJQ4Pn9Q0I nQgQb5xPa28CJBPhkTKcVZI+I7x/Xd/yFnQgHhBBaDG1VodzvmJAEqxtSeNBZEWIKsjm8n bPHdmFpjp0ZAKBGaTSQ83cYn5pfajrf8Vmeycs6hWmy7GnxxulTdPg4l+QE/pg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768841835; a=rsa-sha256; cv=none; b=bcnwFSLFsbgIjJCTbf1JR9dDJd0suqoqmwqy62hdE5zPOyLR8IfORihLvf4ZHwR3N/CdM3 IhAOT4EL5PrI9TlNE54QDRX0yNbN0fFSah9mTpxbusVI9cLxOgsAObfUvO7GXDI/KdRky/ KmdAuab8yQWm3xZexuPtxpMIhN2SYT2etnIX+BjEeEuf+IuiEmj1CNE1DLLEA2XvBwJEVg SPIjt9pkUWtX0dUf/pOUavverQBMgwPc3i4lEUToz2zqutQK7gU7zjYTD3+VXU5t7ljHgT bOPB8ehL5hQLHh8CZjX5zGUgUw+NJKRWmLQB4FSkaAZ/qaE5iCbyuMcGlXqlFw== 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 4dvxT70n2zzgw8 for ; Mon, 19 Jan 2026 16:57:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 36d12 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 16:57:15 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: ce16be73707e - main - libthr/thread/thr_join.c: deduplicate backout_join() helper List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: ce16be73707eedc798b26e0741dcd70d1168ac10 Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 16:57:15 +0000 Message-Id: <696e626b.36d12.5457e375@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=ce16be73707eedc798b26e0741dcd70d1168ac10 commit ce16be73707eedc798b26e0741dcd70d1168ac10 Author: Konstantin Belousov AuthorDate: 2026-01-18 12:23:14 +0000 Commit: Konstantin Belousov CommitDate: 2026-01-19 16:49:51 +0000 libthr/thread/thr_join.c: deduplicate backout_join() helper Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54766 --- lib/libthr/thread/thr_join.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/lib/libthr/thread/thr_join.c b/lib/libthr/thread/thr_join.c index 53f28daa258d..56b316ec0f51 100644 --- a/lib/libthr/thread/thr_join.c +++ b/lib/libthr/thread/thr_join.c @@ -43,16 +43,23 @@ __weak_reference(_thr_join, _pthread_join); __weak_reference(_pthread_timedjoin_np, pthread_timedjoin_np); __weak_reference(_pthread_peekjoin_np, pthread_peekjoin_np); -static void backout_join(void *arg) +static void +backout_join(struct pthread *pthread, struct pthread *curthread) { - struct pthread *pthread = (struct pthread *)arg; - struct pthread *curthread = _get_curthread(); - THR_THREAD_LOCK(curthread, pthread); pthread->joiner = NULL; THR_THREAD_UNLOCK(curthread, pthread); } +static void +backout_join_pop(void *arg) +{ + struct pthread *pthread = (struct pthread *)arg; + struct pthread *curthread = _get_curthread(); + + backout_join(pthread, curthread); +} + int _thr_join(pthread_t pthread, void **thread_return) { @@ -149,10 +156,8 @@ join_common(pthread_t pthread, void **thread_return, _thr_cancel_leave(curthread, 0); THR_CLEANUP_POP(curthread, 0); - if (ret == ETIMEDOUT) { - THR_THREAD_LOCK(curthread, pthread); - pthread->joiner = NULL; - THR_THREAD_UNLOCK(curthread, pthread); + if (ret == ETIMEDOUT || ret == EBUSY) { + backout_join(pthread, curthread); } else { ret = 0; tmp = pthread->ret; From nobody Mon Jan 19 16:57:16 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dvxT84GBCz6P45G for ; Mon, 19 Jan 2026 16:57: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dvxT81Gw9z46G3 for ; Mon, 19 Jan 2026 16:57:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768841836; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VcbF4YTfNuQcQYiNCgOTKQ+acK3AkCka5BixFE9rGbE=; b=F2gf4Rl9JqpuDnRg66ooYo4QRJYNxYEjlrCYqrH6jhBzkBYpdDTG7Nx8/gTsCAmvBuFyCz kdtr6PFMGc+kJO8zGWceIACGa/dInuAma7Zc4oCt4pRqJgKGF5BvXbkxcKmd/XPkmhO1KB fMIhzONw+S9estcF70JZZO+Kf1OnYKW4eX6Yqd2l2He2RTFFRS48u2s78zcon8YjjFkj19 +ojF0TW0JvlDi5d6V+9Yrd9d6zgZchRrXARw/gRlealYCrtriIvaxJ38yjYH1zVL6bciw/ h9eBx/Fwe5p50vjhO6u1v/VonTm/YAU9CvJkhc9L8XJpazNuToD2AwUSGDqVvw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768841836; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VcbF4YTfNuQcQYiNCgOTKQ+acK3AkCka5BixFE9rGbE=; b=GXNisrn96PsvdJZHaEHrFwZ4U96uImXnbrSSvXh2ipxfa8aFibu4pcfjrMVWadtAFcRv7z iKHO9t3DHCmtF2i3RmNjRRroaSzehG6OhBmf//P3IT/wOoHSQi1qlqKr3a4ixPIqEUIDP/ WqAWbCMHJajleUR2ggPWxAR2ERYccDnq0kOQE47iCYF5Qfao+Ufx65oG9PcXzqBs1/4aFw dtO3fHPIwicFUqXe6lbPYm3XfcCmJ9kmsdjySn0FdRI92Sh74i3Qx7ZQBrSOhuD6U0S6+n SZYb0UGzBaEVBT/S2ABG8uQnEBoE3UHeaAL8muM5JRnl7a8EpQtaPzLQqYVYPA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768841836; a=rsa-sha256; cv=none; b=IbAOGCffOMHSNQUMyyT14dEcwVUh4eCquvd4Wn9kaSP1ZOQFOWfLQOMvYuPfwDN06VMU4E uPj6fWkL+V/TriDHUkwv60b1DF1daP307/N6Ckzugr3TJil5NoF3WJZz7BldUXmuqKErq2 pc/bZL7F5cteSSu7VippeIF1PM+pyGAs6IgktSiyO3qM0R+fQvgJuNvX3dsZ4q1UlsogX2 4f8aoWZ9SRpOcMHFmsgS460QFrJVjeSwoZqBYbJmAjkV6l92I973cIpS3ze/Mp0564m1/U 7AkRVs2xlFxEEl2wKNA1JoqHQKOLaWmSKG+V0FSNwC/+Ul5O8ueqvBWgkNFXJw== 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 4dvxT80rPSzh4S for ; Mon, 19 Jan 2026 16:57:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 36aed by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 16:57:16 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: afa70a8496e9 - main - libthr: add pthread_tryjoin_np() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: afa70a8496e90fa751418be8d1b55e3d559a281a Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 16:57:16 +0000 Message-Id: <696e626c.36aed.44afc106@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=afa70a8496e90fa751418be8d1b55e3d559a281a commit afa70a8496e90fa751418be8d1b55e3d559a281a Author: Konstantin Belousov AuthorDate: 2026-01-18 12:26:46 +0000 Commit: Konstantin Belousov CommitDate: 2026-01-19 16:49:57 +0000 libthr: add pthread_tryjoin_np() Similar to the same glibc function. Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54766 --- include/pthread_np.h | 1 + lib/libthr/pthread.map | 4 ++++ lib/libthr/thread/thr_join.c | 55 +++++++++++++++++++++++++++++++++----------- 3 files changed, 46 insertions(+), 14 deletions(-) diff --git a/include/pthread_np.h b/include/pthread_np.h index a9e738540db4..04c64a748b72 100644 --- a/include/pthread_np.h +++ b/include/pthread_np.h @@ -65,6 +65,7 @@ int pthread_single_np(void); void pthread_suspend_all_np(void); int pthread_suspend_np(pthread_t); int pthread_timedjoin_np(pthread_t, void **, const struct timespec *); +int pthread_tryjoin_np(pthread_t, void **); __END_DECLS #endif diff --git a/lib/libthr/pthread.map b/lib/libthr/pthread.map index 3a5353a32dc3..ad0c28de98c1 100644 --- a/lib/libthr/pthread.map +++ b/lib/libthr/pthread.map @@ -342,3 +342,7 @@ FBSD_1.8 { pthread_signals_unblock_np; pthread_sigqueue; }; + +FBSD_1.9 { + pthread_tryjoin_np; +}; diff --git a/lib/libthr/thread/thr_join.c b/lib/libthr/thread/thr_join.c index 56b316ec0f51..33eb18638169 100644 --- a/lib/libthr/thread/thr_join.c +++ b/lib/libthr/thread/thr_join.c @@ -34,14 +34,17 @@ #include "thr_private.h" int _pthread_peekjoin_np(pthread_t pthread, void **thread_return); +int _pthread_tryjoin_np(pthread_t pthread, void **thread_return); int _pthread_timedjoin_np(pthread_t pthread, void **thread_return, const struct timespec *abstime); -static int join_common(pthread_t, void **, const struct timespec *, bool peek); +static int join_common(pthread_t, void **, const struct timespec *, bool peek, + bool try); __weak_reference(_thr_join, pthread_join); __weak_reference(_thr_join, _pthread_join); __weak_reference(_pthread_timedjoin_np, pthread_timedjoin_np); __weak_reference(_pthread_peekjoin_np, pthread_peekjoin_np); +__weak_reference(_pthread_tryjoin_np, pthread_tryjoin_np); static void backout_join(struct pthread *pthread, struct pthread *curthread) @@ -63,7 +66,7 @@ backout_join_pop(void *arg) int _thr_join(pthread_t pthread, void **thread_return) { - return (join_common(pthread, thread_return, NULL, false)); + return (join_common(pthread, thread_return, NULL, false, false)); } int @@ -74,13 +77,34 @@ _pthread_timedjoin_np(pthread_t pthread, void **thread_return, abstime->tv_nsec >= 1000000000) return (EINVAL); - return (join_common(pthread, thread_return, abstime, false)); + return (join_common(pthread, thread_return, abstime, false, false)); } int _pthread_peekjoin_np(pthread_t pthread, void **thread_return) { - return (join_common(pthread, thread_return, NULL, true)); + return (join_common(pthread, thread_return, NULL, true, false)); +} + +int +_pthread_tryjoin_np(pthread_t pthread, void **thread_return) +{ + return (join_common(pthread, thread_return, NULL, false, true)); +} + +static void +join_common_joined(struct pthread *pthread, struct pthread *curthread, + void **thread_return) +{ + void *tmp; + + tmp = pthread->ret; + pthread->flags |= THR_FLAGS_DETACHED; + pthread->joiner = NULL; + _thr_try_gc(curthread, pthread); /* thread lock released */ + + if (thread_return != NULL) + *thread_return = tmp; } /* @@ -89,11 +113,10 @@ _pthread_peekjoin_np(pthread_t pthread, void **thread_return) */ static int join_common(pthread_t pthread, void **thread_return, - const struct timespec *abstime, bool peek) + const struct timespec *abstime, bool peek, bool try) { struct pthread *curthread = _get_curthread(); struct timespec ts, ts2, *tsp; - void *tmp; long tid; int ret; @@ -127,12 +150,22 @@ join_common(pthread_t pthread, void **thread_return, return (ret); } + /* Only try to join. */ + if (try) { + if (pthread->tid != TID_TERMINATED) { + THR_THREAD_UNLOCK(curthread, pthread); + return (EBUSY); + } + join_common_joined(pthread, curthread, thread_return); + return (0); + } + /* Set the running thread to be the joiner: */ pthread->joiner = curthread; THR_THREAD_UNLOCK(curthread, pthread); - THR_CLEANUP_PUSH(curthread, backout_join, pthread); + THR_CLEANUP_PUSH(curthread, backout_join_pop, pthread); _thr_cancel_enter(curthread); tid = pthread->tid; @@ -160,14 +193,8 @@ join_common(pthread_t pthread, void **thread_return, backout_join(pthread, curthread); } else { ret = 0; - tmp = pthread->ret; THR_THREAD_LOCK(curthread, pthread); - pthread->flags |= THR_FLAGS_DETACHED; - pthread->joiner = NULL; - _thr_try_gc(curthread, pthread); /* thread lock released */ - - if (thread_return != NULL) - *thread_return = tmp; + join_common_joined(pthread, curthread, thread_return); } return (ret); } From nobody Mon Jan 19 16:57:17 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dvxT93Cwxz6P484 for ; Mon, 19 Jan 2026 16:57: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dvxT91ylnz46Lb for ; Mon, 19 Jan 2026 16:57:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768841837; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WGg8lC+UGkpIi3+2n3/Zs38TTGDT3GXyAdZsNzI+I5c=; b=oJvuZ2skCIXwj186z/mlGanCStZfbRlvta7SLOezyM/AUeHTS59cBReJaZxpHsJfKfaiQ4 jFrXuetEidi6KLMHdecx6sDQ0IyGlwhGkCQRN71M6Lxo8eii1jImw3ymsLlXapMetWzCPN a4xAU3BNMP6pu6l51uHJNfxReqnbgfU/QRU4SDhCrBok60VGhF8H8f8E+Pwf/fNHQ0euEL d4H7tt9YljT4v20De5ir6d1MAGM98xY2mzg6kH+Fz3TUpcc7QnkOG3rnkN7rjWLs0WrsXB /NTc9YLMOZDd6R9UXGFbW+Strg9oAcYdPwKk0kAn/uxrqslFnI5MowsUFNqovA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768841837; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WGg8lC+UGkpIi3+2n3/Zs38TTGDT3GXyAdZsNzI+I5c=; b=oPDfN7OQgRmn0Z9DuAZ4mfRZPqloDcMgbkas7R0cnMM9o1VeU2B/P7ILHaQESehVqNr5jI QOCaWRCq7mVaIJV3xTqhP4Lb8GNwhYUWvRD2YRgiYHC0zAnsu0n+/qy6nEuzHdwrEJfNGs SnRjHz7dGykGeNc9w6VCDjN/+oy/HrXfDuPF+Alz0MovKYG21PP/W5lQmaXsM+eJeT9WuC MU/vAsXhg36OJZGdeWzOTKcTRbcWDttT4lYWF3fZcC2GRqDrU0WZSlT3w3ZsdfTTpIqReJ c52lT0a0jdNWVkuqU04jLLiuSkbxfGx1e/QcSqo2AoaiqZA0j2cJEY/yhs0gVA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768841837; a=rsa-sha256; cv=none; b=fZ+h09qsy/bEwxlOIBhVQ4hZZ0NCEKiWWQZFvJ2uIHH90ZK7ENoIwVi43UsmZUBkBHJ+Gj /CMbxolwICg0BwToVQqnsOS+3kh/eYzV/QSKlr1N4I5lCwQyjKm7CVPlKkyHETwm2f5O+Y uL74Lf51332oRYV6BroiK6a00OcMWWnnlSaLwDlA6jWvJxMvm2M4rI0AmiddVARk0kWVti FjkowWHJNNvwm6eG75dvA11pElroy7wYwa/PmJdvgr/AuSlY88gHKh3j6n+wZBxebjf953 KjAxFeNkPqt8kSgjGNRQ044ZT/yxfT2xefEC4rcc2tyHZwHCXir1/SpI0BZpEA== 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 4dvxT91VqlzgVj for ; Mon, 19 Jan 2026 16:57:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 36d97 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 16:57:17 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 7f026a58691d - main - Document pthread_tryjoin_np(3) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 7f026a58691db1763203ab8c7c8f34f738bfd9d5 Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 16:57:17 +0000 Message-Id: <696e626d.36d97.214fb984@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=7f026a58691db1763203ab8c7c8f34f738bfd9d5 commit 7f026a58691db1763203ab8c7c8f34f738bfd9d5 Author: Konstantin Belousov AuthorDate: 2026-01-18 12:53:12 +0000 Commit: Konstantin Belousov CommitDate: 2026-01-19 16:50:02 +0000 Document pthread_tryjoin_np(3) Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54766 --- share/man/man3/Makefile | 3 ++- share/man/man3/pthread_join.3 | 26 +++++++++++++++++++++++--- 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/share/man/man3/Makefile b/share/man/man3/Makefile index 8e4aadc460a6..cae79b8f8182 100644 --- a/share/man/man3/Makefile +++ b/share/man/man3/Makefile @@ -540,6 +540,7 @@ PTHREAD_MLINKS+=pthread_spin_init.3 pthread_spin_destroy.3 \ PTHREAD_MLINKS+=pthread_testcancel.3 pthread_setcancelstate.3 \ pthread_testcancel.3 pthread_setcanceltype.3 PTHREAD_MLINKS+=pthread_join.3 pthread_peekjoin_np.3 \ - pthread_join.3 pthread_timedjoin_np.3 + pthread_join.3 pthread_timedjoin_np.3 \ + pthread_join.3 pthread_tryjoin_np.3 .include diff --git a/share/man/man3/pthread_join.3 b/share/man/man3/pthread_join.3 index 716b171e1295..671ce7bb445c 100644 --- a/share/man/man3/pthread_join.3 +++ b/share/man/man3/pthread_join.3 @@ -35,6 +35,7 @@ .Nm pthread_join , .Nm pthread_peekjoin_np , .Nm pthread_timedjoin_np +.Nm pthread_tryjoin_np .Nd inspect thread termination state .Sh LIBRARY .Lb libpthread @@ -54,6 +55,8 @@ .Fa "void **value_ptr" .Fa "const struct timespec *abstime" .Fc +.Ft int +.Fn pthread_tryjoin_np "pthread_t thread" "void **value_ptr" .Sh DESCRIPTION The .Fn pthread_join @@ -104,6 +107,13 @@ the .Fn pthread_join family of functions again. .Pp +The +.Fn pthread_tryjoin_np +function joins the thread if it is already terminated, same as +.Fn pthread_join . +If the thread has not yet terminated, the function returns +.Er EBUSY . +.Pp A thread that has exited but remains unjoined counts against [_POSIX_THREAD_THREADS_MAX]. .Sh RETURN VALUES @@ -147,7 +157,9 @@ waited for thread exit. .Pp The .Fn pthread_peekjoin_np -function will also fail if: +and +.Fn pthread_tryjoin_np +functions will also fail if: .Bl -tag -width Er .It Bq Er EBUSY The specified thread has not yet exited. @@ -168,7 +180,15 @@ function is a .Fx extension which first appeared in .Fx 6.1 . -Another extension, the +The .Fn pthread_peekjoin_np -function, first appearead in +function is a +.Fx +extension which first appearead in .Fx 13.0 . +The +.Fn pthread_tryjoin_np +function is a +.Fx +extension which first appearead in +.Fx 16.0 . From nobody Mon Jan 19 18:19:25 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dvzHx6VGXz6P9V8 for ; Mon, 19 Jan 2026 18:19: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dvzHx4wcwz3SK7 for ; Mon, 19 Jan 2026 18:19:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768846765; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kdna1fjb2jgazFnnZZdpOV+9X3HUuwO1YLPRh1ogvMk=; b=Gd0E6HerzZa310Lux/RlcVlDhkPevoS3fot6mEGn+M7PlBTAsOawOb94hE6w5u970hX2or evd8Kg/FlT5Hqhg9SvOjIqjqZIwi7JujsNZBZUC/EjfoRFvI8Nu4egzSo2bE5n+u6gunP6 0KW4jPzIek4L5JRaqTUvnCvYIlA7EfyRi680Z9a9xvOHHmJMkZwZul4mcJn6gzYyHXccyw 1EXqszgT2vPYHm/vjnOZJTMCf8PD04AcqkPp7lWrOOZcxILviuS6UTKAbmK/ujTSn6pOm6 eHNsyhc1ekwVplQoD0+LIwwry57XeNma69jNhRHTxX5oOVYucI473jKJnlmaeQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768846765; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kdna1fjb2jgazFnnZZdpOV+9X3HUuwO1YLPRh1ogvMk=; b=YpoyfIC+ctQ7mUzGDPAp1W3iyBfH3PBEG/8gpPnFZKgDaFI6TJ37N7eWY6dySh17vSUCvh sTywgAflpG98x7JaDHsqPKr6LmATvN550DZyqzmREiRA0sR3s5MFwNiYbEtRY5SclDqpQQ vTU/s5Z9WWoUN03ezkLmpo0hC2kiEdPcFFAVk3/iBgMuSH6fTCzTye44jrluxTXe9uYQ6f NZHbfih2BAuH5anY+2StNjP8+z92CVrHQTkwDTVhs9e/t1UhL+QqA/45DS+bjbg0/CIvf+ TltK4W0BgQTs7sBHkZVQ7cmKcPM4t0sdu3KUZlZ6sICchqMsOeCxMVaHgAgFiw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768846765; a=rsa-sha256; cv=none; b=hDLpTGOBp1eXJzYVw3xCBtRIYBwXIa1dsR355CmA8Ljj2hfrs89/HxUivyrjiH58Ux/gNr AMu+dmhTj5aFRcQjfTYHK6TWALHOF127iK94pECf+12wQTDdHFWC6H21RizvHHov9oALBq hEA8jMrN3aXMA5omjaA0umY8a0lSZAMhV/k4Qt6xE9GFmkGzHIF3tnTZA12/ICmxi4VNF2 O/kqKIlNgsgdaLKUkcGzzA7LR3FT9YfIfABj9cy+ddjPiAYi/oGjPKv9d6v52/jrP0p1pm epCBLMP2Bo1E5mw3Mw2vY9Y41AHwRJ/fVj/TWeMnuyINDjbDIoeWmRrHPUc24w== 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 4dvzHx40Kxzjwg for ; Mon, 19 Jan 2026 18:19:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3ed98 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 18:19:25 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mitchell Horne Subject: git: c0898bdc8661 - main - usbhidctl.1: adjust option list indent List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: c0898bdc8661842c51fecfe467a1c921a2d81774 Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 18:19:25 +0000 Message-Id: <696e75ad.3ed98.7065b831@gitrepo.freebsd.org> The branch main has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=c0898bdc8661842c51fecfe467a1c921a2d81774 commit c0898bdc8661842c51fecfe467a1c921a2d81774 Author: Mitchell Horne AuthorDate: 2026-01-19 18:18:01 +0000 Commit: Mitchell Horne CommitDate: 2026-01-19 18:19:01 +0000 usbhidctl.1: adjust option list indent For improved legibility. --- usr.bin/usbhidctl/usbhidctl.1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/usbhidctl/usbhidctl.1 b/usr.bin/usbhidctl/usbhidctl.1 index d1cbe67ba85c..d8722bccb45e 100644 --- a/usr.bin/usbhidctl/usbhidctl.1 +++ b/usr.bin/usbhidctl/usbhidctl.1 @@ -79,7 +79,7 @@ flag is specified attempts to set the specified items to the given values. .Pp The options are as follows: -.Bl -tag -width Ds +.Bl -tag -width "-f device" .It Fl a Show all items and their current values if device returns. .It Fl f Ar device From nobody Mon Jan 19 19:41:12 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dw16Z2y10z6PGT4 for ; Mon, 19 Jan 2026 19:41:26 +0000 (UTC) (envelope-from jlduran@gmail.com) Received: from mail-qk1-f170.google.com (mail-qk1-f170.google.com [209.85.222.170]) (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 4dw16X5db8z3d7v for ; Mon, 19 Jan 2026 19:41:24 +0000 (UTC) (envelope-from jlduran@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 jlduran@gmail.com designates 209.85.222.170 as permitted sender) smtp.mailfrom=jlduran@gmail.com Received: by mail-qk1-f170.google.com with SMTP id af79cd13be357-8c52c63fc1cso41302585a.2 for ; Mon, 19 Jan 2026 11:41:24 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768851684; x=1769456484; h=content-transfer-encoding:cc:to:subject:message-id:date:from :reply-to:in-reply-to:references:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=is84He/YYjmJHn6XWSRgi7K1lplKg9kZbS4R9YZWrEI=; b=vtW3oOUOTEfohX0m7AiGX9xDjk+AGCp5yCGdtWlp5hHLhyPiSpSUtNlTnqXt4JKqLN x3iojcoP3o2799tN2/cEi4k4B8/9Jb5snwYqeUrzUeYdvs64SFnTwx/g/gTTk9RbrX7e DuJAPZscAI8bl00WoitQaXRvTUKDCbnF7hZbo/Ci+sX+3VOiWEJYZJsxFHCyuIU56yRc ULrUI08fz2dvq7crWgVaJWkErcJ9qGrhtDAV0TKQbiIyhOCOxbUhjMnuhkFMmVwD/EZm OTZ16yWRvcknzvHl1CgZckzCWFqrvrA510SoCcgFZGfPY864RHm5B7viprSpJlx38Aut KDaQ== X-Forwarded-Encrypted: i=1; AJvYcCXfAblB4DJjU0as9lqLYSFsjRxgH42QSs69me1OLj8tBr14jHyYRSFSew6y0bRJ5y7DLo34nog7aGvqljrveG/muHXEsw==@freebsd.org X-Gm-Message-State: AOJu0YyXoLBffXN+6o5JZhvhL0LF8G4RxxNGERNwnVz3zosILwIUS1nM RtKcRIqKuuv+Q7ooTNhpS6EW41JGL+olSI2ivSwTv/Yy2bp3b841YYlSevRINvpv X-Gm-Gg: AZuq6aLcEqwOu4hkjv++i0m8Sq3Fv0tkZKaVwY5aw/7mBtgx/44hLqADi9UsudNusEC jv83Hzr2DI2u8257SqDa8MHx7PKtuG0qBbwcKkRVylxhsiI6/JRpQYli6FMD8CxvubafM8d159M oZgu0poTosjS/EXXoRy/m0zw/uBPiT65XK+By/yHQXVhBl1m0ucZ73GW3PU6XibDjck6l4Au21h pjMd75NiKUtSa8sFkAh359h92GhFo3+jTsb8CPUwKyv/bYxfLnv8NhNe20YW+NtxZ3B4x9AF7Kq rqjMnTYvRmIPbgbWIhf8lOJwya6p1FyrQEP2m/iGxj4YwyFOcnSOlKSeuBKMKt2HSDV2ZpC8Uon O+LWAWZpyn4RCqH+EQuPdDHlnl16Q+gPFblLxHdWgEo/En9dxtq1Jz6CSu6/kyzADd1c5Umc1wx EDF7pFkGO0A4nzX6K7/BHwJNOO/Nr81IHQ6T9CxctGTO8YuxAcjf8= X-Received: by 2002:a05:6214:4f17:b0:795:c55c:87de with SMTP id 6a1803df08f44-8942dd9e322mr123336746d6.5.1768851683567; Mon, 19 Jan 2026 11:41:23 -0800 (PST) Received: from mail-qt1-f178.google.com (mail-qt1-f178.google.com. [209.85.160.178]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-8942e60483dsm93666806d6.19.2026.01.19.11.41.23 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 19 Jan 2026 11:41:23 -0800 (PST) Received: by mail-qt1-f178.google.com with SMTP id d75a77b69052e-50144113401so8072961cf.2 for ; Mon, 19 Jan 2026 11:41:23 -0800 (PST) X-Forwarded-Encrypted: i=1; AJvYcCUksQKkDZBtXZqGe4k4rAeN9UO4u9IdyxHp1hvMdzPbztk1Sufa9gUh2juJt0c/emO9J+27uqrFOO34TdBwQHbqXt2LtQ==@freebsd.org X-Received: by 2002:ac8:7fc8:0:b0:501:4ba0:e06a with SMTP id d75a77b69052e-502a165ca89mr141668301cf.8.1768851682921; Mon, 19 Jan 2026 11:41:22 -0800 (PST) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <6969853a.3b3a2.692d2f0d@gitrepo.freebsd.org> In-Reply-To: <6969853a.3b3a2.692d2f0d@gitrepo.freebsd.org> Reply-To: jlduran@freebsd.org From: Jose Luis Duran Date: Mon, 19 Jan 2026 16:41:12 -0300 X-Gmail-Original-Message-ID: X-Gm-Features: AZwV_QgPuPGuZcz_OjnqS2SsIUftlHVnqKryZTva68Mb8xMSddVg9DgDYzQcGWo Message-ID: Subject: Re: git: db3b39f063d9 - main - libjail: extend struct handlers to included MAC labels To: Kyle Evans Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spamd-Bar: - X-Spamd-Result: default: False [-1.91 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-0.56)[-0.558]; NEURAL_HAM_SHORT(-0.46)[-0.455]; FORGED_SENDER(0.30)[jlduran@freebsd.org,jlduran@gmail.com]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; DMARC_POLICY_SOFTFAIL(0.10)[freebsd.org : SPF not aligned (relaxed), No valid DKIM,none]; MIME_GOOD(-0.10)[text/plain]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; RCVD_TLS_LAST(0.00)[]; REPLYTO_DOM_EQ_TO_DOM(0.00)[]; RCVD_COUNT_THREE(0.00)[3]; MIME_TRACE(0.00)[0:+]; ARC_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; TO_DN_SOME(0.00)[]; MISSING_XM_UA(0.00)[]; FREEFALL_USER(0.00)[jlduran]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; TO_MATCH_ENVRCPT_SOME(0.00)[]; REPLYTO_ADDR_EQ_FROM(0.00)[]; FROM_NEQ_ENVFROM(0.00)[jlduran@freebsd.org,jlduran@gmail.com]; RCVD_IN_DNSWL_NONE(0.00)[209.85.222.170:from,209.85.160.178:received]; PREVIOUSLY_DELIVERED(0.00)[dev-commits-src-main@freebsd.org]; R_DKIM_NA(0.00)[]; MLMMJ_DEST(0.00)[dev-commits-src-main@freebsd.org]; RCVD_VIA_SMTP_AUTH(0.00)[]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.85.222.170:from]; HAS_REPLYTO(0.00)[jlduran@freebsd.org] X-Rspamd-Queue-Id: 4dw16X5db8z3d7v On Thu, Jan 15, 2026 at 9:25=E2=80=AFPM Kyle Evans wro= te: > > The branch main has been updated by kevans: > > URL: https://cgit.FreeBSD.org/src/commit/?id=3Ddb3b39f063d9f05ee808b9c5a1= 1146ed6810d857 > > commit db3b39f063d9f05ee808b9c5a11146ed6810d857 > Author: Kyle Evans > AuthorDate: 2025-11-27 05:24:14 +0000 > Commit: Kyle Evans > CommitDate: 2026-01-16 00:23:40 +0000 > > libjail: extend struct handlers to included MAC labels > > MAC label handling is a little special; to avoid being too disruptive= , > we allocate a `mac_t *` here for the value so that we can mac_prepare= () > or mac_from_text() into. As a result, we need: > > - A custom free() handler to avoid leaking the *jp_value > - A custom jailparam_get() handler to mac_prepare() the mac_t and > populate the iove properly, so that the kernel doesn't have to > do something funky like copyin, dereference, copyin again. > - A custom jailparam_set() handler to similarly populate the iovec > properly. > > Reviewed by: jamie > Differential Revision: https://reviews.freebsd.org/D53960 Hi Kyle! After this commit, the following tests are failing: - https://ci.freebsd.org/view/Test/job/FreeBSD-main-amd64-test/27642/testRe= port/junit/bin.pkill/pgrep-j_test/main/ - https://ci.freebsd.org/view/Test/job/FreeBSD-main-amd64-test/27642/testRe= port/junit/bin.pkill/pkill-j_test/main/ Seems like "jls -s" is not working. --=20 Jose Luis Duran From nobody Mon Jan 19 20:09:32 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dw1l26NQ0z6PHgZ; Mon, 19 Jan 2026 20:09:34 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dw1l25XJtz3hkq; Mon, 19 Jan 2026 20:09:34 +0000 (UTC) (envelope-from kevans@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768853374; 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=BRR3vl4lyIOG+qnGztpn6W7gwvg0dCq8q4Iqec4BJ1E=; b=ouFmsb2kqWMXttiPdPpDqmvrX4VL2dYIEaYbXCCLS7Tlar8yiSEmENUVximtKgVekVJP0S YptytUxTp46/WQNgWeLiwoadY3Fo09C0bQaP5Lo304E5THFhMUmAA8ONmX4L03ll9sT9wv OPu9He/JtQ7TDR/qjVflfMlBmgq94RRDnesQ8hJiKEZokGMet5kJ9uUIHFTbYtQuTa49Pf IlkuBJc7Xpcdvj/6ahc9LGioD9RKtSaTtEbM4vFsaCwpm+R5p/KCALr81+Qu/fQ1hN1GxT Eu/eHIyEGrOwrg+zKoasdWc0xUcUNrvuQIO8YaS3nwdrRrdAwghyC/g6xJxIqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768853374; 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=BRR3vl4lyIOG+qnGztpn6W7gwvg0dCq8q4Iqec4BJ1E=; b=h7ccwnA89Du406N7Rwis/LOaJfoBIr2j1H2xt2Pr37vp3pyAjgLoFUSPoEnPcTwujNcTbx 8cyvOsIepih0IdM/ZpuW+JBQyARV1FghU6++AeTz35hqWrTUrrkDyp7yFAfkKYywmvuYRY 4Jur4XkM1/RahWkcRZ8pPraXSBr7Xv+m5Y3kgmoEvVt/fm1i8VmbM+h4DYPQ/sC+Mf/asr DCA0Wbg4rVjzvMUKUJ246JF1Pa/tL+u/mYUBca/y++mS3wokUtsRM3pVNzan9tRv62cQBi 815jKQBgVPW7oLPuVSCYmhAOJpiQWDsZWjUuFxJpdjCtQWzU8lhuGvH70jy4rA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768853374; a=rsa-sha256; cv=none; b=bx30sUbZzAQMdx5cyn0ur4nVy/xWlAcGlagWgfd3Coo21eu/cLFvn7wy0gps5DYjE5dHyj i/8jTCRHBgrggyE3rcDzalCs2sqeClpFuOPu7eUPb4dNK02bl6hZ/dk4ZBYMuxagTf0ILm A4fa9yrD8In6mxzX4ymNNjfgKLQXnsbNZpzeicuzq27kcf4CA9O3ENghFn8idpwnlmus5u MCgFybqL3Gd8GWSHewYOXew7bf0i80Bx174TfAHNDEfRNPEdxhgYB5VwLcQRAamgn3yEoi OYqvmDrSqqqGnKoHj8XpyzLUN4x5r2xy0Kd93A5B+mB3tmlAf1ZlTSdzGmGMpw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from [10.9.4.95] (unknown [209.182.120.176]) (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: kevans/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4dw1l20c6GzGrj; Mon, 19 Jan 2026 20:09:34 +0000 (UTC) (envelope-from kevans@FreeBSD.org) Message-ID: <43240081-b17d-46a8-acad-99843fd43a51@FreeBSD.org> Date: Mon, 19 Jan 2026 14:09:32 -0600 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: db3b39f063d9 - main - libjail: extend struct handlers to included MAC labels To: jlduran@freebsd.org Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org References: <6969853a.3b3a2.692d2f0d@gitrepo.freebsd.org> Content-Language: en-US From: Kyle Evans In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 1/19/26 13:41, Jose Luis Duran wrote: > On Thu, Jan 15, 2026 at 9:25 PM Kyle Evans wrote: >> >> The branch main has been updated by kevans: >> >> URL: https://cgit.FreeBSD.org/src/commit/?id=db3b39f063d9f05ee808b9c5a11146ed6810d857 >> >> commit db3b39f063d9f05ee808b9c5a11146ed6810d857 >> Author: Kyle Evans >> AuthorDate: 2025-11-27 05:24:14 +0000 >> Commit: Kyle Evans >> CommitDate: 2026-01-16 00:23:40 +0000 >> >> libjail: extend struct handlers to included MAC labels >> >> MAC label handling is a little special; to avoid being too disruptive, >> we allocate a `mac_t *` here for the value so that we can mac_prepare() >> or mac_from_text() into. As a result, we need: >> >> - A custom free() handler to avoid leaking the *jp_value >> - A custom jailparam_get() handler to mac_prepare() the mac_t and >> populate the iove properly, so that the kernel doesn't have to >> do something funky like copyin, dereference, copyin again. >> - A custom jailparam_set() handler to similarly populate the iovec >> properly. >> >> Reviewed by: jamie >> Differential Revision: https://reviews.freebsd.org/D53960 > > Hi Kyle! > > After this commit, the following tests are failing: > > - https://ci.freebsd.org/view/Test/job/FreeBSD-main-amd64-test/27642/testReport/junit/bin.pkill/pgrep-j_test/main/ > - https://ci.freebsd.org/view/Test/job/FreeBSD-main-amd64-test/27642/testReport/junit/bin.pkill/pkill-j_test/main/ > > Seems like "jls -s" is not working. > Hi, Woof- I will have a patch for this momentarily. Thanks, Kyle Evans From nobody Mon Jan 19 20:45:18 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dw2XG5zvjz6PLNV for ; Mon, 19 Jan 2026 20:45: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dw2XG34xlz3n0l for ; Mon, 19 Jan 2026 20:45:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768855518; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CSS7my6EFARM99Ra4bemnkDx5oDWNtKGM8g5oEW3FMA=; b=o8X0d9LogMWOjkOeifKu7aOYFE76TvZ9Gf0HKaQRV/wrSuJAREKGmSjnbMR+uC7O5pE7dY cvXWS609raAkTla0otl78coXxwk+anOw2neZyNgi4x/u9qqxT0vYmwxyVvt8R0SDPwZOX3 t9tbazxcuLfAZXdOlLFoW8ckfunBxIpztqqwaqUEGouHR2QCI4PdGtdKtzNFc0geY6QgjO yLanGNa+FOR/pNLEjFNmLSrCtkPdOL5osqz2Aja7KxXFQhB21RAlEOgWX6XO/LMTmwy/ih faXXNGEiUtTN6ONyLeEQlvLTdo0vuCVRemFE1i0FkiDqmAPIyrHQaG+acgVasg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768855518; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CSS7my6EFARM99Ra4bemnkDx5oDWNtKGM8g5oEW3FMA=; b=meML1BKP4PHzQgAGs+Cw+3z3Z9UHuT2VC3XwLx0TR0rVODDccQ885IH14Hn5I/Bk+e5PvS qXP4vlVcJYqZ/rkNbiOFybMEHDi7YCZgtccmzT6LNxkNC38YYvdbz0yr/0Dl1oc1ExePIi MQGAH4DbAk6bqsaHcC8l8NCMDpKbVdG9oc/WYDiKgeVmNe2kcat3Dk0pX+0Hg9zl29b6lf vMfYV/6VMmFMG6DARsAnbuhEjKm6cHXLjycJjD2B7KXRia3a9GqnpkRGJ/2zvmiTgvoWBz r06qiLxQG0/SzJu7cBMqfggLI1Zkj8t6X/V+DWNNQoyVgGHorQppZdjJ2gMjrg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768855518; a=rsa-sha256; cv=none; b=ykGWV1gGnMXA+BXJyGlXfLDy1D8y5y/LyyINrR4fwmVBa53t7sh+NAYiRoNIflL5wDcStV EwmmIbEuK0DzHxoJaPeL5JHKc4JxqYEkf5QwAJ+AunO11mfDa9mGbBpeChkSncL/jCwGUb zGoHg+QpxToleB6MDUYm/ccdmmHszckX4EVQcJqI4eXcTE0DtXzNTYHDegCGt0HQ8+tifk Jo8ck4y1lO7j/V4hn4/rt1Kn4tawmodoG4yEUb9HBHkQx/AU0GTeP3H3caWVxzk6GRxOWi RmH8+fPZ4hqWeItwkCo4e1oycUBvaBUAA+NbG/KC5xA/1ZovGbp3Z5sCBTEW0g== 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 4dw2XG2Q2xzp1h for ; Mon, 19 Jan 2026 20:45:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 26802 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 20:45:18 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 68a449f09e2a - main - sctp: improve compilation as module List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 68a449f09e2a38def9df822d42f91ecd2f27b0e2 Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 20:45:18 +0000 Message-Id: <696e97de.26802.7dbfa4b9@gitrepo.freebsd.org> The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=68a449f09e2a38def9df822d42f91ecd2f27b0e2 commit 68a449f09e2a38def9df822d42f91ecd2f27b0e2 Author: Michael Tuexen AuthorDate: 2026-01-19 20:38:37 +0000 Commit: Michael Tuexen CommitDate: 2026-01-19 20:38:37 +0000 sctp: improve compilation as module When compiling SCTP as a module, don't compile sctp_crc32.c into the module. This avoids code and variable duplication since sctp_crc32.c is compiled into the kernel. In particular, the variable system_base_info is not duplicated. This fixes the handling of the statistic counters sctps_sendhwcrc and sctps_sendswcrc when using sctp_delayed_cksum. MFC after: 3 days --- sys/modules/sctp/Makefile | 1 - 1 file changed, 1 deletion(-) diff --git a/sys/modules/sctp/Makefile b/sys/modules/sctp/Makefile index 626f195dbf1f..4b47e1e63478 100644 --- a/sys/modules/sctp/Makefile +++ b/sys/modules/sctp/Makefile @@ -6,7 +6,6 @@ SRCS= sctp_asconf.c \ sctp_auth.c \ sctp_bsd_addr.c \ sctp_cc_functions.c \ - sctp_crc32.c \ sctp_indata.c \ sctp_input.c \ sctp_kdtrace.c \ From nobody Mon Jan 19 22:57:51 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dw5TD3W4tz6PV24 for ; Mon, 19 Jan 2026 22:57: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dw5TD1TDbz46Zm for ; Mon, 19 Jan 2026 22:57:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768863472; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XMd2jChycD/ugIPYA22UK5EBfLLWJuMSmIY69g2W/BE=; b=rTo4i+tU8iiaewZ1aH1IJFj2twuLoJAvOCmpWI4xS/isWL2dQmsda8sZSds/9E3kEbXR1W e4jBpobZq69pqVv6XdT2BSIxSJNmJI/EFuIVB7XtTvrObDHdxZB9qYFZv0cFWEnq0EDzL9 IHdZKmQNyTCAImTHB90kY1qaP2geiXwz1UVviYLderoHxtwTaaSAYRfk0Pzet4+iTb2mTo u9bVk5JQHy2LWipIgOm9Zx4CrKuk0xX7ojRP3T5lNoeBoqs/GO2uhqGoKe90O9OrTYFVqV nZ3bX0RvvdLrpe5NGjSjVP4zNen4c0UDBPcI4XPt5YxOFFV/WOjDm9Nndj7xgQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768863472; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XMd2jChycD/ugIPYA22UK5EBfLLWJuMSmIY69g2W/BE=; b=AFIzs0esLMNbrL+14eX0LvlBrbA23nH9KQE82n3aAPgdsLOtlqQDOzgH0gY4vL5+GLykvy 9dyXHjNEJ9wATW+jxnGxkaA+Ks7t2JuMFnAHeA36IOEDdRXJDAvhDJ2BKUcHEaeQfMOiYW qwrBGXgP9zNmdbFZPURoVwDHYViyvOzO0lQm6UeLz3JwzKuVgGmBR4RYEkdBu0npEUo7Tv doQtsmQIoH9cGcb7eYZgWYLBBxCNzSPNneTkP4kbLkBhdbxo8bzksmjaaIcnclPzqcDBxO CRKXvIw/Vitm3cQ1dQFH2qy/6AWP83oiir8AiVtEQzXTI47XLSiQ1Ua5AggWoA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768863472; a=rsa-sha256; cv=none; b=C8J78W3lKoVnT6FF9lTadnQRXk4YQXERiFCLA9eJE3jNga/8RnSkmvBX8po+e+/fyLHnJ9 8ycJK9xc/EWPa9Ntq/HTtlM1GooZ/IgzjHjM/R2kSu2Jvb2QRAP3OGftTkn0nYE9gXnikh 0neZcfWTK7Yco4nWRWnmoOHzTCfiX9VDmaI7CJSkArCZ3Rgo0mVSg90MyAUX2ZCOuHijJw CP5fMRkxbr+Ny+RJvLkonMoNyrJG8V85h+Mlnapp8wrtmgMwM/jfm/qmxlLyr/u2zMsIDL w97tevwsQ730c7X0VhfvagopbZWbOPEp7yFXUVq2EPwmVGkCp3LvUhddNTR5Jg== 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 4dw5TD0Ht0zrJw for ; Mon, 19 Jan 2026 22:57:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3a4ac by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 19 Jan 2026 22:57:51 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 2e0e45a516b9 - main - pfctl(8): change default limiter action from no-match to block List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2e0e45a516b93cc72771a5de8b87cd0a07a55f07 Auto-Submitted: auto-generated Date: Mon, 19 Jan 2026 22:57:51 +0000 Message-Id: <696eb6ef.3a4ac.5e216a0a@gitrepo.freebsd.org> The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=2e0e45a516b93cc72771a5de8b87cd0a07a55f07 commit 2e0e45a516b93cc72771a5de8b87cd0a07a55f07 Author: Kristof Provost AuthorDate: 2026-01-16 17:30:55 +0000 Commit: Kristof Provost CommitDate: 2026-01-19 22:04:55 +0000 pfctl(8): change default limiter action from no-match to block pf(4) users who use limiters in current should update the rules accordingly to reflect the change in default behavior. The existing rule which reads as follows: pass in from any to any state limiter test needs to be changed to: pass in from any to any state limiter test (no-match) OK dlg@ Obtained from: OpenBSD, sashan , c600931321 Sponsored by: Rubicon Communications, LLC ("Netgate") --- sbin/pfctl/parse.y | 2 +- sbin/pfctl/tests/files/pf1076.in | 2 +- sbin/pfctl/tests/files/pf1077.ok | 2 +- share/man/man5/pf.conf.5 | 22 +++++++++++----------- sys/netpfil/pf/pf.h | 2 ++ tests/sys/netpfil/pf/limiters.sh | 6 +++--- 6 files changed, 19 insertions(+), 17 deletions(-) diff --git a/sbin/pfctl/parse.y b/sbin/pfctl/parse.y index 72589f309f54..57a5140ffeb7 100644 --- a/sbin/pfctl/parse.y +++ b/sbin/pfctl/parse.y @@ -2787,7 +2787,7 @@ sourcelim_filter_opt } ; -limiter_opt_spec: /* empty */ { $$ = PF_LIMITER_NOMATCH; } +limiter_opt_spec: /* empty */ { $$ = PF_LIMITER_DEFAULT; } | '(' limiter_opt ')' { $$ = $2; } ; diff --git a/sbin/pfctl/tests/files/pf1076.in b/sbin/pfctl/tests/files/pf1076.in index af815fd4c5ef..117fb90a11d2 100644 --- a/sbin/pfctl/tests/files/pf1076.in +++ b/sbin/pfctl/tests/files/pf1076.in @@ -1,2 +1,2 @@ state limiter "dns-server" id 1 limit 1000 rate 1/10 -pass in proto tcp to port domain state limiter "dns-server" +pass in proto tcp to port domain state limiter "dns-server" (no-match) diff --git a/sbin/pfctl/tests/files/pf1077.ok b/sbin/pfctl/tests/files/pf1077.ok index 834399c40d8a..4a7cb3606aef 100644 --- a/sbin/pfctl/tests/files/pf1077.ok +++ b/sbin/pfctl/tests/files/pf1077.ok @@ -1,2 +1,2 @@ source limiter dns-server id 1 entries 2 limit 3 rate 4/5 inet mask 16 -pass in proto tcp from any to any port = domain flags S/SA keep state source limiter id 1 (no-match) +pass in proto tcp from any to any port = domain flags S/SA keep state source limiter id 1 (block) diff --git a/share/man/man5/pf.conf.5 b/share/man/man5/pf.conf.5 index aa3899e48596..707053233e5a 100644 --- a/share/man/man5/pf.conf.5 +++ b/share/man/man5/pf.conf.5 @@ -27,7 +27,7 @@ .\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd January 12, 2026 +.Dd January 16, 2026 .Dt PF.CONF 5 .Os .Sh NAME @@ -2368,12 +2368,12 @@ block in proto icmp probability 20% .It Cm state limiter Ar name Oo Cm (limiter options) Oc Use the specified state limiter to restrict the creation of states by this rule. -By default if capacity is not available, the rule is ignored -and ruleset evaluation continues with next rule.. +By default if capacity is not available, the packet gets blocked +and ruleset evaluation stops. Use -.Ic block -option to change default behavior such packet is blocked -when limit is reached. +.Ic no-match +option to change default behavior such rule is ignored and ruleset +evaluation continues with next rule. See the .Sx State Limiters section for more information. @@ -2381,12 +2381,12 @@ section for more information. .It Cm source limiter Ar name Oo Cm (limiter options) Oc Use the specified source limiter to restrict the creation of states by this rule. -By default if capacity is not available, the rule is ignored -and ruleset evaluation continues with next rule.. +By default if capacity is not available, the packet gets blocked +and ruleset evaluation stops. Use -.Ic block -option to change default behavior such packet is blocked -when limit is reached. +.Ic no-match +option to change default behavior such rule is ignored and ruleset +evaluation continues with next rule. See the .Sx Source Limiters section for more information. diff --git a/sys/netpfil/pf/pf.h b/sys/netpfil/pf/pf.h index 4c950c7eab9c..09bcd424db3e 100644 --- a/sys/netpfil/pf/pf.h +++ b/sys/netpfil/pf/pf.h @@ -506,6 +506,8 @@ enum { PF_LIMITER_BLOCK }; +#define PF_LIMITER_DEFAULT PF_LIMITER_BLOCK + struct pf_rule { struct pf_rule_addr src; struct pf_rule_addr dst; diff --git a/tests/sys/netpfil/pf/limiters.sh b/tests/sys/netpfil/pf/limiters.sh index 4775039a4a94..8d9a199db787 100644 --- a/tests/sys/netpfil/pf/limiters.sh +++ b/tests/sys/netpfil/pf/limiters.sh @@ -54,7 +54,7 @@ state_basic_body() "set timeout icmp.error 120" \ "state limiter \"server\" id 1 limit 1" \ "block in proto icmp" \ - "pass in proto icmp state limiter \"server\"" + "pass in proto icmp state limiter \"server\" (no-match)" atf_check -s exit:0 -o ignore \ ping -c 2 192.0.2.1 @@ -103,7 +103,7 @@ state_rate_body() "set timeout icmp.error 120" \ "state limiter \"server\" id 1 limit 1000 rate 1/5" \ "block in proto icmp" \ - "pass in proto icmp state limiter \"server\"" + "pass in proto icmp state limiter \"server\" (no-match)" atf_check -s exit:0 -o ignore \ ping -c 2 192.0.2.1 @@ -217,7 +217,7 @@ source_basic_body() "set timeout icmp.error 120" \ "source limiter \"server\" id 1 entries 128 limit 1" \ "block in proto icmp" \ - "pass in proto icmp source limiter \"server\"" + "pass in proto icmp source limiter \"server\" (no-match)" atf_check -s exit:0 -o ignore \ ping -S 192.0.2.2 -c 2 192.0.2.1 From nobody Tue Jan 20 02:57:59 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwBpJ1Lz2z6NqRs for ; Tue, 20 Jan 2026 02:58: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwBpH39Knz3PpZ for ; Tue, 20 Jan 2026 02:57:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768877879; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/1WDvFGtcqxhB8y9AcMCwcEVGajiWTLn0kOVF7s2E4k=; b=TGv4js0Xecy/tnKleda80Hddare0tKNVmi0HGhSADhTq1RkCVrLIzA+RkzdHzHBiX0m6Md yoqD9QdfRmO0swQoSoVkCaslf3ZXxhdjwo3ppAfi1OVyI8QSsMydpJxsfbPA8ZUtEJT0Ml ur/Dzf9kHu1mgjcMMJwsHMhaiDqrkwimp7sK1g7Iy4hyqFK/X82sFphimN+12bmXjiDx9W EfvUqZJKCvzVmmvJWLdAT4fxg+Z/zSnp6DdKJ1xhiGhNbshLmfo0kQOtMvggzO2LJueC8K t//TPvoPWViDwDQC0vSJZygo/0NcXfTQU36tRroQV5/oodmxjgoamkyn1iy8XQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768877879; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/1WDvFGtcqxhB8y9AcMCwcEVGajiWTLn0kOVF7s2E4k=; b=HsZ5xpQhNVNPjrHmuHFvlpOy/PC9LRfEWXp1yD7Cb85DAk0Af70ntBWWxbvgQXP7dHT/YP FWzJck/FZn8mJIDZ8EiDDHNAXqE5eRbQH/MMYM6SaPJETnf+h6wj7sHYdJMoMeLW8lC6UG DplaKK8YydOBqMpp0D8iZLBsvuu0sjq0YWz6xczjHp73i7tdhbmZwbRW7oBbq40xsnujsu aX2ib4Jqq2JAtOWYcFSmmtqhwftwMYIg7cfiJ23XU9G/ZwlskGdwsgraZuuAJc0Rf1RKTV XwRztmc7kbH3DVnL/w7cVA6BKUfZQkL0R0JI2tB3O3t9NEGI2Yk9UQ131ptsKA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768877879; a=rsa-sha256; cv=none; b=l6gtwDwcN4KkRVvDEurYptPK+K6ftH4U4EmUno3A/gx+3sk640BS7Mm0a6J7kkzALHqjoi ChFxHkL7YVfuFwjHyWF6xUfAQsUl1EH9Wy0vl24muPpuTBj72vdhroDPeHalO/CW7EYWav hYFKgBG+yrN7ZHgwAAui1bm3mUpWMYgFN7ZVyKOgCerNTDusCLHfzbROCReQzW6cj1Ceeq dCUWSCuI/kmI3iKd3F7iKZv2QF9ci931l55zIVJmNYMBIXFfjnT+krNn+sGX+9g4V0Jp8Y SXCGN0OP5P/gGN2x9NnS5QA6r27b7bdlcyNEWJZGtavqtX2BAbVZAXpJq5qsQw== 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 4dwBpH2dbDzyby for ; Tue, 20 Jan 2026 02:57:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 20d63 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 02:57:59 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kyle Evans Subject: git: 3f3b53e68a7b - main - jail(3): fix common usage after mac.label support List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kevans X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3f3b53e68a7b2f9319ee1fdac82b511c9f9f22d7 Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 02:57:59 +0000 Message-Id: <696eef37.20d63.467132d4@gitrepo.freebsd.org> The branch main has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=3f3b53e68a7b2f9319ee1fdac82b511c9f9f22d7 commit 3f3b53e68a7b2f9319ee1fdac82b511c9f9f22d7 Author: Kyle Evans AuthorDate: 2026-01-20 02:57:42 +0000 Commit: Kyle Evans CommitDate: 2026-01-20 02:57:42 +0000 jail(3): fix common usage after mac.label support Nobody else's mac.conf(5) has any entries for jails, so they get a trivial ENOENT and we fail before we can fetch any jail parameters. Most notably, this breaks `jls -s` / `jls -n` if you do not have any loaded policy that applies jail labels. Add an entry that works for everyone, and hardcode that as an ENOENT fallback in libjail to provide a smoother transition. This is probably not harmful to leave in long-term, since mac.conf(5) will override it. This unearthed one additional issue, in that mac_get_prison() in the MAC framework handled the no-label-policies bit wrong. We don't want to break jail utilities enumerating jail parameters automatically, so we must ingest the label in all cases -- we can still use it as a small optimization to avoid trying to copy out any label. We will break things if a non-optional element is specified in the copied in label, but that's expected. The APIs dedicated to jaildescs remain unphased, since they won't be used in the same way. Fixes: db3b39f063d9f05 ("libjail: extend struct handlers [...]") Fixes: bd55cbb50c58876 ("kern: add a mac.label jail parameter") Reported by: jlduran (on behalf of Jenkins) Reviewed by: jlduran Differential Revision: https://reviews.freebsd.org/D54786 --- lib/libc/posix1e/mac.conf | 1 + lib/libc/posix1e/mac.conf.5 | 3 ++- lib/libjail/jail.c | 15 +++++++++------ sys/security/mac/mac_syscalls.c | 8 ++------ 4 files changed, 14 insertions(+), 13 deletions(-) diff --git a/lib/libc/posix1e/mac.conf b/lib/libc/posix1e/mac.conf index 011143abf073..7da9bb8a9638 100644 --- a/lib/libc/posix1e/mac.conf +++ b/lib/libc/posix1e/mac.conf @@ -12,6 +12,7 @@ default_labels file ?biba,?lomac,?mls,?sebsd default_labels ifnet ?biba,?lomac,?mls,?sebsd +default_labels jail ? default_labels process ?biba,?lomac,?mls,?partition,?sebsd default_labels socket ?biba,?lomac,?mls diff --git a/lib/libc/posix1e/mac.conf.5 b/lib/libc/posix1e/mac.conf.5 index 98aa62dd83a7..99d75584a0d7 100644 --- a/lib/libc/posix1e/mac.conf.5 +++ b/lib/libc/posix1e/mac.conf.5 @@ -27,7 +27,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd July 25, 2015 +.Dd January 19. 2026 .Dt MAC.CONF 5 .Os .Sh NAME @@ -79,6 +79,7 @@ and # Default label set to be used by simple MAC applications default_labels file ?biba,?lomac,?mls,?sebsd +default_labels jail ? default_labels ifnet ?biba,?lomac,?mls,?sebsd default_labels process ?biba,?lomac,?mls,?partition,?sebsd default_labels socket ?biba,?lomac,?mls diff --git a/lib/libjail/jail.c b/lib/libjail/jail.c index 75fd411c70c8..baabeb4afed9 100644 --- a/lib/libjail/jail.c +++ b/lib/libjail/jail.c @@ -1436,18 +1436,21 @@ jps_get_mac_label(struct jailparam *jp, struct iovec *jiov) int error; error = mac_prepare_type(pmac, "jail"); + if (error != 0 && errno == ENOENT) { + /* + * We special-case the scenario where a system has a custom + * mac.conf(5) that doesn't include a jail entry -- just let + * an empty label slide. + */ + error = mac_prepare(pmac, "?"); + } if (error != 0) { int serrno = errno; free(jp->jp_value); jp->jp_value = NULL; - if (serrno == ENOENT) { - snprintf(jail_errmsg, sizeof(jail_errmsg), - "jail_get: no mac.conf(5) jail config"); - } else { - strerror_r(serrno, jail_errmsg, JAIL_ERRMSGLEN); - } + strerror_r(serrno, jail_errmsg, JAIL_ERRMSGLEN); errno = serrno; return (-1); } diff --git a/sys/security/mac/mac_syscalls.c b/sys/security/mac/mac_syscalls.c index 1035c6dbb84b..9bafa6d30c36 100644 --- a/sys/security/mac/mac_syscalls.c +++ b/sys/security/mac/mac_syscalls.c @@ -331,18 +331,14 @@ mac_get_prison(struct thread *const td, struct prison *pr, goto out_nomac; } - if (!(mac_labeled & MPC_OBJECT_PRISON)) { - error = EINVAL; - goto out; - } - intlabel = mac_prison_label_alloc(M_NOWAIT); if (intlabel == NULL) { error = ENOMEM; goto out; } - mac_prison_copy_label(pr->pr_label, intlabel); + if ((mac_labeled & MPC_OBJECT_PRISON) != 0) + mac_prison_copy_label(pr->pr_label, intlabel); /* * Externalization may want to acquire an rmlock. We already tapped out From nobody Tue Jan 20 02:57:58 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwBpG4dLjz6NqZb for ; Tue, 20 Jan 2026 02:57:58 +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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwBpG2C2tz3PxR for ; Tue, 20 Jan 2026 02:57:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768877878; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Q0I7o3F8s3sLZccZgxjhFg8l084ac+iQWBXvuOkBaUY=; b=fuDcirzI30u2FTPZLndVyEAGKT5JMQXeonWfOJ3clK1xzLNJX0GqXrVZVsXxTu4XXuFk6F //56zb1WKNqCLmlceiFgjAan9r1bmOMk4IedFyRZ2OArKZXctMuomTFEbfGZa1RSQyPRm7 Bhgth5HCkZgiMUlRFWMNqlSq3WEiH1f6matY4Znf6yL3IfnfYaQ8PPIgvuPLlMMptZrbld Om7oaLTD4NBNW0xCz5IDhkpKShXgYF93DVBl5tc+7TWjqe638E3v7FW6lxAEE0BwgKedNR PdmvjMLP34fGBR7J+CQi8knW28xQMD2CAaQzBoSkhZJUc6sptq4Ut9mlwY8yyQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768877878; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Q0I7o3F8s3sLZccZgxjhFg8l084ac+iQWBXvuOkBaUY=; b=Ghehsz33HTIyrfy/m7TXeRXk+7bEHfLZfqCX2lJ3sbMJd7U3Be7VqUZQvVP/UaHqMp0Gvq nj0/+J0OZBpQxgTLiIhKNFRpjdbNwYjTfl44BdMX/PBQT2BY78BdBKb2IuO4ruhgySz718 g6NVDx4+RMJKXq4LTs5NiwhnsTAoD3rqTxbnwYQ+oEO1eUv1qKv7vnoZP++EX4yvyu10BK KEk5ViRemiLcoIHiw6aIVxlczUC8eN4cBHt2DtkvAvkC/+3uBGDZikYn4sJ2ZmHmpgddp9 rAFnfj+ypr9KptqknkpuS1KtGW892MTLjAuvRrjfwzfmx9uwv6/ZABzRih0bkQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768877878; a=rsa-sha256; cv=none; b=BTSQgLN0F47aiAHPuVw0/TZU7E9+BHTmQwkSCTtpXpFq8ycjP4sNM8wpmOjOXos/yeCUKp yAuUSRDELJjsjPOBg7+XVo1nUJKsWETuzLb4H6Z7f2Omo2UwzdGTIzwgvjBFKeSXscqHJ4 1c66HwCLaVnRpKNQQKN91KNvI06Q8StNWTaH7KCb7mc1rQRvfkdrU7yVRspPRHQz9A4SmY /MTDi78JIr9M+Hc7Lg5T3yk1C2gNdSVjR2OP1HBXn1gZbO6X0/epdU10CagoISOriX+ojp rjv5G96u29uGg7XlpN9ncD+PfG+wXhsIvEllsRVJfekD2qRju2lDKWPMHLFP8A== 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 4dwBpG1pxKz107d for ; Tue, 20 Jan 2026 02:57:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 208b5 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 02:57:58 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kyle Evans Subject: git: bef0475b6810 - main - mac(4): also list jails in the example enumeration of objects List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kevans X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bef0475b6810b9cc725bb786a8100a6e54b54891 Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 02:57:58 +0000 Message-Id: <696eef36.208b5.1bc20e90@gitrepo.freebsd.org> The branch main has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=bef0475b6810b9cc725bb786a8100a6e54b54891 commit bef0475b6810b9cc725bb786a8100a6e54b54891 Author: Kyle Evans AuthorDate: 2026-01-20 02:57:42 +0000 Commit: Kyle Evans CommitDate: 2026-01-20 02:57:42 +0000 mac(4): also list jails in the example enumeration of objects The prison may also be considered part of the subject by way of its ucred association, but I don't think this is significantly different enough today than before recent work -- policies could have always taken them into account, and some did (e.g., mac_bsdextended). Reported by: olce Reviewed by: olce, ziaee Differential Revision: https://reviews.freebsd.org/D54748 --- share/man/man4/mac.4 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/share/man/man4/mac.4 b/share/man/man4/mac.4 index d7ae30a1bac4..bdb7de018d3d 100644 --- a/share/man/man4/mac.4 +++ b/share/man/man4/mac.4 @@ -28,7 +28,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd January 15, 2026 +.Dd January 16, 2026 .Dt MAC 4 .Os .Sh NAME @@ -68,7 +68,7 @@ Currently, the following MAC policy modules are shipped with .El .Ss MAC Labels Each system subject (processes, sockets, etc.) and each system object -(file system objects, sockets, etc.) can carry with it a MAC label. +(file system objects, jails, sockets, etc.) can carry with it a MAC label. MAC labels contain data in an arbitrary format taken into consideration in making access control decisions for a given operation. From nobody Tue Jan 20 10:27:08 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwNmX4wk3z6PMZY for ; Tue, 20 Jan 2026 10:27: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwNmX3xhpz49Xm for ; Tue, 20 Jan 2026 10:27:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768904828; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=G/2yspGpOO/3TOU1aQxoFiNyuXUGNJokXfyXBPDoUIE=; b=UkQNdOZGZq7mafPznUKcU0mUAj3cB82iEHYYriRT3ZYvqCpce2h1Cdqlhl5xGtN8p3Lwno E1Xf3vH++EKhI/W55G1ucEQzXNsH65WF6Zq06VOokARuNqlbKlggVOknYYwDT5MgBx9CCX Bat+Qj9J2zP/CtoYrb8k6tFOZ+9NYx+Z30pU3FizJua+ErtGgbrqjE5ZWhEg4qAKev1Bpb +/dM69yaHbE9NpVcFGgf8OU7Uh7crgkVz/gu32uURuNBE+mzcCiAIsKRHOqempJRgUE6up /qfudkGTgrjTKEQSEqpXQraSF+9gBIBRVAvvk9nFMd4iG9c6E3cRNxDarQtKuw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768904828; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=G/2yspGpOO/3TOU1aQxoFiNyuXUGNJokXfyXBPDoUIE=; b=F62g9EDoSYZsQLA0kHZYLfzxtS3xpno9Ex+uuKU/cwzBIDjLrIydobk0h+/T3Q8lmv+RyT IvPM61bXRzyhwbBEpwxJxefPneVVugcVIKa2Q28ms7Mno5D+o0nLcF3uyqHLV9lCNdjWV6 a92HjvcObKAICFeXD3p3RZPuuG3SpN7rZOCkrNpx4PoK7joMGv48GlCQ37Y+UkG3PC9Xkq gMdmgfqe+AiaBSOq64dvRKac1A6T1gS4FEOj2o7RzBRStzyOF2DW/61xxJH8oGuG+fTp+5 mdFDxsQOhNcPC0VY2jpgNftfFYx24+uFGF8jefsUfPbK1fWSiVBKQDAp3+jDmw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768904828; a=rsa-sha256; cv=none; b=IW8jwR4VdA7QDWCUZZ6I99r7q/G10Cb8BK7Bmg5xdlc6xzyNU6rhFxuDpfW1zrjr69MXBO uk70iIxWotGUT6a+ONzEupQS4E3DwsecHnBpRsP1IdPe55fuIRjsg+90T5bRezOsahYViE uqqBxX8qnCU3ECvQKZf24ZJtpcpl4Sf2GBb5Q8by4nv93/SthIV4T9+8q0qIuBbJmjifNA lfUZ9Ni0f1FIV/r8ETDvVsRoSROqJSjV/TuxvjLUvmu7Fdv50qQye7sHZiXzeNI7GMi8Ad CP29IADhijsodeNpbO84a432cBtNbRI1g81kbO2sswJpqVi98RCDcyUp79lzWA== 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 4dwNmX2j9Bz1Ck5 for ; Tue, 20 Jan 2026 10:27:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 352aa by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 10:27:08 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 3d771e0db66d - main - dwc: cleanup List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3d771e0db66da77da5a7f323df1c0638e6b586ea Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 10:27:08 +0000 Message-Id: <696f587c.352aa.761cce38@gitrepo.freebsd.org> The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=3d771e0db66da77da5a7f323df1c0638e6b586ea commit 3d771e0db66da77da5a7f323df1c0638e6b586ea Author: Michael Tuexen AuthorDate: 2026-01-20 10:25:31 +0000 Commit: Michael Tuexen CommitDate: 2026-01-20 10:25:31 +0000 dwc: cleanup No functional change intended. Reviewed by: Timo Völker MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54788 --- sys/dev/dwc/if_dwc.c | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/sys/dev/dwc/if_dwc.c b/sys/dev/dwc/if_dwc.c index 5e2ca216b3c0..f57a19e8a112 100644 --- a/sys/dev/dwc/if_dwc.c +++ b/sys/dev/dwc/if_dwc.c @@ -265,18 +265,14 @@ dwc_ioctl(if_t ifp, u_long cmd, caddr_t data) } if (mask & (IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6)) if_togglecapenable(ifp, IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6); - if (mask & IFCAP_TXCSUM) + if (mask & IFCAP_TXCSUM) { if_togglecapenable(ifp, IFCAP_TXCSUM); - if ((if_getcapenable(ifp) & IFCAP_TXCSUM) != 0) - if_sethwassistbits(ifp, CSUM_IP | CSUM_DELAY_DATA, 0); - else - if_sethwassistbits(ifp, 0, CSUM_IP | CSUM_DELAY_DATA); - if (mask & IFCAP_TXCSUM_IPV6) + if_togglehwassist(ifp, CSUM_IP | CSUM_DELAY_DATA); + } + if (mask & IFCAP_TXCSUM_IPV6) { if_togglecapenable(ifp, IFCAP_TXCSUM_IPV6); - if ((if_getcapenable(ifp) & IFCAP_TXCSUM_IPV6) != 0) - if_sethwassistbits(ifp, CSUM_DELAY_DATA_IPV6, 0); - else - if_sethwassistbits(ifp, 0, CSUM_DELAY_DATA_IPV6); + if_togglehwassist(ifp, CSUM_DELAY_DATA_IPV6); + } if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) { DWC_LOCK(sc); From nobody Tue Jan 20 10:37:16 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwP0F03W5z6PMyG for ; Tue, 20 Jan 2026 10:37: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwP0D6Xtsz3ChB for ; Tue, 20 Jan 2026 10:37:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768905436; 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=qdym7IhN68lpcprCUtAH6qshgN9v2iFGTxBEobXOTWA=; b=v0AiMS5V7qrPpWskXQ4fZT0Bgn4gjkX0Ee1Ke05jhZXjvsVALE2EYHH4yhZUYW3IJDYVjx /7suf1RN23H8n1ahYZP6cUFt5oqSFsF2Q+TvH+8WelVU+l4zdPEcm1t3jj3qS7aw3LKvpw uV04oy1+oEQmo2Bro+Hy3qtn9Q9bY55zcnHLb1xyhkMPka+pnRzdcVmx1yeJIo8Ydpx6Ju 61K6aBENGY869ge3Oa8TDTUtwvgIwxDs1gG3F0SiBNjxHzK1NS2SOJ7zqfxhpGSr7y+t6Z 07IIfDPzyZJ/HVyZPDrgyyMXFU3qSNqESsJuOvd3/xMzFZafJaC2L0P2Nr6t+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768905436; 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=qdym7IhN68lpcprCUtAH6qshgN9v2iFGTxBEobXOTWA=; b=WIN2hXR59Wmmg40I5h6aPWzY4/GJYlW48kZN//qlWqYTHWjwbSvPSRHMxWKeLaTuIqkoTF WcE76wzGUdRqPTWPddGoOkvtF7br9Q6uyn7+HAaGpvaxMo5g1B4Bm3XrgO6IZ0UjQnmWWH ccKTn2lsCaeUYtLccc1nxymOSlgmotr1LRSIU6O7DPnRgvm6gm4YOKH2MouB079To0ukDZ kG6p37nilbjnMi36z+EPFD0u0jJhNfFeGSjDbvKSDvVocZB7FPPwyHuQgESjBiOs6YTRFF DNrGwmR14fMcd3XTG1bfBhiSlyt8l8FYl4t/s0sGb4U5AQflXqjElWl6f1hSHg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768905436; a=rsa-sha256; cv=none; b=Qv3eFupipHsZpGdfj2nZkaGkXI+JZA8Wfx7bexfuxL2PXpDBKpQpGffr41S0XZAyAiqmaW zGfIWqjfCEmGvAVCCc6GfLwKh4Hd69TKa3/uKt1mj1SAqxEO+ft9RW/jMO0/XZoeFwJ31Y UoDHw/OBBIE7DnNAWIMn1eupHPzsGV8iRDSIVOOKWl98vFgNU5PUYVQaLoT8c6TjyOgezB Ki5d03x8/uTThlY8jiyJWCbNS8+5ij5nV5tWtTcfIteQ89U8qrPsl04UaCgkeZ8zGaxfu2 mrxQEKojUk7LYTQqrNXsraRwqZ57L/Nmo248XIpQEqqTXnplS1HND949lUgzEQ== 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 4dwP0D63j5z1CWf for ; Tue, 20 Jan 2026 10:37:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37534 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 10:37:16 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Timo =?utf-8?Q?V=C3=B6lker?= From: Michael Tuexen Subject: git: 6f15ba8004c3 - main - ip: improve deferred computation of checksums List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6f15ba8004c3fdc2fb12f0cd6618d1b3a40aab7d Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 10:37:16 +0000 Message-Id: <696f5adc.37534.64e386d7@gitrepo.freebsd.org> The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=6f15ba8004c3fdc2fb12f0cd6618d1b3a40aab7d commit 6f15ba8004c3fdc2fb12f0cd6618d1b3a40aab7d Author: Timo Völker AuthorDate: 2026-01-20 10:30:19 +0000 Commit: Michael Tuexen CommitDate: 2026-01-20 10:36:40 +0000 ip: improve deferred computation of checksums This patch adds the same functionality for the IPv4 header checksum as was done erlier for the SCTP/TCP/UDP transport checksum. When the IP implementation sends a packet, it does not compute the corresponding checksum but defers that. It will determine whether the network interface selected for the packet has the requested capability and computes the checksum in software, if the selected network interface does not have the requested capability. Do this not only for packets being sent by the local IP stack, but also when forwarding packets. Furthermore, when such packets are delivered to a local IP stack, do not compute or validate the checksum, since such packets have never been on the wire. This allows to support checksum offloading also in the case of local virtual machines or jails. Support for epair interfaces will be added in a separate commit. Reviewed by: pouria, tuexen MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54455 --- share/man/man9/mbuf.9 | 5 +++-- sys/netinet/ip_fastfwd.c | 32 +++++++++++++++++++++++--------- sys/netinet/ip_input.c | 6 ++++++ 3 files changed, 32 insertions(+), 11 deletions(-) diff --git a/share/man/man9/mbuf.9 b/share/man/man9/mbuf.9 index e4f30962ccab..265a6dddda98 100644 --- a/share/man/man9/mbuf.9 +++ b/share/man/man9/mbuf.9 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd August 1, 2025 +.Dd January 20, 2026 .Dt MBUF 9 .Os .\" @@ -1216,13 +1216,14 @@ in is not set, since SCTP does not use a pseudo header checksum. .Pp If IP delivers a packet with the flags +.Dv CSUM_IP , .Dv CSUM_SCTP , .Dv CSUM_TCP , or .Dv CSUM_UDP set in .Va csum_flags -to a local SCTP, TCP, or UDP stack, the packet will be processed without +to a local IP, SCTP, TCP, or UDP stack, the packet will be processed without computing or validating the checksum, since the packet has not been on the wire. This can happen if the packet was handled by a virtual interface such as diff --git a/sys/netinet/ip_fastfwd.c b/sys/netinet/ip_fastfwd.c index d3d42afb2d84..6001ce781bc8 100644 --- a/sys/netinet/ip_fastfwd.c +++ b/sys/netinet/ip_fastfwd.c @@ -359,15 +359,20 @@ passin: } /* - * Decrement the TTL and incrementally change the IP header checksum. - * Don't bother doing this with hw checksum offloading, it's faster - * doing it right here. + * Decrement the TTL. + * If the IP header checksum field contains a valid value, incrementally + * change this value. Don't use hw checksum offloading, which would + * recompute the checksum. It's faster to just change it here + * according to the decremented TTL. + * If the checksum still needs to be computed, don't touch it. */ ip->ip_ttl -= IPTTLDEC; - if (ip->ip_sum >= (u_int16_t) ~htons(IPTTLDEC << 8)) - ip->ip_sum -= ~htons(IPTTLDEC << 8); - else - ip->ip_sum += htons(IPTTLDEC << 8); + if (__predict_true((m->m_pkthdr.csum_flags & CSUM_IP) == 0)) { + if (ip->ip_sum >= (u_int16_t) ~htons(IPTTLDEC << 8)) + ip->ip_sum -= ~htons(IPTTLDEC << 8); + else + ip->ip_sum += htons(IPTTLDEC << 8); + } #ifdef IPSTEALTH } #endif @@ -465,9 +470,18 @@ passout: gw = (const struct sockaddr *)dst; /* - * If TCP/UDP header still needs a valid checksum and interface will not - * calculate it for us, do it here. + * If the IP/SCTP/TCP/UDP header still needs a valid checksum and the + * interface will not calculate it for us, do it here. + * Note that if we defer checksum calculation, we might send an ICMP + * message later that reflects this packet, which still has an + * invalid checksum. */ + if (__predict_false(m->m_pkthdr.csum_flags & CSUM_IP & + ~nh->nh_ifp->if_hwassist)) { + ip->ip_sum = 0; + ip->ip_sum = in_cksum(m, (ip->ip_hl << 2)); + m->m_pkthdr.csum_flags &= ~CSUM_IP; + } if (__predict_false(m->m_pkthdr.csum_flags & CSUM_DELAY_DATA & ~nh->nh_ifp->if_hwassist)) { in_delayed_cksum(m); diff --git a/sys/netinet/ip_input.c b/sys/netinet/ip_input.c index 2e0635f8e482..1e1747d04c45 100644 --- a/sys/netinet/ip_input.c +++ b/sys/netinet/ip_input.c @@ -532,6 +532,12 @@ ip_input(struct mbuf *m) if (m->m_pkthdr.csum_flags & CSUM_IP_CHECKED) { sum = !(m->m_pkthdr.csum_flags & CSUM_IP_VALID); + } else if (m->m_pkthdr.csum_flags & CSUM_IP) { + /* + * Packet from local host that offloaded checksum computation. + * Checksum not required since the packet wasn't on the wire. + */ + sum = 0; } else { if (hlen == sizeof(struct ip)) { sum = in_cksum_hdr(ip); From nobody Tue Jan 20 13:41:47 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwT5F0JwWz6PbGg for ; Tue, 20 Jan 2026 13:41: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwT5D6v2Hz3nBm for ; Tue, 20 Jan 2026 13:41:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768916512; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qRXd5yd/hCeHvlh2VaP9QMrlzyOvyIy0QBbst31s0X8=; b=an0lTW7l3lg25KHRaB89jsRvGCEQhoXkoJr5h79D0NrzieSYwTS4lZ9F5uDWKMp8xIMg0p U8Rm7AITEJBWPK5ciUcwBbkbMTiAjYVDCsN1Q874f35+AdZd5QERbgnl01Hj8E1h27GyyF fDJ7e1mLYYSEJz8WWCH6FGLPNob84W9Dwag1QrGvJW89bmgLS3kpzwbF5Gf/HAIGjevlWi F0VoqdqjPn2HqgO05EANRywVwwp1+Df+7SsD8q3//kzwG6unL8xHB239B0KY3wDkQbAsyQ ssAKPvItEonwxxSJ9wBtEjA3XcIm/BUeYLlPawPUQXDc/sBSGPGuRGsZPNtlBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768916512; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qRXd5yd/hCeHvlh2VaP9QMrlzyOvyIy0QBbst31s0X8=; b=C+X2QCek9SXncmYa/F5lKBMoYSPJuFVEoFr4lbaaBLdsReQrOGM83Hm5RY89YOegqaeA5Z nQcrz0QxwqUAnxOZqV/MJcTIAf9CV3ilvOt2MICCw2kI73M4CACM6qliNo0FGm0UsjkfZC ydZF4FI2+caBPo6244T73jQ21rBWubT5Mf45maUEVZcEdvT/05ds9x29PvVNpILV7hijN/ b4kfIwIZlnTfRGjLfIhIpHpoT9KWXtM21BWma0vYzbtzntUMbD1Aln8r8q8TMiv1gYvf05 JjLV/jWCunufCJnkdvdY3GhC5898+MjDE9yrEvGrfJTtWv0jEi6DHJY5s1xsyA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768916512; a=rsa-sha256; cv=none; b=yI/Gj0h0cz1C2sQtBB9NxMNLOTNCmxZFBI8as4WKtw3m0Kmxogzu3TQmDK+kVpNJGyDv10 L8W6eY1zL0860dGABfyliJBK/fegEctQhzljlUCyEajNL5BuG5mABKap/SB1QPDOiUa10G PR4v4UByQeMPX5Pi/SD0pVXWJv/zxp6qL5uY8TOgtVHy1iVy+T1YcuXSltdsXMbLvkgS5f d5kRgTRgvOd8sHEKLPifqHHRObTs56PqxsJulpCBEyf5bu/Me+wiN4P2Qhm8fl8n07CF6w KZ3uNKpG/oi43jecQkIci20f7AzfZbZ9S8AMMvItsjkm4aGIvoSaiOAfGGpAhw== 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 4dwT5D6Rj2z1JQF for ; Tue, 20 Jan 2026 13:41:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 89b7 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 13:41:47 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Cy Schubert Subject: git: 1876de606eb8 - main - krb5: Expose missing symbols List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 1876de606eb876b7a97beccfe6fcc89e60a72a25 Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 13:41:47 +0000 Message-Id: <696f861b.89b7.312a8d05@gitrepo.freebsd.org> The branch main has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=1876de606eb876b7a97beccfe6fcc89e60a72a25 commit 1876de606eb876b7a97beccfe6fcc89e60a72a25 Author: Cy Schubert AuthorDate: 2025-12-18 00:50:44 +0000 Commit: Cy Schubert CommitDate: 2026-01-20 13:41:02 +0000 krb5: Expose missing symbols Add symbols found in the port but not in base. This requires replacing a shared libkrb5profile.so with libkrb5profile.a (with -fPIC so it can be used by shared libraries). We do this by making libkrb5profile INTERNALLIB. Base currently has libkrb5profile in a shared library. The patch moves those functions to the various "consumer" libraries as the port does. Symbols that should be in the other libraries are in libkrb5profile.so. This is causing some ports issues. PR: 291695 Reported by: michaelo, markj, Chris Inacio Tested by: michaelo Fixes: ae07a5805b19 Reviewed by: michaelo (previous version) MFC after: 2 weeks Differential revision: https://reviews.freebsd.org/D54323 --- ObsoleteFiles.inc | 4 + krb5/lib/apputils/Makefile | 1 + krb5/lib/crypto/Makefile | 3 +- krb5/lib/crypto/version.map | 59 ++ krb5/lib/gssapi/Makefile | 3 +- krb5/lib/gssapi/version.map | 308 ++++++++ krb5/lib/kadm5clnt/Makefile | 3 +- krb5/lib/kadm5clnt/version.map | 36 + krb5/lib/kadm5srv/Makefile | 3 +- krb5/lib/kadm5srv/version.map | 29 + krb5/lib/kadmin_common/Makefile | 1 + krb5/lib/kdb/Makefile | 3 +- krb5/lib/kdb/version.map | 27 + krb5/lib/kprop_util/Makefile | 1 + krb5/lib/krad/Makefile | 1 + krb5/lib/krad/version.map | 11 + krb5/lib/krb5/Makefile | 5 +- krb5/lib/krb5/version.map | 1196 ++++++++++++++++++++++++++++++ krb5/lib/rpc/Makefile | 1 + krb5/lib/rpc/version.map | 28 + krb5/libexec/kadmind/Makefile | 3 +- krb5/libexec/kdc/Makefile | 1 + krb5/libexec/kprop/Makefile | 3 +- krb5/libexec/kpropd/Makefile | 3 +- krb5/libexec/kproplog/Makefile | 3 +- krb5/plugins/audit/Makefile | 1 + krb5/plugins/k5tls/Makefile | 3 +- krb5/plugins/kdb/db2/Makefile | 3 +- krb5/plugins/kdb/db2/version.map | 148 ++++ krb5/plugins/preauth/otp/Makefile | 3 +- krb5/plugins/preauth/otp/version.map | 3 + krb5/plugins/preauth/pkinit/Makefile | 3 +- krb5/plugins/preauth/pkinit/version.map | 128 ++++ krb5/plugins/preauth/spake/Makefile | 3 +- krb5/plugins/preauth/spake/version.map | 22 + krb5/plugins/preauth/test/Makefile | 3 +- krb5/plugins/preauth/test/version.map | 2 + krb5/usr.bin/gss-client/Makefile | 3 +- krb5/usr.bin/kadmin/Makefile | 3 +- krb5/usr.bin/kdestroy/Makefile | 3 +- krb5/usr.bin/kinit/Makefile | 3 +- krb5/usr.bin/klist/Makefile | 3 +- krb5/usr.bin/kpasswd/Makefile | 3 +- krb5/usr.bin/ksu/Makefile | 1 + krb5/usr.bin/kswitch/Makefile | 3 +- krb5/usr.bin/ktutil/Makefile | 3 +- krb5/usr.bin/kvno/Makefile | 3 +- krb5/usr.bin/sclient/Makefile | 3 +- krb5/usr.bin/sim_client/Makefile | 3 +- krb5/usr.sbin/gss-server/Makefile | 3 +- krb5/usr.sbin/kadmin.local/Makefile | 3 +- krb5/usr.sbin/kdb5_util/Makefile | 3 +- krb5/usr.sbin/sim_server/Makefile | 3 +- krb5/usr.sbin/sserver/Makefile | 3 +- krb5/util/et/version.map | 2 + krb5/util/profile/Makefile | 4 +- krb5/util/profile/version.map | 74 -- krb5/util/support/version.map | 5 + krb5/util/verto/version.map | 7 + lib/libpam/modules/pam_krb5/Makefile | 1 + lib/libpam/modules/pam_ksu/Makefile | 1 + share/mk/src.libnames.mk | 2 +- tools/build/depend-cleanup.sh | 9 + tools/build/mk/OptionalObsoleteFiles.inc | 2 - 64 files changed, 2103 insertions(+), 111 deletions(-) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 8f44feb757e5..5231cbb3fe13 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -51,6 +51,10 @@ # xargs -n1 | sort | uniq -d; # done +# 20260120: Made libkrb5profile INTERNALLIB +OLD_LIBS+=usr/lib/libkrb5profile.so.122 +OLD_FILES+=usr/lib/libkrb5profile.so + # 20260114: remove ncurses html documentation OLD_FILES+=usr/share/doc/ncurses/hackguide.html OLD_FILES+=usr/share/doc/ncurses/ncurses-intro.html diff --git a/krb5/lib/apputils/Makefile b/krb5/lib/apputils/Makefile index 1a79b3800863..38491579a619 100644 --- a/krb5/lib/apputils/Makefile +++ b/krb5/lib/apputils/Makefile @@ -22,6 +22,7 @@ SRCS= net-server.c \ CFLAGS+=-I${KRB5_DIR}/lib/apputils \ -I${KRB5_DIR}/include \ -I${KRB5_SRCTOP}/include \ + -I${KRB5_OBJTOP}/util/profile \ -I${.OBJDIR} .include diff --git a/krb5/lib/crypto/Makefile b/krb5/lib/crypto/Makefile index 9521b48f020c..a130a858cfa4 100644 --- a/krb5/lib/crypto/Makefile +++ b/krb5/lib/crypto/Makefile @@ -41,6 +41,7 @@ CFLAGS+=-I${.CURDIR:H:H}/include \ -I${KRB5_DIR}/lib/crypto/builtin/md5 \ -I${KRB5_DIR}/lib/crypto/builtin/sha1 \ -I${KRB5_DIR}/lib/crypto/builtin/sha2 \ - -I${SRCTOP}/crypto/openssl/include + -I${SRCTOP}/crypto/openssl/include \ + -I${KRB5_OBJTOP}/util/profile .include diff --git a/krb5/lib/crypto/version.map b/krb5/lib/crypto/version.map index 702abf195db0..4cb528537201 100644 --- a/krb5/lib/crypto/version.map +++ b/krb5/lib/crypto/version.map @@ -106,5 +106,64 @@ k5crypto_3_MIT { k5_enctype_to_ssf; krb5int_c_deprecated_enctype; krb5_c_checksum_length; + k5_derive_random_rfc3961; + k5_des_fixup_key_parity; + k5_iov_cursor_get; + k5_iov_cursor_init; + k5_iov_cursor_put; + k5_rand2key_des3; + k5_rand2key_direct; + k5_sp800_108_counter_hmac; + k5_sp800_108_feedback_cmac; + krb5_decrypt_data; + krb5_random_confounder; + krb5int_MD4Final; + krb5int_MD4Init; + krb5int_MD4Update; + krb5int_aes2_crypto_length; + krb5int_aes2_prf; + krb5int_aes2_string_to_key; + krb5int_aes_crypto_length; + krb5int_aes_string_to_key; + krb5int_arcfour_crypto_length; + krb5int_arcfour_decrypt; + krb5int_arcfour_encrypt; + krb5int_arcfour_prf; + krb5int_arcfour_string_to_key; + krb5int_arcfour_translate_usage; + krb5int_c_iov_decrypt_stream; + krb5int_c_locate_iov; + krb5int_c_padding_length; + krb5int_camellia_crypto_length; + krb5int_camellia_string_to_key; + krb5int_cksumtypes_list; + krb5int_default_free_state; + krb5int_derive_keyblock; + krb5int_des_init_state; + krb5int_des_prf; + krb5int_dk_checksum; + krb5int_dk_cmac_checksum; + krb5int_dk_cmac_decrypt; + krb5int_dk_cmac_encrypt; + krb5int_dk_cmac_prf; + krb5int_dk_crypto_length; + krb5int_dk_decrypt; + krb5int_dk_encrypt; + krb5int_dk_prf; + krb5int_dk_string_to_key; + krb5int_enctypes_list; + krb5int_etm_checksum; + krb5int_etm_decrypt; + krb5int_etm_encrypt; + krb5int_hash_sha1; + krb5int_hmac_keyblock; + krb5int_hmacmd5_checksum; + krb5int_pbkdf2_hmac; + krb5int_raw_crypto_length; + krb5int_raw_decrypt; + krb5int_raw_encrypt; + krb5int_unkeyed_checksum; + mit_des_fixup_key_parity; + unsupported_etypes; }; HIDDEN { local: __*; _rest*; _save*; *; }; diff --git a/krb5/lib/gssapi/Makefile b/krb5/lib/gssapi/Makefile index a434b29a2dfb..eca8dd6ffde9 100644 --- a/krb5/lib/gssapi/Makefile +++ b/krb5/lib/gssapi/Makefile @@ -43,7 +43,8 @@ CFLAGS+=${DEFINES} \ -I${KRB5_OBJTOP}/lib/gssapi \ -I${KRB5_OBJTOP}/lib \ -I${KRB5_DIR}/include \ - -I${KRB5_SRCTOP}/include + -I${KRB5_SRCTOP}/include \ + -I${KRB5_OBJTOP}/util/profile .include diff --git a/krb5/lib/gssapi/version.map b/krb5/lib/gssapi/version.map index 42f32cc55edf..e6358e8226fe 100644 --- a/krb5/lib/gssapi/version.map +++ b/krb5/lib/gssapi/version.map @@ -172,5 +172,313 @@ gssapi_krb5_2_MIT { gss_add_cred_from; gss_store_cred_into; gssint_g_seqstate_init; + GSS_C_INQ_ODBC_SESSION_KEY; + et_ggss_error_table; + et_k5g_error_table; + generic_gss_add_buffer_set_member; + generic_gss_add_oid_set_member; + generic_gss_copy_oid; + generic_gss_copy_oid_set; + generic_gss_create_empty_buffer_set; + generic_gss_create_empty_oid_set; + generic_gss_display_mech_attr; + generic_gss_oid_compose; + generic_gss_oid_decompose; + generic_gss_oid_to_str; + generic_gss_release_buffer; + generic_gss_release_buffer_set; + generic_gss_release_oid; + generic_gss_release_oid_set; + generic_gss_str_to_oid; + generic_gss_test_oid_set_member; + gss_krb5int_ccache_name; + gss_krb5int_copy_ccache; + gss_krb5int_export_lucid_sec_context; + gss_krb5int_extract_authtime_from_sec_context; + gss_krb5int_extract_authz_data_from_sec_context; + gss_krb5int_free_lucid_sec_context; + gss_krb5int_get_cred_impersonator; + gss_krb5int_get_tkt_flags; + gss_krb5int_import_cred; + gss_krb5int_initialize_library; + gss_krb5int_inq_odbc_session_key; + gss_krb5int_inq_sspi_session_key; + gss_krb5int_lib_fini; + gss_krb5int_lib_init; + gss_krb5int_make_seal_token_v3_iov; + gss_krb5int_register_acceptor_identity; + gss_krb5int_rotate_left; + gss_krb5int_sec_context_sasl_ssf; + gss_krb5int_set_allowable_enctypes; + gss_krb5int_set_cred_rcache; + gss_krb5int_unseal_v3_iov; + gss_ma_known_attrs; + gss_mech_set_spnego; + gss_mech_spnego; + gss_spnegoint_lib_fini; + gss_spnegoint_lib_init; + gssint_convert_name_to_union_name; + gssint_create_copy_buffer; + gssint_create_union_context; + gssint_delete_internal_sec_context; + gssint_display_internal_name; + gssint_export_internal_name; + gssint_g_display_com_err_status; + gssint_g_display_major_status; + gssint_g_get_token_header; + gssint_g_make_string_buffer; + gssint_g_make_token_header; + gssint_g_seqstate_check; + gssint_g_seqstate_externalize; + gssint_g_seqstate_free; + gssint_g_seqstate_internalize; + gssint_g_seqstate_size; + gssint_g_token_size; + gssint_g_verify_token_header; + gssint_get_mech_type; + gssint_get_mechanism; + gssint_get_mechanism_cred; + gssint_get_modOptions; + gssint_get_public_oid; + gssint_import_internal_name; + gssint_krb5_keytab_lock; + gssint_make_public_oid_set; + gssint_mecherrmap_destroy; + gssint_mecherrmap_get; + gssint_mecherrmap_init; + gssint_mecherrmap_map; + gssint_mecherrmap_map_errcode; + gssint_mechglue_initialize_library; + gssint_register_mechinfo; + gssint_release_internal_name; + gssint_select_mech_type; + gssint_unwrap_aead; + gssint_wrap_aead; + gssspi_exchange_meta_data; + gssspi_query_mechanism_info; + gssspi_query_meta_data; + iakerb_gss_accept_sec_context; + iakerb_gss_acquire_cred; + iakerb_gss_acquire_cred_from; + iakerb_gss_acquire_cred_with_password; + iakerb_gss_context_time; + iakerb_gss_delete_sec_context; + iakerb_gss_export_sec_context; + iakerb_gss_get_mic; + iakerb_gss_get_mic_iov; + iakerb_gss_get_mic_iov_length; + iakerb_gss_import_name; + iakerb_gss_import_sec_context; + iakerb_gss_init_sec_context; + iakerb_gss_inquire_context; + iakerb_gss_inquire_sec_context_by_oid; + iakerb_gss_process_context_token; + iakerb_gss_pseudo_random; + iakerb_gss_set_sec_context_option; + iakerb_gss_unwrap; + iakerb_gss_unwrap_iov; + iakerb_gss_verify_mic; + iakerb_gss_verify_mic_iov; + iakerb_gss_wrap; + iakerb_gss_wrap_iov; + iakerb_gss_wrap_iov_length; + iakerb_gss_wrap_size_limit; + iakerb_make_finished; + iakerb_verify_finished; + initialize_ggss_error_table; + initialize_k5g_error_table; + kg_acceptor_princ; + kg_all_mechs; + kg_allocate_iov; + kg_arcfour_docrypt; + kg_arcfour_docrypt_iov; + kg_caller_provided_ccache_name; + kg_checksum_channel_bindings; + kg_compare_name; + kg_compose_deleg_cred; + kg_confounder_size; + kg_cred_resolve; + kg_cred_set_initial_refresh; + kg_cred_time_to_refresh; + kg_ctx_externalize; + kg_ctx_internalize; + kg_ctx_size; + kg_decrypt; + kg_decrypt_iov; + kg_duplicate_name; + kg_encrypt; + kg_encrypt_inplace; + kg_encrypt_iov; + kg_fixup_padding_iov; + kg_get_ccache_name; + kg_get_defcred; + kg_get_seq_num; + kg_init_name; + kg_integ_only_iov; + kg_iov_msglen; + kg_kdc_flag_mutex; + kg_locate_header_iov; + kg_locate_iov; + kg_make_checksum_iov_v1; + kg_make_checksum_iov_v3; + kg_make_confounder; + kg_make_seed; + kg_make_seq_num; + kg_release_iov; + kg_release_name; + kg_seal; + kg_seal_iov; + kg_seal_iov_length; + kg_set_ccache_name; + kg_setup_keys; + kg_sync_ccache_name; + kg_translate_flag_iov; + kg_unseal_iov; + kg_value_from_cred_store; + kg_verify_checksum_iov_v3; + kg_verify_checksum_v1; + kg_verify_checksum_v3; + kg_verify_mic_v1; + krb5_gss_accept_sec_context; + krb5_gss_accept_sec_context_ext; + krb5_gss_acquire_cred; + krb5_gss_acquire_cred_from; + krb5_gss_acquire_cred_impersonate_name; + krb5_gss_acquire_cred_with_password; + krb5_gss_canonicalize_name; + krb5_gss_compare_name; + krb5_gss_context_time; + krb5_gss_convert_static_mech_oid; + krb5_gss_delete_error_info; + krb5_gss_delete_name_attribute; + krb5_gss_delete_sec_context; + krb5_gss_display_name; + krb5_gss_display_status; + krb5_gss_duplicate_name; + krb5_gss_export_cred; + krb5_gss_export_name; + krb5_gss_export_name_composite; + krb5_gss_export_sec_context; + krb5_gss_get_error_message; + krb5_gss_get_mic; + krb5_gss_get_mic_iov; + krb5_gss_get_mic_iov_length; + krb5_gss_get_name_attribute; + krb5_gss_import_cred; + krb5_gss_import_name; + krb5_gss_import_sec_context; + krb5_gss_indicate_mechs; + krb5_gss_init_context; + krb5_gss_init_sec_context; + krb5_gss_init_sec_context_ext; + krb5_gss_inquire_context; + krb5_gss_inquire_cred; + krb5_gss_inquire_cred_by_mech; + krb5_gss_inquire_name; + krb5_gss_inquire_names_for_mech; + krb5_gss_inquire_sec_context_by_oid; + krb5_gss_internal_release_oid; + krb5_gss_map_name_to_any; + krb5_gss_oid_array; + krb5_gss_process_context_token; + krb5_gss_pseudo_random; + krb5_gss_release_any_name_mapping; + krb5_gss_release_cred; + krb5_gss_release_name; + krb5_gss_release_oid; + krb5_gss_save_error_info; + krb5_gss_save_error_message; + krb5_gss_save_error_string; + krb5_gss_set_name_attribute; + krb5_gss_set_sec_context_option; + krb5_gss_store_cred; + krb5_gss_store_cred_into; + krb5_gss_unwrap; + krb5_gss_unwrap_iov; + krb5_gss_validate_cred; + krb5_gss_validate_cred_1; + krb5_gss_verify_mic; + krb5_gss_verify_mic_iov; + krb5_gss_wrap; + krb5_gss_wrap_iov; + krb5_gss_wrap_iov_length; + krb5_gss_wrap_size_limit; + krb5int_gss_use_kdc_context; + negoex_accept; + negoex_add_auth_mech; + negoex_add_exchange_message; + negoex_add_nego_message; + negoex_add_verify_message; + negoex_add_verify_no_key_alert; + negoex_common_auth_schemes; + negoex_delete_auth_mech; + negoex_init; + negoex_locate_alert_message; + negoex_locate_auth_scheme; + negoex_locate_exchange_message; + negoex_locate_nego_message; + negoex_locate_verify_message; + negoex_parse_token; + negoex_prep_context_for_negoex; + negoex_prep_context_for_spnego; + negoex_random; + negoex_release_context; + negoex_restrict_auth_schemes; + negoex_select_auth_mech; + spnego_gss_accept_sec_context; + spnego_gss_acquire_cred; + spnego_gss_acquire_cred_from; + spnego_gss_acquire_cred_impersonate_name; + spnego_gss_acquire_cred_with_password; + spnego_gss_compare_name; + spnego_gss_complete_auth_token; + spnego_gss_context_time; + spnego_gss_delete_name_attribute; + spnego_gss_delete_sec_context; + spnego_gss_display_name; + spnego_gss_display_name_ext; + spnego_gss_display_status; + spnego_gss_duplicate_name; + spnego_gss_export_cred; + spnego_gss_export_name_composite; + spnego_gss_export_sec_context; + spnego_gss_get_mic; + spnego_gss_get_mic_iov; + spnego_gss_get_mic_iov_length; + spnego_gss_get_name_attribute; + spnego_gss_import_cred; + spnego_gss_import_name; + spnego_gss_import_sec_context; + spnego_gss_init_sec_context; + spnego_gss_inquire_attrs_for_mech; + spnego_gss_inquire_context; + spnego_gss_inquire_cred; + spnego_gss_inquire_cred_by_oid; + spnego_gss_inquire_mech_for_saslname; + spnego_gss_inquire_name; + spnego_gss_inquire_names_for_mech; + spnego_gss_inquire_saslname_for_mech; + spnego_gss_inquire_sec_context_by_oid; + spnego_gss_localname; + spnego_gss_map_name_to_any; + spnego_gss_process_context_token; + spnego_gss_pseudo_random; + spnego_gss_release_any_name_mapping; + spnego_gss_release_cred; + spnego_gss_release_name; + spnego_gss_set_cred_option; + spnego_gss_set_name_attribute; + spnego_gss_set_neg_mechs; + spnego_gss_set_sec_context_option; + spnego_gss_unwrap; + spnego_gss_unwrap_aead; + spnego_gss_unwrap_iov; + spnego_gss_verify_mic; + spnego_gss_verify_mic_iov; + spnego_gss_wrap; + spnego_gss_wrap_aead; + spnego_gss_wrap_iov; + spnego_gss_wrap_iov_length; + spnego_gss_wrap_size_limit; }; HIDDEN { local: __*; _rest*; _save*; *; }; diff --git a/krb5/lib/kadm5clnt/Makefile b/krb5/lib/kadm5clnt/Makefile index ef01a5f779e3..27546a87949e 100644 --- a/krb5/lib/kadm5clnt/Makefile +++ b/krb5/lib/kadm5clnt/Makefile @@ -35,7 +35,8 @@ CFLAGS+=-I${KRB5_DIR}/lib \ -I${KRB5_DIR}/include \ -I${KRB5_OBJTOP}/include/krb5_private \ -I${KRB5_SRCTOP}/include \ - -I${KRB5_OBJTOP}/lib + -I${KRB5_OBJTOP}/lib \ + -I${KRB5_OBJTOP}/util/profile INCSDIR=${INCLUDEDIR}/kadm5 INCS= admin.h \ diff --git a/krb5/lib/kadm5clnt/version.map b/krb5/lib/kadm5clnt/version.map index bb3feb11cff1..4343dbd9f04e 100644 --- a/krb5/lib/kadm5clnt/version.map +++ b/krb5/lib/kadm5clnt/version.map @@ -117,5 +117,41 @@ kadm5clnt_mit_12_MIT { kadm5_init_iprop; xdr_calias_arg; kadm5_create_alias; + chpass_principal3_2; + chpass_principal_2; + chrand_principal3_2; + chrand_principal_2; + create_alias_2; + create_policy_2; + create_principal3_2; + create_principal_2; + delete_policy_2; + delete_principal_2; + et_ovk_error_table; + et_ovku_error_table; + get_policy_2; + get_pols_2; + get_principal_2; + get_principal_keys_2; + get_princs_2; + get_privs_2; + get_strings_2; + init_2; + initialize_ovk_error_table; + initialize_ovku_error_table; + krb5_aprof_get_string_all; + modify_policy_2; + modify_principal_2; + purgekeys_2; + rename_principal_2; + set_string_2; + setkey_principal3_2; + setkey_principal4_2; + setkey_principal_2; + xdr_gstrings_arg; + xdr_gstrings_ret; + xdr_krb5_string_attr; + xdr_purgekeys_arg; + xdr_sstring_arg; }; HIDDEN { local: __*; _rest*; _save*; *; }; diff --git a/krb5/lib/kadm5srv/Makefile b/krb5/lib/kadm5srv/Makefile index 9eecd20ca822..826a9edad25a 100644 --- a/krb5/lib/kadm5srv/Makefile +++ b/krb5/lib/kadm5srv/Makefile @@ -41,7 +41,8 @@ CFLAGS+=-I${KRB5_DIR}/lib \ -I${KRB5_OBJTOP}/lib \ -I${KRB5_OBJTOP}/lib/gssapi \ -I${KRB5_DIR}/lib/gssapi/krb5 \ - -I${KRB5_DIR}/lib/gssapi/generic + -I${KRB5_DIR}/lib/gssapi/generic \ + -I${KRB5_OBJTOP}/util/profile CWARNFLAGS.gcc+=-Wno-alloc-size-larger-than GEN_KADM_ERR= kadm_err.et diff --git a/krb5/lib/kadm5srv/version.map b/krb5/lib/kadm5srv/version.map index 4eb5ba7c3ead..d8dc8cfe0b0d 100644 --- a/krb5/lib/kadm5srv/version.map +++ b/krb5/lib/kadm5srv/version.map @@ -136,5 +136,34 @@ kadm5srv_mit_12_MIT { kadm5_init_iprop; xdr_calias_arg; kadm5_create_alias; + destroy_pwqual; + et_ovk_error_table; + et_ovku_error_table; + init_pwqual; + initialize_ovk_error_table; + initialize_ovku_error_table; + k5_kadm5_hook_alias; + k5_kadm5_hook_chpass; + k5_kadm5_hook_create; + k5_kadm5_hook_free_handles; + k5_kadm5_hook_load; + k5_kadm5_hook_modify; + k5_kadm5_hook_remove; + k5_kadm5_hook_rename; + k5_pwqual_check; + k5_pwqual_free_handles; + k5_pwqual_load; + k5_pwqual_name; + kadm5_get_admin_service_name; + kdb_free_keyblocks; + kdb_get_active_mkey; + kdb_get_entry; + kdb_get_hist_key; + master_keyblock; + pwqual_dict_initvt; + pwqual_empty_initvt; + pwqual_hesiod_initvt; + pwqual_princ_initvt; + xdr_kadm5_key_data; }; HIDDEN { local: __*; _rest*; _save*; *; }; diff --git a/krb5/lib/kadmin_common/Makefile b/krb5/lib/kadmin_common/Makefile index 9eed31bc94f3..926a7b266c05 100644 --- a/krb5/lib/kadmin_common/Makefile +++ b/krb5/lib/kadmin_common/Makefile @@ -27,6 +27,7 @@ CFLAGS+=-I${KRB5_DIR}/lib/krad \ -I${KRB5_SRCTOP}/include \ -I${KRB5_DIR}/util \ -I${KRB5_OBJTOP}/util \ + -I${KRB5_OBJTOP}/util/profile \ -I${.OBJDIR} CLEANFILES= kadmin_ct.c ktutil_ct.c diff --git a/krb5/lib/kdb/Makefile b/krb5/lib/kdb/Makefile index 80039ad83502..52087f9cd389 100644 --- a/krb5/lib/kdb/Makefile +++ b/krb5/lib/kdb/Makefile @@ -37,7 +37,8 @@ CFLAGS+=${DEFINES} \ -I${KRB5_DIR}/lib/kdb \ -I${KRB5_OBJTOP}/lib/kdb \ -I${KRB5_DIR}/include \ - -I${KRB5_SRCTOP}/include + -I${KRB5_SRCTOP}/include \ + -I${KRB5_OBJTOP}/util/profile ADB_ERR= adb_err.et ADB_ERR_C= ${ADB_ERR:S/.et$/.c/} diff --git a/krb5/lib/kdb/version.map b/krb5/lib/kdb/version.map index 54a093ff72bc..4a0b0d3df1b7 100644 --- a/krb5/lib/kdb/version.map +++ b/krb5/lib/kdb/version.map @@ -110,5 +110,32 @@ kdb5_10_MIT { krb5_dbe_sort_key_data; krb5_dbe_make_alias_entry; krb5_dbe_read_alias; + et_adb_error_table; + initialize_adb_error_table; + krb5_db_def_fetch_mkey; + krb5_db_def_rename_principal; + krb5_db_load_module; + krb5_dbe_def_cpw; + krb5_dbe_def_search_enctype; + krb5_dbe_delete_tl_data; + krb5_dbe_free_tl_data; + krb5_def_fetch_mkey_list; + krb5int_delete_principal_no_log; + krb5int_put_principal_no_log; + ulog_conv_2dbentry; + ulog_conv_2logentry; + xdr_kdb_sno_t; + xdr_kdb_ulog_t; + xdr_kdbe_attr_type_t; + xdr_kdbe_data_t; + xdr_kdbe_key_t; + xdr_kdbe_princ_t; + xdr_kdbe_pw_hist_t; + xdr_kdbe_t; + xdr_kdbe_time_t; + xdr_kdbe_tl_t; + xdr_kdbe_val_t; + xdr_update_status_t; + xdr_utf8str_t; }; HIDDEN { local: __*; _rest*; _save*; *; }; diff --git a/krb5/lib/kprop_util/Makefile b/krb5/lib/kprop_util/Makefile index aaaeb969058d..d29f17e20b65 100644 --- a/krb5/lib/kprop_util/Makefile +++ b/krb5/lib/kprop_util/Makefile @@ -21,6 +21,7 @@ SRCS= kprop_util.c CFLAGS+=-I${KRB5_DIR}/lib/krad \ -I${KRB5_DIR}/include \ -I${KRB5_SRCTOP}/include \ + -I${KRB5_OBJTOP}/util/profile \ -I${.OBJDIR} .include diff --git a/krb5/lib/krad/Makefile b/krb5/lib/krad/Makefile index 36074dff1296..17cd4f8142b5 100644 --- a/krb5/lib/krad/Makefile +++ b/krb5/lib/krad/Makefile @@ -27,6 +27,7 @@ SRCS= attr.c \ CFLAGS+=-I${KRB5_DIR}/lib/krad \ -I${KRB5_DIR}/include \ -I${KRB5_SRCTOP}/include \ + -I${KRB5_OBJTOP}/util/profile \ -I${.OBJDIR} .include diff --git a/krb5/lib/krad/version.map b/krb5/lib/krad/version.map index a18fa4665e50..6ffe589a4226 100644 --- a/krb5/lib/krad/version.map +++ b/krb5/lib/krad/version.map @@ -23,5 +23,16 @@ krad_0_MIT { krad_client_new; krad_client_free; krad_client_send; + kr_attr_decode; + kr_attr_encode; + kr_attr_valid; + kr_attrset_decode; + kr_attrset_encode; + kr_remote_cancel; + kr_remote_cancel_all; + kr_remote_equals; + kr_remote_free; + kr_remote_new; + kr_remote_send; }; HIDDEN { local: __*; _rest*; _save*; *; }; diff --git a/krb5/lib/krb5/Makefile b/krb5/lib/krb5/Makefile index b3587cf58c2b..b232a8a3e6ee 100644 --- a/krb5/lib/krb5/Makefile +++ b/krb5/lib/krb5/Makefile @@ -51,7 +51,10 @@ CFLAGS+=${DEFINES} \ -I${KRB5_DIR}/util/profile \ -I${KRB5_DIR}/include \ -I${KRB5_SRCTOP}/include \ - -I${KRB5_DIR} + -I${KRB5_DIR} \ + -I${KRB5_OBJTOP}/util/profile + +LDFLAGS+=-Wl,--error-limit=0 MANGROUPS= KRB5 KRB5= k5identity.5 \ diff --git a/krb5/lib/krb5/version.map b/krb5/lib/krb5/version.map index 3de2fdd879d0..924737afcedc 100644 --- a/krb5/lib/krb5/version.map +++ b/krb5/lib/krb5/version.map @@ -634,5 +634,1201 @@ krb5_3_MIT { k5_addr_directional_init; k5_print_addr; k5_print_addr_port; + _krb5_use_dns_kdc; + _krb5_use_dns_realm; + anon_princ; + aux_info_address_1_untagged; + aux_info_authdata_1_untagged; + aux_info_authdata_types; + aux_info_bitstring_data; + aux_info_checksum_1_untagged; + aux_info_der_data; + aux_info_etype_info2_1_def_untagged; + aux_info_etype_info_1_def_untagged; + aux_info_etype_list; + aux_info_gstring_data; + aux_info_keyblock_1_untagged; + aux_info_oid_data; + aux_info_ostring_data; + aux_info_pa_data_2_untagged; + aux_info_pa_pk_as_rep; + aux_info_pa_spake; + aux_info_princname_1_untagged; + aux_info_req_body_8_untagged; + aux_info_spake_support_0_untagged; + aux_info_typed_data_1_untagged; + aux_info_utf8_data; + ccselect_hostname_initvt; + ccselect_k5identity_initvt; + ccselect_realm_initvt; + clpreauth_encrypted_challenge_initvt; + clpreauth_encrypted_timestamp_initvt; + clpreauth_otp_initvt; + clpreauth_sam2_initvt; + decode_krb5_auth_pack; + decode_krb5_checksum; + decode_krb5_etype_list; + decode_krb5_kdc_dh_key_info; + decode_krb5_pa_pk_as_rep; + decode_krb5_pa_pk_as_req; + decode_krb5_principal_name; + decode_krb5_reply_key_pack; + decode_krb5_safe_with_body; + decode_krb5_td_dh_parameters; + decode_krb5_td_trusted_certifiers; + encode_krb5_auth_pack; + encode_krb5_etype_list; + encode_krb5_fast_req; + encode_krb5_kdc_dh_key_info; + encode_krb5_pa_fx_fast_request; + encode_krb5_pa_pac_req; + encode_krb5_pa_pk_as_rep; + encode_krb5_pa_pk_as_req; + encode_krb5_reply_key_pack; + encode_krb5_safe_with_body; + encode_krb5_setpw_req; + encode_krb5_td_dh_parameters; + encode_krb5_td_trusted_certifiers; + et_k5e1_error_table; + et_prof_error_table; + hostrealm_dns_initvt; + hostrealm_domain_initvt; + hostrealm_profile_initvt; + hostrealm_registry_initvt; + initialize_prof_error_table; + interface_names; + k5_asn1_decode_atype; + k5_asn1_decode_bitstring; + k5_asn1_decode_bool; + k5_asn1_decode_bytestring; + k5_asn1_decode_generaltime; + k5_asn1_decode_int; + k5_asn1_decode_uint; + k5_asn1_encode_atype; + k5_asn1_encode_bitstring; + k5_asn1_encode_bool; + k5_asn1_encode_bytestring; + k5_asn1_encode_generaltime; + k5_asn1_encode_int; + k5_asn1_encode_uint; + k5_asn1_full_decode; + k5_asn1_full_encode; + k5_atype_ad_kdc_issued; + k5_atype_ad_kdcissued_0; + k5_atype_ad_kdcissued_0_untagged; + k5_atype_ad_kdcissued_1; + k5_atype_ad_kdcissued_1_untagged; + k5_atype_ad_kdcissued_2; + k5_atype_ad_kdcissued_2_untagged; + k5_atype_ad_kdcissued_3; + k5_atype_ad_kdcissued_3_untagged; + k5_atype_address; + k5_atype_address_0; + k5_atype_address_0_untagged; + k5_atype_address_1; + k5_atype_address_1_untagged; + k5_atype_address_ptr; + k5_atype_algid_0; + k5_atype_algid_1; + k5_atype_algorithm_identifier; + k5_atype_ap_rep; + k5_atype_ap_rep_0; + k5_atype_ap_rep_1; + k5_atype_ap_rep_2; + k5_atype_ap_rep_2_untagged; + k5_atype_ap_rep_enc_part; + k5_atype_ap_rep_enc_part_0; + k5_atype_ap_rep_enc_part_0_untagged; + k5_atype_ap_rep_enc_part_1; + k5_atype_ap_rep_enc_part_1_untagged; + k5_atype_ap_rep_enc_part_2; + k5_atype_ap_rep_enc_part_2_untagged; + k5_atype_ap_rep_enc_part_3; + k5_atype_ap_rep_enc_part_3_untagged; + k5_atype_ap_rep_msg_type; + k5_atype_ap_req; + k5_atype_ap_req_0; + k5_atype_ap_req_1; + k5_atype_ap_req_2; + k5_atype_ap_req_2_untagged; + k5_atype_ap_req_3; + k5_atype_ap_req_3_untagged; + k5_atype_ap_req_4; + k5_atype_ap_req_4_untagged; + k5_atype_ap_req_msg_type; + k5_atype_as_rep; + k5_atype_as_req; + k5_atype_as_req_2; + k5_atype_as_req_encode; + k5_atype_as_req_msg_type; + k5_atype_auth_data; + k5_atype_auth_data_ptr; + k5_atype_auth_pack; + k5_atype_auth_pack_0; + k5_atype_auth_pack_0_untagged; + k5_atype_auth_pack_1; + k5_atype_auth_pack_1_untagged; + k5_atype_auth_pack_2; + k5_atype_auth_pack_2_untagged; + k5_atype_auth_pack_3; + k5_atype_auth_pack_3_untagged; + k5_atype_auth_pack_4; + k5_atype_auth_pack_4_untagged; + k5_atype_authdata_0; + k5_atype_authdata_0_untagged; + k5_atype_authdata_1; + k5_atype_authdata_1_untagged; + k5_atype_authdata_elt; + k5_atype_authdata_elt_ptr; + k5_atype_authdata_elt_type; + k5_atype_authdata_elt_type_0; + k5_atype_authdata_types; + k5_atype_authenticator; + k5_atype_authenticator_0; + k5_atype_authenticator_1; + k5_atype_authenticator_1_untagged; + k5_atype_authenticator_2; + k5_atype_authenticator_2_untagged; + k5_atype_authenticator_3; + k5_atype_authenticator_3_untagged; + k5_atype_authenticator_4; + k5_atype_authenticator_4_untagged; + k5_atype_authenticator_5; + k5_atype_authenticator_5_untagged; + k5_atype_authenticator_6; + k5_atype_authenticator_6_untagged; + k5_atype_authenticator_7; + k5_atype_authenticator_7_untagged; + k5_atype_authenticator_8; + k5_atype_authenticator_8_untagged; + k5_atype_bitstring_data; + k5_atype_cammac; + k5_atype_cammac_0; + k5_atype_cammac_0_untagged; + k5_atype_cammac_1; + k5_atype_cammac_1_untagged; + k5_atype_cammac_2; + k5_atype_cammac_2_untagged; + k5_atype_cammac_3; + k5_atype_cammac_3_untagged; + k5_atype_checksum; + k5_atype_checksum_0; + k5_atype_checksum_0_untagged; + k5_atype_checksum_1; + k5_atype_checksum_1_untagged; + k5_atype_checksum_ptr; + k5_atype_cred_0; + k5_atype_cred_1; + k5_atype_cred_2; + k5_atype_cred_2_untagged; + k5_atype_cred_3; + k5_atype_cred_3_untagged; + k5_atype_cred_info; + k5_atype_cred_info_0; + k5_atype_cred_info_0_untagged; + k5_atype_cred_info_1; + k5_atype_cred_info_10; + k5_atype_cred_info_10_untagged; + k5_atype_cred_info_1_untagged; + k5_atype_cred_info_2; + k5_atype_cred_info_2_untagged; + k5_atype_cred_info_3; + k5_atype_cred_info_3_untagged; + k5_atype_cred_info_4; + k5_atype_cred_info_4_untagged; + k5_atype_cred_info_5; + k5_atype_cred_info_5_untagged; *** 2018 LINES SKIPPED *** From nobody Tue Jan 20 14:42:44 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwVRS5tDmz6PfMl for ; Tue, 20 Jan 2026 14:42: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwVRS4SXbz3xdH for ; Tue, 20 Jan 2026 14:42:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768920164; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bxx61Cy1aVqfz36ByEPcZyAIKNPw8J4vsOsWtEsVlNE=; b=rMNKT0EQpvEm9quvN3biNgHhakQvsYaLqww11cWHV/0/h/ZMGhnCldjOevUV+u/UR4vKB7 q9OHInLgGVP1CTFUQ8g5aLVNKhL0+hOOuWMBv8cKGVTJ0Ci1qYDMrPi/PAQvuRO+YxEXwt c55Cjsq3jgzAFZjPiEAENqYdDfyZNUjBJwYh8dgu9fc9FhAsUa8tXbBjWslO7Nx+sQLfYi 96LRZ3A6UwCJdUH1pNgLBCd7uvrFr2/2zyM2NWPIF9LCgiLH9Ic8aYRJtH8YinWskYEjGZ b6hlB9VZTpCgzSSdrzFukq//GkBsSSBaJtEDnhpAmjTsTn/43avwMrTUjIDAfQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768920164; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bxx61Cy1aVqfz36ByEPcZyAIKNPw8J4vsOsWtEsVlNE=; b=oxPwLEHMdaV5non8PVYLZWaAsa6lrrzp+40bp2pFdCTyWD+JgcXh3LhLsJNprHiFQONw+h p7rYcdBYQRe4gQuvBFcRigq3mZDdHDg0RulZbkTdK1pZE/p7WkW/jelGGRz6ENErOh0uYp eIGG33LYPZv38MPrYh8GYKcrdFsv36T85od8FywmH/LFU4Ou7ELXJg+8ZUv3CLbLfdReyN KJGw8PgSv+Sy3klOSvGInlOG1pH7gnHel4Tr4P+YYLrpzOl2ha1I55VUt28pEmJ7Z2KKZx FdyLGxQcoIyQ00tl4fvBZXzJnA2RdrbXTc9UouN9MUY9QdSDX4zwOuf0b0XI8w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768920164; a=rsa-sha256; cv=none; b=gAlj/WSDpvoINk/IVEYftwBsdLyEjbs/ZTx8b7X7efpWPWzFrm/a41vaCnIYroci135dtX CIugEvv7XtnoOixN6swItMm5gjaRiRVEXN8Xr9fmhvYToGlS4ZMDsHX6+Y5QxNORXm/kWw ytFh55EDCXiNvG0mqsOMZj83ycEYCrOR6KK5rzQZcjdjE3kRTehvcdI7Jm9vYdPdVE7Hjy dw0Cny+kkd3/bsiMp6LSgZe8wyxSECVC99ILP0/MkSBtW7Y7ueao2Fo54u2AAHYlG4a6si y9/oT6r7tIfvnlu78k/90MwOdkV4ly+ML57kH05ke61VkV2a7qtZ33LqMGaPvg== 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 4dwVRS40rxz1LB9 for ; Tue, 20 Jan 2026 14:42:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id f369 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 14:42:44 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: be1b2da855cc - main - sys/abi_compat.h: fix UB for bintime32 handling List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: be1b2da855cc38531733b5c97891cd4a40a993bc Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 14:42:44 +0000 Message-Id: <696f9464.f369.3821ab5e@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=be1b2da855cc38531733b5c97891cd4a40a993bc commit be1b2da855cc38531733b5c97891cd4a40a993bc Author: Konstantin Belousov AuthorDate: 2026-01-12 04:46:15 +0000 Commit: Konstantin Belousov CommitDate: 2026-01-20 14:42:35 +0000 sys/abi_compat.h: fix UB for bintime32 handling Do not cast and then access potentially unaligned uint64_t in the BT_CP() macro. Use freebsd32_uint64_t type and FU64_CP() for the frac member. Noted by: des Reviewed by: des, emaste Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54663 --- sys/compat/freebsd32/freebsd32.h | 2 +- sys/sys/abi_compat.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/compat/freebsd32/freebsd32.h b/sys/compat/freebsd32/freebsd32.h index 7324f9adf70c..7d21a5be5570 100644 --- a/sys/compat/freebsd32/freebsd32.h +++ b/sys/compat/freebsd32/freebsd32.h @@ -70,7 +70,7 @@ struct itimerspec32 { struct bintime32 { time32_t sec; - uint32_t frac[2]; + freebsd32_uint64_t frac; }; struct ffclock_estimate32 { diff --git a/sys/sys/abi_compat.h b/sys/sys/abi_compat.h index 0a7110191430..bd99a21d8e23 100644 --- a/sys/sys/abi_compat.h +++ b/sys/sys/abi_compat.h @@ -77,7 +77,7 @@ #define BT_CP(src, dst, fld) do { \ CP((src).fld, (dst).fld, sec); \ - *(uint64_t *)&(dst).fld.frac[0] = (src).fld.frac; \ + FU64_CP((src).fld, (dst).fld, frac); \ } while (0) #endif /* !_COMPAT_H_ */ From nobody Tue Jan 20 14:42:43 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwVRX4qtrz6PfDT for ; Tue, 20 Jan 2026 14:42: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwVRX3lKmz3y4X for ; Tue, 20 Jan 2026 14:42:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768920168; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J/8N9EA+8qH3u/KJwsF/m2sot3IRfvt2SPl1Ky5XNBU=; b=FHtU0BUNAIl3MmIUWyQdaUpIeSYj9ywjGUBN6LNmHNJSVC2B0MHtTXccTgIi0Kqe4TXTDc FBrNM0OoBUXpnfWOeKeAAQ2zwa9B4YVY1faR+BrxWNGWPRGhjIIIZ4TndPRfaBGqJMl4xP 9LLu5+E7/flWAtZCi38yFoLOyhF/H6HlfLBnR4f5EjrIrEROmm5mmccrlR7NnffGdR0TKT LCA1bFJ0vGamiKujuLPwQCubDoDpgeYHWM9SujgVhl8NoRl3WuE0AnFun/LTTfBCtmnnSs +/RndKh/F9mqLljyOXxibEucgTrusDsYZMFNHOZbpVJPD7vIBmox+SScO4qBOA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768920168; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J/8N9EA+8qH3u/KJwsF/m2sot3IRfvt2SPl1Ky5XNBU=; b=uAUjmsJGGP5Pe3uM345R8c5vFlNTBJ1OL7pOJlHUhy3yn5OAsnEefS5gf1PCg6Upzb2KyB L5UrsA/pBdjmQti0c9n7WMZ/N/W3xCmD+t7/ZH0AgD0jVYdC2WEMO8fGhtEHGNw596Eb1d LGYSZGa/B+VsRCpufaT9aX7i4UbHE3opbZ6W0v1Whak8URa6kZ3eby7Xb+zpcssbBVr86W hrbCtJq07Isu7IE68o/XZYF3Kq/61e7zRNyglFBGiIMDK/IQ/ypRZc9n0ap1O+Ta5sMbmj Xv6EPTUr29z3J905WF9RH5Nnb+tbselurH30Jcjc26DBTdvNi/iXdEerGAtXyw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768920168; a=rsa-sha256; cv=none; b=aassgsIRAF/bTkcl33f4lnrGfjuYyWCBcEwCnIihMxNurayNYG2D/QVuWl2w+WXtr5PSPN wthm781PIdYhXLjZMR4Cc/2sm4smrXIo9rwPnxL6MaZlByXnWbHdmxEwj7BkI4qf6L2OB4 BfJafr+2uCUQWVIdTKYxfWiLjdQBL8qiw7XDFUEZL2OGFvQYGvrSeCs2i+smUdeecFt1At L3IkPjIWAlmDzNX9xvouXk9XoQOuUZ8gJAhboB0o2SptNfW+jzroNnefNl5IOqzB2HbCi3 a1VxRZj5rhvhujzmwA8wg9qMa7FYhjutvKEP3xc1hVNX1/atBB4vpbo1SWq53Q== 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 4dwVRX3F9pz1LDd for ; Tue, 20 Jan 2026 14:42:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id f398 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 14:42:43 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 96acaa960023 - main - compat32: provide a type and a macro for (u)int64_t handling on non-x86 arches List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 96acaa960023c20e852e04e7cc5c6a5faca36c67 Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 14:42:43 +0000 Message-Id: <696f9463.f398.7ea9495a@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=96acaa960023c20e852e04e7cc5c6a5faca36c67 commit 96acaa960023c20e852e04e7cc5c6a5faca36c67 Author: Konstantin Belousov AuthorDate: 2026-01-12 04:45:36 +0000 Commit: Konstantin Belousov CommitDate: 2026-01-20 14:42:35 +0000 compat32: provide a type and a macro for (u)int64_t handling on non-x86 arches uint64_t is 4-byte aligned on i386, but is 8-bytes aligned on all other 32bit arches FreeBSD supports. Provide the freebsd32_uint64_t type and the FU64_CP() macro, which are intended to be used where 32bit ABI uses (u)int64_t type, and do proper layout and copying for the aggregate type. Reviewed by: des, emaste Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54663 --- sys/compat/freebsd32/freebsd32.h | 11 ++++++++++- sys/sys/abi_compat.h | 8 ++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/sys/compat/freebsd32/freebsd32.h b/sys/compat/freebsd32/freebsd32.h index 9d724c93fee7..7324f9adf70c 100644 --- a/sys/compat/freebsd32/freebsd32.h +++ b/sys/compat/freebsd32/freebsd32.h @@ -36,8 +36,17 @@ #include /* - * i386 is the only arch with a 32-bit time_t + * i386 is the only arch with a 32-bit time_t. + * Also it is the only arch with (u)int64_t having 4-bytes alignment. */ +typedef struct { +#ifdef __amd64__ + uint32_t val[2]; +#else + uint64_t val; +#endif +} freebsd32_uint64_t; + #ifdef __amd64__ typedef int32_t time32_t; #else diff --git a/sys/sys/abi_compat.h b/sys/sys/abi_compat.h index c2233f2eac2c..0a7110191430 100644 --- a/sys/sys/abi_compat.h +++ b/sys/sys/abi_compat.h @@ -67,6 +67,14 @@ TS_CP((src), (dst), it_value); \ } while (0) +#define FU64_CP(src, dst, fld) do { \ + _Static_assert(sizeof((src).fld) == sizeof(uint64_t), \ + "FU64_CP src: " #src "." #fld "is not 8 bytes"); \ + _Static_assert(sizeof((dst).fld) == sizeof(uint64_t), \ + "FU64_CP dst: " #dst "." #fld "is not 8 bytes"); \ + memcpy(&(dst).fld, &(src).fld, sizeof(uint64_t)); \ +} while (0) + #define BT_CP(src, dst, fld) do { \ CP((src).fld, (dst).fld, sec); \ *(uint64_t *)&(dst).fld.frac[0] = (src).fld.frac; \ From nobody Tue Jan 20 15:36:09 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwWdB1KLWz6Pj7m for ; Tue, 20 Jan 2026 15:36: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwWd50TJnz49MY for ; Tue, 20 Jan 2026 15:36:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768923369; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3Y1oMINzCy53YL2nNV5InaCjwkoL9V5K5nSTQndnyg4=; b=eE43lK35sYamefgRCkT3d0eXGdB0zB0ZOZDQy4obxRZ+3Vz3ARrM/YPbVI+tGgGsDogW5G 0B9Z0S8CPQFfabaKzCQIbmkhwUT9ox0YJI1J2RA5vGVtQeCHBJzrZ3/Qo0wq9W+kw2KPaz b+kXSZ7akNmUYWX/3i9AmN9QIqUbqzvLWBaQmm/66DTi2/C5N5xOORJ0SU1NaVg2ilzc3o +d4zc/rbIGcRm946vDIuUqVBq1xWdsp8azi75iPNkqB8jZIs6N9aib2POTn8m6OB36Pqp3 pvVoXNJPfC1jSX16SNTpVKP5ALOWp84v2lJv8d/8J4syYtjOXgmZ9ZLi2H+Qng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768923369; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3Y1oMINzCy53YL2nNV5InaCjwkoL9V5K5nSTQndnyg4=; b=w0YEZw6tNya82yvaEjPmp7Qwh9220Vk2RSIHJRrlxew+785HEFYg7kdosjppbxw2tu+w6b 3SAnbnQWBAJTFPTuI/KnLzqn5BeOY0XY0Auv+LfqsjYEcvwZYDdNuKOI9uI7+6KGPKXhxt GhYEEh0oAFFy630GMbasbKPBOb74eacHORcZlj/dD+d+IddmLqAVMqnY0cy6BYbaVufQ9O 4orOCmMGq8nIiVH53Vw3uIKWZfADOVdzOKJKUWjWJQpxUQhTZHiWupd39y6rZwdVgHBHtu soqZHqSqA/ONaH6rvM/Oaa+srrhn3tEYS+iaMXvPm1gBxY4lfiVxRsrYvLKWOQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768923369; a=rsa-sha256; cv=none; b=Ig7dTMbKMZI/VTkSirJsAkZ5H3X/yYKxs1WhuoGWdbF21sR0p7vatQyJBm3XisF6nr09v9 zEVDb965+jAnLHQXnES1GyeQlxm/CNCkVSDPYDkO8HxCkMHTfaGMSFTopdwDVYJcYwwYgi q8JbifRKIyI4Uq7GW5ORMsz0a1kLCP6/8bUNrEjWRN6bIespjX9AoIu+tGR3KhcoXrm2Ta WYIJcka3XUI2ZnYNagEn0fMqOk8aAotqwy7zxV5Rl/wCc8F70C/jGsiNp4h9XbbxZxP2dO wRQSA8/gOntEVWO7hqkjHXD6phNUx0EnIyS0yWjAbXnxkpwgDJgR5HiLBxyhcQ== 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 4dwWd5023Pz1M6H for ; Tue, 20 Jan 2026 15:36:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2382d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 15:36:09 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Cy Schubert Subject: git: 6637e8f616f0 - main - krb5: Fix gcc14 build List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 6637e8f616f0e94c7801698dd11bee5ebcf3799a Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 15:36:09 +0000 Message-Id: <696fa0e9.2382d.3372540b@gitrepo.freebsd.org> The branch main has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=6637e8f616f0e94c7801698dd11bee5ebcf3799a commit 6637e8f616f0e94c7801698dd11bee5ebcf3799a Author: Cy Schubert AuthorDate: 2026-01-20 15:35:00 +0000 Commit: Cy Schubert CommitDate: 2026-01-20 15:35:00 +0000 krb5: Fix gcc14 build Fixes: 1876de606eb8 X-MFC with: 1876de606eb8 MFC After: 2 weeks --- krb5/lib/krb5/Makefile | 2 -- 1 file changed, 2 deletions(-) diff --git a/krb5/lib/krb5/Makefile b/krb5/lib/krb5/Makefile index b232a8a3e6ee..a502b10f9a03 100644 --- a/krb5/lib/krb5/Makefile +++ b/krb5/lib/krb5/Makefile @@ -54,8 +54,6 @@ CFLAGS+=${DEFINES} \ -I${KRB5_DIR} \ -I${KRB5_OBJTOP}/util/profile -LDFLAGS+=-Wl,--error-limit=0 - MANGROUPS= KRB5 KRB5= k5identity.5 \ k5login.5 \ From nobody Tue Jan 20 15:44:44 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwWq02rNpz6PjWj for ; Tue, 20 Jan 2026 15:44: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwWq02Hs7z3CC4 for ; Tue, 20 Jan 2026 15:44:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768923884; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VobHibdT+15pBpqyFlffigdEfIwhXLCB33n0f8NyKRU=; b=O1JL/vJ0hYcDU2oUKD4X2twdTElzMGm5StgleekesezLZWN3fg2GI7cNex6XWoD/3yQWRI U5OJdkXthtWWPyv6sCnPFfvta1rtYIulRFYrVx2IXu8eB3hXEaBFDMgg4IYoeC/StfzXDX l7+NRoDJ4jMIBcBSTFcfS7aUbZkPLC+Y3dN/8dg3rlSY+mInh9zen6oynzHxhZ4blzkHkv mpuCUDd5Vt1EHwMDs8a9BLHz8nRo2hdpenuveC8aqeTiCiAYjY230AQ1m7pnBEksiVdwPA dx50XfDW3Hlf/gHd0J0FVi40cL/6jX4uJHfvXPYnkplwXTt4O/zNySveE6Uk9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768923884; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VobHibdT+15pBpqyFlffigdEfIwhXLCB33n0f8NyKRU=; b=uYoH5pO4GC5wxay2OZRu7WMgy+XE61s1IqE2UDm67CGbfaZQGVaprKhuj27kx7Za+oYqYp S5NFWHaA1d7/isl9BicjUA+I4uoxV47EL20H238u+1SWlr7eNwJrCvsST/dyk7UljVy2Is 5QQJMQhRZkSEv0FUxWtlXmAod4PHiVY7vu2Zo0202hIrAXmvgVnXE1rJEQ3qiBQH94tJt1 QHfGTSzJlggVRlSs9inV4n83oIPio7WTLR+jD30AC8GCUdu1AlRnWbF/3fEHcJx9YJjnz/ JfdZ5sipeNuJGR5kWbW5+JFnI4pIRjERthkfgM7lfxnv9Ke9cAl8HuRiXu1UWw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768923884; a=rsa-sha256; cv=none; b=C26fLZ3Oodt0bxNFLT+4aIBtaIUamUZyShC0Ff+4prIZ0FKiDDWJrpYg+hbWqe42o9xeg8 ClAiTftGhV3d3JNkpUMUjyiiP1fPxxZSdo64z9vbkUSaODDXfyZnlzqyppk+vF6QbdVl3b rgcBMXdSe9j4GYcJQXVWZoFqYxa1iHFALbBrdx45s0ZkGyHRStxTq7vi4W701ISpH7Gte/ AiZos9V+gWJzFNWYJmDfprvORhsDKuwo/Z4SNA+3D2VQUBPc8PN+wRVdFhkqrYwbuCiYtQ /OrCTouLBzY4APMkV5R37EFPb1bV9UyW5A9bPdWLd9+Hk3QFu58j+S7cS2cNxA== 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 4dwWq01vLBz1Mff for ; Tue, 20 Jan 2026 15:44:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 25bc2 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 15:44:44 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 768332d61948 - main - LinuxKPI: 802.11: factor out rate logic for mandatory channels List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 768332d619484834a7866fde4bf2695d4262355a Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 15:44:44 +0000 Message-Id: <696fa2ec.25bc2.5df41946@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=768332d619484834a7866fde4bf2695d4262355a commit 768332d619484834a7866fde4bf2695d4262355a Author: Bjoern A. Zeeb AuthorDate: 2026-01-20 13:33:16 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-01-20 15:44:30 +0000 LinuxKPI: 802.11: factor out rate logic for mandatory channels I was looking at rate work for another problem and found more flags in ath9k (which we will likely never need). The documentation then revealed the "mandatory" flags as well and with discussions about cfg80211 going on I decided to use the momentum and split our "supp_rates" setup between lkpi_lsta_alloc() and wiphy_register(). There should be no functional change. While there also initialize max_rc_amsdu_len. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- .../linuxkpi/common/include/linux/ieee80211.h | 13 ++- sys/compat/linuxkpi/common/include/net/cfg80211.h | 4 +- sys/compat/linuxkpi/common/src/linux_80211.c | 110 ++++++++++++++++----- 3 files changed, 100 insertions(+), 27 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/ieee80211.h b/sys/compat/linuxkpi/common/include/linux/ieee80211.h index 12160df43915..b5051a9f7d21 100644 --- a/sys/compat/linuxkpi/common/include/linux/ieee80211.h +++ b/sys/compat/linuxkpi/common/include/linux/ieee80211.h @@ -108,7 +108,18 @@ struct ieee80211_mmie_16 { #define IEEE80211_QOS_CTL_MESH_CONTROL_PRESENT 0x0100 enum ieee80211_rate_flags { - IEEE80211_RATE_SHORT_PREAMBLE = BIT(0), + IEEE80211_RATE_SHORT_PREAMBLE = BIT(0), /* 2.4Ghz, CCK */ + IEEE80211_RATE_SUPPORTS_5MHZ = BIT(1), + IEEE80211_RATE_SUPPORTS_10MHZ = BIT(2), + IEEE80211_RATE_ERP_G = BIT(3), + + /* + * According to documentation these are flags initialized internally. + * See lkpi_wiphy_band_annotate(). + */ + IEEE80211_RATE_MANDATORY_A = BIT(4), + IEEE80211_RATE_MANDATORY_G = BIT(5), + IEEE80211_RATE_MANDATORY_B = BIT(6), }; enum ieee80211_rate_control_changed_flags { diff --git a/sys/compat/linuxkpi/common/include/net/cfg80211.h b/sys/compat/linuxkpi/common/include/net/cfg80211.h index d7ed2bc97c98..4b21f82a0762 100644 --- a/sys/compat/linuxkpi/common/include/net/cfg80211.h +++ b/sys/compat/linuxkpi/common/include/net/cfg80211.h @@ -1230,6 +1230,7 @@ struct cfg80211_ops { struct wiphy *linuxkpi_wiphy_new(const struct cfg80211_ops *, size_t); void linuxkpi_wiphy_free(struct wiphy *wiphy); +int linuxkpi_80211_wiphy_register(struct wiphy *); void linuxkpi_wiphy_work_queue(struct wiphy *, struct wiphy_work *); void linuxkpi_wiphy_work_cancel(struct wiphy *, struct wiphy_work *); @@ -1749,8 +1750,7 @@ wiphy_net(struct wiphy *wiphy) static __inline int wiphy_register(struct wiphy *wiphy) { - TODO(); - return (0); + return (linuxkpi_80211_wiphy_register(wiphy)); } static __inline void diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 1ac28dfef448..7972d9d0f667 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -896,41 +896,34 @@ lkpi_lsta_alloc(struct ieee80211vap *vap, const uint8_t mac[IEEE80211_ADDR_LEN], /* Deflink information. */ for (band = 0; band < NUM_NL80211_BANDS; band++) { struct ieee80211_supported_band *supband; + uint32_t rate_mandatory;; supband = hw->wiphy->bands[band]; if (supband == NULL) continue; + switch (band) { + case NL80211_BAND_2GHZ: + /* We have to assume 11g support here. */ + rate_mandatory = IEEE80211_RATE_MANDATORY_G | + IEEE80211_RATE_MANDATORY_B; + break; + case NL80211_BAND_5GHZ: + rate_mandatory = IEEE80211_RATE_MANDATORY_A; + break; + default: + continue; + } + for (i = 0; i < supband->n_bitrates; i++) { - switch (band) { - case NL80211_BAND_2GHZ: - switch (supband->bitrates[i].bitrate) { - case 240: /* 11g only */ - case 120: /* 11g only */ - case 110: - case 60: /* 11g only */ - case 55: - case 20: - case 10: - sta->deflink.supp_rates[band] |= BIT(i); - break; - } - break; - case NL80211_BAND_5GHZ: - switch (supband->bitrates[i].bitrate) { - case 240: - case 120: - case 60: - sta->deflink.supp_rates[band] |= BIT(i); - break; - } - break; - } + if ((supband->bitrates[i].flags & rate_mandatory) != 0) + sta->deflink.supp_rates[band] |= BIT(i); } } sta->deflink.smps_mode = IEEE80211_SMPS_OFF; sta->deflink.bandwidth = IEEE80211_STA_RX_BW_20; + sta->deflink.agg.max_rc_amsdu_len = IEEE80211_MAX_MPDU_LEN_HT_BA; sta->deflink.rx_nss = 1; sta->deflink.sta = sta; @@ -8028,6 +8021,75 @@ linuxkpi_wiphy_free(struct wiphy *wiphy) kfree(lwiphy); } +static void +lkpi_wiphy_band_annotate(struct wiphy *wiphy) +{ + int band; + + for (band = 0; band < NUM_NL80211_BANDS; band++) { + struct ieee80211_supported_band *supband; + int i; + + supband = wiphy->bands[band]; + if (supband == NULL) + continue; + + switch (band) { + case NL80211_BAND_2GHZ: + case NL80211_BAND_5GHZ: + break; + default: + IMPROVE("band %d(%s) not yet supported", + band, lkpi_nl80211_band_name(band)); + /* For bands added here, also check lkpi_lsta_alloc(). */ + continue; + } + + for (i = 0; i < supband->n_bitrates; i++) { + switch (band) { + case NL80211_BAND_2GHZ: + switch (supband->bitrates[i].bitrate) { + case 110: + case 55: + case 20: + case 10: + supband->bitrates[i].flags |= + IEEE80211_RATE_MANDATORY_B; + /* FALLTHROUGH */ + /* 11g only */ + case 240: + case 120: + case 60: + supband->bitrates[i].flags |= + IEEE80211_RATE_MANDATORY_G; + break; + } + break; + case NL80211_BAND_5GHZ: + switch (supband->bitrates[i].bitrate) { + case 240: + case 120: + case 60: + supband->bitrates[i].flags |= + IEEE80211_RATE_MANDATORY_A; + break; + } + break; + } + } + } +} + +int +linuxkpi_80211_wiphy_register(struct wiphy *wiphy) +{ + TODO("Lots of checks and initialization"); + + lkpi_wiphy_band_annotate(wiphy); + + return (0); +} + static uint32_t lkpi_cfg80211_calculate_bitrate_ht(struct rate_info *rate) { From nobody Tue Jan 20 15:48:38 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwWvc0Jbrz6Pk7v for ; Tue, 20 Jan 2026 15:48: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwWvb6B96z3DWN for ; Tue, 20 Jan 2026 15:48:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768924123; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7FitRjs7rgvI6G1tDNr4KJgbyjM2td3+ETsa9MNjREQ=; b=Q8zS/rEUF+FReanSesAeU5E/GRq5LZVVhoCvDYJLAOwL92OCH4gokcAcH9HaEdletI96g2 5XnxnD/GnrY7tkFao8UqxdlzjS6O72B14/nBrbFBwOm1iQ1cG1koI7Gam+PbJBI6qH5S5Q +xWKfNBgl2MNhP/GxNejpJMfqXLewVYCBixfN8xOw8xFOTe4Elhyff3P6pX9/iNHnukXdi s631bckHePbRv1WpqEN/H8sSfS739BnHI0O3MgFeF1InwXBDM2ELj/MmzzNlMcgIy2dcQ6 Z1NAQkPEdvVe9t/jNo0YLl2FYyKi0YlZkj7nwovr6bo0zDY9s8p0G23wEUvS7g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768924123; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7FitRjs7rgvI6G1tDNr4KJgbyjM2td3+ETsa9MNjREQ=; b=aaP4vbflUWRDy+N1Sp9liMSC04ys0t/dhBJVH4uJFoQGiGZ+yFJraAnrOuu+iP5lmNnaze GxLVg5Vn2EZc2EOW87pEemheHHXtM8DhRv+W/anCMt2t2P/1dwSON28CoCPrdUcbVEsiEV OWMmXjIxrC1GAGfCjbZ3hlPh9fqCoCTuBrKM65uIeb/xxBLnU+R9BA9wGVvF7xC+RLIgVw 1GmOTPBuHDitl5wEecHcy5cdmuzsKN+RvkpTcG7uCjJOf8F8TATec1mlwBqwEMkbWueY4I 6pfRVYU7CzCIep++TAhLi6h7BCJHFPVz6Y+zJ5OY1d8HSlecBQTAIDQDosRKsA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768924123; a=rsa-sha256; cv=none; b=q9mC3A74oxapdEjfeCUJDfCmoY5UIBfHnYO3x7smHl/j65BrCxSxvDul53bxFXk5a5ideq 1ppAYHsmd21oRQ09HnfyTcAtZ0Y770uy2IlVVAX2kKbY9BbOg6HeP63dcvJgKD+kYKxZ8s tj68S3IGBY+EM5kE/rO87qfNO1K0oJP2p6kJbNPG3rFhjM2q4UulkEbDGEcR6p8oodlezz e+yDE6klpfjGUZuFT+lt60plWGw1t/i5ZZWLB6RXuaUNO78p6Wa2l7zIhw+2Canyn38IEO nSMQZ9nL809ISJZkntFb8AOcMOlUwBtSuJdsTWs9ARH3usxJwhYfG5tlWuFlnQ== 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 4dwWvb5YLMz1Mlb for ; Tue, 20 Jan 2026 15:48:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 25a08 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 15:48:38 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: c670af3725d0 - main - net80211: correct return code for ieee80211_ampdu_request() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: c670af3725d0bb5494caf0846994ae6997175cb6 Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 15:48:38 +0000 Message-Id: <696fa3d6.25a08.564dd35e@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=c670af3725d0bb5494caf0846994ae6997175cb6 commit c670af3725d0bb5494caf0846994ae6997175cb6 Author: Bjoern A. Zeeb AuthorDate: 2026-01-20 13:48:11 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-01-20 15:45:58 +0000 net80211: correct return code for ieee80211_ampdu_request() We used to return the result of (*ic_send_action) directly but ieee80211_ampdu_request() returns 1 on success and 0 on error, which is contrary to the result of (*ic_send_action). Deal with that accordingly and update the documentation of the function. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D54794 --- sys/net80211/ieee80211_ht.c | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/sys/net80211/ieee80211_ht.c b/sys/net80211/ieee80211_ht.c index a8a767785fce..88e614e266a1 100644 --- a/sys/net80211/ieee80211_ht.c +++ b/sys/net80211/ieee80211_ht.c @@ -2766,10 +2766,15 @@ ieee80211_ampdu_enable(struct ieee80211_node *ni, return 1; } -/* - * Request A-MPDU tx aggregation. Setup local state and - * issue an ADDBA request. BA use will only happen after +/** + * @brief Request A-MPDU tx aggregation. + * + * Setup local state and issue an ADDBA request. BA use will only happen after * the other end replies with ADDBA response. + * + * @param ni ieee80211_node update + * @param tap tx_ampdu state + * @returns 1 on success and 0 on error */ int ieee80211_ampdu_request(struct ieee80211_node *ni, @@ -2777,7 +2782,7 @@ ieee80211_ampdu_request(struct ieee80211_node *ni, { struct ieee80211com *ic = ni->ni_ic; uint16_t args[5]; - int tid, dialogtoken; + int tid, dialogtoken, error; static int tokens = 0; /* XXX */ /* XXX locking */ @@ -2828,8 +2833,11 @@ ieee80211_ampdu_request(struct ieee80211_node *ni, args[4] = _IEEE80211_SHIFTMASK(tap->txa_start, IEEE80211_BASEQ_START) | _IEEE80211_SHIFTMASK(0, IEEE80211_BASEQ_FRAG) ; - return ic->ic_send_action(ni, IEEE80211_ACTION_CAT_BA, + + error = ic->ic_send_action(ni, IEEE80211_ACTION_CAT_BA, IEEE80211_ACTION_BA_ADDBA_REQUEST, args); + /* Silly return of 1 for success here. */ + return (error == 0); } /* From nobody Tue Jan 20 16:05:19 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwXH23Xkjz6Pklh for ; Tue, 20 Jan 2026 16:05:34 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wr1-f43.google.com (mail-wr1-f43.google.com [209.85.221.43]) (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 4dwXH20DRlz3GVT for ; Tue, 20 Jan 2026 16:05:34 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-wr1-f43.google.com with SMTP id ffacd0b85a97d-432dc56951eso3762488f8f.0 for ; Tue, 20 Jan 2026 08:05:33 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768925132; x=1769529932; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-gg:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=BBmtJeB9tD5sAXnop96+jO2ZhO/fw7awIyAxIM5nKa0=; b=stmuLoVm7Fsb4N4eenuwqNmmfRzqNp/QLUUsdm6CgZ1n1TUSOkI/daUGzmUN7SjVW/ L32r50AAu0kmSD8Ky8dY+gZPViaWO9fX02TB/jLrHmKZ5JEgJkDaqa8T0HvEpE+iiZAC 4nCUbtmi16QKUHH/XKTEcdVERyWHXUFofckPuwJevaBNnHm8YscyW6I76Lst5y6Z5yAy rW0lK+IyBrIoFOKMoi0y3aYYkF1oTadQpFP6LPd54AVgn0T82n3Rt0Sp+AX2MIXIcFwH ktXlr2XLizX8DxUzfamYNUhfpFDbQQgdwG93KAYN1d3Hf9ShzEtoD8EVo057reqxzIFz /Oog== X-Forwarded-Encrypted: i=1; AJvYcCXr0D/zjWmT3860fIOu2Iy/3Owa6nO5t/jLMZf/pBGgyNAF6s1b3q3JvT21lhIjEg7+ASB8eAbYvgppFhn/KDJJAYCSSA==@freebsd.org X-Gm-Message-State: AOJu0YwDxISqp3Ifugfs7HHYcFEUekolllPx2BJnkd5G9LhJB27QWsoS fOgBzxt3sRQ+fsU0Vv4u5pauxSZ7uSQwfT5B+CQuzilnVq7oDZq0MO6o/V+5RNVK2O8RHk6fcsi hQCQp X-Gm-Gg: AZuq6aIxyfsncQjy3wgsu+reczHNHrFqncfUrmkvaBgILRFCKqy25AerQ0en+0C3T58 vUoiDUhL33nNLxMHv73A7M6GD71PennMkxsNcywEM729v49+wjeuLNCARv3e01PuQC5Nhq/Qc4J m7YZ68HSySSsj5jggy8iCuG5rM/XNP+VNj5bKcDfdbGt4plAEGF0f+MNAmV42hEs0yrLTUSAueV A2hF2xKVq1PJjfkA9Q5WVJjszCB6YQoEmPwh1GXoNZobB/CZyiNTPbTjx0oOy53gONNCB2zJwoW GjsGtkZwxLaABbFLMS26qX5LeZ1GvBXh+F/f/RX3eWw0KWkrP9/RJe8ZMlZod+4IwLCGF4sjBK9 PRo4BX4L3XilJqoHq5L2LVbNM7XiwsABlSiipnZ2cctsIcQQS3oZkDmOdx/CyvQFWUHzffpBMWn VnlKYNYZHmtK2H/7ur+5T8iBmy4eVYSkU5mdPYS8IJXR7W6NY40Pdh X-Received: by 2002:a05:6000:4210:b0:430:f68f:ee96 with SMTP id ffacd0b85a97d-4358ff56807mr3854083f8f.36.1768925130893; Tue, 20 Jan 2026 08:05:30 -0800 (PST) Received: from smtpclient.apple (nat-184-7.net.cam.ac.uk. [131.111.184.7]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-43595e0a6fasm1956494f8f.10.2026.01.20.08.05.29 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 20 Jan 2026 08:05:30 -0800 (PST) Content-Type: text/plain; charset=us-ascii List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3864.300.41.1.7\)) Subject: Re: git: 96acaa960023 - main - compat32: provide a type and a macro for (u)int64_t handling on non-x86 arches From: Jessica Clarke In-Reply-To: <696f9463.f398.7ea9495a@gitrepo.freebsd.org> Date: Tue, 20 Jan 2026 16:05:19 +0000 Cc: "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <7F0190E5-8B20-40A5-9D31-1D56BCF39E71@freebsd.org> References: <696f9463.f398.7ea9495a@gitrepo.freebsd.org> To: Konstantin Belousov X-Mailer: Apple Mail (2.3864.300.41.1.7) X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.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: 4dwXH20DRlz3GVT On 20 Jan 2026, at 14:42, Konstantin Belousov wrote: >=20 > The branch main has been updated by kib: >=20 > URL: = https://cgit.FreeBSD.org/src/commit/?id=3D96acaa960023c20e852e04e7cc5c6a5f= aca36c67 >=20 > commit 96acaa960023c20e852e04e7cc5c6a5faca36c67 > Author: Konstantin Belousov > AuthorDate: 2026-01-12 04:45:36 +0000 > Commit: Konstantin Belousov > CommitDate: 2026-01-20 14:42:35 +0000 >=20 > compat32: provide a type and a macro for (u)int64_t handling on = non-x86 arches >=20 > uint64_t is 4-byte aligned on i386, but is 8-bytes aligned on all = other > 32bit arches FreeBSD supports. Provide the freebsd32_uint64_t type = and > the FU64_CP() macro, which are intended to be used where 32bit ABI = uses > (u)int64_t type, and do proper layout and copying for the aggregate = type. >=20 > Reviewed by: des, emaste > Sponsored by: The FreeBSD Foundation > MFC after: 1 week > Differential revision: https://reviews.freebsd.org/D54663 > --- > sys/compat/freebsd32/freebsd32.h | 11 ++++++++++- > sys/sys/abi_compat.h | 8 ++++++++ > 2 files changed, 18 insertions(+), 1 deletion(-) >=20 > diff --git a/sys/compat/freebsd32/freebsd32.h = b/sys/compat/freebsd32/freebsd32.h > index 9d724c93fee7..7324f9adf70c 100644 > --- a/sys/compat/freebsd32/freebsd32.h > +++ b/sys/compat/freebsd32/freebsd32.h > @@ -36,8 +36,17 @@ > #include >=20 > /* > - * i386 is the only arch with a 32-bit time_t > + * i386 is the only arch with a 32-bit time_t. > + * Also it is the only arch with (u)int64_t having 4-bytes alignment. > */ > +typedef struct { > +#ifdef __amd64__ > + uint32_t val[2]; > +#else > + uint64_t val; > +#endif > +} freebsd32_uint64_t; Any reason not to use: typedef uint64_t freebsd32_uint64_t __aligned(4); on amd64 (and normal typedef elsewhere)? Then you can just use the normal CP. See for example https://godbolt.org/z/svseWv7xo. Jessica From nobody Tue Jan 20 16:07:50 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwXKw6wkPz6PlGn; Tue, 20 Jan 2026 16:08:04 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (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 did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwXKw3Q85z3GjH; Tue, 20 Jan 2026 16:08:04 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: from tom.home (kib@localhost [127.0.0.1] (may be forged)) by kib.kiev.ua (8.18.1/8.18.1) with ESMTP id 60KG7oxK069210; Tue, 20 Jan 2026 18:07:53 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 60KG7oxK069210 Received: (from kostik@localhost) by tom.home (8.18.1/8.18.1/Submit) id 60KG7oVN069209; Tue, 20 Jan 2026 18:07:50 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Tue, 20 Jan 2026 18:07:50 +0200 From: Konstantin Belousov To: Jessica Clarke Cc: "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Subject: Re: git: 96acaa960023 - main - compat32: provide a type and a macro for (u)int64_t handling on non-x86 arches Message-ID: References: <696f9463.f398.7ea9495a@gitrepo.freebsd.org> <7F0190E5-8B20-40A5-9D31-1D56BCF39E71@freebsd.org> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <7F0190E5-8B20-40A5-9D31-1D56BCF39E71@freebsd.org> X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.2 X-Spam-Checker-Version: SpamAssassin 4.0.2 (2025-08-27) on tom.home X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4dwXKw3Q85z3GjH On Tue, Jan 20, 2026 at 04:05:19PM +0000, Jessica Clarke wrote: > On 20 Jan 2026, at 14:42, Konstantin Belousov wrote: > > > > The branch main has been updated by kib: > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=96acaa960023c20e852e04e7cc5c6a5faca36c67 > > > > commit 96acaa960023c20e852e04e7cc5c6a5faca36c67 > > Author: Konstantin Belousov > > AuthorDate: 2026-01-12 04:45:36 +0000 > > Commit: Konstantin Belousov > > CommitDate: 2026-01-20 14:42:35 +0000 > > > > compat32: provide a type and a macro for (u)int64_t handling on non-x86 arches > > > > uint64_t is 4-byte aligned on i386, but is 8-bytes aligned on all other > > 32bit arches FreeBSD supports. Provide the freebsd32_uint64_t type and > > the FU64_CP() macro, which are intended to be used where 32bit ABI uses > > (u)int64_t type, and do proper layout and copying for the aggregate type. > > > > Reviewed by: des, emaste > > Sponsored by: The FreeBSD Foundation > > MFC after: 1 week > > Differential revision: https://reviews.freebsd.org/D54663 > > --- > > sys/compat/freebsd32/freebsd32.h | 11 ++++++++++- > > sys/sys/abi_compat.h | 8 ++++++++ > > 2 files changed, 18 insertions(+), 1 deletion(-) > > > > diff --git a/sys/compat/freebsd32/freebsd32.h b/sys/compat/freebsd32/freebsd32.h > > index 9d724c93fee7..7324f9adf70c 100644 > > --- a/sys/compat/freebsd32/freebsd32.h > > +++ b/sys/compat/freebsd32/freebsd32.h > > @@ -36,8 +36,17 @@ > > #include > > > > /* > > - * i386 is the only arch with a 32-bit time_t > > + * i386 is the only arch with a 32-bit time_t. > > + * Also it is the only arch with (u)int64_t having 4-bytes alignment. > > */ > > +typedef struct { > > +#ifdef __amd64__ > > + uint32_t val[2]; > > +#else > > + uint64_t val; > > +#endif > > +} freebsd32_uint64_t; > > Any reason not to use: > > typedef uint64_t freebsd32_uint64_t __aligned(4); > > on amd64 (and normal typedef elsewhere)? Then you can just use the > normal CP. See for example https://godbolt.org/z/svseWv7xo. Yes, this way it uses only std C instead of the GNU extension, and not depend on compiler properly handle unaligned types. IMO it is better that way, and all machinery is hidden under the typedef+ the macro. From nobody Tue Jan 20 16:21:15 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwXdP0f0Gz6PmCj for ; Tue, 20 Jan 2026 16:21:29 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (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 4dwXdN5qv8z3M61 for ; Tue, 20 Jan 2026 16:21:28 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-4801bc32725so27401225e9.0 for ; Tue, 20 Jan 2026 08:21:28 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768926087; x=1769530887; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-gg:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=LAjc+9kEWG9zkdDiJQph8LlnLhQGdfB4tpYOCS5I11A=; b=G4uyDIDqNG3TwZn793E/s87olQBE/uCGHS6tpPH/gW9bhdOGwI/Fjw4TpecCZaTuCl eBKpBiS4ibNtI9pL1Z8ioEwMgjVgMTTAE5dpCOsBI3Fs5lizsgnS9XZunRy9Hl/sTzwV GswOSojBXxLgWKA/ryaiMu91R7GZF4wTC4k6Xae40Kdh0/RG1DCg+5W3PiGcPwtoCZMB UBcwan40c2XtoWt02mBSjbCKF06xUDBzyLyQuSNET1/EP9/xEZ72e2ardD6KyOk8Np2h MEhm/Gvk8tS746YesJL59iF7ZLzSykWqYQXz/ZZYfYXKNwlaRmc3bz+/iHIRmoAsHQmR GCdw== X-Forwarded-Encrypted: i=1; AJvYcCWGYI3NXHLBOwdZiZ1tr56+LA8fa/45G2hAl081yHkAn09y+gkdB9tKJrzdrNCozEPXQwd/R8QDj2WUsGYIOp4v9wSxaA==@freebsd.org X-Gm-Message-State: AOJu0YzT4fO/+uw7kvlQmDu6m7mv/Z8PT1AAZR0pNPEIq7hl2gP/KSBv FE9IurmFRT7PJn8AF1jqRPhf3nRnV2TtO97EGSPcO9f8VFqxIqdBjnEVk7CZdjh2hMc8quBXgLm RxcM8 X-Gm-Gg: AY/fxX7IB2xdp+SDrnZ2pQMRJZFuGSFOUQo1z2Rn49FLfO1eJVaOOmVEI/wO7iFZ21K SYy32SpaIeaqmprG8Ifp0WvV/N5EGbneeMU2863WWCw+LoKJBWmO9J4fwL4hJZbdgqtPWHsisqo TeWcD+znwIFdWODOxRYLm69IHzgTqF+7eDDAO7J34GEsby6xD8uDiV8s9ZTfYBJpReqx6XhOw90 8eZ+hLdP0YTUqZjTJqdJMDG7PxOmyA06NhMhw2sJdWo0PV4drvvvfqUFwV7WjX+VW7M6y0JPrGE gdwjiMZADXJkK4aYhF61Xb1q6tbTSS3rZ7Riu6zLx1pqleIgxfdoe4VnBE2iFEnrnnXfly8gnnB AENGXA+30xQ8QrbZfbckS/KZCdzEMyRmJkMBQ4x9M8AWbpw06yWhQ9SzggpsR22ooqWr1qd0LMs HaBVzJJ3IT72hCCQYlKg1F2AyEcXHkvDw8+wdHJFVSBoxpaE1CH0Ew X-Received: by 2002:a05:600c:608a:b0:477:2f7c:314f with SMTP id 5b1f17b1804b1-48025ccb812mr161618685e9.10.1768926087373; Tue, 20 Jan 2026 08:21:27 -0800 (PST) Received: from smtpclient.apple (nat-184-7.net.cam.ac.uk. [131.111.184.7]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4801e8c05c3sm248953255e9.11.2026.01.20.08.21.26 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 20 Jan 2026 08:21:26 -0800 (PST) Content-Type: text/plain; charset=utf-8 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3864.300.41.1.7\)) Subject: Re: git: 96acaa960023 - main - compat32: provide a type and a macro for (u)int64_t handling on non-x86 arches From: Jessica Clarke In-Reply-To: Date: Tue, 20 Jan 2026 16:21:15 +0000 Cc: "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <4D876814-AA9D-4007-A165-4E0B7881B5C2@freebsd.org> References: <696f9463.f398.7ea9495a@gitrepo.freebsd.org> <7F0190E5-8B20-40A5-9D31-1D56BCF39E71@freebsd.org> To: Konstantin Belousov X-Mailer: Apple Mail (2.3864.300.41.1.7) X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.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: 4dwXdN5qv8z3M61 On 20 Jan 2026, at 16:07, Konstantin Belousov = wrote: >=20 > On Tue, Jan 20, 2026 at 04:05:19PM +0000, Jessica Clarke wrote: >> On 20 Jan 2026, at 14:42, Konstantin Belousov = wrote: >>>=20 >>> The branch main has been updated by kib: >>>=20 >>> URL: = https://cgit.FreeBSD.org/src/commit/?id=3D96acaa960023c20e852e04e7cc5c6a5f= aca36c67 >>>=20 >>> commit 96acaa960023c20e852e04e7cc5c6a5faca36c67 >>> Author: Konstantin Belousov >>> AuthorDate: 2026-01-12 04:45:36 +0000 >>> Commit: Konstantin Belousov >>> CommitDate: 2026-01-20 14:42:35 +0000 >>>=20 >>> compat32: provide a type and a macro for (u)int64_t handling on = non-x86 arches >>>=20 >>> uint64_t is 4-byte aligned on i386, but is 8-bytes aligned on all = other >>> 32bit arches FreeBSD supports. Provide the freebsd32_uint64_t = type and >>> the FU64_CP() macro, which are intended to be used where 32bit ABI = uses >>> (u)int64_t type, and do proper layout and copying for the = aggregate type. >>>=20 >>> Reviewed by: des, emaste >>> Sponsored by: The FreeBSD Foundation >>> MFC after: 1 week >>> Differential revision: https://reviews.freebsd.org/D54663 >>> --- >>> sys/compat/freebsd32/freebsd32.h | 11 ++++++++++- >>> sys/sys/abi_compat.h | 8 ++++++++ >>> 2 files changed, 18 insertions(+), 1 deletion(-) >>>=20 >>> diff --git a/sys/compat/freebsd32/freebsd32.h = b/sys/compat/freebsd32/freebsd32.h >>> index 9d724c93fee7..7324f9adf70c 100644 >>> --- a/sys/compat/freebsd32/freebsd32.h >>> +++ b/sys/compat/freebsd32/freebsd32.h >>> @@ -36,8 +36,17 @@ >>> #include >>>=20 >>> /* >>> - * i386 is the only arch with a 32-bit time_t >>> + * i386 is the only arch with a 32-bit time_t. >>> + * Also it is the only arch with (u)int64_t having 4-bytes = alignment. >>> */ >>> +typedef struct { >>> +#ifdef __amd64__ >>> + uint32_t val[2]; >>> +#else >>> + uint64_t val; >>> +#endif >>> +} freebsd32_uint64_t; >>=20 >> Any reason not to use: >>=20 >> typedef uint64_t freebsd32_uint64_t __aligned(4); >>=20 >> on amd64 (and normal typedef elsewhere)? Then you can just use the >> normal CP. See for example https://godbolt.org/z/svseWv7xo. > Yes, this way it uses only std C instead of the GNU extension, and not > depend on compiler properly handle unaligned types. >=20 > IMO it is better that way, and all machinery is hidden under the = typedef+ > the macro. Well, except (a) the kernel uses GNU C for all manner of things already (b) unaligned types are already well-supported otherwise packed structs wouldn=E2=80=99t work, which we=E2=80=99re happy to use (c) your = structure approach hides less as you have to use the magic FU64_CP macro so is less abstracted than my proposal. Also, I just thought to check Linux, and it uses the same GNU C aligned trick, so we=E2=80=99re in good company and any issues with it would = show up there, especially given people do use Clang to build Linux in production these days. So I disagree with your assessment entirely. Jessica From nobody Tue Jan 20 16:51:37 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwYJB0z8nz6NpQn for ; Tue, 20 Jan 2026 16:51: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwYJB09xCz3TLj for ; Tue, 20 Jan 2026 16:51:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768927898; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JZ9UHZw9+FuxKEkbo4K6s42Ipas/YDJDibk389QYiLA=; b=VUtn1dwC9gV0ZlMYVYeSvqfHO7WSShRNMK2AtrViGbbmvjf9zbTajKyO7PYx47nbo0uQzC sZS3sd0lAr/DBOkI83wQWt5F6Vu90W5dHhyuWdD3oaiK/0zTsKO/l86gofE3mjvzwqqUI2 /8ru2MmqPiNoKlRi5IUACvlkSRmQy2FYeRRrdjFmVoeXiSV7ZaXclaojA02+BEn+ItCpVd z9ToXzy1RgPdAS/cR2DZDPAgU8jk8ogCHoMe21shO/bLrC+eLeI9H5ej/MVR/ZiDSm6WPd JMLhQsusKTmOI38dP3xAZJCMw82/RKu1ijxJYmUS8ERMXgA+4pnoDGFNzwwx8Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768927898; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JZ9UHZw9+FuxKEkbo4K6s42Ipas/YDJDibk389QYiLA=; b=QrkCULFtLnF8LEKaSTOOpwvlIDOQTLIE0KpBIyFukHznv7FMJeEOxGUeFKPtx4vypFmUpx YDRC+zIiUPhWmf7sak279Py7V+gzaj0l/1xLUdgaJSgGzIyF/aNqPnmenSLgPWCB5bdYY4 aeZ/n08g9veKFIvDnsfL55cb9PVYPmaE17+6X2QF0i0OME/9bE5orXBV0dmfuUOlozLRHe Xv8+++yDUpxsHJLz7dSDRv6kt3PiwxXesc+SypwJoxdb1mcMGlEGBLYVI6DGh1VNCBRby5 AA5alwX5uBI9DvsbMnbZagUDYfyDJGsFhruIM5FQ0IaZYmKTwkhu7gBV0n81Vw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768927898; a=rsa-sha256; cv=none; b=bB2UlUFrjHfq/fHvb4zwDZUMu8UQjs314oGg1NWcL13UXCA8e9tg7cfS9tAChPlaLDP6u+ l1zRPJ6UHi2ie3WSXsYIku3to7QHlmJ9Q22x+vGvdX7CE/yLvRavGPvcoUvvIu227aY/Vq F0ox5F8DCyui/lmF0yCPUY4W9/YjKtIU0WEUGQKt2nUw92mkNeaqi48qRtDPzs2KybmL+i on3CUbo22hzlwI/UclCyWBXR+UJpJ+7ETDXKr7zGMgHl47VBZcWdPO1vakwUsn/Gp0aaeE VKMjlmp3G0OrWErtvtG9FI67xkAfY8SiXCE1x+7Gsm05TfiwBOQ0nY5IiVxqvw== 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 4dwYJ96dBfz1P1M for ; Tue, 20 Jan 2026 16:51:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 34db8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 16:51:37 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jose Luis Duran Subject: git: aed4089c2573 - main - nanobsd: Use NANO_DEF_{UNAME,GNAME} List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: aed4089c2573420be042a90af51fb538d0b63fe5 Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 16:51:37 +0000 Message-Id: <696fb299.34db8.411530a6@gitrepo.freebsd.org> The branch main has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=aed4089c2573420be042a90af51fb538d0b63fe5 commit aed4089c2573420be042a90af51fb538d0b63fe5 Author: Jose Luis Duran AuthorDate: 2026-01-20 16:51:06 +0000 Commit: Jose Luis Duran CommitDate: 2026-01-20 16:51:06 +0000 nanobsd: Use NANO_DEF_{UNAME,GNAME} Prefer to use NANO_DEF_UNAME and NANO_DEF_GNAME instead of a fixed "root/wheel". Fixes: 61ac7309c366 ("nanobsd: Add a provisional populate_part function") MFC after: 3 days --- tools/tools/nanobsd/defaults.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/tools/nanobsd/defaults.sh b/tools/tools/nanobsd/defaults.sh index 86aaeffdc944..a0a186cee42f 100755 --- a/tools/tools/nanobsd/defaults.sh +++ b/tools/tools/nanobsd/defaults.sh @@ -780,8 +780,8 @@ _populate_part() ( cd "${dir}" mtree -bc -k flags,gid,gname,link,mode,uid,uname | mtree -C | tail -n +2 | - sed 's/uid=[[:digit:]]*/uname=root/g' | - sed 's/gid=[[:digit:]]*/gname=wheel/g' >> "${metalog}" + sed "s/uid=[[:digit:]]*/uname=${NANO_DEF_UNAME}/g" | + sed "s/gid=[[:digit:]]*/gname=${NANO_DEF_GNAME}/g" >> "${metalog}" ) fi From nobody Tue Jan 20 16:51:39 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwYJC224Xz6Np9Q for ; Tue, 20 Jan 2026 16:51: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwYJC0f9jz3TTy for ; Tue, 20 Jan 2026 16:51:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768927899; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hdVvqNlIOmIorWKyN6679VyXa+g0yWSEKvendKZiUt4=; b=uVKR4dMFvooG/pZ4AiPBaj1Z+kMP7VNNkuWfC5oRNvddOWyYyjUIoGuXMsiyrJeFTPyWdm Zbfwj7/V2ltS2tVdJf0Dq8Yzp08iaRzWfklUtAYcVarP0tFoandjlxcykGD+9EKqA4raNN MJ/oxmU4VCkgg4GmKwME7BU9GsoXep0cGx2pcwftJ5ZDovCat5fZqdpl//zxEI0SAxlWIK kPKRQw5wHfXEqJ8l2OGC4LUk7o03gPb0zBnQLLPQmYEw3CWo/8td4hL9LPCg/sj80ZdLQh 0O+nOG2cbPP8JiPPY8PudKQonT/f4dp74AjE1MVe6vtDLkVRyB+rnu8joQaj+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768927899; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hdVvqNlIOmIorWKyN6679VyXa+g0yWSEKvendKZiUt4=; b=vw4ZZA7XvUrQU1PH29z+FbYFq/zGCI2ySaQcgRoqbZ2a69Iyd8lj9DMQ8mHHMhNAfYlZ3W g61n9p6Nnegp2lqbClqhOXvaU2X5SgT7yIW0zZNcWJ6n4uXUVx8QmKQ4Sk/DRhIaQrfZaT R7NPuqcOLY1h6DkradM0X+ogk0Pqgzijg+4giAZxepSzkNUyyN867HX0R/XYaDU9kXc99e fdN/ZjOXhHbpcTijFN/4pWvzyQbJ1fjF2Pg+Szlmn2LSbe80YpHrekv/T9TFohRCRjD98E VDeQwwlkt7R6J/eXB2iRDsSdrk2J6/7O3rsEhxxS9j3lb5kxTUpcH0sbv/9N4w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768927899; a=rsa-sha256; cv=none; b=b+h7ReDPJ4au+Sg+68i2+ewOOynP4cUw7DCgaRnjAcafyMH5HsfhRTKZSyf2bOU22Qt8az 51YF2vutrFmZjlV2tOZJxKnmEtM2dxLTBVoWH7dM9HuTj21Q/IXLFpnX7HPS4LpYC1Gqry 043RPyvgW1YUe0BRtr7A+tniLTzYGccN/dH1eFbsBTNPd9wK5zXW5sD0BWaD6fitsDspnS lPVnOQqojPMnDLPW88CDW114i5mF7K0URpQYqpIc9dKALtAo+l1iAShCUqC49nBIHU4rSV o8QRHwHNPv6awOIKZNXu/nNOaIVCGb99EHO/z2swnvNSfdVSC9dW9PnLjXEySQ== 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 4dwYJC077Gz1P8g for ; Tue, 20 Jan 2026 16:51:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 335ec by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 16:51:39 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jose Luis Duran Subject: git: eced166af015 - main - nanobsd: Avoid unnecessary subshell execution List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: eced166af01565fb1d6278a8918e844ebc4412a6 Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 16:51:39 +0000 Message-Id: <696fb29b.335ec.dabfd9a@gitrepo.freebsd.org> The branch main has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=eced166af01565fb1d6278a8918e844ebc4412a6 commit eced166af01565fb1d6278a8918e844ebc4412a6 Author: Jose Luis Duran AuthorDate: 2026-01-20 16:50:47 +0000 Commit: Jose Luis Duran CommitDate: 2026-01-20 16:51:09 +0000 nanobsd: Avoid unnecessary subshell execution Mimic c99bb5747f5e ("nanobsd: minor formatting cleanup") and cleanup _create_code_slice(), somehow I missed it when rebasing. No functional change intended. Fixes: ecc039be7fdd ("nanobsd: Add a NO_ROOT build option") MFC after: 3 days --- tools/tools/nanobsd/legacy.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/tools/nanobsd/legacy.sh b/tools/tools/nanobsd/legacy.sh index efb9c68254c9..06dce15ffa0a 100644 --- a/tools/tools/nanobsd/legacy.sh +++ b/tools/tools/nanobsd/legacy.sh @@ -155,7 +155,7 @@ create_code_slice() { ) > ${NANO_OBJ}/_.cs 2>&1 } -_create_code_slice ( ) ( +_create_code_slice() { pprint 2 "build code slice" pprint 3 "log: ${NANO_OBJ}/_.cs" @@ -181,7 +181,7 @@ _create_code_slice ( ) ( rm -f "${NANO_OBJ}/_.disk.part" ) > ${NANO_OBJ}/_.cs 2>&1 -) +} create_diskimage() { pprint 2 "build diskimage" From nobody Tue Jan 20 17:07:45 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwYfp2HV6z6NqHZ for ; Tue, 20 Jan 2026 17:07:46 +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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwYfp0Nw6z3WM2 for ; Tue, 20 Jan 2026 17:07:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768928866; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6pI2RebRmkbzMg8ZE99aTMC1/xO1iiphISzdzuV7sLU=; b=ojFS7xHOmjuDSxihRGqOZo5iBpGzhyQRmji3k3omZ+ZlqFX+SYeWbil/ltpAf5yoE4QSPT GOBOVFc9BWjRiYSSqOBLC/s2XgEAzgPq1AFQ3of7S0hiX2RSlYOdO0KRHjJ97DMISNusnb zQYS8ypJFDz9McFNMQcUpfhrwEpUPDgPOeDOALojYnjjilQm5BeejuKLfhmBpMLSLUD5rb AwBG8X63qHmMQ7FF9w9OqGCtSL9FCMDxtYV3xpQ8p4dEgD32LgLfJI+iWYQEecMNXC2CKx ZIbKPhS5Z+bj/0nhDvze/lc52K0b5gPRxh6AH2/moE/fIM6hdL/KTJ2sWe9swQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768928866; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6pI2RebRmkbzMg8ZE99aTMC1/xO1iiphISzdzuV7sLU=; b=FfmSkq9+0cj2IWrvG3SlSh1IbUhQO/2vSrnP2mfsxZlPuEBVegwXLREZfUpagsC2PgPYGx BggoQ32s3E/+GLXIFg04KmT66e52PQYRatDMhB4MG6ckkQK5KFtNPxfXZ1j4kxHA/N+YBo FRz5oJVrMwXny5J8D949VEGReSSxQAfHWW1IhCYeXWgzxzDffxAR2gIYjMQVCh/NGl/XZS WGxxtjWqHvk08fWbPcvlALsumuSh6bezO0m0ZB61S4hhH09Swugv7Lt0gVoORUQP67FQ8E RUBuw+G9YyAmBABIjLH6XpArI1sBbjW+FpExMbFU90ETDiM4nudwIcYfB3pqKg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768928866; a=rsa-sha256; cv=none; b=CuppS4QOdkqe4ia8jnwM3ihIxWwbwEaU/B0srXpVPh0rdzzXOxOljZMKsR3R2n124N5oI5 xnbByoL8RQkIzHzqxlb4+iqYv1jMa/wMS7UHtTfDxKsC+ng4sGst+GKsUpaKriTEaISoQG 5HvIduDhiYJjoQv/lVjVU4TFEFBe0qYzuYlZOVT7zhh3LCqClIESVBgY4DdgNMX34SXAYU 8CCayPPRl0H2Y58/48+rQAu5Mz7k6zmz7LpBH6RXkaNefbdXOwwJ3s8b5cQI6dt5uknRFv M3FJDfGFk6oCk1lYzifwFxiRma0NdMAnVI/1u0qGu4DlKDj7EKuIrYnA4ELD2A== 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 4dwYfn6rZzz1PD2 for ; Tue, 20 Jan 2026 17:07:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 34cd2 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 17:07:45 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 8e1c85f03260 - main - OptionalObsoleteFiles.inc: Treat compat runtime loaders as libraries List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8e1c85f03260ff9d214fcd99c7ad1a848e3ac23b Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 17:07:45 +0000 Message-Id: <696fb661.34cd2.26788967@gitrepo.freebsd.org> The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=8e1c85f03260ff9d214fcd99c7ad1a848e3ac23b commit 8e1c85f03260ff9d214fcd99c7ad1a848e3ac23b Author: John Baldwin AuthorDate: 2026-01-20 17:07:21 +0000 Commit: John Baldwin CommitDate: 2026-01-20 17:07:21 +0000 OptionalObsoleteFiles.inc: Treat compat runtime loaders as libraries Binaries require the runtime loader to use shared libraries, and removing the runtime loader in `make delete-old` while leaving the libraries around makes it impossible to use those shared libraries. Treat rtld as a de facto dependency of shared libraries to ensure it is not removed until the corresponding shared libraries are removed. Differential Revision: https://reviews.freebsd.org/D52210 --- tools/build/mk/OptionalObsoleteFiles.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/build/mk/OptionalObsoleteFiles.inc b/tools/build/mk/OptionalObsoleteFiles.inc index 6d8472dc8e83..1cf8b44eaca3 100644 --- a/tools/build/mk/OptionalObsoleteFiles.inc +++ b/tools/build/mk/OptionalObsoleteFiles.inc @@ -3833,7 +3833,7 @@ OLD_DIRS+=usr/share/moused .for LIBCOMPAT libcompat in ${_ALL_LIBCOMPATS_libcompats} . if ${MK_LIB${LIBCOMPAT}} == no OLD_FILES+=etc/mtree/BSD.lib${libcompat}.dist -OLD_FILES+=libexec/ld-elf${libcompat}.so.1 +OLD_LIBS+=libexec/ld-elf${libcompat}.so.1 . if exists(${DESTDIR}/usr/lib${libcompat}) LIB${LIBCOMPAT}_DIRS!=find ${DESTDIR}/usr/lib${libcompat} -type d \ | sed -e 's,^${DESTDIR}/,,'; echo From nobody Tue Jan 20 17:10:00 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwYjP1Qxlz6NqLp for ; Tue, 20 Jan 2026 17:10: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwYjN6VbBz3WrZ for ; Tue, 20 Jan 2026 17:10:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768929000; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FUiIp8/UIjof94VjlqmHZzqBIkLiOZBI0WvNUofJ2CE=; b=cHP7B1jXykXf7DR59BovaSB7OFDkUGGHAnljmhUV+h+UbZn7T1gtu9IwytWmW6SxEh1P5P SGa7XzCmkJdZSFhVXVIbBhwpFi0naq66qBvdawokh4I/LXuC3hN0udDo2UI89tjGUpGeUT e5oZAdLjkWjE4mfQILYw7kR8oVYEpcqQ/Ue9R3GIhMMWmpAvC9OYfMg7uTlLW0iwV7OelY tJ/+3mBksorH2RvFVGz0qSguETpcg3WsE20kDwOrspvXf8PzMsJFf4dcoYNHWgFuiQ1ieE ERRjfOkAXPQIO47SYNxrC6GbZYzpm3Neo6THJBFbnONPXymCzN4W+5ZyNKWW7w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768929000; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FUiIp8/UIjof94VjlqmHZzqBIkLiOZBI0WvNUofJ2CE=; b=Ey+qJ993gpz81E35FvQ9kM20f7ce59YWRF/m6cO4MbXJWTyAxfSC0AangL7DxK3ZKRnCdE PCD4X5diFnQ7AbJTysml5vy7fjf8B5NOYJ3WIsRv+eQru9fsOBadntAXDXQF0BoxPsGWat HW1ym0i2BWXZXt2SK8mnXx9xZnHdNWj7thXow0vGwPuuNY4em4ugXvMw/f44E95sPBG2IY 6U7xdcma8tgTxzw1CcR12wMyiHu+zK07O6o0DzxT59rn4cvE3yIlQh91AGYASBC/vxqFzT mkh+g/KIInYiLO3RxDH8zfKOZTVeePtnH2UhCSyT7tQTZJD5fhQsBkJvCg5r0Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768929000; a=rsa-sha256; cv=none; b=BHb2bf5D2L5Qz9Zy99aJ2pv+lCB6PFPDamVBTNmsqbpbZ3TEYi7/ofziQtnYxQOD63bl4v 6C5xvlJC4Ir4nCEnAq44I0hBn4nROKlRKE2+FGgSc4l6uL4DRCTAc7/EVdAB1B54wq8141 NPZ9XmSPFqt42sLS6uNwLKz7AcptJVdHuHp4II7d091nhn09QNrc9NtPXdOasNhAxc4zAm uguwp8owWufCnFOukEX5FcENsxO40WnceJYsqKu1NFrwjajgmJHjiaMBx3RxzR0zg8f41Q W/XXiLwO0UTR8ipeR89cprjdgok6AZit1HHlbU0iAjZM/j3Mir9pzWhMUKWXhQ== 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 4dwYjN5XDHz1Pk0 for ; Tue, 20 Jan 2026 17:10:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 36515 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 17:10:00 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 8d82dafa568b - main - sctp: support bridge interfaces List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8d82dafa568baf7be46e5e443dd7310986a28aa9 Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 17:10:00 +0000 Message-Id: <696fb6e8.36515.58db1eea@gitrepo.freebsd.org> The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=8d82dafa568baf7be46e5e443dd7310986a28aa9 commit 8d82dafa568baf7be46e5e443dd7310986a28aa9 Author: Michael Tuexen AuthorDate: 2026-01-20 17:04:35 +0000 Commit: Michael Tuexen CommitDate: 2026-01-20 17:06:17 +0000 sctp: support bridge interfaces Reported by: Timo Völker Tested by: Timo Völker MFC after: 3 days --- sys/netinet/sctp_bsd_addr.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/netinet/sctp_bsd_addr.c b/sys/netinet/sctp_bsd_addr.c index ac715d8298ec..f1c364d7b57a 100644 --- a/sys/netinet/sctp_bsd_addr.c +++ b/sys/netinet/sctp_bsd_addr.c @@ -174,6 +174,7 @@ sctp_is_desired_interface_type(struct ifnet *ifn) case IFT_IPOVERCLAW: case IFT_PROPVIRTUAL: /* NetGraph Virtual too */ case IFT_VIRTUALIPADDRESS: + case IFT_BRIDGE: result = 1; break; default: From nobody Tue Jan 20 17:19:44 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwYwc6p5sz6NqyN for ; Tue, 20 Jan 2026 17:19: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwYwc5ghwz3YPc for ; Tue, 20 Jan 2026 17:19:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768929584; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eSCzKzFNyXcQdEI9wl5CcTFSzM0wu5F64jlJtNB3GfQ=; b=Ul3mpdziHyL9TiQTIZ6oRzrtp8w2Oh5v6sKH0AY9M3LGpUcUhZKJD0naocOyxUFmFDFSe6 ApvnIpz7c87SaDqcrqXBfRZK7i0TJs6iqkt19eJ8sq9L4ckfm6OvA5I5zbwM7oPJQIMstI RwALSFFpn2YFFhCmo9raMMG6FRS0whVZBnomgOmIumktboQvqjgjW3x6L1cg5oCH6DAn2j Lp+YrQEN6F54poKshwpbJqp6Z6ISeB/bYcgQGlk4mDfK32F48FXHGt60gByaylBK7ZctW0 UIe5iJ2DX9J5qAACyz5bdX+FtN63hv0tWYQgGNNFqmN+FzsWYwzg7ELAnpMNRA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768929584; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eSCzKzFNyXcQdEI9wl5CcTFSzM0wu5F64jlJtNB3GfQ=; b=kpFMEpzwlY/fCOaBPiesgz/5P31dQTyQqRux7Xc3WpLHAdUUexpCRd1mKoIBlDyTMuiscK zMZr7sw+Uv+xO0o0ilJYbEF7mdj2c6StcUbEhpyZl6zY+kUAYuFOVXw87xi9M6KCq8hkp4 IPoYNA4ZZYdcfG9aiPwzV+uwu2kdXmeehz0Zk2P4VfXtLYd4k0ntHWelIw4ngF6QE23ktR Fmtdvrr3aML9BqVfu9tZQAnqfpaPK+KCYKJyCFrfJMwyZnzwJRTDz6d9F1Hz0iwurgmhlO +RetGXAmU3NjsrZeE8tttRV5Ws4dO94cLRXW0ue+Lzxgaa13M+56nxBs0QWQBg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768929584; a=rsa-sha256; cv=none; b=Oo+UKcJcuyvTA2ik5Ovs1CnV8CvXhb1WMpR09Fi0jEXbs4Vw3hwwojxukWWsi0RF5J+SYr Kmz7S2B8UlbosUjEN/Z1sKAd3BnxJtIupD8s/6GbcY+NaugNLjjBGtErqeFononDXf8EEn a/1zjntaQb5Ht3ianOaOM2fNwJ1m+raX6lKwEm2ihwm+b2LJTddSQmFqln8GW+k6ndFiON omN92Zcpp/K1Tiuj92b+FsGS7c0yit4Dj0PpCNOwRzyZfSJXKTOsI62wIrBpaR9Bae4wco TCdKczOiR2XRlbrgiGYjh7ubn+SEOOHeMTbiffDc3Zv/AXHmZ5pSEROtszpDfQ== 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 4dwYwc4vGgz1QCZ for ; Tue, 20 Jan 2026 17:19:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 36707 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 17:19:44 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: c592d54a24b9 - main - LinuxKPI: 802.11: fix build for non-debug kernels List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: c592d54a24b984f2e23b337a6abeac09b9c357b5 Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 17:19:44 +0000 Message-Id: <696fb930.36707.24000ed8@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=c592d54a24b984f2e23b337a6abeac09b9c357b5 commit c592d54a24b984f2e23b337a6abeac09b9c357b5 Author: Bjoern A. Zeeb AuthorDate: 2026-01-20 17:16:50 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-01-20 17:19:29 +0000 LinuxKPI: 802.11: fix build for non-debug kernels lkpi_nl80211_band_name() is only available under LINUXKPI_DEBUG_80211. IMPROVE in theory should be as well or defined to nothing but we cannot do that in cfg80211.h mac80211.h where we possibly (re-)define this. Put an #ifdef around the IMPROVE call for now (untested). Sponsored by: The FreeBSD Foundation MFC after: 3 days Fixes: 768332d61948 Reported by: CI --- sys/compat/linuxkpi/common/src/linux_80211.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 7972d9d0f667..d25b32f1dae8 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -8039,9 +8039,11 @@ lkpi_wiphy_band_annotate(struct wiphy *wiphy) case NL80211_BAND_5GHZ: break; default: +#ifdef LINUXKPI_DEBUG_80211 IMPROVE("band %d(%s) not yet supported", band, lkpi_nl80211_band_name(band)); /* For bands added here, also check lkpi_lsta_alloc(). */ +#endif continue; } From nobody Tue Jan 20 17:40:59 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwZP76vYzz6NsWg for ; Tue, 20 Jan 2026 17:40: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwZP75Yk1z3cbP for ; Tue, 20 Jan 2026 17:40:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768930859; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=poEDeOx1FOOeZy1U36X8wToalUKqP6Bnvic5W1CgvQc=; b=ZNAgURNRBdplHlbavluVtrJn4jJb9t2MfaLnmRRtqU8yVheTgwOVFXHo2RVGCaWOuUyqbJ IdTO4ZMzG0KvynhdCs26jTtiWBFVsTvZ3TN9u+/WUKMv9Z0JduSZDWr1d0IdVJbihnjKnM +ekw5CvgQMNAQNmnqxmVDQVqV52Sdp0yPhRXsl4bohA17lcHjlaz99Q7FprboUre+kfv8G KI6R3BqFEYmtv7vUoUi/xlS2m+XbwJ9DfoAWN4tWbO2k1fwKh4JJP3DEeVoNPu/28kFVag 0NVQgTymM4rnD9hcdLlE3NUZdOiWPOcxCBU72uagwHW1NILzK42C6iuUb+2jAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768930859; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=poEDeOx1FOOeZy1U36X8wToalUKqP6Bnvic5W1CgvQc=; b=W7j1fkXE7a99uqrmoDB3lh/vajNUmdFZhZv4qkF3/cHoj6Cu3s0oyj9u4KLDZ7qYZTJfYD BVeKb350IaCPsn8tq1HAwtGs4PjWbJQCK98k5/FUGuAu1f1qNwnQQHoep//a8YiJxgxDgL 6AFGOQvmBNuxR21ywqO/pNfIUFo1HvrAi1nUBv2RlIEMt4ZzDu/NAhOqIm/kpWTeIIZCLH lTXh64UHbZHWInAm4nJAE7VMmH+UesUAQvIBz3QklDBkiWdQ6/9FMycYPBjIjVKL/8uWFF 5V15PZOFf4EuetlyY8LOhFuq1dpbaqkF1moRx4BcN+s2RhBK6BGRh/lqz5jK/g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768930859; a=rsa-sha256; cv=none; b=Bu/U2le4OcTb/h9BubZxJIJ8Ow4cJGH6Cb1Ve+OkcV0IuzXu/EAB6takblz3ktnns0Id93 q1Dz1LmpxlHh+2CR+ncnxU8zoJdvgm5F2SEQ9lGs+HMd7OXl/YVPlha6JNmGkVzG7jExbw LsnP/b4dhQCqQ/9M56KfJclciCUzL0BwKxIC5V6GiTRXqch7N4HfmhV2jOLO7ctncBJbL+ HTPAc4dK4t24+fMIzW7AKd+G8XC19nnmTucDm9iHBrMi4y+gyhhZv7oip6yU7uUlZ1Qdjp F1fTQfRhfk7f1dq+5Hxw6i7uAGiDb96X0/OMoRvjwiXNzbD2qwv9M+AkRq+0CQ== 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 4dwZP756vPz1QXF for ; Tue, 20 Jan 2026 17:40:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 38c9c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 17:40:59 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Cy Schubert Subject: git: 2d8ec3bab2d8 - main - krb5: Fix another GCC build issue List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 2d8ec3bab2d8af9d0f3322c4d752ff928620491c Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 17:40:59 +0000 Message-Id: <696fbe2b.38c9c.1b99cc21@gitrepo.freebsd.org> The branch main has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=2d8ec3bab2d8af9d0f3322c4d752ff928620491c commit 2d8ec3bab2d8af9d0f3322c4d752ff928620491c Author: Cy Schubert AuthorDate: 2026-01-20 17:33:17 +0000 Commit: Cy Schubert CommitDate: 2026-01-20 17:40:52 +0000 krb5: Fix another GCC build issue Fixes: 1876de606eb8 X-MFC with: 1876de606eb8 MFC after: 2 weeks --- krb5/lib/krb5/version.map | 4 ---- 1 file changed, 4 deletions(-) diff --git a/krb5/lib/krb5/version.map b/krb5/lib/krb5/version.map index 924737afcedc..18104fc97564 100644 --- a/krb5/lib/krb5/version.map +++ b/krb5/lib/krb5/version.map @@ -1741,8 +1741,6 @@ krb5_3_MIT { localauth_rule_initvt; profile_abandon; profile_add_node; - profile_add_relation; - profile_clear_relation; profile_close_file; profile_copy; profile_copy_file; @@ -1798,7 +1796,6 @@ krb5_3_MIT { profile_release_string; profile_remove_node; profile_rename_node; - profile_rename_section; profile_ser_externalize; profile_ser_internalize; profile_ser_size; @@ -1806,7 +1803,6 @@ krb5_3_MIT { profile_unlock_global; profile_update_file_data; profile_update_file_data_locked; - profile_update_relation; profile_verify_node; profile_write_tree_file; profile_write_tree_to_buffer; From nobody Tue Jan 20 18:13:17 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwb6P5KwMz6NvqG for ; Tue, 20 Jan 2026 18:13: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwb6P4bBTz3gRQ for ; Tue, 20 Jan 2026 18:13:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768932797; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AynxJghS7QqBRE6Wh2SEvBz2mj+l96zlaI6QZo0gOWA=; b=Az2fKRTDoSkYBP9BqyVT78fq9u2iNFcMDKDBrI5wieLVbjiQx7qt80WKS1lXFSf/a2vTKH uLcvcwa2NSHPXndLiJcqNQ6gGM5tWkWc1uzjrKzw39AD+qDvCADyq2tHCWZ91NZEueb9Tl oJhLdpl3dlZzWtJVoy20CL6wY6zSSt1EtjzzSY+rYTHBrT90zZm9yEyERZrD2IPyYLQ57W SBwMqP+H08qmCiD4faHaersgDpKuEjNPb/O7macRs33Q3fpIqO20tvht3cgwc/pMZYiETe rOG1YUPj2cU7lhxC/qGFfwvVReePdgqumf9rQG7kOw487RTQrnzvco4CWSTBYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768932797; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AynxJghS7QqBRE6Wh2SEvBz2mj+l96zlaI6QZo0gOWA=; b=Bnb/f5FZ0/HVvExwSWgnX/QGuEZ912Vh3jEgQsZvZDkXH/OcuQrhlIwqEw8BE/9baqg1Z4 MrRvUl9Sa2ghVz2VrXhEFZHZ3NLdc0JXJl7A7GrcrqyzI9jynzHN2XFtGUDZu4usq4EvUv lk0l22ulOXFmj4JXs4VImaJa24QbKd/iKhrqYa3ZqQ/9HFZ3qG6SMqv89ZJgjl9uI88ROo gycvCJ6eVNQgaq/tOlQce4ki5UUrKhcc+Krj2Nk0jDxTOMTXF/ec1eNVDg8gALDmaptA3v 9YhAtujHvtZppIBJSUdXvBfEBw40zMcqvsy1qhfqJHN+vx9tnkTgkGbL7rrkvg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768932797; a=rsa-sha256; cv=none; b=Y42R90GD19tv3+MnkBck7gJX2izQxby6s4DKGwiUUs0E5RnCSSvnVqPUE6ZrOG73IMWz3Q OfSVW8wQO7OmwQPZ6aIw2pDchueWLFtgnaX5LzUEi07GoIK0TH1rs4PyYdWJTt7S/JAER5 PRkvjVlKdUrRZt2RK35EPa0+MIjj4aFn8AnyqbgXl5M92Fynu7Xe35tqq4eQg/uDoUaQJd nsHAlNoPgObqYForwr5PHC73mGERFxCu4q0nj2s72fa0SFx8Tnr+JUFmuRn1sfowvdfoHQ hPHj6mfUZHEg5SScgSjV1hVskH8dHrpxdeVwHzG0SArFE+5JHIeFS+sr/BHfOA== 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 4dwb6P44pzz1Rhc for ; Tue, 20 Jan 2026 18:13:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3b4d7 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 18:13:17 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 466bad427d74 - main - src.conf.5: Add WITHOUT_SOUND description List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 466bad427d74e666e85445729b2e63b82e10d18f Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 18:13:17 +0000 Message-Id: <696fc5bd.3b4d7.413fa2a7@gitrepo.freebsd.org> The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=466bad427d74e666e85445729b2e63b82e10d18f commit 466bad427d74e666e85445729b2e63b82e10d18f Author: Ed Maste AuthorDate: 2026-01-20 18:07:13 +0000 Commit: Ed Maste CommitDate: 2026-01-20 18:13:10 +0000 src.conf.5: Add WITHOUT_SOUND description Fixes: f74f891581bc ("src.opts: Introduce MK_SOUND") Sponsored by: The FreeBSD Foundation --- share/man/man5/src.conf.5 | 7 ++++++- tools/build/options/WITHOUT_SOUND | 4 ++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5 index 339ca2bd3e8f..e3c4139e304e 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 January 16, 2026 +.Dd January 20, 2026 .Dt SRC.CONF 5 .Os .Sh NAME @@ -1652,6 +1652,11 @@ legacy docs. .It Va WITH_SORT_THREADS Enable threads in .Xr sort 1 . +.It Va WITHOUT_SOUND +Do not build userland sound utilities such as +.Xr beep 1 +and +.Xr mixer 8 . .It Va WITHOUT_SOURCELESS Do not build kernel modules that include sourceless code (either microcode or native code for host CPU). When set, it enforces these options: diff --git a/tools/build/options/WITHOUT_SOUND b/tools/build/options/WITHOUT_SOUND new file mode 100644 index 000000000000..b4ca08f1263c --- /dev/null +++ b/tools/build/options/WITHOUT_SOUND @@ -0,0 +1,4 @@ +Do not build userland sound utilities such as +.Xr beep 1 +and +.Xr mixer 8 . From nobody Tue Jan 20 19:45:19 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwd8b3r8qz6P3LH for ; Tue, 20 Jan 2026 19:45: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwd8b37g0z3vDh for ; Tue, 20 Jan 2026 19:45:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768938319; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KrLqEp7XTC9BOR4UGSKa9AL6q0cDEYxdkGy09RfaND8=; b=hi/cDe/2xqmMwPXYeaCh3qQh4uRZbcjUaFqgBWino/2hiXKViwBmv3H4sOsPZPCZS95rC0 ycvZLLG8T58DqEsAsT1WUZPzkj5jlnZqhRuLLjIA3QuBUznpcyeDXgkxbZVZFHj6oFHrQr 89bFzTHqPlnUVrxD0cb7E5vfhn9ip+8vo3bYODxrdPec/J/SX7im3FghIvyhyCjrlzzstK Hpie7RtU/CiHPzKf7CFX2IECkDJ1z5nKxyL1xQ3LUPNEQVibXPZnBwPWvGtzLwlPq3ODoh 69JtxPB0FPjHvE1Ji2lzlKxN0Jz+skUKQLtif9XQdTzFiqiPQaRDvzVVwWSYbQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768938319; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KrLqEp7XTC9BOR4UGSKa9AL6q0cDEYxdkGy09RfaND8=; b=NtORWeR+t/FxAElpVAgOfCQdFyfPA3k02ASrNmBCxOyVgbS3yGu2gC1zRZDaK45nZCSAK0 bNNF3h036X8TtZMU1P/e1NiMixp1tS3aZfpwVAcKyKIYW33hJ8E3iE0P8BZ+9cpJwGQB02 vc2zDVduM4It566bWae6e/HC4oZfH6vkQjBeDmuMAQurMHISumiv1y3OdWm3qY29X276nJ sDpa+LpsDyvx3ovQYIimNuVGK4NWiwdIyGuuChnZQKHx0bBNmb20rgroSzFuW6WNhBvXkR o07JYIFAebihwFYW20pad53VqaNAx2dcQyxVcMtiPG0To03c2T3nJTGrXAQ5Hw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768938319; a=rsa-sha256; cv=none; b=i5vRmqPTuTowVzOC3dMGiB/nwON+qyYT8DbbPvzxhdA+p5RtaQKMCWzclFfS370geXd1IB rwJLiP3IhaSxSf0dc3wUUfc0bhx45NZS1oMhUkU6o2ZZwu00/LCGFts82sAvm/RTNqRmng l+mCjI2QABMRW+J1rJN3Vo7U7fsBh3S3TB6OCKiz6Q8zV9QOAtFlgOtN8u17KYBUZ/O06Y c8YTS4t2xKsD3GIuAB8aKhipUnyFzvvrqVaCfa9hJStNHBWichBsAwNLkjkY2TrKsnTpyr RrN/jXqzFoypwtGv9r8f0odKvgD2Eaccz8ENtTa6gs40OaXuZEu4xIlSTdxyXw== 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 4dwd8b2g6kz1DD for ; Tue, 20 Jan 2026 19:45:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id c0b6 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 20 Jan 2026 19:45:19 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 6bb3f208617b - main - ktrace: do not enqueue request if the process' ktrioparams are freed List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 6bb3f208617b58a54e2204eb31bae3f9a86117a7 Auto-Submitted: auto-generated Date: Tue, 20 Jan 2026 19:45:19 +0000 Message-Id: <696fdb4f.c0b6.47f1bc32@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=6bb3f208617b58a54e2204eb31bae3f9a86117a7 commit 6bb3f208617b58a54e2204eb31bae3f9a86117a7 Author: Konstantin Belousov AuthorDate: 2026-01-20 15:01:08 +0000 Commit: Konstantin Belousov CommitDate: 2026-01-20 19:44:54 +0000 ktrace: do not enqueue request if the process' ktrioparams are freed The p_ktrioparms are freed on termination of tracing. Any ktr requests added to the queue after that would hang there and leak on the struct proc recycling, or trigger an assert in the process destructor for debug builds. Reported and tested by: pho Reviewed by: markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54804 --- sys/kern/kern_ktrace.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/sys/kern/kern_ktrace.c b/sys/kern/kern_ktrace.c index 15a8a4ab4fa4..b58e69a3f38e 100644 --- a/sys/kern/kern_ktrace.c +++ b/sys/kern/kern_ktrace.c @@ -373,11 +373,17 @@ ktr_getrequest(int type) static void ktr_enqueuerequest(struct thread *td, struct ktr_request *req) { + bool sched_ast; mtx_lock(&ktrace_mtx); - STAILQ_INSERT_TAIL(&td->td_proc->p_ktr, req, ktr_list); + sched_ast = td->td_proc->p_ktrioparms != NULL; + if (sched_ast) + STAILQ_INSERT_TAIL(&td->td_proc->p_ktr, req, ktr_list); + else + ktr_freerequest_locked(req); mtx_unlock(&ktrace_mtx); - ast_sched(td, TDA_KTRACE); + if (sched_ast) + ast_sched(td, TDA_KTRACE); } /* From nobody Wed Jan 21 00:24:26 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwlLg0Lk4z6PMNv for ; Wed, 21 Jan 2026 00:24: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwlLf6Xvjz4L13 for ; Wed, 21 Jan 2026 00:24:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768955066; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LY/7EKFhvp7r/hFmmRfCkzkwMHy3Rgz0v5BQBKOhXco=; b=gTpIp4+OPYHCYwpEVG1XTjNKQH4DvStScAP46X0IBADYYm7CkRiceMD9+FIRz5w1x8pNj7 ck7RSBDPncdBnhomQP/mvl0pzKVwiWshIMCkHbA5LiqAF8KLDO4qUj6Dbm+VrYmDvQPvA6 vvbJV6XGfUWm6tx5OIsrOPSJqpUi2pJKUCbPi80tIK4rG7MdMReXU07v8H20WwvOsu6DLi j+gymFxCmb2DlCFoHgMONlNlD+yK72bSDywtvrZ05qfcdiCHKJqKh+38/2r2dt7BxoAbt+ bs/AN+lOoMk81x6wg+ISRrJ20C08Q0dY1oAQYAV/1ICWNFTEsQ2POcLEFRLdag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768955066; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LY/7EKFhvp7r/hFmmRfCkzkwMHy3Rgz0v5BQBKOhXco=; b=iej+S+6WIwh7P1HQY9aVcYLxZizj1Lm8hNDoAv+rYozzkmA4PFQ94foVDa3ndFzaDcEls2 9UiOqQrdtbxrARmDdplsMTwNzIzJbHC6RTvlFzlT7icNVkgZxaWMIcb8F266sLpBU0166d lKHoh7OQ0SoOS+MLrOLj1qn48ScEuQ9PxoE9iGFf8Xou13YaClyLC/IYcjVGtf1Fbvf6kX owljp3078/uv29T361qUhUy03pi1c11Aq9iJ2w9kRchUm995C3UEQU/Uvzqp4TXQ3Oy0VE pagG5GCSqOl/lShSO0jSSsf04uhRSsIWKbRx69+nYnw0VNgdX6bR8A9ziU3LWQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768955066; a=rsa-sha256; cv=none; b=xFhpBWGrzMsp4SL7sv0Ne71en4olLx+cPD2uSPiYDAIX57xYajxP4qynqrLxgeBt6NafWi pS4LawRZe3yXgpQDILmyzJX+CcOda6b4O7cgIe0p+Jkf1fH9LF3k1gNYw1cjugLJuCeaQD Pq1hebxahwFVq4/KPzZSwXwCUYt7zv99fMX6QFxifVUVhGRpBBAA/cl5cidc/si6sPRaul xSUkGeqvtpRsKhru4YKDRMnsttB6cZpZ9hcXIHqqPuBvqN64pAs1xuzsL21eft6hgZ3ZxP OJAUBcT3G3Jem+sluP9gggPxo8DBDl6SApvaRZeR6IL8v+il8oEDSH3G+VucKA== 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 4dwlLf5ktSz87Q for ; Wed, 21 Jan 2026 00:24:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3facc by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 00:24:26 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Rick Macklem Subject: git: f2155a6fb568 - main - nfscl: Fix handling of case insensitive file systems List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: f2155a6fb5681c3dca4524a3b2b862a72218a541 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 00:24:26 +0000 Message-Id: <69701cba.3facc.37d4dc75@gitrepo.freebsd.org> The branch main has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=f2155a6fb5681c3dca4524a3b2b862a72218a541 commit f2155a6fb5681c3dca4524a3b2b862a72218a541 Author: Rick Macklem AuthorDate: 2026-01-21 00:21:52 +0000 Commit: Rick Macklem CommitDate: 2026-01-21 00:21:52 +0000 nfscl: Fix handling of case insensitive file systems Name caching must be handled somewhat differently for case insensitive file systems. Negative name caching does not work and, for rename, all names associated with the rename'd vnode must be disabled. For a case insensitive ZFS file system that is exported, the unpatched code did work, since the change in mtime or ctime of the directory when other case names were created or rename'd would disable the false name cache hit. However, an export of an msdosfs file system breaks the NFS client, because it only works if ctime/mtime is changed whenever a name is added/removed. Depending on what the server file system is, this may not happen, due to clock resolution or lack of support for these attributes. This patch checks to see if the server file system is case insensitive and modifies the name caching to handle this. There is still a problem if a case insensitive file system is a subtree of a non-case insensitive is exported by the NFSv4 server. This can be fixed someday, when the NFSv4 client gets support for submounts within the mount. Suggested by: kib MFC after: 2 weeks --- sys/fs/nfs/nfsport.h | 2 ++ sys/fs/nfsclient/nfs_clrpcops.c | 19 ++++++++++++++++--- sys/fs/nfsclient/nfs_clvnops.c | 12 +++++++++++- 3 files changed, 29 insertions(+), 4 deletions(-) diff --git a/sys/fs/nfs/nfsport.h b/sys/fs/nfs/nfsport.h index 4e9aae70da6f..f6b6cfb22908 100644 --- a/sys/fs/nfs/nfsport.h +++ b/sys/fs/nfs/nfsport.h @@ -1040,6 +1040,7 @@ void ncl_copy_vattr(struct vnode *vp, struct vattr *dst, struct vattr *src); #define NFSSTA_HASWRITEVERF 0x00040000 /* Has write verifier */ #define NFSSTA_GOTFSINFO 0x00100000 /* Got the fsinfo */ #define NFSSTA_OPENMODE 0x00200000 /* Must use correct open mode */ +#define NFSSTA_CASEINSENSITIVE 0x00400000 /* Case insensitive fs */ #define NFSSTA_FLEXFILE 0x00800000 /* Use Flex File Layout */ #define NFSSTA_NOLAYOUTCOMMIT 0x04000000 /* Don't do LayoutCommit */ #define NFSSTA_SESSPERSIST 0x08000000 /* Has a persistent session */ @@ -1073,6 +1074,7 @@ void ncl_copy_vattr(struct vnode *vp, struct vattr *dst, struct vattr *src); #define NFSHASPNFS(n) ((n)->nm_state & NFSSTA_PNFS) #define NFSHASFLEXFILE(n) ((n)->nm_state & NFSSTA_FLEXFILE) #define NFSHASOPENMODE(n) ((n)->nm_state & NFSSTA_OPENMODE) +#define NFSHASCASEINSENSITIVE(n) ((n)->nm_state & NFSSTA_CASEINSENSITIVE) #define NFSHASONEOPENOWN(n) (((n)->nm_flag & NFSMNT_ONEOPENOWN) != 0 && \ (n)->nm_minorvers > 0) #define NFSHASTLS(n) (((n)->nm_newflag & NFSMNT_TLS) != 0) diff --git a/sys/fs/nfsclient/nfs_clrpcops.c b/sys/fs/nfsclient/nfs_clrpcops.c index 0cdcde6cca28..0213534d9230 100644 --- a/sys/fs/nfsclient/nfs_clrpcops.c +++ b/sys/fs/nfsclient/nfs_clrpcops.c @@ -4995,11 +4995,13 @@ nfsrpc_statfs(vnode_t vp, struct nfsstatfs *sbp, struct nfsfsinfo *fsp, uint32_t *leasep, uint32_t *cloneblksizep, struct ucred *cred, NFSPROC_T *p, struct nfsvattr *nap, int *attrflagp) { + struct nfsvattr na; + struct nfsv3_pathconf pc; u_int32_t *tl = NULL; struct nfsrv_descript nfsd, *nd = &nfsd; struct nfsmount *nmp; nfsattrbit_t attrbits; - int error; + int attrflag, error; *attrflagp = 0; if (cloneblksizep != NULL) @@ -5066,6 +5068,15 @@ nfsrpc_statfs(vnode_t vp, struct nfsstatfs *sbp, struct nfsfsinfo *fsp, sbp->sf_bfree = fxdr_unsigned(u_int32_t, *tl++); sbp->sf_bavail = fxdr_unsigned(u_int32_t, *tl); } + + /* Try and find out if the server fs is case-insensitive. */ + error = nfsrpc_pathconf(vp, &pc, NULL, NULL, cred, p, &na, &attrflag); + if (error == 0 && pc.pc_caseinsensitive != 0) { + NFSLOCKMNT(nmp); + nmp->nm_state |= NFSSTA_CASEINSENSITIVE; + NFSUNLOCKMNT(nmp); + } + error = 0; nfsmout: m_freem(nd->nd_mrep); return (error); @@ -5086,9 +5097,11 @@ nfsrpc_pathconf(vnode_t vp, struct nfsv3_pathconf *pc, bool *has_namedattrp, int error; struct nfsnode *np; - *has_namedattrp = false; + if (has_namedattrp != NULL) + *has_namedattrp = false; *attrflagp = 0; - *clone_blksizep = 0; + if (clone_blksizep != NULL) + *clone_blksizep = 0; nmp = VFSTONFS(vp->v_mount); if (NFSHASNFSV4(nmp)) { np = VTONFS(vp); diff --git a/sys/fs/nfsclient/nfs_clvnops.c b/sys/fs/nfsclient/nfs_clvnops.c index 1bd77ab27ced..8e4d58c0e554 100644 --- a/sys/fs/nfsclient/nfs_clvnops.c +++ b/sys/fs/nfsclient/nfs_clvnops.c @@ -1492,7 +1492,8 @@ handle_error: return (EJUSTRETURN); } - if ((cnp->cn_flags & MAKEENTRY) != 0 && dattrflag) { + if ((cnp->cn_flags & MAKEENTRY) != 0 && dattrflag && + !NFSHASCASEINSENSITIVE(nmp)) { /* * Cache the modification time of the parent * directory from the post-op attributes in @@ -2205,6 +2206,14 @@ nfs_rename(struct vop_rename_args *ap) if ((error = NFSVOPLOCK(fvp, LK_EXCLUSIVE)) != 0) goto out; + /* + * For case insensitive file systems, there may be multiple + * names cached for the one name being rename'd, so purge + * all names from the cache. + */ + if (NFSHASCASEINSENSITIVE(nmp)) + cache_purge(fvp); + /* * We have to flush B_DELWRI data prior to renaming * the file. If we don't, the delayed-write buffers @@ -2221,6 +2230,7 @@ nfs_rename(struct vop_rename_args *ap) if ((nmp->nm_flag & NFSMNT_NOCTO) == 0 || !NFSHASNFSV4(nmp) || !NFSHASNFSV4N(nmp) || nfscl_mustflush(fvp) != 0) error = VOP_FSYNC(fvp, MNT_WAIT, curthread); + NFSVOPUNLOCK(fvp); if (error == 0 && tvp != NULL && ((nmp->nm_flag & NFSMNT_NOCTO) == 0 || !NFSHASNFSV4(nmp) || !NFSHASNFSV4N(nmp) || From nobody Wed Jan 21 01:34:41 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwmvk0C1gz6PRpW for ; Wed, 21 Jan 2026 01:34: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwmvj36hPz4Q9g for ; Wed, 21 Jan 2026 01:34:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768959281; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZhPt7PBAKcLp32RypSGr/fIntJvSO+lGZAT50FpWkPs=; b=QA0Vgw75fK8G7dvC+Hpzrt/ekKZ+oPR/639PXpcwze6jKkcPvm9R9i3w8/pYxicz+uf3Ws zLdvT2BaOQMvmIkkdeQdOPNyXYfTptbTXbi8pT1wfd6PeBEuK+hb2F8qhG8jC6w/tGwhw4 R03ZN8NhKTlCHkmushcoJXxNAH+3XOijp8Zvn5iI5B9yTO1doLTq3jqpI5/qjiVnhIv2XW iQdxHijUrlTY4xoRj9cRENeCfKoW7gTS6t+53OAs5pzhDDEcx7qdleoE77ewsZlGdgxVlz 9rgLnip9qpdts2snS89wfJt7fFTXR78SEv3E4xbLPEPgkVa3LWUoe0gHvqx9tg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768959281; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZhPt7PBAKcLp32RypSGr/fIntJvSO+lGZAT50FpWkPs=; b=DSgBsFRM1CCQLJbojmibh+PBF7zWrvdz9wRDCL19Qsmg27Ce04eRo6ZcmeReNHwYuk7ZG0 PMj+So0yW3VXpriC2V7wnr9GMWDLiR55XJs1oL6UqYiZm4GACpFVXM+FnGmwWQdnsWmqDB X+hxzmEVPAivqjeh3DN5DCNAwgYC+57cj4Aqn5q6alAz0zpNPure0YvmjHVwn41FVv4ODV 3UMNcxUfrrtWEwtHyZCs0zLUzW7yAXOd7iY3kRsvNBkVkv0i4IAxDl0jGWnUHzNxwRhWvX z/s0azv2sTZ4vKBTXolePfQR8bLSZLcJo2vPv46ILAhdiSlfFWhW8KK7Y2Pzcw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768959281; a=rsa-sha256; cv=none; b=eiFqfgT9wIzH9g+jc6dQw4L9m+vbUre1FcSh0UEXU58l6DooOfFJD0bNLXXG35sbl+KhfO /5I1JUhyhytz20bXNHodSdMhTC8CEc5R2GrZBnM+eh7trhC7zMFy39RuJjwJdjnOJoBXxl NIfxuCFaTKizXcBQbxL5vuEGgTB06C+3920/+oUlz6LJjhyx8mBBiPvqIXyNmID+Cu4NRO 8yhYqVaa0QQM3nvCMmH7oBDNhuM7/nqbGLyxZgXCPRAhWbEK7ppIgm1p7VAYqkK7+PLea1 aeDAdfeKwOiLI73tlreeWqb+OuDhqFr/nyMzaXdxwsLHEg6WWoyHKcuM3Jbidg== 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 4dwmvj24MkzBfv for ; Wed, 21 Jan 2026 01:34:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id fe4c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 01:34:41 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Rick Macklem Subject: git: 053449fa5c6c - main - nfscl: Fix the build List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 053449fa5c6c9fdbff1d1014482a5842bc860811 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 01:34:41 +0000 Message-Id: <69702d31.fe4c.4a9785a8@gitrepo.freebsd.org> The branch main has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=053449fa5c6c9fdbff1d1014482a5842bc860811 commit 053449fa5c6c9fdbff1d1014482a5842bc860811 Author: Rick Macklem AuthorDate: 2026-01-21 01:32:23 +0000 Commit: Rick Macklem CommitDate: 2026-01-21 01:32:23 +0000 nfscl: Fix the build Fixes: f2155a6fb568 ("nfscl: Fix handling of case insensitive file systems") --- sys/fs/nfsclient/nfs_clrpcops.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/fs/nfsclient/nfs_clrpcops.c b/sys/fs/nfsclient/nfs_clrpcops.c index 0213534d9230..974d08611a00 100644 --- a/sys/fs/nfsclient/nfs_clrpcops.c +++ b/sys/fs/nfsclient/nfs_clrpcops.c @@ -5070,7 +5070,8 @@ nfsrpc_statfs(vnode_t vp, struct nfsstatfs *sbp, struct nfsfsinfo *fsp, } /* Try and find out if the server fs is case-insensitive. */ - error = nfsrpc_pathconf(vp, &pc, NULL, NULL, cred, p, &na, &attrflag); + error = nfsrpc_pathconf(vp, &pc, NULL, NULL, cred, p, &na, &attrflag, + NULL); if (error == 0 && pc.pc_caseinsensitive != 0) { NFSLOCKMNT(nmp); nmp->nm_state |= NFSSTA_CASEINSENSITIVE; From nobody Wed Jan 21 01:51:06 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwnGt6vpnz6PSNt; Wed, 21 Jan 2026 01:51:18 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (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 did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwnGt3rwgz3CLx; Wed, 21 Jan 2026 01:51:18 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: from tom.home (kib@localhost [127.0.0.1] (may be forged)) by kib.kiev.ua (8.18.1/8.18.1) with ESMTP id 60L1p6pd088555; Wed, 21 Jan 2026 03:51:09 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 60L1p6pd088555 Received: (from kostik@localhost) by tom.home (8.18.1/8.18.1/Submit) id 60L1p6p5088554; Wed, 21 Jan 2026 03:51:06 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Wed, 21 Jan 2026 03:51:06 +0200 From: Konstantin Belousov To: Rick Macklem Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: f2155a6fb568 - main - nfscl: Fix handling of case insensitive file systems Message-ID: References: <69701cba.3facc.37d4dc75@gitrepo.freebsd.org> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <69701cba.3facc.37d4dc75@gitrepo.freebsd.org> X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.2 X-Spam-Checker-Version: SpamAssassin 4.0.2 (2025-08-27) on tom.home X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4dwnGt3rwgz3CLx On Wed, Jan 21, 2026 at 12:24:26AM +0000, Rick Macklem wrote: > The branch main has been updated by rmacklem: > > URL: https://cgit.FreeBSD.org/src/commit/?id=f2155a6fb5681c3dca4524a3b2b862a72218a541 > > commit f2155a6fb5681c3dca4524a3b2b862a72218a541 > Author: Rick Macklem > AuthorDate: 2026-01-21 00:21:52 +0000 > Commit: Rick Macklem > CommitDate: 2026-01-21 00:21:52 +0000 > > nfscl: Fix handling of case insensitive file systems > > Name caching must be handled somewhat differently > for case insensitive file systems. Negative name > caching does not work and, for rename, all names > associated with the rename'd vnode must be disabled. Also for unlink. At least I did not found this in the patch. From nobody Wed Jan 21 02:05:14 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwnbJ5Th4z6PT9C for ; Wed, 21 Jan 2026 02:05:32 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Received: from mail-ed1-x536.google.com (mail-ed1-x536.google.com [IPv6:2a00:1450:4864:20::536]) (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 4dwnbJ3Z6fz3GvD for ; Wed, 21 Jan 2026 02:05:32 +0000 (UTC) (envelope-from rick.macklem@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-ed1-x536.google.com with SMTP id 4fb4d7f45d1cf-6505d3adc3aso9463929a12.1 for ; Tue, 20 Jan 2026 18:05:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1768961126; cv=none; d=google.com; s=arc-20240605; b=I/q1Jh+zjXnjVOq9q4hGQDZQHUtfnX7PhUWu0TS8zau00jfpjeWm1IWhzk5dBjcGMr TP9FVuEFo4ag0wPJVYnXA71YRWRA7gKcKABcKCCVJVBxz81HKG01YJqtxJ06CCcjMP5A 8ztJj9sKbWuD1DsWX5IeN/sZY3ULq/SFMFiuWmDfMd3NZjxoe5odHayufvXE6FMkPiXL ezQxkjTYTXea+AxnLURiOykHpOV0ajbCgAeJmVyCdVh56R7X+r8NZWQXt4HgqipnR4Xm wZGcrWHl7a1ZvmBUgUZHHtg5sJgcD/RAz/Im81lD9oRuKw8IwiQoGntHtDFq2UE5M9cs 2UAw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=LmLSHKGOrC2GDwYZ+3CFwLaJ5crAkvDQhbUEmh290MI=; fh=I/PqBT+/XGgmyKKM1EO3dLd+cW6ZsJ3iN/qtqcEl3N4=; b=Mt3E9oPC6KAKGyNk0+TSWtPck0gAIvoP7vv4WZO8aG3N23UeAwVsVu8FLe2H5m7Krv UDyC3qdgT99V9b2fQrNu7Hg83s4IFdno2t9zMpbvlfAw7SfJrq7MUqx6+/SReMhgV5Zn 49uB7bCbE0uyHo5jBdQc28vOG/jqUT/zmhwwbzU8cdJIfC0N2mNxPC3x1lx8j0CSEL/b c2KO0G+/EnBt51TapPPCYVEgwbi7kj+v0NkjT/pa7Q2JWqsKRV4HzMPK/egDhlqzZAyT vuBtSjCEy9DF2NfzSHrfeDMlguHkWazPC8XaQN9HB9Xd/FYNqS0+w5AAN9BPf/KPfACt nMjQ==; darn=freebsd.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1768961126; x=1769565926; darn=freebsd.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=LmLSHKGOrC2GDwYZ+3CFwLaJ5crAkvDQhbUEmh290MI=; b=UZWUkLasI+xFZCNYdn9+Ldn7t5+uxdCjz49HUoKlxIe6meQY0fT0BvM/zZzMA3TKSr TqHxp4kv21t1AXbVo9i+A8hhmu+EpGVC5LC8dd3HUh1WSn1awGsIFlCjB4112CxXrghs JfroHdlnmL36A0ikcXMq2OUUV+BGlPshcyFRyldNB2bQcJH65OneAgzZXWUKVY1qKuVl ydrxMJhOLlSclmt3vzWQYxLmJ+vbdO5rTOdf6Chbr7fci6N8IT0G0ph+P64sM85DO+Sl ixM5jiR0hmE8G3veyxs/iCsSl0CmTEsyExXWmV3vl3mi1tV19OxglHcH2RKPAV9YCLPM E7HA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768961126; x=1769565926; h=content-transfer-encoding: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=LmLSHKGOrC2GDwYZ+3CFwLaJ5crAkvDQhbUEmh290MI=; b=qv4AQUlqOznDahY9CRaO0zyE3gGHcMDYn0sJ3Nxg8Zd5jKOD+KS6G0eACu3XIPkaQ2 aKSAZxU3FdheE2TSTRCylqLsyr3SkzfbrF3uwJhV97m8YegBmgdaQc7/cnHS961Xslkl mSNGJxO+GjEFIiU5Zs4Yf6bIbFQSIuvY7lLOjZS6dPMxDFVA2mJarfTzf0xnO21md1bc abkjOGx+h7DqkmJDk6jcR0Ms61jKn6pWlRdoiRYht6OIvCqLHZ/Z25kdjYehjueU1Oj6 lx0TQIeU4NMTg5rIfBF2ZtZdVPiMFOUs+Td+2zsajTyg4UAaaPquvg9l/Pu/dCN6z0vI f1SA== X-Forwarded-Encrypted: i=1; AJvYcCVU9xgf9KibE4G16LGxqruNJRhmpDiS7qfqJA0oRz+PQNqi2cVQTpAT2VTXIoyGpDs1T6H296xjQUNMXhGGJKk0AOGnyw==@freebsd.org X-Gm-Message-State: AOJu0Yy+AF0kxrD7Jt9B5E+CWY5lm0k/nEsSao3xCF9iJk4jGOgPtN/k SX3+vo+0FEh3WsApMaGe2YIcfDmDLfwgmdC6Ba60e+tnrNzKRdaHZhihK3SvVYdXLf3yfauC6/D wq8lmDYzeADhTLPIknojPiHTWOk7eYg== X-Gm-Gg: AZuq6aL7oXhWpdkZ5vCDvIKPm6/Hcc750na+f/QD49DAf4XUWpsOAKjLyqLxRD2JbTi fAc6KTADqv+zJWRoHPfa9vCCn00IKOwLVchnVLLh1QDszoLx7o73I7IOP0bUVER7iscDQcGVoDV rej5HTAroVNj3j9ae7s+DDWBNYLvXIMrWFGnGpXanZdovdtd7xMKnzdh0gU86OlKjcau5Gpyi/W sdekZrkHjSquR0QRYXW5WF5c1BQfYNnF5Ssu3y9YzJEUI4y/LCQKJxSC/ukV/q+UxpDUxcTNuEo JXqaWQQxp0Z+5ANVkLsJyioW9QBIo22phS5fm8s= X-Received: by 2002:a05:6402:26d3:b0:64b:42a6:3946 with SMTP id 4fb4d7f45d1cf-654b93641a7mr12721387a12.7.1768961125709; Tue, 20 Jan 2026 18:05:25 -0800 (PST) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <69701cba.3facc.37d4dc75@gitrepo.freebsd.org> In-Reply-To: From: Rick Macklem Date: Tue, 20 Jan 2026 18:05:14 -0800 X-Gm-Features: AZwV_QgGfzb9tG1Sh9jfj30oOToruxALZAzHGeEmZcCX63-dVWeOQfYvwQ0bM6M Message-ID: Subject: Re: git: f2155a6fb568 - main - nfscl: Fix handling of case insensitive file systems To: Konstantin Belousov Cc: Rick Macklem , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable 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:2a00:1450::/32, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4dwnbJ3Z6fz3GvD On Tue, Jan 20, 2026 at 5:51=E2=80=AFPM Konstantin Belousov wrote: > > CAUTION: This email originated from outside of the University of Guelph. = Do not click links or open attachments unless you recognize the sender and = know the content is safe. If in doubt, forward suspicious emails to IThelp@= uoguelph.ca. > > On Wed, Jan 21, 2026 at 12:24:26AM +0000, Rick Macklem wrote: > > The branch main has been updated by rmacklem: > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=3Df2155a6fb5681c3dca4524a3= b2b862a72218a541 > > > > commit f2155a6fb5681c3dca4524a3b2b862a72218a541 > > Author: Rick Macklem > > AuthorDate: 2026-01-21 00:21:52 +0000 > > Commit: Rick Macklem > > CommitDate: 2026-01-21 00:21:52 +0000 > > > > nfscl: Fix handling of case insensitive file systems > > > > Name caching must be handled somewhat differently > > for case insensitive file systems. Negative name > > caching does not work and, for rename, all names > > associated with the rename'd vnode must be disabled. > Also for unlink. At least I did not found this in the patch. nfs_remove() already does a cache_purge(vp), where "vp" is the file being removed. And testing for msdosfs, it worked ok. rick > From nobody Wed Jan 21 02:47:50 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwpX640KKz6PWVs for ; Wed, 21 Jan 2026 02:47: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwpX61ZVwz3Klt for ; Wed, 21 Jan 2026 02:47:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768963670; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9J1IuaCmerVZ9taLu/KZmg1kYnFW9fkMT1rG2J4hRco=; b=DaBMjMLYm5jwKFNUUf+4G1pHMXEIHRdl81X8in2jMDpQk8gjlzyfSTNeHgEWt+z9sX2o6g Nj8DeZ/PKwMWc/+TkwFuGfOSuvDUle740g2kR+G1pmHcOhlaRVCJPVv/fXCg4kmIThjP0m LAO2H7kmiHPssHYWNp0d0eNPowLNNQL9P93a3+2yVZ3XrEnTUphcsgksJS0h+NAeKi+vZY N9yO0vSozb5mgHuCGW6sCaKQc2eSbMZayPWUq/ni85wkQZ8x2Hq0T3cr35Kma4CJlFa3to EWG9wVeJr1Tkw4Fa/EBeloGii+HN/3Zu4aWUb0Qlocde0HoFef5ZeAUlzujszg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768963670; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9J1IuaCmerVZ9taLu/KZmg1kYnFW9fkMT1rG2J4hRco=; b=FkpvR5vnQg3tiY6sjMvILRTCHEeJCdk4veDCaSBYVHm/z8Iq8/yvWEXlg6Kpbrc8PVWgja noAuJeXndJEEAcHNOBwaG604PrSRwXGIKqzqvGk3fjMfohEQfCIt0GGlw9muZ4nzRQeBbf XzrwpXtH58ddmltlRt2g0MFypRXxugdPjsskZUR7Hy0haO2GQaXglsVt2X2SojFXGt5Bl0 LjOCgznI7l/caLT+kx98HBXHYNOiDHD+itsIyIO71272VcHOaWHNJb2lPna68a6knVIfuj d59yUKu/bhe9et0+X4S2U0xQSxNQ5dtT5xHXebZx3pPBYBGR/LyyH9eu6zH9tg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768963670; a=rsa-sha256; cv=none; b=KXjkvwWTEzPrwzKETlwluOJ5S/VTLFq/A0tJ3paU2Eza0FxuSkP3BQfFKk2cgSvraIYuNY 7V0A6t7bXNya61Nlo9Il9xUm4DPadUvDiUAuMFhJsQVUhsuKhxrU9p+gY3I5+4YQj5+his O5yB5tf43jc5yr9ZoROr5iXzZSaT2NCcIh5voRBF7lKx+NNhUS7VIz8LYYkFVO+hJ6B1iD 5UD4P9Is0BSK3rPLGZDOUpA5yCcB9Y9BKo9zJddU56TLGiDefTsXNinweE4ayJmiffahER 9ebL5tSThMODUeu58e3akiSKOpiugw3BGdV2j3ANPf2GCgtQrYsWFOg19wauQA== 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 4dwpX60cvhzDL9 for ; Wed, 21 Jan 2026 02:47:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 26c33 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 02:47:50 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Xin LI Subject: git: 12444a4da514 - main - cron: Implement full PAM session lifecycle for user jobs List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: delphij X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 12444a4da514e91fdf984b31e1691d042d5f88d2 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 02:47:50 +0000 Message-Id: <69703e56.26c33.5caa0953@gitrepo.freebsd.org> The branch main has been updated by delphij: URL: https://cgit.FreeBSD.org/src/commit/?id=12444a4da514e91fdf984b31e1691d042d5f88d2 commit 12444a4da514e91fdf984b31e1691d042d5f88d2 Author: Xin LI AuthorDate: 2025-12-29 09:32:24 +0000 Commit: Xin LI CommitDate: 2026-01-21 02:47:16 +0000 cron: Implement full PAM session lifecycle for user jobs Extend PAM integration beyond account checks to include credential establishment and session management, allowing PAM modules to configure the execution environment for user cron jobs. Previously, cron only called pam_acct_mgmt() to verify account validity but immediately terminated the PAM handle before job execution. This prevented PAM modules from establishing sessions, setting credentials (e.g., Kerberos tickets), or exporting environment variables needed by jobs. The PAM handle now persists in the intermediate process throughout the job execution, enabling proper session open/close pairing. Credentials are established and sessions opened while still running as root, before dropping privileges in the grandchild. PAM environment variables are exported in the job process with user crontab variables taking precedence. A session rule (pam_permit.so) is added to /etc/pam.d/cron to enable session support without changing default behavior. Administrators can replace this with other modules as needed. System crontab entries continue to bypass all PAM operations. PR: bin/244844 Reviewed by: des MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D54415 --- lib/libpam/pam.d/cron | 3 + usr.sbin/cron/cron/do_command.c | 144 ++++++++++++++++++++++++++++++++++++++-- 2 files changed, 142 insertions(+), 5 deletions(-) diff --git a/lib/libpam/pam.d/cron b/lib/libpam/pam.d/cron index 733631306641..490663508a72 100644 --- a/lib/libpam/pam.d/cron +++ b/lib/libpam/pam.d/cron @@ -6,3 +6,6 @@ # account account required pam_nologin.so account required pam_unix.so + +# session +session required pam_permit.so diff --git a/usr.sbin/cron/cron/do_command.c b/usr.sbin/cron/cron/do_command.c index 58eed70c1be6..f757b7175126 100644 --- a/usr.sbin/cron/cron/do_command.c +++ b/usr.sbin/cron/cron/do_command.c @@ -76,6 +76,41 @@ do_command(entry *e, user *u) Debug(DPROC, ("[%d] main process returning to work\n", getpid())) } +#ifdef PAM +static void +pam_cleanup(pam_handle_t **pamhp, int *session_opened, int *cred_established, + char ***pam_envp, const char *usernm, pid_t pid, int log_errors, + int end_status) +{ + int pam_err; + + if (*pamhp == NULL) + return; + if (*session_opened) { + pam_err = pam_close_session(*pamhp, PAM_SILENT); + if (log_errors && pam_err != PAM_SUCCESS) { + log_it(usernm, pid, "SESSION-CLOSE", + pam_strerror(*pamhp, pam_err)); + } + *session_opened = 0; + } + if (*cred_established) { + pam_err = pam_setcred(*pamhp, PAM_DELETE_CRED); + if (log_errors && pam_err != PAM_SUCCESS) { + log_it(usernm, pid, "CRED-DELETE", + pam_strerror(*pamhp, pam_err)); + } + *cred_established = 0; + } + if (*pam_envp != NULL) { + openpam_free_envlist(*pam_envp); + *pam_envp = NULL; + } + pam_end(*pamhp, end_status); + *pamhp = NULL; +} +#endif + static void child_process(entry *e, user *u) @@ -88,6 +123,14 @@ child_process(entry *e, user *u) int bytes = 1; int status = 0; const char *homedir = NULL; +#ifdef PAM + pam_handle_t *pamh = NULL; + int pam_err = PAM_SUCCESS; + int pam_session_opened = 0; + int pam_cred_established = 0; + /* Keep PAM env list in the middle process for the grandchild to use. */ + char **pam_envp = NULL; +#endif # if defined(LOGIN_CAP) struct passwd *pwd; login_cap_t *lc; @@ -115,8 +158,6 @@ child_process(entry *e, user *u) * as any user. */ if (strcmp(u->name, SYS_NAME)) { /* not equal */ - pam_handle_t *pamh = NULL; - int pam_err; struct pam_conv pamc = { .conv = openpam_nullconv, .appdata_ptr = NULL @@ -139,14 +180,50 @@ child_process(entry *e, user *u) exit(ERROR_EXIT); } + pam_err = pam_set_item(pamh, PAM_TTY, "cron"); + if (pam_err != PAM_SUCCESS) { + log_it("CRON", getpid(), "error", "can't set PAM_TTY"); + pam_cleanup(&pamh, &pam_session_opened, + &pam_cred_established, &pam_envp, usernm, + getpid(), 0, pam_err); + exit(ERROR_EXIT); + } + pam_err = pam_acct_mgmt(pamh, PAM_SILENT); /* Expired password shouldn't prevent the job from running. */ if (pam_err != PAM_SUCCESS && pam_err != PAM_NEW_AUTHTOK_REQD) { log_it(usernm, getpid(), "USER", "account unavailable"); + pam_cleanup(&pamh, &pam_session_opened, + &pam_cred_established, &pam_envp, usernm, + getpid(), 0, pam_err); + exit(ERROR_EXIT); + } + + pam_err = pam_setcred(pamh, PAM_ESTABLISH_CRED); + if (pam_err != PAM_SUCCESS) { + log_it(usernm, getpid(), "CRED", + pam_strerror(pamh, pam_err)); + pam_cleanup(&pamh, &pam_session_opened, + &pam_cred_established, &pam_envp, usernm, + getpid(), 0, pam_err); + exit(ERROR_EXIT); + } + pam_cred_established = 1; + + /* Establish the session while still root in the middle process. */ + pam_err = pam_open_session(pamh, PAM_SILENT); + if (pam_err != PAM_SUCCESS) { + log_it(usernm, getpid(), "SESSION", + pam_strerror(pamh, pam_err)); + pam_cleanup(&pamh, &pam_session_opened, + &pam_cred_established, &pam_envp, usernm, + getpid(), 0, pam_err); exit(ERROR_EXIT); } + pam_session_opened = 1; - pam_end(pamh, pam_err); + /* Collect PAM env now; apply only in grandchild before exec. */ + pam_envp = pam_getenvlist(pamh); } #endif @@ -161,6 +238,13 @@ child_process(entry *e, user *u) */ if (pipe(stdin_pipe) != 0 || pipe(stdout_pipe) != 0) { log_it("CRON", getpid(), "error", "can't pipe"); +#ifdef PAM + if (pamh != NULL && strcmp(u->name, SYS_NAME)) { + pam_cleanup(&pamh, &pam_session_opened, + &pam_cred_established, &pam_envp, usernm, + getpid(), 1, pam_err); + } +#endif exit(ERROR_EXIT); } @@ -207,12 +291,23 @@ child_process(entry *e, user *u) switch (jobpid = fork()) { case -1: log_it("CRON", getpid(), "error", "can't fork"); +#ifdef PAM + if (pamh != NULL && strcmp(u->name, SYS_NAME)) { + pam_cleanup(&pamh, &pam_session_opened, + &pam_cred_established, &pam_envp, usernm, + getpid(), 1, pam_err); + } +#endif exit(ERROR_EXIT); /*NOTREACHED*/ case 0: Debug(DPROC, ("[%d] grandchild process fork()'ed\n", getpid())) +#ifdef PAM + /* Grandchild runs the user job; PAM handle remains in parent. */ + pamh = NULL; +#endif if (e->uid == ROOT_UID) Jitter = RootJitter; if (Jitter != 0) { @@ -329,8 +424,8 @@ child_process(entry *e, user *u) * the homedir given by the pw entry otherwise. * * If !LOGIN_CAP, then HOME is always set in e->envp. - * - * XXX: probably should also consult PAM. + * PAM environment is applied later for the job; we do not + * use it for cwd to avoid changing historical behavior. */ { char *new_home = env_get("HOME", e->envp); @@ -351,6 +446,29 @@ child_process(entry *e, user *u) char *shell = env_get("SHELL", e->envp); char **p; +#ifdef PAM + if (pam_envp != NULL) { + char **pp; + + /* Apply PAM-provided env only to the job process. */ + for (pp = pam_envp; *pp != NULL; pp++) { + /* + * Hand off each PAM string directly to the + * environment; this process must not free + * pam_envp after putenv() since the strings + * must persist until exec. The parent will + * free its copy after fork. + */ + if (putenv(*pp) != 0) { + warn("putenv"); + _exit(ERROR_EXIT); + } + } + /* Free the pointer array; strings stay for exec. */ + free(pam_envp); + pam_envp = NULL; + } +#endif /* Apply the environment from the entry, overriding * existing values (this will always set LOGNAME and * SHELL). putenv should not fail unless malloc does. @@ -400,6 +518,14 @@ child_process(entry *e, user *u) break; } +#ifdef PAM + if (jobpid > 0 && pam_envp != NULL) { + /* Parent doesn't need PAM env list after the fork. */ + openpam_free_envlist(pam_envp); + pam_envp = NULL; + } +#endif + /* middle process, child of original cron, parent of process running * the user's command. */ @@ -640,6 +766,14 @@ child_process(entry *e, user *u) if (*input_data && stdinjob > 0) wait_on_child(stdinjob, "grandchild stdinjob"); + +#ifdef PAM + if (pamh != NULL && strcmp(u->name, SYS_NAME)) { + /* Close the PAM session after the job finishes. */ + pam_cleanup(&pamh, &pam_session_opened, &pam_cred_established, + &pam_envp, usernm, getpid(), 1, PAM_SUCCESS); + } +#endif } static WAIT_T From nobody Wed Jan 21 04:37:44 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwryw74znz6PdLp for ; Wed, 21 Jan 2026 04:37: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwryw5tWGz3T58 for ; Wed, 21 Jan 2026 04:37:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768970264; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7iinI/k9WhlYokJDOuO09Hf6a5EUp5yPoc4ImjyZHJI=; b=RgP+G3fPlV+xScWbjR12Ag3c3GKBrfhrFz4i5fbx0Ar1/oRigPhyziVc+tUJjVkvRVd3wl 09O7mexucytWU28r6EzLOxRwitq0pela7OSPHW3QfPA94jGdZKg//kZKfWxa/5sWp4nt58 NG0l4TAdy/Te9CIJI/GOkr59bzfXUk71vJd8TXtq+Oh+IWrH/hITKe9wTcj6PYz02NuLgk GRDe6ke6DKVYHxXwCKFwL5f2NmuWGubHgXY7TTn4hBgZ+WEt+rdGJ6ELCK05/EgzjrSE28 b7iirQulz4W8OSEBu9x+aR319qalPgnyl15ZOsig7i045wFjK3dS0Jv/T99fCw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768970264; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7iinI/k9WhlYokJDOuO09Hf6a5EUp5yPoc4ImjyZHJI=; b=dxySLL06ds+CWGQdVGusEIVXQVwDqXcwL5VZ0SC35B+i39u0UvQr3x2OoBC0RqZFYAeI8l lxlf6zHnPJtSkCWYL+B5UNPcglPKCPagJtmgdQBAJ5HDQl0RNF2rGzUBp+mbMsBtF2c8yt LMEKePLdXheVpCyFkGr8kWd7LslgHv6RX/YcP+4fOr+wgZE8M0BHS3f8vgwbwFFOyjUiOW 4ovUSNkeRSMgl6cgM/R0SXw1kkvl4SC4Yd7CEYNEVjO2xirkEkCl47Q1yvx8lJ8xhjJD4O pyheiH04Zj4ogZY/LmYQRk1DmZTfm8kCLPwC2Qy54Ud90Ol0VaHhcPAfkIH2Eg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768970264; a=rsa-sha256; cv=none; b=G93LXU9r1gomoIryrZSrDg84+zw/9e6aUX9H09RDobDBa9axKOv8LwuGV7mZ1zCk5KnUC3 nKefvddGdkHCgZ1FzQG0NVUbFw5h1csBfdVgox0h9v93BZyH3NX85voO6H68I6Nhcpo9Ca cFacEUYo8Y6DVa6rlDxxxdY08MAaZXKdH6BwxgM7D0nv6wluqRIv5yoIpNGrwnZoFqanA2 6S1A3ooF6pvsVmE+k3pS+iBzTdBmgK7C2Q6v/ZnAh1XEEfCySquWxC6dkKUGvwinCGDr2h +bvo3lo0PZg850oHCwCN6PgHOU/A9h9BRh7comG6F7o4+k5aeelZ8U4sL1b//g== 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 4dwryw4rsqzYrr for ; Wed, 21 Jan 2026 04:37:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 39cff by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 04:37:44 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: c611ef5747a5 - main - dpaa: Simplify CPU binding for bman and qman List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c611ef5747a5d2ceb094331d3dd74d5c8b523b9c Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 04:37:44 +0000 Message-Id: <69705818.39cff.240125b2@gitrepo.freebsd.org> The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=c611ef5747a5d2ceb094331d3dd74d5c8b523b9c commit c611ef5747a5d2ceb094331d3dd74d5c8b523b9c Author: Justin Hibbits AuthorDate: 2026-01-21 04:16:04 +0000 Commit: Justin Hibbits CommitDate: 2026-01-21 04:28:40 +0000 dpaa: Simplify CPU binding for bman and qman If cpu-handle property doesn't exist simply iterate and assign the CPUs in sequence rather than following the convoluted search which may not bear fruit in some cases. If cpu-handle doesn't exist for one portal it probably doesn't exist for any of them. --- sys/dev/dpaa/bman_fdt.c | 39 +++++++++------------------------------ sys/dev/dpaa/qman_fdt.c | 40 +++++++++------------------------------- 2 files changed, 18 insertions(+), 61 deletions(-) diff --git a/sys/dev/dpaa/bman_fdt.c b/sys/dev/dpaa/bman_fdt.c index dffec52d5248..34b29ad6e236 100644 --- a/sys/dev/dpaa/bman_fdt.c +++ b/sys/dev/dpaa/bman_fdt.c @@ -136,25 +136,6 @@ bman_portals_fdt_probe(device_t dev) return (BUS_PROBE_DEFAULT); } -static phandle_t -bman_portal_find_cpu(int cpu) -{ - phandle_t node; - pcell_t reg; - - node = OF_finddevice("/cpus"); - if (node == -1) - return (node); - - for (node = OF_child(node); node != 0; node = OF_peer(node)) { - if (OF_getprop(node, "reg", ®, sizeof(reg)) <= 0) - continue; - if (reg == cpu) - return (node); - } - return (-1); -} - static int bman_portals_fdt_attach(device_t dev) { @@ -185,17 +166,15 @@ bman_portals_fdt_attach(device_t dev) } /* Checkout related cpu */ if (OF_getprop(child, "cpu-handle", (void *)&cpu, - sizeof(cpu)) <= 0) { - cpu = bman_portal_find_cpu(cpus); - if (cpu <= 0) - continue; - } - /* Acquire cpu number */ - cpu_node = OF_instance_to_package(cpu); - if (OF_getencprop(cpu_node, "reg", &cpu_num, sizeof(cpu_num)) <= 0) { - device_printf(dev, "Could not retrieve CPU number.\n"); - return (ENXIO); - } + sizeof(cpu)) > 0) { + cpu_node = OF_instance_to_package(cpu); + /* Acquire cpu number */ + if (OF_getencprop(cpu_node, "reg", &cpu_num, sizeof(cpu_num)) <= 0) { + device_printf(dev, "Could not retrieve CPU number.\n"); + return (ENXIO); + } + } else + cpu_num = cpus; cpus++; diff --git a/sys/dev/dpaa/qman_fdt.c b/sys/dev/dpaa/qman_fdt.c index 3f22ea4d651a..35016073ba0e 100644 --- a/sys/dev/dpaa/qman_fdt.c +++ b/sys/dev/dpaa/qman_fdt.c @@ -136,25 +136,6 @@ qman_portals_fdt_probe(device_t dev) return (BUS_PROBE_DEFAULT); } -static phandle_t -qman_portal_find_cpu(int cpu) -{ - phandle_t node; - pcell_t reg; - - node = OF_finddevice("/cpus"); - if (node == -1) - return (-1); - - for (node = OF_child(node); node != 0; node = OF_peer(node)) { - if (OF_getprop(node, "reg", ®, sizeof(reg)) <= 0) - continue; - if (reg == cpu) - return (node); - } - return (-1); -} - static int qman_portals_fdt_attach(device_t dev) { @@ -213,18 +194,15 @@ qman_portals_fdt_attach(device_t dev) } /* Checkout related cpu */ if (OF_getprop(child, "cpu-handle", (void *)&cpu, - sizeof(cpu)) <= 0) { - cpu = qman_portal_find_cpu(cpus); - if (cpu <= 0) - continue; - } - /* Acquire cpu number */ - cpu_node = OF_instance_to_package(cpu); - if (OF_getencprop(cpu_node, "reg", &cpu_num, sizeof(cpu_num)) <= 0) { - device_printf(dev, "Could not retrieve CPU number.\n"); - return (ENXIO); - } - + sizeof(cpu)) > 0) { + cpu_node = OF_instance_to_package(cpu); + /* Acquire cpu number */ + if (OF_getencprop(cpu_node, "reg", &cpu_num, sizeof(cpu_num)) <= 0) { + device_printf(dev, "Could not retrieve CPU number.\n"); + return (ENXIO); + } + } else + cpu_num = cpus; cpus++; if (ofw_bus_gen_setup_devinfo(&ofw_di, child) != 0) { From nobody Wed Jan 21 04:37:45 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwryy3Tt2z6PdNl for ; Wed, 21 Jan 2026 04:37:46 +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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwryx6ks1z3SgH for ; Wed, 21 Jan 2026 04:37:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768970266; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5pAqhLrFjQaf/eU7EbbQGyRnP8fQCWdcEb5gL4mA6XM=; b=txIY0zPPvhGNFzw5/Xwl9jVD92l4FfwGNika0vKJVRfNUTxEqfOTWa/uROcKSIDqyJ6DzP JuEcFOiYgVZ0DCHmK7xwZ2UrOx/MdH8FNkkLin+u0tQn4ZMHK+JjCUZE4Bq+/yfMLiuHkW R75V6W1ZNWCYJdouMUT2aWaXq7FxTW42zBZwlGGK2HCp1vsIXCgD+L4BStJhQ5O/9ystIq iVrus475uynRKbyGyttOI0qey8KkaHFSriptq0YdPcktCDi0/1EoR+0lSQr9tcTVkAjUrz UhmQgVkiwAAH5Dd2V8TiHdZ4CHHAm10ZvRqEHs78pOaehB8s4Amg/AlTjunTXA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768970266; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5pAqhLrFjQaf/eU7EbbQGyRnP8fQCWdcEb5gL4mA6XM=; b=G3tjW149tIiWMr/6uULnZhAa6i/7sV2K8ysUrw1y81EpNHxtDh6CaCuYDzL3+GXmqVokhu zGAU9Hg4UvUBdsudc3KcihYbjdATRtr7FBlPl9naLG6sgAkNqi939rFXkPduG1Gfsa0IwI mDZfjnNyPzjKXKte33faPzJ6hc5iSY5ALt9p03O6COPsCkZ2hgz7CSkMNDRew6AXg3+syO +X+trb+fSwDq1T9Ft8S4aUut6fqBxAz2AcHVnBDondRYR/PGn1iRaVllhv802Gef1d1q6C DB5seyrxuJKf1Hn0yNF+jj15pXe03C2/fQTl3eHTDXuJUe0JwS8vrkcTnPy1rw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768970266; a=rsa-sha256; cv=none; b=o1pYkKTi+emBzr6ePuq55bTgLRCYwo3OTGi5YOeSdnr4DnKsIJl3proxFJyUkqvtsAzef8 9TghrYCdClltyK0FGYkHgwW9wFhE2E87NARcO2MGfUMbXwGeHrpmqgyfUD9g9+B8Id05pW sQNU2ztouz4HWUemnfvj3Z+mqo6FqjqjSUQhh/nc6X1OMseQLGuf38frniKUyJqgBP5pDg VfAX168AoGoR4GJNFkQ8OBHPgw4312w0ntOJcDEgxp3giZqDlud1jWg7Esq9kKM77z+c1t OVuufBvxIxbJLDrH/b5FhIpELT4REPjsuvr1MaWRA1bSTacFUJsA+5LPIp+nrw== 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 4dwryx5xtXzY5T for ; Wed, 21 Jan 2026 04:37:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 39b20 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 04:37:45 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: 24d048be7aae - main - powerpc/mpc85xx: Set pc_hwref to the primary thread ID List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 24d048be7aae10e101596bd0d0f09a901a6f97f0 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 04:37:45 +0000 Message-Id: <69705819.39b20.fe1347d@gitrepo.freebsd.org> The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=24d048be7aae10e101596bd0d0f09a901a6f97f0 commit 24d048be7aae10e101596bd0d0f09a901a6f97f0 Author: Justin Hibbits AuthorDate: 2026-01-21 04:16:17 +0000 Commit: Justin Hibbits CommitDate: 2026-01-21 04:28:40 +0000 powerpc/mpc85xx: Set pc_hwref to the primary thread ID On multithreaded cores (e6500) the CPU ID in the device tree (reg[0]) is the primary core, which may not match the cpuid, until Book-E threading is added. --- sys/powerpc/mpc85xx/platform_mpc85xx.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/sys/powerpc/mpc85xx/platform_mpc85xx.c b/sys/powerpc/mpc85xx/platform_mpc85xx.c index 6653c40b01a3..cc2ad829eb05 100644 --- a/sys/powerpc/mpc85xx/platform_mpc85xx.c +++ b/sys/powerpc/mpc85xx/platform_mpc85xx.c @@ -302,14 +302,26 @@ mpc85xx_smp_first_cpu(platform_t plat, struct cpuref *cpuref) static int mpc85xx_smp_next_cpu(platform_t plat, struct cpuref *cpuref) { + phandle_t node; + pcell_t reg; + int i; if (cpu >= maxcpu) return (ENOENT); cpuref->cr_cpuid = cpu++; - cpuref->cr_hwref = cpuref->cr_cpuid; + + node = OF_finddevice("/cpus"); + for (i = 0, node = OF_child(node); i < cpuref->cr_cpuid; + i++, node = OF_peer(node)) + ; + if (OF_getencprop(node, "reg", ®, sizeof(reg)) > 0) + cpuref->cr_hwref = reg; + else + cpuref->cr_hwref = cpuref->cr_cpuid; if (bootverbose) - printf("powerpc_smp_next_cpu: cpuid %d\n", cpuref->cr_cpuid); + printf("powerpc_smp_next_cpu: cpuid %d, hwref %d\n", + cpuref->cr_cpuid, (int)cpuref->cr_hwref); return (0); } From nobody Wed Jan 21 04:37:46 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwrz019CYz6PdSG for ; Wed, 21 Jan 2026 04:37: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwryz083mz3T5G for ; Wed, 21 Jan 2026 04:37:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768970267; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iwsvze9QWj1CX9LvTea8eQ3UsIwfa5iFRht+kqvxke4=; b=K7LcfZFnoyVi+p2ZjcuKCegeurlvAJZXqqVZxoSdHmnTUR2ejEF9m4FpHBAmiIuA/VNjy3 0g88PHexFG6dYUtuVHxKV+71s3DiOMKkWBgaul2qvFzx/Zz+a0BASN1QpQeaEWKmoNrg9Y +9AeLNO4PCZ4CHCKcaAeL1x1407/veyBoAM4ocmF+qq3hVF68Aek1TgaCvMJzCBPvAVoZt pKfsKj7MIkFRzLUMTbgGeF7+uabgVX0Hz9Oc3ajoEdDAO7c3TSE7AnqDya81U/o1yrGsaI XU4Tuyh0Di9L5QwjKagW+ubI/HFJtUyu9esF1iWAb3slDJSmSeCyCORaWVBTTA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768970267; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iwsvze9QWj1CX9LvTea8eQ3UsIwfa5iFRht+kqvxke4=; b=Phb5nIQ0394AacdFna9Xk2sRmrUs17gn6KFVrhCSU+aJvzwJIyH6SF2FDI9wUj1zUJCYRO FUW3snIINlH8C8hsOzSB1PfxirjtaITSCnGJ8GvSWNF5JbGyzKdEt/mBb7EscQ0Cd6TBxW GwIH6ukDuVkHOLrWpkRgImnQoB87h6NLA+InM6xzXjA1KwJUxivQMIwkU3EvnXs4fct91N 2B8hcjqonFikdyw0evJBubJfZB6d1jj78iyBbJwq5rc90TtxUd9Ta9EdSU+CoTS1LSCcif 1IVoBR9cVegybYLFIh1kkYeIOY0xtfCeQrcSnwRKZ0BW8R5LYbDw4ahd37JIUA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768970267; a=rsa-sha256; cv=none; b=Gcjp+dLvTUY0qgReuNUtampA9RuQXxy+w43hwYcZVHeF9mWmggTA64Ca4lEZxMC5eHrggC 1SgQQRwij+89HlLWdP6W32T0DTKoDk24bT+v8PVSvkQcbbEXjQEikjFNUocZgBT0w5MnAd 7OCwqtQ+8FAvrn/vP0a5IwEy2VkBlqBQnbpWr07nWYvB+5h2y1tVb1CaajU2gfzvolWMTS Oqn3Ii+yNnz7KsKYY8I63nDX6CQmdG4bOnFxoKqp+Sr39r66XttZi1uolATuyu6R7MOwP6 6RFnEGZQk1nG1WlHPOHXiUqkj+kA8s+EpBQ/PUf57H7SlUHkvEb3sfGYl9r9tg== 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 4dwryy6Gv4zYvL for ; Wed, 21 Jan 2026 04:37:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 38bb7 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 04:37:46 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: 21a7a9ef8b49 - main - powerpc/mpc85xx: Fix PCI attach error cleanup List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhibbits X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 21a7a9ef8b49ce21b87c8526b526f97cc91fdd43 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 04:37:46 +0000 Message-Id: <6970581a.38bb7.e6a6502@gitrepo.freebsd.org> The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=21a7a9ef8b49ce21b87c8526b526f97cc91fdd43 commit 21a7a9ef8b49ce21b87c8526b526f97cc91fdd43 Author: Justin Hibbits AuthorDate: 2026-01-21 04:19:28 +0000 Commit: Justin Hibbits CommitDate: 2026-01-21 04:28:41 +0000 powerpc/mpc85xx: Fix PCI attach error cleanup If an error occurs during attach after ofw_pcib_init() runs, the device is torn down, leaving the rmans embedded in the softc attached to the rman list, thus corrupting the rman list. Fix this by undoing everything that was done by this point. MFC after: 1 week --- sys/powerpc/mpc85xx/pci_mpc85xx.c | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/sys/powerpc/mpc85xx/pci_mpc85xx.c b/sys/powerpc/mpc85xx/pci_mpc85xx.c index 8e349df03a51..33dca7ab6c50 100644 --- a/sys/powerpc/mpc85xx/pci_mpc85xx.c +++ b/sys/powerpc/mpc85xx/pci_mpc85xx.c @@ -360,13 +360,13 @@ fsl_pcib_attach(device_t dev) error = ofw_pcib_init(dev); if (error) - return (error); + goto err; /* * Configure decode windows for PCI(E) access. */ if (fsl_pcib_decode_win(node, sc) != 0) - goto err; + goto err1; cfgreg = fsl_pcib_cfgread(sc, 0, 0, 0, PCIR_COMMAND, 2); cfgreg |= PCIM_CMD_SERRESPEN | PCIM_CMD_BUSMASTEREN | PCIM_CMD_MEMEN | @@ -392,6 +392,7 @@ fsl_pcib_attach(device_t dev) if (sc->sc_pcie) { ltssm = fsl_pcib_cfgread(sc, 0, 0, 0, PCIR_LTSSM, 1); if (ltssm < LTSSM_STAT_L0) { + /* Stay attached, it may change later. */ if (bootverbose) printf("PCI %d: no PCIE link, skipping\n", device_get_unit(dev)); @@ -432,7 +433,15 @@ fsl_pcib_attach(device_t dev) return (ofw_pcib_attach(dev)); +err1: + ofw_pcib_fini(dev); err: + if (sc->sc_irq_res != NULL) + bus_release_resource(dev, sc->sc_irq_res); + if (sc->sc_res != NULL) + bus_release_resource(dev, sc->sc_res); + mtx_destroy(&sc->sc_cfg_mtx); + return (ENXIO); } @@ -680,9 +689,15 @@ fsl_pcib_detach(device_t dev) return (error); sc = device_get_softc(dev); + ofw_pcib_fini(dev); mtx_destroy(&sc->sc_cfg_mtx); + if (sc->sc_irq_res != NULL) + bus_release_resource(dev, sc->sc_irq_res); + if (sc->sc_res != NULL) + bus_release_resource(dev, sc->sc_res); + return (0); } From nobody Wed Jan 21 06:34:08 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwvYF1qyPz6PlN2 for ; Wed, 21 Jan 2026 06:34: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwvYF0SL9z3cmx for ; Wed, 21 Jan 2026 06:34:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768977249; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uqhkosCdFQtUvlUeDcvGOVJFGGd5XA9rlz7POEx9RIU=; b=H4btYm2tcs5HJgzkkg0T/Mr8VRrp7c8NNloSPWffONJ8kPqGsgOT8w8/LWI9cB93qC0QGx rSwc3WqB86lX6IRzVpVb0yQbUuM7Nk3PTM3M/taGqUUuBbvAMptGJEIK+vBHyy3pH2HGBX 1BLJUAkbLhOURzoo6wrgNs38S0xlCEfHBUbehTegfNNGfyWUx1OTW99r8NkCR5F5ADCx42 18+5ZJEIkSrv/RV8GMHmcuDxaAl0J+3F7wPXCA+lGuVEddfrjcKfdAG6w+dDcjDt8BEyHD Ggh4zRqPCqT1LaiAzsRGOSXhQyirZd/N+pvaF68VgMK9jlbP5n92Qx8ioUtlUQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768977249; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uqhkosCdFQtUvlUeDcvGOVJFGGd5XA9rlz7POEx9RIU=; b=beq9ZVTYN1z+pPA/A8IpD30ka10ka59YPuUG8N2L38SHiafH4+IeAde44gyJqV2T5NrYiY 4c9TPGYhrWzcoReMbCJSTmQuErqrXtHmCkcJKP3UngDtWKu3L1jtAotIEJmWsyYu6Cjuq1 NsOFMdhvwwf+lbji1zH3WZcerqyjcip1YdVSDeGnha28jP+2yN11CiXC+zFXu+5imcS4NL zEaLWAZmnxtILpE4da3i0QgCpChChnmusCGKTE/JMUlRB81BR3LYRz2I51IsA9oZ8qddCi 0uUvL6U85833i72HSLFebk4s4UdIXySsyYG2Xl0SvKup7vSGnzga7PUWhpo7QQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768977249; a=rsa-sha256; cv=none; b=gy6bUKeAyTG2Wm5kTTK7dkE1C6Q5y/KgkUTx3jQURkMdI5qSqiBXOTmpp5FtiL/kI3wak2 Qyte9h1f5UYOwrxgvUNpBOLFKbEhOt8Y6Isd0uyc6meg7mQZ/zc5lUQee/pPLJAGtTqoqo oezhC/IfAuKnCpSIFSbcPee9AoqpAiSIPCMeFDgXSt924/d0KoQ4kZYHCRkmwRIGbb4+YM tnH3GGq86zJNAfDICgg3ndy8Y5K//jumrwM5JFK95IrRl11u2eJn1iKG7bhmjPEugs55ox o9g2Dz+RplqLd4CdkD7Iqrqa3dO81EhH1kjBxzI1HnVMB4ylemfEnEfN/HrN7g== 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 4dwvYF00XszcRK for ; Wed, 21 Jan 2026 06:34:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 442ac by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 06:34:08 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Xin LI Subject: git: 53d6b23765ca - main - cron.8: clarify system crontab format List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: delphij X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 53d6b23765ca27ac7eca4096b2a83e84631c4ec8 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 06:34:08 +0000 Message-Id: <69707360.442ac.6a268f92@gitrepo.freebsd.org> The branch main has been updated by delphij: URL: https://cgit.FreeBSD.org/src/commit/?id=53d6b23765ca27ac7eca4096b2a83e84631c4ec8 commit 53d6b23765ca27ac7eca4096b2a83e84631c4ec8 Author: Xin LI AuthorDate: 2026-01-21 06:28:39 +0000 Commit: Xin LI CommitDate: 2026-01-21 06:33:48 +0000 cron.8: clarify system crontab format PR: 234504 MFC after: 1 week --- usr.sbin/cron/cron/cron.8 | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/usr.sbin/cron/cron/cron.8 b/usr.sbin/cron/cron/cron.8 index 782bbce2fb6e..23a295393df5 100644 --- a/usr.sbin/cron/cron/cron.8 +++ b/usr.sbin/cron/cron/cron.8 @@ -19,7 +19,7 @@ .\" .\" $Id: cron.8,v 1.2 1998/08/14 00:32:36 vixie Exp $ .\" -.Dd February 9, 2022 +.Dd January 20, 2026 .Dt CRON 8 .Os .Sh NAME @@ -53,14 +53,15 @@ for crontab files which are named after accounts in crontabs found are loaded into memory. The .Nm -utility also searches for +utility also searches .Pa /etc/crontab and files in .Pa /etc/cron.d and -.Pa /usr/local/etc/cron.d -which are in a different format (see -.Xr crontab 5 ) . +.Pa /usr/local/etc/cron.d , +which use the system crontab format described in +.Xr crontab 5 +(including a user field). .Pp The .Nm From nobody Wed Jan 21 07:18:18 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dwwXB2cJ0z6PnkY for ; Wed, 21 Jan 2026 07:18: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dwwXB26mjz3gj4 for ; Wed, 21 Jan 2026 07:18:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768979898; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KyBJ1+3yXPExyH5L8LDjt9RxJiSk5QaP5TEENVV5ISU=; b=sdfxwr8ZA/S1is8/Zrk1LOVVYTwBhQyW4idTIoi8h+jZfUUaoHpHpoP5yJlDWsPfaycSKC e6N9wORTnxTKe6+tVSatV0ORZAA8s5ghn/P9usbHtPAJJ2zVQHZtUvEp9wG7/4e0wLrI5i +v8QumdswISUZe1KLRlQv5/KxSGluxPrmYP/T12P1oMtlGf4kFcfYXHhg7L1Ni+bh0GRWO 2YWsIqx9eGWoC1wDzN1AD1iSrddArvaGcSoA+Lc8YCMkVYgkT6vlZpHwkdgDOu3AvGSrVA 7kpQLhyY92FaLJI9T1yHjgMQ9ZuK/DJ37euzFWv5ZVuBnBRoipPev6ttCwdRbg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768979898; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KyBJ1+3yXPExyH5L8LDjt9RxJiSk5QaP5TEENVV5ISU=; b=QZLtl+6XlTuHyheZtmXU1nVSBc+SfurwJPBtGcyhVy5V+VaCunzVarUVFgxY9iaNGJWXbr UI9dnkJj1oVyxnwIaeviIi6vWuRuPdSqJQslDNZH96dKxrIDUPHvv1YgCuj1MMVH4t2bR7 I/+O+P8GiFHwNhJr/GHslWSJ8HKVghsWlk3otSU7/PEnT3qD+DB2FvIyiPm5EGdVczngtv bcF2a6XJ7t3ex2tsMgewvo9uIvhrLSc2oxDgktoB2Y7MP4Yd4FTB/yVyufofiO3sNuZ1Ke 6KlQOHmWgRqEj359zx5zaoJakt8hgklQQQfnE1SUQRq1j/K6uf594cz6yuRCvA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768979898; a=rsa-sha256; cv=none; b=pOHXtF0Je+1OdDFUXMJOLq5qwH5adtjQVJXybVu3fY9pMNtwkQx14BQhIUAzfgXqpqVMio 3zwZMkTQpjXbr5v6QvaN2SMEX1S1iAuzDA5rRiANcnodHjXy+Yz7z1Ua8LG4o3BzqdWtU7 UFLZVsHnScYun6arpf2hAwm/2vaMnT4Uwarm6wONAWIYU7lyzQtFBDClbvaZSLPJZcMBPc /GCSlfSx39nsFvsBrY4UXhO2VEOVSQCOmglfKuAkp40CdRhHT1MF298bFdtCY0SdcOIL0w /SrgRORW8CGW6Kp1ybCU5ucV0/FC649klDiP3MiEjwOAPSxuTAdm2icszVvoYg== 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 4dwwXB0yn8zdj3 for ; Wed, 21 Jan 2026 07:18:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 8df3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 07:18:18 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: d8b8dc776b7c - main - dpaa2: cleanup List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d8b8dc776b7ce28bff8939dd185b4d6554b5e351 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 07:18:18 +0000 Message-Id: <69707dba.8df3.19765619@gitrepo.freebsd.org> The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=d8b8dc776b7ce28bff8939dd185b4d6554b5e351 commit d8b8dc776b7ce28bff8939dd185b4d6554b5e351 Author: Michael Tuexen AuthorDate: 2026-01-21 07:16:46 +0000 Commit: Michael Tuexen CommitDate: 2026-01-21 07:16:46 +0000 dpaa2: cleanup No functional change intended. Reviewed by: bz, dsl MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54805 --- sys/dev/dpaa2/dpaa2_ni.c | 24 ++++-------------------- 1 file changed, 4 insertions(+), 20 deletions(-) diff --git a/sys/dev/dpaa2/dpaa2_ni.c b/sys/dev/dpaa2/dpaa2_ni.c index 98a6c6047188..eda5bab78bde 100644 --- a/sys/dev/dpaa2/dpaa2_ni.c +++ b/sys/dev/dpaa2/dpaa2_ni.c @@ -2598,26 +2598,10 @@ dpaa2_ni_ioctl(if_t ifp, u_long c, caddr_t data) break; case SIOCSIFCAP: changed = if_getcapenable(ifp) ^ ifr->ifr_reqcap; - if (changed & (IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6)) { - if ((ifr->ifr_reqcap & changed) & - (IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6)) { - if_setcapenablebit(ifp, - IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6, 0); - } else { - if_setcapenablebit(ifp, 0, - IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6); - } - } - if (changed & (IFCAP_TXCSUM | IFCAP_TXCSUM_IPV6)) { - if ((ifr->ifr_reqcap & changed) & - (IFCAP_TXCSUM | IFCAP_TXCSUM_IPV6)) { - if_setcapenablebit(ifp, - IFCAP_TXCSUM | IFCAP_TXCSUM_IPV6, 0); - } else { - if_setcapenablebit(ifp, 0, - IFCAP_TXCSUM | IFCAP_TXCSUM_IPV6); - } - } + if ((changed & (IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6)) != 0) + if_togglecapenable(ifp, IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6); + if ((changed & (IFCAP_TXCSUM | IFCAP_TXCSUM_IPV6)) != 0) + if_togglecapenable(ifp, IFCAP_TXCSUM | IFCAP_TXCSUM_IPV6); rc = dpaa2_ni_setup_if_caps(sc); if (rc) { From nobody Wed Jan 21 14:40:53 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dx6Lt1nxzz6PJ2p for ; Wed, 21 Jan 2026 14:40: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dx6Ls6Pnqz3XHN for ; Wed, 21 Jan 2026 14:40:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769006453; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V1+b+Opz5zpLMidzj+ml6FdqPaHgxCGc0z69XEXPy08=; b=cvlIBL+0VZrkJr/t2jMXXBcxy/b7WXDfBQYwRtS+cyuvvceCdOdBK0RGSbtHTCse2Jsm+d Fykd5ikFZY+M/4aG52xeogjdREkLiHtz7B2HjyzjfbvvDeV53QLg0yu/U4yxqV6PEbo4jb IKPLOtTIjFS6mbu29QzEx9WE2RIjazwfniqCKvd6yMPt1ukqi0nI6VQmLw6yi5rozpNaXT Ac0FJsF/d6q8M3UOJ505xmPncpyEIJVciTOBEyXM62UdDMgWom7hSQy8Rzp44ZCLs2JmnT VmIwehQzEv0gV9eNNdbEkqnlG6JIRFZkFz+pJPTjXDY20d1M9HcTsvoeRIln2w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769006453; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V1+b+Opz5zpLMidzj+ml6FdqPaHgxCGc0z69XEXPy08=; b=aNzxlXHKVyhUkcH8GwkckKG4DSjGtmyWij0K2HCMl2c/lB8OHUaNAxiWRaTnfXtuOW69de 0YyjMUlLv4PydVU0WdfNem6IUHtEeJEhF7ODYDmkgWh6TCZ1J6kMYjgdOHllL1Bs39cMr+ 9IZdq8nILSOzNWKYN6CwWv8j4io9xbCUJZnBPtOVxIdOZLToCKRL2dxrHyhalnsySwaVXq M5JYkJsef54RmF8rwell9RMvY/5r3WfA6hvixUtlZZs7/z/QCCZtqwIX3vLEJGM74EM2YX p264m2qt1QWt+wd5wM1hy65iSw0J9x7Z/Kk3FDovrjm0ZM+/EDdN8Qa4Ere/gw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769006453; a=rsa-sha256; cv=none; b=E2AhlH1B18P1OFrwN5kL8aOcf0tvxfOFyQDYYIErtvQkCBR29gr7J93IRVM++xy50mccJH eibHzWVOXssY3IoNxISMESQXn58+JiS4biiQxcWvDPNT3PuCt5acF2ujioupzq95L9ep1Y VkBUHVbxlqYv5gfpmt5T6DN2Nj30vaTxxkOFlyluivlLjRb2scjExq34GQyckjut4UXQdT 3s3vuHAjZr/8ycyO5XFKqsEuMp4yo7WHSl4lfS5OOw2gwwDG2cODHOwm3+pwRzAZisifhr MkHpJu2iR15bMFJmgT6IV7AvH8bPU/lSLIeHKqR0F6FD4amscz9sYpDqV3I75A== 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 4dx6Ls5gKpzs4B for ; Wed, 21 Jan 2026 14:40:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 24ac9 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 14:40:53 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 76ca619f10cc - main - MAINTAINERS: remove stale entry List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 76ca619f10cc4f75e2eb5750f905f6bc55c8ef02 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 14:40:53 +0000 Message-Id: <6970e575.24ac9.280e17b4@gitrepo.freebsd.org> The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=76ca619f10cc4f75e2eb5750f905f6bc55c8ef02 commit 76ca619f10cc4f75e2eb5750f905f6bc55c8ef02 Author: Warner Losh AuthorDate: 2026-01-21 14:39:59 +0000 Commit: Warner Losh CommitDate: 2026-01-21 14:39:59 +0000 MAINTAINERS: remove stale entry --- MAINTAINERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MAINTAINERS b/MAINTAINERS index 494a20f39298..a752e7d0600e 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -86,7 +86,7 @@ procfs des Pre-commit review requested, email only. pseudofs des Pre-commit review requested, email only. random(4), random(9) csprng Pre-commit discussion and review required, -release/release.sh gjb,re Pre-commit review and regression tests +release/release.sh re Pre-commit review and regression tests requested. sctp rrs,tuexen Pre-commit review requested (changes need to be backported to github). sendmail gshapiro Pre-commit review requested. From nobody Wed Jan 21 15:10:09 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dx70d5DVHz6PKYy for ; Wed, 21 Jan 2026 15:10: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dx70d3G0yz3b3w for ; Wed, 21 Jan 2026 15:10:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769008209; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sQeIkBp1kzEGfbsuKPMFvxgX599M6ENnTkAdWHcHX+g=; b=g8PyUr5v2tNhf3SARt/AznqRm2Yz7pj+v/mV6Shf/XTkGK9q9iRpLyjhfgZ/4Y6X4W+77Y 3cCwh7y0E078M2vCXoXM88BCWhaMNVZn1e+lrcbsAQfxQmktpHo7TD/AOfj4PtIeXTVgos wrWac8VtiFXlroU60lkwo9ofa6FON6XaW2QgPRUrPByIG4fPccR5uTyC2cBQ88wTwLf6fR 1/1aQRjmvO6bvGfm/sumgd4T5sTHkZ/zNsZzMcSziiruFShjuV/9GTQ80vM4a+3DadqJlc A+d96wCjqNIqQXeKOwTAi6+5P8WeOS0wfEBUwQGEzpf1MtJdkHrYPJFei387SQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769008209; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sQeIkBp1kzEGfbsuKPMFvxgX599M6ENnTkAdWHcHX+g=; b=TVe9SbRtyWSbdSaUHPOSctEmiK+k6yPPPZ9uJBmniyqr8tLxTTT0/Z3qpVbePuIgKx29At 8Rvl3dYpmV30l66j2bb/orqE73/8bZgdZ77qB2qdn0RHQrxXn/xk8C8sgbzxgAlw79DW2r KajFdBbBz0hvXA9C3BpSACSeey0nZ655h8+xtWJ+p2txIoiNhgCwxTQgqvImSJaPZRPyPD 1GOaBzAdf1inCX8JpRwUxpVjqgPbLgVZ0/AM0bob0mYhQnu1puHOP1jZt0PSO7woa1Uaei ewNpcMD9wGZYPQdC/hb25ffS84aZUZ+aavlWHf9VCz09QGv7178N3j2XNcA6BQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769008209; a=rsa-sha256; cv=none; b=uQ2L/FXaXjn0e68jgXfqV9UdwYErAQ8tulTVHYKmpJ82AESPK2Y3+fft7hroKqVMXTUYON N4pZcdtPQoOUFAgdw6/q3oMOpL7wXpYy0FtJ1SgwO5qWOrWOZoy1Kr6U5rhq8Gx4VNcLsF Y/F8DCnHZyHsentg51SvgUo8oK2o/kF4aEk5lY4EV2g05Qbje6Cc3fyILLjaDVYEo+DHo9 nm/e3Qr/nSEmAm1dVZRs0EhP+PPxo28NzIuWjAxMnOefo1bfcoRPpuiG6jcqeHoivfwYNg 1DCzPDVcT1o4gfVvoQgtMt+WbCnP9Tj/f0/B3PXsjBO7Yp+vQk5kyNB0Z9anoQ== 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 4dx70d1rJFzskq for ; Wed, 21 Jan 2026 15:10:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 269da by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 15:10:09 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 37de3763b8d5 - main - CODEOWNERS: Add myself for openssh and makefs List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 37de3763b8d589c6916a1207bb46bbaefb75b4c3 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 15:10:09 +0000 Message-Id: <6970ec51.269da.77e17839@gitrepo.freebsd.org> The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=37de3763b8d589c6916a1207bb46bbaefb75b4c3 commit 37de3763b8d589c6916a1207bb46bbaefb75b4c3 Author: Ed Maste AuthorDate: 2026-01-21 15:09:05 +0000 Commit: Ed Maste CommitDate: 2026-01-21 15:09:58 +0000 CODEOWNERS: Add myself for openssh and makefs --- .github/CODEOWNERS | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index fb518975b83f..0bc99da6544f 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -48,7 +48,7 @@ /contrib/one-true-awk/ @bsdimp /contrib/openpam/lib/libpam/ @dag-erling /contrib/pjdfstest @ngie-eign @asomers -/crypto/openssh @dag-erling +/crypto/openssh @dag-erling @emaste /crypto/openssl/ @juikim /etc/mail @gshapiro /etc/sendmail @gshapiro @@ -130,3 +130,4 @@ /usr.sbin/blocklistctl @jlduran /usr.sbin/blocklistd @jlduran /usr.sbin/lpr @gbergling +/usr.sbin/makefs @emaste From nobody Wed Jan 21 16:11:11 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dx8M34MvJz6PP7f for ; Wed, 21 Jan 2026 16:11: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dx8M322z7z3lkx for ; Wed, 21 Jan 2026 16:11:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769011871; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7CYtteL/fMXRHikaJMqNBiWiG684DD/egawoI+gjpjY=; b=if+mpKNOqmRh5iZvRtJLMLwfvGCCcMJNV1Er9dAgQGGy7nx0NEo99lCgIOfGplYOvEpKKi KTPcY5d8c7wIflt3Y/JAtjjo6+2LOiB7VZnw1j5fZb5sdcCUN/KM3pAw1+8kRim7vsr4ZE nNNzmqnWVddwae39PEqRGv0JShXqwSJ9Z7+eEl4zoPjSDxX4W4/7IGC2MUOq+QlLNKkIwb cTE/TnlnFfwN61ZoVqC59nDrh//9dkRhZU+qiHmePM1NuA/89SaPqozx+dBPIkRZbOqJSJ lUeHgUQt9FLoQN7F7NMWwdA/iJVtuzZP+O8tVkAoEbwhBya2vSJiZiTlh/p2wQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769011871; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7CYtteL/fMXRHikaJMqNBiWiG684DD/egawoI+gjpjY=; b=AY6Osr50oHmWoxEyDdmYXLd2CXX82tcGJYL7Sd7O+AjCEp9bfEHumSSzXUgo1u39Xl/Zjy uKuLMXN+/ZdcY51U3VmhVeEDhZjUOeyuHPju8Db8nds3kij66Xsfw+ZB3Q423uRvMlA+zn UBgVup3CWbwUjw5bwIgSnXXKqZt0BVupGaawstibZkx+DaLQ0jhffVnbNkPpnWgiOAKOmG eFoMKBz9fTwF5yNTVlyh6uKcKJxCQ6qvJmAyZbupKBBBx+EOVAbwgGOkiXhQIDCOPdTAH2 ISzTTaNOSCK71lb9S+DxJS/d2OS/6HyV4Nt6fSy9R130HF2qx7p+qEkK/JO1sw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769011871; a=rsa-sha256; cv=none; b=gp//lctMAxpymevBkkNWL2LbuwdodxwGTm/8vJOAR8nBIT64upiXvppyEJ1o7EstmF20Iz Uj9C2A/C1C2E/jrDZ3JH+m0lYSln3O/VMTRYBs00aaXQk8VHR80rcSQfb6T9ppSc1a3fgl 3xaXEtx6Y7KmvtII/y/imjWgbEtrC4cIFxYjvYlljAJa+F7yAQXo/5TQY4u8t6YMOhzYY4 mmLWPRi1d1e54EbE6C9I4/zs5EjLuRJDPTDmFxILdw0nqwS2K21p/y5RgG/UdLhMIlahAz haPxeiHuXy6oBFKnJIotAWZLRmiYin7z+OfSLPfraVETJOsJYTWyxSV00X5cgQ== 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 4dx8M31SQ7ztTb for ; Wed, 21 Jan 2026 16:11:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37424 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 16:11:11 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 5eb1d4eec676 - main - rpctls_impl.c: Use a direct cast to uintptr_t instead of __DECONST List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5eb1d4eec67685a933cedd5a20fbec86febcd3a9 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 16:11:11 +0000 Message-Id: <6970fa9f.37424.809a279@gitrepo.freebsd.org> The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=5eb1d4eec67685a933cedd5a20fbec86febcd3a9 commit 5eb1d4eec67685a933cedd5a20fbec86febcd3a9 Author: John Baldwin AuthorDate: 2026-01-21 16:10:53 +0000 Commit: John Baldwin CommitDate: 2026-01-21 16:10:53 +0000 rpctls_impl.c: Use a direct cast to uintptr_t instead of __DECONST This fixes the build on CHERI architectures where the compiler warns about a direct cast between uint64_t and const void * inside of __DECONST. However, GCC would also complain about this on 32-bit kernels due to uint64_t not being the same size as a pointer. Also, a direct cast to uintptr_t to right-size the cookie value is more direct than using __DECONST given that there is no "const" pointer involved in the expression. Reviewed by: brooks, glebius Obtained from: CheriBSD Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D54797 --- sys/rpc/rpcsec_tls/rpctls_impl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/rpc/rpcsec_tls/rpctls_impl.c b/sys/rpc/rpcsec_tls/rpctls_impl.c index 51fe270b13d9..22ba699a6fab 100644 --- a/sys/rpc/rpcsec_tls/rpctls_impl.c +++ b/sys/rpc/rpcsec_tls/rpctls_impl.c @@ -163,7 +163,7 @@ sys_rpctls_syscall(struct thread *td, struct rpctls_syscall_args *uap) mtx_lock(&rpctls_lock); upsp = RB_FIND(upsock_t, &upcall_sockets, &(struct upsock){ - .so = __DECONST(struct socket *, uap->socookie) }); + .so = (struct socket *)(uintptr_t)uap->socookie }); if (__predict_true(upsp != NULL)) { RB_REMOVE(upsock_t, &upcall_sockets, upsp); /* From nobody Wed Jan 21 16:52:17 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dx9GV0VTjz6PRK0 for ; Wed, 21 Jan 2026 16:52: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dx9GT5YzMz3rsB for ; Wed, 21 Jan 2026 16:52:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769014337; 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=+jL9MG2rLOOtSReqO5PnnhcgCfEWZQK5Vfcoh9Ne6LA=; b=C7uhV5RFLR6Mw49zESA+CIqmXByqp9XZknD11hEfrLsk8VzJOtA41m+wdYAMNl+CxLQYxX AmV2GwbnGfI/YPVLxM23Daq6etNlhmsWEIWh3NZ5AYT0d2txUcawjlq6Jdn8icD9NC5pAV NK2ay9maQHNF7Z1lLHyQyprcsriA7wUagevMq3sLeTohgWArXeZ4IUJ0Vo5YFDSHTYBTOl FyjECILdoUxFF6WHNRwm9aO2TadSNBWg1Sxqjoy4wES5+e6/fqr1/G+VQLrpggQq2n2Pct muOd2bbKqUr0n7QZh/UxKJQOG1eNv/TeCWprYM2TmmQ1KerFzcmJZQBYbH/eeg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769014337; 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=+jL9MG2rLOOtSReqO5PnnhcgCfEWZQK5Vfcoh9Ne6LA=; b=FQLxkO/z7P6+ZGCfpiqawsyoTLDFU0TZ+7/ugD4C4eVPUyVt149FgBz4iMYXWXVUJt6mfu EdK0BnDeUel0RsxDAnh7y0FnBmMtfvdKPpWDmpCdtXtJRhX+wFbut41DETGf6CdDeNTouy /sjbJTQDKtQNnvytI1TQb4uK1IVSYGszIg4Vidal8vLcNAYd1RqdtDIeeGCFrSpTW/KDhh Ps8DSZ/ddKMl7ITO41pxN5PvPKisvHtncREeMmq3X3a4IZbSnj5PompD7pW5cxZCyHAz1U iUryviKqHSLWkfCUmCpLbHxWRGxrrc8E8PeSErORaH7MAcEM2sKONjj7ooAJHw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769014337; a=rsa-sha256; cv=none; b=V++TyB/uF4EAqNKDik0FMNxZD0eBG6NOKzGDTBxWRDIQztxMVomNhrjDPMcFDLlJ+w59JV 0sT3HrwKOrLArdupai9w0bvgGr7LECQF3Y/1AwvEx2wAZa7Co9+KkT4w3D5zQAT1N04K9l C2oNCPA768hPUP7C5eoiOH+PCQCF8SlZNP3hEeenlZvyGjz5IkHqGpSu3YL9OAeasLTbNe LGi7PMqUtFXBNrlbNvLqEb2jFkpHeB4l3ASSu6oKoif8UTfBD1uHdhYCnSnHJCUVs6OZ1g ICYVOpr1tts/PKj6pq2RZSJtLaBZPCO7tjnGq0BlzGaKkgfEP0qJxN6+h7HSJw== 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 4dx9GT4cmgzwKG for ; Wed, 21 Jan 2026 16:52:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3875f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 16:52:17 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Sarah Walker From: Alexander Ziaee Subject: git: 98cb4874e2bb - main - simd.7: Add Arm MOPS memcpy(), memmove() and memset() to manpage List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 98cb4874e2bb9a56e1bd883ede72108eb1c39e6e Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 16:52:17 +0000 Message-Id: <69710441.3875f.7d63d4e1@gitrepo.freebsd.org> The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=98cb4874e2bb9a56e1bd883ede72108eb1c39e6e commit 98cb4874e2bb9a56e1bd883ede72108eb1c39e6e Author: Sarah Walker AuthorDate: 2026-01-21 16:47:19 +0000 Commit: Alexander Ziaee CommitDate: 2026-01-21 16:51:10 +0000 simd.7: Add Arm MOPS memcpy(), memmove() and memset() to manpage Fixes: 41ccf82b29f3 (Use MOPS implementations) Reviewed by: ziaee Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54812 --- share/man/man7/simd.7 | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/share/man/man7/simd.7 b/share/man/man7/simd.7 index 3343508df504..a446112e5b6a 100644 --- a/share/man/man7/simd.7 +++ b/share/man/man7/simd.7 @@ -61,10 +61,10 @@ Enhanced functions are present for the following architectures: .It memchr Ta A Ta Ta S1 Ta Ta Ta S .It memcmp Ta A Ta S Ta S1 Ta S .It memccpy Ta A Ta Ta S1 -.It memcpy Ta A Ta S Ta S Ta S Ta SV Ta S -.It memmove Ta A Ta S Ta S Ta S Ta SV +.It memcpy Ta AM Ta S Ta S Ta S Ta SV Ta S +.It memmove Ta AM Ta S Ta S Ta S Ta SV .It memrchr Ta A Ta Ta S1 -.It memset Ta A Ta S Ta S Ta S Ta Ta S +.It memset Ta AM Ta S Ta S Ta S Ta Ta S .It rindex Ta A Ta Ta S1 Ta S Ta Ta S .It stpcpy Ta A Ta Ta S1 .It stpncpy Ta Ta Ta S1 @@ -101,7 +101,8 @@ or PowerPC\ 2.05, .Sy 3 Ns :\ x86-64-v3, .Sy 4 Ns :\ x86-64-v4, .Sy V Ns :\ PowerPC\ VSX, -.Sy A Ns :\ Arm\ ASIMD (NEON). +.Sy A Ns :\ Arm\ ASIMD (NEON), +.Sy M Ns :\ Arm\ MOPS. . .Sh ENVIRONMENT .Bl -tag From nobody Wed Jan 21 17:28:56 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxB4m6Kvpz6PTYm for ; Wed, 21 Jan 2026 17: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxB4m3jTTz3vYk for ; Wed, 21 Jan 2026 17: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=1769016536; 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=0maPFdCZUanXOKF4iCmdVfDIe1ZIbmWBOh6Cqmn7mCk=; b=SxczM/a4pAN5h7coZPZKv4s8EKctDTYZ9/yDVP1vUUPSd9lqJiWLFglPrC/IJDWz19dzgT HgejSuzHqA6alTjeM6p8LmuzIdhcdDOGLPbQM3/cKLGGFSxk/E410IsIsn/KQp/DHjC3No OXgHi+Jm+hqiUPNl+KQZD2DCkgK4E3y2svlp2hnrs8wb69YvyT9CEzsz+fxIdvrsRTisxG ilQ4tMWfSF0dLO2OxHLUhiNelJNgo75UiBEpQb2oL/Yk8nC+COrvdRN2rfAc4q4YRVRkDR f0ta4v+2jaLGRMSMx7vtZ9diEBWRJcBqn1ObKC6WKhZ+fzFP3JPDbMX4Gm6Ezw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769016536; 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=0maPFdCZUanXOKF4iCmdVfDIe1ZIbmWBOh6Cqmn7mCk=; b=L/XpIDatqnew6cdUgvx/FxfgdMPIavIJR0NlULAUs0AR4tPfzFppeSyhafx9t0cQ4wHYOY e5TrwrMRru7Z5EmN8pF4GDgDVft7x9e7+qqePVVWHhOvoNTa44LUInARQL/1gRMdFBsU0S STs8cccI3w6TygU7ZbJCj0IYGZezwVGu5aCXPjbBFDa9DM8uqmNoBhibm6YHkYufsjHXnO oJHvXFvx9IdgOSDjR+MvRbP4JTkmFikOV3hqkFRrQ7qdgcBa7cHwfIXAjvYO3b2oD0Wk94 FI4sSSCaL1A6kRSZbtFrXPPeVpeM3KXYMZfGd8VqXktwWijoXq5Wnj3gnUjIxA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769016536; a=rsa-sha256; cv=none; b=XkseKGGXa8C/AExbwyiFZgIMcIxkBjIOh7jqBCzIgbK5lzBCiI2IYM6BJCgi8OMax+Ri+6 +zEYyVnknF1xQPSQwGjieBDxOmW7YdqotKj/nMWKYoVIrrVcc+b4CLIx6AyRwQUnK8AhN7 J/izGl34WUSfAj4K8AoyrI4b9YjUijCfMvW6+szlVbBoqV6gAgOMDp5kbYeY5/zbJFo9Kc QEa5YWwKdSdGx/ZsvXH+AHj16ADDnJ1olp9bgAMQox5AuJj89zx9dDFoUTRdZu+UZUImI+ u9WXIca0GiPSgsbf7Y1Nm0vsSWtkCk1I2MxdTNIapBhgNPhl0IPw3qjCkUU/3g== 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 4dxB4m2H5Szx65 for ; Wed, 21 Jan 2026 17:28:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3d7ad by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 17:28:56 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Artem Bunichev From: Alexander Ziaee Subject: git: 2c6bee2b23db - main - socket.2: Cross-reference protocol families List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ziaee X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2c6bee2b23db9ec231a6fa2979093eeae10aaf91 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 17:28:56 +0000 Message-Id: <69710cd8.3d7ad.5cdc1956@gitrepo.freebsd.org> The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=2c6bee2b23db9ec231a6fa2979093eeae10aaf91 commit 2c6bee2b23db9ec231a6fa2979093eeae10aaf91 Author: Artem Bunichev AuthorDate: 2026-01-21 17:25:29 +0000 Commit: Alexander Ziaee CommitDate: 2026-01-21 17:25:36 +0000 socket.2: Cross-reference protocol families While here, make wider use of Dv for socket types and protocol families and reference fcntl(2) flags for the `type` argument values. MFC after: 3 days Reviewed by: glebius, ziaee Differential Revision: https://reviews.freebsd.org/D54434 --- lib/libsys/socket.2 | 137 +++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 110 insertions(+), 27 deletions(-) diff --git a/lib/libsys/socket.2 b/lib/libsys/socket.2 index 48b8f4e87489..fbf6b4e12df0 100644 --- a/lib/libsys/socket.2 +++ b/lib/libsys/socket.2 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 28, 2025 +.Dd January 17, 2026 .Dt SOCKET 2 .Os .Sh NAME @@ -52,20 +52,66 @@ These families are defined in the include file .In sys/socket.h . The currently understood formats are: .Pp -.Bd -literal -offset indent -compact -PF_LOCAL Host-internal protocols (alias for PF_UNIX), -PF_UNIX Host-internal protocols, -PF_INET Internet version 4 protocols, -PF_INET6 Internet version 6 protocols, -PF_DIVERT Firewall packet diversion/re-injection, -PF_ROUTE Internal routing protocol, -PF_KEY Internal key-management function, -PF_NETGRAPH Netgraph sockets, -PF_NETLINK Netlink protocols, -PF_BLUETOOTH Bluetooth protocols, -PF_INET_SDP OFED socket direct protocol (IPv4), -PF_HYPERV HyperV sockets -.Ed +.Bl -tag -width "PF_BLUETOOTH" +.It Dv PF_LOCAL +Host-internal protocols (alias for +.Dv PF_UNIX ) . +.It Dv PF_UNIX +Host-internal protocols. +See +.Xr unix 4 . +.It Dv PF_INET +Internet version 4 protocols. +See +.Xr icmp 4 , +.Xr igmp 4 , +.Xr ip 4 , +.Xr sctp 4 , +.Xr tcp 4 , +.Xr udp 4 , +.Xr udplite 4 . +.It Dv PF_INET6 +Internet version 6 protocols. +See +.Xr icmp6 4 , +.Xr ip6 4 , +.Xr mld 4 . +.It Dv PF_DIVERT +Firewall packet diversion/re-injection. +See +.Xr divert 4 . +.It Dv PF_ROUTE +Legacy protocol to control routing tables and receive network +configuration events from the kernel. +New applications should prefer +.Xr rtnetlink 4 +over +.Xr route 4 . +.It Dv PF_KEY +Internal key-management function. +See +.Xr ipsec 4 . +.It Dv PF_NETGRAPH +Netgraph sockets. +See +.Xr netgraph 3 +and +.Xr ng_socket 4 . +.It Dv PF_NETLINK +Netlink protocols. +See +.Xr genetlink 4 , +.Xr netlink 4 , +.Xr rtnetlink 4 . +.It Dv PF_BLUETOOTH +Bluetooth protocols. +See +.Xr ng_btsocket 4 . +.It Dv PF_INET_SDP +OFED socket direct protocol (IPv4). +.It Dv PF_HYPERV +HyperV sockets. +.El .Pp Each protocol family is connected to an address family, which has the same name except that the prefix is @@ -82,22 +128,47 @@ which specifies the semantics of communication. Currently defined types are: .Pp -.Bd -literal -offset indent -compact -SOCK_STREAM Stream socket, -SOCK_DGRAM Datagram socket, -SOCK_RAW Raw-protocol interface, -SOCK_SEQPACKET Sequenced packet stream -.Ed +.Bl -tag -width "SOCK_SEQPACKET" +.It Dv SOCK_STREAM +Stream socket. +.It Dv SOCK_DGRAM +Datagram socket. +.It Dv SOCK_RAW +Raw-protocol interface. +.It Dv SOCK_SEQPACKET +Sequenced packet stream. +.El .Pp Additionally, the following flags are allowed in the .Fa type argument: .Pp -.Bd -literal -offset indent -compact -SOCK_CLOEXEC Set close-on-exec on the new descriptor, -SOCK_CLOFORK Set close-on-fork on the new descriptor, -SOCK_NONBLOCK Set non-blocking mode on the new socket -.Ed +.Bl -tag -width "SOCK_NONBLOCK" +.It Dv SOCK_CLOEXEC +Set close-on-exec on the new socket. +See +.Xr fcntl 2 +.Dv FD_CLOEXEC +flag for +.Dv F_GETFD +command. +.It Dv SOCK_CLOFORK +Set close-on-fork on the new socket. +See +.Xr fcntl 2 +.Dv FD_CLOFORK +flag for +.Dv F_GETFD +command. +.It Dv SOCK_NONBLOCK +Set non-blocking mode on the new socket. +See +.Xr fcntl 2 +.Dv O_NONBLOCK +flag for +.Dv F_SETFL +command. +.El .Pp The .Fa protocol @@ -423,10 +494,22 @@ The socket type is not supported by the protocol. .Xr write 2 , .Xr CMSG_DATA 3 , .Xr getprotoent 3 , +.Xr netgraph 3 , .Xr divert 4 , +.Xr genetlink 4 , +.Xr icmp 4 , +.Xr icmp6 4 , +.Xr igmp 4 , .Xr ip 4 , .Xr ip6 4 , -.Xr netgraph 4 , +.Xr ipsec 4 , +.Xr netlink 4 , +.Xr ng_socket 4 , +.Xr route 4 , +.Xr rtnetlink 4 , +.Xr sctp 4 , +.Xr tcp 4 , +.Xr udp 4 , .Xr protocols 5 .Rs .%T "An Introductory 4.3 BSD Interprocess Communication Tutorial" From nobody Wed Jan 21 18:32:12 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxCTm3m30z6PYH7 for ; Wed, 21 Jan 2026 18:32: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxCTm2BRvz44cw for ; Wed, 21 Jan 2026 18:32:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769020332; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UqPakvf1VnM/we2qaJKwXI4i1RDf7fLGWKb9yb9buNo=; b=UTtROtlEVWTL35Uz3UoVXIFrVks9h9wDqqqyrJcVq1IaJEbc2q0rc/00737w1qD5tLxVIp uuztLW63YKKNi7LEY25DiVOMOmgvnigmPRb8KPQiZwyh5VsDEAq7mjlIFryyc6lb3kw/ga Sja2GX7YO6LBzinbxCEJfuxkq6mKyeAKy8xPsNNbKERpDprQNaAlxFGM11peaCoUrcw035 jLr350U8isFcfNnhBg+XDmPFv7H8QJr3F9Yf4GDN+1ulwSPdVZ/7uoc7jHynqKerqGVUQU ahQbgdu79tg0ESHMmDcCq0UdJdGaAlyn+kRG5Z9moKI/qFzLDmXcda70jCQVWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769020332; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UqPakvf1VnM/we2qaJKwXI4i1RDf7fLGWKb9yb9buNo=; b=bB6CAjobhFiYWtcPPBuqqQBVkfhK6zIZqV5rY62Gn5+eGEyJubgdU/RN4WXAKo4G8SfmU9 5Ee9kIRLKvnJpOcEKS+Tg2T3xGrqB+iQmKkwytU/Oo5+E/T+f2j750WuXeN65u7F1Ap26g GGr6sh8qYJS6w8LmlIjPBjq0YktL0MDJ86PirOilA0c8Z9Fqd338oR1XzE1lHq6d9eBAlM 6+R/zdSkxAaZ+Z/rju/2foan7ZqIAuNghLeyIdr/OmJKSWtgNNkFNaGZqAJM3S/RD7dGbB 85ZIVlzl3Kre31e8Fd/6EZ/vmIK/VNEfE5D95pz+XybolIzQj1dvT66NQDOUYg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769020332; a=rsa-sha256; cv=none; b=Vt/RfBus/NqiMJKwr19IoUzX1+jhRgszWQxRuyr2HZYWYYzvepetyzuX0HSjRN36JKyda/ ybJrD1UkE23SH+paN9IcfggjIATk5LtourVLukXybfAwIvkIvwrgNXQF74rLlIT9tp/pta ibMpFMMnX7JJcBYkOLBwnbCObZAZE7iBhMkzhCsTlLC+IZCcHzokgS85ygNUwclWjn/2jA sd5OZqed8B5zojg+hJHhMzQeyUG3hErHCcjSE3NeZetG9O1Nm1PJgHZOWx4Av2X47pCrXP d7LmkIwJwtWrpsm6MWkAyo9nlMR56ujhGAz4+s8Cu2d+gXcp16EH2/01nzoHtg== 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 4dxCTm1nJ9zyr3 for ; Wed, 21 Jan 2026 18:32:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 447c2 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 18:32:12 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: e4a4841d7acb - main - LinuxKPI: 802.11: Management MIC element can have 8 or 16 octets MIC List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: e4a4841d7acbded7862175d46dfe325b44016495 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 18:32:12 +0000 Message-Id: <69711bac.447c2.131a74c1@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=e4a4841d7acbded7862175d46dfe325b44016495 commit e4a4841d7acbded7862175d46dfe325b44016495 Author: Bjoern A. Zeeb AuthorDate: 2026-01-20 18:55:00 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-01-21 18:31:07 +0000 LinuxKPI: 802.11: Management MIC element can have 8 or 16 octets MIC Management MIC element (MME) can have 8 or 16 octets MIC. Add a second structure used by at least iwlwifi and update reference to latest standard version. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/compat/linuxkpi/common/include/linux/ieee80211.h | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/ieee80211.h b/sys/compat/linuxkpi/common/include/linux/ieee80211.h index b5051a9f7d21..c81ddf7d24b2 100644 --- a/sys/compat/linuxkpi/common/include/linux/ieee80211.h +++ b/sys/compat/linuxkpi/common/include/linux/ieee80211.h @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2020-2025 The FreeBSD Foundation + * Copyright (c) 2020-2026 The FreeBSD Foundation * * This software was developed by Björn Zeeb under sponsorship from * the FreeBSD Foundation. @@ -51,8 +51,16 @@ extern int linuxkpi_debug_80211; #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). */ +/* 802.11-2024, 9.4.2.53 MME. */ +/* BIP-CMAC-128 */ +struct ieee80211_mmie { + uint8_t element_id; + uint8_t length; + uint16_t key_id; + uint8_t ipn[6]; + uint8_t mic[8]; +}; +/* BIP-CMAC-256, BIP-GMAC-128, BIP-GMAC-256 */ struct ieee80211_mmie_16 { uint8_t element_id; uint8_t length; From nobody Wed Jan 21 18:32:13 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxCTn6Txgz6PYR2 for ; Wed, 21 Jan 2026 18:32: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxCTn3nbXz44nv for ; Wed, 21 Jan 2026 18:32:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769020333; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5wFX6ddhpwziX2xlwWibKa/3rqmk03i6RKWuktvpkP4=; b=x9oIu/MO/n0zBW4ZuLzgMBBoSWduWj9Do7p0mvtmcNvspWokV17PUXm5bY4aFkUggbWk7i ZR7vk789y5Wvb3SkSnzpbwREUAPRzngs9BlAysLhnSeJMse9gCMi+2oq8WTDq/RUnvUyNK o4S2zs2IusDWn+9oDH4WldkmE/HJLcm51u+YbXtowGFYk28hvdcY/b4eRdKhis0OZgFSsz dEc2mI2x6hf7xr0TZp2Qdu4UWN7/w9PD09OE5ypZ7eYf9Nuowuxl6tvanT4v94h9TLEoTD pfKS+6tHiQx9CFYwGzIz+jLP+wBjmJuy9meql1xVuOag9yGjE0JuSc0tGyLTEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769020333; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5wFX6ddhpwziX2xlwWibKa/3rqmk03i6RKWuktvpkP4=; b=fvXyKhbn7TZgecRvl+5uImFbS+4TEQKJu1BuerOrkzPaII8GpNgP1RJ18WtFS14McxRVCw Fj6qbcrEvVIxOuEnl3r/1Dke4+cWGH0ib0K1aEqePfo1yLyxNyJ00DaLrrADEoyLmd2fDo iaB+yikl7Y9Hk/MH/eqe06xPCh2ypu5zFyeCZci8MtrYITPvo51/RB4RDQQ8is0gFfFZeb 50HkI87A2i9Ce52h9rGc0c0ZzMrBqAa2CYVvgclu/DDE3W5I9i+ItKxkPPlcV7k3yU6oFJ clgSt9rc5/MOviD7xz39iuGPV7mqnRa+eUM+WgvfZWkjtYZpjEDRxSmV4Q4Szw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769020333; a=rsa-sha256; cv=none; b=hoX7JC4CAam9YbfDk1xuALDb1s2CBqm2niQljJraw+Ni4C5RBVsel3VgCB6IlpfMoRRQmw 6Gm4tqNAUO2Aln9n4wXFqPccvwosgmFlgH01NV8hni2JIZ7BONmp4HZUI0V6XbKwGvY1xS D0xfBZR0ZZ9anIzBgt0rqkVIMo+epj4olxEvzA5WgRFZrwiUyBxtlI6ZCh6sX7Tqn8xm2f 0t9lcCrlAgyD1kR2ZaAHFUwcTwBzCK4czB/Ty5SMzwK5BfoHaOb/z/KyjKN5Zgbh1/aQT2 Z1AO7iZ634q2jIRBRJVzbDGo74WsPFzoOt2IYJgIFg5vZE2WcT21S9XhThCpYg== 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 4dxCTn2VJFz1033 for ; Wed, 21 Jan 2026 18:32:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 44cb3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 18:32:13 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 5f7b5dde1051 - main - radiotap: add more EHT definitions List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 5f7b5dde10518d4436e1ec07a76873bf31d28425 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 18:32:13 +0000 Message-Id: <69711bad.44cb3.149d4769@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=5f7b5dde10518d4436e1ec07a76873bf31d28425 commit 5f7b5dde10518d4436e1ec07a76873bf31d28425 Author: Bjoern A. Zeeb AuthorDate: 2026-01-20 18:57:19 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-01-21 18:31:07 +0000 radiotap: add more EHT definitions Add more EHT definitions used by at least iwlwifi. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/net80211/ieee80211_radiotap.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/sys/net80211/ieee80211_radiotap.h b/sys/net80211/ieee80211_radiotap.h index d44f81b68b8c..d729323fce3a 100644 --- a/sys/net80211/ieee80211_radiotap.h +++ b/sys/net80211/ieee80211_radiotap.h @@ -512,8 +512,11 @@ struct ieee80211_radiotap_lsig { uint16_t data1; uint16_t data2; } __packed; + +#define IEEE80211_RADIOTAP_LSIG_DATA1_RATE_KNOWN 0x0001 #define IEEE80211_RADIOTAP_LSIG_DATA1_LENGTH_KNOWN 0x0002 +#define IEEE80211_RADIOTAP_LSIG_DATA2_RATE 0x000F #define IEEE80211_RADIOTAP_LSIG_DATA2_LENGTH 0xFFF0 /* https://www.radiotap.org/fields/MCS.html */ @@ -615,6 +618,24 @@ struct ieee80211_radiotap_eht { #define IEEE80211_RADIOTAP_EHT_DATA4_RU_ALLOC_CC_2_2_2 0x000001ff #define IEEE80211_RADIOTAP_EHT_DATA4_RU_ALLOC_CC_2_2_2_KNOWN 0x00000200 +#define IEEE80211_RADIOTAP_EHT_DATA4_RU_ALLOC_CC_1_2_3 0x0007fc00 +#define IEEE80211_RADIOTAP_EHT_DATA4_RU_ALLOC_CC_1_2_3_KNOWN 0x00080000 +#define IEEE80211_RADIOTAP_EHT_DATA4_RU_ALLOC_CC_2_2_3 0x1ff00000 +#define IEEE80211_RADIOTAP_EHT_DATA4_RU_ALLOC_CC_2_2_3_KNOWN 0x20000000 + +#define IEEE80211_RADIOTAP_EHT_DATA5_RU_ALLOC_CC_1_2_4 0x000001ff +#define IEEE80211_RADIOTAP_EHT_DATA5_RU_ALLOC_CC_1_2_4_KNOWN 0x00000200 +#define IEEE80211_RADIOTAP_EHT_DATA5_RU_ALLOC_CC_2_2_4 0x0007fc00 +#define IEEE80211_RADIOTAP_EHT_DATA5_RU_ALLOC_CC_2_2_4_KNOWN 0x00080000 +#define IEEE80211_RADIOTAP_EHT_DATA5_RU_ALLOC_CC_1_2_5 0x1ff00000 +#define IEEE80211_RADIOTAP_EHT_DATA5_RU_ALLOC_CC_1_2_5_KNOWN 0x20000000 + +#define IEEE80211_RADIOTAP_EHT_DATA6_RU_ALLOC_CC_2_2_5 0x000001ff +#define IEEE80211_RADIOTAP_EHT_DATA6_RU_ALLOC_CC_2_2_5_KNOWN 0x00000200 +#define IEEE80211_RADIOTAP_EHT_DATA6_RU_ALLOC_CC_1_2_6 0x0007fc00 +#define IEEE80211_RADIOTAP_EHT_DATA6_RU_ALLOC_CC_1_2_6_KNOWN 0x00080000 +#define IEEE80211_RADIOTAP_EHT_DATA6_RU_ALLOC_CC_2_2_6 0x1ff00000 +#define IEEE80211_RADIOTAP_EHT_DATA6_RU_ALLOC_CC_2_2_6_KNOWN 0x20000000 #define IEEE80211_RADIOTAP_EHT_DATA7_NSS_S 0x0000f000 #define IEEE80211_RADIOTAP_EHT_DATA7_BEAMFORMED_S 0x00010000 From nobody Wed Jan 21 18:32:14 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxCTq0Bmjz6PYfk for ; Wed, 21 Jan 2026 18:32:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxCTp3m9dz44Yy for ; Wed, 21 Jan 2026 18:32:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769020334; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CCaSbAIneudVcwRSxOOJJINCCRyHMNWruOTptkxOVKE=; b=W9n4gQRv8SNfNJKVlH2ZpKUWgVaye16d5T6soB1Uznzav8coX22gGqjvhx4BWCPcI0Yo/E LnwmDPjzmkK/lQw1LIrE+cNUuhk1yLkbDxThxoyrbM15d84lF5eniKPoH9xhKYNLrgzmhk otS+X2SwajAIpFC3FuP+4TsYu0Ix13bmLYxHBShaK1qLwR1gCbG6vKWeg/L5BAxjdAZ+Jq PRrLPnkGFGeiO0aXD1tYLG4bHlAY24gKi+ymPasX5OAxps+qG7EIoDCXOIakYSTLnOhErR negLNTxzqxRh/HE+MliHwvSzG1t233k/6gCTFF7Qds81ANXBooVBc+W4P1vzzA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769020334; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CCaSbAIneudVcwRSxOOJJINCCRyHMNWruOTptkxOVKE=; b=A6pObVxI+3RIa0AiF+mlbGcmMZs8LcQkbSgCHs9WHejD/O7f+GnAMBNqXkL9vqY5WOu2J8 NF5VQEL+YXsZmJrujT6ek1CND6Yyu8iFZWZRxrHG5kb6txYEzw55o3wm+/inriyyvAiqg1 30Ykl6JuzTNAaPEyLPZBy5kk5wp1qkPjgoZb2hd3vV1N4uVRM+EVl+bxjvudFC2xWXgjfO 5evrWqbqTJiOg8XOB2pJBEd0ANN0FcAK34N+xAstouxmEDUG7vW7ZOI6iDCT+Ka39UHkhZ 8gjPjjLE7YERlN9d9lr8HA5ts7txczpuCbDf2AqXQcCd9t7f2ai1kJlSBhJeQQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769020334; a=rsa-sha256; cv=none; b=MzJmdjzeWhoQyDAg03XKkOfBJ8zPwnkz6dlUEBW9E+PPWcW4Gr1k8UzlqItEg4dBceXG7N JPGNn3PH/3t4D6u0lJI9h6ogXcmwUYtypTQoNXhbOopAnjE18VowOUs2KvvXMlkK6mMsCL 8zf7tmfNQIbu22hwmOVAc10pqn5XiTE1GVLA+EGET5AeRZVEAbSEtQ0ZzugYiBrtZJBp+6 C7guodDqLVTDjhlRUZ5QYchVq6R0QEOf7OR4929QvvVLRQ3b0NqLbx3Ucq2IXzs/rjwBnt 4///eTF4kgAc6MvYpSDc57RNjcbydohyHBF++Sc6Ltywycf59XiUwrbvTAP3dw== 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 4dxCTp3439zyl8 for ; Wed, 21 Jan 2026 18:32:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 4383e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 18:32:14 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 18de28308c29 - main - LinuxKPI: 802.11: add new field to struct cfg80211_bitrate_mask List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 18de28308c2916d18fca4e9d8988910176b14951 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 18:32:14 +0000 Message-Id: <69711bae.4383e.304a8b2c@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=18de28308c2916d18fca4e9d8988910176b14951 commit 18de28308c2916d18fca4e9d8988910176b14951 Author: Bjoern A. Zeeb AuthorDate: 2026-01-20 22:44:43 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-01-21 18:31:07 +0000 LinuxKPI: 802.11: add new field to struct cfg80211_bitrate_mask rtw89(4) accesses eht_mcs[]. Add the field to struct cfg80211_bitrate_mask. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/compat/linuxkpi/common/include/net/cfg80211.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/net/cfg80211.h b/sys/compat/linuxkpi/common/include/net/cfg80211.h index 4b21f82a0762..a8ca560a1ec1 100644 --- a/sys/compat/linuxkpi/common/include/net/cfg80211.h +++ b/sys/compat/linuxkpi/common/include/net/cfg80211.h @@ -152,6 +152,8 @@ struct linuxkpi_ieee80211_channel { int orig_mpwr; }; +#define NL80211_EHT_NSS_MAX 16 + struct cfg80211_bitrate_mask { /* TODO FIXME */ struct { @@ -159,6 +161,7 @@ struct cfg80211_bitrate_mask { uint8_t ht_mcs[IEEE80211_HT_MCS_MASK_LEN]; uint16_t vht_mcs[8]; uint16_t he_mcs[8]; + uint16_t eht_mcs[NL80211_EHT_NSS_MAX]; enum nl80211_txrate_gi gi; enum nl80211_he_gi he_gi; uint8_t he_ltf; /* XXX enum? */ From nobody Wed Jan 21 18:32:15 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxCTr0zNzz6PYfn for ; Wed, 21 Jan 2026 18:32: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxCTq5f0mz44Qy for ; Wed, 21 Jan 2026 18:32:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769020335; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2YU7MoDeUgJUsMHowzg73qhifgbxUsSLw4WOgCEoXvw=; b=o5PILOpUrcZy+EvCrfPgQVI+ILwsVdGQnemtIFuFFU39T0+slPeufO7qKaIPk0Yo5a5631 TyQJ2nQsVAXuSxtBSjenkEM8nKIy3Gi3ptJDk8D0lgp1KKvbd3vhgHKGS0BOfOfpA/WNct nxtb4xB3wb0ixfNxgNRHTa/Sk+y0UIDy/r38LUnc0H4n3kUAW96+HSegy6Bv9UkB/qlzgL KKtxoKMvog9t8l8c4CvnhEB9Bkds5Af+MWW5WtH5dn9UmyJXgcbZxMO9YzzqrBqTo95BtL z8h4jRyTsq6ILB2bItEGwRRvtQ6bnH1SqT65J2D2YGw4jOi0iQO91nwUG8fKBQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769020335; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2YU7MoDeUgJUsMHowzg73qhifgbxUsSLw4WOgCEoXvw=; b=kiMaA/doBwMQ3dRVK+sv+aPP+ACf1GIfQQttRgrcGxGNwTY2qiITLG9snd/iqjqT0ACga6 co9r9WRFo2osq7nfYMPl/H0V30QKWwEq60x+X5SrEivTber4Bt+AMPXpDjl7VjqDBuXbdj e6QtL0X+IW0MF4Wn2doD4NIN1GIahO74kMlwJa//UlwR0grh7rO7362lCJHyF4reiFhpch jLgXEuunVHimfFsnHM3XrHasCsjkjef6DPfVlzqao5QSivTkMJKJLcEprdlH3pc4vjj0bo n4+p1zzA55ywGunFAmpGc4p9y/0bqlofUnGtH3CM1KK7cYJMO1H8qHb9fBHYXQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769020335; a=rsa-sha256; cv=none; b=DFGP8lfNd+8Q6VTqvmtgNuZCP2x7nWWFd1dXopJg8wk1Jp0g9nf3VYlxj19r3u+LeHuSF+ O1APAsCfGarrU9zSGCQL5U/fwjGf7oZORXuiFIrECkXKNLK3L2otktk0Gz2/r+DUVETRjs QWzU8GBkadv3wsK5zKwk/6Zw5QmDVduQplpp22JrFbf3K4bU2tx5NW4LjWohAXITfELF36 XELUajWiGnon+f3XAC2+JhDo82uzRMziMDetES6J+SgKoDkoIOWPNqtMN8CO4+ocFPLBe3 fvX4Wd9jy+Vl+LanYAHRXEI1wfQXatStny+VWAAF8vvdJUfr0JJuGwygzwo4SA== 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 4dxCTq3jD2zy4d for ; Wed, 21 Jan 2026 18:32:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 447c6 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 18:32:15 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: b2c90d106c66 - main - LinuxKPI: 802.11: rename enum ieee80211_tx_rate_flags and move file List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: b2c90d106c66daf6dc7fb300c250b4ad0aa274f5 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 18:32:15 +0000 Message-Id: <69711baf.447c6.2178211e@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=b2c90d106c66daf6dc7fb300c250b4ad0aa274f5 commit b2c90d106c66daf6dc7fb300c250b4ad0aa274f5 Author: Bjoern A. Zeeb AuthorDate: 2026-01-20 22:47:13 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-01-21 18:31:07 +0000 LinuxKPI: 802.11: rename enum ieee80211_tx_rate_flags and move file What we used to call enum ieee80211_tx_rate_flags is now used as enum mac80211_rate_control_flags for the ieee80211_tx_rate.flags in rtw89(4). Rename the enum and move it to mac80211 as it seems to belong there. Sponsonred by: The FreeBSD Foundation MFC after: 3 days --- sys/compat/linuxkpi/common/include/linux/ieee80211.h | 12 ------------ sys/compat/linuxkpi/common/include/net/mac80211.h | 15 +++++++++++++-- 2 files changed, 13 insertions(+), 14 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/ieee80211.h b/sys/compat/linuxkpi/common/include/linux/ieee80211.h index c81ddf7d24b2..a9033581a315 100644 --- a/sys/compat/linuxkpi/common/include/linux/ieee80211.h +++ b/sys/compat/linuxkpi/common/include/linux/ieee80211.h @@ -480,18 +480,6 @@ enum ieee80211_tx_control_flags { IEEE80211_TX_CTRL_MLO_LINK = 0xF0000000, /* This is IEEE80211_LINK_UNSPECIFIED on the high bits. */ }; -enum ieee80211_tx_rate_flags { - /* XXX TODO .. right shift numbers */ - IEEE80211_TX_RC_40_MHZ_WIDTH = BIT(0), - IEEE80211_TX_RC_80_MHZ_WIDTH = BIT(1), - IEEE80211_TX_RC_160_MHZ_WIDTH = BIT(2), - IEEE80211_TX_RC_GREEN_FIELD = BIT(3), - IEEE80211_TX_RC_MCS = BIT(4), - IEEE80211_TX_RC_SHORT_GI = BIT(5), - IEEE80211_TX_RC_VHT_MCS = BIT(6), - IEEE80211_TX_RC_USE_SHORT_PREAMBLE = BIT(7), -}; - #define IEEE80211_RNR_TBTT_PARAMS_PSD_RESERVED -128 #define IEEE80211_HT_CTL_LEN 4 diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index 6e2f3f2d8781..8d3d04c9afe5 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2020-2025 The FreeBSD Foundation + * Copyright (c) 2020-2026 The FreeBSD Foundation * Copyright (c) 2020-2025 Bjoern A. Zeeb * * This software was developed by Björn Zeeb under sponsorship from @@ -789,10 +789,21 @@ struct ieee80211_tx_queue_params { struct ieee80211_he_mu_edca_param_ac_rec mu_edca_param_rec; }; +enum mac80211_rate_control_flags { + IEEE80211_TX_RC_40_MHZ_WIDTH = BIT(0), + IEEE80211_TX_RC_80_MHZ_WIDTH = BIT(1), + IEEE80211_TX_RC_160_MHZ_WIDTH = BIT(2), + IEEE80211_TX_RC_GREEN_FIELD = BIT(3), + IEEE80211_TX_RC_MCS = BIT(4), + IEEE80211_TX_RC_SHORT_GI = BIT(5), + IEEE80211_TX_RC_VHT_MCS = BIT(6), + IEEE80211_TX_RC_USE_SHORT_PREAMBLE = BIT(7), +}; + struct ieee80211_tx_rate { uint8_t idx; uint16_t count:5, - flags:11; + flags:11; /* enum mac80211_rate_control_flags */ }; enum ieee80211_vif_driver_flags { From nobody Wed Jan 21 18:32:16 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxCTs1cKKz6PYKg for ; Wed, 21 Jan 2026 18:32: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxCTr4rGDz44V1 for ; Wed, 21 Jan 2026 18:32:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769020336; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/b19gIseMN2BgyJd5xgfQ85votNa/zTKUkbOcxSdCpI=; b=YFXDsGkZZZvYXoscYNhtu4XqbOIIrXQe3zTnLvPbsEOD7qiOCh4D90yM7KKcrHcSsDMW8f MntYfWJnR6hIsGAjgDiV/hrNkFI6pS4S/Kw+LEwD6+31lumLLAIsFxfnqRGpwFg5ihPaU6 /xeLJCwXHxq2MQzowBZeEiHRJ3dnVxX2kgBtmG4i0jfmAwOw7VS+3uP1IKAenzeOZ2eakj TE/BiMk+ldUd3kIQDP8jafC3OUJnK+FkiWX/968F/wlX59tcYdxcj+dUpR3eOrNudjC3xz neg2wW0+nwW8BgQvDaXnqFT78W/HwWl8wOEuAeBBuAMSdUMxmUlsH7Qpf032zQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769020336; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/b19gIseMN2BgyJd5xgfQ85votNa/zTKUkbOcxSdCpI=; b=H15RKPB5fxLn884wZVMSbH3jZ7RXC2Lsb1+u+syIAxnBBznQF5OUu1uAAN6M5bB8WBoP9l fb1Mu2Qywh7ZaEGiNE8EBSMHtSRB/5fIVnkr52R1DTfSXofpU4QyqdFT2OK1QpOX6YSVW3 tGjCThcu/C6XVHb2u6Dh2QNDM+tjjzmVaXi3SFmim3bXulehBYh+iq56PLNmJe6T0M2KO8 a10XGP/2QhGL6/EbKTqHXEw+9qpqlzzxP5b6c0Nvkb2YxjJ/dCwCmCXSUg4EACMZ4m+Whv Xe6dprMR/qlpwiDlqp5/+11+xcRY1nEDFhrKfjKmvEGRFGU/AHK4tUhE/iYnFQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769020336; a=rsa-sha256; cv=none; b=C44pzmDtHFSyU/3ck1Ik8BrMd213hbn9grB17GjC67gsPyAYXEeHsKBhh5ecqPbwtS6lQ9 Akjv+d+F677gsIBoKvrhD0QaJxCByIYGu1HPwm66pokQGs/KSDBobMF9P+qStIqTfFvNG7 e3iaINCAKpDs6LDYnXSdQdrHhRnRuAYyUAxsvOZiTZkAt/Q9/8lypwi26wcVURXuGfgCFp gADpXF9kUPA4R+c7i05dOzeDid/B+0N0+yR8QAQOauFXn45p4+XQf7AhU0QGNpD9G9pKSh DJBS8uDJ1T95HCENv6whawBK3JP4AthBZijVMFkC53HHf9oWiBaRos+UFBP3uQ== 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 4dxCTr4RswzylB for ; Wed, 21 Jan 2026 18:32:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 44d00 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 18:32:16 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: f1d7eea9dc1e - main - LinuxKPI: skbuff: implement skb_queue_splice() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: f1d7eea9dc1e78ecd247e060f4e8395ba4e77346 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 18:32:16 +0000 Message-Id: <69711bb0.44d00.5269e32c@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=f1d7eea9dc1e78ecd247e060f4e8395ba4e77346 commit f1d7eea9dc1e78ecd247e060f4e8395ba4e77346 Author: Bjoern A. Zeeb AuthorDate: 2026-01-20 22:49:05 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-01-21 18:31:08 +0000 LinuxKPI: skbuff: implement skb_queue_splice() Add skb_queue_splice() and use it in skb_queue_splice_init() which already had that functionality (plus the init bit). The new function is used by rtw89(4). Sponosred by: The FreeBSD Foundation MFC after: 3 days --- sys/compat/linuxkpi/common/include/linux/skbuff.h | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/linux/skbuff.h b/sys/compat/linuxkpi/common/include/linux/skbuff.h index 2e560a120e41..c43d6daff5ee 100644 --- a/sys/compat/linuxkpi/common/include/linux/skbuff.h +++ b/sys/compat/linuxkpi/common/include/linux/skbuff.h @@ -770,7 +770,7 @@ ___skb_queue_splice(const struct sk_buff_head *from, } static inline void -skb_queue_splice_init(struct sk_buff_head *from, struct sk_buff_head *to) +skb_queue_splice(const struct sk_buff_head *from, struct sk_buff_head *to) { SKB_TRACE2(from, to); @@ -780,6 +780,13 @@ skb_queue_splice_init(struct sk_buff_head *from, struct sk_buff_head *to) ___skb_queue_splice(from, (struct sk_buff *)to, to->next); to->qlen += from->qlen; +} + +static inline void +skb_queue_splice_init(struct sk_buff_head *from, struct sk_buff_head *to) +{ + + skb_queue_splice(from, to); __skb_queue_head_init(from); } From nobody Wed Jan 21 18:32:17 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxCTs74Cmz6PYNN for ; Wed, 21 Jan 2026 18:32: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxCTs5PPdz450D for ; Wed, 21 Jan 2026 18:32:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769020337; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3TmMLxEDwUUeMScMf3inhbLYRBxYxTEP0u9O5vtbFkY=; b=ZR+UlMRqY4xDxFevBNnfB3mm0zDnNupGIXLODsqCxjtkFFBG6+ON4/e3PRWzL5iNm+ua5y ZeL61UPFv8VB6EdDeVeHXQufU4Zl9O2xnkVf3VN61Ff8aXqt+dfPFtSTsZach6oxMrTGeL uEdYLcKmFSqweS/4fzjLHsa5MRSSfZYza1ivF4VXSh4Q3oha0M1QAc1oD01K+pEG4rHDuy aE66Pb3ny6VqkmDg5eKig1UpBU/HnoXU2ZEfyVgbcOp7iIM0GJUJCqXq44UXlytlbqghBQ +4GfzkmWezKbKLmYfsVMdzCGOtsa+wvaZy66lNXbqLgd8o0GhipeanvbhLkXuw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769020337; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3TmMLxEDwUUeMScMf3inhbLYRBxYxTEP0u9O5vtbFkY=; b=KT4RSk+yYWtR9MFtM2nb7dKnYuIy7U2UFV+oZ7MKe7nH/sjgKI6IHk1WYABvq/pNu7B1+D 8LfvLJ5SGO5uKaJWLs2HlbI3RJhoHNFN8rGVuUwRwr/fIFCP4e/Krr/obVBs8mznCpYlkX WRYZWLsVu+lnvIdBRXSSsz9CJblPZhpbMsdHlF9I2HR6sQnt+Wa/sEszMmF8tS6NT18r0e iOYY42BVfDqadEdNcFM91lz7+TxrfmXuKB9mxX4iRB3c+rWrfJ3gjK4+ephzdGhl4BpmFj eML6+3IUeggIIrBT215E0SOITkM4tgXWLJ2upP6yOpDrM4l3J+6rw4t/HYqYfQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769020337; a=rsa-sha256; cv=none; b=PMdPKqDrdFI7ustBz5uxTCcmIT4oRIWLOMjJE4dxZFuPwmw/npGmoYPH5RgNlmTP1zAdK9 adytKEIVyDmY5e8tyDvkYmdZq9eMljQAI+OhhrPKmvKwC7n59BQbgvW5gQr3UaSyLdLAhb JJLYXlbT6aAzmQt8v01dFF9L+bVmF8NGn9yXo2wAda0dtdanIc6Wbn0pYxNT1U0FrVNOrM v9x+zjW05VXVRZy5KDvIFWMZaEwDnWd1UCFujzFKJNPDkizMRQqQbNAgzUqE9Tk60gmxgf ySQF5hZqJSs8rHkSYLeyYwt7gHTCHEfLjOc/vpintjVtSYT0G1BmPpqvYguYew== 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 4dxCTs4zbgz1037 for ; Wed, 21 Jan 2026 18:32:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 4420e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 18:32:17 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: d4898c6e01d8 - main - LinuxKPi: 802.11: add more defines List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: d4898c6e01d80850e4a93a1aa805c44b5f8ca63f Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 18:32:17 +0000 Message-Id: <69711bb1.4420e.53d0cd44@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=d4898c6e01d80850e4a93a1aa805c44b5f8ca63f commit d4898c6e01d80850e4a93a1aa805c44b5f8ca63f Author: Bjoern A. Zeeb AuthorDate: 2026-01-21 13:52:04 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-01-21 18:31:08 +0000 LinuxKPi: 802.11: add more defines Add more defines and a mac80211 op function pointer used by mt76(4) at Linux v6.19-rc6. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/compat/linuxkpi/common/include/linux/ieee80211.h | 1 + sys/compat/linuxkpi/common/include/net/cfg80211.h | 1 + sys/compat/linuxkpi/common/include/net/mac80211.h | 2 ++ 3 files changed, 4 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/ieee80211.h b/sys/compat/linuxkpi/common/include/linux/ieee80211.h index a9033581a315..d1eba94a3ad8 100644 --- a/sys/compat/linuxkpi/common/include/linux/ieee80211.h +++ b/sys/compat/linuxkpi/common/include/linux/ieee80211.h @@ -219,6 +219,7 @@ enum ieee80211_min_mpdu_start_spacing { #define IEEE80211_FCTL_TODS (IEEE80211_FC1_DIR_TODS << 8) #define IEEE80211_FCTL_MOREFRAGS (IEEE80211_FC1_MORE_FRAG << 8) #define IEEE80211_FCTL_PM (IEEE80211_FC1_PWR_MGT << 8) +#define IEEE80211_FCTL_MOREDATA (IEEE80211_FC1_MORE_DATA << 8) #define IEEE80211_FTYPE_MGMT IEEE80211_FC0_TYPE_MGT #define IEEE80211_FTYPE_CTL IEEE80211_FC0_TYPE_CTL diff --git a/sys/compat/linuxkpi/common/include/net/cfg80211.h b/sys/compat/linuxkpi/common/include/net/cfg80211.h index a8ca560a1ec1..94d34fb9dc0c 100644 --- a/sys/compat/linuxkpi/common/include/net/cfg80211.h +++ b/sys/compat/linuxkpi/common/include/net/cfg80211.h @@ -124,6 +124,7 @@ enum ieee80211_channel_flags { IEEE80211_CHAN_PSD = BIT(12), IEEE80211_CHAN_ALLOW_6GHZ_VLP_AP = BIT(13), IEEE80211_CHAN_CAN_MONITOR = BIT(14), + IEEE80211_CHAN_NO_EHT = BIT(15), }; #define IEEE80211_CHAN_NO_HT40 (IEEE80211_CHAN_NO_HT40MINUS|IEEE80211_CHAN_NO_HT40PLUS) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index 8d3d04c9afe5..18891d035094 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -1103,6 +1103,8 @@ struct ieee80211_ops { void (*rfkill_poll)(struct ieee80211_hw *); + int (*net_fill_forward_path)(struct ieee80211_hw *, struct ieee80211_vif *, struct ieee80211_sta *, struct net_device_path_ctx *, struct net_device_path *); + /* #ifdef CONFIG_MAC80211_DEBUGFS */ /* Do not change depending on compile-time option. */ void (*sta_add_debugfs)(struct ieee80211_hw *, struct ieee80211_vif *, struct ieee80211_sta *, struct dentry *); void (*vif_add_debugfs)(struct ieee80211_hw *, struct ieee80211_vif *); From nobody Wed Jan 21 18:32:18 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxCTv33WCz6PYKv for ; Wed, 21 Jan 2026 18:32: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxCTt6KFLz44x3 for ; Wed, 21 Jan 2026 18:32:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769020338; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=55hGRVFnk4zz9NOt9+lyLbG4Qq5lEcptGnOf7lyvJpE=; b=ZUZzCJTkekAQ10mAOL6HjFBhOpM6tHUXbc/240Btc5TaG3qqZz09DpJvtXWaxYZF7E+YCy ceR+17eG1IPhFMkt0PWQd6bEGGEFa87iT42Vl+1Q1LlGqDiBngp8yvZepBVf3vaqx6y6CU HSP/X0Uh/mFYJZBk5XTD5t0JfgcP0aLdGWf9rcM6Shoyx5TqHYDg1V3AHH3iMzZX24gJgB jojbifrbX9gTCLCwaiZyhzVpdDY4nrG8BflzXdk8i71HvV4+o0trkcqABIGYVm6Xkf98eP md/X3MYIxiUMHcH8k4Q1Bmh4Y3QkVoK/qL3NQpqwkj0/q6M64ZR/fIE/XKxAMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769020338; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=55hGRVFnk4zz9NOt9+lyLbG4Qq5lEcptGnOf7lyvJpE=; b=XkNyu1q8wQmb6CqtDAmkIqAoWqRIEEpA2yhXkIXz8i0R6HO8vLW1SVIgvlOcu1g5qoRVWC 3RiYIS14nInlOFFCF7PVTVY4vriH8UUpmAiQxuNk5s+CmGTfBnV2D6e7ugccpZOtud74mV HJ8KV8oB7FyDoN9ntbCM2l8ZuSnjQKeB3Le5MiBi9RbeNuOQSt2bbNsei8vfcYt6caRrxR 91HcCiNWIdd7ouCc68q7IfEpMJdS4r71cTzIolfgAjb/Z/WAp/5jio0XJOGlBqiscOa0Vi t3Uy+L5gxodR+c1LcV5UlsEb/eo6D4rTIlJtO34tPyqvJRusS7//KP8IsxPGMQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769020338; a=rsa-sha256; cv=none; b=pCsDZ5QhI2ANEWytkWkWM6DUJ8ycJiUPN717qVYZrpf4SVf/EKhQFaD4iKelgSSZnBu1Ki 7C2MvH1ELUoLHsKyfACDUn2XA3ZbDHjcttfjbTWAp0SF13pwvAhe6B88LixEyoOhN/8iV8 fHxQCSqxkbBM8x08zg4t8Cn6WBDpq1XwXfFEvGlRyhX3aoBp64/wt9cv2bgnYFonhxxTIc l3+TAXJAfqOego1mlkBBN9X4sLeIeN1OhUOqZLqngqO+jbvHJphS1ztRx4ds++yvwastwK VIwvrpHEcSaibv8MrH2VvIuyjQryqujCEl0foyXJEFH6SeQDt1bTxImssjLeeg== 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 4dxCTt5n3QzyYm for ; Wed, 21 Jan 2026 18:32:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 420d3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 18:32:18 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 275c7f513114 - main - LinuxKPI: netdevice: add structs net_device_path, net_device_path_ctx List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 275c7f513114a8808ba246a1304cbcf7bafbcc21 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 18:32:18 +0000 Message-Id: <69711bb2.420d3.2c8b7055@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=275c7f513114a8808ba246a1304cbcf7bafbcc21 commit 275c7f513114a8808ba246a1304cbcf7bafbcc21 Author: Bjoern A. Zeeb AuthorDate: 2026-01-21 13:55:28 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-01-21 18:31:08 +0000 LinuxKPI: netdevice: add structs net_device_path, net_device_path_ctx mt76(4) is using this along with a mac80211.h functiontion pointer to resolve a path in an offload case. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- .../linuxkpi/common/include/linux/netdevice.h | 24 ++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/netdevice.h b/sys/compat/linuxkpi/common/include/linux/netdevice.h index cf27753bcb80..dfed5fbd61b4 100644 --- a/sys/compat/linuxkpi/common/include/linux/netdevice.h +++ b/sys/compat/linuxkpi/common/include/linux/netdevice.h @@ -160,6 +160,30 @@ struct net_device { #define SET_NETDEV_DEV(_ndev, _dev) (_ndev)->dev.parent = _dev; +enum net_device_path_type { + DEV_PATH_MTK_WDMA, +}; + +struct net_device_path { + enum net_device_path_type type; + const struct net_device *dev; + /* We assume there's a struct per type. */ + union { + struct { + uint16_t wcid; + uint8_t wdma_idx; + uint8_t queue; + uint8_t bss; + uint8_t amsdu; + } mtk_wdma; + }; +}; + +struct net_device_path_ctx { + const struct net_device *dev; +}; + + /* -------------------------------------------------------------------------- */ /* According to linux::ipoib_main.c. */ struct netdev_notifier_info { From nobody Wed Jan 21 20:02:36 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxFV53CRgz6Pfvc for ; Wed, 21 Jan 2026 20: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxFV46jsJz3NfJ for ; Wed, 21 Jan 2026 20: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=1769025757; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HH1xE+BlE97OjH1J8QjsFtUqWwG5IUZh4QjUbq78pTQ=; b=EBuL6TUFLU+HsRaQaqjOnUi0jiI4r43zM8caX79RqzUtkzcrLprKL7MWWbUnaG1tiO1FW0 Y09OrCTSLkF0+0C+uWE5rYkFfDaDRv/XH8Zte8qYz4EmbbWXjGUpMVnnQEgKihPp3C0C4w Qgz3cR8UhMBAvb+GRQbI5mjOSHFkFR3kOW67j0CE8lPxrlheC0JRYC1Uil3ppc2A+AIsfi Y6K04ZThKRA/S45giQ96SphYDWPvjndWIzCL3YDO5Y75+k45+RnAEHFGH/Z9Olu//Ob2zA epnWXr3W0I2aK0xtPr5vy+oaJTcYnQe66WfDos6JwL7dUU94ojaZL0YYmBbQVw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769025757; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HH1xE+BlE97OjH1J8QjsFtUqWwG5IUZh4QjUbq78pTQ=; b=fsItGfPwtjd87pt8/C+SVAVLBOjB0tcebksRtr2YPAHaTMnoTrt2L1izRX/q8FGPsvo1Gm nI1oViXdXPHPioMtrP1jFFdSsYgZz+VD5p7HI/nqwOxzpztSTuqcRTcbiiEG3+u8YyFoeu 8B7Isu3D0InHJJdxTnjek6Pda/XKBIZSeygXQHl052wBGp6muRdGguq4d0fhXT8GBBUfkv 9OcrsC9qpcbLr/ODQMYnt59bdUXWHyOZH0EqrIygQxiZPTYixAanATYeZl3HiPpih3nDbG yYPsuLMyXWqAJ7cWhZn0aY0GjyQd7DTBDsb34UtGfHkgMJMEulQdUjVcB+BhYQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769025757; a=rsa-sha256; cv=none; b=DfEKs5K/1SHSBdc72O5OYzpVnXJB4MqPdCoNKjOB6z7ZB0Lasx7ZfVoDhgx7CwSsaeJ3kl 8SGxlH+KrrOiAIfAszMoyWZBkB26rzPZK5ePkRZxrYrzVBJtigqO1myzfRGwlaUsWK2zxn xt2yJTN4WjR1waaeS4eda+9AZ8ka5PLNXuGoqZD5wAV0VkqipKwsIwEguyF6F1/01edfxt L8elz/yFoX9JUL/l4tPLw8HgE9N8PWc+5Di5Nxh0bu0CaFx0qVmmF34ofOX8McSPuVgHZI lulpSYjeQ91zyVTk2Szf+P/vMOvPiGyQ7rf0c+Cj6wwND9sH9VbyYIBX8DmJJQ== 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 4dxFV46KXJz12Bs for ; Wed, 21 Jan 2026 20:02:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id ce85 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 20:02:36 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 80ba8933a991 - main - rtw88: update Realtek's rtw88 driver List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 80ba8933a991d245b3983f9e2ed1171b11ccaf8a Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 20:02:36 +0000 Message-Id: <697130dc.ce85.5dee3196@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=80ba8933a991d245b3983f9e2ed1171b11ccaf8a commit 80ba8933a991d245b3983f9e2ed1171b11ccaf8a Author: Bjoern A. Zeeb AuthorDate: 2026-01-20 10:56:33 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-01-21 19:57:15 +0000 rtw88: update Realtek's rtw88 driver This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 24d479d26b25bce5faea3ddd9fa8f3a6c3129ea7 ( tag: v6.19-rc6 ). Sponsored by: The FreeBSD Foundation --- sys/contrib/dev/rtw88/bf.c | 8 +++++++- sys/contrib/dev/rtw88/bf.h | 7 +++++++ sys/contrib/dev/rtw88/rtw8822bu.c | 2 ++ sys/contrib/dev/rtw88/rtw8822cu.c | 2 ++ sys/contrib/dev/rtw88/sdio.c | 4 +++- sys/modules/rtw88/Makefile | 2 +- 6 files changed, 22 insertions(+), 3 deletions(-) diff --git a/sys/contrib/dev/rtw88/bf.c b/sys/contrib/dev/rtw88/bf.c index 16c6a1d972e5..8969a1e0cb47 100644 --- a/sys/contrib/dev/rtw88/bf.c +++ b/sys/contrib/dev/rtw88/bf.c @@ -129,8 +129,11 @@ void rtw_bf_init_bfer_entry_mu(struct rtw_dev *rtwdev, void rtw_bf_cfg_sounding(struct rtw_dev *rtwdev, struct rtw_vif *vif, enum rtw_trx_desc_rate rate) { + u8 csi_rsc = CSI_RSC_FOLLOW_RX_PACKET_BW; u32 psf_ctl = 0; - u8 csi_rsc = 0x1; + + if (rtwdev->chip->id == RTW_CHIP_TYPE_8822C) + csi_rsc = CSI_RSC_PRIMARY_20M_BW; psf_ctl = rtw_read32(rtwdev, REG_BBPSF_CTRL) | BIT_WMAC_USE_NDPARATE | @@ -392,6 +395,9 @@ void rtw_bf_cfg_csi_rate(struct rtw_dev *rtwdev, u8 rssi, u8 cur_rate, csi_cfg = rtw_read32(rtwdev, REG_BBPSF_CTRL) & ~BIT_MASK_CSI_RATE; cur_rrsr = rtw_read16(rtwdev, REG_RRSR); + if (rtwdev->chip->id == RTW_CHIP_TYPE_8822C) + csi_cfg |= BIT_CSI_FORCE_RATE; + if (rssi >= 40) { if (cur_rate != DESC_RATE54M) { cur_rrsr |= BIT(DESC_RATE54M); diff --git a/sys/contrib/dev/rtw88/bf.h b/sys/contrib/dev/rtw88/bf.h index 7b40c2c03856..a5d3010e6be6 100644 --- a/sys/contrib/dev/rtw88/bf.h +++ b/sys/contrib/dev/rtw88/bf.h @@ -33,6 +33,7 @@ #define BIT_SHIFT_R_MU_RL 12 #define BIT_SHIFT_WMAC_TXMU_ACKPOLICY 4 #define BIT_SHIFT_CSI_RATE 24 +#define BIT_CSI_FORCE_RATE BIT(15) #define BIT_MASK_R_MU_RL (R_MU_RL << BIT_SHIFT_R_MU_RL) #define BIT_MASK_R_MU_TABLE_VALID 0x3f @@ -48,6 +49,12 @@ #define RTW_SND_CTRL_REMOVE 0x98 #define RTW_SND_CTRL_SOUNDING 0x9B +enum csi_rsc { + CSI_RSC_PRIMARY_20M_BW = 0, + CSI_RSC_FOLLOW_RX_PACKET_BW = 1, + CSI_RSC_DUPLICATE_MODE = 2, +}; + enum csi_seg_len { HAL_CSI_SEG_4K = 0, HAL_CSI_SEG_8K = 1, diff --git a/sys/contrib/dev/rtw88/rtw8822bu.c b/sys/contrib/dev/rtw88/rtw8822bu.c index efda9887cc41..2886f470df71 100644 --- a/sys/contrib/dev/rtw88/rtw8822bu.c +++ b/sys/contrib/dev/rtw88/rtw8822bu.c @@ -79,6 +79,8 @@ static const struct usb_device_id rtw_8822bu_id_table[] = { .driver_info = (kernel_ulong_t)&(rtw8822b_hw_spec) }, /* D-Link DWA-T185 rev. A1 */ { USB_DEVICE_AND_INTERFACE_INFO(0x0411, 0x03d1, 0xff, 0xff, 0xff), .driver_info = (kernel_ulong_t)&(rtw8822b_hw_spec) }, /* BUFFALO WI-U2-866DM */ + { USB_DEVICE_AND_INTERFACE_INFO(0x0411, 0x03d0, 0xff, 0xff, 0xff), + .driver_info = (kernel_ulong_t)&(rtw8822b_hw_spec) }, /* BUFFALO WI-U3-866DHP */ {}, }; MODULE_DEVICE_TABLE(usb, rtw_8822bu_id_table); diff --git a/sys/contrib/dev/rtw88/rtw8822cu.c b/sys/contrib/dev/rtw88/rtw8822cu.c index 90fcbb8ec629..a5f8311c022b 100644 --- a/sys/contrib/dev/rtw88/rtw8822cu.c +++ b/sys/contrib/dev/rtw88/rtw8822cu.c @@ -21,6 +21,8 @@ static const struct usb_device_id rtw_8822cu_id_table[] = { .driver_info = (kernel_ulong_t)&(rtw8822c_hw_spec) }, { USB_DEVICE_AND_INTERFACE_INFO(0x13b1, 0x0043, 0xff, 0xff, 0xff), .driver_info = (kernel_ulong_t)&(rtw8822c_hw_spec) }, /* Alpha - Alpha */ + { USB_DEVICE_AND_INTERFACE_INFO(0x2001, 0x3329, 0xff, 0xff, 0xff), + .driver_info = (kernel_ulong_t)&(rtw8822c_hw_spec) }, /* D-Link AC13U rev. A1 */ {}, }; MODULE_DEVICE_TABLE(usb, rtw_8822cu_id_table); diff --git a/sys/contrib/dev/rtw88/sdio.c b/sys/contrib/dev/rtw88/sdio.c index 99d7c629eac6..e35de52d8eb4 100644 --- a/sys/contrib/dev/rtw88/sdio.c +++ b/sys/contrib/dev/rtw88/sdio.c @@ -144,8 +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) { + bool might_indirect_under_power_off = rtwdev->chip->id == RTW_CHIP_TYPE_8822C; + if (!test_bit(RTW_FLAG_POWERON, rtwdev->flags) && - !rtw_sdio_is_bus_addr(addr)) + !rtw_sdio_is_bus_addr(addr) && might_indirect_under_power_off) return false; return !rtw_sdio_is_sdio30_supported(rtwdev) || diff --git a/sys/modules/rtw88/Makefile b/sys/modules/rtw88/Makefile index ee47df54bcf9..0ce6ad3f99bb 100644 --- a/sys/modules/rtw88/Makefile +++ b/sys/modules/rtw88/Makefile @@ -46,7 +46,7 @@ SRCS+= ${LINUXKPI_GENSRCS} SRCS+= opt_wlan.h opt_inet6.h opt_inet.h CFLAGS+= -DKBUILD_MODNAME='"rtw88"' -CFLAGS+= -DLINUXKPI_VERSION=61700 +CFLAGS+= -DLINUXKPI_VERSION=61900 CFLAGS+= -I${DEVRTW88DIR} CFLAGS+= ${LINUXKPI_INCLUDES} From nobody Wed Jan 21 20:02:37 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxFV6251Kz6PgDV for ; Wed, 21 Jan 2026 20: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxFV60cDFz3NHF for ; Wed, 21 Jan 2026 20: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=1769025758; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/sC0iXLFHflNsFQNBYKvlmN60iDktc/09aG57uiCtvk=; b=q9uWpxbXRVsVkhiCAb1pC3CAsjJVLwUoXVghQm+S9VGFzW+0KjBePYq60Wdm7b/vNZAPoi tXfzlE6Xnh3RZwGPOSF7XJ+ooKLtt7jsF7IQJOQndNm6X/q6GyI+kGjJSxyP6rCmOrD270 ay/LRZHQPWndJLWh0/oNmF65jgRrQYpha2WOXeyhqNf5+NtM+Oq1o+XFzJFcizrvqZ0x55 821FImIjBp1yJ73MuxWBAcJOEZy8D1MtG8ngjAcTTvIXnv9naTTbotMeZwYfyqcXeHllnp cRV7mCtyd9ahqDdshYMvz7lopXo9N6/zJ3J0JFGjC2aV/2oRsLM6Ch34o9bq6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769025758; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/sC0iXLFHflNsFQNBYKvlmN60iDktc/09aG57uiCtvk=; b=XqPft8t5WmYDMwquqqMvzlHB8l1QVZ4uJi7vitJDB0BiBRZp62qoJSx8vSdD0WMXijkvB3 iE6Uhp2u5MxZa052HqD4GeI9idMtCWODJEGk/uQzHiB84GEN9M8foKTHl63E5fd8T3xId1 xBBnS7gK0fFom8JTa4evckh4pKNlOBBI3YIaF13yJcrA44KVSMe+MCjPc6mmbUoYfMy+Mr /xmO+uZbdUabFu533YOVsm2YMINDyZihCUQVWLxELdYVLvuyrYNH+2d5IvgAGWomFiRqqM qyV1A7S6E/NSyVAwNaERUd3Wa6Hl3IXMCF8bNZ7FNLFA3eYyKdX8yGt7n340Jw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769025758; a=rsa-sha256; cv=none; b=UPknU2GA/dn700vN09lN31E8SHh+l97N9DLyy7k3cfuIF2G5gXJ60TVb5tP3Ebc5LyPA9A 1gMH5CFWr8mrk9E4+AyHGkCoHwlWhxTwsegKSxQloHDdV7s5nOZNS9aK8QWzE4mSzj/xyP COgOyreImspmYQXH405R6v3zmiET/FedKD+iW/hyCoTzQ/APfVpU69rWKcQU21VHGrcQBY a0OJTrVCyVsSlAWaA3bnW+jfc3RYYGE37lvhhoscldefwYqNh7O/Ux/CDF10EuulPr0Px5 DQ5vQpDM1cTYRyvIq18t6YMyHlZYTY0Z+w+UNnj12zshu3SCWr5Ah9OgmsD+tw== 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 4dxFV606M7z128p for ; Wed, 21 Jan 2026 20:02:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id be5e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 20:02:37 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 6c61f58562b9 - main - ath10k: update Atheros/QCA's ath10k driver List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 6c61f58562b932eb46b2e05b2f5a82d34250435a Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 20:02:37 +0000 Message-Id: <697130dd.be5e.2b1fba1d@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=6c61f58562b932eb46b2e05b2f5a82d34250435a commit 6c61f58562b932eb46b2e05b2f5a82d34250435a Author: Bjoern A. Zeeb AuthorDate: 2026-01-20 10:55:32 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-01-21 19:57:42 +0000 ath10k: update Atheros/QCA's ath10k driver This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 24d479d26b25bce5faea3ddd9fa8f3a6c3129ea7 ( tag: v6.19-rc6 ). Sponsored by: The FreeBSD Foundation --- sys/contrib/dev/athk/ath10k/core.c | 28 ++-- sys/contrib/dev/athk/ath10k/core.h | 6 +- sys/contrib/dev/athk/ath10k/mac.c | 2 +- sys/contrib/dev/athk/ath10k/qmi.c | 2 +- sys/contrib/dev/athk/ath10k/testmode.c | 253 +++++++++++++++++++++++++++---- sys/contrib/dev/athk/ath10k/testmode_i.h | 15 ++ sys/contrib/dev/athk/ath10k/wmi.h | 19 ++- sys/modules/ath10k/Makefile | 1 + 8 files changed, 275 insertions(+), 51 deletions(-) diff --git a/sys/contrib/dev/athk/ath10k/core.c b/sys/contrib/dev/athk/ath10k/core.c index a0407f693659..9ec08b402fd2 100644 --- a/sys/contrib/dev/athk/ath10k/core.c +++ b/sys/contrib/dev/athk/ath10k/core.c @@ -3,7 +3,6 @@ * Copyright (c) 2005-2011 Atheros Communications Inc. * Copyright (c) 2011-2017 Qualcomm Atheros, Inc. * Copyright (c) 2018-2019, The Linux Foundation. All rights reserved. - * Copyright (c) 2021-2024 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. */ @@ -1212,7 +1211,7 @@ static int ath10k_download_fw(struct ath10k *ar) u32 address, data_len; const void *data; int ret; - struct pm_qos_request latency_qos; + struct pm_qos_request latency_qos = {}; address = ar->hw_params.patch_load_addr; @@ -1246,7 +1245,6 @@ static int ath10k_download_fw(struct ath10k *ar) ret); } - memset(&latency_qos, 0, sizeof(latency_qos)); cpu_latency_qos_add_request(&latency_qos, 0); ret = ath10k_bmi_fast_download(ar, address, data, data_len); @@ -2570,8 +2568,9 @@ static int ath10k_init_hw_params(struct ath10k *ar) return 0; } -static bool ath10k_core_needs_recovery(struct ath10k *ar) +static void ath10k_core_recovery_check_work(struct work_struct *work) { + struct ath10k *ar = container_of(work, struct ath10k, recovery_check_work); long time_left; /* Sometimes the recovery will fail and then the next all recovery fail, @@ -2581,7 +2580,7 @@ static bool ath10k_core_needs_recovery(struct ath10k *ar) ath10k_err(ar, "consecutive fail %d times, will shutdown driver!", atomic_read(&ar->fail_cont_count)); ar->state = ATH10K_STATE_WEDGED; - return false; + return; } ath10k_dbg(ar, ATH10K_DBG_BOOT, "total recovery count: %d", ++ar->recovery_count); @@ -2595,27 +2594,24 @@ static bool ath10k_core_needs_recovery(struct ath10k *ar) ATH10K_RECOVERY_TIMEOUT_HZ); if (time_left) { ath10k_warn(ar, "previous recovery succeeded, skip this!\n"); - return false; + return; } /* Record the continuous recovery fail count when recovery failed. */ atomic_inc(&ar->fail_cont_count); /* Avoid having multiple recoveries at the same time. */ - return false; + return; } atomic_inc(&ar->pending_recovery); - - return true; + queue_work(ar->workqueue, &ar->restart_work); } void ath10k_core_start_recovery(struct ath10k *ar) { - if (!ath10k_core_needs_recovery(ar)) - return; - - queue_work(ar->workqueue, &ar->restart_work); + /* Use workqueue_aux to avoid blocking recovery tracking */ + queue_work(ar->workqueue_aux, &ar->recovery_check_work); } EXPORT_SYMBOL(ath10k_core_start_recovery); @@ -3440,7 +3436,7 @@ EXPORT_SYMBOL(ath10k_core_stop); */ static int ath10k_core_probe_fw(struct ath10k *ar) { - struct bmi_target_info target_info; + struct bmi_target_info target_info = {}; int ret = 0; ret = ath10k_hif_power_up(ar, ATH10K_FIRMWARE_MODE_NORMAL); @@ -3451,7 +3447,6 @@ static int ath10k_core_probe_fw(struct ath10k *ar) switch (ar->hif.bus) { case ATH10K_BUS_SDIO: - memset(&target_info, 0, sizeof(target_info)); ret = ath10k_bmi_get_target_info_sdio(ar, &target_info); if (ret) { ath10k_err(ar, "could not get target info (%d)\n", ret); @@ -3463,7 +3458,6 @@ static int ath10k_core_probe_fw(struct ath10k *ar) case ATH10K_BUS_PCI: case ATH10K_BUS_AHB: case ATH10K_BUS_USB: - memset(&target_info, 0, sizeof(target_info)); ret = ath10k_bmi_get_target_info(ar, &target_info); if (ret) { ath10k_err(ar, "could not get target info (%d)\n", ret); @@ -3473,7 +3467,6 @@ static int ath10k_core_probe_fw(struct ath10k *ar) ar->hw->wiphy->hw_version = target_info.version; break; case ATH10K_BUS_SNOC: - memset(&target_info, 0, sizeof(target_info)); ret = ath10k_hif_get_target_info(ar, &target_info); if (ret) { ath10k_err(ar, "could not get target info (%d)\n", ret); @@ -3824,6 +3817,7 @@ struct ath10k *ath10k_core_create(size_t priv_size, struct device *dev, INIT_WORK(&ar->register_work, ath10k_core_register_work); INIT_WORK(&ar->restart_work, ath10k_core_restart); + INIT_WORK(&ar->recovery_check_work, ath10k_core_recovery_check_work); INIT_WORK(&ar->set_coverage_class_work, ath10k_core_set_coverage_class_work); diff --git a/sys/contrib/dev/athk/ath10k/core.h b/sys/contrib/dev/athk/ath10k/core.h index cb250ca6991d..eaf122d4b112 100644 --- a/sys/contrib/dev/athk/ath10k/core.h +++ b/sys/contrib/dev/athk/ath10k/core.h @@ -3,7 +3,6 @@ * Copyright (c) 2005-2011 Atheros Communications Inc. * Copyright (c) 2011-2017 Qualcomm Atheros, Inc. * Copyright (c) 2018-2019, The Linux Foundation. All rights reserved. - * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. */ @@ -1216,6 +1215,7 @@ struct ath10k { struct work_struct register_work; struct work_struct restart_work; + struct work_struct recovery_check_work; struct work_struct bundle_tx_work; struct work_struct tx_complete_work; @@ -1267,9 +1267,13 @@ struct ath10k { struct { /* protected by conf_mutex */ struct ath10k_fw_components utf_mode_fw; + u8 ftm_msgref; /* protected by data_lock */ bool utf_monitor; + u32 data_pos; + u32 expected_seq; + u8 *eventdata; } testmode; struct { diff --git a/sys/contrib/dev/athk/ath10k/mac.c b/sys/contrib/dev/athk/ath10k/mac.c index 6725c2c742bd..e2bda3c0d925 100644 --- a/sys/contrib/dev/athk/ath10k/mac.c +++ b/sys/contrib/dev/athk/ath10k/mac.c @@ -3,7 +3,6 @@ * Copyright (c) 2005-2011 Atheros Communications Inc. * Copyright (c) 2011-2017 Qualcomm Atheros, Inc. * Copyright (c) 2018-2019, The Linux Foundation. All rights reserved. - * Copyright (c) 2021-2024 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. */ @@ -5442,6 +5441,7 @@ static void ath10k_stop(struct ieee80211_hw *hw, bool suspend) cancel_work_sync(&ar->set_coverage_class_work); cancel_delayed_work_sync(&ar->scan.timeout); cancel_work_sync(&ar->restart_work); + cancel_work_sync(&ar->recovery_check_work); } static int ath10k_config_ps(struct ath10k *ar) diff --git a/sys/contrib/dev/athk/ath10k/qmi.c b/sys/contrib/dev/athk/ath10k/qmi.c index f1f33af0170a..8275345631a0 100644 --- a/sys/contrib/dev/athk/ath10k/qmi.c +++ b/sys/contrib/dev/athk/ath10k/qmi.c @@ -986,7 +986,7 @@ static int ath10k_qmi_new_server(struct qmi_handle *qmi_hdl, ath10k_dbg(ar, ATH10K_DBG_QMI, "wifi fw qmi service found\n"); - ret = kernel_connect(qmi_hdl->sock, (struct sockaddr *)&qmi->sq, + ret = kernel_connect(qmi_hdl->sock, (struct sockaddr_unsized *)&qmi->sq, sizeof(qmi->sq), 0); if (ret) { ath10k_err(ar, "failed to connect to a remote QMI service port\n"); diff --git a/sys/contrib/dev/athk/ath10k/testmode.c b/sys/contrib/dev/athk/ath10k/testmode.c index 3fcefc55b74f..d3bd385694d6 100644 --- a/sys/contrib/dev/athk/ath10k/testmode.c +++ b/sys/contrib/dev/athk/ath10k/testmode.c @@ -1,6 +1,7 @@ // SPDX-License-Identifier: ISC /* * Copyright (c) 2014-2017 Qualcomm Atheros, Inc. + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. */ #include "testmode.h" @@ -10,12 +11,17 @@ #include "debug.h" #include "wmi.h" +#include "wmi-tlv.h" #include "hif.h" #include "hw.h" #include "core.h" #include "testmode_i.h" +#define ATH10K_FTM_SEG_NONE ((u32)-1) +#define ATH10K_FTM_SEGHDR_CURRENT_SEQ GENMASK(3, 0) +#define ATH10K_FTM_SEGHDR_TOTAL_SEGMENTS GENMASK(7, 4) + static const struct nla_policy ath10k_tm_policy[ATH10K_TM_ATTR_MAX + 1] = { [ATH10K_TM_ATTR_CMD] = { .type = NLA_U32 }, [ATH10K_TM_ATTR_DATA] = { .type = NLA_BINARY, @@ -25,41 +31,19 @@ static const struct nla_policy ath10k_tm_policy[ATH10K_TM_ATTR_MAX + 1] = { [ATH10K_TM_ATTR_VERSION_MINOR] = { .type = NLA_U32 }, }; -/* Returns true if callee consumes the skb and the skb should be discarded. - * Returns false if skb is not used. Does not sleep. - */ -bool ath10k_tm_event_wmi(struct ath10k *ar, u32 cmd_id, struct sk_buff *skb) +static void ath10k_tm_event_unsegmented(struct ath10k *ar, u32 cmd_id, + struct sk_buff *skb) { struct sk_buff *nl_skb; - bool consumed; int ret; - ath10k_dbg(ar, ATH10K_DBG_TESTMODE, - "testmode event wmi cmd_id %d skb %p skb->len %d\n", - cmd_id, skb, skb->len); - - ath10k_dbg_dump(ar, ATH10K_DBG_TESTMODE, NULL, "", skb->data, skb->len); - - spin_lock_bh(&ar->data_lock); - - if (!ar->testmode.utf_monitor) { - consumed = false; - goto out; - } - - /* Only testmode.c should be handling events from utf firmware, - * otherwise all sort of problems will arise as mac80211 operations - * are not initialised. - */ - consumed = true; - nl_skb = cfg80211_testmode_alloc_event_skb(ar->hw->wiphy, 2 * sizeof(u32) + skb->len, GFP_ATOMIC); if (!nl_skb) { ath10k_warn(ar, "failed to allocate skb for testmode wmi event\n"); - goto out; + return; } ret = nla_put_u32(nl_skb, ATH10K_TM_ATTR_CMD, ATH10K_TM_CMD_WMI); @@ -68,7 +52,7 @@ bool ath10k_tm_event_wmi(struct ath10k *ar, u32 cmd_id, struct sk_buff *skb) "failed to put testmode wmi event cmd attribute: %d\n", ret); kfree_skb(nl_skb); - goto out; + return; } ret = nla_put_u32(nl_skb, ATH10K_TM_ATTR_WMI_CMDID, cmd_id); @@ -77,7 +61,7 @@ bool ath10k_tm_event_wmi(struct ath10k *ar, u32 cmd_id, struct sk_buff *skb) "failed to put testmode wmi event cmd_id: %d\n", ret); kfree_skb(nl_skb); - goto out; + return; } ret = nla_put(nl_skb, ATH10K_TM_ATTR_DATA, skb->len, skb->data); @@ -86,10 +70,122 @@ bool ath10k_tm_event_wmi(struct ath10k *ar, u32 cmd_id, struct sk_buff *skb) "failed to copy skb to testmode wmi event: %d\n", ret); kfree_skb(nl_skb); - goto out; + return; + } + + cfg80211_testmode_event(nl_skb, GFP_ATOMIC); +} + +static void ath10k_tm_event_segmented(struct ath10k *ar, u32 cmd_id, struct sk_buff *skb) +{ + struct wmi_ftm_cmd *ftm = (struct wmi_ftm_cmd *)skb->data; + u8 total_segments, current_seq; + struct sk_buff *nl_skb; + u8 const *buf_pos; + u16 datalen; + u32 data_pos; + int ret; + + if (skb->len < sizeof(*ftm)) { + ath10k_warn(ar, "Invalid ftm event length: %d\n", skb->len); + return; + } + + current_seq = FIELD_GET(ATH10K_FTM_SEGHDR_CURRENT_SEQ, + __le32_to_cpu(ftm->seg_hdr.segmentinfo)); + total_segments = FIELD_GET(ATH10K_FTM_SEGHDR_TOTAL_SEGMENTS, + __le32_to_cpu(ftm->seg_hdr.segmentinfo)); + datalen = skb->len - sizeof(*ftm); + buf_pos = ftm->data; + + if (current_seq == 0) { + ar->testmode.expected_seq = 0; + ar->testmode.data_pos = 0; + } + + data_pos = ar->testmode.data_pos; + + if ((data_pos + datalen) > ATH_FTM_EVENT_MAX_BUF_LENGTH) { + ath10k_warn(ar, "Invalid ftm event length at %u: %u\n", + data_pos, datalen); + ret = -EINVAL; + return; + } + + memcpy(&ar->testmode.eventdata[data_pos], buf_pos, datalen); + data_pos += datalen; + + if (++ar->testmode.expected_seq != total_segments) { + ar->testmode.data_pos = data_pos; + ath10k_dbg(ar, ATH10K_DBG_TESTMODE, "partial data received %u/%u\n", + current_seq + 1, total_segments); + return; + } + + ath10k_dbg(ar, ATH10K_DBG_TESTMODE, "total data length %u\n", data_pos); + + nl_skb = cfg80211_testmode_alloc_event_skb(ar->hw->wiphy, + 2 * sizeof(u32) + data_pos, + GFP_ATOMIC); + if (!nl_skb) { + ath10k_warn(ar, "failed to allocate skb for testmode wmi event\n"); + return; + } + + ret = nla_put_u32(nl_skb, ATH10K_TM_ATTR_CMD, ATH10K_TM_CMD_TLV); + if (ret) { + ath10k_warn(ar, "failed to put testmode wmi event attribute: %d\n", ret); + kfree_skb(nl_skb); + return; + } + + ret = nla_put_u32(nl_skb, ATH10K_TM_ATTR_WMI_CMDID, cmd_id); + if (ret) { + ath10k_warn(ar, "failed to put testmode wmi event cmd_id: %d\n", ret); + kfree_skb(nl_skb); + return; + } + + ret = nla_put(nl_skb, ATH10K_TM_ATTR_DATA, data_pos, &ar->testmode.eventdata[0]); + if (ret) { + ath10k_warn(ar, "failed to copy skb to testmode wmi event: %d\n", ret); + kfree_skb(nl_skb); + return; } cfg80211_testmode_event(nl_skb, GFP_ATOMIC); +} + +/* Returns true if callee consumes the skb and the skb should be discarded. + * Returns false if skb is not used. Does not sleep. + */ +bool ath10k_tm_event_wmi(struct ath10k *ar, u32 cmd_id, struct sk_buff *skb) +{ + bool consumed; + + ath10k_dbg(ar, ATH10K_DBG_TESTMODE, + "testmode event wmi cmd_id %d skb %p skb->len %d\n", + cmd_id, skb, skb->len); + + ath10k_dbg_dump(ar, ATH10K_DBG_TESTMODE, NULL, "", skb->data, skb->len); + + spin_lock_bh(&ar->data_lock); + + if (!ar->testmode.utf_monitor) { + consumed = false; + goto out; + } + + /* Only testmode.c should be handling events from utf firmware, + * otherwise all sort of problems will arise as mac80211 operations + * are not initialised. + */ + consumed = true; + + if (ar->testmode.expected_seq != ATH10K_FTM_SEG_NONE) + ath10k_tm_event_segmented(ar, cmd_id, skb); + else + ath10k_tm_event_unsegmented(ar, cmd_id, skb); out: spin_unlock_bh(&ar->data_lock); @@ -281,12 +377,18 @@ static int ath10k_tm_cmd_utf_start(struct ath10k *ar, struct nlattr *tb[]) goto err_release_utf_mode_fw; } + ar->testmode.eventdata = kzalloc(ATH_FTM_EVENT_MAX_BUF_LENGTH, GFP_KERNEL); + if (!ar->testmode.eventdata) { + ret = -ENOMEM; + goto err_power_down; + } + ret = ath10k_core_start(ar, ATH10K_FIRMWARE_MODE_UTF, &ar->testmode.utf_mode_fw); if (ret) { ath10k_err(ar, "failed to start core (testmode): %d\n", ret); ar->state = ATH10K_STATE_OFF; - goto err_power_down; + goto err_release_eventdata; } ar->state = ATH10K_STATE_UTF; @@ -302,6 +404,10 @@ static int ath10k_tm_cmd_utf_start(struct ath10k *ar, struct nlattr *tb[]) return 0; +err_release_eventdata: + kfree(ar->testmode.eventdata); + ar->testmode.eventdata = NULL; + err_power_down: ath10k_hif_power_down(ar); @@ -341,6 +447,9 @@ static void __ath10k_tm_cmd_utf_stop(struct ath10k *ar) release_firmware(ar->testmode.utf_mode_fw.fw_file.firmware); ar->testmode.utf_mode_fw.fw_file.firmware = NULL; + kfree(ar->testmode.eventdata); + ar->testmode.eventdata = NULL; + ar->state = ATH10K_STATE_OFF; } @@ -424,6 +533,85 @@ out: return ret; } +static int ath10k_tm_cmd_tlv(struct ath10k *ar, struct nlattr *tb[]) +{ + u16 total_bytes, num_segments; + u32 cmd_id, buf_len; + u8 segnumber = 0; + u8 *bufpos; + void *buf; + int ret; + + mutex_lock(&ar->conf_mutex); + + if (ar->state != ATH10K_STATE_UTF) { + ret = -ENETDOWN; + goto out; + } + + buf = nla_data(tb[ATH10K_TM_ATTR_DATA]); + buf_len = nla_len(tb[ATH10K_TM_ATTR_DATA]); + cmd_id = WMI_PDEV_UTF_CMDID; + + ath10k_dbg(ar, ATH10K_DBG_TESTMODE, + "cmd wmi ftm cmd_id %d buffer length %d\n", + cmd_id, buf_len); + ath10k_dbg_dump(ar, ATH10K_DBG_TESTMODE, NULL, "", buf, buf_len); + + bufpos = buf; + total_bytes = buf_len; + num_segments = total_bytes / MAX_WMI_UTF_LEN; + ar->testmode.expected_seq = 0; + + if (buf_len - (num_segments * MAX_WMI_UTF_LEN)) + num_segments++; + + while (buf_len) { + u16 chunk_len = min_t(u16, buf_len, MAX_WMI_UTF_LEN); + struct wmi_ftm_cmd *ftm_cmd; + struct sk_buff *skb; + u32 hdr_info; + u8 seginfo; + + skb = ath10k_wmi_alloc_skb(ar, (chunk_len + + sizeof(struct wmi_ftm_cmd))); + if (!skb) { + ret = -ENOMEM; + goto out; + } + + ftm_cmd = (struct wmi_ftm_cmd *)skb->data; + hdr_info = FIELD_PREP(WMI_TLV_TAG, WMI_TLV_TAG_ARRAY_BYTE) | + FIELD_PREP(WMI_TLV_LEN, (chunk_len + + sizeof(struct wmi_ftm_seg_hdr))); + ftm_cmd->tlv_header = __cpu_to_le32(hdr_info); + ftm_cmd->seg_hdr.len = __cpu_to_le32(total_bytes); + ftm_cmd->seg_hdr.msgref = __cpu_to_le32(ar->testmode.ftm_msgref); + seginfo = FIELD_PREP(ATH10K_FTM_SEGHDR_TOTAL_SEGMENTS, num_segments) | + FIELD_PREP(ATH10K_FTM_SEGHDR_CURRENT_SEQ, segnumber); + ftm_cmd->seg_hdr.segmentinfo = __cpu_to_le32(seginfo); + segnumber++; + + memcpy(&ftm_cmd->data, bufpos, chunk_len); + + ret = ath10k_wmi_cmd_send(ar, skb, cmd_id); + if (ret) { + ath10k_warn(ar, "failed to send wmi ftm command: %d\n", ret); + goto out; + } + + buf_len -= chunk_len; + bufpos += chunk_len; + } + + ar->testmode.ftm_msgref++; + ret = 0; + +out: + mutex_unlock(&ar->conf_mutex); + return ret; +} + int ath10k_tm_cmd(struct ieee80211_hw *hw, struct ieee80211_vif *vif, void *data, int len) { @@ -439,9 +627,14 @@ int ath10k_tm_cmd(struct ieee80211_hw *hw, struct ieee80211_vif *vif, if (!tb[ATH10K_TM_ATTR_CMD]) return -EINVAL; + ar->testmode.expected_seq = ATH10K_FTM_SEG_NONE; + switch (nla_get_u32(tb[ATH10K_TM_ATTR_CMD])) { case ATH10K_TM_CMD_GET_VERSION: - return ath10k_tm_cmd_get_version(ar, tb); + if (!tb[ATH10K_TM_ATTR_DATA]) + return ath10k_tm_cmd_get_version(ar, tb); + else /* ATH10K_TM_CMD_TLV */ + return ath10k_tm_cmd_tlv(ar, tb); case ATH10K_TM_CMD_UTF_START: return ath10k_tm_cmd_utf_start(ar, tb); case ATH10K_TM_CMD_UTF_STOP: diff --git a/sys/contrib/dev/athk/ath10k/testmode_i.h b/sys/contrib/dev/athk/ath10k/testmode_i.h index ee1cb27c1d60..1603f5276682 100644 --- a/sys/contrib/dev/athk/ath10k/testmode_i.h +++ b/sys/contrib/dev/athk/ath10k/testmode_i.h @@ -1,6 +1,7 @@ /* SPDX-License-Identifier: ISC */ /* * Copyright (c) 2014,2017 Qualcomm Atheros, Inc. + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. */ /* "API" level of the ath10k testmode interface. Bump it after every @@ -14,6 +15,7 @@ #define ATH10K_TESTMODE_VERSION_MINOR 0 #define ATH10K_TM_DATA_MAX_LEN 5000 +#define ATH_FTM_EVENT_MAX_BUF_LENGTH 2048 enum ath10k_tm_attr { __ATH10K_TM_ATTR_INVALID = 0, @@ -57,4 +59,17 @@ enum ath10k_tm_cmd { * ATH10K_TM_ATTR_DATA. */ ATH10K_TM_CMD_WMI = 3, + + /* The command used to transmit a test command to the firmware + * and the event to receive test events from the firmware. The data + * received only contain the TLV payload, need to add the tlv header + * and send the cmd to firmware with command id WMI_PDEV_UTF_CMDID. + * The data payload size could be large and the driver needs to + * send segmented data to firmware. + * + * This legacy testmode command shares the same value as the get-version + * command. To distinguish between them, we check whether the data attribute + * is present. + */ + ATH10K_TM_CMD_TLV = ATH10K_TM_CMD_GET_VERSION, }; diff --git a/sys/contrib/dev/athk/ath10k/wmi.h b/sys/contrib/dev/athk/ath10k/wmi.h index 0faefc0a9a40..7f50a1de6b97 100644 --- a/sys/contrib/dev/athk/ath10k/wmi.h +++ b/sys/contrib/dev/athk/ath10k/wmi.h @@ -3,7 +3,7 @@ * Copyright (c) 2005-2011 Atheros Communications Inc. * Copyright (c) 2011-2017 Qualcomm Atheros, Inc. * Copyright (c) 2018-2019, The Linux Foundation. All rights reserved. - * Copyright (c) 2021-2024 Qualcomm Innovation Center, Inc. All rights reserved. + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. */ #ifndef _WMI_H_ @@ -7418,6 +7418,23 @@ struct wmi_pdev_bb_timing_cfg_cmd { __le32 bb_xpa_timing; } __packed; +struct wmi_ftm_seg_hdr { + __le32 len; + __le32 msgref; + __le32 segmentinfo; + __le32 pdev_id; +} __packed; + +struct wmi_ftm_cmd { + __le32 tlv_header; + struct wmi_ftm_seg_hdr seg_hdr; + u8 data[]; +} __packed; + +#define WMI_TLV_LEN GENMASK(15, 0) +#define WMI_TLV_TAG GENMASK(31, 16) +#define MAX_WMI_UTF_LEN 252 + struct ath10k; struct ath10k_vif; struct ath10k_fw_stats_pdev; diff --git a/sys/modules/ath10k/Makefile b/sys/modules/ath10k/Makefile index 98df270b6791..d8196854b681 100644 --- a/sys/modules/ath10k/Makefile +++ b/sys/modules/ath10k/Makefile @@ -29,6 +29,7 @@ SRCS+= leds.c .endif CFLAGS+= -DKBUILD_MODNAME='"ath10k"' +CFLAGS+= -DLINUXKPI_VERSION=61900 CFLAGS+= -I${DEVATH10KDIR} CFLAGS+= -I${DEVATH10KDIR}/.. From nobody Wed Jan 21 23:35:54 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxLDC2rx0z6PtTC for ; Wed, 21 Jan 2026 23:35: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxLDC065Hz3mX6 for ; Wed, 21 Jan 2026 23:35:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769038555; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/xXdqrRuEJJqziANRt6kFqlCVP7tcMKzhJEwLimi0W8=; b=q9V0abrr+VlqHQ1d1+gQ917n2A10DM4PyPcuCbxMQpd8L1mDC2+RzLGH/qOsWVIoyDterk EZIiYYN3wK5WD+7g/OZqx+rpfT0D7IuIeDnJqPn/cOsjMY4b/fxuYa5B7kQ+T15rYB1Rzn F292+G5H2oCAO5tsf1xbmyOcOU0NqoQ7SaseesmuL1DuiXCSCvYmRNIhIfwSjOQCK7TO5R c561FElXpjf1nq1BZ/wOY5xVbHvUrHHs1LNenI/o0+9VwmTsdVJyzTjzhDEsFCzYsp2x5Y TPq/McMRlGOqlO4Y3hCYGlM9O53X9pa12WT5ECCGMQ37Vz8E2GcQVzoFYIU73w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769038555; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/xXdqrRuEJJqziANRt6kFqlCVP7tcMKzhJEwLimi0W8=; b=wsrflafCFBp7yGBuoui3yXI5jdqEKzL1bRUGu9VwRM0RhvH81tWnCuW1TXup3zpMhLb8Ll fPLiSeI6qjftmeQ/1HuNkWFsGob5/izAZZS027WeNLXzSvVZSfwIDEuF6/b5+Ob2FuY3Z/ eG6WonKCTSCtC4watuMMXj7U+YkilFdskcoC7G9SsEHi6TckVKeJDJPnSew483rzrYpGfE T9pUpD99YJeyQQ3BVkuv8e89ZarrXFCjqyRNUwzO8ZQUOZszmZCDDfG5KEGVVLpBWpYwL2 Ej+/eRM4pt9nwp5Ok7FNE6DQqEJ9gbmTmSQKUGq8AkBD354OXwrPWPnPYdRiXw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769038555; a=rsa-sha256; cv=none; b=dh6fv7+cEwjnN1bLehBpl2LQIh3xy9co6IsD1PR32VZ1GZL0kF2SFdz4wP0C/Ft5whb1Um 5Ud9oExBjzEIncE5yGs5qigVrgO5TqaAU93C1FIpKG+YSMbq3MaFwnut6rKT/swS4cd4n3 udnLtolDIQdFXy4Vri2VurWXgpGfybPgh+vylkhuwJUF4iyu40uZfXhVA6Qx3syyLln+40 WSI+uxBbOfbCraDR1OSarQYye+j+rB3hpCsKDNq+Qv9GYFUKFzyQhVbl+qKIrM6K0GA/g3 TQ3ORfiF0yibETmgsfot48pX6N5c55Ibot6b5am/rGqQAdkiL54VeX6Hdvqyng== 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 4dxLDB6GnWz17dn for ; Wed, 21 Jan 2026 23:35:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3a73d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 21 Jan 2026 23:35:54 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kyle Evans Subject: git: eacc501eff52 - main - truncate: fix a minor nit + add a hole-punching test List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kevans X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: eacc501eff52db16b7b784c89a3a4a03c9a3ef34 Auto-Submitted: auto-generated Date: Wed, 21 Jan 2026 23:35:54 +0000 Message-Id: <697162da.3a73d.48c66da4@gitrepo.freebsd.org> The branch main has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=eacc501eff52db16b7b784c89a3a4a03c9a3ef34 commit eacc501eff52db16b7b784c89a3a4a03c9a3ef34 Author: Kyle Evans AuthorDate: 2026-01-21 23:34:27 +0000 Commit: Kyle Evans CommitDate: 2026-01-21 23:35:25 +0000 truncate: fix a minor nit + add a hole-punching test The struct spacectl_range we use is only really used in these three lines of code, so re-scope it down to just the dealloc branch. This is marginally easier to reason about what might be necessary to replace in porting our truncate(1) to other platforms. While we're here, add a test for the -d flag to be sure it really does punch a hole in the file. The test also tries to confirm that it does not disturb other segments of the file in the process, just to inspire some confidence that it's not corrupting the file somehow. Sponsored by: Klara, Inc. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D51207 --- usr.bin/truncate/tests/truncate_test.sh | 48 +++++++++++++++++++++++++++++++++ usr.bin/truncate/truncate.c | 3 ++- 2 files changed, 50 insertions(+), 1 deletion(-) diff --git a/usr.bin/truncate/tests/truncate_test.sh b/usr.bin/truncate/tests/truncate_test.sh index ec219059de42..845b3e1b4d84 100644 --- a/usr.bin/truncate/tests/truncate_test.sh +++ b/usr.bin/truncate/tests/truncate_test.sh @@ -438,6 +438,53 @@ rounddown_zero_body() [ ${st_size} -eq 0 ] || atf_fail "new file should now be 0 bytes" } +atf_test_case deallocate +deallocate_head() +{ + atf_set "descr" "Verifies that -d punches a hole in the file" + atf_set "require.user" "root" +} +deallocate_body() +{ + blocksz=$(stat -h . | cut -f1 -d' ') + atf_check test -n "$blocksz" + + # We use /dev/random here to defeat ZFS compression, which would + # collapse ranges of zeroes into holes without us deallocating it. This + # isn't a concern below because those are specificially for creating our + # reference files -- we expect the deallocate operation to result in + # ranges of zeroes, whether they end up creating a hole or not. + filesz=$((blocksz * 3)) + atf_check -e not-empty dd if=/dev/random of=sparse \ + bs=${filesz} count=1 conv=notrunc + + atf_check cp sparse sparse.orig + atf_check cp sparse sparse.orig.orig + + # Punch a hole in the middle, ensure that bit is zeroed out. + atf_check -e not-empty dd if=/dev/zero of=sparse.orig \ + bs=${blocksz} oseek=1 count=1 conv=notrunc + atf_check truncate -d -o ${blocksz} -l ${blocksz} sparse + atf_check cmp -s sparse sparse.orig + + # Clobber the end part of the original file and punch a hole in + # the same spot on the new file, ensure that it has zeroed out that + # portion. + atf_check -e not-empty dd if=/dev/zero of=sparse.orig \ + bs=${blocksz} oseek=2 count=1 conv=notrunc + atf_check truncate -d -o $((blocksz * 2)) -l ${blocksz} sparse + atf_check cmp -s sparse sparse.orig + + # Now bring the original file back and make sure that punching a hole + # in data at the beginning doesn't disturb the data at the end. + atf_check cp sparse.orig.orig sparse.orig + atf_check cp sparse.orig.orig sparse + atf_check -e not-empty dd if=/dev/zero of=sparse.orig \ + bs=${blocksz} oseek=0 count=1 conv=notrunc + atf_check truncate -d -l ${blocksz} sparse + atf_check cmp -s sparse sparse.orig +} + atf_init_test_cases() { atf_add_test_case illegal_option @@ -459,4 +506,5 @@ atf_init_test_cases() atf_add_test_case roundup atf_add_test_case rounddown atf_add_test_case rounddown_zero + atf_add_test_case deallocate } diff --git a/usr.bin/truncate/truncate.c b/usr.bin/truncate/truncate.c index d8484257294a..15be339df0e3 100644 --- a/usr.bin/truncate/truncate.c +++ b/usr.bin/truncate/truncate.c @@ -62,7 +62,6 @@ main(int argc, char **argv) int do_refer; int got_size; char *fname, *rname; - struct spacectl_range sr; fd = -1; rsize = tsize = sz = off = 0; @@ -198,6 +197,8 @@ main(int argc, char **argv) tsize = 0; if (do_dealloc == 1) { + struct spacectl_range sr; + sr.r_offset = off; sr.r_len = len; r = fspacectl(fd, SPACECTL_DEALLOC, &sr, 0, &sr); From nobody Thu Jan 22 04:44:08 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxT3x4643z6PGpJ for ; Thu, 22 Jan 2026 04: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxT3r3GqLz4P9w for ; Thu, 22 Jan 2026 04: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=1769057048; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BB1CcWaaZ8FvnrAbiTMto+UjmfpMhctd3ijJqkMKWnI=; b=G14qqewxQyCfnbKYPHRH+WNg32EmaNaIegdbADAXFxw1PRlLh75cIdI4RZVV4RwqmJwm1e e9sfXg2DC2duQ9K2q+IO2iiS2L3pKa5sLQrmcy/+99DJ5wZMsX7K7AWr79x4HziqBWCVoY bMsrGhJVBo4ifKRGGc1EtXnvtJvpprwPyrtmBzWHwCT2Zf8mnkKUHOMHNc9En/eP/KSs7d /taQVMk/bnyhJ/piKIIZA9s9d/077qAHNpyt+Zzfor+/DqmvjTISe/HhDXGrqOIGPrzR4B wMVqOWD6y8jC0qbG5Jo6ZQDMZsQ+s46dR4HSN9W+EKDFxO7/xc9lNK39ByFwIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769057048; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BB1CcWaaZ8FvnrAbiTMto+UjmfpMhctd3ijJqkMKWnI=; b=IdGA6Bf3jX/usaqmkQhpvuaDAghOBvH0xB2EARcECM4FWICHZnavrodh/N4GlVr81QcKSv MJ3tyBfU5TA07RiIbUyWaRnVoPY674pmsqwjx6M6/kzIUmYDBUOFz4RYcRuPV8GI1kEEJ9 6DU6hleebDTCdQPbds1J0/uoE/TT/uSs9hkeibDNPguJZnS30qKz2lZ+2DZho6S4OtzAL6 bJdw+hjdKQ4dZaPikstk8B9tLzGohE7h3sIgrM1J7TyPboMjBSq0ORvGkjBjtb6q174oco 6kg5BtjjHyTu/1t5C4k74fwpvmGCtSluFAnW+FddXgxHDooQxnD1EPmECH8Pbw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769057048; a=rsa-sha256; cv=none; b=Y0wEH32dR6PIV+4ZRxTLueXNzau9s3nWQVnc5x1FS/Tch6Z3eUFPi3viQw7OTw6lJk4qL2 TElAg4rPmppvoD+rcRLm7lgyiv7ALHoBIwy5yttyCfl1OLjNjPtwgXO3FipizhPYLiengT bMdueSLYI1IBC88u6xHxLyE7Shf4N5cg7+NXqsefgg42ZmvKT52kq9u6K0wfBfJ4tKRU/S 2rQ2B6U9cdCZsNMjQeswHfUdrzh77JleihzgI1D0843NxI+d0k5jVCRqE/nRuNm14n9alK uGEzQPKmse52gv6j0W2+ACELP21wb04R0FuZ+rl0P16LVLutK5K5H+r8Ss55Zw== 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 4dxT3r2jn7z3FQ for ; Thu, 22 Jan 2026 04:44:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 38afd by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 22 Jan 2026 04:44:08 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Cy Schubert Subject: git: ad9932995cf8 - main - hwpstate: Add CPPC enable tunable List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: ad9932995cf8f93143ff033712016d95b5cb7a50 Auto-Submitted: auto-generated Date: Thu, 22 Jan 2026 04:44:08 +0000 Message-Id: <6971ab18.38afd.283ab0b9@gitrepo.freebsd.org> The branch main has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=ad9932995cf8f93143ff033712016d95b5cb7a50 commit ad9932995cf8f93143ff033712016d95b5cb7a50 Author: Cy Schubert AuthorDate: 2026-01-05 04:53:51 +0000 Commit: Cy Schubert CommitDate: 2026-01-22 04:36:33 +0000 hwpstate: Add CPPC enable tunable The Framework 13 runs very hot the maximum frequency is possible. By disabling CPPC (reverting to Cool`n'Quiet 2.0) we can use powerd to limit the CPU frequency to 2200, thereby reducing the CPU temperature. Some systems may run slower with CPPC enabled. See PR/292615 for that bug. Those experiencing either of these issues may add the following to their loader.conf or device.hints to disable CPPC: machdep.hwpstate_amd_cppc_enable="0" PR: 292615 Reviewed by: lwhsu, olce Differential revision: https://reviews.freebsd.org/D54803 --- sys/x86/cpufreq/hwpstate_amd.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/sys/x86/cpufreq/hwpstate_amd.c b/sys/x86/cpufreq/hwpstate_amd.c index 5676d8ce7dae..34838753e221 100644 --- a/sys/x86/cpufreq/hwpstate_amd.c +++ b/sys/x86/cpufreq/hwpstate_amd.c @@ -179,6 +179,11 @@ SYSCTL_BOOL(_machdep, OID_AUTO, hwpstate_pkg_ctrl, CTLFLAG_RDTUN, &hwpstate_pkg_ctrl_enable, 0, "Set 1 (default) to enable package-level control, 0 to disable"); +static bool hwpstate_amd_cppc_enable = true; +SYSCTL_BOOL(_machdep, OID_AUTO, hwpstate_amd_cppc_enable, CTLFLAG_RDTUN, + &hwpstate_amd_cppc_enable, 0, + "Set 1 (default) to enable AMD CPPC, 0 to disable"); + static device_method_t hwpstate_methods[] = { /* Device interface */ DEVMETHOD(device_identify, hwpstate_identify), @@ -667,7 +672,8 @@ hwpstate_probe(device_t dev) sc = device_get_softc(dev); - if (amd_extended_feature_extensions & AMDFEID_CPPC) { + if (hwpstate_amd_cppc_enable && + (amd_extended_feature_extensions & AMDFEID_CPPC)) { sc->flags |= PSTATE_CPPC; device_set_desc(dev, "AMD Collaborative Processor Performance Control (CPPC)"); From nobody Thu Jan 22 08:42:34 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxZLy4VStz6PXRw for ; Thu, 22 Jan 2026 08:42: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxZLy3rd7z3Vnt for ; Thu, 22 Jan 2026 08:42:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769071354; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dZ2FxNPveIrd7XBNweWzECnMNFn4AM1duPZz6Ac9aFg=; b=aq7zK59SEl2Q+YMLYQA92sJdNgeaPl2Ew8VzKtOmj2u8BZLmkDDQT739hZNwdYKBttFUrS Qge+Cnc3JBcdopo/vMrBZdZUd3OZkC1hZXCJSyj84lb6SEba+SpO4WxeAufYgNdnqSd0RA fBlMvo+D1X41ANMshv8ZacP4Y0MNwD3eDKdAVdvKsnESeIRMGKk/pBpKBYEZJsvPqI4DPZ e93Gp9NJHV3RoIAVM0aEf2vRlh8IsI/IFR3xhrz7CYo64gU1Ee5hc06RisEWrvlNa3Pq5g rlN3n3v7hwQAia1X5IClmTqxMM4aPaxil79Emr+GsW4j9eijEA4r5apBocigtg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769071354; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dZ2FxNPveIrd7XBNweWzECnMNFn4AM1duPZz6Ac9aFg=; b=c3IXHUfStI1tLKd0CcXloJXeFwqI0Ej7as6PXNPxEZDC73pLkR9Ho0gSBK+Jv5S2RcQi0M 1ZUY3ozIJbH2EDUcWE7I/BiFkbh9Qa8rsJTU3c+TJa+mFnWk/fs2NsIjk+D2UpItaeOAlx vzNDapDqfKMfLfQLUHkBbeJQGNPduD0+9Z4ig+gIhBTehh+0RpT/pTq3PmLdhcOq0MOk8E IH1GuftltaZYLwG/ciQwjNbs9k2RoZPxgJRP/1/cvVKC+xjNpnNz0pD2KXanzxbNAzy0bF Jj8s7Fxhhx+RrnoSCSlZcVWMQIguJFQ0YSMY2wk2ykqjxbVZypSi64keBP7ACw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769071354; a=rsa-sha256; cv=none; b=WLjLYWsbvrUXJcTS9jkdZaGMtQl96+iag73fdTfnxoq53hWuZ13ORTsmNtI1pkJ+dAMhz8 0UKbvInX6a0BqVvdc0i1Rs/0Jrqm92RkMDIzFGQ5SeqIN/YybZqxRJPJCnp86iCK2lBPqs biPb040LhfedP8Dpu4LGosFMMEnswK8lVf80zOJw5MnUporiLRpy8F7yVjWRzIi3o4FmQR BWqGRHYxiPMFv0zfZeENb/uM/GvMcu5LF4HaytZanpMNTfdUZBr7H021aRSFB8CmwwWVov MlBcUoe2e9Kj3PQaL9REXaAEVkqLpIC4IHi4AC0WeY9e18EZCMqrAoSNcNgkCQ== 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 4dxZLy3BXVz9yh for ; Thu, 22 Jan 2026 08:42:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id d8f3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 22 Jan 2026 08:42:34 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Eugene Grosbein Subject: git: 8f8a7f6fffd7 - main - libfetch: apply timeout to SSL_read() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: eugen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8f8a7f6fffd7dca09013f7c4bfa075bc3825fb8e Auto-Submitted: auto-generated Date: Thu, 22 Jan 2026 08:42:34 +0000 Message-Id: <6971e2fa.d8f3.445991e5@gitrepo.freebsd.org> The branch main has been updated by eugen: URL: https://cgit.FreeBSD.org/src/commit/?id=8f8a7f6fffd7dca09013f7c4bfa075bc3825fb8e commit 8f8a7f6fffd7dca09013f7c4bfa075bc3825fb8e Author: Eugene Grosbein AuthorDate: 2026-01-22 08:40:35 +0000 Commit: Eugene Grosbein CommitDate: 2026-01-22 08:40:35 +0000 libfetch: apply timeout to SSL_read() Currently, fetchTimeout works for non-SSL connections only, so does fetch -T. Fix it applying specified timeout to SSL_read(). MFC after: 3 days --- lib/libfetch/common.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/lib/libfetch/common.c b/lib/libfetch/common.c index 2e1364edff04..a9935ef176da 100644 --- a/lib/libfetch/common.c +++ b/lib/libfetch/common.c @@ -1265,6 +1265,14 @@ fetch_ssl_read(SSL *ssl, char *buf, size_t len) { ssize_t rlen; int ssl_err; + struct timeval tv; + + if (fetchTimeout > 0) { + tv.tv_sec = fetchTimeout; + tv.tv_usec = 0; + setsockopt(SSL_get_fd(ssl), SOL_SOCKET, SO_RCVTIMEO, + &tv, sizeof(tv)); + } rlen = SSL_read(ssl, buf, len); if (rlen < 0) { From nobody Thu Jan 22 14:39:55 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxkHH3GTtz6PtkW for ; Thu, 22 Jan 2026 14:39: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxkHH26RSz3GMD for ; Thu, 22 Jan 2026 14:39:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769092795; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ykBcNVUYPoNPvom8xs4SRP/XrGcux0ZWIbUQzKBKckU=; b=S0DSOPnbmbtjWjIHVOgJAQzqTE8hwvNBLkQRg/TWBBSppgKVd7qzGNTehVfP3adxymHb/I xROUEUdLy9rerAtUrUWmCBu2iMJ8F5Z/cePiop0ObVvQ5Pb3eJafii8tS7A66o40cJrZGa Wnl7ud4c/cwjbsOP25RBLJtOdtJFwcj9yxsV7ZgZpYEKzIH4EmYLa1OvYRjdgG6EvOZDav iePNs3XEE+3MpU6ci8vaewD32W7c6LF/4Y6vg1piWq1K1X3EzLqOcsHZhME9eOb+To8/QQ Z+on1NTNlsaYU9nEVTf/6yPAj1GwvprBeizTRVwxyORSoRw5Aym3/rHduiedDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769092795; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ykBcNVUYPoNPvom8xs4SRP/XrGcux0ZWIbUQzKBKckU=; b=qR2gGZq2oZhc/XUH0YlCzbE3N8v9yPF9E+u0ZutPnZR+DbdpPJLt8/ePoXsY6sbQc0p8Y9 affWmTBNiZuURpN7V3XjaUBDJU9sJl1baRA7BxQyno3J8pZGPO/Q5S7yPO+UgJ/EXtHcvA y9Q7fr8oiCX7h9xXt/618keLTicc0f8KrgCMKslAk1gSJBDQkRhOkD4IHHOyIO771JrB9A w/DIhPB3RY/tTjUDNzJqZ+fcwC6L/SYiiCbrbAhPxVS5IjOk37UlhGTW+jlryPNnerKD6A +zPBSuw2THyWDf+4FKpzGdrZwW7w0KHk0j6a5AZUH63vQFKhsyMyA3HHMBL5ag== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769092795; a=rsa-sha256; cv=none; b=gDzKJB4wJb8dIYyCU9kr4mFyp6UyYdkPaj9f6rOegG/c3KvPIgQJSfOTgJTMZIxyfE9P48 pIBHUq0FwWdJzH4luMZEh9y1A3jVI63GScj244bW3sB+4PkBxNz6ugWRSGRw5l5x+yjau7 wdB5gjKbC+SxoYU1ljHEXrPsWcU5ZKfU1YRABtvAyrJaYMf3hPEsLkh4vRPjIQi5Zx5nY2 xxVxrluqiKv1Nmyewydc0LqaK6f7egkSeEGZ7pAI153xl7+Tz5Bp6kBwGO7zCYx2UHf2+z NwIchnmR9V4R1BpKdcWdYVVQZNCUvobVkiX7zPv3+kydyv6PH/DyudTFJzKC3g== 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 4dxkHH1RWnzdVp for ; Thu, 22 Jan 2026 14:39:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2249b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 22 Jan 2026 14:39:55 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Eugene Grosbein Subject: git: 129aec722502 - main - libfetch: allow disabling TLS v1.3 when the connection List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: eugen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 129aec72250266e60c07ff4643623188f7c27a9d Auto-Submitted: auto-generated Date: Thu, 22 Jan 2026 14:39:55 +0000 Message-Id: <697236bb.2249b.2e32478a@gitrepo.freebsd.org> The branch main has been updated by eugen: URL: https://cgit.FreeBSD.org/src/commit/?id=129aec72250266e60c07ff4643623188f7c27a9d commit 129aec72250266e60c07ff4643623188f7c27a9d Author: Eugene Grosbein AuthorDate: 2026-01-22 14:37:54 +0000 Commit: Eugene Grosbein CommitDate: 2026-01-22 14:37:54 +0000 libfetch: allow disabling TLS v1.3 when the connection MFC after: 3 days --- lib/libfetch/common.c | 2 ++ lib/libfetch/fetch.3 | 12 ++++++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/lib/libfetch/common.c b/lib/libfetch/common.c index a9935ef176da..9b36a9e61a75 100644 --- a/lib/libfetch/common.c +++ b/lib/libfetch/common.c @@ -1048,6 +1048,8 @@ fetch_ssl_setup_transport_layer(SSL_CTX *ctx, int verbose) ssl_ctx_options |= SSL_OP_NO_TLSv1_1; if (getenv("SSL_NO_TLS1_2") != NULL) ssl_ctx_options |= SSL_OP_NO_TLSv1_2; + if (getenv("SSL_NO_TLS1_3") != NULL) + ssl_ctx_options |= SSL_OP_NO_TLSv1_3; if (verbose) fetch_info("SSL options: %lx", ssl_ctx_options); SSL_CTX_set_options(ctx, ssl_ctx_options); diff --git a/lib/libfetch/fetch.3 b/lib/libfetch/fetch.3 index 5f7489799cf6..20a22a263b5b 100644 --- a/lib/libfetch/fetch.3 +++ b/lib/libfetch/fetch.3 @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 7, 2023 +.Dd January 22, 2026 .Dt FETCH 3 .Os .Sh NAME @@ -450,9 +450,11 @@ allows TLSv1 and newer when negotiating the connecting with the remote peer. You can change this behavior by setting the .Ev SSL_NO_TLS1 , -.Ev SSL_NO_TLS1_1 and -.Ev SSL_NO_TLS1_2 -environment variables to disable TLS 1.0, 1.1 and 1.2 respectively. +.Ev SSL_NO_TLS1_1 , +.Ev SSL_NO_TLS1_2 and +.Ev SSL_NO_TLS1_3 +environment variables to disable TLS 1.0, 1.1, 1.2 and 1.3 +respectively. .Sh AUTHENTICATION Apart from setting the appropriate environment variables and specifying the user name and password in the URL or the @@ -676,6 +678,8 @@ Do not allow TLS version 1.0 when negotiating the connection. Do not allow TLS version 1.1 when negotiating the connection. .It Ev SSL_NO_TLS1_2 Do not allow TLS version 1.2 when negotiating the connection. +.It Ev SSL_NO_TLS1_3 +Do not allow TLS version 1.3 when negotiating the connection. .It Ev SSL_NO_VERIFY_HOSTNAME If set, do not verify that the hostname matches the subject of the certificate presented by the server. From nobody Thu Jan 22 15:36:59 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxlY81J6vz6PyBj for ; Thu, 22 Jan 2026 15:37: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxlY75w1pz3R8W for ; Thu, 22 Jan 2026 15:36:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769096219; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PKZNkwskfnjm5Xps8oJ0ELKiPQAvoQAOfk7AFjCsefY=; b=k+V6fF/Zl/5lylJ70Ka4Z3XhkpO97zzBDHcj+28pz9QczeOhYxFfgLnzH1+li8e7uVDs9S LsdV5VkYDygL4CnYpwAbOmEdUAh5/0OoSE+2RmZQoCQBkCgzLaZRkwFdA9CUu5JH8yRzjy LnD08GhUuv+J5kGQ48LLhwlZOO3InfXx7dStWTFw6t0J1pETruSm4cGVcBo8yMIDvPykfI dh42q4G1tCqtpVzvM/rRSqiqYZKCZg0MyX7eMoneFmtE6ASj66yDKGq2VOvyk0WGAYarMH JuoIGFpxHnQ6PHdBmLvkHm7M3UGnyrZLtWKHeHFul5st/DNRm1EH41Z0Sl3qeA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769096219; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PKZNkwskfnjm5Xps8oJ0ELKiPQAvoQAOfk7AFjCsefY=; b=EcMuFKmEm8o7iUh7nPemxLLnswpsr4wrKcXhT2KJfLfH7dfLg0KV1L4j4+uakDQAu0lduK Fo2SkjDMmWhmQG2FWKsiOBmIgsHCQxD39AQIWKKcMfEAgi8CeICwJVctqWbkv3N0cjiqnk /FD3udxRzIlOILhJj6iy2M62z+05VvVjro02Fs5k0w3at+uwLHGeff2tieWTaZJRhVwdo9 AOvwQqA0A2QvnvOp9GM7yPhnlKpe/+KlNACQ8qzUoRz63oj4lDEvw9XnwMzfnEe8kMVOGz +w+Rc8I2Ji9jXNLR54qG3K0FOgZVpXAnHLHIDPJqN85Rk+R6hhlvF7Ud/T06Gg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769096219; a=rsa-sha256; cv=none; b=eZPCK91ZlTECTUmwp8nt0+AekWzhvuH4YGvltU0abGU2IJRKHoMP2mnHCLFnR2wFxnOT79 md+cwUEzT76C1oqFbfqSGcAfDMCH0WcaR8opnKBSOMsediQIS/HYCHn1pcqmAequ36l1zP ZLOckOPbIbrIA0ChMJb/pm25+88BvUV64/vBkT62wGtUtiirQS7YjTjYJrDYHQ2lA87T6x VNEvvc46MfcamnU54fM2NGDYAEfsx97ISzzYPwCz7ctWMNj/uMuXWrRaaJWWIushqqt8Aq wiFw96rtZ9M7CJrClZ6ijf2qvlFHRJ5dAqR75mcgkzaOI18u5iC5WYSoyuosdg== 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 4dxlY75FP7zg4k for ; Thu, 22 Jan 2026 15:36:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2587f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 22 Jan 2026 15:36:59 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: dec3ea45b654 - main - libiconv: Fix typo in comment List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: dec3ea45b65442b4f3cafcd8a672f1e13b69a066 Auto-Submitted: auto-generated Date: Thu, 22 Jan 2026 15:36:59 +0000 Message-Id: <6972441b.2587f.733fe14f@gitrepo.freebsd.org> The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=dec3ea45b65442b4f3cafcd8a672f1e13b69a066 commit dec3ea45b65442b4f3cafcd8a672f1e13b69a066 Author: Ed Maste AuthorDate: 2026-01-13 14:31:29 +0000 Commit: Ed Maste CommitDate: 2026-01-22 15:36:37 +0000 libiconv: Fix typo in comment --- lib/libiconv_modules/mapper_std/citrus_mapper_std.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libiconv_modules/mapper_std/citrus_mapper_std.c b/lib/libiconv_modules/mapper_std/citrus_mapper_std.c index 5db142fcd36a..4284995e169b 100644 --- a/lib/libiconv_modules/mapper_std/citrus_mapper_std.c +++ b/lib/libiconv_modules/mapper_std/citrus_mapper_std.c @@ -307,7 +307,7 @@ rowcol_init(struct _citrus_mapper_std *ms) rc->rc_dst_ilseq = be32toh(eix->eix_dst_ilseq); } - /* calcurate expected table size */ + /* calculate expected table size */ i = rc->rc_src_rowcol_len; lz = &rc->rc_src_rowcol[--i]; table_size = lz->width; From nobody Thu Jan 22 17:17:54 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxnnb1b2rz6Q4DM for ; Thu, 22 Jan 2026 17:17: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxnnb0Z7cz3dqb for ; Thu, 22 Jan 2026 17:17:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769102275; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9Q8ggcrhTIb4BcPYUfJeM9zsz06Q1sxubEhpCSICss4=; b=hzlSqYyZkd3Kv+jUm6KyWvnN7qm9B6l10nNVoGkSGc0SdCCvZ2qVPkjvMBjUjfmdZ72OJq FDyFFSbbgn9vWiggN1hWUDjfr34K4ObUush6wjYP/GvAT0ED/2zJQa3w9merhO9t9L6OlU ymq4mWLUFCbEJ96/ZmXTs4P1WbZSYNaEau3pEOHy6swJ7tgDm5XNZtkMifDmNGzcSS/8/5 hkfyvC0jVZG+NLbXGkeSJfqoaO02ny+aR+2dNquXkukZ8XnU9o8mbqOR0EHQMWPkVZZ+oa Bf4Yt8bhDJyBBq/DKafG2zQMXmr6juuYfznz4JJuDodZRDxD3YsZK0awIjGheA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769102275; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9Q8ggcrhTIb4BcPYUfJeM9zsz06Q1sxubEhpCSICss4=; b=HRxv82qaNADFBcrYn5PCSWS6zNaxZbO8cWrfB4Lbaa8dvvv8tEKDRMPdglvNvonW/uipOQ EStahCSetY0EfggXiHw10i0z4ssEruL03kmwsxYGCGsPlMCZIp2Tbu6hShAIvmGLgQRf1f DFAIsvTBDmg1WoqhAgbpAa+YRn30J1jzv3DpvIvcdObEfh4AGPktFA8F/drrSWNr+GLGJU L1xxoKtUSzcn2sI/G43LhvDh8LV3FaHK0mUltAbmj69fV5wnYQByd5t5dWxpQUO5lRrzRc 6uH4HhGCsrrFlGw80mBUI0MxX0P64YTyFi2hc3GIhAyQbRPld493cJGVXP5mow== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769102275; a=rsa-sha256; cv=none; b=cIstQmeP3tuR9c57BE1l9qwArAWtqUii608j0t9dLRCljo+88L4x+iGA4wJ8TrMOeB//hv Ll3/oK1vsSBso5HB74GI5n9OcxeAlCbBQk14CRH57b+TvV5zkdS6becKQszj3pst0WL9Wf iBoGN6e800Dib+K+kiFsIKhHOglfhOjrii/O1Ui/vF8C+w8xa8fHrKjNi4mSKlljHauQ0h 8oWtsAkWTfTVP/Uak1GVNX9S7zqzniJ6u1kf+k5wnwTle2Kv18mmmbhccGp+01Xe0suKBg 1K534UMtz9nqslF4WjI1XDwSu65HwzFqECfMiTUHMopo3JA4wPr9wfS6wvcXlQ== 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 4dxnnZ6d1wzj8x for ; Thu, 22 Jan 2026 17:17:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 373f3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 22 Jan 2026 17:17:54 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: ffdbc1bc2170 - main - syslogd/tests: Use a helper function to log from within a jail List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: ffdbc1bc2170226547fcad036f01f379625886dd Auto-Submitted: auto-generated Date: Thu, 22 Jan 2026 17:17:54 +0000 Message-Id: <69725bc2.373f3.631c259e@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=ffdbc1bc2170226547fcad036f01f379625886dd commit ffdbc1bc2170226547fcad036f01f379625886dd Author: Mark Johnston AuthorDate: 2026-01-22 15:50:14 +0000 Commit: Mark Johnston CommitDate: 2026-01-22 15:50:14 +0000 syslogd/tests: Use a helper function to log from within a jail This is just for consistency with all other logger(1) invocations, which happen from the syslogd_log() function. No functional change intended. Reviewed by: jlduran MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D54778 --- usr.sbin/syslogd/tests/syslogd_test.sh | 60 ++++++++++++++------------- usr.sbin/syslogd/tests/syslogd_test_common.sh | 7 ++++ 2 files changed, 38 insertions(+), 29 deletions(-) diff --git a/usr.sbin/syslogd/tests/syslogd_test.sh b/usr.sbin/syslogd/tests/syslogd_test.sh index 5422e78f6831..fbe390d93aae 100644 --- a/usr.sbin/syslogd/tests/syslogd_test.sh +++ b/usr.sbin/syslogd/tests/syslogd_test.sh @@ -419,15 +419,16 @@ allowed_peer_body() syslogd_start -j syslogd_allowed_peer -b 169.254.0.1:514 -a '169.254.0.2/32' # Make sure that a message from 169.254.0.2:514 is logged. - atf_check jexec syslogd_client \ - logger -p user.debug -t test1 -h 169.254.0.1 -S 169.254.0.2:514 "hello, world" + syslogd_log_jail syslogd_client \ + -p user.debug -t test1 -h 169.254.0.1 -S 169.254.0.2:514 "hello, world" atf_check -o match:"test1: hello, world" cat "${logfile}" + # ... but not a message from port 515. - atf_check -o ignore jexec syslogd_client \ - logger -p user.debug -t test2 -h 169.254.0.1 -S 169.254.0.2:515 "hello, world" + syslogd_log_jail syslogd_client \ + -p user.debug -t test2 -h 169.254.0.1 -S 169.254.0.2:515 "hello, world" atf_check -o not-match:"test2: hello, world" cat "${logfile}" - atf_check -o ignore jexec syslogd_client \ - logger -p user.debug -t test2 -h 169.254.0.1 -S 169.254.0.3:515 "hello, world" + syslogd_log_jail syslogd_client \ + -p user.debug -t test2 -h 169.254.0.1 -S 169.254.0.3:515 "hello, world" atf_check -o not-match:"test2: hello, world" cat "${logfile}" syslogd_stop @@ -435,11 +436,11 @@ allowed_peer_body() # Now make sure that we can filter by port. syslogd_start -j syslogd_allowed_peer -b 169.254.0.1:514 -a '169.254.0.2/32:515' - atf_check jexec syslogd_client \ - logger -p user.debug -t test3 -h 169.254.0.1 -S 169.254.0.2:514 "hello, world" + syslogd_log_jail syslogd_client \ + -p user.debug -t test3 -h 169.254.0.1 -S 169.254.0.2:514 "hello, world" atf_check -o not-match:"test3: hello, world" cat "${logfile}" - atf_check jexec syslogd_client \ - logger -p user.debug -t test4 -h 169.254.0.1 -S 169.254.0.2:515 "hello, world" + syslogd_log_jail syslogd_client \ + -p user.debug -t test4 -h 169.254.0.1 -S 169.254.0.2:515 "hello, world" atf_check -o match:"test4: hello, world" cat "${logfile}" syslogd_stop @@ -472,10 +473,10 @@ allowed_peer_forwarding_body() # A message forwarded to 169.254.0.1:514 should be logged, but one # forwarded to 169.254.0.1:515 should not. - atf_check jexec syslogd_client \ - logger -h 169.254.0.2 -p user.debug -t test1 "hello, world" - atf_check jexec syslogd_client \ - logger -h 169.254.0.2 -p mark.debug -t test2 "hello, world" + syslogd_log_jail syslogd_client \ + -h 169.254.0.2 -p user.debug -t test1 "hello, world" + syslogd_log_jail syslogd_client \ + -h 169.254.0.2 -p mark.debug -t test2 "hello, world" atf_check -o match:"test1: hello, world" cat "${logfile}" atf_check -o not-match:"test2: hello, world" cat "${logfile}" @@ -502,19 +503,19 @@ allowed_peer_wildcard_body() syslogd_start -j syslogd_allowed_peer -b 169.254.0.1:514 -a '169.254.0.2/32:*' # Make sure that a message from 169.254.0.2:514 is logged. - atf_check jexec syslogd_client \ - logger -p user.debug -t test1 -h 169.254.0.1 -S 169.254.0.2:514 "hello, world" + syslogd_log_jail syslogd_client \ + -p user.debug -t test1 -h 169.254.0.1 -S 169.254.0.2:514 "hello, world" atf_check -o match:"test1: hello, world" cat "${logfile}" # ... as is a message from 169.254.0.2:515, allowed by the wildcard. - atf_check jexec syslogd_client \ - logger -p user.debug -t test2 -h 169.254.0.1 -S 169.254.0.2:515 "hello, world" + syslogd_log_jail syslogd_client \ + -p user.debug -t test2 -h 169.254.0.1 -S 169.254.0.2:515 "hello, world" atf_check -o match:"test2: hello, world" cat "${logfile}" # ... but not a message from 169.254.0.3. - atf_check -o ignore jexec syslogd_client \ - logger -p user.debug -t test3 -h 169.254.0.1 -S 169.254.0.3:514 "hello, world" + syslogd_log_jail syslogd_client \ + -p user.debug -t test3 -h 169.254.0.1 -S 169.254.0.3:514 "hello, world" atf_check -o not-match:"test3: hello, world" cat "${logfile}" - atf_check -o ignore jexec syslogd_client \ - logger -p user.debug -t test3 -h 169.254.0.1 -S 169.254.0.3:515 "hello, world" + syslogd_log_jail syslogd_client \ + -p user.debug -t test3 -h 169.254.0.1 -S 169.254.0.3:515 "hello, world" atf_check -o not-match:"test3: hello, world" cat "${logfile}" syslogd_stop @@ -567,15 +568,16 @@ __EOF__ syslogd_start -j syslogd_server -f ${PWD}/server_config -b 169.254.0.1 -b 169.254.0.2 syslogd_start -j syslogd_client -f ${PWD}/client_config -P ${SYSLOGD_PIDFILE}.2 - atf_check jexec syslogd_client \ - logger -h 169.254.0.3 -P $SYSLOGD_UDP_PORT -p user.debug -t test1 "hello, world" - atf_check jexec syslogd_client \ - logger -h 169.254.0.3 -P $SYSLOGD_UDP_PORT -p mail.debug -t test2 "you've got mail" - atf_check jexec syslogd_client \ - logger -h 169.254.0.3 -P $SYSLOGD_UDP_PORT -p ftp.debug -t test3 "transfer complete" - + syslogd_log_jail syslogd_client \ + -h 169.254.0.3 -P $SYSLOGD_UDP_PORT -p user.debug -t test1 "hello, world" atf_check -o match:"test1: hello, world" cat "${logfile}" + + syslogd_log_jail syslogd_client \ + -h 169.254.0.3 -P $SYSLOGD_UDP_PORT -p mail.debug -t test2 "you've got mail" atf_check -o match:"test2: you've got mail" cat "${logfile}" + + syslogd_log_jail syslogd_client \ + -h 169.254.0.3 -P $SYSLOGD_UDP_PORT -p ftp.debug -t test3 "transfer complete" atf_check -o match:"test3: transfer complete" cat "${logfile}" } forward_cleanup() diff --git a/usr.sbin/syslogd/tests/syslogd_test_common.sh b/usr.sbin/syslogd/tests/syslogd_test_common.sh index f06eb417d423..87e9080d99ca 100644 --- a/usr.sbin/syslogd/tests/syslogd_test_common.sh +++ b/usr.sbin/syslogd/tests/syslogd_test_common.sh @@ -96,6 +96,13 @@ syslogd_log() atf_check -s exit:0 -o empty -e empty logger $* } +syslogd_log_jail() +{ + local jailname=$1 + shift + atf_check -s exit:0 -o empty -e empty jexec ${jailname} logger $* +} + # Make syslogd reload its configuration file. syslogd_reload() { From nobody Thu Jan 22 17:17:55 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxnnc2B1Jz6Q4Vp for ; Thu, 22 Jan 2026 17:17: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxnnc06y7z3f71 for ; Thu, 22 Jan 2026 17:17:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769102276; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tTt9tmM9lH6XY0uWDt43HLf5NVmRnR6PSphkDTUzgTU=; b=mGSofMSIwmSVsL8uugaWFLH6vHxJ6U6q3zGdjN4uyLEoDnVngv8WuUtSleuMV9G4RX7cQM sm92HoahsnXuvVnuQy9fa0pfC4flJ8EadJmFGtPFHljXTdIBjP0R6SRSzJ9jySGCqeabLk P1xHOzjXKgUjiZ+AefB35pIrqbLBIR8sp/q75cjBwmWWu8k7ky9+dUU/Kk/Tc4QS6Zv7Ic uN6RUKKJ+a0QZUb1IULT7k2e3SH4J+E5VoTG8eWd0xoQKx39QzRnOoEgOaDXY9wHuSTfdy 9GJQQqtCtmm9GO/0DkWnwjoQr8OxsDevGTnH0KPCUoI2ygBsSsf06+OmP78How== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769102276; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tTt9tmM9lH6XY0uWDt43HLf5NVmRnR6PSphkDTUzgTU=; b=xvP7BooJikGbXni2CLR3a0bSdfuThJuFvmvYaSX/TDklsBxY+lPfHzmzwYVGT2kWD8lRt/ vhWjXVhj2Nw5QiWlm2sTLQTXssi7h9durYlGOIvbEtGBNcihHMTmeMs1sTDkuaayUl8YLo 7Axp9ZoJOghMqKvmBpYZdFAsOH5SYSXvS5rbIaZwmSP68mXXJkOK8uAiMVpJnSTn7dlRoq sgl1tPhJ4XAieaqbYCH1KV4bgrFUtfuQp2TPaLkJe5kRMZtIgwkXy2YRhcOD3fThhFtGIi IrCZ3WURBmNApYB0pyopgallfHRP4aZ69ubMY4ikzreyH3dgcVdcaqlLe2lrzA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769102276; a=rsa-sha256; cv=none; b=hII6Mu9wa/ICrqLTjH+4bt/md0XR/KNsw9hi0A4m2LAMjbY14yY+MOSG4NQXvApWRZTai4 3iMpLLp/NlczUybp/GwSVwD51FFD7wvwfOa3xfaLEuIKhl9RjwLMQIgEyh6wU8skHzwHVp znWRak9jzC8gluspMML7b/0BRX1vGZFpnf+LzjCqEOmTZVtqndAFMzLmSmK0mPZQXxZzv7 zlRt/efMk7g3D9CIjdERbdD+DBwzXJmRP5ev49UmLNASW/GHGnHNcCkYJAsnERLFYdhw3i kgegeYuSQmtf6tw0OMCr74EyUQENZvZNoLvpmiJTQdhhH1v/vODJIoIglZpexA== 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 4dxnnb6nxtzjRq for ; Thu, 22 Jan 2026 17:17:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 398ea by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 22 Jan 2026 17:17:55 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 560c22937ba9 - main - syslogd/tests: Address races List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 560c22937ba96e8bab57de395dcf340ecf8d6794 Auto-Submitted: auto-generated Date: Thu, 22 Jan 2026 17:17:55 +0000 Message-Id: <69725bc3.398ea.7ee6a928@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=560c22937ba96e8bab57de395dcf340ecf8d6794 commit 560c22937ba96e8bab57de395dcf340ecf8d6794 Author: Mark Johnston AuthorDate: 2026-01-22 15:50:25 +0000 Commit: Mark Johnston CommitDate: 2026-01-22 15:50:25 +0000 syslogd/tests: Address races I occasionally see failures in the syslogd test suite. The problem is that the tests are racy: they send a message using logger(1), then immediately check whether the message was logged to a log file. If the syslogd instance under test doesn't get a chance to run before the second step, the test fails. This change reworks things to avoid the race while minimizing the amount of time sleeping. 1) Each test uses a single logfile, so have them use a new common variable, SYSLOGD_LOGFILE, instead of something test-specific. 2) In syslogd_start(), if the configuration references SYSLOGD_LOGFILE, wait for it to be created by syslogd before returning. 3) Add a helper syslogd_check_log(), to check for a given log entry in the last line of SYSLOGD_LOGFILE, instead of using atf_check directly. 4) In syslogd_check_log(), poll the logfile until the desired log entry appears, or the test times out. With this change, I was able to run the tests 1000 times in a loop with 4-way parallelism without seeing any test failures. Without the change I usually get a failure within 10 loops. Reviewed by: jlduran MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D54779 --- .../syslogd/tests/syslogd_basic_format_test.sh | 28 +-- .../syslogd/tests/syslogd_format_test_common.sh | 1 - .../syslogd/tests/syslogd_forwarded_format_test.sh | 42 ++-- .../syslogd/tests/syslogd_relayed_format_test.sh | 30 +-- usr.sbin/syslogd/tests/syslogd_test.sh | 241 ++++++++++----------- usr.sbin/syslogd/tests/syslogd_test_common.sh | 33 +++ 6 files changed, 184 insertions(+), 191 deletions(-) diff --git a/usr.sbin/syslogd/tests/syslogd_basic_format_test.sh b/usr.sbin/syslogd/tests/syslogd_basic_format_test.sh index 09477a568ba8..219c3e045676 100644 --- a/usr.sbin/syslogd/tests/syslogd_basic_format_test.sh +++ b/usr.sbin/syslogd/tests/syslogd_basic_format_test.sh @@ -11,9 +11,8 @@ setup_basic_format_test() { local format="$1" - local logfile="$2" - printf "user.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}" + printf "user.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_start \ -O "${format}" \ @@ -33,11 +32,10 @@ O_flag_bsd_basic_head() O_flag_bsd_basic_body() { local format="bsd" - local logfile="${PWD}/O_flag_${format}_basic.log" - setup_basic_format_test "${format}" "${logfile}" + setup_basic_format_test "${format}" - atf_check -s exit:0 -o match:"${REGEX_RFC3164_LOGFILE}" cat "${logfile}" + syslogd_check_log "${REGEX_RFC3164_LOGFILE}" } O_flag_bsd_basic_cleanup() { @@ -52,11 +50,10 @@ O_flag_rfc3164_basic_head() O_flag_rfc3164_basic_body() { local format="rfc3164" - local logfile="${PWD}/O_flag_${format}_basic.log" - setup_basic_format_test "${format}" "${logfile}" + setup_basic_format_test "${format}" - atf_check -s exit:0 -o match:"${REGEX_RFC3164_LOGFILE}" cat "${logfile}" + syslogd_check_log "${REGEX_RFC3164_LOGFILE}" } O_flag_rfc3164_basic_cleanup() { @@ -71,11 +68,10 @@ O_flag_rfc3164strict_basic_head() O_flag_rfc3164strict_basic_body() { local format="rfc3164-strict" - local logfile="${PWD}/O_flag_${format}_basic.log" - setup_basic_format_test "${format}" "${logfile}" + setup_basic_format_test "${format}" - atf_check -s exit:0 -o match:"${REGEX_RFC3164_LOGFILE}" cat "${logfile}" + syslogd_check_log "${REGEX_RFC3164_LOGFILE}" } O_flag_rfc3164strict_basic_cleanup() { @@ -90,11 +86,10 @@ O_flag_syslog_basic_head() O_flag_syslog_basic_body() { local format="syslog" - local logfile="${PWD}/O_flag_${format}_basic.log" - setup_basic_format_test "${format}" "${logfile}" + setup_basic_format_test "${format}" - atf_check -s exit:0 -o match:"${REGEX_RFC5424_LOGFILE}" cat "${logfile}" + syslogd_check_log "${REGEX_RFC5424_LOGFILE}" } O_flag_syslog_basic_cleanup() { @@ -109,11 +104,10 @@ O_flag_rfc5424_basic_head() O_flag_rfc5424_basic_body() { local format="rfc5424" - local logfile="${PWD}/O_flag_${format}_basic.log" - setup_basic_format_test "${format}" "${logfile}" + setup_basic_format_test "${format}" - atf_check -s exit:0 -o match:"${REGEX_RFC5424_LOGFILE}" cat "${logfile}" + syslogd_check_log "${REGEX_RFC5424_LOGFILE}" } O_flag_rfc5424_basic_cleanup() { diff --git a/usr.sbin/syslogd/tests/syslogd_format_test_common.sh b/usr.sbin/syslogd/tests/syslogd_format_test_common.sh index 995bb048881b..99623015c15d 100644 --- a/usr.sbin/syslogd/tests/syslogd_format_test_common.sh +++ b/usr.sbin/syslogd/tests/syslogd_format_test_common.sh @@ -55,7 +55,6 @@ confirm_INET_support_or_skip() set_common_atf_metadata() { - atf_set timeout 5 atf_set require.user root } diff --git a/usr.sbin/syslogd/tests/syslogd_forwarded_format_test.sh b/usr.sbin/syslogd/tests/syslogd_forwarded_format_test.sh index b17627a935c8..db607a33d093 100644 --- a/usr.sbin/syslogd/tests/syslogd_forwarded_format_test.sh +++ b/usr.sbin/syslogd/tests/syslogd_forwarded_format_test.sh @@ -14,8 +14,7 @@ SERVER_2_PORT="5141" setup_forwarded_format_test() { local format="$1" - local logfile="$2" - local pcapfile="$3" + local pcapfile="$2" confirm_INET_support_or_skip @@ -25,7 +24,7 @@ setup_forwarded_format_test() tcpdump_pid="$!" # Start first server: receive UDP, log to file - printf "user.debug\t${logfile}\n" > "$(config_filename ${SERVER_1_PORT})" + printf "user.debug\t${SYSLOGD_LOGFILE}\n" > "$(config_filename ${SERVER_1_PORT})" syslogd_start_on_port "${SERVER_1_PORT}" -O "${format}" # Start second server: send UDP, log to first server @@ -49,14 +48,13 @@ O_flag_bsd_forwarded_head() O_flag_bsd_forwarded_body() { local format="bsd" - local logfile="${PWD}/${format}_forwarded.log" local pcapfile="${PWD}/${format}_forwarded.pcap" - setup_forwarded_format_test "${format}" "${logfile}" "${pcapfile}" + setup_forwarded_format_test "${format}" "${pcapfile}" atf_expect_fail \ "PR 220246 syslog -O bsd deviates from RFC 3164 recommendations" - atf_check -s exit:0 -o match:"${REGEX_RFC3164_LOGFILE}" cat "${logfile}" + syslogd_check_log "${REGEX_RFC3164_LOGFILE}" atf_check -s exit:0 -e ignore -o match:"${REGEX_RFC3164_PAYLOAD}" \ tcpdump -A -r "${pcapfile}" } @@ -76,14 +74,13 @@ O_flag_rfc3164_forwarded_head() O_flag_rfc3164_forwarded_body() { local format="rfc3164" - local logfile="${PWD}/${format}_forwarded.log" local pcapfile="${PWD}/${format}_forwarded.pcap" - setup_forwarded_format_test "${format}" "${logfile}" "${pcapfile}" + setup_forwarded_format_test "${format}" "${pcapfile}" atf_expect_fail \ "PR 220246 syslog -O rfc3164 deviates from RFC 3164 recommendations" - atf_check -s exit:0 -o match:"${REGEX_RFC3164_LOGFILE}" cat "${logfile}" + syslogd_check_log "${REGEX_RFC3164_LOGFILE}" atf_check -s exit:0 -e ignore -o match:"${REGEX_RFC3164_PAYLOAD}" \ tcpdump -A -r "${pcapfile}" } @@ -103,12 +100,11 @@ O_flag_rfc3164strict_forwarded_head() O_flag_rfc3164strict_forwarded_body() { local format="rfc3164-strict" - local logfile="${PWD}/${format}_forwarded.log" local pcapfile="${PWD}/${format}_forwarded.pcap" - setup_forwarded_format_test "${format}" "${logfile}" "${pcapfile}" + setup_forwarded_format_test "${format}" "${pcapfile}" - atf_check -s exit:0 -o match:"${REGEX_RFC3164_LOGFILE}" cat "${logfile}" + syslogd_check_log "${REGEX_RFC3164_LOGFILE}" atf_check -s exit:0 -e ignore -o match:"${REGEX_RFC3164_PAYLOAD}" \ tcpdump -A -r "${pcapfile}" } @@ -128,12 +124,11 @@ O_flag_syslog_forwarded_head() O_flag_syslog_forwarded_body() { local format="syslog" - local logfile="${PWD}/${format}_forwarded.log" local pcapfile="${PWD}/${format}_forwarded.pcap" - setup_forwarded_format_test "${format}" "${logfile}" "${pcapfile}" + setup_forwarded_format_test "${format}" "${pcapfile}" - atf_check -s exit:0 -o match:"${REGEX_RFC5424_LOGFILE}" cat "${logfile}" + syslogd_check_log "${REGEX_RFC5424_LOGFILE}" atf_check -s exit:0 -e ignore -o match:"${REGEX_RFC5424_PAYLOAD}" \ tcpdump -A -r "${pcapfile}" } @@ -153,12 +148,11 @@ O_flag_rfc5424_forwarded_head() O_flag_rfc5424_forwarded_body() { local format="rfc5424" - local logfile="${PWD}/${format}_forwarded.log" local pcapfile="${PWD}/${format}_forwarded.pcap" - setup_forwarded_format_test "${format}" "${logfile}" "${pcapfile}" + setup_forwarded_format_test "${format}" "${pcapfile}" - atf_check -s exit:0 -o match:"${REGEX_RFC5424_LOGFILE}" cat "${logfile}" + syslogd_check_log "${REGEX_RFC5424_LOGFILE}" atf_check -s exit:0 -e ignore -o match:"${REGEX_RFC5424_PAYLOAD}" \ tcpdump -A -r "${pcapfile}" } @@ -180,13 +174,11 @@ O_flag_bsd_forwarded_legacy_head() O_flag_bsd_forwarded_legacy_body() { local format="bsd" - local logfile="${PWD}/${format}_forwarded_legacy.log" local pcapfile="${PWD}/${format}_forwarded.pcap" - setup_forwarded_format_test "${format}" "${logfile}" "${pcapfile}" + setup_forwarded_format_test "${format}" "${pcapfile}" - atf_check -s exit:0 -o match:"${REGEX_RFC3164_LEGACY_LOGFILE}" \ - cat "${logfile}" + syslogd_check_log "${REGEX_RFC3164_LEGACY_LOGFILE}" atf_check -s exit:0 -e ignore \ -o match:"${REGEX_RFC3164_LEGACY_PAYLOAD}" \ tcpdump -A -r "${pcapfile}" @@ -208,13 +200,11 @@ O_flag_rfc3164_forwarded_legacy_head() O_flag_rfc3164_forwarded_legacy_body() { local format="rfc3164" - local logfile="${PWD}/${format}_forwarded_legacy.log" local pcapfile="${PWD}/${format}_forwarded.pcap" - setup_forwarded_format_test "${format}" "${logfile}" "${pcapfile}" + setup_forwarded_format_test "${format}" "${pcapfile}" - atf_check -s exit:0 -o match:"${REGEX_RFC3164_LEGACY_LOGFILE}" \ - cat "${logfile}" + syslogd_check_log "${REGEX_RFC3164_LEGACY_LOGFILE}" atf_check -s exit:0 -e ignore \ -o match:"${REGEX_RFC3164_LEGACY_PAYLOAD}" \ tcpdump -A -r "${pcapfile}" diff --git a/usr.sbin/syslogd/tests/syslogd_relayed_format_test.sh b/usr.sbin/syslogd/tests/syslogd_relayed_format_test.sh index d3e0db4e0f1c..6a5aeba77a25 100644 --- a/usr.sbin/syslogd/tests/syslogd_relayed_format_test.sh +++ b/usr.sbin/syslogd/tests/syslogd_relayed_format_test.sh @@ -15,8 +15,7 @@ readonly SERVER_3_PORT="5142" setup_relayed_format_test() { local format="$1" - local logfile="$2" - local pcapfile="$3" + local pcapfile="$2" confirm_INET_support_or_skip @@ -26,7 +25,7 @@ setup_relayed_format_test() tcpdump_pid="$!" # Start first (central) server: receive UDP, log to file - printf "user.debug\t${logfile}\n" \ + printf "user.debug\t${SYSLOGD_LOGFILE}\n" \ > "$(config_filename ${SERVER_1_PORT})" syslogd_start_on_port "${SERVER_1_PORT}" -O "${format}" @@ -56,13 +55,12 @@ O_flag_bsd_relayed_head() O_flag_bsd_relayed_body() { local format="bsd" - local logfile="${PWD}/${format}_relayed.log" local pcapfile="${PWD}/${format}_relayed.pcap" - setup_relayed_format_test "${format}" "${logfile}" "${pcapfile}" + setup_relayed_format_test "${format}" "${pcapfile}" atf_expect_fail "PR 220246 issue with the legacy bsd format" - atf_check -s exit:0 -o match:"${REGEX_RFC3164_LOGFILE}" cat "${logfile}" + syslogd_check_log "${REGEX_RFC3164_LOGFILE}" atf_check -s exit:0 -e ignore -o match:"${REGEX_RFC3164_PAYLOAD}" \ tcpdump -A -r "${pcapfile}" } @@ -83,13 +81,12 @@ O_flag_rfc3164_relayed_head() O_flag_rfc3164_relayed_body() { local format="rfc3164" - local logfile="${PWD}/${format}_relayed.log" local pcapfile="${PWD}/${format}_relayed.pcap" - setup_relayed_format_test "${format}" "${logfile}" "${pcapfile}" + setup_relayed_format_test "${format}" "${pcapfile}" atf_expect_fail "PR 220246 issue with the legacy rfc3164 format" - atf_check -s exit:0 -o match:"${REGEX_RFC3164_LOGFILE}" cat "${logfile}" + syslogd_check_log "${REGEX_RFC3164_LOGFILE}" atf_check -s exit:0 -e ignore -o match:"${REGEX_RFC3164_PAYLOAD}" \ tcpdump -A -r "${pcapfile}" } @@ -110,12 +107,11 @@ O_flag_rfc3164strict_relayed_head() O_flag_rfc3164strict_relayed_body() { local format="rfc3164-strict" - local logfile="${PWD}/${format}_relayed.log" local pcapfile="${PWD}/${format}_relayed.pcap" - setup_relayed_format_test "${format}" "${logfile}" "${pcapfile}" + setup_relayed_format_test "${format}" "${pcapfile}" - atf_check -s exit:0 -o match:"${REGEX_RFC3164_LOGFILE}" cat "${logfile}" + syslogd_check_log "${REGEX_RFC3164_LOGFILE}" atf_check -s exit:0 -e ignore -o match:"${REGEX_RFC3164_PAYLOAD}" \ tcpdump -A -r "${pcapfile}" } @@ -136,12 +132,11 @@ O_flag_syslog_relayed_head() O_flag_syslog_relayed_body() { local format="syslog" - local logfile="${PWD}/${format}_relayed.log" local pcapfile="${PWD}/${format}_relayed.pcap" - setup_relayed_format_test "${format}" "${logfile}" "${pcapfile}" + setup_relayed_format_test "${format}" "${pcapfile}" - atf_check -s exit:0 -o match:"${REGEX_RFC5424_LOGFILE}" cat "${logfile}" + syslogd_check_log "${REGEX_RFC5424_LOGFILE}" atf_check -s exit:0 -e ignore -o match:"${REGEX_RFC5424_PAYLOAD}" \ tcpdump -A -r "${pcapfile}" } @@ -162,12 +157,11 @@ O_flag_rfc5424_relayed_head() O_flag_rfc5424_relayed_body() { local format="rfc5424" - local logfile="${PWD}/${format}_relayed.log" local pcapfile="${PWD}/${format}_relayed.pcap" - setup_relayed_format_test "${format}" "${logfile}" "${pcapfile}" + setup_relayed_format_test "${format}" "${pcapfile}" - atf_check -s exit:0 -o match:"${REGEX_RFC5424_LOGFILE}" cat "${logfile}" + syslogd_check_log "${REGEX_RFC5424_LOGFILE}" atf_check -s exit:0 -e ignore -o match:"${REGEX_RFC5424_PAYLOAD}" \ tcpdump -A -r "${pcapfile}" } diff --git a/usr.sbin/syslogd/tests/syslogd_test.sh b/usr.sbin/syslogd/tests/syslogd_test.sh index fbe390d93aae..d43473eac12d 100644 --- a/usr.sbin/syslogd/tests/syslogd_test.sh +++ b/usr.sbin/syslogd/tests/syslogd_test.sh @@ -23,15 +23,12 @@ unix_head() } unix_body() { - local logfile="${PWD}/unix.log" - - printf "user.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}" + printf "user.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_start syslogd_log -p user.debug -t unix -h "${SYSLOGD_LOCAL_SOCKET}" \ "hello, world (unix)" - atf_check -s exit:0 -o match:"unix: hello, world \(unix\)" \ - tail -n 1 "${logfile}" + syslogd_check_log "unix: hello, world \(unix\)" } unix_cleanup() { @@ -45,19 +42,16 @@ inet_head() } inet_body() { - local logfile="${PWD}/inet.log" - [ "$(sysctl -n kern.features.inet)" != "1" ] && atf_skip "Kernel does not support INET" - printf "user.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}" + printf "user.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_start # We have INET transport; make sure we can use it. syslogd_log -4 -p user.debug -t inet -h 127.0.0.1 -P "${SYSLOGD_UDP_PORT}" \ "hello, world (v4)" - atf_check -s exit:0 -o match:"inet: hello, world \(v4\)" \ - tail -n 1 "${logfile}" + syslogd_check_log "inet: hello, world \(v4\)" } inet_cleanup() { @@ -71,19 +65,16 @@ inet6_head() } inet6_body() { - local logfile="${PWD}/inet6.log" - [ "$(sysctl -n kern.features.inet6)" != "1" ] && atf_skip "Kernel does not support INET6" - printf "user.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}" + printf "user.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_start # We have INET6 transport; make sure we can use it. syslogd_log -6 -p user.debug -t unix -h ::1 -P "${SYSLOGD_UDP_PORT}" \ "hello, world (v6)" - atf_check -s exit:0 -o match:"unix: hello, world \(v6\)" \ - tail -n 1 "${logfile}" + syslogd_check_log "unix: hello, world \(v6\)" } inet6_cleanup() { @@ -97,25 +88,24 @@ reload_head() } reload_body() { - logfile="${PWD}/reload.log" - printf "user.debug\t/${logfile}\n" > "${SYSLOGD_CONFIG}" + printf "user.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_start syslogd_log -p user.debug -t reload -h "${SYSLOGD_LOCAL_SOCKET}" \ "pre-reload" - atf_check -s exit:0 -o match:"reload: pre-reload" tail -n 1 "${logfile}" + syslogd_check_log "reload: pre-reload" # Override the old rule. - truncate -s 0 "${logfile}" - printf "news.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}" + printf "news.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_reload syslogd_log -p user.debug -t reload -h "${SYSLOGD_LOCAL_SOCKET}" \ "post-reload user" syslogd_log -p news.debug -t reload -h "${SYSLOGD_LOCAL_SOCKET}" \ "post-reload news" - atf_check -s exit:0 -o not-match:"reload: post-reload user" cat ${logfile} - atf_check -s exit:0 -o match:"reload: post-reload news" cat ${logfile} + sleep 0.5 + syslogd_check_log_nopoll "reload: post-reload news" + syslogd_check_log_nomatch "reload: post-reload user" } reload_cleanup() { @@ -129,30 +119,36 @@ prog_filter_head() } prog_filter_body() { - logfile="${PWD}/prog_filter.log" - printf "!prog1,prog2\nuser.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}" + printf "!prog1,prog2\nuser.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_start - for i in 1 2 3; do - syslogd_log -p user.debug -t "prog${i}" -h "${SYSLOGD_LOCAL_SOCKET}" \ - "hello this is prog${i}" - done - atf_check -s exit:0 -o match:"prog1: hello this is prog1" cat "${logfile}" - atf_check -s exit:0 -o match:"prog2: hello this is prog2" cat "${logfile}" - atf_check -s exit:0 -o not-match:"prog3: hello this is prog3" cat "${logfile}" + syslogd_log -p user.debug -t "prog1" -h "${SYSLOGD_LOCAL_SOCKET}" \ + "hello this is prog1" + syslogd_check_log "prog1: hello this is prog1" + + syslogd_log -p user.debug -t "prog2" -h "${SYSLOGD_LOCAL_SOCKET}" \ + "hello this is prog2" + syslogd_check_log "prog2: hello this is prog2" + + syslogd_log -p user.debug -t "prog3" -h "${SYSLOGD_LOCAL_SOCKET}" \ + "hello this is prog3" + syslogd_check_log_nomatch "prog3: hello this is prog3" # Override the old rule. - truncate -s 0 ${logfile} - printf "!-prog1,prog2\nuser.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}" + printf "!-prog1,prog2\nuser.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_reload - for i in 1 2 3; do - syslogd_log -p user.debug -t "prog${i}" -h "${SYSLOGD_LOCAL_SOCKET}" \ - "hello this is prog${i}" - done - atf_check -s exit:0 -o not-match:"prog1: hello this is prog1" cat "${logfile}" - atf_check -s exit:0 -o not-match:"prog2: hello this is prog2" cat "${logfile}" - atf_check -s exit:0 -o match:"prog3: hello this is prog3" cat "${logfile}" + syslogd_log -p user.debug -t "prog1" -h "${SYSLOGD_LOCAL_SOCKET}" \ + "hello this is prog1" + syslogd_check_log_nomatch "prog1: hello this is prog1" + + syslogd_log -p user.debug -t "prog2" -h "${SYSLOGD_LOCAL_SOCKET}" \ + "hello this is prog2" + syslogd_check_log_nomatch "prog2: hello this is prog2" + + syslogd_log -p user.debug -t "prog3" -h "${SYSLOGD_LOCAL_SOCKET}" \ + "hello this is prog3" + syslogd_check_log "prog3: hello this is prog3" } prog_filter_cleanup() { @@ -166,30 +162,32 @@ host_filter_head() } host_filter_body() { - logfile="${PWD}/host_filter.log" - printf "+host1,host2\nuser.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}" + printf "+host1,host2\nuser.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_start - for i in 1 2 3; do - syslogd_log -p user.debug -t "host${i}" -H "host${i}" \ - -h "${SYSLOGD_LOCAL_SOCKET}" "hello this is host${i}" - done - atf_check -s exit:0 -o match:"host1: hello this is host1" cat "${logfile}" - atf_check -s exit:0 -o match:"host2: hello this is host2" cat "${logfile}" - atf_check -s exit:0 -o not-match:"host3: hello this is host3" cat "${logfile}" + syslogd_log -p user.debug -t "host1" -H "host1" \ + -h "${SYSLOGD_LOCAL_SOCKET}" "hello this is host1" + syslogd_check_log "host1: hello this is host1" + syslogd_log -p user.debug -t "host2" -H "host2" \ + -h "${SYSLOGD_LOCAL_SOCKET}" "hello this is host2" + syslogd_check_log "host2: hello this is host2" + syslogd_log -p user.debug -t "host3" -H "host3" \ + -h "${SYSLOGD_LOCAL_SOCKET}" "hello this is host3" + syslogd_check_log_nomatch "host3: hello this is host3" # Override the old rule. - truncate -s 0 ${logfile} - printf "\-host1,host2\nuser.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}" + printf "\-host1,host2\nuser.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_reload - for i in 1 2 3; do - syslogd_log -p user.debug -t "host${i}" -H "host${i}" \ - -h "${SYSLOGD_LOCAL_SOCKET}" "hello this is host${i}" - done - atf_check -s exit:0 -o not-match:"host1: hello this is host1" cat "${logfile}" - atf_check -s exit:0 -o not-match:"host2: hello this is host2" cat "${logfile}" - atf_check -s exit:0 -o match:"host3: hello this is host3" cat "${logfile}" + syslogd_log -p user.debug -t "host1" -H "host1" \ + -h "${SYSLOGD_LOCAL_SOCKET}" "hello this is host1" + syslogd_check_log_nomatch "host1: hello this is host1" + syslogd_log -p user.debug -t "host2" -H "host2" \ + -h "${SYSLOGD_LOCAL_SOCKET}" "hello this is host2" + syslogd_check_log_nomatch "host2: hello this is host2" + syslogd_log -p user.debug -t "host3" -H "host3" \ + -h "${SYSLOGD_LOCAL_SOCKET}" "hello this is host3" + syslogd_check_log "host3: hello this is host3" } host_filter_cleanup() { @@ -203,47 +201,43 @@ prop_filter_head() } prop_filter_body() { - logfile="${PWD}/prop_filter.log" - printf ":msg,contains,\"FreeBSD\"\nuser.debug\t${logfile}\n" \ + printf ":msg,contains,\"FreeBSD\"\nuser.debug\t${SYSLOGD_LOGFILE}\n" \ > "${SYSLOGD_CONFIG}" syslogd_start syslogd_log -p user.debug -t "prop1" -h "${SYSLOGD_LOCAL_SOCKET}" "FreeBSD" syslogd_log -p user.debug -t "prop2" -h "${SYSLOGD_LOCAL_SOCKET}" "freebsd" - atf_check -s exit:0 -o match:"prop1: FreeBSD" cat "${logfile}" - atf_check -s exit:0 -o not-match:"prop2: freebsd" cat "${logfile}" + syslogd_check_log "prop1: FreeBSD" + syslogd_check_log_nomatch "prop2: freebsd" - truncate -s 0 ${logfile} - printf ":msg,!contains,\"FreeBSD\"\nuser.debug\t${logfile}\n" \ + printf ":msg,!contains,\"FreeBSD\"\nuser.debug\t${SYSLOGD_LOGFILE}\n" \ > "${SYSLOGD_CONFIG}" syslogd_reload syslogd_log -p user.debug -t "prop1" -h "${SYSLOGD_LOCAL_SOCKET}" "FreeBSD" syslogd_log -p user.debug -t "prop2" -h "${SYSLOGD_LOCAL_SOCKET}" "freebsd" - atf_check -s exit:0 -o not-match:"prop1: FreeBSD" cat "${logfile}" - atf_check -s exit:0 -o match:"prop2: freebsd" cat "${logfile}" + syslogd_check_log_nomatch "prop1: FreeBSD" + syslogd_check_log "prop2: freebsd" - truncate -s 0 ${logfile} - printf ":msg,icase_contains,\"FreeBSD\"\nuser.debug\t${logfile}\n" \ + printf ":msg,icase_contains,\"FreeBSD\"\nuser.debug\t${SYSLOGD_LOGFILE}\n" \ > "${SYSLOGD_CONFIG}" syslogd_reload syslogd_log -p user.debug -t "prop1" -h "${SYSLOGD_LOCAL_SOCKET}" "FreeBSD" + syslogd_check_log "prop1: FreeBSD" syslogd_log -p user.debug -t "prop2" -h "${SYSLOGD_LOCAL_SOCKET}" "freebsd" - atf_check -s exit:0 -o match:"prop1: FreeBSD" cat "${logfile}" - atf_check -s exit:0 -o match:"prop2: freebsd" cat "${logfile}" + syslogd_check_log "prop2: freebsd" - truncate -s 0 ${logfile} - printf ":msg,!icase_contains,\"FreeBSD\"\nuser.debug\t${logfile}\n" \ + printf ":msg,!icase_contains,\"FreeBSD\"\nuser.debug\t${SYSLOGD_LOGFILE}\n" \ > "${SYSLOGD_CONFIG}" syslogd_reload syslogd_log -p user.debug -t "prop1" -h "${SYSLOGD_LOCAL_SOCKET}" "FreeBSD" syslogd_log -p user.debug -t "prop2" -h "${SYSLOGD_LOCAL_SOCKET}" "freebsd" syslogd_log -p user.debug -t "prop3" -h "${SYSLOGD_LOCAL_SOCKET}" "Solaris" - atf_check -s exit:0 -o not-match:"prop1: FreeBSD" cat "${logfile}" - atf_check -s exit:0 -o not-match:"prop2: freebsd" cat "${logfile}" - atf_check -s exit:0 -o match:"prop3: Solaris" cat "${logfile}" + syslogd_check_log_nomatch "prop1: FreeBSD" + syslogd_check_log_nomatch "prop2: freebsd" + syslogd_check_log "prop3: Solaris" } prop_filter_cleanup() { @@ -258,13 +252,12 @@ host_action_head() host_action_body() { local addr="192.0.2.100" - local logfile="${PWD}/host_action.log" atf_check ifconfig lo1 create atf_check ifconfig lo1 inet "${addr}/24" atf_check ifconfig lo1 up - printf "user.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}" + printf "user.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_start -b "${addr}" printf "user.debug\t@${addr}\n" > "${SYSLOGD_CONFIG}.2" @@ -276,8 +269,7 @@ host_action_body() syslogd_log -p user.debug -t "test" -h "${SYSLOGD_LOCAL_SOCKET}.2" \ "message from syslogd2" - atf_check -s exit:0 -o match:"test: message from syslogd2" \ - cat "${logfile}" + syslogd_check_log "test: message from syslogd2" } host_action_cleanup() { @@ -296,17 +288,17 @@ pipe_action_head() } pipe_action_body() { - logfile="${PWD}/pipe_action.log" printf "\"While I'm digging in the tunnel, the elves will often come to me \ - with solutions to my problem.\"\n-Saymore Crey" > ${logfile} + with solutions to my problem.\"\n-Saymore Crey" > testfile printf "!pipe\nuser.debug\t| sed -i '' -e 's/Saymore Crey/Seymour Cray/g' \ - ${logfile}\n" > "${SYSLOGD_CONFIG}" + testfile\n" > "${SYSLOGD_CONFIG}" syslogd_start syslogd_log -p user.debug -t "pipe" -h "${SYSLOGD_LOCAL_SOCKET}" \ "fix spelling error" - atf_check -s exit:0 -o match:"Seymour Cray" cat "${logfile}" + sleep 0.5 + atf_check -o match:"Seymour Cray" cat testfile } pipe_action_cleanup() { @@ -320,16 +312,15 @@ pipe_action_reload_head() } pipe_action_reload_body() { - local logfile="${PWD}/pipe_reload.log" local pipecmd="${PWD}/pipe_cmd.sh" cat <<__EOF__ > "${pipecmd}" #!/bin/sh -echo START > ${logfile} +echo START > ${SYSLOGD_LOGFILE} while read msg; do - echo \${msg} >> ${logfile} + echo \${msg} >> ${SYSLOGD_LOGFILE} done -echo END >> ${logfile} +echo END >> ${SYSLOGD_LOGFILE} exit 0 __EOF__ chmod +x "${pipecmd}" @@ -338,8 +329,9 @@ __EOF__ syslogd_start syslogd_log -p user.debug -t "pipe" -h "${SYSLOGD_LOCAL_SOCKET}" "MSG" - syslogd_reload - atf_check -s exit:0 -o match:"END" tail -n 1 "${logfile}" + atf_check pkill -HUP -F "${1:-${SYSLOGD_PIDFILE}}" + sleep 0.1 + syslogd_check_log_nopoll "END" } pipe_action_reload_cleanup() { @@ -354,17 +346,14 @@ jail_noinet_head() } jail_noinet_body() { - local logfile - syslogd_mkjail syslogd_noinet - logfile="${PWD}/jail_noinet.log" - printf "user.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}" + printf "user.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_start -j syslogd_noinet -s -s syslogd_log -p user.debug -t "test" -h "${SYSLOGD_LOCAL_SOCKET}" \ "hello, world" - atf_check -s exit:0 -o match:"test: hello, world" cat "${logfile}" + syslogd_check_log "test: hello, world" } jail_noinet_cleanup() { @@ -410,26 +399,25 @@ allowed_peer_head() } allowed_peer_body() { - local logfile - allowed_peer_test_setup - logfile="${PWD}/jail.log" - printf "user.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}" + printf "user.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_start -j syslogd_allowed_peer -b 169.254.0.1:514 -a '169.254.0.2/32' # Make sure that a message from 169.254.0.2:514 is logged. syslogd_log_jail syslogd_client \ - -p user.debug -t test1 -h 169.254.0.1 -S 169.254.0.2:514 "hello, world" - atf_check -o match:"test1: hello, world" cat "${logfile}" + -p user.debug -t test1 -h 169.254.0.1 -S 169.254.0.2:514 "hello, world" + syslogd_check_log "test1: hello, world" # ... but not a message from port 515. syslogd_log_jail syslogd_client \ - -p user.debug -t test2 -h 169.254.0.1 -S 169.254.0.2:515 "hello, world" - atf_check -o not-match:"test2: hello, world" cat "${logfile}" + -p user.debug -t test2 -h 169.254.0.1 -S 169.254.0.2:515 "hello, world" + sleep 0.5 + syslogd_check_log_nomatch "test2: hello, world" syslogd_log_jail syslogd_client \ - -p user.debug -t test2 -h 169.254.0.1 -S 169.254.0.3:515 "hello, world" - atf_check -o not-match:"test2: hello, world" cat "${logfile}" + -p user.debug -t test2 -h 169.254.0.1 -S 169.254.0.3:515 "hello, world" + sleep 0.5 + syslogd_check_log_nomatch "test2: hello, world" syslogd_stop @@ -438,10 +426,10 @@ allowed_peer_body() syslogd_log_jail syslogd_client \ -p user.debug -t test3 -h 169.254.0.1 -S 169.254.0.2:514 "hello, world" - atf_check -o not-match:"test3: hello, world" cat "${logfile}" + syslogd_check_log_nomatch "test3: hello, world" syslogd_log_jail syslogd_client \ -p user.debug -t test4 -h 169.254.0.1 -S 169.254.0.2:515 "hello, world" - atf_check -o match:"test4: hello, world" cat "${logfile}" + syslogd_check_log "test4: hello, world" syslogd_stop } @@ -458,16 +446,13 @@ allowed_peer_forwarding_head() } allowed_peer_forwarding_body() { - local logfile - allowed_peer_test_setup printf "user.debug\t@169.254.0.1\n" > client_config printf "mark.debug\t@169.254.0.1:515\n" >> client_config syslogd_start -j syslogd_client -b 169.254.0.2:514 -f ${PWD}/client_config - logfile="${PWD}/jail.log" - printf "+169.254.0.2\nuser.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}" + printf "+169.254.0.2\nuser.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_start -j syslogd_allowed_peer -P ${SYSLOGD_PIDFILE}.2 \ -b 169.254.0.1:514 -a 169.254.0.2/32 @@ -478,8 +463,8 @@ allowed_peer_forwarding_body() syslogd_log_jail syslogd_client \ -h 169.254.0.2 -p mark.debug -t test2 "hello, world" - atf_check -o match:"test1: hello, world" cat "${logfile}" - atf_check -o not-match:"test2: hello, world" cat "${logfile}" + syslogd_check_log "test1: hello, world" + syslogd_check_log_nomatch "test2: hello, world" } allowed_peer_forwarding_cleanup() { @@ -494,29 +479,28 @@ allowed_peer_wildcard_head() } allowed_peer_wildcard_body() { - local logfile - allowed_peer_test_setup - logfile="${PWD}/jail.log" - printf "user.debug\t${logfile}\n" > "${SYSLOGD_CONFIG}" + printf "user.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_start -j syslogd_allowed_peer -b 169.254.0.1:514 -a '169.254.0.2/32:*' # Make sure that a message from 169.254.0.2:514 is logged. syslogd_log_jail syslogd_client \ -p user.debug -t test1 -h 169.254.0.1 -S 169.254.0.2:514 "hello, world" - atf_check -o match:"test1: hello, world" cat "${logfile}" + syslogd_check_log "test1: hello, world" + # ... as is a message from 169.254.0.2:515, allowed by the wildcard. syslogd_log_jail syslogd_client \ -p user.debug -t test2 -h 169.254.0.1 -S 169.254.0.2:515 "hello, world" - atf_check -o match:"test2: hello, world" cat "${logfile}" + syslogd_check_log "test2: hello, world" + # ... but not a message from 169.254.0.3. syslogd_log_jail syslogd_client \ -p user.debug -t test3 -h 169.254.0.1 -S 169.254.0.3:514 "hello, world" - atf_check -o not-match:"test3: hello, world" cat "${logfile}" + syslogd_check_log_nomatch "test3: hello, world" syslogd_log_jail syslogd_client \ -p user.debug -t test3 -h 169.254.0.1 -S 169.254.0.3:515 "hello, world" - atf_check -o not-match:"test3: hello, world" cat "${logfile}" + syslogd_check_log_nomatch "test3: hello, world" syslogd_stop } @@ -533,9 +517,9 @@ forward_head() } forward_body() { - syslogd_check_req epair + local epair - local epair logfile + syslogd_check_req epair atf_check -o save:epair ifconfig epair create epair=$(cat epair) @@ -558,11 +542,10 @@ mail.debug @169.254.0.2 ftp.debug @169.254.0.1 __EOF__ - logfile="${PWD}/jail.log" cat <<__EOF__ > ./server_config -user.debug ${logfile} -mail.debug ${logfile} -ftp.debug ${logfile} +user.debug ${SYSLOGD_LOGFILE} +mail.debug ${SYSLOGD_LOGFILE} +ftp.debug ${SYSLOGD_LOGFILE} __EOF__ syslogd_start -j syslogd_server -f ${PWD}/server_config -b 169.254.0.1 -b 169.254.0.2 @@ -570,15 +553,15 @@ __EOF__ syslogd_log_jail syslogd_client \ -h 169.254.0.3 -P $SYSLOGD_UDP_PORT -p user.debug -t test1 "hello, world" - atf_check -o match:"test1: hello, world" cat "${logfile}" + syslogd_check_log "test1: hello, world" syslogd_log_jail syslogd_client \ -h 169.254.0.3 -P $SYSLOGD_UDP_PORT -p mail.debug -t test2 "you've got mail" - atf_check -o match:"test2: you've got mail" cat "${logfile}" + syslogd_check_log "test2: you've got mail" syslogd_log_jail syslogd_client \ -h 169.254.0.3 -P $SYSLOGD_UDP_PORT -p ftp.debug -t test3 "transfer complete" - atf_check -o match:"test3: transfer complete" cat "${logfile}" + syslogd_check_log "test3: transfer complete" } forward_cleanup() { diff --git a/usr.sbin/syslogd/tests/syslogd_test_common.sh b/usr.sbin/syslogd/tests/syslogd_test_common.sh index 87e9080d99ca..a4aea07f8528 100644 --- a/usr.sbin/syslogd/tests/syslogd_test_common.sh +++ b/usr.sbin/syslogd/tests/syslogd_test_common.sh @@ -15,6 +15,7 @@ readonly SYSLOGD_CONFIG="${PWD}/syslog.conf" readonly SYSLOGD_LOCAL_SOCKET="${PWD}/log.sock" readonly SYSLOGD_PIDFILE="${PWD}/syslogd.pid" readonly SYSLOGD_LOCAL_PRIVSOCKET="${PWD}/logpriv.sock" +readonly SYSLOGD_LOGFILE="${PWD}/log" # Start a private syslogd instance. syslogd_start() @@ -83,6 +84,11 @@ syslogd_start() & # Give syslogd a bit of time to spin up. + if grep -q "[[:space:]]${SYSLOGD_LOGFILE}$" "${conf_file:-${SYSLOGD_CONFIG}}"; then + while [ ! -f "${SYSLOGD_LOGFILE}" ]; do + sleep 0.1 + done + fi while [ "$((i+=1))" -le 20 ]; do [ -S "${socket:-${SYSLOGD_LOCAL_SOCKET}}" ] && return sleep 0.1 @@ -106,7 +112,9 @@ syslogd_log_jail() # Make syslogd reload its configuration file. syslogd_reload() { + atf_check truncate -s 0 ${SYSLOGD_LOGFILE} atf_check pkill -HUP -F "${1:-${SYSLOGD_PIDFILE}}" + sleep 0.1 } # Stop a private syslogd instance. @@ -165,3 +173,28 @@ syslogd_cleanup() ifconfig $(cat epair) destroy fi } + +# Check the last entry in the log file for a given message. +syslogd_check_log_nopoll() +{ + local msg=$1 + + atf_check -o match:"${msg}" tail -n 1 "${SYSLOGD_LOGFILE}" +} + +# Same as above, but first wait for syslogd to write to the log file. +syslogd_check_log() +{ + local msg=$1 + + atf_check -r 10 -o match:"${msg}" tail -n 1 "${SYSLOGD_LOGFILE}" +} + +# Make sure no log entry matching the given message exists. +syslogd_check_log_nomatch() +{ + local msg=$1 + + sleep 0.5 + atf_check -o not-match:"${msg}" cat "${SYSLOGD_LOGFILE}" +} From nobody Thu Jan 22 17:17:57 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxnnd2pt2z6Q4Qf for ; Thu, 22 Jan 2026 17:17: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxnnd0xLqz3f72 for ; Thu, 22 Jan 2026 17:17:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769102277; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hk4Ge8N5nilOyGa+gKX9srKUsE5v0P4vd0W5YP37a3Y=; b=mRIeFwkSj/qg/58PWkwkr9ydCHa0dtNG1RjUTOOMbrHX/WYLkkteKKA7F9NUo5ZPQykjfQ TaNYp3LqJJAYeiu6kOGif8pD+fv9TkYRHXWcRXB4pPvnXSpFFo+4wceaClCJqcYRoXdvA2 ikyzG+7K8VPUtP4/CFKgmSXJ1J8Gk/SRI9GkW1ie4PUUUVVDWTEIFilM+1WBkIvIfn3zV4 fCwD6vdQAExwvAaBsrxvnVAg8B02Os2raYqA98mX0d3wzdyL5jNv1RDOKdSMqsGt0sL+/2 Mp/ckaxthOVx24t6lQ4ht5OUHvvd56NbCXYVEWFjMxVzXaD/LKh+vvmH8GmWdw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769102277; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hk4Ge8N5nilOyGa+gKX9srKUsE5v0P4vd0W5YP37a3Y=; b=Rb7Z8Ucqtj/HQr050pzQZ1rZ2y5Nyo2CuZeXWLBjCh+3eifqewlTE1sIffUx5bXhCW3Jjv QPcONkbVpSFVFF5ApI9oU6Xi7kVajEiP6urDYXs1f++Xq2O3fJqgKpItixJvJHKhD26FGL vjI7c7Lzi/sTTMn0oyXbjOwBKdtrHNoUBfpLMuavHM9eruaF8sWUZv1/062nKofg9ynUhx xCYmWz01jVXAp8eB2s6dItfCO3jvzgSvMesa3cVx2DY2V05N92DH4QjGXVg50qnkgcHKVJ PWsjYBSTxtfuEybfx+DP2iwCnccVFPDE4krSu+A07oRSyFCejxj28b/Pq6KMtA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769102277; a=rsa-sha256; cv=none; b=EnDucONeL3/tZ/rvlgNMxf3gy1oTXtEFdFr8jKVc3maXkP/cXdoRdzwpcJd+YpADxLXORY t2D5PpQxnD9wQXpUdh3yAVvfvRdk746HCFqhm7cPcPWXBU8Kwp4yM1PChYqVwiDOF16fp+ oWOav+3oDrDdQrlSmRn9ZPdUrBhJZMpqvD3tSdIU+6OOYjqsPwtTt5PlGyZo+YNL7qXnIy SGY4RB7uGi3AHgZH8AILcPBWzAaFiVTv+LLKeSwUeHfNGuDYmhaUVIDU5tgKNp5HMoihtf g2VWpQ+2MEAxZfx7d34fq/TUHMPAakLPHig8+gLwYUUhEe1QnbRCfqZIv7VZHA== 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 4dxnnd0T71zjk7 for ; Thu, 22 Jan 2026 17:17:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3a99d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 22 Jan 2026 17:17:57 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 92d251472edb - main - syslogd/tests: Improve loopback interface initialization List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 92d251472edba6c1c16a899797982251c585d706 Auto-Submitted: auto-generated Date: Thu, 22 Jan 2026 17:17:57 +0000 Message-Id: <69725bc5.3a99d.505b8c3f@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=92d251472edba6c1c16a899797982251c585d706 commit 92d251472edba6c1c16a899797982251c585d706 Author: Mark Johnston AuthorDate: 2026-01-22 15:51:42 +0000 Commit: Mark Johnston CommitDate: 2026-01-22 15:51:42 +0000 syslogd/tests: Improve loopback interface initialization - In syslogd_start(), assign the lo0 address in the specified jail. - Use the correct netmask. Reviewed by: jlduran MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D54799 --- usr.sbin/syslogd/tests/syslogd_test.sh | 4 ---- usr.sbin/syslogd/tests/syslogd_test_common.sh | 8 +++++--- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/usr.sbin/syslogd/tests/syslogd_test.sh b/usr.sbin/syslogd/tests/syslogd_test.sh index d43473eac12d..d4723b9e05b3 100644 --- a/usr.sbin/syslogd/tests/syslogd_test.sh +++ b/usr.sbin/syslogd/tests/syslogd_test.sh @@ -380,10 +380,8 @@ allowed_peer_test_setup() atf_check ifconfig ${epair}a vnet syslogd_allowed_peer atf_check ifconfig ${epair}b vnet syslogd_client atf_check jexec syslogd_allowed_peer ifconfig ${epair}a inet 169.254.0.1/16 - atf_check jexec syslogd_allowed_peer ifconfig lo0 inet 127.0.0.1/8 atf_check jexec syslogd_client ifconfig ${epair}b inet 169.254.0.2/16 atf_check jexec syslogd_client ifconfig ${epair}b alias 169.254.0.3/16 - atf_check jexec syslogd_client ifconfig lo0 inet 127.0.0.1/8 } allowed_peer_test_cleanup() @@ -529,12 +527,10 @@ forward_body() atf_check ifconfig ${epair}a vnet syslogd_server atf_check jexec syslogd_server ifconfig ${epair}a inet 169.254.0.1/16 atf_check jexec syslogd_server ifconfig ${epair}a alias 169.254.0.2/16 - atf_check jexec syslogd_server ifconfig lo0 inet 127.0.0.1/8 syslogd_mkjail syslogd_client vnet atf_check ifconfig ${epair}b vnet syslogd_client atf_check jexec syslogd_client ifconfig ${epair}b inet 169.254.0.3/16 - atf_check jexec syslogd_client ifconfig lo0 inet 127.0.0.1/8 cat <<__EOF__ > ./client_config user.debug @169.254.0.1 diff --git a/usr.sbin/syslogd/tests/syslogd_test_common.sh b/usr.sbin/syslogd/tests/syslogd_test_common.sh index a4aea07f8528..2f21137cf026 100644 --- a/usr.sbin/syslogd/tests/syslogd_test_common.sh +++ b/usr.sbin/syslogd/tests/syslogd_test_common.sh @@ -23,9 +23,6 @@ syslogd_start() local jail bind_arg conf_file pid_file socket privsocket local opt next other_args - # Setup loopback so we can deliver messages to ourself. - atf_check ifconfig lo0 inet 127.0.0.1/16 - OPTIND=1 while getopts ":b:f:j:P:p:S:" opt; do case "${opt}" in @@ -71,6 +68,11 @@ syslogd_start() esac done + # Setup loopback so we can deliver messages to ourself. + if [ $($jail sysctl -n security.jail.vnet) -ne 0 ]; then + atf_check $jail ifconfig lo0 inet 127.0.0.1/8 + fi + $jail syslogd \ ${bind_arg:--b :${SYSLOGD_UDP_PORT}} \ -C \ From nobody Thu Jan 22 17:17:58 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxnng21TJz6Q4YJ for ; Thu, 22 Jan 2026 17:17: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxnnf4Rqbz3fF4 for ; Thu, 22 Jan 2026 17:17:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769102278; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OMATC7mnO0otYXpiGOtNxsibzMHICGw1EX2KVnqc/34=; b=S8xmIY1KJL0KAtFa00vpmDhf424qnYsJkx4cvWx5kKWt3/GxJszwDDFV+as1O+mojZtv33 F92vvcUZBfjID6rmvzZM1SwR+Ztw8VgKtmMTRBKq2VVA+1jjCwLSIA621mpuMxQp1Eqmd7 ZlEQHM0U38hU79DBd7NsNdPX6al8z8rDFdS+GCrFUy4x12zFfl28TOfke+FU26eZYWLAGw 3KADcxVWwddAvP/cdqDOkCncnFaH7ZylkJZPahPduO6Gbj/WT3iw1K2j0sgaY+OYVgLEUl /h+dPXSzGvPg8Oes4niER0ly3QNar5O6sIlbJmi/bUqFsA8VlBFzyud6Io2G9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769102278; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OMATC7mnO0otYXpiGOtNxsibzMHICGw1EX2KVnqc/34=; b=Ek6V1fhJ440n6BB36wFAEGhDD061hFPiprPtdSwVxIw0sJw+VJsi+8XYNhWncR7YhUOnKS RblA3ih4JWyhMS/khhrtxzN/kAO4MGZr4EIfAagKRe53HjwAcCtzrmpCkgfK9MTnc4Ehte LsWabwUItnQbVgNrI7MPsK3uZfEmJJP5oQwISbA2QlCn/mixLxDpL/dfbJuz1K4S9v7BH/ ewOPJwWnCPFcbQbJbP+w4do/lJbSP1eT74Udo3F19cbUoXri/6BVjGHp29e5h6cA749jC/ jqgE9w7hUheAScvdEnnOIPaeW6gruPqndvo361AwDak5Pr9c/edhd8MpexfQfg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769102278; a=rsa-sha256; cv=none; b=ZxJZHLteZeJ3TVchOv+LeZmhQdozZTNbGP5paaTMeEuMBoUnrqPgqW7L1HgbZWyZPY/c6n iYLoFO5Lz9aC8kqZ4rEQ+TbV9S7uftvdsgtvKwYMqeeh0//wxb3OXKtVrTYvDgOssvM0nG ieGKn2Rrf6yUYYvw9QsIZdhIwi1xODDmbus6LKBWYm34kQY6DbmEbPbnpxBqozE0gGULPX EJkt0SyLeFGGvOfb3WN3srBqenvZU1n0trh6+A3ixhw3/vQKH+UDTKZxQ+M3/0RqcO/ilw Kqk6aDiFAa1FyzGQBjEi5g3NCvmc+dd5z+iagzq4pUIC0BNBYUBp+dP9kkbqQA== 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 4dxnnf19vSzjk8 for ; Thu, 22 Jan 2026 17:17:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3a34c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 22 Jan 2026 17:17:58 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 14dce731d706 - main - syslogd/tests: Fix flakiness in forwarding tests List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 14dce731d70686e08ed689729f53c6a5e2225498 Auto-Submitted: auto-generated Date: Thu, 22 Jan 2026 17:17:58 +0000 Message-Id: <69725bc6.3a34c.90c1bb0@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=14dce731d70686e08ed689729f53c6a5e2225498 commit 14dce731d70686e08ed689729f53c6a5e2225498 Author: Mark Johnston AuthorDate: 2026-01-22 15:52:00 +0000 Commit: Mark Johnston CommitDate: 2026-01-22 15:52:00 +0000 syslogd/tests: Fix flakiness in forwarding tests syslogd_start() waits for the local log socket to appear before returning, to ensure that the daemon is ready to handle log messages. Some tests start two daemons, so by default the socket already exists when the second daemon is started, so syslogd_start() returns early. The test subsequently sends a message to this second daemon, which sometimes isn't ready. Define a separate log socket for the second daemon. Add a check to syslogd_start() to help catch this type of bug. Reviewed by: jlduran MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D54800 --- usr.sbin/syslogd/tests/syslogd_test.sh | 8 +++++--- usr.sbin/syslogd/tests/syslogd_test_common.sh | 9 +++++++-- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/usr.sbin/syslogd/tests/syslogd_test.sh b/usr.sbin/syslogd/tests/syslogd_test.sh index d4723b9e05b3..1f235c476c49 100644 --- a/usr.sbin/syslogd/tests/syslogd_test.sh +++ b/usr.sbin/syslogd/tests/syslogd_test.sh @@ -452,7 +452,7 @@ allowed_peer_forwarding_body() printf "+169.254.0.2\nuser.debug\t${SYSLOGD_LOGFILE}\n" > "${SYSLOGD_CONFIG}" syslogd_start -j syslogd_allowed_peer -P ${SYSLOGD_PIDFILE}.2 \ - -b 169.254.0.1:514 -a 169.254.0.2/32 + -b 169.254.0.1:514 -a 169.254.0.2/32 -p ${PWD}/peer # A message forwarded to 169.254.0.1:514 should be logged, but one # forwarded to 169.254.0.1:515 should not. @@ -544,8 +544,10 @@ mail.debug ${SYSLOGD_LOGFILE} ftp.debug ${SYSLOGD_LOGFILE} __EOF__ - syslogd_start -j syslogd_server -f ${PWD}/server_config -b 169.254.0.1 -b 169.254.0.2 - syslogd_start -j syslogd_client -f ${PWD}/client_config -P ${SYSLOGD_PIDFILE}.2 + syslogd_start -j syslogd_server -f ${PWD}/server_config \ + -b 169.254.0.1 -b 169.254.0.2 + syslogd_start -j syslogd_client -f ${PWD}/client_config \ + -p ${PWD}/client -P ${SYSLOGD_PIDFILE}.2 syslogd_log_jail syslogd_client \ -h 169.254.0.3 -P $SYSLOGD_UDP_PORT -p user.debug -t test1 "hello, world" diff --git a/usr.sbin/syslogd/tests/syslogd_test_common.sh b/usr.sbin/syslogd/tests/syslogd_test_common.sh index 2f21137cf026..47fca62e66d0 100644 --- a/usr.sbin/syslogd/tests/syslogd_test_common.sh +++ b/usr.sbin/syslogd/tests/syslogd_test_common.sh @@ -68,6 +68,11 @@ syslogd_start() esac done + socket=${socket:-${SYSLOGD_LOCAL_SOCKET}} + if [ -S "${socket}" ]; then + atf_fail "socket ${socket} already exists" + fi + # Setup loopback so we can deliver messages to ourself. if [ $($jail sysctl -n security.jail.vnet) -ne 0 ]; then atf_check $jail ifconfig lo0 inet 127.0.0.1/8 @@ -80,7 +85,7 @@ syslogd_start() -f "${conf_file:-${SYSLOGD_CONFIG}}" \ -H \ -P "${pid_file:-${SYSLOGD_PIDFILE}}" \ - -p "${socket:-${SYSLOGD_LOCAL_SOCKET}}" \ + -p "${socket}" \ -S "${privsocket:-${SYSLOGD_LOCAL_PRIVSOCKET}}" \ ${other_args} \ & @@ -92,7 +97,7 @@ syslogd_start() done fi while [ "$((i+=1))" -le 20 ]; do - [ -S "${socket:-${SYSLOGD_LOCAL_SOCKET}}" ] && return + [ -S "${socket}" ] && return sleep 0.1 done atf_fail "timed out waiting for syslogd to start" From nobody Thu Jan 22 18:16:56 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxq5h5RK1z6Q7rD for ; Thu, 22 Jan 2026 18:16: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxq5h2XPQz3pWq for ; Thu, 22 Jan 2026 18:16:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769105816; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DGKElnf1k0LQikzn83PDm+djwnLfb12xgRAi8LI3x7I=; b=KIPj0TKs2/8HS6EZdyb8PjRBZXlamf5BBedYXLsZsRyv8HAVflv2zqP7yWdBzs4HcqLtDQ dFzUmCe7lovyOlNhRTWXaz5BJ2L5FcOdvc+etQyFaoqCZmbAtgcwQzpGrsDI16rJg4aYET 7Nan6/P8nu9AlYC0kecGrKk+0BKPjqlN0gogUcl8ZrruRvvRGh/DiVb9tQgA3o3P2cYEMi MBpAH7jlQ9HogvijrXVbGoV2NX5yjZFDb91QZSmG3BK659UGXQ2wSwYYF2qwhVnTbWEFSO 6KqJvMaXIk8dVXxM35ZfdYm35OMUXXlyBWRLHSEDTQ4T891HEryCsqwH9AUxCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769105816; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DGKElnf1k0LQikzn83PDm+djwnLfb12xgRAi8LI3x7I=; b=X9cTzI2Cr0ZgVIz5A9hCaqS0Ar4OOnuTBsGtt9hHp469gAEhOpHOvC706Jv4kGXNPlV8UE Za52cMit5WnZmMNV+oyuAg0RHZMSly0wK+twTKX/4TAKDLBKSxRLa/CvtuelAvU5dXa/S6 tcLiVTwEn3/nL+iD8Py3DIWxXGx90PUFS+bI0hO3ZRFYj/6BNIMWY3oaV5m0INcRiIW0x5 q8+flWB0aJAe2Hk+/Nd2vOZiKPun+7+ZHSVrTEx5COVTKGexTOyEJ/SxHWmccHPqUt8aKJ Qy7pftVIA01o5w8MWdCojH2beSJ5UtFf7NcDy9BM73thWDmcD38lcSYYeJuyMQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769105816; a=rsa-sha256; cv=none; b=BHiKLH71272Dffh/nXlo+5fc6QJfvT5FeQ18Npj/QarOFYDuuuvnKF4GsT76FrSJa+/IUg hrcySjq6t2gVMjliQvz/XY/VooEXOHxdDXUmbu8ZJ3P1YU/cGyFCd4AcIjrgkhT4og/LFj MWqQTk9wbCcSoFI+hNUsiQkTdkpNJk6PxeI+wRUfnKSLKCOiCjiAzrcPOYT7zbOZEMDFRE 30a/yjfdUwKx+hXl0Yd6Nl79TyxHSHDzHYV0g020KWpRoSbFj0yqY2yF3DJT23CYCs+WRG UEkB4NqkvQL8JyuclGD34iBEeYR2Uaz04Fc2iaF9GAE0/0A3rRq42nHCT1iG2g== 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 4dxq5h1G0NzkV6 for ; Thu, 22 Jan 2026 18:16:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3f637 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 22 Jan 2026 18:16:56 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling=?utf-8?Q? Sm=C3=B8rg?=rav Subject: git: 4b9620433855 - main - mdmfs: Fix soft updates logic List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 4b9620433855b75989164c1a8a8a2e1a9b5fbff2 Auto-Submitted: auto-generated Date: Thu, 22 Jan 2026 18:16:56 +0000 Message-Id: <69726998.3f637.1ee0b78f@gitrepo.freebsd.org> The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=4b9620433855b75989164c1a8a8a2e1a9b5fbff2 commit 4b9620433855b75989164c1a8a8a2e1a9b5fbff2 Author: Dag-Erling Smørgrav AuthorDate: 2026-01-22 18:16:37 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2026-01-22 18:16:45 +0000 mdmfs: Fix soft updates logic Now that newfs(8) has a command-line argument to disable soft updates, use that instead of running tunefs(8) after the fact to turn them off. MFC after: 1 week Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Reviewed by: mckusick, imp Differential Revision: https://reviews.freebsd.org/D54783 --- sbin/mdmfs/mdmfs.c | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/sbin/mdmfs/mdmfs.c b/sbin/mdmfs/mdmfs.c index 69149b3fb465..cd0bf7c96143 100644 --- a/sbin/mdmfs/mdmfs.c +++ b/sbin/mdmfs/mdmfs.c @@ -104,7 +104,7 @@ main(int argc, char **argv) bool detach, softdep, autounit, newfs; const char *mtpoint, *size_arg, *skel, *unitstr; char *p; - int ch, idx, rv; + int ch, idx; void *set; unsigned long ul; @@ -343,8 +343,7 @@ main(int argc, char **argv) if (!have_mdtype) mdtype = MD_SWAP; - if (softdep) - argappend(&newfs_arg, "-U"); + argappend(&newfs_arg, softdep ? "-U" : "-u"); if (mdtype != MD_VNODE && !newfs) errx(1, "-P requires a vnode-backed disk"); @@ -357,13 +356,6 @@ main(int argc, char **argv) do_mdconfig_attach(mdconfig_arg, mdtype); if (newfs) do_newfs(newfs_arg); - if (!softdep) { - rv = run(NULL, "%s %s /dev/%s%d", _PATH_TUNEFS, - "-n disable", mdname, unit); - if (rv) - errx(1, "tunefs exited %s %d", run_exitstr(rv), - run_exitnumber(rv)); - } do_mount_md(mount_arg, mtpoint); } From nobody Thu Jan 22 19:09:42 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxrGZ67cdz6QBjX for ; Thu, 22 Jan 2026 19:09: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxrGZ49D0z3xfv for ; Thu, 22 Jan 2026 19:09:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769108982; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1rs6P6ivYyX0CKaceqdbfA3oiKBWyr8EHwJNu+gL2/U=; b=kG6uOwzZIP5VZqb9DpYvK4TEmUbqEcIPwW+9/hIg4jDsBdosEcKU8Sd/G1hLPFYXYSYV3+ ZhHdUyI7/8pjo6Im2Hboc2/Aif3F786NyJugsivUgSOjVAA0dJJiqwgUc2bSuDwv5rEGzB tfMboZ6eLwifw55M2GH1Dtr4qL1pC/GoELBIDh9SKYcCscsz3WA9+9RNXYQtcW5QvZUWcK W0uImVJYyYauBzxDq+uQJnBvA5tj3SkCMUPDQafSd95g7biDdgYcoRAIGBqPNS54CPJQMc LK8Xnc4j50OXN2krFMunlZ4fPI5kK0OU+8CpK2pRmO430KrQPs1nOEtsbhkcJw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769108982; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1rs6P6ivYyX0CKaceqdbfA3oiKBWyr8EHwJNu+gL2/U=; b=BVts2bNq4qd6iSNnF1Q8OqfVzQ63pRxEtPBjB8pqEhcKrpL7dhCNM9vwzeCWKlyw68je7k LIQx01JZdWJdSEfNoR5ZquxFCahe0pr87VQozPNAtgTU7bl1BtqHSZPlALwMaQthzr2Wse +TdEHfV9Dh3gXE4U88MS47amLPBabAJO0TkpLUhwoBWfWn4UiwK2jOfcHFFFBB8xtYuy2Q hZVL3XIz/qR37K7QNnCXIKzZS6lOEGoNsJyQqW/jNX67dDYGlbs271uxnCVkus3ze0Y+IC HiKQxEafKcbdINbmU9KH/ochNalifJyDvmAF+4iRdgnd5OTZnzKlIEQSqEKzIw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769108982; a=rsa-sha256; cv=none; b=yQ7fYbsN833w6rU8otaEDeOR7QYAF5Te3npbDliz5ZYgsLr1wLvL45QJCZ+dVr8eenMz31 Y9uHNA07VsxGy2Bk0R4oOGTzkSa8MA4cRhwsjXaB7FeHvclMFQSRlRymkPQsNX0CbAaCU5 wI/eHqWdBK+pusbW6ctZDrdeYeFfOvSrmmrOJJTKF+AFHgY7BOxr/dzERMHUXTrrMRjLl8 kW4dQHvBNReCevLqMM6OJoF8ZB6wwdebJirDzoyXU32MGtx5Wk3K9qnqNQYTQMKytS8c/g t9n/eKZHZPagAd7WnTp7m6CqG9m596sS08YU5gTA0uul8VfG8Bi86M9kGhroLQ== 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 4dxrGZ2yMbzmKY for ; Thu, 22 Jan 2026 19:09:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 9b6e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 22 Jan 2026 19:09:42 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 2b1db07bec92 - main - x86: add machine/ifunc.h List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 2b1db07bec92e9447e6574a74366d4dd606e80a6 Auto-Submitted: auto-generated Date: Thu, 22 Jan 2026 19:09:42 +0000 Message-Id: <697275f6.9b6e.4ba32b9a@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=2b1db07bec92e9447e6574a74366d4dd606e80a6 commit 2b1db07bec92e9447e6574a74366d4dd606e80a6 Author: Konstantin Belousov AuthorDate: 2026-01-22 05:08:30 +0000 Commit: Konstantin Belousov CommitDate: 2026-01-22 19:09:21 +0000 x86: add machine/ifunc.h Sponsored by: The FreeBSD Foundation MFC after: 1 week --- sys/amd64/include/ifunc.h | 5 +++++ sys/i386/include/ifunc.h | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/sys/amd64/include/ifunc.h b/sys/amd64/include/ifunc.h new file mode 100644 index 000000000000..1af46757b836 --- /dev/null +++ b/sys/amd64/include/ifunc.h @@ -0,0 +1,5 @@ +/* + * This file is in the public domain. + */ + +#include diff --git a/sys/i386/include/ifunc.h b/sys/i386/include/ifunc.h new file mode 100644 index 000000000000..1af46757b836 --- /dev/null +++ b/sys/i386/include/ifunc.h @@ -0,0 +1,5 @@ +/* + * This file is in the public domain. + */ + +#include From nobody Thu Jan 22 19:09:43 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxrGc0h8Kz6QBg1 for ; Thu, 22 Jan 2026 19:09: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxrGb3c73z3xqt for ; Thu, 22 Jan 2026 19:09:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769108983; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=69OdUQYLyAJrO4NS9NdfAOKcASiDT8Xep0anhm7Hj2s=; b=faS2x4pyFlMg2634Oj5q5MToexWMt3JAUE4Kzy3MdLOgo2mdBbhLPj3r5tEQ6eAQ92YJHa IxgmAQVp+Jp2aPjwbQklebcSad+XyvUlpmYHlpKG4DcOYBgRgNjMjVHOA0tJ1YXbfSEJtk 59feclHt7YH/HqeO5ltc1LtXLWYlShqZX+S5islSftHjFseOPHNEdCLrsAOI3GIikKyp5t KRsqsZZPMSTfcLm2jqMqD9ysSlSLk8d6d37w+WNuVf2rJ4B2/91FFQKjRnwkKvwSTg5fYU H7fTuKG8SWJWQUE7aqvpEgPxE0aS8t03+TLvDwZGGgRS2vLhO9qXOV0gXi6f/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769108983; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=69OdUQYLyAJrO4NS9NdfAOKcASiDT8Xep0anhm7Hj2s=; b=SGydIuk2y1XpS61g5OPW/sqIzdK/rMOxhSamrkzxlywBVdtr/lOhkWdABv9Vqq21ggDnP+ 1tix+1WsdfriGjYgZBx/qPzwneEyh6P3yQl8M5b/6OcK/d5sQjlUhM0WPaVPkNZo4yvHc0 LggYLaa8qGVmwLEQAjJd1ZKPYLsEtFL2lE6PLkxRzXO6JklRlBr+e736OrX11EIeNNNxu9 Pr3wRIckbe9p8594S5WCt9T1PGVM0inNalzGk83ThiR2LsCCmGU3m6kPLfDiHdqRL7H04k gFvVgsmZFaPDI9eNKfuMe4kmIdMXGAYP4UWu2N/m9sWOvwFb1ulPv2ogzsADRw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769108983; a=rsa-sha256; cv=none; b=qcaC7gjJ90779Z20fVXMWdEhjIIhLRgQprL1/SGVcsTa6GjEslLXhbsa83E4WTElHAw0Is RrfDZh4g92kaaGFH9mIDOK0f21ETsmxVoYKje0u7UFaZLG2xxPuXrDq0CeKaIAojuXdKJQ mCi2962T1y1aVDgriteVJ8aiW68Es8Jloie0A9ZIdNS1UKUJ1Ff+SGlIoge7uq5Ngk3tM4 xvWb12I0+79xneO/4ryihf9SL7C9oYeHJrdYkHVgpSqEKm5CvvyppghkzPKctxMf4zvOqe g9eZFVgQaiLnro3YGEA9WLM/LiYPK2ua4NSwRTBmV63spXpTqxQb9FlEe9+xhw== 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 4dxrGb31CkzlyH for ; Thu, 22 Jan 2026 19:09:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id bd4c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 22 Jan 2026 19:09:43 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: dfc4186c6dcf - main - x86 lapic: Dump LVTs from the ddb show lapic command List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: dfc4186c6dcf2986b510fac108784011a236554d Auto-Submitted: auto-generated Date: Thu, 22 Jan 2026 19:09:43 +0000 Message-Id: <697275f7.bd4c.5a32280@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=dfc4186c6dcf2986b510fac108784011a236554d commit dfc4186c6dcf2986b510fac108784011a236554d Author: Konstantin Belousov AuthorDate: 2026-01-22 18:00:56 +0000 Commit: Konstantin Belousov CommitDate: 2026-01-22 19:09:21 +0000 x86 lapic: Dump LVTs from the ddb show lapic command Add description for each LVT element, use it in show lapic dump. Sponsored by: The FreeBSD Foundation MFC after: 1 week --- sys/x86/x86/local_apic.c | 40 ++++++++++++++++++++++++++++++++++------ 1 file changed, 34 insertions(+), 6 deletions(-) diff --git a/sys/x86/x86/local_apic.c b/sys/x86/x86/local_apic.c index b444142d5481..c5399984c896 100644 --- a/sys/x86/x86/local_apic.c +++ b/sys/x86/x86/local_apic.c @@ -129,6 +129,7 @@ struct lvt { u_int lvt_mode:16; u_int lvt_vector:8; u_int lvt_reg; + const char *lvt_desc; }; struct lapic { @@ -158,6 +159,7 @@ static struct lvt lvts[] = { .lvt_mode = APIC_LVT_DM_EXTINT, .lvt_vector = 0, .lvt_reg = LAPIC_LVT_LINT0, + .lvt_desc = "LINT0", }, /* LINT1: NMI */ [APIC_LVT_LINT1] = { @@ -168,6 +170,7 @@ static struct lvt lvts[] = { .lvt_mode = APIC_LVT_DM_NMI, .lvt_vector = 0, .lvt_reg = LAPIC_LVT_LINT1, + .lvt_desc = "LINT1", }, [APIC_LVT_TIMER] = { .lvt_edgetrigger = 1, @@ -177,6 +180,7 @@ static struct lvt lvts[] = { .lvt_mode = APIC_LVT_DM_FIXED, .lvt_vector = APIC_TIMER_INT, .lvt_reg = LAPIC_LVT_TIMER, + .lvt_desc = "TIMER", }, [APIC_LVT_ERROR] = { .lvt_edgetrigger = 1, @@ -186,6 +190,7 @@ static struct lvt lvts[] = { .lvt_mode = APIC_LVT_DM_FIXED, .lvt_vector = APIC_ERROR_INT, .lvt_reg = LAPIC_LVT_ERROR, + .lvt_desc = "ERROR", }, [APIC_LVT_PMC] = { .lvt_edgetrigger = 1, @@ -195,6 +200,7 @@ static struct lvt lvts[] = { .lvt_mode = APIC_LVT_DM_NMI, .lvt_vector = 0, .lvt_reg = LAPIC_LVT_PCINT, + .lvt_desc = "PMC", }, [APIC_LVT_THERMAL] = { .lvt_edgetrigger = 1, @@ -204,6 +210,7 @@ static struct lvt lvts[] = { .lvt_mode = APIC_LVT_DM_FIXED, .lvt_vector = APIC_THERMAL_INT, .lvt_reg = LAPIC_LVT_THERMAL, + .lvt_desc = "THERM", }, [APIC_LVT_CMCI] = { .lvt_edgetrigger = 1, @@ -213,6 +220,7 @@ static struct lvt lvts[] = { .lvt_mode = APIC_LVT_DM_FIXED, .lvt_vector = APIC_CMC_INT, .lvt_reg = LAPIC_LVT_CMCI, + .lvt_desc = "CMCI", }, }; @@ -226,6 +234,7 @@ static struct lvt elvts[] = { .lvt_mode = APIC_LVT_DM_FIXED, .lvt_vector = 0, .lvt_reg = LAPIC_EXT_LVT0, + .lvt_desc = "ELVT0", }, [APIC_ELVT_MCA] = { .lvt_edgetrigger = 1, @@ -235,6 +244,7 @@ static struct lvt elvts[] = { .lvt_mode = APIC_LVT_DM_FIXED, .lvt_vector = APIC_CMC_INT, .lvt_reg = LAPIC_EXT_LVT1, + .lvt_desc = "MCA", }, [APIC_ELVT_DEI] = { .lvt_edgetrigger = 1, @@ -244,6 +254,7 @@ static struct lvt elvts[] = { .lvt_mode = APIC_LVT_DM_FIXED, .lvt_vector = 0, .lvt_reg = LAPIC_EXT_LVT2, + .lvt_desc = "ELVT2", }, [APIC_ELVT_SBI] = { .lvt_edgetrigger = 1, @@ -253,6 +264,7 @@ static struct lvt elvts[] = { .lvt_mode = APIC_LVT_DM_FIXED, .lvt_vector = 0, .lvt_reg = LAPIC_EXT_LVT3, + .lvt_desc = "ELVT3", }, }; @@ -1890,18 +1902,34 @@ dump_mask(const char *prefix, uint32_t v, int base) /* Show info from the lapic regs for this CPU. */ DB_SHOW_COMMAND_FLAGS(lapic, db_show_lapic, DB_CMD_MEMSAFE) { - uint32_t v; + const struct lvt *l; + int elvt_count, lvts_count, i; + uint32_t v, vr; db_printf("lapic ID = %d\n", lapic_id()); v = lapic_read32(LAPIC_VERSION); - db_printf("version = %d.%d\n", (v & APIC_VER_VERSION) >> 4, - v & 0xf); + db_printf("version = %d.%d (%#x) \n", (v & APIC_VER_VERSION) >> 4, + v & 0xf, v); db_printf("max LVT = %d\n", lapic_maxlvt(v)); - v = lapic_read32(LAPIC_SVR); - db_printf("SVR = %02x (%s)\n", v & APIC_SVR_VECTOR, - v & APIC_SVR_ENABLE ? "enabled" : "disabled"); + vr = lapic_read32(LAPIC_SVR); + db_printf("SVR = %02x (%s)\n", vr & APIC_SVR_VECTOR, + vr & APIC_SVR_ENABLE ? "enabled" : "disabled"); db_printf("TPR = %02x\n", lapic_read32(LAPIC_TPR)); + lvts_count = min(nitems(lvts), lapic_maxlvt(v) + 1); + for (i = 0; i < lvts_count; i++) { + l = &lvts[i]; + db_printf("LVT%d (reg %#x %-5s) = %#010x\n", i, l->lvt_reg, + l->lvt_desc, lapic_read32(l->lvt_reg)); + } + + elvt_count = amd_read_elvt_count(); + for (i = 0; i < elvt_count; i++) { + l = &elvts[i]; + db_printf("ELVT%d (reg %#x %-5s) = %#010x\n", i, l->lvt_reg, + l->lvt_desc, lapic_read32(l->lvt_reg)); + } + #define dump_field(prefix, regn, index) \ dump_mask(__XSTRING(prefix ## index), \ lapic_read32(LAPIC_ ## regn ## index), \ From nobody Thu Jan 22 19:50:47 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dxs9z4XHJz6QDj4 for ; Thu, 22 Jan 2026 19:50: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dxs9z27g5z46nX for ; Thu, 22 Jan 2026 19:50:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769111447; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0kJiaCEIcGVfA1WCwvf92bx4Qmmj/TOlOWdiaShX4NM=; b=GTCk/MVuxVxcV4gTJfRADt8hkblFg/nlMOt2v/1I7JmwNYtLp7CMfXDlURXbQYivLW2WVb UBvDrE8IbB9TL642H1gIdTLisFCTyIqNRt5n0VX3GEIncADlYcdWjbxM6T1u/xOJ2p0N/W WCrk6nk/PftJYjn1tVIXDDFKk2W+VRGW6SF2ytjv03uvHbrciofqFJ4OFS3UAa1WVksLiZ RnAgzD9TAAJHOmMpv53FAIRiQSMwLa+coyPE5x6JTnXIJJ8DH7LWXc1LVAXsb5F8hyx9sV qoSkaPE4XXW/cqNQEFrQxZOc4aK7zVRQqmx2zBvSvyRH6U2jUupmOk+vxqMp9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769111447; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0kJiaCEIcGVfA1WCwvf92bx4Qmmj/TOlOWdiaShX4NM=; b=CTr9eyTSYI6oAlCp8+ySUKyyY9pTlXAPWjSBRBIxF6bstYLchywi+s/gKXfIbc6KWAj5hz xuQtIANuuVdvEX1KpKygdpe73KsDyhszY08hOaYdmI/J64aiA7YmqknQpRKa5cFfkTEsIf 3I+59R9+M+inUxA5QlUJWpSgAsH02wWoI+zPT9DrL9tGnyrB+xgaKJ7zR4YtY/leIy0uJO XDRJd9JlKyF6aJ39UrKjvqeNJyQEf242rrEwHbeHbZntWz7qRvSXr3OFidrYM+NeSlLNSh 5OfDsFHfwp83ySQ4An4pB0Wsd8K3MsjeOqCN2+hoY3srPsT+Owl7QU1AEc4W8Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769111447; a=rsa-sha256; cv=none; b=cOTQ2I6Bus10gh4qCizVSGWZLRG2mANxUBJuA7AulC0MJbGtW95r/nn90Va2XSlXdgrk8o 51FrA0Y11Aw25TfuY8E6KYOhVDvEXlDctPKBqqpefuNOj83EkVFhb9vsUrYtAcs053LanU Qely0C5LLwY14F0ACD8fDrN3nnY1I+QSubhdFXkt1IAsRvfqHMvSyC2qXnKsvPfYQ0e2A0 PZZIoYDagiHxrbirFhjErGAtAOFyzhwgdi/yiLIJhzn6L2UK1Xo6Dc7CObFcITTE9n+XMH 7MEfG54Ax/5AScB0TJdINXBGf76dIfExDSxn3tD14sXi+7JNCOT+sbnmaxBNhw== 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 4dxs9z1h1nznWH for ; Thu, 22 Jan 2026 19:50:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 21b85 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 22 Jan 2026 19:50:47 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Siva Mahadevan Subject: git: 8352e24d0bc5 - main - tests/ktest_netlink_message_writer: remove INVARIANTS requirement List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: siva X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8352e24d0bc59f9730980986600bde7d8cdce21d Auto-Submitted: auto-generated Date: Thu, 22 Jan 2026 19:50:47 +0000 Message-Id: <69727f97.21b85.7e8c5cdb@gitrepo.freebsd.org> The branch main has been updated by siva: URL: https://cgit.FreeBSD.org/src/commit/?id=8352e24d0bc59f9730980986600bde7d8cdce21d commit 8352e24d0bc59f9730980986600bde7d8cdce21d Author: Siva Mahadevan AuthorDate: 2026-01-22 19:49:51 +0000 Commit: Siva Mahadevan CommitDate: 2026-01-22 19:49:51 +0000 tests/ktest_netlink_message_writer: remove INVARIANTS requirement INVARIANTS is meant to be used to enable extra sanity checking for internal structures, not enable/disable tests in the freebsd kyua test suite. STABLE branches include a GENERIC kernconf without INVARIANTS, so ktest_netlink_message_writer is broken on such branches: https://ci.freebsd.org/job/FreeBSD-stable-15-amd64-test/253/testReport/sys.netlink.test_netlink_message_writer/py/__test_cases_list__/ Reviewed by: lwhsu, imp Approved by: lwhsu (mentor) Pull Request: https://github.com/freebsd/freebsd-src/pull/1889 MFC after: 3 days Signed-off-by: Siva Mahadevan Sponsored by: The FreeBSD Foundation --- sys/netlink/ktest_netlink_message_writer.c | 5 ----- sys/netlink/ktest_netlink_message_writer.h | 2 +- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/sys/netlink/ktest_netlink_message_writer.c b/sys/netlink/ktest_netlink_message_writer.c index 805f52197f69..0e8b962bbd34 100644 --- a/sys/netlink/ktest_netlink_message_writer.c +++ b/sys/netlink/ktest_netlink_message_writer.c @@ -37,8 +37,6 @@ #define KTEST_CALLER #include -#ifdef INVARIANTS - struct test_nlbuf_attrs { uint32_t size; uint32_t expected_avail; @@ -98,16 +96,13 @@ test_nlbuf_writer_allocation(struct ktest_test_context *ctx) return (0); } -#endif static const struct ktest_test_info tests[] = { -#ifdef INVARIANTS { .name = "test_nlbuf_writer_allocation", .desc = "test different buffer sizes in the netlink writer", .func = &test_nlbuf_writer_allocation, .parse = &test_nlbuf_parser, }, -#endif }; KTEST_MODULE_DECLARE(ktest_netlink_message_writer, tests); diff --git a/sys/netlink/ktest_netlink_message_writer.h b/sys/netlink/ktest_netlink_message_writer.h index 447593e0e700..1abf0d48de95 100644 --- a/sys/netlink/ktest_netlink_message_writer.h +++ b/sys/netlink/ktest_netlink_message_writer.h @@ -28,7 +28,7 @@ #ifndef _NETLINK_KTEST_NETLINK_MESSAGE_WRITER_H_ #define _NETLINK_KTEST_NETLINK_MESSAGE_WRITER_H_ -#if defined(_KERNEL) && defined(INVARIANTS) +#if defined(_KERNEL) bool nlmsg_get_buf_wrapper(struct nl_writer *nw, size_t size, bool waitok); From nobody Fri Jan 23 08:00:09 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dy9MY4cDgz6PqM8 for ; Fri, 23 Jan 2026 08:00: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dy9MY3PNkz3HCd for ; Fri, 23 Jan 2026 08:00:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769155209; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WM02WunT/mN3Fm0Vhgx5jGF4Cgen81bjAA5h0DHXP5E=; b=XLxue6a9S3+bS/P4Zczcvcumbym8fT8a5dbHRrBXUEffdT2Z+S0xk++op8SbW22b9qrhpP 9PqRMtYVEixFNqL3DkTEAn7TbeaCacwWVsl9JmYMGFruIKDUQVTLFjKB5bUQE682WeP3Jb Tk02QcowiHG6wy7yUGYHvPgKVIYGrZ5UNCXNWy87NXvNCX5zzuoLje/2byvguWAziHbhMg hdsirImSrC4kZltatXeGtaR82+ztdDozouxKb8t4yHFMrYPWyDZ0v3mAOfUOUtKWS2sgO7 ACdidmB25D87gtpOOy6w9O51cf3PL+1/ticdWuqTqA90VqWYdUv8INzeT4Tz6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769155209; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WM02WunT/mN3Fm0Vhgx5jGF4Cgen81bjAA5h0DHXP5E=; b=U9LiBAecmnvrxcLZ3H/XaNNiuaqoEp5ZT4h0UojhHPmdRj5WMeF+ZReJhMl8Rds1NVRliW qOLvIAa1hfOTRsmTA08Bvkho6SLr8AJtVn+T84ZCeTkNAxXUif43WUc+A72ZX4sdsu51Um /vEJ+rofqW2BOVhdk2rIV/uzWoNWLrVxRQVIuFwZdClg7B/+Gnyyw614qRXoCnyuKB/imq SundBSBSXBLUDC8p/CgA1SbFIAQZdvA1pJg0MkAddItnIX2TDKuDtW/187+8+ZXPzYHi4j wbSk1uCo5N+XqzdAdBtO865uJaXeIGskDUWVD7pEBRSl/MjmCPo1YD1ClMNtyA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769155209; a=rsa-sha256; cv=none; b=nb7Oi20CeFE5eQ8NVsPP2na2dmfGSAGMIpAdflD1hm134nPGKZVBowAvKwGFZYiPvkX1UK YnlwJe8/dg0lFs/E/0vHfCrYG1QIQGEANJrjwvohkYekmZDhRBRh45wvj2sG+SEnGBKI47 R49QUGKM9rwwV8I5qBDOIL6c7e6u5xL9h2rHf2ONQmSt0xEG3YVp7yshOv7+vZ305DDHUY y5nw2s7DUbGvPn2gScNnucnjhPtHG+bw0BApxKr8NBR99A8VtdlVZP0D1et5YVFk3XDXjm ioRDjRO3zJFiPvK780wdNgJWOTlYBrWPLYpF8n9vue758/UjjlYVsAqUiuaJLQ== 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 4dy9MY318tz190Y for ; Fri, 23 Jan 2026 08:00:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 20f59 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 23 Jan 2026 08:00:09 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: f31336b3e314 - main - dpnaa2: announce transmit checksum support List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f31336b3e3146fed9cc517fef8e877c17496f9e0 Auto-Submitted: auto-generated Date: Fri, 23 Jan 2026 08:00:09 +0000 Message-Id: <69732a89.20f59.12971f05@gitrepo.freebsd.org> The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=f31336b3e3146fed9cc517fef8e877c17496f9e0 commit f31336b3e3146fed9cc517fef8e877c17496f9e0 Author: Michael Tuexen AuthorDate: 2026-01-23 07:59:57 +0000 Commit: Michael Tuexen CommitDate: 2026-01-23 07:59:57 +0000 dpnaa2: announce transmit checksum support Let the network stack know that the NIC supports checksum offloading for the IPv4 header checksum and the TCP and UDP transport checksum. This avoids the computation in software and therefore provides the expected performance gain. PR: 292006 Reviewed by: dsl, Timo Völker MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54809 --- sys/dev/dpaa2/dpaa2_ni.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/sys/dev/dpaa2/dpaa2_ni.c b/sys/dev/dpaa2/dpaa2_ni.c index eda5bab78bde..5f796e6e472b 100644 --- a/sys/dev/dpaa2/dpaa2_ni.c +++ b/sys/dev/dpaa2/dpaa2_ni.c @@ -220,6 +220,9 @@ MALLOC_DEFINE(M_DPAA2_TXB, "dpaa2_txb", "DPAA2 DMA-mapped buffer (Tx)"); #define RXH_L4_B_2_3 (1 << 7) /* dst port in case of TCP/UDP/SCTP */ #define RXH_DISCARD (1 << 31) +/* Transmit checksum offload */ +#define DPAA2_CSUM_TX_OFFLOAD (CSUM_IP | CSUM_DELAY_DATA | CSUM_DELAY_DATA_IPV6) + /* Default Rx hash options, set during attaching. */ #define DPAA2_RXH_DEFAULT (RXH_IP_SRC | RXH_IP_DST | RXH_L4_B_0_1 | RXH_L4_B_2_3) @@ -559,6 +562,7 @@ dpaa2_ni_attach(device_t dev) if_settransmitfn(ifp, dpaa2_ni_transmit); if_setqflushfn(ifp, dpaa2_ni_qflush); + if_sethwassist(sc->ifp, DPAA2_CSUM_TX_OFFLOAD); if_setcapabilities(ifp, IFCAP_VLAN_MTU | IFCAP_HWCSUM | IFCAP_HWCSUM_IPV6 | IFCAP_JUMBO_MTU); if_setcapenable(ifp, if_getcapabilities(ifp)); @@ -2600,8 +2604,10 @@ dpaa2_ni_ioctl(if_t ifp, u_long c, caddr_t data) changed = if_getcapenable(ifp) ^ ifr->ifr_reqcap; if ((changed & (IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6)) != 0) if_togglecapenable(ifp, IFCAP_RXCSUM | IFCAP_RXCSUM_IPV6); - if ((changed & (IFCAP_TXCSUM | IFCAP_TXCSUM_IPV6)) != 0) - if_togglecapenable(ifp, IFCAP_TXCSUM | IFCAP_TXCSUM_IPV6); + if ((changed & (IFCAP_TXCSUM | IFCAP_TXCSUM_IPV6)) != 0) { + if_togglecapenable(ifp, IFCAP_TXCSUM | IFCAP_TXCSUM_IPV6); + if_togglehwassist(ifp, DPAA2_CSUM_TX_OFFLOAD); + } rc = dpaa2_ni_setup_if_caps(sc); if (rc) { From nobody Fri Jan 23 11:07:28 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dyFWh4Tlrz6P3C5 for ; Fri, 23 Jan 2026 11:07: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dyFWh1MQ3z3Xnj for ; Fri, 23 Jan 2026 11:07:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769166448; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Q0oSXconJfFs7ECQ58/EnjDEjbGo2Kvp320wwMhPzg0=; b=Ul/0k3js4vn+0lNJWOucsFxbwJQffjSRFqggPwe1ZTRfPNmYWLPFEoIM6YaTBD8vqcH3LS fjxkNijNsZJ1uW4l+vuPcwWWhZYb9jml72exH4tlbFqo4g0H4GzrLodBslqLc5VnHzo5Cv GcV8RKgj49hn2toELzd1m95NEAN4lXXvYJMVhV99qEv3DRa+Fdz9Y+lLd1jn4/d2TF4ydS o4PKVfDLIeWe0BhH2UxdTretVOL3aZrhhdlHbTAHYPjy7M7jk0uCzsei+3s7YZILUJKd5H 2502QGwr50xmLGCNbH6zJWnhFoq34XK3c3H41CPtCmY3VpRdvzkIHFbJ9r+M9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769166448; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Q0oSXconJfFs7ECQ58/EnjDEjbGo2Kvp320wwMhPzg0=; b=m9l+eXf9lcmY4M/oERkyybR+E8zKBNVvze6KEC5C+CC+O54u1saWWaKVrmISbQWcBw3Ln3 +qfCYKwTuwIrHneQJPih7i5jFEQ2CcNX8p75mqrXreAjepPGicHnKEwvlv/mu8xpFJZ4y5 ttqWlYb3+PmBuciH7X12HlK2xPSWVJDExUsFIhuK3fhBxaJlwqZXLLNCP1NAC3MerAXSnV 9yLKbxv8SCKvm1msfKOcSTUW4sN8CiQMI5LnRdqeSP6mPlBe/VhN8P8eEDODRKx1SwWvxP tdS5Tp7Aj/nZu65xdKS5vNj0jC+oVSbQQ0w3YoQamVcP/S9OzBpd51Cugdr2Lg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769166448; a=rsa-sha256; cv=none; b=Ifg2UYQXxf5JFWwQyMb7qit3kOdr2+JcpSPzCwtuvEITA8EOUGk240D2inXvshHGG4+FPu vHUsttUxFJGboMRhyD2ElSUc6LFN5QCa51AHsBsJbOxvK9y/ez1yfQ4y91Usv3mqryIh+N VwpbJg6pyuz4h28xbA467L67YN610jfGzWYRCoz1cKmH1Y3FYGvtQF9KwkjtskRRxaH5mq WH3mXYkEJKpCEJKgEaaOUaoWyi5RV8qI+VYMszyToy4lz8VjhbUkZr1x9ztwLJE5lxvfYI 2d84D+pcToQLHgHx0lDx7BD7RyyW+HZ2hKXpdCjQyU5HsEyAlN9aBT4xW3RgrA== 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 4dyFWh0vtdz1Zx for ; Fri, 23 Jan 2026 11:07:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3a7ab by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 23 Jan 2026 11:07:28 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: e17d7ab869bb - main - xdr_string: don't leak strings with xdr_free List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e17d7ab869bbfe3fa5a7da4b74d9f4fa51a0d69f Auto-Submitted: auto-generated Date: Fri, 23 Jan 2026 11:07:28 +0000 Message-Id: <69735670.3a7ab.5637ae5a@gitrepo.freebsd.org> The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=e17d7ab869bbfe3fa5a7da4b74d9f4fa51a0d69f commit e17d7ab869bbfe3fa5a7da4b74d9f4fa51a0d69f Author: Brooks Davis AuthorDate: 2026-01-23 10:35:55 +0000 Commit: Brooks Davis CommitDate: 2026-01-23 10:35:55 +0000 xdr_string: don't leak strings with xdr_free Historically (and in a small amount of older software such as OpenAFS), developers would attempt to free XDR strings with xdr_free((xdrproc_t)xdr_string, &string) This resulted in xdr_free calling xdr_string with only two intentional arguments and whatever was left in the third argument register. If the register held a sufficently small number, xdr_string would return FALSE and not free the string (no one checks the return values). Software should instead free strings with: xdr_free((xdrproc_t)xdr_wrapstring, &string) Because buggy software exists in the wild, act as though xdr_wrapstring was used in the XDR_FREE case and plug these leaks. Reviewed by: kib MFC after: 3 days Effort: CHERI upstreaming Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D54825 --- lib/libc/xdr/xdr.c | 7 +++++++ sys/xdr/xdr.c | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/lib/libc/xdr/xdr.c b/lib/libc/xdr/xdr.c index 59a843405abf..47aafea4bc30 100644 --- a/lib/libc/xdr/xdr.c +++ b/lib/libc/xdr/xdr.c @@ -696,6 +696,13 @@ xdr_string(XDR *xdrs, char **cpp, u_int maxsize) if (sp == NULL) { return(TRUE); /* already free */ } + /* + * XXX: buggy software may call this without a third + * argument via xdr_free(). Ignore maxsize since it may + * be invalid. Otherwise, if it's very small, we might + * fail to free the string. + */ + maxsize = RPC_MAXDATASIZE; /* FALLTHROUGH */ case XDR_ENCODE: size = strlen(sp); diff --git a/sys/xdr/xdr.c b/sys/xdr/xdr.c index 81d238ebf19f..f983a474abdd 100644 --- a/sys/xdr/xdr.c +++ b/sys/xdr/xdr.c @@ -620,6 +620,13 @@ xdr_string(XDR *xdrs, char **cpp, u_int maxsize) if (sp == NULL) { return(TRUE); /* already free */ } + /* + * XXX: buggy software may call this without a third + * argument via xdr_free(). Ignore maxsize since it may + * be invalid. Otherwise, if it's very small, we might + * fail to free the string. + */ + maxsize = RPC_MAXDATASIZE; /* FALLTHROUGH */ case XDR_ENCODE: size = strlen(sp); From nobody Fri Jan 23 11:07:27 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dyFWm1dHFz6P38l for ; Fri, 23 Jan 2026 11:07: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dyFWg0zqFz3Xv3 for ; Fri, 23 Jan 2026 11:07:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769166447; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A9gHN5YDlgtq5OIdfvhlWwaSwSdUV4Q8IGovvh298Qs=; b=jMLfcpnGp2/INaZ3t7Z47g32dF0QiBtGddtGWDaUBmNeKUo6F08dNiDl9cbWEUnc+y8mal LZjGyLXOAZIUiHslYy8n0K0aySKSQ7JumqgKeFHyWVNJJnc+WWDt2K+Di2hO/cc5E/LfK9 k++oziVtxzgQeUiIe3hHm8bVOyMpQo1632LW28J4gh/5pzB+Ka5GRGlVFly4EbBYCRHbKc Sl9E2KXSl4h5cJP4KXzW9KGTIqaLflw8WNAKqoQn/65IjgTzzXRDohsPMEAmQLNcvJ1DL7 lK0/HNT/on6XqOKr3h8MIw1ipI64CCiXxDvT2iKCI98Oo2E2tzsv37DLA+BMDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769166447; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A9gHN5YDlgtq5OIdfvhlWwaSwSdUV4Q8IGovvh298Qs=; b=Ki288F14QAdYi045ME4MtXTRtHsyuxl9Ja6q/ss0V1gDTftuB7xZ+dmIFCvAO1pr4llcov vD0sh9fgBBo6Ors5LNswfCP9znoDZcWSPh+hVHt05uQoen1nSrnK2jkMboifEmNX7ZuW79 9iEqzpdeOsWLRL95nDwILcXKNt/xUqHgwFzw7ZhxeLsPr8wtomelNAL25yqg/IDgsObJNQ wmphYcSFftq2KqpYDwFe1RGAiaFcZqDEUELEGDVqATj4tLWxUo84LNapkY4Qlm3Q2lUXUG FxcbaKbmxq97Uwhndkoigmj6/mTDxsNsC9RuW1THHF7i06jzRIqwTiLGB6wC+w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769166447; a=rsa-sha256; cv=none; b=R4BEYPCeETp7dxQSUA6rZJx5w7dF2tDhmOvZNKXQ+j+zw/2M5doidYofxb1gUMFEdHot1o cMIZUdmlQXddsjslzxtUhG8JUPjS4c+j9AbRgMUgGQo0H5NnBIc9KeXmbDmfakdBFd4YUi 5S+EzjfMkQgK/2rwz2VLk7EUMvmzBBmp6ujWDi/Q8timoCKghfn64FDR9XbWs2/BzYkEp+ AtduSzGGoPfI88Tgh/uu81ldQGFUyirzVcZCd1BWt+myzWUzJc7kCZiyFL+bHqgIZs8doV f5qsrQAEvIDWoFnJUJCtuevHIIzNHKMtuiyVyXEOi1Cp/OwkRSOtlQmX9eDF2w== 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 4dyFWg0Ttcz18f for ; Fri, 23 Jan 2026 11:07:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3ab34 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 23 Jan 2026 11:07:27 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: ac5a19ec6989 - main - rpc/xdr.h: make xdrproc_t always take two arguments List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ac5a19ec6989675c8ec6c3ca245dba243d1a6416 Auto-Submitted: auto-generated Date: Fri, 23 Jan 2026 11:07:27 +0000 Message-Id: <6973566f.3ab34.6138d266@gitrepo.freebsd.org> The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=ac5a19ec6989675c8ec6c3ca245dba243d1a6416 commit ac5a19ec6989675c8ec6c3ca245dba243d1a6416 Author: Brooks Davis AuthorDate: 2026-01-23 10:35:32 +0000 Commit: Brooks Davis CommitDate: 2026-01-23 10:35:32 +0000 rpc/xdr.h: make xdrproc_t always take two arguments The type of xdrproc_t is clearly defined in the comments as a function with two arguments, an XDR * and a void * (sometimes spelled caddr_t). It was initialy defined as: typedef bool_t (*xdrproc_t)(); At some point people started giving it a non-empty argument list. Unfortunatly, there has been widespread disagreement about how arguments are passed. There seems to have been a widespread view that it should be allowed to pass three argument function pointer to xdrproc_t. Most notable is xdr_string which takes a maximum length parameter. This lead to all sorts of prototypes (all of which have been present in the FreeBSD source tree): FreeBSD userspace (nominally from tirpc, but seemingly local): typedef bool_t (*xdrproc_t)(XDR *, ...); FreeBSD kernel, glibc: typedef bool_t (*xdrproc_t)(XDR *, void *, ...); rcp/xdr.h with _KERNEL defined (not used?): typedef bool_t (*xdrproc_t)(XDR *, void *, u_int); gssrpc (in krb5) and Linux kernel: typedef bool_t (*xdrproc_t)(XDR *, void *); For two argument functions on current ABIs, these all equivalent as these arguments are passed in registers regardless of decleration and definition, but we end up with two problems: - xdr_free((xdrproc_t)xdr_string, ...) calls xdr_string with no third argument and (at least on FreeBSD) may fail to free memory if the string is shorter than the value lying around in the third argument register. There are no instance of this in tree, but I found some with Debian code search, in particular in OpenAFS. - Under CheriABI, variadic arguments are passed in a separate, bounded array so theses prototypes aren't equilvalent to the non-variadic calling convention of the functions. The reality is that that xdr_string should not be cast to xdrproc_t and xdr_wrapstring should be used instead so we do not need to support this case. Instances of the former behavior are now extremely rare. With this change we bring FreeBSD in line with gssrpc and the Linux Kernel. Warnings about casts should now be correct and should be fixed. Bump __FreeBSD_version as some software required adaptation if it is declaring functions to cast to xdrproc_t. Update OpenZFS's workaround of this historic mess accordingly. Effort: CHERI upstreaming Sponsored by: Innovate UK Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D54824 --- include/rpc/xdr.h | 9 +-------- lib/libc/rpc/rpc.3 | 4 ++-- sys/contrib/openzfs/module/nvpair/nvpair.c | 3 ++- sys/rpc/xdr.h | 9 +-------- sys/sys/param.h | 2 +- 5 files changed, 7 insertions(+), 20 deletions(-) diff --git a/include/rpc/xdr.h b/include/rpc/xdr.h index ecf10e1659e4..4c75bcc5bbf7 100644 --- a/include/rpc/xdr.h +++ b/include/rpc/xdr.h @@ -129,14 +129,7 @@ typedef struct XDR { * to be decoded. If this pointer is 0, then the type routines should * allocate dynamic storage of the appropriate size and return it. */ -#ifdef _KERNEL -typedef bool_t (*xdrproc_t)(XDR *, void *, u_int); -#else -/* - * XXX can't actually prototype it, because some take three args!!! - */ -typedef bool_t (*xdrproc_t)(XDR *, ...); -#endif +typedef bool_t (*xdrproc_t)(XDR *, void *); /* * Operations defined on a XDR handle diff --git a/lib/libc/rpc/rpc.3 b/lib/libc/rpc/rpc.3 index 12d19df117ad..7ae3ec5c5aeb 100644 --- a/lib/libc/rpc/rpc.3 +++ b/lib/libc/rpc/rpc.3 @@ -254,9 +254,9 @@ enum xdr_op { * structure of the data type to be decoded. If this points to 0, * then the type routines should allocate dynamic storage of the * appropriate size and return it. - * bool_t (*xdrproc_t)(XDR *, caddr_t *); + * bool_t (*xdrproc_t)(XDR *, void *); */ -typedef bool_t (*xdrproc_t)(); +typedef bool_t (*xdrproc_t)(XDR *, void *); /* * The XDR handle. diff --git a/sys/contrib/openzfs/module/nvpair/nvpair.c b/sys/contrib/openzfs/module/nvpair/nvpair.c index eb8c14b4a783..cb3a024ec95c 100644 --- a/sys/contrib/openzfs/module/nvpair/nvpair.c +++ b/sys/contrib/openzfs/module/nvpair/nvpair.c @@ -3246,7 +3246,8 @@ nvs_xdr_nvl_fini(nvstream_t *nvs) * xdrproc_t-compatible callbacks for xdr_array() */ -#if defined(_KERNEL) && defined(__linux__) /* Linux kernel */ +#if (defined(__FreeBSD_version) && __FreeBSD_version >= 1600010) || \ + defined(_KERNEL) && defined(__linux__) /* Linux kernel */ #define NVS_BUILD_XDRPROC_T(type) \ static bool_t \ diff --git a/sys/rpc/xdr.h b/sys/rpc/xdr.h index 4307b5101477..b3eafcb864b2 100644 --- a/sys/rpc/xdr.h +++ b/sys/rpc/xdr.h @@ -133,14 +133,7 @@ typedef struct XDR { * to be decoded. If this pointer is 0, then the type routines should * allocate dynamic storage of the appropriate size and return it. */ -#ifdef _KERNEL -typedef bool_t (*xdrproc_t)(XDR *, void *, ...); -#else -/* - * XXX can't actually prototype it, because some take three args!!! - */ -typedef bool_t (*xdrproc_t)(XDR *, ...); -#endif +typedef bool_t (*xdrproc_t)(XDR *, void *); /* * Operations defined on a XDR handle diff --git a/sys/sys/param.h b/sys/sys/param.h index a5dd31519ea5..410d18b53df6 100644 --- a/sys/sys/param.h +++ b/sys/sys/param.h @@ -74,7 +74,7 @@ * cannot include sys/param.h and should only be updated here. */ #undef __FreeBSD_version -#define __FreeBSD_version 1600009 +#define __FreeBSD_version 1600010 /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, From nobody Fri Jan 23 11:37:31 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dyGBM5Rj4z6P5KH for ; Fri, 23 Jan 2026 11:37: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dyGBM4WZwz3b7W for ; Fri, 23 Jan 2026 11:37:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769168251; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=et1JM1HIMUgtU7MlUyIW+VjLG5iVnaZ1GBxdR9C53oc=; b=rzO2j/rnDbqNGYItFQx2pErUZhbfJeDH+UFoUltn0UiCAGmA80vzGsZDgKroegOQWsmP+5 ztE1INKivxh94klcMuZY38MLEVEZmBBxZNzJ1DvGKoI82QMK9KhQiU3qFRvCMRz18FIPgU S4n2F4lNPmAb+eC0tq8XsxFS/kvWhNbLVqBZZL797mBSeKfEtm7o/ur1cZ5KRABe8Jcpca HCjJ4WjXUFmOBFrEkWPwv4RomBgo1fIwMN0+C3U+Z8H1vZHPJKVYJlwEh/tW+NBVS3bpzf xjQymzxqwbCW4jEb+kq/Q4dPMnFuTN67Tja+lzNF0UC5Qypu4mrDM/dSLOySPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769168251; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=et1JM1HIMUgtU7MlUyIW+VjLG5iVnaZ1GBxdR9C53oc=; b=ezSPSky/2sbS0k749D+cEpGjAps91fRTS52TCnUmyekNpIXSh/e7/mjP6p/j0/tFbYwdNm sY+QX3ruJM5hXr+oF7Zo9bxLkGNtsRUtPOqD1kVDj/CjxQ7RosTgNRfak7t5/5x9A917Q0 m+6g7XXXy7D8n3ce2OzxFRVKPEEvJfw+wbbOGauCDEerR9EL7Iv9sRCOHiOkdvTlTp4pnr hlO0czYnAXmAOQngbkg/SXNFRr71ziB7qQ/qiDZbXL+ZqBwhbTfUTPM/dylXpzdO0HCxKk uKBnH8S89VuUxrqbXgisXxkqFo0dzkzZCRyfg3kt4kBO9Y126r+9FRMMO5enTA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769168251; a=rsa-sha256; cv=none; b=o4UOd8KXEMajJgC4t2ZXb9NBxhodPKZwkpK8Ne3tfKD/malmRarZvOz7Y6Yh1pT6P+Jxvj NTbA7Gp0umPYqN9C+gcsK/mbxrCERFX2cIT+u1LjTWN9MTUvHMiWAFzSLzsuhpK/8EWXtA Y5ZnQI3PS+9o3NT5gK9M6PADcP9NXzVcd0S9/3Ozcj3QRGZ6idd0ns+oHFscPycgbaXgyh lLyYkR0Bz0xUHdZndEliWOThCPXi0RC03o+2XcfnkxIg8Esa77R3Y/RDtHlptXwJ+Sp2px mo7t7xfadZeXYPmujXk819ywU/IE3OxLOttbO56p6xLvQukAAZea/70FOnJHuA== 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 4dyGBM3HNtz26b for ; Fri, 23 Jan 2026 11:37:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3e9f8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 23 Jan 2026 11:37:31 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling=?utf-8?Q? Sm=C3=B8rg?=rav Subject: git: 498fe07257aa - main - buf_ring: Rename some variables List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 498fe07257aa75f0f1eb4639f4a6ae39fafda901 Auto-Submitted: auto-generated Date: Fri, 23 Jan 2026 11:37:31 +0000 Message-Id: <69735d7b.3e9f8.6b24ae7f@gitrepo.freebsd.org> The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=498fe07257aa75f0f1eb4639f4a6ae39fafda901 commit 498fe07257aa75f0f1eb4639f4a6ae39fafda901 Author: Dag-Erling Smørgrav AuthorDate: 2026-01-23 11:35:52 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2026-01-23 11:36:21 +0000 buf_ring: Rename some variables The elements we store in buffer rings are buffers, so refer to them as `buf` throughout instead of a mixture of `buf`, `ret`, and `new`, especially since the latter breaks C++ code that directly or indirectly includes this header. MFC after: 1 week Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Reviewed by: siderop1_netapp.com, markj Differential Revision: https://reviews.freebsd.org/D54827 --- sys/sys/buf_ring.h | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/sys/sys/buf_ring.h b/sys/sys/buf_ring.h index 00870cbf3531..07a4fa52891e 100644 --- a/sys/sys/buf_ring.h +++ b/sys/sys/buf_ring.h @@ -266,7 +266,7 @@ buf_ring_advance_sc(struct buf_ring *br) * the compare and an atomic. */ static __inline void -buf_ring_putback_sc(struct buf_ring *br, void *new) +buf_ring_putback_sc(struct buf_ring *br, void *buf) { uint32_t cons_idx, mask; @@ -274,7 +274,7 @@ buf_ring_putback_sc(struct buf_ring *br, void *new) cons_idx = atomic_load_32(&br->br_cons_head) & mask; KASSERT(cons_idx != (atomic_load_32(&br->br_prod_tail) & mask), ("Buf-Ring has none in putback")) ; - br->br_ring[cons_idx] = new; + br->br_ring[cons_idx] = buf; } /* @@ -305,7 +305,7 @@ static __inline void * buf_ring_peek_clear_sc(struct buf_ring *br) { uint32_t cons_head, prod_tail, mask; - void *ret; + void *buf; #if defined(DEBUG_BUFRING) && defined(_KERNEL) if (!mtx_owned(br->br_lock)) @@ -319,7 +319,7 @@ buf_ring_peek_clear_sc(struct buf_ring *br) if (cons_head == prod_tail) return (NULL); - ret = br->br_ring[cons_head & mask]; + buf = br->br_ring[cons_head & mask]; #ifdef DEBUG_BUFRING /* * Single consumer, i.e. cons_head will not move while we are @@ -327,13 +327,12 @@ buf_ring_peek_clear_sc(struct buf_ring *br) */ br->br_ring[cons_head & mask] = NULL; #endif - return (ret); + return (buf); } static __inline int buf_ring_full(struct buf_ring *br) { - return (atomic_load_32(&br->br_prod_head) == atomic_load_32(&br->br_cons_tail) + br->br_cons_size - 1); } @@ -341,7 +340,6 @@ buf_ring_full(struct buf_ring *br) static __inline int buf_ring_empty(struct buf_ring *br) { - return (atomic_load_32(&br->br_cons_head) == atomic_load_32(&br->br_prod_tail)); } From nobody Fri Jan 23 13:56:40 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dyKGx0XvLz6PG7g for ; Fri, 23 Jan 2026 13:56: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dyKGx09RRz3r41 for ; Fri, 23 Jan 2026 13:56:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769176601; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HSJJo/P/tSyN9+f4xaZ/rNHtyMT90LbogtEQJPf9/VY=; b=M0yz4e1wvugSg0+2Syuu2NtW3h/O5I5QhlB/38CwfIe9/BUyYOsrB7RzLXqK6N9NwIazEq gHl/MePd2v/8a+N9bTi3QDsUSo3PYLREnRsT8j8lt/8MnKBdAGOGqDoU/G1BLhdVTYYZGM DMAnCuk/hP+QN/R9n+/Ncw1bvIT4tfr88K0iw957bCkhVFlAhEQzPJqBT+HP4nsyqfmK0R 3qho076B8oE5EmkcqhAL6BKSGW8BKYu76hqRb0V1InO9qKX00f1nlutREj/oTDGga/nolZ N+FEmfsR8BHUWDKc5tFd6fuG/8xxXNWOcjivhynit9WbENZSG4KkaIiLwg+J5g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769176601; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HSJJo/P/tSyN9+f4xaZ/rNHtyMT90LbogtEQJPf9/VY=; b=EfrhkBx2/H7hjN+x7vystHkaM7sgybdlf4RYHBDD4cfQJheeiBd45FaAneOdptOqxjPBJw G2pxE4mrzHertU57Y1F2Kzp+TCXyn5f3EWdYnlWJRN35LOiz0v2iMtRMlZjC36ikWPhpYB tbJynUBBUHSw7NeR3ImLzbp6dqePS6eklml/SDJmxgpl4obW1bX3ZYdFjaGWJSuacFFmn3 YfGyX02DW0QXksRqLNoaxLIujjQjaSA/wpXMT22tQhM8TqH72Q+cBMPLn7uWRdQkK/6mGu iBphBHbQCA2Jjkbah4PDTsRVJNDzOXngx6qgBcLHzkJPEm29StsdUVbuDGaiHw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769176601; a=rsa-sha256; cv=none; b=EaUtGNGqBQ8eCWo/R44BbXaJrBODItSSaG4Qam55GvR/Hl1KLQQoY5AJFnxzl+uwUdD8iT LyLwqixxpDp81Cs+bEnBaUGrznXBASNmqE9ikJM3tDzMu5IgOX4hZgUDaX1zkSUquSHzfS pN+HR2TIqZBsE3psc1moLmg31zo3+p6b5d7jZsUzqLKMO7cZ6eg2LmK0t45k+l8BFhspcw O7xg1xRVeagngZItCsgpNCEvlihYuZ123oiwoDuecOIL/nZ3i44k+gFh8YWL+UJrKdvIBa 7nB3R105DOXUG/uUJSnlnaW5ROSMXt3lQT2pnwBvuzv1D81Sd7MEd3+ywHhHLg== 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 4dyKGw6bMNz6HV for ; Fri, 23 Jan 2026 13:56:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id b55d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 23 Jan 2026 13:56:40 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: b1bebaaba9b9 - main - mt76: update Mediatek's mt76 driver List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: b1bebaaba9b9c0ddfe503c43ca8e9e3917ee2c57 Auto-Submitted: auto-generated Date: Fri, 23 Jan 2026 13:56:40 +0000 Message-Id: <69737e18.b55d.3815fcbd@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=b1bebaaba9b9c0ddfe503c43ca8e9e3917ee2c57 commit b1bebaaba9b9c0ddfe503c43ca8e9e3917ee2c57 Merge: 498fe07257aa 316122010afd Author: Bjoern A. Zeeb AuthorDate: 2026-01-23 13:52:47 +0000 Commit: Bjoern A. Zeeb CommitDate: 2026-01-23 13:52:47 +0000 mt76: update Mediatek's mt76 driver This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 24d479d26b25bce5faea3ddd9fa8f3a6c3129ea7 ( tag: v6.19-rc6 ). Notable change: license got switched from ISC to BSD-3-Clause-Clear. util.h is now imported from upstream given it is no longer GPL-only. See the upstream repository 909675fd4344f73aad5f75f123bd271ada2ab9fb and a96fed2825d8dfb068bf640419c619b5f2df4218. For us the new version should also help with page pools and DMA32. Sponsored by: The FreeBSD Foundation .../include/linux/soc/airoha/airoha_offload.h | 48 ++ .../common/include/linux/soc/mediatek/mtk_wed.h | 14 +- sys/contrib/dev/mediatek/mt76/Kconfig | 51 ++ sys/contrib/dev/mediatek/mt76/Makefile | 48 ++ sys/contrib/dev/mediatek/mt76/agg-rx.c | 4 +- sys/contrib/dev/mediatek/mt76/channel.c | 15 +- sys/contrib/dev/mediatek/mt76/debugfs.c | 6 +- sys/contrib/dev/mediatek/mt76/dma.c | 302 ++++++-- sys/contrib/dev/mediatek/mt76/dma.h | 98 ++- sys/contrib/dev/mediatek/mt76/eeprom.c | 87 ++- sys/contrib/dev/mediatek/mt76/mac80211.c | 65 +- sys/contrib/dev/mediatek/mt76/mcu.c | 2 +- sys/contrib/dev/mediatek/mt76/mmio.c | 20 +- sys/contrib/dev/mediatek/mt76/mt76.h | 232 +++++- sys/contrib/dev/mediatek/mt76/mt7603/Kconfig | 12 + sys/contrib/dev/mediatek/mt76/mt7603/Makefile | 7 + sys/contrib/dev/mediatek/mt76/mt7603/beacon.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7603/core.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7603/debugfs.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7603/dma.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7603/eeprom.c | 5 +- sys/contrib/dev/mediatek/mt76/mt7603/eeprom.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7603/init.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7603/mac.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7603/mac.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7603/main.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7603/mcu.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7603/mcu.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7603/mt7603.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7603/pci.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7603/regs.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7603/soc.c | 4 +- sys/contrib/dev/mediatek/mt76/mt7615/Kconfig | 56 ++ sys/contrib/dev/mediatek/mt76/mt7615/Makefile | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/debugfs.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/dma.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/eeprom.c | 6 +- sys/contrib/dev/mediatek/mt76/mt7615/eeprom.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/init.c | 7 +- sys/contrib/dev/mediatek/mt76/mt7615/mac.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/mac.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/main.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/mcu.c | 6 +- sys/contrib/dev/mediatek/mt76/mt7615/mcu.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/mmio.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/mt7615.h | 2 +- .../dev/mediatek/mt76/mt7615/mt7615_trace.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/pci.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/pci_init.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/pci_mac.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/regs.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/sdio.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/soc.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/testmode.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/trace.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/usb.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7615/usb_sdio.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76_connac.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76_connac2_mac.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76_connac3_mac.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76_connac3_mac.h | 9 +- sys/contrib/dev/mediatek/mt76/mt76_connac_mac.c | 21 +- sys/contrib/dev/mediatek/mt76/mt76_connac_mcu.c | 39 +- sys/contrib/dev/mediatek/mt76/mt76_connac_mcu.h | 4 +- sys/contrib/dev/mediatek/mt76/mt76x0/pci.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x0/pci_mcu.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x0/usb_mcu.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_beacon.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_debugfs.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_dfs.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_dfs.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_dma.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_eeprom.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_eeprom.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_mac.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_mac.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_mcu.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_mcu.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_mmio.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_phy.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_phy.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_regs.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_trace.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_trace.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_txrx.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_usb.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_usb_core.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_usb_mcu.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x02_util.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/Kconfig | 29 + sys/contrib/dev/mediatek/mt76/mt76x2/Makefile | 15 + sys/contrib/dev/mediatek/mt76/mt76x2/eeprom.c | 6 +- sys/contrib/dev/mediatek/mt76/mt76x2/eeprom.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/init.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/mac.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/mac.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/mcu.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/mcu.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/mt76x2.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/mt76x2u.h | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/pci.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/pci_init.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/pci_main.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/pci_mcu.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/pci_phy.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/phy.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/usb.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/usb_init.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/usb_mac.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/usb_main.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/usb_mcu.c | 2 +- sys/contrib/dev/mediatek/mt76/mt76x2/usb_phy.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7915/Kconfig | 2 +- sys/contrib/dev/mediatek/mt76/mt7915/Makefile | 2 +- sys/contrib/dev/mediatek/mt76/mt7915/coredump.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7915/coredump.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7915/debugfs.c | 76 +- sys/contrib/dev/mediatek/mt76/mt7915/dma.c | 6 +- sys/contrib/dev/mediatek/mt76/mt7915/eeprom.c | 6 +- sys/contrib/dev/mediatek/mt76/mt7915/eeprom.h | 8 +- sys/contrib/dev/mediatek/mt76/mt7915/init.c | 13 +- sys/contrib/dev/mediatek/mt76/mt7915/mac.c | 4 +- sys/contrib/dev/mediatek/mt76/mt7915/mac.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7915/main.c | 4 +- sys/contrib/dev/mediatek/mt76/mt7915/mcu.c | 203 +++-- sys/contrib/dev/mediatek/mt76/mt7915/mcu.h | 8 +- sys/contrib/dev/mediatek/mt76/mt7915/mmio.c | 8 +- sys/contrib/dev/mediatek/mt76/mt7915/mt7915.h | 11 +- sys/contrib/dev/mediatek/mt76/mt7915/pci.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7915/regs.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7915/soc.c | 23 +- sys/contrib/dev/mediatek/mt76/mt7915/testmode.c | 4 +- sys/contrib/dev/mediatek/mt76/mt7915/testmode.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7921/Kconfig | 2 +- sys/contrib/dev/mediatek/mt76/mt7921/Makefile | 2 +- sys/contrib/dev/mediatek/mt76/mt7921/debugfs.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7921/init.c | 8 +- sys/contrib/dev/mediatek/mt76/mt7921/mac.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7921/main.c | 4 +- sys/contrib/dev/mediatek/mt76/mt7921/mcu.c | 4 +- sys/contrib/dev/mediatek/mt76/mt7921/mcu.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7921/mt7921.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7921/pci.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7921/pci_mac.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7921/pci_mcu.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7921/regs.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7921/sdio.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7921/sdio_mac.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7921/sdio_mcu.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7921/testmode.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7921/usb.c | 5 +- sys/contrib/dev/mediatek/mt76/mt7925/Kconfig | 2 +- sys/contrib/dev/mediatek/mt76/mt7925/Makefile | 4 +- sys/contrib/dev/mediatek/mt76/mt7925/debugfs.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7925/init.c | 156 +--- sys/contrib/dev/mediatek/mt76/mt7925/mac.c | 6 +- sys/contrib/dev/mediatek/mt76/mt7925/mac.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7925/main.c | 107 +-- sys/contrib/dev/mediatek/mt76/mt7925/mcu.c | 127 +++- sys/contrib/dev/mediatek/mt76/mt7925/mcu.h | 10 +- sys/contrib/dev/mediatek/mt76/mt7925/mt7925.h | 11 +- sys/contrib/dev/mediatek/mt76/mt7925/pci.c | 41 +- sys/contrib/dev/mediatek/mt76/mt7925/pci_mac.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7925/pci_mcu.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7925/regd.c | 265 +++++++ sys/contrib/dev/mediatek/mt76/mt7925/regd.h | 19 + sys/contrib/dev/mediatek/mt76/mt7925/regs.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7925/testmode.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7925/usb.c | 5 +- sys/contrib/dev/mediatek/mt76/mt792x.h | 5 +- sys/contrib/dev/mediatek/mt76/mt792x_acpi_sar.c | 2 +- sys/contrib/dev/mediatek/mt76/mt792x_acpi_sar.h | 2 +- sys/contrib/dev/mediatek/mt76/mt792x_core.c | 9 +- sys/contrib/dev/mediatek/mt76/mt792x_debugfs.c | 2 +- sys/contrib/dev/mediatek/mt76/mt792x_dma.c | 8 +- sys/contrib/dev/mediatek/mt76/mt792x_mac.c | 2 +- sys/contrib/dev/mediatek/mt76/mt792x_regs.h | 2 +- sys/contrib/dev/mediatek/mt76/mt792x_trace.c | 2 +- sys/contrib/dev/mediatek/mt76/mt792x_trace.h | 2 +- sys/contrib/dev/mediatek/mt76/mt792x_usb.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7996/Kconfig | 9 +- sys/contrib/dev/mediatek/mt76/mt7996/Makefile | 3 +- sys/contrib/dev/mediatek/mt76/mt7996/coredump.c | 2 +- sys/contrib/dev/mediatek/mt76/mt7996/coredump.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7996/debugfs.c | 74 +- sys/contrib/dev/mediatek/mt76/mt7996/dma.c | 343 +++++++-- sys/contrib/dev/mediatek/mt76/mt7996/eeprom.c | 5 +- sys/contrib/dev/mediatek/mt76/mt7996/eeprom.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7996/init.c | 390 +++++++--- sys/contrib/dev/mediatek/mt76/mt7996/mac.c | 836 +++++++++++++++++---- sys/contrib/dev/mediatek/mt76/mt7996/mac.h | 2 +- sys/contrib/dev/mediatek/mt76/mt7996/main.c | 614 +++++++++------ sys/contrib/dev/mediatek/mt76/mt7996/mcu.c | 378 +++++----- sys/contrib/dev/mediatek/mt76/mt7996/mcu.h | 19 +- sys/contrib/dev/mediatek/mt76/mt7996/mmio.c | 113 ++- sys/contrib/dev/mediatek/mt76/mt7996/mt7996.h | 144 +++- sys/contrib/dev/mediatek/mt76/mt7996/pci.c | 10 +- sys/contrib/dev/mediatek/mt76/mt7996/regs.h | 34 +- sys/contrib/dev/mediatek/mt76/pci.c | 2 +- sys/contrib/dev/mediatek/mt76/scan.c | 15 +- sys/contrib/dev/mediatek/mt76/sdio.c | 2 +- sys/contrib/dev/mediatek/mt76/sdio.h | 2 +- sys/contrib/dev/mediatek/mt76/sdio_txrx.c | 2 +- sys/contrib/dev/mediatek/mt76/testmode.c | 2 +- sys/contrib/dev/mediatek/mt76/testmode.h | 2 +- sys/contrib/dev/mediatek/mt76/trace.c | 2 +- sys/contrib/dev/mediatek/mt76/trace.h | 2 +- sys/contrib/dev/mediatek/mt76/tx.c | 11 +- sys/contrib/dev/mediatek/mt76/usb.c | 2 +- sys/contrib/dev/mediatek/mt76/usb_trace.c | 2 +- sys/contrib/dev/mediatek/mt76/usb_trace.h | 2 +- sys/contrib/dev/mediatek/mt76/util.c | 2 +- sys/contrib/dev/mediatek/mt76/util.h | 132 ++-- sys/contrib/dev/mediatek/mt76/wed.c | 20 +- sys/modules/mt76/Makefile.inc | 3 +- sys/modules/mt76/mt7925/Makefile | 2 +- 217 files changed, 4191 insertions(+), 1624 deletions(-) diff --cc sys/compat/linuxkpi/common/include/linux/soc/airoha/airoha_offload.h index 000000000000,000000000000..ade0b06d839f new file mode 100644 --- /dev/null +++ b/sys/compat/linuxkpi/common/include/linux/soc/airoha/airoha_offload.h @@@ -1,0 -1,0 +1,48 @@@ ++/*- ++ * Copyright (c) 2026 Bjoern A. Zeeb ++ * ++ * SPDX-License-Identifier: BSD-2-Clause ++ */ ++ ++#ifndef _LINUXKPI_LINUX_SOC_AIROHA_AIROHA_OFFLOAD_H ++#define _LINUXKPI_LINUX_SOC_AIROHA_AIROHA_OFFLOAD_H ++ ++#include /* pr_debug */ ++ ++enum airoha_npu_wlan_get_cmd { ++ __dummy_airoha_npu_wlan_get_cmd, ++}; ++enum airoha_npu_wlan_set_cmd { ++ __dummy_airoha_npu_wlan_set_cmd, ++}; ++ ++struct airoha_npu { ++}; ++struct airoha_npu_rx_dma_desc { ++}; ++struct airoha_npu_tx_dma_desc { ++}; ++ ++static __inline int ++airoha_npu_wlan_send_msg(void *npu, int ifindex, ++ enum airoha_npu_wlan_set_cmd cmd, void *val, size_t len, gfp_t gfp) ++{ ++ pr_debug("%s: TODO\n", __func__); ++ return (-EOPNOTSUPP); ++} ++ ++static __inline int ++airoha_npu_wlan_get_msg(void *npu, int ifindex, ++ enum airoha_npu_wlan_get_cmd cmd, void *val, size_t len, gfp_t gfp) ++{ ++ pr_debug("%s: TODO\n", __func__); ++ return (-EOPNOTSUPP); ++} ++ ++static __inline void ++airoha_npu_wlan_enable_irq(struct airoha_npu *npu, int q) ++{ ++ pr_debug("%s: TODO\n", __func__); ++} ++ ++#endif /* _LINUXKPI_LINUX_SOC_AIROHA_AIROHA_OFFLOAD_H */ diff --cc sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h index 2b9c6ae4911e,000000000000..64daa8c78c9d mode 100644,000000..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 @@@ -1,71 -1,0 +1,83 @@@ +/*- - * Copyright (c) 2022-2025 Bjoern A. Zeeb ++ * Copyright (c) 2022-2026 Bjoern A. Zeeb + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#ifndef _LINUXKPI_LINUX_SOC_MEDIATEK_MTK_WED_H +#define _LINUXKPI_LINUX_SOC_MEDIATEK_MTK_WED_H + +#include /* pr_debug */ + +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 +#define mtk_wed_device_irq_set_mask(_dev, _mask) do { pr_debug("%s: TODO\n", __func__); } while(0) +#define mtk_wed_device_update_msg(_dev, _id, _msg, _len) ({ pr_debug("%s: TODO\n", __func__); -ENODEV; }) +#define mtk_wed_device_dma_reset(_dev) do { pr_debug("%s: TODO\n", __func__); } while (0) +#define mtk_wed_device_ppe_check(_dev, _skb, _reason, _entry) \ + do { pr_debug("%s: TODO\n", __func__); } while (0) +#define mtk_wed_device_stop(_dev) do { pr_debug("%s: TODO\n", __func__); } while(0) +#define mtk_wed_device_start_hw_rro(_dev, _mask, _b) do { pr_debug("%s: TODO\n", __func__); } while(0) +#define mtk_wed_device_setup_tc(_dev, _ndev, _type, _tdata) ({ pr_debug("%s: TODO\n", __func__); -EOPNOTSUPP; }) + +static inline bool +mtk_wed_device_active(struct mtk_wed_device *dev __unused) +{ + pr_debug("%s: TODO\n", __func__); + return (false); +} + +static inline bool +mtk_wed_get_rx_capa(struct mtk_wed_device *dev __unused) +{ ++ pr_debug("%s: TODO\n", __func__); ++ return (false); ++} + ++static inline bool ++mtk_wed_is_amsdu_supported(struct mtk_wed_device *dev __unused) ++{ + pr_debug("%s: TODO\n", __func__); + 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); +} ++ ++static inline bool ++mtk_wed_is_amsdu_supported(struct mtk_wed_device *dev __unused) ++{ ++ return (false); ++} +#endif /* CONFIG_NET_MEDIATEK_SOC_WED */ + +#endif /* _LINUXKPI_LINUX_SOC_MEDIATEK_MTK_WED_H */ diff --cc sys/contrib/dev/mediatek/mt76/Kconfig index 000000000000,502303622a53..502303622a53 mode 000000,100644..100644 --- a/sys/contrib/dev/mediatek/mt76/Kconfig +++ b/sys/contrib/dev/mediatek/mt76/Kconfig diff --cc sys/contrib/dev/mediatek/mt76/Makefile index 000000000000,000000000000..1d42adfe8030 new file mode 100644 --- /dev/null +++ b/sys/contrib/dev/mediatek/mt76/Makefile @@@ -1,0 -1,0 +1,48 @@@ ++# SPDX-License-Identifier: BSD-3-Clause-Clear ++obj-$(CONFIG_MT76_CORE) += mt76.o ++obj-$(CONFIG_MT76_USB) += mt76-usb.o ++obj-$(CONFIG_MT76_SDIO) += mt76-sdio.o ++obj-$(CONFIG_MT76x02_LIB) += mt76x02-lib.o ++obj-$(CONFIG_MT76x02_USB) += mt76x02-usb.o ++obj-$(CONFIG_MT76_CONNAC_LIB) += mt76-connac-lib.o ++obj-$(CONFIG_MT792x_LIB) += mt792x-lib.o ++obj-$(CONFIG_MT792x_USB) += mt792x-usb.o ++ ++mt76-y := \ ++ mmio.o util.o trace.o dma.o mac80211.o debugfs.o eeprom.o \ ++ tx.o agg-rx.o mcu.o wed.o scan.o channel.o ++ ++mt76-$(CONFIG_MT76_NPU) += npu.o ++mt76-$(CONFIG_PCI) += pci.o ++mt76-$(CONFIG_NL80211_TESTMODE) += testmode.o ++ ++mt76-usb-y := usb.o usb_trace.o ++mt76-sdio-y := sdio.o sdio_txrx.o ++ ++CFLAGS_trace.o := -I$(src) ++CFLAGS_usb_trace.o := -I$(src) ++CFLAGS_mt76x02_trace.o := -I$(src) ++CFLAGS_mt792x_trace.o := -I$(src) ++ ++mt76x02-lib-y := mt76x02_util.o mt76x02_mac.o mt76x02_mcu.o \ ++ mt76x02_eeprom.o mt76x02_phy.o mt76x02_mmio.o \ ++ mt76x02_txrx.o mt76x02_trace.o mt76x02_debugfs.o \ ++ mt76x02_dfs.o mt76x02_beacon.o ++ ++mt76x02-usb-y := mt76x02_usb_mcu.o mt76x02_usb_core.o ++ ++mt76-connac-lib-y := mt76_connac_mcu.o mt76_connac_mac.o mt76_connac3_mac.o ++ ++mt792x-lib-y := mt792x_core.o mt792x_mac.o mt792x_trace.o \ ++ mt792x_debugfs.o mt792x_dma.o ++mt792x-lib-$(CONFIG_ACPI) += mt792x_acpi_sar.o ++mt792x-usb-y := mt792x_usb.o ++ ++obj-$(CONFIG_MT76x0_COMMON) += mt76x0/ ++obj-$(CONFIG_MT76x2_COMMON) += mt76x2/ ++obj-$(CONFIG_MT7603E) += mt7603/ ++obj-$(CONFIG_MT7615_COMMON) += mt7615/ ++obj-$(CONFIG_MT7915E) += mt7915/ ++obj-$(CONFIG_MT7921_COMMON) += mt7921/ ++obj-$(CONFIG_MT7996E) += mt7996/ ++obj-$(CONFIG_MT7925_COMMON) += mt7925/ diff --cc sys/contrib/dev/mediatek/mt76/dma.c index af902a761e42,000000000000..5c04a0dce1fa mode 100644,000000..100644 --- a/sys/contrib/dev/mediatek/mt76/dma.c +++ b/sys/contrib/dev/mediatek/mt76/dma.c @@@ -1,1062 -1,0 +1,1204 @@@ - // SPDX-License-Identifier: ISC ++// SPDX-License-Identifier: BSD-3-Clause-Clear +/* + * Copyright (C) 2016 Felix Fietkau + */ + +#include +#if defined(__FreeBSD__) +#include +#include +#endif +#include "mt76.h" +#include "dma.h" + - #if IS_ENABLED(CONFIG_NET_MEDIATEK_SOC_WED) - - #define Q_READ(_q, _field) ({ \ - u32 _offset = offsetof(struct mt76_queue_regs, _field); \ - u32 _val; \ - if ((_q)->flags & MT_QFLAG_WED) \ - _val = mtk_wed_device_reg_read((_q)->wed, \ - ((_q)->wed_regs + \ - _offset)); \ - else \ - _val = readl(&(_q)->regs->_field); \ - _val; \ - }) - - #define Q_WRITE(_q, _field, _val) do { \ - u32 _offset = offsetof(struct mt76_queue_regs, _field); \ - if ((_q)->flags & MT_QFLAG_WED) \ - mtk_wed_device_reg_write((_q)->wed, \ - ((_q)->wed_regs + _offset), \ - _val); \ - else \ - writel(_val, &(_q)->regs->_field); \ - } while (0) - - #else - - #define Q_READ(_q, _field) readl(&(_q)->regs->_field) - #define Q_WRITE(_q, _field, _val) writel(_val, &(_q)->regs->_field) - - #endif - +static struct mt76_txwi_cache * +mt76_alloc_txwi(struct mt76_dev *dev) +{ + struct mt76_txwi_cache *t; + dma_addr_t addr; + u8 *txwi; + int size; + + size = L1_CACHE_ALIGN(dev->drv->txwi_size + sizeof(*t)); + txwi = kzalloc(size, GFP_ATOMIC); + if (!txwi) + return NULL; + + addr = dma_map_single(dev->dma_dev, txwi, dev->drv->txwi_size, + DMA_TO_DEVICE); + if (unlikely(dma_mapping_error(dev->dma_dev, addr))) { + kfree(txwi); + return NULL; + } + + t = (struct mt76_txwi_cache *)(txwi + dev->drv->txwi_size); + t->dma_addr = addr; + + return t; +} + +static struct mt76_txwi_cache * +mt76_alloc_rxwi(struct mt76_dev *dev) +{ + struct mt76_txwi_cache *t; + + t = kzalloc(L1_CACHE_ALIGN(sizeof(*t)), GFP_ATOMIC); + if (!t) + return NULL; + + t->ptr = NULL; + return t; +} + +static struct mt76_txwi_cache * +__mt76_get_txwi(struct mt76_dev *dev) +{ + struct mt76_txwi_cache *t = NULL; + + spin_lock(&dev->lock); + if (!list_empty(&dev->txwi_cache)) { + t = list_first_entry(&dev->txwi_cache, struct mt76_txwi_cache, + list); + list_del(&t->list); + } + spin_unlock(&dev->lock); + + return t; +} + +static struct mt76_txwi_cache * +__mt76_get_rxwi(struct mt76_dev *dev) +{ + struct mt76_txwi_cache *t = NULL; + + spin_lock_bh(&dev->wed_lock); + if (!list_empty(&dev->rxwi_cache)) { + t = list_first_entry(&dev->rxwi_cache, struct mt76_txwi_cache, + list); + list_del(&t->list); + } + spin_unlock_bh(&dev->wed_lock); + + return t; +} + +static struct mt76_txwi_cache * +mt76_get_txwi(struct mt76_dev *dev) +{ + struct mt76_txwi_cache *t = __mt76_get_txwi(dev); + + if (t) + return t; + + return mt76_alloc_txwi(dev); +} + +struct mt76_txwi_cache * +mt76_get_rxwi(struct mt76_dev *dev) +{ + struct mt76_txwi_cache *t = __mt76_get_rxwi(dev); + + if (t) + return t; + + return mt76_alloc_rxwi(dev); +} +EXPORT_SYMBOL_GPL(mt76_get_rxwi); + +void +mt76_put_txwi(struct mt76_dev *dev, struct mt76_txwi_cache *t) +{ + if (!t) + return; + + spin_lock(&dev->lock); + list_add(&t->list, &dev->txwi_cache); + spin_unlock(&dev->lock); +} +EXPORT_SYMBOL_GPL(mt76_put_txwi); + +void +mt76_put_rxwi(struct mt76_dev *dev, struct mt76_txwi_cache *t) +{ + if (!t) + return; + + spin_lock_bh(&dev->wed_lock); + list_add(&t->list, &dev->rxwi_cache); + spin_unlock_bh(&dev->wed_lock); +} +EXPORT_SYMBOL_GPL(mt76_put_rxwi); + +static void +mt76_free_pending_txwi(struct mt76_dev *dev) +{ + struct mt76_txwi_cache *t; + + local_bh_disable(); + while ((t = __mt76_get_txwi(dev)) != NULL) { + dma_unmap_single(dev->dma_dev, t->dma_addr, dev->drv->txwi_size, + DMA_TO_DEVICE); + kfree(mt76_get_txwi_ptr(dev, t)); + } + local_bh_enable(); +} + +void +mt76_free_pending_rxwi(struct mt76_dev *dev) +{ + struct mt76_txwi_cache *t; + + local_bh_disable(); + while ((t = __mt76_get_rxwi(dev)) != NULL) { + if (t->ptr) + mt76_put_page_pool_buf(t->ptr, false); + kfree(t); + } + local_bh_enable(); +} +EXPORT_SYMBOL_GPL(mt76_free_pending_rxwi); + ++static void ++mt76_dma_queue_magic_cnt_init(struct mt76_dev *dev, struct mt76_queue *q) ++{ ++ if (!mt76_queue_is_wed_rro(q)) ++ return; ++ ++ q->magic_cnt = 0; ++ if (mt76_queue_is_wed_rro_ind(q)) { ++ struct mt76_wed_rro_desc *rro_desc; ++ u32 data1 = FIELD_PREP(RRO_IND_DATA1_MAGIC_CNT_MASK, ++ MT_DMA_WED_IND_CMD_CNT - 1); ++ int i; ++ ++ rro_desc = (struct mt76_wed_rro_desc *)q->desc; ++ for (i = 0; i < q->ndesc; i++) { ++ struct mt76_wed_rro_ind *cmd; ++ ++ cmd = (struct mt76_wed_rro_ind *)&rro_desc[i]; ++ cmd->data1 = cpu_to_le32(data1); ++ } ++ } else if (mt76_queue_is_wed_rro_rxdmad_c(q)) { ++ struct mt76_rro_rxdmad_c *dmad = (void *)q->desc; ++ u32 data3 = FIELD_PREP(RRO_RXDMAD_DATA3_MAGIC_CNT_MASK, ++ MT_DMA_MAGIC_CNT - 1); ++ int i; ++ ++ for (i = 0; i < q->ndesc; i++) ++ dmad[i].data3 = cpu_to_le32(data3); ++ } ++} ++ +static void +mt76_dma_sync_idx(struct mt76_dev *dev, struct mt76_queue *q) +{ + Q_WRITE(q, desc_base, q->desc_dma); - if (q->flags & MT_QFLAG_WED_RRO_EN) ++ if ((q->flags & MT_QFLAG_WED_RRO_EN) && !mt76_npu_device_active(dev)) + Q_WRITE(q, ring_size, MT_DMA_RRO_EN | q->ndesc); + else + Q_WRITE(q, ring_size, q->ndesc); ++ ++ if (mt76_queue_is_npu_tx(q)) { ++ writel(q->desc_dma, &q->regs->desc_base); ++ writel(q->ndesc, &q->regs->ring_size); ++ } + q->head = Q_READ(q, dma_idx); + q->tail = q->head; +} + - void __mt76_dma_queue_reset(struct mt76_dev *dev, struct mt76_queue *q, - bool reset_idx) ++void mt76_dma_queue_reset(struct mt76_dev *dev, struct mt76_queue *q, ++ bool reset_idx) +{ + if (!q || !q->ndesc) + return; + - if (!mt76_queue_is_wed_rro_ind(q)) { ++ if (!mt76_queue_is_wed_rro_ind(q) && ++ !mt76_queue_is_wed_rro_rxdmad_c(q) && !mt76_queue_is_npu(q)) { + int i; + + /* clear descriptors */ + for (i = 0; i < q->ndesc; i++) + q->desc[i].ctrl = cpu_to_le32(MT_DMA_CTL_DMA_DONE); + } + ++ mt76_dma_queue_magic_cnt_init(dev, q); + if (reset_idx) { - Q_WRITE(q, cpu_idx, 0); ++ if (mt76_queue_is_emi(q)) ++ *q->emi_cpu_idx = 0; ++ else ++ Q_WRITE(q, cpu_idx, 0); + Q_WRITE(q, dma_idx, 0); + } + mt76_dma_sync_idx(dev, q); +} + - void mt76_dma_queue_reset(struct mt76_dev *dev, struct mt76_queue *q) - { - __mt76_dma_queue_reset(dev, q, true); - } - +static int +mt76_dma_add_rx_buf(struct mt76_dev *dev, struct mt76_queue *q, + struct mt76_queue_buf *buf, void *data) +{ + struct mt76_queue_entry *entry = &q->entry[q->head]; + struct mt76_txwi_cache *txwi = NULL; ++ u32 buf1 = 0, ctrl, info = 0; + struct mt76_desc *desc; + int idx = q->head; - u32 buf1 = 0, ctrl; + int rx_token; + + if (mt76_queue_is_wed_rro_ind(q)) { + struct mt76_wed_rro_desc *rro_desc; + + rro_desc = (struct mt76_wed_rro_desc *)q->desc; + data = &rro_desc[q->head]; + goto done; ++ } else if (mt76_queue_is_wed_rro_rxdmad_c(q)) { ++ data = &q->desc[q->head]; ++ goto done; + } + + desc = &q->desc[q->head]; + ctrl = FIELD_PREP(MT_DMA_CTL_SD_LEN0, buf[0].len); +#ifdef CONFIG_ARCH_DMA_ADDR_T_64BIT + buf1 = FIELD_PREP(MT_DMA_CTL_SDP0_H, buf->addr >> 32); +#endif + - if (mt76_queue_is_wed_rx(q)) { ++ if (mt76_queue_is_wed_rx(q) || mt76_queue_is_wed_rro_data(q)) { + txwi = mt76_get_rxwi(dev); + if (!txwi) + return -ENOMEM; + + rx_token = mt76_rx_token_consume(dev, data, txwi, buf->addr); + if (rx_token < 0) { + mt76_put_rxwi(dev, txwi); + return -ENOMEM; + } + + buf1 |= FIELD_PREP(MT_DMA_CTL_TOKEN, rx_token); + ctrl |= MT_DMA_CTL_TO_HOST; ++ ++ txwi->qid = q - dev->q_rx; ++ } ++ ++ if (mt76_queue_is_wed_rro_msdu_pg(q) && ++ dev->drv->rx_rro_add_msdu_page) { ++ if (dev->drv->rx_rro_add_msdu_page(dev, q, buf->addr, data)) ++ return -ENOMEM; ++ } ++ ++ if (q->flags & MT_QFLAG_WED_RRO_EN) { ++ info |= FIELD_PREP(MT_DMA_MAGIC_MASK, q->magic_cnt); ++ if ((q->head + 1) == q->ndesc) ++ q->magic_cnt = (q->magic_cnt + 1) % MT_DMA_MAGIC_CNT; + } + + WRITE_ONCE(desc->buf0, cpu_to_le32(buf->addr)); + WRITE_ONCE(desc->buf1, cpu_to_le32(buf1)); + WRITE_ONCE(desc->ctrl, cpu_to_le32(ctrl)); - WRITE_ONCE(desc->info, 0); ++ WRITE_ONCE(desc->info, cpu_to_le32(info)); + +done: + entry->dma_addr[0] = buf->addr; + entry->dma_len[0] = buf->len; + entry->txwi = txwi; + entry->buf = data; + entry->wcid = 0xffff; + entry->skip_buf1 = true; + q->head = (q->head + 1) % q->ndesc; + q->queued++; + + return idx; +} + +static int +mt76_dma_add_buf(struct mt76_dev *dev, struct mt76_queue *q, + struct mt76_queue_buf *buf, int nbufs, u32 info, + struct sk_buff *skb, void *txwi) +{ + struct mt76_queue_entry *entry; + struct mt76_desc *desc; + int i, idx = -1; + u32 ctrl, next; + + if (txwi) { + q->entry[q->head].txwi = DMA_DUMMY_DATA; + q->entry[q->head].skip_buf0 = true; + } + + for (i = 0; i < nbufs; i += 2, buf += 2) { + u32 buf0 = buf[0].addr, buf1 = 0; + + idx = q->head; + next = (q->head + 1) % q->ndesc; + + desc = &q->desc[idx]; + entry = &q->entry[idx]; + + if (buf[0].skip_unmap) + entry->skip_buf0 = true; + entry->skip_buf1 = i == nbufs - 1; + + entry->dma_addr[0] = buf[0].addr; + entry->dma_len[0] = buf[0].len; + + ctrl = FIELD_PREP(MT_DMA_CTL_SD_LEN0, buf[0].len); +#ifdef CONFIG_ARCH_DMA_ADDR_T_64BIT + info |= FIELD_PREP(MT_DMA_CTL_SDP0_H, buf[0].addr >> 32); +#endif + if (i < nbufs - 1) { + entry->dma_addr[1] = buf[1].addr; + entry->dma_len[1] = buf[1].len; + buf1 = buf[1].addr; + ctrl |= FIELD_PREP(MT_DMA_CTL_SD_LEN1, buf[1].len); +#ifdef CONFIG_ARCH_DMA_ADDR_T_64BIT + info |= FIELD_PREP(MT_DMA_CTL_SDP1_H, + buf[1].addr >> 32); +#endif + if (buf[1].skip_unmap) + entry->skip_buf1 = true; + } + + if (i == nbufs - 1) + ctrl |= MT_DMA_CTL_LAST_SEC0; + else if (i == nbufs - 2) + ctrl |= MT_DMA_CTL_LAST_SEC1; + + WRITE_ONCE(desc->buf0, cpu_to_le32(buf0)); + WRITE_ONCE(desc->buf1, cpu_to_le32(buf1)); + WRITE_ONCE(desc->info, cpu_to_le32(info)); + WRITE_ONCE(desc->ctrl, cpu_to_le32(ctrl)); + + q->head = next; + q->queued++; + } + + q->entry[idx].txwi = txwi; + q->entry[idx].skb = skb; + q->entry[idx].wcid = 0xffff; + + return idx; +} + +static void +mt76_dma_tx_cleanup_idx(struct mt76_dev *dev, struct mt76_queue *q, int idx, + struct mt76_queue_entry *prev_e) +{ + struct mt76_queue_entry *e = &q->entry[idx]; + + if (!e->skip_buf0) + dma_unmap_single(dev->dma_dev, e->dma_addr[0], e->dma_len[0], + DMA_TO_DEVICE); + + if (!e->skip_buf1) + dma_unmap_single(dev->dma_dev, e->dma_addr[1], e->dma_len[1], + DMA_TO_DEVICE); + + if (e->txwi == DMA_DUMMY_DATA) + e->txwi = NULL; + + *prev_e = *e; + memset(e, 0, sizeof(*e)); +} + +static void +mt76_dma_kick_queue(struct mt76_dev *dev, struct mt76_queue *q) +{ + wmb(); - Q_WRITE(q, cpu_idx, q->head); ++ if (mt76_queue_is_emi(q)) ++ *q->emi_cpu_idx = cpu_to_le16(q->head); ++ else ++ Q_WRITE(q, cpu_idx, q->head); +} + +static void +mt76_dma_tx_cleanup(struct mt76_dev *dev, struct mt76_queue *q, bool flush) +{ + struct mt76_queue_entry entry; + int last; + + if (!q || !q->ndesc) + return; + + spin_lock_bh(&q->cleanup_lock); + if (flush) + last = -1; + else + last = Q_READ(q, dma_idx); + + while (q->queued > 0 && q->tail != last) { + mt76_dma_tx_cleanup_idx(dev, q, q->tail, &entry); ++ mt76_npu_txdesc_cleanup(q, q->tail); + mt76_queue_tx_complete(dev, q, &entry); + + if (entry.txwi) { + if (!(dev->drv->drv_flags & MT_DRV_TXWI_NO_FREE)) + mt76_put_txwi(dev, entry.txwi); + } + + if (!flush && q->tail == last) + last = Q_READ(q, dma_idx); + } + spin_unlock_bh(&q->cleanup_lock); + + if (flush) { + spin_lock_bh(&q->lock); + mt76_dma_sync_idx(dev, q); + mt76_dma_kick_queue(dev, q); + spin_unlock_bh(&q->lock); + } + + if (!q->queued) + wake_up(&dev->tx_wait); +} + ++static void * ++mt76_dma_get_rxdmad_c_buf(struct mt76_dev *dev, struct mt76_queue *q, ++ int idx, int *len, bool *more) ++{ ++ struct mt76_queue_entry *e = &q->entry[idx]; ++ struct mt76_rro_rxdmad_c *dmad = e->buf; ++ u32 data1 = le32_to_cpu(dmad->data1); ++ u32 data2 = le32_to_cpu(dmad->data2); ++ struct mt76_txwi_cache *t; ++ u16 rx_token_id; ++ u8 ind_reason; ++ void *buf; ++ ++ rx_token_id = FIELD_GET(RRO_RXDMAD_DATA2_RX_TOKEN_ID_MASK, data2); ++ t = mt76_rx_token_release(dev, rx_token_id); ++ if (!t) ++ return ERR_PTR(-EAGAIN); ++ ++ q = &dev->q_rx[t->qid]; ++ dma_sync_single_for_cpu(dev->dma_dev, t->dma_addr, ++ SKB_WITH_OVERHEAD(q->buf_size), ++ page_pool_get_dma_dir(q->page_pool)); ++ ++ if (len) ++ *len = FIELD_GET(RRO_RXDMAD_DATA1_SDL0_MASK, data1); ++ if (more) ++ *more = !FIELD_GET(RRO_RXDMAD_DATA1_LS_MASK, data1); ++ ++ buf = t->ptr; ++ ind_reason = FIELD_GET(RRO_RXDMAD_DATA2_IND_REASON_MASK, data2); ++ if (ind_reason == MT_DMA_WED_IND_REASON_REPEAT || ++ ind_reason == MT_DMA_WED_IND_REASON_OLDPKT) { ++ mt76_put_page_pool_buf(buf, false); ++ buf = ERR_PTR(-EAGAIN); ++ } ++ t->ptr = NULL; ++ t->dma_addr = 0; *** 45385 LINES SKIPPED *** From nobody Fri Jan 23 14:05:34 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dyKTJ0f5vz6PGV0 for ; Fri, 23 Jan 2026 14:05: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dyKTH4v8Cz3tlf for ; Fri, 23 Jan 2026 14:05:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769177139; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=24UrIDgWjRfXbyWPmqohBDuZB+YKBQSD3+oObbxQF0E=; b=rZOvcM0L709VKJJm+6yfYMZYHA5Ug5OEGeTtLDTyJfkzemVFw9tt21cQkEfKmaO3tSMe2K 0mrO9hB097Twv+dCD7SCuPAwTdnuJ3s3OKBbd2m/E6xQoXJRsIjjyUU1AKKA90MMnaLOMw gHYTeqc/jF+3y9BMBzfsul9BhslnIToLcpgKo8aizCPYmW0AGBokDzBIKqKV9rUSxDNPp3 fWNAty47m7TIPRYEqWsb2ZrRdcmvJkljtdDDdZWHS9aEU2aEjaxAOpjQ6io95wIkyLKdWR lT+0gFAwqiSdStxAlhV1oP+QXRROYrJizINXUP4HQoFKkR6yWJoMwaKrTUjeqg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769177139; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=24UrIDgWjRfXbyWPmqohBDuZB+YKBQSD3+oObbxQF0E=; b=K8jW/PLC4ZSpg5XF2vKsSpETQZ/zgEXvS7z07OWQobGAGTuoOqY8CzqwfLwzrIrPWtcd26 OsUjXusie9FTrnNtR+9vEc35/TtYgBpqJ7ApFNAFQBbIE1iiZEfw8DdIG3LsvjS7hHrA6r 5ek3yp44SASvDZn6yYi7sZKqYezDdqpvWwe+IAFFp3+55DN5HuejNlT3sLEw/i1I8B9YFc BRSm4f3BrBZ07a2iftfbE61l3KoZuGCof9e+Fuz31Fg3fnqBXazseW54NXq1cw/VCJ+jjL 9zs/0wORKcK71+g1fRlBlouqKrRMbtoz/GM6vOcFWN+PzZ4cEoZs2dQqIOXIbw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769177139; a=rsa-sha256; cv=none; b=rKeEXtLIpy24UBMpFPTvSRJB4IR9RO7bSkZiaLAXKeXKfU3Wq7p8BUuKgnfubJFoB+GBuh 2yjLLIOBTjiQf/n2j8aizTdbSyHOorzEXs3RqsLvPTHcEaab0awlXtuP974ylaXPlSt+pd HWvoYx1+1a4+wvF3lLQgimU7WeyNMZRDTAAGFJYX2umNeZlrbV1vt78y1HBX7x0QfTMGm9 WoaRDtUykhRpYMql2x3uTeKkpiLFAucW5nc+zLSybUbmCLkOvHLFdetnAH68nsTl/sB+r3 4NlprLLYcFRg36H2vPxdtDS80iaHmFM1935CFjKN2Ow2eqyWi2thB0UZNmcq5Q== 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 4dyKTH40rlz5sJ for ; Fri, 23 Jan 2026 14:05:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id d184 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 23 Jan 2026 14:05:34 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 6b9cbeed6437 - main - CONTRIBUTING.md: Tweaks for clarity List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6b9cbeed643756e90b6323f5b735f9765dcda0ad Auto-Submitted: auto-generated Date: Fri, 23 Jan 2026 14:05:34 +0000 Message-Id: <6973802e.d184.2b76f650@gitrepo.freebsd.org> The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=6b9cbeed643756e90b6323f5b735f9765dcda0ad commit 6b9cbeed643756e90b6323f5b735f9765dcda0ad Author: Warner Losh AuthorDate: 2026-01-23 14:00:11 +0000 Commit: Warner Losh CommitDate: 2026-01-23 14:04:41 +0000 CONTRIBUTING.md: Tweaks for clarity Add a few tweaks to clarify the author and signed-off-by lines. Add clarifying note about the style checker. Refine the AI statements for clarity, but these will need to be revised once the AI policy has been completed. Sponsored by: Netflix --- CONTRIBUTING.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6f02f2598025..d80163fcd104 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -39,19 +39,19 @@ A pull request will be considered if: * You can respond to feedback quickly. If feedback is requested and one month passes without a response we may close the pull request. * It touches fewer than about 10 files and the changes are less than about 200 lines. Changes larger than this may be OK, or you may be asked to submit multiple pull requests of a more manageable size. * Each logical change is a separate commit within the pull request. Commit messages for each change should follow the [commit log message guide](https://docs.freebsd.org/en/articles/committers-guide/#commit-log-message). -* All commits have, as the author, your name and valid email address as you would like to see them in the FreeBSD repository. Fake github.com addresses cannot be used. But see [Author Name and Email][#author-name-and-email] for details. +* All commits have, as the git author, your name and valid email address as you would like to see them in the FreeBSD repository. Fake github.com addresses cannot be used. But see [Author Name and Email][#author-name-and-email] for details. * The scope of the pull request should not change during review. If the review suggests changes that expand the scope, please create an independent pull request. * Fixup commits should be squashed with the commit they are fixing. Each commit in your branch should be suitable for FreeBSD's repository. -* Commits should include one or more `Signed-off-by:` lines with name and email address certifying [Developer Certificate of Origin](https://developercertificate.org/). But see [Author Name and Email][#author-name-and-email] for details. +* Commit messages should include one or more `Signed-off-by:` trailer lines with name and email address certifying [Developer Certificate of Origin](https://developercertificate.org/). But see [Author Name and Email][#author-name-and-email] for details. * The commits follow FreeBSD's style guide. See [Style](#Style). -* Run tools/build/checkstyle9.pl on your Git branch and eliminate all errors, or provide an explanation for exceptions. +* Run tools/build/checkstyle9.pl on your Git branch and eliminate all errors, or provide an explanation for exceptions. The tool sometimes makes mistakes, and providing an explanation shows you have examined the output. * The commits do not introduce trailing white space. * If the commit fixes a bug, please add 'PR: \' to the commit message to document the Bugzilla Problem Report number. * If there's a code review related to this change, please include its URL in the commit message. However, where possible, please do not open both a differential review and a GitHub pull request. * If you have run FreeBSD's sources through a static analysis tool, please don't submit the raw results. Please also see the chunking up guidelines. Also, please make sure that kyua tests are the same before / after your change. Ideally, you'd also create a test case that shows an actual bug that's being fixed by these changes. * FreeBSD committers submitting pull requests are responsible for pushing them into the tree (possibly with approval if cross-repo commit bit policy needs it). Pull requests by FreeBSD committers will be closed after a month unless there's a very good reason not to. -* Submissions using generative AI will be rejected. -* Submissions from AI chatbots will result in the account being banned. +* Low quality submimssions will be rejected, especially if they were generated by AI with little to no refinement. +* Submissions by AI chatbots will result in the account being banned. Do not use pull requests interaction to train your LLM or similar AI model. When revising your pull request after feedback, please rebase with a forced push rather than a merge commit. From nobody Fri Jan 23 16:25:02 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dyNZ65XK8z6PQpk for ; Fri, 23 Jan 2026 16:25: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dyNZ64xsDz4GCY for ; Fri, 23 Jan 2026 16:25:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769185502; 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=Wjq07nWAo8ZOC3sx9SQo1b2w3KeEw8G5tDgx7MvNSts=; b=yZ20PrajcW6XBtwJFXd1lFLXlD5r5s0ALQDrtIH+2hfm1AatbCv6EBjV7hAxkJrSjrSOV6 sWxwJa6pwAtYCCLNctbD/0iSHOsWF3D5plZBRTBk2FClxjv5hbBzz8TWQE6niT1sc01sZU eIrWZE+XhxfLHdQ6/2iIN8qsYYHnzCPlTR3DJDcgmslihxhMbwVMsGYnaCzypntym5MN0g tyrmxGy2gWlFYRHhGaXpCMEfU6SwkQisw+E7RypdEBGY2oKQw9kbZQwPsTfbcegUXPzSng ZBX5rfm15zTLkbR7t1ClTWscsWlQM2vc61DsTy848d3ah4OnS/eEpITtzaeKcg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769185502; 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=Wjq07nWAo8ZOC3sx9SQo1b2w3KeEw8G5tDgx7MvNSts=; b=n0Qa4eYXo3pUu+1mcNmgIC//7I/9JqS071JiDdJFioeaSp8RYCc6xUmDqf9XgaCPohiKUB h/xUVLQy3VOxRLqc2ETsXj5uFOVMtzxDpZE1u5i2D70AARnZr3wIe8SwmYMQ1DZPlNoeIe +fjM3BLskRjdceAfnyVwpTieyNBU/IpmKwbyqIgUC1tYCaY5wIsYVGYuqsb6fxGC5QZ2Hs sMUSgZmVm1Cq2ua0RoMg9vp9Qb1AqwCeGLq7UuefkRl8Nwmve5iO36ibClVhDghoqgnjO+ pql2Na/sGhkINIXg6NexeL4newABoEY8RKoE4Iiq8f4Fm/LRSmJP6N/N59aQHw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769185502; a=rsa-sha256; cv=none; b=ca/9Is8vz1Q8xAJiwchCtMHTUl6IN7ns6dcAAyVOklm25pqlne6rYniWu0yzAVCSbqoNAj pl5rGCAvTZzNVgAJJy+fBM04Q3Ih+oBmf8mTEJrWintLeZmUQyc8IgXTbP5mSDv9g3W+lW +MZHuWh4dES3XMiCCf4VHuHPfB0w5d4/iyr+b3WtIwOg8QAiSYiXSpi4d66qvmv9CXv4oO cL6IH5hktCD2rRHPQwwMvGbgqUHjCOIMj9+D9aa1wiwJyCPRcf6hANytN3jSMkFj+w5GbO ZJ4gBPWN+q46VY037e1gwcMT3UhW9BjBnR1rKlVZ/A//9GA/EhW5Q5hZ/rBcEg== 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 4dyNZ64Vx5z9Sk for ; Fri, 23 Jan 2026 16:25:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 31f4f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 23 Jan 2026 16:25:02 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Artem Bunichev From: Jose Luis Duran Subject: git: e6bafbeb1ee7 - main - capsicum.4: Replace 'fi' ligature and smart quotation mark List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: e6bafbeb1ee7a61ddfe92ba052c476c7646c405b Auto-Submitted: auto-generated Date: Fri, 23 Jan 2026 16:25:02 +0000 Message-Id: <6973a0de.31f4f.455fb27e@gitrepo.freebsd.org> The branch main has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=e6bafbeb1ee7a61ddfe92ba052c476c7646c405b commit e6bafbeb1ee7a61ddfe92ba052c476c7646c405b Author: Artem Bunichev AuthorDate: 2026-01-23 16:17:46 +0000 Commit: Jose Luis Duran CommitDate: 2026-01-23 16:22:46 +0000 capsicum.4: Replace 'fi' ligature and smart quotation mark While here, wrap the line to 80 characters. Reviewed by: jlduran Fixes: c54534e60263 ("capsicum.4: Add some more detail from the Capsicum paper") MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54761 --- share/man/man4/capsicum.4 | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/share/man/man4/capsicum.4 b/share/man/man4/capsicum.4 index 1de8e4531f4f..2c65ea27f91c 100644 --- a/share/man/man4/capsicum.4 +++ b/share/man/man4/capsicum.4 @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd June 17, 2025 +.Dd January 23, 2026 .Dt CAPSICUM 4 .Os .Sh NAME @@ -39,7 +39,7 @@ is a lightweight OS capability and sandbox framework implementing a hybrid capability system model. .Nm is designed to blend capabilities with UNIX. -This approach achieves many of the benefits of least-privilege operation, while +This approach achieves many of the benefits of least-privilege operation, while preserving existing UNIX APIs and performance, and presents application authors with an adoption path for capability-oriented design. .Pp @@ -72,10 +72,10 @@ constrained. For instance, .Xr sysctl 2 can be used to query process-local information such as address space layout, -but also to monitor a system’s network connections. +but also to monitor a system's network connections. .Xr sysctl 2 -is constrained by explicitly marking \(~~60 of over 15000 parameters as permitted -in capability mode; all others are denied. +is constrained by explicitly marking \(~~60 of over 15000 parameters as +permitted in capability mode; all others are denied. .Pp The system calls which require constraints are .Xr sysctl 2 , From nobody Fri Jan 23 17:03:51 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dyPQv3yr9z6PTXv for ; Fri, 23 Jan 2026 17:03: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dyPQv34vNz4M4Q for ; Fri, 23 Jan 2026 17:03:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769187831; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5ZuWOSrV7a/oO3bymLvdCrgK2jvlHhDoBSJcvL0gqEw=; b=ONt5Q9aqaLS1Cm66Gj+3GKary8n4lhcBB4Fc5wDZSAGgSgGAG6qTg+oxCKOIl3yGKBac11 lLfeh7ldSeaWL2G2M5Kgz0KrCkuZW3FPRbCjfJ+JPaJUyjOQIZknjHzKm0cI6n0o5tbgNb Bh+2ykO54lxuDWD9i4xvbk9JZHf+jhbgGmDWPxiLJ+bACsGcssVHottKk22JqYxKRD4YFI xeX45A8NZPr0dOZmedw9UfaOmVxo5NElM8SLPPjyUtpPLCgY5ueSQ/qQZas7HG7aXZVUEA M/oJHx9S92+B56LIhzU8Ryy3KqCCewwwvzb+0C52QC4XdzTmIbv9s1vWabFItQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769187831; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5ZuWOSrV7a/oO3bymLvdCrgK2jvlHhDoBSJcvL0gqEw=; b=pNoF2o5ium12bdpPnDHk+OMKBwPhC2WBODlnppn58xaIYWXRqEdBgOp2l8w/6dQb0gkSbY LFHym30J4h5y0KNQxe9LuqI8PUfomdUCOt7oQEg1Y4oRatixb5EWRWgnXvVhXIJakEnLoU 4GrOuI2ZxHttOGzasSqRAp9R8n0Tsv9cYwFvivPzNp1LmSL3KsOXkKpE8aZIzjMNp2h2MZ CTHRYfn4DHBScbBYmRWm2ueO3LTRtwrdynNIUcKHwt2GlEgsftcpyzYhoM7juYNMLi12nv o42JdBAffPwoN3F7rDrk/AJpaxAR0WYsSLJ5CJKo8WZeo4vYTBipXf37yTLk6Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769187831; a=rsa-sha256; cv=none; b=rV/iw31tyPtkaBIsc0CECgDDxWdw9mxWahlNEj+oyDCq7d7g6ghtTKWzpDdcLqeuvGxXq3 LyoYm3KPeaTTnZ7jjn+rDDxC94rO2tLLMDo4jwGTy3TsYHmMc9e3512ITRWTW/3F/Fyq4f I2lnuPorM8NWLy4+R8m1EOie9FiL1z3JmSKtd6+cw/1tOUDKEbroRTPvQ0yc66zwxq1kYN sbkDXMsKK0/JXQZUTMrsnqF4kM+ceSCq3aLWFXVeaCebPwyMFkYj/zQp4kkH74ilLV7JZC wBg7Iyu7FqFYOkmyWOI0Y1UTFf+cp4PNu9SGFy/P2WvNYRrYlHtgN74zJw8u5A== 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 4dyPQv2RkKzBgm for ; Fri, 23 Jan 2026 17:03:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3767f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 23 Jan 2026 17:03:51 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 6c5fdba45a63 - main - arm/gic: Detect broken configurations List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6c5fdba45a63d66984e15ddc6996f5e88a55f22c Auto-Submitted: auto-generated Date: Fri, 23 Jan 2026 17:03:51 +0000 Message-Id: <6973a9f7.3767f.22208c22@gitrepo.freebsd.org> The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=6c5fdba45a63d66984e15ddc6996f5e88a55f22c commit 6c5fdba45a63d66984e15ddc6996f5e88a55f22c Author: Andrew Turner AuthorDate: 2026-01-23 14:31:04 +0000 Commit: Andrew Turner CommitDate: 2026-01-23 17:02:29 +0000 arm/gic: Detect broken configurations Some virtualization platforms provide broken configurations. There is a GIC interrupt controller, however accessing the CPU interface registers leads to an external data abort. As these are needed to handle interrupts we are unable to boot further. Detect this misconfiguration and panic to tell the user the issue. Reviewed by: emaste Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D54832 --- sys/arm/arm/gic.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/sys/arm/arm/gic.c b/sys/arm/arm/gic.c index e33bda4886b9..64f19c848ea2 100644 --- a/sys/arm/arm/gic.c +++ b/sys/arm/arm/gic.c @@ -151,6 +151,8 @@ static struct arm_gic_softc *gic_sc = NULL; /* CPU Interface */ #define gic_c_read_4(_sc, _reg) \ bus_read_4((_sc)->gic_res[GIC_RES_CPU], (_reg)) +#define gic_c_peek_4(_sc, _reg, _val) \ + bus_peek_4((_sc)->gic_res[GIC_RES_CPU], (_reg), (_val)) #define gic_c_write_4(_sc, _reg, _val) \ bus_write_4((_sc)->gic_res[GIC_RES_CPU], (_reg), (_val)) /* Distributor Interface */ @@ -347,7 +349,18 @@ arm_gic_attach(device_t dev) goto cleanup; } - icciidr = gic_c_read_4(sc, GICC_IIDR); + /* + * Try accessing a CPU interface register. On some broken + * virtualization environments this will raise an external + * data abort. When this happens we can detect it using + * by peeking at the register & checking for the fault. + * As there is no way to continue with a normal boot we + * panic. + */ + if (gic_c_peek_4(sc, GICC_IIDR, &icciidr) != 0) + panic("Unable to access %s CPU registers, " + "broken hardware or hypervisor configuration", + device_get_nameunit(dev)); device_printf(dev, "pn 0x%x, arch 0x%x, rev 0x%x, implementer 0x%x irqs %u\n", GICD_IIDR_PROD(icciidr), GICD_IIDR_VAR(icciidr), From nobody Fri Jan 23 17:33:33 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dyQ5B16xlz6PW2D for ; Fri, 23 Jan 2026 17:33: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dyQ5B0RzSz3Fmt for ; Fri, 23 Jan 2026 17:33:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769189614; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IHMAzSbkr5GhdTRTukVIf7X4ltaBVADJ/1qtCQ3BN28=; b=atfIUyP8DvogsGjLbEC/O4BkWps5tL4kitRimivq1bi27EuQUSsLTYoR3DwZWfjZTvTDpM cRaKwbbjIXf4domCjCu+RH5NdQ7v10oWAsF8BPkkLzZNZZ16A57MHgoPK6LT62E9w+kuyT W43nbIiA1hPkSmMA4mIkxMYs5GiO3HK7joA+HQkExkWbyZKZw9Gz3NIPIs5NwiSDonH0j0 X8UZt/0S5E1oz1U4Ptasmm6IIUqBWmlNXdvLBGIre3U9foShK8/dB1Kl+DQNIUgUlKrokB 9iBayIA2C8CnhVFm6ALUdTY/oB206Y3HQNkHXdeNzJKIafQ7RQQSQ6IfHL1g+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769189614; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IHMAzSbkr5GhdTRTukVIf7X4ltaBVADJ/1qtCQ3BN28=; b=ohzX/J83hctfxYLSpgBXx6mtnxlkmatAgvnSRil1bpS7vO01Q0HVQOYE56oORN4opPD7yz nYnYiwY8zJJK7kAFQtREyBRJE8BlI14J1i30uQb+0jhqzfwZGZWNafquWVN6YiQzddRLZV 8Z4SpOpKdph425dDi/kHE/99+KrsxqmgLFwuTufgEYbnyMQupSFqwzPiib1MLIK/+xtjK7 3Kesaa9vdG6qRF8S/spH+DOPM0lCrSr02iLan7r4HjS5wobuT7lQoNSUdqFV+Cg8guoTOz CSdfEAaE59BQgjalcdggjKOVQYJnv98gkjM/5xq2hGZ2e07lvuwMHdFtiUK6PA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769189614; a=rsa-sha256; cv=none; b=Xowb4K2F64QlN1u7ukaBx38/shVjpOs6ENariG0jHayO9Zd+ZLi694yj7z9uj1Yen5dgaX 7vaCXbBZWkedUbsiVz4l/78IWdgL6aOHmdYDTYLPWDNRhjx+TwhezGXb7BzqzCaGFu8Z4d pkLWnLeoyHARFJGOQnX7YPzJhWbD3+hR3s10B0y3YadsOTMtL72+I8oy6wp9wT3R3lFShv DXHRz+OstOIbKeyc8D0Nqm4y4tFinAZHJvVx4+ebHhcaL0DDylNQckEfz4mpfMyx6bVdB4 VhksAl7H2SCUt14c8rdJn2b0O4o96qAE7BveILAfZiOgdCyicPE7hoP78sRFWQ== 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 4dyQ596qvyzCNj for ; Fri, 23 Jan 2026 17:33:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 39ec8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 23 Jan 2026 17:33:33 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dimitry Andric Subject: git: 3cdb6c9d92ec - main - libc++ inttypes.h: define __STDC_CONSTANT_MACROS and __STDC_LIMIT_MACROS List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3cdb6c9d92ecf479a0df338267f3f844ef6feeb2 Auto-Submitted: auto-generated Date: Fri, 23 Jan 2026 17:33:33 +0000 Message-Id: <6973b0ed.39ec8.2658aed8@gitrepo.freebsd.org> The branch main has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=3cdb6c9d92ecf479a0df338267f3f844ef6feeb2 commit 3cdb6c9d92ecf479a0df338267f3f844ef6feeb2 Author: Dimitry Andric AuthorDate: 2026-01-23 17:31:53 +0000 Commit: Dimitry Andric CommitDate: 2026-01-23 17:33:23 +0000 libc++ inttypes.h: define __STDC_CONSTANT_MACROS and __STDC_LIMIT_MACROS Before transitively including the base version of inttypes.h, define __STDC_CONSTANT_MACROS and __STDC_LIMIT_MACROS, because the base inttypes.h directly includes sys/stdint.h, instead of going through the 'regular' stdint.h. The libc++ version of the latter does define those macros, to ensure things like UINT64_C() and SIZE_MAX are defined even in C++98 or C++03. MFC after: 3 days --- contrib/llvm-project/libcxx/include/inttypes.h | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/contrib/llvm-project/libcxx/include/inttypes.h b/contrib/llvm-project/libcxx/include/inttypes.h index 8664412bd52f..501cb1c11d53 100644 --- a/contrib/llvm-project/libcxx/include/inttypes.h +++ b/contrib/llvm-project/libcxx/include/inttypes.h @@ -241,12 +241,19 @@ uintmax_t wcstoumax(const wchar_t* restrict nptr, wchar_t** restrict endptr, int # pragma GCC system_header #endif -/* C99 stdlib (e.g. glibc < 2.18) does not provide format macros needed - for C++11 unless __STDC_FORMAT_MACROS is defined +/* C99 stdlib (e.g. glibc < 2.18) does not provide macros needed + for C++11 unless __STDC_CONSTANT_MACROS, __STDC_FORMAT_MACROS + and __STDC_LIMIT_MACROS are defined */ +#if defined(__cplusplus) && !defined(__STDC_CONSTANT_MACROS) +# define __STDC_CONSTANT_MACROS +#endif #if defined(__cplusplus) && !defined(__STDC_FORMAT_MACROS) # define __STDC_FORMAT_MACROS #endif +#if defined(__cplusplus) && !defined(__STDC_LIMIT_MACROS) +# define __STDC_LIMIT_MACROS +#endif #if __has_include_next() # include_next From nobody Fri Jan 23 18:09:46 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dyQtz342cz6PYPs for ; Fri, 23 Jan 2026 18:09: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dyQtz0hnkz3KcZ for ; Fri, 23 Jan 2026 18:09:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769191787; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=j2bFCyLLsQMYCy2+1c7prJIg8jLN8EBOQwtkqT8iGOE=; b=lGm2JucbLMad46iH6MIXMoSpK951JVv/uVkRYJSoZXfKWXMsyF4Bdd1OW5+tlhkZMLljL4 2Rzx93ScBoor2nTrBBiVzTYSkB/5AEqJUfe2/KAKmi95iaoX0/sYqSyZ3Tn20SbsD9KiYr f8mXN4IQ1oE1h2LfC0mGMH9jX7tglPTrhfVWT/yfy6fV0djvbewvwpbZycLAl5/ZBpnDSo gS1lbuMTfXsUMRvTPsl/HVSqW7ddle6zVtszxvGbQxRY6FPKcD6G/gRdy1BI1Yz0avq6zY mhTVsP965+gqxvzN+mzLJ5ndirRdoNx4FYyRE1kTQUy8Pker+Fz4dzJl/bYw5g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769191787; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=j2bFCyLLsQMYCy2+1c7prJIg8jLN8EBOQwtkqT8iGOE=; b=h8nXick8HQYvdyfCoNLcpE2js8iUMnPWADwdUEfxHyyIA1QZp4p/hbvYNE3pi7+sofl3DP NE5YhLYJjWa/FVn9r+8Kn53saqbtLaNmXnTBukIEcH1nwhj3A2mo8f1WyHGaQAwQ1CWFKQ pP6hixUKh9xD6XOTal99kV6pZj7MZZFKuVdP2iAu0QueL34sBUoXGQ5THn/3esncaMMEhR REEeNdIA6X4idPCxFzFWvj3Yw/P5ELrQojTdBIH5/semJSjXBmm27eUS89bHsgLVw7Nnpq Jvl1GtCfoe4c10tlmu0/wbVuUHxYgEoqLK+x/i3X/pBFEdosBbs31tFZOM3l/A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769191787; a=rsa-sha256; cv=none; b=ksP1fcf4pd4tzlaysIsODnDVgj7tLwzoN3hG54ganDyn4L/zKKp9mZt562bq/sJwPcs50P /nZmownRL3xuixeVb2JBde1mjdfui7UyJJbQ3+24rFYnOhXucuaFLWD9e3yy9hMS6RNFEn 3pUlOCVewO0rO/rkm+K345G1xf7sjJAjO6MwTiB+7Y9E5G7pGvm0zS2n0o3ceIPy/uONhw yz/O4t7JjtqzzkomJc9LqBI6gy18RjVZLSxHurZNGBK15f+DUuohhTZr6pO3wNpWl+zseZ kGXHAO/qyOZVQel1Ip38pRU0y9in/Nk2KEI6nvq01723OsWlb512sIDVjiLLsg== 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 4dyQty6QfszDWb for ; Fri, 23 Jan 2026 18:09:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3c1f4 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 23 Jan 2026 18:09:46 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 4990cf83f5fa - main - MAINTAINERS: Remove some stale entries List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4990cf83f5fa474f619293c8c8ed1c8ba4b74692 Auto-Submitted: auto-generated Date: Fri, 23 Jan 2026 18:09:46 +0000 Message-Id: <6973b96a.3c1f4.48e571de@gitrepo.freebsd.org> The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=4990cf83f5fa474f619293c8c8ed1c8ba4b74692 commit 4990cf83f5fa474f619293c8c8ed1c8ba4b74692 Author: Warner Losh AuthorDate: 2026-01-23 18:03:26 +0000 Commit: Warner Losh CommitDate: 2026-01-23 18:08:16 +0000 MAINTAINERS: Remove some stale entries Remove some stale entries, preen some others. Longer term, we need a better format. Also, if there's mistakes, let us know: we want it to be useful to people seeking review, not be perscriptive about who can do what. Reviewed by: srcmgr@ --- MAINTAINERS | 36 ++++++++++++++---------------------- 1 file changed, 14 insertions(+), 22 deletions(-) diff --git a/MAINTAINERS b/MAINTAINERS index a752e7d0600e..307932dee240 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -58,16 +58,15 @@ fusefs(4) asomers Pre-commit review requested. geli pjd Pre-commit review requested (both sys/geom/eli/ and sbin/geom/class/eli/). iwm(4) adrian Pre-commit review requested, send to freebsd-wireless@freebsd.org iwn(4) adrian Pre-commit review requested, send to freebsd-wireless@freebsd.org -kqueue jmg Pre-commit review requested. Documentation Required. libdpv dteske Pre-commit review requested. Keep in sync with dpv(1). -libfetch des Pre-commit review requested, email only. +libfetch des Pre-commit review requested libfigpar dteske Pre-commit review requested. libm freebsd-numerics Send email with patches to freebsd-numerics@ libpam des Pre-commit review requested, email only. linprocfs des Pre-commit review requested, email only. lpr gad Pre-commit review requested, particularly for lpd/recvjob.c and lpd/printjob.c. -nanobsd imp Pre-commit phabricator review requested. +nanobsd imp,jlduran Pre-commit phabricator review requested. net80211 adrian Pre-commit review requested, send to freebsd-wireless@freebsd.org nfs freebsd-fs@FreeBSD.org, rmacklem is best for reviews. mpi3mr(4) imp Pre-commit review requested. @@ -76,11 +75,11 @@ mps(4) imp Pre-commit review requested. nvd(4) imp Pre-commit review requested. nvme(4) imp Pre-commit review requested. nvmecontrol(8) imp Pre-commit review requested. -opencrypto jmg Pre-commit review requested. Documentation Required. -openssh des Pre-commit review requested, email only. +opencrypto jhb Pre-commit review requested. +openssh emaste Pre-commit review requested. openssl benl Pre-commit review requested. otus(4) adrian Pre-commit review requested, send to freebsd-wireless@freebsd.org -pci bus imp,jhb Pre-commit review requested. +sys/dev/pci imp,jhb Pre-commit review requested. pmcstudy(8) rrs Pre-commit review requested. procfs des Pre-commit review requested, email only. pseudofs des Pre-commit review requested, email only. @@ -93,7 +92,7 @@ sendmail gshapiro Pre-commit review requested. sh(1) jilles Pre-commit review requested. This also applies to kill(1), printf(1) and test(1) which are compiled in as builtins. -share/man ziaee Pre-commit review please +share/man ziaee Pre-commit review please share/mk imp, bapt, bdrewery, emaste, sjg Make is hard. share/mk/*.test.mk imp,bapt,bdrewery, Pre-commit review requested. emaste,ngie,sjg,#test @@ -103,33 +102,26 @@ stand imp Pre-commit review strongly requested. sys/compat/linuxkpi pre-commit review requested via #linuxkpi phabricator group. sys/contrib/dev/ice erj Pre-commit phabricator review requested. sys/netpfil/ipfilter cy Pre-commit review requested. -sys/dev/e1000 erj Pre-commit phabricator review requested. -sys/dev/ixgbe erj Pre-commit phabricator review requested. -sys/dev/ixl erj Pre-commit phabricator review requested. -sys/dev/ice erj Pre-commit phabricator review requested. +sys/dev/e1000 #intel_networking Pre-commit phabricator review requested. +sys/dev/ixgbe #intel_networking Pre-commit phabricator review requested. +sys/dev/ixl #intel_networking Pre-commit phabricator review requested. +sys/dev/ice #intel_networking Pre-commit phabricator review requested. sys/dev/xen royger Pre-commit review recommended. sys/netinet/ip_carp.c glebius Pre-commit review recommended. sys/netpfil/pf kp,glebius Pre-commit review recommended. sys/x86/xen royger Pre-commit review recommended. sys/xen royger Pre-commit review recommended. tests ngie,#test Pre-commit review requested. -tools/build imp Pre-commit review requested, especially to fix bootstrap issues. +tools/build imp,jrtc27 Pre-commit review requested, especially to fix bootstrap issues. top(1) eadler Pre-commit review requested. ufshci(4) jaeyoon Pre-commit review requested. usr.sbin/bsdconfig dteske Pre-commit phabricator review requested. usr.sbin/dpv dteske Pre-commit review requested. Keep in sync with libdpv. usr.sbin/pkg pkg@ Please coordinate behavior or flag changes with pkg team. usr.sbin/sysrc dteske Pre-commit phabricator review requested. Keep in sync with bsdconfig(8) sysrc.subr. -vmm(4) jhb Pre-commit review requested via #bhyve - phabricator group. -libvmmapi jhb Pre-commit review requested via #bhyve - phabricator group. -usr.sbin/bhyve* jhb Pre-commit review requested via #bhyve - phabricator group. -autofs(4) trasz Pre-commit review recommended. -iscsi(4) trasz Pre-commit review recommended. -rctl(8) trasz Pre-commit review recommended. -sys/dev/ofw nwhitehorn Pre-commit review recommended. +vmm(4) #bhyve Pre-commit review requested via #bhyve phabricator group. +libvmmapi #bhyve Pre-commit review requested via #bhyve phabricator group. +usr.sbin/bhyve* #bhyve Pre-commit review requested via #bhyve phabricator group. sys/dev/usb/wlan adrian Pre-commit review requested, send to freebsd-wireless@freebsd.org sys/arm/allwinner manu Pre-commit review requested sys/arm64/rockchip manu Pre-commit review requested From nobody Fri Jan 23 19:01:48 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dyS305tWwz6Pchr for ; Fri, 23 Jan 2026 19:01: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dyS305RPQz3TRX for ; Fri, 23 Jan 2026 19:01:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769194908; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4RMnbRgnukBgbgOLVtQQTunET/0S8sOKYrHjFMll/TA=; b=gMDW3xtLts44eHBJNJszSgS1A9oE/8/UHIUvbsg7CbHuyL/lZghUrSkFHopqaJeCfliBzx zQGzgfFlFKBsilaFMEha+T8X2JnS9so0v4hBB9sGFXpEphhb7RZZZ4Hen/tZcvANP4NP5b 2YKAEyKmYbaIPX8Zaw8TL6tsjT5ZQJrEBDj7NYSECylhT+XRdNbHQfZ26YaDo3lsPGg+l0 ULuGlncUIDaQYJZ7a9+Vj4SUHuVYjfmiiPM83Nms0Y9+vlLjwzSuO21c4aczjotkglDCAV g3pDOn8dvitD6eATnDLNxEHR1Yd7wKHYRctDHX/objh5QpJPxoHUAWzC6UZPBw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769194908; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4RMnbRgnukBgbgOLVtQQTunET/0S8sOKYrHjFMll/TA=; b=gD6KdaG4IYWHIYVdSE9NW9jWktTWUGg5ZzNiYpULomT4PvL9wYOcpZh8X2GbAVVHR14lTt zF3cZm/AX38YtjEcPsv0HOoYg4KIetLW906BPQAmEue9X0lqcybbF/Zm9YcZkQaeWDAQch wCoScu4rcplxVjvHfqSZ0Uznk7JTzHiDwlIGa9mVAKfFn4ZFrFtE6LrNG/1PL37fibETMa /+C3uTqOdm7euikDzNOqJ3O2KCMfYM5+hJzLk2RrseYFQ+61CwSoETJgfK3aV65kGJdfMc VzivY+sQJHoyZnLawbX8JqNl4RAPgDXqd5Nj6gmlZXInZBSkQXavmQkjYOf6pw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769194908; a=rsa-sha256; cv=none; b=GRc5A2h1+3II5SlyEZV5LhaAnxLyhlna49lhf8NRA4tYx6OaF6JWjbaH2+X14gdCnQHOTH 4XskPksWPY2Br5ViUWlaDM6Y+TRfi3sScQhnnlFeWeCsSGJI/k+xpNmCgk93z+b/I372lm 9lreRrQLaZfrQ2VmqyDyuziY1zvKtPOOSzuQJEyVPBbUwh07gkAIvyGRmN3hT7umpHjngA HPz5TUTdjCjwn0i3YO3Qd6ei6Pqty4UFv6DDqo6jhf2Auz/EdLorv1CFjM5YBgOkV8zvtO kl8kgIVFUVYzhcDfFiujxjZJ/bLL+4TGbw1O4XYNRoLeKkGPys/UnDQGsNHLYQ== 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 4dyS304vMWzXJZ for ; Fri, 23 Jan 2026 19:01:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id a716 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 23 Jan 2026 19:01:48 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 37d11fde8f58 - main - tests/kern: add test for SSL_sendfile() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 37d11fde8f581a1d18c2fea235085d0d63e09384 Auto-Submitted: auto-generated Date: Fri, 23 Jan 2026 19:01:48 +0000 Message-Id: <6973c59c.a716.4e45f27c@gitrepo.freebsd.org> The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=37d11fde8f581a1d18c2fea235085d0d63e09384 commit 37d11fde8f581a1d18c2fea235085d0d63e09384 Author: Gleb Smirnoff AuthorDate: 2026-01-21 04:05:21 +0000 Commit: Gleb Smirnoff CommitDate: 2026-01-23 19:00:49 +0000 tests/kern: add test for SSL_sendfile() --- tests/sys/kern/Makefile | 2 + tests/sys/kern/ssl_sendfile.c | 514 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 516 insertions(+) diff --git a/tests/sys/kern/Makefile b/tests/sys/kern/Makefile index 7a77fa08e2b1..e56dd560414a 100644 --- a/tests/sys/kern/Makefile +++ b/tests/sys/kern/Makefile @@ -47,6 +47,7 @@ TEST_METADATA.sigwait+= is_exclusive="true" ATF_TESTS_C+= subr_physmem_test .endif PLAIN_TESTS_C+= subr_unit_test +ATF_TESTS_C+= ssl_sendfile ATF_TESTS_C+= sysctl_kern_proc ATF_TESTS_C+= sys_getrandom ATF_TESTS_C+= tty_pts @@ -83,6 +84,7 @@ PROGS+= sendfile_helper LIBADD.copy_file_range+= md LIBADD.jail_lookup_root+= jail util +LIBADD.ssl_sendfile+= pthread crypto ssl CFLAGS.sys_getrandom+= -I${SRCTOP}/sys/contrib/zstd/lib LIBADD.sys_getrandom+= zstd LIBADD.sys_getrandom+= c diff --git a/tests/sys/kern/ssl_sendfile.c b/tests/sys/kern/ssl_sendfile.c new file mode 100644 index 000000000000..928a44a50811 --- /dev/null +++ b/tests/sys/kern/ssl_sendfile.c @@ -0,0 +1,514 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2026 Gleb Smirnoff + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY 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 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 +#include + +#include + +#define FSIZE (size_t)(1024 * 1024) + +struct ctx { + EVP_PKEY *pkey; /* Self-signed key ... */ + X509 *cert; /* ... and certificate */ + SSL_CTX *ctx; /* client context */ + SSL *cln; /* client connection */ + SSL *srv; /* server connection */ + int cs; /* client socket */ + int ss; /* server socket */ + int fd; /* test file descriptor */ + void *mfd; /* mapped contents of the test file */ + uint16_t port; /* server listening port */ + pthread_t thr; /* server thread */ + off_t offset; /* SSL_sendfile offset */ + size_t size; /* SSL_sendfile size */ + bool nb; /* SSL_sendfile mode */ + ossl_ssize_t sbytes; /* SSL_sendfile returned sbytes */ + enum { + INIT, + READY, + RUNNING, + EXITING, + } state; + pthread_mutex_t mtx; + pthread_cond_t cv; +}; + +static void *server_thread(void *arg); + +static void +common_init(struct ctx *c) +{ + char hostname[sizeof("localhost:65536")]; + char tempname[] = "/tmp/ssl_sendfile_test.XXXXXXXXXX"; + X509_NAME *name; + X509_EXTENSION *ext; + SSL *ssl; + bool enable; + size_t len = sizeof(enable); + + if (sysctlbyname("kern.ipc.tls.enable", &enable, &len, NULL, 0) == -1) { + if (errno == ENOENT) + atf_tc_skip("kernel does not have options KERN_TLS"); + atf_libc_error(errno, "Failed to read kern.ipc.tls.enable"); + } + if (!enable) + atf_tc_skip("kern.ipc.tls.enable is off"); + + c->state = INIT; + + /* + * Generate self signed key & certificate. + */ + SSL_library_init(); + OpenSSL_add_all_algorithms(); + SSL_load_error_strings(); + ATF_REQUIRE(c->pkey = EVP_RSA_gen(2048)); + ATF_REQUIRE(c->cert = X509_new()); + ASN1_INTEGER_set(X509_get_serialNumber(c->cert), 1); + X509_set_version(c->cert, 2); + X509_gmtime_adj(X509_get_notBefore(c->cert), 0); + X509_gmtime_adj(X509_get_notAfter(c->cert), 60L*60*24*365); + X509_set_pubkey(c->cert, c->pkey); + name = X509_get_subject_name(c->cert); + X509_NAME_add_entry_by_txt(name, "CN", MBSTRING_ASC, + (unsigned char *)"localhost", -1, -1, 0); + X509_set_issuer_name(c->cert, name); + ext = X509V3_EXT_conf_nid(NULL, NULL, NID_basic_constraints, + "critical,CA:FALSE"); + X509_add_ext(c->cert, ext, -1); + X509_EXTENSION_free(ext); + ATF_REQUIRE(X509_sign(c->cert, c->pkey, EVP_sha256()) > 0); + + /* + * Create random filled file with memory mapping. + */ + ATF_REQUIRE((c->fd = mkstemp(tempname)) > 0); + ATF_REQUIRE(unlink(tempname) == 0); + ATF_REQUIRE(ftruncate(c->fd, FSIZE) == 0); + ATF_REQUIRE((c->mfd = mmap(NULL, FSIZE, PROT_READ | PROT_WRITE, + MAP_SHARED, c->fd, 0)) != MAP_FAILED); + arc4random_buf(c->mfd, FSIZE); + + ATF_REQUIRE(pthread_mutex_init(&c->mtx, NULL) == 0); + ATF_REQUIRE(pthread_cond_init(&c->cv, NULL) == 0); + + /* + * Start server and wait for it to finish bind(2) + listen(2). + */ + ATF_REQUIRE(pthread_mutex_lock(&c->mtx) == 0); + ATF_REQUIRE(pthread_create(&c->thr, NULL, server_thread, c) == 0); + if (c->state != READY) + ATF_REQUIRE(pthread_cond_wait(&c->cv, &c->mtx) == 0); + ATF_REQUIRE(c->state == READY); + ATF_REQUIRE(pthread_mutex_unlock(&c->mtx) == 0); + + /* + * Connect client. + */ + ATF_REQUIRE(c->ctx = SSL_CTX_new(TLS_client_method())); + ATF_REQUIRE(X509_STORE_add_cert(SSL_CTX_get_cert_store(c->ctx), + c->cert)); + ATF_REQUIRE(ssl = c->cln = SSL_new(c->ctx)); + ATF_REQUIRE((c->cs = socket(AF_INET, SOCK_STREAM, 0)) > 0); + ATF_REQUIRE(connect(c->cs, (struct sockaddr *)&(struct sockaddr_in) + { .sin_family = AF_INET, .sin_len = sizeof(struct sockaddr_in), + .sin_addr.s_addr = htonl(INADDR_LOOPBACK), .sin_port = c->port }, + sizeof(struct sockaddr_in)) == 0); + ATF_REQUIRE(SSL_set_fd(ssl, c->cs) == 1); + ATF_REQUIRE(snprintf(hostname, sizeof(hostname), "localhost:%u", + ntohs(c->port)) >= (int)sizeof("localhost:0")); + ATF_REQUIRE(SSL_set_tlsext_host_name(ssl, hostname) == 1); + SSL_set_verify(ssl, SSL_VERIFY_PEER, NULL); + ATF_REQUIRE(SSL_connect(ssl) == 1); + SSL_set_mode(ssl, SSL_MODE_AUTO_RETRY); + ATF_REQUIRE(fcntl(c->cs, F_SETFL, O_NONBLOCK) != -1); +} + +static void +common_cleanup(struct ctx *c) +{ + + ATF_REQUIRE(pthread_mutex_lock(&c->mtx) == 0); + c->state = EXITING; + ATF_REQUIRE(pthread_cond_signal(&c->cv) == 0); + ATF_REQUIRE(pthread_mutex_unlock(&c->mtx) == 0); + ATF_REQUIRE(pthread_join(c->thr, NULL) == 0); + + ATF_REQUIRE(pthread_mutex_destroy(&c->mtx) == 0); + ATF_REQUIRE(pthread_cond_destroy(&c->cv) == 0); + + SSL_free(c->cln); + SSL_CTX_free(c->ctx); + X509_free(c->cert); + EVP_PKEY_free(c->pkey); +} + +static void * +server_thread(void *arg) { + struct ctx *c = arg; + SSL_CTX *srv; + SSL *ssl; + struct sockaddr_in sin = { + .sin_family = AF_INET, + .sin_len = sizeof(sin), + .sin_addr.s_addr = htonl(INADDR_LOOPBACK), + }; + int s; + + ATF_REQUIRE(srv = SSL_CTX_new(TLS_server_method())); + ATF_REQUIRE(SSL_CTX_set_options(srv, SSL_OP_ENABLE_KTLS) & + SSL_OP_ENABLE_KTLS); + SSL_CTX_use_PrivateKey(srv, c->pkey); + SSL_CTX_use_certificate(srv, c->cert); + ATF_REQUIRE((s = socket(AF_INET, SOCK_STREAM, 0)) > 0); + ATF_REQUIRE(setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &(socklen_t){1}, + sizeof(int)) == 0); + ATF_REQUIRE(bind(s, (struct sockaddr *)&sin, sizeof(sin)) == 0); + ATF_REQUIRE(getsockname(s, (struct sockaddr *)&sin, + &(socklen_t){ sizeof(sin) }) == 0); + ATF_REQUIRE(listen(s, -1) == 0); + + ATF_REQUIRE(pthread_mutex_lock(&c->mtx) == 0); + c->port = sin.sin_port; + c->state = READY; + ATF_REQUIRE(pthread_cond_signal(&c->cv) == 0); + ATF_REQUIRE(pthread_mutex_unlock(&c->mtx) == 0); + + ATF_REQUIRE((c->ss = accept(s, NULL, NULL)) > 0); + ssl = c->srv = SSL_new(srv); + SSL_set_fd(ssl, c->ss); + SSL_set_mode(ssl, SSL_MODE_AUTO_RETRY); + ATF_REQUIRE(SSL_accept(ssl) > 0); + + ATF_REQUIRE(pthread_mutex_lock(&c->mtx) == 0); + while (c->state != EXITING) { + if (c->state == RUNNING) { + ATF_REQUIRE(fcntl(c->ss, F_SETFL, + c->nb ? O_NONBLOCK : 0) != -1); + c->sbytes = SSL_sendfile(ssl, c->fd, c->offset, + c->size, 0); + c->state = READY; + } + ATF_REQUIRE(c->state == READY); + ATF_REQUIRE(pthread_cond_signal(&c->cv) == 0); + ATF_REQUIRE(pthread_cond_wait(&c->cv, &c->mtx) == 0); + } + ATF_REQUIRE(pthread_mutex_unlock(&c->mtx) == 0); + + SSL_shutdown(ssl); + SSL_free(ssl); + close(c->ss); + SSL_CTX_free(srv); + close(s); + + return (NULL); +} + +static void +sendme_locked(struct ctx *c, off_t offset, size_t size, bool nb) +{ + ATF_REQUIRE(c->state == READY); + c->state = RUNNING; + c->offset = offset; + c->size = size; + c->nb = nb; + ATF_REQUIRE(pthread_cond_signal(&c->cv) == 0); +} + +static void +sendme(struct ctx *c, off_t offset, size_t size, bool nb) +{ + ATF_REQUIRE(pthread_mutex_lock(&c->mtx) == 0); + sendme_locked(c, offset, size, nb); + ATF_REQUIRE(pthread_mutex_unlock(&c->mtx) == 0); +} + +/* + * Block until non-blocking socket has at least a byte. + */ +static int +SSL_read_b(SSL *ssl, void *buf, int size) +{ + int rv, fd; + + ATF_REQUIRE((fd = SSL_get_fd(ssl)) > 0); + while ((rv = SSL_read(ssl, buf, size)) <= 0 && + SSL_get_error(ssl, rv) == SSL_ERROR_WANT_READ) + ATF_REQUIRE(poll(&(struct pollfd){ .fd = fd, .events = POLLIN }, + 1, INFTIM) == 1); + + return (rv); +} + +ATF_TC_WITHOUT_HEAD(basic); +ATF_TC_BODY(basic, tc) +{ + struct ctx c; + char buf[64]; + size_t nread; + int n; + + common_init(&c); + + sendme(&c, 0, 0, false); + nread = 0; + while (nread < FSIZE && (n = SSL_read_b(c.cln, buf, sizeof(buf))) > 0) { + ATF_REQUIRE(memcmp((char *)c.mfd + nread, buf, n) == 0); + nread += n; + } + ATF_REQUIRE(nread == FSIZE); + ATF_REQUIRE(c.sbytes == FSIZE); + + common_cleanup(&c); +} + +ATF_TC_WITHOUT_HEAD(random); +ATF_TC_BODY(random, tc) +{ + struct ctx c; +#define RSIZE (256*1024) + + common_init(&c); + + for (u_int i = 0; i < 10; i++) { + char buf[RSIZE]; + off_t offset; + size_t size, n, nread, expect; + + offset = arc4random() % FSIZE; + size = arc4random() % RSIZE; + sendme(&c, offset, size, false); + expect = offset + size < FSIZE ? size : FSIZE - offset; + nread = 0; + while (nread < expect && + (n = SSL_read_b(c.cln, buf, sizeof(buf))) > 0) { + ATF_REQUIRE(memcmp((char *)c.mfd + offset + nread, buf, + n) == 0); + nread += n; + } + ATF_REQUIRE(nread == expect); + ATF_REQUIRE(c.sbytes == (ssize_t)expect); + } + + common_cleanup(&c); +} + +/* Truncate the file while sendfile(2) is working on it. */ +ATF_TC_WITHOUT_HEAD(truncate); +ATF_TC_BODY(truncate, tc) +{ + struct ctx c; + char buf[128 * 1024]; + size_t nread; + int n; +#define TRUNC (FSIZE / 2) + + common_init(&c); + + sendme(&c, 0, 0, false); + /* Make sure sender is waiting on the socket buffer. */ + while (poll(&(struct pollfd){ .fd = c.ss, .events = POLLOUT }, 1, 1) + != 0) + ; + ATF_REQUIRE(ftruncate(c.fd, TRUNC) == 0); + nread = 0; + while (nread < TRUNC && (n = SSL_read_b(c.cln, buf, sizeof(buf))) > 0) { + ATF_REQUIRE(memcmp((char *)c.mfd + nread, buf, n) == 0); + nread += n; + } + ATF_REQUIRE(nread == TRUNC); + ATF_REQUIRE(c.sbytes == TRUNC); + + common_cleanup(&c); +} + +/* Grow the file while sendfile(2) is working on it. */ +ATF_TC_WITHOUT_HEAD(grow); +ATF_TC_BODY(grow, tc) +{ + struct ctx c; + char buf[128 * 1024]; + size_t nread; + void *map; + int n; +#define GROW (FSIZE/2) + + common_init(&c); + + sendme(&c, 0, 0, false); + /* Make sure sender is waiting on the socket buffer. */ + while (poll(&(struct pollfd){ .fd = c.ss, .events = POLLOUT }, 1, 1) + != 0) + ; + /* Grow the file and create second map. */ + ATF_REQUIRE(ftruncate(c.fd, FSIZE + GROW) == 0); + ATF_REQUIRE((map = mmap(NULL, GROW, PROT_READ | PROT_WRITE, + MAP_SHARED, c.fd, FSIZE)) != MAP_FAILED); + arc4random_buf(map, GROW); + + /* Read out original part. */ + nread = 0; + while (nread < FSIZE && (n = SSL_read_b(c.cln, buf, + FSIZE - nread > sizeof(buf) ? sizeof(buf) : FSIZE - nread)) > 0) { + ATF_REQUIRE(memcmp((char *)c.mfd + nread, buf, n) == 0); + nread += n; + } + ATF_REQUIRE(nread == FSIZE); + /* Read out grown part. */ + nread = 0; + while (nread < GROW && (n = SSL_read_b(c.cln, buf, sizeof(buf))) > 0) { + ATF_REQUIRE(memcmp((char *)map + nread, buf, n) == 0); + nread += n; + } + ATF_REQUIRE(nread == GROW); + ATF_REQUIRE(c.sbytes == FSIZE + GROW); + + common_cleanup(&c); +} + +ATF_TC_WITHOUT_HEAD(offset_beyond_eof); +ATF_TC_BODY(offset_beyond_eof, tc) +{ + struct ctx c; + + common_init(&c); + + c.sbytes = -1; + sendme(&c, FSIZE + 1, 0, false); + ATF_REQUIRE(pthread_mutex_lock(&c.mtx) == 0); + while (c.state != READY) + ATF_REQUIRE(pthread_cond_wait(&c.cv, &c.mtx) == 0); + ATF_REQUIRE(c.sbytes == 0); + ATF_REQUIRE(pthread_mutex_unlock(&c.mtx) == 0); + + common_cleanup(&c); +} + +/* + * Prove that we can differentiate a short write due to EAGAIN from one due to + * end of file. + */ +ATF_TC_WITHOUT_HEAD(eagain_vs_eof); +ATF_TC_BODY(eagain_vs_eof, tc) +{ + struct ctx c; + char buf[16 * 1024]; + ssize_t nread; + int n; + + common_init(&c); + + /* + * Exercise short write due to no buffer space on non-blocking + * socket. Internall sendfile(2) returns -1 and errno == EAGAIN. + */ + ATF_REQUIRE(pthread_mutex_lock(&c.mtx) == 0); + sendme_locked(&c, 0, FSIZE, true); + while (c.state != READY) + ATF_REQUIRE(pthread_cond_wait(&c.cv, &c.mtx) == 0); + ATF_REQUIRE(c.sbytes > 0); + ATF_REQUIRE(SSL_get_error(c.srv, c.sbytes) == 0); +#if 0 /* see https://github.com/openssl/openssl/issues/29742 */ + ATF_REQUIRE(BIO_should_retry(SSL_get_wbio(c.srv))); +#endif + + /* + * Exercise second attempt on already full buffer. + */ + sendme_locked(&c, 0, FSIZE, true); + while (c.state != READY) + ATF_REQUIRE(pthread_cond_wait(&c.cv, &c.mtx) == 0); + ATF_REQUIRE(c.sbytes == -1); + ATF_REQUIRE(SSL_get_error(c.srv, c.sbytes) == SSL_ERROR_WANT_WRITE); + ATF_REQUIRE(BIO_should_retry(SSL_get_wbio(c.srv))); + + /* Clear the buffer. */ + nread = 0; + while (nread < c.sbytes && + (n = SSL_read_b(c.cln, buf, sizeof(buf))) > 0) { + ATF_REQUIRE(memcmp((char *)c.mfd + nread, buf, n) == 0); + nread += n; + } + + /* + * Exercise zero length write: offset == file size. + * + * SSL_ERROR_SYSCALL seems a strange error code, as the syscall did not + * fail, and errno is clear, because a request to send 0 bytes is + * legitimate one. This test just documents the existing behavior + * rather than asserts that this is a correct behavior. + */ + sendme_locked(&c, FSIZE, 0, true); + while (c.state != READY) + ATF_REQUIRE(pthread_cond_wait(&c.cv, &c.mtx) == 0); + ATF_REQUIRE(c.sbytes == 0); + ATF_REQUIRE(SSL_get_error(c.srv, c.sbytes) == SSL_ERROR_SYSCALL); +#if 0 /* see https://github.com/openssl/openssl/issues/29742 */ + ATF_REQUIRE(!BIO_should_retry(SSL_get_wbio(c.srv))); +#endif + + /* + * Exercise short write due to end of file. + */ + sendme_locked(&c, FSIZE - 100, 0, true); + while (c.state != READY) + ATF_REQUIRE(pthread_cond_wait(&c.cv, &c.mtx) == 0); + ATF_REQUIRE(c.sbytes == 100); + ATF_REQUIRE(SSL_get_error(c.srv, c.sbytes) == 0); +#if 0 /* see https://github.com/openssl/openssl/issues/29742 */ + ATF_REQUIRE(!BIO_should_retry(SSL_get_wbio(c.srv))); +#endif + + ATF_REQUIRE(pthread_mutex_unlock(&c.mtx) == 0); + + common_cleanup(&c); +} + +ATF_TP_ADD_TCS(tp) +{ + ATF_TP_ADD_TC(tp, basic); + ATF_TP_ADD_TC(tp, random); + ATF_TP_ADD_TC(tp, truncate); + ATF_TP_ADD_TC(tp, grow); + ATF_TP_ADD_TC(tp, offset_beyond_eof); + ATF_TP_ADD_TC(tp, eagain_vs_eof); + + return atf_no_error(); +} From nobody Fri Jan 23 20:57:42 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dyVcl4yDfz6PlZl for ; Fri, 23 Jan 2026 20:57: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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dyVcl0VDcz3fvc for ; Fri, 23 Jan 2026 20:57:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769201863; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tNt588Pq3ctuA+exaTHjihLnA1i1z8DC/7sqAVxQ2Fs=; b=Msj3460ADEeHQutccX2fiR65LzJueY2Yc5snt5xaoxrc7ngaucajFJaF/tzjqTnrmrR4Tf hYclFe0BCakjHVyXtUHUwBvx2ACJEqJ1i2/XAo8nqQ8LeO1Rp5p/0igi74AbmeWVLoglXl aankpN1zSdB5gHYl0OjdPbbX+Raial7AcB9LJKIUC9ESSZHyZexx3xxTA96tWtF64bvbM/ VvLWecgLxKhP2vFIRLOqdiJ00uQVWWYxmofzZakazjOjj206WhUfPFbFxd4mI+ycaGcDx2 5OZ61IJlIIuy7NZIur6QQn+wES/mrgv0NvVbDh4juvGtz7i9DgCzMtNe0pxgwg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769201863; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tNt588Pq3ctuA+exaTHjihLnA1i1z8DC/7sqAVxQ2Fs=; b=E+FOkt6rMcVyfQDYlWcrzdxqk/8JCzS67WH6Jb7zG2oXexjSwFYln0QQhCdPoOrLed4rrL 2MyqJrPd9/WVifWzyB9iQZrOP1bqYkSQOHL78+zC+ANjxdXfty7S/8Pz+saGUo2usQlrDZ qJcFlEG7HSImCmxYTBssb+D6zKBrPQ6HJrxG+vXeC08UNGCTPwIdxdGgwoa14V6vFDC+D4 gY+hMINZwByCUeeUvcLuLsXXcgHyJ7eHP9v7bZXu6PyvCncXJxtHYBp5yi0ea2368pD59B lykNErbSwPc7s99mYNiyXUOX2xzll7/mvlsfJ0QXRfuL/Ho+S3ZtGRFRiE3z+A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769201863; a=rsa-sha256; cv=none; b=JDD3U+Dc+oYn6kWBqrRfx1fpGPKKd/B7duEP1iEUOj0QGs76v6eXIGFEY5q14KzzKrbsMp gXaJrDbVoEAZOJxg6yzkjyjPZyKvUNwX2mO7OmHJ0zPIBc3LM2iArZv9KKd5915pCQVf9H mZh5HMhA91z68BWqf1wnpgUTKi8aZ8TbJ7jarr5aDap+yZkxHoiwKLj29KT6sV88vxIW7p ReCujCGevZIu7EqlxaiYsJnIv+q+47CE3wfqNP/3P3Qvd0GhNLm41fT2/S0Jr3EKSPbQjU 3QdTijbSp7UB3rsBz2KiflAaB/k9IQb5z2sAUAl4oEF5jHVTK2qy2QUHLV2szQ== 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 4dyVck58JxzbpK for ; Fri, 23 Jan 2026 20:57:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 24be9 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 23 Jan 2026 20:57:42 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Li-Wen Hsu Subject: git: 3aa8d5395c42 - main - mkimg(1): Sync mkimg(1) and usage() with the implementation List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org 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/main X-Git-Reftype: branch X-Git-Commit: 3aa8d5395c4223f1613f28d6f39904c2df4f92d4 Auto-Submitted: auto-generated Date: Fri, 23 Jan 2026 20:57:42 +0000 Message-Id: <6973e0c6.24be9.2295dea@gitrepo.freebsd.org> The branch main has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=3aa8d5395c4223f1613f28d6f39904c2df4f92d4 commit 3aa8d5395c4223f1613f28d6f39904c2df4f92d4 Author: Li-Wen Hsu AuthorDate: 2026-01-23 20:55:32 +0000 Commit: Li-Wen Hsu CommitDate: 2026-01-23 20:55:32 +0000 mkimg(1): Sync mkimg(1) and usage() with the implementation Reviewed by: imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D54419 --- usr.bin/mkimg/mkimg.1 | 54 ++++++++++++++++++++++++++++++++------------------- usr.bin/mkimg/mkimg.c | 3 +++ 2 files changed, 37 insertions(+), 20 deletions(-) diff --git a/usr.bin/mkimg/mkimg.1 b/usr.bin/mkimg/mkimg.1 index ae48904eb16c..d3e6285d110f 100644 --- a/usr.bin/mkimg/mkimg.1 +++ b/usr.bin/mkimg/mkimg.1 @@ -22,7 +22,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 June 25, 2025 +.Dd December 30, 2025 .Dt MKIMG 1 .Os .Sh NAME @@ -39,6 +39,7 @@ .Op Fl C Ar max_capacity .Op Fl -capacity Ar capacity .Op Fl f Ar format +.Op Fl h .Op Fl o Ar outfile .Op Fl a Ar active .Op Fl t Ar timestamp @@ -144,6 +145,10 @@ option causes any timestamps embedded in the output file to be set to the given time, specified in seconds since the epoch. .Pp The +.Fl h +option prints a usage message and exits. +.Pp +The .Fl v option increases the level of output that the .Nm @@ -301,34 +306,43 @@ may be used multiple times to specify a list of created partition entries. A specification that is a single dash indicates an unused partition entry. Otherwise, a partition specification has the following format: .Bd -literal -offset indent - ':' +[/