From nobody Mon Dec 1 00:46:35 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKQFm1Hf9z6HXQL for ; Mon, 01 Dec 2025 00:46:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKQFm0C7Yz3RGs for ; Mon, 01 Dec 2025 00:46:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764549996; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1CU8AH21zU353VYc3mJthroFz387T4MgqX8ROFU1H6k=; b=LIAWSHWBoFNsQzGAmjTCUH2j0NBautZ6CtJk8jWr+vYBmGN0tFrtEA0M/Du6sJXFKmPTru 9nXPFGDfvOPzHEFydYyN8vWux0dAlfNQ/zhduthmvruxR9BHzUSicsInUvhf65RRcFw8yE aVJy+CtTSTlv5g/7aKpwSiov3DNau/l79PWOP1cSC2ETF/mPl9GSZsY9h5ERpgQ315HxUq fFbgYLZnbDHgu2dVIUx0APeN7KQ1Zyzsef3MBQXdKRjHtISJhmSIyQKfa1j40PDoccKb0H rO9CG7rkYJFwsne0O0huz6eegHTdXdlQ/kJiiW0HsUrOT5bOrR2QAbqzPpXmFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764549996; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1CU8AH21zU353VYc3mJthroFz387T4MgqX8ROFU1H6k=; b=XcbSohUg6biQ8vWjN0S54mdH9ymhJasU10x5xXJk66ZVZlh04VaejXwEFLtgJf0udYXKAY UopoBc23mIvBX1ObkbMNv4BW55YNd2Ehex5faV+PU61rhxMDHqWuUMFZ/FIr3+RpFhIvpl kYaqXyr2KPmxRR315jn3RPunyyOkcs9o9pxoxALy1orgymmzYHBv8rz8pjePwQ74QIjaxs pd8ArSABXDX1ajZHsTnztxrZ1p0qmYkciwQztHrecKw71SKAkymJhjSN8uebrvxcVawRGv ljZ8hzcqAboGCuqH8hZSzTtstUD1UOpqTRiwK8r+mcInAV5Y1azZoFDIdU+UTQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764549996; a=rsa-sha256; cv=none; b=tSrMNqvVrh4K+KkBNCbwVjfb/mKBqsMjpPNARyNZ2/v5c08FsgG4DxGnrOnpD3RlydaT6+ StlH1bYEDBgrUJ6jLNvHKqJM5loIHWbvRXu0PAM2YoCAlk06xrWZVz48ky44ZFJQPMgbnS oF/Cub+xJK6TsKQdMchJMdPNa3RTngkq6XtM1MkAM+jfLLPpbjKzdbg3Mddcndy3DIBGKv +pFIFxfyN4Pr0OUFjncJ+EZLUYxkXoXnDcZqe00Yu/MRkWwpt6JNGvDwvQSRsjQyXKLlsn HZIAaUMEq5TSvojk8ifgpYunPt3ktP8mdDLUGIisx+orCohRF1bOZSmOG1Tehg== 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 4dKQFl6chMzyMN for ; Mon, 01 Dec 2025 00:46:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id de9a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 00:46:35 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 10f12fbe67ae - stable/15 - vm_object_page_remove(): clear pager even if there is no resident pages List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 10f12fbe67ae07b7e321c2def4ef93fb126695e0 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 00:46:35 +0000 Message-Id: <692ce56b.de9a.6e0563d7@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=10f12fbe67ae07b7e321c2def4ef93fb126695e0 commit 10f12fbe67ae07b7e321c2def4ef93fb126695e0 Author: Konstantin Belousov AuthorDate: 2025-11-22 20:39:27 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-01 00:46:09 +0000 vm_object_page_remove(): clear pager even if there is no resident pages (cherry picked from commit 72a447d0bc768c7fe8a9c972f710c75afebd581b) --- sys/vm/vm_object.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c index 5b4517d2bf0c..413ba5459e3d 100644 --- a/sys/vm/vm_object.c +++ b/sys/vm/vm_object.c @@ -1988,7 +1988,7 @@ vm_object_page_remove(vm_object_t object, vm_pindex_t start, vm_pindex_t end, (options & (OBJPR_CLEANONLY | OBJPR_NOTMAPPED)) == OBJPR_NOTMAPPED, ("vm_object_page_remove: illegal options for object %p", object)); if (object->resident_page_count == 0) - return; + goto remove_pager; vm_object_pip_add(object, 1); vm_page_iter_limit_init(&pages, object, end); again: @@ -2061,6 +2061,7 @@ wired: } vm_object_pip_wakeup(object); +remove_pager: vm_pager_freespace(object, start, (end == 0 ? object->size : end) - start); } From nobody Mon Dec 1 00:46:36 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKQFn1JPfz6HXMJ for ; Mon, 01 Dec 2025 00:46:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKQFn0Pqpz3RPw for ; Mon, 01 Dec 2025 00:46:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764549997; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=k36rtyfQt6gWpz3F5mRNEiwWkskk3epDxuzZ24nYfNc=; b=gzB5HnIb7N6oLrvqz4FHxAu3uqLqvoAh0kMH34REEPkVitb2NfI3c8sPAaC2iO4U6ywzqk WTrtO1o+QEGWmFZ2JdOezKWglVqBOvLCz7DUwbhP/9vb8RDAmaq01umD8/3vjHSufyj9pa BWHRWZdroWOMT6t2A0RamVveQRwCZtJTgUhFxTcCpvvXtvS6W+uOqfuHd2Q8KcWWoDiBMS 1xfu9nGbGHH3pkGz2V9ZvgJuFtW+yXXnqjbAVYOcg7cVaMr7jzr/lxbD8blsnQDab8k5sd bBcEKbS+SZ38yks0fc1jIMMIgHmBxgoWXHVGQL8I93ZWFcyu9EKa5b3mu45F+w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764549997; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=k36rtyfQt6gWpz3F5mRNEiwWkskk3epDxuzZ24nYfNc=; b=ohv1fss+OgSXknFl2pYPvzvugITeG8rDguzN268Sxwf+GTums4WKCG3V3PigAeC/xLhgrl 1wRCZMJN0DcNiyk8hFBYJ3N3aGG3ZMat0ngS28RinXGOkn1cPWftGQOZQ5aAMJnUNTDFpP 9yzrI1A9/TH68XWomMAdOjqopQwtASG/2/cZmvzo35tALBQs3Lu+bn0dsaA+yGwtP7wtnP 6l9azVZ/UJKIweR8n/FUwLR0BDkZWXsJ5/+4axUP3BQ441XPlfFo/9zNigUSRS3B7TzQ1H QHSBBjzRKypvr+opjiHV/L/omUgbGkveN8tjqLhcBXSl/MQBFFYrmvRMc4aUAA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764549997; a=rsa-sha256; cv=none; b=e3X81700o4yEJ0G6UlIm8NbA/UeoW6Q17ax5I17cH3rd2cZySijziRSynFV8Yeh9IEkItZ 0Sbpjn4BbIoWZvq3W+26CZdAwsRVu/QlT6Iivpr1nTiHXLQKqpE9Klc9t955pyBew72q9g EzdFrUvs4PZC3Y/SIcEGI1hgGoFhBt96NMximlRSqYnf2WKPLVpgTl+yuGcjVBUP/VBoo3 IBRyzzDyKrGwhyFX7KF1hS7Nm6YVmFIdg+/BVMTb0AV4gQT+6C6XewXUWppDkkN/6JWarH F7pHjh4NL37iaSHdz+5YVQHffeUGKNdxdnmpHhpFL2Y52QSc6rYTOkMRYjttaA== 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 4dKQFm6qNMzyZJ for ; Mon, 01 Dec 2025 00:46:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id d815 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 00:46:36 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: ba5ef9dfa8e5 - stable/15 - bsd.lib.mk: document INTERNALLIB and PRIVATELIB List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: ba5ef9dfa8e54f4ee74d85bab0f2cb0ffcca7622 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 00:46:36 +0000 Message-Id: <692ce56c.d815.16710a01@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=ba5ef9dfa8e54f4ee74d85bab0f2cb0ffcca7622 commit ba5ef9dfa8e54f4ee74d85bab0f2cb0ffcca7622 Author: Konstantin Belousov AuthorDate: 2025-11-27 16:41:29 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-01 00:46:09 +0000 bsd.lib.mk: document INTERNALLIB and PRIVATELIB (cherry picked from commit e60861eb41ca9d141a0d967db3ecbe2b2909c300) --- share/mk/bsd.lib.mk | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/share/mk/bsd.lib.mk b/share/mk/bsd.lib.mk index 159957b6300b..e3b3d760ff28 100644 --- a/share/mk/bsd.lib.mk +++ b/share/mk/bsd.lib.mk @@ -1,3 +1,18 @@ +# If INTERNALLIB is defined, we build lib.a and lib_pie.a, +# i.e. only static archives without dso, in both non-PIE and PIE variants, +# suitable for static linking into binaries. +# INTERNALLIB library headers are not installed. A component that uses +# the library should add explicit -I$(LIBDIR) to CFLAGS. +# +# If PRIVATELIB is defined, we build and install both libprivate.a +# and libprivate.so, so the library can be linked dynamically, but +# cannot be picked up by third-party configure scripts. +# PRIVATELIB library headers are installed into include/private/. +# +# If neither of control variables are defined, we install headers into +# include/, and both non-pic static and shared libraries under the defined +# name. + .include .include .include From nobody Mon Dec 1 00:47:32 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKQGr6ygyz6HXQd for ; Mon, 01 Dec 2025 00:47:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKQGr5tRZz3Rmy for ; Mon, 01 Dec 2025 00:47:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764550052; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GWRX7h3F2flUoyQukXjFXvG1XCZ4RjtdNVitY64bvJs=; b=Ij2pHTHCkdcbghlCHtuHkom0Uf+gGAmor+GeaNh/7IInVX/qEc1MZK6CfdOOGc+adeShJ/ 2QCBNxizRRsUFyRxm0p06WQMEzOaBkGYThoYfu8zQuE0Q60qLYrSx7+cg8SKu63wdyTcLq rsmNUPhCyZk/tGcwx/HIuf6yq2umYJZWNSpQtkV1GcHURNhLehi2d7QeJtd3aahabvHjpm ste0wggQz8Dzv76WnniYQ+RLX5jTaXq2aoq+t4XuvmwHq1iEVzEU0Ls91qlFqYRdIsjqX5 yfh6TgEJcT3mhJAGyiybI6QalHRFsFN0kJraGnkp5vjqHHk26f1KV3BOzv17kw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764550052; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GWRX7h3F2flUoyQukXjFXvG1XCZ4RjtdNVitY64bvJs=; b=i6vIGmUYaWr64NNtzKPgKING+qE5lQeoONMHt8qf/Suokq2mrAWOk9TGLUpsMHE4SULNm2 kjuvtqBNP46lE74Ajxhf6zr4ds1S2KphR55wpDNMzshQK4U5CNBwqMtHyDeYWSZr5v+dlc BJoZ6/gf5ebNELR2eG0XhyIC2hCSmFIfDBmKQ8qzSMqjzzn84HTjxhByST99WEeBhlF9tK dHrSMWNXLY3mGhYtgaxBej662Vgy0bA1F+HId2vS274J10OC/oYt+uBbcFjh7UboRu+S5a Bw0l/oTbu0pQCpkgFoL4gOUpTzYcYqNrwbEqi6FCJS3ECpcWNfIFER7GCTMluw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764550052; a=rsa-sha256; cv=none; b=mLrgdbmqH9/37gVuL1IpzsEJk7HB5KpNKiZ4ACWmW7jA15tvAJy2eQSnmEjt3M3tma/8um 9CeD/Mp0vp3eOFDPBhmSc+MxVelzZlKugF6mP5hiHWdXXd/dQbbWEtcjnSstfFHPtYijkK ecCT+6CJ4qzWdOnkuprGhibNaokcj6hAMsqvqC9IBbsrvr6hFKFW3koY/bkEmOoVDxk3FJ hHi6oHnqzODWY5Mgg+RN2IVbBKZUlc6EB1jjmOX+CF8mt5PBTtpajak/Jn04co6UTx+dul vT9CTsRniYewgDAxybq544sjMuNlZHp+qQVE9jMKREATD4I8IW369BptijlvuA== 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 4dKQGr502bzyPf for ; Mon, 01 Dec 2025 00:47:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id cc44 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 00:47:32 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: feac4c32a5f8 - stable/14 - vm_object_page_remove(): clear pager even if there is no resident pages List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: feac4c32a5f87434a17a804d8148cea78f81ebea Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 00:47:32 +0000 Message-Id: <692ce5a4.cc44.781ef6aa@gitrepo.freebsd.org> The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=feac4c32a5f87434a17a804d8148cea78f81ebea commit feac4c32a5f87434a17a804d8148cea78f81ebea Author: Konstantin Belousov AuthorDate: 2025-11-22 20:39:27 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-01 00:47:07 +0000 vm_object_page_remove(): clear pager even if there is no resident pages (cherry picked from commit 72a447d0bc768c7fe8a9c972f710c75afebd581b) --- sys/vm/vm_object.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c index aa8044c10665..ff164c03c5a5 100644 --- a/sys/vm/vm_object.c +++ b/sys/vm/vm_object.c @@ -2088,7 +2088,7 @@ vm_object_page_remove(vm_object_t object, vm_pindex_t start, vm_pindex_t end, (options & (OBJPR_CLEANONLY | OBJPR_NOTMAPPED)) == OBJPR_NOTMAPPED, ("vm_object_page_remove: illegal options for object %p", object)); if (object->resident_page_count == 0) - return; + goto remove_pager; vm_object_pip_add(object, 1); again: p = vm_page_find_least(object, start); @@ -2164,6 +2164,7 @@ wired: } vm_object_pip_wakeup(object); +remove_pager: vm_pager_freespace(object, start, (end == 0 ? object->size : end) - start); } From nobody Mon Dec 1 00:47:33 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKQGs6mrQz6HXHD for ; Mon, 01 Dec 2025 00:47:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKQGs6C64z3Rb3 for ; Mon, 01 Dec 2025 00:47:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764550053; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PIqIB7jRvvzzWoKvgSz7aUegw47d8P6FtpoM9YqmREI=; b=mllUQZq8xSek7cfuffm6lAOCd3E6N49GtBXcmgmdPo4KixnrZ5eUoY2oKIaVEngvBkC2mH DZeVmsvL5c5eSw2gB8DNK4Ob/+yMejY9h7JKh/Kb7g3Ll+sbn4MenzeHIWJ+iggXzpCNMQ 4/IPafE4ju4/vvk8bWabWENuNio24XsE1cjbNIt1y4gAFEvTlXSef41WmY8ooayRHnanC0 aXa60oOiVZKzfdw7Xw8HhzgNWXIgFimGR85Wsf4V6vO5YsOWJWbU1ZsEZVtmf84x2cdRgm 08uuEghWFZ2UlsP33cIQnLgXN8utDtRvtCX/TRT+WT8EFfZAQVrKK0n4ViRD9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764550053; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PIqIB7jRvvzzWoKvgSz7aUegw47d8P6FtpoM9YqmREI=; b=gxfDhcpDwuam6l9RPXN3ozBwH3Gvq0rxpkvYhhFkr+8RlM7+PeseTmYq/xKp7quWNitVks nFdK+Xb7G7TeLSMOrStjLKlFrsv+OwgQXi5zsMoZB6rq1OND+f/ez16iSVubPitaQsyc12 L1kLBh6Z+Xvo2ThZhD33m4ypQIUGUD3V36TP3uszv2t7yLrnODXpgV6JJmEpRtcZE6MMCQ 9i/D85aDmdGF8Ln2Tvn2YjPiv4/+9GegPJ0ZjiRxhr6jIaBd4zfHXgBj0ojd87olXag+CD KCknpOasA7S1ERFpv6dPzpenKBwnvUkkzZ7cV7O5mqn+6rzTuitQSvybOKr7XQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764550053; a=rsa-sha256; cv=none; b=kJ2Mg/EruZMaklz4HYiWuMvc7DN0t8w61WVhCkz1//JlRgf6oUKPdpBlJ9cENKdYwUmHPX uQCzz7EgE/dGGHKALxoFPLutYN5iX/gQ0JlWq6sl/gFa3Ndkbv29WbDoUXW9Sn31DL8aMI wLNmY+GvtrligSMY10LxCpQsMSaS7uKxaS5TeaJQZSra/1E4VYP8hMsjBuWeJZxHTqYII5 coJZyciuKhBn5vvzcCqgC8FSU++cwfKlCPXHxIu19/A1iTlbeg5bfCzzJKzb+5ph8Myg42 LM/ydGmjDQoGwFi2Q1tP1ZVeYiFlHXtBqcXyvMxofjn/+GKPCDLBUhMPGjvJ9w== 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 4dKQGs5mPRzyh0 for ; Mon, 01 Dec 2025 00:47:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id c9ad by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 00:47:33 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 7e356823ac3a - stable/14 - bsd.lib.mk: document INTERNALLIB and PRIVATELIB List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 7e356823ac3aa648ddb42703b6a7254472d4bb81 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 00:47:33 +0000 Message-Id: <692ce5a5.c9ad.231e6b27@gitrepo.freebsd.org> The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=7e356823ac3aa648ddb42703b6a7254472d4bb81 commit 7e356823ac3aa648ddb42703b6a7254472d4bb81 Author: Konstantin Belousov AuthorDate: 2025-11-27 16:41:29 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-01 00:47:08 +0000 bsd.lib.mk: document INTERNALLIB and PRIVATELIB (cherry picked from commit e60861eb41ca9d141a0d967db3ecbe2b2909c300) --- share/mk/bsd.lib.mk | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/share/mk/bsd.lib.mk b/share/mk/bsd.lib.mk index f2ed34b11edc..17a5ac969860 100644 --- a/share/mk/bsd.lib.mk +++ b/share/mk/bsd.lib.mk @@ -1,5 +1,19 @@ # from: @(#)bsd.lib.mk 5.26 (Berkeley) 5/2/91 # +# If INTERNALLIB is defined, we build lib.a and lib_pie.a, +# i.e. only static archives without dso, in both non-PIE and PIE variants, +# suitable for static linking into binaries. +# INTERNALLIB library headers are not installed. A component that uses +# the library should add explicit -I$(LIBDIR) to CFLAGS. +# +# If PRIVATELIB is defined, we build and install both libprivate.a +# and libprivate.so, so the library can be linked dynamically, but +# cannot be picked up by third-party configure scripts. +# PRIVATELIB library headers are installed into include/private/. +# +# If neither of control variables are defined, we install headers into +# include/, and both non-pic static and shared libraries under the defined +# name. .include .include From nobody Mon Dec 1 03:48:21 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKVHT2fjmz6Ht12 for ; Mon, 01 Dec 2025 03:48:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKVHT25VCz3mdR for ; Mon, 01 Dec 2025 03:48:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560901; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vZzcxV3BbOiNW8Br3Irxkkt41hy+CoZFFsMtLZKHOzI=; b=I4eRH5s9crfUcU5cx835R6AyHSxrB9rK/442Qz0tf6rdXz8z766BHeTPicPDOpSq+3DRWm 2wCiGiyApvCo9MlnCulBcN87W2x26GMS8ovVPFwp2GR2zL2T948n2r/i1Jy2uBA8fPfhb2 CofTWc9+RJ9VjswEdd6Pzs7WaJtVHBpPSs1MS+XKf0TCEhMyZCDUO9KQqoHFn5OvcQ8vqz Y0zidRgsOe/ompTW92fVe/PSzG5pAnLj9563K5R5IVN8BtmKY2KeqjeMZlv//8pZC26NW8 NH3QhtDExed0yqsjYJozFfo2TcIxJaMZoTpU+8d71TJFgO3c3jsAbHq550RNeA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560901; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vZzcxV3BbOiNW8Br3Irxkkt41hy+CoZFFsMtLZKHOzI=; b=YbEQzQ60mnrKqmNmJ8NMk/i/FDEci074PV2Q3lVMsSl7QLSrRDF6HnGLGBz9UruOh7FhI8 sbSwhHkkNz34/74pPN+ECVWtDjKGe9z/KpsxzWJHUNOcMvbGpIArKJDrqMabwAq6Iz+WyA XoVwf0ozIss1nbDCc1URlgZWef6wUT6mM1jx1J32J1+u/eC8eoqcmwXXjBj92v+t0T+Ib+ z4MHeHPk0i+u6lpz6ArA8bvKqTk8a+F+vrDbPIfzQEY5QC2/39rGTopV3L2AlhWsZ4SFLL vl0EnWbhh4kdddGIBVn2t9fHgi/ljQkN4Yg8v4dTog1/OsquzG4Ipmu8dIYdsg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764560901; a=rsa-sha256; cv=none; b=uiQIvQh6LhLobqQ+W9MvgxRyvGT3iSRN6dRgYTR0hxe/p4oUCjE+pjn+yw8kK66rMfincP vXyBWYZa9EjjNCxK+gwa+Se8zNFXg8jyAtfDjNSOIY09Bme4aVdl0n5J0R2XVwztjnutbz +Fap/gIHMwpTVcZNLXGZFrmUV2cGCXmwMrrUa8e9KHGcqKvOv7mXzTLZXRYnaZNPzP7maA zuWG95PeQq3S326ugdCFhyynsfmyLaYIWbn7FGXExYSFNIpML2IEcnBbr3pXyzMq6TzjCq wO9z3UkGeOkUmQQtbKAIAtUMrm3J9WG+S9ZBlOOubIWSNvER7CsmVLwf+ytjqQ== 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 4dKVHT1QkFz13mc for ; Mon, 01 Dec 2025 03:48:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2eef4 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 03:48:21 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: cdf37c58727f - stable/15 - sys/: rename bio_error variable to abio_error List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: cdf37c58727fa3d32de9300233d7295abf63ddde Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 03:48:21 +0000 Message-Id: <692d1005.2eef4.90bbb58@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=cdf37c58727fa3d32de9300233d7295abf63ddde commit cdf37c58727fa3d32de9300233d7295abf63ddde Author: Konstantin Belousov AuthorDate: 2025-10-25 08:37:14 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-01 03:39:09 +0000 sys/: rename bio_error variable to abio_error (cherry picked from commit 58e5f3b84df0aeaaf4b56a5e48bcb4b3e1d9c097) --- sys/dev/mmc/mmcsd.c | 8 ++++---- sys/dev/nvme/nvme_ns.c | 14 +++++++------- sys/kern/vfs_aio.c | 10 +++++----- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/sys/dev/mmc/mmcsd.c b/sys/dev/mmc/mmcsd.c index 5b9cb93c7b31..f2965048b285 100644 --- a/sys/dev/mmc/mmcsd.c +++ b/sys/dev/mmc/mmcsd.c @@ -1422,7 +1422,7 @@ mmcsd_task(void *arg) struct mmcsd_softc *sc; struct bio *bp; device_t dev, mmcbus; - int bio_error, err, sz; + int abio_error, err, sz; part = arg; sc = part->sc; @@ -1430,7 +1430,7 @@ mmcsd_task(void *arg) mmcbus = sc->mmcbus; while (1) { - bio_error = 0; + abio_error = 0; MMCSD_DISK_LOCK(part); do { if (part->running == 0) @@ -1475,11 +1475,11 @@ mmcsd_task(void *arg) } else if (bp->bio_cmd == BIO_DELETE) block = mmcsd_delete(part, bp); else - bio_error = EOPNOTSUPP; + abio_error = EOPNOTSUPP; release: MMCBUS_RELEASE_BUS(mmcbus, dev); if (block < end) { - bp->bio_error = (bio_error == 0) ? EIO : bio_error; + bp->bio_error = (abio_error == 0) ? EIO : abio_error; bp->bio_resid = (end - block) * sz; bp->bio_flags |= BIO_ERROR; } else diff --git a/sys/dev/nvme/nvme_ns.c b/sys/dev/nvme/nvme_ns.c index 17f6c205752b..f50b8993a362 100644 --- a/sys/dev/nvme/nvme_ns.c +++ b/sys/dev/nvme/nvme_ns.c @@ -45,7 +45,7 @@ #include "nvme_private.h" #include "nvme_linux.h" -static void nvme_bio_child_inbed(struct bio *parent, int bio_error); +static void nvme_bio_child_inbed(struct bio *parent, int abio_error); static void nvme_bio_child_done(void *arg, const struct nvme_completion *cpl); static uint32_t nvme_get_num_segments(uint64_t addr, uint64_t size, @@ -279,14 +279,14 @@ nvme_ns_bio_done(void *arg, const struct nvme_completion *status) } static void -nvme_bio_child_inbed(struct bio *parent, int bio_error) +nvme_bio_child_inbed(struct bio *parent, int abio_error) { struct nvme_completion parent_cpl; int children, inbed; - if (bio_error != 0) { + if (abio_error != 0) { parent->bio_flags |= BIO_ERROR; - parent->bio_error = bio_error; + parent->bio_error = abio_error; } /* @@ -313,12 +313,12 @@ nvme_bio_child_done(void *arg, const struct nvme_completion *cpl) { struct bio *child = arg; struct bio *parent; - int bio_error; + int abio_error; parent = child->bio_parent; g_destroy_bio(child); - bio_error = nvme_completion_is_error(cpl) ? EIO : 0; - nvme_bio_child_inbed(parent, bio_error); + abio_error = nvme_completion_is_error(cpl) ? EIO : 0; + nvme_bio_child_inbed(parent, abio_error); } static uint32_t diff --git a/sys/kern/vfs_aio.c b/sys/kern/vfs_aio.c index 65d7ffc9b742..2a790237d30e 100644 --- a/sys/kern/vfs_aio.c +++ b/sys/kern/vfs_aio.c @@ -2487,7 +2487,7 @@ aio_biowakeup(struct bio *bp) long bcount = bp->bio_bcount; long resid = bp->bio_resid; int opcode, nblks; - int bio_error = bp->bio_error; + int abio_error = bp->bio_error; uint16_t flags = bp->bio_flags; opcode = job->uaiocb.aio_lio_opcode; @@ -2503,16 +2503,16 @@ aio_biowakeup(struct bio *bp) * error of whichever failed bio completed last. */ if (flags & BIO_ERROR) - atomic_store_int(&job->error, bio_error); + atomic_store_int(&job->error, abio_error); if (opcode & LIO_WRITE) atomic_add_int(&job->outblock, nblks); else atomic_add_int(&job->inblock, nblks); if (refcount_release(&job->nbio)) { - bio_error = atomic_load_int(&job->error); - if (bio_error != 0) - aio_complete(job, -1, bio_error); + abio_error = atomic_load_int(&job->error); + if (abio_error != 0) + aio_complete(job, -1, abio_error); else aio_complete(job, atomic_load_long(&job->nbytes), 0); } From nobody Mon Dec 1 03:48:22 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKVHV5Hrkz6Ht13 for ; Mon, 01 Dec 2025 03:48:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKVHV2bfPz3mY5 for ; Mon, 01 Dec 2025 03:48:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560902; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=j1Gm9sjzvb879sjfWjj6iNjZBOC3ypvJ7zDv5dB2wvo=; b=aL24MOoFxaglDAlvLMD47azkuP6dA2KHkmNS6yDVZv3j47e3M60HpGHY2yBumlC6SqinYZ WksPt+kbEOEzJOtfzI51b8bZzq4M11pFJ2GDojH/k8ue8/Wj6H6ePPs3qdOCmCTocQbtHE tzpNDWMu4aP2WFeaqSN1WYxoU/oxyZv49pFZHzdYAix2Hf+0kTNgeiqnSQNO+ozVNsOv4/ d5Fi6aiJJS3t40YF3vfEaV0VCu1h6QFhtYoPB0jXOj2NR/9Ej7OVbE/wiVyaOGKFlnzABT zF3RA3F5ANJmYiDBeG1+kwfvefafPEhUlAXyEsyzwf4lpIrL/WpC6naXyPcS6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560902; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=j1Gm9sjzvb879sjfWjj6iNjZBOC3ypvJ7zDv5dB2wvo=; b=fEB+07K+x89mXI4QbiT/KKL8PFCSbJ1RteXk2Sp6rCCLCB6rFhTp+Llz9x/X2Iuoz+rezF Six6Meu2LxeBh+jaMTBiLCD8+5Iy/OlMpEbuGWyL01nF4yeJpXwjY/6hiEFUVyE/oKoFq7 1cDl4drKJGwJ4NK6p353/Wy3/1s09V4srpHCVGut9wdr0hA33mZ+mpasmBBFrc5as9cPM0 yJnZiNisLsrXpdUwd165Xx2ZIWHd63RcXbX0m7S5OpuOJqwY8c1lcB1MpdqbcAqhBNLp8w HNLk/25v5R4afzvmKKnitF0hLjXwVq0W6KIV750FyiqIleQSTOw6AsXg63Rpdg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764560902; a=rsa-sha256; cv=none; b=ZE7hxG2+hI0oNQTYp91Mnu/Xfhe6ZunU5bsDXSERmWLaQTY2T2zyoS9P1xjUo3PE0zQGV1 NuPWNYzQE/wnhAZRBT8eqD6/bYSOAbb9L5F1FpjsoW2+JT00G74VMfpgnqOYQBFP9ii/TC +JOZjhORexZ4221N03uaEQsrT3iadbpnaeK3ujcJSrKiYskAJoR1b5KBz7Ysf8bL9rjiTR G+d+7JbwzVZnaXT2l2nZ+iCHYPYO9R07WeVoWt370Y4hSDnsnyYqVUrpe1Yg1z6s4b0/nb +IwwRS/SCK3qj0XVecMfKZlkU+roSRNd361Nr+ol8WJqhkfscjVIG30BQvno5Q== 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 4dKVHV2Br6z13sY for ; Mon, 01 Dec 2025 03:48:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2fbc5 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 03:48:22 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 05e683f3de7f - stable/15 - exterror(9): add SETEXTERROR_KE() macro List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 05e683f3de7fb7873c48a4189b47c1d92eae7fe1 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 03:48:22 +0000 Message-Id: <692d1006.2fbc5.6e0ec4f2@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=05e683f3de7fb7873c48a4189b47c1d92eae7fe1 commit 05e683f3de7fb7873c48a4189b47c1d92eae7fe1 Author: Konstantin Belousov AuthorDate: 2025-10-25 09:12:33 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-01 03:39:09 +0000 exterror(9): add SETEXTERROR_KE() macro (cherry picked from commit 7746b51dae12b09266d02f02f8d3b772282ddaf1) --- sys/sys/exterrvar.h | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/sys/sys/exterrvar.h b/sys/sys/exterrvar.h index 6783a0d2d84f..5fce8ae7ffbe 100644 --- a/sys/sys/exterrvar.h +++ b/sys/sys/exterrvar.h @@ -37,6 +37,26 @@ #define SET_ERROR_MSG(mmsg) NULL #endif +#define _SET_ERROR2_KE(kep, eerror, mmsg, pp1, pp2) ({ \ + (kep)->error = (eerror); \ + (kep)->cat = EXTERR_CATEGORY; \ + (kep)->msg = SET_ERROR_MSG(mmsg); \ + (kep)->p1 = (pp1); \ + (kep)->p2 = (pp2); \ + (kep)->src_line = __LINE__; \ + (kep)->error; \ +}) +#define _SET_ERROR0_KE(kep, eerror, mmsg) \ + _SET_ERROR2_KE(kep, eerror, mmsg, 0, 0) +#define _SET_ERROR1_KE(kep, eerror, mmsg, pp1) \ + _SET_ERROR2_KE(kep, eerror, mmsg, pp1, 0) + +#define _EXTERROR_MACRO_KE(kep, eerror, mmsg, _1, _2, NAME, ...) \ + NAME +#define EXTERROR_KE(...) \ + _EXTERROR_MACRO_KE(__VA_ARGS__, _SET_ERROR2_KE, _SET_ERROR1_KE, \ + _SET_ERROR0_KE)(__VA_ARGS__) + #define _SET_ERROR2(eerror, mmsg, pp1, pp2) \ exterr_set(eerror, EXTERR_CATEGORY, SET_ERROR_MSG(mmsg), \ (uintptr_t)(pp1), (uintptr_t)(pp2), __LINE__) From nobody Mon Dec 1 03:48:23 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKVHW5bPGz6Ht3B for ; Mon, 01 Dec 2025 03:48:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKVHW4HnSz3mSl for ; Mon, 01 Dec 2025 03:48:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560903; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pKneJqnxdbBQJr6TK1a4VWSDnhnTu1GDQLBhWge2JuM=; b=CWV9PJ5G6NJ+h7qUpOlyOdf5KDp8FmSthvhhtArSSj21Wbxea/XHOsMjEFxSxSQ3S/2UWS 0Kh/k7demAkPDGU1Npc1C+fC3HTgt980idERoaNLP5q6n9/nSSgDXRl5PK33/nzsnY6tiT CLqRQVmTQZScOYCpqQqw1X8GgeVpbVDwmPhNZmpJYQ+6svxbJpJlVwMu84RPd1ESkiBszI 9q+dmnr+UT1/wzl+RGYy9GzfI10Xtv7eMbFT+vAP5UQTY778p8upqvW4SoHsY5vY18jx3J fG09bps/d691tkSJcnfuaUgbFcdlk299Ts0Q8An+meB8OzlrGCStoorrlTeNaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560903; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pKneJqnxdbBQJr6TK1a4VWSDnhnTu1GDQLBhWge2JuM=; b=mLrf9IVhPFbPcW3kcNCUho5q2wSnot6369FzaxUPJa2zS3Shxj/9npomF3WfMP3uQkdwAm fiAJlJcdd3mYTMwXKUWVGXIJYJjZ9JV18ZGEsXEjoqEMXPASVAHKfOqGAZCP2mZx0g+prZ vItdvyd0Ft0UCFyimUuxaKElLnaCxXMndnLIVIik5vH3yfPng1v/8rRba2vpE0jbMNi1Dh J5KKEU7jB1nxKHmXkuZqTN2l9fiL+UyQFsSort13OslUbx/7kCukIyTXwHzPldMVuYhlf8 HmP7iq2u3b1SbJNAqH69VLtNHEtFE+wrsPDFVjG+DtOVL3H83WZc+bJE+Rgw5g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764560903; a=rsa-sha256; cv=none; b=KbdmD549uKzvhuseHy2cKxcert0OIljsMw6Ao09YBXHnhAxkaQ9NrFf1H3oIUbUmPDb1jq ACz8chWXBF3T5N29KndJdAhNd6ijq3PoGtE0V0Dh+bRNI76Vnr6Tu6Xfxoc37dUmmQOLkX D0Y7/Bv30JDIXDYHAIdsP3p7+gDU0YgF3BZS4/keMN/1hEmeiNZ8Klkk69hYmdIcADckQx oZ7INAyiDNjGTB3h06y3ieg1Bpg5Nc4l2oiRCs5PsLAuIQYPoQQRFKNRzYGvo+Cdwts9px X2pf84EIBAICtZKHDYF/8KtWUOowp5zbFGAKYib9+qm2xhvqtGbXM5kBxihuRQ== 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 4dKVHW2yzVz13sZ for ; Mon, 01 Dec 2025 03:48:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2fc4d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 03:48:23 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 0e1fcec72a05 - stable/15 - exterror(9): add two helpers List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 0e1fcec72a0515749b5dc9b7baeca4d345b49c62 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 03:48:23 +0000 Message-Id: <692d1007.2fc4d.7590e5f5@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=0e1fcec72a0515749b5dc9b7baeca4d345b49c62 commit 0e1fcec72a0515749b5dc9b7baeca4d345b49c62 Author: Konstantin Belousov AuthorDate: 2025-10-25 09:14:59 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-01 03:39:09 +0000 exterror(9): add two helpers (cherry picked from commit 069e2fb5506f8301cd9e2da1946c718bd268c50c) --- sys/kern/sys_generic.c | 19 +++++++++++++++++++ sys/sys/exterrvar.h | 2 ++ 2 files changed, 21 insertions(+) diff --git a/sys/kern/sys_generic.c b/sys/kern/sys_generic.c index 5606b36f772f..79628f1389e4 100644 --- a/sys/kern/sys_generic.c +++ b/sys/kern/sys_generic.c @@ -2339,3 +2339,22 @@ exterr_set(int eerror, int category, const char *mmsg, uintptr_t pp1, } return (eerror); } + +int +exterr_set_from(const struct kexterr *ke) +{ + struct thread *td; + + td = curthread; + if ((td->td_pflags2 & TDP2_UEXTERR) != 0) { + td->td_pflags2 |= TDP2_EXTERR; + td->td_kexterr = *ke; + } + return (td->td_kexterr.error); +} + +void +exterr_clear(struct kexterr *ke) +{ + memset(ke, 0, sizeof(*ke)); +} diff --git a/sys/sys/exterrvar.h b/sys/sys/exterrvar.h index 5fce8ae7ffbe..1e07f6afb547 100644 --- a/sys/sys/exterrvar.h +++ b/sys/sys/exterrvar.h @@ -69,6 +69,8 @@ _EXTERROR_MACRO(__VA_ARGS__, _SET_ERROR2, _SET_ERROR1, \ _SET_ERROR0)(__VA_ARGS__) +void exterr_clear(struct kexterr *ke); +int exterr_set_from(const struct kexterr *ke); int exterr_set(int eerror, int category, const char *mmsg, uintptr_t pp1, uintptr_t pp2, int line); int exterr_to_ue(struct thread *td, struct uexterror *ue); From nobody Mon Dec 1 03:48:24 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKVHX6030z6HtLm for ; Mon, 01 Dec 2025 03:48:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKVHX4kdsz3mT3 for ; Mon, 01 Dec 2025 03:48:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560904; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UBSn/KzEHbte0tuaen1QZV4svJnwcv5FCBXcw8W1PXI=; b=R1BNFB+ZZi9DpTThdFscWqu7YdsFamfKlC3VJP030iBXYXq5iDUlKF0m0mgO0LNsVs94CZ zKyeJbNSwMMrtQeGH5ua+MhoGSBWMN+i4qAE+mMs/vDdSkwS9RCv+llcjgsiaKePFKDm6H mie0Jjo9rIN4QJ/angplk0pgKZxEa2Aar2G8DdT1dqiexswQ+MnE3X0HjKIwvVdo5hHcjI BvzDXRh2X02N7pr1hNi3TsvUVGT6lb3vPhZVc3doch7gYQvBOH9ENuW3HesScX/1/H7ny0 +lMFjbVSzhaUOCpCl3cKYMudQHURe6a+kV7o/aG1OKmxeds12XmGZ7Q+4TrYcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560904; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UBSn/KzEHbte0tuaen1QZV4svJnwcv5FCBXcw8W1PXI=; b=TOzVEvODgvg2ZtdZYIC02YoZHfk4PvceDCtsyZY2ax5XHCpj6yOFKnSri8LMZeVaPcVylV aocyW2sL7KDETUIiwgxyuxwecbyLcneQeNcBvFuJz9m2LpM7ChuJr7nzRIS+jhUZQlfMJU H3kzxj4xzmWoyQa8X2n/PGvBQPxotx7vf5Anq3J+AhaJAnMypEE7YSuXV5F5mwxCQ88FM0 r2Ybq9NAGNbX1/tsHXDzDVwntOga754MVYGqdaM7n75KjbsbqGdQq3wk7TWFO+ar/B2Nfz s/OKWsbqpF4wu1QuBUIp+idhnRNhQgMTjJriaukFXO8U4PJXuguGyFl+FN6YZQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764560904; a=rsa-sha256; cv=none; b=O2WBqe0Ss1DOEp9TvXe/JBWvqWgpqdqqrJI4olZhuGm8OnvM9MkscnLVRna3kmfdpkS1qN vSWrvfY7Puk0rIps6fMddj4dhKCC7nhIYgS89q38oVjcev6EugxYuS1ef0HmgLYkl1uIA8 eMCoC3r92QV/lns+LkW/8RRSZAGkG7hAzVu3TuHKIKF6OJoSOzeHHa5ttf3kpnHFK1aoIO G78I7quM4O/wPUZChaVRy4fCZykS3fMmJXXI8C+HI5x8yx9iCHUXKb90zx6jt1Y2nKhduc +XHRdy9sizIxOEStM+PwCilkVx47PX56kzATM9Mm2cBZgKeXVsQapVusRuvsmg== 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 4dKVHX3pZZz13mf for ; Mon, 01 Dec 2025 03:48:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30f0e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 03:48:24 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: cb85c2e2e995 - stable/15 - exterror(9): add infra for bufs and bios List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: cb85c2e2e99551fb067ef8a20400e419069a871e Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 03:48:24 +0000 Message-Id: <692d1008.30f0e.4bd107a0@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=cb85c2e2e99551fb067ef8a20400e419069a871e commit cb85c2e2e99551fb067ef8a20400e419069a871e Author: Konstantin Belousov AuthorDate: 2025-10-25 09:18:28 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-01 03:39:09 +0000 exterror(9): add infra for bufs and bios MFC note: this commit changes the layout for both struct buf and bio. As such, it breaks KBI for VFS, which by itself often happens after X.0, so this is not a precedent. Discussed with: mckusick Approved by: re (cperciva) (cherry picked from commit 6c406b5b93125d030f0e63716ff389ce1a6ec4c5) --- sys/geom/geom_dev.c | 4 ++++ sys/geom/geom_disk.c | 10 ++++++++-- sys/geom/geom_subr.c | 10 ++++++++-- sys/geom/geom_vfs.c | 7 ++++++- sys/kern/vfs_bio.c | 15 +++++++++++---- sys/sys/bio.h | 7 ++++++- sys/sys/buf.h | 10 +++++++++- sys/sys/exterr_cat.h | 2 ++ 8 files changed, 54 insertions(+), 11 deletions(-) diff --git a/sys/geom/geom_dev.c b/sys/geom/geom_dev.c index 46e2695293b8..e47be2768090 100644 --- a/sys/geom/geom_dev.c +++ b/sys/geom/geom_dev.c @@ -734,6 +734,10 @@ g_dev_done(struct bio *bp2) g_trace(G_T_BIO, "g_dev_done(%p) had error %d", bp2, bp2->bio_error); bp->bio_flags |= BIO_ERROR; + if ((bp2->bio_flags & BIO_EXTERR) != 0) { + bp->bio_flags |= BIO_EXTERR; + bp->bio_exterr = bp2->bio_exterr; + } } else { if (bp->bio_cmd == BIO_READ) KNOTE_UNLOCKED(&sc->sc_selinfo.si_note, NOTE_READ); diff --git a/sys/geom/geom_disk.c b/sys/geom/geom_disk.c index 9dbf00371dba..b267130d1e0c 100644 --- a/sys/geom/geom_disk.c +++ b/sys/geom/geom_disk.c @@ -235,8 +235,14 @@ g_disk_done(struct bio *bp) bp2 = bp->bio_parent; binuptime(&now); mtx_lock(&sc->done_mtx); - if (bp2->bio_error == 0) - bp2->bio_error = bp->bio_error; + if (bp2->bio_error == 0) { + if ((bp->bio_flags & BIO_EXTERR) != 0) { + bp2->bio_flags |= BIO_EXTERR; + bp2->bio_exterr = bp->bio_exterr; + } else { + bp2->bio_error = bp->bio_error; + } + } bp2->bio_completed += bp->bio_length - bp->bio_resid; if (bp->bio_cmd == BIO_READ) diff --git a/sys/geom/geom_subr.c b/sys/geom/geom_subr.c index 1429c84942ed..c002a5d9acfe 100644 --- a/sys/geom/geom_subr.c +++ b/sys/geom/geom_subr.c @@ -1151,8 +1151,14 @@ g_std_done(struct bio *bp) struct bio *bp2; bp2 = bp->bio_parent; - if (bp2->bio_error == 0) - bp2->bio_error = bp->bio_error; + if (bp2->bio_error == 0) { + if ((bp->bio_flags & BIO_EXTERR) != 0) { + bp2->bio_flags |= BIO_EXTERR; + bp2->bio_exterr = bp->bio_exterr; + } else { + bp2->bio_error = bp->bio_error; + } + } bp2->bio_completed += bp->bio_completed; g_destroy_bio(bp); bp2->bio_inbed++; diff --git a/sys/geom/geom_vfs.c b/sys/geom/geom_vfs.c index 9b5e5a84191f..f074ac43d245 100644 --- a/sys/geom/geom_vfs.c +++ b/sys/geom/geom_vfs.c @@ -26,9 +26,11 @@ * SUCH DAMAGE. */ +#define EXTERR_CATEGORY EXTERR_CAT_GEOMVFS #include #include #include +#include #include #include #include @@ -156,10 +158,13 @@ g_vfs_done(struct bio *bip) " suppressing further ENXIO"); } } - bp->b_error = bip->bio_error; bp->b_ioflags = bip->bio_flags; if (bip->bio_error) bp->b_ioflags |= BIO_ERROR; + if ((bp->b_ioflags & BIO_EXTERR) != 0) + bp->b_exterr = bip->bio_exterr; + else + bp->b_error = bip->bio_error; bp->b_resid = bp->b_bcount - bip->bio_completed; g_destroy_bio(bip); diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c index 19c39e42bafa..22b7fe8d059a 100644 --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -44,6 +44,7 @@ * see man buf(9) for more info. */ +#define EXTERR_CATEGORY EXTERR_CAT_VFSBIO #include #include #include @@ -55,6 +56,7 @@ #include #include #include +#include #include #include #include @@ -1775,7 +1777,6 @@ buf_alloc(struct bufdomain *bd) bp->b_blkno = bp->b_lblkno = 0; bp->b_offset = NOOFFSET; bp->b_iodone = 0; - bp->b_error = 0; bp->b_resid = 0; bp->b_bcount = 0; bp->b_npages = 0; @@ -1785,6 +1786,7 @@ buf_alloc(struct bufdomain *bd) bp->b_fsprivate1 = NULL; bp->b_fsprivate2 = NULL; bp->b_fsprivate3 = NULL; + exterr_clear(&bp->b_exterr); LIST_INIT(&bp->b_dep); return (bp); @@ -2276,7 +2278,7 @@ breadn_flags(struct vnode *vp, daddr_t blkno, daddr_t dblkno, int size, } if ((flags & GB_CVTENXIO) != 0) bp->b_xflags |= BX_CVTENXIO; - bp->b_ioflags &= ~BIO_ERROR; + bp->b_ioflags &= ~(BIO_ERROR | BIO_EXTERR); if (bp->b_rcred == NOCRED && cred != NOCRED) bp->b_rcred = crhold(cred); vfs_busy_pages(bp, 0); @@ -2353,7 +2355,7 @@ bufwrite(struct buf *bp) bundirty(bp); bp->b_flags &= ~B_DONE; - bp->b_ioflags &= ~BIO_ERROR; + bp->b_ioflags &= ~(BIO_ERROR | BIO_EXTERR); bp->b_flags |= B_CACHE; bp->b_iocmd = BIO_WRITE; @@ -4520,8 +4522,11 @@ biowait(struct bio *bp, const char *wmesg) while ((bp->bio_flags & BIO_DONE) == 0) msleep(bp, mtxp, PRIBIO, wmesg, 0); mtx_unlock(mtxp); - if (bp->bio_error != 0) + if (bp->bio_error != 0) { + if ((bp->bio_flags & BIO_EXTERR) != 0) + return (exterr_set_from(&bp->bio_exterr)); return (bp->bio_error); + } if (!(bp->bio_flags & BIO_ERROR)) return (0); return (EIO); @@ -4568,6 +4573,8 @@ bufwait(struct buf *bp) return (EINTR); } if (bp->b_ioflags & BIO_ERROR) { + if ((bp->b_ioflags & BIO_EXTERR) != 0) + exterr_set_from(&bp->b_exterr); return (bp->b_error ? bp->b_error : EIO); } else { return (0); diff --git a/sys/sys/bio.h b/sys/sys/bio.h index 74d2b03bd180..fa7f19961ebd 100644 --- a/sys/sys/bio.h +++ b/sys/sys/bio.h @@ -37,6 +37,7 @@ #ifndef _SYS_BIO_H_ #define _SYS_BIO_H_ +#include #include #include @@ -65,6 +66,7 @@ #define BIO_TRANSIENT_MAPPING 0x20 #define BIO_VLIST 0x40 #define BIO_SWAP 0x200 /* Swap-related I/O */ +#define BIO_EXTERR 0x2000 #define BIO_SPEEDUP_WRITE 0x4000 /* Resource shortage at upper layers */ #define BIO_SPEEDUP_TRIM 0x8000 /* Resource shortage at upper layers */ @@ -94,7 +96,6 @@ struct bio { struct vm_page **bio_ma; /* Or unmapped. */ int bio_ma_offset; /* Offset in the first page of bio_ma. */ int bio_ma_n; /* Number of pages in bio_ma. */ - int bio_error; /* Errno for BIO_ERROR. */ long bio_resid; /* Remaining I/O in bytes. */ void (*bio_done)(struct bio *); void *bio_driver1; /* Private use by the provider. */ @@ -130,8 +131,12 @@ struct bio { /* XXX: these go away when bio chaining is introduced */ daddr_t bio_pblkno; /* physical block number */ + struct kexterr bio_exterr; }; +/* Errno for BIO_ERROR. */ +#define bio_error bio_exterr.error + struct uio; struct devstat; diff --git a/sys/sys/buf.h b/sys/sys/buf.h index 064d5cb05214..f08f05e6d50f 100644 --- a/sys/sys/buf.h +++ b/sys/sys/buf.h @@ -37,6 +37,7 @@ #ifndef _SYS_BUF_H_ #define _SYS_BUF_H_ +#include #include #include #include @@ -98,7 +99,6 @@ struct buf { long b_bcount; void *b_caller1; caddr_t b_data; - int b_error; uint16_t b_iocmd; /* BIO_* bio_cmd from bio.h */ uint16_t b_ioflags; /* BIO_* bio_flags from bio.h */ off_t b_iooffset; @@ -153,10 +153,12 @@ struct buf { #elif defined(BUF_TRACKING) const char *b_io_tracking; #endif + struct kexterr b_exterr; struct vm_page *b_pages[]; }; #define b_object b_bufobj->bo_object +#define b_error b_exterr.error /* * These flags are kept in b_flags. @@ -390,6 +392,12 @@ struct buf { _lockmgr_disown(&(bp)->b_lock, LOCK_FILE, LOCK_LINE) #endif +#define BUF_EXTERR_FROM_CURTHR(bp) \ + bp->b_exterr = curthread->td_kexterr + +#define BUF_EXTERR_TO_CURTHR(bp) \ + curthread->td_kexterr = bp->b_exterr + #endif /* _KERNEL */ struct buf_queue_head { diff --git a/sys/sys/exterr_cat.h b/sys/sys/exterr_cat.h index 43f31e1d5dd6..34a4b9f86694 100644 --- a/sys/sys/exterr_cat.h +++ b/sys/sys/exterr_cat.h @@ -21,6 +21,8 @@ #define EXTERR_CAT_BRIDGE 7 #define EXTERR_CAT_SWAP 8 #define EXTERR_CAT_VFSSYSCALL 9 +#define EXTERR_CAT_VFSBIO 10 +#define EXTERR_CAT_GEOMVFS 11 #endif From nobody Mon Dec 1 03:48:25 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKVHY73G1z6HtLv for ; Mon, 01 Dec 2025 03:48:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKVHY52vRz3mNH for ; Mon, 01 Dec 2025 03:48:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560905; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Df/u//M1P8hQGre1QlJqEzLSauOZqck8vnSUmhuhbK0=; b=UrM0WDph/h99TjryKM4QAqebzh2WYwlKpGG7mDMunHwVKoL0e2F4dHkw6mgmx4T1DHSZYL qt1G+AjpMfqzKDkzMhdEe2ysfvCJ+pxm8BCKgfVeq2xNdMALMcVtNeuPiKQPY5G2N0AHJb U/jb9sEavlPTSCHhNSffryzDrprB91KXJUTieglAtgr8xZDVHcTNs006/mqvEPM+eRUDRx axReGYQJLl6IBMfHHZEvJ/82/VVjAeExTtxPTucn32dZzLmQKMDtwvGTGkOkuclCHLQVLT J/QY7M7uBOH0S2cEyA2H2NlVGpIbW+loDxUNDczACdf1zcbWeaUP1deHPD7kPw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560905; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Df/u//M1P8hQGre1QlJqEzLSauOZqck8vnSUmhuhbK0=; b=guM27D1UQz++XZpthxHeWJOG5D7tkAqW2EqnQXEDaeXflvs8evWs59eZh1YoOsmzXAMYP0 4ndfxmPobLdEZrPCPUT3N1OXuRIFrEu9nPsnNhN08nddjHdYZXUacp8cjvR/dBjHv4uccL 01dY85jYnFkLLraDrWOCZhA46FJgV6goo1hn/7jePF5gqYUQw5kRxC2HvFyYnaw8B9qREm BTOq+sjwSpMUeaWqLCcaF48ukpnJzmzgePalk+6LFqfo9TpYJuijk7n368O5Wzwk0/b/FS g550Fv21IdXSaWs4cxuSptiLIuSGl9JOhuBB5IEsfd4L0O4IvrdjVhd6jX6uuw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764560905; a=rsa-sha256; cv=none; b=JMlB4Bj4ovh1dyUg0HtLT6BO3VFBi5+wrcSR32pPVhu+PlaoqciYhmRunpkoehMKDJD3z7 FyJ3N0WJdrBdDUsxW0U9+Xsuc9vJNW9O14rFVaNWWdexLWhb8MZg3stUr76f9AfK2Lur4j Lh5e3FT+HGUNJHiubGb06BKm0rtPT51DxdKtGL8yKL1eY+kJsYEY69hwr1TT8DUp5j4taL R61so4jgeIg9IPnQDi6384grhJOF7OfREMwvTLUSLzY6svkiyCAg0CAfUET0Ft3ff1ChK3 FAUDp7jB9FMH2YDcRU+XXlLGAvFFqlkXbBbzR53fR2xsJwCb2G7tCtQuo7rihw== 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 4dKVHY4bMPz14J7 for ; Mon, 01 Dec 2025 03:48:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2fc51 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 03:48:25 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: a4fadc6c0784 - stable/15 - geom/geom_vfs.c: use EXTERROR_KE() in g_vfs_strategy for ENXIOs List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: a4fadc6c0784c7d7892389f638f605abe8deeda8 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 03:48:25 +0000 Message-Id: <692d1009.2fc51.d50651f@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=a4fadc6c0784c7d7892389f638f605abe8deeda8 commit a4fadc6c0784c7d7892389f638f605abe8deeda8 Author: Konstantin Belousov AuthorDate: 2025-10-25 09:17:02 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-01 03:40:55 +0000 geom/geom_vfs.c: use EXTERROR_KE() in g_vfs_strategy for ENXIOs (cherry picked from commit 515fa5ff2e4db907379c284fb7e7df77b4096948) --- sys/geom/geom_vfs.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/geom/geom_vfs.c b/sys/geom/geom_vfs.c index f074ac43d245..122e2f6a02ec 100644 --- a/sys/geom/geom_vfs.c +++ b/sys/geom/geom_vfs.c @@ -200,6 +200,8 @@ g_vfs_strategy(struct bufobj *bo, struct buf *bp) mtx_unlock(&sc->sc_mtx); bp->b_error = ENXIO; bp->b_ioflags |= BIO_ERROR; + EXTERROR_KE(&bp->b_exterr, ENXIO, + "orphaned or enxio active"); bufdone(bp); return; } From nobody Mon Dec 1 03:48:26 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKVHb2yr9z6HtM0 for ; Mon, 01 Dec 2025 03:48:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKVHZ66nMz3mhF for ; Mon, 01 Dec 2025 03:48:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560906; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pAg2yPgVLO8O5nObRxXrWdkz2iuOdrmytLvnqgp8G1k=; b=nGr48Z5dx4/eXlcn1Rtgd+fGeokgAEAuS5MhcC7MfHr/HwtocW0tJTS9+ywSX5SgWmpxhl o28/yd4D6hMNnjzuStSrDJ3kUopI4lvV3vz9cwWtHBOcQh7quANmBDSmYX1vDA1Zs5/gm2 DYipTWhKw3weEz+sRWR3TCErbW5w7k90fWm8Ky864oX8egXu5mJxtsyjBectfiNWaV5v2O jZ2P/psiZEYI1aOXOE0ZWxH/wlSeCIhcKC7QzEy4ByyXjmP+LwZrG/AJbRl/DyGShCwEWG 81X5bfJoUBUEandW6VoL6lDEnttr22tn9AvWXRp3G0SwIZgkP5dIRGa14fvVLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560906; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pAg2yPgVLO8O5nObRxXrWdkz2iuOdrmytLvnqgp8G1k=; b=nibQFpKL6D7Lnsr6eCG4daTPZu+Sg5OYJ5CJ1MlNURtWUK+fXg9Wh1jhI1jja36/mKj2ov XT3i+ABGAw18HoXxQSA58wrt+Nq5TPlequhtiU4C0GG4nGA7DNna+Uwjqv0oLoEHU3/9Uf f0zIN1EXB8a0Y0Q8ES72ikI/ORujpI3M0jr6LwKPo4fNqer8Ww/fDOQhFWBiHVa5yPFZFK Aq+rlQLAEf7/sCIeCKNpktkpksuDBrMsn+DlYGV0l8ihMPJhAt6P08xYFWtshHLNefyR1b 2OC2X0ydAH5X5Z+X3mUiPBtjBv4IC3WwCKv4QdzXqaUw+7wTEpSpMEMo8GsA8Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764560906; a=rsa-sha256; cv=none; b=A6yVvasu/AStbOsRPuGLLKgUZlOnm2U5h9N4qagrWAZhLE2d97hV0uVll0Q2IkHbWm9vVZ VmKVAHCw16LGQSdfz+EF0mhep337C+AZofzmWhswLtdnJMnEVtjsyGyIa4vgl3mJhnIk7b fsrZ8Og/fIDob8SXC+IOeIw3UToYjeE0uT2hg+TpZPe69q/+/X3Hed4vFFIaN+0sQ4zkFV gUvNiSq65JGG/HtlAZk9b+YtBlcjvp/rshv5AidnWHIgmHMqYZVGpad2OM+kgkZHaFdZ9j zDl10TykiYTLcAuyw/qHGItGNCLkn0sUq+e4BSd2aWXyv0jpJiQFl0A+FgeqHg== 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 4dKVHZ5RDqz13G2 for ; Mon, 01 Dec 2025 03:48:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30856 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 03:48:26 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 72bbd1891498 - stable/15 - exterr: add exterr_db_print(), to be used by several ddb dumpers List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 72bbd1891498036752c52ac5806292f369918611 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 03:48:26 +0000 Message-Id: <692d100a.30856.6d05cd02@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=72bbd1891498036752c52ac5806292f369918611 commit 72bbd1891498036752c52ac5806292f369918611 Author: Konstantin Belousov AuthorDate: 2025-11-04 20:51:19 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-01 03:40:55 +0000 exterr: add exterr_db_print(), to be used by several ddb dumpers (cherry picked from commit 9521b0b91ea31b7f31b3800772ac6502c822ae56) --- sys/kern/sys_generic.c | 13 +++++++++++++ sys/sys/exterrvar.h | 1 + 2 files changed, 14 insertions(+) diff --git a/sys/kern/sys_generic.c b/sys/kern/sys_generic.c index 79628f1389e4..5a7c6abec0cb 100644 --- a/sys/kern/sys_generic.c +++ b/sys/kern/sys_generic.c @@ -2358,3 +2358,16 @@ exterr_clear(struct kexterr *ke) { memset(ke, 0, sizeof(*ke)); } + +#include "opt_ddb.h" +#ifdef DDB +#include + +void +exterr_db_print(struct kexterr *ke) +{ + db_printf("errno %d cat %d msg %s p1 %#jx p2 %#jx line %d\n", + ke->error, ke->cat, ke->msg == NULL ? "" : ke->msg, + (uintmax_t)ke->p1, (uintmax_t)ke->p2, ke->src_line); +} +#endif diff --git a/sys/sys/exterrvar.h b/sys/sys/exterrvar.h index 1e07f6afb547..8e2961356a1e 100644 --- a/sys/sys/exterrvar.h +++ b/sys/sys/exterrvar.h @@ -70,6 +70,7 @@ _SET_ERROR0)(__VA_ARGS__) void exterr_clear(struct kexterr *ke); +void exterr_db_print(struct kexterr *ke); int exterr_set_from(const struct kexterr *ke); int exterr_set(int eerror, int category, const char *mmsg, uintptr_t pp1, uintptr_t pp2, int line); From nobody Mon Dec 1 03:48:28 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKVHd2D55z6HtMB for ; Mon, 01 Dec 2025 03:48:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKVHd0Dv4z3mcc for ; Mon, 01 Dec 2025 03:48:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560909; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qQZvdxC6wRzUkqyOXgrD9Mth4k570bJQUCjSffQzD9E=; b=nuFFwT6kihX5T9S3lBs7czcK4tBvEuuEgsYvrK+ZqFPkSc4KlwY8gzVG/oCPVrockTVjdU 42yaBsKr/EmT3fq6YodAjfhzHS95MsjWWP8gOnRrglOBPxeFublBUpwja22F9dgMDAelq7 4EyBP3B+AKy4x7a8uMPhtdPzHtqUSq0WiUQKQ7MW6f6/MF072a0q6jwWk9G0AG64x4r/1K 736kn73xJITK+vdLghiLrmkIAzjU0sjl+29sbWzTedWiWvYzE24rlH0O64ujje9ybTJ3Ml 7R2j2YyKJGouTnv03IUl9Msi81yyVMyfkJML7BHKLy4MH/1W+luO19OEcevN/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560909; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qQZvdxC6wRzUkqyOXgrD9Mth4k570bJQUCjSffQzD9E=; b=qB9XGYSmfIjGb1+KB22dAmjFBuqU3KfxzGM2qgYFohFe+IE+3zD+ZQV2S1SPonlhj+tH7v cyXwvETV8rode3i8avPiI5CjVQ3B0iB/LuqtEsBkio3rLl9c7Cva6VPs6sJr1qJQPfQ3q2 wZpJ978WRTAk6JV1ARj0fBbsYEiJ5QIiNFCVTIXAKSu/hta1CB/8FI8XZVHlpi+15vewoO P0E0kMWOjt0VKEkwjcVqQx48aciWA+MIHVx0ao/Bq9bNSMbIueuTQkZ449Y20ErLWU/wxV dBVZYZiRGby5f3FTqWWwU9PgTvXfP1s5ZcAg0kaI6n+keJh4dvHlcpj9ZSvpaQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764560909; a=rsa-sha256; cv=none; b=B2wEy32UrE0Czirmo1FZOUMMVa0zAEl226tEjSWn5gdUnDXX2tFWU2Mhp+RWHGbtfpoeHY rinJjPF0VV6j31cbco4cDk9JKqXxe9UkTJsluz/yRXbtjktYDJDMtC6J1KT0NpGkyNXwRy 3+vROijL11jOTHgzBnU18gBVKsj4FQ5R8lSd7hqtPUcyU1OL1U/xst9lscwhTTv39uvgKv jMyjoZsse6zEyRfQLehwrhCXBiH8c5HTSVsd5/AAjETzMu6MPv794et0kOrvx5rU+KhlDx kASrYdI7kLlwEEBByw3J03P7ebtI2uhK4MTDwR5TGbPAbQ6dDc47FDbVha/Z7w== 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 4dKVHc6mfzz14JB for ; Mon, 01 Dec 2025 03:48:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2fbc9 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 03:48:28 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 0083165a9d13 - stable/15 - sys/bio.h: print BIO_EXTERR flag List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 0083165a9d13a325801fcfc6ef05a55fe25d69ff Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 03:48:28 +0000 Message-Id: <692d100c.2fbc9.fa2a36f@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=0083165a9d13a325801fcfc6ef05a55fe25d69ff commit 0083165a9d13a325801fcfc6ef05a55fe25d69ff Author: Konstantin Belousov AuthorDate: 2025-11-04 19:14:19 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-01 03:40:55 +0000 sys/bio.h: print BIO_EXTERR flag (cherry picked from commit 8794e3718ec3b2a05a70e9c0afd6ab5cac503cdb) --- sys/sys/bio.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/sys/bio.h b/sys/sys/bio.h index fa7f19961ebd..5c12c858f3e5 100644 --- a/sys/sys/bio.h +++ b/sys/sys/bio.h @@ -70,7 +70,8 @@ #define BIO_SPEEDUP_WRITE 0x4000 /* Resource shortage at upper layers */ #define BIO_SPEEDUP_TRIM 0x8000 /* Resource shortage at upper layers */ -#define PRINT_BIO_FLAGS "\20\20speedup_trim\17speedup_write\12swap\7vlist\6transient_mapping\5unmapped" \ +#define PRINT_BIO_FLAGS "\20\20speedup_trim\17speedup_write\16exterr" \ + "\12swap\7vlist\6transient_mapping\5unmapped" \ "\4ordered\3onqueue\2done\1error" From nobody Mon Dec 1 03:48:27 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKVHc0vyjz6HtDH for ; Mon, 01 Dec 2025 03:48:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKVHb6wz1z3mYv for ; Mon, 01 Dec 2025 03:48:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560908; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=scDaoLLD1AvFidasvXB7cSZUY9K2iGESgdRzTbPoTJE=; b=HihF5MDnb6KccQbFi+Up/9XJp+cKx8XiuDfTqZG00u5VFLrXJMfG63jRDW/6AnTAWseERB JGtDXFCCZqaC5XGhKsI+hjM1tDKU1LCZ/dpudAd0e/Is47mmsbuCesI9U7Qk+DFaHiyIDm i/YwIlCk5jRZVvJ/0lR/hmCkJMluBvHauUurU8apymYsuswPPD+uBu5UxJj6j1n7B+gBCK K9l4bLwEhfvnbLNDeAHMPBDMe4hAcyVFV82j8bedAvFNGSAYKGRLvLJC1+7rdaukRyC8eg 3m9zIVyCa2HKQvxCB1tgkp8FxrzB0tv8XpgrnNXvX0UjD/+Jx4Q6HH2cor4KNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560908; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=scDaoLLD1AvFidasvXB7cSZUY9K2iGESgdRzTbPoTJE=; b=ZRaOXRBdzafCN1T++KVVGcT/lCICavHEcnYLpu9O+ECht6isrOLhMkkBcF4sybUhTPRA7m XnVeGtFYoxDGTJlnu62qCe05JT8ve+/r+x6gj13xO6jgO91CxR/qchviZ5ghNgaHyUt2s6 zNh49tJ7fN8928G1ouI14sirQ6XLv2s1H6lBrisx3JjpEsJZXDLOJICSsWOml8k48qOW7+ 4pSOtwM5HOKjmPwNWCe85AlGTwfQGHh67/UmThXTB+fT19rwyvsxVfqYqpFtopMdwN83LN rZ0s23VmWdZw8coGbR7iZxEf2KF1PJGbI3//NXNaQNA0cCEdgzpmoyKBsE1KBA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764560908; a=rsa-sha256; cv=none; b=M23tVYCUzFsDl6NISvaWiO0kWzvSW5e41scXsERBTe52hybbeBKZqS8rzN4JJM67AuMiyd BTbiNmRne3JadyD87MYTQUtDgrU+X5k/YPJcV2I4GAgh97rvkZ0lGLWD4zV+3SVFOix0jO oN/d/icCKUJTZce+DfAQ0RAanBYyYhs/nzgf4WjhF4K79OwXZc+9+pXZFrY0lo2EQnEbdL PTOmlx4wXOs21ag3i+cdjU+Rzkja8ugBkxwV8fbb2+gtH0BkLDz8H3eSYP0fnPPyU2Y0Sz DtVzPpjbHfNM61ttPh528zeeTm5OpuMyX5NaX7umv1oIpCvy7rqy3JnEm3Fbmg== 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 4dKVHb6K3sz14J9 for ; Mon, 01 Dec 2025 03:48:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2fc55 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 03:48:27 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 35a54c876c4f - stable/15 - exterr: print exterr for struct buf and bio in ddb show commands List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 35a54c876c4f97a67ce4ee31c6e983b156504a5a Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 03:48:27 +0000 Message-Id: <692d100b.2fc55.1dc46274@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=35a54c876c4f97a67ce4ee31c6e983b156504a5a commit 35a54c876c4f97a67ce4ee31c6e983b156504a5a Author: Konstantin Belousov AuthorDate: 2025-11-04 20:53:14 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-01 03:40:55 +0000 exterr: print exterr for struct buf and bio in ddb show commands (cherry picked from commit 7d495be8d4bd3a0e315233346b2f7267b8390612) --- sys/geom/geom_subr.c | 4 ++++ sys/kern/vfs_bio.c | 2 ++ sys/sys/exterr_cat.h | 1 + 3 files changed, 7 insertions(+) diff --git a/sys/geom/geom_subr.c b/sys/geom/geom_subr.c index c002a5d9acfe..91c01a7de117 100644 --- a/sys/geom/geom_subr.c +++ b/sys/geom/geom_subr.c @@ -38,9 +38,11 @@ #include #include "opt_ddb.h" +#define EXTERR_CATEGORY EXTERR_CAT_GEOM #include #include #include +#include #include #include #include @@ -1663,6 +1665,8 @@ DB_SHOW_COMMAND(bio, db_show_bio) db_printf(" caller2: %p\n", bp->bio_caller2); db_printf(" bio_from: %p\n", bp->bio_from); db_printf(" bio_to: %p\n", bp->bio_to); + if ((bp->bio_flags & BIO_EXTERR) != 0) + exterr_db_print(&bp->bio_exterr); #if defined(BUF_TRACKING) || defined(FULL_BUF_TRACKING) db_printf(" bio_track_bp: %p\n", bp->bio_track_bp); diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c index 22b7fe8d059a..880cc6b99951 100644 --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -5529,6 +5529,8 @@ DB_SHOW_COMMAND(buffer, db_show_buffer) db_printf("\n"); } BUF_LOCKPRINTINFO(bp); + if ((bp->b_ioflags & BIO_EXTERR) != 0) + exterr_db_print(&bp->b_exterr); #if defined(FULL_BUF_TRACKING) db_printf("b_io_tracking: b_io_tcnt = %u\n", bp->b_io_tcnt); diff --git a/sys/sys/exterr_cat.h b/sys/sys/exterr_cat.h index 34a4b9f86694..318e774542ca 100644 --- a/sys/sys/exterr_cat.h +++ b/sys/sys/exterr_cat.h @@ -23,6 +23,7 @@ #define EXTERR_CAT_VFSSYSCALL 9 #define EXTERR_CAT_VFSBIO 10 #define EXTERR_CAT_GEOMVFS 11 +#define EXTERR_CAT_GEOM 12 #endif From nobody Mon Dec 1 03:48:30 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKVHf3zj7z6HtMD for ; Mon, 01 Dec 2025 03:48:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKVHf0ndPz3mfR for ; Mon, 01 Dec 2025 03:48:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560910; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7sEJWtFeBwrSYERgLHXlLPZuvhDqEzrHZNU8wqBY8Ic=; b=tnU+s3tQlIIC3+TFNHFpqbMN+JgUdVKYag9a/GGP78/yTIvcmuSjlTheJZzp8i9gJOWifE pKamQsAwvaydb1vz7Ggjz9vz8AYBTQd9lCbSxZzMMlf0VHp1JSSnrI5OUuRHZYOzoFV285 gkFv6dhcBnbzduirTJ5u8PA8cRcnNsFkYvrzX71j/XKW2Ob9xZWxsRRNbMk9Ety1WSMhHg 8abc0uzI3rJgNmY+dBDpOc19H26uDEQRj9gl2D6LTPE19h2WzlFdCQ3+XW84F3zh4vMA1G 8R5DyUg7mXM4cZ3UZMmdo1kzexBl/RHsGw/LjgVaxBjdZ7EMY9XFHHyYoUyYJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560910; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7sEJWtFeBwrSYERgLHXlLPZuvhDqEzrHZNU8wqBY8Ic=; b=fnYXwuC6HrMWp7gye4jYfBYfOl3Ya2mWN/mifQDv7QLY7uLyIOFM4TWlHnvc8S8pVYIgfa R7+Ayfn2P4PwMHESJ4kq0JKQsIQ/LuyqgYh9IJmZ2n6HWE14VLqrt8R1Qldoho1TJN2zGX DaJ5bH63Ju9sDQtG44L01OqqMlDN+3zozBwerjVNIICP7IsSJ14GETM9k57kM/zzpFaHCu j6G2XSS1jIFKr6M9TWVoilFG02CPcnPh/21FjpBDq3JFBBLSH5aC0IBi8CNJzeyxdU5hSC H4kkYlKCCGlVLSai+eA5xGZ/+s9DqLHHNGQlhz9DGLmATC1nOR3CEwVadN7Hxg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764560910; a=rsa-sha256; cv=none; b=aJrHCIHWD79hWP2+A5EyIQ2aWVptO2Z5uvhxVgPrakbbONbAZABZ8HWRr/Zpzl0tK4H2Ip qqfrX8nb6nKqrdbohDZNli9MSzDqavkv0qbczFNn/5fxaA2qPSvePJLde4r0Xxu89uIxXs kAL515XyI/uQxixL31Irqkq9JPnGvhxnM/sEjpguqP62N+4lhZMH+G81Yt2wEnynASDsgA k/iikaLi62hsC49Ag5i5kEMaze3b9hkQMsRN3wEz3JGNfy0g4Bz9h/DB1Sumfdxmwl//xM 5HGeKcREcfS0c33eIExM309+cEoSybi8sBj3N8NATX62hGwf9/WfqfUU2jj9Lg== 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 4dKVHf0CpFz14Gj for ; Mon, 01 Dec 2025 03:48:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30c2e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 03:48:30 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: a0e349258479 - stable/15 - exterror.9: explain buffers and bios usage of extended errors List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: a0e349258479583219d32e5c54a54db78db6e934 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 03:48:30 +0000 Message-Id: <692d100e.30c2e.2b00216b@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=a0e349258479583219d32e5c54a54db78db6e934 commit a0e349258479583219d32e5c54a54db78db6e934 Author: Konstantin Belousov AuthorDate: 2025-11-18 04:23:41 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-01 03:40:55 +0000 exterror.9: explain buffers and bios usage of extended errors (cherry picked from commit c0a38339fec37a5b6367f138f059a12d6d716fd4) --- share/man/man9/exterror.9 | 82 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) diff --git a/share/man/man9/exterror.9 b/share/man/man9/exterror.9 index 79197e4a187d..fd4b732b8213 100644 --- a/share/man/man9/exterror.9 +++ b/share/man/man9/exterror.9 @@ -17,8 +17,15 @@ #define EXTERR_CATEGORY EXTERR_CAT_MYCATEGORY .Ed .In sys/exterrvar.h +.Vt struct kexterr; +.Ft void +.Fn exterr_clear "struct kexterr *ke" +.Ft int +.Fn exterr_set_from "const struct kexterr *ke" .Ft int .Fn EXTERROR "int error" "const char *msg" ... +.Ft void +.Fn EXTERROR_KE "struct kexterr *ke" "int error" "const char *msg" ... .Sh DESCRIPTION The .Nm @@ -102,6 +109,33 @@ Additionally, use of .Fn EXTERROR in kernel threads is not sensible as there is no userspace to retrieve the extended error data. +.Pp +The +.Fn EXTERROR_KE +macro is similar to +.Fn EXTERROR , +but it takes an explicit pointer +.Fa kep +to the +.Vt struct kexterr +to fill with the extended error information. +The macro expression value is +.Vt void . +See below for description of the asynchronous i/o error facilities. +.Pp +The +.Fn exterr_clear +function clears the content of the +.Vt struct kexterr +pointed to by the argument +.Fa ke . +.Pp +The +.Fn exterr_set_from +function sets the current thread extended error data from the +.Fa struct kexterr +pointed to by the argument +.Fa ke . .Sh USERSPACE ACCESS TO EXTENDED ERROR DATA There is no syscall overhead for using .Nm @@ -127,6 +161,54 @@ were modified to print the extended information if it is available in addition to the usual .Va errno decoding. +.Sh ASYNCHRONOUS INPUT/OUTPUT +Due to the nature of the +.Fx +i/o subsystem, most input/output requests, presented as buffers (as in +.Vt struct buf ) +and geom bio's ( +.Vt struct bio ) +are processed asynchronously in filesystem- and geom-private threads. +This makes it challenging to pass any extended error information +from the geom providers and drivers, where an error typically occurs, +back to the thread that initiated the request, and is the consumer of +the result. +.Pp +To alleviate the mismatch, both +.Vt struct buf +and +.Vt struct bio +have member of the +.Vt struct kexterr +type. +For buffers, the +.Va b_exterr +for +.Vt struct buf , +and +.Va bio_exterr +for +.Vt struct bio . +Asynchronous i/o code can use the +.Fn EXTERROR_KE +macro, passing the pointer to the current request's embedded +.Vt struct kexterr , +to record the extended error. +In both cases, the +.Va BIO_EXTERR +flag should be set to indicate that whole extended error is valid, +not only the +.Va b_error +or +.Va bio_error +values. +.Pp +Both VFS and geom generic layers, and several geom providers that generate +subordinate bio's from the original request, are aware of the extended +errors. +They pass +.Vt kexterr +from the failed request back to the thread that create the request. .Sh SEE ALSO .Xr errno 3 , .Xr err 3 From nobody Mon Dec 1 03:48:31 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKVHg3y0Wz6HtRf for ; Mon, 01 Dec 2025 03:48:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKVHg15DZz3mZK for ; Mon, 01 Dec 2025 03:48:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560911; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rKBR5r2kOPkjoM4O9+b1x7btM1laKJWapXW/UkvXegQ=; b=RQDJQKMwpmqS65JOE8Ciq0n+fVHFydUCrZHTuaHajxAtPl3ST71RAHq39UodgfRlM9TXq8 NFbkAJIzdYjkwhPyyMzfbliiwIrP2APaGwjGC2AL50IF0NZdjaoYipRcqCV4cR7dABeY6j Evtgap2kRscreRLQO+NFprHXiqBKjRXN2IuL0d0m8+OHRrNVyAZG6LNBZnCX7DJTvoc5XJ Rlxe+EPAmFm05e4JgA/NGjAGUwYAAk7qjNjwevmFVQfFjwH8GTR5kLilLnx+jFTDn+EiMs ph7KMQk3Ghy8pq4waR0Z1NSQAtKQoRrRSy6+0BYcyf+BidyyD+JDrOm+zxE7Vw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764560911; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rKBR5r2kOPkjoM4O9+b1x7btM1laKJWapXW/UkvXegQ=; b=GujiEDyQbj8FpwpT9XNAsM5cyE6SIZE7wqwGid2jE6vd6W41wjWQeuOXycCV0PA7nIKnXt Ip7P42VbIGpm6lXZBs9qWV5oYjQYyw6Irg7pnPPOwoQLJ4Z2KpWUKtgb/57qBD2o6X3W78 dIffYmhjKb38NjVb5k9acYs+bPhLHOFrl40MFhXdoolRt52QpDVefmOK/3V2ZyXCaVE/3T 3OlN27NUaU4HMOoYLQyHbEWnwwxH7JUopMJP24yYvWVDQAgR2r8sr9/yTFUXEXy+O/UkqT kgX1mC9MkrhtLBPeq+1CAKACe4ZWqfyuT7akLVCAun7JftiS4LSWbgYJMhv1LA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764560911; a=rsa-sha256; cv=none; b=lNTin6EeVwblwpqqIUOSh7p9nVi8UGTUsKOp2wZRfBVuCizbn2w/53r3A1gtJLcz6T1fU9 vyUW9ZExpURpx75IAY/zziwnUH428L0va3YBKxvfOleJDbDj1Xa4673z9Kh5sNQaS0Wten lufALkzqRbxkh5edon6np4dojZ6ZSGI1CRQMBC5e+g0WsnuROcBpdQYhXaIUSLeZ/OjNfI ZoPYuyGs0v07ZlWfHzQNBdRL4b8b4IkubD1bTapuiCk86g4RrAUIG82J/kagfCnwc/nGpN LQKYCxOgor6Y3Ymijw4F96MnvzOszK+t6X+XwBuNtDTgatgeTEF0MLCBOeHt7Q== 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 4dKVHg0f9Nz14Ld for ; Mon, 01 Dec 2025 03:48:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3115d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 03:48:31 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 398dd921c382 - stable/15 - sys/param.h: bump __FreeBSD_version for struct bio and buf layout change List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 398dd921c382760236acefe8f893912a2efd1696 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 03:48:31 +0000 Message-Id: <692d100f.3115d.1f64f14f@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=398dd921c382760236acefe8f893912a2efd1696 commit 398dd921c382760236acefe8f893912a2efd1696 Author: Konstantin Belousov AuthorDate: 2025-12-01 03:41:31 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-01 03:46:17 +0000 sys/param.h: bump __FreeBSD_version for struct bio and buf layout change on stable/15. This is direct commit to the branch. Sponsored by: The FreeBSD Foundation --- sys/sys/param.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/sys/param.h b/sys/sys/param.h index cb75e316c39e..fe7ceeb90e9d 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 1500502 +#define __FreeBSD_version 1500503 /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, From nobody Mon Dec 1 06:23:21 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKYkL0x4xz6J9lc for ; Mon, 01 Dec 2025 06:23:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKYkK66cBz3BsJ for ; Mon, 01 Dec 2025 06:23:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764570201; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/Prb7ibirxUtFpj5w4OSXS/FW8DXMhvj2oEyctK3wAI=; b=oDmx+CZhj+OaVtsXB7EZCg0WTGr+lgcWURdakC1UgNbsNPYJ4feXzrxyUVUXCFBKubZaLx HS/ssmW+md5bv7vjCPbXXV1ud5IhcQffBHfLAbcreFqrWLwwoNEUIQdhXe350qxYasIXg3 LrJsIhX2LFsveBDUqhbUl4+SNcBwJfgLQtCRkG2Aq1M9jimW2N9O18eg1MyIep4wGvWNeX nRa6i3Lnaib7ne1Z65mmKns+8Dlhkxko2PLQfYeTNoB3dQWzF6ITYgcK/QNhlxb5J2/dKd ng0rFtuLYJL4r7KK4+LAr4dnjMJgiKWQbltdKslaa1xrD+oxMQBTRCc0msEwqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764570201; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/Prb7ibirxUtFpj5w4OSXS/FW8DXMhvj2oEyctK3wAI=; b=h/7fRAZl6691aFnQm0sSLwhKTxYCjcG3iWOISJNeInzLAT6tiay+pdBiXtD6q5oCaOnlmm S8a12Vdhll/At5MrDEY/TGq9Mlj4GNJcA0l5e/QrPcl+B0nR6nHlU8SSkojmeuDudXo+OP LNiTitK54obR3ey68gtl1NrytLfelnTnYmbvG1hmPArqrcnceEJk8cgYxJn2qba+Tuxit1 3BThNoGoi+q9Aip4wTEDk4aFXJdxn8B/f7zrBP1l5KbygpTW8uzg3O9Mr28++Qu7ga6h/6 bzVihkQUa6sLKEWuv31Wn2qKhm4shAuwy051docRR2pJyFjTKaaXWh7ichhiKQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764570201; a=rsa-sha256; cv=none; b=hOJtHWPQgMutWgKZ5Lpm/Be1zc4dLmvLYQpS8XKVGpsWoimB21UA6MP2/bIrQVo+IaxoaV 2PIRgU75i4rOZBJYRYSD2PE7oK8oFsdDKh/FaMZpto0wda52gh6qba5Xr1PwWo3jRnsOvN KlXREbCMEdyeNG0PCzlykl4ha1/ZpinZ381OnwFJoBHYKcx4Wd+f8N3Go+4XrjYfbN1mXx N8tOHnaHPEkbtTLiAJPINd3rW16j9zR7fjRlhLe97qKi54cIzK6PrKHJtCgYUP2F9ywfqo 94dPpJcbcnRgaByt4T0K2B2ZSNGqChx5eikjlYdHiKg7idb2zc1AN2kSuWf8lQ== 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 4dKYkK4r95z18Bq for ; Mon, 01 Dec 2025 06:23:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id f9ca by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 06:23:21 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jaeyoon Choi Subject: git: 3e3d7e590566 - main - ufshci: add helper to convert SCSI LUN to UPIU LUN formats List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jaeyoon X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3e3d7e590566c7e1a55bfb0f084c9f64c6c46898 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 06:23:21 +0000 Message-Id: <692d3459.f9ca.1e27a8a1@gitrepo.freebsd.org> The branch main has been updated by jaeyoon: URL: https://cgit.FreeBSD.org/src/commit/?id=3e3d7e590566c7e1a55bfb0f084c9f64c6c46898 commit 3e3d7e590566c7e1a55bfb0f084c9f64c6c46898 Author: Jaeyoon Choi AuthorDate: 2025-12-01 04:38:24 +0000 Commit: Jaeyoon Choi CommitDate: 2025-12-01 04:40:15 +0000 ufshci: add helper to convert SCSI LUN to UPIU LUN formats Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D53919 --- sys/dev/ufshci/ufshci.h | 2 ++ sys/dev/ufshci/ufshci_sim.c | 25 ++++++++++++++++++++++++- 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/sys/dev/ufshci/ufshci.h b/sys/dev/ufshci/ufshci.h index b055d2d2d769..188f8c41def1 100644 --- a/sys/dev/ufshci/ufshci.h +++ b/sys/dev/ufshci/ufshci.h @@ -335,6 +335,8 @@ struct ufshci_upiu_header { uint8_t flags; }; uint8_t lun; +#define UFSHCI_UPIU_UNIT_NUMBER_ID_MASK 0x7f +#define UFSHCI_UPIU_WLUN_ID_MASK 0x80 uint8_t task_tag; /* dword 1 */ diff --git a/sys/dev/ufshci/ufshci_sim.c b/sys/dev/ufshci/ufshci_sim.c index 828b520614a5..1b80df089a46 100644 --- a/sys/dev/ufshci/ufshci_sim.c +++ b/sys/dev/ufshci/ufshci_sim.c @@ -72,6 +72,28 @@ ufshci_sim_illegal_request(union ccb *ccb) xpt_done(ccb); } +/* + * The SCSI LUN format and the UFS UPIU LUN format are different. + * This function converts the SCSI LUN format to the UFS UPIU LUN format. + */ +static uint8_t +ufshci_sim_translate_scsi_to_ufs_lun(lun_id_t scsi_lun) +{ + const int address_format_offset = 8; + uint8_t address_format = scsi_lun >> address_format_offset; + + /* Well known logical unit */ + if (((address_format & RPL_LUNDATA_ATYP_MASK) == + RPL_LUNDATA_ATYP_EXTLUN) && + ((address_format & RPL_LUNDATA_EXT_EAM_MASK) == + RPL_LUNDATA_EXT_EAM_WK)) + return ((scsi_lun & UFSHCI_UPIU_UNIT_NUMBER_ID_MASK) | + UFSHCI_UPIU_WLUN_ID_MASK); + + /* Logical unit */ + return (scsi_lun & UFSHCI_UPIU_UNIT_NUMBER_ID_MASK); +} + static void ufshchi_sim_scsiio(struct cam_sim *sim, union ccb *ccb) { @@ -129,7 +151,8 @@ ufshchi_sim_scsiio(struct cam_sim *sim, union ccb *ccb) upiu->header.trans_type = UFSHCI_UPIU_TRANSACTION_CODE_COMMAND; upiu->header.operational_flags = is_write ? UFSHCI_OPERATIONAL_FLAG_W : UFSHCI_OPERATIONAL_FLAG_R; - upiu->header.lun = csio->ccb_h.target_lun; + upiu->header.lun = ufshci_sim_translate_scsi_to_ufs_lun( + csio->ccb_h.target_lun); upiu->header.cmd_set_type = UFSHCI_COMMAND_SET_TYPE_SCSI; upiu->expected_data_transfer_length = htobe32(payload_len); From nobody Mon Dec 1 06:23:22 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKYkL6rxFz6J9sM for ; Mon, 01 Dec 2025 06:23:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKYkL69Ydz3BmK for ; Mon, 01 Dec 2025 06:23:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764570202; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=q5/i9LpIm2nn0LjwRYqL4jUCSHDBG7L5svBRPZN3Vq4=; b=V7vSdho9jXnv2vTTxMD2m0AjWTsuXPio8iAfkSNFB1uQVjhLnKYMNmaWQQMoSfUyA3S0Bl a1JYyM+FNFfhhDJzsZSFQZFLO3PaDVL2zHsSopoq2H9ZbBEDRN3oSlaXutNEzh6Xn7c0h8 B9aqRku2JVQvDTPnnjYL9c5vvQvNX4S0rH01I12P/hBDtdiqU7JcX1q7knlldtFCsXZ82G mJxbOtg+LcUTBk9lrdkt3uzEP6baA/8N92ROnH3DZmi5yNqVrx7wtNKHfbhPGK8umCnD54 qQKPLCcxJ80rN/1eS2DhnJMD/75Su8HCMKvNH0bXRqHHZgOaxA8YQuPd7J5Thg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764570202; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=q5/i9LpIm2nn0LjwRYqL4jUCSHDBG7L5svBRPZN3Vq4=; b=oBwp0dchw83Nw0UpinEjspHBDfICfvDuc42xeYueny+VaUkslFUpwpl9Dbknwt6rIIdngK s/9VfOus6/basOPXSTDx5TNPQtf1u9PQ8GSa7ZTyn5YySDuwejAirRYUqCDU7CeGAgNtSx New+waDg9M0POUBUx0H/oM1F3lEfc5e0i1UqC9iHtsIX2SCHPvXS+JsHIfaAdZpBjmE3bg L6qJhI26sthfT/r9POWKK8V+YOE4W0L054R9JijV3LQB5pVFRtusziJXSjHWdJeqj2yRBn uCVg7CNrIE1P84kVZsNxVTCoU/H957qmYXgGyCOgjNUGx2lsUKrDeUJjB9dtYQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764570202; a=rsa-sha256; cv=none; b=Ma+vC2g0qmNZdq6F1GPDCGG3OjUDcHeCTMZr1tg2GBLb/fS2G6yF/zm7MV/wh4YsIWbR6Z mLX9UU2drB9U3feE+sa1yOv3UkWhqeW2ZsBiPiVyCm2n/WEjFQcQLz52ix+mdVFIyLpNmV vT0brsstC3UK+nWHH1gZeGr+HsUnVBWWmUGR6kC7iWT3M9mNV5/f5eAvAoSwrAiEPGB6J/ AJ6/lmg7e4f3xukCUYV5Gti6cfmjiUeUHsgy+Z05LlyQA7n9TGgvYqr1YbPobOjhu2dA5h hGfDyfafqXWXMsnmAl19VO8tmNkLg304Qc7k7CVQv1Bep6wPsuAsAbpUT6tyNg== 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 4dKYkL5jdSz18HX for ; Mon, 01 Dec 2025 06:23:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id fdf1 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 06:23:22 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jaeyoon Choi Subject: git: ba963776199f - main - cam/scsi: Support well known logical unit List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jaeyoon X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ba963776199f84775388a03d072121bf93707020 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 06:23:22 +0000 Message-Id: <692d345a.fdf1.6bbf87e1@gitrepo.freebsd.org> The branch main has been updated by jaeyoon: URL: https://cgit.FreeBSD.org/src/commit/?id=ba963776199f84775388a03d072121bf93707020 commit ba963776199f84775388a03d072121bf93707020 Author: Jaeyoon Choi AuthorDate: 2025-12-01 04:38:52 +0000 Commit: Jaeyoon Choi CommitDate: 2025-12-01 04:40:31 +0000 cam/scsi: Support well known logical unit This patch adds an additional state to probe well-known logical units before probing normal logical units. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D53920 --- sys/cam/cam_ccb.h | 1 + sys/cam/cam_xpt.c | 1 + sys/cam/cam_xpt_internal.h | 1 + sys/cam/scsi/scsi_all.h | 2 +- sys/cam/scsi/scsi_xpt.c | 239 +++++++++++++++++++++++++++++---------------- 5 files changed, 161 insertions(+), 83 deletions(-) diff --git a/sys/cam/cam_ccb.h b/sys/cam/cam_ccb.h index 1f110686a658..19f18f36b8c9 100644 --- a/sys/cam/cam_ccb.h +++ b/sys/cam/cam_ccb.h @@ -614,6 +614,7 @@ typedef enum { } pi_tmflag; typedef enum { + PIM_WLUNS = 0x400,/* Well known LUNs supported */ PIM_ATA_EXT = 0x200,/* ATA requests can understand ata_ext requests */ PIM_EXTLUNS = 0x100,/* 64bit extended LUNs supported */ PIM_SCANHILO = 0x80, /* Bus scans from high ID to low ID */ diff --git a/sys/cam/cam_xpt.c b/sys/cam/cam_xpt.c index a11b688c4456..ecf06045ed90 100644 --- a/sys/cam/cam_xpt.c +++ b/sys/cam/cam_xpt.c @@ -4682,6 +4682,7 @@ xpt_alloc_target(struct cam_eb *bus, target_id_t target_id) target->refcount = 1; target->generation = 0; target->luns = NULL; + target->wluns = NULL; mtx_init(&target->luns_mtx, "CAM LUNs lock", NULL, MTX_DEF); timevalclear(&target->last_reset); /* diff --git a/sys/cam/cam_xpt_internal.h b/sys/cam/cam_xpt_internal.h index 5a812e6e7d20..73f50895ee74 100644 --- a/sys/cam/cam_xpt_internal.h +++ b/sys/cam/cam_xpt_internal.h @@ -169,6 +169,7 @@ struct cam_et { struct timeval last_reset; u_int rpl_size; struct scsi_report_luns_data *luns; + struct scsi_report_luns_data *wluns; struct mtx luns_mtx; /* Protection for luns field. */ }; diff --git a/sys/cam/scsi/scsi_all.h b/sys/cam/scsi/scsi_all.h index b6fb66beefcd..e50974edac86 100644 --- a/sys/cam/scsi/scsi_all.h +++ b/sys/cam/scsi/scsi_all.h @@ -3057,7 +3057,7 @@ struct scsi_report_luns_data { uint8_t length[4]; /* length of LUN inventory, in bytes */ uint8_t reserved[4]; /* unused */ /* - * LUN inventory- we only support the type zero form for now. + * LUN inventory- we only support type zero and extended (well-known) formats. */ struct scsi_report_luns_lundata luns[0]; }; diff --git a/sys/cam/scsi/scsi_xpt.c b/sys/cam/scsi/scsi_xpt.c index bef35243af98..d0c170867b97 100644 --- a/sys/cam/scsi/scsi_xpt.c +++ b/sys/cam/scsi/scsi_xpt.c @@ -130,6 +130,7 @@ typedef enum { PROBE_TUR, PROBE_INQUIRY, /* this counts as DV0 for Basic Domain Validation */ PROBE_FULL_INQUIRY, + PROBE_REPORT_WLUNS, PROBE_REPORT_LUNS, PROBE_MODE_SENSE, PROBE_SUPPORTED_VPD_LIST, @@ -148,6 +149,7 @@ static char *probe_action_text[] = { "PROBE_TUR", "PROBE_INQUIRY", "PROBE_FULL_INQUIRY", + "PROBE_REPORT_WLUNS", "PROBE_REPORT_LUNS", "PROBE_MODE_SENSE", "PROBE_SUPPORTED_VPD_LIST", @@ -567,7 +569,7 @@ static int proberequestbackoff(struct cam_periph *periph, static void probedone(struct cam_periph *periph, union ccb *done_ccb); static void probe_purge_old(struct cam_path *path, struct scsi_report_luns_data *new, - probe_flags flags); + probe_flags flags, bool is_wlun); static void probecleanup(struct cam_periph *periph); static void scsi_find_quirk(struct cam_ed *device); static void scsi_scan_bus(struct cam_periph *periph, union ccb *ccb); @@ -817,6 +819,23 @@ again: /*timeout*/60 * 1000); break; } + case PROBE_REPORT_WLUNS: + { + void *rp; + + rp = malloc(periph->path->target->rpl_size, + M_CAMXPT, M_NOWAIT | M_ZERO); + if (rp == NULL) { + xpt_print(periph->path, + "Unable to alloc report wluns storage\n"); + PROBE_SET_ACTION(softc, PROBE_REPORT_LUNS); + goto again; + } + scsi_report_luns(csio, 5, probedone, MSG_SIMPLE_Q_TAG, + RPL_REPORT_WELLKNOWN, rp, periph->path->target->rpl_size, + SSD_FULL_SIZE, 60000); + break; + } case PROBE_REPORT_LUNS: { void *rp; @@ -1162,6 +1181,7 @@ probedone(struct cam_periph *periph, union ccb *done_ccb) struct cam_path *path; struct scsi_inquiry_data *inq_buf; uint32_t priority; + struct ccb_pathinq cpi; CAM_DEBUG(done_ccb->ccb_h.path, CAM_DEBUG_TRACE, ("probedone\n")); @@ -1169,6 +1189,7 @@ probedone(struct cam_periph *periph, union ccb *done_ccb) path = done_ccb->ccb_h.path; priority = done_ccb->ccb_h.pinfo.priority; cam_periph_assert(periph, MA_OWNED); + xpt_path_inq(&cpi, path); switch (softc->action) { case PROBE_TUR: @@ -1235,8 +1256,10 @@ out: SID_ANSI_REV(inq_buf) > SCSI_REV_SPC2 && (SCSI_QUIRK(path->device)->quirks & CAM_QUIRK_NORPTLUNS) == 0) { - PROBE_SET_ACTION(softc, - PROBE_REPORT_LUNS); + if (cpi.hba_misc & PIM_WLUNS) + PROBE_SET_ACTION(softc, PROBE_REPORT_WLUNS); + else + PROBE_SET_ACTION(softc, PROBE_REPORT_LUNS); /* * Start with room for *one* lun. */ @@ -1259,7 +1282,10 @@ out: SID_ANSI_REV(inq_buf) >= SCSI_REV_SPC2 && (SCSI_QUIRK(path->device)->quirks & CAM_QUIRK_NORPTLUNS) == 0) { - PROBE_SET_ACTION(softc, PROBE_REPORT_LUNS); + if (cpi.hba_misc & PIM_WLUNS) + PROBE_SET_ACTION(softc, PROBE_REPORT_WLUNS); + else + PROBE_SET_ACTION(softc, PROBE_REPORT_LUNS); periph->path->target->rpl_size = 16; xpt_release_ccb(done_ccb); xpt_schedule(periph, priority); @@ -1296,11 +1322,13 @@ out: xpt_release_ccb(done_ccb); break; } + case PROBE_REPORT_WLUNS: case PROBE_REPORT_LUNS: { struct ccb_scsiio *csio; struct scsi_report_luns_data *lp; u_int nlun, maxlun; + bool is_wlun = softc->action == PROBE_REPORT_WLUNS; csio = &done_ccb->csio; @@ -1377,7 +1405,7 @@ out: * This function will also install the new list * in the target structure. */ - probe_purge_old(path, lp, softc->flags); + probe_purge_old(path, lp, softc->flags, is_wlun); lp = NULL; } /* The processing above should either exit via a `goto @@ -1390,7 +1418,9 @@ out: if (path->device->flags & CAM_DEV_INQUIRY_DATA_VALID && (SID_QUAL(inq_buf) == SID_QUAL_LU_CONNECTED || SID_QUAL(inq_buf) == SID_QUAL_LU_OFFLINE)) { - if (INQ_DATA_TQ_ENABLED(inq_buf)) + if (is_wlun) + PROBE_SET_ACTION(softc, PROBE_REPORT_LUNS); + else if (INQ_DATA_TQ_ENABLED(inq_buf)) PROBE_SET_ACTION(softc, PROBE_MODE_SENSE); else PROBE_SET_ACTION(softc, @@ -1815,20 +1845,22 @@ probe_device_check: static void probe_purge_old(struct cam_path *path, struct scsi_report_luns_data *new, - probe_flags flags) + probe_flags flags, bool is_wlun) { struct cam_path *tp; - struct scsi_report_luns_data *old; + struct scsi_report_luns_data **luns_data, *old; u_int idx1, idx2, nlun_old, nlun_new; lun_id_t this_lun; uint8_t *ol, *nl; + luns_data = is_wlun ? &path->target->wluns : &path->target->luns; + if (path->target == NULL) { return; } mtx_lock(&path->target->luns_mtx); - old = path->target->luns; - path->target->luns = new; + old = *luns_data; + *luns_data = new; mtx_unlock(&path->target->luns_mtx); if (old == NULL) return; @@ -1908,11 +1940,16 @@ scsi_find_quirk(struct cam_ed *device) device->maxtags = quirk->maxtags; } +typedef struct { + int lun; + int wlun; +} lun_pair; + typedef struct { union ccb *request_ccb; struct ccb_pathinq *cpi; int counter; - int lunindex[0]; + lun_pair lunindex[0]; } scsi_scan_bus_info; static void @@ -1995,7 +2032,8 @@ scsi_scan_bus(struct cam_periph *periph, union ccb *request_ccb) /* Save some state for use while we probe for devices */ scan_info = (scsi_scan_bus_info *) malloc(sizeof(scsi_scan_bus_info) + - (work_ccb->cpi.max_target * sizeof (u_int)), M_CAMXPT, M_ZERO|M_NOWAIT); + (work_ccb->cpi.max_target * sizeof(lun_pair)), + M_CAMXPT, M_ZERO|M_NOWAIT); if (scan_info == NULL) { request_ccb->ccb_h.status = CAM_RESRC_UNAVAIL; xpt_free_ccb(work_ccb); @@ -2080,6 +2118,8 @@ scsi_scan_bus(struct cam_periph *periph, union ccb *request_ccb) path_id_t path_id; target_id_t target_id; lun_id_t lun_id; + u_int nwluns; + bool need_wlun_scan = false; oldpath = request_ccb->ccb_h.path; @@ -2093,89 +2133,124 @@ scsi_scan_bus(struct cam_periph *periph, union ccb *request_ccb) mtx = xpt_path_mtx(scan_info->request_ccb->ccb_h.path); mtx_lock(mtx); - mtx_lock(&target->luns_mtx); - if (target->luns) { - lun_id_t first; - u_int nluns = scsi_4btoul(target->luns->length) / 8; - /* - * Make sure we skip over lun 0 if it's the first member - * of the list as we've actually just finished probing - * it. - */ - CAM_GET_LUN(target->luns, 0, first); - if (first == 0 && scan_info->lunindex[target_id] == 0) { - scan_info->lunindex[target_id]++; - } - - /* - * Skip any LUNs that the HBA can't deal with. - */ - while (scan_info->lunindex[target_id] < nluns) { - if (scan_info->cpi->hba_misc & PIM_EXTLUNS) { - CAM_GET_LUN(target->luns, - scan_info->lunindex[target_id], - lun_id); - break; - } + if (scan_info->cpi->hba_misc & PIM_WLUNS) { + /* Scan Well known logical units */ + mtx_lock(&target->luns_mtx); - if (CAM_CAN_GET_SIMPLE_LUN(target->luns, - scan_info->lunindex[target_id])) { - CAM_GET_SIMPLE_LUN(target->luns, - scan_info->lunindex[target_id], - lun_id); - break; - } - - scan_info->lunindex[target_id]++; + if (target->wluns) { + nwluns = scsi_4btoul(target->wluns->length) / 8; + if (scan_info->lunindex[target_id].wlun < nwluns) + need_wlun_scan = true; } - if (scan_info->lunindex[target_id] < nluns) { + if (need_wlun_scan) { + /* + * WLUN uses the Extended WLUN address format, so we can handle all of + * them. + */ + CAM_GET_LUN(target->wluns, scan_info->lunindex[target_id].wlun, lun_id); + mtx_unlock(&target->luns_mtx); next_target = 0; CAM_DEBUG(request_ccb->ccb_h.path, - CAM_DEBUG_PROBE, - ("next lun to try at index %u is %jx\n", - scan_info->lunindex[target_id], - (uintmax_t)lun_id)); - scan_info->lunindex[target_id]++; + CAM_DEBUG_PROBE, + ("next wlun to try at index %u is %jx\n", + scan_info->lunindex[target_id].wlun, + (uintmax_t)lun_id)); + scan_info->lunindex[target_id].wlun++; } else { mtx_unlock(&target->luns_mtx); - /* We're done with scanning all luns. */ + /* We're done with scanning all wluns. */ } - } else { - mtx_unlock(&target->luns_mtx); - device = request_ccb->ccb_h.path->device; - /* Continue sequential LUN scan if: */ - /* -- we have more LUNs that need recheck */ - mtx_lock(&target->bus->eb_mtx); - nextdev = device; - while ((nextdev = TAILQ_NEXT(nextdev, links)) != NULL) - if ((nextdev->flags & CAM_DEV_UNCONFIGURED) == 0) - break; - mtx_unlock(&target->bus->eb_mtx); - if (nextdev != NULL) { - next_target = 0; - /* -- stop if CAM_QUIRK_NOLUNS is set. */ - } else if (SCSI_QUIRK(device)->quirks & CAM_QUIRK_NOLUNS) { - next_target = 1; - /* -- this LUN is connected and its SCSI version - * allows more LUNs. */ - } else if ((device->flags & CAM_DEV_UNCONFIGURED) == 0) { - if (lun_id < (CAM_SCSI2_MAXLUN-1) || - CAN_SRCH_HI_DENSE(device)) + } + + if (!need_wlun_scan) { + /* Scan logical units */ + mtx_lock(&target->luns_mtx); + if (target->luns) { + lun_id_t first; + u_int nluns = scsi_4btoul(target->luns->length) / 8; + + /* + * Make sure we skip over lun 0 if it's the first member + * of the list as we've actually just finished probing + * it. + */ + CAM_GET_LUN(target->luns, 0, first); + if (first == 0 && scan_info->lunindex[target_id].lun == 0) { + scan_info->lunindex[target_id].lun++; + } + + /* + * Skip any LUNs that the HBA can't deal with. + */ + while (scan_info->lunindex[target_id].lun < nluns) { + if (scan_info->cpi->hba_misc & PIM_EXTLUNS) { + CAM_GET_LUN(target->luns, + scan_info->lunindex[target_id].lun, + lun_id); + break; + } + + if (CAM_CAN_GET_SIMPLE_LUN(target->luns, + scan_info->lunindex[target_id].lun)) { + CAM_GET_SIMPLE_LUN(target->luns, + scan_info->lunindex[target_id].lun, + lun_id); + break; + } + + scan_info->lunindex[target_id].lun++; + } + + if (scan_info->lunindex[target_id].lun < nluns) { + mtx_unlock(&target->luns_mtx); next_target = 0; - /* -- this LUN is disconnected, its SCSI version - * allows more LUNs and we guess they may be. */ - } else if ((device->flags & CAM_DEV_INQUIRY_DATA_VALID) != 0) { - if (lun_id < (CAM_SCSI2_MAXLUN-1) || - CAN_SRCH_HI_SPARSE(device)) + CAM_DEBUG(request_ccb->ccb_h.path, + CAM_DEBUG_PROBE, + ("next lun to try at index %u is %jx\n", + scan_info->lunindex[target_id].lun, + (uintmax_t)lun_id)); + scan_info->lunindex[target_id].lun++; + } else { + mtx_unlock(&target->luns_mtx); + /* We're done with scanning all luns. */ + } + } else { + mtx_unlock(&target->luns_mtx); + device = request_ccb->ccb_h.path->device; + /* Continue sequential LUN scan if: */ + /* -- we have more LUNs that need recheck */ + mtx_lock(&target->bus->eb_mtx); + nextdev = device; + while ((nextdev = TAILQ_NEXT(nextdev, links)) != NULL) + if ((nextdev->flags & CAM_DEV_UNCONFIGURED) == 0) + break; + mtx_unlock(&target->bus->eb_mtx); + if (nextdev != NULL) { next_target = 0; - } - if (next_target == 0) { - lun_id++; - if (lun_id > scan_info->cpi->max_lun) + /* -- stop if CAM_QUIRK_NOLUNS is set. */ + } else if (SCSI_QUIRK(device)->quirks & CAM_QUIRK_NOLUNS) { next_target = 1; + /* -- this LUN is connected and its SCSI version + * allows more LUNs. */ + } else if ((device->flags & CAM_DEV_UNCONFIGURED) == 0) { + if (lun_id < (CAM_SCSI2_MAXLUN-1) || + CAN_SRCH_HI_DENSE(device)) + next_target = 0; + /* -- this LUN is disconnected, its SCSI version + * allows more LUNs and we guess they may be. */ + } else if ((device->flags & CAM_DEV_INQUIRY_DATA_VALID) != 0) { + if (lun_id < (CAM_SCSI2_MAXLUN-1) || + CAN_SRCH_HI_SPARSE(device)) + next_target = 0; + } + if (next_target == 0) { + lun_id++; + if (lun_id > scan_info->cpi->max_lun) + next_target = 1; + } } } From nobody Mon Dec 1 06:23:23 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKYkN1BfBz6JB53 for ; Mon, 01 Dec 2025 06:23:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKYkM70Jlz4B7h for ; Mon, 01 Dec 2025 06:23:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764570204; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NLFjAfiFBkBaHiNI/uzPS9OQE8X1S+GODG5il9EzpAg=; b=CogoZjqhmlwpQaMEcq41QJE+BPgPWnc/gRmM2leotcSQnwgrmpgxV+8ypdUf9sdkIfSqPM M8QVORFIWD6GR/DLt2IOKGfgva/tPij3pJqmctvO/bD3c8rIetUq6rrPybJ47SiixClqJY ZHovoaqKOe5jn77/OSMjg7PFRfTV0/q+GOM1qn914WO9xiZfcjSFEuvc3QwcbgQDrdMZU9 KkZw+RQ/GS8KRENcyo//oXUH0xzUtl5hsGzZNwvvq51ndeWmO2/8H+mwIeo1jNtaMK0prW Eryjms0NXq1TxQvDYVZOvgbEY4JKO6+pPFU/oraK8HNOte8O7leRaN4OdLm7KQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764570204; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NLFjAfiFBkBaHiNI/uzPS9OQE8X1S+GODG5il9EzpAg=; b=N0sTjXmUzhqGuscWsqQUEu/MMrgAVcWTqLrVhOw1DOn4mb6BmwtF6ueHHUb56u4M/ZNOLj WCA6a1mBoUW13ttk473t+xpkBK3K1NWoX5H2aBB9zSB2iXcdzOxmak1wUhH4kRPRErzHGx cZpw2cyDt0svzkaX3UU6HRbIgYFBSd4JcU1hjcTvfriY2pY5ilDwSUITZug1EOZdgnUb1I 1pwPyJzJ8usUHKokNJXsLX2BH9poncgQYSBZOR8gLwg9sDzqW/vGJON1lz9BuL+uLs6G52 Czq0mjzEl5NcIK9Jwqc2K7yeERXoAPXvEg2LrFDFXxhXDv2XK6uGFvLjIiIRLw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764570204; a=rsa-sha256; cv=none; b=Rc7NxSIyM3OjDX87GIvpeTh6BQzssJL/Nwwn0NqO1IvVo8fw8v+1ejCDvQGkBYFi/j2xHG 7SlJF1kEQ5hkbQjNtJ34E4+Lq/ITGSxxDauTH6vXLoLy+X8xiYcHEJPDxogExjFMyUEQhL Gq4R+KFOp93ANCbv6O4Hohem3fqgwfR04iR8fdRK9wSPvTYeTRoEN9QnR9jweIUAE3/pJM B5+kHQQrBrgmUMb1oWB6jLv8kyv2i6vDXtDyLSzBIB7j2YRAG0qRLjAW1KYhcz0f9EpO8S n4xVh49YFK0hhHhPN7/2NzGhtJPaLPwTrgXe+l5qX7P8j3i28TODqL3uNpL3ng== 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 4dKYkM6TLWz17n1 for ; Mon, 01 Dec 2025 06:23:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 220e1 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 06:23:23 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jaeyoon Choi Subject: git: 5e0d065b5b90 - main - ufshci: Enable WLUN scan List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jaeyoon X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5e0d065b5b90d4f4264d8248f39f199f1a2576dc Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 06:23:23 +0000 Message-Id: <692d345b.220e1.448a51c@gitrepo.freebsd.org> The branch main has been updated by jaeyoon: URL: https://cgit.FreeBSD.org/src/commit/?id=5e0d065b5b90d4f4264d8248f39f199f1a2576dc commit 5e0d065b5b90d4f4264d8248f39f199f1a2576dc Author: Jaeyoon Choi AuthorDate: 2025-12-01 04:39:14 +0000 Commit: Jaeyoon Choi CommitDate: 2025-12-01 04:40:42 +0000 ufshci: Enable WLUN scan QEMU ufs device does not implement WLUN, so QUIRK is added. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D53921 --- sys/dev/ufshci/ufshci.h | 8 ++++++++ sys/dev/ufshci/ufshci_pci.c | 3 ++- sys/dev/ufshci/ufshci_private.h | 2 ++ sys/dev/ufshci/ufshci_sim.c | 6 +++++- 4 files changed, 17 insertions(+), 2 deletions(-) diff --git a/sys/dev/ufshci/ufshci.h b/sys/dev/ufshci/ufshci.h index 188f8c41def1..766d8de0535b 100644 --- a/sys/dev/ufshci/ufshci.h +++ b/sys/dev/ufshci/ufshci.h @@ -644,6 +644,14 @@ struct ufshci_completion { typedef void (*ufshci_cb_fn_t)(void *, const struct ufshci_completion *, bool); +/* UFS 4.1, section 10.8.5 "Well Known Logical Unit Defined in UFS" */ +enum ufshci_well_known_luns { + UFSHCI_WLUN_REPORT_LUNS = 0x81, + UFSHCI_WLUN_BOOT = 0xb0, + UFSHCI_WLUN_RPMB = 0xc4, + UFSHCI_WLUN_UFS_DEVICE = 0xd0, +}; + /* * UFS Spec 4.1, section 14.1 "UFS Descriptors" * All descriptors use big-endian byte ordering. diff --git a/sys/dev/ufshci/ufshci_pci.c b/sys/dev/ufshci/ufshci_pci.c index 992026fd4f4d..7f78e462db72 100644 --- a/sys/dev/ufshci/ufshci_pci.c +++ b/sys/dev/ufshci/ufshci_pci.c @@ -50,7 +50,8 @@ static struct _pcsid { uint32_t quirks; } pci_ids[] = { { 0x131b36, "QEMU UFS Host Controller", UFSHCI_REF_CLK_19_2MHz, UFSHCI_QUIRK_IGNORE_UIC_POWER_MODE | - UFSHCI_QUIRK_NOT_SUPPORT_ABORT_TASK }, + UFSHCI_QUIRK_NOT_SUPPORT_ABORT_TASK | + UFSHCI_QUIRK_SKIP_WELL_KNOWN_LUNS }, { 0x98fa8086, "Intel Lakefield UFS Host Controller", UFSHCI_REF_CLK_19_2MHz, UFSHCI_QUIRK_LONG_PEER_PA_TACTIVATE | diff --git a/sys/dev/ufshci/ufshci_private.h b/sys/dev/ufshci/ufshci_private.h index ec388c06e248..3cee021880a8 100644 --- a/sys/dev/ufshci/ufshci_private.h +++ b/sys/dev/ufshci/ufshci_private.h @@ -266,6 +266,8 @@ struct ufshci_controller { 8 /* Need to change the number of lanes before changing HS-GEAR. */ #define UFSHCI_QUIRK_NOT_SUPPORT_ABORT_TASK \ 16 /* QEMU does not support Task Management Request */ +#define UFSHCI_QUIRK_SKIP_WELL_KNOWN_LUNS \ + 32 /* QEMU does not support Well known logical units*/ uint32_t ref_clk; diff --git a/sys/dev/ufshci/ufshci_sim.c b/sys/dev/ufshci/ufshci_sim.c index 1b80df089a46..db2e194b699b 100644 --- a/sys/dev/ufshci/ufshci_sim.c +++ b/sys/dev/ufshci/ufshci_sim.c @@ -231,11 +231,15 @@ ufshci_cam_action(struct cam_sim *sim, union ccb *ccb) return; case XPT_PATH_INQ: { struct ccb_pathinq *cpi = &ccb->cpi; + uint32_t need_scan_wluns = 0; + + if (!(ctrlr->quirks & UFSHCI_QUIRK_SKIP_WELL_KNOWN_LUNS)) + need_scan_wluns = PIM_WLUNS; cpi->version_num = 1; cpi->hba_inquiry = PI_SDTR_ABLE | PI_TAG_ABLE; cpi->target_sprt = 0; - cpi->hba_misc = PIM_UNMAPPED | PIM_NO_6_BYTE; + cpi->hba_misc = need_scan_wluns | PIM_UNMAPPED | PIM_NO_6_BYTE; cpi->hba_eng_cnt = 0; cpi->max_target = 0; cpi->max_lun = ctrlr->max_lun_count; From nobody Mon Dec 1 06:23:24 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKYkP2zhcz6JB9Y for ; Mon, 01 Dec 2025 06:23:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKYkP0TrZz49xS for ; Mon, 01 Dec 2025 06:23:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764570205; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=21sQ0Xl0UP7wjILRyeQZrYRrsxYpQZISibSGr+4OVgU=; b=Q4HbURT62MieF6u36jjYWFNh2oGlqK69+x0XfRErG1je1yqERJiWhHb4p3QtqDdnvr0VwY 858DKC4N7L9zZHyVaoAq5ywS1Uc4B8OpS+xtHeSRNfheLqLWwFlwmxNIXpg5UFfEwvaxhr 3hdOC9fYoLDkUA/zBk6bDwVIaUz0+HaCM3D+h0fCInv119k16cuEkd8TDrSUEVlKekU9vF V0+v6ZB0AIMX2pRg3/28SKn13pe83mkzsccW7KVgbPE2l6H3Vr6oM5hblRAjaXxRdHNgd5 FrXgQQEwypl5h/5gQRrT5fZ9+jJCz4hPEfC1IyOniIBcPD+GXCE8tTln2gtp+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764570205; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=21sQ0Xl0UP7wjILRyeQZrYRrsxYpQZISibSGr+4OVgU=; b=ipnx4s4V1oaVuGexv1fB6cmkL5Sd31x7MN/o44zA/kNsiSwwFYZXtOVagPuR10sEWjYOmd tdBm0U7rlBK6DlDuoXJwgrqCbVOHsHSX0QxnOMwsddSDBwj5znndZdDFUF9LiWD2IJJdaU 8YJlOgUNGUI7u9mAiFzBNq9O61j2qtslN7Jhur/PjwHPVrWv2lSXg7TiuQDM6DQIsoeOMa z7payKHc80ITNugTmeuCOsVk1jM8+artzKAiy1xyDGKAX6cpxqKp9NSMNBsG0EzyaYkL0e 1j1g4VQt3LvKm5+sELECWB7xTBQd0vi9DzzRwuDhN4ZGL+Go9Qnhqx+LlSuBbg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764570205; a=rsa-sha256; cv=none; b=hs0AEk1Lh2unFr/yM3BuWlFzEHxPaxj1XeMQiI4DvoT/o4EPMCLtVbdM72fUga+TEc80Wx GRlIUNOAvaj9WDQilC644HhzdW3X7TIqhsvL9HmCswhCd3OpoQ20VlZ19JsrpJFhnh2sik 6ImN3LyVEdB91qMEzrpbUw4QXvgz+87CKQhkpwfJKtRfX7PqalXxIjkRWRiyPLr4HgHrwi 9wwKAygotItL9gfJNj6XG5E0iBS9g0WYXKQNkSprw7xeZa4o9Rs9MRm0T9HnV2OfbB7okE XsrySiVXAWWuqqi0H3SHfF06vGNkBaOZX5vm298ejphDUgkUQE02HcsksNsqHg== 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 4dKYkP01Dnz18FV for ; Mon, 01 Dec 2025 06:23:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 215b3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 06:23:24 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jaeyoon Choi Subject: git: 8c35de4982d8 - main - cam/scsi: Add power condition support to START STOP UNIT List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jaeyoon X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8c35de4982d855950a900483513f341643f6158f Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 06:23:24 +0000 Message-Id: <692d345c.215b3.71d84ece@gitrepo.freebsd.org> The branch main has been updated by jaeyoon: URL: https://cgit.FreeBSD.org/src/commit/?id=8c35de4982d855950a900483513f341643f6158f commit 8c35de4982d855950a900483513f341643f6158f Author: Jaeyoon Choi AuthorDate: 2025-12-01 04:39:35 +0000 Commit: Jaeyoon Choi CommitDate: 2025-12-01 04:40:52 +0000 cam/scsi: Add power condition support to START STOP UNIT This patch adds a power_condition parameter to the scsi_start_stop() function and sets the power condition via SSU. Reviewed by: imp (mentor) Sponsored by: Samsung Electronic Differential Revision: https://reviews.freebsd.org/D53922 --- sbin/camcontrol/camcontrol.c | 1 + sys/cam/cam_periph.c | 1 + sys/cam/scsi/scsi_all.c | 4 +++- sys/cam/scsi/scsi_all.h | 3 ++- sys/cam/scsi/scsi_cd.c | 2 ++ sys/dev/mpr/mpr_sas_lsi.c | 1 + sys/dev/mps/mps_sas_lsi.c | 1 + 7 files changed, 11 insertions(+), 2 deletions(-) diff --git a/sbin/camcontrol/camcontrol.c b/sbin/camcontrol/camcontrol.c index 15a5d42a2ba5..8da0c97b02a9 100644 --- a/sbin/camcontrol/camcontrol.c +++ b/sbin/camcontrol/camcontrol.c @@ -1024,6 +1024,7 @@ scsistart(struct cam_device *device, int startstop, int loadeject, /* start/stop */ startstop, /* load_eject */ loadeject, /* immediate */ 0, + /* power_condition */ SSS_PC_START_VALID, /* sense_len */ SSD_FULL_SIZE, /* timeout */ timeout ? timeout : 120000); diff --git a/sys/cam/cam_periph.c b/sys/cam/cam_periph.c index 730656684e2a..e485ecff8736 100644 --- a/sys/cam/cam_periph.c +++ b/sys/cam/cam_periph.c @@ -1791,6 +1791,7 @@ camperiphscsisenseerror(union ccb *ccb, union ccb **orig, /*start*/TRUE, /*load/eject*/le, /*immediate*/FALSE, + /*power_condition*/SSS_PC_START_VALID, SSD_FULL_SIZE, /*timeout*/50000); break; diff --git a/sys/cam/scsi/scsi_all.c b/sys/cam/scsi/scsi_all.c index fd128e69f1f1..168cd17d3965 100644 --- a/sys/cam/scsi/scsi_all.c +++ b/sys/cam/scsi/scsi_all.c @@ -8984,7 +8984,8 @@ void scsi_start_stop(struct ccb_scsiio *csio, uint32_t retries, void (*cbfcnp)(struct cam_periph *, union ccb *), uint8_t tag_action, int start, int load_eject, - int immediate, uint8_t sense_len, uint32_t timeout) + int immediate, uint8_t power_condition, uint8_t sense_len, + uint32_t timeout) { struct scsi_start_stop_unit *scsi_cmd; int extra_flags = 0; @@ -8999,6 +9000,7 @@ scsi_start_stop(struct ccb_scsiio *csio, uint32_t retries, } if (load_eject != 0) scsi_cmd->how |= SSS_LOEJ; + scsi_cmd->how |= power_condition; if (immediate != 0) scsi_cmd->byte2 |= SSS_IMMED; diff --git a/sys/cam/scsi/scsi_all.h b/sys/cam/scsi/scsi_all.h index e50974edac86..fb3ed8ee4458 100644 --- a/sys/cam/scsi/scsi_all.h +++ b/sys/cam/scsi/scsi_all.h @@ -4326,7 +4326,8 @@ void scsi_unmap(struct ccb_scsiio *csio, uint32_t retries, void scsi_start_stop(struct ccb_scsiio *csio, uint32_t retries, void (*cbfcnp)(struct cam_periph *, union ccb *), uint8_t tag_action, int start, int load_eject, - int immediate, uint8_t sense_len, uint32_t timeout); + int immediate, uint8_t power_condition, uint8_t sense_len, + uint32_t timeout); void scsi_read_attribute(struct ccb_scsiio *csio, uint32_t retries, void (*cbfcnp)(struct cam_periph *, union ccb *), uint8_t tag_action, uint8_t service_action, diff --git a/sys/cam/scsi/scsi_cd.c b/sys/cam/scsi/scsi_cd.c index e622a96ec77e..bc4634562dc6 100644 --- a/sys/cam/scsi/scsi_cd.c +++ b/sys/cam/scsi/scsi_cd.c @@ -3406,6 +3406,7 @@ cdstartunit(struct cam_periph *periph, int load) /* start */ TRUE, /* load_eject */ load, /* immediate */ FALSE, + /* power_condition */ SSS_PC_START_VALID, /* sense_len */ SSD_FULL_SIZE, /* timeout */ 50000); @@ -3434,6 +3435,7 @@ cdstopunit(struct cam_periph *periph, uint32_t eject) /* start */ FALSE, /* load_eject */ eject, /* immediate */ FALSE, + /* power_condition */ SSS_PC_START_VALID, /* sense_len */ SSD_FULL_SIZE, /* timeout */ 50000); diff --git a/sys/dev/mpr/mpr_sas_lsi.c b/sys/dev/mpr/mpr_sas_lsi.c index d9744b1054c2..9ba776e49e7a 100644 --- a/sys/dev/mpr/mpr_sas_lsi.c +++ b/sys/dev/mpr/mpr_sas_lsi.c @@ -1517,6 +1517,7 @@ mprsas_SSU_to_SATA_devices(struct mpr_softc *sc, int howto) /*start*/FALSE, /*load/eject*/0, /*immediate*/FALSE, + /*power_condition*/SSS_PC_START_VALID, MPR_SENSE_LEN, /*timeout*/10000); xpt_action(ccb); diff --git a/sys/dev/mps/mps_sas_lsi.c b/sys/dev/mps/mps_sas_lsi.c index e2d1ef2b013a..42119b5c0a43 100644 --- a/sys/dev/mps/mps_sas_lsi.c +++ b/sys/dev/mps/mps_sas_lsi.c @@ -1153,6 +1153,7 @@ mpssas_SSU_to_SATA_devices(struct mps_softc *sc, int howto) /*start*/FALSE, /*load/eject*/0, /*immediate*/FALSE, + /*power_condition*/SSS_PC_START_VALID, MPS_SENSE_LEN, /*timeout*/10000); xpt_action(ccb); From nobody Mon Dec 1 06:23:26 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKYkQ3WH8z6JB8M for ; Mon, 01 Dec 2025 06:23:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKYkQ1zLsz3Bqj for ; Mon, 01 Dec 2025 06:23:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764570206; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dp33lfZKjd8WHugZtxl0/szZalyvUIBQXlJ6znt/aBI=; b=dMTteQPHufUdp5NaQwX28KmaFDGGEryWgq7s+jDQaP+muPSaik+BNaTtEL9NmntfZ8PfGL EL1OyXOgFLRRdIMdYWXD9pdeGBcFLpCgaAsa3hSo9iFvhwo8AUq0ZoC9J/gWy5QmlNMvGe wpdfA3cLfeEsdzw7ov6OBu5x9/r0EmsBTsFxB2DZFashjbdrzUow9/PkYRLU6L/RGixYXw FI0yADfhGaehUX3uxGKHlsiV1Ns24Hj5gt+JyS6KNZvOUmEy2arPuPj/CxXNoAkNvxX12G uO+cwi0JXTphEV6p2/25+vgv7zbiRN0iE0e3aZtF6CUyLzg/Q/kephEnjxxt0g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764570206; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dp33lfZKjd8WHugZtxl0/szZalyvUIBQXlJ6znt/aBI=; b=ARiIAtxUwQYhsMhOZDOfIw5mH4SikqvS7pq2HvzFY/9C+pXk11yBAtZ40Dw/QP68JA+4XM 9ZDSFisHHh8KFwnLc8/DXRpZ3FKvSlJsuytOB7GPB+qgZ1rhddKa1CYYhkd0TLaDl8EPRg 3jElSjOsjB4LsrVPDBxO2rbe+zDqrPaIyZ99RSLhHa7L4HZq3KksC15v4gaY4Wi1tMGF1O xJXE0J9i5h4rwYwK+Fo3vaSFBgQ3088UbBOQGrClnk7LpjeuJCQ1rywM4Ml+skoFGlP8E1 YkvYLtxqubMr5p1naEuqAaaa20TVKt690wxfISK/aOTXzk/2RnvdP58tq7Ublg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764570206; a=rsa-sha256; cv=none; b=DjPeBKy8rOkysdOKUAH/WaLfrCrvOaYUiD1YkEalyCxmpEeQqklOKX9GR1aqvzIY7AQ6q7 Kz+aJVlQb/yonUV5sq4YEwnVhS+39o+xzQ2FrDmlynnGt2nKmDJQEq6DvrmD2smxkp+xlM 8PpB57hKuonYY6H0+RzYfJMwuyIY6NHrQzH2y1iFp3+LiKNbblLZ3vtpsvJ+bng+SNnnkt Crf0FQ0CZkUcIPCJM/HBABQ+v4tYCG0vJ5djw4UI2uqQcu8jcNDYuWd6UoDiNbNVbEjLop l51W4XIkAyXL084SAo8IjdXXyGJSZqK8IbpOJ+NsRKlYl3yil1lzafN9hJfG3g== 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 4dKYkQ0rVgz17TQ for ; Mon, 01 Dec 2025 06:23:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 22563 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 06:23:26 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jaeyoon Choi Subject: git: 31407551c3d4 - main - ufshci: Add a check for WLUN during driver initialization List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jaeyoon X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 31407551c3d4d29905f77abddac3fd9b649e166b Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 06:23:26 +0000 Message-Id: <692d345e.22563.31bf9335@gitrepo.freebsd.org> The branch main has been updated by jaeyoon: URL: https://cgit.FreeBSD.org/src/commit/?id=31407551c3d4d29905f77abddac3fd9b649e166b commit 31407551c3d4d29905f77abddac3fd9b649e166b Author: Jaeyoon Choi AuthorDate: 2025-12-01 04:39:49 +0000 Commit: Jaeyoon Choi CommitDate: 2025-12-01 04:41:03 +0000 ufshci: Add a check for WLUN during driver initialization This patch checks whether wlun is registered as a periph device. It also implements a function to issue an SSU. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D53923 --- sys/dev/ufshci/ufshci_ctrlr.c | 12 ++--- sys/dev/ufshci/ufshci_dev.c | 14 ++++- sys/dev/ufshci/ufshci_private.h | 14 +++++ sys/dev/ufshci/ufshci_sim.c | 114 +++++++++++++++++++++++++++++++++++++++- sys/dev/ufshci/ufshci_sysctl.c | 4 ++ 5 files changed, 150 insertions(+), 8 deletions(-) diff --git a/sys/dev/ufshci/ufshci_ctrlr.c b/sys/dev/ufshci/ufshci_ctrlr.c index 35663b480cfa..1ffa99255088 100644 --- a/sys/dev/ufshci/ufshci_ctrlr.c +++ b/sys/dev/ufshci/ufshci_ctrlr.c @@ -79,12 +79,6 @@ ufshci_ctrlr_start(struct ufshci_controller *ctrlr, bool resetting) return; } - /* Initialize UFS Power Mode */ - if (ufshci_dev_init_ufs_power_mode(ctrlr) != 0) { - ufshci_ctrlr_fail(ctrlr); - return; - } - /* Read Controller Descriptor (Device, Geometry) */ if (ufshci_dev_get_descriptor(ctrlr) != 0) { ufshci_ctrlr_fail(ctrlr); @@ -109,6 +103,12 @@ ufshci_ctrlr_start(struct ufshci_controller *ctrlr, bool resetting) return; } + /* Initialize UFS Power Mode */ + if (ufshci_dev_init_ufs_power_mode(ctrlr) != 0) { + ufshci_ctrlr_fail(ctrlr); + return; + } + TSEXIT(); } diff --git a/sys/dev/ufshci/ufshci_dev.c b/sys/dev/ufshci/ufshci_dev.c index 975468e5156f..9696e8ea8091 100644 --- a/sys/dev/ufshci/ufshci_dev.c +++ b/sys/dev/ufshci/ufshci_dev.c @@ -455,8 +455,20 @@ ufshci_dev_init_uic_power_mode(struct ufshci_controller *ctrlr) int ufshci_dev_init_ufs_power_mode(struct ufshci_controller *ctrlr) { - /* TODO: Need to implement */ + ctrlr->ufs_dev.power_mode_supported = false; + if (ctrlr->quirks & UFSHCI_QUIRK_SKIP_WELL_KNOWN_LUNS) + return (0); + + ctrlr->ufs_device_wlun_periph = ufshci_sim_find_periph(ctrlr, + UFSHCI_WLUN_UFS_DEVICE); + if (ctrlr->ufs_device_wlun_periph == NULL) { + ufshci_printf(ctrlr, + "Well-known LUN `UFS Device (0x50)` not found\n"); + return (0); + } + + ctrlr->ufs_dev.power_mode_supported = true; return (0); } diff --git a/sys/dev/ufshci/ufshci_private.h b/sys/dev/ufshci/ufshci_private.h index 3cee021880a8..22e77c9b9326 100644 --- a/sys/dev/ufshci/ufshci_private.h +++ b/sys/dev/ufshci/ufshci_private.h @@ -31,6 +31,8 @@ #include +#include + #include "ufshci.h" MALLOC_DECLARE(M_UFSHCI); @@ -247,6 +249,9 @@ struct ufshci_device { uint32_t wb_user_space_config_option; uint8_t wb_dedicated_lu; uint32_t write_booster_flush_threshold; + + /* Power mode */ + bool power_mode_supported; }; /* @@ -274,6 +279,9 @@ struct ufshci_controller { struct cam_sim *ufshci_sim; struct cam_path *ufshci_path; + struct cam_periph *ufs_device_wlun_periph; + struct mtx ufs_device_wlun_mtx; + struct mtx sc_mtx; uint32_t sc_unit; uint8_t sc_name[16]; @@ -371,8 +379,14 @@ void ufshci_completion_poll_cb(void *arg, const struct ufshci_completion *cpl, bool error); /* SIM */ +uint8_t ufshci_sim_translate_scsi_to_ufs_lun(lun_id_t scsi_lun); +uint64_t ufshci_sim_translate_ufs_to_scsi_lun(uint8_t ufs_lun); int ufshci_sim_attach(struct ufshci_controller *ctrlr); void ufshci_sim_detach(struct ufshci_controller *ctrlr); +struct cam_periph *ufshci_sim_find_periph(struct ufshci_controller *ctrlr, + uint8_t wlun); +int ufshci_sim_send_ssu(struct ufshci_controller *ctrlr, bool start, + int pwr_cond, bool immed); /* Controller */ int ufshci_ctrlr_construct(struct ufshci_controller *ctrlr, device_t dev); diff --git a/sys/dev/ufshci/ufshci_sim.c b/sys/dev/ufshci/ufshci_sim.c index db2e194b699b..0cd691de47e2 100644 --- a/sys/dev/ufshci/ufshci_sim.c +++ b/sys/dev/ufshci/ufshci_sim.c @@ -10,9 +10,11 @@ #include #include #include +#include #include #include #include +#include #include "ufshci_private.h" @@ -76,7 +78,7 @@ ufshci_sim_illegal_request(union ccb *ccb) * The SCSI LUN format and the UFS UPIU LUN format are different. * This function converts the SCSI LUN format to the UFS UPIU LUN format. */ -static uint8_t +uint8_t ufshci_sim_translate_scsi_to_ufs_lun(lun_id_t scsi_lun) { const int address_format_offset = 8; @@ -94,6 +96,19 @@ ufshci_sim_translate_scsi_to_ufs_lun(lun_id_t scsi_lun) return (scsi_lun & UFSHCI_UPIU_UNIT_NUMBER_ID_MASK); } +uint64_t +ufshci_sim_translate_ufs_to_scsi_lun(uint8_t ufs_lun) +{ + /* Logical unit */ + if (!(ufs_lun & UFSHCI_UPIU_WLUN_ID_MASK)) { + return ufs_lun; + } + + /* Well known logical unit */ + return (((uint64_t)ufs_lun & ~UFSHCI_UPIU_WLUN_ID_MASK) | + (RPL_LUNDATA_ATYP_EXTLUN | RPL_LUNDATA_EXT_EAM_WK) << 8); +} + static void ufshchi_sim_scsiio(struct cam_sim *sim, union ccb *ccb) { @@ -396,3 +411,100 @@ ufshci_sim_detach(struct ufshci_controller *ctrlr) ctrlr->ufshci_sim = NULL; } } + +struct cam_periph * +ufshci_sim_find_periph(struct ufshci_controller *ctrlr, uint8_t wlun) +{ + struct cam_path *path; + struct cam_periph *periph = NULL; + uint64_t scsi_lun; + uint64_t timeout; + + scsi_lun = ufshci_sim_translate_ufs_to_scsi_lun(wlun); + + if (xpt_create_path(&path, /*periph*/ NULL, + cam_sim_path(ctrlr->ufshci_sim), 0, scsi_lun) != CAM_REQ_CMP) { + return NULL; + } + + /* Wait for the perip device to be found */ + timeout = ticks + MSEC_2_TICKS(ctrlr->device_init_timeout_in_ms); + + while (1) { + xpt_path_lock(path); + periph = cam_periph_find(path, "pass"); + xpt_path_unlock(path); + + if (periph) { + xpt_free_path(path); + break; + } + + if (timeout - ticks < 0) { + ufshci_printf(ctrlr, + "Failed to find the Well known LUN(0x%x)\n", wlun); + break; + } + + pause_sbt("ufshci_find_periph", ustosbt(100), 0, C_PREL(1)); + } + + return periph; +} + +/* This function is called during suspend/resume. */ +int +ufshci_sim_send_ssu(struct ufshci_controller *ctrlr, bool start, + int power_condition, bool immed) +{ + struct cam_periph *periph = ctrlr->ufs_device_wlun_periph; + union ccb *ccb; + int err; + + /* Acquire periph reference */ + if (periph && cam_periph_acquire(periph) != 0) { + periph = NULL; + } + + if (periph == NULL) { + /* If the periph device does not exist, it will try to find it + * again */ + periph = ufshci_sim_find_periph(ctrlr, + (uint8_t)UFSHCI_WLUN_UFS_DEVICE); + if (periph) + ctrlr->ufs_device_wlun_periph = periph; + } + + if (periph == NULL) { + ufshci_printf(ctrlr, + "Well-known LUN `UFS Device (0x50)` not found\n"); + return ENODEV; + } + cam_periph_lock(periph); + ccb = cam_periph_getccb(periph, CAM_PRIORITY_NORMAL); + if (!ccb) { + cam_periph_unlock(periph); + cam_periph_release(periph); + return ENOMEM; + } + + scsi_start_stop(&ccb->csio, + /*retries*/ 4, + /*cbfcnp*/ NULL, + /*tag_action*/ MSG_SIMPLE_Q_TAG, + /*start*/ start ? 1 : 0, + /*load_eject*/ 0, + /*immediate*/ immed ? 1 : 0, + /*power_condition*/ power_condition, SSD_MIN_SIZE, + ctrlr->device_init_timeout_in_ms); + + ccb->ccb_h.flags |= CAM_DIR_NONE | CAM_DEV_QFRZDIS; + + err = cam_periph_runccb(ccb, NULL, 0, SF_RETRY_UA, NULL); + + cam_periph_unlock(periph); + /* Release periph reference */ + cam_periph_release(periph); + + return (err == 0) ? 0 : EIO; +} diff --git a/sys/dev/ufshci/ufshci_sysctl.c b/sys/dev/ufshci/ufshci_sysctl.c index 56bc06b13f3c..3ec4ea935464 100644 --- a/sys/dev/ufshci/ufshci_sysctl.c +++ b/sys/dev/ufshci/ufshci_sysctl.c @@ -197,6 +197,10 @@ ufshci_sysctl_initialize_ctrlr(struct ufshci_controller *ctrlr) &dev->wb_user_space_config_option, 0, "WriteBooster preserve user space mode"); + SYSCTL_ADD_BOOL(ctrlr_ctx, ctrlr_list, OID_AUTO, "power_mode_supported", + CTLFLAG_RD, &dev->power_mode_supported, 0, + "Device power mode support"); + SYSCTL_ADD_PROC(ctrlr_ctx, ctrlr_list, OID_AUTO, "timeout_period", CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_MPSAFE, &ctrlr->timeout_period, 0, ufshci_sysctl_timeout_period, "IU", From nobody Mon Dec 1 09:40:40 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKf615VnSz6JY4K; Mon, 01 Dec 2025 09:40:41 +0000 (UTC) (envelope-from brooks@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKf610Sbnz3ZnM; Mon, 01 Dec 2025 09:40:41 +0000 (UTC) (envelope-from brooks@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764582041; 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: in-reply-to:in-reply-to:references:references; bh=M9rst7Hpo1cuKdIVMoZMRUN+VuNRA0SlUZGjdG6eu7M=; b=TXrs/E8cG1x3vCsGdLGf7vwFfBD/+j57WNPC99ONG5Pf3uHgrggF6l6+0PsN1TE71fG67j f6+xLM93fXTyIZ5Yzx8NUbjbOyOza0kA7ZtarZnPOA/vC40OJ4VWhpJwLnqe/SelUCkTeE AZGnV5yBkVATO+DCUfewpcOsTkkRf7/Af7bDmzimoxq7fHgPV2GFz9QooF27ASJwrRo2g2 Ue1tUIQzr+/ubgFi7bMuNd4+19JWBWWZ9BsG79WZIq/lVq8gwozZbOqucz9pduMDt5fpWR du2Bit4QP3ln1icO5sNRXJf+DIbVLL9dlUctac9ucgv4sF6o9qjEWbmgVYS9Sw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764582041; 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: in-reply-to:in-reply-to:references:references; bh=M9rst7Hpo1cuKdIVMoZMRUN+VuNRA0SlUZGjdG6eu7M=; b=kQqmjoWx1+rofLnlFNUqlW1Xq0WsKdiC9MLNhF3brTVrXhr4TPe/OFUQGGOd0eCXx0uu6z hQ5QzJgW0VpBMCLKh0sMRtkxpY2116eanofgGaXhDE5e3kaWV3FLV/lA76OHg3q83teHpR gdBunoxW9iM8usbDL64YCkEfc9LE+KnJeGb+El2Bj9JMwi235qOpTnuk8Y3B/3Nh5JosG2 CjrKzsbXAInfCtgFKfoa483kB45bpfOj2PSnFO/3O0aWrAQLHT1q+XH8or9yRZvoaw6shI d1CbGPO3ZBM+Vs6UiHvaoKk1ti9CeuYPBPO8yjlbtv33YoGNdxlOqCoKZAlSfQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764582041; a=rsa-sha256; cv=none; b=NCyu8eKQa41M7eION6oqQ7c2VSOkjHl3o+I7iR/FQ9PZryn5UmJwjA8a4cKsS+qpUu12+U mGvwvnkhNK/7v2RYAH4rsrQjsZ8oUH9HIijlNXVlRMpMIatpdZsrRGOGUBjGLRfpi+VQk3 +ZkP1LUStmGhSGglGNqfYC6G5m0m0+bAJyI/hxYR/nNONKDor/PT6oNSjDKTVWxGdII3N1 VkFFu/gDKkZ+iv5JX6M090Pee1QRUykTDaMk/mnnvP7eQQrExTwqWaMyEtOah8wPSn6ey3 3mOKcWNYPj2biXi8/+WRYEhn9isQm++d3ykcB2z8k8kM+hsVyVOGWQDO3E+R/g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from spindle.one-eyed-alien.net (spindle.one-eyed-alien.net [199.48.129.229]) (using TLSv1.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) (Authenticated sender: brooks/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4dKf606kJFzhG; Mon, 01 Dec 2025 09:40:40 +0000 (UTC) (envelope-from brooks@freebsd.org) Received: by spindle.one-eyed-alien.net (Postfix, from userid 3001) id 5404F3C01A0; Mon, 01 Dec 2025 09:40:40 +0000 (UTC) Date: Mon, 1 Dec 2025 09:40:40 +0000 From: Brooks Davis To: Dag-Erling Sm??rgrav Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 029a09f18032 - main - sys/_types.h: Actually unbreak gcc build Message-ID: References: <692c1d02.367c7.22c28c58@gitrepo.freebsd.org> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <692c1d02.367c7.22c28c58@gitrepo.freebsd.org> On Sun, Nov 30, 2025 at 10:31:30AM +0000, Dag-Erling Sm??rgrav wrote: > The branch main has been updated by des: > > URL: https://cgit.FreeBSD.org/src/commit/?id=029a09f18032353a9ae874590b879322efc6e53a > > commit 029a09f18032353a9ae874590b879322efc6e53a > Author: Dag-Erling Sm??rgrav > AuthorDate: 2025-11-30 10:30:45 +0000 > Commit: Dag-Erling Sm??rgrav > CommitDate: 2025-11-30 10:31:09 +0000 > > sys/_types.h: Actually unbreak gcc build Thank you for addressing this issue. I'm going to follow up with a different approach that doesn't use __has_feature. It's annoying how recalcitrant GCC has proved about this functionality. -- Brooks From nobody Mon Dec 1 11:57:46 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKj8C0Gn5z6HqbC for ; Mon, 01 Dec 2025 11:57:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKj8B57PCz3q90 for ; Mon, 01 Dec 2025 11:57:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764590266; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WBSWUCD+mplEjfKwT1BuMt4gH9rpXT54nYqKBU26tLc=; b=cFEMrNfYuqHTtKbdEv/f17MfITW7qSUSjH7BWezv1DNiX8ACXAfCHnVruSE9yYb8oVmZxo 9xXZzWoar1W/ApP99HVBl8qzYGevGkpOplI+Y+JM8Bm1JEahAh1tDRTJfkA8kJM/6troBr WSKvB0a593FzKMaEzuREfBuGOE6cqQFGnCBlAjEHXSmFWxMTs3GZ09KRoj09ogQABDasp2 oOji/F9EuBypsKxD0BsMLlKMSYZ26FBsKlP4T8Pm9Wcr4E7VpbBjRZsm+CVPEapeJoE7Gf JzNH3IZboA3rcQSA1ECOztXF+S+12ximWbR9TzOGuakrp9FLy7WmtHlwH3TcBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764590266; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WBSWUCD+mplEjfKwT1BuMt4gH9rpXT54nYqKBU26tLc=; b=ocjzuMqCRg+UU3YnXFdKbU4Kcg5l50QZTIncOBsfec8Rr6qyGQiKpqLw68II/BQgXuf19q 9egj6UkKLH1HMVxPXOtGrY0TwlsHHF5tMA+RhkqAWQL3VSQxuY7pTt/XaL+a4vPKkhD43j B1kHtH62WGDj90Sgayjmp88uSRSdv7YuLmul1oSRG4esF3lHbWv8I3iSsYuQUMQ/Mx1w4p 12EUHYXzE0aeRrMM1DpJfCU0/jWG+agSUXKFlKjkdv+JZTIoin1yH0I7R9FmP8rkyzamcm hnAX+01w0wIvLeHUoC6tMJVbhrJgkQPMFuL/0Fbvx3CPuJb+y/WzVyQk0bV/JA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764590266; a=rsa-sha256; cv=none; b=q75a8R+70WZAl0/2SbapFQhKYfRUHJ9wvFIGh6Fm1DhGnm3PIzj3246VEjTUzMtqFI+vDj OyQr/DOh6tiT/woOpzBHqrc5TIWl2VkuPslsiG9Rt0+IB7IkmfIkmDiHOLry3pn9LCLgOJ iccjsXPg48RYRe4+mUGzC9mCA7fIMhw3zHM1wMe8o99joM2DqPZBsYZ9U7ud4WfRJSGPYY 9EW4ODcf9+v3nmX3bpHlE3jEhEpIe5bcfc8fLJeayX3nJDnKHsT4Rl9jjXu1+tEXnk1MyH ftkndTF7iMzBwKf6DS3Lt7Ibq7NKlEksNkArzePVkVitP8UqMHcGx00xyk44iw== 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 4dKj8B49Yhz4NW for ; Mon, 01 Dec 2025 11:57:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id b00c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 11:57:46 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 9636482dd8af - stable/15 - Remove TableGen objects from libllvm, fixing bad option registrations List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 9636482dd8afcb426a658a98760bccf882196b4e Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 11:57:46 +0000 Message-Id: <692d82ba.b00c.39ea58b5@gitrepo.freebsd.org> The branch stable/15 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=9636482dd8afcb426a658a98760bccf882196b4e commit 9636482dd8afcb426a658a98760bccf882196b4e Author: Dimitry Andric AuthorDate: 2025-11-28 18:12:01 +0000 Commit: Dimitry Andric CommitDate: 2025-12-01 11:57:06 +0000 Remove TableGen objects from libllvm, fixing bad option registrations In 986e05bc2a18 I revamped the build for all the llvm subprojects. Among others I added objects under contrib/llvm-project/llvm/lib/TableGen, but I missed that upstream explicitly removes these when building the shared llvm library: https://github.com/llvm/llvm-project/blob/llvmorg-19.1.7/llvm/tools/llvm-shlib/CMakeLists.txt#L23 In 2e47f35be5dc I converted libllvm to a shared library. From that point onwards, some of the global command line option objects registered in llvm/lib/TableGen/Main.cpp conflict with similar objects in tools like llvm-cov, llvm-as, etc. This results in an error when running these tools: "CommandLine Error: Option 'o' registered more than once!", followed by a fatal exit. Fix this by removing the TableGen objects from libllvm. Note that we no longer install any of the tblgen binaries, these are only used during buildworld, and then in a statically linked form. PR: 291233 MFC after: 3 days (cherry picked from commit 9978553d0199e7ec0bdd1c44fc7f6c7b0c11e43b) --- lib/clang/libllvm/Makefile | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/lib/clang/libllvm/Makefile b/lib/clang/libllvm/Makefile index e634a72b4f90..810eac08d8d5 100644 --- a/lib/clang/libllvm/Makefile +++ b/lib/clang/libllvm/Makefile @@ -1245,16 +1245,6 @@ SRCS_MIN+= Support/regexec.c SRCS_MIN+= Support/regfree.c SRCS_MIN+= Support/regstrlcpy.c SRCS_MIN+= Support/xxhash.cpp -SRCS_MIN+= TableGen/DetailedRecordsBackend.cpp -SRCS_MIN+= TableGen/Error.cpp -SRCS_MIN+= TableGen/JSONBackend.cpp -SRCS_MIN+= TableGen/Main.cpp -SRCS_MIN+= TableGen/Record.cpp -SRCS_MIN+= TableGen/SetTheory.cpp -SRCS_MIN+= TableGen/StringMatcher.cpp -SRCS_MIN+= TableGen/TGLexer.cpp -SRCS_MIN+= TableGen/TGParser.cpp -SRCS_MIN+= TableGen/TableGenBackend.cpp .if ${MK_LLVM_TARGET_AARCH64} != "no" SRCS_MIN+= Target/AArch64/AArch64A53Fix835769.cpp SRCS_MIN+= Target/AArch64/AArch64A57FPLoadBalancing.cpp From nobody Mon Dec 1 11:58:00 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKj8S32jwz6HqVg for ; Mon, 01 Dec 2025 11: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKj8S2DhVz3qPF for ; Mon, 01 Dec 2025 11:58:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764590280; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ie0r8KYdOGU6Pw9Mk4ROXK/KoDsvIyHQBVODy740oG0=; b=Gn9ttlH3zu/81PqvO6MmRvpub8FI3vr2K72hkHS59tAZxmeM8fcOBirs5caXvG8UT4YHuW h/Lln76p4LQLPAKLLdaVRmS3kUj0geGJ6g6qHIIQn9EIZSYLnQvtEthUgXcEaFgbxvwsOL p7x62YaQIak2anbZM8pMVCKMtOHmdT4G8FFoAI1N5bkJd2yX6VPBXDmoYG+prXQR356C1Y HzZ+3urB7sQ5lZ8srjq+1S7QFxDpbB3hOCbTk/g4ZSQRWxV9vhEVqaTSiIDWYBs+0lbuR+ R5G7n/ibcRdq+Vkar1aCnQ7v1gF14ghl80RiQKscAc6xzaREjaFKSo0nBeVz7Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764590280; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ie0r8KYdOGU6Pw9Mk4ROXK/KoDsvIyHQBVODy740oG0=; b=V7HnCMjPcD4xH0Q/R8E+sPxyKYsKus4VKPbhLx0ARDpIjTE4qzLMPlQolQbBT61DYxobRq +tIE7g1NnAq3MLYm+NN7EsTgL5fGVsRdZVl4ad3Fu86f7vnbIFwAWZQfBEq6iAhGq4EGG2 0ap1/gghGvJFWJ2K0es56IffDBr1Dr1Tpt69FB9OWJDiG1MH4bq3P/98x0oXSn724U7ZDT /avn+i8G0Eyn/0Hnvev/W3475NLhVQk8edqMO3yw0zoh5bXGsnbQ9UsYb+yaW9e5lNiaxb 4D6TlUIusgwexywWddCyoo28a5rxNQ3xlqwYSRvtxF66BqFr/4JDAipUt/4ytQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764590280; a=rsa-sha256; cv=none; b=wlunq6O/s5Lwg5SIK4fxqmSE2aD6VnZK/5PReHkr9u7m744/5Zg7PbqgTXh1de7Iqm946z uWmlHmqKcrz3AbJE865Nvrfk28wR9tf1S+D2mOGGj+9w8lr3Cio+zc/8+7T08QWm6wcBAT 10FKBTo4hqedwOAT+nmkEAyrTWjq2O0ROrNHODmMnX3K+MSOvzHGpSm1g1yG+QmgeMdYhU f6ByXUeYTEbwOpjLKtzXtzvQvZTzHco3LI7LavOBA5lBaJghImy81VNpEMu+I2fzymQUh4 y9a+uofgoH3lC5S/xNA9iIZk787uEKJtgmNXwwy+Q/x5d2ZUEokyP55RXA18+Q== 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 4dKj8S1dP2z4L3 for ; Mon, 01 Dec 2025 11:58:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 92bb by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 11:58:00 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 1fbba4fbf0f8 - stable/14 - Remove TableGen objects from libllvm, fixing bad option registrations List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1fbba4fbf0f88e551ca8d3bf759d29b0867ce03e Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 11:58:00 +0000 Message-Id: <692d82c8.92bb.292bd159@gitrepo.freebsd.org> The branch stable/14 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=1fbba4fbf0f88e551ca8d3bf759d29b0867ce03e commit 1fbba4fbf0f88e551ca8d3bf759d29b0867ce03e Author: Dimitry Andric AuthorDate: 2025-11-28 18:12:01 +0000 Commit: Dimitry Andric CommitDate: 2025-12-01 11:57:11 +0000 Remove TableGen objects from libllvm, fixing bad option registrations In 986e05bc2a18 I revamped the build for all the llvm subprojects. Among others I added objects under contrib/llvm-project/llvm/lib/TableGen, but I missed that upstream explicitly removes these when building the shared llvm library: https://github.com/llvm/llvm-project/blob/llvmorg-19.1.7/llvm/tools/llvm-shlib/CMakeLists.txt#L23 In 2e47f35be5dc I converted libllvm to a shared library. From that point onwards, some of the global command line option objects registered in llvm/lib/TableGen/Main.cpp conflict with similar objects in tools like llvm-cov, llvm-as, etc. This results in an error when running these tools: "CommandLine Error: Option 'o' registered more than once!", followed by a fatal exit. Fix this by removing the TableGen objects from libllvm. Note that we no longer install any of the tblgen binaries, these are only used during buildworld, and then in a statically linked form. PR: 291233 MFC after: 3 days (cherry picked from commit 9978553d0199e7ec0bdd1c44fc7f6c7b0c11e43b) --- lib/clang/libllvm/Makefile | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/lib/clang/libllvm/Makefile b/lib/clang/libllvm/Makefile index cb16d39961ae..2060f5f52c91 100644 --- a/lib/clang/libllvm/Makefile +++ b/lib/clang/libllvm/Makefile @@ -1246,16 +1246,6 @@ SRCS_MIN+= Support/regexec.c SRCS_MIN+= Support/regfree.c SRCS_MIN+= Support/regstrlcpy.c SRCS_MIN+= Support/xxhash.cpp -SRCS_MIN+= TableGen/DetailedRecordsBackend.cpp -SRCS_MIN+= TableGen/Error.cpp -SRCS_MIN+= TableGen/JSONBackend.cpp -SRCS_MIN+= TableGen/Main.cpp -SRCS_MIN+= TableGen/Record.cpp -SRCS_MIN+= TableGen/SetTheory.cpp -SRCS_MIN+= TableGen/StringMatcher.cpp -SRCS_MIN+= TableGen/TGLexer.cpp -SRCS_MIN+= TableGen/TGParser.cpp -SRCS_MIN+= TableGen/TableGenBackend.cpp .if ${MK_LLVM_TARGET_AARCH64} != "no" SRCS_MIN+= Target/AArch64/AArch64A53Fix835769.cpp SRCS_MIN+= Target/AArch64/AArch64A57FPLoadBalancing.cpp From nobody Mon Dec 1 11:58:11 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKj8g4xhMz6HqbM for ; Mon, 01 Dec 2025 11:58:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKj8g1gNFz3qZ6 for ; Mon, 01 Dec 2025 11:58:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764590291; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6rl2E4jiStLgBreRX9VlEkFQhs0FEABnXFkgYopN2g4=; b=K/XQaoqM6n41RFxGxnTiBrpWQTOyPYCukhmGTCzYG0jCfmASG2Pl+g8x0UC2MqAwUDEPFo t6jnGpDl1ovRgm9EJ1w93D2iIEFOeisvP+NZ15FJtWYOcTLSBkug+MJl45lBMjmEyT7Nic j0LQUXOBPz3Vpmlo+ve1IWr8c/Xz5UTO/lqc88QBTx8NMahpadSIiYgiHPW3iJgBBdymkJ vfQVgA0yRscqu/JSTEyY1XRIzgbLQZnbj8mY2FXcYVi5/0sj10Vj6VYbOvP7XjZVv9MNkn j5ZHBH252j0p4AfSBnluc0L64RvsS7RK1HRGu/jOLh+b3UeQvYCtD9mSYAv6nA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764590291; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6rl2E4jiStLgBreRX9VlEkFQhs0FEABnXFkgYopN2g4=; b=Q/xsCAX7TT6FiqIo+xinaCCKJ4VgQlut892hzNzT536rRao/+pCIp9vtX7lMn6VrVzVqPS Lf6ffTAYy79GVTGwD1X5KoZxYZyG8IK9LGJzGJjOpevkySlFc17msXMsgTwcKF3I+S3Lle hFb57Hw1UszxcgHhUJKbnI8DnJibz8y9Ozmjm/1dgMdJ3vmxHlK+8HOINV6yL4CfZIDPGa s6nA1Yzt57te5ynwGTYx3AZPdKFko1IJiYP+hLZVQfRp/4+9/t+SHJ2RmudhijJWrxZ0RF QLT3b/t41RsoEWeB9ww1IiW/HWuO/hsmxfUXPqxeXwqOfaxGi4cNwbrOmubeUw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764590291; a=rsa-sha256; cv=none; b=sGxztFf0qgLs35xSSA7fCeOjPKaHt5GC95o0xvHLgGV0XnRDAylwSqusXlkRzHbBYRJvtx t7H+yhiItFdEhIPBl2VBn0yCTuMJt1bg0F6YVy7zopswPNhBbMfla0RTZ1eGIh5AiPAZV/ mxDVKaN/BW7wW7TZHVeCHZrLtMMT9+VG8MD/j729p/w/JeBFZ9iDZXFfzjpBJBrZ2VA3V+ H3bzGbXNbvKYjlAhGLozcoj8Hnf90wnRKiBdFlt3HtdeFki1Hof5BbcTDtv8JqRUGJ80zj mbc6wWuaGWuEoMk4PlKMka/uyCMcmPsQlDnX+RSl3ApQzvF/Jk88DJz8GlWC5w== 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 4dKj8g1HTtz4ZQ for ; Mon, 01 Dec 2025 11:58:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id b010 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 11:58:11 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: f4ff747cb709 - stable/13 - Remove TableGen objects from libllvm, fixing bad option registrations List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: f4ff747cb709efeed3c1867060a81ae3ee72d474 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 11:58:11 +0000 Message-Id: <692d82d3.b010.4963715a@gitrepo.freebsd.org> The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=f4ff747cb709efeed3c1867060a81ae3ee72d474 commit f4ff747cb709efeed3c1867060a81ae3ee72d474 Author: Dimitry Andric AuthorDate: 2025-11-28 18:12:01 +0000 Commit: Dimitry Andric CommitDate: 2025-12-01 11:57:17 +0000 Remove TableGen objects from libllvm, fixing bad option registrations In 986e05bc2a18 I revamped the build for all the llvm subprojects. Among others I added objects under contrib/llvm-project/llvm/lib/TableGen, but I missed that upstream explicitly removes these when building the shared llvm library: https://github.com/llvm/llvm-project/blob/llvmorg-19.1.7/llvm/tools/llvm-shlib/CMakeLists.txt#L23 In 2e47f35be5dc I converted libllvm to a shared library. From that point onwards, some of the global command line option objects registered in llvm/lib/TableGen/Main.cpp conflict with similar objects in tools like llvm-cov, llvm-as, etc. This results in an error when running these tools: "CommandLine Error: Option 'o' registered more than once!", followed by a fatal exit. Fix this by removing the TableGen objects from libllvm. Note that we no longer install any of the tblgen binaries, these are only used during buildworld, and then in a statically linked form. PR: 291233 MFC after: 3 days (cherry picked from commit 9978553d0199e7ec0bdd1c44fc7f6c7b0c11e43b) --- lib/clang/libllvm/Makefile | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/lib/clang/libllvm/Makefile b/lib/clang/libllvm/Makefile index cb16d39961ae..2060f5f52c91 100644 --- a/lib/clang/libllvm/Makefile +++ b/lib/clang/libllvm/Makefile @@ -1246,16 +1246,6 @@ SRCS_MIN+= Support/regexec.c SRCS_MIN+= Support/regfree.c SRCS_MIN+= Support/regstrlcpy.c SRCS_MIN+= Support/xxhash.cpp -SRCS_MIN+= TableGen/DetailedRecordsBackend.cpp -SRCS_MIN+= TableGen/Error.cpp -SRCS_MIN+= TableGen/JSONBackend.cpp -SRCS_MIN+= TableGen/Main.cpp -SRCS_MIN+= TableGen/Record.cpp -SRCS_MIN+= TableGen/SetTheory.cpp -SRCS_MIN+= TableGen/StringMatcher.cpp -SRCS_MIN+= TableGen/TGLexer.cpp -SRCS_MIN+= TableGen/TGParser.cpp -SRCS_MIN+= TableGen/TableGenBackend.cpp .if ${MK_LLVM_TARGET_AARCH64} != "no" SRCS_MIN+= Target/AArch64/AArch64A53Fix835769.cpp SRCS_MIN+= Target/AArch64/AArch64A57FPLoadBalancing.cpp From nobody Mon Dec 1 13:03:24 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKkbw3tRWz6JCqM for ; Mon, 01 Dec 2025 13:03:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKkbw3Fmbz41vy for ; Mon, 01 Dec 2025 13:03:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764594204; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sOaXe+jDQAydNK+9fB43jvsgY+mh+B9k9vFHgkmhZM0=; b=IaZ7JHL11uSvG2m3kyoWmCYMH3mm8PwH6I1hCMWMDiPNWqulSeCuyHhNAKXF/+Bjvam0iw tWe76EqdssqMt/QY+sd+kpyDij2SJCXxMzUctELAldRPZNdsNUmVGmpq9MXn5SQSNvIdiu h1xz+dgxIhI1+VbgoHWukuDUHw8YFauKj27lY4/ZHGuU0NfHSllLJsnwZUczSQTw9HZpMQ KV6V2BROY8vCFLQyexJ7xej/w63xdgb/CIV6Fsy9df8YnfDy8ahYVU1H7nj2FysB5uk1YO Fl73jIaIEo6yE0d7w32Zgffthrw6n+D8HLLJFcnWJ4O/TjUoRgwgn+8tw6hG9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764594204; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sOaXe+jDQAydNK+9fB43jvsgY+mh+B9k9vFHgkmhZM0=; b=WK+dkNyrCYYyXVj2N9GhzUlLMzcvUjP6+aB2+O3iwkATT6Uta+By+mFY/ivGOytHObkJAZ vodqJdKRsDfAdD+0gdVsEwPEbi3rhnZPA+oRWgHTnh65rBzJkkFUNU8ZtabMFQf8bipM7z 8coLeCbGm0FRSUJEgJrU4NSjvlKiADWzzTKrvW0gneQNGEDrBxM5KOFp8LnCvTwm7kZcBJ on3oGhvfNy0PM2xniQy8nD2VBimGD8z1tsQ0qlWnAFs5gQrHRv3GnSzsWjOmmdlnY7IowL X6hnwyjGD1w+jNPDoHp7iOMGapoyEFAFKDl+1dCOCSIYk0HEOPBDqiy4vE+mbQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764594204; a=rsa-sha256; cv=none; b=jvadIdDoKu5fM+lvWwf3HPeKlkZvUpZaPBvr+3RaMpIsbK82DKPwSgteUIjp90inqVlhLZ qJSvq8g3ee8eCGHbBukAgf/kVF3JZjmbEnZpyIs0b5f4FWTFaTeENnpE0dY9MzUr3wLbgH yBlt2s2Ci6OBV+fFMap55QahwlAOZEcWfeDkwxvSm6AXZqzCgtiS59RrRuc/PFcseTsDvg IzxmKeBXR/h2UkP2ywrM/wxqowewCHkDidyEFkJVusZTR28ynJ5a+qm9PjWEN5D4q7vEXE flap2Yayg7ycV36xAmEanYJaXfYCdhp7kUEYkzR+y1hLKTUw7/pP1GKqrNa8+A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dKkbw2TMhz64j for ; Mon, 01 Dec 2025 13:03:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 22fb3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 13:03:24 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: Martin Matuska Subject: git: f1aa8e6d5147..bf3359d92128 - vendor/libarchive - vendor branch updated List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/vendor/libarchive X-Git-Reftype: branch X-Git-Commit: bf3359d92128e09a91c702f7da132d329ffda123 X-Git-Oldrev: f1aa8e6d514762c50266103ac44a2f3c38347c24 X-Git-Newrev: bf3359d92128e09a91c702f7da132d329ffda123 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 13:03:24 +0000 Message-Id: <692d921c.22fb3.49851d21@gitrepo.freebsd.org> The branch vendor/libarchive has been updated by mm: URL: https://cgit.FreeBSD.org/src/log/?id=f1aa8e6d5147..bf3359d92128 bf3359d92128 Update vendor/libarchive to 3.8.4 From nobody Mon Dec 1 13:24:14 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKl3y4xs5z6JFr9 for ; Mon, 01 Dec 2025 13:24:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKl3y4Shwz43h8 for ; Mon, 01 Dec 2025 13:24:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764595454; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TJAD5YXM09BUHFpEDHI1eXDw5BQAXi9P72EseLHGV0s=; b=AhJa23QFBQ/cEloPBNqsbNKuHjmnYKxy6jGC3XQ55hdpDtRUcZ3FJrsVKTNOpLe/xYBDeL EUal9L4FfHAaFuvDexOKG7Wor1Xg/j5lHNiDgHmbOknNDDXFcfXC2Y8CrUE+g40x071/Gz t8S6los0UuHSzVEOUqSG2yqgyKA4Leo2uWtreplw4zMVNZ9CFKlVPCwf8J7W/5dRlDYVsZ niB7G9o2mYRTv5fCWfQIuBdPfNqtO3u7B/sgE9q2RYJS2x0PhMYVj9l68jsQv/aT2j1/Ga ZJmDp99TkdH6+BtBx3+nUXXUCmJ0bpJGmyyIa0Cu2aEbf4YqPnzHSbyyDA0Dfw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764595454; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TJAD5YXM09BUHFpEDHI1eXDw5BQAXi9P72EseLHGV0s=; b=qSb2/LQqFcIoHI5YpjwoJoqOLr3w/73LKh5T0cC9+1J2ziXsfIliG2uenAwXzl2p2e4hPE d5LAbZgexZpY/Y5OtAv135hzu26s/+pfgr8tUVZ/Hn2pDikpbyJ2s3yQEgRlgDrYXZRfWs RZgmJeQbe1qQXkGygd6xma13DQOzIejKf1TVH2hJdkV+IuVDuXPwDH7s2liNa1NN+i4qEB 2AYNwJbK/af6g4/Pz6TCDWG9/04KWW9+PJWOVWGGXN+Bn9BVtvvJVHuu6eEfv/v8sIsHwo fvrf4NED0hsi+2oTL77dOcyQV1ITMy9aeCauWoUt44UkFPE36UHyK0HjPXlwMw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764595454; a=rsa-sha256; cv=none; b=I715rbITk8myESWVBkMfB5VScgGG9qpe6TLTmPq5KoNK94tVCGdR+lypddPCDQ1f9xe6+W kaR/51Fd9ZbvBVtD72uhuGMR168xGsU+8v3Q8v6gQpWdBTVjQNFoCTE8pEFU8jahA+KiyX 17LV3WqrvFtYy5YuOdgXK4KA6xCBdWvq/rSViE3mwtLuZ+LvJFP3EPO3f8jCMO60pOdodR y3IUwI7diTTkDYAjN+HJHdAU2KvdEZZQ/ccp3pfHY1ryUmeL/N5bDspDdsey/FNxaSRL+X B5wDd1qKd8FGvJq59m+DE27Wasjd3mA6oOhEneWdSnNTa/8K2Toa+pKL7yvw4g== 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 4dKl3y3ww8z6wy for ; Mon, 01 Dec 2025 13:24:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 23644 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 13:24:14 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Martin Matuska Subject: git: c1e033c33e8b - main - libarchive: merge from vendor branch List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c1e033c33e8b290cd40f4069249c879efcbae6a6 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 13:24:14 +0000 Message-Id: <692d96fe.23644.3804dc20@gitrepo.freebsd.org> The branch main has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=c1e033c33e8b290cd40f4069249c879efcbae6a6 commit c1e033c33e8b290cd40f4069249c879efcbae6a6 Merge: 31407551c3d4 bf3359d92128 Author: Martin Matuska AuthorDate: 2025-12-01 13:05:35 +0000 Commit: Martin Matuska CommitDate: 2025-12-01 13:05:35 +0000 libarchive: merge from vendor branch libarchive 3.8.4 Important bugfixes: #2787 bsdtar: Fix zero-length pattern issue #2797 lib: Fix regression introduced in libarchive 3.8.2 when walking enterable but unreadable directories Obtained from: libarchive Vendor commit: d114ceee6de08a7a60ff1209492ba38bf9436f79 MFC after: 1 week contrib/libarchive/NEWS | 8 ++++--- contrib/libarchive/libarchive/archive.h | 4 ++-- contrib/libarchive/libarchive/archive_cryptor.c | 6 +++--- .../libarchive/archive_cryptor_private.h | 4 ++-- contrib/libarchive/libarchive/archive_entry.h | 2 +- .../libarchive/archive_read_disk_entry_from_file.c | 5 ++--- .../libarchive/archive_read_disk_posix.c | 25 ++++++++++------------ .../libarchive/archive_read_support_format_mtree.c | 2 +- .../libarchive/archive_version_details.c | 2 +- contrib/libarchive/libarchive/archive_write.c | 2 +- .../libarchive/archive_write_disk_posix.c | 6 +++--- .../libarchive/archive_write_set_format_xar.c | 12 +++++------ .../test/test_archive_read_multiple_data_objects.c | 2 +- .../libarchive/test/test_write_disk_perms.c | 6 +++--- .../libarchive/test/test_write_filter_bzip2.c | 3 ++- contrib/libarchive/tar/subst.c | 19 ++++++++++------ contrib/libarchive/tar/test/test_option_s.c | 8 ++++++- 17 files changed, 63 insertions(+), 53 deletions(-) From nobody Mon Dec 1 13:56:27 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKlnC1GvRz6JKV6; Mon, 01 Dec 2025 13:56:31 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKlnC0LW4z46kH; Mon, 01 Dec 2025 13:56:31 +0000 (UTC) (envelope-from kp@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764597391; 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: in-reply-to:in-reply-to:references:references; bh=gj6p7r9C2Gtag3LH1Y3/GJbEQiKPU4bbLRI2Dlrk7Pg=; b=adQ5983hn0Smx3MJbZJjra31Fu+jKfig8AwQfQF5JJhNELAaLWk+wLL1f0MYh6lnbgmK6K FlBZKW6UdvqqdM65JMdjXhuqSFVKag8El8Lb1RCr7gste7GYLJCcu+bepy1iKIauEG96oj 8CVJN1pnIquY1Kkqm5s/KzeipywlqUlbkjmZAajMcXd4mSsTZwS7MeGTob6x9aDr0B3i4O TLme/xM1kaEmRlnrxx6e0F4+223lKhfZ2TJX8l2gnryEp1OLFSf4Bm5vlr5QBlMfb5Vu7U lxBJVi+xnppAqoMy/knYvBo9dKURqpRnzsxOUX8K0p6+jdb5l9Z936TTXb4uPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764597391; 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: in-reply-to:in-reply-to:references:references; bh=gj6p7r9C2Gtag3LH1Y3/GJbEQiKPU4bbLRI2Dlrk7Pg=; b=nP3LYzytV3+0o8UKJ9FNvLaLGebGNORxXCQZueDQJ+eOtAYM0FMWqHbwQKZhRypC0szp4N jJ4732IEogn0D5sYYfevgSZmWwCHzUKhH92CWWPgaSmPzdOV4Eluo993bX+9gZlCBO34zZ +I+xY6NA/ewka2IzqidtLYlOsabDvtdArd9nFmMXLKcgcDZbqroacLCYFMLVtmu+gbxhTP ucPPAuWSNMEC7olRO/gO1qHV8RCxVxYM1r02rqfPsBc7eJ+0ro5AS4cZJbJB8yG1g/ltC3 wj50hJJ9eHnRW6YkqV9PdVdIJmqdbZk7mJwcGYEwwVAf2DacmD326vKO9F8cjA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764597391; a=rsa-sha256; cv=none; b=MhACSeWS3nD0CIPxPwJRjuT2C07i9JZKct7Bh7wUNbWLHSRvtoTLcUkV198ErSvBz67I44 3GSBOipQyl0GS52z+qn5Zr8HJTz9S6PIarWoRti4YUgatxkoUWBPwd521Y9vBmlh7oJGSV FVlvP8uOyBU0wKi+CyfVfbixyr1G9uuFMxbovCwBmU2iEwRONpRtBZLJf0fCDzxi3qRKZ2 Qn49PlmILQizVm9Plp4kKWL5roxckaklQOv1oeWHKMIaMUMz0/mkpc6/0/D9am6v8TOI9S WpTU6FpOABWB9X8Wvw/GQnMOs5uSC5RmHd5vTsvZBKdzfAPRko/1hePV8V928w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from venus.codepro.be (venus.codepro.be [5.9.86.228]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mx1.codepro.be", Issuer "R12" (verified OK)) (Authenticated sender: kp) by smtp.freebsd.org (Postfix) with ESMTPSA id 4dKlnB695Yz6sT; Mon, 01 Dec 2025 13:56:30 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: by venus.codepro.be (Postfix, authenticated sender kp) id C8BA916E1A; Mon, 01 Dec 2025 14:56:28 +0100 (CET) From: Kristof Provost To: Robert Clausecker Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 2fb8cbc6ef1b - main - libc/tests: add stdbit test framework and unit tests Date: Mon, 01 Dec 2025 14:56:27 +0100 X-Mailer: MailMate (2.0r6272) Message-ID: <3E139664-C0CE-4BB9-9225-66D7D44D644E@FreeBSD.org> In-Reply-To: <692c9966.26e27.70621b5b@gitrepo.freebsd.org> References: <692c9966.26e27.70621b5b@gitrepo.freebsd.org> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="=_MailMate_2306AE02-65F8-4867-91E7-D602335C7D74_=" --=_MailMate_2306AE02-65F8-4867-91E7-D602335C7D74_= Content-Type: text/plain; charset=UTF-8; format=flowed; markup=markdown Content-Transfer-Encoding: quoted-printable On 30 Nov 2025, at 20:22, Robert Clausecker wrote: > The branch main has been updated by fuz: > > URL: = > https://cgit.FreeBSD.org/src/commit/?id=3D2fb8cbc6ef1b3cc6cd60e5db07f83= 05623f9b044 > > commit 2fb8cbc6ef1b3cc6cd60e5db07f8305623f9b044 > Author: Robert Clausecker > AuthorDate: 2025-11-18 17:33:12 +0000 > Commit: Robert Clausecker > CommitDate: 2025-11-30 19:21:52 +0000 > > libc/tests: add stdbit test framework and unit tests > > This adds unit tests for all 70 functions in . > > I'm sorry for the test framework, but it makes it so I don't > have to write 70 unit tests by hand. > > Reviewed by: adrian, des > Approved by: markj (mentor) > MFC after: 1 month > Differential Revision: https://reviews.freebsd.org/D53660 I=E2=80=99m having issues running the tests now. I get this kyua error doing kyua list in /usr/tests/lib: kyua: E: Load of 'Kyuafile' failed: Failed to load Lua file 'Kyuafile': = Kyuafile:48: Load of 'libc/Kyuafile' failed: Failed to load Lua file = 'libc/Kyuafile': libc/Kyuafile:19: Load of 'libc/stdbit/Kyuafile' = failed: File 'libc/stdbit/Kyuafile' not found. That=E2=80=99s presumably because there=E2=80=99s no Kyuafile (or indeed = anything at = all) in /usr/tests/lib/libc/stdbit. It=E2=80=99s not immediately obvious to me what went wrong to cause that,= but = I=E2=80=99m relatively confident it=E2=80=99s related to this commit. Best regards, Kristof --=_MailMate_2306AE02-65F8-4867-91E7-D602335C7D74_= Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable

On 30 Nov 2025, at 20:22, Robert Clausecker wrote:

The branch main has been updated by fuz:

URL: https://cgit.FreeBSD.org/src/co= mmit/?id=3D2fb8cbc6ef1b3cc6cd60e5db07f8305623f9b044

commit 2fb8cbc6ef1b3cc6cd60e5db07f8305623f9b044
Author: Robert Clausecker fuz@Free= BSD.org
AuthorDate: 2025-11-18 17:33:12 +0000
Commit: Robert Clausecker fuz@Free= BSD.org
CommitDate: 2025-11-30 19:21:52 +0000

li=
bc/tests: add stdbit test framework and unit tests

This adds unit tests for all 70 functions in <stdbit.h>.

I'm sorry for the test framework, but it makes it so I don't
have to write 70 unit tests by hand.

Reviewed by:    adrian, des
Approved by:    markj (mentor)
MFC after:      1 month
Differential Revision:  https://reviews.freebsd.org/D53660

I=E2=80=99m having issues running the tests now.
I get this kyua error doing kyua list in /usr/tests/lib:

ky=
ua: E: Load of 'Kyuafile' failed: Failed to load Lua file 'Kyuafile': Kyu=
afile:48: Load of 'libc/Kyuafile' failed: Failed to load Lua file 'libc/K=
yuafile': libc/Kyuafile:19: Load of 'libc/stdbit/Kyuafile' failed: File '=
libc/stdbit/Kyuafile' not found.

That=E2=80=99s presumably because there=E2=80=99s no Kyua= file (or indeed anything at all) in /usr/tests/lib/libc/stdbit.

It=E2=80=99s not immediately obvious to me what went wron= g to cause that, but I=E2=80=99m relatively confident it=E2=80=99s relate= d to this commit.

Best regards,
Kristof

--=_MailMate_2306AE02-65F8-4867-91E7-D602335C7D74_=-- From nobody Mon Dec 1 14:04:22 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKlyZ0npSz6JLPp for ; Mon, 01 Dec 2025 14:04:38 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.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 4dKlyY5nmtz47qp for ; Mon, 01 Dec 2025 14:04:37 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-477ba2c1ca2so49821295e9.2 for ; Mon, 01 Dec 2025 06:04:37 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764597876; x=1765202676; 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=FX671AXRveIQyNO1+CF4dypugnwDT0bqCYAYd+wUHxU=; b=a/HUguN18SHrfcyE5506UpvdC5PUcEz0jn0lsnKdvs4CkCFaW9y161cSWbG2ZxlLgZ jWsk6hALcSJa41ztdPdWwoY6q3otmfHnWpxsCudj0tH7lZyeiySEPBw08NqnmvJg/28V aOAwRB5Z0nzBnXz/gkvek0CoEnSeEb0CVdBt9Ud6ZfMONcNzP0ULHFLuFveM2i9u/Tzg kduQ463IL314KTaiCcf1drYcu5BtBWPlV4NLSOU1ghsH95kP2PKgvWNAtHj7z8HaNzVi nkHsQP7ITf7sqe/Rcnpn/sJFWJ08tqiebb7zM5D7B+Xxqkxmz/AtwqIJRX7gDpd8StpK zFZQ== X-Forwarded-Encrypted: i=1; AJvYcCUIU/BTAbXqffysarCqpTPSA4fbjbwqP7iRjw7/+CKw+Bnm5D31Rzf9QmhX1UednsaftJ1A7ngUherDfTb/IAA34Hdp@freebsd.org X-Gm-Message-State: AOJu0YyIgBpbiKgTSiFaUqJAS44dBdpfQ/37kU6Kio5nnqlqzuOAeqdY 6tUMSFeWhRn0Qu/UD4rQkWkHATorZUucPqnQOLKQyM30JZu9VKa5r5uW6Pk5ss/RuME= X-Gm-Gg: ASbGnctXgEEQlSfQV/tonGCaTCBY3N8PLVUlb4UULjtiTFTbRwO9uBlfmlQCG29xrJv uQw0/2NwLQYE9Uo844Uj535wMprkVehM76TrMZVJE6RWAYVZ+8MO+HX70z/dgLA0UhkuVRM2ik0 NIwbxRU3ai6xVDql6UiUtFfHlbJ+07Qmbsu9jDrY2X7ymmVfm/FiPWGp17R3FX7QckSKWSsIS/R GAWHVTa4PSpHyCXJrbzz+5Qa8Fw6FJrCeUPECd16IZKcKqL6iG9HZkTMu4GhK2Y1Chw/3iYYqLD Tu3Gm8kgMBWiO8duL1Hm4yS2Sb24TlbUhnr5eRFJAa8DzBmXOlI+4xZp+15Aq1iZAa5ezkdTu1Q nbdwYXhoPFKgi4fOACG6eUxIQ+5keqfj/R6vdY1z3nSai02Tfxn01JLXubRr1Q1TBzCfk7n8zFc u2+lbtLRXHOrfvcLW53UJ6tG6LI7UKVPvX4747389axKWLHNfVZHCU9wqV4PEl9kw= X-Google-Smtp-Source: AGHT+IFM4cd3E1TjQmIJZRpXLxeFiWIw2iYAe4cIU1Wh+oQ6wktNl75OxtvysEZ7P1VQyfVd/Qg5IA== X-Received: by 2002:a05:600c:3b11:b0:477:9814:6882 with SMTP id 5b1f17b1804b1-47904aceef6mr226888175e9.5.1764597874984; Mon, 01 Dec 2025 06:04:34 -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-42e1ca4078csm25926499f8f.29.2025.12.01.06.04.34 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 01 Dec 2025 06:04:34 -0800 (PST) Content-Type: text/plain; charset=utf-8 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3864.200.81.1.6\)) Subject: Re: git: 2fb8cbc6ef1b - main - libc/tests: add stdbit test framework and unit tests From: Jessica Clarke In-Reply-To: <3E139664-C0CE-4BB9-9225-66D7D44D644E@FreeBSD.org> Date: Mon, 1 Dec 2025 14:04:22 +0000 Cc: Robert Clausecker , "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <6903AA87-20BC-4060-A199-4100FC7CD8EB@freebsd.org> References: <692c9966.26e27.70621b5b@gitrepo.freebsd.org> <3E139664-C0CE-4BB9-9225-66D7D44D644E@FreeBSD.org> To: Kristof Provost X-Mailer: Apple Mail (2.3864.200.81.1.6) 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: 4dKlyY5nmtz47qp On 1 Dec 2025, at 13:56, Kristof Provost wrote: >=20 > On 30 Nov 2025, at 20:22, Robert Clausecker wrote: > The branch main has been updated by fuz: > URL: = https://cgit.FreeBSD.org/src/commit/?id=3D2fb8cbc6ef1b3cc6cd60e5db07f83056= 23f9b044 > commit 2fb8cbc6ef1b3cc6cd60e5db07f8305623f9b044 > Author: Robert Clausecker fuz@FreeBSD.org > AuthorDate: 2025-11-18 17:33:12 +0000 > Commit: Robert Clausecker fuz@FreeBSD.org > CommitDate: 2025-11-30 19:21:52 +0000 > libc/tests: add stdbit test framework and unit tests >=20 > This adds unit tests for all 70 functions in . >=20 > I'm sorry for the test framework, but it makes it so I don't > have to write 70 unit tests by hand. >=20 > Reviewed by: adrian, des > Approved by: markj (mentor) > MFC after: 1 month > Differential Revision: https://reviews.freebsd.org/D53660 >=20 > I=E2=80=99m having issues running the tests now. > I get this kyua error doing kyua list in /usr/tests/lib: > kyua: E: Load of 'Kyuafile' failed: Failed to load Lua file = 'Kyuafile': Kyuafile:48: Load of 'libc/Kyuafile' failed: Failed to load = Lua file 'libc/Kyuafile': libc/Kyuafile:19: Load of = 'libc/stdbit/Kyuafile' failed: File 'libc/stdbit/Kyuafile' not found. >=20 > That=E2=80=99s presumably because there=E2=80=99s no Kyuafile (or = indeed anything at all) in /usr/tests/lib/libc/stdbit. > It=E2=80=99s not immediately obvious to me what went wrong to cause = that, but I=E2=80=99m relatively confident it=E2=80=99s related to this = commit. > Best regards, > Kristof Because TESTSDIR is /usr/tests/lib/libc/tests/stdbit thanks to the location of libc=E2=80=99s tests in the src tree. That=E2=80=99s meant = to be overridden for every subdirectory, whether by including ../Makefile.netbsd-tests, in the case of all the NetBSD-imported ones, or by manually overriding it, such as in lib/libc/tests/iconv/Makefile. It would've been nice to test these tests prior to commit. Was that not done? Jessica From nobody Mon Dec 1 14:10:14 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKm522mS9z6JbSK for ; Mon, 01 Dec 2025 14:10:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKm5229Ynz49RR for ; Mon, 01 Dec 2025 14:10:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598214; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=od04JcwcXJDvV164xGkSf9sHnpUOjXALtxWWaudbAyg=; b=qL5r5cqFoMQ+Grf42piAMJWepZNtECxBnfWIjvAqiDfiqvvMiF9EJYCH+LWos40hVLPx7g jMbViDmIlKZifLoG7HIfY8fH9hacCegKZgREOZqwBbHC3yu6GkgLqxnweq73pLgpipxRql UeRk+ELQ0CqK2wyPwzvJkDFxT1f46GzC+KjbBuMRhwT6Tt3m+WZd7FenoNi0sLOMUBT4OL eznUNnU2hhecDy5GDv+0jlOXGCc93C0554G3ytfXqRPA5UdmYYf2raUjNhgY/QDlArOK2z ul263UC/90WdzT146BGzPi1nneYzeR/d7tNBJ0vuKCHYVOCJ5n0KLF9AOcv70w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598214; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=od04JcwcXJDvV164xGkSf9sHnpUOjXALtxWWaudbAyg=; b=HKvlq+ZXZWzxPvSoDG+5WWTM/A9/6N+99F+YTyc4ifLwt9vzNWOlWq6Rpsl/B67elwGp4o WZu4sS+R6oxCJeiOBmaR+ee5+PkBX6DZhkkQlAPinJNNGAVllwX5R0YMX7wrVdgzGVHGhq 3Lcy2lbgpxWIOvpqQXnlqhvsLSgHy8hqRRcVWwPePCcP1MCT9c09BzUef2E9N/QmDTB1+q HH7I3bDt/pcVGPjIrjq6LLp3kp+MZ10terQkGNIWI6XbL2TfVYTgF4AWLjU2XN+Lp3ko7V kktCb0rnTqzh+Wt1vU8MWNw9fc/LGSioh2VMD0bOwabx+tj1WMCnlRIM1U/c5A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764598214; a=rsa-sha256; cv=none; b=rZkD3i1VXdrL8tuM2/k50O/l3vd8XIgxN5YE/L/z47ihs26DgMLfmqUj7bWtq7q5ORDHzD DkwHvBgJK7IgheKQ0dSnuLHOiM/cRGHmsSqDrMPPlWqWvd4AIK3kQMRghFByFhtdmqGbz8 VC/IOewbSfcug3PDdyRr2/ojGhXStVoDvHd00L8+maEnU6ITQf5HrAX/bKMgMkztfFEKP4 r2ZPwBBBZXCy/GEGXB8IoBeEjPVigauimuRV9CzjqiCMki5T8Nk+Qf1Z9wMKh/qP6m/U80 ZHq3iw+rI8ZFRCyQmbw/BWy0wyXnrIoIoZr9PzoMLfJbfli57JX9J1urfbShcw== 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 4dKm521VZxz7yn for ; Mon, 01 Dec 2025 14:10:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 289b3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 14:10:14 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jessica Clarke Subject: git: 5f529f9e292a - main - libc: Fix TESTSDIR for new stdbit tests List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jrtc27 X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5f529f9e292a30c065c316ed5fd0d23e07b26e5c Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 14:10:14 +0000 Message-Id: <692da1c6.289b3.56e4faf@gitrepo.freebsd.org> The branch main has been updated by jrtc27: URL: https://cgit.FreeBSD.org/src/commit/?id=5f529f9e292a30c065c316ed5fd0d23e07b26e5c commit 5f529f9e292a30c065c316ed5fd0d23e07b26e5c Author: Jessica Clarke AuthorDate: 2025-12-01 14:06:21 +0000 Commit: Jessica Clarke CommitDate: 2025-12-01 14:06:21 +0000 libc: Fix TESTSDIR for new stdbit tests Otherwise the directory created by etc/mtree/BSD.tests.dist, which is where these belong, and referred to by the generated Kyuafile for /usr/tests/lib/libc (via stdbit's existence in TESTS_SUBDIRS), ends up empty with no Kyuafile, which is an error for kyua. Reported by: kp Fixes: 2fb8cbc6ef1b ("libc/tests: add stdbit test framework and unit tests") --- lib/libc/tests/stdbit/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/libc/tests/stdbit/Makefile b/lib/libc/tests/stdbit/Makefile index 37450056007a..8dbc86528de3 100644 --- a/lib/libc/tests/stdbit/Makefile +++ b/lib/libc/tests/stdbit/Makefile @@ -1,3 +1,5 @@ +TESTSDIR= ${TESTSBASE}/lib/libc/stdbit + # ensure libc functions are tested, not clang's builtins CFLAGS+= -fno-builtin From nobody Mon Dec 1 14:13:41 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKm9400DHz6Jbff; Mon, 01 Dec 2025 14:13:43 +0000 (UTC) (envelope-from kp@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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKm936QXdz3BvY; Mon, 01 Dec 2025 14:13:43 +0000 (UTC) (envelope-from kp@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598423; 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: in-reply-to:in-reply-to:references:references; bh=baWGx0PGbGFBBIdyI94kUxAOFYXiUMV77G/U3bljkLg=; b=QkLuXZu1W9z1P4U7NJzClpuptPJElcLOPmlRu0VFd+GALFPukTKMd40Qq03BVFB+Kg08fZ 0KBMPVNPmjFBKCNr74kglUA+0f38wSuKf2OFJSCAMQB/qcvoR3vLl2QM+kz9Zsakkz3RJ0 pt3tzJa1S4BJsNsgcqYWJcE8p4L7JA4iHh0hXK/NQJmvrkhsLVJqLyNOilgKAhRfSzCNFu S3HnJBZ7XNBiM3xU4w27zAqxBUnLGUVmsu2NR2Rqph0S3Jltk27xLkhicLOs+792yK1oB5 eiTyB21Br+ab3e/e/57UUUqOH5LyfAAUr2qpXZ6swxtyQNu9hGMUHrBAybRLOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598423; 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: in-reply-to:in-reply-to:references:references; bh=baWGx0PGbGFBBIdyI94kUxAOFYXiUMV77G/U3bljkLg=; b=tkyMrP0PpCekYYcO6MMWLCbCZrZiL+aswQJtF/jcFSTciyXc/mJMCGMZkqJ8tWEZ+PJ/Uy YjMD5olZYd4v1UbYQ/gBOwHcUl9rfEVumVDi9hvGOqDans/fv1wYwKGJiVqLfLPnQbQm9r lkARHhmrsa0H5DBd2ZFWrLC2LPesKXAsCI8D4AupLPABEnTGAXMMBGtAbPJ643MT5ErBNb lgjV5/nd6ooZiHg/m/+slzjG6D7uiYsJhFfZH64HH/ZEhvn/8wItMphHND1jkNAMJNmqn6 jD7ZDBAwM8fhIRFO4K0CvQp393nfrR17r/WT3NmPr62+ShqX0MKGysrLXWjVWA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764598423; a=rsa-sha256; cv=none; b=PIskI0QxWhx41z/SDMFMndHppvJC/SP6lzScGCk2Y7Zx5d9VNpxLDbktIw2XRp9j18evjC /dj7Ug+5FWYq+0OPbCFRn8ER85rUsqK/Wrl/B6EpkzTUw8GeTeEH1F/9kl/6kJHaWgUDah mtnVBED/iTD8/O//8oPaqq2Kl0a6+dqMKOUUz1wNJ5MSEiRhDwfnjtQ9nWuIpYeZBFzN+h 1bczTtjZlHpoLKkdVHFRE+s2h4K3XhGc5pJegk68PDuxiwtkVcwqMzj3LV3v5veMVIItzi GaVrwSQDnaP6JU3CMLo+iKXcZjz25YLbnw3YNYia2t0vKgkRgTzLsyTjEmbbnw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from venus.codepro.be (venus.codepro.be [5.9.86.228]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mx1.codepro.be", Issuer "R12" (verified OK)) (Authenticated sender: kp) by smtp.freebsd.org (Postfix) with ESMTPSA id 4dKm93523Nz78G; Mon, 01 Dec 2025 14:13:43 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: by venus.codepro.be (Postfix, authenticated sender kp) id AD4E616D64; Mon, 01 Dec 2025 15:13:41 +0100 (CET) From: Kristof Provost To: Jessica Clarke Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 5f529f9e292a - main - libc: Fix TESTSDIR for new stdbit tests Date: Mon, 01 Dec 2025 15:13:41 +0100 X-Mailer: MailMate (2.0r6272) Message-ID: In-Reply-To: <692da1c6.289b3.56e4faf@gitrepo.freebsd.org> References: <692da1c6.289b3.56e4faf@gitrepo.freebsd.org> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="=_MailMate_99BE4D1D-1FBF-4E93-8962-90AE8046886B_=" --=_MailMate_99BE4D1D-1FBF-4E93-8962-90AE8046886B_= Content-Type: text/plain; format=flowed; markup=markdown Content-Transfer-Encoding: quoted-printable Thanks! On 1 Dec 2025, at 15:10, Jessica Clarke wrote: > The branch main has been updated by jrtc27: > > URL: = > https://cgit.FreeBSD.org/src/commit/?id=3D5f529f9e292a30c065c316ed5fd0d= 23e07b26e5c > > commit 5f529f9e292a30c065c316ed5fd0d23e07b26e5c > Author: Jessica Clarke > AuthorDate: 2025-12-01 14:06:21 +0000 > Commit: Jessica Clarke > CommitDate: 2025-12-01 14:06:21 +0000 > > libc: Fix TESTSDIR for new stdbit tests > > Otherwise the directory created by etc/mtree/BSD.tests.dist, which = > is > where these belong, and referred to by the generated Kyuafile for > /usr/tests/lib/libc (via stdbit's existence in TESTS_SUBDIRS), = > ends up > empty with no Kyuafile, which is an error for kyua. > > Reported by: kp > Fixes: 2fb8cbc6ef1b ("libc/tests: add stdbit test = > framework and unit tests") > --- > lib/libc/tests/stdbit/Makefile | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/lib/libc/tests/stdbit/Makefile = > b/lib/libc/tests/stdbit/Makefile > index 37450056007a..8dbc86528de3 100644 > --- a/lib/libc/tests/stdbit/Makefile > +++ b/lib/libc/tests/stdbit/Makefile > @@ -1,3 +1,5 @@ > +TESTSDIR=3D ${TESTSBASE}/lib/libc/stdbit > + > # ensure libc functions are tested, not clang's builtins > CFLAGS+=3D -fno-builtin --=_MailMate_99BE4D1D-1FBF-4E93-8962-90AE8046886B_= Content-Type: text/html Content-Transfer-Encoding: quoted-printable

Thanks!

On 1 Dec 2025, at 15:10, Jessica Clarke wrote:

The branch main has been updated by jrtc27:

URL: https://cgit.FreeBSD.org/src/co= mmit/?id=3D5f529f9e292a30c065c316ed5fd0d23e07b26e5c

commit 5f529f9e292a30c065c316ed5fd0d23e07b26e5c
Author: Jessica Clarke jrtc27@F= reeBSD.org
AuthorDate: 2025-12-01 14:06:21 +0000
Commit: Jessica Clarke jrtc27@F= reeBSD.org
CommitDate: 2025-12-01 14:06:21 +0000

li=
bc: Fix TESTSDIR for new stdbit tests

Otherwise the directory created by etc/mtree/BSD.tests.dist, which is
where these belong, and referred to by the generated Kyuafile for
/usr/tests/lib/libc (via stdbit's existence in TESTS_SUBDIRS), ends up
empty with no Kyuafile, which is an error for kyua.

Reported by:    kp
Fixes:          2fb8cbc6ef1b ("libc/tests: add stdbit test framework=
 and unit tests")

lib/libc/tests/stdbit/Makefile | 2 ++
1 file changed, 2 insertions(+)

diff --git a/lib/libc/tests/stdbit/Makefile b/lib/libc/te= sts/stdbit/Makefile
index 37450056007a..8dbc86528de3 100644
--- a/lib/libc/tests/stdbit/Makefile
+++ b/lib/libc/tests/stdbit/Makefile
@@ -1,3 +1,5 @@
+TESTSDIR=3D ${TESTSBASE}/lib/libc/stdbit
+

ensure libc functions are tested, not clang's builtins

CFLAGS+=3D -fno-builtin

--=_MailMate_99BE4D1D-1FBF-4E93-8962-90AE8046886B_=-- From nobody Mon Dec 1 14:21:03 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKmKX2wggz6JcLw for ; Mon, 01 Dec 2025 14:21:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKmKW695hz3DcT for ; Mon, 01 Dec 2025 14:21:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598863; 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=vvXwDu/TTGsQWsEuJXRToOWanl41s/MuxsNSsNuVzjQ=; b=CBw6XE31W4Al3h+vrRdoxxVGlXurO/dTSWqHUA1inHss0Xos419QxtdeDudbibbKVlPxbX su64d7+NUJU+5VGqnLdeRS/KxIlkMaCnbMU+m/W5tzK/AZfbCSqL0KPL15iYYOZHR7RI+u o5YO3BHQfYbNMzOXdLo/H6EkqqwluRu/NVRWZvX9UIFduw0kACq84YLTBtdcoh3TMKwLsj 6L3cxW6BXAS1uNNpF7gC5FHt9MYKro2SSwFTdZeHJUY3yx3Lx+ZFJc+2aTL6SwERa1HpWj S5vyTscpHVQMjALJCa+aTwPVWpNK88fI2/z5Oxw5ff1+ROzr8Can4uVVYxbyyg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598863; 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=vvXwDu/TTGsQWsEuJXRToOWanl41s/MuxsNSsNuVzjQ=; b=qYVmE4KKubS16ejRsFVC1r94fWBgRAG5TRj4YRsDShRPlhaqnEsG8Kql7zyQR1/MMtQ/m/ kEsIgBzWh3rICvy0JdRlMpBPV5NAL8n6a9FiJmQaUvpNY6YOu+uXo8uSrj8E13GO7G6byM +70S8bSo4OSYan9nWun1jEH/DVP8E6uxv88EHVlPMHocU7SKy9fV0aK2jI0/7VRLxAfHc1 +reGtwDmdh2gyDSnJqKiFgkh6XPqPQb3qSlpzBTK7YJ2NMEQLcN2bvEX6l9MIwQ1ae65kh WTevnMM/iscCMZBJlNcSEfTXv2g8VCdEg5Byo3XTbb38Seh/s0ONYv8yyTK7mA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764598863; a=rsa-sha256; cv=none; b=Q1c4+JS48YK755JTjxV7qgLE01TfDlzH7dLXW4Je12VT+X4CR8RCKvk8KNfeSSiqvuZ2lO GL5WGXQW2mXX8ILwV6xHAc/X+wMEwTm/aBmuX9MRpUAbf2rmBXfaAO6MGPzmN+XNp0d3cs ztcoKfN2CHSjjJ0CRXDlkCP+72u+5jCI/CMnOXQ0A3gctQ/SlL7/J/yIshSuw2EXq6k7TM 4zURF5Zk0pPy2xYheCUGsBXB+C8RrVebGU0xPl00YzfE+SU/TfJId9wLShXuPJGaiBgHRU yNEGPOlDI3MNTIUNOvltarAdTbTQ0vxySiGEloJuLOfR5OvSsTk2FHkjEX1hTQ== 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 4dKmKW5lFhz7xJ for ; Mon, 01 Dec 2025 14:21:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 294b7 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 14:21:03 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Minsoo Choo From: Mark Johnston Subject: git: d667cc77ba20 - main - dtrace: remove sparc tests List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: d667cc77ba20082c16457ef4ae7f3060d9ab70b1 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 14:21:03 +0000 Message-Id: <692da44f.294b7.587af8c1@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=d667cc77ba20082c16457ef4ae7f3060d9ab70b1 commit d667cc77ba20082c16457ef4ae7f3060d9ab70b1 Author: Minsoo Choo AuthorDate: 2025-11-29 19:02:42 +0000 Commit: Mark Johnston CommitDate: 2025-12-01 14:19:18 +0000 dtrace: remove sparc tests Signed-off-by: Minsoo Choo Reviewed by: markj MFC after: 1 week Pull Request: https://github.com/freebsd/freebsd-src/pull/1907 --- .../dtrace/test/tst/sparc/arrays/tst.uregsarray.d | 85 ------------- .../tst/sparc/pid/err.D_PROC_ALIGN.misaligned.d | 40 ------- .../tst/sparc/pid/err.D_PROC_ALIGN.misaligned.exe | 29 ----- .../cmd/dtrace/test/tst/sparc/pid/tst.br.d | 70 ----------- .../cmd/dtrace/test/tst/sparc/pid/tst.br.d.out | 23 ---- .../cmd/dtrace/test/tst/sparc/pid/tst.br.s | 81 ------------- .../cmd/dtrace/test/tst/sparc/pid/tst.branch.d | 78 ------------ .../cmd/dtrace/test/tst/sparc/pid/tst.branch.s | 63 ---------- .../cmd/dtrace/test/tst/sparc/pid/tst.embedded.d | 73 ------------ .../cmd/dtrace/test/tst/sparc/pid/tst.embedded.s | 59 --------- .../dtrace/test/tst/sparc/usdt/tst.tailcall.ksh | 132 --------------------- .../test/tst/sparc/ustack/annotated_helper.d | 32 ----- .../dtrace/test/tst/sparc/ustack/helper_helper.d | 32 ----- .../dtrace/test/tst/sparc/ustack/tst.annotated.c | 43 ------- .../dtrace/test/tst/sparc/ustack/tst.annotated.d | 35 ------ .../test/tst/sparc/ustack/tst.annotated.d.out | 4 - .../dtrace/test/tst/sparc/ustack/tst.circstack.d | 46 ------- .../dtrace/test/tst/sparc/ustack/tst.circstack.s | 44 ------- .../cmd/dtrace/test/tst/sparc/ustack/tst.helper.c | 81 ------------- .../cmd/dtrace/test/tst/sparc/ustack/tst.helper.d | 44 ------- .../dtrace/test/tst/sparc/ustack/tst.helper.d.out | 4 - .../dtrace/test/tst/sparc/ustack/tst.trapstat.ksh | 87 -------------- 22 files changed, 1185 deletions(-) diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/arrays/tst.uregsarray.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/arrays/tst.uregsarray.d deleted file mode 100644 index 3ef38983ad52..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/arrays/tst.uregsarray.d +++ /dev/null @@ -1,85 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - - -#pragma ident "%Z%%M% %I% %E% SMI" - - -/* - * ASSERTION: - * Positive test to make sure that we can invoke sparc - * ureg[] aliases. - * - * SECTION: User Process Tracing/uregs Array - * - * NOTES: This test does no verification - the value of the output - * is not deterministic. - */ - -#pragma D option quiet - -BEGIN -{ - printf("R_G0 = 0x%x\n", uregs[R_G0]); - printf("R_G1 = 0x%x\n", uregs[R_G1]); - printf("R_G2 = 0x%x\n", uregs[R_G2]); - printf("R_G3 = 0x%x\n", uregs[R_G3]); - printf("R_G4 = 0x%x\n", uregs[R_G4]); - printf("R_G5 = 0x%x\n", uregs[R_G5]); - printf("R_G6 = 0x%x\n", uregs[R_G6]); - printf("R_G7 = 0x%x\n", uregs[R_G7]); - printf("R_O0 = 0x%x\n", uregs[R_O0]); - printf("R_O1 = 0x%x\n", uregs[R_O1]); - printf("R_O2 = 0x%x\n", uregs[R_O2]); - printf("R_O3 = 0x%x\n", uregs[R_O3]); - printf("R_O4 = 0x%x\n", uregs[R_O4]); - printf("R_O5 = 0x%x\n", uregs[R_O5]); - printf("R_O6 = 0x%x\n", uregs[R_O6]); - printf("R_O7 = 0x%x\n", uregs[R_O7]); - printf("R_L0 = 0x%x\n", uregs[R_L0]); - printf("R_L1 = 0x%x\n", uregs[R_L1]); - printf("R_L2 = 0x%x\n", uregs[R_L2]); - printf("R_L3 = 0x%x\n", uregs[R_L3]); - printf("R_L4 = 0x%x\n", uregs[R_L4]); - printf("R_L5 = 0x%x\n", uregs[R_L5]); - printf("R_L6 = 0x%x\n", uregs[R_L6]); - printf("R_L7 = 0x%x\n", uregs[R_L7]); - printf("R_I0 = 0x%x\n", uregs[R_I0]); - printf("R_I1 = 0x%x\n", uregs[R_I1]); - printf("R_I2 = 0x%x\n", uregs[R_I2]); - printf("R_I3 = 0x%x\n", uregs[R_I3]); - printf("R_I4 = 0x%x\n", uregs[R_I4]); - printf("R_I5 = 0x%x\n", uregs[R_I5]); - printf("R_I6 = 0x%x\n", uregs[R_I6]); - printf("R_I7 = 0x%x\n", uregs[R_I7]); - printf("R_CCR = 0x%x\n", uregs[R_CCR]); - printf("R_PC = 0x%x\n", uregs[R_PC]); - printf("R_NPC = 0x%x\n", uregs[R_NPC]); - printf("R_Y = 0x%x\n", uregs[R_Y]); - printf("R_ASI = 0x%x\n", uregs[R_ASI]); - printf("R_FPRS = 0x%x\n", uregs[R_FPRS]); - exit(0); -} diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/err.D_PROC_ALIGN.misaligned.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/err.D_PROC_ALIGN.misaligned.d deleted file mode 100644 index 3e4662740816..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/err.D_PROC_ALIGN.misaligned.d +++ /dev/null @@ -1,40 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -/* - * ASSERTION: On SPARC, you can't trace misaligned offsets - * - * SECTION: User Process Tracing/pid Provider - * - * NOTES: - * - */ - -pid$1:a.out:main:7 -{ -} diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/err.D_PROC_ALIGN.misaligned.exe b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/err.D_PROC_ALIGN.misaligned.exe deleted file mode 100644 index 595db1de33da..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/err.D_PROC_ALIGN.misaligned.exe +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/ksh -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# - -# -# Copyright 2006 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" - -sleep 1000000 diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.d deleted file mode 100644 index cf1dc02ec47c..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.d +++ /dev/null @@ -1,70 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2007 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -/* - * ASSERTION: Trace all instructions in the function 'test' to verify that - * the branches are emulated correctly. - */ - -#pragma D option destructive -#pragma D option quiet - -pid$1:a.out:waiting:entry -{ - this->a = (char *)alloca(1); - *this->a = 1; - copyout(this->a, arg0, 1); -} - -pid$1:a.out:test: -{ - printf("%s:%s\n", probefunc, probename); -} - -syscall::rexit:entry -/pid == $1/ -{ - exit(0); -} - - -BEGIN -{ - /* - * Let's just do this for 5 seconds. - */ - timeout = timestamp + 5000000000; -} - -profile:::tick-4 -/timestamp > timeout/ -{ - trace("test timed out"); - exit(1); -} - diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.d.out b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.d.out deleted file mode 100644 index 8559271e4aac..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.d.out +++ /dev/null @@ -1,23 +0,0 @@ -test:entry -test:0 -test:4 -test:8 -test:c -test:10 -test:14 -test:18 -test:1c -test:20 -test:24 -test:28 -test:2c -test:30 -test:34 -test:38 -test:3c -test:40 -test:44 -test:48 -test:4c -test:return - diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.s b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.s deleted file mode 100644 index dfa7d27074f2..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.br.s +++ /dev/null @@ -1,81 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2007 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -#include - - DGDEF(__fsr_init_value) - .word 0 - - ENTRY(waiting) - retl - ldub [%o0], %o0 - SET_SIZE(waiting) - - ENTRY(test) - mov 1, %g1 - - brz %g1, 1f - nop - brlez %g1, 1f - nop - brlz %g0, 1f - nop - brlz %g1, 1f - nop - brnz %g0, 1f - sub %g0, 2, %g1 - brgz %g1, 1f - nop - brgz %g0, 1f - nop - brgez %g1, 1f - nop - - mov %g1, %o0 - -1: - retl - nop - SET_SIZE(test) - - ENTRY(main) - save %sp, -SA(MINFRAME + 4), %sp - stb %g0, [%fp - 4] -1: - call waiting - sub %fp, 4, %o0 - tst %o0 - bz 1b - nop - - call test - nop - - ret - restore %g0, %g0, %o0 - SET_SIZE(main) diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.branch.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.branch.d deleted file mode 100644 index cfcf0a715d1a..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.branch.d +++ /dev/null @@ -1,78 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -/* - * ASSERTION: - * - * SECTION: - * - * NOTES: - * - */ - -#pragma D option destructive - -pid$1:a.out:waiting:entry -{ - this->a = (char *)alloca(1); - *this->a = 1; - copyout(this->a, arg0, 1); -} - -pid$1:a.out:main:, -pid$1:a.out:other: -{ -} - -pid$1:a.out:bad:entry -{ - exit(1); -} - -syscall::rexit:entry -/pid == $1/ -{ - exit(0); -} - - -BEGIN -{ - /* - * Let's just do this for 5 seconds. - */ - timeout = timestamp + 5000000000; -} - -profile:::tick-4 -/timestamp > timeout/ -{ - trace("test timed out"); - exit(1); -} - diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.branch.s b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.branch.s deleted file mode 100644 index 3e6531f32190..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.branch.s +++ /dev/null @@ -1,63 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2007 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -#include - - DGDEF(__fsr_init_value) - .word 0 - - ENTRY(waiting) - retl - ldub [%o0], %o0 - SET_SIZE(waiting) - - ENTRY(main) - save %sp, -SA(MINFRAME + 4), %sp - stb %g0, [%fp - 4] -1: - call waiting - sub %fp, 4, %o0 - tst %o0 - bz 1b - nop - - restore - - tst %g0 - be other - nop - - ALTENTRY(bad) - illtrap - SET_SIZE(bad) - SET_SIZE(main) - - ENTRY(other) - retl - clr %o0 - SET_SIZE(other) diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.embedded.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.embedded.d deleted file mode 100644 index c484c3f0c721..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.embedded.d +++ /dev/null @@ -1,73 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -/* - * ASSERTION: - * - * SECTION: - * - * NOTES: - * - */ - -#pragma D option destructive - -pid$1:a.out:waiting:entry -{ - this->a = (char *)alloca(1); - *this->a = 1; - copyout(this->a, arg0, 1); -} - -pid$1:a.out:main:, -pid$1:a.out:inner: -{ -} - -syscall::rexit:entry -/pid == $1/ -{ - exit(0); -} - - -BEGIN -{ - /* - * Let's just do this for 5 seconds. - */ - timeout = timestamp + 5000000000; -} - -profile:::tick-4 -/timestamp > timeout/ -{ - trace("test timed out"); - exit(1); -} - diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.embedded.s b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.embedded.s deleted file mode 100644 index 612f0b926142..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/pid/tst.embedded.s +++ /dev/null @@ -1,59 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2007 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -#include - - DGDEF(__fsr_init_value) - .word 0 - - ENTRY(waiting) - retl - ldub [%o0], %o0 - SET_SIZE(waiting) - - ENTRY(main) - save %sp, -SA(MINFRAME + 4), %sp - stb %g0, [%fp - 4] -1: - call waiting - sub %fp, 4, %o0 - tst %o0 - bz 1b - nop - - restore - - ALTENTRY(inner) - nop - nop - nop - SET_SIZE(inner) - - retl - clr %o0 - SET_SIZE(main) diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/usdt/tst.tailcall.ksh b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/usdt/tst.tailcall.ksh deleted file mode 100644 index c3651ecf7eb4..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/usdt/tst.tailcall.ksh +++ /dev/null @@ -1,132 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# - -# -# Copyright 2007 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# ident "%Z%%M% %I% %E% SMI" - -# -# ASSERTION: Make sure USDT probes work as tail-calls on SPARC. -# - -if [ $# != 1 ]; then - echo expected one argument: '<'dtrace-path'>' - exit 2 -fi - -dtrace=$1 -DIR=/var/tmp/dtest.$$ - -mkdir $DIR -cd $DIR - -cat > test.s < - - DGDEF(__fsr_init_value) - .word 0 - - ENTRY(test) - save %sp, -SA(MINFRAME + 4), %sp - mov 9, %i0 - mov 19, %i1 - mov 2006, %i2 - call __dtrace_test___fire - restore - SET_SIZE(test) - - ENTRY(main) - save %sp, -SA(MINFRAME + 4), %sp - -1: - call test - nop - - ba 1b - nop - - ret - restore %g0, %g0, %o0 - SET_SIZE(main) -EOF - -cat > prov.d < timeout/ -{ - trace("test timed out"); - exit(1); -} -EOF - -status=$? - -cd / -/bin/rm -rf $DIR - -exit $status diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/annotated_helper.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/annotated_helper.d deleted file mode 100644 index 3577f86f8ee6..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/annotated_helper.d +++ /dev/null @@ -1,32 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#ident "%Z%%M% %I% %E% SMI" - -dtrace:helper:ustack: -{ - "@it's annotated" -} diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/helper_helper.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/helper_helper.d deleted file mode 100644 index 8abc47d006dc..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/helper_helper.d +++ /dev/null @@ -1,32 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -dtrace:helper:ustack: -{ - "" -} diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/tst.annotated.c b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/tst.annotated.c deleted file mode 100644 index 8cdf8abad5af..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/tst.annotated.c +++ /dev/null @@ -1,43 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ - -/* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -int -baz(void) -{ - return (8); -} - -int -main(int argc, char **argv) -{ - for (;;) { - baz(); - } - - return (0); -} diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/tst.annotated.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/tst.annotated.d deleted file mode 100644 index dd795bece03f..000000000000 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/sparc/ustack/tst.annotated.d +++ /dev/null @@ -1,35 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. *** 373 LINES SKIPPED *** From nobody Mon Dec 1 14:21:04 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKmKY4nHRz6JcJK for ; Mon, 01 Dec 2025 14:21:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKmKY1VDrz3Dck for ; Mon, 01 Dec 2025 14:21:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598865; 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=OIQSvtaiBQQGdbwBllcnfrsHkuRDkK2CpsiNIjMqUi0=; b=wMQQn+p4Og9EUoaLEZm77eDWBQkJs6XFzECJuUpxXhFDB2qOlokQtGS/q1XFI7eQOhifY8 8BsnzznekNMQdGFE2Y5kp7pXiLB6izimJgbI3KT7x4eBY06y3KE82znWqfxxSeTR+T6iwF bJzcsRQAqoxf/hsCzaYZNDUtWpwLw4929fIHOVc0ZgD6GA4+VT6osocDFaC3x9VoJ0j5RN TsqQfRmd8RQcU0iUNe3iCjZSxa/GqP2GbeZjlFtoo21pgaL52mvqOuq6nA47b1nM9Cnwvf eVj5ewAujn+c7Y1BVH40Ju8x18flOl3vLGySL+s9oaEYn8EtPha2QQUrYFyzTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598865; 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=OIQSvtaiBQQGdbwBllcnfrsHkuRDkK2CpsiNIjMqUi0=; b=TApJSluDGySUfPu9p197Z55DqfXvissuEa0XFh20eTzUM4NvCjhSU6d5DwIAoRHmIRSbCz 7hHbWyIXVoe0cz5bALvf9RiBu6bd7JRLXvcD8Kt/4exlf8I+A7aIXRqZG4uG4IVic9TRy9 8nOFdIanj0zUhgVEyyvhh5JLFW5296SuDTzV7HiEyxwMEe4ZbtlxqpmWugvY4cnbDjO5at tcz1DrjhIeOHl1YWARHQFv8Lbbc1A0RDjRH43/gJgIbbDyT3AOzwYZT109dOtM0Vf9rCD3 HPuUGljfza8gxviS+yD4IxM8eMl2wMcYS3+72uKntNs/D42PfG7nCUb8D9UXSQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764598865; a=rsa-sha256; cv=none; b=c0ttdJqKun0vpSLLRJikGJQsneeIoQx4wexXJfw/gZ4JO/hXK99g70I23KFZiAAJLjcEz2 8XnkSzLVgjHOUTnfAzfZIX/i7L62tXHbI7lDKbbyNtqnq1T/fB5Kjx4bsX/EekTgXUA3sO 2vaWqVKI+tsy8b7rfOtZ28DWM6TSgOjA8xIz8bDoPTEAtX+il2vrVwNyQnjxpRfyBzg7Ng vFVdxVNXUCGeCxSN1r0DHCtXO8RMBTbrXAAN1bP/6SCLOUEQyRKXcGyiUGZ8rs5M7s2NES 9otuRGAwmgqaxtTmZdkxQUYP+Q4v+zh1zw5q19ANV4B6nF+CCcJ6+FFib35hBQ== 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 4dKmKX73Mnz7xK for ; Mon, 01 Dec 2025 14:21:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2924b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 14:21:04 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Minsoo Choo From: Mark Johnston Subject: git: dfd35cd244c0 - main - libdtrace: remove sparc code List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: dfd35cd244c081dad9bc0fa602ee230e4ea1d5c2 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 14:21:04 +0000 Message-Id: <692da450.2924b.60ec59da@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=dfd35cd244c081dad9bc0fa602ee230e4ea1d5c2 commit dfd35cd244c081dad9bc0fa602ee230e4ea1d5c2 Author: Minsoo Choo AuthorDate: 2025-11-29 19:02:59 +0000 Commit: Mark Johnston CommitDate: 2025-12-01 14:19:19 +0000 libdtrace: remove sparc code Signed-off-by: Minsoo Choo Reviewed by: markj MFC after: 1 week Pull Request: https://github.com/freebsd/freebsd-src/pull/1907 --- .../opensolaris/lib/libdtrace/sparc/dt_isadep.c | 338 --------------------- .../contrib/opensolaris/lib/libdtrace/sparc/regs.d | 120 -------- 2 files changed, 458 deletions(-) diff --git a/cddl/contrib/opensolaris/lib/libdtrace/sparc/dt_isadep.c b/cddl/contrib/opensolaris/lib/libdtrace/sparc/dt_isadep.c deleted file mode 100644 index ed05275e7f83..000000000000 --- a/cddl/contrib/opensolaris/lib/libdtrace/sparc/dt_isadep.c +++ /dev/null @@ -1,338 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License, Version 1.0 only - * (the "License"). You may not use this file except in compliance - * with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ -/* - * Copyright 2005 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -#include -#include -#include -#include -#include - -#include -#include - -#define OP(x) ((x) >> 30) -#define OP2(x) (((x) >> 22) & 0x07) -#define COND(x) (((x) >> 25) & 0x0f) -#define A(x) (((x) >> 29) & 0x01) - -#define OP_BRANCH 0 - -#define OP2_BPcc 0x1 -#define OP2_Bicc 0x2 -#define OP2_BPr 0x3 -#define OP2_FBPfcc 0x5 -#define OP2_FBfcc 0x6 - -/*ARGSUSED*/ -int -dt_pid_create_entry_probe(struct ps_prochandle *P, dtrace_hdl_t *dtp, - fasttrap_probe_spec_t *ftp, const GElf_Sym *symp) -{ - ftp->ftps_type = DTFTP_ENTRY; - ftp->ftps_pc = (uintptr_t)symp->st_value; - ftp->ftps_size = (size_t)symp->st_size; - ftp->ftps_noffs = 1; - ftp->ftps_offs[0] = 0; - - if (ioctl(dtp->dt_ftfd, FASTTRAPIOC_MAKEPROBE, ftp) != 0) { - dt_dprintf("fasttrap probe creation ioctl failed: %s\n", - strerror(errno)); - return (dt_set_errno(dtp, errno)); - } - - return (1); -} - -int -dt_pid_create_return_probe(struct ps_prochandle *P, dtrace_hdl_t *dtp, - fasttrap_probe_spec_t *ftp, const GElf_Sym *symp, uint64_t *stret) -{ - - uint32_t *text; - int i; - int srdepth = 0; - - if ((text = malloc(symp->st_size + 4)) == NULL) { - dt_dprintf("mr sparkle: malloc() failed\n"); - return (DT_PROC_ERR); - } - - if (Pread(P, text, symp->st_size, symp->st_value) != symp->st_size) { - dt_dprintf("mr sparkle: Pread() failed\n"); - free(text); - return (DT_PROC_ERR); - } - - /* - * Leave a dummy instruction in the last slot to simplify edge - * conditions. - */ - text[symp->st_size / 4] = 0; - - ftp->ftps_type = DTFTP_RETURN; - ftp->ftps_pc = symp->st_value; - ftp->ftps_size = symp->st_size; - ftp->ftps_noffs = 0; - - for (i = 0; i < symp->st_size / 4; i++) { - /* - * If we encounter an existing tracepoint, query the - * kernel to find out the instruction that was - * replaced at this spot. - */ - while (text[i] == FASTTRAP_INSTR) { - fasttrap_instr_query_t instr; - - instr.ftiq_pid = Pstatus(P)->pr_pid; - instr.ftiq_pc = symp->st_value + i * 4; - - if (ioctl(dtp->dt_ftfd, FASTTRAPIOC_GETINSTR, - &instr) != 0) { - - if (errno == ESRCH || errno == ENOENT) { - if (Pread(P, &text[i], 4, - instr.ftiq_pc) != 4) { - dt_dprintf("mr sparkle: " - "Pread() failed\n"); - free(text); - return (DT_PROC_ERR); - } - continue; - } - - free(text); - dt_dprintf("mr sparkle: getinstr query " - "failed: %s\n", strerror(errno)); - return (DT_PROC_ERR); - } - - text[i] = instr.ftiq_instr; - break; - } - - /* save */ - if ((text[i] & 0xc1f80000) == 0x81e00000) { - srdepth++; - continue; - } - - /* restore */ - if ((text[i] & 0xc1f80000) == 0x81e80000) { - srdepth--; - continue; - } - - if (srdepth > 0) { - /* ret */ - if (text[i] == 0x81c7e008) - goto is_ret; - - /* return */ - if (text[i] == 0x81cfe008) - goto is_ret; - - /* call or jmpl w/ restore in the slot */ - if (((text[i] & 0xc0000000) == 0x40000000 || - (text[i] & 0xc1f80000) == 0x81c00000) && - (text[i + 1] & 0xc1f80000) == 0x81e80000) - goto is_ret; - - /* call to one of the stret routines */ - if ((text[i] & 0xc0000000) == 0x40000000) { - int32_t disp = text[i] << 2; - uint64_t dest = ftp->ftps_pc + i * 4 + disp; - - dt_dprintf("dest = %llx\n", (u_longlong_t)dest); - - if (dest == stret[0] || dest == stret[1] || - dest == stret[2] || dest == stret[3]) - goto is_ret; - } - } else { - /* external call */ - if ((text[i] & 0xc0000000) == 0x40000000) { - int32_t dst = text[i] << 2; - - dst += i * 4; - - if ((uintptr_t)dst >= (uintptr_t)symp->st_size) - goto is_ret; - } - - /* jmpl into %g0 -- this includes the retl pseudo op */ - if ((text[i] & 0xfff80000) == 0x81c00000) - goto is_ret; - - /* external branch -- possible return site */ - if (OP(text[i]) == OP_BRANCH) { - int32_t dst; - int baa; - - switch (OP2(text[i])) { - case OP2_BPcc: - dst = text[i] & 0x7ffff; - dst <<= 13; - dst >>= 11; - - baa = COND(text[i]) == 8 && A(text[i]); - break; - case OP2_Bicc: - dst = text[i] & 0x3fffff; - dst <<= 10; - dst >>= 8; - - baa = COND(text[i]) == 8 && A(text[i]); - break; - case OP2_BPr: - dst = (((text[i]) >> 6) & 0xc000) | - ((text[i]) & 0x3fff); - dst <<= 16; - dst >>= 14; - - baa = 0; - break; - case OP2_FBPfcc: - dst = text[i] & 0x7ffff; - dst <<= 13; - dst >>= 11; - - baa = COND(text[i]) == 8 && A(text[i]); - break; - case OP2_FBfcc: - dst = text[i] & 0x3fffff; - dst <<= 10; - dst >>= 8; - - baa = COND(text[i]) == 8 && A(text[i]); - break; - default: - continue; - } - - dst += i * 4; - - /* - * Interpret branches outside of the function's - * bounds as potential return sites. If the - * branch is a ba,a don't skip the instruction - * in the delay slot. - */ - if ((uintptr_t)dst >= - (uintptr_t)symp->st_size) { - if (baa) - goto is_ret_baa; - else - goto is_ret; - } - } - } - - continue; -is_ret: - i++; -is_ret_baa: - dt_dprintf("return at offset %x\n", i * 4); - ftp->ftps_offs[ftp->ftps_noffs++] = i * 4; - } - - free(text); - if (ftp->ftps_noffs > 0) { - if (ioctl(dtp->dt_ftfd, FASTTRAPIOC_MAKEPROBE, ftp) != 0) { - dt_dprintf("fasttrap probe creation ioctl failed: %s\n", - strerror(errno)); - return (dt_set_errno(dtp, errno)); - } - } - - - return (ftp->ftps_noffs); -} - -/*ARGSUSED*/ -int -dt_pid_create_offset_probe(struct ps_prochandle *P, dtrace_hdl_t *dtp, - fasttrap_probe_spec_t *ftp, const GElf_Sym *symp, ulong_t off) -{ - if (off & 0x3) - return (DT_PROC_ALIGN); - - ftp->ftps_type = DTFTP_OFFSETS; - ftp->ftps_pc = (uintptr_t)symp->st_value; - ftp->ftps_size = (size_t)symp->st_size; - ftp->ftps_noffs = 1; - ftp->ftps_offs[0] = off; - - if (ioctl(dtp->dt_ftfd, FASTTRAPIOC_MAKEPROBE, ftp) != 0) { - dt_dprintf("fasttrap probe creation ioctl failed: %s\n", - strerror(errno)); - return (dt_set_errno(dtp, errno)); - } - - return (1); -} - -/*ARGSUSED*/ -int -dt_pid_create_glob_offset_probes(struct ps_prochandle *P, dtrace_hdl_t *dtp, - fasttrap_probe_spec_t *ftp, const GElf_Sym *symp, const char *pattern) -{ - ulong_t i; - - ftp->ftps_type = DTFTP_OFFSETS; - ftp->ftps_pc = (uintptr_t)symp->st_value; - ftp->ftps_size = (size_t)symp->st_size; - ftp->ftps_noffs = 0; - - /* - * If we're matching against everything, just iterate through each - * instruction in the function, otherwise look for matching offset - * names by constructing the string and comparing it against the - * pattern. - */ - if (strcmp("*", pattern) == 0) { - for (i = 0; i < symp->st_size; i += 4) { - ftp->ftps_offs[ftp->ftps_noffs++] = i; - } - } else { - char name[sizeof (i) * 2 + 1]; - - for (i = 0; i < symp->st_size; i += 4) { - (void) sprintf(name, "%lx", i); - if (gmatch(name, pattern)) - ftp->ftps_offs[ftp->ftps_noffs++] = i; - } - } - - if (ioctl(dtp->dt_ftfd, FASTTRAPIOC_MAKEPROBE, ftp) != 0) { - dt_dprintf("fasttrap probe creation ioctl failed: %s\n", - strerror(errno)); - return (dt_set_errno(dtp, errno)); - } - - return (ftp->ftps_noffs); -} diff --git a/cddl/contrib/opensolaris/lib/libdtrace/sparc/regs.d b/cddl/contrib/opensolaris/lib/libdtrace/sparc/regs.d deleted file mode 100644 index 7c4bc0fac519..000000000000 --- a/cddl/contrib/opensolaris/lib/libdtrace/sparc/regs.d +++ /dev/null @@ -1,120 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License, Version 1.0 only - * (the "License"). You may not use this file except in compliance - * with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - */ -/* - * Copyright 2003 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#pragma ident "%Z%%M% %I% %E% SMI" - -inline int R_G0 = 0; -#pragma D binding "1.0" R_G0 -inline int R_G1 = 1; -#pragma D binding "1.0" R_G1 -inline int R_G2 = 2; -#pragma D binding "1.0" R_G2 -inline int R_G3 = 3; -#pragma D binding "1.0" R_G3 -inline int R_G4 = 4; -#pragma D binding "1.0" R_G4 -inline int R_G5 = 5; -#pragma D binding "1.0" R_G5 -inline int R_G6 = 6; -#pragma D binding "1.0" R_G6 -inline int R_G7 = 7; -#pragma D binding "1.0" R_G7 - -inline int R_O0 = 8; -#pragma D binding "1.0" R_O0 -inline int R_O1 = 9; -#pragma D binding "1.0" R_O1 -inline int R_O2 = 10; -#pragma D binding "1.0" R_O2 -inline int R_O3 = 11; -#pragma D binding "1.0" R_O3 -inline int R_O4 = 12; -#pragma D binding "1.0" R_O4 -inline int R_O5 = 13; -#pragma D binding "1.0" R_O5 -inline int R_O6 = 14; -#pragma D binding "1.0" R_O6 -inline int R_O7 = 15; -#pragma D binding "1.0" R_O7 - -inline int R_L0 = 16; -#pragma D binding "1.0" R_L0 -inline int R_L1 = 17; -#pragma D binding "1.0" R_L1 -inline int R_L2 = 18; -#pragma D binding "1.0" R_L2 -inline int R_L3 = 19; -#pragma D binding "1.0" R_L3 -inline int R_L4 = 20; -#pragma D binding "1.0" R_L4 -inline int R_L5 = 21; -#pragma D binding "1.0" R_L5 -inline int R_L6 = 22; -#pragma D binding "1.0" R_L6 -inline int R_L7 = 23; -#pragma D binding "1.0" R_L7 - -inline int R_I0 = 24; -#pragma D binding "1.0" R_I0 -inline int R_I1 = 25; -#pragma D binding "1.0" R_I1 -inline int R_I2 = 26; -#pragma D binding "1.0" R_I2 -inline int R_I3 = 27; -#pragma D binding "1.0" R_I3 -inline int R_I4 = 28; -#pragma D binding "1.0" R_I4 -inline int R_I5 = 29; -#pragma D binding "1.0" R_I5 -inline int R_I6 = 30; -#pragma D binding "1.0" R_I6 -inline int R_I7 = 31; -#pragma D binding "1.0" R_I7 - -inline int R_CCR = 32; -#pragma D binding "1.0" R_CCR -inline int R_PC = 33; -#pragma D binding "1.0" R_PC -inline int R_nPC = 34; -#pragma D binding "1.0" R_nPC -inline int R_NPC = R_nPC; -#pragma D binding "1.0" R_NPC -inline int R_Y = 35; -#pragma D binding "1.0" R_Y -inline int R_ASI = 36; -#pragma D binding "1.0" R_ASI -inline int R_FPRS = 37; -#pragma D binding "1.0" R_FPRS -inline int R_PS = R_CCR; -#pragma D binding "1.0" R_PS -inline int R_SP = R_O6; -#pragma D binding "1.0" R_SP -inline int R_FP = R_I6; -#pragma D binding "1.0" R_FP -inline int R_R0 = R_O0; -#pragma D binding "1.0" R_R0 -inline int R_R1 = R_O1; -#pragma D binding "1.0" R_R1 From nobody Mon Dec 1 14:21:06 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKmKZ56HHz6Jcbs for ; Mon, 01 Dec 2025 14:21: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKmKZ0d6tz3Dfm for ; Mon, 01 Dec 2025 14:21:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598866; 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=VDHCOGU9uJFGz+lRtKLDwsHMnUNr7T/+ivLF9oL4rQc=; b=GeEQcY3duQmbMSPHCX+VxHpdFVUyaPiC28t4X0u4hEQPuiMzBbFeK44FBzdulVfGOB8kgx OLgXKq0xxzESgnCz9snGFrguo9CM9Bivq+RBtEdpnAmjRmZkNQLZBNRagHY8GkVmsTaDBD nE61zkieRYivV2COhcxCYx7TabjlH0qvp7kR9Bmi6ie2XBBEI+iZBvwey3XEIoI/Ch72fo rrh+xld8jsuuZ0lFWRVPwK1hUg9UbmspfJ30qXAszD6n6eapvFgN7PsbBrXoUM+E0eceCh 4MSj9E6Di/NQW+4w4Z95h7YitGz/u30vnV1TBiQ1Uk2DL5BhuNaNWDNrmqx9UA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598866; 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=VDHCOGU9uJFGz+lRtKLDwsHMnUNr7T/+ivLF9oL4rQc=; b=ohc96I0LbZmD8OwJqxMEHISSOBi7fZ2tFAF1n2t/06ILVGAcr+XofSQIYIxBkghAcEM7Rn lh+jvpUzKe1x7k94yrJEBtkQZvQ0BQi4J98BDUQePutgWONj5V17BooNBdf4ZEcZHl7hD7 ROyqFtROueNW5lFKp5lrepr/6lSP+pATd4DPM1rJTXLox00lEC5DTUjWBVky268EV2GmkJ MYPFDaeu67/fcPYGgx9UEJ5j7lqPLIypP+JiZNHdV+A8Miyx+0MtSMhZZV8tBYnNQn8OuS lcZn1BOedTB2H/gy0qOxZFmqQFyNgk9YI6rK5vY7qUHGzfW0+xOuyRTxkmA69w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764598866; a=rsa-sha256; cv=none; b=BHfSys2a7BKxTbLCtR/o92SCFKOic2AzZ5XcPt/Rc9W6pmynBAsrgZBgTjJAYXtfPoI0fV jScifN3SHaf3ktVB5Aeq5OlsuKzPv7lJFJ1aXy5YqSbL9FCTJoJ8Zk0mJqDTjeJlfbcRzV 32G0uMM3s2ZAwnsH05RxKLN64Rys9fx4qYk744p+kzz453AS0TO766BfaoYE1yWbSOMzw3 tXwR8DaK4FpU++wFhrQ/1Luaypc7z53/UdeWYnWYbmGdtPxi1AiL3c0NVHCd5BljMtvwxk HZiGawLhGwkxsEl1ZsdGDmWOdk/o5aCv6zhJvaBcmxxcWyOlSnpTOmVeR/NjhQ== 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 4dKmKZ05Yfz82V for ; Mon, 01 Dec 2025 14:21:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 282c0 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 14:21:06 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Minsoo Choo From: Mark Johnston Subject: git: d11ff7f93386 - main - opensolaris: remove references to sparc List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: d11ff7f93386f36a385ea01498fd9ff9ff3862ce Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 14:21:06 +0000 Message-Id: <692da452.282c0.39360269@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=d11ff7f93386f36a385ea01498fd9ff9ff3862ce commit d11ff7f93386f36a385ea01498fd9ff9ff3862ce Author: Minsoo Choo AuthorDate: 2025-11-30 18:56:26 +0000 Commit: Mark Johnston CommitDate: 2025-12-01 14:19:19 +0000 opensolaris: remove references to sparc Signed-off-by: Minsoo Choo Reviewed by: markj MFC after: 1 week Pull Request: https://github.com/freebsd/freebsd-src/pull/1907 --- .../cmd/dtrace/test/cmd/jdtrace/exception.lst | 1 - .../cmd/dtrace/test/tst/common/safety/tst.vahole.d | 4 ---- .../opensolaris/cmd/dtrace/test/tst/common/usdt/prov.h | 9 --------- cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c | 13 ------------- .../opensolaris/lib/libdtrace/common/dt_program.c | 17 +++-------------- cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c | 4 ---- 6 files changed, 3 insertions(+), 45 deletions(-) diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/jdtrace/exception.lst b/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/jdtrace/exception.lst index 19fc3aca51c2..035dd5cb694e 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/jdtrace/exception.lst +++ b/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/jdtrace/exception.lst @@ -66,7 +66,6 @@ common/usdt/tst.reeval.ksh common/usdt/tst.static.ksh common/usdt/tst.static2.ksh common/usdt/tst.user.ksh -sparc/usdt/tst.tailcall.ksh common/pid/tst.provregex3.ksh common/pid/tst.provregex4.ksh diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/safety/tst.vahole.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/safety/tst.vahole.d index 2ef40a5ac474..a285509316d9 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/safety/tst.vahole.d +++ b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/safety/tst.vahole.d @@ -38,11 +38,7 @@ fbt::: { n++; -#ifdef __sparc - trace(*(int *)0x8000000000000000 ^ rand()); -#else trace(*(int *)(`kernelbase - 1)); -#endif } dtrace:::ERROR diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/usdt/prov.h b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/usdt/prov.h index e29654edb672..bebf9754f691 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/usdt/prov.h +++ b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/usdt/prov.h @@ -15,21 +15,12 @@ extern "C" { #define TESTER_ENTRY() \ __dtrace_tester___entry() -#ifndef __sparc #define TESTER_ENTRY_ENABLED() \ __dtraceenabled_tester___entry() -#else -#define TESTER_ENTRY_ENABLED() \ - __dtraceenabled_tester___entry(0) -#endif extern void __dtrace_tester___entry(void); -#ifndef __sparc extern int __dtraceenabled_tester___entry(void); -#else -extern int __dtraceenabled_tester___entry(long); -#endif #else diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c index 40200771fd4d..f2352ffe832a 100644 --- a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c +++ b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c @@ -1263,19 +1263,6 @@ alloc: else if (flags & DTRACE_O_ILP32) dtp->dt_conf.dtc_ctfmodel = CTF_MODEL_ILP32; -#ifdef __sparc - /* - * On SPARC systems, __sparc is always defined for - * and __sparcv9 is defined if we are doing a 64-bit compile. - */ - if (dt_cpp_add_arg(dtp, "-D__sparc") == NULL) - return (set_open_errno(dtp, errp, EDT_NOMEM)); - - if (dtp->dt_conf.dtc_ctfmodel == CTF_MODEL_LP64 && - dt_cpp_add_arg(dtp, "-D__sparcv9") == NULL) - return (set_open_errno(dtp, errp, EDT_NOMEM)); -#endif - #ifdef illumos #ifdef __x86 /* diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_program.c b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_program.c index 232a3723b11d..ca7bf407290f 100644 --- a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_program.c +++ b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_program.c @@ -441,12 +441,8 @@ dt_header_decl(dt_idhash_t *dhp, dt_ident_t *idp, void *data) return (dt_set_errno(dtp, errno)); if (fprintf(infop->dthi_out, - "#ifndef\t__sparc\n" - "extern int __dtraceenabled_%s___%s(void);\n" - "#else\n" - "extern int __dtraceenabled_%s___%s(long);\n" - "#endif\n", - infop->dthi_pfname, fname, infop->dthi_pfname, fname) < 0) + "extern int __dtraceenabled_%s___%s(void);\n", + infop->dthi_pfname, fname) < 0) return (dt_set_errno(dtp, errno)); return (0); @@ -509,15 +505,8 @@ dt_header_probe(dt_idhash_t *dhp, dt_ident_t *idp, void *data) if (!infop->dthi_empty) { if (fprintf(infop->dthi_out, - "#ifndef\t__sparc\n" - "#define\t%s_%s_ENABLED() \\\n" - "\t__dtraceenabled_%s___%s()\n" - "#else\n" "#define\t%s_%s_ENABLED() \\\n" - "\t__dtraceenabled_%s___%s(0)\n" - "#endif\n", - infop->dthi_pmname, mname, - infop->dthi_pfname, fname, + "\t__dtraceenabled_%s___%s()\n", infop->dthi_pmname, mname, infop->dthi_pfname, fname) < 0) return (dt_set_errno(dtp, errno)); diff --git a/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c b/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c index 42faaad65db5..815cc5478473 100644 --- a/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c +++ b/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c @@ -1360,11 +1360,7 @@ typedef struct fp_size_map { static const fp_size_map_t fp_encodings[] = { { { 4, 4 }, { CTF_FP_SINGLE, CTF_FP_CPLX, CTF_FP_IMAGRY } }, { { 8, 8 }, { CTF_FP_DOUBLE, CTF_FP_DCPLX, CTF_FP_DIMAGRY } }, -#ifdef __sparc - { { 16, 16 }, { CTF_FP_LDOUBLE, CTF_FP_LDCPLX, CTF_FP_LDIMAGRY } }, -#else { { 12, 16 }, { CTF_FP_LDOUBLE, CTF_FP_LDCPLX, CTF_FP_LDIMAGRY } }, -#endif { { 0, 0 }, { 0, 0, 0 } } }; From nobody Mon Dec 1 14:21:07 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKmKb3sXKz6JclY for ; Mon, 01 Dec 2025 14:21:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKmKb1KPJz3DlZ for ; Mon, 01 Dec 2025 14:21:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598867; 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=S3WeHr83JSqM66cBU5M9so0qdBk/Q1qiMVncUOVSbT4=; b=XBGmFb42eRVb5UD5rzmHa3g1dF1iUNhYY4SYQI7ZAV5WOL8KAEZ7L9wbPlrnY7LTfmrfKW BmPubWrTJRPqaSd7fXmu89glN4pygitoFEfU/NPGe4UctxYPgXQoAlRUEW50gqwvG/kmhi NxI7C9Xen0r65jDpzFv0Urp7nUny5iizzf/2KVJiZVVNKzFAnTmoa7Q3AkIN9hBbU9Z6Lo kTBZZh/sv7s0IXE9bF2I1jv9ceXTAkFwdhwfq2QucgJV/dJIpf9iw8AeJuBiNhYXvRYku4 c+bhCfgQCvW+7NWvKv/LWoI6XQscWEbt3ZIpLhcu+G6aiJuXIDLXEOivApIjmA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598867; 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=S3WeHr83JSqM66cBU5M9so0qdBk/Q1qiMVncUOVSbT4=; b=b4HcR9Q3i+BEY1H15TO5XKe1N202heJQmHdFszkzL6oCI36MsYSwsboC1/1aTCzFegdJEJ vhGhVnKeTuW6Dmrhka4I+o6ULopYlnGKqwLNtPTDCPoCdZNNM6It7y9/tj3UNqa2HnwdU4 8HUi7diNlsAC+usxJtzH1xZXDoGSIUyTZxSOM3QFF5VH3w4aLXJxS9studzdp7vdZ/qWxK FRP2r/OIb/0cwvOj5JhsW+lx3VAW3oVQo3VM3lxbQ7iPsVFUwqEvRoLbauft03l8mPExEh FLrTSlg3xC22elvn1qesGigGauMb/K4wE6FBpRzzJaTX5rUadPr8LFZvo9eFKQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764598867; a=rsa-sha256; cv=none; b=tknJBNRXtfjFEXgAud0qOZDqLBSOC+rc9G61Y3eL4smr6K02bbmpzZf5pEHuQI4WX7tRhD tXU6Qc20FFOeu4kKeVYejP5+hDAONvO67Lqo5dMIQmRz1X1G7Mr3N9QLUvbnM8HW+uZHk/ bbcoI5CBcy/TUEQsioZlcDWFXeo3gAmIvGBmTlzApPVngO0NoFUYUqqY/lB3+SGFdBkDI0 AB6A+vBcEtHjTCAywE36BDjYzUDjCoEKgdsgpPtlk40EGKt1ApnrBoSG5si7B7NyBc4xPb giUptLuaWuP3ZTvKoiDdRfswCGicfuvx9PEoH5kE3w2e87ncKwZSye3TxXySrA== 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 4dKmKb0rtTz8GP for ; Mon, 01 Dec 2025 14:21:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2afe5 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 14:21:07 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Minsoo Choo From: Mark Johnston Subject: git: 507cfc42799f - main - dtrace.1: remove sparc List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 507cfc42799f38d6960cd3a14eb66294c5fda4ff Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 14:21:07 +0000 Message-Id: <692da453.2afe5.43770ce7@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=507cfc42799f38d6960cd3a14eb66294c5fda4ff commit 507cfc42799f38d6960cd3a14eb66294c5fda4ff Author: Minsoo Choo AuthorDate: 2025-11-30 19:01:14 +0000 Commit: Mark Johnston CommitDate: 2025-12-01 14:19:19 +0000 dtrace.1: remove sparc Signed-off-by: Minsoo Choo Reviewed by: markj MFC after: 1 week Pull Request: https://github.com/freebsd/freebsd-src/pull/1907 --- cddl/contrib/opensolaris/cmd/dtrace/dtrace.1 | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/cddl/contrib/opensolaris/cmd/dtrace/dtrace.1 b/cddl/contrib/opensolaris/cmd/dtrace/dtrace.1 index 86887bbe8dd9..786c3d6e50d1 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/dtrace.1 +++ b/cddl/contrib/opensolaris/cmd/dtrace/dtrace.1 @@ -20,7 +20,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 12, 2025 +.Dd November 30, 2025 .Dt DTRACE 1 .Os .Sh NAME @@ -837,10 +837,6 @@ __unix .It __SVR4 .It -__sparc (on SPARC systems only) -.It -__sparcv9 (on SPARC systems only when 64-bit programs are compiled) -.It __i386 (on x86 systems only when 32-bit programs are compiled) .It __amd64 (on x86 systems only when 64-bit programs are compiled) From nobody Mon Dec 1 14:21:02 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKmKc0xjNz6Jck4 for ; Mon, 01 Dec 2025 14:21:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKmKb61DZz3DjD for ; Mon, 01 Dec 2025 14:21:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598867; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yBFmNcpCgcbFf95DQslRylXejeG+g2LX39TlLOgm5HM=; b=jBTykmvMTBZuOAY3f29/a3krt0/42lB2YSV2Odk9KoWMGjYj9FIhqFWphlyaYlKESiJy2q mZWgAAXP9NCQSJkWAsEJzix5up8CapeW737JA/OXIuAw027ZapQnsdB/qFAxcRqeKNsM9C hSlLxeH3lSaapMPookHsIAXfELlmS5zdxUE+ygn4pmftxTFdsZ8YzTVBK7REQOTPte9BqT qhgbOwidR1EKxayMiXNljLUnP67pAM0oQKOSbPyzRLiyrK/ZKk6Xv280BFfgEbE+mIemQC 217dFaxl6FDZy6LldXMXbAQYRU7ttF1UGY6t/qWSt/5f55iWQUkbTercSq4AlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598867; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yBFmNcpCgcbFf95DQslRylXejeG+g2LX39TlLOgm5HM=; b=Wuu7bOLZgkXAUZwrPSdSHphozCpGK0FFcw8K1SbKWcT0w+dYkUXSSD10WCtoMYvm/napqU MRUwnEYbTpFt2R0waK4JMsysy7B2qdIC8NKq31mohxIggUKvHPhDnEKDM6QjnVL3sG8U/t OxnxamgZnOIZssUdIr8lCk+BdS2lHACFWIGlICahgeUAshkWFVFC8HFvQvIobXuSb9/Qyh P1iBaz5tBf2FNytJUJGq28LYPfr1PWwdn/2pWZmT7mSpB6wtTx9TniMVreKZP972SdwEYp RlpI2riOwiQL6sL0a5l4VbeJoC6pVR02bZ2TzTfiS1U0cUZW2lKDx4epqI9djw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764598867; a=rsa-sha256; cv=none; b=NcY7afc6lJW81eiZdyTp/ZyyjZpM+9NDCoLepbr3QsdvR/Ljx8Ru30WTvlOV8mwUIlNC90 daC3TjT6GliybipaHjVmBuRXkmLljC/8GjKPXedcTUO1SIQxQRKcoCri56SVnQJbcaWf1E y963vyd7RSudZyRae2shiNaI7q3PbaDa93nIRxyWIMmGRuZSiD7GagbkG7KsXRTWch/tS1 qqQyeng8oTO/O3zErOcetMzW4AAYWjhMnTguUgd27nLRHtcZ1ubKYraYlmto+d+zR0hBQQ fGi2qmXh3JA08IrlxrLy8TVdWqvpwZtuyaT3YVqK63KCpXoLXtmkTjNawiWToA== 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 4dKmKb5bMgz8GQ for ; Mon, 01 Dec 2025 14:21:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2ab04 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 14:21:02 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 72b114169bd5 - main - linker: Avoid invoking eventhandlers on incompletely loaded files List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 72b114169bd56ec157d746a2df87b3a4617065b3 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 14:21:02 +0000 Message-Id: <692da44e.2ab04.29ad736b@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=72b114169bd56ec157d746a2df87b3a4617065b3 commit 72b114169bd56ec157d746a2df87b3a4617065b3 Author: Mark Johnston AuthorDate: 2025-11-26 18:15:48 +0000 Commit: Mark Johnston CommitDate: 2025-12-01 14:19:18 +0000 linker: Avoid invoking eventhandlers on incompletely loaded files We do not invoke the kld_load eventhandler until after the file is fully linked, so don't invoke the kld_unload_try or kld_unload event handlers unless the file is fully linked either. In my case, the dtrace SDT kld_unload_try handler was running before relocations were processed against the file, and that caused problems when sdt_kld_unload_probes() accesses elements of a linker set. Move the kld_unload handler invocation earlier, to after sysuninits have been run. This is a bit more consistent with the kld_load handler. PR: 291238 Reviewed by: imp, emaste, kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D53938 --- sys/kern/kern_linker.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/sys/kern/kern_linker.c b/sys/kern/kern_linker.c index e2f63cbc0c5a..9559b5233a3e 100644 --- a/sys/kern/kern_linker.c +++ b/sys/kern/kern_linker.c @@ -703,9 +703,11 @@ linker_file_unload(linker_file_t file, int flags) /* Give eventhandlers a chance to prevent the unload. */ error = 0; - EVENTHANDLER_INVOKE(kld_unload_try, file, &error); - if (error != 0) - return (EBUSY); + if ((file->flags & LINKER_FILE_LINKED) != 0) { + EVENTHANDLER_INVOKE(kld_unload_try, file, &error); + if (error != 0) + return (EBUSY); + } KLD_DPF(FILE, ("linker_file_unload: file is unloading," " informing modules\n")); @@ -768,10 +770,12 @@ linker_file_unload(linker_file_t file, int flags) * Don't try to run SYSUNINITs if we are unloaded due to a * link error. */ - if (file->flags & LINKER_FILE_LINKED) { + if ((file->flags & LINKER_FILE_LINKED) != 0) { file->flags &= ~LINKER_FILE_LINKED; linker_file_unregister_sysctls(file); linker_file_sysuninit(file); + EVENTHANDLER_INVOKE(kld_unload, file->filename, file->address, + file->size); } TAILQ_REMOVE(&linker_files, file, link); @@ -788,9 +792,6 @@ linker_file_unload(linker_file_t file, int flags) LINKER_UNLOAD(file); - EVENTHANDLER_INVOKE(kld_unload, file->filename, file->address, - file->size); - if (file->filename) { free(file->filename, M_LINKER); file->filename = NULL; From nobody Mon Dec 1 14:21:08 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKmKg0jhdz6Jcfk for ; Mon, 01 Dec 2025 14:21:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKmKc1zSfz3Dyh for ; Mon, 01 Dec 2025 14:21:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598868; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eyygWN1bp3VCT2AsSnDOvsJRcgRZSBJPstWQgWpQd4I=; b=Tt85bEirfQqXq8KEgQ/lc60A3D+bIw8KNKuuPY5C/5ul/RNGVBHbFGTD7v09EvTGHhXIIM J5fR1HcVjZWA2yh0IPyIln3/PbQSOzc9JmO71R9/tzZJZa2esZ9UMi4UmlCzoyXisHCjT7 MS/okBG/jcD4dLBF5JT6xehe2e0kiDHnxMTe22xYnOUFNAo8ntxYkYE92w/5XenH7ZPbaf i59UK4uNZQAouGydEetT1a5JiIA/llNC9GB2Uyv4kP2zuyC0oOT0LHD0sEyeoIrC2I7K23 7VpEFgInV/VPbsHuz1Bs3sMI0mlvbFW0HtHJfXSTvLVffsAFJ2gW+w6ZoIH1Ig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764598868; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eyygWN1bp3VCT2AsSnDOvsJRcgRZSBJPstWQgWpQd4I=; b=k4lf4b9piy3nYV6qAlqHOnDz4P7wnR8zClcJ5FQDRLf4qjlVlXmEtt53ViVO5g6Ai3xiBm 3EXoERwZw9DnSnv98tWA2HnS1DDyND8bcAWOa5Q2NmCsNGRqRFOnMEuJLkVa2+zBE4KSZZ KaqzuNAp+6BHysC29r3eKdM8oojjTHiRumal/c6FpKCr6SsIHKkglnbFTZt9RTqc2H8vG1 l7DflCl7E02x6j0HeafY2V5g6KH025nrYTMSCtCjykcOOzXb5UL0c3StG+9OxYKc/Y1s0l z7mK9Q3YZywHsGFL0gaBipFSRQQUcO+Du5wUtShap9iuGBTCYKI5UhMqAg/lAg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764598868; a=rsa-sha256; cv=none; b=Ao1omfYt9DUEE3UOlZAbmDs+1/0em155QRB60cMDHnO9zPNPGXIvWmgHRmM0//uRj+TVvG z4wcX22LuJC4GavICNemxcKZkctHiGfPg8bMiVvieoVNi0nm4w8hgb7jI8+I3mWpAD/x86 m9JI1ylaYnZIhse20MQTHEtKjkC7kurGF7QzCePyxoJ5ffFR90FFUGQg+ktS2BWTZNEYAM HUu73koD24Ye+uP3TKAPprWR4nCOdrA62cl+mGERqom605He/JecyRqD8ZGQ4pP61F2A4e kp+71AIKqG9089sIOSamNS8howbboIWjpuqzsc6B/temY48D0f0oyKPqEr7Dow== 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 4dKmKc1T97z811 for ; Mon, 01 Dec 2025 14:21:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 29c3b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 14:21:08 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 17fd7780fbbb - main - dtrace tests: Update names after the syscall::exit probe was renamed List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 17fd7780fbbb59932b72b5dac6bda93f67743b83 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 14:21:08 +0000 Message-Id: <692da454.29c3b.11058e5e@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=17fd7780fbbb59932b72b5dac6bda93f67743b83 commit 17fd7780fbbb59932b72b5dac6bda93f67743b83 Author: Mark Johnston AuthorDate: 2025-12-01 13:46:20 +0000 Commit: Mark Johnston CommitDate: 2025-12-01 14:20:06 +0000 dtrace tests: Update names after the syscall::exit probe was renamed MFC after: 1 week Fixes: e7e964cb2ebd ("syscalls: normalize _exit(2) declerations") --- cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.vfork.d | 2 +- cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.d | 2 +- cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.d | 2 +- cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise3.d | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.vfork.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.vfork.d index e8fc9b4dfba1..1324d4eaec4f 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.vfork.d +++ b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/pid/tst.vfork.d @@ -54,7 +54,7 @@ pid$1:a.out:go: exit(1); } -syscall::exit:entry +syscall::_exit:entry /pid == $1/ { exit(0); diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.d index 30bf5ae4bf0a..64fe885b6124 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.d +++ b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.d @@ -54,7 +54,7 @@ syscall::getpid:entry timeout = timestamp + 500000000; } -syscall::exit:entry +syscall::_exit:entry /pid == $1/ { exit(0); diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.d index 7d18442d7408..8b08bface705 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.d +++ b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.d @@ -54,7 +54,7 @@ syscall::getpid:return timeout = timestamp + 500000000; } -syscall::exit:entry +syscall::_exit:entry /pid == $1/ { exit(0); diff --git a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise3.d b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise3.d index 30bf5ae4bf0a..64fe885b6124 100644 --- a/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise3.d +++ b/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise3.d @@ -54,7 +54,7 @@ syscall::getpid:entry timeout = timestamp + 500000000; } -syscall::exit:entry +syscall::_exit:entry /pid == $1/ { exit(0); From nobody Mon Dec 1 14:53:44 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKn3F3cRlz6Jg8l; Mon, 01 Dec 2025 14:53:45 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKn3F35s1z3KfZ; Mon, 01 Dec 2025 14:53:45 +0000 (UTC) (envelope-from jhb@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764600825; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=CUUJY7s130npIql9xR0r46+qEVZ7xHA5wSSAQFIKdVc=; b=UmQLvfbutS3TVAr+9ceRxQmhdWDqk7dGdo0ZNBVGB83+Q/l6QPVz6DmmOY6amHOQ1iv6Gm iws680kok4Lb2tc+bSoXxMJQPBG3JmgX8P8eZypAP/PYzQXvSYQrb6589QGgiHhxFbDj+Q JfdE0ZW5lxO781v4Mjs1VJu/2LxXLnyFGg4dfHKrGFXJecghDuOezGvUE9rzn2BDg2W8lM XfVTXbB83Ba6GEv2FQDyNNKQQhIKrZObjnWkcQ5wMm6QKPtNdVxt/IavRWvbZ2tztR4FCN 00cCOfuxUj9QKG7DZU1LQhvfOUSKElp7Uk3Ln3NF/6Qh3FiGXkvx2ZUS544f0Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764600825; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=CUUJY7s130npIql9xR0r46+qEVZ7xHA5wSSAQFIKdVc=; b=fGmGZrKHg+O/SxtInD7R6j1Akop5uR5shSkunHZuUT7l2vMc5WpQVg2uiMRy/lOyciAFzL Y9TgmZ/8U5ybjrwUhhl4uS1Ve5/9AXoaP+wFOBDYsGIJyIkYve9BeM5qfkbTW4bl3AG/Dp RvKr5QovQ64kRwplsCmojnDaTVI3IedqRz+WmY38BG78zNqpNDVzbnrcBJYXG1SFDn3NYe 8nX9LHJb3x8TvSzLOknz0JNJhsFE3K7EXvGN2b5nzlChuo79NcCprdfdxtUk0CypJfGRfx ErGJHZmsXIZn2ko5nLhRCC1IkabWSpTkDWQGeTJXzFJaZutMtFnYBqYrzi0Hzw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764600825; a=rsa-sha256; cv=none; b=ZsNNYi07RtEFy/L0NtkYaj/UIdbPILFpCz2+feF6GidZRj/ojFKEHLTXnxEBnxoMhizwq/ 05ePsZSKhc8+uD+RwXRaOWygccvN6CnbybL6Y05OpBRfL80uKoKP5QM8ujLH+SpKrZdJIM C8z/JTPZppyD2QONwknf92SOdkgyPXD2IHxtIchaf/Uv7AmQCDsy9IiR44tvEvwbJxfNqC n76kSiCfPDto8m3lOObEcNE8mcNQZ0TvwfUyd6725gCLTrgY7mqogEGJ2/WgWKSImfsH2l mXwodgoeb+QIKbrarjHyG5gy17BIQ21uhk43taOArDas9b0LcnFo+sMvgdYBtg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from [IPV6:2601:5c0:4202:5670:4cbc:6bd:30e8:ed5d] (unknown [IPv6:2601:5c0:4202:5670:4cbc:6bd:30e8:ed5d]) (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: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id 4dKn3F1C4Hz6vV; Mon, 01 Dec 2025 14:53:45 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Message-ID: <6365e335-fcc8-4590-af40-230815012f9d@FreeBSD.org> Date: Mon, 1 Dec 2025 09:53:44 -0500 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: 301b8a806f79 - main - nvme: Minor style(9) fixes Content-Language: en-US To: Warner Losh , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org References: <6925d6af.3b42c.336a0065@gitrepo.freebsd.org> From: John Baldwin In-Reply-To: <6925d6af.3b42c.336a0065@gitrepo.freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 11/25/25 11:17, Warner Losh wrote: > The branch main has been updated by imp: > > URL: https://cgit.FreeBSD.org/src/commit/?id=301b8a806f79292ee3324ca938a4d938df1911e8 > > commit 301b8a806f79292ee3324ca938a4d938df1911e8 > Author: Warner Losh > AuthorDate: 2025-11-25 16:10:23 +0000 > Commit: Warner Losh > CommitDate: 2025-11-25 16:12:51 +0000 > > nvme: Minor style(9) fixes > > needs to be first after . And we don't need > both sys/param.h and sys/types.h. > > Fixes: 032fbda024d78 > Sponsored by: Netflix > --- > sys/dev/nvme/nvme.h | 11 ++++------- > 1 file changed, 4 insertions(+), 7 deletions(-) > > diff --git a/sys/dev/nvme/nvme.h b/sys/dev/nvme/nvme.h > index 3de65a4a481f..ddbc149802f4 100644 > --- a/sys/dev/nvme/nvme.h > +++ b/sys/dev/nvme/nvme.h > @@ -29,15 +29,13 @@ > #ifndef __NVME_H__ > #define __NVME_H__ > > -#ifdef _KERNEL > -#include > -#endif > - > #include > -#include > -#ifndef _KERNEL > +#ifdef _KERNEL > +#include > +#else > #include > #endif > +#include > > struct sbuf; > > @@ -1909,7 +1907,6 @@ void nvme_sc_sbuf(const struct nvme_completion *cpl, struct sbuf *sbuf); > void nvme_strvis(uint8_t *dst, const uint8_t *src, int dstlen, int srclen); > > #ifdef _KERNEL > -#include > #include I should perhaps just move this to the top as well so all the #include's are in one place. -- John Baldwin From nobody Mon Dec 1 15:18:08 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKnbP3sp4z6JjkL; Mon, 01 Dec 2025 15:18:09 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKnbP2sK6z3Pq2; Mon, 01 Dec 2025 15:18:09 +0000 (UTC) (envelope-from jhb@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764602289; 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=DXKQvGpQ92xj5H1i7pigcZi5BGrdnF6n7xIc3KcpX/k=; b=CkR5ytAAxLW2qTNuo+HDyK8AUZmp/0PDP9ONGVQAfhnhW+3zEyl5hcyPhvGsuc6E14/BEN +1XuvM+eAVwi9stHyxX/IJ6vIXLcrOszazkl6L8qfgJHBesr2KNLUT8yRi40s+N1FkTDCI Z4RdwEkTRb/oQ/ycKMz/p+a4bR6hGvkmIdOJmCRoB6Ur2Oige6BOe+osG0LKS2nnx66wZ/ vw8MM7qM3zGcLqPDy1OVYaO+0OoZpqea0oY0G2xw97hsaRzE3maK1/ZOq29HGNU4IW5Jx5 DZGiYMUkT++cgSB5xAkWOpGuLZUdPV70T7YL/eOfEUrWFVZYJhRpEnXiQNfVDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764602289; 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=DXKQvGpQ92xj5H1i7pigcZi5BGrdnF6n7xIc3KcpX/k=; b=Wx2ElfEgxpsPZtB+lhz+roX7fRq+nZwk59LHcguSUU1ACgSmCM+GQ0FWDFEIjMKjMl0T/W G+J0CM8wNMMmG4r4JnJSX8nz5HZDyGS16jAdfWcuzQYEDGwDvRrPja1oxvU4asEgTjd587 pU7eojdvFR6r8MOFp101MIhj03jZxCfJddn0n3r0D4xDjEGB7k90Sow5Zaz9e3tRwCuDZM DDIYEpDg9H0H1IuLmHyCCVBNp2u0idzMUVLGE7BHW472aBpt4IQO2NyAGU7xYbfMeKqfNy ol17xE7hT6LHkRFomLXeHz8vsDjOct3dQKqv2WOSWR2vNRTGMsF8To76PCoL9w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764602289; a=rsa-sha256; cv=none; b=yyTPdbyGEMTg3srzq4pFbDEzHXkeaIsuTwSKViovujnbCCeNS895KEeEFtU5Z1jsH4DXmY dQUb3JqgtPGKnOPDF7up1W1hM9jNhwtM6WguGVHD3FACPKSlMy01adyZinwmE2lfWmu5A5 pE241oPKFxMOyHHZ4AEALvg5OT+F5wd8m+ud2hqslzGOU/NspMXLCCnUXSJ1azwbpdFaPe fcbjlU6E8ppFuIOv//aQrptNKNGrO7OE7eOkG8+qsJGljhv0XslRRtMPHdsv4oGnhkZTzQ QgGSkoyq9RsntSw99HzowD0yc2LJGE8cIKgq1rZO9mAX1F7JBgEdV/TUJ1BRFQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from [IPV6:2601:5c0:4202:5670:4cbc:6bd:30e8:ed5d] (unknown [IPv6:2601:5c0:4202:5670:4cbc:6bd:30e8:ed5d]) (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: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id 4dKnbP0XR4z8Xh; Mon, 01 Dec 2025 15:18:09 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Message-ID: Date: Mon, 1 Dec 2025 10:18:08 -0500 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: f42421307b11 - main - sys: remove armv6/6.1 support from debug monitor Content-Language: en-US To: Warner Losh , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Minsoo Choo References: <692a8ea7.feb1.63d10382@gitrepo.freebsd.org> From: John Baldwin In-Reply-To: <692a8ea7.feb1.63d10382@gitrepo.freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 11/29/25 01:11, Warner Losh wrote: > The branch main has been updated by imp: > > URL: https://cgit.FreeBSD.org/src/commit/?id=f42421307b115345ea1a6c8fdf61fbb581e4400f > > commit f42421307b115345ea1a6c8fdf61fbb581e4400f > Author: Minsoo Choo > AuthorDate: 2025-11-29 00:34:40 +0000 > Commit: Warner Losh > CommitDate: 2025-11-29 04:56:36 +0000 > > sys: remove armv6/6.1 support from debug monitor > > Signed-off-by: Minsoo Choo > Reviewed by: imp > Pull Request: https://github.com/freebsd/freebsd-src/pull/1903 > --- > sys/arm/arm/debug_monitor.c | 30 ------------------------------ > 1 file changed, 30 deletions(-) > > diff --git a/sys/arm/arm/debug_monitor.c b/sys/arm/arm/debug_monitor.c > index 7944becbae4d..4d61896a2142 100644 > --- a/sys/arm/arm/debug_monitor.c > +++ b/sys/arm/arm/debug_monitor.c > @@ -83,8 +83,6 @@ static uint32_t dbg_breakpoint_num; > #define ID_DFR0_CP_DEBUG_M_SHIFT 0 > #define ID_DFR0_CP_DEBUG_M_MASK (0xF << ID_DFR0_CP_DEBUG_M_SHIFT) > #define ID_DFR0_CP_DEBUG_M_NS (0x0) /* Not supported */ > -#define ID_DFR0_CP_DEBUG_M_V6 (0x2) /* v6 Debug arch. CP14 access */ > -#define ID_DFR0_CP_DEBUG_M_V6_1 (0x3) /* v6.1 Debug arch. CP14 access */ > #define ID_DFR0_CP_DEBUG_M_V7 (0x4) /* v7 Debug arch. CP14 access */ > #define ID_DFR0_CP_DEBUG_M_V7_1 (0x5) /* v7.1 Debug arch. CP14 access */ Humm, I would have probably left these as the register is still valid and I find it useful to describe the full range of values for registers that we define constants for. The rest of the removal certainly makes sense. > > @@ -594,10 +592,6 @@ dbg_enable_monitor(void) > dbg_dscr = cp14_dbgdscrint_get(); > > switch (dbg_model) { > - case ID_DFR0_CP_DEBUG_M_V6: > - case ID_DFR0_CP_DEBUG_M_V6_1: /* fall through */ > - cp14_dbgdscr_v6_set(dbg_dscr | DBGSCR_MDBG_EN); > - break; Should this function also be removed? Looks to be defined here in sys/arm/include/cpu.h: _WF1(cp14_dbgdscr_v6_set, CP14_DBGDSCRext_V6(%0)) -- John Baldwin From nobody Mon Dec 1 15:27:51 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKnpn3jYQz6JkfP; Mon, 01 Dec 2025 15:28:01 +0000 (UTC) (envelope-from fuz@fuz.su) Received: from fuz.su (fuz.su [IPv6:2001:41d0:8:e508::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-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "fuz.su", Issuer "fuz.su" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKnpm56Ctz3RHm; Mon, 01 Dec 2025 15:28:00 +0000 (UTC) (envelope-from fuz@fuz.su) Authentication-Results: mx1.freebsd.org; none Received: from fuz.su (localhost [127.0.0.1]) by fuz.su (8.18.1/8.18.1) with ESMTPS id 5B1FRpgQ009716 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Mon, 1 Dec 2025 16:27:52 +0100 (CET) (envelope-from fuz@fuz.su) Received: (from fuz@localhost) by fuz.su (8.18.1/8.18.1/Submit) id 5B1FRpNC009715; Mon, 1 Dec 2025 16:27:51 +0100 (CET) (envelope-from fuz) Date: Mon, 1 Dec 2025 16:27:51 +0100 From: Robert Clausecker To: Brooks Davis Cc: Dag-Erling Sm??rgrav , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 029a09f18032 - main - sys/_types.h: Actually unbreak gcc build Message-ID: References: <692c1d02.367c7.22c28c58@gitrepo.freebsd.org> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4dKnpm56Ctz3RHm Am Mon, Dec 01, 2025 at 09:40:40AM +0000 schrieb Brooks Davis: > On Sun, Nov 30, 2025 at 10:31:30AM +0000, Dag-Erling Sm??rgrav wrote: > > The branch main has been updated by des: > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=029a09f18032353a9ae874590b879322efc6e53a > > > > commit 029a09f18032353a9ae874590b879322efc6e53a > > Author: Dag-Erling Sm??rgrav > > AuthorDate: 2025-11-30 10:30:45 +0000 > > Commit: Dag-Erling Sm??rgrav > > CommitDate: 2025-11-30 10:31:09 +0000 > > > > sys/_types.h: Actually unbreak gcc build > > Thank you for addressing this issue. I'm going to follow up with a > different approach that doesn't use __has_feature. It's annoying how > recalcitrant GCC has proved about this functionality. Maybe we should add __has_feature() polyfill to . Yours, Robert Clausecker -- () ascii ribbon campaign - for an encoding-agnostic world /\ - against html email - against proprietary attachments From nobody Mon Dec 1 15:31:19 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKntf2Hdyz6JksM; Mon, 01 Dec 2025 15:31:22 +0000 (UTC) (envelope-from fuz@fuz.su) Received: from fuz.su (fuz.su [IPv6:2001:41d0:8:e508::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-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "fuz.su", Issuer "fuz.su" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKntd6KyTz3S8S; Mon, 01 Dec 2025 15:31:21 +0000 (UTC) (envelope-from fuz@fuz.su) Authentication-Results: mx1.freebsd.org; none Received: from fuz.su (localhost [127.0.0.1]) by fuz.su (8.18.1/8.18.1) with ESMTPS id 5B1FVJZV009787 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Mon, 1 Dec 2025 16:31:20 +0100 (CET) (envelope-from fuz@fuz.su) Received: (from fuz@localhost) by fuz.su (8.18.1/8.18.1/Submit) id 5B1FVJEj009786; Mon, 1 Dec 2025 16:31:19 +0100 (CET) (envelope-from fuz) Date: Mon, 1 Dec 2025 16:31:19 +0100 From: Robert Clausecker To: Jessica Clarke Cc: Kristof Provost , Robert Clausecker , "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Subject: Re: git: 2fb8cbc6ef1b - main - libc/tests: add stdbit test framework and unit tests Message-ID: References: <692c9966.26e27.70621b5b@gitrepo.freebsd.org> <3E139664-C0CE-4BB9-9225-66D7D44D644E@FreeBSD.org> <6903AA87-20BC-4060-A199-4100FC7CD8EB@freebsd.org> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <6903AA87-20BC-4060-A199-4100FC7CD8EB@freebsd.org> X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:16276, ipnet:2001:41d0::/32, country:FR] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4dKntd6KyTz3S8S Hi Jessica, Am Mon, Dec 01, 2025 at 02:04:22PM +0000 schrieb Jessica Clarke: > On 1 Dec 2025, at 13:56, Kristof Provost wrote: > > > > On 30 Nov 2025, at 20:22, Robert Clausecker wrote: > > The branch main has been updated by fuz: > > URL: https://cgit.FreeBSD.org/src/commit/?id=2fb8cbc6ef1b3cc6cd60e5db07f8305623f9b044 > > commit 2fb8cbc6ef1b3cc6cd60e5db07f8305623f9b044 > > Author: Robert Clausecker fuz@FreeBSD.org > > AuthorDate: 2025-11-18 17:33:12 +0000 > > Commit: Robert Clausecker fuz@FreeBSD.org > > CommitDate: 2025-11-30 19:21:52 +0000 > > libc/tests: add stdbit test framework and unit tests > > > > This adds unit tests for all 70 functions in . > > > > I'm sorry for the test framework, but it makes it so I don't > > have to write 70 unit tests by hand. > > > > Reviewed by: adrian, des > > Approved by: markj (mentor) > > MFC after: 1 month > > Differential Revision: https://reviews.freebsd.org/D53660 > > > > I’m having issues running the tests now. > > I get this kyua error doing kyua list in /usr/tests/lib: > > kyua: E: Load of 'Kyuafile' failed: Failed to load Lua file 'Kyuafile': Kyuafile:48: Load of 'libc/Kyuafile' failed: Failed to load Lua file 'libc/Kyuafile': libc/Kyuafile:19: Load of 'libc/stdbit/Kyuafile' failed: File 'libc/stdbit/Kyuafile' not found. > > > > That’s presumably because there’s no Kyuafile (or indeed anything at all) in /usr/tests/lib/libc/stdbit. > > It’s not immediately obvious to me what went wrong to cause that, but I’m relatively confident it’s related to this commit. > > Best regards, > > Kristof > > Because TESTSDIR is /usr/tests/lib/libc/tests/stdbit thanks to the > location of libc’s tests in the src tree. That’s meant to be overridden > for every subdirectory, whether by including ../Makefile.netbsd-tests, > in the case of all the NetBSD-imported ones, or by manually overriding > it, such as in lib/libc/tests/iconv/Makefile. > > It would've been nice to test these tests prior to commit. Was that not > done? I ran "make check" in lib/libc/tests/stdbit and it seems to have passed. I was not aware that this is insufficient. I will develop a fix and add it. A guide on how to add a new directory to the test suite would also be nice. Yours, Robert Clausecker -- () ascii ribbon campaign - for an encoding-agnostic world /\ - against html email - against proprietary attachments From nobody Mon Dec 1 15:33:50 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKnxl6MtPz6JlFW for ; Mon, 01 Dec 2025 15:34:03 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) (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 4dKnxl3cggz3Scb for ; Mon, 01 Dec 2025 15:34:03 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-wm1-f47.google.com with SMTP id 5b1f17b1804b1-47774d3536dso35452495e9.0 for ; Mon, 01 Dec 2025 07:34:03 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764603242; x=1765208042; 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=pFQuMTl/NWkK/YpatDEKTT6R86YryTGUTNFOw/rmHTs=; b=MTesBA+uYET1oHmAOJ5KFGFcvwc1awlReCR3TvfJL0Ruabd+qlN/mFJCggSLlrHzvA M8OweRElmwQJGtJG9bgnu6kFAQK4LMJr32Vg049M1jb0yfF4Gl4wnrnazkUxeWC0GPHW 1fBtpMWzWgrxWDL2BA8lM6O9Q40/NdpIWfmouV9T5dPUG/2n8/C5dBDNpFBXmjaw2fE8 jhkL4ZpzNbIy+NiO1RryBrLOaCKPRY9UKTgTmRUAfKx6DRk3/W6KGwXIVa/+CSYem0RZ g38kAN0TqJScEy3M2sTHgux7p6VFY+qpXTmCPb0O3YSflpuiKXJoqZrR+UeHPFtbvetJ ZZfg== X-Forwarded-Encrypted: i=1; AJvYcCWCI0HquQzWrrfPq6YJRf7TJ35LLIS/BfjNPpR86NyuIxpXt2owWYC3OYbpp9eFWyo2Q8Z9+gc4MKHhaUxykqwURzQy@freebsd.org X-Gm-Message-State: AOJu0YyLjtDzlNyxI6eHJBhUx/IiPUc0ixQRiEYTkD8YvOqB2ct3t2Ev KdFombnrE/97Fahk4cxhsnarMyFoFnE9ybsZdlIoNZ3zatwYcGhPrtl8zWlU0tp9678= X-Gm-Gg: ASbGncukn+4bS3kZps6T/ItSAP3JZa3N5mgJWLAdqpQ9HzONj/0IXLpv9K/I18uZ42R T/dEJ5BCJEPNKxfDIWA+02XaKSSqpk7wBpmQ6H5PlPBp5I3cHHrebmbPLT1y2fuXhForLM6JrTq N9n2+zX9yBAKFLTgrbytTfjTMA3scwCZsFHFy5xVqDu6EyluZ9IHMa9SjsIA6HmqTMc6agiI20w SiLWN96d3rEl60l11aXSiTik699Y2lImKrTSo+qymTKByieAWyQi8kEaaIjo6EyOvsG4jnnVl0t NOoviaoaQuAdS9qhJ/k2ynOwbsSbcs5pbjdeBrZH+WB4NWWTVn9AKFi2ABI2HxC0pTOf7vfScBy zA5yl9LWbrcMXDfDqTgvz7cz76kbnxNtTKS6nmWM3DTx6RX56REPh6T0Dj8xCy5PBufFAV6xCjp xrwQMIvH083Wt0tGCSUKBCeJ29L+fZOr5/AGFrVoEEcsE7XfNKErKf X-Google-Smtp-Source: AGHT+IGfWBkjOePsq5nt3CwNKPFA8dfScmKmgD35ZDlgcL8OMk+t/imfn4gIDrtmLaLSVAxkOuL69g== X-Received: by 2002:a05:600c:204b:b0:477:9d31:9f76 with SMTP id 5b1f17b1804b1-477b9ee4fd0mr317168495e9.12.1764603241506; Mon, 01 Dec 2025 07:34:01 -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-42e1ca1a396sm26632191f8f.22.2025.12.01.07.34.00 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 01 Dec 2025 07:34:01 -0800 (PST) Content-Type: text/plain; charset=us-ascii List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3864.200.81.1.6\)) Subject: Re: git: 029a09f18032 - main - sys/_types.h: Actually unbreak gcc build From: Jessica Clarke In-Reply-To: Date: Mon, 1 Dec 2025 15:33:50 +0000 Cc: Brooks Davis , Dag-Erling Sm??rgrav , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: References: <692c1d02.367c7.22c28c58@gitrepo.freebsd.org> To: Robert Clausecker X-Mailer: Apple Mail (2.3864.200.81.1.6) X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4dKnxl3cggz3Scb On 1 Dec 2025, at 15:27, Robert Clausecker wrote: >=20 > Am Mon, Dec 01, 2025 at 09:40:40AM +0000 schrieb Brooks Davis: >> On Sun, Nov 30, 2025 at 10:31:30AM +0000, Dag-Erling Sm??rgrav wrote: >>> The branch main has been updated by des: >>>=20 >>> URL: = https://cgit.FreeBSD.org/src/commit/?id=3D029a09f18032353a9ae874590b879322= efc6e53a >>>=20 >>> commit 029a09f18032353a9ae874590b879322efc6e53a >>> Author: Dag-Erling Sm??rgrav >>> AuthorDate: 2025-11-30 10:30:45 +0000 >>> Commit: Dag-Erling Sm??rgrav >>> CommitDate: 2025-11-30 10:31:09 +0000 >>>=20 >>> sys/_types.h: Actually unbreak gcc build >>=20 >> Thank you for addressing this issue. I'm going to follow up with a >> different approach that doesn't use __has_feature. It's annoying how >> recalcitrant GCC has proved about this functionality. >=20 > Maybe we should add __has_feature() polyfill to . There is one, but sys/_types.h does not include sys/cdefs.h. Jessica From nobody Mon Dec 1 15:34:13 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKny06YVYz6Jkng; Mon, 01 Dec 2025 15:34:16 +0000 (UTC) (envelope-from fuz@fuz.su) Received: from fuz.su (fuz.su [IPv6:2001:41d0:8:e508::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-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "fuz.su", Issuer "fuz.su" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKny04zGLz3T1G; Mon, 01 Dec 2025 15:34:16 +0000 (UTC) (envelope-from fuz@fuz.su) Authentication-Results: mx1.freebsd.org; none Received: from fuz.su (localhost [127.0.0.1]) by fuz.su (8.18.1/8.18.1) with ESMTPS id 5B1FYEM0009875 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Mon, 1 Dec 2025 16:34:15 +0100 (CET) (envelope-from fuz@fuz.su) Received: (from fuz@localhost) by fuz.su (8.18.1/8.18.1/Submit) id 5B1FYEao009874; Mon, 1 Dec 2025 16:34:14 +0100 (CET) (envelope-from fuz) Date: Mon, 1 Dec 2025 16:34:13 +0100 From: Robert Clausecker To: Jessica Clarke Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 5f529f9e292a - main - libc: Fix TESTSDIR for new stdbit tests Message-ID: References: <692da1c6.289b3.56e4faf@gitrepo.freebsd.org> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <692da1c6.289b3.56e4faf@gitrepo.freebsd.org> X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:16276, ipnet:2001:41d0::/32, country:FR] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4dKny04zGLz3T1G Hi Jessica, Am Mon, Dec 01, 2025 at 02:10:14PM +0000 schrieb Jessica Clarke: > The branch main has been updated by jrtc27: > > URL: https://cgit.FreeBSD.org/src/commit/?id=5f529f9e292a30c065c316ed5fd0d23e07b26e5c > > commit 5f529f9e292a30c065c316ed5fd0d23e07b26e5c > Author: Jessica Clarke > AuthorDate: 2025-12-01 14:06:21 +0000 > Commit: Jessica Clarke > CommitDate: 2025-12-01 14:06:21 +0000 > > libc: Fix TESTSDIR for new stdbit tests > > Otherwise the directory created by etc/mtree/BSD.tests.dist, which is > where these belong, and referred to by the generated Kyuafile for > /usr/tests/lib/libc (via stdbit's existence in TESTS_SUBDIRS), ends up > empty with no Kyuafile, which is an error for kyua. > > Reported by: kp > Fixes: 2fb8cbc6ef1b ("libc/tests: add stdbit test framework and unit tests") > --- > lib/libc/tests/stdbit/Makefile | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/lib/libc/tests/stdbit/Makefile b/lib/libc/tests/stdbit/Makefile > index 37450056007a..8dbc86528de3 100644 > --- a/lib/libc/tests/stdbit/Makefile > +++ b/lib/libc/tests/stdbit/Makefile > @@ -1,3 +1,5 @@ > +TESTSDIR= ${TESTSBASE}/lib/libc/stdbit > + > # ensure libc functions are tested, not clang's builtins > CFLAGS+= -fno-builtin Many thanks for the quick fix! Yours, Robert Clausecker -- () ascii ribbon campaign - for an encoding-agnostic world /\ - against html email - against proprietary attachments From nobody Mon Dec 1 16:38:04 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKqMd1sJ3z6JrwX for ; Mon, 01 Dec 2025 16:38:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKqMc6ZxZz3d36 for ; Mon, 01 Dec 2025 16:38:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607084; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WaO8opeLr8crTl+7YB4o4BUVJfyOPbd3S6N9hUqNNwY=; b=r5REoWbpQ7MwxXHNw5Jc2ibH6LPFnOb454qIFu3zz9L1vWfPqWbQREogpUdesXhiQWHwcL JlU8Ebnfr/x+tENH1BJCPxsToON/QaomZCjSEZorUoM0nQNearrzfZrpDF/xQQ/7tdizNH wQdjZRZb2XuGKg1mgDWVaSToVOYOgiu2/ysrGkrUmPr/B3oASd5qTCrr15ZxSqtItfpdJQ QPTrv6upsIfg3PqtnJdfgQufwDrynw9DfSDFL1fECV4kJR1o9WBlfQctrd5zvpG7uPdwUK v+WWjoz0kbLO2uHlWuyOFMD8z6u1d19SZLphbraXGFdvw2vN40bvHS6U9V221g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607084; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WaO8opeLr8crTl+7YB4o4BUVJfyOPbd3S6N9hUqNNwY=; b=U7CDqjF/eqV8yuo5ednQ7qXsGhi90rDFXdzDSsIt+3D90FksXqsl4SaYi0Ch6mowfmDNy/ 8NDYRa9AFO9BB2M4RFDfFemx0ukzCLSBv/R97RYy+iJWyGgAuzCwrGxoVUx2tLn+SDporB Sv1G5njA0FMaa310C/q+Bx2K5x1wR6B/nXD4Q6x4XfOnfRydaCe5nIzce4oDQkpr3ac2bt E68Nh8nKhr9GZfXoFb8JCfRlc51gGpqnCFyR4dGCHSgByH5UIQefel/p3CmZrHm/or8VwL GFHzVERD40FlAbQek4NL1+6F+1mz6/YwGh4l5RirULkbbxt33ID36Uuwnq0TGw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764607084; a=rsa-sha256; cv=none; b=L6u2+RBmsXzcZpw+28LMKk7aNlIfrajL3BxHvewQf2+wcObtEM1Up/mQOoNfb+8sR8b9XO EhopKbJe9guO35q0yEEoOQ6hV4oyILTvcteEZHU1j10EKilD/xUpLA9jwxQXMcZsTmgMRF zdSNBLFM6HCUQF7aN9wNKd0RTon8v0DEmEt59cXEoq+w9s+9tRNuXRdBKpsJ0cUyh2qnfc Qz6ayB7SlunFoKVhScAPyo0M8QzHeo0BnzPDg/ZRRNx/WlDYHB6fj3nCq2npMhXln7Hw9n vrqgUMU6Yi3T39ZxTviB+V9pXB20M/oLhfnMSU8vxnQmi5eB9aG0X4AwIl1ItA== 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 4dKqMc5F6QzCmc for ; Mon, 01 Dec 2025 16:38:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 35a6a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 16:38:04 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 3bba28c262f8 - stable/15 - gdb: Fix some PEP 8 violations List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 3bba28c262f88b6c7fc98d789693e611a1b60463 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 16:38:04 +0000 Message-Id: <692dc46c.35a6a.5846a7a8@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=3bba28c262f88b6c7fc98d789693e611a1b60463 commit 3bba28c262f88b6c7fc98d789693e611a1b60463 Author: Mark Johnston AuthorDate: 2025-11-19 13:58:11 +0000 Commit: Mark Johnston CommitDate: 2025-12-01 16:37:56 +0000 gdb: Fix some PEP 8 violations Silence some warnings in my editor. No functional change intended. MFC after: 1 week (cherry picked from commit 32605b159f3fea3a5d4710055681650f3de9ea68) --- sys/tools/gdb/acttrace.py | 2 ++ sys/tools/gdb/freebsd.py | 3 +++ sys/tools/gdb/pcpu.py | 3 +++ sys/tools/gdb/vnet.py | 3 ++- 4 files changed, 10 insertions(+), 1 deletion(-) diff --git a/sys/tools/gdb/acttrace.py b/sys/tools/gdb/acttrace.py index fdd18a4833cd..da79fda59da1 100644 --- a/sys/tools/gdb/acttrace.py +++ b/sys/tools/gdb/acttrace.py @@ -11,11 +11,13 @@ import gdb from freebsd import * from pcpu import * + class acttrace(gdb.Command): """ Print the stack trace of all threads that were on-CPU at the time of the panic. """ + def __init__(self): super(acttrace, self).__init__("acttrace", gdb.COMMAND_USER) diff --git a/sys/tools/gdb/freebsd.py b/sys/tools/gdb/freebsd.py index 81ea60373348..f88eef876c7f 100644 --- a/sys/tools/gdb/freebsd.py +++ b/sys/tools/gdb/freebsd.py @@ -6,6 +6,7 @@ import gdb + def symval(name): sym = gdb.lookup_global_symbol(name) if sym is None: @@ -72,4 +73,6 @@ def tdfind(tid, pid=-1): tdfind.cached_threads[int(ntid)] = td if ntid == tid: return td + + tdfind.cached_threads = dict() diff --git a/sys/tools/gdb/pcpu.py b/sys/tools/gdb/pcpu.py index 94c451e6eca5..08ae81e5121e 100644 --- a/sys/tools/gdb/pcpu.py +++ b/sys/tools/gdb/pcpu.py @@ -7,6 +7,7 @@ import gdb from freebsd import * + class pcpu(gdb.Function): """ A function to look up PCPU and DPCPU fields by name. @@ -16,6 +17,7 @@ class pcpu(gdb.Function): omitted, and the currently selected thread is on-CPU, that CPU is used, otherwise an error is raised. """ + def __init__(self): super(pcpu, self).__init__("PCPU") @@ -73,5 +75,6 @@ class pcpu(gdb.Function): obj = gdb.Value(pcpu_base + pcpu_entry_addr - start + base) return obj.cast(pcpu_entry.type.pointer()).dereference() + # Register with gdb. pcpu() diff --git a/sys/tools/gdb/vnet.py b/sys/tools/gdb/vnet.py index 5f416b2a515a..6175a5d6f551 100644 --- a/sys/tools/gdb/vnet.py +++ b/sys/tools/gdb/vnet.py @@ -5,9 +5,9 @@ # import gdb -import traceback from freebsd import * + class vnet(gdb.Function): """ A function to look up VNET variables by name. @@ -18,6 +18,7 @@ class vnet(gdb.Function): pointer to a struct vnet (e.g., vnet0 or allprison.tqh_first->pr_vnet) or a string naming a jail. """ + def __init__(self): super(vnet, self).__init__("V") From nobody Mon Dec 1 16:38:05 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKqMd6jtLz6Js26 for ; Mon, 01 Dec 2025 16:38:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKqMd5Qlpz3d0c for ; Mon, 01 Dec 2025 16:38:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607085; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Gzv5Yz8n5fjyStb2Rju7ZJBhWWUJ+11Ax1m3qgh4GF0=; b=UF1QFBg8hWAmR6cQP69M/x5HGApEW8U4ClZ0TDSrvGsiQRGrxEtzHsYxViRRl0BPJbFtcV 017bhM5vqKhuIfhX7gCHfi95EFDp52MbIoBnDoEMNtiID50b4Gy0gD/8Kv5V+kpWNciWCq /rNqKUofCTIVPTmI3wGUBlX+kgT5xh5ib03e6K7eWWj0AFiBeU6DpPDKaO3zsyjdiVDisC E/L1QgO7j3aU2XUID4XfPteZo4Wubv9kNOFzRrPng5EAuS9LSfQxj4ovH/C5qKyIwDv3Gf F04K/q6rxTc5Um6TRdkE8TmbdceQK1dOuHKiWwoufrt5ZFDPZxUsiSwssJBa6g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607085; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Gzv5Yz8n5fjyStb2Rju7ZJBhWWUJ+11Ax1m3qgh4GF0=; b=fvYZ8q3ZblFH14O0bc1H2L3ixUafBrjfn1Y1pxatybG8yF49eZlYqr1yWhqkreqLl7BizV YFypfR4llOlzpeTFUvgIs9imilPLzvIfiY/sZ7L5uVMJVl22TvEQXdd0Y71izb4Q1VKOA5 yxHzkcaw0Lr+I2UcF7UM+VRBGfqhsI6i2km8XhBRWC5AffwAPvLn4La14rNXcL5Ox4l1xw 7obFwCaQF9Ob3ZX3ew3+tjAhgHes5HZBfEv5m/kXee9PY1gBAtM8dpveZXhz+6H/AvwqFj cu8RRAEjgL17XPXg/MnenOqKHnSPDh9AQaz6VZgdycmDsp1MVy+lTY2Ok2tP5Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764607085; a=rsa-sha256; cv=none; b=J/4Kb/27vPfIvrN9nTqNOWEk4z1WDmU3ui5VSHs5yHajBNR9+ISoPpgY6mUUZGU1c0/F+L SMvdpAz8/Wn4ZUmz1n541rCtyp8LkaffUS1NfhxwmCUkU/YN731/3vqShnUjzHU2njytBh ZEtc1PLPKDqio+blsWqrP0e1j0VI8oBFUjcyAq+oySas3chK6jqxgxnHxXovxabLLn8YaS U3aamkWi21oZXbRBWS+8isdn15Z2Q9IlJhJmawfe1VGKcEJBPsuxVvo+aQnQCasClxzbtM h+2bIdrRqZsXlzfOsAEZwtinH3lKokG+P8NPfPlcd8nKEZZx4TLjIu4eQiXOyQ== 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 4dKqMd4zhZzD7T for ; Mon, 01 Dec 2025 16:38:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37291 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 16:38:05 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: c782957a4dd2 - stable/15 - jail: Make jaildesc_ops const List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: c782957a4dd29f2f7d61e83512bf994e8ec66e8d Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 16:38:05 +0000 Message-Id: <692dc46d.37291.29587d17@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=c782957a4dd29f2f7d61e83512bf994e8ec66e8d commit c782957a4dd29f2f7d61e83512bf994e8ec66e8d Author: Mark Johnston AuthorDate: 2025-11-19 16:02:08 +0000 Commit: Mark Johnston CommitDate: 2025-12-01 16:37:56 +0000 jail: Make jaildesc_ops const No functional change intended. MFC after: 1 week (cherry picked from commit e22cc773f1a926fed3558c51bf0dd7890af26a2b) --- sys/kern/kern_jaildesc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/kern/kern_jaildesc.c b/sys/kern/kern_jaildesc.c index a564393d3366..f4e31801201f 100644 --- a/sys/kern/kern_jaildesc.c +++ b/sys/kern/kern_jaildesc.c @@ -54,7 +54,7 @@ static fo_close_t jaildesc_close; static fo_fill_kinfo_t jaildesc_fill_kinfo; static fo_cmp_t jaildesc_cmp; -static struct fileops jaildesc_ops = { +static const struct fileops jaildesc_ops = { .fo_read = invfo_rdwr, .fo_write = invfo_rdwr, .fo_truncate = invfo_truncate, From nobody Mon Dec 1 16:38:06 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKqMf72cmz6Js98 for ; Mon, 01 Dec 2025 16:38: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKqMf63dVz3d5r for ; Mon, 01 Dec 2025 16:38:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607086; 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=zUnQjJOa2AHW3MN637NZUxAclwBqdVau3QF4A7qzikI=; b=vBBxt+GVDvyJMJIMBNd/oW4wCcF1PXkN8C2Jq8Oeub0kyQFcSuaLCYwlLFNI6N3TjRQvgo PWxRHHKiEAJXhmLfRgBl6Uzgoqsi/w7wyrqmPOWWpQZc2TXEr4X6xm/hD69Yp/NP2FOIdc 2B2OVt85z4pNlgopjxOVs693Gb1MsYoX//QkI396r8ayPhrIZVo7HwGodRaPEju1PhMCtG PXFJhuSvDHe3E5PmXV7JfwO75VK/a7xyPjOSBlQGEl71CQ1Hr7CKic7SVb6rB72u1qXBpT ZLxEkUTbV4IuVizFfBHtQ7KAAU4qMUJPKTj42cFAkE5xjFsBgtoe8DGIYKdxiA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607086; 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=zUnQjJOa2AHW3MN637NZUxAclwBqdVau3QF4A7qzikI=; b=NlsRRTCdNSWLtCIbBr3spNAxkGKls7fTt1o6zXXNwrVOSezscLRA8mMfThd8o/yubDpGVC TPdiQ6CoSFClyW9EL1YxIbrThl/RirpXu/zqe4wW8qv3RY2mPyAAM3WCy1bp+kF3KrlMAC LNKcQNGJK789n4LmG5Fv17kQ7GQV+h9wkoOUCS8uGES8446cx9PzVLE8nuwdCgHl+tnWgm xYBtJsxzl1/xNNATa5s9TnDevRcj8aQR7BP52oL/U2n2UQFupE7K8PIJKvrKygv+wlXoHC 4kiPmGCpXC2D+K0ExQT8xWWqH+JcZ1YsmW0jLQioQ5RpcbwpckkdABFvUY016w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764607086; a=rsa-sha256; cv=none; b=Z8mg6X++AFSaMyFeSRc/VYAEFLld8FQALJDApsOGA9ocgn+4Dmh//dDX2iIRxyfEnzhIcR 2wet5ru+sFh8ygSfPhUrjzJHA7W17l8X4a1VR9IGBOHjUYE/hNWLoZgwpxnc/GTspTnxus oIXeUcG2zQoviCEU6C+w61Ycw4AUHoQJo1q4WuQAfyl92wt8Rfyowu4hcNIuhJA2e9zNbo 7fMBqdw08qAUjFRaH/rFCwdxWVKBV774vO95KNrxjvVVMcpqVP/sxBHwQWkHFvGkykeOY9 E3nf5+tN8bvjj7lxRbNdgmxhd+TEEb7jmNxvF0n5ONEJNO2GxtFU+aYz2+NFPA== 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 4dKqMf5QKVzCpc for ; Mon, 01 Dec 2025 16:38:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 355e5 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 16:38:06 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Quent=?utf-8?Q?in Th=C3=A9?=bault From: Mark Johnston Subject: git: 10a15419c460 - stable/15 - ng_device: replace dependency on vnode.h with fcntl.h List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 10a15419c460dc59ab346f352ca66f5b7f8fcf06 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 16:38:06 +0000 Message-Id: <692dc46e.355e5.35b96da1@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=10a15419c460dc59ab346f352ca66f5b7f8fcf06 commit 10a15419c460dc59ab346f352ca66f5b7f8fcf06 Author: Quentin Thébault AuthorDate: 2025-08-28 06:27:03 +0000 Commit: Mark Johnston CommitDate: 2025-12-01 16:37:56 +0000 ng_device: replace dependency on vnode.h with fcntl.h Update to current convention of using fcntl.h O_* flags instead of vnode.h IO_* ones, as explained in sys/fs/devfs/devfs_vnops.c. Signed-off-by: Quentin Thébault Reviewed by: imp, jhb Pull Request: https://github.com/freebsd/freebsd-src/pull/1827 (cherry picked from commit 593d432e5852a254eeef83a8b1762492bb08668e) --- sys/netgraph/ng_device.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/netgraph/ng_device.c b/sys/netgraph/ng_device.c index e4fcdfc635cb..79cae9933a5a 100644 --- a/sys/netgraph/ng_device.c +++ b/sys/netgraph/ng_device.c @@ -51,7 +51,7 @@ #include #include #include -#include +#include #include #include @@ -457,7 +457,7 @@ ngdread(struct cdev *dev, struct uio *uio, int flag) do { IF_DEQUEUE(&priv->readq, m); if (m == NULL) { - if (flag & IO_NDELAY) + if (flag & O_NONBLOCK) return (EWOULDBLOCK); mtx_lock(&priv->ngd_mtx); priv->flags |= NGDF_RWAIT; From nobody Mon Dec 1 16:38:07 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKqMh1BQWz6Js73 for ; Mon, 01 Dec 2025 16:38:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKqMg6ZjGz3d3H for ; Mon, 01 Dec 2025 16:38:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607087; 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=rjCnJpUPIYnOhQCnW+5oJe2FZl7l1sZs6ZoiyDlo2qI=; b=cXNOOQHBsmG+0pFGT7+5wFuH6qkFzkq1/dbvA/9hf5yV2+S0g4Dd+URnPtRXjfyL4+VSKZ J0paBfu+is/5ZXuM8cLooSG1VjsvuoD43aFfyd53zl6hIWZQn8nbhsBxgL3nK7zJKkRnSy yrs8JyN5e7su4INZBcz2WWh4LOrbgv19wiEVnxEPUV2e6+Il7MAHPZuTDqs12xn8GLg+7c XPtjsfLqjh/Mi8Vc9aWxP+iCgX5Dk22EZLxgwUm4hj8jT92C4OgraKEuKaSRHoAb0QutL4 4YqJ3a8fN8f7a+tn1bp8w/s98FAI/RA/CGQOYspBNcOrM2aVcsseDPfEtiPuLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607087; 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=rjCnJpUPIYnOhQCnW+5oJe2FZl7l1sZs6ZoiyDlo2qI=; b=MO8Fr77q/IBvmh/SFHJ/JpMqdt8ZspC29Cf0ewUaCb+ahGuUrcEvpaNGGW+FzGMaO6EF0D /4CeN2FrqRXGhCbR9dATofdvVXBELoxzBtFk3ZmmkM8LLrqjnjJWOS6aFS+hTg3AVMo2Kd zEmKg7ZVpES1F6OWvLWxa32FCZxu3wzoYhVAgzkYiz7DgLQ1O2pSRULDDCmw8AsOz177eK HwkKOjCtl+aKZk7D7ttQUoaJJSmxw1tSxC+mCCYt1uLgynwo/ixmGnoQ/4B/nsm01YOqmb 8REq+myNBmHMCyF+bsu0ud1dpl6qIdmgFS24xQ++cgmA8IFoMdE2LmpwuJL3aw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764607087; a=rsa-sha256; cv=none; b=X4PIy/t5gLpj+LA/ECsHAoMgt4hC/FCs88DYmcJkjTKNiuBLItC03+BTmjvhrjEt7Ua7Yp wu1T1xumv1oeKXxNF46GLx/iWUaTSZtS0fZUyoVgw+qXaGPQOGARkLp10t0A26tXxpQecb +I2R2x6OeWWtdfrVphxz4Q+IKqi5VVanBOODrawvFjUZB2D7UIccsv5jxpGQB1Z9PFuCN7 0awNfHumQAeJm7U+tIfESL1UWUwzKQNnd7onsynqS/M4ZbvJiHAOHGTZ4yhxxONq/OwP/G nv4X4ND/j4iJIyaiZEYvDKP9uZzX7ZJe2SsS3A8K4SisWcoqCCUMqoyF+mRSug== 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 4dKqMg61hBzDCV for ; Mon, 01 Dec 2025 16:38:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37ac8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 16:38:07 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Quent=?utf-8?Q?in Th=C3=A9?=bault From: Mark Johnston Subject: git: 57e4e7d12598 - stable/15 - ng_device: enable setting the device to non-blocking mode List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 57e4e7d125983779d96e3a4fddcad1b5495349f8 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 16:38:07 +0000 Message-Id: <692dc46f.37ac8.72b106dd@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=57e4e7d125983779d96e3a4fddcad1b5495349f8 commit 57e4e7d125983779d96e3a4fddcad1b5495349f8 Author: Quentin Thébault AuthorDate: 2025-08-28 08:19:41 +0000 Commit: Mark Johnston CommitDate: 2025-12-01 16:37:57 +0000 ng_device: enable setting the device to non-blocking mode Return success when FIONBIO or FIOASYNC ioctl are received in order to support being set to non-blocking through fcntl(2). We return an error on FIOASYNC with non-zero data argument since we do not support O_ASYNC. Signed-off-by: Quentin Thébault Reviewed by: imp, jhb Pull Request: https://github.com/freebsd/freebsd-src/pull/1827 (cherry picked from commit 9fadaee7ecce02ab11cfbb18ea63b9bf1fb11bfc) --- sys/netgraph/ng_device.c | 41 ++++++++++++++++++++++++++++++++++------- 1 file changed, 34 insertions(+), 7 deletions(-) diff --git a/sys/netgraph/ng_device.c b/sys/netgraph/ng_device.c index 79cae9933a5a..eca3a916a59f 100644 --- a/sys/netgraph/ng_device.c +++ b/sys/netgraph/ng_device.c @@ -38,20 +38,21 @@ #endif #include +#include #include +#include +#include +#include #include #include #include #include #include #include -#include #include #include #include -#include #include -#include #include #include @@ -135,9 +136,7 @@ static d_close_t ngdclose; static d_open_t ngdopen; static d_read_t ngdread; static d_write_t ngdwrite; -#if 0 static d_ioctl_t ngdioctl; -#endif static d_poll_t ngdpoll; static struct cdevsw ngd_cdevsw = { @@ -146,9 +145,7 @@ static struct cdevsw ngd_cdevsw = { .d_close = ngdclose, .d_read = ngdread, .d_write = ngdwrite, -#if 0 .d_ioctl = ngdioctl, -#endif .d_poll = ngdpoll, .d_name = NG_DEVICE_DEVNAME, }; @@ -397,6 +394,36 @@ ngdclose(struct cdev *dev, int flag, int mode, struct thread *td) return(0); } +/* + * Process IOCTLs + * + * At this stage we only return success on FIONBIO to allow setting the device + * as non-blocking. + * + */ +static int +ngdioctl(struct cdev *dev, u_long cmd, caddr_t data, int flag, + struct thread *td) +{ + int error; + + switch (cmd) { + case FIONBIO: + error = 0; + break; + case FIOASYNC: + if (*(int *)data != 0) + error = EINVAL; + else + error = 0; + break; + default: + error = ENOTTY; + } + + return (error); +} + #if 0 /* * The ioctl is transformed into netgraph control message. * We do not process them, yet. From nobody Mon Dec 1 16:38:08 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKqMj3tW0z6Js9B for ; Mon, 01 Dec 2025 16:38:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKqMj1VDBz3dGD for ; Mon, 01 Dec 2025 16:38:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607089; 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=aogYQzdFLksKp1JGIFG0BBG7z4c3HDG7JjRUMP6bjH4=; b=tQF5rvgADlyF7LSkbsAFPhVGtpup/wnC7OFol7kWWSA3Ag3fPF6/89veCFZOY3KN68QKJS gkzHwWh0Iap153NXTOIP1womcecqPKgXTFrkQipA/pvdgk9A1RzwnWZ2NpFV9oDJYcAKIf 4HJrNolDI61t0XVMjkXU8rXt9+Ss7p+Rsskd7m2tnRM7aYo4IAdDia2WItLvaGpYx+LI/I 4tTosq3lBsPk1Jkvq6hzPz+NtzqgtxYagbby4r7nwIF+h2bucRm7M7L5p6YdNnsJJw28zk 9fMkywYeiGgyyEc5UySb2Q9NCpsZdDLIqqsXyYlV06D3pi4p29dO/2FiHDFE/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607089; 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=aogYQzdFLksKp1JGIFG0BBG7z4c3HDG7JjRUMP6bjH4=; b=NFJLBdko1vRVi2CBZadh+DQ0Nk0wSHjYvLKVOxU3WKpEU9UWB3wYDxKSa1qEDZnYu/9oo3 4APvFtaDZ/vIj3ebFahuuRPnN0ieoVD2I0bpdXMv3Mk4UAAdAaboCASdmU5bdMhxaLHo7m S56apo54X0szkelDeLmoW9ng6/Y+Nr7RsJnmOfmwwgfwyeLT8BxEhDSXjv+RYaaoB7vy+Z xTOa9NjVhC4ShWvP6LsbDQSatGKKiDn4oucoUir6x4HowddQnakH0JT5tMUbvFo4vf63Wp Bvj9J65e9hFXl2dKGtP9EnRINSMJpgdJd9DxaBs2D57jVfSsMsS6ruJ0jtvLZg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764607089; a=rsa-sha256; cv=none; b=EbzWZRwC3oiAeVz+UfPWdF7BEHvX2uIgjJ4TrVMFFmqbs1K5bDCez0lKpnjgdzGtfJpWfR AYsSa67QvqlYtk6L8wVwX8luuDVnIlkM+gtmYC6a7CTFzZymxKBOekWGywjHHefHbP1jPS 9rkF254dBlITkwyDziEAewaLAcapYD9DC3sBTNfgvaClkJrEROsEpAh90i+3m7xhnuH58i sDnzjL13Gnm0ADh2++SAvnuLwW/4SXs13MAi0swSSsAPxpSsz43ieyYVFiaxfWyhbhmQsx 58v2nJv06Fne30sMMiuXg75We85QrKEtc1RNc4XPhS3xlyth2ovaooenuvZqdw== 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 4dKqMh6t13zCpf for ; Mon, 01 Dec 2025 16:38:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 36c61 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 16:38:08 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Quent=?utf-8?Q?in Th=C3=A9?=bault From: Mark Johnston Subject: git: f817011fae28 - stable/15 - ng_device.c: improve compliance with style(9) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: f817011fae2838d80bf248f4411a1014cbbdb11a Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 16:38:08 +0000 Message-Id: <692dc470.36c61.36164bbe@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=f817011fae2838d80bf248f4411a1014cbbdb11a commit f817011fae2838d80bf248f4411a1014cbbdb11a Author: Quentin Thébault AuthorDate: 2025-09-08 13:33:03 +0000 Commit: Mark Johnston CommitDate: 2025-12-01 16:37:57 +0000 ng_device.c: improve compliance with style(9) Signed-off-by: Quentin Thébault Reviewed by: imp, jhb Pull Request: https://github.com/freebsd/freebsd-src/pull/1827 (cherry picked from commit bcdbeaeffccb65574ac06001888840d9a15f4edf) --- sys/netgraph/ng_device.c | 63 ++++++++++++++++++++++++++---------------------- 1 file changed, 34 insertions(+), 29 deletions(-) diff --git a/sys/netgraph/ng_device.c b/sys/netgraph/ng_device.c index eca3a916a59f..582f877ff3ed 100644 --- a/sys/netgraph/ng_device.c +++ b/sys/netgraph/ng_device.c @@ -32,7 +32,7 @@ */ #if 0 -#define DBG do { printf("ng_device: %s\n", __func__ ); } while (0) +#define DBG do { printf("ng_device: %s\n", __func__); } while (0) #else #define DBG do {} while (0) #endif @@ -150,9 +150,11 @@ static struct cdevsw ngd_cdevsw = { .d_name = NG_DEVICE_DEVNAME, }; -/****************************************************************************** +/* + ***************************************************************************** * Netgraph methods - ******************************************************************************/ + ***************************************************************************** + */ /* * Handle loading and unloading for this node type. @@ -202,13 +204,13 @@ ng_device_constructor(node_p node) priv->ngddev = make_dev(&ngd_cdevsw, priv->unit, UID_ROOT, GID_WHEEL, 0600, NG_DEVICE_DEVNAME "%d", priv->unit); - if(priv->ngddev == NULL) { - printf("%s(): make_dev() failed\n",__func__); + if (priv->ngddev == NULL) { + printf("%s(): make_dev() failed\n", __func__); mtx_destroy(&priv->ngd_mtx); mtx_destroy(&priv->readq.ifq_mtx); free_unr(ngd_unit, priv->unit); free(priv, M_NETGRAPH); - return(EINVAL); + return (EINVAL); } /* XXX: race here? */ priv->ngddev->si_drv1 = priv; @@ -218,7 +220,7 @@ ng_device_constructor(node_p node) log(LOG_WARNING, "%s: can't acquire netgraph name\n", devtoname(priv->ngddev)); - return(0); + return (0); } /* @@ -286,7 +288,7 @@ ng_device_newhook(node_p node, hook_p hook, const char *name) priv->hook = hook; - return(0); + return (0); } /* @@ -319,7 +321,7 @@ ng_device_rcvdata(hook_p hook, item_p item) } mtx_unlock(&priv->ngd_mtx); - return(0); + return (0); } /* @@ -344,7 +346,7 @@ ng_device_disconnect(hook_p hook) ng_rmnode_self(NG_HOOK_NODE(hook)); - return(0); + return (0); } /* @@ -357,9 +359,11 @@ ng_device_shutdown(node_p node) return (0); } -/****************************************************************************** +/* + ***************************************************************************** * Device methods - ******************************************************************************/ + ***************************************************************************** + */ /* * the device is opened @@ -367,7 +371,7 @@ ng_device_shutdown(node_p node) static int ngdopen(struct cdev *dev, int flag, int mode, struct thread *td) { - priv_p priv = (priv_p )dev->si_drv1; + priv_p priv = (priv_p)dev->si_drv1; DBG; @@ -375,7 +379,7 @@ ngdopen(struct cdev *dev, int flag, int mode, struct thread *td) priv->flags |= NGDF_OPEN; mtx_unlock(&priv->ngd_mtx); - return(0); + return (0); } /* @@ -384,14 +388,14 @@ ngdopen(struct cdev *dev, int flag, int mode, struct thread *td) static int ngdclose(struct cdev *dev, int flag, int mode, struct thread *td) { - priv_p priv = (priv_p )dev->si_drv1; + priv_p priv = (priv_p)dev->si_drv1; DBG; mtx_lock(&priv->ngd_mtx); priv->flags &= ~NGDF_OPEN; mtx_unlock(&priv->ngd_mtx); - return(0); + return (0); } /* @@ -435,21 +439,22 @@ ngdioctl(struct cdev *dev, u_long cmd, caddr_t data, int flag, * */ static int -ngdioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, struct thread *td) +ngdioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, + struct thread *td) { struct ngd_softc *sc = &ngd_softc; - struct ngd_connection * connection = NULL; - struct ngd_connection * tmp; + struct ngd_connection *connection = NULL; + struct ngd_connection *tmp; int error = 0; struct ng_mesg *msg; - struct ngd_param_s * datap; + struct ngd_param_s *datap; DBG; NG_MKMESSAGE(msg, NGM_DEVICE_COOKIE, cmd, sizeof(struct ngd_param_s), M_NOWAIT); if (msg == NULL) { - printf("%s(): msg == NULL\n",__func__); + printf("%s(): msg == NULL\n", __func__); goto nomsg; } @@ -458,12 +463,12 @@ ngdioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, struct thread *td datap->p = addr; NG_SEND_MSG_HOOK(error, sc->node, msg, connection->active_hook, 0); - if(error) - printf("%s(): NG_SEND_MSG_HOOK error: %d\n",__func__,error); + if (error) + printf("%s(): NG_SEND_MSG_HOOK error: %d\n", __func__, error); nomsg: - return(0); + return (0); } #endif /* if 0 */ @@ -474,7 +479,7 @@ nomsg: static int ngdread(struct cdev *dev, struct uio *uio, int flag) { - priv_p priv = (priv_p )dev->si_drv1; + priv_p priv = (priv_p)dev->si_drv1; struct mbuf *m; int len, error = 0; @@ -510,14 +515,14 @@ ngdread(struct cdev *dev, struct uio *uio, int flag) /* * This function is called when our device is written to. - * We read the data from userland into mbuf chain and pass it to the remote hook. - * + * We read the data from userland into mbuf chain and pass it to the remote + * hook. */ static int ngdwrite(struct cdev *dev, struct uio *uio, int flag) { struct epoch_tracker et; - priv_p priv = (priv_p )dev->si_drv1; + priv_p priv = (priv_p)dev->si_drv1; struct mbuf *m; int error = 0; @@ -547,7 +552,7 @@ ngdwrite(struct cdev *dev, struct uio *uio, int flag) static int ngdpoll(struct cdev *dev, int events, struct thread *td) { - priv_p priv = (priv_p )dev->si_drv1; + priv_p priv = (priv_p)dev->si_drv1; int revents = 0; if (events & (POLLIN | POLLRDNORM) && From nobody Mon Dec 1 16:38:10 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKqMk34wbz6Js2K for ; Mon, 01 Dec 2025 16:38: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKqMk0w7Cz3dQF for ; Mon, 01 Dec 2025 16:38:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607090; 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=LmeCURUPxeH70aOEIGWOFSIBAk2A8FFONJagPRmUmaY=; b=mgVbZkJJ4gMiL8q3h7315N887jT//rxiXg6aHZTTCAcAH8pOTf3UOOPvxbOCq47yRcoOF5 T2dm5VqaBFBu/ENmpY4yW/78C6jA5NozSpubWrQZ2ii3MOsHgkauI3xN06V51E+Nl654JW nq3Gtbl0QIqRzQjQi6I+lp+G5F5Mbncw2B8bAeZSpSgJV2g8fKr66OjWvlRGAjVfIg86Si GJ7Xuvsf5IFqeBlNvInkFEppQCW2CzQtqZDXBp7/cbfxS+zGhJsNEuuNCll5e8JFPgnrg6 zO0lmxbSmWMJORGaRZ/hUVSbRfcJDTWju9r9OFVrYkBeuOuO6AofPwRNmXkBBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607090; 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=LmeCURUPxeH70aOEIGWOFSIBAk2A8FFONJagPRmUmaY=; b=YWWbKWOqChRyUmSqa9D9MxO86AKt1roIBNqHfRgwzbPbwqAOReAxWig0R02d8M6xlgGxs6 MHdp1rR/Xc3n6akL7FKxeTkITsA7gWMKgISQWtxIujZyW83cmlKo8EgFDhD6miPkxDlgA0 Y6qt4jPN18bgF7ZsrL5Hhaw/VGTHZT/ukHNKn509YTSiUMOOoaXXoy2Cn+g7kWUff6VML1 KDNSXGGQtjyhOur2IjPqKdPoEwPr/DQ3DcR0AVWLTp4rATN7EmDbITAm7qHvqsjsW85DuY jDome46XZ99Fm0ESamd2pklsrO2SYvOMOIHnmjelZSRtLSKzFpxEsDOygMHh+Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764607090; a=rsa-sha256; cv=none; b=xEkULQZTFe51jbi9GXJBk1dJTqq8bEpBBZZMSj4f36io1VEyiKXPbUBu2t4gmKyhQyx2cJ Zx2o+tl060UwxDq06uyZVqsWB/K6HmhtXCHq6VP/Uvn2bRgjJa0sdisos5ct3HoRJMt1Vw +OZ9zAuNnQtKouAWJdU5764+AdMntZZSkJ5G33p/5Jt5uZX7Q+njZoY8qq4Javz3RQw4cK 2yflXjyoyA0PYo0Fc8vXzGgKYDUA4izrSTB5CFpczy3gUZkIjta48PLSB/ewf/BWZiYy4j Pom2GDfoS7MQwHIm92skX/oE2hvpNm8RS3Xsslu4iMF7Y6y3OEKPwKCqu5/JUg== 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 4dKqMk0RK7zD7Z for ; Mon, 01 Dec 2025 16:38:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 36dbe by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 16:38:10 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Quent=?utf-8?Q?in Th=C3=A9?=bault From: Mark Johnston Subject: git: e1834bc89e64 - stable/15 - ng_device: add kqueue support List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: e1834bc89e640a313ead585fdf2e3f1a944acdde Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 16:38:10 +0000 Message-Id: <692dc472.36dbe.77c3a43d@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=e1834bc89e640a313ead585fdf2e3f1a944acdde commit e1834bc89e640a313ead585fdf2e3f1a944acdde Author: Quentin Thébault AuthorDate: 2025-09-09 03:48:46 +0000 Commit: Mark Johnston CommitDate: 2025-12-01 16:37:57 +0000 ng_device: add kqueue support Signed-off-by: Quentin Thébault Sponsored by: Defenso Reviewed by: markj MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D52541 Pull Request: https://github.com/freebsd/freebsd-src/pull/1880 (cherry picked from commit a505b80b2f038409300cd05e2ea95822942404e2) --- sys/netgraph/ng_device.c | 126 +++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 123 insertions(+), 3 deletions(-) diff --git a/sys/netgraph/ng_device.c b/sys/netgraph/ng_device.c index 582f877ff3ed..066e3be29694 100644 --- a/sys/netgraph/ng_device.c +++ b/sys/netgraph/ng_device.c @@ -3,6 +3,7 @@ * * Copyright (c) 2002 Mark Santcroos * Copyright (c) 2004-2005 Gleb Smirnoff + * Copyright (c) 2025 Quentin Thébault * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -50,6 +51,7 @@ #include #include #include +#include #include #include #include @@ -117,12 +119,15 @@ struct ngd_private { struct ng_node *node; struct ng_hook *hook; struct cdev *ngddev; + struct selinfo rsel; + struct selinfo wsel; struct mtx ngd_mtx; int unit; int ether_align; uint16_t flags; #define NGDF_OPEN 0x0001 #define NGDF_RWAIT 0x0002 +#define NGDF_DYING 0x0004 }; typedef struct ngd_private *priv_p; @@ -138,6 +143,24 @@ static d_read_t ngdread; static d_write_t ngdwrite; static d_ioctl_t ngdioctl; static d_poll_t ngdpoll; +static d_kqfilter_t ngdkqfilter; + +static int ngd_kqread_event(struct knote *, long); +static int ngd_kqwrite_event(struct knote *, long); +static void ngd_kqread_detach(struct knote *); +static void ngd_kqwrite_detach(struct knote *); + +static const struct filterops ngd_read_filterops = { + .f_isfd = 1, + .f_detach = ngd_kqread_detach, + .f_event = ngd_kqread_event +}; + +static const struct filterops ngd_write_filterops = { + .f_isfd = 1, + .f_detach = ngd_kqwrite_detach, + .f_event = ngd_kqwrite_event +}; static struct cdevsw ngd_cdevsw = { .d_version = D_VERSION, @@ -146,6 +169,7 @@ static struct cdevsw ngd_cdevsw = { .d_read = ngdread, .d_write = ngdwrite, .d_ioctl = ngdioctl, + .d_kqfilter = ngdkqfilter, .d_poll = ngdpoll, .d_name = NG_DEVICE_DEVNAME, }; @@ -198,6 +222,9 @@ ng_device_constructor(node_p node) mtx_init(&priv->readq.ifq_mtx, "ng_device queue", NULL, MTX_DEF); IFQ_SET_MAXLEN(&priv->readq, ifqmaxlen); + knlist_init_mtx(&priv->rsel.si_note, &priv->ngd_mtx); + knlist_init_mtx(&priv->wsel.si_note, &priv->ngd_mtx); + /* Link everything together */ NG_NODE_SET_PRIVATE(node, priv); priv->node = node; @@ -206,6 +233,8 @@ ng_device_constructor(node_p node) GID_WHEEL, 0600, NG_DEVICE_DEVNAME "%d", priv->unit); if (priv->ngddev == NULL) { printf("%s(): make_dev() failed\n", __func__); + knlist_destroy(&priv->rsel.si_note); + knlist_destroy(&priv->wsel.si_note); mtx_destroy(&priv->ngd_mtx); mtx_destroy(&priv->readq.ifq_mtx); free_unr(ngd_unit, priv->unit); @@ -319,6 +348,8 @@ ng_device_rcvdata(hook_p hook, item_p item) priv->flags &= ~NGDF_RWAIT; wakeup(priv); } + selwakeup(&priv->rsel); + KNOTE_LOCKED(&priv->rsel.si_note, 0); mtx_unlock(&priv->ngd_mtx); return (0); @@ -334,9 +365,22 @@ ng_device_disconnect(hook_p hook) DBG; + mtx_lock(&priv->ngd_mtx); + priv->flags |= NGDF_DYING; + wakeup(priv); + mtx_unlock(&priv->ngd_mtx); + destroy_dev(priv->ngddev); + + knlist_clear(&priv->rsel.si_note, 0); + knlist_clear(&priv->wsel.si_note, 0); + knlist_destroy(&priv->rsel.si_note); + knlist_destroy(&priv->wsel.si_note); mtx_destroy(&priv->ngd_mtx); + seldrain(&priv->rsel); + seldrain(&priv->wsel); + IF_DRAIN(&priv->readq); mtx_destroy(&(priv)->readq.ifq_mtx); @@ -493,9 +537,13 @@ ngdread(struct cdev *dev, struct uio *uio, int flag) return (EWOULDBLOCK); mtx_lock(&priv->ngd_mtx); priv->flags |= NGDF_RWAIT; - if ((error = msleep(priv, &priv->ngd_mtx, - PDROP | PCATCH | PZERO, - "ngdread", 0)) != 0) + if (priv->flags & NGDF_DYING) { + mtx_unlock(&priv->ngd_mtx); + error = ENXIO; + } else + error = mtx_sleep(priv, &priv->ngd_mtx, + PDROP | PCATCH, "ngdread", 0); + if (error != 0) return (error); } } while (m == NULL); @@ -538,9 +586,12 @@ ngdwrite(struct cdev *dev, struct uio *uio, int flag) if (m == NULL) return (ENOBUFS); + /* Setting VNET is required if connecting to a ng_bridge. */ + CURVNET_SET(priv->node->nd_vnet); NET_EPOCH_ENTER(et); NG_SEND_DATA_ONLY(error, priv->hook, m); NET_EPOCH_EXIT(et); + CURVNET_RESTORE(); return (error); } @@ -561,3 +612,72 @@ ngdpoll(struct cdev *dev, int events, struct thread *td) return (revents); } + +static void +ngd_kqread_detach(struct knote *kn) +{ + priv_p priv = (priv_p)kn->kn_hook; + + knlist_remove(&priv->rsel.si_note, kn, 0); +} + +static int +ngd_kqread_event(struct knote *kn, long hint) +{ + priv_p priv = (priv_p)kn->kn_hook; + struct mbuf *m; + + IFQ_LOCK(&priv->readq); + if (IFQ_IS_EMPTY(&priv->readq)) { + kn->kn_data = 0; + } else { + /* + * Since the queue does not store the total number of bytes that + * could be read across all packets and we do not want to + * traverse the whole queue, we only report the number of bytes + * for the first packet in the queue. + */ + IF_POLL(&priv->readq, m); + kn->kn_data = m->m_len; + } + IFQ_UNLOCK(&priv->readq); + + return (kn->kn_data > 0); +} + +static void +ngd_kqwrite_detach(struct knote *kn) +{ + priv_p priv = (priv_p)kn->kn_hook; + + knlist_remove(&priv->wsel.si_note, kn, 0); +} + +static int +ngd_kqwrite_event(struct knote *kn, long hint) +{ + kn->kn_data = IP_MAXPACKET; + + return (1); +} + +static int +ngdkqfilter(struct cdev *dev, struct knote *kn) +{ + priv_p priv = (priv_p)dev->si_drv1; + + switch (kn->kn_filter) { + case EVFILT_READ: + kn->kn_fop = &ngd_read_filterops; + kn->kn_hook = priv; + knlist_add(&priv->rsel.si_note, kn, 0); + return (0); + case EVFILT_WRITE: + kn->kn_fop = &ngd_write_filterops; + kn->kn_hook = priv; + knlist_add(&priv->wsel.si_note, kn, 0); + return (0); + default: + return (EINVAL); + } +} From nobody Mon Dec 1 16:38:11 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKqMl3qXgz6Js2N for ; Mon, 01 Dec 2025 16:38:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKqMl1y9Jz3dSC for ; Mon, 01 Dec 2025 16:38:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607091; 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=KlrzMYEPkPIyo8u3A5MRjgUWhPYBrtvowo1TM5FcMp4=; b=THH9sxNIGbU8bsn59C7/Uh41C2K/CYjwb+vt3UPRHhDzvVFQt5qDJVNcsi9AHURYb1rVIh fvhdRPi5TNFzapFYBUzLCaw/b22yPdAZP5YVpRr30B7WSp1xuL/4VqCZMMOuxvWczsCzOy aIVC0643zhRTqw+7q9KcZyIMRSgwPUnFHzHbIiKxR0TFNPPgJJqmY0BER/KLb2R0R1X/st SXgUNcmSM2NBnI9Kg53AKWFGXJHOjwq1V72k2wOizaoZo8nRe6B6tMrW/XSGMCepaaQNYJ pIWPRKQNbqbCez/+SVRDuMjNsMbZ+myU2e7J5cUmLFYRsC73ywILhjSS2DM8Cw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607091; 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=KlrzMYEPkPIyo8u3A5MRjgUWhPYBrtvowo1TM5FcMp4=; b=feYE4sbSJfibJn1qSY0Ve/WQyeAI63n5/fYbLBM38R1TiJ5nrqxB9EZQyQKxW4fRembP7y vQNhD5q5/kH2PLN3Unsf9fZxTi2VFQV+j5/krbXD1+TbnyssKAskyjAAaheqWTjKbLGHPl aOE/ZOMoP+GA8V4MsuTZCLTnlcBU+sjMmltdh7gMNcuXgfeokyDsSoKYsmPXyAlDpzzuro kO1COqVFyBhJ2jESknCEVbxcMR7m4BdVBvwrDL/60etHfvFXI9+62uD3CfDmZSnbn5TaPn TICt+Y9v+x3lGC6GLGBez8aS+E2ejNI/ycra0WzQie7UlZoD8ovaOp6zQ8he/A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764607091; a=rsa-sha256; cv=none; b=HW4y1H5r+MNdK37cHOCkaBlvb43FCUKlIm7gCrhZhtaZZS92XbIKdoMUpKBldsu1V81wMu JXUrC5YzMINajTLRuuGKKHoeQHfWZGMz7aq5jgdNaamskh28+rImeyId5gXpoYKSjKZcLB 0/02v7yurSBtfl3JeRiuwsMR2ZcDOl04kU1pn4A2wobSvx5GZq4Qx1EcmPKgBS2NntSrh7 VPuUHvBa/RKpEoB2tcFac7sNkehGQpqG4ckV56gXZA179zTWXLK/fCqlZBoNHKYia20Od+ Vq5nZi2Z4fAB6Y35+90G4Q1A3mGd2SJay8pACQcE1frdUS5VkQBVy73mFGsGPQ== 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 4dKqMl1H1jzCmj for ; Mon, 01 Dec 2025 16:38:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 8103 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 16:38:11 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Quent=?utf-8?Q?in Th=C3=A9?=bault From: Mark Johnston Subject: git: 626cf6c8fcff - stable/15 - bhyve: add support for ng_device network backend List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 626cf6c8fcff7acf10da4894d6f876026cb173db Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 16:38:11 +0000 Message-Id: <692dc473.8103.7e43c99a@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=626cf6c8fcff7acf10da4894d6f876026cb173db commit 626cf6c8fcff7acf10da4894d6f876026cb173db Author: Quentin Thébault AuthorDate: 2025-09-12 08:39:55 +0000 Commit: Mark Johnston CommitDate: 2025-12-01 16:37:57 +0000 bhyve: add support for ng_device network backend Signed-off-by: Quentin Thébault Reviewed by: markj MFC after: 1 month Sponsored by: Defenso Differential Revision: https://reviews.freebsd.org/D52542 Pull Request: https://github.com/freebsd/freebsd-src/pull/1880 (cherry picked from commit 1aad95345237424918e5f6b18464df4dbc2aa1d8) --- usr.sbin/bhyve/bhyve.8 | 19 ++++++++++++++++++- usr.sbin/bhyve/net_backends.c | 19 ++++++++++++++++++- 2 files changed, 36 insertions(+), 2 deletions(-) diff --git a/usr.sbin/bhyve/bhyve.8 b/usr.sbin/bhyve/bhyve.8 index 13f0d239ef40..27e067f50394 100644 --- a/usr.sbin/bhyve/bhyve.8 +++ b/usr.sbin/bhyve/bhyve.8 @@ -521,6 +521,8 @@ considered unconnected. .Op Cm \&,mtu= Ar N .Xc .It +.Cm ngd Ar N +.It .Xo .Cm netgraph,path= Ar ADDRESS Cm \&,peerhook= Ar HOOK .Op Cm \&,socket= Ar NAME @@ -545,6 +547,19 @@ The MAC address is an ASCII string in .Xr ethers 5 format. .Pp +A +.Cm ngd +device can be used to connect a guest to a +.Xr netgraph 4 +through a +.Xr ng_device 4 +node. +This can be used to run bhyve in a +.Xr VNET 9 +jail, and give it access to the host's netgraph, that cannot be reached +directly, by exposing the ng_device through +.Xr devfs 8 . +.Pp With .Cm virtio-net devices, the @@ -575,7 +590,9 @@ must comply with .Xr netgraph 4 addressing rules. .Pp -The slirp backend can be used to provide a NATed network to the guest. +The +.Cm slirp +backend can be used to provide a NATed network to the guest. This backend has poor performance but does not require any network configuration on the host system. It depends on the diff --git a/usr.sbin/bhyve/net_backends.c b/usr.sbin/bhyve/net_backends.c index 2d11c45f217a..95909d1f8ea2 100644 --- a/usr.sbin/bhyve/net_backends.c +++ b/usr.sbin/bhyve/net_backends.c @@ -119,7 +119,8 @@ tap_init(struct net_backend *be, const char *devname, goto error; } - if (ioctl(be->fd, VMIO_SIOCSIFFLAGS, up)) { + if (strncmp("ngd", be->prefix, 3) && + ioctl(be->fd, VMIO_SIOCSIFFLAGS, up)) { EPRINTLN("tap device link up failed"); goto error; } @@ -273,8 +274,24 @@ static struct net_backend vmnet_backend = { .set_cap = tap_set_cap, }; +/* A clone of the tap backend, with a different prefix. */ +static struct net_backend ngd_backend = { + .prefix = "ngd", + .priv_size = sizeof(struct tap_priv), + .init = tap_init, + .cleanup = tap_cleanup, + .send = tap_send, + .peek_recvlen = tap_peek_recvlen, + .recv = tap_recv, + .recv_enable = tap_recv_enable, + .recv_disable = tap_recv_disable, + .get_cap = tap_get_cap, + .set_cap = tap_set_cap, +}; + DATA_SET(net_backend_set, tap_backend); DATA_SET(net_backend_set, vmnet_backend); +DATA_SET(net_backend_set, ngd_backend); int netbe_legacy_config(nvlist_t *nvl, const char *opts) From nobody Mon Dec 1 16:38:12 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKqMm3nDzz6Js2S for ; Mon, 01 Dec 2025 16:38:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKqMm2rBFz3d8Y for ; Mon, 01 Dec 2025 16:38:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607092; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Rj0Fcm1ZVCVffX5Tvh2m4Sl3uHulYOGvfFGm0nDvhUc=; b=KE9pu/JIv10I0hcw0nxZi9mIH4PAZSGvtzh6K7K4sGIFj5DwgJf8UYHo6LgYHmOJYXg6lf tzD/GLrLlNsQi9+uczTMZWTMosNsH7CaoO/e2nywAnRmulNl33zll/n1pLwZslvtsNPSmJ UoFWyquIA8JOfFr8x4JjLOjuEcJC/v8igIH8cgffqDwYF0/l/GgsGntMBpMuUkydIaj/KZ KqiZyQougRNjKo8x7BlN9746+aNtmzhWf0Twv9AYPf4V8BKFQmoERhRSInvEZsn9JnpBcE z6RQ+TlCA8swmB3/xuk9UIobLxuVJReLHZ7DN/brEtr5GuDxSiPQUFLKJZAPLg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607092; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Rj0Fcm1ZVCVffX5Tvh2m4Sl3uHulYOGvfFGm0nDvhUc=; b=k3W+hoEoyTiZz4ffdFJCAOpyJZ4TskIEgilZyQtXiCbPK1I58fhSPKZbsannT6W2rgnD4E gH2VBWmAW7Id8lZJivj835CtblOp9Ee9rGePtZ+hWuwU7vKzcxzPkI3a6PgwGseju8EyCl aMVaJzAvCWY8rlLpEJ1DdR7YLTxwkp1ptVP0FYeWyWZtnr4jjIOMC+BOagtvkFeunsum6c EqhrTWgP33r3liSmYJ6IYsp8r77BH8qnt5R8ECxO+vWevzTzZtgGAg5Usoi/vP9VA1wDFj TQNtMovc0t/xyNbZ//LBVJBjLC6tY3uroU/pkKGeqTstxwPTomtudoA/LyQJaw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764607092; a=rsa-sha256; cv=none; b=ZBpWStCmeppDxw6ycnn0/IhiBjWUuAKqDFKPlv28IrWL7FV6PsDtMADXNGlNrX72LEh1GD SmxKoANGFggXK+xSmOtTxjLMwiNyNvQxNqhT6X2PjLuzdv5yead1CRgWXmzEpVzJh1fgui pjRoj6hMvoJ2DAFc9bYrQ651sfIRxovrRPb5GKrxxVV31XQwZhkPgcXw4f2ozN8zKYiwHm dFHwXt7RSYy9+hEzO3imgGRGbZyqboqg6m5WtTSqUshu9VxgoQaPbxceTZQgHqSirI1c+e KwOMYq6rgnDPw0d+J0iznhDH7o+Uke+vzd3w9s4FYGWqaEC9xxZk0/Eag5eQYg== 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 4dKqMm27ctzCml for ; Mon, 01 Dec 2025 16:38:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3750c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 16:38:12 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: f15e54924ccb - stable/15 - file: Add a fdclose method List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: f15e54924ccbf405972eeacd3c2ad65df29c4a8d Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 16:38:12 +0000 Message-Id: <692dc474.3750c.791912b3@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=f15e54924ccbf405972eeacd3c2ad65df29c4a8d commit f15e54924ccbf405972eeacd3c2ad65df29c4a8d Author: Mark Johnston AuthorDate: 2025-11-16 15:49:39 +0000 Commit: Mark Johnston CommitDate: 2025-12-01 16:37:57 +0000 file: Add a fdclose method Consider a program that creates a unix socket pair, transmits both sockets from one to the other using an SCM_RIGHTS message, and then closes both sockets without externalizing the message. unp_gc() is supposed to handle cleanup, but it is only triggered by uipc_detach(), which runs when a unix socket is destroyed. Because the two sockets are internalized, their refcounts are positive, so uipc_detach() isn't called. As a result, a userspace program can create an unbounded amount of garbage without triggering reclaim. Let's trigger garbage collection whenever a unix socket is close()d. To implement this, add new a fdclose file op and protocol op, and implement them accordingly. Since mqueuefs has a hack to hook into the file close path, convert it to use the new op as well. Now, userspace can't create garbage without triggering reclamation. Reviewed by: glebius, kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D53744 (cherry picked from commit 1390bba42caf53a00fa370f3844cd7b3725ed4ec) --- sys/kern/kern_descrip.c | 8 ++----- sys/kern/sys_socket.c | 12 ++++++++++ sys/kern/uipc_mqueue.c | 59 +++++++++++++++++++++++-------------------------- sys/kern/uipc_socket.c | 3 ++- sys/kern/uipc_usrreq.c | 27 ++++++++++++++++++---- sys/sys/file.h | 2 ++ sys/sys/mqueue.h | 5 ----- sys/sys/protosw.h | 7 ++++-- 8 files changed, 74 insertions(+), 49 deletions(-) diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c index 58b048d780f1..ebc82b8dc427 100644 --- a/sys/kern/kern_descrip.c +++ b/sys/kern/kern_descrip.c @@ -194,7 +194,6 @@ struct filedesc0 { */ static int __exclusive_cache_line openfiles; /* actual number of open files */ struct mtx sigio_lock; /* mtx to protect pointers to sigio */ -void __read_mostly (*mq_fdclose)(struct thread *td, int fd, struct file *fp); /* * If low >= size, just return low. Otherwise find the first zero bit in the @@ -1404,11 +1403,8 @@ closefp_impl(struct filedesc *fdp, int fd, struct file *fp, struct thread *td, if (__predict_false(!TAILQ_EMPTY(&fdp->fd_kqlist))) knote_fdclose(td, fd); - /* - * We need to notify mqueue if the object is of type mqueue. - */ - if (__predict_false(fp->f_type == DTYPE_MQUEUE)) - mq_fdclose(td, fd, fp); + if (fp->f_ops->fo_fdclose != NULL) + fp->f_ops->fo_fdclose(fp, fd, td); FILEDESC_XUNLOCK(fdp); #ifdef AUDIT diff --git a/sys/kern/sys_socket.c b/sys/kern/sys_socket.c index c221106ae067..a326b9935290 100644 --- a/sys/kern/sys_socket.c +++ b/sys/kern/sys_socket.c @@ -90,6 +90,7 @@ static fo_poll_t soo_poll; static fo_kqfilter_t soo_kqfilter; static fo_stat_t soo_stat; static fo_close_t soo_close; +static fo_fdclose_t soo_fdclose; static fo_chmod_t soo_chmod; static fo_fill_kinfo_t soo_fill_kinfo; static fo_aio_queue_t soo_aio_queue; @@ -105,6 +106,7 @@ const struct fileops socketops = { .fo_kqfilter = soo_kqfilter, .fo_stat = soo_stat, .fo_close = soo_close, + .fo_fdclose = soo_fdclose, .fo_chmod = soo_chmod, .fo_chown = invfo_chown, .fo_sendfile = invfo_sendfile, @@ -362,6 +364,16 @@ soo_close(struct file *fp, struct thread *td) return (error); } +static void +soo_fdclose(struct file *fp, int fd __unused, struct thread *td) +{ + struct socket *so; + + so = fp->f_data; + if (so->so_proto->pr_fdclose != NULL) + so->so_proto->pr_fdclose(so); +} + static int soo_chmod(struct file *fp, mode_t mode, struct ucred *cred, struct thread *td) { diff --git a/sys/kern/uipc_mqueue.c b/sys/kern/uipc_mqueue.c index b808da088ffd..e26a21a6efe0 100644 --- a/sys/kern/uipc_mqueue.c +++ b/sys/kern/uipc_mqueue.c @@ -267,7 +267,6 @@ static int _mqueue_send(struct mqueue *mq, struct mqueue_msg *msg, static int _mqueue_recv(struct mqueue *mq, struct mqueue_msg **msg, int timo); static void mqueue_send_notification(struct mqueue *mq); -static void mqueue_fdclose(struct thread *td, int fd, struct file *fp); static void mq_proc_exit(void *arg, struct proc *p); /* @@ -688,7 +687,6 @@ mqfs_init(struct vfsconf *vfc) mqfs_fixup_dir(root); exit_tag = EVENTHANDLER_REGISTER(process_exit, mq_proc_exit, NULL, EVENTHANDLER_PRI_ANY); - mq_fdclose = mqueue_fdclose; p31b_setcfg(CTL_P1003_1B_MESSAGE_PASSING, _POSIX_MESSAGE_PASSING); mqfs_osd_jail_slot = osd_jail_register(NULL, methods); return (0); @@ -2472,35 +2470,6 @@ sys_kmq_notify(struct thread *td, struct kmq_notify_args *uap) return (kern_kmq_notify(td, uap->mqd, evp)); } -static void -mqueue_fdclose(struct thread *td, int fd, struct file *fp) -{ - struct mqueue *mq; -#ifdef INVARIANTS - struct filedesc *fdp; - - fdp = td->td_proc->p_fd; - FILEDESC_LOCK_ASSERT(fdp); -#endif - - if (fp->f_ops == &mqueueops) { - mq = FPTOMQ(fp); - mtx_lock(&mq->mq_mutex); - notifier_remove(td->td_proc, mq, fd); - - /* have to wakeup thread in same process */ - if (mq->mq_flags & MQ_RSEL) { - mq->mq_flags &= ~MQ_RSEL; - selwakeup(&mq->mq_rsel); - } - if (mq->mq_flags & MQ_WSEL) { - mq->mq_flags &= ~MQ_WSEL; - selwakeup(&mq->mq_wsel); - } - mtx_unlock(&mq->mq_mutex); - } -} - static void mq_proc_exit(void *arg __unused, struct proc *p) { @@ -2566,6 +2535,33 @@ mqf_close(struct file *fp, struct thread *td) return (0); } +static void +mqf_fdclose(struct file *fp, int fd, struct thread *td) +{ + struct mqueue *mq; +#ifdef INVARIANTS + struct filedesc *fdp; + + fdp = td->td_proc->p_fd; + FILEDESC_LOCK_ASSERT(fdp); +#endif + + mq = FPTOMQ(fp); + mtx_lock(&mq->mq_mutex); + notifier_remove(td->td_proc, mq, fd); + + /* have to wakeup thread in same process */ + if (mq->mq_flags & MQ_RSEL) { + mq->mq_flags &= ~MQ_RSEL; + selwakeup(&mq->mq_rsel); + } + if (mq->mq_flags & MQ_WSEL) { + mq->mq_flags &= ~MQ_WSEL; + selwakeup(&mq->mq_wsel); + } + mtx_unlock(&mq->mq_mutex); +} + static int mqf_stat(struct file *fp, struct stat *st, struct ucred *active_cred) { @@ -2694,6 +2690,7 @@ static const struct fileops mqueueops = { .fo_kqfilter = mqf_kqfilter, .fo_stat = mqf_stat, .fo_close = mqf_close, + .fo_fdclose = mqf_fdclose, .fo_chmod = mqf_chmod, .fo_chown = mqf_chown, .fo_sendfile = invfo_sendfile, diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index eb9544628137..00aa5f9309b2 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -54,7 +54,8 @@ * consumer of a socket is starting to tear down the socket, and that the * protocol should terminate the connection. Historically, pr_abort() also * detached protocol state from the socket state, but this is no longer the - * case. + * case. pr_fdclose() is called when userspace invokes close(2) on a socket + * file descriptor. * * socreate() creates a socket and attaches protocol state. This is a public * interface that may be used by socket layer consumers to create new diff --git a/sys/kern/uipc_usrreq.c b/sys/kern/uipc_usrreq.c index 05e267b8ae2b..6569422a3710 100644 --- a/sys/kern/uipc_usrreq.c +++ b/sys/kern/uipc_usrreq.c @@ -792,13 +792,19 @@ uipc_connect2(struct socket *so1, struct socket *so2) return (0); } +static void +maybe_schedule_gc(void) +{ + if (atomic_load_int(&unp_rights) != 0) + taskqueue_enqueue_timeout(taskqueue_thread, &unp_gc_task, -1); +} + static void uipc_detach(struct socket *so) { struct unpcb *unp, *unp2; struct mtx *vplock; struct vnode *vp; - int local_unp_rights; unp = sotounpcb(so); KASSERT(unp != NULL, ("uipc_detach: unp == NULL")); @@ -854,7 +860,6 @@ uipc_detach(struct socket *so) UNP_REF_LIST_UNLOCK(); UNP_PCB_LOCK(unp); - local_unp_rights = unp_rights; unp->unp_socket->so_pcb = NULL; unp->unp_socket = NULL; free(unp->unp_addr, M_SONAME); @@ -865,8 +870,7 @@ uipc_detach(struct socket *so) mtx_unlock(vplock); vrele(vp); } - if (local_unp_rights) - taskqueue_enqueue_timeout(taskqueue_thread, &unp_gc_task, -1); + maybe_schedule_gc(); switch (so->so_type) { case SOCK_STREAM: @@ -902,6 +906,18 @@ uipc_disconnect(struct socket *so) return (0); } +static void +uipc_fdclose(struct socket *so __unused) +{ + /* + * Ensure that userspace can't create orphaned file descriptors without + * triggering garbage collection. Triggering GC from uipc_detach() is + * not sufficient, since that's only closed once a socket reference + * count drops to zero. + */ + maybe_schedule_gc(); +} + static int uipc_listen(struct socket *so, int backlog, struct thread *td) { @@ -4374,6 +4390,7 @@ static struct protosw streamproto = { .pr_connect2 = uipc_connect2, .pr_detach = uipc_detach, .pr_disconnect = uipc_disconnect, + .pr_fdclose = uipc_fdclose, .pr_listen = uipc_listen, .pr_peeraddr = uipc_peeraddr, .pr_send = uipc_sendfile, @@ -4404,6 +4421,7 @@ static struct protosw dgramproto = { .pr_connect2 = uipc_connect2, .pr_detach = uipc_detach, .pr_disconnect = uipc_disconnect, + .pr_fdclose = uipc_fdclose, .pr_peeraddr = uipc_peeraddr, .pr_sosend = uipc_sosend_dgram, .pr_sense = uipc_sense, @@ -4428,6 +4446,7 @@ static struct protosw seqpacketproto = { .pr_connect2 = uipc_connect2, .pr_detach = uipc_detach, .pr_disconnect = uipc_disconnect, + .pr_fdclose = uipc_fdclose, .pr_listen = uipc_listen, .pr_peeraddr = uipc_peeraddr, .pr_sense = uipc_sense, diff --git a/sys/sys/file.h b/sys/sys/file.h index b2bd62f244da..b537daa27ff5 100644 --- a/sys/sys/file.h +++ b/sys/sys/file.h @@ -114,6 +114,7 @@ typedef int fo_kqfilter_t(struct file *fp, struct knote *kn); typedef int fo_stat_t(struct file *fp, struct stat *sb, struct ucred *active_cred); typedef int fo_close_t(struct file *fp, struct thread *td); +typedef void fo_fdclose_t(struct file *fp, int fd, struct thread *td); typedef int fo_chmod_t(struct file *fp, mode_t mode, struct ucred *active_cred, struct thread *td); typedef int fo_chown_t(struct file *fp, uid_t uid, gid_t gid, @@ -151,6 +152,7 @@ struct fileops { fo_kqfilter_t *fo_kqfilter; fo_stat_t *fo_stat; fo_close_t *fo_close; + fo_fdclose_t *fo_fdclose; fo_chmod_t *fo_chmod; fo_chown_t *fo_chown; fo_sendfile_t *fo_sendfile; diff --git a/sys/sys/mqueue.h b/sys/sys/mqueue.h index 50f6681ce218..211f09d57427 100644 --- a/sys/sys/mqueue.h +++ b/sys/sys/mqueue.h @@ -37,9 +37,4 @@ struct mq_attr { long __reserved[4]; /* Ignored for input, zeroed for output */ }; -#ifdef _KERNEL -struct thread; -struct file; -extern void (*mq_fdclose)(struct thread *td, int fd, struct file *fp); -#endif #endif diff --git a/sys/sys/protosw.h b/sys/sys/protosw.h index 7fb8dfdc7208..392ff7cf678e 100644 --- a/sys/sys/protosw.h +++ b/sys/sys/protosw.h @@ -94,6 +94,7 @@ typedef int pr_sopoll_t(struct socket *, int, struct thread *); typedef int pr_kqfilter_t(struct socket *, struct knote *); typedef void pr_sosetlabel_t(struct socket *); typedef void pr_close_t(struct socket *); +typedef void pr_fdclose_t(struct socket *); typedef int pr_bindat_t(int, struct socket *, struct sockaddr *, struct thread *); typedef int pr_connectat_t(int, struct socket *, struct sockaddr *, @@ -120,8 +121,8 @@ struct protosw { pr_detach_t *pr_detach; /* destruction: sofree() */ pr_connect_t *pr_connect; /* connect(2) */ pr_disconnect_t *pr_disconnect; /* sodisconnect() */ - pr_close_t *pr_close; /* close(2) */ - pr_shutdown_t *pr_shutdown; /* shutdown(2) */ + pr_close_t *pr_close; /* soclose(), socket refcount is 0 */ + pr_fdclose_t *pr_fdclose; /* close(2) */ pr_rcvd_t *pr_rcvd; /* soreceive_generic() if PR_WANTRCVD */ pr_aio_queue_t *pr_aio_queue; /* aio(9) */ /* Cache line #3 */ @@ -142,7 +143,9 @@ struct protosw { pr_sosetlabel_t *pr_sosetlabel; /* MAC, XXXGL: remove */ pr_setsbopt_t *pr_setsbopt; /* Socket buffer ioctls */ pr_chmod_t *pr_chmod; /* fchmod(2) */ +/* Cache line #5 */ pr_kqfilter_t *pr_kqfilter; /* kevent(2) */ + pr_shutdown_t *pr_shutdown; /* shutdown(2) */ }; #endif /* defined(_KERNEL) || defined(_WANT_PROTOSW) */ #ifdef _KERNEL From nobody Mon Dec 1 16:38:13 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKqMn5ftSz6Js4Y for ; Mon, 01 Dec 2025 16:38:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKqMn4Qh2z3dDb for ; Mon, 01 Dec 2025 16:38:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607093; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A4FatD2RMXTtFhkzCvnDRMvaJf5znPuYRhHyhFJO488=; b=TJJVuzzsH4bv3tN/E/jDcmlPdsYYEhs3pQEdFVX2I69lzD8SUghz3nUl5kb4uTNZsJOzlN L5fvlWMe2RpH94AwXnuKMW61XSLXy8mq1lLJtj5pCZ/YBNxILf7eUaVWCOG4fICjm8aHoU o6oV9iI82vXoUlHwRPeE/+U6wShskQECDWuCwSuU5ocTPxU8hlENZgG4tXC/OtCdVqaCoM 1QIbgN7toVx/suYgufSxT5juwW73Um6lt5JWT3FeB0bRDXn9RAaOkUKn7ddFL1umsMYMFx 4GsNpd5yrJ7wHSNXv8rKArucYsjVNUuRy/O3GdnxcWfKMYxnOHAGLyOkm7JfFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607093; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A4FatD2RMXTtFhkzCvnDRMvaJf5znPuYRhHyhFJO488=; b=wcDVKnuQYQAV63rwAxYOBiqa9P1kNRM0hNp3l2AZtCml/Kp1vzYBtSkwqb9/iBfLRvsLGP aMcH+XVKIARK3ggjw94lhn9igpMOSLGMaw/zsiOf6t5ChDVogdlHsYgq6PS9ES4dIxJlK2 iuFreqPlwfNva+fEK5ArpoR1SGEP6ql1cmfuuu/1ULRsHvZdY7qIUQHa6Ik7Yko/GCSqNv dr7eXvjoOtf/ZP4BpFkEEhmNZmv6KbMWdo57XziTYKWgbfab0iSwmeE4FCIgt2SSuFgdxM 8F+haJLQX77uuAOWnid8k6KnCkhvM/2rXcRAXzt7RmxItCHu7L9kIJsb3mT9VQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764607093; a=rsa-sha256; cv=none; b=GNx9AoUpjBO6Xzz3SQG/VNA0j0YG5n6SEjFVRpZhwqPQaMZt2hOswsmxPjd8QjdlZmca/Z 4WMt/TnF/DzGRIWeTW8fCMUcl0XYT+27E8Wqk04U/HHhxvrMeezZ3X65oSENAFShLb/ytq 5XAnMzTP4Rbo8tabQBfVEhLl3FP7pvaO9zvVsAsiRxD3XPhnamn7ee0yXa2crtAMR6DGZX wzINtVKqKUlaHRsAJiTKSgfRtg0Z72lyXlRTNr6+c09U7E5ZPrwTTYdPzivhBrKLj5grt8 ZShdOcXx3gOBZYYg2O3Vv6lFxAg2p7LF3Z7R3Rkt3ySNy7M8T5A0nkRR+M3k9g== 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 4dKqMn2v51zD3L for ; Mon, 01 Dec 2025 16:38:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37295 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 16:38:13 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 0db8e36b2baa - stable/15 - krb5: Use sh to run mk_cmds List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 0db8e36b2baa1979bb503ada3483bf9b0b1d5d3b Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 16:38:13 +0000 Message-Id: <692dc475.37295.3e00c739@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=0db8e36b2baa1979bb503ada3483bf9b0b1d5d3b commit 0db8e36b2baa1979bb503ada3483bf9b0b1d5d3b Author: Mark Johnston AuthorDate: 2025-11-21 17:54:38 +0000 Commit: Mark Johnston CommitDate: 2025-12-01 16:37:57 +0000 krb5: Use sh to run mk_cmds Otherwise etcupdate apparently can fail if its private object directory under /var/db is in a filesystem mounted noexec. We shouldn't be building this target at all, but for now, just apply this workaround. PR: 291043 Reviewed by: ivy, cy, des MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53861 (cherry picked from commit 673924122470463dfb9089e12b1b4496783a77b8) --- krb5/util/ss/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/krb5/util/ss/Makefile b/krb5/util/ss/Makefile index 2c48ccf56573..30e1bf7b025e 100644 --- a/krb5/util/ss/Makefile +++ b/krb5/util/ss/Makefile @@ -85,7 +85,7 @@ ${GEN_SS_ERR_C}: ${GEN_SS_ERR} rm -f et-c-${.PREFIX}.et et-c-${.PREFIX}.c std_rqs.c: mk_cmds std_rqs.ct ss_err.h - ./mk_cmds ${KRB5_DIR}/util/ss/std_rqs.ct + sh mk_cmds ${KRB5_DIR}/util/ss/std_rqs.ct .include From nobody Mon Dec 1 16:53:15 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKqj76M3Cz6JtRt for ; Mon, 01 Dec 2025 16:53: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKqj75vKrz3jvn for ; Mon, 01 Dec 2025 16:53:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607995; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SBYaaXLu5k22DmCtysib+O1CX4+4BJfwXCjnSoGPXPg=; b=uV6YFJNXD1PawQ/rjMhtiySDXwmu55FyBCMtgcxRlRa5guayT+2kXYRWOYSE131MoqMQiq IeSnwy162cPVC9kyIq79tD4Ahile2gDhu4osZjzCcF7W8QYUowBDtsaKvNSE3/YeUCFMy2 Ex6of9bULXgL/N9tjo1Gs5QBkVFH7UY94k9PCORLlxkrcdlruc2AUN+df7Y+Yw3QTYTYb+ 2eyPpJnz+6GLXBodP9BKpVeTiYC2bm+nTLtroWRGIcQyp4AbOo15IBZTxNIH/ZndTLln5s vefvpqx+KGjS+zxcNKFWwPNBgb0PdPudikpaKlGjt4EShwlT+ZgKfzcp7dFVnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764607995; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SBYaaXLu5k22DmCtysib+O1CX4+4BJfwXCjnSoGPXPg=; b=NPMiJwnx1LgaYJ1CBrNN+SenN5nNk2RJulP48wKmN/4y6cklOX51NwndD5kZHIe68zErwY FjhIKBD0Vg79aKg3KWNr+OL+wRrfIx7fPSGAzcp53tHozdwvJ/Lg/1hHPDzH6JLRF5iRlH k6nKqvx4TG79bIO+tu9bStGShS++JUa7tmqdrFOqfzCgwMwUVuZQZAIZc2CrK053Pp7eNI hgKXUQGL3dLHi4LVzw+yRGYo9m/Bw6UZWji/MIMj0r3ig1o1SGMjeoDY3ZGe/nm1ow58e2 zuf8GOK3g0Jav1clWJjyKbOw0RBpLp5zpdqBqtakdcCFK5BqTgQrMLklRzux0Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764607995; a=rsa-sha256; cv=none; b=dym313qkr680Hqx0PCiw0x1HaWbLO8ySKvlgfx3Rgeb5lrTIxykWNg/XhGMEELXO7SO0SE jC5zNnmG+fwaKr+7/m9m0sHZTI/VErzM8MMkHlBzVbR8Z8/7ccJtekL8IKxr3Q1pMW4FJt c0v2lKrZvn1NC1YAKP4UQ8GUN+aCf1t5eYfLP9U8BmeKs04h5fmJrrmYU/SYQJKQmZoi8T M9jsnBN84YGkKfxg9EhZJc1BB4pJtDkA2jSM9ARqcpyU0E8rf0v74V39SUmdePw0cOP9Wt pE62nTbP7PAav+t4UfyWojvq/QE0m2GR4kKX1TvZOH+2MUpSzUghmU5wBwpcNw== 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 4dKqj75Mm7zDT1 for ; Mon, 01 Dec 2025 16:53:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 84bc by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 16:53:15 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Justin Hibbits Subject: git: 882821b78fae - main - kexec: Change shutdown handler priority List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 882821b78faecaffdecac8fdcd943ee2e1053ee7 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 16:53:15 +0000 Message-Id: <692dc7fb.84bc.2a12f51b@gitrepo.freebsd.org> The branch main has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=882821b78faecaffdecac8fdcd943ee2e1053ee7 commit 882821b78faecaffdecac8fdcd943ee2e1053ee7 Author: Justin Hibbits AuthorDate: 2025-12-01 16:50:30 +0000 Commit: Justin Hibbits CommitDate: 2025-12-01 16:53:00 +0000 kexec: Change shutdown handler priority The kexec shutdown handler should run after everything else, but before the other platform shutdown handlers. With (SHUTDOWN_PRI_DEFAULT - 150) priority it would run before anything else, including all the device shutdown handlers. Change to (SHUTDOWN_PRI_LAST - 150) where it belongs. Sponsored by: Hewlett Packard Enterprise --- sys/kern/kern_kexec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/kern/kern_kexec.c b/sys/kern/kern_kexec.c index 2efea7dcf9a7..86ee9da9a606 100644 --- a/sys/kern/kern_kexec.c +++ b/sys/kern/kern_kexec.c @@ -314,7 +314,7 @@ kern_kexec_load(struct thread *td, u_long entry, u_long nseg, if (kexec_reboot_handler == NULL) kexec_reboot_handler = EVENTHANDLER_REGISTER(shutdown_final, kexec_reboot, NULL, - SHUTDOWN_PRI_DEFAULT - 150); + SHUTDOWN_PRI_LAST - 150); } else { if (kexec_reboot_handler != NULL) EVENTHANDLER_DEREGISTER(shutdown_final, kexec_reboot_handler); From nobody Mon Dec 1 20:43:12 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKwpS3v7Nz6KKCk for ; Mon, 01 Dec 2025 20:43:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKwpS34KFz4NWb for ; Mon, 01 Dec 2025 20:43:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764621792; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=70NEw8ydnGSJBbOzjFmBMfpOXiTDLYwLhl86+J44WOw=; b=BRvUeUAhgBBSTVumMYV2z2Dy6urlIz3sPw2WQeoNGGlaE1QfcSQKbyxK2J1de8SZh5Dl4C TlIQRRKGZSGosAtMC2gE2MyhzgrMq/ZCtnESYENYTl4SGSaYbbqWuC7KCOhMLVEG3xLeFc RwV8se8Al8bRqFEVa5oU4lnfJ3xGgHPGkFvP4ONNrKTbikmoQbbi9Kr9jyzx+OrfH8NXtD YQWCaGbok0do2scSDaX2CnwcZFiaOe84tMcfNqNezoo8cJzN78MEn5b+KUaa7UL3vUeEnV FEUmdjZ1tNJg+4/asHX7uQ5wL9l4aoLw9Yevn1vc/VxaIcV9pd9bX8ofyXIarg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764621792; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=70NEw8ydnGSJBbOzjFmBMfpOXiTDLYwLhl86+J44WOw=; b=b6ghFjbITbbhSVJX7vkwYlF9TU6SNipPQnFmn3CY8UK3GUhOttKURbO21q3FnrFkva+yGD +cJmPat0MPpoMZQJvrzphtZPSFqIgme/z2JJ/cwsi0dmhFm51mKa2mtYTW0b1ROl9EuToz eDPuBhLTDgFGSqLqBKBgOO88CVJQ0mJ4XE7+K6SE+LwTV3+3Aav9bde9Fu9uGUruYP40rq Vz1hGgxO+F7lIwzfhsrJmP+EWanGhq5Cys2eFJU2oa0/ncvxEJzInaiM+QbCMnaID5Ailm /pel4aDlml24EuSfPUjZchp8Qnr3Tv8hVK046Hhn6ARfda7Pt7KnjoIK0328cA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764621792; a=rsa-sha256; cv=none; b=Et//mu8jEdSemqm1CqjmvJ3Pq/rkyRs+UAU0C69E1IpzK0flMqBgVgrFuqdwoxOy4D4njp GmGSizMZ5/JTNksr6eeNf23ak2phf2TjX59m8a4SZomPO9Z/jJxpwpob4jKpLTlTmBaF7Z ij/0PBi9nZ0txtn6QhF4sk5owcC+/ggidbYlCGWRdZeXURN4xKajMnCKbrUhwegbKsm5Cz 4DSourak8LQPUynNqyulNHJXgpPC0ZiYywkdftW2tRIx66xpsbxkWipfbcdOl7TAT0Abcf GfKZ0ajXNOFnlvfF6LDques3momr9yaEUVVBIbLzqLKqPl44vrBM6NmyWFAt+Q== 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 4dKwpS2f9RzdCr for ; Mon, 01 Dec 2025 20:43:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 31de4 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 20:43:12 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Vladimir Kondratyev Subject: git: ecccc9d99901 - main - evdev: Allow setting of character device ownership and access mode List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ecccc9d99901dd874e8d122853026d7c28fa4fcf Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 20:43:12 +0000 Message-Id: <692dfde0.31de4.4c5251df@gitrepo.freebsd.org> The branch main has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=ecccc9d99901dd874e8d122853026d7c28fa4fcf commit ecccc9d99901dd874e8d122853026d7c28fa4fcf Author: Vladimir Kondratyev AuthorDate: 2025-12-01 20:42:14 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-12-01 20:42:14 +0000 evdev: Allow setting of character device ownership and access mode by device driver. That is required as game pad and joystick events have to be accessible by ordinary users. MFC after: 1 month --- sys/dev/evdev/cdev.c | 6 +++--- sys/dev/evdev/evdev.c | 17 ++++++++++++++++- sys/dev/evdev/evdev.h | 1 + sys/dev/evdev/evdev_private.h | 3 +++ 4 files changed, 23 insertions(+), 4 deletions(-) diff --git a/sys/dev/evdev/cdev.c b/sys/dev/evdev/cdev.c index dd4115cdfc71..2f47056081d2 100644 --- a/sys/dev/evdev/cdev.c +++ b/sys/dev/evdev/cdev.c @@ -772,9 +772,9 @@ evdev_cdev_create(struct evdev_dev *evdev) make_dev_args_init(&mda); mda.mda_flags = MAKEDEV_WAITOK | MAKEDEV_CHECKNAME; mda.mda_devsw = &evdev_cdevsw; - mda.mda_uid = UID_ROOT; - mda.mda_gid = GID_WHEEL; - mda.mda_mode = 0600; + mda.mda_uid = evdev->ev_cdev_uid; + mda.mda_gid = evdev->ev_cdev_gid; + mda.mda_mode = evdev->ev_cdev_mode; mda.mda_si_drv1 = evdev; /* Try to coexist with cuse-backed input/event devices */ diff --git a/sys/dev/evdev/evdev.c b/sys/dev/evdev/evdev.c index e71f4f389d5c..4dcd6f23d338 100644 --- a/sys/dev/evdev/evdev.c +++ b/sys/dev/evdev/evdev.c @@ -37,6 +37,7 @@ #include #include #include +#include #include #include #include @@ -94,8 +95,14 @@ static int evdev_check_event(struct evdev_dev *, uint16_t, uint16_t, int32_t); struct evdev_dev * evdev_alloc(void) { + struct evdev_dev *evdev; - return malloc(sizeof(struct evdev_dev), M_EVDEV, M_WAITOK | M_ZERO); + evdev = malloc(sizeof(struct evdev_dev), M_EVDEV, M_WAITOK | M_ZERO); + evdev->ev_cdev_uid = UID_ROOT; + evdev->ev_cdev_gid = GID_WHEEL; + evdev->ev_cdev_mode = S_IRUSR | S_IWUSR; + + return (evdev); } void @@ -584,6 +591,14 @@ evdev_set_flag(struct evdev_dev *evdev, uint16_t flag) bit_set(evdev->ev_flags, flag); } +void +evdev_set_cdev_mode(struct evdev_dev *evdev, uid_t uid, gid_t gid, int mode) +{ + evdev->ev_cdev_uid = uid; + evdev->ev_cdev_gid = gid; + evdev->ev_cdev_mode = mode; +} + static int evdev_check_event(struct evdev_dev *evdev, uint16_t type, uint16_t code, int32_t value) diff --git a/sys/dev/evdev/evdev.h b/sys/dev/evdev/evdev.h index 2ee374f184cc..d5aa58f0ccc4 100644 --- a/sys/dev/evdev/evdev.h +++ b/sys/dev/evdev/evdev.h @@ -153,6 +153,7 @@ void evdev_support_sw(struct evdev_dev *, uint16_t); void evdev_set_repeat_params(struct evdev_dev *, uint16_t, int); int evdev_set_report_size(struct evdev_dev *, size_t); void evdev_set_flag(struct evdev_dev *, uint16_t); +void evdev_set_cdev_mode(struct evdev_dev *, uid_t, gid_t, int); void *evdev_get_softc(struct evdev_dev *); bool evdev_is_grabbed(struct evdev_dev *); diff --git a/sys/dev/evdev/evdev_private.h b/sys/dev/evdev/evdev_private.h index 661259bd2594..4c371e538598 100644 --- a/sys/dev/evdev/evdev_private.h +++ b/sys/dev/evdev/evdev_private.h @@ -111,6 +111,9 @@ struct evdev_dev char ev_shortname[NAMELEN]; char ev_serial[NAMELEN]; struct cdev * ev_cdev; + uid_t ev_cdev_uid; + gid_t ev_cdev_gid; + int ev_cdev_mode; int ev_unit; enum evdev_lock_type ev_lock_type; struct mtx * ev_state_lock; /* State lock */ From nobody Mon Dec 1 20:43:13 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKwpT4v25z6KKb1 for ; Mon, 01 Dec 2025 20:43:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKwpT3d6Hz4Nlw for ; Mon, 01 Dec 2025 20:43:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764621793; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=STTtjDminRatFUfqyL4PzXQgB6n1Z7si4gmrw7cxols=; b=ZV6w4efYVmaUpcEoU0+pOY2t/Xjii2Ixy3HKVEsdqhwhuCJ0IbK2XjyWjMufXbu+tK+1A7 uk2DQj3HaTzvo8DJS+/e3m9jCWWuo6n72OEIb/wvTCY5ZwQFsLKqiwA0TRDfwdHEmBist3 /JS9j8ixJOPCdFtBDgFk+Hkr0u9u3qogQGwhceMIZyBRzBU5lMa79Rl3JUfBEL7GCLNpsw EyewmLfEzqUts/IOSX1V8wFhWMbM1oqlgsrTlgHHz265fudmIEyyRQ4ymyTwlv6VJuq1ma rBtVgc/siDFu2uvSskeo1a0waJ5Ot0JsEcEx4k/tdz3Ah9Fl0vpvXp7881CcRA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764621793; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=STTtjDminRatFUfqyL4PzXQgB6n1Z7si4gmrw7cxols=; b=iA0UCKZxrkjaH5xXDhYzupTWMdnu9a7Om5ZfljY0+tc5mA5/YILidSD10mKgMD9jGWQJAZ 7BJP//5ZMyB/jMrJjnqHLzSzzUSgiVA7slGq47LI0D4nMm39+6VTaB1YY+xESgGKojwepR HxPF4HSlyXZ4EwT/HU7XLZ+lx6p56LPcRlNoGjCULIE0VXDl7hgS5sQH5i1y9L3sfTxjz9 hxxSItcAo4nMHTGiYVrYXmnkEs/0m6cI61KxjjU6NFIbJ6vPQSZU5C75QG2TT0QVIpmAVs cHlKcHoytP6O62vXXwGQ8cyrfRre2lN9a0P8W9d4CpOUzkfPyMm/v4xBvmFrjA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764621793; a=rsa-sha256; cv=none; b=USQVD4rjzIxhfBzMR1OR4+YGC+Dq2gTGV/zeoBzHlADyagyMzVIdbZxpV2Tm4j8xEUwJ6z LiCyQEoddmtZSG/Fc+VYJoOtrQtwMvlliTBo4BtJBOh/nrqMI9IuB8zefuUQR1UbB/dpd/ XK5L00LMRbZGat1xvfQgTeOhMwf/VZjGmwjyNpfUdANqfX0DW+84Rg6m5HRe7WCh37WeNI 28z/7F3YZYGeHMYMDDwdYWpPZfmrH4B4mESKAjN4LWGlijkW/1a/Vve/HMETIjbUZ2gBQj j4nTyfM+eKP5YpOW4ifPjCXpGjo67dtvhxNxUZ/IaF9KHQ74XPZD9JrOU7qKiQ== 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 4dKwpT39cVzcsp for ; Mon, 01 Dec 2025 20:43:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 31887 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 20:43:13 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Vladimir Kondratyev Subject: git: b6cad334e649 - main - hid: Make game controllers accessible to members of the game group List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b6cad334e649f49c57da52b139de353ad9078985 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 20:43:13 +0000 Message-Id: <692dfde1.31887.556800c9@gitrepo.freebsd.org> The branch main has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=b6cad334e649f49c57da52b139de353ad9078985 commit b6cad334e649f49c57da52b139de353ad9078985 Author: Vladimir Kondratyev AuthorDate: 2025-12-01 20:42:15 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-12-01 20:42:15 +0000 hid: Make game controllers accessible to members of the game group Their events have to be accessible by unprivileged users via e.g. libsdl. MFC after: 1 month --- share/man/man4/hgame.4 | 7 ++++--- share/man/man4/ps4dshock.4 | 5 ++++- share/man/man4/xb360gp.4 | 5 ++++- sys/dev/hid/hgame.c | 7 ++++++- sys/dev/hid/ps4dshock.c | 9 ++++++++- 5 files changed, 26 insertions(+), 7 deletions(-) diff --git a/share/man/man4/hgame.4 b/share/man/man4/hgame.4 index 94ad4f5ff4a4..dd69d9ef3de1 100644 --- a/share/man/man4/hgame.4 +++ b/share/man/man4/hgame.4 @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd November 12, 2025 +.Dd November 30, 2025 .Dt HGAME 4 .Os .Sh NAME @@ -69,8 +69,9 @@ prompt, or add it to To give user applications access to the game controllers, allow user access to the .Pa /dev/input/event* -nodes with -.Xr devfs.rules 5 . +nodes with inclusion of user in the +.Em games +group. .Sh HARDWARE The .Nm diff --git a/share/man/man4/ps4dshock.4 b/share/man/man4/ps4dshock.4 index 282a58c49e63..f48e2c07c1b7 100644 --- a/share/man/man4/ps4dshock.4 +++ b/share/man/man4/ps4dshock.4 @@ -21,7 +21,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 19, 2020 +.Dd November 30, 2025 .Dt PS4DSHOCK 4 .Os .Sh NAME @@ -55,6 +55,9 @@ The device presents the game controller as a .Ar evdev type device. +It is accessible to members of the +.Em games +group. .Sh SYSCTL VARIABLES Next parameters are available as .Xr sysctl 8 diff --git a/share/man/man4/xb360gp.4 b/share/man/man4/xb360gp.4 index 4e8d4b65fcfd..1ff42e970858 100644 --- a/share/man/man4/xb360gp.4 +++ b/share/man/man4/xb360gp.4 @@ -21,7 +21,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 16, 2020 +.Dd November 30, 2025 .Dt XB360GP 4 .Os .Sh NAME @@ -56,6 +56,9 @@ The device presents the game controller as a .Ar evdev type device. +It is accessible to members of the +.Em games +group. .Sh SYSCTL VARIABLES The following variable is available as both .Xr sysctl 8 diff --git a/sys/dev/hid/hgame.c b/sys/dev/hid/hgame.c index b074f6145d0e..8dde6b5550c9 100644 --- a/sys/dev/hid/hgame.c +++ b/sys/dev/hid/hgame.c @@ -33,8 +33,10 @@ #include #include +#include #include #include +#include #include #include @@ -170,8 +172,11 @@ hgame_final_cb(HIDMAP_CB_ARGS) { struct evdev_dev *evdev = HIDMAP_CB_GET_EVDEV(); - if (HIDMAP_CB_GET_STATE() == HIDMAP_CB_IS_ATTACHING) + if (HIDMAP_CB_GET_STATE() == HIDMAP_CB_IS_ATTACHING) { evdev_support_prop(evdev, INPUT_PROP_DIRECT); + evdev_set_cdev_mode(evdev, UID_ROOT, GID_GAMES, + S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP); + } /* Do not execute callback at interrupt handler and detach */ return (ENOSYS); diff --git a/sys/dev/hid/ps4dshock.c b/sys/dev/hid/ps4dshock.c index d3c6b3eeadf9..1cd9cb13bad3 100644 --- a/sys/dev/hid/ps4dshock.c +++ b/sys/dev/hid/ps4dshock.c @@ -37,10 +37,12 @@ #include #include +#include #include #include #include #include +#include #include #include @@ -806,8 +808,11 @@ ps4dshock_final_cb(HIDMAP_CB_ARGS) { struct evdev_dev *evdev = HIDMAP_CB_GET_EVDEV(); - if (HIDMAP_CB_GET_STATE() == HIDMAP_CB_IS_ATTACHING) + if (HIDMAP_CB_GET_STATE() == HIDMAP_CB_IS_ATTACHING) { evdev_support_prop(evdev, INPUT_PROP_DIRECT); + evdev_set_cdev_mode(evdev, UID_ROOT, GID_GAMES, + S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP); + } /* Do not execute callback at interrupt handler and detach */ return (ENOSYS); @@ -886,6 +891,8 @@ ps4dsacc_final_cb(HIDMAP_CB_ARGS) if (HIDMAP_CB_GET_STATE() == HIDMAP_CB_IS_ATTACHING) { evdev_support_event(evdev, EV_ABS); evdev_support_prop(evdev, INPUT_PROP_ACCELEROMETER); + evdev_set_cdev_mode(evdev, UID_ROOT, GID_GAMES, + S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP); } /* Do not execute callback at interrupt handler and detach */ return (ENOSYS); From nobody Mon Dec 1 20:43:14 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKwpW0KQXz6KKVS for ; Mon, 01 Dec 2025 20:43: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKwpV4fNDz4NkD for ; Mon, 01 Dec 2025 20:43:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764621794; 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=49+oY1BB3ye+kGXn2tJqZ7sUrbvqXaR+6+xAhrNjF6g=; b=M7dSTCFraejPlafHsEQToNF9SxCXTG95P6iKJIcJM4/FynqiAoxQyWDbBLlEr9OzRBoTh5 3k+uybyoKeMx19TLdqSCp1TxjUXwEuTXHTrv4KbgHYlnP0yZdK5d1jM9wK0qZoTI3fh33c d0bGSpVAq3BUcmd5od7b1W2vaAwEb/dNeIsFg7FfngRDuUM27UoYydyC3kgJZRHGAjFgEJ q26DPInt528Vw2Z0Ep+IiEvyLOV+5EdURVrHHKiONTcwxxwUb0nLLaAgSJ1r4m+GflpaMY QYYD+C7feRFm//53rf2B3jFXwPWjVSDtUJHfRYLrxiGSXc/YEdyLcorEEA/4EA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764621794; 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=49+oY1BB3ye+kGXn2tJqZ7sUrbvqXaR+6+xAhrNjF6g=; b=F+e00fIg3fLst4n7lsDiJ71s98jn2tgqTR7PIcvPnO7CPqzmQAg+Vhd1bzCLaDRupF+uu/ rz6TaJFgbxMFzMFytl7sTQoLcD2+iB2mrfXS1Il2fB37gQWhWlSTOZjwJiMzcgZNyB4BPO S+jzilIahsYpQX3sRoRQ8nWa2H6GZMPrLNS8iZcc5jiV+gs3ubqQCI004av+2rfaU+Mudh Z4u6I2HyAwFRGf1MF5/m6rg0hoq9S4Om9NJLuxgGbzgSr1vZZj3bKtHdoSSINVNbARZPgk neG6AZzWCllChY9ZA1ELohKIJeirPMbYClspacm9rnksaPQGNjy4hvjI8Q+UDw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764621794; a=rsa-sha256; cv=none; b=a8OC3FsSnCOUGJX2GeKwuks8XEdY4ufbaD5o+OCBjEUbmvW47xHiVZv47j1rDAOdDts6V9 KrPyBWGqo+GzLJEZXwHpFHYrIket+p9MisEMj1pliHgQfpQWPZ3WbGOeIQtIXtPJwFKsQv MGeSqgBIt99II0B+b69CnYKgUV00JUQ49TRQvr0dVMNO8GfFkLQEBtUq7n2Vks+IOKash4 D5jkI8TB1NUznHPEJ4RlXxH5LL15oiVR64Kq//wXQd3u/aBHHgCl/ZGJKGCCPYdZqT+IVp D3ejFG8R4Ghp6zUipg7S9E1lGKAP9h3+7zg1OEKfH5ASu7VpdVJ0aOrQsuLlhA== 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 4dKwpV40qdzdQh for ; Mon, 01 Dec 2025 20:43:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 305b9 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 20:43:14 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Robert Wahlberg From: Vladimir Kondratyev Subject: git: e3201cec8381 - main - psm: Fix three finger tap on elantech v4 touchpads List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e3201cec8381c0582374f93991eff4a71bb95e9b Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 20:43:14 +0000 Message-Id: <692dfde2.305b9.6c8cabfe@gitrepo.freebsd.org> The branch main has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=e3201cec8381c0582374f93991eff4a71bb95e9b commit e3201cec8381c0582374f93991eff4a71bb95e9b Author: Robert Wahlberg AuthorDate: 2025-12-01 20:42:15 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-12-01 20:42:15 +0000 psm: Fix three finger tap on elantech v4 touchpads Fix an issue where a three finger tap would generate additional events when fingers moved slightly during the tap. Signed-off-by: Robert Wahlberg Pull Request: https://github.com/freebsd/freebsd-src/pull/1792 Reviewed by: wulf MFC after: 1 month --- sys/dev/atkbdc/psm.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sys/dev/atkbdc/psm.c b/sys/dev/atkbdc/psm.c index 137758b104d3..d36396df0fa0 100644 --- a/sys/dev/atkbdc/psm.c +++ b/sys/dev/atkbdc/psm.c @@ -4666,6 +4666,13 @@ proc_elantech(struct psm_softc *sc, packetbuf_t *pb, mousestatus_t *ms, mask = sc->elanaction.mask; nfingers = bitcount(mask); + /* The motion packet can only update two fingers at a time. + * Copy the previous state to get all active fingers. */ + for (id = 0; id < ELANTECH_MAX_FINGERS; id++) + if (sc->elanaction.mask & (1 << id)) + f[id] = sc->elanaction.fingers[id]; + + /* Update finger positions from the new packet */ scale = (pb->ipacket[0] & 0x10) ? 5 : 1; for (i = 0; i <= 3; i += 3) { id = ((pb->ipacket[i] & 0xe0) >> 5) - 1; From nobody Mon Dec 1 20:43:15 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKwpX1gjsz6KKb5 for ; Mon, 01 Dec 2025 20:43:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKwpW5bgWz4NmK for ; Mon, 01 Dec 2025 20:43:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764621795; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TVeFDkxzj+su1LlyUPxSitPe0i025THyYpIOMFf/E1A=; b=O2I6IqIjfkmKG7EPwTqrzupMC58X07UA890E0hD4ndhHc0bQhZ72HCWkGmMEO8pOU+e8Mt ghzj8QjPf+kGQaErCRE4szwXd661lN7r+2OvDMZkeH91im6VOr2rtCmxQG5ya0vFVMKEnJ +0CWnx7jIgaPiyPMWqIkDDbCP9FfC73OE6W7a4NeA3Sqle/Za+muV+bxYFETJj2ZJIjVm3 v3q2GUBOh+6z27iHGVlEY1SLMQT6w4+bna+bH516aIjLkTY+7ZDwZxQDRgugiPAq/sLv2l 39SprbRnh3YbVAQZY8r9+GSq35QAnz3SKQgUDziSUlZufUsZQSHweHlR7aLcww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764621795; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TVeFDkxzj+su1LlyUPxSitPe0i025THyYpIOMFf/E1A=; b=IOkDraEY7Se+ry6zoNZ/7H8wFvHg3Qf9WzpF5kl8dXzX2Ju5Hq38IkVFvo9psm8EKBTtX2 cvxYM+rCIqzMezmnJDz5NSOh7xJaihFSBSI4ePNkieEYBBswth1iPSBOZqngnM4w35f1bH 5rhb20RrM4WmEvtBls8nyzAT5thy59uhC0F/bucbjBxOvhgFuHxLewUssCJAOY5OX66qOE Jav/TQetybcZDyzBPBLABiN/6PFh88/Kfln1PzmeFeW8XDlDeeLf1VnZrPFQLw8+TkYv51 xBw6AajIEDb6j4g2v688IIaW1ewJHgvioLW03KSvrOU74z8pDA05DKiVUAGtIQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764621795; a=rsa-sha256; cv=none; b=IOH8fbweiQKRC1qbcTxUHG2DFwkaIlLkGi+PUWQchGjaHIEomhrMcGHhXh2q+IkdA7YwDa 4/2DN+XU3VGlbPF51lCFMNMha7b63o/M9+IJj3bffM3SZgQryXf+kDmeJ8P9bdCQn2ULp8 4ET73Xy8+KHUnlqnJGMgf1xJr/7ZHCX4Zw+/tS0A6lA43MqwxqNwQkI2mu05xSwStzA5sU 4vhLpGdrNk3t2xZQYCbgdND+uO3Kxsp/SwLW650qN+3ryJxXzUki06qzmTy3EWxVIxdiqo D3BSiJPEXa2kUPlq3a4CS9dBm/NrgoPn0Ng/asLhCbPBXlRDn4gk+RNSaKpq8g== 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 4dKwpW4njYzdGC for ; Mon, 01 Dec 2025 20:43:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 31989 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 20:43:15 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Vladimir Kondratyev Subject: git: 8d9a5d44b155 - main - evdev: Sync event codes with Linux kernel 6.18 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8d9a5d44b155af7123893a6948ad7e86b48c57b3 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 20:43:15 +0000 Message-Id: <692dfde3.31989.779fec7b@gitrepo.freebsd.org> The branch main has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=8d9a5d44b155af7123893a6948ad7e86b48c57b3 commit 8d9a5d44b155af7123893a6948ad7e86b48c57b3 Author: Vladimir Kondratyev AuthorDate: 2025-12-01 20:42:15 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-12-01 20:42:15 +0000 evdev: Sync event codes with Linux kernel 6.18 MFC after: 1 month --- sys/dev/evdev/input-event-codes.h | 28 ++++++++++++++- sys/dev/evdev/input.h | 73 +++++++++++++++++++++++---------------- 2 files changed, 71 insertions(+), 30 deletions(-) diff --git a/sys/dev/evdev/input-event-codes.h b/sys/dev/evdev/input-event-codes.h index 59eb8e104c87..81c88ec86b9b 100644 --- a/sys/dev/evdev/input-event-codes.h +++ b/sys/dev/evdev/input-event-codes.h @@ -39,6 +39,7 @@ #define INPUT_PROP_TOPBUTTONPAD 0x04 /* softbuttons at top of pad */ #define INPUT_PROP_POINTING_STICK 0x05 /* is a pointing stick */ #define INPUT_PROP_ACCELEROMETER 0x06 /* has accelerometer */ +#define INPUT_PROP_PRESSUREPAD 0x07 /* pressure triggers clicks */ #define INPUT_PROP_MAX 0x1f #define INPUT_PROP_CNT (INPUT_PROP_MAX + 1) @@ -531,6 +532,7 @@ #define KEY_NOTIFICATION_CENTER 0x1bc /* Show/hide the notification center */ #define KEY_PICKUP_PHONE 0x1bd /* Answer incoming call */ #define KEY_HANGUP_PHONE 0x1be /* Decline incoming call */ +#define KEY_LINK_PHONE 0x1bf /* AL Phone Syncing */ #define KEY_DEL_EOL 0x1c0 #define KEY_DEL_EOS 0x1c1 @@ -612,8 +614,14 @@ #define BTN_DPAD_LEFT 0x222 #define BTN_DPAD_RIGHT 0x223 +#define BTN_GRIPL 0x224 +#define BTN_GRIPR 0x225 +#define BTN_GRIPL2 0x226 +#define BTN_GRIPR2 0x227 + #define KEY_ALS_TOGGLE 0x230 /* Ambient light sensor */ #define KEY_ROTATE_LOCK_TOGGLE 0x231 /* Display rotation lock */ +#define KEY_REFRESH_RATE_TOGGLE 0x232 /* Display refresh rate toggle */ #define KEY_BUTTONCONFIG 0x240 /* AL Button Configuration */ #define KEY_TASKMANAGER 0x241 /* AL Task/Project Manager */ @@ -629,10 +637,24 @@ #define KEY_CAMERA_ACCESS_ENABLE 0x24b /* Enables programmatic access to camera devices. (HUTRR72) */ #define KEY_CAMERA_ACCESS_DISABLE 0x24c /* Disables programmatic access to camera devices. (HUTRR72) */ #define KEY_CAMERA_ACCESS_TOGGLE 0x24d /* Toggles the current state of the camera access control. (HUTRR72) */ +#define KEY_ACCESSIBILITY 0x24e /* Toggles the system bound accessibility UI/command (HUTRR116) */ +#define KEY_DO_NOT_DISTURB 0x24f /* Toggles the system-wide "Do Not Disturb" control (HUTRR94)*/ #define KEY_BRIGHTNESS_MIN 0x250 /* Set Brightness to Minimum */ #define KEY_BRIGHTNESS_MAX 0x251 /* Set Brightness to Maximum */ +/* + * Keycodes for hotkeys toggling the electronic privacy screen found on some + * laptops on/off. Note when the embedded-controller turns on/off the eprivacy + * screen itself then the state should be reported through drm connecter props: + * https://www.kernel.org/doc/html/latest/gpu/drm-kms.html#standard-connector-properties + * Except when implementing the drm connecter properties API is not possible + * because e.g. the firmware does not allow querying the presence and/or status + * of the eprivacy screen at boot. + */ +#define KEY_EPRIVACY_SCREEN_ON 0x252 +#define KEY_EPRIVACY_SCREEN_OFF 0x253 + #define KEY_KBDINPUTASSIST_PREV 0x260 #define KEY_KBDINPUTASSIST_NEXT 0x261 #define KEY_KBDINPUTASSIST_PREVGROUP 0x262 @@ -773,6 +795,9 @@ #define KEY_KBD_LCD_MENU4 0x2bb #define KEY_KBD_LCD_MENU5 0x2bc +/* Performance Boost key (Alienware)/G-Mode key (Dell) */ +#define KEY_PERFORMANCE 0x2bd + #define BTN_TRIGGER_HAPPY 0x2c0 #define BTN_TRIGGER_HAPPY1 0x2c0 #define BTN_TRIGGER_HAPPY2 0x2c1 @@ -932,7 +957,8 @@ #define SW_MUTE_DEVICE 0x0e /* set = device disabled */ #define SW_PEN_INSERTED 0x0f /* set = pen inserted */ #define SW_MACHINE_COVER 0x10 /* set = cover closed */ -#define SW_MAX 0x10 +#define SW_USB_INSERT 0x11 /* set = USB audio device connected */ +#define SW_MAX 0x11 #define SW_CNT (SW_MAX+1) /* diff --git a/sys/dev/evdev/input.h b/sys/dev/evdev/input.h index 3b87101da75f..ce0fb616a3df 100644 --- a/sys/dev/evdev/input.h +++ b/sys/dev/evdev/input.h @@ -142,6 +142,8 @@ struct input_keymap_entry { #define BUS_RMI 0x1D #define BUS_CEC 0x1E #define BUS_INTEL_ISHTP 0x1F +#define BUS_AMD_SFH 0x20 +#define BUS_SDW 0x21 /* * MT_TOOL types @@ -203,20 +205,6 @@ struct ff_condition_effect { int16_t center; /* center of dead zone */ }; -/* - * Force feedback periodic effect types - */ - -#define FF_SQUARE 0x58 -#define FF_TRIANGLE 0x59 -#define FF_SINE 0x5a -#define FF_SAW_UP 0x5b -#define FF_SAW_DOWN 0x5c -#define FF_CUSTOM 0x5d - -#define FF_WAVEFORM_MIN FF_SQUARE -#define FF_WAVEFORM_MAX FF_CUSTOM - struct ff_periodic_effect { uint16_t waveform; uint16_t period; /* ms */ @@ -233,21 +221,14 @@ struct ff_rumble_effect { uint16_t weak_magnitude; /* magnitude of the light motor */ }; -/* - * Force feedback effect types - */ - -#define FF_RUMBLE 0x50 -#define FF_PERIODIC 0x51 -#define FF_CONSTANT 0x52 -#define FF_SPRING 0x53 -#define FF_FRICTION 0x54 -#define FF_DAMPER 0x55 -#define FF_INERTIA 0x56 -#define FF_RAMP 0x57 - -#define FF_EFFECT_MIN FF_RUMBLE -#define FF_EFFECT_MAX FF_RAMP +struct ff_haptic_effect { + uint16_t hid_usage; + uint16_t vendor_id; + uint8_t vendor_waveform_page; + uint16_t intensity; + uint16_t repeat_count; + uint16_t retrigger_period; +}; struct ff_effect { uint16_t type; @@ -262,9 +243,41 @@ struct ff_effect { struct ff_periodic_effect periodic; struct ff_condition_effect condition[2]; /* One for each axis */ struct ff_rumble_effect rumble; + struct ff_haptic_effect haptic; } u; }; +/* + * Force feedback effect types + */ + +#define FF_HAPTIC 0x4f +#define FF_RUMBLE 0x50 +#define FF_PERIODIC 0x51 +#define FF_CONSTANT 0x52 +#define FF_SPRING 0x53 +#define FF_FRICTION 0x54 +#define FF_DAMPER 0x55 +#define FF_INERTIA 0x56 +#define FF_RAMP 0x57 + +#define FF_EFFECT_MIN FF_HAPTIC +#define FF_EFFECT_MAX FF_RAMP + +/* + * Force feedback periodic effect types + */ + +#define FF_SQUARE 0x58 +#define FF_TRIANGLE 0x59 +#define FF_SINE 0x5a +#define FF_SAW_UP 0x5b +#define FF_SAW_DOWN 0x5c +#define FF_CUSTOM 0x5d + +#define FF_WAVEFORM_MIN FF_SQUARE +#define FF_WAVEFORM_MAX FF_CUSTOM + /* * force feedback device properties */ @@ -272,6 +285,8 @@ struct ff_effect { #define FF_GAIN 0x60 #define FF_AUTOCENTER 0x61 +#define FF_MAX_EFFECTS FF_GAIN + #define FF_MAX 0x7f #define FF_CNT (FF_MAX+1) From nobody Mon Dec 1 20:52:50 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKx1b3dGtz6Hcmp for ; Mon, 01 Dec 2025 20:52:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKx1b0hsHz3C0s for ; Mon, 01 Dec 2025 20:52:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764622371; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RS6qP0TO3+qdeurrI6vrhkbLyvhrXie8I3s8zU3MBb8=; b=U3tv7K9Utp6Qv8Xqoa7HHtmf8WoQyyokrqaOlCDsP8w8IeHHAa+anqFz1+vVGNZtq/8CrH PPoftJcnHjU1lXtS2RBafrAjZdWc1hwq9gmCiK0TbZdDGVZlqefS7dVXXCzjJnKF1hkyQM +H+3BKexfAtBIClO/Js/4ebZ0QuZqKno+rQeUu546nEK8A7dOVdqUAyVrF56MdnJA2BCjH ljKXLeq3vaWj7Gbe4q++Q/rpPTwugAuJfWXsnSXRGktEu37D3uxEG0cAHGFX0OsWmG5wYz JTpP0dBXsct0kw6GLpwo2Z9bSP7V9fg5XCfUMyXitA3VoGIt4O5nO9taI/0fJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764622371; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RS6qP0TO3+qdeurrI6vrhkbLyvhrXie8I3s8zU3MBb8=; b=gYH5G4z21b1jBOsYQPGSzmD9BBtoyMzDKv7IDbn7kEABwS93bSUPrHphl+UrONK1YtBCPR fCBEqCK0OJGZrCoV6AgyCj62jHGBWKwmzm12w/TyvHizbxL/bTWRqs0WVgxh2zgYMq9kYy Jh0VRLf159v/V5OjwE2ooF/dkMelEiltI4/29PNQ1imOY1g0IPlyjwMrITj6Zvu4SjhRlw DtlIBiYrWhSJarpRy9y7zrDuH7dAw6Bc+6WyGO/l3PYK394jXWat7UYhwp6phDplSvbKB4 XL7q8jfaQ1TW7bmsXNJKVbTaQdfiu+GankRRUfRSIMhaxMl2Ct93FJ11k31LHA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764622371; a=rsa-sha256; cv=none; b=sfMweIQrHPX1PCtlllNC1k2QhvDSpq9Kxi5f21klkM/+lcXzNaUH+j56XFFWaCUsnJ8+0J GBcWawhwVwZwX1h9POPjx9XJzCYgSaoM5o3BnX5g79wKWQYHlI3V/s4DQ1htJmDgbfGOJH 9MnWHOHjJCGjsllRuxGaqARMa//ARM/qFEXgAaLhgyPB207nI0SSqKCrsyrlmjSsuU6LSX 548zn3iAT5dxgovObKWVhFljeWi7enneuJbr/48QKc2l6rf9LS6HvanH8BzIRMlTJ0/lYS U2001cKfWg7lH2+EmFsfaqD0dbwuC0Py9+rYcU8A5qcTPKg06JQFJW6TNY473g== 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 4dKx1Z6x0vzcqs for ; Mon, 01 Dec 2025 20:52:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 324d6 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 20:52:50 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Peek Subject: git: 732b4aa05d78 - main - ctfmerge: fix segfault when building on macOS List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 732b4aa05d78ca6831d02e67a43f34ad104f4f01 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 20:52:50 +0000 Message-Id: <692e0022.324d6.525dccf4@gitrepo.freebsd.org> The branch main has been updated by mp: URL: https://cgit.FreeBSD.org/src/commit/?id=732b4aa05d78ca6831d02e67a43f34ad104f4f01 commit 732b4aa05d78ca6831d02e67a43f34ad104f4f01 Author: Mark Peek AuthorDate: 2025-12-01 20:50:24 +0000 Commit: Mark Peek CommitDate: 2025-12-01 20:50:24 +0000 ctfmerge: fix segfault when building on macOS The barrier code was using semaphores which have been deprecated in macOS and not working at all, causing a race condition. Since macOS does not have pthread_barrier_*(), this change uses a condition variable instead. PR: 290958 Reported by: wosch MFC after: 2 weeks Reviewed by: imp, markj Differential Revision: https://reviews.freebsd.org/D54018 --- cddl/contrib/opensolaris/tools/ctf/cvt/barrier.c | 26 +++--------------------- cddl/contrib/opensolaris/tools/ctf/cvt/barrier.h | 9 ++------ 2 files changed, 5 insertions(+), 30 deletions(-) diff --git a/cddl/contrib/opensolaris/tools/ctf/cvt/barrier.c b/cddl/contrib/opensolaris/tools/ctf/cvt/barrier.c index c0719620dbde..e1f54e994ce3 100644 --- a/cddl/contrib/opensolaris/tools/ctf/cvt/barrier.c +++ b/cddl/contrib/opensolaris/tools/ctf/cvt/barrier.c @@ -38,9 +38,6 @@ */ #include -#ifdef illumos -#include -#endif #include #include "barrier.h" @@ -49,12 +46,7 @@ void barrier_init(barrier_t *bar, int nthreads) { pthread_mutex_init(&bar->bar_lock, NULL); -#ifdef illumos - sema_init(&bar->bar_sem, 0, USYNC_THREAD, NULL); -#else - sem_init(&bar->bar_sem, 0, 0); -#endif - + pthread_cond_init(&bar->bar_cv, NULL); bar->bar_numin = 0; bar->bar_nthr = nthreads; } @@ -65,26 +57,14 @@ barrier_wait(barrier_t *bar) pthread_mutex_lock(&bar->bar_lock); if (++bar->bar_numin < bar->bar_nthr) { + pthread_cond_wait(&bar->bar_cv, &bar->bar_lock); pthread_mutex_unlock(&bar->bar_lock); -#ifdef illumos - sema_wait(&bar->bar_sem); -#else - sem_wait(&bar->bar_sem); -#endif return (0); - } else { - int i; - /* reset for next use */ bar->bar_numin = 0; - for (i = 1; i < bar->bar_nthr; i++) -#ifdef illumos - sema_post(&bar->bar_sem); -#else - sem_post(&bar->bar_sem); -#endif + pthread_cond_broadcast(&bar->bar_cv); pthread_mutex_unlock(&bar->bar_lock); return (1); diff --git a/cddl/contrib/opensolaris/tools/ctf/cvt/barrier.h b/cddl/contrib/opensolaris/tools/ctf/cvt/barrier.h index babf2e64e33f..138386f8ed46 100644 --- a/cddl/contrib/opensolaris/tools/ctf/cvt/barrier.h +++ b/cddl/contrib/opensolaris/tools/ctf/cvt/barrier.h @@ -33,12 +33,7 @@ * APIs for the barrier synchronization primitive. */ -#ifdef illumos -#include -#else -#include -typedef sem_t sema_t; -#endif +#include #ifdef __cplusplus extern "C" { @@ -48,7 +43,7 @@ typedef struct barrier { pthread_mutex_t bar_lock; /* protects bar_numin */ int bar_numin; /* current number of waiters */ - sema_t bar_sem; /* where everyone waits */ + pthread_cond_t bar_cv; /* where everyone waits */ int bar_nthr; /* # of waiters to trigger release */ } barrier_t; From nobody Mon Dec 1 21:09:31 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKxNw5RGXz6HfR5 for ; Mon, 01 Dec 2025 21:09:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKxNw4qXxz3DcL for ; Mon, 01 Dec 2025 21:09:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764623376; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AhXqzjL/4kEfQKHPkLrCTamfFwzo8ZxCzQ5Aa+d4U8w=; b=cNUqzDJwgAP1F2cPc+1kYbReH+6sKQECRH8nBBCqnGidx9giIogHzr5khgAFPAAp4cJ3nh XtGhJ+DoZp/US2ZaWL5aiZYb952WMWYrgKv4rMbR8BNPvMJUrLLI0DbQuIxrL7u7uGHej2 idKWOpeXpHQhs8NJX/QRswCDObqqwr9ZS4RTzFXYVRmB26n1NIrQbJloiwVQ64Vk+m7a6/ XJgx3ZPJgBRuf2fJ+7uU1BexpqQk+Nk7QE5gRVUntLEjIshJXTahOCGGj9pyP1rqV18dnw EmVSbgwAqrk68TF7Kvl/C5GJ7sMwPQOCKc7CI7BrrYNdjWhn1f6gAwRG6SafUA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764623376; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AhXqzjL/4kEfQKHPkLrCTamfFwzo8ZxCzQ5Aa+d4U8w=; b=Qe+VjmCvXJk54WnZu9PclKN0KW9jG5S6d6rH3hPn7iGg3hj4UcRE9teqoNWwfWbXY0xDme 6fhVGLw08xIvnacwT8gxEtS795zqtIYFSy+1aqUxjtQPbsxEgR5+7Rvhn09Qz167LZ7V+S Z97cD46OHGuZTbfCMkbQxZ0r21Z6V8MKSHOesKlZy2Oaean+IOxi/HSFYywlh9o7nh7Ptr KGCqGz0nUW0E+e7QXXSGfFAFSZLFRq9l9B6bBziVMiDNQDV8n6hjre++RqdGXkwO56jDgd ql7fxRHCz4TuNYyn+CNQsdgLAtCQplGekXsSC5JYwZ6uaJxMonl5KKUB/e+BrA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764623376; a=rsa-sha256; cv=none; b=u83R0UFmYQfbgw7M9D4COiTErg/HD5iIazFuKmcun/MlYfTAhUjWO/iFPIKZdmsHkn3hmr GqI016MOs1Bl6EWA+y2h201CMd9kkAztbTD3U0s3d9nsv12EK6xR9dkPH17+3A1cibBRPR tZl0tkHsCz0+z3BdkahOvv81olGVhf+bscPVut8b7P46M/+ehy1Tf7T6hucqoIBmR9BvZv vQ5nTha8ZbluEuzWfbgCqjxnZEVcbIzfiwbibAdYVVGfcS5DSJ5E4y1i6rMlIe6CaEqFBG nKHl8U+Qegv1JhmWW11mlIK5A/Hi3rnbIjMfzHpDl7to0li7dbmO220lrfkUxw== 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 4dKxNw48CYzdH0 for ; Mon, 01 Dec 2025 21:09:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 33592 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 21:09:31 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Vladimir Kondratyev Subject: git: dc6f609685a9 - main - msconvd(8): Drop mentions of Bus/InPort mouse support in manual page List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: dc6f609685a9bc41c67d3c1219311e0096982865 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 21:09:31 +0000 Message-Id: <692e040b.33592.1e1660d5@gitrepo.freebsd.org> The branch main has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=dc6f609685a9bc41c67d3c1219311e0096982865 commit dc6f609685a9bc41c67d3c1219311e0096982865 Author: Vladimir Kondratyev AuthorDate: 2025-12-01 21:09:00 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-12-01 21:09:00 +0000 msconvd(8): Drop mentions of Bus/InPort mouse support in manual page mse(4) was removed long ago. MFC after: 1 month --- usr.sbin/moused/msconvd/msconvd.8 | 21 ++------------------- 1 file changed, 2 insertions(+), 19 deletions(-) diff --git a/usr.sbin/moused/msconvd/msconvd.8 b/usr.sbin/moused/msconvd/msconvd.8 index 17434ecb9b60..b5d738d5b5ed 100644 --- a/usr.sbin/moused/msconvd/msconvd.8 +++ b/usr.sbin/moused/msconvd/msconvd.8 @@ -160,10 +160,11 @@ information are: .It Ar port Port (device file) name, i.e.\& .Pa /dev/cuau0 , +.Pa /dev/ums0 and .Pa /dev/psm0 . .It Ar if -Interface type: serial, bus, inport or ps/2. +Interface type: serial or ps/2. .It Ar type Protocol type. It is one of the types listed under the @@ -243,12 +244,6 @@ always choose or .Ar ps/2 , regardless of the brand and model of the mouse. -Likewise, if your -mouse is attached to the bus mouse port, choose -.Ar auto -or -.Ar busmouse . -Serial mouse protocols will not work with these mice. .Pp For the USB mouse, the protocol must be .Ar auto . @@ -304,14 +299,6 @@ Interlink VersaPad protocol. GTCO Digipad protocol. .El .Pp -For the bus and InPort mouse: -.Bl -tag -compact -width mousesystemsxxx -.It Ar busmouse -This is the only protocol type available for -the bus and InPort mouse and should be specified for any bus mice -and InPort mice, regardless of the brand. -.El -.Pp For the PS/2 mouse: .Bl -tag -compact -width mousesystemsxxx .It Ar ps/2 @@ -402,10 +389,6 @@ There is rule of thumb: .Pp .Bl -enum -compact -width 1.X .It -The bus and InPort mice always use -.Ar busmouse -protocol regardless of the brand of the mouse. -.It The .Ar ps/2 protocol should always be specified for the PS/2 mouse From nobody Mon Dec 1 21:31:20 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKxt04HBwz6HhZD for ; Mon, 01 Dec 2025 21:31:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKxt03KkFz3HFt for ; Mon, 01 Dec 2025 21:31:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764624680; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=f7yYwbrkUJXNkhf77Rbo3scshvwWZnyS5s8oVsE39QY=; b=C5foKIOR7YbiXrpQYmyVf37KaSV+S+KOtvgYkAkocIfTr1aHNF/Pkc+koqY6oDyBtqHokO 0d5Iz0SwkDB58wJuSpAxphykTGjfVeKG6ofyRuv6uJMLQu4IfWz4U1crqi8RJo1sNPrRZ6 d+JmqHZD5bMhF+520WTFljLUQyLXquAjLPpuaBxBFa5rYK5oKLkVJA86KiCO2/U4oCgCWc v4kF6ZBOjhCdacd78BfXZV2oOhcHP0a6qk+vwqa3SHBWxOZI8gkjv7JGbgKFVijl7U+tNy ItIvipmkkBf4Y8TNUaF6SnmGfLMzVHDDsDdK8s5IuOB6eUJwFxM4g3y9il+aag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764624680; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=f7yYwbrkUJXNkhf77Rbo3scshvwWZnyS5s8oVsE39QY=; b=Oc4Pw0gQSVplNh4hsPXQTKLlWMc0Mb2u0KTwSix+fRoSGLohnSVbrAbA8U4hB3XdYNenXZ IKkYCtiGuyfjQxfRpJ91WrjO9TIn6y5dT1m3nMW8HRi6DHO3xbmgv/78SqVSPURri4rKNP K317kFWRsrrS3FGO7VQpxw4/bhKWIQVjGK3pJtTnGP8pA44t9j65BVf7a1TXBh/UNUWdvy ce/Ood752k4dGJJdW8tiVUW82Pc5QNqpfh+za/1eEmlfufTWE5AvIXHvAP3d2yyUZ7hTg/ 0lCzHvTR8MCM3Lk0klflvuyubMRC3kzusiRgy+Dkyrv3YTbf8ZWcw5gKVG9B1w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764624680; a=rsa-sha256; cv=none; b=AksjuZrqoIALV65UZ1h079KOYYldKd/Mx9zJkuhuvslvUGtFdoxUX7ElCvsj0Y03TWvdcP sF9R1ht9E/QNcJr4fGZVQ6FxPGLosPdmqIUQy3XrCsqOoUAcNdezmUOM2LCn3yBMrL0jox lf8TFSYXxUDGqKytzprKOm/EB5Zdk+GPVgnwc+tX8QPkm3lxSha+NxjxUtod2mV05JbOf9 mniDVhgifA/F8AvyKFeyAc93O9lNyX6NTbJsNDzdZOaY1CQKtp7jLDRS0004xRmFsQgzVx ELkt1cgGh9IsG1MyucysmuTDIBJ+wDkCDPTcRU7FTJi5hXtVQdk2rgB4+Z8RhA== 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 4dKxt02c9gzdvr for ; Mon, 01 Dec 2025 21:31:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 365ed by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 21:31:20 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: d6f1acf94d3a - main - pf: use correct sized variables in pf_change_icmp() List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: d6f1acf94d3a1b310318ea3ff6c4f4b33bc8e85d Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 21:31:20 +0000 Message-Id: <692e0928.365ed.2ee91c72@gitrepo.freebsd.org> The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=d6f1acf94d3a1b310318ea3ff6c4f4b33bc8e85d commit d6f1acf94d3a1b310318ea3ff6c4f4b33bc8e85d Author: Kristof Provost AuthorDate: 2025-12-01 10:06:24 +0000 Commit: Kristof Provost CommitDate: 2025-12-01 21:30:21 +0000 pf: use correct sized variables in pf_change_icmp() We're updating 16-bits checksums here, so should use a 16-bit integer, not a 32-bit one. No functional change. Sponsored by: Rubicon Communications, LLC ("Netgate") --- sys/netpfil/pf/pf.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index 74d2182fe77b..2f09d47dc6e1 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -3531,7 +3531,7 @@ pf_change_icmp(struct pf_addr *ia, u_int16_t *ip, struct pf_addr *oa, /* Change inner protocol port, fix inner protocol checksum. */ if (ip != NULL) { u_int16_t oip = *ip; - u_int32_t opc; + u_int16_t opc; if (pc != NULL) opc = *pc; @@ -3547,7 +3547,7 @@ pf_change_icmp(struct pf_addr *ia, u_int16_t *ip, struct pf_addr *oa, switch (af) { #ifdef INET case AF_INET: { - u_int32_t oh2c = *h2c; + u_int16_t oh2c = *h2c; *h2c = pf_cksum_fixup(pf_cksum_fixup(*h2c, oia.addr16[0], ia->addr16[0], 0), From nobody Mon Dec 1 21:31:21 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKxt16D95z6Hhlb for ; Mon, 01 Dec 2025 21:31:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKxt148X1z3HRN for ; Mon, 01 Dec 2025 21:31:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764624681; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=deoyrXGU3HXZQwcGPO89faoHW+MD84k/Mtr34EIs0KY=; b=ye7/iNji4450PidDeaEpXYI3MmO9d95EI4BPRZtQMoAzqa6NXjrdfZkC2CEnGZPrpgCPHp qSp95zI5EfTv8B7VKVy3iqbzcM0JozAaXkU3tAABRh+cEaXqhi+hejKtu4aF/hQarrhQp7 xbQLFv6RaGbACwhJYHnZaOR+5EGQY2ZOxiXLsdwfdgHk8NFL9ot8Rmt0i0klrHzw2DDTYu uuy9ILEWcvdDwPtLYAbT+42JiXiCJ/pWHUDCoALfqygnA7GrLEcGdHHRpG4eNpuoqSIZ6W oslhR+A36lr4yfGhpuKhEc0Ixtpgcjeu12Jx3oIhkQS3nYSS0NFsCNLxePruNg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764624681; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=deoyrXGU3HXZQwcGPO89faoHW+MD84k/Mtr34EIs0KY=; b=MYdaA8oHN733ELx174iYNWJezasH4z3rax23u/4dWmvEhcp9N83YHRzdYdODhpdLbPH5dA VRLWnk8O+NEkqqOK10+7w5r+BOfQw2nSzyCsAJCzhlf/AjFB9+pqfh5JfaEhMpwZkTq8q7 gqecmatj1evu0bzB5RgHaD/3l3+MTibjGplfPtpOgdoU/0n7Q6ikneQArAwtcxI5vZwOD7 rp68b9hp4AC+AdlXO01KoBt4gGy3+ON5xrFYJJLpswY61WkpeppG5Hw5qE3dRtZXavU59M oW21GkWBn439a7hwBhtcjFrIBP+LNo0+4vhNbkjMvPUlBGasvgIliKqOYg5+3Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764624681; a=rsa-sha256; cv=none; b=f+cVFXOyfwL/lYlkcQVOBSkXM1IohHTIkzjFx5oFGpRIdmP8iPTERRGC+Kpwxr3KPdenWo wbYAExhrx6dj5rGl98ryfED3aT1xmn1/WmcTIYTZvHNIB1OjqifxGDKtCrmBM8QpVJBVGb 20yx2ZJjY/DCNAnk/lNxudlrrKws7LKxCuOWNMZAN2uCtO17wZk0GksY8ncsCdMZ9Po45H DTB3DMHEuTtnNSQ5Xk72tPov+QTAHGw/pP3rG50o3qKqFnVnLg25VakiM7NMhmYrpSfpMm sw1xVFvg/bNEsGRB4ZQ5tXgzEaqNibq3PMX2vDYbsLLbsCddQl0meUCBZDk8XA== 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 4dKxt13QgCzdJ4 for ; Mon, 01 Dec 2025 21:31:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3552a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 21:31:21 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 7a283c40188f - main - pfctl: restore '-Tload -f pf.conf' functionality List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 7a283c40188ff7b0a4bae1a47bbd9ecc17ded132 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 21:31:21 +0000 Message-Id: <692e0929.3552a.7b0a98e@gitrepo.freebsd.org> The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=7a283c40188ff7b0a4bae1a47bbd9ecc17ded132 commit 7a283c40188ff7b0a4bae1a47bbd9ecc17ded132 Author: Kristof Provost AuthorDate: 2025-12-01 15:05:09 +0000 Commit: Kristof Provost CommitDate: 2025-12-01 21:30:30 +0000 pfctl: restore '-Tload -f pf.conf' functionality Allow only tables to be loaded from a file, rather than everything (i.e. including options, rules). Add a test case for this. PR: 291318 MFC after: 1 week Sponsored by: Rubicon Communications, LLC ("Netgate") --- sbin/pfctl/pfctl.c | 3 ++- tests/sys/netpfil/pf/table.sh | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/sbin/pfctl/pfctl.c b/sbin/pfctl/pfctl.c index ae3599b9e4e5..5ab4687dd35f 100644 --- a/sbin/pfctl/pfctl.c +++ b/sbin/pfctl/pfctl.c @@ -3406,7 +3406,8 @@ main(int argc, char *argv[]) if ((opts & PF_OPT_NODNS) && (opts & PF_OPT_USEDNS)) errx(1, "-N and -r are mutually exclusive"); - if ((tblcmdopt == NULL) ^ (tableopt == NULL)) + if ((tblcmdopt == NULL) ^ (tableopt == NULL) && + (tblcmdopt == NULL || *tblcmdopt != 'l')) usage(); if (tblcmdopt != NULL) { diff --git a/tests/sys/netpfil/pf/table.sh b/tests/sys/netpfil/pf/table.sh index 6761ce652beb..0b2b56592404 100644 --- a/tests/sys/netpfil/pf/table.sh +++ b/tests/sys/netpfil/pf/table.sh @@ -808,6 +808,40 @@ replace_cleanup() pft_cleanup } +atf_test_case "load" "cleanup" +load_head() +{ + atf_set descr 'Test pfctl -T load (PR 291318)' + atf_set require.user root +} + +load_body() +{ + pft_init + + epair_send=$(vnet_mkepair) + ifconfig ${epair_send}a 192.0.2.1/24 up + + vnet_mkjail alcatraz ${epair_send}b + jexec alcatraz ifconfig ${epair_send}b 192.0.2.2/24 up + jexec alcatraz pfctl -e + + echo -e "table persist { 172.16/12 }\nblock\npass in from \n" \ + | atf_check -s exit:0 jexec alcatraz pfctl -Tload -f - + + atf_check -s exit:0 -o ignore ping -c 3 192.0.2.2 + + atf_check -s exit:0 -o not-match:"block" \ + jexec alcatraz pfctl -sr + atf_check -s exit:0 -o match:'172.16.0.0/12' \ + jexec alcatraz pfctl -Tshow -t private +} + +load_cleanup() +{ + pft_cleanup +} + atf_init_test_cases() { atf_add_test_case "v4_counters" @@ -827,4 +861,5 @@ atf_init_test_cases() atf_add_test_case "show_recursive" atf_add_test_case "in_anchor" atf_add_test_case "replace" + atf_add_test_case "load" } From nobody Mon Dec 1 21:31:22 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKxt26sMVz6Hj01 for ; Mon, 01 Dec 2025 21:31:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKxt24dSJz3H76 for ; Mon, 01 Dec 2025 21:31:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764624682; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xor8iKcPQNa6g8Hzu4FGn3zH/vhOb5mqbpVdToJc7LI=; b=HbXKhQ3dTk6XUx8YCtBsthbmWCUTqNydSSnFvolOwZnxq7VnEvRzTBO24eq1um+ZpTfv+I mUrG8RmQRYbZPBKocfO0cqpqPbX1E/cQgxnyIAvaQjGLSUuRJ2kmSot6AknXadD/K8nUjg 6OnMr2Qw/iF25SdSg4HgHoY2hwnJ+Q8ZeDVx2uBbujfVXt9Vr3JiNnyGHqGdaBDQURpaJ1 58rtjeouoZssKwlBcLqVbi/tDC2WG7LJql0nJd4Fpphnkz9JVflFAyL7qdvvOAaWOc0grx wDn2IiUoBK4oSYb1O9znw7RKr+jFIdWG76ZaFxbxraSy8MeRk0T3HITu/Ju+cg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764624682; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xor8iKcPQNa6g8Hzu4FGn3zH/vhOb5mqbpVdToJc7LI=; b=aRm5HbloSYrMbxtrOjByNuMHpO7639MY1ISUbCCLaqNnHUA8oGPkkHdDg9Iem0zDlvE6AM CP5+VFpEO3WbRjjGvmERuyTO9JeKunBiC0NUVZPwDmeLNwI5gEfjUnjckxIK/VznscvepD n+9jzo1LCD5EUtacTBEZu2ARnozBGuBNxE1JQakA6tBvtbX9tC5CttvhxqgfYSvzYM6sHt vkBMEhCWXpVEsZK667RkIb9ALlr8NRO78QD6aYeDV9iCwM4hOb6R2Km40m+lI+gK8Z7nIY P4f2sM9o4QXmZTo/Oz2A8DqCLMy6gRt9g/8695gxLzLzMyLqC7IImjLqFIsVdQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764624682; a=rsa-sha256; cv=none; b=NGVs0jlizPJXAIVBlEqHYt425BkYIqPPBAnui4M8CT+R9NIuOz1T+09FHt2edGYM2uZCrF 1BdOpR38lJAlxfhADrNKKGxN4QlQDmCzTXuUnI0ST/Qv19Wu3zCeQpaAWabQdFeyEmNLA1 FMqbCys18IbERrKCKNTJ250CSkB7cxBAAsAf58bwdL2jVYHcMtQGRYKUWmY1etoWP0aQ2x wo20EHIoangqrFPppmcuVrT5r/EYny9p+r7ptoQrCFnzH6Gh+OKyStZ9XzHOvhbx5HrY2A XNCKzHa/3Kv5eDmLTi6Og+JUQBisidVRFj2jNVR4mLduSkSgsozRDirzo8NydQ== 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 4dKxt24BHYzdyX for ; Mon, 01 Dec 2025 21:31:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 344f5 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 21:31:22 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 639e65144aa7 - main - pfsync: fix incorrect unlock during destroy List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 639e65144aa71cb03b5431861803f528308760dc Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 21:31:22 +0000 Message-Id: <692e092a.344f5.30b2413f@gitrepo.freebsd.org> The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=639e65144aa71cb03b5431861803f528308760dc commit 639e65144aa71cb03b5431861803f528308760dc Author: Kristof Provost AuthorDate: 2025-12-01 21:30:56 +0000 Commit: Kristof Provost CommitDate: 2025-12-01 21:30:56 +0000 pfsync: fix incorrect unlock during destroy During pfsync_clone_destroy() we clean up pending packets. This may involve calling pfsync_undefer() or callout_drain(). We may not hold the bucket lock during callout_drain(), but must hold it during pfsync_undefer(). We incorrectly always released the lock, leading to assertion failures during cleanup if there were pending deferred packets. MFC after: 1 week Sponsored by: Orange Business Services --- sys/netpfil/pf/if_pfsync.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c index de69ecbb0985..b571734b4250 100644 --- a/sys/netpfil/pf/if_pfsync.c +++ b/sys/netpfil/pf/if_pfsync.c @@ -466,13 +466,13 @@ pfsync_clone_destroy(struct ifnet *ifp) TAILQ_FIRST(&b->b_deferrals); ret = callout_stop(&pd->pd_tmo); - PFSYNC_BUCKET_UNLOCK(b); if (ret > 0) { pfsync_undefer(pd, 1); } else { + PFSYNC_BUCKET_UNLOCK(b); callout_drain(&pd->pd_tmo); + PFSYNC_BUCKET_LOCK(b); } - PFSYNC_BUCKET_LOCK(b); } MPASS(b->b_deferred == 0); MPASS(TAILQ_EMPTY(&b->b_deferrals)); From nobody Tue Dec 2 00:01:56 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dL1Cn1DwRz6J1RT for ; Tue, 02 Dec 2025 00:01:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dL1Cn0CDLz3Z9J for ; Tue, 02 Dec 2025 00:01:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764633717; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XFhuE4KTCTOajlk6SGCXjDaomlzXJN/gVxja5fGQNMM=; b=pe4UatgILpCM/qVRQTsUx7Esn/UOyfZNy9tv3boZsuSL1GFlxqQdgTyorR/POgxynaX3U6 bS+P8rlV2qFBlLj/I8RurPAY/qw8NeGxl4UcvjPgy/GTnr3IWxITSZbDC6FfgDEV3UY1dh OAK9aBBF03QHLiiZkPbIPvsLe6URVtzsaDaYES6Zu6oRBnhRKVX+eHmIx7i4hFMdaBqxrY yZgbaK5AgDAUQF8/5p7UOQgZiTuFBcEZkb4MlePKUtgtzj1N0xTasod1c0aGwDnlZlyxrL nBWCTQIbkRKxw/E1JeRzsIuCOQk7JHGAAtdLTMK10KsqaFb16nCju/84bT9gBw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764633717; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XFhuE4KTCTOajlk6SGCXjDaomlzXJN/gVxja5fGQNMM=; b=k7AC0YSXkZAczAwYxw6FYpEYdYfJCJa79QVyHYLJJklpn0lUBhneCpIAeNz/tYE9r9RPZy xGcSd5cpVQ0b6LScSapGfJRO4fAnJlX6tgowK9S6+au8aH7QrdfCn33E1zaTDDpWtRwEOL yUubybxjWSMe3sANPWQPYRTLV++8oEXvVzmLiagopjgtqhgBR5jmw75uLtcCLLslC9iO3q PVBdsm8UJk0lGTdz2TtMF1ggsCe2p8RpmaPcWbaCK6Hm1vOBPZ1a3VlTm3IIcOkcnXl2BV 5x8EboJ0bTnXOW+25DlHN++2dO3hdAB+ILugbqhM1R9HRrd+jSq664X/y6pihg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764633717; a=rsa-sha256; cv=none; b=JvCKc4TAr4KV0eKX4NobvZbQih09oURoqKi0Of8GlMUFh15bs6HyvFkCTyyCTapyK4qF/8 8XVZYiHbjDLjjsv6wql43uBrycuk9fxnRNhQtWRJve/40IhO4SNdMZ6KAsaXwPUtfwphML ZuJ0oVa+bXcHDZiT5ms9vxpxiiVzXQQUKcTFjimHmhj49LMZBs8mQwCwwUHsI9q7Zc6EUW DUcsBAqTQSZMqfYyTYwJOMqM57py3dGoHBrti6hhapuPEuohWGOYfzZS8AbO/n/+YBLNPX N0PjVw0HaHuhMTUQ/rn5AM8wtFkwbgiD1x3ZQkGf/Dixkjeb1yZ8SC23424rmw== 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 4dL1Cm6vZ7zjWP for ; Tue, 02 Dec 2025 00:01:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id bdc4 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 00:01:56 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: Justin Hibbits Subject: git: 15d2c0588e86 - internal/admin - Welcome tpearson@ (Timothy Pearson) as a src committer List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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/internal/admin X-Git-Reftype: branch X-Git-Commit: 15d2c0588e864ccc7c530affbc5d1e5aead2e4d1 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 00:01:56 +0000 Message-Id: <692e2c74.bdc4.47ea1b1e@gitrepo.freebsd.org> The branch internal/admin has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=15d2c0588e864ccc7c530affbc5d1e5aead2e4d1 commit 15d2c0588e864ccc7c530affbc5d1e5aead2e4d1 Author: Justin Hibbits AuthorDate: 2025-12-01 23:56:41 +0000 Commit: Justin Hibbits CommitDate: 2025-12-02 00:00:34 +0000 Welcome tpearson@ (Timothy Pearson) as a src committer Timothy is joining the ranks of powerpc64 developers. Approved by: srcmgr --- access | 1 + mentors | 1 + 2 files changed, 2 insertions(+) diff --git a/access b/access index 14eb1581f8c9..88c81fa3b50d 100644 --- a/access +++ b/access @@ -164,6 +164,7 @@ theraven thj tijl tmunro +tpearson trasz tsoome tuexen diff --git a/mentors b/mentors index cb6442684d15..95cf2b95c40a 100644 --- a/mentors +++ b/mentors @@ -25,3 +25,4 @@ ram ken Co-mentor: mav rcm kp ssaxena imp theraven markj +tpearson jhibbits From nobody Tue Dec 2 01:16:16 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dL2sf0b8sz6J9fW for ; Tue, 02 Dec 2025 01:16:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dL2sd12LDz3nlD for ; Tue, 02 Dec 2025 01:16:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764638181; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A4QE5VTTs/dJTiArTqTPUWndrfXLG1iStC2vIl3HxHs=; b=fTZu7nRi8vIdm/PLMlOAN3a83zPzLgvCUCpRmIorppFscGwL8I8tmtIS+jx0khyppWYj6E G4hq/7xIJ6SIjdqXLMg789MrFMVhaDjk35b3zplFjOuTVYTTbA5PEAseJyPxY+z52/7+nQ 6Pr92UErzGasoq1bgi+tp8XQfQ3XxA/R3zxZpFK78fwWVHqIQIkRDZR6kz+b3SCPgC5ddH BubOo6OQiCB7TN6bF02vp6juUHS2wxPjGO3TSqmf8gov+2+x8pIj8CYC0m/Ada8oVi2kHP AJky1nqxxDj3wnGgEBUaTQwHekVKSuFsKeik22cFgshTQBIFTMaIXHWC0s3WcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764638181; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A4QE5VTTs/dJTiArTqTPUWndrfXLG1iStC2vIl3HxHs=; b=DYps6RA90kuI0n1m8KAmBgzSJkwm9262mFgG1uRTXlKLA8sTZ+gQ15wEUZRGGZcYf0lCMI O+AtRX8cX9fqlLScOryJ428Zdt4ZvW8d9JwbhTx78q5Lvcz9AdlpKf+wSbdcEu5xHrIumi srFflrIL1y4nIpsN6d1kxwfJX9Sygsb4FFBqbnXND5c0vKedgEpCusggqKqu7Dg1+5uLvm t10REbF6xpUhxyA3qQB8Y9c4VDBKV4VM4vNGb/D2xROxItAUdmprgUNnOyR7I2ex86pQhK xbwvQpM69Z/xTdMjoOr6jX607bEU7T+na2gODoAXGvGKl004TU0e98IncpzKEw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764638181; a=rsa-sha256; cv=none; b=vkxI5ST2hGtSMSvu8jkPQR23E2vUlPEhzvLGhJSzQRpyNT10hwnxXdTge6YqnMd8xdMqKZ 8XT9L0WGXqPuwMB6yckG5Q9zDmM3rTP1sKr84aNEf8c8VD95FY6NJ0x/mHy4zN/zNTvrQz ymLXWMJUDymsb/aecSqMLcm4Y3vA34URwaDvBB+SF7+kh7zXoREbfN57HyKV6rhWHZu6/f WREaKdhsoX2gwSywu4JhIpwJJh1IQEjlPZD2pqUW3imRnU6Y4X8sRUfgUsxFg9dDm8yFG+ DX5Lmpq8+IKxjhDhhrEmmdy/0fGw+n2TlUxxrZZcqWDa149np99slqxLKL9HJg== 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 4dL2sd0Vynzl65 for ; Tue, 02 Dec 2025 01:16:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 24cb8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 01:16:16 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Diane Bruce Subject: git: 791c531402bd - main - Fintek F81232 USB to serial driver List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: db X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 791c531402bd36252532a11c317fb6a5fdb9c000 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 01:16:16 +0000 Message-Id: <692e3de0.24cb8.2258136d@gitrepo.freebsd.org> The branch main has been updated by db: URL: https://cgit.FreeBSD.org/src/commit/?id=791c531402bd36252532a11c317fb6a5fdb9c000 commit 791c531402bd36252532a11c317fb6a5fdb9c000 Author: Diane Bruce AuthorDate: 2025-12-02 01:12:21 +0000 Commit: Diane Bruce CommitDate: 2025-12-02 01:15:37 +0000 Fintek F81232 USB to serial driver Driver for Feature Integration Technology Inc. (aka Fintek) F81232 USB to serial driver. Reviewed by: thj,adrian,UB Approved by: adrian Differential Revision: https://reviews.freebsd.org/D53893 --- share/man/man4/ufintek.4 | 118 +++++++ sys/dev/usb/serial/ufintek.c | 759 +++++++++++++++++++++++++++++++++++++++++++ sys/modules/ufintek/Makefile | 37 +++ 3 files changed, 914 insertions(+) diff --git a/share/man/man4/ufintek.4 b/share/man/man4/ufintek.4 new file mode 100644 index 000000000000..89e3d7b6e504 --- /dev/null +++ b/share/man/man4/ufintek.4 @@ -0,0 +1,118 @@ +.\"- +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2025 Diane Bruce +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd November, 2025 +.Dt UFINTEK 4 +.Os +.Sh NAME +.Nm ufintek +.Nd Fintek F81232 USB to serial UART driver +.Sh SYNOPSIS +.Cd "device usb" +.Cd "device ucom" +.Cd "device ufintek" +.Pp +In +.Xr rc.conf 5 : +.Cd kld_list="ufintek" +.Pp +In +.Xr sysctl.conf 5 : +.Cd hw.usb.ufintek.debug=1 +.Sh DESCRIPTION +The +.Nm +driver provides support for the F81232 serial adapter from FINTEK. +If the appropriate hardware is detected, +the driver will be loaded automatically by +.Xr devmatch 8 . +To load the driver manually, add it to the +.Ic kld_list +in +.Xr rc.conf 5 , +or use +.Xr kldload 8 +at runtime. +The device is accessed through the +.Xr ucom 4 +driver which makes it behave like a +.Xr tty 4 . +.Pp +Call out through this interface with applications like +.Xr cu 1 +or +.Xr tip 1 . +.Sh HARDWARE +The +.Nm +driver supports the following USB to serial UART controllers: +.Pp +.Bl -bullet -compact +.It +FT82332 +.El +.Sh SYSCTL VARIABLES +These settings can be entered in the +.Xr loader 8 +prompt, set in +.Xr loader.conf 5 , +.Xr sysctl.conf 5 , +or changed at runtime with +.Xr sysctl 8 : +.Bl -tag -width "hw.usb.uftdi.debug" +.It Va hw.usb.uftdi.debug +Enable debugging messages, default +.Ql 0 +.Ql 1 +.El +.Sh FILES +.Bl -tag -width "/dev/ttyU*.init" -compact +.It Pa /dev/ttyU* +for callin ports +.It Pa /dev/ttyU*.init +.It Pa /dev/ttyU*.lock +corresponding callin initial-state and lock-state devices +.Pp +.It Pa /dev/cuaU* +for callout ports +.It Pa /dev/cuaU*.init +.It Pa /dev/cuaU*.lock +corresponding callout initial-state and lock-state devices +.El +.Sh SEE ALSO +.Xr cu 1 , +.Xr tty 4 , +.Xr ucom 4 , +.Xr usb 4 +.Sh HISTORY +The +.Nm +driver appeared in +.Fx 16.0 +.Sh BUGS +This driver is limited to 9600 baud. + diff --git a/sys/dev/usb/serial/ufintek.c b/sys/dev/usb/serial/ufintek.c new file mode 100644 index 000000000000..ab2e35678c07 --- /dev/null +++ b/sys/dev/usb/serial/ufintek.c @@ -0,0 +1,759 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2025 Diane Bruce + * All rights reserved + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer + * in this position and unchanged. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR 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. + */ + +/* + * Device driver for Fintek F81232 USB to UART bridge. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include "usbdevs.h" + +#define USB_DEBUG_VAR ufintek_debug +#include +#include + +#include + +#ifdef USB_DEBUG +static int ufintek_debug = 0; + +static SYSCTL_NODE(_hw_usb, OID_AUTO, ufintek, CTLFLAG_RW | CTLFLAG_MPSAFE, 0, + "USB ufintek"); +SYSCTL_INT(_hw_usb_ufintek, OID_AUTO, debug, CTLFLAG_RWTUN, + &ufintek_debug, 1, "Debug level"); +#endif + +#define UFINTEK_BUFSIZE 256 +#define UFINTEK_CONFIG_INDEX 0 + +#define UFINTEK_REGISTER_REQUEST 0xA0 /* uint8_t request */ +#define UFINTEK_READ 0xC0 /* uint8_t requesttype */ +#define UFINTEK_WRITE 0x40 /* uint8_t requesttype */ + +#define UFINTEK_IFACE_INDEX 0 + +#define UFINTEK_UART_REG 0x120 + +/* + * It appears the FINTEK serial port looks much like a 16550 + */ + +#define UFINTEK_RXBUF 0x00 /* Receiver Buffer Read only */ +#define UFINTEK_TXBUF 0x00 /* Transmitter Holding Register Write only*/ +#define UFINTEK_IER 0x01 /* Interrupt Enable Read/Write */ +#define UFINTEK_IIR 0x02 /* Interrupt Identification Read only */ +#define UFINTEK_FCR 0x02 /* FIFO control Write only */ +#define UFINTEK_LCR 0x03 /* Line Control Register Read/Write */ +#define UFINTEK_MCR 0x04 /* Modem Control Write only */ +#define UFINTEK_LSR 0x05 /* Line Status Read only */ +#define UFINTEK_MSR 0x06 /* Modem Status Read only */ + +#define UFINTEK_BAUDLO 0x00 /* Same as UFINTEK_TXBUF and UFINTEK_RXBUF */ +#define UFINTEK_BAUDHI 0x01 /* Same as UFINTEK_IER */ + +/* From uart16550.readthedocs.io */ +#define UFINTEK_IER_RXEN 0x01 /* Received data available interrupt */ +#define UFINTEK_IER_TXEN 0x02 +#define UFINTEK_IER_RSEN 0x04 /* Receiver line status interrupt */ +#define UFINTEK_IER_MSI 0x08 +#define UFINTEK_IER_SLEEP 0x10 +#define UFINTEK_IER_XOFF 0x20 +#define UFINTEK_IER_RTS 0x40 + +#define UFINTEK_FCR_EN 0x01 +#define UFINTEK_FCR_RXCLR 0x02 +#define UFINTEK_FCR_TXCLR 0x04 +#define UFINTEK_FCR_DMA_BLK 0x08 +#define UFINTEK_FCR_TXLVL_MASK 0x30 +#define UFINTEK_FCR_TRIGGER_8 0x80 + +#define UFINTEK_ISR_NONE 0x01 +#define UFINTEK_ISR_TX 0x02 +#define UFINTEK_ISR_RX 0x04 +#define UFINTEK_ISR_LINE 0x06 +#define UFINTEK_ISR_MDM 0x08 +#define UFINTEK_ISR_RXTIMEOUT 0x0C +#define UFINTEK_ISR_RX_XOFF 0x10 +#define UFINTEK_ISR_RTSCTS 0x20 +#define UFINTEK_ISR_FIFOEN 0xC0 + +#define UFINTEK_LCR_WORDLEN_5 0x00 +#define UFINTEK_LCR_WORDLEN_6 0x01 +#define UFINTEK_LCR_WORDLEN_7 0x02 +#define UFINTEK_LCR_WORDLEN_8 0x03 + +/* As with ns16550 if word length is 5 then 2 stops is 1.5 stop bits. + * This mimics the ancient TTY15/19 (Murray code/Baudot) printers that + * needed an extra half stop bit to stop the mechanical clutch! +*/ +#define UFINTEK_LCR_STOP_BITS_1 0x00 +#define UFINTEK_LCR_STOP_BITS_2 0x04 + +#define UFINTEK_LCR_PARITY_NONE 0x00 +#define UFINTEK_LCR_PARITY_ODD 0x08 +#define UFINTEK_LCR_PARITY_EVEN 0x18 +#define UFINTEK_LCR_BREAK 0x40 +#define UFINTEK_LCR_DLAB 0x80 + +#define UFINTEK_MCR_DTR 0x01 +#define UFINTEK_MCR_RTS 0x02 +#define UFINTEK_MCR_LOOP 0x04 +#define UFINTEK_MCR_INTEN 0x08 +#define UFINTEK_MCR_LOOPBACK 0x10 +#define UFINTEK_MCR_XONANY 0x20 +#define UFINTEK_MCR_IRDA_EN 0x40 +#define UFINTEK_MCR_BAUD_DIV4 0x80 + +#define UFINTEK_LSR_RXDATA 0x01 +#define UFINTEK_LSR_RXOVER 0x02 +#define UFINTEK_LSR_RXPAR_ERR 0x04 +#define UFINTEK_LSR_RXFRM_ERR 0x08 +#define UFINTEK_LSR_RXBREAK 0x10 +#define UFINTEK_LSR_TXEMPTY 0x20 +#define UFINTEK_LSR_TXALLEMPTY 0x40 +#define UFINTEK_LSR_TXFIFO_ERR 0x80 + +#define UFINTEK_MSR_CTS_CHG 0x01 +#define UFINTEK_MSR_DSR_CHG 0x02 +#define UFINTEK_MSR_RI_CHG 0x04 +#define UFINTEK_MSR_CD_CHG 0x08 +#define UFINTEK_MSR_CTS 0x10 +#define UFINTEK_MSR_RTS 0x20 +#define UFINTEK_MSR_RI 0x40 +#define UFINTEK_MSR_CD 0x80 + +#define UFINTEK_BAUD_REF 115200 +#define UFINTEK_DEF_SPEED 115200 + +/* + * XXX Future use + * Baud rate multiplier clock + * On other similar FINTEK chips the divider clock can be modified + * via another port. This will be easy to add later. + * + * 0x00 1.846MHz + * 0x01 18.46MHz + * 0x10 24.00MHz + * 0x11 14.77MHz + */ +#define UFINTEK_CLK_REG 0x106 +#define UFINTEK_CLK_MSK 0x3 +#define UFINTEK_CLK_1_846 0x00 +#define UFINTEK_CLK_18_46 0x01 +#define UFINTEK_CLK_24_00 0x10 +#define UFINTEK_CLK_14_77 0x11 + +enum { + UFINTEK_BULK_DT_WR, + UFINTEK_BULK_DT_RD, + UFINTEK_N_TRANSFER, +}; + +struct ufintek_softc { + struct ucom_super_softc sc_super_ucom; + struct ucom_softc sc_ucom; + + struct usb_xfer *sc_xfer[UFINTEK_N_TRANSFER]; + struct usb_device *sc_udev; + struct mtx sc_mtx; + + uint32_t sc_model; + uint8_t sc_lcr; + uint8_t sc_mcr; +}; + +/* prototypes */ +static device_probe_t ufintek_probe; +static device_attach_t ufintek_attach; +static device_detach_t ufintek_detach; +static void ufintek_free_softc(struct ufintek_softc *); + +static usb_callback_t ufintek_write_callback; +static usb_callback_t ufintek_read_callback; +static void ufintek_free(struct ucom_softc *); +static void ufintek_cfg_open(struct ucom_softc *); +static void ufintek_cfg_close(struct ucom_softc *); +static void ufintek_cfg_set_dtr(struct ucom_softc *, uint8_t); +static void ufintek_cfg_set_rts(struct ucom_softc *, uint8_t); +static void ufintek_cfg_set_break(struct ucom_softc *, uint8_t); +static void ufintek_cfg_param(struct ucom_softc *, struct termios *); +static void ufintek_cfg_get_status(struct ucom_softc *, uint8_t *, uint8_t *); +static int ufintek_pre_param(struct ucom_softc *, struct termios *); +static void ufintek_cfg_write(struct ufintek_softc *, uint16_t, uint8_t); +static uint8_t ufintek_cfg_read(struct ufintek_softc *, uint16_t); +static void ufintek_start_read(struct ucom_softc *); +static void ufintek_stop_read(struct ucom_softc *); +static void ufintek_start_write(struct ucom_softc *); +static void ufintek_stop_write(struct ucom_softc *); +static void ufintek_poll(struct ucom_softc *ucom); + +static const struct usb_config ufintek_config[UFINTEK_N_TRANSFER] = { + [UFINTEK_BULK_DT_WR] = { + .type = UE_BULK, + .endpoint = UE_ADDR_ANY, + .direction = UE_DIR_OUT, + .bufsize = UFINTEK_BUFSIZE, + .flags = {.pipe_bof = 1,.force_short_xfer = 1,}, + .callback = &ufintek_write_callback, + }, + [UFINTEK_BULK_DT_RD] = { + .type = UE_BULK, + .endpoint = UE_ADDR_ANY, + .direction = UE_DIR_IN, + .bufsize = UFINTEK_BUFSIZE, + .flags = {.pipe_bof = 1,.short_xfer_ok = 1,}, + .callback = &ufintek_read_callback, + }, +}; + +static const struct ucom_callback ufintek_callback = { + /* configuration callbacks */ + .ucom_cfg_get_status = &ufintek_cfg_get_status, + .ucom_cfg_set_dtr = &ufintek_cfg_set_dtr, + .ucom_cfg_set_rts = &ufintek_cfg_set_rts, + .ucom_cfg_set_break = &ufintek_cfg_set_break, + .ucom_cfg_open = &ufintek_cfg_open, + .ucom_cfg_close = &ufintek_cfg_close, + .ucom_cfg_param = &ufintek_cfg_param, + .ucom_pre_param = &ufintek_pre_param, + .ucom_start_read = &ufintek_start_read, + .ucom_stop_read = &ufintek_stop_read, + .ucom_start_write = &ufintek_start_write, + .ucom_stop_write = &ufintek_stop_write, + .ucom_poll = &ufintek_poll, + .ucom_free = &ufintek_free, +}; + +static device_method_t ufintek_methods[] = { + DEVMETHOD(device_probe, ufintek_probe), + DEVMETHOD(device_attach, ufintek_attach), + DEVMETHOD(device_detach, ufintek_detach), + DEVMETHOD_END +}; + +static driver_t ufintek_driver = { + .name = "ufintek", + .methods = ufintek_methods, + .size = sizeof(struct ufintek_softc), +}; + + +/* + * The following VENDOR PRODUCT definitions should be moved to usbdevs + * + * vendor FINTEK 0x1934 + * product FINTEK SERIAL 0x0706 + * + */ +#ifndef USB_VENDOR_FINTEK +#define USB_VENDOR_FINTEK 0x1934 +#endif +#ifndef USB_PRODUCT_FINTEK_SERIAL +#define USB_PRODUCT_FINTEK_SERIAL 0x0706 +#endif +#ifndef FINTEK_MODEL_F81232 +#define FINTEK_MODEL_F81232 0x02 +#endif + +static const STRUCT_USB_HOST_ID ufintek_devs[] = { + {USB_VPI(USB_VENDOR_FINTEK, USB_PRODUCT_FINTEK_SERIAL, FINTEK_MODEL_F81232)} +}; + +DRIVER_MODULE(ufintek, uhub, ufintek_driver, NULL, NULL); +MODULE_DEPEND(ufintek, ucom, 1, 1, 1); +MODULE_DEPEND(ufintek, usb, 1, 1, 1); +MODULE_VERSION(ufintek, 1); +USB_PNP_HOST_INFO(ufintek_devs); + +#define UFINTEK_DEFAULT_BAUD 115200 +#define UFINTEK_DEFAULT_LCR UFINTEK_LCR_WORDLEN_8|UFINTEK_LCR_STOP_BITS_1| \ + UFINTEK_LCR_PARITY_NONE + +static int +ufintek_probe(device_t dev) +{ + struct usb_attach_arg *uaa = device_get_ivars(dev); + + if (uaa->usb_mode != USB_MODE_HOST) { + return (ENXIO); + } + if (uaa->info.bConfigIndex != UFINTEK_CONFIG_INDEX) { + return (ENXIO); + } + if (uaa->info.bIfaceIndex != UFINTEK_IFACE_INDEX) { + return (ENXIO); + } + return (usbd_lookup_id_by_uaa(ufintek_devs, sizeof(ufintek_devs), uaa)); +} + +static int +ufintek_attach(device_t dev) +{ + struct usb_attach_arg *uaa = device_get_ivars(dev); + struct ufintek_softc *sc = device_get_softc(dev); + int error; + uint8_t iface_index; + + sc->sc_udev = uaa->device; + + device_set_usb_desc(dev); + + device_printf(dev, "\n"); + + mtx_init(&sc->sc_mtx, "ufintek", NULL, MTX_DEF); + ucom_ref(&sc->sc_super_ucom); + + DPRINTF("\n"); + + /* get chip model */ + sc->sc_model = USB_GET_DRIVER_INFO(uaa); + if (sc->sc_model == 0) { + device_printf(dev, "unsupported device\n"); + goto detach; + } + device_printf(dev, "FINTEK F8123%X USB to RS232 bridge\n", sc->sc_model); + iface_index = UFINTEK_IFACE_INDEX; + error = usbd_transfer_setup(uaa->device, &iface_index, + sc->sc_xfer, ufintek_config, + UFINTEK_N_TRANSFER, sc, &sc->sc_mtx); + + if (error) { + device_printf(dev, "allocating USB transfers failed\n"); + goto detach; + } + + /* clear stall at first run */ + mtx_lock(&sc->sc_mtx); + usbd_xfer_set_stall(sc->sc_xfer[UFINTEK_BULK_DT_WR]); + usbd_xfer_set_stall(sc->sc_xfer[UFINTEK_BULK_DT_RD]); + mtx_unlock(&sc->sc_mtx); + + error = ucom_attach(&sc->sc_super_ucom, &sc->sc_ucom, 1, sc, + &ufintek_callback, &sc->sc_mtx); + if (error) { + goto detach; + } + ucom_set_pnpinfo_usb(&sc->sc_super_ucom, dev); + + return (0); /* success */ + +detach: + ufintek_detach(dev); + return (ENXIO); +} + +static int +ufintek_detach(device_t dev) +{ + struct ufintek_softc *sc = device_get_softc(dev); + + ucom_detach(&sc->sc_super_ucom, &sc->sc_ucom); + usbd_transfer_unsetup(sc->sc_xfer, UFINTEK_N_TRANSFER); + + device_claim_softc(dev); + + ufintek_free_softc(sc); + + return (0); +} + +UCOM_UNLOAD_DRAIN(ufintek); + +static void +ufintek_free_softc(struct ufintek_softc *sc) +{ + if (ucom_unref(&sc->sc_super_ucom)) { + mtx_destroy(&sc->sc_mtx); + device_free_softc(sc); + } +} + +static void +ufintek_free(struct ucom_softc *ucom) +{ + ufintek_free_softc(ucom->sc_parent); +} + +static void +ufintek_cfg_open(struct ucom_softc *ucom) +{ + struct ufintek_softc *sc = ucom->sc_parent; + + /* Enable FIFO, trigger8 */ + ufintek_cfg_write(sc, UFINTEK_UART_REG | UFINTEK_FCR, + UFINTEK_FCR_EN | UFINTEK_FCR_TRIGGER_8); + + sc->sc_mcr = UFINTEK_MCR_DTR|UFINTEK_MCR_RTS; + ufintek_cfg_write(sc, UFINTEK_UART_REG | UFINTEK_MCR, sc->sc_mcr); + + /* Enable interrupts */ + ufintek_cfg_write(sc, UFINTEK_UART_REG | UFINTEK_IER, + UFINTEK_IER_MSI ); +} + +static void +ufintek_cfg_close(struct ucom_softc *ucom) +{ + return; +} + +static void +ufintek_cfg_set_break(struct ucom_softc *ucom, uint8_t onoff) +{ + struct ufintek_softc *sc = ucom->sc_parent; + + if (onoff) + sc->sc_lcr |= UFINTEK_LCR_BREAK; + else + sc->sc_lcr &= ~UFINTEK_LCR_BREAK; + + ufintek_cfg_write(sc, UFINTEK_UART_REG | UFINTEK_LCR, sc->sc_lcr); +} + +static void +ufintek_cfg_set_dtr(struct ucom_softc *ucom, uint8_t onoff) +{ + struct ufintek_softc *sc = ucom->sc_parent; + + if (onoff) + sc->sc_mcr |= UFINTEK_MCR_DTR; + else + sc->sc_mcr &= ~UFINTEK_MCR_DTR; + + ufintek_cfg_write(sc, UFINTEK_UART_REG | UFINTEK_MCR, sc->sc_mcr); +} + +static void +ufintek_cfg_set_rts(struct ucom_softc *ucom, uint8_t onoff) +{ + struct ufintek_softc *sc = ucom->sc_parent; + + if (onoff) + sc->sc_mcr |= UFINTEK_MCR_RTS; + else + sc->sc_mcr &= ~UFINTEK_MCR_RTS; + + ufintek_cfg_write(sc, UFINTEK_UART_REG | UFINTEK_MCR, sc->sc_mcr); +} + +static int +ufintek_pre_param(struct ucom_softc *ucom, struct termios *t) +{ + struct ufintek_softc *sc = ucom->sc_parent; + uint16_t divisor; + + if ((t->c_ospeed <= 1) || (t->c_ospeed > 115200)) + return (EINVAL); + + sc->sc_mcr = UFINTEK_MCR_DTR|UFINTEK_MCR_RTS; + sc->sc_lcr = UFINTEK_DEFAULT_LCR; + ufintek_cfg_write(sc, UFINTEK_UART_REG | UFINTEK_LCR, sc->sc_lcr); + + DPRINTF("baud=%d\n", t->c_ospeed); + + divisor = ((uint32_t)UFINTEK_BAUD_REF) / ((uint32_t)t->c_ospeed); + + if (divisor == 0) { + DPRINTF("invalid baud rate!\n"); + return (1); + } + + /* Flip RXBUF and TXBUF to BAUDLO and BAUDHI */ + ufintek_cfg_write(sc, UFINTEK_UART_REG | UFINTEK_LCR, UFINTEK_LCR_DLAB); + ufintek_cfg_write(sc, UFINTEK_UART_REG | UFINTEK_BAUDLO, + (divisor & 0xFF)); + ufintek_cfg_write(sc, UFINTEK_UART_REG | UFINTEK_BAUDHI, + ((divisor >> 8) & 0xFF)); + ufintek_cfg_write(sc, UFINTEK_UART_REG | UFINTEK_LCR, sc->sc_lcr); + + return (0); +} + +static void +ufintek_cfg_param(struct ucom_softc *ucom, struct termios *t) +{ + struct ufintek_softc *sc = ucom->sc_parent; + uint8_t lcr=0; + uint16_t divisor; + + DPRINTF("baud=%d\n", t->c_ospeed); + + divisor = ((uint32_t)UFINTEK_BAUD_REF) / ((uint32_t)t->c_ospeed); + + if (divisor == 0) { + DPRINTF("invalid baud rate!\n"); + return; + } + + /* Flip RXBUF and TXBUF to BAUDLO and BAUDHI */ + ufintek_cfg_write(sc, UFINTEK_UART_REG | UFINTEK_LCR, UFINTEK_LCR_DLAB); + ufintek_cfg_write(sc, UFINTEK_UART_REG | UFINTEK_BAUDLO, + (divisor & 0xFF)); + ufintek_cfg_write(sc, UFINTEK_UART_REG | UFINTEK_BAUDHI, + ((divisor >> 8) & 0xFF)); + + if (!(t->c_cflag & CIGNORE)) { + lcr = 0; + switch (t->c_cflag & CSIZE) { + case CS8: + lcr |= UFINTEK_LCR_WORDLEN_8; + break; + case CS7: + lcr |= UFINTEK_LCR_WORDLEN_7; + break; + case CS6: + lcr |= UFINTEK_LCR_WORDLEN_6; + break; + case CS5: + break; + default: + break; + } + + if (t->c_cflag & CSTOPB) + lcr |= UFINTEK_LCR_STOP_BITS_1; + if (t->c_cflag & PARODD) + lcr |= UFINTEK_LCR_PARITY_ODD; + else if (t->c_cflag & PARENB) + lcr |= UFINTEK_LCR_PARITY_EVEN; + } + sc->sc_lcr = lcr; + ufintek_cfg_write(sc, UFINTEK_UART_REG | UFINTEK_LCR, sc->sc_lcr); +} + +static void +ufintek_cfg_get_status(struct ucom_softc *ucom, uint8_t *p_lsr, uint8_t *p_msr) +{ + struct ufintek_softc *sc = ucom->sc_parent; + uint8_t lsr; + uint8_t ufintek_msr; + + lsr = ufintek_cfg_read(sc, UFINTEK_UART_REG | UFINTEK_LSR); + lsr &= 7; /* Only need bottom bits */ + *p_lsr = lsr; + + ufintek_msr = ufintek_cfg_read(sc, UFINTEK_UART_REG | UFINTEK_MSR); + + /* translate bits */ + + *p_msr = 0; + if (ufintek_msr & UFINTEK_MSR_CTS) + *p_msr |= SER_CTS; + + if (ufintek_msr & UFINTEK_MSR_CD) + *p_msr |= SER_DCD; + + if (ufintek_msr & UFINTEK_MSR_RI) + *p_msr |= SER_RI; + + if (ufintek_msr & UFINTEK_MSR_RTS) + *p_msr |= SER_RTS; +} + +static void +ufintek_start_read(struct ucom_softc *ucom) +{ + struct ufintek_softc *sc = ucom->sc_parent; + + usbd_transfer_start(sc->sc_xfer[UFINTEK_BULK_DT_RD]); +} + +static void +ufintek_stop_read(struct ucom_softc *ucom) +{ + struct ufintek_softc *sc = ucom->sc_parent; + + usbd_transfer_stop(sc->sc_xfer[UFINTEK_BULK_DT_RD]); +} + +static void +ufintek_start_write(struct ucom_softc *ucom) +{ + struct ufintek_softc *sc = ucom->sc_parent; + + usbd_transfer_start(sc->sc_xfer[UFINTEK_BULK_DT_WR]); +} + +static void +ufintek_stop_write(struct ucom_softc *ucom) +{ + struct ufintek_softc *sc = ucom->sc_parent; + + usbd_transfer_stop(sc->sc_xfer[UFINTEK_BULK_DT_WR]); +} + +static void +ufintek_cfg_write(struct ufintek_softc *sc, uint16_t reg, uint8_t val) +{ + struct usb_device_request req; + usb_error_t uerr; + uint8_t data; + + req.bmRequestType = UFINTEK_WRITE; + req.bRequest = UFINTEK_REGISTER_REQUEST; + USETW(req.wValue, reg); + USETW(req.wIndex, 0); + USETW(req.wLength, 1); + + data = val; + + uerr = ucom_cfg_do_request(sc->sc_udev, &sc->sc_ucom, + &req, &data, 0, 1000); + if (uerr != 0) + DPRINTF("failed to set ctrl %s\n", usbd_errstr(uerr)); +} + +static uint8_t +ufintek_cfg_read(struct ufintek_softc *sc, uint16_t reg) +{ + struct usb_device_request req; + uint8_t val; + + req.bmRequestType = UFINTEK_READ; + req.bRequest = UFINTEK_REGISTER_REQUEST; + USETW(req.wValue, reg); + USETW(req.wIndex, 0); + USETW(req.wLength, 1); + + ucom_cfg_do_request(sc->sc_udev, &sc->sc_ucom, + &req, &val, 0, 1000); + + DPRINTF("reg=0x%04x, val=0x%02x\n", reg, val); + return (val); +} + + +static void +ufintek_write_callback(struct usb_xfer *xfer, usb_error_t error) +{ + struct ufintek_softc *sc = usbd_xfer_softc(xfer); + struct usb_page_cache *pc; + uint32_t actlen; + + switch (USB_GET_STATE(xfer)) { + case USB_ST_SETUP: + case USB_ST_TRANSFERRED: +tr_setup: + + pc = usbd_xfer_get_frame(xfer, 0); + if (ucom_get_data(&sc->sc_ucom, pc, 0, + UFINTEK_BUFSIZE, &actlen)) { + usbd_xfer_set_frame_len(xfer, 0, actlen); + usbd_transfer_submit(xfer); + } + return; + + default: /* Error */ + if (error != USB_ERR_CANCELLED) { + /* try to clear stall first */ + usbd_xfer_set_stall(xfer); + goto tr_setup; + } + return; + } +} + +static void +ufintek_read_callback(struct usb_xfer *xfer, usb_error_t error) +{ + struct ufintek_softc *sc = usbd_xfer_softc(xfer); + struct usb_page_cache *pc; + int actlen; + uint8_t buf[UFINTEK_BUFSIZE]; + int i; + + usbd_xfer_status(xfer, &actlen, NULL, NULL, NULL); + switch (USB_GET_STATE(xfer)) { + case USB_ST_TRANSFERRED: + DPRINTF("got %d bytes\n", actlen); + if ((actlen < 2) || (actlen % 2)) + goto tr_setup; + pc = usbd_xfer_get_frame(xfer, 0); + usbd_copy_out(pc, 0, &buf, sizeof(buf)); + /* XXX From Linux driver the very first byte after open + * is supposed to be a status which we should ignore. + * Why it is 0xFF I don't know TBH. + */ + if (buf[0] == 0xFF) + buf[0] = ufintek_cfg_read(sc, UFINTEK_UART_REG); + else { + /* + * Annoyingly this device presents data as + * ... + */ + for (i = 0; i < actlen; i += 2) { + ucom_put_data(&sc->sc_ucom, pc, i+1, 1); + } + + /* FALLTHROUGH */ + } + case USB_ST_SETUP: +tr_setup: + usbd_xfer_set_frame_len(xfer, 0, usbd_xfer_max_len(xfer)); + usbd_transfer_submit(xfer); + return; + + default: /* Error */ + if (error != USB_ERR_CANCELLED) { + /* try to clear stall first */ + usbd_xfer_set_stall(xfer); + goto tr_setup; + } + return; + } +} + + + +static void +ufintek_poll(struct ucom_softc *ucom) +{ + struct ufintek_softc *sc = ucom->sc_parent; + usbd_transfer_poll(sc->sc_xfer, UFINTEK_N_TRANSFER); +} diff --git a/sys/modules/ufintek/Makefile b/sys/modules/ufintek/Makefile new file mode 100644 index 000000000000..8156205fdfd4 --- /dev/null +++ b/sys/modules/ufintek/Makefile @@ -0,0 +1,37 @@ +#- +# SPDX-License-Identifier: BSD-2-Clause +# +# Copyright (c) 2025 Diane Bruce +# All rights reserved +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# + +S= ${SRCTOP}/sys + +.PATH: $S/dev/usb/serial + +KMOD= ufintek +SRCS= opt_bus.h opt_usb.h device_if.h bus_if.h usb_if.h usbdevs.h \ + ufintek.c + +.include From nobody Tue Dec 2 01:59:52 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dL3qs1kytz6JGFH for ; Tue, 02 Dec 2025 01:59:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dL3qr603Bz3sVB for ; Tue, 02 Dec 2025 01:59:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764640792; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aeQ9Gyn3Ryw9cAQ1uNnZm6AkTaUbgnXa0Tpbeql89o4=; b=YJiIwKB8BQhNjObSscW9LoWWwNzTJDPNQU4d2wBQWuG8ZDY5E0bele7L05gfXZFUE99eNZ PsS7CRwfs7zD8K4/uct+eWN48EFAqju1rAbuJo0LXDtmvfw7RDUyNagjlif5aR/PX19bfz SDCE5LftGwZL9Anpc+jlHMIUASWD2DkrtCJnyHAy8gtJmp+2sC/JCjxSMIvXXjtZX5FeG6 i4KhbV8wIDFmbaFwyHq+/hHJgJTQRU0Q3iDu+3YgS9Nota6fA3clELP4qaw+C8trwvozxU mdZ64I5P/unUXf18+IurMbOHHGxGssOWC6fLk/b+jiGj6kPUfLX9Fgpf3Zw3xA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764640792; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aeQ9Gyn3Ryw9cAQ1uNnZm6AkTaUbgnXa0Tpbeql89o4=; b=v5LQ0YtZ4GwZhcejAsOakdau9eWEh8i3IJ7LU1l4na4hTC+bXiyVUHxakwX1h7XfksVWP5 /RE8s8hHdP90EclrViSuqwLoISQeyE4cMdAk1jHLOzU6hfan291m4yrywhCOBhMqJaDX9w an4qx5tqSgI2KskTi+Ea20wi04NddnBkEU9p/5rdqPgUKvWRNI5LkPqN34fCV4wb8Q8o4R zrQJS+R3PDIPHQcTZABbDOI6RF7x0Jnn0M1GPFVoiWvvNI+qRd9af79uqxC3MXffhPpeds MxD3wfyJCBBGnsf77+yJi8HwPyGXImbpUE7+byXJN3Q7++kWSqb4BnubXfH4DQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764640792; a=rsa-sha256; cv=none; b=c8Joq4iRpIk5o/66jdPGw+Y9oezFR2jB73z/2noxunEFq577wLU0Yzs23rukqJGEvWVBCu ifFUopH0B6JMzkCg1WLWzzXJJ65eHPGKP4vf+QFXnChZFGXGJWf3Fa97bWSh2s2rGTPBLP IQ2Xi9PoRvLZoWeUA34ShAQOojxRdGx/DtPv1R/bh0h6vFFyAExElNiyhXWTplIeISYg7F zUG03mOkeRcigOJO9rQ80OjWox2FZ3XS2J8FUSU9LYODMJgxeiJjMTqTc9z24E8uBHVSe5 5ycSlDGp+6Cth7AUJd3hOwRXuOZv+UfDVXAP1Tw3DnoZRek7NuNNO+HORoBLmg== 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 4dL3qr52l3zn85 for ; Tue, 02 Dec 2025 01:59:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 294b0 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 01:59:52 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: c6fe17a0d467 - stable/15 - mtree: Keep mtree files indented with spaces List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: c6fe17a0d467e8a56638bfbb89647e2e9b26f698 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 01:59:52 +0000 Message-Id: <692e4818.294b0.1e11b018@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=c6fe17a0d467e8a56638bfbb89647e2e9b26f698 commit c6fe17a0d467e8a56638bfbb89647e2e9b26f698 Author: Jose Luis Duran AuthorDate: 2025-11-29 00:12:39 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-02 01:59:06 +0000 mtree: Keep mtree files indented with spaces The mtree tool indents directory entries with 4 spaces. Reviewed by: imp Fixes: 9cab9fde5eda ("virtual_oss: Port to base") MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53979 (cherry picked from commit 3d91a746380e81c2089d8beaae28438867ae6dbf) --- etc/mtree/BSD.lib32.dist | 4 ++-- etc/mtree/BSD.usr.dist | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/etc/mtree/BSD.lib32.dist b/etc/mtree/BSD.lib32.dist index 6520b7b95116..8a3fe9a34714 100644 --- a/etc/mtree/BSD.lib32.dist +++ b/etc/mtree/BSD.lib32.dist @@ -21,7 +21,7 @@ .. pkgconfig .. - virtual_oss - .. + virtual_oss + .. .. .. diff --git a/etc/mtree/BSD.usr.dist b/etc/mtree/BSD.usr.dist index d6f451825928..ad2d8c5b39a4 100644 --- a/etc/mtree/BSD.usr.dist +++ b/etc/mtree/BSD.usr.dist @@ -103,8 +103,8 @@ .. ossl-modules .. - virtual_oss - .. + virtual_oss + .. .. libdata ldscripts From nobody Tue Dec 2 03:41:52 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dL65X3RKxz6JV4t for ; Tue, 02 Dec 2025 03:41:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dL65X1vd9z44St for ; Tue, 02 Dec 2025 03: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=1764646912; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yW7s4Owclyh23ciW5mkOCF02LbmT+qJufYkxNDA5Q6E=; b=ShKeYh+BWQdSjKp7ELUo/klF9CC4rou0euaSbR3V1GSrfDHy+of7wA6j8FGBU2fkF3oOP8 0khewB176eYHUFsDgjOGkef5RulVXWar5QHabtzhwGim1fZHe4eAl8tFGB6ja7+aKUExHM 8ltwrmplkcEu8WdPjDHzas0BVUvmwnpNdJ02f3lEAIHVSJymxQ0MCYele9CQ3yr8eJ8EjU Y/LxC+lcc+CHr5S7Sd/uZA2p8ZA3nyfjLSV7UGrrykEImhPRRw6/1KV8dGRlvCLrC3/0W9 /9Mo1kD3VeIauR+sVYNXqjLlMgSOvWdYMWsuiOC8Ar40oN5Nn4eCgLlkANhnsw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764646912; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yW7s4Owclyh23ciW5mkOCF02LbmT+qJufYkxNDA5Q6E=; b=ZdCO0+XQXvcVkQbeLu5poKZxi3LUpj6QVs4kI25k7Ejc1gTkhTKXNiPydwT5+BaXZf77vB ZAsm90Hcu1YyRf3/DJ5hzWYCbHdksEzi6MFzb7wC5gm9nJVxctdxoKFOVco7Nf4hxC0kn4 xb107griD5ST3V37XjMJ2onThJOnlSUKFOioVAD4H1s3RXG87mdSTLLz9RY2ulGSDvBTjd 5eXqFHzxidV9hd/d1Tfy2OxHEF6+PbqvC/bdwCX7Qoanm4NIxoE9iQBP4jzUi55gQz4v0R COScYvi3ThM3DNeyFFZq9BTBxH7uBmBkpbB65Upx9bfWTJ29RIFWS6GoH5/4HQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764646912; a=rsa-sha256; cv=none; b=TOXQLA3V1CDthvD1tWFaZJ6ay10hv3YYBH70H4cAA0oKZCbPeZjIT6MVU1ecPQMdpSWNkB TcxCKL302EONz7aSYTq7fPI31HLRLXm4tQPblJ2B7CxAvtbVwjSnQKNlAl0OEFR4WPKn6B CR82Z1vpS6UoVyh0w5pcESCFoAghmCsaS1yuiXgZjAF5V/tnicuONR208ykDx+hepsXjHv KY8nppYhTcRw+7IDNFOnm4Y9YD2YWKb+5ZHHtLqTkhznySJDX5GXLT48NKHFfoJ8tgJ7C7 e8N6LpsZDfPWy4YNsapu5yp4h6lSwPkkF7rtUGiiZa29cY07MwVW/rPHxwru4g== 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 4dL65X0w1QzqVx for ; Tue, 02 Dec 2025 03:41:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 33f70 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 03:41:52 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 202292ef1078 - main - kern/subr_vmem.c: convert explicit vmem_list_lock use to macros List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 202292ef107834bfdbec357a9d1a88b9fcf9ceaa Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 03:41:52 +0000 Message-Id: <692e6000.33f70.10ca5078@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=202292ef107834bfdbec357a9d1a88b9fcf9ceaa commit 202292ef107834bfdbec357a9d1a88b9fcf9ceaa Author: Konstantin Belousov AuthorDate: 2025-10-14 17:13:46 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-02 03:41:12 +0000 kern/subr_vmem.c: convert explicit vmem_list_lock use to macros Reviewed by: bnovkov, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D27220 --- sys/kern/subr_vmem.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/sys/kern/subr_vmem.c b/sys/kern/subr_vmem.c index 9288b0935441..06c104b9fce2 100644 --- a/sys/kern/subr_vmem.c +++ b/sys/kern/subr_vmem.c @@ -194,6 +194,9 @@ static LIST_HEAD(, vmem) vmem_list = LIST_HEAD_INITIALIZER(vmem_list); static uma_zone_t vmem_zone; /* ---- misc */ +#define VMEM_LIST_LOCK() mtx_lock(&vmem_list_lock) +#define VMEM_LIST_UNLOCK() mtx_unlock(&vmem_list_lock) + #define VMEM_CONDVAR_INIT(vm, wchan) cv_init(&vm->vm_cv, wchan) #define VMEM_CONDVAR_DESTROY(vm) cv_destroy(&vm->vm_cv) #define VMEM_CONDVAR_WAIT(vm) cv_wait(&vm->vm_cv, &vm->vm_lock) @@ -777,7 +780,7 @@ vmem_periodic(void *unused, int pending) vmem_size_t desired; vmem_size_t current; - mtx_lock(&vmem_list_lock); + VMEM_LIST_LOCK(); LIST_FOREACH(vm, &vmem_list, vm_alllist) { #ifdef DIAGNOSTIC /* Convenient time to verify vmem state. */ @@ -802,7 +805,7 @@ vmem_periodic(void *unused, int pending) */ VMEM_CONDVAR_BROADCAST(vm); } - mtx_unlock(&vmem_list_lock); + VMEM_LIST_UNLOCK(); callout_reset(&vmem_periodic_ch, vmem_periodic_interval, vmem_periodic_kick, NULL); @@ -1271,9 +1274,9 @@ vmem_init(vmem_t *vm, const char *name, vmem_addr_t base, vmem_size_t size, } } - mtx_lock(&vmem_list_lock); + VMEM_LIST_LOCK(); LIST_INSERT_HEAD(&vmem_list, vm, vm_alllist); - mtx_unlock(&vmem_list_lock); + VMEM_LIST_UNLOCK(); return vm; } @@ -1301,9 +1304,9 @@ void vmem_destroy(vmem_t *vm) { - mtx_lock(&vmem_list_lock); + VMEM_LIST_LOCK(); LIST_REMOVE(vm, vm_alllist); - mtx_unlock(&vmem_list_lock); + VMEM_LIST_UNLOCK(); vmem_destroy1(vm); } From nobody Tue Dec 2 03:41:53 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dL65Y4txdz6JV0p for ; Tue, 02 Dec 2025 03: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dL65Y1hBBz44Dy for ; Tue, 02 Dec 2025 03:41:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764646913; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VHi0gynl6HuXqfUAZNh4SfomS0Nq0AZ66tdlVoiuZJY=; b=EqL8bUkXEdK2DDw8/JgowuIi3jPvfmy0sZUQJnh8gq0uQWk40ICnrRYZ7grMAWthU37oN3 5FlI2yRXgGJlLj1NWYFy4AhG+70nNZXrnUh3ibRpC0Jwzwjgm3RTSMuT8kgo9WsNNunV2C rg1WlNvBap3QzrbW4GlQVHkVHHuV23rE95SSwLsyUqskUSB3km/Dmkd0k+sJ4buRjZaUGW AiUlJx5/Edxi0tIwp6q4Qt0BovgV0Kr1lnRrQVmSsg4mUAezzAiNpnQO5ss98lb7OLloU5 Wzc4IlpNW7EYpBG8CVDQ3/WKuKb4SrPnbFHXbVjxhL+adxrH4yyx2l9awab04g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764646913; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VHi0gynl6HuXqfUAZNh4SfomS0Nq0AZ66tdlVoiuZJY=; b=ZHvxgzKfyHn6KLH1zNBv1QSkAZ4k9mkNX551jjrtwmIitHYUFgMqtcA4+lAU/yZLXApEUR Cyye0e/IYTiLmnVy2BOEYeiYyRORDYLo86ni1P9GwcJRWGKOUZ1qctzPZx9Bxj3ggkr4Ox oDFZKkNb/nruKBZDbmbEm3kN43biBkT/5nXeuNQmQfU5Ffhk7zhiOWpO6mvfw5PKPhGYX1 Qm3sMsLzDQI8lQ8aM4610tbWfhFLj0+MEQCvxJpUvOGPocSQFm/FxY25TVxJ2oG647D6Iu xOLWwx9Hx4MwMW8YqlPnI9JSLKKx55MnwQqLTkIjT4WEwKriqmDiJAFcBrEwmw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764646913; a=rsa-sha256; cv=none; b=ISank2x5EPKLlArXlBdTE7tyqe8vvFQBUFsh7EiaExT1P5MxVFpp6PnIRQIgwBDL0g13yt qXcERjntY58a+crTO7cifYxkHplP0QR9q0g3iZXpd8Tpfn6QMc9gnx5kVboYxdlDbh12sJ JBN4Qr1pBTcZAQwiYfdB8KDenoMKeqp0cUu/ZU0MEisn9Q27pIcD3OQ2aO7d7MJgfSG2EO 5/lJZeBgUEBjjLCa+ReH89ErsusFvUPy/zUcQSp6q9JYLfr7mbaBbyesbsyOCTyH4WqaUu lUTM58Y3JLLYvRDHkTxdF1oQ6Vbmb+5UlnX0h+XezGKxZ8ZdWsKGJGR8sA4WQQ== 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 4dL65Y1Fjszqnx for ; Tue, 02 Dec 2025 03:41:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 340b6 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 03:41:53 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 305e33d4c6ed - main - kern/subr_vmem.c: remove unused VMEM_TRYLOCK() macro List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 305e33d4c6edd735590909161ff0847e73e68b66 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 03:41:53 +0000 Message-Id: <692e6001.340b6.26d455d1@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=305e33d4c6edd735590909161ff0847e73e68b66 commit 305e33d4c6edd735590909161ff0847e73e68b66 Author: Konstantin Belousov AuthorDate: 2025-10-16 23:53:41 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-02 03:41:12 +0000 kern/subr_vmem.c: remove unused VMEM_TRYLOCK() macro Reviewed by: bnovkov, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D27220 --- sys/kern/subr_vmem.c | 1 - 1 file changed, 1 deletion(-) diff --git a/sys/kern/subr_vmem.c b/sys/kern/subr_vmem.c index 06c104b9fce2..507c8ad897e9 100644 --- a/sys/kern/subr_vmem.c +++ b/sys/kern/subr_vmem.c @@ -203,7 +203,6 @@ static uma_zone_t vmem_zone; #define VMEM_CONDVAR_BROADCAST(vm) cv_broadcast(&vm->vm_cv) #define VMEM_LOCK(vm) mtx_lock(&vm->vm_lock) -#define VMEM_TRYLOCK(vm) mtx_trylock(&vm->vm_lock) #define VMEM_UNLOCK(vm) mtx_unlock(&vm->vm_lock) #define VMEM_LOCK_INIT(vm, name) mtx_init(&vm->vm_lock, (name), NULL, MTX_DEF) #define VMEM_LOCK_DESTROY(vm) mtx_destroy(&vm->vm_lock) From nobody Tue Dec 2 03:41:54 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dL65Z5PbKz6JV0r for ; Tue, 02 Dec 2025 03:41:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dL65Z29vPz44QP for ; Tue, 02 Dec 2025 03:41:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764646914; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yxrLZh7hrFYl9J3MzT6EUZ9r60xzdqhkvmcPEuX4I5w=; b=dXuFtX0fFwZZM3vI9lTn/LwiHSc8ZqLhZqUNSZFmXDi64ndU9I+sfORg2NshmUN3ZXWq5l QY23FePl2lUXzw2cRiHNKZoVKLOdJVZEqru7TyFPHr6Q8b7Zyfage2YuDJy+WwGUaNpo6t xCLvjdxEYp/gfoDMy5z6yNBlk01JOzHllVrqayMJUAoDKAAGCHG4/ti0Z81+M+zpTr/oRJ E0hsJFB/N4pewxmuq03XJBbiJbJnNpgOliwEAMq5A5/oAsdr8tKmn07UEKSFIejPtwPMsR 8crTrwg+NJIbw59rYeB7Ul0q7o546BO0XNAKhpPZWlxpAIlcgdJBhsBv15ewIA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764646914; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yxrLZh7hrFYl9J3MzT6EUZ9r60xzdqhkvmcPEuX4I5w=; b=hjCwdWjEIRwnNbu03915XAPLj1qKhm4J9AjANfY2cYlo6rGFswSgL48DOd8Drb1Gy2rGNE omXMGxlILeATTjMXFQAPph0FDinhfM1+/iVLBy78e3p5D9kwmjItK3hGu+Ws3moOFNXTAO 9sWGEWKaWRQodKiJ/zvk/mNuhRZqc6B7AEi1U3EcJ2Kk9RFSu00xNx/YnxngkMEevog/aZ Yq8iAHRaBm4UviPa+/8qgHcHPKcHASD16eJWPfOGFtux/64b9p/2QSbr41fK8mifpnPi0Q 7FCwijY7Hoa5UlV8cA/bIs+ZmNFxBA7wk9dOZ+mDrLU4L/billoeTeWpunkTqA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764646914; a=rsa-sha256; cv=none; b=KT85z3SskM7yv3xgrljyPVp64WyOSM706eHp+ZW9gV7ZGSlaXdWiizJyUfjWkfc9/UfWya qmrJYYkIvb6RpFP8ZN/YbEz/1RQoWXwQ4zGO9en5v9ZLs9tabeuXkxlGyfMOL6uwsWei38 EcU93oAR3hnUheb3Yi4czStw0jPWPRb+i2Is9YlNZy4cWd/bkXS4x1ZAH5u0V6uhl9gpz3 gi1hYmKO5o3KVTyJVWLWMzPNPtXuqVqA7+g5+yEXH6qLU95cHREJtYUQt8vFrp+Jo3a4J7 09l6iABFxT19vYAcSktxxHGJXAAZLGmzN7gxoWqdCg88p8+zh39VKnKZ3KQy9A== 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 4dL65Z1h3Fzqny for ; Tue, 02 Dec 2025 03:41:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3275b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 03:41:54 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 1ecf01065b45 - main - libuvmem: usermode port of vmem(9) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 1ecf01065b45018de3901c8bf89d703af737feeb Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 03:41:54 +0000 Message-Id: <692e6002.3275b.671639f8@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=1ecf01065b45018de3901c8bf89d703af737feeb commit 1ecf01065b45018de3901c8bf89d703af737feeb Author: Konstantin Belousov AuthorDate: 2020-12-21 17:41:34 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-02 03:41:13 +0000 libuvmem: usermode port of vmem(9) The quantum cache is disabled, there is no uma. Intent is to use this for resource allocation in bhyve(8), for start. Addition of -luvmem to bhyve linking was done to test changes to share/mk. Reviewed by: bnovkov, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D27220 --- lib/Makefile | 1 + lib/libuvmem/Makefile | 17 +++ lib/libuvmem/Symbol.map | 15 +++ share/mk/bsd.libnames.mk | 1 + share/mk/src.libnames.mk | 5 + sys/contrib/openzfs/include/sys/zfs_context.h | 2 + sys/kern/subr_vmem.c | 151 +++++++++++++++++++++++--- sys/sys/vmem.h | 23 ++-- usr.sbin/bhyve/Makefile | 2 +- 9 files changed, 194 insertions(+), 23 deletions(-) diff --git a/lib/Makefile b/lib/Makefile index 75a2355aa452..216ba1d58473 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -107,6 +107,7 @@ SUBDIR= ${SUBDIR_BOOTSTRAP} \ libulog \ libutil \ libutil++ \ + libuvmem \ ${_libvgl} \ libwrap \ libxo \ diff --git a/lib/libuvmem/Makefile b/lib/libuvmem/Makefile new file mode 100644 index 000000000000..9d13eabd277c --- /dev/null +++ b/lib/libuvmem/Makefile @@ -0,0 +1,17 @@ +PACKAGE= runtime + +LIB= uvmem +SRCS= subr_vmem.c + +SHLIB_MAJOR= 1 +LIBADD+= pthread +CFLAGS.clang+=-Wno-thread-safety-analysis + +SYMBOL_MAPS= ${.CURDIR}/Symbol.map +VERSION_DEF= ${SRCTOP}/lib/libc/Versions.def + +.include + +.PATH: ${SRCTOP}/sys/kern + +.include diff --git a/lib/libuvmem/Symbol.map b/lib/libuvmem/Symbol.map new file mode 100644 index 000000000000..0f408460cd9c --- /dev/null +++ b/lib/libuvmem/Symbol.map @@ -0,0 +1,15 @@ +FBSD_1.9 { + vmem_add; + vmem_alloc; + vmem_create; + vmem_destroy; + vmem_free; + vmem_init; + vmem_roundup_size; + vmem_set_import; + vmem_set_limit; + vmem_set_reclaim; + vmem_size; + vmem_xalloc; + vmem_xfree; +}; diff --git a/share/mk/bsd.libnames.mk b/share/mk/bsd.libnames.mk index 2f099e0579b2..54bdfd301cd3 100644 --- a/share/mk/bsd.libnames.mk +++ b/share/mk/bsd.libnames.mk @@ -171,6 +171,7 @@ LIBUSB?= ${LIBDESTDIR}${LIBDIR_BASE}/libusb.a LIBUSBHID?= ${LIBDESTDIR}${LIBDIR_BASE}/libusbhid.a LIBUTIL?= ${LIBDESTDIR}${LIBDIR_BASE}/libutil.a LIBUUTIL?= ${LIBDESTDIR}${LIBDIR_BASE}/libuutil.a +LIBUVMEM?= ${LIBDESTDIR}${LIBDIR_BASE}/libuvmem.a LIBVERTO?= ${LIBDESTDIR}${LIBDIR_BASE}/libverto.a LIBVGL?= ${LIBDESTDIR}${LIBDIR_BASE}/libvgl.a LIBVMMAPI?= ${LIBDESTDIR}${LIBDIR_BASE}/libvmmapi.a diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk index fd0424a96d9b..e108cc15fb55 100644 --- a/share/mk/src.libnames.mk +++ b/share/mk/src.libnames.mk @@ -237,6 +237,7 @@ _LIBRARIES= \ usb \ usbhid \ util \ + uvmem \ uutil \ verto \ vmmapi \ @@ -491,6 +492,7 @@ _DP_fifolog= z _DP_ipf= kvm _DP_tpool= spl _DP_uutil= avl spl +_DP_uvmem= pthread _DP_zfs= md pthread rt umem util uutil m avl bsdxml crypto geom nvpair \ z zfs_core zutil _DP_zfsbootenv= zfs nvpair @@ -767,6 +769,9 @@ LIBSYS_PIC?= ${LIBSYS_PICDIR}/libsys_pic.a LIBSAMPLERATEDIR?= ${_LIB_OBJTOP}/lib/libsamplerate LIBSAMPLERATE?= ${LIBSAMPLERATEDIR}/libsamplerate${PIE_SUFFIX}.a +LIBUVMEMDIR= ${OBJTOP}/lib/libuvmem +LIBUVMEM?= ${LIBUVMEMDIR}/libuvmem${PIE_SUFFIX}.a + # Define a directory for each library. This is useful for adding -L in when # not using a --sysroot or for meta mode bootstrapping when there is no # Makefile.depend. These are sorted by directory. diff --git a/sys/contrib/openzfs/include/sys/zfs_context.h b/sys/contrib/openzfs/include/sys/zfs_context.h index 5e571d497642..791a15196e3e 100644 --- a/sys/contrib/openzfs/include/sys/zfs_context.h +++ b/sys/contrib/openzfs/include/sys/zfs_context.h @@ -50,7 +50,9 @@ extern "C" { #include #include #include +#ifndef __FreeBSD__ #include +#endif #include #include #include diff --git a/sys/kern/subr_vmem.c b/sys/kern/subr_vmem.c index 507c8ad897e9..afc327c512ce 100644 --- a/sys/kern/subr_vmem.c +++ b/sys/kern/subr_vmem.c @@ -41,6 +41,9 @@ */ #include + +#ifdef _KERNEL + #include "opt_ddb.h" #include @@ -75,6 +78,28 @@ #include #include +#else /* _KERNEL */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define KASSERT(a, b) +#define MPASS(a) +#define WITNESS_WARN(a, b, c) +#define panic(...) assert(0) + +#endif /* _KERNEL */ + #define VMEM_OPTORDER 5 #define VMEM_OPTVALUE (1 << VMEM_OPTORDER) #define VMEM_MAXORDER \ @@ -87,24 +112,40 @@ #define VMEM_FITMASK (M_BESTFIT | M_FIRSTFIT | M_NEXTFIT) -#define VMEM_FLAGS (M_NOWAIT | M_WAITOK | M_USE_RESERVE | M_NOVM | \ - M_BESTFIT | M_FIRSTFIT | M_NEXTFIT) - -#define BT_FLAGS (M_NOWAIT | M_WAITOK | M_USE_RESERVE | M_NOVM) - #define QC_NAME_MAX 16 /* * Data structures private to vmem. */ +#ifdef _KERNEL + +#define VMEM_FLAGS (M_NOWAIT | M_WAITOK | M_USE_RESERVE | M_NOVM | \ + M_BESTFIT | M_FIRSTFIT | M_NEXTFIT) + +#define BT_FLAGS (M_NOWAIT | M_WAITOK | M_USE_RESERVE | M_NOVM) + MALLOC_DEFINE(M_VMEM, "vmem", "vmem internal structures"); +#else /* _KERNEL */ + +/* bit-compat with kernel */ +#define M_ZERO 0 +#define M_NOVM 0 +#define M_USE_RESERVE 0 + +#define VMEM_FLAGS (M_NOWAIT | M_BESTFIT | M_FIRSTFIT | M_NEXTFIT) + +#define BT_FLAGS 0 + +#endif /* _KERNEL */ + typedef struct vmem_btag bt_t; TAILQ_HEAD(vmem_seglist, vmem_btag); LIST_HEAD(vmem_freelist, vmem_btag); LIST_HEAD(vmem_hashlist, vmem_btag); +#ifdef _KERNEL struct qcache { uma_zone_t qc_cache; vmem_t *qc_vmem; @@ -113,6 +154,7 @@ struct qcache { }; typedef struct qcache qcache_t; #define QC_POOL_TO_QCACHE(pool) ((qcache_t *)(pool->pr_qcache)) +#endif #define VMEM_NAME_MAX 16 @@ -132,8 +174,13 @@ struct vmem_btag { /* vmem arena */ struct vmem { +#ifdef _KERNEL struct mtx_padalign vm_lock; struct cv vm_cv; +#else + pthread_mutex_t vm_lock; + pthread_cond_t vm_cv; +#endif char vm_name[VMEM_NAME_MAX+1]; LIST_ENTRY(vmem) vm_alllist; struct vmem_hashlist vm_hash0[VMEM_HASHSIZE_MIN]; @@ -165,8 +212,10 @@ struct vmem { /* Space exhaustion callback. */ vmem_reclaim_t *vm_reclaimfn; +#ifdef _KERNEL /* quantum cache */ qcache_t vm_qcache[VMEM_QCACHE_IDX_MAX]; +#endif }; #define BT_TYPE_SPAN 1 /* Allocated from importfn */ @@ -178,6 +227,7 @@ struct vmem { #define BT_END(bt) ((bt)->bt_start + (bt)->bt_size - 1) +#ifdef _KERNEL #if defined(DIAGNOSTIC) static int enable_vmem_check = 0; SYSCTL_INT(_debug, OID_AUTO, vmem_check, CTLFLAG_RWTUN, @@ -190,10 +240,17 @@ static int vmem_periodic_interval; static struct task vmem_periodic_wk; static struct mtx_padalign __exclusive_cache_line vmem_list_lock; -static LIST_HEAD(, vmem) vmem_list = LIST_HEAD_INITIALIZER(vmem_list); static uma_zone_t vmem_zone; +#else /* _KERNEL */ +static pthread_mutex_t vmem_list_lock = PTHREAD_MUTEX_INITIALIZER; + +#endif /* _KERNEL */ + +static LIST_HEAD(, vmem) vmem_list = LIST_HEAD_INITIALIZER(vmem_list); + /* ---- misc */ +#ifdef _KERNEL #define VMEM_LIST_LOCK() mtx_lock(&vmem_list_lock) #define VMEM_LIST_UNLOCK() mtx_unlock(&vmem_list_lock) @@ -207,6 +264,21 @@ static uma_zone_t vmem_zone; #define VMEM_LOCK_INIT(vm, name) mtx_init(&vm->vm_lock, (name), NULL, MTX_DEF) #define VMEM_LOCK_DESTROY(vm) mtx_destroy(&vm->vm_lock) #define VMEM_ASSERT_LOCKED(vm) mtx_assert(&vm->vm_lock, MA_OWNED); +#else /* _KERNEL */ +#define VMEM_LIST_LOCK() pthread_mutex_lock(&vmem_list_lock) +#define VMEM_LIST_UNLOCK() pthread_mutex_unlock(&vmem_list_lock) + +#define VMEM_CONDVAR_INIT(vm, wchan) pthread_cond_init(&vm->vm_cv, NULL) +#define VMEM_CONDVAR_DESTROY(vm) pthread_cond_destroy(&vm->vm_cv) +#define VMEM_CONDVAR_WAIT(vm) pthread_cond_wait(&vm->vm_cv, &vm->vm_lock) +#define VMEM_CONDVAR_BROADCAST(vm) pthread_cond_broadcast(&vm->vm_cv) + +#define VMEM_LOCK(vm) pthread_mutex_lock(&vm->vm_lock) +#define VMEM_UNLOCK(vm) pthread_mutex_unlock(&vm->vm_lock) +#define VMEM_LOCK_INIT(vm, name) pthread_mutex_init(&vm->vm_lock, NULL) +#define VMEM_LOCK_DESTROY(vm) pthread_mutex_destroy(&vm->vm_lock) +#define VMEM_ASSERT_LOCKED(vm) pthread_mutex_isowned_np(&vm->vm_lock) +#endif /* _KERNEL */ #define VMEM_ALIGNUP(addr, align) (-(-(addr) & -(align))) @@ -231,6 +303,7 @@ static uma_zone_t vmem_zone; */ #define BT_MAXFREE (BT_MAXALLOC * 8) +#ifdef _KERNEL /* Allocator for boundary tags. */ static uma_zone_t vmem_bt_zone; @@ -245,7 +318,8 @@ vmem_t *transient_arena = &transient_arena_storage; #ifdef DEBUG_MEMGUARD static struct vmem memguard_arena_storage; vmem_t *memguard_arena = &memguard_arena_storage; -#endif +#endif /* DEBUG_MEMGUARD */ +#endif /* _KERNEL */ static bool bt_isbusy(bt_t *bt) @@ -265,12 +339,13 @@ bt_isfree(bt_t *bt) * at least the maximum possible tag allocations in the arena. */ static __noinline int -_bt_fill(vmem_t *vm, int flags) +_bt_fill(vmem_t *vm, int flags __unused) { bt_t *bt; VMEM_ASSERT_LOCKED(vm); +#ifdef _KERNEL /* * Only allow the kernel arena and arenas derived from kernel arena to * dip into reserve tags. They are where new tags come from. @@ -278,6 +353,7 @@ _bt_fill(vmem_t *vm, int flags) flags &= BT_FLAGS; if (vm != kernel_arena && vm->vm_arg != kernel_arena) flags &= ~M_USE_RESERVE; +#endif /* * Loop until we meet the reserve. To minimize the lock shuffle @@ -286,12 +362,18 @@ _bt_fill(vmem_t *vm, int flags) * holding a vmem lock. */ while (vm->vm_nfreetags < BT_MAXALLOC) { +#ifdef _KERNEL bt = uma_zalloc(vmem_bt_zone, (flags & M_USE_RESERVE) | M_NOWAIT | M_NOVM); +#else + bt = malloc(sizeof(struct vmem_btag)); +#endif if (bt == NULL) { +#ifdef _KERNEL VMEM_UNLOCK(vm); bt = uma_zalloc(vmem_bt_zone, flags); VMEM_LOCK(vm); +#endif if (bt == NULL) break; } @@ -351,7 +433,11 @@ bt_freetrim(vmem_t *vm, int freelimit) VMEM_UNLOCK(vm); while ((bt = LIST_FIRST(&freetags)) != NULL) { LIST_REMOVE(bt, bt_freelist); +#ifdef _KERNEL uma_zfree(vmem_bt_zone, bt); +#else + free(bt); +#endif } } @@ -538,6 +624,7 @@ bt_insfree(vmem_t *vm, bt_t *bt) /* ---- vmem internal functions */ +#ifdef _KERNEL /* * Import from the arena into the quantum cache in UMA. * @@ -722,8 +809,6 @@ vmem_startup(void) #endif } -/* ---- rehash */ - static int vmem_rehash(vmem_t *vm, vmem_size_t newhashsize) { @@ -821,6 +906,7 @@ vmem_start_callout(void *unused) vmem_periodic_kick, NULL); } SYSINIT(vfs, SI_SUB_CONFIGURE, SI_ORDER_ANY, vmem_start_callout, NULL); +#endif /* _KERNEL */ static void vmem_add1(vmem_t *vm, vmem_addr_t addr, vmem_size_t size, int type) @@ -876,10 +962,12 @@ vmem_destroy1(vmem_t *vm) { bt_t *bt; +#ifdef _KERNEL /* * Drain per-cpu quantum caches. */ qc_destroy(vm); +#endif /* * The vmem should now only contain empty segments. @@ -891,14 +979,23 @@ vmem_destroy1(vmem_t *vm) while ((bt = TAILQ_FIRST(&vm->vm_seglist)) != NULL) bt_remseg(vm, bt); - if (vm->vm_hashlist != NULL && vm->vm_hashlist != vm->vm_hash0) + if (vm->vm_hashlist != NULL && vm->vm_hashlist != vm->vm_hash0) { +#ifdef _KERNEL free(vm->vm_hashlist, M_VMEM); +#else + free(vm->vm_hashlist); +#endif + } bt_freetrim(vm, 0); VMEM_CONDVAR_DESTROY(vm); VMEM_LOCK_DESTROY(vm); +#ifdef _KERNEL uma_zfree(vmem_zone, vm); +#else + free(vm); +#endif } static int @@ -1055,8 +1152,10 @@ vmem_try_fetch(vmem_t *vm, const vmem_size_t size, vmem_size_t align, int flags) avail = vm->vm_size - vm->vm_inuse; bt_save(vm); VMEM_UNLOCK(vm); +#ifdef _KERNEL if (vm->vm_qcache_max != 0) qc_drain(vm); +#endif if (vm->vm_reclaimfn != NULL) vm->vm_reclaimfn(vm, flags); VMEM_LOCK(vm); @@ -1236,8 +1335,14 @@ vmem_init(vmem_t *vm, const char *name, vmem_addr_t base, vmem_size_t size, { vmem_size_t i; +#ifdef _KERNEL MPASS(quantum > 0); MPASS((quantum & (quantum - 1)) == 0); +#else + assert(quantum == 0); + assert(qcache_max == 0); + quantum = 1; +#endif bzero(vm, sizeof(*vm)); @@ -1252,7 +1357,11 @@ vmem_init(vmem_t *vm, const char *name, vmem_addr_t base, vmem_size_t size, vm->vm_size = 0; vm->vm_limit = 0; vm->vm_inuse = 0; +#ifdef _KERNEL qc_init(vm, qcache_max); +#else + (void)qcache_max; +#endif TAILQ_INIT(&vm->vm_seglist); vm->vm_cursor.bt_start = vm->vm_cursor.bt_size = 0; @@ -1290,7 +1399,13 @@ vmem_create(const char *name, vmem_addr_t base, vmem_size_t size, vmem_t *vm; +#ifdef _KERNEL vm = uma_zalloc(vmem_zone, flags & (M_WAITOK|M_NOWAIT)); +#else + assert(quantum == 0); + assert(qcache_max == 0); + vm = malloc(sizeof(vmem_t)); +#endif if (vm == NULL) return (NULL); if (vmem_init(vm, name, base, size, quantum, qcache_max, @@ -1302,7 +1417,6 @@ vmem_create(const char *name, vmem_addr_t base, vmem_size_t size, void vmem_destroy(vmem_t *vm) { - VMEM_LIST_LOCK(); LIST_REMOVE(vm, vm_alllist); VMEM_LIST_UNLOCK(); @@ -1324,7 +1438,6 @@ int vmem_alloc(vmem_t *vm, vmem_size_t size, int flags, vmem_addr_t *addrp) { const int strat __unused = flags & VMEM_FITMASK; - qcache_t *qc; flags &= VMEM_FLAGS; MPASS(size > 0); @@ -1332,7 +1445,10 @@ vmem_alloc(vmem_t *vm, vmem_size_t size, int flags, vmem_addr_t *addrp) if ((flags & M_NOWAIT) == 0) WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, "vmem_alloc"); +#ifdef _KERNEL if (size <= vm->vm_qcache_max) { + qcache_t *qc; + /* * Resource 0 cannot be cached, so avoid a blocking allocation * in qc_import() and give the vmem_xalloc() call below a chance @@ -1344,6 +1460,7 @@ vmem_alloc(vmem_t *vm, vmem_size_t size, int flags, vmem_addr_t *addrp) if (__predict_true(*addrp != 0)) return (0); } +#endif return (vmem_xalloc(vm, size, 0, 0, 0, VMEM_ADDR_MIN, VMEM_ADDR_MAX, flags, addrp)); @@ -1463,14 +1580,17 @@ out: void vmem_free(vmem_t *vm, vmem_addr_t addr, vmem_size_t size) { - qcache_t *qc; MPASS(size > 0); +#ifdef _KERNEL if (size <= vm->vm_qcache_max && __predict_true(addr >= VMEM_ADDR_QCACHE_MIN)) { + qcache_t *qc; + qc = &vm->vm_qcache[(size - 1) >> vm->vm_quantum_shift]; uma_zfree(qc->qc_cache, (void *)addr); } else +#endif vmem_xfree(vm, addr, size); } @@ -1564,11 +1684,13 @@ vmem_size(vmem_t *vm, int typemask) return (0); default: panic("vmem_size"); + return (0); } } /* ---- debug */ +#ifdef _KERNEL #if defined(DDB) || defined(DIAGNOSTIC) static void bt_dump(const bt_t *, int (*)(const char *, ...) @@ -1820,3 +1942,4 @@ vmem_check(vmem_t *vm) } #endif /* defined(DIAGNOSTIC) */ +#endif /* _KERNEL */ diff --git a/sys/sys/vmem.h b/sys/sys/vmem.h index 20eee9f6ccd3..daceac796722 100644 --- a/sys/sys/vmem.h +++ b/sys/sys/vmem.h @@ -33,8 +33,6 @@ #include -#ifdef _KERNEL - typedef struct vmem vmem_t; typedef uintptr_t vmem_addr_t; @@ -44,10 +42,24 @@ typedef size_t vmem_size_t; #define VMEM_ADDR_QCACHE_MIN 1 #define VMEM_ADDR_MAX (~(vmem_addr_t)0) +/* vmem_size typemask */ +#define VMEM_ALLOC 0x01 +#define VMEM_FREE 0x02 +#define VMEM_MAXFREE 0x10 + typedef int (vmem_import_t)(void *, vmem_size_t, int, vmem_addr_t *); typedef void (vmem_release_t)(void *, vmem_addr_t, vmem_size_t); typedef void (vmem_reclaim_t)(vmem_t *, int); +#ifndef _KERNEL +#define M_NOWAIT 0x0800 /* userspace hack */ +#define M_FIRSTFIT 0x1000 /* only for vmem, fast fit */ +#define M_BESTFIT 0x2000 /* only for vmem, low fragmentation */ +#define M_NEXTFIT 0x8000 /* only for vmem, follow cursor */ +#endif + +__BEGIN_DECLS + /* * Create a vmem: * name - Name of the region @@ -134,11 +146,6 @@ void vmem_printall(const char *, int (*fn)(const char *, ...) __printflike(1, 2)); void vmem_startup(void); -/* vmem_size typemask */ -#define VMEM_ALLOC 0x01 -#define VMEM_FREE 0x02 -#define VMEM_MAXFREE 0x10 - -#endif /* _KERNEL */ +__END_DECLS #endif /* !_SYS_VMEM_H_ */ diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index c454a280edba..25fb71b5768f 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -97,7 +97,7 @@ CFLAGS+=-I${.CURDIR} \ -I${.CURDIR}/../../contrib/lib9p \ -I${SRCTOP}/sys -LIBADD+= vmmapi md nv pthread z util sbuf cam 9p +LIBADD+= vmmapi md nv uvmem pthread z util sbuf cam 9p .if ${MK_BHYVE_SNAPSHOT} != "no" LIBADD+= ucl xo From nobody Tue Dec 2 03:41:55 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dL65b5gKXz6JTxW for ; Tue, 02 Dec 2025 03:41:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dL65b2jm9z44F9 for ; Tue, 02 Dec 2025 03:41:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764646915; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Qk/GnAsEPw/LBgcW7usvH6UhYodp0RR37FtijwVpEX8=; b=uWfRvmETs1OzmMPipwPJ2u5eLGrM5CxWNxuduQollX7bpW5ryyrK1VZYmjaaBs8eaKbM9a bZHzYIWV7naCam3kQZ8DYF3BsjeRUaCnfYk2LbncnwI0CiJKNKA0U0aRQbbQQ/5nlpZR4G g1+tsoCRXSUahpnsPtFb1sVmH2atDCd/bmzM8UjroKcD6A+6rIo37zVk/fQdXpnibHRLio Z4JrgrHBxzucQyphO0DMpKtqDcXcUPsbK6dH1xOvviUvxvybrXN37VqA3h0vTWwg3VHkwQ 5VDdltLdYFM9uR+G1+v47guJ3J6fc7BvPMvhm8yGDCUEZJIsyN2wxdeTJ50FIg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764646915; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Qk/GnAsEPw/LBgcW7usvH6UhYodp0RR37FtijwVpEX8=; b=pZWxYRv2AypdQSG7SlfydrGULpmTzaCNjq2Xo8yEt9WBosCAo+T8gRke6dSraQ5ZZPzW+K M1ft6/Owpnuhe/gQBVjdw3nbekyIe/NMu6WfnNhrQXsM04/dRCIquLu1ssG7Fqzw8Y27k/ 4xvXVtleKjx8w7jiCz/1ujqihbX7Y1UzIYTUgH/pGrjiuz7qlr5U24gds8CHgBg5U8anOf e6MNjggV8YdCr2j0rEHR74bmR9PVUAKyLQECipqeBgWr972yHLu+IMm51q3cNwK27x3vwc 8W0N7bVR7MC2GPRJWG7U2au9h+U2LITSTZsRRkgZ3upbPFRtnJQzwW4oCazs0g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764646915; a=rsa-sha256; cv=none; b=TaqopjknQm88JB4rmkGShktrxns0s0m8GP9ejsAEAa/wgYas9mXzSMAh6C1iD4XSiYK7Xe jG1Z7ojMa380gwakEY9A3rNfIkmDvjrLxRBoWzJxvZU167pbFU7LS7yf0cocbF+Hvx0y64 nYOx+f9wZSTt1rSOFG5tgtGs0GUh9aLieYu1CGicTAZZW26H2hhfrtTTPlXP35MjkJhwmq gVPSZQoQoujrSmhyuRdVPci9CRCrESD2EhH/w4ctXaylk8LtxPaboEQuq9nyT7fH7p9dOT Y5A1DIwJ1DtZRtqbY87oDUfsKqR8P4yybEMwnN5js1Vr1uG2PJH+wYN64rsxAA== 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 4dL65b22QGzqp0 for ; Tue, 02 Dec 2025 03:41:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3225e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 03:41:55 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 7295aeaf5f5c - main - libuvmem: provide man page mostly as a pointer to vmem(9) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 7295aeaf5f5cbbbb16d4992b13b08bce09f03609 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 03:41:55 +0000 Message-Id: <692e6003.3225e.38bd67fc@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=7295aeaf5f5cbbbb16d4992b13b08bce09f03609 commit 7295aeaf5f5cbbbb16d4992b13b08bce09f03609 Author: Konstantin Belousov AuthorDate: 2025-10-15 22:10:16 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-02 03:41:13 +0000 libuvmem: provide man page mostly as a pointer to vmem(9) Reviewed by: bnovkov, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D27220 --- lib/libuvmem/Makefile | 2 ++ lib/libuvmem/libuvmem.3 | 71 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+) diff --git a/lib/libuvmem/Makefile b/lib/libuvmem/Makefile index 9d13eabd277c..0dae3eb77a74 100644 --- a/lib/libuvmem/Makefile +++ b/lib/libuvmem/Makefile @@ -10,6 +10,8 @@ CFLAGS.clang+=-Wno-thread-safety-analysis SYMBOL_MAPS= ${.CURDIR}/Symbol.map VERSION_DEF= ${SRCTOP}/lib/libc/Versions.def +MAN= libuvmem.3 + .include .PATH: ${SRCTOP}/sys/kern diff --git a/lib/libuvmem/libuvmem.3 b/lib/libuvmem/libuvmem.3 new file mode 100644 index 000000000000..5fbb50ec57c2 --- /dev/null +++ b/lib/libuvmem/libuvmem.3 @@ -0,0 +1,71 @@ +.\" SPDX-License-Identifier: BSD-2-Clause +.\" +.\" Copyright (c) 2025 The FreeBSD Foundation +.\" +.\" This documentation was written by +.\" Konstantin Belousov under sponsorship +.\" from the FreeBSD Foundation. +.\" +.Dd October 16, 2025 +.Dt LIBUVMEM 3 +.Os +.Sh NAME +.Nm libuvmem +.Nd userspace general purpose resource allocator +.Sh SYNOPSIS +.Lb libuvmem +.In sys/vmem.h +.Sh DESCRIPTION +The +.Nm +is a general purpose resource allocator. +It is a port of the kernel facility of the similar name +.Nm vmem . +.Pp +Refer to the description of the kernel allocator +.Xr vmem 9 +to get the documentation for it. +.Sh NOTES +The +.Dq quantum cache +feature is not implemented for userspace, and the +.Fa quantum +and +.Fa qcache_max +arguments of the +.Fn vmem_create +function are ignored. +.Pp +The library internally uses +.Xr malloc 3 +to allocate structures tracking allocations. +.Pp +The allocator is thread-safe. +Locks for separate +.Nm vmem's +are independent between each other. +.Pp +The supported +.Fa flags +for the +.Fn vmem_xalloc +function are +.Bl -bullet +.It +.Dv M_NOWAIT +.It +.Dv M_FIRSTFIT +.It +.Dv M_BESTFIT +.It +.Dv M_NEXTFIT +.El +.Sh AUTHORS +See +.Xr vmem 9 +for the history of the kernel allocator. +.Pp +The userspace port for +.Fx +was done by +.An Konstantin Belousov Aq Mt kib@FreeBSD.org . From nobody Tue Dec 2 03:45:12 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dL69N654yz6JVns for ; Tue, 02 Dec 2025 03:45:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dL69N4tlRz461g for ; Tue, 02 Dec 2025 03:45:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764647112; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eNbMRRyfoMI01zpNmA+X1S1sPcWSAC51Hx5N3othkwo=; b=vA4ImoWrDDEaRp6P6WGVzWbG/YBmDLwhanSgPaAEvvQ6bgIpFDE11iicIPKXClcCP7Zs1X YbA/OuAwxn89YSQfnlrfgXBds8Z+3dmnq5dfWjstGmAJjRo0cI2tAsXLirtcijdpmgm1vV oruih+5B3F5dmOQwIszlnWRhtwogo/tNGu0nDWzyb4woWSh6ZUNDxjRjwo5WpGM6+3ieZK vtOcwQXPsojusFqyop8trU8RNB/Z/YwpNa7D2P1wQBUf7sbqbBMfvqplpguq4dWJ/FH2IK WvdlH5oVK/vhtmrB4KaFe7BBmcsvYE9xTG0Ny/fdBeFRupXP4NHuDk6mBwaopQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764647112; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eNbMRRyfoMI01zpNmA+X1S1sPcWSAC51Hx5N3othkwo=; b=IA1DfXRUe7nhL5ndR8Xel0JVsCjeFsqphEEcCcfnbru/Wn+1lq7DczvtdyP2eq7hi5Qa9F JkNqVzvo1pA/37d2eMgqM3/E8DOt3xsVBqrGZGahdsjrcZXaAag+2BEJRtXvdMDX9+0s0z aT8XQ3eayHSNnvZrDTLIcURRC60ihVbIaVELWVaKd5uT1W94l5zppBfv9uxiXlYoAbh/T7 QHU8jjhsBEhiBlpoPNy5G1XQjVAGItFjNXvGxGfJe112XkNV1K5GJWIJaZsjncgZl2HN/4 tuLJlkM9G4TAkc6N7RlWLN/7MvY4FPUxEqieBGM6gtlAgk2tENyiQM/qiFLF9w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764647112; a=rsa-sha256; cv=none; b=XyaIGuShoncs9P323z5B9JDifmSIpJAPC+s38IJhMsZjGzN8BOnQJNKocBEhAbys5Z4wFj 2uYL5xcBt3551qETm+Vt6stb/b3J7End1vfWJebN1TWUnbawj60scFEwIDODt5GKCNAAJ5 ReBVYjIKs9c/virF2XQBjoK4e3lGXi9eyj3fDoARpIAXl2ROxZMEpmSZI5qBixK7M9g6y6 2YRAwVZ5icv1hqC2v4ENHiutocJ/d/kNxkyPAvwKRWS2/O10eR7cbjT5WJ31hO97JF6eUg 4GFRX8BCLtFococvNkRAuWtlfgi5jJr53YlD0HY4lKelKW5iYqcSklrm2AknYQ== 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 4dL69N47vFzqmC for ; Tue, 02 Dec 2025 03:45:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 32262 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 03:45:12 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Maxim Konovalov Subject: git: 7b44ab1c6abe - main - bsd-family-tree: add FreeBSD 15.0 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: maxim X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7b44ab1c6abe106a44604a8504edca0e57ec1c42 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 03:45:12 +0000 Message-Id: <692e60c8.32262.4f489280@gitrepo.freebsd.org> The branch main has been updated by maxim: URL: https://cgit.FreeBSD.org/src/commit/?id=7b44ab1c6abe106a44604a8504edca0e57ec1c42 commit 7b44ab1c6abe106a44604a8504edca0e57ec1c42 Author: Maxim Konovalov AuthorDate: 2025-12-02 03:44:42 +0000 Commit: Maxim Konovalov CommitDate: 2025-12-02 03:44:42 +0000 bsd-family-tree: add FreeBSD 15.0 --- share/misc/bsd-family-tree | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/share/misc/bsd-family-tree b/share/misc/bsd-family-tree index 01dfd4cc0cbf..36910c9ad94a 100644 --- a/share/misc/bsd-family-tree +++ b/share/misc/bsd-family-tree @@ -300,7 +300,7 @@ FreeBSD 5.2 | | | | | | | | | 6.1 | | | | FreeBSD | | | | | | | 8.4 | | NetBSD | | - | | | | | 6.1.1 | | + | | | | 6.1.1 | | | | | | | | | | FreeBSD | | NetBSD | | | 9.2 | | 6.1.2 | | @@ -483,6 +483,8 @@ FreeBSD 5.2 | | | | | macOS | | | | 26 | | | | | | OpenBSD 7.8 | + *--FreeBSD | | | | + | 15.0 | | | | | | | | | FreeBSD 16 -current | NetBSD -current OpenBSD -current DragonFly -current | | | | | @@ -930,6 +932,7 @@ DragonFly 6.4.2 2025-05-09 [DFB] FreeBSD 14.3 2025-06-10 [FBD] macOS 26 2025-09-15 [APL] OpenBSD 7.8 2025-10-22 [OBD] +FreeBSD 15.0 2025-12-02 [FBD] Bibliography ------------------------ From nobody Tue Dec 2 04:58:29 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dL7nx6lF1z6Jdd8 for ; Tue, 02 Dec 2025 04:58:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dL7nx64hVz3Fb9 for ; Tue, 02 Dec 2025 04:58:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764651509; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1drzYKM/C3np1U1zxwa16Ki/+51ayqQZk5ILtcrg3Lg=; b=ItTOuX2cCPbyiKfUOmmeHpqa/qH+ZvSKX1ezqQNXJ9to1shRYk/XAPlknf/37oUXgcpjeP BuiUtjquqcMkNlmj+IEftZ2RD8g5SiVf5iPnlOCd5wv4EPOw4cfOEm/qa7/9sjGnAtGv9W vOSJrNqANyRu8bo80B+AIbrB1tRKmZe7PeEhFo2EULyPVE8NJXgxI5Cq00QRbjMKvxWfX+ irTE6YQXLYopl2Ec0Bralc8oPJT9lyXAd4b2pDhJBCh7udzXBpKYedxgxxHwv8gWMJdyFH xR7Ij8W70E3fd9WYURtNuUmp8zVNv5yLNMwgQHvMKKpOK79di52DgvDDzeREqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764651509; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1drzYKM/C3np1U1zxwa16Ki/+51ayqQZk5ILtcrg3Lg=; b=rekUHkdAtuk5J14Mx9CnE2LeV8AfCrUOE6I+ZCiy8tIjFCeAipcoP7H3xTMW/dDlxsjllG 7hZq0j1THIy2hXZAiiyjVIlxMvDDPPl9tfXNkQJXCDvrn/4vuQ62fLxfBLV6fBNr0nYs2d rANoSfeM0GXcJtqJHWngKA1hnirUnZKxViXFb9MTMlrRm5UobayUF84s5Ub506slubIZuL 7gYC2UOiUyspJ5UMsFebhfN7fNDeyFG5N4s6O/l89BsxYxX23CRjMQ9xcXw2u2rnx44+YS 0fhiRgJNiPbRf9hGqL6baUxhlJ7hrPS4evHwr1v0fNhUSar5ER01C/eq9GxatQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764651509; a=rsa-sha256; cv=none; b=x73lJRhMBDr40csjK5wx9KcuPjTMGdp5wwJYDz3py87uTh2H63bWsYJw5MZFfP6cVjLKkz 5/KMmKBl3nerfnJ716K3AkYFt8pqH6ub8eGN8g6Np885qDG22eu5MsGH/Qrb5QU6E2KX+1 gAMtlesPchJMgD56VFTGO60ertvh0HilSA5Czz+jIMUVuwM6AkU8TXTP3eDbgCTd3y0XM0 W9SNooW5XyvoEG0hed06s8im0oz6veOdRILKGeZ/JwVPVpR5Phfs6sntjzmgD670Tv4AlV naBw2gxDDxf0pMGlZulM4LIA1CNCzLANDBwXbQ2dlaZPki6mrTL3YAQOEEgZJg== 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 4dL7nx5FPzzsmm for ; Tue, 02 Dec 2025 04:58:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3ae84 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 04:58:29 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: babb41a81e84 - main - nvme: Minor style nit List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: babb41a81e84ecb055992720f36a80e31260d372 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 04:58:29 +0000 Message-Id: <692e71f5.3ae84.533b4550@gitrepo.freebsd.org> The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=babb41a81e84ecb055992720f36a80e31260d372 commit babb41a81e84ecb055992720f36a80e31260d372 Author: Warner Losh AuthorDate: 2025-12-02 04:55:39 +0000 Commit: Warner Losh CommitDate: 2025-12-02 04:58:07 +0000 nvme: Minor style nit Sponsored by: Netflix --- sys/dev/nvme/nvme.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/sys/dev/nvme/nvme.h b/sys/dev/nvme/nvme.h index 61e4aa8cb94b..b696cc6aa697 100644 --- a/sys/dev/nvme/nvme.h +++ b/sys/dev/nvme/nvme.h @@ -32,6 +32,7 @@ #include #ifdef _KERNEL #include +#include #else #include #endif @@ -1907,8 +1908,6 @@ void nvme_sc_sbuf(const struct nvme_completion *cpl, struct sbuf *sbuf); void nvme_strvis(uint8_t *dst, const uint8_t *src, int dstlen, int srclen); #ifdef _KERNEL -#include - struct bio; struct thread; From nobody Tue Dec 2 05:51:26 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dL8zM4Hh7z6JkxC for ; Tue, 02 Dec 2025 05:51:43 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-pj1-x102b.google.com (mail-pj1-x102b.google.com [IPv6:2607:f8b0:4864:20::102b]) (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 4dL8zM25jrz3LkT for ; Tue, 02 Dec 2025 05:51:43 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-pj1-x102b.google.com with SMTP id 98e67ed59e1d1-343f35d0f99so3898311a91.0 for ; Mon, 01 Dec 2025 21:51:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1764654697; x=1765259497; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=wEpKIytbPhLALPgO2GL4+SAC7u0EVkUR0/MsabC5fpQ=; b=fN5s8IHH6O+FWJUFM1UG5JPGZV3I5l35JOWvzyIaZDJuRHoRzS9d8IRZ6Lfq09Voxf fQN0di1d1FWhUbzRKLktJ4pDxt706Oli3JPqWeOxp4e9m/NQfUVgAg5awDHdHA14buW2 y8nkLKVDW4jmh3wVUj4RkHgczsMdUNHgdhEW5muNhHKtwJJKhmdEGfFWeHrJYb2e0m7A yv0XE9Epil2U0lMf0Vz339C7LP9CFh+1qL+W3Z7lBmg9Wq4ClCjuJgtBRRTQRm8qIXdq 3BLJjlaG9SlMaaRRb3wMH4qP6R0Cu1j2YfO++FL9QIcXN2Da32zDQE1xlsbqF3y3f0Wg 1cCw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764654697; x=1765259497; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=wEpKIytbPhLALPgO2GL4+SAC7u0EVkUR0/MsabC5fpQ=; b=Qdyxp2hvaaS3KL+149PIu1pN9NGLrDTZ8Mkvq4vlbii8zlg0frbCLZNF/o09mtiby+ C2/eb5WGfsz6vyFK5tm53Fn8ELkg81dkH3YNu9USIGvtJ8/8cXgb6hsm2kXBio0lxeYh 3886g7kdHQlM1ItFG2spqatTMoBD+xm49yXmVVE1IpUMedssD1IHVCzExpGAXz8XbraD z5SiTrfN4arqmqJ/Jt/W8EH0RqD/wGzfGYCRyUTsE2MpoCUfZgSx7U99flBfkUgyEpvS LxzUISURk9J5msfednOKGLLYIlVLY97/JvibUe/ITM6vO8TlOOEw4mPxxrkS8hSc75Ln PWuw== X-Forwarded-Encrypted: i=1; AJvYcCVQh2hXiblipI6VcTkZEoettlT99nHnBapg/9yBqLkrWc3lF+ciw6agL7yYDmNWk0Sm7dfehJHSvYPJ0xvlEPgWMVFd@freebsd.org X-Gm-Message-State: AOJu0YyH0y7Z/9BaDzSRI3vNs0HD7Ls0XimVVhmSd45zp0KQX4st6co6 GsbIQYB81DRRfmvutGM+CgnI5rovX7M5SHdgOFdnPZOPj/29kEKz/i1vZ1u4uJJjxJ+c83Y+xC7 KO2YcZhT4ESB/v7K+lBROJDzE1hn9I/8dF7lrZ+gMEw== X-Gm-Gg: ASbGncs6gUumkjHahDACyx0KDi0QoPlMi5bnw6tYRtgVI0cpmR3XAfQGlW0VjdtMUTU 7r6majhH2wp5JiigxRkxi6xcwJag0mRMsf4Qc7u/QmE2Vut0vyuKSDtgZEqVfSGNT/hxYxSY18q 4hT2aPTUPg+V8aVrSCPSrzYolewDMp6gv4ZtMlD+h+lBnMMd67xfk1CBhFrIlCHdjhhP5lmh3ZX KRAMXvNuEtZ3EDq0nidnFKoGPxKeS+1bwIFxSnwGAxIPLq3rHm0g22GrvP8V9N80pjJ6dwp4tFW S3aKVQ== X-Google-Smtp-Source: AGHT+IFGn9t39qdaeDy0XpHlqgnH2+HjvUVvZqOOIotl2I/1bmwIq3jhfxSsP4ttkoYf4jLC0gQhV/DNTGlQY2tNEak= X-Received: by 2002:a17:90b:2587:b0:340:f7d6:dc70 with SMTP id 98e67ed59e1d1-3475ebfa0d3mr24793822a91.13.1764654697043; Mon, 01 Dec 2025 21:51:37 -0800 (PST) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 References: <6925d6af.3b42c.336a0065@gitrepo.freebsd.org> <6365e335-fcc8-4590-af40-230815012f9d@FreeBSD.org> In-Reply-To: <6365e335-fcc8-4590-af40-230815012f9d@FreeBSD.org> From: Warner Losh Date: Mon, 1 Dec 2025 22:51:26 -0700 X-Gm-Features: AWmQ_bntB_u9Xhw5oOwk5QTxeOusfTxRWfWSkFX4NlXfl-015X2OcWWq37ixGHc Message-ID: Subject: Re: git: 301b8a806f79 - main - nvme: Minor style(9) fixes To: John Baldwin Cc: Warner Losh , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: multipart/alternative; boundary="0000000000005e6a340644f1b078" X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4dL8zM25jrz3LkT --0000000000005e6a340644f1b078 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Dec 1, 2025 at 7:53=E2=80=AFAM John Baldwin wrote= : > On 11/25/25 11:17, Warner Losh wrote: > > The branch main has been updated by imp: > > > > URL: > https://cgit.FreeBSD.org/src/commit/?id=3D301b8a806f79292ee3324ca938a4d93= 8df1911e8 > > > > commit 301b8a806f79292ee3324ca938a4d938df1911e8 > > Author: Warner Losh > > AuthorDate: 2025-11-25 16:10:23 +0000 > > Commit: Warner Losh > > CommitDate: 2025-11-25 16:12:51 +0000 > > > > nvme: Minor style(9) fixes > > > > needs to be first after . And we don't > need > > both sys/param.h and sys/types.h. > > > > Fixes: 032fbda024d78 > > Sponsored by: Netflix > > --- > > sys/dev/nvme/nvme.h | 11 ++++------- > > 1 file changed, 4 insertions(+), 7 deletions(-) > > > > diff --git a/sys/dev/nvme/nvme.h b/sys/dev/nvme/nvme.h > > index 3de65a4a481f..ddbc149802f4 100644 > > --- a/sys/dev/nvme/nvme.h > > +++ b/sys/dev/nvme/nvme.h > > @@ -29,15 +29,13 @@ > > #ifndef __NVME_H__ > > #define __NVME_H__ > > > > -#ifdef _KERNEL > > -#include > > -#endif > > - > > #include > > -#include > > -#ifndef _KERNEL > > +#ifdef _KERNEL > > +#include > > +#else > > #include > > #endif > > +#include > > > > struct sbuf; > > > > @@ -1909,7 +1907,6 @@ void nvme_sc_sbuf(const struct nvme_completion > *cpl, struct sbuf *sbuf); > > void nvme_strvis(uint8_t *dst, const uint8_t *src, int dstlen, > int srclen); > > > > #ifdef _KERNEL > > -#include > > #include > > I should perhaps just move this to the top as well so all the #include's > are in one place. > Done --0000000000005e6a340644f1b078 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Mon, Dec 1, = 2025 at 7:53=E2=80=AFAM John Baldwin <jhb@freebsd.org> wrote:
On 11/25/25 11:17, Warner Losh wrote:
> The branch main has been updated by imp:
>
> URL: https://= cgit.FreeBSD.org/src/commit/?id=3D301b8a806f79292ee3324ca938a4d938df1911e8<= /a>
>
> commit 301b8a806f79292ee3324ca938a4d938df1911e8
> Author:=C2=A0 =C2=A0 =C2=A0Warner Losh <imp@FreeBSD.org>
> AuthorDate: 2025-11-25 16:10:23 +0000
> Commit:=C2=A0 =C2=A0 =C2=A0Warner Losh <imp@FreeBSD.org>
> CommitDate: 2025-11-25 16:12:51 +0000
>
>=C2=A0 =C2=A0 =C2=A0 nvme: Minor style(9) fixes
>=C2=A0 =C2=A0 =C2=A0
>=C2=A0 =C2=A0 =C2=A0 <sys/systm.h> needs to be first after <sy= s/param.h>. And we don't need
>=C2=A0 =C2=A0 =C2=A0 both sys/param.h and sys/types.h.
>=C2=A0 =C2=A0 =C2=A0
>=C2=A0 =C2=A0 =C2=A0 Fixes:=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 032fbda02= 4d78
>=C2=A0 =C2=A0 =C2=A0 Sponsored by:=C2=A0 =C2=A0Netflix
> ---
>=C2=A0 =C2=A0sys/dev/nvme/nvme.h | 11 ++++-------
>=C2=A0 =C2=A01 file changed, 4 insertions(+), 7 deletions(-)
>
> diff --git a/sys/dev/nvme/nvme.h b/sys/dev/nvme/nvme.h
> index 3de65a4a481f..ddbc149802f4 100644
> --- a/sys/dev/nvme/nvme.h
> +++ b/sys/dev/nvme/nvme.h
> @@ -29,15 +29,13 @@
>=C2=A0 =C2=A0#ifndef __NVME_H__
>=C2=A0 =C2=A0#define __NVME_H__
>=C2=A0 =C2=A0
> -#ifdef _KERNEL
> -#include <sys/types.h>
> -#endif
> -
>=C2=A0 =C2=A0#include <sys/param.h>
> -#include <sys/endian.h>
> -#ifndef _KERNEL
> +#ifdef _KERNEL
> +#include <sys/systm.h>
> +#else
>=C2=A0 =C2=A0#include <stdbool.h>
>=C2=A0 =C2=A0#endif
> +#include <sys/endian.h>
>=C2=A0 =C2=A0
>=C2=A0 =C2=A0struct sbuf;
>=C2=A0 =C2=A0
> @@ -1909,7 +1907,6 @@ void=C2=A0 =C2=A0 nvme_sc_sbuf(const struct nvme= _completion *cpl, struct sbuf *sbuf);
>=C2=A0 =C2=A0void=C2=A0 =C2=A0 =C2=A0 =C2=A0 nvme_strvis(uint8_t *dst, = const uint8_t *src, int dstlen, int srclen);
>=C2=A0 =C2=A0
>=C2=A0 =C2=A0#ifdef _KERNEL
> -#include <sys/systm.h>
>=C2=A0 =C2=A0#include <sys/disk.h>

I should perhaps just move this to the top as well so all the #include'= s are in one place.

--0000000000005e6a340644f1b078-- From nobody Tue Dec 2 13:35:12 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLMG8528tz6KSB6 for ; Tue, 02 Dec 2025 13:35:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLMG81yxLz3nKX for ; Tue, 02 Dec 2025 13:35:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764682512; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GQFPbkZmbnLDkjwv4jVz9QE4aZgOufVhJ7/pdHtd/nk=; b=cpsNpcYgz6VmrwcFfQoUrJfNohaAO9nIj9p9sgs5qfs2sElbrlhLpKLph7kzomPg739NQz 25rhMsRGMaqoNsh5yB0FeusDZNWYnaAhO63RJqNMhK0zHSZDRfohCyczUW2tUsHklfz4DU Ecmyhrb4qz2NveKWxkcE7wVUU3ZoFzr4u/Nr23dIaEadEu3mlKjoJ6zfMwGhD5kRCVchza JvndjOAY31o0m20C2ml3VOM8wRpU2QIK8hdPZYF/+A3a76+IjRCHaHrwtJ97cfQoFYBDQO yWCz/7a5Jt7/ta2ZFGpVEBkRJyTKv7s9BuT0H39hM2vG+YC1vdhfW+uGtVnasw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764682512; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GQFPbkZmbnLDkjwv4jVz9QE4aZgOufVhJ7/pdHtd/nk=; b=CdLWVGkC5oQq1N/OeNsAXzj9Nb3QhoCKIgWA2kLeTj6a2LaEKjf7M9p6XpteXV1UAGF9mQ iOgOyMHY+GcWkkFcqRvWVfQpE9te7mpNjPt2rvvLrTsr3egUahaw6Wv7pENh/5reJ7flqA 6fw1skS4n1YS19+SyWlzd5pG/HHlrLmpxc/2n8OsdKkZkp8SPzi7S65X0PtF8rK4GQONfc xhyzR9iS8xxSe0XZUoF9wtlUtR7hdebS0cAFEh4/AlbBDcigGHIuQHjnfyQdXLF7gx1S+J lqnsp4XoQqLpBIR4TMOq52GFkRJLp/jLaPNup3NYI9iKymVn/NmHuqUfiBZgnw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764682512; a=rsa-sha256; cv=none; b=xiM/ZUXahZTOdEjvFSQpVu2Ev8IJgwYtazlU43Yjwy8F/MNFB53Fbv8a8F7b44Rxb0Sirc XiDLu84Bn5uuH4EcsxtYC6TxKLVJFPRvDFkV4RFIu5SN+Pqq0wcTmO9cqhLUQG/a2WdItv b+k4Y5zyxNvy8lnHSsd4VlVhRvkQCULgmll7rFNt+M8EJ7be/5uZsbLeFj/1NLu7eDfH5C c5lzpFOI+Oy2PBTGmX8Xng78//4e+9eK+hlpsTEPosFmI1IFtgoaejjdzgCrjBwCGRToUi 2CO9Ri/8KwxhD0lDMDkg8mKNRzORNV+TlbuS9WsS/nchMRmnmaiY0ppAo3YxPA== 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 4dLMG81CWNz18Lc for ; Tue, 02 Dec 2025 13:35:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 27ecc by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 13:35:12 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Robert Clausecker Subject: git: f417c9ed6642 - main - powerpc/_stdint.h: fix SIG_ATOMIC_{MIN,MAX,WIDTH} List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: fuz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f417c9ed6642836c386c922d6e184b618d28127d Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 13:35:12 +0000 Message-Id: <692eeb10.27ecc.564ef7c4@gitrepo.freebsd.org> The branch main has been updated by fuz: URL: https://cgit.FreeBSD.org/src/commit/?id=f417c9ed6642836c386c922d6e184b618d28127d commit f417c9ed6642836c386c922d6e184b618d28127d Author: Robert Clausecker AuthorDate: 2025-12-02 00:59:05 +0000 Commit: Robert Clausecker CommitDate: 2025-12-02 13:34:24 +0000 powerpc/_stdint.h: fix SIG_ATOMIC_{MIN,MAX,WIDTH} On powerpc/powerpc64, sig_atomic_t is an int, but was treated as if it was a long by . This was finally caught by the unit test added with 4a1c752 / D53831. Reported by: kib Reviewed by: kib, imp Approved by: markj (mentor) Fixes: c3e289e1ce8c9af8d14e9f727632e22b3bf901f9 MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54026 --- sys/powerpc/include/_stdint.h | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/sys/powerpc/include/_stdint.h b/sys/powerpc/include/_stdint.h index 983db38ccf25..385c33389809 100644 --- a/sys/powerpc/include/_stdint.h +++ b/sys/powerpc/include/_stdint.h @@ -167,15 +167,15 @@ * ISO/IEC 9899:1999 * 7.18.3 Limits of other integer types */ +/* Limits of sig_atomic_t. */ +#define SIG_ATOMIC_MIN INT32_MIN +#define SIG_ATOMIC_MAX INT32_MAX + #ifdef __LP64__ /* Limits of ptrdiff_t. */ #define PTRDIFF_MIN INT64_MIN #define PTRDIFF_MAX INT64_MAX -/* Limits of sig_atomic_t. */ -#define SIG_ATOMIC_MIN INT64_MIN -#define SIG_ATOMIC_MAX INT64_MAX - /* Limit of size_t. */ #define SIZE_MAX UINT64_MAX #else @@ -183,10 +183,6 @@ #define PTRDIFF_MIN INT32_MIN #define PTRDIFF_MAX INT32_MAX -/* Limits of sig_atomic_t. */ -#define SIG_ATOMIC_MIN INT32_MIN -#define SIG_ATOMIC_MAX INT32_MAX - /* Limit of size_t. */ #define SIZE_MAX UINT32_MAX #endif @@ -217,13 +213,12 @@ */ #ifdef __LP64__ #define PTRDIFF_WIDTH INT64_WIDTH -#define SIG_ATOMIC_WIDTH INT64_WIDTH #define SIZE_WIDTH INT64_WIDTH #else #define PTRDIFF_WIDTH INT32_WIDTH -#define SIG_ATOMIC_WIDTH INT32_WIDTH #define SIZE_WIDTH INT32_WIDTH #endif +#define SIG_ATOMIC_WIDTH INT32_WIDTH #define WCHAR_WIDTH INT32_WIDTH #define WINT_WIDTH INT32_WIDTH #endif /* __ISO_C_VISIBLE >= 2023 */ From nobody Tue Dec 2 14:45:59 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLNqq75NDz6KXx7 for ; Tue, 02 Dec 2025 14:45:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLNqq6YSXz42Yr for ; Tue, 02 Dec 2025 14:45:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764686759; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oxoaiwkeotGMKIiqHXyKZT4RVAt0VGNvT7rpnluqFiE=; b=KBOjgaZ7GrBmL28mbEKpjkFirtSOv22nbNjfZwDFPksKxc8V8yXvP2hc+tDVWCJl+lp7cC dGjcEp4LUHkltigBBzLkVWGN6Je61AgQ2KnN+0REP3ACxaRIptIlNa4HgOzGc3l00B6zKU k35ezNsQ/Z3B6Xx8YyMYWx7WucXUqzDQD2otfq8THSME49iWP3kL0ldgDHkUw1Dc/jTu7X ygrktOpclHPLbeSWIeLpY5t28ju/Kc441qGtpXPSx0Uz9/wrtOn+R9F1+bboogXGA6TVq4 NYYTxuhNO6RAN6vW5s4HLoSALgyJxl2hUXm/ckDF4usf73PAUFnnOAldlyJ+2g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764686759; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oxoaiwkeotGMKIiqHXyKZT4RVAt0VGNvT7rpnluqFiE=; b=ULGtkZovhvk64hS2QZ5yK2fSh33GX0WLcdHhUxPoJUkyVpI1kLviDc5dm3VgxU4+GnD8qy GMWiNX9gdhGC1MieUWp8KJWCUYuM6UX/Wq2fQ01awcoLNfDzVFGA+cp1Gj7kY25m5B9qLT 4Tle/03je1yrnP+degBhoYpN7rBWNSFio8w3nf0NWfdll0nwzOhUaXkpdLh6KOIXmy7UZL TLc84m3KdRPW3qYKUmUKcWfutKkax1S+SKvOQav5F4RMm0fD0XQEZ0wCUF+tqO5nCY5KtD vUUp3B6TxO4XIjnJgX3mFGUaGDCgLHq8mCIaxZXN8fl90gZnhkXj5QHPEAVf6Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764686759; a=rsa-sha256; cv=none; b=eT1ZS6eCpsu6Vcu0bmW7a20PdZrqSRpJADvNpKfQwF38GHL+5ZQHgXvKknbVw0qs/zFS2v FQye7X8DK0Ce795J54Y/vBmnIxO7G9nj6mmWZRcm0zKTa5xPHOLBSSbgZx6+7sh6S3kyD4 dg26BcnsfqcLwrBXxicHy/32jXKOBG2Nz5IQuUE8Z6SM0QxvCRbEuScj+7EsYCnH4dUZUK iyY/AmU4QfMgZlFg7Wv4T6dmoJj1TopjwLIuU+vChKBlkG0N/Y0xAz3qC1utmAbX2ZCdhF F1IKfG5t+FHoD74F5qZ6m2CY60fKEvpe5NnstQXxWv3e8G3HKanV4vGcnPfkTQ== 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 4dLNqq64Bcz19hc for ; Tue, 02 Dec 2025 14:45:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2f02f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 14:45:59 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 1630af436a61 - stable/14 - vmm: Fix a deadlock between vm_smp_rendezvous() and vcpu_lock_all() List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1630af436a6145e90f7b1aac1a91fbbfe9b22f57 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 14:45:59 +0000 Message-Id: <692efba7.2f02f.33327be2@gitrepo.freebsd.org> The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=1630af436a6145e90f7b1aac1a91fbbfe9b22f57 commit 1630af436a6145e90f7b1aac1a91fbbfe9b22f57 Author: Mark Johnston AuthorDate: 2025-10-17 13:09:38 +0000 Commit: Mark Johnston CommitDate: 2025-12-02 14:44:36 +0000 vmm: Fix a deadlock between vm_smp_rendezvous() and vcpu_lock_all() vm_smp_rendezvous() invokes a callback on all vCPUs, blocking the initiator until all vCPUs have responded. vcpu_lock_all() blocks each vCPU by waiting for it to go idle and setting the vCPU state to frozen. These two operations can deadlock on each other, particularly when booting a Windows guest, when vcpu_lock_all() blocks waiting for a rendezvous initiator, and the initiator is blocked waiting for the vCPU thread which called vcpu_lock_all() to invoke the rendezvous callback. Implement vcpu_lock_all() in a way that avoids deadlocks with vm_smp_rendezvous(). In particular, when traversing vCPUs, invoke the rendezvous callback on the vCPU's behalf to help the initiator finish. We can only safely do so when the vCPU is IDLE or we have already locked it, otherwise we may be racing with the target vCPU thread. Thus: - Use an exclusive lock to serialize vcpu_lock_all() callers, which lets us lock vCPUs out of order without fear of deadlock with parallel vcpu_lock_all() callers. - If a rendezvous is pending, lock all idle vCPUs and invoke the callback on their behalf. If the vcpu_lock_all() caller is itself a vCPU thread, this will handle that thread. - Block waiting for all non-idle vCPUs to idle, or until one of them initiates a rendezvous, in which case we go back and invoke callbacks on behalf of already-locked vCPUs. Note that on !amd64 no changes are needed since there is no rendezvous mechanism, so there is a separate vcpu_set_state_all() for them based on the previous vcpu_lock_all(). These will be merged together once vcpu state handling is consolidated into sys/dev/vmm. Reviewed by: corvink (previous version) MFC after: 3 weeks Differential Revision: https://reviews.freebsd.org/D52968 (cherry picked from commit f39768e52e513264da60add0ca2412bddda271ff) --- sys/amd64/include/vmm.h | 3 +- sys/amd64/vmm/vmm.c | 177 ++++++++++++++++++++++++++++++++++++++++-------- sys/amd64/vmm/vmm_dev.c | 30 ++------ 3 files changed, 157 insertions(+), 53 deletions(-) diff --git a/sys/amd64/include/vmm.h b/sys/amd64/include/vmm.h index 368c3a6cb95b..09f2ea7cb0e5 100644 --- a/sys/amd64/include/vmm.h +++ b/sys/amd64/include/vmm.h @@ -225,7 +225,7 @@ extern u_int vm_maxcpu; /* maximum virtual cpus */ int vm_create(const char *name, struct vm **retvm); struct vcpu *vm_alloc_vcpu(struct vm *vm, int vcpuid); void vm_disable_vcpu_creation(struct vm *vm); -void vm_slock_vcpus(struct vm *vm); +void vm_lock_vcpus(struct vm *vm); void vm_unlock_vcpus(struct vm *vm); void vm_destroy(struct vm *vm); int vm_reinit(struct vm *vm); @@ -378,6 +378,7 @@ enum vcpu_state { }; int vcpu_set_state(struct vcpu *vcpu, enum vcpu_state state, bool from_idle); +int vcpu_set_state_all(struct vm *vm, enum vcpu_state state); enum vcpu_state vcpu_get_state(struct vcpu *vcpu, int *hostcpu); static int __inline diff --git a/sys/amd64/vmm/vmm.c b/sys/amd64/vmm/vmm.c index 677dcd05b9b2..787599bcfc97 100644 --- a/sys/amd64/vmm/vmm.c +++ b/sys/amd64/vmm/vmm.c @@ -557,9 +557,9 @@ vm_alloc_vcpu(struct vm *vm, int vcpuid) } void -vm_slock_vcpus(struct vm *vm) +vm_lock_vcpus(struct vm *vm) { - sx_slock(&vm->vcpus_init_lock); + sx_xlock(&vm->vcpus_init_lock); } void @@ -1342,6 +1342,54 @@ save_guest_fpustate(struct vcpu *vcpu) static VMM_STAT(VCPU_IDLE_TICKS, "number of ticks vcpu was idle"); +/* + * Invoke the rendezvous function on the specified vcpu if applicable. Return + * true if the rendezvous is finished, false otherwise. + */ +static bool +vm_rendezvous(struct vcpu *vcpu) +{ + struct vm *vm = vcpu->vm; + int vcpuid; + + mtx_assert(&vcpu->vm->rendezvous_mtx, MA_OWNED); + KASSERT(vcpu->vm->rendezvous_func != NULL, + ("vm_rendezvous: no rendezvous pending")); + + /* 'rendezvous_req_cpus' must be a subset of 'active_cpus' */ + CPU_AND(&vm->rendezvous_req_cpus, &vm->rendezvous_req_cpus, + &vm->active_cpus); + + vcpuid = vcpu->vcpuid; + if (CPU_ISSET(vcpuid, &vm->rendezvous_req_cpus) && + !CPU_ISSET(vcpuid, &vm->rendezvous_done_cpus)) { + VMM_CTR0(vcpu, "Calling rendezvous func"); + (*vm->rendezvous_func)(vcpu, vm->rendezvous_arg); + CPU_SET(vcpuid, &vm->rendezvous_done_cpus); + } + if (CPU_CMP(&vm->rendezvous_req_cpus, + &vm->rendezvous_done_cpus) == 0) { + VMM_CTR0(vcpu, "Rendezvous completed"); + CPU_ZERO(&vm->rendezvous_req_cpus); + vm->rendezvous_func = NULL; + wakeup(&vm->rendezvous_func); + return (true); + } + return (false); +} + +static void +vcpu_wait_idle(struct vcpu *vcpu) +{ + KASSERT(vcpu->state != VCPU_IDLE, ("vcpu already idle")); + + vcpu->reqidle = 1; + vcpu_notify_event_locked(vcpu, false); + VMM_CTR1(vcpu, "vcpu state change from %s to " + "idle requested", vcpu_state2str(vcpu->state)); + msleep_spin(&vcpu->state, &vcpu->mtx, "vmstat", hz); +} + static int vcpu_set_state_locked(struct vcpu *vcpu, enum vcpu_state newstate, bool from_idle) @@ -1356,13 +1404,8 @@ vcpu_set_state_locked(struct vcpu *vcpu, enum vcpu_state newstate, * ioctl() operating on a vcpu at any point. */ if (from_idle) { - while (vcpu->state != VCPU_IDLE) { - vcpu->reqidle = 1; - vcpu_notify_event_locked(vcpu, false); - VMM_CTR1(vcpu, "vcpu state change from %s to " - "idle requested", vcpu_state2str(vcpu->state)); - msleep_spin(&vcpu->state, &vcpu->mtx, "vmstat", hz); - } + while (vcpu->state != VCPU_IDLE) + vcpu_wait_idle(vcpu); } else { KASSERT(vcpu->state != VCPU_IDLE, ("invalid transition from " "vcpu idle state")); @@ -1414,6 +1457,95 @@ vcpu_set_state_locked(struct vcpu *vcpu, enum vcpu_state newstate, return (0); } +/* + * Try to lock all of the vCPUs in the VM while taking care to avoid deadlocks + * with vm_smp_rendezvous(). + * + * The complexity here suggests that the rendezvous mechanism needs a rethink. + */ +int +vcpu_set_state_all(struct vm *vm, enum vcpu_state newstate) +{ + cpuset_t locked; + struct vcpu *vcpu; + int error, i; + uint16_t maxcpus; + + KASSERT(newstate != VCPU_IDLE, + ("vcpu_set_state_all: invalid target state %d", newstate)); + + error = 0; + CPU_ZERO(&locked); + maxcpus = vm->maxcpus; + + mtx_lock(&vm->rendezvous_mtx); +restart: + if (vm->rendezvous_func != NULL) { + /* + * If we have a pending rendezvous, then the initiator may be + * blocked waiting for other vCPUs to execute the callback. The + * current thread may be a vCPU thread so we must not block + * waiting for the initiator, otherwise we get a deadlock. + * Thus, execute the callback on behalf of any idle vCPUs. + */ + for (i = 0; i < maxcpus; i++) { + vcpu = vm_vcpu(vm, i); + if (vcpu == NULL) + continue; + vcpu_lock(vcpu); + if (vcpu->state == VCPU_IDLE) { + (void)vcpu_set_state_locked(vcpu, VCPU_FROZEN, + true); + CPU_SET(i, &locked); + } + if (CPU_ISSET(i, &locked)) { + /* + * We can safely execute the callback on this + * vCPU's behalf. + */ + vcpu_unlock(vcpu); + (void)vm_rendezvous(vcpu); + vcpu_lock(vcpu); + } + vcpu_unlock(vcpu); + } + } + + /* + * Now wait for remaining vCPUs to become idle. This may include the + * initiator of a rendezvous that is currently blocked on the rendezvous + * mutex. + */ + CPU_FOREACH_ISCLR(i, &locked) { + if (i >= maxcpus) + break; + vcpu = vm_vcpu(vm, i); + if (vcpu == NULL) + continue; + vcpu_lock(vcpu); + while (vcpu->state != VCPU_IDLE) { + mtx_unlock(&vm->rendezvous_mtx); + vcpu_wait_idle(vcpu); + vcpu_unlock(vcpu); + mtx_lock(&vm->rendezvous_mtx); + if (vm->rendezvous_func != NULL) + goto restart; + vcpu_lock(vcpu); + } + error = vcpu_set_state_locked(vcpu, newstate, true); + vcpu_unlock(vcpu); + if (error != 0) { + /* Roll back state changes. */ + CPU_FOREACH_ISSET(i, &locked) + (void)vcpu_set_state(vcpu, VCPU_IDLE, false); + break; + } + CPU_SET(i, &locked); + } + mtx_unlock(&vm->rendezvous_mtx); + return (error); +} + static void vcpu_require_state(struct vcpu *vcpu, enum vcpu_state newstate) { @@ -1435,36 +1567,23 @@ vcpu_require_state_locked(struct vcpu *vcpu, enum vcpu_state newstate) static int vm_handle_rendezvous(struct vcpu *vcpu) { - struct vm *vm = vcpu->vm; + struct vm *vm; struct thread *td; - int error, vcpuid; - error = 0; - vcpuid = vcpu->vcpuid; td = curthread; + vm = vcpu->vm; + mtx_lock(&vm->rendezvous_mtx); while (vm->rendezvous_func != NULL) { - /* 'rendezvous_req_cpus' must be a subset of 'active_cpus' */ - CPU_AND(&vm->rendezvous_req_cpus, &vm->rendezvous_req_cpus, &vm->active_cpus); - - if (CPU_ISSET(vcpuid, &vm->rendezvous_req_cpus) && - !CPU_ISSET(vcpuid, &vm->rendezvous_done_cpus)) { - VMM_CTR0(vcpu, "Calling rendezvous func"); - (*vm->rendezvous_func)(vcpu, vm->rendezvous_arg); - CPU_SET(vcpuid, &vm->rendezvous_done_cpus); - } - if (CPU_CMP(&vm->rendezvous_req_cpus, - &vm->rendezvous_done_cpus) == 0) { - VMM_CTR0(vcpu, "Rendezvous completed"); - CPU_ZERO(&vm->rendezvous_req_cpus); - vm->rendezvous_func = NULL; - wakeup(&vm->rendezvous_func); + if (vm_rendezvous(vcpu)) break; - } + VMM_CTR0(vcpu, "Wait for rendezvous completion"); mtx_sleep(&vm->rendezvous_func, &vm->rendezvous_mtx, 0, "vmrndv", hz); if (td_ast_pending(td, TDA_SUSPEND)) { + int error; + mtx_unlock(&vm->rendezvous_mtx); error = thread_check_susp(td, true); if (error != 0) diff --git a/sys/amd64/vmm/vmm_dev.c b/sys/amd64/vmm/vmm_dev.c index 5214cd3f1447..032b7471664e 100644 --- a/sys/amd64/vmm/vmm_dev.c +++ b/sys/amd64/vmm/vmm_dev.c @@ -179,32 +179,16 @@ vcpu_unlock_one(struct vmmdev_softc *sc, int vcpuid, struct vcpu *vcpu) static int vcpu_lock_all(struct vmmdev_softc *sc) { - struct vcpu *vcpu; int error; - uint16_t i, j, maxcpus; - - error = 0; - vm_slock_vcpus(sc->vm); - maxcpus = vm_get_maxcpus(sc->vm); - for (i = 0; i < maxcpus; i++) { - vcpu = vm_vcpu(sc->vm, i); - if (vcpu == NULL) - continue; - error = vcpu_lock_one(vcpu); - if (error) - break; - } - if (error) { - for (j = 0; j < i; j++) { - vcpu = vm_vcpu(sc->vm, j); - if (vcpu == NULL) - continue; - vcpu_unlock_one(sc, j, vcpu); - } + /* + * Serialize vcpu_lock_all() callers. Individual vCPUs are not locked + * in a consistent order so we need to serialize to avoid deadlocks. + */ + vm_lock_vcpus(sc->vm); + error = vcpu_set_state_all(sc->vm, VCPU_FROZEN); + if (error != 0) vm_unlock_vcpus(sc->vm); - } - return (error); } From nobody Tue Dec 2 14:57:14 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLP4q0CRRz6KYSZ for ; Tue, 02 Dec 2025 14: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLP4p5D98z44fN for ; Tue, 02 Dec 2025 14:57:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764687434; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=epYZUbSjXe5QGOMfpwFX22kTiHETDs11IRI+hJccXk8=; b=KAvw5EuTf5h36euzXAR8jIv5azLkak/LDFGW/tyPeIVL9VfTDrtAjxivdy40sb1zXm+MQT SpzlhWue+cKw1VHqCmBLP84ifxIpZMhH73RBWUZ8f/r02DdMMT1WhhMrA0YWUqSZA7imwT 4xZi55Ltq+UhjlH1YRm/mcf2P0aD9XwhApoQqgV6+TV6Ex07GMhovg9LfzdjDYYGB7Ahup 1Z1ffTy9w3ffO6avkQdqcGjWBiPaYiiWad32SyyH9SRIqLgIrQaV4A9+ppBFyUniRBV/sy tb3Jc+wrvG5TtuPtNG+GqRAyRt67Xb+pAlST65Db6Gf0PLptvxU9zh7EvABZBQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764687434; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=epYZUbSjXe5QGOMfpwFX22kTiHETDs11IRI+hJccXk8=; b=tag2fyZB3XdzBoVcM/LZCYPIizopNp/tBfj3DEwpG2olRRklbMlVy3jRCBSBJ+kLWZSAsA WSuc1JzCBUAm3ecGHEDHICsGBanTuDqdxclGJQ/V1IGylZo5KyZh83Uf0LHsKwLmI8ic5Y cEkHFcSKgYYnhXICvOtCRkNsuVsaGSy5zs3AKTPaldSK7LKypBCewm866tQ7ZUuJwg8Qfe vMIgZIgzqPO5LYRA6HH9ErXdk2neGFP18eIT2wPgEXQBUvE5NhBqFFL/LtWJb1jgtl7aH2 q2aBaRCJDCTQ5h+MRNLgl8svF0A9+0KxbTa7NHSNZ0SMXDPw70Nljtvn5noH2w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764687434; a=rsa-sha256; cv=none; b=vqJxtNcc5NsF78rpO69Hni9oCOH8d2n2MG0XqT2GDWbMW3VF5UV5wc0whmptIlVqa9eEIr rK2fgYhgN+AsSlyb9aNqVpV1xTnU1WJh2ewWtNrLNBhoUt7JAIb7Qatvlg/F+uB1JdQB7+ ASdNy92oNULPGlVSIzdLuZsOBkt33bGlimSPxQUYGuOUweasgC7qfPojuRxby2TcYnucM+ kZTSpFc2Qo5crUzZeDjNhD0nwTlVmd758ICG6dXo1nckD+ZQ/L9UqmCEBJ06aunIz72yEg e2eNbjfxRYKUoYprnDDOBF4omNEG2wvIFgHZmTtbJ+gaw7iqpvHGoAxbVMYz5Q== 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 4dLP4p42gwz1BBC for ; Tue, 02 Dec 2025 14:57:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2ef51 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 14:57:14 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: Cy Schubert Subject: git: 89922daaa168..e7e917ee3cf2 - vendor/sqlite3 - vendor branch updated List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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/vendor/sqlite3 X-Git-Reftype: branch X-Git-Commit: e7e917ee3cf2b3010b1c511c6ebaf8b65b983ad7 X-Git-Oldrev: 89922daaa168292633b1a7a523bcd0559487c6ad X-Git-Newrev: e7e917ee3cf2b3010b1c511c6ebaf8b65b983ad7 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 14:57:14 +0000 Message-Id: <692efe4a.2ef51.47b46c3f@gitrepo.freebsd.org> The branch vendor/sqlite3 has been updated by cy: URL: https://cgit.FreeBSD.org/src/log/?id=89922daaa168..e7e917ee3cf2 e7e917ee3cf2 sqlite3: Vendor import of sqlite3 3.50.4 From nobody Tue Dec 2 15:02:39 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLPCQ6mZ5z6KYj1 for ; Tue, 02 Dec 2025 15:02:58 +0000 (UTC) (envelope-from wschnr@googlemail.com) Received: from mail-wr1-f42.google.com (mail-wr1-f42.google.com [209.85.221.42]) (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 4dLPCP64scz45Qm for ; Tue, 02 Dec 2025 15:02:52 +0000 (UTC) (envelope-from wschnr@googlemail.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 wschnr@googlemail.com designates 209.85.221.42 as permitted sender) smtp.mailfrom=wschnr@googlemail.com Received: by mail-wr1-f42.google.com with SMTP id ffacd0b85a97d-42e2e2eccd2so1934986f8f.1 for ; Tue, 02 Dec 2025 07:02:52 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764687771; x=1765292571; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=X8IuXSpfGR2RSmE1CcTDKX551BkuPzPYeER/TLh53k8=; b=ohVTyf/UfbQhWh3Gum6J/kQceJrJsWIgvbJCsVF2VQpFRrqnB8ooC5/c6ZJ5Ms7j0B WB3YNy2jFZd1QrOclZPa/ioDf1aeXl66rqRSmENhVHh+bjO8VrwEnk5Npg7+fwcSmJ+F bXyCuuJdWD5EHkN+R2eKWF3k0U5jLy+bSMLjsQmALRmAbF4O4cZzaKaVOIJsWX+9lj6S QLDMi45WCl796mUy2DzJ5quE4KNLE9RPl1TONShZT0898l5iykr/tqoA3wr36zti5YVX VhrwaiKNv+nNrbdLfs4L9TXUAP1HgxSibAJgBi8XcEIjE0kmTQhG6HbxBjkF+T70m0zu 8UBQ== X-Forwarded-Encrypted: i=1; AJvYcCXr2EE0Y97sVzLDL7jKGfOfH/muCmHxaG/kHjThT5bq/qB21u8oBzQzfCIyMCML/NqGoaIS8swD11zaQbwIWhMmbsxz@freebsd.org X-Gm-Message-State: AOJu0YyEWsaIKvgEStUsX4S45+R3KIQE0fwnej6DRT7Vl70r/Aa8TGMh kt0FR0TTJkOJN54mTE3+Gr8Il9bctQtgzquV3w+DN0R0SpnafFhNfMIozNquJLsyf3Q+NvpY2HL aHGF8P7QTOr3WIczzfZj1HGO0s0n/IR4= X-Gm-Gg: ASbGncv6AZQvIQVk9aCvOvDFvxSpBf1VSV7bzQJZwvZiACbOHAeWjNZmkyFtvK1X21U tSyse5jJ8qlj36n5nTPLo0nUAwJKw0itpBQV7Tdmp3WOzrpTQIuxOZtgFErZ975H1grClYFuGpo vo7ZC5BiYHt7H2kDNO7LeAD9zFYkvi+SOQS3mNahVbDQiRmtInP82QvORFGLQ2JvC92arzCtRDf 16wbVvyxChM5SvpMAwxrJOwIu+XKTeXIkAEgDeq6HslMnqCRl/ZgNqXq9wD7Sj3jGH+gmS/BSUO AhlonlNy/l3F6PBua/6OL4R0Fcs8yq2u1EtJOG6g9yRL3xJw/w== X-Google-Smtp-Source: AGHT+IGS3IbH/aKalU7p1Nwk1E+wbPWfkzehqLfjfhzmrCzx381Zj9uBbS0y10KBHZrErGawuKOisssW6Ro/wE1x9Xo= X-Received: by 2002:a05:6000:240b:b0:42b:43b4:2870 with SMTP id ffacd0b85a97d-42cc1d0897cmr48051659f8f.26.1764687770968; Tue, 02 Dec 2025 07:02:50 -0800 (PST) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 References: <202510140252.59E2qpmW046357@gitrepo.freebsd.org> In-Reply-To: <202510140252.59E2qpmW046357@gitrepo.freebsd.org> From: Wolfram Schneider Date: Tue, 2 Dec 2025 16:02:39 +0100 X-Gm-Features: AWmQ_bnKKPKmXqsE-QuDGXMh8wvJXwR-sBOFqt5zPc7TpJFD7N0xoiDZRDGvQC4 Message-ID: Subject: Re: git: 16155cccc4bf - main - packages: Compress in parallel To: Colin Percival Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: multipart/mixed; boundary="000000000000ba7dde0644f96368" X-Spamd-Bar: / X-Spamd-Result: default: False [-0.40 / 15.00]; MIME_BASE64_TEXT_BOGUS(1.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.96)[-0.956]; NEURAL_SPAM_MEDIUM(0.36)[0.361]; FORGED_SENDER(0.30)[wosch@freebsd.org,wschnr@googlemail.com]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17:c]; DMARC_POLICY_SOFTFAIL(0.10)[freebsd.org : SPF not aligned (relaxed), No valid DKIM,none]; MIME_BASE64_TEXT(0.10)[]; MIME_GOOD(-0.10)[multipart/mixed,text/plain]; FREEMAIL_ENVFROM(0.00)[googlemail.com]; HAS_ATTACHMENT(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; RCVD_TLS_LAST(0.00)[]; TO_DN_SOME(0.00)[]; ARC_NA(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; RCVD_COUNT_ONE(0.00)[1]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; PREVIOUSLY_DELIVERED(0.00)[dev-commits-src-all@freebsd.org]; TO_MATCH_ENVRCPT_SOME(0.00)[]; FROM_NEQ_ENVFROM(0.00)[wosch@freebsd.org,wschnr@googlemail.com]; RCVD_IN_DNSWL_NONE(0.00)[209.85.221.42:from]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org]; BLOCKLISTDE_FAIL(0.00)[209.85.221.42:server fail]; R_DKIM_NA(0.00)[]; MISSING_XM_UA(0.00)[]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.85.221.42:from]; FROM_HAS_DN(0.00)[] X-Rspamd-Queue-Id: 4dLPCP64scz45Qm --000000000000ba7dde0644f96368 Content-Type: text/plain; charset="UTF-8" On Tue, 14 Oct 2025 at 04:53, Colin Percival wrote: > > The branch main has been updated by cperciva: > > URL: https://cgit.FreeBSD.org/src/commit/?id=16155cccc4bf42a5a76806128e7ef637f9ae61fe > > commit 16155cccc4bf42a5a76806128e7ef637f9ae61fe > Author: Colin Percival > AuthorDate: 2025-10-12 21:44:14 +0000 > Commit: Colin Percival > CommitDate: 2025-10-14 02:50:52 +0000 > > packages: Compress in parallel > > The FreeBSD-base pkg repository is currrently dominated by a handful of > large packages: Out of a compressed repository size of ~960 MB, about > 160 MB is taken up by the FreeBSD-src package, 128 MB (on amd64) is > used by the FreeBSD-kernel-generic-dbg package, and 91 MB is used by > the FreeBSD-src-sys package. Consequently, running 'make packages -jN' > provides less benefit than one might hope, as most of the packages > finish building quickly, ultimately leaving the FreeBSD-src package > building by itself for a couple minutes while all the other CPUs are > idle. > > Pass -T${PKG_CTHREADS} to the 'pkg create' commands (with a default > of -T0) in order to instruct pkg's zstd compression to use multiple > threads. > > Testing on an EC2 r7i.48xlarge instance with -j192, this reduces the > time taken by 'make packages' from 6m17s to 1m39s; package creation > time itself (excluding the initial process of installing into world > and kernel staging directories) dropped from 5m37s to 59s. Great work! `make packages' is now twice as fast on my old macbook pro m1 (10 CPUs, 8P+2E, cross compiling), from 8.5min down to 4.5min. 100 seconds for installation, and 180 seconds for pkg. Most of the time is spent with the usual suspects, the toolchain and debug libs (WITHOUT_TOOLCHAIN and WITHOUT_DEBUG_FILES), see the CSV attachment. -Wolfram > > Reviewed by: ivy > MFC after: 3 days > Sponsored by: https://www.patreon.com/cperciva > Differential Revision: https://reviews.freebsd.org/D53053 > --- > Makefile.inc1 | 15 ++++++++------- > 1 file changed, 8 insertions(+), 7 deletions(-) > > diff --git a/Makefile.inc1 b/Makefile.inc1 > index e079a23552f1..a86dead09aa1 100644 > --- a/Makefile.inc1 > +++ b/Makefile.inc1 > @@ -1964,6 +1964,7 @@ REPODIR?= ${OBJROOT}repo > PKG_FORMAT?= tzst > PKG_LEVEL?= -1 > PKG_CLEVEL?= ${"${PKG_FORMAT:Mtar}" != "":?:-l ${PKG_LEVEL}} > +PKG_CTHREADS?= 0 > PKG_REPO_SIGNING_KEY?= # empty > PKG_OUTPUT_DIR?= ${PKG_VERSION} > PKG_ABI_FILE?= ${WSTAGEDIR}/usr/bin/uname > @@ -2144,7 +2145,7 @@ create-source-src-package: _pkgbootstrap .PHONY > ${SSTAGEDIR}/src.ucl > ${PKG_CMD} -o ABI=${PKG_ABI} \ > -o OSVERSION="${SRCRELDATE}" \ > - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ > + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ > -M ${SSTAGEDIR}/src.ucl \ > -p ${SSTAGEDIR}/src.plist \ > -r ${SRCDIR} \ > @@ -2170,7 +2171,7 @@ create-source-src-sys-package: _pkgbootstrap .PHONY > ${SSTAGEDIR}/src-sys.ucl > ${PKG_CMD} -o ABI=${PKG_ABI} \ > -o OSVERSION="${SRCRELDATE}" \ > - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ > + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ > -M ${SSTAGEDIR}/src-sys.ucl \ > -p ${SSTAGEDIR}/src-sys.plist \ > -r ${SRCDIR} \ > @@ -2210,7 +2211,7 @@ create-world-package-${pkgname}: .PHONY > ' ${WSTAGEDIR}/${pkgname}.ucl > ${PKG_CMD} -o ABI=${PKG_ABI} -o ALLOW_BASE_SHLIBS=yes \ > -o OSVERSION="${SRCRELDATE}" \ > - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ > + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ > -M ${WSTAGEDIR}/${pkgname}.ucl \ > -p ${WSTAGEDIR}/${pkgname}.plist \ > -r ${WSTAGEDIR} \ > @@ -2229,7 +2230,7 @@ create-sets-packages: .PHONY > @for manifest in ${WSTAGEDIR}/set-*.ucl; do \ > echo "--> Processing manifest: $$manifest"; \ > ${PKG_CMD} -o ABI=${PKG_ABI} -o OSVERSION="${SRCRELDATE}" \ > - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ > + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ > -M $$manifest \ > -o "${REPODIR}/${PKG_ABI}/${PKG_OUTPUT_DIR}" \ > || exit 1; \ > @@ -2259,7 +2260,7 @@ create-dtb-package: .PHONY > ${KSTAGEDIR}/${DISTDIR}/dtb.ucl ; \ > ${PKG_CMD} -o ABI=${PKG_ABI} -o ALLOW_BASE_SHLIBS=yes \ > -o OSVERSION="${SRCRELDATE}" \ > - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ > + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ > -M ${KSTAGEDIR}/${DISTDIR}/dtb.ucl \ > -p ${KSTAGEDIR}/${DISTDIR}/dtb.plist \ > -r ${KSTAGEDIR}/${DISTDIR} \ > @@ -2296,7 +2297,7 @@ create-kernel-packages-flavor${flavor:C,^""$,${_default_flavor},}: _pkgbootstrap > ${KSTAGEDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}${flavor}.ucl ; \ > ${PKG_CMD} -o ABI=${PKG_ABI} -o ALLOW_BASE_SHLIBS=yes \ > -o OSVERSION="${SRCRELDATE}" \ > - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ > + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ > -M ${KSTAGEDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}${flavor}.ucl \ > -p ${KSTAGEDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}${flavor}.plist \ > -r ${KSTAGEDIR}/${DISTDIR} \ > @@ -2339,7 +2340,7 @@ create-kernel-packages-extra-flavor${flavor:C,^""$,${_default_flavor},}-${_kerne > ${KSTAGEDIR}/kernel.${_kernel}/kernel.${_kernel}${flavor}.ucl ; \ > ${PKG_CMD} -o ABI=${PKG_ABI} -o ALLOW_BASE_SHLIBS=yes \ > -o OSVERSION="${SRCRELDATE}" \ > - create -f ${PKG_FORMAT} ${PKG_CLEVEL} \ > + create -f ${PKG_FORMAT} ${PKG_CLEVEL} -T${PKG_CTHREADS} \ > -M ${KSTAGEDIR}/kernel.${_kernel}/kernel.${_kernel}${flavor}.ucl \ > -p ${KSTAGEDIR}/kernel.${_kernel}/kernel.${_kernel}${flavor}.plist \ > -r ${KSTAGEDIR}/kernel.${_kernel} \ -- Wolfram Schneider https://wolfram.schneider.org --000000000000ba7dde0644f96368 Content-Type: text/csv; charset="US-ASCII"; name="pkg-time.csv" Content-Disposition: attachment; filename="pkg-time.csv" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_miopc5dg0 dGltZTogcmVhbCAxMTQuNDIgdXNlciAyMTkuNDYgc3lzIDEuMTQgc3RhcnQ6IDE3NjQ1ODY5ODUu Mzc5MTgxMDAwIGVuZDogMTc2NDU4NzA5OS44MTk5NzAwMDAgZXhpdDogMCBtZXNzYWdlOiBwa2cg Y2xhbmctZGJnCnRpbWU6IHJlYWwgNzguOTQgdXNlciAzOC4xNyBzeXMgMS4yNSBzdGFydDogMTc2 NDU4NzA5MS44ODE1ODkwMDAgZW5kOiAxNzY0NTg3MTcwLjg0ODkwMjAwMCBleGl0OiAwIG1lc3Nh Z2U6IHBrZyByZXNjdWUKdGltZTogcmVhbCA2OS4wMiB1c2VyIDg3LjU1IHN5cyAwLjQ2IHN0YXJ0 OiAxNzY0NTg2OTg1LjM5MDA2NjAwMCBlbmQ6IDE3NjQ1ODcwNTQuNDMwODkzMDAwIGV4aXQ6IDAg bWVzc2FnZTogcGtnIGNsYW5nCnRpbWU6IHJlYWwgNTMuNDAgdXNlciAzMC4zMiBzeXMgMS4wNCBz dGFydDogMTc2NDU4Njk5Ni4wNjcwNDYwMDAgZW5kOiAxNzY0NTg3MDQ5LjQ5Njk5NTAwMCBleGl0 OiAwIG1lc3NhZ2U6IHBrZyBjbGlicy1kZXYKdGltZTogcmVhbCAzOS42NSB1c2VyIDE2LjQwIHN5 cyAwLjI0IHN0YXJ0OiAxNzY0NTg3MDYxLjU2OTUyMjAwMCBlbmQ6IDE3NjQ1ODcxMDEuMjUzMTYy MDAwIGV4aXQ6IDAgbWVzc2FnZTogcGtnIGxvY2FsZXMKdGltZTogcmVhbCAzNS45MCB1c2VyIDE3 LjAwIHN5cyAxLjMxIHN0YXJ0OiAxNzY0NTg3MDcxLjM3NjMxMjAwMCBlbmQ6IDE3NjQ1ODcxMDcu MzA0Njg2MDAwIGV4aXQ6IDAgbWVzc2FnZTogcGtnIG9wZW5zc2wtZGV2CnRpbWU6IHJlYWwgMzMu MDEgdXNlciAyNC42MiBzeXMgMC4xOSBzdGFydDogMTc2NDU4Njk4NS4zNzY4NTIwMDAgZW5kOiAx NzY0NTg3MDE4LjQxNTQyMTAwMCBleGl0OiAwIG1lc3NhZ2U6IHBrZyBjbGFuZy1kZXYKdGltZTog cmVhbCAzMS4yNSB1c2VyIDIwLjExIHN5cyAwLjExIHN0YXJ0OiAxNzY0NTg3MDU4LjA2MjE5MjAw MCBlbmQ6IDE3NjQ1ODcwODkuMzQxMTk3MDAwIGV4aXQ6IDAgbWVzc2FnZTogcGtnIGxsZGItZGJn CnRpbWU6IHJlYWwgMzEuMTUgdXNlciA0MC41OSBzeXMgMS40OSBzdGFydDogMTc2NDU4NzEwMy4z Mjg0ODkwMDAgZW5kOiAxNzY0NTg3MTM0LjUxNjk4NTAwMCBleGl0OiAwIG1lc3NhZ2U6IHBrZyB0 ZXN0cwp0aW1lOiByZWFsIDI4LjA2IHVzZXIgMTEuMzggc3lzIDAuMDkgc3RhcnQ6IDE3NjQ1ODY5 ODUuODEwMjM4MDAwIGVuZDogMTc2NDU4NzAxMy44OTUwNTYwMDAgZXhpdDogMCBtZXNzYWdlOiBw a2cgY2xpYnMtZGV2LWxpYjMyCg== --000000000000ba7dde0644f96368-- From nobody Tue Dec 2 15:03:57 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLPDZ0w1xz6KYnQ for ; Tue, 02 Dec 2025 15:03: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLPDZ0MJ6z45nf for ; Tue, 02 Dec 2025 15:03:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764687838; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZjkN5djIQb0ynCtLar7mbhCpdPi0YDIE6OqCMgI3t2M=; b=IaQonKKwimaqzjdo771XG3iWXqvxy/tepLIQkZgjzq4PM7VDaKPFveMF/xGh8a0Wmam5yw sdXsWBJ+OVToMj7cXwdvg9rsg3kt5pDLJo8LX8Pva1ZQSz8D1uHVdglf0vKuQoqtjzwEx1 RFmSra6J8J5X3yr157KqN8Iq9CqbOp4ZaZFmuvteI7Vw8bABG8B7w9uYDTBc9A1nyTU/4/ 2JKuqKjQjg/xBV9GJxDaTd0HIY3L6Nq0VJDWutoQVFZVcu7wiFKhKprbLo4wQr5UjyrzIH KUyuLWkNWfsA0vmBpjecE9utDjPlZtMkSUncwCz6ixEKqNY5M4j04WU6uXID9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764687838; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZjkN5djIQb0ynCtLar7mbhCpdPi0YDIE6OqCMgI3t2M=; b=pHMOkbdhK+aE00usQCrg5nHXfiPmM7IxvgkmJiWxQqX5sjMLz0bBGER78Mjx9AwhIUdVAp bS6etYYXC7z4fz+ff9rrAlHqoFYbSuRMxoYxKq65C8zTs6jJ/vsH/L2zSUHjQU2OLEFpb0 3WIR82UcHlVCw2yW8kjCwsJCV4L9h4KLBHiLyTI0pPINpimpSp7plgBXX6si5NICoVnmgr pGS+otqVBljnrcQb8SUASbak5CMsEgP0JUF7Lo4Laxb4HkrDgXCnvWLxV7OXA6psU0j9Y9 04PX3qtvn0U0BejnoKtpFx+TDXIOD8Z1CF/evIFce5eue0Xw4NI6j2OHoz1Suw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764687838; a=rsa-sha256; cv=none; b=vxca/6XK5XMlJ4QaSS4Fxz5Y0sYPYlf2tx3uOr3eJRdirI7qZXTAJSUEyq+3vffTmVviCq e6iZIfgOqRbeKQFPzTcFfyLkhFH5x9KJc6D+Ki+Dd/hwliggXW949vuacdIiHd7Q9auX2f 38iR9hR8J7S1vB/lIFX4NloUmhlOZN0usb28vHSFdZnJtqjA8ceca0Mi/kiZSPbwxnjmo2 5BL0kCKOMMxdnLEgSGJBXSQOc0R5s0m2EQZ062Qn7bVX6kPQzDZFSZH83oBceRUxmtj8yA PMK1EGXd0e4B42l5bLojNs32X7/X49J9QSvLIHXycgRcOreQNHOkOod6gD8MAw== 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 4dLPDY73q9z1BCs for ; Tue, 02 Dec 2025 15:03:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 32ad3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 15:03:57 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: Cy Schubert Subject: git: d63a69254679 - Create tag vendor/sqlite3/sqlite-3500200 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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/tags/vendor/sqlite3/sqlite-3500200 X-Git-Reftype: annotated tag X-Git-Commit: d63a692546798532d18311ff591de43675e3883b Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 15:03:57 +0000 Message-Id: <692effdd.32ad3.64c55ef6@gitrepo.freebsd.org> The annotated tag vendor/sqlite3/sqlite-3500200 has been created by cy: URL: https://cgit.FreeBSD.org/src/tag/?h=vendor/sqlite3/sqlite-3500200 tag vendor/sqlite3/sqlite-3500200 Tagger: Cy Schubert TaggerDate: 2025-12-02 15:02:20 +0000 sqlite3: Tag 3.40.2 commit 89922daaa168292633b1a7a523bcd0559487c6ad Author: Cy Schubert AuthorDate: 2025-07-07 23:45:18 +0000 Commit: Cy Schubert CommitDate: 2025-07-07 23:45:18 +0000 sqlite3: Vendor import of sqlite3 3.50.2 Release notes at https://www.sqlite.org/releaselog/3_50_2.html. Obtained from: https://www.sqlite.org/2025/sqlite-autoconf-3500200.tar.gz From nobody Tue Dec 2 15:03:58 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLPDZ2gP0z6KYg1 for ; Tue, 02 Dec 2025 15:03: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLPDZ0dnXz45ng for ; Tue, 02 Dec 2025 15:03:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764687838; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IlI4ZGNZsW6v26LS81+XsS/PGY56Ylrusddh6da7F7M=; b=QlctWCinDCNk8wVkrn6SqKtg871HR/VDWsTKAhP1fkkxeS1GQmTE1JegTpObYWns7PhGDA 5Uk8d3Vg8JXGyK2hHPeKK7xxVAYgiCEypjXedru1XN0+Z0JSFvFY1n8T0TkOAlqCGHcdma G8UMOxzoOIkaeF69OGYhxn7ZAW4tVQ2YOwEkBGOpgyuyEbgvJyzxG6mCmRcUhHg0XB533v 8J5poKjplxyaEQVSMwFXFrZfs/rcEaR5nclgB6H19XH6op52bOnkjW0PWJCfscRY3fdGcm 4cAuYFW1dbkWR7qOJMbXUHlZQ5rMrU0hRCvqpDzwNcZEtOjlK7xB7PLzXWs4EQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764687838; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IlI4ZGNZsW6v26LS81+XsS/PGY56Ylrusddh6da7F7M=; b=BarfSpyxBzHbdGv0EF45sv2WHeh2MT1nqDZpRymelMWZXOkGlWlaEgCn094lEiFwfQF12I jJ6wJVI3ZJ1N9orprbjQfy6MQ2jXPTp2j+C+AL6u/CFCS3LvN5o3dj0dfKDoT1lj3opNZA h4C5Tc9Dj0UqGaw9G7rBuqCnPWZBHIhk9DOBWR+H9XbJ9VMhQglw7K1NQrzH5uzighIYk+ vDjWD1sKmyOOTdpPzJBNYqewXiMwAINuH6H0ldh7mhOBP08SAw0VplRVyp1Islld7AAH5J thRDYObK9A4Beiheevvky3nLiFYa95qyONti/l2Tz94LbEvP39d6YiATqJw75w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764687838; a=rsa-sha256; cv=none; b=T3EVJJhxTFWU3MpcdC7IUGPvOXTWYWLeDzJv96AF3dBRMaE5QN9BMtiTCsTgHugpZa2/0Z 7MZEAp542TrlurTx6RI5cxuL/ZjMZDLOMYLys/mOIUyCAN9CX8oWhrZsDLgs2VC6no9Oej hmW6W1SfBoEleOr6FdXY2ImubiMo1wBNV16dRvamh5UJ5R48WYDxgo+OmrwZUMvqPJIyQt PDuNCWzp55TFaK7amupcBHT7IURyDu+V2vQisHyCJtx+FYnAmrbN4vA+nMUhcWLaxJS4gN ulTdDimXbfeNRsbjHZTeC649q7oLsKZTWwxNi/mf9azJn6qUFW99LdGzMNit/A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dLPDZ09TXz1BKF for ; Tue, 02 Dec 2025 15:03:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30557 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 15:03:58 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: Cy Schubert Subject: git: 7d4feaebc92c - Create tag vendor/sqlite3/sqlite-3500400 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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/tags/vendor/sqlite3/sqlite-3500400 X-Git-Reftype: annotated tag X-Git-Commit: 7d4feaebc92c86a60eef1288faadb8cfe5921979 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 15:03:58 +0000 Message-Id: <692effde.30557.d3be867@gitrepo.freebsd.org> The annotated tag vendor/sqlite3/sqlite-3500400 has been created by cy: URL: https://cgit.FreeBSD.org/src/tag/?h=vendor/sqlite3/sqlite-3500400 tag vendor/sqlite3/sqlite-3500400 Tagger: Cy Schubert TaggerDate: 2025-12-02 15:03:09 +0000 sqlite3: Tag 3.50.4 commit e7e917ee3cf2b3010b1c511c6ebaf8b65b983ad7 Author: Cy Schubert AuthorDate: 2025-12-02 14:56:21 +0000 Commit: Cy Schubert CommitDate: 2025-12-02 14:56:21 +0000 sqlite3: Vendor import of sqlite3 3.50.4 Release notes at https://www.sqlite.org/releaselog/3_50_4.html. Obtained from: https://www.sqlite.org/2025/sqlite-autoconf-3500400.tar.gz From nobody Tue Dec 2 15:23:45 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLPgQ0lqVz6HcFx for ; Tue, 02 Dec 2025 15:23: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLPgQ032mz4Bpc for ; Tue, 02 Dec 2025 15:23:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764689026; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EcCWAMVG0rOIjhX3PGfgxAIBpGlUqxK5AMC4qULYeYg=; b=H0GCwi289wQyV3QlmvlnFVF8r7BbSyBtX1TRbANUbpXTCCZm7siS9rxRJ/FQuRjOp93nG0 AdIcnGHOIBuBdUwttneYL4Wbddtj7/GjS8WBmy8yv2CJoFEf2MZZ9ojes3mBtyBjwVGH67 wIfErSeXuCmXA429xaP7n+iLcAjF7xAU5sDzIJwF1i6q4hDWxbLi0j7JXQiJ6Zk39f/sg8 VXan0HgKgmyvzPj0kvbVUxyz/kHKOqdtrhj7JTusmEqgrQlz/74PIYzhiGCA73VXhxVy+q Z5dG5io3nPRKrG7IFNSxbLd9chlV4F0ktQi8rXTVn4mHsio8QcBWw0S0edevZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764689026; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EcCWAMVG0rOIjhX3PGfgxAIBpGlUqxK5AMC4qULYeYg=; b=i5WCHeKN3YtI9zir2JxLHwy0viA6tSl/5zIKBwFz+HeIlj5XqTXHHe5JN878gNXjFjOiYo kmkEZOD2y3H9St1MUOEClMg3G1xvote60iSppb19GddfzUhah3dIvA6pbnbAyQMhcAQTIU WZYZmMQuQlw1fv9LU8nviAOAzKUMKt6sE2iv7UdHzDvqJ18eXmSQWjZNIeFqoyVHl75hxZ g5RnJeE1g92cRnwnmyNL625gX8wTGKqQ75hkTkVnWuQgqwrPwNN7TaKr/L8qDil+/1wZlL smVMPyRjwvLp2loAvrmJqfP9N8W6+WFYVgZ3dHNbqNziF+i9wA/pomIYGkpfuQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764689026; a=rsa-sha256; cv=none; b=wRwWbbD9i+yHEbt0LDlXV1mNlPHa+wHu5pOxILa+rkYw4s1wXx4Xs3hfw3X5FHnayOH02V op19w5Yk7ONIkh9o7xaMUeRxeYBsNxlD/y5V0QSNy6z2lt+INixod/1u2o7to8/pGFDoOm nEGNo6rmvmaDHWRABEL5Iq/rDBf0GojaF4YwqCNmKgkIxMeQBCxij/zpeeMS796ufddkrD K0zi0KbYdLP3pSZqw6V3iTYuugvYVxwAKEVosYYtn6STOL21/05husEZwAvslIA/k64hii +70NGPu8kug1UEaP4sGZF0EsnI8GglcNBQmx10a4eMo8kV1ZJdrrB7O4Zzd7NA== 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 4dLPgP6Xztz1Bry for ; Tue, 02 Dec 2025 15:23:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 33d12 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 15:23:45 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Cy Schubert Subject: git: 07d5a9b1b2dd - main - sqlite3: Update to 3.50.4 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 07d5a9b1b2dd95d95137c6c2afcb84ad40c05b75 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 15:23:45 +0000 Message-Id: <692f0481.33d12.519ac31b@gitrepo.freebsd.org> The branch main has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=07d5a9b1b2dd95d95137c6c2afcb84ad40c05b75 commit 07d5a9b1b2dd95d95137c6c2afcb84ad40c05b75 Merge: f417c9ed6642 e7e917ee3cf2 Author: Cy Schubert AuthorDate: 2025-12-02 15:22:26 +0000 Commit: Cy Schubert CommitDate: 2025-12-02 15:22:26 +0000 sqlite3: Update to 3.50.4 Release notes at https://www.sqlite.org/releaselog/3_50_4.html. Obtained from: https://www.sqlite.org/2025/sqlite-autoconf-3500400.tar.gz Merge commit 'e7e917ee3cf2b3010b1c511c6ebaf8b65b983ad7' contrib/sqlite3/VERSION | 2 +- contrib/sqlite3/sqlite3.c | 203 +++++++++++++++++++++++++----------------- contrib/sqlite3/sqlite3.h | 90 +++++++++---------- contrib/sqlite3/sqlite3.pc.in | 2 +- contrib/sqlite3/sqlite3rc.h | 2 +- 5 files changed, 170 insertions(+), 129 deletions(-) From nobody Tue Dec 2 15:28:20 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLPmh3k5Fz6Hd49 for ; Tue, 02 Dec 2025 15:28:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLPmh2c4Gz4FR0 for ; Tue, 02 Dec 2025 15:28:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764689300; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J3+B5r3BvMoj9urHn2FaBYPWxBE8P8EDaIxaZ+d2Tcc=; b=mI/4Swb0SvuCE48cQ29YYMg6TsMC0P0kb6ChNXEymUcS6LCTe6uqjOwlekiBhZDtXVg3f4 F6z6P9n3epGKsLzLHB2OJukGmxjWq7R6kH/+6PFMTzaKf449B1h+GK7uC73istEhEhzQrK 9gQjh/DWEpHmCGRFOZNYePD+pEABjWo++gr6qDORtIJq0rVYEg0Qy4bEdIv7yzqEaxMbEd o0x6tgVhD9ghT2dCyymfsfZznt81YtiyswAcDSUQJj9uEE83DX9fZadgZlFMjFAdD6rlc0 Q1AeQjx+KTX1Ptk0wpZ885ADrehEft1RATs8KzeHsYS7kagQfl3xcUrR6u9abg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764689300; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J3+B5r3BvMoj9urHn2FaBYPWxBE8P8EDaIxaZ+d2Tcc=; b=T8WvOVsVc7fWwtiGtbm9KerC+O9un6e/hcRU1HTveMfRX1jCWqpK1P4mahmMikW640OMZA m7Nv7PxZmhw/HZQ/UqihSFQkV5ZnGcrqM3+KglBC3NDNju1zn5uLEHxziDJnsMV8PbXdl8 utdEg0qrdv8vdmMxjGFXWuTltzE93GrxC4vWOYCiNgRe80OcR9IzsYdT0JsEMUYFq3/JrQ Vp6Edxg9xl9+oli3P26EdbE2PfTSEGapxTqfcT4bSFI/he7fOp+5RVmgwjgmNQVuMvecOg LbY1l6rZknrds3mq4xeLm19iQojkc6vBT6Fkir3/qwqxV4HtVURo2iLTX7fcmA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764689300; a=rsa-sha256; cv=none; b=QvGvB8Z/7erTo/Oofziqodr+Mn56yRifE1Cn6WOwz4wEY+oKEpZcbVmg+yhsvxHOQBlEW9 AwCIlRmGee3zRqHDQTXGJT9mOgliib4+5Z1SSafWYx4SPlYPPGo3BSRDG+RRlJv2Uu0mnF lErB2xMYawzmzznKJxM6zaT8txCKuy9AFk3/BisPywJQpK9q7fPdGBiRbFEtNHVvfYrpmC iIkpVkzebIFuOb0EDYbMQqZHrVyCBoZECiCZUavNQo3+12Ge1azpiYp/LXkZjD3SzNgDHV vvr7R94/ITQSkg+1eSgNi/kjyFtIErntgBdrSjU9wuWRnJMDUZJ3dukdeRzgBw== 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 4dLPmh1fBQz1BWw for ; Tue, 02 Dec 2025 15:28:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 33d16 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 15:28:20 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: d7129761f5fc - stable/15 - ipfilter: Load optionlist prior to ippool invocation List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: d7129761f5fc8828d5701cfe14adffee58659648 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 15:28:20 +0000 Message-Id: <692f0594.33d16.1108862@gitrepo.freebsd.org> The branch stable/15 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=d7129761f5fc8828d5701cfe14adffee58659648 commit d7129761f5fc8828d5701cfe14adffee58659648 Author: Cy Schubert AuthorDate: 2025-11-26 19:40:36 +0000 Commit: Cy Schubert CommitDate: 2025-12-02 15:28:15 +0000 ipfilter: Load optionlist prior to ippool invocation As a safety precaution df381bec2d2b limits ippool hash table size to 1K. This causes any legitimely large hash table to fail to load. The htable_size_max ipf tuneable adjusts this but the adjustment is made in the ipfilter rc script, invoked after the ippool script (because it depends on ippool). Let's load the ipfilter_optionlist in ippool as well. ipfilter_optionlist load will also occur in the ipfilter rc script in case the user uses ipfilter without ippool. Fixes: df381bec2d2b (cherry picked from commit d5d005e9bf4933d5680dd0bb5d42bdf440122aa4) --- libexec/rc/rc.d/ippool | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libexec/rc/rc.d/ippool b/libexec/rc/rc.d/ippool index 0db8bbe98f61..5ef0d0522621 100755 --- a/libexec/rc/rc.d/ippool +++ b/libexec/rc/rc.d/ippool @@ -27,6 +27,9 @@ required_modules="ipl:ipfilter" ippool_start_precmd() { rc_flags="-f ${ippool_rules} ${rc_flags}" + if [ -n "${ifilter_optionlist}" ]; then + ${ipfilter_program:-/sbin/ipf} -T "${ipfilter_optionlist}" + fi } ippool_reload() From nobody Tue Dec 2 15:29:04 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLPnX5X0bz6HcyM for ; Tue, 02 Dec 2025 15:29:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLPnX45Hgz4FpV for ; Tue, 02 Dec 2025 15:29:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764689344; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/J9KRZluuEmUKGHFiDc8caLkbUCi/ViIS6PWxsTcvTA=; b=rVxRhqzd52HfiOyAgJSSLbq0VqgkpdfmwcevssVem8Zi3Lx5YgpV+l2vgH812cDa9F2UtG yaLKzjSBy3wbspmFB9utCdiDHwWxJ04IpNltOzOfkE7dZ4F3UYWUz2Hmp0w+ffhQvTmcSC 2ZjnlavO1GDdHQk9eTAXi31u6NbQeFIkEn3Jb2sUAfHJhTVtsxMIw00qaGBY/F5OdbIqZV gGPAghfGWn3pOkDV/Qil7dhEa7u99cDv4LMOu+ULXQDh7uY54Mony3s83XuKzyeaHpK/Qa DKVLc0KVBr4EtNel3Nq8objrhfBv0SSn80iUaFmfcZp3B+iRPdsgKXe8abiQ3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764689344; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/J9KRZluuEmUKGHFiDc8caLkbUCi/ViIS6PWxsTcvTA=; b=B66z+F+03MNEkFaSEalKVu4YVK3/0oKkzVZxyCaQqNV5skBFuRI594Run8p3r0xrZq3Tei c7AQ6lOjewy/Bpu1OQANqJ3mufYr0J/3ZFcVbvuCeaYGssdD6pCzkj2CsUgl/6QFw07Xqq brGTka+DzNLMQ0j7C7BBcimtua/6cmxEDXCON2McpnMZmMXSuiMYg4xkSx+VbwTfk+iz2q MiNzuVfIivPELpsdrj4mvuldDPrYgecinNaLsCWYt45Qrd0Dy4COvFjqGhbTcehTagLikb d7hkNTqldhhAtEycbcEEMNmszbyRUPD8PP+tG3FNPQsJ+GWO7o57b7CM/bcsXg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764689344; a=rsa-sha256; cv=none; b=fE1tC5Qqsut05zzC9bGCQOQaHPBtp8aTs3YVLbNJs89Cd+Vy+PovNSEF5dCmdlD5A6N7Eq NjWV6PBO5+bLOklPhaFEsxJsiMx0GqKI5nLmVEJaSllyJMmrpNGC1lNOT0CDfsGJLQ8VT+ f4TTKJq2jFAT9VTbNki0QYOqEEb9fRlAthe0EuKQjZHiVxDpNzM1bZrOVuPdRpI2P6Qoxk ubazDYYcxErEVLlbjlU0qrhhxXinAmrhAkmOqSnmXHWXCWkgfJu1WQzxya9uH149rR0xWp NBgfdv0L+q1aysjSq8MHFqbTeCKG5zOP4u1Ge/Vqx4c3wN/czLFUhnHsnickxg== 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 4dLPnX3gQDz1BWx for ; Tue, 02 Dec 2025 15:29:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 34a80 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 15:29:04 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: c7cfc16f7ce0 - stable/13 - ipfilter: Load optionlist prior to ippool invocation List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: c7cfc16f7ce08ae91b9ec6544348d750d08e65c1 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 15:29:04 +0000 Message-Id: <692f05c0.34a80.76077ad6@gitrepo.freebsd.org> The branch stable/13 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=c7cfc16f7ce08ae91b9ec6544348d750d08e65c1 commit c7cfc16f7ce08ae91b9ec6544348d750d08e65c1 Author: Cy Schubert AuthorDate: 2025-11-26 19:40:36 +0000 Commit: Cy Schubert CommitDate: 2025-12-02 15:28:55 +0000 ipfilter: Load optionlist prior to ippool invocation As a safety precaution df381bec2d2b limits ippool hash table size to 1K. This causes any legitimely large hash table to fail to load. The htable_size_max ipf tuneable adjusts this but the adjustment is made in the ipfilter rc script, invoked after the ippool script (because it depends on ippool). Let's load the ipfilter_optionlist in ippool as well. ipfilter_optionlist load will also occur in the ipfilter rc script in case the user uses ipfilter without ippool. Fixes: df381bec2d2b (cherry picked from commit d5d005e9bf4933d5680dd0bb5d42bdf440122aa4) --- libexec/rc/rc.d/ippool | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libexec/rc/rc.d/ippool b/libexec/rc/rc.d/ippool index 42cef3faf7eb..527e1fc780b2 100755 --- a/libexec/rc/rc.d/ippool +++ b/libexec/rc/rc.d/ippool @@ -23,6 +23,9 @@ required_modules="ipl:ipfilter" ippool_start_precmd() { rc_flags="-f ${ippool_rules} ${rc_flags}" + if [ -n "${ifilter_optionlist}" ]; then + ${ipfilter_program:-/sbin/ipf} -T "${ipfilter_optionlist}" + fi } ippool_reload() From nobody Tue Dec 2 15:58:30 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLQRV3g0nz6HgbY for ; Tue, 02 Dec 2025 15:58:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLQRV35hNz4NGk for ; Tue, 02 Dec 2025 15:58:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764691110; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fZ7QOeSLHYHzpAuy8A1LndNovnNNhWnHIBXbblUCdp8=; b=D4FF8cGUdbYB7IrDO9rdFqlyY/Ex/NVIbzK+h80eOMO5ERxBbrPiAWQu9+v52VTY48SDdQ 4Bn7HB2t4VbHD9mzJYdBYeT3P5Plcn15j/E77UNA05BO7mON3LxgGNVm/Fk6bzOeFP16qa jjbvWy1gfpvZyFfB3xygAEKPCPG90SHPz9EUMy6+rpJVJ3xquC68au5B6EDBmVzdAZEN9O PBGZ++/Mh0uKN0eeBe1y+s5TnWKhgjeeIRXlwPCSK1axxXVI1L5snqBfL/jpeaiUp41Y3Z pRy+rIBu/bUh4YuLYRH9YmsXC23fOKxMra4OU9hTx4uAnDeiFtDWw0mqLjUNDg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764691110; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fZ7QOeSLHYHzpAuy8A1LndNovnNNhWnHIBXbblUCdp8=; b=pTl82XUftDwpniu4kdR6E2RGuTNxsEoRbLAYG6vqvCAQn/aqy6GVCYPiBg5Jf7e32X1yhs y08Epu0v/GzyUrcrdxRrQrhkw+Bt1iKP1ZD2PrQM4sXLKIsV8U0vVegrhKmn/Mz4bFy/If 4/+T0bWjIhgAuniLqR/4O5Tst2ZXUvUL+hae0i3Tfjf1bXJqV9LtUgB4HIgouWTfixbl22 jTq1WkiGPjL4eG1f+2LWFmssHpPsYJ4j6+q1P772SYv9dkup0oTA9oHElIa3rqdm8gffvD fCKP55JYBDbmkprXaNYlfNlTrhI9U98sHd0I8WfwgffWeVP/DxE8e9ByQNWGOA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764691110; a=rsa-sha256; cv=none; b=m5ovcYbXR39D4xj6Ecv1w+krS16ZuMqPGIG/mIbX4fGX+hJjXDwa1B8abuTcQNPwoIcB4L YOnm6o4je0PjuI8GHkhbD0fdxxe119KfPIsReAtTP4SQYxGHGhG6mx7Dsj09LQzSMseQ+F Rd53b7ka20uvW5mWBwY0FbZjs+S04yIN1bliK0jjTWwBEfp4LeVL9CRTa4d531iZCEZ4vE hL+Eq2VLPhMXha018bCwcrNG6cdJWtCikla4ukYmtB26srqfqFiuVx46o8+TgfVgDgVUlL 4dyRmIiO+CYLRu/5wAiYjwODH9B+sqKnlZ2S9uI7utyKDxL64wljh1CVX+egyA== 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 4dLQRV2Zzvz1CXR for ; Tue, 02 Dec 2025 15:58:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 37371 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 15:58:30 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: 38eec1fc77cd - stable/14 - ipfilter: Load optionlist prior to ippool invocation List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 38eec1fc77cd15377f8908ce9937c9982d4ea9d1 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 15:58:30 +0000 Message-Id: <692f0ca6.37371.53687d65@gitrepo.freebsd.org> The branch stable/14 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=38eec1fc77cd15377f8908ce9937c9982d4ea9d1 commit 38eec1fc77cd15377f8908ce9937c9982d4ea9d1 Author: Cy Schubert AuthorDate: 2025-11-26 19:40:36 +0000 Commit: Cy Schubert CommitDate: 2025-12-02 15:28:46 +0000 ipfilter: Load optionlist prior to ippool invocation As a safety precaution df381bec2d2b limits ippool hash table size to 1K. This causes any legitimely large hash table to fail to load. The htable_size_max ipf tuneable adjusts this but the adjustment is made in the ipfilter rc script, invoked after the ippool script (because it depends on ippool). Let's load the ipfilter_optionlist in ippool as well. ipfilter_optionlist load will also occur in the ipfilter rc script in case the user uses ipfilter without ippool. Fixes: df381bec2d2b (cherry picked from commit d5d005e9bf4933d5680dd0bb5d42bdf440122aa4) --- libexec/rc/rc.d/ippool | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libexec/rc/rc.d/ippool b/libexec/rc/rc.d/ippool index 42cef3faf7eb..527e1fc780b2 100755 --- a/libexec/rc/rc.d/ippool +++ b/libexec/rc/rc.d/ippool @@ -23,6 +23,9 @@ required_modules="ipl:ipfilter" ippool_start_precmd() { rc_flags="-f ${ippool_rules} ${rc_flags}" + if [ -n "${ifilter_optionlist}" ]; then + ${ipfilter_program:-/sbin/ipf} -T "${ipfilter_optionlist}" + fi } ippool_reload() From nobody Tue Dec 2 15:58:31 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLQRW6w0kz6Hggl for ; Tue, 02 Dec 2025 15:58:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLQRW6961z4NPr for ; Tue, 02 Dec 2025 15:58:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764691111; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RBv/LU0FYocX8eXm07AZIxrwwQ4iQAht/lWH1JPgnzk=; b=Pdb2FQ3/zYWkcZd9c26oVk4kjjB6NzixXbDRod31vKcDQmwmiqhnF/g+BaaeN1nzoPbqVc 4P2/8Jz7adLZ/H3KgqVTYkPObZD2iQGbNmNtg2/S/8Q2wkgkCeRcJbvrMJhXPsSU0Fr6iD vgx3GfDEBo/KWraOdhRrbQX2gIJWxoEEp3Wor12KBLOZ1mjW9W9ElNm4pWHH9RQGKK9L/z C2bpAHhkD2Zf91fWA9PFD0dXZuyrddrg8VQjSa3zCC9x6ueiz9+2MYw34YPG+XDu29TRW1 OpogLnzj10BbvoMxASB4JJMHPNAmSzo2+M6DEEN3ly0QuStjATOnQoTqcpxDxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764691111; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RBv/LU0FYocX8eXm07AZIxrwwQ4iQAht/lWH1JPgnzk=; b=TWTBIzNJ7VisS9aK3Qqu1Wdc4f8K02OlDfecDLCEGZ0X1wX+PUNYB5j42sZyotA4qef1EL MVMyMZ704o+MJKkRAPHr6SqV2ONNrsW0d99T7ikOUC2W3DRGK28AkA6jMFd+k4UAF0E5sC BHmRUSM1yZVIWOXzpZGIlzD4//SXyCPJDFUXUcVAcJMpS33d42TYFSd7FkvuZxggX5AUWH YA7ZB8J/Bw8lIGdkorVxocVwnYbQ7DEvarZsi6hIdc66vJhANK5E4On80JGwmoEjNPMreS eQClYmZ0gn5mISm//alwSx0uF55kxICTIZYKb++iqAhHAlRXGkHhEgsWoU4lqw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764691111; a=rsa-sha256; cv=none; b=F4plu526iVEfOvvFBodPXuuYrIGx6fycAATMqgZJhk07GLV/GCyM+ePZwl9nT2zvl5Fbwz aglLbqflG1/5XepX7AcDE69whhu4eCSguECO8jvPRppgAE/LX4UBIZxnz2ysv6rYaNFsHD vWaMwDmyScDWwAFQRqaKHSdBG+yKfisJ+FyE40AgqPaGKH+iByPENDr6rtrtWHxg8KCE6I avthZ7P/ubbJytZi9uxqizwk9/GEkWyqOG5dG/cv7l9Wx/1P1vKLA985bpAcqgo0/lhBPl XUv7OHAMGRT69fhCFhIYCAazYSFZneY4zZ4+Dh/ouyCAmRX9ERx6htSsk6NXMw== 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 4dLQRW5YTFz1D29 for ; Tue, 02 Dec 2025 15:58:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 36b11 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 15:58:31 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: ef55f6b86626 - stable/14 - sqlite3: Update to 3.50.4 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ef55f6b8662640ef611e78e09dbda56ec5a1532f Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 15:58:31 +0000 Message-Id: <692f0ca7.36b11.7aa216ad@gitrepo.freebsd.org> The branch stable/14 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=ef55f6b8662640ef611e78e09dbda56ec5a1532f commit ef55f6b8662640ef611e78e09dbda56ec5a1532f Author: Cy Schubert AuthorDate: 2025-12-02 15:22:26 +0000 Commit: Cy Schubert CommitDate: 2025-12-02 15:29:40 +0000 sqlite3: Update to 3.50.4 Release notes at https://www.sqlite.org/releaselog/3_50_4.html. Obtained from: https://www.sqlite.org/2025/sqlite-autoconf-3500400.tar.gz Merge commit 'e7e917ee3cf2b3010b1c511c6ebaf8b65b983ad7' (cherry picked from commit 07d5a9b1b2dd95d95137c6c2afcb84ad40c05b75) --- contrib/sqlite3/VERSION | 2 +- contrib/sqlite3/sqlite3.c | 203 +++++++++++++++++++++++++----------------- contrib/sqlite3/sqlite3.h | 90 +++++++++---------- contrib/sqlite3/sqlite3.pc.in | 2 +- contrib/sqlite3/sqlite3rc.h | 2 +- 5 files changed, 170 insertions(+), 129 deletions(-) diff --git a/contrib/sqlite3/VERSION b/contrib/sqlite3/VERSION index 18d0478a0414..acecb4fcb7aa 100644 --- a/contrib/sqlite3/VERSION +++ b/contrib/sqlite3/VERSION @@ -1 +1 @@ -3.50.2 +3.50.4 diff --git a/contrib/sqlite3/sqlite3.c b/contrib/sqlite3/sqlite3.c index 0b071b2b6cc2..26a7a43d8658 100644 --- a/contrib/sqlite3/sqlite3.c +++ b/contrib/sqlite3/sqlite3.c @@ -1,6 +1,6 @@ /****************************************************************************** ** This file is an amalgamation of many separate C source files from SQLite -** version 3.50.2. By combining all the individual C code files into this +** version 3.50.4. By combining all the individual C code files into this ** single large file, the entire code can be compiled as a single translation ** unit. This allows many compilers to do optimizations that would not be ** possible if the files were compiled separately. Performance improvements @@ -18,7 +18,7 @@ ** separate file. This file contains only code for the core SQLite library. ** ** The content in this amalgamation comes from Fossil check-in -** 2af157d77fb1304a74176eaee7fbc7c7e932 with changes in files: +** 4d8adfb30e03f9cf27f800a2c1ba3c48fb4c with changes in files: ** ** */ @@ -465,9 +465,9 @@ extern "C" { ** [sqlite3_libversion_number()], [sqlite3_sourceid()], ** [sqlite_version()] and [sqlite_source_id()]. */ -#define SQLITE_VERSION "3.50.2" -#define SQLITE_VERSION_NUMBER 3050002 -#define SQLITE_SOURCE_ID "2025-06-28 14:00:48 2af157d77fb1304a74176eaee7fbc7c7e932d946bf25325e9c26c91db19e3079" +#define SQLITE_VERSION "3.50.4" +#define SQLITE_VERSION_NUMBER 3050004 +#define SQLITE_SOURCE_ID "2025-07-30 19:33:53 4d8adfb30e03f9cf27f800a2c1ba3c48fb4ca1b08b0f5ed59a4d5ecbf45e20a3" /* ** CAPI3REF: Run-Time Library Version Numbers @@ -9377,13 +9377,13 @@ SQLITE_API int sqlite3_stmt_status(sqlite3_stmt*, int op,int resetFlg); ** [[SQLITE_STMTSTATUS_SORT]]
SQLITE_STMTSTATUS_SORT
**
^This is the number of sort operations that have occurred. ** A non-zero value in this counter may indicate an opportunity to -** improvement performance through careful use of indices.
+** improve performance through careful use of indices. ** ** [[SQLITE_STMTSTATUS_AUTOINDEX]]
SQLITE_STMTSTATUS_AUTOINDEX
**
^This is the number of rows inserted into transient indices that ** were created automatically in order to help joins run faster. ** A non-zero value in this counter may indicate an opportunity to -** improvement performance by adding permanent indices that do not +** improve performance by adding permanent indices that do not ** need to be reinitialized each time the statement is run.
** ** [[SQLITE_STMTSTATUS_VM_STEP]]
SQLITE_STMTSTATUS_VM_STEP
@@ -9392,19 +9392,19 @@ SQLITE_API int sqlite3_stmt_status(sqlite3_stmt*, int op,int resetFlg); ** to 2147483647. The number of virtual machine operations can be ** used as a proxy for the total work done by the prepared statement. ** If the number of virtual machine operations exceeds 2147483647 -** then the value returned by this statement status code is undefined. +** then the value returned by this statement status code is undefined. ** ** [[SQLITE_STMTSTATUS_REPREPARE]]
SQLITE_STMTSTATUS_REPREPARE
**
^This is the number of times that the prepare statement has been ** automatically regenerated due to schema changes or changes to -** [bound parameters] that might affect the query plan. +** [bound parameters] that might affect the query plan.
** ** [[SQLITE_STMTSTATUS_RUN]]
SQLITE_STMTSTATUS_RUN
**
^This is the number of times that the prepared statement has ** been run. A single "run" for the purposes of this counter is one ** or more calls to [sqlite3_step()] followed by a call to [sqlite3_reset()]. ** The counter is incremented on the first [sqlite3_step()] call of each -** cycle. +** cycle.
** ** [[SQLITE_STMTSTATUS_FILTER_MISS]] ** [[SQLITE_STMTSTATUS_FILTER HIT]] @@ -9414,7 +9414,7 @@ SQLITE_API int sqlite3_stmt_status(sqlite3_stmt*, int op,int resetFlg); ** step was bypassed because a Bloom filter returned not-found. The ** corresponding SQLITE_STMTSTATUS_FILTER_MISS value is the number of ** times that the Bloom filter returned a find, and thus the join step -** had to be processed as normal. +** had to be processed as normal. ** ** [[SQLITE_STMTSTATUS_MEMUSED]]
SQLITE_STMTSTATUS_MEMUSED
**
^This is the approximate number of bytes of heap memory @@ -9519,9 +9519,9 @@ struct sqlite3_pcache_page { ** SQLite will typically create one cache instance for each open database file, ** though this is not guaranteed. ^The ** first parameter, szPage, is the size in bytes of the pages that must -** be allocated by the cache. ^szPage will always a power of two. ^The +** be allocated by the cache. ^szPage will always be a power of two. ^The ** second parameter szExtra is a number of bytes of extra storage -** associated with each page cache entry. ^The szExtra parameter will +** associated with each page cache entry. ^The szExtra parameter will be ** a number less than 250. SQLite will use the ** extra szExtra bytes on each page to store metadata about the underlying ** database page on disk. The value passed into szExtra depends @@ -9529,17 +9529,17 @@ struct sqlite3_pcache_page { ** ^The third argument to xCreate(), bPurgeable, is true if the cache being ** created will be used to cache database pages of a file stored on disk, or ** false if it is used for an in-memory database. The cache implementation -** does not have to do anything special based with the value of bPurgeable; +** does not have to do anything special based upon the value of bPurgeable; ** it is purely advisory. ^On a cache where bPurgeable is false, SQLite will ** never invoke xUnpin() except to deliberately delete a page. ** ^In other words, calls to xUnpin() on a cache with bPurgeable set to ** false will always have the "discard" flag set to true. -** ^Hence, a cache created with bPurgeable false will +** ^Hence, a cache created with bPurgeable set to false will ** never contain any unpinned pages. ** ** [[the xCachesize() page cache method]] ** ^(The xCachesize() method may be called at any time by SQLite to set the -** suggested maximum cache-size (number of pages stored by) the cache +** suggested maximum cache-size (number of pages stored) for the cache ** instance passed as the first argument. This is the value configured using ** the SQLite "[PRAGMA cache_size]" command.)^ As with the bPurgeable ** parameter, the implementation is not required to do anything with this @@ -9566,12 +9566,12 @@ struct sqlite3_pcache_page { ** implementation must return a pointer to the page buffer with its content ** intact. If the requested page is not already in the cache, then the ** cache implementation should use the value of the createFlag -** parameter to help it determined what action to take: +** parameter to help it determine what action to take: ** ** **
createFlag Behavior when page is not already in cache **
0 Do not allocate a new page. Return NULL. -**
1 Allocate a new page if it easy and convenient to do so. +**
1 Allocate a new page if it is easy and convenient to do so. ** Otherwise return NULL. **
2 Make every effort to allocate a new page. Only return ** NULL if allocating a new page is effectively impossible. @@ -9588,7 +9588,7 @@ struct sqlite3_pcache_page { ** as its second argument. If the third parameter, discard, is non-zero, ** then the page must be evicted from the cache. ** ^If the discard parameter is -** zero, then the page may be discarded or retained at the discretion of +** zero, then the page may be discarded or retained at the discretion of the ** page cache implementation. ^The page cache implementation ** may choose to evict unpinned pages at any time. ** @@ -9606,7 +9606,7 @@ struct sqlite3_pcache_page { ** When SQLite calls the xTruncate() method, the cache must discard all ** existing cache entries with page numbers (keys) greater than or equal ** to the value of the iLimit parameter passed to xTruncate(). If any -** of these pages are pinned, they are implicitly unpinned, meaning that +** of these pages are pinned, they become implicitly unpinned, meaning that ** they can be safely discarded. ** ** [[the xDestroy() page cache method]] @@ -9905,7 +9905,7 @@ SQLITE_API int sqlite3_backup_pagecount(sqlite3_backup *p); ** application receives an SQLITE_LOCKED error, it may call the ** sqlite3_unlock_notify() method with the blocked connection handle as ** the first argument to register for a callback that will be invoked -** when the blocking connections current transaction is concluded. ^The +** when the blocking connection's current transaction is concluded. ^The ** callback is invoked from within the [sqlite3_step] or [sqlite3_close] ** call that concludes the blocking connection's transaction. ** @@ -9925,7 +9925,7 @@ SQLITE_API int sqlite3_backup_pagecount(sqlite3_backup *p); ** blocked connection already has a registered unlock-notify callback, ** then the new callback replaces the old.)^ ^If sqlite3_unlock_notify() is ** called with a NULL pointer as its second argument, then any existing -** unlock-notify callback is canceled. ^The blocked connections +** unlock-notify callback is canceled. ^The blocked connection's ** unlock-notify callback may also be canceled by closing the blocked ** connection using [sqlite3_close()]. ** @@ -10323,7 +10323,7 @@ SQLITE_API int sqlite3_vtab_config(sqlite3*, int op, ...); ** support constraints. In this configuration (which is the default) if ** a call to the [xUpdate] method returns [SQLITE_CONSTRAINT], then the entire ** statement is rolled back as if [ON CONFLICT | OR ABORT] had been -** specified as part of the users SQL statement, regardless of the actual +** specified as part of the user's SQL statement, regardless of the actual ** ON CONFLICT mode specified. ** ** If X is non-zero, then the virtual table implementation guarantees @@ -10357,7 +10357,7 @@ SQLITE_API int sqlite3_vtab_config(sqlite3*, int op, ...); ** [[SQLITE_VTAB_INNOCUOUS]]
SQLITE_VTAB_INNOCUOUS
**
Calls of the form ** [sqlite3_vtab_config](db,SQLITE_VTAB_INNOCUOUS) from within the -** the [xConnect] or [xCreate] methods of a [virtual table] implementation +** [xConnect] or [xCreate] methods of a [virtual table] implementation ** identify that virtual table as being safe to use from within triggers ** and views. Conceptually, the SQLITE_VTAB_INNOCUOUS tag means that the ** virtual table can do no serious harm even if it is controlled by a @@ -10525,7 +10525,7 @@ SQLITE_API const char *sqlite3_vtab_collation(sqlite3_index_info*,int); **
** ** ^For the purposes of comparing virtual table output values to see if the -** values are same value for sorting purposes, two NULL values are considered +** values are the same value for sorting purposes, two NULL values are considered ** to be the same. In other words, the comparison operator is "IS" ** (or "IS NOT DISTINCT FROM") and not "==". ** @@ -10535,7 +10535,7 @@ SQLITE_API const char *sqlite3_vtab_collation(sqlite3_index_info*,int); ** ** ^A virtual table implementation is always free to return rows in any order ** it wants, as long as the "orderByConsumed" flag is not set. ^When the -** the "orderByConsumed" flag is unset, the query planner will add extra +** "orderByConsumed" flag is unset, the query planner will add extra ** [bytecode] to ensure that the final results returned by the SQL query are ** ordered correctly. The use of the "orderByConsumed" flag and the ** sqlite3_vtab_distinct() interface is merely an optimization. ^Careful @@ -10632,7 +10632,7 @@ SQLITE_API int sqlite3_vtab_in(sqlite3_index_info*, int iCons, int bHandle); ** sqlite3_vtab_in_next(X,P) should be one of the parameters to the ** xFilter method which invokes these routines, and specifically ** a parameter that was previously selected for all-at-once IN constraint -** processing use the [sqlite3_vtab_in()] interface in the +** processing using the [sqlite3_vtab_in()] interface in the ** [xBestIndex|xBestIndex method]. ^(If the X parameter is not ** an xFilter argument that was selected for all-at-once IN constraint ** processing, then these routines return [SQLITE_ERROR].)^ @@ -10687,7 +10687,7 @@ SQLITE_API int sqlite3_vtab_in_next(sqlite3_value *pVal, sqlite3_value **ppOut); ** and only if *V is set to a value. ^The sqlite3_vtab_rhs_value(P,J,V) ** inteface returns SQLITE_NOTFOUND if the right-hand side of the J-th ** constraint is not available. ^The sqlite3_vtab_rhs_value() interface -** can return an result code other than SQLITE_OK or SQLITE_NOTFOUND if +** can return a result code other than SQLITE_OK or SQLITE_NOTFOUND if ** something goes wrong. ** ** The sqlite3_vtab_rhs_value() interface is usually only successful if @@ -10715,8 +10715,8 @@ SQLITE_API int sqlite3_vtab_rhs_value(sqlite3_index_info*, int, sqlite3_value ** ** KEYWORDS: {conflict resolution mode} ** ** These constants are returned by [sqlite3_vtab_on_conflict()] to -** inform a [virtual table] implementation what the [ON CONFLICT] mode -** is for the SQL statement being evaluated. +** inform a [virtual table] implementation of the [ON CONFLICT] mode +** for the SQL statement being evaluated. ** ** Note that the [SQLITE_IGNORE] constant is also used as a potential ** return value from the [sqlite3_set_authorizer()] callback and that @@ -10756,39 +10756,39 @@ SQLITE_API int sqlite3_vtab_rhs_value(sqlite3_index_info*, int, sqlite3_value ** ** [[SQLITE_SCANSTAT_EST]]
SQLITE_SCANSTAT_EST
**
^The "double" variable pointed to by the V parameter will be set to the ** query planner's estimate for the average number of rows output from each -** iteration of the X-th loop. If the query planner's estimates was accurate, +** iteration of the X-th loop. If the query planner's estimate was accurate, ** then this value will approximate the quotient NVISIT/NLOOP and the ** product of this value for all prior loops with the same SELECTID will -** be the NLOOP value for the current loop. +** be the NLOOP value for the current loop.
** ** [[SQLITE_SCANSTAT_NAME]]
SQLITE_SCANSTAT_NAME
**
^The "const char *" variable pointed to by the V parameter will be set ** to a zero-terminated UTF-8 string containing the name of the index or table -** used for the X-th loop. +** used for the X-th loop.
** ** [[SQLITE_SCANSTAT_EXPLAIN]]
SQLITE_SCANSTAT_EXPLAIN
**
^The "const char *" variable pointed to by the V parameter will be set ** to a zero-terminated UTF-8 string containing the [EXPLAIN QUERY PLAN] -** description for the X-th loop. +** description for the X-th loop.
** ** [[SQLITE_SCANSTAT_SELECTID]]
SQLITE_SCANSTAT_SELECTID
**
^The "int" variable pointed to by the V parameter will be set to the ** id for the X-th query plan element. The id value is unique within the ** statement. The select-id is the same value as is output in the first -** column of an [EXPLAIN QUERY PLAN] query. +** column of an [EXPLAIN QUERY PLAN] query.
** ** [[SQLITE_SCANSTAT_PARENTID]]
SQLITE_SCANSTAT_PARENTID
**
The "int" variable pointed to by the V parameter will be set to the -** the id of the parent of the current query element, if applicable, or +** id of the parent of the current query element, if applicable, or ** to zero if the query element has no parent. This is the same value as -** returned in the second column of an [EXPLAIN QUERY PLAN] query. +** returned in the second column of an [EXPLAIN QUERY PLAN] query.
** ** [[SQLITE_SCANSTAT_NCYCLE]]
SQLITE_SCANSTAT_NCYCLE
**
The sqlite3_int64 output value is set to the number of cycles, ** according to the processor time-stamp counter, that elapsed while the ** query element was being processed. This value is not available for ** all query elements - if it is unavailable the output variable is -** set to -1. +** set to -1.
** */ #define SQLITE_SCANSTAT_NLOOP 0 @@ -10829,8 +10829,8 @@ SQLITE_API int sqlite3_vtab_rhs_value(sqlite3_index_info*, int, sqlite3_value ** ** sqlite3_stmt_scanstatus_v2() with a zeroed flags parameter. ** ** Parameter "idx" identifies the specific query element to retrieve statistics -** for. Query elements are numbered starting from zero. A value of -1 may be -** to query for statistics regarding the entire query. ^If idx is out of range +** for. Query elements are numbered starting from zero. A value of -1 may +** retrieve statistics for the entire query. ^If idx is out of range ** - less than -1 or greater than or equal to the total number of query ** elements used to implement the statement - a non-zero value is returned and ** the variable that pOut points to is unchanged. @@ -10987,8 +10987,8 @@ SQLITE_API int sqlite3_db_cacheflush(sqlite3*); ** triggers; and so forth. ** ** When the [sqlite3_blob_write()] API is used to update a blob column, -** the pre-update hook is invoked with SQLITE_DELETE. This is because the -** in this case the new values are not available. In this case, when a +** the pre-update hook is invoked with SQLITE_DELETE, because +** the new values are not yet available. In this case, when a ** callback made with op==SQLITE_DELETE is actually a write using the ** sqlite3_blob_write() API, the [sqlite3_preupdate_blobwrite()] returns ** the index of the column being written. In other cases, where the @@ -11241,7 +11241,7 @@ SQLITE_API SQLITE_EXPERIMENTAL int sqlite3_snapshot_recover(sqlite3 *db, const c ** For an ordinary on-disk database file, the serialization is just a ** copy of the disk file. For an in-memory database or a "TEMP" database, ** the serialization is the same sequence of bytes which would be written -** to disk if that database where backed up to disk. +** to disk if that database were backed up to disk. ** ** The usual case is that sqlite3_serialize() copies the serialization of ** the database into memory obtained from [sqlite3_malloc64()] and returns @@ -11250,7 +11250,7 @@ SQLITE_API SQLITE_EXPERIMENTAL int sqlite3_snapshot_recover(sqlite3 *db, const c ** contains the SQLITE_SERIALIZE_NOCOPY bit, then no memory allocations ** are made, and the sqlite3_serialize() function will return a pointer ** to the contiguous memory representation of the database that SQLite -** is currently using for that database, or NULL if the no such contiguous +** is currently using for that database, or NULL if no such contiguous ** memory representation of the database exists. A contiguous memory ** representation of the database will usually only exist if there has ** been a prior call to [sqlite3_deserialize(D,S,...)] with the same @@ -11321,7 +11321,7 @@ SQLITE_API unsigned char *sqlite3_serialize( ** database is currently in a read transaction or is involved in a backup ** operation. ** -** It is not possible to deserialized into the TEMP database. If the +** It is not possible to deserialize into the TEMP database. If the ** S argument to sqlite3_deserialize(D,S,P,N,M,F) is "temp" then the ** function returns SQLITE_ERROR. ** @@ -11343,7 +11343,7 @@ SQLITE_API int sqlite3_deserialize( sqlite3 *db, /* The database connection */ const char *zSchema, /* Which DB to reopen with the deserialization */ unsigned char *pData, /* The serialized database content */ - sqlite3_int64 szDb, /* Number bytes in the deserialization */ + sqlite3_int64 szDb, /* Number of bytes in the deserialization */ sqlite3_int64 szBuf, /* Total size of buffer pData[] */ unsigned mFlags /* Zero or more SQLITE_DESERIALIZE_* flags */ ); @@ -11351,7 +11351,7 @@ SQLITE_API int sqlite3_deserialize( /* ** CAPI3REF: Flags for sqlite3_deserialize() ** -** The following are allowed values for 6th argument (the F argument) to +** The following are allowed values for the 6th argument (the F argument) to ** the [sqlite3_deserialize(D,S,P,N,M,F)] interface. ** ** The SQLITE_DESERIALIZE_FREEONCLOSE means that the database serialization @@ -19168,7 +19168,6 @@ struct Index { unsigned hasStat1:1; /* aiRowLogEst values come from sqlite_stat1 */ unsigned bNoQuery:1; /* Do not use this index to optimize queries */ unsigned bAscKeyBug:1; /* True if the bba7b69f9849b5bf bug applies */ - unsigned bIdxRowid:1; /* One or more of the index keys is the ROWID */ unsigned bHasVCol:1; /* Index references one or more VIRTUAL columns */ unsigned bHasExpr:1; /* Index contains an expression, either a literal ** expression, or a reference to a VIRTUAL column */ @@ -19441,6 +19440,7 @@ struct Expr { Table *pTab; /* TK_COLUMN: Table containing column. Can be NULL ** for a column of an index on an expression */ Window *pWin; /* EP_WinFunc: Window/Filter defn for a function */ + int nReg; /* TK_NULLS: Number of registers to NULL out */ struct { /* TK_IN, TK_SELECT, and TK_EXISTS */ int iAddr; /* Subroutine entry address */ int regReturn; /* Register used to hold return address */ @@ -21475,6 +21475,7 @@ SQLITE_PRIVATE void sqlite3ExprCodeGeneratedColumn(Parse*, Table*, Column*, int) SQLITE_PRIVATE void sqlite3ExprCodeCopy(Parse*, Expr*, int); SQLITE_PRIVATE void sqlite3ExprCodeFactorable(Parse*, Expr*, int); SQLITE_PRIVATE int sqlite3ExprCodeRunJustOnce(Parse*, Expr*, int); +SQLITE_PRIVATE void sqlite3ExprNullRegisterRange(Parse*, int, int); SQLITE_PRIVATE int sqlite3ExprCodeTemp(Parse*, Expr*, int*); SQLITE_PRIVATE int sqlite3ExprCodeTarget(Parse*, Expr*, int); SQLITE_PRIVATE int sqlite3ExprCodeExprList(Parse*, ExprList*, int, int, u8); @@ -111488,7 +111489,7 @@ SQLITE_PRIVATE Expr *sqlite3ExprAnd(Parse *pParse, Expr *pLeft, Expr *pRight){ return pLeft; }else{ u32 f = pLeft->flags | pRight->flags; - if( (f&(EP_OuterON|EP_InnerON|EP_IsFalse))==EP_IsFalse + if( (f&(EP_OuterON|EP_InnerON|EP_IsFalse|EP_HasFunc))==EP_IsFalse && !IN_RENAME_OBJECT ){ sqlite3ExprDeferredDelete(pParse, pLeft); @@ -115242,6 +115243,12 @@ expr_code_doover: sqlite3VdbeLoadString(v, target, pExpr->u.zToken); return target; } + case TK_NULLS: { + /* Set a range of registers to NULL. pExpr->y.nReg registers starting + ** with target */ + sqlite3VdbeAddOp3(v, OP_Null, 0, target, target + pExpr->y.nReg - 1); + return target; + } default: { /* Make NULL the default case so that if a bug causes an illegal ** Expr node to be passed into this function, it will be handled @@ -115926,6 +115933,25 @@ SQLITE_PRIVATE int sqlite3ExprCodeRunJustOnce( return regDest; } +/* +** Make arrangements to invoke OP_Null on a range of registers +** during initialization. +*/ +SQLITE_PRIVATE SQLITE_NOINLINE void sqlite3ExprNullRegisterRange( + Parse *pParse, /* Parsing context */ + int iReg, /* First register to set to NULL */ + int nReg /* Number of sequential registers to NULL out */ +){ + u8 okConstFactor = pParse->okConstFactor; + Expr t; + memset(&t, 0, sizeof(t)); + t.op = TK_NULLS; + t.y.nReg = nReg; + pParse->okConstFactor = 1; + sqlite3ExprCodeRunJustOnce(pParse, &t, iReg); + pParse->okConstFactor = okConstFactor; +} + /* ** Generate code to evaluate an expression and store the results ** into a register. Return the register number where the results @@ -127196,7 +127222,6 @@ SQLITE_PRIVATE void sqlite3CreateIndex( assert( j<=0x7fff ); if( j<0 ){ j = pTab->iPKey; - pIndex->bIdxRowid = 1; }else{ if( pTab->aCol[j].notNull==0 ){ pIndex->uniqNotNull = 0; @@ -153177,6 +153202,7 @@ SQLITE_PRIVATE int sqlite3Select( sqlite3VdbeAddOp2(v, OP_Integer, 0, iAbortFlag); VdbeComment((v, "clear abort flag")); sqlite3VdbeAddOp3(v, OP_Null, 0, iAMem, iAMem+pGroupBy->nExpr-1); + sqlite3ExprNullRegisterRange(pParse, iAMem, pGroupBy->nExpr); /* Begin a loop that will extract all source rows in GROUP BY order. ** This might involve two separate loops with an OP_Sort in between, or @@ -160173,7 +160199,9 @@ static Expr *removeUnindexableInClauseTerms( int iField; assert( (pLoop->aLTerm[i]->eOperator & (WO_OR|WO_AND))==0 ); iField = pLoop->aLTerm[i]->u.x.iField - 1; - if( pOrigRhs->a[iField].pExpr==0 ) continue; /* Duplicate PK column */ + if( NEVER(pOrigRhs->a[iField].pExpr==0) ){ + continue; /* Duplicate PK column */ + } pRhs = sqlite3ExprListAppend(pParse, pRhs, pOrigRhs->a[iField].pExpr); pOrigRhs->a[iField].pExpr = 0; if( pRhs ) pRhs->a[pRhs->nExpr-1].u.x.iOrderByCol = iField+1; @@ -160270,7 +160298,7 @@ static SQLITE_NOINLINE void codeINTerm( return; } } - for(i=iEq;inLTerm; i++){ + for(i=iEq; inLTerm; i++){ assert( pLoop->aLTerm[i]!=0 ); if( pLoop->aLTerm[i]->pExpr==pX ) nEq++; } @@ -160279,22 +160307,13 @@ static SQLITE_NOINLINE void codeINTerm( if( !ExprUseXSelect(pX) || pX->x.pSelect->pEList->nExpr==1 ){ eType = sqlite3FindInIndex(pParse, pX, IN_INDEX_LOOP, 0, 0, &iTab); }else{ - Expr *pExpr = pTerm->pExpr; - if( pExpr->iTable==0 || !ExprHasProperty(pExpr, EP_Subrtn) ){ - sqlite3 *db = pParse->db; - pX = removeUnindexableInClauseTerms(pParse, iEq, pLoop, pX); - if( !db->mallocFailed ){ - aiMap = (int*)sqlite3DbMallocZero(pParse->db, sizeof(int)*nEq); - eType = sqlite3FindInIndex(pParse, pX, IN_INDEX_LOOP, 0, aiMap,&iTab); - pExpr->iTable = iTab; - } - sqlite3ExprDelete(db, pX); - }else{ - int n = sqlite3ExprVectorSize(pX->pLeft); - aiMap = (int*)sqlite3DbMallocZero(pParse->db, sizeof(int)*MAX(nEq,n)); - eType = sqlite3FindInIndex(pParse, pX, IN_INDEX_LOOP, 0, aiMap, &iTab); + sqlite3 *db = pParse->db; + Expr *pXMod = removeUnindexableInClauseTerms(pParse, iEq, pLoop, pX); + if( !db->mallocFailed ){ + aiMap = (int*)sqlite3DbMallocZero(db, sizeof(int)*nEq); + eType = sqlite3FindInIndex(pParse, pXMod, IN_INDEX_LOOP, 0, aiMap, &iTab); } - pX = pExpr; + sqlite3ExprDelete(db, pXMod); } if( eType==IN_INDEX_INDEX_DESC ){ @@ -160324,7 +160343,7 @@ static SQLITE_NOINLINE void codeINTerm( if( pIn ){ int iMap = 0; /* Index in aiMap[] */ pIn += i; - for(i=iEq;inLTerm; i++){ + for(i=iEq; inLTerm; i++){ if( pLoop->aLTerm[i]->pExpr==pX ){ int iOut = iTarget + i - iEq; if( eType==IN_INDEX_ROWID ){ @@ -167682,6 +167701,7 @@ static int whereLoopAddBtreeIndex( if( ExprUseXSelect(pExpr) ){ /* "x IN (SELECT ...)": TUNING: the SELECT returns 25 rows */ int i; + int bRedundant = 0; nIn = 46; assert( 46==sqlite3LogEst(25) ); /* The expression may actually be of the form (x, y) IN (SELECT...). @@ -167690,7 +167710,20 @@ static int whereLoopAddBtreeIndex( ** for each such term. The following loop checks that pTerm is the ** first such term in use, and sets nIn back to 0 if it is not. */ for(i=0; inLTerm-1; i++){ - if( pNew->aLTerm[i] && pNew->aLTerm[i]->pExpr==pExpr ) nIn = 0; + if( pNew->aLTerm[i] && pNew->aLTerm[i]->pExpr==pExpr ){ + nIn = 0; + if( pNew->aLTerm[i]->u.x.iField == pTerm->u.x.iField ){ + /* Detect when two or more columns of an index match the same + ** column of a vector IN operater, and avoid adding the column + ** to the WhereLoop more than once. See tag-20250707-01 + ** in test/rowvalue.test */ + bRedundant = 1; + } + } + } + if( bRedundant ){ + pNew->nLTerm--; + continue; } }else if( ALWAYS(pExpr->x.pList && pExpr->x.pList->nExpr) ){ /* "x IN (value, value, ...)" */ @@ -167922,7 +167955,7 @@ static int whereLoopAddBtreeIndex( if( (pNew->wsFlags & WHERE_TOP_LIMIT)==0 && pNew->u.btree.nEqnColumn && (pNew->u.btree.nEqnKeyCol || - (pProbe->idxType!=SQLITE_IDXTYPE_PRIMARYKEY && !pProbe->bIdxRowid)) + pProbe->idxType!=SQLITE_IDXTYPE_PRIMARYKEY) ){ if( pNew->u.btree.nEq>3 ){ sqlite3ProgressCheck(pParse); @@ -168465,6 +168498,7 @@ static int whereLoopAddBtree( pNew->u.btree.nEq = 0; pNew->u.btree.nBtm = 0; pNew->u.btree.nTop = 0; + pNew->u.btree.nDistinctCol = 0; pNew->nSkip = 0; pNew->nLTerm = 0; pNew->iSortIdx = 0; @@ -169533,8 +169567,6 @@ static i8 wherePathSatisfiesOrderBy( obSat = obDone; } break; - }else if( wctrlFlags & WHERE_DISTINCTBY ){ - pLoop->u.btree.nDistinctCol = 0; } iCur = pWInfo->pTabList->a[pLoop->iTab].iCursor; @@ -179897,12 +179929,21 @@ static YYACTIONTYPE yy_reduce( ** expr1 IN () ** expr1 NOT IN () ** - ** simplify to constants 0 (false) and 1 (true), respectively, - ** regardless of the value of expr1. + ** simplify to constants 0 (false) and 1 (true), respectively. + ** + ** Except, do not apply this optimization if expr1 contains a function + ** because that function might be an aggregate (we don't know yet whether + ** it is or not) and if it is an aggregate, that could change the meaning + ** of the whole query. */ - sqlite3ExprUnmapAndDelete(pParse, yymsp[-4].minor.yy590); - yymsp[-4].minor.yy590 = sqlite3Expr(pParse->db, TK_STRING, yymsp[-3].minor.yy502 ? "true" : "false"); - if( yymsp[-4].minor.yy590 ) sqlite3ExprIdToTrueFalse(yymsp[-4].minor.yy590); + Expr *pB = sqlite3Expr(pParse->db, TK_STRING, yymsp[-3].minor.yy502 ? "true" : "false"); + if( pB ) sqlite3ExprIdToTrueFalse(pB); + if( !ExprHasProperty(yymsp[-4].minor.yy590, EP_HasFunc) ){ + sqlite3ExprUnmapAndDelete(pParse, yymsp[-4].minor.yy590); + yymsp[-4].minor.yy590 = pB; + }else{ + yymsp[-4].minor.yy590 = sqlite3PExpr(pParse, yymsp[-3].minor.yy502 ? TK_OR : TK_AND, pB, yymsp[-4].minor.yy590); + } }else{ Expr *pRHS = yymsp[-1].minor.yy402->a[0].pExpr; if( yymsp[-1].minor.yy402->nExpr==1 && sqlite3ExprIsConstant(pParse,pRHS) && yymsp[-4].minor.yy590->op!=TK_VECTOR ){ @@ -181508,7 +181549,7 @@ static int getToken(const unsigned char **pz){ int t; /* Token type to return */ do { z += sqlite3GetToken(z, &t); - }while( t==TK_SPACE ); + }while( t==TK_SPACE || t==TK_COMMENT ); if( t==TK_ID || t==TK_STRING || t==TK_JOIN_KW @@ -246163,9 +246204,9 @@ static void fts5SegIterSetNext(Fts5Index *p, Fts5SegIter *pIter){ ** leave an error in the Fts5Index object. */ static void fts5SegIterAllocTombstone(Fts5Index *p, Fts5SegIter *pIter){ - const int nTomb = pIter->pSeg->nPgTombstone; + const i64 nTomb = (i64)pIter->pSeg->nPgTombstone; if( nTomb>0 ){ - int nByte = SZ_FTS5TOMBSTONEARRAY(nTomb+1); + i64 nByte = SZ_FTS5TOMBSTONEARRAY(nTomb+1); Fts5TombstoneArray *pNew; pNew = (Fts5TombstoneArray*)sqlite3Fts5MallocZero(&p->rc, nByte); if( pNew ){ @@ -257266,7 +257307,7 @@ static void fts5SourceIdFunc( ){ assert( nArg==0 ); UNUSED_PARAM2(nArg, apUnused); - sqlite3_result_text(pCtx, "fts5: 2025-06-28 14:00:48 2af157d77fb1304a74176eaee7fbc7c7e932d946bf25325e9c26c91db19e3079", -1, SQLITE_TRANSIENT); + sqlite3_result_text(pCtx, "fts5: 2025-07-30 19:33:53 4d8adfb30e03f9cf27f800a2c1ba3c48fb4ca1b08b0f5ed59a4d5ecbf45e20a3", -1, SQLITE_TRANSIENT); } /* diff --git a/contrib/sqlite3/sqlite3.h b/contrib/sqlite3/sqlite3.h index f56dd8d86a2d..c2ed750305b2 100644 --- a/contrib/sqlite3/sqlite3.h +++ b/contrib/sqlite3/sqlite3.h @@ -146,9 +146,9 @@ extern "C" { ** [sqlite3_libversion_number()], [sqlite3_sourceid()], ** [sqlite_version()] and [sqlite_source_id()]. */ -#define SQLITE_VERSION "3.50.2" -#define SQLITE_VERSION_NUMBER 3050002 -#define SQLITE_SOURCE_ID "2025-06-28 14:00:48 2af157d77fb1304a74176eaee7fbc7c7e932d946bf25325e9c26c91db19e3079" +#define SQLITE_VERSION "3.50.4" +#define SQLITE_VERSION_NUMBER 3050004 +#define SQLITE_SOURCE_ID "2025-07-30 19:33:53 4d8adfb30e03f9cf27f800a2c1ba3c48fb4ca1b08b0f5ed59a4d5ecbf45e20a3" /* ** CAPI3REF: Run-Time Library Version Numbers @@ -9058,13 +9058,13 @@ SQLITE_API int sqlite3_stmt_status(sqlite3_stmt*, int op,int resetFlg); ** [[SQLITE_STMTSTATUS_SORT]]
SQLITE_STMTSTATUS_SORT
**
^This is the number of sort operations that have occurred. ** A non-zero value in this counter may indicate an opportunity to -** improvement performance through careful use of indices.
+** improve performance through careful use of indices. ** ** [[SQLITE_STMTSTATUS_AUTOINDEX]]
SQLITE_STMTSTATUS_AUTOINDEX
**
^This is the number of rows inserted into transient indices that ** were created automatically in order to help joins run faster. ** A non-zero value in this counter may indicate an opportunity to -** improvement performance by adding permanent indices that do not +** improve performance by adding permanent indices that do not ** need to be reinitialized each time the statement is run.
** ** [[SQLITE_STMTSTATUS_VM_STEP]]
SQLITE_STMTSTATUS_VM_STEP
@@ -9073,19 +9073,19 @@ SQLITE_API int sqlite3_stmt_status(sqlite3_stmt*, int op,int resetFlg); ** to 2147483647. The number of virtual machine operations can be ** used as a proxy for the total work done by the prepared statement. ** If the number of virtual machine operations exceeds 2147483647 -** then the value returned by this statement status code is undefined. +** then the value returned by this statement status code is undefined. ** ** [[SQLITE_STMTSTATUS_REPREPARE]]
SQLITE_STMTSTATUS_REPREPARE
**
^This is the number of times that the prepare statement has been ** automatically regenerated due to schema changes or changes to -** [bound parameters] that might affect the query plan. +** [bound parameters] that might affect the query plan.
** ** [[SQLITE_STMTSTATUS_RUN]]
SQLITE_STMTSTATUS_RUN
**
^This is the number of times that the prepared statement has ** been run. A single "run" for the purposes of this counter is one ** or more calls to [sqlite3_step()] followed by a call to [sqlite3_reset()]. ** The counter is incremented on the first [sqlite3_step()] call of each -** cycle. +** cycle.
** ** [[SQLITE_STMTSTATUS_FILTER_MISS]] ** [[SQLITE_STMTSTATUS_FILTER HIT]] @@ -9095,7 +9095,7 @@ SQLITE_API int sqlite3_stmt_status(sqlite3_stmt*, int op,int resetFlg); ** step was bypassed because a Bloom filter returned not-found. The ** corresponding SQLITE_STMTSTATUS_FILTER_MISS value is the number of ** times that the Bloom filter returned a find, and thus the join step -** had to be processed as normal. +** had to be processed as normal. ** ** [[SQLITE_STMTSTATUS_MEMUSED]]
SQLITE_STMTSTATUS_MEMUSED
**
^This is the approximate number of bytes of heap memory @@ -9200,9 +9200,9 @@ struct sqlite3_pcache_page { ** SQLite will typically create one cache instance for each open database file, ** though this is not guaranteed. ^The ** first parameter, szPage, is the size in bytes of the pages that must -** be allocated by the cache. ^szPage will always a power of two. ^The +** be allocated by the cache. ^szPage will always be a power of two. ^The ** second parameter szExtra is a number of bytes of extra storage -** associated with each page cache entry. ^The szExtra parameter will +** associated with each page cache entry. ^The szExtra parameter will be ** a number less than 250. SQLite will use the ** extra szExtra bytes on each page to store metadata about the underlying ** database page on disk. The value passed into szExtra depends @@ -9210,17 +9210,17 @@ struct sqlite3_pcache_page { ** ^The third argument to xCreate(), bPurgeable, is true if the cache being ** created will be used to cache database pages of a file stored on disk, or ** false if it is used for an in-memory database. The cache implementation -** does not have to do anything special based with the value of bPurgeable; +** does not have to do anything special based upon the value of bPurgeable; ** it is purely advisory. ^On a cache where bPurgeable is false, SQLite will ** never invoke xUnpin() except to deliberately delete a page. ** ^In other words, calls to xUnpin() on a cache with bPurgeable set to ** false will always have the "discard" flag set to true. -** ^Hence, a cache created with bPurgeable false will +** ^Hence, a cache created with bPurgeable set to false will ** never contain any unpinned pages. ** ** [[the xCachesize() page cache method]] ** ^(The xCachesize() method may be called at any time by SQLite to set the -** suggested maximum cache-size (number of pages stored by) the cache +** suggested maximum cache-size (number of pages stored) for the cache ** instance passed as the first argument. This is the value configured using ** the SQLite "[PRAGMA cache_size]" command.)^ As with the bPurgeable ** parameter, the implementation is not required to do anything with this @@ -9247,12 +9247,12 @@ struct sqlite3_pcache_page { ** implementation must return a pointer to the page buffer with its content ** intact. If the requested page is not already in the cache, then the ** cache implementation should use the value of the createFlag -** parameter to help it determined what action to take: +** parameter to help it determine what action to take: ** ** **
createFlag Behavior when page is not already in cache **
0 Do not allocate a new page. Return NULL. -**
1 Allocate a new page if it easy and convenient to do so. +**
1 Allocate a new page if it is easy and convenient to do so. ** Otherwise return NULL. **
2 Make every effort to allocate a new page. Only return ** NULL if allocating a new page is effectively impossible. @@ -9269,7 +9269,7 @@ struct sqlite3_pcache_page { ** as its second argument. If the third parameter, discard, is non-zero, ** then the page must be evicted from the cache. ** ^If the discard parameter is -** zero, then the page may be discarded or retained at the discretion of +** zero, then the page may be discarded or retained at the discretion of the ** page cache implementation. ^The page cache implementation ** may choose to evict unpinned pages at any time. ** @@ -9287,7 +9287,7 @@ struct sqlite3_pcache_page { ** When SQLite calls the xTruncate() method, the cache must discard all ** existing cache entries with page numbers (keys) greater than or equal ** to the value of the iLimit parameter passed to xTruncate(). If any -** of these pages are pinned, they are implicitly unpinned, meaning that +** of these pages are pinned, they become implicitly unpinned, meaning that ** they can be safely discarded. ** ** [[the xDestroy() page cache method]] @@ -9586,7 +9586,7 @@ SQLITE_API int sqlite3_backup_pagecount(sqlite3_backup *p); ** application receives an SQLITE_LOCKED error, it may call the ** sqlite3_unlock_notify() method with the blocked connection handle as ** the first argument to register for a callback that will be invoked -** when the blocking connections current transaction is concluded. ^The +** when the blocking connection's current transaction is concluded. ^The ** callback is invoked from within the [sqlite3_step] or [sqlite3_close] ** call that concludes the blocking connection's transaction. ** @@ -9606,7 +9606,7 @@ SQLITE_API int sqlite3_backup_pagecount(sqlite3_backup *p); ** blocked connection already has a registered unlock-notify callback, ** then the new callback replaces the old.)^ ^If sqlite3_unlock_notify() is ** called with a NULL pointer as its second argument, then any existing -** unlock-notify callback is canceled. ^The blocked connections +** unlock-notify callback is canceled. ^The blocked connection's ** unlock-notify callback may also be canceled by closing the blocked ** connection using [sqlite3_close()]. ** @@ -10004,7 +10004,7 @@ SQLITE_API int sqlite3_vtab_config(sqlite3*, int op, ...); ** support constraints. In this configuration (which is the default) if ** a call to the [xUpdate] method returns [SQLITE_CONSTRAINT], then the entire ** statement is rolled back as if [ON CONFLICT | OR ABORT] had been -** specified as part of the users SQL statement, regardless of the actual +** specified as part of the user's SQL statement, regardless of the actual ** ON CONFLICT mode specified. ** ** If X is non-zero, then the virtual table implementation guarantees @@ -10038,7 +10038,7 @@ SQLITE_API int sqlite3_vtab_config(sqlite3*, int op, ...); ** [[SQLITE_VTAB_INNOCUOUS]]
SQLITE_VTAB_INNOCUOUS
**
Calls of the form ** [sqlite3_vtab_config](db,SQLITE_VTAB_INNOCUOUS) from within the -** the [xConnect] or [xCreate] methods of a [virtual table] implementation +** [xConnect] or [xCreate] methods of a [virtual table] implementation ** identify that virtual table as being safe to use from within triggers ** and views. Conceptually, the SQLITE_VTAB_INNOCUOUS tag means that the ** virtual table can do no serious harm even if it is controlled by a @@ -10206,7 +10206,7 @@ SQLITE_API const char *sqlite3_vtab_collation(sqlite3_index_info*,int); **
** ** ^For the purposes of comparing virtual table output values to see if the -** values are same value for sorting purposes, two NULL values are considered +** values are the same value for sorting purposes, two NULL values are considered ** to be the same. In other words, the comparison operator is "IS" ** (or "IS NOT DISTINCT FROM") and not "==". ** @@ -10216,7 +10216,7 @@ SQLITE_API const char *sqlite3_vtab_collation(sqlite3_index_info*,int); ** ** ^A virtual table implementation is always free to return rows in any order ** it wants, as long as the "orderByConsumed" flag is not set. ^When the -** the "orderByConsumed" flag is unset, the query planner will add extra +** "orderByConsumed" flag is unset, the query planner will add extra ** [bytecode] to ensure that the final results returned by the SQL query are ** ordered correctly. The use of the "orderByConsumed" flag and the ** sqlite3_vtab_distinct() interface is merely an optimization. ^Careful @@ -10313,7 +10313,7 @@ SQLITE_API int sqlite3_vtab_in(sqlite3_index_info*, int iCons, int bHandle); ** sqlite3_vtab_in_next(X,P) should be one of the parameters to the ** xFilter method which invokes these routines, and specifically ** a parameter that was previously selected for all-at-once IN constraint -** processing use the [sqlite3_vtab_in()] interface in the +** processing using the [sqlite3_vtab_in()] interface in the ** [xBestIndex|xBestIndex method]. ^(If the X parameter is not ** an xFilter argument that was selected for all-at-once IN constraint ** processing, then these routines return [SQLITE_ERROR].)^ @@ -10368,7 +10368,7 @@ SQLITE_API int sqlite3_vtab_in_next(sqlite3_value *pVal, sqlite3_value **ppOut); ** and only if *V is set to a value. ^The sqlite3_vtab_rhs_value(P,J,V) ** inteface returns SQLITE_NOTFOUND if the right-hand side of the J-th ** constraint is not available. ^The sqlite3_vtab_rhs_value() interface -** can return an result code other than SQLITE_OK or SQLITE_NOTFOUND if +** can return a result code other than SQLITE_OK or SQLITE_NOTFOUND if ** something goes wrong. ** ** The sqlite3_vtab_rhs_value() interface is usually only successful if @@ -10396,8 +10396,8 @@ SQLITE_API int sqlite3_vtab_rhs_value(sqlite3_index_info*, int, sqlite3_value ** ** KEYWORDS: {conflict resolution mode} ** ** These constants are returned by [sqlite3_vtab_on_conflict()] to -** inform a [virtual table] implementation what the [ON CONFLICT] mode -** is for the SQL statement being evaluated. +** inform a [virtual table] implementation of the [ON CONFLICT] mode +** for the SQL statement being evaluated. ** ** Note that the [SQLITE_IGNORE] constant is also used as a potential ** return value from the [sqlite3_set_authorizer()] callback and that @@ -10437,39 +10437,39 @@ SQLITE_API int sqlite3_vtab_rhs_value(sqlite3_index_info*, int, sqlite3_value ** ** [[SQLITE_SCANSTAT_EST]]
SQLITE_SCANSTAT_EST
**
^The "double" variable pointed to by the V parameter will be set to the ** query planner's estimate for the average number of rows output from each -** iteration of the X-th loop. If the query planner's estimates was accurate, +** iteration of the X-th loop. If the query planner's estimate was accurate, ** then this value will approximate the quotient NVISIT/NLOOP and the ** product of this value for all prior loops with the same SELECTID will -** be the NLOOP value for the current loop. +** be the NLOOP value for the current loop.
** ** [[SQLITE_SCANSTAT_NAME]]
SQLITE_SCANSTAT_NAME
**
^The "const char *" variable pointed to by the V parameter will be set ** to a zero-terminated UTF-8 string containing the name of the index or table -** used for the X-th loop. +** used for the X-th loop.
** ** [[SQLITE_SCANSTAT_EXPLAIN]]
SQLITE_SCANSTAT_EXPLAIN
**
^The "const char *" variable pointed to by the V parameter will be set ** to a zero-terminated UTF-8 string containing the [EXPLAIN QUERY PLAN] -** description for the X-th loop. +** description for the X-th loop.
** ** [[SQLITE_SCANSTAT_SELECTID]]
SQLITE_SCANSTAT_SELECTID
**
^The "int" variable pointed to by the V parameter will be set to the ** id for the X-th query plan element. The id value is unique within the ** statement. The select-id is the same value as is output in the first -** column of an [EXPLAIN QUERY PLAN] query. +** column of an [EXPLAIN QUERY PLAN] query.
** ** [[SQLITE_SCANSTAT_PARENTID]]
SQLITE_SCANSTAT_PARENTID
**
The "int" variable pointed to by the V parameter will be set to the -** the id of the parent of the current query element, if applicable, or +** id of the parent of the current query element, if applicable, or ** to zero if the query element has no parent. This is the same value as -** returned in the second column of an [EXPLAIN QUERY PLAN] query. +** returned in the second column of an [EXPLAIN QUERY PLAN] query.
** ** [[SQLITE_SCANSTAT_NCYCLE]]
SQLITE_SCANSTAT_NCYCLE
**
The sqlite3_int64 output value is set to the number of cycles, ** according to the processor time-stamp counter, that elapsed while the ** query element was being processed. This value is not available for ** all query elements - if it is unavailable the output variable is -** set to -1. +** set to -1.
** */ #define SQLITE_SCANSTAT_NLOOP 0 @@ -10510,8 +10510,8 @@ SQLITE_API int sqlite3_vtab_rhs_value(sqlite3_index_info*, int, sqlite3_value ** ** sqlite3_stmt_scanstatus_v2() with a zeroed flags parameter. ** ** Parameter "idx" identifies the specific query element to retrieve statistics -** for. Query elements are numbered starting from zero. A value of -1 may be -** to query for statistics regarding the entire query. ^If idx is out of range +** for. Query elements are numbered starting from zero. A value of -1 may +** retrieve statistics for the entire query. ^If idx is out of range ** - less than -1 or greater than or equal to the total number of query ** elements used to implement the statement - a non-zero value is returned and ** the variable that pOut points to is unchanged. @@ -10668,8 +10668,8 @@ SQLITE_API int sqlite3_db_cacheflush(sqlite3*); ** triggers; and so forth. ** ** When the [sqlite3_blob_write()] API is used to update a blob column, -** the pre-update hook is invoked with SQLITE_DELETE. This is because the -** in this case the new values are not available. In this case, when a +** the pre-update hook is invoked with SQLITE_DELETE, because +** the new values are not yet available. In this case, when a ** callback made with op==SQLITE_DELETE is actually a write using the ** sqlite3_blob_write() API, the [sqlite3_preupdate_blobwrite()] returns ** the index of the column being written. In other cases, where the @@ -10922,7 +10922,7 @@ SQLITE_API SQLITE_EXPERIMENTAL int sqlite3_snapshot_recover(sqlite3 *db, const c ** For an ordinary on-disk database file, the serialization is just a ** copy of the disk file. For an in-memory database or a "TEMP" database, ** the serialization is the same sequence of bytes which would be written -** to disk if that database where backed up to disk. +** to disk if that database were backed up to disk. ** ** The usual case is that sqlite3_serialize() copies the serialization of ** the database into memory obtained from [sqlite3_malloc64()] and returns @@ -10931,7 +10931,7 @@ SQLITE_API SQLITE_EXPERIMENTAL int sqlite3_snapshot_recover(sqlite3 *db, const c ** contains the SQLITE_SERIALIZE_NOCOPY bit, then no memory allocations ** are made, and the sqlite3_serialize() function will return a pointer ** to the contiguous memory representation of the database that SQLite -** is currently using for that database, or NULL if the no such contiguous +** is currently using for that database, or NULL if no such contiguous ** memory representation of the database exists. A contiguous memory ** representation of the database will usually only exist if there has ** been a prior call to [sqlite3_deserialize(D,S,...)] with the same @@ -11002,7 +11002,7 @@ SQLITE_API unsigned char *sqlite3_serialize( ** database is currently in a read transaction or is involved in a backup ** operation. ** -** It is not possible to deserialized into the TEMP database. If the +** It is not possible to deserialize into the TEMP database. If the ** S argument to sqlite3_deserialize(D,S,P,N,M,F) is "temp" then the ** function returns SQLITE_ERROR. ** @@ -11024,7 +11024,7 @@ SQLITE_API int sqlite3_deserialize( sqlite3 *db, /* The database connection */ const char *zSchema, /* Which DB to reopen with the deserialization */ unsigned char *pData, /* The serialized database content */ - sqlite3_int64 szDb, /* Number bytes in the deserialization */ + sqlite3_int64 szDb, /* Number of bytes in the deserialization */ sqlite3_int64 szBuf, /* Total size of buffer pData[] */ unsigned mFlags /* Zero or more SQLITE_DESERIALIZE_* flags */ ); @@ -11032,7 +11032,7 @@ SQLITE_API int sqlite3_deserialize( /* ** CAPI3REF: Flags for sqlite3_deserialize() ** -** The following are allowed values for 6th argument (the F argument) to +** The following are allowed values for the 6th argument (the F argument) to ** the [sqlite3_deserialize(D,S,P,N,M,F)] interface. ** ** The SQLITE_DESERIALIZE_FREEONCLOSE means that the database serialization diff --git a/contrib/sqlite3/sqlite3.pc.in b/contrib/sqlite3/sqlite3.pc.in index a9f941b1e40d..723dd5156390 100644 --- a/contrib/sqlite3/sqlite3.pc.in +++ b/contrib/sqlite3/sqlite3.pc.in @@ -9,5 +9,5 @@ Name: SQLite Description: SQL database engine Version: @PACKAGE_VERSION@ Libs: -L${libdir} -lsqlite3 -Libs.private: @LDFLAGS_MATH@ @LDFLAGS_ZLIB@ @LDFLAGS_ICU@ +Libs.private: @LDFLAGS_MATH@ @LDFLAGS_ZLIB@ @LDFLAGS_DLOPEN@ @LDFLAGS_PTHREAD@ @LDFLAGS_ICU@ Cflags: -I${includedir} diff --git a/contrib/sqlite3/sqlite3rc.h b/contrib/sqlite3/sqlite3rc.h index d412190d370b..42ece488e353 100644 --- a/contrib/sqlite3/sqlite3rc.h +++ b/contrib/sqlite3/sqlite3rc.h @@ -1,3 +1,3 @@ #ifndef SQLITE_RESOURCE_VERSION -#define SQLITE_RESOURCE_VERSION 3,50,2 +#define SQLITE_RESOURCE_VERSION 3,50,4 *** 1 LINES SKIPPED *** From nobody Tue Dec 2 16:01:35 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLQW32MGrz6Hh9D for ; Tue, 02 Dec 2025 16:01:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLQW31L5Kz4Plf for ; Tue, 02 Dec 2025 16:01:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764691295; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yLDNtRd+VnlDM5wC0AOz/fV2GBYLY2v3eAoHJv12HI8=; b=qbZMtfAWBGEhFud6cR2dfPPTnJsC+BMhcEIp4sZAVPKc/FgGJVxDilecHrKWlBFFf0+5aO DwkeGbPteQSkOmSrZKmFVvRMCHoN6ueu4dWiMMldDVOu3lEw07iHBmD6gh1hV1ArmXK4YE DNlmLaGZUtf7scA232eZ7dF+sVRwohSFEW7kWQ17ZzeWIFZOJ6dlJSKgqdecbynQNsPnCH AKpXE497Iq9yWlqbFTMwLQHTBuQDEi1qUpDGU/PAlIAaX40sdr4x9fASX4vk15PMFsdWWl YJPWhTK/Hg1rcp4z6dGY/2foVwhQAJcgVqjWmYXP0T5PRZcMc/jyYtqHAbCUKw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764691295; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yLDNtRd+VnlDM5wC0AOz/fV2GBYLY2v3eAoHJv12HI8=; b=nrrZMq40fSUuxhno7IW4pS5KjNDjQQzy+55zwTaP7OIHJ5eS0M3k6OHnRXn1oBWVC35lLa 5jmZ0IPYkIpageOMpqgorfyv8ZsTONMGMfmEVo8Dkz0vUIet8vlKnBufT2PgVuaeA3A08a jhNSaj2vGbkTA4GZj1JK1KsX3rW+X2PRYrmO1Dg0FmHUXUJ3lR7EoxpeoYIz3Qb9C0TrOv BN31MF5Ekt/57L5gHq8sFbmrraKbLgWgF2A2KlVT5dkSI0Dw+yUeJe0COKmhUMMhoiw+7H +se74LUqrkuan3H7brO5u8BZPuCUW8ty0n2mNruUnHOwTt0bJ1CPv0pCS32diA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764691295; a=rsa-sha256; cv=none; b=neVl3sBybOypApZh2GXv78uekMbxMm3rwCiZNDpy0iCTxg8AZhKLDpICH272lepM2Noga0 F3ak9rX/JAroPeEsj1XUPQLAMGJuoWlDmV9+ELvawo3sHjHKfeGXUwZi8arEg0TBrpCUMZ pZ451Hyki+CxQ9ZulAcqcSzJyyTVEQblblyyD4suCsmMrl2gcXpuID3QdK5Fy6uBBQlNs0 QJgzQRWBuVkrB9xNHHmh59oOX3ZpklLpeMU2FMUr53O/MF/9fZJg5x3Z1La03zawYhp2X2 Cey+ulKyZyXBsUyW0bT3VVKvy97r488dqfZTNBVCf+jY2DBZl9Ig3WqBZLXM0g== 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 4dLQW30rpdz1CmR for ; Tue, 02 Dec 2025 16:01:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3878d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 16:01:35 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 44d6df4f65b1 - main - nvme: Use memcpy instead of memmove in nvme_cdata_get_disk_ident List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 44d6df4f65b1441cf9cd9f12cd41edd52205d084 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 16:01:35 +0000 Message-Id: <692f0d5f.3878d.278c8a27@gitrepo.freebsd.org> The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=44d6df4f65b1441cf9cd9f12cd41edd52205d084 commit 44d6df4f65b1441cf9cd9f12cd41edd52205d084 Author: John Baldwin AuthorDate: 2025-12-02 15:57:08 +0000 Commit: John Baldwin CommitDate: 2025-12-02 15:57:08 +0000 nvme: Use memcpy instead of memmove in nvme_cdata_get_disk_ident These buffers should not overlap. Reviewed by: imp Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D53842 --- sys/dev/nvme/nvme.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/nvme/nvme.h b/sys/dev/nvme/nvme.h index b696cc6aa697..b09fa44b0329 100644 --- a/sys/dev/nvme/nvme.h +++ b/sys/dev/nvme/nvme.h @@ -2005,7 +2005,7 @@ nvme_cdata_get_disk_ident(const struct nvme_controller_data *cdata, uint8_t *sn) _Static_assert(NVME_SERIAL_NUMBER_LENGTH < DISK_IDENT_SIZE, "NVME serial number too big for disk ident"); - memmove(sn, cdata->sn, NVME_SERIAL_NUMBER_LENGTH); + memcpy(sn, cdata->sn, NVME_SERIAL_NUMBER_LENGTH); sn[NVME_SERIAL_NUMBER_LENGTH] = '\0'; for (int i = 0; sn[i] != '\0'; i++) { if (sn[i] < 0x20 || sn[i] >= 0x80) From nobody Tue Dec 2 16:38:17 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLRKQ6BVvz6HkZB; Tue, 02 Dec 2025 16:38:18 +0000 (UTC) (envelope-from des@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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLRKQ58kSz3JQZ; Tue, 02 Dec 2025 16:38:18 +0000 (UTC) (envelope-from des@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764693498; 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=1/U5N+E8+ZkLiqmIl8pO+5zYtAaMXfYh1l6uVT9T7eY=; b=NrMcvXFYWozJwxmymdlxtTSHVcBaRAaxhUZrlwKVR2rJ8kQwprKAzZz5sAJi+65dIYcMIS dXFLPwTjyw5xtJqWHjydx8uOE/MDRGtnm9CAFYkOEn5IpYnqeCUAbGMoPMQZeAxV31cWrC kaqLBFeDK6u7LjR9m1YEcQC7Behxnn4Pk3Lej0rxZqjvemmKZhfSjkeKAsWjYGc+khXYpK knWTQs4tNS+aBjF3WpNzhiDUclPyabgiJKsWAMLSVe/JAr4zJcZlMjYWrGaAL8G8TiQ+vW O3nzxlZFVEOOEcg1pz/bu3jOTLdvWTH2WTX0HFy9Xoeu20c5zIb5gqb8XKLgWw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764693498; 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=1/U5N+E8+ZkLiqmIl8pO+5zYtAaMXfYh1l6uVT9T7eY=; b=CcFquLV+OL/ReXasGjhpOxXMwK8TeesgvJEgBz36Sj06pEmUCA5FZ04F7A/TWq0YzFaTGb e3nYScrslQBva7rtb9bu3NkgHwho8M27cd0bT7zYv9QL9XdYH+51z8zrzanQKp72c7OjJc 3FG1YmKNhMqt0TfW4hfb8e45yx1FnsU7mJyBH0kWKgG1/LDPS3/sO9huSmmRtjYBGrgOC0 TwWRq2YUAF6FYyOsmMFNe6dar9FUyFS2bch7ORI5cn+WNKjG3kTqOVUNR2hbPxRpm3VZX7 c1BfGUsWAT5ktfs7iGoiNm+6UnbRgneURMZAsvg3xTnbzO4NTMjFXuIdvKzNGA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764693498; a=rsa-sha256; cv=none; b=mo3wIM6raexffPsVEl9u1L0jJi1m6DVzYWJfaDUoXDUcos9b1O32Vq8KQZ88zTkwLR8X4L vzpzTcOttu9TzIYqVhRA9D/iwvXNetVlvdy3zFbVzkvK7oLpTlHQDQ7kpCYyFoBqrnIgn2 +6YnjlzUlLTFw8NDTdp3hYBx3YcagW4PW9bPszceifkohg0T9XSwY0oSVpE2wdmt3oxPLO reShi3X6G0h3fHQtRVVKANFf/yuQw9d7zMgC1Vcl4IVqvarlYAcSoboGwx9QkPjS3u213y iJxz9ag72xRcBx8PCDd7NTZquEgccr/+UuBGrEA3Kvq1AF8XQknE374yDQhx0g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from ltc.des.dev (2a01cb0585090500922e16fffef1acef.ipv6.abo.wanadoo.fr [IPv6:2a01:cb05:8509:500:922e:16ff:fef1:acef]) (using TLSv1.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) (Authenticated sender: des) by smtp.freebsd.org (Postfix) with ESMTPSA id 4dLRKQ3plxzwZK; Tue, 02 Dec 2025 16:38:18 +0000 (UTC) (envelope-from des@freebsd.org) Received: by ltc.des.dev (Postfix, from userid 1001) id 3B3998F22C; Tue, 02 Dec 2025 17:38:17 +0100 (CET) From: =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= To: Robert Clausecker Cc: Jessica Clarke , Kristof Provost , Robert Clausecker , "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Subject: Re: git: 2fb8cbc6ef1b - main - libc/tests: add stdbit test framework and unit tests In-Reply-To: (Robert Clausecker's message of "Mon, 1 Dec 2025 16:31:19 +0100") References: <692c9966.26e27.70621b5b@gitrepo.freebsd.org> <3E139664-C0CE-4BB9-9225-66D7D44D644E@FreeBSD.org> <6903AA87-20BC-4060-A199-4100FC7CD8EB@freebsd.org> User-Agent: Gnus/5.13 (Gnus v5.13) Date: Tue, 02 Dec 2025 17:38:17 +0100 Message-ID: <86ecpchm9y.fsf@ltc.des.dev> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Robert Clausecker writes: > I ran "make check" in lib/libc/tests/stdbit and it seems to have passed. > I was not aware that this is insufficient. I will develop a fix and add = it. > A guide on how to add a new directory to the test suite would also be nic= e. This is , feel free to comment if you have any suggestions, I'll try to get around to it this weekend. DES --=20 Dag-Erling Sm=C3=B8rgrav - des@FreeBSD.org From nobody Tue Dec 2 18:46:58 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLV9t5t6Wz6HxBM for ; Tue, 02 Dec 2025 18:46: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLV9t3Pjyz3jd3 for ; Tue, 02 Dec 2025 18:46:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764701218; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JF1tC5d5wzNPo2SrDSQXjNlKqH8WSaRvNXMjs5Xx65o=; b=guFr7A0i7hoUwKFjD2Cp5AEUV0B1B+E2SCWqzsn+yobplwLOE+Hgy2LtPlF2FfHwktvhbS 7T1r5+Shls3Te3rTfemCJZeVZBCi6SmzvfT9hPFHbwSNHCa3vplHBFoVZZfppN4y6P6sKe uC+QS4i4zLGw4a3dOp+oEJJ2f8uN33lhYWKukw48dmsya4LWURjIiBkA47kvDx22j/vhK0 EvK7N5k2hEG234c9xFE+FtJhy0bOPgGVkU3Rn2vZG/7jhXG7GJ7pUpc4OqpFXG+kn+6Vg6 mEJDnhJRe0SRQhx6UNflITfWeuDOxKSvqI0DqGrn2i3H0+zVUoS094VUTwnjMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764701218; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JF1tC5d5wzNPo2SrDSQXjNlKqH8WSaRvNXMjs5Xx65o=; b=nc1HiUm/s/pDUkRyriP+ovaLP/dqLn0Ff/r+yF8Ycu9VPj3tP5xs+5YtOnUla5+iM5VIsP gYmyVYeOdyQ6XpdXDEUKBdbyjsYDOW6muGg5H2kJ6bNGQ9YhNbqnCzKzG6CRjysIhL3Fov ilQxpBEzK6PJQO+dbqUzhMZe25IMPK72+7TBy6X1HcfmWSWbQH8H+I5XR5bKSerALt7mPK nDsBzD89CcRLIRmSIBLcO70cw6+aXQMogbRarsGtkxbg+/Rxr/nEmVwDgJcd/kYB20jEeV BNof9OtCHsUuXzU0Od7sOsMY/Jp9DDxuENQwzMJmXiR2tMY0U1B6jCIw5OzwzQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764701218; a=rsa-sha256; cv=none; b=FkUgMAZ37mF2pqJC5SYMkhM3GGOR0kv+A2QYJE74dZaA9Hbh+k0CNcFjlTkGxpTm+jyhEm OSpMPfffOOLz3w6bJj9kXxhV9/YaTnbv41AG7hBIyCOBHm8Vna86JULO4dOr625zU5+yvr eYTnScK6mNHUSdG/Ey9Z98lk/qHUfaW/kGEQ4pk0cGhifU0lhqouudpT79/aHGI9QfOn+M iXmmt/Udlf1bFcXRetw7MyeSA31bqm54D374s0HdAxlxrnwHs4t6/DsPIIHbjLiftAYUwB PolJnYOszjpr5tuQyFxfxouakMsERRtax5IVx3AwQfoWG+EpLYYm3o5qxUQGdg== 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 4dLV9t2DGJz1HfT for ; Tue, 02 Dec 2025 18:46:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id e4b4 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 18:46:58 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: ed29ffd396e5 - main - LinuxKPI: pci: undo the pci_resource_len() check in lkpi_pci_request_region() List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: ed29ffd396e522a45ab1980c12a75b3409b51712 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 18:46:58 +0000 Message-Id: <692f3422.e4b4.3f5f2017@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=ed29ffd396e522a45ab1980c12a75b3409b51712 commit ed29ffd396e522a45ab1980c12a75b3409b51712 Author: Bjoern A. Zeeb AuthorDate: 2025-12-02 16:04:22 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-02 18:46:20 +0000 LinuxKPI: pci: undo the pci_resource_len() check in lkpi_pci_request_region() Creating non-passthru SR-IOV interfaces on a mlx5en(4) failed. The problem lies in the pci_resource_len() call but not that the BAR length is tmeporary 0 but in that we call lkpi_pci_get_bar() with a true argument which will create the BAR resource for us and report the approriate length back. However, the later call to bus_alloc_resource_any() will then fail given the resource already exists. Restore the previous behaviour and let bus_alloc_resource_any() do the work. Adjust the return values from -ENODEV to -EBUSY to match callers expectations. In linuxkpi_pcim_request_all_regions(), like in linuxkpi_pci_request_regions(), filter out the -EBUSY errors as "not an error" and try the next bar. This also seems to be consistent with the expectations of the callers. PR: 290793 Reported by: David BOYER (jcduss13 gmail.com) Tested on: mlx5en, iwlwifi, mt7921 Reviewed by: kib Fixes: 7e21158d44cd "implement [linuxkpi_]pcim_request_all_regions()" Sponsored by: The FreeBSD Foundation MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D53902 --- sys/compat/linuxkpi/common/src/linux_pci.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_pci.c b/sys/compat/linuxkpi/common/src/linux_pci.c index 8507a59a8df3..fb3f648df496 100644 --- a/sys/compat/linuxkpi/common/src/linux_pci.c +++ b/sys/compat/linuxkpi/common/src/linux_pci.c @@ -1223,13 +1223,6 @@ lkpi_pci_request_region(struct pci_dev *pdev, int bar, const char *res_name, if (!lkpi_pci_bar_id_valid(bar)) return (-EINVAL); - /* - * If the bar is not valid, return success without adding the BAR; - * otherwise linuxkpi_pcim_request_all_regions() will error. - */ - if (pci_resource_len(pdev, bar) == 0) - return (0); - /* Likewise if it is neither IO nor MEM, nothing to do for us. */ type = pci_resource_type(pdev, bar); if (type < 0) return (0); @@ -1241,7 +1234,7 @@ lkpi_pci_request_region(struct pci_dev *pdev, int bar, const char *res_name, device_printf(pdev->dev.bsddev, "%s: failed to alloc " "bar %d type %d rid %d\n", __func__, bar, type, PCIR_BAR(bar)); - return (-ENODEV); + return (-EBUSY); } /* @@ -1285,7 +1278,7 @@ linuxkpi_pci_request_regions(struct pci_dev *pdev, const char *res_name) for (i = 0; i <= PCIR_MAX_BAR_0; i++) { error = pci_request_region(pdev, i, res_name); - if (error && error != -ENODEV) { + if (error && error != -EBUSY) { pci_release_regions(pdev); return (error); } @@ -1300,7 +1293,7 @@ linuxkpi_pcim_request_all_regions(struct pci_dev *pdev, const char *res_name) for (bar = 0; bar <= PCIR_MAX_BAR_0; bar++) { error = lkpi_pci_request_region(pdev, bar, res_name, true); - if (error != 0) { + if (error != 0 && error != -EBUSY) { device_printf(pdev->dev.bsddev, "%s: bar %d res_name '%s': " "lkpi_pci_request_region returned %d\n", __func__, bar, res_name, error); From nobody Tue Dec 2 18:46:59 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLV9v4y4Yz6HxBQ for ; Tue, 02 Dec 2025 18:46:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLV9v2wBPz3jXQ for ; Tue, 02 Dec 2025 18:46:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764701219; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JFV1xri6SXb+vg9OfKE14lxSyH4YXF4wgFzMHwxkjtc=; b=VaWr03YcM+Pk9ZfTjak1fxJ/m+axwCH0pOs3pg5j7VxwCcaZ4MB9BbB+r7WwIgBzjQtV2h 4OR/ZsSU9D/qoYgdvljnFRYJirI5tERIcHGtIo6jxvVrBNLLmwbphEFJxBHCMAvb3Zvy4j FJIlE7bUvseip1VmEoWlBvj+dBIG9aSSbdABn7DcVQsyLwgN0C3EYS0Gg7vt0ARPBl63Qo j8q0mvSHhCltCI8Wey9YqligpKuQBPvlb7hc2+PLd+UaRBxPPuUBhmXtzBxXqmlxjdX30v JQX4H6tPlmoRGF55iw3IWXCpL91m/kK6MZX1zsziiLF5WjUM1lL4ZJ3ngqiqQg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764701219; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JFV1xri6SXb+vg9OfKE14lxSyH4YXF4wgFzMHwxkjtc=; b=qKXuyANdLzyoWqzsNpBmNEIcA7CHjwelgFpZDhX3Ps+EC/xThLXzG2iY/GEHHmW2lvJm8P Zm+T28Fja7XHNqJKG8E2uhy+jQoAR1rrzpI7R8J8/UF58XEhezmL4YG6I3acOXvj5eMwqP G25GDGwQXgvEEUXXjNjGba6j22ph/WdFP5zvxcb2VZChgyl/ewwrt3b5BWdWng16DGKnHw ulFIbtENCrUFgmorNaiR/DYQuzu+nDZFEIuAj/pu/PtCjydIKVgnTqDrV4f6U4Oj3ojOzI NbgGUWCXxIP/GcbcF7kduteuw33uFadYbdnEQfkWGHItmUax9kBYiimabmyypg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764701219; a=rsa-sha256; cv=none; b=JD2ByJihrAms0/ipWo8jpUP4l+yoNWHIytpc/nljDdTZw8zsgOlVDIhpSefGPE91VCqFWO eOYB5mCnKJKxvuO8SjFHRfLmGBAJI6x+AFEjSi1LHeljlqTwIq5XGCYyI59uIIdhq2ujXW lA0datEjhJRjWTiEUrK0JEelMlHqUSzmiWmXkJ608X42RB7+OBTgs+jKNGW5XYH1XtUxOh qrTQcy6MTdlIIuQXTXPcxtr0J/YBbpHTddBjDKq5yTztpwx77jgTYPdWbHF/IndPf35NOb C1TDduH9kFAJxUxbqO8HIkmOGBUyVQhKVfF2cltRwT/6Yunz3wbiXwwFUMpxYw== 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 4dLV9v2Shdz1JM6 for ; Tue, 02 Dec 2025 18:46:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id f30b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 18:46:59 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: adb4901ac9ae - main - LinuxKPI: 802.11: when synching HT and VHT cap, mask rx_mcs List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: adb4901ac9ae6c2ceb4194d139ed3176f6ed5e55 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 18:46:59 +0000 Message-Id: <692f3423.f30b.3822fc3d@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=adb4901ac9ae6c2ceb4194d139ed3176f6ed5e55 commit adb4901ac9ae6c2ceb4194d139ed3176f6ed5e55 Author: Bjoern A. Zeeb AuthorDate: 2025-11-28 23:10:45 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-02 18:46:44 +0000 LinuxKPI: 802.11: when synching HT and VHT cap, mask rx_mcs When we sync the sta data, mask the rx_mcs with what the hardware is able to do so that we do not leave, e.g., a 2nd stream enabled on a 1x1 chipset. iwlwifi(4) has a further check for the smps_mode to limit to NSS=1 but I believe that is historic and not actually in use anymore. This fixes firmware crashes on TLC updates with nss=1 but the nss=2 array index also being populated (with HT/VHT80/160 mcs information): data being populated: iwlwifi0: 0x20101A0D | ADVANCED_SYSASSERT iwlwifi0: 0x00000006 | umac data1 iwlwifi0: 0x00000001 | umac data2 iwlwifi0: 0x000003FF | umac data3 iwlwifi0: 0x____050F | last host cmd Reported by: Claudio Zumbo (claudiozumbo gmail.com), Erik Power Tested by: Claudio Zumbo, Erik Power (eppower umich.edu) PR: 290622 MFC after: 3 days Sponsored by: The FreeBSD Foundation --- sys/compat/linuxkpi/common/src/linux_80211.c | 99 ++++++++++++++++++++-------- 1 file changed, 71 insertions(+), 28 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 8b1f5f0e0399..8098d02da1a9 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -128,11 +128,11 @@ SYSCTL_INT(_compat_linuxkpi_80211, OID_AUTO, debug, CTLFLAG_RWTUN, #define UNIMPLEMENTED if (linuxkpi_debug_80211 & D80211_TODO) \ printf("XXX-TODO %s:%d: UNIMPLEMENTED\n", __func__, __LINE__) -#define TRACEOK() if (linuxkpi_debug_80211 & D80211_TRACEOK) \ - printf("XXX-TODO %s:%d: TRACEPOINT\n", __func__, __LINE__) +#define TRACEOK(_fmt, ...) if (linuxkpi_debug_80211 & D80211_TRACEOK) \ + printf("%s:%d: TRACEPOINT " _fmt "\n", __func__, __LINE__, ##__VA_ARGS__) #else #define UNIMPLEMENTED do { } while (0) -#define TRACEOK() do { } while (0) +#define TRACEOK(...) do { } while (0) #endif /* #define PREP_TX_INFO_DURATION (IEEE80211_TRANS_WAIT * 1000) */ @@ -474,12 +474,14 @@ lkpi_sync_chanctx_cw_from_rx_bw(struct ieee80211_hw *hw, #if defined(LKPI_80211_HT) static void -lkpi_sta_sync_ht_from_ni(struct ieee80211_vif *vif, struct ieee80211_sta *sta, - struct ieee80211_node *ni) +lkpi_sta_sync_ht_from_ni(struct ieee80211_hw *hw, struct ieee80211_vif *vif, + struct ieee80211_sta *sta, struct ieee80211_node *ni) { struct ieee80211vap *vap; uint8_t *ie; struct ieee80211_ht_cap *htcap; + struct ieee80211_sta_ht_cap *ht_cap, *sta_ht_cap; + enum nl80211_band band; int i, rx_nss; if ((ni->ni_flags & IEEE80211_NODE_HT) == 0) { @@ -513,13 +515,23 @@ lkpi_sta_sync_ht_from_ni(struct ieee80211_vif *vif, struct ieee80211_sta *sta, * MCS sets from the Rx MCS Bitmask; then there is MCS 32 and * MCS33.. is UEQM. */ + band = vif->bss_conf.chanctx_conf->def.chan->band; + ht_cap = &hw->wiphy->bands[band]->ht_cap; + sta_ht_cap = &sta->deflink.ht_cap; rx_nss = 0; for (i = 0; i < 4; i++) { - if (htcap->mcs.rx_mask[i] != 0) + TRACEOK("HT rx_mask[%d] sta %#04x & hw %#04x", i, + sta_ht_cap->mcs.rx_mask[i], ht_cap->mcs.rx_mask[i]); + sta_ht_cap->mcs.rx_mask[i] = + sta_ht_cap->mcs.rx_mask[i] & ht_cap->mcs.rx_mask[i]; + /* XXX-BZ masking unequal modulation? */ + + if (sta_ht_cap->mcs.rx_mask[i] != 0) rx_nss++; } if (rx_nss > 0) { - sta->deflink.rx_nss = rx_nss; + TRACEOK("HT rx_nss = max(%d, %d)", rx_nss, sta->deflink.rx_nss); + sta->deflink.rx_nss = MAX(rx_nss, sta->deflink.rx_nss); } else { sta->deflink.ht_cap.ht_supported = false; return; @@ -548,14 +560,15 @@ lkpi_sta_sync_ht_from_ni(struct ieee80211_vif *vif, struct ieee80211_sta *sta, #if defined(LKPI_80211_VHT) static void -lkpi_sta_sync_vht_from_ni(struct ieee80211_vif *vif, struct ieee80211_sta *sta, - struct ieee80211_node *ni) +lkpi_sta_sync_vht_from_ni(struct ieee80211_hw *hw, struct ieee80211_vif *vif, + struct ieee80211_sta *sta, struct ieee80211_node *ni) { + struct ieee80211_sta_vht_cap *vht_cap, *sta_vht_cap;; enum ieee80211_sta_rx_bandwidth bw; + enum nl80211_band band; uint32_t width; int rx_nss; - uint16_t rx_mcs_map; - uint8_t mcs; + uint16_t rx_map, tx_map; if ((ni->ni_flags & IEEE80211_NODE_VHT) == 0 || !IEEE80211_IS_CHAN_VHT_5GHZ(ni->ni_chan)) { @@ -609,18 +622,49 @@ lkpi_sta_sync_vht_from_ni(struct ieee80211_vif *vif, struct ieee80211_sta *sta, sta->deflink.bandwidth = bw; skip_bw: + band = vif->bss_conf.chanctx_conf->def.chan->band; + vht_cap = &hw->wiphy->bands[band]->vht_cap; + sta_vht_cap = &sta->deflink.vht_cap; + rx_nss = 0; - rx_mcs_map = sta->deflink.vht_cap.vht_mcs.rx_mcs_map; + rx_map = tx_map = 0; for (int i = 7; i >= 0; i--) { - mcs = rx_mcs_map >> (2 * i); - mcs &= 0x3; - if (mcs != IEEE80211_VHT_MCS_NOT_SUPPORTED) { - rx_nss = i + 1; - break; + uint8_t card, sta; + + card = (vht_cap->vht_mcs.rx_mcs_map >> (2 * i)) & 0x3; + sta = (sta_vht_cap->vht_mcs.rx_mcs_map >> (2 * i)) & 0x3; + if (sta != IEEE80211_VHT_MCS_NOT_SUPPORTED) { + if (card == IEEE80211_VHT_MCS_NOT_SUPPORTED) + sta = IEEE80211_VHT_MCS_NOT_SUPPORTED; + else { + sta = MIN(sta, card); + rx_nss = i + 1; + } + } + rx_map |= (sta << (2 * i)); + + card = (vht_cap->vht_mcs.tx_mcs_map >> (2 * i)) & 0x3; + sta = (sta_vht_cap->vht_mcs.tx_mcs_map >> (2 * i)) & 0x3; + if (sta != IEEE80211_VHT_MCS_NOT_SUPPORTED) { + if (card == IEEE80211_VHT_MCS_NOT_SUPPORTED) + sta = IEEE80211_VHT_MCS_NOT_SUPPORTED; + else + sta = MIN(sta, card); } + tx_map |= (sta << (2 * i)); + } + TRACEOK("VHT rx_mcs_map %#010x->%#010x, tx_mcs_map %#010x->%#010x, rx_nss = %d", + sta_vht_cap->vht_mcs.rx_mcs_map, rx_map, + sta_vht_cap->vht_mcs.tx_mcs_map, tx_map, rx_nss); + sta_vht_cap->vht_mcs.rx_mcs_map = rx_map; + sta_vht_cap->vht_mcs.tx_mcs_map = tx_map; + if (rx_nss > 0) { + TRACEOK("VHT rx_nss = max(%d, %d)", rx_nss, sta->deflink.rx_nss); + sta->deflink.rx_nss = MAX(rx_nss, sta->deflink.rx_nss); + } else { + sta->deflink.vht_cap.vht_supported = false; + return; } - if (rx_nss > 0) - sta->deflink.rx_nss = rx_nss; switch (sta->deflink.vht_cap.cap & IEEE80211_VHT_CAP_MAX_MPDU_MASK) { case IEEE80211_VHT_CAP_MAX_MPDU_LENGTH_11454: @@ -642,18 +686,18 @@ lkpi_sta_sync_from_ni(struct ieee80211_hw *hw, struct ieee80211_vif *vif, struct ieee80211_sta *sta, struct ieee80211_node *ni, bool updchnctx) { -#if defined(LKPI_80211_HT) - lkpi_sta_sync_ht_from_ni(vif, sta, ni); -#endif -#if defined(LKPI_80211_VHT) - lkpi_sta_sync_vht_from_ni(vif, sta, ni); -#endif - /* * Ensure rx_nss is at least 1 as otherwise drivers run into * unexpected problems. */ - sta->deflink.rx_nss = MAX(1, sta->deflink.rx_nss); + sta->deflink.rx_nss = 1; + +#if defined(LKPI_80211_HT) + lkpi_sta_sync_ht_from_ni(hw, vif, sta, ni); +#endif +#if defined(LKPI_80211_VHT) + lkpi_sta_sync_vht_from_ni(hw, vif, sta, ni); +#endif /* * We are also called from node allocation which net80211 @@ -6237,7 +6281,6 @@ lkpi_ic_getradiocaps_ht(struct ieee80211com *ic, struct ieee80211_hw *hw, #endif IMPROVE("PS, ampdu_*, ht_cap.mcs.tx_params, ..."); - ic->ic_htcaps |= IEEE80211_HTCAP_SMPS_OFF; /* Only add HT40 channels if supported. */ if ((ic->ic_htcaps & IEEE80211_HTCAP_CHWIDTH40) != 0 && From nobody Tue Dec 2 19:47:08 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLWWL1D2Nz6J38v for ; Tue, 02 Dec 2025 19:47: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLWWJ54cSz3tF6 for ; Tue, 02 Dec 2025 19:47:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764704829; 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=3SwNpi19kLRf9NoAbmRYaGPOM8iYWPvcCPRioeAZA9c=; b=vFSyQH3aAnltP1JuNKN9AbrzANsEgposaw2Ynm5fVL+pyC4inNHbOVwMSHQ0fyPutgRBeA FQQQjM5wp2j+YwM6uRKbyGsGQUiLtzsL5ZhlqSq8R3ET3ImwP/34ZBTq0QU5LJPHLlQL5u KZSddB/A6AfstpXvxdcxyrDzNCoe9gEAXRZmavt+HxcLudur4CkGjloKuyvhRuG4wFXVVD YLOeWlxkE9iq3kSIqgQVgjiByRbNzs/PG7L46u6cGRrOpUuyJaEUML+y0FuOovqIeukixs W7B/8u3GWNu5tjN0/1+Cu0T1pRI15NvF8oswkkkSL7x6cZSHetRKiR99piX2XQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764704829; 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=3SwNpi19kLRf9NoAbmRYaGPOM8iYWPvcCPRioeAZA9c=; b=h2OwdSfKV5vESEB1bqm3dCyRlpUDE9MfVgWXhdwlAQjvLWxJhtDwTJX1+E9TwefAmBx4r2 eKgBfdNAjinN1pSNP563L+FJIwx1cZf9jwAD6GNRN/3qyQrK0hzO+GjhNfXR1B/wtvV0S5 LhA4KKWK3P7CQQV0z2qmK84E7G0FyPoMM7liMreUPf4nOA08qdJExpHSRznWAeA2sasqF8 +qmUlDkaPAX4Fpd12UuuECIuXhBDV5MVxh/AErtB9Nin6mfL01Y6KIVPBYeozx4NaPRujh FQ71IqUakq957uokHfSxYsiZhA8jSM5fvYf2mkAryC+EAmFiwkCNGu6IiT7wLQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764704829; a=rsa-sha256; cv=none; b=tXAqwLkXCE8HAhQ5814HyyuzsE3Uj0qJEanYeu9pQ3Jk3Mlmb4R5O8PwV4C0JK3hx2eFQH YyIcpskVzbwKRv8H2El4NzXEMLpAFc6y021nF1wj5O+vycs53CqeP3gCWwrfDIf1I4WhpU UeKBsETj3ulQYF8FqTRBEba+dGaJnnZVh+0zAlDDgefnPWKawC+lu6lkoObMjVA7iN71nB +juzreL/coA49A3RkhYMIPVwrb/DE5E+sQPelWkD1JUjCRaI7F8UkZtXnoOoLrnzRYUCAz mxZh7TLVd7Q3dCp0+yOZADwWDLY4Yb6zONES0OJdMVDf8a6xlmaCI7tc+6LWXA== 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 4dLWWJ4L92z1KYp for ; Tue, 02 Dec 2025 19:47:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 269cf by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 19:47:08 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: polyduekes From: Alexander Ziaee Subject: git: df815450fbdb - main - release.7: PKGBASE is now the default List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: df815450fbdb494c85ca0c53f43cf9cee59e7dd1 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 19:47:08 +0000 Message-Id: <692f423c.269cf.2f666b1c@gitrepo.freebsd.org> The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=df815450fbdb494c85ca0c53f43cf9cee59e7dd1 commit df815450fbdb494c85ca0c53f43cf9cee59e7dd1 Author: polyduekes AuthorDate: 2025-12-02 13:53:43 +0000 Commit: Alexander Ziaee CommitDate: 2025-12-02 19:45:31 +0000 release.7: PKGBASE is now the default Signed-off-by: polyduekes-git Reviewed by: cperciva, emaste, ziaee Closes: https://github.com/freebsd/freebsd-src/pull/1913 --- share/man/man7/release.7 | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/share/man/man7/release.7 b/share/man/man7/release.7 index 2493a34721bc..3309b7edccc3 100644 --- a/share/man/man7/release.7 +++ b/share/man/man7/release.7 @@ -287,10 +287,9 @@ within the This is intended for use only when .Fa /usr/ports is expected to exist by alternative means. -.It Va PKGBASE -Include base system packages for use with -.Xr pkg 8 -on the install media, instead of legacy tarball distribution sets. +.It Va NOPKGBASE +Include legacy tarball distribution sets for use on the install media, +instead of base system packages. .It Va PKG_CMD A path to the .Xr pkg 8 From nobody Tue Dec 2 19:47:09 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLWWL1Gsqz6J390 for ; Tue, 02 Dec 2025 19:47: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLWWK5cqvz3tGg for ; Tue, 02 Dec 2025 19:47:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764704829; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=W2R5aR6zELokagXUAxtD79b2jm6VAqiCUUcMDm1zBJM=; b=WRr2ugZciLAOrQbVaA5oaLdHk4+1mF1MEGPrIfy+0OrWIT3NvaygBa/Y56RrMIuf9nPjSQ JmObf0CGy799cVlavO97lHQZ/r98BcYgAjlLgLKKWEUlnsJwlgvOKgwBxryJ8x1D02lN6F QYnTN9PsLkpncd7Cou7LadT/25KeGFlmmw6+Ylcu1krR6UYuvNQbQApb24Okz1FHCarq8a xs7p9Dto76IEHC1MAuYYzhJ3o/SkgV/tSotStTev+qkNzC/dKqVQyJ2PB5lZ6cRHUvwsUV 1d3mmsJxFfU3HjldQAT2PHtBTRWSky1E+sV18TyJEdPsPeCTgxYvMGnBzewmYg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764704829; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=W2R5aR6zELokagXUAxtD79b2jm6VAqiCUUcMDm1zBJM=; b=TmLRl9EU8yKQUp7EHnJi9myNN3tJRkcoQ20+olDckHBmlPATzwlDWhG9xz9Z/ibDKjIo0E cnRq/J+GUVxwwVJeX9k124ngCSCxQa8L4M7IIzpgLafdYQgurzRQvhhDoBM2mbr4YaQD1I ouYDYPF2GAhoTAi3erQ78RljxpUipkejoazUhUsXV+f/O//EPPcAIC+hEvR5JmbqJraX1w nIH/dY/asnKsnPLIJw8RKBK/aPiHLcySnrt6NmUpwWye95v/7c5hs1wQ2QWSZy2aTUXb/c xp0ZTZaVBvr8jm6og8kS1DRUDY9/RbuYftUaluJMmWrohF0wW6TUWH8u+TfPBg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764704829; a=rsa-sha256; cv=none; b=AG2ZQLc9i/O7TswkmNEY+FEOWAJDqMPkRmGjVjhUIAUUMg9YxmoajnxkjG5t6REJqDAjuP dSS4GEm8MjAvGqleyCO8rKMcyJ1bUgxZluotbi7QCda/26r3rgzaNy0fbLcjMsbLMCNgPX 5NQK2Vbp3rpqPh846u4irrxbs/XfmHxK7ScaZAqLbGkuU8zSPTfpS8yvhuGP7vjYs0fmAG yidMHejuVGGZCko2XKBaBJpxHaZeOu6RuOlAMhHCNwDoxS6UUXgAMkHgainJbJFj8hOwM/ /xy9yvpRi1pWtjoQlPcfqLP6m+uXnyCqwE+vH0CSdQskHEkLsjFqyxCx6KsNyw== 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 4dLWWK4hkWz1Kbx for ; Tue, 02 Dec 2025 19:47:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 26a40 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 02 Dec 2025 19:47:09 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alexander Ziaee Subject: git: 39b2ca9ec99e - main - freebsd-base.7: Rewrite table into a tagged list List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 39b2ca9ec99eded0b248082dcec6c843f40330a8 Auto-Submitted: auto-generated Date: Tue, 02 Dec 2025 19:47:09 +0000 Message-Id: <692f423d.26a40.790ab7f6@gitrepo.freebsd.org> The branch main has been updated by ziaee: URL: https://cgit.FreeBSD.org/src/commit/?id=39b2ca9ec99eded0b248082dcec6c843f40330a8 commit 39b2ca9ec99eded0b248082dcec6c843f40330a8 Author: Alexander Ziaee AuthorDate: 2025-12-02 17:21:08 +0000 Commit: Alexander Ziaee CommitDate: 2025-12-02 19:46:53 +0000 freebsd-base.7: Rewrite table into a tagged list The table is not playing nicely with https://man.freebsd.org/freebsd-base MFC after: 3 days Reviewed by: pauamma@gundo.com Differential Revision: https://reviews.freebsd.org/D54036 --- share/man/man7/freebsd-base.7 | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/share/man/man7/freebsd-base.7 b/share/man/man7/freebsd-base.7 index f84cc7239a1d..07cd7ab5656c 100644 --- a/share/man/man7/freebsd-base.7 +++ b/share/man/man7/freebsd-base.7 @@ -67,15 +67,24 @@ package. For the package .Sy FreeBSD-foo , the following subpackages may be available: -.Bl -column "FreeBSD-foo-dev-lib32" "Description" -.It Sy "Package name" Ta Sy "Description" -.It FreeBSD-foo Ta Base files for the package (typically executables) -.It FreeBSD-foo-lib Ta Native runtime libraries -.It FreeBSD-foo-lib32 Ta 32-bit compatibility runtime libraries -.It FreeBSD-foo-dev Ta Development files (headers and static libraries) -.It FreeBSD-foo-dev-lib32 Ta 32-bit development files -.It FreeBSD-foo-dbg Ta Debugging symbols -.It FreeBSD-foo-man Ta Manual pages. +.Pp +.Bl -tag -width "FreeBSD-foo-dev-lib32" -compact +.It Sy "Package name" +.Sy "Description" +.It FreeBSD-foo +Base files for the package (typically executables) +.It FreeBSD-foo-lib +Native runtime libraries +.It FreeBSD-foo-lib32 +32-bit compatibility runtime libraries +.It FreeBSD-foo-dev +Development files (headers and static libraries) +.It FreeBSD-foo-dev-lib32 +32-bit development files +.It FreeBSD-foo-dbg +Debugging symbols +.It FreeBSD-foo-man +Manual pages. Manual pages are only packaged separately if the .Sy WITH_MANSPLITPKG .Xr src.conf 5 From nobody Wed Dec 3 00:50:01 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLfDn6FCNz6JW8p for ; Wed, 03 Dec 2025 00: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLfDn5Y7dz3fpM for ; Wed, 03 Dec 2025 00: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=1764723001; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CmlZ/GOxEHCSADDzj/8zRObu+jzBzF4paGz1eGlLbi8=; b=GUNr1E4ZZlLnim98iNxBlIDxErdRA1ybKr03baEF6Gz5rBeVXwvzW0FBWXoCt/gHTgvVfB 31Z7ER1JStzwjaFIgP9P2jPCi/TWSAxkpT86ixS4voEgWJwQv/4ud8as2OBfMgVErl+pt6 /dXHZKF7PqxkHG5PHyfCJp2fgu2gK1QXnregp7rsAw/rxDzDnxa4yDx5UiOnk7iMkJu003 6KvL1dHt4q+iIdQeb9KpX/V9DHoARrKE/BIxOsKSHKxwZ/FKmybglLCxc1mNcPse6JHHTm iRQtOiUTtP8hu2s9r5vdfbbseajDGcfwuLbDJHff3UsS8tBYRJfzpASy1nefwQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764723001; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CmlZ/GOxEHCSADDzj/8zRObu+jzBzF4paGz1eGlLbi8=; b=bv91WVJej79d439OwLypo+nL2/oL71Nxn5thUT7AqYeGx4jsfrx5I8lk4SS1lU5KHe7LFQ f1GwmSOV+q1x3PvWRLIzYhE6YBBs5+Zu8vxg38tyMvEaH+OTVfZpnoH06WlzjMTsay/0ab dPDWLN9jF1qYBogfXNkjAA9NReMCaKwqDlQitPx32OfySEKgQZ1kvpHNEAmJWpb7RF29EZ mkIE12SFM4xQJQZroN6FcdcxzXb+WPAzDso8nArRG+bJdRpg0JiKYzVRRsMORiyGCi3wTh L+m2D4LGNpOToi+38yw9gv4gISE5fokM3A0GDs+5ZOw9ItwfMlprg9KzmcEfgg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764723001; a=rsa-sha256; cv=none; b=RAQjnu8Bd1SJBwaRh1K2dW8g9SmLXlHqIkW+/f+uKg0vZvjsiKwitq6pp6aZ1KF5eej8cf rX0W2RB675ZrD1iMGLm2oQ16OivJDJPPrt5doL6WLgO4nFV/AuVkBRd+KuoodtbId2RZ95 NrNd489I5vr7G5qebRt2Te8HBBdcPa7fxBNs+VlT586tmadELs+AJIu54cEX+p62JzZkht so+9xNW3qqbmlCbIl2YzsGxzgItWY4+Z2S7kITFPUn/qS7rOl5p3QeA8YBWT/d0rn6RYL+ W63iRKh998+Hw41fN4FCe1eejqJrSYbUidc7344PLq7KzSe73E/uKqABN7lJ7Q== 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 4dLfDn55SfzQL for ; Wed, 03 Dec 2025 00:50:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 24751 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 00:50:01 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 45d8bfdcba37 - main - LinuxKPI: page.c: remove a spurious character from a comment List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 45d8bfdcba37996993748f4667646f5dc9f54506 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 00:50:01 +0000 Message-Id: <692f8939.24751.7ebb5e8f@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=45d8bfdcba37996993748f4667646f5dc9f54506 commit 45d8bfdcba37996993748f4667646f5dc9f54506 Author: Bjoern A. Zeeb AuthorDate: 2025-12-03 00:45:39 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-03 00:49:45 +0000 LinuxKPI: page.c: remove a spurious character from a comment No functional changes. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/compat/linuxkpi/common/src/linux_page.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/src/linux_page.c b/sys/compat/linuxkpi/common/src/linux_page.c index 9cc981b2ba43..2b2827579cba 100644 --- a/sys/compat/linuxkpi/common/src/linux_page.c +++ b/sys/compat/linuxkpi/common/src/linux_page.c @@ -175,7 +175,7 @@ linux_free_pages(struct page *page, unsigned int order) * contexts. * * Some pages are allocated by `linux_alloc_pages()` - * above, but not all of them are. For instance in the + * above, but not all of them are. For instance in the * DRM drivers, some pages come from * `shmem_read_mapping_page_gfp()`. * From nobody Wed Dec 3 01:38:06 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLgJG4Z0yz6JZgw for ; Wed, 03 Dec 2025 01:38: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLgJG3tj0z3lWZ for ; Wed, 03 Dec 2025 01:38:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764725886; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HFh7ycmfVrJdPW8AZyjk8Z0xgQr/DjlIEgnjkN+Rv4Q=; b=QTCg+xvJxzaZlExARxOQ0kVV+sAz/clrOr3nIITdSdjCIR2sx8ZoZ9jqWt088395TMU98A DCL6JFvrkuGQIxjBbtm/9NWtINbo9y45ShkqJYgrwG7wnp2sD7lkDd9J7rBuhnGQ3ND5JB LAW7W/+XHhmOBmTtkwQTR1v+2/tgZp3TfVUzFdYs3uYK1GiJqg0FbpYekKkymaZQBGNaKI n6MnuZtrlOo9fMIw1YZZAxj/X7q7gxT+Re5FH61p8hPPNIpbaVV7aSpj0aHX9334AM5evB IdIST4DM7RCcXvRGbjHi5dLjbO0pymcWShFAeZmEspQQ2JBkKqFiiGztg7aayQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764725886; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HFh7ycmfVrJdPW8AZyjk8Z0xgQr/DjlIEgnjkN+Rv4Q=; b=GpwvU7/6o3mcLDDE9R1749rQ3QxFAVBFTIRrvZSFneSd29V1lelBVB/2XkplKYHiQso08c NR3NHsPrxazS8lN9+6PcGdWTLzzt6e/X5DxIx5EUd/Nq9wvi9uYqYJa9VOdclzhO+QorZj bZ010d1RQcIqxGLSEujQZux6UvTUkEaM4VszbI0CeC7gGkeIG6/OukkJvMPJdzWQGPd24E bYrEBEXRRdd+zX1EHHU4Osfwyjp5QSm6dhbTg4KRcnk6paU08x41D581R/5Ccfck6qt/ue ezOrWPntBb6j2r7AtS4lvwwauWO6bxEYJKWhoh4PHRLNMntXGap158QJ4ElV0g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764725886; a=rsa-sha256; cv=none; b=e6ORjMREHvl59CVg51OqEed0ldpXoWQ+tUBkVl3suBD/JMTNfxko2ooPy/Xm+bNXkuzrU6 ix+ehdAUw3pn04R6qGVxu6DXSlEl483MD2h5j+mXlg4XB+m6T1TjaEbrQV1NzF4R2c0UwW xpNIPPSvVOXFSrZ/iij9zrh9ymfVOrR0LegGtZM6MuavpijBApqkMO7la4a70XJrCZ768r zYMisH1oBDdL1y5KOJReRfscX9i6cuM/COu57BzkCKBDUjpotGSWkAVbMNEpS3gBNZXO2g CWAkQlBfcqY0VtGZSoJNG/rSKmSCVpiZJqbmtZS7/0zmTz0mJFj8jPuEDpabeA== 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 4dLgJG395Mz1kW for ; Wed, 03 Dec 2025 01:38:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2a72f by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 01:38:06 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: 86bfe5b4d5a7 - main - LinuxKPI: 802.11: make airtime fairness an IMPROVE List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 86bfe5b4d5a7b90d3746059dd1f87cdd5a0bf90c Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 01:38:06 +0000 Message-Id: <692f947e.2a72f.29a59b0c@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=86bfe5b4d5a7b90d3746059dd1f87cdd5a0bf90c commit 86bfe5b4d5a7b90d3746059dd1f87cdd5a0bf90c Author: Bjoern A. Zeeb AuthorDate: 2025-12-03 00:55:36 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-03 00:55:36 +0000 LinuxKPI: 802.11: make airtime fairness an IMPROVE We are ways away from implementing "airtime fairness" in LinuxKPI (or rather net80211). For now make it an 'improve' rather than a 'todo' to get the logging away. Everything will work without it. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/compat/linuxkpi/common/include/net/mac80211.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index 0eda07a8235c..ea9797befe58 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -2291,7 +2291,7 @@ static __inline void ieee80211_sta_register_airtime(struct ieee80211_sta *sta, uint8_t tid, uint32_t duration, int x) { - TODO(); + IMPROVE("NL80211_EXT_FEATURE_AIRTIME_FAIRNESS and TX queus"); } static __inline void From nobody Wed Dec 3 01:38:07 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLgJH61MFz6JZYT for ; Wed, 03 Dec 2025 01:38:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLgJH3sVYz3lrG for ; Wed, 03 Dec 2025 01:38:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764725887; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/p5l2BI7H9edBfxHR7dWLSbAiE9U5eTpoKeGH/ciDuU=; b=MOI3IVyq8Lgv5/Oc3YwqUkO7xRbXyyhNq0brmmh1jOVAUs+bzXMnb8+6qHLvGjFLDxtbhr e6NJWjbQoN0VZf1IXRXQrt75vI1y7z5X8IcoBwaTSui89gfPxXfbaq4lwXzS9TgxKfrJvE B8QPC1r9opq1XwfxN3WdTfq5BXzoMWKnQ0BhNdWAQls/JhjcJ7yp2WI/KIdWEdLSdKfuo3 xROCdcQ8n6Z4H/UDN6pYFRsgb9IDO2JHQ5GnOQh7NJHU9P/XMaIlSPWiSNzBfFs9PrLlbj eqPiibCrgEvzPxWEg3iglvrkSSxkn9tpuRTeCRAkZfuQExw7LPFhAbe+QrD0vQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764725887; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/p5l2BI7H9edBfxHR7dWLSbAiE9U5eTpoKeGH/ciDuU=; b=cXJCT3TMTj7mo5BDtGDT3UdWKUffNKDdunOJ2tJobH8I694bsieXsdB9H1NhWXLEYoHjaH +ZWf+ezbd88RgExuAoI3kQ3ExqbQV5jFxDZ001zVRU8EdMMC+nH7epEpcd6zvXjKdqZUCb qlWNPEgeF9mRPS4EpuFTNZ/veo5slGl1rHS2MW0MHJR6wwVNnIvZ9GtN+oSU+7fMrx67rT CQ63TQOdUmMaNgxsVyFUKhx7bP+EetqGiZCAuE3pAcwPvUoJRrrFF8i9BT3d/7g5if9Gat +poHtooxpAVqOryvdTC+X5o0IzShkRwo+BeMmq640dAtEfzPxT4MOLoLMliPVg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764725887; a=rsa-sha256; cv=none; b=cDmReQOdN9VbW4hZm1U9vw3/IBScbo/aWJyziXk8dMZlkqRsG0Z54kvcHtUsdHFzgr4i4C nso+o32i0i704wrNbjU75S7KcpVDvvfwIfIWi+XItm6a7/iY1ZmpZOFv/f6eUbFSyl+mHS 23jOC6wNID06pwcHF/3oXX9EqSJDZ9bGyzEeGHOmiuZGyu0uCIJfIZbvPRFiO2iV7EXYKr liUmQFDeLgERyfjUFmAqI+gztZylOXY8GSrl0ggn0gaLaFJuiaYIyzTdJZ55eouRspMqpx w5j/bEWQPeI8mLahTcYxJ7nB6ZxBhW9MpcqCtlgK2EynoczcRvOKUUESxvjizw== 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 4dLgJH3Qyxz2MY for ; Wed, 03 Dec 2025 01:38:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 29358 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 01:38:07 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bjoern A. Zeeb Subject: git: fc9666d0fc0c - main - LinuxKPI: device: add a pr_debug("TODO") call to device_release_driver() List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: fc9666d0fc0c2541e44bfbcaa5bb1b670395687c Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 01:38:07 +0000 Message-Id: <692f947f.29358.265cd01a@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=fc9666d0fc0c2541e44bfbcaa5bb1b670395687c commit fc9666d0fc0c2541e44bfbcaa5bb1b670395687c Author: Bjoern A. Zeeb AuthorDate: 2025-12-03 01:09:24 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-03 01:09:24 +0000 LinuxKPI: device: add a pr_debug("TODO") call to device_release_driver() The logic in device_release_driver() got disabled in 93b14194acaf2 and since left alone. Add a pr_debug() call so we have a chance to notice if that code is actually still in need to be fixed and re-enabled. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/compat/linuxkpi/common/include/linux/device.h | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/compat/linuxkpi/common/include/linux/device.h b/sys/compat/linuxkpi/common/include/linux/device.h index c291133e2e0b..8834f1799e61 100644 --- a/sys/compat/linuxkpi/common/include/linux/device.h +++ b/sys/compat/linuxkpi/common/include/linux/device.h @@ -557,6 +557,7 @@ static inline void device_release_driver(struct device *dev) { + pr_debug("%s: TODO\n", __func__); #if 0 /* This leads to panics. Disable temporarily. Keep to rework. */ From nobody Wed Dec 3 02:38:05 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLhdV1ky4z6JfYd for ; Wed, 03 Dec 2025 02:38: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLhdT6r2wz3rZY for ; Wed, 03 Dec 2025 02:38:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729486; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=++nEe8AMf/uy0NijzfXX5eRrhQJ8Si7Yn0v02XyXiBY=; b=Qq6QrWAl7cT+r4OWO5y1wW0Yrq9aYB2XVZ9eLyxgQkgVvLJMVUJkjgAPlp7NAkOUurL9iG /iI8HygeQ2GkLN4j0m8ZKZJHJgRLYMc889L6aqDbp5f6xIeJLlRVR5RpJ1Ly2e8IIaMxlC P5SN1HxEm2SI5po9zxCQFiI5El/41gPsWUK04vcjdPWpsZhoL5xEIpchJKAuD2nQkarnUZ hqsyYBSqwuI4bSfvsn7gAedFsgcPRvnqA3yXryY1pORw6sI/wZTCJCKjEJIF8YuBd1zDVT jUXuNxhqY61P9VESKyEfw948BE9MBKV4ELrXwPWkCAHJ2SFruAn5gD6hiCKhMg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729486; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=++nEe8AMf/uy0NijzfXX5eRrhQJ8Si7Yn0v02XyXiBY=; b=vGheRU8xexRZ1BEIs7ewRPZ4LGNAQO8uMPsY685dT/drq0Xn4//Mui+KIMHQ0GatB31jKQ kbOzN7uRZTmfr/grLkhogx7v6vz4/CNIr05+sODrTyw5RYmYnaVx9ASt8GnxUxbBYMj+rL P2m/ujukiXkm/pHzd3c4vQEGYIH+2J2OkU68B/dlH/mNntA3M8KqTuGyx/TnoFnk7Xvoip kuv4vq10RMPBVlKKVrEEA8uZAjLWyHoT9wiOD1YzEmxEfZejFy7wWvD/zpwT1hEAsKGMhA GAspX+BxZVt2aip1iS8JCk70iNmAd3mossIv+0iXZIIeZ4BPPNBqdhqmvLRYDQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764729486; a=rsa-sha256; cv=none; b=yTRyNT5sfnNxUNHrv9sJIseq+EKDm3chml3u9xFeeluqBI2K6snv00eDMHVjX7f//5Ui7T kMNaPxZOqfqcSZU2QAryoOTV4CeJ8nAQU3iAZNlmWd7Vn0pufWkd1Vp6l42hDVplSypFkP ap7WD01Z7HN20Qtc959ENZsbplwY6abZMQA0IyK5r5ZfWRYyXw8k3EGExUerqJvCU7GoYC XyKshw/HH/AeAei97HXQk9a6C7ARRhyBF4oGnOg7Y2JK9mWB0OAo4S3ECx0S43IRSgd6OL NaD5pcLtXVx8+hy0IgyyEwJF1K+ZK8jv/AeZ5/UqyhNuqaaC+ZKXnpmG8/4B3A== 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 4dLhdT5Pyzz3tb for ; Wed, 03 Dec 2025 02:38:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2ffbc by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 02:38:05 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 2929eb93f335 - stable/15 - strfmon: Fix typo s/poistion/position/ List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 2929eb93f33553eb7c9e037b6f2081d3d6675628 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 02:38:05 +0000 Message-Id: <692fa28d.2ffbc.1a5c0284@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=2929eb93f33553eb7c9e037b6f2081d3d6675628 commit 2929eb93f33553eb7c9e037b6f2081d3d6675628 Author: Jose Luis Duran AuthorDate: 2025-11-23 16:58:55 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-03 02:28:06 +0000 strfmon: Fix typo s/poistion/position/ MFC after: 1 week (cherry picked from commit 91e7f19ec4056587a85c1461a4f34a6d5d4b7b52) --- lib/libc/stdlib/strfmon.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libc/stdlib/strfmon.c b/lib/libc/stdlib/strfmon.c index 68a36a6d5567..230d194233f5 100644 --- a/lib/libc/stdlib/strfmon.c +++ b/lib/libc/stdlib/strfmon.c @@ -106,7 +106,7 @@ vstrfmon_l(char *__restrict s, size_t maxsize, locale_t loc, const char *__restrict format, va_list ap) { char *dst; /* output destination pointer */ - const char *fmt; /* current format poistion pointer */ + const char *fmt; /* current format position pointer */ struct lconv *lc; /* pointer to lconv structure */ char *asciivalue; /* formatted double pointer */ From nobody Wed Dec 3 02:38:06 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLhdW006Xz6Jfkt for ; Wed, 03 Dec 2025 02:38:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLhdV61kQz3rRV for ; Wed, 03 Dec 2025 02:38:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729486; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Xm69oAlGheTnr3E/1Se5+743DE2mqKsPZHoV7TYGDho=; b=l53Dc2P++fMSSHHpylOCJehEv9+SzjgvyyiT0OrVhge0awmjDZDyrlu3+57rFSss2TKGe/ EUHWG5bZgx4rogBv9wiWjxjRy71E2+PQIN26U/r5hd74szB4933gfGYHHlE3I5k8Q1Ofuy GN/nL5hbZdTAPbN3S5Ocvui6wqkn+dkGy3lqBAYz8vQpcvRdBQdg2XKeUoPbCiahQalnZV qy0McMX+OPSEW3Moi+YDqiYhOX2Pgo3JwIk29q4xhVALlAAfwJziFBU8MndiRP53AaiHjQ L77J2SewldMnsBN38kELLp4xQgvJntr8U3/Qa0yRmzYpV44eQR3B06yZTf8wQA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729486; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Xm69oAlGheTnr3E/1Se5+743DE2mqKsPZHoV7TYGDho=; b=RFBp9AP9YgpxI0Pn7Hkb+Ka+EDh7ctI2ooehyJTwCKM1EsdEzAJ/C/VFCFLC+Yq1sz4WMX CiBRlF6XRQmgIXOxwEFHR+f/VdZsRgGIoDKYxoW7uhnjqNukhIdLwnuHpURH+KA4XvHq+g sig2xTcVQmRtroXixeqqLQg8KbFrFQcFqHMFJYwWXx+WWbSvxmL9gBIf8LmO0kaMg3IXh1 4vCrN/SpZlJOyI6yTnXf08dvcdBO8+miM9VuRn0wBW+hUYjbTEW0/OyTapltwyYvfAT7ye ERigF0u2J/9v0Bq00sFgLOKukRL99/VOL/DJ6uUu+jJvv93fkhy9d7dhj7/BWg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764729486; a=rsa-sha256; cv=none; b=iMXCwXVwFYsRWTtc38659OVTrhJOB84jWaOeTV61qFEnlyTPzFv5yPXlVXQWbRiQjghm99 d7iU8EDRR+r7R36wTvLFf2kQ4Ku+F5ka3pLzkWaNejsDjIys67SfWtZleg3tXphtSo2FVa rsCrOT6lI4wlF2qF/nnc+8GYDARM7QFaEduH2Lkfp8XbzAx/Ny5t2ycIjeywINilt4oKUV 0UabiYEXLvaGBx+sljvGxyG7jVnmUBTXeBo4ZA+nZs5f4efjfUnvGHECFay5QwpijVIsiW FIZUUgXSMFdFtkvulqEMKCGz4Oix2AVaeQtptwBKzfYQ3StPirJ9DG8rGv10tQ== 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 4dLhdV5ZL6z3tc for ; Wed, 03 Dec 2025 02:38:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 310af by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 02:38:06 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: d3dbfab0d04e - stable/15 - strfmon: Add tests for Austin Group Defect 1199 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: d3dbfab0d04e54ddeff4dcfa43c3a0f8a9a37370 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 02:38:06 +0000 Message-Id: <692fa28e.310af.52ec0e91@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=d3dbfab0d04e54ddeff4dcfa43c3a0f8a9a37370 commit d3dbfab0d04e54ddeff4dcfa43c3a0f8a9a37370 Author: Jose Luis Duran AuthorDate: 2025-11-26 20:34:55 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-03 02:28:34 +0000 strfmon: Add tests for Austin Group Defect 1199 Add tests for The Open Group Base Specifications Issue 8[1], Austin Group Defect 1199[2]. Items marked with XXX represent an invalid output. These items will be fixed in subsequent commits. Notice that an existing test is now considered invalid. Our locale definitions do not include int_p_sep_by_space nor int_n_sep_by_space[3]. Those will be addressed in a subsequent commit. However, the CLDR project defines them as "0", which causes the output to appear as "USD123.45". If our locale definitions were to set the international {n,p}_sep_by_space to "1", the output would display as the expected "USD 123.45". While here, use the SPDX license identifier and add my name to the file. [1]: https://pubs.opengroup.org/onlinepubs/9799919799/functions/strfmon.html [2]: https://www.austingroupbugs.net/view.php?id=1199 [3]: https://unicode-org.atlassian.net/browse/CLDR-237 Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53911 (cherry picked from commit 19e153004fb63c32eba0ef40249f5ede61a93170) --- lib/libc/tests/stdlib/strfmon_test.c | 80 +++++++++++++++++++++++++----------- 1 file changed, 57 insertions(+), 23 deletions(-) diff --git a/lib/libc/tests/stdlib/strfmon_test.c b/lib/libc/tests/stdlib/strfmon_test.c index 86f6256dba0b..3c97d61ba82c 100644 --- a/lib/libc/tests/stdlib/strfmon_test.c +++ b/lib/libc/tests/stdlib/strfmon_test.c @@ -1,31 +1,14 @@ -/*- - * Copyright (C) 2018 Conrad Meyer +/* + * Copyright (c) 2018 Conrad Meyer * All rights reserved. + * Copyright (c) 2022-2025 Jose Luis Duran * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. + * SPDX-License-Identifier: BSD-2-Clause */ #include +#include #include #include #include @@ -208,6 +191,56 @@ ATF_TC_BODY(strfmon_international_currency_code, tc) } } +ATF_TC_WITHOUT_HEAD(strfmon_plus_or_parenthesis); +ATF_TC_BODY(strfmon_plus_or_parenthesis, tc) +{ + const struct { + const char *format; + const char *locale; + const char *expected; + } tests[] = { + { "%+n", "en_US.UTF-8", "[$123.45] [-$123.45]" }, + { "%+i", "en_US.UTF-8", "[USD123.45] [-USD123.45]" }, + { "%(n", "C", "[123.45] [(123.45)]" }, + { "%(i", "C", "[123.45] [(123.45)]" }, + { "%(n", "en_US.UTF-8", "[$123.45] [($123.45)]" }, + { "%(i", "en_US.UTF-8", "[USD123.45] [(USD123.45)]" }, + { "%n", "C", "[123.45] [(123.45)]" }, /* XXX */ + { "%i", "C", "[123.45] [(123.45)]" }, /* XXX */ + { "%n", "en_US.UTF-8", "[$123.45] [-$123.45]" }, + { "%i", "en_US.UTF-8", "[USD123.45] [-USD123.45]" }, + }; + size_t i; + char actual[100], format[50]; + + for (i = 0; i < nitems(tests); ++i) { + if (setlocale(LC_MONETARY, tests[i].locale) == NULL) + atf_tc_skip("unable to setlocale(): %s", + tests[i].locale); + + snprintf(format, sizeof(format), "[%s] [%s]", + tests[i].format, tests[i].format); + strfmon(actual, sizeof(actual) - 1, format, + 123.45, -123.45); + ATF_CHECK_STREQ_MSG(tests[i].expected, actual, + "[%s] %s", tests[i].format, tests[i].locale); + } + + /* + * The '+' flag was included in a conversion specification and + * the locale's positive_sign and negative_sign values would + * both be returned by localeconv() as empty strings. + */ + if (setlocale(LC_MONETARY, "C") == NULL) + atf_tc_skip("unable to setlocale(): %s", tests[i].locale); + + /* ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, + "[%+n] [%+n]", 123.45, -123.45)); XXX */ + + /* ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, + "[%+i] [%+i]", 123.45, -123.45)); XXX */ +} + ATF_TC(strfmon_l); ATF_TC_HEAD(strfmon_l, tc) { @@ -220,7 +253,7 @@ ATF_TC_BODY(strfmon_l, tc) const char *locale; const char *expected; } tests[] = { - { "C", "[ **1234.57 ] [ **1234.57 ]" }, + { "C", "[ **1234.57 ] [ **1234.57 ]" }, /* XXX */ { "de_DE.UTF-8", "[ **1234,57 €] [ **1.234,57 EUR]" }, { "en_GB.UTF-8", "[ £**1234.57] [ GBP**1,234.57]" }, }; @@ -247,6 +280,7 @@ ATF_TP_ADD_TCS(tp) ATF_TP_ADD_TC(tp, strfmon_cs_precedes_0); ATF_TP_ADD_TC(tp, strfmon_cs_precedes_1); ATF_TP_ADD_TC(tp, strfmon_international_currency_code); + ATF_TP_ADD_TC(tp, strfmon_plus_or_parenthesis); ATF_TP_ADD_TC(tp, strfmon_l); return (atf_no_error()); } From nobody Wed Dec 3 02:38:07 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLhdX0rvfz6Jfky for ; Wed, 03 Dec 2025 02:38:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLhdW6s8nz3rLc for ; Wed, 03 Dec 2025 02:38:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729488; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WBuT4cMYap4EBrURY0vOM74cEsn8ektI+eYPW4une+c=; b=YHke2bVcXijMNk8zSTm/Z3WQxZDYlgMQupPUJF/XvCQQXGiP/JiH9Bo8Fa4x3m5rIPZtf5 aWVvF8FfhNknoTMgnQQ8MThmmy/xlHj1VnFDZr/uBRDQzzWrMDN+Jkl0Ubqe6c9lQdDvps Tg5AqLZQm/kYHdd2boLQwd3NFLLh/JVpTeLZ29beCLXaq7ITb8huH2cs0QWG6jMreZ/YeZ jfh+Y1iTFdUbK1OtxD87EJqsWpRfcQnR2sIh53eTetoKqKi3Eog7Odfo6CB+VqXkm1QLgo prQhLaHnwoMMaO3drUpcUrCi4hyDM4kqc1ZFqFThQvFF6w/+DlJ7vnfMY8VZxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729488; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WBuT4cMYap4EBrURY0vOM74cEsn8ektI+eYPW4une+c=; b=WwczwEAcIHHhZicMpJVxLu4g1FdcYXDz68VbLZl14aLB6KbLkJQIBzoiO2njdwzxPQkRT4 mJNYkx313iHXU+hlZC76abdmNLixzF2vRWht79/1pvjnjxAyeGkg1u4JGdcfXfN9wmN1Lu LSkfpbtRluIIrslC7ija087Cx4PRHar6WOm5gtIpop/oIxbjcaIkH+0elyeHt1yG42vm6O osAgTv3QotCdmsaNAdtRaNb7WAebONf7YJ9mAxiUKW6M/ogr70xHP6X2HQ/kY5RL3O9wjT ShQeTzDtHK1vAOHv7r8NF951RmpyNboX1SBZivkWDY/hh4R+G/2EJcssvrAlOQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764729488; a=rsa-sha256; cv=none; b=v+KqxowBXHzkNY4ImKBxdv5SvSDfXCoUQos14MNESM24oawxqRbj/0gGYk4zYnNwrd4ZZV oZ10bHfeVi0DacxOyJTD1N3pmnjL9Ekqt4K1uSLp19FDz3IdxsY2ET8e0iGf5+KL1eGLJ0 Lsion9+XvEiaEdXpo2W6l2N1Nm2KgGPlJOhg9h1SWjDQQjDihc6Blfk0B5d0wyH4wRFWRC hbJv0UyP/9m6Vy1w8AZqUedptXDVhzgn+qm2GGKSUw/0RSEv3DeUAc7cy1La0cm7qygInp Csnncvif30Y3yforB7QecPsDdjJi1a567bcL6hXDuhpBvxCl9Kuvf/eAke6osA== 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 4dLhdW6P4Mz3QF for ; Wed, 03 Dec 2025 02:38:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2f7ab by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 02:38:07 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 488c4a511434 - stable/15 - strfmon: EINVAL if the '+' flag and both signs are empty List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 488c4a511434c9f72729846163e04b265cb9d170 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 02:38:07 +0000 Message-Id: <692fa28f.2f7ab.1a30038b@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=488c4a511434c9f72729846163e04b265cb9d170 commit 488c4a511434c9f72729846163e04b265cb9d170 Author: Jose Luis Duran AuthorDate: 2025-11-26 20:34:55 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-03 02:28:53 +0000 strfmon: EINVAL if the '+' flag and both signs are empty According to the Open Group Base Specifications Issue 8[1], strfmon(3) should return EINVAL when the '+' flag was included in a conversion specification and the locale's positive_sign and negative_sign values would both be returned by localeconv(3) as empty strings. Austin Group Defect 1199[2] is applied, adding the [EINVAL] error. [1]: https://pubs.opengroup.org/onlinepubs/9799919799/functions/strfmon.html [2]: https://www.austingroupbugs.net/view.php?id=1199 Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53912 (cherry picked from commit 1fd018972a18b682521bb8f004dfd162327e5db2) --- lib/libc/stdlib/strfmon.3 | 12 +++++++++++- lib/libc/stdlib/strfmon.c | 4 +++- lib/libc/tests/stdlib/strfmon_test.c | 8 ++++---- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/lib/libc/stdlib/strfmon.3 b/lib/libc/stdlib/strfmon.3 index 20cc560d401d..d537d9d05fa7 100644 --- a/lib/libc/stdlib/strfmon.3 +++ b/lib/libc/stdlib/strfmon.3 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd December 6, 2023 +.Dd November 24, 2025 .Dt STRFMON 3 .Os .Sh NAME @@ -182,6 +182,16 @@ function will fail if: Conversion stopped due to lack of space in the buffer. .It Bq Er EINVAL The format string is invalid. +.It Bq Er EINVAL +The +.Cm + +flag was included in a conversion specification and the locale's +.Va positive_sign +and +.Va negative_sign +values would both be returned by +.Xr localeconv 3 +as empty strings. .It Bq Er ENOMEM Not enough memory for temporary buffers. .El diff --git a/lib/libc/stdlib/strfmon.c b/lib/libc/stdlib/strfmon.c index 230d194233f5..b19d9fc43369 100644 --- a/lib/libc/stdlib/strfmon.c +++ b/lib/libc/stdlib/strfmon.c @@ -171,7 +171,9 @@ literal: flags &= ~(NEED_GROUPING); continue; case '+': /* use locale defined signs */ - if (flags & SIGN_POSN_USED) + if ((flags & SIGN_POSN_USED) || + ((lc->positive_sign[0] == '\0') && + (lc->negative_sign[0] == '\0'))) goto format_error; flags |= (SIGN_POSN_USED | LOCALE_POSN); continue; diff --git a/lib/libc/tests/stdlib/strfmon_test.c b/lib/libc/tests/stdlib/strfmon_test.c index 3c97d61ba82c..165ddcc2ab56 100644 --- a/lib/libc/tests/stdlib/strfmon_test.c +++ b/lib/libc/tests/stdlib/strfmon_test.c @@ -234,11 +234,11 @@ ATF_TC_BODY(strfmon_plus_or_parenthesis, tc) if (setlocale(LC_MONETARY, "C") == NULL) atf_tc_skip("unable to setlocale(): %s", tests[i].locale); - /* ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, - "[%+n] [%+n]", 123.45, -123.45)); XXX */ + ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, + "[%+n] [%+n]", 123.45, -123.45)); - /* ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, - "[%+i] [%+i]", 123.45, -123.45)); XXX */ + ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, + "[%+i] [%+i]", 123.45, -123.45)); } ATF_TC(strfmon_l); From nobody Wed Dec 3 02:38:09 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLhdY2j6kz6JffX for ; Wed, 03 Dec 2025 02:38:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLhdY0mB7z3rJb for ; Wed, 03 Dec 2025 02:38:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729489; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QUDLqbUVxs6z84GlIYubiWcucUbnwWEd3IvWsAUClI4=; b=Q3wYCkJHq0XdOr28CLPzGGnksnts/OOD6Ip22U7OCw5xKGTr7w95/nPSEjaay+KT6HQpGk jPuNV9iaes46nF5DedqXHkJzJf+FSY2G9t6xbJ/zPVF1Ri8uhcaX5uCB5oYbuSujalzXm3 iX9ofALDTYnHK2OACEkq+uPKOIVq6mehK+0Oan/rGK86/5gG56hVZMZt7CcwbkNlX1mLYP gMPdMnN17h02dEvydmEjzgPK324aNOk52TGgfqm7qtBoD3Qxi3Jrf1OdcyPbjzIjz8kRHO MwcxexA1ajhxSGv/UrJQwYDqsUv2+G1DnRIhjhfW4G6ccnpyQuo3nuYtRwDj2g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729489; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QUDLqbUVxs6z84GlIYubiWcucUbnwWEd3IvWsAUClI4=; b=WALBvu8V07WAXoPUmQnV/T/mezbk1hlcTNkzIYhpu3+GDCkdLUYrm3VJj9FQxxmBSqlOpi mJWpo9E9UKabEwuAqc2QeX8U3fa1o5kj+MeREJvNIOlXLadtZgJWusgVetcAVDTd555uc9 89uByDOc8PQVmUlB7mcyZg89zdbf10QbcxyNybhaAGK9CiShWZMA+OjY9GSJ/mcm7yk6ex dkPC5+J8iDpafK47ayfJsRPvpEmHdyOnyA+oeeqoscYfeMMDuHxLRrVvD1tdyk+5gAKy2D CvsmUAlqJicuPBafr9dMwV11f8ThYcfzlKbEb9T7YJVbpohNdoTxF4EJ5TqB9g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764729489; a=rsa-sha256; cv=none; b=wlq6vhTyVUdDXl42NC62GfZ/C0DDex8wG9TlFdGP5414HoPe5MQjaHbojzIApL9MmuxGeX MWsrHDDCi5xDIfmFGHGct3F88Jt14fRKdDJuqouFyg04U3Yn+GG5/agcURSjlFcQXDEqyf jWxhx06F72laNIS+w8NFdOjcCi41RT/2ezJspzQI7M/lW906d3Rc0W35OocRAnYDNQYX1K ty5ygq2cvZ0d6OkRtJ+yrlqINHz66S0fKGMFyuxU1OjpjkX12bn5AL+zYBsws3G9roEFI5 7Dzn7wPnY5n8zGUBluKQbWoSGIARsW8isvT33qfNC2fQxOIWx/Yf0NbacwC/FQ== 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 4dLhdY0538z3QG for ; Wed, 03 Dec 2025 02:38:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2f7af by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 02:38:09 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 06c2e9b7685b - stable/15 - strfmon: Fix negative sign handling for C locale List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 06c2e9b7685b630d90b20364bbe778007086a624 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 02:38:09 +0000 Message-Id: <692fa291.2f7af.8761815@gitrepo.freebsd.org> The branch stable/15 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=06c2e9b7685b630d90b20364bbe778007086a624 commit 06c2e9b7685b630d90b20364bbe778007086a624 Author: Jose Luis Duran AuthorDate: 2025-11-26 20:34:56 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-03 02:29:13 +0000 strfmon: Fix negative sign handling for C locale If the locale's positive_sign and negative_sign values would both be returned by localeconv() as empty strings, strfmon() shall behave as if the negative_sign value was the string "-". This occurs with the C locale. The implementation previously assigned "0" to sign_posn (parentheses around the entire string); now it assigns it to "1" (sign before the string) when it is undefined (CHAR_MAX). Austin Group Defect 1199[1] is applied, changing the requirements for the '+' and '(' flags. [1]: https://www.austingroupbugs.net/view.php?id=1199 Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53913 (cherry picked from commit cf85e7034ad5640b18a3b68d6b291b7bf89bfc80) --- lib/libc/stdlib/strfmon.c | 2 +- lib/libc/tests/stdlib/strfmon_test.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/libc/stdlib/strfmon.c b/lib/libc/stdlib/strfmon.c index b19d9fc43369..611ac45b9c82 100644 --- a/lib/libc/stdlib/strfmon.c +++ b/lib/libc/stdlib/strfmon.c @@ -457,7 +457,7 @@ __setup_vars(int flags, char *cs_precedes, char *sep_by_space, char *sign_posn, if (*sep_by_space == CHAR_MAX) *sep_by_space = 0; if (*sign_posn == CHAR_MAX) - *sign_posn = 0; + *sign_posn = 1; } static int diff --git a/lib/libc/tests/stdlib/strfmon_test.c b/lib/libc/tests/stdlib/strfmon_test.c index 165ddcc2ab56..c6c20bd26985 100644 --- a/lib/libc/tests/stdlib/strfmon_test.c +++ b/lib/libc/tests/stdlib/strfmon_test.c @@ -205,8 +205,8 @@ ATF_TC_BODY(strfmon_plus_or_parenthesis, tc) { "%(i", "C", "[123.45] [(123.45)]" }, { "%(n", "en_US.UTF-8", "[$123.45] [($123.45)]" }, { "%(i", "en_US.UTF-8", "[USD123.45] [(USD123.45)]" }, - { "%n", "C", "[123.45] [(123.45)]" }, /* XXX */ - { "%i", "C", "[123.45] [(123.45)]" }, /* XXX */ + { "%n", "C", "[123.45] [-123.45]" }, + { "%i", "C", "[123.45] [-123.45]" }, { "%n", "en_US.UTF-8", "[$123.45] [-$123.45]" }, { "%i", "en_US.UTF-8", "[USD123.45] [-USD123.45]" }, }; @@ -253,7 +253,7 @@ ATF_TC_BODY(strfmon_l, tc) const char *locale; const char *expected; } tests[] = { - { "C", "[ **1234.57 ] [ **1234.57 ]" }, /* XXX */ + { "C", "[ **1234.57] [ **1234.57]" }, { "de_DE.UTF-8", "[ **1234,57 €] [ **1.234,57 EUR]" }, { "en_GB.UTF-8", "[ £**1234.57] [ GBP**1,234.57]" }, }; From nobody Wed Dec 3 02:38:27 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLhdv71Jrz6Jfq4 for ; Wed, 03 Dec 2025 02:38:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLhdv2QwBz3sLn for ; Wed, 03 Dec 2025 02:38:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729507; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uUd3ABTFDoR5ec5eDsw4A+GFvinlaap+L2KdIbLjZ3o=; b=cxTpoR3AShr1LABTiwL1JYPnJz3155ga04C0GsxPh++UelLbb3HaUysByhfz5VQ7WI6Zv0 Be+hVWSAx5vUW390Rek2kczaWWJBTigun+gVQMiFOom5LTpmhkj84zak5yTKcCDFoB1dGF wTOR5a4zGa8zfgwLlhMeSv5l+aaopfxe/3lrS2Id82iQRhM2eq5vm03iE2AxEKNFQpM+Vr 2GJHMkGcMKtc7yBQJkPNkOz8SpcQxU61ziDDBC0FJg65ykAs6lMU0VNmYoPjmWWGFjSlu5 PBFGmxj4sJyGeYwnW66Zzx/OeM1sD9/OSGenox25DQmYmdSSJTA3b9rJU1+zCQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729507; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uUd3ABTFDoR5ec5eDsw4A+GFvinlaap+L2KdIbLjZ3o=; b=x36Q/ZXW1f3Uvsv78wVntdDkYeO7cnsxpa3HfWXkbty4xS0A2XBnbyew8OVG+oQ19+H6TU en8pT6hYBqpbVFY6Yq2Mp8NtZAk0/O4OZGMEn8kEJkCmbm0PCYES3hfmfoKAslzYqlc8r+ ccDCx6UDW4l0//M8FL/aPRpV8jWIkO91/02VMmFIJ8w2cR1LFmed4gUWIgNUOMWw+Attm9 qoGhB+urLdi4/NVtwUdu351QFW8RxR62QM+spgeFtgyYeu3ebdpMiGtH0Gjs7E5n1Nij6B HbSAq9ELrFQMi2Z7NtxcDruzl9tfpsOevYzLRLw5Pa/W/I/pX28MLyM1TgDGFw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764729507; a=rsa-sha256; cv=none; b=dhUSH55lgUEaQthRvUlH02Wgybh1wFpp1/M/jnE8YoG0B3gIHBU8ewM+m7atDQin4w7U2O OeFMqZYUZcd8kRjgbpu5xqMH8959FwmVuWavOISHJig57QxNBY1OjZbFcf03yH9Ie5+b6/ bHwdc/cKuNPmTJlpkbG9gh40vYK0dJkTigj69lriPdiJYu23qMXZe29kwFvxs+OELCng+Y Nk6ZzzZmEh/QvQxpW5qa2nRu0/RBy2LcF08mc8NZzTBLxloOomfmqahkgcI0+QY8XCQP+Z 6u95HlEwcyDtifecV7wk3f/ERFpUNDR09iz9ycId6088E2rieddx5q6YT6znfg== 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 4dLhdv20rzz3q9 for ; Wed, 03 Dec 2025 02:38:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2f7b7 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 02:38:27 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 7745ece2819e - stable/14 - strfmon: Add tests for Austin Group Defect 1199 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 7745ece2819e3613308974c5c547b7d1218b3856 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 02:38:27 +0000 Message-Id: <692fa2a3.2f7b7.5cbb4679@gitrepo.freebsd.org> The branch stable/14 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=7745ece2819e3613308974c5c547b7d1218b3856 commit 7745ece2819e3613308974c5c547b7d1218b3856 Author: Jose Luis Duran AuthorDate: 2025-11-26 20:34:55 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-03 02:34:09 +0000 strfmon: Add tests for Austin Group Defect 1199 Add tests for The Open Group Base Specifications Issue 8[1], Austin Group Defect 1199[2]. Items marked with XXX represent an invalid output. These items will be fixed in subsequent commits. Notice that an existing test is now considered invalid. Our locale definitions do not include int_p_sep_by_space nor int_n_sep_by_space[3]. Those will be addressed in a subsequent commit. However, the CLDR project defines them as "0", which causes the output to appear as "USD123.45". If our locale definitions were to set the international {n,p}_sep_by_space to "1", the output would display as the expected "USD 123.45". While here, use the SPDX license identifier and add my name to the file. [1]: https://pubs.opengroup.org/onlinepubs/9799919799/functions/strfmon.html [2]: https://www.austingroupbugs.net/view.php?id=1199 [3]: https://unicode-org.atlassian.net/browse/CLDR-237 Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53911 (cherry picked from commit 19e153004fb63c32eba0ef40249f5ede61a93170) --- lib/libc/tests/stdlib/strfmon_test.c | 80 +++++++++++++++++++++++++----------- 1 file changed, 57 insertions(+), 23 deletions(-) diff --git a/lib/libc/tests/stdlib/strfmon_test.c b/lib/libc/tests/stdlib/strfmon_test.c index 86f6256dba0b..3c97d61ba82c 100644 --- a/lib/libc/tests/stdlib/strfmon_test.c +++ b/lib/libc/tests/stdlib/strfmon_test.c @@ -1,31 +1,14 @@ -/*- - * Copyright (C) 2018 Conrad Meyer +/* + * Copyright (c) 2018 Conrad Meyer * All rights reserved. + * Copyright (c) 2022-2025 Jose Luis Duran * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. + * SPDX-License-Identifier: BSD-2-Clause */ #include +#include #include #include #include @@ -208,6 +191,56 @@ ATF_TC_BODY(strfmon_international_currency_code, tc) } } +ATF_TC_WITHOUT_HEAD(strfmon_plus_or_parenthesis); +ATF_TC_BODY(strfmon_plus_or_parenthesis, tc) +{ + const struct { + const char *format; + const char *locale; + const char *expected; + } tests[] = { + { "%+n", "en_US.UTF-8", "[$123.45] [-$123.45]" }, + { "%+i", "en_US.UTF-8", "[USD123.45] [-USD123.45]" }, + { "%(n", "C", "[123.45] [(123.45)]" }, + { "%(i", "C", "[123.45] [(123.45)]" }, + { "%(n", "en_US.UTF-8", "[$123.45] [($123.45)]" }, + { "%(i", "en_US.UTF-8", "[USD123.45] [(USD123.45)]" }, + { "%n", "C", "[123.45] [(123.45)]" }, /* XXX */ + { "%i", "C", "[123.45] [(123.45)]" }, /* XXX */ + { "%n", "en_US.UTF-8", "[$123.45] [-$123.45]" }, + { "%i", "en_US.UTF-8", "[USD123.45] [-USD123.45]" }, + }; + size_t i; + char actual[100], format[50]; + + for (i = 0; i < nitems(tests); ++i) { + if (setlocale(LC_MONETARY, tests[i].locale) == NULL) + atf_tc_skip("unable to setlocale(): %s", + tests[i].locale); + + snprintf(format, sizeof(format), "[%s] [%s]", + tests[i].format, tests[i].format); + strfmon(actual, sizeof(actual) - 1, format, + 123.45, -123.45); + ATF_CHECK_STREQ_MSG(tests[i].expected, actual, + "[%s] %s", tests[i].format, tests[i].locale); + } + + /* + * The '+' flag was included in a conversion specification and + * the locale's positive_sign and negative_sign values would + * both be returned by localeconv() as empty strings. + */ + if (setlocale(LC_MONETARY, "C") == NULL) + atf_tc_skip("unable to setlocale(): %s", tests[i].locale); + + /* ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, + "[%+n] [%+n]", 123.45, -123.45)); XXX */ + + /* ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, + "[%+i] [%+i]", 123.45, -123.45)); XXX */ +} + ATF_TC(strfmon_l); ATF_TC_HEAD(strfmon_l, tc) { @@ -220,7 +253,7 @@ ATF_TC_BODY(strfmon_l, tc) const char *locale; const char *expected; } tests[] = { - { "C", "[ **1234.57 ] [ **1234.57 ]" }, + { "C", "[ **1234.57 ] [ **1234.57 ]" }, /* XXX */ { "de_DE.UTF-8", "[ **1234,57 €] [ **1.234,57 EUR]" }, { "en_GB.UTF-8", "[ £**1234.57] [ GBP**1,234.57]" }, }; @@ -247,6 +280,7 @@ ATF_TP_ADD_TCS(tp) ATF_TP_ADD_TC(tp, strfmon_cs_precedes_0); ATF_TP_ADD_TC(tp, strfmon_cs_precedes_1); ATF_TP_ADD_TC(tp, strfmon_international_currency_code); + ATF_TP_ADD_TC(tp, strfmon_plus_or_parenthesis); ATF_TP_ADD_TC(tp, strfmon_l); return (atf_no_error()); } From nobody Wed Dec 3 02:38:28 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLhdw5zHpz6Jfq5 for ; Wed, 03 Dec 2025 02:38:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLhdw3DyTz3sfd for ; Wed, 03 Dec 2025 02:38:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729508; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HipXXDWkxvf68bOcXG/Bxl+ccuNjm4Xltwa1/u4SpI8=; b=qxTz3y/HXY22zEEgLyHM9Gh8c6cYBxEKdQppK5bD0ISJOYIHdyNWwGs0ia+f61LQV5IT8p 2ZWanoB9gMmgRefzzNnt+BRbe4gbcEYmnyIVzAdkUtCAuCqHDiBfHgH5jBMEqmcTMkr0p0 LKEgcYxzotY4skBFBDdAVKSOMmJgj11BjK47/lhi38PbsJnhNKLptl0ekk6SiRQSKAqMYP DLyRMJXtUsM+z5x2xcow4gwNpz0ATLdsIdkAzZfp+OH3qT202OYwxfjaCRVjrtmnNz/X9Q 1UF48YJBWR7NX9BGYoVSaVa9UkpGBQ7CgIRdGsITHP6CHq7rc4zRDsetoiTkzQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729508; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HipXXDWkxvf68bOcXG/Bxl+ccuNjm4Xltwa1/u4SpI8=; b=I2ewsdwN/iepEZ0D2MIKpSnn7RfUdF1ho+/t8vQkdGVygqUmTIdwXdyefBdW0AVAwiPh6Z H8l3E9F9tnaolXkEqeMWmaPcEMudqPuJoCbWSdAGv3YEE3BH2ufYsATajv5pzdlunUV+kT 2qgFu1WKKVowvbf5/Mzc7Ln/hS5MMyYyXUSqbrqi1pxSOUnN+sOk3YZc5+XX59DRT68XGG 5+7o/imgVDjVGfJD6I5WWABDJpNWSWB8qAoIhqAe//THjMr/eLOyAAcM0QIV64g20NsI4z 60VjBTFGJxm+o1sY4ElnRKds/lQg6QRRnlMPgKrcHx4Sl0TYYlIM7DrAyvSs/w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764729508; a=rsa-sha256; cv=none; b=EGUgQRvd//+teLnLqLzkM6iXUZYNZ05IMMpL9mqvbMCt18kdUMpI4RYWsAa/M6hzxTpZ7o 7B1ZxZdYUI0mTMEg3N2FMcsz7kzSzpgahbBgHEW0fnhG0ojZysAtf+ktL4dYTkJn8EIapj bE/8HirSLyKRGvzH27msLYySfADYurvLYyeyXRSn6vr9rNRzK9ayNuhAeMsrjfZ5qMwwJv +A8uh6rY6Uv0gQTcmndRkRf6Dvb6ErKOXnafkDoV4NdE32qTXdioKjtjwLP1+pcqm6YpHk MZXGLxVeiuk78ncuw3ywlPPhgQtnwhXi8NmX6xxreRFmGLGKka2ORyD+bUJ5Qg== 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 4dLhdw2qzgz3tg for ; Wed, 03 Dec 2025 02:38:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30fac by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 02:38:28 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 8dc8e3011d05 - stable/14 - strfmon: EINVAL if the '+' flag and both signs are empty List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 8dc8e3011d05bdadb3e62fe99fbb054e33bfd8f2 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 02:38:28 +0000 Message-Id: <692fa2a4.30fac.47c41e8d@gitrepo.freebsd.org> The branch stable/14 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=8dc8e3011d05bdadb3e62fe99fbb054e33bfd8f2 commit 8dc8e3011d05bdadb3e62fe99fbb054e33bfd8f2 Author: Jose Luis Duran AuthorDate: 2025-11-26 20:34:55 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-03 02:34:21 +0000 strfmon: EINVAL if the '+' flag and both signs are empty According to the Open Group Base Specifications Issue 8[1], strfmon(3) should return EINVAL when the '+' flag was included in a conversion specification and the locale's positive_sign and negative_sign values would both be returned by localeconv(3) as empty strings. Austin Group Defect 1199[2] is applied, adding the [EINVAL] error. [1]: https://pubs.opengroup.org/onlinepubs/9799919799/functions/strfmon.html [2]: https://www.austingroupbugs.net/view.php?id=1199 Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53912 (cherry picked from commit 1fd018972a18b682521bb8f004dfd162327e5db2) --- lib/libc/stdlib/strfmon.3 | 12 +++++++++++- lib/libc/stdlib/strfmon.c | 4 +++- lib/libc/tests/stdlib/strfmon_test.c | 8 ++++---- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/lib/libc/stdlib/strfmon.3 b/lib/libc/stdlib/strfmon.3 index 20cc560d401d..d537d9d05fa7 100644 --- a/lib/libc/stdlib/strfmon.3 +++ b/lib/libc/stdlib/strfmon.3 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd December 6, 2023 +.Dd November 24, 2025 .Dt STRFMON 3 .Os .Sh NAME @@ -182,6 +182,16 @@ function will fail if: Conversion stopped due to lack of space in the buffer. .It Bq Er EINVAL The format string is invalid. +.It Bq Er EINVAL +The +.Cm + +flag was included in a conversion specification and the locale's +.Va positive_sign +and +.Va negative_sign +values would both be returned by +.Xr localeconv 3 +as empty strings. .It Bq Er ENOMEM Not enough memory for temporary buffers. .El diff --git a/lib/libc/stdlib/strfmon.c b/lib/libc/stdlib/strfmon.c index 230d194233f5..b19d9fc43369 100644 --- a/lib/libc/stdlib/strfmon.c +++ b/lib/libc/stdlib/strfmon.c @@ -171,7 +171,9 @@ literal: flags &= ~(NEED_GROUPING); continue; case '+': /* use locale defined signs */ - if (flags & SIGN_POSN_USED) + if ((flags & SIGN_POSN_USED) || + ((lc->positive_sign[0] == '\0') && + (lc->negative_sign[0] == '\0'))) goto format_error; flags |= (SIGN_POSN_USED | LOCALE_POSN); continue; diff --git a/lib/libc/tests/stdlib/strfmon_test.c b/lib/libc/tests/stdlib/strfmon_test.c index 3c97d61ba82c..165ddcc2ab56 100644 --- a/lib/libc/tests/stdlib/strfmon_test.c +++ b/lib/libc/tests/stdlib/strfmon_test.c @@ -234,11 +234,11 @@ ATF_TC_BODY(strfmon_plus_or_parenthesis, tc) if (setlocale(LC_MONETARY, "C") == NULL) atf_tc_skip("unable to setlocale(): %s", tests[i].locale); - /* ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, - "[%+n] [%+n]", 123.45, -123.45)); XXX */ + ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, + "[%+n] [%+n]", 123.45, -123.45)); - /* ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, - "[%+i] [%+i]", 123.45, -123.45)); XXX */ + ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, + "[%+i] [%+i]", 123.45, -123.45)); } ATF_TC(strfmon_l); From nobody Wed Dec 3 02:38:29 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLhdx5Wnrz6Jfq7 for ; Wed, 03 Dec 2025 02:38:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLhdx45gRz3sYp for ; Wed, 03 Dec 2025 02:38:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729509; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=N6agJsGQgMFpcNt1uNNI/dGkY5nKcxZYvXoiaFFOvbU=; b=PPZlEXwPFmIfn2zPhHRD8tGMZKmhFjGfETZtkEEhpcZvTKVvFybW0AXwsxF5MAckvy8aSb wHIu9ksllxWO2OGFl2oU3m9ppchMW8AQNMIdh5NhlwSOTy7qIJSNDhoZFY5Mv1LS6lva1v nfjYi8QuAMf+AeOtzTEpBfwOugTxNDIlZoH4MRcURWBRXb8QA7E73jRnnc+uvZa10kUINR SKFJPPGGfJbatxPytQ7Hn4rHd7KtM2okQ2vOecCxhXy8ZpIr/vQ4kjL9zhxpmsYlVGHs3F kWFpFwJIEEZuNaQ8Qg/hIvqbjAFtScc1ED8v+AexHmkxKe4Dl+jvqJCeC2hDZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729509; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=N6agJsGQgMFpcNt1uNNI/dGkY5nKcxZYvXoiaFFOvbU=; b=dd0Qc0P/hazOHXMGIiDe5bHdPAmcwYKF4vpeuh12IzmP4Yrxu4xTVDZ6ADwVjcYIsadMyZ GXdzdZwE7aTsveKjAzZc5zBf0u8Qv5o8zeiQcSwLD0qElsqIwnWp8gXTFBioNPYrqZVMkT +kA2bLNFVpKgVgmt6/1qvaZJCuiaNNvizUH2dc9FLXmROxr+k30eMOlTKdroV3/xdI/7tg Cuc6lq0UnfbDI+Wyly9xvn7yI6xsaiQSPiKbxTefwtWQEF5BhawYLJGhUrqBaEb7mFzsfQ KOC9BkItMo1Pl+3JydOQqVyGi9m8KsTJ3ptrfSJoevF5Le1svF4y41jcxVJZVQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764729509; a=rsa-sha256; cv=none; b=yRxu8xpzMkKMqXn+a3E3rcDqwa/7YaM26MH+WalX0zI9eH5N/0AF3s/F9H2QaNHxcE8U/B q7wih2VulAlh0U1caW2tucrI9U377CJ1qY3MyOv/Kj/9/yNnBwUcznnP7eEYAQEGDkchgY 1t9Cc8IPQ1M2OCQ08Up1K3jyU6rObJ9wZRxQIqfbib+KROu5JU5w8EBImvB7/xZDjnr5Z/ GxwOgaNYQbd9STvwHfxV89AcwbEVQHjByewUoszpkVKtm0ZjvmFFjYZchxpTAk0MfCnOWh cGSP9bG+kpBsDC/lbSPA+3PbUF4w9RwrbpEPx/LjJ69HTj9wdq4mhJ+b7rlRAQ== 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 4dLhdx3dqGz3Ml for ; Wed, 03 Dec 2025 02:38:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2f86a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 02:38:29 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 1869d604e22d - stable/14 - strfmon: Fix negative sign handling for C locale List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1869d604e22d88c8c7487cd8a547de42847a40be Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 02:38:29 +0000 Message-Id: <692fa2a5.2f86a.6c439f47@gitrepo.freebsd.org> The branch stable/14 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=1869d604e22d88c8c7487cd8a547de42847a40be commit 1869d604e22d88c8c7487cd8a547de42847a40be Author: Jose Luis Duran AuthorDate: 2025-11-26 20:34:56 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-03 02:34:33 +0000 strfmon: Fix negative sign handling for C locale If the locale's positive_sign and negative_sign values would both be returned by localeconv() as empty strings, strfmon() shall behave as if the negative_sign value was the string "-". This occurs with the C locale. The implementation previously assigned "0" to sign_posn (parentheses around the entire string); now it assigns it to "1" (sign before the string) when it is undefined (CHAR_MAX). Austin Group Defect 1199[1] is applied, changing the requirements for the '+' and '(' flags. [1]: https://www.austingroupbugs.net/view.php?id=1199 Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53913 (cherry picked from commit cf85e7034ad5640b18a3b68d6b291b7bf89bfc80) --- lib/libc/stdlib/strfmon.c | 2 +- lib/libc/tests/stdlib/strfmon_test.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/libc/stdlib/strfmon.c b/lib/libc/stdlib/strfmon.c index b19d9fc43369..611ac45b9c82 100644 --- a/lib/libc/stdlib/strfmon.c +++ b/lib/libc/stdlib/strfmon.c @@ -457,7 +457,7 @@ __setup_vars(int flags, char *cs_precedes, char *sep_by_space, char *sign_posn, if (*sep_by_space == CHAR_MAX) *sep_by_space = 0; if (*sign_posn == CHAR_MAX) - *sign_posn = 0; + *sign_posn = 1; } static int diff --git a/lib/libc/tests/stdlib/strfmon_test.c b/lib/libc/tests/stdlib/strfmon_test.c index 165ddcc2ab56..c6c20bd26985 100644 --- a/lib/libc/tests/stdlib/strfmon_test.c +++ b/lib/libc/tests/stdlib/strfmon_test.c @@ -205,8 +205,8 @@ ATF_TC_BODY(strfmon_plus_or_parenthesis, tc) { "%(i", "C", "[123.45] [(123.45)]" }, { "%(n", "en_US.UTF-8", "[$123.45] [($123.45)]" }, { "%(i", "en_US.UTF-8", "[USD123.45] [(USD123.45)]" }, - { "%n", "C", "[123.45] [(123.45)]" }, /* XXX */ - { "%i", "C", "[123.45] [(123.45)]" }, /* XXX */ + { "%n", "C", "[123.45] [-123.45]" }, + { "%i", "C", "[123.45] [-123.45]" }, { "%n", "en_US.UTF-8", "[$123.45] [-$123.45]" }, { "%i", "en_US.UTF-8", "[USD123.45] [-USD123.45]" }, }; @@ -253,7 +253,7 @@ ATF_TC_BODY(strfmon_l, tc) const char *locale; const char *expected; } tests[] = { - { "C", "[ **1234.57 ] [ **1234.57 ]" }, /* XXX */ + { "C", "[ **1234.57] [ **1234.57]" }, { "de_DE.UTF-8", "[ **1234,57 €] [ **1.234,57 EUR]" }, { "en_GB.UTF-8", "[ £**1234.57] [ GBP**1,234.57]" }, }; From nobody Wed Dec 3 02:38:26 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLhdz2ztYz6JfqB for ; Wed, 03 Dec 2025 02:38:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLhdt1rMmz3sLX for ; Wed, 03 Dec 2025 02:38:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729506; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hi+wf1IHU+iC5hrQ5d69/atRKuGJY8Z8ibRmWEZjpWI=; b=xCpwnRPSAvT27wnLlBGxkMBx4Cp78VxMt6XDkpNztWTz4XJAzTehRNd9qgrRpiWcGizrq/ yYodcq5hO7WNVICldnhgawE7YJ2jCsQS/oopoKvxmbOOxE22gByyMEYoxKpCO7LtPNDyB1 YzPzlfWHh/ZYzVKg6GutTZ8VFQCDMcFMiKqxIgJ6T4tZ+xgHefPbWf93L1jTi5KZH4POKI Xkh4Ky6dsh8pQC7sM0gOsiYi+wqVm1Bp+rMyeDiLdRcyAUiQsDCrES3yjy4PgQYcRwemPq ZZ3MZFiKJTajZLAes6p4tWRoPXHT8GxtC4NjkHcnePiFFrVum/N4j3yN5SIVew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729506; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hi+wf1IHU+iC5hrQ5d69/atRKuGJY8Z8ibRmWEZjpWI=; b=APr4zfFJedfaDAJ2f7X9JCGm8y49OTzfHb/r1frTxmT2ilPcuBHaZ3nrqTGtumUyE2Yji5 3NcsrosbgVQR3oHybv7BKl2uAc4jOUeKyDeaH1VInRu24FfldGsXjJsPpeucoQ7/rcggZn jQrk++37jUAL3Xs0KQI/YZg/GBun48cc66W04ZIjw0fQQ0Y1548lSKvFQPU8P49/qO+xMI nHhRFNNc0ExQS5ENz+Fkbj+6ySmnud3OwLVlb40QDnU5eT0ay04WmoGaWqSdoV1g4qKr/p NQoS0l2e5QWHNhGCGo0n84ztZf121/g3n+nAHb6D88GqlNBi21vpibSdJFAAoQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764729506; a=rsa-sha256; cv=none; b=FsnD3gzc9sw7CO2Hletu873XcQgAi8xt9JigZfAwECRVPItu6F90tUZqp2O5nXZagjmsoV 7r9JlyhS/A+9yROAKyVGPwFj/z9mgxJUVH5inEjlRo7AHedIY8fiGIMbqfGign0Ol0iWww FmFfAsoVqo6pWC+czlFeXIwTzpK1ejgK8/yjlRxRD4Cson3MmqJqtwTl8jzTfWtLGSloQI puaZewClMkD4wMOI3XbJHC0KPEt1SEPCbrUn8SwraXNq8e8uH32qU5WKCRGx+2Cp+yCIXV vZ6eotJTtWxJ/g/V5YoaFvp0YXEL/6BtMyIevzi/87V6evSFoexDtXRpGn534A== 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 4dLhdt1Dhdz3q8 for ; Wed, 03 Dec 2025 02:38:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2f7b3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 02:38:26 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: f830e53fc085 - stable/14 - strfmon: Fix typo s/poistion/position/ List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f830e53fc0850e58790ee8c58552a9f049244fd4 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 02:38:26 +0000 Message-Id: <692fa2a2.2f7b3.28b205a1@gitrepo.freebsd.org> The branch stable/14 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=f830e53fc0850e58790ee8c58552a9f049244fd4 commit f830e53fc0850e58790ee8c58552a9f049244fd4 Author: Jose Luis Duran AuthorDate: 2025-11-23 16:58:55 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-03 02:33:57 +0000 strfmon: Fix typo s/poistion/position/ MFC after: 1 week (cherry picked from commit 91e7f19ec4056587a85c1461a4f34a6d5d4b7b52) --- lib/libc/stdlib/strfmon.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libc/stdlib/strfmon.c b/lib/libc/stdlib/strfmon.c index 68a36a6d5567..230d194233f5 100644 --- a/lib/libc/stdlib/strfmon.c +++ b/lib/libc/stdlib/strfmon.c @@ -106,7 +106,7 @@ vstrfmon_l(char *__restrict s, size_t maxsize, locale_t loc, const char *__restrict format, va_list ap) { char *dst; /* output destination pointer */ - const char *fmt; /* current format poistion pointer */ + const char *fmt; /* current format position pointer */ struct lconv *lc; /* pointer to lconv structure */ char *asciivalue; /* formatted double pointer */ From nobody Wed Dec 3 02:38:50 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLhfL6nDwz6JfqP for ; Wed, 03 Dec 2025 02:38:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLhfL4k2Qz3t8p for ; Wed, 03 Dec 2025 02:38:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729530; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BR3ZEbI0nb/nH0bAPpW0TgsHtCLG/+x+LyQuGXhYk5c=; b=WNSfZKAdHrXoLN9JfN1jnKUas+DcJkWGUgJIcDOLTnLa/Dcq0VberchRqOmTJcPdfzCVAX 4xvH+0FBJ+2V1PgoSll5cDw975V2hjGlgcVVfIe2J1iOTK0ClhMtSgnXyD/8N4b7nHVNXK swawPPYYZjwxOj8hjrEQpyrzlmTkyj3DX89K6UCouTqn3wAbPOZuQRkU6yx/ukP33CE69g cX/abzNzy09fDqTavjjqY4E1AE0cccdHCW3PttePBNhrLsxE2RzqwWU6Pmm/clryAg0zqW squwjPHzkQOltZHNHUbrqhwktVm8+xLA6GW1HS5xh0B0SPEis9wShuJLjfLwpg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729530; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BR3ZEbI0nb/nH0bAPpW0TgsHtCLG/+x+LyQuGXhYk5c=; b=IEzxdwhiymzqyIFHLADCTwFB2EHpKo/hQomqkTqUgu4ibNGuP1hcpfZeUUg4hGEqV7jf0S L1IYtp8zVQIqa0M1ccIgvh5andK0UZ7f8Sq1dzRCLyTQMfe9x4QmjFDnlRiU0r/eL6NQzZ 4rdAzAfgC77LYHIvp9oxgLXTeN04uTIzuc+Ly05qDHeOoVdXK5tQP4Vn5MkV/9ftZpUtfo TpDUKs++HMWTCmVGjm0InLZ9xRxulM0cvT0piYMGm02trE//v1C1Iwf+cQ0SePCH9ryBR+ zQS62nmJxYvIt1EA780k+cha3BajgTyDHJhx5/MomQ/qjco7943M8nG7B+YBhg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764729530; a=rsa-sha256; cv=none; b=N3By3/RoHEDcdrEy7PK47aAEusA5/Gty1J2OWCC4Jj8mUxWdGTefJ5DlWFESfw/fWP0Kpi GRpRvvTUT/KT3UNtDL/VScMGSOEaF6sgRbES1ZRyCvJaqoVd+jgTSOKY5bDg0gquHlifWo mSSlbiXdabW8QeENrNv/MTiRdw6XaUqnFCGnnFU5jIsH9w7XP4iNydxZHGao/wnIHjkf8J TCE0bMd/rglEwmRtlX0a7BkG7jLK1GdQcmMK6t+E1Wx8pRGeYKLi81AMFD1amGI62ncLi/ i+f8lFrcCWy0XmYdPdYrKvYbEwRD4SAD5I4ZlPMOK//YouC+POovU7H6w4Z7bA== 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 4dLhfL4GtHz39B for ; Wed, 03 Dec 2025 02:38:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2ffc0 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 02:38:50 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 6cccf4db1346 - stable/13 - strfmon: Fix typo s/poistion/position/ List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6cccf4db1346d64dcd8b2247e8d597e220dadf02 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 02:38:50 +0000 Message-Id: <692fa2ba.2ffc0.3d28fb13@gitrepo.freebsd.org> The branch stable/13 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=6cccf4db1346d64dcd8b2247e8d597e220dadf02 commit 6cccf4db1346d64dcd8b2247e8d597e220dadf02 Author: Jose Luis Duran AuthorDate: 2025-11-23 16:58:55 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-03 02:35:07 +0000 strfmon: Fix typo s/poistion/position/ MFC after: 1 week (cherry picked from commit 91e7f19ec4056587a85c1461a4f34a6d5d4b7b52) --- lib/libc/stdlib/strfmon.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libc/stdlib/strfmon.c b/lib/libc/stdlib/strfmon.c index d3efc9080c09..caccbdb476b0 100644 --- a/lib/libc/stdlib/strfmon.c +++ b/lib/libc/stdlib/strfmon.c @@ -107,7 +107,7 @@ vstrfmon_l(char *__restrict s, size_t maxsize, locale_t loc, const char *__restrict format, va_list ap) { char *dst; /* output destination pointer */ - const char *fmt; /* current format poistion pointer */ + const char *fmt; /* current format position pointer */ struct lconv *lc; /* pointer to lconv structure */ char *asciivalue; /* formatted double pointer */ From nobody Wed Dec 3 02:38:51 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLhfM6b2Fz6Jfj1 for ; Wed, 03 Dec 2025 02:38:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLhfM5N3pz3tRP for ; Wed, 03 Dec 2025 02:38:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729531; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bwvpmyA6Qs7MUHyVjKxu5Fw2T7Y+2OIn/sItq7+hQ+Y=; b=UoYVTl54hScZe1r6soWZ9JGgOB7TqKJMFSLa0eiI0e5Heayw/glukm2ciMTjwcfOTe1vIb qjH2hoL9iCNYHbTN+0GUlI0c6f2aEN5OV6fnJvC5JoM4S1sG9edi48NWBub/bW01yPJ9xN +9A9BQqmEcyMM0R1s3qUrELsWi7zMcYV4y6Vt0YZuN3WhqWTzaswgH1ILik+zDjA2ywOUE HzwbKSRNPSt2AYMYkFEkI3s7k+6JXilHtA8qnkBlmGZ21D5+1vn9WE99oS+IkENo5znz08 +HYISoxhNSjDsrMO6XNdC8ZNzQwwbywPMlpskXmh7CIueTV/2Vbr9+WfThD7Cg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729531; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bwvpmyA6Qs7MUHyVjKxu5Fw2T7Y+2OIn/sItq7+hQ+Y=; b=Dg9Qbe3KMHvVwyCr58LQIxrdm4ga6Z8+pYcRf9Q79QNuljBM/hk57zI5JTuMq6oZFJEKwL FfobQ002A0Zn/kZqc6IYyMHDa59rygjKQJpFpYTSVre2ndzkyEMwEUuCgJHAmDZKB6tF6/ vTTntNoMCoMZOeEk1fak5HcetGriIRTjD882LqPZvoDMxZxzxn8Rmh8ixSpCd36LxE9N3d 7OMW8N6sENbyPJ7wfyLMzjAekIKH3C9ttJs1sk+2s2cFlulVp8XRO6NVUMpmFZ5KmrC+rf sRvi1jAfDk9zdfECzLVtzGJ/W1qKsstwD+XlBGgvveIN1HFxCfQkLAQnFSEq5A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764729531; a=rsa-sha256; cv=none; b=oEUAeEoMH/QNegb730LnuyEXpZJnegl3ENkW8uiaeBdIs9QgtIDdTfvqp3HP2js/zHsAL5 c/yZ6UeCJvILAynEjDZvPeesnJS2eTt2o0ilX4d/WVsJuCuf/JOacTuy68/ASsZBgkSGum 2hgPnU0MTvWayRuCQpkAdKaTXsYLgMqj4LpYzKR0mWLjhpA5ldTx+y72H67klUjuyTkAzh fJ+d+MT+ajl4u9HF9UzxtoPawCihvbpt3hDYhichEYrcLm9Fq2pB1fK5iA3fBdWwTHpXcZ aKlzODVnFrusaOUzlmH8JGS/p1iWWqf7sG6a71nLo+h4PvtzvKqlISBcwXKYmw== 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 4dLhfM4x5lz3Mm for ; Wed, 03 Dec 2025 02:38:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30892 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 02:38:51 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 33189f868ab9 - stable/13 - strfmon: Add tests for Austin Group Defect 1199 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 33189f868ab9d2c672413916b6510c856db3dd4c Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 02:38:51 +0000 Message-Id: <692fa2bb.30892.22fe3109@gitrepo.freebsd.org> The branch stable/13 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=33189f868ab9d2c672413916b6510c856db3dd4c commit 33189f868ab9d2c672413916b6510c856db3dd4c Author: Jose Luis Duran AuthorDate: 2025-11-26 20:34:55 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-03 02:35:23 +0000 strfmon: Add tests for Austin Group Defect 1199 Add tests for The Open Group Base Specifications Issue 8[1], Austin Group Defect 1199[2]. Items marked with XXX represent an invalid output. These items will be fixed in subsequent commits. Notice that an existing test is now considered invalid. Our locale definitions do not include int_p_sep_by_space nor int_n_sep_by_space[3]. Those will be addressed in a subsequent commit. However, the CLDR project defines them as "0", which causes the output to appear as "USD123.45". If our locale definitions were to set the international {n,p}_sep_by_space to "1", the output would display as the expected "USD 123.45". While here, use the SPDX license identifier and add my name to the file. [1]: https://pubs.opengroup.org/onlinepubs/9799919799/functions/strfmon.html [2]: https://www.austingroupbugs.net/view.php?id=1199 [3]: https://unicode-org.atlassian.net/browse/CLDR-237 Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53911 (cherry picked from commit 19e153004fb63c32eba0ef40249f5ede61a93170) --- lib/libc/tests/stdlib/strfmon_test.c | 80 +++++++++++++++++++++++++----------- 1 file changed, 57 insertions(+), 23 deletions(-) diff --git a/lib/libc/tests/stdlib/strfmon_test.c b/lib/libc/tests/stdlib/strfmon_test.c index f092c071724a..0126c2f3f8a8 100644 --- a/lib/libc/tests/stdlib/strfmon_test.c +++ b/lib/libc/tests/stdlib/strfmon_test.c @@ -1,32 +1,15 @@ -/*- - * Copyright (C) 2018 Conrad Meyer +/* + * Copyright (c) 2018 Conrad Meyer * All rights reserved. + * Copyright (c) 2022-2025 Jose Luis Duran * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. + * SPDX-License-Identifier: BSD-2-Clause */ #include #include +#include #include #include #include @@ -209,6 +192,56 @@ ATF_TC_BODY(strfmon_international_currency_code, tc) } } +ATF_TC_WITHOUT_HEAD(strfmon_plus_or_parenthesis); +ATF_TC_BODY(strfmon_plus_or_parenthesis, tc) +{ + const struct { + const char *format; + const char *locale; + const char *expected; + } tests[] = { + { "%+n", "en_US.UTF-8", "[$123.45] [-$123.45]" }, + { "%+i", "en_US.UTF-8", "[USD123.45] [-USD123.45]" }, + { "%(n", "C", "[123.45] [(123.45)]" }, + { "%(i", "C", "[123.45] [(123.45)]" }, + { "%(n", "en_US.UTF-8", "[$123.45] [($123.45)]" }, + { "%(i", "en_US.UTF-8", "[USD123.45] [(USD123.45)]" }, + { "%n", "C", "[123.45] [(123.45)]" }, /* XXX */ + { "%i", "C", "[123.45] [(123.45)]" }, /* XXX */ + { "%n", "en_US.UTF-8", "[$123.45] [-$123.45]" }, + { "%i", "en_US.UTF-8", "[USD123.45] [-USD123.45]" }, + }; + size_t i; + char actual[100], format[50]; + + for (i = 0; i < nitems(tests); ++i) { + if (setlocale(LC_MONETARY, tests[i].locale) == NULL) + atf_tc_skip("unable to setlocale(): %s", + tests[i].locale); + + snprintf(format, sizeof(format), "[%s] [%s]", + tests[i].format, tests[i].format); + strfmon(actual, sizeof(actual) - 1, format, + 123.45, -123.45); + ATF_CHECK_STREQ_MSG(tests[i].expected, actual, + "[%s] %s", tests[i].format, tests[i].locale); + } + + /* + * The '+' flag was included in a conversion specification and + * the locale's positive_sign and negative_sign values would + * both be returned by localeconv() as empty strings. + */ + if (setlocale(LC_MONETARY, "C") == NULL) + atf_tc_skip("unable to setlocale(): %s", tests[i].locale); + + /* ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, + "[%+n] [%+n]", 123.45, -123.45)); XXX */ + + /* ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, + "[%+i] [%+i]", 123.45, -123.45)); XXX */ +} + ATF_TC(strfmon_l); ATF_TC_HEAD(strfmon_l, tc) { @@ -221,7 +254,7 @@ ATF_TC_BODY(strfmon_l, tc) const char *locale; const char *expected; } tests[] = { - { "C", "[ **1234.57 ] [ **1234.57 ]" }, + { "C", "[ **1234.57 ] [ **1234.57 ]" }, /* XXX */ { "de_DE.UTF-8", "[ **1234,57 €] [ **1.234,57 EUR]" }, { "en_GB.UTF-8", "[ £**1234.57] [ GBP**1,234.57]" }, }; @@ -248,6 +281,7 @@ ATF_TP_ADD_TCS(tp) ATF_TP_ADD_TC(tp, strfmon_cs_precedes_0); ATF_TP_ADD_TC(tp, strfmon_cs_precedes_1); ATF_TP_ADD_TC(tp, strfmon_international_currency_code); + ATF_TP_ADD_TC(tp, strfmon_plus_or_parenthesis); ATF_TP_ADD_TC(tp, strfmon_l); return (atf_no_error()); } From nobody Wed Dec 3 02:38:52 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLhfP15pXz6Jfsd for ; Wed, 03 Dec 2025 02:38:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLhfN614vz3tJX for ; Wed, 03 Dec 2025 02:38:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729532; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3J0KJ1nLDC2TgHqKWy+6VWD830JorenojGy9gvhw3VE=; b=x671wWvqeWy2/DJDr03/FfkwYppqlVHlUnDhG9g+ZMNnC2/nZdSMTXtU1Fz1rGoJqffmRa LMMC15R/R+CFsHXp7K61JHTmGT8SDsmeJ/CGNB4E05mF3Blv5KrEtPHXPF9Smm8Du06gnP 5swK8d4Mr0KXxVVYhHqZoImmI14qdQjmSPqndNeo8Tk3+r3ceFV8xtHwrEbBY3JOn1hm8d FedTa8vftS5h9a5KKXZEFCihjZVDoqtQiLau0mKuiiNkXSATxTM3+Uk/ASVeSCMfvRv+VD IkkXSQLLu5kl4UtARYZn9wOf3SbXWhCqJAhFx5Lv3q/yoIox2d6BnFbWimov5w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729532; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3J0KJ1nLDC2TgHqKWy+6VWD830JorenojGy9gvhw3VE=; b=orqbNkSbkE4nd7WpSV6elvBWYXtaD3YvlTWPVw+ncf7tWRuXGyA3MDrwV1d6IwkSwpWDq2 bPlTQjZLo3hFC07/nkc1N48kGhvBVTcMRVyzcEk/sWz1oHr2HHreCDu0o1WhY24t+/I0DW b/mBOnzlePo9wa2SsGHYxmOQSf1A9evAnb3klD0ilmuxvA7JmOn4YwiMeFD7JMBPByK6sg CDALgN7x8Qb0Of73CKJsF5HX0P6STEMeXahzM22FqD+3QDMEslseApQEvywY2YubIy/VXF O/5QvknTH78lap56kTwsE1SIRce5jkFO+BVFUFjZIcBZwwZMPtKy4wdiFVrzrA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764729532; a=rsa-sha256; cv=none; b=Y8/B59Ct89FIEH5o1yrLpPx9KtFtcNWACEgqbQvTvC58zV4U7xFKLZJg/WzMXvKv5qdRQb EUeaW2dIalKWbaL7bXPGPX35F6sa/Exc6yxR5IruZrHcBIhhy9IzEsRM1k5r/49izA6t8Y EwSmz7EeVjShU19gWCwLpPM69dWqwzEQbR3Sok4T3VgmTfEVdGkcNBD2ICI3oUZDOCHCoK inkoNPnJ668SJOodKTbWSRLeya0Hw6ErHsEA2TJ9Nnj6O/2nJAQ0tR5ywznqsU9smoqpbk va2cZ96cTGV3EAcMO/i2Mt9X640/hh1c3k2ZUElzzJh+OKbWZ/ifi+2WiOt+/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 4dLhfN5YpBz3Mr for ; Wed, 03 Dec 2025 02:38:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 307a5 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 02:38:52 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 6b0e99570fa2 - stable/13 - strfmon: EINVAL if the '+' flag and both signs are empty List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6b0e99570fa208cc299c047591b7ded7b1b9a58d Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 02:38:52 +0000 Message-Id: <692fa2bc.307a5.3aab421@gitrepo.freebsd.org> The branch stable/13 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=6b0e99570fa208cc299c047591b7ded7b1b9a58d commit 6b0e99570fa208cc299c047591b7ded7b1b9a58d Author: Jose Luis Duran AuthorDate: 2025-11-26 20:34:55 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-03 02:35:42 +0000 strfmon: EINVAL if the '+' flag and both signs are empty According to the Open Group Base Specifications Issue 8[1], strfmon(3) should return EINVAL when the '+' flag was included in a conversion specification and the locale's positive_sign and negative_sign values would both be returned by localeconv(3) as empty strings. Austin Group Defect 1199[2] is applied, adding the [EINVAL] error. [1]: https://pubs.opengroup.org/onlinepubs/9799919799/functions/strfmon.html [2]: https://www.austingroupbugs.net/view.php?id=1199 Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53912 (cherry picked from commit 1fd018972a18b682521bb8f004dfd162327e5db2) --- lib/libc/stdlib/strfmon.3 | 12 +++++++++++- lib/libc/stdlib/strfmon.c | 4 +++- lib/libc/tests/stdlib/strfmon_test.c | 8 ++++---- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/lib/libc/stdlib/strfmon.3 b/lib/libc/stdlib/strfmon.3 index 20cc560d401d..d537d9d05fa7 100644 --- a/lib/libc/stdlib/strfmon.3 +++ b/lib/libc/stdlib/strfmon.3 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd December 6, 2023 +.Dd November 24, 2025 .Dt STRFMON 3 .Os .Sh NAME @@ -182,6 +182,16 @@ function will fail if: Conversion stopped due to lack of space in the buffer. .It Bq Er EINVAL The format string is invalid. +.It Bq Er EINVAL +The +.Cm + +flag was included in a conversion specification and the locale's +.Va positive_sign +and +.Va negative_sign +values would both be returned by +.Xr localeconv 3 +as empty strings. .It Bq Er ENOMEM Not enough memory for temporary buffers. .El diff --git a/lib/libc/stdlib/strfmon.c b/lib/libc/stdlib/strfmon.c index caccbdb476b0..2dfc7d99510e 100644 --- a/lib/libc/stdlib/strfmon.c +++ b/lib/libc/stdlib/strfmon.c @@ -172,7 +172,9 @@ literal: flags &= ~(NEED_GROUPING); continue; case '+': /* use locale defined signs */ - if (flags & SIGN_POSN_USED) + if ((flags & SIGN_POSN_USED) || + ((lc->positive_sign[0] == '\0') && + (lc->negative_sign[0] == '\0'))) goto format_error; flags |= (SIGN_POSN_USED | LOCALE_POSN); continue; diff --git a/lib/libc/tests/stdlib/strfmon_test.c b/lib/libc/tests/stdlib/strfmon_test.c index 0126c2f3f8a8..7fc0afc9e229 100644 --- a/lib/libc/tests/stdlib/strfmon_test.c +++ b/lib/libc/tests/stdlib/strfmon_test.c @@ -235,11 +235,11 @@ ATF_TC_BODY(strfmon_plus_or_parenthesis, tc) if (setlocale(LC_MONETARY, "C") == NULL) atf_tc_skip("unable to setlocale(): %s", tests[i].locale); - /* ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, - "[%+n] [%+n]", 123.45, -123.45)); XXX */ + ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, + "[%+n] [%+n]", 123.45, -123.45)); - /* ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, - "[%+i] [%+i]", 123.45, -123.45)); XXX */ + ATF_CHECK_ERRNO(EINVAL, strfmon(actual, sizeof(actual) - 1, + "[%+i] [%+i]", 123.45, -123.45)); } ATF_TC(strfmon_l); From nobody Wed Dec 3 02:38:53 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLhfQ44Rjz6JfqV for ; Wed, 03 Dec 2025 02:38:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLhfQ0HZCz3tRk for ; Wed, 03 Dec 2025 02:38:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729534; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vRvDgoP4nJVK4UqUGidNDF/2O6RAKzVX+XfilbDg/EM=; b=mSrerb/SQhMPXa6e5S1yqfdoYFqyBAl2huI4t5TMj0J9DfgeZGTp3s4OlXQZwIPKDpHthA gfoPot020boLGWgrMeQZ6JBm69AubeKpsq5eMAGTCV4rZc9S91+WihNvmiOpIsutemkWUu btFzbJOe3azI+Br23CfmWsSkZ7hRatw1gnb7V4El8jSiOXLUHUN9o8hHBr3qmi6z5qj7Bg q3DGFv9XVDTbcqQVvbi8/eahYR6fCdrtHhan9DR7cEWv93SvoJyJ11WVXUWr9SjvM+0mRD L9wO4hGxaCfbTmdWtxBS8PPv/Vp+wJx2vko8cJXu2A3aGTxi4ogC6ueMtbE00g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764729534; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vRvDgoP4nJVK4UqUGidNDF/2O6RAKzVX+XfilbDg/EM=; b=KY6MGSpsmR9Me7fLHN1vPAcebKevTDPHffKWR/ufLQ7FHBwhKxl1PDEcAXPs5yjzpcsno1 oxFypa5coxyFj7SyAlCmAGggG8sqizd7XNQ6rsbuJzNUeCwjcFTBcS58lD5NGHvr73XD8r Us5JgSelauhT9Y0f3OO4IwGs3B32PQJzULUdxg3S33PTwf/bs0E8qzMDN3V4zuDJDfTSOx Fu/RhRvpEpdxL24PKOjTzdzH6btInAq69Nbmo3O3cOUCNDwyUHnhxQ95aEio2A+rt3B/UQ p+xxoIgyiK3iTJu8OKZ6+8M/cOPIGBbGtvz9wE8W11f8yhtBFJORUyEMjlsK6A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764729534; a=rsa-sha256; cv=none; b=u8/OSG9vw/QBx27n7u356qs4IYTFu2JvZ837Dl/2ejgxPhBGKSS2Q+kXlZugdokQfhgi59 E9ZAMuU/f71h8GkFTIE8brdBghXX0euEx0522xVnsGSz5SLI6S+A5YjQNC0iBjfPgHpr90 PQ7F1IKxoURTdK6slvUYHdYfkOAyoedGxNvEwM35SoQvuqZGP+r4d/XF0ECvOI9lS3kVUV FtnCljAQGpR+udmFo1SHjCmbX8CEQZg6ZKV+9xZjuSnje0dbQtguKzAAAkwQy6hBuKweaS ZZYXDngXCz3JyYQEl146xwh09gMp8+4Wpei80Q5jtaGa8Ectlr167pL+4DRzTA== 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 4dLhfP6LJZz3qF for ; Wed, 03 Dec 2025 02:38:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2f86e by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 02:38:53 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Jose Luis Duran Subject: git: 02a810d9b4cc - stable/13 - strfmon: Fix negative sign handling for C locale List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jlduran X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 02a810d9b4cc8b3cd30d7e6bfe01b5e3c68ee492 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 02:38:53 +0000 Message-Id: <692fa2bd.2f86e.32b7985b@gitrepo.freebsd.org> The branch stable/13 has been updated by jlduran: URL: https://cgit.FreeBSD.org/src/commit/?id=02a810d9b4cc8b3cd30d7e6bfe01b5e3c68ee492 commit 02a810d9b4cc8b3cd30d7e6bfe01b5e3c68ee492 Author: Jose Luis Duran AuthorDate: 2025-11-26 20:34:56 +0000 Commit: Jose Luis Duran CommitDate: 2025-12-03 02:35:56 +0000 strfmon: Fix negative sign handling for C locale If the locale's positive_sign and negative_sign values would both be returned by localeconv() as empty strings, strfmon() shall behave as if the negative_sign value was the string "-". This occurs with the C locale. The implementation previously assigned "0" to sign_posn (parentheses around the entire string); now it assigns it to "1" (sign before the string) when it is undefined (CHAR_MAX). Austin Group Defect 1199[1] is applied, changing the requirements for the '+' and '(' flags. [1]: https://www.austingroupbugs.net/view.php?id=1199 Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D53913 (cherry picked from commit cf85e7034ad5640b18a3b68d6b291b7bf89bfc80) --- lib/libc/stdlib/strfmon.c | 2 +- lib/libc/tests/stdlib/strfmon_test.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/libc/stdlib/strfmon.c b/lib/libc/stdlib/strfmon.c index 2dfc7d99510e..7a4e1093fc4d 100644 --- a/lib/libc/stdlib/strfmon.c +++ b/lib/libc/stdlib/strfmon.c @@ -458,7 +458,7 @@ __setup_vars(int flags, char *cs_precedes, char *sep_by_space, char *sign_posn, if (*sep_by_space == CHAR_MAX) *sep_by_space = 0; if (*sign_posn == CHAR_MAX) - *sign_posn = 0; + *sign_posn = 1; } static int diff --git a/lib/libc/tests/stdlib/strfmon_test.c b/lib/libc/tests/stdlib/strfmon_test.c index 7fc0afc9e229..a112fbf65c1d 100644 --- a/lib/libc/tests/stdlib/strfmon_test.c +++ b/lib/libc/tests/stdlib/strfmon_test.c @@ -206,8 +206,8 @@ ATF_TC_BODY(strfmon_plus_or_parenthesis, tc) { "%(i", "C", "[123.45] [(123.45)]" }, { "%(n", "en_US.UTF-8", "[$123.45] [($123.45)]" }, { "%(i", "en_US.UTF-8", "[USD123.45] [(USD123.45)]" }, - { "%n", "C", "[123.45] [(123.45)]" }, /* XXX */ - { "%i", "C", "[123.45] [(123.45)]" }, /* XXX */ + { "%n", "C", "[123.45] [-123.45]" }, + { "%i", "C", "[123.45] [-123.45]" }, { "%n", "en_US.UTF-8", "[$123.45] [-$123.45]" }, { "%i", "en_US.UTF-8", "[USD123.45] [-USD123.45]" }, }; @@ -254,7 +254,7 @@ ATF_TC_BODY(strfmon_l, tc) const char *locale; const char *expected; } tests[] = { - { "C", "[ **1234.57 ] [ **1234.57 ]" }, /* XXX */ + { "C", "[ **1234.57] [ **1234.57]" }, { "de_DE.UTF-8", "[ **1234,57 €] [ **1.234,57 EUR]" }, { "en_GB.UTF-8", "[ £**1234.57] [ GBP**1,234.57]" }, }; From nobody Wed Dec 3 04:06:41 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLkbj4FH7z6Jm9Q for ; Wed, 03 Dec 2025 04:06:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLkbj0Z2Pz44bD for ; Wed, 03 Dec 2025 04:06:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764734801; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vjuLkVUlrZLh795+AtgKXHT8nzrcFQr0XGMI+lbsxgQ=; b=EdpSbaYHrX6UqROXuIvXaG7PkCP4VATpD6Q04SUZ28mqbaqAHmqDRckbHaMiVTEhXgh5CE Q0QI1m35CE0Ko9kOXb5RlhZoP44K/RYLZK8/8n5qgAXLqHcN+3GnrXpib1KAOsw8321PXj 1ZJuHxBf+dKS3uHteKRpTQOjyXgR5ClTAO7Eg5mzdYbqPvYxYY1jXIjxpyCGgJ1AGYM9Xp ZraMXJliFBPpZnXwMSFPmuHZcevyHyf8Z6+qEsC9bgNoMYfr5Z9h/dv+pVLDu0gUBMNuSl SklmY0RoB51I7n7jFUKa9ExQcdyGCBQjaX6XcpMaE/G/eTHMgKteeIEg8APsXA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764734801; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vjuLkVUlrZLh795+AtgKXHT8nzrcFQr0XGMI+lbsxgQ=; b=se66v4B1cupa9iH9NJ7DKCI0uIVynd8pZC6M9ciXcEXRSLlHyLejRK/wNNQcNW+97nh18z IggU6o0JD6zhTvxxNJVwWTzYGsWHPhkUv0AXJETbtlLCvTFDCFafUf8MPMdgfFVS21D/GS MC0ZwN6NQcFkbeZjh8ybWZCR6LUJcaI8LUnYsgWB7wufG6m2TDL6x5Q0oGWI2DRWETN2jy YUIrrKqGLcx9sM3sSqXAO7agVZ1gvamcbt/EekJ5c3AWebZmHaPodENJIqBm/YDBWnRqEo kH9k8QnCKpORO7qDT5qAFpmWNdfA+/CFHIY1hwUpb0oN3hxVp8HsazyTHvmX3w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764734801; a=rsa-sha256; cv=none; b=QubyyMvMFFesVCUrnMnb1tWpOGmM+TJjJ92x2nXLgfSiTydxSiN6jxVZ4uJ0Q/qA2x3jiG xGt6F3XmjXar3iX7nkbzZqhePhPT+NXd6gjg4AQ0JKXXrEcB7TmIwJG2FaQ6z7x/qqWVqZ NZ/JFckDjWiABrWV1uS85/soIQTnwk4KDZQd3LGDBkjYJIatuAuPu2RR4+DzUqeCE63TVC iwGh8x7F4mjqR/s50YIyz+51+YztR2mC1c3FO87E0oV8Kvx1I0jsfOoJxyrfFbQULc12HR 65aEhI0YdTs4Hwpn9tfvIxz8Xdn5Cs2m1H4MivQQoZSvE1CWsC1bwmnCdSO9VQ== 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 4dLkbj07JKz6DV for ; Wed, 03 Dec 2025 04:06:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3a00b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 04:06:41 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jaeyoon Choi Subject: git: 3a99f31fdb6c - main - ufshci: Support suspend/resume List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jaeyoon X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3a99f31fdb6c66434f77d83ca5166aae4ad2d22c Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 04:06:41 +0000 Message-Id: <692fb751.3a00b.5af458cc@gitrepo.freebsd.org> The branch main has been updated by jaeyoon: URL: https://cgit.FreeBSD.org/src/commit/?id=3a99f31fdb6c66434f77d83ca5166aae4ad2d22c commit 3a99f31fdb6c66434f77d83ca5166aae4ad2d22c Author: Jaeyoon Choi AuthorDate: 2025-12-03 04:05:36 +0000 Commit: Jaeyoon Choi CommitDate: 2025-12-03 04:05:36 +0000 ufshci: Support suspend/resume Handle system power events and issue START STOP UNIT (SSU) to the UFS Device WLUN (0x50). Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D54002 --- sys/dev/ufshci/ufshci_ctrlr.c | 50 +++++++++++++++++++++++++++++++++++++++ sys/dev/ufshci/ufshci_dev.c | 19 +++++++++++++++ sys/dev/ufshci/ufshci_pci.c | 23 ++++++++++++++++-- sys/dev/ufshci/ufshci_private.h | 35 ++++++++++++++++++++++++++- sys/dev/ufshci/ufshci_req_queue.c | 3 ++- sys/dev/ufshci/ufshci_sim.c | 7 +++++- sys/dev/ufshci/ufshci_sysctl.c | 3 +++ 7 files changed, 135 insertions(+), 5 deletions(-) diff --git a/sys/dev/ufshci/ufshci_ctrlr.c b/sys/dev/ufshci/ufshci_ctrlr.c index 1ffa99255088..f0cb08b34823 100644 --- a/sys/dev/ufshci/ufshci_ctrlr.c +++ b/sys/dev/ufshci/ufshci_ctrlr.c @@ -610,3 +610,53 @@ ufshci_reg_dump(struct ufshci_controller *ctrlr) ufshci_printf(ctrlr, "========================================\n"); } + +int +ufshci_ctrlr_suspend(struct ufshci_controller *ctrlr, enum power_stype stype) +{ + int error; + + if (!ctrlr->ufs_dev.power_mode_supported) + return (0); + + /* TODO: Need to flush the request queue */ + + if (ctrlr->ufs_device_wlun_periph) { + ctrlr->ufs_dev.power_mode = power_map[stype].dev_pwr; + error = ufshci_sim_send_ssu(ctrlr, /*start*/ false, + power_map[stype].ssu_pc, /*immed*/ false); + if (error) { + ufshci_printf(ctrlr, + "Failed to send SSU in suspend handler\n"); + return (error); + } + } + + /* TODO: Change the link state to Hibernate if necessary. */ + + return (0); +} + +int +ufshci_ctrlr_resume(struct ufshci_controller *ctrlr, enum power_stype stype) +{ + int error; + + if (!ctrlr->ufs_dev.power_mode_supported) + return (0); + + /* TODO: Change the link state to Active if necessary. */ + + if (ctrlr->ufs_device_wlun_periph) { + ctrlr->ufs_dev.power_mode = power_map[stype].dev_pwr; + error = ufshci_sim_send_ssu(ctrlr, /*start*/ false, + power_map[stype].ssu_pc, /*immed*/ false); + if (error) { + ufshci_printf(ctrlr, + "Failed to send SSU in resume handler\n"); + return (error); + } + } + + return (0); +} diff --git a/sys/dev/ufshci/ufshci_dev.c b/sys/dev/ufshci/ufshci_dev.c index 9696e8ea8091..136823523fd3 100644 --- a/sys/dev/ufshci/ufshci_dev.c +++ b/sys/dev/ufshci/ufshci_dev.c @@ -469,6 +469,8 @@ ufshci_dev_init_ufs_power_mode(struct ufshci_controller *ctrlr) } ctrlr->ufs_dev.power_mode_supported = true; + ctrlr->ufs_dev.power_mode = UFSHCI_DEV_PWR_ACTIVE; + return (0); } @@ -786,3 +788,20 @@ out: ufshci_dev_disable_write_booster(ctrlr); return (error); } + +int +ufshci_dev_get_current_power_mode(struct ufshci_controller *ctrlr, + uint8_t *power_mode) +{ + uint64_t value; + int err; + + err = ufshci_dev_read_attribute(ctrlr, UFSHCI_ATTR_B_CURRENT_POWER_MODE, + /*index*/ 0, /*selector*/ 0, &value); + if (err) + return (err); + + *power_mode = (uint8_t)value; + + return (0); +} diff --git a/sys/dev/ufshci/ufshci_pci.c b/sys/dev/ufshci/ufshci_pci.c index 7f78e462db72..5fce14997784 100644 --- a/sys/dev/ufshci/ufshci_pci.c +++ b/sys/dev/ufshci/ufshci_pci.c @@ -23,6 +23,8 @@ static int ufshci_pci_probe(device_t); static int ufshci_pci_attach(device_t); static int ufshci_pci_detach(device_t); +static int ufshci_pci_suspend(device_t); +static int ufshci_pci_resume(device_t); static int ufshci_pci_setup_interrupts(struct ufshci_controller *ctrlr); @@ -31,8 +33,8 @@ static device_method_t ufshci_pci_methods[] = { DEVMETHOD(device_probe, ufshci_pci_probe), DEVMETHOD(device_attach, ufshci_pci_attach), DEVMETHOD(device_detach, ufshci_pci_detach), - /* TODO: Implement Suspend, Resume */ - { 0, 0 } + DEVMETHOD(device_suspend, ufshci_pci_suspend), + DEVMETHOD(device_resume, ufshci_pci_resume), { 0, 0 } }; static driver_t ufshci_pci_driver = { @@ -261,3 +263,20 @@ msi: intx: return (ufshci_pci_setup_shared(ctrlr, ctrlr->msi_count > 0 ? 1 : 0)); } + +static int +ufshci_pci_suspend(device_t dev) +{ + struct ufshci_controller *ctrlr = device_get_softc(dev); + + /* Currently, PCI-based ufshci only supports POWER_STYPE_STANDBY */ + return (ufshci_ctrlr_suspend(ctrlr, POWER_STYPE_STANDBY)); +} + +static int +ufshci_pci_resume(device_t dev) +{ + struct ufshci_controller *ctrlr = device_get_softc(dev); + + return (ufshci_ctrlr_resume(ctrlr, POWER_STYPE_AWAKE)); +} diff --git a/sys/dev/ufshci/ufshci_private.h b/sys/dev/ufshci/ufshci_private.h index 22e77c9b9326..fa5caf87196c 100644 --- a/sys/dev/ufshci/ufshci_private.h +++ b/sys/dev/ufshci/ufshci_private.h @@ -26,12 +26,14 @@ #include #include #include +#include #include #include #include #include +#include #include "ufshci.h" @@ -233,6 +235,30 @@ struct ufshci_req_queue { bus_dmamap_t ucdmem_map; }; +enum ufshci_dev_pwr { + UFSHCI_DEV_PWR_ACTIVE = 0, + UFSHCI_DEV_PWR_SLEEP, + UFSHCI_DEV_PWR_POWERDOWN, + UFSHCI_DEV_PWR_DEEPSLEEP, + UFSHCI_DEV_PWR_COUNT, +}; + +struct ufshci_power_entry { + enum ufshci_dev_pwr dev_pwr; + uint8_t ssu_pc; /* SSU Power Condition */ +}; + +/* SSU Power Condition 0x40 is defined in the UFS specification */ +static const struct ufshci_power_entry power_map[POWER_STYPE_COUNT] = { + [POWER_STYPE_AWAKE] = { UFSHCI_DEV_PWR_ACTIVE, SSS_PC_ACTIVE }, + [POWER_STYPE_STANDBY] = { UFSHCI_DEV_PWR_SLEEP, SSS_PC_IDLE }, + [POWER_STYPE_SUSPEND_TO_MEM] = { UFSHCI_DEV_PWR_POWERDOWN, + SSS_PC_STANDBY }, + [POWER_STYPE_SUSPEND_TO_IDLE] = { UFSHCI_DEV_PWR_SLEEP, SSS_PC_IDLE }, + [POWER_STYPE_HIBERNATE] = { UFSHCI_DEV_PWR_DEEPSLEEP, 0x40 }, + [POWER_STYPE_POWEROFF] = { UFSHCI_DEV_PWR_POWERDOWN, SSS_PC_STANDBY }, +}; + struct ufshci_device { uint32_t max_lun_count; @@ -252,6 +278,7 @@ struct ufshci_device { /* Power mode */ bool power_mode_supported; + enum ufshci_dev_pwr power_mode; }; /* @@ -386,12 +413,16 @@ void ufshci_sim_detach(struct ufshci_controller *ctrlr); struct cam_periph *ufshci_sim_find_periph(struct ufshci_controller *ctrlr, uint8_t wlun); int ufshci_sim_send_ssu(struct ufshci_controller *ctrlr, bool start, - int pwr_cond, bool immed); + uint8_t pwr_cond, bool immed); /* Controller */ int ufshci_ctrlr_construct(struct ufshci_controller *ctrlr, device_t dev); void ufshci_ctrlr_destruct(struct ufshci_controller *ctrlr, device_t dev); void ufshci_ctrlr_reset(struct ufshci_controller *ctrlr); +int ufshci_ctrlr_suspend(struct ufshci_controller *ctrlr, + enum power_stype stype); +int ufshci_ctrlr_resume(struct ufshci_controller *ctrlr, + enum power_stype stype); /* ctrlr defined as void * to allow use with config_intrhook. */ void ufshci_ctrlr_start_config_hook(void *arg); void ufshci_ctrlr_poll(struct ufshci_controller *ctrlr); @@ -415,6 +446,8 @@ int ufshci_dev_init_uic_power_mode(struct ufshci_controller *ctrlr); int ufshci_dev_init_ufs_power_mode(struct ufshci_controller *ctrlr); int ufshci_dev_get_descriptor(struct ufshci_controller *ctrlr); int ufshci_dev_config_write_booster(struct ufshci_controller *ctrlr); +int ufshci_dev_get_current_power_mode(struct ufshci_controller *ctrlr, + uint8_t *power_mode); /* Controller Command */ void ufshci_ctrlr_cmd_send_task_mgmt_request(struct ufshci_controller *ctrlr, diff --git a/sys/dev/ufshci/ufshci_req_queue.c b/sys/dev/ufshci/ufshci_req_queue.c index 7aa164d00bec..df7e4b159278 100644 --- a/sys/dev/ufshci/ufshci_req_queue.c +++ b/sys/dev/ufshci/ufshci_req_queue.c @@ -147,7 +147,8 @@ ufshci_req_queue_response_is_error(struct ufshci_req_queue *req_queue, /* Check response UPIU header */ if (response->header.response != UFSHCI_RESPONSE_CODE_TARGET_SUCCESS) { ufshci_printf(req_queue->ctrlr, - "Invalid response code = 0x%x\n", + "Function(0x%x) Invalid response code = 0x%x\n", + response->header.ext_iid_or_function, response->header.response); is_error = true; } diff --git a/sys/dev/ufshci/ufshci_sim.c b/sys/dev/ufshci/ufshci_sim.c index 0cd691de47e2..1589e7475ad4 100644 --- a/sys/dev/ufshci/ufshci_sim.c +++ b/sys/dev/ufshci/ufshci_sim.c @@ -46,6 +46,11 @@ ufshci_sim_scsiio_done(void *ccb_arg, const struct ufshci_completion *cpl, ccb->ccb_h.status &= ~CAM_SIM_QUEUED; if (error) { + printf("ufshci: SCSI command completion error, Status(0x%x)" + " Key(0x%x), ASC(0x%x), ASCQ(0x%x)\n", + cpl->response_upiu.cmd_response_upiu.header + .ext_iid_or_status, + sense_data[2], sense_data[12], sense_data[13]); ccb->ccb_h.status = CAM_REQ_CMP_ERR; xpt_done(ccb); } else { @@ -455,7 +460,7 @@ ufshci_sim_find_periph(struct ufshci_controller *ctrlr, uint8_t wlun) /* This function is called during suspend/resume. */ int ufshci_sim_send_ssu(struct ufshci_controller *ctrlr, bool start, - int power_condition, bool immed) + uint8_t power_condition, bool immed) { struct cam_periph *periph = ctrlr->ufs_device_wlun_periph; union ccb *ccb; diff --git a/sys/dev/ufshci/ufshci_sysctl.c b/sys/dev/ufshci/ufshci_sysctl.c index 3ec4ea935464..30b0ccaeed13 100644 --- a/sys/dev/ufshci/ufshci_sysctl.c +++ b/sys/dev/ufshci/ufshci_sysctl.c @@ -201,6 +201,9 @@ ufshci_sysctl_initialize_ctrlr(struct ufshci_controller *ctrlr) CTLFLAG_RD, &dev->power_mode_supported, 0, "Device power mode support"); + SYSCTL_ADD_UINT(ctrlr_ctx, ctrlr_list, OID_AUTO, "power_mode", + CTLFLAG_RD, &dev->power_mode, 0, "Current device power mode"); + SYSCTL_ADD_PROC(ctrlr_ctx, ctrlr_list, OID_AUTO, "timeout_period", CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_MPSAFE, &ctrlr->timeout_period, 0, ufshci_sysctl_timeout_period, "IU", From nobody Wed Dec 3 04:06:42 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLkbk5z86z6JmTj for ; Wed, 03 Dec 2025 04:06:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLkbk1c6Cz44Dq for ; Wed, 03 Dec 2025 04:06:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764734802; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z5neDB6fTPEvGtgXOiuiIomXfPFvbLZ2NCfrbrHqemk=; b=BBufQpWzdpWPrnTN7H+oEqId3q73zr7ABYNYCfAURXJuvKCsQlCkjRqQNJ8A8PE3ScBb/S uwVQVtQ6ssDayQEDisKjISDMo7TGRTqJOb597as0Fv8mi2Kb+clDvw2d0fJLf17yomT+XE Dna91f9l65Xpr3YJ4m70ejaXPUH9LWIvjH4BksDbncGuEmsGRlgGHQbA+6xuIdsz+tf7Du wyHAfi+G96hvqSQeg4+7pb/wYVZ6ww8MKPXNGa0EBlAHWg4u0nd+HDz3td13VM7SHiFvW2 5VN6HExbgIpBXAVbmyfQdFrFuem+DUCjFfp2LZsilSYnE+v4OBXtZOXyznvNlA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764734802; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z5neDB6fTPEvGtgXOiuiIomXfPFvbLZ2NCfrbrHqemk=; b=cSGhBOFzXfXNH9rx6OVbOaqNmkQjCr3b3vfOxqVKoYa6UBZSpd25zU8XvUgDb2DbM7IQDj c/R0A9zR/NLLaPinKo/8WQqZ94Xb3S68igUUBcp1ZmpppalMgKw7pijRc2b1SfChWbp0zQ PdWRYMSD74GSBk+dTEuCpX4Q6eBNg3+hYE8ChEK37bvy73rx/3Jhfo4I4Qq+bXGS127JT/ dJgwsPFH1SuchUNy6jq8TxFL0qH7qxi1DfH/F2rCOibDWq+MwEfEXPpVju9plRXM1GFc2o HNLpTAg06Qsql0s4m/M8x+k7EBZpd9K0mphHrrbDgQLJCnK4fB3tHoX6+OF59Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764734802; a=rsa-sha256; cv=none; b=vpl5kvjedWTFUBGyiCv5wQwkjBgd6S8wzZQC2lNTEfJ769BHD4++bjE9j8cwIt7pdqvGPA l5euD85ZibM+XMXcZXzt3pLSbZFW99dJQy8HZZW0sMQfcVdmPRAtVEBKHF3EgfVTIlDyYZ XHzm3iYH6SPmYhhX1oxOZE8XTZyiVrIXryS9st2Vb5tpQW1VrtNWGs+bcPt+URs/V/Rlf4 /FXRbNgGX7TdJYkaWXx1zQpczLxyPNenKhZRRW07Vk9ydfVRCyIMB8ya9AkO0RK0I3rdZN T8mQCjlTTDT9xeGFl2C1FhbCrx9OdCSfPJP5Gk29rtZKwK5f5kXyk2AT+Uft5w== 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 4dLkbk0xZVz5cx for ; Wed, 03 Dec 2025 04:06:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 382d5 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 04:06:42 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jaeyoon Choi Subject: git: bec77e3a160d - main - ufshci: Support UIC hibernation enter/exit List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jaeyoon X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bec77e3a160dba10cbc30416f53a506ca2b9301f Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 04:06:42 +0000 Message-Id: <692fb752.382d5.311e8b5@gitrepo.freebsd.org> The branch main has been updated by jaeyoon: URL: https://cgit.FreeBSD.org/src/commit/?id=bec77e3a160dba10cbc30416f53a506ca2b9301f commit bec77e3a160dba10cbc30416f53a506ca2b9301f Author: Jaeyoon Choi AuthorDate: 2025-12-03 04:05:51 +0000 Commit: Jaeyoon Choi CommitDate: 2025-12-03 04:05:51 +0000 ufshci: Support UIC hibernation enter/exit Add helpers to issue DME_HIBERNATE_ENTER/DME_HIBERNATE_EXIT and call them during suspend/resume. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D54003 --- sys/dev/ufshci/ufshci_ctrlr.c | 22 ++++++++++-- sys/dev/ufshci/ufshci_dev.c | 77 +++++++++++++++++++++++++++++++++++++++-- sys/dev/ufshci/ufshci_private.h | 33 ++++++++++++++---- sys/dev/ufshci/ufshci_uic_cmd.c | 77 ++++++++++++++++++++++++++++++++++++++++- 4 files changed, 196 insertions(+), 13 deletions(-) diff --git a/sys/dev/ufshci/ufshci_ctrlr.c b/sys/dev/ufshci/ufshci_ctrlr.c index f0cb08b34823..494313df95de 100644 --- a/sys/dev/ufshci/ufshci_ctrlr.c +++ b/sys/dev/ufshci/ufshci_ctrlr.c @@ -79,6 +79,8 @@ ufshci_ctrlr_start(struct ufshci_controller *ctrlr, bool resetting) return; } + ufshci_dev_init_uic_link_state(ctrlr); + /* Read Controller Descriptor (Device, Geometry) */ if (ufshci_dev_get_descriptor(ctrlr) != 0) { ufshci_ctrlr_fail(ctrlr); @@ -187,7 +189,7 @@ ufshci_ctrlr_enable_host_ctrlr(struct ufshci_controller *ctrlr) return (0); } -static int +int ufshci_ctrlr_disable(struct ufshci_controller *ctrlr) { int error; @@ -632,7 +634,14 @@ ufshci_ctrlr_suspend(struct ufshci_controller *ctrlr, enum power_stype stype) } } - /* TODO: Change the link state to Hibernate if necessary. */ + /* Change the link state */ + error = ufshci_dev_link_state_transition(ctrlr, + power_map[stype].link_state); + if (error) { + ufshci_printf(ctrlr, + "Failed to transition link state in suspend handler\n"); + return (error); + } return (0); } @@ -645,7 +654,14 @@ ufshci_ctrlr_resume(struct ufshci_controller *ctrlr, enum power_stype stype) if (!ctrlr->ufs_dev.power_mode_supported) return (0); - /* TODO: Change the link state to Active if necessary. */ + /* Change the link state */ + error = ufshci_dev_link_state_transition(ctrlr, + power_map[stype].link_state); + if (error) { + ufshci_printf(ctrlr, + "Failed to transition link state in resume handler\n"); + return (error); + } if (ctrlr->ufs_device_wlun_periph) { ctrlr->ufs_dev.power_mode = power_map[stype].dev_pwr; diff --git a/sys/dev/ufshci/ufshci_dev.c b/sys/dev/ufshci/ufshci_dev.c index 136823523fd3..c4a5bda9c79a 100644 --- a/sys/dev/ufshci/ufshci_dev.c +++ b/sys/dev/ufshci/ufshci_dev.c @@ -433,9 +433,6 @@ ufshci_dev_init_uic_power_mode(struct ufshci_controller *ctrlr) return (ENXIO); } - /* Clear 'Power Mode completion status' */ - ufshci_mmio_write_4(ctrlr, is, UFSHCIM(UFSHCI_IS_REG_UPMS)); - if (ctrlr->quirks & UFSHCI_QUIRK_WAIT_AFTER_POWER_MODE_CHANGE) { /* * Intel Lake-field UFSHCI has a quirk. @@ -452,6 +449,12 @@ ufshci_dev_init_uic_power_mode(struct ufshci_controller *ctrlr) return (0); } +void +ufshci_dev_init_uic_link_state(struct ufshci_controller *ctrlr) +{ + ctrlr->ufs_dev.link_state = UFSHCI_UIC_LINK_STATE_ACTIVE; +} + int ufshci_dev_init_ufs_power_mode(struct ufshci_controller *ctrlr) { @@ -805,3 +808,71 @@ ufshci_dev_get_current_power_mode(struct ufshci_controller *ctrlr, return (0); } + +static int +ufshci_dev_hibernate_enter(struct ufshci_controller *ctrlr) +{ + int error; + + error = ufshci_uic_send_dme_hibernate_enter(ctrlr); + if (error) + return (error); + + return (ufshci_uic_hibernation_ready(ctrlr)); +} + +static int +ufshci_dev_hibernate_exit(struct ufshci_controller *ctrlr) +{ + int error; + + error = ufshci_uic_send_dme_hibernate_exit(ctrlr); + if (error) + return (error); + + return (ufshci_uic_hibernation_ready(ctrlr)); +} + +int +ufshci_dev_link_state_transition(struct ufshci_controller *ctrlr, + enum ufshci_uic_link_state target_state) +{ + struct ufshci_device *dev = &ctrlr->ufs_dev; + int error = 0; + + if (dev->link_state == target_state) + return (0); + + switch (target_state) { + case UFSHCI_UIC_LINK_STATE_OFF: + error = ufshci_dev_hibernate_enter(ctrlr); + if (error) + break; + error = ufshci_ctrlr_disable(ctrlr); + break; + case UFSHCI_UIC_LINK_STATE_ACTIVE: + if (dev->link_state == UFSHCI_UIC_LINK_STATE_HIBERNATE) + error = ufshci_dev_hibernate_exit(ctrlr); + else + error = EINVAL; + break; + case UFSHCI_UIC_LINK_STATE_HIBERNATE: + if (dev->link_state == UFSHCI_UIC_LINK_STATE_ACTIVE) + error = ufshci_dev_hibernate_enter(ctrlr); + else + error = EINVAL; + break; + case UFSHCI_UIC_LINK_STATE_BROKEN: + break; + default: + error = EINVAL; + break; + } + + if (error) + return (error); + + dev->link_state = target_state; + + return (0); +} diff --git a/sys/dev/ufshci/ufshci_private.h b/sys/dev/ufshci/ufshci_private.h index fa5caf87196c..8a49c2a9bc2b 100644 --- a/sys/dev/ufshci/ufshci_private.h +++ b/sys/dev/ufshci/ufshci_private.h @@ -243,20 +243,33 @@ enum ufshci_dev_pwr { UFSHCI_DEV_PWR_COUNT, }; +enum ufshci_uic_link_state { + UFSHCI_UIC_LINK_STATE_OFF = 0, + UFSHCI_UIC_LINK_STATE_ACTIVE, + UFSHCI_UIC_LINK_STATE_HIBERNATE, + UFSHCI_UIC_LINK_STATE_BROKEN, +}; + struct ufshci_power_entry { enum ufshci_dev_pwr dev_pwr; uint8_t ssu_pc; /* SSU Power Condition */ + enum ufshci_uic_link_state link_state; }; /* SSU Power Condition 0x40 is defined in the UFS specification */ static const struct ufshci_power_entry power_map[POWER_STYPE_COUNT] = { - [POWER_STYPE_AWAKE] = { UFSHCI_DEV_PWR_ACTIVE, SSS_PC_ACTIVE }, - [POWER_STYPE_STANDBY] = { UFSHCI_DEV_PWR_SLEEP, SSS_PC_IDLE }, + [POWER_STYPE_AWAKE] = { UFSHCI_DEV_PWR_ACTIVE, SSS_PC_ACTIVE, + UFSHCI_UIC_LINK_STATE_ACTIVE }, + [POWER_STYPE_STANDBY] = { UFSHCI_DEV_PWR_SLEEP, SSS_PC_IDLE, + UFSHCI_UIC_LINK_STATE_HIBERNATE }, [POWER_STYPE_SUSPEND_TO_MEM] = { UFSHCI_DEV_PWR_POWERDOWN, - SSS_PC_STANDBY }, - [POWER_STYPE_SUSPEND_TO_IDLE] = { UFSHCI_DEV_PWR_SLEEP, SSS_PC_IDLE }, - [POWER_STYPE_HIBERNATE] = { UFSHCI_DEV_PWR_DEEPSLEEP, 0x40 }, - [POWER_STYPE_POWEROFF] = { UFSHCI_DEV_PWR_POWERDOWN, SSS_PC_STANDBY }, + SSS_PC_STANDBY, UFSHCI_UIC_LINK_STATE_HIBERNATE }, + [POWER_STYPE_SUSPEND_TO_IDLE] = { UFSHCI_DEV_PWR_SLEEP, SSS_PC_IDLE, + UFSHCI_UIC_LINK_STATE_HIBERNATE }, + [POWER_STYPE_HIBERNATE] = { UFSHCI_DEV_PWR_DEEPSLEEP, 0x40, + UFSHCI_UIC_LINK_STATE_OFF }, + [POWER_STYPE_POWEROFF] = { UFSHCI_DEV_PWR_POWERDOWN, SSS_PC_STANDBY, + UFSHCI_UIC_LINK_STATE_OFF }, }; struct ufshci_device { @@ -279,6 +292,7 @@ struct ufshci_device { /* Power mode */ bool power_mode_supported; enum ufshci_dev_pwr power_mode; + enum ufshci_uic_link_state link_state; }; /* @@ -423,6 +437,7 @@ int ufshci_ctrlr_suspend(struct ufshci_controller *ctrlr, enum power_stype stype); int ufshci_ctrlr_resume(struct ufshci_controller *ctrlr, enum power_stype stype); +int ufshci_ctrlr_disable(struct ufshci_controller *ctrlr); /* ctrlr defined as void * to allow use with config_intrhook. */ void ufshci_ctrlr_start_config_hook(void *arg); void ufshci_ctrlr_poll(struct ufshci_controller *ctrlr); @@ -443,11 +458,14 @@ int ufshci_dev_reset(struct ufshci_controller *ctrlr); int ufshci_dev_init_reference_clock(struct ufshci_controller *ctrlr); int ufshci_dev_init_unipro(struct ufshci_controller *ctrlr); int ufshci_dev_init_uic_power_mode(struct ufshci_controller *ctrlr); +void ufshci_dev_init_uic_link_state(struct ufshci_controller *ctrlr); int ufshci_dev_init_ufs_power_mode(struct ufshci_controller *ctrlr); int ufshci_dev_get_descriptor(struct ufshci_controller *ctrlr); int ufshci_dev_config_write_booster(struct ufshci_controller *ctrlr); int ufshci_dev_get_current_power_mode(struct ufshci_controller *ctrlr, uint8_t *power_mode); +int ufshci_dev_link_state_transition(struct ufshci_controller *ctrlr, + enum ufshci_uic_link_state target_state); /* Controller Command */ void ufshci_ctrlr_cmd_send_task_mgmt_request(struct ufshci_controller *ctrlr, @@ -508,6 +526,7 @@ int ufshci_req_sdb_get_inflight_io(struct ufshci_controller *ctrlr); /* UIC Command */ int ufshci_uic_power_mode_ready(struct ufshci_controller *ctrlr); +int ufshci_uic_hibernation_ready(struct ufshci_controller *ctrlr); int ufshci_uic_cmd_ready(struct ufshci_controller *ctrlr); int ufshci_uic_send_dme_link_startup(struct ufshci_controller *ctrlr); int ufshci_uic_send_dme_get(struct ufshci_controller *ctrlr, uint16_t attribute, @@ -519,6 +538,8 @@ int ufshci_uic_send_dme_peer_get(struct ufshci_controller *ctrlr, int ufshci_uic_send_dme_peer_set(struct ufshci_controller *ctrlr, uint16_t attribute, uint32_t value); int ufshci_uic_send_dme_endpoint_reset(struct ufshci_controller *ctrlr); +int ufshci_uic_send_dme_hibernate_enter(struct ufshci_controller *ctrlr); +int ufshci_uic_send_dme_hibernate_exit(struct ufshci_controller *ctrlr); /* SYSCTL */ void ufshci_sysctl_initialize_ctrlr(struct ufshci_controller *ctrlr); diff --git a/sys/dev/ufshci/ufshci_uic_cmd.c b/sys/dev/ufshci/ufshci_uic_cmd.c index b9c867ff7065..29c143cec52c 100644 --- a/sys/dev/ufshci/ufshci_uic_cmd.c +++ b/sys/dev/ufshci/ufshci_uic_cmd.c @@ -23,6 +23,7 @@ ufshci_uic_power_mode_ready(struct ufshci_controller *ctrlr) while (1) { is = ufshci_mmio_read_4(ctrlr, is); if (UFSHCIV(UFSHCI_IS_REG_UPMS, is)) { + /* Clear 'Power Mode completion status' */ ufshci_mmio_write_4(ctrlr, is, UFSHCIM(UFSHCI_IS_REG_UPMS)); break; @@ -32,7 +33,7 @@ ufshci_uic_power_mode_ready(struct ufshci_controller *ctrlr) ufshci_printf(ctrlr, "Power mode is not changed " "within %d ms\n", - ctrlr->uic_cmd_timeout_in_ms); + ctrlr->device_init_timeout_in_ms); return (ENXIO); } @@ -52,6 +53,54 @@ ufshci_uic_power_mode_ready(struct ufshci_controller *ctrlr) return (0); } +int +ufshci_uic_hibernation_ready(struct ufshci_controller *ctrlr) +{ + uint32_t is, hcs; + int timeout; + + /* Wait for the IS flag to change */ + timeout = ticks + MSEC_2_TICKS(ctrlr->uic_cmd_timeout_in_ms); + + while (1) { + is = ufshci_mmio_read_4(ctrlr, is); + if (UFSHCIV(UFSHCI_IS_REG_UHES, is)) { + /* Clear 'UIC Hibernate Enter Status' */ + ufshci_mmio_write_4(ctrlr, is, + UFSHCIM(UFSHCI_IS_REG_UHES)); + break; + } + if (UFSHCIV(UFSHCI_IS_REG_UHXS, is)) { + /* Clear 'UIC Hibernate Exit Status' */ + ufshci_mmio_write_4(ctrlr, is, + UFSHCIM(UFSHCI_IS_REG_UHXS)); + break; + } + + if (timeout - ticks < 0) { + ufshci_printf(ctrlr, + "Hibernation enter/exit are not completed " + "within %d ms\n", + ctrlr->uic_cmd_timeout_in_ms); + return (ENXIO); + } + + /* TODO: Replace busy-wait with interrupt-based pause. */ + DELAY(10); + } + + /* Check HCS power mode change request status */ + hcs = ufshci_mmio_read_4(ctrlr, hcs); + if (UFSHCIV(UFSHCI_HCS_REG_UPMCRS, hcs) != 0x01) { + ufshci_printf(ctrlr, + "Hibernation enter/exit request status error: 0x%x\n", + UFSHCIV(UFSHCI_HCS_REG_UPMCRS, hcs)); + return (ENXIO); + } + + return (0); +} + int ufshci_uic_cmd_ready(struct ufshci_controller *ctrlr) { @@ -239,3 +288,29 @@ ufshci_uic_send_dme_endpoint_reset(struct ufshci_controller *ctrlr) return (ufshci_uic_send_cmd(ctrlr, &uic_cmd, NULL)); } + +int +ufshci_uic_send_dme_hibernate_enter(struct ufshci_controller *ctrlr) +{ + struct ufshci_uic_cmd uic_cmd; + + uic_cmd.opcode = UFSHCI_DME_HIBERNATE_ENTER; + uic_cmd.argument1 = 0; + uic_cmd.argument2 = 0; + uic_cmd.argument3 = 0; + + return (ufshci_uic_send_cmd(ctrlr, &uic_cmd, NULL)); +} + +int +ufshci_uic_send_dme_hibernate_exit(struct ufshci_controller *ctrlr) +{ + struct ufshci_uic_cmd uic_cmd; + + uic_cmd.opcode = UFSHCI_DME_HIBERNATE_EXIT; + uic_cmd.argument1 = 0; + uic_cmd.argument2 = 0; + uic_cmd.argument3 = 0; + + return (ufshci_uic_send_cmd(ctrlr, &uic_cmd, NULL)); +} From nobody Wed Dec 3 04:06:44 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLkbm4mRLz6JmX2 for ; Wed, 03 Dec 2025 04:06:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLkbm2nCNz44KX for ; Wed, 03 Dec 2025 04:06:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764734804; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EBEGdl1RS4ZfLTqi2LS6akYBiCJIW+xdfMABDQxIzcU=; b=gXTukMZyrZQ0+evP8Q4+x9LbQt43RHaqC7dYEOAI63KU8pM4w43sz0oKfIo1Qn3zcq80AS RXo38HB5WojWFVfjX2N6iCmxBs3whKk1zK8Vi69DLba/QIhe9Vk4cxt/Uya61/MmxY185w v5cilLRfZO99wCjlsVrSVKH2MbuUWhkfy9QWSsYhhLy1rYrkvPvp9pz0Woi/nY8Eox+Jd/ X7DucKqwb3aCYI955lypowb/UtDTVo/RNftpd6Epy+tZiW8gdN5uICtCZVdK1Nv2Z0qD+b IJBcmJ0yHcimRWzMsetfodvKidQCQOxPCwlT3rLpHkk81UXG0PBAH3Bq0A3LUQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764734804; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EBEGdl1RS4ZfLTqi2LS6akYBiCJIW+xdfMABDQxIzcU=; b=nf2C6+lujPkYg3/gCfN68F/JM3wEhcTWDBmwj0BwodcISRaGMkx7bQytCrA6awxQh427jJ /gupFpTXsRXqPXG7O7Hhheyhy3E7hC2I+eo4pTTooKVpXpFFiUgs0QQjXBreXsg8i7xjug unPFGK7+XIGdQOK9eZp7ttAChgLgQ6N0yrVJQNFlYc8lFk2OHHVvi30bFxUnNVT0yxodt2 A4Ka23POM6Spcfyd+FIPGFehzmE1mqNqzc4vHPrBOvcOkXj33grFdrMny6PRou0T+4keqO gj2yfEmeFdcNjTtM79KUiWSDyxn3eDcHEsAMJgwFi3Q/8KQvoXUzHKzcw6qSEA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764734804; a=rsa-sha256; cv=none; b=OcweAMt8qCNUu2IQl6tDyY1ASXR6RMmxyrAbS3jVTsxii26/Ktoe/oAlpYeb7wX7mHpAwt A5NVVMJwE6osTWuRaXXf6CidDTHsN7G76wqT7BH2HjkBCgvbROnEXsmFtcJgdgiELvMJr6 l1FNEvDdDwMV3jVgrXRYHiTN0BKbMAWz0OwMllX4xuYOFGP+WEmR85OGEEO75wXYPGLDhA JNcbZx2jzXEkVR8Fz6rRxKtg9qQiaYdlVmfaUAgoRu9tKIRuBsPp51dwbWZ2AH3j5GG33D Udt/ojTWwWPpW+8/MrgVl9R6WVmmy8MYiwad7KpzDWOZBfraff0J3cs0kgVVZA== 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 4dLkbm2MBPz6DY for ; Wed, 03 Dec 2025 04:06:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3936c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 04:06:44 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jaeyoon Choi Subject: git: 0e60cb8c6a4e - main - ufshci: Add a Auto Hibernate quirk to Intel Alder Lake-N List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jaeyoon X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0e60cb8c6a4e9cf943b7360cbd9e9a390f545a10 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 04:06:44 +0000 Message-Id: <692fb754.3936c.6e5aa406@gitrepo.freebsd.org> The branch main has been updated by jaeyoon: URL: https://cgit.FreeBSD.org/src/commit/?id=0e60cb8c6a4e9cf943b7360cbd9e9a390f545a10 commit 0e60cb8c6a4e9cf943b7360cbd9e9a390f545a10 Author: Jaeyoon Choi AuthorDate: 2025-12-03 04:06:09 +0000 Commit: Jaeyoon Choi CommitDate: 2025-12-03 04:06:09 +0000 ufshci: Add a Auto Hibernate quirk to Intel Alder Lake-N Alder Lake-N supports Auto Hibernate, but it does not work. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D54006 --- sys/dev/ufshci/ufshci_pci.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/dev/ufshci/ufshci_pci.c b/sys/dev/ufshci/ufshci_pci.c index b2a958f1cd1a..6a4182a55a7d 100644 --- a/sys/dev/ufshci/ufshci_pci.c +++ b/sys/dev/ufshci/ufshci_pci.c @@ -60,7 +60,8 @@ static struct _pcsid { UFSHCI_QUIRK_WAIT_AFTER_POWER_MODE_CHANGE | UFSHCI_QUIRK_CHANGE_LANE_AND_GEAR_SEPARATELY | UFSHCI_QUIRK_BROKEN_AUTO_HIBERNATE }, - { 0x54ff8086, "Intel UFS Host Controller", UFSHCI_REF_CLK_19_2MHz }, + { 0x54ff8086, "Intel Alder Lake-N UFS Host Controller", + UFSHCI_REF_CLK_19_2MHz, UFSHCI_QUIRK_BROKEN_AUTO_HIBERNATE }, { 0x00000000, NULL } }; static int From nobody Wed Dec 3 04:40:51 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLlM773XTz6JpWw for ; Wed, 03 Dec 2025 04:40:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLlM76RTlz47Ml for ; Wed, 03 Dec 2025 04:40:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764736851; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/oZt6h6fVTa4/rQD9jkS7ASM77OY0eBcG1bWxd18vWQ=; b=pYoM20aLjMbAED283j4i4CRLAKpyAio/Uguv8hIitZMaMqMXQ4m1xBSqf1p7LSFmkf6fm+ 1oLFKsCUdhuYBS1zxrv90VH8BZ85GxZfeBIcReagw1foRLdEmMr6wdrQxN4GtBj+y80wwI 9s1WO8OP/befTMcUtBxk2yvmH2LUdQBQZQZF5zqPeLSJ1iqfySCRfCMZlGSZAStLLvlra7 PRHFMRTsSHBq7toGvmg4bSTFrv+EJbLbD2HBfvwe5qXcXXkgQM/4el9dbkMqgw01Pi7fiU 6hETPkctkDCrw8kQ4Z4yMEC8jRAXO8NIaGR7G4EeANCeQ3g48CSWlGDC8JuTnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764736851; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/oZt6h6fVTa4/rQD9jkS7ASM77OY0eBcG1bWxd18vWQ=; b=a22ohOAIG4fZqwH7UWpCTvXI8UisCBqSlbIxx6/+VaN7YlUrwMs9ticcPncr313iKlvisv fK4fhSR4ZYS6ZhW5ZfoyJU3MMhT4PmzRtN+MO0VEhYjf5s7APGN5gyxU6j7Zmk2Yt/T+cn 58DQslp2jAqXkWWnL2pqRqrTg25VOZXcN5Rsy54SBJKaVt55Ik+uzyab4FOxBo06MHRbUW ltk/mBxbFoSP2EPGYolFlzp3ok7MkOSwTiay2qKsNsV6kYN3r/nKf9qGXqzN+5Q5nXRZlo DwvttHSG6tuP0lRcoXpzZk0/C9un7WVQ/V0B/r3gcf7XG2T5Zln3XxnVVtSUTA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764736851; a=rsa-sha256; cv=none; b=g1PzP5+WrgW2e3ixM9gwItklkfclmJjZOM34iVDB69utxloDjxDo9nT164fOqtHQtNVo8k ZDq8uXCFlgd8X6+GO4tbziF3XXJYTEXFASWLlVVw8na/nnyEuKupIPN06aJb+hwRMivkDA CfRB+a2j7e8HkWtBkQToTzx1L/0kVWu5drHBFSQvt2NicsXvpbtFWOfnlhvUP6SRXQAzSN pkOl8zsKP+9fhL0WhSfVPGsjFZ2nNBHSvN6daN2Xdpmn9+7Kk1hjdk7gQz/Hj+QRvxgRpM fnGi+aLIIuGLLJ8f3o/U/LqHldrGnM4rwYLR65IHPEql+YZmv+rdOmVfM5i1yQ== 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 4dLlM75zlcz70c for ; Wed, 03 Dec 2025 04:40:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3d6b9 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 04:40:51 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 618347747494 - main - kqueue(9): document f_copy List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 618347747494f0c0842edbdfe29bacf533b10d0f Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 04:40:51 +0000 Message-Id: <692fbf53.3d6b9.17cac8b2@gitrepo.freebsd.org> The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=618347747494f0c0842edbdfe29bacf533b10d0f commit 618347747494f0c0842edbdfe29bacf533b10d0f Author: Warner Losh AuthorDate: 2025-12-03 04:40:47 +0000 Commit: Warner Losh CommitDate: 2025-12-03 04:40:47 +0000 kqueue(9): document f_copy f_copy controls whether and how a knote is inherited by the child process. Sponsored by: Netflix Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D53845 --- share/man/man9/kqueue.9 | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/share/man/man9/kqueue.9 b/share/man/man9/kqueue.9 index 8214d7c01673..bc73530226f0 100644 --- a/share/man/man9/kqueue.9 +++ b/share/man/man9/kqueue.9 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd December 18, 2023 +.Dd December 2, 2025 .Dt KQUEUE 9 .Os .Sh NAME @@ -197,6 +197,18 @@ function of the that the .Va knote was added to. +.It Va f_copy +The +.Va f_copy +function is called to copy notes when the process forks. +When +.Dv NULL , +the current node is not duplicated to the child process. +Filter might set +.Dv f_copy +to +.Fn knote_triv_copy +if there is no additional handling required, besides shallow copying of the knote itself. .El .Pp The function From nobody Wed Dec 3 05:04:29 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLltQ0xSmz6HcNn for ; Wed, 03 Dec 2025 05:04:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLltQ01kXz49pd for ; Wed, 03 Dec 2025 05:04:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764738270; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eB65YDxFoyEm2J/5rf4wRJsjwWsIkP6IQDvo6zBrOPg=; b=pNqdyUZJ14Dabo9L7pB1LNzKJdireBYL7VYHAy3j8ZCj966qHdvVcA/5zWp5MGOyCtk9Xi WIdrioJRc9TAlOUMyl4qOGCDebwX7IAEorpaWiw1PkbQJ1vAOz9c3T/SrCCPZdh056Ifqf h8zTySmDA51ZHB5gw0rO22OTlJSkio+Vft5ziqQfN/R7rRioxg4KnGnecjxccbyr/RBWYY AvtRYQLByQbzGcBBZzoKAC0n/TuOV+WYpaqZhHhNXsbBW6iLGa/AlgxRaEDV+nt7TmJnR4 nXBW0wm1VjWZkGMBKBEV5hZz174n6pctPTRkU4hhwS5g9F4OnZtdNc+2yyFWAQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764738270; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eB65YDxFoyEm2J/5rf4wRJsjwWsIkP6IQDvo6zBrOPg=; b=JXhmbWfXKeRJBEGf8eIHCowOOS6t8WQOyLy+EjrVJTE0a+ijfMRS+WyZ1NehEnwpXQ5gRT tJ0zjwgZDiBQ/Qp+thiI3VCcvEw/nvGNryEiEnNUaUdQ6GG1KQkWeB2ZS3gDAe4I9Fqy54 IxhjcjBlmfPGA9qXWzToBZT0uEnTML4PvpemD1wpTgj+kFApyVjWYqMK9dM35Lgi/QHwH4 hjPZ0k7lmdP4rU60ok36cyZxoefBqmZ0FnlW71gI9gUCgebF35pMT2Xs6jniR2zwiUlXQv PEVrLaA4Ku1QzVMjyw7XT4GKCxsCf+zusLjv1gQ4jrmtKskESoXCI6TJaVneww== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764738270; a=rsa-sha256; cv=none; b=wexGzfXPm28sSyCyQstZ6kBTzfoVLG2XRu3iV+hgjouhT2IIrorJn5q+jJqJ5i3qCZC3j8 cWpSZhLFepWS+3gaZj16Hx2JFI5l/nJchNTIaDN6vS/lAwdzcRFDDuFS3wNcYkhKZFUO6l 0r4DOw5wCBZEBdT3xknbxw46bEeEgHcqLceWei1l8ccYekH4Gy2uuE1+Y/KZKwQL8zEzWf /nu80PodVk3U5cpDYkKaRsn0RR9yeGxgz50vnpqP22Ea5KKNzR/5hZwoJiRjH7cZxfcNzT TVljRAlESoYxzJtRvid+itEHD0fQT+2sdlrXsfTlzyVx1HQwotOv5F7P5p45Cg== 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 4dLltP6BLRz7nn for ; Wed, 03 Dec 2025 05:04:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3d26b by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 05:04:29 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 7b71f57f4e51 - main - netinet: Remove left-over sys/cdefs.h List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 7b71f57f4e514a2ab7308ce4147e14d90e099ad0 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 05:04:29 +0000 Message-Id: <692fc4dd.3d26b.67b6aed5@gitrepo.freebsd.org> The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=7b71f57f4e514a2ab7308ce4147e14d90e099ad0 commit 7b71f57f4e514a2ab7308ce4147e14d90e099ad0 Author: Warner Losh AuthorDate: 2025-12-03 05:02:10 +0000 Commit: Warner Losh CommitDate: 2025-12-03 05:02:10 +0000 netinet: Remove left-over sys/cdefs.h These were for $FreeBSD$ that was removed a while ago, but these includes didn't get swept up in that. Remove them all now. Sponsored by: Netflix MFC After: 2 weeks --- sys/netinet/accf_data.c | 1 - sys/netinet/accf_http.c | 1 - sys/netinet/accf_tls.c | 1 - sys/netinet/if_ether.c | 1 - sys/netinet/igmp.c | 1 - sys/netinet/in.c | 1 - sys/netinet/in_debug.c | 1 - sys/netinet/in_fib.c | 1 - sys/netinet/in_fib_algo.c | 1 - sys/netinet/in_fib_dxr.c | 1 - sys/netinet/in_gif.c | 1 - sys/netinet/in_jail.c | 1 - sys/netinet/in_pcb.c | 1 - sys/netinet/in_proto.c | 1 - sys/netinet/ip_carp.c | 1 - sys/netinet/ip_divert.c | 1 - sys/netinet/ip_ecn.c | 1 - sys/netinet/ip_encap.c | 1 - sys/netinet/ip_fastfwd.c | 1 - sys/netinet/ip_gre.c | 1 - sys/netinet/ip_icmp.c | 1 - sys/netinet/ip_id.c | 1 - sys/netinet/ip_input.c | 1 - sys/netinet/ip_mroute.c | 1 - sys/netinet/ip_options.c | 1 - sys/netinet/ip_output.c | 1 - sys/netinet/ip_reass.c | 1 - sys/netinet/sctp_crc32.c | 1 - sys/netinet/sctp_module.c | 1 - sys/netinet/sctp_syscalls.c | 1 - sys/netinet/tcp_ecn.c | 1 - sys/netinet/tcp_fastopen.c | 1 - sys/netinet/tcp_hostcache.c | 1 - sys/netinet/tcp_hpts.c | 1 - sys/netinet/tcp_hpts_test.c | 1 - sys/netinet/tcp_input.c | 1 - sys/netinet/tcp_log_buf.c | 1 - sys/netinet/tcp_lro.c | 1 - sys/netinet/tcp_lro_hpts.c | 1 - sys/netinet/tcp_offload.c | 1 - sys/netinet/tcp_output.c | 1 - sys/netinet/tcp_ratelimit.c | 1 - sys/netinet/tcp_reass.c | 1 - sys/netinet/tcp_sack.c | 1 - sys/netinet/tcp_subr.c | 1 - sys/netinet/tcp_syncache.c | 1 - sys/netinet/tcp_timer.c | 1 - sys/netinet/tcp_timewait.c | 1 - sys/netinet/tcp_usrreq.c | 1 - sys/netinet/toecore.c | 1 - sys/netinet/udp_usrreq.c | 1 - sys/netinet6/dest6.c | 1 - sys/netinet6/frag6.c | 1 - sys/netinet6/icmp6.c | 1 - sys/netinet6/in6.c | 1 - sys/netinet6/in6_fib.c | 1 - sys/netinet6/in6_fib_algo.c | 1 - sys/netinet6/in6_gif.c | 1 - sys/netinet6/in6_jail.c | 1 - sys/netinet6/in6_mcast.c | 1 - sys/netinet6/in6_pcb.c | 1 - sys/netinet6/in6_proto.c | 1 - sys/netinet6/in6_src.c | 1 - sys/netinet6/ip6_fastfwd.c | 1 - sys/netinet6/ip6_forward.c | 1 - sys/netinet6/ip6_gre.c | 1 - sys/netinet6/ip6_id.c | 1 - sys/netinet6/ip6_input.c | 1 - sys/netinet6/ip6_mroute.c | 1 - sys/netinet6/ip6_output.c | 1 - sys/netinet6/mld6.c | 1 - sys/netinet6/nd6.c | 1 - sys/netinet6/nd6_nbr.c | 1 - sys/netinet6/nd6_rtr.c | 1 - sys/netinet6/route6.c | 1 - sys/netinet6/udp6_usrreq.c | 1 - 76 files changed, 76 deletions(-) diff --git a/sys/netinet/accf_data.c b/sys/netinet/accf_data.c index d5ada4ed12df..9ba1fd1e7479 100644 --- a/sys/netinet/accf_data.c +++ b/sys/netinet/accf_data.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #define ACCEPT_FILTER_MOD #include diff --git a/sys/netinet/accf_http.c b/sys/netinet/accf_http.c index f06fd64de576..9b76e3cfd316 100644 --- a/sys/netinet/accf_http.c +++ b/sys/netinet/accf_http.c @@ -27,7 +27,6 @@ * SUCH DAMAGE. */ -#include #define ACCEPT_FILTER_MOD #include diff --git a/sys/netinet/accf_tls.c b/sys/netinet/accf_tls.c index 9f1ed7000474..a0b357fe949c 100644 --- a/sys/netinet/accf_tls.c +++ b/sys/netinet/accf_tls.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #define ACCEPT_FILTER_MOD #include diff --git a/sys/netinet/if_ether.c b/sys/netinet/if_ether.c index dc6ef343662d..ff60803f4517 100644 --- a/sys/netinet/if_ether.c +++ b/sys/netinet/if_ether.c @@ -35,7 +35,6 @@ * add "inuse/lock" bit (or ref. count) along with valid bit */ -#include #include "opt_inet.h" #include diff --git a/sys/netinet/igmp.c b/sys/netinet/igmp.c index 299f3c2e02bb..ad22efb16495 100644 --- a/sys/netinet/igmp.c +++ b/sys/netinet/igmp.c @@ -47,7 +47,6 @@ * MULTICAST Revision: 3.5.1.4 */ -#include #include "opt_ddb.h" #include diff --git a/sys/netinet/in.c b/sys/netinet/in.c index 70a61dbf93a3..19ab485bc75f 100644 --- a/sys/netinet/in.c +++ b/sys/netinet/in.c @@ -30,7 +30,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #define IN_HISTORICAL_NETS /* include class masks */ diff --git a/sys/netinet/in_debug.c b/sys/netinet/in_debug.c index 7535e99f4d4e..513804d5da32 100644 --- a/sys/netinet/in_debug.c +++ b/sys/netinet/in_debug.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include "opt_ddb.h" #include diff --git a/sys/netinet/in_fib.c b/sys/netinet/in_fib.c index f6bb6bdbb50a..0bcda9fdd312 100644 --- a/sys/netinet/in_fib.c +++ b/sys/netinet/in_fib.c @@ -27,7 +27,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_route.h" diff --git a/sys/netinet/in_fib_algo.c b/sys/netinet/in_fib_algo.c index 95621c300064..ab2743034c48 100644 --- a/sys/netinet/in_fib_algo.c +++ b/sys/netinet/in_fib_algo.c @@ -25,7 +25,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include diff --git a/sys/netinet/in_fib_dxr.c b/sys/netinet/in_fib_dxr.c index 538cd43a88a3..c0e805e6d178 100644 --- a/sys/netinet/in_fib_dxr.c +++ b/sys/netinet/in_fib_dxr.c @@ -42,7 +42,6 @@ * lookups per second on commodity CPUs, IEEE SoftCOM, September 2017, Split */ -#include #include "opt_inet.h" #include diff --git a/sys/netinet/in_gif.c b/sys/netinet/in_gif.c index e25a08bb60cf..ebe7a4a62903 100644 --- a/sys/netinet/in_gif.c +++ b/sys/netinet/in_gif.c @@ -32,7 +32,6 @@ * $KAME: in_gif.c,v 1.54 2001/05/14 14:02:16 itojun Exp $ */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet/in_jail.c b/sys/netinet/in_jail.c index 7b2120f575ca..141164f894e3 100644 --- a/sys/netinet/in_jail.c +++ b/sys/netinet/in_jail.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include "opt_ddb.h" #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet/in_pcb.c b/sys/netinet/in_pcb.c index b7dae78fb2c2..9610ce2fe363 100644 --- a/sys/netinet/in_pcb.c +++ b/sys/netinet/in_pcb.c @@ -36,7 +36,6 @@ * SUCH DAMAGE. */ -#include #include "opt_ddb.h" #include "opt_ipsec.h" #include "opt_inet.h" diff --git a/sys/netinet/in_proto.c b/sys/netinet/in_proto.c index 42a6cf0b5810..3ec515d216fa 100644 --- a/sys/netinet/in_proto.c +++ b/sys/netinet/in_proto.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "opt_mrouting.h" #include "opt_ipsec.h" #include "opt_inet.h" diff --git a/sys/netinet/ip_carp.c b/sys/netinet/ip_carp.c index 4f553b9aac5e..d33ac4e9a154 100644 --- a/sys/netinet/ip_carp.c +++ b/sys/netinet/ip_carp.c @@ -28,7 +28,6 @@ * THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "opt_bpf.h" #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet/ip_divert.c b/sys/netinet/ip_divert.c index 5a561814cdb5..a88497a71019 100644 --- a/sys/netinet/ip_divert.c +++ b/sys/netinet/ip_divert.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_sctp.h" diff --git a/sys/netinet/ip_ecn.c b/sys/netinet/ip_ecn.c index 2f700c43bbfa..0166c8b5d9c5 100644 --- a/sys/netinet/ip_ecn.c +++ b/sys/netinet/ip_ecn.c @@ -36,7 +36,6 @@ * http://www.aciri.org/floyd/papers/draft-ipsec-ecn-00.txt */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet/ip_encap.c b/sys/netinet/ip_encap.c index 6de799dec1d9..d3ca0b19f2f5 100644 --- a/sys/netinet/ip_encap.c +++ b/sys/netinet/ip_encap.c @@ -58,7 +58,6 @@ * The code will let you match protocol via src/dst address pair. */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet/ip_fastfwd.c b/sys/netinet/ip_fastfwd.c index 51e7c2fbc4b0..d3d42afb2d84 100644 --- a/sys/netinet/ip_fastfwd.c +++ b/sys/netinet/ip_fastfwd.c @@ -67,7 +67,6 @@ * is being followed here. */ -#include #include "opt_ipstealth.h" #include "opt_sctp.h" diff --git a/sys/netinet/ip_gre.c b/sys/netinet/ip_gre.c index 01a6ef4cd670..8175155cc2c0 100644 --- a/sys/netinet/ip_gre.c +++ b/sys/netinet/ip_gre.c @@ -34,7 +34,6 @@ * $NetBSD: ip_gre.c,v 1.29 2003/09/05 23:02:43 itojun Exp $ */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet/ip_icmp.c b/sys/netinet/ip_icmp.c index fc0848b2c944..adf69c47aed5 100644 --- a/sys/netinet/ip_icmp.c +++ b/sys/netinet/ip_icmp.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include diff --git a/sys/netinet/ip_id.c b/sys/netinet/ip_id.c index 738b7eceb448..4a224a157a56 100644 --- a/sys/netinet/ip_id.c +++ b/sys/netinet/ip_id.c @@ -26,7 +26,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include /* * IP ID generation is a fascinating topic. * diff --git a/sys/netinet/ip_input.c b/sys/netinet/ip_input.c index 4d614dfeb0a2..6ddec6726428 100644 --- a/sys/netinet/ip_input.c +++ b/sys/netinet/ip_input.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "opt_bootp.h" #include "opt_inet.h" #include "opt_ipstealth.h" diff --git a/sys/netinet/ip_mroute.c b/sys/netinet/ip_mroute.c index d30bd42ec578..f9efdc419882 100644 --- a/sys/netinet/ip_mroute.c +++ b/sys/netinet/ip_mroute.c @@ -67,7 +67,6 @@ * TODO: Sync ip6_mroute.c with this file. */ -#include #include "opt_inet.h" #include "opt_mrouting.h" diff --git a/sys/netinet/ip_options.c b/sys/netinet/ip_options.c index a9d6836d9e97..285bdad46272 100644 --- a/sys/netinet/ip_options.c +++ b/sys/netinet/ip_options.c @@ -31,7 +31,6 @@ * SUCH DAMAGE. */ -#include #include "opt_ipstealth.h" #include diff --git a/sys/netinet/ip_output.c b/sys/netinet/ip_output.c index ef08b9cfd3d6..a6b29c6a7612 100644 --- a/sys/netinet/ip_output.c +++ b/sys/netinet/ip_output.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_ipsec.h" #include "opt_kern_tls.h" diff --git a/sys/netinet/ip_reass.c b/sys/netinet/ip_reass.c index 177069f5e010..510a300ed6ef 100644 --- a/sys/netinet/ip_reass.c +++ b/sys/netinet/ip_reass.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "opt_rss.h" #include diff --git a/sys/netinet/sctp_crc32.c b/sys/netinet/sctp_crc32.c index 60d8bc38735a..c9647ceccc66 100644 --- a/sys/netinet/sctp_crc32.c +++ b/sys/netinet/sctp_crc32.c @@ -32,7 +32,6 @@ * THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "opt_sctp.h" #include diff --git a/sys/netinet/sctp_module.c b/sys/netinet/sctp_module.c index 2e229658efd9..4af7776433c0 100644 --- a/sys/netinet/sctp_module.c +++ b/sys/netinet/sctp_module.c @@ -28,7 +28,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet/sctp_syscalls.c b/sys/netinet/sctp_syscalls.c index 9d85576e2592..80d1d58a7866 100644 --- a/sys/netinet/sctp_syscalls.c +++ b/sys/netinet/sctp_syscalls.c @@ -28,7 +28,6 @@ * */ -#include #include "opt_capsicum.h" #include "opt_sctp.h" #include "opt_ktrace.h" diff --git a/sys/netinet/tcp_ecn.c b/sys/netinet/tcp_ecn.c index 5332b3caf950..31b9418c5fc2 100644 --- a/sys/netinet/tcp_ecn.c +++ b/sys/netinet/tcp_ecn.c @@ -54,7 +54,6 @@ * https://tools.ietf.org/html/draft-ietf-tcpm-accurate-ecn-09 */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet/tcp_fastopen.c b/sys/netinet/tcp_fastopen.c index 609637b83df3..fb1386c03d22 100644 --- a/sys/netinet/tcp_fastopen.c +++ b/sys/netinet/tcp_fastopen.c @@ -163,7 +163,6 @@ * */ -#include #include "opt_inet.h" #include diff --git a/sys/netinet/tcp_hostcache.c b/sys/netinet/tcp_hostcache.c index df639876a85c..e5c20b6f2475 100644 --- a/sys/netinet/tcp_hostcache.c +++ b/sys/netinet/tcp_hostcache.c @@ -65,7 +65,6 @@ * followed here. */ -#include #include "opt_inet6.h" #include diff --git a/sys/netinet/tcp_hpts.c b/sys/netinet/tcp_hpts.c index c54459bb5f01..29a55c1a7e39 100644 --- a/sys/netinet/tcp_hpts.c +++ b/sys/netinet/tcp_hpts.c @@ -23,7 +23,6 @@ * SUCH DAMAGE. * */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_rss.h" diff --git a/sys/netinet/tcp_hpts_test.c b/sys/netinet/tcp_hpts_test.c index c5dc9cb5b03b..61082adc9063 100644 --- a/sys/netinet/tcp_hpts_test.c +++ b/sys/netinet/tcp_hpts_test.c @@ -26,7 +26,6 @@ */ #include -#include #include "opt_inet.h" #include #include diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index 9c58c2815d13..85ab26351f6b 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -47,7 +47,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_ipsec.h" diff --git a/sys/netinet/tcp_log_buf.c b/sys/netinet/tcp_log_buf.c index 473c534ef83d..4505171d94d0 100644 --- a/sys/netinet/tcp_log_buf.c +++ b/sys/netinet/tcp_log_buf.c @@ -27,7 +27,6 @@ * */ -#include #include "opt_inet.h" #include "opt_ddb.h" #include diff --git a/sys/netinet/tcp_lro.c b/sys/netinet/tcp_lro.c index 9b5baf115855..3b04d757c0f9 100644 --- a/sys/netinet/tcp_lro.c +++ b/sys/netinet/tcp_lro.c @@ -32,7 +32,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet/tcp_lro_hpts.c b/sys/netinet/tcp_lro_hpts.c index ac1a27a4290a..99989d2833c0 100644 --- a/sys/netinet/tcp_lro_hpts.c +++ b/sys/netinet/tcp_lro_hpts.c @@ -24,7 +24,6 @@ * SUCH DAMAGE. * */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet/tcp_offload.c b/sys/netinet/tcp_offload.c index 6a362484d46f..20bc1df9e15c 100644 --- a/sys/netinet/tcp_offload.c +++ b/sys/netinet/tcp_offload.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet/tcp_output.c b/sys/netinet/tcp_output.c index 208f72c4661c..23085f67d5f9 100644 --- a/sys/netinet/tcp_output.c +++ b/sys/netinet/tcp_output.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_ipsec.h" diff --git a/sys/netinet/tcp_ratelimit.c b/sys/netinet/tcp_ratelimit.c index a0e837cc7d76..ad5fdb25205c 100644 --- a/sys/netinet/tcp_ratelimit.c +++ b/sys/netinet/tcp_ratelimit.c @@ -31,7 +31,6 @@ * Author: Randall Stewart */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_ipsec.h" diff --git a/sys/netinet/tcp_reass.c b/sys/netinet/tcp_reass.c index 5f73e83dc8a9..d1a70e4db3a3 100644 --- a/sys/netinet/tcp_reass.c +++ b/sys/netinet/tcp_reass.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet/tcp_sack.c b/sys/netinet/tcp_sack.c index 6e08ad2796a8..13cc7b0de157 100644 --- a/sys/netinet/tcp_sack.c +++ b/sys/netinet/tcp_sack.c @@ -69,7 +69,6 @@ * Research Laboratory (NRL). */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet/tcp_subr.c b/sys/netinet/tcp_subr.c index b6f428b279b3..6b0aa76527f4 100644 --- a/sys/netinet/tcp_subr.c +++ b/sys/netinet/tcp_subr.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_ipsec.h" diff --git a/sys/netinet/tcp_syncache.c b/sys/netinet/tcp_syncache.c index 6c072e0fec38..056542bc43d6 100644 --- a/sys/netinet/tcp_syncache.c +++ b/sys/netinet/tcp_syncache.c @@ -32,7 +32,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_ipsec.h" diff --git a/sys/netinet/tcp_timer.c b/sys/netinet/tcp_timer.c index 57c57666fa3a..b409daf5895e 100644 --- a/sys/netinet/tcp_timer.c +++ b/sys/netinet/tcp_timer.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_rss.h" diff --git a/sys/netinet/tcp_timewait.c b/sys/netinet/tcp_timewait.c index ce63fcf9ffc0..3afa3c0ac1c1 100644 --- a/sys/netinet/tcp_timewait.c +++ b/sys/netinet/tcp_timewait.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_ipsec.h" diff --git a/sys/netinet/tcp_usrreq.c b/sys/netinet/tcp_usrreq.c index aeb28cd6a144..a0658e18fb1e 100644 --- a/sys/netinet/tcp_usrreq.c +++ b/sys/netinet/tcp_usrreq.c @@ -35,7 +35,6 @@ * SUCH DAMAGE. */ -#include #include "opt_ddb.h" #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet/toecore.c b/sys/netinet/toecore.c index 4203029ff7c3..1c4e89069a4b 100644 --- a/sys/netinet/toecore.c +++ b/sys/netinet/toecore.c @@ -27,7 +27,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet/udp_usrreq.c b/sys/netinet/udp_usrreq.c index f1d952037d5a..75782765bc98 100644 --- a/sys/netinet/udp_usrreq.c +++ b/sys/netinet/udp_usrreq.c @@ -36,7 +36,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_ipsec.h" diff --git a/sys/netinet6/dest6.c b/sys/netinet6/dest6.c index 85ce894c40c3..e8b60fe79101 100644 --- a/sys/netinet6/dest6.c +++ b/sys/netinet6/dest6.c @@ -31,7 +31,6 @@ * $KAME: dest6.c,v 1.59 2003/07/11 13:21:16 t-momose Exp $ */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet6/frag6.c b/sys/netinet6/frag6.c index f6bb6e94ed08..7d71e1327934 100644 --- a/sys/netinet6/frag6.c +++ b/sys/netinet6/frag6.c @@ -32,7 +32,6 @@ * $KAME: frag6.c,v 1.33 2002/01/07 11:34:48 kjc Exp $ */ -#include #include "opt_rss.h" #include diff --git a/sys/netinet6/icmp6.c b/sys/netinet6/icmp6.c index f98381499b2d..c05850f1477b 100644 --- a/sys/netinet6/icmp6.c +++ b/sys/netinet6/icmp6.c @@ -60,7 +60,6 @@ * SUCH DAMAGE. */ -#include #define MBUF_PRIVATE /* XXXRW: Optimisation tries to avoid M_EXT mbufs */ #include "opt_inet.h" diff --git a/sys/netinet6/in6.c b/sys/netinet6/in6.c index b98703bdfbfe..f2a032585342 100644 --- a/sys/netinet6/in6.c +++ b/sys/netinet6/in6.c @@ -60,7 +60,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet6/in6_fib.c b/sys/netinet6/in6_fib.c index 3e8b8ccce7aa..95094a1ace76 100644 --- a/sys/netinet6/in6_fib.c +++ b/sys/netinet6/in6_fib.c @@ -27,7 +27,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_route.h" diff --git a/sys/netinet6/in6_fib_algo.c b/sys/netinet6/in6_fib_algo.c index ef5cfc6d5ef6..47c1f7d20786 100644 --- a/sys/netinet6/in6_fib_algo.c +++ b/sys/netinet6/in6_fib_algo.c @@ -25,7 +25,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet6.h" #include diff --git a/sys/netinet6/in6_gif.c b/sys/netinet6/in6_gif.c index 2bab1c57ce2a..5159faa1e2e8 100644 --- a/sys/netinet6/in6_gif.c +++ b/sys/netinet6/in6_gif.c @@ -32,7 +32,6 @@ * $KAME: in6_gif.c,v 1.49 2001/05/14 14:02:17 itojun Exp $ */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet6/in6_jail.c b/sys/netinet6/in6_jail.c index 5abdef9ab711..84057f3f9649 100644 --- a/sys/netinet6/in6_jail.c +++ b/sys/netinet6/in6_jail.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include "opt_ddb.h" #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet6/in6_mcast.c b/sys/netinet6/in6_mcast.c index a6186568ecb2..613bd14428bb 100644 --- a/sys/netinet6/in6_mcast.c +++ b/sys/netinet6/in6_mcast.c @@ -34,7 +34,6 @@ * Normative references: RFC 2292, RFC 3492, RFC 3542, RFC 3678, RFC 3810. */ -#include #include "opt_inet6.h" #include diff --git a/sys/netinet6/in6_pcb.c b/sys/netinet6/in6_pcb.c index dfda0c60c0ba..f2eb00161690 100644 --- a/sys/netinet6/in6_pcb.c +++ b/sys/netinet6/in6_pcb.c @@ -64,7 +64,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_ipsec.h" diff --git a/sys/netinet6/in6_proto.c b/sys/netinet6/in6_proto.c index f567b42b42ca..a566ca6b0fb0 100644 --- a/sys/netinet6/in6_proto.c +++ b/sys/netinet6/in6_proto.c @@ -60,7 +60,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_ipsec.h" diff --git a/sys/netinet6/in6_src.c b/sys/netinet6/in6_src.c index 3e55c6e5fc05..5171bc1d4ea6 100644 --- a/sys/netinet6/in6_src.c +++ b/sys/netinet6/in6_src.c @@ -60,7 +60,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include diff --git a/sys/netinet6/ip6_fastfwd.c b/sys/netinet6/ip6_fastfwd.c index 7139267722b7..9298b8ea9a49 100644 --- a/sys/netinet6/ip6_fastfwd.c +++ b/sys/netinet6/ip6_fastfwd.c @@ -24,7 +24,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "opt_inet6.h" #include "opt_ipstealth.h" #include "opt_sctp.h" diff --git a/sys/netinet6/ip6_forward.c b/sys/netinet6/ip6_forward.c index f6c09b0ac7bc..9823366b0156 100644 --- a/sys/netinet6/ip6_forward.c +++ b/sys/netinet6/ip6_forward.c @@ -31,7 +31,6 @@ * $KAME: ip6_forward.c,v 1.69 2001/05/17 03:48:30 itojun Exp $ */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_ipsec.h" diff --git a/sys/netinet6/ip6_gre.c b/sys/netinet6/ip6_gre.c index 9ba45cb294e9..952b132e4cf7 100644 --- a/sys/netinet6/ip6_gre.c +++ b/sys/netinet6/ip6_gre.c @@ -24,7 +24,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet6/ip6_id.c b/sys/netinet6/ip6_id.c index 7c39bcf943bc..73e48d8c840d 100644 --- a/sys/netinet6/ip6_id.c +++ b/sys/netinet6/ip6_id.c @@ -63,7 +63,6 @@ * $OpenBSD: ip6_id.c,v 1.3 2003/12/12 06:57:12 itojun Exp $ */ -#include /* * seed = random (bits - 1) bit * n = prime, g0 = generator to n, diff --git a/sys/netinet6/ip6_input.c b/sys/netinet6/ip6_input.c index 99dad1e7c309..380391fd71f4 100644 --- a/sys/netinet6/ip6_input.c +++ b/sys/netinet6/ip6_input.c @@ -60,7 +60,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_ipsec.h" diff --git a/sys/netinet6/ip6_mroute.c b/sys/netinet6/ip6_mroute.c index f3c68d61f245..4473d3931af8 100644 --- a/sys/netinet6/ip6_mroute.c +++ b/sys/netinet6/ip6_mroute.c @@ -78,7 +78,6 @@ * MROUTING Revision: 3.5.1.2 + PIM-SMv2 (pimd) Support */ -#include #include "opt_inet6.h" #include diff --git a/sys/netinet6/ip6_output.c b/sys/netinet6/ip6_output.c index 6299ce6e146b..8ade50b13568 100644 --- a/sys/netinet6/ip6_output.c +++ b/sys/netinet6/ip6_output.c @@ -60,7 +60,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_ipsec.h" diff --git a/sys/netinet6/mld6.c b/sys/netinet6/mld6.c index 5dfe48908a4f..fd0a1503a6e5 100644 --- a/sys/netinet6/mld6.c +++ b/sys/netinet6/mld6.c @@ -63,7 +63,6 @@ * SUCH DAMAGE. */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet6/nd6.c b/sys/netinet6/nd6.c index 00df5efcef92..a62b26d27250 100644 --- a/sys/netinet6/nd6.c +++ b/sys/netinet6/nd6.c @@ -31,7 +31,6 @@ * $KAME: nd6.c,v 1.144 2001/05/24 07:44:00 itojun Exp $ */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_route.h" diff --git a/sys/netinet6/nd6_nbr.c b/sys/netinet6/nd6_nbr.c index 29151b29a071..aa7cb3b41973 100644 --- a/sys/netinet6/nd6_nbr.c +++ b/sys/netinet6/nd6_nbr.c @@ -31,7 +31,6 @@ * $KAME: nd6_nbr.c,v 1.86 2002/01/21 02:33:04 jinmei Exp $ */ -#include #include "opt_inet.h" #include "opt_inet6.h" #include "opt_ipsec.h" diff --git a/sys/netinet6/nd6_rtr.c b/sys/netinet6/nd6_rtr.c index 10f0342f2bc4..224cd7e56b4d 100644 --- a/sys/netinet6/nd6_rtr.c +++ b/sys/netinet6/nd6_rtr.c @@ -31,7 +31,6 @@ * $KAME: nd6_rtr.c,v 1.111 2001/04/27 01:37:15 jinmei Exp $ */ -#include #include "opt_inet.h" #include "opt_inet6.h" diff --git a/sys/netinet6/route6.c b/sys/netinet6/route6.c index e570c77db3d3..9cf5ecb519b1 100644 --- a/sys/netinet6/route6.c *** 21 LINES SKIPPED *** From nobody Wed Dec 3 05:26:33 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLmND0v5pz6Hdqc for ; Wed, 03 Dec 2025 05:26:52 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-pl1-x635.google.com (mail-pl1-x635.google.com [IPv6:2607:f8b0:4864:20::635]) (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 4dLmNC2DWwz3D6V for ; Wed, 03 Dec 2025 05:26:51 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=bsdimp-com.20230601.gappssmtp.com header.s=20230601 header.b=vKQLgz8w; dmarc=none; spf=none (mx1.freebsd.org: domain of wlosh@bsdimp.com has no SPF policy when checking 2607:f8b0:4864:20::635) smtp.mailfrom=wlosh@bsdimp.com Received: by mail-pl1-x635.google.com with SMTP id d9443c01a7336-298456bb53aso81291915ad.0 for ; Tue, 02 Dec 2025 21:26:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1764739604; x=1765344404; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=SGQybfttdsvorhLlm05XwE76pvK5uQZ4bK6zt2r2zm8=; b=vKQLgz8wczWvcNvKLHWBPRrhmMMJIqxu/YXfSNV2YUMmnyB7cwSc9xj3XkI/c5aWse jel+wfosTdkHt+CTLrsmDEiKKmxx9aVGpK/BRV0/sWHk0nQ3ccdm5bbxenaqkQkoYa3W slzJLdZ4B3EqCPIqdx9AuXmlOZMlPEEhPPvkLCMefW0O32RrBB04s8LydSXrfSlBcdVi BrUuxbIZSscAqmKwf8SzppXKb0NfJb5Mw22wJSuAi8/aZk3SF9BuxCy6R9w29mB7faAg QDUR3srn1KfS9CE1MvETpkvzdgoGcA5UmcbK2DK/WruJxIw0hGLqYge/olGq1lTbz+Fy jM+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764739604; x=1765344404; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=SGQybfttdsvorhLlm05XwE76pvK5uQZ4bK6zt2r2zm8=; b=aD1Z6G3A0MW1ojCv3vRH7pg6EXw9do2sfB+SERCW9O7iWGtZhSGlpU4jDhJlF/I1sn 0I7OIbxbBM1/mj0sJckkYfXjemXXnjmpeSEihu/CF364PrTR9NDRTv1JAGmATGlgnp+t 5jfD1AilwBxNlzixFUj/b8VCOwg++U/R10SOeVXX8jxLwcWt150rrYtCMuta5KXzxA2v Ys+FKfG1aqEDug+zA1x0YXK6g0Da2kKPp1dVGcH7iXGJOd31SMtKPsTw1ZstMPUtcDsv 60UTiou0aeGoisoZh1KAkqHpl0/YdH2d1nMXfzK0RTDAjQQbBgQYj8FTypTQsdYHjRKn SrgQ== X-Forwarded-Encrypted: i=1; AJvYcCURz6g1GCG8kxmOQsgJRSwCM+gtbNFAqvVKV8Du2l1Maph7lsaXn6jpv1TnyZBt2vttqAHJ/6Qf2X/kYmTXzPR/6F6N@freebsd.org X-Gm-Message-State: AOJu0YzVatMpqXnbkTKLhiN1BzGDfKzUUJ+9GQWcuNAp7PEc3U/SfOEB m5ruhucaf0Gbr0h+VFbvhZTjqIJHfA7O6KeFmrnieRXt5ka6fP5580VvOZF8rt8o1AmONf0gM+h gKj+z56gIrznZ7KMKODu6XNN4Pww4MYrQXZVdyCV/wHok2FbDf1yl X-Gm-Gg: ASbGncuKu/Rtb76Ph3iHlS2oddkYdYKua+vwNnl+MxelhnG51iBJ7UF8bdq/d0x/Qqd zSK9fBTce1Fk6KtGeHdq96tlscQA5JjanffFhk8e5pXSt0iF4gpQ06tjqLK5+C94lLcZfELS+rA Em1rIOVCZ4JBMK3mT8bm5ErKGUgQI4haJmb14A7BHwIz2dkXaxqVzTbDnGEMk8m5FO3VJVNY4vJ NF1SLMImLfrp8JcvE2PobQ0i6E9wdUOriITXBLc0espZNwxMDWL89LEr93nsP+W9Mnvs93GgFUF oBVpHw== X-Google-Smtp-Source: AGHT+IGcSXhSgJF2I3MFFri6R7N5MSbh/XYj/PiHIxAfNDEV6erbIl8+tKXWI5nIS+h8i7q0ir1VZQ2T34uRXieeoQM= X-Received: by 2002:a17:902:e94e:b0:297:f8d9:aae7 with SMTP id d9443c01a7336-29d683add85mr12986925ad.46.1764739604384; Tue, 02 Dec 2025 21:26:44 -0800 (PST) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 References: <692a8ea7.feb1.63d10382@gitrepo.freebsd.org> In-Reply-To: From: Warner Losh Date: Tue, 2 Dec 2025 22:26:33 -0700 X-Gm-Features: AWmQ_bnXC4KBKqg_64Yynj09uRHbyCOMinVOJSbAjjpVnxQ8THb6-0qJicixXSk Message-ID: Subject: Re: git: f42421307b11 - main - sys: remove armv6/6.1 support from debug monitor To: John Baldwin Cc: Warner Losh , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org, Minsoo Choo Content-Type: multipart/alternative; boundary="0000000000003d9f6a06450575a8" X-Spamd-Bar: -- X-Spamd-Result: default: False [-3.00 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.999]; FORGED_SENDER(0.30)[imp@bsdimp.com,wlosh@bsdimp.com]; R_DKIM_ALLOW(-0.20)[bsdimp-com.20230601.gappssmtp.com:s=20230601]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; RCVD_COUNT_ONE(0.00)[1]; MISSING_XM_UA(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; ARC_NA(0.00)[]; TO_DN_SOME(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::635:from]; R_SPF_NA(0.00)[no SPF record]; DMARC_NA(0.00)[bsdimp.com]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org]; FROM_NEQ_ENVFROM(0.00)[imp@bsdimp.com,wlosh@bsdimp.com]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_FIVE(0.00)[6]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_TLS_LAST(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[dev-commits-src-all@freebsd.org]; DKIM_TRACE(0.00)[bsdimp-com.20230601.gappssmtp.com:+] X-Rspamd-Queue-Id: 4dLmNC2DWwz3D6V --0000000000003d9f6a06450575a8 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Dec 1, 2025 at 8:18=E2=80=AFAM John Baldwin wrote= : > On 11/29/25 01:11, Warner Losh wrote: > > The branch main has been updated by imp: > > > > URL: > https://cgit.FreeBSD.org/src/commit/?id=3Df42421307b115345ea1a6c8fdf61fbb= 581e4400f > > > > commit f42421307b115345ea1a6c8fdf61fbb581e4400f > > Author: Minsoo Choo > > AuthorDate: 2025-11-29 00:34:40 +0000 > > Commit: Warner Losh > > CommitDate: 2025-11-29 04:56:36 +0000 > > > > sys: remove armv6/6.1 support from debug monitor > > > > Signed-off-by: Minsoo Choo > > Reviewed by: imp > > Pull Request: https://github.com/freebsd/freebsd-src/pull/1903 > > --- > > sys/arm/arm/debug_monitor.c | 30 ------------------------------ > > 1 file changed, 30 deletions(-) > > > > diff --git a/sys/arm/arm/debug_monitor.c b/sys/arm/arm/debug_monitor.c > > index 7944becbae4d..4d61896a2142 100644 > > --- a/sys/arm/arm/debug_monitor.c > > +++ b/sys/arm/arm/debug_monitor.c > > @@ -83,8 +83,6 @@ static uint32_t dbg_breakpoint_num; > > #define ID_DFR0_CP_DEBUG_M_SHIFT 0 > > #define ID_DFR0_CP_DEBUG_M_MASK (0xF << > ID_DFR0_CP_DEBUG_M_SHIFT) > > #define ID_DFR0_CP_DEBUG_M_NS (0x0) /* Not supported */ > > -#define ID_DFR0_CP_DEBUG_M_V6 (0x2) /* v6 Debug arch. > CP14 access */ > > -#define ID_DFR0_CP_DEBUG_M_V6_1 (0x3) /* v6.1 Debug arch. > CP14 access */ > > #define ID_DFR0_CP_DEBUG_M_V7 (0x4) /* v7 Debug arch. > CP14 access */ > > #define ID_DFR0_CP_DEBUG_M_V7_1 (0x5) /* v7.1 Debug arch. > CP14 access */ > > Humm, I would have probably left these as the register is still valid and > I find it > useful to describe the full range of values for registers that we define > constants for. > The rest of the removal certainly makes sense. > Sure. > > > > @@ -594,10 +592,6 @@ dbg_enable_monitor(void) > > dbg_dscr =3D cp14_dbgdscrint_get(); > > > > switch (dbg_model) { > > - case ID_DFR0_CP_DEBUG_M_V6: > > - case ID_DFR0_CP_DEBUG_M_V6_1: /* fall through */ > > - cp14_dbgdscr_v6_set(dbg_dscr | DBGSCR_MDBG_EN); > > - break; > > Should this function also be removed? Looks to be defined here in > sys/arm/include/cpu.h: > > _WF1(cp14_dbgdscr_v6_set, CP14_DBGDSCRext_V6(%0)) > OK. I'll do these tweaks.. Warner --0000000000003d9f6a06450575a8 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On 11/29/25 01:11, Warner Losh wrote:
> The branch main has been updated by imp:
>
> URL: https://= cgit.FreeBSD.org/src/commit/?id=3Df42421307b115345ea1a6c8fdf61fbb581e4400f<= /a>
>
> commit f42421307b115345ea1a6c8fdf61fbb581e4400f
> Author:=C2=A0 =C2=A0 =C2=A0Minsoo Choo <
minsoochoo0122@proton.me>
> AuthorDate: 2025-11-29 00:34:40 +0000
> Commit:=C2=A0 =C2=A0 =C2=A0Warner Losh <imp@FreeBSD.org>
> CommitDate: 2025-11-29 04:56:36 +0000
>
>=C2=A0 =C2=A0 =C2=A0 sys: remove armv6/6.1 support from debug monitor >=C2=A0 =C2=A0 =C2=A0
>=C2=A0 =C2=A0 =C2=A0 Signed-off-by: Minsoo Choo <minsoochoo0122@proton.me>=
>=C2=A0 =C2=A0 =C2=A0 Reviewed by: imp
>=C2=A0 =C2=A0 =C2=A0 Pull Request: https://githu= b.com/freebsd/freebsd-src/pull/1903
> ---
>=C2=A0 =C2=A0sys/arm/arm/debug_monitor.c | 30 -------------------------= -----
>=C2=A0 =C2=A01 file changed, 30 deletions(-)
>
> diff --git a/sys/arm/arm/debug_monitor.c b/sys/arm/arm/debug_monitor.c=
> index 7944becbae4d..4d61896a2142 100644
> --- a/sys/arm/arm/debug_monitor.c
> +++ b/sys/arm/arm/debug_monitor.c
> @@ -83,8 +83,6 @@ static uint32_t dbg_breakpoint_num;
>=C2=A0 =C2=A0#define=C2=A0 =C2=A0 =C2=A0ID_DFR0_CP_DEBUG_M_SHIFT=C2=A0 = =C2=A0 =C2=A0 =C2=A0 0
>=C2=A0 =C2=A0#define=C2=A0 =C2=A0 =C2=A0ID_DFR0_CP_DEBUG_M_MASK=C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0(0xF << ID_DFR0_CP_DEBUG_M_SHIFT)
>=C2=A0 =C2=A0#define=C2=A0 =C2=A0 =C2=A0ID_DFR0_CP_DEBUG_M_NS=C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(0x0) /* Not supported */
> -#define=C2=A0 =C2=A0 =C2=A0 ID_DFR0_CP_DEBUG_M_V6=C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0(0x2) /* v6 Debug arch. CP14 access */
> -#define=C2=A0 =C2=A0 =C2=A0 ID_DFR0_CP_DEBUG_M_V6_1=C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0(0x3) /* v6.1 Debug arch. CP14 access */
>=C2=A0 =C2=A0#define=C2=A0 =C2=A0 =C2=A0ID_DFR0_CP_DEBUG_M_V7=C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0(0x4) /* v7 Debug arch. CP14 access */
>=C2=A0 =C2=A0#define=C2=A0 =C2=A0 =C2=A0ID_DFR0_CP_DEBUG_M_V7_1=C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0(0x5) /* v7.1 Debug arch. CP14 access */

Humm, I would have probably left these as the register is still valid and I= find it
useful to describe the full range of values for registers that we define co= nstants for.
The rest of the removal certainly makes sense.

Sure.
=C2=A0
>=C2=A0 =C2=A0
> @@ -594,10 +592,6 @@ dbg_enable_monitor(void)
>=C2=A0 =C2=A0 =C2=A0 =C2=A0dbg_dscr =3D cp14_dbgdscrint_get();
>=C2=A0 =C2=A0
>=C2=A0 =C2=A0 =C2=A0 =C2=A0switch (dbg_model) {
> -=C2=A0 =C2=A0 =C2=A0case ID_DFR0_CP_DEBUG_M_V6:
> -=C2=A0 =C2=A0 =C2=A0case ID_DFR0_CP_DEBUG_M_V6_1: /* fall through */<= br> > -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0cp14_dbgdscr_v6_set(d= bg_dscr | DBGSCR_MDBG_EN);
> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0break;

Should this function also be removed?=C2=A0 Looks to be defined here in sys= /arm/include/cpu.h:

_WF1(cp14_dbgdscr_v6_set, CP14_DBGDSCRext_V6(%0))

=
OK. I'll do these tweaks..

Warner
=C2=A0
--0000000000003d9f6a06450575a8-- From nobody Wed Dec 3 05:32:11 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLmVM2JmFz6HfBJ for ; Wed, 03 Dec 2025 05:32:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLmVM1nR9z3Dyd for ; Wed, 03 Dec 2025 05:32:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764739931; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WHCB8tGVNHvDfO0jv5xrz3FP5MqH1yzeILvXvp/kkMY=; b=ZTcJY/2Cj9OpOLIuthJgWNoNY/HAeiwy6qbHa/aCNE4G/afnFRVnFmLZZrd82hcidXQIBT c7RcUi/LXb1ad30BLmyWvdoZdc70EOvY3jZQ1jAPmjpeCsIz0s9SOwzetBgkVnsvLj1DHW tJVRjBePOSKGTHiMvGEMWL0IGor4Vg0vreBRlfwCXH0x+1YCKr4w3rXC0y7F2DvGnKqb7J Nx6hi3f4lKc7P7fgA5Yhwvr74rKq4qyveSYGQYGmmk4jygZOGScFV9vnxVMxe621mqxw8d C8Rj2WElcNiW11PAWyYYf+c39bWfSdos/Nt6QFThGaRbG7jNa9tUq4Z2MTWWMA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764739931; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WHCB8tGVNHvDfO0jv5xrz3FP5MqH1yzeILvXvp/kkMY=; b=PQ/K4Yi6kOBGbYnQtyejr/IbUumiCUYEm91ZNyXTA+3h0ozxB7P+tjqlRz0A8O1c3CkPax Gau/yOCNvZbUu41Pq3rcBvQxt9N+b9gul28OvVJtQBK6kgHyjNd9I66kuWqSkEwcxp13Iw isYxwlpwFIm1ZpwvHNL5PcB/3BwsX6oXkaoddZ6CzFb0hrpcGW7DiFv8G771JU8P77F/fF OHxkxUqjDO7ZTYK9Y0RUAHkqzi2pptDecMZsd7lj/L2ZRmJfpUF7MREizb+6kA/Zga0f7g YpIGywnPyTv7KvV6RTjnrqUS/1A1l2dFCXfAZwUfP/qJ5DMvP+UM6oe7gRsUxQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764739931; a=rsa-sha256; cv=none; b=W0Wp/PD0ijhAfym0NMSXgZR/1g/u61yG7ovdv6Y0jype6xRLth4KSN8j+EK4Nsq8z/gasp nNBd2foTDvOSJowFTH3XujnLy7qgrOpGm1tA/NwqcBa/qwWYZx7ouvg5WmO9lx17qb+ue9 9pzHYN8nSLQ1DSFP3doXmVcJio3dlf97U3EvRpp5U7IlzmFZaLiqmR31+eQ8qdFvqovYaE kW98MadP+pdsWwXAUBtTfCimPzx8Wvb8e+na22Yt0i8homOHFsdJtFXnVwLNC3nNxPxFrH /YTAIuLX68UUuH7bmLpe0pp/wpA9qkLSIVuqUGkCFCqgFHTJ/D52eG0iZmbeAg== 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 4dLmVM1DpHz8L9 for ; Wed, 03 Dec 2025 05:32:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 8ec2 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 05:32:11 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: b033e3684fd1 - main - armv7: Tweak some armv6 removals List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: b033e3684fd14c798405420449eb55e1d4f9df1e Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 05:32:11 +0000 Message-Id: <692fcb5b.8ec2.4d508639@gitrepo.freebsd.org> The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=b033e3684fd14c798405420449eb55e1d4f9df1e commit b033e3684fd14c798405420449eb55e1d4f9df1e Author: Warner Losh AuthorDate: 2025-12-03 05:29:42 +0000 Commit: Warner Losh CommitDate: 2025-12-03 05:29:42 +0000 armv7: Tweak some armv6 removals Fixes: 42421307b115 (sys: remove armv6/6.1 support from debug monitor) Suggested by: jhb Sponsored by: Netflix --- sys/arm/arm/debug_monitor.c | 2 ++ sys/arm/include/cpu.h | 1 - 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/arm/arm/debug_monitor.c b/sys/arm/arm/debug_monitor.c index a703c65f541b..9c5ee85e2925 100644 --- a/sys/arm/arm/debug_monitor.c +++ b/sys/arm/arm/debug_monitor.c @@ -83,6 +83,8 @@ static uint32_t dbg_breakpoint_num; #define ID_DFR0_CP_DEBUG_M_SHIFT 0 #define ID_DFR0_CP_DEBUG_M_MASK (0xF << ID_DFR0_CP_DEBUG_M_SHIFT) #define ID_DFR0_CP_DEBUG_M_NS (0x0) /* Not supported */ +#define ID_DFR0_CP_DEBUG_M_V6 (0x2) /* v6 Debug arch. CP14 access */ +#define ID_DFR0_CP_DEBUG_M_V6_1 (0x3) /* v6.1 Debug arch. CP14 access */ #define ID_DFR0_CP_DEBUG_M_V7 (0x4) /* v7 Debug arch. CP14 access */ #define ID_DFR0_CP_DEBUG_M_V7_1 (0x5) /* v7.1 Debug arch. CP14 access */ diff --git a/sys/arm/include/cpu.h b/sys/arm/include/cpu.h index da8127b093f0..d13e0d81db5b 100644 --- a/sys/arm/include/cpu.h +++ b/sys/arm/include/cpu.h @@ -186,7 +186,6 @@ _RF0(cp14_dbgoslsr_get, CP14_DBGOSLSR(%0)) _RF0(cp14_dbgosdlr_get, CP14_DBGOSDLR(%0)) _RF0(cp14_dbgdscrint_get, CP14_DBGDSCRint(%0)) -_WF1(cp14_dbgdscr_v6_set, CP14_DBGDSCRext_V6(%0)) _WF1(cp14_dbgdscr_v7_set, CP14_DBGDSCRext_V7(%0)) _WF1(cp14_dbgvcr_set, CP14_DBGVCR(%0)) _WF1(cp14_dbgoslar_set, CP14_DBGOSLAR(%0)) From nobody Wed Dec 3 06:51:58 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLpGQ4h2gz6Hmh5 for ; Wed, 03 Dec 2025 06:51: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLpGQ3lRDz3Q6r for ; Wed, 03 Dec 2025 06:51:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764744718; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZB5YdKGX5MCSHUsp8D47vBL711ofLy0QBJdA17LL2xg=; b=QV9zxbInOOKRRPDVDXKL1u3Y3ZplwnOUnj374nZSlGk2OiJXGCnZa9whY+rK+cfOfmk4Lu 3oPOKK646DV8RJR+3ALSSjtbJJxrmxsGRBYrWvCIGqmqScZK6CYoRIj9jv2x6Ej5WlCBwv ii51Xak1mcicTEAELwaSvIsLJWfX4wh4uF4PqO5xYNhSEhYm38RL9fExtDQmaI8wu0OPSV OLDCCjCcfep8VHG1UAsqEpFhsgAjc20/pUY6+k8GFvWfc62Y26pHwwA52du6Pom7dgdh0k nB+WxX99zBLJb/1sTk7RBfIqv0QzuPYXg4DOJ00xYB2Qo6lt/DrnhhQe1xqiZg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764744718; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZB5YdKGX5MCSHUsp8D47vBL711ofLy0QBJdA17LL2xg=; b=xv9v/hoeii5YQGHxeNLI+dsDZk47UFRgmT9j6OnhBnB3JRzYjkfkO2J+DjlrAoGOlEwZDq yI9ap4KJioV9x/qJ5OaTAhQaTfmnqc+IWFvEwzeIRbMWSuq3KCbwIKlm1IbnE1LZ4HogMI I+oQGh40pEOPwOKj/PiU02jL6tgFFRGbmiasOjJSEJ688lA4a9vWtA7gZYMGJp9OIE8aj8 GGNLDp8JetD/RDlmYuAc+6Nm8+rx0XlC64raYP/eSVQqzDMbv48KraxDchkkWL5TG4H7aG neD0IHW7wJweD22xUPjxb1Q2bQDr5cY/mTfdmglA6HwTa+SBqASjaFquAfLuxQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764744718; a=rsa-sha256; cv=none; b=cJP/AeS8Xer76pz60y5ioy+GognVSTZTTjVIDsqjIOo0NwovMzActBlyauuFaizKTc1h7F 2GOe84C8P1YQVJIeO7akWRpxJoK1oopTQZbDpdx1f9eNqlct+IUKwWdoGblz7zfww5u8Bk g0fKCvSaFAk2WndnHB4r8CQTheLJi7wdIx2PTzGnlysYxZDMqkixjzV7vdkcAlgPVKbf71 YTt1tcYLB/nXc6wsvO5kEZ1ngwmd9oLDtwnjcjPtWMgI0TDQWqcNYRl0JxEHZH/Y7/q0/z ulQs0fdSMmMQTJYvHcSMHqafhZwtKo4l2tGJ3pOLKXhgU7L9OJQGjl1t2PrrTw== 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 4dLpGQ3BDZzBPP for ; Wed, 03 Dec 2025 06:51:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 22d76 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 06:51:58 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michal Meloun Subject: git: d14a985898ee - main - ofw: Add ofw_bus_is_machine_compat(). List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mmel X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d14a985898eebd3bda8bb30c4078bde3ebd135f2 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 06:51:58 +0000 Message-Id: <692fde0e.22d76.185bc98a@gitrepo.freebsd.org> The branch main has been updated by mmel: URL: https://cgit.FreeBSD.org/src/commit/?id=d14a985898eebd3bda8bb30c4078bde3ebd135f2 commit d14a985898eebd3bda8bb30c4078bde3ebd135f2 Author: Michal Meloun AuthorDate: 2025-11-06 18:50:52 +0000 Commit: Michal Meloun CommitDate: 2025-12-03 06:47:41 +0000 ofw: Add ofw_bus_is_machine_compat(). We need a quick way to identify a given machine (SoC), mainly when implementing quirks for a given SoC. MFC after: 2 weeks Reviwed by: imp Differential Revision: https://reviews.freebsd.org/D53992 --- sys/dev/ofw/ofw_bus_subr.c | 9 +++++++++ sys/dev/ofw/ofw_bus_subr.h | 3 +++ 2 files changed, 12 insertions(+) diff --git a/sys/dev/ofw/ofw_bus_subr.c b/sys/dev/ofw/ofw_bus_subr.c index b99d784929bc..efca3ea14e2f 100644 --- a/sys/dev/ofw/ofw_bus_subr.c +++ b/sys/dev/ofw/ofw_bus_subr.c @@ -298,6 +298,15 @@ ofw_bus_is_compatible_strict(device_t dev, const char *compatible) return (0); } +bool +ofw_bus_is_machine_compatible(const char *compat) +{ + phandle_t root; + + root = OF_finddevice("/"); + return (ofw_bus_node_is_compatible(root, compat) != 0); +} + const struct ofw_compat_data * ofw_bus_search_compatible(device_t dev, const struct ofw_compat_data *compat) { diff --git a/sys/dev/ofw/ofw_bus_subr.h b/sys/dev/ofw/ofw_bus_subr.h index 1a33d7655f77..203c9689f156 100644 --- a/sys/dev/ofw/ofw_bus_subr.h +++ b/sys/dev/ofw/ofw_bus_subr.h @@ -117,6 +117,9 @@ int ofw_bus_is_compatible(device_t, const char *); int ofw_bus_is_compatible_strict(device_t, const char *); int ofw_bus_node_is_compatible(phandle_t, const char *); +/* Check if machine (root node) is compatible */ +bool ofw_bus_is_machine_compatible(const char *); + /* * Helper routine to search a list of compat properties. The table is * terminated by an entry with a NULL compat-string pointer; a pointer to that From nobody Wed Dec 3 06:51:59 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLpGR5qtgz6HmZV for ; Wed, 03 Dec 2025 06:51:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLpGR5GC5z3QJ4 for ; Wed, 03 Dec 2025 06:51:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764744719; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WaQYbNAB4X65qMNwAtJsJrtpQ6rP9W+J+3I+z5C+6YY=; b=OXK/hejiTIqKpWKJXTFuYhCHbvgE6ddBGk8tMo886nRn+08DWL32h/4NQiy3fEQTiVDjks PbMLPeF6VXvHRKFqLrcNTQ/mgdbC8PpJDoyGXMu0ymoizDOe/otzrWFa98X1WnOIc7iIpH CYxNcpLMYazhfNZFHmbkSEalPPn8AJoB+TC+mqigwlzdXv4R6BEs2cZYqRb0w68jzTl8VO i9ikawSgQl6S9xbqonRhtnCDfWsZbLmonslKO9SygcTRXcVXHVAK2jreZ5QYeLcF0YIhD5 cW7PywIxUhhjHTqqKOXe0K9zt001D+f3PnHHtZahGMp/LnXercbxZ5cYOeNb9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764744719; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WaQYbNAB4X65qMNwAtJsJrtpQ6rP9W+J+3I+z5C+6YY=; b=jP42FB/pnw6HDo1s8QLHcfxqV4kjpYGqkbI2Ycli7qmuAHcht8T5zrJPRnsyxUnR+3lHjw 8U0xW4NiMn9pxo6xAswWFOkgJvF1Asr9ZD6y8LP7UEpXV1WSHceeeEpKU6Src4nqhoa8Ks 3wSHjjP51PtH3dfy/yXWRGSrR4WrnkEM1v+O1epxW99FWvz2g+u/GZI2Nl0WCjqqfiFORH 3cr8kvTLvr2wSROoX+boiNDtW/Sb8FN4kVu2CHuiljBNgNBmdl6Vo7ZZS2FTz7WJsH6toA z71u+mUfMr5fC/aAZTxDGV90j6M3FVedXng7ndTsKd58t2yAZ16gnc2Sk0h3xQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764744719; a=rsa-sha256; cv=none; b=Sat7BmoCKjazV7RfT0S79JSn8W76maAXMkHEpLFJwKS8VD9GQadh9kgXRxs4kZsO2O4aoV IGp7cUB5GsHA+2w8R4m5jN/DNTcckbxM3+YaNvy+PkAXP2c+CSsI2DCCPBtf/aBYbt8Y0K m/kqE3jLBq5l2UHAzi1rNmc09CG7GFwSv/6A5qbovgoZ0IJj+sVxMy1/J0bBsDLdo1ePNd OfQYkC5czQj/C/+YKzf0Flno17s0v+GBZf4vbFIrEE3hTwi0CtXEqnGTZott0ed5eztKJf 7Tpp1m2BWLadkdBIpQMEf6rhC6Qw3UlBCcOcnEfUFrDBV10JNUAKbP96JXJx0Q== 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 4dLpGR3l8bzBCN for ; Wed, 03 Dec 2025 06:51:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 22e21 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 06:51:59 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michal Meloun Subject: git: 62e1227219f2 - main - ARM GICv3: Add support for non-coherent and/or bus address range limited DMA. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mmel X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 62e1227219f2f79a2ed7a672149dc3d774d25dd4 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 06:51:59 +0000 Message-Id: <692fde0f.22e21.6b96ab5b@gitrepo.freebsd.org> The branch main has been updated by mmel: URL: https://cgit.FreeBSD.org/src/commit/?id=62e1227219f2f79a2ed7a672149dc3d774d25dd4 commit 62e1227219f2f79a2ed7a672149dc3d774d25dd4 Author: Michal Meloun AuthorDate: 2025-11-06 18:56:10 +0000 Commit: Michal Meloun CommitDate: 2025-12-03 06:47:41 +0000 ARM GICv3: Add support for non-coherent and/or bus address range limited DMA. Due to an implementation bug, the GICv3 and ITS master ports may be connected to a non-coherent bus. The new DT resolves this issue by marking these ports with the "dma-nocoherent" attribute. The older DT does not have this attribute, so we must match the affected SoC. Additionally, the RK356x family has GIC master ports on a 32-bit bus. Therefore, we must limit the address range for all tables and command buffers allocated for it. In this case, the DT does not have an attribute for this case, so the quirk should only be applied by SoC matching. MFC after: 4 weeks Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D47488 --- sys/arm64/arm64/gic_v3.c | 4 ++ sys/arm64/arm64/gic_v3_fdt.c | 15 ++++- sys/arm64/arm64/gic_v3_var.h | 6 ++ sys/arm64/arm64/gicv3_its.c | 156 ++++++++++++++++++++++++++++++++++++------- 4 files changed, 157 insertions(+), 24 deletions(-) diff --git a/sys/arm64/arm64/gic_v3.c b/sys/arm64/arm64/gic_v3.c index 641b6d6dbc5e..d74cdc20dd20 100644 --- a/sys/arm64/arm64/gic_v3.c +++ b/sys/arm64/arm64/gic_v3.c @@ -494,6 +494,9 @@ gic_v3_read_ivar(device_t dev, device_t child, int which, uintptr_t *result) case GICV3_IVAR_REDIST: *result = (uintptr_t)&sc->gic_redists.pcpu[PCPU_GET(cpuid)]; return (0); + case GICV3_IVAR_FLAGS: + *result = sc->gic_flags; + return (0); case GIC_IVAR_SUPPORT_LPIS: *result = (gic_d_read(sc, 4, GICD_TYPER) & GICD_TYPER_LPIS) != 0; @@ -530,6 +533,7 @@ gic_v3_write_ivar(device_t dev, device_t child, int which, uintptr_t value) switch(which) { case GICV3_IVAR_NIRQS: case GICV3_IVAR_REDIST: + case GICV3_IVAR_FLAGS: case GIC_IVAR_HW_REV: case GIC_IVAR_BUS: return (EINVAL); diff --git a/sys/arm64/arm64/gic_v3_fdt.c b/sys/arm64/arm64/gic_v3_fdt.c index 4bea4040c0ba..871516145168 100644 --- a/sys/arm64/arm64/gic_v3_fdt.c +++ b/sys/arm64/arm64/gic_v3_fdt.c @@ -110,7 +110,7 @@ gic_v3_fdt_attach(device_t dev) { struct gic_v3_softc *sc; pcell_t redist_regions; - intptr_t xref; + phandle_t xref, node; int err; uint32_t *mbi_ranges; ssize_t ret; @@ -118,6 +118,19 @@ gic_v3_fdt_attach(device_t dev) sc = device_get_softc(dev); sc->dev = dev; sc->gic_bus = GIC_BUS_FDT; + node = ofw_bus_get_node(dev); + + /* + * Limit DMA shareability. "dma-noncoherent" was introduced in DT 6.15. + * For compatibility with previous versions, also use a match based on + * affected SoCs. + */ + if (OF_hasprop(node, "dma-noncoherent") || + ofw_bus_is_machine_compatible("rockchip,rk3566") || + ofw_bus_is_machine_compatible("rockchip,rk3568") || + ofw_bus_is_machine_compatible("rockchip,rk3588") || + ofw_bus_is_machine_compatible("rockchip,rk3588s")) + sc->gic_flags |= GIC_V3_FLAGS_FORCE_NOSHAREABLE; /* * Recover number of the Re-Distributor regions. diff --git a/sys/arm64/arm64/gic_v3_var.h b/sys/arm64/arm64/gic_v3_var.h index 2570834c2818..a490b69b7417 100644 --- a/sys/arm64/arm64/gic_v3_var.h +++ b/sys/arm64/arm64/gic_v3_var.h @@ -63,6 +63,8 @@ struct gic_redists { struct redist_pcpu *pcpu; }; +#define GIC_V3_FLAGS_FORCE_NOSHAREABLE 0x0000001 + struct gic_v3_softc { device_t dev; struct resource ** gic_res; @@ -92,6 +94,8 @@ struct gic_v3_softc { int nranges; struct arm_gic_range * ranges; + + uint32_t gic_flags; }; struct gic_v3_devinfo { @@ -108,9 +112,11 @@ MALLOC_DECLARE(M_GIC_V3); #define GICV3_IVAR_NIRQS 1000 /* 1001 was GICV3_IVAR_REDIST_VADDR */ #define GICV3_IVAR_REDIST 1002 +#define GICV3_IVAR_FLAGS 1003 __BUS_ACCESSOR(gicv3, nirqs, GICV3, NIRQS, u_int); __BUS_ACCESSOR(gicv3, redist, GICV3, REDIST, void *); +__BUS_ACCESSOR(gicv3, flags, GICV3, FLAGS, uint32_t); /* Device methods */ int gic_v3_attach(device_t dev); diff --git a/sys/arm64/arm64/gicv3_its.c b/sys/arm64/arm64/gicv3_its.c index 7821b1512083..06491f6ffe05 100644 --- a/sys/arm64/arm64/gicv3_its.c +++ b/sys/arm64/arm64/gicv3_its.c @@ -287,28 +287,50 @@ struct gicv3_its_softc { #define ITS_FLAGS_LPI_CONF_FLUSH 0x00000002 #define ITS_FLAGS_ERRATA_CAVIUM_22375 0x00000004 #define ITS_FLAGS_LPI_PREALLOC 0x00000008 +#define ITS_FLAGS_FORCE_NOSHAREABLE 0x00000010 u_int sc_its_flags; bool trace_enable; vm_page_t ma; /* fake msi page */ + vm_paddr_t malloc_max_addr; /* max address for contigmalloc */ }; +typedef bool (its_quirk_detect_t)(device_t); typedef void (its_quirk_func_t)(device_t); -static its_quirk_func_t its_quirk_cavium_22375; + +static its_quirk_detect_t its_detect_cavium_22375; +static its_quirk_func_t its_quirk_cavium_22375; +#ifdef FDT +static its_quirk_detect_t its_detect_rk356x; +static its_quirk_func_t its_quirk_rk356x; +static its_quirk_detect_t its_detect_rk3588; +static its_quirk_func_t its_quirk_rk3588; +#endif static const struct { const char *desc; - uint32_t iidr; - uint32_t iidr_mask; + its_quirk_detect_t *detect; its_quirk_func_t *func; } its_quirks[] = { { /* Cavium ThunderX Pass 1.x */ .desc = "Cavium ThunderX errata: 22375, 24313", - .iidr = GITS_IIDR_RAW(GITS_IIDR_IMPL_CAVIUM, - GITS_IIDR_PROD_THUNDER, GITS_IIDR_VAR_THUNDER_1, 0), - .iidr_mask = ~GITS_IIDR_REVISION_MASK, + .detect = its_detect_cavium_22375, .func = its_quirk_cavium_22375, }, +#ifdef FDT + { + /* Rockchip RK356X implementation bugs */ + .desc = "RK356X ITS errata", + .detect = its_detect_rk356x, + .func = its_quirk_rk356x, + }, + { + /* Rockchip RK3588 implementation bugs */ + .desc = "RK3588 ITS errata", + .detect = its_detect_rk3588, + .func = its_quirk_rk3588, + }, +#endif }; #define gic_its_read_4(sc, reg) \ @@ -387,6 +409,13 @@ static device_method_t gicv3_its_methods[] = { static DEFINE_CLASS_0(gic, gicv3_its_driver, gicv3_its_methods, sizeof(struct gicv3_its_softc)); +/* Limit maximum address for memory mapped tables and buffers */ +static vm_paddr_t +gicv3_its_limit_max_addr(struct gicv3_its_softc *sc, vm_paddr_t addr) +{ + return (sc->malloc_max_addr > addr ? addr: sc->malloc_max_addr); +} + static void gicv3_its_cmdq_init(struct gicv3_its_softc *sc) { @@ -395,7 +424,8 @@ gicv3_its_cmdq_init(struct gicv3_its_softc *sc) /* Set up the command circular buffer */ sc->sc_its_cmd_base = contigmalloc_domainset(ITS_CMDQ_SIZE, M_GICV3_ITS, - sc->sc_ds, M_WAITOK | M_ZERO, 0, (1ul << 48) - 1, ITS_CMDQ_ALIGN, + sc->sc_ds, M_WAITOK | M_ZERO, 0, + gicv3_its_limit_max_addr(sc, (1ul << 48) - 1), ITS_CMDQ_ALIGN, 0); sc->sc_its_cmd_next_idx = 0; @@ -404,8 +434,11 @@ gicv3_its_cmdq_init(struct gicv3_its_softc *sc) /* Set the base of the command buffer */ reg = GITS_CBASER_VALID | (GITS_CBASER_CACHE_NIWAWB << GITS_CBASER_CACHE_SHIFT) | - cmd_paddr | (GITS_CBASER_SHARE_IS << GITS_CBASER_SHARE_SHIFT) | - (ITS_CMDQ_SIZE / 4096 - 1); + cmd_paddr | (ITS_CMDQ_SIZE / 4096 - 1); + if (sc->sc_its_flags & ITS_FLAGS_FORCE_NOSHAREABLE) + reg |= GITS_CBASER_SHARE_NS << GITS_CBASER_SHARE_SHIFT; + else + reg |= GITS_CBASER_SHARE_IS << GITS_CBASER_SHARE_SHIFT; gic_its_write_8(sc, GITS_CBASER, reg); /* Read back to check for fixed value fields */ @@ -532,10 +565,17 @@ gicv3_its_table_init(device_t dev, struct gicv3_its_softc *sc) cache = 0; } else { devbits = GITS_TYPER_DEVB(gic_its_read_8(sc, GITS_TYPER)); - cache = GITS_BASER_CACHE_RAWAWB; + if (sc->sc_its_flags & ITS_FLAGS_FORCE_NOSHAREABLE) + cache = GITS_BASER_CACHE_NC; + else + cache = GITS_BASER_CACHE_RAWAWB; } sc->sc_devbits = devbits; - share = GITS_BASER_SHARE_IS; + + if (sc->sc_its_flags & ITS_FLAGS_FORCE_NOSHAREABLE) + share = GITS_BASER_SHARE_NS; + else + share = GITS_BASER_SHARE_IS; for (i = 0; i < GITS_BASER_NUM; i++) { reg = gic_its_read_8(sc, GITS_BASER(i)); @@ -611,7 +651,8 @@ gicv3_its_table_init(device_t dev, struct gicv3_its_softc *sc) /* Allocate the table */ table = contigmalloc_domainset(npages * PAGE_SIZE, M_GICV3_ITS, sc->sc_ds, M_WAITOK | M_ZERO, 0, - (1ul << 48) - 1, PAGE_SIZE_64K, 0); + gicv3_its_limit_max_addr(sc, (1ul << 48) - 1), + PAGE_SIZE_64K, 0); sc->sc_its_ptab[i].ptab_vaddr = table; sc->sc_its_ptab[i].ptab_l1_size = its_tbl_size; @@ -741,7 +782,8 @@ gicv3_its_conftable_init(struct gicv3_its_softc *sc) * PROPBASER register later in its_init_cpu_lpi(). */ conf_table = contigmalloc(LPI_CONFTAB_SIZE, - M_GICV3_ITS, M_WAITOK, 0, LPI_CONFTAB_MAX_ADDR, + M_GICV3_ITS, M_WAITOK, 0, + gicv3_its_limit_max_addr(sc, LPI_CONFTAB_MAX_ADDR), LPI_CONFTAB_ALIGN, 0); } sc->sc_conf_base = conf_table; @@ -766,7 +808,9 @@ gicv3_its_pendtables_init(struct gicv3_its_softc *sc) sc->sc_pend_base[i] = contigmalloc( LPI_PENDTAB_SIZE, M_GICV3_ITS, M_WAITOK | M_ZERO, - 0, LPI_PENDTAB_MAX_ADDR, LPI_PENDTAB_ALIGN, 0); + 0, + gicv3_its_limit_max_addr(sc, LPI_PENDTAB_MAX_ADDR), + LPI_PENDTAB_ALIGN, 0); /* Flush so the ITS can see the memory */ cpu_dcache_wb_range(sc->sc_pend_base[i], @@ -804,10 +848,12 @@ its_init_cpu_lpi(device_t dev, struct gicv3_its_softc *sc) size = ilog2_long(LPI_CONFTAB_SIZE | GIC_FIRST_LPI) - 1; xbaser = vtophys(sc->sc_conf_base) | - (GICR_PROPBASER_SHARE_IS << GICR_PROPBASER_SHARE_SHIFT) | (GICR_PROPBASER_CACHE_NIWAWB << GICR_PROPBASER_CACHE_SHIFT) | size; - + if (gicv3_get_flags(sc->dev) & GIC_V3_FLAGS_FORCE_NOSHAREABLE) + xbaser |= GICR_PROPBASER_SHARE_NS << GICR_PROPBASER_SHARE_SHIFT; + else + xbaser |= GICR_PROPBASER_SHARE_IS << GICR_PROPBASER_SHARE_SHIFT; gic_r_write_8(gicv3, GICR_PROPBASER, xbaser); /* Check the cache attributes we set */ @@ -835,8 +881,11 @@ its_init_cpu_lpi(device_t dev, struct gicv3_its_softc *sc) * Set the LPI pending table base */ xbaser = vtophys(sc->sc_pend_base[cpuid]) | - (GICR_PENDBASER_CACHE_NIWAWB << GICR_PENDBASER_CACHE_SHIFT) | - (GICR_PENDBASER_SHARE_IS << GICR_PENDBASER_SHARE_SHIFT); + (GICR_PENDBASER_CACHE_NIWAWB << GICR_PENDBASER_CACHE_SHIFT); + if (sc->sc_its_flags & ITS_FLAGS_FORCE_NOSHAREABLE) + xbaser |= GITS_CBASER_SHARE_NS << GITS_CBASER_SHARE_SHIFT; + else + xbaser |= GITS_CBASER_SHARE_IS << GITS_CBASER_SHARE_SHIFT; gic_r_write_8(gicv3, GICR_PENDBASER, xbaser); @@ -1017,6 +1066,7 @@ gicv3_its_attach(device_t dev) sc->sc_irq_length = gicv3_get_nirqs(dev); sc->sc_irq_base = GIC_FIRST_LPI; sc->sc_irq_base += device_get_unit(dev) * sc->sc_irq_length; + sc->malloc_max_addr = ~0; rid = 0; sc->sc_its_res = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, @@ -1034,7 +1084,7 @@ gicv3_its_attach(device_t dev) CPU_COPY(&all_cpus, &sc->sc_cpus); iidr = gic_its_read_4(sc, GITS_IIDR); for (i = 0; i < nitems(its_quirks); i++) { - if ((iidr & its_quirks[i].iidr_mask) == its_quirks[i].iidr) { + if (its_quirks[i].detect(dev)) { if (bootverbose) { device_printf(dev, "Applying %s\n", its_quirks[i].desc); @@ -1128,6 +1178,21 @@ gicv3_its_detach(device_t dev) return (ENXIO); } +static bool +its_detect_cavium_22375(device_t dev) +{ + uint32_t iidr; + struct gicv3_its_softc *sc; + + sc = device_get_softc(dev); + iidr = gic_its_read_4(sc, GITS_IIDR); + if ((iidr & ~GITS_IIDR_REVISION_MASK) == + GITS_IIDR_RAW(GITS_IIDR_IMPL_CAVIUM, GITS_IIDR_PROD_THUNDER, + GITS_IIDR_VAR_THUNDER_1, 0)) + return (true); + return(false); +} + static void its_quirk_cavium_22375(device_t dev) { @@ -1151,6 +1216,46 @@ its_quirk_cavium_22375(device_t dev) } } +#ifdef FDT +static bool +its_detect_rk356x(device_t dev) +{ + + if (ofw_bus_is_machine_compatible("rockchip,rk3566") || + ofw_bus_is_machine_compatible("rockchip,rk3568")) + return (true); + return(false); +} + +static void +its_quirk_rk356x(device_t dev) +{ + struct gicv3_its_softc *sc; + + sc = device_get_softc(dev); + sc->malloc_max_addr = (1ul << 32) - 1; +} + +static bool +its_detect_rk3588(device_t dev) +{ + + if (ofw_bus_is_machine_compatible("rockchip,rk3588") || + ofw_bus_is_machine_compatible("rockchip,rk3588s")) + return (true); + return(false); +} + +static void +its_quirk_rk3588(device_t dev) +{ + struct gicv3_its_softc *sc; + + sc = device_get_softc(dev); + sc->sc_its_flags |= ITS_FLAGS_FORCE_NOSHAREABLE; +} +#endif + static void gicv3_its_disable_intr(device_t dev, struct intr_irqsrc *isrc) { @@ -1400,7 +1505,8 @@ its_device_alloc(struct gicv3_its_softc *sc, int devid) shareable = false; l2_table = contigmalloc_domainset(ptable->ptab_l2_size, - M_GICV3_ITS, sc->sc_ds, M_WAITOK | M_ZERO, 0, (1ul << 48) - 1, + M_GICV3_ITS, sc->sc_ds, M_WAITOK | M_ZERO, 0, + gicv3_its_limit_max_addr(sc, (1ul << 48) - 1), ptable->ptab_page_size, 0); if (!shareable) @@ -1461,7 +1567,8 @@ its_device_get(device_t dev, device_t child, u_int nvecs) itt_size = roundup2(MAX(nvecs, 2) * esize, 256); its_dev->itt = contigmalloc_domainset(itt_size, M_GICV3_ITS, sc->sc_ds, M_NOWAIT | M_ZERO, 0, - LPI_INT_TRANS_TAB_MAX_ADDR, LPI_INT_TRANS_TAB_ALIGN, 0); + gicv3_its_limit_max_addr(sc, LPI_INT_TRANS_TAB_MAX_ADDR), + LPI_INT_TRANS_TAB_ALIGN, 0); if (its_dev->itt == NULL) { vmem_free(sc->sc_irq_alloc, its_dev->lpis.lpi_base, nvecs); free(its_dev, M_GICV3_ITS); @@ -2233,17 +2340,20 @@ static int gicv3_its_fdt_attach(device_t dev) { struct gicv3_its_softc *sc; - phandle_t xref; + phandle_t xref, node; int err; sc = device_get_softc(dev); sc->dev = dev; + node = ofw_bus_get_node(dev); err = gicv3_its_attach(dev); if (err != 0) return (err); + if (OF_hasprop(node, "dma-noncoherent")) + sc->sc_its_flags |= ITS_FLAGS_FORCE_NOSHAREABLE; /* Register this device as a interrupt controller */ - xref = OF_xref_from_node(ofw_bus_get_node(dev)); + xref = OF_xref_from_node(node); sc->sc_pic = intr_pic_register(dev, xref); err = intr_pic_add_handler(device_get_parent(dev), sc->sc_pic, gicv3_its_intr, sc, sc->sc_irq_base, sc->sc_irq_length); From nobody Wed Dec 3 06:52:00 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLpGT1dPyz6HmRH for ; Wed, 03 Dec 2025 06:52:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLpGS53hvz3QR9 for ; Wed, 03 Dec 2025 06:52:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764744720; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QbfS4EEtpl8yzqhc1+Bpbq44k9k3ivGPWMtlw577SuQ=; b=dSXyVUmlhpSZiZXuh2GaZO6HWvNkcuumNBObklDWrDooOKiAGR+wgcqKg4bRgD3hYtISl8 1UTPE5ffCLL3jXUc9jlTNPUUTQuMKeAOxpbfNJlRdURFhRe2t0qUjrDYyDjq3NTzK05jhD 4Cje9KA/sGwdaHagLZv77c+M8svuFHokasXrxvZRH6NZLktepvpkxBHPt4ER/VwT2WZSVo AQnYReGdl83BiZnfoge8vBE2VrANLkYStL3gFBOlOWbbP8nKT0OqBmE5+lqicwM54g76Q9 60lg+DXz6jyiq0mqVMudUx87kwycakbJfwn8vCjv/Y+ZpzVANjOv1WHfsL1H+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764744720; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QbfS4EEtpl8yzqhc1+Bpbq44k9k3ivGPWMtlw577SuQ=; b=SLGcAFFutjc8Eqs8LQQdLB9QO+outSFXfcX2qh6VOR5YlFLjkBgknkLYkI6MmoAlZPQ0wq UASHUxpkNRASGkv4SFrWH0a/1VBA4EvbHoab9RqCW2411HwPcxNcf5t/JpWBtvMwxqqjm7 N7n19uyu2cTLICNJgKm2BJG5SUt4qysMFy1MSLpYb+77acv5tqsP9YMsIhOJYPkjpXgGQa t6Kj9Ain0uVCzpRVQ2oVOK5lzKBZYyMV73kmYgrd684KltIV3i0V4UI6moiFnMCGFUKiyb U9d8MbMElQVJXJAUTDvpCjjlBosH1pXe7s0oAE6Q9ZHcSsRHV87NsGZksn4C4g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764744720; a=rsa-sha256; cv=none; b=ABTGiVBWU5f9zUr6XafouUXlSSajrUM2MmnBc72BHOOWKzKW4y/FgujRustCikK9BSuY/n MwHE1CS912tGfSfZflrR35W9hZ8QVBel7lyxBWFti2N906OrcTJfacujCnaYsHntCOb+Qd 5DblDm0kH/sZQFQlda42n41by2jBFJGT0K5cBftgHBBwSYcjFzMdpXROJFMA2GWCSucqSY 1GSeruebP+qRYYVkmfmYfal1KG4hd5OOAFmV7bqgQkWqiwfP1d5z/BvzC0YE/dAgAK8tU+ CDO9LOOG02FNkriFavbLXtnKoh9sWE2XLSuH3343eRr/HihvJq2bB2lE2a9N0A== 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 4dLpGS4WX1zBQq for ; Wed, 03 Dec 2025 06:52:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 237b9 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 06:52:00 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michal Meloun Subject: git: 3e7d3361dd24 - main - arm64: Add missing dtrace_isa.c List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mmel X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3e7d3361dd2491e2dc4b0b05c09b8fab4beaadc5 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 06:52:00 +0000 Message-Id: <692fde10.237b9.4c59104@gitrepo.freebsd.org> The branch main has been updated by mmel: URL: https://cgit.FreeBSD.org/src/commit/?id=3e7d3361dd2491e2dc4b0b05c09b8fab4beaadc5 commit 3e7d3361dd2491e2dc4b0b05c09b8fab4beaadc5 Author: Michal Meloun AuthorDate: 2025-11-08 14:02:47 +0000 Commit: Michal Meloun CommitDate: 2025-12-03 06:47:41 +0000 arm64: Add missing dtrace_isa.c MFC after: 1 week --- sys/conf/files.arm64 | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/conf/files.arm64 b/sys/conf/files.arm64 index 886980de754b..4bd03989afa0 100644 --- a/sys/conf/files.arm64 +++ b/sys/conf/files.arm64 @@ -208,6 +208,7 @@ dev/acpica/acpi_pxm.c optional acpi dev/ahci/ahci_generic.c optional ahci cddl/dev/dtrace/aarch64/dtrace_asm.S optional dtrace compile-with "${DTRACE_S}" +cddl/dev/dtrace/aarch64/dtrace_isa.c optional dtrace compile-with "${DTRACE_C}" cddl/dev/dtrace/aarch64/dtrace_subr.c optional dtrace compile-with "${DTRACE_C}" cddl/dev/fbt/aarch64/fbt_isa.c optional dtrace_fbt | dtraceall compile-with "${FBT_C}" From nobody Wed Dec 3 06:52:01 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLpGV23qPz6Hmck for ; Wed, 03 Dec 2025 06:52:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLpGT5QZLz3QZ3 for ; Wed, 03 Dec 2025 06:52:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764744721; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VMtO/kaFH09E0bh8FUwVd0qp4wJ9cXAhFg7m696AalA=; b=opkejJeGwH457UPnmqaSrjiEz67WGaOJVmcGKIPLQlTZqY9b571+VOZfGQaJjtnAhZ4jqR Qci2ydni+WxkZijfPtsLN2wUdHpRsqHNAEyPjDv8JnLYwd7eRxSMu0r5tZ2JVLdB0sLxhf Rvdw0Xn1iRxWtJdBzthpytpAKYyMnhYFPMxGYIDxnrj7+oxrRek6hoBiHOoshdKiwo3c5Y uoCvDw7e5Yh30iDe1d8+Lt509sZNxPHbOmPjfraF8QZ5hzGKKZQxvMAZix4wXg46/rYpjP tIFM3NwoGuR+pGo7RdQlostZITkdxj/DqCcghmk3UFUib2HPCM1OQRY18byksA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764744721; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VMtO/kaFH09E0bh8FUwVd0qp4wJ9cXAhFg7m696AalA=; b=obDTD2oq+1mAUoDy/yzm6qReDLIrTzyTDtah2HkKJMMs74C+WROMiuC86FQM05eJX+er7F 1zz/4J1U9GjkV+WzXtVd3gQzil83TAQP4Gpa5LpOZT+Robfx88oDPj5Rx+iCVsTek8V0dB /lL0oeae+NVYbGKIx85+4AGSgfR6bA9hMyNmZ2DR79K51f8wYRiObCU5crMX3bfYkE2wjR dgpNjTCfZdJ6XttXFv7NSG2GfipalD0dBhvwZMnh3EBtSBd7+FSiZGlBQcoZyswsn/KrQc G+/mcQ9qe9GT7qvcgj7gaD6a6oQPwk3ayvpcL3VKivPslKBfXMiJmgFj1FbM9Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764744721; a=rsa-sha256; cv=none; b=FMu25gdf2J01uC8qSX6Ei5XilnuvaMKVBcPyoBrBAK8GycNaS4hglcSYDJCkeOlkfSThFx 8WyHLdWQBLlVij8J4ycUSZwrdgjKqTe3w5sVwf3fP87F5H8BYfToVOi5KU2zvf+FjXvJuU lIq/y3BXW0uFzN21Z6TDFxKFK+bjHweDbV32yLiwFPN89aaP+cg8lOsRn4RuAj+j0LBi4o YaP6VKNBroZtphhmTvO48j2u3Yt8ez6pCs6vwhId0B79Uf8VJ/MPpEUiqW2CBzi01e8v3y E9oEMLWafaXdwFdxdPPjzujKABSCcTIpPHLR0b4sxagtd4QGArE5XeqRmQ3Lvg== 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 4dLpGT50dHzBQr for ; Wed, 03 Dec 2025 06:52:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 23e1d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 06:52:01 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michal Meloun Subject: git: ef8a0ef2aa97 - main - ofw: Fix 64-bit arithmetic in cpufreq_dt.c. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mmel X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ef8a0ef2aa97650f37052719496bfbe4ab97a019 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 06:52:01 +0000 Message-Id: <692fde11.23e1d.4fb59109@gitrepo.freebsd.org> The branch main has been updated by mmel: URL: https://cgit.FreeBSD.org/src/commit/?id=ef8a0ef2aa97650f37052719496bfbe4ab97a019 commit ef8a0ef2aa97650f37052719496bfbe4ab97a019 Author: Michal Meloun AuthorDate: 2025-12-02 12:02:39 +0000 Commit: Michal Meloun CommitDate: 2025-12-03 06:47:41 +0000 ofw: Fix 64-bit arithmetic in cpufreq_dt.c. MFC after: 3 weeks --- sys/dev/cpufreq/cpufreq_dt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/cpufreq/cpufreq_dt.c b/sys/dev/cpufreq/cpufreq_dt.c index b212b08e9a83..44334cbcab57 100644 --- a/sys/dev/cpufreq/cpufreq_dt.c +++ b/sys/dev/cpufreq/cpufreq_dt.c @@ -210,7 +210,7 @@ cpufreq_dt_set(device_t dev, const struct cf_setting *set) } else uvolt = 0; - opp = cpufreq_dt_find_opp(sc->dev, set->freq * 1000000); + opp = cpufreq_dt_find_opp(sc->dev, (uint64_t)set->freq * 1000000); if (opp == NULL) { device_printf(dev, "Couldn't find an opp for this freq\n"); return (EINVAL); From nobody Wed Dec 3 11:34:14 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLwX66NMNz6JC84 for ; Wed, 03 Dec 2025 11:34:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLwX65ZHYz41Bn for ; Wed, 03 Dec 2025 11:34:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764761654; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+0PqQgQOTiETlTc3VNTKzkZvmu0TDG8KWQ3vkDXUl0s=; b=DT2C/FVHPWIpC9TX8AtkZKTXUZCG0pjwXG6C+Dpc7h/hdjyEDjyabpdEnvNA98PgyeKiuO nEa6w6fKjhWi1EML1FGWe+f1eeEK48EFKar64xziQlIOmWSeBeTrsynxhmCWEqtya2UlpN YMX8PAnm9QOX4MzuK3BxIMgZEYGSdYP50iScQ/kEcH5xiwuwGfWiUL4YTnSPZAUa+47vFu Ct/0ykoexpa0GtEWI0shb6ewf9lA1Fvm1nz+qcfCrQJMJaRUIP/VRXO+Vw6+XKM14AGVSD hekpZsXRA8xxxkfoep97q0W2QkyPqQdhvl/S4i/RGuOVegZrH6a+H76A5RqhoQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764761654; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+0PqQgQOTiETlTc3VNTKzkZvmu0TDG8KWQ3vkDXUl0s=; b=HFjl+8sjJg7CgoY7VbT4WVv1Q21dcdbC85XOz9a+KoqdsKE2yZvb3IOx04PS/fQuGV7z7K ONhK8z20VnQzT+BqT360aIVw7qINk2/BiJvfv66nXC+qj771SgjfFV9jxFWhl3mCWXwgWZ OnIWsra6leL578PDQUyd0SWLCkDtWuPVUW/XbOL8qcgygEdDpccEB/N5Ea0gFj96fypsAK eKTd0bcQ1hzOOy8r0ztkYNkX3HECjRa7zDEOT/MGomjoQM0di6+JMsC1HuKGuZbKIb6mXK xWw5PXajHt396fr0W5V6/DZD1vyFfT9WDEkIhhFhDXJeicx79CTjFWdA6HfPyA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764761654; a=rsa-sha256; cv=none; b=PrdGUOUgaBfOdKPK5j5o9IPpaPr9SZWRL0J6nEeukBDEWTn0SWeWOMS0alsnCHCj0vfBS0 TmbK4ixZf7ENz8yl5BSgGe1Twc/Mx814jHptO4icno1IENl1/azmkfeOkmtEYdEg1pyaPY KFWFSTmgNVxCnXwj+ToklJddhLwGAv/bYhpyWUi2CeqvDIcua2cVERZOr5yiDmwTFuXYSB AsC9RhTYz4N6sVJOgLGG5uhR+SRumTtSCesisJk5r3nCuAsf95jz77se7Twdx3t2sblM8b kU4+Up3NVNTPkxGUe5/Um1wbZMux3P216K1Y+Kt1y5kcp5q+Tzve4KSO0ghp7w== 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 4dLwX657jtzcWN for ; Wed, 03 Dec 2025 11:34:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3f881 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 11:34:14 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Sumit Saxena Subject: git: b42fda6be3fd - main - share/mk: Include libbnxtre entry in bsd.libnames.mk List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ssaxena X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b42fda6be3fde001cdbe1623cc89b1dc9faf1b93 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 11:34:14 +0000 Message-Id: <69302036.3f881.1fb71f91@gitrepo.freebsd.org> The branch main has been updated by ssaxena: URL: https://cgit.FreeBSD.org/src/commit/?id=b42fda6be3fde001cdbe1623cc89b1dc9faf1b93 commit b42fda6be3fde001cdbe1623cc89b1dc9faf1b93 Author: Sumit Saxena AuthorDate: 2025-12-03 11:21:10 +0000 Commit: Sumit Saxena CommitDate: 2025-12-03 11:33:40 +0000 share/mk: Include libbnxtre entry in bsd.libnames.mk Add libbnxtre entry in bsd.libnames.mk file. MFC-After: 3 days Reviewed-by: sumit.saxena@broadcom.com Differential-Revision: https://reviews.freebsd.org/D49603 --- lib/ofed/Makefile | 1 + share/mk/bsd.libnames.mk | 1 + 2 files changed, 2 insertions(+) diff --git a/lib/ofed/Makefile b/lib/ofed/Makefile index a16e93adc149..5421e2e43cd1 100644 --- a/lib/ofed/Makefile +++ b/lib/ofed/Makefile @@ -10,6 +10,7 @@ SUBDIR= \ libcxgb4 \ libmlx4 \ libmlx5 \ + libbnxtre \ libirdma \ libibnetdisc \ libopensm diff --git a/share/mk/bsd.libnames.mk b/share/mk/bsd.libnames.mk index 54bdfd301cd3..955e3c4ebdef 100644 --- a/share/mk/bsd.libnames.mk +++ b/share/mk/bsd.libnames.mk @@ -118,6 +118,7 @@ LIBMENU?= ${LIBDESTDIR}${LIBDIR_BASE}/libmenu.a LIBMILTER?= ${LIBDESTDIR}${LIBDIR_BASE}/libmilter.a LIBMLX4?= ${LIBDESTDIR}${LIBDIR_BASE}/libmlx4.a LIBMLX5?= ${LIBDESTDIR}${LIBDIR_BASE}/libmlx5.a +LIBBNXTRE?= ${LIBDESTDIR}${LIBDIR_BASE}/libbnxtre.a LIBMP?= ${LIBDESTDIR}${LIBDIR_BASE}/libmp.a LIBMT?= ${LIBDESTDIR}${LIBDIR_BASE}/libmt.a LIBNCURSES?= ${LIBDESTDIR}${LIBDIR_BASE}/libncurses.a From nobody Wed Dec 3 11:34:15 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLwX82JHKz6JCdr for ; Wed, 03 Dec 2025 11:34:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLwX76Pb0z41Lm for ; Wed, 03 Dec 2025 11:34:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764761655; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Gsg9nybNYRzDSu+uYHimoxANBdtFZAswktcahgtW1iE=; b=xVXFTZoB2S87O3R59wNzKQQRkuqSFnQ0R/uNg6xSEx6xfSRWW01XyNKuKcgBRhHdgZrKaR UFBcn4ERTrGvkhtGnSvFnXION/xJCZmqdF99EBfAJUp5raqdROP1RWE1gMDExVk1fMSP73 DnAQAK6fGC2e8saidOuGYKUBN7d8a0E4RcK37CwyRHzIj+ZK+bqeFf+6H3DoBe1lbgkknB WMH9HEaPTLdlBtBKmGB/9W24841ryVMZJ9lpdNOcOS5cpP6BJ+keHl01etw7xqo5NGiXGe Qw5xGm4vDONI/7gfYz04JG1PN1TLyYecQhuY1TVB//FgQAYT/27/xzj4Is1MrA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764761655; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Gsg9nybNYRzDSu+uYHimoxANBdtFZAswktcahgtW1iE=; b=qEDIMCAIs1vsPN3ohFJHbnd4a+geV+PBUlBzc8AvmJEso2qGSLT04cxr2K2EhTCJOUzTct QuhGk9D6ZP14lMn3erNvjQMGD7au5ZPJMXuPXYjgriHHVjRvO43u5E3LJa3jWlR6Ey8lfo w7ISwAtVfhCgO1EAK+cPKSz75dpSlr+qGTrEzNkqGQDLZVNyEVmPYyeVpjvjvboWqaR7CR 4s02O2a6It3Jw3CkjWyTb+2gluoiIh7f+lipGVXWOhAoQPcCcCvQYjH7Xhz+BPYBJW0B6t ssIyJpm+sCGHg5MaFDvHRhOeoHnhbFXGOOkm4UkcOPD37sXB7bUC55NDdkp7JQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764761655; a=rsa-sha256; cv=none; b=c8k9A8vLoEl1W2V+tby5bjoTKRebKISr/SAcCO1coNvlqvQk0koPbEQL9qQ0IRcL/6J22H ivYqJDAE4fCvjx0Xgg10hy1zmdMdTx428RHQbvg8cm+7ECgr+hlmLNKzlwORlB0IL7SXHi R34jUk+EENhP5/SnQyBB96kkr1Nm7pNUX5cHQnwoMUY5XGONmO5EqymuAfkDOidzCdyWfy uPuQ5iX2JwJDL0/EokGC/eNmJUuNuJiEioxT9Q7XxMNUGVOU+/pebOIUBxBQ9Gvx9jO78X weIUBpmywd75rUgH+rZWQeLJ/SVcPpyyoYUucG5SmfWwctRL5Buf/9qBnepW7w== 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 4dLwX75yVbzcHN for ; Wed, 03 Dec 2025 11:34:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3d155 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 11:34:15 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Sumit Saxena Subject: git: 35dd53a9e132 - main - librdmacm/libibverbs: Statically bound libbnxtre.so.1 to rping List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ssaxena X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 35dd53a9e13265f7a479649776453efc5b737a0f Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 11:34:15 +0000 Message-Id: <69302037.3d155.40084cd7@gitrepo.freebsd.org> The branch main has been updated by ssaxena: URL: https://cgit.FreeBSD.org/src/commit/?id=35dd53a9e13265f7a479649776453efc5b737a0f commit 35dd53a9e13265f7a479649776453efc5b737a0f Author: Sumit Saxena AuthorDate: 2025-12-03 11:28:33 +0000 Commit: Sumit Saxena CommitDate: 2025-12-03 11:33:40 +0000 librdmacm/libibverbs: Statically bound libbnxtre.so.1 to rping By default ibv_devices and rping are not statically bound to libbnxtre.so.1. i.e. 'ldd /usr/bin/rping' command doesn't list 'libbnxtre.so.1' entry. So, statically bound the libbnxtre.so.1 library to rping & ibv_devices utils. MFC-After: 3 days Reviewed-by: sumit.saxena@broadcom.com Differential-Revision: https://reviews.freebsd.org/D49604 --- share/mk/src.libnames.mk | 7 +++++-- usr.bin/ofed/libibverbs/Makefile.inc | 2 +- usr.bin/ofed/librdmacm/Makefile.inc | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk index e108cc15fb55..125fe2242bd5 100644 --- a/share/mk/src.libnames.mk +++ b/share/mk/src.libnames.mk @@ -285,6 +285,7 @@ _LIBRARIES+= \ irdma \ mlx4 \ mlx5 \ + bnxtre \ rdmacm \ osmcomp \ opensm \ @@ -360,7 +361,7 @@ _DP_cap_sysctl= nv _DP_cap_syslog= nv _DP_crypt= md .if ${MK_OFED} != "no" -_DP_pcap= ibverbs mlx5 +_DP_pcap= ibverbs mlx5 bnxtre .endif _DP_pjdlog= util _DP_usb= pthread @@ -511,11 +512,12 @@ _DP_cxgb4= ibverbs pthread _DP_ibcm= ibverbs _DP_ibmad= ibumad _DP_ibnetdisc= osmcomp ibmad ibumad -_DP_ibumad= +_DP_ibumad= _DP_ibverbs= _DP_irdma= ibverbs pthread _DP_mlx4= ibverbs pthread _DP_mlx5= ibverbs pthread +_DP_bnxtre= ibverbs pthread _DP_rdmacm= ibverbs _DP_osmcomp= pthread _DP_opensm= pthread @@ -810,6 +812,7 @@ LIBIBVERBSDIR= ${_LIB_OBJTOP}/lib/ofed/libibverbs LIBIRDMADIR= ${_LIB_OBJTOP}/lib/ofed/libirdma LIBMLX4DIR= ${_LIB_OBJTOP}/lib/ofed/libmlx4 LIBMLX5DIR= ${_LIB_OBJTOP}/lib/ofed/libmlx5 +LIBBNXTREDIR= ${_LIB_OBJTOP}/lib/ofed/libbnxtre LIBRDMACMDIR= ${_LIB_OBJTOP}/lib/ofed/librdmacm LIBOSMCOMPDIR= ${_LIB_OBJTOP}/lib/ofed/complib LIBOPENSMDIR= ${_LIB_OBJTOP}/lib/ofed/libopensm diff --git a/usr.bin/ofed/libibverbs/Makefile.inc b/usr.bin/ofed/libibverbs/Makefile.inc index 616c9bd54707..f8301c3d1073 100644 --- a/usr.bin/ofed/libibverbs/Makefile.inc +++ b/usr.bin/ofed/libibverbs/Makefile.inc @@ -3,6 +3,6 @@ _spath=${SRCTOP}/contrib/ofed/libibverbs BINDIR?= /usr/bin CFLAGS+= -I${_spath} -LIBADD+= ibverbs mlx4 mlx5 cxgb4 irdma pthread +LIBADD+= ibverbs mlx4 mlx5 bnxtre cxgb4 irdma pthread WARNS?= 2 diff --git a/usr.bin/ofed/librdmacm/Makefile.inc b/usr.bin/ofed/librdmacm/Makefile.inc index 74f32fe08b42..66fcf2ac267b 100644 --- a/usr.bin/ofed/librdmacm/Makefile.inc +++ b/usr.bin/ofed/librdmacm/Makefile.inc @@ -3,6 +3,6 @@ _spath=${SRCTOP}/contrib/ofed/librdmacm BINDIR?= /usr/bin CFLAGS+= -I${SRCTOP}/contrib/ofed -LIBADD+= ibverbs rdmacm irdma mlx4 mlx5 cxgb4 pthread +LIBADD+= ibverbs rdmacm irdma mlx4 mlx5 bnxtre cxgb4 pthread WARNS?= 0 From nobody Wed Dec 3 14:05:54 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dLzv90P7zz6JRjh; Wed, 03 Dec 2025 14:05:57 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from omta004.cacentral1.a.cloudfilter.net (omta002.cacentral1.a.cloudfilter.net [3.97.99.33]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dLzv85GkQz4Mwn; Wed, 03 Dec 2025 14:05:56 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Authentication-Results: mx1.freebsd.org; none Received: from shw-obgw-4004b.ext.cloudfilter.net ([10.228.9.230]) by cmsmtp with ESMTPS id QjdxvQ7sxPzKyQnUSvfadM; Wed, 03 Dec 2025 14:05:56 +0000 Received: from spqr.komquats.com ([70.66.136.217]) by cmsmtp with ESMTPSA id QnUQvI3l35aoCQnURven3v; Wed, 03 Dec 2025 14:05:55 +0000 X-Auth-User: cschuber X-Authority-Analysis: v=2.4 cv=YMSSCBGx c=1 sm=1 tr=0 ts=693043c3 a=h7br+8Ma+Xn9xscxy5znUg==:117 a=h7br+8Ma+Xn9xscxy5znUg==:17 a=kj9zAlcOel0A:10 a=wP3pNCr1ah4A:10 a=6I5d2MoRAAAA:8 a=EkcXrb_YAAAA:8 a=Q-fNiiVtAAAA:8 a=YxBL1-UpAAAA:8 a=F3s4GREXQDzkHWVKJioA:9 a=CjuIK1q_8ugA:10 a=LK5xJRSDVpKd5WXXoEvA:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from slippy.cwsent.com (slippy.cwsent.com [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTP id 1D9C2509; Wed, 03 Dec 2025 06:05:54 -0800 (PST) Received: by slippy.cwsent.com (Postfix, from userid 1000) id 150B71E8; Wed, 03 Dec 2025 06:05:54 -0800 (PST) X-Mailer: exmh version 2.9.0 11/07/2018 with nmh-1.8+dev Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Sumit Saxena cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 35dd53a9e132 - main - librdmacm/libibverbs: Statically bound libbnxtre.so.1 to rping In-reply-to: <69302037.3d155.40084cd7@gitrepo.freebsd.org> References: <69302037.3d155.40084cd7@gitrepo.freebsd.org> Comments: In-reply-to Sumit Saxena message dated "Wed, 03 Dec 2025 11:34:15 +0000." List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Wed, 03 Dec 2025 06:05:54 -0800 Message-Id: <20251203140554.150B71E8@slippy.cwsent.com> X-CMAE-Envelope: MS4xfNuUThzO7MZ4jxFnJZpRQPIKETlA+HjFWZWsvIdU1OncXsQZviEyxmZaQqS7UuLfgreuVeK1uUPqphJQjNfmCik0/9UkEvr1mwRTQwMNxZitNyVPqjj7 EtsyXygDWppXdmRff9TdRoCPCjOs/R2POY2Lcay2/Me3OZVBGjCeh3fAbiDXy5aWXu8aDZn9+SLWu/Bhz8YcNWv9jTR8fy4KW+Xb7/GzYe7ebbpoFcYVf1Sa TW580eR4dcKWagWnT26RogO+CRcDdTkjtq0AkUjVdAuae0+y4VqMORsh/qJvvg5Z02EHlvJTPM6htU9IP+gLs8Q3ulYUOP7lGKFcP1U7ijk= X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4dLzv85GkQz4Mwn In message <69302037.3d155.40084cd7@gitrepo.freebsd.org>, Sumit Saxena writes: > The branch main has been updated by ssaxena: > > URL: https://cgit.FreeBSD.org/src/commit/?id=35dd53a9e13265f7a479649776453efc > 5b737a0f > > commit 35dd53a9e13265f7a479649776453efc5b737a0f > Author: Sumit Saxena > AuthorDate: 2025-12-03 11:28:33 +0000 > Commit: Sumit Saxena > CommitDate: 2025-12-03 11:33:40 +0000 > > librdmacm/libibverbs: Statically bound libbnxtre.so.1 to rping > > By default ibv_devices and rping are not statically bound to > libbnxtre.so.1. i.e. 'ldd /usr/bin/rping' command doesn't list > 'libbnxtre.so.1' entry. So, statically bound the libbnxtre.so.1 > library to rping & ibv_devices utils. > > MFC-After: 3 days > Reviewed-by: sumit.saxena@broadcom.com It's odd to review your own work. -- Cheers, Cy Schubert FreeBSD UNIX: Web: https://FreeBSD.org NTP: Web: https://nwtime.org e**(i*pi)+1=0 > Differential-Revision: https://reviews.freebsd.org/D49604 > --- > share/mk/src.libnames.mk | 7 +++++-- > usr.bin/ofed/libibverbs/Makefile.inc | 2 +- > usr.bin/ofed/librdmacm/Makefile.inc | 2 +- > 3 files changed, 7 insertions(+), 4 deletions(-) > > diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk > index e108cc15fb55..125fe2242bd5 100644 > --- a/share/mk/src.libnames.mk > +++ b/share/mk/src.libnames.mk > @@ -285,6 +285,7 @@ _LIBRARIES+= \ > irdma \ > mlx4 \ > mlx5 \ > + bnxtre \ > rdmacm \ > osmcomp \ > opensm \ > @@ -360,7 +361,7 @@ _DP_cap_sysctl= nv > _DP_cap_syslog= nv > _DP_crypt= md > .if ${MK_OFED} != "no" > -_DP_pcap= ibverbs mlx5 > +_DP_pcap= ibverbs mlx5 bnxtre > .endif > _DP_pjdlog= util > _DP_usb= pthread > @@ -511,11 +512,12 @@ _DP_cxgb4= ibverbs pthread > _DP_ibcm= ibverbs > _DP_ibmad= ibumad > _DP_ibnetdisc= osmcomp ibmad ibumad > -_DP_ibumad= > +_DP_ibumad= > _DP_ibverbs= > _DP_irdma= ibverbs pthread > _DP_mlx4= ibverbs pthread > _DP_mlx5= ibverbs pthread > +_DP_bnxtre= ibverbs pthread > _DP_rdmacm= ibverbs > _DP_osmcomp= pthread > _DP_opensm= pthread > @@ -810,6 +812,7 @@ LIBIBVERBSDIR= ${_LIB_OBJTOP}/lib/ofed/libibverbs > LIBIRDMADIR= ${_LIB_OBJTOP}/lib/ofed/libirdma > LIBMLX4DIR= ${_LIB_OBJTOP}/lib/ofed/libmlx4 > LIBMLX5DIR= ${_LIB_OBJTOP}/lib/ofed/libmlx5 > +LIBBNXTREDIR= ${_LIB_OBJTOP}/lib/ofed/libbnxtre > LIBRDMACMDIR= ${_LIB_OBJTOP}/lib/ofed/librdmacm > LIBOSMCOMPDIR= ${_LIB_OBJTOP}/lib/ofed/complib > LIBOPENSMDIR= ${_LIB_OBJTOP}/lib/ofed/libopensm > diff --git a/usr.bin/ofed/libibverbs/Makefile.inc b/usr.bin/ofed/libibverbs/M > akefile.inc > index 616c9bd54707..f8301c3d1073 100644 > --- a/usr.bin/ofed/libibverbs/Makefile.inc > +++ b/usr.bin/ofed/libibverbs/Makefile.inc > @@ -3,6 +3,6 @@ _spath=${SRCTOP}/contrib/ofed/libibverbs > > BINDIR?= /usr/bin > CFLAGS+= -I${_spath} > -LIBADD+= ibverbs mlx4 mlx5 cxgb4 irdma pthread > +LIBADD+= ibverbs mlx4 mlx5 bnxtre cxgb4 irdma pthread > > WARNS?= 2 > diff --git a/usr.bin/ofed/librdmacm/Makefile.inc b/usr.bin/ofed/librdmacm/Mak > efile.inc > index 74f32fe08b42..66fcf2ac267b 100644 > --- a/usr.bin/ofed/librdmacm/Makefile.inc > +++ b/usr.bin/ofed/librdmacm/Makefile.inc > @@ -3,6 +3,6 @@ _spath=${SRCTOP}/contrib/ofed/librdmacm > > BINDIR?= /usr/bin > CFLAGS+= -I${SRCTOP}/contrib/ofed > -LIBADD+= ibverbs rdmacm irdma mlx4 mlx5 cxgb4 pthread > +LIBADD+= ibverbs rdmacm irdma mlx4 mlx5 bnxtre cxgb4 pthread > > WARNS?= 0 > From nobody Wed Dec 3 14:13:44 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM04X1MJ9z6JSNP for ; Wed, 03 Dec 2025 14:14:04 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wm1-f42.google.com (mail-wm1-f42.google.com [209.85.128.42]) (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 4dM04W5Mwfz4PHr for ; Wed, 03 Dec 2025 14:13:58 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-wm1-f42.google.com with SMTP id 5b1f17b1804b1-47774d3536dso9182405e9.0 for ; Wed, 03 Dec 2025 06:13:58 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764771237; x=1765376037; 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=Nq/FfCfvjQBjKAlsF+HKngDRzRKF+mnN1WvhXN45wuc=; b=n/VJARrd8X25Nx2o0ikj9sfuygKA4fpozEEsax6jPRN4e9Ukpu0CScj+As9ABdaNF1 ESCVnIZaFVka2hDJYzKv+cSCCxN1eNsQfXHa8S2SUTuAKn1t+pl3ZbRvo5poJf91R0n7 hc0fzMuKmLgLHSh05Bg2JKlZijcbP15y+IVwmMntrFPVEbDzBEhDj/KEDvjNHhZxM7d0 0p0qy+OOGx7CTY1E/hjlbp+tgzWMIvVnuRnEZZdA3Ud0/H+vJQmR4SAn9yNCXnXACgZt Z9MMJQ2vuhC7xdNk4fJejV6o0LGd+JEahw69btsXsfTY+d+u1wyhdhG7YWoXAOSi6ug7 mi3Q== X-Forwarded-Encrypted: i=1; AJvYcCXlfPnvdEZb/QrcBcZmQ59aN2l3oOnY+Qf0HiijXYRZ+9e1Dpnxi1RIjiBrc6eJfMBhOEjvFcupV13wsUxtjgh2DfW6@freebsd.org X-Gm-Message-State: AOJu0YwiAgUUk9urLmSGS/khYZNciVhq6m/SYYHF/U3iMl7iw57IFGW8 suYuVPPoNV57X2KeI449qz5bN7kkWXsUchYPfOUVSJUJAeQpPYcIszK99eiJbnbOLfpgCa7Mr1e n8HZJ X-Gm-Gg: ASbGncv+5wzyxC0jgTUPLwiTMjn5rXOIlCUBja0xYW2dBYat8zs0+JEL3FGWxCComDT AQaBFj0fFRb/KedkmnH6fvvgF/3Fm0SwHLaMooQQsnsPM6ri9sumgPnc6gBypA9ODSYJmtAEf2w 3S7HKOxcYwI+cQ4Cu37ALYj+NXDwChZM3SkxeELjxBWT0Zcv5UIZn4koEhT3UvvkSgGNPkesBpf IaeryfA9MO0WPPim7eMDTKkklZuQzdE0w4X3WgaFPADS5+959tpqQOr50ndB4rOTHv9Wb3aMgqi xZ1SqoQrnHr338qQbYWXxPN27dkeUxDQIK+Dx3r/QHV8vyItF+YdHLzW7MCWDVBUN+qhsNF1AEu 9xXLcQRUQR2hPL6NYepxTlvjRcW6mwbG84UELRKZHDtdf9ej6prKNMJhKtyjEcm9ei2NhrYYnpD 0Z4I37JkSR4NikQnOCFAQMFd6uoxqfMFhDGq6N+a1+YEdvdfb1Lsl/ X-Google-Smtp-Source: AGHT+IH2xOr51ISKM31huCNN/YiF4XO93oMkOeUcYUGdFUgH/MqXG7rYmI3aK4ZlTXM+HjTGpJa1AQ== X-Received: by 2002:a05:600c:4507:b0:479:2a78:4a2e with SMTP id 5b1f17b1804b1-4792aeefe08mr29767355e9.7.1764771236863; Wed, 03 Dec 2025 06:13:56 -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-4792b178959sm19104275e9.8.2025.12.03.06.13.55 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 03 Dec 2025 06:13:55 -0800 (PST) Content-Type: text/plain; charset=utf-8 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3864.200.81.1.6\)) Subject: Re: git: 35dd53a9e132 - main - librdmacm/libibverbs: Statically bound libbnxtre.so.1 to rping From: Jessica Clarke In-Reply-To: <69302037.3d155.40084cd7@gitrepo.freebsd.org> Date: Wed, 3 Dec 2025 14:13:44 +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: References: <69302037.3d155.40084cd7@gitrepo.freebsd.org> To: Sumit Saxena X-Mailer: Apple Mail (2.3864.200.81.1.6) 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: 4dM04W5Mwfz4PHr On 3 Dec 2025, at 11:34, Sumit Saxena wrote: >=20 > The branch main has been updated by ssaxena: >=20 > URL: = https://cgit.FreeBSD.org/src/commit/?id=3D35dd53a9e13265f7a479649776453efc= 5b737a0f >=20 > commit 35dd53a9e13265f7a479649776453efc5b737a0f > Author: Sumit Saxena > AuthorDate: 2025-12-03 11:28:33 +0000 > Commit: Sumit Saxena > CommitDate: 2025-12-03 11:33:40 +0000 >=20 > librdmacm/libibverbs: Statically bound libbnxtre.so.1 to rping >=20 > By default ibv_devices and rping are not statically bound to > libbnxtre.so.1. i.e. 'ldd /usr/bin/rping' command doesn't list > 'libbnxtre.so.1' entry. So, statically bound the libbnxtre.so.1 > library to rping & ibv_devices utils. Firstly, this is some very unusual terminology, there=E2=80=99s no = =E2=80=9Cbinding=E2=80=9D going on here (binding in ELF linker/loader terminology is about symbols, not libraries), it=E2=80=99s =E2=80=9Clinking=E2=80=9D. Also, = whilst strictly true that this pertains to the static linker, repeating the static part makes it sound like you=E2=80=99re talking about static linking in the = ld -static / libfoo.a sense, which would still have the effect of not showing up in ldd=E2=80=99s output. Secondly, this states some things, but I don=E2=80=99t see why this = change follows from it. *Why* does it matter that ibv_devices and rping do not link against libbnxtre? If it builds, that means none of libbnxtre=E2=80=99= s symbols were needed. Is there some magic dynamic registration going on in linker sets / constructors inside libbnxtre? Please explain the why in the commit message. Jessica From nobody Wed Dec 3 14:15:37 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM06q3kXmz6JSw0 for ; Wed, 03 Dec 2025 14:16:03 +0000 (UTC) (envelope-from sumit.saxena@broadcom.com) Received: from mail-vk1-xa63.google.com (mail-vk1-xa63.google.com [IPv6:2607:f8b0:4864:20::a63]) (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 4dM06q1nrlz4Ppw for ; Wed, 03 Dec 2025 14:16:03 +0000 (UTC) (envelope-from sumit.saxena@broadcom.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-vk1-xa63.google.com with SMTP id 71dfb90a1353d-55b4dafb425so668637e0c.1 for ; Wed, 03 Dec 2025 06:16:03 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764771361; x=1765376161; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0+SZzZV+3C/EoRGazahWa9DNlFNIwyzQ3CFg4b3t3Jw=; b=wUjkVThMzR/Dbih6WbH9OKk1jx5D8RAQ/Hcg+GG3DV1sLFnrjR2hQwmhLJK+3kr9Lm xkGGYlcTilzrbbR2wL8ov/Vkp/mTrv842tOdjNrFUeD1yg076FYre6KOZzc6cRR1gDzg Vsg0gl2xhUtDESUUceTaTGdRiEaGvxI8lTBS4klk35yI1IrCsF7zQ099Xbg+f3MbpYpv c6fUh14kgpM1umDZdAnioZ/eo9zmpHuO2VvuRCyEt1rmW1c8DG5ahG3USHENz0mkh04J Zr+dofTUS5hSVF+EkhXihPHlcfnrgXCHPTYTOgyX1sdq1ezyyInryYSXfGzD8lWPF6pU cgqg== X-Forwarded-Encrypted: i=1; AJvYcCVO+a4kcC7qPEvH+3Vavb2wF8astf7d7AXQcB44vccpFX+MRuCn275ciN/ZpbYAHu4SbUaGxi3X4fAqzsVr6ZhumA0s@freebsd.org X-Gm-Message-State: AOJu0YzjpxjSaKJ2tD5k3TwgAIG7mISjyqfQN9sGSmNkFv/MmyUCGMLN c64/OVedvMZpIlhK0nUUVKaLBaB41OSb7Woxmog8dcg53zn3ovlF1Oan+Y8NFdHPrdvAwWcmrXZ wyRtcX47Vf2UeyCwDaPLdT0BAWT+2z4pR8rnjgEEwogy8YuhaZ5YrylLrY1ghEcM2V+YbX8cbfJ ei7Rv4tnys51ID1gWIClUY/AVkaoPV+1n+aQOXzz7PVHYpCpgl/X3XLJhRbEcFmOgDztNYR4+uB ZiNbknvr3tAsNeLNQAXC0o= X-Gm-Gg: ASbGncv+E9kjLfZJw2Oc+5KXgS8/N89An0m2kJGkEnSCkjD41xWpqCQ2BD4lUUZVnHl ific3oZ9oXfUX08JYlZyR51Pg6GacnMIIwnhwG8XcCnWoKEC3PHGUFoEXagCDQj5vk1y/GMBhQk stAect/d+Kb7TNXm2rcni/wxEQi92Z2E4by68eZDzXpEoUTGsTg1o0/Z8tztwHOCDmyLDfQWL9Q t4fcjRM+fIXTP3yS4i3NPhFASSYJ+KbmfMTGXb6SjJDaM6fDcyP7lauNM60KxY8U2VIGmrbhLFy QxjHk6puM/V9mYs6bYGGQDxaZCVlEWg4Pgu979AT6wpN2g8n0cNYNWSRxMjAptArjHlLpUOu9Nc pVlE1wXzjroUT440lgyYt2pKgXvOz8f+AJV2Hm8SSUI125zGIDul3CTlXXts+hLbE7IfvWePEyD eX1OZBVA7z4rWRpK9lk7e/+3if5npjccgAxsJ159ZZWtLKfHo= X-Google-Smtp-Source: AGHT+IEcrAXpi+C3ODUa030Jzy6FEzaIo0FHn3anUITvvOJbvwDutJCnEJlcTMWyu3I4UqUgHLhtRFYo5LxB X-Received: by 2002:a05:6122:1da7:b0:559:6788:7b55 with SMTP id 71dfb90a1353d-55e5c3516f6mr937381e0c.3.1764771360515; Wed, 03 Dec 2025 06:16:00 -0800 (PST) Received: from smtp-us-east1-p01-i01-si01.dlp.protect.broadcom.com (address-144-49-247-103.dlp.protect.broadcom.com. [144.49.247.103]) by smtp-relay.gmail.com with ESMTPS id 71dfb90a1353d-55cf4b22cbfsm2314081e0c.0.2025.12.03.06.15.59 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 03 Dec 2025 06:16:00 -0800 (PST) X-Relaying-Domain: broadcom.com X-CFilter-Loop: Reflected Received: by mail-lf1-f69.google.com with SMTP id 2adb3069b0e04-5942a78fc87so2549742e87.0 for ; Wed, 03 Dec 2025 06:15:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1764771358; x=1765376158; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=0+SZzZV+3C/EoRGazahWa9DNlFNIwyzQ3CFg4b3t3Jw=; b=hSpGyTqXx6edmgV70mGvFqxe6z9z9F5+4OmwlOwiL/AP7ReBGPwFjhz5HWE5PUA4JF PmaB+38fbUyZjKrX+gmFjSRMfIBQjCHxiUMeVd1/ro1Ca8eEmYIm06NlyPzaImqtcdQn WDRxvr2QPUT2kSXbhtS/5in9ez4BlLQ3I/ZKY= X-Forwarded-Encrypted: i=1; AJvYcCX4RWYOGC08PDTj884+DLrb5SYxIXWStoD0uUqBCRvSCoSmVYyz/C5WnMrJH7T4Q/ATboBOyG8ImJj41d7dc+qkgnCs@freebsd.org X-Received: by 2002:a05:6512:3049:b0:594:26d7:c443 with SMTP id 2adb3069b0e04-597d3fee4c0mr1161789e87.39.1764771357712; Wed, 03 Dec 2025 06:15:57 -0800 (PST) X-Received: by 2002:a05:6512:3049:b0:594:26d7:c443 with SMTP id 2adb3069b0e04-597d3fee4c0mr1161767e87.39.1764771357098; Wed, 03 Dec 2025 06:15:57 -0800 (PST) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 References: <69302037.3d155.40084cd7@gitrepo.freebsd.org> <20251203140554.150B71E8@slippy.cwsent.com> In-Reply-To: <20251203140554.150B71E8@slippy.cwsent.com> From: Sumit Saxena Date: Wed, 3 Dec 2025 19:45:37 +0530 X-Gm-Features: AWmQ_bkqKtZwwFNI12-VCPJJhCQqDOwGGhD8cVmYwMqFuuHgyLSZey3dSFU7slI Message-ID: Subject: Re: git: 35dd53a9e132 - main - librdmacm/libibverbs: Statically bound libbnxtre.so.1 to rping To: Cy Schubert Cc: Sumit Saxena , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org X-DetectorID-Processed: b00c1d49-9d2e-4205-b15f-d015386d3d5e Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="000000000000e8baf206450cd995" X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4dM06q1nrlz4Ppw --000000000000e8baf206450cd995 Content-Type: multipart/alternative; boundary="000000000000d99b4906450cd901" --000000000000d99b4906450cd901 Content-Type: text/plain; charset="UTF-8" My name is inadvertently listed as the 'Author' in the commit message. I am the reviewer and committer for this patch. The correct author is captured in the review link: https://reviews.freebsd.org/D49604 (https://reviews.freebsd.org/D49604). Thanks, Sumit --000000000000d99b4906450cd901 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable

My name is inadvertently listed as the= 'Author' in the commit message. I am the reviewer and committer fo= r this patch.
The correct author is captured in the review link: = https://reviews.freebsd.org/= D49604 (https://reviews.= freebsd.org/D49604).

Thanks,
Sumit
--000000000000d99b4906450cd901-- --000000000000e8baf206450cd995 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIIVWQYJKoZIhvcNAQcCoIIVSjCCFUYCAQExDzANBglghkgBZQMEAgEFADALBgkqhkiG9w0BBwGg ghLGMIIGqDCCBJCgAwIBAgIQfofDCS7XZu8vIeKo0KeY9DANBgkqhkiG9w0BAQwFADBMMSAwHgYD VQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSNjETMBEGA1UEChMKR2xvYmFsU2lnbjETMBEGA1UE AxMKR2xvYmFsU2lnbjAeFw0yMzA0MTkwMzUzNTNaFw0yOTA0MTkwMDAwMDBaMFIxCzAJBgNVBAYT AkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMSgwJgYDVQQDEx9HbG9iYWxTaWduIEdDQyBS NiBTTUlNRSBDQSAyMDIzMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAwjAEbSkPcSyn 26Zn9VtoE/xBvzYmNW29bW1pJZ7jrzKwPJm/GakCvy0IIgObMsx9bpFaq30X1kEJZnLUzuE1/hlc hatYqyORVBeHlv5V0QRSXY4faR0dCkIhXhoGknZ2O0bUJithcN1IsEADNizZ1AJIaWsWbQ4tYEYj ytEdvfkxz1WtX3SjtecZR+9wLJLt6HNa4sC//QKdjyfr/NhDCzYrdIzAssoXFnp4t+HcMyQTrj0r pD8KkPj96sy9axzegLbzte7wgTHbWBeJGp0sKg7BAu+G0Rk6teO1yPd75arbCvfY/NaRRQHk6tmG 71gpLdB1ZhP9IcNYyeTKXIgfMh2tVK9DnXGaksYCyi6WisJa1Oa+poUroX2ESXO6o03lVxiA1xyf G8lUzpUNZonGVrUjhG5+MdY16/6b0uKejZCLbgu6HLPvIyqdTb9XqF4XWWKu+OMDs/rWyQ64v3mv Sa0te5Q5tchm4m9K0Pe9LlIKBk/gsgfaOHJDp4hYx4wocDr8DeCZe5d5wCFkxoGc1ckM8ZoMgpUc 4pgkQE5ShxYMmKbPvNRPa5YFzbFtcFn5RMr1Mju8gt8J0c+dxYco2hi7dEW391KKxGhv7MJBcc+0 x3FFTnmhU+5t6+CnkKMlrmzyaoeVryRTvOiH4FnTNHtVKUYDsCM0CLDdMNgoxgkCAwEAAaOCAX4w ggF6MA4GA1UdDwEB/wQEAwIBhjBMBgNVHSUERTBDBggrBgEFBQcDAgYIKwYBBQUHAwQGCisGAQQB gjcUAgIGCisGAQQBgjcKAwwGCisGAQQBgjcKAwQGCSsGAQQBgjcVBjASBgNVHRMBAf8ECDAGAQH/ AgEAMB0GA1UdDgQWBBQAKTaeXHq6D68tUC3boCOFGLCgkjAfBgNVHSMEGDAWgBSubAWjkxPioufi 1xzWx/B/yGdToDB7BggrBgEFBQcBAQRvMG0wLgYIKwYBBQUHMAGGImh0dHA6Ly9vY3NwMi5nbG9i YWxzaWduLmNvbS9yb290cjYwOwYIKwYBBQUHMAKGL2h0dHA6Ly9zZWN1cmUuZ2xvYmFsc2lnbi5j b20vY2FjZXJ0L3Jvb3QtcjYuY3J0MDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9jcmwuZ2xvYmFs c2lnbi5jb20vcm9vdC1yNi5jcmwwEQYDVR0gBAowCDAGBgRVHSAAMA0GCSqGSIb3DQEBDAUAA4IC AQCRkUdr1aIDRmkNI5jx5ggapGUThq0KcM2dzpMu314mJne8yKVXwzfKBtqbBjbUNMODnBkhvZcn bHUStur2/nt1tP3ee8KyNhYxzv4DkI0NbV93JChXipfsan7YjdfEk5vI2Fq+wpbGALyyWBgfy79Y IgbYWATB158tvEh5UO8kpGpjY95xv+070X3FYuGyeZyIvao26mN872FuxRxYhNLwGHIy38N9ASa1 Q3BTNKSrHrZngadofHglG5W3TMFR11JOEOAUHhUgpbVVvgCYgGA6dSX0y5z7k3rXVyjFOs7KBSXr dJPKadpl4vqYphH7+P40nzBRcxJHrv5FeXlTrb+drjyXNjZSCmzfkOuCqPspBuJ7vab0/9oeNERg nz6SLCjLKcDXbMbKcRXgNhFBlzN4OUBqieSBXk80w2Nzx12KvNj758WavxOsXIbX0Zxwo1h3uw75 AI2v8qwFWXNclO8qW2VXoq6kihWpeiuvDmFfSAwRLxwwIjgUuzG9SaQ+pOomuaC7QTKWMI0hL0b4 mEPq9GsPPQq1UmwkcYFJ/Z4I93DZuKcXmKMmuANTS6wxwIEw8Q5MQ6y9fbJxGEOgOgYL4QIqNULb 5CYPnt2LeiIiEnh8Uuh8tawqSjnR0h7Bv5q4mgo3L1Z9QQuexUntWD96t4o0q1jXWLyrpgP7Zcnu CzCCBYMwggNroAMCAQICDkXmuwODM8OFZUjm/0VRMA0GCSqGSIb3DQEBDAUAMEwxIDAeBgNVBAsT F0dsb2JhbFNpZ24gUm9vdCBDQSAtIFI2MRMwEQYDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQDEwpH bG9iYWxTaWduMB4XDTE0MTIxMDAwMDAwMFoXDTM0MTIxMDAwMDAwMFowTDEgMB4GA1UECxMXR2xv YmFsU2lnbiBSb290IENBIC0gUjYxEzARBgNVBAoTCkdsb2JhbFNpZ24xEzARBgNVBAMTCkdsb2Jh bFNpZ24wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCVB+hzymb57BTKezz3DQjxtEUL LIK0SMbrWzyug7hBkjMUpG9/6SrMxrCIa8W2idHGsv8UzlEUIexK3RtaxtaH7k06FQbtZGYLkoDK RN5zlE7zp4l/T3hjCMgSUG1CZi9NuXkoTVIaihqAtxmBDn7EirxkTCEcQ2jXPTyKxbJm1ZCatzEG xb7ibTIGph75ueuqo7i/voJjUNDwGInf5A959eqiHyrScC5757yTu21T4kh8jBAHOP9msndhfuDq jDyqtKT285VKEgdt/Yyyic/QoGF3yFh0sNQjOvddOsqi250J3l1ELZDxgc1Xkvp+vFAEYzTfa5MY vms2sjnkrCQ2t/DvthwTV5O23rL44oW3c6K4NapF8uCdNqFvVIrxclZuLojFUUJEFZTuo8U4lptO TloLR/MGNkl3MLxxN+Wm7CEIdfzmYRY/d9XZkZeECmzUAk10wBTt/Tn7g/JeFKEEsAvp/u6P4W4L sgizYWYJarEGOmWWWcDwNf3J2iiNGhGHcIEKqJp1HZ46hgUAntuA1iX53AWeJ1lMdjlb6vmlodiD D9H/3zAR+YXPM0j1ym1kFCx6WE/TSwhJxZVkGmMOeT31s4zKWK2cQkV5bg6HGVxUsWW2v4yb3BPp DW+4LtxnbsmLEbWEFIoAGXCDeZGXkdQaJ783HjIH2BRjPChMrwIDAQABo2MwYTAOBgNVHQ8BAf8E BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUrmwFo5MT4qLn4tcc1sfwf8hnU6AwHwYD VR0jBBgwFoAUrmwFo5MT4qLn4tcc1sfwf8hnU6AwDQYJKoZIhvcNAQEMBQADggIBAIMl7ejR/ZVS zZ7ABKCRaeZc0ITe3K2iT+hHeNZlmKlbqDyHfAKK0W63FnPmX8BUmNV0vsHN4hGRrSMYPd3hckSW tJVewHuOmXgWQxNWV7Oiszu1d9xAcqyj65s1PrEIIaHnxEM3eTK+teecLEy8QymZjjDTrCHg4x36 2AczdlQAIiq5TSAucGja5VP8g1zTnfL/RAxEZvLS471GABptArolXY2hMVHdVEYcTduZlu8aHARc phXveOB5/l3bPqpMVf2aFalv4ab733Aw6cPuQkbtwpMFifp9Y3s/0HGBfADomK4OeDTDJfuvCp8g a907E48SjOJBGkh6c6B3ace2XH+CyB7+WBsoK6hsrV5twAXSe7frgP4lN/4Cm2isQl3D7vXM3PBQ ddI2aZzmewTfbgZptt4KCUhZh+t7FGB6ZKppQ++Rx0zsGN1s71MtjJnhXvJyPs9UyL1n7KQPTEX/ 07kwIwdMjxC/hpbZmVq0mVccpMy7FYlTuiwFD+TEnhmxGDTVTJ267fcfrySVBHioA7vugeXaX3yL SqGQdCWnsz5LyCxWvcfI7zjiXJLwefechLp0LWEBIH5+0fJPB1lfiy1DUutGDJTh9WZHeXfVVFsf rSQ3y0VaTqBESMjYsJnFFYQJ9tZJScBluOYacW6gqPGC6EU+bNYC1wpngwVayaQQMIIGjzCCBHeg AwIBAgIMdI2Nfq/Vk8dzZMUnMA0GCSqGSIb3DQEBCwUAMFIxCzAJBgNVBAYTAkJFMRkwFwYDVQQK ExBHbG9iYWxTaWduIG52LXNhMSgwJgYDVQQDEx9HbG9iYWxTaWduIEdDQyBSNiBTTUlNRSBDQSAy MDIzMB4XDTI1MDYyMDEwNTUwNVoXDTI3MDYyMTEwNTUwNVowgdcxCzAJBgNVBAYTAlVTMRMwEQYD VQQIEwpDYWxpZm9ybmlhMREwDwYDVQQHEwhTYW4gSm9zZTEZMBcGA1UEYRMQTlRSVVMrREUtNjYx MDExNzEPMA0GA1UEBBMGU2F4ZW5hMQ4wDAYDVQQqEwVTdW1pdDEWMBQGA1UEChMNQlJPQURDT00g SU5DLjEiMCAGA1UEAwwZc3VtaXQuc2F4ZW5hQGJyb2FkY29tLmNvbTEoMCYGCSqGSIb3DQEJARYZ c3VtaXQuc2F4ZW5hQGJyb2FkY29tLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB ANWfdRsD0NsQr9oaNovE6N6ldgUGyJipSPE9u2SuA5SLtk4//f6PIFdR6h5fMMUsw7H4eBqY88Do ifscJ8gSasrjdgcsGC9lCyPXLwfNEU5C3Mbnua8OK6sTBpf6mvY88HW/6AoKiSpfo5jxCZQOm4Zz oJWD5ea7ThJ2XdDk1rRtGUkwFgN9GRNfOoiIwkkA7EdEfV0eQkVqNgkqUyBSABXcduul2sd4/JQO SsVmTdSKid7L6yZsqk5b3Xj+GMJwPdRfeKP2SRoys0SVnajc9Di+9Jy7uGKxxtb562egZauDFX/0 o0UgYfZrbwWfzJDYMLKzlrOD0M8yGkD8BnyIiVECAwEAAaOCAd0wggHZMA4GA1UdDwEB/wQEAwIF oDAMBgNVHRMBAf8EAjAAMIGTBggrBgEFBQcBAQSBhjCBgzBGBggrBgEFBQcwAoY6aHR0cDovL3Nl Y3VyZS5nbG9iYWxzaWduLmNvbS9jYWNlcnQvZ3NnY2NyNnNtaW1lY2EyMDIzLmNydDA5BggrBgEF BQcwAYYtaHR0cDovL29jc3AuZ2xvYmFsc2lnbi5jb20vZ3NnY2NyNnNtaW1lY2EyMDIzMGUGA1Ud IAReMFwwCQYHZ4EMAQUDAzALBgkrBgEEAaAyASgwQgYKKwYBBAGgMgoDAjA0MDIGCCsGAQUFBwIB FiZodHRwczovL3d3dy5nbG9iYWxzaWduLmNvbS9yZXBvc2l0b3J5LzBBBgNVHR8EOjA4MDagNKAy hjBodHRwOi8vY3JsLmdsb2JhbHNpZ24uY29tL2dzZ2NjcjZzbWltZWNhMjAyMy5jcmwwJAYDVR0R BB0wG4EZc3VtaXQuc2F4ZW5hQGJyb2FkY29tLmNvbTATBgNVHSUEDDAKBggrBgEFBQcDBDAfBgNV HSMEGDAWgBQAKTaeXHq6D68tUC3boCOFGLCgkjAdBgNVHQ4EFgQURSmmYGaiq6dg3CEvXQGHEXJF 8xwwDQYJKoZIhvcNAQELBQADggIBAAl0pcCjujKdwmgtiGl2naEY5wB4G601Kuu3032tR7wmgZLg k+lg9fhAA0boPsi1FE1Pwb93YDBGr/naS/oQ9JglSMeEVzeRvCqjFS4FpouBAFHB77c8w3ZwJ3+t FSRJW9SbW0DADBn5t8GAjv2aSm5vDorqFe9MKOYEe50yYDQEUAsEt5QkrLTcEx9ntvVb25MxI8vM bdfqna+/TyCmFmnGAz58jiw5DxLn++6wMmAk0SeUEuMrAlRIyhte6BBSBQ5cL1P+DWSqQbm/pwCq NhySSLNtTi2dKJvvg6Ax9au913KiJj6uZfPlh6/0kaVKM5GhIABUcm3c6g2qD7ITJxB/p1kjYKLa hVrtrjK7000lHKTPFr6MWB4Ggx7yKQ9yIlPMKKF/Lj8FabYCqeM5ovG7kaK8FYXug5vjNjN0nedR X3P8o+8aL6WFIAAAKm2DqZh3252Gcken8v5c+f0SXWSJFvemfFNgrJiQFnFVrOE5v7qwvM/KvVCA dYm4Ph9QYI0sm+Xitx8MkdOJtq5mcPWowGi8UiCgkOidv4ki1SA0wptfquUhbfS9b2M3XUHCEIUX 4ECvIjR3f+E0NbBIfPccWfYUaDLvo2qhLYS3KQbhKdXcJ83ha17mbVNZbDDo9upNcLO/oPyDbCNF J6UpXZmis1wnCynhK4kQfwFhW7H+MYICVzCCAlMCAQEwYjBSMQswCQYDVQQGEwJCRTEZMBcGA1UE ChMQR2xvYmFsU2lnbiBudi1zYTEoMCYGA1UEAxMfR2xvYmFsU2lnbiBHQ0MgUjYgU01JTUUgQ0Eg MjAyMwIMdI2Nfq/Vk8dzZMUnMA0GCWCGSAFlAwQCAQUAoIHHMC8GCSqGSIb3DQEJBDEiBCDQms8Z XTxrmi5NmdHTr/2f37ecfqsquCj0kxnh36uo4zAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwG CSqGSIb3DQEJBTEPFw0yNTEyMDMxNDE1NThaMFwGCSqGSIb3DQEJDzFPME0wCwYJYIZIAWUDBAEq MAsGCWCGSAFlAwQBFjALBglghkgBZQMEAQIwCgYIKoZIhvcNAwcwCwYJKoZIhvcNAQEHMAsGCWCG SAFlAwQCATANBgkqhkiG9w0BAQEFAASCAQAxxhwYULzDfgYfEMlgQyYZ78Cu0sLkX8YDEHHNDogD ZvBwd4c4K+2l/f2rEeLqjMsQEC6F4D6YzMV2sXNGWMGUx9bgj7U0Z6cDmY7H0AHbc2TFR/z0T2bt /ILFjs3bWE3bb+bHwiK79iQcsU45qqVd/Of9GQeNKq2b2b+0zDsGD8Cp5P8BhREQfB8IlVoSK3j6 YzDEYlYxMxm2am+zAaACar2rl21FSiRdigvQqNaj8UPMjFobcOdaxjy+1qsQ5MAq7Iu2Hd5xwH0w nUTv99gpwe89QbOMWpHLG37Ng7M7BiHkJekEzMkVir4EaZ/W4j6zpKnPgjC2QCFwC4DmzRYb --000000000000e8baf206450cd995-- From nobody Wed Dec 3 14:30:35 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM0Rf1GhYz6JTc8; Wed, 03 Dec 2025 14:30:38 +0000 (UTC) (envelope-from markj@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 "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM0Rd5cSNz3JTw; Wed, 03 Dec 2025 14:30:37 +0000 (UTC) (envelope-from markj@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764772237; 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: in-reply-to:in-reply-to:references:references; bh=/EV/rpeymvxyJP7o65rTesvNLxwFHoq+FRjeocIeHWA=; b=JxJ3hhQngDs3UzI5TgVJ7fw3XLclb8lI9tf7UIQgtbPaTlkCbNVqBtSsja9LaScdty177G KJCuNNwMKOTw39Xp9GjP+Uv18E+PFwEtsZdNnsFpZCbJYYGKa0s+Y9zgMjw5ZwUe1YORf8 esqeM+N0uwBTKnW5/MIqFRrknDRwdEpBuExp5jEMrJnVtwWMgAJ3xACmieizhGzObSY/TS I55VeOR51yTol9n7YmP26/i8J7jUmtfh/2iiPJsvjd6JtVOTXGkgrePxnlVRZFQ8g6HU01 TRePkkdPRB4MXNDz+O0qROLlc/VqD8SS2JQ8EtZoVoX0VSYMVGBaP0ELQ5SNtw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764772237; 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: in-reply-to:in-reply-to:references:references; bh=/EV/rpeymvxyJP7o65rTesvNLxwFHoq+FRjeocIeHWA=; b=inJNHqqqon6YpzRK1gYWraCAVlDVENPla+aaA1D3pg2apmK2pxqWjpTF3z3GuT3p9+HAmu aXB03kyXsByMOa70R/xTcvZMgvWS1wrjEovSyOB24ovAHYU96Ofu1g2CSC+hmldKX6uTOZ 7JxGBsVn/+DQgr39CuDUG9xtbWVAdcWAFsvDZsbl7I+kWFkIEKBnXpaWtpzFMDjmfa7bBO yfLuSMGfn+2w8Q+MrpYHUckckmAV84FSHSAjNZAkgp91d604rm+6iYVsTo0DLJxl4rd4CI 6sOUbBwOSxq9YiWrbhxIJNENTGH8aDNxzA/PwJ8x9X/uRdA1CF6oKOPICZgVMA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764772237; a=rsa-sha256; cv=none; b=OJGvgFiGSJyNaRGGQrTQ4TuiRYoFJwYgPKoPgHUO2oSWCNNqkiQesrJW5R10EnV0F2tshC R/gSpFUB4CF/hPQhAh/pw7fEplm+/IxKDjK3WDKyXartpq3tG46Ej8erbs5LTKo+gBfp9U 1kvaEiVT7mlB48RLBjrdax4SxlPPhkbva4pI/bsfbiu7D+c+Ht+Hh0JBu5MpghNz4ucrQi OML8gQL1zfv3ZYmA3BZJ5YXOrpb1rrCKfyWZkGyn286EvwiKgXK37N+1CixUzzgGSSTHur 6LiWCgP9lxX1RA0+Xkv5YrACMeMndU1GXRyxJBXvb8wV/PYS40oIU+iTCyUakA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from nuc (192-0-220-237.cpe.teksavvy.com [192.0.220.237]) (using TLSv1.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) (Authenticated sender: markj) by smtp.freebsd.org (Postfix) with ESMTPSA id 4dM0Rd38bzzBct; Wed, 03 Dec 2025 14:30:37 +0000 (UTC) (envelope-from markj@freebsd.org) Date: Wed, 3 Dec 2025 09:30:35 -0500 From: Mark Johnston To: Sumit Saxena Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 35dd53a9e132 - main - librdmacm/libibverbs: Statically bound libbnxtre.so.1 to rping Message-ID: References: <69302037.3d155.40084cd7@gitrepo.freebsd.org> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <69302037.3d155.40084cd7@gitrepo.freebsd.org> On Wed, Dec 03, 2025 at 11:34:15AM +0000, Sumit Saxena wrote: > The branch main has been updated by ssaxena: > > URL: https://cgit.FreeBSD.org/src/commit/?id=35dd53a9e13265f7a479649776453efc5b737a0f > > commit 35dd53a9e13265f7a479649776453efc5b737a0f > Author: Sumit Saxena > AuthorDate: 2025-12-03 11:28:33 +0000 > Commit: Sumit Saxena > CommitDate: 2025-12-03 11:33:40 +0000 > > librdmacm/libibverbs: Statically bound libbnxtre.so.1 to rping > > By default ibv_devices and rping are not statically bound to > libbnxtre.so.1. i.e. 'ldd /usr/bin/rping' command doesn't list > 'libbnxtre.so.1' entry. So, statically bound the libbnxtre.so.1 > library to rping & ibv_devices utils. > > MFC-After: 3 days > Reviewed-by: sumit.saxena@broadcom.com > Differential-Revision: https://reviews.freebsd.org/D49604 > --- > share/mk/src.libnames.mk | 7 +++++-- > usr.bin/ofed/libibverbs/Makefile.inc | 2 +- > usr.bin/ofed/librdmacm/Makefile.inc | 2 +- > 3 files changed, 7 insertions(+), 4 deletions(-) > > diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk > index e108cc15fb55..125fe2242bd5 100644 > --- a/share/mk/src.libnames.mk > +++ b/share/mk/src.libnames.mk > @@ -285,6 +285,7 @@ _LIBRARIES+= \ > irdma \ > mlx4 \ > mlx5 \ > + bnxtre \ > rdmacm \ > osmcomp \ > opensm \ > @@ -360,7 +361,7 @@ _DP_cap_sysctl= nv > _DP_cap_syslog= nv > _DP_crypt= md > .if ${MK_OFED} != "no" > -_DP_pcap= ibverbs mlx5 > +_DP_pcap= ibverbs mlx5 bnxtre It's not clear from the commit message whether this part of the change was intentional. In any case, it breaks the build. Here is a patch which fixes it: https://reviews.freebsd.org/D54048 > .endif > _DP_pjdlog= util > _DP_usb= pthread > @@ -511,11 +512,12 @@ _DP_cxgb4= ibverbs pthread > _DP_ibcm= ibverbs > _DP_ibmad= ibumad > _DP_ibnetdisc= osmcomp ibmad ibumad > -_DP_ibumad= > +_DP_ibumad= > _DP_ibverbs= > _DP_irdma= ibverbs pthread > _DP_mlx4= ibverbs pthread > _DP_mlx5= ibverbs pthread > +_DP_bnxtre= ibverbs pthread > _DP_rdmacm= ibverbs > _DP_osmcomp= pthread > _DP_opensm= pthread > @@ -810,6 +812,7 @@ LIBIBVERBSDIR= ${_LIB_OBJTOP}/lib/ofed/libibverbs > LIBIRDMADIR= ${_LIB_OBJTOP}/lib/ofed/libirdma > LIBMLX4DIR= ${_LIB_OBJTOP}/lib/ofed/libmlx4 > LIBMLX5DIR= ${_LIB_OBJTOP}/lib/ofed/libmlx5 > +LIBBNXTREDIR= ${_LIB_OBJTOP}/lib/ofed/libbnxtre > LIBRDMACMDIR= ${_LIB_OBJTOP}/lib/ofed/librdmacm > LIBOSMCOMPDIR= ${_LIB_OBJTOP}/lib/ofed/complib > LIBOPENSMDIR= ${_LIB_OBJTOP}/lib/ofed/libopensm > diff --git a/usr.bin/ofed/libibverbs/Makefile.inc b/usr.bin/ofed/libibverbs/Makefile.inc > index 616c9bd54707..f8301c3d1073 100644 > --- a/usr.bin/ofed/libibverbs/Makefile.inc > +++ b/usr.bin/ofed/libibverbs/Makefile.inc > @@ -3,6 +3,6 @@ _spath=${SRCTOP}/contrib/ofed/libibverbs > > BINDIR?= /usr/bin > CFLAGS+= -I${_spath} > -LIBADD+= ibverbs mlx4 mlx5 cxgb4 irdma pthread > +LIBADD+= ibverbs mlx4 mlx5 bnxtre cxgb4 irdma pthread > > WARNS?= 2 > diff --git a/usr.bin/ofed/librdmacm/Makefile.inc b/usr.bin/ofed/librdmacm/Makefile.inc > index 74f32fe08b42..66fcf2ac267b 100644 > --- a/usr.bin/ofed/librdmacm/Makefile.inc > +++ b/usr.bin/ofed/librdmacm/Makefile.inc > @@ -3,6 +3,6 @@ _spath=${SRCTOP}/contrib/ofed/librdmacm > > BINDIR?= /usr/bin > CFLAGS+= -I${SRCTOP}/contrib/ofed > -LIBADD+= ibverbs rdmacm irdma mlx4 mlx5 cxgb4 pthread > +LIBADD+= ibverbs rdmacm irdma mlx4 mlx5 bnxtre cxgb4 pthread > > WARNS?= 0 > From nobody Wed Dec 3 14:36:11 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM0Zd4mtDz6JV4v for ; Wed, 03 Dec 2025 14:36:41 +0000 (UTC) (envelope-from sumit.saxena@broadcom.com) Received: from mail-oa1-x61.google.com (mail-oa1-x61.google.com [IPv6:2001:4860:4864:20::61]) (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 4dM0Zd29ZDz3L55 for ; Wed, 03 Dec 2025 14:36:41 +0000 (UTC) (envelope-from sumit.saxena@broadcom.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-oa1-x61.google.com with SMTP id 586e51a60fabf-3e83c40e9dfso1716790fac.1 for ; Wed, 03 Dec 2025 06:36:41 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764772595; x=1765377395; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=jkmgKF99Pqun/cbuGnKllQChT+kiyrOk9hp1JB2nmzo=; b=D81iLIoxxxepIDoMSKUaAyLh2hUXczJt+i63ZFf1TX1n3zjCTECIPtoZ5+hSavMVuS i4dGi1wLrpHgMKm/QxCOazK7nqnTZ3ETJeEejqP3ErCyFBi0rjyjMJ3IQzuVL3hRQd6v bcnKba1gN97uiGWdTSQX+2rOnEPJ2ylIjTmoQXC06ToSQuuHWug1uI2sOqZI2QR2bXgy cPV7q1zyTFoib1NayH2/bW0naaEF8zPfWnJUG4zouwahn3n5qh9iLIBfDpbC7VAMazbt rI3dgp5Qa7Anp+/Kkeq6Zzl17a+AtxZ6lzQ6HyxXWKjEq9Osw6g5v1BJU/LuknxDgsVa oSfg== X-Forwarded-Encrypted: i=1; AJvYcCVuIrLfjF25/Er74FS30S+VjoWp9/yobE/a6wyAo2u8mtuAPVxhj9psRuaNbnFNxA1K60AiXomvL4UwXT8ZZBWeCegR@freebsd.org X-Gm-Message-State: AOJu0YwQ3tgXBTrTUKxcCaX2ihzqf5I2m2WpAKTfWRnbp/AEjF/pg7Kd up595gD3UkC+Sz52nl9a8lULTC4mdd9/hYkVTda/3rcDBlKCbg6LDckAH462EB2j+yh7Eq3te/u IedklbuHJBFOUAStgwB9sISipjZb5yIfwrLe9DRve7Kn28vc0ZCtLukdpxqSyBXUe+GewED/3JF uMmy5PKVAerbT2MUP4WWz2OL4WrwIKf6bfWNpOnmq5KHauZX1cqa0WsdQ3kylm/q5X9wGGIyosL ypBR33iGZMq9zIlu9hkJns= X-Gm-Gg: ASbGnct/BVViJ3WGSppLBSNZMgPcl11jbndFppZM9PFZoDzxfyFrZscJhsf5c4x7B9Y FnDQOZc4EkFYBCt0yDrTeXfZDQ0NEphRa+uH/3dCVrwcRyCPEzkyb4sF2glx5b3f8QF6p3oObpe zHvvgQXkZHPBZBLF/vNvi01XBj38QtoCIxMsskiy6IHaSyHjzH7T66pKsg+FLpho7YLM1SJ7ToP 1ihfF03q+NW9mYfSrmIrt1r50R7VE5NQ3gx8T+p6dgPYgkYB84QJs/vLVr4JSzI9WHpO+WOy0ti PryhykbekHTCwuDtv5H5huVY1DyibBBeGso3+pjbQD1+TUe7z9ObKzh97Yh2JlmTfkh/iWfqAcz N+EUoqD06Wg9/kvK0iEzNg/U6RsNkeHAl857qg7kqFpFMGR5iL1b+BTqqgYfFXoK8TIRhPQF/je Ea1V+NCsNE9SDNLjuP4PCvhWEqpyEM6Rzotcq+UWT/KeRz X-Google-Smtp-Source: AGHT+IHVn+JUAJpDcTZtA8aZ9W2Q7gsyhW3P2MA/f3ueD0pf9/DSSn2nlAUywc0MnosOKtxU0/ulrCdy0LS4 X-Received: by 2002:a05:6870:40b3:b0:3f4:fa99:29fa with SMTP id 586e51a60fabf-3f4fa992bb7mr334935fac.24.1764772595017; Wed, 03 Dec 2025 06:36:35 -0800 (PST) Received: from smtp-us-east1-p01-i01-si01.dlp.protect.broadcom.com (address-144-49-247-11.dlp.protect.broadcom.com. [144.49.247.11]) by smtp-relay.gmail.com with ESMTPS id 586e51a60fabf-3f0dd02e162sm2023194fac.13.2025.12.03.06.36.34 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 03 Dec 2025 06:36:35 -0800 (PST) X-Relaying-Domain: broadcom.com X-CFilter-Loop: Reflected Received: by mail-lf1-f69.google.com with SMTP id 2adb3069b0e04-59427b2fe85so779525e87.1 for ; Wed, 03 Dec 2025 06:36:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1764772593; x=1765377393; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=jkmgKF99Pqun/cbuGnKllQChT+kiyrOk9hp1JB2nmzo=; b=W/5RHWPKPMRQReRflvLM1W1vc2RovM5jtky4+rx/vVyUmMLIsSdl6EkfCawwZ9o+ka RiCqsv38X28TJml0dWsrYQ5CzftElvF6f19BypHYuN7G8LAdNJgjkB7Hz5g2NKStQSmI ECV3aC7fNA5v98pMMj2Fy9XsTBw3alLSs4JrM= X-Forwarded-Encrypted: i=1; AJvYcCUphdlFZUVuaKDgzbBhqDQQL978lPfP5Cb+2yFqIz+HS4a5kjYBb8xXPbxwzzbfTxoE98kIjG8B7lSDytvbRhorBZNq@freebsd.org X-Received: by 2002:a05:6512:33d4:b0:595:9929:c8a4 with SMTP id 2adb3069b0e04-597cfb3203bmr2676368e87.22.1764772593047; Wed, 03 Dec 2025 06:36:33 -0800 (PST) X-Received: by 2002:a05:6512:33d4:b0:595:9929:c8a4 with SMTP id 2adb3069b0e04-597cfb3203bmr2676358e87.22.1764772592608; Wed, 03 Dec 2025 06:36:32 -0800 (PST) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 References: <69302037.3d155.40084cd7@gitrepo.freebsd.org> In-Reply-To: From: Sumit Saxena Date: Wed, 3 Dec 2025 20:06:11 +0530 X-Gm-Features: AWmQ_blHQK8CcmxrcS4xGEGHbpuK0x_BoFyzJgEvRWG1hHpPvXpEIwoCFVFa_1Y Message-ID: Subject: Re: git: 35dd53a9e132 - main - librdmacm/libibverbs: Statically bound libbnxtre.so.1 to rping To: Mark Johnston Cc: Sumit Saxena , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org, Sreekanth Reddy X-DetectorID-Processed: b00c1d49-9d2e-4205-b15f-d015386d3d5e Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="0000000000008aad4506450d2369" X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2001:4860:4864::/48, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4dM0Zd29ZDz3L55 --0000000000008aad4506450d2369 Content-Type: text/plain; charset="UTF-8" > It's not clear from the commit message whether this part of the change > was intentional. In any case, it breaks the build. Here is a patch > which fixes it: https://reviews.freebsd.org/D54048 Thanks Mark for fixing this. Sreekanth / I will rewrite the commit message. Thanks, Sumit --0000000000008aad4506450d2369 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIIVWQYJKoZIhvcNAQcCoIIVSjCCFUYCAQExDzANBglghkgBZQMEAgEFADALBgkqhkiG9w0BBwGg ghLGMIIGqDCCBJCgAwIBAgIQfofDCS7XZu8vIeKo0KeY9DANBgkqhkiG9w0BAQwFADBMMSAwHgYD VQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSNjETMBEGA1UEChMKR2xvYmFsU2lnbjETMBEGA1UE AxMKR2xvYmFsU2lnbjAeFw0yMzA0MTkwMzUzNTNaFw0yOTA0MTkwMDAwMDBaMFIxCzAJBgNVBAYT AkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMSgwJgYDVQQDEx9HbG9iYWxTaWduIEdDQyBS NiBTTUlNRSBDQSAyMDIzMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAwjAEbSkPcSyn 26Zn9VtoE/xBvzYmNW29bW1pJZ7jrzKwPJm/GakCvy0IIgObMsx9bpFaq30X1kEJZnLUzuE1/hlc hatYqyORVBeHlv5V0QRSXY4faR0dCkIhXhoGknZ2O0bUJithcN1IsEADNizZ1AJIaWsWbQ4tYEYj ytEdvfkxz1WtX3SjtecZR+9wLJLt6HNa4sC//QKdjyfr/NhDCzYrdIzAssoXFnp4t+HcMyQTrj0r pD8KkPj96sy9axzegLbzte7wgTHbWBeJGp0sKg7BAu+G0Rk6teO1yPd75arbCvfY/NaRRQHk6tmG 71gpLdB1ZhP9IcNYyeTKXIgfMh2tVK9DnXGaksYCyi6WisJa1Oa+poUroX2ESXO6o03lVxiA1xyf G8lUzpUNZonGVrUjhG5+MdY16/6b0uKejZCLbgu6HLPvIyqdTb9XqF4XWWKu+OMDs/rWyQ64v3mv Sa0te5Q5tchm4m9K0Pe9LlIKBk/gsgfaOHJDp4hYx4wocDr8DeCZe5d5wCFkxoGc1ckM8ZoMgpUc 4pgkQE5ShxYMmKbPvNRPa5YFzbFtcFn5RMr1Mju8gt8J0c+dxYco2hi7dEW391KKxGhv7MJBcc+0 x3FFTnmhU+5t6+CnkKMlrmzyaoeVryRTvOiH4FnTNHtVKUYDsCM0CLDdMNgoxgkCAwEAAaOCAX4w ggF6MA4GA1UdDwEB/wQEAwIBhjBMBgNVHSUERTBDBggrBgEFBQcDAgYIKwYBBQUHAwQGCisGAQQB gjcUAgIGCisGAQQBgjcKAwwGCisGAQQBgjcKAwQGCSsGAQQBgjcVBjASBgNVHRMBAf8ECDAGAQH/ AgEAMB0GA1UdDgQWBBQAKTaeXHq6D68tUC3boCOFGLCgkjAfBgNVHSMEGDAWgBSubAWjkxPioufi 1xzWx/B/yGdToDB7BggrBgEFBQcBAQRvMG0wLgYIKwYBBQUHMAGGImh0dHA6Ly9vY3NwMi5nbG9i YWxzaWduLmNvbS9yb290cjYwOwYIKwYBBQUHMAKGL2h0dHA6Ly9zZWN1cmUuZ2xvYmFsc2lnbi5j b20vY2FjZXJ0L3Jvb3QtcjYuY3J0MDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9jcmwuZ2xvYmFs c2lnbi5jb20vcm9vdC1yNi5jcmwwEQYDVR0gBAowCDAGBgRVHSAAMA0GCSqGSIb3DQEBDAUAA4IC AQCRkUdr1aIDRmkNI5jx5ggapGUThq0KcM2dzpMu314mJne8yKVXwzfKBtqbBjbUNMODnBkhvZcn bHUStur2/nt1tP3ee8KyNhYxzv4DkI0NbV93JChXipfsan7YjdfEk5vI2Fq+wpbGALyyWBgfy79Y IgbYWATB158tvEh5UO8kpGpjY95xv+070X3FYuGyeZyIvao26mN872FuxRxYhNLwGHIy38N9ASa1 Q3BTNKSrHrZngadofHglG5W3TMFR11JOEOAUHhUgpbVVvgCYgGA6dSX0y5z7k3rXVyjFOs7KBSXr dJPKadpl4vqYphH7+P40nzBRcxJHrv5FeXlTrb+drjyXNjZSCmzfkOuCqPspBuJ7vab0/9oeNERg nz6SLCjLKcDXbMbKcRXgNhFBlzN4OUBqieSBXk80w2Nzx12KvNj758WavxOsXIbX0Zxwo1h3uw75 AI2v8qwFWXNclO8qW2VXoq6kihWpeiuvDmFfSAwRLxwwIjgUuzG9SaQ+pOomuaC7QTKWMI0hL0b4 mEPq9GsPPQq1UmwkcYFJ/Z4I93DZuKcXmKMmuANTS6wxwIEw8Q5MQ6y9fbJxGEOgOgYL4QIqNULb 5CYPnt2LeiIiEnh8Uuh8tawqSjnR0h7Bv5q4mgo3L1Z9QQuexUntWD96t4o0q1jXWLyrpgP7Zcnu CzCCBYMwggNroAMCAQICDkXmuwODM8OFZUjm/0VRMA0GCSqGSIb3DQEBDAUAMEwxIDAeBgNVBAsT F0dsb2JhbFNpZ24gUm9vdCBDQSAtIFI2MRMwEQYDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQDEwpH bG9iYWxTaWduMB4XDTE0MTIxMDAwMDAwMFoXDTM0MTIxMDAwMDAwMFowTDEgMB4GA1UECxMXR2xv YmFsU2lnbiBSb290IENBIC0gUjYxEzARBgNVBAoTCkdsb2JhbFNpZ24xEzARBgNVBAMTCkdsb2Jh bFNpZ24wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCVB+hzymb57BTKezz3DQjxtEUL LIK0SMbrWzyug7hBkjMUpG9/6SrMxrCIa8W2idHGsv8UzlEUIexK3RtaxtaH7k06FQbtZGYLkoDK RN5zlE7zp4l/T3hjCMgSUG1CZi9NuXkoTVIaihqAtxmBDn7EirxkTCEcQ2jXPTyKxbJm1ZCatzEG xb7ibTIGph75ueuqo7i/voJjUNDwGInf5A959eqiHyrScC5757yTu21T4kh8jBAHOP9msndhfuDq jDyqtKT285VKEgdt/Yyyic/QoGF3yFh0sNQjOvddOsqi250J3l1ELZDxgc1Xkvp+vFAEYzTfa5MY vms2sjnkrCQ2t/DvthwTV5O23rL44oW3c6K4NapF8uCdNqFvVIrxclZuLojFUUJEFZTuo8U4lptO TloLR/MGNkl3MLxxN+Wm7CEIdfzmYRY/d9XZkZeECmzUAk10wBTt/Tn7g/JeFKEEsAvp/u6P4W4L sgizYWYJarEGOmWWWcDwNf3J2iiNGhGHcIEKqJp1HZ46hgUAntuA1iX53AWeJ1lMdjlb6vmlodiD D9H/3zAR+YXPM0j1ym1kFCx6WE/TSwhJxZVkGmMOeT31s4zKWK2cQkV5bg6HGVxUsWW2v4yb3BPp DW+4LtxnbsmLEbWEFIoAGXCDeZGXkdQaJ783HjIH2BRjPChMrwIDAQABo2MwYTAOBgNVHQ8BAf8E BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUrmwFo5MT4qLn4tcc1sfwf8hnU6AwHwYD VR0jBBgwFoAUrmwFo5MT4qLn4tcc1sfwf8hnU6AwDQYJKoZIhvcNAQEMBQADggIBAIMl7ejR/ZVS zZ7ABKCRaeZc0ITe3K2iT+hHeNZlmKlbqDyHfAKK0W63FnPmX8BUmNV0vsHN4hGRrSMYPd3hckSW tJVewHuOmXgWQxNWV7Oiszu1d9xAcqyj65s1PrEIIaHnxEM3eTK+teecLEy8QymZjjDTrCHg4x36 2AczdlQAIiq5TSAucGja5VP8g1zTnfL/RAxEZvLS471GABptArolXY2hMVHdVEYcTduZlu8aHARc phXveOB5/l3bPqpMVf2aFalv4ab733Aw6cPuQkbtwpMFifp9Y3s/0HGBfADomK4OeDTDJfuvCp8g a907E48SjOJBGkh6c6B3ace2XH+CyB7+WBsoK6hsrV5twAXSe7frgP4lN/4Cm2isQl3D7vXM3PBQ ddI2aZzmewTfbgZptt4KCUhZh+t7FGB6ZKppQ++Rx0zsGN1s71MtjJnhXvJyPs9UyL1n7KQPTEX/ 07kwIwdMjxC/hpbZmVq0mVccpMy7FYlTuiwFD+TEnhmxGDTVTJ267fcfrySVBHioA7vugeXaX3yL SqGQdCWnsz5LyCxWvcfI7zjiXJLwefechLp0LWEBIH5+0fJPB1lfiy1DUutGDJTh9WZHeXfVVFsf rSQ3y0VaTqBESMjYsJnFFYQJ9tZJScBluOYacW6gqPGC6EU+bNYC1wpngwVayaQQMIIGjzCCBHeg AwIBAgIMdI2Nfq/Vk8dzZMUnMA0GCSqGSIb3DQEBCwUAMFIxCzAJBgNVBAYTAkJFMRkwFwYDVQQK ExBHbG9iYWxTaWduIG52LXNhMSgwJgYDVQQDEx9HbG9iYWxTaWduIEdDQyBSNiBTTUlNRSBDQSAy MDIzMB4XDTI1MDYyMDEwNTUwNVoXDTI3MDYyMTEwNTUwNVowgdcxCzAJBgNVBAYTAlVTMRMwEQYD VQQIEwpDYWxpZm9ybmlhMREwDwYDVQQHEwhTYW4gSm9zZTEZMBcGA1UEYRMQTlRSVVMrREUtNjYx MDExNzEPMA0GA1UEBBMGU2F4ZW5hMQ4wDAYDVQQqEwVTdW1pdDEWMBQGA1UEChMNQlJPQURDT00g SU5DLjEiMCAGA1UEAwwZc3VtaXQuc2F4ZW5hQGJyb2FkY29tLmNvbTEoMCYGCSqGSIb3DQEJARYZ c3VtaXQuc2F4ZW5hQGJyb2FkY29tLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB ANWfdRsD0NsQr9oaNovE6N6ldgUGyJipSPE9u2SuA5SLtk4//f6PIFdR6h5fMMUsw7H4eBqY88Do ifscJ8gSasrjdgcsGC9lCyPXLwfNEU5C3Mbnua8OK6sTBpf6mvY88HW/6AoKiSpfo5jxCZQOm4Zz oJWD5ea7ThJ2XdDk1rRtGUkwFgN9GRNfOoiIwkkA7EdEfV0eQkVqNgkqUyBSABXcduul2sd4/JQO SsVmTdSKid7L6yZsqk5b3Xj+GMJwPdRfeKP2SRoys0SVnajc9Di+9Jy7uGKxxtb562egZauDFX/0 o0UgYfZrbwWfzJDYMLKzlrOD0M8yGkD8BnyIiVECAwEAAaOCAd0wggHZMA4GA1UdDwEB/wQEAwIF oDAMBgNVHRMBAf8EAjAAMIGTBggrBgEFBQcBAQSBhjCBgzBGBggrBgEFBQcwAoY6aHR0cDovL3Nl Y3VyZS5nbG9iYWxzaWduLmNvbS9jYWNlcnQvZ3NnY2NyNnNtaW1lY2EyMDIzLmNydDA5BggrBgEF BQcwAYYtaHR0cDovL29jc3AuZ2xvYmFsc2lnbi5jb20vZ3NnY2NyNnNtaW1lY2EyMDIzMGUGA1Ud IAReMFwwCQYHZ4EMAQUDAzALBgkrBgEEAaAyASgwQgYKKwYBBAGgMgoDAjA0MDIGCCsGAQUFBwIB FiZodHRwczovL3d3dy5nbG9iYWxzaWduLmNvbS9yZXBvc2l0b3J5LzBBBgNVHR8EOjA4MDagNKAy hjBodHRwOi8vY3JsLmdsb2JhbHNpZ24uY29tL2dzZ2NjcjZzbWltZWNhMjAyMy5jcmwwJAYDVR0R BB0wG4EZc3VtaXQuc2F4ZW5hQGJyb2FkY29tLmNvbTATBgNVHSUEDDAKBggrBgEFBQcDBDAfBgNV HSMEGDAWgBQAKTaeXHq6D68tUC3boCOFGLCgkjAdBgNVHQ4EFgQURSmmYGaiq6dg3CEvXQGHEXJF 8xwwDQYJKoZIhvcNAQELBQADggIBAAl0pcCjujKdwmgtiGl2naEY5wB4G601Kuu3032tR7wmgZLg k+lg9fhAA0boPsi1FE1Pwb93YDBGr/naS/oQ9JglSMeEVzeRvCqjFS4FpouBAFHB77c8w3ZwJ3+t FSRJW9SbW0DADBn5t8GAjv2aSm5vDorqFe9MKOYEe50yYDQEUAsEt5QkrLTcEx9ntvVb25MxI8vM bdfqna+/TyCmFmnGAz58jiw5DxLn++6wMmAk0SeUEuMrAlRIyhte6BBSBQ5cL1P+DWSqQbm/pwCq NhySSLNtTi2dKJvvg6Ax9au913KiJj6uZfPlh6/0kaVKM5GhIABUcm3c6g2qD7ITJxB/p1kjYKLa hVrtrjK7000lHKTPFr6MWB4Ggx7yKQ9yIlPMKKF/Lj8FabYCqeM5ovG7kaK8FYXug5vjNjN0nedR X3P8o+8aL6WFIAAAKm2DqZh3252Gcken8v5c+f0SXWSJFvemfFNgrJiQFnFVrOE5v7qwvM/KvVCA dYm4Ph9QYI0sm+Xitx8MkdOJtq5mcPWowGi8UiCgkOidv4ki1SA0wptfquUhbfS9b2M3XUHCEIUX 4ECvIjR3f+E0NbBIfPccWfYUaDLvo2qhLYS3KQbhKdXcJ83ha17mbVNZbDDo9upNcLO/oPyDbCNF J6UpXZmis1wnCynhK4kQfwFhW7H+MYICVzCCAlMCAQEwYjBSMQswCQYDVQQGEwJCRTEZMBcGA1UE ChMQR2xvYmFsU2lnbiBudi1zYTEoMCYGA1UEAxMfR2xvYmFsU2lnbiBHQ0MgUjYgU01JTUUgQ0Eg MjAyMwIMdI2Nfq/Vk8dzZMUnMA0GCWCGSAFlAwQCAQUAoIHHMC8GCSqGSIb3DQEJBDEiBCDUd7Uo JOyPRTCy38GTz5C3SbGreIL1vT4zTjcU6Vv6KzAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwG CSqGSIb3DQEJBTEPFw0yNTEyMDMxNDM2MzNaMFwGCSqGSIb3DQEJDzFPME0wCwYJYIZIAWUDBAEq MAsGCWCGSAFlAwQBFjALBglghkgBZQMEAQIwCgYIKoZIhvcNAwcwCwYJKoZIhvcNAQEHMAsGCWCG SAFlAwQCATANBgkqhkiG9w0BAQEFAASCAQBUhzlXBRRHaL265CyqfDkikOy0/Ml+fDVov/+qeMYp 06e8fLrKAMfNgMwlQYUb/nkKZJ8xTWZetbbDkeLrZXACn/FJR1Mzm0eD4+1JddAX/ZiR8LITx4fo Q5yUCzYNRsboF++beNWRM9q7MNsr+tNhdMl5N7p3HrkRFY1tY+AknsfPRrlpAxYc1GrQcutAEXjW gCIi+tdaq/EAGXho0W07tx+kq2HxtiIEWK02eRIMTUzwRU+K6PwFht1xpJ1B1Tw27cEjn6o/NL0R do5KoSBcgNDJTcIUp3T2KFcfhD87QlC3DGfdp3yhylm5Ac6KpiKZZMAHYcSwi8PQ4OUh4sTm --0000000000008aad4506450d2369-- From nobody Wed Dec 3 14:42:26 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM0jK3PbCz6JW6Q; Wed, 03 Dec 2025 14:42:29 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from omta004.cacentral1.a.cloudfilter.net (omta002.cacentral1.a.cloudfilter.net [3.97.99.33]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM0jK02Sjz3Nlr; Wed, 03 Dec 2025 14:42:28 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Authentication-Results: mx1.freebsd.org; none Received: from shw-obgw-4003b.ext.cloudfilter.net ([10.228.9.157]) by cmsmtp with ESMTPS id QkefvQ9SWPzKyQo3ovgYhy; Wed, 03 Dec 2025 14:42:28 +0000 Received: from spqr.komquats.com ([70.66.136.217]) by cmsmtp with ESMTPSA id Qo3mvhHQW24TSQo3nv44CA; Wed, 03 Dec 2025 14:42:28 +0000 X-Auth-User: cschuber X-Authority-Analysis: v=2.4 cv=Ie+KmGqa c=1 sm=1 tr=0 ts=69304c54 a=h7br+8Ma+Xn9xscxy5znUg==:117 a=h7br+8Ma+Xn9xscxy5znUg==:17 a=kj9zAlcOel0A:10 a=wP3pNCr1ah4A:10 a=6I5d2MoRAAAA:8 a=EkcXrb_YAAAA:8 a=YxBL1-UpAAAA:8 a=obCaeL__CDefsm4fRFAA:9 a=CjuIK1q_8ugA:10 a=LK5xJRSDVpKd5WXXoEvA:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from slippy.cwsent.com (slippy.cwsent.com [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTP id 925344D1; Wed, 03 Dec 2025 06:42:26 -0800 (PST) Received: by slippy.cwsent.com (Postfix, from userid 1000) id 89CC91E9; Wed, 03 Dec 2025 06:42:26 -0800 (PST) X-Mailer: exmh version 2.9.0 11/07/2018 with nmh-1.8+dev Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Sumit Saxena cc: Cy Schubert , Sumit Saxena , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 35dd53a9e132 - main - librdmacm/libibverbs: Statically bound libbnxtre.so.1 to rping In-reply-to: References: <69302037.3d155.40084cd7@gitrepo.freebsd.org> <20251203140554.150B71E8@slippy.cwsent.com> Comments: In-reply-to Sumit Saxena message dated "Wed, 03 Dec 2025 19:45:37 +0530." List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Wed, 03 Dec 2025 06:42:26 -0800 Message-Id: <20251203144226.89CC91E9@slippy.cwsent.com> X-CMAE-Envelope: MS4xfKMo5gNNLzAdFJvp7W7j2Zbw8linxf1BNa1Pg0MOBqaZ1b0pFRcz1FBboV5R9Zix9JyW7gCZFeN/fdNqh3DiVbyzuwZe3ST37wWVgN0y6k+if52aDBAX LhN8T6+DDjIdbsgZCF2nQXUSNJ1eJssYwN/J1LbtthVEpycmlVjPZHRCVZO+i2QLyFbUy1bsFZ/IrROwcgK86Zz8p7VMpWPKsOCwgBEXWEm7Pnzv1UEIPRxF irsH1VAaODnZe+zw7x5si0R1qUqKqYM0TbNRUd8ubvB9cCejutxKsTKcBkh1x2ZuF5Nkr07qfqkQUpfTJprU32oqoVe/zIJ/C7NxMbnS3AI02lHbwKm81x/f 08CH4bcU60/i0yQOkxpw3vRFZg1HEw== X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4dM0jK02Sjz3Nlr In message > Content-Type: text/plain; charset="UTF-8" > > My name is inadvertently listed as the 'Author' in the commit message. I am > the reviewer and committer for this patch. > The correct author is captured in the review link: > https://reviews.freebsd.org/D49604 (https://reviews.freebsd.org/D49604). One would apply the author's name and email address using the --author keyword. > > Thanks, > Sumit > -- Cheers, Cy Schubert FreeBSD UNIX: Web: https://FreeBSD.org NTP: Web: https://nwtime.org e**(i*pi)+1=0 From nobody Wed Dec 3 14:43:33 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM0kY4lPVz6JW6b for ; Wed, 03 Dec 2025 14:43:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM0kY3s8Rz3PKL for ; Wed, 03 Dec 2025 14:43:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764773013; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OOm+6qXgTwLrMQFImqbKKAcXv7FfO5u3XDv1Us9Gp/g=; b=tU7s2mJaqlVScYgaR5WptZ0A6eme2HtLxNG/qxjHsQ7emRKRXgO0it8x16Ie0DRtcmHc5X VVrOSSwD1+zQxmcuyKPwz9OSjFcWHCK3836HQCHpsQGPWLz7D+SBkCuxynZoKMMkzCi7aP MwJxH6kGnFw25Rm4SwY0kKwSIPr+/XwaAOo+T9tcxP29bonZPTH0zdagi8Z+hlitL4MH1H GSe3rrSeq+grfNtFX7RsF8pbw3OO05un1+aNb22Tpi3lMf+JaRQJ6TXd201IeducOTwWNt tQlXFWd9hKU3BCtz20RIqwS2X1d4LTRmZ4a/mEjVHdGv/tUF+Wh7LVhLj8aDSg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764773013; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OOm+6qXgTwLrMQFImqbKKAcXv7FfO5u3XDv1Us9Gp/g=; b=uN7OXe4pf4YmP/+BqTeSHBrJzi1gO5x+GL4T8aB/IqvRLgyHG+SRso7w76Po3Q0iKBYC6A 4+sMWugfxwmDKmxH3YIn/Qb74pqRjD5Z9UTK9WpRM49EB6Tp4VwniCitexhK0OFkmpVAjj TIZtU5/BaofrUWPt39/EoAp+PSUbEHoZK0r9vTjJ/rjJ/4cL5OKadnsQFCdIolIdsBCiw+ zcp4IuMehPkkwKB0P+LHMu1pjt6zNLF7GLI4JLq8nAW6kk3hQZWtcXeY9wzC8NFH59sPfY cC83MjpJ5waDodjAJ7rbrx2T/BOV7vz91KXx5us8yL0PenJtm9w9mmZECJPVdQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764773013; a=rsa-sha256; cv=none; b=IOb6lWCl0kap/fJOs/+VGJuCGH3At2q74+uhAulPRfDgLd5xp13oIg6F3CUyfsoGLsPSkT hHwLouu8DjR9YnE7Gznpdb+5y+ghofUYvKV2BW2u6P77oEQ89NFlaxC7EKX+chD6sChKlv PgwKSaWB+kaPwIhxMLl/EDQU5LO5wzyhQGJquf+SbB9262DrUl1xTtBvJrR+QCykjMzQ0+ MVxgq8+xbrQ6OJYA/e+ekFj7ImjDMDXGHEEON9oLPVQE0wNMdPOZTLJXRzw03DeZUoz3Pq rwaXlNCFpF3BkIwAFMhj0i16+ohiYbDzTc1qGI+rn2rOCng/3ONhT4Esanc7rQ== 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 4dM0kY3Hd6zj4C for ; Wed, 03 Dec 2025 14:43:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2b636 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 14:43:33 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 20a0a2f8f36f - main - riscv/pmap: Handle superpages in pmap_extract_and_hold() List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 20a0a2f8f36f5db704b674106fa61d8d95b6b071 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 14:43:33 +0000 Message-Id: <69304c95.2b636.575d86af@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=20a0a2f8f36f5db704b674106fa61d8d95b6b071 commit 20a0a2f8f36f5db704b674106fa61d8d95b6b071 Author: Mark Johnston AuthorDate: 2025-12-03 13:41:30 +0000 Commit: Mark Johnston CommitDate: 2025-12-03 13:41:30 +0000 riscv/pmap: Handle superpages in pmap_extract_and_hold() Without this change, vm_fault_quick_hold_pages() falls back to the slow fault handler when it encounters a superpage mapping. Reviewed by: alc, kib Reported and tested by: br MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54022 --- sys/riscv/riscv/pmap.c | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/sys/riscv/riscv/pmap.c b/sys/riscv/riscv/pmap.c index 26efaecc64d1..0deb8b93a6dc 100644 --- a/sys/riscv/riscv/pmap.c +++ b/sys/riscv/riscv/pmap.c @@ -1134,19 +1134,29 @@ pmap_extract(pmap_t pmap, vm_offset_t va) vm_page_t pmap_extract_and_hold(pmap_t pmap, vm_offset_t va, vm_prot_t prot) { + pd_entry_t *l2p, l2; pt_entry_t *l3p, l3; vm_page_t m; m = NULL; PMAP_LOCK(pmap); - l3p = pmap_l3(pmap, va); - if (l3p != NULL && (l3 = pmap_load(l3p)) != 0) { - if ((l3 & PTE_W) != 0 || (prot & VM_PROT_WRITE) == 0) { - m = PTE_TO_VM_PAGE(l3); - if (!vm_page_wire_mapped(m)) - m = NULL; + l2p = pmap_l2(pmap, va); + if (l2p == NULL || ((l2 = pmap_load(l2p)) & PTE_V) == 0) { + ; + } else if ((l2 & PTE_RWX) != 0) { + if ((l2 & PTE_W) != 0 || (prot & VM_PROT_WRITE) == 0) { + m = PHYS_TO_VM_PAGE(L2PTE_TO_PHYS(l2) + + (va & L2_OFFSET)); + } + } else { + l3p = pmap_l2_to_l3(l2p, va); + if ((l3 = pmap_load(l3p)) != 0) { + if ((l3 & PTE_W) != 0 || (prot & VM_PROT_WRITE) == 0) + m = PTE_TO_VM_PAGE(l3); } } + if (m != NULL && !vm_page_wire_mapped(m)) + m = NULL; PMAP_UNLOCK(pmap); return (m); } From nobody Wed Dec 3 14:43:34 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM0kZ6kxSz6JW3h for ; Wed, 03 Dec 2025 14:43:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM0kZ4GpPz3PPw for ; Wed, 03 Dec 2025 14:43:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764773014; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c5RwiEkwVryWGUtASb2cCFseUt6YVWSRuV3nD4ZeonM=; b=KjXFKDXeLXRZ0RuiO6NLJRt+v2XBk/CJqgVfaC4diG34X/Pdwy0+Zzg7msfqfxor8p7DLG c8gArZC0G+tsGDrDyOo+h9iORlE7huaSBy0tJfWRH2JfDWj8dXf1mdq5AVSMsTtk6tT/QC vtTzQZiDemOl9WKXv7WRkZIg9r5VOAORUtWxNfAQW6EzdAJ4qomZa19nOmYTDq2nYs3J7t 9waMqmMfsDXfB9Allwwi4FBYBNlJV73hPIzDzmzgexV8c8YEGwScSYWypAdoTf+aHTtH5d E3hgh75qnrmfGN6Epl6EUYxnO7nje/f98zS2ry6JEc4cKxmlBd/S/bNc9vZuSA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764773014; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c5RwiEkwVryWGUtASb2cCFseUt6YVWSRuV3nD4ZeonM=; b=ZTwKuaiwmyR2WPSEtkNV+7HdCusDnfiEtF2ZpIFZrfGz2YuQyJDGbifpKZGT8FWjrsDVNy fwGz5V3fw47K7FFd0QfMmXWt8JoCKcrJS4a2NeNSsfF/kRiT14gH2+V4CFgIOFWpdRbw5c VKPHLmg7wTrPcMYfJB0rVxmWt9/0fvdxHqJeJodaRPrzTlOyfA+TvaP+ateyF1WIQAjWpS 1APYHJwhiSu8NU9UnThyLd92AwLBZYOx3pQzLwwnKJfxl2nXed9cr/p2kGZd8Nm/ghFMB7 nwt/Ohs0a/KzmBvnWIJIXfySKwX+96h0zzifDoOFfbN9q/x64YGZKEMOf6yU0g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764773014; a=rsa-sha256; cv=none; b=d6k8AnV4KqQDZUijhczzijapBN5rNffxhXfFLZjwjBH2QVUQh+pLKq09kyBjd+R2rC8D1G m05aJsSLHO8FzZWlwAJbTuuMpOZ/aO06sULBRu3xMgpm3drY6ssD5nP5aMyZuGkQMWcteT zuFj13T//XIpKDFL+d1MOdGzbqNPs3UZ0yauFVqpTAQcRagqzzAMebtnU8jpRRy7OV6RPy NHA6gmkeUHFU1wex00SC+VaD7ozcKyf37MbaIe9vokfWHa7wKrPHBBpAXtg0KoXPaKxKbR BwgW3F5LF9qsmuKAVH6rzWqkwS0g3x+CHleSfDd1eOKKDJgk2EVuhZ8pop/RXg== 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 4dM0kZ3pkbzjGD for ; Wed, 03 Dec 2025 14:43:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2abaa by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 14:43:34 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 74f7e916211a - main - divert: Use CK_SLISTs for the divcb hash table List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 74f7e916211acafd10af05efd893ccbac1881119 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 14:43:34 +0000 Message-Id: <69304c96.2abaa.24faa50f@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=74f7e916211acafd10af05efd893ccbac1881119 commit 74f7e916211acafd10af05efd893ccbac1881119 Author: Mark Johnston AuthorDate: 2025-12-03 13:43:04 +0000 Commit: Mark Johnston CommitDate: 2025-12-03 13:43:04 +0000 divert: Use CK_SLISTs for the divcb hash table The hash table is accessed in ip_divert_packet(), and there the accesses are synchronized only by the net epoch, so plain SLIST is not safe. Reviewed by: ae MFC after: 1 week Sponsored by: OPNsense Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D54011 --- sys/netinet/ip_divert.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/sys/netinet/ip_divert.c b/sys/netinet/ip_divert.c index a88497a71019..9f1d862a0531 100644 --- a/sys/netinet/ip_divert.c +++ b/sys/netinet/ip_divert.c @@ -34,6 +34,7 @@ #include "opt_sctp.h" #include +#include #include #include #include @@ -136,7 +137,7 @@ static int div_output_outbound(int family, struct socket *so, struct mbuf *m); struct divcb { union { - SLIST_ENTRY(divcb) dcb_next; + CK_SLIST_ENTRY(divcb) dcb_next; intptr_t dcb_bound; #define DCB_UNBOUND ((intptr_t)-1) }; @@ -146,7 +147,7 @@ struct divcb { struct epoch_context dcb_epochctx; }; -SLIST_HEAD(divhashhead, divcb); +CK_SLIST_HEAD(divhashhead, divcb); VNET_DEFINE_STATIC(struct divhashhead, divhash[DIVHASHSIZE]) = {}; #define V_divhash VNET(divhash) @@ -272,7 +273,7 @@ divert_packet(struct mbuf *m, bool incoming) } /* Put packet on socket queue, if any */ - SLIST_FOREACH(dcb, &V_divhash[DIVHASH(nport)], dcb_next) + CK_SLIST_FOREACH(dcb, &V_divhash[DIVHASH(nport)], dcb_next) if (dcb->dcb_port == nport) break; @@ -600,7 +601,7 @@ div_detach(struct socket *so) so->so_pcb = NULL; DIVERT_LOCK(); if (dcb->dcb_bound != DCB_UNBOUND) - SLIST_REMOVE(&V_divhash[DCBHASH(dcb)], dcb, divcb, dcb_next); + CK_SLIST_REMOVE(&V_divhash[DCBHASH(dcb)], dcb, divcb, dcb_next); V_dcb_count--; V_dcb_gencnt++; DIVERT_UNLOCK(); @@ -619,16 +620,16 @@ div_bind(struct socket *so, struct sockaddr *nam, struct thread *td) return EINVAL; port = ((struct sockaddr_in *)nam)->sin_port; DIVERT_LOCK(); - SLIST_FOREACH(dcb, &V_divhash[DIVHASH(port)], dcb_next) + CK_SLIST_FOREACH(dcb, &V_divhash[DIVHASH(port)], dcb_next) if (dcb->dcb_port == port) { DIVERT_UNLOCK(); return (EADDRINUSE); } dcb = so->so_pcb; if (dcb->dcb_bound != DCB_UNBOUND) - SLIST_REMOVE(&V_divhash[DCBHASH(dcb)], dcb, divcb, dcb_next); + CK_SLIST_REMOVE(&V_divhash[DCBHASH(dcb)], dcb, divcb, dcb_next); dcb->dcb_port = port; - SLIST_INSERT_HEAD(&V_divhash[DIVHASH(port)], dcb, dcb_next); + CK_SLIST_INSERT_HEAD(&V_divhash[DIVHASH(port)], dcb, dcb_next); DIVERT_UNLOCK(); return (0); @@ -667,7 +668,7 @@ div_pcblist(SYSCTL_HANDLER_ARGS) DIVERT_LOCK(); for (int i = 0; i < DIVHASHSIZE; i++) - SLIST_FOREACH(dcb, &V_divhash[i], dcb_next) { + CK_SLIST_FOREACH(dcb, &V_divhash[i], dcb_next) { if (dcb->dcb_gencnt <= xig.xig_gen) { struct xinpcb xi; From nobody Wed Dec 3 14:43:35 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM0kb60WBz6JVvp for ; Wed, 03 Dec 2025 14:43:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM0kb52Lkz3PFB for ; Wed, 03 Dec 2025 14:43:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764773015; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TLvKt8z40UE9cov04sTKBk4FqK74kvkQojjZIyOX7VU=; b=gY5vUnWbJECnpDIQt3AgLUcvd+wghGqkuEeqqIEsIqATuxFV7cs+IBr69zHotBbYpS3svI ZG5AIDt+KUr/42CKwmxjlbAbjK6GmyOELMvDQyNfxOSF5+vXz5Q0OjEihLLLV3M1l7MHaP MJjgk/QNQjkdRgz1USWTNbSJduOc0GCbgab2jl24r9sC4NJAJevjbiK31Buy0Ch53XavzI JtfKX3LEBNIFTOl5xJYRBuXzwxjRU9KcxqdAtm7YzM2bwm5l9b4RFoLrk9yQLGW07me8Rx nbVdUE/qQZoIJBif7hV01wrjLVquGVg54VpU6SX9XsO/1KfwsmR55WZxsayniQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764773015; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TLvKt8z40UE9cov04sTKBk4FqK74kvkQojjZIyOX7VU=; b=UaKYSSGKuCARLLDBZqveLXhe8Nqx1f9Oe74yR286aVppdslUMrtGOsHR/Nc8Y5mb+DuQt6 NbHnCZn5tFjbz3JlZJzSKTXLTiEL+uPG5yaBVe5y3bM9s4equ0bwBF7hJt8mCkOttMCZgM RA3akRzEPqhKwJCMjutBK3XjYtRbp12WSrZpjK5nWtZO+fXLLIF/HKdejNqPyV/ySHjDXF Js/TdBOU7xWce0CfuEtUwEsjWXf714e9e72choaq4TQjch5Vj/lvXUw2buJJpi+pHfZp1Y Y6klAT0pW/JvfdBqEiUUEVpavtUFa5hm7KwLaB3teCXdNTQjU9LPswDynPwyJg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764773015; a=rsa-sha256; cv=none; b=TDUK6Mb5BQR2fhOIuGRjsO6pBVo3XcnIH2n4gPlB1QuixWKGMW2FSET7CNLIaXkDYR7eOW wkjF2PXEDtfS3HlIR/xjorsTuGhynQKdcgJSBr+dTToowPcwU55c8QHHUAlawyNL/0yS7e pUBWt/Vfh7F/9ABEV7qRJfEalNCaokp3VZchn36qqibMXPEI0k4VBuGAUPZn9g7Zqr8W2x cGM6zuESXzyPDF1hPeNWN3lV0ujPEdDnAh0NBMzhOZmZs3zl4RE57/ue/u0IjFbeYt1Kgx QA2jMLuWcG4wqQfVwU3DefujDranXwyGFLDzAy2Ocvek6E8fb3fh36qUa5z3JQ== 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 4dM0kb4ZLtzhBr for ; Wed, 03 Dec 2025 14:43:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 28778 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 14:43:35 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 962ad7c1984d - main - ofed: Define SUBDIR_DEPEND_libbnxtre List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 962ad7c1984decda1f16b079cd09ca9310e7f7ce Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 14:43:35 +0000 Message-Id: <69304c97.28778.2e7e7ee8@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=962ad7c1984decda1f16b079cd09ca9310e7f7ce commit 962ad7c1984decda1f16b079cd09ca9310e7f7ce Author: Mark Johnston AuthorDate: 2025-12-03 14:21:07 +0000 Commit: Mark Johnston CommitDate: 2025-12-03 14:21:07 +0000 ofed: Define SUBDIR_DEPEND_libbnxtre Fixes: b42fda6be3fd ("share/mk: Include libbnxtre entry in bsd.libnames.mk") --- lib/ofed/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/ofed/Makefile b/lib/ofed/Makefile index 5421e2e43cd1..a3265813f7d2 100644 --- a/lib/ofed/Makefile +++ b/lib/ofed/Makefile @@ -19,6 +19,7 @@ SUBDIR_DEPEND_libibcm= libibverbs SUBDIR_DEPEND_librdmacm= libibverbs SUBDIR_DEPEND_libibmad= libibumad SUBDIR_DEPEND_libvendor= libibumad +SUBDIR_DEPEND_libbnxtre= libibverbs SUBDIR_DEPEND_libcxgb4= libibverbs SUBDIR_DEPEND_libmlx4= libibverbs SUBDIR_DEPEND_libmlx5= libibverbs From nobody Wed Dec 3 14:43:36 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM0kd1G1Cz6JW6g for ; Wed, 03 Dec 2025 14:43:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM0kc5cstz3PVj for ; Wed, 03 Dec 2025 14:43:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764773016; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=paS6yOKy6EZv+WAlCJ/0iAc6prqiKKgTanlzQYYL5uM=; b=dWCTKXyCxwnBcTyQ3uTjvLH+dmBXmM2mKu/elo/3TfvZBdDqyNLUBp4lKY9lzuQGWnr5qs Gn86S9utk0CChexEQIOwVplLfbG5/Cu/J7xSpdddFkB2aMHXw/pGgrudZA6lS+A/su7eIs BcPcd0OrjOG3UgHDdDUHPVHu3gPFqKon5CCJblFowAhyXRsGNmyOu/wsxRO6jADl/ly8Cr 75nJH0VFhpeS6nvmgYxB3uBk9I+P3Ii/z5a/LwfV5NJj7UDVQJKP+DwWACUZGz85vPMJbX cqxS6YrV6VW/yYFcEnNPrZk+0ri+KUuzei91sRZ8mJOQ2zQ9ESeIix0AFrQFDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764773016; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=paS6yOKy6EZv+WAlCJ/0iAc6prqiKKgTanlzQYYL5uM=; b=QpsapVGqEBT5zscV72u6CHocduMo6/rG9ErmtESeYHcT1SKS4bhFCPUVGmxw873AwtDAEo YhQushy+8pT8UZKQ/H7VA1eMyv/8xYv8CUuGYGy2uStJRCw6FjgKX6q0SKXLw95eFiKF3N qWWAp8FNpgXFaSw4z8vN5LgVlVYQgKkDdlecFirTSEbf7TQVZwvx/iU35vRuZAlhKQxaSw 8L8jOBiSJMX2LS0e+qM77QMyrE2Zv+VLCgCwoUsmR1MfF3nsPJIqMRnyDh+GI+g+ikRXOL ok1qjo12KLpVdzXtI9a0ZAWIev/p5xpyJzkoU/NYvLUsAZZZFcOEmRdZ4/dFtw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764773016; a=rsa-sha256; cv=none; b=NdqIKNdQlrvL0AjViwK/IcBGm5aAPaFRmglGLSI/Z9ttaEPBH0rMAsm/upTF8YdWROaHLE 4ORd59V3g9EZOQsLlrwifEkHEMogzI0XXL3GM5KA7LyCr2gVT8t7IODzNEgVLasN2XhZh+ GZPfmom0OKnH8R9rZKusi5M2JEVJKB0kJxWYNSmg0AcwTMM7Wguy3q0IfAKrcaclR35lxT /3rB75/ixAngJ/uLoE6O/dDmv41JF3u89QNgT36y6r57CxPbXM7pdITWP9Pm2X82c2tEtS X2XrNTtV5fZB4Wrlk334bp5VVPhQnlVG+Yu9Rbrk3lhVapYq4gDqKdi5xgOXYA== 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 4dM0kc51HvzjSR for ; Wed, 03 Dec 2025 14:43:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2877d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 14:43:36 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 73e8fe62466a - main - libpcap: Fix dependency definitions for libpcap List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 73e8fe62466a8ae5576473d9be4c6df9a6eedab0 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 14:43:36 +0000 Message-Id: <69304c98.2877d.39b4a14e@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=73e8fe62466a8ae5576473d9be4c6df9a6eedab0 commit 73e8fe62466a8ae5576473d9be4c6df9a6eedab0 Author: Mark Johnston AuthorDate: 2025-12-03 14:26:50 +0000 Commit: Mark Johnston CommitDate: 2025-12-03 14:33:53 +0000 libpcap: Fix dependency definitions for libpcap Commit 35dd53a9e132 ("librdmacm/libibverbs: Statically bound libbnxtre.so.1 to rping") causes a build failure, since src.libnames.mk declares a depencency on libbnxtre.so, but the libpcap Makefile and prebuild lib dependencies were not updated accordingly. Fix the declarations. Fixes: 35dd53a9e132 ("librdmacm/libibverbs: Statically bound libbnxtre.so.1 to rping") Reviewed by: ssaxena Differential Revision: https://reviews.freebsd.org/D54048 --- Makefile.inc1 | 2 ++ lib/libpcap/Makefile | 1 + 2 files changed, 3 insertions(+) diff --git a/Makefile.inc1 b/Makefile.inc1 index 1d617601ece2..0f1e66a89da8 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -3358,10 +3358,12 @@ _prebuild_libs+= \ lib/ofed/libibmad \ lib/ofed/libibumad \ lib/ofed/complib \ + lib/ofed/libbnxtre \ lib/ofed/libmlx5 lib/ofed/libibmad__L: lib/ofed/libibumad__L lib/ofed/complib__L: lib/libthr__L +lib/ofed/libbnxt__L: lib/ofed/libibverbs__L lib/libthr__L lib/ofed/libmlx5__L: lib/ofed/libibverbs__L lib/libthr__L .endif diff --git a/lib/libpcap/Makefile b/lib/libpcap/Makefile index c4bd175b502a..7f8d8e65d79c 100644 --- a/lib/libpcap/Makefile +++ b/lib/libpcap/Makefile @@ -151,6 +151,7 @@ CFLAGS+= -DPCAP_SUPPORT_NETMAP .if ${MK_OFED} != "no" SRCS+= pcap-rdmasniff.c LIBADD+= ibverbs +LIBADD+= bnxtre LIBADD+= mlx5 CFLAGS+= -DPCAP_SUPPORT_RDMASNIFF .endif From nobody Wed Dec 3 14:45:46 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM0nc43mNz6JW7F for ; Wed, 03 Dec 2025 14:46:12 +0000 (UTC) (envelope-from sumit.saxena@broadcom.com) Received: from mail-pl1-x664.google.com (mail-pl1-x664.google.com [IPv6:2607:f8b0:4864:20::664]) (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 4dM0nc2Ytjz3Qlf for ; Wed, 03 Dec 2025 14:46:12 +0000 (UTC) (envelope-from sumit.saxena@broadcom.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-pl1-x664.google.com with SMTP id d9443c01a7336-29555b384acso75978205ad.1 for ; Wed, 03 Dec 2025 06:46:12 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764773169; x=1765377969; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=q3y94izrCD+2o5IiKDl33Ocj4VyI2W7dlo1ZNEQSRKA=; b=rFyFVbbiqMgGXYTSIpHEwIUq1jyWfU9hot0WmCpNz+jN3LtLyplOBJeB3y+LyshIQD K7XBHRtnxk6EfLTOxa8LoJILNVYzjLvH3xwNZ/nUmBE6bKxhJCwHl7S+Kyf5u2rRU/Nh Af9TjGnEocoxXCrp2eL5otEFdiJroWcvV9uHW3p1XuiBa4yvZBl7L1Z8BT5hcB1hUjMQ 3PaPPc+IVlwtshQb7Ij9sppJISqlFwtsdWGdGVJYo1oGQUv4OJ1Z8Iew/zYLRC8D3wUF g+0L31EdyyZueGrfMiablfn9BdDWyiJ+/2/82pwLz752NHp6zDpx2vuzH9+rcf2+Kkze qiuw== X-Forwarded-Encrypted: i=1; AJvYcCUof4ispph8GL7O8FEqE1bKfxV+/VXINrSYX136OCVCp+2fUKEV5CMucykaOhrwGcLtnDCAsj3HiRD4Z5k95pR3NJty@freebsd.org X-Gm-Message-State: AOJu0YwW9VLd8J/AFCG3rtysQIW05aiyu1ipdT2zAcNHryxw1x97tvnb HR+9orDsKfj2o1DrXQULFuXbzGdAZsthjdDWr/kBk3muwR9ScLaz9DWV1/V7ZN2B/kCv5OeOua2 9suQ2MaFaxOGhBYdEGESV/7Pssd+60Hjv4USsKXLg0a+Quy230Zlo813XcgZfmunvhEN1dMsbLY Hj87UD9MEyS7z9Yal+2KSn3o8do07mBtACRKkm67ER4R0nHoRLnhbBgfz3MCHWNSp9RnElrdkSm UB5/EsSeQffsvqDW5PCWvI= X-Gm-Gg: ASbGncvnP6Apnn+JRN7290NkPSzBOSZUqqlc9ziaW7FceJScgVlCM8ayVGBDM7UvsOZ 89i5qEIGv0ARIQF6heOQ2mW/pnVwxzXwzVx1sSk30sSsgs/VCXTbEm3QMLQerxAm85MoeRILhaL XaBeP34nkcBdnSRGIB68LgB7Dq5JR920Fbrps9wLgSbj7tKPC9vmuL2W05I1cU+t75w6h37tx7e LaqCZZpsY7HIfQ5l5jD3jHCoUHOTh2nkt6c3DKIvc7Q+SWBRwzgpPv+yoedZiXLgxFzFlRgiNnu 1vDwqNHPjGDGc9aqY4yL8Mo+U2hZYTG6pe6EPw7Eli4QiGoYVu+iFWPFgs8Ami4Ab+r9BkeYjJv tG9ipAghm1jcQOM1sEow+JFQKQc++PoNL4/IVdwct0E3iDqA6e9LECsjNGw/hVcRpg4+0KD3skt de0qJ/hZ05Dcjv4AnUWmWXFAObPu23ChsAslGI1QBL/pRbG4g= X-Google-Smtp-Source: AGHT+IGYnKQKg7R72xIm8Ltprqn7ZKJsLfWLyvltW9ksqPY56U9H+bH4k4ldyBdc6Ap9xzB4k4H7qjBO1Gxu X-Received: by 2002:a17:903:40cb:b0:295:68dd:4ebf with SMTP id d9443c01a7336-29d682f3e5emr30434065ad.16.1764773169029; Wed, 03 Dec 2025 06:46:09 -0800 (PST) Received: from smtp-us-east1-p01-i01-si01.dlp.protect.broadcom.com (address-144-49-247-103.dlp.protect.broadcom.com. [144.49.247.103]) by smtp-relay.gmail.com with ESMTPS id d9443c01a7336-29bce449dfcsm24711225ad.19.2025.12.03.06.46.08 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 03 Dec 2025 06:46:09 -0800 (PST) X-Relaying-Domain: broadcom.com X-CFilter-Loop: Reflected Received: by mail-lj1-f199.google.com with SMTP id 38308e7fff4ca-37a46c5d929so48805341fa.0 for ; Wed, 03 Dec 2025 06:46:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1764773167; x=1765377967; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=q3y94izrCD+2o5IiKDl33Ocj4VyI2W7dlo1ZNEQSRKA=; b=XbPLK3xfV7vPdub01F006ELj3YUvj5GrQxf9ZsKawPye1ZyTKwDBO37gyrK0NRvwn+ Mck5YuOfLtbwatAsSNPr1WJ0R1VciU8MXM6v2JUxQuMu0hQbWaXF6CIes6Mb3m0HsaPL kI4FTuwOPGAaCA/M7oO1++lBUxI95L9XKeYTA= X-Forwarded-Encrypted: i=1; AJvYcCVAtZr2PQ8dfUbVd38e8DSMQmpPXe4lznS//c8lIZ6cwxnwytjTqJV5KigllqdwcZbZcJ/GJSIMfcgYhM+/dm64JBec@freebsd.org X-Received: by 2002:a05:6512:3f14:b0:594:253c:209a with SMTP id 2adb3069b0e04-597d3f5e0d6mr1042406e87.14.1764773166856; Wed, 03 Dec 2025 06:46:06 -0800 (PST) X-Received: by 2002:a05:6512:3f14:b0:594:253c:209a with SMTP id 2adb3069b0e04-597d3f5e0d6mr1042395e87.14.1764773166427; Wed, 03 Dec 2025 06:46:06 -0800 (PST) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 References: <69302037.3d155.40084cd7@gitrepo.freebsd.org> <20251203140554.150B71E8@slippy.cwsent.com> <20251203144226.89CC91E9@slippy.cwsent.com> In-Reply-To: <20251203144226.89CC91E9@slippy.cwsent.com> From: Sumit Saxena Date: Wed, 3 Dec 2025 20:15:46 +0530 X-Gm-Features: AWmQ_bneJfLkhZnRfSDqvustUn5TyVXZPOlkNtf03lCeyZWt-WfQ6y4kaGPDdgQ Message-ID: Subject: Re: git: 35dd53a9e132 - main - librdmacm/libibverbs: Statically bound libbnxtre.so.1 to rping To: Cy Schubert Cc: Sumit Saxena , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org X-DetectorID-Processed: b00c1d49-9d2e-4205-b15f-d015386d3d5e Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="000000000000bfa31a06450d4539" X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Rspamd-Queue-Id: 4dM0nc2Ytjz3Qlf --000000000000bfa31a06450d4539 Content-Type: multipart/alternative; boundary="000000000000b1c69706450d4567" --000000000000b1c69706450d4567 Content-Type: text/plain; charset="UTF-8" > One would apply the author's name and email address using the --author > keyword. true, my bad. I missed it. --000000000000b1c69706450d4567 Content-Type: text/html; charset="UTF-8"


> One would apply the author's name and email address using the --author
> keyword.
true, my bad. I missed it.
--000000000000b1c69706450d4567-- --000000000000bfa31a06450d4539 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIIVWQYJKoZIhvcNAQcCoIIVSjCCFUYCAQExDzANBglghkgBZQMEAgEFADALBgkqhkiG9w0BBwGg ghLGMIIGqDCCBJCgAwIBAgIQfofDCS7XZu8vIeKo0KeY9DANBgkqhkiG9w0BAQwFADBMMSAwHgYD VQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSNjETMBEGA1UEChMKR2xvYmFsU2lnbjETMBEGA1UE AxMKR2xvYmFsU2lnbjAeFw0yMzA0MTkwMzUzNTNaFw0yOTA0MTkwMDAwMDBaMFIxCzAJBgNVBAYT AkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMSgwJgYDVQQDEx9HbG9iYWxTaWduIEdDQyBS NiBTTUlNRSBDQSAyMDIzMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAwjAEbSkPcSyn 26Zn9VtoE/xBvzYmNW29bW1pJZ7jrzKwPJm/GakCvy0IIgObMsx9bpFaq30X1kEJZnLUzuE1/hlc hatYqyORVBeHlv5V0QRSXY4faR0dCkIhXhoGknZ2O0bUJithcN1IsEADNizZ1AJIaWsWbQ4tYEYj ytEdvfkxz1WtX3SjtecZR+9wLJLt6HNa4sC//QKdjyfr/NhDCzYrdIzAssoXFnp4t+HcMyQTrj0r pD8KkPj96sy9axzegLbzte7wgTHbWBeJGp0sKg7BAu+G0Rk6teO1yPd75arbCvfY/NaRRQHk6tmG 71gpLdB1ZhP9IcNYyeTKXIgfMh2tVK9DnXGaksYCyi6WisJa1Oa+poUroX2ESXO6o03lVxiA1xyf G8lUzpUNZonGVrUjhG5+MdY16/6b0uKejZCLbgu6HLPvIyqdTb9XqF4XWWKu+OMDs/rWyQ64v3mv Sa0te5Q5tchm4m9K0Pe9LlIKBk/gsgfaOHJDp4hYx4wocDr8DeCZe5d5wCFkxoGc1ckM8ZoMgpUc 4pgkQE5ShxYMmKbPvNRPa5YFzbFtcFn5RMr1Mju8gt8J0c+dxYco2hi7dEW391KKxGhv7MJBcc+0 x3FFTnmhU+5t6+CnkKMlrmzyaoeVryRTvOiH4FnTNHtVKUYDsCM0CLDdMNgoxgkCAwEAAaOCAX4w ggF6MA4GA1UdDwEB/wQEAwIBhjBMBgNVHSUERTBDBggrBgEFBQcDAgYIKwYBBQUHAwQGCisGAQQB gjcUAgIGCisGAQQBgjcKAwwGCisGAQQBgjcKAwQGCSsGAQQBgjcVBjASBgNVHRMBAf8ECDAGAQH/ AgEAMB0GA1UdDgQWBBQAKTaeXHq6D68tUC3boCOFGLCgkjAfBgNVHSMEGDAWgBSubAWjkxPioufi 1xzWx/B/yGdToDB7BggrBgEFBQcBAQRvMG0wLgYIKwYBBQUHMAGGImh0dHA6Ly9vY3NwMi5nbG9i YWxzaWduLmNvbS9yb290cjYwOwYIKwYBBQUHMAKGL2h0dHA6Ly9zZWN1cmUuZ2xvYmFsc2lnbi5j b20vY2FjZXJ0L3Jvb3QtcjYuY3J0MDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9jcmwuZ2xvYmFs c2lnbi5jb20vcm9vdC1yNi5jcmwwEQYDVR0gBAowCDAGBgRVHSAAMA0GCSqGSIb3DQEBDAUAA4IC AQCRkUdr1aIDRmkNI5jx5ggapGUThq0KcM2dzpMu314mJne8yKVXwzfKBtqbBjbUNMODnBkhvZcn bHUStur2/nt1tP3ee8KyNhYxzv4DkI0NbV93JChXipfsan7YjdfEk5vI2Fq+wpbGALyyWBgfy79Y IgbYWATB158tvEh5UO8kpGpjY95xv+070X3FYuGyeZyIvao26mN872FuxRxYhNLwGHIy38N9ASa1 Q3BTNKSrHrZngadofHglG5W3TMFR11JOEOAUHhUgpbVVvgCYgGA6dSX0y5z7k3rXVyjFOs7KBSXr dJPKadpl4vqYphH7+P40nzBRcxJHrv5FeXlTrb+drjyXNjZSCmzfkOuCqPspBuJ7vab0/9oeNERg nz6SLCjLKcDXbMbKcRXgNhFBlzN4OUBqieSBXk80w2Nzx12KvNj758WavxOsXIbX0Zxwo1h3uw75 AI2v8qwFWXNclO8qW2VXoq6kihWpeiuvDmFfSAwRLxwwIjgUuzG9SaQ+pOomuaC7QTKWMI0hL0b4 mEPq9GsPPQq1UmwkcYFJ/Z4I93DZuKcXmKMmuANTS6wxwIEw8Q5MQ6y9fbJxGEOgOgYL4QIqNULb 5CYPnt2LeiIiEnh8Uuh8tawqSjnR0h7Bv5q4mgo3L1Z9QQuexUntWD96t4o0q1jXWLyrpgP7Zcnu CzCCBYMwggNroAMCAQICDkXmuwODM8OFZUjm/0VRMA0GCSqGSIb3DQEBDAUAMEwxIDAeBgNVBAsT F0dsb2JhbFNpZ24gUm9vdCBDQSAtIFI2MRMwEQYDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQDEwpH bG9iYWxTaWduMB4XDTE0MTIxMDAwMDAwMFoXDTM0MTIxMDAwMDAwMFowTDEgMB4GA1UECxMXR2xv YmFsU2lnbiBSb290IENBIC0gUjYxEzARBgNVBAoTCkdsb2JhbFNpZ24xEzARBgNVBAMTCkdsb2Jh bFNpZ24wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCVB+hzymb57BTKezz3DQjxtEUL LIK0SMbrWzyug7hBkjMUpG9/6SrMxrCIa8W2idHGsv8UzlEUIexK3RtaxtaH7k06FQbtZGYLkoDK RN5zlE7zp4l/T3hjCMgSUG1CZi9NuXkoTVIaihqAtxmBDn7EirxkTCEcQ2jXPTyKxbJm1ZCatzEG xb7ibTIGph75ueuqo7i/voJjUNDwGInf5A959eqiHyrScC5757yTu21T4kh8jBAHOP9msndhfuDq jDyqtKT285VKEgdt/Yyyic/QoGF3yFh0sNQjOvddOsqi250J3l1ELZDxgc1Xkvp+vFAEYzTfa5MY vms2sjnkrCQ2t/DvthwTV5O23rL44oW3c6K4NapF8uCdNqFvVIrxclZuLojFUUJEFZTuo8U4lptO TloLR/MGNkl3MLxxN+Wm7CEIdfzmYRY/d9XZkZeECmzUAk10wBTt/Tn7g/JeFKEEsAvp/u6P4W4L sgizYWYJarEGOmWWWcDwNf3J2iiNGhGHcIEKqJp1HZ46hgUAntuA1iX53AWeJ1lMdjlb6vmlodiD D9H/3zAR+YXPM0j1ym1kFCx6WE/TSwhJxZVkGmMOeT31s4zKWK2cQkV5bg6HGVxUsWW2v4yb3BPp DW+4LtxnbsmLEbWEFIoAGXCDeZGXkdQaJ783HjIH2BRjPChMrwIDAQABo2MwYTAOBgNVHQ8BAf8E BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUrmwFo5MT4qLn4tcc1sfwf8hnU6AwHwYD VR0jBBgwFoAUrmwFo5MT4qLn4tcc1sfwf8hnU6AwDQYJKoZIhvcNAQEMBQADggIBAIMl7ejR/ZVS zZ7ABKCRaeZc0ITe3K2iT+hHeNZlmKlbqDyHfAKK0W63FnPmX8BUmNV0vsHN4hGRrSMYPd3hckSW tJVewHuOmXgWQxNWV7Oiszu1d9xAcqyj65s1PrEIIaHnxEM3eTK+teecLEy8QymZjjDTrCHg4x36 2AczdlQAIiq5TSAucGja5VP8g1zTnfL/RAxEZvLS471GABptArolXY2hMVHdVEYcTduZlu8aHARc phXveOB5/l3bPqpMVf2aFalv4ab733Aw6cPuQkbtwpMFifp9Y3s/0HGBfADomK4OeDTDJfuvCp8g a907E48SjOJBGkh6c6B3ace2XH+CyB7+WBsoK6hsrV5twAXSe7frgP4lN/4Cm2isQl3D7vXM3PBQ ddI2aZzmewTfbgZptt4KCUhZh+t7FGB6ZKppQ++Rx0zsGN1s71MtjJnhXvJyPs9UyL1n7KQPTEX/ 07kwIwdMjxC/hpbZmVq0mVccpMy7FYlTuiwFD+TEnhmxGDTVTJ267fcfrySVBHioA7vugeXaX3yL SqGQdCWnsz5LyCxWvcfI7zjiXJLwefechLp0LWEBIH5+0fJPB1lfiy1DUutGDJTh9WZHeXfVVFsf rSQ3y0VaTqBESMjYsJnFFYQJ9tZJScBluOYacW6gqPGC6EU+bNYC1wpngwVayaQQMIIGjzCCBHeg AwIBAgIMdI2Nfq/Vk8dzZMUnMA0GCSqGSIb3DQEBCwUAMFIxCzAJBgNVBAYTAkJFMRkwFwYDVQQK ExBHbG9iYWxTaWduIG52LXNhMSgwJgYDVQQDEx9HbG9iYWxTaWduIEdDQyBSNiBTTUlNRSBDQSAy MDIzMB4XDTI1MDYyMDEwNTUwNVoXDTI3MDYyMTEwNTUwNVowgdcxCzAJBgNVBAYTAlVTMRMwEQYD VQQIEwpDYWxpZm9ybmlhMREwDwYDVQQHEwhTYW4gSm9zZTEZMBcGA1UEYRMQTlRSVVMrREUtNjYx MDExNzEPMA0GA1UEBBMGU2F4ZW5hMQ4wDAYDVQQqEwVTdW1pdDEWMBQGA1UEChMNQlJPQURDT00g SU5DLjEiMCAGA1UEAwwZc3VtaXQuc2F4ZW5hQGJyb2FkY29tLmNvbTEoMCYGCSqGSIb3DQEJARYZ c3VtaXQuc2F4ZW5hQGJyb2FkY29tLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB ANWfdRsD0NsQr9oaNovE6N6ldgUGyJipSPE9u2SuA5SLtk4//f6PIFdR6h5fMMUsw7H4eBqY88Do ifscJ8gSasrjdgcsGC9lCyPXLwfNEU5C3Mbnua8OK6sTBpf6mvY88HW/6AoKiSpfo5jxCZQOm4Zz oJWD5ea7ThJ2XdDk1rRtGUkwFgN9GRNfOoiIwkkA7EdEfV0eQkVqNgkqUyBSABXcduul2sd4/JQO SsVmTdSKid7L6yZsqk5b3Xj+GMJwPdRfeKP2SRoys0SVnajc9Di+9Jy7uGKxxtb562egZauDFX/0 o0UgYfZrbwWfzJDYMLKzlrOD0M8yGkD8BnyIiVECAwEAAaOCAd0wggHZMA4GA1UdDwEB/wQEAwIF oDAMBgNVHRMBAf8EAjAAMIGTBggrBgEFBQcBAQSBhjCBgzBGBggrBgEFBQcwAoY6aHR0cDovL3Nl Y3VyZS5nbG9iYWxzaWduLmNvbS9jYWNlcnQvZ3NnY2NyNnNtaW1lY2EyMDIzLmNydDA5BggrBgEF BQcwAYYtaHR0cDovL29jc3AuZ2xvYmFsc2lnbi5jb20vZ3NnY2NyNnNtaW1lY2EyMDIzMGUGA1Ud IAReMFwwCQYHZ4EMAQUDAzALBgkrBgEEAaAyASgwQgYKKwYBBAGgMgoDAjA0MDIGCCsGAQUFBwIB FiZodHRwczovL3d3dy5nbG9iYWxzaWduLmNvbS9yZXBvc2l0b3J5LzBBBgNVHR8EOjA4MDagNKAy hjBodHRwOi8vY3JsLmdsb2JhbHNpZ24uY29tL2dzZ2NjcjZzbWltZWNhMjAyMy5jcmwwJAYDVR0R BB0wG4EZc3VtaXQuc2F4ZW5hQGJyb2FkY29tLmNvbTATBgNVHSUEDDAKBggrBgEFBQcDBDAfBgNV HSMEGDAWgBQAKTaeXHq6D68tUC3boCOFGLCgkjAdBgNVHQ4EFgQURSmmYGaiq6dg3CEvXQGHEXJF 8xwwDQYJKoZIhvcNAQELBQADggIBAAl0pcCjujKdwmgtiGl2naEY5wB4G601Kuu3032tR7wmgZLg k+lg9fhAA0boPsi1FE1Pwb93YDBGr/naS/oQ9JglSMeEVzeRvCqjFS4FpouBAFHB77c8w3ZwJ3+t FSRJW9SbW0DADBn5t8GAjv2aSm5vDorqFe9MKOYEe50yYDQEUAsEt5QkrLTcEx9ntvVb25MxI8vM bdfqna+/TyCmFmnGAz58jiw5DxLn++6wMmAk0SeUEuMrAlRIyhte6BBSBQ5cL1P+DWSqQbm/pwCq NhySSLNtTi2dKJvvg6Ax9au913KiJj6uZfPlh6/0kaVKM5GhIABUcm3c6g2qD7ITJxB/p1kjYKLa hVrtrjK7000lHKTPFr6MWB4Ggx7yKQ9yIlPMKKF/Lj8FabYCqeM5ovG7kaK8FYXug5vjNjN0nedR X3P8o+8aL6WFIAAAKm2DqZh3252Gcken8v5c+f0SXWSJFvemfFNgrJiQFnFVrOE5v7qwvM/KvVCA dYm4Ph9QYI0sm+Xitx8MkdOJtq5mcPWowGi8UiCgkOidv4ki1SA0wptfquUhbfS9b2M3XUHCEIUX 4ECvIjR3f+E0NbBIfPccWfYUaDLvo2qhLYS3KQbhKdXcJ83ha17mbVNZbDDo9upNcLO/oPyDbCNF J6UpXZmis1wnCynhK4kQfwFhW7H+MYICVzCCAlMCAQEwYjBSMQswCQYDVQQGEwJCRTEZMBcGA1UE ChMQR2xvYmFsU2lnbiBudi1zYTEoMCYGA1UEAxMfR2xvYmFsU2lnbiBHQ0MgUjYgU01JTUUgQ0Eg MjAyMwIMdI2Nfq/Vk8dzZMUnMA0GCWCGSAFlAwQCAQUAoIHHMC8GCSqGSIb3DQEJBDEiBCB9uQbZ S9WTxxkBXFdReYhjZOVT1uTiChXVQhuMDL8eMDAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwG CSqGSIb3DQEJBTEPFw0yNTEyMDMxNDQ2MDdaMFwGCSqGSIb3DQEJDzFPME0wCwYJYIZIAWUDBAEq MAsGCWCGSAFlAwQBFjALBglghkgBZQMEAQIwCgYIKoZIhvcNAwcwCwYJKoZIhvcNAQEHMAsGCWCG SAFlAwQCATANBgkqhkiG9w0BAQEFAASCAQCffcCfzPFbI2lr2y1YaFAwtUna9ZuHIdFJK0MEQ7xc uy4Y7Kf4YQjOJJ569tyxYAXjZDP+csMAp9iEQBvkwrVbhhghgHsYKSKcBKJlAnzJmnTE0GFlKp4B XQ5xSwjDIp+dMIWCJ+qcMz6R6Z9kCsgPvS4f62eyfdcdfDzy59YCuXjBgqhhSpCAWiNkSernPwMw ytAxygSKRKGD5DItHD+S69exQRngjyjvGI1DVRbS46Tl5pzaUPheTmqlx8Wnej9cb8uV3CdhlN+2 4nitWnvQZ+EU9fgh+65n3MH7bQepZk4VIDIyiW7iUjBXX02WcoxjnTU4E0bEz2G7kpYprYhc --000000000000bfa31a06450d4539-- From nobody Wed Dec 3 14:58:51 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM14C6T3nz6JXQX for ; Wed, 03 Dec 2025 14:58:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM14C4ttPz3SGg for ; Wed, 03 Dec 2025 14:58:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764773931; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=N8vqbvOmxOZnjNTJT3ZNpDZqoetAilc96gdvIvZ5EWg=; b=RIUmd4YoufLfANm6Ag7F+BUsPmytZlchLgtW8Dy1QXkNkLK61/PaKFDN5Gi9SY9WwL/otq U7WppdAtHDo3CIl4bnD8kP67XB0mcSFxAdiq27fbQkm78jTvwB9HSnKVesDwAX4B5n1xR7 s2/QY3OCUMjFWXoiP8YUNh/wlviHg9rD0w246qdz2NHAdDFiu8gvSh34sFqtokAD5MEtqA /ivl2NqHXTpiwhgW/9UvuUjGdOG+FmMgAUxmj4/FgXyj9OIAL3WqAm//suwexVvIwpRScf qkuqUf145dv1sLpARRxS3nvHnhib+ZLuu8JRjZ0EeWNrHO/eUduJdiog85Sypg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764773931; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=N8vqbvOmxOZnjNTJT3ZNpDZqoetAilc96gdvIvZ5EWg=; b=VvNppLpFWvLHF5rkn8U3W02LpOBB5mjV4CeT7uKYB8oWfOzNEUmADWTQYw7EZrQTe+/ysL U6G+b3i2BTrAYeGeTAvsSS1RN1mVBMc7IDuAlSrSKU7rgMOtPpo/njTKao3YlJzm45YHTU KQWi0oFMSO2IU/zG3C+0ogZHNS4DO9gZkChF4ylaxIbfVSmT58qj7jYH26Gth/dxKaA2Hx WuNHzWgy/kypI2d2K70I55wHDMd4xAICLvHHZgb9bf/2G9Eju6PERGdiyF5YiiQSehPrcZ b1Z+X/LJh5fFG1X6yF1Q1Hbxxn51D+3LyvEsYCNNnRcGIMT3Oj8kybMzwWsBbQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764773931; a=rsa-sha256; cv=none; b=uMH+WTV9ZBKaU/btcODQcrp2aDJusswqd7koMSCYdwjTINWMefmnmFuP8arkfubY0uryJO n4J/Pyv5LXZxp8HNq3+TkBWpMu/yXpAcHxByL896PzH26bPDCInEWa5sL/+VHawRXBXHng ZLJ20T4PzOORFP/vKbUzHfYr8bIv8dBRynC4YPmF5s4DVenqnCYRbVQP24CeryWchIoq/W 2WE+ICV00FVca/3++sU5+6oRlWP1c7Dxl+33/QPQiWCUs8CQfOmGhILPeBHLD2RapSIjh7 X3sNNSAqkAs+wGsxWS62NlrMNSVd7klsXJyklI/ESyjdBkhhIoAkFq3uC1mD6A== 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 4dM14C48q8zjVG for ; Wed, 03 Dec 2025 14:58:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2adb0 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 14:58:51 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Timothy Pearson Subject: git: 812bcb7cabbb - main - mailmap: add my Raptor Engineering address List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tpearson X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 812bcb7cabbb245b2d4496ad55bdfa70f9c587db Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 14:58:51 +0000 Message-Id: <6930502b.2adb0.7fc4a35d@gitrepo.freebsd.org> The branch main has been updated by tpearson: URL: https://cgit.FreeBSD.org/src/commit/?id=812bcb7cabbb245b2d4496ad55bdfa70f9c587db commit 812bcb7cabbb245b2d4496ad55bdfa70f9c587db Author: Timothy Pearson AuthorDate: 2025-12-02 23:32:53 +0000 Commit: Timothy Pearson CommitDate: 2025-12-03 14:58:33 +0000 mailmap: add my Raptor Engineering address Approved by: jhibbits(mentor) --- .mailmap | 1 + 1 file changed, 1 insertion(+) diff --git a/.mailmap b/.mailmap index 10141fcf7b6c..c0fc3b05311b 100644 --- a/.mailmap +++ b/.mailmap @@ -22,3 +22,4 @@ Ganael LAPLANCHE Joyu Liao Joyu Liao + From nobody Wed Dec 3 14:58:50 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM14H59h0z6JXL8 for ; Wed, 03 Dec 2025 14:58:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM14H487vz3SHk for ; Wed, 03 Dec 2025 14:58:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764773935; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kd2Fa3owU3yG4HmSmBbJCLVxp8N+i0uqy4Mt9H1N/8U=; b=OYkTM8VCg7Vyvy6fz/LdGX+WlgpwjB3iKBDwGYe+5U0AqZsdbfUdDvgjngorLAKTzXvhsT P/4zIOwPuV8Uov4QsTnxx/YasqvG0udisi0PT/Qko1xm6EnPEPr4b3B4G9v0kkYuipl8Io XJY+NZKEBY/twDUjzeqQwB7MubCzEYJRI4XzlD/sE5Pwtl+/cxkBTCcDxoAitpoFURUr5Z g0hUjBrM0iz8Np5dIWyuAm219MfPkA7R35sXZob3qRfAjVV1dVgqtlTpv8t9Bj88qIPiT/ 6DMsP+G+NAqTnSVvgsrNch8DWklt+iRTkBbl+9d5jbQmLK7uvJpM6b/4LX9Q9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764773935; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kd2Fa3owU3yG4HmSmBbJCLVxp8N+i0uqy4Mt9H1N/8U=; b=Us4jnrsKEl6JIptKQ/boHN1bm2CSzrXGDfyByUd5qyTzbe672Dz+pMJG65RCkJ0no60Cj6 NzfHxagAvfPuX88115vhwfCFfNTtXGWoPybfLweB5VHQ7wez7HafOXC+8RHP4arTi1HvZi zcL+T8d94GsCchkrB7pVz/Q8RbnQ0k8Zhflmu+HSyvuDDvJGYoVIwneZbFP1TivG4Df3Mm BuOvGL3pcFihG4Wr/VdncTA7YIWqrT8huqdjcunqglHr0d2OJ1Bov6h7JSdqvIfXXZTJed h1KyzaHeoRFjij8Ic1cl6Bs8h3hOZLC5D8cAay2xT9PRpy2mG/7i7t5SxubEBw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764773935; a=rsa-sha256; cv=none; b=lCbFX2T5Ht1f5aUH8E1IoHLxBAnyEj17/2PyamJ4+DreRGzpD9NabQG32FV7qAL1EPHffb KQclae3ogaSNGmhGay+bPgPa23DDx5JPNP9Q2nBNrULeeveP1SpW6YaHmhUCUkLST0cwFz cMTrMVkG1oXFns8zop39YyLAIV6WEQN8MkJfzWUUNaEBDSHjZDtW7GYAfPRaftsHoxvl5F zzC6iL2fKeaPEwzfrIW7jA7dJlKRuqZTVmw0AUf1sSQmh44iNdwBZUayDuRDQTci75KrIi OOa97sd6oK9jOOY++RTDMTZyo1bHV1SPkIguYDKROEfurO36wENTKG5cd1njpg== 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 4dM14H3fm3zjH3 for ; Wed, 03 Dec 2025 14:58:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2b647 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 14:58:50 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Timothy Pearson Subject: git: 84fd37f30958 - main - committers-src: add myself (tpearson@) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tpearson X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 84fd37f309585742e142d3e82f8b9067ad2eb2b1 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 14:58:50 +0000 Message-Id: <6930502a.2b647.41f57d23@gitrepo.freebsd.org> The branch main has been updated by tpearson: URL: https://cgit.FreeBSD.org/src/commit/?id=84fd37f309585742e142d3e82f8b9067ad2eb2b1 commit 84fd37f309585742e142d3e82f8b9067ad2eb2b1 Author: Timothy Pearson AuthorDate: 2025-12-02 23:36:04 +0000 Commit: Timothy Pearson CommitDate: 2025-12-03 14:58:32 +0000 committers-src: add myself (tpearson@) Add myself (tpearson@) as a new src committer with jhibbits@ as my mentor. Approved by: jhibbits(mentor) --- share/misc/committers-src.dot | 2 ++ 1 file changed, 2 insertions(+) diff --git a/share/misc/committers-src.dot b/share/misc/committers-src.dot index 3f3e39635c55..8eedf6bb8abb 100644 --- a/share/misc/committers-src.dot +++ b/share/misc/committers-src.dot @@ -377,6 +377,7 @@ thompsa [label="Andrew Thompson\nthompsa@FreeBSD.org\n2005/05/25"] ticso [label="Bernd Walter\nticso@FreeBSD.org\n2002/01/31"] tijl [label="Tijl Coosemans\ntijl@FreeBSD.org\n2010/07/16"] tmunro [label="Thomas Munro\ntmunro@FreeBSD.org\n2018/10/15"] +tpearson [label="Timothy Pearson\ntpearson@FreeBSD.org\n2025/12/02"] tsoome [label="Toomas Soome\ntsoome@FreeBSD.org\n2016/08/10"] trasz [label="Edward Tomasz Napierala\ntrasz@FreeBSD.org\n2008/08/22"] trhodes [label="Tom Rhodes\ntrhodes@FreeBSD.org\n2002/05/28"] @@ -678,6 +679,7 @@ jhibbits -> alfredo jhibbits -> bdragon jhibbits -> leitao jhibbits -> luporl +jhibbits -> tpearson jimharris -> carl From nobody Wed Dec 3 15:07:52 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM1Gc31LMz6JXtN for ; Wed, 03 Dec 2025 15:07:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM1Gc2CTTz3TTb for ; Wed, 03 Dec 2025 15:07:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764774472; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=67IFTPNUE5ewqZ3w3VN0jKEot1ZLU4zUzIS4fxdi+UQ=; b=DT2gebtwhSN+BclG03ZTvyCb9veLOqY47Od/e2JZ3qxZWDqhQxRvDxK4loLoIkCsHDPMc1 iKg1EYVnu3ytbnUjG5aA7qXhHqlp/607q8XOIu4eXxOFZDFBiiCqeI6UkeEruSu4Lul7eE yfUS/Wz4bpivrXFXZcV4lyun6VJjk0bXz7mOM9Kr13VmJxQ88DlGUk0Qa/Y6Wr6pj80Noc y7NraL61MmlHgvMR4PI5I8Oc3CHP3dAiMpkixzJRmchWSHuUxmEGeXRL6YWE+uhAOex4k5 9dzyVdh9JS95a2yTxAXeio7+ZP66/eexNVcR/pH03HB9aQCspJ6pfZTRL9JCEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764774472; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=67IFTPNUE5ewqZ3w3VN0jKEot1ZLU4zUzIS4fxdi+UQ=; b=QeoNFWKPhVCdRxwDK9YJxbxtbUyWxC4vwgGrI0+iaaZBICW2wxM12d7BguhIh/ZYpyvIPe p/xPltao5f9iIcNJXOpfj1rndh+vUJX/TUlX843xDyBPy5rgHpRXELQ4k2CQ7a3iUz+mfD GitjDwQwTX6N9O2uPF2tAhg6zY4GGaVTlZ3yzpy7GKH9IadBWqFCzlBnPbZBCmHN47Pm6M OcuRMmd/6dRbpM/t1vN0sy4ia/YXY8PSpntBCyfuBsxcCjN0JGY683tXQcLPpxrwNm0bZ9 YpfS1smcjvVToTMv9R27QmbSdqfQurlVSQmlv2UdfWeLJtd+tHXxvGYfWF+Z1w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764774472; a=rsa-sha256; cv=none; b=QC41LTw2OFRz/bOEWufxnQY6nh3DQbUmMvAKncGOXSROidVzjRo+zc31DKrAW5YhyY0uXB v4iJCxHKZoHN/LJtfJ1YHd0RXnF0wbqms5la9qahTz6OK1Tryq5YNly8wJMBkHYmyGUDsZ uPedOFyp3/ehL9oFlmYIAxJMYi/a5T+70L8YUo3/3jhoN+kTLkiLvMlqJdTYUoaAs4OD9x Tt43eSUKtJPbhpWHNNURN8zp/LLt1LH6/vDbkPBA3/+rWRzzdomISKi0Shllv+pLgpP29M vehZ3N5QTFLjeyOk6GdsJ2uQmVsywoeScR5ngLp/8z2vR6KNILFmKN1htrki0Q== 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 4dM1Gc1jgyzjt0 for ; Wed, 03 Dec 2025 15:07:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2d527 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 15:07:52 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: e19230d49ffc - main - Makefile.inc1: Fix the libbnxtre dependency target List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: e19230d49ffc02944d93645800da934b7aeee078 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 15:07:52 +0000 Message-Id: <69305248.2d527.389a12d6@gitrepo.freebsd.org> The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=e19230d49ffc02944d93645800da934b7aeee078 commit e19230d49ffc02944d93645800da934b7aeee078 Author: Mark Johnston AuthorDate: 2025-12-03 15:06:54 +0000 Commit: Mark Johnston CommitDate: 2025-12-03 15:07:43 +0000 Makefile.inc1: Fix the libbnxtre dependency target Reported by: Jenkins Fixes: 73e8fe62466a ("libpcap: Fix dependency definitions for libpcap") --- Makefile.inc1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index 0f1e66a89da8..cc1901a1e950 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -3363,7 +3363,7 @@ _prebuild_libs+= \ lib/ofed/libibmad__L: lib/ofed/libibumad__L lib/ofed/complib__L: lib/libthr__L -lib/ofed/libbnxt__L: lib/ofed/libibverbs__L lib/libthr__L +lib/ofed/libbnxtre__L: lib/ofed/libibverbs__L lib/libthr__L lib/ofed/libmlx5__L: lib/ofed/libibverbs__L lib/libthr__L .endif From nobody Wed Dec 3 17:58:41 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM53k1jhtz6JmQG for ; Wed, 03 Dec 2025 17:58:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM53j6WG2z3rqC for ; Wed, 03 Dec 2025 17:58:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764784721; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=06nczN0QEK0aMFqt8zF4V6Pf3C6X9zTZMY8h8/aIiqY=; b=YU3WrBNYRtLX4Wbyhw/tdzzGwGm/tNb2eucpwQ0VJlmW9msK9HEHZwW9pQ2mMzkxUVcwf1 zQnoWmR2AOk2tPJTAAjGJp3T5kbK68Ku5RFesWJ32JNED1oT71EZS+UVbaTTy4XCiIy9L0 TlDOaNiwcc/rwmRqBNkUaa2zQu1+5Nj1RGjBak8AilP/hgCuQryu8bbohUOVaLtq/iYoc+ hYBH1N7r8WzoMCwkIZ8qOfbwqpLZpy6mGFepZWgE2bwuQUn0L+qUwkFofGhYMLf2YaKOY0 iP0nxKrUC45DoAbMY/tu2s2AbrQuFlfng8eXwUnMVEwu0MrPDvhqRhfyYW6hLA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764784721; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=06nczN0QEK0aMFqt8zF4V6Pf3C6X9zTZMY8h8/aIiqY=; b=AUplj0VkCnYLGoAJfeKPG5DC63Rm8GkpLT3qTLiE+i7y6AMLSzUXZVAFNatf7sE3W7+IH4 1yAPVpBMGTZPOUMtv4z1F2c5HlKAobSenjoXtV/ncyiAmSal1pljdRrhgafd7i9WmmXNia cO0wI/qHwgl6bHsIVgHB1iEFl5iTMMCAeLmu7n/VQGRpIxej8BQG4lcT0LXgcdr3vpBGS8 DBHOlMaCVuTqyUTYWQokUTn/OJhXaBNyskl5cQ9fS5s3p3LZ6e+jXJ1PZsUi2cCMcml/c9 8Dsg274U3cxaRCRqLm/ucRZiuyEvMXO9q53d0pI7EmjznRdlWMEYRlv3DpwUhw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764784721; a=rsa-sha256; cv=none; b=CIy7x4UiQ0qxxdIUdQlSRTOxFdkfuFWUMxqs5rfseQ8H8XxfegSIUKdoDNwKHzdmOj+Ozi fc+ixDyVmd/b0trYRJfBNvyGrE6npr8SKN0pLGMIQbi80FDFkbnq5M+0/jKWix/zwsZVnG fo0ZJJE5TPlCPJjYPsH39eJ6b0jvxmwycPjizyTLKLF6VKKX8LyQ6s502ffH1+8qvTB9AH Sbtl/CT2FK+U+nuYTtqM135fRDYzUVjZlES0vTdKX0dZ3t+C74iq/y7SylGS3u4+ml1utK YT3vbADekpJSRpMibsvErigMjtjLWipRusqvf0fgC3yQCjutmB6pmG7QkDWJug== 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 4dM53j5N0xzpK9 for ; Wed, 03 Dec 2025 17:58:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id cdd8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 17:58:41 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: Simon J. Gerraty Subject: git: 5dacd6723538 - Create tag vendor/NetBSD/bmake/20251111 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sjg X-Git-Repository: src X-Git-Refname: refs/tags/vendor/NetBSD/bmake/20251111 X-Git-Reftype: annotated tag X-Git-Commit: 5dacd67235385f6f1f8f480a53d777a0b0b26691 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 17:58:41 +0000 Message-Id: <69307a51.cdd8.7457a07a@gitrepo.freebsd.org> The annotated tag vendor/NetBSD/bmake/20251111 has been created by sjg: URL: https://cgit.FreeBSD.org/src/tag/?h=vendor/NetBSD/bmake/20251111 tag vendor/NetBSD/bmake/20251111 Tagger: Simon J. Gerraty TaggerDate: 2025-12-03 17:58:11 +0000 Tag bmake/20251111 commit 638c66de4a0faa4c2e815e81cd4021c2387c7e0f Author: Simon J. Gerraty AuthorDate: 2025-12-03 17:57:57 +0000 Commit: Simon J. Gerraty CommitDate: 2025-12-03 17:57:57 +0000 Import bmake-20251111 Intersting/relevant changes since bmake-20250804 ChangeLog since bmake-20250804 2025-11-15 Simon J Gerraty * boot-strap: unset more things from env and save a copy to env.out for debugging. 2025-11-12 Simon J Gerraty * VERSION (_MAKE_VERSION): 20251111 Merge with NetBSD make, pick up o var.c: add :sh1 which only evaluates command on first reference. 2025-11-11 Simon J Gerraty * configure.in: Force filemon=no for Cygwin and MINGW64_NT 2025-11-10 Simon J Gerraty * unit-tests/Makefile: handle MINGW64_NT mark some tests broken, filter others as per Cygwin. 2025-10-23 Simon J Gerraty * make.1: document MAKE_VERSION. 2025-10-22 Simon J Gerraty * VERSION (_MAKE_VERSION): 20251022 * configure.in: Add a check that lua is version 5.2 or later if not we want to skip running check-expect.lua 2025-09-16 Simon J Gerraty * VERSION (_MAKE_VERSION): 20250916 Merge with NetBSD make, pick up o var.c: avoid compiler warning from hexdigits mk/ChangeLog since bmake-20250804 2025-11-18 Simon J Gerraty * sys.vars.mk: set MAKE_POSIX_SHELL to 1 if .SHELL is POSIX, 0 if not. set isPOSIX_SHELL for use in target scripts. * meta.stage.mk: set MAKE_POSIX_SHELL if needed. * install-new.mk: use ${isPOSIX_SHELL:Ufalse} to see if we can avoid running 'expr'. * install-new.mk: Allow use of cp or mv - controlled by CPMV_OP (default mv). 2025-11-13 Simon J Gerraty * sys.vars.mk: add M_sh1 so we can handle older bmake that does not support :sh1 2025-11-11 Simon J Gerraty * install-mk (MK_VERSION): 20251111 * meta2deps.sh: reset some vars for each new meta file set meta_file to path of meta file. If meta2deps appears in DEBUG_SH set -x. 2025-09-16 Simon J Gerraty * options.mk: Add OPTIONS_DEFAULT_DEPENDENT_REQUIRED of the form OPTION/REQUIRED[/VALUE] if OPTION is $VALUE (default is "yes"), then REQUIRED must be too. We add OPTIONS_DEFAULT_DEPENDENT_REQUIRED (sans any /{yes,no}) to OPTIONS_DEFAULT_DEPENDENT so DEPENDENT/REQUIRED follow the same processing. Also add OPTIONS_FORCED_VALUES of the form OPTION/{yes,no} we add any OPTIONS_FORCED_NO and OPTIONS_FORCED_YES before processing. Simplify the processing of OPTIONS_DEFAULT_VALUES and OPTIONS_DEFAULT_DEPENDENT by splitting the tuples and use two iterator variables in the .for loops. 2025-08-09 Simon J Gerraty * install-mk (MK_VERSION): 20250808 * replace sjg license with just BSD-2-Clause SPDX tag From nobody Wed Dec 3 17:58:41 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM53k1k6xz6JmVf for ; Wed, 03 Dec 2025 17:58:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM53j6bS6z3rc9 for ; Wed, 03 Dec 2025 17:58:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764784721; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6Zn/GtLIS4LlYm2JbTNazetUQBMyi6vCdfSzytl9A5c=; b=Myh4+Ud2vrTDFjahOwwDcyocs0AzNDb1aY1B2yob0BSrahxg8pRs4JfETQ3cHS4NRiRwAb SeovhOjTfWHxXp7+YzoUuhc2y5ALPKiWznKYSozhUguLnn9PNcY1dw5tyTEe1ttoU6Q8JC EvdngYeTLu6UROVAV6qZDnLD7Ff7EGcOHAPTn+plV9Hur8+3TI2yLBIId8yA9MwsxR0Ga5 2YjroMKx6CRrQuahcPLpPsDTnptUwFWvk9IyX8W+28KOuSfcLpP4gSncMJcWptfav1ahEn mEpQYGpyy+Cl3vSD5EA7urR9P/xVsuDPxrbfh/Y35Q32PtUNE6Q70fv8WZbNSQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764784721; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6Zn/GtLIS4LlYm2JbTNazetUQBMyi6vCdfSzytl9A5c=; b=DMLyN+Ih26pjSN6IrHB6hdlt1bWDAiqov53lYzDTGypanvVtX0c7CqtPw6XUWU/uLg++VF yiv8iq9zfB+iQ6DDR/KVk2no5Xm7t1ec/BI+hHGudM/WVbeP+wjmmiPjDI9m9Kb1iLIR6H NZyedmAJkwv0NjXwr5NSa6N9HUW4K+hZW1WJeeLbtPVk3umrOEa9uTjwMR3wRy6sCiAClL Q8XpxO+DsV9m2+HjcF0i7BznCUjVuQBRrQKrFNTVAOHJzLlauU8B8IEACAasZY1QqnLFsX PCV77i4Eppz8EVuyZXzp6UfACeiLd0+8ZmXQDnTJTa7ZHmlrqAePK+lBphDqww== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764784721; a=rsa-sha256; cv=none; b=ApIAYZqu5yMYIihBekFb6RLLU2xfjwtTePThljFN3JqCfY2Tpe+OgengMduXR0ey4TFRzx RD/S47IEpiqlGsj1qNT7Jk93G5lBxAKvhUObb7cHj1rZj5acQEbuR475G2BS7The/m6747 j+Qk5KJPK3V5PikGs9Ynbr2n/vDsF3uQqnffK+Xy/SPZ72q7oTbMwsxsgHqoMc22gWCXOQ AYSFIrXdvcTjIurz8K2FYsyelj9gnHMQ7MK2H04hG9gEku+F2V+LU8aAutlohs6cUS5vEG PjLvNUwYMKh7LfpTr/J/vIxmqGVo+zqtJHvm57Op0GgLK0LpJxS7rOIqcQgppw== 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 4dM53j56mTzp6x for ; Wed, 03 Dec 2025 17:58:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id c9c3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 17:58:41 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: Simon J. Gerraty Subject: git: 787302bde4d8..638c66de4a0f - vendor/NetBSD/bmake - vendor branch updated List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sjg X-Git-Repository: src X-Git-Refname: refs/heads/vendor/NetBSD/bmake X-Git-Reftype: branch X-Git-Commit: 638c66de4a0faa4c2e815e81cd4021c2387c7e0f X-Git-Oldrev: 787302bde4d89279180303b753eb73b9bc6820b9 X-Git-Newrev: 638c66de4a0faa4c2e815e81cd4021c2387c7e0f Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 17:58:41 +0000 Message-Id: <69307a51.c9c3.3854b660@gitrepo.freebsd.org> The branch vendor/NetBSD/bmake has been updated by sjg: URL: https://cgit.FreeBSD.org/src/log/?id=787302bde4d8..638c66de4a0f 638c66de4a0f Import bmake-20251111 From nobody Wed Dec 3 18:18:01 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM5V82PBtz6Jnw2 for ; Wed, 03 Dec 2025 18:18:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM5V76bsQz3tp8 for ; Wed, 03 Dec 2025 18:18:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764785887; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TT1EDjrl5ftm6HD8p0Z3PULjWGDI1JUOMkZD7g/kFT0=; b=D6Z8Og1XY+NANbiMd1gmpRdg3rLeaKzvXemAJGs5ix3QFioc9C4R/rAW2RjOrd/EFKlCU5 z+3oZIexnlJL74uV3HigGJS86b3Hp35Q6Sl85bHaAxTSpO4vC8YN5qE0Z6UpvPofRDXXZL DIXfKni7SSMCDKLUlk2wjvhM/nFcofXnC9bS5WKr0APepukKrWh4GATuQqTcKe8FjOnAZn Z0pJm10FuefLWl31Di8VrhvEpbOpLkO09QdzJvmTjGEB6CS9rdK9KNYs9vnflKzZKd8BVc f4LV2y3LRCgXPLnYtL+lcsmTDCMVvEII5vfVUphE5IVQlZv+MZiYUNn4q3BJBg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764785887; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TT1EDjrl5ftm6HD8p0Z3PULjWGDI1JUOMkZD7g/kFT0=; b=FGyHu8DjLFXq91ooiR/O8fM7769mituL/boaqJZL+e2KhX0b7AvJh3fD6DcsFbG/OUgsi5 7f8lqb2IFFk2t/2sxhcJ0IzLRhEhPHq2gB4Cn3NrPjwfjioMgu5I8PD2EfiJAIteIiIDNP foaptkgQwrEGUjVdAVJaURCUl1ClOCMvBOXdc6h8EVHzGDo8Oy68gce4yDWivYLdmJD9+V Ln/p0rEF2gGp++vjg7tv3J9NX2ID1BBebM8+B86VS/eB5hWHZdiqbc1+ymZOtFsBrd31Cn fzS+Jk848qiDB3bM4c6mmOx0Tfdf88Uu0t7wAGg9WqYqu/WH87hhw3JE1aLbtw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764785887; a=rsa-sha256; cv=none; b=Zx4zbRz0JdbmRuzWr4+4uA7wnZAGxXssm9Tv0A7jYnGPBtUqnnGF1TYqAyI4AL+RTvnNUZ 1WCnA3rIAbci8uWnarlh1QnCP+rEibv8IwHvZPDtx+vBjpaxl5ghJ7YG9UOy4edYLPVlyL YPvj23bf3MW3fvUBgYDNedh/aobkhdqE4oBrPD04lOz6XvQUephgVaXgGXm9xgbX7VLHQg lVBh96zNzJVqjOXDnf5+yk+bWxO0LSI5wcTwwEXCc6nVjjXAZztxmTp9ABrjXUcE/QUrHr K7OmZXpVC1o0lBGlQNvP6jZLo0h9VyP1a3gGPcC0VHtOkL9a0d1fB8uNle93dA== 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 4dM5V75XlLzpdx for ; Wed, 03 Dec 2025 18:18:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id fc1c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 18:18:01 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Simon J. Gerraty Subject: git: c60f6422ffae - main - Update to bmake-20251111 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sjg X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c60f6422ffae3ea85e7b10bad950ad27c463af18 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 18:18:01 +0000 Message-Id: <69307ed9.fc1c.43204c2e@gitrepo.freebsd.org> The branch main has been updated by sjg: URL: https://cgit.FreeBSD.org/src/commit/?id=c60f6422ffae3ea85e7b10bad950ad27c463af18 commit c60f6422ffae3ea85e7b10bad950ad27c463af18 Merge: e19230d49ffc 638c66de4a0f Author: Simon J. Gerraty AuthorDate: 2025-12-03 18:13:30 +0000 Commit: Simon J. Gerraty CommitDate: 2025-12-03 18:15:46 +0000 Update to bmake-20251111 Merge commit '638c66de4a0faa4c2e815e81cd4021c2387c7e0f' contrib/bmake/ChangeLog | 37 ++++++ contrib/bmake/FILES | 2 + contrib/bmake/LICENSE | 6 +- contrib/bmake/VERSION | 2 +- contrib/bmake/bmake.1 | 13 +- contrib/bmake/bmake.cat1 | 12 +- contrib/bmake/boot-strap | 23 +++- contrib/bmake/configure | 53 ++++++-- contrib/bmake/configure.in | 36 ++++- contrib/bmake/install-sh | 11 +- contrib/bmake/main.c | 13 +- contrib/bmake/make.1 | 13 +- contrib/bmake/mk/ChangeLog | 49 +++++++ contrib/bmake/mk/auto.dep.mk | 12 +- contrib/bmake/mk/auto.obj.mk | 11 +- contrib/bmake/mk/autoconf.mk | 11 +- contrib/bmake/mk/autodep.mk | 12 +- contrib/bmake/mk/cc-wrap.mk | 11 +- contrib/bmake/mk/ccm.dep.mk | 12 +- contrib/bmake/mk/compiler.mk | 11 +- contrib/bmake/mk/cython.mk | 12 +- contrib/bmake/mk/dirdeps-cache-update.mk | 11 +- contrib/bmake/mk/dirdeps-options.mk | 11 +- contrib/bmake/mk/dirdeps-targets.mk | 18 +-- contrib/bmake/mk/dpadd.mk | 11 +- contrib/bmake/mk/files.mk | 11 +- contrib/bmake/mk/gendirdeps.mk | 5 +- contrib/bmake/mk/genfiles.mk | 11 +- contrib/bmake/mk/host-target.mk | 12 +- contrib/bmake/mk/host.libnames.mk | 9 +- contrib/bmake/mk/inc.mk | 11 +- contrib/bmake/mk/init.mk | 11 +- contrib/bmake/mk/install-mk | 11 +- contrib/bmake/mk/install-new.mk | 36 ++--- contrib/bmake/mk/install-sh | 11 +- contrib/bmake/mk/java.mk | 12 +- contrib/bmake/mk/jobs.mk | 11 +- contrib/bmake/mk/ldorder.mk | 11 +- contrib/bmake/mk/libnames.mk | 11 +- contrib/bmake/mk/libs.mk | 11 +- contrib/bmake/mk/links.mk | 11 +- contrib/bmake/mk/manifest.mk | 11 +- contrib/bmake/mk/meta.autodep.mk | 12 +- contrib/bmake/mk/meta.stage.mk | 26 ++-- contrib/bmake/mk/meta.subdir.mk | 12 +- contrib/bmake/mk/meta.sys.mk | 12 +- contrib/bmake/mk/meta2deps.sh | 24 +++- contrib/bmake/mk/mkopt.sh | 10 +- contrib/bmake/mk/newlog.sh | 11 +- contrib/bmake/mk/obj.mk | 11 +- contrib/bmake/mk/options.mk | 148 ++++++++++++++------- contrib/bmake/mk/posix.mk | 11 +- contrib/bmake/mk/prlist.mk | 11 +- contrib/bmake/mk/progs.mk | 11 +- contrib/bmake/mk/rst2htm.mk | 11 +- contrib/bmake/mk/rust.mk | 12 +- contrib/bmake/mk/scripts.mk | 11 +- contrib/bmake/mk/setopts.sh | 9 +- contrib/bmake/mk/srctop.mk | 11 +- contrib/bmake/mk/stage-install.sh | 9 +- contrib/bmake/mk/subdir.mk | 11 +- contrib/bmake/mk/suffixes.mk | 11 +- contrib/bmake/mk/sys.clean-env.mk | 11 +- contrib/bmake/mk/sys.debug.mk | 11 +- contrib/bmake/mk/sys.dependfile.mk | 11 +- contrib/bmake/mk/sys.dirdeps.mk | 11 +- contrib/bmake/mk/sys.mk | 11 +- contrib/bmake/mk/sys.vars.mk | 36 +++-- contrib/bmake/mk/target-flags.mk | 13 +- contrib/bmake/mk/warnings.mk | 12 +- contrib/bmake/mk/whats.mk | 11 +- contrib/bmake/mk/yacc.mk | 12 +- contrib/bmake/os.sh | 9 +- contrib/bmake/sigaction.c | 14 +- contrib/bmake/sigcompat.c | 14 +- contrib/bmake/unit-tests/Makefile | 31 ++++- contrib/bmake/unit-tests/Makefile.config.in | 7 +- contrib/bmake/unit-tests/directive-dinclude.mk | 2 +- .../bmake/unit-tests/directive-hyphen-include.mk | 2 +- .../bmake/unit-tests/directive-include-guard.mk | 4 +- contrib/bmake/unit-tests/directive-include.mk | 2 +- contrib/bmake/unit-tests/directive-sinclude.mk | 2 +- contrib/bmake/unit-tests/opt-debug-file.exp | 2 +- contrib/bmake/unit-tests/opt-debug-file.mk | 6 +- contrib/bmake/unit-tests/varmod-sun-shell1.exp | 14 ++ contrib/bmake/unit-tests/varmod-sun-shell1.mk | 25 ++++ contrib/bmake/unit-tests/varname-circumflex.mk | 4 +- contrib/bmake/var.c | 46 ++++++- contrib/bmake/wait.h | 14 +- usr.bin/bmake/Makefile.config | 2 +- usr.bin/bmake/config.h | 4 +- usr.bin/bmake/unit-tests/Makefile | 31 ++++- usr.bin/bmake/unit-tests/Makefile.config | 7 +- 93 files changed, 688 insertions(+), 696 deletions(-) diff --cc contrib/bmake/mk/install-mk index 3ed5fd63ee5c,f61d38947b11..f61d38947b11 mode 100755,100644..100644 --- a/contrib/bmake/mk/install-mk +++ b/contrib/bmake/mk/install-mk diff --cc contrib/bmake/unit-tests/varmod-sun-shell1.exp index 000000000000,28fd1fa3d481..28fd1fa3d481 mode 000000,100644..100644 --- a/contrib/bmake/unit-tests/varmod-sun-shell1.exp +++ b/contrib/bmake/unit-tests/varmod-sun-shell1.exp diff --cc contrib/bmake/unit-tests/varmod-sun-shell1.mk index 000000000000,a15c93450e76..a15c93450e76 mode 000000,100644..100644 --- a/contrib/bmake/unit-tests/varmod-sun-shell1.mk +++ b/contrib/bmake/unit-tests/varmod-sun-shell1.mk diff --cc usr.bin/bmake/Makefile.config index 2415f9d3882c,000000000000..16cce3e1658a mode 100644,000000..100644 --- a/usr.bin/bmake/Makefile.config +++ b/usr.bin/bmake/Makefile.config @@@ -1,28 -1,0 +1,28 @@@ +# This is a generated file, do NOT edit! +# See contrib/bmake/bsd.after-import.mk +# + +SRCTOP?= ${.CURDIR:H:H} + +# things set by configure + - _MAKE_VERSION?=20250804 ++_MAKE_VERSION?=20251111 + +prefix?= /usr +srcdir= ${SRCTOP}/contrib/bmake +CC?= cc +MAKE_OS?= +DEFAULT_SYS_PATH?= .../share/mk:/usr/share/mk + +EGREP= egrep +CPPFLAGS+= +CFLAGS+= ${CPPFLAGS} -DHAVE_CONFIG_H +LDFLAGS+= +LIBOBJS+= ${LIBOBJDIR}stresep$U.o +LDADD+= +USE_META?= yes +USE_FILEMON?= dev +FILEMON_H?= /usr/include/dev/filemon/filemon.h +BMAKE_PATH_MAX?= 1024 +# used if MAXPATHLEN not defined +CPPFLAGS+= -DBMAKE_PATH_MAX=${BMAKE_PATH_MAX} diff --cc usr.bin/bmake/config.h index 33aed8f160c8,000000000000..fecfc2be4adb mode 100644,000000..100644 --- a/usr.bin/bmake/config.h +++ b/usr.bin/bmake/config.h @@@ -1,449 -1,0 +1,449 @@@ +/* config.h. Generated from config.h.in by configure. */ +/* config.h.in. Generated from configure.in by autoheader. */ + +/* Define if building universal (internal helper macro) */ +/* #undef AC_APPLE_UNIVERSAL_BUILD */ + +/* Path of default shell */ +/* #undef DEFSHELL_CUSTOM */ + +/* Shell spec to use by default */ +/* #undef DEFSHELL_INDEX */ + +/* Path of default shell */ +/* #undef DEFSHELL_PATH */ + +/* Define to 1 if you have the header file. */ +#define HAVE_AR_H 1 + +/* Define to 1 if you have the declaration of 'sys_siglist', and to 0 if you + don't. */ +#define HAVE_DECL_SYS_SIGLIST 1 + +/* Define to 1 if you have the header file, and it defines 'DIR'. + */ +#define HAVE_DIRENT_H 1 + +/* Define to 1 if you have the 'dirname' function. */ +#define HAVE_DIRNAME 1 + +/* Define to 1 if you don't have 'vprintf' but do have '_doprnt.' */ +/* #undef HAVE_DOPRNT */ + +/* Define to 1 if you have the 'err' function. */ +#define HAVE_ERR 1 + +/* Define to 1 if you have the 'errx' function. */ +#define HAVE_ERRX 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_ERR_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_FCNTL_H 1 + +/* Define to 1 if you have the 'fork' function. */ +#define HAVE_FORK 1 + +/* Define to 1 if you have the 'getcwd' function. */ +#define HAVE_GETCWD 1 + +/* Define to 1 if you have the 'getenv' function. */ +#define HAVE_GETENV 1 + +/* Define to 1 if you have the 'getopt' function. */ +#define HAVE_GETOPT 1 + +/* Define to 1 if you have the 'getwd' function. */ +#define HAVE_GETWD 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the 'killpg' function. */ +#define HAVE_KILLPG 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LIBGEN_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LIMITS_H 1 + +/* Define to 1 if the system has the type 'long long int'. */ +#define HAVE_LONG_LONG_INT 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MINIX_CONFIG_H */ + +/* Define to 1 if you have the header file, and it defines 'DIR'. */ +/* #undef HAVE_NDIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_PATHS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_POLL_H 1 + +/* Define to 1 if you have the 'putenv' function. */ +#define HAVE_PUTENV 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_RANLIB_H 1 + +/* Define to 1 if you have the 'realpath' function. */ +#define HAVE_REALPATH 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_REGEX_H 1 + +/* Define to 1 if you have the 'select' function. */ +#define HAVE_SELECT 1 + +/* Define to 1 if you have the 'setenv' function. */ +#define HAVE_SETENV 1 + +/* Define to 1 if you have the 'setpgid' function. */ +#define HAVE_SETPGID 1 + +/* Define to 1 if you have the 'setrlimit' function. */ +#define HAVE_SETRLIMIT 1 + +/* Define to 1 if you have the 'setsid' function. */ +#define HAVE_SETSID 1 + +/* Define to 1 if you have the 'sigaction' function. */ +#define HAVE_SIGACTION 1 + +/* Define to 1 if you have the 'sigaddset' function. */ +#define HAVE_SIGADDSET 1 + +/* Define to 1 if you have the 'sigpending' function. */ +#define HAVE_SIGPENDING 1 + +/* Define to 1 if you have the 'sigprocmask' function. */ +#define HAVE_SIGPROCMASK 1 + +/* Define to 1 if you have the 'sigsetmask' function. */ +#define HAVE_SIGSETMASK 1 + +/* Define to 1 if you have the 'sigsuspend' function. */ +#define HAVE_SIGSUSPEND 1 + +/* Define to 1 if you have the 'sigvec' function. */ +#define HAVE_SIGVEC 1 + +/* Define to 1 if the system has the type 'sig_atomic_t'. */ +#define HAVE_SIG_ATOMIC_T 1 + +/* Define to 1 if you have the 'snprintf' function. */ +#define HAVE_SNPRINTF 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDIO_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the 'strerror' function. */ +#define HAVE_STRERROR 1 + +/* Define to 1 if you have the 'stresep' function. */ +/* #undef HAVE_STRESEP */ + +/* Define to 1 if you have the 'strftime' function. */ +#define HAVE_STRFTIME 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the 'strlcpy' function. */ +#define HAVE_STRLCPY 1 + +/* Define to 1 if you have the 'strsep' function. */ +#define HAVE_STRSEP 1 + +/* Define to 1 if you have the 'strtod' function. */ +#define HAVE_STRTOD 1 + +/* Define to 1 if you have the 'strtol' function. */ +#define HAVE_STRTOL 1 + +/* Define to 1 if you have the 'strtoll' function. */ +#define HAVE_STRTOLL 1 + +/* Define to 1 if you have the 'strtoul' function. */ +#define HAVE_STRTOUL 1 + +/* Define to 1 if you have the 'sysctl' function. */ +#define HAVE_SYSCTL 1 + +/* Define to 1 if you have the header file, and it defines 'DIR'. + */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_MMAN_H 1 + +/* Define to 1 if you have the header file, and it defines 'DIR'. + */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_PARAM_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SELECT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SOCKET_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SYSCTL_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TIME_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_UIO_H 1 + +/* Define to 1 if you have that is POSIX.1 compatible. */ +#define HAVE_SYS_WAIT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if you have the 'unsetenv' function. */ +#define HAVE_UNSETENV 1 + +/* Define to 1 if the system has the type 'unsigned long long int'. */ +#define HAVE_UNSIGNED_LONG_LONG_INT 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UTIME_H 1 + +/* Define to 1 if you have the 'vfork' function. */ +#define HAVE_VFORK 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_VFORK_H */ + +/* Define to 1 if you have the 'vprintf' function. */ +#define HAVE_VPRINTF 1 + +/* Define to 1 if you have the 'vsnprintf' function. */ +#define HAVE_VSNPRINTF 1 + +/* Define to 1 if you have the 'wait3' function. */ +#define HAVE_WAIT3 1 + +/* Define to 1 if you have the 'wait4' function. */ +#define HAVE_WAIT4 1 + +/* Define to 1 if you have the 'waitpid' function. */ +#define HAVE_WAITPID 1 + +/* Define to 1 if you have the 'warn' function. */ +#define HAVE_WARN 1 + +/* Define to 1 if you have the 'warnx' function. */ +#define HAVE_WARNX 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_WCHAR_H 1 + +/* Define to 1 if 'fork' works. */ +#define HAVE_WORKING_FORK 1 + +/* Define to 1 if 'vfork' works. */ +#define HAVE_WORKING_VFORK 1 + +/* define if your compiler has __attribute__ */ +#define HAVE___ATTRIBUTE__ 1 + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "sjg@NetBSD.org" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "bmake" + +/* Define to the full name and version of this package. */ - #define PACKAGE_STRING "bmake 20240711" ++#define PACKAGE_STRING "bmake 20251111" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "bmake" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "" + +/* Define to the version of this package. */ - #define PACKAGE_VERSION "20240711" ++#define PACKAGE_VERSION "20251111" + +/* Define to 1 if the 'S_IS*' macros in do not work properly. */ +/* #undef STAT_MACROS_BROKEN */ + +/* Define to 1 if all of the C89 standard headers exist (not just the ones + required in a freestanding environment). This macro is provided for + backward compatibility; new code need not use it. */ +#define STDC_HEADERS 1 + +/* Define to 1 if your declares 'struct tm'. */ +/* #undef TM_IN_SYS_TIME */ + +/* Enable extensions on AIX, Interix, z/OS. */ +#ifndef _ALL_SOURCE +# define _ALL_SOURCE 1 +#endif +/* Enable general extensions on macOS. */ +#ifndef _DARWIN_C_SOURCE +# define _DARWIN_C_SOURCE 1 +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# define __EXTENSIONS__ 1 +#endif +/* Enable GNU extensions on systems that have them. */ +#ifndef _GNU_SOURCE +# define _GNU_SOURCE 1 +#endif +/* Enable X/Open compliant socket functions that do not require linking + with -lxnet on HP-UX 11.11. */ +#ifndef _HPUX_ALT_XOPEN_SOCKET_API +# define _HPUX_ALT_XOPEN_SOCKET_API 1 +#endif +/* Identify the host operating system as Minix. + This macro does not affect the system headers' behavior. + A future release of Autoconf may stop defining this macro. */ +#ifndef _MINIX +/* # undef _MINIX */ +#endif +/* Enable general extensions on NetBSD. + Enable NetBSD compatibility extensions on Minix. */ +#ifndef _NETBSD_SOURCE +# define _NETBSD_SOURCE 1 +#endif +/* Enable OpenBSD compatibility extensions on NetBSD. + Oddly enough, this does nothing on OpenBSD. */ +#ifndef _OPENBSD_SOURCE +# define _OPENBSD_SOURCE 1 +#endif +/* Define to 1 if needed for POSIX-compatible behavior. */ +#ifndef _POSIX_SOURCE +/* # undef _POSIX_SOURCE */ +#endif +/* Define to 2 if needed for POSIX-compatible behavior. */ +#ifndef _POSIX_1_SOURCE +/* # undef _POSIX_1_SOURCE */ +#endif +/* Enable POSIX-compatible threading on Solaris. */ +#ifndef _POSIX_PTHREAD_SEMANTICS +# define _POSIX_PTHREAD_SEMANTICS 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-5:2014. */ +#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ +# define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-1:2014. */ +#ifndef __STDC_WANT_IEC_60559_BFP_EXT__ +# define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-2:2015. */ +#ifndef __STDC_WANT_IEC_60559_DFP_EXT__ +# define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +#endif +/* Enable extensions specified by C23 Annex F. */ +#ifndef __STDC_WANT_IEC_60559_EXT__ +# define __STDC_WANT_IEC_60559_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-4:2015. */ +#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__ +# define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +#endif +/* Enable extensions specified by C23 Annex H and ISO/IEC TS 18661-3:2015. */ +#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__ +# define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TR 24731-2:2010. */ +#ifndef __STDC_WANT_LIB_EXT2__ +# define __STDC_WANT_LIB_EXT2__ 1 +#endif +/* Enable extensions specified by ISO/IEC 24747:2009. */ +#ifndef __STDC_WANT_MATH_SPEC_FUNCS__ +# define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +#endif +/* Enable extensions on HP NonStop. */ +#ifndef _TANDEM_SOURCE +# define _TANDEM_SOURCE 1 +#endif +/* Enable X/Open extensions. Define to 500 only if necessary + to make mbstate_t available. */ +#ifndef _XOPEN_SOURCE +/* # undef _XOPEN_SOURCE */ +#endif + + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#if defined AC_APPLE_UNIVERSAL_BUILD +# if defined __BIG_ENDIAN__ +# define WORDS_BIGENDIAN 1 +# endif +#else +# ifndef WORDS_BIGENDIAN +/* # undef WORDS_BIGENDIAN */ +# endif +#endif + +/* Define for Solaris 2.5.1 so the uint32_t typedef from , + , or is not used. If the typedef were allowed, the + #define below would cause a syntax error. */ +/* #undef _UINT32_T */ + +/* C99 function name */ +/* #undef __func__ */ + +/* Define to empty if 'const' does not conform to ANSI C. */ +/* #undef const */ + +/* Define to '__inline__' or '__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +/* #undef inline */ +#endif + +/* Define to the type of a signed integer type of width exactly 64 bits if + such a type exists and the standard includes do not define it. */ +/* #undef int64_t */ + +/* Define to 'int' if does not define. */ +/* #undef mode_t */ + +/* Define to 'long int' if does not define. */ +/* #undef off_t */ + +/* Define as a signed integer type capable of holding a process identifier. */ +/* #undef pid_t */ + +/* type that signal handlers can safely frob */ +/* #undef sig_atomic_t */ + +/* Define as 'unsigned int' if doesn't define. */ +/* #undef size_t */ + +/* Define to the type of an unsigned integer type of width exactly 32 bits if + such a type exists and the standard includes do not define it. */ +/* #undef uint32_t */ + +/* Define as 'fork' if 'vfork' does not work. */ +/* #undef vfork */ diff --cc usr.bin/bmake/unit-tests/Makefile index 66bdc04321e8,000000000000..d04a45b93247 mode 100644,000000..100644 --- a/usr.bin/bmake/unit-tests/Makefile +++ b/usr.bin/bmake/unit-tests/Makefile @@@ -1,924 -1,0 +1,943 @@@ +# This is a generated file, do NOT edit! +# See contrib/bmake/bsd.after-import.mk +# - # $Id: Makefile,v 1.245 2025/08/05 16:18:07 sjg Exp $ ++# $Id: Makefile,v 1.251 2025/11/15 17:17:18 sjg Exp $ +# - # $NetBSD: Makefile,v 1.372 2025/08/04 22:44:49 sjg Exp $ ++# $NetBSD: Makefile,v 1.373 2025/11/12 22:14:08 sjg Exp $ +# +# Unit tests for make(1) +# +# The main targets are: +# +# all: +# run all the tests +# test: +# run 'all', and compare to expected results +# accept: +# move generated output to expected results +# +# Settable variables +# +# TEST_MAKE +# The make program to be tested. +# +# +# Adding a test case +# +# Each feature should get its own set of tests in its own suitably +# named makefile (*.mk), with its own set of expected results (*.exp), +# and it should be added to the TESTS list. +# + +.MAIN: all + +# we use these below but we might be an older make +.MAKE.OS?= ${uname -s:L:sh} +.MAKE.UID?= ${id -u:L:sh} + +# for many tests we need a TMPDIR that will not collide +# with other users. +.if ${.OBJDIR} != ${.CURDIR} +# easy +TMPDIR:= ${.OBJDIR}/tmp +.elif defined(TMPDIR) +TMPDIR:= ${TMPDIR}/uid${.MAKE.UID} +.else +TMPDIR:= /tmp/uid${.MAKE.UID} +.endif +# make sure it exists +.if !exist(${TMPDIR}) +_!= mkdir -p ${TMPDIR} +.endif +# and clean it up - outside the context of +# any target that might be using it. +.END: rm-tmpdir +rm-tmpdir: .NOMETA + @rm -rf ${TMPDIR} + +# Each test is in a sub-makefile. +# Keep the list sorted. +# Any test that is commented out must be ignored in +# src/tests/usr.bin/make/t_make.sh as well. +#TESTS+= archive +#TESTS+= archive-suffix +TESTS+= char-005c-reverse-solidus +TESTS+= cmd-errors +TESTS+= cmd-errors-jobs +TESTS+= cmd-errors-lint +TESTS+= cmd-interrupt +TESTS+= cmdline +TESTS+= cmdline-redirect-stdin +TESTS+= cmdline-undefined +TESTS+= comment +TESTS+= compat-error +TESTS+= cond-cmp-numeric +TESTS+= cond-cmp-numeric-eq +TESTS+= cond-cmp-numeric-ge +TESTS+= cond-cmp-numeric-gt +TESTS+= cond-cmp-numeric-le +TESTS+= cond-cmp-numeric-lt +TESTS+= cond-cmp-numeric-ne +TESTS+= cond-cmp-string +TESTS+= cond-cmp-unary +TESTS+= cond-eof +TESTS+= cond-func +TESTS+= cond-func-commands +TESTS+= cond-func-defined +TESTS+= cond-func-empty +TESTS+= cond-func-exists +TESTS+= cond-func-make +TESTS+= cond-func-make-main +TESTS+= cond-func-target +TESTS+= cond-late +TESTS+= cond-op +TESTS+= cond-op-and +TESTS+= cond-op-and-lint +TESTS+= cond-op-not +TESTS+= cond-op-or +TESTS+= cond-op-or-lint +TESTS+= cond-op-parentheses +TESTS+= cond-short +TESTS+= cond-token-number +TESTS+= cond-token-plain +TESTS+= cond-token-string +TESTS+= cond-token-var +TESTS+= cond-undef-lint +TESTS+= counter +TESTS+= counter-append +TESTS+= dep +TESTS+= dep-colon +TESTS+= dep-colon-bug-cross-file +TESTS+= dep-double-colon +TESTS+= dep-double-colon-indep +TESTS+= dep-duplicate +TESTS+= dep-exclam +TESTS+= dep-none +TESTS+= dep-op-missing +TESTS+= dep-percent +TESTS+= dep-var +TESTS+= dep-wildcards +TESTS+= depsrc +TESTS+= depsrc-end +TESTS+= depsrc-exec +TESTS+= depsrc-ignore +TESTS+= depsrc-made +TESTS+= depsrc-make +TESTS+= depsrc-meta +TESTS+= depsrc-nometa +TESTS+= depsrc-nometa_cmp +TESTS+= depsrc-nopath +TESTS+= depsrc-notmain +TESTS+= depsrc-optional +TESTS+= depsrc-phony +TESTS+= depsrc-precious +TESTS+= depsrc-recursive +TESTS+= depsrc-silent +TESTS+= depsrc-use +TESTS+= depsrc-usebefore +TESTS+= depsrc-usebefore-double-colon +TESTS+= depsrc-wait +TESTS+= deptgt +TESTS+= deptgt-begin +TESTS+= deptgt-begin-fail +TESTS+= deptgt-begin-fail-indirect +TESTS+= deptgt-default +TESTS+= deptgt-delete_on_error +TESTS+= deptgt-end +TESTS+= deptgt-end-fail +TESTS+= deptgt-end-fail-all +TESTS+= deptgt-end-fail-indirect +TESTS+= deptgt-end-jobs +TESTS+= deptgt-error +TESTS+= deptgt-ignore +TESTS+= deptgt-interrupt +TESTS+= deptgt-main +TESTS+= deptgt-makeflags +TESTS+= deptgt-no_parallel +TESTS+= deptgt-nopath +TESTS+= deptgt-notparallel +TESTS+= deptgt-objdir +TESTS+= deptgt-order +TESTS+= deptgt-path +TESTS+= deptgt-path-suffix +TESTS+= deptgt-phony +TESTS+= deptgt-posix +TESTS+= deptgt-precious +TESTS+= deptgt-shell +TESTS+= deptgt-silent +TESTS+= deptgt-silent-jobs +TESTS+= deptgt-stale +TESTS+= deptgt-suffixes +TESTS+= dir +TESTS+= dir-expand-path +TESTS+= directive +TESTS+= directive-dinclude +TESTS+= directive-elif +TESTS+= directive-elifdef +TESTS+= directive-elifmake +TESTS+= directive-elifndef +TESTS+= directive-elifnmake +TESTS+= directive-else +TESTS+= directive-endfor +TESTS+= directive-endif +TESTS+= directive-error +TESTS+= directive-export +TESTS+= directive-export-env +TESTS+= directive-export-impl +TESTS+= directive-export-gmake +TESTS+= directive-export-literal +TESTS+= directive-for +TESTS+= directive-for-break +TESTS+= directive-for-empty +TESTS+= directive-for-errors +TESTS+= directive-for-escape +TESTS+= directive-for-generating-endif +TESTS+= directive-for-if +TESTS+= directive-for-lines +TESTS+= directive-for-null +TESTS+= directive-hyphen-include +TESTS+= directive-if +TESTS+= directive-if-nested +TESTS+= directive-ifdef +TESTS+= directive-ifmake +TESTS+= directive-ifndef +TESTS+= directive-ifnmake +TESTS+= directive-include +TESTS+= directive-include-fatal +TESTS+= directive-include-guard +TESTS+= directive-info +TESTS+= directive-misspellings +TESTS+= directive-sinclude +TESTS+= directive-undef +TESTS+= directive-unexport +TESTS+= directive-unexport-env +TESTS+= directive-warning +TESTS+= dollar +TESTS+= doterror +TESTS+= dotwait +TESTS+= error +TESTS+= # escape # broken by reverting POSIX changes +TESTS+= export +TESTS+= export-all +TESTS+= export-env +TESTS+= export-variants +TESTS+= gnode-submake +TESTS+= hanoi-include +TESTS+= impsrc +TESTS+= include-main +TESTS+= job-flags +TESTS+= job-output +TESTS+= job-output-long-lines +TESTS+= job-output-null +TESTS+= jobs-empty-commands +TESTS+= jobs-empty-commands-error +TESTS+= jobs-error-indirect +TESTS+= jobs-error-nested +TESTS+= jobs-error-nested-make +TESTS+= lint +TESTS+= make-exported +TESTS+= meta-cmd-cmp +TESTS+= meta-output +TESTS+= moderrs +TESTS+= modmisc +.if ${.MAKE.UID} > 0 +TESTS+= objdir-writable +.endif +TESTS+= opt +TESTS+= opt-backwards +TESTS+= opt-chdir +TESTS+= opt-debug +TESTS+= opt-debug-all +TESTS+= opt-debug-archive +TESTS+= opt-debug-curdir +TESTS+= opt-debug-cond +TESTS+= opt-debug-dir +TESTS+= opt-debug-errors +TESTS+= opt-debug-errors-jobs +TESTS+= opt-debug-file +TESTS+= opt-debug-for +TESTS+= opt-debug-graph1 +TESTS+= opt-debug-graph2 +TESTS+= opt-debug-graph3 +TESTS+= opt-debug-hash +TESTS+= opt-debug-jobs +TESTS+= opt-debug-lint +TESTS+= opt-debug-loud +TESTS+= opt-debug-meta +TESTS+= opt-debug-making +TESTS+= opt-debug-no-rm +TESTS+= opt-debug-parse +TESTS+= opt-debug-suff +TESTS+= opt-debug-targets +TESTS+= opt-debug-varraw +TESTS+= opt-debug-var +TESTS+= opt-debug-x-trace +TESTS+= opt-define +TESTS+= opt-env +TESTS+= opt-file +TESTS+= opt-ignore +TESTS+= opt-include-dir +TESTS+= opt-jobs +TESTS+= opt-jobs-internal +TESTS+= opt-jobs-no-action +TESTS+= opt-keep-going +TESTS+= opt-keep-going-indirect +TESTS+= opt-keep-going-multiple +TESTS+= opt-m-include-dir +TESTS+= opt-no-action +TESTS+= opt-no-action-at-all +TESTS+= opt-no-action-runflags +TESTS+= opt-no-action-touch +TESTS+= opt-query +TESTS+= opt-raw +TESTS+= opt-silent +TESTS+= opt-touch +TESTS+= opt-touch-jobs +TESTS+= opt-tracefile +TESTS+= opt-var-expanded +TESTS+= opt-var-literal +TESTS+= opt-version +TESTS+= opt-warnings-as-errors +TESTS+= opt-where-am-i +TESTS+= opt-x-reduce-exported +TESTS+= order +TESTS+= parse +TESTS+= parse-var +TESTS+= phony-end +TESTS+= posix +TESTS+= posix-execution +TESTS+= posix-expansion +TESTS+= posix-varassign +TESTS+= # posix1 # broken by reverting POSIX changes +TESTS+= recursive +TESTS+= sh +TESTS+= sh-dots +TESTS+= sh-errctl +TESTS+= sh-flags +TESTS+= sh-jobs +TESTS+= sh-jobs-error +TESTS+= sh-leading-at +TESTS+= sh-leading-hyphen +TESTS+= sh-leading-plus +TESTS+= sh-meta-chars +TESTS+= sh-multi-line +TESTS+= sh-single-line +TESTS+= shell-csh +TESTS+= shell-custom +.if exists(/bin/ksh) +TESTS+= shell-ksh +.endif +TESTS+= shell-sh +TESTS+= suff +TESTS+= suff-add-later +TESTS+= suff-clear-regular +TESTS+= suff-clear-single +TESTS+= suff-incomplete +TESTS+= suff-lookup +TESTS+= suff-main +TESTS+= suff-main-several +TESTS+= suff-phony +TESTS+= suff-rebuild +TESTS+= suff-self +TESTS+= suff-transform-debug +TESTS+= suff-transform-endless +TESTS+= suff-transform-expand +TESTS+= suff-transform-select +TESTS+= suff-use +TESTS+= sunshcmd +TESTS+= ternary +TESTS+= unexport +TESTS+= unexport-env +TESTS+= use-inference +TESTS+= var-readonly +TESTS+= var-scope +TESTS+= var-scope-cmdline +TESTS+= var-scope-env +TESTS+= var-scope-global +TESTS+= var-scope-local +TESTS+= var-scope-local-legacy +TESTS+= var-eval-short +TESTS+= var-op +TESTS+= var-op-append +TESTS+= var-op-assign *** 608 LINES SKIPPED *** From nobody Wed Dec 3 19:55:12 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM7f83FGFz6Hhl0 for ; Wed, 03 Dec 2025 19:55:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM7f82kw9z46fx for ; Wed, 03 Dec 2025 19:55:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764791712; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/ejW3Dq/6PR8Jk3K9spBIBG3rdlWayUVnXLDeFEol1M=; b=QCnY2Qswo8H8gMXSMQHSFKOvQi6uU988q5SZHjaQ35zsRC5T9pjhE4BAzWkM1lw8pgkzsz jeNUiQe92crQy9FRqInpTXbEsytN0A6LOIsm38VEnZgyMPWTiTgf+Wt1c8UciyEqqu86Q+ w+EXoPGqTs5lfwwg/K6N4Ffbt0Kpfy7JQYGEB+yyBcyfCftcdFsUanIYqpUMXxAalQuCw4 0yLfcE0VKSHLGJwmZ4miUFFvt1ViY7xRYQGxS1QzBO36QhuB3cSL+67o2PjnPuyoS9ZNX+ NIPt6fya2H9t/7+66vNATaXzx/p1ZtUhQeOy8SKIjkg0b7CQ1d50pyAQNvpP0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764791712; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/ejW3Dq/6PR8Jk3K9spBIBG3rdlWayUVnXLDeFEol1M=; b=RjccbEhE5dLiSHuUTZk1p+w6n+chZ05/XuXYJ+KS9jlDNt7W3s+tR+Bzn2/tDkI/YzOv1o iJcoeEKkBzgqk2dfJOa2k23qmOJ0/S3X5l8xEUolTtuK0+s1LLGwV0NItQVw0SZ0Lw8my1 TIsZFs1r0IKk4iVMFl/HvQKw61GIKCJwY9Pfsw0dIa9KtKrA9BVX3w2KJ44yIjZkpy4E0f bpcH0c5xJ7OJA5p1xq0OdBhd4YVg/AlUdz3o9xNUaz/wBc1g/dGRkfCIiNJhuNS6A9A8g3 SMbRJMMLLAWl448FVLBaxcnAilO/WkKY+F4y59m0RMy4o6669iONkVCXvVd4fQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764791712; a=rsa-sha256; cv=none; b=p/TlvtY0fVPfnF2qqrRjm6vRe/qylbaIC1hQedP+xDOqbCLqIzNXe3slzcenLy+c9Wi235 4qyefM9fRzYjyEENv87SfyWg9K0hc45rLCxhNHPCwS6zucmlwgfv96vEX3mkwEixgmX1/a vLGlcyLPjWqbR9JkKwbTwB0zu7ROb+B45p18eDiOwW/VOoghrM9ZgJst9Jt/8TuRDqXpq8 4oe/uPj/NUr9BBW7YvMmZBy4TvqIwjHjeLanXeP89HbKZ/ujWcPUy/sRvg9yHwLmec4cZq O7zg/Wom8lsSin5W9A6xpjkPibPBqDv1YovvGjs81Tk8GhFnkM2cv8p5t1iD+A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dM7f82DxHzsVb for ; Wed, 03 Dec 2025 19:55:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2ac3c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 19:55: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: af22833348c6 - main - LinuxKPI: 802.11: fill in more skeleton functions List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: af22833348c6c7ffed0186651437b5f50be1550b Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 19:55:12 +0000 Message-Id: <693095a0.2ac3c.4cd0a2a8@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=af22833348c6c7ffed0186651437b5f50be1550b commit af22833348c6c7ffed0186651437b5f50be1550b Author: Bjoern A. Zeeb AuthorDate: 2025-11-29 03:19:47 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-03 19:54:43 +0000 LinuxKPI: 802.11: fill in more skeleton functions Some of these are used by mt76 and while I was here and it only was a handfull I figured I should just clean this all up. There is one problem in that between 802.11az and 802.11-2024 action frame formats have changed; I got compile errors from iwlwifi(4) given I updated them to -2024 so we remain on older versions for the moment. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- .../linuxkpi/common/include/linux/ieee80211.h | 168 +++++++++++++++++---- sys/compat/linuxkpi/common/include/net/cfg80211.h | 4 + 2 files changed, 141 insertions(+), 31 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/ieee80211.h b/sys/compat/linuxkpi/common/include/linux/ieee80211.h index ea8c0fc8ef5e..12160df43915 100644 --- a/sys/compat/linuxkpi/common/include/linux/ieee80211.h +++ b/sys/compat/linuxkpi/common/include/linux/ieee80211.h @@ -43,8 +43,13 @@ extern int linuxkpi_debug_80211; #ifndef D80211_TODO #define D80211_TODO 0x1 #endif +#ifndef D80211_IMPROVE +#define D80211_IMPROVE 0x2 +#endif #define TODO(fmt, ...) if (linuxkpi_debug_80211 & D80211_TODO) \ printf("%s:%d: XXX LKPI80211 TODO " fmt "\n", __func__, __LINE__, ##__VA_ARGS__) +#define IMPROVE(fmt, ...) if (linuxkpi_debug_80211 & D80211_IMPROVE) \ + printf("%s:%d: XXX LKPI80211 IMPROVE " fmt "\n", __func__, __LINE__, ##__VA_ARGS__) /* 9.4.2.55 Management MIC element (CMAC-256, GMAC-128, and GMAC-256). */ @@ -568,17 +573,25 @@ struct ieee80211_mgmt { uint8_t tpc_elem_tx_power; uint8_t tpc_elem_link_margin; } __packed tpc_report; - /* 9.6.8.33 Fine Timing Measurement frame format */ + /* 802.11-2024, 9.6.7.32 FTM Request frame format */ + struct { + uint8_t public_action; + uint8_t trigger; + uint8_t variable[0]; + } __packed ftmr; + /* 802.11az-2022, 9.6.7.33 Fine Timing Measurement (FTM) frame format */ + /* XXX CHANGED IN 802.11-2024, 9.6.7.33 Fine Timing Measurement frame format */ struct { - uint8_t dialog_token; - uint8_t follow_up; - uint8_t tod[6]; - uint8_t toa[6]; + uint8_t public_action; + uint8_t dialog_token; + uint8_t follow_up; + uint8_t tod[6]; + uint8_t toa[6]; uint16_t tod_error; uint16_t toa_error; uint8_t variable[0]; } __packed ftm; - /* 802.11-2016, 9.6.5.2 ADDBA Request frame format */ + /* 802.11-2024, 9.6.4.2 ADDBA Request frame format */ struct { uint8_t action_code; uint8_t dialog_token; @@ -588,9 +601,12 @@ struct ieee80211_mgmt { /* Optional follows... */ uint8_t variable[0]; } __packed addba_req; - /* XXX */ + /* 802.11-2024, 9.6.13.3 Event Report frame format */ struct { + uint8_t wnm_action; uint8_t dialog_token; + /* Optional follows... */ + uint8_t variable[0]; } __packed wnm_timing_msr; } u; } __packed action; @@ -1087,24 +1103,42 @@ ieee80211_is_bufferable_mmpdu(struct sk_buff *skb) struct ieee80211_mgmt *mgmt; __le16 fc; + KASSERT(skb->len >= sizeof(fc), ("%s: skb %p short len %d\n", + __func__, skb, skb->len)); + mgmt = (struct ieee80211_mgmt *)skb->data; fc = mgmt->frame_control; - /* 11.2.2 Bufferable MMPDUs, 80211-2020. */ - /* XXX we do not care about IBSS yet. */ + /* 11.2.2 Bufferable MMPDUs, 802.11-2024. */ + IMPROVE("XXX IBBS"); if (!ieee80211_is_mgmt(fc)) return (false); - if (ieee80211_is_action(fc)) /* XXX FTM? */ - return (true); /* XXX false? */ if (ieee80211_is_disassoc(fc)) return (true); if (ieee80211_is_deauth(fc)) return (true); + if (!ieee80211_is_action(fc)) + return (false); - TODO(); + /* + * Now we know it is an action frame, so we can check for a proper + * length before accessing any further data to check if it is an + * FTM/FTMR, which is non-bufferable. + * 9.6.7.32 FTM Request frame format + * 9.6.7.33 FTM frame format + */ + if (skb->len < offsetofend(typeof(*mgmt), u.action.u.ftm.public_action)) + return (false); - return (false); + if (mgmt->u.action.category != IEEE80211_ACTION_CAT_PUBLIC) + return (false); + + if (mgmt->u.action.u.ftm.public_action == 33 || /* FTM xxx defines? */ + mgmt->u.action.u.ftmr.public_action == 32) /* FTMR xxx defines? */ + return (false); + + return (true); } static __inline bool @@ -1207,53 +1241,125 @@ ieee80211_get_DA(struct ieee80211_hdr *hdr) return (hdr->addr1); } +static __inline bool +ieee80211_has_morefrags(__le16 fc) +{ + + fc &= htole16(IEEE80211_FC1_MORE_FRAG << 8); + return (fc != 0); +} + static __inline bool ieee80211_is_frag(struct ieee80211_hdr *hdr) { - TODO(); - return (false); + return (ieee80211_has_morefrags(hdr->frame_control) || + (hdr->seq_ctrl & htole16(IEEE80211_SEQ_FRAG_MASK)) != 0); } static __inline bool -ieee80211_is_first_frag(__le16 fc) +ieee80211_is_first_frag(__le16 seq_ctrl) { - TODO(); - return (false); + return ((seq_ctrl & htole16(IEEE80211_SEQ_FRAG_MASK)) == 0); } static __inline bool ieee80211_is_robust_mgmt_frame(struct sk_buff *skb) { - TODO(); - return (false); + struct ieee80211_mgmt *mgmt; + + if (skb->len < sizeof(mgmt->frame_control)) + return (false); + mgmt = (struct ieee80211_mgmt *)skb->data; + + /* 802.11-2024, 12.2.7 Requirements for management frame protection */ + + if (ieee80211_is_disassoc(mgmt->frame_control)) + return (true); + if (ieee80211_is_deauth(mgmt->frame_control)) + return (true); + + if (!ieee80211_is_action(mgmt->frame_control)) + return (false); + + /* + * If the action frame is a protected frame the peer has already + * decided that it is a robust mgmt frame. + * This is not exactly in the books but maintaining the below + * table will go out of sync eventually and this can save us. + */ + if (ieee80211_has_protected(mgmt->frame_control)) + return (true); + + /* + * 802.11-2024, 9.4.1.11 Action Fields, + * Table 9-81-Category values; check for the ones marked Robust: no. + */ + /* Check length again before accessing more data. */ + if (skb->len < offsetofend(typeof(*mgmt), u.action.category)) + return (false); + + switch (mgmt->u.action.category) { + case 4: /* Public */ + case 7: /* HT */ + case 11: /* Unprotected WNM */ + /* 12 */ /* TDLS */ + case 15: /* Self-protected */ + case 20: /* Unprotected DMG */ + case 21: /* VHT */ + case 22: /* Unprotected S1G */ + case 30: /* HE */ + case 127: /* Vendor-specific */ + return (false); + default: + return (true); + } } static __inline bool ieee80211_is_ftm(struct sk_buff *skb) { - TODO(); + struct ieee80211_mgmt *mgmt; + + /* First check length before accessing data. */ + if (skb->len < offsetofend(typeof(*mgmt), u.action.u.ftm.public_action)) + return (false); + + mgmt = (struct ieee80211_mgmt *)skb->data; + if (!ieee80211_is_action(mgmt->frame_control)) + return (false); + if (mgmt->u.action.category != IEEE80211_ACTION_CAT_PUBLIC) + return (false); + if (mgmt->u.action.u.ftm.public_action == 33) /* FTM xxx defines? */ + return (true); + return (false); } static __inline bool ieee80211_is_timing_measurement(struct sk_buff *skb) { - TODO(); - return (false); -} + struct ieee80211_mgmt *mgmt; + + /* First check length before accessing data. */ + if (skb->len < offsetofend(typeof(*mgmt), u.action.u.wnm_timing_msr.wnm_action)) + return (false); + + mgmt = (struct ieee80211_mgmt *)skb->data; + if (!ieee80211_is_action(mgmt->frame_control)) + return (false); + + if (mgmt->u.action.category != IEEE80211_ACTION_CAT_UNPROTECTED_WNM) + return (false); + if (mgmt->u.action.u.wnm_timing_msr.wnm_action == 1) /* Event Report xxx defines? */ + return (true); -static __inline bool -ieee80211_has_pm(__le16 fc) -{ - TODO(); return (false); } static __inline bool -ieee80211_has_morefrags(__le16 fc) +ieee80211_has_pm(__le16 fc) { - - fc &= htole16(IEEE80211_FC1_MORE_FRAG << 8); + fc &= htole16(IEEE80211_FC1_PWR_MGT << 8); return (fc != 0); } diff --git a/sys/compat/linuxkpi/common/include/net/cfg80211.h b/sys/compat/linuxkpi/common/include/net/cfg80211.h index 305026b34451..d7ed2bc97c98 100644 --- a/sys/compat/linuxkpi/common/include/net/cfg80211.h +++ b/sys/compat/linuxkpi/common/include/net/cfg80211.h @@ -55,10 +55,14 @@ extern int linuxkpi_debug_80211; #ifndef D80211_IMPROVE #define D80211_IMPROVE 0x2 #endif +#ifndef TODO #define TODO(fmt, ...) if (linuxkpi_debug_80211 & D80211_TODO) \ printf("%s:%d: XXX LKPI80211 TODO " fmt "\n", __func__, __LINE__, ##__VA_ARGS__) +#endif +#ifndef IMPROVE #define IMPROVE(fmt, ...) if (linuxkpi_debug_80211 & D80211_IMPROVE) \ printf("%s:%d: XXX LKPI80211 IMPROVE " fmt "\n", __func__, __LINE__, ##__VA_ARGS__) +#endif enum rfkill_hard_block_reasons { RFKILL_HARD_BLOCK_NOT_OWNER = BIT(0), From nobody Wed Dec 3 19:55:13 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM7f94xhMz6HhqJ for ; Wed, 03 Dec 2025 19:55:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM7f93FFWz46cs for ; Wed, 03 Dec 2025 19:55:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764791713; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/3Ur0tgh72eDqcUtUxN+4J6ArgBY8md96mcXQAs0vUA=; b=xz5Yc/GqzgYjId+16vQRjFVRmaZ78ARwH6cZwa9T2RTGxOc5JPqmHB7OXAakAXQ5O3fBsb g42K57xIQAUml/E0Ic7XG2vlDdDXzdHZqibCstyGUxchBbtts5iOEhGJfTDhPYywedLbVu TCFovYikeIiSxIvc4CqxXSQ7f11mbSu6SCRGqBNtTXyAe9JTsbuwfkdUz2BzW2NbA14HY4 j/DDcf9Zsg7IkEy85i2mudat5XTArQEr84iNyM9Z2UGyECmrVPcWrXtPlWVYmxzmULK4RX NJuL11K4pJn/HbR0BU5I7Uw3PR7MEPFj9l1a2SrNzLkNd4Vuxtx2/NlKB3G6Uw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764791713; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/3Ur0tgh72eDqcUtUxN+4J6ArgBY8md96mcXQAs0vUA=; b=lcEv/S5M9AdO/7n0rUJMbTrwSBPsG8N9KaZ22JdVGf6SJ8Oe0KwPzOfZUt5jc757lF6mS0 OLCr5hXXjirnfPl3TKHrTjKr/Fyem0AtYS+RSJTA04oZ+oczZNDirtVTCPzRPyFX3kcCC2 IbjQd51PEWGiUGgCwxj0apwW5Sw6lqh3H+OUu8Va/MtHpWciPLEWLvB2nlUL5GTF7CJZf3 GWVGenMEvere7h3RdS30Hljk1E1qDPN5bFTdK5f9v95KvDrFUgXqGN+NXks/Kw6cPc8IxF ZZOARptw0oXdNU3SuUzJnl+OeHvdsyAh2UNELMF/i68AXQVsbiJUcUK1o6hSRA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764791713; a=rsa-sha256; cv=none; b=I2VoQogLBlZcctAB/K+PkZyCpSzXOvyJ+IcCuASmnOPZWgARmFEAeZ4NnbiX6bRjWKSEKS j3aQDdubeRgg1TAm91aSlLn4V1wGVuUE/Vgl6TkY/PzQc8OJ2wLcSk2blG7mX7Lny1uunJ dsDK06Y/4OQZ+pjNx9glIYCDOH/cZnko3tpiBIDze1nBORY1d44VK5Qe17mEMSPV5zFmes Gzxh5Z5WMeYzQyMIaPhN0hEp2j0wq7uffG1D3pcl6bAAJ0detOBlbHHEBuKmkeERn/uSWz 8G9dPfRUi8HpwgcXN9YyYTh1Prf3hOWuXujzUY0DVdGj/iFm0CJG2OPmLYXBpg== 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 4dM7f92dPbzs05 for ; Wed, 03 Dec 2025 19:55:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 29b65 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 19:55: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: b10ff7ed37a9 - main - LinuxKPI: 802.11: move ieee80211_offload_flags List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: b10ff7ed37a9b891bec7e1093e44fa7abb2054b4 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 19:55:13 +0000 Message-Id: <693095a1.29b65.6fd484b0@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=b10ff7ed37a9b891bec7e1093e44fa7abb2054b4 commit b10ff7ed37a9b891bec7e1093e44fa7abb2054b4 Author: Bjoern A. Zeeb AuthorDate: 2025-12-03 00:58:03 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-03 19:54:43 +0000 LinuxKPI: 802.11: move ieee80211_offload_flags Move the enum and leave a comment on the struct member for the vif about the type. No functional changes. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/compat/linuxkpi/common/include/net/mac80211.h | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index ea9797befe58..6e2f3f2d8781 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -824,11 +824,17 @@ struct ieee80211_vif_cfg { uint8_t ap_addr[ETH_ALEN]; }; +enum ieee80211_offload_flags { + IEEE80211_OFFLOAD_ENCAP_4ADDR, + IEEE80211_OFFLOAD_ENCAP_ENABLED, + IEEE80211_OFFLOAD_DECAP_ENABLED, +}; + struct ieee80211_vif { /* TODO FIXME */ enum nl80211_iftype type; int cab_queue; - int offload_flags; + int offload_flags; /* enum ieee80211_offload_flags */ enum ieee80211_vif_driver_flags driver_flags; bool p2p; bool probe_req_reg; @@ -945,12 +951,6 @@ struct ieee80211_low_level_stats { uint32_t dot11RTSSuccessCount; }; -enum ieee80211_offload_flags { - IEEE80211_OFFLOAD_ENCAP_4ADDR, - IEEE80211_OFFLOAD_ENCAP_ENABLED, - IEEE80211_OFFLOAD_DECAP_ENABLED, -}; - struct ieee80211_ops { /* TODO FIXME */ int (*start)(struct ieee80211_hw *); From nobody Wed Dec 3 19:55:14 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM7fC0M6Vz6Hhng for ; Wed, 03 Dec 2025 19:55: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM7fB441Bz46jf for ; Wed, 03 Dec 2025 19:55:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764791714; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SamLI61XF9m1wThqAhYxaemT164bJKyiMRzVXOQq3II=; b=TtCHzOo75Ne1h6hoobB6PccxMGBQldCQQKSaFTp7XyJZ0DlDcw594/tKa8NyHr8aOC0iX/ nr6aGDWzPVrGcPevff+XuO0F0qVSpaO0yHj9HUbakx6Jv/qc8kdLi8kNNG62LNC8Iz+cFC cwgSD8UNmtKMijd5l1dEqryREtf2A9WV4+jRmEQJeGn1w0IF5YD4FOIrPM0XPO2JcDBUK/ hlwodHfC+1c+oxdwvKTOBNaEHu3ZdGV6Fvp2KhEiy+p/meUV/vZ6dQTgJw7yCd7F0CqQsv yDmvZo/PyG1kV+DplmUB2IfDLp6S6FBw/hWLNb8TINUkvTg/coJJfPGEL5Rx3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764791714; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SamLI61XF9m1wThqAhYxaemT164bJKyiMRzVXOQq3II=; b=tZ/8AlAX/l6Af2HHQe5WB4JB7UOBPGvY3a+LZ/Q1IOCVTVJnUBOEU9kxsfuAfr5TBzvQP5 MV/VEJ3PrXi9omNV73AK/taRf4z54c6WB+iAmSSa0Vt/vLfv/Md2s/esemMfIXpxU5sfT/ JJAl1vAPhJa8MFam3Qu4Ds3V5SP40VRnC3ID+sznwJMBEsE8VVkUWf9jfVwGcc+x6968Sm juK0KC+PGAn8tAE2UcGbOj5NsG8nL3MGrDF2FkaoIRU5+l3QzkrEKRDUhdUl15LBMiTIUo IwIoslec/Gy0hhXUSHUgYWwIERuv1bL70ZbaNu/G7CF9S0a7d+42TyuMVThL3w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764791714; a=rsa-sha256; cv=none; b=BLrjP/5zimCIEoPotCCkaqWeYn0wSGxXCEEVMEgdwpHiFb4M06HStjYTw5Uq27JbdicNjF 787zfpXiRPPVQR4gWz7LzMmUFgMxXR6ENP/rPTXINgJM/RmRtVbDT8juXzPKf2aZgMDK+Z NrX0JYYZ3xRrNAC2KY+liYJ91sFcRjtjClgU/tH5BFdPYZkpu8xWKSHnqwo258Mjtt3YsL 3dR3miLZhacgMW0gJ8OQCWhDA8uWfuP3OW3HJTkXE7h5Q/OCzlTSN9k6IikjmiS5HinPgX iGyYyKrZ+FXYmd2s2af/jiVaWd16Y/jVeG6UiCaJcBGw4r6C5kqQYxxuft40KA== 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 4dM7fB3RZ6zs2N for ; Wed, 03 Dec 2025 19:55:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 29ebe by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 19:55: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: 51c73fc5f5dd - main - LinuxKPI: mt76: depend on CONFIG_NET_MEDIATEK_SOC_WED List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 51c73fc5f5dd95c6a0e3d232091a732a14c7ecc9 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 19:55:14 +0000 Message-Id: <693095a2.29ebe.d579fc0@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=51c73fc5f5dd95c6a0e3d232091a732a14c7ecc9 commit 51c73fc5f5dd95c6a0e3d232091a732a14c7ecc9 Author: Bjoern A. Zeeb AuthorDate: 2025-11-25 17:20:50 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-03 19:54:44 +0000 LinuxKPI: mt76: depend on CONFIG_NET_MEDIATEK_SOC_WED If CONFIG_NET_MEDIATEK_SOC_WED is not set then be silent; if CONFIG_NET_MEDIATEK_SOC_WED is set we will enable logic or rather te pr_debug("TODO") calls for now. Spsonsored by: The FreeBSD Foundation MFC after: 3 days --- .../common/include/linux/soc/mediatek/mtk_wed.h | 28 +++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h b/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h index 9f3a1ee4c139..2b9c6ae4911e 100644 --- a/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h +++ b/sys/compat/linuxkpi/common/include/linux/soc/mediatek/mtk_wed.h @@ -14,6 +14,7 @@ struct mtk_wed_device { #define WED_WO_STA_REC 0x6 +#if defined(CONFIG_NET_MEDIATEK_SOC_WED) #define mtk_wed_device_start(_dev, _mask) do { pr_debug("%s: TODO\n", __func__); } while(0) #define mtk_wed_device_detach(_dev) do { pr_debug("%s: TODO\n", __func__); } while(0) #define mtk_wed_device_irq_get(_dev, _mask) 0 @@ -29,7 +30,6 @@ struct mtk_wed_device { static inline bool mtk_wed_device_active(struct mtk_wed_device *dev __unused) { - pr_debug("%s: TODO\n", __func__); return (false); } @@ -42,4 +42,30 @@ mtk_wed_get_rx_capa(struct mtk_wed_device *dev __unused) return (false); } +#else /* ! CONFIG_NET_MEDIATEK_SOC_WED */ + +#define mtk_wed_device_start(_dev, _mask) do { } while(0) +#define mtk_wed_device_detach(_dev) do { } while(0) +#define mtk_wed_device_irq_get(_dev, _mask) 0 +#define mtk_wed_device_irq_set_mask(_dev, _mask) do { } while(0) +#define mtk_wed_device_update_msg(_dev, _id, _msg, _len) -ENODEV +#define mtk_wed_device_dma_reset(_dev) do { } while (0) +#define mtk_wed_device_ppe_check(_dev, _skb, _reason, _entry) do { } while (0) +#define mtk_wed_device_stop(_dev) do { } while(0) +#define mtk_wed_device_start_hw_rro(_dev, _mask, _b) do { } while(0) +#define mtk_wed_device_setup_tc(_dev, _ndev, _type, _tdata) -EOPNOTSUPP + +static inline bool +mtk_wed_device_active(struct mtk_wed_device *dev __unused) +{ + return (false); +} + +static inline bool +mtk_wed_get_rx_capa(struct mtk_wed_device *dev __unused) +{ + return (false); +} +#endif /* CONFIG_NET_MEDIATEK_SOC_WED */ + #endif /* _LINUXKPI_LINUX_SOC_MEDIATEK_MTK_WED_H */ From nobody Wed Dec 3 19:55:15 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM7fD0D33z6Hhw8 for ; Wed, 03 Dec 2025 19:55:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM7fC4VGfz46v7 for ; Wed, 03 Dec 2025 19:55:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764791715; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v3euOSdTJ/8O3tOEsgOGQ1pOhKQd0I6UB5ZoJs55UkI=; b=RKU9c/rzw+Eb2QAYTCGrfEdaazvBHOF89orwoFkVRmAsoM80kaKHc+KLTo0fe83b+Fq7Ru 8BRLDje7PuFc2lEJ8sLG1IAD2Le9fEbTKLlSnlw3dJPLvPXg++nRPioIYmU3TWTEsxQNYI mJlnofcaQaaww/RNLHJEuXiDJyvG2au3qhJ8inpN/bkiBG1E9YU+EWBZ3eG7s6VcbFAdQb RcslDcQQd2xgfm+8vSUwcR7YCm3DJu32VxERaHp6Yb/Y2SaVP99oYaBMh8oyYgT659OZ1F b8CMcWVsTiady5iKQvKklEP+Rj95Dm0xVy/HCBgrTonHv8LXLFOro4qgmpZV6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764791715; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v3euOSdTJ/8O3tOEsgOGQ1pOhKQd0I6UB5ZoJs55UkI=; b=lfib9VaOxtWzaNtnWcEzpyDMl80q3a8J8x3sPubuLK2cSwwdJjftpRCno9wRgUu/4vYfLr AMr/sMwZPSt0EaVANZooam7BuNEOxWVnAJH/ctG5Bl//Hs0JN5GXw0QQ79ph3q/ZtFXeLP TAzPm/85rrdeOcZnY/j59PUXTYVwcj+RxY9cusWvcHzpilnuhhGOjdiD0ZYlrrMCScx7L2 BFGkHSog0SzHyqP00TACx5LoJHmbt0+TZ+/Sgbd3obHt+kLdxRMeERQZabn0sQMeDiANKN OpW1U5S7sbJqurV40YuAKmM9K1G8Rrnhv7ce0DeGyi7FgKCopGvlFaCm8Ow4bQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764791715; a=rsa-sha256; cv=none; b=n1mRVRXTvgg4S6hBnWqJ0qpB1naJQkVJkBFZld/U63wVphnE9CrMfHaEBHjWYx22104Ho6 vSZ8Rnldq1OR6/9Z88jynjY8Rby5vMcgqfSL55N3U9bpXjiC9R7djfdhoPH/RBcs9Yd/17 VCyFbzR0/6Lyu7klGPfOS2JV0ssojLB1TzWAq3C4dytE+KipBsKtvyuv2P/AaYbc8JvX7J yeaJ2N7nKsVx8/nJRjPNCcf35qjBDAvtpxbsuwAceuoQm7AxJBpphZ6e2FNNYAOwPfqDjR WeFGBxi3Ihqe0gT383jpQbKLf/dsCi5A04XIvl3/bLE9VkRwVcnmRcARYTxIiA== 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 4dM7fC45f0zsVd for ; Wed, 03 Dec 2025 19:55:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2af13 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 19:55: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: 87aa494dfca7 - main - mt76: set appropriate CONFIG options for the module build List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 87aa494dfca73204516799033821ab1db184933f Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 19:55:15 +0000 Message-Id: <693095a3.2af13.1060047b@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=87aa494dfca73204516799033821ab1db184933f commit 87aa494dfca73204516799033821ab1db184933f Author: Bjoern A. Zeeb AuthorDate: 2025-11-25 17:16:49 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-03 19:54:44 +0000 mt76: set appropriate CONFIG options for the module build Always set CONFIG_ARCH_DMA_ADDR_T_64BIT as it is true for all architectures we support. Add an option for CONFIG_NET_MEDIATEK_SOC_WED, which we currently do not yet support. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/modules/mt76/Makefile.inc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sys/modules/mt76/Makefile.inc b/sys/modules/mt76/Makefile.inc index 35a8e34f14d3..44aa94c954a8 100644 --- a/sys/modules/mt76/Makefile.inc +++ b/sys/modules/mt76/Makefile.inc @@ -6,11 +6,15 @@ COMMONDIR= ${SRCTOP}/sys/contrib/dev/mediatek/mt76 WITH_CONFIG_PM= 0 WITH_DEBUGFS= 0 +WITH_SOC_WED= 0 # Other SRCS+= ${LINUXKPI_GENSRCS} SRCS+= opt_wlan.h opt_inet6.h opt_inet.h +# This is true for all architectures we build for. +CFLAGS+= -DCONFIG_ARCH_DMA_ADDR_T_64BIT + # Helpful after fresh imports. #CFLAGS+= -ferror-limit=0 @@ -22,8 +26,13 @@ CFLAGS+= -DCONFIG_PM=${WITH_CONFIG_PM} CFLAGS+= -DCONFIG_MAC80211_DEBUGFS=${WITH_DEBUGFS} .endif +.if defined(WITH_SOC_WED) && ${WITH_SOC_WED} > 0 +CFLAGS+= CONFIG_NET_MEDIATEK_SOC_WED +.endif + CFLAGS+= -I${COMMONDIR} CFLAGS+= ${LINUXKPI_INCLUDES} CFLAGS+= -DLINUXKPI_VERSION=61700 + # end From nobody Wed Dec 3 19:55:16 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM7fF15TLz6HhVD for ; Wed, 03 Dec 2025 19:55:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM7fD5Q6Rz46k9 for ; Wed, 03 Dec 2025 19:55:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764791716; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gteslZzMTf0javO8InDHNO3kBvh9MlF0T5/2RPPUPrQ=; b=d242nHEFKlwBbzFC+Dk108TdPE9mi3vNhB25KfWMdtKxSgr88R3IWFgxcQmVlW67c/hb3g dZIoofUWoIs5xtxpz+mFIH7kN1/i4GuE2A8T8X5/T/y1aDCPCC5WmXhp+WezgYUKShgFlq JeQlI7qF9Xk/s0akisy05H9R7Nz8Z8Fz4yuTUU0xCgQy8C43KBHgmu6Ji3MjFC83SeEAH0 j5CZ8rwW/rEXTYmzLS0o30bgdBIEqVXmk3yU36A52TNk9l6C3htjrqIJuIMPlMAR/4Dxv6 tMFRekRyiJ+UI5iA2OF5F5Lwg5YG07zDHTEb5r8oVL4SLMknwATeNtAh57puOA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764791716; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gteslZzMTf0javO8InDHNO3kBvh9MlF0T5/2RPPUPrQ=; b=JbwlKRy7m06JUQr84Oi6bG9T5qkLafuPR2m+8DjMm/o9dM9RxQN7MsQ8/dIaY4OrsqpB5g 47xwek0nE1y/vjDLHVpquXtU3gpBVAbzLAkaanS7QFYmf2bHjdxCutxdZkV9Rz2Q7IaIih KJpSfMLT1sYTH6RmOd1SGAsVJEIcRZ8G+Vst5rm6u52FBNovUc933G0MdoVkNCL6n+zXqV wSx8mlkHYlVKWw8VKq37fhgx8CQxIA40Ho+IPvbR1iydq7ngRhKnH4DhRbEfzImxM/Tf7h 5wu4bQP+Ja9WXyQ8FNPFfnvnhYHBHwMvu1AV3QvBRegPsvmZ75k+XeIzh3rMJQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764791716; a=rsa-sha256; cv=none; b=w6MVjH4t3xO/2Rk4uZnlJREl04SMY9Uhzdw4v3KXN9dIb9bsnZcHKeKG5n3MguDfUTCtqq /Av99sK9O5I9u5AnsCnVxxNTQvvngJDvMbzq3pxg39w1Wxg2K6lBncOyLKtzjVo+xIMnHX sMzPN7rtIOej4DAatAhD1WPhKaf7weC9DgCAK9BRKxM/JoVYERg0LIyVc7LzqtZZuU/Vhi tkNIFatW6YdIx9JnhrBc3JcjI43dCdVmBdH71+1GluCWGIrix1cZyFr2rX3cgQLSeJJTtn Vk+m6nsXwz43TiumqgOT+nXMC4fb/sxo3nwrInJRaM7jAqlx2JXO7eqBZxmFVg== 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 4dM7fD4rtbzs06 for ; Wed, 03 Dec 2025 19:55:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2acb2 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 19:55: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: c67fd35e58c6 - main - mt76: ieee80211_is_first_frag() operates on the seq_ctrl field not on fc. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: c67fd35e58c6ee1e19877a7fe5998885683abedc Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 19:55:16 +0000 Message-Id: <693095a4.2acb2.68fc6a6b@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=c67fd35e58c6ee1e19877a7fe5998885683abedc commit c67fd35e58c6ee1e19877a7fe5998885683abedc Author: Bjoern A. Zeeb AuthorDate: 2025-11-29 00:51:36 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-03 19:54:44 +0000 mt76: ieee80211_is_first_frag() operates on the seq_ctrl field not on fc. Pass the correct field to ieee80211_is_first_frag(); otherwise the results may vary. Sponsored by: The FreeBSD Foundation MFC after: 3 days X-To-Upstream: yes --- sys/contrib/dev/mediatek/mt76/mac80211.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/contrib/dev/mediatek/mt76/mac80211.c b/sys/contrib/dev/mediatek/mt76/mac80211.c index 927d8519104f..d2ace8870451 100644 --- a/sys/contrib/dev/mediatek/mt76/mac80211.c +++ b/sys/contrib/dev/mediatek/mt76/mac80211.c @@ -1340,7 +1340,7 @@ mt76_check_ccmp_pn(struct sk_buff *skb) * All further fragments will be validated by mac80211 only. */ if (ieee80211_is_frag(hdr) && - !ieee80211_is_first_frag(hdr->frame_control)) + !ieee80211_is_first_frag(hdr->seq_ctrl)) return; } From nobody Wed Dec 3 19:55:17 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM7fG1HqYz6Hhl3 for ; Wed, 03 Dec 2025 19:55:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM7fF62shz46q5 for ; Wed, 03 Dec 2025 19:55:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764791717; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=912XHzbbQ1alSOKoLHwNw4QTwFzXwuKfjs4jwHNXtD4=; b=Tu7iNTsyoSG7nkWdNksdmF14ppz8ImXjD3ommyLoiNIRgxCQ7XhcWU6wpETJ/OUhsfUi+a fE0wZFnSTdK/YUQsUJ4bU1ndlhET7dViu2mdYvgM+65VT1ozi8u1F6TET1n+jFLONe5cjn G29DRp23WWwz1PrXfOC6T6iEMVBY/7cGoPJMOpO4Fp6rUhaZfHvr1/AZ3+U/1M5Asu1vAX 1wLvvzpSFfwD441y9STUhQ5bj8lTHfstPd/odugyakFa0jng96sjV/g5BN8ZORxRVB7OUW DhF4AnR/fqZNnAy0bciUspWwxaXUU1NqIZU1PAmZE3TL/UeF1MYYOZd6otl4bw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764791717; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=912XHzbbQ1alSOKoLHwNw4QTwFzXwuKfjs4jwHNXtD4=; b=edO/rpv0VjeOzALV1OdzBSyQHBy8UiLL2/dG9wVlOkQaG0CB+bmz6KJYtdqbsDfzmD1UG4 J/UNN1AeWuBB926jyluHcmUXghWEH9oZCEy1QCvl2PHWlQSowozOtzqO4or1eRHkgvFG6J RHbIplYIM6mRGScf67SqyLTCDWR+Ip2VVlOuWo5jGXGT1uPS8eg9NIRplo13VspsNth66g P2pg5d3rTRtu/UxZkR/XkSV6cwKL3RdCNOttykfoUdVrCT+iPcgCRBw8RTQt7HH58P0z7a UuubS3RKYFnaRFEPGZ3t40DDRkp0iGZnqw+7W3UZT5una2rXMMbacYAZqxlcbQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764791717; a=rsa-sha256; cv=none; b=kFxrWBoM7khL1TNlTUuBcpmDoP3NI8c8R8xe2A5gHaIKxTmsFnUFSKgEBoevOPUZW329tH V81ypiTT/KEHWb6I/PmDsgKhxnahw8OWKeSiXPVYro1+EsoXygpEfjA/VODTZOmDZBNZWl DXaY1p+I4D1INhCs8ut9bTFACs2ssAJYF7Z9JfrVt9GFqQHNPlyJWrPbxNyZWlHe0vnV+h 5+vKo0Y2CepjlJlP77B2DFKz6u6G6hXgeVSt/2EobNI263+y212EZla/XDenN8Rj6OoKqf /lDSTSGU/9/Cje/EY5PHNfox5+w5d3rQaFE5Cvqc4+eJVeIwuAtWyh27ThDoCg== 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 4dM7fF5bHxzsSD for ; Wed, 03 Dec 2025 19:55:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 29ec2 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 19:55: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: 9492230fd3d1 - main - mt76: util.h: extend worker name List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 9492230fd3d1e58696e9fd99cb9680b27bf1d424 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 19:55:17 +0000 Message-Id: <693095a5.29ec2.5d8349fa@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=9492230fd3d1e58696e9fd99cb9680b27bf1d424 commit 9492230fd3d1e58696e9fd99cb9680b27bf1d424 Author: Bjoern A. Zeeb AuthorDate: 2025-12-03 01:01:28 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-03 19:54:44 +0000 mt76: util.h: extend worker name In mt76_worker_setup() add the "name" argument to the description for the worker thread. That way we have a chance to keep them apart. While here, rename a variable and shorten the the (c)/SPDX section according to new style. MFC after: 3 days --- sys/contrib/dev/mediatek/mt76/util.h | 39 ++++++++---------------------------- 1 file changed, 8 insertions(+), 31 deletions(-) diff --git a/sys/contrib/dev/mediatek/mt76/util.h b/sys/contrib/dev/mediatek/mt76/util.h index f6c0ecaf33e6..73a784fe2707 100644 --- a/sys/contrib/dev/mediatek/mt76/util.h +++ b/sys/contrib/dev/mediatek/mt76/util.h @@ -1,30 +1,7 @@ -/*- - * SPDX-License-Identifier: BSD-2-Clause - * - * Copyright (c) 2020,2022-2023 Bjoern A. Zeeb - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. +/* + * Copyright (c) 2020-2025 Bjoern A. Zeeb * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * $FreeBSD$ + * SPDX-License-Identifier: BSD-2-Clause */ #ifndef _MT76_UTIL_H @@ -69,23 +46,23 @@ mt76_wcid_mask_clear(u32 *mask, u16 bit) /* See, e.g., __mt76_worker_fn for some details. */ static inline int -mt76_worker_setup(struct ieee80211_hw *hw, struct mt76_worker *w, +mt76_worker_setup(struct ieee80211_hw *hw __unused, struct mt76_worker *w, void (*wfunc)(struct mt76_worker *), const char *name) { - int rc; + int error; if (wfunc) w->fn = wfunc; w->task = kthread_run(__mt76_worker_fn, w, - "mt76-worker"); + "mt76-%s", name); if (!IS_ERR(w->task)) return (0); - rc = PTR_ERR(w->task); + error = PTR_ERR(w->task); w->task = NULL; - return (rc); + return (error); } static inline void From nobody Wed Dec 3 19:55:18 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM7fH30VWz6HhwG for ; Wed, 03 Dec 2025 19:55:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM7fG6wk8z46n2 for ; Wed, 03 Dec 2025 19:55:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764791719; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=II1MKJrdWypp5JbdX2MNPIQIDv7o5BpuZeL7+uVMW0c=; b=M9gFV/p0bJerovk6LsJQMxDyM/KXbcxNmYIUt1h3E+X54mO/+EH5C4/LA3K35svh1tA72Z LEg1fYw5YWVxgb2ScGDSNkvxRzPvbo/FQN8eAhDw0vQ6KfnBDZgo6RDiEcAP90eOYr0m+J 8eL4JGl5oLwfjRgA8R/PT8bhDHQsn04HqJ8gWIOF1Obod6XEb8kj4hD/WSMmGLiRxOwHv4 Qs3gzoCTAjDEuPip+cUMjUTm7OHkmVsXNIekZCAAgMPz+LLltZZa+dXBudDRYSXFSh1pkE fH5S99MFbJs2W8c7zmjTWXwgwNVZu+inPgCBhB0Ley0EhhMlMMY2nPgwUzUCxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764791719; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=II1MKJrdWypp5JbdX2MNPIQIDv7o5BpuZeL7+uVMW0c=; b=gQt7KM1uHdczTvBjKrKsYGloZnjxBjR9lKPxU6+ZJNn4ieO/TTLLs0DMgdrF0HB82NoUmD txA1jACX1zFiZDs/w7vkqdTHk3rPW7R3d3x5ITam1u9ca8xSZpONkMIoC9hb9sovq7j4ov wNfY4aecTo37a9g+eVx5+hHSh+oakpomjHweq9iqoCpwAR0Y77Y+IFM2ffqZuUEDFZ/8XE vhRD6PY7CZpvD1hFZhb+jXZT4DQnA4/uJwZzQSIT/4Asf0nADdnJE4Rttp6nXy6qyFKrh8 N8jF+iSo3XixMGt61WY3WDewrwoNRjE+RMgiI/4Wwpfj6Ac4TtvYaFxe/UGkRA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764791719; a=rsa-sha256; cv=none; b=pDuk/D4UWKYQrkRjhmtuaTlfBAZIUIzQsUqQfhbn845U5teCvcna8WStYVL1cS33FXtyZZ N0uTLIcZTTNCK+gvmhV8LfTOU9iPX/KxpSY8GTgUBxOGLdYUKCsmiUhMxU0fT4eNFsxuIU ambReYpd7trVLmApNIBRcCPvLqDY2JZ6pYlGW2ryAXAECWDijS/2dMJJrRxrOzw0ymHtt9 EH0YceVkns35yW9Lb7iBCXeZgotvTcxQtTFVxHLsc3TnuQIn+Ix0zJ+lMfRF7345GRerRL IpJWTBWdM8sY7HIPwYJQIiC9A2uLns+Jz5btxltrcJC9TbSdUFyqNcLVNiBDfw== 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 4dM7fG6TJRzs08 for ; Wed, 03 Dec 2025 19:55:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2bb92 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 19:55: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: 853e0440c97a - main - mt76: add LINUXKPI_PARAM_PREFIX for module_param* List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 853e0440c97a4a1797edd6d653fba4398dc885e8 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 19:55:18 +0000 Message-Id: <693095a6.2bb92.5d561dbe@gitrepo.freebsd.org> The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=853e0440c97a4a1797edd6d653fba4398dc885e8 commit 853e0440c97a4a1797edd6d653fba4398dc885e8 Author: Bjoern A. Zeeb AuthorDate: 2025-12-03 01:05:05 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-12-03 19:54:45 +0000 mt76: add LINUXKPI_PARAM_PREFIX for module_param* In order to not overwrite sysctl/tunables under compat.linuxkpi we need to prefix the module_param* names with a per-driver/file designator to make them (more) uniq. Add the FreeBSD specific LINUXKPI_PARAM_PREFIX defines for that where missing in mt76. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/contrib/dev/mediatek/mt76/mt7915/coredump.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7915/eeprom.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7915/mcu.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7915/mmio.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7921/mcu.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7925/mcu.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7925/pci.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7996/coredump.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7996/mcu.c | 4 ++++ sys/contrib/dev/mediatek/mt76/mt7996/mmio.c | 4 ++++ sys/contrib/dev/mediatek/mt76/usb.c | 4 ++++ 11 files changed, 44 insertions(+) diff --git a/sys/contrib/dev/mediatek/mt76/mt7915/coredump.c b/sys/contrib/dev/mediatek/mt76/mt7915/coredump.c index 5daf2258dfe6..8c9a69837c86 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7915/coredump.c +++ b/sys/contrib/dev/mediatek/mt76/mt7915/coredump.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2022 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7915_ +#endif + #include #include #include diff --git a/sys/contrib/dev/mediatek/mt76/mt7915/eeprom.c b/sys/contrib/dev/mediatek/mt76/mt7915/eeprom.c index 0df2bd93c82e..9214286ca000 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7915/eeprom.c +++ b/sys/contrib/dev/mediatek/mt76/mt7915/eeprom.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2020 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7915_ +#endif + #include #include #include "mt7915.h" diff --git a/sys/contrib/dev/mediatek/mt76/mt7915/mcu.c b/sys/contrib/dev/mediatek/mt76/mt7915/mcu.c index f83f4eaa8a24..17c9c261960f 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7915/mcu.c +++ b/sys/contrib/dev/mediatek/mt76/mt7915/mcu.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2020 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7915_ +#endif + #include #include "mt7915.h" #include "mcu.h" diff --git a/sys/contrib/dev/mediatek/mt76/mt7915/mmio.c b/sys/contrib/dev/mediatek/mt76/mt7915/mmio.c index 83a828b7c578..ace2441d41a9 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7915/mmio.c +++ b/sys/contrib/dev/mediatek/mt76/mt7915/mmio.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2020 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7915_ +#endif + #include #include #include diff --git a/sys/contrib/dev/mediatek/mt76/mt7921/mcu.c b/sys/contrib/dev/mediatek/mt76/mt7921/mcu.c index 4b95d7c0a225..57b9de7a6659 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7921/mcu.c +++ b/sys/contrib/dev/mediatek/mt76/mt7921/mcu.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2020 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7921_ +#endif + #include #include #include "mt7921.h" diff --git a/sys/contrib/dev/mediatek/mt76/mt7925/mcu.c b/sys/contrib/dev/mediatek/mt76/mt7925/mcu.c index d62d461db699..77e494a4ece0 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7925/mcu.c +++ b/sys/contrib/dev/mediatek/mt76/mt7925/mcu.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2023 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7925_ +#endif + #include #include #include "mt7925.h" diff --git a/sys/contrib/dev/mediatek/mt76/mt7925/pci.c b/sys/contrib/dev/mediatek/mt76/mt7925/pci.c index 3417fc5db6a9..e34f99abd16c 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7925/pci.c +++ b/sys/contrib/dev/mediatek/mt76/mt7925/pci.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2023 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7925_pci_ +#endif + #include #include #include diff --git a/sys/contrib/dev/mediatek/mt76/mt7996/coredump.c b/sys/contrib/dev/mediatek/mt76/mt7996/coredump.c index 303d6e80a666..433846d2319e 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7996/coredump.c +++ b/sys/contrib/dev/mediatek/mt76/mt7996/coredump.c @@ -1,6 +1,10 @@ // SPDX-License-Identifier: ISC /* Copyright (C) 2023 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7996_ +#endif + #include #include #include diff --git a/sys/contrib/dev/mediatek/mt76/mt7996/mcu.c b/sys/contrib/dev/mediatek/mt76/mt7996/mcu.c index 5099aa2004b7..443cd21a32b8 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7996/mcu.c +++ b/sys/contrib/dev/mediatek/mt76/mt7996/mcu.c @@ -3,6 +3,10 @@ * Copyright (C) 2022 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7996_ +#endif + #include #include #include "mt7996.h" diff --git a/sys/contrib/dev/mediatek/mt76/mt7996/mmio.c b/sys/contrib/dev/mediatek/mt76/mt7996/mmio.c index bb82f5807ff8..05a3d9019167 100644 --- a/sys/contrib/dev/mediatek/mt76/mt7996/mmio.c +++ b/sys/contrib/dev/mediatek/mt76/mt7996/mmio.c @@ -3,6 +3,10 @@ * Copyright (C) 2022 MediaTek Inc. */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt7996_ +#endif + #include #include #include diff --git a/sys/contrib/dev/mediatek/mt76/usb.c b/sys/contrib/dev/mediatek/mt76/usb.c index f9e67b8c3b3c..11f9d2808f15 100644 --- a/sys/contrib/dev/mediatek/mt76/usb.c +++ b/sys/contrib/dev/mediatek/mt76/usb.c @@ -3,6 +3,10 @@ * Copyright (C) 2018 Lorenzo Bianconi */ +#if defined(__FreeBSD__) +#define LINUXKPI_PARAM_PREFIX mt76_usb_ +#endif + #include #include "mt76.h" #include "usb_trace.h" From nobody Wed Dec 3 20:02:45 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM7ps17ywz6HjDy for ; Wed, 03 Dec 2025 20:02:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM7ps0b6Zz3Cdh for ; Wed, 03 Dec 2025 20:02:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764792165; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Gxtxi+5hIT7NZ14BWSgdi2wQ8iIW+llt+/eAg1QLJZU=; b=r3L1KUFzRhV0PD8BOpYGSNnsMo68RPV5prLRl0B4LBE/wNFWbANYj41bz4a2UEc36zYIr/ w5SzT6g+djQKcz7376chpgJMPeJIpFn3Qm0l0RTfX5xzZgIJ3iwq78Ej/1fE8CwhTc/Rq0 K5DWaHYCD339MlYr3BSLgxsfohA+Vs38iIFAeL7BgHyz8cyzJTpRO2OemKBQ2WHE3ioTpi 6hbYvBMXFjImD5zoanpq5oPQaRM21gtusrZ0HDHaKdeBxYQRcFQJ61Yx7pDnizJGNTnGyL bnXIEjEhxJsGvyq/phOVUeAP6uluPWfhPHFuEkNRsendXuEmcNlbUpXHIx6MkA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764792165; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Gxtxi+5hIT7NZ14BWSgdi2wQ8iIW+llt+/eAg1QLJZU=; b=s4Vv+CHyJzwQsQyCdQ0zqMwNYzTLesVMkKWoesUB8adS/77o9MoQxWVh/Dx4ubBXX72vUu r2VGvv3yfXU7QnEpLmJ7DNPTar7h7cs75Ve2kO4wBQNQf7mcV+qGiDBrrtJBiYlw6tAtqZ dlySNssQVIY3YeCrOKMV9ArTh4q7xgdIrusre93uAXKNoVU8NZsi3TSiI7qyVIjMR+aqfe UUA2RLZDYMr/g+mSxcvg5YkYgWDHxVgWRBScpNbqsoVYLDphiu9YHcUiGSe3JxYlBkrh0l ULHgnaAgEEbtN1f2xt7B+PEXL0NvYV64UbRFX4HZz1gypf4F/+dphsU6beFpLg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764792165; a=rsa-sha256; cv=none; b=S6PoyLWs+0DaiXfTR+5JAh4cK2XS4sGYCx20PyW0Oyx1MHz25J5Ug53F1DQsDKgsQ1V8ub KarkrwsbsR94wghUR3a7bsSwRlKFphL1GmSXGfh+oolt5lhcxtnT6ux2Zz5ncrskFlJ/jc unSIWM0gdQnLa2s+tEWyzGMSePa8ZElYi2E8YonHu2xlpZ4ggqPzxlYjwA1bjITS5cCOAo zQaKfLrYII5LC5P3VvzHp8V7i35utFJj2dAKhvoGPxA3FGXqwk7CDD3oTHW10hVQCZb37W pW0lUppHiMNNVnYAXQchuxRHyzWXJPHkayyTCwEgRF8AhxDgiO6SIxRaolOUog== 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 4dM7ps05pxzsNr for ; Wed, 03 Dec 2025 20:02:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2b039 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 20:02:45 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Robert Clausecker Subject: git: 3d71ce92eae9 - main - libc/stdc_has_single_bit.c: fix gcc warning (-Wparentheses) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: fuz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3d71ce92eae9f1417f35a0d07912858fd8f6fa0b Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 20:02:45 +0000 Message-Id: <69309765.2b039.1219894e@gitrepo.freebsd.org> The branch main has been updated by fuz: URL: https://cgit.FreeBSD.org/src/commit/?id=3d71ce92eae9f1417f35a0d07912858fd8f6fa0b commit 3d71ce92eae9f1417f35a0d07912858fd8f6fa0b Author: Robert Clausecker AuthorDate: 2025-12-03 18:36:27 +0000 Commit: Robert Clausecker CommitDate: 2025-12-03 20:02:06 +0000 libc/stdc_has_single_bit.c: fix gcc warning (-Wparentheses) gcc14 is concerned that the operator precedence between - and & might be confusing. Throw in some redundant parentheses to make it shut up. The LLVM build was fine before this change. Reported by: Martin Filla Approved by: markj (mentor) MFC after: 1 month Fixes: 6296500a85c8474e3ff3fe2f8e4a9d56dd0acd64 Differential Revision: https://reviews.freebsd.org/D54057 --- lib/libc/stdbit/stdc_has_single_bit.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/libc/stdbit/stdc_has_single_bit.c b/lib/libc/stdbit/stdc_has_single_bit.c index e5f676265551..a448464b04d9 100644 --- a/lib/libc/stdbit/stdc_has_single_bit.c +++ b/lib/libc/stdbit/stdc_has_single_bit.c @@ -10,29 +10,29 @@ bool stdc_has_single_bit_uc(unsigned char x) { - return (x != 0 && (x & x - 1) == 0); + return (x != 0 && (x & (x - 1)) == 0); } bool stdc_has_single_bit_us(unsigned short x) { - return (x != 0 && (x & x - 1) == 0); + return (x != 0 && (x & (x - 1)) == 0); } bool stdc_has_single_bit_ui(unsigned int x) { - return (x != 0 && (x & x - 1) == 0); + return (x != 0 && (x & (x - 1)) == 0); } bool stdc_has_single_bit_ul(unsigned long x) { - return (x != 0 && (x & x - 1) == 0); + return (x != 0 && (x & (x - 1)) == 0); } bool stdc_has_single_bit_ull(unsigned long long x) { - return (x != 0 && (x & x - 1) == 0); + return (x != 0 && (x & (x - 1)) == 0); } From nobody Wed Dec 3 21:22:51 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dM9bH5FpXz6Hqcb for ; Wed, 03 Dec 2025 21:22:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dM9bH4LKwz3Qc8 for ; Wed, 03 Dec 2025 21:22:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764796971; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kTfp8yodhUpdjeJgdkr7Jj5NryFbsbeR7FBMLCNZMZk=; b=Dul8V9fWt387ouFo77Va9QxEbqEXLlXMFd3tOLiShrAlZI+8TYvSQs93ZsMWONzzMWLRWZ zQHDyX/uTnaIhew8GTJarkxckID/8P9wFhGdfRnpFW1Qv/B4oMf5sd3fsF68m00zjZZGF6 bBUM10XG3jB+Quu6y0dCr0lr+G+UGobUwdAM9eCHREQnteV/AgjY/K4tHUvlkaNweLYkSY fV1gflHmwnKybIkxXGfzNKkEx0wjiXEKF96t+PyNqoj/hPcXD/dw78Xiw2NrqZjTVHCU9C S0UZK5ymIpLKbSyub2aDmcjaWZy3Jbl1AGKcQX1yI9cvW2OJIZp9HMd+Asq/zw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764796971; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kTfp8yodhUpdjeJgdkr7Jj5NryFbsbeR7FBMLCNZMZk=; b=KNHy2Ct+MCgoDC487ubb28uUwCAmghyBD9Gea7qNAvqL3sBQri21VgnedpV5td4KFKx+vr bmpwsrXhDRaVSIucXIOrJv5h57tUczSIOlCmBKF3MOXYO9g7FMjF/851ugKsMBxBDefEKg vVzlz9G+yhW6HDVncF2/kj2cwt6asdYNzAJ361UQqazHBXZZptvIgHt2J3F0hxr33/B6Qx RrXjUhiPw/rwV1qzaiCBeBMd56PpGczQ1QwhMwfN9S0VYdWFy582OGq08GoigZJn8CCexp EcXAycXhZ4E/sori2nheN7kiOGlMeDX2JPiMoy/zi6XemQhIyDdUx0m/GN5rrg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764796971; a=rsa-sha256; cv=none; b=NCc6arHLiPi7xLfkMfj7RUEDzoT3sxh5RTkYBy/yXVl5DZEnoh7ax0szYqsS3wa/I6CvU6 wjNSiJpyzirTtJbyCb27jC8SuqXyQEsVoTGJp6dKC70/ZKOzYhMj0/vm8QmFvEoRLBLHxR WjQaNZHnfUXFugMPJ9Tfa9N5pXOk6S+zvdnBaE4rI+qqAm2gLAt47qutt0+y7KIbNePbXy iNSz61+cnpaZdj5armq9H+si/v/mxkTRIpk4Mp8iEsKTnc5crMhLqQipHLKwxSFUQ2tvBo XYl/xvOGI6GDlY53C5AoOsSxTUpHmPpIviXFe1jeWBClCKA/jtxQWkSGfnf1xg== 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 4dM9bH3gjZzvlM for ; Wed, 03 Dec 2025 21:22:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 32ad1 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 21:22:51 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John-Mark Gurney Subject: git: 1ba6fd3de531 - main - ichsmb: shutdown interrupts to prevent spurious interrupts after kexec List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jmg X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1ba6fd3de531a3e731d33e9ad376ce3fa602e866 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 21:22:51 +0000 Message-Id: <6930aa2b.32ad1.2f34da64@gitrepo.freebsd.org> The branch main has been updated by jmg: URL: https://cgit.FreeBSD.org/src/commit/?id=1ba6fd3de531a3e731d33e9ad376ce3fa602e866 commit 1ba6fd3de531a3e731d33e9ad376ce3fa602e866 Author: John-Mark Gurney AuthorDate: 2025-12-03 21:19:10 +0000 Commit: John-Mark Gurney CommitDate: 2025-12-03 21:19:10 +0000 ichsmb: shutdown interrupts to prevent spurious interrupts after kexec Obtained from: Hewlett Packard Enterprise Rebiewed by: jhb, jhibbits --- sys/dev/ichsmb/ichsmb.c | 11 +++++++++++ sys/dev/ichsmb/ichsmb_pci.c | 1 + sys/dev/ichsmb/ichsmb_var.h | 1 + 3 files changed, 13 insertions(+) diff --git a/sys/dev/ichsmb/ichsmb.c b/sys/dev/ichsmb/ichsmb.c index c5e9e2f1b9ed..e40a8a8a3886 100644 --- a/sys/dev/ichsmb/ichsmb.c +++ b/sys/dev/ichsmb/ichsmb.c @@ -703,4 +703,15 @@ ichsmb_detach(device_t dev) return 0; } +int +ichsmb_shutdown(device_t dev) +{ + const sc_p sc = device_get_softc(dev); + + /* Disable interrupts */ + bus_write_1(sc->io_res, ICH_HST_CNT, 0); + + return (0); +} + DRIVER_MODULE(smbus, ichsmb, smbus_driver, 0, 0); diff --git a/sys/dev/ichsmb/ichsmb_pci.c b/sys/dev/ichsmb/ichsmb_pci.c index e4d87fe1fed2..9ffb1de62dac 100644 --- a/sys/dev/ichsmb/ichsmb_pci.c +++ b/sys/dev/ichsmb/ichsmb_pci.c @@ -243,6 +243,7 @@ static device_method_t ichsmb_pci_methods[] = { DEVMETHOD(device_probe, ichsmb_pci_probe), DEVMETHOD(device_attach, ichsmb_pci_attach), DEVMETHOD(device_detach, ichsmb_detach), + DEVMETHOD(device_shutdown, ichsmb_shutdown), /* SMBus methods */ DEVMETHOD(smbus_callback, ichsmb_callback), diff --git a/sys/dev/ichsmb/ichsmb_var.h b/sys/dev/ichsmb/ichsmb_var.h index 7fb14804d3c4..8aeaf403781b 100644 --- a/sys/dev/ichsmb/ichsmb_var.h +++ b/sys/dev/ichsmb/ichsmb_var.h @@ -84,6 +84,7 @@ extern void ichsmb_release_resources(sc_p sc); extern int ichsmb_probe(device_t dev); extern int ichsmb_attach(device_t dev); extern int ichsmb_detach(device_t dev); +extern int ichsmb_shutdown(device_t dev); #endif /* _DEV_ICHSMB_ICHSMB_VAR_H */ From nobody Wed Dec 3 23:19:58 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dMDBQ3mp1z6J1gT for ; Wed, 03 Dec 2025 23:19: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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dMDBQ2zfbz3bBF for ; Wed, 03 Dec 2025 23:19:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764803998; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WTHRvwksD6FgEjbfE4luLHshz3n2yw10h0n9v5bsJ+0=; b=JS5LYDBGYbkYIIQ4JmM2ULG/qn54l0aU0FOIoBaylMo+u6tvg8fyz+yjuY+wdhVZ87L+56 PAaoo22hklktYPS2RVEx/8Rt8bXgmyv0xyY/UYaE9Pan9wP4OJC5a1fVPUcV/biwPgipAW 1DDQe0VycEuucESTpqU8W+IQ/z9EycIJ1QZ8T7IVxeN5WU3D9tWdacM13kqlQxDCVX0mrk LH/mMDPT67XD4qt80eXI12tha4tsW5b1qAw6/kTMnlzSO3M0sBSXwBiY8jS0WTthH0NFG1 m3e4wpBBeQJ3cFLF8Z5pT116roTdK3IP/yNt4g0j+QFSg0ztsi18cgJFgDYmGA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764803998; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WTHRvwksD6FgEjbfE4luLHshz3n2yw10h0n9v5bsJ+0=; b=HkiKe04sWpI3cTS0RID6gNUEdgVFHSKa/dtcmcrpEoq6ZOJKXzlh7MCSe0nprZ3Fi9G98c M2nPySbj9ZhH7Vqs4t5G6SuyrqAUZGo8wfthVLoaptgWF0N9h2D6WyScnpzScqxuxrm7A9 VzuzJvuwt5kjpnhnJJEJ7qxsyje1jrNCV8nq9bCLFlB+FkTJ3eHzAgSBfsM8drFMzOGONE O3NHZdoBjJLNnWoaiAVbR1IZVyMEOlW2qe3ugDdtZISB1fyQ+Xhk1bO3SfM3uiNFCQHP7z bfSuRG9VHrFHrE3028bCd++qfpd8JbCb5aGVqUT+zzIOibmw/0G8Q0f2HFUt4w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764803998; a=rsa-sha256; cv=none; b=kN6m+R4f+3cxNkXpd47ITRPyNodC/NNVxylup0eAAHGiXIIHp6qdRK2T9zULzSWSQYsb9F 1maPVLv5NNiRrwRYqM2T6zfwnAJA8BfktzzQQs1RX9f6MqdEBEmYFOQZo9kkEh057eFbQg 22J1v6XO63ofT43L+kVVyFxwF6492+F6hFaQ6DdHoNn25noVdyaoQZZVUfrLh1JYfeheJI zmR/cw0DrGx8fmC3ZEnrtXuYAlV6DQl1hLoPbMvVRHubqqEw1r0mkGaDWfaFnAnsc1Ie+w xj71pcY4jr0NQ3P/BuZIwT26DM+dzwjRTpHextQQ//F0xdkRKsqvKUiOCpFQ4w== 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 4dMDBQ2X3PzyZ6 for ; Wed, 03 Dec 2025 23:19:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3c9da by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 23:19:58 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 73fe85e486d2 - main - tcp: store flowid info in syncache List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 73fe85e486d297c9c976095854c1c84007e543f0 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 23:19:58 +0000 Message-Id: <6930c59e.3c9da.10a712cd@gitrepo.freebsd.org> The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=73fe85e486d297c9c976095854c1c84007e543f0 commit 73fe85e486d297c9c976095854c1c84007e543f0 Author: Gleb Smirnoff AuthorDate: 2025-12-03 23:15:34 +0000 Commit: Gleb Smirnoff CommitDate: 2025-12-03 23:19:44 +0000 tcp: store flowid info in syncache Now retransmissions by syncache would use correct flowid, same as synchronous responds. Reviewed by: tuexen, gallatin Differential Revision: https://reviews.freebsd.org/D51792 --- sys/netinet/tcp_input.c | 2 +- sys/netinet/tcp_syncache.c | 101 +++++++++++++++++++++++++++++---------------- sys/netinet/tcp_syncache.h | 8 ++-- 3 files changed, 70 insertions(+), 41 deletions(-) diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index 85ab26351f6b..9014dd690764 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -1171,7 +1171,7 @@ tfo_socket_result: * causes. */ if (thflags & TH_RST) { - syncache_chkrst(&inc, th, m, port); + syncache_chkrst(&inc, th, port); goto dropunlock; } /* diff --git a/sys/netinet/tcp_syncache.c b/sys/netinet/tcp_syncache.c index 056542bc43d6..eb473dac4dfc 100644 --- a/sys/netinet/tcp_syncache.c +++ b/sys/netinet/tcp_syncache.c @@ -35,6 +35,7 @@ #include "opt_inet.h" #include "opt_inet6.h" #include "opt_ipsec.h" +#include "opt_rss.h" #include #include @@ -120,8 +121,8 @@ SYSCTL_BOOL(_net_inet_tcp, OID_AUTO, syncookies_only, CTLFLAG_VNET | CTLFLAG_RW, static void syncache_drop(struct syncache *, struct syncache_head *); static void syncache_free(struct syncache *); static void syncache_insert(struct syncache *, struct syncache_head *); -static int syncache_respond(struct syncache *, const struct mbuf *, int); -static void syncache_send_challenge_ack(struct syncache *, struct mbuf *); +static int syncache_respond(struct syncache *, int); +static void syncache_send_challenge_ack(struct syncache *); static struct socket *syncache_socket(struct syncache *, struct socket *, struct mbuf *m); static void syncache_timeout(struct syncache *sc, struct syncache_head *sch, @@ -528,7 +529,7 @@ syncache_timer(void *xsch) } NET_EPOCH_ENTER(et); - if (syncache_respond(sc, NULL, TH_SYN|TH_ACK) == 0) { + if (syncache_respond(sc, TH_SYN|TH_ACK) == 0) { syncache_timeout(sc, sch, 0); TCPSTAT_INC(tcps_sndacks); TCPSTAT_INC(tcps_sndtotal); @@ -611,8 +612,7 @@ syncache_lookup(struct in_conninfo *inc, struct syncache_head **schp) * If required send a challenge ACK. */ void -syncache_chkrst(struct in_conninfo *inc, struct tcphdr *th, struct mbuf *m, - uint16_t port) +syncache_chkrst(struct in_conninfo *inc, struct tcphdr *th, uint16_t port) { struct syncache *sc; struct syncache_head *sch; @@ -698,7 +698,7 @@ syncache_chkrst(struct in_conninfo *inc, struct tcphdr *th, struct mbuf *m, "sending challenge ACK\n", s, __func__, th->th_seq, sc->sc_irs + 1, sc->sc_wnd); - syncache_send_challenge_ack(sc, m); + syncache_send_challenge_ack(sc); } } else { if ((s = tcp_log_addrs(inc, th, NULL, NULL))) @@ -807,19 +807,6 @@ syncache_socket(struct syncache *sc, struct socket *lso, struct mbuf *m) #ifdef INET6 } #endif - - /* - * If there's an mbuf and it has a flowid, then let's initialise the - * inp with that particular flowid. - */ - if (m != NULL && M_HASHTYPE_GET(m) != M_HASHTYPE_NONE) { - inp->inp_flowid = m->m_pkthdr.flowid; - inp->inp_flowtype = M_HASHTYPE_GET(m); -#ifdef NUMA - inp->inp_numa_domain = m->m_pkthdr.numa_domain; -#endif - } - inp->inp_lport = sc->sc_inc.inc_lport; #ifdef INET6 if (inp->inp_vflag & INP_IPV6PROTO) { @@ -890,6 +877,38 @@ syncache_socket(struct syncache *sc, struct socket *lso, struct mbuf *m) if (ipsec_copy_pcbpolicy(sotoinpcb(lso), inp) != 0) printf("syncache_socket: could not copy policy\n"); #endif + if (sc->sc_flowtype != M_HASHTYPE_NONE) { + inp->inp_flowid = sc->sc_flowid; + inp->inp_flowtype = sc->sc_flowtype; +#ifdef RSS + } else { + /* assign flowid by software RSS hash */ +#ifdef INET6 + if (sc->sc_inc.inc_flags & INC_ISIPV6) { + rss_proto_software_hash_v6(&inp->in6p_faddr, + &inp->in6p_laddr, + inp->inp_fport, + inp->inp_lport, + IPPROTO_TCP, + &inp->inp_flowid, + &inp->inp_flowtype); + } else +#endif /* INET6 */ + { + rss_proto_software_hash_v4(inp->inp_faddr, + inp->inp_laddr, + inp->inp_fport, + inp->inp_lport, + IPPROTO_TCP, + &inp->inp_flowid, + &inp->inp_flowtype); + } +#endif /* RSS */ + } +#ifdef NUMA + inp->inp_numa_domain = sc->sc_numa_domain; +#endif + tp->t_state = TCPS_SYN_RECEIVED; tp->iss = sc->sc_iss; tp->irs = sc->sc_irs; @@ -1144,6 +1163,13 @@ syncache_expand(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, return (-1); /* Do not send RST */ } #endif /* TCP_SIGNATURE */ + if (m != NULL && M_HASHTYPE_GET(m) != M_HASHTYPE_NONE) { + sc->sc_flowid = m->m_pkthdr.flowid; + sc->sc_flowtype = M_HASHTYPE_GET(m); + } +#ifdef NUMA + sc->sc_numa_domain = m ? m->m_pkthdr.numa_domain : M_NODOM; +#endif TCPSTATES_INC(TCPS_SYN_RECEIVED); } else { if (sc->sc_port != port) { @@ -1262,7 +1288,7 @@ syncache_expand(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, log(LOG_DEBUG, "%s; %s: SEQ %u != IRS+1 %u, " "sending challenge ACK\n", s, __func__, th->th_seq, sc->sc_irs + 1); - syncache_send_challenge_ack(sc, m); + syncache_send_challenge_ack(sc); SCH_UNLOCK(sch); free(s, M_TCPLOG); return (-1); /* Do not send RST */ @@ -1559,7 +1585,7 @@ syncache_add(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, s, __func__); free(s, M_TCPLOG); } - if (syncache_respond(sc, m, TH_SYN|TH_ACK) == 0) { + if (syncache_respond(sc, TH_SYN|TH_ACK) == 0) { sc->sc_rxmits = 0; syncache_timeout(sc, sch, 1); TCPSTAT_INC(tcps_sndacks); @@ -1734,6 +1760,13 @@ syncache_add(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, sc->sc_flowlabel = ip6_randomflowlabel(); sc->sc_flowlabel = htonl(sc->sc_flowlabel) & IPV6_FLOWLABEL_MASK; } +#endif + if (m != NULL && M_HASHTYPE_GET(m) != M_HASHTYPE_NONE) { + sc->sc_flowid = m->m_pkthdr.flowid; + sc->sc_flowtype = M_HASHTYPE_GET(m); + } +#ifdef NUMA + sc->sc_numa_domain = m ? m->m_pkthdr.numa_domain : M_NODOM; #endif if (locked) SCH_UNLOCK(sch); @@ -1748,7 +1781,7 @@ syncache_add(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, /* * Do a standard 3-way handshake. */ - if (syncache_respond(sc, m, TH_SYN|TH_ACK) == 0) { + if (syncache_respond(sc, TH_SYN|TH_ACK) == 0) { if (sc != &scs) syncache_insert(sc, sch); /* locks and unlocks sch */ TCPSTAT_INC(tcps_sndacks); @@ -1791,11 +1824,11 @@ tfo_expanded: } /* - * Send SYN|ACK or ACK to the peer. Either in response to a peer's segment, - * i.e. m0 != NULL, or upon 3WHS ACK timeout, i.e. m0 == NULL. + * Send SYN|ACK or ACK to the peer. Either in response to a peer's segment + * or upon 3WHS ACK timeout. */ static int -syncache_respond(struct syncache *sc, const struct mbuf *m0, int flags) +syncache_respond(struct syncache *sc, int flags) { struct ip *ip = NULL; struct mbuf *m; @@ -1985,15 +2018,11 @@ syncache_respond(struct syncache *sc, const struct mbuf *m0, int flags) udp->uh_ulen = htons(ulen); } M_SETFIB(m, sc->sc_inc.inc_fibnum); - /* - * If we have peer's SYN and it has a flowid, then let's assign it to - * our SYN|ACK. ip6_output() and ip_output() will not assign flowid - * to SYN|ACK due to lack of inp here. - */ - if (m0 != NULL && M_HASHTYPE_GET(m0) != M_HASHTYPE_NONE) { - m->m_pkthdr.flowid = m0->m_pkthdr.flowid; - M_HASHTYPE_SET(m, M_HASHTYPE_GET(m0)); - } + m->m_pkthdr.flowid = sc->sc_flowid; + M_HASHTYPE_SET(m, sc->sc_flowtype); +#ifdef NUMA + m->m_pkthdr.numa_domain = sc->sc_numa_domain; +#endif #ifdef INET6 if (sc->sc_inc.inc_flags & INC_ISIPV6) { if (sc->sc_port) { @@ -2056,11 +2085,11 @@ syncache_respond(struct syncache *sc, const struct mbuf *m0, int flags) } static void -syncache_send_challenge_ack(struct syncache *sc, struct mbuf *m) +syncache_send_challenge_ack(struct syncache *sc) { if (tcp_challenge_ack_check(&sc->sc_challenge_ack_end, &sc->sc_challenge_ack_cnt)) { - if (syncache_respond(sc, m, TH_ACK) == 0) { + if (syncache_respond(sc, TH_ACK) == 0) { TCPSTAT_INC(tcps_sndacks); TCPSTAT_INC(tcps_sndtotal); } diff --git a/sys/netinet/tcp_syncache.h b/sys/netinet/tcp_syncache.h index c916b4de6ae0..ce5ad666b115 100644 --- a/sys/netinet/tcp_syncache.h +++ b/sys/netinet/tcp_syncache.h @@ -43,8 +43,7 @@ int syncache_expand(struct in_conninfo *, struct tcpopt *, struct socket * syncache_add(struct in_conninfo *, struct tcpopt *, struct tcphdr *, struct inpcb *, struct socket *, struct mbuf *, void *, void *, uint8_t, uint16_t); -void syncache_chkrst(struct in_conninfo *, struct tcphdr *, struct mbuf *, - uint16_t); +void syncache_chkrst(struct in_conninfo *, struct tcphdr *, uint16_t); int syncache_pcblist(struct sysctl_req *); struct syncache { @@ -65,6 +64,7 @@ struct syncache { u_int8_t sc_ip_tos; /* TOS / Traffic Class */ u_int8_t sc_requested_s_scale:4, sc_requested_r_scale:4; + uint8_t sc_numa_domain; u_int16_t sc_flags; u_int32_t sc_challenge_ack_cnt; /* chall. ACKs sent in epoch */ sbintime_t sc_challenge_ack_end; /* End of chall. ack epoch */ @@ -75,8 +75,8 @@ struct syncache { struct label *sc_label; /* MAC label reference */ struct ucred *sc_cred; /* cred cache for jail checks */ void *sc_tfo_cookie; /* for TCP Fast Open response */ - void *sc_pspare; /* TCP_SIGNATURE */ - u_int32_t sc_spare[2]; /* UTO */ + uint32_t sc_flowtype; /* flowid from SYN packet .. */ + uint32_t sc_flowid; /* .. or calculated by RSS */ }; /* From nobody Wed Dec 3 23:19:59 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dMDBR5wpdz6J1lT for ; Wed, 03 Dec 2025 23:19:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dMDBR3Mkyz3bBH for ; Wed, 03 Dec 2025 23:19:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764803999; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7TDjGhlevJ/4jqEgFpUreIFB4l/ar4PqOar42DcX1r0=; b=JgfzjUfo9kMycuKJsvFNIbx3hZvVpWdpwCD/cjkeMuGtME0CeWkBCfAV/JGgKhQfeCCTBI GGhVTgCkkV+npHCHMF8Afkxq6CBzFRYFyMBvQ1/jt0wsI8Q/rH1wJTzuwvQ+waza7J1hNt 1Al5nXUW3WLFb4hbozKSKk2SqdwX2FFd73iLtA26hLfayB2lhPAwfRcVOL1qEnBmyWXKSK bvTNAoPtIomjC8yB6PUXIjhNKbqDX7mmQVViYG6r0odWoLMu5teQlx9NXK3Ldw9gIxIkD9 rPuqsHGhlLYmZT9rycUO0waXtK71IXiPx7FgTuaZx4qWAs8BXKNmp4PBiglmog== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764803999; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7TDjGhlevJ/4jqEgFpUreIFB4l/ar4PqOar42DcX1r0=; b=fExhp6QPoc9rh+65qajOoHyVfImag7rcCgXcD0sST9vFCWSxiWWEY6Ke+rvn4v5NqlY8PJ BQJtKBdf+N9NBzIdUFOoE8YMJ/Uf8CET5cqUKqLN9ZSBt3VojhcIajYGKXtzvf5CW7TW77 cfd0uvg6LFvM05tVjKGBBgaZ2y9KvxpQXWpBO93O6P0JN5BXOmVKYjczYIiYf6ye63R3vt DVUOsbUgd0dEpGL7femZjWHQ4aWuRq6PZco1qQw/PfVRDlI8co2Dj9/sLzjKtQZ5BAspIv SXKm8fdYCK61Jlc1AKUEgI+1R5nuHwTGI5zz3frCDyQdOhVYn+0IOFgUdxuvVA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764803999; a=rsa-sha256; cv=none; b=dbfP3rsMBFRFAGw960SxDCB/8oZXwL/eegPaVgtSMINq5rnNU6Bg0Ify7lv8SK1oqinurk gKVln5yaX7/AgL++4J4bI9Gsj/kON2cLLPSaZCRWtQ84Ce7XueT0GQzTQ0xlZumIihlk4R DtVmrMsHOnjXbGExFIhBHvpKws1xp3GAVaAzmNf9Pqq3VQtaxpWGpFSH/97NgoNbcaw6NK SlI8wmQcnAjubomFazMyhnTqg+g1POhLiMNbEQIvRncRYytld9NzQ+FhOLTJkAXM1INhZV xRMbUnhfbo9pUmxiMbD9HewaGn2MDHW67Qbytqox2Cu16qEmaDJra9FuJ00koA== 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 4dMDBR2t4Lzy5y for ; Wed, 03 Dec 2025 23:19:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3e606 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 23:19:59 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: ee18f8be2165 - main - tcp: don't set flowid in tcp_input() List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: ee18f8be21655c2d98c1c1bd4e081c366fa91c9a Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 23:19:59 +0000 Message-Id: <6930c59f.3e606.697bc870@gitrepo.freebsd.org> The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=ee18f8be21655c2d98c1c1bd4e081c366fa91c9a commit ee18f8be21655c2d98c1c1bd4e081c366fa91c9a Author: Gleb Smirnoff AuthorDate: 2025-12-03 23:15:45 +0000 Commit: Gleb Smirnoff CommitDate: 2025-12-03 23:19:44 +0000 tcp: don't set flowid in tcp_input() With dd0e6bb996dc setting it always on connect(2) and syncache always picking up the flowid from the incoming packet, any ESTABLISHED connection shall have the flowid already set. Reviewed by: tuexen, gallatin Differential Revision: https://reviews.freebsd.org/D53886 --- sys/netinet/tcp_input.c | 31 ------------------------------- 1 file changed, 31 deletions(-) diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index 9014dd690764..0036a07384ae 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -923,37 +923,6 @@ findpcb: } INP_LOCK_ASSERT(inp); - if ((inp->inp_flowtype == M_HASHTYPE_NONE) && - !SOLISTENING(inp->inp_socket)) { - if (M_HASHTYPE_GET(m) != M_HASHTYPE_NONE) { - inp->inp_flowid = m->m_pkthdr.flowid; - inp->inp_flowtype = M_HASHTYPE_GET(m); -#ifdef RSS - } else { - /* assign flowid by software RSS hash */ -#ifdef INET6 - if (isipv6) { - rss_proto_software_hash_v6(&inp->in6p_faddr, - &inp->in6p_laddr, - inp->inp_fport, - inp->inp_lport, - IPPROTO_TCP, - &inp->inp_flowid, - &inp->inp_flowtype); - } else -#endif /* INET6 */ - { - rss_proto_software_hash_v4(inp->inp_faddr, - inp->inp_laddr, - inp->inp_fport, - inp->inp_lport, - IPPROTO_TCP, - &inp->inp_flowid, - &inp->inp_flowtype); - } -#endif /* RSS */ - } - } #if defined(IPSEC) || defined(IPSEC_SUPPORT) #ifdef INET6 if (isipv6 && IPSEC_ENABLED(ipv6) && From nobody Wed Dec 3 23:20:00 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dMDBT02qGz6J1pJ for ; Wed, 03 Dec 2025 23:20:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dMDBS41z3z3Zmp for ; Wed, 03 Dec 2025 23:20:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764804000; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YNZEIDK9EKFu1KKil9RImkDPmO4O/CRznrLkkWvKq4c=; b=MvIZDlY6p/CMY/iueNkO9kb3ATRZ3JPq4vpND2iO6vnqnbyzP6QvYhI2jwz1VcqRChctVH HA3O1BrFpH5Sfd3jiuDp5uwWYurCfBV1bQn2KGE5wqOd55AEth4WdU7ilC3H3tjdcBdB5S pb8M6uPRLHfFEZqvoy84h0iq/HE7LiRg15E58MUDPpAW5/PmVOogoo2FpESxCM0L2elMRc 2fbtH34iplFS51vGkoo/+zREJhpel9D5YF3r9zIW9iLu32tBBR7yGOB+qeym5OBftibN0E vtRTEpw4LkgWTa+AtQte4frgOj5kF+mn+aK/ErKuJXr3IltJP6kjxgS1u4QWPA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764804000; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YNZEIDK9EKFu1KKil9RImkDPmO4O/CRznrLkkWvKq4c=; b=qgfTDK8qTVIJcwa0R4qI82ww/47CWzRxaQZv9+3Dnsu8cfha+xP7k2Ot74zNzoIE4AroDh cZiGJ3S/ljoEKXtz4ykh4HU99DB/Dl8wSk9a0gp4tB0EsNHs+9tHjKLWMJMb3jzpJ9u54h EiPAPQhW1ue7QblmKnyTJfI3azEbSi6CKL3xDaScqzRmTj9PrwT62kuVwiNsRBpAuY/sYe Amc3C4/fR3TzXaKUcGJv1ThhLqkkZl/kcpBSaJMqiqsOtNlY7hHw0riey53sHhDv7EzS8G Zl38teAMRdx5r4qBdOHHnQOxnQ3k99p7t4HQgbNrkqTOUoYXqx96VJYeXW1Ayw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764804000; a=rsa-sha256; cv=none; b=fWCcsKCWubrVePAxbPIfaMQXvoyH7Q5eh0VyyySdzJWdqh7KZLXNUK2zkoQ0SMuQoijmE+ 5vfeSIbD0eNRMzBsPy5FJSrYdeJbloDBl0Phc/Vg/MN8CKU06a62vs1I7UzQbe/mgnDcOP jN4DfWdsGTlUc+pWjk06CEQhEjcCh+bCAyNT8OtT1QnmSQoo8Yv9X3DvYMXgZ8hBLi+jdx ANlHH61kSiFbnRocCVvQbtZEy/oU2+ZCU0YNbsYcIcqkC6rK7f9OOMdwrihCoIID5rUKSw 5i5o8zyYP/ZCu6LJtY3IsVo0HGgXSEAEc4QCkrluImiPK9dJXPkVj2yWycvlcQ== 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 4dMDBS39TlzyZ7 for ; Wed, 03 Dec 2025 23:20:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3dbcb by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 23:20:00 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 57673d166940 - main - bpf: retire struct bpf_if_ext List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 57673d166940feafe09f411294b57fa6c8af3585 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 23:20:00 +0000 Message-Id: <6930c5a0.3dbcb.36f5bf5b@gitrepo.freebsd.org> The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=57673d166940feafe09f411294b57fa6c8af3585 commit 57673d166940feafe09f411294b57fa6c8af3585 Author: Gleb Smirnoff AuthorDate: 2025-12-03 23:16:15 +0000 Commit: Gleb Smirnoff CommitDate: 2025-12-03 23:19:44 +0000 bpf: retire struct bpf_if_ext The struct was used for bpf_if to bif_dlist masking, that is used to optimize bpf_peers_present() call. The only functional change here is that bif_dlist and bif_next swap their places in the structure. Both belong to the first cache line anyway. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D53867 --- sys/net/bpf.c | 13 ++++++------- sys/net/bpf.h | 13 ++++--------- 2 files changed, 10 insertions(+), 16 deletions(-) diff --git a/sys/net/bpf.c b/sys/net/bpf.c index 23a23fbfe22e..f5302059d5eb 100644 --- a/sys/net/bpf.c +++ b/sys/net/bpf.c @@ -93,14 +93,11 @@ MALLOC_DEFINE(M_BPF, "BPF", "BPF data"); -static const struct bpf_if_ext dead_bpf_if = { - .bif_dlist = CK_LIST_HEAD_INITIALIZER() -}; +static const struct bpfd_list dead_bpf_if = CK_LIST_HEAD_INITIALIZER(); struct bpf_if { -#define bif_next bif_ext.bif_next -#define bif_dlist bif_ext.bif_dlist - struct bpf_if_ext bif_ext; /* public members */ + struct bpfd_list bif_dlist; /* list of all interfaces */ + CK_LIST_ENTRY(bpf_if) bif_next; /* descriptor list */ u_int bif_dlt; /* link layer type */ u_int bif_hdrlen; /* length of link header */ struct bpfd_list bif_wlist; /* writer-only list */ @@ -110,7 +107,9 @@ struct bpf_if { struct epoch_context epoch_ctx; }; -CTASSERT(offsetof(struct bpf_if, bif_ext) == 0); +/* See bpf_peers_present() in bpf.h. */ +_Static_assert(offsetof(struct bpf_if, bif_dlist) == 0, + "bpf_if shall start with bif_dlist"); struct bpf_program_buffer { struct epoch_context epoch_ctx; diff --git a/sys/net/bpf.h b/sys/net/bpf.h index dfb8373bb329..b18840bfd2bf 100644 --- a/sys/net/bpf.h +++ b/sys/net/bpf.h @@ -410,11 +410,6 @@ SYSCTL_DECL(_net_bpf); struct bpf_if; CK_LIST_HEAD(bpfd_list, bpf_d); -struct bpf_if_ext { - CK_LIST_ENTRY(bpf_if) bif_next; /* list of all interfaces */ - struct bpfd_list bif_dlist; /* descriptor list */ -}; - void bpf_bufheld(struct bpf_d *d); int bpf_validate(const struct bpf_insn *, int); void bpf_tap(struct bpf_if *, u_char *, u_int); @@ -435,12 +430,12 @@ void bpfilterattach(int); u_int bpf_filter(const struct bpf_insn *, u_char *, u_int, u_int); static __inline bool -bpf_peers_present(struct bpf_if *bpf) +bpf_peers_present(const struct bpf_if *bpf) { - struct bpf_if_ext *ext; + const struct bpfd_list *dlist; - ext = (struct bpf_if_ext *)bpf; - return (!CK_LIST_EMPTY(&ext->bif_dlist)); + dlist = (const struct bpfd_list *)bpf; + return (!CK_LIST_EMPTY(dlist)); } #define BPF_TAP(_ifp, _pkt, _pktlen) \ From nobody Wed Dec 3 23:20:01 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dMDBT6ZKvz6J1gc for ; Wed, 03 Dec 2025 23:20:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dMDBT47JJz3bBg for ; Wed, 03 Dec 2025 23:20:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764804001; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=10yA3lewqrGwlAfWywfmq8U8iZGaEMlH+J+dWmd2Gq4=; b=sN1hUcVhvYvKzNh+xBKOCILXEHD06TkHT1hQU2jrloHfmmxZSWbuPhEvc1WBjJSkrc2jk3 lO7pJsipb1BLwFGB44TvmfXgMHVAHXuYQtDY9J2cNCsTypTRI4pTKyEuY4NHoG4NNQqtec j+kY4anhC6mVyi97vTDrgOzJYU4MRL6Krwuouwtha58kM4iDngL1XmVRTnAmWWXYTgOFNR sBlbmkLZ+TvIPuZ7k0xqzPqEznxZrbVsfbfGeuXRtZ0tD4hWd51GOtPkkVxbO4UosSW+mq KJcvb2Inx7BBZd+Asq/vNjBdiCq5FrOGjYt9fA31aoY7NP1ZzaTShNradS+RYg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764804001; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=10yA3lewqrGwlAfWywfmq8U8iZGaEMlH+J+dWmd2Gq4=; b=FsSWJRwXHxljfH4LNcgMtqxycHJWZw+CBf6venuwaLFd5dnKySWwmgyNzf/DKrncOSXYv5 +mLIZtRm/SrNXJj9pQQG4xZ8N1piAuCIj3RUf8KUMDAoE3yD7N6Qyxd6Hoa1tVSYYVHcpI FaecKCKkJUe3eARRgnMMtaqEQrHBVC6+kUO5aALEDlfMSxVAX1jX+VGEf6wEFzEz+fddrZ lTwwyMH1cceC8tS/ubO/d/SzITQy+WGHsQE9UDCpoBsQNPaIjZCC1wqgNBvyFhuKH6BIEu F/qrOoT8PfrvN4ro37RjVwWIh88rB36VtXWRoCkaZH8Meyp4ObFPe2nkVck5oA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764804001; a=rsa-sha256; cv=none; b=ZiwWGCzp4M4KKALiHJr+GdpJ0NTOlMvHakEaVLvhrgS9yKhLcFzviVKMksUpFjhTtGSVZw VPTqxWRDX1fy71BJWI1+5sFdQhofDjjJJCryaAOPUxMhs04Cq0W1WyBezjW/stTm89z+fk lXL8UHiH3840tMrTUydnVhIg66qsZH44lJ9y2w1vVI03hOPM3n6uUUbuJbpOmUEV29/8ps CLvw4eCuHiGn7WkJszz/ESfEI89EHevXh5Qq3mME51tiWepyJHWNpFI+10CdV+sn5qBvuP FLjvfYlNwwCUJAQNY8zAU1JJpN8JBAXXurtdfx2UOW/n+Ou7ikrPfhFfqPdcIw== 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 4dMDBT3WHczy15 for ; Wed, 03 Dec 2025 23:20:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3d56a by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 23:20:01 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 845896655815 - main - bpf: calculate net.bpf.stats buffer size dynamically List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 845896655815eaf339953e2aa48d79ca4539874b Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 23:20:01 +0000 Message-Id: <6930c5a1.3d56a.1c37f13b@gitrepo.freebsd.org> The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=845896655815eaf339953e2aa48d79ca4539874b commit 845896655815eaf339953e2aa48d79ca4539874b Author: Gleb Smirnoff AuthorDate: 2025-12-03 23:16:33 +0000 Commit: Gleb Smirnoff CommitDate: 2025-12-03 23:19:45 +0000 bpf: calculate net.bpf.stats buffer size dynamically This removed the global counter, that was updated in a racy manner. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D53868 --- sys/net/bpf.c | 28 +++++++++++++++++----------- 1 file changed, 17 insertions(+), 11 deletions(-) diff --git a/sys/net/bpf.c b/sys/net/bpf.c index f5302059d5eb..aff0d3c761ad 100644 --- a/sys/net/bpf.c +++ b/sys/net/bpf.c @@ -178,7 +178,6 @@ struct bpf_dltlist32 { CK_LIST_HEAD(bpf_iflist, bpf_if); static struct bpf_iflist bpf_iflist = CK_LIST_HEAD_INITIALIZER(); static struct sx bpf_sx; /* bpf global lock */ -static int bpf_bpfd_cnt; static void bpfif_ref(struct bpf_if *); static void bpfif_rele(struct bpf_if *); @@ -760,7 +759,6 @@ bpf_attachd(struct bpf_d *d, struct bpf_if *bp) bpf_wakeup(d); BPFD_UNLOCK(d); - bpf_bpfd_cnt++; CTR3(KTR_NET, "%s: bpf_attach called by pid %d, adding to %s list", __func__, d->bd_pid, d->bd_writer ? "writer" : "active"); @@ -864,7 +862,6 @@ bpf_detachd(struct bpf_d *d, bool detached_ifp) bpf_wakeup(d); } BPFD_UNLOCK(d); - bpf_bpfd_cnt--; /* Call event handler iff d is attached */ if (error == 0) @@ -3044,7 +3041,8 @@ bpf_stats_sysctl(SYSCTL_HANDLER_ARGS) { static const struct xbpf_d zerostats; struct xbpf_d *xbdbuf, *xbd, tempstats; - int index, error; + u_int bpfd_cnt, index; + int error; struct bpf_if *bp; struct bpf_d *bd; @@ -3074,25 +3072,33 @@ bpf_stats_sysctl(SYSCTL_HANDLER_ARGS) bpf_zero_counters(); return (0); } - if (req->oldptr == NULL) - return (SYSCTL_OUT(req, 0, bpf_bpfd_cnt * sizeof(*xbd))); - if (bpf_bpfd_cnt == 0) - return (SYSCTL_OUT(req, 0, 0)); - xbdbuf = malloc(req->oldlen, M_BPF, M_WAITOK); + bpfd_cnt = 0; BPF_LOCK(); - if (req->oldlen < (bpf_bpfd_cnt * sizeof(*xbd))) { + CK_LIST_FOREACH(bp, &bpf_iflist, bif_next) { + CK_LIST_FOREACH(bd, &bp->bif_wlist, bd_next) + bpfd_cnt++; + CK_LIST_FOREACH(bd, &bp->bif_dlist, bd_next) + bpfd_cnt++; + } + if (bpfd_cnt == 0 || req->oldptr == NULL) { + BPF_UNLOCK(); + return (SYSCTL_OUT(req, 0, bpfd_cnt * sizeof(*xbd))); + } + if (req->oldlen < bpfd_cnt * sizeof(*xbd)) { BPF_UNLOCK(); - free(xbdbuf, M_BPF); return (ENOMEM); } + xbdbuf = malloc(bpfd_cnt * sizeof(*xbd), M_BPF, M_WAITOK); index = 0; CK_LIST_FOREACH(bp, &bpf_iflist, bif_next) { /* Send writers-only first */ CK_LIST_FOREACH(bd, &bp->bif_wlist, bd_next) { + MPASS(index <= bpfd_cnt); xbd = &xbdbuf[index++]; bpfstats_fill_xbpf(xbd, bd); } CK_LIST_FOREACH(bd, &bp->bif_dlist, bd_next) { + MPASS(index <= bpfd_cnt); xbd = &xbdbuf[index++]; bpfstats_fill_xbpf(xbd, bd); } From nobody Wed Dec 3 23:20:02 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dMDBV6VxQz6J1rG for ; Wed, 03 Dec 2025 23:20:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dMDBV4d0Pz3Zh0 for ; Wed, 03 Dec 2025 23:20:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764804002; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OB838eFQbeHHdGUnwnEbrADQojy4nkcq/tD14DnkrWM=; b=vIwKEfcxw2cF9CdSgnYaKsKc0HvCpovY3TUomomXRQ1An+6MyuCNiKOCDYU4+7vB0BPmrN 9V6ny+kPUZp9MxE/Hm6yw6TyLQRyXn8kgsPWj6iWeEDhVlvK5oNw0OqeEy9gIKWF3zdOGU zwUl/8aNt4B4c5Z8de95hnwy4gBWeq7bAUF6G7j9LtKqjBh+xoyD5YLu5W8RS4YCabmXbJ /ZfeBboOmKhI9r1d1Ld8XOD6XwinHQ6Dzkh3ypc8Su0evd69Fv6Bp39whuSkd1aHHi1YHm 1tm75CTXexMNIoMOif5ijlXKJOj0st0x3x/WFwkfzJEvsdd7TGjHRcHFucUtvQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764804002; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OB838eFQbeHHdGUnwnEbrADQojy4nkcq/tD14DnkrWM=; b=KyCEpFIgmbvB+C5Nwu/lzCMKKkFGVQ/CT254vWm80brsDD5cJqYPM8YSAqD/+zBulYBoJl VSdQnKZcLJBvqB5B6HKprn8fAPHIVM4j0WT/1Cvv0jaI9/hYONhZf4hRclNWdPRq5UI5Ue 065PpKRbcs3xe6/dhazI+8hNoLGC10I97VdnRbw2bJRLBuMYBg4zTnPtTNH8EZDeODkkV5 +z9VKmTxjhlIt8+Om4iVGxrgF3SMxdvYzF2XdebaASCiDXOWv4qj0L9h8xKYp7t2xPN3ba 8jwA3kd1UKmKvW0ythGSJU/niGBp2WKWSpdQbYwzlGRptybIbHfsXPGM0KakYw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764804002; a=rsa-sha256; cv=none; b=ghSMGsZ4h9/Nkf/WgVHRXwhaSSxvJvgG/IPiPMkjhO2Fw0+bqzdDqsXpVlpoOIcQVH6jrg XltxdrEQRQbm/j5KyHRD05ZZSJtROg223UVO0R9P5U1+9p+hetN+y1a08Idl0Xq0yvjxrK snTJ5fC0pXHuksi3Wz7RN299nUISY8SH/PEtr3FikyPh/Ljh6RNKASDieSx48f0whe0fzG fgwtu3vas5HlSsAJcZNgWcUSzcHa41x8IbuCYTuiKcyAt7m9yXTegDDVYcjPpceWGB1A7/ +HJju5JZobc/Ris9EuDCcWllUxQY3uTzpOs5fALRHDg8GsvBJRP35FH3XgGL7w== 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 4dMDBV3qpVzyZ8 for ; Wed, 03 Dec 2025 23:20:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3e633 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Dec 2025 23:20:02 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 72ca89482afc - main - bpf: global bpf list doesn't need CK List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org 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: 72ca89482afcdec7db1d7555bdb3505498c729c2 Auto-Submitted: auto-generated Date: Wed, 03 Dec 2025 23:20:02 +0000 Message-Id: <6930c5a2.3e633.361b4798@gitrepo.freebsd.org> The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=72ca89482afcdec7db1d7555bdb3505498c729c2 commit 72ca89482afcdec7db1d7555bdb3505498c729c2 Author: Gleb Smirnoff AuthorDate: 2025-12-03 23:16:50 +0000 Commit: Gleb Smirnoff CommitDate: 2025-12-03 23:19:45 +0000 bpf: global bpf list doesn't need CK All accesses to this list are done with the global lock held. The CK connotation is just confusing the reader. Fixes: 699281b545a8a3fc5109b5f2db62d261b65b588b Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D53869 --- sys/net/bpf.c | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/sys/net/bpf.c b/sys/net/bpf.c index aff0d3c761ad..b043773bc876 100644 --- a/sys/net/bpf.c +++ b/sys/net/bpf.c @@ -97,7 +97,7 @@ static const struct bpfd_list dead_bpf_if = CK_LIST_HEAD_INITIALIZER(); struct bpf_if { struct bpfd_list bif_dlist; /* list of all interfaces */ - CK_LIST_ENTRY(bpf_if) bif_next; /* descriptor list */ + LIST_ENTRY(bpf_if) bif_next; /* descriptor list */ u_int bif_dlt; /* link layer type */ u_int bif_hdrlen; /* length of link header */ struct bpfd_list bif_wlist; /* writer-only list */ @@ -175,8 +175,8 @@ struct bpf_dltlist32 { * structures registered by different layers in the stack (i.e., 802.11 * frames, ethernet frames, etc). */ -CK_LIST_HEAD(bpf_iflist, bpf_if); -static struct bpf_iflist bpf_iflist = CK_LIST_HEAD_INITIALIZER(); +LIST_HEAD(bpf_iflist, bpf_if); +static struct bpf_iflist bpf_iflist = LIST_HEAD_INITIALIZER(); static struct sx bpf_sx; /* bpf global lock */ static void bpfif_ref(struct bpf_if *); @@ -2078,7 +2078,7 @@ bpf_setif(struct bpf_d *d, struct ifreq *ifr) /* * Look through attached interfaces for the named one. */ - CK_LIST_FOREACH(bp, &bpf_iflist, bif_next) { + LIST_FOREACH(bp, &bpf_iflist, bif_next) { if (bp->bif_ifp == theywant && bp->bif_bpf == &theywant->if_bpf) break; @@ -2799,7 +2799,7 @@ bpfattach2(struct ifnet *ifp, u_int dlt, u_int hdrlen, */ if_ref(ifp); BPF_LOCK(); - CK_LIST_INSERT_HEAD(&bpf_iflist, bp, bif_next); + LIST_INSERT_HEAD(&bpf_iflist, bp, bif_next); BPF_UNLOCK(); if (bootverbose && IS_DEFAULT_VNET(curvnet)) @@ -2817,7 +2817,7 @@ bpf_ifdetach(struct ifnet *ifp) struct bpf_d *d; BPF_LOCK(); - CK_LIST_FOREACH(bp, &bpf_iflist, bif_next) { + LIST_FOREACH(bp, &bpf_iflist, bif_next) { if (bp->bif_ifp != ifp) continue; @@ -2848,11 +2848,11 @@ bpfdetach(struct ifnet *ifp) BPF_LOCK(); /* Find all bpf_if struct's which reference ifp and detach them. */ - CK_LIST_FOREACH_SAFE(bp, &bpf_iflist, bif_next, bp_temp) { + LIST_FOREACH_SAFE(bp, &bpf_iflist, bif_next, bp_temp) { if (ifp != bp->bif_ifp) continue; - CK_LIST_REMOVE(bp, bif_next); + LIST_REMOVE(bp, bif_next); *bp->bif_bpf = __DECONST(struct bpf_if *, &dead_bpf_if); CTR4(KTR_NET, @@ -2894,7 +2894,7 @@ bpf_getdltlist(struct bpf_d *d, struct bpf_dltlist *bfl) ifp = d->bd_bif->bif_ifp; n1 = 0; - CK_LIST_FOREACH(bp, &bpf_iflist, bif_next) { + LIST_FOREACH(bp, &bpf_iflist, bif_next) { if (bp->bif_ifp == ifp) n1++; } @@ -2907,7 +2907,7 @@ bpf_getdltlist(struct bpf_d *d, struct bpf_dltlist *bfl) lst = malloc(n1 * sizeof(u_int), M_TEMP, M_WAITOK); n = 0; - CK_LIST_FOREACH(bp, &bpf_iflist, bif_next) { + LIST_FOREACH(bp, &bpf_iflist, bif_next) { if (bp->bif_ifp != ifp) continue; lst[n++] = bp->bif_dlt; @@ -2939,7 +2939,7 @@ bpf_setdlt(struct bpf_d *d, u_int dlt) return (0); ifp = d->bd_bif->bif_ifp; - CK_LIST_FOREACH(bp, &bpf_iflist, bif_next) { + LIST_FOREACH(bp, &bpf_iflist, bif_next) { if (bp->bif_ifp == ifp && bp->bif_dlt == dlt) break; } @@ -2986,7 +2986,7 @@ bpf_zero_counters(void) * We are protected by global lock here, interfaces and * descriptors can not be deleted while we hold it. */ - CK_LIST_FOREACH(bp, &bpf_iflist, bif_next) { + LIST_FOREACH(bp, &bpf_iflist, bif_next) { CK_LIST_FOREACH(bd, &bp->bif_dlist, bd_next) { counter_u64_zero(bd->bd_rcount); counter_u64_zero(bd->bd_dcount); @@ -3074,7 +3074,7 @@ bpf_stats_sysctl(SYSCTL_HANDLER_ARGS) } bpfd_cnt = 0; BPF_LOCK(); - CK_LIST_FOREACH(bp, &bpf_iflist, bif_next) { + LIST_FOREACH(bp, &bpf_iflist, bif_next) { CK_LIST_FOREACH(bd, &bp->bif_wlist, bd_next) bpfd_cnt++; CK_LIST_FOREACH(bd, &bp->bif_dlist, bd_next) @@ -3090,7 +3090,7 @@ bpf_stats_sysctl(SYSCTL_HANDLER_ARGS) } xbdbuf = malloc(bpfd_cnt * sizeof(*xbd), M_BPF, M_WAITOK); index = 0; - CK_LIST_FOREACH(bp, &bpf_iflist, bif_next) { + LIST_FOREACH(bp, &bpf_iflist, bif_next) { /* Send writers-only first */ CK_LIST_FOREACH(bd, &bp->bif_wlist, bd_next) { MPASS(index <= bpfd_cnt);