From nobody Mon Apr 7 01:26:22 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWBPW0FGbz5sNHk; Mon, 07 Apr 2025 01:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWBPV4XKqz3vwB; Mon, 07 Apr 2025 01:26:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1743989182; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mRLvnAnD40jH3BtfeRXing9q9WfYEgQc0/vLFKd8Fto=; b=YjpcWNwui8PFcGY1vM8z59RlrDuNZrEJkfSEBWhVpRwIpDCE/L/TczZ/aklQSmiZHZVVuT 6PdQyJ0+NeUsPhjy/wc8SgMP+1wSwY0zGfY/uZWH/s0y8gsDc3UyXiRAtLpj1CPli1f9WB GJaBbiFFg7a1oWbOLE2uU+F9XhgyKAqqOB4I5r5yxri047abzYXL830IpMP5KKOfqKoF/U 54hGG1lcFZfNfDN7YdyEBZR1HF7IOBpOwpUkb0/BCWe09m9i1B1EhFZIuCDKtsyIEEqoP+ 21OBreHqCzxBAIiCNLIujNppZjhsyEwDtFenu80AHHW4lwBYvH3X01aRadaRFQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1743989182; a=rsa-sha256; cv=none; b=iuPJB4ocRk4m9SpdRMzQ82nyAnCITNx5Xy6PhrdqINIKQpVXI7FChaQTRnEHJo2pDu1b+G 9i1fv+I3C7Sa3Rb6IDyhHcd2Jm8EWLIyvdIabQveqpAh726SEAzqDfHA5OxwjEgAB/J82g rdLSly/+DMstC+++ZUdc4CAX92U/jvsEDWll0xocvGXV4i0Jca+gZFTgQWgdRWQ3ROLFDu hRQKhXs6A78Qfulp8rj3cknKtvHUIKptxKL7V2dFVUeAOaq4yITCXdT+jsF2LKnHFo2SiK 9axk4C7Az2F6oVHe3tb/lLR6oYirGpOGQlII12fdvWA68DdYTHq5qe1z9C3UHA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1743989182; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mRLvnAnD40jH3BtfeRXing9q9WfYEgQc0/vLFKd8Fto=; b=Z5KxR2VEFe/5tkni+xD8yIldcl+Hgz2n93A3KzHRvn5dM8qftAjPiQ9GY+w2d0JlOAmt6c 4ebWpiix+TgKnUJyH0wvoAOk+Z418zzN1Kt415jlOxIIu47Nzq3LAM7O+gZ/w6d+L00mvV xv5Mk101jEAzhOGb6vf1M6eclfAKhnFYTwE6Qj45Mjsg2PIiq5ZWkMxEI2SBWe0Km4Ds8v F7Ef7dhwo0GO0IFOZrMp8BplFllLyhiLuBQTtdtSRJ+MKZ8YMb+ymG9zW49KJ+J7dd0PAT CPBZFN8KCtLtHFCLfZHWFP26e1e1DDWQJVbtYOnlFxTXN+0i8cwB6hrn2i3VNQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWBPV3qBFz9JQ; Mon, 07 Apr 2025 01:26:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5371QMqx061838; Mon, 7 Apr 2025 01:26:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5371QMZB061835; Mon, 7 Apr 2025 01:26:22 GMT (envelope-from git) Date: Mon, 7 Apr 2025 01:26:22 GMT Message-Id: <202504070126.5371QMZB061835@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: 75ae454d5814 - main - release/vm: finish fixing WITHOUT_QEMU List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 75ae454d58144d23672607a4a02b9b36532caf76 Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=75ae454d58144d23672607a4a02b9b36532caf76 commit 75ae454d58144d23672607a4a02b9b36532caf76 Author: Brooks Davis AuthorDate: 2025-04-07 01:24:21 +0000 Commit: Brooks Davis CommitDate: 2025-04-07 01:25:57 +0000 release/vm: finish fixing WITHOUT_QEMU To support common shell patterns (test -n and -z) we want WITHOUT_QEMU to be set and not empty in mk-vmimage.sh if it is defined at all in the Makefile. Fix a case I missed previously. Reported by: cperciva Fixes: e6e5cd297ab4 ("release/vm: fix setting NO_ROOT and WITHOUT_QEMU") Sponsored by: DARPA, AFRL Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D49666 --- release/Makefile.vm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/release/Makefile.vm b/release/Makefile.vm index f58c7c7fd092..3b0ae4227453 100644 --- a/release/Makefile.vm +++ b/release/Makefile.vm @@ -180,7 +180,7 @@ vm-image: ${QEMUTGT} mkdir -p ${.OBJDIR}/${.TARGET}-${FORMAT}-${FS} env TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} SWAPSIZE=${SWAPSIZE} \ QEMUSTATIC=${QEMUSTATIC} \ - WITHOUT_QEMU=${WITHOUT_QEMU:Dtrue} \ + ${WITHOUT_QEMU:DWITHOUT_QEMU=true} \ ${.CURDIR}/scripts/mk-vmimage.sh \ -C ${.CURDIR}/tools/vmimage.subr \ -d ${.OBJDIR}/${.TARGET}-${FORMAT}-${FS} -F ${FS} \ From nobody Mon Apr 7 02:38:07 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWD0J0lBXz5sTKR; Mon, 07 Apr 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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWD0J0Jg2z4JBV; Mon, 07 Apr 2025 02:38:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1743993488; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QSofLdFrhbVVaNE5tYOjnw6PN6pZuKjTaElUjdSAbxA=; b=ryPOiESSjpzGPLo0ajIjKYUMma94EoD9jbK2sFllWqS0Q7LDUEzsHVg/iNAdOm1gOmUIm1 cv5ldfQsXxikDVynujJj2lEg4rH7PnxHgFV92/77OC9WCI4rMRqgu09Vd9ZVoPtC3A873i Rr/AjXiL/Ad+GuWoaWzN2QWLh62UmkD1IzvqskKfBVwog0U/wAbqzh73gYhSmviX+jRUzA K7dXGcLnWjQBUxta8PIZb3b8AKj+dP4qdpGVNdSP6evdEP+HrTBuDu6dn8E8D24ihUYTaN Ml8BtXgj9aCkUypU4TCGfkdHMP2gO+TN502FNi4ihDAc83jBOgZY6cYVhFiLNA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1743993488; a=rsa-sha256; cv=none; b=qvXEKQOYqas9QnzmRXs6fkUGgtMt6uRDYFe0zwR4ZUg9psjFtTWom+Ow5J/s1E6zQOIGVx T1f7cP7BWMZEmNq2r1NoY5bd+9ZkiBjDdCS8lyyBty3tW2LqH/OPFZqyCnnIMu6LHNFHnr I6wOquykwB6gHqmSjnvBzDqdqUPjgtnVFyhb4a5db5Z9VjYe/IbP4CrjcPvKPGjw92z8Hf ou1NU7Xp1NVZokp6TZ5lsDu6i29mvu3gjD/v0Om0efLD5T58+ISe2qXsFaIYuBLwqQrEJM HgPEpZK8DCtmwSu4Kl109z2LerBW1+ZnR2UVozPg8/MdE04LzPkCTZT7Ny8UAg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1743993488; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QSofLdFrhbVVaNE5tYOjnw6PN6pZuKjTaElUjdSAbxA=; b=cwtin3CAZZ5Cz9mbytWiFaUgBPMpOt9t1wA7ZlGj2dklC680tbbU0zC+kcbcNIEjjsRHHW kZnKhveQm7JfZHKsi92lJYXSMtM4CYpZW13R5JYaNPBiyc8jove9Iktx62IPKX3ovgvHCl 8XGy6eObgeFwKL/KlWuVb8nvw/Ye85pDmAid1hOZIPzZ37xz9KNOfsD3d62dYYFy+a7ncF yMjfJ3ZUPriDkiz1mU0tlzHZHj2++BgKP9mKF+bxDW448k2ukAk6NGnSB19mc0oKRSK8o+ /4pdJlRCLW2G/4QWxtfAbaQ6/libs8tMAB6wtVk+v+hRZOLGJRKTZdfi8IA+Ew== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWD0H6xJkzCM8; Mon, 07 Apr 2025 02:38:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5372c7O9093413; Mon, 7 Apr 2025 02:38:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5372c7t8093410; Mon, 7 Apr 2025 02:38:07 GMT (envelope-from git) Date: Mon, 7 Apr 2025 02:38:07 GMT Message-Id: <202504070238.5372c7t8093410@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Philip Paeps Subject: git: 03a1992591b0 - main - lib/libexpat: bump libbsdxml.3 after 2.7.1 import List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: philip X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 03a1992591b0ae85b6b250255fe56e17f6d919c6 Auto-Submitted: auto-generated The branch main has been updated by philip: URL: https://cgit.FreeBSD.org/src/commit/?id=03a1992591b0ae85b6b250255fe56e17f6d919c6 commit 03a1992591b0ae85b6b250255fe56e17f6d919c6 Author: Philip Paeps AuthorDate: 2025-04-07 02:35:19 +0000 Commit: Philip Paeps CommitDate: 2025-04-07 02:35:19 +0000 lib/libexpat: bump libbsdxml.3 after 2.7.1 import Forgotten in fe9278888fd4414abe2d922e469cf608005f4c65. Pointy hat to: philip --- lib/libexpat/libbsdxml.3 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/libexpat/libbsdxml.3 b/lib/libexpat/libbsdxml.3 index 21c07d39e5e2..c91184840b70 100644 --- a/lib/libexpat/libbsdxml.3 +++ b/lib/libexpat/libbsdxml.3 @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\"/ -.Dd December 8, 2024 +.Dd April 7, 2025 .Dt LIBBSDXML 3 .Os .Sh NAME @@ -34,7 +34,7 @@ .Sh DESCRIPTION The .Nm -library is a verbatim copy of the eXpat XML library version 2.6.4. +library is a verbatim copy of the eXpat XML library version 2.7.1. .Pp The .Nm From nobody Mon Apr 7 03:38:17 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWFKj5W4cz5sYjX; Mon, 07 Apr 2025 03:38: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWFKj4pFKz3H9s; Mon, 07 Apr 2025 03:38:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1743997097; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hiYjXlUbt6n24PirAxIJMiocfLttpeolfNBnj7zttpw=; b=jArpCiU+U3j4iBnzTlx9MPg7E1EIA30sO+x1Yr2UE5ATIQAoS+iCqN5efEPSXD7ILMLDaI xHK0+m36mmU7kFzn9bLzrQ/FGB1kzVnme0MBRGhqwJrItp/oEu6POul0O0JZa6QAYhEWeg FYKOqk4NhUbhuOdWTcKucJN58cztA7mNMzojmxP+ixv5kRQEW48CEAEaqtqidS2v16Y41r /aN1o74b9N1DmHF/BPI1LBv4aF+A84dSq+fHaxVOGZ64VQkU6wY9D/yOtD8Kx3QpQfwyIW U13GkOWdEMTzslMeEsjCyN+sVdXg5qQZKmWwDVkmq8wPeYannQn3KyHXdb6J7A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1743997097; a=rsa-sha256; cv=none; b=cGhVGkbu214PyhpoxmVGj39SlYf0sIpmrx2u/4iZ34nAKv6+1jxeS7PPiDPmQ4/S5vlX1T GCbgACTZOVl4j3s+ObBcm5kPetEWdlaaeSUpZ0BwG7x1CSndnIHP2F6/wkw+Zlp0v1TRfh csqxz2pvLoHK9HDNtxcFLMbqF1YXXdh/OmAdaWsfUd1TIbfB0OXV9idnIznbv4suKcPXML Phv9ev+UBDhEtu7n0RK9QJhh9D3W118Y/sch9rY/pINcb3aD/ZKIUntmBgRWiVBwqUdTIg YtU0UX2yzUmJ8E6spWJjB4XorqloDDRpikU4wF6vwj/kaki8VQ+71V5En4D8cg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1743997097; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hiYjXlUbt6n24PirAxIJMiocfLttpeolfNBnj7zttpw=; b=NnGHodhAfMQ431hNJfPKob03mG69/Lg/xFLtEvnSWlvpfmbkO6jEDqx8r2H8ZYPH5QGzmA bZhNtgpmmGD1ru4rinTQ//dBUdAZrztkLnieBcT7hT3AabzP2iYzQzB91U2wXGfadarab1 spLMIP2jpU7syv8zHfOhS4dEYygM1j4ds55FXFUXippEUWTZnO2g89wYVXkLbGGJOvE0e7 o4+soaDtUXJWCRotRKlCt4BnDzuzXC46ALWjAhqEbX9HxLMK+mGjANd/PRGGHXDYzOoayI aoNFtjXmLWvIt5J3O/1LZ8yDL9XTt8d+Ldz20c5UV/cPpydm1nfy5HD1NRIdiw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWFKj46Y5zTnH; Mon, 07 Apr 2025 03:38:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5373cHsu007357; Mon, 7 Apr 2025 03:38:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5373cHf2007354; Mon, 7 Apr 2025 03:38:17 GMT (envelope-from git) Date: Mon, 7 Apr 2025 03:38:17 GMT Message-Id: <202504070338.5373cHf2007354@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Philip Paeps Subject: git: 00c8538e87c6 - main - lib/libexpat: update build config for 2.7.1 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: philip X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 00c8538e87c61f1fd57ccd9e02a6d435b68d9a73 Auto-Submitted: auto-generated The branch main has been updated by philip: URL: https://cgit.FreeBSD.org/src/commit/?id=00c8538e87c61f1fd57ccd9e02a6d435b68d9a73 commit 00c8538e87c61f1fd57ccd9e02a6d435b68d9a73 Author: Philip Paeps AuthorDate: 2025-04-07 03:36:45 +0000 Commit: Philip Paeps CommitDate: 2025-04-07 03:36:45 +0000 lib/libexpat: update build config for 2.7.1 Forgotten in fe9278888fd4414abe2d922e469cf608005f4c65. Point hat to: philip --- lib/libexpat/expat_config.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/libexpat/expat_config.h b/lib/libexpat/expat_config.h index 2bb52a4baa03..748f75ee157d 100644 --- a/lib/libexpat/expat_config.h +++ b/lib/libexpat/expat_config.h @@ -89,7 +89,7 @@ #define PACKAGE_NAME "expat" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "expat 2.6.4" +#define PACKAGE_STRING "expat 2.7.1" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "expat" @@ -98,7 +98,7 @@ #define PACKAGE_URL "" /* Define to the version of this package. */ -#define PACKAGE_VERSION "2.6.4" +#define PACKAGE_VERSION "2.7.1" /* Define to 1 if all of the C90 standard headers exist (not just the ones required in a freestanding environment). This macro is provided for @@ -106,7 +106,7 @@ #define STDC_HEADERS 1 /* Version number of package */ -#define VERSION "2.6.4" +#define VERSION "2.7.1" /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most significant byte first (like Motorola and SPARC, unlike Intel). */ From nobody Mon Apr 7 03:48:06 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWFY747Q7z5sZPc; Mon, 07 Apr 2025 03:48:11 +0000 (UTC) (envelope-from philip@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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWFY73JpZz3KjB; Mon, 07 Apr 2025 03:48:11 +0000 (UTC) (envelope-from philip@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1743997691; h=from:from:reply-to:subject: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=7OM4LrIAnQvUfU+hty7EXfQsY29sZM/GJVSlvVMCx+k=; b=yn3Oz31rk9zNHkbDGbCJAY3bP+h+c/kIMa/x+fJD/5V3UKEmMjpSBiczb8ZMfw92aXvAHD ZigH1his/TR0p4la18isilzzTQvofFtOw7kpEcoa7o57W2QytI2zyLDIJFuoPjez5vBrLL rDPNUxb9LFGFjH/6TNnD51s8JkRjfIDd2WWIIcFGcLrX9Gdij64zKB4Xyke31+ZElqEjG1 AFXFmA8uVT0ZuCITktjogsD2zmoIbJcfReOXiXDzfiONX2jBVA3T1zmkC1iKMEUTrzc95r jrILPlIZOcSHfuCoHoH1w4kio5OSxwsb9IYUAewlvZdNeXoZHTKcd10g1W8BeQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1743997691; a=rsa-sha256; cv=none; b=x6SEqzdOGOCLUpU2ZNcDtwt9/Fnbab4rI/BAl1XTYvtWrA+GnGD+5BVTkvyUz8n1BbBvIw 6p4zg7pnAQt9R7lUR2JfVduPVKK93agZ8KEJnjkXNR+hMxAjkKOrdDeWgUXSc4yPp88gW2 VoNuCtMZev4bmNN4O8qMQSHwoHO9sOXgBhADHiqh6l9wFatiW2wPcwa0z8JzutWjFP7png t87JN5B9e9A2kOQDEiZKCLGDPU+laYAs0wYqrXOsCeFGdlo+GMz42ITt++EUA+K5DtXMFu /YPM2cc57z3WU7o1BXSXTyEz6009FuXSl/bkMJfPfZHJuL3r/IX4OTTUi+dnwg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1743997691; h=from:from:reply-to:subject: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=7OM4LrIAnQvUfU+hty7EXfQsY29sZM/GJVSlvVMCx+k=; b=TiZUKOEdh5O3/MHTQZRnUl5rT9XotgmWp5PiHtxfdA6CHykRmYDcdLj3KGwe2634gLNOKV PYKs4xID6tNq4MVt8t77D/Ik4kaub/3u0oM07UDTjlm4/DPxd/Wb7J0+SRzovfMFD2H18A ickHqt4oN8pDnmr3uwI+s+wzjRlunwaKm7tKzp7aiRpyTe3DQ7Lp2fYVtNnpwLpFqUhPd0 ErT6GkqJVRlAf1M6kf59KISzay1eppYl3K9QgbYf2vPT9Lsfu1yzfOlNIRHVMNHPT63UrF HKdNSuH4PSaPmq6zpi/eCeQkivLW1j2Yx17W9oSEaoVaUCngAanha+p3ObXS3w== Received: from fauth-a2-smtp.messagingengine.com (fauth-a2-smtp.messagingengine.com [103.168.172.201]) (using TLSv1.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: philip/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4ZWFY721mBz16rQ; Mon, 07 Apr 2025 03:48:11 +0000 (UTC) (envelope-from philip@freebsd.org) Received: from phl-compute-05.internal (phl-compute-05.phl.internal [10.202.2.45]) by mailfauth.phl.internal (Postfix) with ESMTP id 43ACC1200043; Sun, 6 Apr 2025 23:48:10 -0400 (EDT) Received: from phl-mailfrontend-01 ([10.202.2.162]) by phl-compute-05.internal (MEProxy); Sun, 06 Apr 2025 23:48:10 -0400 X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefvddrtddtgdduleeludefucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggv pdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucenucfjughrpefhvf fufffokfgjfhggtgfgsehtqhhmtdertddtnecuhfhrohhmpefrhhhilhhiphcurfgrvghp shcuoehphhhilhhiphesfhhrvggvsghsugdrohhrgheqnecuggftrfgrthhtvghrnhepve evieeuffefieeigfdukeduvdehteduhfelfeejhfetgfegudetfeelhfefhfetnecuffho mhgrihhnpehfrhgvvggsshgurdhorhhgnecuvehluhhsthgvrhfuihiivgeptdenucfrrg hrrghmpehmrghilhhfrhhomhepphhhihhlihhpodhmvghsmhhtphgruhhthhhpvghrshho nhgrlhhithihqdduudeiiedviedvgeekqddvfeehudektddtkedqphhhihhlihhppeepfh hrvggvsghsugdrohhrghesthhrohhusghlvgdrihhspdhnsggprhgtphhtthhopeefpdhm ohguvgepshhmthhpohhuthdprhgtphhtthhopehsrhgtqdgtohhmmhhithhtvghrshesfh hrvggvsghsugdrohhrghdprhgtphhtthhopeguvghvqdgtohhmmhhithhsqdhsrhgtqdgr lhhlsehfrhgvvggsshgurdhorhhgpdhrtghpthhtohepuggvvhdqtghomhhmihhtshdqsh hrtgdqmhgrihhnsehfrhgvvggsshgurdhorhhg X-ME-Proxy: Feedback-ID: ia691475d:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun, 6 Apr 2025 23:48:08 -0400 (EDT) From: Philip Paeps To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 00c8538e87c6 - main - lib/libexpat: update build config for 2.7.1 Date: Mon, 07 Apr 2025 11:48:06 +0800 X-Mailer: MailMate (2.0r6242) Message-ID: <59F9CCC1-C165-4765-BBA5-03623ED32478@freebsd.org> In-Reply-To: <202504070338.5373cHf2007354@gitrepo.freebsd.org> References: <202504070338.5373cHf2007354@gitrepo.freebsd.org> List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; format=flowed Content-Transfer-Encoding: quoted-printable On 2025-04-07 11:38:17 (+0800), Philip Paeps wrote: > The branch main has been updated by philip: > > URL: = > https://cgit.FreeBSD.org/src/commit/?id=3D00c8538e87c61f1fd57ccd9e02a6d= 435b68d9a73 > > commit 00c8538e87c61f1fd57ccd9e02a6d435b68d9a73 > Author: Philip Paeps > AuthorDate: 2025-04-07 03:36:45 +0000 > Commit: Philip Paeps > CommitDate: 2025-04-07 03:36:45 +0000 > > lib/libexpat: update build config for 2.7.1 > > Forgotten in fe9278888fd4414abe2d922e469cf608005f4c65. > > Point hat to: philip I didn't notice the version numbers in lib/libexpat until I started = preparing the merges to the release/X branches this morning. No harm = done other than a bit of repo-churn though. Sorry for the noise and the churn! Philip From nobody Mon Apr 7 12:01:20 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWSV85BhYz5t9ht; Mon, 07 Apr 2025 12:01: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWSV849C4z3vTJ; Mon, 07 Apr 2025 12:01:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744027280; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=br9q9TS0qa5WXGI9Acmx6Upt9x7Hz2rcRRN6kTEyUOg=; b=FyPcNRD70fRr2tiOFZnaVkSEVkwZwo7ZtUQOjQWG1COp3fPkTIvKSFKziceIuq0RjNCi0E 0XjkTw3SuvxF581xPpmkeROcfQZAcFXPU5+5VDEJ8f4aBlSg5B64GwdFCE/Wb5iu3ZbgA+ cr7UI4dJyVBQzvg+hNG4gwR2cbqKh1o/1TOy6+h6JxuTtE8nr4eBt0UKWmNTYg+57vlf/B mth4ACMdFMLr4/fbyPM1GNoCTHMJ4kMoqf8zYZLi45WvK8yXXNbnBehA0vWG0zUxj4129+ 8tNJBoLcat3C1wsnGq4AbOx+TgC2rXQfIn3ysPFhn+V3PUnDHB8UQvftUV/gGQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744027280; a=rsa-sha256; cv=none; b=pswncAkQ+ruyjebYMbj30AyXJPwduPpQ8AEPNHdztpmo6NnbWxwAS2Bd2kyuPrCsBXXkGK jaF+j4kFe6rBFYnVaD6i5tJ9P0vQjuTQc4VIGtOlSPOIauoxqtkGrEXiNpsD102/AKxs+H fJS4kwBAQ0hgNDRxKf73D/OUMnrpmkmdFtpOCM7DfbTS1D/1uJy++Fl/sxUUQr86BgEoRo j2xFZjXGSnmTlXSyB8hx+zRUKJgvJbF50xfwmaHGQn/BP6qd+wiDOrEdfXlN6Vt0a0Zbvf uLeJVNJNh7mHFj4U2BI9KhBdq66R2W/8Q4Fl0h2BcltRISBvdknDZIoN/pZY1Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744027280; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=br9q9TS0qa5WXGI9Acmx6Upt9x7Hz2rcRRN6kTEyUOg=; b=GG0AKDPZ6aT1CvEgmNBpkVdZooqMVXs5f+TzUzxM7KYQJRf6jFZ/jftcTqnoMd1BI1ypLA Oojqoo+fkdA34tNZ22uEEGr+ikAPYNuWViHsNV8GJJu5XWIdx8hyeqEmk8npFh+yseXG7F BPAbsl4Q8hz7RhzAtmtJdnt+cMwyKjMHwXQONsslArQixOgNQS/ECBKowSG8Cl+5SpG81t 1UYv+wejv9Cow8HNESJ1hT171HljT5pfbZLRVXxF4EKel74z/noC8nQd/eqZiZcw8rhRgB /XAXD8QkgLCbTAmxuUs+B4PEcgOcRINBGmT9pjOjrJ3i62k88Tmi3dEmnfcMpg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWSV83Wv4zmMN; Mon, 07 Apr 2025 12:01:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 537C1KNh049437; Mon, 7 Apr 2025 12:01:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 537C1KOY049434; Mon, 7 Apr 2025 12:01:20 GMT (envelope-from git) Date: Mon, 7 Apr 2025 12:01:20 GMT Message-Id: <202504071201.537C1KOY049434@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: da05ca9ab655 - main - vm_object: Make a comment more clear List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: da05ca9ab655272569f4af99c86d2aff97a0d2ab Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=da05ca9ab655272569f4af99c86d2aff97a0d2ab commit da05ca9ab655272569f4af99c86d2aff97a0d2ab Author: Mark Johnston AuthorDate: 2025-04-06 22:51:24 +0000 Commit: Mark Johnston CommitDate: 2025-04-07 11:59:57 +0000 vm_object: Make a comment more clear Reviewed by: alc, kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D49675 --- sys/vm/vm_object.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c index c69fd0d1c161..1bf5bbe5abb2 100644 --- a/sys/vm/vm_object.c +++ b/sys/vm/vm_object.c @@ -1603,7 +1603,7 @@ retry: * One other possibility is that the map entry is wired, in * which case we must hang on to the page to avoid leaking it, * as the map entry owns the wiring. This case can arise if the - * backing pager is truncated. + * backing object is truncated by the pager. */ if (vm_page_none_valid(m) && entry->wired_count == 0) { if (vm_page_iter_remove(&pages, m)) From nobody Mon Apr 7 12:01:21 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWSV96BvTz5t9w4; Mon, 07 Apr 2025 12:01: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWSV94xGfz3vNm; Mon, 07 Apr 2025 12:01:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744027281; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZZSJpdvI9TgPPlRKD1qTZANbllUPT6aXmp+L0mVTRK8=; b=xfl9ZpBExc/DXRoPOmr7IAX3Tqsd8LbxF5gp33YZ1MAdD9qdNXI4eSgq5myq9ZmoUgevDb ZFIns1aGM0m084WpWTkgoLkcSIu9+N6lHWtFLuXkruoVMQ/9S3IM+amPnm52CU7F+NZ9op le3Q09oKWEtqH4JEfSMd9GP2RFJUNDuvsbvgkB0Z8Yi+5CmQBKkOnA0dVNhF3R8FvGtUs1 AVZn1PmvGjnef7dggYEr0mjuEYG2BiuPMCKIEQ1coCI7l5FRcSrVElf+pi3Kth8LnZxsAj 1GAtj5B8aLquHq91FW3iwpepG41SJTxyoJ/m8F8Qg52PJ8YSQzB0ZSV8O/vA8A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744027281; a=rsa-sha256; cv=none; b=Ded5ghNXMOcFpOB6SwttJiErUCh7dwM++fOymYoAqRiIRhrUySbh7uQTwYjZVNXstzyDfJ bsBqOWOH3BeczTX+2hKVMpTL2+pJRz31674k1UMD/am+AU4+lkha31M4aT12qg7MmtLwcb 4RU5JNnhwwv06ptNHf7/+H+RLo3DfKVLFvVxUMbsEeaBQGU2B/m8U+uh8aQXwhH020LVjO /r7IpnSv5L57Jn34TE5GsASeKMiAqEiO7TXrDxicjwaVuoSyukpicJeY7/aDNTUmqgeBJt OMGHdEVZZEmpOZDgbjpoZGf/3K8u4/HIwWTsYOSrCsj52neu0c/I/Fu5YUwZzA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744027281; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZZSJpdvI9TgPPlRKD1qTZANbllUPT6aXmp+L0mVTRK8=; b=fcXC+4OGFq7/EdNnbA0Iz8KfVRCLsfz6oHgNpyouXeKDiMIzef0OKfb5Pf0L+n5nD+ZOm5 81Vpc/K2vKIGsMASTz9xf3qS8jGRHYdK709NeU18bQBIZXe3V+2Gn7n6ZVGm+RB7TVUAPb hz5eXPiiMmiI3+cGtrmSzjrYA1xMuMr13dmqae7GmsYvFGJRNHJxzG/jLdhto1Kgo0MOau z0hLD6rbcHHwgPQgbeJXObjUCasfYifpIxS8nDFSs5Z3SCslNOD+LrMzEPe1oBDXoWg1+a LKHwAnUAgl1ERobn40eNJhbSU2WXlmAkn5pTrHrHugBiGh/pR5Yw6gJKNq5KjQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWSV94TW8zmMQ; Mon, 07 Apr 2025 12:01:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 537C1L8m049476; Mon, 7 Apr 2025 12:01:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 537C1La5049473; Mon, 7 Apr 2025 12:01:21 GMT (envelope-from git) Date: Mon, 7 Apr 2025 12:01:21 GMT Message-Id: <202504071201.537C1La5049473@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 82d8c609cfb7 - main - posixshm: Fix range locking in shm_write() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 82d8c609cfb7c6d8a9da8e30efa54240f293359e Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=82d8c609cfb7c6d8a9da8e30efa54240f293359e commit 82d8c609cfb7c6d8a9da8e30efa54240f293359e Author: Mark Johnston AuthorDate: 2025-04-06 22:51:53 +0000 Commit: Mark Johnston CommitDate: 2025-04-07 11:59:57 +0000 posixshm: Fix range locking in shm_write() There is a somewhat strange case where when writing to a POSIX shm object, the object is not allowed to grow, and the I/O offset+length overflows. In that case we simply truncate the I/O to the object size. Later we write-lock the range [offset, objsize). However, we were not checking whether offset > objsize, in which case we're writing zero bytes but locking an invalid range. Modify the range locking in shm_write() to take this possibility into account. While here, rename a variable to make its purpose a bit more clear, and add an assertion against negative offsets (which is supposed to be enforced by the caller of fo_write for I/O to files that aren't character devices). Reported by: syzkaller Reviewed by: kevans, kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D49673 --- sys/kern/uipc_shm.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/sys/kern/uipc_shm.c b/sys/kern/uipc_shm.c index b4016e9dd6bf..7004e4f1c6ea 100644 --- a/sys/kern/uipc_shm.c +++ b/sys/kern/uipc_shm.c @@ -481,7 +481,10 @@ shm_write(struct file *fp, struct uio *uio, struct ucred *active_cred, struct shmfd *shmfd; void *rl_cookie; int error; - off_t size; + off_t newsize; + + KASSERT((flags & FOF_OFFSET) == 0 || uio->uio_offset >= 0, + ("%s: negative offset", __func__)); shmfd = fp->f_data; #ifdef MAC @@ -503,21 +506,23 @@ shm_write(struct file *fp, struct uio *uio, struct ucred *active_cred, return (EFBIG); } - size = shmfd->shm_size; + newsize = atomic_load_64(&shmfd->shm_size); } else { - size = uio->uio_offset + uio->uio_resid; + newsize = uio->uio_offset + uio->uio_resid; } if ((flags & FOF_OFFSET) == 0) rl_cookie = shm_rangelock_wlock(shmfd, 0, OFF_MAX); else - rl_cookie = shm_rangelock_wlock(shmfd, uio->uio_offset, size); + rl_cookie = shm_rangelock_wlock(shmfd, uio->uio_offset, + MAX(newsize, uio->uio_offset)); if ((shmfd->shm_seals & F_SEAL_WRITE) != 0) { error = EPERM; } else { error = 0; if ((shmfd->shm_flags & SHM_GROW_ON_WRITE) != 0 && - size > shmfd->shm_size) { - error = shm_dotruncate_cookie(shmfd, size, rl_cookie); + newsize > shmfd->shm_size) { + error = shm_dotruncate_cookie(shmfd, newsize, + rl_cookie); } if (error == 0) error = uiomove_object(shmfd->shm_object, From nobody Mon Apr 7 13:14:50 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWV6z0DnYz5tG52; Mon, 07 Apr 2025 13:14: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWV6y53kzz3GNP; Mon, 07 Apr 2025 13:14:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744031690; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Nq4E8BsAsdf/UFRTdT/BE0+Oux486udswvTB1lA4EJ8=; b=jWZNUsEDB2ZRuY2Q8iX/+R/IJkRIB7pIwKdUo9K/kLR/zS+yuAj4+dM9MNUVzFwuZKKs8T PUJZULlDF3kqJEN9taci9YfDW4tDyDAAf4q/ypfYn0PUkD11TnP9EBeOxhVHdPCy1TP/eB h7PezBIPWj84fE5JQwUHEYqmVm4nEmOSkbRoFyHCKeI7CcgHJADJdzG176WIRic5TBWB2a 3MWXVKBq+c2pQKCw6FH1nXnk5j9/twVkG68Qc5OiTgxD3G84lxbH1gf5y6oeKfWqAIpqw2 l5J66L2Wt4qmAPFOIlMM5IG+pkUDYJEolUA0x0HPI40nVxoI0aohXDNtbDgMgw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744031690; a=rsa-sha256; cv=none; b=GmPq/mlLt1S1F/91yfVYwA/yJd0SUcWCfOGtknspNDCuDKKLZS/j2uOen8sBj1bMt/QCSE l9+RVMpvDmrqUC+yBH3LOzXgGsHJGhWzZzr3tl9/bA1SGId1koN8rUJWl8SMbMLwbxhpqF udM7Rm3lkL8jhn8R//fy0qgqwSnkzk6OzOL7WQq7wktvfL4oP3HakKGCGfxTsRySv7m6j1 Zz3WVj+lyag0800YZ+foABCIDc7ugJZXX0ojIGrykcL9vCdcVgk8v3oHRAmx5DBTKnAg8H 1rJhNd2uJPILbFZXw7z3mFIoxlDwk08leCFvTootEtOpShOTf4SSdKf/pSRpmg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744031690; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Nq4E8BsAsdf/UFRTdT/BE0+Oux486udswvTB1lA4EJ8=; b=K+ne/Qv+VIihgd4AiQE1jd8AyDp47cT/AqsGxIhfWh4LGwxyBeJprcmlpDaD96QhbCwSAS Nue5L4YFjXG3kE3oL4mZsdxN3ukxPsUkoQtCXnwohwJegGaI8N8Ol3Gjv5yCISjJdW27sD pi9vEi7NDCiqmiL+HCC/jVimPG+KX04SS+rblpAe0Mm90CFsqDcNCJwAd8MaXP3mntJHXg du9Mn8lM0uBQVBLlIMkcfM8fFAB6Qxr346QBAhrGsO6EerQKFyApYcYi19EiAWLrKtAhy+ vhglvfxPiM+s4NaBSb9TuP/ut6aoQagxm6H9UMX7DSbt6h+rpnPivRClqaz2lA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWV6y3H91znp5; Mon, 07 Apr 2025 13:14:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 537DEorx088715; Mon, 7 Apr 2025 13:14:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 537DEo2s088712; Mon, 7 Apr 2025 13:14:50 GMT (envelope-from git) Date: Mon, 7 Apr 2025 13:14:50 GMT Message-Id: <202504071314.537DEo2s088712@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 49bc071f4088 - main - nsswitch.conf: Avoid modification after installation List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 49bc071f40886af46eb90467dfef6cba5f95beec Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=49bc071f40886af46eb90467dfef6cba5f95beec commit 49bc071f40886af46eb90467dfef6cba5f95beec Author: Mark Johnston AuthorDate: 2025-04-07 12:42:08 +0000 Commit: Mark Johnston CommitDate: 2025-04-07 12:42:08 +0000 nsswitch.conf: Avoid modification after installation To implement WITHOUT_NIS, we have a hack in the build which modifies the installed nsswitch.conf to remove NIS compat providers and databases. This hack operates on the installed nsswitch.conf, which means that the installed file size won't match that listed in the metalog. One option would be to maintain two copies of nsswitch.conf, one for each configuration, but that would result in duplication and I don't see a clear way around that. Instead, stage a copy of nsswitch.conf in the libc objdir, and modify that one before installing, so that the version recorded in the metalog matches what actually gets installed. PR: 209718 Reviewed by: kevans, emaste Sponsored by: Klara, Inc. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49300 --- lib/libc/net/Makefile.inc | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/lib/libc/net/Makefile.inc b/lib/libc/net/Makefile.inc index 558cf7be5771..58c650b207cf 100644 --- a/lib/libc/net/Makefile.inc +++ b/lib/libc/net/Makefile.inc @@ -1,7 +1,7 @@ # machine-independent net sources .PATH: ${LIBC_SRCTOP}/net -CONFS+= net/hosts net/hosts.equiv net/networks net/nsswitch.conf net/protocols +CONFS+= net/hosts net/hosts.equiv net/networks ${.OBJDIR}/nsswitch.conf net/protocols SRCS+= base64.c ether_addr.c eui64.c \ gai_strerror.c getaddrinfo.c \ gethostbydns.c gethostbyht.c gethostbynis.c gethostnamadr.c \ @@ -176,9 +176,13 @@ MLINKS+=hesiod.3 hesiod_init.3 \ hesiod.3 hesiod_end.3 .endif -afterinstallconfig: modify-nsswitch-conf -modify-nsswitch-conf: .PHONY +all: ${.OBJDIR}/nsswitch.conf + +# Manually stage nsswitch.conf in the object directory so that we can edit it +# before installing. +${.OBJDIR}/nsswitch.conf: ${LIBC_SRCTOP}/net/nsswitch.conf + cp -f ${LIBC_SRCTOP}/net/nsswitch.conf ${.TARGET} .if ${MK_NIS} == "no" sed -i "" -e 's/.*_compat:/# &/' -e 's/compat$$/files/' \ - ${DESTDIR}/etc/nsswitch.conf + ${.TARGET} .endif From nobody Mon Apr 7 14:11:15 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWWN41SHBz5tKQb; Mon, 07 Apr 2025 14:11: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWWN40tRJz3T35; Mon, 07 Apr 2025 14:11:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744035076; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tAn79C4NhKOjPsoHKjED6gbPiyFPfo4y2EUtjHSqJ9Y=; b=ferk368BXq5N6YMbqukucCoUCngp2AM9iTLOJfHdp1+V+Mnl47oIpAj6cz72d2+m7aCFOK 6rVk6JXzqLMSGV1w+0YwtLxR8/4tHFz0mJb3Eck7AvhDcuBiO0hZmVALwEPNBDFbkTF1wL aeXdRiskMuSx1qBOnZWC8CdlNtwbcA6vHkqTJnDCDmTXHkdOO7qcwaXVjdFnkG3WwtiPTP mMbwfjmWUjaPM28qogDxgbq2fKxGTpI/Ozz8DSnuIF1fPxs7kUQll4jZnein4Ei3P92wIl 0yHPgktl2zyLb6HZ+om1IJVJ4OJMehs6tnjyxTTCUQ1uIJ8asOaA/uF05EhQkw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744035076; a=rsa-sha256; cv=none; b=VMXSeq+Sj1RgrMP3bUmeGg7uWb2w/CvgQyzHHFbx/1CJLImyZXtFae2D3FUm/hYFeN84cK zZiD5rg/Iym0+PbXsgL/8TnIOlK450Ck7Bx67qBf30WZpEGzpnLZEuh+no+tFb9s3dVzg0 cGg4n+YEzae+JJ+aOWyp5zjxDpdssAB9guGsxctl0it8zy/q2uhoBkVVtWEj3ZrWJsz8nF u5e7DbViAu1P/9EtmGf4ocTmheapma6U99kaFEiuy0lnxG8Rqauwn2AuLv57Bcbv0zPHnD orkSs1EKona454u5VrKCRvugQv4E/eC1QSJ4+cOAdSDM1EirNfQMU1qYwra5sQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744035076; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tAn79C4NhKOjPsoHKjED6gbPiyFPfo4y2EUtjHSqJ9Y=; b=RavF8aTV9YHBKczJga/ZoVN4UZVSNmg6B2tv04kPB16rK0iWv9r/Yf39W4Ool+MD/GuU4i 7otfoaiCS/1KkZo14/N0kpRf5Rvp544IVDI0rlrUDR8QiIF7TmtKPf1xQFXCMqp/U+Flum ekBj5xf+p0/YchCsuQ0xRzNr4vyQw0pQwuYEeuSNDQwchP9tdnMusiyrlU5RTWQgc1/E88 g/2tNmuM2lY6RIQhs5SFfHmVqtzVxvrXfPn+Bdt4X3/oGPscWzq69HRLMt+yI4Q11I/3lD +vqKBh3rqfsBLH2vU2Oce/Xkwo9wZG617WvQ14BRtVGtTFnJQVwYTCXbbASwCQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWWN40Qd0zqbg; Mon, 07 Apr 2025 14:11:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 537EBF05092675; Mon, 7 Apr 2025 14:11:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 537EBF5q092672; Mon, 7 Apr 2025 14:11:15 GMT (envelope-from git) Date: Mon, 7 Apr 2025 14:11:15 GMT Message-Id: <202504071411.537EBF5q092672@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 1101d628223d - main - copy_file_range: Fix overlap checking List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1101d628223d2188c244a4df9b0cb4eaff57e968 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=1101d628223d2188c244a4df9b0cb4eaff57e968 commit 1101d628223d2188c244a4df9b0cb4eaff57e968 Author: Mark Johnston AuthorDate: 2025-04-07 14:03:50 +0000 Commit: Mark Johnston CommitDate: 2025-04-07 14:03:50 +0000 copy_file_range: Fix overlap checking The check for range overlap did not correctly handle negative offests, as the addition inoff + len is promoted to an unsigned type. Reported by: syzkaller Reviewed by: rmacklem MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D49674 --- sys/kern/vfs_syscalls.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c index 1a3400a87eeb..7b71ffc76892 100644 --- a/sys/kern/vfs_syscalls.c +++ b/sys/kern/vfs_syscalls.c @@ -5075,6 +5075,15 @@ kern_copy_file_range(struct thread *td, int infd, off_t *inoffp, int outfd, if (len == 0) goto out; + /* + * Make sure that the ranges we check and lock below are valid. Note + * that len is clamped to SSIZE_MAX above. + */ + if (inoff < 0 || outoff < 0) { + error = EINVAL; + goto out; + } + /* * If infp and outfp refer to the same file, the byte ranges cannot * overlap. From nobody Mon Apr 7 16:51:22 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWZwp1qblz5rZLq; Mon, 07 Apr 2025 16:51: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWZwp1HSKz3BmK; Mon, 07 Apr 2025 16:51:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744044682; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VIsyVBiFiqXqRfB5L/ZwJVRBeAvAj57M7uVQUN1jd/s=; b=UdFgH5SIbpcKL/5YkrDG8HUveoS/LWqw2o2RvrvMtGVzvXnvEO3kYPFofoZ+Fk2eh4bmwc V9KHWcmv/XEGjOny8y+1mr/BeLlBxQhL8irDXpJe+9yjBOyij+fCmp6x60v2E3k2/9F9jy +S5UcSaB6dFYeZn/Jb8i0DmM3g6Adf6FwJVVHntcwe25ZgX0orz/1dvSDwsonZoDwSsNVP sXY4SJFlhX9yyz8EQJ4hrLhdMOnVsH1dpaZKoqx2Qj4G6pOeF+cBSr5ncs+z/u//nOG5T/ Z2eu5EveDoJa4l7/V7vOmEUUcRWvUCGeRaRj8q2pKihRyofalGLDeiJlUiuQrw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744044682; a=rsa-sha256; cv=none; b=lvNK5d193WvAebPnkBaSkX73iYtab2dedGyOBI1uJ549FMH4C2bmA/g+PJ9bmPA9+c8Q7o T9E5RqCd+EDNEgdwsM8qB42LGJjNta+/2KWzy367HRymQyKXWSAqk+iKecwL8J7VrWYz2l 6KY+c8sGUpi0SqToGSITO7k6ua7ty93eDImoaqqULa7TsRHwT6aqtqhrQ29y476MiyiO9Q J3TQK8FzfakbunJKSz7hsZ6FeeQEbBJUwTUohO/IR4Uxs/MAlM7EJvn/Rr8b9Kdk41su/m FZcAS2rPAYBgRPXLdtmKbWYZSfeVVlxSVBg6dGvIHpaB6C8FDRiJuqZW6ZQSNA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744044682; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VIsyVBiFiqXqRfB5L/ZwJVRBeAvAj57M7uVQUN1jd/s=; b=EAnfDTpQvSFIZWEthNsBkDh5HOLnOSsUENZphv7uNgad+/FVNBO6kAmRPyiLEcUyGfySCQ FZNdsIErEesnvrnep7vGT0SVuIEHhMJ6lDGjNdarPx+OX4vE002NwCBv/EoCpHAP7Jd1Ab /6EnUEzyT5dp/TG0n38DZzeNCWS7cJNyhiKoizvjK9IdUpTUoOixZQ7MwSjBHNwkODE8Yt qBosx0h7bi0CwsftbnJyC7nL6Gx74aQYfgFXdjlM6B2/j62nBdPViDM93rfPB2N6ibTmuX tNQXqAbaPZDOecndmCgdRl/sSjsY/5XHTQXDVWkDOS/wxzZWfCc5pv5AGKAuUA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWZwp0Vckzvb3; Mon, 07 Apr 2025 16:51:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 537GpMfU092862; Mon, 7 Apr 2025 16:51:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 537GpMYm092859; Mon, 7 Apr 2025 16:51:22 GMT (envelope-from git) Date: Mon, 7 Apr 2025 16:51:22 GMT Message-Id: <202504071651.537GpMYm092859@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Tuexen Subject: git: 46fc12741e70 - main - tcp: cleanup List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 46fc12741e70f2d1f0510a0dacd2f9dd3aa116c0 Auto-Submitted: auto-generated The branch main has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=46fc12741e70f2d1f0510a0dacd2f9dd3aa116c0 commit 46fc12741e70f2d1f0510a0dacd2f9dd3aa116c0 Author: Michael Tuexen AuthorDate: 2025-04-07 16:49:05 +0000 Commit: Michael Tuexen CommitDate: 2025-04-07 16:49:05 +0000 tcp: cleanup Remove the macros COPY_STAT and COPY_STAT_T, since they do not improve the readability of the code. No functional change intended. Thanks to glebius@ for suggesting the change. Reviewed by: glebius, rrs MFC after: 3 days Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D49670 --- sys/netinet/tcp_log_buf.c | 54 ++++++++++++++++++++++------------------------- 1 file changed, 25 insertions(+), 29 deletions(-) diff --git a/sys/netinet/tcp_log_buf.c b/sys/netinet/tcp_log_buf.c index 5142b3ebdd71..f540c7d3e70e 100644 --- a/sys/netinet/tcp_log_buf.c +++ b/sys/netinet/tcp_log_buf.c @@ -1840,40 +1840,36 @@ retry: log_buf->tlb_txbuf.tls_sb_ccc = 0; } /* Copy values from tp to the log entry. */ -#define COPY_STAT(f) log_buf->tlb_ ## f = tp->f -#define COPY_STAT_T(f) log_buf->tlb_ ## f = tp->t_ ## f - COPY_STAT_T(state); - COPY_STAT_T(starttime); - COPY_STAT(iss); - COPY_STAT_T(flags); - COPY_STAT(snd_una); - COPY_STAT(snd_max); - COPY_STAT(snd_cwnd); - COPY_STAT(snd_nxt); - COPY_STAT(snd_recover); - COPY_STAT(snd_wnd); - COPY_STAT(snd_ssthresh); - COPY_STAT_T(srtt); - COPY_STAT_T(rttvar); - COPY_STAT(rcv_up); - COPY_STAT(rcv_adv); - COPY_STAT_T(flags2); - COPY_STAT(rcv_nxt); - COPY_STAT(rcv_wnd); - COPY_STAT_T(dupacks); - COPY_STAT_T(segqlen); - COPY_STAT(snd_numholes); + log_buf->tlb_state = tp->t_state; + log_buf->tlb_starttime = tp->t_starttime; + log_buf->tlb_iss = tp->iss; + log_buf->tlb_flags = tp->t_flags; + log_buf->tlb_snd_una = tp->snd_una; + log_buf->tlb_snd_max = tp->snd_max; + log_buf->tlb_snd_cwnd = tp->snd_cwnd; + log_buf->tlb_snd_nxt = tp->snd_nxt; + log_buf->tlb_snd_recover = tp->snd_recover; + log_buf->tlb_snd_wnd = tp->snd_wnd; + log_buf->tlb_snd_ssthresh = tp->snd_ssthresh; + log_buf->tlb_srtt = tp->t_srtt; + log_buf->tlb_rttvar = tp->t_rttvar; + log_buf->tlb_rcv_up = tp->rcv_up; + log_buf->tlb_rcv_adv = tp->rcv_adv; + log_buf->tlb_flags2 = tp->t_flags2; + log_buf->tlb_rcv_nxt = tp->rcv_nxt; + log_buf->tlb_rcv_wnd = tp->rcv_wnd; + log_buf->tlb_dupacks = tp->t_dupacks; + log_buf->tlb_segqlen = tp->t_segqlen; + log_buf->tlb_snd_numholes = tp->snd_numholes; log_buf->tlb_flex1 = 0; log_buf->tlb_flex2 = 0; - COPY_STAT_T(fbyte_in); - COPY_STAT_T(fbyte_out); - COPY_STAT(snd_scale); - COPY_STAT(rcv_scale); + log_buf->tlb_fbyte_in = tp->t_fbyte_in; + log_buf->tlb_fbyte_out = tp->t_fbyte_out; + log_buf->tlb_snd_scale = tp->snd_scale; + log_buf->tlb_rcv_scale = tp->rcv_scale; log_buf->_pad[0] = 0; log_buf->_pad[1] = 0; log_buf->_pad[2] = 0; -#undef COPY_STAT -#undef COPY_STAT_T /* Copy stack-specific info. */ if (stackinfo != NULL) { memcpy(&log_buf->tlb_stackinfo, stackinfo, From nobody Mon Apr 7 18:01:24 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWcTd0Mghz5rwRc; Mon, 07 Apr 2025 18:01: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWcTc73HSz3Sbh; Mon, 07 Apr 2025 18:01:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744048885; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+NTF9UuxIao6FYE6b0KrzXYxGVO8+w0ry3ULebYLbfw=; b=ORIglBa3eLN0Zw89Jmy6TaQmsuGPa4qbPfXVtn7JwVaWWlqFR15fi9BjeEBMT/ttJrpLYD CRMdvm7thpmNiWYfFvw6TRjU5vumGBQN+Vj15IgDUpCSBwhnDiCSvPo9+bghUFvaCKgC2G zmNYiJ9v0STG5FqZyKieq85w7PJO7hVjE7f7CTR8ZmZwKh20Mu7jaDsDgEkdwSrO50hNdR ba5Fl/SD3VRJe9y504yTQfT39vM6c9tGLaQcbGV+YpGCWS/6zDD6eqAVW4kVYr07AOwZRs RqclmEVxI5Zcg8+6r9SwpUNbMqqVfIelrxS3x5otg9DExURT+Z1VAJsJEfogmg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744048885; a=rsa-sha256; cv=none; b=RlnLTYj00pu9ZEqKiEh2Dry6d9bLkMNuzLS2BimFjeLmF8DP4nCkAY0meh9FXSVqRyXAu+ g1H0TK03bwXqYbAHLmJyc++zTFMSiDV8xl+a3awjO7IHWe/8kqE9duPmOPIYfxWcl5TNe2 yFugYzYfOsJyCxbpd7VF5/Gohq35yka4/A8FPQ1RHdaJyhPmpcBQ0tyFbIX6TEfdquwT7C I2yoCuxI6/MuVo0vbcN1E+5tMggYKMHZWA1sYYn8b0TZ5P2R1oHyBdIGbpXM4qAG5g+627 qHBf3d9flhkDUQAa3Vz1E7ZuUHihzDC9frxDobv5cc4k7wEZJe+Lsj+26TZRIQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744048885; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+NTF9UuxIao6FYE6b0KrzXYxGVO8+w0ry3ULebYLbfw=; b=aIsc57fgrgM01HLeq7FlP4/Y9x0HRk0dNDeAaXLoQT6i1XUPNksEWSG28Txa/RVbervpKs EiIaAKT8KIU7S+kqjkn9GtwP4sOs5lT1X3VizXnCKxNUJzoxYBLlGfX1K6s353/5BgO8qS 4VY25rDzwfAXRs9cXSf192N0dkvLvIKm2JBQc/0MmVxsisAC4URR3pIHv34wsCVHZgK/XN w6/VfVN2FPoHQ1B8yKLbmgvhgAFT1oNrGyTT4TzN8Vc70f6D4tg0lwcVbK35w0YNSGlrfb kZY9NaXNnPi0DCjGvldtjht1MInNaivaLS5bHMMZxJo7raiK9uQidor7wMVr3w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWcTc6QrFzx8v; Mon, 07 Apr 2025 18:01:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 537I1OZd028157; Mon, 7 Apr 2025 18:01:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 537I1O69028154; Mon, 7 Apr 2025 18:01:24 GMT (envelope-from git) Date: Mon, 7 Apr 2025 18:01:24 GMT Message-Id: <202504071801.537I1O69028154@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: ca4ce6a56f9c - main - linuxkpi: Add `sysfs_create_bin_file()` and `sysfs_remove_bin_file()` List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ca4ce6a56f9c174917ab33191d367a850fc15c89 Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=ca4ce6a56f9c174917ab33191d367a850fc15c89 commit ca4ce6a56f9c174917ab33191d367a850fc15c89 Author: Jean-Sébastien Pédron AuthorDate: 2025-02-08 20:28:10 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-04-07 17:34:40 +0000 linuxkpi: Add `sysfs_create_bin_file()` and `sysfs_remove_bin_file()` They are used by the i915 DRM driver for quite some time, but that code was commented out. It was moved around in Linux 6.8, so instead of figuring out what should be commented out now, let's add an implementation of these functions. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49068 --- sys/compat/linuxkpi/common/include/linux/sysfs.h | 83 ++++++++++++++++++++++++ 1 file changed, 83 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/sysfs.h b/sys/compat/linuxkpi/common/include/linux/sysfs.h index b5ad73e4460b..c6692b803789 100644 --- a/sys/compat/linuxkpi/common/include/linux/sysfs.h +++ b/sys/compat/linuxkpi/common/include/linux/sysfs.h @@ -50,6 +50,15 @@ struct attribute_group { struct attribute **attrs; }; +struct bin_attribute { + struct attribute attr; + size_t size; + ssize_t (*read)(struct file *, struct kobject *, struct bin_attribute *, + char *, loff_t, size_t); + ssize_t (*write)(struct file *, struct kobject *, struct bin_attribute *, + char *, loff_t, size_t); +}; + #define __ATTR(_name, _mode, _show, _store) { \ .attr = { .name = __stringify(_name), .mode = _mode }, \ .show = _show, .store = _store, \ @@ -155,6 +164,80 @@ sysfs_remove_file(struct kobject *kobj, const struct attribute *attr) sysctl_remove_name(kobj->oidp, attr->name, 1, 1); } +static inline int +sysctl_handle_bin_attr(SYSCTL_HANDLER_ARGS) +{ + struct kobject *kobj; + struct bin_attribute *attr; + char *buf; + int error; + ssize_t len; + + kobj = arg1; + attr = (struct bin_attribute *)(intptr_t)arg2; + if (kobj->ktype == NULL || kobj->ktype->sysfs_ops == NULL) + return (ENODEV); + buf = (char *)get_zeroed_page(GFP_KERNEL); + if (buf == NULL) + return (ENOMEM); + + if (attr->read) { + len = attr->read( + NULL, /* <-- struct file, unimplemented */ + kobj, attr, buf, req->oldidx, PAGE_SIZE); + if (len < 0) { + error = -len; + if (error != EIO) + goto out; + } + } + + error = sysctl_handle_opaque(oidp, buf, PAGE_SIZE, req); + if (error != 0 || req->newptr == NULL || attr->write == NULL) + goto out; + + len = attr->write( + NULL, /* <-- struct file, unimplemented */ + kobj, attr, buf, req->newidx, req->newlen); + if (len < 0) + error = -len; +out: + free_page((unsigned long)buf); + + return (error); +} + +static inline int +sysfs_create_bin_file(struct kobject *kobj, const struct bin_attribute *attr) +{ + struct sysctl_oid *oid; + int ctlflags; + + ctlflags = CTLTYPE_OPAQUE | CTLFLAG_MPSAFE; + if (attr->attr.mode & (S_IRUSR | S_IWUSR)) + ctlflags |= CTLFLAG_RW; + else if (attr->attr.mode & S_IRUSR) + ctlflags |= CTLFLAG_RD; + else if (attr->attr.mode & S_IWUSR) + ctlflags |= CTLFLAG_WR; + + oid = SYSCTL_ADD_OID(NULL, SYSCTL_CHILDREN(kobj->oidp), OID_AUTO, + attr->attr.name, ctlflags, kobj, + (uintptr_t)attr, sysctl_handle_bin_attr, "", ""); + if (oid == NULL) + return (-ENOMEM); + + return (0); +} + +static inline void +sysfs_remove_bin_file(struct kobject *kobj, const struct bin_attribute *attr) +{ + + if (kobj->oidp) + sysctl_remove_name(kobj->oidp, attr->attr.name, 1, 1); +} + static inline int sysfs_create_link(struct kobject *kobj __unused, struct kobject *target __unused, const char *name __unused) From nobody Mon Apr 7 18:01:25 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWcTf30P1z5rwNy; Mon, 07 Apr 2025 18:01: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWcTf0Ymnz3SH6; Mon, 07 Apr 2025 18:01:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744048886; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jTC0g+K5KFQex1RV7cmXmex2KRVwPRdcarmBoDQKJng=; b=yckFNT6QJhNxUu0wmNl6eMSKtf7LyooPZR1de6D5zYwFKtsnboQiUsmV7tLjaB/x+VoobR q1GfHpOQjN+4N9++eCMJ09PaEauA9SrHnYkkcESHEH62NCKV0z92FK0ZIsP8/Op1D7tUv0 jaReikb9VBG+Y6vqXwd8Mw+IMHBdfPzLrmPjiacPkemzIalCm+9GcAK9NOumXhRNi/6QiB aB/ldSi6LJrt7cZZMz8fprh0oYYfBC4jVDh+Gz36irERXM9F3Twt7MLHHlkxzP63JeJkxI if9WPK5johSgKrb2yxYUBAFO6YkNd2q4HswQxfMk2QGT3mGo4J9JbHalE8YL9w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744048886; a=rsa-sha256; cv=none; b=Vg2pLYxFXpJ5qZNTLpFZeaH3hnyBtI916aHUs/sxoMNkpM/1Vw+k0wgQeYNaKyXw01ZAWw iPwi32vroVPN6cfRriZ9BkF/IC6H7chQTxA5OY0lcXGiv258k9kuyvejfvD9evuUpHb/tU xyMZdWNFUODyRVCkupzQNE1SJ2m7mEpMlK876XULySNZnBk9skWTvPIRIBwVmCE1ECBbG8 kdrOd0tRPawZ/KPA0lIiTwsLuKB3yqSodvRyXI0Jc7mS3c15wE/CuZzhLYRgmuMwznwXPw 4vEAm/PzdKr849z8g21/t0mvlFpctgMwiJ0NOnqtZu27EnsSdjiK86JEyB3imQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744048886; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jTC0g+K5KFQex1RV7cmXmex2KRVwPRdcarmBoDQKJng=; b=maHKYby/qxX1kVJYXJA7670zgkY97h23b097bZXK8zTWWmwOmeNyckx09nok8UcLwSQXf5 4Xs20cWjSWu87rNMmABjYMAqanyQquQHfMUmmxbtrtNN4V6Guxz+Vz7X8d2lO4kN0GDDxJ /yS1BW6ZlthusDZOsOaA0S03HcFSW2hjlaH1GC6iMb6av3da1KPkq4bFiUZHj0DXIbum3f nAkOVfwOPP6oa7Vdi4yHWDbAC1mFGOvUtst8xET+GVDv+8C5pnpFba2cUStuFt2WA74soh LGqR8jEVKmqdniInCBh2LysIeJwODXAX8G8Nzfru3JfAgZ+giOrT8jDrcvbLhg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWcTf07f4zwtC; Mon, 07 Apr 2025 18:01:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 537I1PoU028201; Mon, 7 Apr 2025 18:01:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 537I1P9S028198; Mon, 7 Apr 2025 18:01:25 GMT (envelope-from git) Date: Mon, 7 Apr 2025 18:01:25 GMT Message-Id: <202504071801.537I1P9S028198@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: c2a591813a9b - main - linuxkpi: Add `show_fdinfo()` to `struct file_operations` List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c2a591813a9b3ebec2f06a87ca812c1c8b94da3a Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=c2a591813a9b3ebec2f06a87ca812c1c8b94da3a commit c2a591813a9b3ebec2f06a87ca812c1c8b94da3a Author: Jean-Sébastien Pédron AuthorDate: 2025-02-08 21:42:30 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-04-07 17:35:14 +0000 linuxkpi: Add `show_fdinfo()` to `struct file_operations` We never call this field but it allows to compile drivers without modifications. This is used by the DRM drivers for some time, but another change part of the update to Linux 6.8 led to compile them with `CONFIG_PROC_FS`. This connected code that uses this struct field. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49069 --- sys/compat/linuxkpi/common/include/linux/fs.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/fs.h b/sys/compat/linuxkpi/common/include/linux/fs.h index 76a81e676744..f1568ad6282d 100644 --- a/sys/compat/linuxkpi/common/include/linux/fs.h +++ b/sys/compat/linuxkpi/common/include/linux/fs.h @@ -150,6 +150,11 @@ struct file_operations { * an illegal seek error */ off_t (*llseek)(struct linux_file *, off_t, int); +/* + * Not supported in FreeBSD. That's ok, we never call it and it allows some + * drivers like DRM drivers to compile without changes. + */ + void (*show_fdinfo)(struct seq_file *, struct file *); #if 0 /* We do not support these methods. Don't permit them to compile. */ loff_t (*llseek)(struct file *, loff_t, int); From nobody Mon Apr 7 18:01:27 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWcTg3rQpz5rw2s; Mon, 07 Apr 2025 18:01: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWcTg1mz8z3Sdy; Mon, 07 Apr 2025 18:01:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744048887; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ywWyqMqjjcAiNFqbZizs9B0ZWeGywZ7P73KJxzPuuAs=; b=Mx8okZIwCKRnKc0PDMmytmIJbf5gwxc5aC6UMo5bzXJ2wArnxtttPV7qQwL96VHICb69hE bNSsDRE40xBWVBMc4SSwGmpetICerBJSSaqpBJvrQlScptiBowCk9wVh9C3nmUYxRxBLSR rNpJu+16qStfc5CxJPlwi5YixMlkdMlfBLqb+Ktzvqh2eVEYukGgwxwx5+rF+bkyIrblVk t32b6uPIltyucxZGcDfp9bWiA6KMcBldbk9rISu+1wJxLbmn60U30bRBiEl+OUFrmFvyuK rrx52LGw20hVoRu65zsIHlT0vp5NXmgff2XoQRyNt3zlvRcEgE5uwMQ9YDlorg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744048887; a=rsa-sha256; cv=none; b=JEccyDw3vEUZ7obErG4pQVR2oLHhTP/uwrFD+i5Ji2+9D7wJDEPyym8J9eRS50xg1FwRTq MTxbwiK9+92IZDKI//alJnivyjSs2kMrnd3PGzMax+33NLvJjKwxIfx3XtGZdAcJFwssW+ +Ef/Jmt9sZFnlhxemh6EeaP2Sp+fHTPx/fsZdXAfhlEG4ijinuk2SdDxIKUIMdM6h1MuFa 6J91NfR1YJWVOIhaeyj8AVuT7p6iio06kld5yp2ygDmIf4efW1LtQ+E6Bj6K0URdS6rRCe YD44OgXAIoOOHrD6iLlKm8/d7RMtifUU9vBORp98LRdjVgJaF1v1Wu1WRjdAJA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744048887; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ywWyqMqjjcAiNFqbZizs9B0ZWeGywZ7P73KJxzPuuAs=; b=ZCdpmsaKytjFS+NUvVUKm8s9blCxOPNZALrXLDGxEvnLWA2omtKCJkLHLjxutMyhftq9nf gipm/LUkJT7pwJgebPtP0z4GPIN3bLN5ANymVPvUL8g96Nhgf/9bNhJV3CtADueQa+jP34 26HEUjREDR1Y/lH33Ae+fZl9ltzKAjU24E0YGqa+XK/d5CAb6670o3KBeu7MGXM/WlOimz tR9Md+zFG52xqQC3ek4x3/xP0RDUMX263BEaxiEmmpPQWRhTroyVyktUvZrRHlHhFOOtnH SyOBo5XJ1iwm/JZhQiSfVz596TZRwwhZYQF9jeZFutjIg2M6MN69ASe58ZXy/Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWcTg15htzwtD; Mon, 07 Apr 2025 18:01:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 537I1RQc028240; Mon, 7 Apr 2025 18:01:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 537I1RSR028237; Mon, 7 Apr 2025 18:01:27 GMT (envelope-from git) Date: Mon, 7 Apr 2025 18:01:27 GMT Message-Id: <202504071801.537I1RSR028237@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: e5d57a886bbc - main - linuxkpi: Add `queue_work_node()` List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e5d57a886bbca01a02e75f3b63d41ebb667ff938 Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=e5d57a886bbca01a02e75f3b63d41ebb667ff938 commit e5d57a886bbca01a02e75f3b63d41ebb667ff938 Author: Jean-Sébastien Pédron AuthorDate: 2025-02-24 23:32:49 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-04-07 17:35:32 +0000 linuxkpi: Add `queue_work_node()` This a variant of `queue_work()` that takes a NUMA node as its first argument. The NUMA node is ignored and `queue_work()` is called. The i915 DRM driver started to use this starting from Linux 6.8. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49377 --- sys/compat/linuxkpi/common/include/linux/workqueue.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/workqueue.h b/sys/compat/linuxkpi/common/include/linux/workqueue.h index 1c9df9fcb74d..7e740f0f1dfc 100644 --- a/sys/compat/linuxkpi/common/include/linux/workqueue.h +++ b/sys/compat/linuxkpi/common/include/linux/workqueue.h @@ -258,4 +258,10 @@ extern struct work_struct *linux_current_work(void); extern bool linux_queue_rcu_work(struct workqueue_struct *wq, struct rcu_work *rwork); extern bool linux_flush_rcu_work(struct rcu_work *rwork); +static inline bool +queue_work_node(int node __unused, struct workqueue_struct *wq, struct work_struct *work) +{ + return (queue_work(wq, work)); +} + #endif /* _LINUXKPI_LINUX_WORKQUEUE_H_ */ From nobody Mon Apr 7 18:01:28 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWcTh4v4Xz5rwKp; Mon, 07 Apr 2025 18:01: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWcTh3nTLz3SKk; Mon, 07 Apr 2025 18:01:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744048888; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2TTggWcCSdoCU7A0BM0P6B6HqxfobID8DGUN+e7Knmc=; b=tcGq8+rwwmEkUwfHEd+sYTIcUmi0rrXAxSeVPE4uKhbUKWbyUegd/q1BpSiDXJAJi/Gd8G Tzg2K3yMb7YLdG++V6U3Rp86BTemOLAXhhM+kosew6ayQ+H4tL2VlgznIsiQAx8NGH/dPq gihaLUMf2fgaaUlGBXQW+TVuTYppa3qd4KJCiRLMfZxWZi9MwXU9dQm5PsJ1L3TVk04EEq k/NW2y8E/EGXovOOoogPxiC9/40P8QXPmbYWx/9Qnsafryh+avNl4tTwCYxjBMVMfrrNoH 2OA7v5fLkFuy7Kw/sxE8OZOZSCxjcoOpzAswLOylx53gvOa6f20Gah8ygZx6bA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744048888; a=rsa-sha256; cv=none; b=ki9AN2bZNiX/2qzFhw8Fz70QMD4vGzG3TNc27Y4CyDyRkhSHZhq4qz/oQt23OLc3NsX0oU /lkMjCSHg0VxRz4+df2HFzXx7cgtalM3edCVaDTS+EXDKPWbwzUrkgjw+8FTT9ppMa59ao vPTAfHJyEQrhd5i0vkvcth2A1S1fx3P3F9FJK6kh1I3zm1Iify6V5CL07cCRoYNMU+oMQ7 1clrStql790b/Le8QPxJq1zZ8uHmzWw5ifHsaRAAGDCh8ISYQ6ertWAg3M9WV+jAkCIyuN kxxQ0p1fZkNna3EP6r0dtIacde/HAjsznS66qM6u3CBuX1cAotpznfVSKjKvWg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744048888; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2TTggWcCSdoCU7A0BM0P6B6HqxfobID8DGUN+e7Knmc=; b=iOXn5ZP8q2pyg1kqJazpI/YFCABtk9YFgpgvN+7m40y3PtckjKDBbSrNuFfBCA4E8fc4bl 6pvtMG7YdfJkFbgEbb03JFtqmNQxU2k7yTnMZUlD6IE/3vk2p2g8Dp8eAvqbliJdXi6AZx ZPA7f1JoiwTSa7SIYFyg+WALxuJOTWCQe2vzA+ySZlAjoJlA8tnFrnokmVPaEOWgaN5qQ8 yDDgzQyZlDQmGizDxIcWTsLXAbRhDSHjC/3MaYqBGo/NG1is0vQWeFx4nFaUQG5QHX0XYB /Ax9v9482chthlggF9g2sjglbMDVk2fJ+SwyjvhQ0OQrVA9cos5ZiDAorhBEGA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWcTh23mZzxCl; Mon, 07 Apr 2025 18:01:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 537I1SjU028279; Mon, 7 Apr 2025 18:01:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 537I1SJs028276; Mon, 7 Apr 2025 18:01:28 GMT (envelope-from git) Date: Mon, 7 Apr 2025 18:01:28 GMT Message-Id: <202504071801.537I1SJs028276@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: 968650dbdaa1 - main - linuxkpi: Add `BIN_ATTR*()` macros List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 968650dbdaa16ac2fac91782522b5074d2202078 Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=968650dbdaa16ac2fac91782522b5074d2202078 commit 968650dbdaa16ac2fac91782522b5074d2202078 Author: Jean-Sébastien Pédron AuthorDate: 2025-02-25 23:22:26 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-04-07 17:35:57 +0000 linuxkpi: Add `BIN_ATTR*()` macros They are helpers to declare static `struct bin_attribute`. The amdgpu DRM driver started to use them for some time but the code was commented out (and this is still the case as of this commit). In Linux 6.8, it declared a new BIN_ATTR. This new code is not commented out. While here, change the first argument of the `read` and `write` callbacks to be a `struct linux_file *` instead of a `struct file *`. This ensures the right structure is being referenced at compile time. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49378 --- sys/compat/linuxkpi/common/include/linux/sysfs.h | 41 +++++++++++++++++++++--- 1 file changed, 37 insertions(+), 4 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/sysfs.h b/sys/compat/linuxkpi/common/include/linux/sysfs.h index c6692b803789..f11db5ece515 100644 --- a/sys/compat/linuxkpi/common/include/linux/sysfs.h +++ b/sys/compat/linuxkpi/common/include/linux/sysfs.h @@ -53,10 +53,10 @@ struct attribute_group { struct bin_attribute { struct attribute attr; size_t size; - ssize_t (*read)(struct file *, struct kobject *, struct bin_attribute *, - char *, loff_t, size_t); - ssize_t (*write)(struct file *, struct kobject *, struct bin_attribute *, - char *, loff_t, size_t); + ssize_t (*read)(struct linux_file *, struct kobject *, + struct bin_attribute *, char *, loff_t, size_t); + ssize_t (*write)(struct linux_file *, struct kobject *, + struct bin_attribute *, char *, loff_t, size_t); }; #define __ATTR(_name, _mode, _show, _store) { \ @@ -81,6 +81,39 @@ struct bin_attribute { NULL, \ } +#define __BIN_ATTR(_name, _mode, _read, _write, _size) { \ + .attr = { .name = __stringify(_name), .mode = _mode }, \ + .read = _read, .write = _write, .size = _size, \ +} +#define __BIN_ATTR_RO(_name, _size) { \ + .attr = { .name = __stringify(_name), .mode = 0444 }, \ + .read = _name##_read, .size = _size, \ +} +#define __BIN_ATTR_WO(_name, _size) { \ + .attr = { .name = __stringify(_name), .mode = 0200 }, \ + .write = _name##_write, .size = _size, \ +} +#define __BIN_ATTR_WR(_name, _size) { \ + .attr = { .name = __stringify(_name), .mode = 0644 }, \ + .read = _name##_read, .write = _name##_write, .size = _size, \ +} + +#define BIN_ATTR(_name, _mode, _read, _write, _size) \ +struct bin_attribute bin_attr_##_name = \ + __BIN_ATTR(_name, _mode, _read, _write, _size); + +#define BIN_ATTR_RO(_name, _size) \ +struct bin_attribute bin_attr_##_name = \ + __BIN_ATTR_RO(_name, _size); + +#define BIN_ATTR_WO(_name, _size) \ +struct bin_attribute bin_attr_##_name = \ + __BIN_ATTR_WO(_name, _size); + +#define BIN_ATTR_WR(_name, _size) \ +struct bin_attribute bin_attr_##_name = \ + __BIN_ATTR_WR(_name, _size); + /* * Handle our generic '\0' terminated 'C' string. * Two cases: From nobody Mon Apr 7 18:01:29 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWcTj5r4jz5rwTY; Mon, 07 Apr 2025 18:01: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWcTj3Jm1z3Sn0; Mon, 07 Apr 2025 18:01:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744048889; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ngp/Oqb8/JYpfUPz5aa/KB8ygv5OLSNR0cPQ44d7kvU=; b=cdSRb2Y+G+TqqXUJ9gk1JHhK4uyuGmKgvE4yyKs3Led+bIXgMWR6HN4AK5Xf91KDwEXeCx qZffFuEzDF27kpVdB7pYiPQYINV7F07CBWx84vN+eRmITJx+rxS57cMNyPoX8sE9+Pv/4z V5tf3kfx19Y4wKeTv7rcdsh8DKXroDTIxkbH0we1qVquQP8K05O6k4UgwsFpdbVYwJABfd l7ueZcvfonmJQ9J2kjVTvk3JY2RQFHz/oL2cud7HcbyKjChmZ8NNyHYqAlcWhZ632loAM9 xNJ5ql7Zghqfb77V1ClpTQIzcfjZsrmkGJxsTw98qQfYJ3SyDHBHAuMpRCSG4Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744048889; a=rsa-sha256; cv=none; b=gmqDPQjrkoDkoqp+vUofSiFhic5P7lQgkec0+zMAWYcQFwHMx9+QurLjy/AfScIkA4VxSg 4KZPb/Vi2h2LPPTlWWs9aOHSIC3JNuybKrsQEx0FPsgn6X6wyw3zYGL1D5lZCO/bbTfd/9 QtUdaST1vwTeBuimOgwFGqhN9DHD/G3eiYlzDnijlJXCDAfkvvw26AFNW5sTyrbmF7yy5o poLyh7RH2EnG59Y8VK+3F/zgRS/xqVWekQ/WVZh9hkS83h8xa4XEquS1/Wa0woqbgPZLkA pujh+9gidSDsMv1BPQc9Y7p2qQW9DxG8rrdt9xsys8Cz6Z8bLCEaKH2zcB+R0A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744048889; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ngp/Oqb8/JYpfUPz5aa/KB8ygv5OLSNR0cPQ44d7kvU=; b=fSrRHg+Z1SCalLxEizuryLY4JipTFXMhpr/bOGkIWj4prKV11fISstuFCnpdp8uXic0p0f /OO4YXnE37ps7H6wxd4dD3OvivC2EiRIxCF4au4oyKqKnPtCvBecTA5//jfFCEtJSV0+1i L5OOHv+FJ4xuIKLqYweWmchzd/WaAH7UEKKjWKE3+DsGUKbAk6U0nCEV7d36KOmtdaLBBG i6X5k0j5J0jNTmaBDP2HgtWD2VlW889NOtuYYVhsnmP7QO/dxRDsha1r5iGO+KcRXTvufe HA0Vgz1u/q5vfniY2PTrdBDBtR/MEz4mAte8Ep87LIpfA8H7x1L+YXEGioeqiA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWcTj2mzRzxPT; Mon, 07 Apr 2025 18:01:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 537I1TBT028320; Mon, 7 Apr 2025 18:01:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 537I1TPB028317; Mon, 7 Apr 2025 18:01:29 GMT (envelope-from git) Date: Mon, 7 Apr 2025 18:01:29 GMT Message-Id: <202504071801.537I1TPB028317@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: f3e25c012d9e - main - linuxkpi: Add `local_irq_{save,restore}()` List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f3e25c012d9e3326bee57a4b61e716f244e0a32f Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=f3e25c012d9e3326bee57a4b61e716f244e0a32f commit f3e25c012d9e3326bee57a4b61e716f244e0a32f Author: Jean-Sébastien Pédron AuthorDate: 2025-02-28 21:59:47 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-04-07 17:36:12 +0000 linuxkpi: Add `local_irq_{save,restore}()` These are no-ops. The i915 DRM driver started to use it in Linux 6.8. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49380 --- sys/compat/linuxkpi/common/include/linux/spinlock.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/spinlock.h b/sys/compat/linuxkpi/common/include/linux/spinlock.h index 2992e41c9c02..dc10b0457153 100644 --- a/sys/compat/linuxkpi/common/include/linux/spinlock.h +++ b/sys/compat/linuxkpi/common/include/linux/spinlock.h @@ -154,6 +154,14 @@ typedef struct mtx spinlock_t; mtx_assert(_l, MA_OWNED); \ } while (0) +#define local_irq_save(flags) do { \ + (flags) = 0; \ +} while (0) + +#define local_irq_restore(flags) do { \ + (void)(flags); \ +} while (0) + #define atomic_dec_and_lock_irqsave(cnt, lock, flags) \ _atomic_dec_and_lock_irqsave(cnt, lock, &(flags)) static inline int From nobody Mon Apr 7 18:01:30 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWcTk6m72z5rwRm; Mon, 07 Apr 2025 18:01: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWcTk3g7vz3SkW; Mon, 07 Apr 2025 18:01:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744048890; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rjOPkEYIokabrOYozvWvTXWqdz1fTKUH/HxBUhh+Q30=; b=FxkrmTpBktwh1PlRmUcMg7n9no8xfD3qoMxM4JAKrOT+CINtq7dGU8Kpm2w/eKF6NaOuYJ A4WOeOdVg9gIg56otMZ6Fo3w5Yv+hjialCe86wDyfjeQXhT5wVniglZ/WuZsZFNm5EFjiL 7hAZ/1QkImTEu2rdM6aa38ZaNKqLw5t519OAD9YxinnYS3BtAJUYbk71d7doU7pj1V1yew yhBanl0x+ODitQHdbyxZcGr08iLhCHZo//rRwodUvzd7Wz5y2aht1GWf774I1XQ3Ea8PBn G6eYCzwE2RdGWj5JHHyUGx6PusOYM7fi24PmY4y2Zka1z7NYLNNnNxvNRQpWtw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744048890; a=rsa-sha256; cv=none; b=CGsn0h0xTIK2Sl3XE7CpxqapJ8HXJM64mJy8Hk9EpuGxQI0p976zBpSMNzqVP30Vlciq/Q 2D2YiLG7+djnyrnGlMZ3XZabNWdYVCbZKzFrMO9ZQPmJmVTUX4e8UAVh3i/0PZLXRmFq77 gzq0CpTa2vxjBUD7iBJ6c7EvQdUokP/ge+reliYAH6TQNQH8tRLHsrjzA4SYfa4I0AN860 xCRQW1isDSZrlcUnN50jbP/tvNgS4CsYKz+jgu0S4GHMkueo97+MhLVUfSuqgK3oPZBFOB 3oJwXaFB0GrqOoirexmxroZe3lMwQZkrOZIVsgiXzggARUajoXZ37sOQhZt5Jw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744048890; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rjOPkEYIokabrOYozvWvTXWqdz1fTKUH/HxBUhh+Q30=; b=yTiWkSbehxF6FZBHzuDvibM+7WWhxNBtqAMDzKm/arjst0lqAoteLEMNQKyZC1xizFB6Fx caDOrVssodYDKYMz4T4kVDVUUTI4eoNc4UQrRReNczxmknsjl9qxHvT/FJGWCPvgtq3AA7 No3z4rrx3Ndg7s9m4ngrSUGhBIBvLa/Ghp4Ydl9D86++FD11i6O8L9byJpyHJxzsgiUwWA m4cVC1aochcE5kf9KqO1oQ1aR59KkVH2B5nxtmBLoQH9GGHMLwjJnUHNnEIZr7Bc7gyTj2 VELGITui475uKGLqqUHfNQPF7wUud+J73G5NlaZbso5O9r4Jurc0BHKVcNu94g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWcTk3FwxzxPY; Mon, 07 Apr 2025 18:01:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 537I1U1U028362; Mon, 7 Apr 2025 18:01:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 537I1UsQ028359; Mon, 7 Apr 2025 18:01:30 GMT (envelope-from git) Date: Mon, 7 Apr 2025 18:01:30 GMT Message-Id: <202504071801.537I1UsQ028359@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: b68fe1ef731f - main - linuxkpi: Add List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b68fe1ef731f7d536ea98e6e9c44fb3c76857c1d Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=b68fe1ef731f7d536ea98e6e9c44fb3c76857c1d commit b68fe1ef731f7d536ea98e6e9c44fb3c76857c1d Author: Jean-Sébastien Pédron AuthorDate: 2025-02-28 22:45:29 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-04-07 17:43:06 +0000 linuxkpi: Add This header implements several stub functions that, on Linux, are used when `CONFIG_AMD_WBRF` is not set at build time. The amdgpu DRM driver started to use it in Linux 6.8. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49382 --- .../linuxkpi/common/include/linux/acpi_amd_wbrf.h | 97 ++++++++++++++++++++++ 1 file changed, 97 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/acpi_amd_wbrf.h b/sys/compat/linuxkpi/common/include/linux/acpi_amd_wbrf.h new file mode 100644 index 000000000000..92c2ead41c45 --- /dev/null +++ b/sys/compat/linuxkpi/common/include/linux/acpi_amd_wbrf.h @@ -0,0 +1,97 @@ +/*- + * Copyright (c) 2025 The FreeBSD Foundation + * Copyright (c) 2025 Jean-Sébastien Pédron + * + * This software was developed by Jean-Sébastien Pédron under sponsorship + * from the FreeBSD Foundation. + * + * 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. + */ + +#ifndef _LINUXKPI_LINUX_ACPI_AMD_WBRF_H_ +#define _LINUXKPI_LINUX_ACPI_AMD_WBRF_H_ + +#include +#include + +#define MAX_NUM_OF_WBRF_RANGES 11 + +#define WBRF_RECORD_ADD 0x0 +#define WBRF_RECORD_REMOVE 0x1 + +struct freq_band_range { + uint64_t start; + uint64_t end; +}; + +struct wbrf_ranges_in_out { + uint64_t num_of_ranges; + struct freq_band_range band_list[MAX_NUM_OF_WBRF_RANGES]; +}; + +enum wbrf_notifier_actions { + WBRF_CHANGED, +}; + +/* + * The following functions currently have dummy implementations that, on Linux, + * are used when CONFIG_AMD_WBRF is not set at compile time. + */ + +static inline bool +acpi_amd_wbrf_supported_consumer(struct device *dev) +{ + return (false); +} + +static inline int +acpi_amd_wbrf_add_remove(struct device *dev, uint8_t action, + struct wbrf_ranges_in_out *in) +{ + return (-ENODEV); +} + +static inline bool +acpi_amd_wbrf_supported_producer(struct device *dev) +{ + return (false); +} + +static inline int +amd_wbrf_retrieve_freq_band(struct device *dev, struct wbrf_ranges_in_out *out) +{ + return (-ENODEV); +} + +static inline int +amd_wbrf_register_notifier(struct notifier_block *nb) +{ + return (-ENODEV); +} + +static inline int +amd_wbrf_unregister_notifier(struct notifier_block *nb) +{ + return (-ENODEV); +} + +#endif /* _LINUXKPI_LINUX_ACPI_AMD_WBRF_H_ */ From nobody Mon Apr 7 18:21:38 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWcwz13kpz5rxM1; Mon, 07 Apr 2025 18:21:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWcwz0cJXz3YCT; Mon, 07 Apr 2025 18:21:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744050099; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Whajo0f9jJhoD6ZujZqhWCLCu7mVRsdkY8Hp9Xqd0VM=; b=DH2d2Zo4mTzMbJrryoJD0jaym5UnXhwF6NBZP6Tq1KaNoyA42RDvFmZ6z5S8PGE1+nTsLn 5Y1KTN6N6f2aJsiGpRhlO6IWshSpuh4qFUiGnLwHkB1dIJqpnGPoZtwNWjyMZCmFRw5QSV vDV2o/iMw3XZHDQO0l8QyTAu3az5UXbwZfUZ3irmPjANVEzjs0Mu6R08Ox6E6slYfB2a9K Ra2mJMvpThyzcjf6VvrthHo6YqyZOzxdPZ7sQrjtEGdc+LF+V/wzxpRvEYS+PWPGjTVSBz rAxXFyGTtuxkY+peXSL5xC4RrX89ss/KFhKyoXddoNDwDCJs2SpVZXT3A+k0zg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744050099; a=rsa-sha256; cv=none; b=DlCuQ302p4a62+wvzKRXINX6DeXefMJcuoeDwT+AdCrRC7ITQFLOQkKwcdZeTlN07R3pfT jVggL4puUPUA+7UmRuruvbVP7dPYveC46nl7+KLEe+kX4+ga8Bd6+/Pm9pUvAKGJ3COdWi K5BH05XK5Lze84AVOLHfrzki7trYMGwEJB8CE/a4uDmMkst6rr3oPSVoFq01X4CtKsiWqN HmeMqaOdeSFdtf3zNwDJbx0vniG99PImWBSnaif11Ao3cxDZyUTMfrUYTfvPsItES3bqDN SGvnGYytX9BToFWyjXW3PJDEp6Uv5RTs+S9gIYlcULx5VngBadPXZuy1l4DOBQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744050099; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Whajo0f9jJhoD6ZujZqhWCLCu7mVRsdkY8Hp9Xqd0VM=; b=JoZ+wXTrlS5rfkivJ1KEPqXmXNX9esNStc6weUct3UWXe6UwONraIM7R/b2ZG4q0PzNhDW 2QGLEQ9EEh9dYo6YeBm3FnVMK16uZs/JMhMiFKmYckqaAwBVI2za07FQWopITRQAKUESuw rTbAZKaEIb7eDvOwaPQ1wDYaViWT90JCuCJhXoRCPPH1pit+AqL0hWoJc9oiWPhYCq9l0l vvRNzEylo2BxSf2Tv2jNfz6wQ9DB4o/WyFVMaCjsMsmUd/YfS0GowVWm8hmmDtReOv2LgJ w+xdzPvMLKYU/TiCDBdSw+vDcrHPnLt7UoUBLHghwxTWUA+3WZbuC7ilC1uXUw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWcwz070nzxc0; Mon, 07 Apr 2025 18:21:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 537ILcBQ064221; Mon, 7 Apr 2025 18:21:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 537ILcAW064218; Mon, 7 Apr 2025 18:21:38 GMT (envelope-from git) Date: Mon, 7 Apr 2025 18:21:38 GMT Message-Id: <202504071821.537ILcAW064218@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: b8437cbae173 - main - boot_i386.8: Mention this is legacy List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b8437cbae173308180fbaddc6a74bfb6f8c4410b Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=b8437cbae173308180fbaddc6a74bfb6f8c4410b commit b8437cbae173308180fbaddc6a74bfb6f8c4410b Author: Ed Maste AuthorDate: 2025-02-28 15:40:43 +0000 Commit: Ed Maste CommitDate: 2025-04-07 18:21:25 +0000 boot_i386.8: Mention this is legacy Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49704 --- sbin/reboot/boot_i386.8 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sbin/reboot/boot_i386.8 b/sbin/reboot/boot_i386.8 index 5e97a7594684..26dd588fb437 100644 --- a/sbin/reboot/boot_i386.8 +++ b/sbin/reboot/boot_i386.8 @@ -32,7 +32,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd July 11, 2020 +.Dd April 7, 2025 .Dt BOOT 8 i386 .Os .Sh NAME @@ -45,14 +45,14 @@ An automatic consistency check of the file systems will be performed, and unless this fails, the system will resume multi-user operations. .Pp .Sy Cold starts . -Most i386 PCs attempt to boot first from floppy disk drive 0 (sometimes +Legacy i386 PCs attempt to boot first from floppy disk drive 0 (sometimes known as drive A:) and, failing that, from hard disk drive 0 (sometimes known as drive C:, or as drive 0x80 to the BIOS). Some BIOSes allow you to change this default sequence, and may also include a CD-ROM drive as a boot device. .Pp -Some newer PCs boot using UEFI firmware, not BIOS. +Contemporary PCs boot using UEFI firmware, not BIOS. That process is described in .Xr uefi 8 . From nobody Mon Apr 7 22:11:51 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWk2b5lWWz5sGN6; Mon, 07 Apr 2025 22:11: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWk2b57YDz3P6Y; Mon, 07 Apr 2025 22:11:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744063911; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Dli8fxfZVJOko7RcSLHbi2MLyKwAOfBC2V0iufFYKaw=; b=sD5ALMM02sWYu9hN0QHmx3j0H9IvUx9mp7xSDW7KZ+Dg0lj1WaYeA2T9BCav4WVOgpGkio VHDsiw/xF/zwydDLCuzFsRfvM8sFDI/IoaaFLquCIKCE/YThBF42DsnhNQuqOb26WOX4XG Fhbwo7yROs3z0vCEQd1qjqnU244ByhNEdfs5hd0jsPE5jRjbkm6Dc5kT5vjV9bwEGKYTH8 RhpzWNp4wI+I9AsEUhChm3QJPbRxxiRzFB64JsLFiBppNlJTpkg1wxnFkhZX+zS7aok3Og hQ2L3ZrYHKG+gRwPNzuycxyay2ZvGepsF6567+ao6SjdJQW2xrxBzWWDijCJvw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744063911; a=rsa-sha256; cv=none; b=N2lFoIcO2zclTFucNYTqHH/MUjrDsxVqhXmtvUQHZtf3UsxuXy3LWux+PNVmlYHdWqWNXN SnDBnMGbCkwxgDiOQ6ie/AoqAFSiAzo5SkBY9sTIAc31qacZfdEQtMZKjshwqzS7IAKjNU xh9ETIwgMVcOQDLNhTFUu6CeOOG2hL/UvR15TNc6l02jjA9YY/3bWJdULMHXHqsZOgC1kr yDuGyLh7ae3E0qysUkgT2VfBJPwwuiBW2KiS3uhnFpSiecl49K0w80eB4413RiBEn19qHT mik4B7C7b/GMorrLHaqx2lU/09aGpo5Lm3lX4oHkg0wk7REQ5c3rbjpxK0FuQw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744063911; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Dli8fxfZVJOko7RcSLHbi2MLyKwAOfBC2V0iufFYKaw=; b=doLtAhdpa16frGIldmSuHChvttW81gaE7rO0awaU/8I6k8fxWfWrWHUIjSgs1I/gOes5We lZ8g6J36tjPRYE+liOU/mPOyYL/G4xPke33Zw2hWypxZ4KVWZ83qMMlL+BO2RiBM+DyB7f ViGOBKJX0g8oMNsvqNLx6zGpgpRtfx98bOfSOuSes/QjinkJAtVMdwJZVkwrjYwhfHrQ/F JhvJyioirSNTpDezmNGKc9uaSn35KxTi/IbnfGY48k0fHHjOJrO4zQ6JI+9cLCfA0Q82GK u5Oz9ltesHKyIX5Cyn+Be8V2AOS00UzAREPJ+1JSShDSxEFr0QGY225LxxU0rw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWk2b4RcRz145B; Mon, 07 Apr 2025 22:11:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 537MBp91093660; Mon, 7 Apr 2025 22:11:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 537MBpsD093657; Mon, 7 Apr 2025 22:11:51 GMT (envelope-from git) Date: Mon, 7 Apr 2025 22:11:51 GMT Message-Id: <202504072211.537MBpsD093657@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 1408670c90ae - main - in6_control_ioctl: correctly report errors from SIOCAIFADDR_IN6 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1408670c90ae38fd51ea6aaabe46757bc880608e Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=1408670c90ae38fd51ea6aaabe46757bc880608e commit 1408670c90ae38fd51ea6aaabe46757bc880608e Author: Lexi Winter AuthorDate: 2025-04-07 12:40:07 +0000 Commit: Kristof Provost CommitDate: 2025-04-07 20:46:03 +0000 in6_control_ioctl: correctly report errors from SIOCAIFADDR_IN6 we have to use 'goto out' here rather than 'break' because otherwise error is set to 0, which means the error is not propagated back to the caller. Reviewed by: kp --- sys/netinet6/in6.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/netinet6/in6.c b/sys/netinet6/in6.c index ffbe64f4de80..00a0b40154d2 100644 --- a/sys/netinet6/in6.c +++ b/sys/netinet6/in6.c @@ -587,7 +587,7 @@ in6_control_ioctl(u_long cmd, void *data, #endif error = in6_addifaddr(ifp, ifra, ia); ia = NULL; - break; + goto out; case SIOCDIFADDR_IN6: in6_purgeifaddr(ia); From nobody Tue Apr 8 01:35:27 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWpYW5TLvz5sWfj; Tue, 08 Apr 2025 01:35: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWpYW4dYYz3Pt4; Tue, 08 Apr 2025 01:35:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744076127; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9vC3TAHzSWvexjAH7Qe46afi9j0J2ZC3eIKjcQNs2Nw=; b=qrJbSUGti+48+TcCogNlOTGGRWz+MWy2+MzO3K/m/iXSMomrtNgrOUkWmHvIerV8ZgXvie /N3/0WfhOintRpnKdEs6H/x5cUbPtT00QC6goUSZwMgv6rIUXjGbOof4NWhCbVp07kfV+P Un7S0Actf0dG5eb6p0XCe0UwTjadsdCvRzUtDaxGbircer+t4G+GC2QuLR1EdHq+r5fhhI 6izCS1hHntm7lXnkQz8B12wViujp3P0juRunD7khX/mmMgac1c4oYmyoz95WpFYgCYzaSe Wb+VEcUekDxzRZSChmZ7iMI6eIj5N8WG+LqB92EpuvgvonVPrXRUa8711r/7Ag== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744076127; a=rsa-sha256; cv=none; b=tRi83UdA+eNNlVNp+WDfQjMHLDD+d3xYUoVaUQEN5Ta5tw/d9ypOgI0XyOHQA/ZNJK0MoC 8UakVgFmoC54W95YIOPHF9mQqaSBS4xT6lkMdGWQd5iyMe/no0tId4Z+iW2YyHVnOZrdR9 NzVm+XveaGJzKL82YJyye8MZm0D4i75ADNpraefGt1VLEsR0bp/TmGSY3bgX3F91JzWeU4 SwnTi3aGPXIjbcBWwp2WRYGj1kIiqigANzVRvSWPfQUY7UlnGAWg5A1nYDsIZaGwYgwpIN sQnERxVbx7vW9ABkpXhdsXtbgEshXnd3IfEUL364PeynF6AhoQkBnhwXKVDG0A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744076127; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9vC3TAHzSWvexjAH7Qe46afi9j0J2ZC3eIKjcQNs2Nw=; b=PaKQxk3TxicUV/AdBWM6LNWAOi8NxsFs/DV2i/lnS4EgIg74u71HkexrvxprvcZ9GiMLJ0 YE18PUPwgjC2CKbTUbjg4p2o9bMmeB7CQ5XntqLpTsFQICV6ui5kcOKKE4I2WEnFahVWLq RYBgoSQndlpl5IXSkE2iGi18b//CJZDpn+ggwW6xcrHghOOL7sgiPYbKB3KY6hS0J7JqIB rSEhsqnU2x+sCxYmqP1r2lJ+meiwtkVnYfQt7+JNiaDirZOU0MmJVvANjNzgyUMSptA/KX ogYualAo5k4SF53FLCWsajmRfxTSjg6DqykbqLkFXF0iTJMmrTPBa+P5PbM3bg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWpYW402tz19hL; Tue, 08 Apr 2025 01:35:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5381ZRqW071237; Tue, 8 Apr 2025 01:35:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5381ZRgM071234; Tue, 8 Apr 2025 01:35:27 GMT (envelope-from git) Date: Tue, 8 Apr 2025 01:35:27 GMT Message-Id: <202504080135.5381ZRgM071234@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: eac4d55dba47 - main - net80211: Refactor CCMP-128 support; add CCMP-256 support List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: eac4d55dba47e3a6c45db96d32e2f66d71565543 Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=eac4d55dba47e3a6c45db96d32e2f66d71565543 commit eac4d55dba47e3a6c45db96d32e2f66d71565543 Author: Adrian Chadd AuthorDate: 2025-03-05 03:41:18 +0000 Commit: Adrian Chadd CommitDate: 2025-04-08 01:35:21 +0000 net80211: Refactor CCMP-128 support; add CCMP-256 support Refactor CCMP-128 support and add CCMP-256 support. This has been verified against openwrt on an ath9k device with CCMP-256 + WPA-PSK-SHA256. (And whilst I was at it, I also tested GCMP-256.) Differential Revision: https://reviews.freebsd.org/D49238 Reviewed by: thj --- sys/net80211/ieee80211_crypto_ccmp.c | 145 ++++++++++++++++++++++++++++------- 1 file changed, 118 insertions(+), 27 deletions(-) diff --git a/sys/net80211/ieee80211_crypto_ccmp.c b/sys/net80211/ieee80211_crypto_ccmp.c index 87730679c47f..70265335fe70 100644 --- a/sys/net80211/ieee80211_crypto_ccmp.c +++ b/sys/net80211/ieee80211_crypto_ccmp.c @@ -54,6 +54,9 @@ #define AES_BLOCK_LEN 16 +#define CCMP_128_MIC_LEN 8 +#define CCMP_256_MIC_LEN 16 + struct ccmp_ctx { struct ieee80211vap *cc_vap; /* for diagnostics+statistics */ struct ieee80211com *cc_ic; @@ -74,7 +77,24 @@ static const struct ieee80211_cipher ccmp = { .ic_cipher = IEEE80211_CIPHER_AES_CCM, .ic_header = IEEE80211_WEP_IVLEN + IEEE80211_WEP_KIDLEN + IEEE80211_WEP_EXTIVLEN, - .ic_trailer = IEEE80211_WEP_MICLEN, + .ic_trailer = CCMP_128_MIC_LEN, + .ic_miclen = 0, + .ic_attach = ccmp_attach, + .ic_detach = ccmp_detach, + .ic_setkey = ccmp_setkey, + .ic_setiv = ccmp_setiv, + .ic_encap = ccmp_encap, + .ic_decap = ccmp_decap, + .ic_enmic = ccmp_enmic, + .ic_demic = ccmp_demic, +}; + +static const struct ieee80211_cipher ccmp_256 = { + .ic_name = "AES-CCM-256", + .ic_cipher = IEEE80211_CIPHER_AES_CCM_256, + .ic_header = IEEE80211_WEP_IVLEN + IEEE80211_WEP_KIDLEN + + IEEE80211_WEP_EXTIVLEN, + .ic_trailer = CCMP_256_MIC_LEN, .ic_miclen = 0, .ic_attach = ccmp_attach, .ic_detach = ccmp_detach, @@ -120,15 +140,70 @@ ccmp_detach(struct ieee80211_key *k) nrefs--; /* NB: we assume caller locking */ } +static int +ccmp_get_trailer_len(struct ieee80211_key *k) +{ + return (k->wk_cipher->ic_trailer); +} + +static int +ccmp_get_header_len(struct ieee80211_key *k) +{ + return (k->wk_cipher->ic_header); +} + +/** + * @brief Return the M parameter to use for CCMP block0 initialisation. + * + * M is defined as the number of bytes in the authentication + * field. + * + * See RFC3610, Section 2 (CCM Mode Specification) for more + * information. + * + * The MIC size is defined in 802.11-2020 12.5.3 + * (CTR with CBC-MAC Protocol (CCMP)). + * + * CCM-128 - M=8, MIC is 8 octets. + * CCM-256 - M=16, MIC is 16 octets. + * + * @param key ieee80211_key to calculate M for + * @retval the number of bytes in the authentication field + */ +static int +ccmp_get_ccm_m(struct ieee80211_key *k) +{ + if (k->wk_cipher->ic_cipher == IEEE80211_CIPHER_AES_CCM) + return (8); + if (k->wk_cipher->ic_cipher == IEEE80211_CIPHER_AES_CCM_256) + return (16); + return (8); /* XXX default */ +} + static int ccmp_setkey(struct ieee80211_key *k) { + uint32_t keylen; struct ccmp_ctx *ctx = k->wk_private; - if (k->wk_keylen != (128/NBBY)) { + switch (k->wk_cipher->ic_cipher) { + case IEEE80211_CIPHER_AES_CCM: + keylen = 128; + break; + case IEEE80211_CIPHER_AES_CCM_256: + keylen = 256; + break; + default: + IEEE80211_DPRINTF(ctx->cc_vap, IEEE80211_MSG_CRYPTO, + "%s: Unexpected cipher (%u)", + __func__, k->wk_cipher->ic_cipher); + return (0); + } + + if (k->wk_keylen != (keylen/NBBY)) { IEEE80211_DPRINTF(ctx->cc_vap, IEEE80211_MSG_CRYPTO, "%s: Invalid key length %u, expecting %u\n", - __func__, k->wk_keylen, 128/NBBY); + __func__, k->wk_keylen, keylen/NBBY); return 0; } if (k->wk_flags & IEEE80211_KEY_SWENCRYPT) @@ -187,11 +262,11 @@ ccmp_encap(struct ieee80211_key *k, struct mbuf *m) /* * Copy down 802.11 header and add the IV, KeyID, and ExtIV. */ - M_PREPEND(m, ccmp.ic_header, IEEE80211_M_NOWAIT); + M_PREPEND(m, ccmp_get_header_len(k), IEEE80211_M_NOWAIT); if (m == NULL) return 0; ivp = mtod(m, uint8_t *); - ovbcopy(ivp + ccmp.ic_header, ivp, hdrlen); + ovbcopy(ivp + ccmp_get_header_len(k), ivp, hdrlen); ivp += hdrlen; ccmp_setiv(k, ivp); @@ -290,13 +365,14 @@ finish: * Copy up 802.11 header and strip crypto bits. */ if (! ((rxs != NULL) && (rxs->c_pktflags & IEEE80211_RX_F_IV_STRIP))) { - ovbcopy(mtod(m, void *), mtod(m, uint8_t *) + ccmp.ic_header, + ovbcopy(mtod(m, void *), + mtod(m, uint8_t *) + ccmp_get_header_len(k), hdrlen); - m_adj(m, ccmp.ic_header); + m_adj(m, ccmp_get_header_len(k)); } if ((rxs == NULL) || (rxs->c_pktflags & IEEE80211_RX_F_MIC_STRIP) == 0) - m_adj(m, -ccmp.ic_trailer); + m_adj(m, -ccmp_get_trailer_len(k)); /* * Ok to update rsc now. @@ -348,18 +424,28 @@ xor_block(uint8_t *b, const uint8_t *a, size_t len) static void ccmp_init_blocks(rijndael_ctx *ctx, struct ieee80211_frame *wh, - u_int64_t pn, size_t dlen, + uint32_t m, u_int64_t pn, size_t dlen, uint8_t b0[AES_BLOCK_LEN], uint8_t aad[2 * AES_BLOCK_LEN], uint8_t auth[AES_BLOCK_LEN], uint8_t s0[AES_BLOCK_LEN]) { #define IS_QOS_DATA(wh) IEEE80211_QOS_HAS_SEQ(wh) + /* + * Map M parameter to encoding + * RFC3610, Section 2 (CCM Mode Specification) + */ + m = (m - 2) / 2; + /* CCM Initial Block: - * Flag (Include authentication header, M=3 (8-octet MIC), - * L=1 (2-octet Dlen)) + * + * Flag (Include authentication header, + * M=3 or 7 (8 or 16 octet auth field), + * L=1 (2-octet Dlen)) + * Adata=1 (one or more auth blocks present) * Nonce: 0x00 | A2 | PN - * Dlen */ - b0[0] = 0x59; + * Dlen + */ + b0[0] = 0x40 | 0x01 | (m << 3); /* NB: b0[1] set below */ IEEE80211_ADDR_COPY(b0 + 2, wh->i_addr2); b0[8] = pn >> 40; @@ -381,6 +467,7 @@ ccmp_init_blocks(rijndael_ctx *ctx, struct ieee80211_frame *wh, aad[0] = 0; /* AAD length >> 8 */ /* NB: aad[1] set below */ aad[2] = wh->i_fc[0] & 0x8f; /* XXX magic #s */ + /* TODO: 802.11-2016 12.5.3.3.3 - QoS control field mask */ aad[3] = wh->i_fc[1] & 0xc7; /* XXX magic #s */ /* NB: we know 3 addresses are contiguous */ memcpy(aad + 4, wh->i_addr1, 3 * IEEE80211_ADDR_LEN); @@ -465,14 +552,14 @@ ccmp_encrypt(struct ieee80211_key *key, struct mbuf *m0, int hdrlen) ctx->cc_vap->iv_stats.is_crypto_ccmp++; wh = mtod(m, struct ieee80211_frame *); - data_len = m->m_pkthdr.len - (hdrlen + ccmp.ic_header); - ccmp_init_blocks(&ctx->cc_aes, wh, key->wk_keytsc, - data_len, b0, aad, b, s0); + data_len = m->m_pkthdr.len - (hdrlen + ccmp_get_header_len(key)); + ccmp_init_blocks(&ctx->cc_aes, wh, ccmp_get_ccm_m(key), + key->wk_keytsc, data_len, b0, aad, b, s0); i = 1; - pos = mtod(m, uint8_t *) + hdrlen + ccmp.ic_header; + pos = mtod(m, uint8_t *) + hdrlen + ccmp_get_header_len(key); /* NB: assumes header is entirely in first mbuf */ - space = m->m_len - (hdrlen + ccmp.ic_header); + space = m->m_len - (hdrlen + ccmp_get_header_len(key)); for (;;) { if (space > data_len) space = data_len; @@ -580,8 +667,8 @@ ccmp_encrypt(struct ieee80211_key *key, struct mbuf *m0, int hdrlen) } done: /* tack on MIC */ - xor_block(b, s0, ccmp.ic_trailer); - return m_append(m0, ccmp.ic_trailer, b); + xor_block(b, s0, ccmp_get_trailer_len(key)); + return m_append(m0, ccmp_get_trailer_len(key), b); } #undef CCMP_ENCRYPT @@ -618,14 +705,17 @@ ccmp_decrypt(struct ieee80211_key *key, u_int64_t pn, struct mbuf *m, int hdrlen ctx->cc_vap->iv_stats.is_crypto_ccmp++; wh = mtod(m, struct ieee80211_frame *); - data_len = m->m_pkthdr.len - (hdrlen + ccmp.ic_header + ccmp.ic_trailer); - ccmp_init_blocks(&ctx->cc_aes, wh, pn, data_len, b0, aad, a, b); - m_copydata(m, m->m_pkthdr.len - ccmp.ic_trailer, ccmp.ic_trailer, mic); - xor_block(mic, b, ccmp.ic_trailer); + data_len = m->m_pkthdr.len - + (hdrlen + ccmp_get_header_len(key) + ccmp_get_trailer_len(key)); + ccmp_init_blocks(&ctx->cc_aes, wh, ccmp_get_ccm_m(key), pn, + data_len, b0, aad, a, b); + m_copydata(m, m->m_pkthdr.len - ccmp_get_trailer_len(key), + ccmp_get_trailer_len(key), mic); + xor_block(mic, b, ccmp_get_trailer_len(key)); i = 1; - pos = mtod(m, uint8_t *) + hdrlen + ccmp.ic_header; - space = m->m_len - (hdrlen + ccmp.ic_header); + pos = mtod(m, uint8_t *) + hdrlen + ccmp_get_header_len(key); + space = m->m_len - (hdrlen + ccmp_get_header_len(key)); for (;;) { if (space > data_len) space = data_len; @@ -684,7 +774,7 @@ ccmp_decrypt(struct ieee80211_key *key, u_int64_t pn, struct mbuf *m, int hdrlen if ((rxs != NULL) && (rxs->c_pktflags & IEEE80211_RX_F_MIC_STRIP) != 0) return (1); - if (memcmp(mic, a, ccmp.ic_trailer) != 0) { + if (memcmp(mic, a, ccmp_get_trailer_len(key)) != 0) { IEEE80211_NOTE_MAC(vap, IEEE80211_MSG_CRYPTO, wh->i_addr2, "%s", "AES-CCM decrypt failed; MIC mismatch"); vap->iv_stats.is_rx_ccmpmic++; @@ -698,3 +788,4 @@ ccmp_decrypt(struct ieee80211_key *key, u_int64_t pn, struct mbuf *m, int hdrlen * Module glue. */ IEEE80211_CRYPTO_MODULE(ccmp, 1); +IEEE80211_CRYPTO_MODULE_ADD(ccmp_256); From nobody Tue Apr 8 01:35:28 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWpYY1S9xz5sWcV; Tue, 08 Apr 2025 01:35: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWpYX4lSmz3Pcy; Tue, 08 Apr 2025 01:35:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744076128; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Obx93WrcWEx2eXCrCTpKM1j/xnjERaoROPf/jL03L2k=; b=D377s5GsA2W+8zpSymRVcnn/OXVzXBkPLa6MtGYsKhmyK+zspSqCvqDRsV67PVfcjDs3qZ 3W3LsCATYkbLN5zfLEn2TLVCY8Lplq6tDMtwOEAlFVOq3O7ZAWubU5kGllXt6SvOJJNruX czqetiBZDDJLKKD0etCAyTgfa/8DxlXi7AENnbo/aVlzxi+hC24allGDuxD7bFcv1Ni7pH 8DAsriQQ5SC5+bHMJmbIBMNvKf/kyB4tyNvS0ClEJozFVju7bKaA+/HkMHvWP76Ud7VE2s s3sexSD9d6+nQ/ARreDZD7KiyOExRy3Wabv2O/Hj2oeLsaHAp3ifhNYw3ybPYA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744076128; a=rsa-sha256; cv=none; b=Gtbjpl41+VbxHntfLET7hiiFBZdckT+etsYolANBIkIBssIXL4nmw5LBJ3bHGuEbTvzczT DYQdR08Y2NWkqIZYoKfxRBI9uh++d4kgeaplIGCp3Kw+B1KbIb4tXEbWM+9bMeC/HwHTH3 hxr0m7C6AbPdMPL6mKy7bnO7cID6Sq64Ed9JrWesAi+xkjwwUS7EptIMJSCjEfHHIRzrPu KtRaJGTvfMU0UTXyry2uVxvsgv4iIWH7/7p8fCyaZVGEjal07JkQKVznagtqgqmESbYD1W D4vuNirHLRvpMK68KFMbZRYbGVqb09JMh9Ur4iW1587uR9AO2WggcjKUCw2ZJg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744076128; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Obx93WrcWEx2eXCrCTpKM1j/xnjERaoROPf/jL03L2k=; b=we1d4L9I52MYvF7gSn2G/weWCug6lsq13B0Mbc/dmrgq3H8MBhadT8DaVxq8IQt/Tir6qC DZhyxsqqF8yJQSOaVMJnlEQoFphLDrXApINpyGz8hfnwR9igHCXHSoZAgbKnT0+Qmdl9ak O6RNdN0QBJIiBNJPVKtIQELJv3r1wRxOoTsS++zIOlMGjcRfXTjEQv+w2OuV+oTQqfWH8u t52iJ6050uKmZjR2XE1IevFzEcU/xa3/ljnlClONL2h9zOAqiFriWOvSE5Hc3DrZR2Da+u oP1ogtmKhypBbaUxUs2bQDwSvAR6SNj5WF0eEzc5d4IZ0sTsbESD9e4UL/SSGQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWpYX4M07z1988; Tue, 08 Apr 2025 01:35:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5381ZSZw071276; Tue, 8 Apr 2025 01:35:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5381ZSq5071273; Tue, 8 Apr 2025 01:35:28 GMT (envelope-from git) Date: Tue, 8 Apr 2025 01:35:28 GMT Message-Id: <202504080135.5381ZSq5071273@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: 6d21920e6d2e - main - net80211: refactor out the AAD init code shared between GCMP and CCMP List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6d21920e6d2e03c6ed7360c432b855ca189db305 Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=6d21920e6d2e03c6ed7360c432b855ca189db305 commit 6d21920e6d2e03c6ed7360c432b855ca189db305 Author: Adrian Chadd AuthorDate: 2025-03-14 23:30:33 +0000 Commit: Adrian Chadd CommitDate: 2025-04-08 01:35:21 +0000 net80211: refactor out the AAD init code shared between GCMP and CCMP The 802.11 specification specifically calls out that the GCMP AES uses the CCMP AES specification, so we can re-use this here. Changes during refactoring: * the first block (b0) needs the priority field populated, which was being done inline with the CCMP AAD assembly. So write a new function that implements just that. * Use IEEE80211_IS_QOS_ANY() in the AAD assembly; 802.11-2020 12.5.3.3.3 (Construct AAD) talks about frames with QoS control field, not specifically QoS data frames (ie, not avoiding PS-POLL.) * Use IEEE80211_IS_QOS_ANY() in the CCM nonce assembly. Leave some verbose comments about the definition of "MPDU priority". * mask the HTC/ORDER bit in the FC if the data frame contains a QoS control field. Again, see 802.11-2020 12.5.3.3.3. * Add extra comments about missing items and functionality for later implementation. Differential Revision: https://reviews.freebsd.org/D49367 Reviewed by: bz --- sys/net80211/ieee80211_crypto.c | 97 ++++++++++++++++++++++++ sys/net80211/ieee80211_crypto.h | 5 ++ sys/net80211/ieee80211_crypto_ccmp.c | 138 +++++++++++++++++++---------------- sys/net80211/ieee80211_crypto_gcmp.c | 88 +--------------------- 4 files changed, 181 insertions(+), 147 deletions(-) diff --git a/sys/net80211/ieee80211_crypto.c b/sys/net80211/ieee80211_crypto.c index 744d69ce3d1d..84cf1d02e408 100644 --- a/sys/net80211/ieee80211_crypto.c +++ b/sys/net80211/ieee80211_crypto.c @@ -900,3 +900,100 @@ ieee80211_crypto_set_deftxkey(struct ieee80211vap *vap, ieee80211_keyix kid) vap->iv_update_deftxkey(vap, kid); } + +/** + * @brief Calculate the AAD required for this frame for AES-GCM/AES-CCM. + * + * The contents are described in 802.11-2020 12.5.3.3.3 (Construct AAD) + * under AES-CCM and are shared with AES-GCM as covered in 12.5.5.3.3 + * (Construct AAD) (AES-GCM). + * + * NOTE: the first two bytes are a 16 bit big-endian length, which are used + * by AES-CCM as part of the Adata field (RFC 3610, section 2.2 + * (Authentication)) to indicate the length of the Adata field itself. + * Since this is small and fits in 0xfeff bytes, the length field + * uses the two byte big endian option. + * + * AES-GCM doesn't require the length at the beginning and will need to + * skip it. + * + * TODO: net80211 currently doesn't support negotiating SPP (Signaling + * and Payload Protected A-MSDUs) and thus bit 7 of the QoS control field + * is always masked. + * + * TODO: net80211 currently doesn't support DMG (802.11ad) so bit 7 + * (A-MSDU present) and bit 8 (A-MSDU type) are always masked. + * + * @param wh 802.11 frame to calculate the AAD over + * @param aad AAD (additional authentication data) buffer + * @param len The AAD buffer length in bytes. + * @returns The number of AAD payload bytes (ignoring the first two + * bytes, which are the AAD payload length in big-endian). + */ +uint16_t +ieee80211_crypto_init_aad(const struct ieee80211_frame *wh, uint8_t *aad, + int len) +{ + uint16_t aad_len; + + memset(aad, 0, len); + + /* + * AAD for PV0 MPDUs: + * + * FC with bits 4..6 and 11..13 masked to zero; 14 is always one + * A1 | A2 | A3 + * SC with bits 4..15 (seq#) masked to zero + * A4 (if present) + * QC (if present) + */ + aad[0] = 0; /* AAD length >> 8 */ + /* NB: aad[1] set below */ + aad[2] = wh->i_fc[0] & 0x8f; /* see above for bitfields */ + aad[3] = wh->i_fc[1] & 0xc7; /* see above for bitfields */ + /* mask aad[3] b7 if frame is data frame w/ QoS control field */ + if (IEEE80211_IS_QOS_ANY(wh)) + aad[3] &= 0x7f; + + /* NB: we know 3 addresses are contiguous */ + memcpy(aad + 4, wh->i_addr1, 3 * IEEE80211_ADDR_LEN); + aad[22] = wh->i_seq[0] & IEEE80211_SEQ_FRAG_MASK; + aad[23] = 0; /* all bits masked */ + /* + * Construct variable-length portion of AAD based + * on whether this is a 4-address frame/QOS frame. + * We always zero-pad to 32 bytes before running it + * through the cipher. + */ + if (IEEE80211_IS_DSTODS(wh)) { + IEEE80211_ADDR_COPY(aad + 24, + ((const struct ieee80211_frame_addr4 *)wh)->i_addr4); + if (IEEE80211_IS_QOS_ANY(wh)) { + const struct ieee80211_qosframe_addr4 *qwh4 = + (const struct ieee80211_qosframe_addr4 *) wh; + /* TODO: SPP A-MSDU / A-MSDU present bit */ + aad[30] = qwh4->i_qos[0] & 0x0f;/* just priority bits */ + aad[31] = 0; + aad_len = aad[1] = 22 + IEEE80211_ADDR_LEN + 2; + } else { + *(uint16_t *)&aad[30] = 0; + aad_len = aad[1] = 22 + IEEE80211_ADDR_LEN; + } + } else { + if (IEEE80211_IS_QOS_ANY(wh)) { + const struct ieee80211_qosframe *qwh = + (const struct ieee80211_qosframe*) wh; + /* TODO: SPP A-MSDU / A-MSDU present bit */ + aad[24] = qwh->i_qos[0] & 0x0f; /* just priority bits */ + aad[25] = 0; + aad_len = aad[1] = 22 + 2; + } else { + *(uint16_t *)&aad[24] = 0; + aad_len = aad[1] = 22; + } + *(uint16_t *)&aad[26] = 0; + *(uint32_t *)&aad[28] = 0; + } + + return (aad_len); +} diff --git a/sys/net80211/ieee80211_crypto.h b/sys/net80211/ieee80211_crypto.h index fa0d3fc3272a..89b8b4f9daa4 100644 --- a/sys/net80211/ieee80211_crypto.h +++ b/sys/net80211/ieee80211_crypto.h @@ -295,5 +295,10 @@ void ieee80211_notify_replay_failure(struct ieee80211vap *, uint64_t rsc, int tid); void ieee80211_notify_michael_failure(struct ieee80211vap *, const struct ieee80211_frame *, ieee80211_keyix keyix); + +/* AAD assembly for CCMP/GCMP. */ +uint16_t ieee80211_crypto_init_aad(const struct ieee80211_frame *, + uint8_t *, int); + #endif /* defined(__KERNEL__) || defined(_KERNEL) */ #endif /* _NET80211_IEEE80211_CRYPTO_H_ */ diff --git a/sys/net80211/ieee80211_crypto_ccmp.c b/sys/net80211/ieee80211_crypto_ccmp.c index 70265335fe70..01bc50f885f2 100644 --- a/sys/net80211/ieee80211_crypto_ccmp.c +++ b/sys/net80211/ieee80211_crypto_ccmp.c @@ -408,6 +408,79 @@ xor_block(uint8_t *b, const uint8_t *a, size_t len) b[i] ^= a[i]; } +/** + * @brief Initialise the AES-CCM nonce flag field in the b0 CCMP block. + * + * The B_0 block is defined in RFC 3610 section 2.2 (Authentication). + * b0[0] is the CCM flags field, so the nonce used for B_0 starts at + * b0[1]. Amusingly, b0[1] is also flags, but it's the 802.11 AES-CCM + * nonce flags field, NOT the CCM flags field. + * + * The AES-CCM nonce flags field is defined in 802.11-2020 12.5.3.3.4 + * (Construct CCM nonce). + * + * TODO: net80211 currently doesn't support MFP (management frame protection) + * and so bit 4 is never set. This routine and ccmp_init_blocks() will + * need a pointer to the ieee80211_node or a flag that explicitly states + * the frame will be sent w/ MFP encryption / received w/ MFP decryption. + * + * @param wh the 802.11 header to populate + * @param b0 the CCM nonce to update (remembering b0[0] is the CCM + * nonce flags, and b0[1] is the AES-CCM nonce flags). + */ +static void +ieee80211_crypto_ccmp_init_nonce_flags(const struct ieee80211_frame *wh, + char *b0) +{ + if (IEEE80211_IS_DSTODS(wh)) { + /* + * 802.11-2020 12.5.33.3.4 (Construct CCM nonce) mentions + * that the low four bits of this byte are the "MPDU priority." + * This is defined in 5.1.1.2 (Determination of UP) and + * 5.1.1.3 (Interpretation of Priority Parameter in MAC + * service primitives). + * + * The former says "The QoS facility supports eight priority + * values, referred to as UPs. The values a UP may take are + * the integer values from 0 to 7 and are identical to the + * 802.11D priority tags." + * + * The latter specifically calls out that "Priority parameter + * and TID subfield values 0 to 7 are interpreted aas UPs for + * the MSDUs" .. and " .. TID subfield values 8 to 15 specify + * TIDs that are TS identifiers (TSIDs)" which are used for + * TSPEC. There's a bunch of extra work to be done with frames + * received in TIDs 8..15 with no TSPEC, "then the MSDU shall + * be sent with priority parameter set to 0." + * + * All QoS frames (not just QoS data) have TID fields and + * thus priorities. However, the code straight up + * copies the 4 bit TID field, rather than a 3 bit MPDU + * priority value. For now, as net80211 doesn't specifically + * support TSPEC negotiation, this likely never gets checked. + * However as part of any future TSPEC work, this will likely + * need to be looked at and checked with interoperability + * with other stacks. + */ + if (IEEE80211_IS_QOS_ANY(wh)) { + const struct ieee80211_qosframe_addr4 *qwh4 = + (const struct ieee80211_qosframe_addr4 *) wh; + b0[1] = qwh4->i_qos[0] & 0x0f; /* prio bits */ + } else { + b0[1] = 0; + } + } else { + if (IEEE80211_IS_QOS_ANY(wh)) { + const struct ieee80211_qosframe *qwh = + (const struct ieee80211_qosframe *) wh; + b0[1] = qwh->i_qos[0] & 0x0f; /* prio bits */ + } else { + b0[1] = 0; + } + } + /* TODO: populate MFP flag */ +} + /* * Host AP crypt: host-based CCMP encryption implementation for Host AP driver * @@ -428,8 +501,6 @@ ccmp_init_blocks(rijndael_ctx *ctx, struct ieee80211_frame *wh, uint8_t b0[AES_BLOCK_LEN], uint8_t aad[2 * AES_BLOCK_LEN], uint8_t auth[AES_BLOCK_LEN], uint8_t s0[AES_BLOCK_LEN]) { -#define IS_QOS_DATA(wh) IEEE80211_QOS_HAS_SEQ(wh) - /* * Map M parameter to encoding * RFC3610, Section 2 (CCM Mode Specification) @@ -446,7 +517,8 @@ ccmp_init_blocks(rijndael_ctx *ctx, struct ieee80211_frame *wh, * Dlen */ b0[0] = 0x40 | 0x01 | (m << 3); - /* NB: b0[1] set below */ + /* Init b0[1] (CCM nonce flags) */ + ieee80211_crypto_ccmp_init_nonce_flags(wh, b0); IEEE80211_ADDR_COPY(b0 + 2, wh->i_addr2); b0[8] = pn >> 40; b0[9] = pn >> 32; @@ -457,63 +529,8 @@ ccmp_init_blocks(rijndael_ctx *ctx, struct ieee80211_frame *wh, b0[14] = (dlen >> 8) & 0xff; b0[15] = dlen & 0xff; - /* AAD: - * FC with bits 4..6 and 11..13 masked to zero; 14 is always one - * A1 | A2 | A3 - * SC with bits 4..15 (seq#) masked to zero - * A4 (if present) - * QC (if present) - */ - aad[0] = 0; /* AAD length >> 8 */ - /* NB: aad[1] set below */ - aad[2] = wh->i_fc[0] & 0x8f; /* XXX magic #s */ - /* TODO: 802.11-2016 12.5.3.3.3 - QoS control field mask */ - aad[3] = wh->i_fc[1] & 0xc7; /* XXX magic #s */ - /* NB: we know 3 addresses are contiguous */ - memcpy(aad + 4, wh->i_addr1, 3 * IEEE80211_ADDR_LEN); - aad[22] = wh->i_seq[0] & IEEE80211_SEQ_FRAG_MASK; - aad[23] = 0; /* all bits masked */ - /* - * Construct variable-length portion of AAD based - * on whether this is a 4-address frame/QOS frame. - * We always zero-pad to 32 bytes before running it - * through the cipher. - * - * We also fill in the priority bits of the CCM - * initial block as we know whether or not we have - * a QOS frame. - */ - if (IEEE80211_IS_DSTODS(wh)) { - IEEE80211_ADDR_COPY(aad + 24, - ((struct ieee80211_frame_addr4 *)wh)->i_addr4); - if (IS_QOS_DATA(wh)) { - struct ieee80211_qosframe_addr4 *qwh4 = - (struct ieee80211_qosframe_addr4 *) wh; - aad[30] = qwh4->i_qos[0] & 0x0f;/* just priority bits */ - aad[31] = 0; - b0[1] = aad[30]; - aad[1] = 22 + IEEE80211_ADDR_LEN + 2; - } else { - *(uint16_t *)&aad[30] = 0; - b0[1] = 0; - aad[1] = 22 + IEEE80211_ADDR_LEN; - } - } else { - if (IS_QOS_DATA(wh)) { - struct ieee80211_qosframe *qwh = - (struct ieee80211_qosframe*) wh; - aad[24] = qwh->i_qos[0] & 0x0f; /* just priority bits */ - aad[25] = 0; - b0[1] = aad[24]; - aad[1] = 22 + 2; - } else { - *(uint16_t *)&aad[24] = 0; - b0[1] = 0; - aad[1] = 22; - } - *(uint16_t *)&aad[26] = 0; - *(uint32_t *)&aad[28] = 0; - } + /* Init AAD */ + (void) ieee80211_crypto_init_aad(wh, aad, 2 * AES_BLOCK_LEN); /* Start with the first block and AAD */ rijndael_encrypt(ctx, b0, auth); @@ -524,7 +541,6 @@ ccmp_init_blocks(rijndael_ctx *ctx, struct ieee80211_frame *wh, b0[0] &= 0x07; b0[14] = b0[15] = 0; rijndael_encrypt(ctx, b0, s0); -#undef IS_QOS_DATA } #define CCMP_ENCRYPT(_i, _b, _b0, _pos, _e, _len) do { \ diff --git a/sys/net80211/ieee80211_crypto_gcmp.c b/sys/net80211/ieee80211_crypto_gcmp.c index 290111235b4e..28e1cc5dab46 100644 --- a/sys/net80211/ieee80211_crypto_gcmp.c +++ b/sys/net80211/ieee80211_crypto_gcmp.c @@ -380,90 +380,6 @@ gcmp_demic(struct ieee80211_key *k, struct mbuf *m, int force) return (1); } -/** - * @brief Calculate the AAD required for this frame for AES-GCM. - * - * Note: This code was first copied over from ieee80211_crypto_ccmp.c, so - * it has some CCMP-isms. - * - * NOTE: the first two bytes are a 16 bit big-endian length, which are used - * by AES-CCM. AES-GCM doesn't require the length at the beginning. - * - * @param wh 802.11 frame to calculate the AAD over - * @param aad AAD buffer, GCM_AAD_LEN bytes - * @param The AAD length in bytes. - */ -static int -gcmp_init_aad(const struct ieee80211_frame *wh, uint8_t *aad) -{ - int aad_len; - - memset(aad, 0, GCM_AAD_LEN); - -#define IS_QOS_DATA(wh) IEEE80211_QOS_HAS_SEQ(wh) - /* AAD: - * FC with bits 4..6 and 11..13 masked to zero; 14 is always one - * A1 | A2 | A3 - * SC with bits 4..15 (seq#) masked to zero - * A4 (if present) - * QC (if present) - */ - aad[0] = 0; /* AAD length >> 8 */ - /* NB: aad[1] set below */ - - /* - * TODO: go back over this in 802.11-2020 and triple check - * the AAD assembly with regards to packet flags. - */ - - aad[2] = wh->i_fc[0] & 0x8f; /* XXX magic #s */ - /* - * TODO: 12.5.3.3.3 - bit 14 should always be set; bit 15 masked to 0 - * if QoS control field, unmasked otherwise - */ - aad[3] = wh->i_fc[1] & 0xc7; /* XXX magic #s */ - /* NB: we know 3 addresses are contiguous */ - memcpy(aad + 4, wh->i_addr1, 3 * IEEE80211_ADDR_LEN); - aad[22] = wh->i_seq[0] & IEEE80211_SEQ_FRAG_MASK; - aad[23] = 0; /* all bits masked */ - /* - * Construct variable-length portion of AAD based - * on whether this is a 4-address frame/QOS frame. - * We always zero-pad to 32 bytes before running it - * through the cipher. - */ - if (IEEE80211_IS_DSTODS(wh)) { - IEEE80211_ADDR_COPY(aad + 24, - ((const struct ieee80211_frame_addr4 *)wh)->i_addr4); - if (IS_QOS_DATA(wh)) { - const struct ieee80211_qosframe_addr4 *qwh4 = - (const struct ieee80211_qosframe_addr4 *) wh; - aad[30] = qwh4->i_qos[0] & 0x0f;/* just priority bits */ - aad[31] = 0; - aad_len = aad[1] = 22 + IEEE80211_ADDR_LEN + 2; - } else { - *(uint16_t *)&aad[30] = 0; - aad_len = aad[1] = 22 + IEEE80211_ADDR_LEN; - } - } else { - if (IS_QOS_DATA(wh)) { - const struct ieee80211_qosframe *qwh = - (const struct ieee80211_qosframe*) wh; - aad[24] = qwh->i_qos[0] & 0x0f; /* just priority bits */ - aad[25] = 0; - aad_len = aad[1] = 22 + 2; - } else { - *(uint16_t *)&aad[24] = 0; - aad_len = aad[1] = 22; - } - *(uint16_t *)&aad[26] = 0; - *(uint32_t *)&aad[28] = 0; - } -#undef IS_QOS_DATA - - return (aad_len); -} - /* * Populate the 12 byte / 96 bit IV buffer. */ @@ -538,7 +454,7 @@ gcmp_encrypt(struct ieee80211_key *key, struct mbuf *m0, int hdrlen) } /* Initialise AAD */ - aad_len = gcmp_init_aad(wh, aad); + aad_len = ieee80211_crypto_init_aad(wh, aad, GCM_AAD_LEN); /* Initialise local Nonce to work on */ /* TODO: rename iv stuff here to nonce */ @@ -629,7 +545,7 @@ gcmp_decrypt(struct ieee80211_key *key, u_int64_t pn, struct mbuf *m, } /* Initialise AAD */ - aad_len = gcmp_init_aad(wh, aad); + aad_len = ieee80211_crypto_init_aad(wh, aad, GCM_AAD_LEN); /* Initialise local IV copy to work on */ iv_len = gcmp_init_iv(iv, wh, pn); From nobody Tue Apr 8 01:35:29 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWpYZ04rtz5sWhl; Tue, 08 Apr 2025 01:35: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWpYY60Bwz3PR4; Tue, 08 Apr 2025 01:35:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744076129; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8GbHGQyhAgruM9Pt7YwWFZ1iSITg/QkfyyqsthFZvH4=; b=k/O6FFfrDNdXJQn2aHs3f8gOWFcSVuqurDWTb9XZrPGglOLQrLWkGhEMqMrSIhkAfJrWnX 5cIRqNlLWcVgG76uyZgF8qiDPzA9G+DaCDOK0lEjlCD+7viNJwrYN3fWKNnCc7CgCqnC6D qDqae29do+3HYPaf03q1oJm7s/QV/kBH6bEA21RFqoT1OT+NLr+HWTfvdPR171ZK9UQYiy gb/9tHfyTxQa/RSJxmzLwGIuTe7fRcPutfx2aHswTzpSaGJFXUtMhGW8pcsX9ms4JYbbP7 1ogTSfX47H7YGo7RgGQbXT+7ywnNVXCVd5ppgy5vjC8FjoMfGKGZpr8J1OiXrw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744076129; a=rsa-sha256; cv=none; b=P1mFwhU5VgoMuDHhk3ml9OUBe+VVodaexgkNJ+jAD5hnFiVvKa3LZ41NTGBsl8QoOWe7Ov y8Uf1/0Q56EKP65L2Y3d5JnpoOKTGLVVEa8xxDR6CPc3aJNl+Ipc7BybJenvvpvg1hGLMp KHKqClgtc2aMtXUp0PexDVVvpUmapp1J8W7TJkViZMOSHPybPGukcyDTUE9MzVChLNUtc5 kiMBUTg+Y0xci8DN400iPCt3O7qyuwxtDegLHF42nOr42EaP202MLTa365YDND7ZosbmQy eWWXNk4fuZxm3CrPqLP3/UEKP5vDuamp/nJg2aInFp3qTQ+a9kEMGTTO9nPV/A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744076129; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8GbHGQyhAgruM9Pt7YwWFZ1iSITg/QkfyyqsthFZvH4=; b=jIzocfpnFrmw1etXyuZLah79cZTSQB0n9+OEm3Ns7l64MVl7NV11gruqbMd+K/0TigPeVq ICA1bb+nogSOq9dGXCoZkmX4JnxvQ5JP1svHr9jUMmbODzJPbyMxqNbimUX+cCuuyzw9Qp 811TMSx+XufTQBbOSIDaLRXXWDx8N5gOmj7fd7ztgVl+80qwE4JdVow+jbNQu/Edanlsoz YIWPogHubP5C/T1UDsx5YpnoA7fp85ki4nXOmXcLFgd+t/fRoD+xKY6KoMOp1tax2YP5Fq exP5P6hOV3vLocfbvnx4pVQakVxm+fA9plOPN74H0Py0Vbw5YAw4NarAyN3/4w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWpYY5Zj7z19jT; Tue, 08 Apr 2025 01:35:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5381ZTCl071309; Tue, 8 Apr 2025 01:35:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5381ZTPl071306; Tue, 8 Apr 2025 01:35:29 GMT (envelope-from git) Date: Tue, 8 Apr 2025 01:35:29 GMT Message-Id: <202504080135.5381ZTPl071306@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: 1751bf9e58dd - main - net80211: fail setting a key if the cipher isn't HW/SW supported List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1751bf9e58ddc41f3cde013ebe7cc6bcfc17eb56 Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=1751bf9e58ddc41f3cde013ebe7cc6bcfc17eb56 commit 1751bf9e58ddc41f3cde013ebe7cc6bcfc17eb56 Author: Adrian Chadd AuthorDate: 2025-03-17 03:16:06 +0000 Commit: Adrian Chadd CommitDate: 2025-04-08 01:35:22 +0000 net80211: fail setting a key if the cipher isn't HW/SW supported The key alloc path was checking if the key was supported in hardware but treated /all/ keys as supported in software. As I discovered during my ath10k port, not all NICs that support ciphers in hardware support enough of an 802.11 frame transmit/receive path to actually handle software encryption. So, do a second check after the hardware encryption check to see if it's in the software list and hard fail it if it isn't in there. Otherwise a fun failure mode occurs - the frames are marked as protected, but since there's no GCMP support setup/enabled, they just get marked as "protected" but they don't go through the encryption path, and the receiver dutifully tosses them as invalid. I've verified this by trying to use GCMP in wpa_supplicant with a NIC that doesn't announce GCMP HW/SW encryption, and now it actually fails. Differential Revision: https://reviews.freebsd.org/D49393 Reviewed by: bz --- sys/net80211/ieee80211_crypto.c | 15 +++++++++++++++ sys/net80211/ieee80211_ioctl.h | 1 + 2 files changed, 16 insertions(+) diff --git a/sys/net80211/ieee80211_crypto.c b/sys/net80211/ieee80211_crypto.c index 84cf1d02e408..6b636da9fa2c 100644 --- a/sys/net80211/ieee80211_crypto.c +++ b/sys/net80211/ieee80211_crypto.c @@ -397,6 +397,21 @@ ieee80211_crypto_newkey(struct ieee80211vap *vap, __func__, cip->ic_name); flags |= IEEE80211_KEY_SWCRYPT; } + /* + * Check if the software cipher is available; if not then + * fail it early. + * + * Some devices do not support all ciphers in software + * (for example they don't support a "raw" data path.) + */ + if ((flags & IEEE80211_KEY_SWCRYPT) && + (ic->ic_sw_cryptocaps & (1<ic_name); + vap->iv_stats.is_crypto_swcipherfail++; + return (0); + } /* * Hardware TKIP with software MIC is an important * combination; we handle it by flagging each key, diff --git a/sys/net80211/ieee80211_ioctl.h b/sys/net80211/ieee80211_ioctl.h index 6064f586c923..d542d75312b9 100644 --- a/sys/net80211/ieee80211_ioctl.h +++ b/sys/net80211/ieee80211_ioctl.h @@ -259,6 +259,7 @@ struct ieee80211_stats { uint32_t is_rx_gcmpmic; /* rx MIC check failed (GCMP) */ uint32_t is_crypto_gcmp_nomem; /* gcmp crypto failed; no mem */ uint32_t is_crypto_gcmp_nospc; /* gcmp crypto failed; no mbuf space */ + uint32_t is_crypto_swcipherfail; /* no support for SW cipher */ uint32_t is_spare[5]; }; From nobody Tue Apr 8 01:35:30 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWpYb3lKdz5sWcX; Tue, 08 Apr 2025 01:35: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWpYb007Qz3Pd0; Tue, 08 Apr 2025 01:35:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744076131; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ogsT3k88u9aYrcXY8/xgcuEdqZa4uJD+CevH9xVv8rw=; b=uVYiMZhcpUCZWEJ6Ef5ditzVNDhCafhYBCBHz5UJDpADy9iJcFf6ILTbCKUJILYhloszmS 9bRxBJLeT5jcsssUfHulQY+26NInyKNUp5W/LaeKJu3Sxb7Q+Q7Rvvc6ExoVGicfgkQOZN UDtetdtIdyQHOBTCckIi86YdooMuJXeUxeAjCZjG+DVKuGNDTr8BlxWLPsgKOBnu+NMPki fKSk9ew/uBZ28DYMz6/dncj0w3LItYvtx1Qt7LzGAKFnhy/wZwZWdEcjptVv6Zo3E8Jtbd +In2mUMkNdgxoprrJIb0KhkFCgRwW0OskLVXNGTpHDe/AhSqNUytl/kI+e/0xA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744076131; a=rsa-sha256; cv=none; b=kky2A4lMuEc1mSSXtKBloyihARV8rU0YVOvX7+1UjbdoohqFS3dhDQPkOm9EFqVLmPf5fr zYa3EmnYO1sRraXdzMc4/ebJi5USRSTAaklwU0XJPXe0aswnH7r5yWAGNhuObAT3vEdVQV /oco6RtgsURwYV/9rM6RGWIiRhZ4q+gKEaANfCK+0BZkpozg4TkMAt3+GNDCsEQszyxDBC 8C31sxTn9207ohq3DrRr32J1ZZmqCXQ2g8pTMFyliDxMbv3sR8oqanMVY17OvOdJS7IRvR YveahH9FlhO5oaa2yHPsZxPMUn6mVZffXboTU/7hzQKXLfLa6Oi32mVk/L0GAw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744076131; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ogsT3k88u9aYrcXY8/xgcuEdqZa4uJD+CevH9xVv8rw=; b=qcWEX7Mv26nDxBLFELTNTxTtyWW4y7AoJ5nn+hOBtfV+Sg+ALWOZ+8aYtnt11WlgQ5WtEL 9EeOIWu1mhZu+NRpwoFsK6mBp+LkrUtNMJrpiBvefoG0e/tejIci8YrNAkwGwDJEaC1ozB B3jLZuutyNWxejqDPsKx+ICbYkgvQ2WdxhTxx+jPQmsyfk4Q4ye2Hqin2GjKuLxT8W+CnR Ddf/9Gt0h5rksgeqmm680Mbjtc5iz1ZByUT+3UL2c1e0R9qIXNkfhESCks0bIKmTOqkYtJ F4HsYHwHf2DipP61i+T7MF9NfWvWLLz1EQkx4gQT4Thek9qUfce93c61MNIC/g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWpYZ6Yjwz18lb; Tue, 08 Apr 2025 01:35:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5381ZUqK071342; Tue, 8 Apr 2025 01:35:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5381ZUi9071339; Tue, 8 Apr 2025 01:35:30 GMT (envelope-from git) Date: Tue, 8 Apr 2025 01:35:30 GMT Message-Id: <202504080135.5381ZUi9071339@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: fa06d18b3b87 - main - wpa: add support for CCMP-256/GMCP-256 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fa06d18b3b8753a6b51198051d44edb2043db938 Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=fa06d18b3b8753a6b51198051d44edb2043db938 commit fa06d18b3b8753a6b51198051d44edb2043db938 Author: Adrian Chadd AuthorDate: 2025-03-20 04:20:56 +0000 Commit: Adrian Chadd CommitDate: 2025-04-08 01:35:22 +0000 wpa: add support for CCMP-256/GMCP-256 This adds support for CCMP-256 and GCMP-256 if available via net80211 device capabilities, and will set the keys as needed. Differential Revision: https://reviews.freebsd.org/D49418 Reviewed by: cy --- contrib/wpa/src/drivers/driver_bsd.c | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/contrib/wpa/src/drivers/driver_bsd.c b/contrib/wpa/src/drivers/driver_bsd.c index fc9a44743d7d..6efaa9c27ff2 100644 --- a/contrib/wpa/src/drivers/driver_bsd.c +++ b/contrib/wpa/src/drivers/driver_bsd.c @@ -378,9 +378,15 @@ bsd_set_key(void *priv, struct wpa_driver_set_key_params *params) case WPA_ALG_CCMP: wk.ik_type = IEEE80211_CIPHER_AES_CCM; break; + case WPA_ALG_CCMP_256: + wk.ik_type = IEEE80211_CIPHER_AES_CCM_256; + break; case WPA_ALG_GCMP: wk.ik_type = IEEE80211_CIPHER_AES_GCM_128; break; + case WPA_ALG_GCMP_256: + wk.ik_type = IEEE80211_CIPHER_AES_GCM_256; + break; case WPA_ALG_BIP_CMAC_128: wk.ik_type = IEEE80211_CIPHER_BIP_CMAC_128; break; @@ -448,16 +454,24 @@ bsd_configure_wpa(void *priv, struct wpa_bss_params *params) { #ifndef IEEE80211_IOC_APPIE static const char *ciphernames[] = - { "WEP", "TKIP", "AES-OCB", "AES-CCM", "CKIP", "NONE" }; + { "WEP", "TKIP", "AES-OCB", "AES-CCM", "CKIP", "NONE", + "AES-CCM-256", "BIP-CMAC-128", "BIP-CMAC-256", "BIP-GMAC-128", + "BIP-GMAC-256", "AES-GCM-128", "AES-GCM-256" }; int v; switch (params->wpa_group) { case WPA_CIPHER_CCMP: v = IEEE80211_CIPHER_AES_CCM; break; + case WPA_CIPHER_CCMP_256: + v = IEEE80211_CIPHER_AES_CCM_256; + break; case WPA_CIPHER_GCMP: v = IEEE80211_CIPHER_AES_GCM_128; break; + case WPA_CIPHER_GCMP_256: + v = IEEE80211_CIPHER_AES_GCM_256; + break; case WPA_CIPHER_BIP_CMAC_128: v = IEEE80211_CIPHER_BIP_CMAC_128; break; @@ -501,8 +515,12 @@ bsd_configure_wpa(void *priv, struct wpa_bss_params *params) v |= 1<wpa_pairwise & WPA_CIPHER_GCMP) v |= 1<wpa_pairwise & WPA_CIPHER_GCMP_256) + v |= 1<wpa_pairwise & WPA_CIPHER_CCMP) v |= 1<wpa_pairwise & WPA_CIPHER_CCMP_256) + v |= 1<wpa_pairwise & WPA_CIPHER_TKIP) v |= 1<wpa_pairwise & WPA_CIPHER_NONE) @@ -1584,8 +1602,12 @@ static int wpa_driver_bsd_capa(struct bsd_driver_data *drv) drv->capa.enc |= WPA_DRIVER_CAPA_ENC_TKIP; if (devcaps.dc_cryptocaps & IEEE80211_CRYPTO_AES_CCM) drv->capa.enc |= WPA_DRIVER_CAPA_ENC_CCMP; + if (devcaps.dc_cryptocaps & IEEE80211_CRYPTO_AES_CCM_256) + drv->capa.enc |= WPA_DRIVER_CAPA_ENC_CCMP_256; if (devcaps.dc_cryptocaps & IEEE80211_CRYPTO_AES_GCM_128) drv->capa.enc |= WPA_DRIVER_CAPA_ENC_GCMP; + if (devcaps.dc_cryptocaps & IEEE80211_CRYPTO_AES_GCM_256) + drv->capa.enc |= WPA_DRIVER_CAPA_ENC_GCMP_256; if (devcaps.dc_cryptocaps & IEEE80211_CRYPTO_BIP_CMAC_128) drv->capa.enc |= WPA_DRIVER_CAPA_ENC_BIP; From nobody Tue Apr 8 03:47:26 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWsTp4RX4z5sgJM; Tue, 08 Apr 2025 03:47: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWsTp45q9z45cp; Tue, 08 Apr 2025 03:47:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744084046; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HSYyfOqJhnTebooErqIfKCLmt2ROxyyaRdak3N2WPA4=; b=rI9J/fIKZr1rfDoxHUlxryps5lpA4I4wEcuYIxngJJ3H52t4Erg9MDX9zaK6v2sCvzDRUO KEyjGN6Hq8AYM7flZgIdqxcrL7OFTsfivRPnpMsVmtypIu9j6v6jlitoQGuT3LXXX8ShvF FKnLQ5YG6uQ2cstG6tnIItLEukt/duZdYDESm2fL+hBFnM59QM3QFpx+AlVrVwhkR04tJM la3o9A2PBHvmtIjFz2qO4mAV2nQw9xN3BM8S8NB+fUd7CwslW30lFZkzFFfrjQQVuE8HSs OcuG+YeHL2sxS5j2gzoSFsU8d+hQ/Mizz0JoRbL4idBCJLhVZKrhZasxSAoJ1g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744084046; a=rsa-sha256; cv=none; b=s3bSGqViaXiHTmUI0TbWgKfsWYNPYJzP/xfmHnMDbHVSDyRaLF/ru6XQZytexb0Wo0uR7i y6ZQvhT9idaOSf8aSS4Zf/VHIy3s6HYoJgCX0JN/G17tXnlYkMeVp/feuj63Bcpa1o3yX0 ed4obCERoMNgPYBixUJqArTqS5a/LSCwosmCazVhUu5JY3RFdpWzP4uPAIj0kVKGKhy7uN JfPeO9b4inL51zSwgTkROCHxJS1BfMCWig+15SpXBqh6gHNPwvoVgg1e7ntVegDS/BhiLp tZcAo/pJF3cLpP70isr85akWn58sudgfz2Rmbn4DWgKjvVroAs1+9/k6Tkg1yA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744084046; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HSYyfOqJhnTebooErqIfKCLmt2ROxyyaRdak3N2WPA4=; b=Xo3kBpODsUKOCx4KdSGnEpW6Ihh4AaJeKb3SSaaG5nANWyD8ZWxqlIJMRU6A3mTUq432PD 4lAQHurA0Oj28OGSgZgGiIYZVJVFx11+cBv9BhM08fr9QkqA42RaEv9uJv549yYisU8yH9 GL+VZ7dtPEEx6AAQabQH63xnINQBVAmn+ER8HDtFj6omF+5kjDB+bEWK9QzMaZ911Gvmen ou+f0UHBI6eWYcIL518inWMNLFB3brfoCWUBtH9mWPNyrfFJLlycYywjHYm7tbwApCtWnq gxTHrlrBj0LYBIe0pRrmSVB4CqDintNOwiyqATYDnJEvFGDFBvZF9on9gAR5pg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWsTp3WC2z18c; Tue, 08 Apr 2025 03:47:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5383lQVX016605; Tue, 8 Apr 2025 03:47:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5383lQpQ016600; Tue, 8 Apr 2025 03:47:26 GMT (envelope-from git) Date: Tue, 8 Apr 2025 03:47:26 GMT Message-Id: <202504080347.5383lQpQ016600@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: 7fead5f144a8 - main - qcom_gcc: begin refactoring sys/dev/qcom_gcc to support multiple chipsets List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7fead5f144a874a317cba29130a76a11629903ea Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=7fead5f144a874a317cba29130a76a11629903ea commit 7fead5f144a874a317cba29130a76a11629903ea Author: Adrian Chadd AuthorDate: 2025-04-05 03:59:58 +0000 Commit: Adrian Chadd CommitDate: 2025-04-08 03:44:52 +0000 qcom_gcc: begin refactoring sys/dev/qcom_gcc to support multiple chipsets Although the driver structure is almost supportive of multiple chipsets, there's a lot of subtle hard coded IPQ4018 assumptions here. This is a partial refactor of the driver in order to have a single qcom_gcc driver that will eventually support multiple chipsets. * rename qcom_gcc_ipq4018 -> qcom_gcc * remove the ipq4018 specific naming from things * create a table to drive probe/attach, with a chipset id to use during attach * migrate the clock register accessors to not be ipq4018 specific * migrate the reset register accessors to not be ipq4018 specific Note this won't compile (yet) for an arm64 kernel because there's a hard-coded clock tree for an earlier 64 bit MSM part in sys/arm64/qualcomm/qcom_gcc.c . That will need to be rolled into this driver. Differential Revision: https://reviews.freebsd.org/D49683 --- sys/arm/conf/std.qca | 2 +- sys/arm/qualcomm/std.ipq4018 | 22 ++-- sys/dev/qcom_gcc/qcom_gcc_clock.c | 98 ++++++++++++++++ sys/dev/qcom_gcc/qcom_gcc_ipq4018.h | 41 +++++++ sys/dev/qcom_gcc/qcom_gcc_ipq4018_clock.c | 71 ++---------- sys/dev/qcom_gcc/qcom_gcc_ipq4018_reset.c | 20 ++-- .../{qcom_gcc_ipq4018.c => qcom_gcc_main.c} | 124 ++++++++++++++------- sys/dev/qcom_gcc/qcom_gcc_reset.c | 64 +++++++++++ .../{qcom_gcc_ipq4018_var.h => qcom_gcc_var.h} | 41 ++++--- 9 files changed, 350 insertions(+), 133 deletions(-) diff --git a/sys/arm/conf/std.qca b/sys/arm/conf/std.qca index 24e6601f0939..ea6912606517 100644 --- a/sys/arm/conf/std.qca +++ b/sys/arm/conf/std.qca @@ -46,7 +46,7 @@ device mpcore_timer device psci # Clock/Reset provider -device qcom_gcc_ipq4018 +device qcom_gcc # TLMM (gpio/pinmux) device gpio diff --git a/sys/arm/qualcomm/std.ipq4018 b/sys/arm/qualcomm/std.ipq4018 index 6360a3ce25db..89d2cb546bf3 100644 --- a/sys/arm/qualcomm/std.ipq4018 +++ b/sys/arm/qualcomm/std.ipq4018 @@ -34,17 +34,19 @@ dev/qcom_rnd/qcom_rnd.c optional qcom_rnd dev/qcom_qup/qcom_spi.c optional qcom_qup_spi dev/qcom_qup/qcom_spi_hw.c optional qcom_qup_spi -dev/qcom_gcc/qcom_gcc_ipq4018.c optional qcom_gcc_ipq4018 -dev/qcom_gcc/qcom_gcc_ipq4018_reset.c optional qcom_gcc_ipq4018 -dev/qcom_gcc/qcom_gcc_ipq4018_clock.c optional qcom_gcc_ipq4018 +dev/qcom_gcc/qcom_gcc_main.c optional qcom_gcc +dev/qcom_gcc/qcom_gcc_clock.c optional qcom_gcc +dev/qcom_gcc/qcom_gcc_reset.c optional qcom_gcc +dev/qcom_gcc/qcom_gcc_ipq4018_reset.c optional qcom_gcc +dev/qcom_gcc/qcom_gcc_ipq4018_clock.c optional qcom_gcc -dev/qcom_clk/qcom_clk_fepll.c optional qcom_gcc_ipq4018 -dev/qcom_clk/qcom_clk_fdiv.c optional qcom_gcc_ipq4018 -dev/qcom_clk/qcom_clk_apssdiv.c optional qcom_gcc_ipq4018 -dev/qcom_clk/qcom_clk_freqtbl.c optional qcom_gcc_ipq4018 -dev/qcom_clk/qcom_clk_rcg2.c optional qcom_gcc_ipq4018 -dev/qcom_clk/qcom_clk_branch2.c optional qcom_gcc_ipq4018 -dev/qcom_clk/qcom_clk_ro_div.c optional qcom_gcc_ipq4018 +dev/qcom_clk/qcom_clk_fepll.c optional qcom_gcc +dev/qcom_clk/qcom_clk_fdiv.c optional qcom_gcc +dev/qcom_clk/qcom_clk_apssdiv.c optional qcom_gcc +dev/qcom_clk/qcom_clk_freqtbl.c optional qcom_gcc +dev/qcom_clk/qcom_clk_rcg2.c optional qcom_gcc +dev/qcom_clk/qcom_clk_branch2.c optional qcom_gcc +dev/qcom_clk/qcom_clk_ro_div.c optional qcom_gcc dev/qcom_tlmm/qcom_tlmm_debug.c optional qcom_tlmm_ipq4018 dev/qcom_tlmm/qcom_tlmm_ipq4018.c optional qcom_tlmm_ipq4018 diff --git a/sys/dev/qcom_gcc/qcom_gcc_clock.c b/sys/dev/qcom_gcc/qcom_gcc_clock.c new file mode 100644 index 000000000000..c8c10b0c5172 --- /dev/null +++ b/sys/dev/qcom_gcc/qcom_gcc_clock.c @@ -0,0 +1,98 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2025, Adrian Chadd + * + * 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 unmodified, 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 ``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. + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include +#include + +#include "qcom_gcc_var.h" + +int +qcom_gcc_clock_read(device_t dev, bus_addr_t addr, uint32_t *val) +{ + struct qcom_gcc_softc *sc; + + sc = device_get_softc(dev); + *val = bus_read_4(sc->reg, addr); + return (0); +} + +int +qcom_gcc_clock_write(device_t dev, bus_addr_t addr, uint32_t val) +{ + struct qcom_gcc_softc *sc; + + sc = device_get_softc(dev); + bus_write_4(sc->reg, addr, val); + return (0); +} + +int +qcom_gcc_clock_modify(device_t dev, bus_addr_t addr, + uint32_t clear_mask, uint32_t set_mask) +{ + struct qcom_gcc_softc *sc; + uint32_t reg; + + sc = device_get_softc(dev); + reg = bus_read_4(sc->reg, addr); + reg &= clear_mask; + reg |= set_mask; + bus_write_4(sc->reg, addr, reg); + return (0); +} + +void +qcom_gcc_clock_lock(device_t dev) +{ + struct qcom_gcc_softc *sc; + + sc = device_get_softc(dev); + mtx_lock(&sc->mtx); +} + +void +qcom_gcc_clock_unlock(device_t dev) +{ + struct qcom_gcc_softc *sc; + + sc = device_get_softc(dev); + mtx_unlock(&sc->mtx); +} diff --git a/sys/dev/qcom_gcc/qcom_gcc_ipq4018.h b/sys/dev/qcom_gcc/qcom_gcc_ipq4018.h new file mode 100644 index 000000000000..2b5bfa453766 --- /dev/null +++ b/sys/dev/qcom_gcc/qcom_gcc_ipq4018.h @@ -0,0 +1,41 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2025 Adrian Chadd + * + * 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. + */ + +#ifndef __QCOM_GCC_IPQ4018_H__ +#define __QCOM_GCC_IPQ4018_H__ + +/* + * reset block + */ +extern void qcom_gcc_ipq4018_hwreset_init(struct qcom_gcc_softc *); + +/* + * clock block + */ +extern void qcom_gcc_ipq4018_clock_setup(struct qcom_gcc_softc *); + +#endif /* __QCOM_GCC_IPQ4018_H__ */ diff --git a/sys/dev/qcom_gcc/qcom_gcc_ipq4018_clock.c b/sys/dev/qcom_gcc/qcom_gcc_ipq4018_clock.c index 6441cf3e6ae5..3135c3cd685e 100644 --- a/sys/dev/qcom_gcc/qcom_gcc_ipq4018_clock.c +++ b/sys/dev/qcom_gcc/qcom_gcc_ipq4018_clock.c @@ -59,8 +59,8 @@ #include #include -#include "qcom_gcc_ipq4018_var.h" - +#include "qcom_gcc_var.h" +#include "qcom_gcc_ipq4018.h" /* Fixed rate clock. */ #define F_RATE(_id, cname, _freq) \ @@ -624,7 +624,7 @@ static struct qcom_clk_branch2_def branch2_tbl[] = { }; static void -qcom_gcc_ipq4018_clock_init_fepll(struct qcom_gcc_ipq4018_softc *sc) +qcom_gcc_ipq4018_clock_init_fepll(struct qcom_gcc_softc *sc) { int i, rv; @@ -636,7 +636,7 @@ qcom_gcc_ipq4018_clock_init_fepll(struct qcom_gcc_ipq4018_softc *sc) } static void -qcom_gcc_ipq4018_clock_init_fdiv(struct qcom_gcc_ipq4018_softc *sc) +qcom_gcc_ipq4018_clock_init_fdiv(struct qcom_gcc_softc *sc) { int i, rv; @@ -648,7 +648,7 @@ qcom_gcc_ipq4018_clock_init_fdiv(struct qcom_gcc_ipq4018_softc *sc) } static void -qcom_gcc_ipq4018_clock_init_apssdiv(struct qcom_gcc_ipq4018_softc *sc) +qcom_gcc_ipq4018_clock_init_apssdiv(struct qcom_gcc_softc *sc) { int i, rv; @@ -660,7 +660,7 @@ qcom_gcc_ipq4018_clock_init_apssdiv(struct qcom_gcc_ipq4018_softc *sc) } static void -qcom_gcc_ipq4018_clock_init_rcg2(struct qcom_gcc_ipq4018_softc *sc) +qcom_gcc_ipq4018_clock_init_rcg2(struct qcom_gcc_softc *sc) { int i, rv; @@ -672,7 +672,7 @@ qcom_gcc_ipq4018_clock_init_rcg2(struct qcom_gcc_ipq4018_softc *sc) } static void -qcom_gcc_ipq4018_clock_init_branch2(struct qcom_gcc_ipq4018_softc *sc) +qcom_gcc_ipq4018_clock_init_branch2(struct qcom_gcc_softc *sc) { int i, rv; @@ -684,7 +684,7 @@ qcom_gcc_ipq4018_clock_init_branch2(struct qcom_gcc_ipq4018_softc *sc) } static void -qcom_gcc_ipq4018_clock_init_ro_div(struct qcom_gcc_ipq4018_softc *sc) +qcom_gcc_ipq4018_clock_init_ro_div(struct qcom_gcc_softc *sc) { int i, rv; @@ -695,43 +695,8 @@ qcom_gcc_ipq4018_clock_init_ro_div(struct qcom_gcc_ipq4018_softc *sc) } } -int -qcom_gcc_ipq4018_clock_read(device_t dev, bus_addr_t addr, uint32_t *val) -{ - struct qcom_gcc_ipq4018_softc *sc; - - sc = device_get_softc(dev); - *val = bus_read_4(sc->reg, addr); - return (0); -} - -int -qcom_gcc_ipq4018_clock_write(device_t dev, bus_addr_t addr, uint32_t val) -{ - struct qcom_gcc_ipq4018_softc *sc; - - sc = device_get_softc(dev); - bus_write_4(sc->reg, addr, val); - return (0); -} - -int -qcom_gcc_ipq4018_clock_modify(device_t dev, bus_addr_t addr, - uint32_t clear_mask, uint32_t set_mask) -{ - struct qcom_gcc_ipq4018_softc *sc; - uint32_t reg; - - sc = device_get_softc(dev); - reg = bus_read_4(sc->reg, addr); - reg &= clear_mask; - reg |= set_mask; - bus_write_4(sc->reg, addr, reg); - return (0); -} - void -qcom_gcc_ipq4018_clock_setup(struct qcom_gcc_ipq4018_softc *sc) +qcom_gcc_ipq4018_clock_setup(struct qcom_gcc_softc *sc) { sc->clkdom = clkdom_create(sc->dev); @@ -747,21 +712,3 @@ qcom_gcc_ipq4018_clock_setup(struct qcom_gcc_ipq4018_softc *sc) /* Finalise clock tree */ clkdom_finit(sc->clkdom); } - -void -qcom_gcc_ipq4018_clock_lock(device_t dev) -{ - struct qcom_gcc_ipq4018_softc *sc; - - sc = device_get_softc(dev); - mtx_lock(&sc->mtx); -} - -void -qcom_gcc_ipq4018_clock_unlock(device_t dev) -{ - struct qcom_gcc_ipq4018_softc *sc; - - sc = device_get_softc(dev); - mtx_unlock(&sc->mtx); -} diff --git a/sys/dev/qcom_gcc/qcom_gcc_ipq4018_reset.c b/sys/dev/qcom_gcc/qcom_gcc_ipq4018_reset.c index ae2236d7fca7..f99d1d9ad9f1 100644 --- a/sys/dev/qcom_gcc/qcom_gcc_ipq4018_reset.c +++ b/sys/dev/qcom_gcc/qcom_gcc_ipq4018_reset.c @@ -50,10 +50,10 @@ #include -#include "qcom_gcc_ipq4018_var.h" +#include "qcom_gcc_var.h" +#include "qcom_gcc_ipq4018.h" - -static const struct qcom_gcc_ipq4018_reset_entry gcc_ipq4019_reset_list[] = { +static const struct qcom_gcc_reset_entry gcc_ipq4019_reset_list[] = { [WIFI0_CPU_INIT_RESET] = { 0x1f008, 5 }, [WIFI0_RADIO_SRIF_RESET] = { 0x1f008, 4 }, [WIFI0_RADIO_WARM_RESET] = { 0x1f008, 3 }, @@ -127,10 +127,10 @@ static const struct qcom_gcc_ipq4018_reset_entry gcc_ipq4019_reset_list[] = { [GCC_SPDM_BCR] = {0x25000, 0}, }; -int +static int qcom_gcc_ipq4018_hwreset_assert(device_t dev, intptr_t id, bool reset) { - struct qcom_gcc_ipq4018_softc *sc; + struct qcom_gcc_softc *sc; uint32_t reg; sc = device_get_softc(dev); @@ -151,10 +151,10 @@ qcom_gcc_ipq4018_hwreset_assert(device_t dev, intptr_t id, bool reset) return (0); } -int +static int qcom_gcc_ipq4018_hwreset_is_asserted(device_t dev, intptr_t id, bool *reset) { - struct qcom_gcc_ipq4018_softc *sc; + struct qcom_gcc_softc *sc; uint32_t reg; sc = device_get_softc(dev); @@ -175,3 +175,9 @@ qcom_gcc_ipq4018_hwreset_is_asserted(device_t dev, intptr_t id, bool *reset) return (0); } +void +qcom_gcc_ipq4018_hwreset_init(struct qcom_gcc_softc *sc) +{ + sc->sc_cb.hw_reset_assert = qcom_gcc_ipq4018_hwreset_assert; + sc->sc_cb.hw_reset_is_asserted = qcom_gcc_ipq4018_hwreset_is_asserted; +} diff --git a/sys/dev/qcom_gcc/qcom_gcc_ipq4018.c b/sys/dev/qcom_gcc/qcom_gcc_main.c similarity index 51% rename from sys/dev/qcom_gcc/qcom_gcc_ipq4018.c rename to sys/dev/qcom_gcc/qcom_gcc_main.c index 5980d8ebe893..3950bd985feb 100644 --- a/sys/dev/qcom_gcc/qcom_gcc_ipq4018.c +++ b/sys/dev/qcom_gcc/qcom_gcc_main.c @@ -1,7 +1,7 @@ /*- * SPDX-License-Identifier: BSD-2-Clause * - * Copyright (c) 2021, Adrian Chadd + * Copyright (c) 2025, Adrian Chadd * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -25,7 +25,7 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -/* Driver for Qualcomm IPQ4018 clock and reset device */ +/* Driver for Qualcomm clock/reset trees */ #include #include @@ -49,19 +49,29 @@ #include "clkdev_if.h" #include "hwreset_if.h" -#include +#include "qcom_gcc_var.h" +#include "qcom_gcc_ipq4018.h" -#include "qcom_gcc_ipq4018_var.h" +static int qcom_gcc_modevent(module_t, int, void *); +static int qcom_gcc_probe(device_t); +static int qcom_gcc_attach(device_t); +static int qcom_gcc_detach(device_t); -static int qcom_gcc_ipq4018_modevent(module_t, int, void *); +struct qcom_gcc_chipset_list_entry { + const char *ofw; + const char *desc; + qcom_gcc_chipset_t chipset; +}; -static int qcom_gcc_ipq4018_probe(device_t); -static int qcom_gcc_ipq4018_attach(device_t); -static int qcom_gcc_ipq4018_detach(device_t); +static struct qcom_gcc_chipset_list_entry qcom_gcc_chipset_list[] = { + { "qcom,gcc-ipq4019", "Qualcomm IPQ4018 Clock/Reset Controller", + QCOM_GCC_CHIPSET_IPQ4018 }, + { NULL, NULL, 0 }, +}; static int -qcom_gcc_ipq4018_modevent(module_t mod, int type, void *unused) +qcom_gcc_modevent(module_t mod, int type, void *unused) { int error; @@ -81,37 +91,64 @@ qcom_gcc_ipq4018_modevent(module_t mod, int type, void *unused) } static int -qcom_gcc_ipq4018_probe(device_t dev) +qcom_gcc_probe(device_t dev) { + struct qcom_gcc_softc *sc; + int i; + + sc = device_get_softc(dev); + if (! ofw_bus_status_okay(dev)) return (ENXIO); - if (ofw_bus_is_compatible(dev, "qcom,gcc-ipq4019") == 0) - return (ENXIO); + for (i = 0; qcom_gcc_chipset_list[i].ofw != NULL; i++) { + const struct qcom_gcc_chipset_list_entry *ce; - return (0); + ce = &qcom_gcc_chipset_list[i]; + if (ofw_bus_is_compatible(dev, ce->ofw) == 0) + continue; + device_set_desc(dev, ce->desc); + sc->sc_chipset = ce->chipset; + return (0); + } + + return (ENXIO); } static int -qcom_gcc_ipq4018_attach(device_t dev) +qcom_gcc_attach(device_t dev) { - struct qcom_gcc_ipq4018_softc *sc; + struct qcom_gcc_softc *sc; + size_t mem_sz; sc = device_get_softc(dev); /* Found a compatible device! */ sc->dev = dev; + /* + * Setup the hardware callbacks, before any further initialisation + * is performed. + */ + switch (sc->sc_chipset) { + case QCOM_GCC_CHIPSET_IPQ4018: + qcom_gcc_ipq4018_hwreset_init(sc); + mem_sz = 0x60000; + break; + case QCOM_GCC_CHIPSET_NONE: + device_printf(dev, "Invalid chipset (%d)\n", sc->sc_chipset); + return (ENXIO); + } + sc->reg_rid = 0; + sc->reg = bus_alloc_resource_anywhere(dev, SYS_RES_MEMORY, - &sc->reg_rid, 0x60000, RF_ACTIVE); + &sc->reg_rid, mem_sz, RF_ACTIVE); if (sc->reg == NULL) { device_printf(dev, "Couldn't allocate memory resource!\n"); return (ENXIO); } - device_set_desc(dev, "Qualcomm IPQ4018 Clock/Reset Controller"); - mtx_init(&sc->mtx, device_get_nameunit(dev), NULL, MTX_DEF); /* @@ -122,15 +159,22 @@ qcom_gcc_ipq4018_attach(device_t dev) /* * Setup and register as a clock provider. */ - qcom_gcc_ipq4018_clock_setup(sc); + switch (sc->sc_chipset) { + case QCOM_GCC_CHIPSET_IPQ4018: + qcom_gcc_ipq4018_clock_setup(sc); + break; + case QCOM_GCC_CHIPSET_NONE: + device_printf(dev, "Invalid chipset (%d)\n", sc->sc_chipset); + return (ENXIO); + } return (0); } static int -qcom_gcc_ipq4018_detach(device_t dev) +qcom_gcc_detach(device_t dev) { - struct qcom_gcc_ipq4018_softc *sc; + struct qcom_gcc_softc *sc; sc = device_get_softc(dev); @@ -145,34 +189,34 @@ qcom_gcc_ipq4018_detach(device_t dev) return (0); } -static device_method_t qcom_gcc_ipq4018_methods[] = { +static device_method_t qcom_gcc_methods[] = { /* Device methods. */ - DEVMETHOD(device_probe, qcom_gcc_ipq4018_probe), - DEVMETHOD(device_attach, qcom_gcc_ipq4018_attach), - DEVMETHOD(device_detach, qcom_gcc_ipq4018_detach), + DEVMETHOD(device_probe, qcom_gcc_probe), + DEVMETHOD(device_attach, qcom_gcc_attach), + DEVMETHOD(device_detach, qcom_gcc_detach), /* Reset interface */ - DEVMETHOD(hwreset_assert, qcom_gcc_ipq4018_hwreset_assert), - DEVMETHOD(hwreset_is_asserted, qcom_gcc_ipq4018_hwreset_is_asserted), + DEVMETHOD(hwreset_assert, qcom_gcc_hwreset_assert), + DEVMETHOD(hwreset_is_asserted, qcom_gcc_hwreset_is_asserted), /* Clock interface */ - DEVMETHOD(clkdev_read_4, qcom_gcc_ipq4018_clock_read), - DEVMETHOD(clkdev_write_4, qcom_gcc_ipq4018_clock_write), - DEVMETHOD(clkdev_modify_4, qcom_gcc_ipq4018_clock_modify), - DEVMETHOD(clkdev_device_lock, qcom_gcc_ipq4018_clock_lock), - DEVMETHOD(clkdev_device_unlock, qcom_gcc_ipq4018_clock_unlock), + DEVMETHOD(clkdev_read_4, qcom_gcc_clock_read), + DEVMETHOD(clkdev_write_4, qcom_gcc_clock_write), + DEVMETHOD(clkdev_modify_4, qcom_gcc_clock_modify), + DEVMETHOD(clkdev_device_lock, qcom_gcc_clock_lock), + DEVMETHOD(clkdev_device_unlock, qcom_gcc_clock_unlock), DEVMETHOD_END }; -static driver_t qcom_gcc_ipq4018_driver = { +static driver_t qcom_gcc_driver = { "qcom_gcc", - qcom_gcc_ipq4018_methods, - sizeof(struct qcom_gcc_ipq4018_softc) + qcom_gcc_methods, + sizeof(struct qcom_gcc_softc) }; -EARLY_DRIVER_MODULE(qcom_gcc_ipq4018, simplebus, qcom_gcc_ipq4018_driver, - qcom_gcc_ipq4018_modevent, NULL, BUS_PASS_CPU + BUS_PASS_ORDER_EARLY); -EARLY_DRIVER_MODULE(qcom_gcc_ipq4018, ofwbus, qcom_gcc_ipq4018_driver, - qcom_gcc_ipq4018_modevent, NULL, BUS_PASS_CPU + BUS_PASS_ORDER_EARLY); -MODULE_VERSION(qcom_gcc_ipq4018, 1); +EARLY_DRIVER_MODULE(qcom_gcc, simplebus, qcom_gcc_driver, + qcom_gcc_modevent, NULL, BUS_PASS_CPU + BUS_PASS_ORDER_EARLY); +EARLY_DRIVER_MODULE(qcom_gcc, ofwbus, qcom_gcc_driver, + qcom_gcc_modevent, NULL, BUS_PASS_CPU + BUS_PASS_ORDER_EARLY); +MODULE_VERSION(qcom_gcc, 1); diff --git a/sys/dev/qcom_gcc/qcom_gcc_reset.c b/sys/dev/qcom_gcc/qcom_gcc_reset.c new file mode 100644 index 000000000000..05ea817fbcc4 --- /dev/null +++ b/sys/dev/qcom_gcc/qcom_gcc_reset.c @@ -0,0 +1,64 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2021, Adrian Chadd + * + * 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 unmodified, 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 ``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. + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include +#include + +#include + +#include "hwreset_if.h" + +#include "qcom_gcc_var.h" + +int +qcom_gcc_hwreset_assert(device_t dev, intptr_t id, bool reset) +{ + struct qcom_gcc_softc *sc = device_get_softc(dev); + return (sc->sc_cb.hw_reset_assert(dev, id, reset)); +} + +int +qcom_gcc_hwreset_is_asserted(device_t dev, intptr_t id, bool *reset) +{ + struct qcom_gcc_softc *sc = device_get_softc(dev); + + return (sc->sc_cb.hw_reset_is_asserted(dev, id, reset)); +} diff --git a/sys/dev/qcom_gcc/qcom_gcc_ipq4018_var.h b/sys/dev/qcom_gcc/qcom_gcc_var.h similarity index 63% rename from sys/dev/qcom_gcc/qcom_gcc_ipq4018_var.h rename to sys/dev/qcom_gcc/qcom_gcc_var.h index b3c54f1a7f73..2d4e969e1134 100644 --- a/sys/dev/qcom_gcc/qcom_gcc_ipq4018_var.h +++ b/sys/dev/qcom_gcc/qcom_gcc_var.h @@ -25,41 +25,56 @@ * SUCH DAMAGE. */ -#ifndef __QCOM_GCC_IPQ4018_VAR_H__ -#define __QCOM_GCC_IPQ4018_VAR_H__ +#ifndef __QCOM_GCC_VAR_H__ +#define __QCOM_GCC_VAR_H__ -struct qcom_gcc_ipq4018_reset_entry { +typedef enum { + QCOM_GCC_CHIPSET_NONE = 0, + QCOM_GCC_CHIPSET_IPQ4018 = 1, +} qcom_gcc_chipset_t; + +struct qcom_gcc_reset_entry { uint32_t reg; uint32_t bit; }; -struct qcom_gcc_ipq4018_softc { +struct qcom_gcc_hw_callbacks { + /* Reset block */ + int (*hw_reset_assert)(device_t, intptr_t, bool); + int (*hw_reset_is_asserted)(device_t, intptr_t, bool *); + + /* Clock block */ +}; + +struct qcom_gcc_softc { device_t dev; int reg_rid; struct resource *reg; struct mtx mtx; struct clkdom *clkdom; + qcom_gcc_chipset_t sc_chipset; + struct qcom_gcc_hw_callbacks sc_cb; }; /* * reset block */ -extern int qcom_gcc_ipq4018_hwreset_assert(device_t dev, intptr_t id, +extern int qcom_gcc_hwreset_assert(device_t dev, intptr_t id, bool reset); -extern int qcom_gcc_ipq4018_hwreset_is_asserted(device_t dev, intptr_t id, +extern int qcom_gcc_hwreset_is_asserted(device_t dev, intptr_t id, bool *reset); /* * clock block */ -extern int qcom_gcc_ipq4018_clock_read(device_t dev, bus_addr_t addr, +extern int qcom_gcc_clock_read(device_t dev, bus_addr_t addr, uint32_t *val); -extern int qcom_gcc_ipq4018_clock_write(device_t dev, bus_addr_t addr, +extern int qcom_gcc_clock_write(device_t dev, bus_addr_t addr, uint32_t val); -extern int qcom_gcc_ipq4018_clock_modify(device_t dev, bus_addr_t addr, +extern int qcom_gcc_clock_modify(device_t dev, bus_addr_t addr, uint32_t clear_mask, uint32_t set_mask); -extern void qcom_gcc_ipq4018_clock_setup(struct qcom_gcc_ipq4018_softc *sc); -extern void qcom_gcc_ipq4018_clock_lock(device_t dev); -extern void qcom_gcc_ipq4018_clock_unlock(device_t dev); +extern void qcom_gcc_clock_setup(struct qcom_gcc_softc *sc); +extern void qcom_gcc_clock_lock(device_t dev); +extern void qcom_gcc_clock_unlock(device_t dev); -#endif /* __QCOM_GCC_IPQ4018_VAR_H__ */ +#endif /* __QCOM_GCC_VAR_H__ */ From nobody Tue Apr 8 03:47:27 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWsTq6gJ0z5sgPT; Tue, 08 Apr 2025 03:47: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWsTq4plrz45V8; Tue, 08 Apr 2025 03:47:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744084047; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4xOldjdueyI00o6/j79lWB4DTTRDpKOTzFQJ+kK5G/Y=; b=Og7b3+FzJ8EUQA92PyikQriAkqvky5V3eW9sZ2e14CaCS5lFd7e937wP1vOc1Xg3d6/SEG zCbCQOW1ABRUu3INsCrclvWLNKTf94OVnfNXHh+ZrX/gs3JBf2ZTnlD+G8+rEBbFFCtzpf wTgy7pHoCDoocEhHs/7kAWevfjaQ+TRVXP0iwFUUpsL2DUI/wl0sve+WOCNcOU73KBlNKi hycSmzHh6S0VUkrQItT3v+rMR7syBYSErSgK4SVfSB7F4qgGtGXFBm+5s7YamguOI9o6U6 CsoTA8NnEcuqHK+lOfGvwLc/x3s9c/E/udjO3G2zO3J9DQwP26cu7qEnT3wMrw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744084047; a=rsa-sha256; cv=none; b=nh9PsDlb+zyREiaEjuwYX3YAv9/gNRebbpJ2pu1Ew1V5q+D/jQslYdFNN2cb9GAHfCl5Pa 8QfQE3dzHcexXH6jQTcrpmjucXh1beE0bMinHtWQRTStmhEWWfNHDpxTQydrVxN/Jfmt9r d7pEKzAF1RLqc9X9BKcBkONDx+VaKc/EDnJOEtH/cMGdVSSwfgQvkLxTMxpO0KEUAXPmaL oVE0B140JW7HXG0uJwKyRVs1g/OeztF/bTEQxkhFFtOIRerezTvZecvfcNmJ9FN6via4it kc5PrgXfoaNDcMOsXJA7eFTNI1jZD2acsArSPvrHwWPMkt0fNLwpuWPOLZTzSg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744084047; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4xOldjdueyI00o6/j79lWB4DTTRDpKOTzFQJ+kK5G/Y=; b=YzPRHEzOAOHWJMF+rJjGyfrNvdgokpFE9BwPc1H/oD3CXodLomx7rA7CcH90lSNLfEIkdU B/j0n/SGwGiUXJSyl23RLD2hewHNA/u0qC9UsaDLyJwgJ1zDntgdIQSzuVWFxGknedxAcG 1h0qvi661wHh0OcJn1ab8pWW2tbt7n37rk4aMqeXuFtGJFAjU3kftOIbiu1BOP0GV7ra1S 4SYmL8n0vp9+5VqiwsuZ9Z0pTrY7LxOnwIs/IPRSgmWSR2hkRwt4RffTCwFa8O4g9visEL NWFXDAyH9kmQb1GHsfADSQoyOkjkIkdAauegkTcucwOQQjfSa3zKI1gvFMBCyA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWsTq3qHszqx; Tue, 08 Apr 2025 03:47:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5383lRft016645; Tue, 8 Apr 2025 03:47:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5383lR0Y016641; Tue, 8 Apr 2025 03:47:27 GMT (envelope-from git) Date: Tue, 8 Apr 2025 03:47:27 GMT Message-Id: <202504080347.5383lR0Y016641@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: dc1d78b2c2d2 - main - qcom_dwc3: update naming to match the later device tree drops. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: dc1d78b2c2d293565017542006aeaed64a390196 Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=dc1d78b2c2d293565017542006aeaed64a390196 commit dc1d78b2c2d293565017542006aeaed64a390196 Author: Adrian Chadd AuthorDate: 2025-04-05 20:30:13 +0000 Commit: Adrian Chadd CommitDate: 2025-04-08 03:45:07 +0000 qcom_dwc3: update naming to match the later device tree drops. The device tree renamed master -> core, so rename the fields here. Locally tested: * IPQ4019, ASUS RT-AC58U, USB works (enough for umass!) Differential Revision: https://reviews.freebsd.org/D49684 Reviewed by: manu --- sys/dev/qcom_dwc3/qcom_dwc3.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sys/dev/qcom_dwc3/qcom_dwc3.c b/sys/dev/qcom_dwc3/qcom_dwc3.c index 5c5a47989441..7352d658d326 100644 --- a/sys/dev/qcom_dwc3/qcom_dwc3.c +++ b/sys/dev/qcom_dwc3/qcom_dwc3.c @@ -58,7 +58,7 @@ static struct ofw_compat_data compat_data[] = { struct qcom_dwc3_softc { struct simplebus_softc sc; device_t dev; - clk_t clk_master; + clk_t clk_core; clk_t clk_sleep; clk_t clk_mock_utmi; int type; @@ -98,8 +98,8 @@ qcom_dwc3_attach(device_t dev) sc->type = ofw_bus_search_compatible(dev, compat_data)->ocd_data; /* Mandatory clocks */ - if (clk_get_by_ofw_name(dev, 0, "master", &sc->clk_master) != 0) { - device_printf(dev, "Cannot get master clock\n"); + if (clk_get_by_ofw_name(dev, 0, "core", &sc->clk_core) != 0) { + device_printf(dev, "Cannot get core clock\n"); return (ENXIO); } @@ -121,10 +121,10 @@ qcom_dwc3_attach(device_t dev) /* * Now, iterate over the clocks and enable them. */ - err = clk_enable(sc->clk_master); + err = clk_enable(sc->clk_core); if (err != 0) { device_printf(dev, "Could not enable clock %s\n", - clk_get_name(sc->clk_master)); + clk_get_name(sc->clk_core)); return (ENXIO); } err = clk_enable(sc->clk_sleep); From nobody Tue Apr 8 03:47:28 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWsTs0FtPz5sfyQ; Tue, 08 Apr 2025 03:47: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWsTr59lCz45cr; Tue, 08 Apr 2025 03:47:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744084048; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jksxbS5S5o3PqrauaGOggnCZN8V245TPGkRgxK3TjdU=; b=pFNv9b8FMKY8nNwlo5fpFyhx7aNIshcuV0kNQig3deTEq+sa2yEE/pTRiYxW2ZASV+JwJZ DqkX/eJF2QW0pPku6kCpYFJKjexqxn/kFC0SudIDbltKcPZoFnkoSf7KoEm0GwuoSS9GIV dsQ72/CmHbwY0fQ707wyM/YAr1tSJFB0+GGqFnmHx6DdyZxpWyIMbIlsCZgrKX8vOvQjam ofylz8zB0ioLxksRcUO1R+VnqB9OhSKU014rij5QxnYnZcU/9UbH6D6MNgf5/WlZ9tOevJ aRXpzwo8udSM0f3ICHzlp8lTDbTQ6l1ooxe0OA8xtSMIOeaTootCuF9reFMjeQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744084048; a=rsa-sha256; cv=none; b=GpHXUhyQtz2oRE/WQVBG1zRhIoeT/JduOHOIrh6ANLPeTOnkMQKHRRXSedFOKn2Wscahez 53DZc3hu3uGWQzFXYMnAgAHV91WANhCKIR6YpIqLpdyYzbHJJvQ3eh1voP9Su81goxDzZL dtKTH61OvamsasSVe80jKCftM58JdS6NleMUvWKZkieq8HdzjO0AoQUcYa+srFIUqKYaAq qi7M6O7L/UTkpyvJuqWvgBBQ1sbkdbZTWnikVoOrAEN2DH7k98OaWuqIqDZv0pJXDxotcb 3m55+GJPieAugKIAQKE6GnWRIaqRqQ6uYBnnk+VzGiQr2RQmCThEyCt2XD4FOg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744084048; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jksxbS5S5o3PqrauaGOggnCZN8V245TPGkRgxK3TjdU=; b=Lg5O/XNQGhL8lWYIOIhr019u5/d6f1feOvlSYRLpxDV/qhqH8al47QPvFnaqiTqkmgg1Sl 4wo0+XeCoF91IrBWCatatAIAdzK6myiO0SDaHUZh1+pgxuurBUlRDcEqb3XgAFwYDVxZ2D jDG0N+HGRXz3xUfuXQayIufh/qviTcIPHBEb0TwwecpFiM8QGbn/sUcpQmsJWepU0svWCE +gT/FnoTUI30AKi51E0Z9d0+fK+738Z6Ia479/s7BjdT0im8tkzogsCwVRMvINLWKuc/Jb dakXaf+GPo3khT+W05LJGpx9/6kwp2BDE36FfKq9ZiLNZHvdYRKmeXUeldtCnQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWsTr4md3z18d; Tue, 08 Apr 2025 03:47:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5383lS0n016679; Tue, 8 Apr 2025 03:47:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5383lSfr016676; Tue, 8 Apr 2025 03:47:28 GMT (envelope-from git) Date: Tue, 8 Apr 2025 03:47:28 GMT Message-Id: <202504080347.5383lSfr016676@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: 203f533b33b6 - main - dts: fix RT-AC58U to match the updated device tree name/alias changes. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 203f533b33b62523e2ccc42757786a621c1fbb21 Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=203f533b33b62523e2ccc42757786a621c1fbb21 commit 203f533b33b62523e2ccc42757786a621c1fbb21 Author: Adrian Chadd AuthorDate: 2025-04-05 20:32:02 +0000 Commit: Adrian Chadd CommitDate: 2025-04-08 03:45:40 +0000 dts: fix RT-AC58U to match the updated device tree name/alias changes. A variety of subtle changes occured with the upstream syncs over time. This allows the RT-AC58U to boot and have working USB3. Locally tested: * Asus RT-AC58U, USB3 (umass) Differential Revision: https://reviews.freebsd.org/D49685 Reviewed by: manu --- sys/dts/arm/qcom-ipq4018-rt-ac58u.dts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dts/arm/qcom-ipq4018-rt-ac58u.dts b/sys/dts/arm/qcom-ipq4018-rt-ac58u.dts index baaa4c2e9d5f..9000bb95155e 100644 --- a/sys/dts/arm/qcom-ipq4018-rt-ac58u.dts +++ b/sys/dts/arm/qcom-ipq4018-rt-ac58u.dts @@ -67,10 +67,10 @@ qcom,wifi_noc_memtype_m0_m2 = ; }; - usb3@8af8800 { + usb@8af8800 { status = "okay"; - dwc3@8a00000 { + usb@8a00000 { #address-cells = <1>; #size-cells = <0>; From nobody Tue Apr 8 03:47:29 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWsTt1BGHz5sg1p; Tue, 08 Apr 2025 03:47: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWsTs6dL4z45gQ; Tue, 08 Apr 2025 03:47:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744084049; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bh36zhuhej1UxkMPSbBur/YxYJ3iHzKh6wKAMhpO2uc=; b=YPMue8n7zcNY6RUG6H412IXaAc/laYqpx9fstNbiUhjnoc7QNch6XleBfj30ymA1E8+Z6C s62sulIVbYfcxfZhqR5Ie7ukiC1iEAE7dM4W0Tlq7EFI9E6zsGfg0B9pB1hmMUlDD64bl/ j5uvPgOLshEN1fL7lLRqOxJ4tn7EVPmVtTC/IWvqY5Rz3zge9dBJhbp/la3P0im1BtZqOh FLTfSjv1bLsDd+S/fIvkGi5LqnDGp3cqfhOr1ZKG/mvpLddkFmDzUvZbfMO6jO037O8gbV yqLUdvauotR7N9c7A141kAa4n4zVjyJnw/rbVRHg6Mp8c2gK5IKYbqKPTNvyAQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744084049; a=rsa-sha256; cv=none; b=Zs1YlG7yvzOlkx4LwG8+AKtF0LBS6dnlal6zna8mdCkn2cz39JPwbSP1Gjm4dOW3fv/8zT M8hcDq7ArV8cHkCgo9QWHtv+tKTjnUfo3anrpxZeneRYSv9pBZkfrPp6HIF64m1LspeD2I f0TCwVlHU4ZiO0E1PDcXMBveUN/wbZt02dTq1twA1E76MDl47nT2zEEDvgam0Kra16KsxH sSUOd8O+unX2K7zvwLqIx3zEHAcSiLSs3FfvLoEFOGXrNgB8tU/2hq9CBCTbsAu3mGv4q1 4VLn9Pnt14Uet8TsBI4NfJEcWTCtoXblV8r3+QsSNw9m8zFuUpSxtwZgitB3Mg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744084049; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bh36zhuhej1UxkMPSbBur/YxYJ3iHzKh6wKAMhpO2uc=; b=iVRoZnI1ncRvQ9Pw/HOhWORCSZ2kuM1wfa/3rIeG7uxrALYT3Gf0x0uwPbv4Mf+Kl30jik hLoDstTxh3rR+iapcb13AQuDCQJrH3hGrJusw6pcwbECC94lB+FYs49gOX8qXU6pWuBUIT M79lZZB+IDdiM0+Ecct27g8nAltSduuwzycxg5YmSAmLlt5m4Leh8f3NEUmGTimSQ9l17Z dEl5kMpxoUF7ZLSK4CHY3BYucY8IIVJFrm/EVOVm/2bZj9bbMb5z/Pjmj88hjOcKzYmTzQ lB1t1CbDr5hRn4QiB8tC1ZpHIwPoR9L9KnbPVKnjwqVd7ogRv1146Aju1H1w1w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWsTs5jWnzqy; Tue, 08 Apr 2025 03:47:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5383lTHO016712; Tue, 8 Apr 2025 03:47:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5383lT3D016709; Tue, 8 Apr 2025 03:47:29 GMT (envelope-from git) Date: Tue, 8 Apr 2025 03:47:29 GMT Message-Id: <202504080347.5383lT3D016709@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: 7d2eef229f1e - main - qcom_gcc: migrate to use sleep_clk directly List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7d2eef229f1e77b1cd68b98c002e913234ffc350 Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=7d2eef229f1e77b1cd68b98c002e913234ffc350 commit 7d2eef229f1e77b1cd68b98c002e913234ffc350 Author: Adrian Chadd AuthorDate: 2025-04-05 20:33:28 +0000 Commit: Adrian Chadd CommitDate: 2025-04-08 03:46:02 +0000 qcom_gcc: migrate to use sleep_clk directly gcc_sleep_clk_src does not exist, just use sleep_clk directly. I believe this is what feeds them anyway! This node isn't in the Linux clock driver (drivers/clk/qcom) ipq401x clock tree, but there are sleep_clk_src nodes in the tree in ipq50xx, ipq54xx, ipq60xx, ipq8xxxx, ipq9xxxx, msm8xxx, etc. Differential Revision: https://reviews.freebsd.org/D49686 --- sys/dev/qcom_gcc/qcom_gcc_ipq4018_clock.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/sys/dev/qcom_gcc/qcom_gcc_ipq4018_clock.c b/sys/dev/qcom_gcc/qcom_gcc_ipq4018_clock.c index 3135c3cd685e..ce67b2898efb 100644 --- a/sys/dev/qcom_gcc/qcom_gcc_ipq4018_clock.c +++ b/sys/dev/qcom_gcc/qcom_gcc_ipq4018_clock.c @@ -578,7 +578,7 @@ static struct qcom_clk_branch2_def branch2_tbl[] = { 0x1e00c, 0, 0, 0, 0x1e00c, QCOM_CLK_BRANCH2_BRANCH_HALT, false, 0), F_BRANCH2(GCC_USB2_SLEEP_CLK, "gcc_usb2_sleep_clk", - "gcc_sleep_clk_src", 0x1e010, 0, 0, 0, 0x1e010, + "sleep_clk", 0x1e010, 0, 0, 0, 0x1e010, QCOM_CLK_BRANCH2_BRANCH_HALT, false, 0), F_BRANCH2(GCC_USB2_MOCK_UTMI_CLK, "gcc_usb2_mock_utmi_clk", @@ -588,7 +588,7 @@ static struct qcom_clk_branch2_def branch2_tbl[] = { F_BRANCH2(GCC_USB3_MASTER_CLK, "gcc_usb3_master_clk", "fepll125", 0x1e028, 0, 0, 0, 0x1e028, QCOM_CLK_BRANCH2_BRANCH_HALT, false, 0), - F_BRANCH2(GCC_USB3_SLEEP_CLK, "gcc_usb3_sleep_clk", "gcc_sleep_clk_src", + F_BRANCH2(GCC_USB3_SLEEP_CLK, "gcc_usb3_sleep_clk", "sleep_clk", 0x1e02c, 0, 0, 0, 0x1e02c, QCOM_CLK_BRANCH2_BRANCH_HALT, false, 0), F_BRANCH2(GCC_USB3_MOCK_UTMI_CLK, "gcc_usb3_mock_utmi_clk", @@ -602,7 +602,12 @@ static struct qcom_clk_branch2_def branch2_tbl[] = { F_BRANCH2(GCC_WCSS2G_REF_CLK, "gcc_wcss2g_ref_clk", "xo", 0x1f00c, 0, 0, 0, 0x1f00c, QCOM_CLK_BRANCH2_BRANCH_HALT, false, QCOM_CLK_BRANCH2_FLAGS_SET_RATE_PARENT), - F_BRANCH2(GCC_WCSS2G_RTC_CLK, "gcc_wcss2g_rtc_clk", "gcc_sleep_clk_src", + /* + * TODO: figure out whether gcc_sleep_clk_src -> sleep_clk is right; + * will need to go consult the openwrt ipq4018 device tree / code + * again! + */ + F_BRANCH2(GCC_WCSS2G_RTC_CLK, "gcc_wcss2g_rtc_clk", "sleep_clk", 0x1f010, 0, 0, 0, 0x1f010, QCOM_CLK_BRANCH2_BRANCH_HALT, false, 0), @@ -613,7 +618,7 @@ static struct qcom_clk_branch2_def branch2_tbl[] = { F_BRANCH2(GCC_WCSS5G_REF_CLK, "gcc_wcss5g_ref_clk", "xo", 0x1f00c, 0, 0, 0, 0x2000c, QCOM_CLK_BRANCH2_BRANCH_HALT, false, QCOM_CLK_BRANCH2_FLAGS_SET_RATE_PARENT), - F_BRANCH2(GCC_WCSS5G_RTC_CLK, "gcc_wcss5g_rtc_clk", "gcc_sleep_clk_src", + F_BRANCH2(GCC_WCSS5G_RTC_CLK, "gcc_wcss5g_rtc_clk", "sleep_clk", 0x1f010, 0, 0, 0, 0x20010, QCOM_CLK_BRANCH2_BRANCH_HALT, false, 0), From nobody Tue Apr 8 03:47:30 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWsTv4GxCz5sg6W; Tue, 08 Apr 2025 03:47: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWsTv09yXz45d0; Tue, 08 Apr 2025 03:47:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744084051; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vY9nz7i3uVF7eTDn9Adbv21Lj+njdPXMfCKiudsu+vE=; b=gZAs+nkfNz7d9VHGI7dihKgLFKJ1SQDPmabHqf2Q/+psH8biFiOSLA8x41Q2mNkdZ0i/0B EEBdzbdRC9Z0FXjjzWROs0wbwzDrNLzl7LJ369DviQIXUPJo2bANFztggk/kdvd5iIGfu7 TROfSJR3Yubtgs8YUnPTnq/ZMip4K2Ugf4TYcwz8yHFJ9+2jfSaDQPwzLmWB7asgtH7hzM ZtDjJJo5inVsE5XZmqqwlk69NXh1TtP139Z4dL4W662RRohQYs8IhtAP87ZDjkuPjiN0rY w2iZhQYhh2kQVZ9kAvw3hNTkYRePpby8LZPNNFfIFexGBgfvbaRtQbOfGlt2Cg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744084051; a=rsa-sha256; cv=none; b=n+DIXQUohgX9CcjD9+XPOwPb3KwF07Q94Cct0HUUXH16L+cs0dARl2i3FP7ZGgpuLkN1hK zQ4c+WhwzrGpVT4CJCUbT7OOd7rgQem1TB0NayIVwWo9767hr1mVSUafIen9lrvBPXEKit Xm3G6WkiOl5/boQ0J+mNsOCGYs5TcojRvyBd5Lf8WTk3gRZ/FZg509q6PO6hwiJAggfXvk eRypxl1G0IOXX6+4A/deBiApqfy8r/cmclJ+RNkoHP4nFRSY+d1/IH4cwHWP/NxnDxisf7 DYABzSYYgKaJYoAfeWnrQFhKFd935eq9PbRfKWgHSOYEKkCc07T/aoRU3y3g/g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744084051; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vY9nz7i3uVF7eTDn9Adbv21Lj+njdPXMfCKiudsu+vE=; b=AlFp0pdBsfn18G6IeBrUsPpMkpyfNRQlnkC+fXsNIOVJuVwYzykom55e9r99WafgEKlNqp om2wk0w28NDEDO8BAmtOT9VG/xZ6whgvCG04o7GHARTGvO1Arfd2ZyaOF95x8AQoPPmlH3 F9Z29JdwlpPEQxWePiP5oPlfXP/gAHgldD1n+MSsAsquZAoN/xxNLFRvADN6TysOo3r169 3sN7lIcN4a30Kk3vZqrcP+pf0HK8JuhqaYaSW940mpfZoNSbXol4AvSlPNL6XvKz88iNN6 3Lk/Xc1LdqThKsmFPUJXZTbtCU4uESh8CxqG9DxlkVjed1g9awjSEZYJsmC83Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWsTt6Lq8zSg; Tue, 08 Apr 2025 03:47:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5383lUOS016745; Tue, 8 Apr 2025 03:47:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5383lUWa016742; Tue, 8 Apr 2025 03:47:30 GMT (envelope-from git) Date: Tue, 8 Apr 2025 03:47:30 GMT Message-Id: <202504080347.5383lUWa016742@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: 489489b4bc55 - main - fdt: bump FDT_MEM_REGIONS to 64 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 489489b4bc556f9c025ac4893ac79c2069c2cc2d Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=489489b4bc556f9c025ac4893ac79c2069c2cc2d commit 489489b4bc556f9c025ac4893ac79c2069c2cc2d Author: Adrian Chadd AuthorDate: 2025-04-06 20:38:53 +0000 Commit: Adrian Chadd CommitDate: 2025-04-08 03:46:21 +0000 fdt: bump FDT_MEM_REGIONS to 64 The Snapdragon X1E / Lenovo T14s device tree has 47 reserved memory regions. The reserved region parsing doesn't boundary check and will just end up array bounds smashing, which leads to a reboot before any console IO is written. Differential Revision: https://reviews.freebsd.org/D49689 Reviewed by: manu, phk --- sys/dev/fdt/fdt_common.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/fdt/fdt_common.h b/sys/dev/fdt/fdt_common.h index de0bee5bd003..d19dc5c359a7 100644 --- a/sys/dev/fdt/fdt_common.h +++ b/sys/dev/fdt/fdt_common.h @@ -36,7 +36,7 @@ #include #include -#define FDT_MEM_REGIONS 16 +#define FDT_MEM_REGIONS 64 #define DI_MAX_INTR_NUM 32 From nobody Tue Apr 8 03:47:33 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWsTx4Zcjz5sgMg; Tue, 08 Apr 2025 03: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWsTx1zpZz45gy; Tue, 08 Apr 2025 03: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=1744084053; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Cwz65nrx7DcIftFv7AUepJgoPvtTixW7tOZywGQaTtY=; b=GOJbUiIx9QDz+XjXpWVQ/feP0gr9LMl6gMPIy+If5IE7utP4YBfBWDD/TFrkDDROpy7HJR tD+XJvbdlMm0ViGXatDL0/9taqz57DSLgIRszuox1GO7qP6pC17Mc/acQYEvnT/uN8aCsO zPIrSJUdLzA2Yc8Wmg9FMKrMF08/IzfpOLQdUDVI9m4Z5IUm8H1HWFv6oJLGhgs7M9cCYT lfP5gAGE+7+tEHoxqyOUjEq+NH3H6zY62/7OkixElAjl9Tm7c4JY90WaOoMng+4W3GsSxK 59upOUiSbyo3nZpLbukIkpuwlMbqjVjS9VFygg6xhTlml4v74RVJtlLDTarvGw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744084053; a=rsa-sha256; cv=none; b=MCK39CDCEvfRyqlp88RvLo131yxbIjuPrgl/TCXEWCBq/vZbBoXRjx0o8ombOlXiuGZKVm sMIVnBr0d5u3tLECCD8ArlDtn83OxHK7Yyxl8T16z+E6D0O6fRmhmnU77JqXoOKigOO5Su QsFPwj8IT2f3gaqyuYNWYHzFMzNnPJkbSVZQo20lDQo0wtT0jll6V50wigKuUGwa/YXsIv pF6IqH5fdXv+F9/AFLm8Vp2GJkLFvO1Yu79tTxAb6iA12TgbbgWtro8NAu712HW1nI2BG/ 6hNEI4fRR7y+fvrkG5ccbIgqoA0TPsWCBq1GMV10csePMzUZxne8MeEYjD22Tg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744084053; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Cwz65nrx7DcIftFv7AUepJgoPvtTixW7tOZywGQaTtY=; b=QBajo1CGm32R3hzLLsFyGq4SQaMOqy77Bwtji47C1WrERNhCPKTGsbLhIsgOobsVJL/kDH KYBQMKo9ReZHm0IM97dI9E+0hmnDOwS8LYJHS3UTVHa5Ul9r6gdcHNMpfqJGd+6UXMOzos FKTNF/podl31ETWVZaAOiw2h+Ng+VACNeEvAv6chdWL5WvU4Itxf74q47N6MK8Fs/tW8c0 b7wtCmfuMwocNMo3Hx6HKnuX3XBEoD0R9gAkLDcIfNuLkgDD30EBBqrbSuJ1e1oUWUR8Hs 1a7NqMmX4B1GJStxVnV+6zPOeND4Fpb2krTQ8rK+03XtAOUxI+HYvKJn6vaXew== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWsTx1MGszSh; Tue, 08 Apr 2025 03:47:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5383lXIR016819; Tue, 8 Apr 2025 03:47:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5383lXw1016816; Tue, 8 Apr 2025 03:47:33 GMT (envelope-from git) Date: Tue, 8 Apr 2025 03:47:33 GMT Message-Id: <202504080347.5383lXw1016816@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Adrian Chadd Subject: git: 0c5a770cc450 - main - fdt: fix panic in fdt_slicer/geom due to recent geom changes List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: adrian X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0c5a770cc4504f3becb8df0bbfca57c7a47b71f2 Auto-Submitted: auto-generated The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=0c5a770cc4504f3becb8df0bbfca57c7a47b71f2 commit 0c5a770cc4504f3becb8df0bbfca57c7a47b71f2 Author: Adrian Chadd AuthorDate: 2025-04-06 23:52:29 +0000 Commit: Adrian Chadd CommitDate: 2025-04-08 03:47:09 +0000 fdt: fix panic in fdt_slicer/geom due to recent geom changes A recent change in GEOM ordering (c11b701915116bf512f3d77dfdac7a867f51ca0a - "geom: Push GEOM sysinit ordering to after devctl" changed the GEOM init ordering to SI_ORDER_THIRD. However, the FDT slicer / GEOM flash slice code needs the GEOM subsystem to be initialised before it starts loading in flash slices from FDT, and will panic because the mutex isn't initialised. So bump this now to SI_ORDER_FOURTH, so it occurs after the GEOM initialisation. Differential Revision: https://reviews.freebsd.org/D49692 Reviewed by: jhibbits --- sys/dev/fdt/fdt_slicer.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/dev/fdt/fdt_slicer.c b/sys/dev/fdt/fdt_slicer.c index 5c1d11cfdcf5..3ba4eddf8b61 100644 --- a/sys/dev/fdt/fdt_slicer.c +++ b/sys/dev/fdt/fdt_slicer.c @@ -156,12 +156,12 @@ fdt_slicer_cleanup(void) } /* - * Must be initialized after GEOM classes (SI_SUB_DRIVERS/SI_ORDER_SECOND), + * Must be initialized after GEOM classes (SI_SUB_DRIVERS/SI_ORDER_THIRD), * i. e. after g_init() is called, due to the use of the GEOM topology_lock * in flash_register_slicer(). However, must be before SI_SUB_CONFIGURE. */ -SYSINIT(fdt_slicer, SI_SUB_DRIVERS, SI_ORDER_THIRD, fdt_slicer_init, NULL); -SYSUNINIT(fdt_slicer, SI_SUB_DRIVERS, SI_ORDER_THIRD, fdt_slicer_cleanup, NULL); +SYSINIT(fdt_slicer, SI_SUB_DRIVERS, SI_ORDER_FOURTH, fdt_slicer_init, NULL); +SYSUNINIT(fdt_slicer, SI_SUB_DRIVERS, SI_ORDER_FOURTH, fdt_slicer_cleanup, NULL); static int mod_handler(module_t mod, int type, void *data) @@ -178,6 +178,6 @@ static moduledata_t fdt_slicer_mod = { "fdt_slicer", mod_handler, NULL }; -DECLARE_MODULE(fdt_slicer, fdt_slicer_mod, SI_SUB_DRIVERS, SI_ORDER_THIRD); +DECLARE_MODULE(fdt_slicer, fdt_slicer_mod, SI_SUB_DRIVERS, SI_ORDER_FOURTH); MODULE_DEPEND(fdt_slicer, geom_flashmap, 0, 0, 0); MODULE_VERSION(fdt_slicer, 1); From nobody Tue Apr 8 05:52:17 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWwFs5cWCz5spLN; Tue, 08 Apr 2025 05:52: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWwFs4vBbz3f3p; Tue, 08 Apr 2025 05:52:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744091537; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kZ+MH9aBf4tpX02CkRXG+uH6zXNt75UeNEhQEeTnQnk=; b=LhHRObIjZ3NBLKicVgJr7RA/VJqXatn2pYt+wc6lvxN+U/2LmHDgqCqmchwz4BaVr66dqw ZfeSnKkep3pV+1uQLiLPll59NP/DuqqQx0DwV1AIpPqO6es9LzS26Oa+Yi9njnyRZtFxQ0 rvTritLH21A/x+Gdqdwi7OuQ93/OCcrfLQAnlqK4IBdmMcHNE9Iuiqy9wj+M4zBD8yFNSB +WrLbtHd2ghYlOIr5lxGb54ObtV4jBvPm//PjXA/zOaVI/0Q/skaKWtQd7FbyDEIWqnoBi g982ysozeY+ayLBEBrSfOzEPnCpaWgddLQ9NY1JoZXc3I0HLS5VYPvnUhOs+zQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744091537; a=rsa-sha256; cv=none; b=eKQ5niH9mqC8oc48ysgzno5x1LV2Arkiu7RMde7zlXZg+1FDVBdrj9HSNZkX0hfDv9e4OD z2Y3GlN6MHIDi0E6GAoN/sENK0Rve7/mIlgkrZFCqetHHUqbqnhZJ9LMlc2chb311peFjd xZMfz28WrZqZCFBzGVnOEZtEKuBqngyaMr1a8JDPPrOjyZKPmhm0wYilOJ0z6Y8fLQQw3s QBs+ywsi1L0iBKVCkygYGd3ZDCKJqMblVG4jI31z6BIG89+0m2Z2U3L0ouujRgHKkcOBRW ND8zOiTXCsPvXrqX/EDh0PfYsdmspRDzF7ha9LY1nxVhFqlPhZ6xjZuD4jmp+w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744091537; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kZ+MH9aBf4tpX02CkRXG+uH6zXNt75UeNEhQEeTnQnk=; b=HNJwYmBGoJOP/1ru9LblMMce1bUfyNv5PSLE38uH0Gn68/GBF+k9tKAYn8XJH8B6hDV6mI BZruoREEBg7uNclvQ3HU6sDTu2IxJjXUE/XcLlfRHt0pmxD4/0Qm6F0qhyL8lcfffoY0ld nLnk6Nn4QrHO0tTqjaDzwPzUEzgb5/AAR3VMtKEP10jb3sFIBUehdVn1fV7Gz8n0MrtMZK IeH9mZbG2lVklum5AaNSkxh+8eJGcaMNlWKyfH3sNwJfCjTsi99dKz7eBrnRD/REcJLnZs M0R36ICn3/eNWWc0yWcpIUB+zcL5/uyUDbUdGY8GepP+EMyGUcSUilpRashSDA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWwFs4QFzz40S; Tue, 08 Apr 2025 05:52:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5385qHuG056941; Tue, 8 Apr 2025 05:52:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5385qHEi056938; Tue, 8 Apr 2025 05:52:17 GMT (envelope-from git) Date: Tue, 8 Apr 2025 05:52:17 GMT Message-Id: <202504080552.5385qHEi056938@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: 76113680635e - main - =?utf-8?Q?QCOM GENI I=C2=B2C driver?= List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 76113680635ea0c5972cbe8624a7d0d86270f569 Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=76113680635ea0c5972cbe8624a7d0d86270f569 commit 76113680635ea0c5972cbe8624a7d0d86270f569 Author: Poul-Henning Kamp AuthorDate: 2025-04-08 05:50:25 +0000 Commit: Poul-Henning Kamp CommitDate: 2025-04-08 05:51:54 +0000 QCOM GENI I²C driver This is a from scratch, minimally viable, I²C driver for QCOM's GENI serial engine. No QCOM documentation is available, so other FOSS device drivers were consulted to figure things out The driver works on T14s G6 "Snapdragon" hardware, to such a degree that ACPI clients and HID devices work (polling mode & needs modifications to iichid) Differential Revision: https://reviews.freebsd.org/D49676 Reviews by: adrian --- sys/dev/iicbus/controller/qcom/geni_iic.c | 608 +++++++++++++++++++++++++ sys/dev/iicbus/controller/qcom/geni_iic_acpi.c | 189 ++++++++ sys/dev/iicbus/controller/qcom/geni_iic_var.h | 80 ++++ 3 files changed, 877 insertions(+) diff --git a/sys/dev/iicbus/controller/qcom/geni_iic.c b/sys/dev/iicbus/controller/qcom/geni_iic.c new file mode 100644 index 000000000000..f53fc1d3f1cd --- /dev/null +++ b/sys/dev/iicbus/controller/qcom/geni_iic.c @@ -0,0 +1,608 @@ +/* + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2025 Poul-Henning Kamp + * + * 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 ``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. + * + * QualComm GENI I2C controller + * + * The GENI is actually a multi-protocol serial controller, so a lot of + * this can probably be shared if we ever get to those protocols. + * + * The best open "documentation" of the hardware is the Linux device driver + * from which much was learned, and we tip our hat to the authors of it. + */ + +#include + +#include "opt_acpi.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#include +#include + +#include + +#define GENI_ALL_REGISTERS(THIS_MACRO) \ + THIS_MACRO(GENI_FORCE_DEFAULT_REG, 0x020) \ + THIS_MACRO(GENI_OUTPUT_CTRL, 0x024) \ + THIS_MACRO(GENI_STATUS, 0x040) \ + THIS_MACRO(GENI_SER_M_CLK_CFG, 0x048) \ + THIS_MACRO(GENI_SER_S_CLK_CFG, 0x04c) \ + THIS_MACRO(GENI_IF_DISABLE_RO, 0x064) \ + THIS_MACRO(GENI_FW_REVISION_RO, 0x068) \ + THIS_MACRO(GENI_CLK_SEL, 0x07c) \ + THIS_MACRO(GENI_CFG_SEQ_START, 0x084) \ + THIS_MACRO(GENI_BYTE_GRANULARITY, 0x254) \ + THIS_MACRO(GENI_DMA_MODE_EN, 0x258) \ + THIS_MACRO(GENI_TX_PACKING_CFG0, 0x260) \ + THIS_MACRO(GENI_TX_PACKING_CFG1, 0x264) \ + THIS_MACRO(GENI_I2C_TX_TRANS_LEN, 0x26c) \ + THIS_MACRO(GENI_I2C_RX_TRANS_LEN, 0x270) \ + THIS_MACRO(GENI_I2C_SCL_COUNTERS, 0x278) \ + THIS_MACRO(GENI_RX_PACKING_CFG0, 0x284) \ + THIS_MACRO(GENI_RX_PACKING_CFG1, 0x288) \ + THIS_MACRO(GENI_M_CMD0, 0x600) \ + THIS_MACRO(GENI_M_CMD_CTRL_REG, 0x604) \ + THIS_MACRO(GENI_M_IRQ_STATUS, 0x610) \ + THIS_MACRO(GENI_M_IRQ_EN, 0x614) \ + THIS_MACRO(GENI_M_IRQ_CLEAR, 0x618) \ + THIS_MACRO(GENI_M_IRQ_EN_SET, 0x61c) \ + THIS_MACRO(GENI_M_IRQ_EN_CLEAR, 0x620) \ + THIS_MACRO(GENI_S_CMD0, 0x630) \ + THIS_MACRO(GENI_S_CMD_CTRL_REG, 0x634) \ + THIS_MACRO(GENI_S_IRQ_STATUS, 0x640) \ + THIS_MACRO(GENI_S_IRQ_EN, 0x644) \ + THIS_MACRO(GENI_S_IRQ_CLEAR, 0x648) \ + THIS_MACRO(GENI_S_IRQ_EN_SET, 0x64c) \ + THIS_MACRO(GENI_S_IRQ_EN_CLEAR, 0x650) \ + THIS_MACRO(GENI_TX_FIFOn, 0x700) \ + THIS_MACRO(GENI_RX_FIFOn, 0x780) \ + THIS_MACRO(GENI_TX_FIFO_STATUS, 0x800) \ + THIS_MACRO(GENI_RX_FIFO_STATUS, 0x804) \ + THIS_MACRO(GENI_TX_WATERMARK_REG, 0x80c) \ + THIS_MACRO(GENI_RX_WATERMARK_REG, 0x810) \ + THIS_MACRO(GENI_RX_RFR_WATERMARK_REG, 0x814) \ + THIS_MACRO(GENI_IOS, 0x908) \ + THIS_MACRO(GENI_M_GP_LENGTH, 0x910) \ + THIS_MACRO(GENI_S_GP_LENGTH, 0x914) \ + THIS_MACRO(GENI_DMA_TX_IRQ_STAT, 0xc40) \ + THIS_MACRO(GENI_DMA_TX_IRQ_CLR, 0xc44) \ + THIS_MACRO(GENI_DMA_TX_IRQ_EN, 0xc48) \ + THIS_MACRO(GENI_DMA_TX_IRQ_EN_CLR, 0xc4c) \ + THIS_MACRO(GENI_DMA_TX_IRQ_EN_SET, 0xc50) \ + THIS_MACRO(GENI_DMA_TX_FSM_RST, 0xc58) \ + THIS_MACRO(GENI_DMA_RX_IRQ_STAT, 0xd40) \ + THIS_MACRO(GENI_DMA_RX_IRQ_CLR, 0xd44) \ + THIS_MACRO(GENI_DMA_RX_IRQ_EN, 0xd48) \ + THIS_MACRO(GENI_DMA_RX_IRQ_EN_CLR, 0xd4c) \ + THIS_MACRO(GENI_DMA_RX_IRQ_EN_SET, 0xd50) \ + THIS_MACRO(GENI_DMA_RX_LEN_IN, 0xd54) \ + THIS_MACRO(GENI_DMA_RX_FSM_RST, 0xd58) \ + THIS_MACRO(GENI_IRQ_EN, 0xe1c) \ + THIS_MACRO(GENI_HW_PARAM_0, 0xe24) \ + THIS_MACRO(GENI_HW_PARAM_1, 0xe28) + +enum geni_registers { +#define ITER_MACRO(name, offset) name = offset, + GENI_ALL_REGISTERS(ITER_MACRO) +#undef ITER_MACRO +}; + +#define RD(sc, reg) bus_read_4((sc)->regs_res, reg) +#define WR(sc, reg, val) bus_write_4((sc)->regs_res, reg, val) + +static void +geni_dump_regs(geniiic_softc_t *sc) +{ + device_printf(sc->dev, "Register Dump\n"); +#define DUMP_MACRO(name, offset) \ + device_printf(sc->dev, \ + " %08x %04x " #name "\n", \ + RD(sc, offset), offset); + GENI_ALL_REGISTERS(DUMP_MACRO) +#undef DUMP_MACRO +} + +static unsigned geniiic_debug_units = 0; + +static SYSCTL_NODE(_hw, OID_AUTO, geniiic, CTLFLAG_RW, 0, "GENI I2C"); +SYSCTL_INT(_hw_geniiic, OID_AUTO, debug_units, CTLFLAG_RWTUN, + &geniiic_debug_units, 1, "Bitmask of units to debug"); + + +static driver_filter_t geniiic_intr; + +static int +geniiic_intr(void *cookie) +{ + uint32_t m_status, rx_fifo_status; + int retval = FILTER_STRAY; + geniiic_softc_t *sc = cookie; + + mtx_lock_spin(&sc->intr_lock); + m_status = RD(sc, GENI_M_IRQ_STATUS); + + rx_fifo_status = RD(sc, GENI_RX_FIFO_STATUS); + if (sc->rx_buf != NULL && rx_fifo_status & 0x3f) { + + // Number of whole FIFO words, each 4 bytes + unsigned gotlen = (((rx_fifo_status & 0x3f) << 2)-1) * 4; + + // Valid bytes in the last FIFO word + // (Field is 3 bits, we'll only ever see 0…3) + gotlen += (rx_fifo_status >> 28) & 0x7; + + unsigned cnt; + for (cnt = 0; cnt < (rx_fifo_status & 0x3f); cnt++) { + uint32_t data = RD(sc, GENI_RX_FIFOn); + unsigned u; + for (u = 0; u < 4 && sc->rx_len && gotlen; u++) { + *sc->rx_buf++ = data & 0xff; + data >>= 8; + sc->rx_len--; + gotlen--; + } + } + } + if (m_status & (1<<26)) { + WR(sc, GENI_M_IRQ_CLEAR, (1<<26)); + retval = FILTER_HANDLED; + } + + if (m_status & (1<<0)) { + sc->rx_complete = true; + WR(sc, GENI_M_IRQ_EN_CLEAR, (1<<0)); + WR(sc, GENI_M_IRQ_EN_CLEAR, (1<<26)); + WR(sc, GENI_M_IRQ_CLEAR, (1<<0)); + wakeup(sc); + retval = FILTER_HANDLED; + } + sc->cmd_status = m_status; + + if (sc->rx_buf == NULL) { + device_printf(sc->dev, + "Interrupt m_stat %x rx_fifo_status %x retval %d\n", + m_status, rx_fifo_status, retval); + WR(sc, GENI_M_IRQ_EN, 0); + WR(sc, GENI_M_IRQ_CLEAR, m_status); + device_printf(sc->dev, + "Interrupt M_IRQ_STATUS 0x%x M_IRQ_EN 0x%x\n", + RD(sc, GENI_M_IRQ_STATUS), RD(sc, GENI_M_IRQ_EN)); + device_printf(sc->dev, + "Interrupt S_IRQ_STATUS 0x%x S_IRQ_EN 0x%x\n", + RD(sc, GENI_S_IRQ_STATUS), RD(sc, GENI_S_IRQ_EN)); + device_printf(sc->dev, + "Interrupt DMA_TX_IRQ_STAT 0x%x DMA_RX_IRQ_STAT 0x%x\n", + RD(sc, GENI_DMA_TX_IRQ_STAT), RD(sc, GENI_DMA_RX_IRQ_STAT)); + device_printf(sc->dev, + "Interrupt DMA_TX_IRQ_EN 0x%x DMA_RX_IRQ_EN 0x%x\n", + RD(sc, GENI_DMA_TX_IRQ_EN), RD(sc, GENI_DMA_RX_IRQ_EN)); + WR(sc, GENI_DMA_TX_IRQ_EN_CLR, RD(sc, GENI_DMA_TX_IRQ_STAT)); + WR(sc, GENI_DMA_TX_IRQ_CLR, RD(sc, GENI_DMA_TX_IRQ_STAT)); + WR(sc, GENI_DMA_RX_IRQ_EN_CLR, RD(sc, GENI_DMA_RX_IRQ_STAT)); + WR(sc, GENI_DMA_RX_IRQ_CLR, RD(sc, GENI_DMA_RX_IRQ_STAT)); + } + mtx_unlock_spin(&sc->intr_lock); + return(retval); +} + +static int +geniiic_wait_m_ireq(geniiic_softc_t *sc, uint32_t bits) +{ + uint32_t status; + int timeout; + + for (timeout = 0; timeout < 10000; timeout++) { + status = RD(sc, GENI_M_IRQ_STATUS); + if (status & bits) { + return (0); + } + DELAY(10); + } + return (IIC_ETIMEOUT); +} + +static int +geniiic_read(geniiic_softc_t *sc, + uint8_t slave, uint8_t *buf, uint16_t len, bool nonfinal) +{ + uint32_t cmd, istatus; + + istatus = RD(sc, GENI_M_IRQ_STATUS); + WR(sc, GENI_M_IRQ_CLEAR, istatus); + + sc->rx_complete = false; + sc->rx_fifo = false; + sc->rx_buf = buf; + sc->rx_len = len; + WR(sc, GENI_I2C_RX_TRANS_LEN, len); + + // GENI_M_CMD0_OPCODE_I2C_READ << M_OPCODE_SHFT + cmd = (0x2 << 27); + + // GENI_M_CMD0_SLV_ADDR_SHIFT + cmd |= slave << 9; + + if (nonfinal) { + // GENI_M_CMD0_STOP_STRETCH + cmd |= (1<<2); + } + WR(sc, GENI_RX_WATERMARK_REG, sc->rx_fifo_size - 4); + + // CMD_DONE, RX_FIFO_WATERMARK + WR(sc, GENI_M_IRQ_EN, (1<<0) | (1<<26)); + + // M_IRQ + WR(sc, GENI_IRQ_EN, (1<<2)); + + WR(sc, GENI_M_CMD0, cmd); + + mtx_lock_spin(&sc->intr_lock); + sc->rx_fifo = false; + unsigned msec; + for (msec = 0; msec < 100; msec++) { + msleep_spin_sbt(sc, &sc->intr_lock, + "geniwait", SBT_1MS, SBT_1MS / 10, 0); + if (sc->rx_complete) + break; + } + if (msec > sc->worst) { + device_printf(sc->dev, + "Tworst from %u to %u\n", sc->worst, msec); + if (msec != 100) + sc->worst = msec; + } + + if (!sc->rx_complete) { + // S_GENI_CMD_CANCEL + WR(sc, GENI_M_CMD_CTRL_REG, (1<<2)); + + WR(sc, GENI_IRQ_EN, 0); + device_printf(sc->dev, + "Incomplete read (residual %x)\n", sc->rx_len); + } + + sc->rx_buf = NULL; + len = sc->rx_len; + sc->rx_len = 0; + + mtx_unlock_spin(&sc->intr_lock); + +#define COMPLAIN(about) \ + device_printf(sc->dev, \ + "read " about " slave=0x%x len=0x%x, cmd=0x%x cmd_status=0x%x\n", \ + slave, len, cmd, sc->cmd_status \ + ) + + if (geniiic_debug_units) { + unsigned unit = device_get_unit(sc->dev); + if (unit < 32 && geniiic_debug_units & (1<cmd_status & (1<<10)) { + COMPLAIN("ESTATUS"); + return(IIC_ESTATUS); + } + if (len) { + COMPLAIN("EUNDERFLOW"); + return(IIC_EUNDERFLOW); + } + COMPLAIN("EBUSERR"); + return (IIC_EBUSERR); +#undef COMPLAIN +} + +static int +geniiic_write(geniiic_softc_t *sc, + uint8_t slave, uint8_t *buf, uint16_t len, bool nonfinal) +{ + uint32_t status, data, cmd; + int timeout, error; + + status = RD(sc, GENI_M_IRQ_STATUS); + WR(sc, GENI_M_IRQ_CLEAR, status); + + WR(sc, GENI_I2C_TX_TRANS_LEN, len); + + // GENI_M_CMD0_OPCODE_I2C_WRITE << M_OPCODE_SHFT + cmd = (0x1 << 27); + + // GENI_M_CMD0_SLV_ADDR_SHIFT + cmd |= slave << 9; + + if (nonfinal) { + // GENI_M_CMD0_STOP_STRETCH + cmd |= (1<<2); + } + WR(sc, GENI_M_CMD0, cmd); + for(timeout = 0; len > 0 && timeout < 100; timeout++) { + status = RD(sc, GENI_TX_FIFO_STATUS); + if (status < 16) { + data = 0; + if (len) { data |= *buf << 0; buf++; len--; } + if (len) { data |= *buf << 8; buf++; len--; } + if (len) { data |= *buf << 16; buf++; len--; } + if (len) { data |= *buf << 24; buf++; len--; } + WR(sc, GENI_TX_FIFOn, data); + } else { + DELAY(10); + } + } + + // GENI_M_IRQ_CMD_DONE + error = geniiic_wait_m_ireq(sc, 1); + + if (len == 0 && error == 0) + return(IIC_NOERR); + device_printf(sc->dev, + "write ERR len=%d, error=%d cmd=0x%x\n", len, error, cmd); + return (IIC_EBUSERR); +} + +static void +geniiic_dumpmsg(device_t dev, struct iic_msg *msgs, uint32_t nmsgs) +{ + unsigned u; + + device_printf(dev, "transfer:\n"); + for (u = 0; u < nmsgs; u++) { + device_printf(dev, + " [%d] slave=0x%x, flags=0x%x len=0x%x buf=%p\n", + u, msgs[u].slave, msgs[u].flags, msgs[u].len, msgs[u].buf + ); + } +} + +int +geniiic_transfer(device_t dev, struct iic_msg *msgs, uint32_t nmsgs) +{ + geniiic_softc_t *sc = device_get_softc(dev); + unsigned u; + int error; + + if (sc->nfail > 4) { + pause_sbt("geniic_fail", SBT_1S * 5, SBT_1S, 0); + return (IIC_ERESOURCE); + } + + sx_xlock(&sc->real_bus_lock); + + if (geniiic_debug_units) { + unsigned unit = device_get_unit(dev); + if (unit < 32 && geniiic_debug_units & (1<> 1; + if (msgs[u].flags & IIC_M_RD) { + error = geniiic_read(sc, + slave, msgs[u].buf, msgs[u].len, nonfinal); + } else { + error = geniiic_write(sc, + slave, msgs[u].buf, msgs[u].len, nonfinal); + } + } + if (error) { + device_printf(dev, "transfer error %d\n", error); + geniiic_dumpmsg(dev, msgs, nmsgs); + } + if (error) { + geniiic_reset(dev, 0, 0, NULL); + } + if (error) + sc->nfail++; + else + sc->nfail = 0; + sx_xunlock(&sc->real_bus_lock); + return (error); +} + +int +geniiic_reset(device_t dev, u_char speed, u_char addr, u_char *oldaddr) +{ + geniiic_softc_t *sc = device_get_softc(dev); + unsigned u; + + device_printf(dev, "reset\n"); + WR(sc, GENI_M_IRQ_EN, 0); + WR(sc, GENI_M_IRQ_CLEAR, ~0); + WR(sc, GENI_DMA_TX_IRQ_EN_CLR, ~0); + WR(sc, GENI_DMA_TX_IRQ_CLR, ~0); + WR(sc, GENI_DMA_RX_IRQ_EN_CLR, ~0); + WR(sc, GENI_DMA_RX_IRQ_CLR, ~0); + + // S_GENI_CMD_ABORT + WR(sc, GENI_M_CMD_CTRL_REG, (1<<1)); + + WR(sc, GENI_DMA_RX_FSM_RST, 1); + for (u = 0; u < 1000; u++) { + if (RD(sc, GENI_DMA_RX_IRQ_STAT) & 0x8) + break; + DELAY(10); + } + if (u > 0) + device_printf(dev, "RXRESET time %u\n", u); + WR(sc, GENI_DMA_TX_FSM_RST, 1); + for (u = 0; u < 1000; u++) { + if (RD(sc, GENI_DMA_TX_IRQ_STAT) & 0x8) + break; + DELAY(10); + } + if (u > 0) + device_printf(dev, "TXRESET time %u\n", u); + return (0); +} + +int +geniiic_callback(device_t dev, int index, caddr_t data) +{ + geniiic_softc_t *sc = device_get_softc(dev); + int error = 0; + + return(0); + switch (index) { + case IIC_REQUEST_BUS: + if (sx_try_xlock(&sc->bus_lock) == 0) + error = IIC_EBUSBSY; + else + sc->bus_locked = true; + break; + + case IIC_RELEASE_BUS: + if (!sc->bus_locked) { + device_printf(dev, "Unlocking unlocked bus\n"); + } + sc->bus_locked = false; + sx_xunlock(&sc->bus_lock); + break; + + default: + device_printf(dev, "callback unknown %d\n", index); + error = errno2iic(EINVAL); + } + + return (error); +} + +int +geniiic_attach(geniiic_softc_t *sc) +{ + int error = 0; + + if (bootverbose) + geni_dump_regs(sc); + mtx_init(&sc->intr_lock, "geniiic intr lock", NULL, MTX_SPIN); + sx_init(&sc->real_bus_lock, "geniiic real bus lock"); + sx_init(&sc->bus_lock, "geniiic bus lock"); + + sc->rx_fifo_size = (RD(sc, GENI_HW_PARAM_1) >> 16) & 0x3f; + device_printf(sc->dev, " RX fifo size= 0x%x\n", sc->rx_fifo_size); + + // We might want to set/check the following registers: + // GENI_BYTE_GRANULARITY (0x00000000) + // GENI_TX_PACKING_CFG0 (0x0007f8fe) + // GENI_TX_PACKING_CFG1 (000ffefe) + // GENI_RX_PACKING_CFG0 (0x0007f8fe) + // GENI_RX_PACKING_CFG1 (000ffefe) + + sc->iicbus = device_add_child(sc->dev, "iicbus", DEVICE_UNIT_ANY); + if (sc->iicbus == NULL) { + device_printf(sc->dev, "iicbus driver not found\n"); + return(ENXIO); + } + + error = bus_setup_intr(sc->dev, + sc->intr_res, INTR_TYPE_MISC | INTR_MPSAFE, + geniiic_intr, NULL, sc, &sc->intr_handle); + if (error) { + device_printf(sc->dev, + "Unable to setup irq: error %d\n", error); + } + + bus_attach_children(sc->dev); + return (error); +} + +int +geniiic_detach(geniiic_softc_t *sc) +{ + int error = 0; + + error = bus_generic_detach(sc->dev); + if (error) + return (error); + + WR(sc, GENI_M_IRQ_EN, 0); + + if (sc->intr_handle) { + bus_teardown_intr(sc->dev, sc->intr_res, sc->intr_handle); + } + + sx_xlock(&sc->bus_lock); + sx_xlock(&sc->real_bus_lock); + + geniiic_reset(sc->dev, 0, 0, NULL); + sc->iicbus = NULL; + sc->intr_handle = NULL; + + sx_xunlock(&sc->real_bus_lock); + sx_xunlock(&sc->bus_lock); + + sx_destroy(&sc->real_bus_lock); + sx_destroy(&sc->bus_lock); + + mtx_destroy(&sc->intr_lock); + return (error); +} + +int +geniiic_suspend(geniiic_softc_t *sc) +{ + int error; + + device_printf(sc->dev, "suspend method is NO-OP (good luck!)\n"); + + error = bus_generic_suspend(sc->dev); + + return (error); +} + +int geniiic_resume(geniiic_softc_t *sc) +{ + int error; + + device_printf(sc->dev, "resume method is NO-OP (good luck!)\n"); + + error = bus_generic_resume(sc->dev); + + return (error); +} + +DRIVER_MODULE(iicbus, geniiic, iicbus_driver, NULL, NULL); +DRIVER_MODULE(acpi_iicbus, geniiic, acpi_iicbus_driver, NULL, NULL); +MODULE_DEPEND(geniiic, iicbus, IICBUS_MINVER, IICBUS_PREFVER, IICBUS_MAXVER); +MODULE_VERSION(geniiic, 1); diff --git a/sys/dev/iicbus/controller/qcom/geni_iic_acpi.c b/sys/dev/iicbus/controller/qcom/geni_iic_acpi.c new file mode 100644 index 000000000000..2105071f5609 --- /dev/null +++ b/sys/dev/iicbus/controller/qcom/geni_iic_acpi.c @@ -0,0 +1,189 @@ +/* + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2025 Poul-Henning Kamp + * + * 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 ``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. + * + */ + +#include +#include "opt_acpi.h" + +#include +#include +#include +#include +#include +#include + +#include +#include + +#include +#include + +#include +#include + +#include + +static int geniiic_acpi_probe(device_t dev); +static int geniiic_acpi_attach(device_t dev); +static int geniiic_acpi_detach(device_t dev); + +static char *geniiic_ids[] = { + "QCOM0C10", + NULL +}; + +static int +geniiic_acpi_probe(device_t dev) +{ + int rv; + + if (acpi_disabled("geniiic")) + return (ENXIO); + rv = ACPI_ID_PROBE(device_get_parent(dev), dev, geniiic_ids, NULL); + if (rv > 0) + return (rv); + + device_set_desc(dev, "Qualcomm GENI I2C Controller"); + return (rv); +} + +static int +geniiic_acpi_attach(device_t dev) +{ + geniiic_softc_t *sc; + char *str; + int error; + + sc = device_get_softc(dev); + + sc->dev = dev; + error = ACPI_ID_PROBE(device_get_parent(dev), dev, geniiic_ids, &str); + if (error > 0) + return (error); + + sc->regs_rid = 0; + sc->regs_res = bus_alloc_resource_any(dev, + SYS_RES_MEMORY, &sc->regs_rid, RF_ACTIVE); + if (sc->regs_res == NULL) { + device_printf(dev, "unable to map registers\n"); + geniiic_acpi_detach(dev); + return (ENXIO); + } + sc->intr_rid = 0; + sc->intr_res = bus_alloc_resource_any(dev, + SYS_RES_IRQ, &sc->intr_rid, RF_SHAREABLE | RF_ACTIVE); + if (sc->intr_res == NULL) { + device_printf(dev, "unable to map interrupt\n"); + geniiic_acpi_detach(dev); + return (ENXIO); + } + sc->platform_attached = true; + + error = geniiic_attach(sc); + if (error) + geniiic_acpi_detach(dev); + + return (error); +} + +static int +geniiic_acpi_detach(device_t dev) +{ + geniiic_softc_t *sc = device_get_softc(dev); + int error; + + if (sc->platform_attached) { + error = geniiic_detach(sc); + if (error) + return (error); + sc->platform_attached = false; + } + + if (sc->intr_res) { + bus_release_resource(dev, SYS_RES_IRQ, + sc->intr_rid, sc->intr_res); + sc->intr_res = NULL; + } + if (sc->regs_res) { + bus_release_resource(dev, SYS_RES_MEMORY, + sc->regs_rid, sc->regs_res); + sc->regs_res = NULL; + } + + return (0); +} + +static int +geniiic_acpi_suspend(device_t dev) +{ + geniiic_softc_t *sc = device_get_softc(dev); + + return (geniiic_suspend(sc)); +} + +static int +geniiic_acpi_resume(device_t dev) +{ + geniiic_softc_t *sc = device_get_softc(dev); + + return (geniiic_resume(sc)); +} + +static device_method_t geniiic_acpi_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, geniiic_acpi_probe), + DEVMETHOD(device_attach, geniiic_acpi_attach), + DEVMETHOD(device_detach, geniiic_acpi_detach), + DEVMETHOD(device_suspend, geniiic_acpi_suspend), + DEVMETHOD(device_resume, geniiic_acpi_resume), + + /* Bus interface */ + DEVMETHOD(bus_setup_intr, bus_generic_setup_intr), + DEVMETHOD(bus_teardown_intr, bus_generic_teardown_intr), + DEVMETHOD(bus_alloc_resource, bus_generic_alloc_resource), + DEVMETHOD(bus_release_resource, bus_generic_release_resource), + DEVMETHOD(bus_activate_resource, bus_generic_activate_resource), + DEVMETHOD(bus_deactivate_resource, bus_generic_deactivate_resource), + DEVMETHOD(bus_adjust_resource, bus_generic_adjust_resource), + + /* iicbus interface */ + DEVMETHOD(iicbus_transfer, geniiic_transfer), + DEVMETHOD(iicbus_reset, geniiic_reset), + DEVMETHOD(iicbus_callback, geniiic_callback), + + DEVMETHOD_END +}; + +static driver_t geniiic_acpi_driver = { + "geniiic", + geniiic_acpi_methods, + sizeof(struct geniiic_softc), +}; + +DRIVER_MODULE_ORDERED(geniiic, acpi, geniiic_acpi_driver, 0, 0, SI_ORDER_ANY); +MODULE_DEPEND(geniiic, acpi, 1, 1, 1); +ACPI_PNP_INFO(geniiic_ids); diff --git a/sys/dev/iicbus/controller/qcom/geni_iic_var.h b/sys/dev/iicbus/controller/qcom/geni_iic_var.h new file mode 100644 index 000000000000..9ce8200c6fe5 --- /dev/null +++ b/sys/dev/iicbus/controller/qcom/geni_iic_var.h @@ -0,0 +1,80 @@ +/* + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2025 Poul-Henning Kamp + * + * 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 ``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. + * + */ + +#ifndef _GENIIIC_GENI_VAR_H_ +#define _GENIIIC_GENI_VAR_H_ + +#include "bus_if.h" +#include "device_if.h" +#include "iicbus_if.h" + +struct geniiic_softc { + device_t dev; + device_t iicbus; + struct resource *regs_res; + int regs_rid; + struct resource *intr_res; + int intr_rid; + void *intr_handle; + int intr_type; + uint32_t intr_mask; + + bool bus_locked; + + bool platform_attached; + + int nfail; + unsigned worst; + + unsigned rx_fifo_size; + bool rx_complete; + bool rx_fifo; + uint8_t *rx_buf; + unsigned rx_len; + uint32_t cmd_status; + + // Protect access to the bus + struct sx bus_lock; + struct sx real_bus_lock; + + // Coordinate with interrupt routine + struct mtx intr_lock; +}; + +typedef struct geniiic_softc geniiic_softc_t; + +int geniiic_attach(geniiic_softc_t *sc); +int geniiic_detach(geniiic_softc_t *sc); +int geniiic_suspend(geniiic_softc_t *sc); +int geniiic_resume(geniiic_softc_t *sc); + +extern iicbus_transfer_t geniiic_transfer; +extern iicbus_reset_t geniiic_reset; +extern iicbus_callback_t geniiic_callback; + +#endif /* _GENIIIC_GENI_VAR_H_ */ From nobody Tue Apr 8 05:57:55 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZWwNM6ch0z5spq7; Tue, 08 Apr 2025 05:57: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZWwNM5dcQz3g1X; Tue, 08 Apr 2025 05:57:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744091875; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w7An4cHIRGrW89UbXrqTIpClI7363jkRWwL4paJ+Kms=; b=GyuRu5vELzsDL/aLNgvgUK3YsTpUwaixj1juo9Xn3pFf4mDSaSNkVP3QkFTtlAm4qxf68L PE3zD0OMfl7ppuxzWOEUM6jPtFgFp2NVVbkMapa+N3RhBuT/uZxCy/nfv7JyAqW/3O+OYY UdAb6B+tsQ4IyGgOsOhroABcUoQWr5au8sZGsM8jW+KHUEB7u4IpYaKWnTF4tMHtSYTvQZ 6KHQE4VGuDFeX4hTvL8SbRbRi+zt3crQxmJK11c3j3Y9uKq9iami2HkKtQWCtzGc8c3BNK PcyOfJ5lc+OL4P253dNTfcbOV+/hv40+FwAh+Dnzj3bTvMg80LcVcbIJeFdigA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744091875; a=rsa-sha256; cv=none; b=BWufl3nGOeV8mejMnqW7cdk49B5FNaa/jsABG0chS5Ml4o4EcA0NMzVuUIXD0evv93WwZR MgNrYcR94mUdRmnigjbaDzUmcVgsCDmCQeEnda32EG7N2Bwy/FqpCJ0rvyU1rioOBkiJGA 078B9zrJstayALZsXtfxUHDKwJw+8FreIW0SuRMk8HMGgb9zOQiR5/Pyg7YRD3MfxYZfr8 t3jsRl3RC1ia2bS3xmVcb1Kk4FPSBlW7ODpcOsvBrQmW9CKkZZ2sg8SHw2cagwaxAb7zKq NjVgU1z3nNIPaLNOgcs4hfKJE8ceCEK2gipu+uDVYQbskIY2AjnPSZ3tiogMZA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744091875; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w7An4cHIRGrW89UbXrqTIpClI7363jkRWwL4paJ+Kms=; b=w0fESQ4sEKnwz1aorj0jmycBODct7Zq3t6KBKBMbswxEC11dY9tlUM2OXtjBUHLCMNkBrq QaBsMMWN3U1kUJxs+4uSZvhaF+H1HKh8A8cmetPKmdjBzoQj3gTKqWzfeaTlkq2SBh6TMG BXVEe1OM8ZO34YZMiKwKT1nWCeGy6MhnBvt5F2h66WU75nPBWPdeTaM9zo0ug7Pswg5Doi ihWHljiPehogtPkEPkTKXB2tg1jVH2fIgqX+lmrtPVMNjr1QD2ByXbFx0sxav+i9W662L5 gQeug5AuaX/BWwdSEtKIbhB8BdIoF1MVae47Fczd4MX8EyZQCJbuTdn8R3SX2Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZWwNM51VFz4Gx; Tue, 08 Apr 2025 05:57:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5385vthv058671; Tue, 8 Apr 2025 05:57:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5385vtXd058668; Tue, 8 Apr 2025 05:57:55 GMT (envelope-from git) Date: Tue, 8 Apr 2025 05:57:55 GMT Message-Id: <202504080557.5385vtXd058668@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Poul-Henning Kamp Subject: git: 83483b480f99 - main - Build geni_iic kmod on aarch64 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: phk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 83483b480f99c74e70a5baa50c2c7d12c9ba0154 Auto-Submitted: auto-generated The branch main has been updated by phk: URL: https://cgit.FreeBSD.org/src/commit/?id=83483b480f99c74e70a5baa50c2c7d12c9ba0154 commit 83483b480f99c74e70a5baa50c2c7d12c9ba0154 Author: Poul-Henning Kamp AuthorDate: 2025-04-08 05:57:10 +0000 Commit: Poul-Henning Kamp CommitDate: 2025-04-08 05:57:10 +0000 Build geni_iic kmod on aarch64 --- sys/modules/i2c/controllers/Makefile | 3 +++ sys/modules/i2c/controllers/geni_iic/Makefile | 10 ++++++++++ 2 files changed, 13 insertions(+) diff --git a/sys/modules/i2c/controllers/Makefile b/sys/modules/i2c/controllers/Makefile index 2faf6d51a2ba..0d58e305ffef 100644 --- a/sys/modules/i2c/controllers/Makefile +++ b/sys/modules/i2c/controllers/Makefile @@ -6,5 +6,8 @@ SUBDIR += imcsmb .if ${MACHINE_CPUARCH} == "riscv" SUBDIR += iicoc .endif +.if ${MACHINE_CPUARCH} == "aarch64" +SUBDIR += geni_iic +.endif .include diff --git a/sys/modules/i2c/controllers/geni_iic/Makefile b/sys/modules/i2c/controllers/geni_iic/Makefile new file mode 100644 index 000000000000..c2f4a7cc7b11 --- /dev/null +++ b/sys/modules/i2c/controllers/geni_iic/Makefile @@ -0,0 +1,10 @@ +.PATH: ${SRCTOP}/sys/dev/iicbus/controller/qcom + +KMOD= geni_iic + +SRCS= geni_iic.c geni_iic_var.h +SRCS+= geni_iic_acpi.c acpi_if.h +SRCS+= device_if.h bus_if.h iicbus_if.h +SRCS+= opt_acpi.h opt_platform.h + +.include From nobody Tue Apr 8 09:05:42 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX0Y31MJGz5s4Ls; Tue, 08 Apr 2025 09:05:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX0Y30dq7z3MnX; Tue, 08 Apr 2025 09:05:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744103143; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ImljPtDu147QMH7XzI6zWpZVujAdFSojlnMSfZbz6yM=; b=B/KxZBGi1dtJVO1ag21F39qcKMIhz0OfJP9HBq23HcMOWReLaurRMgwjtn8lX44m9hmcoZ 1+udEFTHl+LAtGIR8ntaNN7leh7RvLRzqIA8uj9PmDoEWv/FXrqrt0cYuXLTo+T5CPUaIO lwM39EOvh45jg+ETZ/rjNzFn4khMbaaZ+j/3TlH1udkvDF8gSreI0CsGQRvQfsHZTIgekQ Foz1TUs3Qw2ibnMyamO+/esc1E8OXyxTNpgS+dXk77J+45SpTMFHwcpbXx9SYy+xYurDie zu5d/N13wQQ/+R38yYBCB/kkR+GQNmxV+H+gTp6QaLTmZtRom3ZqlYVwjwh9Bg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744103143; a=rsa-sha256; cv=none; b=HiACgz7vImFXE+K1e/mrCjWk88MnMfWqzoyD3m/tdqinN40ZCvN45tMH6r57DNAUC/kcnQ PqRNt/HU4kIdmF4MOdXf6q/cqGDAuZBixvcI/1+4dOYahw6Ssix1Ua+vVagX+uTcENAcvX 97C6GMCwlj60yYV5UKV3GzAxCwkSw5k5cS3sVsAY4ORkrFecbxlKFrwWnuHJxCTSVjROeH m/ogeGP8i6yXWDAlpNVJ9W3pQNnmzhWrn9EKIHupjr1lw6qJrOCRvNJksRYOeZK4o8Jzh0 lIOrm7+s+BpufrSBBVgZ1PxDnB/e9gduHj0qWL5VskR37fG+86SU87Ir1d6kQQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744103143; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ImljPtDu147QMH7XzI6zWpZVujAdFSojlnMSfZbz6yM=; b=hYM79DOoNVNdp4U8OAcTtvPLe6wso0ZN0egkC/GQgHFoHlsyoROxp9KeWI66ojVnmaMxek tIvOPyfL7psy0FFqXLQ/GTFiXVEVQM5RYMPC682mftxThzeG3fGFcKNP4SSlf0pQYqsesj 3kGqmhwmEccE7fmTrkG1uTZdaL9Y2wW5CaaBwhyq2zeUZPIHaGj4Ik9rmr3c7pGyDqNUKk hbnEGeBsQZa5wfRbAzRuHhmfJ19w11EiWhxcvIZAX2J+/C3zTjxWBtSxvlMrEi5rKEvXjw hALaVrlrWTZply6/Ha4bhAtjJvsiz1t+lPiL9aRxGuNXHw2isWSRnlajJBvZ6g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX0Y26dRYz96h; Tue, 08 Apr 2025 09:05:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53895gGo014593; Tue, 8 Apr 2025 09:05:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53895gpY014590; Tue, 8 Apr 2025 09:05:42 GMT (envelope-from git) Date: Tue, 8 Apr 2025 09:05:42 GMT Message-Id: <202504080905.53895gpY014590@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 50725e585de7 - main - netinet6 tests: add a test for SIOCAIFADDRing an invalid IPv6 address List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 50725e585de77c20f7c96b836dd68ba954756ce7 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=50725e585de77c20f7c96b836dd68ba954756ce7 commit 50725e585de77c20f7c96b836dd68ba954756ce7 Author: Lexi Winter AuthorDate: 2025-04-07 16:47:23 +0000 Commit: Kristof Provost CommitDate: 2025-04-08 09:04:42 +0000 netinet6 tests: add a test for SIOCAIFADDRing an invalid IPv6 address Reviewed by: kp --- tests/sys/netinet6/Makefile | 5 ++++- tests/sys/netinet6/addr6.sh | 45 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+), 1 deletion(-) diff --git a/tests/sys/netinet6/Makefile b/tests/sys/netinet6/Makefile index 753571fbf7a1..26f1a18a8d32 100644 --- a/tests/sys/netinet6/Makefile +++ b/tests/sys/netinet6/Makefile @@ -14,7 +14,8 @@ ATF_TESTS_SH= exthdr \ lpm6 \ fibs6 \ ndp \ - proxy_ndp + proxy_ndp \ + addr6 TEST_METADATA.divert+= execenv="jail" \ execenv_jail_params="vnet allow.raw_sockets" @@ -33,6 +34,8 @@ TEST_METADATA.redirect+= execenv="jail" \ execenv_jail_params="vnet allow.raw_sockets" TEST_METADATA.scapyi386+= execenv="jail" \ execenv_jail_params="vnet allow.raw_sockets" +TEST_METADATA.addr6+= execenv="jail" \ + execenv_jail_params="vnet allow.raw_sockets" ${PACKAGE}FILES+= exthdr.py \ mld.py \ diff --git a/tests/sys/netinet6/addr6.sh b/tests/sys/netinet6/addr6.sh new file mode 100755 index 000000000000..38e4bb152240 --- /dev/null +++ b/tests/sys/netinet6/addr6.sh @@ -0,0 +1,45 @@ +#!/usr/bin/env atf-sh +#- +# SPDX-License-Identifier: ISC +# +# Copyright (c) 2025 Lexi Winter. +# +# Permission to use, copy, modify, and distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +. $(atf_get_srcdir)/../common/vnet.subr + +atf_test_case "addr6_invalid_addr" "cleanup" +addr6_invalid_addr_head() +{ + atf_set descr "adding an invalid IPv6 address returns an error" + atf_set require.user root +} + +addr6_invalid_addr_body() +{ + vnet_init + + ep=$(vnet_mkepair) + atf_check -s exit:0 ifconfig ${ep}a inet6 2001:db8::1/128 + atf_check -s exit:1 -e ignore ifconfig ${ep}a inet6 2001:db8::1/127 alias +} + +addr6_invalid_addr_cleanup() +{ + vnet_cleanup +} + +atf_init_test_cases() +{ + atf_add_test_case "addr6_invalid_addr" +} From nobody Tue Apr 8 10:49:02 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rH17c5z5sCB5; Tue, 08 Apr 2025 10:49:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rG3v3Gz3jy5; Tue, 08 Apr 2025 10:49:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109342; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PTOVl4W4UPjeZjMx6K2HNT0C5aAxgDzMe+OupTAoFdY=; b=K8wmuplAgUztodh/s2qMt/SR14bts3Rw0lIeSaLjAJwhRD9xRdRz4lC60knzYzXbWHxlkh r96gf81NYQIDMYYjO8J8zRyWolgfXRpAfnrg9TzT5YtlXdCe+gIkmSU1sLpWfN0O8g0+e+ Z2fSRHVTtIAB+5VsVG0DquFakDLtSTfKnxNVFr2fAqRRko64i9NtRIH4Age1uzROOmwibD Gg76WvByATZ1hy5R4UqozTqMv/u0J/7+G2XWduv3H6nb3/lWddzJwKXaEeX2A1HSca8fZQ wfC9X0KnO/XsXTsg/LA1waZykIc15TUuNb+omO+QuMtiJ5lOtthzaVXyGBQHBw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109342; a=rsa-sha256; cv=none; b=bFC+UpVEqLS0K9rnub+ZMtPy0LunJ+yDNGPX8daTk6eve2bpUBkWUE+Zs1EBVoelOPP3ve zvKGHpgzxHTlQnjXM/DX7bW+WLqoLJiwmeVKUJFnawzzfJXS/Q08ylDaElmCyTY6D9JrXW p8mlz6NCqN+ZZcCa20aCExztivPBsMe074ctASLuaqLGMJoqgLAVxf5If/it34YIsIVe4B ZzpLwenqsGqSMl/1MjeSqY4TUby9u7DxMbUEcm1gOwrlLanYkAa/a0lyxC7VUyuH/+hlEW SBqbtPODt+2xpB4na8K1PntdIyoyh9oYvfGZlkVjQemuV1KRp3UwZgJyDjWNAw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109342; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PTOVl4W4UPjeZjMx6K2HNT0C5aAxgDzMe+OupTAoFdY=; b=FbEGdYMMRArQTyUgKruNNmC/dEwUw6VaQrHuSkajLbBQnQHNAkLK+b8JOkI75E2vOtQqpI j48rFxWmDeIgjL5QQJ30oCCXvz5obyHGnxbJqzxNVHbQFCdSh9VbH7N4dzO94XT/2Txuz8 Gex2hcenrS9GSDODQ/crUB44zB4dS+3YoIdswFx4+ztApZMocF8elUdj/SPxEWbTTpVS7N 95TD77dEw4gDgjg0ea7YRg3Cnm8eoNeHMdnOQLR9MNxF2bBaOLzFIPpOXmPnON9DrWRHQx n4zJ6MNPIPuq6UxvXL9f90e8pZ/+n1tWXcC897Fh1w5ltzyCLVfQe0r0fjyC2A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rG3HkDzCr7; Tue, 08 Apr 2025 10:49:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538An26G001760; Tue, 8 Apr 2025 10:49:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538An2Cg001757; Tue, 8 Apr 2025 10:49:02 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:02 GMT Message-Id: <202504081049.538An2Cg001757@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: d16397c1737f - main - WIP: Cross-build github action on for-main List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d16397c1737f5f977e893daebde0e7009d6a9950 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=d16397c1737f5f977e893daebde0e7009d6a9950 commit d16397c1737f5f977e893daebde0e7009d6a9950 Author: Andrew Turner AuthorDate: 2024-09-11 09:42:08 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:31:43 +0000 WIP: Cross-build github action on for-main --- .github/workflows/cross-bootstrap-tools.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cross-bootstrap-tools.yml b/.github/workflows/cross-bootstrap-tools.yml index 540e05cbd6e2..516374ab4c7b 100644 --- a/.github/workflows/cross-bootstrap-tools.yml +++ b/.github/workflows/cross-bootstrap-tools.yml @@ -2,7 +2,7 @@ name: Cross-build Kernel on: push: - branches: [ main, 'stable/14', 'stable/13' ] + branches: [ main, 'stable/14', 'stable/13', 'for-main' ] pull_request: branches: [ main ] workflow_dispatch: From nobody Tue Apr 8 10:49:03 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rH6pj9z5sCB6; Tue, 08 Apr 2025 10:49:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rH4g4Cz3kFG; Tue, 08 Apr 2025 10:49:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109343; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gcoqgp2ARNIvtisfht6LrG9SsZNhA7S8tqgwO7iFUqM=; b=hb4hOvtjH0vD8JtRDVhFZmUlv6QvO+tL0IrTTCI/bS+Om0h9bn3YUUJ6H6jVtPbeMHLcRg LKPZfYvP7/55DJPchogpSsk9GeNjRR6nS2k7OpnYJHcn5PCaj6Yl6j1HdMHLhik8RoQcwJ aoFPkn2xuyZmdmjp886PZeTvi+1eFoeMN+AM2WcQEkYDULbFu1MEHkG3uco8DUaCVqQb3L KHDKzOIC4vEwdWTVfwgjfR1ostszCZEhEf2BzHNtCuMn37Zh7wB3NX+TZE1lHyptTWZwRj +SvxJWhvKv0W/zVQPFk9qww70q/XPo1ySf3f14i2XHCpg1SDX6pPqF9XPWHqDQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109343; a=rsa-sha256; cv=none; b=AaP3sZAS8l8LPo8SPEBFkdWQa2uIe1gGWuEGefjH/ioaNedsFmq4r75T5dJitEaYGr9Yef rygBaJqPeGAsBF3B8QbkQ2+n4/vQCTuwwUbxAcThC2r44jspF94WzO8ROK+C4RTVS4NCUk AeJbvlkRVdoOp3eRDQti95PayJIXcZE+DNJ2GW/bgHEUtuHahoIrJQnIXD7ClfviFarY4e UUAjH+K3m3UrKcKbiKi9t/WHXJP9Ngbit+0kAjesFyh6LJBdjrmIy4hi7aSqKrRro7LTqR cV7eb/42up1HrRkkugjrWsEKUR8FT64PjdRxLYr9ih8k/ZS2jNyQuhcM8Eo1gw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109343; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gcoqgp2ARNIvtisfht6LrG9SsZNhA7S8tqgwO7iFUqM=; b=ygFqh8BJhCPL69ezPWAHX/J0Xq5pR8Q31oMnaHizQ154t611dqIKN1XiXIZ/gj5F+qkK8F paHsVERGVnMvljfBPIQFgWa9eMofNE4Sv2Co9zL0aiCzMfgNAcV68ylIPqoRYx8T9Acwbb 8TPdf9iu7T/N9MwJ680lcC29CQuZzkWWEmwlnsdKufjUJ5KVVJWnEMmtjT4bbNftPaTbrH MYnoHjEIyU5ZqbEKCvXBKWVNLOGFOUR71p1CPUKvuO/yktgkYyqD3uAwcRFd56wP5VaP2u TrfMn4eBMgAJ80eEpHapfERfolYcudEUrVsxlzeZxo3dFNNiGJv0fJnzMtgYeQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rH46MnzCZj; Tue, 08 Apr 2025 10:49:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538An3Ij001796; Tue, 8 Apr 2025 10:49:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538An3Eh001793; Tue, 8 Apr 2025 10:49:03 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:03 GMT Message-Id: <202504081049.538An3Eh001793@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 1c6170d77122 - main - git-arc: Add stage -n to not change the branch List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1c6170d7712265beecb318309ec5afaddbcf350e Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=1c6170d7712265beecb318309ec5afaddbcf350e commit 1c6170d7712265beecb318309ec5afaddbcf350e Author: Andrew Turner AuthorDate: 2025-01-13 05:34:24 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:31:43 +0000 git-arc: Add stage -n to not change the branch This can be useful when staging to a non-main branch --- tools/tools/git/git-arc.sh | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/tools/tools/git/git-arc.sh b/tools/tools/git/git-arc.sh index b49721159799..7d2387565b9a 100644 --- a/tools/tools/git/git-arc.sh +++ b/tools/tools/git/git-arc.sh @@ -654,11 +654,15 @@ gitarc__stage() local author branch commit commits diff reviewers title tmp branch=main - while getopts b: o; do + change_branch=yes + while getopts b:n o; do case "$o" in b) branch="$OPTARG" ;; + n) + change_branch=no + ;; *) err_usage ;; @@ -668,10 +672,12 @@ gitarc__stage() commits=$(build_commit_list "$@") - if [ "$branch" = "main" ]; then - git checkout -q main - else - git checkout -q -b "${branch}" main + if [ "$change_branch" = "yes" ]; then + if [ "$branch" = "main" ]; then + git checkout -q main + else + git checkout -q -b "${branch}" main + fi fi tmp=$(xmktemp) From nobody Tue Apr 8 10:49:04 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rK1YsBz5sCJn; Tue, 08 Apr 2025 10:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rJ5KrQz3kMc; Tue, 08 Apr 2025 10:49:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109344; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=suYxwsYTefx7ISz3Z+AicoThWlbPHrHGuXVaQ03tJHc=; b=AZQ2IliouQIEmJJZTpnwf9YS2DGaLNwteXRLq6grO5TiVCM4QCd+W2MZ8TcxxD9+st8SwA adgGOaqZmhVe1pGggJpKsLlXSqcM4J8hNx8wEPh1b9PvhiAQyNR9p3oO/5ZzHTUhSxPW7h tlwNxh0u30xWqvQEZOwutSszCGQvzABnHK2BkI9n7hOhoAdoSMMpEMDh8yPsSz1UHv01VB i3ofGqbrbkII/CnvDetXwk/JWwnkYN1iQfw7Lb2yhrG2//ysj6jxb4YORKhCKIvJ/HyTM1 1QwjzUdRKT2WXaYGUvY+ZAJCYuYmDQ4wTSi47zm4iyQN9Q5AzE+W7YZGb1OaLQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109344; a=rsa-sha256; cv=none; b=FfAsxVZkoSEmXbflWQitErAtZCFlyXtbcQc98OKzUSljCQqUkuddpPUv+yyZx7p6/DVEBM Dgq5khGFho4dMUS7QQXWGoCacb4LneqU0gmlmtb8Ork3dhcq/MAfwLOsG8kr2oHRBuKWK4 3D38qEV/lcnS0RCaKvmyySoL37X8IorN2Q76ZeiM2w+5w4Uuo2JxqHzKcpJHEm65zKBoTH 8YzxpxkvfaQWWde7gYfCAcKhZgK9B7NKm3VPJn0UFvJyJMchv1NrEWXg7YYVJJ6DXClkPn mgZHvGcWOWA+gSc2aezR6jgt4aBG97ieIRGNY0UU747wr9H4fXFabkouz17hnw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109344; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=suYxwsYTefx7ISz3Z+AicoThWlbPHrHGuXVaQ03tJHc=; b=iGD+2pxRtA+OWy5fOOgYfJBZJh5emWotYmpLGqg/RawlKrfE/s/LOrS0BpOaIUfbj05f29 gWaGU4odoenwr1K1l4Hlpa6TEh+L7o9NxamoBmbrJIpTsDJV3tM83W9GHdrWEEmWFlpQ06 EDbeDBWNDtyuTaElAYOtjFq835ywRAkPdNO0K3NVRKShbzkH3mIpv2vmdCT4wOkoEjBIst yHlZmmGjyALVKX750yDYnjZyJCfZYnvNg6WCegR4WuSJNeXuo0Eur6a8EM2fiEewIpqH7D 5WT6OaVz6qEWmcDbgLE655WpR71V7sOQGk6z6LuEn+acMQQUUn8xAMlcYBsC4Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rJ4lJczCZk; Tue, 08 Apr 2025 10:49:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538An4Bv001836; Tue, 8 Apr 2025 10:49:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538An4PQ001833; Tue, 8 Apr 2025 10:49:04 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:04 GMT Message-Id: <202504081049.538An4PQ001833@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 4ed2c3f9ce28 - main - WIP: Cross-user git arc stage List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4ed2c3f9ce28df401fc427bd60a8e3d9ecb40f4d Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=4ed2c3f9ce28df401fc427bd60a8e3d9ecb40f4d commit 4ed2c3f9ce28df401fc427bd60a8e3d9ecb40f4d Author: Andrew Turner AuthorDate: 2025-02-17 15:45:06 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:31:43 +0000 WIP: Cross-user git arc stage --- tools/tools/git/git-arc.sh | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/tools/tools/git/git-arc.sh b/tools/tools/git/git-arc.sh index 7d2387565b9a..9bee35831844 100644 --- a/tools/tools/git/git-arc.sh +++ b/tools/tools/git/git-arc.sh @@ -243,12 +243,18 @@ title2diff() local title title=$(echo $1 | sed 's/"/\\"/g') - arc_list --no-ansi | - awk -F': ' '{ - if (substr($0, index($0, FS) + length(FS)) == "'"$title"'") { - print substr($1, match($1, "D[1-9][0-9]*")) - } - }' + #arc_list --no-ansi | + # awk -F': ' '{ + # if (substr($0, index($0, FS) + length(FS)) == "'"$title"'") { + # print substr($1, match($1, "D[1-9][0-9]*")) + # } + # }' + + echo "{ + \"queryKey\": \"all\", + \"constraints\": { \"query\": \"title:${title}\" } }" | + arc_call_conduit -- differential.revision.search | + jq -r ".response.data[] | select(.fields.title=\"${title}\") | @text \"D\( .id )\"" } commit2diff() From nobody Tue Apr 8 10:49:05 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rL1dbMz5sCJp; Tue, 08 Apr 2025 10:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rK6Qsrz3kFL; Tue, 08 Apr 2025 10:49:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109345; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6YYpop6uyNhzcaug8msiYTzO90Jjsp0amjWM+8k3DdI=; b=LM2vmIqyihMwovBvdUAmE17KwdDXzLdfuWSJ+rDToPcw+KU4s0XUKOwT5YBYzSkBU1d5oH QkRW1/ox4jKXGUfPb6qzArVcOXjngKKEBvv01flTcdjdQ8l7IpU4ysJh6udo2y4wTtC8/K +fDMK72PUKJLN7zRMUjUp2Hbk3bm5AXSa34g612P/kE0QOSFQhMT8yALFyMVae/qvyrTqd os7rGPwlAiQ5W/91iNclX5rt2iT4YWEzSOen57+bVGpx0EGzVumEQilSAd1aXAb9OMCV4P YFyzSmXuB9NjRkdG/e1PGneEo0QcyZloUCcFgekYPPKHlzOWBUoKiPWklfLduA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109345; a=rsa-sha256; cv=none; b=sl/YI/sk92m05UckFr2lypRWfbR3+Qks0PCpEbVqHNsBQhDMfYt1yVmIqrqF/tfjj3sm1D FonmTnNKne9ZJ+H6U1AgWzYk0SpC9wMHvlmX32Qz4wLWxTLh1bACgu7l61zzhfzHppih59 m0lDOyDgniLOYEYIAiqBj6ZYGlkbqynXPsRGL914tyL2jwHiqqTLdEIEPwkK/T/6ANJs/J inBNS1hA0xM44ByoFzDW0jERJbc1NMHvfRcJH1rzDSvcaz6RnJKwu9dlXXe4KqLpfX2gfa VJeTURHf5sX8x+fz65J09cU3H0Yu6weluHbhtmAZuWccsiB5ZiRkxz+A9ElULg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109345; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6YYpop6uyNhzcaug8msiYTzO90Jjsp0amjWM+8k3DdI=; b=LJE06NU5qzJO377VPloVmCW5ht5osH1OADeAZyD97MAPFa2gsNq4RkIFl2Q9OhJpob/TM5 q8+RAyLg6r31kC50+wyTuoYUl9Ve/34yd0/kJenED3H1GogsQwnyLi4iQuOMneJOo19U6g IuOdHttIgaOsMCd5RpdaKGcu/MS3cjAiYld9rZVI/8t+hsTV753+Xd7nsQu8PoLyOgmVf4 psF3sXB24w30v1QXOxOwMRGxF8WpG43sQLA06EGLV73wCD1Rj17A/lqEGL6wQ4por5vaE+ AwZojB55DmZ1YEgtPmXxAL/xhwUNBo1pdpKhofurPtPx9xYbErpka9Y8rTl+Tw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rK616czCXb; Tue, 08 Apr 2025 10:49:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538An5wd001871; Tue, 8 Apr 2025 10:49:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538An5ac001868; Tue, 8 Apr 2025 10:49:05 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:05 GMT Message-Id: <202504081049.538An5ac001868@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 451f0333b707 - main - sys: Make the iommu xref uintptr_t List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 451f0333b707642b4ffd88b7527fb7c401a6b3ef Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=451f0333b707642b4ffd88b7527fb7c401a6b3ef commit 451f0333b707642b4ffd88b7527fb7c401a6b3ef Author: Andrew Turner AuthorDate: 2025-04-08 10:48:22 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:48:22 +0000 sys: Make the iommu xref uintptr_t On arm64 we use the iommu base address as an xref. This fails when the address has the lower 32-bits in common with another iommu as they will share an xref. Reviewed by: kib Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D48726 --- sys/arm64/acpica/acpi_iort.c | 4 ++-- sys/arm64/iommu/smmu.c | 4 ++-- sys/dev/acpica/acpivar.h | 7 ++++--- sys/dev/pci/pci_host_generic_acpi.c | 3 ++- sys/dev/pci/pci_host_generic_fdt.c | 2 +- sys/dev/pci/pcivar.h | 2 +- 6 files changed, 12 insertions(+), 10 deletions(-) diff --git a/sys/arm64/acpica/acpi_iort.c b/sys/arm64/acpica/acpi_iort.c index a0e24788b775..a180dc1a2a2c 100644 --- a/sys/arm64/acpica/acpi_iort.c +++ b/sys/arm64/acpica/acpi_iort.c @@ -630,7 +630,7 @@ acpi_iort_map_pci_msi(u_int seg, u_int rid, u_int *xref, u_int *devid) } int -acpi_iort_map_pci_smmuv3(u_int seg, u_int rid, u_int *xref, u_int *sid) +acpi_iort_map_pci_smmuv3(u_int seg, u_int rid, uint64_t *xref, u_int *sid) { ACPI_IORT_SMMU_V3 *smmu; struct iort_node *node; @@ -672,7 +672,7 @@ acpi_iort_map_named_msi(const char *devname, u_int rid, u_int *xref, } int -acpi_iort_map_named_smmuv3(const char *devname, u_int rid, u_int *xref, +acpi_iort_map_named_smmuv3(const char *devname, u_int rid, uint64_t *xref, u_int *devid) { ACPI_IORT_SMMU_V3 *smmu; diff --git a/sys/arm64/iommu/smmu.c b/sys/arm64/iommu/smmu.c index a832f6a6ec70..ec8e04ce117b 100644 --- a/sys/arm64/iommu/smmu.c +++ b/sys/arm64/iommu/smmu.c @@ -1781,7 +1781,7 @@ smmu_set_buswide(device_t dev, struct smmu_domain *domain, } static int -smmu_pci_get_sid(device_t child, u_int *xref0, u_int *sid0) +smmu_pci_get_sid(device_t child, uintptr_t *xref0, u_int *sid0) { struct pci_id_ofw_iommu pi; int err; @@ -1945,7 +1945,7 @@ static int smmu_find(device_t dev, device_t child) { struct smmu_softc *sc; - u_int xref; + uintptr_t xref; int err; sc = device_get_softc(dev); diff --git a/sys/dev/acpica/acpivar.h b/sys/dev/acpica/acpivar.h index d35504127c9c..106ec9038820 100644 --- a/sys/dev/acpica/acpivar.h +++ b/sys/dev/acpica/acpivar.h @@ -614,12 +614,13 @@ bus_get_cpus_t acpi_get_cpus; * ARM specific ACPI interfaces, relating to IORT table. */ int acpi_iort_map_pci_msi(u_int seg, u_int rid, u_int *xref, u_int *devid); -int acpi_iort_map_pci_smmuv3(u_int seg, u_int rid, u_int *xref, u_int *devid); +int acpi_iort_map_pci_smmuv3(u_int seg, u_int rid, uint64_t *xref, + u_int *devid); int acpi_iort_its_lookup(u_int its_id, u_int *xref, int *pxm); int acpi_iort_map_named_msi(const char *devname, u_int rid, u_int *xref, u_int *devid); -int acpi_iort_map_named_smmuv3(const char *devname, u_int rid, u_int *xref, - u_int *devid); +int acpi_iort_map_named_smmuv3(const char *devname, u_int rid, + uint64_t *xref, u_int *devid); #endif #endif /* _KERNEL */ #endif /* !_ACPIVAR_H_ */ diff --git a/sys/dev/pci/pci_host_generic_acpi.c b/sys/dev/pci/pci_host_generic_acpi.c index f12632e7205b..324ead5e8b87 100644 --- a/sys/dev/pci/pci_host_generic_acpi.c +++ b/sys/dev/pci/pci_host_generic_acpi.c @@ -411,7 +411,8 @@ generic_pcie_get_iommu(device_t pci, device_t child, uintptr_t *id) { struct generic_pcie_acpi_softc *sc; struct pci_id_ofw_iommu *iommu; - u_int iommu_sid, iommu_xref; + uint64_t iommu_xref; + u_int iommu_sid; uintptr_t rid; int err; diff --git a/sys/dev/pci/pci_host_generic_fdt.c b/sys/dev/pci/pci_host_generic_fdt.c index 73c6201dc14b..ffe63b82a234 100644 --- a/sys/dev/pci/pci_host_generic_fdt.c +++ b/sys/dev/pci/pci_host_generic_fdt.c @@ -367,7 +367,7 @@ generic_pcie_get_iommu(device_t pci, device_t child, uintptr_t *id) { struct pci_id_ofw_iommu *iommu; uint32_t iommu_rid; - uint32_t iommu_xref; + phandle_t iommu_xref; uint16_t pci_rid; phandle_t node; int err; diff --git a/sys/dev/pci/pcivar.h b/sys/dev/pci/pcivar.h index 14cb577dbedf..d1b7d28eae91 100644 --- a/sys/dev/pci/pcivar.h +++ b/sys/dev/pci/pcivar.h @@ -122,8 +122,8 @@ struct pcicfg_msix { }; struct pci_id_ofw_iommu { + uintptr_t xref; uint32_t id; - uint32_t xref; }; /* Interesting values for HyperTransport */ From nobody Tue Apr 8 10:49:06 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rM1h03z5sC3g; Tue, 08 Apr 2025 10:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rM0GBQz3kMg; Tue, 08 Apr 2025 10:49:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109347; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WqyRQfzDdRcvAgoLLjMHTI/6JQQeYh30yXtoDEIEJi0=; b=tlaTmoWM9qbGMX8CtfHZsHkKpxbbdYH5glAGT7C1MILv+668n4mBZWCTSJZlsPPfFRzd2u 0DARxrsQjyjlbfRCq3uTUajjK7hhwFZK8WxDGYa1h+UpxhPCGyIZr6g6B0PZKilFJcfCH9 XTq+fYlL/U4B3edyd4xXlpP3LoZqpRh0LWlPqJXn81U4gN6aSYd8GxEoC6zbyZONS7ETsM 3OkhMARCZ2A6Vll32v3xEcDP573uMSnzcsxnRFctl1nR4o+lokpsxH+vdffrniEBAFsUhY sagurZx3pEJ60HYIWMq98ku1POP68c0Bj3opVpO0pA4sxekRAYIwu9ebb3oQvw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109347; a=rsa-sha256; cv=none; b=QWiobd8XIGY0QTr4iGuyMFP9gkEC0Q3A9Gbkv4+y4mD/IdKYcFi6ENfJn5FRnpLpkSrQs5 f3mf2xUmVaVO2zHyej4B2B+kozQ9cIrU1UtQUELP6WW9ajJeln7rGvmX5zhA+YuShH4deh gVntODt1ARAwIs45AcALmTW7QiWTAZ9juv/s7CDG/BmZwnWpQ0D6HnLGEAsiQqQ4hrnItX SC6TiRwzr3XLssp7WVh/ldd0BsRyXORB8EU1/ALimdAZBpjVLvONK+3EZhAuyI0xpyeqM6 8gA6QO6JIc0x9w32bPHyL6ZBQBdClC/JWSySl+ksDmPGtFTni19TVLh1fXSqyg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109347; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WqyRQfzDdRcvAgoLLjMHTI/6JQQeYh30yXtoDEIEJi0=; b=brJoOoge8JeDqpbXAfCpVECuwzdvRT4CzEoEH5jl83DlR6GZfubMCKypNWyNQ+2Y3F1CEu hmEYon8V+/mBwQ5bAk9sLM6HvCZ5zC/10hw8GUtBke+tsspCvU/9BYe5l6lsrBCk2OO/gP 8Ivz8NBsbhXgmb7wFs2CbcUcOpa/ct/rn+VKfB0NagZFrMTJ0o7p24TI26bAPHsPslbrYg eTZkK33OHmF5vV5Ibrcp2NDnfViWsg+v+ySePfccpSoauM1JDi+PBHi4l3QYhhklVBGwGh lwE1dStO09SMNvYjSrXWF/14xd3Vv9zr1uQIlegGpgFNe7zzLP/QlQtndcPRHw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rL6yFWzCdJ; Tue, 08 Apr 2025 10:49:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538An61Y001920; Tue, 8 Apr 2025 10:49:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538An6lE001917; Tue, 8 Apr 2025 10:49:06 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:06 GMT Message-Id: <202504081049.538An6lE001917@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: fd9f67e689e8 - main - virtio_p9fs: Support attaching to pci and mmio List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fd9f67e689e83f20e29edf63cc6488402de5901c Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=fd9f67e689e83f20e29edf63cc6488402de5901c commit fd9f67e689e83f20e29edf63cc6488402de5901c Author: Andrew Turner AuthorDate: 2025-04-08 10:27:20 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:48:27 +0000 virtio_p9fs: Support attaching to pci and mmio Some implementations of the virtio 9p transport are implemented on virtio_mmio, e.g. the Arm FVP. Use the correct macro so the driver attaches when this is the case. Reviewed by: markj Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D49600 --- sys/dev/virtio/p9fs/virtio_p9fs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/virtio/p9fs/virtio_p9fs.c b/sys/dev/virtio/p9fs/virtio_p9fs.c index 1fdeeaae2a96..aa84d3970698 100644 --- a/sys/dev/virtio/p9fs/virtio_p9fs.c +++ b/sys/dev/virtio/p9fs/virtio_p9fs.c @@ -488,7 +488,7 @@ vt9p_modevent(module_t mod, int type, void *unused) return (error); } -DRIVER_MODULE(virtio_p9fs, virtio_pci, vt9p_drv, vt9p_modevent, 0); +VIRTIO_DRIVER_MODULE(virtio_p9fs, vt9p_drv, vt9p_modevent, NULL); MODULE_VERSION(virtio_p9fs, 1); MODULE_DEPEND(virtio_p9fs, virtio, 1, 1, 1); MODULE_DEPEND(virtio_p9fs, p9fs, 1, 1, 1); From nobody Tue Apr 8 10:49:08 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rP1zTNz5sCB8; Tue, 08 Apr 2025 10:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rN2zQ3z3kH9; Tue, 08 Apr 2025 10:49:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109348; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MhMbgLrvcfgJfZb36ugAIOz5ISa9JFt0tuIzAx2bN+E=; b=LPCUiKDM6ZGvM880XFlp3+3J8fLeEw3fFBYLBWvPjH5TdNvhczQbo45MuMnHoYsC9m4yHF nc546paKVh330WWylDN4Vt1AjERs/4ihMQwJhycd9snxcL3mGqo9MwUobofqJntgv25Pcg JlerdfZF+KY70iorsPda1VLKTO334e2ZjbI4S128LKwo75uPZu0eHKKLbrr9Jpt+NLSei+ VqQNeu48/pUVt8piIUDbJ4lCdORH8ADXxrJz9MaBb2piHi1cHF6/XEHiOXG2e/kvP3OkoA w1Pd0W1R4+vx2s/+GPOTfYlxRk5y8kYi1VKq6BMUgZ5DmQdc0scSqwBUbWyajg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109348; a=rsa-sha256; cv=none; b=BiFxF9fUDQBZWzneAzAOpyUz2fDtvC5HwSeloP6Eb0+ttAxh1xPUrCsI4GcgdqOApvFHMd sXR3vxJ0FkETb3sncJMDfreADU+Nf9Y+FlF8i+dECNIQEbMLUlYtc8hqf86OdG7MgfaaIe vDZZ/oRXDv8d19dG26fzBU8yXF/aJg/ix3B6Rt+pq345pPNXxmmlCB0bfzenMa9OcZAtf7 Lnj2iZZyKT5gFxeRp67mUqjVTgM9HqhbIWluOpKWVJMfMgcXwOEeezeWSd+6BDNyVGtk/o 8IlA+UfpzgJFrqi3P9rvWTQAF+epZs1nFU5mIu4birmOm8/2zMT8xIIL4PKIzg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109348; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MhMbgLrvcfgJfZb36ugAIOz5ISa9JFt0tuIzAx2bN+E=; b=x/Lkp5jY51LDC48tBofjoARPuHKuk5muzgnfqMFpintzZpCCSoHstceyag2KMAn57yiqpX 1B0RHFPrBVK80Egq3iO76a1YwnDd6cMkXbadTXj3Gu3SlSBZ9DaQ9Tl6sLCZNTPJ/VUsMo pPnbwXs8bM0MiuN/MEfjGz/nsNOtUrvYo/RWvj9sOJEmUqBk8p8RV6MSxa/J76a8wrwEh2 D6ve/yiQmLp3jEX1zOPi5ZX99jf9SigDSfRZn7/zkgz/RvJgHHjricGNxsmcXE34QUsdP9 ptd7MkvZJ1Tqh7QkIPY9VaPaAz6Xd07S8dOQ4KxQnCvMztR6CpalcEl7sd2cTQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rN0nBlzCdK; Tue, 08 Apr 2025 10:49:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538An8I9001953; Tue, 8 Apr 2025 10:49:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538An8OU001950; Tue, 8 Apr 2025 10:49:08 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:08 GMT Message-Id: <202504081049.538An8OU001950@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 0593e4110639 - main - dev/fdt: Add fdt_foreach_mem_region List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0593e4110639d1a84bd7fd785f056998fe8df7e8 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=0593e4110639d1a84bd7fd785f056998fe8df7e8 commit 0593e4110639d1a84bd7fd785f056998fe8df7e8 Author: Andrew Turner AuthorDate: 2025-04-08 10:30:09 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:48:27 +0000 dev/fdt: Add fdt_foreach_mem_region This is used early in the boot to find physical memory. Previously it needed an array of memory regions to be passed in. We keep finding hardware where this array is too small causing the kernel to smash the stack. Replace with a function that takes a callback that can insert the memory into the physical map directly. Reviewed by: imp Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D49697 --- sys/dev/fdt/fdt_common.c | 47 +++++++++++++++++++++++++++++++++++++++++++++++ sys/dev/fdt/fdt_common.h | 3 +++ 2 files changed, 50 insertions(+) diff --git a/sys/dev/fdt/fdt_common.c b/sys/dev/fdt/fdt_common.c index 85d9061759c4..6c505ac2cd7c 100644 --- a/sys/dev/fdt/fdt_common.c +++ b/sys/dev/fdt/fdt_common.c @@ -540,6 +540,53 @@ fdt_get_reserved_mem(struct mem_region *reserved, int *mreserved) return (0); } +int +fdt_foreach_mem_region(fdt_mem_region_cb cb, void *arg) +{ + struct mem_region mr; + pcell_t reg[FDT_REG_CELLS * FDT_MEM_REGIONS]; + pcell_t *regp; + phandle_t memory; + int addr_cells, size_cells; + int i, reg_len, rv, tuple_size, tuples; + + memory = OF_finddevice("/memory"); + if (memory == -1) + return (ENXIO); + + if ((rv = fdt_addrsize_cells(OF_parent(memory), &addr_cells, + &size_cells)) != 0) + return (rv); + + if (addr_cells > 2) + return (ERANGE); + + tuple_size = sizeof(pcell_t) * (addr_cells + size_cells); + reg_len = OF_getproplen(memory, "reg"); + if (reg_len <= 0 || reg_len > sizeof(reg)) + return (ERANGE); + + if (OF_getprop(memory, "reg", reg, reg_len) <= 0) + return (ENXIO); + + tuples = reg_len / tuple_size; + regp = (pcell_t *)® + for (i = 0; i < tuples; i++) { + + rv = fdt_data_to_res(regp, addr_cells, size_cells, + (u_long *)&mr.mr_start, (u_long *)&mr.mr_size); + + if (rv != 0) + return (rv); + + cb(&mr, arg); + + regp += addr_cells + size_cells; + } + + return (0); +} + int fdt_get_mem_regions(struct mem_region *mr, int *mrcnt, uint64_t *memsize) { diff --git a/sys/dev/fdt/fdt_common.h b/sys/dev/fdt/fdt_common.h index d19dc5c359a7..f450d976dfe0 100644 --- a/sys/dev/fdt/fdt_common.h +++ b/sys/dev/fdt/fdt_common.h @@ -76,11 +76,14 @@ extern u_char fdt_static_dtb; SYSCTL_DECL(_hw_fdt); +typedef void (*fdt_mem_region_cb)(const struct mem_region *, void *); + int fdt_addrsize_cells(phandle_t, int *, int *); u_long fdt_data_get(void *, int); int fdt_data_to_res(pcell_t *, int, int, u_long *, u_long *); phandle_t fdt_find_compatible(phandle_t, const char *, int); phandle_t fdt_depth_search_compatible(phandle_t, const char *, int); +int fdt_foreach_mem_region(fdt_mem_region_cb, void *); int fdt_get_mem_regions(struct mem_region *, int *, uint64_t *); int fdt_get_reserved_mem(struct mem_region *, int *); int fdt_get_reserved_regions(struct mem_region *, int *); From nobody Tue Apr 8 10:49:09 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rQ0kx4z5sC8m; Tue, 08 Apr 2025 10:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rP3qYWz3kHR; Tue, 08 Apr 2025 10:49:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109349; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nYWqCnQS8wdFh8w+7EzOEoMwK5vgKBJkGDpcD2IijdM=; b=hbEDcuyPon8MekguGxJUPJyyJ4ayiYliIURtgi+khIPHVDa9mI3Ua2D+hXDqq48OzI4niz p55TA/wpUGIUxMCR4CovRVa11OLkjTGYUP7fnUUw0C+T1X3nrEW7n502fYKwPLqpE5GHH1 y8sgYpupt5aP0opbUU+w9Tdh3Z7blgyhjjEhTVj6i2wRH2bj9Vq/Dox5FtYcEAdESTkSil VTj1PSD0PgFpaPWq4pCQbAhv/m7WX4/fmk+k/+4LpJRkr6d15vDfPROllXUx9LHb2YN5Bu 9qDxnSGjSLgdq9RHhGjb+ii7YGsIqNm766jUrl9I98tGBu7I88iS6E+E7ouM9g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109349; a=rsa-sha256; cv=none; b=UCzJ0MUybRwcm/7zYYbqI5H5UWcWOuKoZH+8zFnXLCNIKa1bxJdRN8Eo3A1mXn0KG9zZfj NBhqTXQUh24jY5bXaUvlyW9EXEK+DG/s27NTd2cQwaiUAgQt9XRGnDPF3HKLtB3GVZ5+5w idiMxYGemNMZxaCb2ObMzxSAHg9phby+4JJqA5VPG4RLbwRTgtR4TakciRl0mpRvsvRwrD NeFa158h7nR8Do9KCR6tGvTJOkLuXR7m6kCxdbUKHCda3VxPRpQDPqxycKJZ3+tHWUpgdY /jPq68t+C4nKFhKKp1OQOO1nDuE8ggFaApvmyf7j+M5hjxyUQOpkIbfzEP3mPQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109349; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nYWqCnQS8wdFh8w+7EzOEoMwK5vgKBJkGDpcD2IijdM=; b=c64Sv5Jo3o+ROO9SoHbO5hbHUzo+D5NwkPi9S5kLsMGCrdYZE4d1Drsxhdwxm8FPCM2Axk 45E//a2NBcspX2GjjDNJxOB+aj5R9EyGUNFTf+s//vcz9DGS9HOGhCP9X7BRawrmWombQw g0xh9Pii8u4KMtsqUzL38Tx9HD2y0FljCXK4uHJ68WmNd+qmAgXESrEpisHzbYtkFFEO98 tvGbZ5lu+tfHHv0DCj5j/tG1gu526a0hLwimFo57sNWwLm2Ox+QFnTfScffpsGJVcNixgN wXC9tX89ctIjP/TKZISkqOPjODWyL08167z/3SuYLRCucm8/jA1BULVxt7zoNg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rP1ZzqzCZl; Tue, 08 Apr 2025 10:49:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538An9Bm001988; Tue, 8 Apr 2025 10:49:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538An9mM001985; Tue, 8 Apr 2025 10:49:09 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:09 GMT Message-Id: <202504081049.538An9mM001985@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 8d5b63efd19c - main - dev/fdt: Add fdt_foreach_reserved_mem List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8d5b63efd19c9395eb9519145be4ba02406dc9b3 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=8d5b63efd19c9395eb9519145be4ba02406dc9b3 commit 8d5b63efd19c9395eb9519145be4ba02406dc9b3 Author: Andrew Turner AuthorDate: 2025-04-08 10:30:17 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:48:28 +0000 dev/fdt: Add fdt_foreach_reserved_mem As with fdt_foreach_mem_region add a function that calls a callback for each reserved memory region. This allows us to exclude this memory from the physical map in a way that is safe from overflowing a fixed array on the stack. Reviewed by: imp Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D49698 --- sys/dev/fdt/fdt_common.c | 38 ++++++++++++++++++++++++++++++++++++++ sys/dev/fdt/fdt_common.h | 1 + 2 files changed, 39 insertions(+) diff --git a/sys/dev/fdt/fdt_common.c b/sys/dev/fdt/fdt_common.c index 6c505ac2cd7c..e23878750bea 100644 --- a/sys/dev/fdt/fdt_common.c +++ b/sys/dev/fdt/fdt_common.c @@ -499,6 +499,44 @@ out: return (rv); } +int +fdt_foreach_reserved_mem(fdt_mem_region_cb cb, void *arg) +{ + struct mem_region mr; + pcell_t reg[FDT_REG_CELLS]; + phandle_t child, root; + int addr_cells, size_cells; + int rv; + + root = OF_finddevice("/reserved-memory"); + if (root == -1) + return (ENXIO); + + if ((rv = fdt_addrsize_cells(root, &addr_cells, &size_cells)) != 0) + return (rv); + + if (addr_cells + size_cells > FDT_REG_CELLS) + panic("Too many address and size cells %d %d", addr_cells, + size_cells); + + for (child = OF_child(root); child != 0; child = OF_peer(child)) { + if (!OF_hasprop(child, "no-map")) + continue; + + rv = OF_getprop(child, "reg", reg, sizeof(reg)); + if (rv <= 0) + /* XXX: Does a no-map of a dynamic range make sense? */ + continue; + + fdt_data_to_res(reg, addr_cells, size_cells, + (u_long *)&mr.mr_start, (u_long *)&mr.mr_size); + + cb(&mr, arg); + } + + return (0); +} + int fdt_get_reserved_mem(struct mem_region *reserved, int *mreserved) { diff --git a/sys/dev/fdt/fdt_common.h b/sys/dev/fdt/fdt_common.h index f450d976dfe0..d1db7c0620fd 100644 --- a/sys/dev/fdt/fdt_common.h +++ b/sys/dev/fdt/fdt_common.h @@ -85,6 +85,7 @@ phandle_t fdt_find_compatible(phandle_t, const char *, int); phandle_t fdt_depth_search_compatible(phandle_t, const char *, int); int fdt_foreach_mem_region(fdt_mem_region_cb, void *); int fdt_get_mem_regions(struct mem_region *, int *, uint64_t *); +int fdt_foreach_reserved_mem(fdt_mem_region_cb, void *); int fdt_get_reserved_mem(struct mem_region *, int *); int fdt_get_reserved_regions(struct mem_region *, int *); int fdt_get_phyaddr(phandle_t, device_t, int *, void **); From nobody Tue Apr 8 10:49:11 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rS18GTz5sCF6; Tue, 08 Apr 2025 10:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rR3N0bz3kWD; Tue, 08 Apr 2025 10:49:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109351; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WL/K+Ec4608T00QXJsmpc8eiDQcgx5smNPSDT2KB/PY=; b=gfTID9CtHKvJ5bcYUhRyUE0uJI9aTOpmjFHX+NNGxEbfcvg5Aoq/CmrjHdtjavGujdnTwO GMLChk6XA7IhWQ84ZPsNQBdGdnd0qc/I+ixTBx1zS9Vd1FMNRaQkIyHUAapRgQnLT7O88b H2ewwN1QseeL9VCVwnUSCYq4ItqcLo+UCIEnnBv9y4zkoirVKPmTq4Mour5Ei5RKntRhRk Tf8ACAQGBVRnviQ3XFXT2wYt0ondA+16WbQ5XEk3IQk1wb19nWfPwlAyMqf03h8PD35Ktq tylZdP6iO08Fh5chK/Fyg8pdyxbttljtQZKXgwbdQZm+QLZNrdHyEWQWHLfqag== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109351; a=rsa-sha256; cv=none; b=hq6zt2s32QQOLRNsXdYhaHDqv/FvMPPSKfgwaoH5/5oYzl3inGthuHPUs0sp/LCUbf88pB 3E1B4m3vmhjDZLj734uUHzejhmI7U/b1hYhFDHffFDIbu+7bn0lozUa1XmE0TJejRCAEPM jR1UCZPnj00XCGKzBQOUpxw6TvacI9cTJ2ejWv1swCynCFA/y4WJcAnURUQ3O0SRFI3+aN hglQcVjAhn1Imc/3jpsX6OLU7KBfL9VD5H0TElhSHeAg7oqXuucAfOlDpTYr1Q6XMY8Y2e REOR1sPIGhnwkTDN0OE6UpfWRpMWEXmFoaMLUB1ue6f57nnUcI8jeWp62hFeDQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109351; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WL/K+Ec4608T00QXJsmpc8eiDQcgx5smNPSDT2KB/PY=; b=pe4bOrNzUwHRGd/cIF8aQIC+b/T0FmwfzImzdqkyInlPrPma2sQ6js7kOZ3dhRhPRKCNaF 0QJZzg+eo2v0naX5aTOc/Tb5+A54Wfkp/D6OiOGPEhBpElkwH+Thfmkh5tMcpxtRZs8Lq+ qT+6CjPfF01Tsc7b+g7diQ75VZ8kN9iaA+H+YVIKjQSN1oBrbItEO6Oupq+4nSMiVxrWje gn0pQVAp3kOftSKYgCTvqSuf8icRAU83OZ/S1hZAt0DCAPmT0YwO8VleM6yi8vpKAuXJN1 WclRnZLtRTPRQMh4iexr852qyHyifMqao1yZJul2w99nsdI6mKIF0VX9HOHKnA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rR2sMwzCXc; Tue, 08 Apr 2025 10:49:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538AnBns002058; Tue, 8 Apr 2025 10:49:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538AnBRE002055; Tue, 8 Apr 2025 10:49:11 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:11 GMT Message-Id: <202504081049.538AnBRE002055@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 02ecd34fde77 - main - sys: Use fdt_foreach on arm, arm64, and riscv List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 02ecd34fde778dd5d73bd3ba3de24aa853734ac9 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=02ecd34fde778dd5d73bd3ba3de24aa853734ac9 commit 02ecd34fde778dd5d73bd3ba3de24aa853734ac9 Author: Andrew Turner AuthorDate: 2025-04-08 10:30:33 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:48:28 +0000 sys: Use fdt_foreach on arm, arm64, and riscv This means we can remove the fixed mem_regions array. Reviewed by: imp Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D49700 --- sys/arm/arm/machdep.c | 26 +++++++++++++------ sys/arm64/arm64/machdep.c | 24 ++++++++++++------ sys/riscv/riscv/machdep.c | 63 ++++++++++++++++++++++++++++++----------------- 3 files changed, 76 insertions(+), 37 deletions(-) diff --git a/sys/arm/arm/machdep.c b/sys/arm/arm/machdep.c index 31f888313d59..7db5a6f9bcdd 100644 --- a/sys/arm/arm/machdep.c +++ b/sys/arm/arm/machdep.c @@ -415,14 +415,26 @@ arm_kdb_init(void) } #ifdef FDT +static void +fdt_physmem_hardware_region_cb(const struct mem_region *mr, void *arg __unused) +{ + physmem_hardware_region(mr->mr_start, mr->mr_size); +} + +static void +fdt_physmem_exclude_region_cb(const struct mem_region *mr, void *arg __unused) +{ + physmem_exclude_region(mr->mr_start, mr->mr_size, + EXFLAG_NODUMP | EXFLAG_NOALLOC); +} + void * initarm(struct arm_boot_params *abp) { - struct mem_region mem_regions[FDT_MEM_REGIONS]; vm_paddr_t lastaddr; vm_offset_t dtbp, kernelstack, dpcpu; char *env; - int err_devmap, mem_regions_sz; + int err_devmap; phandle_t root; char dts_version[255]; #ifdef EFI @@ -469,15 +481,13 @@ initarm(struct arm_boot_params *abp) #endif { /* Grab physical memory regions information from device tree. */ - if (fdt_get_mem_regions(mem_regions, &mem_regions_sz,NULL) != 0) + if (fdt_foreach_mem_region(fdt_physmem_hardware_region_cb, + NULL) != 0) panic("Cannot get physical memory regions"); - physmem_hardware_regions(mem_regions, mem_regions_sz); - /* Grab reserved memory regions information from device tree. */ - if (fdt_get_reserved_regions(mem_regions, &mem_regions_sz) == 0) - physmem_exclude_regions(mem_regions, mem_regions_sz, - EXFLAG_NODUMP | EXFLAG_NOALLOC); + fdt_foreach_reserved_region(fdt_physmem_exclude_region_cb, + NULL); } /* diff --git a/sys/arm64/arm64/machdep.c b/sys/arm64/arm64/machdep.c index 93343a1972af..6184ce937b8a 100644 --- a/sys/arm64/arm64/machdep.c +++ b/sys/arm64/arm64/machdep.c @@ -722,6 +722,21 @@ memory_mapping_mode(vm_paddr_t pa) return (VM_MEMATTR_DEVICE); } +#ifdef FDT +static void +fdt_physmem_hardware_region_cb(const struct mem_region *mr, void *arg __unused) +{ + physmem_hardware_region(mr->mr_start, mr->mr_size); +} + +static void +fdt_physmem_exclude_region_cb(const struct mem_region *mr, void *arg __unused) +{ + physmem_exclude_region(mr->mr_start, mr->mr_size, + EXFLAG_NODUMP | EXFLAG_NOALLOC); +} +#endif + void initarm(struct arm64_bootparams *abp) { @@ -729,8 +744,6 @@ initarm(struct arm64_bootparams *abp) struct pcpu *pcpup; char *env; #ifdef FDT - struct mem_region mem_regions[FDT_MEM_REGIONS]; - int mem_regions_sz; phandle_t root; char dts_version[255]; #endif @@ -781,14 +794,11 @@ initarm(struct arm64_bootparams *abp) #ifdef FDT else { /* Grab physical memory regions information from device tree. */ - if (fdt_get_mem_regions(mem_regions, &mem_regions_sz, + if (fdt_foreach_mem_region(fdt_physmem_hardware_region_cb, NULL) != 0) panic("Cannot get physical memory regions"); - physmem_hardware_regions(mem_regions, mem_regions_sz); } - if (fdt_get_reserved_mem(mem_regions, &mem_regions_sz) == 0) - physmem_exclude_regions(mem_regions, mem_regions_sz, - EXFLAG_NODUMP | EXFLAG_NOALLOC); + fdt_foreach_reserved_mem(fdt_physmem_exclude_region_cb, NULL); #endif /* Exclude the EFI framebuffer from our view of physical memory. */ diff --git a/sys/riscv/riscv/machdep.c b/sys/riscv/riscv/machdep.c index fea4ca9a7b92..516dbde5ffaa 100644 --- a/sys/riscv/riscv/machdep.c +++ b/sys/riscv/riscv/machdep.c @@ -506,13 +506,46 @@ parse_metadata(void) return (lastaddr); } +#ifdef FDT +static void +fdt_physmem_hardware_region_cb(const struct mem_region *mr, void *arg) +{ + bool *first = arg; + + physmem_hardware_region(mr->mr_start, mr->mr_size); + + if (*first) { + /* + * XXX: Unconditionally exclude the lowest 2MB of physical + * memory, as this area is assumed to contain the SBI firmware, + * and this is not properly reserved in all cases (e.g. in + * older firmware like BBL). + * + * This is a little fragile, but it is consistent with the + * platforms we support so far. + * + * TODO: remove this when the all regular booting methods + * properly report their reserved memory in the device tree. + */ + physmem_exclude_region(mr->mr_start, L2_SIZE, + EXFLAG_NODUMP | EXFLAG_NOALLOC); + *first = false; + } +} + +static void +fdt_physmem_exclude_region_cb(const struct mem_region *mr, void *arg __unused) +{ + physmem_exclude_region(mr->mr_start, mr->mr_size, + EXFLAG_NODUMP | EXFLAG_NOALLOC); +} +#endif + void initriscv(struct riscv_bootparams *rvbp) { - struct mem_region mem_regions[FDT_MEM_REGIONS]; struct efi_map_header *efihdr; struct pcpu *pcpup; - int mem_regions_sz; vm_offset_t lastaddr; vm_size_t kernlen; char *env; @@ -547,31 +580,17 @@ initriscv(struct riscv_bootparams *rvbp) } #ifdef FDT else { + bool first; + /* Exclude reserved memory specified by the device tree. */ - if (fdt_get_reserved_mem(mem_regions, &mem_regions_sz) == 0) { - physmem_exclude_regions(mem_regions, mem_regions_sz, - EXFLAG_NODUMP | EXFLAG_NOALLOC); - } + fdt_foreach_reserved_mem(fdt_physmem_exclude_region_cb, NULL); /* Grab physical memory regions information from device tree. */ - if (fdt_get_mem_regions(mem_regions, &mem_regions_sz, NULL) != 0) + first = true; + if (fdt_foreach_mem_region(fdt_physmem_hardware_region_cb, + &first) != 0) panic("Cannot get physical memory regions"); - physmem_hardware_regions(mem_regions, mem_regions_sz); - /* - * XXX: Unconditionally exclude the lowest 2MB of physical - * memory, as this area is assumed to contain the SBI firmware, - * and this is not properly reserved in all cases (e.g. in - * older firmware like BBL). - * - * This is a little fragile, but it is consistent with the - * platforms we support so far. - * - * TODO: remove this when the all regular booting methods - * properly report their reserved memory in the device tree. - */ - physmem_exclude_region(mem_regions[0].mr_start, L2_SIZE, - EXFLAG_NODUMP | EXFLAG_NOALLOC); } #endif From nobody Tue Apr 8 10:49:10 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rR1HVMz5sC3p; Tue, 08 Apr 2025 10:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rQ2kpsz3k4S; Tue, 08 Apr 2025 10:49:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109350; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5j0pBgpTOpwFufgeP1vcNkeg+28wU4lZ4OZ4Dokgc64=; b=Iks16Gt03aY7kMsq8uyTKHC/NVDZ0FsxCF7qoehrWfrv663n96T+o/FHDU6Cu6Qi2eNUYE 8MgzqFnLp/xzw+ZR4wqjkha4m7rCtMX4Xu0X/IA0cUFwYR4tDVKPY4Acl4q6g+mcFWMYMC NS9qlbi0lZhY1bAcLEVf7XqfaWPNY2c6JPV2RbsaWRanMFOUUQM+eRKHq3ebqkJwOWYwo8 5gxHEqN04Lo6hN+MViZBNMcBzIp14JaJrChanpU3nealEffaFlxOJVFXH8cBgAcxiS26xr upkpOPab5Qf+ChypHT8J1DavpOLESDdtGYVvbHtKPNipLNs5BDBJ4JExhVbrtA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109350; a=rsa-sha256; cv=none; b=yQPHc30xJ8k6kPkOqYOvKxKKlmF3Q4rAEvajtte/kRXpmjeVuya73Afd81LLRIrWoSm9Q+ NnWpR4nCojOJx3VoMBJETBdsRtGwcWuT+2xvyN6PZ4fgZIOo7b3v3JAU9ZpDIeaS9FShm3 5a0fBGJ5+lOixs7IlX9B70yevwnDZHTL8+q6ex4vcnQa2FsrDMk2YBhdKMnChVA+tuymQZ 39vDePqYbhVFNSC/A9aJI7rZ59JohX7MEUTYitGZf7k95N7tCaswgXVficx4/hdYpOwwcM EcbmoCfkWJEWWfWP/QneCeHkKS3LuXSocblWEWhXZQkXGNve6q2WSksYju3D5A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109350; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5j0pBgpTOpwFufgeP1vcNkeg+28wU4lZ4OZ4Dokgc64=; b=BUOEMT11y4j5NV7ycY7TgTMQP7XzTuPIdMOtG9y6mJ1PzM073+KGLWYr3iDuI32FdDSe5p +AjzDTgRNmDf1wWLCCTDTVzLOMXFDjTxFCbaAGHgIX9d5m0tTq0YduTy9F6bKfljq/hkEh Ls1DGHsbqTHy6AR7FZHYKJ6jYMq/Q1UMjUUVaqUoTjAKCOiqEO+pfiBw7lHiTOnqsi/qNR GD3r9rLqTtaKgIP+iNfGe575HIZvFE0NohjQ24wtlh3Zrd+vUBGTRtLizXPbMjDogtyabV DFJY8kCH42L4novHFW9azD+azdqgN2jyo3lMX1trc7iZEzvUAMsRwjMQnc0fsw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rQ2F02zCgC; Tue, 08 Apr 2025 10:49:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538AnAQF002026; Tue, 8 Apr 2025 10:49:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538AnAuK002022; Tue, 8 Apr 2025 10:49:10 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:10 GMT Message-Id: <202504081049.538AnAuK002022@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 28bc1919f5d4 - main - dev/fdt: Add fdt_foreach_reserved_region List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 28bc1919f5d42f699612f9335e25239bd30ed164 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=28bc1919f5d42f699612f9335e25239bd30ed164 commit 28bc1919f5d42f699612f9335e25239bd30ed164 Author: Andrew Turner AuthorDate: 2025-04-08 10:30:24 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:48:28 +0000 dev/fdt: Add fdt_foreach_reserved_region As with fdt_foreach_mem_region add a function that calls a callback for each reserved memory region in /memreserve. This allows us to exclude this memory from the physical map in a way that is safe from overflowing a fixed array on the stack. Reviewed by: imp Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D49699 --- sys/dev/fdt/fdt_common.c | 49 ++++++++++++++++++++++++++++++++++++++++++++++++ sys/dev/fdt/fdt_common.h | 1 + 2 files changed, 50 insertions(+) diff --git a/sys/dev/fdt/fdt_common.c b/sys/dev/fdt/fdt_common.c index e23878750bea..ba323ea56d96 100644 --- a/sys/dev/fdt/fdt_common.c +++ b/sys/dev/fdt/fdt_common.c @@ -442,6 +442,55 @@ fdt_get_phyaddr(phandle_t node, device_t dev, int *phy_addr, void **phy_sc) return (0); } +int +fdt_foreach_reserved_region(fdt_mem_region_cb cb, void *arg) +{ + struct mem_region mr; + pcell_t reserve[FDT_REG_CELLS * FDT_MEM_REGIONS]; + pcell_t *reservep; + phandle_t memory, root; + int addr_cells, size_cells; + int i, res_len, rv, tuple_size, tuples; + + root = OF_finddevice("/"); + memory = OF_finddevice("/memory"); + if (memory == -1) + return (ENXIO); + + if ((rv = fdt_addrsize_cells(OF_parent(memory), &addr_cells, + &size_cells)) != 0) + return (rv); + + if (addr_cells > 2) + return (ERANGE); + + tuple_size = sizeof(pcell_t) * (addr_cells + size_cells); + + res_len = OF_getproplen(root, "memreserve"); + if (res_len <= 0 || res_len > sizeof(reserve)) + return (ERANGE); + + if (OF_getprop(root, "memreserve", reserve, res_len) <= 0) + return (ENXIO); + + tuples = res_len / tuple_size; + reservep = (pcell_t *)&reserve; + for (i = 0; i < tuples; i++) { + + rv = fdt_data_to_res(reservep, addr_cells, size_cells, + (u_long *)&mr.mr_start, (u_long *)&mr.mr_size); + + if (rv != 0) + return (rv); + + cb(&mr, arg); + + reservep += addr_cells + size_cells; + } + + return (0); +} + int fdt_get_reserved_regions(struct mem_region *mr, int *mrcnt) { diff --git a/sys/dev/fdt/fdt_common.h b/sys/dev/fdt/fdt_common.h index d1db7c0620fd..22842d0e6ae7 100644 --- a/sys/dev/fdt/fdt_common.h +++ b/sys/dev/fdt/fdt_common.h @@ -87,6 +87,7 @@ int fdt_foreach_mem_region(fdt_mem_region_cb, void *); int fdt_get_mem_regions(struct mem_region *, int *, uint64_t *); int fdt_foreach_reserved_mem(fdt_mem_region_cb, void *); int fdt_get_reserved_mem(struct mem_region *, int *); +int fdt_foreach_reserved_region(fdt_mem_region_cb, void *); int fdt_get_reserved_regions(struct mem_region *, int *); int fdt_get_phyaddr(phandle_t, device_t, int *, void **); int fdt_get_range(phandle_t, int, u_long *, u_long *); From nobody Tue Apr 8 10:49:12 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rT0BPjz5sC3r; Tue, 08 Apr 2025 10:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rS4wxgz3kGK; Tue, 08 Apr 2025 10:49:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109352; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PHHpdvp3y0edgwNS4+177mqLRCu20HAAPTpWpE4COuM=; b=NonQOmYjSKbexIfPioWOHD9KPA3oOK74ayGcacrKuBTMv/odZcA1++sevYD5C5tCUtQKM7 OBCa9r7y8d9KYODGwg7DAB6DZUwoVcRAqOSVryOXvfbljS3hg/7Orm58vFSjs84IvqKT7R nPQSmNf+JYf5UuwN+MYgY3ajcoFv38GgV7eATVk1rCLB76OBxx4To7yScahcnGFBYCp6mI 2v61705gkho7nJduKZGRJB8/L3Sd2l6/v7pWU5VZGs648cllBWQC21AeORHTX8pTXczpmh 9DsCsSokl2W4icItVj3+9C0QSW3/8/KTaTTlcMOviXsiIOfbgql85RvoMDI8FA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109352; a=rsa-sha256; cv=none; b=x58IAZp9Y53mDzZxQjfWvLsN1AEtxKFXN+mqb64WW6iIANtQrqbM6qmuWGhqMCv5X7Cl4w O+AbypaWsvAe+jrvsWwl0YVaoGPT0NpMkNiojb4SRPirBKJfdQ9d/ZRqMoW2JyIAfbtjqk R0WARp5lxM7xDDjZUiRsLU40Y2hkoBEYP0gGnVUn1RDqjf+Xr4YrJVAgmuM02hsgUt66c/ t1AlKSaLSBDMqrkx4D/YiqGIHsA06wu/H2RIG3BfaMOWHLVTDmDztV7hvFeLdX5EMOeY8o Fmi3irXKgJMrB3KYKfplFVfUR75sRZRlEaHXsShIIZXLrvsNPSEyNsQ0BVaKpQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109352; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PHHpdvp3y0edgwNS4+177mqLRCu20HAAPTpWpE4COuM=; b=xOqZ6sh9DpluSj8mNFpLHtihs8/8nuVGi7ocgdn4pXa35etXrbt3Bq0Vso6WaiUBJ3/LrP w9lutzHLkuhgfuouq2a1ih7hzKSV5lrpma+ih+PTlQZHLf5TlM6FHnsgvcgdXGnIpZKTjk 5mGDxFpVhXywMla8IsGsK3jaufuaizcbQrndKSFz3seM26LAWKBcJBmTYw5bs1XZ3GZq07 gEip5NZwZDms7lvzy7cA/SjPCgEfGAloR+SisIWEKSFUYTUTPFhnItuVqVS6GsF+B1x4JR MZQ3dEoDmsIw9HnlZcUhwkxfzEsHHlKZVIih1Io1K2j317bYPrPJQRQvOcjR0g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rS45y9zCr8; Tue, 08 Apr 2025 10:49:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538AnCsa002090; Tue, 8 Apr 2025 10:49:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538AnCBB002087; Tue, 8 Apr 2025 10:49:12 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:12 GMT Message-Id: <202504081049.538AnCBB002087@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: aa9ebe156011 - main - arm/mv: Convert to fdt_foreach_mem_region List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: aa9ebe1560114f06dbd9c4c5a9b72b056ee13c94 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=aa9ebe1560114f06dbd9c4c5a9b72b056ee13c94 commit aa9ebe1560114f06dbd9c4c5a9b72b056ee13c94 Author: Andrew Turner AuthorDate: 2025-04-08 10:30:39 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:48:28 +0000 arm/mv: Convert to fdt_foreach_mem_region The Marvell platform code checks each DDR bank is in the FDT. This was using fdt_get_mem_regions. In preperation for removing this switch to fdt_foreach_mem_region. Reviewed by: imp Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D49701 --- sys/arm/mv/mv_common.c | 52 ++++++++++++++++++++++++++++---------------------- 1 file changed, 29 insertions(+), 23 deletions(-) diff --git a/sys/arm/mv/mv_common.c b/sys/arm/mv/mv_common.c index a1302859644a..c4af5564ca13 100644 --- a/sys/arm/mv/mv_common.c +++ b/sys/arm/mv/mv_common.c @@ -984,40 +984,46 @@ decode_win_cpu_setup(void) } +struct ddr_data { + uint8_t window_valid[MV_WIN_DDR_MAX]; + uint32_t mr_count; + uint32_t valid_win_num; +}; + +static void +ddr_valid_cb(const struct mem_region *mr, void *arg) +{ + struct ddr_data *data = arg; + int j; + + for (j = 0; j < MV_WIN_DDR_MAX; j++) { + if (ddr_is_active(j) && + (ddr_base(j) == mr->mr_start) && + (ddr_size(j) == mr->mr_size)) { + data->window_valid[j] = 1; + data->valid_win_num++; + } + } + data->mr_count++; +} + static int decode_win_sdram_fixup(void) { - struct mem_region mr[FDT_MEM_REGIONS]; - uint8_t window_valid[MV_WIN_DDR_MAX]; - int mr_cnt, err, i, j; - uint32_t valid_win_num = 0; + struct ddr_data window_data; + int err, j; - /* Grab physical memory regions information from device tree. */ - err = fdt_get_mem_regions(mr, &mr_cnt, NULL); + memset(&window_data, 0, sizeof(window_data)); + err = fdt_foreach_mem_region(ddr_valid_cb, &window_data); if (err != 0) return (err); - for (i = 0; i < MV_WIN_DDR_MAX; i++) - window_valid[i] = 0; - - /* Try to match entries from device tree with settings from u-boot */ - for (i = 0; i < mr_cnt; i++) { - for (j = 0; j < MV_WIN_DDR_MAX; j++) { - if (ddr_is_active(j) && - (ddr_base(j) == mr[i].mr_start) && - (ddr_size(j) == mr[i].mr_size)) { - window_valid[j] = 1; - valid_win_num++; - } - } - } - - if (mr_cnt != valid_win_num) + if (window_data.mr_count != window_data.valid_win_num) return (EINVAL); /* Destroy windows without corresponding device tree entry */ for (j = 0; j < MV_WIN_DDR_MAX; j++) { - if (ddr_is_active(j) && (window_valid[j] != 1)) { + if (ddr_is_active(j) && (window_data.window_valid[j] != 1)) { printf("Disabling SDRAM decoding window: %d\n", j); ddr_disable(j); } From nobody Tue Apr 8 10:49:13 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rV2Phwz5sBrR; Tue, 08 Apr 2025 10:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rT5WlFz3kQr; Tue, 08 Apr 2025 10:49:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109353; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OMAUeF/ANgMKdnaQVu4tuxlh/4E+I/EP4WClJhQ8fik=; b=YyJaJriP6rLFE3SzwmpEh7ZUFxfGwkJR4/mmfUTJuHS5Gm2OgrPd8olVoxGs95DyGQsAEg HcDV3JAp7VwDxjIT6QLIF8OtalMbuatVVaC3sd6K6cvok0y53uOtuP3nVY+DBp3Y6GcvQq ZvsJ+qC315BlzWkUnG7HjkUpA0cxgbpvV8iQoV8htXb11yHNUeudxl5Dm70Pl8xN1nDxb+ QPgmTIYzlbubq2a0Ewc6LN5kJkWeegqrOmOzmjCEqBNbkMXFaCME2arOjZkGsi83dB2g2F lhp74qXPmpzQ5GDANTbCdWYg4OJxoaT5nc2HCtgBmo5LrCS2JnsIKdJsG1xuvg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109353; a=rsa-sha256; cv=none; b=gK0quWOgKD6htAGI6PvcMFV+Khil18+n6jthon7s7FQPpw1YQS8DqQs4ZIfs8TjWkQD4SN onc9G0OtyIhuDdOFCS5lYjzgHaaKDxX91jFhQBA/SsE5DSlikUTseYa9oTHjT8BtgWrxjY WAEyGKmbtovTybuBhk42ODsLyJYLkDWZ81FGkXVFSDBBgz9FNMoiOG3wByam4gcSXGF5YL 6gj5N9DKKuTheMoN6t4jcUrXKTfWK6VEloVSm9G0ymEDCorQraLAujgDsylcK97x39DZN4 /5AfRlRPwTIhHjYPyJa/Hd1oFc2ZsIELQ/rt2dQXwWSRr+PQ4iOxpxxwk9s1dw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109353; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OMAUeF/ANgMKdnaQVu4tuxlh/4E+I/EP4WClJhQ8fik=; b=FiklznrgRKSjUL5Rv07bmz0Ej0LVx155noWK/kHly8xm54b7BR0KlvBpAYVaDJ57VOPfRU SJ0pqP4rQL0jkHnDi70eQZedTFGIlrPde9ZJlQTgEZSszCYCouaDrQpLJdCsDOX++flaKy WRAjO49NSrfGXq5W1wgVqbtWx46Sz4GtU7jfa8aC6aSeApHXQPbR1bIbKR8X+Ao3ZTYvns 9mk3GxNx99sFEJ/u7QXBaeDlG77yhOOJNVe/JVe2Dp5e/2WGsCwzG0F3rIIr54vVuJrAx1 V5bX87m2+IxdunFUFbug4PZMbLVhLifcv/KY+1HXusGlSw7hH7oKM4Az6d3f9A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rT52YbzCr9; Tue, 08 Apr 2025 10:49:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538AnDs5002122; Tue, 8 Apr 2025 10:49:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538AnDBp002119; Tue, 8 Apr 2025 10:49:13 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:13 GMT Message-Id: <202504081049.538AnDBp002119@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 211ca9061b5d - main - dev/fdt: Remove old fdt_get memory functions List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 211ca9061b5d561405edeaf1df1f7fb296506d2c Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=211ca9061b5d561405edeaf1df1f7fb296506d2c commit 211ca9061b5d561405edeaf1df1f7fb296506d2c Author: Andrew Turner AuthorDate: 2025-04-08 10:30:46 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:48:28 +0000 dev/fdt: Remove old fdt_get memory functions These have been replaces with fdt_foreach equivalents so are unused. Reviewed by: imp Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D49702 --- sys/dev/fdt/fdt_common.c | 163 ----------------------------------------------- sys/dev/fdt/fdt_common.h | 3 - 2 files changed, 166 deletions(-) diff --git a/sys/dev/fdt/fdt_common.c b/sys/dev/fdt/fdt_common.c index ba323ea56d96..8a0e414595f2 100644 --- a/sys/dev/fdt/fdt_common.c +++ b/sys/dev/fdt/fdt_common.c @@ -491,63 +491,6 @@ fdt_foreach_reserved_region(fdt_mem_region_cb cb, void *arg) return (0); } -int -fdt_get_reserved_regions(struct mem_region *mr, int *mrcnt) -{ - pcell_t reserve[FDT_REG_CELLS * FDT_MEM_REGIONS]; - pcell_t *reservep; - phandle_t memory, root; - int addr_cells, size_cells; - int i, res_len, rv, tuple_size, tuples; - - root = OF_finddevice("/"); - memory = OF_finddevice("/memory"); - if (memory == -1) { - rv = ENXIO; - goto out; - } - - if ((rv = fdt_addrsize_cells(OF_parent(memory), &addr_cells, - &size_cells)) != 0) - goto out; - - if (addr_cells > 2) { - rv = ERANGE; - goto out; - } - - tuple_size = sizeof(pcell_t) * (addr_cells + size_cells); - - res_len = OF_getproplen(root, "memreserve"); - if (res_len <= 0 || res_len > sizeof(reserve)) { - rv = ERANGE; - goto out; - } - - if (OF_getprop(root, "memreserve", reserve, res_len) <= 0) { - rv = ENXIO; - goto out; - } - - tuples = res_len / tuple_size; - reservep = (pcell_t *)&reserve; - for (i = 0; i < tuples; i++) { - - rv = fdt_data_to_res(reservep, addr_cells, size_cells, - (u_long *)&mr[i].mr_start, (u_long *)&mr[i].mr_size); - - if (rv != 0) - goto out; - - reservep += addr_cells + size_cells; - } - - *mrcnt = i; - rv = 0; -out: - return (rv); -} - int fdt_foreach_reserved_mem(fdt_mem_region_cb cb, void *arg) { @@ -586,47 +529,6 @@ fdt_foreach_reserved_mem(fdt_mem_region_cb cb, void *arg) return (0); } -int -fdt_get_reserved_mem(struct mem_region *reserved, int *mreserved) -{ - pcell_t reg[FDT_REG_CELLS]; - phandle_t child, root; - int addr_cells, size_cells; - int i, rv; - - root = OF_finddevice("/reserved-memory"); - if (root == -1) { - return (ENXIO); - } - - if ((rv = fdt_addrsize_cells(root, &addr_cells, &size_cells)) != 0) - return (rv); - - if (addr_cells + size_cells > FDT_REG_CELLS) - panic("Too many address and size cells %d %d", addr_cells, - size_cells); - - i = 0; - for (child = OF_child(root); child != 0; child = OF_peer(child)) { - if (!OF_hasprop(child, "no-map")) - continue; - - rv = OF_getprop(child, "reg", reg, sizeof(reg)); - if (rv <= 0) - /* XXX: Does a no-map of a dynamic range make sense? */ - continue; - - fdt_data_to_res(reg, addr_cells, size_cells, - (u_long *)&reserved[i].mr_start, - (u_long *)&reserved[i].mr_size); - i++; - } - - *mreserved = i; - - return (0); -} - int fdt_foreach_mem_region(fdt_mem_region_cb cb, void *arg) { @@ -674,71 +576,6 @@ fdt_foreach_mem_region(fdt_mem_region_cb cb, void *arg) return (0); } -int -fdt_get_mem_regions(struct mem_region *mr, int *mrcnt, uint64_t *memsize) -{ - pcell_t reg[FDT_REG_CELLS * FDT_MEM_REGIONS]; - pcell_t *regp; - phandle_t memory; - uint64_t memory_size; - int addr_cells, size_cells; - int i, reg_len, rv, tuple_size, tuples; - - memory = OF_finddevice("/memory"); - if (memory == -1) { - rv = ENXIO; - goto out; - } - - if ((rv = fdt_addrsize_cells(OF_parent(memory), &addr_cells, - &size_cells)) != 0) - goto out; - - if (addr_cells > 2) { - rv = ERANGE; - goto out; - } - - tuple_size = sizeof(pcell_t) * (addr_cells + size_cells); - reg_len = OF_getproplen(memory, "reg"); - if (reg_len <= 0 || reg_len > sizeof(reg)) { - rv = ERANGE; - goto out; - } - - if (OF_getprop(memory, "reg", reg, reg_len) <= 0) { - rv = ENXIO; - goto out; - } - - memory_size = 0; - tuples = reg_len / tuple_size; - regp = (pcell_t *)® - for (i = 0; i < tuples; i++) { - - rv = fdt_data_to_res(regp, addr_cells, size_cells, - (u_long *)&mr[i].mr_start, (u_long *)&mr[i].mr_size); - - if (rv != 0) - goto out; - - regp += addr_cells + size_cells; - memory_size += mr[i].mr_size; - } - - if (memory_size == 0) { - rv = ERANGE; - goto out; - } - - *mrcnt = i; - if (memsize != NULL) - *memsize = memory_size; - rv = 0; -out: - return (rv); -} - int fdt_get_chosen_bootargs(char *bootargs, size_t max_size) { diff --git a/sys/dev/fdt/fdt_common.h b/sys/dev/fdt/fdt_common.h index 22842d0e6ae7..dbf809625da3 100644 --- a/sys/dev/fdt/fdt_common.h +++ b/sys/dev/fdt/fdt_common.h @@ -84,11 +84,8 @@ int fdt_data_to_res(pcell_t *, int, int, u_long *, u_long *); phandle_t fdt_find_compatible(phandle_t, const char *, int); phandle_t fdt_depth_search_compatible(phandle_t, const char *, int); int fdt_foreach_mem_region(fdt_mem_region_cb, void *); -int fdt_get_mem_regions(struct mem_region *, int *, uint64_t *); int fdt_foreach_reserved_mem(fdt_mem_region_cb, void *); -int fdt_get_reserved_mem(struct mem_region *, int *); int fdt_foreach_reserved_region(fdt_mem_region_cb, void *); -int fdt_get_reserved_regions(struct mem_region *, int *); int fdt_get_phyaddr(phandle_t, device_t, int *, void **); int fdt_get_range(phandle_t, int, u_long *, u_long *); int fdt_immr_addr(vm_offset_t); From nobody Tue Apr 8 10:49:15 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rX3WPdz5sCFH; Tue, 08 Apr 2025 10:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rX0PKWz3kJs; Tue, 08 Apr 2025 10:49:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109356; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DeaTzlCvmQjLKRsOsu53VCRz+xYwAzaf4pX/WyD7+jQ=; b=PxmIEFiWn0kcHtgQouxH/2KYHBiTxD7txIHGx7xTgTs0VwUKvI/dX0Sfh/rZ4FSlOzqbhd K6IOVoS+BmXOUMQozDC4F3B+ORqal5e4o1tiBaoBSrKZdkw3oyeNVfNucUsaiXABQBZ41+ H7sTECnOFv0Q8ll7ArJiLc7jxNk6mjESzJxA5aoGbsGc13x/QMvv3F365Aqphc/UZsOhGt 3oUFpBT9dbUS2xAl2Z0mULOqOtAomks0XF2cj/02CAFSZqrMLziy0t/A/2qHVd+zm06K8o ut+LzH0GLZz5cndjUCaqfXhMwduS8udCW0K5VpLjC9Zgj+40JS+dHGbE4b1+3g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109356; a=rsa-sha256; cv=none; b=uA+gH0qTynvo8uUpeacFSwUlUXCf7qkRYGwL82t+M1lUS/KSupDpJ13414m87chXAGU68b 8TC7LR3Ra9kvtNlTUk7tS3CSfA2HHWoLyYxGiKeGNebllWbj3Jg+qyKRxVmifSYBiS2f0L A+f9ocjiWX509+egqc7WFot7kbevfyWuTToiZiK8Af/H6P+mv7A3A2YdrgPfDHC0wWg6M6 jguFOkEMxMH+47zZzUlb0Rs6YUBX4UEb3sL1kyXuiFoeSNfYSJ9nH1Sq4loij0mfhdFdxB D+Fr4CdscsiIOMJogEuc1e1W0NCfB0AV8PbkhSNslWnO4sGZ+vfPTxKYhR0RyA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109356; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DeaTzlCvmQjLKRsOsu53VCRz+xYwAzaf4pX/WyD7+jQ=; b=as1q/4ltQWHd7MaHeqaOOAz19iy+Qu4CEF3dSko7Yuks7OPpB6AMqrPrUZ7rCNn7AQW16v H7ycF/USh/BH5c7hflzShlJDwEdRR8MhMoLE2TZQy+9pQ+oHCnj2hu+xs+VInnfpuo8RlZ i0LzfwTiuVgu4R4ehpse1aKm4YDYLWWHAHW0dHJcwtg0UQhcrydW8fo6ixAutG+yowxQ+d QtWlU4z7I1ZRX8kJ8J94AKvIgzqshBpIGcYsKywEYr6PfOdXPqDwr4QGOE/ucXtoeXbjr/ O3YEEBCTMv9hEktgElNFy76w4W1ShpxsI8+PeXNpLGadGJVhPIhJrlPndVBt1g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rW6jqJzCgD; Tue, 08 Apr 2025 10:49:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538AnFJu002193; Tue, 8 Apr 2025 10:49:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538AnFrd002190; Tue, 8 Apr 2025 10:49:15 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:15 GMT Message-Id: <202504081049.538AnFrd002190@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 06e374b774cd - main - arm: Update the minimum arm architecture value List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 06e374b774cd2bccf3c433fc2aa23667b9303cde Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=06e374b774cd2bccf3c433fc2aa23667b9303cde commit 06e374b774cd2bccf3c433fc2aa23667b9303cde Author: Andrew Turner AuthorDate: 2025-03-31 08:55:54 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:48:28 +0000 arm: Update the minimum arm architecture value We only support armv7 as the 32-bit arm architecture. Reviewed by: cognet Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D49532 --- sys/arm/arm/machdep.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/arm/arm/machdep.c b/sys/arm/arm/machdep.c index 7db5a6f9bcdd..cfc0b32f5102 100644 --- a/sys/arm/arm/machdep.c +++ b/sys/arm/arm/machdep.c @@ -105,8 +105,8 @@ #endif -#if __ARM_ARCH < 6 -#error FreeBSD requires ARMv6 or later +#if __ARM_ARCH < 7 +#error FreeBSD requires ARMv7 or later #endif struct pcpu __pcpu[MAXCPU]; From nobody Tue Apr 8 10:49:14 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rW6w21z5sCFG; Tue, 08 Apr 2025 10:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rV6XHRz3kWk; Tue, 08 Apr 2025 10:49:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109354; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vuHDzkiKdNBZDH3pTU7Ia3gvwZ9Czgn7DizADH3ByEc=; b=IocJR6r4nmqyYV+YR3ZrQwy5xtAKTFnbbndGY59Sgvda+OgCSd0Dr3WfFmOxbeGRgMHwYU BeBQxoPxuur2xbR1d4r7VXQhcPG7lklbxmnz+0GLOoV/XoyoNznKG1+vvXgzKFfardBTyd OLjYSl9Ps3AOGJdFPPHRjMg9fUiLdgWymOHmLEWT978/fFHzeTazud2DhTqeKFuFqH3tuf RUikwFkOWOBm6sUtaqsrrbquqpXq8zUYPTa5DC3AnhNRmV26B45rlNl8HWwf2zCgoly8SZ /0hD7+JBE9xYmS9H8IYfo9slH3PG+/0fBtNzgeB74oSP6LULPd2PBOLOjFKUYQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109354; a=rsa-sha256; cv=none; b=y0bIEklzFigy2YwFT708z89MXI10SBq3gkzqxjAmlCyOmbec6CKE8q9JqU9MvTZLkC6zy7 1C/RUKWiiMHsSZbS76Mp4URwYNlkJZivxUSgBDo36VmTfsh5Ql7Eqa0Ew+AjDeE/iHsBbo hp6Vg0xFr6ycBjAqiwbxZnPuAb+BseoAQSnMAbPmJj4MxkNhOeqd4C0BITr+MZb8DhAu+Q 5apmZs8NudChpYQAEU/UkBQ/iAYsLdxHetVyMp+7r4o1raYZQywUP7QSUIrKIktdEJDb0A 2xj1d79MbdSTnCEIMS6R4z5RohWj7fyT7n+Tt0IjF7gIlBFmdl30ji04djxrHQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109354; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vuHDzkiKdNBZDH3pTU7Ia3gvwZ9Czgn7DizADH3ByEc=; b=QBEy5xGytcar3cNA8hter8MspwPTb96GCc6LGjJYGFDmZPPtnL/cxGYQdTmq9K/trJF4To Y6nIQtoJwfhpwgzREDVPgBFxarKHaA5Y9DCEcj7qs90xai/nvnN7Ml8ExhW2LG0ygE8ZjX cboEwuP9sZKIG33F0R2UBXMtuiSlGvHL3SZZJYwAlPuveGjEcupiQo7cH3aTihydpdUGmR fSZlFkZad7WIe3UizfnZIZYDRr5kJoFIHfZ3RJ+/5IEPtgt2Q404D9+sQWft8DQqp9M9x1 sUkSKhRRZVAzc+sHtmzzd4bVgL7CXbBjArDc4vOZwRTm1Qfi0INHQ8dpETW5Cg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rV63Y9zCdL; Tue, 08 Apr 2025 10:49:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538AnEsZ002156; Tue, 8 Apr 2025 10:49:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538AnE1V002152; Tue, 8 Apr 2025 10:49:14 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:14 GMT Message-Id: <202504081049.538AnE1V002152@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: a2aff11aeb5d - main - dev/fdt: Add const to pointers to const data List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a2aff11aeb5de30c2d28567aa6189926e2c10ba3 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=a2aff11aeb5de30c2d28567aa6189926e2c10ba3 commit a2aff11aeb5de30c2d28567aa6189926e2c10ba3 Author: Andrew Turner AuthorDate: 2025-04-08 10:30:56 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:48:28 +0000 dev/fdt: Add const to pointers to const data fdt_data_get and fdt_data_to_res don't change the value of the data passed to them via a pointer. Add const to these pointers. Reviewed by: emaste Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D49703 --- sys/dev/fdt/fdt_common.c | 14 +++++++------- sys/dev/fdt/fdt_common.h | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/sys/dev/fdt/fdt_common.c b/sys/dev/fdt/fdt_common.c index 8a0e414595f2..40b1b3c5fc4f 100644 --- a/sys/dev/fdt/fdt_common.c +++ b/sys/dev/fdt/fdt_common.c @@ -303,13 +303,13 @@ fdt_parent_addr_cells(phandle_t node) } u_long -fdt_data_get(void *data, int cells) +fdt_data_get(const void *data, int cells) { if (cells == 1) - return (fdt32_to_cpu(*((uint32_t *)data))); + return (fdt32_to_cpu(*((const uint32_t *)data))); - return (fdt64_to_cpu(*((uint64_t *)data))); + return (fdt64_to_cpu(*((const uint64_t *)data))); } int @@ -336,22 +336,22 @@ fdt_addrsize_cells(phandle_t node, int *addr_cells, int *size_cells) } int -fdt_data_to_res(pcell_t *data, int addr_cells, int size_cells, u_long *start, - u_long *count) +fdt_data_to_res(const pcell_t *data, int addr_cells, int size_cells, + u_long *start, u_long *count) { /* Address portion. */ if (addr_cells > 2) return (ERANGE); - *start = fdt_data_get((void *)data, addr_cells); + *start = fdt_data_get((const void *)data, addr_cells); data += addr_cells; /* Size portion. */ if (size_cells > 2) return (ERANGE); - *count = fdt_data_get((void *)data, size_cells); + *count = fdt_data_get((const void *)data, size_cells); return (0); } diff --git a/sys/dev/fdt/fdt_common.h b/sys/dev/fdt/fdt_common.h index dbf809625da3..e49049051209 100644 --- a/sys/dev/fdt/fdt_common.h +++ b/sys/dev/fdt/fdt_common.h @@ -79,8 +79,8 @@ SYSCTL_DECL(_hw_fdt); typedef void (*fdt_mem_region_cb)(const struct mem_region *, void *); int fdt_addrsize_cells(phandle_t, int *, int *); -u_long fdt_data_get(void *, int); -int fdt_data_to_res(pcell_t *, int, int, u_long *, u_long *); +u_long fdt_data_get(const void *, int); +int fdt_data_to_res(const pcell_t *, int, int, u_long *, u_long *); phandle_t fdt_find_compatible(phandle_t, const char *, int); phandle_t fdt_depth_search_compatible(phandle_t, const char *, int); int fdt_foreach_mem_region(fdt_mem_region_cb, void *); From nobody Tue Apr 8 10:49:17 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rY3sRYz5sC6G; Tue, 08 Apr 2025 10:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rY1Nhmz3kPJ; Tue, 08 Apr 2025 10:49:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109357; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9pkx7InlW19zepP5SRvs5xovJ3AF5qEOyCjHcDwH0VA=; b=gEguuSOE/33oQbK7Ug0C3M2uWlwkEwgWdYoZryONoEZLYHOgH0F57T/ND1tv7Y+hQJgfl+ K1Mdy5P8cT3n5Pt+aHnRQYMQXQwFk+dcNuGT9kIegS2zvtM/8xEJJh3TmWb1RM8zjqquGK ywKH/lf0USJ0bX7K/sz+EzH7RX004VSiLkGmcLbhPUdgICn1BwI4RGsuIpED5YIF9qPavV QuHwG1u/S4iy8X5riJknhneXS7q0goJm7M5BhT2I1TfSygUooD6apgA8dbr2RUTBuPy7Cp iMjvxepDaMV5dqvcKZhD505QUhRc9okyDo/7Od1Rikf1cFSGWSovrPmh72FX1w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109357; a=rsa-sha256; cv=none; b=Xh7nW0zjSRpIOXpESKxrW0YUNgjprgpRCTLcUXIDTDuAtSIMMSAZwqesZbJprBAIey2u/E Jr4to3zH5OGPZIkq+3DN6pwnxVXBAp4GRozND6UmaXO6i829CHDkC/zaxgrqvBCJHDDYD5 YZaimCVL68sZ9D/WOvZ1nrhqD41+PgStDtdTgLUFqBTwrW/cgn4PirgmN8CysOYlKrzlhh unB4i3P7nWoZVZH+xYv8L9XwB6hCJAeCCepf7R7/wEn5AfSPsrH7WfIEOMBfImGqoxRq1e kuNXytMQfm2KX5A/wj7o3KKrt2E09uRKz076D5KFnJRm83v+4DcGdbWqoApVEQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109357; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9pkx7InlW19zepP5SRvs5xovJ3AF5qEOyCjHcDwH0VA=; b=N9XO8Gycb2gcGh4mi7Fm24uNkWjjXQBvxp7HyTwMi+IB2ACBGcUkq436PGaKTwV4Aqur4c eKCn6+FRm0B9K6G7VLYDvU0u/ndfU4NQ+k+yrUwf3uB10Aa5j1itUCNoghazcEF4bulTUn IDNSLjQQMYNVAelc53GlhTp+yXpUXxSf8ouMF4dNAg1w2YA44WH1hc7acETqf1Rn2noJW8 RhatWUA12DmkYIVNxQGnikrd5iImA1K5u+XbOYPk2Rf1masndLjtegPiLOLeCWQpQbRJvy JZjUnJaGD+ehUcE1x94A2ysWLgef9zLApyT7ZpSXeNm5zCIx/yIZP99scfBGJA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rY0w9jzCdM; Tue, 08 Apr 2025 10:49:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538AnHHZ002226; Tue, 8 Apr 2025 10:49:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538AnHPG002223; Tue, 8 Apr 2025 10:49:17 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:17 GMT Message-Id: <202504081049.538AnHPG002223@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 11bf914e9ffe - main - arm/mv: Remove old device support List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 11bf914e9ffe8d9878a2ba8b74a5805e86f61aef Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=11bf914e9ffe8d9878a2ba8b74a5805e86f61aef commit 11bf914e9ffe8d9878a2ba8b74a5805e86f61aef Author: Andrew Turner AuthorDate: 2025-04-08 10:47:44 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:48:28 +0000 arm/mv: Remove old device support These devices don't appear in any devicetree files we have in the tree and are all stub functions. Reviewed by: cognet Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D49533 --- sys/arm/mv/mv_common.c | 54 -------------------------------------------------- 1 file changed, 54 deletions(-) diff --git a/sys/arm/mv/mv_common.c b/sys/arm/mv/mv_common.c index c4af5564ca13..819a4fbf7978 100644 --- a/sys/arm/mv/mv_common.c +++ b/sys/arm/mv/mv_common.c @@ -93,9 +93,6 @@ static int decode_win_pcie_valid(void); static int decode_win_sata_valid(void); static int decode_win_sdhci_valid(void); -static int decode_win_idma_valid(void); -static int decode_win_xor_valid(void); - static void decode_win_cpu_setup(void); static int decode_win_sdram_fixup(void); static void decode_win_cesa_setup(u_long); @@ -108,17 +105,12 @@ static void decode_win_sata_setup(u_long); static void decode_win_ahci_setup(u_long); static void decode_win_sdhci_setup(u_long); -static void decode_win_idma_setup(u_long); -static void decode_win_xor_setup(u_long); - static void decode_win_cesa_dump(u_long); static void decode_win_a38x_cesa_dump(u_long); static void decode_win_usb_dump(u_long); static void decode_win_usb3_dump(u_long); static void decode_win_eth_dump(u_long base); static void decode_win_neta_dump(u_long base); -static void decode_win_idma_dump(u_long base); -static void decode_win_xor_dump(u_long base); static void decode_win_ahci_dump(u_long base); static void decode_win_sdhci_dump(u_long); static void decode_win_pcie_dump(u_long); @@ -195,9 +187,6 @@ static struct soc_node_spec soc_nodes[] = { { "marvell,armada-380-sdhci", &decode_win_sdhci_setup, &decode_win_sdhci_dump, &decode_win_sdhci_valid}, { "mrvl,sata", &decode_win_sata_setup, NULL, &decode_win_sata_valid}, - { "mrvl,xor", &decode_win_xor_setup, &decode_win_xor_dump, &decode_win_xor_valid}, - { "mrvl,idma", &decode_win_idma_setup, &decode_win_idma_dump, &decode_win_idma_valid}, - { "mrvl,cesa", &decode_win_cesa_setup, &decode_win_cesa_dump, &decode_win_cesa_valid}, { "mrvl,pcie", &decode_win_pcie_setup, &decode_win_pcie_dump, &decode_win_pcie_valid}, { "marvell,armada-38x-crypto", &decode_win_a38x_cesa_setup, &decode_win_a38x_cesa_dump, &decode_win_cesa_valid}, @@ -1528,49 +1517,6 @@ decode_win_pcie_valid(void) return (decode_win_can_cover_ddr(MV_WIN_PCIE_MAX)); } -/************************************************************************** - * IDMA windows routines - **************************************************************************/ - -/* Provide dummy functions to satisfy the build for SoCs not equipped with IDMA */ -int -decode_win_idma_valid(void) -{ - - return (1); -} - -void -decode_win_idma_setup(u_long base) -{ -} - -void -decode_win_idma_dump(u_long base) -{ -} - -/************************************************************************** - * XOR windows routines - **************************************************************************/ -/* Provide dummy functions to satisfy the build for SoCs not equipped with XOR */ -static int -decode_win_xor_valid(void) -{ - - return (1); -} - -static void -decode_win_xor_setup(u_long base) -{ -} - -static void -decode_win_xor_dump(u_long base) -{ -} - /************************************************************************** * SATA windows routines **************************************************************************/ From nobody Tue Apr 8 10:49:18 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rZ6hwcz5sCK0; Tue, 08 Apr 2025 10:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rZ2HKJz3kPY; Tue, 08 Apr 2025 10:49:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109358; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DDhJN3gCwDbPUaiqYb2riiNeL68vqFH3yfNYccDfJZ0=; b=jAmQnEOaLSd/kulfQIC7+d6dplqDoj/aJJ35i2bgwi70LKi4CC16FqBGxhpVitXZR8pomA qctMIZB82Ea52iUVVBRktk5vEDHeKllEOERm5dIGr835UWXYypsfSj3DpFtng9IdldEBy/ tqB5zjhenqvbC7ZSnpOx/59u7g0h+s7j91UrVmfj1sUlBsPso3brw1HqmZt7YtJcQi9PRh GKkzZFKRCb3rLt4tJWI3QOxH+8jygTmf5s+PMyOVBZMxpKJsiuT/RpiOKkg+y7zFm5V5uo MXr4kB1YBQmaJaEV4hdQGr/ZzwN3IpfaFShhrxIX94JD74KqH1i73U6cQ5Oo+w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109358; a=rsa-sha256; cv=none; b=sVFSw8m/FSt8CzZfwKB+wnXj5F/WCj2EFOIk+13BBPXAwJFJ18gMjze7drW7lDTMCHyF3z 6r7xTBhDp7sBeDAzBCpePDntkD/RFBxpRdacrh4X65uZ0cfXS9T/G/moxy34sTV2fp8iQz TtrYAEnF1qVhWwnnryh/1sf6Lnjx8kp+81iwdkA38I88BOtrKUPMcAT3hboEoQVBcmJC7a kjnfAZ7NDPbiFErJ9tubhcCbrh6DHU+Ff2URm4oX3ciN+GMUPTmQR2nnwT44++ly0clMcN EhvhBv/e9nJ3TcDgb+Kbnbe6FVmCQcq8jPEFwYME/vFxkcBCifFhTlSfH2WTGA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109358; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DDhJN3gCwDbPUaiqYb2riiNeL68vqFH3yfNYccDfJZ0=; b=jt0dz9aGm/DSbsFlclf3WgcrDPjEsiKd8OeKi7zYcp0X4ZcmxCyctgfrad7TPUDslcfE15 AN1V4stBX8/WFP6xlY7R5em2DIT51A6iOb+BVCQhIGcP0vigM7ngSyZ7qmdJOe6P7hJkTm ej1YDqx8KOOKvWV61EAqTn/AoUmgnHCZB3dbt0OpsV7vHVxEYl6ZN8wDi/lPZXyZImILzy 0N8Gi/LX/BAV6tG6a6YybGjvSqsj2PzjqlAoY9NnkyfVPGcN1bf7TesQnS4kQmCHtXr+d9 VPnFF9zr3RgHtuR6uOQCXa8e5w8yiNUbDL8E2OXeRU1GEECmyzp2qsptn0u4eQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rZ1p1dzD1v; Tue, 08 Apr 2025 10:49:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538AnIO6002258; Tue, 8 Apr 2025 10:49:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538AnITe002255; Tue, 8 Apr 2025 10:49:18 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:18 GMT Message-Id: <202504081049.538AnITe002255@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: bb6a069c595a - main - arm/mv: Remove the unused get_l2clk List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bb6a069c595ad49ad59b3eb2d98d074b4cc006f9 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=bb6a069c595ad49ad59b3eb2d98d074b4cc006f9 commit bb6a069c595ad49ad59b3eb2d98d074b4cc006f9 Author: Andrew Turner AuthorDate: 2025-04-08 10:46:38 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:48:28 +0000 arm/mv: Remove the unused get_l2clk Reviewed by: cognet Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D49534 --- sys/arm/mv/armadaxp/armadaxp.c | 95 ------------------------------------------ sys/arm/mv/mvvar.h | 1 - 2 files changed, 96 deletions(-) diff --git a/sys/arm/mv/armadaxp/armadaxp.c b/sys/arm/mv/armadaxp/armadaxp.c index 2835a0d6b637..17a4b082d686 100644 --- a/sys/arm/mv/armadaxp/armadaxp.c +++ b/sys/arm/mv/armadaxp/armadaxp.c @@ -49,11 +49,9 @@ #define FAB_FREQ_FIELD(sar) (((0x01 & (sar >> 51)) << 4) | \ (0x0F & (sar >> 24))) -static uint32_t count_l2clk(void); void armadaxp_l2_init(void); void armadaxp_init_coher_fabric(void); int platform_get_ncpus(void); -static uint64_t get_sar_value_armadaxp(void); #define ARMADAXP_L2_BASE (MV_BASE + 0x8000) #define ARMADAXP_L2_CTRL 0x100 @@ -93,48 +91,6 @@ struct vco_freq_ratio { uint8_t vco_ddr; /* VCO to DR(DDR memory) clock ratio */ }; -static struct vco_freq_ratio freq_conf_table[] = { -/*00*/ { 1, 1, 4, 2 }, -/*01*/ { 1, 2, 2, 2 }, -/*02*/ { 2, 2, 6, 3 }, -/*03*/ { 2, 2, 3, 3 }, -/*04*/ { 1, 2, 3, 3 }, -/*05*/ { 1, 2, 4, 2 }, -/*06*/ { 1, 1, 2, 2 }, -/*07*/ { 2, 3, 6, 6 }, -/*08*/ { 2, 3, 5, 5 }, -/*09*/ { 1, 2, 6, 3 }, -/*10*/ { 2, 4, 10, 5 }, -/*11*/ { 1, 3, 6, 6 }, -/*12*/ { 1, 2, 5, 5 }, -/*13*/ { 1, 3, 6, 3 }, -/*14*/ { 1, 2, 5, 5 }, -/*15*/ { 2, 2, 5, 5 }, -/*16*/ { 1, 1, 3, 3 }, -/*17*/ { 2, 5, 10, 10 }, -/*18*/ { 1, 3, 8, 4 }, -/*19*/ { 1, 1, 2, 1 }, -/*20*/ { 2, 3, 6, 3 }, -/*21*/ { 1, 2, 8, 4 }, -/*22*/ { 2, 5, 10, 5 } -}; - -static uint16_t cpu_clock_table[] = { - 1000, 1066, 1200, 1333, 1500, 1666, 1800, 2000, 600, 667, 800, 1600, - 2133, 2200, 2400 }; - -static uint64_t -get_sar_value_armadaxp(void) -{ - uint32_t sar_low, sar_high; - - sar_high = bus_space_read_4(fdtbus_bs_tag, MV_MISC_BASE, - SAMPLE_AT_RESET_HI); - sar_low = bus_space_read_4(fdtbus_bs_tag, MV_MISC_BASE, - SAMPLE_AT_RESET_LO); - return (((uint64_t)sar_high << 32) | sar_low); -} - uint32_t get_tclk_armadaxp(void) { @@ -156,57 +112,6 @@ get_cpu_freq_armadaxp(void) return (0); } -static uint32_t -count_l2clk(void) -{ - uint64_t sar_reg; - uint32_t freq_vco, freq_l2clk; - uint8_t sar_cpu_freq, sar_fab_freq, array_size; - - /* Get value of the SAR register and process it */ - sar_reg = get_sar_value_armadaxp(); - sar_cpu_freq = CPU_FREQ_FIELD(sar_reg); - sar_fab_freq = FAB_FREQ_FIELD(sar_reg); - - /* Check if CPU frequency field has correct value */ - array_size = nitems(cpu_clock_table); - if (sar_cpu_freq >= array_size) - panic("Reserved value in cpu frequency configuration field: " - "%d", sar_cpu_freq); - - /* Check if fabric frequency field has correct value */ - array_size = nitems(freq_conf_table); - if (sar_fab_freq >= array_size) - panic("Reserved value in fabric frequency configuration field: " - "%d", sar_fab_freq); - - /* Get CPU clock frequency */ - freq_vco = cpu_clock_table[sar_cpu_freq] * - freq_conf_table[sar_fab_freq].vco_cpu; - - /* Get L2CLK clock frequency */ - freq_l2clk = freq_vco / freq_conf_table[sar_fab_freq].vco_l2c; - - /* Round L2CLK value to integer MHz */ - if (((freq_vco % freq_conf_table[sar_fab_freq].vco_l2c) * 10 / - freq_conf_table[sar_fab_freq].vco_l2c) >= 5) - freq_l2clk++; - - return (freq_l2clk * 1000000); -} - -uint32_t -get_l2clk(void) -{ - static uint32_t l2clk_freq = 0; - - /* If get_l2clk is called first time get L2CLK value from register */ - if (l2clk_freq == 0) - l2clk_freq = count_l2clk(); - - return (l2clk_freq); -} - static uint32_t read_coher_fabric(uint32_t reg) { diff --git a/sys/arm/mv/mvvar.h b/sys/arm/mv/mvvar.h index fe0867860e6a..733cde06667e 100644 --- a/sys/arm/mv/mvvar.h +++ b/sys/arm/mv/mvvar.h @@ -99,7 +99,6 @@ uint32_t ddr_attr(int i); uint32_t get_tclk(void); uint32_t get_cpu_freq(void); -uint32_t get_l2clk(void); uint32_t read_cpu_ctrl(uint32_t); void write_cpu_ctrl(uint32_t, uint32_t); From nobody Tue Apr 8 10:49:19 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rc370hz5sC93; Tue, 08 Apr 2025 10:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rb3C89z3kXV; Tue, 08 Apr 2025 10:49:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109359; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kxp7I+js8Fbgxha5wo1QFtauA7FofcvZv/6+l739TGw=; b=mz6kst0LDPWE8eQLdGjgzYERy/cQcweXd3KXow+Cjjo+Y9F12XQ6nFa0niuF7faSb3mWhU RuxDbmTXo5IE63y6FrfakZqE7aKGCJx3mhpJpqJhZp4zm68ujDUjSbmhsc1E8o8In4RyoK vHAy///ucxiyn8qgEZzJ30Il6kuejZn8CjY392L8hIWJp1NhzgTpZVzkPTS8gKOzcOMoIG RpqDBPzgp9Ul7fdbunaa8+5I9an5bkKHtr7AliKwqQ1nFJ0N4ZQa5Kb8sahUo4UGYw4IVq hI9wlCRRDObvfnjv82BxXbRUvI8mLrwQkZR2anlJ6Zolf+gw/kpROJuPtihcQg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109359; a=rsa-sha256; cv=none; b=amXytrVtccucaH48z7xf2PP7Di2BZrvdg3ocwafea0DRY7NQ+X0dPkD48cD8jTjcGk7oQ6 1Tmb1YubzYZS4pMUjbuPMuXQlMOL9gl0uWgmf88KHT3RzuAL9OYESUO11vNXxeUWt204HD f/fPeYLAlTRI5IwEwu7oYnI1qfTdyLuaI5EBTp4cpbLHoldDX09adJ1yfLs4VLPLOwW/Fg AE+qsxfuPjgUMr1ePFB2VKdxA/Qtlp1CttijRMrMaQc3PpYq3HJGU8i5tEn4tWPG9G4R8o nbWvtpVcT51rohpsGpJm6PvnMyJEOejtmNum5HqqKRQT0UTMYU89f9A2+cpYSg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109359; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kxp7I+js8Fbgxha5wo1QFtauA7FofcvZv/6+l739TGw=; b=qI50wxpgdzRmnDufaBhwfXs0SR8Mzm6hhIjz5Au0/l2Zp+5SoADb1zc/NuRoOw4TScqSTq opfaMRUAe5BJdmMeX9zHSda3PEzlC3910+l9IEteKuxgJAvWkCnxSuOvorfyqSE2DTwhyw srXYDtZ6Go+1VRMhFmK7Jg9PgXSUbq/i/nYKNbLDZ/PSvNjzYKQpHq9Fcq9kjMEvkyB5iJ yyy/gdcDnes1HFOyA8qnUDk+jEv+CyTXehe/u/NE5+7Y24lfIScmb6UG9q40VD9xHPcxyN vw9kSOFB/SeeE/H1CDgprWkJfimPYdnSvhGgZiQCHGQvZeAshvS/ijH33yR/oQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rb2m3qzCZm; Tue, 08 Apr 2025 10:49:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538AnJuL002290; Tue, 8 Apr 2025 10:49:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538AnJDA002287; Tue, 8 Apr 2025 10:49:19 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:19 GMT Message-Id: <202504081049.538AnJDA002287@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 17c67ba24df0 - main - sys: Move Marvell specific fdt code to sys/arm/mv List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 17c67ba24df03c5c04f5149265aa514786dc220b Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=17c67ba24df03c5c04f5149265aa514786dc220b commit 17c67ba24df03c5c04f5149265aa514786dc220b Author: Andrew Turner AuthorDate: 2025-04-08 10:46:51 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:48:28 +0000 sys: Move Marvell specific fdt code to sys/arm/mv fdt_immr_* are only used by the armv7 Marvell code. Move setting the variables there as no new code should need to set them. Reviewed by: cognet Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D49535 --- sys/arm/mv/armadaxp/armadaxp_mp.c | 1 + sys/arm/mv/mv_armv7_machdep.c | 36 +++++++++++++++++++++++++++++++++--- sys/arm/mv/mvvar.h | 3 +++ sys/dev/fdt/fdt_common.c | 36 ------------------------------------ sys/dev/fdt/fdt_common.h | 4 ---- 5 files changed, 37 insertions(+), 43 deletions(-) diff --git a/sys/arm/mv/armadaxp/armadaxp_mp.c b/sys/arm/mv/armadaxp/armadaxp_mp.c index 75a119e0cec9..34cdc611a21f 100644 --- a/sys/arm/mv/armadaxp/armadaxp_mp.c +++ b/sys/arm/mv/armadaxp/armadaxp_mp.c @@ -46,6 +46,7 @@ #include #include +#include #include diff --git a/sys/arm/mv/mv_armv7_machdep.c b/sys/arm/mv/mv_armv7_machdep.c index 4fe59d2fe7df..c4c3280e4078 100644 --- a/sys/arm/mv/mv_armv7_machdep.c +++ b/sys/arm/mv/mv_armv7_machdep.c @@ -103,6 +103,10 @@ void mv_axp_platform_mp_setmaxid(platform_t plate); void mv_axp_platform_mp_start_ap(platform_t plate); #endif +vm_paddr_t fdt_immr_pa; +vm_offset_t fdt_immr_va; +static vm_offset_t fdt_immr_size; + #define MPP_PIN_MAX 68 #define MPP_PIN_CELLS 2 #define MPP_PINS_PER_REG 8 @@ -270,9 +274,35 @@ static int mv_platform_probe_and_attach(platform_t plate) { - if (fdt_immr_addr(MV_BASE) != 0) - while (1); - return (0); + phandle_t node; + u_long base, size; + int r; + + /* + * Try to access the SOC node directly i.e. through /aliases/. + */ + if ((node = OF_finddevice("soc")) != -1) + if (ofw_bus_node_is_compatible(node, "simple-bus")) + goto moveon; + /* + * Find the node the long way. + */ + if ((node = OF_finddevice("/")) == -1) + goto errout; + + if ((node = fdt_find_compatible(node, "simple-bus", 0)) == 0) + goto errout; + +moveon: + if ((r = fdt_get_range(node, 0, &base, &size)) == 0) { + fdt_immr_pa = base; + fdt_immr_va = MV_BASE; + fdt_immr_size = size; + return (0); + } + +errout: + while (1); } static void diff --git a/sys/arm/mv/mvvar.h b/sys/arm/mv/mvvar.h index 733cde06667e..990eeb444345 100644 --- a/sys/arm/mv/mvvar.h +++ b/sys/arm/mv/mvvar.h @@ -80,6 +80,9 @@ extern const struct decode_win *xor_wins; extern int idma_wins_no; extern int xor_wins_no; +extern vm_paddr_t fdt_immr_pa; +extern vm_offset_t fdt_immr_va; + int soc_decode_win(void); void soc_id(uint32_t *dev, uint32_t *rev); void soc_dump_decode_win(void); diff --git a/sys/dev/fdt/fdt_common.c b/sys/dev/fdt/fdt_common.c index 40b1b3c5fc4f..53d47c26b53d 100644 --- a/sys/dev/fdt/fdt_common.c +++ b/sys/dev/fdt/fdt_common.c @@ -62,10 +62,6 @@ SYSCTL_NODE(_hw, OID_AUTO, fdt, CTLFLAG_RD | CTLFLAG_MPSAFE, 0, "Flattened Device Tree"); -vm_paddr_t fdt_immr_pa; -vm_offset_t fdt_immr_va; -vm_offset_t fdt_immr_size; - struct fdt_ic_list fdt_ic_list_head = SLIST_HEAD_INITIALIZER(fdt_ic_list_head); static int @@ -199,38 +195,6 @@ fdt_get_range(phandle_t node, int range_id, u_long *base, u_long *size) return (0); } -int -fdt_immr_addr(vm_offset_t immr_va) -{ - phandle_t node; - u_long base, size; - int r; - - /* - * Try to access the SOC node directly i.e. through /aliases/. - */ - if ((node = OF_finddevice("soc")) != -1) - if (ofw_bus_node_is_compatible(node, "simple-bus")) - goto moveon; - /* - * Find the node the long way. - */ - if ((node = OF_finddevice("/")) == -1) - return (ENXIO); - - if ((node = fdt_find_compatible(node, "simple-bus", 0)) == 0) - return (ENXIO); - -moveon: - if ((r = fdt_get_range(node, 0, &base, &size)) == 0) { - fdt_immr_pa = base; - fdt_immr_va = immr_va; - fdt_immr_size = size; - } - - return (r); -} - int fdt_is_compatible_strict(phandle_t node, const char *compatible) { diff --git a/sys/dev/fdt/fdt_common.h b/sys/dev/fdt/fdt_common.h index e49049051209..ece54290a6ad 100644 --- a/sys/dev/fdt/fdt_common.h +++ b/sys/dev/fdt/fdt_common.h @@ -66,10 +66,6 @@ struct fdt_ic { device_t dev; }; -extern vm_paddr_t fdt_immr_pa; -extern vm_offset_t fdt_immr_va; -extern vm_offset_t fdt_immr_size; - #if defined(FDT_DTB_STATIC) extern u_char fdt_static_dtb; #endif From nobody Tue Apr 8 10:49:20 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX2rd19ypz5sCKq; Tue, 08 Apr 2025 10:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX2rc43QNz3kdT; Tue, 08 Apr 2025 10:49:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109360; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ODp1W5ow4ttaCPAqADSkDrn0JfXpvE3KLAf1iQCKFoc=; b=ltM6n32ZCcbi2MUt/26D8XABaAhoKJ7IjfGLd6SWBWfIVZ4Ps+u2Gt7K5WM6kjS4FMkUhq 6/7qZ6yojMJD0ksRVk5kCBxwGeu687kP+RRQ+C5wSfEp0R0H/SszuU+Y9fIeVeuqanc7AW 1kZ1oNMmiIrXrmzhf3guf4y33ijk8viEkS8HesdIdT1utb0xQEM547y0NzRtOWxKK1bEbI 2Sic92iWPTK3TxYZZghv/FGk5cVTFaMMxjioQRDk8VNINBBO8LGXGv+3BZizbhYd4T+Vw9 uw7aSuf7pGL5lIgsZxDonQU0eObJzfqEDD4UcBtP/HmAWTnFuzKPBb2ZTPsHUA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744109360; a=rsa-sha256; cv=none; b=M6fTaDIFN5+xhmL0HphH7wC5tyM3w3gux07KFaz/6+T4hZfzxBOEViM+tAKLl79w2wPGTi 4wLhPyr/wK5xRWHb3evrSwDBdFVK90VDpyF3l7UWKxE9Gf6ztWHGrsb5DFpZX5Y5cbOLBC RgvdKNPbRdYO+LZLQwSHRta7V4Y/CbEsgg3hzOmE+5Qr6rgDyRH8B690XAGW17opzPq99F pjGV73Vcb+6XBBLvHitbaqooGUOkm/reHaxInoX66OkF8fkGMZ8BclHc9I/N4m5NMqQoyw //FhuMfsTR7fPTNJkzM2TfOqz0GatLkgR36pB6bBOMMe0V6IrZeqVMoyX9QWzw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744109360; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ODp1W5ow4ttaCPAqADSkDrn0JfXpvE3KLAf1iQCKFoc=; b=fj+E14KhExA3WK1XMMbiHiiuLU1CQytWaKtlwJi97IHT1wFWPmCcYHTWR1nITeSK4neBqJ yyxZdOvmG45y+tRFCpv6EslwpNA/j1EF2s2tFIJPcRyWs1SdCZ4NaQ88rBwdGfILoyaIcK FdGJPOYam7FgIVpFlnQv1r1LPoWKcq/+tKf5tDF9kP5queYS2cwHp/39M8pAqUcFSwX1og 0UMl1OzJZkXY4+aUf7Gvurs92Ad/nbn3fR65HiV+MvmTFkhRFH1mCyMXB5OshrVtgxv6Eo gTZv/99HPvIloBs5AjkpPk0fYzsJ+v9x7RY6YrCFmCkuAgt7WuFQytCgkJeCfA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX2rc3g8SzCgF; Tue, 08 Apr 2025 10:49:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538AnK8F002323; Tue, 8 Apr 2025 10:49:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538AnKkt002320; Tue, 8 Apr 2025 10:49:20 GMT (envelope-from git) Date: Tue, 8 Apr 2025 10:49:20 GMT Message-Id: <202504081049.538AnKkt002320@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 10db84e11362 - main - arm/mv: Remove soc_id calls when not needed List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 10db84e11362e2573b733df4ddd887ee7d9ae317 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=10db84e11362e2573b733df4ddd887ee7d9ae317 commit 10db84e11362e2573b733df4ddd887ee7d9ae317 Author: Andrew Turner AuthorDate: 2025-04-08 10:46:55 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:48:28 +0000 arm/mv: Remove soc_id calls when not needed Reviewed by: cognet Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D49536 --- sys/arm/mv/mv_common.c | 8 -------- 1 file changed, 8 deletions(-) diff --git a/sys/arm/mv/mv_common.c b/sys/arm/mv/mv_common.c index 819a4fbf7978..ff6ec5af19d9 100644 --- a/sys/arm/mv/mv_common.c +++ b/sys/arm/mv/mv_common.c @@ -579,7 +579,6 @@ SYSINIT(mv_enter_debugger, SI_SUB_CPU, SI_ORDER_ANY, mv_enter_debugger, NULL); int soc_decode_win(void) { - uint32_t dev, rev; int mask, err; mask = 0; @@ -592,9 +591,6 @@ soc_decode_win(void) if ((err = win_cpu_from_dt()) != 0) return (err); - /* Retrieve our ID: some windows facilities vary between SoC models */ - soc_id(&dev, &rev); - if (soc_family == MV_SOC_ARMADA_XP) if ((err = decode_win_sdram_fixup()) != 0) return(err); @@ -1603,10 +1599,6 @@ decode_win_ahci_dump(u_long base) static int decode_win_sata_valid(void) { - uint32_t dev, rev; - - soc_id(&dev, &rev); - return (decode_win_can_cover_ddr(MV_WIN_SATA_MAX)); } From nobody Tue Apr 8 11:00:04 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX3504Mfyz5sChV; Tue, 08 Apr 2025 11:00: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX3503HFHz3rvT; Tue, 08 Apr 2025 11:00:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744110004; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u/olVQTJn54EgygyXrORJl1btXt0CSH4N+sDbqoWwvc=; b=q8tFnuMZBx7a22hj5GE5IT2FRp7DKVWTtbfnSJ5bxJDTHMxlyyhageNLCZy5E+oE4fGbdW CwuhWGkgq0CBZybn0asQkBUMduB9tsQtFBf1ijO+M6/byewCk1xE0JqsRhsQTTxn5UCTU7 Tm0wBS/2KorkbVx572HkQW37eI5wGB8siu4Y0LTAPXfGdnJ1aCK+bkutqHVIx02Kn5eIvu ce4YpYCJaZCBOy92JdmzkQ3axYf52af1BgGSXj9FqLyzg9wENgXIkHyjRnMUyzG5GoDSBX +7Xrpbdeb5oJ7qxFTzatSKMB8oQmFVq6ClxjyFS7EvC4l4kZQo1aGCTovfDPcQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744110004; a=rsa-sha256; cv=none; b=V14KdBWvCDn01R3OmsQS+Qs1xpRsEHjhNGMoMYJBsRcQ1Fs6vzDfebOT7fLr/TXFmm1hAf 8JvicslL5yKVAQKGZKpQC9g3SJfAoq7vNy7AL9lXppU8BwbV5KcuaRCExNd3hltW8ezlXC A/9haH8eRGSdwK14/62/ZYRkTF1saGBQOHk3IEpHURjWKCNg9dB2B0sbHzY/efDJqmkDKY qga4UZ53G3Zz3mDN0kHp60zEH6hLxqYQ8uhiEKsKS2E2PY7jkp6bKQ/KqCpo+OpxSjYNOX srX1Lx6D1YQhT9EFVZsJA6PvRUV6qir7rFoiq9ANfRtGdHf66ewxUXyfYgEwtg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744110004; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u/olVQTJn54EgygyXrORJl1btXt0CSH4N+sDbqoWwvc=; b=YQ9ZAtuAZo2AybYjelma6bMdryNSBc9zvdcSWhisqFpbELDZc1hHYU2WJAE7FkxhXfqMpt US8aqjD+//YoPNHRQ548y5kur45G86uRyOzcADFu91+6r9EG9gvNcl6iiz7/n5sODog83N GmmQ2hqd+OcTYX+h4+j+H8fkc9CvAtvEUBUPgeDafM4p4aiYp9S4RKSaOMo2IbZ6QJoYqf dJwRkbNL+HQm6QcisOUdHPLtvp5TqUFL4Z6caNLzqmKexOwn+gCb5RjeuKC1Umh1myC25e 4lLQ/jTivpwzdLm/Ww74v1Y2BUlkDSpdx7YiGVrB+M3d4+Zq2Sd9HbvTdgvbTQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX3502sGpzChF; Tue, 08 Apr 2025 11:00:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538B04wS024390; Tue, 8 Apr 2025 11:00:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538B0492024385; Tue, 8 Apr 2025 11:00:04 GMT (envelope-from git) Date: Tue, 8 Apr 2025 11:00:04 GMT Message-Id: <202504081100.538B0492024385@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 960c12f7d5aa - main - Revert "WIP: Cross-user git arc stage" List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 960c12f7d5aab90f6963f7f629f8ec55ce767af2 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=960c12f7d5aab90f6963f7f629f8ec55ce767af2 commit 960c12f7d5aab90f6963f7f629f8ec55ce767af2 Author: Andrew Turner AuthorDate: 2025-04-08 10:59:26 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:59:26 +0000 Revert "WIP: Cross-user git arc stage" It shouldn't have been pushed This reverts commit 4ed2c3f9ce28df401fc427bd60a8e3d9ecb40f4d. --- tools/tools/git/git-arc.sh | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/tools/tools/git/git-arc.sh b/tools/tools/git/git-arc.sh index 9bee35831844..7d2387565b9a 100644 --- a/tools/tools/git/git-arc.sh +++ b/tools/tools/git/git-arc.sh @@ -243,18 +243,12 @@ title2diff() local title title=$(echo $1 | sed 's/"/\\"/g') - #arc_list --no-ansi | - # awk -F': ' '{ - # if (substr($0, index($0, FS) + length(FS)) == "'"$title"'") { - # print substr($1, match($1, "D[1-9][0-9]*")) - # } - # }' - - echo "{ - \"queryKey\": \"all\", - \"constraints\": { \"query\": \"title:${title}\" } }" | - arc_call_conduit -- differential.revision.search | - jq -r ".response.data[] | select(.fields.title=\"${title}\") | @text \"D\( .id )\"" + arc_list --no-ansi | + awk -F': ' '{ + if (substr($0, index($0, FS) + length(FS)) == "'"$title"'") { + print substr($1, match($1, "D[1-9][0-9]*")) + } + }' } commit2diff() From nobody Tue Apr 8 11:00:05 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX3515GV4z5sCf0; Tue, 08 Apr 2025 11:00: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX35149rwz3rYn; Tue, 08 Apr 2025 11:00:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744110005; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Fm/4oNkwoCFeA3FEaXGvTSQJUHISy1SkGrpeGC38VKs=; b=l2I0YuPkEr3QE/GtlyvJnB4ZtsnhPMloubw1goXddDF2H5UFr2x/O2/3xcKHHTKx8brAqR v7ETppxKiQRA95cTOeGjDnlxcQTGX1yFVIAZbXtuBJg571ipNlxOXa/MzuXyilNEYUAgJr K+MDa+Ydnzzs/IvIaIk3pq6YnYZ/ay+uSp4aJ87JH6mc/0IBKFPJ99VV104et1hz92sjIL DwO5SvtwXKA+/K1G0dT2b3prwwJhglkyFwhuhaNN5odt83pXZ2GLqvMmEm4w08w/fuWWG8 PaXSbjcELZP3oSbpTGz/RXvxYF/I0Qu8Qqb5jporkltks72A2F+sZjQ/G9+OLw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744110005; a=rsa-sha256; cv=none; b=LQKL+I5DdkIC5D5d29tBRF0IgKhuPXaY1I5tdufiqnCWI9lGgmwkfC5QpiphXjQwiaei6b qR3+m8MUI/mkVXpwRPu5+skZ7tQSkU0XYwtegulNNfs2YLhxxB9klDrzjbKqL/sp6SFwUD UUB/nU5hTwlzO6uSgBeT8SkTc5/YdLTANtUICtd2CE7IO3AsK7mQqujHmIAYvYiBhEb5I+ 4gKiIfCffL9UCFKrv4BA5UVzKf0rjYOVSvCtOllIw2hlULQ9pYCaq4CNnHC6VV7F+P+uM9 mrfEiTW4VUPrCpnl5Z0xcGpv39cWoKTuLDCPY7fxGnTXRwAvo7wklMtqg3Y3ag== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744110005; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Fm/4oNkwoCFeA3FEaXGvTSQJUHISy1SkGrpeGC38VKs=; b=e360vjHQbPQ25y4tV1BfNRCGHMkpMinE/CmY/x3PdTvmrvacWxgh5xHVUjS98Zv6uLbKy5 p8Bums7y/owuBFPGmrmKG9isWRUAFTEdERPbkNIRkX+mc2qT+odExli5dMbGeJy+k8dp+T 5n4B6bp5PAg4yKEBvEd0Sa/4Wax/qjGd4g0pbYQrRp5tGunv2yvT4Yh5soO5HboXDpOcLY tJ1YzIafHvspazI/bT7Ptn6jddYqTq/fdmyCc0Zw3nsnQHyJpzknsmuFsDZdTFk2iVKexa b+Xh0ksaTAzJRSpyGp3WGCpjEJne1cmnS9g1HGZ2EdUSQ86PE9pAiKQsR+2C0w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX3513ctyzDFj; Tue, 08 Apr 2025 11:00:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538B05B2024656; Tue, 8 Apr 2025 11:00:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538B055r024651; Tue, 8 Apr 2025 11:00:05 GMT (envelope-from git) Date: Tue, 8 Apr 2025 11:00:05 GMT Message-Id: <202504081100.538B055r024651@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: d937ddacc65c - main - Revert "git-arc: Add stage -n to not change the branch" List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d937ddacc65c8dfbb9f4df4a520f8f60ebe6358f Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=d937ddacc65c8dfbb9f4df4a520f8f60ebe6358f commit d937ddacc65c8dfbb9f4df4a520f8f60ebe6358f Author: Andrew Turner AuthorDate: 2025-04-08 10:59:44 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:59:44 +0000 Revert "git-arc: Add stage -n to not change the branch" It shouldn't have been pushed This reverts commit 1c6170d7712265beecb318309ec5afaddbcf350e. --- tools/tools/git/git-arc.sh | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/tools/tools/git/git-arc.sh b/tools/tools/git/git-arc.sh index 7d2387565b9a..b49721159799 100644 --- a/tools/tools/git/git-arc.sh +++ b/tools/tools/git/git-arc.sh @@ -654,15 +654,11 @@ gitarc__stage() local author branch commit commits diff reviewers title tmp branch=main - change_branch=yes - while getopts b:n o; do + while getopts b: o; do case "$o" in b) branch="$OPTARG" ;; - n) - change_branch=no - ;; *) err_usage ;; @@ -672,12 +668,10 @@ gitarc__stage() commits=$(build_commit_list "$@") - if [ "$change_branch" = "yes" ]; then - if [ "$branch" = "main" ]; then - git checkout -q main - else - git checkout -q -b "${branch}" main - fi + if [ "$branch" = "main" ]; then + git checkout -q main + else + git checkout -q -b "${branch}" main fi tmp=$(xmktemp) From nobody Tue Apr 8 11:00:06 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX3525f7Cz5sD3l; Tue, 08 Apr 2025 11:00: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX3524cQ4z3rsh; Tue, 08 Apr 2025 11:00:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744110006; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xTKZ9yn4QXCZSqeIqAvZBFkmH/ypdNYCKL5KdYBC+7g=; b=uQQnoebAEvUXD3WiQcxCghpzsMTtxwQS9mdk6fs+nZD8PH2Hm61VThIqZF9cAJDMDjAx/d EDLtTNbfjt9ygMnIRLCW7ZazQRnZ2I5PcICDp3Uuf/UHlfSScLjAPgKJAUhT9QP+vcWZtQ KsW0h7wM1SbvcaD7t6/I9ChH7r+WeaIQSaZ5ibi6l0tZFDv3hCmBwG89xcy12MRmXJw/Hr ljDgEXgJYwN2BkTAd+zM7JPkIBzP6mBSZnuboRZlvs+K94fHO6Jfr0hdQsezwwwF7fdNni UR1BT8tWqmDKriqt0Su1kOS1QuDSL04HOoCIyMprXZ186QVzxDy8Xzym85bEvA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744110006; a=rsa-sha256; cv=none; b=q2YmAvsCYJBv1CD3sPKHhBshpY4qPMhISXMnMQWD5QAaIuOeBDitD734JuTXHaEc7EuAB8 o+o+hpnz7ki7CE3dQAvUImZ5IHT0hwudEG0vkIRB0Y2wEHM7EONFXIJezBUL6OT3BZwCje dGnugJbxE5L45P0yGDmRNQJs5ROtGpJf2tgAAeSiE/R2HTcSUpi2yrcUNqk5W6Df2GIeRP voWBtuvfsijEZ4VcfhMoKPpsKG4+HGhQqJ+g7hEbIayANCMm4UpWtFTRgUOlRQ/fPwk0tb xdd2dQpDa2JYGCNEQlDbLp/cWsojHMPlj6PM2zkT3KqN//kqrQUEGctknOC/Ng== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744110006; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xTKZ9yn4QXCZSqeIqAvZBFkmH/ypdNYCKL5KdYBC+7g=; b=xw2QqhE9WvB3gQ6syVi9kWHhO4iWHCo+TOWlKb6Wszvookqjj3YR7kL+eM7zIq8Afcua4j 04v5ZDz2zf4YzI4Mr8NnFCf9A7TBXD0eZHKcryN9uG9yWZYCgCvOAoPI1dPoawUoLhJOA7 gIM7yVCV7EfW5Yqoj0cgF+uNPifJkoP6uUSxBflySIGUfJjca8xO2R+88GDx6VSAeVB5hs V5huzdbakQDTbYbgBlpGEcN4Kzz1uOCS5jRrEHEcLkIdJ4vKCLTW7WBx0dLDO0TJHhs0if F68wV728fnhynAHF4IduBwDbbTQ2azlP+0N1Hzd9kqLTgagCb3Xa94CPlabN3Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX35248v1zDFk; Tue, 08 Apr 2025 11:00:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538B06i5024923; Tue, 8 Apr 2025 11:00:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538B06CM024918; Tue, 8 Apr 2025 11:00:06 GMT (envelope-from git) Date: Tue, 8 Apr 2025 11:00:06 GMT Message-Id: <202504081100.538B06CM024918@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 487c7245a789 - main - Revert "WIP: Cross-build github action on for-main" List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 487c7245a7899fe5bbc7cea30cca36ce33360a45 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=487c7245a7899fe5bbc7cea30cca36ce33360a45 commit 487c7245a7899fe5bbc7cea30cca36ce33360a45 Author: Andrew Turner AuthorDate: 2025-04-08 10:59:48 +0000 Commit: Andrew Turner CommitDate: 2025-04-08 10:59:48 +0000 Revert "WIP: Cross-build github action on for-main" It shouldn't have been pushed This reverts commit d16397c1737f5f977e893daebde0e7009d6a9950. --- .github/workflows/cross-bootstrap-tools.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cross-bootstrap-tools.yml b/.github/workflows/cross-bootstrap-tools.yml index 516374ab4c7b..540e05cbd6e2 100644 --- a/.github/workflows/cross-bootstrap-tools.yml +++ b/.github/workflows/cross-bootstrap-tools.yml @@ -2,7 +2,7 @@ name: Cross-build Kernel on: push: - branches: [ main, 'stable/14', 'stable/13', 'for-main' ] + branches: [ main, 'stable/14', 'stable/13' ] pull_request: branches: [ main ] workflow_dispatch: From nobody Tue Apr 8 12:50:12 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZX5X534jgz5sLyk; Tue, 08 Apr 2025 12:50: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZX5X46q2pz4HDp; Tue, 08 Apr 2025 12:50:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744116613; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=76HxuQfNL5vGk+Hr5zjiV2BuMqA9IA5/AzI957LEtEA=; b=JIy5i01iUwpXhNqk3hKCW83qSrv4LccO63oqP3kW3NSXLSANt//q9+te+nXpk2JlRohdWk sM/GexOOwiE3kG8CrOVuVLVuiURWWGJnh5xHTzCgKyYz7e7yCRBtlgoJl9yZZjgK3qztDE drK7eZf/6Cmu0s+qbA7dwyFZBFSsGE2JG39rebWQZNGQO2IRGC6DdNR1XgyOWMp38cXp/m 4qMvmAJCFdBTE0ubq1RD13fa+tuP75GLeGUdLj+F7wjcAAPlS9lBtUf7Qbi9ZoVcSjf35x +/YUaBnqqPcQnmKulzyOm/QzmB3QkUcwigSHlugkli3OdELraR4zl4Vp0ojeRw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744116613; a=rsa-sha256; cv=none; b=pqniH/DaJ9lZdw/As4SCeEATH5OXoEFE5Rp/kgQQ9jFk0ft+u/1g0XtpPyfSBiYfuW/QzB fFf/Hk+KMhKdyTs1I05r3bNkOKYL/FQ6/EXQuU14WuXPVgAxCUrZLmxykStqyri/0J7QLv pbBwf63Q7ahXaMXE1N6/AywtCDeYqNpFm3Q1EfKEONXOP01FvLxv12eBEf99m0Y5S7fDvZ kRmcJLf4/It7U3S+8L/fXniPk7XCzBT+jFfQu6a4vT37SOOTvt2tfs5W/niSvgvUZ9pvxh IxbatRMM4qV0Yl+zBY9qhWOhZJ/HPTRh4Py/r/EdeIExR0FYvNieWs+j7ACEzA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744116613; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=76HxuQfNL5vGk+Hr5zjiV2BuMqA9IA5/AzI957LEtEA=; b=j0xEuC1ebt8BIZ1m/IgAkb5U1jcpR8Q8An97Evsty6Yjn8C3AHsg1yBtBf6rzX3Adg7Prx x1FJEhThC6eTJwckHrU++sl8Ma8EsgomyoZAMNG3eB+3Xuh+2L57S47pJGfRzc3HmPCBIM /kuQJU4B9vaLoozSQSDMszZwTRqTJpV6ndPXMiLCvMK5dALSkvoIfzszA11lZ0NxO82aMN 9x722N8Oo0XInm/r6Y5E6ppUqjy44gaX06JK+Z+VQH1OCmxCTrmhhnZrzI5hPentIhdd8f zsjVyoC0j2sTCHY44ZR64RhCs19/ubYdDTjbUWy3QD7WjGSTU75TK6mAMzvk7Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZX5X46CB1zYpN; Tue, 08 Apr 2025 12:50:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538CoC0h034414; Tue, 8 Apr 2025 12:50:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538CoCN1034405; Tue, 8 Apr 2025 12:50:12 GMT (envelope-from git) Date: Tue, 8 Apr 2025 12:50:12 GMT Message-Id: <202504081250.538CoCN1034405@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: fc8310db5208 - main - RELNOTES: mac_do(4): Change of rules syntax; Provide hints and pointers List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fc8310db5208a5a0d9acd4a9f61aa6e5180fb376 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=fc8310db5208a5a0d9acd4a9f61aa6e5180fb376 commit fc8310db5208a5a0d9acd4a9f61aa6e5180fb376 Author: Olivier Certner AuthorDate: 2025-04-03 12:08:31 +0000 Commit: Olivier Certner CommitDate: 2025-04-08 12:49:12 +0000 RELNOTES: mac_do(4): Change of rules syntax; Provide hints and pointers Reviewed by: markj, emaste MFC after: Immediately Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49658 --- RELNOTES | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/RELNOTES b/RELNOTES index 7b5eac0d8730..70b59cdb621e 100644 --- a/RELNOTES +++ b/RELNOTES @@ -10,6 +10,16 @@ newline. Entries should be separated by a newline. Changes to this file should not be MFCed. +f0600c41e754-de701f9bdbe0, bc201841d139: + mac_do(4) is now considered production-ready and its functionality has + been considerably extended at the price of breaking credentials + transition rules' backwards compatibility. All that could be specified + with old rules can also be with new rules. Migrating old rules is just + a matter of adding "uid=" in front of the target part, substituting + commas (",") with semi-colons (";") and colons (":") with greater-than + signs (">"). Please consult the mac_do(4) manual page for the new rules + grammar. + 02d4eeabfd73: hw.snd.maxautovchans has been retired. The commit introduced a hw.snd.vchans_enable sysctl, which along with From nobody Tue Apr 8 17:34:53 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXCrZ0JkPz5sh6J; Tue, 08 Apr 2025 17:34: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXCrY5zrcz3Jf8; Tue, 08 Apr 2025 17:34:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133693; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RJjKfBpl4DPGwkpyzcsRjsDoqNYtiCl5eGgUSQ8EPlA=; b=B+JAEPNplZmun1G1yvRyMYAypMDVWq9ax6tzhT425uSIsCNx+/JjD1hEZDmZJzkFqqNLA6 xDVeW+/Fd0UDm7dYscnetB0GRvomRnZvqOZ95vMCrQpxMP02ssHrpZIYLwtbdP8RgeZGzy EkOFVwTXVjmGtXKlvepKFIPFmUoKbja3A0k4iI8a+qjtaGgpXMJu7P5QALWvYLLvmGG2eH XyCGsVvxT124QTjd+zSaWZrGo0w3AkAnnQ1BocHGph0Cwx3UDukl/FR5F/xAUP+ZliowBi zVK4N1j6R86N73Sl1mjFtw2lnANCOdikfsYHi7OQP36cwAZlmY32QT0vqW/ZNw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744133693; a=rsa-sha256; cv=none; b=JbowJJUz6rRVQxBN7vNmcjAJtk7tgdD2Ik+V0a7zWOzF/32eoEKOGtI72FjYOyvOFKIDlB JR7Q2CWiPZM/JWPLlnI2Pzc7AnbX1LSJ+bd9uHP8vKr1JFNOrg6j9e7w0H0GRV6dJRGhp/ d1Ko2inL4cka+rDnkMiSf3LiVwVcjmz2/mAKVJJGwZc9k1lOBjKwD/5ApE7QW4Vigl40qn Lv0r9x/LhkijlePNnBczpLk/1cG03Rds6QN5ytMiKbqwHLtirv1jkTHruBOS4DJPq+3CUI 8cKGs3FivAx8iFj8mD3ZfW946/NrWufXSmn8p0s29np2eszjAQ0DPNe/w2YiMA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133693; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RJjKfBpl4DPGwkpyzcsRjsDoqNYtiCl5eGgUSQ8EPlA=; b=Z6WkUq+Yo3idE1QwGDOeqz4XesCAGY7wAjv7WuJmHrMyxA1OF+oaL25x8AKPT2cF3Qy/by kN6aAdlC3g1Vr4WONlrxido0P32kFKKijr3Q0KWiUuP0QHvQebAEfr8Lmhy3s/MdaL4jL0 8Bt/s7cHDKwml7FQuz9VsQ1v1laPk2o1deGKQh5ukHNrX2BS+xXVWOgmUw3yna8tniUpG/ owQ0Ug1/sXw9OtTGIDGnfkpQcgWdHNHXF32AmNDxy/EfdFJSku8DHU8yAcW12QsueImHsy j7Yi2l5hRs92cTZ9ra2wMnldI54kXhwF/1xiezRK28JkfAmiWkovUQ5GpXxLpg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXCrY5T00zhPC; Tue, 08 Apr 2025 17:34:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538HYrNa067734; Tue, 8 Apr 2025 17:34:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538HYrb2067731; Tue, 8 Apr 2025 17:34:53 GMT (envelope-from git) Date: Tue, 8 Apr 2025 17:34:53 GMT Message-Id: <202504081734.538HYrb2067731@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 65f6c19efa82 - main - libc/tests: copy t_getaddrinfo out from contrib/netbsd-tests List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 65f6c19efa82e5988092d0c71befd10147a1ede3 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=65f6c19efa82e5988092d0c71befd10147a1ede3 commit 65f6c19efa82e5988092d0c71befd10147a1ede3 Author: K Rin AuthorDate: 2025-04-05 23:47:16 +0000 Commit: Gleb Smirnoff CommitDate: 2025-04-08 16:48:51 +0000 libc/tests: copy t_getaddrinfo out from contrib/netbsd-tests It is going to be modified in next commits. --- lib/libc/tests/net/getaddrinfo/Makefile | 4 +- lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh | 198 ++++++++++++++++++++++++ 2 files changed, 199 insertions(+), 3 deletions(-) diff --git a/lib/libc/tests/net/getaddrinfo/Makefile b/lib/libc/tests/net/getaddrinfo/Makefile index 1c8d68d8cc25..dfcad2d92307 100644 --- a/lib/libc/tests/net/getaddrinfo/Makefile +++ b/lib/libc/tests/net/getaddrinfo/Makefile @@ -1,12 +1,10 @@ PACKAGE= tests -TESTSRC= ${SRCTOP}/contrib/netbsd-tests/lib/libc/net/${.CURDIR:T} - .include BINDIR= ${TESTSDIR} -NETBSD_ATF_TESTS_SH= getaddrinfo_test +ATF_TESTS_SH= t_getaddrinfo ATF_TESTS_C= getaddrinfo PROGS= h_gai diff --git a/lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh b/lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh new file mode 100755 index 000000000000..94a3c0b2e52c --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh @@ -0,0 +1,198 @@ +# $NetBSD: t_getaddrinfo.sh,v 1.2 2011/06/15 07:54:32 jmmv Exp $ + +# +# Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, and 2002 WIDE Project. +# 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. +# 3. Neither the name of the project nor the names of its contributors +# may be used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE PROJECT 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 PROJECT 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. +# + +check_output() +{ + if [ "$2" = "none" ] ; then + exp="${1}.exp" + elif [ "$2" = "hosts" ] ; then + # Determine if localhost has an IPv6 address or not + lcl=$( cat /etc/hosts | \ + sed -e 's/#.*$//' -e 's/[ ][ ]*/ /g' | \ + awk '/ localhost($| )/ {printf "%s ", $1}' ) + if [ "${lcl%*::*}" = "${lcl}" ] ; then + exp="${1}_v4.exp" + else + exp="${1}_v4v6.exp" + fi + elif [ "$2" = "ifconfig" ] ; then + lcl=$( ifconfig lo0 | grep inet6 ) + if [ -n "${lcl}" ] ; then + exp="${1}_v4v6.exp" + else + exp="${1}_v4.exp" + fi + else + atf_fail "Invalid family_match_type $2 requested." + fi + + cmp -s $(atf_get_srcdir)/data/${exp} out && return + diff -u $(atf_get_srcdir)/data/${exp} out && \ + atf_fail "Actual output does not match expected output" +} + +atf_test_case basic +basic_head() +{ + atf_set "descr" "Testing basic ones" +} +basic_body() +{ + TEST=$(atf_get_srcdir)/h_gai + + ( $TEST ::1 http + $TEST 127.0.0.1 http + $TEST localhost http + $TEST ::1 tftp + $TEST 127.0.0.1 tftp + $TEST localhost tftp + $TEST ::1 echo + $TEST 127.0.0.1 echo + $TEST localhost echo ) > out 2>&1 + + check_output basics hosts +} + +atf_test_case specific +specific_head() +{ + atf_set "descr" "Testing specific address family" +} +specific_body() +{ + TEST=$(atf_get_srcdir)/h_gai + + ( $TEST -4 localhost http + $TEST -6 localhost http ) > out 2>&1 + + check_output spec_fam hosts +} + +atf_test_case empty_hostname +empty_hostname_head() +{ + atf_set "descr" "Testing empty hostname" +} +empty_hostname_body() +{ + TEST=$(atf_get_srcdir)/h_gai + + ( $TEST '' http + $TEST '' echo + $TEST '' tftp + $TEST '' 80 + $TEST -P '' http + $TEST -P '' echo + $TEST -P '' tftp + $TEST -P '' 80 + $TEST -S '' 80 + $TEST -D '' 80 ) > out 2>&1 + + check_output no_host ifconfig +} + +atf_test_case empty_servname +empty_servname_head() +{ + atf_set "descr" "Testing empty service name" +} +empty_servname_body() +{ + TEST=$(atf_get_srcdir)/h_gai + + ( $TEST ::1 '' + $TEST 127.0.0.1 '' + $TEST localhost '' + $TEST '' '' ) > out 2>&1 + + check_output no_serv hosts +} + +atf_test_case sock_raw +sock_raw_head() +{ + atf_set "descr" "Testing raw socket" +} +sock_raw_body() +{ + TEST=$(atf_get_srcdir)/h_gai + + ( $TEST -R -p 0 localhost '' + $TEST -R -p 59 localhost '' + $TEST -R -p 59 localhost 80 + $TEST -R -p 59 localhost www + $TEST -R -p 59 ::1 '' ) > out 2>&1 + + check_output sock_raw hosts +} + +atf_test_case unsupported_family +unsupported_family_head() +{ + atf_set "descr" "Testing unsupported family" +} +unsupported_family_body() +{ + TEST=$(atf_get_srcdir)/h_gai + + ( $TEST -f 99 localhost '' ) > out 2>&1 + + check_output unsup_fam none +} + +atf_test_case scopeaddr +scopeaddr_head() +{ + atf_set "descr" "Testing scoped address format" +} +scopeaddr_body() +{ + TEST=$(atf_get_srcdir)/h_gai + + ( $TEST fe80::1%lo0 http +# IF=`ifconfig -a | grep -v '^ ' | \ +# sed -e 's/:.*//' | head -1 | awk '{print $1}'` +# $TEST fe80::1%$IF http + ) > out 2>&1 + + check_output scoped none +} + +atf_init_test_cases() +{ + atf_add_test_case basic + atf_add_test_case specific + atf_add_test_case empty_hostname + atf_add_test_case empty_servname + atf_add_test_case sock_raw + atf_add_test_case unsupported_family + atf_add_test_case scopeaddr +} From nobody Tue Apr 8 17:34:54 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXCrb4CFDz5shQZ; Tue, 08 Apr 2025 17:34: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXCrZ6pccz3Jmy; Tue, 08 Apr 2025 17:34:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133695; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yNkan3FG++TRupKgYramsQ3ohp5laSoB9FnuI+PimRk=; b=ISF6sSoyWICTlnzpUb9Y1rd0plPCqTkJ9uUs60fen2h+KM1i+MrQJ247RsNSI5jU9hmUfc QkWBVVKrvi/J1L9KJjwpuvbsRyTT8BnriSCnMyGL2RpoHi3HviHOLCOzqf6iilqOSC8l7o xm28HIZU++mlZTshXM8OnHyTzPPmgi1wqDDc/ZhnqZmKQwYQPhLA6NcseMUelIpN2yS97q gGJFTC9ckV3QMZ3RkK12P3wzEAMsmf1H6XgxY+WBY3zfbQmXNDKqnKsqIU59SbkxUvEifn rUQabC4EY5iqglZx9a9mP/hiV0oNrVx4hkUl+AQlmZCHj/FBnbPekoXiPVFyyg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744133695; a=rsa-sha256; cv=none; b=G41hP3zF7xm1/A1TgqqLmIxqVox3yllhGYblmm9CFu9KRkKGVvUW99V+46QyAh2ImktxlI jSvQ2bc36+99wetYqBH635aKeuY5Qyv/HmpWoSCsTCjshSnAayjCDQFWz+LZi/Vg9W/Ptl 45v5Zj8Ny+ZjO+PELILlXLucyX+Z7oer+SJGeX1oAiWVTH2f+f6xpkYE+RtiQn1J3Yb7MK R35dkwUwCNpqkE0w/dRZRpqw/tPK9l4oPPcJL1idtZjHli2UppOF692xOG/4Ujf3G9rSaU VUqihD35AgzayPxPBobPcghfQWy6kdAqiYzsTFfKqY5x0YdVC9AqG+E0GHEtGA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133695; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yNkan3FG++TRupKgYramsQ3ohp5laSoB9FnuI+PimRk=; b=QmCbtkML3tEWFNIVqBNmv2pdI2/w5sV7S2X2+Q5d3uFQDpT8sy2yYX6+yY4HICAMnFfYym +JfD68Kx6AB+psqROBXE/7YAOcjeHjknCjiX1epWFQsxuXq9h33FicXIq0ONM09p3NC9Fe 7VVNB2fk79lkIjAtBttzWOWqHPsWAXXIAil45NRnS6ngRsrhxnL87HviHQQkYBvnk0huUv pMlEGoJKVWMK+gR4g4QHONFNBhCbCmXVO8FYxbLAUpRviYFxkSi5RFFpzwBYyE+CeSNS1A 2Y81Asya/tOniPC6z8a4GwJG6wtW2NuTOJEpQLscnJiYqIRuafm4P6D3141i5g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXCrZ6QJdzjBQ; Tue, 08 Apr 2025 17:34:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538HYsc9067768; Tue, 8 Apr 2025 17:34:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538HYswS067765; Tue, 8 Apr 2025 17:34:54 GMT (envelope-from git) Date: Tue, 8 Apr 2025 17:34:54 GMT Message-Id: <202504081734.538HYswS067765@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 4b990663ff63 - main - libc/tests: fix couple errors for getaddrinfo_test List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4b990663ff63de8db700dc0e386421c201e43412 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=4b990663ff63de8db700dc0e386421c201e43412 commit 4b990663ff63de8db700dc0e386421c201e43412 Author: K Rin AuthorDate: 2025-04-05 23:54:11 +0000 Commit: Gleb Smirnoff CommitDate: 2025-04-08 16:49:54 +0000 libc/tests: fix couple errors for getaddrinfo_test - The reason our test is flaky is its dependence on ip6addrctl_policy. - While here, fix shell logic. When our diff(1) prints a diff it returns a nonzero status and this is when we want to atf_fail(). --- lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh b/lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh index 94a3c0b2e52c..79997a9a1631 100755 --- a/lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh +++ b/lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh @@ -55,7 +55,7 @@ check_output() fi cmp -s $(atf_get_srcdir)/data/${exp} out && return - diff -u $(atf_get_srcdir)/data/${exp} out && \ + diff -u $(atf_get_srcdir)/data/${exp} out || \ atf_fail "Actual output does not match expected output" } @@ -188,6 +188,7 @@ scopeaddr_body() atf_init_test_cases() { + service ip6addrctl prefer_ipv6 atf_add_test_case basic atf_add_test_case specific atf_add_test_case empty_hostname From nobody Tue Apr 8 17:34:55 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXCrc1YqVz5shWb; Tue, 08 Apr 2025 17:34:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXCrc0HLsz3Jn0; Tue, 08 Apr 2025 17:34:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133696; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=N9ABW+EnKtHHp/4LA6XMuEht0OPqRX264WfXFJnbSEg=; b=QR5kXVWAVorLRhMp+m45x4s6u9CT61qM4uWcmIc3e7E9v012gcOTfEJ0uIQ7uOrdm9uCBs yWPyb2dPHrxqH4F1HjCyOnHIxl4FmU+nsxJpL+YwqVTaEurMGW+9CCWIUv7t+0Xr7TOhFG I1lbCq5Ib7gBIn8uCpc3WzFp1hKz5ITqVNvybAemsxtrY+DCZk0pzq+l32VR+S2Z2Ujbqg yf4GiyqeIG/OcfeNtW1JgHxX9RgGnpgxVVL0/l7QIeq83tZlZA5IDV+ay6V6u17yo57aYW c0ZMaVAmNeiIqVYzkxv/2sicGJPQl4ScpP0T/lw0ybmmRHHSl0YMeLRcIslR6w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744133696; a=rsa-sha256; cv=none; b=WrXj9Fzf3OR2p9G5FxAb+ViaU7vcc10HE68nSQXCfEqtTVe5z4It81Ognaqo25B62r44Lq 895D4b/CSW8ZBZe5qVnrtrRC1Y+euqc7cckPdez7PY1QXcvc5XPN4Fu4NBFHGLU/JvTcGj mZBJkEz9zbjBMEeHABwYLMXQNaSBidt3t9Ti4YtQGfxS1539Ek4LjaFlZNSc/MlbnsBrZQ je+x//N1VpU0V6qnwo2TzGjT4/Qm1liFXy8/OabPev5ohM6H1hlS2P+VkY8u0pW774rMSQ ykA1aAuUP7HEiF5DK4mc3j2NcvXYr/4TlnOPXzusDMgU5rU6QXBpLvSev/TJhg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133696; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=N9ABW+EnKtHHp/4LA6XMuEht0OPqRX264WfXFJnbSEg=; b=d3yHqGLexiBGzXEMI8U2jqNm0GdirInFU0JLylZ83MobOH1DISi54GB1BypC6FKidXkWwe xtHatCyFUAw8FT4QWQo/ni+hpd8L1JWLAD8cxSwhG/cX+oxTK/VuUsza7KWMaHMdlGFCE6 +56nbKgzqu66o3hyuS2Razsy4/qibM/0Pv22E5/NSPtgrdxzuK25U3MQtSIG3i05uCQUnM LXqb6Z7HUNYMZpADD//72RL+pHvtXw/LO2XBncShKKE8OIATAAdXneR6/IF3g2Z3UIjo4Y ha6bBNQRFiyrNTl3Xajs5EGrrijZ+qtSxePOvAKZ8UFe/iWRdVDNK+bdwPBKZg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXCrb70rmzhPD; Tue, 08 Apr 2025 17:34:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538HYtYQ067807; Tue, 8 Apr 2025 17:34:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538HYtA2067804; Tue, 8 Apr 2025 17:34:55 GMT (envelope-from git) Date: Tue, 8 Apr 2025 17:34:55 GMT Message-Id: <202504081734.538HYtA2067804@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: a18476bd7118 - main - libc/tests: move getaddrinfo_test data to a subdirectory List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a18476bd7118a28cc402bda52898999b86f15e58 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=a18476bd7118a28cc402bda52898999b86f15e58 commit a18476bd7118a28cc402bda52898999b86f15e58 Author: K Rin AuthorDate: 2025-04-06 00:00:56 +0000 Commit: Gleb Smirnoff CommitDate: 2025-04-08 16:52:33 +0000 libc/tests: move getaddrinfo_test data to a subdirectory --- lib/libc/tests/net/getaddrinfo/Makefile | 19 ++++++++++++------- .../tests/net/getaddrinfo/{ => data}/basics_v4.exp | 0 .../tests/net/getaddrinfo/{ => data}/basics_v4v6.exp | 0 .../tests/net/getaddrinfo/{ => data}/no_host_v4.exp | 0 .../tests/net/getaddrinfo/{ => data}/no_host_v4v6.exp | 0 .../tests/net/getaddrinfo/{ => data}/no_serv_v4.exp | 0 .../tests/net/getaddrinfo/{ => data}/no_serv_v4v6.exp | 0 lib/libc/tests/net/getaddrinfo/{ => data}/scoped.exp | 0 .../tests/net/getaddrinfo/{ => data}/sock_raw_v4.exp | 0 .../net/getaddrinfo/{ => data}/sock_raw_v4v6.exp | 0 .../tests/net/getaddrinfo/{ => data}/spec_fam_v4.exp | 0 .../net/getaddrinfo/{ => data}/spec_fam_v4v6.exp | 0 .../tests/net/getaddrinfo/{ => data}/unsup_fam.exp | 0 13 files changed, 12 insertions(+), 7 deletions(-) diff --git a/lib/libc/tests/net/getaddrinfo/Makefile b/lib/libc/tests/net/getaddrinfo/Makefile index dfcad2d92307..0b2a06785ade 100644 --- a/lib/libc/tests/net/getaddrinfo/Makefile +++ b/lib/libc/tests/net/getaddrinfo/Makefile @@ -14,13 +14,18 @@ ${PACKAGE}DATA_FILESPACKAGE= tests ${PACKAGE}DATA_FILESDIR= ${TESTSDIR}/data -${PACKAGE}DATA_FILES+= basics_v4.exp basics_v4v6.exp -${PACKAGE}DATA_FILES+= no_host_v4.exp no_host_v4v6.exp -${PACKAGE}DATA_FILES+= no_serv_v4.exp no_serv_v4v6.exp -${PACKAGE}DATA_FILES+= sock_raw_v4.exp sock_raw_v4v6.exp -${PACKAGE}DATA_FILES+= spec_fam_v4.exp spec_fam_v4v6.exp -${PACKAGE}DATA_FILES+= scoped.exp -${PACKAGE}DATA_FILES+= unsup_fam.exp +${PACKAGE}DATA_FILES+= data/basics_v4.exp +${PACKAGE}DATA_FILES+= data/basics_v4v6.exp +${PACKAGE}DATA_FILES+= data/no_host_v4.exp +${PACKAGE}DATA_FILES+= data/no_host_v4v6.exp +${PACKAGE}DATA_FILES+= data/no_serv_v4.exp +${PACKAGE}DATA_FILES+= data/no_serv_v4v6.exp +${PACKAGE}DATA_FILES+= data/scoped.exp +${PACKAGE}DATA_FILES+= data/sock_raw_v4.exp +${PACKAGE}DATA_FILES+= data/sock_raw_v4v6.exp +${PACKAGE}DATA_FILES+= data/spec_fam_v4.exp +${PACKAGE}DATA_FILES+= data/spec_fam_v4v6.exp +${PACKAGE}DATA_FILES+= data/unsup_fam.exp .include "../../Makefile.netbsd-tests" diff --git a/lib/libc/tests/net/getaddrinfo/basics_v4.exp b/lib/libc/tests/net/getaddrinfo/data/basics_v4.exp similarity index 100% rename from lib/libc/tests/net/getaddrinfo/basics_v4.exp rename to lib/libc/tests/net/getaddrinfo/data/basics_v4.exp diff --git a/lib/libc/tests/net/getaddrinfo/basics_v4v6.exp b/lib/libc/tests/net/getaddrinfo/data/basics_v4v6.exp similarity index 100% rename from lib/libc/tests/net/getaddrinfo/basics_v4v6.exp rename to lib/libc/tests/net/getaddrinfo/data/basics_v4v6.exp diff --git a/lib/libc/tests/net/getaddrinfo/no_host_v4.exp b/lib/libc/tests/net/getaddrinfo/data/no_host_v4.exp similarity index 100% rename from lib/libc/tests/net/getaddrinfo/no_host_v4.exp rename to lib/libc/tests/net/getaddrinfo/data/no_host_v4.exp diff --git a/lib/libc/tests/net/getaddrinfo/no_host_v4v6.exp b/lib/libc/tests/net/getaddrinfo/data/no_host_v4v6.exp similarity index 100% rename from lib/libc/tests/net/getaddrinfo/no_host_v4v6.exp rename to lib/libc/tests/net/getaddrinfo/data/no_host_v4v6.exp diff --git a/lib/libc/tests/net/getaddrinfo/no_serv_v4.exp b/lib/libc/tests/net/getaddrinfo/data/no_serv_v4.exp similarity index 100% rename from lib/libc/tests/net/getaddrinfo/no_serv_v4.exp rename to lib/libc/tests/net/getaddrinfo/data/no_serv_v4.exp diff --git a/lib/libc/tests/net/getaddrinfo/no_serv_v4v6.exp b/lib/libc/tests/net/getaddrinfo/data/no_serv_v4v6.exp similarity index 100% rename from lib/libc/tests/net/getaddrinfo/no_serv_v4v6.exp rename to lib/libc/tests/net/getaddrinfo/data/no_serv_v4v6.exp diff --git a/lib/libc/tests/net/getaddrinfo/scoped.exp b/lib/libc/tests/net/getaddrinfo/data/scoped.exp similarity index 100% rename from lib/libc/tests/net/getaddrinfo/scoped.exp rename to lib/libc/tests/net/getaddrinfo/data/scoped.exp diff --git a/lib/libc/tests/net/getaddrinfo/sock_raw_v4.exp b/lib/libc/tests/net/getaddrinfo/data/sock_raw_v4.exp similarity index 100% rename from lib/libc/tests/net/getaddrinfo/sock_raw_v4.exp rename to lib/libc/tests/net/getaddrinfo/data/sock_raw_v4.exp diff --git a/lib/libc/tests/net/getaddrinfo/sock_raw_v4v6.exp b/lib/libc/tests/net/getaddrinfo/data/sock_raw_v4v6.exp similarity index 100% rename from lib/libc/tests/net/getaddrinfo/sock_raw_v4v6.exp rename to lib/libc/tests/net/getaddrinfo/data/sock_raw_v4v6.exp diff --git a/lib/libc/tests/net/getaddrinfo/spec_fam_v4.exp b/lib/libc/tests/net/getaddrinfo/data/spec_fam_v4.exp similarity index 100% rename from lib/libc/tests/net/getaddrinfo/spec_fam_v4.exp rename to lib/libc/tests/net/getaddrinfo/data/spec_fam_v4.exp diff --git a/lib/libc/tests/net/getaddrinfo/spec_fam_v4v6.exp b/lib/libc/tests/net/getaddrinfo/data/spec_fam_v4v6.exp similarity index 100% rename from lib/libc/tests/net/getaddrinfo/spec_fam_v4v6.exp rename to lib/libc/tests/net/getaddrinfo/data/spec_fam_v4v6.exp diff --git a/lib/libc/tests/net/getaddrinfo/unsup_fam.exp b/lib/libc/tests/net/getaddrinfo/data/unsup_fam.exp similarity index 100% rename from lib/libc/tests/net/getaddrinfo/unsup_fam.exp rename to lib/libc/tests/net/getaddrinfo/data/unsup_fam.exp From nobody Tue Apr 8 17:34:57 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXCrd5mV3z5shYm; Tue, 08 Apr 2025 17:34: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXCrd1JZ1z3Jry; Tue, 08 Apr 2025 17:34:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133697; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hrvFXYv/VXzdjDLUuj3WKhWhF65epOcG/W9WaAdcAsU=; b=xNMhCXLITO5t/blVJKJMDU7a+zEC9YiaDa6+K7ByaTUR7xN6rqSo+ZU+NuzkYOz0pfnS4h cjmHyAeoVt4QCgtlYYbC02KunLl/RL8VHwB1a6rxqpPfvCM5DSJvgrBp2+uzBEiGNQAhoY l/Pe+mBtqEKVMEjMDiQFkPGbhHD5SSfUfRJ43irzH3X77j+QLt1WL6qxyJD1HxGqkGfPst Ucjc4JWhqoKv/m/f3xcDi1703vxxEjAGG2kEtHVE0/7JFNKv0qRatAEqV3zHuuLrrnsZU7 kQZYb25TFnPZtH0/oT2KGBLCq1C1rVSmMMyo1bbHI1io1vADhFPszVwk4ciNYQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744133697; a=rsa-sha256; cv=none; b=ewHNPHW0mjanydt3ZE5rfY9RGyoBX/Liay/NybhQqC8CvYOTjTAOI02c9zkiT2mJKysl0I 432s31471sj03PZ4CR1b/MhaJ360F1eJYIpGdbb0p65C6gmw5QkOcv6aacav380Fnh9NNU tVUk6Au3oDRLQoBT69OsbKOZDiwvNqPiVAl7uPyXraymRSLMv+rF1DmEiMU0KVxkM391Gb krTPPY0fNNdQzs5GAIl3z4SGUPrEPrCm9l7uH8gQhQrRGGl9zmyC4N+in/yxKH7WJ7Q9Yn 4y56Tlag0OZdozYKvcrngErPYwwJutrFBj5e8S9qhzYphOtwjWCGoaEApNC4Kg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133697; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hrvFXYv/VXzdjDLUuj3WKhWhF65epOcG/W9WaAdcAsU=; b=xEp5Ze+Iq+HaQwSXplWRzmeeYOdLSX5RoUswVXMvFb3gZlY0UT1klSQGj0/YMZSoNj/+bX 96f5w2ywfdh1EsMjnm4qxKXtrVrHujztakl9DiUID8WSWcj2RdMIOdJtQ3FLtzGDjs8Nng h9U5DKWyKEUewPelv6lKlm77gXxmOWAV2hpIYxasZcL/Tva8YSRlWgwGX67jNb1QZs4HX2 tMA71HE7tnKEYXZAfajqXIymCBp16ohY/Pixhe7gQ/+3MJs4CgopZTmle/HtCk54JMzYKv m2aZ66hkqQdcWscY+wBQQhxVm5HOuM5HI4v+6okhvd6iz61q4N+byxO3JVLGPg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXCrd0cFfzhV4; Tue, 08 Apr 2025 17:34:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538HYvJk067844; Tue, 8 Apr 2025 17:34:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538HYvNr067841; Tue, 8 Apr 2025 17:34:57 GMT (envelope-from git) Date: Tue, 8 Apr 2025 17:34:57 GMT Message-Id: <202504081734.538HYvNr067841@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: a709d15529b3 - main - libc/tests: getaddrinfo_test: test both IPv4 and IPv6 preferred policies List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a709d15529b3dd8479f2a642b4d0e65e09d0515e Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=a709d15529b3dd8479f2a642b4d0e65e09d0515e commit a709d15529b3dd8479f2a642b4d0e65e09d0515e Author: K Rin AuthorDate: 2025-04-06 00:27:19 +0000 Commit: Gleb Smirnoff CommitDate: 2025-04-08 16:53:15 +0000 libc/tests: getaddrinfo_test: test both IPv4 and IPv6 preferred policies --- lib/libc/tests/net/getaddrinfo/Makefile | 15 + .../tests/net/getaddrinfo/data/basics_v4_only.exp | 50 ++++ .../net/getaddrinfo/data/basics_v4v6_prefer_v4.exp | 50 ++++ .../net/getaddrinfo/data/generate_testdata.sh | 45 +++ .../tests/net/getaddrinfo/data/no_host_v4_only.exp | 68 +++++ .../getaddrinfo/data/no_host_v4v6_prefer_v4.exp | 68 +++++ .../tests/net/getaddrinfo/data/no_serv_v4_only.exp | 20 ++ .../getaddrinfo/data/no_serv_v4v6_prefer_v4.exp | 20 ++ .../tests/net/getaddrinfo/data/scoped_v4_only.exp | 5 + .../net/getaddrinfo/data/scoped_v4v6_prefer_v4.exp | 5 + .../net/getaddrinfo/data/sock_raw_v4_only.exp | 15 + .../getaddrinfo/data/sock_raw_v4v6_prefer_v4.exp | 15 + .../net/getaddrinfo/data/spec_fam_v4_only.exp | 10 + .../getaddrinfo/data/spec_fam_v4v6_prefer_v4.exp | 10 + .../net/getaddrinfo/data/unsup_fam_v4_only.exp | 2 + .../getaddrinfo/data/unsup_fam_v4v6_prefer_v4.exp | 2 + lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh | 324 ++++++++++++++++++--- 17 files changed, 682 insertions(+), 42 deletions(-) diff --git a/lib/libc/tests/net/getaddrinfo/Makefile b/lib/libc/tests/net/getaddrinfo/Makefile index 0b2a06785ade..47d945a52c6e 100644 --- a/lib/libc/tests/net/getaddrinfo/Makefile +++ b/lib/libc/tests/net/getaddrinfo/Makefile @@ -15,17 +15,32 @@ ${PACKAGE}DATA_FILESPACKAGE= tests ${PACKAGE}DATA_FILESDIR= ${TESTSDIR}/data ${PACKAGE}DATA_FILES+= data/basics_v4.exp +${PACKAGE}DATA_FILES+= data/basics_v4_only.exp ${PACKAGE}DATA_FILES+= data/basics_v4v6.exp +${PACKAGE}DATA_FILES+= data/basics_v4v6_prefer_v4.exp ${PACKAGE}DATA_FILES+= data/no_host_v4.exp +${PACKAGE}DATA_FILES+= data/no_host_v4_only.exp ${PACKAGE}DATA_FILES+= data/no_host_v4v6.exp +${PACKAGE}DATA_FILES+= data/no_host_v4v6_prefer_v4.exp ${PACKAGE}DATA_FILES+= data/no_serv_v4.exp +${PACKAGE}DATA_FILES+= data/no_serv_v4_only.exp ${PACKAGE}DATA_FILES+= data/no_serv_v4v6.exp +${PACKAGE}DATA_FILES+= data/no_serv_v4v6_prefer_v4.exp ${PACKAGE}DATA_FILES+= data/scoped.exp +${PACKAGE}DATA_FILES+= data/scoped_v4_only.exp +${PACKAGE}DATA_FILES+= data/scoped_v4v6_prefer_v4.exp ${PACKAGE}DATA_FILES+= data/sock_raw_v4.exp +${PACKAGE}DATA_FILES+= data/sock_raw_v4_only.exp ${PACKAGE}DATA_FILES+= data/sock_raw_v4v6.exp +${PACKAGE}DATA_FILES+= data/sock_raw_v4v6_prefer_v4.exp ${PACKAGE}DATA_FILES+= data/spec_fam_v4.exp +${PACKAGE}DATA_FILES+= data/spec_fam_v4_only.exp ${PACKAGE}DATA_FILES+= data/spec_fam_v4v6.exp +${PACKAGE}DATA_FILES+= data/spec_fam_v4v6_prefer_v4.exp ${PACKAGE}DATA_FILES+= data/unsup_fam.exp +${PACKAGE}DATA_FILES+= data/unsup_fam_v4_only.exp +${PACKAGE}DATA_FILES+= data/unsup_fam_v4v6_prefer_v4.exp + .include "../../Makefile.netbsd-tests" diff --git a/lib/libc/tests/net/getaddrinfo/data/basics_v4_only.exp b/lib/libc/tests/net/getaddrinfo/data/basics_v4_only.exp new file mode 100644 index 000000000000..0a37d3212649 --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/data/basics_v4_only.exp @@ -0,0 +1,50 @@ +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host ::1 serv http +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv http +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv http +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv http + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host 127.0.0.1 serv http +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv http +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv http +ai3: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv http + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host localhost serv http +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv http +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv http +ai3: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv http +ai4: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv http +ai5: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv http +ai6: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv http + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host ::1 serv tftp +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv tftp +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv tftp + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host 127.0.0.1 serv tftp +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv tftp +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv tftp + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host localhost serv tftp +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv tftp +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv tftp +ai3: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv tftp +ai4: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv tftp + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host ::1 serv echo +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv echo +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv echo +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv echo + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host 127.0.0.1 serv echo +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv echo +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv echo +ai3: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv echo + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host localhost serv echo +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv echo +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv echo +ai3: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv echo +ai4: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv echo +ai5: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv echo +ai6: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv echo + diff --git a/lib/libc/tests/net/getaddrinfo/data/basics_v4v6_prefer_v4.exp b/lib/libc/tests/net/getaddrinfo/data/basics_v4v6_prefer_v4.exp new file mode 100644 index 000000000000..0a37d3212649 --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/data/basics_v4v6_prefer_v4.exp @@ -0,0 +1,50 @@ +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host ::1 serv http +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv http +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv http +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv http + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host 127.0.0.1 serv http +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv http +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv http +ai3: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv http + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host localhost serv http +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv http +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv http +ai3: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv http +ai4: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv http +ai5: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv http +ai6: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv http + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host ::1 serv tftp +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv tftp +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv tftp + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host 127.0.0.1 serv tftp +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv tftp +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv tftp + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host localhost serv tftp +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv tftp +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv tftp +ai3: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv tftp +ai4: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv tftp + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host ::1 serv echo +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv echo +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv echo +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv echo + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host 127.0.0.1 serv echo +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv echo +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv echo +ai3: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv echo + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host localhost serv echo +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv echo +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv echo +ai3: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv echo +ai4: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv echo +ai5: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv echo +ai6: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv echo + diff --git a/lib/libc/tests/net/getaddrinfo/data/generate_testdata.sh b/lib/libc/tests/net/getaddrinfo/data/generate_testdata.sh new file mode 100755 index 000000000000..f0425a3b0283 --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/data/generate_testdata.sh @@ -0,0 +1,45 @@ +#service ip6addrctl prefer_ipv4 +TEST=./h_gai +family=v4_only + +( $TEST ::1 http + $TEST 127.0.0.1 http + $TEST localhost http + $TEST ::1 tftp + $TEST 127.0.0.1 tftp + $TEST localhost tftp + $TEST ::1 echo + $TEST 127.0.0.1 echo + $TEST localhost echo ) > basics_${family}.exp + +( $TEST -4 localhost http + $TEST -6 localhost http ) > spec_fam_${family}.exp + +( $TEST '' http + $TEST '' echo + $TEST '' tftp + $TEST '' 80 + $TEST -P '' http + $TEST -P '' echo + $TEST -P '' tftp + $TEST -P '' 80 + $TEST -S '' 80 + $TEST -D '' 80 ) > no_host_${family}.exp + +( $TEST ::1 '' + $TEST 127.0.0.1 '' + $TEST localhost '' + $TEST '' '' ) > no_serv_${family}.exp + +( $TEST -R -p 0 localhost '' + $TEST -R -p 59 localhost '' + $TEST -R -p 59 localhost 80 + $TEST -R -p 59 localhost www + $TEST -R -p 59 ::1 '' ) > sock_raw_${family}.exp + +( $TEST -f 99 localhost '' ) > unsup_fam_${family}.exp + +( $TEST fe80::1%lo0 http +# IF=`ifconfig -a | grep -v '^ ' | sed -e 's/:.*//' | head -1 | awk '{print $1}'` +# $TEST fe80::1%$IF http +) > scoped_${family}.exp diff --git a/lib/libc/tests/net/getaddrinfo/data/no_host_v4_only.exp b/lib/libc/tests/net/getaddrinfo/data/no_host_v4_only.exp new file mode 100644 index 000000000000..596799305117 --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/data/no_host_v4_only.exp @@ -0,0 +1,68 @@ +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv http +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv http +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv http +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv http +ai4: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv http +ai5: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv http +ai6: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv http + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv echo +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv echo +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv echo +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv echo +ai4: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv echo +ai5: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv echo +ai6: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv echo + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv tftp +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv tftp +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv tftp +ai3: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv tftp +ai4: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv tftp + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv 80 +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv http +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv http +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv http +ai4: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv http +ai5: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv http +ai6: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv http + +arg: flags 0x3 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv http +ai1: flags 0x3 family 28 socktype 2 protocol 17 addrlen 28 host :: serv http +ai2: flags 0x3 family 28 socktype 1 protocol 6 addrlen 28 host :: serv http +ai3: flags 0x3 family 28 socktype 5 protocol 132 addrlen 28 host :: serv http +ai4: flags 0x3 family 2 socktype 2 protocol 17 addrlen 16 host 0.0.0.0 serv http +ai5: flags 0x3 family 2 socktype 1 protocol 6 addrlen 16 host 0.0.0.0 serv http +ai6: flags 0x3 family 2 socktype 5 protocol 132 addrlen 16 host 0.0.0.0 serv http + +arg: flags 0x3 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv echo +ai1: flags 0x3 family 28 socktype 2 protocol 17 addrlen 28 host :: serv echo +ai2: flags 0x3 family 28 socktype 1 protocol 6 addrlen 28 host :: serv echo +ai3: flags 0x3 family 28 socktype 5 protocol 132 addrlen 28 host :: serv echo +ai4: flags 0x3 family 2 socktype 2 protocol 17 addrlen 16 host 0.0.0.0 serv echo +ai5: flags 0x3 family 2 socktype 1 protocol 6 addrlen 16 host 0.0.0.0 serv echo +ai6: flags 0x3 family 2 socktype 5 protocol 132 addrlen 16 host 0.0.0.0 serv echo + +arg: flags 0x3 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv tftp +ai1: flags 0x3 family 28 socktype 2 protocol 17 addrlen 28 host :: serv tftp +ai2: flags 0x3 family 28 socktype 1 protocol 6 addrlen 28 host :: serv tftp +ai3: flags 0x3 family 2 socktype 2 protocol 17 addrlen 16 host 0.0.0.0 serv tftp +ai4: flags 0x3 family 2 socktype 1 protocol 6 addrlen 16 host 0.0.0.0 serv tftp + +arg: flags 0x3 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv 80 +ai1: flags 0x3 family 28 socktype 2 protocol 17 addrlen 28 host :: serv http +ai2: flags 0x3 family 28 socktype 1 protocol 6 addrlen 28 host :: serv http +ai3: flags 0x3 family 28 socktype 5 protocol 132 addrlen 28 host :: serv http +ai4: flags 0x3 family 2 socktype 2 protocol 17 addrlen 16 host 0.0.0.0 serv http +ai5: flags 0x3 family 2 socktype 1 protocol 6 addrlen 16 host 0.0.0.0 serv http +ai6: flags 0x3 family 2 socktype 5 protocol 132 addrlen 16 host 0.0.0.0 serv http + +arg: flags 0x2 family 0 socktype 1 protocol 0 addrlen 0 host (empty) serv 80 +ai1: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv http +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv http + +arg: flags 0x2 family 0 socktype 2 protocol 0 addrlen 0 host (empty) serv 80 +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv http +ai2: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv http + diff --git a/lib/libc/tests/net/getaddrinfo/data/no_host_v4v6_prefer_v4.exp b/lib/libc/tests/net/getaddrinfo/data/no_host_v4v6_prefer_v4.exp new file mode 100644 index 000000000000..596799305117 --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/data/no_host_v4v6_prefer_v4.exp @@ -0,0 +1,68 @@ +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv http +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv http +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv http +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv http +ai4: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv http +ai5: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv http +ai6: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv http + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv echo +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv echo +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv echo +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv echo +ai4: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv echo +ai5: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv echo +ai6: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv echo + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv tftp +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv tftp +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv tftp +ai3: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv tftp +ai4: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv tftp + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv 80 +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv http +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv http +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv http +ai4: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv http +ai5: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv http +ai6: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv http + +arg: flags 0x3 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv http +ai1: flags 0x3 family 28 socktype 2 protocol 17 addrlen 28 host :: serv http +ai2: flags 0x3 family 28 socktype 1 protocol 6 addrlen 28 host :: serv http +ai3: flags 0x3 family 28 socktype 5 protocol 132 addrlen 28 host :: serv http +ai4: flags 0x3 family 2 socktype 2 protocol 17 addrlen 16 host 0.0.0.0 serv http +ai5: flags 0x3 family 2 socktype 1 protocol 6 addrlen 16 host 0.0.0.0 serv http +ai6: flags 0x3 family 2 socktype 5 protocol 132 addrlen 16 host 0.0.0.0 serv http + +arg: flags 0x3 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv echo +ai1: flags 0x3 family 28 socktype 2 protocol 17 addrlen 28 host :: serv echo +ai2: flags 0x3 family 28 socktype 1 protocol 6 addrlen 28 host :: serv echo +ai3: flags 0x3 family 28 socktype 5 protocol 132 addrlen 28 host :: serv echo +ai4: flags 0x3 family 2 socktype 2 protocol 17 addrlen 16 host 0.0.0.0 serv echo +ai5: flags 0x3 family 2 socktype 1 protocol 6 addrlen 16 host 0.0.0.0 serv echo +ai6: flags 0x3 family 2 socktype 5 protocol 132 addrlen 16 host 0.0.0.0 serv echo + +arg: flags 0x3 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv tftp +ai1: flags 0x3 family 28 socktype 2 protocol 17 addrlen 28 host :: serv tftp +ai2: flags 0x3 family 28 socktype 1 protocol 6 addrlen 28 host :: serv tftp +ai3: flags 0x3 family 2 socktype 2 protocol 17 addrlen 16 host 0.0.0.0 serv tftp +ai4: flags 0x3 family 2 socktype 1 protocol 6 addrlen 16 host 0.0.0.0 serv tftp + +arg: flags 0x3 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv 80 +ai1: flags 0x3 family 28 socktype 2 protocol 17 addrlen 28 host :: serv http +ai2: flags 0x3 family 28 socktype 1 protocol 6 addrlen 28 host :: serv http +ai3: flags 0x3 family 28 socktype 5 protocol 132 addrlen 28 host :: serv http +ai4: flags 0x3 family 2 socktype 2 protocol 17 addrlen 16 host 0.0.0.0 serv http +ai5: flags 0x3 family 2 socktype 1 protocol 6 addrlen 16 host 0.0.0.0 serv http +ai6: flags 0x3 family 2 socktype 5 protocol 132 addrlen 16 host 0.0.0.0 serv http + +arg: flags 0x2 family 0 socktype 1 protocol 0 addrlen 0 host (empty) serv 80 +ai1: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv http +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv http + +arg: flags 0x2 family 0 socktype 2 protocol 0 addrlen 0 host (empty) serv 80 +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv http +ai2: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv http + diff --git a/lib/libc/tests/net/getaddrinfo/data/no_serv_v4_only.exp b/lib/libc/tests/net/getaddrinfo/data/no_serv_v4_only.exp new file mode 100644 index 000000000000..0d28490c8d81 --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/data/no_serv_v4_only.exp @@ -0,0 +1,20 @@ +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host ::1 serv (empty) +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv 0 +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv 0 +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv 0 + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host 127.0.0.1 serv (empty) +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv 0 +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv 0 +ai3: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv 0 + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host localhost serv (empty) +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv 0 +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv 0 +ai3: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv 0 +ai4: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv 0 +ai5: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv 0 +ai6: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv 0 + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv (empty) +Name does not resolve diff --git a/lib/libc/tests/net/getaddrinfo/data/no_serv_v4v6_prefer_v4.exp b/lib/libc/tests/net/getaddrinfo/data/no_serv_v4v6_prefer_v4.exp new file mode 100644 index 000000000000..0d28490c8d81 --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/data/no_serv_v4v6_prefer_v4.exp @@ -0,0 +1,20 @@ +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host ::1 serv (empty) +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv 0 +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv 0 +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv 0 + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host 127.0.0.1 serv (empty) +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv 0 +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv 0 +ai3: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv 0 + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host localhost serv (empty) +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv 0 +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv 0 +ai3: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv 0 +ai4: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv 0 +ai5: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv 0 +ai6: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv 0 + +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host (empty) serv (empty) +Name does not resolve diff --git a/lib/libc/tests/net/getaddrinfo/data/scoped_v4_only.exp b/lib/libc/tests/net/getaddrinfo/data/scoped_v4_only.exp new file mode 100644 index 000000000000..f5ddb4bf6feb --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/data/scoped_v4_only.exp @@ -0,0 +1,5 @@ +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host fe80::1%lo0 serv http +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host fe80::1%lo0 serv http +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host fe80::1%lo0 serv http +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host fe80::1%lo0 serv http + diff --git a/lib/libc/tests/net/getaddrinfo/data/scoped_v4v6_prefer_v4.exp b/lib/libc/tests/net/getaddrinfo/data/scoped_v4v6_prefer_v4.exp new file mode 100644 index 000000000000..f5ddb4bf6feb --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/data/scoped_v4v6_prefer_v4.exp @@ -0,0 +1,5 @@ +arg: flags 0x2 family 0 socktype 0 protocol 0 addrlen 0 host fe80::1%lo0 serv http +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host fe80::1%lo0 serv http +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host fe80::1%lo0 serv http +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host fe80::1%lo0 serv http + diff --git a/lib/libc/tests/net/getaddrinfo/data/sock_raw_v4_only.exp b/lib/libc/tests/net/getaddrinfo/data/sock_raw_v4_only.exp new file mode 100644 index 000000000000..932c1faab0d3 --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/data/sock_raw_v4_only.exp @@ -0,0 +1,15 @@ +arg: flags 0x2 family 0 socktype 3 protocol 0 addrlen 0 host localhost serv (empty) +ai1: flags 0x2 family 2 socktype 3 protocol 0 addrlen 16 host 127.0.0.1 serv 0 +ai2: flags 0x2 family 28 socktype 3 protocol 0 addrlen 28 host ::1 serv 0 + +arg: flags 0x2 family 0 socktype 3 protocol 59 addrlen 0 host localhost serv (empty) +ai1: flags 0x2 family 2 socktype 3 protocol 59 addrlen 16 host 127.0.0.1 serv 0 +ai2: flags 0x2 family 28 socktype 3 protocol 59 addrlen 28 host ::1 serv 0 + +arg: flags 0x2 family 0 socktype 3 protocol 59 addrlen 0 host localhost serv 80 +Service was not recognized for socket type +arg: flags 0x2 family 0 socktype 3 protocol 59 addrlen 0 host localhost serv www +Service was not recognized for socket type +arg: flags 0x2 family 0 socktype 3 protocol 59 addrlen 0 host ::1 serv (empty) +ai1: flags 0x2 family 28 socktype 3 protocol 59 addrlen 28 host ::1 serv 0 + diff --git a/lib/libc/tests/net/getaddrinfo/data/sock_raw_v4v6_prefer_v4.exp b/lib/libc/tests/net/getaddrinfo/data/sock_raw_v4v6_prefer_v4.exp new file mode 100644 index 000000000000..932c1faab0d3 --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/data/sock_raw_v4v6_prefer_v4.exp @@ -0,0 +1,15 @@ +arg: flags 0x2 family 0 socktype 3 protocol 0 addrlen 0 host localhost serv (empty) +ai1: flags 0x2 family 2 socktype 3 protocol 0 addrlen 16 host 127.0.0.1 serv 0 +ai2: flags 0x2 family 28 socktype 3 protocol 0 addrlen 28 host ::1 serv 0 + +arg: flags 0x2 family 0 socktype 3 protocol 59 addrlen 0 host localhost serv (empty) +ai1: flags 0x2 family 2 socktype 3 protocol 59 addrlen 16 host 127.0.0.1 serv 0 +ai2: flags 0x2 family 28 socktype 3 protocol 59 addrlen 28 host ::1 serv 0 + +arg: flags 0x2 family 0 socktype 3 protocol 59 addrlen 0 host localhost serv 80 +Service was not recognized for socket type +arg: flags 0x2 family 0 socktype 3 protocol 59 addrlen 0 host localhost serv www +Service was not recognized for socket type +arg: flags 0x2 family 0 socktype 3 protocol 59 addrlen 0 host ::1 serv (empty) +ai1: flags 0x2 family 28 socktype 3 protocol 59 addrlen 28 host ::1 serv 0 + diff --git a/lib/libc/tests/net/getaddrinfo/data/spec_fam_v4_only.exp b/lib/libc/tests/net/getaddrinfo/data/spec_fam_v4_only.exp new file mode 100644 index 000000000000..af3506938503 --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/data/spec_fam_v4_only.exp @@ -0,0 +1,10 @@ +arg: flags 0x2 family 2 socktype 0 protocol 0 addrlen 0 host localhost serv http +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv http +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv http +ai3: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv http + +arg: flags 0x2 family 28 socktype 0 protocol 0 addrlen 0 host localhost serv http +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv http +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv http +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv http + diff --git a/lib/libc/tests/net/getaddrinfo/data/spec_fam_v4v6_prefer_v4.exp b/lib/libc/tests/net/getaddrinfo/data/spec_fam_v4v6_prefer_v4.exp new file mode 100644 index 000000000000..af3506938503 --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/data/spec_fam_v4v6_prefer_v4.exp @@ -0,0 +1,10 @@ +arg: flags 0x2 family 2 socktype 0 protocol 0 addrlen 0 host localhost serv http +ai1: flags 0x2 family 2 socktype 2 protocol 17 addrlen 16 host 127.0.0.1 serv http +ai2: flags 0x2 family 2 socktype 1 protocol 6 addrlen 16 host 127.0.0.1 serv http +ai3: flags 0x2 family 2 socktype 5 protocol 132 addrlen 16 host 127.0.0.1 serv http + +arg: flags 0x2 family 28 socktype 0 protocol 0 addrlen 0 host localhost serv http +ai1: flags 0x2 family 28 socktype 2 protocol 17 addrlen 28 host ::1 serv http +ai2: flags 0x2 family 28 socktype 1 protocol 6 addrlen 28 host ::1 serv http +ai3: flags 0x2 family 28 socktype 5 protocol 132 addrlen 28 host ::1 serv http + diff --git a/lib/libc/tests/net/getaddrinfo/data/unsup_fam_v4_only.exp b/lib/libc/tests/net/getaddrinfo/data/unsup_fam_v4_only.exp new file mode 100644 index 000000000000..69e6b48a854b --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/data/unsup_fam_v4_only.exp @@ -0,0 +1,2 @@ +arg: flags 0x2 family 99 socktype 0 protocol 0 addrlen 0 host localhost serv (empty) +Address family not recognized diff --git a/lib/libc/tests/net/getaddrinfo/data/unsup_fam_v4v6_prefer_v4.exp b/lib/libc/tests/net/getaddrinfo/data/unsup_fam_v4v6_prefer_v4.exp new file mode 100644 index 000000000000..69e6b48a854b --- /dev/null +++ b/lib/libc/tests/net/getaddrinfo/data/unsup_fam_v4v6_prefer_v4.exp @@ -0,0 +1,2 @@ +arg: flags 0x2 family 99 socktype 0 protocol 0 addrlen 0 host localhost serv (empty) +Address family not recognized diff --git a/lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh b/lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh index 79997a9a1631..bd2aa8d94fa0 100755 --- a/lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh +++ b/lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh @@ -29,43 +29,97 @@ # SUCH DAMAGE. # +IP6ADDRCTL_CMD="/usr/sbin/ip6addrctl" +CURRENT_POLICY_FILE="current.conf" + +policy_backup() +{ + "${IP6ADDRCTL_CMD}" > "${CURRENT_POLICY_FILE}" +} + +policy_cleanup() +{ + if [ -f "${CURRENT_POLICY_FILE}" ]; then + "${IP6ADDRCTL_CMD}" flush + cat "${CURRENT_POLICY_FILE}" | tail -n +2 | "${IP6ADDRCTL_CMD}" install /dev/stdin + fi +} + check_output() { - if [ "$2" = "none" ] ; then - exp="${1}.exp" - elif [ "$2" = "hosts" ] ; then - # Determine if localhost has an IPv6 address or not - lcl=$( cat /etc/hosts | \ - sed -e 's/#.*$//' -e 's/[ ][ ]*/ /g' | \ - awk '/ localhost($| )/ {printf "%s ", $1}' ) - if [ "${lcl%*::*}" = "${lcl}" ] ; then - exp="${1}_v4.exp" + if [ "$2" = "none" ]; then + if [ "$3" = "prefer_v6" ]; then + exp="${1}.exp" + else + exp="${1}_v4_only.exp" + fi + elif [ "$2" = "hosts" ]; then + lcl=$(cat /etc/hosts | sed -e 's/#.*$//' -e 's/[ ][ ]*/ /g' | awk '/ localhost($| )/ {printf "%s ", $1}') + if [ "${lcl%*::*}" = "${lcl}" ]; then + exp="${1}_v4_only.exp" else - exp="${1}_v4v6.exp" + if [ "$3" = "prefer_v6" ]; then + exp="${1}_v4v6.exp" + else + exp="${1}_v4v6_prefer_v4.exp" + fi fi - elif [ "$2" = "ifconfig" ] ; then - lcl=$( ifconfig lo0 | grep inet6 ) - if [ -n "${lcl}" ] ; then - exp="${1}_v4v6.exp" + elif [ "$2" = "ifconfig" ]; then + lcl=$(ifconfig lo0 | grep inet6) + if [ -n "${lcl}" ]; then + if [ "$3" = "prefer_v6" ]; then + exp="${1}_v4v6.exp" + else + exp="${1}_v4v6_prefer_v4.exp" + fi else - exp="${1}_v4.exp" + exp="${1}_v4_only.exp" fi else atf_fail "Invalid family_match_type $2 requested." fi - cmp -s $(atf_get_srcdir)/data/${exp} out && return - diff -u $(atf_get_srcdir)/data/${exp} out || \ - atf_fail "Actual output does not match expected output" + cmp -s "$(atf_get_srcdir)/data/${exp}" out && return + diff -u "$(atf_get_srcdir)/data/${exp}" out || atf_fail "Actual output does not match expected output" +} + +atf_test_case basic_prefer_v4 cleanup +basic_prefer_v4_head() +{ + atf_set "descr" "Testing basic ones with prefer_v4" +} +basic_prefer_v4_body() +{ + policy_backup + /etc/rc.d/ip6addrctl prefer_ipv4 + TEST=$(atf_get_srcdir)/h_gai + + ( $TEST ::1 http + $TEST 127.0.0.1 http + $TEST localhost http + $TEST ::1 tftp + $TEST 127.0.0.1 tftp + $TEST localhost tftp + $TEST ::1 echo + $TEST 127.0.0.1 echo + $TEST localhost echo ) > out 2>&1 + + check_output basics hosts prefer_v4 +} +basic_prefer_v4_cleanup() +{ + policy_cleanup } -atf_test_case basic +atf_test_case basic cleanup basic_head() { - atf_set "descr" "Testing basic ones" + atf_set "descr" "Testing basic ones with prefer_v6" } basic_body() { + policy_backup + /etc/rc.d/ip6addrctl prefer_ipv6 TEST=$(atf_get_srcdir)/h_gai ( $TEST ::1 http @@ -78,31 +132,93 @@ basic_body() $TEST 127.0.0.1 echo $TEST localhost echo ) > out 2>&1 - check_output basics hosts + check_output basics ifconfig prefer_v6 +} +basic_cleanup() +{ + policy_cleanup +} + +atf_test_case specific_prefer_v4 cleanup +specific_prefer_v4_head() +{ + atf_set "descr" "Testing specific address family with prefer_v4" +} +specific_prefer_v4_body() +{ + policy_backup + /etc/rc.d/ip6addrctl prefer_ipv4 + TEST=$(atf_get_srcdir)/h_gai + + ( $TEST -4 localhost http + $TEST -6 localhost http ) > out 2>&1 + + check_output spec_fam hosts prefer_v4 +} +specific_prefer_v4_cleanup() +{ + policy_cleanup } -atf_test_case specific +atf_test_case specific cleanup specific_head() { - atf_set "descr" "Testing specific address family" + atf_set "descr" "Testing specific address family with prefer_v6" } specific_body() { + policy_backup + /etc/rc.d/ip6addrctl prefer_ipv6 TEST=$(atf_get_srcdir)/h_gai ( $TEST -4 localhost http $TEST -6 localhost http ) > out 2>&1 - check_output spec_fam hosts + check_output spec_fam hosts prefer_v6 +} +specific_cleanup() +{ + policy_cleanup +} + +atf_test_case empty_hostname_prefer_v4 cleanup +empty_hostname_prefer_v4_head() +{ + atf_set "descr" "Testing empty hostname with prefer_v4" +} +empty_hostname_prefer_v4_body() +{ + policy_backup + /etc/rc.d/ip6addrctl prefer_ipv4 + TEST=$(atf_get_srcdir)/h_gai + + ( $TEST '' http + $TEST '' echo + $TEST '' tftp + $TEST '' 80 + $TEST -P '' http + $TEST -P '' echo + $TEST -P '' tftp + $TEST -P '' 80 + $TEST -S '' 80 + $TEST -D '' 80 ) > out 2>&1 + + check_output no_host ifconfig prefer_v4 +} +empty_hostname_prefer_v4_cleanup() +{ + policy_cleanup } -atf_test_case empty_hostname +atf_test_case empty_hostname cleanup empty_hostname_head() { - atf_set "descr" "Testing empty hostname" + atf_set "descr" "Testing empty hostname with prefer_v6" } empty_hostname_body() { + policy_backup + /etc/rc.d/ip6addrctl prefer_ipv6 TEST=$(atf_get_srcdir)/h_gai ( $TEST '' http @@ -116,16 +232,45 @@ empty_hostname_body() $TEST -S '' 80 $TEST -D '' 80 ) > out 2>&1 - check_output no_host ifconfig + check_output no_host ifconfig prefer_v6 +} +empty_hostname_cleanup() +{ + policy_cleanup +} + +atf_test_case empty_servname_prefer_v4 cleanup +empty_servname_prefer_v4_head() +{ + atf_set "descr" "Testing empty service name with prefer_v4" +} +empty_servname_prefer_v4_body() +{ + policy_backup + /etc/rc.d/ip6addrctl prefer_ipv4 + TEST=$(atf_get_srcdir)/h_gai + + ( $TEST ::1 '' + $TEST 127.0.0.1 '' + $TEST localhost '' + $TEST '' '' ) > out 2>&1 + + check_output no_serv hosts prefer_v4 +} +empty_servname_prefer_v4_cleanup() +{ + policy_cleanup } -atf_test_case empty_servname +atf_test_case empty_servname cleanup empty_servname_head() { - atf_set "descr" "Testing empty service name" + atf_set "descr" "Testing empty service name with prefer_v6" } empty_servname_body() { + policy_backup + /etc/rc.d/ip6addrctl prefer_ipv6 TEST=$(atf_get_srcdir)/h_gai ( $TEST ::1 '' @@ -133,16 +278,46 @@ empty_servname_body() $TEST localhost '' $TEST '' '' ) > out 2>&1 - check_output no_serv hosts + check_output no_serv ifconfig prefer_v6 +} +empty_servname_cleanup() +{ + policy_cleanup +} + +atf_test_case sock_raw_prefer_v4 cleanup +sock_raw_prefer_v4_head() +{ + atf_set "descr" "Testing raw socket with prefer_v4" +} +sock_raw_prefer_v4_body() +{ + policy_backup + /etc/rc.d/ip6addrctl prefer_ipv4 + TEST=$(atf_get_srcdir)/h_gai + + ( $TEST -R -p 0 localhost '' + $TEST -R -p 59 localhost '' + $TEST -R -p 59 localhost 80 + $TEST -R -p 59 localhost www + $TEST -R -p 59 ::1 '' ) > out 2>&1 + + check_output sock_raw hosts prefer_v4 +} +sock_raw_prefer_v4_cleanup() +{ + policy_cleanup } -atf_test_case sock_raw +atf_test_case sock_raw cleanup sock_raw_head() { - atf_set "descr" "Testing raw socket" + atf_set "descr" "Testing raw socket with prefer_v6" } sock_raw_body() { + policy_backup + /etc/rc.d/ip6addrctl prefer_ipv6 TEST=$(atf_get_srcdir)/h_gai ( $TEST -R -p 0 localhost '' @@ -151,44 +326,109 @@ sock_raw_body() $TEST -R -p 59 localhost www $TEST -R -p 59 ::1 '' ) > out 2>&1 - check_output sock_raw hosts + check_output sock_raw ifconfig prefer_v6 +} +sock_raw_cleanup() +{ + policy_cleanup +} + +atf_test_case unsupported_family_prefer_v4 cleanup +unsupported_family_prefer_v4_head() +{ + atf_set "descr" "Testing unsupported family with prefer_v4" +} +unsupported_family_prefer_v4_body() +{ + policy_backup + /etc/rc.d/ip6addrctl prefer_ipv4 + TEST=$(atf_get_srcdir)/h_gai + + ( $TEST -f 99 localhost '' ) > out 2>&1 + + check_output unsup_fam ifconfig prefer_v4 +} +unsupported_family_prefer_v4_cleanup() +{ + policy_cleanup } -atf_test_case unsupported_family +atf_test_case unsupported_family cleanup unsupported_family_head() { - atf_set "descr" "Testing unsupported family" + atf_set "descr" "Testing unsupported family with prefer_v6" } unsupported_family_body() { + policy_backup + /etc/rc.d/ip6addrctl prefer_ipv6 TEST=$(atf_get_srcdir)/h_gai ( $TEST -f 99 localhost '' ) > out 2>&1 - check_output unsup_fam none + check_output unsup_fam none prefer_v6 +} +unsupported_family_cleanup() +{ + policy_cleanup +} + +atf_test_case scopeaddr_prefer_v4 cleanup +scopeaddr_prefer_v4_head() +{ + atf_set "descr" "Testing scoped address format with prefer_v4" +} +scopeaddr_prefer_v4_body() +{ + policy_backup + /etc/rc.d/ip6addrctl prefer_ipv4 + TEST=$(atf_get_srcdir)/h_gai + + ( $TEST fe80::1%lo0 http +# IF=`ifconfig -a | grep -v '^ ' | sed -e 's/:.*//' | head -1 | awk '{print $1}'` +# $TEST fe80::1%$IF http + ) > out 2>&1 + + check_output scoped ifconfig prefer_v4 +} +scopeaddr_prefer_v4_cleanup() +{ + policy_cleanup } -atf_test_case scopeaddr +atf_test_case scopeaddr cleanup scopeaddr_head() { - atf_set "descr" "Testing scoped address format" + atf_set "descr" "Testing scoped address format with prefer_v6" } scopeaddr_body() { + policy_backup + /etc/rc.d/ip6addrctl prefer_ipv6 TEST=$(atf_get_srcdir)/h_gai ( $TEST fe80::1%lo0 http -# IF=`ifconfig -a | grep -v '^ ' | \ -# sed -e 's/:.*//' | head -1 | awk '{print $1}'` +# IF=`ifconfig -a | grep -v '^ ' | sed -e 's/:.*//' | head -1 | awk '{print $1}'` # $TEST fe80::1%$IF http ) > out 2>&1 - check_output scoped none + check_output scoped none prefer_v6 +} +scopeaddr_cleanup() +{ + policy_cleanup } atf_init_test_cases() { - service ip6addrctl prefer_ipv6 + atf_add_test_case basic_prefer_v4 + atf_add_test_case specific_prefer_v4 + atf_add_test_case empty_hostname_prefer_v4 + atf_add_test_case empty_servname_prefer_v4 + atf_add_test_case sock_raw_prefer_v4 + atf_add_test_case unsupported_family_prefer_v4 + atf_add_test_case scopeaddr_prefer_v4 + atf_add_test_case basic atf_add_test_case specific atf_add_test_case empty_hostname From nobody Tue Apr 8 17:34:58 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXCrf6M4Zz5sh6K; Tue, 08 Apr 2025 17:34: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXCrf2Px6z3Jkw; Tue, 08 Apr 2025 17:34:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133698; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YKJy3hxX/yhP/Df5f2fmvFczqoNU1ezP3G3c9tjj8fY=; b=MlfJSyEwPve+Hkgrh+uI0AtwGAw69VMebAuPWVqgBxugJ0sRBnk9CqTw5TzpmOSXkEhJxp CqeDFNUja+MV1bBWR4Ojc6l3WMwXYv8fk/OH0fhKuS6vhYVwyDB68b5myXDDXtqLRfgQnF e2H+kqtSI7aK6mwuH+VgnmgTwKgi7PVTgjlVvjWakxle3pKeK5a0jYJqWUV39QRiwupX1u Gx4poGXYUNk8Lzp6DyL1ZZkC08O8LpIiqqet8RhNKgjmg+H1h57bhqK/ihckwI+tERP9yD KoZEN7MbAtHxV0d9u0/906gdvrK1Pg3c6AYLTHpOwd5hgkbxhlF8SEca1HLRtg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744133698; a=rsa-sha256; cv=none; b=WmisjYtsskB4loyW0WeehqkcKoa8VXcePqXP4bUEKkgleQniEZlJqpfjzqa8Lts/Z/E6JY bC7B88dH1rkh2d7l517aFoeOPSwtMpbrELzZNlCRnpoNC2QVDCywQXeJVsw/tIyo6ePDzS jzp1LLSFEQuRjLWF0jtNAvGbECZ6oBfXSF7yOosF72muCMoua2JAf8EycCnBkpfTrfqQIx /e3/PeIJxjTuC119AljuoNX3hkhvv8b2yV2MRcrlGwfPwZfSeRVZXZBA3OjPxO/XTdDfOS jrYMg9bf6lfj9zN+Gru24hvjVcVaK9HoUkP7fVJ/DGjBgXdThSGEgDTJxo+ldA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133698; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YKJy3hxX/yhP/Df5f2fmvFczqoNU1ezP3G3c9tjj8fY=; b=emnk1lLXdNK6lccKSMCxnAGy23Mtu565VsBgK/mUSLVNWW8fslihVS3GaGP5e2Ike2L6Or NBCJlYMfkN91jJVGRZTZLN45jX+ndnB6iXIdJmyj+9L+AYkyy1ogDxg8zSlnXSI49HAFYH Rz582Dv1zUCimUfQstATrwZ+UApUalbhxVKiNm5+HeV+UQADxYcmrntLzth/YtaX9edzkx WSJ50Iku41S+0NByFvJCCLcPDm62l1e5Fc2sBE3gNZA1YPDQSo7W45IofO6mS88bMNTcqv uY2rU6VXOQFBhtLxvychPNTcm1T//8D9Hw60hyb73dvShLMIVpVegTUjdTSP6Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXCrf1Sjgzhfy; Tue, 08 Apr 2025 17:34:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538HYwru067880; Tue, 8 Apr 2025 17:34:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538HYwsW067877; Tue, 8 Apr 2025 17:34:58 GMT (envelope-from git) Date: Tue, 8 Apr 2025 17:34:58 GMT Message-Id: <202504081734.538HYwsW067877@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: fe44dee0ef5c - main - libc/tests: rename t_getaddrinfo.sh to getaddrinfo_test.sh List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fe44dee0ef5ca77315c30ad0c819a8b3dabc85a2 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=fe44dee0ef5ca77315c30ad0c819a8b3dabc85a2 commit fe44dee0ef5ca77315c30ad0c819a8b3dabc85a2 Author: K Rin AuthorDate: 2025-04-06 00:32:51 +0000 Commit: Gleb Smirnoff CommitDate: 2025-04-08 16:54:04 +0000 libc/tests: rename t_getaddrinfo.sh to getaddrinfo_test.sh This matches FreeBSD style of test names. --- lib/libc/tests/net/getaddrinfo/Makefile | 2 +- .../tests/net/getaddrinfo/{t_getaddrinfo.sh => getaddrinfo_test.sh} | 0 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libc/tests/net/getaddrinfo/Makefile b/lib/libc/tests/net/getaddrinfo/Makefile index 47d945a52c6e..1299e91615b7 100644 --- a/lib/libc/tests/net/getaddrinfo/Makefile +++ b/lib/libc/tests/net/getaddrinfo/Makefile @@ -4,7 +4,7 @@ PACKAGE= tests BINDIR= ${TESTSDIR} -ATF_TESTS_SH= t_getaddrinfo +ATF_TESTS_SH= getaddrinfo_test ATF_TESTS_C= getaddrinfo PROGS= h_gai diff --git a/lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh b/lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh similarity index 100% rename from lib/libc/tests/net/getaddrinfo/t_getaddrinfo.sh rename to lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh From nobody Tue Apr 8 17:34:59 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXCrg3F1bz5shQg; Tue, 08 Apr 2025 17:34: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXCrg29Hyz3Jbr; Tue, 08 Apr 2025 17:34:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133699; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4AGTXvBqRCU8y+86s8dfwn9Pd5796NobmN0soXUP9HI=; b=TPyKycE2q1zWYglLPLhOWNSHtC6xr8t8n8BJEI1WJcg1pNFj9AI86sESk4LLHWEeWOgsiE EFMqnK0gy7QKwGVrJFYOkGPWWsbV+VStRUeqFiPECrE8CyvmQYhc5b/YjOG8OnL4fpDZc9 BTLlG+kKQyu+DYZq4Uc+xG6qKJpeXEQSL9ZZtn5iswcfVYM1D1iTPnG1vKBqO37jpcojUi QQwyewcKcMBPdEJZOB+rogCbqGuGN0pXiLAPgOVC4MD6RnaRU+1DTleHi383+OKavNXxpV 9WNY2abS0Tr3EnaKZEVOa2qc/9ZS/Fr7y81mzzy4qLiWulM+Z+qhIWEIcao3rw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744133699; a=rsa-sha256; cv=none; b=RWUASzJjFoDzb0fHI4xyRvzlz0/vZwh8b4Rf1jao3yvgwXjtz2neKb1CCmoqcwz2cpcA9p TmL0hdC1+nPmGlTbZTRICMRp4g3KcbWXQM7JGnj5dbEskpQTwNrgDbVSEie+jRwLGOwOQz YCTGVtIrdisSfCeLobw5sEPK0dV34hLdJqPH6zvo2YlNPy1sWS0Ez2oGWE+4s1uguzTbZz ovkaexOcxgqb93jW2sPSbjdXGnQ1P98O6GtVbX1NMj87JLFNJu+fElo005CnnWXsgztsj7 KXSXucGD3eRtPApZ3JKlVmnyCCWuLkdl2SQ4BNZZyEUlxkzpwmisd5rOSbbASg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133699; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4AGTXvBqRCU8y+86s8dfwn9Pd5796NobmN0soXUP9HI=; b=bB9ae9dp9pV6LRLlgDoACGEi2hKI/uWQl/V18KRuLpIIs2D5Dsx9wYuNLsxPDdcdoS/H6Q DF0Zuwe7p7LI5zDSrOXIupPz8BBFHGKgNZD/65ymkic6pHU07+KPKxqBCldYaBi8G9FftX KNXgP1LrRye5fMYu45Jd7yvqDezlk/UeY7tNi5lG/SOIj0Cm4vJktkkrTBV1f6UvovHAOK 9nHajASI/3uoi9mBRWKnJuXzg/5gV5tmAAwarwHtVQTBSAk0xx4nMmgYwG7/Ye3G/PvSuy wOPDRHCSsuXWbRS6NBaeT+SQSrs4i6nKFLHzXqmDlG9wxhL7FKkkBJPjQrTxXA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXCrg1g5rzj89; Tue, 08 Apr 2025 17:34:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538HYxBH067924; Tue, 8 Apr 2025 17:34:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538HYxgi067921; Tue, 8 Apr 2025 17:34:59 GMT (envelope-from git) Date: Tue, 8 Apr 2025 17:34:59 GMT Message-Id: <202504081734.538HYxgi067921@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: fbd2bea100af - main - libc/tests: getaddrinfo_test: require root privileges List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fbd2bea100af71c49b6ba3f9874718424411704b Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=fbd2bea100af71c49b6ba3f9874718424411704b commit fbd2bea100af71c49b6ba3f9874718424411704b Author: K Rin AuthorDate: 2025-04-06 01:15:22 +0000 Commit: Gleb Smirnoff CommitDate: 2025-04-08 16:54:33 +0000 libc/tests: getaddrinfo_test: require root privileges --- lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh b/lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh index bd2aa8d94fa0..e21cf0b57e60 100755 --- a/lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh +++ b/lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh @@ -87,6 +87,7 @@ atf_test_case basic_prefer_v4 cleanup basic_prefer_v4_head() { atf_set "descr" "Testing basic ones with prefer_v4" + atf_set "require.user" "root" } basic_prefer_v4_body() { @@ -115,6 +116,7 @@ atf_test_case basic cleanup basic_head() { atf_set "descr" "Testing basic ones with prefer_v6" + atf_set "require.user" "root" } basic_body() { @@ -143,6 +145,7 @@ atf_test_case specific_prefer_v4 cleanup specific_prefer_v4_head() { atf_set "descr" "Testing specific address family with prefer_v4" + atf_set "require.user" "root" } specific_prefer_v4_body() { @@ -164,6 +167,7 @@ atf_test_case specific cleanup specific_head() { atf_set "descr" "Testing specific address family with prefer_v6" + atf_set "require.user" "root" } specific_body() { @@ -185,6 +189,7 @@ atf_test_case empty_hostname_prefer_v4 cleanup empty_hostname_prefer_v4_head() { atf_set "descr" "Testing empty hostname with prefer_v4" + atf_set "require.user" "root" } empty_hostname_prefer_v4_body() { @@ -214,6 +219,7 @@ atf_test_case empty_hostname cleanup empty_hostname_head() { atf_set "descr" "Testing empty hostname with prefer_v6" + atf_set "require.user" "root" } empty_hostname_body() { @@ -243,6 +249,7 @@ atf_test_case empty_servname_prefer_v4 cleanup empty_servname_prefer_v4_head() { atf_set "descr" "Testing empty service name with prefer_v4" + atf_set "require.user" "root" } empty_servname_prefer_v4_body() { @@ -266,6 +273,7 @@ atf_test_case empty_servname cleanup empty_servname_head() { atf_set "descr" "Testing empty service name with prefer_v6" + atf_set "require.user" "root" } empty_servname_body() { @@ -289,6 +297,7 @@ atf_test_case sock_raw_prefer_v4 cleanup sock_raw_prefer_v4_head() { atf_set "descr" "Testing raw socket with prefer_v4" + atf_set "require.user" "root" } sock_raw_prefer_v4_body() { @@ -313,6 +322,7 @@ atf_test_case sock_raw cleanup sock_raw_head() { atf_set "descr" "Testing raw socket with prefer_v6" + atf_set "require.user" "root" } sock_raw_body() { @@ -337,6 +347,7 @@ atf_test_case unsupported_family_prefer_v4 cleanup unsupported_family_prefer_v4_head() { atf_set "descr" "Testing unsupported family with prefer_v4" + atf_set "require.user" "root" } unsupported_family_prefer_v4_body() { @@ -357,6 +368,7 @@ atf_test_case unsupported_family cleanup unsupported_family_head() { atf_set "descr" "Testing unsupported family with prefer_v6" + atf_set "require.user" "root" } unsupported_family_body() { @@ -377,6 +389,7 @@ atf_test_case scopeaddr_prefer_v4 cleanup scopeaddr_prefer_v4_head() { atf_set "descr" "Testing scoped address format with prefer_v4" + atf_set "require.user" "root" } scopeaddr_prefer_v4_body() { @@ -400,6 +413,7 @@ atf_test_case scopeaddr cleanup scopeaddr_head() { atf_set "descr" "Testing scoped address format with prefer_v6" + atf_set "require.user" "root" } scopeaddr_body() { From nobody Tue Apr 8 17:35:00 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXCrj5CV1z5shWq; Tue, 08 Apr 2025 17:35: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXCrh6w7Hz3JsF; Tue, 08 Apr 2025 17:35:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133701; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I3gQBeIb9mf9SG8QsCQkU+S3R1rbyN4904uqxH0w+6I=; b=vBGyY8Kk17esF7lwtySi6982YrqIIyVamgxw+FQ78aNIXzgpkevVSFD4cB1GQqAc6/5D8q JreJABltBymz+HL10lhGmWdhg1NTaMjReIHLS+xTYP4alzGEA3+NY/a5SL47NuMOktFHGq t+4Ji25Tt5RG54oOfQvJDiKqhnzWC4tqLmE5Dmk6u6zRrdIofDfNL9n5ziLvjqtCHM6Eom tRPlUR8J6zL3ESDUZLz5qI29vgvSv9bnK2c9Ok54NDxQsHKcTdEcPDbocSRbzxvL8OvvMS WTZwhiQvl/k5CBA6OgKBLx4B3tN6mkDY5GmvJKYiHOR0K5aY7IGkR95wTUCIfw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744133701; a=rsa-sha256; cv=none; b=jJvC7CG8w5Y9AVRBhudWDNc98vIFCJfhqAesSfFz8HcWX+zzaqxBWK9nX3M8DpUTsAXkBj 9D90A4xxfBvNrl7TlvTeYqZPKhnFXfYeqCeboQ7XpHWP5tlXIDdFnNuzqAAKHGv9tv0+jz uY+ZMmih7zh1H0WIwICfYPsD+DT8DYSAiijgcFu3KdUEhTJTXEFdvU0HbWDqhnqFIn5d8T v1+VDRoXMH74bIVVxP9Az8ZXFWVGO7wFlwC5Uacvsb5HApXzt/QrTCMrTO8NlhsLhFZur5 NfAQIS9/x27EtfjsB1GiZOHaYoINZbmCnOMFonFSEhhzCx5USenCeerMCvNcMQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744133701; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I3gQBeIb9mf9SG8QsCQkU+S3R1rbyN4904uqxH0w+6I=; b=Q2VxUcsY+0UHMwA5WfhYZqBQfkCg+r1ompru0KTfoaq4UWmuZFO1JhMMf76xZ8VGh0xz98 uea6o9bOR2phXFCm6lSg7sTYNldn5QEpW4fwnyAVoNDorGtqO3tYtKwjuiGyOVVzckU4cW FbhBYlL9hQuHQMTufeZDANh1PYyBZ9mq8lCbX3lbLunfqnhnFcqV3Rq+kEbh6vkjpukH9C a2mHEYqzMitJrkPoTQX1jXEIO7vE+NXypbv62QN+uL/mrwJyeFLZPam6ng9eF6HocoaD8d wn4FfeRjJCBvxi1PkciNn7fGRTD1ifSRhc/i+R5fD8K+8/RfiabwrmDsl3ENlA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXCrh2xfszjBR; Tue, 08 Apr 2025 17:35:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538HZ07N067974; Tue, 8 Apr 2025 17:35:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538HZ01x067971; Tue, 8 Apr 2025 17:35:00 GMT (envelope-from git) Date: Tue, 8 Apr 2025 17:35:00 GMT Message-Id: <202504081735.538HZ01x067971@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 423a21a5b65c - main - libc/tests: getaddrinfo_test: use VNET jails for testing List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 423a21a5b65cc7b7809d29c4d40a8ca4a224a3f5 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=423a21a5b65cc7b7809d29c4d40a8ca4a224a3f5 commit 423a21a5b65cc7b7809d29c4d40a8ca4a224a3f5 Author: K Rin AuthorDate: 2025-04-06 05:04:43 +0000 Commit: Gleb Smirnoff CommitDate: 2025-04-08 16:54:58 +0000 libc/tests: getaddrinfo_test: use VNET jails for testing --- lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh | 128 ++++++++++----------- 1 file changed, 59 insertions(+), 69 deletions(-) diff --git a/lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh b/lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh index e21cf0b57e60..dd17ab2e3f4a 100755 --- a/lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh +++ b/lib/libc/tests/net/getaddrinfo/getaddrinfo_test.sh @@ -29,20 +29,24 @@ # SUCH DAMAGE. # -IP6ADDRCTL_CMD="/usr/sbin/ip6addrctl" -CURRENT_POLICY_FILE="current.conf" +if [ "$(sysctl -i -n kern.features.vimage)" != 1 ]; then + atf_skip "This test requires VIMAGE" +fi -policy_backup() +vnet_mkjail() { - "${IP6ADDRCTL_CMD}" > "${CURRENT_POLICY_FILE}" + jailname=getaddrinfo_test_$1 + jail -c name=${jailname} persist vnet + ifconfig -j ${jailname} lo0 inet 127.0.0.1/8 + # For those machines not support IPv6 + ifconfig -j ${jailname} lo0 inet6 ::1/64 || true + service -j ${jailname} ip6addrctl $2 || true } -policy_cleanup() +vnet_cleanup() { - if [ -f "${CURRENT_POLICY_FILE}" ]; then - "${IP6ADDRCTL_CMD}" flush - cat "${CURRENT_POLICY_FILE}" | tail -n +2 | "${IP6ADDRCTL_CMD}" install /dev/stdin - fi + jailname=getaddrinfo_test_$1 + jail -r ${jailname} } check_output() @@ -91,9 +95,8 @@ basic_prefer_v4_head() } basic_prefer_v4_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv4 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail basic_prefer_v4 prefer_ipv4 + TEST="jexec getaddrinfo_test_basic_prefer_v4 $(atf_get_srcdir)/h_gai" ( $TEST ::1 http $TEST 127.0.0.1 http @@ -109,7 +112,7 @@ basic_prefer_v4_body() } basic_prefer_v4_cleanup() { - policy_cleanup + vnet_cleanup basic_prefer_v4 } atf_test_case basic cleanup @@ -120,9 +123,8 @@ basic_head() } basic_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv6 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail basic prefer_ipv6 + TEST="jexec getaddrinfo_test_basic $(atf_get_srcdir)/h_gai" ( $TEST ::1 http $TEST 127.0.0.1 http @@ -138,7 +140,7 @@ basic_body() } basic_cleanup() { - policy_cleanup + vnet_cleanup basic } atf_test_case specific_prefer_v4 cleanup @@ -149,9 +151,8 @@ specific_prefer_v4_head() } specific_prefer_v4_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv4 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail specific_prefer_v4 prefer_ipv4 + TEST="jexec getaddrinfo_test_specific_prefer_v4 $(atf_get_srcdir)/h_gai" ( $TEST -4 localhost http $TEST -6 localhost http ) > out 2>&1 @@ -160,7 +161,7 @@ specific_prefer_v4_body() } specific_prefer_v4_cleanup() { - policy_cleanup + vnet_cleanup specific_prefer_v4 } atf_test_case specific cleanup @@ -171,9 +172,8 @@ specific_head() } specific_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv6 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail specific prefer_ipv6 + TEST="jexec getaddrinfo_test_specific $(atf_get_srcdir)/h_gai" ( $TEST -4 localhost http $TEST -6 localhost http ) > out 2>&1 @@ -182,7 +182,7 @@ specific_body() } specific_cleanup() { - policy_cleanup + vnet_cleanup specific } atf_test_case empty_hostname_prefer_v4 cleanup @@ -193,9 +193,8 @@ empty_hostname_prefer_v4_head() } empty_hostname_prefer_v4_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv4 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail empty_hostname_prefer_v4 prefer_ipv4 + TEST="jexec getaddrinfo_test_empty_hostname_prefer_v4 $(atf_get_srcdir)/h_gai" ( $TEST '' http $TEST '' echo @@ -212,7 +211,7 @@ empty_hostname_prefer_v4_body() } empty_hostname_prefer_v4_cleanup() { - policy_cleanup + vnet_cleanup empty_hostname_prefer_v4 } atf_test_case empty_hostname cleanup @@ -223,9 +222,8 @@ empty_hostname_head() } empty_hostname_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv6 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail empty_hostname prefer_ipv6 + TEST="jexec getaddrinfo_test_empty_hostname $(atf_get_srcdir)/h_gai" ( $TEST '' http $TEST '' echo @@ -242,7 +240,7 @@ empty_hostname_body() } empty_hostname_cleanup() { - policy_cleanup + vnet_cleanup empty_hostname } atf_test_case empty_servname_prefer_v4 cleanup @@ -253,9 +251,8 @@ empty_servname_prefer_v4_head() } empty_servname_prefer_v4_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv4 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail empty_servname_prefer_v4 prefer_ipv4 + TEST="jexec getaddrinfo_test_empty_servname_prefer_v4 $(atf_get_srcdir)/h_gai" ( $TEST ::1 '' $TEST 127.0.0.1 '' @@ -266,7 +263,7 @@ empty_servname_prefer_v4_body() } empty_servname_prefer_v4_cleanup() { - policy_cleanup + vnet_cleanup empty_servname_prefer_v4 } atf_test_case empty_servname cleanup @@ -277,9 +274,8 @@ empty_servname_head() } empty_servname_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv6 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail empty_servname prefer_ipv6 + TEST="jexec getaddrinfo_test_empty_servname $(atf_get_srcdir)/h_gai" ( $TEST ::1 '' $TEST 127.0.0.1 '' @@ -290,7 +286,7 @@ empty_servname_body() } empty_servname_cleanup() { - policy_cleanup + vnet_cleanup empty_servname } atf_test_case sock_raw_prefer_v4 cleanup @@ -301,9 +297,8 @@ sock_raw_prefer_v4_head() } sock_raw_prefer_v4_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv4 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail sock_raw_prefer_v4 prefer_ipv4 + TEST="jexec getaddrinfo_test_sock_raw_prefer_v4 $(atf_get_srcdir)/h_gai" ( $TEST -R -p 0 localhost '' $TEST -R -p 59 localhost '' @@ -315,7 +310,7 @@ sock_raw_prefer_v4_body() } sock_raw_prefer_v4_cleanup() { - policy_cleanup + vnet_cleanup sock_raw_prefer_v4 } atf_test_case sock_raw cleanup @@ -326,9 +321,8 @@ sock_raw_head() } sock_raw_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv6 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail sock_raw prefer_ipv6 + TEST="jexec getaddrinfo_test_sock_raw $(atf_get_srcdir)/h_gai" ( $TEST -R -p 0 localhost '' $TEST -R -p 59 localhost '' @@ -340,7 +334,7 @@ sock_raw_body() } sock_raw_cleanup() { - policy_cleanup + vnet_cleanup sock_raw } atf_test_case unsupported_family_prefer_v4 cleanup @@ -351,9 +345,8 @@ unsupported_family_prefer_v4_head() } unsupported_family_prefer_v4_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv4 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail unsupported_family_prefer_v4 prefer_ipv4 + TEST="jexec getaddrinfo_test_unsupported_family_prefer_v4 $(atf_get_srcdir)/h_gai" ( $TEST -f 99 localhost '' ) > out 2>&1 @@ -361,7 +354,7 @@ unsupported_family_prefer_v4_body() } unsupported_family_prefer_v4_cleanup() { - policy_cleanup + vnet_cleanup unsupported_family_prefer_v4 } atf_test_case unsupported_family cleanup @@ -372,9 +365,8 @@ unsupported_family_head() } unsupported_family_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv6 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail unsupported_family prefer_ipv6 + TEST="jexec getaddrinfo_test_unsupported_family $(atf_get_srcdir)/h_gai" ( $TEST -f 99 localhost '' ) > out 2>&1 @@ -382,7 +374,7 @@ unsupported_family_body() } unsupported_family_cleanup() { - policy_cleanup + vnet_cleanup unsupported_family } atf_test_case scopeaddr_prefer_v4 cleanup @@ -393,20 +385,19 @@ scopeaddr_prefer_v4_head() } scopeaddr_prefer_v4_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv4 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail scopeaddr_prefer_v4 prefer_ipv4 + TEST="jexec getaddrinfo_test_scopeaddr_prefer_v4 $(atf_get_srcdir)/h_gai" ( $TEST fe80::1%lo0 http -# IF=`ifconfig -a | grep -v '^ ' | sed -e 's/:.*//' | head -1 | awk '{print $1}'` -# $TEST fe80::1%$IF http +# IF=ifconfig -a | grep -v '^ ' | sed -e 's/:.*//' | head -1 | awk '{print $1}' +# $TEST fe80::1%$IF http ) > out 2>&1 check_output scoped ifconfig prefer_v4 } scopeaddr_prefer_v4_cleanup() { - policy_cleanup + vnet_cleanup scopeaddr_prefer_v4 } atf_test_case scopeaddr cleanup @@ -417,20 +408,19 @@ scopeaddr_head() } scopeaddr_body() { - policy_backup - /etc/rc.d/ip6addrctl prefer_ipv6 - TEST=$(atf_get_srcdir)/h_gai + vnet_mkjail scopeaddr prefer_ipv6 + TEST="jexec getaddrinfo_test_scopeaddr $(atf_get_srcdir)/h_gai" ( $TEST fe80::1%lo0 http -# IF=`ifconfig -a | grep -v '^ ' | sed -e 's/:.*//' | head -1 | awk '{print $1}'` -# $TEST fe80::1%$IF http +# IF=ifconfig -a | grep -v '^ ' | sed -e 's/:.*//' | head -1 | awk '{print $1}' +# $TEST fe80::1%$IF http ) > out 2>&1 check_output scoped none prefer_v6 } scopeaddr_cleanup() { - policy_cleanup + vnet_cleanup scopeaddr } atf_init_test_cases() From nobody Tue Apr 8 21:33:28 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXK7s4JR4z5s0Rs; Tue, 08 Apr 2025 21:33: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXK7s0Tnpz3Rvn; Tue, 08 Apr 2025 21:33:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744148009; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gx5P6TYUB2Ouf9t17kkz2y4t0g0qrFxQxmO1Tip4lvw=; b=smmqxvgpRb0fH8Ch71uRBT9Co2XDC3oWiB/nMJvX+GWvRzRhXCQn2tTAvIcE2RGULpdOUb 0Lw7AY/IH8kS8ZcIupRDhxmT2nD1uTd55Ryo4byOvEpOxA/AAoXHGchqrpFObWrLoq/DHB aHz9+h7OFOasXCfyYYoha5Hiays3eQ6gUlqehQFNzf1PV8wzXC8TohMcCgDtFrCvYpvlDq FL0cR4rj4hvSySN9YYNi46wLN5ZHGYhkzWNtg1iOB57Z8jSq8Ksl41xCd6v0nHWFSumnoC dVm2cy2efJO3KKVn5uKd+TiSMW42WoaNj/Vu2gMlzH5bPjU0H2eAbV47e13HiQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744148009; a=rsa-sha256; cv=none; b=iWpkDoKYOXc5SUKxRxJT9xgryD6W+WU101I8ew/nBLAJnRqIhGfo+47R4iPcvUhZl9gxkt dVtZzEMht01awapatzP+myTRsUx8QwBUeJpBm+ALZdaVjiJI/lcU0lIF49ZJ28imZd1kuj newuKt06vc2hcgGYDnd9pBgeGRFOtiPtqeEXz5EvEhsZtaQVqNjwD0SvLTVM4Qd/aTzMWg +Q9RfJldRn80NueVPRsiD0FepHvE5ww6KM/9LTZscXdujywlYBLarCm3T6wUunEbw+eGup QBYvM+HzIgq7txNrzvtFAwWykJfLgOGL4ZXisgofNW9POZWeqJ4ODM3O7R1gAQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744148009; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gx5P6TYUB2Ouf9t17kkz2y4t0g0qrFxQxmO1Tip4lvw=; b=CiLGilBMR5GOXK22QZ1MERDPMAqvcP1wPLXpIIPUjrDPyXrRTU0eSLHMSRYpmSBqwrQd7R PrhVufX1kN51+zASjkhUZ/ighoF13POl4y8+0QYUidtADGX3Ddt6K4Lng7npOSlq53mYlK OwsOGjNGm1ItGU8/vHhjbqin3f8BMSZhXEku3mGJ9BygG+NjU9/SUEe5d//EO2CqJuBYTI 3k/lvSXzBZFf9Asx0XOI8bdcXBlVwHgKQsuC4d4lZ+ARFol+bJ2tbzJyeScsunTysG8MAe QHGNRBFN7NHAc5HOjEO9ssm5O/g9uReQG6AXvDme8nJGcoOU/3rmUubPugiFJQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXK7s04Vpzq5v; Tue, 08 Apr 2025 21:33:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 538LXSCo016315; Tue, 8 Apr 2025 21:33:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 538LXSn4016312; Tue, 8 Apr 2025 21:33:28 GMT (envelope-from git) Date: Tue, 8 Apr 2025 21:33:28 GMT Message-Id: <202504082133.538LXSn4016312@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 516adf364cab - main - lindebugfs: Export newly-added symbol List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 516adf364cabe7d840129a12c71434793739dc81 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=516adf364cabe7d840129a12c71434793739dc81 commit 516adf364cabe7d840129a12c71434793739dc81 Author: Ed Maste AuthorDate: 2025-04-08 21:18:41 +0000 Commit: Ed Maste CommitDate: 2025-04-08 21:33:02 +0000 lindebugfs: Export newly-added symbol Fixes: 2ee1311820be ("lindebugfs: Add `debugfs_lookup()`") Sponsored by: The FreeBSD Foundation --- sys/modules/lindebugfs/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/modules/lindebugfs/Makefile b/sys/modules/lindebugfs/Makefile index 90713a634b4b..dce9a2a3e955 100644 --- a/sys/modules/lindebugfs/Makefile +++ b/sys/modules/lindebugfs/Makefile @@ -24,6 +24,7 @@ EXPORT_SYMS+= debugfs_create_x8 EXPORT_SYMS+= debugfs_create_x16 EXPORT_SYMS+= debugfs_create_x32 EXPORT_SYMS+= debugfs_create_x64 +EXPORT_SYMS+= debugfs_lookup EXPORT_SYMS+= debugfs_remove EXPORT_SYMS+= debugfs_remove_recursive From nobody Wed Apr 9 04:56:05 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXVyZ0pK3z5sWmN; Wed, 09 Apr 2025 04:56: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXVyY5BtYz3hb5; Wed, 09 Apr 2025 04:56:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744174565; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0AFGURUSL/3yyJ1mpALxeNMM/oC5i+SAsjlmqSvs4Qo=; b=UhT/WcmwrxZX1qKI7iQi+lYfY2CsVJ8GCIJO/5ygk17qW85tYoExGhk7AuyZ8edFqcv/aK dEWqSj5l73eH2J/Q3cCW+tg7hs2DaiF0C/8lJfU88/+JjMXEhaUOhMDpzc5nwmB9eqgtos 3G4HjD3rt7xmGTl7NVfZ7S3YPh1iydXA4oc/dPNvqvP4BiUOvaQ40t1P95Ix1svoUpQXDC u+3rpyVKT1bmXOWkM7QfNMVL2vM1I7Oiu89lfI9LGjw3VXqq4gdtnX0T9Lswv279kRP966 lMYjMKjwpYmqyWHr/oaOuZBnQ1rs0NBgoqUA8heQeZH8HnbgljAFjAnqbBxlNg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744174565; a=rsa-sha256; cv=none; b=FMt89Z6gH6ydgwMVlKP9iDrZa3ODxqfVclyJS0lV4NY7WMxLtQegjgVpfThCCkcDR2SDu2 68V9X5Ra3BXqEajzPf8tA6JMXPVtWyNK/uLHbjz60yHfT5BbO0Lmr9MJ00/S2Icll4iUBs XqIToMi4POyFucRAfwxn3VbvldHyxZDcqCJejjY++GjSaZEX56bGQ+/DY8SrH6hZHV1a1w iY8X6VhLG+yOncw5zK8K/gV5wRPpZitaFbZ277itRxS96T0uixDOGGmaUnhYzoPzPdFfA1 lxj04j4nTjaFfYl/IclBtfNNRdRZeKQjwpD6Ai51LxbMlxJ3Puintcx9qXI6Qg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744174565; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0AFGURUSL/3yyJ1mpALxeNMM/oC5i+SAsjlmqSvs4Qo=; b=XlvB9h9LUTyvqat2Ake4B7qVBcnTGf1OPuLWk157ReeT0Sbm8vxZm8Lx9aoiJgVsEiRsso jLuYR0QyUyyHgbSSeQ9eiSJ46sBPD23YcitWVNxLH6JasG8IRrVC5wjtpY280obb2YmEFp D9zTlmEBHRwJNStPnuXqxsWIf0NpJBVh85F2POX+aoIV/5/7WFvRHRRfXpzujR9aRHlIDx yRvnaU+upzdJmWPM5y16cbQ1CU2LCiQUG2sLZzAmp6bkla2/rCdRnt/4t6emRLHzGXaGgl O9ImznrFh/O6aMrLY6WTjPFW//q941Tcn919khU21P3hLLfaaHkfJb7FExcXvA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXVyY4fX8z12tW; Wed, 09 Apr 2025 04:56:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5394u5bx037789; Wed, 9 Apr 2025 04:56:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5394u5wx037786; Wed, 9 Apr 2025 04:56:05 GMT (envelope-from git) Date: Wed, 9 Apr 2025 04:56:05 GMT Message-Id: <202504090456.5394u5wx037786@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 89e0e3814e8c - main - mlx5en: Use connector type instead of cable type for media detection List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 89e0e3814e8ca205db7523f6ce6c63cebe4bfb0d Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=89e0e3814e8ca205db7523f6ce6c63cebe4bfb0d commit 89e0e3814e8ca205db7523f6ce6c63cebe4bfb0d Author: Ariel Ehrenberg AuthorDate: 2025-03-25 12:40:58 +0000 Commit: Konstantin Belousov CommitDate: 2025-04-09 04:55:27 +0000 mlx5en: Use connector type instead of cable type for media detection Replace cable type detection with connector type for more accurate media type selection. The connector type is queried directly from the PTYS register and provides more reliable information about the physical port type compared to cable type. Reviewed by: slavash Sponsored by: NVidia networking MFC after: 1 week --- sys/dev/mlx5/mlx5_en/mlx5_en_main.c | 98 +++++++++++++++++-------------------- sys/dev/mlx5/port.h | 13 +++++ 2 files changed, 57 insertions(+), 54 deletions(-) diff --git a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c index c3539cf8b8f2..f83506bda1aa 100644 --- a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c +++ b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c @@ -169,186 +169,186 @@ static const struct media mlx5e_mode_table[MLX5E_LINK_SPEEDS_NUMBER] = }, }; -static const struct media mlx5e_ext_mode_table[MLX5E_EXT_LINK_SPEEDS_NUMBER][MLX5E_CABLE_TYPE_NUMBER] = +static const struct media mlx5e_ext_mode_table[MLX5E_EXT_LINK_SPEEDS_NUMBER][MLX5E_CONNECTOR_TYPE_NUMBER] = { /**/ - [MLX5E_SGMII_100M][MLX5E_CABLE_TYPE_UNKNOWN] = { + [MLX5E_SGMII_100M][MLX5E_PORT_UNKNOWN] = { .subtype = IFM_100_SGMII, .baudrate = IF_Mbps(100), }, /**/ - [MLX5E_1000BASE_X_SGMII][MLX5E_CABLE_TYPE_UNKNOWN] = { + [MLX5E_1000BASE_X_SGMII][MLX5E_PORT_UNKNOWN] = { .subtype = IFM_1000_CX, .baudrate = IF_Mbps(1000), }, - [MLX5E_1000BASE_X_SGMII][MLX5E_CABLE_TYPE_OPTICAL_MODULE] = { + [MLX5E_1000BASE_X_SGMII][MLX5E_PORT_FIBRE] = { .subtype = IFM_1000_SX, .baudrate = IF_Mbps(1000), }, /**/ - [MLX5E_5GBASE_R][MLX5E_CABLE_TYPE_UNKNOWN] = { + [MLX5E_5GBASE_R][MLX5E_PORT_UNKNOWN] = { .subtype = IFM_5000_KR, .baudrate = IF_Mbps(5000), }, - [MLX5E_5GBASE_R][MLX5E_CABLE_TYPE_TWISTED_PAIR] = { + [MLX5E_5GBASE_R][MLX5E_PORT_TP] = { .subtype = IFM_5000_T, .baudrate = IF_Mbps(5000), }, /**/ - [MLX5E_10GBASE_XFI_XAUI_1][MLX5E_CABLE_TYPE_UNKNOWN] = { + [MLX5E_10GBASE_XFI_XAUI_1][MLX5E_PORT_UNKNOWN] = { .subtype = IFM_10G_KR, .baudrate = IF_Gbps(10ULL), }, - [MLX5E_10GBASE_XFI_XAUI_1][MLX5E_CABLE_TYPE_PASSIVE_COPPER] = { + [MLX5E_10GBASE_XFI_XAUI_1][MLX5E_PORT_DA] = { .subtype = IFM_10G_CR1, .baudrate = IF_Gbps(10ULL), }, - [MLX5E_10GBASE_XFI_XAUI_1][MLX5E_CABLE_TYPE_OPTICAL_MODULE] = { + [MLX5E_10GBASE_XFI_XAUI_1][MLX5E_PORT_FIBRE] = { .subtype = IFM_10G_SR, .baudrate = IF_Gbps(10ULL), }, /**/ - [MLX5E_40GBASE_XLAUI_4_XLPPI_4][MLX5E_CABLE_TYPE_UNKNOWN] = { + [MLX5E_40GBASE_XLAUI_4_XLPPI_4][MLX5E_PORT_UNKNOWN] = { .subtype = IFM_40G_KR4, .baudrate = IF_Gbps(40ULL), }, - [MLX5E_40GBASE_XLAUI_4_XLPPI_4][MLX5E_CABLE_TYPE_PASSIVE_COPPER] = { + [MLX5E_40GBASE_XLAUI_4_XLPPI_4][MLX5E_PORT_DA] = { .subtype = IFM_40G_CR4, .baudrate = IF_Gbps(40ULL), }, - [MLX5E_40GBASE_XLAUI_4_XLPPI_4][MLX5E_CABLE_TYPE_OPTICAL_MODULE] = { + [MLX5E_40GBASE_XLAUI_4_XLPPI_4][MLX5E_PORT_FIBRE] = { .subtype = IFM_40G_SR4, .baudrate = IF_Gbps(40ULL), }, /**/ - [MLX5E_25GAUI_1_25GBASE_CR_KR][MLX5E_CABLE_TYPE_UNKNOWN] = { + [MLX5E_25GAUI_1_25GBASE_CR_KR][MLX5E_PORT_UNKNOWN] = { .subtype = IFM_25G_KR, .baudrate = IF_Gbps(25ULL), }, - [MLX5E_25GAUI_1_25GBASE_CR_KR][MLX5E_CABLE_TYPE_PASSIVE_COPPER] = { + [MLX5E_25GAUI_1_25GBASE_CR_KR][MLX5E_PORT_DA] = { .subtype = IFM_25G_CR, .baudrate = IF_Gbps(25ULL), }, - [MLX5E_25GAUI_1_25GBASE_CR_KR][MLX5E_CABLE_TYPE_OPTICAL_MODULE] = { + [MLX5E_25GAUI_1_25GBASE_CR_KR][MLX5E_PORT_FIBRE] = { .subtype = IFM_25G_SR, .baudrate = IF_Gbps(25ULL), }, - [MLX5E_25GAUI_1_25GBASE_CR_KR][MLX5E_CABLE_TYPE_TWISTED_PAIR] = { + [MLX5E_25GAUI_1_25GBASE_CR_KR][MLX5E_PORT_TP] = { .subtype = IFM_25G_T, .baudrate = IF_Gbps(25ULL), }, /**/ - [MLX5E_50GAUI_2_LAUI_2_50GBASE_CR2_KR2][MLX5E_CABLE_TYPE_UNKNOWN] = { + [MLX5E_50GAUI_2_LAUI_2_50GBASE_CR2_KR2][MLX5E_PORT_UNKNOWN] = { .subtype = IFM_50G_KR2, .baudrate = IF_Gbps(50ULL), }, - [MLX5E_50GAUI_2_LAUI_2_50GBASE_CR2_KR2][MLX5E_CABLE_TYPE_PASSIVE_COPPER] = { + [MLX5E_50GAUI_2_LAUI_2_50GBASE_CR2_KR2][MLX5E_PORT_DA] = { .subtype = IFM_50G_CR2, .baudrate = IF_Gbps(50ULL), }, - [MLX5E_50GAUI_2_LAUI_2_50GBASE_CR2_KR2][MLX5E_CABLE_TYPE_OPTICAL_MODULE] = { + [MLX5E_50GAUI_2_LAUI_2_50GBASE_CR2_KR2][MLX5E_PORT_FIBRE] = { .subtype = IFM_50G_SR2, .baudrate = IF_Gbps(50ULL), }, /**/ - [MLX5E_50GAUI_1_LAUI_1_50GBASE_CR_KR][MLX5E_CABLE_TYPE_UNKNOWN] = { + [MLX5E_50GAUI_1_LAUI_1_50GBASE_CR_KR][MLX5E_PORT_UNKNOWN] = { .subtype = IFM_50G_KR_PAM4, .baudrate = IF_Gbps(50ULL), }, - [MLX5E_50GAUI_1_LAUI_1_50GBASE_CR_KR][MLX5E_CABLE_TYPE_PASSIVE_COPPER] = { + [MLX5E_50GAUI_1_LAUI_1_50GBASE_CR_KR][MLX5E_PORT_DA] = { .subtype = IFM_50G_CP, .baudrate = IF_Gbps(50ULL), }, - [MLX5E_50GAUI_1_LAUI_1_50GBASE_CR_KR][MLX5E_CABLE_TYPE_OPTICAL_MODULE] = { + [MLX5E_50GAUI_1_LAUI_1_50GBASE_CR_KR][MLX5E_PORT_FIBRE] = { .subtype = IFM_50G_SR, .baudrate = IF_Gbps(50ULL), }, /**/ - [MLX5E_CAUI_4_100GBASE_CR4_KR4][MLX5E_CABLE_TYPE_UNKNOWN] = { + [MLX5E_CAUI_4_100GBASE_CR4_KR4][MLX5E_PORT_UNKNOWN] = { .subtype = IFM_100G_KR4, .baudrate = IF_Gbps(100ULL), }, - [MLX5E_CAUI_4_100GBASE_CR4_KR4][MLX5E_CABLE_TYPE_PASSIVE_COPPER] = { + [MLX5E_CAUI_4_100GBASE_CR4_KR4][MLX5E_PORT_DA] = { .subtype = IFM_100G_CR4, .baudrate = IF_Gbps(100ULL), }, - [MLX5E_CAUI_4_100GBASE_CR4_KR4][MLX5E_CABLE_TYPE_OPTICAL_MODULE] = { + [MLX5E_CAUI_4_100GBASE_CR4_KR4][MLX5E_PORT_FIBRE] = { .subtype = IFM_100G_SR4, .baudrate = IF_Gbps(100ULL), }, /**/ - [MLX5E_100GAUI_1_100GBASE_CR_KR][MLX5E_CABLE_TYPE_UNKNOWN] = { + [MLX5E_100GAUI_1_100GBASE_CR_KR][MLX5E_PORT_UNKNOWN] = { .subtype = IFM_100G_KR_PAM4, .baudrate = IF_Gbps(100ULL), }, - [MLX5E_100GAUI_1_100GBASE_CR_KR][MLX5E_CABLE_TYPE_PASSIVE_COPPER] = { + [MLX5E_100GAUI_1_100GBASE_CR_KR][MLX5E_PORT_DA] = { .subtype = IFM_100G_CR_PAM4, .baudrate = IF_Gbps(100ULL), }, - [MLX5E_100GAUI_1_100GBASE_CR_KR][MLX5E_CABLE_TYPE_OPTICAL_MODULE] = { + [MLX5E_100GAUI_1_100GBASE_CR_KR][MLX5E_PORT_FIBRE] = { .subtype = IFM_100G_SR2, /* XXX */ .baudrate = IF_Gbps(100ULL), }, /**/ - [MLX5E_100GAUI_2_100GBASE_CR2_KR2][MLX5E_CABLE_TYPE_UNKNOWN] = { + [MLX5E_100GAUI_2_100GBASE_CR2_KR2][MLX5E_PORT_UNKNOWN] = { .subtype = IFM_100G_KR4, .baudrate = IF_Gbps(100ULL), }, - [MLX5E_100GAUI_2_100GBASE_CR2_KR2][MLX5E_CABLE_TYPE_PASSIVE_COPPER] = { + [MLX5E_100GAUI_2_100GBASE_CR2_KR2][MLX5E_PORT_DA] = { .subtype = IFM_100G_CP2, .baudrate = IF_Gbps(100ULL), }, - [MLX5E_100GAUI_2_100GBASE_CR2_KR2][MLX5E_CABLE_TYPE_OPTICAL_MODULE] = { + [MLX5E_100GAUI_2_100GBASE_CR2_KR2][MLX5E_PORT_FIBRE] = { .subtype = IFM_100G_SR2, .baudrate = IF_Gbps(100ULL), }, /**/ - [MLX5E_200GAUI_2_200GBASE_CR2_KR2][MLX5E_CABLE_TYPE_UNKNOWN] = { + [MLX5E_200GAUI_2_200GBASE_CR2_KR2][MLX5E_PORT_UNKNOWN] = { .subtype = IFM_200G_KR4_PAM4, /* XXX */ .baudrate = IF_Gbps(200ULL), }, - [MLX5E_200GAUI_2_200GBASE_CR2_KR2][MLX5E_CABLE_TYPE_PASSIVE_COPPER] = { + [MLX5E_200GAUI_2_200GBASE_CR2_KR2][MLX5E_PORT_DA] = { .subtype = IFM_200G_CR4_PAM4, /* XXX */ .baudrate = IF_Gbps(200ULL), }, - [MLX5E_200GAUI_2_200GBASE_CR2_KR2][MLX5E_CABLE_TYPE_OPTICAL_MODULE] = { + [MLX5E_200GAUI_2_200GBASE_CR2_KR2][MLX5E_PORT_FIBRE] = { .subtype = IFM_200G_SR4, /* XXX */ .baudrate = IF_Gbps(200ULL), }, /**/ - [MLX5E_200GAUI_4_200GBASE_CR4_KR4][MLX5E_CABLE_TYPE_UNKNOWN] = { + [MLX5E_200GAUI_4_200GBASE_CR4_KR4][MLX5E_PORT_UNKNOWN] = { .subtype = IFM_200G_KR4_PAM4, .baudrate = IF_Gbps(200ULL), }, - [MLX5E_200GAUI_4_200GBASE_CR4_KR4][MLX5E_CABLE_TYPE_PASSIVE_COPPER] = { + [MLX5E_200GAUI_4_200GBASE_CR4_KR4][MLX5E_PORT_DA] = { .subtype = IFM_200G_CR4_PAM4, .baudrate = IF_Gbps(200ULL), }, - [MLX5E_200GAUI_4_200GBASE_CR4_KR4][MLX5E_CABLE_TYPE_OPTICAL_MODULE] = { + [MLX5E_200GAUI_4_200GBASE_CR4_KR4][MLX5E_PORT_FIBRE] = { .subtype = IFM_200G_SR4, .baudrate = IF_Gbps(200ULL), }, /**/ - [MLX5E_400GAUI_8][MLX5E_CABLE_TYPE_UNKNOWN] = { + [MLX5E_400GAUI_8][MLX5E_PORT_UNKNOWN] = { .subtype = IFM_400G_LR8, /* XXX */ .baudrate = IF_Gbps(400ULL), }, /**/ - [MLX5E_400GAUI_4_400GBASE_CR4_KR4][MLX5E_CABLE_TYPE_UNKNOWN] = { + [MLX5E_400GAUI_4_400GBASE_CR4_KR4][MLX5E_PORT_UNKNOWN] = { .subtype = IFM_400G_LR8, /* XXX */ .baudrate = IF_Gbps(400ULL), }, @@ -372,7 +372,7 @@ mlx5e_update_carrier(struct mlx5e_priv *priv) u32 eth_proto_oper; int error; u8 i; - u8 cable_type; + u8 connector_type; u8 port_state; u8 is_er_type; bool ext; @@ -403,24 +403,14 @@ mlx5e_update_carrier(struct mlx5e_priv *priv) ext = MLX5_CAP_PCAM_FEATURE(mdev, ptys_extended_ethernet); eth_proto_oper = MLX5_GET_ETH_PROTO(ptys_reg, out, ext, eth_proto_oper); - + connector_type = MLX5_GET(ptys_reg, out, connector_type); i = ilog2(eth_proto_oper); if (ext) { - error = mlx5_query_pddr_cable_type(mdev, 1, &cable_type); - if (error != 0) { - /* use fallback entry */ - media_entry = mlx5e_ext_mode_table[i][MLX5E_CABLE_TYPE_UNKNOWN]; - - mlx5_en_err(priv->ifp, - "query port pddr failed: %d\n", error); - } else { - media_entry = mlx5e_ext_mode_table[i][cable_type]; - + media_entry = mlx5e_ext_mode_table[i][connector_type]; /* check if we should use fallback entry */ - if (media_entry.subtype == 0) - media_entry = mlx5e_ext_mode_table[i][MLX5E_CABLE_TYPE_UNKNOWN]; - } + if (media_entry.subtype == 0) + media_entry = mlx5e_ext_mode_table[i][MLX5E_PORT_UNKNOWN]; } else { media_entry = mlx5e_mode_table[i]; } diff --git a/sys/dev/mlx5/port.h b/sys/dev/mlx5/port.h index bfbc721139d3..a35265852ae4 100644 --- a/sys/dev/mlx5/port.h +++ b/sys/dev/mlx5/port.h @@ -128,6 +128,19 @@ enum mlx5e_ext_link_speed { MLX5E_EXT_LINK_SPEEDS_NUMBER = 32, }; +enum mlx5e_connector_type { + MLX5E_PORT_UNKNOWN = 0, + MLX5E_PORT_NONE = 1, + MLX5E_PORT_TP = 2, + MLX5E_PORT_AUI = 3, + MLX5E_PORT_BNC = 4, + MLX5E_PORT_MII = 5, + MLX5E_PORT_FIBRE = 6, + MLX5E_PORT_DA = 7, + MLX5E_PORT_OTHER = 8, + MLX5E_CONNECTOR_TYPE_NUMBER = 9, +}; + enum mlx5e_cable_type { MLX5E_CABLE_TYPE_UNKNOWN = 0, MLX5E_CABLE_TYPE_ACTIVE_CABLE = 1, From nobody Wed Apr 9 07:37:42 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXZY32MS9z5shCh; Wed, 09 Apr 2025 07:37:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXZY26wQ3z3PDw; Wed, 09 Apr 2025 07:37:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744184263; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Rk5G2jUxRDCSapfGz9gHt683N4Q5+SItV/YsbZwCF6k=; b=onHSt8gkHVt78WaumZAcUn/YAWjZKZEyooHMuSUDtMuSeMX2HmIfhltDUFPGRiIH9VCjff XCmDyKJ1uu3EqelM8ZYmKiqGfAnkyF34T+yQw4GQ1tmi16brRTUlS98ia4eKIiPmq41VgS xvExQpm41ec3T6UAMXbGauL0gZMgITkceabXwKuFK1GkFnlkAGx7s2D4Ctp9U5C4mcCn4z 1f0HJe1GXMXWzqhF3T4INV71lUjy51kRz72z4VHVbl56Ho8+68tE+NFKZAnPCoJq1wxHs0 Bd1JFzh6ERg7hUwH+CeEN6QryGdUlh7FrkgE6LQvxOUeM9HaNL+ar/ayac530Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744184263; a=rsa-sha256; cv=none; b=lNmsY4mJBWgGH7tZS/03hQsNeVnnqkNCWXceOzI/gE+vELS8jUAiOMLmPxm6uwjM2SDrD3 zftt+lndf+jIa/0G3JQWfxO3a5fnKPMS26nMSwHNMdQph1kxk3MpWo0S8VDlH8YDXTa4Uq ht0trdw73v+Q1ISRHjmPBEDTZqx1l2ItEXP65J6zXlrPlBo8DmlyyMjLXO6tWJxoNS/WdN 1hMqJWxlLd5MjawF2YDgKeY0+dZIaQ3Ki9SDSBTXnlQY+NQoqTlvehux8fQIaKw/q4KlkP cLW13d3CROvTL0qjqFmVwFupZXdqeNJLTFd5tZ6YMW2tCa26dUsowiFGNQPdHg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744184263; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Rk5G2jUxRDCSapfGz9gHt683N4Q5+SItV/YsbZwCF6k=; b=YqahXaA2bgK1p2Ko/H6W+DPGlBIL6iu3fZQPUpMfXmEBatR7a8XYS0MtRS/6qvbkbJzUBv 0rqJyoDqOqBwneMpEuXqpEXNtoinxq99737MNVTQDiadZ+xHHO6Z5MPEeKg5tvJY5WvpWC uzvO4rpuNus7RXorimdgCa/mzToNTrTgE7T+f90/a52RpDUnfEGDBarm3o3ahQxKqMs/fB IjF6oumRpU84zL+L/yv/iqxkDc9oi0g3ZVv1tF95uNVKukS8QBkti0iU+QL2LySi/VyVcY aDMisUx/CISL7v6jsZvsqKr2bIkDfUUB5Lnvc57Emt8PoAv/Wa78aFdQ3gZnBQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXZY269Qvz16gS; Wed, 09 Apr 2025 07:37:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5397bgPn036632; Wed, 9 Apr 2025 07:37:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5397bg6w036627; Wed, 9 Apr 2025 07:37:42 GMT (envelope-from git) Date: Wed, 9 Apr 2025 07:37:42 GMT Message-Id: <202504090737.5397bg6w036627@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 99332926f6fc - main - amd64: also limit printings of EFIRT page faults List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 99332926f6fc6d1e4bb850a2b26744b948b14014 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=99332926f6fc6d1e4bb850a2b26744b948b14014 commit 99332926f6fc6d1e4bb850a2b26744b948b14014 Author: Konstantin Belousov AuthorDate: 2025-04-09 07:35:56 +0000 Commit: Konstantin Belousov CommitDate: 2025-04-09 07:35:56 +0000 amd64: also limit printings of EFIRT page faults Fixes: fd748c7d5b7aefbeda604403f203637b12ae89df Sponsored by: The FreeBSD Foundation PR: 285797 MFC after: 1 week --- sys/amd64/amd64/trap.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/sys/amd64/amd64/trap.c b/sys/amd64/amd64/trap.c index 1041422b9f92..a400b8a2c022 100644 --- a/sys/amd64/amd64/trap.c +++ b/sys/amd64/amd64/trap.c @@ -869,8 +869,13 @@ after_vmfault: if (td->td_intr_nesting_level == 0 && curpcb->pcb_onfault != NULL) { if ((td->td_pflags & TDP_EFIRT) != 0) { - trap_diag(frame, eva); - printf("EFI RT page fault\n"); + u_long cnt = atomic_fetchadd_long(&cnt_efirt_faults, 1); + + if ((print_efirt_faults == 1 && cnt == 1) || + print_efirt_faults == 2) { + trap_diag(frame, eva); + printf("EFI RT page fault\n"); + } } frame->tf_rip = (long)curpcb->pcb_onfault; return (0); From nobody Wed Apr 9 08:17:42 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXbRB5JNGz5sk9V; Wed, 09 Apr 2025 08:17:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXbRB3QnWz3XwY; Wed, 09 Apr 2025 08:17:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744186662; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+Z0tAkfT+/Td769wjz+iVEXCL9uszpYGVoXUuPgJkFo=; b=AsQnv86uAtGNGn6RDGU6Ae6fgCB+alBnmm2sish5iul72FxXkGt+GaVvv8DS6NpMWNYDPE uWsTRRTM0mQqY7J4gOKrMjySQQQxG7fxriuSsHfYclwVw791PSvzgSGoFDp/IYxMMXew1p QodZy561vKi/+rJhXcbOOZJtC9rBjq/4G8gbB+4MN7puOlnDdjjUrGmnQqhab6R3519o/z ufRlGyF9KwrlCiuVmqlgGCc4He49cl7zpUKKigxAlNMFXqehrqLHXSpm+ZQhg22pocK1LO +xc1g2WUab6CDRl3/q9N26q7MMtf9ea60Y3VhWLc6XvkRFXsSvowtHFcP299vg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744186662; a=rsa-sha256; cv=none; b=omfzDDL/CqDKXh4IfIJQ3mf+ShHYEG8Krphz8PjHEeMchAGm/VfDiSHsMI99ob/fjLZqgE +haw8Xw0HG4fkOX42CFqHahSjhTaGhkxt63Tbq2e0s0E0zxcntU+rcDK3L6EzQNjN1kaPN 7pmY4GQ1oRlb+YknzPq6HuyXE0WiTXOnl++Nfw3UyzsWy8Q+gTwDTM6fmAkKzJXADZTCjZ lvCoK5rkblSQH6fyc2v15IhXBVWd9xUTwvmi6ATdIlFsZlmjyoEAsLeQaoIi/5OgABszMC h4yjXHnRF7erFDSXOtgCAYKuSXCJke78Bg4Jj1hyE/PZ2tWopLkjvytUk8TN6Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744186662; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+Z0tAkfT+/Td769wjz+iVEXCL9uszpYGVoXUuPgJkFo=; b=tqV3/8KUMutFL8twMzvWfy8a8F65Mi4c0JFOq9n4GoO3PYpssPzKrO7vIXSIpJbNsj5yb9 dAemBfXN8em3fqczhHbarCnHBew6py6Un8iN80Zz/8Xq5UiIfIOrkeq403tnhfCPj5QAjf NB5hykSolhPj33eVURgoeWTiMDl2AVgyXNF7Jts4cq2bUIt7M5ZPHqQmHmRk+F3z6FdZYS MTjD1KmFSJC4+mEbtc+DbPs8s27Jl2fDze/+Ly7FIV8zvHaYFspGogKHloRYnIoStA4t6+ BALeIewJGa3oWdp1OCK6MOoCw7BN3tKiynkkemK2QFDGMrM7/zVwJ/QzteGB0A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXbRB327Zz17Zc; Wed, 09 Apr 2025 08:17:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5398HgDs013184; Wed, 9 Apr 2025 08:17:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5398Hgac013181; Wed, 9 Apr 2025 08:17:42 GMT (envelope-from git) Date: Wed, 9 Apr 2025 08:17:42 GMT Message-Id: <202504090817.5398Hgac013181@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: dd49816b0d66 - main - bpf: avoid panic on multiple readers List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: dd49816b0d66697ec80dac256c2973d881c39784 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=dd49816b0d66697ec80dac256c2973d881c39784 commit dd49816b0d66697ec80dac256c2973d881c39784 Author: Kristof Provost AuthorDate: 2025-02-26 12:50:08 +0000 Commit: Kristof Provost CommitDate: 2025-04-09 07:39:01 +0000 bpf: avoid panic on multiple readers If we have multiple simultaneous readers on a single /dev/bpf fd it's possible for the assertion after the bpf_uiomove() in bpfread() to fail. Note that the bpf_uiomove() is done outside of the BPFD_LOCK, because uiomove may sleep. As a result it's possible for another thread to have already reclaimed toe bd_hbuf, thus causing us to fail the assertion. Even without INVARIANTS this may provoke panics. That results (with INVARIANTS) in a panic such as: login: panic: bpfread: lost bd_hbuf cpuid = 13 time = 1740567635 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe003972db10 vpanic() at vpanic+0x136/frame 0xfffffe003972dc40 panic() at panic+0x43/frame 0xfffffe003972dca0 bpfread() at bpfread+0x2e8/frame 0xfffffe003972dce0 devfs_read_f() at devfs_read_f+0xe4/frame 0xfffffe003972dd40 dofileread() at dofileread+0x80/frame 0xfffffe003972dd90 sys_read() at sys_read+0xb7/frame 0xfffffe003972de00 amd64_syscall() at amd64_syscall+0x15a/frame 0xfffffe003972df30 fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe003972df30 --- syscall (3, FreeBSD ELF64, read), rip = 0x302787166afa, rsp = 0x302782638a78, rbp = 0x302782638aa0 --- Also add a test case replicating the known trigger for this panic. Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D49135 --- etc/mtree/BSD.tests.dist | 2 + sys/net/bpf.c | 16 ++++---- tests/sys/net/Makefile | 1 + tests/sys/net/bpf/Makefile | 15 ++++++++ tests/sys/net/bpf/bpf.sh | 67 +++++++++++++++++++++++++++++++++ tests/sys/net/bpf/bpf_multi_read.c | 76 ++++++++++++++++++++++++++++++++++++++ 6 files changed, 170 insertions(+), 7 deletions(-) diff --git a/etc/mtree/BSD.tests.dist b/etc/mtree/BSD.tests.dist index e0c16bd5e570..f197021bd4e9 100644 --- a/etc/mtree/BSD.tests.dist +++ b/etc/mtree/BSD.tests.dist @@ -876,6 +876,8 @@ mqueue .. net + bpf + .. if_ovpn ccd .. diff --git a/sys/net/bpf.c b/sys/net/bpf.c index 263f241bcf5f..a347dbe2eb73 100644 --- a/sys/net/bpf.c +++ b/sys/net/bpf.c @@ -1110,13 +1110,15 @@ bpfread(struct cdev *dev, struct uio *uio, int ioflag) error = bpf_uiomove(d, d->bd_hbuf, d->bd_hlen, uio); BPFD_LOCK(d); - KASSERT(d->bd_hbuf != NULL, ("bpfread: lost bd_hbuf")); - d->bd_fbuf = d->bd_hbuf; - d->bd_hbuf = NULL; - d->bd_hlen = 0; - bpf_buf_reclaimed(d); - d->bd_hbuf_in_use = 0; - wakeup(&d->bd_hbuf_in_use); + if (d->bd_hbuf_in_use) { + KASSERT(d->bd_hbuf != NULL, ("bpfread: lost bd_hbuf")); + d->bd_fbuf = d->bd_hbuf; + d->bd_hbuf = NULL; + d->bd_hlen = 0; + bpf_buf_reclaimed(d); + d->bd_hbuf_in_use = 0; + wakeup(&d->bd_hbuf_in_use); + } BPFD_UNLOCK(d); return (error); diff --git a/tests/sys/net/Makefile b/tests/sys/net/Makefile index 95ab86156a0a..a76fca4e61fb 100644 --- a/tests/sys/net/Makefile +++ b/tests/sys/net/Makefile @@ -15,6 +15,7 @@ ATF_TESTS_SH+= if_tun_test ATF_TESTS_SH+= if_vlan ATF_TESTS_SH+= if_wg +TESTS_SUBDIRS+= bpf TESTS_SUBDIRS+= if_ovpn TESTS_SUBDIRS+= routing diff --git a/tests/sys/net/bpf/Makefile b/tests/sys/net/bpf/Makefile new file mode 100644 index 000000000000..9c8a25b15d16 --- /dev/null +++ b/tests/sys/net/bpf/Makefile @@ -0,0 +1,15 @@ +.include + +PACKAGE= tests + +TESTSDIR= ${TESTSBASE}/sys/net/bpf +BINDIR= ${TESTSDIR} + +LIBADD+= nv + +PROGS= bpf_multi_read +LIBADD.bpf_multi_read+= pcap + +ATF_TESTS_SH= bpf + +.include diff --git a/tests/sys/net/bpf/bpf.sh b/tests/sys/net/bpf/bpf.sh new file mode 100644 index 000000000000..2830c4862de9 --- /dev/null +++ b/tests/sys/net/bpf/bpf.sh @@ -0,0 +1,67 @@ +## +# SPDX-License-Identifier: BSD-2-Clause +# +# Copyright (c) 2025 Rubicon Communications, LLC ("Netgate") +# +# 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. + +. $(atf_get_srcdir)/../../common/vnet.subr + +atf_test_case "multi_read" "cleanup" +multi_read_head() +{ + atf_set descr 'Test multiple readers on /dev/bpf' + atf_set require.user root +} + +multi_read_body() +{ + vnet_init + + epair=$(vnet_mkepair) + ifconfig ${epair}a inet 192.0.2.1/24 up + + vnet_mkjail alcatraz ${epair}b + jexec alcatraz ifconfig ${epair}b inet 192.0.2.2/24 up + + atf_check -s exit:0 -o ignore \ + ping -c 1 192.0.2.2 + + # Start a multi-thread (or multi-process) read on bpf + $(atf_get_srcdir)/bpf_multi_read ${epair}a & + + # Generate traffic + ping -f 192.0.2.2 >/dev/null 2>&1 & + + # Now let this run for 10 seconds + sleep 10 +} + +multi_read_cleanup() +{ + vnet_cleanup +} + +atf_init_test_cases() +{ + atf_add_test_case "multi_read" +} diff --git a/tests/sys/net/bpf/bpf_multi_read.c b/tests/sys/net/bpf/bpf_multi_read.c new file mode 100644 index 000000000000..3a8edd76d623 --- /dev/null +++ b/tests/sys/net/bpf/bpf_multi_read.c @@ -0,0 +1,76 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2025 Rubicon Communications, LLC (Netgate) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ + +#include +#include +#include +#include + +static void +callback(u_char *arg __unused, const struct pcap_pkthdr *hdr __unused, + const unsigned char *bytes __unused) +{ +} + +int +main(int argc, const char **argv) +{ + pcap_t *pcap; + const char *interface; + char errbuf[PCAP_ERRBUF_SIZE] = { 0 }; + int ret; + + if (argc != 2) + err(1, "Usage: %s \n", argv[0]); + + interface = argv[1]; + + pcap = pcap_create(interface, errbuf); + if (! pcap) + perror("Failed to pcap interface"); + + ret = pcap_set_snaplen(pcap, 86); + if (ret != 0) + perror("Failed to set snaplen"); + + ret = pcap_set_timeout(pcap, 100); + if (ret != 0) + perror("Failed to set timeout"); + + ret = pcap_activate(pcap); + if (ret != 0) + perror("Failed to activate"); + + /* So we have two readers on one /dev/bpf fd */ + fork(); + + printf("Interface open\n"); + pcap_loop(pcap, 0, callback, NULL); + + return (0); +} From nobody Wed Apr 9 08:17:43 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXbRC6dNgz5skLh; Wed, 09 Apr 2025 08:17:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXbRC4QtCz3Xfh; Wed, 09 Apr 2025 08:17:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744186663; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Lmj0mtBJxn6f//QH7/qtAwpkIW2y4umv+2RCdt2Q604=; b=kxSZ0N81DfllKvkANqgvB58UBWeM+ke9U/6liUqkcRwKAYWIGYEa6vvOJ5R/KaVz2qP0No SFLH7X9F8q1ATReKTZ7dl6aT5x2D3TAQvgoRRCIjMbgMjrzAEMXAKAKrwhavSU8/MgS54p XEGjnzdFxwvslPo/sgI27LZN/bMWy/lw5hHPVEiMOjCdg8Gau9fQCRN/HpbIluzNv/Cojn nY3Lk+Rgo71nj4j38qWok5az5S/sf4Vj9oT1e3QTdU1CGnD4nWDztQXr9SxG9SSh3S3+bH Ue3vxEWYzf+qpTPtPsito5OXKXMyZ7H2NqaAatCjZEPNkrTInpNAUsbhQswl/Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744186663; a=rsa-sha256; cv=none; b=CCK6mdhsnWQlvK2S+orcDxLBjwilkXmcyGwV8AgLSaJ4M406GL3mgqXo6DdAkjc/zHYG9O fBOBEtvw5WJN1qW/73we84Ji82cM+gjBoihwYEBqGanhe5suG3xha1YcDQXaXx3gJxEpHh pkEspxoyIsWzyLycqzsZAUk4C466b17rXnmN8PdWwFqAyKdIKyXduX4pbMrTzxC+eho/KB IG8aTGTgdwKc+w4XSihomuVPw9Xj8lQq2AvkSszEYbzO9TCj8ztuT8duCI8oFpMGAQBwpM 9OStfoieUEme8tO0G+Rbr0iTT279s7qW7rb+e2XsOdzO6mRzzFGqiTp8+ViN9g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744186663; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Lmj0mtBJxn6f//QH7/qtAwpkIW2y4umv+2RCdt2Q604=; b=VdPQEiyaaMS8y6Ddetg8Sfo9NY1O5lchfurDkxiVsGUHvBH1AaaIrmPDDjdGuHnsfEhijl O/vumJo0vgvpv9rPKO4FkdcjM+NuVfdo4i73jbMsEOLNEvBmJd2d6kOSv5maboVM1KfFyB CGrgkT+Ofkw/mM34IiXaX/sQcI/wo4BcjX8pSClXCd10+Fxbq1don6CaiUUztA83tZIX3r vpMrdSdYAjjZJJtC/R5/sGlzfDYtnlgaR5Q80bqpNfbvxnKTDXNXmvrrloa+N6bGYuVf/2 n+LuDNJaXyotuse02wUPTVWmHyjiod0VJUSrsl4CPfCXrmrdaiq4SnCO5womxA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXbRC40bbz17Zd; Wed, 09 Apr 2025 08:17:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5398Hh0I013225; Wed, 9 Apr 2025 08:17:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5398Hh7L013221; Wed, 9 Apr 2025 08:17:43 GMT (envelope-from git) Date: Wed, 9 Apr 2025 08:17:43 GMT Message-Id: <202504090817.5398Hh7L013221@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 85967694b459 - main - bridge: store a bridge_iflist pointer in ifnet List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 85967694b4590a436c56a061b397620e342784ae Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=85967694b4590a436c56a061b397620e342784ae commit 85967694b4590a436c56a061b397620e342784ae Author: Lexi Winter AuthorDate: 2025-04-05 14:04:21 +0000 Commit: Kristof Provost CommitDate: 2025-04-09 07:39:01 +0000 bridge: store a bridge_iflist pointer in ifnet currently, bridge stores a pointer to its softc in ifnet. this means that when processing a packet, it needs to walk the bridge's member list to find the bridge_iflist for the interface the packet came from. instead, store a pointer to the bridge_iflist in ifnet, and add a pointer from bridge_iflist back to the bridge_softc. this means given an ifnet, we always have both the softc and the bridge_iflist without a list walk. there are two places outside if_bridge that treat ifnet->if_bridge as something other than an opaque pointer: bridgestp, and netinet. add two function pointers exported from if_bridge to handle those cases. bump __FreeBSD_version as this is technically a KABI break. Reviewed by: kp --- sys/net/bridgestp.c | 4 +- sys/net/if_bridge.c | 132 ++++++++++++++++++++++++++++++++++--------------- sys/net/if_bridgevar.h | 2 + sys/net/if_ethersubr.c | 2 + sys/netinet/if_ether.c | 7 +-- sys/sys/param.h | 2 +- 6 files changed, 103 insertions(+), 46 deletions(-) diff --git a/sys/net/bridgestp.c b/sys/net/bridgestp.c index c67f1efe3d88..b5a863641de7 100644 --- a/sys/net/bridgestp.c +++ b/sys/net/bridgestp.c @@ -57,6 +57,7 @@ #include #include #include +#include #include #include @@ -2059,6 +2060,7 @@ bstp_reinit(struct bstp_state *bs) mif = NULL; bridgeptr = LIST_FIRST(&bs->bs_bplist)->bp_ifp->if_bridge; KASSERT(bridgeptr != NULL, ("Invalid bridge pointer")); + KASSERT(bridge_same_p != NULL, ("if_bridge not loaded")); /* * Search through the Ethernet adapters and find the one with the * lowest value. Make sure the adapter which we take the MAC address @@ -2070,7 +2072,7 @@ bstp_reinit(struct bstp_state *bs) if (ifp->if_type != IFT_ETHER && ifp->if_type != IFT_L2VLAN) continue; /* Not Ethernet */ - if (ifp->if_bridge != bridgeptr) + if (!bridge_same_p(ifp->if_bridge, bridgeptr)) continue; /* Not part of our bridge */ if (bstp_addr_cmp(IF_LLADDR(ifp), llzero) == 0) diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c index 5cb4a033e325..fdfec024ef07 100644 --- a/sys/net/if_bridge.c +++ b/sys/net/if_bridge.c @@ -238,12 +238,15 @@ #define BRIDGE_RT_LOCK_OR_NET_EPOCH_ASSERT(_sc) \ MPASS(in_epoch(net_epoch_preempt) || mtx_owned(&(_sc)->sc_rt_mtx)) +struct bridge_softc; + /* * Bridge interface list entry. */ struct bridge_iflist { CK_LIST_ENTRY(bridge_iflist) bif_next; struct ifnet *bif_ifp; /* member if */ + struct bridge_softc *bif_sc; /* parent bridge */ struct bstp_port bif_stp; /* STP state */ uint32_t bif_flags; /* member if flags */ int bif_savedcaps; /* saved capabilities */ @@ -314,6 +317,8 @@ static void bridge_set_ifcap(struct bridge_softc *, struct bridge_iflist *, static void bridge_ifdetach(void *arg __unused, struct ifnet *); static void bridge_init(void *); static void bridge_dummynet(struct mbuf *, struct ifnet *); +static bool bridge_same(const void *, const void *); +static void *bridge_get_softc(struct ifnet *); static void bridge_stop(struct ifnet *, int); static int bridge_transmit(struct ifnet *, struct mbuf *); #ifdef ALTQ @@ -658,6 +663,8 @@ bridge_modevent(module_t mod, int type, void *data) switch (type) { case MOD_LOAD: bridge_dn_p = bridge_dummynet; + bridge_same_p = bridge_same; + bridge_get_softc_p = bridge_get_softc; bridge_detach_cookie = EVENTHANDLER_REGISTER( ifnet_departure_event, bridge_ifdetach, NULL, EVENTHANDLER_PRI_ANY); @@ -666,6 +673,8 @@ bridge_modevent(module_t mod, int type, void *data) EVENTHANDLER_DEREGISTER(ifnet_departure_event, bridge_detach_cookie); bridge_dn_p = NULL; + bridge_same_p = NULL; + bridge_get_softc_p = NULL; break; default: return (EOPNOTSUPP); @@ -740,6 +749,43 @@ bridge_reassign(struct ifnet *ifp, struct vnet *newvnet, char *arg) } #endif +/* + * bridge_get_softc: + * + * Return the bridge softc for an ifnet. + */ +static void * +bridge_get_softc(struct ifnet *ifp) +{ + struct bridge_iflist *bif; + + NET_EPOCH_ASSERT(); + + bif = ifp->if_bridge; + if (bif == NULL) + return (NULL); + return (bif->bif_sc); +} + +/* + * bridge_same: + * + * Return true if two interfaces are in the same bridge. This is only used by + * bridgestp via bridge_same_p. + */ +static bool +bridge_same(const void *bifap, const void *bifbp) +{ + const struct bridge_iflist *bifa = bifap, *bifb = bifbp; + + NET_EPOCH_ASSERT(); + + if (bifa == NULL || bifb == NULL) + return (false); + + return (bifa->bif_sc == bifb->bif_sc); +} + /* * bridge_clone_create: * @@ -1116,16 +1162,8 @@ bridge_lookup_member(struct bridge_softc *sc, const char *name) static struct bridge_iflist * bridge_lookup_member_if(struct bridge_softc *sc, struct ifnet *member_ifp) { - struct bridge_iflist *bif; - BRIDGE_LOCK_OR_NET_EPOCH_ASSERT(sc); - - CK_LIST_FOREACH(bif, &sc->sc_iflist, bif_next) { - if (bif->bif_ifp == member_ifp) - return (bif); - } - - return (NULL); + return (member_ifp->if_bridge); } static void @@ -1257,11 +1295,13 @@ bridge_ioctl_add(struct bridge_softc *sc, void *arg) if (ifs == bif->bif_ifp) return (EBUSY); - if (ifs->if_bridge == sc) - return (EEXIST); + if (ifs->if_bridge) { + struct bridge_iflist *sbif = ifs->if_bridge; + if (sbif->bif_sc == sc) + return (EEXIST); - if (ifs->if_bridge != NULL) return (EBUSY); + } switch (ifs->if_type) { case IFT_ETHER: @@ -1336,6 +1376,7 @@ bridge_ioctl_add(struct bridge_softc *sc, void *arg) if (bif == NULL) return (ENOMEM); + bif->bif_sc = sc; bif->bif_ifp = ifs; bif->bif_flags = IFBIF_LEARNING | IFBIF_DISCOVER; bif->bif_savedcaps = ifs->if_capenable; @@ -1352,7 +1393,7 @@ bridge_ioctl_add(struct bridge_softc *sc, void *arg) EVENTHANDLER_INVOKE(iflladdr_event, sc->sc_ifp); } - ifs->if_bridge = sc; + ifs->if_bridge = bif; ifs->if_bridge_output = bridge_output; ifs->if_bridge_input = bridge_input; ifs->if_bridge_linkstate = bridge_linkstate; @@ -1979,8 +2020,11 @@ bridge_ioctl_stxhc(struct bridge_softc *sc, void *arg) static void bridge_ifdetach(void *arg __unused, struct ifnet *ifp) { - struct bridge_softc *sc = ifp->if_bridge; - struct bridge_iflist *bif; + struct bridge_iflist *bif = ifp->if_bridge; + struct bridge_softc *sc = NULL; + + if (bif) + sc = bif->bif_sc; if (ifp->if_flags & IFF_RENAMING) return; @@ -1994,11 +2038,7 @@ bridge_ifdetach(void *arg __unused, struct ifnet *ifp) /* Check if the interface is a bridge member */ if (sc != NULL) { BRIDGE_LOCK(sc); - - bif = bridge_lookup_member_if(sc, ifp); - if (bif != NULL) - bridge_delete_member(sc, bif, 1); - + bridge_delete_member(sc, bif, 1); BRIDGE_UNLOCK(sc); return; } @@ -2136,9 +2176,11 @@ bridge_enqueue(struct bridge_softc *sc, struct ifnet *dst_ifp, struct mbuf *m) static void bridge_dummynet(struct mbuf *m, struct ifnet *ifp) { - struct bridge_softc *sc; + struct bridge_iflist *bif = ifp->if_bridge; + struct bridge_softc *sc = NULL; - sc = ifp->if_bridge; + if (bif) + sc = bif->bif_sc; /* * The packet didnt originate from a member interface. This should only @@ -2175,6 +2217,7 @@ bridge_output(struct ifnet *ifp, struct mbuf *m, struct sockaddr *sa, struct rtentry *rt) { struct ether_header *eh; + struct bridge_iflist *sbif; struct ifnet *bifp, *dst_if; struct bridge_softc *sc; uint16_t vlan; @@ -2187,12 +2230,13 @@ bridge_output(struct ifnet *ifp, struct mbuf *m, struct sockaddr *sa, return (0); } + sbif = ifp->if_bridge; + sc = sbif->bif_sc; + bifp = sc->sc_ifp; + eh = mtod(m, struct ether_header *); - sc = ifp->if_bridge; vlan = VLANTAGOF(m); - bifp = sc->sc_ifp; - /* * If bridge is down, but the original output interface is up, * go ahead and send out that interface. Otherwise, the packet @@ -2503,7 +2547,7 @@ drop: static struct mbuf * bridge_input(struct ifnet *ifp, struct mbuf *m) { - struct bridge_softc *sc; + struct bridge_softc *sc = NULL; struct bridge_iflist *bif, *bif2; struct ifnet *bifp; struct ether_header *eh; @@ -2516,7 +2560,10 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) eh = mtod(m, struct ether_header *); vlan = VLANTAGOF(m); - sc = ifp->if_bridge; + bif = ifp->if_bridge; + if (bif) + sc = bif->bif_sc; + if (sc == NULL) { /* * This packet originated from the bridge itself, so it must @@ -2553,10 +2600,6 @@ bridge_input(struct ifnet *ifp, struct mbuf *m) m_freem(m); return (NULL); } - bif = bridge_lookup_member_if(sc, ifp); - if (bif == NULL) { - return (m); - } bridge_span(sc, m); @@ -3329,10 +3372,16 @@ bridge_rtnode_destroy(struct bridge_softc *sc, struct bridge_rtnode *brt) static void bridge_rtable_expire(struct ifnet *ifp, int age) { - struct bridge_softc *sc = ifp->if_bridge; + struct bridge_iflist *bif = NULL; + struct bridge_softc *sc = NULL; struct bridge_rtnode *brt; CURVNET_SET(ifp->if_vnet); + + bif = ifp->if_bridge; + if (bif) + sc = bif->bif_sc; + MPASS(sc != NULL); BRIDGE_RT_LOCK(sc); /* @@ -3362,7 +3411,8 @@ bridge_rtable_expire(struct ifnet *ifp, int age) static void bridge_state_change(struct ifnet *ifp, int state) { - struct bridge_softc *sc = ifp->if_bridge; + struct bridge_iflist *bif = ifp->if_bridge; + struct bridge_softc *sc = bif->bif_sc; static const char *stpstates[] = { "disabled", "listening", @@ -3877,20 +3927,20 @@ dropit: static void bridge_linkstate(struct ifnet *ifp) { - struct bridge_softc *sc = ifp->if_bridge; + struct bridge_softc *sc = NULL; struct bridge_iflist *bif; struct epoch_tracker et; NET_EPOCH_ENTER(et); - bif = bridge_lookup_member_if(sc, ifp); - if (bif == NULL) { - NET_EPOCH_EXIT(et); - return; - } - bridge_linkcheck(sc); + bif = ifp->if_bridge; + if (bif) + sc = bif->bif_sc; - bstp_linkstate(&bif->bif_stp); + if (sc != NULL) { + bridge_linkcheck(sc); + bstp_linkstate(&bif->bif_stp); + } NET_EPOCH_EXIT(et); } diff --git a/sys/net/if_bridgevar.h b/sys/net/if_bridgevar.h index 01ac96e8d5b0..1f762bc4ecf9 100644 --- a/sys/net/if_bridgevar.h +++ b/sys/net/if_bridgevar.h @@ -320,5 +320,7 @@ struct ifbpstpconf { } while (0) extern void (*bridge_dn_p)(struct mbuf *, struct ifnet *); +extern bool (*bridge_same_p)(const void *, const void *); +extern void *(*bridge_get_softc_p)(struct ifnet *); #endif /* _KERNEL */ diff --git a/sys/net/if_ethersubr.c b/sys/net/if_ethersubr.c index ddaa94414ca5..2397b5ff2090 100644 --- a/sys/net/if_ethersubr.c +++ b/sys/net/if_ethersubr.c @@ -110,6 +110,8 @@ void (*vlan_input_p)(struct ifnet *, struct mbuf *); /* if_bridge(4) support */ void (*bridge_dn_p)(struct mbuf *, struct ifnet *); +bool (*bridge_same_p)(const void *, const void *); +void *(*bridge_get_softc_p)(struct ifnet *); /* if_lagg(4) support */ struct mbuf *(*lagg_input_ethernet_p)(struct ifnet *, struct mbuf *); diff --git a/sys/netinet/if_ether.c b/sys/netinet/if_ether.c index 88da1b139b1f..dc6ef343662d 100644 --- a/sys/netinet/if_ether.c +++ b/sys/netinet/if_ether.c @@ -56,6 +56,7 @@ #include #include #include +#include #include #include #include @@ -832,7 +833,7 @@ in_arpinput(struct mbuf *m) * when we have clusters of interfaces). */ CK_LIST_FOREACH(ia, INADDR_HASH(itaddr.s_addr), ia_hash) { - if (((bridged && ia->ia_ifp->if_bridge == ifp->if_bridge) || + if (((bridged && bridge_same_p(ia->ia_ifp->if_bridge, ifp->if_bridge)) || ia->ia_ifp == ifp) && itaddr.s_addr == ia->ia_addr.sin_addr.s_addr && (ia->ia_ifa.ifa_carp == NULL || @@ -842,7 +843,7 @@ in_arpinput(struct mbuf *m) } } CK_LIST_FOREACH(ia, INADDR_HASH(isaddr.s_addr), ia_hash) - if (((bridged && ia->ia_ifp->if_bridge == ifp->if_bridge) || + if (((bridged && bridge_same_p(ia->ia_ifp->if_bridge, ifp->if_bridge)) || ia->ia_ifp == ifp) && isaddr.s_addr == ia->ia_addr.sin_addr.s_addr) { ifa_ref(&ia->ia_ifa); @@ -850,7 +851,7 @@ in_arpinput(struct mbuf *m) } #define BDG_MEMBER_MATCHES_ARP(addr, ifp, ia) \ - (ia->ia_ifp->if_bridge == ifp->if_softc && \ + (bridge_get_softc_p(ia->ia_ifp) == ifp->if_softc && \ !bcmp(IF_LLADDR(ia->ia_ifp), IF_LLADDR(ifp), ifp->if_addrlen) && \ addr == ia->ia_addr.sin_addr.s_addr) /* diff --git a/sys/sys/param.h b/sys/sys/param.h index b08a83ccc25b..4b7b4853e19d 100644 --- a/sys/sys/param.h +++ b/sys/sys/param.h @@ -73,7 +73,7 @@ * cannot include sys/param.h and should only be updated here. */ #undef __FreeBSD_version -#define __FreeBSD_version 1500035 +#define __FreeBSD_version 1500036 /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, From nobody Wed Apr 9 09:51:41 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXdWd6HHPz5sqGf; Wed, 09 Apr 2025 09:51: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXdWd5PBVz3y5L; Wed, 09 Apr 2025 09:51:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744192301; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=apMNzuL3biZzIbNQwvsWUbylrcDrBTE6ULec3YxXUY0=; b=wndiINcunGN++wuchQ1xY6K+O5zY4+n7UO/pWJDnyTDr7VXgtoBw20b0lEGkezhsViOeDw xfSxU1UNA0wOrNeSZNGr+gR2JK9XYdGO97cKLqr0WyZBQ/IRpWx2g7cNK91Pl2Rol7R5gq fsYKnhvyJVDWhjprE/zwVQywccdx/MskZQ/jdXn6o+GYawnuwXWOIJgiLH5gDCGEKqvfwZ arrGSUIf84PgoPed0uWKrUbO4+WyPSGccB2M284TAI2xFYmeaOKMweK+ueTcszpK+CVn3I PGSnCBUcGDA3uW+efalkf6YI2Y+Lii26iJ5yYnGOj2q05bygvFkzjVLqjTdZRw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744192301; a=rsa-sha256; cv=none; b=u9FI4CCbx4q+SzgZnPORM2LQLnWaDeFZx7yoW1FpdGwq/ClZz6zj+zmeFFfrub37EnUtvD eAeXuWPuFKZuUsEZcXxEI5/zoROmvSZXulxe+mehFXrJ1HGbT7bTxXeEfwm5QxtxR5CFnS xS+tZvgy6G+zaZAxJ+sK4GQkC10+zlHNU9cOON92C74wrlKwXjMsh93xfnYiJH//TLG+Tb zxPP7h3XKhPzNDQ6UJrsEiQgkaTVNeKvVqe5ElgefGwknE6a+88gaKgNHvZuWEsoeuyGaH Yeh7UQU6EVAQ6JczHUuE26WgzrVagzVeHrRkzlEBKYPQVtAwGksaPgsyMo40YQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744192301; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=apMNzuL3biZzIbNQwvsWUbylrcDrBTE6ULec3YxXUY0=; b=MobxsknyJdVGyqU1uvz4kota3zDEOLOg3c/6aC0I1Qq9CHFnzjTm2i8LFaHKVh63b58WV0 zQ5Fpgymj9SGwEBBLmvsUHG29m0334Cso5Jx2H1twDqq+Rn6HZotY3z7+FrCDD3WTUepGi v7t0+3GK4Nlwo3J+pYY0bFE+XNajyuXpyDM5rBQFamZfJiwMk7NGI0D1RGqgtsQ2TTpPE7 SUORUD4qYUj9MFKRXSdrgU4RETec3ktK8zhQq8CiK2RZs/+BgUGT4kRUS/UgkKU0NHKEbs VBF4NWVURn38UF4f99xfpTL8CXIHemP7CZl7w5phHou32p1zgUR+0PRZn6hejA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXdWd4ySQz1BFT; Wed, 09 Apr 2025 09:51:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5399pfFm090901; Wed, 9 Apr 2025 09:51:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5399pf1U090898; Wed, 9 Apr 2025 09:51:41 GMT (envelope-from git) Date: Wed, 9 Apr 2025 09:51:41 GMT Message-Id: <202504090951.5399pf1U090898@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: abda72f3a1f6 - main - pf: INET/INET6 address family check should be unified in PF List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: abda72f3a1f60121dbe1341f3aadfb714cdee1fb Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=abda72f3a1f60121dbe1341f3aadfb714cdee1fb commit abda72f3a1f60121dbe1341f3aadfb714cdee1fb Author: Kristof Provost AuthorDate: 2025-04-08 15:36:58 +0000 Commit: Kristof Provost CommitDate: 2025-04-09 08:18:20 +0000 pf: INET/INET6 address family check should be unified in PF It also adds af_unhandled(), where it is currently missing. ok mcbride@ Obtained from: OpenBSD, sashan , 9b00340fee Obtained from: OpenBSD, sashan , 3f22add75d Sponsored by: Rubicon Communications, LLC ("Netgate") --- sys/netpfil/pf/pf.c | 76 +++++++++++++++++++++++------------------------ sys/netpfil/pf/pf_lb.c | 10 +++++-- sys/netpfil/pf/pf_norm.c | 16 ++++++---- sys/netpfil/pf/pf_table.c | 54 ++++++++++++++++++++++++++------- 4 files changed, 99 insertions(+), 57 deletions(-) diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index c343512b20dd..5f5f2403e448 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -614,7 +614,7 @@ pf_is_loopback(sa_family_t af, struct pf_addr *addr) #ifdef INET case AF_INET: return IN_LOOPBACK(ntohl(addr->v4.s_addr)); -#endif +#endif /* INET */ case AF_INET6: return IN6_IS_ADDR_LOOPBACK(&addr->v6); default: @@ -776,7 +776,7 @@ pf_state_hash(struct pf_kstate *s) hv = 1; return (hv); } -#endif +#endif /* ALTQ */ static __inline void pf_set_protostate(struct pf_kstate *s, int which, u_int8_t newstate) @@ -915,13 +915,13 @@ pf_overload_task(void *v, int pending) p.pfra_net = 32; p.pfra_ip4addr = pfoe->addr.v4; break; -#endif +#endif /* INET */ #ifdef INET6 case AF_INET6: p.pfra_net = 128; p.pfra_ip6addr = pfoe->addr.v6; break; -#endif +#endif /* INET6 */ default: unhandled_af(pfoe->af); } @@ -1631,7 +1631,7 @@ pf_state_key_detach(struct pf_kstate *s, int idx) struct pf_keyhash *kh = &V_pf_keyhash[pf_hashkey(sk)]; PF_HASHROW_ASSERT(kh); -#endif +#endif /* INVARIANTS */ TAILQ_REMOVE(&sk->states[idx], s, key_list[idx]); s->key[idx] = NULL; @@ -1701,7 +1701,7 @@ pf_state_key_addr_setup(struct pf_pdesc *pd, } } copy: -#endif +#endif /* INET6 */ if (saddr) PF_ACPY(&key->addr[pd->sidx], saddr, pd->af); if (daddr) @@ -2169,7 +2169,7 @@ pf_isforlocal(struct mbuf *m, int af) return (in_localip(ip->ip_dst)); } -#endif +#endif /* INET */ #ifdef INET6 case AF_INET6: { struct ip6_hdr *ip6; @@ -2180,7 +2180,7 @@ pf_isforlocal(struct mbuf *m, int af) return (false); return (! (ia->ia6_flags & IN6_IFF_NOTREADY)); } -#endif +#endif /* INET6 */ default: unhandled_af(af); } @@ -4367,13 +4367,13 @@ pf_send_icmp(struct mbuf *m, u_int8_t type, u_int8_t code, sa_family_t af, if (icmp6_ratelimit(NULL, type, code)) return; break; -#endif +#endif /* INET6 */ #ifdef INET case AF_INET: if (badport_bandlim(pf_icmp_to_bandlim(type)) != 0) return; break; -#endif +#endif /* INET */ } /* Allocate outgoing queue entry, mbuf and mbuf tag. */ @@ -5183,10 +5183,10 @@ pf_test_eth_rule(int dir, struct pfi_kkif *kif, struct mbuf **m0) { #ifdef INET struct ip ip; -#endif +#endif /* INET */ #ifdef INET6 struct ip6_hdr ip6; -#endif +#endif /* INET6 */ struct mbuf *m = *m0; struct ether_header *e; struct pf_keth_rule *r, *rm, *a = NULL; @@ -5734,7 +5734,7 @@ pf_test_rule(struct pf_krule **rm, struct pf_kstate **sm, PF_ACPY(pd->dst, &nk->addr[pd->didx], pd->af); } break; -#endif /* INET */ +#endif /* INET6 */ } break; } @@ -6169,7 +6169,7 @@ pf_create_state(struct pf_krule *r, struct pf_krule *nr, struct pf_krule *a, case IPPROTO_ICMP: #ifdef INET6 case IPPROTO_ICMPV6: -#endif +#endif /* INET6 */ s->timeout = PFTM_ICMP_FIRST_PACKET; break; default: @@ -7522,7 +7522,7 @@ pf_multihome_scan(int start, int len, struct pf_pdesc *pd, int op) TAILQ_INSERT_TAIL(&pd->sctp_multihome_jobs, job, next); break; } -#endif +#endif /* INET6 */ case SCTP_ADD_IP_ADDRESS: { int ret; struct sctp_asconf_paramhdr ah; @@ -7640,7 +7640,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, struct pf_state_key_cmp key; #ifdef INET u_int16_t icmpid; -#endif +#endif /* INET*/ MPASS(*state == NULL); @@ -7660,7 +7660,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, icmpcode = pd->hdr.icmp6.icmp6_code; #ifdef INET icmpid = pd->hdr.icmp6.icmp6_id; -#endif +#endif /* INET */ icmpsum = &pd->hdr.icmp6.icmp6_cksum; break; #endif /* INET6 */ @@ -7722,7 +7722,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, return (PF_DROP); pd->proto = IPPROTO_ICMPV6; } -#endif +#endif /* INET6 */ if (!afto && PF_ANEQ(pd->src, &nk->addr[sidx], AF_INET)) pf_change_a(&saddr->v4.s_addr, @@ -7759,7 +7759,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, return (PF_DROP); pd->proto = IPPROTO_ICMP; } -#endif +#endif /* INET */ if (!afto && PF_ANEQ(pd->src, &nk->addr[sidx], AF_INET6)) pf_change_a6(saddr, @@ -8042,7 +8042,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, pd->naf = nk->af; return (PF_AFRT); } -#endif +#endif /* INET && INET6 */ if (PF_ANEQ(pd2.src, &nk->addr[pd2.sidx], pd2.af) || @@ -8176,7 +8176,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, pd->naf = nk->af; return (PF_AFRT); } -#endif +#endif /* INET && INET6 */ if (PF_ANEQ(pd2.src, &nk->addr[pd2.sidx], pd2.af) || @@ -8321,7 +8321,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, pd->naf = nk->af; return (PF_AFRT); } -#endif +#endif /* INET && INET6 */ if (PF_ANEQ(pd2.src, &nk->addr[pd2.sidx], pd2.af) || @@ -8457,7 +8457,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, pd->naf = nk->af; return (PF_AFRT); } -#endif +#endif /* INET && INET6 */ if (PF_ANEQ(pd2.src, &nk->addr[pd2.sidx], pd2.af) || @@ -8576,7 +8576,7 @@ pf_test_state_icmp(struct pf_kstate **state, struct pf_pdesc *pd, pd->naf = nk->af; return (PF_AFRT); } -#endif +#endif /* INET && INET6 */ if (PF_ANEQ(pd2.src, &nk->addr[pd2.sidx], pd2.af) || @@ -8744,12 +8744,12 @@ pf_routable(struct pf_addr *addr, sa_family_t af, struct pfi_kkif *kif, case AF_INET6: return (fib6_check_urpf(rtableid, &addr->v6, 0, NHR_NONE, ifp)); -#endif +#endif /* INET6 */ #ifdef INET case AF_INET: return (fib4_check_urpf(rtableid, addr->v4, 0, NHR_NONE, ifp)); -#endif +#endif /* INET */ } return (0); @@ -9592,7 +9592,7 @@ pf_dummynet_route(struct pf_pdesc *pd, struct pf_kstate *s, ( #ifdef INET (pd->af == AF_INET && IN_LOOPBACK(ntohl(pd->dst->v4.s_addr))) || -#endif +#endif /* INET */ (pd->af == AF_INET6 && IN6_IS_ADDR_LOOPBACK(&pd->dst->v6)))) { /* * If we're redirecting to loopback mark this packet @@ -9799,7 +9799,7 @@ pf_walk_header6(struct pf_pdesc *pd, struct ip6_hdr *h, u_short *reason) } } } -#endif +#endif /* INET6 */ static void pf_init_pdesc(struct pf_pdesc *pd, struct mbuf *m) @@ -9879,7 +9879,7 @@ pf_setup_pdesc(sa_family_t af, int dir, struct pf_pdesc *pd, struct mbuf **m0, break; } -#endif +#endif /* INET */ #ifdef INET6 case AF_INET6: { struct ip6_hdr *h; @@ -9965,7 +9965,7 @@ pf_setup_pdesc(sa_family_t af, int dir, struct pf_pdesc *pd, struct mbuf **m0, break; } -#endif +#endif /* INET6 */ default: panic("pf_setup_pdesc called with illegal af %u", af); } @@ -10081,7 +10081,7 @@ pf_setup_pdesc(sa_family_t af, int dir, struct pf_pdesc *pd, struct mbuf **m0, pd->pcksum = &pd->hdr.icmp.icmp_cksum; break; } -#endif +#endif /* INET6 */ } if (pd->sport) @@ -10306,7 +10306,7 @@ pf_test(sa_family_t af, int dir, int pflags, struct ifnet *ifp, struct mbuf **m0 *m0 = NULL; return (PF_DROP); } -#endif +#endif /* INET */ #ifdef INET6 /* * If we end up changing IP addresses (e.g. binat) the stack may get @@ -10320,7 +10320,7 @@ pf_test(sa_family_t af, int dir, int pflags, struct ifnet *ifp, struct mbuf **m0 *m0 = NULL; return (PF_DROP); } -#endif +#endif /* INET6 */ if (__predict_false(ip_divert_ptr != NULL) && ((mtag = m_tag_locate(pd.m, MTAG_PF_DIVERT, 0, NULL)) != NULL)) { @@ -10642,11 +10642,11 @@ done: #ifdef INET if (pd.naf == AF_INET) pf_route(m0, r, kif->pfik_ifp, s, &pd, inp); -#endif +#endif /* INET */ #ifdef INET6 if (pd.naf == AF_INET6) pf_route6(m0, r, kif->pfik_ifp, s, &pd, inp); -#endif +#endif /* INET6 */ *m0 = NULL; action = PF_PASS; goto out; @@ -10659,13 +10659,13 @@ done: /* pf_route() returns unlocked. */ pf_route(m0, r, kif->pfik_ifp, s, &pd, inp); break; -#endif +#endif /* INET */ #ifdef INET6 case AF_INET6: /* pf_route6() returns unlocked. */ pf_route6(m0, r, kif->pfik_ifp, s, &pd, inp); break; -#endif +#endif /* INET6 */ } goto out; } @@ -10696,7 +10696,7 @@ out: (! (pflags & PF_PFIL_NOREFRAGMENT)) && (mtag = m_tag_find(pd.m, PACKET_TAG_PF_REASSEMBLED, NULL)) != NULL) action = pf_refragment6(ifp, m0, mtag, NULL, pflags & PFIL_FWD); -#endif +#endif /* INET6 */ pf_sctp_multihome_delayed(&pd, kif, s, action); diff --git a/sys/netpfil/pf/pf_lb.c b/sys/netpfil/pf/pf_lb.c index f0cad4bb43c2..54a9463e34ef 100644 --- a/sys/netpfil/pf/pf_lb.c +++ b/sys/netpfil/pf/pf_lb.c @@ -57,11 +57,11 @@ #ifdef INET #include -#endif +#endif /* INET */ #ifdef INET6 #include -#endif +#endif /* INET6 */ /* @@ -94,7 +94,7 @@ pf_hash(struct pf_addr *inaddr, struct pf_addr *hash, uint64_t hash64; uint32_t hash32[2]; } h; -#endif +#endif /* INET6 */ uint64_t res = 0; _Static_assert(sizeof(*key) >= SIPHASH_KEY_LENGTH, ""); @@ -122,6 +122,8 @@ pf_hash(struct pf_addr *inaddr, struct pf_addr *hash, hash->addr32[3] = ~h.hash32[0]; break; #endif /* INET6 */ + default: + unhandled_af(af); } return (res); } @@ -497,6 +499,8 @@ pf_map_addr(sa_family_t af, struct pf_krule *r, struct pf_addr *saddr, rmask = &rpool->cur->addr.p.dyn->pfid_mask6; break; #endif /* INET6 */ + default: + unhandled_af(af); } } else if (rpool->cur->addr.type == PF_ADDR_TABLE) { if (!PF_POOL_DYNTYPE(rpool->opts)) { diff --git a/sys/netpfil/pf/pf_norm.c b/sys/netpfil/pf/pf_norm.c index fd72fec62a3b..be8ba939e5d9 100644 --- a/sys/netpfil/pf/pf_norm.c +++ b/sys/netpfil/pf/pf_norm.c @@ -434,7 +434,7 @@ pf_frent_remove(struct pf_fragment *frag, struct pf_frent *frent) { #ifdef INVARIANTS struct pf_frent *prev = TAILQ_PREV(frent, pf_fragq, fr_next); -#endif +#endif /* INVARIANTS */ struct pf_frent *next = TAILQ_NEXT(frent, fr_next); int index; @@ -1457,6 +1457,8 @@ pf_normalize_tcp_init(struct pf_pdesc *pd, struct tcphdr *th, break; } #endif /* INET6 */ + default: + unhandled_af(pd->af); } /* @@ -1581,6 +1583,8 @@ pf_normalize_tcp_stateful(struct pf_pdesc *pd, break; } #endif /* INET6 */ + default: + unhandled_af(pd->af); } if (th->th_off > (sizeof(struct tcphdr) >> 2) && @@ -2200,7 +2204,7 @@ pf_scrub(struct pf_pdesc *pd) struct ip *h = mtod(pd->m, struct ip *); #ifdef INET6 struct ip6_hdr *h6 = mtod(pd->m, struct ip6_hdr *); -#endif +#endif /* INET6 */ /* Clear IP_DF if no-df was requested */ if (pd->af == AF_INET && pd->act.flags & PFSTATE_NODF && @@ -2225,7 +2229,7 @@ pf_scrub(struct pf_pdesc *pd) if (pd->af == AF_INET6 && pd->act.min_ttl && h6->ip6_hlim < pd->act.min_ttl) h6->ip6_hlim = pd->act.min_ttl; -#endif +#endif /* INET6 */ /* Enforce tos */ if (pd->act.flags & PFSTATE_SETTOS) { switch (pd->af) { @@ -2244,7 +2248,7 @@ pf_scrub(struct pf_pdesc *pd) h6->ip6_flow &= IPV6_FLOWLABEL_MASK | IPV6_VERSION_MASK; h6->ip6_flow |= htonl((pd->act.set_tos | IPV6_ECN(h6)) << 20); break; -#endif +#endif /* INET6 */ } } @@ -2257,6 +2261,6 @@ pf_scrub(struct pf_pdesc *pd) ip_fillid(h, V_ip_random_id); h->ip_sum = pf_cksum_fixup(h->ip_sum, ip_id, h->ip_id, 0); } -#endif +#endif /* INET */ } -#endif +#endif /* INET || INET6 */ diff --git a/sys/netpfil/pf/pf_table.c b/sys/netpfil/pf/pf_table.c index 462b8c3aa782..d5874df3df66 100644 --- a/sys/netpfil/pf/pf_table.c +++ b/sys/netpfil/pf/pf_table.c @@ -791,10 +791,16 @@ pfr_create_kentry(struct pfr_addr *ad, bool counters) if (ke == NULL) return (NULL); - if (ad->pfra_af == AF_INET) + switch (ad->pfra_af) { + case AF_INET: FILLIN_SIN(ke->pfrke_sa.sin, ad->pfra_ip4addr); - else if (ad->pfra_af == AF_INET6) + break; + case AF_INET6: FILLIN_SIN6(ke->pfrke_sa.sin6, ad->pfra_ip6addr); + break; + default: + unhandled_af(ad->pfra_af); + } ke->pfrke_af = ad->pfra_af; ke->pfrke_net = ad->pfra_net; ke->pfrke_not = ad->pfra_not; @@ -933,11 +939,13 @@ pfr_prepare_network(union sockaddr_union *sa, int af, int net) int i; bzero(sa, sizeof(*sa)); - if (af == AF_INET) { + switch (af) { + case AF_INET: sa->sin.sin_len = sizeof(sa->sin); sa->sin.sin_family = AF_INET; sa->sin.sin_addr.s_addr = net ? htonl(-1 << (32-net)) : 0; - } else if (af == AF_INET6) { + break; + case AF_INET6: sa->sin6.sin6_len = sizeof(sa->sin6); sa->sin6.sin6_family = AF_INET6; for (i = 0; i < 4; i++) { @@ -949,6 +957,9 @@ pfr_prepare_network(union sockaddr_union *sa, int af, int net) sa->sin6.sin6_addr.s6_addr32[i] = 0xFFFFFFFF; net -= 32; } + break; + default: + unhandled_af(af); } } @@ -1022,10 +1033,16 @@ pfr_copyout_addr(struct pfr_addr *ad, const struct pfr_kentry *ke) ad->pfra_af = ke->pfrke_af; ad->pfra_net = ke->pfrke_net; ad->pfra_not = ke->pfrke_not; - if (ad->pfra_af == AF_INET) + switch (ad->pfra_af) { + case AF_INET: ad->pfra_ip4addr = ke->pfrke_sa.sin.sin_addr; - else if (ad->pfra_af == AF_INET6) + break; + case AF_INET6: ad->pfra_ip6addr = ke->pfrke_sa.sin6.sin6_addr; + break; + default: + unhandled_af(ad->pfra_af); + } } static void @@ -1118,18 +1135,23 @@ pfr_walktree(struct radix_node *rn, void *arg) { union sockaddr_union pfr_mask; - if (ke->pfrke_af == AF_INET) { + switch (ke->pfrke_af) { + case AF_INET: if (w->pfrw_dyn->pfid_acnt4++ > 0) break; pfr_prepare_network(&pfr_mask, AF_INET, ke->pfrke_net); pfr_sockaddr_to_pf_addr(&ke->pfrke_sa, &w->pfrw_dyn->pfid_addr4); pfr_sockaddr_to_pf_addr(&pfr_mask, &w->pfrw_dyn->pfid_mask4); - } else if (ke->pfrke_af == AF_INET6){ + break; + case AF_INET6: if (w->pfrw_dyn->pfid_acnt6++ > 0) break; pfr_prepare_network(&pfr_mask, AF_INET6, ke->pfrke_net); pfr_sockaddr_to_pf_addr(&ke->pfrke_sa, &w->pfrw_dyn->pfid_addr6); pfr_sockaddr_to_pf_addr(&pfr_mask, &w->pfrw_dyn->pfid_mask6); + break; + default: + unhandled_af(ke->pfrke_af); } break; } @@ -2352,6 +2374,8 @@ _next_block: ke2 = (struct pfr_kentry *)rn_match(&uaddr, &kt->pfrkt_ip6->rh); break; + default: + unhandled_af(af); } /* no need to check KENTRY_RNF_ROOT() here */ if (ke2 == ke) { @@ -2416,8 +2440,18 @@ pfr_dynaddr_update(struct pfr_ktable *kt, struct pfi_dynaddr *dyn) dyn->pfid_acnt4 = 0; dyn->pfid_acnt6 = 0; - if (!dyn->pfid_af || dyn->pfid_af == AF_INET) + switch (dyn->pfid_af) { + case AF_UNSPEC: /* look up all both addresses IPv4 + IPv6 */ kt->pfrkt_ip4->rnh_walktree(&kt->pfrkt_ip4->rh, pfr_walktree, &w); - if (!dyn->pfid_af || dyn->pfid_af == AF_INET6) kt->pfrkt_ip6->rnh_walktree(&kt->pfrkt_ip6->rh, pfr_walktree, &w); + break; + case AF_INET: + kt->pfrkt_ip4->rnh_walktree(&kt->pfrkt_ip4->rh, pfr_walktree, &w); + break; + case AF_INET6: + kt->pfrkt_ip6->rnh_walktree(&kt->pfrkt_ip6->rh, pfr_walktree, &w); + break; + default: + unhandled_af(dyn->pfid_af); + } } From nobody Wed Apr 9 09:51:42 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXdWg2BQVz5sqGg; Wed, 09 Apr 2025 09:51:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXdWf6Qf5z3xrh; Wed, 09 Apr 2025 09:51:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744192302; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3qnU1AN6OUbgOp0ZHk5QC5SGcszEwqwS5xGJDGKj9lA=; b=Nja2GFX0CR31PXVtjuAW4Jajy1GLd70DuS7/uCS9p0CdTYOl9RsziW9TK0wuX8zeJhXz0L GxHhmJI3fzBFLabk1PvW7X20IokmuyqEY41fKzTZjdA5AhaFDeU5IE5NBBOudnWV1i4VdZ x9UL8iyyU7gmCME+BxTOjjapBeWAyPPYsi6cjYbKsni6rxlxVfA4hN7ad4OE/ArqikNLsB oSq5JFkhmsw935ljUnf8ciOk8tDGJah5XWXJIIG1TvPmRemFNj3R3+v7K4+ibEXcP/rnwz l4W6qAT8fmO/nHrFumBQHyvLDWkRKWxIMPA58jPfK8uhfIpBHxJlyCQSa3NL0g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744192302; a=rsa-sha256; cv=none; b=VnNToq6vxXcnm1cGusAaJaWqUfbKaszm4r7xGgdfm+oGPFgppkA/QfPWPiEITfJqL5X+mx 0sZEbfjWc+byhLojzNiI4xbrDgPQE5KwAInZCz4qf7mUcnE/6SaeXMvCyyXgqe6AeO8Tjw 8CDVf/8FW5+bVh4PV+52t0XqPs5LqS7S8szNdmc/hxvz1MESGpbguFzox8QnUdrj7xKblo n02ZcpQ6S0/fprW9jA1G2FYjWcNuKbwmEd15pPiTp0vVPDUxlh0SOxApsf0OyTArCKDrer 3GetWnMCs+dUDcqgn928JkEDhu7HDsDzjwckMB6wu1C0QHmkx5qTVV3sF7le9A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744192302; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3qnU1AN6OUbgOp0ZHk5QC5SGcszEwqwS5xGJDGKj9lA=; b=NsnVGXDWtTw4MF5OySlMdLlkJdrMZR8Xy5Rb3uiZIOVDN+Y9riDbLcm+0X7u2MpX5qOdNv wgMpDs33JQS3GvA2olSzygJbhCrIRFj0OPxTqHML6od6fz6DpwNmZYMsmZgtrIy8mzF2Vp oxilv0fUWIbO0B/Jvuf65RqtT2IfiA+BO3hSieRMMUJya8Ij6jwAtGE/1/v6VllLq6NGnS JyEWXoIboqD5juiO+r+avCEjqPMEcXxGduSXsAWVnBbfThekS+g+JQ3MnVwLtGWCDy54td 0Pla7L21uo0chRkiA+h93AXLnzzfYT3VQkWdQswUgPlVM48pA2dxZuLGtpTxEQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXdWf62HWz1BYb; Wed, 09 Apr 2025 09:51:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5399pg9s090937; Wed, 9 Apr 2025 09:51:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5399pgdO090932; Wed, 9 Apr 2025 09:51:42 GMT (envelope-from git) Date: Wed, 9 Apr 2025 09:51:42 GMT Message-Id: <202504090951.5399pgdO090932@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 9d38d2203b32 - main - pf: unused arguments at pf_normalize_tcp_init() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9d38d2203b3281a8f5921c27cccd32186cbf9cee Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=9d38d2203b3281a8f5921c27cccd32186cbf9cee commit 9d38d2203b3281a8f5921c27cccd32186cbf9cee Author: Kristof Provost AuthorDate: 2025-04-08 15:45:49 +0000 Commit: Kristof Provost CommitDate: 2025-04-09 08:18:20 +0000 pf: unused arguments at pf_normalize_tcp_init() OK deraadt. Obtained from: OpenBSD, sashan , eaed871b13 Sponsored by: Rubicon Communications, LLC ("Netgate") --- sys/net/pfvar.h | 2 +- sys/netpfil/pf/pf.c | 4 ++-- sys/netpfil/pf/pf_norm.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/net/pfvar.h b/sys/net/pfvar.h index c511d61d6cc1..74926581e247 100644 --- a/sys/net/pfvar.h +++ b/sys/net/pfvar.h @@ -2475,7 +2475,7 @@ void pf_normalize_cleanup(void); int pf_normalize_tcp(struct pf_pdesc *); void pf_normalize_tcp_cleanup(struct pf_kstate *); int pf_normalize_tcp_init(struct pf_pdesc *, - struct tcphdr *, struct pf_state_peer *, struct pf_state_peer *); + struct tcphdr *, struct pf_state_peer *); int pf_normalize_tcp_stateful(struct pf_pdesc *, u_short *, struct tcphdr *, struct pf_kstate *, struct pf_state_peer *, struct pf_state_peer *, int *); diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index 5f5f2403e448..3d22b6750c34 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -6182,7 +6182,7 @@ pf_create_state(struct pf_krule *r, struct pf_krule *nr, struct pf_krule *a, if (pd->proto == IPPROTO_TCP) { if (s->state_flags & PFSTATE_SCRUB_TCP && - pf_normalize_tcp_init(pd, th, &s->src, &s->dst)) { + pf_normalize_tcp_init(pd, th, &s->src)) { REASON_SET(&reason, PFRES_MEMORY); goto csfailed; } @@ -6438,7 +6438,7 @@ pf_tcp_track_full(struct pf_kstate *state, struct pf_pdesc *pd, if ((state->state_flags & PFSTATE_SCRUB_TCP || dst->scrub) && src->scrub == NULL) { - if (pf_normalize_tcp_init(pd, th, src, dst)) { + if (pf_normalize_tcp_init(pd, th, src)) { REASON_SET(reason, PFRES_MEMORY); return (PF_DROP); } diff --git a/sys/netpfil/pf/pf_norm.c b/sys/netpfil/pf/pf_norm.c index be8ba939e5d9..382f876234da 100644 --- a/sys/netpfil/pf/pf_norm.c +++ b/sys/netpfil/pf/pf_norm.c @@ -1429,7 +1429,7 @@ pf_normalize_tcp(struct pf_pdesc *pd) int pf_normalize_tcp_init(struct pf_pdesc *pd, struct tcphdr *th, - struct pf_state_peer *src, struct pf_state_peer *dst) + struct pf_state_peer *src) { u_int32_t tsval, tsecr; u_int8_t hdr[60]; From nobody Wed Apr 9 09:51:44 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXdWk6TsHz5sqMw; Wed, 09 Apr 2025 09:51: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXdWj1zZcz3y9K; Wed, 09 Apr 2025 09:51:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744192305; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=65sxmJnelcFDSVJfsxyyVXiEoH9c97/QFWxbABGtmvE=; b=piRphkqbCezn3Auo6WgVwWwX7eNpfsRNjS+mVC+kw3N8x5SXdXwjX7TG91dSmt6/gneOzN bJ7Y4uSsIXoFH674FFtcQu56M4FuLARF3St62CQ/aWtG8qWvkPGoJyrxj4FLoF9lU7rKKh g2na5KprWf6F7SqjsC/Zqk9jK9zOCbTVTk2Qn+ijfUjJZoNAbeb9xolk+9vFDuimY5KDUb jglRFbS6dTl2AU3UTrDjEDwoPX0nU5L7usEW+mE/dEhqxFyYgN1GpUu6KKqfAumPPdEWsf oVXQ3l2wVBPDTQt216vsn4PPioZZlB7VSKS7CYUvTDWLyKegNJIDi+/WBu7shQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744192305; a=rsa-sha256; cv=none; b=B6Hmxjl51/Zb0fua+cfVpnTYqGfDy6MpFLNVZavIWuL7xlTyYPmJkdkwXDrsX/bZJ7Q6CH Cu/ra7D4EMhultjuoR2Pw1Q9FhkzWO/n5DCZnbGzhcrNtg5X/5LlA5BWqUUGddG7/JrYzV JeIU+brnVCMVKejJdwKsnFbEPQT0hTbQqrcxAl1wVQfAhi0VjOXQs8upOscnsai1VcqvY0 9XGEWOx4McO7K1nHbpPLQfK/Vp2f6v7apx/t4CEWqUYkPsnPzp78VedIwweIoRnU7L1GCN l4CsEcBrSCTUd49wTedqji1Sy1bxepTviRWEcEI9U4vvunvFDf64YNnAZV7TJQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744192305; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=65sxmJnelcFDSVJfsxyyVXiEoH9c97/QFWxbABGtmvE=; b=qvg9SXZ8jAcL34mwf7ch3WNCvUV4J+nS8kLJ42fqBY0dQF5Sq2/yq/w+sn0Nyw7QrAs40b 4A66qxsKsQ5Sfe+aQKC8y9h+h/0X8pIkZrtg0E04IUHUpxZK4nLGg6PlUzjU3SvJSaK14F w/9lMhSrhO+Ey0TchyeK6JZZWqtqmVMCbVXg/PIluUNfR1qWbu4yC9Ok24zUUQh1c3Rd+R imVbfiFXZis7voMqGoV94G7Mi6+Ofwo4wib5wm8sdsrresetNtPfEfgfc0GTdlBvd83ZmV coTXncQVIIvdzJCllnrjnlziu72JkshFP3yJADQ5dI2ycjWK22tavgf6jY635w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXdWj0mtxz1BSc; Wed, 09 Apr 2025 09:51:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5399pjfb091004; Wed, 9 Apr 2025 09:51:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5399piKS091001; Wed, 9 Apr 2025 09:51:44 GMT (envelope-from git) Date: Wed, 9 Apr 2025 09:51:44 GMT Message-Id: <202504090951.5399piKS091001@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 8e7d333f9207 - main - pf: added /* FALLTHROUGH */ comments, typecasts (u_int32_t)-1, ... List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8e7d333f9207f0e03f2953887b3364e7bc02b010 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=8e7d333f9207f0e03f2953887b3364e7bc02b010 commit 8e7d333f9207f0e03f2953887b3364e7bc02b010 Author: Kristof Provost AuthorDate: 2025-04-09 08:50:27 +0000 Commit: Kristof Provost CommitDate: 2025-04-09 09:09:24 +0000 pf: added /* FALLTHROUGH */ comments, typecasts (u_int32_t)-1, ... ok mpi@ Obtained from: OpenBSD, sashan , a17121a67f Sponsored by: Rubicon Communications, LLC ("Netgate") --- sys/netpfil/pf/pf.c | 10 ++++++++++ sys/netpfil/pf/pf_if.c | 16 +++++++++------- sys/netpfil/pf/pf_ioctl.c | 2 +- 3 files changed, 20 insertions(+), 8 deletions(-) diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index ccf679813f35..d05469ad959b 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -2206,6 +2206,7 @@ pf_icmp_mapping(struct pf_pdesc *pd, u_int8_t type, switch (type) { case ICMP_ECHO: *icmp_dir = PF_IN; + /* FALLTHROUGH */ case ICMP_ECHOREPLY: *virtual_type = ICMP_ECHO; *virtual_id = pd->hdr.icmp.icmp_id; @@ -2213,6 +2214,7 @@ pf_icmp_mapping(struct pf_pdesc *pd, u_int8_t type, case ICMP_TSTAMP: *icmp_dir = PF_IN; + /* FALLTHROUGH */ case ICMP_TSTAMPREPLY: *virtual_type = ICMP_TSTAMP; *virtual_id = pd->hdr.icmp.icmp_id; @@ -2220,6 +2222,7 @@ pf_icmp_mapping(struct pf_pdesc *pd, u_int8_t type, case ICMP_IREQ: *icmp_dir = PF_IN; + /* FALLTHROUGH */ case ICMP_IREQREPLY: *virtual_type = ICMP_IREQ; *virtual_id = pd->hdr.icmp.icmp_id; @@ -2227,6 +2230,7 @@ pf_icmp_mapping(struct pf_pdesc *pd, u_int8_t type, case ICMP_MASKREQ: *icmp_dir = PF_IN; + /* FALLTHROUGH */ case ICMP_MASKREPLY: *virtual_type = ICMP_MASKREQ; *virtual_id = pd->hdr.icmp.icmp_id; @@ -2234,6 +2238,7 @@ pf_icmp_mapping(struct pf_pdesc *pd, u_int8_t type, case ICMP_IPV6_WHEREAREYOU: *icmp_dir = PF_IN; + /* FALLTHROUGH */ case ICMP_IPV6_IAMHERE: *virtual_type = ICMP_IPV6_WHEREAREYOU; *virtual_id = 0; /* Nothing sane to match on! */ @@ -2241,6 +2246,7 @@ pf_icmp_mapping(struct pf_pdesc *pd, u_int8_t type, case ICMP_MOBILE_REGREQUEST: *icmp_dir = PF_IN; + /* FALLTHROUGH */ case ICMP_MOBILE_REGREPLY: *virtual_type = ICMP_MOBILE_REGREQUEST; *virtual_id = 0; /* Nothing sane to match on! */ @@ -2248,6 +2254,7 @@ pf_icmp_mapping(struct pf_pdesc *pd, u_int8_t type, case ICMP_ROUTERSOLICIT: *icmp_dir = PF_IN; + /* FALLTHROUGH */ case ICMP_ROUTERADVERT: *virtual_type = ICMP_ROUTERSOLICIT; *virtual_id = 0; /* Nothing sane to match on! */ @@ -2283,6 +2290,7 @@ pf_icmp_mapping(struct pf_pdesc *pd, u_int8_t type, switch (type) { case ICMP6_ECHO_REQUEST: *icmp_dir = PF_IN; + /* FALLTHROUGH */ case ICMP6_ECHO_REPLY: *virtual_type = ICMP6_ECHO_REQUEST; *virtual_id = pd->hdr.icmp6.icmp6_id; @@ -2304,6 +2312,7 @@ pf_icmp_mapping(struct pf_pdesc *pd, u_int8_t type, } case MLD_MTRACE: *icmp_dir = PF_IN; + /* FALLTHROUGH */ case MLD_MTRACE_RESP: *virtual_type = MLD_MTRACE; *virtual_id = 0; /* Nothing sane to match on! */ @@ -2311,6 +2320,7 @@ pf_icmp_mapping(struct pf_pdesc *pd, u_int8_t type, case ND_NEIGHBOR_SOLICIT: *icmp_dir = PF_IN; + /* FALLTHROUGH */ case ND_NEIGHBOR_ADVERT: { *virtual_type = ND_NEIGHBOR_SOLICIT; *virtual_id = 0; diff --git a/sys/netpfil/pf/pf_if.c b/sys/netpfil/pf/pf_if.c index 31fc8b152719..389b74d09d37 100644 --- a/sys/netpfil/pf/pf_if.c +++ b/sys/netpfil/pf/pf_if.c @@ -86,10 +86,10 @@ static void pfi_attach_ifgroup(struct ifg_group *, struct pfi_kkif *); static void pfi_kkif_update(struct pfi_kkif *); static void pfi_dynaddr_update(struct pfi_dynaddr *dyn); -static void pfi_table_update(struct pfr_ktable *, struct pfi_kkif *, int, +static void pfi_table_update(struct pfr_ktable *, struct pfi_kkif *, uint8_t, int); -static void pfi_instance_add(struct ifnet *, int, int); -static void pfi_address_add(struct sockaddr *, int, int); +static void pfi_instance_add(struct ifnet *, uint8_t, int); +static void pfi_address_add(struct sockaddr *, sa_family_t, uint8_t); static int pfi_kkif_compare(struct pfi_kkif *, struct pfi_kkif *); static int pfi_skip_if(const char *, struct pfi_kkif *); static int pfi_unmask(void *); @@ -682,7 +682,8 @@ pfi_dynaddr_update(struct pfi_dynaddr *dyn) } static void -pfi_table_update(struct pfr_ktable *kt, struct pfi_kkif *kif, int net, int flags) +pfi_table_update(struct pfr_ktable *kt, struct pfi_kkif *kif, uint8_t net, + int flags) { int e, size2 = 0; struct ifg_member *ifgm; @@ -705,11 +706,12 @@ pfi_table_update(struct pfr_ktable *kt, struct pfi_kkif *kif, int net, int flags } static void -pfi_instance_add(struct ifnet *ifp, int net, int flags) +pfi_instance_add(struct ifnet *ifp, uint8_t net, int flags) { struct ifaddr *ia; int got4 = 0, got6 = 0; - int net2, af; + sa_family_t af; + uint8_t net2; NET_EPOCH_ASSERT(); @@ -773,7 +775,7 @@ pfi_instance_add(struct ifnet *ifp, int net, int flags) } static void -pfi_address_add(struct sockaddr *sa, int af, int net) +pfi_address_add(struct sockaddr *sa, sa_family_t af, uint8_t net) { struct pfr_addr *p; int i; diff --git a/sys/netpfil/pf/pf_ioctl.c b/sys/netpfil/pf/pf_ioctl.c index 787715412fc2..45e6e9f0bb9a 100644 --- a/sys/netpfil/pf/pf_ioctl.c +++ b/sys/netpfil/pf/pf_ioctl.c @@ -342,7 +342,7 @@ pfattach_vnet(void) /* default rule should never be garbage collected */ V_pf_default_rule.entries.tqe_prev = &V_pf_default_rule.entries.tqe_next; V_pf_default_rule.action = V_default_to_drop ? PF_DROP : PF_PASS; - V_pf_default_rule.nr = -1; + V_pf_default_rule.nr = (uint32_t)-1; V_pf_default_rule.rtableid = -1; pf_counter_u64_init(&V_pf_default_rule.evaluations, M_WAITOK); From nobody Wed Apr 9 09:51:43 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXdWj1Ml8z5sqMv; Wed, 09 Apr 2025 09:51: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXdWh0S36z3y3H; Wed, 09 Apr 2025 09:51:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744192304; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xEu7uc2bao7NrX+WC6KBh7WEFCdH9kpVep3Qq8zLIes=; b=vE2AvQbqZ933nsqGoq2BRXQOs4bOhB261tPPf0hL7kSs6AndHXbiY59yYbSErWeusG9MkG AJQj+8Az9X3H6w7MWIZPs/yUPbfYTmXAWN7Bcp72gMls9GSkJHHVvTd4SFQNrd4I96BfcD UqM0E2WyBK406u2dGus50CullF0D+XCrT9ck3iR27ZLNy0SEF8o9/gV5pauaa0EP98ySvr 73/vzu33eSFL85y1wA0i6by5VcWm0/Vkp2KEWrUrIfR2gKVgBYlcZbIIU/CXXGCaYgaGY6 WL+Sq0t07jOtfPnc4Ta96TE6RVGGjQ3fFyPN28f1TcHjQS1KXfxmVDrvmpJfEQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744192304; a=rsa-sha256; cv=none; b=fdPPBVsiUXa+OChTlmRdKJiiXvLTcZqTXzMgsN3j/q9X90iK0zPSUqrnhgsmnEgdYB+k/c CVZ3HzKFWjQkG3MQHU4W59PS1n8tygaf6jAIiK57GVRMkMCs2kdHJGwY13xxUxyDfNwIkB rV1Oyr/GtVoTqdfMDsS6PIKXQL9RLNwlsGEVu5bLMcAGyGovSpfyw42R+L6TGb6qE/PHAc nfGGk9R0ZGIcjyphRWz5RCSFBtJw0zsAQEDE6tBdW0zNdBhOqI57Wfz19jXV3qTsXz5tM2 EPa1OfyVmV6Ygp3ZmDbqJHaM0bVUcNezUjy3jpBKMzkSr7BexH+NDH4sT1Xj0g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744192304; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xEu7uc2bao7NrX+WC6KBh7WEFCdH9kpVep3Qq8zLIes=; b=oj8geM5rW7ZZ0sN6IA5saQ7ADK5cw3ZeNyS0yY8gGwSlBB+DWWO8hAie5UCtgQfjsPslPM HznsfbmmbGgtc7YTdQVUxLzsBu6DIG1zaKxfGp8VWeYwkBTCr7BMaCSGc1/kan0TeBaXLI NfXeyE/iFpV48ZHWwm91Fzh09VK8YMFsXae1+o9Zjq1D4i2P+Sjzr5QS3++xSoqouoSEEP 6ya8D8aIdyLLOHcXn+IJ+Nsz6xlfpqmjEHVtdv8X9EtvzZoh+32sVeSb1ZuiG9acFel0WP lPNQ1DNbsOVGMicrpApgBndNWRYogdPHq7FXSQ4AYWR776EmW4dOrbdEQZSWXQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXdWg70K3z1B0H; Wed, 09 Apr 2025 09:51:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5399phoi090971; Wed, 9 Apr 2025 09:51:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5399ph2H090968; Wed, 9 Apr 2025 09:51:43 GMT (envelope-from git) Date: Wed, 9 Apr 2025 09:51:43 GMT Message-Id: <202504090951.5399ph2H090968@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 7e0195e24896 - main - pf: add unhandled_af() to pf_socket_lookup() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7e0195e24896937f50d203080155fc7c5871e663 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=7e0195e24896937f50d203080155fc7c5871e663 commit 7e0195e24896937f50d203080155fc7c5871e663 Author: Kristof Provost AuthorDate: 2025-04-08 16:27:51 +0000 Commit: Kristof Provost CommitDate: 2025-04-09 08:18:21 +0000 pf: add unhandled_af() to pf_socket_lookup() Obtained from: OpenBSD, jsg , 443353dace Sponsored by: Rubicon Communications, LLC ("Netgate") --- sys/netpfil/pf/pf.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index 3d22b6750c34..ccf679813f35 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -4958,6 +4958,8 @@ pf_socket_lookup(struct pf_pdesc *pd) } break; #endif /* INET6 */ + default: + unhandled_af(pd->af); } INP_RLOCK_ASSERT(inp); pd->lookup.uid = inp->inp_cred->cr_uid; From nobody Wed Apr 9 11:23:24 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXgYT2ZB3z5svrh; Wed, 09 Apr 2025 11: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXgYT1YPkz3Ttq; Wed, 09 Apr 2025 11: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=1744197805; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V0aYrzYAq3CbMGZR+lQ2zNR9KA2ouFDTweU+mTIdZgA=; b=crFCyX986TRg3jp8B+sn0r3lAActKBaC90ous3Er+YvJcSqruFjkt0zT9BHzi0DsSIETwO NCQN+Z2pRCXhJsM7xtxYfDM+/IdEj4cixlJIaTEGEKJFV0mTVEIcORe/krCeQFit74P73T b778XxaKdPADD2MWygd3GVW8Nw2C29tuVemPviHuxgg/pPsjL4AftI7V/gC87mrl05INK7 HdZMwwaRYiTk70x2WmTirONDtdGLpNyk5I/z+2NssET9+EEviQHk/unE/eGFKR5BKNiFU4 NdRg5AcSqVpiYq+DQqmJJ2//3Je8QkCuW/G+CgwZLkOIRR3Y8iZaomzUtQlc7w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744197805; a=rsa-sha256; cv=none; b=TFRwrnqf1x83Q6ukTcvQwqRQ8qbxyrc0XCM9t5vRSmDOzF7/nbx80kV2KEXOs/3HH1EGsA mzfnXnoD7R3Yjw9KVME1PrajhonSKywVHl4DxoDh9mOdFIUNtdv2R7dO82v4AcPQ9YminC LOegMj2qc9tKrT4WK/0HOFfYAuDgVvV8OvmfL1PShokndE/lYMNsMfvq+Cr1DkDL4biD3x irr8XunCTZdEYBV/G6lR3SHAHGW4oMr6E3MJR1qtAiNLZyTXybab71H9sriPPo0MTijMtD 54tSIGzSD2RNj7yz2SAvWEdPBh2noKHDm+p36b5GuDuNuO8bWOEdDr+l2JXGuA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744197805; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V0aYrzYAq3CbMGZR+lQ2zNR9KA2ouFDTweU+mTIdZgA=; b=y4FlokxO0Sxl2PE1mbj6R60uSN//3Fp2eD4MbZNVVV8YzDIDieeRqI5uGobBiUt4IMsRgA 47wQxDtEKRMJwJj2bBiymK8G+VE8tVkia9p8w8/c3uUAjovGnaQhg+5kpUFM2pYouyTrEf SGKJ/G3MbxeyQusqVEbtaLTCOoNdbfnAfGbMefb5ahUQq7X1QExbirfboGLO72eEaBCxym t2MhFWSDeGUIaeowTJ6XDcGaRiHy3u5Rtz/7RZHeCtgdD9QGGIVYi4qdCUv4LwzL+QV0QV 6QwsZiRPL0sRCO8QBFRSt3YcHlSwFQjen8flg7kPq6ugBE8T38lYrUYuTV1OTA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXgYT0wy6zvg; Wed, 09 Apr 2025 11:23:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539BNO0A065895; Wed, 9 Apr 2025 11:23:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539BNO69065892; Wed, 9 Apr 2025 11:23:24 GMT (envelope-from git) Date: Wed, 9 Apr 2025 11:23:24 GMT Message-Id: <202504091123.539BNO69065892@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ruslan Bukin Subject: git: 07da3bb5d56c - main - mmc: support for SPI bus type List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: br X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 07da3bb5d56c85325252cd1a9ae32fb5d3536dea Auto-Submitted: auto-generated The branch main has been updated by br: URL: https://cgit.FreeBSD.org/src/commit/?id=07da3bb5d56c85325252cd1a9ae32fb5d3536dea commit 07da3bb5d56c85325252cd1a9ae32fb5d3536dea Author: Ruslan Bukin AuthorDate: 2025-04-09 10:20:51 +0000 Commit: Ruslan Bukin CommitDate: 2025-04-09 11:20:54 +0000 mmc: support for SPI bus type - Introduce the bus_type accessor, which allows to skip card selection and timing settings in SPI mode; - Add MMC_CMD_IS_APP flag for commands followed by the APP command, which is required by the upcoming MMCSPI driver. Reviewed by: pkelsey Sponsored by: UKRI Differential Revision: https://reviews.freebsd.org/D49249 --- sys/dev/mmc/bridge.h | 5 +++++ sys/dev/mmc/mmc.c | 8 ++++++++ sys/dev/mmc/mmc_subr.c | 2 ++ sys/dev/mmc/mmcbrvar.h | 12 ++++++++++++ sys/dev/mmc/mmcreg.h | 1 + 5 files changed, 28 insertions(+) diff --git a/sys/dev/mmc/bridge.h b/sys/dev/mmc/bridge.h index 4ec082a61b55..bd08b695c84a 100644 --- a/sys/dev/mmc/bridge.h +++ b/sys/dev/mmc/bridge.h @@ -103,6 +103,10 @@ enum mmc_chip_select { cs_dontcare = 0, cs_high, cs_low }; +enum mmc_bus_type { + bus_type_default = 0, bus_type_spi +}; + enum mmc_bus_width { bus_width_1 = 0, bus_width_4 = 2, bus_width_8 = 3 }; @@ -123,6 +127,7 @@ struct mmc_ios { uint32_t clock; /* Speed of the clock in Hz to move data */ enum mmc_vdd vdd; /* Voltage to apply to the power pins */ enum mmc_vccq vccq; /* Voltage to use for signaling */ + enum mmc_bus_type bus_type; enum mmc_bus_mode bus_mode; enum mmc_chip_select chip_select; enum mmc_bus_width bus_width; diff --git a/sys/dev/mmc/mmc.c b/sys/dev/mmc/mmc.c index 78b38f91a1f0..f4ea8faca35c 100644 --- a/sys/dev/mmc/mmc.c +++ b/sys/dev/mmc/mmc.c @@ -701,6 +701,10 @@ mmc_select_card(struct mmc_softc *sc, uint16_t rca) { int err, flags; + /* No card selection in SPI mode. */ + if (mmcbr_get_bus_type(sc->dev) == bus_type_spi) + return (MMC_ERR_NONE); + flags = (rca ? MMC_RSP_R1B : MMC_RSP_NONE) | MMC_CMD_AC; sc->retune_paused++; err = mmc_wait_for_command(sc, MMC_SELECT_CARD, (uint32_t)rca << 16, @@ -900,6 +904,10 @@ mmc_set_timing(struct mmc_softc *sc, struct mmc_ivars *ivar, uint8_t value; int err; + /* No timings in SPI mode. */ + if (mmcbr_get_bus_type(sc->dev) == bus_type_spi) + return (MMC_ERR_NONE); + if (mmcbr_get_mode(sc->dev) == mode_sd) { switch (timing) { case bus_timing_normal: diff --git a/sys/dev/mmc/mmc_subr.c b/sys/dev/mmc/mmc_subr.c index 0a555cd74c97..fba99e791dff 100644 --- a/sys/dev/mmc/mmc_subr.c +++ b/sys/dev/mmc/mmc_subr.c @@ -112,6 +112,8 @@ mmc_wait_for_app_cmd(device_t busdev, device_t dev, uint16_t rca, sc = device_get_softc(busdev); + cmd->flags |= MMC_CMD_IS_APP; + /* Squelch error reporting at lower levels, we report below. */ sc->squelched++; do { diff --git a/sys/dev/mmc/mmcbrvar.h b/sys/dev/mmc/mmcbrvar.h index 8faef227324b..c47966793098 100644 --- a/sys/dev/mmc/mmcbrvar.h +++ b/sys/dev/mmc/mmcbrvar.h @@ -60,6 +60,7 @@ #include "mmcbr_if.h" enum mmcbr_device_ivars { + MMCBR_IVAR_BUS_TYPE, MMCBR_IVAR_BUS_MODE, MMCBR_IVAR_BUS_WIDTH, MMCBR_IVAR_CHIP_SELECT, @@ -113,6 +114,17 @@ mmcbr_get_retune_req(device_t dev) return ((int)v); } +static int __inline +mmcbr_get_bus_type(device_t dev) +{ + uintptr_t v; + + if (__predict_false(BUS_READ_IVAR(device_get_parent(dev), dev, + MMCBR_IVAR_BUS_TYPE, &v) != 0)) + return (bus_type_default); + return ((int)v); +} + /* * Convenience wrappers for the mmcbr interface */ diff --git a/sys/dev/mmc/mmcreg.h b/sys/dev/mmc/mmcreg.h index b544e3dd41e5..e5783249c67b 100644 --- a/sys/dev/mmc/mmcreg.h +++ b/sys/dev/mmc/mmcreg.h @@ -80,6 +80,7 @@ struct mmc_command { #define MMC_CMD_BC (2ul << 5) /* Broadcast command, no response */ #define MMC_CMD_BCR (3ul << 5) /* Broadcast command with response */ #define MMC_CMD_MASK (3ul << 5) +#define MMC_CMD_IS_APP (1ul << 7) /* Next cmd after MMC_APP_CMD */ /* Possible response types defined in the standard: */ #define MMC_RSP_NONE (0) From nobody Wed Apr 9 11:30:59 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXgkC74jCz5swbm; Wed, 09 Apr 2025 11:30: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXgkC5mmsz3Wlp; Wed, 09 Apr 2025 11:30:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744198259; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PobSiOg9YCgyLEZeHRH6G7Q9Mci4MLAH43ApHl4DcrM=; b=jxEYIEjB1Y63vhjT0mWH1vhHHeJVKYtfrFZhQ+RqiduEo5APrlnuSZV1mDDQ/NfDLwvckp fFB+emAQRklw8eSPorxbYQCiby4gT+PF9kTWPD3vk5Z4g5GstbN1yLash5myb4OOLZqEI6 n2jWu9IWnXWLKvoFahuzUHeB8yeeVLzkPLFxHN2LSH1KPNzOlWRLqBbO9HjcJEch7i3+Nc FN9sMvxBroMKHenxt2PdYktomA/QIjhRmiEYd8SrxEJw5XcnPf5zEyJ3DoVofyAAyQ/6CS C+WZXsBQV0/94dy0Db+g/0DTdMuj0FGm42EVGZy7rZWfNpaNP6+F0hm15ttJQg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744198259; a=rsa-sha256; cv=none; b=ako8jXpGXALgFPonmGSRnnkM/3J1jPL5V/14sF2ddLlDWC+zrWdtiDRuLcWtK8dSZ76JiV ISH8u+x6MaaY4J8xzZQISBS45kK4eo8exHEBHpFejbDwVLukY9+4lOvMwkxLue2OdrsBQV eBay26kjdgwq/VpkZbf/3F0Jhf/1HNMvMjsG0nMLuSL1Tq3T7InRgEa1ZimzwM5EZ64sih bLNCx47AblUGr0OQbvTpyRUxOoOEh7RurSZmit54kHwqCTdlTE4FV0zCWRUjPuzHgrxuP4 MzvB6XaJPXlntXtrFIQNVmDFyIpa05DDa4oj+PGKCCHcu2+PeH9+6Ml8Cecdzw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744198259; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PobSiOg9YCgyLEZeHRH6G7Q9Mci4MLAH43ApHl4DcrM=; b=o4F7FkHvwbFm0AIJSEt3g0dXFBWeQ91l3YDzYbUQqj8jpoH7xNzqct37+TSX2OZ3I1akQW CNF2K9ZlhJz7WzJEIbio+UZbTOEfaMkDb4QBRil/sjlgfTuTODqe0lDN4I/bdNOpU7Fa3V ljgkv8fS/LJQulXJMd0GBG1o7WrbcOVjRtTnfaLjqE9Wvx0UYIz2NIeFZMocdF3wOHUJ3b 85dumBxXVM0ACdp0lHH3txGSULlofQL7+h3xBwBmvdw9Lzs+rc6wkQlkpd4ZvH2ZUhHqRJ dBMPhDDGgxTVj3YlTMHN/XNXPRUIqsJfmHnOYAYWSyLQLnd2dDjY3FUkeAYZRg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXgkC5NBlzGm; Wed, 09 Apr 2025 11:30:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539BUxAa078381; Wed, 9 Apr 2025 11:30:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539BUxOR078365; Wed, 9 Apr 2025 11:30:59 GMT (envelope-from git) Date: Wed, 9 Apr 2025 11:30:59 GMT Message-Id: <202504091130.539BUxOR078365@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 747483038e6f - main - netinet6 tests: fix typo in the test List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 747483038e6fae5cc6db6a7cd01aec467d1b2859 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=747483038e6fae5cc6db6a7cd01aec467d1b2859 commit 747483038e6fae5cc6db6a7cd01aec467d1b2859 Author: K Rin AuthorDate: 2025-04-07 18:38:45 +0000 Commit: Kristof Provost CommitDate: 2025-04-09 11:30:09 +0000 netinet6 tests: fix typo in the test This caused sys.netinet6.redirect:valid_redirect to fail. PR: 247729 Fixes: eddfb2e ("Fix IPv6 regression introduced by r362900.") Reviewed by: jlduran, kp Pull Request: https://github.com/freebsd/freebsd-src/pull/1646 --- tests/sys/netinet6/redirect.sh | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/tests/sys/netinet6/redirect.sh b/tests/sys/netinet6/redirect.sh index aa0731d89101..40874f8c9b6d 100644 --- a/tests/sys/netinet6/redirect.sh +++ b/tests/sys/netinet6/redirect.sh @@ -39,10 +39,6 @@ valid_redirect_head() { valid_redirect_body() { - if [ "$(atf_config_get ci false)" = "true" ]; then - atf_skip "https://bugs.freebsd.org/247729" - fi - ids=65533 id=`printf "%x" ${ids}` if [ $$ -gt 65535 ]; then @@ -89,7 +85,7 @@ valid_redirect_body() { while [ `ifconfig ${epair}a inet6 | grep -c tentative` != "0" ]; do sleep 0.1 done - while [ `jexec ${jname}b ifconfig ${epair}b inet6 | grep -c tentative` != "0" ]; do + while [ `jexec ${jname} ifconfig ${epair}b inet6 | grep -c tentative` != "0" ]; do sleep 0.1 done From nobody Wed Apr 9 12:20:13 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXhq15gbZz5syjQ; Wed, 09 Apr 2025 12:20: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXhq14QGnz3nsF; Wed, 09 Apr 2025 12:20:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744201213; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zEBLT1T+XGW7DjUIwsHq2yhz43QXkEkr7KY8LjxukU8=; b=yZDqMxhKyKLXBdbVOGFDYHSK9FRnW2tbNokHVLLAveM7PLTo/wnZ5CMs+S8J/ybmJYG0Bm Q+jqNJr+lIXGt2pBIG6BaBnAbPfPY63VJFmwysoIoKzEukgtJ/y/TBiQlZPNyRGw+xEpJi EnTV5QFYVJb8sVonTNjov0lbuQ8Sd3wpULF5teUmyRVC8ZbjTpbNrOAnJrVRAON45pqQbT AqujX5+xwl3PIFnQLJEcPyK0o7/8lHF9oxHGGbT22zNfren+R9zagZXWOIU6h98j40oHWw Ayta/p/1wvia//t9FtKMJjJwS7fANIve5WmlusL42GFAyTzpMcSMVVuKzzgo9g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744201213; a=rsa-sha256; cv=none; b=vTOyCgZpDUo3kBbvzpZ65z8i3v6CxCdvmKeM/piVGH2RQacouNcU5myNVhSFe2VpcJGxX1 2hBorPbyRc3mFYepy5CF19gj8RKgcajD+i/q1sPRtA+yXaI8ozOai6pbHSxtqSgKs6KfGw GARQ4n6dNSL0odmSfT1sZJbZJdrEZ/Htx/1iREPjqfcUCMfk/jkRbB7iiUG2FG+0zKvnMq 4O9aYW7zB9qjrz1WC3wI0RIZnCUA9Us5UqzDc/7mqkwUrOwX2AMrwUEbx+zlEKBJK3iyeS AqrUMtDwQAXlNqLIP2mUuVeg8Vq8ZNR+IpPIRxeFE8H/+8isFTSJUihk6hXyGA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744201213; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zEBLT1T+XGW7DjUIwsHq2yhz43QXkEkr7KY8LjxukU8=; b=EyqpdDx3eLF6MWAk11KgATbI5tIcGVSe35SV7o1q2xVebgq/Oq09pIOVfaSuLIu2dADptg nAc6oZylc8JBQQIgQD6yEJDJHGtJU7oZUv6UHM6B4zIBifxSgipD6ugdUDYEQzkVxDqUQ8 q0ydmgrttCwJfgLDaTYnOvcQB0LE4du259/Pa7pjGnxieXnIJRqC9z5A0ps7ca8uSfqicr mOG7q53L2fNL0lyhlazRXWhLpagWokz+59h0jy6yIorKhPzkWduHbphXzwWBr9b5wcByWl JSVxUE2n7rZkeyEFt8bsBS0aasq8jBWJ8y8QFrjwjAHMDhvGTdxSPkKBnf/tuA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXhq13HgQz1yh; Wed, 09 Apr 2025 12:20:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539CKD2h068019; Wed, 9 Apr 2025 12:20:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539CKDt3068010; Wed, 9 Apr 2025 12:20:13 GMT (envelope-from git) Date: Wed, 9 Apr 2025 12:20:13 GMT Message-Id: <202504091220.539CKDt3068010@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 3f3ce5ec77c8 - main - bhyve amd64: allow iommu to fail attaching device to host domain List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3f3ce5ec77c8ae051fbd284342057d7f5185c0e4 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=3f3ce5ec77c8ae051fbd284342057d7f5185c0e4 commit 3f3ce5ec77c8ae051fbd284342057d7f5185c0e4 Author: Konstantin Belousov AuthorDate: 2025-04-09 09:46:57 +0000 Commit: Konstantin Belousov CommitDate: 2025-04-09 12:20:08 +0000 bhyve amd64: allow iommu to fail attaching device to host domain If iommu does not want to handle some device, e.g. because the ACPI table does not list it as translated, this is not a reason to fail creating the host domain. PR: 285976 Sponsored by: The FreeBSD Foundation --- sys/amd64/vmm/io/iommu.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/amd64/vmm/io/iommu.c b/sys/amd64/vmm/io/iommu.c index 7167734c000b..9fc612244699 100644 --- a/sys/amd64/vmm/io/iommu.c +++ b/sys/amd64/vmm/io/iommu.c @@ -237,7 +237,11 @@ iommu_init(void) */ error = iommu_add_device(host_domain, dev, pci_get_rid(dev)); - if (error != 0) { + if (error != 0 && error != ENXIO) { + printf( + "iommu_add_device(%s rid %#x) failed, error %d\n", + device_get_name(dev), + pci_get_rid(dev), error); iommu_cleanup_int(false); return; } From nobody Wed Apr 9 12:20:14 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXhq26BFMz5sylS; Wed, 09 Apr 2025 12:20: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXhq24jVqz3nq4; Wed, 09 Apr 2025 12:20:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744201214; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cT+cPi+tjqM/rXlVDM9c3eLuaGzUH4GT/EflFRe2O3c=; b=kewFf1aQrOQAo6iN/xIqysDvYYo/R1tusrzQ9RN/6dBGpYSmA/Qy1EpmrvbKBy78Vq8eVd PHRr4swFQcg1wrLzAddLdgkTn27hPRp2xkcHn1Bk3GlNeNfaYExmrPjp0CSEH8T+0VEDIw IJp0N5uZ9GsC6SuBW4d/esPWb1woaYKvU8osr5Oy58I4LgT0uyUAPogUicnt3SYbQ3cCOL d3KqNJtuJpzArXHQOWZo9EChrmXoRwUrm1vl9owo7I5lDStC67wq8lr0BEox871+sSgi+d aZ8NQ464SKVK4nmtCXz333HC2RbvBFE4GEzbTdO1xmIh2O4pF2iJ3EObIp1tVw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744201214; a=rsa-sha256; cv=none; b=OFri/2/t71l+4s6eJktbnE2xqEfjwOzbM0xqsBnhdSkvAlH/jed6HYqUe8SEOzd0e1EUOz 4CFP/dn2E2dOj8ZHxHNlLsoh0usweF34vT24C7xvdD2axA1QIvzEy5HSt5B5P1zd89hNGg 7HGNOCAi1vsEmbVOuMM+zJiXvHLhnuFRYXNV6/TZEqYve4+etJqxSy5IXZhUtnIevO67d1 3v++G3wvtAJJTY/QLBbq/B06mOhjQtLVmbgmOR06GFDaeVx+9d+vPAHhFR4+vUMF6glwy5 iHsOnmPeQfbBrroZFxJJp9nfUo3xOZZBU50X6+KnhCpdWWAXT8/9ADuJ7WtRvg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744201214; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cT+cPi+tjqM/rXlVDM9c3eLuaGzUH4GT/EflFRe2O3c=; b=pzkYcJTkH7tQRtR/yh1XwuV1orzEfn+8OqVREwxCtro4ZWBejy277ZXVaWV2z+mywboOnE EyiEdnD1S6a6Al0XAQXIrJkrlbyKFfC8Lz0EQWPChYBFN7KtQ9Mpo7vOqQJDZUORbIdORv 9LVkXv7Q5y4uKVpXr1JDiWTwaUGjCEFfptAGNGepb7MUK96WtwKmmdnQ5yf5NqPdRoFB+E wCBJJ6WTm5Isixpd5DqWXejF7aLks/piXT7L+1scYY9CRerYRFbBgPFrZBgqV5u1iX5v4u wfMcJ3FFu+6jjDdX5htqO9SAHIuJVFDFd0JAdsqOoa6VoE04vfngs94R1YUVhw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXhq23kdYz1yj; Wed, 09 Apr 2025 12:20:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539CKEUj068694; Wed, 9 Apr 2025 12:20:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539CKEZL068688; Wed, 9 Apr 2025 12:20:14 GMT (envelope-from git) Date: Wed, 9 Apr 2025 12:20:14 GMT Message-Id: <202504091220.539CKEZL068688@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 42e4938fdbf8 - main - vm_assign_pptdev: only call vm_iommu_map() once List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 42e4938fdbf8e2b5180e0d6aeb0075c589cf3bca Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=42e4938fdbf8e2b5180e0d6aeb0075c589cf3bca commit 42e4938fdbf8e2b5180e0d6aeb0075c589cf3bca Author: Konstantin Belousov AuthorDate: 2025-04-09 11:20:30 +0000 Commit: Konstantin Belousov CommitDate: 2025-04-09 12:20:08 +0000 vm_assign_pptdev: only call vm_iommu_map() once for the first assigned pass-through device. PR: 285976 Sponsored by: The FreeBSD Foundation --- sys/amd64/vmm/vmm.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/sys/amd64/vmm/vmm.c b/sys/amd64/vmm/vmm.c index bd703f63b557..c42da02d0bf6 100644 --- a/sys/amd64/vmm/vmm.c +++ b/sys/amd64/vmm/vmm.c @@ -851,6 +851,7 @@ vm_assign_pptdev(struct vm *vm, int bus, int slot, int func) { int error; vm_paddr_t maxaddr; + bool map = false; /* Set up the IOMMU to do the 'gpa' to 'hpa' translation */ if (ppt_assigned_devices(vm) == 0) { @@ -860,12 +861,12 @@ vm_assign_pptdev(struct vm *vm, int bus, int slot, int func) vm->iommu = iommu_create_domain(maxaddr); if (vm->iommu == NULL) return (ENXIO); + map = true; } error = ppt_assign_device(vm, bus, slot, func); - if (error != 0) - return (error); - error = vm_iommu_map(vm); + if (error == 0 && map) + error = vm_iommu_map(vm); return (error); } From nobody Wed Apr 9 13:31:48 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXkPd0G8Rz5t31R; Wed, 09 Apr 2025 13:31:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXkPc5T97z45v5; Wed, 09 Apr 2025 13:31:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744205508; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=baSpIpHonfAxxRe+bk3lW/qi8tiogAaDFpiyE7QAeWc=; b=XhrzBgbeVAOeIWtXh1GtUOgpNrmZkjv/a/Uwr58utXoLXFdo0WHWGA+6gAkRpUfaGr+7Hh pJhowecDBmClvowe6Z2LvJeo6ucHpAYmDGMS4eIvaPpc/1G7wL9brM6ly3t+BiTO9A/ieh t6pftlKbd8hUbmWUcII5YnjSWXBop9cpe/3oirHi7XjOX/ai+M748YOBUbwSyRZOkHdv75 WzbIf+Z3NDxGlolOSW4xmodycL7rH9JUL9tdX5RR59KZDVFIekHcbbcUxlYnfLmo26zNc3 1byXElnMmcI2VAt/CsP1Qy5GHCVspg+gLTx7g/qM0k6BIyEm552SRsjVVozmAg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744205508; a=rsa-sha256; cv=none; b=NzYmQ+3HV3AF0sPnBzqz/5745aAgQfF6tGqNR9X8vKxisVwBvfOx+ymn0HtbmQmIxPXIri ZI8y1vRl0txEUIRUeie3Z5CQZgAA0iI3vJxDAfDY3ykPZH715Y1eLDLWxdBGCeG/WXNwA+ WtG18YAXgyMspwZt20YH/K2vzgZMBzby1Q4JnyDCeCBNin3p1zS/fxUoUD5CKHBps100X9 O6iz4T3qq/zkbPrTxxwEICeO+Q5p/CB0di0fKrMiRUWmZwrNWcKsk8VbulC6wIOQhnOQOb KQA0Y/HdaCluv0AZV+ma1ltj+86UpUbHezxg9tmBAo/LC4jcuIqdhAqSiTgjUg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744205508; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=baSpIpHonfAxxRe+bk3lW/qi8tiogAaDFpiyE7QAeWc=; b=CNzsQvz9p1sM9LRN/8XfsNaYX98BCKfKmgSkz1B9ZQE6xb8xm8lSaTICYjo2WH7/eIxHQj pbdMsADUMcZm+6EVREQyBcdry3b8/cIzG7CCWc2EnO8ySiYRfhAwx5NOJbtcREHg05Y5qQ /0HzYGf3p2OHjS7Jt1BVm3HniDWSzaHgKNcpnGrFnCb3kr/Hbh1wvUbVlYTJtCseel3l5N vfJ4WHeevvb62V/Z+IPCEE+vRZ2Gfe+6r54MXVUOUJ5tubuyN7zUGXqoGeVU9DKC2TwUQl 7y4W13do5/HyAaUtJ2ZMgU1HAXBOZXfZ3OL1Tyb+WO+y4UYrZ5yf6+8rrFKyKQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXkPc4z25z3tP; Wed, 09 Apr 2025 13:31:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539DVmsM004188; Wed, 9 Apr 2025 13:31:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539DVmuv004185; Wed, 9 Apr 2025 13:31:48 GMT (envelope-from git) Date: Wed, 9 Apr 2025 13:31:48 GMT Message-Id: <202504091331.539DVmuv004185@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ruslan Bukin Subject: git: d20ed88f6630 - main - mmcspi: depend on fdt support. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: br X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d20ed88f6630130b6dca917ad0dde16e6f073ef9 Auto-Submitted: auto-generated The branch main has been updated by br: URL: https://cgit.FreeBSD.org/src/commit/?id=d20ed88f6630130b6dca917ad0dde16e6f073ef9 commit d20ed88f6630130b6dca917ad0dde16e6f073ef9 Author: Ruslan Bukin AuthorDate: 2025-04-09 13:23:56 +0000 Commit: Ruslan Bukin CommitDate: 2025-04-09 13:30:10 +0000 mmcspi: depend on fdt support. This fixes LINT build. Sponsored by: UKRI --- sys/conf/files | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/conf/files b/sys/conf/files index 1372c6b1b5b9..1892b66e849a 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -2427,7 +2427,7 @@ dev/mmc/mmc.c optional mmc !mmccam dev/mmc/mmcbr_if.m standard dev/mmc/mmcbus_if.m standard dev/mmc/mmcsd.c optional mmcsd !mmccam -dev/mmc/mmcspi.c optional mmcsd spibus !mmccam +dev/mmc/mmcspi.c optional mmcsd spibus !mmccam fdt dev/mmc/mmc_fdt_helpers.c optional mmc regulator clk fdt | mmccam regulator clk fdt dev/mmc/mmc_helpers.c optional mmc gpio regulator clk | mmccam gpio regulator clk dev/mmc/mmc_pwrseq.c optional mmc clk regulator fdt | mmccam clk regulator fdt From nobody Wed Apr 9 13:50:58 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXkql1W57z5t4Gp; Wed, 09 Apr 2025 13:50: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXkqk572bz4FVc; Wed, 09 Apr 2025 13:50:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744206658; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3VMf50AFpKqR1I8+9S+mxm2X5BPYIlqqnySHSfjU/UY=; b=HN6X9sWrLfkwzSCODoA5Afgoo2etsh525Um97RdnEQvbrjtnp5EpenMBc84kcNLGz0+eu6 ILo37LRPzL88Fy3t+5EI2Tzkket3KrHYIIm7sQGi+jnE1ohOmKRy9xk36vcvoz8FpLQk/p aWXusNGzrBE4Lt9bqOGOKtQbvW1ZFWl/lXT2qmEoBd4DhriJMRdMYiUXT52v7JcKamgA5x zIQYz6hINh9ZYJe0zQihfih4F/Vr6fTGzkcprQUZSE6JoDFGHC0qG9vI4ex06/w7uB5sSg eR9G+qgQPdiwWyjA5rG35lZGhKWc9mTwe/7ohHbAwUgW7dP/4EHrqL9Bv883Xw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744206658; a=rsa-sha256; cv=none; b=d85PIY4gAGj7CiGZ+7Q8GZKVkbP1OgoG/46Zy9LoQ6O7fY7zAo4JSMEgYNJesZMh0gXw2a vyZUseljPCQ+ZiRgsbFIrPcKvZjrPmwzmVG2G5+33Fa1Uz/ror1Css0H1Gl9rG6Obnsdc9 H94pfKhSI651eTIMuLPT2t3zS3dcZ2XOwMTXJFga4I+s0c4xla1ghmKCUiXT7ids48X1xL 25XyP7rMCm4AmucUnABABxOqy5Q68jJo0Lr9qVxEd6LnGentL9q07bCyj7jYQDtWJrUqu+ kdCiUvB5WJPIjt2tovaJK3YCXrpicZyoIeFoQp0hdP/El9eFImh8g9vv0ItFIA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744206658; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3VMf50AFpKqR1I8+9S+mxm2X5BPYIlqqnySHSfjU/UY=; b=jCcxHGTjGCSpTzgJVEx8LXhAiPjys0W1b3Y6aRcjhbowEKsa3AlYeyJIKhJeylQo8CFtW5 WkMXoMvZWL3TKLgmQeDRS093XNn9CV41jkOYEsvTm9lwkOMymWayRJ20HF5b5RHKNCh1lI kRm9DX7koLjq9VCAPA+tjxKhmf/uLxdJ8Ge2NqO4PksyMKt9mC2NQHhl9eG2FH71ByTyQ/ xmrKLvBDsCknVjf9pXPXl18l8oxgfO3zk/hcUxEjs/gfe4kWyxiz1VKnG3KskjTfidylCZ yb4+A5ZBj03jJ8tm8D3agv+FPvisYRZAYKcSVvkogK6GJrqj17lOoNe28pn+oA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXkqk4fXpz4Mj; Wed, 09 Apr 2025 13:50:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539DowOq041599; Wed, 9 Apr 2025 13:50:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539DowhC041595; Wed, 9 Apr 2025 13:50:58 GMT (envelope-from git) Date: Wed, 9 Apr 2025 13:50:58 GMT Message-Id: <202504091350.539DowhC041595@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: f132e8b4c7d9 - main - net tests: enable if_lagg_test:lacp_linkstate_destroy_stress List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f132e8b4c7d918ffb97f9c1f0c26b928874bfd59 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=f132e8b4c7d918ffb97f9c1f0c26b928874bfd59 commit f132e8b4c7d918ffb97f9c1f0c26b928874bfd59 Author: K Rin AuthorDate: 2025-04-09 08:27:02 +0000 Commit: Kristof Provost CommitDate: 2025-04-09 13:50:35 +0000 net tests: enable if_lagg_test:lacp_linkstate_destroy_stress PR: 244168 Pull Request: https://github.com/freebsd/freebsd-src/pull/1650 --- tests/sys/net/if_lagg_test.sh | 4 ---- 1 file changed, 4 deletions(-) diff --git a/tests/sys/net/if_lagg_test.sh b/tests/sys/net/if_lagg_test.sh index 4bdb59c8aab9..e2b998599991 100755 --- a/tests/sys/net/if_lagg_test.sh +++ b/tests/sys/net/if_lagg_test.sh @@ -190,10 +190,6 @@ lacp_linkstate_destroy_stress_head() } lacp_linkstate_destroy_stress_body() { - if [ "$(atf_config_get ci false)" = "true" ]; then - atf_skip "https://bugs.freebsd.org/244168" - fi - local TAP0 TAP1 LAGG MAC SRCDIR # Configure the lagg interface to use an RFC5737 nonrouteable addresses From nobody Wed Apr 9 15:05:11 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXmTM4xBFz5rvyB; Wed, 09 Apr 2025 15:05: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXmTM34j6z3VP4; Wed, 09 Apr 2025 15:05:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744211111; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0Oszsd347OV9fTtS6vdnUA+S28Xwb1fvfubwJ9rTJ9k=; b=m1okz6/5rSZNyHvCMAGIn2mDG861ICQMeBCcqsseX5nK7uYSqPulkI1ZTwu/tm0C6g93kA jbOeD7GGSPadEm9AVl+fuKUQKZT2/bIMmNObaU/+ZVdpgu9rSYxu/7tnD8q04yTLPjVuny ccSH9bpQik7KC0DvsTgTmCIR3XtqfSHGulnYGUb+o7f5dn1sj+SKPx2omsfHqn15xEwdjx ntEkKuOI7Xbvk0M5TtYcLCKklCMQxfw/Ui70fnAjMvyqcDYi5/hYhQeS9TOpxLypYNaFMl co16uPznuik9s1QVcLBWj0GBb0q+dZyLqP4YR2f4EwXsSeMS9Ww9rdtALApseQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744211111; a=rsa-sha256; cv=none; b=wKNExN+yf6iJdJxDVjqWgm3dwZmJj6J9KMLRtERF+fsNV6kaPiPtdo3Twyb/kQfyJlYsOJ MsrpRFZE6QdMXLJ5RAr8mTBpTp8WtiIR1FvKIOYTlPXsiZ+1SiHA95AfYdUdEJ/U14yqVq o2V+Rum3UvTtf3Hzkr0ILlnO6rE4hH/Z1zlvMhcEdcUUof5weDJ2Qzq8vBwDT42DBaEfHl hkngwfQeDADe61DBFKCv/DMHfk8W3k9zTcfJZip4WRt5g32KbnHWsl4kClj3GpFJI6QxkD GyZmfnoXQUVCvnZOY9j8LyWsPuLV26yhRF6e8vv251UrnMIIGqpeKBJ9zWfHcw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744211111; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0Oszsd347OV9fTtS6vdnUA+S28Xwb1fvfubwJ9rTJ9k=; b=VVQcrs21cKysINByj3EHSCl6aQ6oFejpN8hEYQ4FvSl1x6GFJcbNW1+OB8GnpwN0BYOqV4 53JApcWNT0HRaGEXavhmJHTuoHIbGfQxMf1hX3cEVKuoovaXQdaAyVr3iW5FNnbBvhnznT vYXV/rYTuKFciDv3v5pCdcXOvTm63gEIs190aTJwDzQJKfv92mtHOvMoSDu/5SO3VI9xm6 LhNsXGlTd/NWmQHmCMgs75XUTmxnuP+EAB/tL+XcrnIq7RQRLwQJq2qAmzLmRnbmv7UOw/ BtcaRDSWqefq6+OaHwYwqeiBc2ARaE+JpYBzAa50q1oW0wlN+xzCUceOcryWbA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXmTM2RRRz5rf; Wed, 09 Apr 2025 15:05:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539F5B8g082617; Wed, 9 Apr 2025 15:05:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539F5Blm082614; Wed, 9 Apr 2025 15:05:11 GMT (envelope-from git) Date: Wed, 9 Apr 2025 15:05:11 GMT Message-Id: <202504091505.539F5Blm082614@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 3620d70511dc - main - OpenSSH: Fix logic error in DisableForwarding option List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3620d70511dc8bf45752028dac0af6f157ec6146 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=3620d70511dc8bf45752028dac0af6f157ec6146 commit 3620d70511dc8bf45752028dac0af6f157ec6146 Author: Ed Maste AuthorDate: 2025-04-09 14:54:46 +0000 Commit: Ed Maste CommitDate: 2025-04-09 15:03:29 +0000 OpenSSH: Fix logic error in DisableForwarding option This option was documented as disabling X11 and agent forwarding but it failed to do so. Spotted by Tim Rice. Obtained from: OpenBSD d31ec64016fc Sponsored by: The FreeBSD Foundation --- crypto/openssh/session.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/crypto/openssh/session.c b/crypto/openssh/session.c index 591f1e329a8d..03a20f9d9648 100644 --- a/crypto/openssh/session.c +++ b/crypto/openssh/session.c @@ -2194,7 +2194,8 @@ session_auth_agent_req(struct ssh *ssh, Session *s) if ((r = sshpkt_get_end(ssh)) != 0) sshpkt_fatal(ssh, r, "%s: parse packet", __func__); if (!auth_opts->permit_agent_forwarding_flag || - !options.allow_agent_forwarding) { + !options.allow_agent_forwarding || + options.disable_forwarding) { debug_f("agent forwarding disabled"); return 0; } @@ -2589,7 +2590,7 @@ session_setup_x11fwd(struct ssh *ssh, Session *s) ssh_packet_send_debug(ssh, "X11 forwarding disabled by key options."); return 0; } - if (!options.x11_forwarding) { + if (!options.x11_forwarding || options.disable_forwarding) { debug("X11 forwarding disabled in server configuration file."); return 0; } From nobody Wed Apr 9 19:27:52 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXtJS55yzz5sG11; Wed, 09 Apr 2025 19:27: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXtJS2TJPz4513; Wed, 09 Apr 2025 19:27:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744226872; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I/QKrkhcsSHJaMG/WWIxdDMCjXAs0aQx7qk9v3yufxc=; b=m+lK0OsNzqNrUhHR62ss/ESZ8QIh7pmYWkZBeuIHnTzPOEgnj7oaf2ovBA1xZKcD6Sie3+ NfiIBKFM9wUULRwf0UnSrBdYc7WGwWsQe9CYlEd0AdOqauRC0wOpNN5DLc4jPsGeljUtR/ +KMo10lnXQ8xGUhTtgiMsOGkIlmHMGIiR+PO7cLvzUjyGaB3LWX3MV7OVevuxHvDiIi4XL hgSVXMYmHlwchM142d1i/FH9YK+m4F+SPiK+G4jbMIgg8e4doVMmZlRG6QbLEhXwJGmo1A JqUOiBxL0g6T0oOJMegBi4i9pybF09alzbcvib1cSPTkvyan/gZNv1xzJyC4vw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744226872; a=rsa-sha256; cv=none; b=dCSmEQLvEquhyeHMUzTs7MHBkYFP1NB3mY6WDZhvfx+KVfIE9/vayxHwihOrrXe8xkRlR0 xhi5zwEZszRNeUdHzID0J6pQ2yD37kJPsIOECK606qM2TzPeqTbtRGJpDgiZn0M7DtpoD9 b1bMK52jdgVLBMRdSCBjuT9ojiqGhiC4KJzIgVOaLKEOHzJeiOC6PvbFfwHQXGJpwofdwG lmY9AMGQ9Rnkhi95oPhXbgwf5d+zyavS0qNGXUlpBwZzpQehOMg1XuDhceup/t3EWy0v+9 XeujHPi1YWmWY5gNeZB2fyu4kLcJlzjZergT85OihKf/eVdMrgJ/ZdzoZNVmQg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744226872; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I/QKrkhcsSHJaMG/WWIxdDMCjXAs0aQx7qk9v3yufxc=; b=YRAi9s3bKDUgvz8E1bHKYS1IWPify1ebhWEwd38CzFv4/4Y8/fjdTSYqbFa9eFINkw2ge4 T3q18YebbGVAw6wRy2eTgw3TkBDv9r14uYaoi8EVB8wEZq9U4Bsz4tNkLrRJBIJCmUPpzQ ODoO1ZDuLGTSXQNLf0RCRbaZ0SKtF6PUMN4QO54zPhccGVEttWA9eiv2ElOu0xCF0xeCnI M9Eg0ftv7grhOaN2zqZ/LmP7i/H7VMsi5AKz20zO8oAmM3WdT5Y9EEoIszGWE95xzuLnLF 7zaS4HcMgcy/znD6+ALmXbjho0tlS8+oZE3ijmUCoH4osjDfqbVDDuQWMMwoMg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXtJS1n4tzVbs; Wed, 09 Apr 2025 19:27:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539JRqmO070459; Wed, 9 Apr 2025 19:27:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539JRqYm070456; Wed, 9 Apr 2025 19:27:52 GMT (envelope-from git) Date: Wed, 9 Apr 2025 19:27:52 GMT Message-Id: <202504091927.539JRqYm070456@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 22921f4b4aed - main - boot: Fall back to objcopy if usable for EFI components List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 22921f4b4aedb5017b727e62045130ab69c3dd1b Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=22921f4b4aedb5017b727e62045130ab69c3dd1b commit 22921f4b4aedb5017b727e62045130ab69c3dd1b Author: Ed Maste AuthorDate: 2025-03-25 13:34:23 +0000 Commit: Ed Maste CommitDate: 2025-04-09 19:26:54 +0000 boot: Fall back to objcopy if usable for EFI components In commit b885643b63e4 ("boot: Always use ELF Tool Chain elfcopy for EFI builds") I switched to using elfcopy for EFI_OBJCOPY, as llvm-objcopy lacks support for translating ELF objects to PE32+. This broke building on older releases with WITHOUT_ELFTOOLCHAIN_BOOTSTRAP set, as the host did not provide elfcopy and it was not built as a bootstrap tool. Now, if we're not bootstrapping ELF Tool Chain we check the output of `${OBJCOPY} --version`, and will use that ${OBJCOPY} as long as it is not llvm-objcopy. Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49722 --- stand/efi/Makefile.inc | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/stand/efi/Makefile.inc b/stand/efi/Makefile.inc index f91ac9102ca8..6bb0af1d84f3 100644 --- a/stand/efi/Makefile.inc +++ b/stand/efi/Makefile.inc @@ -1,3 +1,5 @@ +.include + # Options used when building app-specific efi components # See conf/kern.mk for the correct set of these CFLAGS+= -Wformat @@ -26,7 +28,20 @@ EFI_TARGET= efi-app-x86_64 .else EFI_TARGET= binary .endif + +# GNU or ELF Tool Chain objcopy is usable for building EFI objects. +# LLVM objcopy is not. Use elfcopy if we've bootstrapped it (and thus +# known to be available) or objcopy is LLVM's. +.if ${MK_ELFTOOLCHAIN_BOOTSTRAP} != "no" EFI_OBJCOPY?= elfcopy +.else +_v!= ${OBJCOPY} --version +.if ${_v:Mllvm-objcopy*} == "" +EFI_OBJCOPY?= ${OBJCOPY} +.else +EFI_OBJCOPY?= elfcopy +.endif +.endif # Arbitrarily set the PE/COFF header timestamps to 1 Jan 2024 00:00:00 # for build reproducibility. From nobody Wed Apr 9 19:30:42 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXtMk484vz5sGQm; Wed, 09 Apr 2025 19:30: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXtMk3bxCz45Mn; Wed, 09 Apr 2025 19:30:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744227042; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/zQ0tJl8CnGMMSrr1/Yk3JvKCeZq3TOcePaBT8XFsHI=; b=YL4V6qHnnGDiK542ApR2g9dEGwXv0Rng5qnEeKos1TxbPGdEll1UhAAKwJp+3ZGYQCPIHm 9rWf1MpmBp1SKhXrFMew6Dr5RUlQv624u5i17KcPghAsBkSVBQrTJuxO/k6zAwG8VbBzgk pyIG3/Tbeo+0uz5LyKXHwOa6V2M2fCESmtEJxwcbAnqMdhg4o8Jd/bqpjoo4JPIlXNAHRD 9BU3BNP2HnWWEQDizk+t4Ts3msY9mKE7Ze9sZKIgVWlhp949bag1DEnphRlUliztjFl2ra /NfRcOnJH8YclRLEujHXT0RszSSXpjj+Nee0uBpw+UQhFUFLwKvRaBwbEACcCw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744227042; a=rsa-sha256; cv=none; b=ezfbXi6XwTMF7hc0nxpyphpESSDBNkB8ECVobVwob2BxvYOisq4B2CeJmKPHAJKTOaQuAK uJWBLBIOBh9zzf+UHf1g6K2urb1tQl9Y+nIDbq3G2bvdn9dvwdaYJj8RVRDmJLP4xTICaX c7BNmHCHP+qbZlITnhOTdv9Pb3BRUxoawcFX8O7cLZ7THaxYDI+aFIp575bqwCLzABBEGk hXHGYV4OE5P6aN0pVSE+oVkmGsdVuq8uoxmYfhqUbMl0JTw/Q6dgaxV35B1Gb/pL+orCGZ W9N9mXnTQaaWLKe8rMFM/QrIxjTAt740l/AjagxF1Sshy3zx7YDyNU/Ci2w1Rg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744227042; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/zQ0tJl8CnGMMSrr1/Yk3JvKCeZq3TOcePaBT8XFsHI=; b=LX4DixkNmwH5Cul2obb0p1Rs0c06ZM6CrDN1fNLjz4ZiFGtFwGPrIMEfazdY8rQHj6VwyW ooejN+B6rCDVXST87jVuEswvUXHf4A0Cj+PtfqoGzcj2Wa1wtNou/DB9bzt5Q5sgPkHVh7 uGkaOzT9Vgu+Lzdax/FVp86B3e7/DIoYMsE5/rnX0nwA6OpXmj/q4RF5c8FvKZ6HOANNaM n8My0XjGh3fb/uCwSsDs9Va8eJZXqgSApIEDjwTOy3S1HtwhEaE3wVAESW/w7B41gwK5iD PmCvzXlu/sx41uH2nUtJxzbD8u+7bqg24/b9aXLeHDRO3hA4dAoa/MU+LKvgOQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXtMk34WzzVlL; Wed, 09 Apr 2025 19:30:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539JUgGK080003; Wed, 9 Apr 2025 19:30:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539JUgES079998; Wed, 9 Apr 2025 19:30:42 GMT (envelope-from git) Date: Wed, 9 Apr 2025 19:30:42 GMT Message-Id: <202504091930.539JUgES079998@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: d1f4b9ffabbc - main - pf: emit ICMPv6 packet too big for route-to List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d1f4b9ffabbcc2c29ab83435bd73b0670818bbd1 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=d1f4b9ffabbcc2c29ab83435bd73b0670818bbd1 commit d1f4b9ffabbcc2c29ab83435bd73b0670818bbd1 Author: Kristof Provost AuthorDate: 2025-04-09 12:38:39 +0000 Commit: Kristof Provost CommitDate: 2025-04-09 19:30:17 +0000 pf: emit ICMPv6 packet too big for route-to Based on OpenBSD's ae08e5b41d6 (by sashan ). We already implemented most of this (i.e. the refragmenting) but we did not send the packet-too-big error. Sponsored by: Rubicon Communications, LLC ("Netgate") --- sys/netpfil/pf/pf_norm.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/sys/netpfil/pf/pf_norm.c b/sys/netpfil/pf/pf_norm.c index 382f876234da..2dc4553bd4f4 100644 --- a/sys/netpfil/pf/pf_norm.c +++ b/sys/netpfil/pf/pf_norm.c @@ -43,6 +43,7 @@ #include #include +#include #include #include #include @@ -1051,7 +1052,13 @@ pf_refragment6(struct ifnet *ifp, struct mbuf **m0, struct m_tag *mtag, dst.sin6_len = sizeof(dst); dst.sin6_addr = hdr->ip6_dst; - nd6_output_ifp(rt, rt, m, &dst, NULL); + if (m->m_pkthdr.len <= if_getmtu(ifp)) { + nd6_output_ifp(rt, rt, m, &dst, NULL); + } else { + in6_ifstat_inc(ifp, ifs6_in_toobig); + icmp6_error(m, ICMP6_PACKET_TOO_BIG, 0, + if_getmtu(ifp)); + } } else if (forward) { MPASS(m->m_pkthdr.rcvif != NULL); ip6_forward(m, 0); From nobody Wed Apr 9 19:30:43 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXtMl5mvHz5sGLl; Wed, 09 Apr 2025 19:30:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXtMl48ZZz45Sq; Wed, 09 Apr 2025 19:30:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744227043; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3tsXdHr3Vhpzg9Y+sZU4q2VfClaHCFvPEVjJPzbmLkk=; b=OnVwZzJg4+7aBwrc71X2Ww4af8vOhhtVrqkdhBOU8p5+XSRHjqawnqKWsFSZ7KUSsC1rGq fPhzqxjkUWuYBoycQcQJT/5ApT0tEN8gtiK76hGh91KF5gwX1UR7hnv/uZCaoKsTb6QT9O pQ6vKdvqqZmEE/LoVuabrkHhWv29492/EPRCMiTQMLcvLHxtdkszTpauNJKR02GRNJHPlH ehAr93TjKaw9mIaepPpmD0EKDwV3ggCgxvCvIByMa+BzT1U5T7PDF+5jSUHsCFwT0olGOJ LzPU994imjvH8QkMQUb+AdpZvHY87XuTsUstAlZ460TvHHC8yxTw6tcPhAp2Yw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744227043; a=rsa-sha256; cv=none; b=FEpt0Z0xj6vEz9wevoVYoYnC34Bek3h8+x5Iar38/T9k1RUH8QT1XR9UeKB5+SU0dJlx12 rRMsM3GcgRYuA5XkfUHdn6vNoom4X9ImDlA3Dm4PCm03OwjTJBIcVdqdFNrNyLzBCwwKjL PUeeLt9ohsUr3grVtksYz01bMOKLHlHOLyR2C2kXFS6g6SQy15L98jnky+jqSlmIxobtPU yGtXbfhu8HZ9+Vhyal9KMRGubpJg3BCpt4GE8KKfVbJ8Jftfxaw1WYls/USwXN4r4jIZAT +mWJX0HkhksKE97gtiaZ0mHI7AfklCdACtP2Yf2W+KWcuA1vWgJ4YgZ/tJnOrw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744227043; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3tsXdHr3Vhpzg9Y+sZU4q2VfClaHCFvPEVjJPzbmLkk=; b=bSw2fPt+SvtGHfhxTPr67liktvHIQrp54KjRztPAGdAubCZwAGbrrsQrD4GhfjdDyFU6Ow t13UcknuoqYvm9iBWYgr9s621cgInqXDO6h5w9tmuBNwks2cZdlUC5a6DijJIIrxjI7hkj gRWnw60ob9F55Mk67D2LuF+1OIGCH1UbyEXrvZmzEdpaT4zcaui6FG5UrTzMFXN8fAFbns wvSdQAfRES/E2S7V6FM5ji9KAPoxetzMuK6tV1WipIClr4OLVL1L0Nt1fRKhoSz8IBWJfo ZMT7tFsmuJ5e1RciKFTNJsH/MiNbg3vLcAmHZMkEFmpPc6ekz2VeSWjuTmE9NQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXtMl3lYFzTwp; Wed, 09 Apr 2025 19:30:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539JUhxO080036; Wed, 9 Apr 2025 19:30:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539JUhH2080033; Wed, 9 Apr 2025 19:30:43 GMT (envelope-from git) Date: Wed, 9 Apr 2025 19:30:43 GMT Message-Id: <202504091930.539JUhH2080033@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: a4bd4e4b5632 - main - pf tests: verify that we generate an ICMP6 packet too big error on route-to List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a4bd4e4b5632ef0102f805b4b99e7a2ceacbab26 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=a4bd4e4b5632ef0102f805b4b99e7a2ceacbab26 commit a4bd4e4b5632ef0102f805b4b99e7a2ceacbab26 Author: Kristof Provost AuthorDate: 2025-04-09 12:04:36 +0000 Commit: Kristof Provost CommitDate: 2025-04-09 19:30:17 +0000 pf tests: verify that we generate an ICMP6 packet too big error on route-to Sponsored by: Rubicon Communications, LLC ("Netgate") --- tests/sys/netpfil/pf/frag6.py | 54 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/tests/sys/netpfil/pf/frag6.py b/tests/sys/netpfil/pf/frag6.py index 108b53874d0b..c9a71f73c0cf 100644 --- a/tests/sys/netpfil/pf/frag6.py +++ b/tests/sys/netpfil/pf/frag6.py @@ -141,3 +141,57 @@ class TestFrag6_Overlap(VnetTestTemplate): for p in packets: p.show() assert not p.getlayer(sp.ICMPv6EchoReply) + +class TestFrag6_RouteTo(VnetTestTemplate): + REQUIRED_MODULES = ["pf"] + TOPOLOGY = { + "vnet1": {"ifaces": ["if1"]}, + "vnet2": {"ifaces": ["if1", "if2"]}, + "vnet3": {"ifaces": ["if2"]}, + "if1": {"prefixes6": [("2001:db8::1/64", "2001:db8::2/64")]}, + "if2": {"prefixes6": [("2001:db8:1::1/64", "2001:db8:1::2/64")]}, + } + + def vnet2_handler(self, vnet): + if2name = vnet.iface_alias_map["if2"].name + ToolsHelper.print_output("/sbin/pfctl -e") + ToolsHelper.print_output("/sbin/pfctl -x loud") + ToolsHelper.pf_rules([ + "scrub fragment reassemble", + "pass in route-to (%s 2001:db8:1::2) from 2001:db8::1 to 2001:db8:666::1" % if2name, + ]) + + ToolsHelper.print_output("/sbin/ifconfig %s mtu 1300" % if2name) + ToolsHelper.print_output("/sbin/sysctl net.inet6.ip6.forwarding=1") + + def vnet3_handler(self, vnet): + pass + + def test_too_big(self): + ToolsHelper.print_output("/sbin/route add -6 default 2001:db8::2") + + # Import in the correct vnet, so at to not confuse Scapy + import scapy.all as sp + + pkt = sp.IPv6(dst="2001:db8:666::1") \ + / sp.ICMPv6EchoRequest(data=sp.raw(bytes.fromhex('f0') * 3000)) + frags = sp.fragment6(pkt, 1320) + + reply = sp.sr1(frags, timeout=3) + if reply: + reply.show() + + assert reply + + ip6 = reply.getlayer(sp.IPv6) + icmp6 = reply.getlayer(sp.ICMPv6PacketTooBig) + err_ip6 = reply.getlayer(sp.IPerror6) + + assert ip6 + assert ip6.src == "2001:db8::2" + assert ip6.dst == "2001:db8::1" + assert icmp6 + assert icmp6.mtu == 1300 + assert err_ip6 + assert err_ip6.src == "2001:db8::1" + assert err_ip6.dst == "2001:db8:666::1" From nobody Wed Apr 9 19:30:44 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXtMm5n9wz5sGHw; Wed, 09 Apr 2025 19:30: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXtMm4xwFz45Ms; Wed, 09 Apr 2025 19:30:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744227044; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=t8B3cBOOcUocvHed8UfocgGxc14n57qXj9UEX3XlbBM=; b=YyAFeacd4b1kQenYd5uYV9cb9MV+N8/kYNpcOtK4MZYg6gc6dquLDskeCXMtnxAGySjGz1 mMu+yCn/X+21Do+3a8NeuO29nggHQMWYFSFO19jqm8nYtfRPjP77/ctoEzXOQVzo/4wbIZ N1mEihEvkDQKiFlZLLgg3/z/nahyioYGRuCPXUaVkDtDPfM4t1TQHwmu21Udi7HjW3aMX/ AJZfLlPCwe4QQDNNBfLKq27FmTW+MdG+5DUk8AxY1CN7fecU7lpGu0W/X5bWvZbNu5n9sr oWOcM7Ty3DgyPlLuLZLTRPsP6AOTZmqrwNKYobJoiyO2pDGU/rbZcYo2qKpYmg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744227044; a=rsa-sha256; cv=none; b=fWLTKKFstGKDPmH6fihtBqG2izo9j1YEAc2Q2znYsFdloRMKMw4YpgBKhsqdugGXn+q9lY 4vpRp9liF+ZvPrycRPvmjzi5CHMbgZ4iMWMLmYxTg17Aeol9ktGbqRRwxCHb15KMyHdCO1 0oFgkEpA1BqNMK74OtobYLOeS1uuVaOUOKpMHyqZek7577wamojaUG+Xjx7EquykJvHqXl vgey5m92hs5BtA3fHv3nXCXLvLhzaJKPqYWSez5DKdu2zu6t6PpBVJHFek9AHOImfVbYls WkCQi6Zaf/PNr6jgq4C0NUnoCr8vM+I0LA42rgBt3lh5f42yj2WmYnfGdkkM1w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744227044; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=t8B3cBOOcUocvHed8UfocgGxc14n57qXj9UEX3XlbBM=; b=yJ8QCMDgSyDMrBbghb7FIrjIt/clouoIQaUrPGy9iN6CHw85hODaUXIvhtGm+moTP2CeFI fFXUExfSd3sifqRfQpFws9uTKDUf/rTEIE80mhc+YX1U2Qjm9YXVw7Jq5vJewkEntIVW0G T0Dr17m68gCaHWrETw63GJiZsZjsWc710a4LcRgXy0VitTCP0BH/oXG1v9mSE2+bPA8PJ0 U09w1DWqGnPjbqa98DQNcbuEdOMNaudmLUDOjOrtwAiO0sKgfyza93E9R16jTp14f2GfV6 +0QplLFLUwQa/vIzqDo+BCNh+7b6nm27CGDPisNqPNznLpwK2byCgzoyfO7Ljw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXtMm4LmGzVp0; Wed, 09 Apr 2025 19:30:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539JUi28080076; Wed, 9 Apr 2025 19:30:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539JUiad080073; Wed, 9 Apr 2025 19:30:44 GMT (envelope-from git) Date: Wed, 9 Apr 2025 19:30:44 GMT Message-Id: <202504091930.539JUiad080073@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 0a376f7e7e03 - main - pfctl: route-to, dup-to, reply-to should not override the block action List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0a376f7e7e0346654a74f2acf693187736c983a2 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=0a376f7e7e0346654a74f2acf693187736c983a2 commit 0a376f7e7e0346654a74f2acf693187736c983a2 Author: Kristof Provost AuthorDate: 2025-04-09 14:33:29 +0000 Commit: Kristof Provost CommitDate: 2025-04-09 19:30:17 +0000 pfctl: route-to, dup-to, reply-to should not override the block action Spotted by Dilli Paudel ok jung@, ok mikeb@ Add a pfctl test case to ensure this doesn't regress. Obtained from: OpenBSD, sashan , 1ae008c822 Sponsored by: Rubicon Communications, LLC ("Netgate") --- sbin/pfctl/parse.y | 14 ++++++++++++-- sbin/pfctl/tests/files/pf1067.fail | 1 + sbin/pfctl/tests/files/pf1067.in | 1 + sbin/pfctl/tests/pfctl_test_list.inc | 1 + 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/sbin/pfctl/parse.y b/sbin/pfctl/parse.y index 8c01da9e6220..6b85c1b36303 100644 --- a/sbin/pfctl/parse.y +++ b/sbin/pfctl/parse.y @@ -5362,8 +5362,9 @@ filter_consistent(struct pfctl_rule *r, int anchor_call) problems++; } } - /* match rules rules */ - if (r->action == PF_MATCH) { + /* Basic rule sanity check. */ + switch (r->action) { + case PF_MATCH: if (r->divert.port) { yyerror("divert is not supported on match rules"); problems++; @@ -5377,6 +5378,15 @@ filter_consistent(struct pfctl_rule *r, int anchor_call) yyerror("af-to is not supported on match rules"); problems++; } + break; + case PF_DROP: + if (r->rt) { + yyerror("route-to, reply-to and dup-to " + "are not supported on block rules"); + problems++; + } + break; + default:; } if (r->rdr.opts & PF_POOL_STICKYADDR && !r->keep_state) { yyerror("'sticky-address' requires 'keep state'"); diff --git a/sbin/pfctl/tests/files/pf1067.fail b/sbin/pfctl/tests/files/pf1067.fail new file mode 100644 index 000000000000..23ac1daad64f --- /dev/null +++ b/sbin/pfctl/tests/files/pf1067.fail @@ -0,0 +1 @@ +route-to, reply-to and dup-to are not supported on block rules diff --git a/sbin/pfctl/tests/files/pf1067.in b/sbin/pfctl/tests/files/pf1067.in new file mode 100644 index 000000000000..47f3bf6285dd --- /dev/null +++ b/sbin/pfctl/tests/files/pf1067.in @@ -0,0 +1 @@ +block in route-to (if0 127.0.0.1/8) diff --git a/sbin/pfctl/tests/pfctl_test_list.inc b/sbin/pfctl/tests/pfctl_test_list.inc index 6a8d76390bd6..7e43556d2c4d 100644 --- a/sbin/pfctl/tests/pfctl_test_list.inc +++ b/sbin/pfctl/tests/pfctl_test_list.inc @@ -175,3 +175,4 @@ PFCTL_TEST_IFACE(1063, "Interface translation: IPv6 rule, interface with bracket PFCTL_TEST_IFACE(1064, "Interface translation: IPv6 rule, interface with brackets is not translated, extra host, round robin is applied") PFCTL_TEST(1065, "no nat") PFCTL_TEST(1066, "no rdr") +PFCTL_TEST_FAIL(1067, "route-to can't be used on block rules") From nobody Wed Apr 9 19:30:45 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXtMn6p3Vz5sG9f; Wed, 09 Apr 2025 19:30: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXtMn5MqBz45Y2; Wed, 09 Apr 2025 19:30:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744227045; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FD3a5zpVpEp4AjMvfrVFDdaIixhtTUyc3Am+ghxd/Y8=; b=LViTsGIZPC1974gHatDezhrkTXlrsV4MHN6yPll4CTUs1bvWVub8ZN2q/z/Hj5T7Aq99Tg PkxzGnhp2iQ48Cc+H/C8lmLAgS92KEMtbggJwK61cITWdFSBEyLjyW4415h2xlWg3tIfoH kp08q/NQ2h/ObCJYDU7q1xdTcLD+IaU4YPFxp105sGuKQdHhmtjJ3tQtVi7i1th763wps7 wC4C7Cf5vn9WRSFz8ow47umh2PfqyeHblZD9T7hftjgPoRL1drKq0Yly7n/7ecxT/59s7S 8/bu6MWM0lskjnQijEfqjX4bRaFdCbMYHRtvaE/wffcBVKT3YSB5ZRFj0UZQsw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744227045; a=rsa-sha256; cv=none; b=m3GGkr5F0l9l5nqRfF0EooTXVByJL8n5ymoQD6AW1a1LBQFK64GgwookzKJfJjnE4ktFHH zr0eDUTMI3YfOgp55Lu2PNqMDSwtG5oL5gL7kbnHkFXzhA8+Et/bIM9lcR0I34XbkjVDFy B8wF9+6E446xVuUH02OmLZxockeIAuaf2D38MtKgZu2kt9vguzsx+KNw0V5ccDgoaGuzfE 36Dl8i4nLm+94PF9ObxfGkPrQNiQtd3ZER4Db1B4TzRg9wkjRo7sKoKKGZjF0yHzOEjjdq ymm0Nc0HOhN49JJxLAN45ePktM6l5rp+kR0Dqh9ZuEmljkgYdiKhUShQ+Oxtng== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744227045; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FD3a5zpVpEp4AjMvfrVFDdaIixhtTUyc3Am+ghxd/Y8=; b=WEkgb/9TdYIUbz7quRSL9kW5cWxjxrdndikYUONSiN/MQAuJZHJAoqCG+MwalExnW6LbQj B4bhgD5ZQvodq/upO80CvGrZCjkc6LWJpGKEMKPYAMQ+26Zxl06Q+2sxOUddF1md5PODBH tHyhRfFF3D02FaUyUB2Hs+dUvGUELUP1b6GsnRibutBGa6aLee8BlpvKtra4CRZztxwqmr oWh0NzG7OrWRiLXjTYuUlYaJqa1UqT9SZSSGIb63/gYoxHwH9Y4i+wBtGBdlCCUt8WeUqd y74zFJwrM+WuQqFJK6pO7oRCgwSi4kasZ2APmaSeaFjqQ5G/oNZB3+pZ8r55Ug== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXtMn4vtyzVlN; Wed, 09 Apr 2025 19:30:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539JUji2080110; Wed, 9 Apr 2025 19:30:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539JUj3U080106; Wed, 9 Apr 2025 19:30:45 GMT (envelope-from git) Date: Wed, 9 Apr 2025 19:30:45 GMT Message-Id: <202504091930.539JUj3U080106@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 75fd973198f4 - main - pf.conf.5: improve indentation in list block. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 75fd973198f47115ba4c54a9ed990fbce0a80f1c Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=75fd973198f47115ba4c54a9ed990fbce0a80f1c commit 75fd973198f47115ba4c54a9ed990fbce0a80f1c Author: Kristof Provost AuthorDate: 2025-04-09 15:12:10 +0000 Commit: Kristof Provost CommitDate: 2025-04-09 19:30:17 +0000 pf.conf.5: improve indentation in list block. ok jmc@ Obtained from: OpenBSD, sobrado , c8bf419d08 Sponsored by: Rubicon Communications, LLC ("Netgate") --- share/man/man5/pf.conf.5 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/share/man/man5/pf.conf.5 b/share/man/man5/pf.conf.5 index 704f43a30f83..bc9157d6a5f8 100644 --- a/share/man/man5/pf.conf.5 +++ b/share/man/man5/pf.conf.5 @@ -27,7 +27,7 @@ .\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd February 14, 2025 +.Dd April 9, 2025 .Dt PF.CONF 5 .Os .Sh NAME @@ -167,7 +167,7 @@ will be cleared on load. .El .Pp Tables may be defined with the following attributes: -.Bl -tag -width persist +.Bl -tag -width counters .It Ar persist The .Ar persist From nobody Wed Apr 9 19:30:47 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXtMt6TzYz5sGWH; Wed, 09 Apr 2025 19:30: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXtMr0Bt4z45N8; Wed, 09 Apr 2025 19:30:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744227048; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=boKdLqqZGlDIj0aW3GMDTu/V0jvWL38sXbEy6CnYmnE=; b=aOi0Qo4OF1xKv6NQKpk2ZtnaxlA4PPyJXw+zS/G4rtqJf8r1szukBFNJnHtgrh5aFomt9A MYoYHQOXQL3wne1s+q7Nwos1rZUDbTmcw+drjk+6FXrNhbD7bOaU5KIOdnsIF9J7cFVMDS m1oatHNHXHawP5506LVI0FkIT90jdvLybvYj7jrYo2b5SM8PyQ4ybALpe80rsnb4VLNRhM 9RNpIOn5RsN7bh1nhI3VipBtCF00/4lngeMb8ucVuoPY11qVdnv6BVXLVwjMJ7meMch2GF URBH1Mh/dq2eZ3JcyKuzSU8uyxHGxIkGfe7j5wk47kzwVZWelEp4Vzawa9YIDw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744227048; a=rsa-sha256; cv=none; b=Dp8YhCD5OCjcOgJpILxmULsC9ciEO4wpdpLlIyWtGAlattr066u3439h2PK2F2KhR9sBHy JZx7l6ohM1FdSSEYSp6ZU51qiFost3RmORlk9m6yn4m7Y05xVoowt14r0DpVSqSASVI4/Y hPwdGjE5eWDpOIkD/rhw/pvVTmCfzURT4kr7dnB2bsMmWwWrNRas5A12OS5NNs5NGKNU+Z FfChzPwdc1vORMw9NCE2jeW/2iC/sniQGIWybS1VvwLaVmYzmCEWQ8CYt+98+QhSIOa7+U gcUpZdoOasok5Rg3sht+hiNy1PmrhqCWsjDBo8KtW6oWQ/T28oTNuZUaOeqKfQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744227048; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=boKdLqqZGlDIj0aW3GMDTu/V0jvWL38sXbEy6CnYmnE=; b=gM+a1P/yvuomAX2rp8NKeIZZKCacJpf/iWhEjbKNo0XBi7oFBlKuQoItFBDq+mF3bjYxyu LdPOTE4H6RbegkaCCagZTjMFQUClQo74bwy9nFz/xnz9SEDLjRP+rN4n7YJr4yq6eRPiLu ag5xyYY6iuLGTx/Zx2cOenHIV7pCwARyhk4Y/oCy6cohfhmxgk4ZJgEZOTgEMcoRJNyiPz iAIM24zGVyuaY6zTJgbEZAezSzqEcRAwy/AAweiD3lOjoSsRttyIYVkxKZ4qovmfl+T13N nAsmz7K4WUtvhtEmJJquW/U7f/0bjU9zmETZv/P2EJDqwknuV2TFENlrQdcmVg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXtMq6p07zV14; Wed, 09 Apr 2025 19:30:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539JUlBe080176; Wed, 9 Apr 2025 19:30:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539JUldh080173; Wed, 9 Apr 2025 19:30:47 GMT (envelope-from git) Date: Wed, 9 Apr 2025 19:30:47 GMT Message-Id: <202504091930.539JUldh080173@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: ea6432cfa3c4 - main - pf: rename pf_unlink_state() to pf_remove_state() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ea6432cfa3c4c56406de5b0060640f9023c210aa Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=ea6432cfa3c4c56406de5b0060640f9023c210aa commit ea6432cfa3c4c56406de5b0060640f9023c210aa Author: Kristof Provost AuthorDate: 2025-04-09 15:36:16 +0000 Commit: Kristof Provost CommitDate: 2025-04-09 19:30:17 +0000 pf: rename pf_unlink_state() to pf_remove_state() The OpenBSD rationale ('so the name does not collide with the statekey to inp unlinking') doesn't apply to us, but it makes future imports easier if we follow this rename. Obtained from: OpenBSD, bluhm , acb93c8a64 Sponsored by: Rubicon Communications, LLC ("Netgate") --- sys/net/pfvar.h | 2 +- sys/netpfil/pf/if_pfsync.c | 4 ++-- sys/netpfil/pf/pf.c | 14 +++++++------- sys/netpfil/pf/pf_ioctl.c | 10 +++++----- 4 files changed, 15 insertions(+), 15 deletions(-) diff --git a/sys/net/pfvar.h b/sys/net/pfvar.h index 74926581e247..e3a8412bde73 100644 --- a/sys/net/pfvar.h +++ b/sys/net/pfvar.h @@ -2331,7 +2331,7 @@ extern void pf_unload_vnet_purge(void); extern void pf_intr(void *); extern void pf_purge_expired_src_nodes(void); -extern int pf_unlink_state(struct pf_kstate *); +extern int pf_remove_state(struct pf_kstate *); extern int pf_state_insert(struct pfi_kkif *, struct pfi_kkif *, struct pf_state_key *, diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c index b2aaf3add25c..0795c75e8de0 100644 --- a/sys/netpfil/pf/if_pfsync.c +++ b/sys/netpfil/pf/if_pfsync.c @@ -1051,7 +1051,7 @@ relock: LIST_FOREACH(s, &ih->states, entry) { if (s->creatorid == creatorid) { s->state_flags |= PFSTATE_NOSYNC; - pf_unlink_state(s); + pf_remove_state(s); goto relock; } } @@ -1440,7 +1440,7 @@ pfsync_in_del_c(struct mbuf *m, int offset, int count, int flags, int action) } st->state_flags |= PFSTATE_NOSYNC; - pf_unlink_state(st); + pf_remove_state(st); } return (len); diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index d05469ad959b..fdd412a92135 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -1910,7 +1910,7 @@ pf_find_state(struct pfi_kkif *kif, const struct pf_state_key_cmp *key, if (__predict_false(s->timeout >= PFTM_MAX)) { /* * State is either being processed by - * pf_unlink_state() in an other thread, or + * pf_remove_state() in an other thread, or * is scheduled for immediate expiry. */ PF_STATE_UNLOCK(s); @@ -1930,7 +1930,7 @@ pf_find_state(struct pfi_kkif *kif, const struct pf_state_key_cmp *key, if (__predict_false(s->timeout >= PFTM_MAX)) { /* * State is either being processed by - * pf_unlink_state() in an other thread, or + * pf_remove_state() in an other thread, or * is scheduled for immediate expiry. */ PF_STATE_UNLOCK(s); @@ -2730,7 +2730,7 @@ pf_src_tree_remove_state(struct pf_kstate *s) * unlocked, since it needs to go through key hash locking. */ int -pf_unlink_state(struct pf_kstate *s) +pf_remove_state(struct pf_kstate *s) { struct pf_idhash *ih = &V_pf_idhash[PF_IDHASH(s)]; @@ -2740,7 +2740,7 @@ pf_unlink_state(struct pf_kstate *s) if (s->timeout == PFTM_UNLINKED) { /* * State is being processed - * by pf_unlink_state() in + * by pf_remove_state() in * an other thread. */ PF_HASHROW_UNLOCK(ih); @@ -2837,7 +2837,7 @@ relock: LIST_FOREACH(s, &ih->states, entry) { if (pf_state_expires(s) <= time_uptime) { V_pf_status.states -= - pf_unlink_state(s); + pf_remove_state(s); goto relock; } s->rule->rule_ref |= PFRULE_REFS; @@ -6982,7 +6982,7 @@ pf_test_state(struct pf_kstate **state, struct pf_pdesc *pd, u_short *reason) } /* XXX make sure it's the same direction ?? */ pf_set_protostate(*state, PF_PEER_BOTH, TCPS_CLOSED); - pf_unlink_state(*state); + pf_remove_state(*state); *state = NULL; return (PF_DROP); } @@ -7019,7 +7019,7 @@ pf_test_state(struct pf_kstate **state, struct pf_pdesc *pd, u_short *reason) (dst->state >= SCTP_SHUTDOWN_SENT || dst->state == SCTP_CLOSED) && pd->sctp_flags & PFDESC_SCTP_INIT) { pf_set_protostate(*state, PF_PEER_BOTH, SCTP_CLOSED); - pf_unlink_state(*state); + pf_remove_state(*state); *state = NULL; return (PF_DROP); } diff --git a/sys/netpfil/pf/pf_ioctl.c b/sys/netpfil/pf/pf_ioctl.c index 45e6e9f0bb9a..3ee5173c1313 100644 --- a/sys/netpfil/pf/pf_ioctl.c +++ b/sys/netpfil/pf/pf_ioctl.c @@ -2296,7 +2296,7 @@ pf_kill_matching_state(struct pf_state_key_cmp *key, int dir) return (0); } - pf_unlink_state(s); + pf_remove_state(s); return (1); } @@ -2393,7 +2393,7 @@ relock_DIOCKILLSTATES: match_key.port[1] = s->key[idx]->port[0]; } - pf_unlink_state(s); + pf_remove_state(s); killed++; if (psk->psk_kill_match) @@ -5963,7 +5963,7 @@ relock: s->timeout = PFTM_PURGE; /* Don't send out individual delete messages. */ s->state_flags |= PFSTATE_NOSYNC; - pf_unlink_state(s); + pf_remove_state(s); goto relock; } PF_HASHROW_UNLOCK(ih); @@ -6121,7 +6121,7 @@ relock_DIOCCLRSTATES: * delete messages. */ s->state_flags |= PFSTATE_NOSYNC; - pf_unlink_state(s); + pf_remove_state(s); killed++; if (kill->psk_kill_match) @@ -6150,7 +6150,7 @@ pf_killstates(struct pf_kstate_kill *kill, unsigned int *killed) kill->psk_pfcmp.creatorid = V_pf_status.hostid; if ((s = pf_find_state_byid(kill->psk_pfcmp.id, kill->psk_pfcmp.creatorid))) { - pf_unlink_state(s); + pf_remove_state(s); *killed = 1; } return; From nobody Wed Apr 9 19:30:46 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXtMr5csWz5sGHy; Wed, 09 Apr 2025 19:30:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXtMp6CwRz45gp; Wed, 09 Apr 2025 19:30:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744227046; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QWJ8qg3yEZRgMqIAuF2sCkOfhuVFUoDLLQO4SEPe1bI=; b=gyGZusu978cw6GS+5lqz2jgXJcg5snZjLozok/j24d3WVBBFh2IqOU1NmHHzCiDmh0w0ON 9kWn3ZtBO2rpvFkUiKKe2g91MfQzcvObfiMkzk1NDdjtSyDTV2dUWmFZrONMmBtapIdNDd euqHRjueB8CY2AoDG6gWTvcbDN1425mxvX+eCqUOsp3sVfER0alI9l/uqvkyPqR5u4JEHB dAcE2wd46Lfh+ixoZ6CHRHjPHa+U5KkIpxM+aW+gcAriIxvX7fpKbaZUe+3l0bNekAV9uG MWum/tV61IUDLPDZWuyTEulkwU+MXsjiHPPWPERjBYq1XHYDN1aEDW34OD5jXw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744227046; a=rsa-sha256; cv=none; b=X8d2UyclUUTBMOFWwWAWdZfQdiO2+53L4ccaazkYQNgovhInrN5JpHrz6ldsDh9HR9g9gt QIkFOJDlQqW8zaOOYv0bzmM6O17ZIPMuQ7HJt9m/LC+Gr+SHXsLHHdMqXd1NLZEh5WDHEn 66JhABMAyEiCRapbj25O1RuKMg4XdMuchNM7t7ccbTpKK2+3shoeYK8gKqb/dfDWHYT9Ol gnXwYIBHz/EVO7TfxxWfpCnwbLc8Ipl6m52gAuWrKEHimUnqAwbbDN21x4lzvT6+0htxQn buGt00vH/h9DWPV0cmU2fQLpI0EKleNYsDEpMWbtjDCW4M+bwM01xZmbgf2Log== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744227046; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QWJ8qg3yEZRgMqIAuF2sCkOfhuVFUoDLLQO4SEPe1bI=; b=TWlfBnMgvMaQSC1yL3GgsDHCHbcl+89O1Y9zK9u8n2PC0pvCf2nsiSBFE+gO6QUiORBlfH RjZQVYb2KEsg4H+UalDOtjAwGDMkb8QCYwAIrABMGAauVcPrgo6b55Ds7T3cEzv+MqBtze E4cFcj9XYxQAudlPXZ16zgWX5XvVv2mzyPU52L9SeoJsnT/gZNwbgKluqoTmCtDJ7Gvday R8fHHdYNpPX2c8AS3/kmKFuEVXPuV9oq6232Z48FIeKcNiuOeQzO00gsP9/bKxUCsXFt4v L2Wc6GM7Wn+xQY6377NVg8CXQXAZkqZ88jIA5BxwHBiNloHUVilq9fo7gkNnwQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXtMp5ksQzVlP; Wed, 09 Apr 2025 19:30:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539JUkpn080143; Wed, 9 Apr 2025 19:30:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539JUkIE080140; Wed, 9 Apr 2025 19:30:46 GMT (envelope-from git) Date: Wed, 9 Apr 2025 19:30:46 GMT Message-Id: <202504091930.539JUkIE080140@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 02a12814c14f - main - pf.conf.5: remove incorrect performance comparison List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 02a12814c14fb699195703a647cf4a0393586ebe Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=02a12814c14fb699195703a647cf4a0393586ebe commit 02a12814c14fb699195703a647cf4a0393586ebe Author: Kristof Provost AuthorDate: 2025-04-09 15:28:24 +0000 Commit: Kristof Provost CommitDate: 2025-04-09 19:30:17 +0000 pf.conf.5: remove incorrect performance comparison In FreeBSD's pf the state lookup is done through a hash table, not an RB tree as on OpenBSD. Remove a misleading line from the man page. Sponsored by: Rubicon Communications, LLC ("Netgate") --- share/man/man5/pf.conf.5 | 4 ---- 1 file changed, 4 deletions(-) diff --git a/share/man/man5/pf.conf.5 b/share/man/man5/pf.conf.5 index bc9157d6a5f8..64da49845a32 100644 --- a/share/man/man5/pf.conf.5 +++ b/share/man/man5/pf.conf.5 @@ -1659,10 +1659,6 @@ allows echo requests (such as those created by out statefully, and matches incoming echo replies correctly to states. .Pp Also, looking up states is usually faster than evaluating rules. -If there are 50 rules, all of them are evaluated sequentially in O(n). -Even with 50000 states, only 16 comparisons are needed to match a -state, since states are stored in a binary search tree that allows -searches in O(log2 n). .Pp Furthermore, correct handling of ICMP error messages is critical to many protocols, particularly TCP. From nobody Wed Apr 9 20:34:12 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXvn10VFjz5sL7t; Wed, 09 Apr 2025 20:34: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXvn06Q2Qz3YrZ; Wed, 09 Apr 2025 20:34:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744230852; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=00ptvynx5UUS2Bv2+QLc8V6Tz70yVETAfsTTkruvvCo=; b=bPe9LzZj/OPTF1mBH5OM1uVMU3/Ox0Klt9aSQV/2846Phw2zWeFivFB7thROuU0sL5OabB 9Jj8vSFIHklBUdl6vsSs7rb5qWJfj+a+M7ikfC2lcfUEC6JzYPQ6riWGdhrw7xHVqy39he WUX0z9FXOQ6NtLKJUAZrI7PVzfl9wHb6h2h6mQ6I7o5/jlCCuiaHZ03SLg6mYMMqsVIlRj 8zAtWZ3fHfOz+zxGM3OaGVfBq5FI14abN4QLuJXIBvI4rOA9/8d3ChVhxEUd4D1KI9SNNA qZxn/vQX1lLNgP7ET+rfVm6AH8lkvC8NPn+D/aMK/mbcMZ9XLrSNu8qU7zNlRw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744230852; a=rsa-sha256; cv=none; b=lPTK3fRfgArZtjuv/TdRA6KOA292u1WH+yp42zApfg+OcC/quyZwZUCiH7CQ/OJJeTcXwm JPdfqniZpSy02ydjvXgVRd3PchpYb8oMWhZ0wY/9pkESzkdpBvpoaMr2WvD9VTvX04kSul E/nJx+AvjXXlqvK01mNWMNKgYkQOutk5qS9EWwgHhkylb2FZlQmA20nCWsMftgKuND/MUV qmt8eySC2R9fp1qA0d9vER0exz6GKy/ubd41KPUUHOpAii62egUDGCW8fi07/EZNxAVpnc 62MIubsNIXc0j1WyF3qMI/pcrVoKQVZPqeaaJQRL7+1pCBcl1bnTtku4u9h1fQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744230852; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=00ptvynx5UUS2Bv2+QLc8V6Tz70yVETAfsTTkruvvCo=; b=IZcHsG7CFDWAcpKC/RQAOyo14WiebRWBF6oANruEoengszM6NVarJ9yBKHXYGlwPNn3lSe nZkYIVqaUsOBTqECVs19U4Xtk/E2oaSMnZTXihPDUnIidEPl1MTSvsEGTcbNTv2VJYhDUq 4Qn8Nm2ImEK18CDCkktY0oqeiOi83eZa8/2Xt7gqu9D8WI2/Fzu4tkMdJrNTLzk9qMo3/i Al7CpvJMI9NiS8WIbL0Op0PAGYJYD5pbQHgeS2cQ4I5iJAq6yHJksiPzcSugJ1rEhe7Ekn WeFebyQgDerZ2Soi/aSmmOs9ShQmJQAPrC0l/t4GsV7szwy1v8m6QbONzYPJwg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXvn05nr8zYn8; Wed, 09 Apr 2025 20:34:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539KYCOB001365; Wed, 9 Apr 2025 20:34:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539KYCpg001362; Wed, 9 Apr 2025 20:34:12 GMT (envelope-from git) Date: Wed, 9 Apr 2025 20:34:12 GMT Message-Id: <202504092034.539KYCpg001362@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Alfredo Dal'Ava Junior" Subject: git: 9357c694e8dc - main - keymaps: add map for some Lenovo laptops found in Brazillian market List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: alfredo X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9357c694e8dca627c25b15529e8435b2ab3dd48b Auto-Submitted: auto-generated The branch main has been updated by alfredo: URL: https://cgit.FreeBSD.org/src/commit/?id=9357c694e8dca627c25b15529e8435b2ab3dd48b commit 9357c694e8dca627c25b15529e8435b2ab3dd48b Author: Alfredo Dal'Ava Junior AuthorDate: 2025-03-25 19:35:38 +0000 Commit: Alfredo Dal'Ava Junior CommitDate: 2025-04-09 20:30:24 +0000 keymaps: add map for some Lenovo laptops found in Brazillian market Some laptops sold in Brazil have the key "/, ?" in same position where it should be the right control key. Reported by: Andrei Drusian Tested by: Andrei Drusian MFC After: 1 week --- share/vt/keymaps/INDEX.keymaps | 3 + share/vt/keymaps/br.lenovo.kbd | 160 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 163 insertions(+) diff --git a/share/vt/keymaps/INDEX.keymaps b/share/vt/keymaps/INDEX.keymaps index 278f9ec9f373..a3b59989cc5d 100644 --- a/share/vt/keymaps/INDEX.keymaps +++ b/share/vt/keymaps/INDEX.keymaps @@ -83,6 +83,9 @@ br.noacc.kbd:fr:Brésilien (sans accents) br.noacc.kbd:pt:Brasileiro (without accent keys) br.noacc.kbd:es:Brasileño (without accent keys) +br.lenovo.kbd:en:Brazilian Lenovo Laptop (accent keys, with slash in place of right Ctrl) +br.lenovo.kbd:pt:Brasileiro Lenovo Laptop (com acentos, com barra no lugar do Ctrl da direita) + by.kbd:en:Belarusian by.kbd:da:Hviderussisk by.kbd:de:Weißrussisch diff --git a/share/vt/keymaps/br.lenovo.kbd b/share/vt/keymaps/br.lenovo.kbd new file mode 100644 index 000000000000..c5cd3be60b09 --- /dev/null +++ b/share/vt/keymaps/br.lenovo.kbd @@ -0,0 +1,160 @@ +# +# Keymap for Lenovo laptops (Thinkpad, Ideapad, Yoga, Legion) +# +# Some laptops sold in Brazil have written "/, ?" in same position +# where it should be the right control key. The keyboard sends +# the incorrect scancode. +# +# This map should be the same as br.keymap, but with 090 (rctrl) +# replaced by 115 scancode content (?, /, 0xb0). +# +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop 0xb9 '!' nop nop O + 003 '2' '@' nul nul 0xb2 '@' nul nul O + 004 '3' '#' nop nop 0xb3 '#' nop nop O + 005 '4' '$' nop nop 0xa3 '$' nop nop O + 006 '5' '%' nop nop 0xa2 '%' nop nop O + 007 '6' duml rs rs 0xac duml rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '-' '_' us us '-' '_' us us O + 013 '=' '+' nop nop 0xa7 '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 '/' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb '?' 'W' etb etb C + 018 'e' 'E' enq enq 0x00b0 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 dacu dgra nop nop dacu dgra nop nop O + 027 '[' '{' esc esc 0xaa '{' esc esc O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xe7 0xc7 nop nop 0xe7 0xc7 nop nop C + 040 dtil dcir nop nop dtil dcir nop nop O + 041 ''' '"' nop nop ''' '"' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 ']' '}' gs gs 0xba '}' gs gs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 0x20a2 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 ';' ':' nop nop ';' ':' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del ',' ',' ',' ',' ',' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '\' '|' fs fs '\' '|' fs fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 '/' '?' nop nop 0xb0 '?' nop nop O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 nop nop nop nop nop nop nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 '.' '.' '.' '.' '.' '.' '.' '.' N + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) From nobody Wed Apr 9 20:54:02 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXwCt4j9Hz5sMm0; Wed, 09 Apr 2025 20:54: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXwCt46TYz3jDl; Wed, 09 Apr 2025 20:54:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744232042; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HBLI80pkH1OaJ8uTDCz1i9LDqemOmNFip3tvcEDVAsQ=; b=bDdq/cj72SoMbKAU14cpQTeJsuvTtxhyZZdtjM5caSQLI1ioPw6hLQX2Txa1cPVTfYYQxR ncnszineEeXCrCg8PlqFbLcwqIGIpDL7hrQjE4YndOEHyfzgP6Hvt/eStGN3bufk/lprcS JBqrH8vnA6Z6jF7CvtA2lHCO9QIxBN5lLjENhK8Ljy4Vc6F9c0/w3ACzAxwDNU+elJbxDW 4OW90uoFwA1cZbdOc7z1q+/PP+9ElLaNLoWoyoEh9YI3dT2W6LAGNOt7YL19w7glc8XhEI X0oeOlMoBJ0DMQRLK23XW0arAG1Kq1yDdmAV2uZkcRZyJcJfZFdgmTcJMlgBNA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744232042; a=rsa-sha256; cv=none; b=AOUCvp61DDfdO9q4iifNa7qXhX4WztiyTh4f8Dl2tSVHuhUJvhyjHHQCV+MKAeo1dG6MvC Ml/e4ojQNMtJjzzjz7UkEdhigwO6APwfHKYTIJ/qIx28pux98DTb7JZY8Hf3wtCX0zPYcY Zx+eILNcUfdDITCSlf57ejxPDWT1MOhm8gETMn2qWliusOmwPS/voMARsrsdSlpGApNS35 DD1NszkPCUI74r974XahR1uAinDvaHiHxB7QGtXtNPeYE77z2KGC2Qs+KXfGHOo/W7ZlBX GsmcVe2iMF4A2HzNJ3Wb69rVg53V/fd5Yf8hIX5wElpbLocbQht/FlReqQLUDA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744232042; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HBLI80pkH1OaJ8uTDCz1i9LDqemOmNFip3tvcEDVAsQ=; b=Te5NcVCyx0ZTZ9pBcVX1STqNGY5j2KfArGB0F074HYu4B9T6D0k0Wq+L+Mkb2RsKWzEAch PxdjsjdY90PdhUQW6vC4ynWEVgNzAZX9tD4InUAllpc7EQhFhGUzviDH5imeCRWBDfIDvX ikIgc/SWKynL/RhO/ocDfmuiKvtLf7W5wbvMrGbjcIbbTHmHDlmzeIpl/dQQIyke2QVZtx GccmPAY8naYjrqAbEdSiJXj3k/38fpkMsRJ62Ao4rkEPBFHucwHc7WF7lSk5S7H4J7dbL8 A5mCYVdK19Owu5ZuP8UmSVv7JESJCD3SkVJ1Z/iVzATbYlXJONWzlsxS3/00ng== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXwCt3kDSzZHc; Wed, 09 Apr 2025 20:54:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539Ks2s5038219; Wed, 9 Apr 2025 20:54:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539Ks29f038216; Wed, 9 Apr 2025 20:54:02 GMT (envelope-from git) Date: Wed, 9 Apr 2025 20:54:02 GMT Message-Id: <202504092054.539Ks29f038216@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: b86e89713694 - main - full-test.sh: Limit to just aarch64 and amd64, as that's all that works List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b86e8971369403e1f347c0354e4ccf480d7a666a Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=b86e8971369403e1f347c0354e4ccf480d7a666a commit b86e8971369403e1f347c0354e4ccf480d7a666a Author: Warner Losh AuthorDate: 2025-04-09 20:53:31 +0000 Commit: Warner Losh CommitDate: 2025-04-09 20:53:31 +0000 full-test.sh: Limit to just aarch64 and amd64, as that's all that works Only aarch64 and amd64 are working. For the moment, comment out everything else until I can make it work too. The others build, to be fair, but don't work or haven't been confirmed to work. Sponsored by: Netflix --- tools/boot/full-test.sh | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/tools/boot/full-test.sh b/tools/boot/full-test.sh index 370088f120bb..43967913e76f 100644 --- a/tools/boot/full-test.sh +++ b/tools/boot/full-test.sh @@ -366,7 +366,7 @@ make_linuxboot_scripts() if [ ${bios_code} -ot /usr/local/share/qemu/edk2-x86_64-code.fd ]; then cp /usr/local/share/qemu/edk2-x86_64-code.fd ${bios_code} # vars file works on both 32 and 64 bit x86 - cp /usr/local/share/qemu/edk2-i386-vars.fd ${bios_vars} +# cp /usr/local/share/qemu/edk2-i386-vars.fd ${bios_vars} fi ;; aarch64) @@ -448,7 +448,8 @@ EOF make_freebsd_esps() { # At the moment, we have just three (armv7 could also be here too, but we're not doing that) - for a in amd64:amd64 arm64:aarch64 riscv:riscv64; do +# for a in amd64:amd64 arm64:aarch64 riscv:riscv64; do + for a in amd64:amd64 arm64:aarch64; do m=${a%%:*} ma=${a##*:} ma_combo="${m}" @@ -470,7 +471,8 @@ make_freebsd_images() { # ESP variant: In this variant, riscv, amd64 and arm64 are created more or # less the same way. UEFI + ACPI implementations - for a in amd64:amd64 arm64:aarch64 riscv:riscv64; do +# for a in amd64:amd64 arm64:aarch64 riscv:riscv64; do + for a in amd64:amd64 arm64:aarch64; do m=${a%%:*} ma=${a##*:} ma_combo="${m}" @@ -495,6 +497,7 @@ EOF set -x +if false; then # BIOS i386 a=i386:i386 m=${a%%:*} @@ -541,6 +544,7 @@ EOF -p freebsd-boot:=${dir2}/boot/boot1.hfs \ -p freebsd-ufs:=${ufs} \ -o ${img} +fi set +x } @@ -562,7 +566,7 @@ make_freebsd_scripts() if [ ${bios_code} -ot /usr/local/share/qemu/edk2-x86_64-code.fd ]; then cp /usr/local/share/qemu/edk2-x86_64-code.fd ${bios_code} # vars file works on both 32 and 64 bit x86 - cp /usr/local/share/qemu/edk2-i386-vars.fd ${bios_vars} +# cp /usr/local/share/qemu/edk2-i386-vars.fd ${bios_vars} fi ;; aarch64) @@ -609,6 +613,7 @@ EOF esac done +if false; then set -x a=powerpc:powerpc m=${a%%:*} @@ -644,6 +649,7 @@ ${qemu_bin}/qemu-system-i386 -m 1g \\ -monitor telnet::4444,server,nowait \\ -serial stdio \$* EOF +fi } # The smallest FAT32 filesystem is 33292 KB From nobody Wed Apr 9 20:54:03 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXwCv6cJFz5sMnt; Wed, 09 Apr 2025 20:54:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXwCv5Qp3z3jg6; Wed, 09 Apr 2025 20:54:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744232043; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kYqm2WmvinwBo1RtrNTe87MGd3nYreZc5iYzjkcaW2E=; b=stdc9zHounlkD0ilRKsIrLoFmF/ezGixIlM+71fnzI4HgccZEhVXz3u1ZsrVyaPlU3flzL 2VjxN9MVYT74ckxbTFvS/RdSDnqcTMR+XT9TC3q97c00Ygs2CfsWP/rwjfmpJkmSIDBet7 72FXaDKztse4f+NUpwANlSe2nzxhAyWaSYNdsDqSjWWrErbgUWMornKfjNNYFxLFjIvGnQ 1VlJlvg6N3/V8igf4stGNWgBE1qIOGS4lLGliDkwlnm5uMlCSXR/yJZqz63uOzkoWXvQDW Q62y/2Y1Ti9QCAABLVoD/nKrQorJaJ8dIOZy4c3/P/F+soqhipv8OEmrEdVw2g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744232043; a=rsa-sha256; cv=none; b=NWgUQ6ZWhiOVM4hybJ7UT55Hb7Manz2ayIcL7z71v66KbqhXJQ+SedRp+bH+R3/BpvVit3 gi7RCBqoVZuj3JSFZCM+jKmEOG3TL9r3Ft9JbgHM/5Im4LJAeoL18RDQeyQGgtvUZOXfYm +9m1je3iw9GHp1dRbC0BJktpQq9w7dxYvVtFZx8fxywKWj4ZAOnE+l2DSp3eYdUDZMXuyw KSfIbb7C63C1KIDXmQIHvWk79VAPgir+Y+qwPWDICxvWQXrgsBuWlVOQrBuq3BPoFOoC63 AxkTeyollseuD/UkI4K5QnnJCyhovQolU85/U0+eEcM5QOjLfVP3IcDsaFEitQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744232043; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kYqm2WmvinwBo1RtrNTe87MGd3nYreZc5iYzjkcaW2E=; b=l+uwxO6eO7bEdZG1FOjKZ36jLCCh5Awy1BY/pjDvkTWMObmDpfWlTMyzovDfcm4rG9kgP3 vjYKs6XGUOsF00BrtZYW/2mzrKLcT/DsUmLusYQ/69WkrUElfN2MDYf8BjGeiXQO0a+1gp AAWHIQmEP4TvnnlbuTUubL80Y+NE4OVSY3/gxYlsMvSUY4ct+CGsEXNLsdHHnpFmXB2EoP 9fgIjINmYbIfcZg6197+wu9dorTkwDaZdM7ymL0stZUJT5gYfc97xAt5U/zV51qUFspnjI rJWPSVFyH1hZI3L1TFmn0xOvUBht4p2AW75yRRCbK7L0Hq9tXM8tVfuIpZJYEw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXwCv5055zYwl; Wed, 09 Apr 2025 20:54:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539Ks3XJ038254; Wed, 9 Apr 2025 20:54:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539Ks31j038251; Wed, 9 Apr 2025 20:54:03 GMT (envelope-from git) Date: Wed, 9 Apr 2025 20:54:03 GMT Message-Id: <202504092054.539Ks31j038251@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 1b16d033f4e5 - main - full-test.sh: Make the path per-os not per-user List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1b16d033f4e5f1dd6c3dd212a03f9f4f9be7e94d Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=1b16d033f4e5f1dd6c3dd212a03f9f4f9be7e94d commit 1b16d033f4e5f1dd6c3dd212a03f9f4f9be7e94d Author: Warner Losh AuthorDate: 2025-04-09 20:53:33 +0000 Commit: Warner Losh CommitDate: 2025-04-09 20:53:33 +0000 full-test.sh: Make the path per-os not per-user The default should be per-os, not per user. this lets me use this on both my mac and my FreeBSD server. Sponsored by: Netflix --- tools/boot/full-test.sh | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/tools/boot/full-test.sh b/tools/boot/full-test.sh index 43967913e76f..0b1bc500b3a4 100644 --- a/tools/boot/full-test.sh +++ b/tools/boot/full-test.sh @@ -51,9 +51,11 @@ case $(uname) in else die "Can't find the make wrapper" fi + qemu_bin=/opt/homebrew/bin ;; FreeBSD) MAKE=make + qemu_bin=/usr/local/bin ;; # linux) not yet *) @@ -71,12 +73,6 @@ MTREE=$(SHELL="which mtree" ${MAKE} ${DEFARCH} buildenv | tail -1) || die "No mt # MAKE=$(SHELL="which make" ${MAKE} ${DEFARCH} buildenv | tail -1) || die "No make, try buildworld first" -# hack -- I have extra junk in my qemu, but it's not needed to recreate things -if [ $(whoami) = imp ]; then - qemu_bin=/home/imp/git/qemu/00-build -else - qemu_bin=/usr/local/bin -fi # All the architectures under test # Note: we can't yet do armv7 because we don't have a good iso for it and would From nobody Wed Apr 9 20:54:04 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXwCx2cFYz5sMm2; Wed, 09 Apr 2025 20:54: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXwCw6MMJz3jp4; Wed, 09 Apr 2025 20:54:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744232044; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zvH/Z4bwZx4qCBe9cTkgEGR2i0xX1kad7Eol/4bf49E=; b=ku3DK0eC7E6T1y75HaxGi+RMxMsVckRyTf1g5NJStOD5kj4jPNhWW/ZIKGTkR2L14H2peu 1AFbq2Hx5IaZTcT6ZlHWTgfkDrQ3R0DY27gelcR3sVNv1OHCsC7DglS5HQJs+Madihc2FJ 33D+nNHggRQax4CliAaDF7ywo7a5V8et67tjo1TurxhyEu7jRsZBjRBqYBW63aU94rNHGd J4ZpzvcDUujrt+JufUBdTGDQSgPDCmLbt1JXN2C8UKeGdaKfLRRgyLbM0alxvShldlho+M lgl9nqQgzFOhiUOP8mYHuQ3uW1tUNYvWQGJ+jbO1785Cnx6aovNwD9N2vX82HQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744232044; a=rsa-sha256; cv=none; b=R2owmfedZ67Hx32+xC0dQm/3XSKCAui1V1q1omh3QvSoWUbpOiRKp3ORWu+sOXnCoIMELA Ernxh9IeIhplZpckdk8XMBDp/ZpJUavbEAXwLc26Bfmpa5vI0Xmuzdo/7Gxh1UvW0T/EgK K35G5q60LthdJhcDk3HjGVTjtgdMJ+7hCjvfByg0LvP43g4RCmcBXyW7P5SfjtCrtqes4J qdq2ki2MGfXWNlZ3ovkaAigKGgKmcrN41o9ufF+H4+hCRSdiEdnmbrG9X9HQ6Gn0aqG2Vt E9JcFBc/paHPzHNPi5WsGKkpNW6JHXQ1P8f/8FAmo11dLGOUWUYZXNoWQ2RzDg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744232044; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zvH/Z4bwZx4qCBe9cTkgEGR2i0xX1kad7Eol/4bf49E=; b=Ps5GI/JeGZgnDPvtupSqfY9bzlUTtS4dpm0mcxrRILB7jLluu0QzDCbpPRiJRR4hdRNRBJ cB3lLwmS3K8r1V62yEO8GA6va6MSlasTM4bFmI0+QBO/eUD0Fcs9bBKCK6aqAW8uRVC6L/ 2CLDqA2OvYZp5K+xMBNnswtvJkQMoWSH3A6/8lW8X5/mZsWMsk2yIJCezZy72f1u698r1h GxCtNEwn6eshlyv7ubAsixooFjO35G9Z4iYGwIBCom91k1dunjGSgmmeUAgIvXEOTd/mi3 oEzoEdig7MLoeWLdehPjfGu9EmewOqhKj+YDc3vHgd1Wund2jRiNig8cRnHzNQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXwCw5yddzZhP; Wed, 09 Apr 2025 20:54:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539Ks4JD038287; Wed, 9 Apr 2025 20:54:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539Ks4rn038284; Wed, 9 Apr 2025 20:54:04 GMT (envelope-from git) Date: Wed, 9 Apr 2025 20:54:04 GMT Message-Id: <202504092054.539Ks4rn038284@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: c84d43b57c48 - main - full-test.sh: Include fastboot for hardlinks List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c84d43b57c48e1185bc593f26ebd51b0d35750df Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=c84d43b57c48e1185bc593f26ebd51b0d35750df commit c84d43b57c48e1185bc593f26ebd51b0d35750df Author: Warner Losh AuthorDate: 2025-04-09 20:53:36 +0000 Commit: Warner Losh CommitDate: 2025-04-09 20:53:36 +0000 full-test.sh: Include fastboot for hardlinks 13.x didn't need this, but 14.2 does need it. Extract /sbin/fastboot too since it's recorded as the target of reboot/halt that we do want. Sponsored by: Netflix --- tools/boot/full-test.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/boot/full-test.sh b/tools/boot/full-test.sh index 0b1bc500b3a4..c8669cf3f6ec 100644 --- a/tools/boot/full-test.sh +++ b/tools/boot/full-test.sh @@ -159,7 +159,7 @@ make_minimal_freebsd_tree() # Pretend we don't have a separate /usr ln -s . ${dir}/usr # snag the binaries for my simple /etc/rc file - tar -C ${dir} -xf ${CACHE}/$file sbin/reboot sbin/halt sbin/init bin/sh sbin/sysctl \ + tar -C ${dir} -xf ${CACHE}/$file sbin/fastboot sbin/reboot sbin/halt sbin/init bin/sh sbin/sysctl \ lib/libncursesw.so.9 lib/libc.so.7 lib/libedit.so.8 libexec/ld-elf.so.1 # My simple etc/rc From nobody Wed Apr 9 21:17:51 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXwlM3rlbz5sP3K; Wed, 09 Apr 2025 21:17:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXwlM3R0sz3tFn; Wed, 09 Apr 2025 21:17:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233471; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AJf/fckP0bXpvgIz13ZYAaNFCB74wES8yEn7g6BA+vQ=; b=MZ9TkUVlE4wF4X6Ds6wIfYE8V2pEle8hPGOWOXvGDB+blyQjIjbVbuf6GS6kuhdUpJKmGc Qa8QxS+6x+DB/yMafoICReL/3gJ/GZLMlnnXA+8Rdqh4iVwEdOdxLwUF/PMKy1AOtzlj8E qZM36qCZgKjr2vL2Lpa51PfeKs49abPR3NTRMLb8Ot9ak2AHyEn8sY1N0O+HjfD0DZnJ6m /ef98RcoXGwiTco/TpkaF+Jvu57Ys/BLN8KAq3njJLHJL9JwHmqisztVXkv7l4rF5zGLl6 7ZzJGG6cQhxbg6RDqfAZ6OEZNk2TFc5zLTmlTxdwzbEcL8dGVKwSF//0Qg3NnA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744233471; a=rsa-sha256; cv=none; b=whD7kD604hYl0dzt00SdCj+umQNdQKCLkp5DKzFXRcDHhDb/pssLA0xPWr4kszpCL2GBnO InFmlVFxJ7mT6LfY5HnBidV9FY7Q73Q4d/AKEyevDuTMW/Zp5FNVyDWtkbmjMcXhyaYa2m w52qOnwkMhRV+k3MjY6thIvEKy+oACiV2PxGeW90q4fiGyauqNEzh7UjVLLBeBRFQfYnrw UwoVgVWghPX+uFNRtb/d4We+hQHEwVjePkfYpwEsQlpxIliQp8H85NJYXgsBhEnu5INSMr Q3KJbQWkNjMCZUKBEGa2yc34SVWqul+XpeHzze3ED55tdS8xWxXi2JhOfbXsmA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233471; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AJf/fckP0bXpvgIz13ZYAaNFCB74wES8yEn7g6BA+vQ=; b=RzGtH5PHZqqJZ2OvERYyFtXL1RqrTWuESg+NcfZ1DyWyXUB8RqR3yY8y04lAd+F+RA1DFn FMYDi5n9PCb1NabXgzCAOsUjFFF2g+DXU3mRCdc9lQGg3HPFRba0zkv+f1tqnK+Pd+UBLq /kuM2yt/RV62U8JEpQCQIormtI8JgDH1wL5GP15jLcOcAlyF0j9zbMITHpEujp0dzbyjU2 kBBtw/K5yXYZ0qZKFAl3FeBuV+vG+vm63VFexGF4ZQ8dNUyF7+zCQ5FFov7bhVBXY/1YOb tfHf2J7iD3fmTln9AgdS71H0A6IkeXyt49FOLfjElXZL6TfSoyya/vrBfm6AOw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXwlM31tFzb4G; Wed, 09 Apr 2025 21:17:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539LHpoR077917; Wed, 9 Apr 2025 21:17:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539LHpU1077914; Wed, 9 Apr 2025 21:17:51 GMT (envelope-from git) Date: Wed, 9 Apr 2025 21:17:51 GMT Message-Id: <202504092117.539LHpU1077914@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 5b30473577e1 - main - kboot: Use SRCS+= instead of continuation lines List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5b30473577e1f843ae02cda90f46b5bf48099531 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=5b30473577e1f843ae02cda90f46b5bf48099531 commit 5b30473577e1f843ae02cda90f46b5bf48099531 Author: Warner Losh AuthorDate: 2025-04-09 21:16:54 +0000 Commit: Warner Losh CommitDate: 2025-04-09 21:16:54 +0000 kboot: Use SRCS+= instead of continuation lines Use SRCS+= to allow for better ifdefs Sponsored by: Netflix --- stand/kboot/libkboot/Makefile | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/stand/kboot/libkboot/Makefile b/stand/kboot/libkboot/Makefile index d9ce08cb0856..7cdb3db51939 100644 --- a/stand/kboot/libkboot/Makefile +++ b/stand/kboot/libkboot/Makefile @@ -6,10 +6,10 @@ WARNS?= 4 .PATH: ${.CURDIR}/arch/${MACHINE_ARCH} CFLAGS+=-I${.CURDIR} -I${.CURDIR}/arch/${MACHINE_ARCH} -SRCS= crt1.c \ - host_syscall.S \ - host_syscalls.c \ - termios.c +SRCS= crt1.c +SRCS+= host_syscall.S +SRCS+= host_syscalls.c +SRCS+= termios.c .sinclude "${.CURDIR}/arch/${MACHINE_ARCH}/Makefile.inc" From nobody Wed Apr 9 21:17:52 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXwlN6xQVz5sPGk; Wed, 09 Apr 2025 21:17:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXwlN4JTRz3t9R; Wed, 09 Apr 2025 21:17:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233472; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GxJd2HsZKGci0KFG20A7v1VgzIK2ZyJntKUJDTi3WlE=; b=dCRv8tWNefejMkiE3WmcJpKOt5AVMVRX3tK8BNIZtZ+xjxLUDGGxMXF9oKoZ9umkic01jM qLrkVCvAKneVpMXazzVvoPu6NTLBptj1RNERK0efvkyl707FEPeE5FnDDBGOyvgaIwVujg oEjVPvnJbMBgTzQthFRnBf054Ay/6LuMOqxJguEOcKbgyHV+Yt8z5rED8X8Khfcr2RJe43 sAKuFitnk8A4+4y7K3TDUz3plifIKgFN0nIJ85kI1XMBvj5zchUdoVYqFUgFgObffiZDUa 0uKeblwjF/ptzBysuHanVLKybqWqoJGHVMj977pB0Vd2QTaKC4OxEazRwB1YjA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744233472; a=rsa-sha256; cv=none; b=lOQRnZAP8uDsuEsgOj+7hfmkNQe3AZfBxpgx19gxyFD8Ffb2KxWRhT3jxyVZF9o9Q6v+zH TGyPsH1B8+WvdOnx73K/UdczybEnjYZGV2MPPuxjM8r45y5pE3eAfdPYq8aSc+yCQhzfO+ bd1X0YQ/2vcpYr9b6GuwTAbgxp25DrvLdiuiij9Xgkn+GK66rPNoVgSuZAp70C3ugAaylB BCORDlFYLPebnczoylqrw29EOvCoq/PkFWGQ+Ny+WZpkhZSZOHPAmHfNzbKQ8fpYcK0fVT mZajYPYjJ9iGDm5XeX5qyJv2I3Bnd4Osy8P9cWHLaDdoeoKkdvwVbrY64+n/0g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233472; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GxJd2HsZKGci0KFG20A7v1VgzIK2ZyJntKUJDTi3WlE=; b=Iulei9Vp6oxjzRu7R+tMrfTXQxWOoR01LLEjlR+Rm49jLYie52hFGEytOK09lLCRXcmTtB ACAAs1FwJQUtx4Zof/jArvCHZ349zgCntdJsCGykwknlQya2EA6cXJSa3xkMwUmZ+4pxss s5olfPMzs8jkzsj8P4HW0sOewy2hYwhmPAerny0SNbHXlvkXcdt+HjA0iXIVoEg6yO5MWh vBWHlK7QY8QjSpJf3J/AJwJiQY5cdAWq7a3ErlFHwNpN4/V4kqS+rhXI5deRDlx0XJ+Rzc dNoOYPzohYClIYm745iDGvJshZc7qFYqlT20R8LUgoBMoHVXgd6rIeUkrirjxg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXwlN3vYQzZkW; Wed, 09 Apr 2025 21:17:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539LHq1w077958; Wed, 9 Apr 2025 21:17:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539LHqa7077955; Wed, 9 Apr 2025 21:17:52 GMT (envelope-from git) Date: Wed, 9 Apr 2025 21:17:52 GMT Message-Id: <202504092117.539LHqa7077955@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 757dc8ab1245 - main - kboot: Move seg code into libkboot List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 757dc8ab1245118bd3861ee2853b42c3476c1ed4 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=757dc8ab1245118bd3861ee2853b42c3476c1ed4 commit 757dc8ab1245118bd3861ee2853b42c3476c1ed4 Author: Warner Losh AuthorDate: 2025-04-09 21:16:55 +0000 Commit: Warner Losh CommitDate: 2025-04-09 21:16:55 +0000 kboot: Move seg code into libkboot This code is really generic segment processing and should live here. It also interfaces primarily with Linux APIs, so it's also appropriate for this if we have a version of that runs as a FreeBSD binary using FreeBSD system calls and APIs, though that's in the future somehow... Sponsored by: Netflix --- stand/kboot/include/seg.h | 24 ++++++++++++++++++++++++ stand/kboot/kboot/Makefile | 1 - stand/kboot/kboot/kboot.h | 20 ++------------------ stand/kboot/libkboot/Makefile | 1 + stand/kboot/{kboot => libkboot}/seg.c | 2 +- 5 files changed, 28 insertions(+), 20 deletions(-) diff --git a/stand/kboot/include/seg.h b/stand/kboot/include/seg.h new file mode 100644 index 000000000000..5ca30670bdd1 --- /dev/null +++ b/stand/kboot/include/seg.h @@ -0,0 +1,24 @@ +/*- + * Copyright (c) 2024, Netflix, Inc. + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#pragma once + +struct memory_segments +{ + uint64_t start; + uint64_t end; + uint64_t type; /* MD defined */ +}; + +#define SYSTEM_RAM 1 +void init_avail(void); +void need_avail(int n); +void add_avail(uint64_t start, uint64_t end, uint64_t type); +void remove_avail(uint64_t start, uint64_t end, uint64_t type); +uint64_t first_avail(uint64_t align, uint64_t min_size, uint64_t type); +void print_avail(void); +bool populate_avail_from_iomem(void); +uint64_t space_avail(uint64_t start); diff --git a/stand/kboot/kboot/Makefile b/stand/kboot/kboot/Makefile index 064d43701ebd..0f6bb994711d 100644 --- a/stand/kboot/kboot/Makefile +++ b/stand/kboot/kboot/Makefile @@ -25,7 +25,6 @@ SRCS= \ hostfs.c \ init.c \ main.c \ - seg.c \ util.c \ vers.c diff --git a/stand/kboot/kboot/kboot.h b/stand/kboot/kboot/kboot.h index 49e5dea25b12..2a6e98ae5513 100644 --- a/stand/kboot/kboot/kboot.h +++ b/stand/kboot/kboot/kboot.h @@ -9,13 +9,6 @@ #define DEVT_HOSTDISK 1234 -struct memory_segments -{ - uint64_t start; - uint64_t end; - uint64_t type; /* MD defined */ -}; - bool enumerate_memory_arch(void); struct preloaded_file; void bi_loadsmap(struct preloaded_file *kfp); @@ -40,19 +33,10 @@ const char *hostdisk_gen_probe(void); void hostdisk_zfs_probe(void); bool hostdisk_zfs_find_default(void); -/* seg.c */ -#define SYSTEM_RAM 1 -void init_avail(void); -void need_avail(int n); -void add_avail(uint64_t start, uint64_t end, uint64_t type); -void remove_avail(uint64_t start, uint64_t end, uint64_t type); -uint64_t first_avail(uint64_t align, uint64_t min_size, uint64_t type); -void print_avail(void); -bool populate_avail_from_iomem(void); -uint64_t space_avail(uint64_t start); - /* util.c */ bool file2str(const char *fn, char *buffer, size_t buflen); bool file2u64(const char *fn, uint64_t *val); +#include "seg.h" + #endif /* KBOOT_H */ diff --git a/stand/kboot/libkboot/Makefile b/stand/kboot/libkboot/Makefile index 7cdb3db51939..7acec951107a 100644 --- a/stand/kboot/libkboot/Makefile +++ b/stand/kboot/libkboot/Makefile @@ -9,6 +9,7 @@ CFLAGS+=-I${.CURDIR} -I${.CURDIR}/arch/${MACHINE_ARCH} SRCS= crt1.c SRCS+= host_syscall.S SRCS+= host_syscalls.c +SRCS+= seg.c SRCS+= termios.c .sinclude "${.CURDIR}/arch/${MACHINE_ARCH}/Makefile.inc" diff --git a/stand/kboot/kboot/seg.c b/stand/kboot/libkboot/seg.c similarity index 99% rename from stand/kboot/kboot/seg.c rename to stand/kboot/libkboot/seg.c index 558cac501224..395c593bcabf 100644 --- a/stand/kboot/kboot/seg.c +++ b/stand/kboot/libkboot/seg.c @@ -5,7 +5,7 @@ */ #include "stand.h" -#include "kboot.h" +#include "seg.h" #include From nobody Wed Apr 9 21:17:53 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXwlQ2ZLdz5sP0f; Wed, 09 Apr 2025 21:17: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXwlP5WjQz3tHk; Wed, 09 Apr 2025 21:17:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233473; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/8s1rE3Dom0UDlfessr3ZHaMJNjtl8rsrM9NAXlF2G4=; b=QaJNA6aC6kTKefz2+Q0OYBUwYbuoU3FWtwkCrjf//BYyqZ4CixnbasOq2EtuWo8pIYvxFz 046Mhx/5GNK1RWoibSvQUig8PaBsJisewMo635bXSyF5ZVTEThlVNlewP2yaewBBaJne2c WxQ/ehQsiKSkxsqqbKO9S8e846PsnFyPEf6WuNUgt5RU5RKEeGpIYbyqkAbz18YMSkhfKC LnITbj6/MrERf9+C7Z2kywuQ7OQDznrbFwbnFluj0lfZO0CHILDeLisP835gw2yMIu9Y1V ZemQKQKKY7H1PdwFe/U+LSXZIiplOm6sn1Y0EtURk7hd4eYcURaVmzi6mGQBxA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744233473; a=rsa-sha256; cv=none; b=deqwbUihuYSminG8BbptDt4nC0Q+jMcQCX6+pTRQFEWZleXOyC2O5bRgqvNTL7bZT3u+t5 ECsZb2S2/5HVPz+M0WgCj2frOYL6yyMVaAaPQ3lvLL/E7P9bfrnWtZ3j6UFkHjOrp24Mbw adfrSakb+p6uuBiATTu/oEaZEhuX72Z7DqeAgQVYgN2J5gacwZchbYbYC3vtxCLfRx5eXn Coj4zjv56qTbfEFChLqEzT4pZdd8WZ6FDdkIzkLzZckfyzXkIsErwbP69HYUIVqhXPdTYY OU/x9IwY6BvCUz8iBUa2EMu3UxuVQeAsWGcwgCCz28JXPzYSh816oUXi4y/Qgw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233473; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/8s1rE3Dom0UDlfessr3ZHaMJNjtl8rsrM9NAXlF2G4=; b=rwa+XjqO580zQ9qQINwbBLA8cPOEIGM0qfMcG+PYXKedZrexN1LbX5D+IYMEw9vdNgoBds hUm+UmZmaRnumS3acUrOOppUjOiwZP3K+BpMcMv39vb7jS3xr9kOfj19/WttsjIQIbjljG /QJsJ79oVtF5vNBCwZuNkddnZO9ea5+1FEwxxfoPAuAzVJlKphO7R3gmjAgUk94L6IEj3v 6oJV0uxobj0gIlGF7f97T+ehH7pPYoc/RuZvsGrL++17HL/udi79/w+LfCguTrSeHGQ2VL quRABDK82Bn1rG6TUnCIuiuMD0CSpfDh4KdoQdxSIJO8RWVXFK3qmRWW/EtI7A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXwlP4lgHzb4H; Wed, 09 Apr 2025 21:17:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539LHrsl077993; Wed, 9 Apr 2025 21:17:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539LHrF6077990; Wed, 9 Apr 2025 21:17:53 GMT (envelope-from git) Date: Wed, 9 Apr 2025 21:17:53 GMT Message-Id: <202504092117.539LHrF6077990@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: b2bd8c9a1d87 - main - kboot: Move str* util routines to libkboot List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b2bd8c9a1d87ee60f13715370824c56f5ab7a4d2 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=b2bd8c9a1d87ee60f13715370824c56f5ab7a4d2 commit b2bd8c9a1d87ee60f13715370824c56f5ab7a4d2 Author: Warner Losh AuthorDate: 2025-04-09 21:16:55 +0000 Commit: Warner Losh CommitDate: 2025-04-09 21:16:55 +0000 kboot: Move str* util routines to libkboot These are needed for the next round of EFI support for amd64 (partially shared with aarch64, but only partially because the Linux host interfaces are different to get the same info). Sponsored by: Netflix --- stand/kboot/include/util.h | 10 ++++++++++ stand/kboot/kboot/Makefile | 1 - stand/kboot/kboot/kboot.h | 5 +---- stand/kboot/libkboot/Makefile | 1 + stand/kboot/{kboot => libkboot}/util.c | 2 +- 5 files changed, 13 insertions(+), 6 deletions(-) diff --git a/stand/kboot/include/util.h b/stand/kboot/include/util.h new file mode 100644 index 000000000000..ca71277bc66a --- /dev/null +++ b/stand/kboot/include/util.h @@ -0,0 +1,10 @@ +/*- + * Copyright (c) 2022, Netflix, Inc. + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#pragma once + +bool file2str(const char *fn, char *buffer, size_t buflen); +bool file2u64(const char *fn, uint64_t *val); diff --git a/stand/kboot/kboot/Makefile b/stand/kboot/kboot/Makefile index 0f6bb994711d..19bae09df5ea 100644 --- a/stand/kboot/kboot/Makefile +++ b/stand/kboot/kboot/Makefile @@ -25,7 +25,6 @@ SRCS= \ hostfs.c \ init.c \ main.c \ - util.c \ vers.c .if ${MK_FDT} != "no" diff --git a/stand/kboot/kboot/kboot.h b/stand/kboot/kboot/kboot.h index 2a6e98ae5513..cbacf8d1e453 100644 --- a/stand/kboot/kboot/kboot.h +++ b/stand/kboot/kboot/kboot.h @@ -33,10 +33,7 @@ const char *hostdisk_gen_probe(void); void hostdisk_zfs_probe(void); bool hostdisk_zfs_find_default(void); -/* util.c */ -bool file2str(const char *fn, char *buffer, size_t buflen); -bool file2u64(const char *fn, uint64_t *val); - #include "seg.h" +#include "util.h" #endif /* KBOOT_H */ diff --git a/stand/kboot/libkboot/Makefile b/stand/kboot/libkboot/Makefile index 7acec951107a..249bfef817c5 100644 --- a/stand/kboot/libkboot/Makefile +++ b/stand/kboot/libkboot/Makefile @@ -11,6 +11,7 @@ SRCS+= host_syscall.S SRCS+= host_syscalls.c SRCS+= seg.c SRCS+= termios.c +SRCS+= util.c .sinclude "${.CURDIR}/arch/${MACHINE_ARCH}/Makefile.inc" diff --git a/stand/kboot/kboot/util.c b/stand/kboot/libkboot/util.c similarity index 97% rename from stand/kboot/kboot/util.c rename to stand/kboot/libkboot/util.c index 7d467a29b059..0100a7cc5d8a 100644 --- a/stand/kboot/kboot/util.c +++ b/stand/kboot/libkboot/util.c @@ -6,7 +6,7 @@ #include "stand.h" #include "host_syscall.h" -#include "kboot.h" +#include "util.h" bool file2str(const char *fn, char *buffer, size_t buflen) From nobody Wed Apr 9 21:17:54 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXwlR12mLz5sPJn; Wed, 09 Apr 2025 21:17:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXwlQ63Pzz3tFx; Wed, 09 Apr 2025 21:17:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233474; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pMj9uyUx6dBmL5d9aagpYPxeyPQ5QT2lIN3d2VWaPBU=; b=SHzvZ5jIgxNTKkALQH5xsOOEwfeDxuljRowYhO6G6GCPK5uwbwTDSLHOYagq/hBlc5EU0C CNj4p+P+MZ3G8DtP8CLyOMW6pQLdJH8DfQwk8FaEdIF8Dq73oy3s7n3HU45LD5ZsFoEwd2 HSSZOkzW/GkuyEZeRd3NDzYcW/i1+DCq92G1l1w07TDFPCzwe/GTkg9j5Aj8E8Kn8jMyId Ff07l8qXTsAehI1PgynHgDRxkMXS/+2WrZjgJdvhb3z4tJNgBn724OR0OPMKRHE3AkITF5 62U/dOzrAOSK7Sv5vE+5AZxaoJ7qGINeMfVaO6Y8cfSMVLGQ6YQ9XTo+dOppSQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744233474; a=rsa-sha256; cv=none; b=H75boet/bsIjIdx1MmUJ29pYv93fQ7mWo6YAFiB0nbhku2EXP6fjSMud3MQnsGVh9tPzc0 JrqNBp/4VmAUXhKqcsFIjYshXFzbyaFflkLm0gacDDYMa4KaLRUZQ6nhdLJFkhHPpEEwrh WzYE/l51duOk7uDeZGmIh8JrXIC0af9LxvZw6SfBtFRxmJuOGNLZUC/jJpxs/0E85+jodq 65QJJ6tuuXlAN2mv654XRvOzd/WDVm/hOybgioLCa3t2YADgdbqFQnZYYb7s/LcL6xF9TV qNDyNvxlMb5SSPOlZD+3hW31oLwFedyRqb2E+upA5wBF2t3YKxG51NF5PxWXiQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233474; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pMj9uyUx6dBmL5d9aagpYPxeyPQ5QT2lIN3d2VWaPBU=; b=HBMPV+UWYljEOIiorZ4lSeoTUCKZsZdwf6W8kqrXCk6oXX5gnsct942i+jlxVg73RpYoUX gsdHdp9LYilPdH/XcI6b1/HiI5aUcSXdfxUzOmfRwNj7ErrJux+KlX9BQ4K//ED70X8n3x yBlFaC5y1ul4Ssyn8bzLZbhWzScPvM3ctx5OlSqEnPFSfVInvb0ZqGo9yq9n8Euz2OL4W6 lXXWWCBtGvI5M/c0yagTW9PoFlqIEgBtwVyIsYkj0+RQGPs0Sym6j13+KHep3w/fSEaPtm pG0suA+IfU6RVq/34v3FZkjoL7Hgz6RpbChBLaCultjDd/gJFncgGTthyXpc0A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXwlQ5gWbzb4J; Wed, 09 Apr 2025 21:17:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539LHsVC078027; Wed, 9 Apr 2025 21:17:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539LHstr078024; Wed, 9 Apr 2025 21:17:54 GMT (envelope-from git) Date: Wed, 9 Apr 2025 21:17:54 GMT Message-Id: <202504092117.539LHstr078024@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 085fc4555abd - main - termios: Do return EINVAL for bad action to tcsetattr() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 085fc4555abde267bd2f5fc7d2eb8bd98d8399f4 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=085fc4555abde267bd2f5fc7d2eb8bd98d8399f4 commit 085fc4555abde267bd2f5fc7d2eb8bd98d8399f4 Author: Warner Losh AuthorDate: 2025-04-09 21:16:55 +0000 Commit: Warner Losh CommitDate: 2025-04-09 21:16:55 +0000 termios: Do return EINVAL for bad action to tcsetattr() Set errno for bad actions in tsetattr to catch bad actions. Sponsored by: Netflix --- stand/kboot/libkboot/termios.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stand/kboot/libkboot/termios.c b/stand/kboot/libkboot/termios.c index ec62170a44c9..cd25b252f735 100644 --- a/stand/kboot/libkboot/termios.c +++ b/stand/kboot/libkboot/termios.c @@ -22,7 +22,7 @@ int host_tcsetattr(int fd, int act, const struct host_termios *tio) { if (act < 0 || act > 2) { -// errno = EINVAL; /* XXX ?? */ + errno = EINVAL; /* XXX ?? */ return -1; } return host_ioctl(fd, HOST_TCSETS+act, (uintptr_t)tio); From nobody Wed Apr 9 21:17:55 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXwlS1wDqz5sP0j; Wed, 09 Apr 2025 21:17:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXwlS04k4z3t2s; Wed, 09 Apr 2025 21:17:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233476; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V114yP0jca/mz4l60CJ30vH4/yTzoVlXdMlfT6ziNpw=; b=Ud4U83oygSqOdDKYlmVze6ZOnqAt09wBcRlKJrHddZFwvQL3nXGlDZRACtHCzEn6brGB1i v8cfjUKeSkQTgFg+MPHkFn5XzlpTtHNz/SqgXDrq1sd+Tx7G9ljGicKaoUUSu3Kbs82c+h EF07dPT7WoGqCzYMrOJJr/2slEtmjS2MChY3MkgnKmlHov+SfaHxpq4twNa8eJS7qNp1FJ b8erUvFJp+TfvR7XVHIhtIjpA64Ohjwv4DkkRIGG5P64CJLzDiX3DNEq/FB2aeDmQdMC+W SWULaseCpIr8ToxSpJlNLUvIq0J/aVYHNxPBtT67s5wdwydeLJDnNDKz9CIW4g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744233476; a=rsa-sha256; cv=none; b=s0Bnp7XypFKaqrcUi+CqH2TI056BTTO13Dh8cud6MZG65L9GUOWXlCfcPZlkBjNs+fa1uO NAjbNeTA3zUXJoX6d4qR/rnNnawUlOnL48ti1tACtnblxwg3IyGZivCfo/8L/Oi9gstJJa 48wD34dN7N+q96PoUDxJZ7h8VtBaOAT6n+Ijc2nmrXDCTKQJwPrudzwwHpHUGcXH+gU7nX 1OGQl+Sc2d//aaqEx3jr1jv5udjNgaDo5qCWwiqs1JEEWc9M7+QAIrvokH2iowAsKrsk/B CFc/JXC2DE50gZkZ9ZWLm3NUT0WjYcT7cJOR9NUkg9uNOL9pm6i6yQDccsg/Zw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233476; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V114yP0jca/mz4l60CJ30vH4/yTzoVlXdMlfT6ziNpw=; b=LuZ8HA6W9qhv2j7VBCeyVfVcnt+Xn/qnmTQ9uFlT+7vKln8MEduoWqJ12DNGY63QK+VbXE gFKSKZ3A6lL1fVN6aLyZ+0qUxa23M7U6bZhCBfHaOSaUOQ2DaMjbVagSiz7rkbO/7PemVD 9AmRHr91R1KsXUcMurd23aDJvNWUltBaRx9hjcheR1slPZYHLnO5fGbdi1PWUZTA2MPo/J XzOcfUnTf8dqSwEl9T56yLCRKJ5C/RvA8JcQUmvoTi7etRaFrHS+RWOsXCVl7uNHU/kcAE uQWTAqFrBR+c8k0e6/cfxdBpBYWolYbJMudtQO7jr4nmtn4ubvWWkttQ4mM/+A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXwlR6cHBzZkX; Wed, 09 Apr 2025 21:17:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539LHtnC078062; Wed, 9 Apr 2025 21:17:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539LHtRv078059; Wed, 9 Apr 2025 21:17:55 GMT (envelope-from git) Date: Wed, 9 Apr 2025 21:17:55 GMT Message-Id: <202504092117.539LHtRv078059@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 849f8fea5ca9 - main - kboot: Use roundup2 instead of expanding the (old) definiution of it inline List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 849f8fea5ca96d8bff36b8a30d009ba4d0fcbab2 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=849f8fea5ca96d8bff36b8a30d009ba4d0fcbab2 commit 849f8fea5ca96d8bff36b8a30d009ba4d0fcbab2 Author: Warner Losh AuthorDate: 2025-04-09 21:16:56 +0000 Commit: Warner Losh CommitDate: 2025-04-09 21:16:56 +0000 kboot: Use roundup2 instead of expanding the (old) definiution of it inline The boot loader pads efi_map_header to start the array of efi_memory_descriptor entries on the 16-byte-aligned boundary after the header. Since the header isn't naturally 16-byte aligned, we need to do this. We should have used the actual UEFI EFI_MEMORY_ATTRIBUTES_TABLE which used uint32_t's to pass all this data to the kernel (they never needed to be 64-bit quantities or size_t's even) since these entries and the total size of the table is small. However, this ship long since sailed since we've used these structures for a decade and there's little to be gained by changing them. The table header we pass to the kernel from the loader has similar names, but the seamntics of the fields are different. Sponsored by: Netflix --- stand/kboot/kboot/arch/aarch64/load_addr.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/stand/kboot/kboot/arch/aarch64/load_addr.c b/stand/kboot/kboot/arch/aarch64/load_addr.c index 8ea3516a5cff..9d6f23a9d344 100644 --- a/stand/kboot/kboot/arch/aarch64/load_addr.c +++ b/stand/kboot/kboot/arch/aarch64/load_addr.c @@ -36,7 +36,7 @@ foreach_efi_map_entry(struct efi_map_header *efihdr, efi_map_entry_cb cb, void * * Memory map data provided by UEFI via the GetMemoryMap * Boot Services API. */ - efisz = (sizeof(struct efi_map_header) + 0xf) & ~0xf; + efisz = roundup2(sizeof(struct efi_map_header), 16); map = (struct efi_md *)((uint8_t *)efihdr + efisz); if (efihdr->descriptor_size == 0) @@ -169,7 +169,7 @@ do_memory_from_fdt(int fd) * so early boot can copy the memory map into this space and have the * rest of the code cope. */ - efisz = (sizeof(*efihdr) + 0xf) & ~0xf; + efisz = roundup2(sizeof(*efihdr), 16); buf = malloc(sz + efisz); if (buf == NULL) return false; From nobody Wed Apr 9 21:17:56 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXwlT67Dgz5sP3P; Wed, 09 Apr 2025 21:17:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXwlT27V6z3t5D; Wed, 09 Apr 2025 21:17:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233477; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c+NwfXSbrkNGCx7BDWVVsVQxfBuFC0+UHwY3uqkKyKo=; b=D5yHAfvYc5fU2VbfO3/wLzDlVhfiRCZx5isDK8QT1Ltl7yD6+4DLQOEnjdMssgrbIjEhsK PaPAqFC1xBgeeWZYerWFS0KV13Wty0ld13sGV00Z9kPEOnSgzixC75BpLe7oLhFIwBhRA3 MFqvKMJnv2yv3DTnDMdHNz5sDw+69ytWzuOfI0qTA0HouSYjcN+OKO0+b1s+QO/hqjDjzQ j2wlgK8dB3bK7B2/TzL8MCSeBHbWcUgLueamC5NKte7t/BXRbNWXIDorag0m891fz7TruZ PURqebkSeq2/PF4AUXdqK2I8Ia3WTdampxqT/XcOCMyclsOrIVi5+bvzi4liRQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744233477; a=rsa-sha256; cv=none; b=lMninITWmoPmgoS0f6oh6Kzvs9j/OrWpiE7kmL7I2uxjoUjMOE2EDOGo85HHL5n6CuVQWk gZQq1D/WDnuh0E5REydUq0WJvJrqtBO7ULtLQ56fUZWVaJ3f0MB1CIyZzfdXW26bugWP10 owjGKwGSvHhByerBZIUpM6IvtmVQBFs0KZ35ECoN/o1460efWow9uN8EDTqHVlbMZvTf4W lKELA0REEOrrM/00wTXEWZmFlrqTaTDLWSUCeL+Y4KKcajOQWTTMASwb+elDu0M4tB7TjI fcSh/wFziHX82sfigN791cC+orhhzTM9PKJJNEnBLM3I9xl3GinNigi9e1izAw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233477; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=c+NwfXSbrkNGCx7BDWVVsVQxfBuFC0+UHwY3uqkKyKo=; b=ayKsAUnc8R8J4hIs4CaeJBYXu2VdrrGCPvQappCEhdbuo4LdHm40O7P2pbl9FvI0+Tvf/0 ndmnvn3fD1OzSM8Mui+fd/Evm9crBIqgDP0kf3XUmcs0rS9Fl1HMhQG2vJ785rwzz5JkcJ Nr9gnxhglj2tqskNfzLhBrejX+nyPc7p91MrsSuA1appHPG7RwYZH/eR0+9y1SGttmnmKZ qi6pIlX9l3tSB0q64njcxeqQdWkq7nEeV2pVDswyMQgJJlQ08Czgyj7hEna6QJQCvr0az6 SrcFSaYlLwhYl6IP35IUVGfZXKkYNKsZW/TlcwfPhDzcM6qoUGe+Vclifr2NgQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXwlT0SmhzZxr; Wed, 09 Apr 2025 21:17:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539LHu2B078103; Wed, 9 Apr 2025 21:17:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539LHuSd078100; Wed, 9 Apr 2025 21:17:56 GMT (envelope-from git) Date: Wed, 9 Apr 2025 21:17:56 GMT Message-Id: <202504092117.539LHuSd078100@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: a3fa657eddad - main - efi/metadata: Make a note that efi_map_header isn't standard List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a3fa657eddade274a5cb684b5e5e890eef67ad25 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=a3fa657eddade274a5cb684b5e5e890eef67ad25 commit a3fa657eddade274a5cb684b5e5e890eef67ad25 Author: Warner Losh AuthorDate: 2025-04-09 21:16:56 +0000 Commit: Warner Losh CommitDate: 2025-04-09 21:16:56 +0000 efi/metadata: Make a note that efi_map_header isn't standard efi_map_header is similar to, but not at all the same as the UEFI EFI_MEMORY_ATTRIBUTES_TABLE (we could easily have used the latter though, with one fewer non-standard types, but we can't change it easily now due to the last 10 years of boot loaders passing this in). Sponsored by: Netflix --- sys/arm/include/metadata.h | 11 ++++++++--- sys/arm64/include/metadata.h | 11 ++++++++--- sys/riscv/include/metadata.h | 11 ++++++++--- sys/x86/include/metadata.h | 11 ++++++++--- 4 files changed, 32 insertions(+), 12 deletions(-) diff --git a/sys/arm/include/metadata.h b/sys/arm/include/metadata.h index 49f3a32826b8..d6f6f5ac8553 100644 --- a/sys/arm/include/metadata.h +++ b/sys/arm/include/metadata.h @@ -33,10 +33,15 @@ #define MODINFOMD_DTBP 0x1002 #define MODINFOMD_EFI_MAP 0x1003 +/* + * This is not the same as the UEFI standard EFI_MEMORY_ATTRIBUTES_TABLE, though + * memory_size / descritpr_size entries of EFI_MEMORY_DESCRIPTORS follow this table + * starting at a 16-byte alignment. + */ struct efi_map_header { - uint64_t memory_size; - uint64_t descriptor_size; - uint32_t descriptor_version; + uint64_t memory_size; /* Numnber of bytes that follow */ + uint64_t descriptor_size; /* Size of each EFI_MEMORY_DESCRIPTOR */ + uint32_t descriptor_version; /* Currently '1' */ }; /* diff --git a/sys/arm64/include/metadata.h b/sys/arm64/include/metadata.h index 7459aa90a6e2..30ec5115e670 100644 --- a/sys/arm64/include/metadata.h +++ b/sys/arm64/include/metadata.h @@ -31,10 +31,15 @@ #define MODINFOMD_DTBP 0x1002 #define MODINFOMD_EFI_FB 0x1003 +/* + * This is not the same as the UEFI standard EFI_MEMORY_ATTRIBUTES_TABLE, though + * memory_size / descritpr_size entries of EFI_MEMORY_DESCRIPTORS follow this table + * starting at a 16-byte alignment. + */ struct efi_map_header { - size_t memory_size; - size_t descriptor_size; - uint32_t descriptor_version; + size_t memory_size; /* Numnber of bytes that follow */ + size_t descriptor_size; /* Size of each EFI_MEMORY_DESCRIPTOR */ + uint32_t descriptor_version; /* Currently '1' */ }; struct efi_fb { diff --git a/sys/riscv/include/metadata.h b/sys/riscv/include/metadata.h index ddbad3fae3b4..7f7b763577e3 100644 --- a/sys/riscv/include/metadata.h +++ b/sys/riscv/include/metadata.h @@ -33,10 +33,15 @@ #define MODINFOMD_EFI_FB 0x1003 #define MODINFOMD_BOOT_HARTID 0x1004 +/* + * This is not the same as the UEFI standard EFI_MEMORY_ATTRIBUTES_TABLE, though + * memory_size / descritpr_size entries of EFI_MEMORY_DESCRIPTORS follow this table + * starting at a 16-byte alignment. + */ struct efi_map_header { - size_t memory_size; - size_t descriptor_size; - uint32_t descriptor_version; + size_t memory_size; /* Numnber of bytes that follow */ + size_t descriptor_size; /* Size of each EFI_MEMORY_DESCRIPTOR */ + uint32_t descriptor_version; /* Currently '1' */ }; /* diff --git a/sys/x86/include/metadata.h b/sys/x86/include/metadata.h index b3eb4b16c1ba..dd8a8ef6c73d 100644 --- a/sys/x86/include/metadata.h +++ b/sys/x86/include/metadata.h @@ -36,10 +36,15 @@ #define MODINFOMD_VBE_FB 0x1007 #define MODINFOMD_EFI_ARCH 0x1008 +/* + * This is not the same as the UEFI standard EFI_MEMORY_ATTRIBUTES_TABLE, though + * memory_size / descritpr_size entries of EFI_MEMORY_DESCRIPTORS follow this table + * starting at a 16-byte alignment. + */ struct efi_map_header { - uint64_t memory_size; - uint64_t descriptor_size; - uint32_t descriptor_version; + uint64_t memory_size; /* Numnber of bytes that follow */ + uint64_t descriptor_size; /* Size of each EFI_MEMORY_DESCRIPTOR */ + uint32_t descriptor_version; /* Currently '1' */ }; struct efi_fb { From nobody Wed Apr 9 21:17:59 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXwlW48Fxz5sP68; Wed, 09 Apr 2025 21:17:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXwlW2NsRz3tCx; Wed, 09 Apr 2025 21:17:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233479; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Dv+jlFT0SRKDwsYHVpoa0BN9mbICXdnGbIPSV2+DEGY=; b=R/mOhTjQXhahguwBFl3qwUF0bN3dwEQGnKCQSCTQ0cleBDywxGftH5y+c5iLEQ2FCBy4pT My4oqujcGOdc/g0qRfZqk2Mi7PfKW1ojJeVuGU+MP5pHayZ3WTsHncer48GSqIGOYjrmCt z40YUzi7/rPokWTUHYOBxgZlFISSeyJeHzx7PDtJIMbK5AT3KpnBtJEC/mJ4rPBEm1TEgr XxeIBy1m8eiEKGcPWYzN5Jnx2lxS35EUOlaBGM3tloOW2SwjkrItM2+DWvhoWEDnhHA/T+ 862hn57WPLQvl1EIrjQ4cRWccrNWOx9tz4fNdgGWwdq3b1JBDy/TCSl3UA9Mow== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744233479; a=rsa-sha256; cv=none; b=C4jMiJZc6xmtIbboOMENHGjkYgItO4WOdugw3j7vZVWKpAwZSgDek4igrGK0ppLBlUbH7O COMH/IdKRu51jKjQhcPXgZBGDyT+Ofyi4FnxueoQcjbhe1JDHolV68XoLdVIjG5xaakIHa c4Q43+xhkhmwil3lhzQfpol/C4/F3VOMYsUWAj5iXTzzibCWLm8qGf00fp4425TebKySDk sws1uDUsIBX24/uNZDygZubwmVBm1+XXkFIqeX49TZrHUiditDPb5LB+2hjg3Va79+imEM R2/mmrIloOfWdh0AmmcyYu9a4YtYXp+HL8LhsQRWVEtxjGw+TaAzcwuD5uaQWQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233479; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Dv+jlFT0SRKDwsYHVpoa0BN9mbICXdnGbIPSV2+DEGY=; b=FrjUK/kj1H/XQq3EAbwyQdXW4x3vWDw7q3RzUG5NakzJrbk/BlxwRgpAUnmeRUxTX1OgLy dQhZSychv1oWzks4TtwwKgt7tDYA75bYMY19f9/l1eC3fgDY7NFKzuCHQphn2RHJojk5ko lm7XoIVuoHTCiRZcI5qBWoZVCG9fDUCCdSnGF1S0FdB3G/1SpX4+7cAhBDsmDcgW9Z51OO cAp+rs3bFax5dimP4tlbeaCy2x3mic2zSv8/nEBQCGM1dYrls80UTmbT3/Xpjjjz2Prg+N 86rv2dS+rV+4pC2wKFwm9r7eUXUpf7RrmooxIpnffadzgy/OTpYEMj6qMy6AaA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXwlW20MTzb4K; Wed, 09 Apr 2025 21:17:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539LHxBv078173; Wed, 9 Apr 2025 21:17:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539LHxuA078170; Wed, 9 Apr 2025 21:17:59 GMT (envelope-from git) Date: Wed, 9 Apr 2025 21:17:59 GMT Message-Id: <202504092117.539LHxuA078170@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: ed1b3f13e72a - main - kboot: Free prior segs in init_avail() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ed1b3f13e72a53af1c68f0ae1cf359e4da7c6cf5 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=ed1b3f13e72a53af1c68f0ae1cf359e4da7c6cf5 commit ed1b3f13e72a53af1c68f0ae1cf359e4da7c6cf5 Author: Warner Losh AuthorDate: 2025-04-09 21:16:57 +0000 Commit: Warner Losh CommitDate: 2025-04-09 21:16:57 +0000 kboot: Free prior segs in init_avail() We can call init_avail() multiple times. Each time, we want to toss whatever garbage may have already been there from a prior failed attempt to find a good memory map. Sponsored by: Netflix --- stand/kboot/libkboot/seg.c | 1 + 1 file changed, 1 insertion(+) diff --git a/stand/kboot/libkboot/seg.c b/stand/kboot/libkboot/seg.c index 395c593bcabf..6979d5cfa5fd 100644 --- a/stand/kboot/libkboot/seg.c +++ b/stand/kboot/libkboot/seg.c @@ -20,6 +20,7 @@ init_avail(void) free(segs); nr_seg = 0; segalloc = 16; + free(segs); segs = malloc(sizeof(*segs) * segalloc); if (segs == NULL) panic("not enough memory to get memory map\n"); From nobody Wed Apr 9 21:17:58 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZXwlV3P1tz5sPMZ; Wed, 09 Apr 2025 21:17: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZXwlV1s7Zz3tGT; Wed, 09 Apr 2025 21:17:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233478; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hv0+f9JTFpOEeaj2caBaAe6usxcye6CgNfqJWVKS8r8=; b=me2qg9ZHkhpTE4bSHtmeYPayJaXy4rtxN3EUzYUrM/BP9GpYGgR6fLi8Z2MwUvKpKs4Dmv NyDdo/5Q8ooi5F7rNU2ahgK3nG8qgcQq+1rf4ErXn3rZp4xEA6R3Jayl7YaEYvPANKy+rc 9o87Tpk58EksFr5Xf6PAnHfLq6i0/K3oD3Geo7PVxAS4l/QENujKio533O7vzJzt3dW4nb afipjnUasD0b7xjYKFRl03W/hFcm5qrMK6p+wErd8ynN2hXu1VG+s0cn/AJPcqUcUdzbzh QFAfhBU/+0EjlfIpmEcO6OBcM5j2GjnuEQ+BUrApjPoBY5Nf7sWa6p3T2jL7Bg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744233478; a=rsa-sha256; cv=none; b=uEsI106cmamzX8sBu5l+Gu1eNK2BwtIpwxfZV3wiA82O0Rh0kPpNJ70F3KEftyk5dS0Pyv s4F7oOGsQ8zq1nhoEXxjzzKgQ1yB+pnwZRt2SfPZ2K5U0Xdo2pa63EeBDiX/jNWEKVYKsN eSMt8TlJraRz7kYnnefNpAM4+9wcqjhdOyhj7aBUJonYzwGWrjFWcuFOepnYHYY/BDww2S 1RhLqxcRVnbNTm575kU4BepgLkav+P5UxGR2xuSscdOep1B9ECHfEQKIDgMJeLOVFgwMhl NCuh8XesqhGvBr7qSLdbwM+YJvV6i2EeRVD8La2yeBNY0XgCdL0OunM1kuA3ug== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744233478; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hv0+f9JTFpOEeaj2caBaAe6usxcye6CgNfqJWVKS8r8=; b=BMuhVJzpREk4x4nVTyL8KteOoI3B4VJss6lwp2fep9XttanzEHGOX65yvDElquECMh7k2s 4fIslGzKSat1jBma9Gs4GjW6gE4PWadaBM0G1hz+A1H1xdIzOTwPuvkmPwAAL3Q+HbhscM HLMkjZcU2KA7tdy36A3dzvxm40Q2KjA41ZRUOvWdlulnU5hncvMHoXXckfRRnzzv9Cbe0X 3IKJwzDLm2oOLeBO2PKogI88/XCY0qF5wesxkvsRFq2q0eS3ev5PU1BzFnSbp8YcscrYHq +qsE/a30oOXSbEJXsRFj5Uzle58iM2g48g0qJoW0kyTHtAATjT6z2/SjqCKrGw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZXwlV1RQ1zZlj; Wed, 09 Apr 2025 21:17:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539LHwnJ078138; Wed, 9 Apr 2025 21:17:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539LHwlE078135; Wed, 9 Apr 2025 21:17:58 GMT (envelope-from git) Date: Wed, 9 Apr 2025 21:17:58 GMT Message-Id: <202504092117.539LHwlE078135@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 136d2dc09310 - main - kboot: Start to move efi common routines to libkboot List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 136d2dc093105625e943466384efa1e1c16afad3 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=136d2dc093105625e943466384efa1e1c16afad3 commit 136d2dc093105625e943466384efa1e1c16afad3 Author: Warner Losh AuthorDate: 2025-04-09 21:16:57 +0000 Commit: Warner Losh CommitDate: 2025-04-09 21:16:57 +0000 kboot: Start to move efi common routines to libkboot Start to move the common efi routines into libkboot by moving the efi memory map walking and implementing a printing routine around it. Sponsored by: Netflix --- stand/kboot/include/efi.h | 17 ++++++ stand/kboot/kboot/arch/aarch64/load_addr.c | 87 +-------------------------- stand/kboot/libkboot/Makefile | 4 ++ stand/kboot/libkboot/efi.c | 97 ++++++++++++++++++++++++++++++ 4 files changed, 120 insertions(+), 85 deletions(-) diff --git a/stand/kboot/include/efi.h b/stand/kboot/include/efi.h new file mode 100644 index 000000000000..10368bd4a829 --- /dev/null +++ b/stand/kboot/include/efi.h @@ -0,0 +1,17 @@ +/*- + * Copyright (c) 2024, Netflix, Inc. + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#pragma once + +#include +#include + +/* Note, we mix and match FreeBSD types and EFI standard defined types */ + +typedef void (*efi_map_entry_cb)(struct efi_md *, void *argp); + +void foreach_efi_map_entry(struct efi_map_header *efihdr, efi_map_entry_cb cb, void *argp); +void print_efi_map(struct efi_map_header *efihdr); diff --git a/stand/kboot/kboot/arch/aarch64/load_addr.c b/stand/kboot/kboot/arch/aarch64/load_addr.c index 9d6f23a9d344..8ceb21007c45 100644 --- a/stand/kboot/kboot/arch/aarch64/load_addr.c +++ b/stand/kboot/kboot/arch/aarch64/load_addr.c @@ -5,7 +5,6 @@ */ #include -#include #include #include #include @@ -13,6 +12,7 @@ #include "kboot.h" #include "bootstrap.h" +#include "efi.h" /* * Info from dtb about the EFI system @@ -23,87 +23,6 @@ uint32_t efi_map_size; vm_paddr_t efi_map_phys_src; /* From DTB */ vm_paddr_t efi_map_phys_dst; /* From our memory map metadata module */ -typedef void (*efi_map_entry_cb)(struct efi_md *, void *argp); - -static void -foreach_efi_map_entry(struct efi_map_header *efihdr, efi_map_entry_cb cb, void *argp) -{ - struct efi_md *map, *p; - size_t efisz; - int ndesc, i; - - /* - * Memory map data provided by UEFI via the GetMemoryMap - * Boot Services API. - */ - efisz = roundup2(sizeof(struct efi_map_header), 16); - map = (struct efi_md *)((uint8_t *)efihdr + efisz); - - if (efihdr->descriptor_size == 0) - return; - ndesc = efihdr->memory_size / efihdr->descriptor_size; - - for (i = 0, p = map; i < ndesc; i++, - p = efi_next_descriptor(p, efihdr->descriptor_size)) { - cb(p, argp); - } -} - -static void -print_efi_map_entry(struct efi_md *p, void *argp __unused) -{ - const char *type; - static const char *types[] = { - "Reserved", - "LoaderCode", - "LoaderData", - "BootServicesCode", - "BootServicesData", - "RuntimeServicesCode", - "RuntimeServicesData", - "ConventionalMemory", - "UnusableMemory", - "ACPIReclaimMemory", - "ACPIMemoryNVS", - "MemoryMappedIO", - "MemoryMappedIOPortSpace", - "PalCode", - "PersistentMemory" - }; - - if (p->md_type < nitems(types)) - type = types[p->md_type]; - else - type = ""; - printf("%23s %012lx %012lx %08lx ", type, p->md_phys, - p->md_virt, p->md_pages); - if (p->md_attr & EFI_MD_ATTR_UC) - printf("UC "); - if (p->md_attr & EFI_MD_ATTR_WC) - printf("WC "); - if (p->md_attr & EFI_MD_ATTR_WT) - printf("WT "); - if (p->md_attr & EFI_MD_ATTR_WB) - printf("WB "); - if (p->md_attr & EFI_MD_ATTR_UCE) - printf("UCE "); - if (p->md_attr & EFI_MD_ATTR_WP) - printf("WP "); - if (p->md_attr & EFI_MD_ATTR_RP) - printf("RP "); - if (p->md_attr & EFI_MD_ATTR_XP) - printf("XP "); - if (p->md_attr & EFI_MD_ATTR_NV) - printf("NV "); - if (p->md_attr & EFI_MD_ATTR_MORE_RELIABLE) - printf("MORE_RELIABLE "); - if (p->md_attr & EFI_MD_ATTR_RO) - printf("RO "); - if (p->md_attr & EFI_MD_ATTR_RT) - printf("RUNTIME"); - printf("\n"); -} - static bool do_memory_from_fdt(int fd) { @@ -212,9 +131,7 @@ do_memory_from_fdt(int fd) efi_map_phys_src = 0; /* Mark MODINFOMD_EFI_MAP as valid */ close(fd2); printf("UEFI MAP:\n"); - printf("%23s %12s %12s %8s %4s\n", - "Type", "Physical", "Virtual", "#Pages", "Attr"); - foreach_efi_map_entry(efihdr, print_efi_map_entry, NULL); + print_efi_map(efihdr); return true; /* OK, we really have the memory map */ no_read: diff --git a/stand/kboot/libkboot/Makefile b/stand/kboot/libkboot/Makefile index 249bfef817c5..e23ae9bb9215 100644 --- a/stand/kboot/libkboot/Makefile +++ b/stand/kboot/libkboot/Makefile @@ -13,6 +13,10 @@ SRCS+= seg.c SRCS+= termios.c SRCS+= util.c +.if ${MACHINE_ARCH} != "powerpc64" +SRCS+= efi.c +.endif + .sinclude "${.CURDIR}/arch/${MACHINE_ARCH}/Makefile.inc" .include diff --git a/stand/kboot/libkboot/efi.c b/stand/kboot/libkboot/efi.c new file mode 100644 index 000000000000..1f7f28093819 --- /dev/null +++ b/stand/kboot/libkboot/efi.c @@ -0,0 +1,97 @@ +/* + * Copyright (c) 2024 Netflix, Inc + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#include +#include "stand.h" +#include "efi.h" + +void +foreach_efi_map_entry(struct efi_map_header *efihdr, efi_map_entry_cb cb, void *argp) +{ + struct efi_md *map, *p; + size_t efisz; + int ndesc, i; + + /* + * Memory map data provided by UEFI via the GetMemoryMap + * Boot Services API. + */ + efisz = roundup2(sizeof(struct efi_map_header), 16); + map = (struct efi_md *)((uint8_t *)efihdr + efisz); + + if (efihdr->descriptor_size == 0) + return; + ndesc = efihdr->memory_size / efihdr->descriptor_size; + + for (i = 0, p = map; i < ndesc; i++, + p = efi_next_descriptor(p, efihdr->descriptor_size)) { + cb(p, argp); + } +} + +static void +print_efi_map_entry(struct efi_md *p, void *argp __unused) +{ + const char *type; + static const char *types[] = { + "Reserved", + "LoaderCode", + "LoaderData", + "BootServicesCode", + "BootServicesData", + "RuntimeServicesCode", + "RuntimeServicesData", + "ConventionalMemory", + "UnusableMemory", + "ACPIReclaimMemory", + "ACPIMemoryNVS", + "MemoryMappedIO", + "MemoryMappedIOPortSpace", + "PalCode", + "PersistentMemory" + }; + + if (p->md_type < nitems(types)) + type = types[p->md_type]; + else + type = ""; + printf("%23s %012lx %012lx %08lx ", type, p->md_phys, + p->md_virt, p->md_pages); + if (p->md_attr & EFI_MD_ATTR_UC) + printf("UC "); + if (p->md_attr & EFI_MD_ATTR_WC) + printf("WC "); + if (p->md_attr & EFI_MD_ATTR_WT) + printf("WT "); + if (p->md_attr & EFI_MD_ATTR_WB) + printf("WB "); + if (p->md_attr & EFI_MD_ATTR_UCE) + printf("UCE "); + if (p->md_attr & EFI_MD_ATTR_WP) + printf("WP "); + if (p->md_attr & EFI_MD_ATTR_RP) + printf("RP "); + if (p->md_attr & EFI_MD_ATTR_XP) + printf("XP "); + if (p->md_attr & EFI_MD_ATTR_NV) + printf("NV "); + if (p->md_attr & EFI_MD_ATTR_MORE_RELIABLE) + printf("MORE_RELIABLE "); + if (p->md_attr & EFI_MD_ATTR_RO) + printf("RO "); + if (p->md_attr & EFI_MD_ATTR_RT) + printf("RUNTIME"); + printf("\n"); +} + +void +print_efi_map(struct efi_map_header *efihdr) +{ + printf("%23s %12s %12s %8s %4s\n", + "Type", "Physical", "Virtual", "#Pages", "Attr"); + + foreach_efi_map_entry(efihdr, print_efi_map_entry, NULL); +} From nobody Wed Apr 9 23:55:50 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZY0Fg1NJRz5sZlg; Wed, 09 Apr 2025 23:55: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZY0Ff72tDz3ntF; Wed, 09 Apr 2025 23:55:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744242951; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7/Uas8pqEp1h3r+7JI2jofNniSC2tbAOF5m9taWM3lM=; b=mK3KA7viTUOvYTNsGasHkJkZm8m8OAvNY0UHfvgVzDVZfjfs+qDKQx30Po9xjzwcIswWjG StW4GqXWpsXk4bOdILjXEYVDRzlddptfY5IkQ2atJIexONm6ShHBn1vaLmwYru0cHR1Mem vYOEAFMM1q9skhFS5S1v2kcJ1hTJb+OpWFh5TmLFVbLVXBbJY04qWef3r0Tu+wA+3TTX+O OHD+jnxgWfGMMmYcLcfPIV8QFzwZ5985jZ8xg2Bj2l2TWbllj5dMLrd+ibbMkkPfOd/2Ix yA+O7WBTswoUYs2gfVWSDKnatKcQgGMRma9gFo2TkqDB5M/nb1C6mj59WzFK4Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744242951; a=rsa-sha256; cv=none; b=k1CUYHcoSunYnQTWVwNmkYRNpyhTOex2cG2entglzv+okCEnU3l2OP4dL3OvbUTIsBennJ T59sFEpPjF4Md4L7Naxc9+IYd7MKrq5sNA26898Sk0liHnspeATyjqapckeWAWd/YObDQM wHAG4OoRAf5RP9yRDjMtr7hScuyp6gpauBhkNGr7jWGUIUouxytaBxFxNp58+oEJs5c1X3 l6daRMVsgsJ7ogm/xFl39XqAqK2aaIQ23eew4A3nHRReYUKNJhYLUXpTkMQClTlfagItMQ k7Fevb6L6ksoAkFWIqcEu4f4rYDPGdnzr7Bg/u00AqndpA5+B7+cVlmGfX5GMQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744242951; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7/Uas8pqEp1h3r+7JI2jofNniSC2tbAOF5m9taWM3lM=; b=iCfT5goOkSCJXVgpOfHTPo4Shu/P7Rr8JMItGPa9FTBnLKy2BI5WOHnh31e8iGjIVkImVf vkCGnh9criRo09wWT8EQA0GbWppJLmFEdDOVqSXdzI29dcFzWzHqoPv9lFwBzSWk9rUGlo nsbXfZAohiaHT8E5EAjfT8MxKBzt0lDmnEaFPy6o1upbHlBdv3JvvQV+TNJ5CUHanjEgHy sibp4efdDF8OnX84bwKhbB/X/bF9UbfCEO7/m6bN9UUpHurh8sxh0oZ5YFKdSHMkKTOcIs nGmxYOKbWIX9zBHm13hJend/bQDxuP8cPXluuzLbfef+dSD+CDjohd7WTR4uJg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZY0Ff6fZMzfY9; Wed, 09 Apr 2025 23:55:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 539NtoDF074622; Wed, 9 Apr 2025 23:55:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 539NtoCl074619; Wed, 9 Apr 2025 23:55:50 GMT (envelope-from git) Date: Wed, 9 Apr 2025 23:55:50 GMT Message-Id: <202504092355.539NtoCl074619@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 9227ecea6f4d - main - amd64: print limited EFIRT fault messages on first fault, not second List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9227ecea6f4d4fc8a0ac9830a63eac6d79b5ce57 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=9227ecea6f4d4fc8a0ac9830a63eac6d79b5ce57 commit 9227ecea6f4d4fc8a0ac9830a63eac6d79b5ce57 Author: Konstantin Belousov AuthorDate: 2025-04-09 23:54:23 +0000 Commit: Konstantin Belousov CommitDate: 2025-04-09 23:54:23 +0000 amd64: print limited EFIRT fault messages on first fault, not second Noted by: olce Sponsored by: The FreeBSD Foundation MFC after: 1 week --- sys/amd64/amd64/trap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/amd64/amd64/trap.c b/sys/amd64/amd64/trap.c index a400b8a2c022..09ac0a67dbef 100644 --- a/sys/amd64/amd64/trap.c +++ b/sys/amd64/amd64/trap.c @@ -436,7 +436,7 @@ trap(struct trapframe *frame) curpcb->pcb_onfault != NULL && type != T_PAGEFLT) { u_long cnt = atomic_fetchadd_long(&cnt_efirt_faults, 1); - if ((print_efirt_faults == 1 && cnt == 1) || + if ((print_efirt_faults == 1 && cnt == 0) || print_efirt_faults == 2) { trap_diag(frame, 0); printf("EFI RT fault %s\n", @@ -871,7 +871,7 @@ after_vmfault: if ((td->td_pflags & TDP_EFIRT) != 0) { u_long cnt = atomic_fetchadd_long(&cnt_efirt_faults, 1); - if ((print_efirt_faults == 1 && cnt == 1) || + if ((print_efirt_faults == 1 && cnt == 0) || print_efirt_faults == 2) { trap_diag(frame, eva); printf("EFI RT page fault\n"); From nobody Thu Apr 10 00:51:54 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZY1VM5bLHz5sdd5; Thu, 10 Apr 2025 00:51: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZY1VM1BSYz3C9k; Thu, 10 Apr 2025 00:51:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744246315; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eDvVqYE4SLPmhs4KNIuWF9Doy23uiCCKGhRflhiXQjA=; b=om8ZWV77PN9yS9eyBgpruxuliyWL/mK0j6aeybaubHB6vEse1aGCN09KeVfblrkexXinpo w1fGu0gt6gKul48CMoraxYPJRY1FNR6HZQTx/6LWUsC/vUKvovy4aSlYw1Muj5kteAVgJG olQ6dwiRT1Pq/gNoxSquKrlAbuGzYzCahQlWMHSOsHyRLgf1ZioVuOftys5VIGvoBAS6Fj IbPbGyEJhD8IQIHNFb3KRbgKQmDPUjI4KiT02WXhVsgor7tantnHesX47Hv2Pb/EkpDFsZ fDFNdrnebGIb1bpWLcaxxuPpMvGdON1gthe96VagBrHgSosOaMC8wLnTvkI/XQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744246315; a=rsa-sha256; cv=none; b=MB9gOk5FQk4Y7N4hBvO9GtJ8xLP5zs+HpZZU5LPngExi4qJcroV5W7djurPyQ4aNYaVVWl z1uLTdxazYgaMCatthwAROjxDCFKtUJk89kNKMU7I634BiUY8DEdhjdFXJdyKvj8AupT39 ZVExMpkdQB+rT9zD1IR1X6LlMpsSxUza8DI8LbtlKx4eP3qHPkfTgKPSVrDSE+F1eUyR2f kcLl7Q1WQPBYGmc9YOgD4yRw2ohvRFeEnhdkbOQTZkGkcvd+STTYcTXXx9fV7n7BbkSRO8 MyP86SLwu/4coIeOB5IMy394+GoCUSy4G596BZ85oIran11HyBmQpeCV3YBaYA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744246315; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eDvVqYE4SLPmhs4KNIuWF9Doy23uiCCKGhRflhiXQjA=; b=XQmtjSIKseuefJAl2bXkdB6Ur0I6NEDsonfCQ0+N+Om2ZEVex5F/K1OEKoMD17AzWoGH0L QJNrh+F5cP1CDH/t19ankFj7a49kXhkHwmeuKFwWCA93dCyk+XQ8DSAYJInNkXxCvFJI7F jFvpbd5kxdpnCY4F59/P3h0YZi0BDUS6j1q83ozFIpTMRaJRCDivVNYwz/kA5BwRCuTYl9 m6y0yv2uTob8YW7C2+MRk8p9sPNZSTBrc27dc15M9cepvPE7NnNrUNwKDipdQy0nCTG+27 xIpwAWH1rCAtEQMXcyLcIoNpgAaldV7gn/hA1U/uBPNWAcSUGn9IC0FND7e66A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZY1VM0jPZzhSR; Thu, 10 Apr 2025 00:51:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53A0psxa086740; Thu, 10 Apr 2025 00:51:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53A0ps4g086737; Thu, 10 Apr 2025 00:51:54 GMT (envelope-from git) Date: Thu, 10 Apr 2025 00:51:54 GMT Message-Id: <202504100051.53A0ps4g086737@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Rick Macklem Subject: git: dedbb972d294 - main - fhopen.2: Update man page for O_NAMEDATTR flag List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: dedbb972d2942ca45eadbdc22f5b139ea417f5b5 Auto-Submitted: auto-generated The branch main has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=dedbb972d2942ca45eadbdc22f5b139ea417f5b5 commit dedbb972d2942ca45eadbdc22f5b139ea417f5b5 Author: Rick Macklem AuthorDate: 2025-04-10 00:50:36 +0000 Commit: Rick Macklem CommitDate: 2025-04-10 00:50:36 +0000 fhopen.2: Update man page for O_NAMEDATTR flag This patch updates the man page for the O_NAMEDATTR flag. Another man page that explains named attributes will be introduced in a future commit. This is a content change. Reviewed by: manpages (zaiee) Fixes: 2ec2ba7e ("Add support for Solaris style extended attr") Differential Revision: https://reviews.freebsd.org/D49718 --- lib/libsys/fhopen.2 | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/lib/libsys/fhopen.2 b/lib/libsys/fhopen.2 index 5bd1e9f8d90b..aba53f1dd907 100644 --- a/lib/libsys/fhopen.2 +++ b/lib/libsys/fhopen.2 @@ -31,7 +31,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd June 29, 1999 +.Dd April 6, 2025 .Dt FHOPEN 2 .Os .Sh NAME @@ -75,6 +75,10 @@ together the flags used for the system call. All said flags are valid except for .Dv O_CREAT . +If the file handle refers to a named attribute or named attribute +directory, the +.Dv O_NAMEDATTR +flag must be specified. .Pp The .Fn fhstat @@ -116,6 +120,16 @@ Calling with .Dv O_CREAT set. +.It Bq Er ENOATTR +The file handle does not refer to a named attribute or named attribute +directory although the +.Dv O_NAMEDATTR +flag was specified. +.It Bq Er ENOATTR +The file handle refers to a named attribute or named attribute directory +although the +.Dv O_NAMEDATTR +flag was not specified. .It Bq Er ESTALE The file handle .Fa fhp @@ -125,7 +139,8 @@ is no longer valid. .Xr fstat 2 , .Xr fstatfs 2 , .Xr getfh 2 , -.Xr open 2 +.Xr open 2 , +.Xr named_attribute 9 .Sh HISTORY The .Fn fhopen , From nobody Thu Apr 10 07:09:50 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZY9tR2M9gz5sZ8S; Thu, 10 Apr 2025 07:09: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZY9tR1Z19z3JCf; Thu, 10 Apr 2025 07:09:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744268991; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hGxOe565a2nNuOjfbOaUGchVhxihzExj6viN1rRURSo=; b=sbZyJ8oT1CHlmFz1AKz4jtpb5xkXX7wovsIOj/ankiFMQMJzHr/lp9YkxrXREG/hRgh61i kwy+fsbwWLlp0pOE++kNsLfT8vp3qYSkQ2PifHb/ajmUZEv5r3C+gv7TjwBldXPBOmnhij jEma3WnTKeJGBEvuQZM0k+5UX2FgPfL6Dbq1rzH3uVH4mGCHoI/elyVsCHDF5uxalwfgRC bz2kZ2SpOyBa43RnbFTtUewdy/flXDxfhxbprVpk1rqjIUMp+9E8i0Kxu4ySnbwaARvNvB AY2zhQDdi5PQKbQTlrquxpllov+taqCEzoZoNeKBDgkzkXjB7sxNk13TjbHkgQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744268991; a=rsa-sha256; cv=none; b=V8Nbxd/66CtXm8D9UlPHLKhneYY/VUY2JSSO2ibTBjm4L7nsumOHPz/odJHMlQw7FdUm7Z Nhlb0etAa1j42/HPyltQsldFv706UQBlAM6jxXEETVCGoFSI1mtiCoKkKFQKoUrXHGhc0e aLy87RANAMGyJhbSoKedRBfSi1JmgT6e4ze6L1e2P8s1O9qlvPJHC/n9uULYr0+PBLra0J SX2TCqLimXQby7f0C9daceHXPvfsww/dhjL7UixjsxeZpcaOkxIAfghxY7vBqjKXxJiI7B TLKdmcKITArRBcdDPV63KSgzbFH+PoM2LAVqtGgSqw9h6Jwy7g0BOXkHnQC4gQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744268991; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hGxOe565a2nNuOjfbOaUGchVhxihzExj6viN1rRURSo=; b=ccAPR1S/lRI7ysL2UZB1VEpZBe0lO02qvTirdtwhbuMIKFhb2n2/KwY4r3AMsStrJFHtrH AFSaukbr69BlL9b4EL4bkRobKK3SupYZ52bvia6qkoA1F/u11GD+toqNpl7Dj47G3py1JK pBHFbQMBl6wkEonZnWDjKUWH5EAZVW21hfnROlxONCUV/q8YamwSDQ4IhY1AGbT2+1h8mI CmP2tSHHJLLfRF6hpOoHFLTqj2SHrXAc6uaUu832Nr7saDrxRLc/jIJ4h+I7PiSjndnBfc I88GLuhRBZxvMg6/WHgAjnpgUF8ADkZPNCPQvUTi0rY6+QEu72U1pSBzsXsFPQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZY9tR0dYFzsdZ; Thu, 10 Apr 2025 07:09:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53A79oOw081804; Thu, 10 Apr 2025 07:09:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53A79okT081801; Thu, 10 Apr 2025 07:09:50 GMT (envelope-from git) Date: Thu, 10 Apr 2025 07:09:50 GMT Message-Id: <202504100709.53A79okT081801@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Moore Subject: git: 14efeab6adba - main - vm_grab: reset iter after alloc failure List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dougm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 14efeab6adbabe95f3b18f00d02dae550dbfc7f3 Auto-Submitted: auto-generated The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=14efeab6adbabe95f3b18f00d02dae550dbfc7f3 commit 14efeab6adbabe95f3b18f00d02dae550dbfc7f3 Author: Doug Moore AuthorDate: 2025-04-10 07:06:38 +0000 Commit: Doug Moore CommitDate: 2025-04-10 07:06:38 +0000 vm_grab: reset iter after alloc failure After vm_page_grab_lookup fails to find a page, and vm_page_alloc_after fails to allocate one, reset the pages iterator which is invalidated by a release/acquire of the object write lock within the allocation code. Reported by: pho Reviewed by: kib Fixes: 7becd87c988c ("vm_grab: use iterator for grab lookup") Differential Revision: https://reviews.freebsd.org/D49755 --- sys/vm/vm_page.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index f9653f1d1ec9..741c45490d96 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -4882,6 +4882,7 @@ vm_page_grab(vm_object_t object, vm_pindex_t pindex, int allocflags) if ((allocflags & (VM_ALLOC_NOWAIT | VM_ALLOC_WAITFAIL)) != 0) return (NULL); + pctrie_iter_reset(&pages); } vm_page_grab_release(m, allocflags); @@ -5124,6 +5125,7 @@ vm_page_grab_zero_partial(vm_object_t object, vm_pindex_t pindex, int base, vm_page_launder(m); break; } + pctrie_iter_reset(&pages); } pmap_zero_page_area(m, base, end - base); From nobody Thu Apr 10 07:20:23 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYB6c2H3fz5sZkN; Thu, 10 Apr 2025 07:20: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYB6c106Zz3K7V; Thu, 10 Apr 2025 07:20:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744269624; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hkBvHEjuzmLPyAi+qBzgcC8bL6YiqGQrKTBevQEoMUE=; b=teUgXYmthm469L46+A/8gf3wIc7qw7SqBxFGIPWzwzVjs7udsR2kpMW5KpslSTK6JKaphD hrgc9A2FnOiKm5bsqL/CJWFJg7Na7kZO7nppOfye4NBk6uIqmtamJIzAYsuDmHLWDyF7YG I544iqiqGu41CK43m4qKetQ000weCUNh1nO/Zx/XgH5h5d0Z10h8tdUUgPI3WN2ENsF26J Q25Lht41CxNnQVUEYBeY2qHxujFwnbNZABvI6wb1kmJDVfTI3Pi8K8wQFXcuCKHN61zqMh GnMWNdUVS+1sfEIBG9xkESPk1GAsN3py2jNle7Bl/4Kxtt8QAVKWhQct8e81Zg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744269624; a=rsa-sha256; cv=none; b=UH+aODmp2wkYlKLrQeMJEvmFc39DBmbDcZXGTJJJglqaVsy4nn94vaMmnnCgfmNL55rKcf UKkZsN4dUnYiiNDgDjeIPIUMOsCeppvTyAqhUeLDTqVHpAmiO0wCESoXnVtFOikVyxp4KR uGYjgDLxiOPDZfy0U75dPCKfmStgXg1HRHwJ155IIv5QyMDO1rOGO2IwV0RkMz//rdmqUO B44BNt+PFMPLxYp7Laz1/bkHewDoRr7WD9WNClsSYyFeM0l36U9ftrn0oABvgYcEjcJbAi pEz++3ANmZg7Jeh1BOcuC7GRdzSVvzUJfF1sCAr/Q6gPQc1e6fCyP79GseRyiw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744269624; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hkBvHEjuzmLPyAi+qBzgcC8bL6YiqGQrKTBevQEoMUE=; b=JnwPqvoidn871I8t5xrA9c1C/SlpTAV0Rnvmcc7Y6Z82gfhJUP3a9tGnwVET7iO3qvyhjh /soDoIp+ZV+sd6eRBOhx+WkY3iRWsiaoDrRaxKdE0AT7A/7+9SjBRPuh360BsihdXThZTP bGEGSsu33IpPcPjnDzhube8C6w6MdBfABoYKgziSIfFeS4bO1zj8Vf7Q0zK30HxIjPiFc3 tQY7/6q27wVvoLbLv+TgJmpf6EgD8kkOX/CCfRNTekWDxZYywt/HzFEVFSzkZmXAPq3h5x kDfq4kN/KTQcYizmApeKABXxmd3L3EMQAafikDYsOdg4xnTN23oGXQr8tSuy8g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYB6b6rczzsvg; Thu, 10 Apr 2025 07:20:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53A7KNmF009280; Thu, 10 Apr 2025 07:20:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53A7KNh2009277; Thu, 10 Apr 2025 07:20:23 GMT (envelope-from git) Date: Thu, 10 Apr 2025 07:20:23 GMT Message-Id: <202504100720.53A7KNh2009277@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Moore Subject: git: f06cbfc5592e - main - vm_fault: use iterator for allocation List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dougm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f06cbfc5592e58104fe01f3f458928ee09be24fc Auto-Submitted: auto-generated The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=f06cbfc5592e58104fe01f3f458928ee09be24fc commit f06cbfc5592e58104fe01f3f458928ee09be24fc Author: Doug Moore AuthorDate: 2025-04-10 07:19:06 +0000 Commit: Doug Moore CommitDate: 2025-04-10 07:19:06 +0000 vm_fault: use iterator for allocation Pass an iterator to vm_fault_allocate, so that it can invoke vm_page_alloc_after. In vm_fault_object, use an iterator for a page lookup so that the search can benefit the allocation in vm_fault_allocate. In vm_fault, define an iterator, initialize it only when it might be used, and pass it on to vm_fault_allocate. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D49741 --- sys/vm/vm_fault.c | 18 ++++++++++++------ sys/vm/vm_radix.h | 13 +++++++++++++ 2 files changed, 25 insertions(+), 6 deletions(-) diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index 48a7a47e4c59..81631b672040 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -105,6 +105,7 @@ #include #include #include +#include #include #include @@ -1230,7 +1231,7 @@ vm_fault_allocate_oom(struct faultstate *fs) * Allocate a page directly or via the object populate method. */ static enum fault_status -vm_fault_allocate(struct faultstate *fs) +vm_fault_allocate(struct faultstate *fs, struct pctrie_iter *pages) { struct domainset *dset; enum fault_status res; @@ -1291,8 +1292,9 @@ vm_fault_allocate(struct faultstate *fs) vm_fault_unlock_and_deallocate(fs); return (FAULT_FAILURE); } - fs->m = vm_page_alloc(fs->object, fs->pindex, - P_KILLED(curproc) ? VM_ALLOC_SYSTEM : 0); + fs->m = vm_page_alloc_after(fs->object, fs->pindex, + P_KILLED(curproc) ? VM_ALLOC_SYSTEM : 0, + vm_radix_iter_lookup_lt(pages, fs->pindex)); } if (fs->m == NULL) { if (vm_fault_allocate_oom(fs)) @@ -1459,6 +1461,7 @@ vm_fault_busy_sleep(struct faultstate *fs) static enum fault_status vm_fault_object(struct faultstate *fs, int *behindp, int *aheadp) { + struct pctrie_iter pages; enum fault_status res; bool dead; @@ -1484,7 +1487,8 @@ vm_fault_object(struct faultstate *fs, int *behindp, int *aheadp) /* * See if the page is resident. */ - fs->m = vm_page_lookup(fs->object, fs->pindex); + vm_page_iter_init(&pages, fs->object); + fs->m = vm_radix_iter_lookup(&pages, fs->pindex); if (fs->m != NULL) { if (!vm_page_tryxbusy(fs->m)) { vm_fault_busy_sleep(fs); @@ -1514,7 +1518,7 @@ vm_fault_object(struct faultstate *fs, int *behindp, int *aheadp) vm_fault_unlock_and_deallocate(fs); return (FAULT_RESTART); } - res = vm_fault_allocate(fs); + res = vm_fault_allocate(fs, &pages); if (res != FAULT_CONTINUE) return (res); } @@ -1549,6 +1553,7 @@ int vm_fault(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, int fault_flags, vm_page_t *m_hold) { + struct pctrie_iter pages; struct faultstate fs; int ahead, behind, faultcount, rv; enum fault_status res; @@ -1603,6 +1608,7 @@ RetryFault: } VM_OBJECT_ASSERT_WLOCKED(fs.first_object); } else { + vm_page_iter_init(&pages, fs.first_object); VM_OBJECT_WLOCK(fs.first_object); } @@ -1627,7 +1633,7 @@ RetryFault: fs.pindex = fs.first_pindex; if ((fs.entry->eflags & MAP_ENTRY_SPLIT_BOUNDARY_MASK) != 0) { - res = vm_fault_allocate(&fs); + res = vm_fault_allocate(&fs, &pages); switch (res) { case FAULT_RESTART: goto RetryFault; diff --git a/sys/vm/vm_radix.h b/sys/vm/vm_radix.h index 561e36f2e164..e9ee3e7f3911 100644 --- a/sys/vm/vm_radix.h +++ b/sys/vm/vm_radix.h @@ -270,6 +270,19 @@ vm_radix_iter_lookup_le(struct pctrie_iter *pages, vm_pindex_t index) return (VM_RADIX_PCTRIE_ITER_LOOKUP_LE(pages, index)); } +/* + * Initialize an iterator pointing to the page with the greatest pindex that is + * less than to the specified pindex, or NULL if there are no such + * pages. Return the page. + * + * Requires that access be externally synchronized by a lock. + */ +static __inline vm_page_t +vm_radix_iter_lookup_lt(struct pctrie_iter *pages, vm_pindex_t index) +{ + return (index == 0 ? NULL : vm_radix_iter_lookup_le(pages, index - 1)); +} + /* * Update the iterator to point to the page with the pindex that is one greater * than the current pindex, or NULL if there is no such page. Return the page. From nobody Thu Apr 10 09:44:53 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYFKL15skz5skMP; Thu, 10 Apr 2025 09:44: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYFKL0LxSz3XM6; Thu, 10 Apr 2025 09:44:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744278294; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9HCGuFwm9GNW2Psf9oFGpzG4Ke1xOnOHv+7FcctV+tY=; b=UMEndD7BvRmtfB94HLiJo4hYP32y8G92kiyAldIhL/YqHORxSqSDDWYZOIgVA7rLd1F3qu 5B8+iKDfODk+Sgaq7YogiqMaU5pw7KP95evs0V8eRyEpSR0uEj441iWns4IlfX87GsjeK3 XYbHX0J6lxUGTW6voUwv+Cch/Xd1rX2Do4jo6F/y2EVxqMD8lxHiTm9IEB0pF7ONETo7Tz zEi/EgX8oEm0hNruQhstynYw+1yd6Z41h2RZPZjik9PQ/V2XRKN6xMl+H9sJgD56a5+yV0 6+g2ad8WRPlsYsnowE0XPpfL7LSD5v1scv7qe4HsRSa5nfUZiFhrtuANQWhFKg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744278294; a=rsa-sha256; cv=none; b=DHv05paffEeUbxNRsXyg8ysz81atkfLXk2yTIVkuWlf02BQHFhQJIW/zIvApdnUKhyM4Tf ZSOYAyUHhsdRqFfvIHGni+QA6/AyYLIS6Jl+CqbEXtRt1uBgi3lExHlrN9TLooX/fBnhc/ n65DE5cyFj0ngIW77GzVzZO37Cpqlzhf/Dbio23W3DZBcKB0YSYdtvCGuvl6qb0gTMt7O5 +jHTKqL7I8I25I8Q5zHD5cmR+UErN77/Rih9h7vS67pcxzS1NGrtPw8ADlHb5wQ2BoAaOz uDJMXpKPnKAZpKREj4DP2W0s31IbQ1Ui6QW4KHi4m8T9U1ozP9Uo4JT1KExpfA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744278294; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9HCGuFwm9GNW2Psf9oFGpzG4Ke1xOnOHv+7FcctV+tY=; b=X7oRHBIfcso7lrY+KJ4YkoJtqMPpPYzJuKpHVksAMh10JP+gjuAECtyGlbDras3Z44EYrt QWJBF3UJPaUIjizkUDaerNGg5k2jrqxpkmfvz62hUMQzK3/VkFGRhcUE86CwSshJePj18a SISmoSIoWQ/Jsx8KO1pZeAEbMTonFN1oejLDyZW+A0b73QdUfrzU2PUNKuxJ2x7IT22XFm 8rPX+wTPBcoI2aaEEjUJJMpVXOhjuRumKb09xwdNo85f8YZcpkjhozzUdWTTVwWR9aQRGG PF8S7Zr7HLVLCHB5ySF90R+BPzRdT2s7OINxnAHySduYPdNr0m+PrmNVPbT4Pw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYFKK6k3lzxdC; Thu, 10 Apr 2025 09:44:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53A9iri3077662; Thu, 10 Apr 2025 09:44:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53A9irCi077659; Thu, 10 Apr 2025 09:44:53 GMT (envelope-from git) Date: Thu, 10 Apr 2025 09:44:53 GMT Message-Id: <202504100944.53A9irCi077659@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bojan =?utf-8?Q?Novkovi=C4=87?= Subject: git: b74a756a9f53 - main - collate: Add support for equivalence classes and collating symbols List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bnovkov X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b74a756a9f537c6da41d721075f69216160a08a6 Auto-Submitted: auto-generated The branch main has been updated by bnovkov: URL: https://cgit.FreeBSD.org/src/commit/?id=b74a756a9f537c6da41d721075f69216160a08a6 commit b74a756a9f537c6da41d721075f69216160a08a6 Author: Bojan Novković AuthorDate: 2025-04-03 14:45:08 +0000 Commit: Bojan Novković CommitDate: 2025-04-10 09:44:23 +0000 collate: Add support for equivalence classes and collating symbols This change adds support for matching single and multi-character equivalence classes and collating symbols, as specified by POSIX1, section 9.3.5. Sponsored by: Klara, Inc. Obtained from: https://github.com/apple-oss-distributions/Libc Differential Revision: https://reviews.freebsd.org/D49659 Reviewed by: markj --- lib/libc/locale/collate.c | 259 ++++++++++++++++++++++++++++++++++++++++++++++ lib/libc/locale/collate.h | 11 +- 2 files changed, 269 insertions(+), 1 deletion(-) diff --git a/lib/libc/locale/collate.c b/lib/libc/locale/collate.c index 8e3635485f10..c0fc4c91481d 100644 --- a/lib/libc/locale/collate.c +++ b/lib/libc/locale/collate.c @@ -43,6 +43,7 @@ #include #include +#include #include #include #include @@ -732,3 +733,261 @@ __collate_equiv_value(locale_t locale, const wchar_t *str, size_t len) } return (0); } + +/* + * __collate_collating_symbol takes the multibyte string specified by + * src and slen, and using ps, converts that to a wide character. Then + * it is checked to verify it is a collating symbol, and then copies + * it to the wide character string specified by dst and dlen (the + * results are not null terminated). The length of the wide characters + * copied to dst is returned if successful. Zero is returned if no such + * collating symbol exists. (size_t)-1 is returned if there are wide-character + * conversion errors, if the length of the converted string is greater that + * COLLATE_STR_LEN or if dlen is too small. It is up to the calling routine to + * preserve the mbstate_t structure as needed. + */ +size_t +__collate_collating_symbol(wchar_t *dst, size_t dlen, const char *src, + size_t slen, mbstate_t *ps) +{ + wchar_t wname[COLLATE_STR_LEN]; + wchar_t w, *wp; + struct xlocale_collate *table; + size_t len, l; + + table = + (struct xlocale_collate *)__get_locale()->components[XLC_COLLATE]; + /* POSIX locale */ + if (table->__collate_load_error) { + if (dlen < 1) + return ((size_t)-1); + if (slen != 1 || !isascii(*src)) + return (0); + *dst = *src; + return (1); + } + for (wp = wname, len = 0; slen > 0; len++) { + l = mbrtowc(&w, src, slen, ps); + if (l == (size_t)-1 || l == (size_t)-2) + return ((size_t)-1); + if (l == 0) + break; + if (len >= COLLATE_STR_LEN) + return ((size_t)-1); + *wp++ = w; + src += l; + slen -= l; + } + if (len == 0 || len > dlen) + return ((size_t)-1); + if (len == 1) { + if (*wname <= UCHAR_MAX) { + if (table->char_pri_table[*wname].pri[0] >= 0) { + if (dlen > 0) + *dst = *wname; + return (1); + } + return (0); + } else if (table->info->large_count > 0) { + collate_large_t *match; + match = largesearch(table, *wname); + if (match && match->pri.pri[0] >= 0) { + if (dlen > 0) + *dst = *wname; + return (1); + } + } + return (0); + } + *wp = 0; + if (table->info->chain_count > 0) { + collate_chain_t *match; + int ll; + match = chainsearch(table, wname, &ll); + if (match) { + if (ll < dlen) + dlen = ll; + wcsncpy(dst, wname, dlen); + return (dlen); + } + } + return (0); +} + +/* + * __collate_equiv_class returns the equivalence class number for the symbol + * specified by src and slen, using ps to convert from multi-byte to wide + * character. Zero is returned if the symbol is not in an equivalence + * class. -1 is returned if there are wide character conversion errors, + * if there are any greater-than-8-bit characters or if a multi-byte symbol + * is greater or equal to COLLATE_STR_LEN in length. It is up to the calling + * routine to preserve the mbstate_t structure as needed. + */ +int +__collate_equiv_class(const char *src, size_t slen, mbstate_t *ps) +{ + wchar_t wname[COLLATE_STR_LEN]; + wchar_t w, *wp; + struct xlocale_collate *table; + size_t len, l; + int e; + + table = + (struct xlocale_collate *)__get_locale()->components[XLC_COLLATE]; + /* POSIX locale */ + if (table->__collate_load_error) + return (0); + for (wp = wname, len = 0; slen > 0; len++) { + l = mbrtowc(&w, src, slen, ps); + if (l == (size_t)-1 || l == (size_t)-2) + return (-1); + if (l == 0) + break; + if (len >= COLLATE_STR_LEN) + return (-1); + *wp++ = w; + src += l; + slen -= l; + } + if (len == 0) + return (-1); + if (len == 1) { + e = -1; + if (*wname <= UCHAR_MAX) + e = table->char_pri_table[*wname].pri[0]; + else if (table->info->large_count > 0) { + collate_large_t *match; + match = largesearch(table, *wname); + if (match) + e = match->pri.pri[0]; + } + if (e == 0) + return (IGNORE_EQUIV_CLASS); + return (e > 0 ? e : 0); + } + *wp = 0; + if (table->info->chain_count > 0) { + collate_chain_t *match; + int ll; + match = chainsearch(table, wname, &ll); + if (match) { + e = match->pri[0]; + if (e == 0) + return (IGNORE_EQUIV_CLASS); + return (e < 0 ? -e : e); + } + } + return (0); +} + + +/* + * __collate_equiv_match tries to match any single or multi-character symbol + * in equivalence class equiv_class in the multi-byte string specified by src + * and slen. If start is non-zero, it is taken to be the first (pre-converted) + * wide character. Subsequence wide characters, if needed, will use ps in + * the conversion. On a successful match, the length of the matched string + * is returned (including the start character). If dst is non-NULL, the + * matched wide-character string is copied to dst, a wide character array of + * length dlen (the results are not zero-terminated). If rlen is non-NULL, + * the number of character in src actually used is returned. Zero is + * returned by __collate_equiv_match if there is no match. (size_t)-1 is + * returned on error: if there were conversion errors or if dlen is too small + * to accept the results. On no match or error, ps is restored to its incoming + * state. + */ +size_t +__collate_equiv_match(int equiv_class, wchar_t *dst, size_t dlen, wchar_t start, + const char *src, size_t slen, mbstate_t *ps, size_t *rlen) +{ + wchar_t w; + size_t len, l, clen; + int i; + wchar_t buf[COLLATE_STR_LEN], *wp; + mbstate_t save; + const char *s = src; + struct xlocale_collate *table; + size_t sl = slen; + collate_chain_t *ch = NULL; + + table = + (struct xlocale_collate *)__get_locale()->components[XLC_COLLATE]; + /* POSIX locale */ + if (table->__collate_load_error) + return ((size_t)-1); + if (equiv_class == IGNORE_EQUIV_CLASS) + equiv_class = 0; + if (ps) + save = *ps; + wp = buf; + len = clen = 0; + if (start) { + *wp++ = start; + len = 1; + } + /* convert up to the max chain length */ + while (sl > 0 && len < table->info->chain_max_len) { + l = mbrtowc(&w, s, sl, ps); + if (l == (size_t)-1 || l == (size_t)-2 || l == 0) + break; + *wp++ = w; + s += l; + clen += l; + sl -= l; + len++; + } + *wp = 0; + if (len > 1 && (ch = chainsearch(table, buf, &i)) != NULL) { + int e = ch->pri[0]; + if (e < 0) + e = -e; + if (e == equiv_class) + goto found; + } + /* try single character */ + i = 1; + if (*buf <= UCHAR_MAX) { + if (equiv_class == table->char_pri_table[*buf].pri[0]) + goto found; + } else if (table->info->large_count > 0) { + collate_large_t *match; + match = largesearch(table, *buf); + if (match && equiv_class == match->pri.pri[0]) + goto found; + } + /* no match */ + if (ps) + *ps = save; + return (0); +found: + /* + * If we converted more than we used, restore to initial + * and reconvert up to what did match. + */ + if (i < len) { + len = i; + if (ps) + *ps = save; + if (start) + i--; + clen = 0; + while (i-- > 0) { + l = mbrtowc(&w, src, slen, ps); + src += l; + clen += l; + slen -= l; + } + } + if (dst) { + if (dlen < len) { + if (ps) + *ps = save; + return ((size_t)-1); + } + for (wp = buf; len > 0; len--) + *dst++ = *wp++; + } + if (rlen) + *rlen = clen; + return (len); +} diff --git a/lib/libc/locale/collate.h b/lib/libc/locale/collate.h index f157d8651899..64e0e6f2337d 100644 --- a/lib/libc/locale/collate.h +++ b/lib/libc/locale/collate.h @@ -38,6 +38,7 @@ #include #include +#include #include "xlocale_private.h" /* @@ -65,6 +66,8 @@ #define DIRECTIVE_DIRECTION_MASK (DIRECTIVE_FORWARD | DIRECTIVE_BACKWARD) +#define IGNORE_EQUIV_CLASS 1 + /* * The collate file format is as follows: * @@ -85,6 +88,7 @@ typedef struct collate_info { uint8_t directive_count; uint8_t directive[COLL_WEIGHTS_MAX]; + uint8_t chain_max_len; /* In padding */ int32_t pri_count[COLL_WEIGHTS_MAX]; int32_t flags; int32_t chain_count; @@ -126,8 +130,13 @@ struct xlocale_collate { }; __BEGIN_DECLS -int __collate_load_tables(const char *); +size_t __collate_collating_symbol(wchar_t *, size_t, const char *, size_t, + mbstate_t *); +int __collate_equiv_class(const char *, size_t, mbstate_t *); int __collate_equiv_value(locale_t, const wchar_t *, size_t); +size_t __collate_equiv_match(int, wchar_t *, size_t, wchar_t, const char *, + size_t, mbstate_t *, size_t *); +int __collate_load_tables(const char *); void _collate_lookup(struct xlocale_collate *,const wchar_t *, int *, int *, int, const int **); int __collate_range_cmp(char, char); From nobody Thu Apr 10 09:44:54 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYFKM1QXTz5skPD; Thu, 10 Apr 2025 09:44: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYFKL6pZZz3Xhl; Thu, 10 Apr 2025 09:44:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744278295; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=06orsiOaief9I8uQCJPlYGSaqf+xPxw+4z6v4+RQ5Cg=; b=s9XeS7oVW1Uhy389ZDMPqgNju/Ms8XylrBQ6I9N+LG6wSKfBFnhUvJpZzPPTKyqCqp1cJd kXpHlZmhe9tpN515JGjRysDB6i/zewBUSQ/cEGnsnaJ1ICheG+Lo8YTzW0ceMohL4GBdsN cNzrLcN6+SWnS+d2jCYvp7iUxxfmUJJAiG4Tm/ZVwvvYGJGwfFC1uSC8o4dL1ZB3IX3CEM lxKei86kf6GmRqtSCx5XQntgiTwIkZC/my4AqOW54Jykx0IgPzo5EuPsf2mqpCidJ1ZS0c wrYd2jM4SMloZhqxG+WHmCAYlS55gDbAcqIksyIjkOEV7FNL5txmXUtMRID0aQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744278295; a=rsa-sha256; cv=none; b=nDsxTtueJApsAgW14EhCHwwb0u5Tuttx4+PfStkq8PpM+WEhw6P4x3sitvXCrScOhVBDaK mIiLpjHZyRxPnxINLAvBa6Rim50ca5snKT7PSk6/9pn5iZ0KltGXM3hUZgSp98BF/sAj+D K98Iqac1pQKxB5LlXyx1iwDXiX4i7vi1b9wSAX2vYvYhtzE/X5T8ZvF7DX8ZQ+WDYyPqPo l30SiaaeXHYsgU3yEKRiu4o6RLROfBe+NKnmSh8eWK3uxBiVFKmcv/YWzGkMCOpC6h7WXn zZ0buDXEmvejNAgAMP1OHmCx/krCDEfmUDhwvqp/5DwX933Pbb8rUzGNzHcceQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744278295; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=06orsiOaief9I8uQCJPlYGSaqf+xPxw+4z6v4+RQ5Cg=; b=lpfO/BGC7XEXkpAeRUAYP7ppn54BfQ7Gmv4uMdgfhoEL4LfBf3v/12UY30618HlsBD4iZe 8NJTOTU3RX2/j3I6W7/NAf5hzfVcKS26/5Vm4BnsJg4U9LJVtMBhTYXOu1HGm+3wQ+Yq5g PsUvZSRm1nSkZeV392x4bYYqLa576ylnQgiyl0ybc9S+T0fo7rOYM6UUbQC8JsskW4ip9u xqbn/oyVfDYOt5Ul9RA19/RFGtbzvzbS3JSU4gLJwvNsq3rg9CfQfaKgtZquoieQ7X/7DG 0w4tB1MoGfOnvy/KwtrC2EFWR0LddLlLZd+aC1oJSWMEC5Je6A9ubz8DsZscuA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYFKL6DFZzxtM; Thu, 10 Apr 2025 09:44:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53A9isIZ077699; Thu, 10 Apr 2025 09:44:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53A9isp1077696; Thu, 10 Apr 2025 09:44:54 GMT (envelope-from git) Date: Thu, 10 Apr 2025 09:44:54 GMT Message-Id: <202504100944.53A9isp1077696@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bojan =?utf-8?Q?Novkovi=C4=87?= Subject: git: af79566b9315 - main - fnmatch: Add support for collating symbols, equivalence classes, and character classes List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bnovkov X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: af79566b9315dd5251b093b6237a6fa239351398 Auto-Submitted: auto-generated The branch main has been updated by bnovkov: URL: https://cgit.FreeBSD.org/src/commit/?id=af79566b9315dd5251b093b6237a6fa239351398 commit af79566b9315dd5251b093b6237a6fa239351398 Author: Bojan Novković AuthorDate: 2025-04-03 14:57:51 +0000 Commit: Bojan Novković CommitDate: 2025-04-10 09:44:28 +0000 fnmatch: Add support for collating symbols, equivalence classes, and character classes This change extends fnmatch to support collating symbol expressions, equivalence class expressions, and character class expressions (as defined by POSIX.1, section 9.3.5), along with the corresponding tests. Sponsored by: Klara, Inc. Obtained from: https://github.com/apple-oss-distributions/Libc Differential Revision: https://reviews.freebsd.org/D49660 Reviewed by: markj, ziaee (manpages) --- lib/libc/gen/fnmatch.3 | 8 +- lib/libc/gen/fnmatch.c | 221 ++++++++++++++++++++++++++++++++++---- lib/libc/tests/gen/fnmatch_test.c | 81 ++++++++++++++ 3 files changed, 285 insertions(+), 25 deletions(-) diff --git a/lib/libc/gen/fnmatch.3 b/lib/libc/gen/fnmatch.3 index 804bc968c1ce..7f020fec58e3 100644 --- a/lib/libc/gen/fnmatch.3 +++ b/lib/libc/gen/fnmatch.3 @@ -27,7 +27,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 2, 2022 +.Dd April 7, 2025 .Dt FNMATCH 3 .Os .Sh NAME @@ -129,12 +129,8 @@ otherwise, it returns the value .Sh STANDARDS The current implementation of the .Fn fnmatch -function -.Em does not -conform to +function is expected to conform to .St -p1003.2 . -Collating symbol expressions, equivalence class expressions and -character class expressions are not supported. .Sh HISTORY A predecessor to .Fn fnmatch , diff --git a/lib/libc/gen/fnmatch.c b/lib/libc/gen/fnmatch.c index fb1829e69502..43e7e214c3cb 100644 --- a/lib/libc/gen/fnmatch.c +++ b/lib/libc/gen/fnmatch.c @@ -67,7 +67,8 @@ #define RANGE_NOMATCH 0 #define RANGE_ERROR (-1) -static int rangematch(const char *, wchar_t, int, char **, mbstate_t *); +static int rangematch(const char *, wchar_t, const char *, int, char **, + char **, mbstate_t *, mbstate_t *); static int fnmatch1(const char *, const char *, const char *, int, mbstate_t, mbstate_t); @@ -85,7 +86,7 @@ fnmatch1(const char *pattern, const char *string, const char *stringstart, { const char *bt_pattern, *bt_string; mbstate_t bt_patmbs, bt_strmbs; - char *newp; + char *newp, *news; char c; wchar_t pc, sc; size_t pclen, sclen; @@ -164,17 +165,17 @@ fnmatch1(const char *pattern, const char *string, const char *stringstart, ((flags & FNM_PATHNAME) && *(string - 1) == '/'))) goto backtrack; - switch (rangematch(pattern, sc, flags, &newp, - &patmbs)) { + switch (rangematch(pattern, sc, string + sclen, flags, + &newp, &news, &patmbs, &strmbs)) { case RANGE_ERROR: goto norm; case RANGE_MATCH: pattern = newp; + string = news; break; case RANGE_NOMATCH: goto backtrack; } - string += sclen; break; case '\\': if (!(flags & FNM_NOESCAPE)) { @@ -218,8 +219,10 @@ fnmatch1(const char *pattern, const char *string, const char *stringstart, if (sc == '/' && flags & FNM_PATHNAME) return (FNM_NOMATCH); bt_string += sclen; - pattern = bt_pattern, patmbs = bt_patmbs; - string = bt_string, strmbs = bt_strmbs; + pattern = bt_pattern; + patmbs = bt_patmbs; + string = bt_string; + strmbs = bt_strmbs; } break; } @@ -228,15 +231,20 @@ fnmatch1(const char *pattern, const char *string, const char *stringstart, } static int -rangematch(const char *pattern, wchar_t test, int flags, char **newp, - mbstate_t *patmbs) +rangematch(const char *pattern, wchar_t test, const char *string, int flags, + char **newp, char **news, mbstate_t *patmbs, mbstate_t *strmbs) { int negate, ok; wchar_t c, c2; size_t pclen; const char *origpat; struct xlocale_collate *table = - (struct xlocale_collate*)__get_locale()->components[XLC_COLLATE]; + (struct xlocale_collate *)__get_locale()->components[XLC_COLLATE]; + wchar_t buf[COLLATE_STR_LEN]; /* STR_LEN defined in collate.h */ + const char *cp, *savestring; + int special; + mbstate_t save; + size_t sclen, len; /* * A bracket expression starting with an unquoted circumflex @@ -259,20 +267,132 @@ rangematch(const char *pattern, wchar_t test, int flags, char **newp, ok = 0; origpat = pattern; for (;;) { + c = 0; if (*pattern == ']' && pattern > origpat) { - pattern++; break; } else if (*pattern == '\0') { return (RANGE_ERROR); } else if (*pattern == '/' && (flags & FNM_PATHNAME)) { return (RANGE_NOMATCH); - } else if (*pattern == '\\' && !(flags & FNM_NOESCAPE)) + } else if (*pattern == '\\' && !(flags & FNM_NOESCAPE)) { pattern++; - pclen = mbrtowc(&c, pattern, MB_LEN_MAX, patmbs); - if (pclen == (size_t)-1 || pclen == (size_t)-2) - return (RANGE_NOMATCH); - pattern += pclen; + } else if (*pattern == '[' && + ((special = *(pattern + 1)) == '.' || + special == '=' || special == ':')) { + cp = (pattern += 2); + while ((cp = strchr(cp, special))) { + if (*(cp + 1) == ']') + break; + cp++; + } + if (!cp) + return (RANGE_ERROR); + if (special == '.') { +treat_like_collating_symbol: + len = __collate_collating_symbol(buf, + COLLATE_STR_LEN, pattern, + cp - pattern, patmbs); + if (len == (size_t)-1 || len == 0) + return (RANGE_ERROR); + pattern = cp + 2; + if (len > 1) { + wchar_t *wp, sc; + /* + * No multi-character collation + * symbols as start of range. + */ + if (*(cp + 2) == '-' && + *(cp + 3) != EOS && + *(cp + 3) != ']') + return (RANGE_ERROR); + wp = buf; + if (test != *wp++) + continue; + if (len == 1) { + ok = 1; + break; + } + memcpy(&save, strmbs, sizeof(save)); + savestring = string; + while (--len > 0) { + sclen = mbrtowc(&sc, string, + MB_LEN_MAX, strmbs); + if (sclen == (size_t)-1 || + sclen == (size_t)-2) { + sc = (unsigned char)*string; + sclen = 1; + memset(&strmbs, 0, + sizeof(strmbs)); + } + if (sc != *wp++) { + memcpy(strmbs, &save, + sizeof(save)); + string = savestring; + break; + } + string += sclen; + } + if (len == 0) { + ok = 1; + break; + } + continue; /* no match */ + } + c = *buf; + } else if (special == '=') { + int ec; + memcpy(&save, patmbs, sizeof(save)); + ec = __collate_equiv_class(pattern, + cp - pattern, patmbs); + if (ec < 0) + return (RANGE_ERROR); + if (ec == 0) { + memcpy(patmbs, &save, sizeof(save)); + goto treat_like_collating_symbol; + } + pattern = cp + 2; + /* no equivalence classes as start of range */ + if (*(cp + 2) == '-' && *(cp + 3) != EOS && + *(cp + 3) != ']') + return (RANGE_ERROR); + len = __collate_equiv_match(ec, NULL, 0, test, + string, strlen(string), strmbs, &sclen); + if (len < 0) + return (RANGE_ERROR); + if (len > 0) { + ok = 1; + string += sclen; + break; + } + continue; + } else { /* special == ':' */ + wctype_t charclass; + char name[CHARCLASS_NAME_MAX + 1]; + /* no character classes as start of range */ + if (*(cp + 2) == '-' && *(cp + 3) != EOS && + *(cp + 3) != ']') + return (RANGE_ERROR); + /* assume character class names are ascii */ + if (cp - pattern > CHARCLASS_NAME_MAX) + return (RANGE_ERROR); + strlcpy(name, pattern, cp - pattern + 1); + pattern = cp + 2; + if ((charclass = wctype(name)) == 0) + return (RANGE_ERROR); + if (iswctype(test, charclass)) { + ok = 1; + break; + } + continue; + } + } + if (!c) { + pclen = mbrtowc(&c, pattern, MB_LEN_MAX, patmbs); + if (pclen == (size_t)-1 || pclen == (size_t)-2) + return (RANGE_NOMATCH); + pattern += pclen; + } if (flags & FNM_CASEFOLD) c = towlower(c); @@ -288,6 +408,37 @@ rangematch(const char *pattern, wchar_t test, int flags, char **newp, if (c2 == EOS) return (RANGE_ERROR); + if ((c2 == '[' && (special = *pattern) == '.') || + special == '=' || special == ':') { + + /* + * No equivalence classes or character + * classes as end of range. + */ + if (special == '=' || special == ':') + return (RANGE_ERROR); + cp = ++pattern; + while ((cp = strchr(cp, special))) { + if (*(cp + 1) == ']') + break; + cp++; + } + if (!cp) + return (RANGE_ERROR); + len = __collate_collating_symbol(buf, + COLLATE_STR_LEN, pattern, + cp - pattern, patmbs); + + /* + * No multi-character collation symbols + * as end of range. + */ + if (len != 1) + return (RANGE_ERROR); + pattern = cp + 2; + c2 = *buf; + } + if (flags & FNM_CASEFOLD) c2 = towlower(c2); @@ -295,12 +446,44 @@ rangematch(const char *pattern, wchar_t test, int flags, char **newp, c <= test && test <= c2 : __wcollate_range_cmp(c, test) <= 0 && __wcollate_range_cmp(test, c2) <= 0 - ) + ) { ok = 1; - } else if (c == test) + break; + } + } else if (c == test) { ok = 1; + break; + } } - *newp = (char *)pattern; + /* go to end of bracket expression */ + special = 0; + while (*pattern != ']') { + if (*pattern == 0) + return (RANGE_ERROR); + if (*pattern == special) { + if (*++pattern == ']') { + special = 0; + pattern++; + } + continue; + } + if (!special && *pattern == '[') { + special = *++pattern; + if (special != '.' && special != '=' && special != ':') + special = 0; + else + pattern++; + continue; + } + pclen = mbrtowc(&c, pattern, MB_LEN_MAX, patmbs); + if (pclen == (size_t)-1 || pclen == (size_t)-2) + return (RANGE_NOMATCH); + pattern += pclen; + } + + *newp = (char *)++pattern; + *news = (char *)string; + return (ok == negate ? RANGE_NOMATCH : RANGE_MATCH); } diff --git a/lib/libc/tests/gen/fnmatch_test.c b/lib/libc/tests/gen/fnmatch_test.c index 6cdf5f2a05fa..0ff7400a4a4f 100644 --- a/lib/libc/tests/gen/fnmatch_test.c +++ b/lib/libc/tests/gen/fnmatch_test.c @@ -26,6 +26,7 @@ #include #include +#include #include #include #include @@ -176,10 +177,90 @@ ATF_TC_BODY(fnmatch_test, tc) } +ATF_TC(fnmatch_characterclass); +ATF_TC_HEAD(fnmatch_characterclass, tc) +{ + atf_tc_set_md_var(tc, "descr", "Test fnmatch with character classes"); +} + +ATF_TC_BODY(fnmatch_characterclass, tc) +{ + ATF_CHECK(fnmatch("[[:alnum:]]", "a", 0) == 0); + ATF_CHECK(fnmatch("[[:cntrl:]]", "\a", 0) == 0); + ATF_CHECK(fnmatch("[[:lower:]]", "a", 0) == 0); + ATF_CHECK(fnmatch("[[:space:]]", " ", 0) == 0); + ATF_CHECK(fnmatch("[[:alpha:]]", "a", 0) == 0); + ATF_CHECK(fnmatch("[[:digit:]]", "0", 0) == 0); + ATF_CHECK(fnmatch("[[:print:]]", "a", 0) == 0); + ATF_CHECK(fnmatch("[[:upper:]]", "A", 0) == 0); + ATF_CHECK(fnmatch("[[:blank:]]", " ", 0) == 0); + ATF_CHECK(fnmatch("[[:graph:]]", "a", 0) == 0); + ATF_CHECK(fnmatch("[[:punct:]]", ".", 0) == 0); + ATF_CHECK(fnmatch("[[:xdigit:]]", "f", 0) == 0); + + /* + * POSIX.1, section 9.3.5. states that '[:' and ':]' + * should be interpreted as character classes symbol only + * when part of a bracket expression. + */ + ATF_CHECK(fnmatch("[:alnum:]", "a", 0) == 0); + ATF_CHECK(fnmatch("[:alnum:]", ":", 0) == 0); + ATF_CHECK(fnmatch("[:alnum:]", "1", 0) != 0); +} + +ATF_TC(fnmatch_collsym); +ATF_TC_HEAD(fnmatch_collsym, tc) +{ + atf_tc_set_md_var(tc, "descr", "Test fnmatch with collating symbols"); +} + +ATF_TC_BODY(fnmatch_collsym, tc) +{ + setlocale(LC_ALL, "cs_CZ.UTF-8"); + ATF_CHECK(fnmatch("[ch]", "ch", 0) != 0); + ATF_CHECK(fnmatch("[[.ch.]]", "ch", 0) == 0); + ATF_CHECK(fnmatch("[[.ch.]]h", "chh", 0) == 0); + + /* + * POSIX.1, section 9.3.5. states that '[.' and '.]' + * should be interpreted as a collating symbol only + * when part of a bracket expression. + */ + ATF_CHECK(fnmatch("[.ch.]", "c", 0) == 0); + ATF_CHECK(fnmatch("[.ch.]", "h", 0) == 0); + ATF_CHECK(fnmatch("[.ch.]", ".", 0) == 0); +} + +ATF_TC(fnmatch_equivclass); +ATF_TC_HEAD(fnmatch_equivclass, tc) +{ + atf_tc_set_md_var(tc, "descr", "Test fnmatch with equivalence classes"); +} + +ATF_TC_BODY(fnmatch_equivclass, tc) +{ + setlocale(LC_ALL, "en_US.UTF-8"); + ATF_CHECK(fnmatch("[[=a=]]b", "ab", 0) == 0); + ATF_CHECK(fnmatch("[[=a=]]b", "Ab", 0) == 0); + ATF_CHECK(fnmatch("[[=à=]]b", "ab", 0) == 0); + ATF_CHECK(fnmatch("[[=a=]]b", "àb", 0) == 0); + + /* + * POSIX.1, section 9.3.5. states that '[=' and '=]' + * should be interpreted as an equivalence class only + * when part of a bracket expression. + */ + ATF_CHECK(fnmatch("[=a=]b", "=b", 0) == 0); + ATF_CHECK(fnmatch("[=a=]b", "ab", 0) == 0); +} + ATF_TP_ADD_TCS(tp) { ATF_TP_ADD_TC(tp, fnmatch_test); + ATF_TP_ADD_TC(tp, fnmatch_collsym); + ATF_TP_ADD_TC(tp, fnmatch_characterclass); + ATF_TP_ADD_TC(tp, fnmatch_equivclass); return (atf_no_error()); } From nobody Thu Apr 10 09:44:55 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYFKN4DqHz5skgl; Thu, 10 Apr 2025 09:44:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYFKN1hwkz3XDY; Thu, 10 Apr 2025 09:44:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744278296; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UMVdxoJr6Tv3Wayh2T4eMPvlGUZ6epeloCdRCDPvpnU=; b=VEqvIRlXVVOWqkhc9Bw6aAS0FL8bL3U1m/LRuLMhAa9uhcLgxtmLFDQOIY7b4XVVlekFlf 9FgjEoMZq3+JXlFUWjMj9TgupYi5pegRrdm+LRfZzAlO1S1bzZDjJOL+tI/2gVa4h0CjGz Slb83pXIDzgBMKIiBJ3c5x04Y2NJkRHjPx7ZQp+xk91haJpV735EDlwlipiKbn+BVxyWOM YGyPOj/1ksbdbV1o8qu4ksKVbKj4Y/kK5+239eO9QvgmWkaMe4Hk+0yDgkfvqqPJmsrzxr uzECalNyoAhp/wXwTAP3oSI3MADovPLW3yVtOLyZwhYlM5rmA5YjK6ASAW2kyQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744278296; a=rsa-sha256; cv=none; b=WOZqwhdrOVwgO8fFoejLqlqTYE+BuVQ5CyR8dEa3lR9DCy70LC2bn6KXLOX+iSTI/xsKGs 8LG4I0Zs7fx5YFd2PhqL31Ue6qBA2XY0h22C4hogxBbY/b3r0NqdKaw1syRr+gZ1kKo39D YsseaTtAy2W52vdQuZ0m7n2NPYfBSgNMQwKMPINncmeOzJnsTJ8t0Jfc/2/1Fe4vr7cwLx 8IeQm/Agfssc+CAjCIW6ztird2LjvCNlIKgJSnnIlmipw5a01VJFqzx+b/EYicbZxE1Z+7 FuY4FwzjWo5DVJF+wZQEUvzNDlvPGHm0+2PylFSUPGyJeNmPoj3D0JOoxWO4Aw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744278296; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UMVdxoJr6Tv3Wayh2T4eMPvlGUZ6epeloCdRCDPvpnU=; b=G0+Cw5q8t0AcW9dCe3rjSoYunmHo4QcLvI/E56RAcQnFQopQFIlBfOOZPW1/NILbjbODQz EqaVOnTJ7Kd+gS3btufWhyDBv5b2XERNAgZrQulL0VHYpPQ1ZjlY06wPBD4txaix0aMThP NGcyYPlxYRHxBMfkHSGLSodJKxTqFOLNmk5Tmj5kxTp29ZfwPy+B/4YYka+d4CWUt3uPlv fa+b6W3PecXZzdhOHTYJjrDtKVJjdpe3AR3CNjj5fQ93atqyCHGkvVcugzJvbYDFDR7kME MDyhWl1eSeIae3bv+LL1a/6GUmgRwhEc6WF3KcS43Bq4idLVon4IAqkgbcWdcw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYFKN0CcCzxwm; Thu, 10 Apr 2025 09:44:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53A9itXe077737; Thu, 10 Apr 2025 09:44:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53A9itbf077734; Thu, 10 Apr 2025 09:44:55 GMT (envelope-from git) Date: Thu, 10 Apr 2025 09:44:55 GMT Message-Id: <202504100944.53A9itbf077734@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bojan =?utf-8?Q?Novkovi=C4=87?= Subject: git: 06b69937a87e - main - (u)alarm.3: Improve readability of setitmer(2) restrictions List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bnovkov X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 06b69937a87e0e2472f2c9241da53dd7cd45bcad Auto-Submitted: auto-generated The branch main has been updated by bnovkov: URL: https://cgit.FreeBSD.org/src/commit/?id=06b69937a87e0e2472f2c9241da53dd7cd45bcad commit 06b69937a87e0e2472f2c9241da53dd7cd45bcad Author: Bojan Novković AuthorDate: 2025-04-08 16:41:58 +0000 Commit: Bojan Novković CommitDate: 2025-04-10 09:44:39 +0000 (u)alarm.3: Improve readability of setitmer(2) restrictions Add separators to make the maximum number of (micro)seconds in (u)alarm.3 more readable. Sponsored by: Klara, Inc. Obtained from: https://github.com/apple-oss-distributions/Libc Differential Revision: https://reviews.freebsd.org/D49712 Reviewed by: markj --- lib/libc/gen/alarm.3 | 2 +- lib/libc/gen/ualarm.3 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/libc/gen/alarm.3 b/lib/libc/gen/alarm.3 index 8aeda29481eb..4a24cc6d7216 100644 --- a/lib/libc/gen/alarm.3 +++ b/lib/libc/gen/alarm.3 @@ -63,7 +63,7 @@ Due to .Xr setitimer 2 restriction the maximum number of .Fa seconds -allowed is 100000000. +allowed is 100,000,000. .Sh RETURN VALUES The return value of .Fn alarm diff --git a/lib/libc/gen/ualarm.3 b/lib/libc/gen/ualarm.3 index f4e0973b133a..dfd9ddd5f434 100644 --- a/lib/libc/gen/ualarm.3 +++ b/lib/libc/gen/ualarm.3 @@ -70,7 +70,7 @@ restriction the maximum number of .Fa microseconds and .Fa interval -is limited to 100000000000000 +is limited to 100,000,000,000,000 (in case this value fits in the unsigned integer). .Sh RETURN VALUES When the signal has successfully been caught, From nobody Thu Apr 10 11:35:51 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYHnM5hrKz5sr0G; Thu, 10 Apr 2025 11:35: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYHnM536Xz3hpq; Thu, 10 Apr 2025 11:35:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744284951; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SAIRGLMB8KbAmXLd23gTtLwvvRU7dDy9WlyLDWM+ESY=; b=u1p9xIROSHYGUel8I52oF6pj8Vv6TImRVo6ekwmLD+XrVgpZIRPthAP4TnkGjzxzj/Njxq ssxOzb+1Vq9Lkj6oWD6WHuLw4ufwcH8It9ogpRd1bMVIiWbWDDWcQiGgpchVjNtYHI3WHg GNTSbtKTOkpyGNh3gwjkGhkphTZZ0Ax0lmxmp8Gd1pZ+3VY7umYbMmau8FeOj1uh+gwNyc GuogDvJ8LTr6aN0PWECBna1VFQHuGpBKKpzHpa+IM8bRK8HbOr1TByI6NYJZEs2WHni/hR 4tbnO992VQIwCkZOoM7A0R+fNdG33VfDuu7iSKmAGWnkY05ixE8LRZkRJA9IQg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744284951; a=rsa-sha256; cv=none; b=rGm5EBp414sk67ZZACIJ/xPvRJbvy7AkbwSzWqiG/IHRlCvxVZh74LiJWzNGCdCyq6g0Md /Y7Q1j+VcDh3mAuYJZSfM0hpPXI9GQ1oImR5izmSClJ/ZRGz6TCliONJgRW9dRrSPwDiN+ wluQFRsuPahqQYOZZNxDiHiMN/hcVfu1DEE0Y38uuOkB3qp7FigAych1JtaGkpA35VW1Bq Oh+MBGnNQ/Ch9cBm8wPdgXEcYEbpNgOl41Y4z4dIpm9Zs/WwOdrB25ytwTPIGYfFa/xYDu IVQQDDG5IG7uZvDcyCjPvt4VV/3rFiiZ6nkkjxLi8Q0hhU8Bcy53ZFFMJg+Eog== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744284951; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SAIRGLMB8KbAmXLd23gTtLwvvRU7dDy9WlyLDWM+ESY=; b=vES8vhFsNBGiIeAlQas64Fhp7GIpI1pxxZC2qR0a5WUWs44lZHtr+HxFeaOXW9QUaE43VY z28ZOujQP8sl0+v7C/mvjN/nk3Bm2yfOgCtRAv9/86GCyHhba8IzeN5dXiseM1hHE3EesM YG0mkOHuk7ufLwq+DOQQCglVmlii4EaWh0kDKXE2q49+8IwA32vFvev66o2ZoDXs2h/w3c S5ypgqwqpCze0rMKn1se4fWeYhAM4OR/wClWrRweWDWeTVZVntWvC3ce1+gV5JKcTQOVce PwMxia/eNwEjr1Cv0dD9bbkC5yYssZXt01LXx5GOuqyKGvAQfkhxpCQH6ftgbQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYHnM4bqgz11Mm; Thu, 10 Apr 2025 11:35:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53ABZpJc083243; Thu, 10 Apr 2025 11:35:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53ABZpg2083240; Thu, 10 Apr 2025 11:35:51 GMT (envelope-from git) Date: Thu, 10 Apr 2025 11:35:51 GMT Message-Id: <202504101135.53ABZpg2083240@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 80e06d621ac5 - main - fts: Move private flags away from public ones. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 80e06d621ac545ac0a69d4e95e7392be38013a78 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=80e06d621ac545ac0a69d4e95e7392be38013a78 commit 80e06d621ac545ac0a69d4e95e7392be38013a78 Author: Dag-Erling Smørgrav AuthorDate: 2025-04-10 11:34:41 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2025-04-10 11:35:46 +0000 fts: Move private flags away from public ones. Renumber the private flags so there is a sizeable gap between them and the public flags, making it easier to add public flags in the future. These private flags are only ever set or read by FTS itself, so there is no compatibility issue. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D49711 --- include/fts.h | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/include/fts.h b/include/fts.h index dae1df80ddd7..1e35727ad3e1 100644 --- a/include/fts.h +++ b/include/fts.h @@ -46,18 +46,22 @@ typedef struct { int (*fts_compar) /* compare function */ (const struct _ftsent * const *, const struct _ftsent * const *); -#define FTS_COMFOLLOW 0x001 /* follow command line symlinks */ -#define FTS_LOGICAL 0x002 /* logical walk */ -#define FTS_NOCHDIR 0x004 /* don't change directories */ -#define FTS_NOSTAT 0x008 /* don't get stat info */ -#define FTS_PHYSICAL 0x010 /* physical walk */ -#define FTS_SEEDOT 0x020 /* return dot and dot-dot */ -#define FTS_XDEV 0x040 /* don't cross devices */ -#define FTS_WHITEOUT 0x080 /* return whiteout information */ -#define FTS_OPTIONMASK 0x0ff /* valid user option mask */ - -#define FTS_NAMEONLY 0x100 /* (private) child names only */ -#define FTS_STOP 0x200 /* (private) unrecoverable error */ +/* valid for fts_open() */ +#define FTS_COMFOLLOW 0x000001 /* follow command line symlinks */ +#define FTS_LOGICAL 0x000002 /* logical walk */ +#define FTS_NOCHDIR 0x000004 /* don't change directories */ +#define FTS_NOSTAT 0x000008 /* don't get stat info */ +#define FTS_PHYSICAL 0x000010 /* physical walk */ +#define FTS_SEEDOT 0x000020 /* return dot and dot-dot */ +#define FTS_XDEV 0x000040 /* don't cross devices */ +#define FTS_WHITEOUT 0x000080 /* return whiteout information */ +#define FTS_OPTIONMASK 0x0000ff /* valid user option mask */ + +/* valid only for fts_children() */ +#define FTS_NAMEONLY 0x000100 /* child names only */ + +/* internal use only */ +#define FTS_STOP 0x010000 /* unrecoverable error */ int fts_options; /* fts_open options, global flags */ void *fts_clientptr; /* thunk for sort function */ } FTS; From nobody Thu Apr 10 12:09:55 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYJXg5Xnqz5ss3T; Thu, 10 Apr 2025 12:09: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYJXg4sNxz3lYl; Thu, 10 Apr 2025 12:09:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744286995; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GH5eHnPfcKJiektYpewYBcNKNyD1eWVxpS0zvG+OwIU=; b=L+mFNsAsd4k/kxo7verlamd1rpBRcaVLIpyoNnsl360i2UFb0DO4deAFyGrvz4drFgkZLW Is5qonNQ97XQrSF71KCQ4TuYiui5KYDLFGNN/QBUB0QUQNp3sJV/VlmA2nLadwt5/fD9vb ct0RbChFkoBiP4DhEICYbeEslo8Uas3BI9h2MSj5Gx0oqBX6lkmWBNIpvp5E76QpINwh4K L7XPiaodumbjz+rHcxo/VBCmeMsKwdzuQ0Rurog+g4zuLy/87yUE1e6IgK+oHOiePiM3H9 AtwJKPVyk9NLOLzaCF+a6YC6CNxTXGrY03zhYoLNHDPZcrCsoVkEs/9eGcRn/g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744286995; a=rsa-sha256; cv=none; b=EcHGlCNGDGVbpGIdQZXrwLjjmhiaIOGYZR1uJemBxbe9fX75OvtoeO2cnQBTH7Tcsx6j5F gClrnbvbXy0v8jjDgQ6YUtbG4ccaZSaTVShVEQd1xbcYKwc4i7tIuS4YS+azndWuXjSwSD 6vlFYV2p6LyM9pue2PWhb7sTCPVn2SLcM98LX8imvpD+eHoqXG7zl2AvZ4LlWlwYBMl/uB tqLmRCHiAGnyfdGRjQ9XXgUhyS6jKpcDhQ6t/BK5YHgLXAxyfKD91gqmpFz8zLMS0ML1gQ 29W7YN3ig4L3na8f5qdPeXCzPlCn87loXP37U55YGL9VuxXssHTHr848vT2bZQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744286995; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GH5eHnPfcKJiektYpewYBcNKNyD1eWVxpS0zvG+OwIU=; b=yZHS/lUESJ45uvK1cvYM4xxaM9RHQbhGigS44HfSuxXCiVE9Yt8cHYDSoUBht7JC3cacAS YBte+om6anG6n6OjrupW8LDGcpzhedrlpg0RAxJJ2t+AUNUz1jjmWD+SZ653QO1oOFygkY 9YzvxSFfzmYkxffWOQJ6RVleTxpPk6OwReGNyw/B86bBddNiw2ogTYRoM32jyty/TIERHJ oXDfLF0oie0r6YhdhRJrZzv57Jod5DQaMWKYlLHGBOdbtYeH4ZJhy58iYHnGTmGg/tbeyy HTCHfSe9xEuPpNr3HGo+iEdOYrESvZY5iYTxTZVY8CPnIgcg72gD294tI8bwJw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYJXg47ZDz12CN; Thu, 10 Apr 2025 12:09:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53AC9tXE041206; Thu, 10 Apr 2025 12:09:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53AC9ttx041203; Thu, 10 Apr 2025 12:09:55 GMT (envelope-from git) Date: Thu, 10 Apr 2025 12:09:55 GMT Message-Id: <202504101209.53AC9ttx041203@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Bojan =?utf-8?Q?Novkovi=C4=87?= Subject: git: 1be90fcda220 - main - libc: fnmatch: Unwrap comma operator assignments List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bnovkov X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1be90fcda2203acde4e639cd5a4614cfecb65496 Auto-Submitted: auto-generated The branch main has been updated by bnovkov: URL: https://cgit.FreeBSD.org/src/commit/?id=1be90fcda2203acde4e639cd5a4614cfecb65496 commit 1be90fcda2203acde4e639cd5a4614cfecb65496 Author: Bojan Novković AuthorDate: 2025-04-10 10:54:49 +0000 Commit: Bojan Novković CommitDate: 2025-04-10 12:09:35 +0000 libc: fnmatch: Unwrap comma operator assignments Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D49756 Reviewed by: des --- lib/libc/gen/fnmatch.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/libc/gen/fnmatch.c b/lib/libc/gen/fnmatch.c index 43e7e214c3cb..1c583a9d23e2 100644 --- a/lib/libc/gen/fnmatch.c +++ b/lib/libc/gen/fnmatch.c @@ -152,8 +152,10 @@ fnmatch1(const char *pattern, const char *string, const char *stringstart, * there is no way having it match more characters * can help us, given that we are already here. */ - bt_pattern = pattern, bt_patmbs = patmbs; - bt_string = string, bt_strmbs = strmbs; + bt_pattern = pattern; + bt_patmbs = patmbs; + bt_string = string; + bt_strmbs = strmbs; break; case '[': if (sc == EOS) From nobody Thu Apr 10 12:47:17 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYKMp1Z50z5svZK; Thu, 10 Apr 2025 12:47: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYKMp11Cqz3ntV; Thu, 10 Apr 2025 12:47:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744289238; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HoGUDeYnjPMkSpKrxYu8A9xfss4yOC4yR8/SEReVWF8=; b=Rxd7XwoVOM3WZistoGb8diRSeMXDoMvkcPJ2CldnQXG7Lt/UXMitdTkTL5mPCB15MJWj2o i83Rl8YuUZ69j9K3bXNhYWjJogayFf33ajKXXdIP8nlxW9o7sEJM7djIDrVycb3sSm5B6g mdRUyx+jPwArBFDOhy0CU7j75ZQ9WeC56qBYNAWTB9+/PRRIJcG8r3/PKjhEHPQgj8/asK HVjT9ZFvDhEKARL5VHcz3kpMoa2KNFWsU6G5KD6AoQNmsaWyUlt2YY0qGI1kVsOFMF5Q0H 4o5ysw1l2i8kPPvQ33R+Qeqa7S6bqtdO0Kt1EguSzY60uIWKfvMh0iU4tB704Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744289238; a=rsa-sha256; cv=none; b=ufLBRE+OVnSlLtmd412L9pJlKK17OillMpyk3xt3QANw348KlTIG3vxjrbVXBnntyg8ZBI fJpUy20L7BBcalFchjhOoBX1tHaumJ4/LffO5kOSafND7xQip64T6ajM2X4krzit3ZvIqw NUIZy21FJlzSHLBflZCuKMT4+vrJZEsGlrNUmB4JoLybWTK5S2YByfYaIIl8dGl9GZ/Z3i cGxCH4FflxzvtApqTRWc3DtqbNuuog/CkRjr8f9Al98DyFNE2aqm+1MXbWElewTXW6WxoD fjZc7wlqqXfW5CLD+L36jqgyckJoqmrKznS6Cd7OszGR5H5+X3DKv+CJtWmeaA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744289238; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HoGUDeYnjPMkSpKrxYu8A9xfss4yOC4yR8/SEReVWF8=; b=lPa0Ejxb5gmsZxYSgcczQ8ozXIcOg4rpR4LLEQfMRbWENuWLTFEnIdZiMkDzDSn1iX2SgL hEez3UlazV/hkdETTiJB8TPuNuwQLWGVBTeBzjCWKCHtIsWFSKuAHbRJrpwppFyW2ws6l9 ZjWMlOH4E0ltIUwxKI3Mnq7HfHL31ZD6VMXytSrj0Dvy330yyP7FKadGeFFfDoPIFpgada 60by4kmILXqne9+YFWDITyRuYnLPoMP12bRiFr0puY28/YtQfpvHKudeZRXSdNK5LVoGeY s70achpPIxmoP0rykE5zb6jZCI/lRKul/zJ4HP+uCvos0db2O30QzttxT2LPJg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYKMp04H8z13Bg; Thu, 10 Apr 2025 12:47:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53AClHdt014964; Thu, 10 Apr 2025 12:47:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53AClHX6014961; Thu, 10 Apr 2025 12:47:17 GMT (envelope-from git) Date: Thu, 10 Apr 2025 12:47:17 GMT Message-Id: <202504101247.53AClHX6014961@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 31d3a94bdda4 - main - netinet: Make ip.h self-contained List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 31d3a94bdda4a9ca4c4d7d4e8e8a0ba1b05c7f18 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=31d3a94bdda4a9ca4c4d7d4e8e8a0ba1b05c7f18 commit 31d3a94bdda4a9ca4c4d7d4e8e8a0ba1b05c7f18 Author: Mark Johnston AuthorDate: 2025-04-10 12:41:28 +0000 Commit: Mark Johnston CommitDate: 2025-04-10 12:41:28 +0000 netinet: Make ip.h self-contained In general we are working towards making public headers self-contained. cdefs.h is included for __packed; just assume that types.h includes cdefs.h as that's a very common assumption. PR: 285924 Reviewed by: emaste MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D49735 --- sys/netinet/ip.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/netinet/ip.h b/sys/netinet/ip.h index 8d205ba07cf5..44db466912d0 100644 --- a/sys/netinet/ip.h +++ b/sys/netinet/ip.h @@ -33,7 +33,8 @@ #ifndef _NETINET_IP_H_ #define _NETINET_IP_H_ -#include +#include +#include /* * Definitions for internet protocol version 4. From nobody Thu Apr 10 12:47:18 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYKMq1rjfz5svSR; Thu, 10 Apr 2025 12:47: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYKMq12Wlz3pG7; Thu, 10 Apr 2025 12:47:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744289239; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fic4JYH3mWtJYYb4+Y5jVA32K30WZVPtHsg1YuuTp9o=; b=LWr0zQo/P57qEQmW7Z9Ztkvp2YKVFj36YSNmAhwQMDqXmqh3LJjdypWvuP4EvpVq6vqpDO 3SH16ixBH3dzbk7m+XZOKD50wMjifynSSOGqPZarf4CZBpkkelCNOR2mIVo4gnlxGhHLTR YU3zB1Tze0CLrqXrXZ4IZ8yq+A7DJ7b7Q/s4mFLyvaTMkNkusbMzetKQofIuRbmVuxKdJt o6WftySImPr0I+j6rNgTO3ycjCyJGcZHZ18baqvrEp6vuDD3Ks5XxdQfJP+oyTed/ypKKF gkQz8PGzAonPUdpU1Q7VR1H+LUy0qWcgNGzT9Muf4zE/2CsTdcR3cPigEO8+vw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744289239; a=rsa-sha256; cv=none; b=YnRQeTN/+8KNJ0MzAcRh0YWZJXbefx2sxd7VxNUsE5wxuV+XtgKBHCqSQwbu4M/yEckNe+ g+8hNZDYcT2C+0efD+g2XDqs7YeXCSGVXEjlPRp6/lDbTCLgUJaDwARFPeP/AStPTJEqLL UoHmMqBd9YD8WnlFE8Qxo4SX1JWam/WMWlxnM2Kp5nhQu9BJIZJEodwJnKpV1ZuYyHJZTH 9W2tzR9Z8ICSdXg16dhq0Xglkzk0mFEsHs6YKZlPyDjaMunKItKjq/QJ8xH/MBCiOBze2y rMOViMK4FD+eOmqFSMa4nrUstZptxGmB9Btc6smofNuHSrTkr+P1iVdBmGGhZg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744289239; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fic4JYH3mWtJYYb4+Y5jVA32K30WZVPtHsg1YuuTp9o=; b=iGNdgkmwwKPyhh7nTfvSKBwL/0pha0iBVZ5u3yvdZygYo/jmSqyzxLkW6MqA5rl4XPR7Wp fBxSv6zw7Hpuh8CbFAcfIq+w069/vHFukFrpE7MQoTOJq7Gl/ZzKAelVpXWdUlirGARvBo KnF+wrghMzQgdfUkvgK6lP/dDoVf4+y/J/r0m8DgcW1jMzU7hvfPfU21puvyU+FT8jiqYC g9h9IypSVPLyz+nhWBnI04FubRlCUjVxHOlFheeh9r2yAPgZKWskW19Z0eOKhBhAR86N4P JKqSXEqHhBLt3VLVqZXdioujG7aWlzqSGZMe2flX02v6JMIrYO3WocNmVu0jhA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYKMq0QZQz13Bh; Thu, 10 Apr 2025 12:47:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53AClIb7014999; Thu, 10 Apr 2025 12:47:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53AClItB014996; Thu, 10 Apr 2025 12:47:18 GMT (envelope-from git) Date: Thu, 10 Apr 2025 12:47:18 GMT Message-Id: <202504101247.53AClItB014996@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: d80ab37f9883 - main - test-includes: Make sure we test against in-tree headers List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d80ab37f9883cb981c9b359d50bbfe8f0d6f2884 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=d80ab37f9883cb981c9b359d50bbfe8f0d6f2884 commit d80ab37f9883cb981c9b359d50bbfe8f0d6f2884 Author: Mark Johnston AuthorDate: 2025-04-10 12:42:42 +0000 Commit: Mark Johnston CommitDate: 2025-04-10 12:47:00 +0000 test-includes: Make sure we test against in-tree headers Regenerate badfiles.inc as well. Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D49736 --- tools/build/test-includes/Makefile | 3 +++ tools/build/test-includes/badfiles.inc | 17 ----------------- 2 files changed, 3 insertions(+), 17 deletions(-) diff --git a/tools/build/test-includes/Makefile b/tools/build/test-includes/Makefile index 2c25e0fb32ce..5c45fd7daa4f 100644 --- a/tools/build/test-includes/Makefile +++ b/tools/build/test-includes/Makefile @@ -26,6 +26,9 @@ CFLAGS.event.c= -D_WANT_KEVENT32 -D_WANT_FREEBSD11_KEVENT # details like __inline that the header files must follow to support C89. CFLAGS+=-ansi +# Make sure we're pulling in headers from the src tree. +CFLAGS+=-I${SRCTOP}/sys + .include "badfiles.inc" .for h c in ${HDRS:@x@$x ${x:S,/,_,g:R}.c@} diff --git a/tools/build/test-includes/badfiles.inc b/tools/build/test-includes/badfiles.inc index 1e5182e40911..2ed61c32aa4e 100644 --- a/tools/build/test-includes/badfiles.inc +++ b/tools/build/test-includes/badfiles.inc @@ -65,11 +65,8 @@ BADHDRS= \ sys/kobj.h \ sys/ksem.h \ sys/ktls.h \ - sys/ktrace.h \ sys/libkern.h \ sys/link_aout.h \ - sys/linker.h \ - sys/linker_set.h \ sys/lock.h \ sys/lock_profile.h \ sys/lockf.h \ @@ -77,7 +74,6 @@ BADHDRS= \ sys/loginclass.h \ sys/mbuf.h \ sys/md4.h \ - sys/md5.h \ sys/mdioctl.h \ sys/memdesc.h \ sys/memrange.h \ @@ -85,7 +81,6 @@ BADHDRS= \ sys/module_khelp.h \ sys/mpt_ioctl.h \ sys/msgbuf.h \ - sys/mutex.h \ sys/namei.h \ sys/osd.h \ sys/pciio.h \ @@ -106,7 +101,6 @@ BADHDRS= \ sys/runq.h \ sys/rwlock.h \ sys/sbuf.h \ - sys/sema.h \ sys/sf_buf.h \ sys/sglist.h \ sys/sigio.h \ @@ -117,10 +111,8 @@ BADHDRS= \ sys/sockopt.h \ sys/stack.h \ sys/stats.h \ - sys/sx.h \ sys/syscallsubr.h \ sys/syslimits.h \ - sys/systm.h \ sys/taskqueue.h \ sys/terminal.h \ sys/termios.h \ @@ -155,13 +147,11 @@ BADHDRS= \ net/if_llc.h \ net/if_media.h \ net/if_mib.h \ - net/if_pfsync.h \ net/if_tap.h \ net/if_tun.h \ net/if_var.h \ net/if_vlan_var.h \ net/iflib.h \ - net/iflib_private.h \ net/ifq.h \ net/mp_ring.h \ net/mppc.h \ @@ -172,9 +162,7 @@ BADHDRS= \ net/paravirt.h \ net/pfil.h \ net/pfkeyv2.h \ - net/pfvar.h \ net/radix.h \ - net/raw_cb.h \ net/rndis.h \ net/route.h \ net/rss_config.h \ @@ -258,7 +246,6 @@ BADHDRS= \ netinet/in_rss.h \ netinet/in_systm.h \ netinet/in_var.h \ - netinet/ip.h \ netinet/ip6.h \ netinet/ip_carp.h \ netinet/ip_dummynet.h \ @@ -275,13 +262,11 @@ BADHDRS= \ netinet/sctp_pcb.h \ netinet/sctp_structs.h \ netinet/sctp_sysctl.h \ - netinet/tcp_debug.h \ netinet/tcp_hpts.h \ netinet/tcp_log_buf.h \ netinet/tcp_lro.h \ netinet/tcp_offload.h \ netinet/tcp_ratelimit.h \ - netinet/tcp_var.h \ netinet/tcpip.h \ netinet/toecore.h \ netinet/udplite.h \ @@ -293,7 +278,6 @@ BADHDRS= \ netinet6/ip6.h \ netinet6/ip6_mroute.h \ netinet6/ip6_var.h \ - netinet6/ip6protosw.h \ netinet6/ip_fw_nat64.h \ netinet6/ip_fw_nptv6.h \ netinet6/mld6.h \ @@ -313,7 +297,6 @@ BADHDRS= \ netipsec/ipsec6.h \ netipsec/key_debug.h \ netipsec/keysock.h \ - netipsec/xform.h \ netsmb/netbios.h \ netsmb/smb.h \ netsmb/smb_conn.h \ From nobody Thu Apr 10 12:47:20 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYKMr56TLz5svn5; Thu, 10 Apr 2025 12:47: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYKMr2Nx7z3ntn; Thu, 10 Apr 2025 12:47:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744289240; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=t3FTZb17QfdUkGNmQ4TnEDOq6tldCyqLfJd2lwsSLCs=; b=Lmd7QyLfr6cLFz4yVJ7NwOrbPy6svH9f+YQofA0xy2T4sodPzz3WxzeGV/WHCVGyhpdcff kiElx11DtTFV2CyMt8628f+00g8uq3TdUhPpfenmajbMTaLniOYKbT3leWa0OXVbncNouA 0z2Sn49ROERE81zQTOs0t4/d70PIHNw7IpV85g462Hl8GUrjX/NcllCkpHvL9F4npoQDRT ESPnwVzaJIkKbLz+PACYZKntd97cpPxz90iHirMgErXK6N0jeWK9GFiM+fJbshNExAy/dF 1AzVu8tct+AAd4lCPe12sVbjvCxhxyrD5MV1lq4W2dwoG0QETzk8KVx0fYDegA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744289240; a=rsa-sha256; cv=none; b=KXniPgKDww/XPV+pmjpTdEZSKsJZHbLT0GDEJ+FttYEKRhB3hgje0Dsfp73skDuZCnmBZC GnoulCQD90aTI5BH54nuu5czl3G7Vglul6mqU8nap70KNCU6cU32uUEZ83yKB64Sfs1C2/ i/Fnt7duK7O7KyGkWh1vLxtt60TfjZLSkBv6R633KgyKMN5uBaK3g5QwotE8qXHsK774fm ht9ZLau1ooeFtuTzKl8nYgU/tN8dFBMDuzOUvI1CyxB+1P1/fYoZX/XQ8pk4GW9ogaL9y0 hV+1yp6KclQEdozUkmoV+2SusLFYK5xSelyTshayzeYIup3EEvF25Cm+uuOgQw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744289240; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=t3FTZb17QfdUkGNmQ4TnEDOq6tldCyqLfJd2lwsSLCs=; b=QT15isTyNgEKIJPyVjqLi4AilwIXqLUwWT37N6+4oZo9O2k8zJp1WXCtcSFbqeK5e0euj6 YOphraFdbzc2YdS+kkpaG4zWAwEtjXUQ1RhXea9+G6JH49cmo/VX/H8b9TDGfJh4busrWq YA9c3vzf3Zj+NDMv2FHkgkcenC+1OpKkAUVoMVSMPvJGxXbza65in7NZQq7HVV4vbQfeaK EQJKAwG87n3/KfpmnQaR1c0BG/dCT7xDFDKyTzBrF9X/aFGscHleFQHagVFku3Lh87fkcO sgXRLdmXOP/+ijpRn9/OaCtUJWTCNVcOZHNVOUL6ekyW6XbCTKjkotovQN12pw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYKMr14Wpz13Bj; Thu, 10 Apr 2025 12:47:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53AClKGw015032; Thu, 10 Apr 2025 12:47:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53AClKUm015029; Thu, 10 Apr 2025 12:47:20 GMT (envelope-from git) Date: Thu, 10 Apr 2025 12:47:20 GMT Message-Id: <202504101247.53AClKUm015029@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: ae10431c9833 - main - vm_page: Allow PG_NOFREE pages to be freed List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ae10431c9833bd6b176afe4d8021d233fd985107 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=ae10431c9833bd6b176afe4d8021d233fd985107 commit ae10431c9833bd6b176afe4d8021d233fd985107 Author: Mark Johnston AuthorDate: 2025-04-10 12:43:12 +0000 Commit: Mark Johnston CommitDate: 2025-04-10 12:47:05 +0000 vm_page: Allow PG_NOFREE pages to be freed There is at least one case where we need to support it: kmem_malloc() might need to allocate multiple pages to satisfy a NOFREE allocation, which it implements by calling vm_page_alloc() in a loop. If it fails part-way though, it needs to free already-allocated pages, but this was illegal. Convert the bump allocator to a linked list; (ab)use the pindex field of each page in the list to store the number of contiguous pages in the block. (Originally I added a new plinks member for this purpose, but it's not safe to use that until after vm_page_dequeue() is called due to lazy page queue removal.) Then, modify vm_page_free() to support freeing pages to this list. While here, add a __noinline qualifier to vm_page_alloc_nofree_domain() to ensure that it doesn't get inlined into a hot path. Reported by: syzbot+93bc9edd2d0f22ae426a@syzkaller.appspotmail.com Reviewed by: bnovkov, kib Fixes: a8693e89e3e4 ("vm: Introduce vm_page_alloc_nofree_domain") Differential Revision: https://reviews.freebsd.org/D49480 --- sys/vm/vm_page.c | 56 ++++++++++++++++++++++++++++++++++++++------------- sys/vm/vm_pagequeue.h | 5 +---- 2 files changed, 43 insertions(+), 18 deletions(-) diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index 741c45490d96..5214b3c956ba 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -2648,40 +2648,66 @@ found: * the routine will try to fetch a new one from the freelists * and discard the old one. */ -static vm_page_t +static vm_page_t __noinline vm_page_alloc_nofree_domain(int domain, int req) { vm_page_t m; struct vm_domain *vmd; - struct vm_nofreeq *nqp; KASSERT((req & VM_ALLOC_NOFREE) != 0, ("invalid request %#x", req)); vmd = VM_DOMAIN(domain); - nqp = &vmd->vmd_nofreeq; vm_domain_free_lock(vmd); - if (nqp->offs >= (1 << VM_NOFREE_IMPORT_ORDER) || nqp->ma == NULL) { - if (!vm_domain_allocate(vmd, req, - 1 << VM_NOFREE_IMPORT_ORDER)) { + if (TAILQ_EMPTY(&vmd->vmd_nofreeq)) { + int count; + + count = 1 << VM_NOFREE_IMPORT_ORDER; + if (!vm_domain_allocate(vmd, req, count)) { vm_domain_free_unlock(vmd); return (NULL); } - nqp->ma = vm_phys_alloc_pages(domain, VM_FREEPOOL_DEFAULT, + m = vm_phys_alloc_pages(domain, VM_FREEPOOL_DEFAULT, VM_NOFREE_IMPORT_ORDER); - if (nqp->ma == NULL) { - vm_domain_freecnt_inc(vmd, 1 << VM_NOFREE_IMPORT_ORDER); + if (m == NULL) { + vm_domain_freecnt_inc(vmd, count); vm_domain_free_unlock(vmd); return (NULL); } - nqp->offs = 0; + m->pindex = count; + TAILQ_INSERT_HEAD(&vmd->vmd_nofreeq, m, listq); + VM_CNT_ADD(v_nofree_count, count); + } + m = TAILQ_FIRST(&vmd->vmd_nofreeq); + TAILQ_REMOVE(&vmd->vmd_nofreeq, m, listq); + if (m->pindex > 1) { + vm_page_t m_next; + + m_next = &m[1]; + m_next->pindex = m->pindex - 1; + TAILQ_INSERT_HEAD(&vmd->vmd_nofreeq, m_next, listq); } - m = &nqp->ma[nqp->offs++]; vm_domain_free_unlock(vmd); - VM_CNT_ADD(v_nofree_count, 1); + VM_CNT_ADD(v_nofree_count, -1); return (m); } +/* + * Though a NOFREE page by definition should not be freed, we support putting + * them aside for future NOFREE allocations. This enables code which allocates + * NOFREE pages for some purpose but then encounters an error and releases + * resources. + */ +static void __noinline +vm_page_free_nofree(struct vm_domain *vmd, vm_page_t m) +{ + vm_domain_free_lock(vmd); + m->pindex = 1; + TAILQ_INSERT_HEAD(&vmd->vmd_nofreeq, m, listq); + vm_domain_free_unlock(vmd); + VM_CNT_ADD(v_nofree_count, 1); +} + vm_page_t vm_page_alloc_noobj(int req) { @@ -4145,8 +4171,6 @@ vm_page_free_prep(vm_page_t m) m, i, (uintmax_t)*p)); } #endif - KASSERT((m->flags & PG_NOFREE) == 0, - ("%s: attempting to free a PG_NOFREE page", __func__)); if ((m->oflags & VPO_UNMANAGED) == 0) { KASSERT(!pmap_page_is_mapped(m), ("vm_page_free_prep: freeing mapped page %p", m)); @@ -4230,6 +4254,10 @@ vm_page_free_toq(vm_page_t m) return; vmd = vm_pagequeue_domain(m); + if (__predict_false((m->flags & PG_NOFREE) != 0)) { + vm_page_free_nofree(vmd, m); + return; + } zone = vmd->vmd_pgcache[m->pool].zone; if ((m->flags & PG_PCPU_CACHE) != 0 && zone != NULL) { uma_zfree(zone, m); diff --git a/sys/vm/vm_pagequeue.h b/sys/vm/vm_pagequeue.h index 72fd1bb47318..cbbd27389662 100644 --- a/sys/vm/vm_pagequeue.h +++ b/sys/vm/vm_pagequeue.h @@ -247,10 +247,7 @@ struct vm_domain { u_int vmd_domain; /* (c) Domain number. */ u_int vmd_page_count; /* (c) Total page count. */ long vmd_segs; /* (c) bitmask of the segments */ - struct vm_nofreeq { - vm_page_t ma; - int offs; - } vmd_nofreeq; /* (f) NOFREE page bump allocator. */ + struct pglist vmd_nofreeq; /* (f) NOFREE page bump allocator. */ u_int __aligned(CACHE_LINE_SIZE) vmd_free_count; /* (a,f) free page count */ u_int vmd_pageout_deficit; /* (a) Estimated number of pages deficit */ uint8_t vmd_pad[CACHE_LINE_SIZE - (sizeof(u_int) * 2)]; From nobody Thu Apr 10 13:35:27 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYLRP3XPBz5sxpx; Thu, 10 Apr 2025 13:35: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYLRN1YxJz3vYX; Thu, 10 Apr 2025 13:35:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744292128; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5YqfSzSqxlafYKKZhLd6ZHpFZ2A8pX2ICC6W2Curik4=; b=x+XfnlTVBg2xs5wpVsyIMyyTwhESk2KKFeB5JPaUidA1ENuuHteNq7xh/tXs2NT774FXLP FErAh0byTaVqQZ0neU1z3BAegnDolaksuGLVGXb9jc8Sk8sPRHqSiQhtxSceOi2NgmM8dv 4KOdlX8dF2kgP4R8QecJB12xzZnG8hzGVi0qPY1ozRPAVKlAYH0+T8oW3CpFXLyWvrSBaV Y/qL5BAbJWN7GnOyyaV2NoSMO+JSyUY1nEmcjrrGjH+JwmJ9Vsj5exEMFFH2d7smIZAfxQ IZpsqBCGHxMJc5ugUu6xTi1O48pwhZ4amil2n2cHhtKuGTKZ/IiR5n/PiOnXWA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744292128; a=rsa-sha256; cv=none; b=JU+6wmBruVTr8QnKR7N5snKxXzrM44LgZ1VtTyO33T1VDj3FqvPhnZzmdTVneVq3Qvoy4x 5UwdrLmrEjipDGfrdwIPvgMR21PpOBDj29YsV5NwXrqQZgO+08kNUEi9lvtD2F9/Hk8TLJ lYrbOUxzFuC2sqS2meWxc8cJT1HSO3Ij4srLpticpZg38l8lLkgkn1H5KJvS7n+xloIW5Q ZjzO1BH7aYQQX0vPI71t6mrS9tkbNzKpoFmx/yIBGulJzgPqXfQw5awToTcGUkanicsypz /P6iio6Pcq3M+SV4e4G1AIe6EWR9iBGABFzRSUxAvRjoDuDEwkVE5b4xXQZ5TQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744292128; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5YqfSzSqxlafYKKZhLd6ZHpFZ2A8pX2ICC6W2Curik4=; b=Q8g4t/Y3fKzuRTy45iB+5NVkE/OsTK7o6zcitH+IashUzn7OSxR9ueQ5Ll/3rQZAT7Xbhy +nDVfccTN5gpfFIWkRfxnvSyFvaEVUlzaibwNKW3NFhcXo0O159jC65L2/H9JbQkYQQoJl kU3MyyREsFcSLUzPgiHsnOjuUngQ0YFRroYnaUBhULp963rAKewn7u4sfXUJ+WlEY4MhiP yYcU1SD3Lt++fsRxb5k5kmzqtG0MOt3LOX/NgO8J79M2eDXBMXIleDo7k6eqg48N6d+660 EPVcAHfQLL7LxL3WCp5fj1GTJLznLwb03sB6Asyt/x9ypgoxMn5ia/u6uT9i0g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYLRN0xsGz14hY; Thu, 10 Apr 2025 13:35:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53ADZSTf007249; Thu, 10 Apr 2025 13:35:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53ADZR4T007246; Thu, 10 Apr 2025 13:35:27 GMT (envelope-from git) Date: Thu, 10 Apr 2025 13:35:27 GMT Message-Id: <202504101335.53ADZR4T007246@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 558d63889623 - main - iwlwififw: remove Intel iwlwifi firmware from src.git List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 558d638896239f9cd25b9d825ecfce62ec54681e Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=558d638896239f9cd25b9d825ecfce62ec54681e commit 558d638896239f9cd25b9d825ecfce62ec54681e Author: Bjoern A. Zeeb AuthorDate: 2025-04-08 16:57:14 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-10 13:32:49 +0000 iwlwififw: remove Intel iwlwifi firmware from src.git Following the example of rtw88 and rtw89 only ship iwlwifi firmware from ports/packages. Users are asked to run fwget(8) to install the firmware needed for their system or build it from ports (see also UPDATING). This is the end of a long story adding wireless support to fwget(8), migrating the firmware for multiple branches into ports, splitting them up into flavors, and updating some install media and the installer to provide firmware. The overall amount for new firmware amongst all drivers would have added more than 100M of binary blobs to src.git for the first import, ignoring future updates which (along with some duplication between multiple drivers) was considered too much. While maintenance within the src tree certainly would have been easier in the longer term this seems to be the better solution and I would like to thank everyone who helped along the path to get there. The iwlwififw.4 man page is to stay (for now) and will likely point at the appropriate firmware package flavor in the future as well so people may find it easier to transition. In the long term this information is likely not needed anymore. Sponsored by: The FreeBSD Foundation Requested by: core (Oct 2022) Reviewed by: thj, jrm (earlier) MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D49713 --- ObsoleteFiles.inc | 3 + UPDATING | 6 + share/doc/legal/Makefile | 1 - share/doc/legal/intel_iwlwififw/Makefile | 5 - sys/contrib/dev/iwlwififw/LICENCE.iwlwifi_firmware | 39 -- sys/contrib/dev/iwlwififw/WHENCE | 483 --------------------- sys/contrib/dev/iwlwififw/iwlwifi-3160-17.ucode | Bin 918268 -> 0 bytes sys/contrib/dev/iwlwififw/iwlwifi-3168-29.ucode | Bin 1036288 -> 0 bytes sys/contrib/dev/iwlwififw/iwlwifi-7260-17.ucode | Bin 1049340 -> 0 bytes sys/contrib/dev/iwlwififw/iwlwifi-7265-17.ucode | Bin 1180412 -> 0 bytes sys/contrib/dev/iwlwififw/iwlwifi-7265D-29.ucode | Bin 1036772 -> 0 bytes sys/contrib/dev/iwlwififw/iwlwifi-8000C-36.ucode | Bin 2428004 -> 0 bytes sys/contrib/dev/iwlwififw/iwlwifi-8265-36.ucode | Bin 2436632 -> 0 bytes .../iwlwififw/iwlwifi-9000-pu-b0-jf-b0-46.ucode | Bin 1518772 -> 0 bytes .../iwlwififw/iwlwifi-9260-th-b0-jf-b0-46.ucode | Bin 1489652 -> 0 bytes .../dev/iwlwififw/iwlwifi-Qu-b0-hr-b0-77.ucode | Bin 1404704 -> 0 bytes .../dev/iwlwififw/iwlwifi-Qu-b0-jf-b0-77.ucode | Bin 1322436 -> 0 bytes .../dev/iwlwififw/iwlwifi-Qu-c0-hr-b0-77.ucode | Bin 1404720 -> 0 bytes .../dev/iwlwififw/iwlwifi-Qu-c0-jf-b0-77.ucode | Bin 1322452 -> 0 bytes .../dev/iwlwififw/iwlwifi-QuZ-a0-hr-b0-77.ucode | Bin 1404840 -> 0 bytes .../dev/iwlwififw/iwlwifi-QuZ-a0-jf-b0-77.ucode | Bin 1321956 -> 0 bytes sys/contrib/dev/iwlwififw/iwlwifi-cc-a0-77.ucode | Bin 1366144 -> 0 bytes .../dev/iwlwififw/iwlwifi-gl-c0-fm-c0-83.ucode | Bin 1799504 -> 0 bytes sys/contrib/dev/iwlwififw/iwlwifi-gl-c0-fm-c0.pnvm | Bin 226668 -> 0 bytes .../dev/iwlwififw/iwlwifi-so-a0-gf-a0-83.ucode | Bin 1739988 -> 0 bytes sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0.pnvm | Bin 55580 -> 0 bytes .../dev/iwlwififw/iwlwifi-so-a0-gf4-a0-83.ucode | Bin 1703968 -> 0 bytes .../dev/iwlwififw/iwlwifi-so-a0-gf4-a0.pnvm | Bin 28064 -> 0 bytes .../dev/iwlwififw/iwlwifi-so-a0-hr-b0-81.ucode | Bin 1539288 -> 0 bytes .../dev/iwlwififw/iwlwifi-so-a0-jf-b0-77.ucode | Bin 1446036 -> 0 bytes .../dev/iwlwififw/iwlwifi-ty-a0-gf-a0-83.ucode | Bin 1683076 -> 0 bytes sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0.pnvm | Bin 55484 -> 0 bytes sys/modules/Makefile | 4 - sys/modules/iwlwififw/Makefile | 30 -- sys/modules/iwlwififw/Makefile.inc | 18 - sys/modules/iwlwififw/iwlwifi-3160-fw/Makefile | 4 - sys/modules/iwlwififw/iwlwifi-3168-fw/Makefile | 4 - sys/modules/iwlwififw/iwlwifi-7260-fw/Makefile | 4 - sys/modules/iwlwififw/iwlwifi-7265-fw/Makefile | 4 - sys/modules/iwlwififw/iwlwifi-7265D-fw/Makefile | 4 - sys/modules/iwlwififw/iwlwifi-8000C-fw/Makefile | 4 - sys/modules/iwlwififw/iwlwifi-8265-fw/Makefile | 4 - .../iwlwififw/iwlwifi-9000-pu-b0-jf-b0-fw/Makefile | 4 - .../iwlwififw/iwlwifi-9260-th-b0-jf-b0-fw/Makefile | 4 - .../iwlwififw/iwlwifi-Qu-b0-hr-b0-fw/Makefile | 4 - .../iwlwififw/iwlwifi-Qu-b0-jf-b0-fw/Makefile | 4 - .../iwlwififw/iwlwifi-Qu-c0-hr-b0-fw/Makefile | 4 - .../iwlwififw/iwlwifi-Qu-c0-jf-b0-fw/Makefile | 4 - .../iwlwififw/iwlwifi-QuZ-a0-hr-b0-fw/Makefile | 4 - .../iwlwififw/iwlwifi-QuZ-a0-jf-b0-fw/Makefile | 4 - sys/modules/iwlwififw/iwlwifi-cc-a0-fw/Makefile | 4 - .../iwlwififw/iwlwifi-gl-c0-fm-c0-fw/Makefile | 4 - .../iwlwififw/iwlwifi-gl-c0-fm-c0-pnvm/Makefile | 6 - .../iwlwififw/iwlwifi-so-a0-gf-a0-fw/Makefile | 4 - .../iwlwififw/iwlwifi-so-a0-gf-a0-pnvm/Makefile | 6 - .../iwlwififw/iwlwifi-so-a0-gf4-a0-fw/Makefile | 4 - .../iwlwififw/iwlwifi-so-a0-gf4-a0-pnvm/Makefile | 6 - .../iwlwififw/iwlwifi-so-a0-hr-b0-fw/Makefile | 4 - .../iwlwififw/iwlwifi-so-a0-jf-b0-fw/Makefile | 4 - .../iwlwififw/iwlwifi-ty-a0-gf-a0-fw/Makefile | 4 - .../iwlwififw/iwlwifi-ty-a0-gf-a0-pnvm/Makefile | 6 - 61 files changed, 9 insertions(+), 692 deletions(-) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 14f54d75bc1d..24455bb86141 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -51,6 +51,9 @@ # xargs -n1 | sort | uniq -d; # done +# 20250409: removal of iwlwifi firmware files +OLD_FILES+=usr/share/doc/legal/intel_iwlwifi_firmware.LICENCE + # 20250331: removal of TCPPCAP OLD_FILES+=usr/include/netinet/tcp_pcap.h diff --git a/UPDATING b/UPDATING index 56b5e2dc16b7..8f709a0f1de9 100644 --- a/UPDATING +++ b/UPDATING @@ -27,6 +27,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 15.x IS SLOW: world, or to merely disable the most expensive debugging functionality at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20250409: + Before updating their system, users of iwlwifi(4) or iwx(4) must + install the appropriate firmware for their chipset using fwget(8) or + building it from ports as Intel iwlwifi firmware has been removed + from the src repository. + 20250314: We now use LLVM's binary utilities (nm, objcopy, etc.) by default. The WITHOUT_LLVM_BINUTILS src.conf(5) knob can be used to revert to diff --git a/share/doc/legal/Makefile b/share/doc/legal/Makefile index 9467a4ece9a7..a4ac98c4d305 100644 --- a/share/doc/legal/Makefile +++ b/share/doc/legal/Makefile @@ -1,6 +1,5 @@ SUBDIR= intel_ipw \ intel_iwi \ - intel_iwlwififw \ intel_iwn \ intel_wpi \ realtek diff --git a/share/doc/legal/intel_iwlwififw/Makefile b/share/doc/legal/intel_iwlwififw/Makefile deleted file mode 100644 index 87956f8e7a30..000000000000 --- a/share/doc/legal/intel_iwlwififw/Makefile +++ /dev/null @@ -1,5 +0,0 @@ -FILES= ${SRCTOP}/sys/contrib/dev/iwlwififw/LICENCE.iwlwifi_firmware -FILESDIR= ${SHAREDIR}/doc/legal -FILESNAME= intel_iwlwifi_firmware.LICENCE - -.include diff --git a/sys/contrib/dev/iwlwififw/LICENCE.iwlwifi_firmware b/sys/contrib/dev/iwlwififw/LICENCE.iwlwifi_firmware deleted file mode 100644 index 6bdd16d922b4..000000000000 --- a/sys/contrib/dev/iwlwififw/LICENCE.iwlwifi_firmware +++ /dev/null @@ -1,39 +0,0 @@ -Copyright (c) 2006-2021, Intel Corporation. -All rights reserved. - -Redistribution. Redistribution and use in binary form, without -modification, are permitted provided that the following conditions are -met: - -* Redistributions must reproduce the above copyright notice and the - following disclaimer in the documentation and/or other materials - provided with the distribution. -* Neither the name of Intel Corporation nor the names of its suppliers - may be used to endorse or promote products derived from this software - without specific prior written permission. -* No reverse engineering, decompilation, or disassembly of this software - is permitted. - -Limited patent license. Intel Corporation grants a world-wide, -royalty-free, non-exclusive license under patents it now or hereafter -owns or controls to make, have made, use, import, offer to sell and -sell ("Utilize") this software, but solely to the extent that any -such patent is necessary to Utilize the software alone, or in -combination with an operating system licensed under an approved Open -Source license as listed by the Open Source Initiative at -http://opensource.org/licenses. The patent license shall not apply to -any other combinations which include this software. No hardware per -se is licensed hereunder. - -DISCLAIMER. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS 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 -COPYRIGHT OWNER 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. diff --git a/sys/contrib/dev/iwlwififw/WHENCE b/sys/contrib/dev/iwlwififw/WHENCE deleted file mode 100644 index ef6fbe552049..000000000000 --- a/sys/contrib/dev/iwlwififw/WHENCE +++ /dev/null @@ -1,483 +0,0 @@ -Driver: iwlwifi - Intel Wireless Wifi - -File: iwlwifi-3945-2.ucode -Version: 15.32.2.9 - -File: iwlwifi-4965-2.ucode -Version: 228.61.2.24 - -File: iwlwifi-5000-1.ucode -Version: 5.4.A.11 (aka 5.4.1.16) - -File: iwlwifi-5000-2.ucode -Version: 8.24.2.12 - -File: iwlwifi-5000-5.ucode -Version: 8.83.5.1 - -File: iwlwifi-5150-2.ucode -Version: 8.24.2.2 - -File: iwlwifi-1000-3.ucode -Version: 128.50.3.1 - -File: iwlwifi-1000-5.ucode -Version: 39.31.5.1 - -File: iwlwifi-6000-4.ucode -Version: 9.221.4.1 - -File: iwlwifi-6050-4.ucode -Version: 9.201.4.1 - -File: iwlwifi-6050-5.ucode -Version: 41.28.5.1 - -File: iwlwifi-6000g2a-5.ucode -Version: 17.168.5.3 - -File: iwlwifi-6000g2a-6.ucode -Version: 18.168.6.1 - -File: iwlwifi-6000g2b-5.ucode -Version: 17.168.5.1 - -File: iwlwifi-6000g2b-6.ucode -Version: 18.168.6.1 - -File: iwlwifi-135-6.ucode -Version: 18.168.6.1 - -File: iwlwifi-100-5.ucode -Version: 39.31.5.1 - -File: iwlwifi-105-6.ucode -Version: 18.168.6.1 - -File: iwlwifi-2030-6.ucode -Version: 18.168.6.1 - -File: iwlwifi-2000-6.ucode -Version: 18.168.6.1 - -File: iwlwifi-7260-17.ucode -Version: 17.bfb58538.0 - -File: iwlwifi-3160-17.ucode -Version: 17.bfb58538.0 - -File: iwlwifi-7265-17.ucode -Version: 17.bfb58538.0 - -File: iwlwifi-7265D-22.ucode -Version: 22.391740.0 - -File: iwlwifi-7265D-27.ucode -Version: 27.541033.0 - -File: iwlwifi-7265D-29.ucode -Version: 29.f2390aa8.0 - -File: iwlwifi-3168-22.ucode -Version: 22.391740.0 - -File: iwlwifi-3168-27.ucode -Version: 27.541033.0 - -File: iwlwifi-3168-29.ucode -Version: 29.0bd893f3.0 - -File: iwlwifi-8000C-22.ucode -Version: 22.391740.0 - -File: iwlwifi-8000C-27.ucode -Version: 27.541033.0 - -File: iwlwifi-8000C-31.ucode -Version: 31.560484.0 - -File: iwlwifi-8000C-34.ucode -Version: 34.610288.0 - -File: iwlwifi-8000C-36.ucode -Version: 36.ca7b901d.0 - -File: iwlwifi-8265-22.ucode -Version: 22.391740.0 - -File: iwlwifi-8265-27.ucode -Version: 27.541033.0 - -File: iwlwifi-8265-31.ucode -Version: 31.560484.0 - -File: iwlwifi-8265-34.ucode -Version: 34.610288.0 - -File: iwlwifi-8265-36.ucode -Version: 36.ca7b901d.0 - -File: iwlwifi-9000-pu-b0-jf-b0-33.ucode -Version: 33.610294.0 - -File: iwlwifi-9000-pu-b0-jf-b0-34.ucode -Version: 34.ba501b11.0 - -File: iwlwifi-9000-pu-b0-jf-b0-38.ucode -Version: 38.755cfdd8.0 - -File: iwlwifi-9000-pu-b0-jf-b0-41.ucode -Version: 41.fc1a7aea.0 - -File: iwlwifi-9000-pu-b0-jf-b0-43.ucode -Version: 43.95eb4e97.0 - -File: iwlwifi-9000-pu-b0-jf-b0-46.ucode -Version: 46.9d0122c0.0 - -File: iwlwifi-9260-th-b0-jf-b0-33.ucode -Version: 33.610294.0 - -File: iwlwifi-9260-th-b0-jf-b0-34.ucode -Version: 34.ba501b11.0 - -File: iwlwifi-9260-th-b0-jf-b0-38.ucode -Version: 38.755cfdd8.0 - -File: iwlwifi-9260-th-b0-jf-b0-41.ucode -Version: 41.fc1a7aea.0 - -File: iwlwifi-9260-th-b0-jf-b0-43.ucode -Version: 43.95eb4e97.0 - -File: iwlwifi-9260-th-b0-jf-b0-46.ucode -Version: 46.9d0122c0.0 - -File: iwlwifi-cc-a0-46.ucode -Version: 46.3cfab8da.0 - -File: iwlwifi-cc-a0-48.ucode -Version: 48.4fa0041f.0 - -File: iwlwifi-Qu-b0-hr-b0-48.ucode -Version: 48.4fa0041f.0 - -File: iwlwifi-Qu-b0-jf-b0-48.ucode -Version: 48.4fa0041f.0 - -File: iwlwifi-Qu-c0-hr-b0-48.ucode -Version: 48.4fa0041f.0 - -File: iwlwifi-Qu-c0-jf-b0-48.ucode -Version: 48.4fa0041f.0 - -File: iwlwifi-QuZ-a0-hr-b0-48.ucode -Version: 48.4fa0041f.0 - -File: iwlwifi-QuZ-a0-jf-b0-48.ucode -Version: 48.4fa0041f.0 - -File: iwlwifi-cc-a0-50.ucode -Version: 50.3e391d3e.0 - -File: iwlwifi-Qu-b0-hr-b0-50.ucode -Version: 50.3e391d3e.0 - -File: iwlwifi-Qu-b0-jf-b0-50.ucode -Version: 50.3e391d3e.0 - -File: iwlwifi-Qu-c0-hr-b0-50.ucode -Version: 50.3e391d3e.0 - -File: iwlwifi-Qu-c0-jf-b0-50.ucode -Version: 50.3e391d3e.0 - -File: iwlwifi-QuZ-a0-hr-b0-50.ucode -Version: 50.3e391d3e.0 - -File: iwlwifi-QuZ-a0-jf-b0-50.ucode -Version: 50.3e391d3e.0 - -File: iwlwifi-cc-a0-53.ucode -Version: 53.c31ac674.0 - -File: iwlwifi-Qu-b0-hr-b0-53.ucode -Version: 53.c31ac674.0 - -File: iwlwifi-Qu-b0-jf-b0-53.ucode -Version: 53.c31ac674.0 - -File: iwlwifi-Qu-c0-hr-b0-53.ucode -Version: 53.c31ac674.0 - -File: iwlwifi-Qu-c0-jf-b0-53.ucode -Version: 53.c31ac674.0 - -File: iwlwifi-QuZ-a0-hr-b0-53.ucode -Version: 53.c31ac674.0 - -File: iwlwifi-QuZ-a0-jf-b0-53.ucode -Version: 53.c31ac674.0 - -File: iwlwifi-cc-a0-55.ucode -Version: 55.d9698065.0 - -File: iwlwifi-Qu-b0-hr-b0-55.ucode -Version: 55.d9698065.0 - -File: iwlwifi-Qu-b0-jf-b0-55.ucode -Version: 55.d9698065.0 - -File: iwlwifi-Qu-c0-hr-b0-55.ucode -Version: 55.d9698065.0 - -File: iwlwifi-Qu-c0-jf-b0-55.ucode -Version: 55.d9698065.0 - -File: iwlwifi-QuZ-a0-hr-b0-55.ucode -Version: 55.d9698065.0 - -File: iwlwifi-QuZ-a0-jf-b0-55.ucode -Version: 55.d9698065.0 - -File: iwlwifi-cc-a0-59.ucode -Version: 59.601f3a66.0 - -File: iwlwifi-Qu-b0-hr-b0-59.ucode -Version: 59.601f3a66.0 - -File: iwlwifi-Qu-b0-jf-b0-59.ucode -Version: 59.601f3a66.0 - -File: iwlwifi-Qu-c0-hr-b0-59.ucode -Version: 59.601f3a66.0 - -File: iwlwifi-Qu-c0-jf-b0-59.ucode -Version: 59.601f3a66.0 - -File: iwlwifi-QuZ-a0-hr-b0-59.ucode -Version: 59.601f3a66.0 - -File: iwlwifi-QuZ-a0-jf-b0-59.ucode -Version: 59.601f3a66.0 - -File: iwlwifi-so-a0-gf-a0-64.ucode -Version: 64.97bbee0a.0 - -File: iwlwifi-so-a0-gf-a0-67.ucode -Version: 67.8f59b80b.0 - -File: iwlwifi-so-a0-gf4-a0-67.ucode -Version: 67.8f59b80b.0 - -File: iwlwifi-so-a0-gf-a0.pnvm - -File: iwlwifi-so-a0-gf4-a0.pnvm - -File: iwlwifi-so-a0-hr-b0-64.ucode -Version: 64.97bbee0a.0 - -File: iwlwifi-so-a0-jf-b0-64.ucode -Version: 64.97bbee0a.0 - -File: iwlwifi-ty-a0-gf-a0-59.ucode -Version: 59.601f3a66.0 - -File: iwlwifi-cc-a0-62.ucode -Version: 62.49eeb572.0 - -File: iwlwifi-Qu-b0-hr-b0-62.ucode -Version: 62.49eeb572.0 - -File: iwlwifi-Qu-b0-jf-b0-62.ucode -Version: 62.49eeb572.0 - -File: iwlwifi-Qu-c0-hr-b0-62.ucode -Version: 62.49eeb572.0 - -File: iwlwifi-Qu-c0-jf-b0-62.ucode -Version: 62.49eeb572.0 - -File: iwlwifi-QuZ-a0-hr-b0-62.ucode -Version: 62.49eeb572.0 - -File: iwlwifi-QuZ-a0-jf-b0-62.ucode -Version: 62.49eeb572.0 - -File: iwlwifi-ty-a0-gf-a0-62.ucode -Version: 62.49eeb572.0 - -File: iwlwifi-cc-a0-63.ucode -Version: 63.c04f3485.0 - -File: iwlwifi-cc-a0-67.ucode -Version: 67.8f59b80b.0 - -File: iwlwifi-Qu-b0-hr-b0-63.ucode -Version: 63.c04f3485.0 - -File: iwlwifi-Qu-b0-jf-b0-63.ucode -Version: 63.c04f3485.0 - -File: iwlwifi-Qu-c0-hr-b0-63.ucode -Version: 63.c04f3485.0 - -File: iwlwifi-Qu-c0-jf-b0-63.ucode -Version: 63.c04f3485.0 - -File: iwlwifi-QuZ-a0-hr-b0-63.ucode -Version: 63.c04f3485.0 - -File: iwlwifi-QuZ-a0-hr-b0-67.ucode -Version: 67.8f59b80b.0 - -File: iwlwifi-QuZ-a0-jf-b0-63.ucode -Version: 63.c04f3485.0 - -File: iwlwifi-ty-a0-gf-a0-63.ucode -Version: 63.c04f3485.0 - -File: iwlwifi-cc-a0-66.ucode -Version: 66.f1c864e0.0 - -File: iwlwifi-Qu-b0-hr-b0-66.ucode -Version: 66.f1c864e0.0 - -File: iwlwifi-Qu-b0-jf-b0-66.ucode -Version: 66.f1c864e0.0 - -File: iwlwifi-Qu-c0-hr-b0-66.ucode -Version: 66.f1c864e0.0 - -File: iwlwifi-Qu-c0-jf-b0-66.ucode -Version: 66.f1c864e0.0 - -File: iwlwifi-QuZ-a0-hr-b0-66.ucode -Version: 66.f1c864e0.0 - -File: iwlwifi-QuZ-a0-jf-b0-66.ucode -Version: 66.f1c864e0.0 - -File: iwlwifi-ty-a0-gf-a0-66.ucode -Version: 66.f1c864e0.0 - -File: iwlwifi-ty-a0-gf-a0-67.ucode -Version: 67.8f59b80b.0 - -File: iwlwifi-cc-a0-68.ucode -Version: 68.01d30b0c.0 - -File: iwlwifi-Qu-b0-hr-b0-68.ucode -Version: 68.01d30b0c.0 - -File: iwlwifi-Qu-b0-jf-b0-68.ucode -Version: 68.01d30b0c.0 - -File: iwlwifi-Qu-c0-hr-b0-68.ucode -Version: 68.01d30b0c.0 - -File: iwlwifi-Qu-c0-jf-b0-68.ucode -Version: 68.01d30b0c.0 - -File: iwlwifi-QuZ-a0-hr-b0-68.ucode -Version: 68.01d30b0c.0 - -File: iwlwifi-QuZ-a0-jf-b0-68.ucode -Version: 68.01d30b0c.0 - -File: iwlwifi-ty-a0-gf-a0-68.ucode -Version: 68.01d30b0c.0 - -File: iwlwifi-so-a0-gf4-a0-68.ucode -Version: 68.01d30b0c.0 - -File: iwlwifi-so-a0-gf-a0-68.ucode -Version: 68.01d30b0c.0 - -File: iwlwifi-so-a0-hr-b0-68.ucode -Version: 68.01d30b0c.0 - -File: iwlwifi-so-a0-jf-b0-68.ucode -Version: 68.01d30b0c.0 - -File: iwlwifi-cc-a0-71.ucode -Version: 71.058653f6.0 - -File: iwlwifi-Qu-b0-hr-b0-71.ucode -Version: 71.058653f6.0 - -File: iwlwifi-Qu-b0-jf-b0-71.ucode -Version: 71.058653f6.0 - -File: iwlwifi-Qu-c0-hr-b0-71.ucode -Version: 71.058653f6.0 - -File: iwlwifi-Qu-c0-jf-b0-71.ucode -Version: 71.058653f6.0 - -File: iwlwifi-QuZ-a0-hr-b0-71.ucode -Version: 71.058653f6.0 - -File: iwlwifi-QuZ-a0-jf-b0-71.ucode -Version: 71.058653f6.0 - -File: iwlwifi-ty-a0-gf-a0-71.ucode -Version: 71.058653f6.0 - -File: iwlwifi-so-a0-gf4-a0-71.ucode -Version: 71.058653f6.0 - -File: iwlwifi-so-a0-gf-a0-71.ucode -Version: 71.058653f6.0 - -File: iwlwifi-so-a0-hr-b0-71.ucode -Version: 71.058653f6.0 - -File: iwlwifi-so-a0-jf-b0-71.ucode -Version: 71.058653f6.0 - -File: iwlwifi-cc-a0-73.ucode -Version: 73.35c0a2c6.0 - -File: iwlwifi-Qu-b0-hr-b0-73.ucode -Version: 73.35c0a2c6.0 - -File: iwlwifi-Qu-b0-jf-b0-73.ucode -Version: 73.35c0a2c6.0 - -File: iwlwifi-Qu-c0-hr-b0-73.ucode -Version: 73.35c0a2c6.0 - -File: iwlwifi-Qu-c0-jf-b0-73.ucode -Version: 73.35c0a2c6.0 - -File: iwlwifi-QuZ-a0-hr-b0-73.ucode -Version: 73.35c0a2c6.0 - -File: iwlwifi-QuZ-a0-jf-b0-73.ucode -Version: 73.35c0a2c6.0 - -File: iwlwifi-ty-a0-gf-a0-73.ucode -Version: 73.35c0a2c6.0 - -File: iwlwifi-so-a0-gf4-a0-73.ucode -Version: 73.35c0a2c6.0 - -File: iwlwifi-so-a0-gf-a0-73.ucode -Version: 73.35c0a2c6.0 - -File: iwlwifi-so-a0-hr-b0-73.ucode -Version: 73.35c0a2c6.0 - -File: iwlwifi-so-a0-jf-b0-73.ucode -Version: 73.35c0a2c6.0 - -File: iwlwifi-so-a0-gf-a0.pnvm - -File: iwlwifi-so-a0-gf4-a0.pnvm - -File: iwlwifi-ty-a0-gf-a0.pnvm - -Licence: Redistributable. See LICENCE.iwlwifi_firmware for details - -Also available from http://wireless.kernel.org/en/users/Drivers/iwlwifi#Firmware diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-3160-17.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-3160-17.ucode deleted file mode 100644 index 95b26df9d56d..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-3160-17.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-3168-29.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-3168-29.ucode deleted file mode 100644 index 1759561ec203..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-3168-29.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-7260-17.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-7260-17.ucode deleted file mode 100644 index b1a87d52cdd1..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-7260-17.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-7265-17.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-7265-17.ucode deleted file mode 100644 index f4a549cce6ed..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-7265-17.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-7265D-29.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-7265D-29.ucode deleted file mode 100644 index 7c513f669790..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-7265D-29.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-8000C-36.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-8000C-36.ucode deleted file mode 100644 index e4988f6b421e..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-8000C-36.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-8265-36.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-8265-36.ucode deleted file mode 100644 index 60fda3b7d45b..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-8265-36.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-9000-pu-b0-jf-b0-46.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-9000-pu-b0-jf-b0-46.ucode deleted file mode 100644 index 9af424f1ce06..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-9000-pu-b0-jf-b0-46.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-9260-th-b0-jf-b0-46.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-9260-th-b0-jf-b0-46.ucode deleted file mode 100644 index 4c2b25e585cb..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-9260-th-b0-jf-b0-46.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-hr-b0-77.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-hr-b0-77.ucode deleted file mode 100644 index de6cd8b98985..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-hr-b0-77.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-jf-b0-77.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-jf-b0-77.ucode deleted file mode 100644 index ad87490d470b..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-jf-b0-77.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-hr-b0-77.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-hr-b0-77.ucode deleted file mode 100644 index 37e1c7af3f16..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-hr-b0-77.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-jf-b0-77.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-jf-b0-77.ucode deleted file mode 100644 index bd0b2b249894..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-jf-b0-77.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-hr-b0-77.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-hr-b0-77.ucode deleted file mode 100644 index 256997390af6..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-hr-b0-77.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-jf-b0-77.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-jf-b0-77.ucode deleted file mode 100644 index 7c2a06a2dd2e..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-jf-b0-77.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-cc-a0-77.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-cc-a0-77.ucode deleted file mode 100644 index d138e34af24d..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-cc-a0-77.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-gl-c0-fm-c0-83.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-gl-c0-fm-c0-83.ucode deleted file mode 100644 index a1444bab2622..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-gl-c0-fm-c0-83.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-gl-c0-fm-c0.pnvm b/sys/contrib/dev/iwlwififw/iwlwifi-gl-c0-fm-c0.pnvm deleted file mode 100644 index 3cdb0b522b22..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-gl-c0-fm-c0.pnvm and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0-83.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0-83.ucode deleted file mode 100644 index dbb15f487716..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0-83.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0.pnvm b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0.pnvm deleted file mode 100644 index 9dad35a1f5f5..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0.pnvm and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0-83.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0-83.ucode deleted file mode 100644 index 1bc07d83ac07..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0-83.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0.pnvm b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0.pnvm deleted file mode 100644 index 86b9a7c63776..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0.pnvm and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-hr-b0-81.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-hr-b0-81.ucode deleted file mode 100644 index fc8558c6cc90..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-hr-b0-81.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-jf-b0-77.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-jf-b0-77.ucode deleted file mode 100644 index 3649a1c89238..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-jf-b0-77.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0-83.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0-83.ucode deleted file mode 100644 index 3fdd6d5a0d9a..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0-83.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0.pnvm b/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0.pnvm deleted file mode 100644 index 68b8668df93d..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0.pnvm and /dev/null differ diff --git a/sys/modules/Makefile b/sys/modules/Makefile index 71193e3559be..1608e47891e1 100644 --- a/sys/modules/Makefile +++ b/sys/modules/Makefile @@ -196,7 +196,6 @@ SUBDIR= \ ${_iwi} \ ${_iwifw} \ ${_iwlwifi} \ - ${_iwlwififw} \ ${_iwm} \ ${_iwn} \ ${_iwnfw} \ @@ -571,9 +570,6 @@ _mlx5ib= mlx5ib _ena= ena _gve= gve _iwlwifi= iwlwifi -.if ${MK_SOURCELESS_UCODE} != "no" -_iwlwififw= iwlwififw -.endif _rtw88= rtw88 _rtw89= rtw89 _vmware= vmware diff --git a/sys/modules/iwlwififw/Makefile b/sys/modules/iwlwififw/Makefile deleted file mode 100644 index dcecb2072d0c..000000000000 --- a/sys/modules/iwlwififw/Makefile +++ /dev/null @@ -1,30 +0,0 @@ -SUBDIR= \ - iwlwifi-3160-fw \ - iwlwifi-3168-fw \ - iwlwifi-7260-fw \ - iwlwifi-7265-fw \ - iwlwifi-7265D-fw \ - iwlwifi-8000C-fw \ - iwlwifi-8265-fw \ - iwlwifi-9000-pu-b0-jf-b0-fw \ - iwlwifi-9260-th-b0-jf-b0-fw \ - iwlwifi-Qu-b0-hr-b0-fw \ - iwlwifi-Qu-b0-jf-b0-fw \ - iwlwifi-Qu-c0-hr-b0-fw \ - iwlwifi-Qu-c0-jf-b0-fw \ - iwlwifi-QuZ-a0-hr-b0-fw \ - iwlwifi-QuZ-a0-jf-b0-fw \ - iwlwifi-cc-a0-fw \ - iwlwifi-gl-c0-fm-c0-fw \ - iwlwifi-gl-c0-fm-c0-pnvm \ - iwlwifi-so-a0-gf-a0-fw \ - iwlwifi-so-a0-gf4-a0-fw \ - iwlwifi-so-a0-hr-b0-fw \ - iwlwifi-so-a0-jf-b0-fw \ - iwlwifi-ty-a0-gf-a0-fw \ - iwlwifi-so-a0-gf-a0-pnvm \ - iwlwifi-so-a0-gf4-a0-pnvm \ - iwlwifi-ty-a0-gf-a0-pnvm - - -.include diff --git a/sys/modules/iwlwififw/Makefile.inc b/sys/modules/iwlwififw/Makefile.inc deleted file mode 100644 index 1fe51a087f58..000000000000 --- a/sys/modules/iwlwififw/Makefile.inc +++ /dev/null @@ -1,18 +0,0 @@ -# Common rules for building iwlwifi firmware. - -EXT?= ucode -_NAME?= iwlwifi-${NAME}-${FWVERSION}.${EXT} - -IMG= ${_NAME} -KMOD= ${_NAME} - -CLEANFILES+= ${IMG} - -FIRMWS= ${IMG}:${IMG}:${FWVERSION} - -# License ack is not needed for iwlwifi (same as iwn/iwm). -#FIRMWARE_LICENSE= - -${IMG}: ${SRCTOP}/sys/contrib/dev/iwlwififw/${IMG} - cp ${.ALLSRC} ${.TARGET} - diff --git a/sys/modules/iwlwififw/iwlwifi-3160-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-3160-fw/Makefile deleted file mode 100644 index 22817a070537..000000000000 --- a/sys/modules/iwlwififw/iwlwifi-3160-fw/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -FWVERSION= 17 -NAME= 3160 - -.include diff --git a/sys/modules/iwlwififw/iwlwifi-3168-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-3168-fw/Makefile deleted file mode 100644 index 8f5ab6a15110..000000000000 --- a/sys/modules/iwlwififw/iwlwifi-3168-fw/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -FWVERSION= 29 -NAME= 3168 - -.include diff --git a/sys/modules/iwlwififw/iwlwifi-7260-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-7260-fw/Makefile deleted file mode 100644 index d18dca802cba..000000000000 --- a/sys/modules/iwlwififw/iwlwifi-7260-fw/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -FWVERSION= 17 -NAME= 7260 - -.include diff --git a/sys/modules/iwlwififw/iwlwifi-7265-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-7265-fw/Makefile deleted file mode 100644 index 3058f7e26d2e..000000000000 --- a/sys/modules/iwlwififw/iwlwifi-7265-fw/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -FWVERSION= 17 -NAME= 7265 - -.include diff --git a/sys/modules/iwlwififw/iwlwifi-7265D-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-7265D-fw/Makefile deleted file mode 100644 index 30d1788fa0bf..000000000000 --- a/sys/modules/iwlwififw/iwlwifi-7265D-fw/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -FWVERSION= 29 -NAME= 7265D - -.include diff --git a/sys/modules/iwlwififw/iwlwifi-8000C-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-8000C-fw/Makefile deleted file mode 100644 index d0e9113028be..000000000000 --- a/sys/modules/iwlwififw/iwlwifi-8000C-fw/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -FWVERSION= 36 -NAME= 8000C - -.include diff --git a/sys/modules/iwlwififw/iwlwifi-8265-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-8265-fw/Makefile deleted file mode 100644 index 344c76d69db0..000000000000 --- a/sys/modules/iwlwififw/iwlwifi-8265-fw/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -FWVERSION= 36 -NAME= 8265 - -.include diff --git a/sys/modules/iwlwififw/iwlwifi-9000-pu-b0-jf-b0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-9000-pu-b0-jf-b0-fw/Makefile deleted file mode 100644 index 4475367933e5..000000000000 --- a/sys/modules/iwlwififw/iwlwifi-9000-pu-b0-jf-b0-fw/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -FWVERSION= 46 -NAME= 9000-pu-b0-jf-b0 - -.include diff --git a/sys/modules/iwlwififw/iwlwifi-9260-th-b0-jf-b0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-9260-th-b0-jf-b0-fw/Makefile deleted file mode 100644 index b33ac5a53f7b..000000000000 --- a/sys/modules/iwlwififw/iwlwifi-9260-th-b0-jf-b0-fw/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -FWVERSION= 46 -NAME= 9260-th-b0-jf-b0 - -.include diff --git a/sys/modules/iwlwififw/iwlwifi-Qu-b0-hr-b0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-Qu-b0-hr-b0-fw/Makefile deleted file mode 100644 index d991ff20e099..000000000000 --- a/sys/modules/iwlwififw/iwlwifi-Qu-b0-hr-b0-fw/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -FWVERSION= 77 -NAME= Qu-b0-hr-b0 - -.include diff --git a/sys/modules/iwlwififw/iwlwifi-Qu-b0-jf-b0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-Qu-b0-jf-b0-fw/Makefile deleted file mode 100644 index 2876476060bc..000000000000 --- a/sys/modules/iwlwififw/iwlwifi-Qu-b0-jf-b0-fw/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -FWVERSION= 77 -NAME= Qu-b0-jf-b0 *** 160 LINES SKIPPED *** From nobody Thu Apr 10 13:37:18 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYLTW4FfTz5syFk; Thu, 10 Apr 2025 13:37: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYLTW1FX9z3xSC; Thu, 10 Apr 2025 13:37:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744292239; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=M/7Q8pTv92Jo6ZNohIFpPPrUz9p7iCh2uN7kQVjS0nw=; b=PL0A+moUtlsr71opRIdXlQ/JBvMDbVVyUxXH4peQcFwaZfcqQ4eBlL5+bBArRUSDcn3zRg IhUN4KkXk+dmjJvHoZHN0phyYl6sX761l3BlkCQjUdbMnNxL3j2+UWkczQpkeJpXdsjRrx NHvhNl+KbcmA3GOE92igYfDiHXR4XjxG+etmCyTPJ7lnX5DGWXg5EFymi0FzQ6RTSDLYwc sXV1b/K0abIVGSibWMg5oACfWSiU+WRG+TiMW59X5/aNqveAbvYQVug6DRIjQchA1wOCQm YeIqBMADfPIimBvte1ECu+Ej6gMRU1Zv6ka39g4Ax90pqSiXTomybqGhkMXh+g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744292239; a=rsa-sha256; cv=none; b=O7iI2M6mtgfG0rRIQGn28J9D/yJsn1imGAigYVyIOMmc6dwQsZ2zBiRYVcIpzAhduwXN9c D5CZW7hz8xmR2N3dLhn08sSAahD4oQ1KndG8YBfsgotze46QIqXn7Lj8FuKDZlpf3GcXyZ uT6W2wtobcwD7FkL5iaN5P4GN90n74Y5GWkgok3opWgFrG/biJVZ+MEsqFyr4O1/KYcdI0 r4HgDcvfyEguS2O24WuotnzktE3fvuYrCtF5tyQ+wLz2WxM1kpCw2uLroSyRmluG7kNO4D jXfCBXR45yLBVuCIXega98tqbSEoFssIISk9OluEZHqfeUFNnxFi7kPGRx6CIw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744292239; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=M/7Q8pTv92Jo6ZNohIFpPPrUz9p7iCh2uN7kQVjS0nw=; b=f1avPXjAU5ls7HEEPqbEFqjl4QV86u5oVNY7tGnPhnqgq5J7CwQme1kNrlFN+TJ4EJcBFJ i/602wZWuTTnxe9gpgfMA/x8ktoiwRAtihSW+vklL7vFlZnNXJ/ZCsSZG0MG41J04FmXLt sIkuWNxHCWZe4c7udPJdVPUzzydeENlmNgC6SNAvCrU3XQ8Cz4lS+oGNbyy+6Z1HdNyTRz xJ+NlJmh4JzIj5uu7fUER+hPHoCZO9nXCLZODzzjwBA58BOAwLV1juBEdu2ZlDL5dToa/S v2XEzTF0LIPNLOLI/+O9glI+gUbVlc7/xVCPEqrkjAjlKMzydHthtUUxBAmhDg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYLTW0SRBz14hZ; Thu, 10 Apr 2025 13:37:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53ADbIhP007896; Thu, 10 Apr 2025 13:37:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53ADbIOI007893; Thu, 10 Apr 2025 13:37:18 GMT (envelope-from git) Date: Thu, 10 Apr 2025 13:37:18 GMT Message-Id: <202504101337.53ADbIOI007893@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: 646b453110aa - main - pf: fix pf_ioctl_add_addr() validation List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 646b453110aa78abef24f507e7ef4562a7109897 Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=646b453110aa78abef24f507e7ef4562a7109897 commit 646b453110aa78abef24f507e7ef4562a7109897 Author: Kristof Provost AuthorDate: 2025-04-10 11:49:03 +0000 Commit: Kristof Provost CommitDate: 2025-04-10 13:36:41 +0000 pf: fix pf_ioctl_add_addr() validation Ensure we can only pass AF_UNSPEC, AF_INET or AF_INET6 (and only when supported in our kernel config). Reported-by: syzbot+8a9ee157bfed9e6b9efc@syzkaller.appspotmail.com Sponsored by: Rubicon Communications, LLC ("Netgate") --- sys/netpfil/pf/pf_ioctl.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/sys/netpfil/pf/pf_ioctl.c b/sys/netpfil/pf/pf_ioctl.c index 3ee5173c1313..44da2e156ce2 100644 --- a/sys/netpfil/pf/pf_ioctl.c +++ b/sys/netpfil/pf/pf_ioctl.c @@ -2571,14 +2571,20 @@ pf_ioctl_add_addr(struct pf_nl_pooladdr *pp) pp->which != PF_RT) return (EINVAL); -#ifndef INET - if (pp->af == AF_INET) - return (EAFNOSUPPORT); + switch (pp->af) { +#ifdef INET + case AF_INET: + /* FALLTHROUGH */ #endif /* INET */ -#ifndef INET6 - if (pp->af == AF_INET6) - return (EAFNOSUPPORT); +#ifdef INET6 + case AF_INET6: + /* FALLTHROUGH */ #endif /* INET6 */ + case AF_UNSPEC: + break; + default: + return (EAFNOSUPPORT); + } if (pp->addr.addr.type != PF_ADDR_ADDRMASK && pp->addr.addr.type != PF_ADDR_DYNIFTL && From nobody Thu Apr 10 13:41:14 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYLZ25yWGz5syZX; Thu, 10 Apr 2025 13:41: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYLZ25NYvz40wH; Thu, 10 Apr 2025 13:41:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744292474; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TF3l6PkXqpnfpBjW8gzC56NOJR9myubXA6eiQgo8XGM=; b=Yrb1yxQwIw1a9Ha1o5W3IE57IcRQLQiJ1To5ht73/L5jgxzyrYUJ6REFFAyQfmBJRxUvKA 0G/DuVjs7KoBZmFvaqWBFn/yb1X3B49+UQPohGUqchcz/F0dNsjVW8baGhBkrjaj6vMEdU JZx+beL497o2gX4tO7BonzMkUmGljfsgQbTAnLQNCyJwB7rQNGgAjeBbqdb83nMFuzFAiB bvzqU9Emj2Lc+5u7MsMU7PaVn7hTB9yvfyaUnv6QN4rn0dTqy77IVEk++jc6tzLHYq/d4L Vy633PDGXjejgrRR8sLagFPvSAbb0Bbi0+KJdfbWh1OCk8B/RXF2Jhz8vbXBkw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744292474; a=rsa-sha256; cv=none; b=FtGw1BWekePqE33J3xRtbKXMCd5Dg8SpFQFK5oXbp9FIHpYDgayfVV0vcS2DbOkpZ2tksm m8Ql8zdCtGk1OVOaN0ctMX0yNf+m3u4BdnPzpJip4tQx7xg2sq9lBMEUH8S9SCyXLJxMR2 cNQ/IUnbxAJeLQ/Jto93zjQ+dl9t7JjeUvyBnchFJMmNKI9aQbfibLCT1aHsR6jB/Z0Tbj WlnG6nigJ2oT8FIKAuCygoAsQTaloz2cLRxIlIv1osNMqQQ9oU08kzWxRoriKkFWIr9unI wNDhrP6nbzWaCSydDm1vAdUeGlyDuQgzpjSK/Yfi5Cysx+u6rKoUW+1WY7NXwQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744292474; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TF3l6PkXqpnfpBjW8gzC56NOJR9myubXA6eiQgo8XGM=; b=JBCFU/ge7tIcVxVQSA6Sp/O+oOGwEYDH25LHHUs5sDsJVkfD+cmHDANRZ0QQgKS2IZWK/1 VpSVw1akfysy5HXsu58IgHNIA0vKZ9cKgrEGggrg6i3unC8lZkikJiKvDvsNTRD6h98XSA Cz4xp57pqf5cF9BuA1X3ZKOcut/X7XzwtItkp0DAJqjQsERIj0GD0fplndmmSTtI964/6i O3gk+XUQWe0hpt8W3WZIqhnx9xLWV+hvk5AmY5kCTFzv/GWNqHFE8aog0D4NVYTFifdw5F Bay6Bg3EvKBt9zC8Bla19YfjN0x7tITzBuk+A2tFQrmz6I1mb0HdgvYVVYCrVw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYLZ24yz2z14sG; Thu, 10 Apr 2025 13:41:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53ADfEv1023358; Thu, 10 Apr 2025 13:41:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53ADfEP0023340; Thu, 10 Apr 2025 13:41:14 GMT (envelope-from git) Date: Thu, 10 Apr 2025 13:41:14 GMT Message-Id: <202504101341.53ADfEP0023340@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Michael Reifenberger Subject: git: adad92981419 - main - Fix build under current. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mr X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: adad9298141964ca38e21a05c0b8951efbcb70b2 Auto-Submitted: auto-generated The branch main has been updated by mr: URL: https://cgit.FreeBSD.org/src/commit/?id=adad9298141964ca38e21a05c0b8951efbcb70b2 commit adad9298141964ca38e21a05c0b8951efbcb70b2 Author: Michael Reifenberger AuthorDate: 2025-04-10 13:39:12 +0000 Commit: Michael Reifenberger CommitDate: 2025-04-10 13:41:02 +0000 Fix build under current. --- tools/tools/nanobsd/rescue/common | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/tools/tools/nanobsd/rescue/common b/tools/tools/nanobsd/rescue/common index 5fcf5c19b882..15bf10f5e67d 100644 --- a/tools/tools/nanobsd/rescue/common +++ b/tools/tools/nanobsd/rescue/common @@ -1,15 +1,15 @@ # # -NANO_SRC=$(pwd) -NANO_SRC=${NANO_SRC%/tools/tools/nanobsd/rescue} -NANO_OBJ=${NANO_SRC}/../nanobsd-builds/${NANO_NAME}/obj +#NANO_SRC=$(pwd) +#NANO_SRC=${NANO_SRC%/tools/tools/nanobsd/rescue} +#NANO_OBJ=${NANO_SRC}/../nanobsd-builds/${NANO_NAME}/obj NANO_TOOLS=`pwd` NANO_PACKAGE_DIR=`pwd`/Pkg NANO_RAM_TMPVARSIZE=40960 NANO_PMAKE="make -j 8" NANO_LABEL="rescue" NANO_RAM_TMPVARSIZE=40960 -NANO_MEDIASIZE="3932160" +NANO_MEDIASIZE="6000000" NANO_SECTS="63" NANO_HEADS="16" NANO_IMAGES="2" @@ -31,10 +31,12 @@ CONF_INSTALL=' CONF_WORLD=' CFLAGS=-O -pipe # We do not need these for rescue -WITHOUT_LIB32=true WITHOUT_TESTS=true -WITHOUT_DEBUG_FILES=t -WITHOUT_KERNEL_SYMBOLS=t +WITHOUT_DEBUG_FILES=true +WITHOUT_KERNEL_SYMBOLS=true +WITHOUT_CLANG_FULL=true +WITH_CLANG_EXTRAS=true +WITHOUT_LIB32=true ' # Functions @@ -50,14 +52,14 @@ toUpper() { customize_cmd cust_allow_ssh_root customize_cmd cust_install_files -cust_ld32_cfg () ( - cd ${NANO_WORLDDIR}/libexec - if [ \! -f ld-elf32.so.1 ]; then - ln -s ld-elf.so.1 ld-elf32.so.1 - fi -) -customize_cmd cust_ld32_cfg - +#cust_ld32_cfg () ( +# cd ${NANO_WORLDDIR}/libexec +# if [ \! -f ld-elf32.so.1 ]; then +# ln -s ld-elf.so.1 ld-elf32.so.1 +# fi +#) +#customize_cmd cust_ld32_cfg +# #cust_boot_cfg () ( # cd ${NANO_WORLDDIR} # echo "-S115200 -h" > boot.config @@ -67,7 +69,7 @@ customize_cmd cust_ld32_cfg #) #customize_cmd cust_boot_cfg -customize_cmd cust_pkgng +#customize_cmd cust_pkgng cust_etc_cfg () ( cd ${NANO_WORLDDIR} From nobody Thu Apr 10 14:16:06 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYMLL0Ystz5t06k; Thu, 10 Apr 2025 14:16:10 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from omta003.cacentral1.a.cloudfilter.net (omta001.cacentral1.a.cloudfilter.net [3.97.99.32]) (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 4ZYMLK5V6Hz44T7; Thu, 10 Apr 2025 14:16:09 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Authentication-Results: mx1.freebsd.org; none Received: from shw-obgw-4002a.ext.cloudfilter.net ([10.228.9.250]) by cmsmtp with ESMTPS id 2sfduDWeJ9JM22shNuaZwp; Thu, 10 Apr 2025 14:16:09 +0000 Received: from spqr.komquats.com ([70.66.136.217]) by cmsmtp with ESMTPSA id 2shLuv0xxl5eG2shMujBgq; Thu, 10 Apr 2025 14:16:09 +0000 X-Auth-User: cschuber X-Authority-Analysis: v=2.4 cv=EO6l0EZC c=1 sm=1 tr=0 ts=67f7d2a9 a=h7br+8Ma+Xn9xscxy5znUg==:117 a=h7br+8Ma+Xn9xscxy5znUg==:17 a=kj9zAlcOel0A:10 a=XR8D0OoHHMoA:10 a=6I5d2MoRAAAA:8 a=EkcXrb_YAAAA:8 a=YxBL1-UpAAAA:8 a=2wh6xbWesIucxnZkOEgA:9 a=CjuIK1q_8ugA:10 a=LK5xJRSDVpKd5WXXoEvA:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTP id B8619752; Thu, 10 Apr 2025 07:16:06 -0700 (PDT) Received: by slippy.cwsent.com (Postfix, from userid 1000) id 3BC9031C; Thu, 10 Apr 2025 07:16:06 -0700 (PDT) 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: "Bjoern A. Zeeb" cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 558d63889623 - main - iwlwififw: remove Intel iwlwifi firmware from src.git In-reply-to: <202504101335.53ADZR4T007246@gitrepo.freebsd.org> References: <202504101335.53ADZR4T007246@gitrepo.freebsd.org> Comments: In-reply-to "Bjoern A. Zeeb" message dated "Thu, 10 Apr 2025 13:35:27 +0000." List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Thu, 10 Apr 2025 07:16:06 -0700 Message-Id: <20250410141606.3BC9031C@slippy.cwsent.com> X-CMAE-Envelope: MS4xfKFZESHQDI7ko0WEF0B60JSyim0enT1751xIkGhOHiVFtwwgPyh2ulNephqYFWf+LklBr4m0AcJSNdbzbBAtp4V+d7+pEnzgbOYvKw/WSRwnU4jx4vUS c8bV32PGBsQw04yCJJbnPgVCthILqPbLU5GCKcjcp58JS2l+i5bNqyP9u+cF2esuFP2U8M897FC0mQ+YS5YcUG9hBDYfzeFfePhpHJ5ViXGcXkwgedM+doOB xlKhVAcavjDSdy97XK3G5AOjEiMp5o4Jt1IeXihoYk2MG/FtoA7akWlAAPNfynhohPYFSNMS66es4RaTQ3cXT90peIm6lV8i/l5toQVC3BE= X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:16509, ipnet:3.96.0.0/15, country:US] X-Rspamd-Queue-Id: 4ZYMLK5V6Hz44T7 X-Spamd-Bar: ---- In message <202504101335.53ADZR4T007246@gitrepo.freebsd.org>, "Bjoern A. Zeeb" writes: > The branch main has been updated by bz: > > URL: https://cgit.FreeBSD.org/src/commit/?id=558d638896239f9cd25b9d825ecfce62 > ec54681e > > commit 558d638896239f9cd25b9d825ecfce62ec54681e > Author: Bjoern A. Zeeb > AuthorDate: 2025-04-08 16:57:14 +0000 > Commit: Bjoern A. Zeeb > CommitDate: 2025-04-10 13:32:49 +0000 > > iwlwififw: remove Intel iwlwifi firmware from src.git > > Following the example of rtw88 and rtw89 only ship iwlwifi firmware > from ports/packages. Users are asked to run fwget(8) to install the > firmware needed for their system or build it from ports > (see also UPDATING). > > This is the end of a long story adding wireless support to fwget(8), > migrating the firmware for multiple branches into ports, splitting them > up into flavors, and updating some install media and the installer to > provide firmware. > > The overall amount for new firmware amongst all drivers would have > added more than 100M of binary blobs to src.git for the first import, > ignoring future updates which (along with some duplication between > multiple drivers) was considered too much. > > While maintenance within the src tree certainly would have been > easier in the longer term this seems to be the better solution and > I would like to thank everyone who helped along the path to get there. > > The iwlwififw.4 man page is to stay (for now) and will likely point > at the appropriate firmware package flavor in the future as well > so people may find it easier to transition. In the long term this > information is likely not needed anymore. Maybe have the man page mention the port. It's not like we don't use ports for other firmware either, i.e. CPU firmware. Ports maintaining firmware are an important part of our ecosystem. > > Sponsored by: The FreeBSD Foundation > Requested by: core (Oct 2022) > Reviewed by: thj, jrm (earlier) > MFC after: 3 days > Differential Revision: https://reviews.freebsd.org/D49713 > --- > ObsoleteFiles.inc | 3 + > UPDATING | 6 + > share/doc/legal/Makefile | 1 - > share/doc/legal/intel_iwlwififw/Makefile | 5 - > sys/contrib/dev/iwlwififw/LICENCE.iwlwifi_firmware | 39 -- > sys/contrib/dev/iwlwififw/WHENCE | 483 ------------------- > -- > sys/contrib/dev/iwlwififw/iwlwifi-3160-17.ucode | Bin 918268 -> 0 bytes > sys/contrib/dev/iwlwififw/iwlwifi-3168-29.ucode | Bin 1036288 -> 0 bytes > sys/contrib/dev/iwlwififw/iwlwifi-7260-17.ucode | Bin 1049340 -> 0 bytes > sys/contrib/dev/iwlwififw/iwlwifi-7265-17.ucode | Bin 1180412 -> 0 bytes > sys/contrib/dev/iwlwififw/iwlwifi-7265D-29.ucode | Bin 1036772 -> 0 bytes > sys/contrib/dev/iwlwififw/iwlwifi-8000C-36.ucode | Bin 2428004 -> 0 bytes > sys/contrib/dev/iwlwififw/iwlwifi-8265-36.ucode | Bin 2436632 -> 0 bytes > .../iwlwififw/iwlwifi-9000-pu-b0-jf-b0-46.ucode | Bin 1518772 -> 0 bytes > .../iwlwififw/iwlwifi-9260-th-b0-jf-b0-46.ucode | Bin 1489652 -> 0 bytes > .../dev/iwlwififw/iwlwifi-Qu-b0-hr-b0-77.ucode | Bin 1404704 -> 0 bytes > .../dev/iwlwififw/iwlwifi-Qu-b0-jf-b0-77.ucode | Bin 1322436 -> 0 bytes > .../dev/iwlwififw/iwlwifi-Qu-c0-hr-b0-77.ucode | Bin 1404720 -> 0 bytes > .../dev/iwlwififw/iwlwifi-Qu-c0-jf-b0-77.ucode | Bin 1322452 -> 0 bytes > .../dev/iwlwififw/iwlwifi-QuZ-a0-hr-b0-77.ucode | Bin 1404840 -> 0 bytes > .../dev/iwlwififw/iwlwifi-QuZ-a0-jf-b0-77.ucode | Bin 1321956 -> 0 bytes > sys/contrib/dev/iwlwififw/iwlwifi-cc-a0-77.ucode | Bin 1366144 -> 0 bytes > .../dev/iwlwififw/iwlwifi-gl-c0-fm-c0-83.ucode | Bin 1799504 -> 0 bytes > sys/contrib/dev/iwlwififw/iwlwifi-gl-c0-fm-c0.pnvm | Bin 226668 -> 0 bytes > .../dev/iwlwififw/iwlwifi-so-a0-gf-a0-83.ucode | Bin 1739988 -> 0 bytes > sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0.pnvm | Bin 55580 -> 0 bytes > .../dev/iwlwififw/iwlwifi-so-a0-gf4-a0-83.ucode | Bin 1703968 -> 0 bytes > .../dev/iwlwififw/iwlwifi-so-a0-gf4-a0.pnvm | Bin 28064 -> 0 bytes > .../dev/iwlwififw/iwlwifi-so-a0-hr-b0-81.ucode | Bin 1539288 -> 0 bytes > .../dev/iwlwififw/iwlwifi-so-a0-jf-b0-77.ucode | Bin 1446036 -> 0 bytes > .../dev/iwlwififw/iwlwifi-ty-a0-gf-a0-83.ucode | Bin 1683076 -> 0 bytes > sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0.pnvm | Bin 55484 -> 0 bytes > sys/modules/Makefile | 4 - > sys/modules/iwlwififw/Makefile | 30 -- > sys/modules/iwlwififw/Makefile.inc | 18 - > sys/modules/iwlwififw/iwlwifi-3160-fw/Makefile | 4 - > sys/modules/iwlwififw/iwlwifi-3168-fw/Makefile | 4 - > sys/modules/iwlwififw/iwlwifi-7260-fw/Makefile | 4 - > sys/modules/iwlwififw/iwlwifi-7265-fw/Makefile | 4 - > sys/modules/iwlwififw/iwlwifi-7265D-fw/Makefile | 4 - > sys/modules/iwlwififw/iwlwifi-8000C-fw/Makefile | 4 - > sys/modules/iwlwififw/iwlwifi-8265-fw/Makefile | 4 - > .../iwlwififw/iwlwifi-9000-pu-b0-jf-b0-fw/Makefile | 4 - > .../iwlwififw/iwlwifi-9260-th-b0-jf-b0-fw/Makefile | 4 - > .../iwlwififw/iwlwifi-Qu-b0-hr-b0-fw/Makefile | 4 - > .../iwlwififw/iwlwifi-Qu-b0-jf-b0-fw/Makefile | 4 - > .../iwlwififw/iwlwifi-Qu-c0-hr-b0-fw/Makefile | 4 - > .../iwlwififw/iwlwifi-Qu-c0-jf-b0-fw/Makefile | 4 - > .../iwlwififw/iwlwifi-QuZ-a0-hr-b0-fw/Makefile | 4 - > .../iwlwififw/iwlwifi-QuZ-a0-jf-b0-fw/Makefile | 4 - > sys/modules/iwlwififw/iwlwifi-cc-a0-fw/Makefile | 4 - > .../iwlwififw/iwlwifi-gl-c0-fm-c0-fw/Makefile | 4 - > .../iwlwififw/iwlwifi-gl-c0-fm-c0-pnvm/Makefile | 6 - > .../iwlwififw/iwlwifi-so-a0-gf-a0-fw/Makefile | 4 - > .../iwlwififw/iwlwifi-so-a0-gf-a0-pnvm/Makefile | 6 - > .../iwlwififw/iwlwifi-so-a0-gf4-a0-fw/Makefile | 4 - > .../iwlwififw/iwlwifi-so-a0-gf4-a0-pnvm/Makefile | 6 - > .../iwlwififw/iwlwifi-so-a0-hr-b0-fw/Makefile | 4 - > .../iwlwififw/iwlwifi-so-a0-jf-b0-fw/Makefile | 4 - > .../iwlwififw/iwlwifi-ty-a0-gf-a0-fw/Makefile | 4 - > .../iwlwififw/iwlwifi-ty-a0-gf-a0-pnvm/Makefile | 6 - > 61 files changed, 9 insertions(+), 692 deletions(-) > > [...] -- Cheers, Cy Schubert FreeBSD UNIX: Web: https://FreeBSD.org NTP: Web: https://nwtime.org e^(i*pi)+1=0 From nobody Thu Apr 10 14:42:54 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYMxG0sFmz5t2G2; Thu, 10 Apr 2025 14:42:58 +0000 (UTC) (envelope-from bz@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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYMxG076cz3CYW; Thu, 10 Apr 2025 14:42:58 +0000 (UTC) (envelope-from bz@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744296178; 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=DnQxryVGlMd6pl5AGKiLnOvetHrcw+miCab++NbBjV0=; b=ewFBVJrc31tPAtiE1Z/7lHXq+HljHcCct+o3HTp+paHCJ7r7/1b407eD6/Z/siRQLD9Mam ykHbojj+e08rcr2YG/WB8rAsKiD0dZ6u9LuEPYpcnCIYsVO3Srd3nmD4oVc43VM9hyYsgP 9jqrtZVkCV1oC/jlAkMFs3oWLLFuTd6YP3X3MXUAyQCiqyC1hF54XShw97t8vYRdRowj/C WdPDQOafB8L1zoxmV0Aq8jm3jz4egd7Qq0Bdb/EVa2pkc9lpzmA31XU347EpMUvrWGSER0 ko/CUbtQhE5GGzFqgIOrEC/Ul7OTxstAwxv/Pg1aq0XvHo91mT5kb0XbjnMF6Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744296178; a=rsa-sha256; cv=none; b=BnWagaUIvbEvOe2b+LcaTaNMMt1fcR+km0RXUozxruPpCh7FJhEYt2NXqG+sb3p2LMoEzE rBcRARFgUE2AavmRr+68KtgIOgSVMyJn5N421UkIGtUJhi0hJ5rFI9fQEYisFYfaipF4ar nqFVkbw9NNw6UlsnP0laskqNhncbH7mUlj+kOtqKepJSh7leCP45nopzShYBY+G33GnfTk HJnWADwdbD1tM/aNGYnet+pzFQGSCltITgWSg62O6O0xIYVVMPRy895VtRB0a/fxnPho9m aJwrWCUv0FCyK3hdneGRUvFcn5Lcchd8U3fOa+DRNHVcV4Cwx9kY4N0gxrFlBA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744296178; 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=DnQxryVGlMd6pl5AGKiLnOvetHrcw+miCab++NbBjV0=; b=IJWKO4mnQKbf2Bs7d+azThBSsXX59ihrENsQ/ZERSuTqUKgW7+fuVEACkmBOd4xaGNv9HN G86CjzJB8K3EBBzmh8YFETHUZsbhNNVtZ4Pf3ewfJeVxU7W2s3kQo+AKjs5IYXt0a7sWsx lFMBZpiBQ+ratLyWT61D4/lfojvMWfLt8fJByfSvYnorZmMdz8F99myH3gYKX+rB2xu1nV WJrDzzIlbvb3rMAka0TQVbO5VHoO4igeD0XRoe4kSj/s4+UFWUVbeKprn3LRBvE1pwQypj n6ovnnBacCJUQb57S+wwXYa5wMI1gTMEbYto9qV2C0zoS5NtI5TOUfftr6QSMg== Received: from mx-01.divo.sbone.de (mx-01.divo.sbone.de [IPv6:2003:a:140a:2200:6:594:fffe:19]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature ECDSA (prime256v1) client-digest SHA256) (Client CN "mx-01.divo.sbone.de", Issuer "E5" (verified OK)) (Authenticated sender: bz/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4ZYMxF658mz11F9; Thu, 10 Apr 2025 14:42:57 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from mail.sbone.de (mail.sbone.de [IPv6:fde9:577b:c1a9:4902:0:7404:2:1025]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by mx-01.divo.sbone.de (Postfix) with ESMTPS id 37CD3A64806; Thu, 10 Apr 2025 14:42:56 +0000 (UTC) Received: from content-filter.t4-02.sbone.de (content-filter.t4-02.sbone.de [IPv6:fde9:577b:c1a9:4902:0:7404:2:2742]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPS id 158D62D029E1; Thu, 10 Apr 2025 14:42:56 +0000 (UTC) X-Virus-Scanned: amavisd-new at sbone.de Received: from mail.sbone.de ([IPv6:fde9:577b:c1a9:4902:0:7404:2:1025]) by content-filter.t4-02.sbone.de (content-filter.t4-02.sbone.de [IPv6:fde9:577b:c1a9:4902:0:7404:2:2742]) (amavisd-new, port 10024) with ESMTP id 9piJSib_1myu; Thu, 10 Apr 2025 14:42:54 +0000 (UTC) Received: from strong-rtwn0.sbone.de (strong-rtwn0.sbone.de [IPv6:fde9:577b:c1a9:4902:3e64:cfff:fe55:bc80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPSA id B80842D029D8; Thu, 10 Apr 2025 14:42:54 +0000 (UTC) Date: Thu, 10 Apr 2025 14:42:54 +0000 (UTC) From: "Bjoern A. Zeeb" To: Cy Schubert cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 558d63889623 - main - iwlwififw: remove Intel iwlwifi firmware from src.git In-Reply-To: <20250410141606.3BC9031C@slippy.cwsent.com> Message-ID: References: <202504101335.53ADZR4T007246@gitrepo.freebsd.org> <20250410141606.3BC9031C@slippy.cwsent.com> X-OpenPGP-Key-Id: 0x14003F198FEFA3E77207EE8D2B58B8F83CCF1842 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed On Thu, 10 Apr 2025, Cy Schubert wrote: > In message <202504101335.53ADZR4T007246@gitrepo.freebsd.org>, "Bjoern A. > Zeeb" > writes: >> The branch main has been updated by bz: >> >> URL: https://cgit.FreeBSD.org/src/commit/?id=558d638896239f9cd25b9d825ecfce62 >> ec54681e >> >> commit 558d638896239f9cd25b9d825ecfce62ec54681e >> Author: Bjoern A. Zeeb >> AuthorDate: 2025-04-08 16:57:14 +0000 >> Commit: Bjoern A. Zeeb >> CommitDate: 2025-04-10 13:32:49 +0000 >> >> iwlwififw: remove Intel iwlwifi firmware from src.git >> >> Following the example of rtw88 and rtw89 only ship iwlwifi firmware >> from ports/packages. Users are asked to run fwget(8) to install the >> firmware needed for their system or build it from ports >> (see also UPDATING). >> >> This is the end of a long story adding wireless support to fwget(8), >> migrating the firmware for multiple branches into ports, splitting them >> up into flavors, and updating some install media and the installer to >> provide firmware. >> >> The overall amount for new firmware amongst all drivers would have >> added more than 100M of binary blobs to src.git for the first import, >> ignoring future updates which (along with some duplication between >> multiple drivers) was considered too much. >> >> While maintenance within the src tree certainly would have been >> easier in the longer term this seems to be the better solution and >> I would like to thank everyone who helped along the path to get there. >> >> The iwlwififw.4 man page is to stay (for now) and will likely point >> at the appropriate firmware package flavor in the future as well >> so people may find it easier to transition. In the long term this >> information is likely not needed anymore. > > Maybe have the man page mention the port. Yes, that's the plan for iwlwififw.4 (plust flavour depending on chipset/PCI IDs where possible given we do have the information and create it for fwget(8)). The longer term it is a lot easier to tell the user who wants to build themselves to run fwget -n to get the name of the package/flavour automatically and not maintain the information twice or thrice anymore. > It's not like we don't use ports for other firmware either, i.e. CPU > firmware. Ports maintaining firmware are an important part of our ecosystem. iwlwifi(8) just should mention fwget(8) and it does have the reference in SEE ALSO but unlike rtw88.4 and rtw89.4 it misses the sentence in the description. And I didn't want to mangle the fix, and the re-generation of the lists for the iwlwififw.4 man pages into this commit. The changes are queued here too but need to push some other fixes first. /bz -- Bjoern A. Zeeb r15:7 From nobody Thu Apr 10 14:45:39 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYN0R2KyMz5t29T; Thu, 10 Apr 2025 14:45:43 +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 4ZYN0Q4Pt4z3Cwk; Thu, 10 Apr 2025 14:45:42 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Authentication-Results: mx1.freebsd.org; none Received: from shw-obgw-4002a.ext.cloudfilter.net ([10.228.9.250]) by cmsmtp with ESMTPS id 2oY3ulgcE5Mqy2t9yuKbO9; Thu, 10 Apr 2025 14:45:42 +0000 Received: from spqr.komquats.com ([70.66.136.217]) by cmsmtp with ESMTPSA id 2t9wuv7JSl5eG2t9xujEy4; Thu, 10 Apr 2025 14:45:42 +0000 X-Auth-User: cschuber X-Authority-Analysis: v=2.4 cv=EO6l0EZC c=1 sm=1 tr=0 ts=67f7d996 a=h7br+8Ma+Xn9xscxy5znUg==:117 a=h7br+8Ma+Xn9xscxy5znUg==:17 a=kj9zAlcOel0A:10 a=XR8D0OoHHMoA:10 a=6I5d2MoRAAAA:8 a=EkcXrb_YAAAA:8 a=YxBL1-UpAAAA:8 a=GNiSA2DhHtZ3sh_qUuMA:9 a=CjuIK1q_8ugA:10 a=LK5xJRSDVpKd5WXXoEvA:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTP id 175C17A6; Thu, 10 Apr 2025 07:45:40 -0700 (PDT) Received: by slippy.cwsent.com (Postfix, from userid 1000) id 99C782C5; Thu, 10 Apr 2025 07:45:39 -0700 (PDT) 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: "Bjoern A. Zeeb" cc: Cy Schubert , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: 558d63889623 - main - iwlwififw: remove Intel iwlwifi firmware from src.git In-reply-to: References: <202504101335.53ADZR4T007246@gitrepo.freebsd.org> <20250410141606.3BC9031C@slippy.cwsent.com> Comments: In-reply-to "Bjoern A. Zeeb" message dated "Thu, 10 Apr 2025 14:42:54 -0000." List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Thu, 10 Apr 2025 07:45:39 -0700 Message-Id: <20250410144539.99C782C5@slippy.cwsent.com> X-CMAE-Envelope: MS4xfPWvi2gKxbpoLV9XvLC0hbKBqwYLCG/8E6k8VTi/B0TzSpw68PxSn/T9KtQlyTP6Q/fvK+oKGVw2Jss52An8OJAK+DdvdyFKs4uYoTdwxMJMeiXT68/r siDwFMSBClhUbhRN8oVA/Vy/YlHCSPGJcLN5WWcVpxhKn3mfTU5uR5dQcsO7FtsStsRpvyKCWqRytmU13wm81vlsgiyBz4n6ihpD87JErE1ZosdXSWqNV6ky lXsy1KTkFMs11xViXczQf0uqeby442vabjsry/4Ducxc/MUPoWJDlpu/rZm8HiH6Srz58YC9t+cBJmk+dEfAkerjfeqLA1Yx4l9y30B8Ldw= X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:16509, ipnet:3.96.0.0/15, country:US] X-Rspamd-Queue-Id: 4ZYN0Q4Pt4z3Cwk X-Spamd-Bar: ---- In message , "Bjoern A. Zeeb" writes: > On Thu, 10 Apr 2025, Cy Schubert wrote: > > > In message <202504101335.53ADZR4T007246@gitrepo.freebsd.org>, "Bjoern A. > > Zeeb" > > writes: > >> The branch main has been updated by bz: > >> > >> URL: https://cgit.FreeBSD.org/src/commit/?id=558d638896239f9cd25b9d825ecfc > e62 > >> ec54681e > >> > >> commit 558d638896239f9cd25b9d825ecfce62ec54681e > >> Author: Bjoern A. Zeeb > >> AuthorDate: 2025-04-08 16:57:14 +0000 > >> Commit: Bjoern A. Zeeb > >> CommitDate: 2025-04-10 13:32:49 +0000 > >> > >> iwlwififw: remove Intel iwlwifi firmware from src.git > >> > >> Following the example of rtw88 and rtw89 only ship iwlwifi firmware > >> from ports/packages. Users are asked to run fwget(8) to install the > >> firmware needed for their system or build it from ports > >> (see also UPDATING). > >> > >> This is the end of a long story adding wireless support to fwget(8), > >> migrating the firmware for multiple branches into ports, splitting the > m > >> up into flavors, and updating some install media and the installer to > >> provide firmware. > >> > >> The overall amount for new firmware amongst all drivers would have > >> added more than 100M of binary blobs to src.git for the first import, > >> ignoring future updates which (along with some duplication between > >> multiple drivers) was considered too much. > >> > >> While maintenance within the src tree certainly would have been > >> easier in the longer term this seems to be the better solution and > >> I would like to thank everyone who helped along the path to get there. > >> > >> The iwlwififw.4 man page is to stay (for now) and will likely point > >> at the appropriate firmware package flavor in the future as well > >> so people may find it easier to transition. In the long term this > >> information is likely not needed anymore. > > > > Maybe have the man page mention the port. > > Yes, that's the plan for iwlwififw.4 (plust flavour depending on > chipset/PCI IDs where possible given we do have the information and > create it for fwget(8)). > > The longer term it is a lot easier to tell the user who wants to build > themselves to run fwget -n to get the name of the package/flavour > automatically and not maintain the information twice or thrice anymore. > > > > It's not like we don't use ports for other firmware either, i.e. CPU > > firmware. Ports maintaining firmware are an important part of our ecosystem > . > > iwlwifi(8) just should mention fwget(8) and it does have the reference in > SEE ALSO but unlike rtw88.4 and rtw89.4 it misses the sentence in the > description. > > And I didn't want to mangle the fix, and the re-generation of the lists > for the iwlwififw.4 man pages into this commit. > > The changes are queued here too but need to push some other fixes first. Thank you for all your hard work. > > /bz > > -- > Bjoern A. Zeeb r15:7 -- Cheers, Cy Schubert FreeBSD UNIX: Web: https://FreeBSD.org NTP: Web: https://nwtime.org e^(i*pi)+1=0 From nobody Thu Apr 10 15:02:10 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYNMQ34Nbz5t3Vl; Thu, 10 Apr 2025 15:02: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYNMQ1jk2z3MHC; Thu, 10 Apr 2025 15:02:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744297330; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WFpxE161y4HDGG6qXrSFFzVPUrUiIJM1jGsApl7t4+o=; b=mDfe+AdHczvhhU5wb+Jm79mMnTnSHEYlAlxKE4RHHho3Bzqu5cx47Bh0WSfB37I6HFnOxM hZsCTLgcIW3VEomA/9ayF6UeSFJqzRSHXiz8J+CbdTTZy7VL1oY4nVb4C+Bm9Xot/7+igc 3yDQWKGLVmo3Kvslb9ut4xrlhiuM2yfCOfyV2NUtjGAoD804w0/iYF7NhDJypr+pJ07HU8 Utl8z+hhEAFA1Zszgg1TNm2+toMfXrEQOqSj0DBG3sc/yeVF4v1zDipTDC2UUmc2d+WDZD z09C29ng/F4ijZ4xejQfxI7DR7JiRXBSeyyB+h1iX1LKdb5lBfeYVyUgn3wgdA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744297330; a=rsa-sha256; cv=none; b=N8Ik6tOnbaeJ89xuKO4cAafFe70SoIAVNwo8merekYvalAy9e+LRczJptSYO67z+6+JKsk YO7RSA/Rc9aCmt9jVESuaYNG5SX8HTF1k5EgJ8ZNxT6N26nyamAVXYwtalXGI+YV6dxj4R T3ZXQE2ii4Y5JcikMpFQH/82o3R0qJlQbSGW23ji3MaljpXaetvSNQdCUxaera13+ZXKxi p5d0RdclNrkK6j67bGashMXA+JnmsjVeEH/3e3qlxtCeVYrhSpDhqO0Qxoz16PIVopdMAb AULQTBtRQorK1CFJEvR2mY4DlP/Mr8I8wSlPoegRUyhOv+k2Y51h9WEmRSKMqA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744297330; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WFpxE161y4HDGG6qXrSFFzVPUrUiIJM1jGsApl7t4+o=; b=DUYQ1H0R1eFYDwQf99ITy4hJ76lr1DBm88QYcPWKADfCn86K6DMhteOBsSpEGxnihHdy23 L3fkFNcrOAvAyUDRKdecm1cIEhD6ncYbkTsSWncW2dqXV3HcRBABC+X+3uYwBMu17jcVcD JHxlD8TRCL6S4X7Nt1Pj4hHfGZMQCHgWyW5U60Z/SyWfEMOSq2UWdxu6aF9Cv5nMKgUn5w HLNrgyRgcE5H+jMh4yZge2LW58Bb8//JI1wpebymrDqjwTTpJN8U0sjj0TwuypyzapKHye TXh3LX7z9l2PMspVjEuAkFuhAKSkckqU1Wl9ulmPmzBhUCfbzmzuv0CYmgg2Rg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYNMQ1F89z1754; Thu, 10 Apr 2025 15:02:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53AF2AdY074609; Thu, 10 Apr 2025 15:02:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53AF2A2U074606; Thu, 10 Apr 2025 15:02:10 GMT (envelope-from git) Date: Thu, 10 Apr 2025 15:02:10 GMT Message-Id: <202504101502.53AF2A2U074606@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 918783b75aac - main - iwlwififw: remove Intel iwlwifi firmware from src.git List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 918783b75aacb051f2f83dd0198ef68bc9fa5326 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=918783b75aacb051f2f83dd0198ef68bc9fa5326 commit 918783b75aacb051f2f83dd0198ef68bc9fa5326 Author: Bjoern A. Zeeb AuthorDate: 2025-04-10 14:59:40 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-10 14:59:40 +0000 iwlwififw: remove Intel iwlwifi firmware from src.git Change order of sentence in UPDATING. Sponsored by: The FreeBSD Foundation Suggested by: emaste, (jrm) MFC after: 3 days Fixes: 558d63889623 --- UPDATING | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/UPDATING b/UPDATING index 8f709a0f1de9..c97ba37d6447 100644 --- a/UPDATING +++ b/UPDATING @@ -28,10 +28,10 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 15.x IS SLOW: at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) 20250409: + Intel iwlwifi firmware has been removed from the src repository. Before updating their system, users of iwlwifi(4) or iwx(4) must install the appropriate firmware for their chipset using fwget(8) or - building it from ports as Intel iwlwifi firmware has been removed - from the src repository. + building it from ports. 20250314: We now use LLVM's binary utilities (nm, objcopy, etc.) by default. From nobody Thu Apr 10 15:49:09 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYPPf18Bfz5t5j2; Thu, 10 Apr 2025 15:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYPPf0GR6z3bDv; Thu, 10 Apr 2025 15:49:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744300150; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oSj4sQEOReh1iljl4gW5A8kE/O1sEkwmbL5ZJhpudAU=; b=pcra9PPr+dfxn1MQJMU1cWU2jGOCm8ylRzYedbLgEu3udmMuVSo1/FgFpc20AHmX3fYgrF GNljO15IZhIBD2F76rhm+UWlCRjvGeA8f69Pc75Lg/6HH0Y5XW7FGOclbirLc3YgPiP9xC VIj5XoxZ/DQ5JwbJw5cur3E0AjD3oKFdWHeRyDvZaCLllTY9HJHDP22fHOZQGWvcHPEoW1 DgWSVAD//SbgDGTNG9Jd2DGtiHi/6Gkav+sFNBMjkZMbVE0ipP2S2fDPuyL+RXRVz5X+0Y wXTsdMC9mAbLK8Bue3LuV++RDjC/GHgmpO0Oijcky1b9JC7IXaEhBeTBbfku9A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744300150; a=rsa-sha256; cv=none; b=souKNzupOjmE9qnnuYz827oHsCH7zAVFfqsPMvRC4BxXXRiRPumIB5JH38wSiX+36W8WqE xcBbMS4LS8lr5lCED3aR/oiMwRJlNBxzpJIbvvyAZ1xKXeHbrjSR/YTQzBc2/7kl810Hno x4APoPLt4Vuv/SpIyISzwd4J64fGTqvF31qlSLpAkOylkC/uITDIVZwQv2jqrAzioyv3QO cqr7jw9oJAHN8DD/9ThYpfOAJI8wBF+65U/gymE73lZj0iAgEuhJwXb+6DVhnzxk61dCJ6 nhj+7R/nQ280t2bhYMGL+RMsYG/lP/DgzWkCs9POL5ivIGGVz4r6q0PG7uv6fw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744300150; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oSj4sQEOReh1iljl4gW5A8kE/O1sEkwmbL5ZJhpudAU=; b=OUORi7f/7hrsnU78FoL39Vli94Ea5Ui/RSyhbOtEBUeX3bmvH0ZT5jKGO7nvKFVpIZlx1Z QmXjijJCGRof0vZKY0HqzIH3aa3t5ay3b09uyUYK/S+ptEMZfxvxw0bKKh7BbNxfrXMb4q sHeZ4D1NglvYiGmbIlCQuZ80Hmj7I5HcKLCstDyrZT8dox10M917BWVnZz3sv6++F+Y+L0 8sGuhk16r2LLGi7Hi9ZgbfFRsjA7r+AnIwJXRrxA/QJJPMoPAyr2vLg1jgh7GRT7LQvjJB AXd9uORWYSNsLBk1soB4rvrRVqQkHfsDW/DyvCovFFpSssuk1y0r/VN0O8gmXA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYPPd6kS9z17d6; Thu, 10 Apr 2025 15:49:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53AFn9sC051690; Thu, 10 Apr 2025 15:49:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53AFn9kK051687; Thu, 10 Apr 2025 15:49:09 GMT (envelope-from git) Date: Thu, 10 Apr 2025 15:49:09 GMT Message-Id: <202504101549.53AFn9kK051687@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 726d4e14869e - main - release: Let basic VM images be built with NO_ROOT List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 726d4e14869ea4728b6ef2a3e4d6c43481416248 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=726d4e14869ea4728b6ef2a3e4d6c43481416248 commit 726d4e14869ea4728b6ef2a3e4d6c43481416248 Author: Mark Johnston AuthorDate: 2025-04-10 15:47:29 +0000 Commit: Mark Johnston CommitDate: 2025-04-10 15:47:29 +0000 release: Let basic VM images be built with NO_ROOT Reviewed by: brooks, emaste Sponsored by: Klara, Inc. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49738 --- release/Makefile.vm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/release/Makefile.vm b/release/Makefile.vm index 3b0ae4227453..b5ec044fa94a 100644 --- a/release/Makefile.vm +++ b/release/Makefile.vm @@ -1,6 +1,4 @@ # -# -# # Makefile for building virtual machine and cloud provider disk images. # @@ -107,11 +105,12 @@ QEMUTGT=emulator-portinstall .endif QEMUTGT?= -.if defined(WITH_CLOUDWARE) && !empty(WITH_CLOUDWARE) && !empty(CLOUDWARE) .if (defined(WITHOUT_QEMU) && !defined(NO_ROOT)) || \ (!defined(WITHOUT_QEMU) && defined(NO_ROOT)) .error WITHOUT_QEMU requires NO_ROOT (and vice versa) .endif + +.if defined(WITH_CLOUDWARE) && !empty(WITH_CLOUDWARE) && !empty(CLOUDWARE) . for _CW in ${CLOUDWARE} . if exists(${.CURDIR}/tools/${_CW:tl}.conf) && !defined(${_CW:tu}CONF) ${_CW:tu}CONF?= ${.CURDIR}/tools/${_CW:tl}.conf @@ -181,6 +180,7 @@ vm-image: ${QEMUTGT} env TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} SWAPSIZE=${SWAPSIZE} \ QEMUSTATIC=${QEMUSTATIC} \ ${WITHOUT_QEMU:DWITHOUT_QEMU=true} \ + ${NO_ROOT:DNO_ROOT=true} \ ${.CURDIR}/scripts/mk-vmimage.sh \ -C ${.CURDIR}/tools/vmimage.subr \ -d ${.OBJDIR}/${.TARGET}-${FORMAT}-${FS} -F ${FS} \ From nobody Thu Apr 10 15:59:13 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYPdG2FC1z5t6N4; Thu, 10 Apr 2025 15:59: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYPdG0tZ5z3d0X; Thu, 10 Apr 2025 15:59:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744300754; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RBXt0SEfuqFvahWjqP9rRvo/Vf4uwZc0dn4VXYlDccY=; b=dBw9hBnuXLLNoZc6w8jbPSEoDGrYH9RxHQ4lrugvM882wZLlnTbN3YbvOPIJUCMOFQDI5H 98wJK9NZJBikTjz6EiLpZj48vioTZIWsPiJSSNLBW6tGpM57o1JZS41ilIHMfiWtfqLlpn apVQI50spl8/OGvhVjnanOVnyxkrSpr0iRxT/uyxaqiU7V1iUE7GCaCHwh1I5dxBbyRUjP r3txlfZEbjMJ44hd/rehjE+GFkOQl02j1IXnec98+KpBA96PmjlEUP5vWPsCuSFZjg+Pb4 UYfBc040rIJmOiMGQZVvxcHXAnrhpjs6BrPkr2EMXxrRsDE8zjNEXs2aPxGamQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744300754; a=rsa-sha256; cv=none; b=lBo8eFx19SWvwiBpkuFIf0mugCib2W82Xdbl7EcOtFCOc/SqbgexiLvXYveLBUppCFEUy9 xc6FqTwDAIZjSaqF+bacrWJ94GrLbHU8y1U466cPFuUDjOgUXAARGgigsNvdP6mrvCBeeY xvzGpn0xlzdz/Uob+quUBnlPcnEn/dfmSW10xd3C3SUFPynrLKKnr2uu54xV9d/zGixlO2 zlCHHU9ZgAXtg88oHaIX196mXuCNU4je/iqd8s11XQOmjJSfyEG/2Wzh8U8mqG0oSMovjc vCv3gI+EbQ9+zSUaotX38dBTxlm0vFOWqaBeq84SRnRkNTw+eiQpcRAXx32xig== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744300754; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RBXt0SEfuqFvahWjqP9rRvo/Vf4uwZc0dn4VXYlDccY=; b=vmJsW70cXtgPVEv53JXtG/v6y/jW+weqofB+gr/1DW2JlAxaqOdAUvE5kVQ4Zx+zt84+A/ 1mZkE9t40v6+/HFh/U/Nw3S1tZteRwOS3IMpqM0B5BU5e6mei2DTCv+7WpRthberyf0XrD FjMw+F9ieEwzNrLa70RpQ0TygwZXHQsCWkLnPX/aDuYUfmDDStsz7JlEaPbhUK7MtN7ZDy DiRYrM2sMjQpa6oZx2zSg6XCg/nDY8r5DFeGyuA1TlEDjAqRJKU1CdzZbDnKtN5fQYGxln T6cVLZ0UWtDtx2f39Nqqe1WE0huPsqKIuxToqfRM4NAbU+BdQbOzyCnG5kFlgw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYPdG0BCtz18Tt; Thu, 10 Apr 2025 15:59:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53AFxDuX070296; Thu, 10 Apr 2025 15:59:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53AFxDF9070293; Thu, 10 Apr 2025 15:59:13 GMT (envelope-from git) Date: Thu, 10 Apr 2025 15:59:13 GMT Message-Id: <202504101559.53AFxDF9070293@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Colin Percival Subject: git: 81ca663642ef - main - release: Pass PKG_INSTALL_EPOCH to vmimage.subr List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 81ca663642ef1ed5111a88d2e9102f6788fab407 Auto-Submitted: auto-generated The branch main has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=81ca663642ef1ed5111a88d2e9102f6788fab407 commit 81ca663642ef1ed5111a88d2e9102f6788fab407 Author: Colin Percival AuthorDate: 2025-04-10 06:05:55 +0000 Commit: Colin Percival CommitDate: 2025-04-10 15:58:11 +0000 release: Pass PKG_INSTALL_EPOCH to vmimage.subr This value, if not already set, comes from the timestamp of the most recent git commit (which is now also available in src/release code as GITEPOCH) or 0 if git is not installed. This should allow /var/db/pkg/local.sqlite to be reproducible in VM images which have packages installed (e.g. cloudware). Reviewed by: emaste, bapt MFC after: 5 days Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D49760 --- release/Makefile.inc1 | 9 ++++++--- release/Makefile.vm | 1 + 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/release/Makefile.inc1 b/release/Makefile.inc1 index 552b6cb60f3c..569b72df5106 100644 --- a/release/Makefile.inc1 +++ b/release/Makefile.inc1 @@ -1,6 +1,3 @@ -# -# - # Figure out where the git binary is. .for _P in /usr/bin /usr/local/bin . if !defined(GIT_CMD) || empty(GIT_CMD) @@ -24,13 +21,19 @@ GITREV!= ${GIT_CMD} -C ${.CURDIR} rev-parse --verify --short HEAD 2>/dev/null || GITCOUNT!= ${GIT_CMD} -C ${.CURDIR} rev-list --first-parent --count HEAD 2>/dev/null || true . export GITCOUNT . endif +. if !defined(GITEPOCH) || empty(GITEPOCH) +GITEPOCH!= ${GIT_CMD} -C ${.CURDIR} show -s --format=%ct HEAD 2>/dev/null || true +. export GITEPOCH +. endif .else GITBRANCH= nullbranch GITREV= nullhash GITCOUNT= nullcount +GITEPOCH= 0 . export GITBRANCH . export GITREV . export GITCOUNT +. export GITEPOCH .endif # Set the build date, primarily for snapshot builds. diff --git a/release/Makefile.vm b/release/Makefile.vm index b5ec044fa94a..0b5f5e714cc5 100644 --- a/release/Makefile.vm +++ b/release/Makefile.vm @@ -181,6 +181,7 @@ vm-image: ${QEMUTGT} QEMUSTATIC=${QEMUSTATIC} \ ${WITHOUT_QEMU:DWITHOUT_QEMU=true} \ ${NO_ROOT:DNO_ROOT=true} \ + PKG_INSTALL_EPOCH=${PKG_INSTALL_EPOCH:U${GITEPOCH}} \ ${.CURDIR}/scripts/mk-vmimage.sh \ -C ${.CURDIR}/tools/vmimage.subr \ -d ${.OBJDIR}/${.TARGET}-${FORMAT}-${FS} -F ${FS} \ From nobody Thu Apr 10 18:33:26 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYT3Q6LHqz5tK6b for ; Thu, 10 Apr 2025 18:33:38 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-pj1-x102a.google.com (mail-pj1-x102a.google.com [IPv6:2607:f8b0:4864:20::102a]) (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 4ZYT3Q3bchz3Z3G for ; Thu, 10 Apr 2025 18:33:38 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-pj1-x102a.google.com with SMTP id 98e67ed59e1d1-3011737dda0so1000363a91.1 for ; Thu, 10 Apr 2025 11:33:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1744310017; x=1744914817; darn=freebsd.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=aRdAjtJaZcZXRoh0XprKbnntz3ycN8zeLv8PIOOedbo=; b=VekeWR9XYIJ87YPh5LM3jirfKnZb5GOQp9QLyKi3eLP6pu5qpi2H2I+GrS6WKjDu91 8BKAKzF6VQqgm6FjU4xQnIFEszjDN4JgDH75wljOG6BzEWgNQo7oxwH4d8pwfhPB6SeZ htRx/HEdjxHi/w4hmv3duk+mlIxB19mWtmovr9KtDZMaENlYlGfeA7sgpYXBjgBP0deq 1NLxQEt1EzJ4sCrkq/HphbM1AdMSbbrL9JNGrl2x3QXNHaPEE2vpaiF3irj/hroqGeTF sEy5mFg31uOYM5d4AXixSvf++QQ8gmSgSK3HPQCp7UO/wiBNFyUsKDsuyF4Z5cfNjqHy ygFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744310017; x=1744914817; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=aRdAjtJaZcZXRoh0XprKbnntz3ycN8zeLv8PIOOedbo=; b=MxjynFLWEJHgflDc2D/sF2zheTdgz9elYmi2I1oCR95wiKB73L6ihfuiVl+uz6h6UL dEVNBYl4kDYkdmTCE4yFqnLrcar3KdThPc7OBqKnJFMtdektEGKvnx6wXS1a+ExdltbD /Cp4SUHIHq/JmNrodbeJy+bS4oA7fHXGRYnBz1uEspxHpWe8YmrCPJRfA+JcS33h66sa h7AAbycQ5FkvGv5QhUOn37vL4RtVhDutXoXOsCx0YIZg/vUWQKFfphqR8fKxJMcw0wgw dJJSfByM2e4uQwdbA11ux8aZjSJ8tVliRRmLaDom4zDQLzwkYY7v4NRHhaHrvrqxDYM2 ATrA== X-Forwarded-Encrypted: i=1; AJvYcCWYrhK4q1FUFRpw9SfS3sZRE3WHCn4FyeoScGpUG1AZ0d38y70RU15WTo8Imnh9Kpnie12yxQZdvBxLJwvXqRE5UcWH3A==@freebsd.org X-Gm-Message-State: AOJu0Yx2kEC9gQCq0Ilua9IELJhd0wooFMEwL7nyFvvzFsvHHYilPiSc hgCIDGumzp+o2GDkailPCkjXPAA0/AXyEYH7to0MBLpNc4eefj4sDGxYndQmsdifEkbYBevF3Zt 54xpewjqkHTUyPDLNv75UMijqY+tJDAQaPla6dg== X-Gm-Gg: ASbGnctzQ8nbrtkYF0k8h26qQWu3pid3yjxHEyIAi/wuYf4AYJAP7SDTS2OFrwbCrfM sbBup/GeVnLvSmp7u1kehoX/evjNREXn6v2n9QWoKSQagkYU3WiXWAGe2oeIMWCZHhkFImswwz1 +WKQjQRe/3JT0BsEj3Mcl2tw== X-Google-Smtp-Source: AGHT+IFg97HyYojbJ6Qh1xJUZ6MwtkWYV1/QwK/pQPzcfRsd3T6hPwMdJVc43py4wsrbImygh6dh1PrmsARdC/8JAII= X-Received: by 2002:a17:90b:5212:b0:2f5:747:cbd with SMTP id 98e67ed59e1d1-30823673532mr21416a91.18.1744310017164; Thu, 10 Apr 2025 11:33:37 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <202504101341.53ADfEP0023340@gitrepo.freebsd.org> In-Reply-To: <202504101341.53ADfEP0023340@gitrepo.freebsd.org> From: Warner Losh Date: Thu, 10 Apr 2025 12:33:26 -0600 X-Gm-Features: ATxdqUGTv_-VXzsR0GVISvHw01Vcmh8rYaT5VkQ-Y8xtQs_fQuQ7a67HoFvCF4M Message-ID: Subject: Re: git: adad92981419 - main - Fix build under current. To: Michael Reifenberger Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated 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-Queue-Id: 4ZYT3Q3bchz3Z3G X-Spamd-Bar: ---- Please revert this. (1) It includes things that are bogus (clearly not intended) (2) it wasn't reviewed. we're trying to review things in phab for nanobsd (3) The only possible valid change in here is the size bump, but even it doesn't make sense. (4) the t->true changes are gratuitous. Warner On Thu, Apr 10, 2025 at 7:41=E2=80=AFAM Michael Reifenberger wrote: > > The branch main has been updated by mr: > > URL: https://cgit.FreeBSD.org/src/commit/?id=3Dadad9298141964ca38e21a05c0= b8951efbcb70b2 > > commit adad9298141964ca38e21a05c0b8951efbcb70b2 > Author: Michael Reifenberger > AuthorDate: 2025-04-10 13:39:12 +0000 > Commit: Michael Reifenberger > CommitDate: 2025-04-10 13:41:02 +0000 > > Fix build under current. > --- > tools/tools/nanobsd/rescue/common | 34 ++++++++++++++++++---------------= - > 1 file changed, 18 insertions(+), 16 deletions(-) > > diff --git a/tools/tools/nanobsd/rescue/common b/tools/tools/nanobsd/resc= ue/common > index 5fcf5c19b882..15bf10f5e67d 100644 > --- a/tools/tools/nanobsd/rescue/common > +++ b/tools/tools/nanobsd/rescue/common > @@ -1,15 +1,15 @@ > # > # > -NANO_SRC=3D$(pwd) > -NANO_SRC=3D${NANO_SRC%/tools/tools/nanobsd/rescue} > -NANO_OBJ=3D${NANO_SRC}/../nanobsd-builds/${NANO_NAME}/obj > +#NANO_SRC=3D$(pwd) > +#NANO_SRC=3D${NANO_SRC%/tools/tools/nanobsd/rescue} > +#NANO_OBJ=3D${NANO_SRC}/../nanobsd-builds/${NANO_NAME}/obj > NANO_TOOLS=3D`pwd` > NANO_PACKAGE_DIR=3D`pwd`/Pkg > NANO_RAM_TMPVARSIZE=3D40960 > NANO_PMAKE=3D"make -j 8" > NANO_LABEL=3D"rescue" > NANO_RAM_TMPVARSIZE=3D40960 > -NANO_MEDIASIZE=3D"3932160" > +NANO_MEDIASIZE=3D"6000000" > NANO_SECTS=3D"63" > NANO_HEADS=3D"16" > NANO_IMAGES=3D"2" > @@ -31,10 +31,12 @@ CONF_INSTALL=3D' > CONF_WORLD=3D' > CFLAGS=3D-O -pipe > # We do not need these for rescue > -WITHOUT_LIB32=3Dtrue > WITHOUT_TESTS=3Dtrue > -WITHOUT_DEBUG_FILES=3Dt > -WITHOUT_KERNEL_SYMBOLS=3Dt > +WITHOUT_DEBUG_FILES=3Dtrue > +WITHOUT_KERNEL_SYMBOLS=3Dtrue > +WITHOUT_CLANG_FULL=3Dtrue > +WITH_CLANG_EXTRAS=3Dtrue > +WITHOUT_LIB32=3Dtrue > ' > > # Functions > @@ -50,14 +52,14 @@ toUpper() { > customize_cmd cust_allow_ssh_root > customize_cmd cust_install_files > > -cust_ld32_cfg () ( > - cd ${NANO_WORLDDIR}/libexec > - if [ \! -f ld-elf32.so.1 ]; then > - ln -s ld-elf.so.1 ld-elf32.so.1 > - fi > -) > -customize_cmd cust_ld32_cfg > - > +#cust_ld32_cfg () ( > +# cd ${NANO_WORLDDIR}/libexec > +# if [ \! -f ld-elf32.so.1 ]; then > +# ln -s ld-elf.so.1 ld-elf32.so.1 > +# fi > +#) > +#customize_cmd cust_ld32_cfg > +# > #cust_boot_cfg () ( > # cd ${NANO_WORLDDIR} > # echo "-S115200 -h" > boot.config > @@ -67,7 +69,7 @@ customize_cmd cust_ld32_cfg > #) > #customize_cmd cust_boot_cfg > > -customize_cmd cust_pkgng > +#customize_cmd cust_pkgng > > cust_etc_cfg () ( > cd ${NANO_WORLDDIR} From nobody Thu Apr 10 18:53:35 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYTVS0qkpz5tLXF; Thu, 10 Apr 2025 18:53: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYTVR6NW9z3hl2; Thu, 10 Apr 2025 18:53:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744311215; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HoJS5ihqU2EI7+qxmv/NkPgoSjsH6WtcnMV7B87sS08=; b=pbr2ws2910mqAHXlhQJPVng8cXLPpfAHmro9EXWmBTpbWiLUBRljxloYr2u+/zdYplNw2c AmkWP5tqgbYIVy0HVjcBb5jCM7xHn4Srm3//ho+ZyxMDNnwd6AECd+n+pFM65aNIMn7rww OlzJ3jEHYqTaqiWAb8rlr3v+AxGjXyr4UMj+yaBfefCry0yVCeOWTmhxBJqFB8D9i1wOPb ORJo7P2sgtrnGUn1ipfQk79fJW39KKY3EfqGqIw6SR3NEHpAur7bRIWmPyAeA72uUGKLAM 3cbY6enzJZQYf2xa0W93YuOIuVlwg/oflSFmocFBIdPSavx1R2QXSFzgs5G12A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744311215; a=rsa-sha256; cv=none; b=HE1WT8enfT3U4fxEwE0h8C5lJ9/149kti5V/G90b/DzxW4hwDdMsWvbhONdSQrH0HPfRio 4CSrO5iJL955vNsqXEeF9/GhnHHXMDqQgGkZCK0yquLAjjMDWxIS+YnZkbF2a4rYIeEtkI 22YwTP02Lqog5Yhia1wu0vfzIJ2I21RjEoM7DBiaMBVDgxZf443GmE1fZ8LRKjp7rGiay2 3lpNXG/79mOnauMwlzkr3ys4mi4AmL2xw2cIxMjvw53nrUKuiRFg/SrXyoFI0QwRcBcOUQ KiTadYWwQUiVrLuxeUZ2poBC+9L2M7nChUBmhhwMvUlZtAwbmw2tkLtLsYvOIw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744311215; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HoJS5ihqU2EI7+qxmv/NkPgoSjsH6WtcnMV7B87sS08=; b=IWZZ0Of9qRpJxXGSL/k6QaigujKcys6gPKd5f+DUhraIkw0jhBZzJTDmnf4RGFSxtM26xS rIoXwyhhiRPcNAtkDxGDWj7Ah+4IipYQwseV5hRTm8Dw52re1oAI4BTM4fPadcUMTbKCy5 Ccg+g2Tc0PhJTJuzibDyyW1jZec68hG30xaq+qA3+nH1g43/0yIqZ3EnWkvgDlRlcGN8yS 0URwLFjX9f7X0uaFAikXD1qAqguE4AO9A6GYXQk7zLFFsbkPF3Ro6EUkyVMdAaW5QvhrEA rOsoIA1oGIYJRi8GsChNU7J/bNsk7bVFQi0FwPvxPoDLEva5AdNy4hmJpW8qYA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYTVR5zkRz1F1P; Thu, 10 Apr 2025 18:53:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53AIrZQE005065; Thu, 10 Apr 2025 18:53:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53AIrZJu005062; Thu, 10 Apr 2025 18:53:35 GMT (envelope-from git) Date: Thu, 10 Apr 2025 18:53:35 GMT Message-Id: <202504101853.53AIrZJu005062@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: f6aedb956ef1 - main - net/if_bridgevar.h: add include guard List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f6aedb956ef154828c4bfaddaa5d5eb2dda5225c Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=f6aedb956ef154828c4bfaddaa5d5eb2dda5225c commit f6aedb956ef154828c4bfaddaa5d5eb2dda5225c Author: Lexi Winter AuthorDate: 2025-04-04 10:59:09 +0000 Commit: Kristof Provost CommitDate: 2025-04-10 16:51:26 +0000 net/if_bridgevar.h: add include guard Reviewed by: kp --- sys/net/if_bridgevar.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sys/net/if_bridgevar.h b/sys/net/if_bridgevar.h index 1f762bc4ecf9..048d9fb1a18f 100644 --- a/sys/net/if_bridgevar.h +++ b/sys/net/if_bridgevar.h @@ -74,6 +74,9 @@ * Data structure and control definitions for bridge interfaces. */ +#ifndef _NET_IF_BRIDGEVAR_H_ +#define _NET_IF_BRIDGEVAR_H_ + #include #include #include @@ -324,3 +327,5 @@ extern bool (*bridge_same_p)(const void *, const void *); extern void *(*bridge_get_softc_p)(struct ifnet *); #endif /* _KERNEL */ + +#endif /* _NET_IF_BRIDGEVAR_H_ */ From nobody Thu Apr 10 18:53:36 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYTVT4HXBz5tLmR; Thu, 10 Apr 2025 18:53: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYTVT0TVkz3hhg; Thu, 10 Apr 2025 18:53:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744311217; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vEM3PkdXd/V/t/pRKnjUMW8M/emg7O9WkpgHELRfl1c=; b=fA06Ed6OKWu2hKG8eRqapOqmZEO349C54q3y7lXaFnB46eQT98CSqQ3oWl98e/JI+FxQzY 52bXLfJlqBZcLiXFyXvgSFbv02onlp8ja4LTB8b2qrDHzyD4a+Q6SsFRsz6/lV7Yp363BD cWj3MDwTjUXyE25dCt7o39jJvhf4GRs6wB5y5lZPnyVEgFQZvtNodcAcXXdRkoQioQP0/G y1piLLt5CYovWurZlBhH/VU8hCGorUpErQBQ4f6TudihTIJvbqjCfQIl17beV/K+XLWFZT NTXX/4Ov4Uplka8l5s20M5KY/z4l4s1RUKfsXT3EeJrYWclAdjrCsXOsPXTEDQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744311217; a=rsa-sha256; cv=none; b=v2jjAhR6tVK6ildyT0c/VTa6BLv0Vbf6Gqq9/k7LyqgYgTy5tt4XGnvwWS0iZ06Wkrj7bp LYTDjzx74bSXTN/D8nTQ8qRE0Q5hhxFdnH2Y8f8YOnn3rh2wmNINnzR7wJ76Spsfvm+k4F YRKT8q8hHL9CoAZzNskcaPq0vmUkXptS9tSH/C5vRxHARVr0hK1UGJJWpHLdqMmUdL9hH/ eM2wvOgWlduJvzfRoN9exscMsSHb1COsF4SLvP3nXsEIe4fLgQVaEBqOUf8nC1f8HvpPt3 j3njT37rwiMG6Ej2zGlxLy4r7PTWbrYpKthdVtmFKaVOCymvNS4wF8mOtuZYgg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744311217; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vEM3PkdXd/V/t/pRKnjUMW8M/emg7O9WkpgHELRfl1c=; b=yeoVcbAO1ItjJ/FcNLloZ+ozM4nCgXKhdvOC3cmEU9ltFFKdacRTR5/PxuH9oJqi9MzQus V/a0nDGGihHNeY718JdZ/1naCxpS7NlzmmJaQRskxspxZiR0aaJovIZNkgwiS2QGsjdWwd taJ1VCqiLH0URnS9cvuS3ZqHBzEiQVoJpqLkbEhfCQW8htQTqYrFn9KA5/LGgaXaMHQ9Bh lNNcfsOWxEovuzUGdVDgV6eeV/BOVRIFOK+WM/9fN+hjTav/vD00SuUcF+C+7Csc1zn5jY jQLyJ29K7Iakku/M/4SwkFQexVoiQH6BVPOJhPejolCZihpj41hrjZl1FCqKoQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYTVS6wNzz1DnK; Thu, 10 Apr 2025 18:53:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53AIraAq005099; Thu, 10 Apr 2025 18:53:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53AIraH4005096; Thu, 10 Apr 2025 18:53:36 GMT (envelope-from git) Date: Thu, 10 Apr 2025 18:53:36 GMT Message-Id: <202504101853.53AIraH4005096@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kristof Provost Subject: git: f36292f010fc - main - bridge: define VLANTAGOF correctly List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f36292f010fcc6391605182f2973fdc12a3bd15f Auto-Submitted: auto-generated The branch main has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=f36292f010fcc6391605182f2973fdc12a3bd15f commit f36292f010fcc6391605182f2973fdc12a3bd15f Author: Lexi Winter AuthorDate: 2025-04-04 15:05:01 +0000 Commit: Kristof Provost CommitDate: 2025-04-10 16:51:50 +0000 bridge: define VLANTAGOF correctly to avoid strange precedence errors, enclose the macro body in parentheses. this fixes constructs like: if (VLANTAGOF(m) == i) Reviewed by: kp --- sys/net/if_bridge.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c index fdfec024ef07..0dd261e6529b 100644 --- a/sys/net/if_bridge.c +++ b/sys/net/if_bridge.c @@ -424,7 +424,7 @@ static void bridge_linkcheck(struct bridge_softc *sc); * to indicate untagged frames. */ #define VLANTAGOF(_m) \ - (_m->m_flags & M_VLANTAG) ? EVL_VLANOFTAG(_m->m_pkthdr.ether_vtag) : DOT1Q_VID_NULL + ((_m->m_flags & M_VLANTAG) ? EVL_VLANOFTAG(_m->m_pkthdr.ether_vtag) : DOT1Q_VID_NULL) static struct bstp_cb_ops bridge_ops = { .bcb_state = bridge_state_change, From nobody Thu Apr 10 22:17:19 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYZ1t0KWPz5rtp5 for ; Thu, 10 Apr 2025 22:17:38 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-pl1-x633.google.com (mail-pl1-x633.google.com [IPv6:2607:f8b0:4864:20::633]) (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 4ZYZ1s29Mrz44gy for ; Thu, 10 Apr 2025 22:17:32 +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=mWAKcCP5; dmarc=none; spf=none (mx1.freebsd.org: domain of wlosh@bsdimp.com has no SPF policy when checking 2607:f8b0:4864:20::633) smtp.mailfrom=wlosh@bsdimp.com Received: by mail-pl1-x633.google.com with SMTP id d9443c01a7336-224341bbc1dso13162285ad.3 for ; Thu, 10 Apr 2025 15:17:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1744323451; x=1744928251; darn=freebsd.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=a8edUD6NU0mNntZqVVttu2g/bHmaWDnbFlE1hRG94js=; b=mWAKcCP5hZ/SxVs3p3KIBNYVa4KtjXLt6vafLpNVH+KZubFrW61QolfDF5QILQ7h/d GMkXP7MS0OGbr0vcf553TjD9Bwj/mTH3t0yxH3+fi/BEBHNpAp+URh7sD5SLXjHiXSft 8dxBgd6vOWtDtmQMKmbOASfHrqjJHMO675uMXS/Flhv7U1Q1/4xMe63c7XRYc2bRCOWe dSc25PY4bnurwI4+DKSmTIhk8VNdVTN0yj1N2MbdcaggkhlpIhWn+No0ybo6ALRNExW9 9Df5Vs7uJP7GqyJTOPSh9AvUNilRCcFfdrFO17n9oQyZT/s2oZCtWG7ZwXQ+Yye8iIKG qvDQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744323451; x=1744928251; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=a8edUD6NU0mNntZqVVttu2g/bHmaWDnbFlE1hRG94js=; b=CJ/L4dW3IcAYwQLpqoBIWw/t//aZrVG3VG13c/JXYLqijBkM+Gu8yZRenLxqG1ovR+ HeAECvJVeQ55QSxNgYxK8e8Rg6SjpsAj6Uya7jPQj16E6CTFSeWbfPfpcJt9IiHupy5Y fSj5bvXVJv0JIDtFxN4RZNQC1KJGOtX1BJcGEM5kxDOCizxLKUzi7BeG7+v1e1PeGFoq Lbx+baT8A+9GFyUGiI5knyaCe0p2pK5DxatSt7jF1aXMpTvRGoo3DzoK3Hv6bkZKs/X6 Jpkn4A+zYtK3lgYDcSgnR4+/KRYFAPFHbXCCFzEg/QfCpW/fTbDLNFUhsXAcc1pUfQbX BV3w== X-Forwarded-Encrypted: i=1; AJvYcCXWRr58rSUzOwoMsX0AfYsXVrGL+XJuM0GLiaOZff9U3h93uNnnVccJdY9gAA0/BLQ1mqW44586qxxAiDVSHgmbc1YDJA==@freebsd.org X-Gm-Message-State: AOJu0YwMNQKJ4EFznfoJEBPhqzOvnsBVXqE+F+GZR26dzXSwJo3XqIdu efC0F+yw5nBdzMh/rLVa1s47E3qHVqj5JFiOPDPp9sADZtJ4VuL5Bd1I3EnEeEYua70oDc3OExq PHpUo8mmikwE7HY61/fTIo9XgNOp1onuSrP8aag== X-Gm-Gg: ASbGncvbfnPXTiusYV0Uhc01XIUobqHa19LN4LKpCFALKXYdecbf+JYY5qOQXpIHYXn C+B+WkYtZH/nzzi8r0vEVrK/YobD3N7rJGqC3avL8wznH5yeBP+TcVbLjwkewwJ8XBYcpXxBR4b DHU1DfzEhIj85PJqoc7EFr3g== X-Google-Smtp-Source: AGHT+IFD3pl6nWfXzKxlw9qYjikmSqvPG1Ew0dPD6njgkewerqUhm44URu2S2G81menh37Z6ZZmoKsPb1+T1/WfJb4A= X-Received: by 2002:a17:902:f681:b0:21f:522b:690f with SMTP id d9443c01a7336-22bea4ff05amr4851425ad.46.1744323450790; Thu, 10 Apr 2025 15:17:30 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <202504101341.53ADfEP0023340@gitrepo.freebsd.org> In-Reply-To: From: Warner Losh Date: Thu, 10 Apr 2025 16:17:19 -0600 X-Gm-Features: ATxdqUGgaLLgpgFnwYUhi7iHhkL7w5cQsBp3n8qKehheBZSKrlV6D6A-Xcggn_M Message-ID: Subject: Re: git: adad92981419 - main - Fix build under current. To: Michael Reifenberger Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spamd-Result: default: False [-2.99 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.99)[-0.992]; 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)[text/plain]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; RCVD_COUNT_ONE(0.00)[1]; MIME_TRACE(0.00)[0:+]; ARC_NA(0.00)[]; TO_DN_SOME(0.00)[]; MISSING_XM_UA(0.00)[]; R_SPF_NA(0.00)[no SPF record]; DMARC_NA(0.00)[bsdimp.com]; MLMMJ_DEST(0.00)[dev-commits-src-main@freebsd.org]; FROM_NEQ_ENVFROM(0.00)[imp@bsdimp.com,wlosh@bsdimp.com]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::633:from]; PREVIOUSLY_DELIVERED(0.00)[dev-commits-src-main@freebsd.org]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_TLS_LAST(0.00)[]; DKIM_TRACE(0.00)[bsdimp-com.20230601.gappssmtp.com:+] X-Rspamd-Queue-Id: 4ZYZ1s29Mrz44gy X-Spamd-Bar: -- So after some experiments, I've concluded that I misread this commit. It's for a different file than I thought. My apologies. While the commit log isn't great, the change didn't break what I thought it would break, so I withdraw my request to revert. The worst that Isee this doing is that it does break a convention that I have for NANO_OBJ that's set automatically, but that convention isn't universal (though often followed in historical nanobsd config files). Warner On Thu, Apr 10, 2025 at 12:33=E2=80=AFPM Warner Losh wrote= : > > Please revert this. > > (1) It includes things that are bogus (clearly not intended) > (2) it wasn't reviewed. we're trying to review things in phab for nanobsd > (3) The only possible valid change in here is the size bump, but even > it doesn't make sense. > (4) the t->true changes are gratuitous. > > Warner > > On Thu, Apr 10, 2025 at 7:41=E2=80=AFAM Michael Reifenberger wrote: > > > > The branch main has been updated by mr: > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=3Dadad9298141964ca38e21a05= c0b8951efbcb70b2 > > > > commit adad9298141964ca38e21a05c0b8951efbcb70b2 > > Author: Michael Reifenberger > > AuthorDate: 2025-04-10 13:39:12 +0000 > > Commit: Michael Reifenberger > > CommitDate: 2025-04-10 13:41:02 +0000 > > > > Fix build under current. > > --- > > tools/tools/nanobsd/rescue/common | 34 ++++++++++++++++++-------------= --- > > 1 file changed, 18 insertions(+), 16 deletions(-) > > > > diff --git a/tools/tools/nanobsd/rescue/common b/tools/tools/nanobsd/re= scue/common > > index 5fcf5c19b882..15bf10f5e67d 100644 > > --- a/tools/tools/nanobsd/rescue/common > > +++ b/tools/tools/nanobsd/rescue/common > > @@ -1,15 +1,15 @@ > > # > > # > > -NANO_SRC=3D$(pwd) > > -NANO_SRC=3D${NANO_SRC%/tools/tools/nanobsd/rescue} > > -NANO_OBJ=3D${NANO_SRC}/../nanobsd-builds/${NANO_NAME}/obj > > +#NANO_SRC=3D$(pwd) > > +#NANO_SRC=3D${NANO_SRC%/tools/tools/nanobsd/rescue} > > +#NANO_OBJ=3D${NANO_SRC}/../nanobsd-builds/${NANO_NAME}/obj > > NANO_TOOLS=3D`pwd` > > NANO_PACKAGE_DIR=3D`pwd`/Pkg > > NANO_RAM_TMPVARSIZE=3D40960 > > NANO_PMAKE=3D"make -j 8" > > NANO_LABEL=3D"rescue" > > NANO_RAM_TMPVARSIZE=3D40960 > > -NANO_MEDIASIZE=3D"3932160" > > +NANO_MEDIASIZE=3D"6000000" > > NANO_SECTS=3D"63" > > NANO_HEADS=3D"16" > > NANO_IMAGES=3D"2" > > @@ -31,10 +31,12 @@ CONF_INSTALL=3D' > > CONF_WORLD=3D' > > CFLAGS=3D-O -pipe > > # We do not need these for rescue > > -WITHOUT_LIB32=3Dtrue > > WITHOUT_TESTS=3Dtrue > > -WITHOUT_DEBUG_FILES=3Dt > > -WITHOUT_KERNEL_SYMBOLS=3Dt > > +WITHOUT_DEBUG_FILES=3Dtrue > > +WITHOUT_KERNEL_SYMBOLS=3Dtrue > > +WITHOUT_CLANG_FULL=3Dtrue > > +WITH_CLANG_EXTRAS=3Dtrue > > +WITHOUT_LIB32=3Dtrue > > ' > > > > # Functions > > @@ -50,14 +52,14 @@ toUpper() { > > customize_cmd cust_allow_ssh_root > > customize_cmd cust_install_files > > > > -cust_ld32_cfg () ( > > - cd ${NANO_WORLDDIR}/libexec > > - if [ \! -f ld-elf32.so.1 ]; then > > - ln -s ld-elf.so.1 ld-elf32.so.1 > > - fi > > -) > > -customize_cmd cust_ld32_cfg > > - > > +#cust_ld32_cfg () ( > > +# cd ${NANO_WORLDDIR}/libexec > > +# if [ \! -f ld-elf32.so.1 ]; then > > +# ln -s ld-elf.so.1 ld-elf32.so.1 > > +# fi > > +#) > > +#customize_cmd cust_ld32_cfg > > +# > > #cust_boot_cfg () ( > > # cd ${NANO_WORLDDIR} > > # echo "-S115200 -h" > boot.config > > @@ -67,7 +69,7 @@ customize_cmd cust_ld32_cfg > > #) > > #customize_cmd cust_boot_cfg > > > > -customize_cmd cust_pkgng > > +#customize_cmd cust_pkgng > > > > cust_etc_cfg () ( > > cd ${NANO_WORLDDIR} From nobody Fri Apr 11 01:01:54 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYdgQ6mGTz5sCs5; Fri, 11 Apr 2025 01:01: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYdgQ61h5z3tCk; Fri, 11 Apr 2025 01:01:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744333314; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8aKM+SPFrCuqm7ll2nUALfqQ0XCumMM6x66+I7j8sGg=; b=nD259qIoiAM1ST0LA5pgeK00pxZwbiXBcZcFxWNiSkHrkn1xnP3KG7LpVPCNoAXjUAUqZG Xb2cqMB1g9TuhfUDdeBSDU78mq+dWYwTCr71Wnxckso/hszrkkK2o859FcSrOEagKBTtx3 swZXQuQ+7wllurFwcaSw/6wcdTfIqaSBVsQ1z1mLsrLjMljZ8HGm/uQOSI0CjDx/phaCXE u85BG/kiqTdCydx8VVDKYNTzYyLJjodtvPof4yik6bnKJwcC1wcVmt2jAr8gSabgI9EHkD fLLIw9ivaAqxOZsamHyPcRnMVA5BZ6QIM2afCHrxtqBb8Cvp7cQWG2Kjx8/sDQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744333314; a=rsa-sha256; cv=none; b=VOwF6NjZSdZ1o2vLO8fMroe1YO+mzVNfs6DfOJQJBMgDkttuEqtwhqA3rWd+MBcTHLLs6k MPQGU9BhJh7XquykTcMSRBq/2I+qA0DVd10IY6JAH8XWodFVSg3SKnHFAki486fjVic3Vb 3nAags/UW4ADv+/CTUPmATarY5SOvEwBeDnMckGApIgI453U5uZhvOwDPBBUX0kSncbWTm 7C3VlUvJJ6AeQqryo8MZm6eLZ0dcwpKba1UMasH9KKjzyd7uGEjsJkLznp+FeJNkJ6oCX3 hsiLG+bjGR2UsxAOrcKquz+/EDTIFi8zcPyJC0Z+xm9OCQ8uAZ5k8VE5vbA4KQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744333314; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8aKM+SPFrCuqm7ll2nUALfqQ0XCumMM6x66+I7j8sGg=; b=SHGV9F+gep3fmdziliHJzZqCKZj4+Xue7ycTQc7LaR0GMMS2EcllD8WvP+ZE58xXQhsGIW IeW1UzqoIWbGLvdh2NK8uiXw6IDHBqbXKnmc1qFDOBJ0sIF9PHf10rdzOYkGOGvDtyREQd RUHxxkgLihIVWLcf5hnsACJw2nTRXghm+BJm/MNUUVBpNnNnJMrx6UpB8hUjrFFn6KYbvR eiOPHsdw/yKkAShoHULkO5mq6oK/4L3+a3Sjw56pJMYfK0twYMpCvQrm++1HswnXhCqJRK uvSwGSTxbTkgt+/4vPTIzp0IcOvSAywKwmOL9PQtMHY58CLW9LC3WCmAXbl7ng== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYdgQ5d0nz1P72; Fri, 11 Apr 2025 01:01:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53B11sl7091901; Fri, 11 Apr 2025 01:01:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53B11s8n091898; Fri, 11 Apr 2025 01:01:54 GMT (envelope-from git) Date: Fri, 11 Apr 2025 01:01:54 GMT Message-Id: <202504110101.53B11s8n091898@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Rick Macklem Subject: git: 964d0fd62431 - main - statfs.2: Update man page for the MNT_NAMEDATTR flag List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 964d0fd62431899bec6b8c754ce633401a291c56 Auto-Submitted: auto-generated The branch main has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=964d0fd62431899bec6b8c754ce633401a291c56 commit 964d0fd62431899bec6b8c754ce633401a291c56 Author: Rick Macklem AuthorDate: 2025-04-11 01:00:49 +0000 Commit: Rick Macklem CommitDate: 2025-04-11 01:00:49 +0000 statfs.2: Update man page for the MNT_NAMEDATTR flag This patch updates the man page for the MNT_NAMEDATTR flag. Another man page that explains named attributes will be introduced in a future commit. This is a content change. Reviewed by: manpages (zaiee) Fixes: 2ec2ba7e232d ("vfs: Add VFS/syscall support for Solaris style extended attributes") Differential Revision: https://reviews.freebsd.org/D49719 --- lib/libsys/statfs.2 | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/libsys/statfs.2 b/lib/libsys/statfs.2 index b411b3b6ff46..49e8b5120558 100644 --- a/lib/libsys/statfs.2 +++ b/lib/libsys/statfs.2 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd March 29, 2023 +.Dd April 7, 2025 .Dt STATFS 2 .Os .Sh NAME @@ -125,6 +125,9 @@ The file system resides locally. Mandatory Access Control (MAC) support for individual objects (see .Xr mac 4 ) . +.It Dv MNT_NAMEDATTR +The file system supports named attributes as described in +.Xr named_attribute 9 . .It Dv MNT_NFS4ACLS ACLs in NFSv4 variant are supported. .It Dv MNT_NOATIME @@ -260,7 +263,8 @@ each file or directory name or disk label .Pc . .Sh SEE ALSO .Xr fhstatfs 2 , -.Xr getfsstat 2 +.Xr getfsstat 2 , +.Xr named_attribute 9 .Sh HISTORY The .Fn statfs From nobody Fri Apr 11 03:41:29 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYjCY5BN7z5sRwN; Fri, 11 Apr 2025 03:41: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYjCY4y29z4D9r; Fri, 11 Apr 2025 03:41:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744342889; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1XDdc8x3pXuf4dSaVn+EQtmibUXzYxGqwwIU68IgtIc=; b=ni3/vBzoDLJ8nNFv69rlitT7DC1hUB2mq+y5ACD23wqJCmFYgOPalzHItxp+fOawBSUw2V yBIeY+Gcm77It8CPtiiOpT5RVOptSDoBbJrtF/GO1IOaH1/t3zI8VXp91NkVn1ixzkVKTT cBoX+WmDurQvqMQYKqcIs3Q+Owu4nN6saxjpoQXzwZrEl14xeHPaC2HcNSoG1TlDMyl1aV IrA/5EJ0fVyKEcPM7B7hcZrjZHmoJ33LtS5NjdvcVbA0sXid2wIDiwDx2zK8yVb0VzhkGG GmFcg+QlH+WLnig6gVDqpJyA0WnKdHQfDqN4RbMoZNKmsp6s6IEnyFgjbr7YQQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744342889; a=rsa-sha256; cv=none; b=GgeuwdCGJRmiPW9LL2Tj+shKLDOi94rowut3I/2TuURp5zm9ymLC2WrHYUVzFM+wpxhRR8 F/Z5wm6EzZMQQU0f9P5oyo1X/gAflVPBYEoy3ltksad5hvpgPXNGBwItqZTw3xPQEq3ze7 xAow/6chDjMTJmm5rcurQMhmBXc8I1AU/RrEP/iIONHOg/VQr2xsGocMtLCp7s9/c/lrSx BBsyTtnWO9lpWT3N7XzBrvPOHTQstDoRhB7D2/dXpQsG0wU66lVJrtWnvowNRXxZQSsPEp nyFW/PnXOX4EWfvPc0SEL7cJiR9UVzK4InXmqU9++jva1PdYVrSByM3BaVlaLA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744342889; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1XDdc8x3pXuf4dSaVn+EQtmibUXzYxGqwwIU68IgtIc=; b=Ux2YdktRewHFeibgMRVSuD2dScaidYpaMwtU85VAfWtt9hNj1kgW5r9TNPBZxXHsCshQKh 0YPuRFRKsUDKIFnKl7PozaSUbxsDOqseAKFhuEZ+pJWVcf813wTfVNvlKoDs9/+F1iQTUO rcTEJAOpi046FupPEiRW7lYlmVhllRTUr1/oxYKR5Cqlwj/wDV+pU1folRCy7r4IVOLc6v miCehNrDekJkbKPj30u13NodL8XLlXamg3HW7bgNEOxURMvbzzydNCrH8Pa7lrN2ORrQ9p RK012PAtf3su4y78g2gAjfO45+PceUPb0bLmVcPFeD3N5WeM9ljCr6Sl5xIVjA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYjCY4FfJz1Z3; Fri, 11 Apr 2025 03:41:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53B3fTRn090970; Fri, 11 Apr 2025 03:41:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53B3fTLQ090967; Fri, 11 Apr 2025 03:41:29 GMT (envelope-from git) Date: Fri, 11 Apr 2025 03:41:29 GMT Message-Id: <202504110341.53B3fTLQ090967@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jung-uk Kim Subject: git: 58308fadece2 - main - Import ACPICA 20250404 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jkim X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 58308fadece25ae4c12bd2f4dce3d73d9c23be43 Auto-Submitted: auto-generated The branch main has been updated by jkim: URL: https://cgit.FreeBSD.org/src/commit/?id=58308fadece25ae4c12bd2f4dce3d73d9c23be43 commit 58308fadece25ae4c12bd2f4dce3d73d9c23be43 Author: Jung-uk Kim AuthorDate: 2025-04-10 03:51:28 +0000 Commit: Jung-uk Kim CommitDate: 2025-04-11 03:40:07 +0000 Import ACPICA 20250404 (cherry picked from commit 97a7606d897edfa3089cb04eea70096a1f9cf734) --- sys/contrib/dev/acpica/changes.txt | 16 + sys/contrib/dev/acpica/common/acfileio.c | 2 +- sys/contrib/dev/acpica/common/acgetline.c | 2 +- sys/contrib/dev/acpica/common/adfile.c | 2 +- sys/contrib/dev/acpica/common/adisasm.c | 4 +- sys/contrib/dev/acpica/common/adwalk.c | 2 +- sys/contrib/dev/acpica/common/ahids.c | 2 +- sys/contrib/dev/acpica/common/ahpredef.c | 2 +- sys/contrib/dev/acpica/common/ahtable.c | 4 +- sys/contrib/dev/acpica/common/ahuuids.c | 2 +- sys/contrib/dev/acpica/common/cmfsize.c | 2 +- sys/contrib/dev/acpica/common/dmextern.c | 2 +- sys/contrib/dev/acpica/common/dmrestag.c | 4 +- sys/contrib/dev/acpica/common/dmswitch.c | 2 +- sys/contrib/dev/acpica/common/dmtable.c | 55 ++- sys/contrib/dev/acpica/common/dmtables.c | 2 +- sys/contrib/dev/acpica/common/dmtbdump.c | 2 +- sys/contrib/dev/acpica/common/dmtbdump1.c | 235 +++++++++- sys/contrib/dev/acpica/common/dmtbdump2.c | 182 +++++++- sys/contrib/dev/acpica/common/dmtbdump3.c | 2 +- sys/contrib/dev/acpica/common/dmtbinfo.c | 2 +- sys/contrib/dev/acpica/common/dmtbinfo1.c | 290 +++++++++++- sys/contrib/dev/acpica/common/dmtbinfo2.c | 126 ++++- sys/contrib/dev/acpica/common/dmtbinfo3.c | 2 +- sys/contrib/dev/acpica/common/getopt.c | 2 +- sys/contrib/dev/acpica/compiler/aslallocate.c | 2 +- sys/contrib/dev/acpica/compiler/aslanalyze.c | 2 +- sys/contrib/dev/acpica/compiler/aslascii.c | 2 +- sys/contrib/dev/acpica/compiler/aslbtypes.c | 2 +- sys/contrib/dev/acpica/compiler/aslcache.c | 5 +- sys/contrib/dev/acpica/compiler/aslcodegen.c | 2 +- sys/contrib/dev/acpica/compiler/aslcompile.c | 2 +- sys/contrib/dev/acpica/compiler/aslcompiler.h | 2 +- sys/contrib/dev/acpica/compiler/aslcompiler.l | 2 +- sys/contrib/dev/acpica/compiler/aslcstyle.y | 2 +- sys/contrib/dev/acpica/compiler/asldebug.c | 2 +- sys/contrib/dev/acpica/compiler/asldefine.h | 2 +- sys/contrib/dev/acpica/compiler/aslerror.c | 2 +- sys/contrib/dev/acpica/compiler/aslexternal.c | 2 +- sys/contrib/dev/acpica/compiler/aslfileio.c | 2 +- sys/contrib/dev/acpica/compiler/aslfiles.c | 2 +- sys/contrib/dev/acpica/compiler/aslfold.c | 2 +- sys/contrib/dev/acpica/compiler/aslglobal.h | 2 +- sys/contrib/dev/acpica/compiler/aslhelp.c | 2 +- sys/contrib/dev/acpica/compiler/aslhelpers.y | 2 +- sys/contrib/dev/acpica/compiler/aslhex.c | 2 +- sys/contrib/dev/acpica/compiler/aslkeywords.y | 2 +- sys/contrib/dev/acpica/compiler/asllength.c | 2 +- sys/contrib/dev/acpica/compiler/asllisting.c | 2 +- sys/contrib/dev/acpica/compiler/asllistsup.c | 2 +- sys/contrib/dev/acpica/compiler/aslload.c | 2 +- sys/contrib/dev/acpica/compiler/asllookup.c | 2 +- sys/contrib/dev/acpica/compiler/aslmain.c | 2 +- sys/contrib/dev/acpica/compiler/aslmap.c | 2 +- sys/contrib/dev/acpica/compiler/aslmapenter.c | 2 +- sys/contrib/dev/acpica/compiler/aslmapoutput.c | 2 +- sys/contrib/dev/acpica/compiler/aslmaputils.c | 2 +- sys/contrib/dev/acpica/compiler/aslmessages.c | 2 +- sys/contrib/dev/acpica/compiler/aslmessages.h | 2 +- sys/contrib/dev/acpica/compiler/aslmethod.c | 8 +- sys/contrib/dev/acpica/compiler/aslnamesp.c | 2 +- sys/contrib/dev/acpica/compiler/asloffset.c | 2 +- sys/contrib/dev/acpica/compiler/aslopcodes.c | 2 +- sys/contrib/dev/acpica/compiler/asloperands.c | 2 +- sys/contrib/dev/acpica/compiler/aslopt.c | 2 +- sys/contrib/dev/acpica/compiler/asloptions.c | 2 +- sys/contrib/dev/acpica/compiler/aslparseop.c | 2 +- sys/contrib/dev/acpica/compiler/aslparser.y | 2 +- sys/contrib/dev/acpica/compiler/aslpld.c | 2 +- sys/contrib/dev/acpica/compiler/aslpredef.c | 2 +- sys/contrib/dev/acpica/compiler/aslprepkg.c | 2 +- sys/contrib/dev/acpica/compiler/aslprimaries.y | 2 +- sys/contrib/dev/acpica/compiler/aslprintf.c | 6 +- sys/contrib/dev/acpica/compiler/aslprune.c | 2 +- sys/contrib/dev/acpica/compiler/aslresource.c | 2 +- sys/contrib/dev/acpica/compiler/aslresources.y | 2 +- sys/contrib/dev/acpica/compiler/aslrestype1.c | 2 +- sys/contrib/dev/acpica/compiler/aslrestype1i.c | 2 +- sys/contrib/dev/acpica/compiler/aslrestype2.c | 2 +- sys/contrib/dev/acpica/compiler/aslrestype2d.c | 2 +- sys/contrib/dev/acpica/compiler/aslrestype2e.c | 2 +- sys/contrib/dev/acpica/compiler/aslrestype2q.c | 2 +- sys/contrib/dev/acpica/compiler/aslrestype2s.c | 2 +- sys/contrib/dev/acpica/compiler/aslrestype2w.c | 2 +- sys/contrib/dev/acpica/compiler/aslrules.y | 2 +- sys/contrib/dev/acpica/compiler/aslstartup.c | 2 +- sys/contrib/dev/acpica/compiler/aslstubs.c | 2 +- sys/contrib/dev/acpica/compiler/aslsupport.l | 2 +- sys/contrib/dev/acpica/compiler/aslsupport.y | 2 +- sys/contrib/dev/acpica/compiler/asltokens.y | 2 +- sys/contrib/dev/acpica/compiler/asltransform.c | 2 +- sys/contrib/dev/acpica/compiler/asltree.c | 2 +- sys/contrib/dev/acpica/compiler/asltypes.h | 2 +- sys/contrib/dev/acpica/compiler/asltypes.y | 2 +- sys/contrib/dev/acpica/compiler/aslutils.c | 2 +- sys/contrib/dev/acpica/compiler/asluuid.c | 2 +- sys/contrib/dev/acpica/compiler/aslwalks.c | 2 +- sys/contrib/dev/acpica/compiler/aslxref.c | 2 +- sys/contrib/dev/acpica/compiler/aslxrefout.c | 2 +- sys/contrib/dev/acpica/compiler/cvcompiler.c | 2 +- sys/contrib/dev/acpica/compiler/cvdisasm.c | 2 +- sys/contrib/dev/acpica/compiler/cvparser.c | 2 +- sys/contrib/dev/acpica/compiler/dtcompile.c | 2 +- sys/contrib/dev/acpica/compiler/dtcompiler.h | 17 +- sys/contrib/dev/acpica/compiler/dtcompilerparser.l | 2 +- sys/contrib/dev/acpica/compiler/dtcompilerparser.y | 2 +- sys/contrib/dev/acpica/compiler/dtexpress.c | 2 +- sys/contrib/dev/acpica/compiler/dtfield.c | 2 +- sys/contrib/dev/acpica/compiler/dtio.c | 8 +- sys/contrib/dev/acpica/compiler/dtparser.l | 2 +- sys/contrib/dev/acpica/compiler/dtparser.y | 2 +- sys/contrib/dev/acpica/compiler/dtsubtable.c | 2 +- sys/contrib/dev/acpica/compiler/dttable.c | 2 +- sys/contrib/dev/acpica/compiler/dttable1.c | 517 ++++++++++++++++++++- sys/contrib/dev/acpica/compiler/dttable2.c | 53 ++- sys/contrib/dev/acpica/compiler/dttemplate.c | 2 +- sys/contrib/dev/acpica/compiler/dttemplate.h | 267 ++++++++++- sys/contrib/dev/acpica/compiler/dtutils.c | 21 +- sys/contrib/dev/acpica/compiler/preprocess.h | 2 +- sys/contrib/dev/acpica/compiler/prexpress.c | 2 +- sys/contrib/dev/acpica/compiler/prmacros.c | 2 +- sys/contrib/dev/acpica/compiler/prparser.l | 2 +- sys/contrib/dev/acpica/compiler/prparser.y | 2 +- sys/contrib/dev/acpica/compiler/prscan.c | 2 +- sys/contrib/dev/acpica/compiler/prutils.c | 4 +- .../dev/acpica/components/debugger/dbcmds.c | 2 +- .../dev/acpica/components/debugger/dbconvert.c | 2 +- .../dev/acpica/components/debugger/dbdisply.c | 2 +- .../dev/acpica/components/debugger/dbexec.c | 2 +- .../dev/acpica/components/debugger/dbfileio.c | 2 +- .../dev/acpica/components/debugger/dbhistry.c | 2 +- .../dev/acpica/components/debugger/dbinput.c | 2 +- .../dev/acpica/components/debugger/dbmethod.c | 2 +- .../dev/acpica/components/debugger/dbnames.c | 2 +- .../dev/acpica/components/debugger/dbobject.c | 2 +- .../dev/acpica/components/debugger/dbstats.c | 2 +- .../dev/acpica/components/debugger/dbtest.c | 2 +- .../dev/acpica/components/debugger/dbutils.c | 2 +- .../dev/acpica/components/debugger/dbxface.c | 2 +- .../dev/acpica/components/disassembler/dmbuffer.c | 2 +- .../dev/acpica/components/disassembler/dmcstyle.c | 2 +- .../acpica/components/disassembler/dmdeferred.c | 2 +- .../dev/acpica/components/disassembler/dmnames.c | 2 +- .../dev/acpica/components/disassembler/dmopcode.c | 2 +- .../dev/acpica/components/disassembler/dmresrc.c | 2 +- .../dev/acpica/components/disassembler/dmresrcl.c | 2 +- .../dev/acpica/components/disassembler/dmresrcl2.c | 2 +- .../dev/acpica/components/disassembler/dmresrcs.c | 2 +- .../dev/acpica/components/disassembler/dmutils.c | 2 +- .../dev/acpica/components/disassembler/dmwalk.c | 2 +- .../dev/acpica/components/dispatcher/dsargs.c | 2 +- .../dev/acpica/components/dispatcher/dscontrol.c | 2 +- .../dev/acpica/components/dispatcher/dsdebug.c | 2 +- .../dev/acpica/components/dispatcher/dsfield.c | 2 +- .../dev/acpica/components/dispatcher/dsinit.c | 2 +- .../dev/acpica/components/dispatcher/dsmethod.c | 2 +- .../dev/acpica/components/dispatcher/dsmthdat.c | 2 +- .../dev/acpica/components/dispatcher/dsobject.c | 2 +- .../dev/acpica/components/dispatcher/dsopcode.c | 2 +- .../dev/acpica/components/dispatcher/dspkginit.c | 2 +- .../dev/acpica/components/dispatcher/dsutils.c | 2 +- .../dev/acpica/components/dispatcher/dswexec.c | 2 +- .../dev/acpica/components/dispatcher/dswload.c | 2 +- .../dev/acpica/components/dispatcher/dswload2.c | 2 +- .../dev/acpica/components/dispatcher/dswscope.c | 2 +- .../dev/acpica/components/dispatcher/dswstate.c | 2 +- sys/contrib/dev/acpica/components/events/evevent.c | 2 +- sys/contrib/dev/acpica/components/events/evglock.c | 2 +- sys/contrib/dev/acpica/components/events/evgpe.c | 2 +- .../dev/acpica/components/events/evgpeblk.c | 2 +- .../dev/acpica/components/events/evgpeinit.c | 2 +- .../dev/acpica/components/events/evgpeutil.c | 2 +- .../dev/acpica/components/events/evhandler.c | 2 +- sys/contrib/dev/acpica/components/events/evmisc.c | 2 +- .../dev/acpica/components/events/evregion.c | 2 +- .../dev/acpica/components/events/evrgnini.c | 2 +- sys/contrib/dev/acpica/components/events/evsci.c | 2 +- sys/contrib/dev/acpica/components/events/evxface.c | 2 +- .../dev/acpica/components/events/evxfevnt.c | 2 +- sys/contrib/dev/acpica/components/events/evxfgpe.c | 2 +- .../dev/acpica/components/events/evxfregn.c | 2 +- .../dev/acpica/components/executer/exconcat.c | 2 +- .../dev/acpica/components/executer/exconfig.c | 2 +- .../dev/acpica/components/executer/exconvrt.c | 4 +- .../dev/acpica/components/executer/excreate.c | 2 +- .../dev/acpica/components/executer/exdebug.c | 2 +- .../dev/acpica/components/executer/exdump.c | 2 +- .../dev/acpica/components/executer/exfield.c | 2 +- .../dev/acpica/components/executer/exfldio.c | 2 +- .../dev/acpica/components/executer/exmisc.c | 2 +- .../dev/acpica/components/executer/exmutex.c | 2 +- .../dev/acpica/components/executer/exnames.c | 2 +- .../dev/acpica/components/executer/exoparg1.c | 2 +- .../dev/acpica/components/executer/exoparg2.c | 2 +- .../dev/acpica/components/executer/exoparg3.c | 2 +- .../dev/acpica/components/executer/exoparg6.c | 2 +- .../dev/acpica/components/executer/exprep.c | 2 +- .../dev/acpica/components/executer/exregion.c | 2 +- .../dev/acpica/components/executer/exresnte.c | 2 +- .../dev/acpica/components/executer/exresolv.c | 2 +- .../dev/acpica/components/executer/exresop.c | 2 +- .../dev/acpica/components/executer/exserial.c | 8 +- .../dev/acpica/components/executer/exstore.c | 2 +- .../dev/acpica/components/executer/exstoren.c | 2 +- .../dev/acpica/components/executer/exstorob.c | 2 +- .../dev/acpica/components/executer/exsystem.c | 2 +- .../dev/acpica/components/executer/extrace.c | 2 +- .../dev/acpica/components/executer/exutils.c | 2 +- .../dev/acpica/components/hardware/hwacpi.c | 2 +- .../dev/acpica/components/hardware/hwesleep.c | 2 +- sys/contrib/dev/acpica/components/hardware/hwgpe.c | 2 +- sys/contrib/dev/acpica/components/hardware/hwpci.c | 2 +- .../dev/acpica/components/hardware/hwregs.c | 2 +- .../dev/acpica/components/hardware/hwsleep.c | 2 +- .../dev/acpica/components/hardware/hwtimer.c | 2 +- .../dev/acpica/components/hardware/hwvalid.c | 2 +- .../dev/acpica/components/hardware/hwxface.c | 2 +- .../dev/acpica/components/hardware/hwxfsleep.c | 2 +- .../dev/acpica/components/namespace/nsaccess.c | 2 +- .../dev/acpica/components/namespace/nsalloc.c | 2 +- .../dev/acpica/components/namespace/nsarguments.c | 2 +- .../dev/acpica/components/namespace/nsconvert.c | 2 +- .../dev/acpica/components/namespace/nsdump.c | 2 +- .../dev/acpica/components/namespace/nsdumpdv.c | 2 +- .../dev/acpica/components/namespace/nseval.c | 2 +- .../dev/acpica/components/namespace/nsinit.c | 2 +- .../dev/acpica/components/namespace/nsload.c | 2 +- .../dev/acpica/components/namespace/nsnames.c | 4 +- .../dev/acpica/components/namespace/nsobject.c | 2 +- .../dev/acpica/components/namespace/nsparse.c | 2 +- .../dev/acpica/components/namespace/nspredef.c | 2 +- .../dev/acpica/components/namespace/nsprepkg.c | 2 +- .../dev/acpica/components/namespace/nsrepair.c | 2 +- .../dev/acpica/components/namespace/nsrepair2.c | 4 +- .../dev/acpica/components/namespace/nssearch.c | 2 +- .../dev/acpica/components/namespace/nsutils.c | 2 +- .../dev/acpica/components/namespace/nswalk.c | 2 +- .../dev/acpica/components/namespace/nsxfeval.c | 2 +- .../dev/acpica/components/namespace/nsxfname.c | 2 +- .../dev/acpica/components/namespace/nsxfobj.c | 2 +- sys/contrib/dev/acpica/components/parser/psargs.c | 2 +- sys/contrib/dev/acpica/components/parser/psloop.c | 2 +- .../dev/acpica/components/parser/psobject.c | 2 +- .../dev/acpica/components/parser/psopcode.c | 2 +- .../dev/acpica/components/parser/psopinfo.c | 2 +- sys/contrib/dev/acpica/components/parser/psparse.c | 2 +- sys/contrib/dev/acpica/components/parser/psscope.c | 2 +- sys/contrib/dev/acpica/components/parser/pstree.c | 2 +- sys/contrib/dev/acpica/components/parser/psutils.c | 2 +- sys/contrib/dev/acpica/components/parser/pswalk.c | 2 +- sys/contrib/dev/acpica/components/parser/psxface.c | 2 +- .../dev/acpica/components/resources/rsaddr.c | 16 +- .../dev/acpica/components/resources/rscalc.c | 17 +- .../dev/acpica/components/resources/rscreate.c | 2 +- .../dev/acpica/components/resources/rsdump.c | 2 +- .../dev/acpica/components/resources/rsdumpinfo.c | 2 +- .../dev/acpica/components/resources/rsinfo.c | 2 +- sys/contrib/dev/acpica/components/resources/rsio.c | 2 +- .../dev/acpica/components/resources/rsirq.c | 2 +- .../dev/acpica/components/resources/rslist.c | 11 +- .../dev/acpica/components/resources/rsmemory.c | 2 +- .../dev/acpica/components/resources/rsmisc.c | 2 +- .../dev/acpica/components/resources/rsserial.c | 2 +- .../dev/acpica/components/resources/rsutils.c | 2 +- .../dev/acpica/components/resources/rsxface.c | 2 +- sys/contrib/dev/acpica/components/tables/tbdata.c | 2 +- sys/contrib/dev/acpica/components/tables/tbfadt.c | 2 +- sys/contrib/dev/acpica/components/tables/tbfind.c | 6 +- .../dev/acpica/components/tables/tbinstal.c | 2 +- sys/contrib/dev/acpica/components/tables/tbprint.c | 2 +- sys/contrib/dev/acpica/components/tables/tbutils.c | 2 +- sys/contrib/dev/acpica/components/tables/tbxface.c | 2 +- .../dev/acpica/components/tables/tbxfload.c | 2 +- .../dev/acpica/components/tables/tbxfroot.c | 2 +- .../dev/acpica/components/utilities/utaddress.c | 2 +- .../dev/acpica/components/utilities/utalloc.c | 2 +- .../dev/acpica/components/utilities/utascii.c | 2 +- .../dev/acpica/components/utilities/utbuffer.c | 2 +- .../dev/acpica/components/utilities/utcache.c | 6 +- .../dev/acpica/components/utilities/utcksum.c | 2 +- .../dev/acpica/components/utilities/utcopy.c | 2 +- .../dev/acpica/components/utilities/utdebug.c | 2 +- .../dev/acpica/components/utilities/utdecode.c | 2 +- .../dev/acpica/components/utilities/utdelete.c | 4 +- .../dev/acpica/components/utilities/uterror.c | 2 +- .../dev/acpica/components/utilities/uteval.c | 2 +- .../dev/acpica/components/utilities/utexcep.c | 2 +- .../dev/acpica/components/utilities/utglobal.c | 2 +- .../dev/acpica/components/utilities/uthex.c | 2 +- .../dev/acpica/components/utilities/utids.c | 2 +- .../dev/acpica/components/utilities/utinit.c | 2 +- .../dev/acpica/components/utilities/utlock.c | 2 +- .../dev/acpica/components/utilities/utmath.c | 2 +- .../dev/acpica/components/utilities/utmisc.c | 2 +- .../dev/acpica/components/utilities/utmutex.c | 2 +- .../dev/acpica/components/utilities/utnonansi.c | 4 +- .../dev/acpica/components/utilities/utobject.c | 2 +- .../dev/acpica/components/utilities/utosi.c | 2 +- .../dev/acpica/components/utilities/utownerid.c | 2 +- .../dev/acpica/components/utilities/utpredef.c | 2 +- .../dev/acpica/components/utilities/utresdecode.c | 2 +- .../dev/acpica/components/utilities/utresrc.c | 13 +- .../dev/acpica/components/utilities/utstate.c | 2 +- .../dev/acpica/components/utilities/utstring.c | 2 +- .../dev/acpica/components/utilities/utstrsuppt.c | 2 +- .../dev/acpica/components/utilities/utstrtoul64.c | 2 +- .../dev/acpica/components/utilities/uttrack.c | 2 +- .../dev/acpica/components/utilities/utuuid.c | 2 +- .../dev/acpica/components/utilities/utxface.c | 2 +- .../dev/acpica/components/utilities/utxferror.c | 2 +- .../dev/acpica/components/utilities/utxfinit.c | 2 +- .../dev/acpica/components/utilities/utxfmutex.c | 2 +- sys/contrib/dev/acpica/include/acapps.h | 4 +- sys/contrib/dev/acpica/include/acbuffer.h | 2 +- sys/contrib/dev/acpica/include/acclib.h | 2 +- sys/contrib/dev/acpica/include/accommon.h | 2 +- sys/contrib/dev/acpica/include/acconfig.h | 2 +- sys/contrib/dev/acpica/include/acconvert.h | 2 +- sys/contrib/dev/acpica/include/acdebug.h | 4 +- sys/contrib/dev/acpica/include/acdisasm.h | 48 +- sys/contrib/dev/acpica/include/acdispat.h | 2 +- sys/contrib/dev/acpica/include/acevents.h | 2 +- sys/contrib/dev/acpica/include/acexcep.h | 2 +- sys/contrib/dev/acpica/include/acglobal.h | 2 +- sys/contrib/dev/acpica/include/achware.h | 2 +- sys/contrib/dev/acpica/include/acinterp.h | 2 +- sys/contrib/dev/acpica/include/aclocal.h | 6 +- sys/contrib/dev/acpica/include/acmacros.h | 2 +- sys/contrib/dev/acpica/include/acnames.h | 2 +- sys/contrib/dev/acpica/include/acnamesp.h | 2 +- sys/contrib/dev/acpica/include/acobject.h | 2 +- sys/contrib/dev/acpica/include/acopcode.h | 2 +- sys/contrib/dev/acpica/include/acoutput.h | 2 +- sys/contrib/dev/acpica/include/acparser.h | 2 +- sys/contrib/dev/acpica/include/acpi.h | 2 +- sys/contrib/dev/acpica/include/acpiosxf.h | 2 +- sys/contrib/dev/acpica/include/acpixf.h | 4 +- sys/contrib/dev/acpica/include/acpredef.h | 2 +- sys/contrib/dev/acpica/include/acresrc.h | 2 +- sys/contrib/dev/acpica/include/acrestyp.h | 2 +- sys/contrib/dev/acpica/include/acstruct.h | 2 +- sys/contrib/dev/acpica/include/actables.h | 2 +- sys/contrib/dev/acpica/include/actbinfo.h | 28 +- sys/contrib/dev/acpica/include/actbl.h | 20 +- sys/contrib/dev/acpica/include/actbl1.h | 35 +- sys/contrib/dev/acpica/include/actbl2.h | 385 ++++++++++++++- sys/contrib/dev/acpica/include/actbl3.h | 4 +- sys/contrib/dev/acpica/include/actypes.h | 10 +- sys/contrib/dev/acpica/include/acutils.h | 2 +- sys/contrib/dev/acpica/include/acuuid.h | 2 +- sys/contrib/dev/acpica/include/amlcode.h | 2 +- sys/contrib/dev/acpica/include/amlresrc.h | 9 +- sys/contrib/dev/acpica/include/platform/acenv.h | 2 +- sys/contrib/dev/acpica/include/platform/acenvex.h | 2 +- .../dev/acpica/include/platform/acfreebsd.h | 2 +- sys/contrib/dev/acpica/include/platform/acgcc.h | 10 +- sys/contrib/dev/acpica/include/platform/acgccex.h | 2 +- .../acpica/os_specific/service_layers/osgendbg.c | 2 +- .../acpica/os_specific/service_layers/osunixxf.c | 2 +- 359 files changed, 2658 insertions(+), 458 deletions(-) diff --git a/sys/contrib/dev/acpica/changes.txt b/sys/contrib/dev/acpica/changes.txt index 5130ba82057d..435540b254f1 100644 --- a/sys/contrib/dev/acpica/changes.txt +++ b/sys/contrib/dev/acpica/changes.txt @@ -1,3 +1,19 @@ +---------------------------------------- +4 April 2025. Summary of changes for version 20250404: + +Major changes: + +Update all the copyright continuation year to 2025 in the license header of all files + +Add complete support for 3 new ACPI tables ? MRRM,ERDT and RIMT (Tony Luck & V L Sunil) + +Add a license file to the project which is a great improvement (Dionna Glaze) + +Update DMAR and TPM2 tables to support their latest versions (Alexey Neyman and Stuart Yoder) + +A few fixes including local cache allocation, FFixedHW Region, attribute packing, string vs. non-string char array, vsnprintf()etc. along with some comments, spelling errors and code alignment (multiple awesome contributors) + + ---------------------------------------- 12 December 2024. Summary of changes for version 20241212: diff --git a/sys/contrib/dev/acpica/common/acfileio.c b/sys/contrib/dev/acpica/common/acfileio.c index c8666a18384b..19274cb4bdd3 100644 --- a/sys/contrib/dev/acpica/common/acfileio.c +++ b/sys/contrib/dev/acpica/common/acfileio.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License diff --git a/sys/contrib/dev/acpica/common/acgetline.c b/sys/contrib/dev/acpica/common/acgetline.c index 6aa66412722f..2793f26077bb 100644 --- a/sys/contrib/dev/acpica/common/acgetline.c +++ b/sys/contrib/dev/acpica/common/acgetline.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License diff --git a/sys/contrib/dev/acpica/common/adfile.c b/sys/contrib/dev/acpica/common/adfile.c index 54c88ce149dc..f87b329d918d 100644 --- a/sys/contrib/dev/acpica/common/adfile.c +++ b/sys/contrib/dev/acpica/common/adfile.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License diff --git a/sys/contrib/dev/acpica/common/adisasm.c b/sys/contrib/dev/acpica/common/adisasm.c index c329093901f7..96cd6c7f5d3c 100644 --- a/sys/contrib/dev/acpica/common/adisasm.c +++ b/sys/contrib/dev/acpica/common/adisasm.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License @@ -458,7 +458,7 @@ AdDisassembleOneTable ( */ if (AcpiGbl_CaptureComments) { - strncpy (Table->Signature, AcpiGbl_TableSig, ACPI_NAMESEG_SIZE); + memcpy (Table->Signature, AcpiGbl_TableSig, ACPI_NAMESEG_SIZE); } #endif diff --git a/sys/contrib/dev/acpica/common/adwalk.c b/sys/contrib/dev/acpica/common/adwalk.c index bb6f7e21c08a..b7484315fe51 100644 --- a/sys/contrib/dev/acpica/common/adwalk.c +++ b/sys/contrib/dev/acpica/common/adwalk.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License diff --git a/sys/contrib/dev/acpica/common/ahids.c b/sys/contrib/dev/acpica/common/ahids.c index a50a4d51a2a3..07b69b45c641 100644 --- a/sys/contrib/dev/acpica/common/ahids.c +++ b/sys/contrib/dev/acpica/common/ahids.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License diff --git a/sys/contrib/dev/acpica/common/ahpredef.c b/sys/contrib/dev/acpica/common/ahpredef.c index e1e71b9c0c4d..e6c3f2758760 100644 --- a/sys/contrib/dev/acpica/common/ahpredef.c +++ b/sys/contrib/dev/acpica/common/ahpredef.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License diff --git a/sys/contrib/dev/acpica/common/ahtable.c b/sys/contrib/dev/acpica/common/ahtable.c index 7a95e5f3198d..898b2d09f609 100644 --- a/sys/contrib/dev/acpica/common/ahtable.c +++ b/sys/contrib/dev/acpica/common/ahtable.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License @@ -219,6 +219,7 @@ const AH_TABLE AcpiGbl_SupportedTables[] = {ACPI_SIG_DSDT, "Differentiated System Description Table (AML table)"}, {ACPI_SIG_ECDT, "Embedded Controller Boot Resources Table"}, {ACPI_SIG_EINJ, "Error Injection Table"}, + {ACPI_SIG_ERDT, "Enhanced Resource Director Technology Table"}, {ACPI_SIG_ERST, "Error Record Serialization Table"}, {ACPI_SIG_FACS, "Firmware ACPI Control Structure"}, {ACPI_SIG_FADT, "Fixed ACPI Description Table (FADT)"}, @@ -235,6 +236,7 @@ const AH_TABLE AcpiGbl_SupportedTables[] = {ACPI_SIG_MCHI, "Management Controller Host Interface Table"}, {ACPI_SIG_MPAM, "Memory System Resource Partitioning and Monitoring Table"}, {ACPI_SIG_MPST, "Memory Power State Table"}, + {ACPI_SIG_MRRM, "Memory Range and Region Mapping Table"}, {ACPI_SIG_MSCT, "Maximum System Characteristics Table"}, {ACPI_SIG_MSDM, "Microsoft Data Management Table"}, {ACPI_SIG_NFIT, "NVDIMM Firmware Interface Table"}, diff --git a/sys/contrib/dev/acpica/common/ahuuids.c b/sys/contrib/dev/acpica/common/ahuuids.c index cb29f05f1059..f7056fdf9363 100644 --- a/sys/contrib/dev/acpica/common/ahuuids.c +++ b/sys/contrib/dev/acpica/common/ahuuids.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License diff --git a/sys/contrib/dev/acpica/common/cmfsize.c b/sys/contrib/dev/acpica/common/cmfsize.c index 8b4b00909714..c6cedf9a0866 100644 --- a/sys/contrib/dev/acpica/common/cmfsize.c +++ b/sys/contrib/dev/acpica/common/cmfsize.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License diff --git a/sys/contrib/dev/acpica/common/dmextern.c b/sys/contrib/dev/acpica/common/dmextern.c index 3c5ba89a762f..d2eeffdfe02e 100644 --- a/sys/contrib/dev/acpica/common/dmextern.c +++ b/sys/contrib/dev/acpica/common/dmextern.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License diff --git a/sys/contrib/dev/acpica/common/dmrestag.c b/sys/contrib/dev/acpica/common/dmrestag.c index aca96acffcf4..8c7cc4b9ef7c 100644 --- a/sys/contrib/dev/acpica/common/dmrestag.c +++ b/sys/contrib/dev/acpica/common/dmrestag.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License @@ -894,7 +894,7 @@ static void AcpiDmUpdateResourceName ( ACPI_NAMESPACE_NODE *ResourceNode) { - char Name[ACPI_NAMESEG_SIZE]; + char Name[ACPI_NAMESEG_SIZE] ACPI_NONSTRING; /* Ignore if a unique name has already been assigned */ diff --git a/sys/contrib/dev/acpica/common/dmswitch.c b/sys/contrib/dev/acpica/common/dmswitch.c index a2f20bab281a..8d5ca2e016a7 100644 --- a/sys/contrib/dev/acpica/common/dmswitch.c +++ b/sys/contrib/dev/acpica/common/dmswitch.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License diff --git a/sys/contrib/dev/acpica/common/dmtable.c b/sys/contrib/dev/acpica/common/dmtable.c index c40abb20703a..fcff97a304ae 100644 --- a/sys/contrib/dev/acpica/common/dmtable.c +++ b/sys/contrib/dev/acpica/common/dmtable.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License @@ -272,6 +272,7 @@ static const char *AcpiDmDmarSubnames[] = "Remapping Hardware Static Affinity", "ACPI Namespace Device Declaration", "SoC Integrated Address Translation Cache", + "SoC Integrated Device Property", "Unknown Subtable Type" /* Reserved */ }; @@ -312,6 +313,22 @@ static const char *AcpiDmEinjInstructions[] = "Unknown Instruction" }; +static const char *AcpiDmErdtSubnames[] = +{ + "RMDD", + "CACD", + "DACD", + "CMRC", + "MMRC", + "MARC", + "CARC", + "CMRD", + "IBRD", + "IBAD", + "CARD", + "RESERVED" +}; + static const char *AcpiDmErstActions[] = { "Begin Write Operation", @@ -660,6 +677,7 @@ const ACPI_DMTABLE_DATA AcpiDmTableData[] = {ACPI_SIG_DRTM, NULL, AcpiDmDumpDrtm, DtCompileDrtm, TemplateDrtm}, {ACPI_SIG_ECDT, AcpiDmTableInfoEcdt, NULL, NULL, TemplateEcdt}, {ACPI_SIG_EINJ, NULL, AcpiDmDumpEinj, DtCompileEinj, TemplateEinj}, + {ACPI_SIG_ERDT, NULL, AcpiDmDumpErdt, DtCompileErdt, TemplateErdt}, {ACPI_SIG_ERST, NULL, AcpiDmDumpErst, DtCompileErst, TemplateErst}, {ACPI_SIG_FADT, NULL, AcpiDmDumpFadt, DtCompileFadt, TemplateFadt}, {ACPI_SIG_FPDT, NULL, AcpiDmDumpFpdt, DtCompileFpdt, TemplateFpdt}, @@ -675,6 +693,7 @@ const ACPI_DMTABLE_DATA AcpiDmTableData[] = {ACPI_SIG_MCHI, AcpiDmTableInfoMchi, NULL, NULL, TemplateMchi}, {ACPI_SIG_MPAM, NULL, AcpiDmDumpMpam, DtCompileMpam, TemplateMpam}, {ACPI_SIG_MPST, AcpiDmTableInfoMpst, AcpiDmDumpMpst, DtCompileMpst, TemplateMpst}, + {ACPI_SIG_MRRM, NULL, AcpiDmDumpMrrm, DtCompileMrrm, TemplateMrrm}, {ACPI_SIG_MSCT, NULL, AcpiDmDumpMsct, DtCompileMsct, TemplateMsct}, {ACPI_SIG_MSDM, NULL, AcpiDmDumpSlic, DtCompileSlic, TemplateMsdm}, {ACPI_SIG_NFIT, AcpiDmTableInfoNfit, AcpiDmDumpNfit, DtCompileNfit, TemplateNfit}, @@ -689,6 +708,7 @@ const ACPI_DMTABLE_DATA AcpiDmTableData[] = {ACPI_SIG_RAS2, AcpiDmTableInfoRas2, AcpiDmDumpRas2, DtCompileRas2, TemplateRas2}, {ACPI_SIG_RGRT, NULL, AcpiDmDumpRgrt, DtCompileRgrt, TemplateRgrt}, {ACPI_SIG_RHCT, NULL, AcpiDmDumpRhct, DtCompileRhct, TemplateRhct}, + {ACPI_SIG_RIMT, NULL, AcpiDmDumpRimt, DtCompileRimt, TemplateRimt}, {ACPI_SIG_RSDT, NULL, AcpiDmDumpRsdt, DtCompileRsdt, TemplateRsdt}, {ACPI_SIG_S3PT, NULL, NULL, NULL, TemplateS3pt}, {ACPI_SIG_SBST, AcpiDmTableInfoSbst, NULL, NULL, TemplateSbst}, @@ -1132,6 +1152,7 @@ AcpiDmDumpTable ( case ACPI_DMT_ASPT: case ACPI_DMT_UINT16: case ACPI_DMT_DMAR: + case ACPI_DMT_ERDT: case ACPI_DMT_HEST: case ACPI_DMT_HMAT: case ACPI_DMT_NFIT: @@ -1185,6 +1206,11 @@ AcpiDmDumpTable ( ByteLength = 10; break; + case ACPI_DMT_BUF11: + + ByteLength = 11; + break; + case ACPI_DMT_BUF12: ByteLength = 12; @@ -1201,6 +1227,16 @@ AcpiDmDumpTable ( ByteLength = 18; break; + case ACPI_DMT_BUF24: + + ByteLength = 24; + break; + + case ACPI_DMT_BUF26: + + ByteLength = 26; + break; + case ACPI_DMT_BUF32: ByteLength = 32; @@ -1419,9 +1455,12 @@ AcpiDmDumpTable ( case ACPI_DMT_BUF7: case ACPI_DMT_BUF10: + case ACPI_DMT_BUF11: case ACPI_DMT_BUF12: case ACPI_DMT_BUF16: case ACPI_DMT_BUF18: + case ACPI_DMT_BUF24: + case ACPI_DMT_BUF26: case ACPI_DMT_BUF32: case ACPI_DMT_BUF112: case ACPI_DMT_BUF128: @@ -1767,6 +1806,20 @@ AcpiDmDumpTable ( AcpiDmErstActions[Temp8]); break; + case ACPI_DMT_ERDT: + + /* ERDT subtable types */ + + Temp16 = *Target; + if (Temp16 > ACPI_ERDT_TYPE_RESERVED) + { + Temp16 = ACPI_ERDT_TYPE_RESERVED; + } + + AcpiOsPrintf (UINT8_FORMAT, *Target, + AcpiDmErdtSubnames[Temp16]); + break; + case ACPI_DMT_ERSTINST: /* ERST Instruction types */ diff --git a/sys/contrib/dev/acpica/common/dmtables.c b/sys/contrib/dev/acpica/common/dmtables.c index 227d6ae335ed..c72f6451154c 100644 --- a/sys/contrib/dev/acpica/common/dmtables.c +++ b/sys/contrib/dev/acpica/common/dmtables.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License diff --git a/sys/contrib/dev/acpica/common/dmtbdump.c b/sys/contrib/dev/acpica/common/dmtbdump.c index 47173d8e31fc..aa8b5aa76892 100644 --- a/sys/contrib/dev/acpica/common/dmtbdump.c +++ b/sys/contrib/dev/acpica/common/dmtbdump.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License diff --git a/sys/contrib/dev/acpica/common/dmtbdump1.c b/sys/contrib/dev/acpica/common/dmtbdump1.c index edf366039edb..3453ed479a22 100644 --- a/sys/contrib/dev/acpica/common/dmtbdump1.c +++ b/sys/contrib/dev/acpica/common/dmtbdump1.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License @@ -1480,6 +1480,12 @@ AcpiDmDumpDmar ( ScopeOffset = sizeof (ACPI_DMAR_SATC); break; + case ACPI_DMAR_TYPE_SIDP: + + InfoTable = AcpiDmTableInfoDmar6; + ScopeOffset = sizeof (ACPI_DMAR_SIDP); + break; + default: AcpiOsPrintf ("\n**** Unknown DMAR subtable type 0x%X\n\n", @@ -1717,6 +1723,233 @@ AcpiDmDumpEinj ( } +/******************************************************************************* + * + * FUNCTION: AcpiDmDumpErdt + * + * PARAMETERS: Table - A ERDT table + * + * RETURN: None + * + * DESCRIPTION: Format the contents of a ERDT. This table type consists + * of an open-ended number of subtables. + * + ******************************************************************************/ + +void +AcpiDmDumpErdt ( + ACPI_TABLE_HEADER *Table) +{ + ACPI_STATUS Status; + ACPI_SUBTBL_HDR_16 *Subtable, *Subsubtable; + ACPI_ERDT_DACD_PATHS *ScopeTable; + UINT32 Offset = sizeof (ACPI_TABLE_ERDT); + UINT32 Suboffset; + UINT32 ScopeOffset; + UINT32 SubsubtableLength = 0; + ACPI_DMTABLE_INFO *InfoTable, *TrailEntries, *DacdEntries; + UINT32 NumTrailers = 0; + + /* Main table */ + + Status = AcpiDmDumpTable (Table->Length, 0, Table, 0, AcpiDmTableInfoErdt); + if (ACPI_FAILURE (Status)) + { + return; + } + + /* Subtables */ + Subtable = ACPI_ADD_PTR (ACPI_SUBTBL_HDR_16, Table, Offset); + while (Offset < Table->Length) + { + + /* Dump common header */ + + AcpiOsPrintf ("\n"); + Status = AcpiDmDumpTable (Table->Length, Offset, Subtable, + Subtable->Length, AcpiDmTableInfoErdtHdr); + if (ACPI_FAILURE (Status)) + { + return; + } + + AcpiOsPrintf ("\n"); + Status = AcpiDmDumpTable (Table->Length, Offset, Subtable, + Subtable->Length, AcpiDmTableInfoErdtRmdd); + if (ACPI_FAILURE (Status)) + { + return; + } + + /* Subtables of this RMDD table */ + + Suboffset = Offset + sizeof(ACPI_ERDT_RMDD); + Subsubtable = ACPI_ADD_PTR (ACPI_SUBTBL_HDR_16, Table, Suboffset); + while (Suboffset < Offset + Subtable->Length) + { + AcpiOsPrintf ("\n"); + + TrailEntries = NULL; + DacdEntries = NULL; + switch (Subsubtable->Type) + { + case ACPI_ERDT_TYPE_CACD: + InfoTable = AcpiDmTableInfoErdtCacd; + TrailEntries = AcpiDmTableInfoErdtCacdX2apic; + SubsubtableLength = sizeof(ACPI_ERDT_CACD); + break; + + case ACPI_ERDT_TYPE_DACD: + InfoTable = AcpiDmTableInfoErdtDacd; + DacdEntries = AcpiDmTableInfoErdtDacdScope; + SubsubtableLength = sizeof(ACPI_ERDT_DACD); + break; + + case ACPI_ERDT_TYPE_CMRC: + InfoTable = AcpiDmTableInfoErdtCmrc; + break; + + case ACPI_ERDT_TYPE_MMRC: + InfoTable = AcpiDmTableInfoErdtMmrc; + TrailEntries = AcpiDmTableInfoErdtMmrcCorrFactor; + SubsubtableLength = sizeof(ACPI_ERDT_MMRC); + break; + + case ACPI_ERDT_TYPE_MARC: + InfoTable = AcpiDmTableInfoErdtMarc; + break; + + case ACPI_ERDT_TYPE_CARC: + InfoTable = AcpiDmTableInfoErdtCarc; + break; + + case ACPI_ERDT_TYPE_CMRD: + InfoTable = AcpiDmTableInfoErdtCmrd; + break; + + case ACPI_ERDT_TYPE_IBRD: + InfoTable = AcpiDmTableInfoErdtIbrd; + TrailEntries = AcpiDmTableInfoErdtIbrdCorrFactor; + SubsubtableLength = sizeof(ACPI_ERDT_IBRD); + break; + + case ACPI_ERDT_TYPE_IBAD: + InfoTable = AcpiDmTableInfoErdtIbad; + break; + + case ACPI_ERDT_TYPE_CARD: + InfoTable = AcpiDmTableInfoErdtCard; + break; + + default: + AcpiOsPrintf ("\n**** Unknown RMDD subtable type 0x%X\n", + Subsubtable->Type); + + /* Attempt to continue */ + + if (!Subsubtable->Length) + { + AcpiOsPrintf ("Invalid zero length subtable\n"); + return; + } + goto NextSubsubtable; + } + + /* Dump subtable header */ + + Status = AcpiDmDumpTable (Table->Length, Suboffset, Subsubtable, + Subsubtable->Length, AcpiDmTableInfoErdtHdr); + if (ACPI_FAILURE (Status)) + { + return; + } + + /* Dump subtable body */ + + Status = AcpiDmDumpTable (Table->Length, Suboffset, Subsubtable, + Subsubtable->Length, InfoTable); + if (ACPI_FAILURE (Status)) + { + return; + } + + /* CACD, MMRC, and IBRD subtables have simple flex array at end */ + + if (TrailEntries) + { + NumTrailers = 0; + while (NumTrailers < Subsubtable->Length - SubsubtableLength) + { + + /* Dump one flex array element */ + + Status = AcpiDmDumpTable (Table->Length, Suboffset + + SubsubtableLength + NumTrailers, + ACPI_ADD_PTR (ACPI_SUBTBL_HDR_16, Subsubtable, + SubsubtableLength + NumTrailers), + sizeof(UINT32), TrailEntries); + if (ACPI_FAILURE (Status)) + { + return; + } + NumTrailers += sizeof(UINT32); + } + } + + /* DACD subtable has flex array of device agent structures */ + + if (DacdEntries) { + ScopeOffset = Suboffset + SubsubtableLength; + ScopeTable = ACPI_ADD_PTR (ACPI_ERDT_DACD_PATHS, + Subsubtable, SubsubtableLength); + while (ScopeOffset < Suboffset + Subsubtable->Length) + { + /* Dump one device agent structure */ + + AcpiOsPrintf ("\n"); + Status = AcpiDmDumpTable (Table->Length, ScopeOffset, + ScopeTable, ScopeTable->Header.Length, DacdEntries); + if (ACPI_FAILURE (Status)) + { + return; + } *** 7267 LINES SKIPPED *** From nobody Fri Apr 11 03:50:18 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYjQ05393z5sSg1 for ; Fri, 11 Apr 2025 03:50:32 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) (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 4ZYjQ03JRYz4FNB for ; Fri, 11 Apr 2025 03:50:32 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-43690d4605dso12072205e9.0 for ; Thu, 10 Apr 2025 20:50:32 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744343431; x=1744948231; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=l6rSRjN/1n5hCjucw3m8n0bQ/K1cVrCy5zpZCO7B0BU=; b=qP860+esZin6v0vrn798cPomz0RYwUN18XWqBD5Po5lUxt0Ls9jFDoYAX2YL81+z3H /C9gNxa/jCQPeOp0OZwuR+foNfJJTDRDpxB9oAIY9JKxtHcK/FYvpeKzr3Rivl2NJsf+ CTWsm+kd50qRfHiSnFULHYIf7QL/1hjizCvqqrqrA3V6o3y0v9MytFhtANpLoBr0bUxm AZsWL1z3eTrXrP8FXVMLngI4NgV0TSqYbk+B/6zrFy8C1VQH0k7XWs0B4Fs2v9WX7JTh KDwF/gBteKISqavfTUFKekDG5uIwQuoYgaWWDFsDK3340UZbI8LIgrF/hcuTVFDK/VKG C8JQ== X-Forwarded-Encrypted: i=1; AJvYcCVACO3QHw7lrh1+jpfpJ9Dw92GlyGUH6bmChI0gM3S2RWF4CwE9bNxeJ9uuh3NNsHK/w2ZKW5gFzmyTUmTHdFAypp5JTw==@freebsd.org X-Gm-Message-State: AOJu0YwzrAvooIU9S+Xw98eu3Ri1IiNo4mPx9VSOSM3dBCKHo7gfv0KU hmI3sX7HHfDRHYuJaYZqYq+XqhgUsC3JlelURfViNtK9TKBOpKpNohkLCbpevggBgKCv18DGbJp K X-Gm-Gg: ASbGncsj1E9IxLfElUnmUI8xkRccOMVjoPvzCTkS8RTukZ2WTexzGPwsC9X2mv/r9X9 y8GCTCTyhSAi105JDBIBbN2DN110bo/MZOIW7914IcKyaA/KbShw7SJnwm3sz/vJsYnHA0hYR/n feg0viKbD0CPyi7MbLEmQTSwhxnNieMymTXqyXTqYr82nr1cT4bOLLheLPBUSF47rJaPJg4DVXf 1T7FxW481Xz/BJgru/koaCYcsX+nLjILPZLCu89CN4PsnxuNrZ3ddq0cwi0UkqLxwyczrca1JAM 06qjmlDMz7UjxzNTgb9AX/P+jx2o/9PBo++VJjTwT57Oqi08b45vMNE= X-Google-Smtp-Source: AGHT+IGE65PD5uwy95lfpF4bjAde9E4aHWg9fJeYCCp7TPaxMmRI7f45bi8r6JYoVboJh+IZnMZYgw== X-Received: by 2002:a05:6000:4027:b0:39c:2688:6edd with SMTP id ffacd0b85a97d-39ea51f5b3emr670945f8f.15.1744343430556; Thu, 10 Apr 2025 20:50:30 -0700 (PDT) Received: from smtpclient.apple ([131.111.5.201]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39eae9640e3sm752404f8f.12.2025.04.10.20.50.29 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 10 Apr 2025 20:50:29 -0700 (PDT) Content-Type: text/plain; charset=us-ascii List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.300.87.4.3\)) Subject: Re: git: 58308fadece2 - main - Import ACPICA 20250404 From: Jessica Clarke In-Reply-To: <202504110341.53B3fTLQ090967@gitrepo.freebsd.org> Date: Fri, 11 Apr 2025 04:50:18 +0100 Cc: "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <344EBC2C-170D-4CEE-A15B-E67EA861E216@freebsd.org> References: <202504110341.53B3fTLQ090967@gitrepo.freebsd.org> To: Jung-uk Kim X-Mailer: Apple Mail (2.3826.300.87.4.3) X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated 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-Queue-Id: 4ZYjQ03JRYz4FNB X-Spamd-Bar: ---- On 11 Apr 2025, at 04:41, Jung-uk Kim wrote: >=20 > The branch main has been updated by jkim: >=20 > URL: = https://cgit.FreeBSD.org/src/commit/?id=3D58308fadece25ae4c12bd2f4dce3d73d= 9c23be43 >=20 > commit 58308fadece25ae4c12bd2f4dce3d73d9c23be43 > Author: Jung-uk Kim > AuthorDate: 2025-04-10 03:51:28 +0000 > Commit: Jung-uk Kim > CommitDate: 2025-04-11 03:40:07 +0000 >=20 > Import ACPICA 20250404 >=20 > (cherry picked from commit = 97a7606d897edfa3089cb04eea70096a1f9cf734) Did you really mean to cherry-pick rather than merge the vendor import? Jess From nobody Fri Apr 11 04:05:18 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYjl24vVRz5sTTZ; Fri, 11 Apr 2025 04:05: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYjl24Qtgz4Gck; Fri, 11 Apr 2025 04:05:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744344318; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QH0+E0ez3Q4Xz53O/B2x5G107EtZ+a+7NpVq7oezQG8=; b=bjqvZla0vZy6UrISUD2Lz3junDqQb7d6F2olS8iJDuKPmVnW86JolWoMJu9do33ZQ+CyVb 8XOUKZ+cNWpUjl7i14cAyhe0CdMhwAC57+4q9xbKOENRchBkU09GacvDYhd3nZAaiKgP5j 9Pea4sn5ZmNem/04ZATOOEGO6OQljr4mYdv9l+pC2epZAWPyjFEvoRJI13z+u1arz6luCH sTc6Pl0pMTxNbkAGkq++pZoA748QSbJctcHOKlvWcPK7V+pKIjyhSR1jG+CAHSsanenDL3 S65HEvFIaw/gHAGRUI8K40EaZlpzqXzIJP6d5MgD49zjaAeNwo3PpvsJsTJogw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744344318; a=rsa-sha256; cv=none; b=ErtFFN9q13JO7Q0mfgbTFH4pmigCcekcnXZ/dLzaCYIFp/ablZ17UNNLDyE972ArhbjU6u R9n0zHs7At9LinE1avdRI2+ks2HbNApuTMIIDnRWPC3zvcA540pZxr3uMk8vLfw6jsIcFC rFTBXxv/UPjAvuE1S+eUs5Yq5kRLhizz9ojcMNDl4ELtjkLwWpp4BgzNmMUruVjQkIebIN 3lYCpnwRdQ+ZLe68tjq1rtiVEV5EQ+U7KMzf6ac/MHr6i72j+9bs0Me3jjQIRGjHr8+y1g fXjwS6Rhg+FOpiQss51bCuRhkOT/I7U0bTThl5F9nOm6hkfEW8n7DyfnLj4ovA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744344318; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QH0+E0ez3Q4Xz53O/B2x5G107EtZ+a+7NpVq7oezQG8=; b=ep8JU3WXi03PJ1VVuLd0CzgB9avAtnYP17rvKE4HsZSdAuxQPSjry9OQ3YjXGxEsMm7Kfs KYEzg4quOgH+m/thZ8uHCvVnVJoi+dTI7z+3n0ZD7Cvqk+baIuHGOWsLY0+iyH2g4lrwMu 3eb2WiUAtAINNxffBkwJe1v0gcLuJLlY6rxUgpYiKOXzVVpos+G9LOXipv4ZSiBWIcfC0T gnRWuJ19pePZ1MnfVy4Mcdqnad+xLpCC5zxDHXNQl40NWn+3C/Xv/y8ueYa3+C1JGiiof9 S0qGBxRL66knyGd5PcXNRTf/NDLIPqa1mut77UiS6ROgtHYuIKiJv0zK+mjZgA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYjl23bxtz1y5; Fri, 11 Apr 2025 04:05:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53B45IRK033233; Fri, 11 Apr 2025 04:05:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53B45IRW033230; Fri, 11 Apr 2025 04:05:18 GMT (envelope-from git) Date: Fri, 11 Apr 2025 04:05:18 GMT Message-Id: <202504110405.53B45IRW033230@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ravi Pokala Subject: git: 3adae4f27d60 - main - loader: Add the CPU identification string to the data which is visible in the bootloader. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rpokala X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3adae4f27d600f0be7904eb1bb30e79d90386793 Auto-Submitted: auto-generated The branch main has been updated by rpokala: URL: https://cgit.FreeBSD.org/src/commit/?id=3adae4f27d600f0be7904eb1bb30e79d90386793 commit 3adae4f27d600f0be7904eb1bb30e79d90386793 Author: Ravi Pokala AuthorDate: 2025-04-08 06:04:31 +0000 Commit: Ravi Pokala CommitDate: 2025-04-11 04:01:55 +0000 loader: Add the CPU identification string to the data which is visible in the bootloader. Reviewed by: imp MFC after: 1 week Sponsored by: Vdura Differential Revision: https://reviews.freebsd.org/D49708 --- stand/libsa/smbios.c | 1 + 1 file changed, 1 insertion(+) diff --git a/stand/libsa/smbios.c b/stand/libsa/smbios.c index 618c8a1052ec..32cd198a9537 100644 --- a/stand/libsa/smbios.c +++ b/stand/libsa/smbios.c @@ -461,6 +461,7 @@ smbios_parse_table(const caddr_t addr) break; case 4: /* 3.3.5 Processor Information (Type 4) */ + smbios_setenv("smbios.processor.version", addr, 0x10); /* * Offset 18h: Processor Status * From nobody Fri Apr 11 07:41:31 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYpXg711gz5smN5; Fri, 11 Apr 2025 07:41:39 +0000 (UTC) (envelope-from steffen@sdaoden.eu) Received: from sdaoden.eu (sdaoden.eu [217.144.132.164]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYpXg430sz3L2c; Fri, 11 Apr 2025 07:41:39 +0000 (UTC) (envelope-from steffen@sdaoden.eu) Authentication-Results: mx1.freebsd.org; none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sdaoden.eu; s=citron; t=1744357292; x=1745023958; h=date:author:from:to:cc:subject: message-id:in-reply-to:references:mail-followup-to:openpgp:blahblahblah: mime-version:content-type:content-transfer-encoding:author:from:subject: date:to:cc:resent-author:resent-date:resent-from:resent-sender:resent-to: resent-cc:resent-reply-to:resent-message-id:in-reply-to:references: mime-version:content-type:content-transfer-encoding:content-disposition: content-id:content-description:message-id:mail-followup-to:openpgp: blahblahblah; bh=ehdt4wHQXubMRowD/yAvas5ncr2S08bVHUoqERkl0rs=; b=P5b5m87zZRfiPd+r4MVA8iRLu/sSkaQd42LnChKIRY431NH7QnCCo/gzHl1DgyeHQND97kKr 0IE1FBsrFYrYub1KsxPfZBPd8bWqXukud36W2By6gxBTbvBVei8bLOjuM5M05v2TFXBkOoyhjr 6uiM4RabXX8WX8Mj5Wy/VGwAWvA5xl0cUO/oT0ulPhfIKLHwvAfZIm/4KU60qINc9oFK+Etpuh xumeim3sil4Q84RR5VLvGo3zFzd0MfASagLAydfurnlgHrpjZ9BR44z8nvLSinvg5Adtz1FEnL gNwQ2FvruVfDuCYgDbBtxkCU8K1soca2UfJ3cHF3Biqxc6nw== DKIM-Signature: v=1; a=adaed25519-sha256; c=relaxed/relaxed; d=sdaoden.eu; s=orange; t=1744357292; x=1745023958; h=date:author:from:to:cc:subject: message-id:in-reply-to:references:mail-followup-to:openpgp:blahblahblah: mime-version:content-type:content-transfer-encoding:author:from:subject: date:to:cc:resent-author:resent-date:resent-from:resent-sender:resent-to: resent-cc:resent-reply-to:resent-message-id:in-reply-to:references: mime-version:content-type:content-transfer-encoding:content-disposition: content-id:content-description:message-id:mail-followup-to:openpgp: blahblahblah; bh=ehdt4wHQXubMRowD/yAvas5ncr2S08bVHUoqERkl0rs=; b=WEMcT+loemcRkX25FRE2JWEWq2WvKg2aNXyjSU2TbqmjzwJzPuiuVQgpmdRtp3uKYnc+2ruv ck4fwJ43EsfZBA== Date: Fri, 11 Apr 2025 09:41:31 +0200 Author: Steffen Nurpmeso From: Steffen Nurpmeso To: Bojan =?utf-8?Q?Novkovi=C4=87?= Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: b74a756a9f53 - main - collate: Add support for equivalence classes and collating symbols Message-ID: <20250411074131.vc0pHU3P@steffen%sdaoden.eu> In-Reply-To: <202504100944.53A9irCi077659@gitrepo.freebsd.org> References: <202504100944.53A9irCi077659@gitrepo.freebsd.org> Mail-Followup-To: Bojan =?utf-8?Q?Novkovi=C4=87?= , src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org User-Agent: s-nail v14.9.25-644-g3d211afba7-dirty OpenPGP: id=EE19E1C1F2F7054F8D3954D8308964B51883A0DD; url=https://ftp.sdaoden.eu/steffen.asc; preference=signencrypt BlahBlahBlah: Any stupid boy can crush a beetle. But all the professors in the world can make no bugs. List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15987, ipnet:217.144.128.0/20, country:DE] X-Rspamd-Queue-Id: 4ZYpXg430sz3L2c X-Spamd-Bar: ---- Bojan Novkovi=C4=87 wrote in <202504100944.53A9irCi077659@gitrepo.freebsd.org>: ... |URL: https://cgit.FreeBSD.org/src/commit/?id=3Db74a756a9f537c6da41d721075= f\ |69216160a08a6 ... | collate: Add support for equivalence classes and collating symbols ... Wow. --steffen | |Der Kragenbaer, The moon bear, |der holt sich munter he cheerfully and one by one |einen nach dem anderen runter wa.ks himself off |(By Robert Gernhardt) From nobody Fri Apr 11 08:15:07 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYqHH3Plfz5spYK; Fri, 11 Apr 2025 08:15: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYqHH2TJFz3N3L; Fri, 11 Apr 2025 08:15:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744359307; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OhKpCkiiS+qMuElANXesdvB3/f4hBKao9hH7FZ/OZuc=; b=P3eT6q+ARao4Ppm30fL6K8bmU9E+NBR0EnKbErI7UKrbtddLxpxvzOuvQpDreUCl8xLfO4 karYzT0S4Q03HMhN/FQxovq8IuTNcCgu1BlKpwDPmPY0GVI+rACI3b3yjbxT1mSr/im55t YZdYRCBoEl16frXd3ExDepYm73dhDJ9lgykfJ6E5kwUrBqZVXP4E2wOtzVWjsHYsNf9mgC XGNX/LKp2zGoBggvLqIfOPvtRjJqRj/AoE3pMk4bObkostJRRYpmmFJaDfK3Cycrcmn+Yf bccxkqeouEkabXjTUVq9q8RQnHIn1QQXQsr8VVMxVgOMpRjmGqymTt5X5kw7tQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744359307; a=rsa-sha256; cv=none; b=bOtB4YoHKE65sfWrgKyK3hn7GrG73S9iyG5xvgLRyJ0f17FFpRAFvmV18MFmZ9CfGGTV2i qo05W5sIck6xDxiU/cRLpAlSUpYXXd2aNPhladoVJ5vmPdqiLwvabecEL2QVdqKdBtOY9x Vpcjn3W0vJXx5JJAj0B1ukw6rx8UM2iA6A/gg+13kO4U2+BaouNfpVnQYcBxwUhRn86sTe WYDFkiR6oAHDzSB0ZjnP+jtlrCSSkm9Qlt5Zz0lvJi6e4iZpU1Zhx+Y8QmWkFYHygyL8f2 ajk0IGyMNbXEbqbA5z6o1XeL+aMfasLNfICo+/ODAw0dF9oqA7/W6gJFcP3OfQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744359307; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OhKpCkiiS+qMuElANXesdvB3/f4hBKao9hH7FZ/OZuc=; b=J77c3XzENOlOeEwxYy0LJKYAqRO8Fma1Sl7t9aQkE6yWm685fQeLTezEjBhnF5JWxXmnJX saDfHOcpmMAScmQ4fIkyUVETJw3PT9D33VIj/wdvltDNL24orhDOnfxE3CvT71qmNq7ebq +A5KcY7lmnQoYmuBgfb5N+tQLSDHCSAw+B2TR6LWzxQ0lrqqMT3rOx2SjB9hyyPCnQiWSq 7wczoV/V9R2srIhZiN2zKXe+cgSL1jhAmB6l1+B+NjebyldUxBJw08Ic0TqaewtYzwIdVI 4ObZzmk3PVII28tQeR2yBEH5sh2O/8abuPwQdW2yQkJZDNZ0aoTrcAwX+z8NTQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYqHH0zFPz8NJ; Fri, 11 Apr 2025 08:15:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53B8F76M098954; Fri, 11 Apr 2025 08:15:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53B8F7xn098951; Fri, 11 Apr 2025 08:15:07 GMT (envelope-from git) Date: Fri, 11 Apr 2025 08:15:07 GMT Message-Id: <202504110815.53B8F7xn098951@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Li-Wen Hsu Subject: git: b2f4d9b67f31 - main - bus.h: Fix a typo in SPDX List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: lwhsu X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b2f4d9b67f317f31deeba62cf448d295c29b3f07 Auto-Submitted: auto-generated The branch main has been updated by lwhsu: URL: https://cgit.FreeBSD.org/src/commit/?id=b2f4d9b67f317f31deeba62cf448d295c29b3f07 commit b2f4d9b67f317f31deeba62cf448d295c29b3f07 Author: Li-Wen Hsu AuthorDate: 2025-04-11 08:14:11 +0000 Commit: Li-Wen Hsu CommitDate: 2025-04-11 08:14:11 +0000 bus.h: Fix a typo in SPDX Sponsored by: The FreeBSD Foundation --- sys/x86/include/bus.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/x86/include/bus.h b/sys/x86/include/bus.h index 8f9f48b67157..5e9f11ad4f95 100644 --- a/sys/x86/include/bus.h +++ b/sys/x86/include/bus.h @@ -1,5 +1,5 @@ /*- - * SPDX-License-Identifier: BSD-3-Clause AND BSD-2-ClauseE + * SPDX-License-Identifier: BSD-3-Clause AND BSD-2-Clause * * Copyright (c) KATO Takenori, 1999. * From nobody Fri Apr 11 13:52:52 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYyn070fVz5s3XV; Fri, 11 Apr 2025 13:52: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYyn06JWjz40Gb; Fri, 11 Apr 2025 13:52:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744379572; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V1M5lyIdIGmKyRcWEcmsp8M0jMAi3eXxbE7C8bkUcew=; b=ZYMe9Y+uOqI1aY5fHO/q5wih8NIIk/tJoOoTx+uDj5JHQXDk5w35iI2bTEFjZxZK6WI3Qk pDJyAvf/4Xj2tWa+70ltKjgoPSgtLHZthFqfe8ricwKrclMn0X3W9X5vrXsOCsoywzXumd 7+mAstaUxM+oI7NWJL+ju3jlBvH/RzSBLqys6OU1rUGQQHsfvp6LtvujVvREIL5tN0mO67 y6dYr9s8/luWU1L5kCELpoO6R3PJ/xfdQf88wg98jJRqKO12El79FgdNu4wseSWh2b7sPT hc62XPQ9Tpmrwv4ZUm343bL5/YwpN/DBiN2pwLrl+xpsMT/oaTKAcvb79nvnjQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744379572; a=rsa-sha256; cv=none; b=hGDsM6CEhVrXFwELkVg7+eEs7rGhGNcpVM7Dg5dsgcMMxX+d7rQ8TAy/5szOpOnR7yB6kB tz+b9EOHy+6xQlEi1bW83EC88obgb0cFGkyLADOwkAB7TQnVO6B/pdfMSYaLMhHfns268W igKtdq9lv93Kct6GDPwcT/uVDwDWEEDez66rOcp3O6xuEofgppykZ5gVPeFkvQ5Lczu8bT 5OxldLB8XVTQAPH1cOab0OT4YHnczD3e5QaX8yR/5awl62FkAofGj6PZ+qUZCubv0bQcWM q/Wo98Fh0/2+11bRXP+sPYoW7WoPgu48PFaqMkhfGG3Nnv5/fLB977cOrAyZ3Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744379572; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V1M5lyIdIGmKyRcWEcmsp8M0jMAi3eXxbE7C8bkUcew=; b=GI9UkFxnxD2POj/hXZaDWPFNFmQa7tnEpl1HeN4iuBoSCwe8Ht776TbDKTu8j+7JKtbspZ jdxDMfV34o4TJqC7h1aejl/SS8ow+rVZpqT7ZdzKfhWVqJBC/PvLtjasBciLVCe8bPzvlK IEpFOpU2ws/knzx4ihzm+R5u1r2+46h956KkXvrrKNWzOFwlS7PlkxoqUyzNOEQEDRkM+0 WdSkpxRy0IWoq9kriPBaIa1DahSp4SWQWxg9UzPzDT66GtvdY72kQcn4oIVQGdg+OIYJdk l57QaBqWPNWh3d3w6OOv5bG8bd1s8k23AYzWSJ56JPRPuO1+pF02IBNA9Kul2Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYyn05nVkzc71; Fri, 11 Apr 2025 13:52:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BDqqNp033773; Fri, 11 Apr 2025 13:52:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BDqqCQ033769; Fri, 11 Apr 2025 13:52:52 GMT (envelope-from git) Date: Fri, 11 Apr 2025 13:52:52 GMT Message-Id: <202504111352.53BDqqCQ033769@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 65eaf726201c - main - netlink: Move static arrays of parsers into tests that use them List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 65eaf726201cd81ecbc17b266786a042bccdf473 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=65eaf726201cd81ecbc17b266786a042bccdf473 commit 65eaf726201cd81ecbc17b266786a042bccdf473 Author: John Baldwin AuthorDate: 2025-04-11 01:30:34 +0000 Commit: John Baldwin CommitDate: 2025-04-11 13:52:39 +0000 netlink: Move static arrays of parsers into tests that use them These are not documented as part of the API in the manpages and raise warnings on GCC in the test-includes stage. Reported by: -Wunused-variable --- sys/netlink/netlink_snl.h | 5 ----- sys/netlink/netlink_snl_generic.h | 4 ---- sys/netlink/netlink_snl_route_parsers.h | 7 ------- tests/sys/netlink/test_snl.c | 12 ++++++++++++ tests/sys/netlink/test_snl_generic.c | 4 ++++ 5 files changed, 16 insertions(+), 16 deletions(-) diff --git a/sys/netlink/netlink_snl.h b/sys/netlink/netlink_snl.h index faaeebe52eac..586716776bc5 100644 --- a/sys/netlink/netlink_snl.h +++ b/sys/netlink/netlink_snl.h @@ -1327,9 +1327,4 @@ snl_send_msgs(struct snl_writer *nw) return (snl_send(nw->ss, nw->base, offset)); } -static const struct snl_hdr_parser *snl_all_core_parsers[] = { - &snl_errmsg_parser, &snl_donemsg_parser, - &_nla_bit_parser, &_nla_bitset_parser, -}; - #endif diff --git a/sys/netlink/netlink_snl_generic.h b/sys/netlink/netlink_snl_generic.h index acf483ac0243..10e98a0266e0 100644 --- a/sys/netlink/netlink_snl_generic.h +++ b/sys/netlink/netlink_snl_generic.h @@ -172,8 +172,4 @@ snl_get_genl_mcast_group(struct snl_state *ss, const char *family_name, return (0); } -static const struct snl_hdr_parser *snl_all_genl_parsers[] = { - &_genl_ctrl_getfam_parser, &_genl_ctrl_mc_parser, -}; - #endif diff --git a/sys/netlink/netlink_snl_route_parsers.h b/sys/netlink/netlink_snl_route_parsers.h index 256edfec297d..6b7a8188180d 100644 --- a/sys/netlink/netlink_snl_route_parsers.h +++ b/sys/netlink/netlink_snl_route_parsers.h @@ -389,11 +389,4 @@ _cb_p_nh(struct snl_state *ss __unused, void *_target) SNL_DECLARE_PARSER_EXT(snl_nhmsg_parser, sizeof(struct nhmsg), sizeof(struct snl_parsed_nhop), _fp_p_nh, _nla_p_nh, _cb_p_nh); -static const struct snl_hdr_parser *snl_all_route_parsers[] = { - &_metrics_mp_nh_parser, &_mpath_nh_parser, &_metrics_parser, &snl_rtm_route_parser, - &_link_fbsd_parser, &snl_rtm_link_parser, &snl_rtm_link_parser_simple, - &_neigh_fbsd_parser, &snl_rtm_neigh_parser, - &_addr_fbsd_parser, &snl_rtm_addr_parser, &_nh_fbsd_parser, &snl_nhmsg_parser, -}; - #endif diff --git a/tests/sys/netlink/test_snl.c b/tests/sys/netlink/test_snl.c index bd607efa82fc..040414a96e2c 100644 --- a/tests/sys/netlink/test_snl.c +++ b/tests/sys/netlink/test_snl.c @@ -13,6 +13,18 @@ #include +static const struct snl_hdr_parser *snl_all_core_parsers[] = { + &snl_errmsg_parser, &snl_donemsg_parser, + &_nla_bit_parser, &_nla_bitset_parser, +}; + +static const struct snl_hdr_parser *snl_all_route_parsers[] = { + &_metrics_mp_nh_parser, &_mpath_nh_parser, &_metrics_parser, &snl_rtm_route_parser, + &_link_fbsd_parser, &snl_rtm_link_parser, &snl_rtm_link_parser_simple, + &_neigh_fbsd_parser, &snl_rtm_neigh_parser, + &_addr_fbsd_parser, &snl_rtm_addr_parser, &_nh_fbsd_parser, &snl_nhmsg_parser, +}; + static void require_netlink(void) { diff --git a/tests/sys/netlink/test_snl_generic.c b/tests/sys/netlink/test_snl_generic.c index 839127fe5232..c63b1380f2ad 100644 --- a/tests/sys/netlink/test_snl_generic.c +++ b/tests/sys/netlink/test_snl_generic.c @@ -11,6 +11,10 @@ #include +static const struct snl_hdr_parser *snl_all_genl_parsers[] = { + &_genl_ctrl_getfam_parser, &_genl_ctrl_mc_parser, +}; + static void require_netlink(void) { From nobody Fri Apr 11 13:52:53 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYyn21YlPz5s3TN; Fri, 11 Apr 2025 13:52: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYyn20TF7z40MS; Fri, 11 Apr 2025 13:52:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744379574; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AbPqliIClCNTo2Rk/7VzlHctB/id62ua+8qrtf8ahgg=; b=Y+eOcNUePtPMFFBHhx12R5nR5jWXH2DOdzuR9/k6pY/YOhIEja9+RnkNqvtaeNOkWTQ33L xMPexIhO9FwUMAk1ANDupBIrb+64JfdRM+rjCSxWMy3G06Yx1Y5zbKbPjO3s1VRJLpA4Ei pZfKk0MCH8WgvvL9AUCZLwsjabCfQrLoS90+fDIC0aA1rV2SNWCrtQNN9DYtcXKxjLdRxB PMIRAllmDLmf45froyPpxQ62q9Zxp0wn+a07Bt+wgHisLSvEaofDXnmqPbK8C/5Zrw7QoA VhzHkGmf375fkgJQePk2UvEGm6pER6+w+swOHrZM1i5zxuWGfnjOkRvWWrIRvw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744379574; a=rsa-sha256; cv=none; b=RPygKfic3TED5ujITs+P+gpBjhjwf2i8OPYwhqmCZUiFSV69td/wrdMGYpoWR8BsK1/kAs umAZwe0tTbf6WE67jz7AKHonjEEGVgxlDHLufv4+vWtqFkbCOfZiusCrYS+Ps2xpw71W01 Sr0wC3/6ICqgs09lZwHm5hHipDynuTuPdQ5s3ZvpzyBzpWjtFV+HJl2lPsu5hEy7+h1Gt4 CPic5ycox4Z2dLK85xaw3xc0p21qnCdl6YFeq0dTUfhYAS8Uet5wxhCZ/KV/X2Wc+VYBvl 102rP9b0cvYVTy6/CYGgAkCRKIlXHDgi3/cUm9/4XmhjzNZu1e9gs/SLJoVKww== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744379574; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AbPqliIClCNTo2Rk/7VzlHctB/id62ua+8qrtf8ahgg=; b=OGz+CFhWQhFRm8XhsdM2y9Iufx0fMvZtzWmLMVn6iXdrSqJdw6WzetRTl9VJt995rxRcu1 OQtfUdK5BCLLn7PWSzOp14th9w/g4NTEu7SooSsSnL05/RZVHaMw38thrkqGgm2m0qC0F6 sZtB9515ohRCxGtr7LxOz8tkqqcTKgL5Hp10LFsK8QxzK8dNhWrtUsBmq2+Xd11bhVvKLL Tt/0j7HRBW3eu9lEW7G1pFV0afGFOXRvA8X1DpWd4F/QbYSl206UK5tgLtJ60IFYDQuSQ5 ARaXJQQdakbJWrjFWRZ1UoTnB00qvEAZ14ASKno7mqAEN/0sYfcuQqONdAw2Hg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYyn16zxczbwP; Fri, 11 Apr 2025 13:52:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BDqrr1033815; Fri, 11 Apr 2025 13:52:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BDqrmc033812; Fri, 11 Apr 2025 13:52:53 GMT (envelope-from git) Date: Fri, 11 Apr 2025 13:52:53 GMT Message-Id: <202504111352.53BDqrmc033812@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 75a24e7f9afb - main - ctld: Disable -Wshadow for GCC List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 75a24e7f9afb128138c3b3462b80731cab0f5bdd Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=75a24e7f9afb128138c3b3462b80731cab0f5bdd commit 75a24e7f9afb128138c3b3462b80731cab0f5bdd Author: John Baldwin AuthorDate: 2025-04-11 13:34:36 +0000 Commit: John Baldwin CommitDate: 2025-04-11 13:52:39 +0000 ctld: Disable -Wshadow for GCC GCC raises shadow warnings in C++ when a global function shadows a structure type name (since it shadows the constructors for that type). System headers are full of such cases (and some such as struct sigaction vs sigaction() are mandated by POSIX), so just disable the warning. For example: In file included from usr.sbin/ctld/ctld.cc:33: sys/sys/event.h:366:20: error: 'int kqueue()' hides constructor for 'struct kqueue' [-Werror=shadow] 366 | int kqueue(void); | ^ sys/sys/event.h:371:43: error: 'int kevent(int, const kevent*, int, kevent*, int, const timespec*)' hides constructor for 'struct kevent' [-Werror=shadow] 371 | const struct timespec *timeout); | ^ In file included from usr.sbin/ctld/ctld.cc:37: sys/sys/stat.h:396:63: error: 'int stat(const char*, stat*)' hides constructor for 'struct stat' [-Werror=shadow] 396 | int stat(const char * __restrict, struct stat * __restrict); | ^ Reported by: bz --- usr.sbin/ctld/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/usr.sbin/ctld/Makefile b/usr.sbin/ctld/Makefile index f96f3152e061..79c69c95fbb1 100644 --- a/usr.sbin/ctld/Makefile +++ b/usr.sbin/ctld/Makefile @@ -14,6 +14,7 @@ CFLAGS+= -I${SRCTOP}/sys/dev/iscsi CFLAGS+= -I${SRCTOP}/lib/libiscsiutil #CFLAGS+= -DICL_KERNEL_PROXY NO_WCAST_ALIGN= +CXXWARNFLAGS.gcc= -Wno-shadow MAN= ctld.8 ctl.conf.5 LIBADD= bsdxml iscsiutil md sbuf util ucl m nv From nobody Fri Apr 11 13:54:30 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYypt2Ydjz5s3V9; Fri, 11 Apr 2025 13:54: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYypt1Tbxz40vT; Fri, 11 Apr 2025 13:54:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744379670; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=r8Vq5/Mx/TIg8Po9tsZzhWKLozooqw5DQCoLFSB18I8=; b=P43zbl9xPR+XCgCp0ZCVQleOGbl577wt2Zqtst8k/f43Oegl5q+4E6aL9jwM3D/G9zeubm DHW2cmkTBKLrHiHXpq1EtTuW5MOXrag992STiOYsNCBvwhbSOjxIEivDKqj9hYQocnItoX xaEsXDQtiAWrc2hpAFu+L0jh6vM2KQ1KvAuDWvxjLFcVDIrwktHy/h6cgk33+yiWOW+n7J DwTHm2L2qYA9HaoZPTtxCmk7p1Pfq3uwEnKtkVByGpmFPf8M5FsUK1npQVReTQ+D5IjLff i+FEb8bIELsuVrvFqmiYiD06imXhkQm1cF+uZvJhBp9kN/WG1JXyl/yK87Yc9w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744379670; a=rsa-sha256; cv=none; b=daANiqvMTgCl923FXXxe38JEefJP0OHJ4Kj2MEjtLN+UJ/vo53VhgE83AmtzfbrWlKVNyq zNTYKJZ3ww5WOSEffFQHnCI1tHreWVK4I0foYQpWL4UV7m1WjstVzpCVJwdafxdt6So+vK htwVLRrTe26Zdy5z75rOQ+DI7muiLPf2hep5aZXgWEFH0HsiaN9fUWcMfqQx1MVb/CH1dL +mwoE3+f+UkabsVsMJYLWpjcRuCY/41YGvrak3YjqwcaYrEVbbrD3urjjnDkHV5AGS63TU GcJoFHz4usUHSb1oCLuOht4toHBv0QQFPLXSchO4bI2JU/nXyrWG5aU771XrRw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744379670; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=r8Vq5/Mx/TIg8Po9tsZzhWKLozooqw5DQCoLFSB18I8=; b=BMWEZtVDyvTWctbELiOycF4qoG8zG0+9I/DV6B3IIpwWBsbXsPshUvn7bDNnj0mizcMY4v RVeGgLUmakW/ybWH2vkpbu3Isl7EyH96cDao/Cx2rfRhrnw+nv7TZjbT1HMEHO3GeZJ1xr Dw201iYXzj4byxC2smQteQFG3tNYqI6Vtl+9z0B6ut6f1FgyLKfqJl9NzNt0ipKbZq82zZ 1WMrm5xbLT8ar7S/vGdHX1A1AKrXYi30/8KTfQ5og3T/VyopNrpinfdtL11WzC/X7lpGBm V3FWhNW5Eo4kYZP/jVEmTNcLA1T96hx2Fw2tzKXaufSMGnglIU1Dla2vTOXMPw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYypt11pXzbvM; Fri, 11 Apr 2025 13:54:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BDsUYj034374; Fri, 11 Apr 2025 13:54:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BDsUue034371; Fri, 11 Apr 2025 13:54:30 GMT (envelope-from git) Date: Fri, 11 Apr 2025 13:54:30 GMT Message-Id: <202504111354.53BDsUue034371@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 6527682ab705 - main - src: Use gnu++17 as the default C++ standard List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6527682ab7058e5023a2a6dea01d51c15dca701f Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=6527682ab7058e5023a2a6dea01d51c15dca701f commit 6527682ab7058e5023a2a6dea01d51c15dca701f Author: John Baldwin AuthorDate: 2025-04-11 13:53:50 +0000 Commit: John Baldwin CommitDate: 2025-04-11 13:53:50 +0000 src: Use gnu++17 as the default C++ standard Previously the compiler's default C++ standard was used unlike C where bsd.sys.mk explicitly sets a default language version. Setting an explicit default version will give a more uniform experience across different compilers and compiler versions. gnu++17 was chosen to match the default C standard. It is well supported by a wide range of clang (5+) and GCC (9+) versions. gnu++17 is also the default C++ standard in recent versions of clang (16+) and GCC (11+). As a result, many of the explicit CXXSTD settings in Makefiles had the effect of lowering the C++ standard instead of raising it as was originally intended and are removed. Note that the remaining explicit CXXSTD settings for atf and liblutok explicitly lower the standard to C++11 due to use of the deprecated auto_ptr<> template which is removed in later versions. Reviewed by: imp, asomers, dim, emaste Differential Revision: https://reviews.freebsd.org/D49223 --- lib/clang/llvm.build.mk | 1 - lib/libc/tests/stdlib/Makefile | 2 -- lib/libclang_rt/Makefile.inc | 1 - lib/libcxxrt/Makefile | 1 - lib/libgcc_eh/Makefile.inc | 1 - lib/libomp/Makefile | 1 - lib/ofed/libibnetdisc/Makefile | 1 - libexec/atf/atf-pytest-wrapper/Makefile | 1 - share/mk/bsd.sys.mk | 2 ++ share/mk/googletest.test.inc.mk | 2 -- tests/sys/fs/fusefs/Makefile | 1 - usr.bin/dtc/Makefile | 2 -- usr.sbin/pmc/Makefile | 1 - 13 files changed, 2 insertions(+), 15 deletions(-) diff --git a/lib/clang/llvm.build.mk b/lib/clang/llvm.build.mk index 2520637e2d06..c731deba8976 100644 --- a/lib/clang/llvm.build.mk +++ b/lib/clang/llvm.build.mk @@ -119,7 +119,6 @@ LDFLAGS+= -Wl,-m,elf64lriscv_fbsd .endif .endif -CXXSTD?= c++17 CXXFLAGS+= -fno-exceptions CXXFLAGS+= -fno-rtti .if ${.MAKE.OS} == "FreeBSD" || !defined(BOOTSTRAPPING) diff --git a/lib/libc/tests/stdlib/Makefile b/lib/libc/tests/stdlib/Makefile index 54ac8a5f3b42..15b8d3844d08 100644 --- a/lib/libc/tests/stdlib/Makefile +++ b/lib/libc/tests/stdlib/Makefile @@ -59,8 +59,6 @@ PROGS+= h_getopt h_getopt_long CFLAGS+= -I${.CURDIR} -CXXSTD.cxa_thread_atexit_test= c++11 -CXXSTD.cxa_thread_atexit_nothr_test= c++11 LIBADD.cxa_thread_atexit_test+= pthread # Tests that requires Blocks feature diff --git a/lib/libclang_rt/Makefile.inc b/lib/libclang_rt/Makefile.inc index c472e8b741be..e7db5a469661 100644 --- a/lib/libclang_rt/Makefile.inc +++ b/lib/libclang_rt/Makefile.inc @@ -33,4 +33,3 @@ CXXFLAGS+= -fvisibility-inlines-hidden CXXFLAGS+= -fvisibility=hidden CFLAGS+= -I${CRTSRC}/include CFLAGS+= -I${CRTSRC}/lib -CXXSTD= c++17 diff --git a/lib/libcxxrt/Makefile b/lib/libcxxrt/Makefile index 7a683ba779f6..0f203b3a7cb1 100644 --- a/lib/libcxxrt/Makefile +++ b/lib/libcxxrt/Makefile @@ -23,7 +23,6 @@ SRCS+= typeinfo.cc WARNS?= 0 CFLAGS+= -isystem ${SRCDIR} -nostdinc++ -CXXSTD?= c++14 .if exists(Version.map.${MACHINE}) VERSION_MAP= ${.CURDIR}/Version.map.${MACHINE} diff --git a/lib/libgcc_eh/Makefile.inc b/lib/libgcc_eh/Makefile.inc index af59ee7aaa65..529ef7170485 100644 --- a/lib/libgcc_eh/Makefile.inc +++ b/lib/libgcc_eh/Makefile.inc @@ -38,7 +38,6 @@ CFLAGS+= -I${UNWINDINCDIR} CFLAGS+= -D_LIBUNWIND_IS_NATIVE_ONLY CFLAGS+= -D_LIBUNWIND_USE_FRAME_HEADER_CACHE CXXFLAGS+= -fno-rtti -CXXSTD?= c++11 STATIC_CXXFLAGS+= -fvisibility=hidden -fPIC # Probably need to just move this earlier or use CXXFLAGS .if ${MK_DIRDEPS_BUILD} == "yes" diff --git a/lib/libomp/Makefile b/lib/libomp/Makefile index 6c14c7d21077..f1513e70f3f6 100644 --- a/lib/libomp/Makefile +++ b/lib/libomp/Makefile @@ -57,7 +57,6 @@ CFLAGS+= -fdata-sections CXXFLAGS+= -fvisibility-inlines-hidden CXXFLAGS+= -fno-exceptions CXXFLAGS+= -fno-rtti -CXXSTD= c++17 .if ${COMPILER_TYPE} == "clang" .if ${MACHINE_CPUARCH} == "i386" diff --git a/lib/ofed/libibnetdisc/Makefile b/lib/ofed/libibnetdisc/Makefile index d3e0dd92509a..aac0bf0f5971 100644 --- a/lib/ofed/libibnetdisc/Makefile +++ b/lib/ofed/libibnetdisc/Makefile @@ -29,7 +29,6 @@ LIBADD= osmcomp ibmad ibumad CFLAGS+= -DHAVE_CONFIG_H=1 CFLAGS+= -I${_spath} CFLAGS+= -I${SYSROOT:U${DESTDIR}}/${INCLUDEDIR}/infiniband -CXXSTD= c++11 VERSION_MAP= ${_spath}/libibnetdisc.map .include diff --git a/libexec/atf/atf-pytest-wrapper/Makefile b/libexec/atf/atf-pytest-wrapper/Makefile index e4dc0f8a5fd1..80b5e411ec4e 100644 --- a/libexec/atf/atf-pytest-wrapper/Makefile +++ b/libexec/atf/atf-pytest-wrapper/Makefile @@ -4,7 +4,6 @@ PACKAGE= tests PROG_CXX= atf_pytest_wrapper SRCS= atf_pytest_wrapper.cpp -CXXSTD= c++17 MAN= .include diff --git a/share/mk/bsd.sys.mk b/share/mk/bsd.sys.mk index 63496e9b8ccd..b8535809e5aa 100644 --- a/share/mk/bsd.sys.mk +++ b/share/mk/bsd.sys.mk @@ -22,6 +22,8 @@ CFLAGS+= -std=iso9899:1999 CFLAGS+= -std=${CSTD} .endif # CSTD +CXXSTD?= gnu++17 + .if !empty(CXXSTD) CXXFLAGS+= -std=${CXXSTD} .endif diff --git a/share/mk/googletest.test.inc.mk b/share/mk/googletest.test.inc.mk index 05415775448b..9ef5a3ceac00 100644 --- a/share/mk/googletest.test.inc.mk +++ b/share/mk/googletest.test.inc.mk @@ -9,6 +9,4 @@ GTESTS_CXXFLAGS+= -frtti # libgmock's, etc, headers. CXXFLAGS+= -I${DESTDIR}${INCLUDEDIR}/private -CXXSTD?= c++14 - NO_WTHREAD_SAFETY= diff --git a/tests/sys/fs/fusefs/Makefile b/tests/sys/fs/fusefs/Makefile index d91199fd519e..06b82071fe31 100644 --- a/tests/sys/fs/fusefs/Makefile +++ b/tests/sys/fs/fusefs/Makefile @@ -89,7 +89,6 @@ CXXFLAGS+= -I${SRCTOP}/tests CXXFLAGS+= -I${FUSEFS} CXXFLAGS+= -I${MOUNT} .PATH: ${MOUNT} -CXXSTD= c++14 LIBADD+= pthread LIBADD+= gmock gtest diff --git a/usr.bin/dtc/Makefile b/usr.bin/dtc/Makefile index 9b1aff13511f..d7661ae164c3 100644 --- a/usr.bin/dtc/Makefile +++ b/usr.bin/dtc/Makefile @@ -6,8 +6,6 @@ WARNS?= 3 CXXFLAGS+= -fno-rtti -fno-exceptions -CXXSTD= c++17 - NO_SHARED?=NO .include diff --git a/usr.sbin/pmc/Makefile b/usr.sbin/pmc/Makefile index 3f73dd398958..02292917ab57 100644 --- a/usr.sbin/pmc/Makefile +++ b/usr.sbin/pmc/Makefile @@ -2,7 +2,6 @@ PROG_CXX= pmc MAN= -CXXSTD= c++14 CWARNFLAGS.gcc+= -Wno-redundant-decls CFLAGS+= -I${SRCTOP}/lib/libpmcstat From nobody Fri Apr 11 13:56:22 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYys51bH3z5s3WV; Fri, 11 Apr 2025 13:56:25 +0000 (UTC) (envelope-from jhb@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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYys46kZ0z41BT; Fri, 11 Apr 2025 13:56:24 +0000 (UTC) (envelope-from jhb@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744379785; h=from:from:reply-to:subject: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=9eZSKYUIk51tVALBY5to1oua4Yx/BEajRXbW635X1ik=; b=Tige7jADY0DTvCkCfFSMwhqtiZWUo0Im7fuGOjgUxDhwKWV+wdw08R2nz9npjgNYTvmeyO cJGCPuyALSMMdgOtQl5NDed9+p9ZCuHKdE6VVj2s3byZgXYnLaeA7pleKGtyIYz3A8x52o z1HcD883KzqNEl1cFJDJYP9RpK89RGMrFKQN+wRxXmZ6BFUN0n1X1oJQ+OYy0YkEMg2C0S Qn68Q9PIwQbwOLKZFYs1hPNsqmGZPmM9cOgbstWAYYP3tYKBMaxaUNFSFNjHO6I1y6wQ/i udogvL1dtkOEyR1dBBGGirp0nyq6D9qe9osV2v3zB/03+nUUIwieawzizH09FQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744379785; a=rsa-sha256; cv=none; b=dFUFSQTTO7QabYNQgfxgNBvK9vLrRttoqtZZZPORNtrk6c4YwhbxIxQilG0OJpF9OVDxs5 ic4/J7RWD94c0ABW1hZXFPsxGAoa9muAppPYoyvEFnAoFIgZ1Azx9ElVKjJTqYbT4otsW8 bKmW2BtNzSLR74WsvIRRebJU0UTJoKzc0eylZX+wc9fwWr49e1tZB47XoOL8RssKzhFYpR t5hvzg+EtFDLKRt+/6CfTPjhm0DimoLAvu/Tr7cVo9J0DGMYKZPZakQ9qAG+W0uc3JunHb AQR5M/om0NM9SzkjeZ9kSPByoM3EEnPa4m1JLnSpjyyuCiql7rnoNFNF5NXAQQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744379785; h=from:from:reply-to:subject: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=9eZSKYUIk51tVALBY5to1oua4Yx/BEajRXbW635X1ik=; b=W8heUoODW7KcaP5bkvB/SUr4kKsWlC8kWDZRtUo7rQ8Xt3aw7bWp2FKz20ukctJ5SptF83 kW8UvGTGVcnDZnHZ9rWQop5UWuqgPEEThHDSPnIt0zy/jampgQqMdbLDipWBkifUJ96+6M CCr4WhZymQYvcn/4U+knL6Trvk/fuQqhVJJaOF0cmuWLwApBmi8ZuhDvUUzh4WdFITW+uW 82CzYdQy5R+sfheZk+OkMwOrintdzrogvYSrfEeYi8c98BapEfDEezhSnoAShwvxlxpG4J lxaUCODX78o5Lmd7PzABNdDGuYALd9Y7k8l1x7r3SSm2HCGllkprTqrNOXc2RQ== Received: from [IPV6:2601:5c0:4200:b830:ec3d:c0fe:c8c9:13aa] (unknown [IPv6:2601:5c0:4200:b830:ec3d:c0fe:c8c9:13aa]) (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 4ZYys44Gb1zG8H; Fri, 11 Apr 2025 13:56:24 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Message-ID: <0349dcb7-2466-4c6a-bc40-e8405ef52ef6@FreeBSD.org> Date: Fri, 11 Apr 2025 09:56:22 -0400 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: 75a24e7f9afb - main - ctld: Disable -Wshadow for GCC Content-Language: en-US From: John Baldwin To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org References: <202504111352.53BDqrmc033812@gitrepo.freebsd.org> In-Reply-To: <202504111352.53BDqrmc033812@gitrepo.freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 4/11/25 09:52, John Baldwin wrote: > The branch main has been updated by jhb: > > URL: https://cgit.FreeBSD.org/src/commit/?id=75a24e7f9afb128138c3b3462b80731cab0f5bdd > > commit 75a24e7f9afb128138c3b3462b80731cab0f5bdd > Author: John Baldwin > AuthorDate: 2025-04-11 13:34:36 +0000 > Commit: John Baldwin > CommitDate: 2025-04-11 13:52:39 +0000 > > ctld: Disable -Wshadow for GCC > > GCC raises shadow warnings in C++ when a global function shadows a > structure type name (since it shadows the constructors for that type). > System headers are full of such cases (and some such as struct sigaction > vs sigaction() are mandated by POSIX), so just disable the warning. > > For example: > > In file included from usr.sbin/ctld/ctld.cc:33: > sys/sys/event.h:366:20: error: 'int kqueue()' hides constructor for 'struct kqueue' [-Werror=shadow] > 366 | int kqueue(void); > | ^ > sys/sys/event.h:371:43: error: 'int kevent(int, const kevent*, int, kevent*, int, const timespec*)' hides constructor for 'struct kevent' [-Werror=shadow] > 371 | const struct timespec *timeout); > | ^ > In file included from usr.sbin/ctld/ctld.cc:37: > sys/sys/stat.h:396:63: error: 'int stat(const char*, stat*)' hides constructor for 'struct stat' [-Werror=shadow] > 396 | int stat(const char * __restrict, struct stat * __restrict); > | ^ > > Reported by: bz > --- > usr.sbin/ctld/Makefile | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/usr.sbin/ctld/Makefile b/usr.sbin/ctld/Makefile > index f96f3152e061..79c69c95fbb1 100644 > --- a/usr.sbin/ctld/Makefile > +++ b/usr.sbin/ctld/Makefile > @@ -14,6 +14,7 @@ CFLAGS+= -I${SRCTOP}/sys/dev/iscsi > CFLAGS+= -I${SRCTOP}/lib/libiscsiutil > #CFLAGS+= -DICL_KERNEL_PROXY > NO_WCAST_ALIGN= > +CXXWARNFLAGS.gcc= -Wno-shadow > MAN= ctld.8 ctl.conf.5 > > LIBADD= bsdxml iscsiutil md sbuf util ucl m nv Possibly we should disable -Wshadow globally for GCC for C++ in bsd.sys.mk. -- John Baldwin From nobody Fri Apr 11 13:57:27 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYytH3vFHz5s3l0; Fri, 11 Apr 2025 13:57:27 +0000 (UTC) (envelope-from jhb@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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYytH35Xkz41Yl; Fri, 11 Apr 2025 13:57:27 +0000 (UTC) (envelope-from jhb@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744379847; h=from:from:reply-to:subject: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=rP0MWp18SZu79qbgO2UrJbaG+vBGGzGYTIZnDDwsupg=; b=VZN0PjRQmHCtWa9S4eG/5V3XuF/RguRS63G4T+hnqtsjIyOpcAWZelZD4mQGKbOacPQ2ST TC+MB1MU3kJuOCM3OCDjWLPMMVb+l+jUlk5gSYtalbzeWhrJdOH97g4s+d6h4zrkrEIKBZ 7bT23hLbphuPmhrCsFufiqmq5eDC8lplOz47svZUWyuypC2b2WTXkUw714QDDVXi1NXMOW h4lUcxQaw5ZM7M5O0XdMUUTQptb1PXpvRXkL0weop+L4lRkLbmcOr8+4Fzcz/AM+fqZyxh gJnegcmaArGOXvJvzHwJNZim6KH8gIODeyd3GswxG+JiiDbNpYCp+WfPQBYKSQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744379847; a=rsa-sha256; cv=none; b=eoNQ62d850Oes7xN+aAk4cxEKJKzqQSfXfgATqBinUlM2AIOV+SasQMcXAhsaegzfJvj3j /QJjp3aYlwD1ENzhyw1YSv4KLgjBmvPtcq0YLMrEF9oGUzB2xjKlyFsUf8doytE8FgLukY +HOxV9ZfrxcMCQzsW69VN6BQUhkUHobCYB9tyK/n3wZTN/9FrcUXZrRIf9USgbqFQa8Ljq Obkk3a1qUD2q/BoimMVmht5fmWVXBXT1+KOz/2/5GFNzYB21xD+DbYhq/UYhc+P9hFxoTy Nu6Tw1QbCfGf+zEX4ZJRdvX/sJu9cDMcy6xjwU9eJpY1KjYTVdDm69ZOeJkq9w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744379847; h=from:from:reply-to:subject: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=rP0MWp18SZu79qbgO2UrJbaG+vBGGzGYTIZnDDwsupg=; b=QJVUC9PLS0JfMwIi1N7GcsTGsnPhSCFX/BAa91bKwyeFPabGU98xvN0SCsDR1Sh2YxYmSo mPStbrGH9HyfLZwjB2TIe6yOq6SEJ9VSzOFVesYUuNjdH5GT5UZj1yJM/9+T0HDyeqw+k/ QVRB6uCBQRCmc0WYfBHOxoUY+aIkawc0xMgnL8e29kDmQbTUisWEyrjdBEM1+ZI5zaBvtE npUb7zb7cpNRQJclEIebA649F/DeNoYIMsx3F8ODxojjLw04goQrGId5hNePvq3O5XOikU v2LzWfHUHoa9hRVmHScIsFvzgh1n+eWL8TlxgUKFIoaCA1y5mR3SjrsTNyjIRA== Received: from [IPV6:2601:5c0:4200:b830:ec3d:c0fe:c8c9:13aa] (unknown [IPv6:2601:5c0:4200:b830:ec3d:c0fe:c8c9:13aa]) (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 4ZYytH1c0YzHHd; Fri, 11 Apr 2025 13:57:27 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Message-ID: <901115de-3075-4a63-a5c7-3c792730d048@FreeBSD.org> Date: Fri, 11 Apr 2025 09:57:27 -0400 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: 6527682ab705 - main - src: Use gnu++17 as the default C++ standard Content-Language: en-US From: John Baldwin To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org References: <202504111354.53BDsUue034371@gitrepo.freebsd.org> In-Reply-To: <202504111354.53BDsUue034371@gitrepo.freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 4/11/25 09:54, John Baldwin wrote: > The branch main has been updated by jhb: > > URL: https://cgit.FreeBSD.org/src/commit/?id=6527682ab7058e5023a2a6dea01d51c15dca701f > > commit 6527682ab7058e5023a2a6dea01d51c15dca701f > Author: John Baldwin > AuthorDate: 2025-04-11 13:53:50 +0000 > Commit: John Baldwin > CommitDate: 2025-04-11 13:53:50 +0000 > > src: Use gnu++17 as the default C++ standard > > Previously the compiler's default C++ standard was used unlike C where > bsd.sys.mk explicitly sets a default language version. Setting an > explicit default version will give a more uniform experience across > different compilers and compiler versions. > > gnu++17 was chosen to match the default C standard. It is well > supported by a wide range of clang (5+) and GCC (9+) versions. > > gnu++17 is also the default C++ standard in recent versions of clang > (16+) and GCC (11+). As a result, many of the explicit CXXSTD > settings in Makefiles had the effect of lowering the C++ standard > instead of raising it as was originally intended and are removed. > > Note that the remaining explicit CXXSTD settings for atf and liblutok > explicitly lower the standard to C++11 due to use of the deprecated > auto_ptr<> template which is removed in later versions. > > Reviewed by: imp, asomers, dim, emaste > Differential Revision: https://reviews.freebsd.org/D49223 Forgot: PR: 285141 (exp-run) -- John Baldwin From nobody Fri Apr 11 14:03:54 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYz1k2LPFz5s43s; Fri, 11 Apr 2025 14:03: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYz1k1dhPz43DZ; Fri, 11 Apr 2025 14:03:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380234; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=f+ezLXzEGzRdD3pMVtyDY38rkPy5FNmKPR8n0wvuWVI=; b=aOVcBW8LzXhn92nCBzbpSUo9GbAbVvjoG4yKs3DtFyka5luPHhIIDF44FoB/idJuQQW6Wz QB238EUC50/85FiTmgnkp/eCi/cU+ALZvISMLf0ZRUSLVtJcdFdpcxZtGziLWDgkUkFEOL kXZhpIf9tPS2rBWQtK9TIogMSAwoNs65MH25iLrrYQe7Ic/OBE2C9tnBh6FI+7ER2ZL3O2 /Oi338r507ghRyta0PRtOvOh+VBBKJEJ1jKxTVCwwshD+vME7nmUSBsBmR3ii4coxKsLZj JA0s+duzrMix6rQt5buueRuvyHIMjWZh4MBe2fSTmd9HjkpMjeje6pSsXdS03A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744380234; a=rsa-sha256; cv=none; b=A+ZuUivcnmVOLr8Rcnyg1z7UBdUXRhP8eNNYRvILUSGPhvoAHpuVp1p1C1ii17F6HvxnsZ 57oDrU+EJluEB6tXPYJiKkL424gLlAfjG+3RS8rt6hUvfzgF5XZWaWaqqF8wEvG71JQCRi nvBUATLtzA9EUH0vXjYmZIjNSDj1MhxNBKdrwW3cb6cIQybNs86DUV9/yJsBwaoJ/nAHyL W1c0lHSctiA8JNm68ZMFRSqS8ugCFpdRgFMPKabX160b4VC7s4tIoZ+sAlje6T+xW62zaq q2krkatTlcXNoSyBwkSCQDI0CqGnKLAaFvbpGWWpuDxWg+P2ruZCYX2SDM7exQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380234; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=f+ezLXzEGzRdD3pMVtyDY38rkPy5FNmKPR8n0wvuWVI=; b=SIDngO4TnyLsmiPl9dnF7E45sRT8YB9/MPXfjAJgMkTnu/ceS5Ci7+fEpYtv/z5BVhyVta LGGbTp81KAiu6JUUnpNuqzZ9/OpV44E8j5h8lux7o60bJtuQ1/hvJSX9Ev1BEy4hQd/QY3 uX/ivwaTw37FBBM9rdUZkWrRCedqdLFQENSpmrKW89Y7mzCvwX/BHZquf6DERED3+i5uuF uPcJGdf47oEtv+HtuKTj/7KbAPyYANSjdQmznUIiCFdLDUiEQQJMGcu6QQfxfBBmruvPmL XK1NFDBi7JknI08/68bu7WjJ0yQbglV7ghOo8Hf24ciZaiKGaaNZhvw30ciXlA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYz1k19crzbjl; Fri, 11 Apr 2025 14:03:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BE3sM7053498; Fri, 11 Apr 2025 14:03:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BE3sS7053495; Fri, 11 Apr 2025 14:03:54 GMT (envelope-from git) Date: Fri, 11 Apr 2025 14:03:54 GMT Message-Id: <202504111403.53BE3sS7053495@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: e7611b7531c4 - main - ctld: Fix sign bug validating kernel ports when reloading config List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e7611b7531c4fc6d26d36faad79088f277af78f0 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=e7611b7531c4fc6d26d36faad79088f277af78f0 commit e7611b7531c4fc6d26d36faad79088f277af78f0 Author: John Baldwin AuthorDate: 2025-04-11 13:59:24 +0000 Commit: John Baldwin CommitDate: 2025-04-11 13:59:24 +0000 ctld: Fix sign bug validating kernel ports when reloading config When I switched new_pports_from_conf to return bool instead of an inverted int, I missed updating the call after reloading the config file due to SIGHUP. Fixes: 450a84c292ae ("ctld: Some bool-related cleanups") Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D49641 --- usr.sbin/ctld/ctld.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/ctld/ctld.cc b/usr.sbin/ctld/ctld.cc index f07ee7b34cd7..03a298146f4a 100644 --- a/usr.sbin/ctld/ctld.cc +++ b/usr.sbin/ctld/ctld.cc @@ -2601,7 +2601,7 @@ main(int argc, char **argv) if (tmpconf == NULL) { log_warnx("configuration error, " "continuing with old configuration"); - } else if (new_pports_from_conf(tmpconf, &kports)) { + } else if (!new_pports_from_conf(tmpconf, &kports)) { log_warnx("Error associating physical ports, " "continuing with old configuration"); conf_delete(tmpconf); From nobody Fri Apr 11 14:03:55 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYz1l2nFtz5s489; Fri, 11 Apr 2025 14:03: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYz1l2Gshz4386; Fri, 11 Apr 2025 14:03:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380235; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5EkEt4WedOv2PuRGul/dux+ZUm3BJKCtOdFPVBatmuQ=; b=ssOw66veIyCtehnAIG4+1FQWa90RSzFEn3tLlS4mNDM29x8hzq2ZsWA9QBcdxb46vAJcd4 CTBFGIQi55XbI85z8PE4P+VSlmUph8Ofl94Lx9UOanGEOKCe3Cl5NAlwrbPAJl6lod4SU7 CJAXusYPWj9i3ZXqJMCwBok3lGCBoHOXDKlhwTCutshMoA+ihOJ3M0IVqMs6Ym5iVkm2ix AshzVjkJp+eYzRUUERlPfp9pBRiwjEC+JBUP4gjgAddY6dMjiUy5ssx1Hz9hZW/WFschTM 6Ngrw7NRbkX/yHDkVbP73Gfg6yZzqEwAKcUwUIoDyDXaGOV1OZg5nLp2jVz/jw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744380235; a=rsa-sha256; cv=none; b=TaCb4BTyjOSFAirmXKA3bqO9Urghzij5hVr/5CvBhUMP1PTQsYb/18MWuZF84UR6RYjn1V +g/vUXoTuRfJTSrxb+FxIC6qFdpuOgDM8BN00l3+Sewy8K+tpEIKZQ/BJ65wO85Ioopk+4 CbSk7ev6eRqWd331nwMD11MJXtZ8xnhqp3KekTDiJZXsERuu3/0+XB11LWNYuW5Qh1h7zK FtSqsUhWABhoQKLE/toG7KUlxbKzjin8Ix4QiQf4ofC6DMjYk6X1NpYr/x9aUyWDSxRJOO jYHHd1CRZn9DL3lbkTFh1JKiijJIentpL24OmIC8knd/8LIaFe+Q+uLc+wmCIg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380235; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5EkEt4WedOv2PuRGul/dux+ZUm3BJKCtOdFPVBatmuQ=; b=XJquiWPhSKBhBNqAQ5UmHBwU4Sh/l5Q7A8r+FWOm1LAeRaOXW/Qrr4Kk7hju4QFqKIWX4d zmO5aRW87ZZC+SDUXTqnoI5nIUPgUsN0Y9NLsnw64qaKv33MdUtcVyEW0Hmq6A3ByWbTjN UO/L6eGUi4eGrAi+uuLHPm85WxP5d6hoYs1eZvJfsn+MClNK6hoqcNroUcK97OHyrnLSAh pAhG+AxRpd8KLjT6VIGAksOGkrns+Mr7GFuYsnJdQS6ZU0PqDmVaQpvV7fszEkijKEfC/i oPVihy/v2RWLIJP30MwafOiBXg6DV5wUNlALg+9dt3SHKj2hSJl5iKMu9S28nw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYz1l1strzcQ9; Fri, 11 Apr 2025 14:03:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BE3t8t053534; Fri, 11 Apr 2025 14:03:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BE3tWo053531; Fri, 11 Apr 2025 14:03:55 GMT (envelope-from git) Date: Fri, 11 Apr 2025 14:03:55 GMT Message-Id: <202504111403.53BE3tWo053531@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 4214775235eb - main - ctld: Reduce code duplication in auth_check_secret_length List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4214775235ebc01e0d22da5f09a2e4cff16bfa74 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=4214775235ebc01e0d22da5f09a2e4cff16bfa74 commit 4214775235ebc01e0d22da5f09a2e4cff16bfa74 Author: John Baldwin AuthorDate: 2025-04-11 13:59:52 +0000 Commit: John Baldwin CommitDate: 2025-04-11 13:59:52 +0000 ctld: Reduce code duplication in auth_check_secret_length Only check a single secret length in the function and call it twice for the CHAP-MUTUAL case. Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D49642 --- usr.sbin/ctld/ctld.cc | 67 ++++++++++++++------------------------------------- 1 file changed, 18 insertions(+), 49 deletions(-) diff --git a/usr.sbin/ctld/ctld.cc b/usr.sbin/ctld/ctld.cc index 03a298146f4a..6cb15283503a 100644 --- a/usr.sbin/ctld/ctld.cc +++ b/usr.sbin/ctld/ctld.cc @@ -182,63 +182,31 @@ auth_find(const struct auth_group *ag, const char *user) } static void -auth_check_secret_length(struct auth *auth) +auth_check_secret_length(const struct auth_group *ag, const char *user, + const char *secret, const char *secret_type) { size_t len; - len = strlen(auth->a_secret); + len = strlen(secret); if (len > 16) { - if (auth->a_auth_group->ag_name != NULL) - log_warnx("secret for user \"%s\", auth-group \"%s\", " + if (ag->ag_name != NULL) + log_warnx("%s for user \"%s\", auth-group \"%s\", " "is too long; it should be at most 16 characters " - "long", auth->a_user, auth->a_auth_group->ag_name); + "long", secret_type, user, ag->ag_name); else - log_warnx("secret for user \"%s\", target \"%s\", " + log_warnx("%s for user \"%s\", target \"%s\", " "is too long; it should be at most 16 characters " - "long", auth->a_user, - auth->a_auth_group->ag_target->t_name); + "long", secret_type, user, ag->ag_target->t_name); } if (len < 12) { - if (auth->a_auth_group->ag_name != NULL) - log_warnx("secret for user \"%s\", auth-group \"%s\", " + if (ag->ag_name != NULL) + log_warnx("%s for user \"%s\", auth-group \"%s\", " "is too short; it should be at least 12 characters " - "long", auth->a_user, - auth->a_auth_group->ag_name); + "long", secret_type, user, ag->ag_name); else - log_warnx("secret for user \"%s\", target \"%s\", " + log_warnx("%s for user \"%s\", target \"%s\", " "is too short; it should be at least 12 characters " - "long", auth->a_user, - auth->a_auth_group->ag_target->t_name); - } - - if (auth->a_mutual_secret != NULL) { - len = strlen(auth->a_mutual_secret); - if (len > 16) { - if (auth->a_auth_group->ag_name != NULL) - log_warnx("mutual secret for user \"%s\", " - "auth-group \"%s\", is too long; it should " - "be at most 16 characters long", - auth->a_user, auth->a_auth_group->ag_name); - else - log_warnx("mutual secret for user \"%s\", " - "target \"%s\", is too long; it should " - "be at most 16 characters long", - auth->a_user, - auth->a_auth_group->ag_target->t_name); - } - if (len < 12) { - if (auth->a_auth_group->ag_name != NULL) - log_warnx("mutual secret for user \"%s\", " - "auth-group \"%s\", is too short; it " - "should be at least 12 characters long", - auth->a_user, auth->a_auth_group->ag_name); - else - log_warnx("mutual secret for user \"%s\", " - "target \"%s\", is too short; it should be " - "at least 12 characters long", - auth->a_user, - auth->a_auth_group->ag_target->t_name); - } + "long", secret_type, user, ag->ag_target->t_name); } } @@ -261,12 +229,12 @@ auth_new_chap(struct auth_group *ag, const char *user, return (false); } + auth_check_secret_length(ag, user, secret, "secret"); + auth = auth_new(ag); auth->a_user = checked_strdup(user); auth->a_secret = checked_strdup(secret); - auth_check_secret_length(auth); - return (true); } @@ -290,14 +258,15 @@ auth_new_chap_mutual(struct auth_group *ag, const char *user, return (false); } + auth_check_secret_length(ag, user, secret, "secret"); + auth_check_secret_length(ag, user, secret2, "mutual secret"); + auth = auth_new(ag); auth->a_user = checked_strdup(user); auth->a_secret = checked_strdup(secret); auth->a_mutual_user = checked_strdup(user2); auth->a_mutual_secret = checked_strdup(secret2); - auth_check_secret_length(auth); - return (true); } From nobody Fri Apr 11 14:03:56 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYz1m6pvtz5s4Bh; Fri, 11 Apr 2025 14:03:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYz1m3TYFz43B1; Fri, 11 Apr 2025 14:03:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380236; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dDyJ6gs+jz96c99SdpfHmMuYKW0zFDg3tluJPyNJ4a8=; b=Mt4da7I5lSefuhTdOscSPY6dbrKlos1l1wm2Y02v/ANfkZLT/+C7YMHGN7oBoOKnDWpcwA TYveQwyASsGpofrFrDbjCilJEJcG+Pe+Dk9/6GU9WclRcvPNVISzENfL6ce0eFoteO+fyA NbR2cnHHXHfkxSdWaVigkXXI9leYJ2gub99VqnwDyIFiJmWpCSUOjr99V+zlBE5id4n0o2 XeeSWRbJGcC34JQc1RQjcHdedIPE07GrtiZIClMkzILwlfqB2/bBBz4CEoT8S91xmthXZl O/7OFYrZ98H181zU+O2E+wr2+ZTsBcFVcu3geK/WOaradUsEQEHc7dSXrfFNIg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744380236; a=rsa-sha256; cv=none; b=L9G+vXqNybSaezh5wYJABXez/FcJhpv2YNGCzqEoehuW82Bzrzd8xXPBwqpnqhONoIEqYl EokKP6Qj6YN5FLGnFAHvhAO1MlWm6VEjys8/+ZXybN+lWCx4NgQTr7v2EV74kAC/b+F67/ zTBZsbLLWn4m0Ra3vPeBN7zx7o36b/q5DSIcJ7iPTPtVdnYzA52TVallAtCEpma67jFPsT YrvpKDvja87J4/CInyd5rLfraofAaT8n9tBoNNQYxzSs3wB0UZ9SWvVhqv8QjgMYz/PNM2 /51Be7W/gQL/hL+eDDAzUFXA5k0UeYaB4SVHQkkwce7VPczqElkOdqUqBHcS5w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380236; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dDyJ6gs+jz96c99SdpfHmMuYKW0zFDg3tluJPyNJ4a8=; b=x6HD34+5pBMkq9UqHKeK8q9TOU889uJt7rAO2Q+A7uBNx6pcPcLQcmYOsmswvsnPiIP1iS UfFFYDrqgmkKh0st4zCnoU+m+/iKv7kr753NOzBBp9j9h+Gc0iclQNJcVDvsxcoUthFFB0 2eGxryJ4mWAdDSUG6fNDbJHDcwWbM+bj4q7szhPMYJYki6eIvOXFioO355K9amk/PUA7qG 4nXigKvO3ju0+oOO68JQjzCUSV+RWAvWYshopuACqD9ehAFnkRvAtq3JB/czICvhZ7sdLl VCAjxqZx/mUcc/dHqoZwaNc77pxTuhWltoL0l6DDsjSBeNTUWgFwdCboiRSUiA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYz1m2qK5zcMl; Fri, 11 Apr 2025 14:03:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BE3uE3053573; Fri, 11 Apr 2025 14:03:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BE3u3f053570; Fri, 11 Apr 2025 14:03:56 GMT (envelope-from git) Date: Fri, 11 Apr 2025 14:03:56 GMT Message-Id: <202504111403.53BE3u3f053570@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 2736dc8c28a3 - main - ctld: Add a label string to auth_groups List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2736dc8c28a33ba911fd59f87b587a3d9722e975 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=2736dc8c28a33ba911fd59f87b587a3d9722e975 commit 2736dc8c28a33ba911fd59f87b587a3d9722e975 Author: John Baldwin AuthorDate: 2025-04-11 14:00:14 +0000 Commit: John Baldwin CommitDate: 2025-04-11 14:00:14 +0000 ctld: Add a label string to auth_groups This holds the abstract name of an auth-group for use in warning messages. For anonymous groups associated with a target, the label includes the target name. Abstracting this out removes a lot of code duplication of nearly-identical warning messages. Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D49643 --- usr.sbin/ctld/conf.cc | 33 +++++--------------- usr.sbin/ctld/ctld.cc | 85 +++++++++++++++++++++++---------------------------- usr.sbin/ctld/ctld.h | 4 ++- 3 files changed, 50 insertions(+), 72 deletions(-) diff --git a/usr.sbin/ctld/conf.cc b/usr.sbin/ctld/conf.cc index ac82d06ad8fa..e86b44ee5004 100644 --- a/usr.sbin/ctld/conf.cc +++ b/usr.sbin/ctld/conf.cc @@ -126,25 +126,13 @@ _auth_group_set_type(struct auth_group *ag, const char *str) } else if (strcmp(str, "chap-mutual") == 0) { type = AG_TYPE_CHAP_MUTUAL; } else { - if (ag->ag_name != NULL) - log_warnx("invalid auth-type \"%s\" for auth-group " - "\"%s\"", str, ag->ag_name); - else - log_warnx("invalid auth-type \"%s\" for target " - "\"%s\"", str, ag->ag_target->t_name); + log_warnx("invalid auth-type \"%s\" for %s", str, ag->ag_label); return (false); } if (ag->ag_type != AG_TYPE_UNKNOWN && ag->ag_type != type) { - if (ag->ag_name != NULL) { - log_warnx("cannot set auth-type to \"%s\" for " - "auth-group \"%s\"; already has a different " - "type", str, ag->ag_name); - } else { - log_warnx("cannot set auth-type to \"%s\" for target " - "\"%s\"; already has a different type", - str, ag->ag_target->t_name); - } + log_warnx("cannot set auth-type to \"%s\" for %s; " + "already has a different type", str, ag->ag_label); return (false); } @@ -531,10 +519,9 @@ target_add_chap(const char *user, const char *secret) return (false); } } else { - target->t_auth_group = auth_group_new(conf, NULL); + target->t_auth_group = auth_group_new(conf, target); if (target->t_auth_group == NULL) return (false); - target->t_auth_group->ag_target = target; } return (auth_new_chap(target->t_auth_group, user, secret)); } @@ -550,10 +537,9 @@ target_add_chap_mutual(const char *user, const char *secret, return (false); } } else { - target->t_auth_group = auth_group_new(conf, NULL); + target->t_auth_group = auth_group_new(conf, target); if (target->t_auth_group == NULL) return (false); - target->t_auth_group->ag_target = target; } return (auth_new_chap_mutual(target->t_auth_group, user, secret, user2, secret2)); @@ -569,10 +555,9 @@ target_add_initiator_name(const char *name) return (false); } } else { - target->t_auth_group = auth_group_new(conf, NULL); + target->t_auth_group = auth_group_new(conf, target); if (target->t_auth_group == NULL) return (false); - target->t_auth_group->ag_target = target; } return (auth_name_new(target->t_auth_group, name)); } @@ -588,10 +573,9 @@ target_add_initiator_portal(const char *addr) return (false); } } else { - target->t_auth_group = auth_group_new(conf, NULL); + target->t_auth_group = auth_group_new(conf, target); if (target->t_auth_group == NULL) return (false); - target->t_auth_group->ag_target = target; } return (auth_portal_new(target->t_auth_group, addr)); } @@ -701,10 +685,9 @@ target_set_auth_type(const char *type) return (false); } } else { - target->t_auth_group = auth_group_new(conf, NULL); + target->t_auth_group = auth_group_new(conf, target); if (target->t_auth_group == NULL) return (false); - target->t_auth_group->ag_target = target; } return (_auth_group_set_type(target->t_auth_group, type)); } diff --git a/usr.sbin/ctld/ctld.cc b/usr.sbin/ctld/ctld.cc index 6cb15283503a..6360a88e5c97 100644 --- a/usr.sbin/ctld/ctld.cc +++ b/usr.sbin/ctld/ctld.cc @@ -189,24 +189,14 @@ auth_check_secret_length(const struct auth_group *ag, const char *user, len = strlen(secret); if (len > 16) { - if (ag->ag_name != NULL) - log_warnx("%s for user \"%s\", auth-group \"%s\", " - "is too long; it should be at most 16 characters " - "long", secret_type, user, ag->ag_name); - else - log_warnx("%s for user \"%s\", target \"%s\", " - "is too long; it should be at most 16 characters " - "long", secret_type, user, ag->ag_target->t_name); + log_warnx("%s for user \"%s\", %s, is too long; it should be " + "at most 16 characters long", secret_type, user, + ag->ag_label); } if (len < 12) { - if (ag->ag_name != NULL) - log_warnx("%s for user \"%s\", auth-group \"%s\", " - "is too short; it should be at least 12 characters " - "long", secret_type, user, ag->ag_name); - else - log_warnx("%s for user \"%s\", target \"%s\", " - "is too short; it should be at least 12 characters " - "long", secret_type, user, ag->ag_target->t_name); + log_warnx("%s for user \"%s\", %s, is too short; it should be " + "at least 12 characters long", secret_type, user, + ag->ag_label); } } @@ -219,13 +209,8 @@ auth_new_chap(struct auth_group *ag, const char *user, if (ag->ag_type == AG_TYPE_UNKNOWN) ag->ag_type = AG_TYPE_CHAP; if (ag->ag_type != AG_TYPE_CHAP) { - if (ag->ag_name != NULL) - log_warnx("cannot mix \"chap\" authentication with " - "other types for auth-group \"%s\"", ag->ag_name); - else - log_warnx("cannot mix \"chap\" authentication with " - "other types for target \"%s\"", - ag->ag_target->t_name); + log_warnx("cannot mix \"chap\" authentication with " + "other types for %s", ag->ag_label); return (false); } @@ -247,14 +232,8 @@ auth_new_chap_mutual(struct auth_group *ag, const char *user, if (ag->ag_type == AG_TYPE_UNKNOWN) ag->ag_type = AG_TYPE_CHAP_MUTUAL; if (ag->ag_type != AG_TYPE_CHAP_MUTUAL) { - if (ag->ag_name != NULL) - log_warnx("cannot mix \"chap-mutual\" authentication " - "with other types for auth-group \"%s\"", - ag->ag_name); - else - log_warnx("cannot mix \"chap-mutual\" authentication " - "with other types for target \"%s\"", - ag->ag_target->t_name); + log_warnx("cannot mix \"chap-mutual\" authentication " + "with other types for %s", ag->ag_label); return (false); } @@ -453,24 +432,17 @@ auth_portal_check(const struct auth_group *ag, const struct sockaddr_storage *sa return (true); } -struct auth_group * -auth_group_new(struct conf *conf, const char *name) +static struct auth_group * +auth_group_create(struct conf *conf, const char *name, char *label) { struct auth_group *ag; - if (name != NULL) { - ag = auth_group_find(conf, name); - if (ag != NULL) { - log_warnx("duplicated auth-group \"%s\"", name); - return (NULL); - } - } - ag = reinterpret_cast(calloc(1, sizeof(*ag))); if (ag == NULL) log_err(1, "calloc"); if (name != NULL) ag->ag_name = checked_strdup(name); + ag->ag_label = label; TAILQ_INIT(&ag->ag_auths); TAILQ_INIT(&ag->ag_names); TAILQ_INIT(&ag->ag_portals); @@ -480,6 +452,31 @@ auth_group_new(struct conf *conf, const char *name) return (ag); } +struct auth_group * +auth_group_new(struct conf *conf, const char *name) +{ + struct auth_group *ag; + char *label; + + ag = auth_group_find(conf, name); + if (ag != NULL) { + log_warnx("duplicated auth-group \"%s\"", name); + return (NULL); + } + + asprintf(&label, "auth-group \"%s\"", name); + return (auth_group_create(conf, name, label)); +} + +struct auth_group * +auth_group_new(struct conf *conf, struct target *target) +{ + char *label; + + asprintf(&label, "target \"%s\"", target->t_name); + return (auth_group_create(conf, NULL, label)); +} + void auth_group_delete(struct auth_group *ag) { @@ -496,6 +493,7 @@ auth_group_delete(struct auth_group *ag) TAILQ_FOREACH_SAFE(auth_portal, &ag->ag_portals, ap_next, auth_portal_tmp) auth_portal_delete(auth_portal); + free(ag->ag_label); free(ag->ag_name); free(ag); } @@ -1540,11 +1538,6 @@ conf_verify(struct conf *conf) } } TAILQ_FOREACH(ag, &conf->conf_auth_groups, ag_next) { - if (ag->ag_name == NULL) - assert(ag->ag_target != NULL); - else - assert(ag->ag_target == NULL); - found = false; TAILQ_FOREACH(targ, &conf->conf_targets, t_next) { if (targ->t_auth_group == ag) { diff --git a/usr.sbin/ctld/ctld.h b/usr.sbin/ctld/ctld.h index c76708daafe5..2cc9139fed1d 100644 --- a/usr.sbin/ctld/ctld.h +++ b/usr.sbin/ctld/ctld.h @@ -82,7 +82,7 @@ struct auth_group { TAILQ_ENTRY(auth_group) ag_next; struct conf *ag_conf; char *ag_name; - struct target *ag_target; + char *ag_label; int ag_type; TAILQ_HEAD(, auth) ag_auths; TAILQ_HEAD(, auth_name) ag_names; @@ -257,6 +257,8 @@ void conf_start(struct conf *new_conf); bool conf_verify(struct conf *conf); struct auth_group *auth_group_new(struct conf *conf, const char *name); +struct auth_group *auth_group_new(struct conf *conf, + struct target *target); void auth_group_delete(struct auth_group *ag); struct auth_group *auth_group_find(const struct conf *conf, const char *name); From nobody Fri Apr 11 14:03:57 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYz1p0C3qz5s48D; Fri, 11 Apr 2025 14: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYz1n3znlz43MP; Fri, 11 Apr 2025 14:03:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380237; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=voYM8R1x6bWq2b2jJlZ/50nxabDFWZZQ3kAcM7ANUKM=; b=YVcn8wfzf9jH2H9wc7fFZYZuwXdrHTlfRvs6R4VInHqqVgodLjrlTkoUXMNcWwNatyvFp2 tExbqsMca5KjN+vn1ZDd/8lzczg+e6z4FsseF09lczgvlxR6Kd8Z/fA/TbZn8qrlFXLKyd QYMsnBuhi5m5mNRYB9Jtzdy6pogCbKUtnetCBHS+jQ22aFVQUZHZ5qcQlu1ayfpswxKE1J HVqQg5DX+wnZ/Sjmmk0pf23aLoYhJG3Rtr+ovDhk0fwNg2VB4jBV95Ri/OxgY7w+3MrDh9 hMHRvOAR4m1O7AreVHyqHEH3m6U0qi58pDx/nkMZe5YmKgOFRcughoa6Gl6a5Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744380237; a=rsa-sha256; cv=none; b=rIC7pSDBFDVxWX8HZqbTYL7B1LZdRaw0NK9noq4gSY6gqvzQ9K67wxLXppneeg9D/g10Ua v7BtzaRqaOaYUNtjEs5qfsoc2ZdK04pxM3mQceokEy5KrLHN76UxJ0lvENZ65xuD41h7aj 1ZzatgKX1mRPcriK9pIv7Ce9IsgCq9CIKJezaSNLK3g32QGH/r9isMjtp1UvX/rk2IZ6zY aRpU5fBRpGz21AI3cfPbhKth/Wq6pPEN/6QNcLGgK5oPiyXSvHDVu+BKybmNiN99Fmv58T sLMU7AdXmezjbt3A6KFHyqiUxcgB9FysyzH5G6pq8gJVLDOsPnV1Z3JtW2TI3w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380237; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=voYM8R1x6bWq2b2jJlZ/50nxabDFWZZQ3kAcM7ANUKM=; b=GgR//JPmQEORoDgEH1erB2nTjTaNjWLGqOZb//omA/fmhgBMU0Sf1Ar1M+5Um6NDpaCFmR paw3PgdqqGfYGA/f/QH+ARpb+FxxQWYpqeayqOQ+JsUuznGVxfWQenyQ5S8zXcsCRFaV4V KnxatMon4JuVZGzWBz6+JHTQU7awIzSN4OiHOih6UHzfWh+EbZonGdZeoVMULPn/y4igDY /dAQ88ESTSd4l4VN4VSlRP9onayBBI1PZRa1/nlMWLMpfxAfRvo/RyNAVT92VtMLFvPycw HXOrqXnRnxGxHguVSpeK1Zytbo0/ZrQcVSaEIRrhUfiRvKvvt8+BxbN6uM+16g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYz1n3RrfzcLh; Fri, 11 Apr 2025 14:03:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BE3vRC053614; Fri, 11 Apr 2025 14:03:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BE3vEm053611; Fri, 11 Apr 2025 14:03:57 GMT (envelope-from git) Date: Fri, 11 Apr 2025 14:03:57 GMT Message-Id: <202504111403.53BE3vEm053611@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 251439f1a068 - main - ctld: Remove dead code in UCL parsing of hex DSCP values List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 251439f1a06867a6baccb274c671b2169c9959fd Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=251439f1a06867a6baccb274c671b2169c9959fd commit 251439f1a06867a6baccb274c671b2169c9959fd Author: John Baldwin AuthorDate: 2025-04-11 14:00:39 +0000 Commit: John Baldwin CommitDate: 2025-04-11 14:00:39 +0000 ctld: Remove dead code in UCL parsing of hex DSCP values libucl treats strings starting with "0x" as an integer if they do not contain invalid characters. The code also looks broken as it only calls strtol if the string exactly matches "0x" without any trailing characters. Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D49644 --- usr.sbin/ctld/uclparse.cc | 3 --- 1 file changed, 3 deletions(-) diff --git a/usr.sbin/ctld/uclparse.cc b/usr.sbin/ctld/uclparse.cc index 05cfcc8df7e7..ccb0b45a5ab1 100644 --- a/usr.sbin/ctld/uclparse.cc +++ b/usr.sbin/ctld/uclparse.cc @@ -570,9 +570,6 @@ uclparse_dscp(const char *group_type, const char *pg_name, return (portal_group_set_dscp(ucl_object_toint(obj))); key = ucl_object_tostring(obj); - if (strcmp(key, "0x") == 0) - return (portal_group_set_dscp(strtol(key + 2, NULL, 16))); - if (strcmp(key, "be") == 0 || strcmp(key, "cs0") == 0) portal_group_set_dscp(IPTOS_DSCP_CS0 >> 2); else if (strcmp(key, "ef") == 0) From nobody Fri Apr 11 14:03:58 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYz1q0v3Nz5s41V; Fri, 11 Apr 2025 14:03: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYz1p56SCz43Hf; Fri, 11 Apr 2025 14: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=1744380238; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PajOc34ciElpjkRayKekmkv44tpgGd7RxP3IAFD1Yas=; b=max6KCf448W+E6KKb1j6tb6qECvtjchRGwz91+u4cBIAnTjyDeV1Y3BMpoUcL0LTeF8Y2q wc59FtZSmi8mcgLzJ25kElsQmgEllaHcT9hvUfJgxpK4YnVt1PBClTTR4aTlcsc0VTmxMy XD/kleESybTZlF0CzHX2J3kC85c7p3vFXMrJBWknPgLCFp7wXrYquIxZh0t9U/0KJWmBnI PSA3kN0EhJk8GjP2mrPTp6A4IGz+E+QfrtPICdWufE711fUPMuWxIwCS37MylnHGyt9Z7T CyGekcWXvXwWartmdCmbMN/fHv6pQVIVCaj+09JoKF/tuR3P2WX1z6yiEv/z4A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744380238; a=rsa-sha256; cv=none; b=a2bnWtmzRNv0unfrJTjwUWy3VytZbo8otU4eMVkLqBAINEPLCI7N5f5PfPeF7V6KTQwxyj PiheLbvOBXo0LvaigeQUwSbemncHTAuZGFN+8ffla+dkbDoSgOvKRnw3hB20pAUj5Wi9dz zickG4+IWBDHsqmyClnmGxDE7gPV7XyD3/2MowmmATCedzcIIBhSsgfwMiggVRcgL8vcWl 2lIAncRFnjlhN1+/QwULpK5vj0KSKpIuAJUze+BF0RQSIIO0TBFKAtWv8bpC1RDiqjrrfI o82Ra5b0LLdqOZHg+CF296UGGD5kG13eNFj8mgQ4cOnNHErjq0Odnv63fBdiow== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380238; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PajOc34ciElpjkRayKekmkv44tpgGd7RxP3IAFD1Yas=; b=Zx7IgGA0o6ZPH1/mNBCLXY2A/jwMWh/dQWWsbpQ2WJViGjO+JbBGNRhJCCx0NSN2lT9dqj aZdJC3YQ9YgRsN/w0vuuQ+N/m1WQjwlPd2xg0PaZAp+EUV6vZI7ZHcRZ4ONS5tKmMgSMo2 HDlE9LtkDcZ6/0SH08gBhck3WY/Cok3yNwDbr4unh45KEh4V5g14igQ0yZ4GCJW4iBQSQS R969XQ62m8a0RDdO+vxky3A/ynYKc6shldCVFAq3Xo8e5KCKTyi+g/jJSJZzWcsqKCe/Fg 72/P69y67nQMl6pniUkW7wi/H7fJl+bnGFcstCvV5MFEz8Ju5Bb9nJWo/Y8IUg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYz1p4jcQzcLj; Fri, 11 Apr 2025 14:03:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BE3wk9053649; Fri, 11 Apr 2025 14:03:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BE3wMN053646; Fri, 11 Apr 2025 14:03:58 GMT (envelope-from git) Date: Fri, 11 Apr 2025 14:03:58 GMT Message-Id: <202504111403.53BE3wMN053646@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: bf4115671292 - main - ctld: Properly validate mutual user/secret for CHAP-MUTUAL in the UCL parser List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bf41156712929460aaf968e9d38ddc3847f90f6a Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=bf41156712929460aaf968e9d38ddc3847f90f6a commit bf41156712929460aaf968e9d38ddc3847f90f6a Author: John Baldwin AuthorDate: 2025-04-11 14:01:06 +0000 Commit: John Baldwin CommitDate: 2025-04-11 14:01:06 +0000 ctld: Properly validate mutual user/secret for CHAP-MUTUAL in the UCL parser The code was checking the non-mutual UCL objects twice instead. Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D49645 --- usr.sbin/ctld/uclparse.cc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/usr.sbin/ctld/uclparse.cc b/usr.sbin/ctld/uclparse.cc index ccb0b45a5ab1..1eb9f7736e4b 100644 --- a/usr.sbin/ctld/uclparse.cc +++ b/usr.sbin/ctld/uclparse.cc @@ -100,14 +100,14 @@ uclparse_chap_mutual(const char *ag_name, const ucl_object_t *obj) } mutual_user = ucl_object_find_key(obj, "mutual-user"); - if (!user || user->type != UCL_STRING) { + if (!mutual_user || mutual_user->type != UCL_STRING) { log_warnx("chap-mutual section in auth-group \"%s\" is missing " "\"mutual-user\" string key", ag_name); return (false); } mutual_secret = ucl_object_find_key(obj, "mutual-secret"); - if (!secret || secret->type != UCL_STRING) { + if (!mutual_secret || mutual_secret->type != UCL_STRING) { log_warnx("chap-mutual section in auth-group \"%s\" is missing " "\"mutual-secret\" string key", ag_name); return (false); @@ -165,14 +165,14 @@ uclparse_target_chap_mutual(const char *t_name, const ucl_object_t *obj) } mutual_user = ucl_object_find_key(obj, "mutual-user"); - if (!user || user->type != UCL_STRING) { + if (!mutual_user || mutual_user->type != UCL_STRING) { log_warnx("chap-mutual section in target \"%s\" is missing " "\"mutual-user\" string key", t_name); return (false); } mutual_secret = ucl_object_find_key(obj, "mutual-secret"); - if (!secret || secret->type != UCL_STRING) { + if (!mutual_secret || mutual_secret->type != UCL_STRING) { log_warnx("chap-mutual section in target \"%s\" is missing " "\"mutual-secret\" string key", t_name); return (false); From nobody Fri Apr 11 14:03:59 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYz1r0z9Wz5s4F4; Fri, 11 Apr 2025 14:04: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYz1q6N8qz43FT; Fri, 11 Apr 2025 14:03:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380239; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BjbR8XSaG0zHjtHIjQ3ZdgJsMLzhOrDGwr/ld8UHuzM=; b=WD4pvMCPUEblC29JMuBI4vd6wkKF+1sqtQc2mAgWlxQboZm67d9qAfF3PRxM56YVoqVwD8 /zTbyizzTFwPiqjk/RvvzTgrohCrEz2mFKgdlmOCRbbnHhzE4hx5S0ZKcIs2eoz2FZ0LH5 5gQWaTp5ABwPGOZWmkwgvO/IpMv0xa4+y8Fnn+/6UO0kqrAHoPXQUG/CBTRXjHEOq2Cx7V zfWaVakQ0bXz06NG4E3LEstHkezoVW4JPs8N7wTh+e2yOOEZpmjFN6RoJi9Zesm+o3X9ae TVT0YWIuZOkmZGMfmX4e/p1g7mbVbTCxAaN2BSeTMXu3widBAlLgoyAcCOc+fg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744380239; a=rsa-sha256; cv=none; b=V974jTMpCkflYIpDxzmHZqRkKCLuyTF4x5XRgxeeA70YkiV+YSs/rC5cexBTMK/A3SChZL eL+zYpmGpKb1Xp+9rZoYqJsb6C7wHEnDdnWfAZFL72p2kzfJVlgGzly+a+rctvnCQEAc0X 2kMuTJsrfzJewihw9zAfLhmRP37WB4fJV/kW1DfN4ypCziW4KpJRKgTPiyfSHX8rC8YOiw dz6k6xRXCQCJnrGxP6kTWS1fhjzhrzoIkN6m1ZTBMjDF2joVijHVQGFuSTlxfbmc3I3Z8r wOtu9nNxEhyHePSpeICKysqTH8uyZ53oS8nxdVzMWi6ANX3QjqeQp2YjxhpgMA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380239; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BjbR8XSaG0zHjtHIjQ3ZdgJsMLzhOrDGwr/ld8UHuzM=; b=Uvc7hF6LUbsPRzhYUW31YJopgc5kx5nj5dv9846P2ExZJBFHLht8VW84GI+gLtGy7x0qUi njf6IGk+Sokzn5NiDwmuzE4CYz1jcHnei++YB29AB2jveHdRp1/0gUWH/As2we6ra6WCE2 e7HAFjddftHy2W+b+uCAVmXdigQLc9x9IBFyCltkpOXrH1r7vZTtOGEKKvaGxJJhq0sISl RLywo/Clo57/y3oUCVjkYNqxQ6FkxSd1cmYCaVi0SID+E8fPHPQMAohQTjYkfRQ3Km279W cvTsmW+HCrwPLRqU3tuFHy/1EYaOzUommOLei0zfBj8e8IzwK9uF22LuHYV9AQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYz1q5hDNzc7m; Fri, 11 Apr 2025 14:03:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BE3xTw053685; Fri, 11 Apr 2025 14:03:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BE3xlb053682; Fri, 11 Apr 2025 14:03:59 GMT (envelope-from git) Date: Fri, 11 Apr 2025 14:03:59 GMT Message-Id: <202504111403.53BE3xlb053682@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 0708eb01f280 - main - ctld: Drop commented-out code to print the configuration List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0708eb01f28040a50693f40833562ab14fbfe2ad Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=0708eb01f28040a50693f40833562ab14fbfe2ad commit 0708eb01f28040a50693f40833562ab14fbfe2ad Author: John Baldwin AuthorDate: 2025-04-11 14:01:29 +0000 Commit: John Baldwin CommitDate: 2025-04-11 14:01:29 +0000 ctld: Drop commented-out code to print the configuration This code is incomplete (it does not handle some of the options that can be set) and easily rots since it is not enabled by default or hooked up to anything that calls it. Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D49646 --- usr.sbin/ctld/ctld.cc | 62 --------------------------------------------------- 1 file changed, 62 deletions(-) diff --git a/usr.sbin/ctld/ctld.cc b/usr.sbin/ctld/ctld.cc index 6360a88e5c97..08ac91a75c21 100644 --- a/usr.sbin/ctld/ctld.cc +++ b/usr.sbin/ctld/ctld.cc @@ -1347,68 +1347,6 @@ connection_new(struct portal *portal, int fd, const char *host, return (conn); } -#if 0 -static void -options_print(const char *prefix, nvlist_t *nvl) -{ - const char *name; - void *cookie; - - cookie = NULL; - while ((name = nvlist_next(nvl, NULL, &cookie)) != NULL) { - fprintf(stderr, "%soption %s %s\n", prefix, name, - nvlist_get_string(nvl, name)); - } -} - -static void -conf_print(struct conf *conf) -{ - struct auth_group *ag; - struct auth *auth; - struct auth_name *auth_name; - struct auth_portal *auth_portal; - struct portal_group *pg; - struct portal *portal; - struct target *targ; - struct lun *lun; - - TAILQ_FOREACH(ag, &conf->conf_auth_groups, ag_next) { - fprintf(stderr, "auth-group %s {\n", ag->ag_name); - TAILQ_FOREACH(auth, &ag->ag_auths, a_next) - fprintf(stderr, "\t chap-mutual %s %s %s %s\n", - auth->a_user, auth->a_secret, - auth->a_mutual_user, auth->a_mutual_secret); - TAILQ_FOREACH(auth_name, &ag->ag_names, an_next) - fprintf(stderr, "\t initiator-name %s\n", - auth_name->an_initiator_name); - TAILQ_FOREACH(auth_portal, &ag->ag_portals, ap_next) - fprintf(stderr, "\t initiator-portal %s\n", - auth_portal->ap_initiator_portal); - fprintf(stderr, "}\n"); - } - TAILQ_FOREACH(pg, &conf->conf_portal_groups, pg_next) { - fprintf(stderr, "portal-group %s {\n", pg->pg_name); - TAILQ_FOREACH(portal, &pg->pg_portals, p_next) - fprintf(stderr, "\t listen %s\n", portal->p_listen); - options_print("\t", pg->pg_options); - fprintf(stderr, "}\n"); - } - TAILQ_FOREACH(lun, &conf->conf_luns, l_next) { - fprintf(stderr, "\tlun %s {\n", lun->l_name); - fprintf(stderr, "\t\tpath %s\n", lun->l_path); - options_print("\t\t", lun->l_options); - fprintf(stderr, "\t}\n"); - } - TAILQ_FOREACH(targ, &conf->conf_targets, t_next) { - fprintf(stderr, "target %s {\n", targ->t_name); - if (targ->t_alias != NULL) - fprintf(stderr, "\t alias %s\n", targ->t_alias); - fprintf(stderr, "}\n"); - } -} -#endif - static bool conf_verify_lun(struct lun *lun) { From nobody Fri Apr 11 14:04:00 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYz1s1hHfz5s41X; Fri, 11 Apr 2025 14:04: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYz1r6nYlz43W4; Fri, 11 Apr 2025 14:04:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380240; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=y7Pri9NiFmmSw25xzAUKlRHmqtUW1CxJe8U92bef/Kg=; b=kMZPQEx6mXFoHXG9FzSSyMK39wE0zDVFHurUy4TXdra1cCu4ocKZCS35nQli1aC1utsF5f 5SXKgfP715MbJ9g4bRO0z4miBMyqLejCqZteBMMh94gPYaazJaEvfjGiuM0mvN2HsCvJSG JozAKlWqkG4sOYy0ALUynb9S6Byfe5bYjZ+PDog4r/lOVoAxDge2GdSSn/DFBKNK4c4Krh DLksbprKp5NysrI2NYTl32q2fbu+yHLsCYP81BCqjJn33ZiDfy7i2GDMO0Old74HVwy2xk H+6qaqB8sWVVUTgKBvkyNOI2YWrJiJS9vGAcYhkpB4DaoC3IrgX9nNBIWAKo9w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744380241; a=rsa-sha256; cv=none; b=uuI8BJ4n5dahNvdrLb1W0lWpJOftfRkFozzGwuk6shb6jLjZVMRzMu0vW57HGh/lkdauqs QGLmcjBQvEHkGETFwA/Dgoc9j3c88Cb57tMx8+xr5kZ+jpVSh9jypSMZpqUmE+Z66AKl1V XU+pHssYMLKydRS5DbVLhaJ0dlg58SkAFkC2xJdbK+115KKRVo1FFR6PvQdD4bQcaDHAFe 1iJEBanaa6A0JKKxFMfixVp1AcHXB9YO26b/F68hJ6PWMRlOSGDt38UMx7wSTfCqWkxAl7 R7GBfp/Ea8BN9LEx/9qgyCwO6EhqabLmPZx2cxePQZPe63IvjGCsZudWDBbyuQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380241; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=y7Pri9NiFmmSw25xzAUKlRHmqtUW1CxJe8U92bef/Kg=; b=eiL9X92bj0chdEdI5qOIw32CASutQRB+U+XtccXyZqZazFH+10Bcn8mEi7yRS4RlnPaq1R oC6LjVNhhzGzzjdZ9RyojJhanavycNGKZcr2SZ3ocJ0JfEi27g1r3dTx7ia9MC1HYs1tQQ JSXXGNYUpRHopH7vY17fuKd994ZQT+UuIXWQzxyxwcCHjLj0W7ogzW9vwMCGagB1v8i4Dm 5Xj26UxhSN81UeGoRtQEEbzN2u48LCfIxzK6wb5d53bqtCr7PIjUWPqnT+AXTf40dZCyGI yWCNoCC7k61Xm4ipUf+Oe/PLeh3eJu2iZw8CLDJzZUs7b8yIEYIbqIL2NlzYfw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYz1r6JpDzbl0; Fri, 11 Apr 2025 14:04:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BE40Zk053725; Fri, 11 Apr 2025 14:04:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BE40mi053722; Fri, 11 Apr 2025 14:04:00 GMT (envelope-from git) Date: Fri, 11 Apr 2025 14:04:00 GMT Message-Id: <202504111404.53BE40mi053722@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: f3eb1514ce44 - main - ctld: Tighten parsing of IPv6 addresses for initiator-portal List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f3eb1514ce44aea5d288a74f34a0c6925ecd43ea Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=f3eb1514ce44aea5d288a74f34a0c6925ecd43ea commit f3eb1514ce44aea5d288a74f34a0c6925ecd43ea Author: John Baldwin AuthorDate: 2025-04-11 14:01:48 +0000 Commit: John Baldwin CommitDate: 2025-04-11 14:01:48 +0000 ctld: Tighten parsing of IPv6 addresses for initiator-portal If an address starts with a [ character, require that it ends with a ] character. Also, if an address starts with a [ character, assume it is an IPv6 address. Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D49647 --- usr.sbin/ctld/ctld.cc | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/usr.sbin/ctld/ctld.cc b/usr.sbin/ctld/ctld.cc index 08ac91a75c21..bc794815830c 100644 --- a/usr.sbin/ctld/ctld.cc +++ b/usr.sbin/ctld/ctld.cc @@ -319,14 +319,17 @@ auth_portal_new(struct auth_group *ag, const char *portal) ap->ap_initiator_portal = checked_strdup(portal); mask = str = checked_strdup(portal); net = strsep(&mask, "/"); - if (net[0] == '[') + if (net[0] == '[') { net++; - len = strlen(net); - if (len == 0) - goto error; - if (net[len - 1] == ']') + len = strlen(net); + if (len < 2) + goto error; + if (net[len - 1] != ']') + goto error; net[len - 1] = 0; - if (strchr(net, ':') != NULL) { + } else if (net[0] == '\0') + goto error; + if (str[0] == '[' || strchr(net, ':') != NULL) { struct sockaddr_in6 *sin6 = (struct sockaddr_in6 *)&ap->ap_sa; From nobody Fri Apr 11 14:04:01 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYz1t2jkrz5s4Br; Fri, 11 Apr 2025 14:04: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYz1t0Z0Yz43Qf; Fri, 11 Apr 2025 14:04:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380242; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vxhYP5SnBR+JvjV2TPvc8KScVY1bkvZ6Ry74e73pxQ4=; b=EFOmYBUtVSnY4cQYFXma2jtvFFxMGXzAk6R+3nOM/7SvPM2mwlljf/4qlQbqtPYMvuwSpq fDzJq3O8/5LAbaAZkCW70H0/ZqKiWNyk4WGmW10uATKbszVt06lVVkAFvEqrh6E9OOy94j FNIFj3M8Z9EWW+/H8BgqnoOJao54zPePCtC3sxhweOotcrVKRR1H8nM3p0if+871xh3C+8 LcEla8ePhlScEltG7nMDV+b9jWKExbGkwdl33SUYx8+20QHQrfPVhxJMuYe8Cd5gmtCHJc suhpIgTUsqzFIaHJIfTL4k7l84VKdRqXAjOGyMBCjt36sfTeUtOj+8JpykOPGg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744380242; a=rsa-sha256; cv=none; b=KzGJLooShI7UHDjkFk7UV4CQemz0CWpL4Vuiq+rdb/eRO6vSkLgciAQu58EUDF29WJ5xH4 jwpXiwbXNC1AEs0gN7Pj0zO69G4ASDVv5m7+h6HDU+sFZgPn6fnaj1MDppDw4k9gdTW+/h V3QRV27bWCWsBSvP9jumaDy2CQNSr1/bE5MmWoqavRmthP2ANZ/5PRulxrE+fIqAS8I8u0 2kR+mjCXYmslBvv8DPuW7mwr5qg5fYivFTX2E5DU3WboQjwbplhEHjlDuya+sxoiPXG6gV TFxg0mMc712hgTEJ2cqQIsCF7Bb9vGDI8Drt+7wly5qRAw0tbg2fh9haT2SrFg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380242; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vxhYP5SnBR+JvjV2TPvc8KScVY1bkvZ6Ry74e73pxQ4=; b=MQgSyy+RYmqIhKXvj/8k1YOulFAWMIUq8nUfVnJay9kOFdzC2uwkH3ZG9IQfJuuf8eQdJV y512qjW8XDDNGmEXNULe2eeTM1zRLPWh6eHVLnKdpt/t8a3Z/W4TMNSGK9xkfqYz8tqJ64 UU/AbsE0Eb62jlKxuqq3tYaIGyuohlVV331qIQNSTHIBj/HnZbAf4Czz5zXcCIJhMWI6tI AflxBRoAogx3cAhCi3o/9o6n2xgNW5qh7ys3JS5/cS2JxOsXKNS/7cs+AnF5wVjxXU9fue 5ojpPzQlyY9ewmqGV3jo1w1HE1GWxcUt654+p+rRmaF10szkfTqUBAtlxUHB7A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYz1t06fFzcLk; Fri, 11 Apr 2025 14:04:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BE41do053764; Fri, 11 Apr 2025 14:04:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BE41ok053761; Fri, 11 Apr 2025 14:04:01 GMT (envelope-from git) Date: Fri, 11 Apr 2025 14:04:01 GMT Message-Id: <202504111404.53BE41ok053761@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 4449cf28a315 - main - ctld: Require a mask if / is specified in an initiator portal List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4449cf28a3152cf6e87a45176ae15ae250e543de Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=4449cf28a3152cf6e87a45176ae15ae250e543de commit 4449cf28a3152cf6e87a45176ae15ae250e543de Author: John Baldwin AuthorDate: 2025-04-11 14:02:09 +0000 Commit: John Baldwin CommitDate: 2025-04-11 14:02:09 +0000 ctld: Require a mask if / is specified in an initiator portal If the / separator in a portal string is the last character in the string, treat the portal as invalid. Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D49648 --- usr.sbin/ctld/ctld.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/usr.sbin/ctld/ctld.cc b/usr.sbin/ctld/ctld.cc index bc794815830c..ff23db6c5293 100644 --- a/usr.sbin/ctld/ctld.cc +++ b/usr.sbin/ctld/ctld.cc @@ -349,6 +349,8 @@ auth_portal_new(struct auth_group *ag, const char *portal) dm = 32; } if (mask != NULL) { + if (mask[0] == '\0') + goto error; m = strtol(mask, &tmp, 0); if (m < 0 || m > dm || tmp[0] != 0) goto error; From nobody Fri Apr 11 14:04:03 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYz1v3P9zz5s3w2; Fri, 11 Apr 2025 14:04:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYz1v1PR2z43Nn; Fri, 11 Apr 2025 14:04:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380243; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PcSZmhRV12xFxXIuZN7qBKoYLHRV10ONjI0iXQlL7PY=; b=TDslsLvly4j0Vlh8JeehHlHV1nQb/bmx6jsE1kuo0lOgmuEhH29J7xm73OCH6CY18yWivn sMOxquc1mYawgs58OzFUNrya3Yyl4F9+CFPDXiuKlOd4rfox4J+EcJlfwFtyqJNRXgtgKe b3nYd3HyV0rR6jVoc9x+ODZHw3qIQ6n3F4YohObRMscFM+oysVz8YgK6yL5n/eLdDNuDVq 3NjGgsSVpSSoqABkNYlrj+iUUwT/JtTSXqlnm8Z2pXMI2PwjqztSe0t/PWaOdGSJ6EkKXN YOx9OAc6pcJh5MMs776LLRsrrbqSjhpWNy1Z1sVNNyz5G6GYzP5X89f8HOUprA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744380243; a=rsa-sha256; cv=none; b=DxAeEwMuk++5yl+utaq1Qy8zj2/OSmljfexhE3ZVRBueeaTWICGY+HQRc4CF3P3vBzcrDQ pCUoN2j+bW8Rc48vZrh3+hPKaG2QKOvjmvcsQ6w7EdONJvAAhD6aBeK0RccOQR02mvQePQ c37SQ5hDMeeRnj4Tz8Jhie31AgO21Q6erA8NyEZa7C/4GUhd89NqpneOxziGP7sX9RE4Oz kMxGNTSLWrKNQgHzwcTWfurdthpKSKZxWaaukKLGvIXqwGSfNMF9rPLJ58V9zB8QpiXCa2 mZF8foIBim1uNYlMFVW/eVAJxN4ajtwLoSoyEMldgvKMJLRxxBFWrtN+PxGW1A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380243; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PcSZmhRV12xFxXIuZN7qBKoYLHRV10ONjI0iXQlL7PY=; b=h6AySQL2IPckDaWmnx8d3FsWoapxQpcefPho+zzqVcV8XJ5tl7rh+Pa/qIMquBilM/HjUp JEfhjS2MB2ebgWdMHei+5gIxJVu07SEfrgQfLjbLPgSbSDhSLYXmmwH/LcLhEFqu2mRLvB Ed3b7gV6Dvny9F5JSx0Af/Ca5R8wpAj4I/Rvj4wNAbX5TwZ2LImknjRo0kBRrCMUDDZWlC dzYJ2VwfRx23kP0Fc4+cTagQ59bVnHw7e3lx0axid/Lvxvaq+dfvgifxZMRbUoQDvcfbs3 e3HufQ4VAvFu4+/sLWzIluCEdOPET0WjxdzemeQAIxPNG+MKh2XtAeoBqcTIPQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYz1v0mStzcQB; Fri, 11 Apr 2025 14:04:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BE43JM053802; Fri, 11 Apr 2025 14:04:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BE43Fg053799; Fri, 11 Apr 2025 14:04:03 GMT (envelope-from git) Date: Fri, 11 Apr 2025 14:04:03 GMT Message-Id: <202504111404.53BE43Fg053799@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: ce8cfd998b4f - main - ctld: Remove dead logging code List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ce8cfd998b4fc01cfd47e009b0f6dead404841b4 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=ce8cfd998b4fc01cfd47e009b0f6dead404841b4 commit ce8cfd998b4fc01cfd47e009b0f6dead404841b4 Author: John Baldwin AuthorDate: 2025-04-11 14:02:29 +0000 Commit: John Baldwin CommitDate: 2025-04-11 14:02:29 +0000 ctld: Remove dead logging code Portal discovery auth groups are always named auth groups Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D49649 --- usr.sbin/ctld/login.cc | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/usr.sbin/ctld/login.cc b/usr.sbin/ctld/login.cc index 84d329964ada..961f57eb03fb 100644 --- a/usr.sbin/ctld/login.cc +++ b/usr.sbin/ctld/login.cc @@ -1003,12 +1003,8 @@ login(struct ctld_connection *conn) } else { assert(conn->conn_session_type == CONN_SESSION_TYPE_DISCOVERY); ag = pg->pg_discovery_auth_group; - if (ag->ag_name != NULL) { - log_debugx("initiator requests " - "discovery session; auth-group \"%s\"", ag->ag_name); - } else { - log_debugx("initiator requests discovery session"); - } + log_debugx("initiator requests discovery session; %s", + ag->ag_label); } if (ag->ag_type == AG_TYPE_DENY) { From nobody Fri Apr 11 14:04:04 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZYz1w4DMXz5s4Sj; Fri, 11 Apr 2025 14:04: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZYz1w2Rz3z43X2; Fri, 11 Apr 2025 14:04:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380244; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+rPszJRf/7/Xxv+GIbyByZ4dgmRU1WUankdjVXNvEqQ=; b=cRWfQEStww5Qj1bq69FFPn5yE7ECrTt2RYPP08I7u0zc0FNH+Z6oj0Zp54W2eX2qhgg4mY 5uPNsH3lN4wnCVNHPaV0Fusj/EKirKJc696CctG5z1oTELa/gfaSN3fHuQx9UPdZ95QL6j MJl9uQdhdaFDudgph4OOjxS7ZHITYvITxhpzsJeKvpOkNqb5kziNtorUrXQ6QMZ5Gp2YLI YPRBBCL5bqvZZM0V6Do9M7iGIX2R1eqPmVSgTV5Dko4HoKbF5YPDZd1cO+IUlUuZ+9Cwe3 C21s/lMb//xwH4/W3sXT59GeuUvS07/yBDrAmruRuUIGwdh97pLw8lKfmfsguA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744380244; a=rsa-sha256; cv=none; b=jI/euZWZYj0PJRXM6BlpfaAXkee6FDR0gUsGEfu3ifALvh7pU27EpSOhw/ghbNptJM04HK MTqiVLhlrY+XUV4WW/OxBI9EAysp3X/oEedHcdwlQMwgx8++KgvilBh1t3vBDEBGawoYcu iOOtMkw0KA1ru5MU+BWM8IB6LVwhBJqkGR/kx9WlJzECpTZIpBUKaytqmTAFZkeeAn7IqM r7k3S3nRAUAMA9D8JmGCi/sTfnoFT/obtMwg7CIWRI8N7FSbCAiadfmFJ6RufzCoNJSO8K XdPlYGjeb7XI7Os2L6RwnI0N73gktEgXzSgC+CwfT50b0GK/NP216GDZ31MfRw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744380244; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+rPszJRf/7/Xxv+GIbyByZ4dgmRU1WUankdjVXNvEqQ=; b=qY0Bn470pOiDHZtyxFiAJ1nSruVNpG8WZaxeOCVc+bCJCPuSp7bnrT2ZZ1G2OOObYF3BC3 OMjA5Xa7ZRIbTA1Y7w8QGT150ubq1O4fnBoFMLhdXtiXqLPEHl/UUtjipiEpOVx3UMfGH9 1tsjPnmOOzCiQTgC5aC1RGrGEGrV/jyZHp6Jw9gtzhgl0QcW7TZ9DpRLXUGVrQx99Lz4lJ oxWTG7MOqyTsfM7Sd+dH7cAkpuTH5HNKhFYmLcDPkl8BId15Wc2nAb/tNR2QPQcheFIApc HZzT0iJ3XfRAtt4sH+ZjT7m5/vSa25SqRwXk5TYXHdTvOdunVvZMpFpGL2RgpA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZYz1w213qzc7n; Fri, 11 Apr 2025 14:04:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BE4479053839; Fri, 11 Apr 2025 14:04:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BE44n6053836; Fri, 11 Apr 2025 14:04:04 GMT (envelope-from git) Date: Fri, 11 Apr 2025 14:04:04 GMT Message-Id: <202504111404.53BE44n6053836@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 30020689fb1e - main - ctld: Do not remove item from an nvlist while iterating it List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 30020689fb1e5c9549e430bd23600c88e1257697 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=30020689fb1e5c9549e430bd23600c88e1257697 commit 30020689fb1e5c9549e430bd23600c88e1257697 Author: John Baldwin AuthorDate: 2025-04-11 14:02:48 +0000 Commit: John Baldwin CommitDate: 2025-04-11 14:02:48 +0000 ctld: Do not remove item from an nvlist while iterating it While here, make use of cnvlist_* to simplify this code. Fixes: d42a73fb6a85 ("ctld: Add a dedicated API between parse.y and the rest of the program") Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D49650 --- usr.sbin/ctld/kernel.cc | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/usr.sbin/ctld/kernel.cc b/usr.sbin/ctld/kernel.cc index 9ddf22b9f4e0..0cd0eaff6c6f 100644 --- a/usr.sbin/ctld/kernel.cc +++ b/usr.sbin/ctld/kernel.cc @@ -40,6 +40,7 @@ #include #include #include +#include #include #include #include @@ -635,12 +636,12 @@ retry_port: NULL) { if (strcmp(key, "file") == 0 || strcmp(key, "dev") == 0) { - cl->l_path = nvlist_take_string(lun->attr_list, - key); + cl->l_path = checked_strdup( + cnvlist_get_string(cookie)); continue; } nvlist_add_string(cl->l_options, key, - nvlist_get_string(lun->attr_list, key)); + cnvlist_get_string(cookie)); error = nvlist_error(cl->l_options); if (error != 0) log_warnc(error, "unable to add CTL lun option " From nobody Fri Apr 11 17:02:28 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ2zn0Y33z5sKgS; Fri, 11 Apr 2025 17:02: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ2zm6xphz3RW0; Fri, 11 Apr 2025 17:02:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744390949; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FI9TYne6aHLjkfkYGlYmrBsXhR34wXxj7GxtlxrPOzc=; b=ZFmCUgIyuzfYwxgg/mCNjI/5a0LapSjhT4JvtD6lIOOwAHSGpONahbi5EdKTmPAJoqXLhf v0E2ElJ/yYdAa8Vf0+GKDdRxzJqYHU2ZRZMaJRM/GBoM+ukcvKEHfsUMR/0ACZoMCDasW3 voUdIoEzIfeC4cp/MCPOMjC6cJOjHg4JfqBzOQXAfpE32ARejgpbVwKaQEQKUG3vlSyKkt 24j2U/HOhac5CaO8BDwWPPPE7GfJ/kY9eUWVH4p6SC4db94RtcgssZ7X/mDgdABRfnOHna +yP37bSSXUgIDTksEmELRkN8aprvxBrqolPt2/IukN5h1yM/dDvKOFuTfXZgbg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744390949; a=rsa-sha256; cv=none; b=e+lQHazhcW1X6oNLZWPdsHnlXCIXzWu7cnZKyaO3WHoesMIFirQomWHuR8sKmqUOOqKqQ3 qo8ACQBsxwZIxMiUqJxRKck3BcqqeVYLoR45EPbOhphS/CsLVGoM3JH4JiyeVm4zB1fSY/ ykstZhBaHnNxyxnsm19PHI/STCPljfpRb/M65HJ6ncA+tZ6So35kmaseyGfDjR0qDpEKbI JrxkDjcgJkefsac1KSE7YgqAXaD5iwDsX6jePxNd5Ax56Yvy5pZXnUkDl65/EDwN3p9Vk3 pyxp3pr8tFxk013PmQShCxa5pWdVt6wkm9MEcBHa8SHkSOqwO6vNYzDRHgju7w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744390949; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FI9TYne6aHLjkfkYGlYmrBsXhR34wXxj7GxtlxrPOzc=; b=LbfUkDvxro2TvTu/oTARli/wMnbDXPZ/ostaB8swkWaKMqZvnDpFnLB5X8Q6Te3XqZB5xl lEGJiaMXlpOQZvLLCLh4VMpfJC21eqVqHfmQLSJNpy3chJZuPx6+vXazjuevD7HOB7fJwT O2Zv03wE+m3D3qr91rGYtbFST4PtJ/GM3rd7ggtix9IaP4s3oF6Z9FLJAe3Vgqq8bQKi3F by6fGXSMpxFzNCs3eYwyDAvoM5Sy1fD0AJPQbK0wS8I21ShJHM0i34P7uFty68KPOPlrOE c15HUhGeFS97vvWoLuwnci+/jsgHPshJhjVzFw/h4UDz/MYSk5nrJ4+iGfQTuQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ2zm6Xcrzhr0; Fri, 11 Apr 2025 17:02:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BH2SvG090721; Fri, 11 Apr 2025 17:02:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BH2SnA090718; Fri, 11 Apr 2025 17:02:28 GMT (envelope-from git) Date: Fri, 11 Apr 2025 17:02:28 GMT Message-Id: <202504111702.53BH2SnA090718@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ka Ho Ng Subject: git: 7c72c0822b94 - main - tmpfs: turn vfs.tmpfs.memory_percent into CTLFLAG_RWTUN List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: khng X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7c72c0822b946626909f5a538d66a43d63c778dc Auto-Submitted: auto-generated The branch main has been updated by khng: URL: https://cgit.FreeBSD.org/src/commit/?id=7c72c0822b946626909f5a538d66a43d63c778dc commit 7c72c0822b946626909f5a538d66a43d63c778dc Author: Ka Ho Ng AuthorDate: 2025-04-11 17:02:06 +0000 Commit: Ka Ho Ng CommitDate: 2025-04-11 17:02:06 +0000 tmpfs: turn vfs.tmpfs.memory_percent into CTLFLAG_RWTUN So sysctl is not the only way to set the value of this knob, this can be set by loader tunables as well. Sponsored by: Juniper Networks, Inc. MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D49763 --- sys/fs/tmpfs/tmpfs_subr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/fs/tmpfs/tmpfs_subr.c b/sys/fs/tmpfs/tmpfs_subr.c index 37be0b762579..1237f6b92cdb 100644 --- a/sys/fs/tmpfs/tmpfs_subr.c +++ b/sys/fs/tmpfs/tmpfs_subr.c @@ -443,7 +443,7 @@ tmpfs_set_reserve_from_percent(void) } SYSCTL_PROC(_vfs_tmpfs, OID_AUTO, memory_percent, - CTLTYPE_INT | CTLFLAG_MPSAFE | CTLFLAG_RW, &tmpfs_mem_percent, 0, + CTLTYPE_INT | CTLFLAG_MPSAFE | CTLFLAG_RWTUN, &tmpfs_mem_percent, 0, sysctl_mem_percent, "I", "Percent of available memory that can be used if no size limit"); From nobody Fri Apr 11 17:14:16 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ3Fm0fxVz5sM25 for ; Fri, 11 Apr 2025 17:14:36 +0000 (UTC) (envelope-from marklmi@yahoo.com) Received: from sonic314-19.consmr.mail.gq1.yahoo.com (sonic314-19.consmr.mail.gq1.yahoo.com [98.137.69.82]) (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) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ3Fj3TJRz3Ryp for ; Fri, 11 Apr 2025 17:14:33 +0000 (UTC) (envelope-from marklmi@yahoo.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=yahoo.com header.s=s2048 header.b=bUG5JIrq; dmarc=pass (policy=reject) header.from=yahoo.com; spf=pass (mx1.freebsd.org: domain of marklmi@yahoo.com designates 98.137.69.82 as permitted sender) smtp.mailfrom=marklmi@yahoo.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1744391671; bh=m90MwOIqBev+eO5rGpkelBCKeF2FiXzMX58CzB0iHe0=; h=From:Subject:Date:Cc:To:References:From:Subject:Reply-To; b=bUG5JIrqMwR0q50Nil4YVpN2kLAerh5/0WKBPcP3Zmy2gf8cBSgL4cb25XrNaV+rvUaGtZNiUxukQMJCjokUQsOpLkFP2xZ0K06gUIEwo2oer8IqsyeBgcdwy9rlMH7pd7Pg+DO62z6AYCmdDqbCI4AxvfsgZmIxdyJc7Jvh6yUl1J4fCUyh9A7VegOyYbnZ0zOAkTAt4VgU2lIi6WGcd6ZfRhOYc9JPGGRuoqutoMKZz3vuJAIGxeSfm3PiP+jAc+bhG+OAk9+VV+g+Nf+XBMV3SXIRnqgo5I+p5u2AM3iKxDsstBp0BR+sYrimZuSbxzZoP7hoZmC+p/5iRHdfRg== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1744391671; bh=EkS48NHlwsbbQjt4gh5VS26Hlz75nlXvpIE0T6mCzbZ=; h=X-Sonic-MF:From:Subject:Date:To:From:Subject; b=kjPyVkX4kszog+KSN/gpmUrszTRGE/wk+qEzqeOO1nM/8micJ/DNr7uIU3H4+sMuOFVGMs0JUKXVaUhdGusCjAvwc4urWUbRIazR8tNOBxOlL1sSF0A4QTqOe3KLy/irCKqm1Vavis5Qe7V7sna/zXdwAuWJ86qEXljaLqqD/z2xngBUC4A+e83De0f2O+CjzanqZZmZ4VSijwrAUi2TyVam4etipofQbjQlqkNVOWu0yGSL6SA/cS1mfXsuBa/Av7mf2tbQPQfJMgBBo4c8To5y1ltvZ1savZdSDsHwanqf2R+J7P1PYVDM+H4aMxqCaM6fQRORzv0JT2OFMhd8kQ== X-YMail-OSG: 0lKpoOgVM1naNiDO27dwkTt2DQvlbqww.rk8srsLtw0QwM9fZFMk8PKmVI3jhsu BA7.8UcXrkpWQ4JbKlCPicAmZjR9xYNozzmogveSW8FoYSt2Hw2krhaHn0DDVrFiij_oOEpoKbZg t5fWMPCH1qlEP4_v9_Jxz1C.0t87fPcFpqTAk9soUEk0eZsli4aV20MJIFMiBBMr2dA106MnA.1N TtRQMbhtnGpqrhns.Dpu6SGJCfPhjxcuIeuCzT7TaeM_CW5WMhvdlbCVn8M46aCQzB7BSuePhFKT byxvduwCoJR.4EoVgqyyf30r5JjlAF2_nOhPBx0UbhmZE.XHKp7_PWfgIdCbqKvwBxpGupeHZIKg 06VSG1.aziX5tHHm89MetJPszTBR7zsXYciLGjONwvi.__5F1HjjQguIS8ZkPhlwbpVMhm722GVV gLgP5nCK7tS3vH2_jJ8vnvmNFtQkij7f.iW2iS_F0QYzzCMMHjPMEw7HOgtgwXIcf62WCQyzIOvs UF4iNcuQN7a8qHLKNmFDwl0EzmcAXU3S7Zaeo0rTEXT9esxsy0LYHPLZg5Aw29MmBTHs_aU2QYSe NNL0DcIkJ4JeGpJTAl_V.AIq.mlbE2xzrbstRSk1hOF064dI8FGMkSazv0T.yr0QhoqRVpFwCX4j jcrCPB0nNhfREyV94Gd3S8awixhevLY0oYrTfC9g_qi9h2dstclksHR7xcjG.uMmY96BH.eax0Zb Bl0hpxYMUSSetr_KBIq6Ns7LRfy_LOQ.F5VLlkRn7ZXeyMYSbf9s84iObaBZSLKGEbMlC1CxsKQ8 v_JNLSOVWc2R1wJ88R_q1rDYoEBw.Hlr3bTp27oPiUMht3Mgc6OZhh0mTZx6j4ZIYGuXwK9g24SS uNtXGDk0MCIZ0vXlffXOURQybuljzX.PLuLMqVDMpPjuj_7zRRNOzKxQb2ftfKy2bhELljqbn2xq X5.SHZoNNxw0._JaO4iSTjXCOAbFZfj89iKG3R9NKbFkouh9N3A9oC1ypbypCCroKH61jxX2mxMh SwyDG6MzTcaSCEEwJRZuE6nqNIg3GnrCxSQJ8Z9_bPnG9TirhPnbu6Mb_igTWvN9v1X3i7gfQLsb O4G0Bm0j7zMOfRTnFOHpPlcpP3B9zBAVoLHdF7V0UtS1_5siE65MkEq7NVNjBpSJDPJhauGxlmBP LmebyMtmmDn7FqtVXPvJePuiLhUzw_g.sJOKESsbgCKFgyRrtlWOURyjfrZi4UQM9vjgILhcysW6 gGXscqYiDrU.vMDvk4IdOaaKx2Xtaz.EVRDXbowgodKRR.Ve9_ntTLh5oZ39BolGWcUTa522ctMR Rd3tpYlCVIAnxbHnxpZrVKQafPqG64MDbeafPVJx4NRZgetaoTz65oIZxTMRkgBKCJcPBapTuzuH MpNCQjg4OCzCTMHYD7qhhzc9iACGziQipxGz6cJVtFkFTYthdemvcCSJhNDDZ5FpLqx4xz41Vnfq qhp4lgpPHAV3HQrj5pVu3GTT1GQI1bEYEwK8ZSr_l7eqkMB.dWHrKeMd7mNQ0qrBAv0QW8xCxjPS b9FyQpB8PbM6il880uOPw8NC_ksOepcpGSlkQ4hERG1SmuRjETg8vlO98cXoP._g0GF99PHpgBAo V6iW_pR0febIGMPpRHTNzPFCLS48wji9x5GkDObXiroFkXoDk.UWoy3pHe74Xod6W90oApgH6xu. K7RPnvbvvM2AAuXGZOLQFVv2GZZiJHLPE64yQYliYMtDMjQ_dMVVI7D1b88NfUeotAyBD7Zchjzi 47rIZKNU4Mxp1UlQZGxjWItdI91hOnMq9KVKHKZuKuqGUkdRfF0KKRIfVoA97sFxXJ633JxsKHP2 x8myWzMbqi44FlRJBIYgw_YUfpalJ5pv8RCpwpQH5eREMXsdDJcAVILN.31KwVcojKALpEIl9t4E 4o0jdCXTX20NuiCnAby3LFl6E4lqIq8EZO5pXgf1K7Ib9E3b2bBN6Z2DXWOchGJQiHNk5XUmcKbh niekLWrqUStgN3Ofm3Tyo_5M2yKrIXaWBI6AIPMOLXIpOD1qm7MefMs62JEs1P8y.i7MDxFs2Riq 2Pu1FcMOuMBGAlfwrzV7YNH9XStdtWP6fC96UfE72EPzu8icmdkggYcrwjKs.zGaeLx15YKeK4Lh Uzv3bg6R6QC4p_X5HsrEdwgA6cONIX.Z3YI.Oo_ujurGTD_ghye54D0_woi2IHX08RE9FhbWm_eF iEJHlg5dq3Ke3IfxAYizKcp2iKXgMeeVgvIP0EAyZYM7FI376SrefKGAxF8Z6ckJMXpl9LicQfwi _wgmrHo4B2kiIc_JE8taR.DeGGOmBLQ-- X-Sonic-MF: X-Sonic-ID: 14cddccf-dc9c-42c9-8b10-eb568da84373 Received: from sonic.gate.mail.ne1.yahoo.com by sonic314.consmr.mail.gq1.yahoo.com with HTTP; Fri, 11 Apr 2025 17:14:31 +0000 Received: by hermes--production-gq1-74d64bb7d7-x6m69 (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 9f49d94a1aa18bf369dfd9870a1e3413; Fri, 11 Apr 2025 17:14:27 +0000 (UTC) From: Mark Millard Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.500.181.1.5\)) Subject: RE: git: 6527682ab705 - main - src: Use gnu++17 as the default C++ standard Message-Id: <5B14F0FB-54D8-4FE0-BEFA-C4713DF11B20@yahoo.com> Date: Fri, 11 Apr 2025 10:14:16 -0700 Cc: FreeBSD Toolchain To: John Baldwin , dev-commits-src-main@freebsd.org X-Mailer: Apple Mail (2.3826.500.181.1.5) References: <5B14F0FB-54D8-4FE0-BEFA-C4713DF11B20.ref@yahoo.com> X-Spamd-Result: default: False [-4.50 / 15.00]; RBL_SENDERSCORE_REPUT_9(-1.00)[98.137.69.82:from]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.999]; DMARC_POLICY_ALLOW(-0.50)[yahoo.com,reject]; MV_CASE(0.50)[]; R_SPF_ALLOW(-0.20)[+ptr:yahoo.com]; R_DKIM_ALLOW(-0.20)[yahoo.com:s=s2048]; MIME_GOOD(-0.10)[text/plain]; RCVD_TLS_LAST(0.00)[]; DKIM_TRACE(0.00)[yahoo.com:+]; ARC_NA(0.00)[]; TO_DN_SOME(0.00)[]; MIME_TRACE(0.00)[0:+]; DWL_DNSWL_NONE(0.00)[yahoo.com:dkim]; FREEMAIL_FROM(0.00)[yahoo.com]; RCPT_COUNT_THREE(0.00)[3]; FROM_HAS_DN(0.00)[]; FREEMAIL_ENVFROM(0.00)[yahoo.com]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; FROM_EQ_ENVFROM(0.00)[]; ASN(0.00)[asn:36647, ipnet:98.137.64.0/20, country:US]; MLMMJ_DEST(0.00)[dev-commits-src-main@freebsd.org]; RWL_MAILSPIKE_POSSIBLE(0.00)[98.137.69.82:from]; MID_RHS_MATCH_FROM(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[98.137.69.82:from] X-Rspamd-Queue-Id: 4ZZ3Fj3TJRz3Ryp X-Spamd-Bar: ---- John Baldwin wrote on Date: Fri, 11 Apr 2025 13:54:30 UTC : > The branch main has been updated by jhb: >=20 > URL: = https://cgit.FreeBSD.org/src/commit/?id=3D6527682ab7058e5023a2a6dea01d51c1= 5dca701f >=20 > commit 6527682ab7058e5023a2a6dea01d51c15dca701f > Author: John Baldwin > AuthorDate: 2025-04-11 13:53:50 +0000 > Commit: John Baldwin > CommitDate: 2025-04-11 13:53:50 +0000 >=20 > src: Use gnu++17 as the default C++ standard >=20 > Previously the compiler's default C++ standard was used unlike C where > bsd.sys.mk explicitly sets a default language version. Setting an > explicit default version will give a more uniform experience across > different compilers and compiler versions. >=20 > gnu++17 was chosen to match the default C standard. It is well > supported by a wide range of clang (5+) and GCC (9+) versions. >=20 > gnu++17 is also the default C++ standard in recent versions of clang > (16+) and GCC (11+). As a result, many of the explicit CXXSTD > settings in Makefiles had the effect of lowering the C++ standard > instead of raising it as was originally intended and are removed. >=20 > Note that the remaining explicit CXXSTD settings for atf and liblutok > explicitly lower the standard to C++11 due to use of the deprecated > auto_ptr<> template which is removed in later versions. >=20 > Reviewed by: imp, asomers, dim, emaste > Differential Revision: https://reviews.freebsd.org/D49223 [The note below is just a thought prompted by this. It applies to the prior context as well.] As I understand many C++ ports use the system c++ toolchain and libc++ to build and operate --and there is only one libc++ available in some respects. If that is the case . . . This ends ends up controlling the C++ library's features for any libc++ library material used via any of: /lib/libc++.so.1 /usr/lib/debug/lib/libc++.so.1.debug /usr/lib/debug/usr/lib32/libc++.so.1.debug /usr/lib/libc++.a /usr/lib/libc++.so /usr/lib/libc++experimental.a /usr/lib32/libc++.a /usr/lib32/libc++.so /usr/lib32/libc++.so.1 /usr/lib32/libc++experimental.a as well. FreeBSD and its ports have no means of using an alternate libc++ as stands, as far as I know. Nor does FreeBSD or its ports support using (or building) a libstdc++ via the system's c++ as an alternative, as far as I know. One has an alternative if use of a g++* and its libstdc++ is a viable option. So this may have implications for ports dependent on more modern C++ library features that want or need to not use a g++* . I'm unsure of what issues may occur with vintage mismatches for the above vs. forms of explicit use of alternate -std=3Dc++?? in ports that are using the c++ library. The libc++ headers will track but need not be a good match to the above list in some respects? This also applies to use of a g++* with -stdlib=3Dlibc++ (which various modern lang/gcc* support using). =3D=3D=3D Mark Millard marklmi at yahoo.com From nobody Fri Apr 11 18:42:59 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ5Cm010Wz5sTmw; Fri, 11 Apr 2025 18:43: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ5Cl6ZWwz3bLm; Fri, 11 Apr 2025 18:42:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744396979; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=h8o3cmSgWSpVO82OOtlfHaDf5o5Rc/sDMlB5cFcIflo=; b=KFgm9AUHZ6WtK6l0dIHSvg6/9KINWbgJiKaRYnF6bQpQgvs5uhILPEKIuIc3QwG5+2uP+Y NbgD/ntEXhJxG/v9JT7IG2eYOkTMHSkXSB+Zp+wlgV9HoualO879zOJ9docAhb5hqJ8k/n uvxWAPXK+dA6q6CKjRoyiNLMmrtR+AgiDeKxuknGiw9XSEK6YS4sBRQV1oHkhC+JYRjupj SH+6asp6Ba1S0H962B/gHb6z4NyRur3Xz0L9bak70Aa2qnIRmVauKDFwZB/Qg38CWPiJK7 zTPFBofqvxbMIr5iGAxXbXgGWJTwAXX98Oqtnp+qr7fguaUxQCtLRkfKCalU7g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744396979; a=rsa-sha256; cv=none; b=NYx+/DNVJolQ6T29WUBgaXL5M87i0pTdLeqFXYdBSwl+XN+BSeWFYjhi0E/F0KbBIsLaiv EdassgD3NiRcEm483uxUEs/WznJmSE2I5w7F2dCqOYM03gKwW+Zkk8Mv6iw3v/R3/8Ej32 2hkx/IM9LYHTu0Xgg8DxK7d6cZlXUJ4hP29rC3l5FmCFslKF+jfWqnG2KsnbH9uO4NVgN0 6VfoYpr4mGhLbuxORPJ60COS4aSgXtvBKTYAfDTtyKq3lH1RqE3emaEqteMAOomfdRtKfS 5mHsSz1MoCkN+Ulh3dNjkDneosbswY1qZlfcNAoK6dlfwS2k/C2PQMWTdx8jZQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744396979; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=h8o3cmSgWSpVO82OOtlfHaDf5o5Rc/sDMlB5cFcIflo=; b=fVQx12XIDJnkSazdz2gscmIIxwfOdYA6V5cQw1wSiqQZZZlLAyhOgEKXMyzeNFsJBb+hMe dRVUF6JJREZ4F2AEU6Qj09ffuPDkmRkx3pOPeHUq3rnIwFprElaJVP2tmmMmeLibclObaJ rtXgjnOs080I0FUtwEs9v6hMqwysa/CCizzh3ldsqUkdKW7WtTx6rZGwMQcEwKFwtpIVoC 6K5sPDweyV5/wvRAhAelp8eHdDwiZQcYSkNbNrdlSJt6ndm0VqDKjSuomXSlaEUB5o9TTQ einKWEx02X+KaYeK3wDFFc1aB1CgQhrytcD6q6PP3UJ4EsEE8gP7m08fmrM6DA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ5Cl69ZtzlPw; Fri, 11 Apr 2025 18:42:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BIgx2w077126; Fri, 11 Apr 2025 18:42:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BIgxMK077123; Fri, 11 Apr 2025 18:42:59 GMT (envelope-from git) Date: Fri, 11 Apr 2025 18:42:59 GMT Message-Id: <202504111842.53BIgxMK077123@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 4b60fac3a5c7 - main - kinfo_getfile: Add a comment explaining 4/3 ratio List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4b60fac3a5c7a53f6d1a4480f37eb906bbacf21b Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=4b60fac3a5c7a53f6d1a4480f37eb906bbacf21b commit 4b60fac3a5c7a53f6d1a4480f37eb906bbacf21b Author: Ed Maste AuthorDate: 2025-04-11 18:37:39 +0000 Commit: Ed Maste CommitDate: 2025-04-11 18:42:44 +0000 kinfo_getfile: Add a comment explaining 4/3 ratio We first get the expected size of the data from the kern.proc.filedesc sysctl, allocate 4/3 of that size, and then fetch the data. Add a comment about the reason (the fd table may grow between the two calls). Sponsored by: The FreeBSD Foundation --- lib/libutil/kinfo_getfile.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/libutil/kinfo_getfile.c b/lib/libutil/kinfo_getfile.c index f1441bdf771a..345da657df81 100644 --- a/lib/libutil/kinfo_getfile.c +++ b/lib/libutil/kinfo_getfile.c @@ -27,6 +27,10 @@ kinfo_getfile(pid_t pid, int *cntp) error = sysctl(mib, nitems(mib), NULL, &len, NULL, 0); if (error) return (NULL); + /* + * Add extra space as the table may grow between requesting the size + * and fetching the data. + */ len = len * 4 / 3; buf = malloc(len); if (buf == NULL) From nobody Fri Apr 11 19:16:40 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ5yd28rMz5sXBh; Fri, 11 Apr 2025 19:16: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ5yd0CSDz3gJq; Fri, 11 Apr 2025 19:16:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744399001; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WHMg+MOo2NLXAIuu9mKtdN5dkjIOnsDKTXs679Nx/zA=; b=mgfbYQLHTDvgeeHCGuLB4tN63a+dJugErxIv4PKj6jHVo58iwbFR6Zt2dR4M181pGEaubA 4KzN9Z0b6y4HwlRmOnEvzDti5fDzBB5k9GyT74SeOJEXOu9ZJx2Weaa+J19wgPicLfqYCg eCXK1GQTN19ylA5ipm8Yy+23arKt/5iifd0jA1Stvfo7szKFDlaTUFS6LheEIL8Fy1EI/+ 35q1eOw1X00D/tUvgC0/yXZFYtz6baeEoevtpq1EmrT0BcjuKvuHv9SvMzdNWlFh52eCEP 5m2JQMBu25TpLFOfrgzykHgsyZdGuwJn5Gy2aPEj2u1LwunsYlQnrRXW9EVJog== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744399001; a=rsa-sha256; cv=none; b=kaS05N/jCQPzKDns08DX3Oqe1i+OKupga480bv9QsNRo3M5t+D+ma/DbUSqQe9WYcAddDo oWNXG0XvRJ+hFBSZHRlCxnZDAfV4VugqEIQSpvnphj7zG4gkVkMYXIjUvfYGZeGvEZbYZk xRKL4H6LOYKsez+m3IdEbAmD0J1xoPeY8W8Zo8f4oipH1IaaKg0ecPIMGGz21l8tEoVK7y CfNk4JwRDRUshxcnl8INRffCVuD6w2ZcKNzu2QrwDNVhOsBT/o1+Pf2pUcLVPbGAsNzlxj gxuZ1k6j2ahF/6lFwfjUAWKmI5G7EIq5+IvI1+2URIdSyAMW62Bx1x+e7a0cmQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744399001; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WHMg+MOo2NLXAIuu9mKtdN5dkjIOnsDKTXs679Nx/zA=; b=uZaeiNXgss0mGXPzTojh2fazIHJAIErAcUO0+LmKdRsyeyCd2K6KmlX1zo2c5s6V7MfnPw zCzRqaVsMvGrtr43o14fYoIF/qiYcBzMNKzVv8TTcAXAePE9B0lvzwwoDul72+g4Q3BVPK 3IRX+fHlqJI6Obg61yvFfF5wQe8JaBsjLdrdMu/fPG1VU1XqkFWHHxXJ401oauSi0Q6boZ pAwqeSB3gBDn3kTSbSUl4wrnyt+tUrNvQmSVhh+Q6gSZrQhpRczJQMaRUsSAyWwoT0mrrk PXhp1uroogAvHDpiE0pWy4WGwfpPwn7UgKrLSa451APMqH9S6dCthMN9/dXVcA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ5yc6w79zm82; Fri, 11 Apr 2025 19:16:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BJGePI035818; Fri, 11 Apr 2025 19:16:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BJGeAH035815; Fri, 11 Apr 2025 19:16:40 GMT (envelope-from git) Date: Fri, 11 Apr 2025 19:16:40 GMT Message-Id: <202504111916.53BJGeAH035815@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: faae895fec65 - main - fusefs tests: Use memcpy to work around a -Wstrlcpy-strlcast-size warning List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: faae895fec6571242ae05b11bc7eba0dff83fa49 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=faae895fec6571242ae05b11bc7eba0dff83fa49 commit faae895fec6571242ae05b11bc7eba0dff83fa49 Author: John Baldwin AuthorDate: 2025-04-11 19:12:58 +0000 Commit: John Baldwin CommitDate: 2025-04-11 19:12:58 +0000 fusefs tests: Use memcpy to work around a -Wstrlcpy-strlcast-size warning tests/sys/fs/fusefs/xattr.cc:572:50: error: size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination [-Werror,-Wstrlcpy-strlcat-size] 572 | strlcpy((char*)out.body.bytes, attrs1, sizeof(attrs1)); | ~~~~~~~^~~~~~~ The warning is correct in that the size is the size of the source, but that is intended in this case. Use memcpy() instead of strlcpy() to match the same code in the size_only_race_smaller test above. Differential Revision: https://reviews.freebsd.org/D49786 --- tests/sys/fs/fusefs/xattr.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/sys/fs/fusefs/xattr.cc b/tests/sys/fs/fusefs/xattr.cc index b1cbb9ffa768..0cd2783551b4 100644 --- a/tests/sys/fs/fusefs/xattr.cc +++ b/tests/sys/fs/fusefs/xattr.cc @@ -569,7 +569,7 @@ TEST_F(Listxattr, size_only_race_smaller) })); expect_listxattr(ino, sizeof(attrs0), ReturnImmediate([&](auto in __unused, auto& out) { - strlcpy((char*)out.body.bytes, attrs1, sizeof(attrs1)); + memcpy((char*)out.body.bytes, attrs1, sizeof(attrs1)); out.header.len = sizeof(fuse_out_header) + sizeof(attrs1); }) From nobody Fri Apr 11 19:44:49 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ6b56SJtz5sZ7K; Fri, 11 Apr 2025 19:44:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ6b55smzz3hy5; Fri, 11 Apr 2025 19:44:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744400689; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qwqQ2TwJLdyWsxw+lKck5ZX83U9FR23wcliupV0bJz4=; b=hxUIZ5dUZ+Vnq9ntOqrXIFyVLiOyWr1Me6bAw99h90ryPwdSZzH38lHW8e97VyyG6eR7Iy ojF18EocAcNUZbUHjNGfP1AebvKRBUu++xHzahAPqsZk2abJ11ptnZbQe4sHeMH35xSHWB dBU29TJfgD9d1FPJhqzF3FO8ycNQfgbBlFazpEaZIxZfZGzv/Vb2f66OPKMAD4xWti8ulz fOmB23D8yRhqH9jOSeW+917hU2fJXkv49Xlr/flOKn8ZlwBlnnkIh8OTcBTVBxyG7D3fh3 wCSJZRXo3ra+A4wwhVmCMsEZZwZBWsD0uk3TgzaK0n6ydLxyXqPdQ5zOgjgTkg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744400689; a=rsa-sha256; cv=none; b=AxnUCzPrdX3hAIGIQEwXxrjfl3NYdYTMQyL9Z9UzwF8qhEJ7KJuhJPfwNcgEvUSlxakd6I me5hQ048RTcsjMw3xbp0lxeO3u+JaLuV8TBTrJa7Lra5eQqS2UW/XYN6RHhJk7SOphKFA+ gSAX8Fk/cD6E45jJ+pfBs65ichrpdvLwRarYU9xmuAeGxdLGjI4HTNLOEJ7XA+xR09+H+h k5MiLHMqcTohueDOv+FdTpC3V68r1pHU+fPsYjOcHdqx+xzn4Ck3suYFs7fQscOUazcKvN gPDh05NhcmrFCoqzc8QgPsWaux61LE4GC+a5ZTvcKOCogatucvTAwAWyv2GVnQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744400689; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qwqQ2TwJLdyWsxw+lKck5ZX83U9FR23wcliupV0bJz4=; b=bnL6PvLC7f4koTqP72Vy5WgXdohBeBMLtqa5RG2/jwQEHEM+0lCuhWZ591/knUEv9/vpi6 GOCYARMXOJzUuK+1gG7BRI0bo//AlmEgSK2MTGqiFAiSMiUcE0W8zcmuRWRyOdM8CrQ+cu SrjLBj3T91aknLUMP3L4nf58RzN91BAP6IjytT4tw5LDN+7NWwc0VBEo/ce8KL7l8deNEH jO8RgGkXktsDfDF2AkYh2khGvi8VLXTb7RdvP+T07AETirznWdnrrGDJuUKv57U3YFdMRb BFAA6tJPi2nt1MDf1aAc+M4fH2QIpop8S8WyzZk2SSzVY0MSR+KUuWsX23Qhqw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ6b55F9qzmg9; Fri, 11 Apr 2025 19:44:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BJin03090740; Fri, 11 Apr 2025 19:44:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BJinFX090737; Fri, 11 Apr 2025 19:44:49 GMT (envelope-from git) Date: Fri, 11 Apr 2025 19:44:49 GMT Message-Id: <202504111944.53BJinFX090737@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 971e22b7793c - main - arch.7: Update for switch to LLVM binutils List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 971e22b7793c279e1a5fe8f3f025eaffbd6b18b1 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=971e22b7793c279e1a5fe8f3f025eaffbd6b18b1 commit 971e22b7793c279e1a5fe8f3f025eaffbd6b18b1 Author: Ed Maste AuthorDate: 2025-04-11 19:43:46 +0000 Commit: Ed Maste CommitDate: 2025-04-11 19:44:40 +0000 arch.7: Update for switch to LLVM binutils Fixes: 1cae7121c667 ("Enable LLVM_BINUTILS by default") Sponsored by: The FreeBSD Foundation --- share/man/man7/arch.7 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/share/man/man7/arch.7 b/share/man/man7/arch.7 index 33a6dd82c06c..fa5254849e3e 100644 --- a/share/man/man7/arch.7 +++ b/share/man/man7/arch.7 @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd February 4, 2025 +.Dd April 11, 2025 .Dt ARCH 7 .Os .Sh NAME @@ -248,7 +248,7 @@ as the default compiler on all supported CPU architectures, LLVM's .Xr ld.lld 1 as the default linker, and -ELF Tool Chain binary utilities such as +LLVM binary utilities such as .Xr objcopy 1 and .Xr readelf 1 . From nobody Fri Apr 11 19:59:45 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ6wK33BZz5sZyc; Fri, 11 Apr 2025 19:59: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ6wK2VCrz3kwj; Fri, 11 Apr 2025 19:59:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744401585; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wSXoAcz7nIIhheaOwuitxc+IwAMz7i+PDUM/6r1p1KE=; b=VrAq4Pk8KUcq44xEYgwL2LRRXVN7JNr2hhHFTAjiKsev0Hb9oFRz+7H5qSYCPeUBMNTmn6 TXFD/glDP1Ex/ImCxdKzzuDuK184z+U1wPNztA2aLRx4ZnbY12Dej8WkBTrJD5kkPaPnXf 5Sw+62pdGEFpALOq5cPcSXo9tNNP3TT4rIUWlSWAbGUgACvkBhUifT2Sl6G97EtdSQ+0wv HbnT3kkELnH4eXhaU94OZANj9vmYYeqTa0XsaiT5+My1ZQB17qGtaG3mpVokyD8wvr/dY+ 1QF+O9y7QwDYqXHzAeXKFl2KnenpbP2jmdPyEJUUC0+7R15azjfttygEcB2LSQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744401585; a=rsa-sha256; cv=none; b=m0hIHO/kiuHj0Ow9nFI41fM/lL8KH+xMBM9uxmHT1R9UTaODkw9CdX4LE4bZtvNF7mn3G8 GS2a9Nx/AKOZqtle/p5q0XHqxZneE14zrMQsWt7pfrsAXX01KcrJ05haCOQYmLXwSn31Ck bfmVUgZ2nfJAMjkNC7bgd8OIu5eN/T4/dT2O9fiLBqC2oZEFf672VuM8V/lJJl4KxUUyLE PUEHMJTSPlNLfsJgA/9GQ4ZmjoQEqcPgZs7lK2iKbY2utjx4bnIBuREnedLDMm2rQvBTco X4y/cIVTshoo0C0Zg3AGW8qZsrdCdqn20+hmFP13nltXzu9PiFu31rBYvkqFWw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744401585; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wSXoAcz7nIIhheaOwuitxc+IwAMz7i+PDUM/6r1p1KE=; b=oquLMWYfAAU5XQAggaIcD2QjjLO7BnDMXpXfHrEpkj07un8cNc02ag5X3+PgWzGAMCQRD5 xo1Uv7eu5uYMxfcxBNBTaZ27rXpOu3VDLS1ZO71P5LvxUB5HEk1iRcr/L+LFUcfQA4hAm1 G4akAior2c6b2eEtWf8pzZS4zhxw+JXJDzWc1uY/t0qplXIwbgtpgRzia2oqSltyPz+LvP U0shRm6dJgtXto9iwl70Wk6M1IMM2pSLfapxkgxX1wVrbyUnQ0iH33nqC+/d8QBd1k+z84 zlVbP0X9esLT5hgRM7IUrxFlQQW07hpShLw2V/eZtfGLD/WbB7rth3VzACvqug== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ6wK24hnzmyx; Fri, 11 Apr 2025 19:59:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BJxjvg010825; Fri, 11 Apr 2025 19:59:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BJxjK7010822; Fri, 11 Apr 2025 19:59:45 GMT (envelope-from git) Date: Fri, 11 Apr 2025 19:59:45 GMT Message-Id: <202504111959.53BJxjK7010822@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: ca0fc8ef2f97 - main - elfcopy: Restore upstream name List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ca0fc8ef2f97709d3dfeac54e2c762e1c6ec6559 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=ca0fc8ef2f97709d3dfeac54e2c762e1c6ec6559 commit ca0fc8ef2f97709d3dfeac54e2c762e1c6ec6559 Author: Ed Maste AuthorDate: 2025-03-31 13:37:35 +0000 Commit: Ed Maste CommitDate: 2025-04-11 19:44:40 +0000 elfcopy: Restore upstream name ELF Tool Chain's objcopy-equivalent is called elfcopy. Restore the upstream name in our build infrastructure to make it more clear where different binary utility components come from. Reviewed by: brooks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49784 --- Makefile.inc1 | 12 ++++++------ usr.bin/Makefile | 4 ++-- usr.bin/{objcopy => elfcopy}/Makefile | 0 usr.bin/{objcopy => elfcopy}/Makefile.depend | 0 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index af9e4736a65a..a18d10e80f17 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -2910,14 +2910,14 @@ _dtrace_tools= cddl/lib/libctf cddl/lib/libspl cddl/usr.bin/ctfconvert \ .endif .if ${MK_ELFTOOLCHAIN_BOOTSTRAP} != "no" -# Some bespoke tools from or based on ELF Tool Chain. objcopy (elfcopy) is -# included because llvm-objcopy is currently not capable of translating ELF to -# PE32+, which is required for EFI boot programs. +# Some bespoke tools from or based on ELF Tool Chain. elfcopy is included +# because llvm-objcopy is currently not capable of translating ELF to PE32+, +# which is required for EFI boot programs. _elftctools= lib/libelftc \ lib/libpe \ + usr.bin/elfcopy \ usr.bin/elfctl \ - usr.bin/elfdump \ - usr.bin/objcopy + usr.bin/elfdump # If we're given an XNM we don't need to build standard binary utilities. .if ${XNM:M/*} == "" _elftctools+= usr.bin/nm \ @@ -3011,7 +3011,7 @@ NXBDIRS+= \ usr.bin/cmp \ usr.bin/diff \ usr.bin/dirname \ - usr.bin/objcopy \ + usr.bin/elfcopy \ usr.bin/env \ usr.bin/fetch \ usr.bin/find \ diff --git a/usr.bin/Makefile b/usr.bin/Makefile index b9e4d6c1153a..87896a2c0781 100644 --- a/usr.bin/Makefile +++ b/usr.bin/Makefile @@ -263,14 +263,14 @@ SUBDIR.${MK_TOOLCHAIN}+= ctags .if ${MK_LLVM_CXXFILT} == "no" SUBDIR.${MK_TOOLCHAIN}+= cxxfilt .endif +# ELF Tool Chain elfcopy required for EFI objects (PR280771) +SUBDIR.${MK_TOOLCHAIN}+= elfcopy SUBDIR.${MK_TOOLCHAIN}+= file2c SUBDIR.${MK_TOOLCHAIN}+= gprof SUBDIR.${MK_TOOLCHAIN}+= indent SUBDIR.${MK_TOOLCHAIN}+= lex SUBDIR.${MK_TOOLCHAIN}+= lorder SUBDIR.${MK_TOOLCHAIN}+= mkstr -# ELF Tool Chain elfcopy required for EFI objects (PR280771) -SUBDIR.${MK_TOOLCHAIN}+= objcopy SUBDIR.${MK_TOOLCHAIN}+= rpcgen SUBDIR.${MK_TOOLCHAIN}+= unifdef SUBDIR.${MK_TOOLCHAIN}+= xstr diff --git a/usr.bin/objcopy/Makefile b/usr.bin/elfcopy/Makefile similarity index 100% rename from usr.bin/objcopy/Makefile rename to usr.bin/elfcopy/Makefile diff --git a/usr.bin/objcopy/Makefile.depend b/usr.bin/elfcopy/Makefile.depend similarity index 100% rename from usr.bin/objcopy/Makefile.depend rename to usr.bin/elfcopy/Makefile.depend From nobody Fri Apr 11 20:04:39 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ7206qHtz5sbQ2; Fri, 11 Apr 2025 20:04:40 +0000 (UTC) (envelope-from jhb@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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ7206CVhz3lcm; Fri, 11 Apr 2025 20:04:40 +0000 (UTC) (envelope-from jhb@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744401880; h=from:from:reply-to:subject: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=u/BTfw3TxWUAPYMXj5eGfYmyvC/OmDwNhLt5YTwbLOY=; b=Wn6LQC9o3RyC/w1gRDXVOtOr0HbD+XcM0uQmytfI+n5HpRsur9j2XjT1CoFZmCWDzG+2bh r1H2FRYKxkhk9ofMFXqsK7pvoUrmS9IyOsuVw4JoU6iQ21QFZ+ZSiWpTENYdPDuhTSvH7v gzbjusKODTBniAvp4GPmJuCvpb+QVygVT7htGo3h8A0CgpQI1gnSwqDDuxDPfpfm01k5yN j9gBIUQFD4T7O0VIJBb+WS+KlgtWrhmp+CDEme12rISZJYJ08pXEFg5KB7ig8jVzjGPg/o YtMJKIg1mT7faEMtDkqEX7ojYiURjQTRfPfhEdeATBy0UmdSudGeQ4vEnyzPKQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744401880; a=rsa-sha256; cv=none; b=U+hoF8xxpAhM+Ba2xvKP+4+45k/3viHaXMHqYS/ihtCPZkIoODazvC0dZOIKnl3e+HyS1a 3YeGLDjNeY+Vy7ZSr6dB2c34/H1+F87GOoiiX/We9UQ/4gyNf4tOBtTq49tGddS1osWEu2 gtfLJh6mF1ZJ8h/7o6I/jAiC1pDaFQt8VlM0mw4fB/9mQ9JlM4YqoY0HjJ6gJaWNLm3+83 gytbVxHa93kdmLN4zs66/3NhwFJXDyM67+42S30uJWnbcXQYzGYv/Bd7VxKNPHXWNhAytm JX8kXcaRVIz57I3qyfxiqD8LHbx5IlTutyes3NfvkM14aAd4+u7oeH70ZZjfLg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744401880; h=from:from:reply-to:subject: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=u/BTfw3TxWUAPYMXj5eGfYmyvC/OmDwNhLt5YTwbLOY=; b=gIAaxe6IfjZBozLjpiUP6nOD94QM9SvUoctdLGPZ4360TZkZVeWUQAXqSDyn6FnZjSFtVG KlDoMw3FTtyxifY2+7Bthn1sN7on97lmDal1mT13ncRikA7JRfZU1AFfvt5iFv4OzrprMX 86OAgX5nOg6MIAgX9IGpU5Y3MI+Perd+0TcU+0LlGiWvlT7CJrAHdxONKY8l3WsQQ4ff2k Mh2sY/Yp1UDj/fi1dcs3C5RE1Stz4D8aizPB/rMTNJLdm6pZEMBV5mjLui2tmSYChZZXGj 6c5DnVT1Vck80v5QTCESaDzNJlrBJg/V1ZqrcZI8in/pnN4HPzywr85nh5fP8w== Received: from [IPV6:2601:5c0:4200:b830:15f7:da33:fe33:afbf] (unknown [IPv6:2601:5c0:4200:b830:15f7:da33:fe33:afbf]) (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 4ZZ7204HRLzPkl; Fri, 11 Apr 2025 20:04:40 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Message-ID: <675ab160-9f0e-4568-8f69-0c3433cf6ff7@FreeBSD.org> Date: Fri, 11 Apr 2025 16:04:39 -0400 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: faae895fec65 - main - fusefs tests: Use memcpy to work around a -Wstrlcpy-strlcast-size warning Content-Language: en-US From: John Baldwin To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org References: <202504111916.53BJGeAH035815@gitrepo.freebsd.org> In-Reply-To: <202504111916.53BJGeAH035815@gitrepo.freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 4/11/25 15:16, John Baldwin wrote: > The branch main has been updated by jhb: > > URL: https://cgit.FreeBSD.org/src/commit/?id=faae895fec6571242ae05b11bc7eba0dff83fa49 > > commit faae895fec6571242ae05b11bc7eba0dff83fa49 > Author: John Baldwin > AuthorDate: 2025-04-11 19:12:58 +0000 > Commit: John Baldwin > CommitDate: 2025-04-11 19:12:58 +0000 > > fusefs tests: Use memcpy to work around a -Wstrlcpy-strlcast-size warning > > tests/sys/fs/fusefs/xattr.cc:572:50: error: size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination [-Werror,-Wstrlcpy-strlcat-size] > 572 | strlcpy((char*)out.body.bytes, attrs1, sizeof(attrs1)); > | ~~~~~~~^~~~~~~ > > The warning is correct in that the size is the size of the source, but > that is intended in this case. Use memcpy() instead of strlcpy() to > match the same code in the size_only_race_smaller test above. > > Differential Revision: https://reviews.freebsd.org/D49786 Apologies for the breakage. I have no idea why I did not see this failure earlier. I had done multiple buildworld + tinderboxes and even requested an exp-run from ports and none of these had tripped over this fuse test, and the fuse test code hasn't changed in several years. -- John Baldwin From nobody Fri Apr 11 21:26:12 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ8r539T3z5shpQ; Fri, 11 Apr 2025 21:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ8r52Gbhz3tV3; Fri, 11 Apr 2025 21:26:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406773; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8/neDU64Hmsk1pV4NzrM4pSCNjUkm9TX/Nu7AWuz6Lk=; b=MXX+SYI8XCWFjOr07OmboDI7JP8LVnlcsVglWPzxkThqPZiIaNM2t4f3fwi2GuuIlRWAUy baLKTMO+mDrFPB22H0qkuyF9oLH3k2TZon5gOGzbeEwN2ELcLJH6PYH9+UULx60VgX1f8c q3e920JAasScz6y3Xjvm6Neita8RmgR1p8u82TGxhvdjYKcDjGdaVNLeLmccEIwEPt0fkk KETTvZV4dyTAi55wUOSXDvUTBpWzqd3kV0Reibh/Ab8lD5PNwYVE9sacqcN/6Ctax36aea dGDZZi28KRUzU749GLpcAIdgJmkTCXU7Zu/ni6bq/GCQdUPFXP93DFteut9KHw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744406773; a=rsa-sha256; cv=none; b=dqBu61KqkEYMD3a4S+OHUTCnLMhcNirs9wnk9WLWvWjwndgWZT1c5MxgWC86aZZkYSjsbM VRMHxQ41wkiTWhAT7jrW14dn/izJBmqx7BqyqiNOVI8Lfp9dTHYTIWBABnHv4zoq90qOV/ 2jXDuHN8I+VPJEO1BSgW5We14FKsZ0vtRfhv4ru2rHbxck8+McN45SIgvescq4ZN4LZTJ5 Ktkl5heP5+zBdut2A8bxyKL9lEYgmjca09NxSUiyAeYZF/cg1ZQAgq58D4A6W0SQntXIYj Hdp1VugTloqE0ocpm2V/DySn2Ax+g5OI82lTIeY6AQ8+5oY62+B+ffhk4j0f5w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406773; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8/neDU64Hmsk1pV4NzrM4pSCNjUkm9TX/Nu7AWuz6Lk=; b=GVr7v//J8KZ9Yw5v7eZUN3zty/Jfx+O9X42/X5/YtMXLjxjGv71Ft0xv9Fk3nC23wFM2iH 77QZzCanEIdBpZi8sIc3DDpC2IieBUjGJNCHIdF3O4wcuZsmDAOPdCY6BGrNJ7OazcHQPG YuG2uWXDJ6rTwIJz15131Z3/lu+X9TI6VZXhs1MSNHplmtr9fLbkgOSlo+a7OSfDGohVeI 1PMX+lmyK6jhhRpjpZbkTKDlBRXIk5kN5YXAzqeE3BydAsdiGvUVahkf7uXZbIcF/2nrif 3zs9zChGm+jgK57HWFoKV/2tziXGsY5FBcbgk0z0ES7MjQXko4vFuyS4ZtqK/A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ8r51CcXzpRW; Fri, 11 Apr 2025 21:26:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BLQCCw077974; Fri, 11 Apr 2025 21:26:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BLQCBD077971; Fri, 11 Apr 2025 21:26:12 GMT (envelope-from git) Date: Fri, 11 Apr 2025 21:26:12 GMT Message-Id: <202504112126.53BLQCBD077971@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 347abd45e108 - main - mlx5 / mlxfw: make depend on compat_linuxkpi List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 347abd45e108fd317991721d7178bc791fbb5b88 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=347abd45e108fd317991721d7178bc791fbb5b88 commit 347abd45e108fd317991721d7178bc791fbb5b88 Author: Bjoern A. Zeeb AuthorDate: 2025-04-09 14:36:18 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-11 21:17:24 +0000 mlx5 / mlxfw: make depend on compat_linuxkpi mlx5 and mlxfw both depend on LinuxKPI also being compiled into the kernel. With nooptions COMPAT_LINUXKPI (LinuxKPI only compiled as module) mlx5 and mlxfw fail to link due to undefined symbols. Add the missing compat_linuxkpi to the files file. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D49737 --- sys/conf/files | 136 ++++++++++++++++++++++++++++----------------------------- 1 file changed, 68 insertions(+), 68 deletions(-) diff --git a/sys/conf/files b/sys/conf/files index 1892b66e849a..d3ee52399291 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -2412,11 +2412,11 @@ dev/mii/ukphy.c optional miibus | mii dev/mii/ukphy_subr.c optional miibus | mii dev/mii/vscphy.c optional miibus | vscphy dev/mii/xmphy.c optional miibus | xmphy -dev/mlxfw/mlxfw_fsm.c optional mlxfw \ +dev/mlxfw/mlxfw_fsm.c optional mlxfw compat_linuxkpi \ compile-with "${MLXFW_C}" -dev/mlxfw/mlxfw_mfa2.c optional mlxfw \ +dev/mlxfw/mlxfw_mfa2.c optional mlxfw compat_linuxkpi \ compile-with "${MLXFW_C}" -dev/mlxfw/mlxfw_mfa2_tlv_multi.c optional mlxfw \ +dev/mlxfw/mlxfw_mfa2_tlv_multi.c optional mlxfw compat_linuxkpi \ compile-with "${MLXFW_C}" dev/mlx/mlx.c optional mlx dev/mlx/mlx_disk.c optional mlx @@ -4907,137 +4907,137 @@ dev/mlx4/mlx4_en/mlx4_en_rx.c optional mlx4en pci inet inet6 \ dev/mlx4/mlx4_en/mlx4_en_tx.c optional mlx4en pci inet inet6 \ compile-with "${OFED_C}" -dev/mlx5/mlx5_ib/mlx5_ib_ah.c optional mlx5ib pci ofed \ +dev/mlx5/mlx5_ib/mlx5_ib_ah.c optional mlx5ib pci ofed compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_ib/mlx5_ib_cong.c optional mlx5ib pci ofed \ +dev/mlx5/mlx5_ib/mlx5_ib_cong.c optional mlx5ib pci ofed compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_ib/mlx5_ib_cq.c optional mlx5ib pci ofed \ +dev/mlx5/mlx5_ib/mlx5_ib_cq.c optional mlx5ib pci ofed compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_ib/mlx5_ib_devx.c optional mlx5ib pci ofed \ +dev/mlx5/mlx5_ib/mlx5_ib_devx.c optional mlx5ib pci ofed compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_ib/mlx5_ib_doorbell.c optional mlx5ib pci ofed \ +dev/mlx5/mlx5_ib/mlx5_ib_doorbell.c optional mlx5ib pci ofed compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_ib/mlx5_ib_gsi.c optional mlx5ib pci ofed \ +dev/mlx5/mlx5_ib/mlx5_ib_gsi.c optional mlx5ib pci ofed compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_ib/mlx5_ib_mad.c optional mlx5ib pci ofed \ +dev/mlx5/mlx5_ib/mlx5_ib_mad.c optional mlx5ib pci ofed compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_ib/mlx5_ib_main.c optional mlx5ib pci ofed \ +dev/mlx5/mlx5_ib/mlx5_ib_main.c optional mlx5ib pci ofed compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_ib/mlx5_ib_mem.c optional mlx5ib pci ofed \ +dev/mlx5/mlx5_ib/mlx5_ib_mem.c optional mlx5ib pci ofed compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_ib/mlx5_ib_mr.c optional mlx5ib pci ofed \ +dev/mlx5/mlx5_ib/mlx5_ib_mr.c optional mlx5ib pci ofed compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_ib/mlx5_ib_qp.c optional mlx5ib pci ofed \ +dev/mlx5/mlx5_ib/mlx5_ib_qp.c optional mlx5ib pci ofed compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_ib/mlx5_ib_srq.c optional mlx5ib pci ofed \ +dev/mlx5/mlx5_ib/mlx5_ib_srq.c optional mlx5ib pci ofed compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_ib/mlx5_ib_virt.c optional mlx5ib pci ofed \ +dev/mlx5/mlx5_ib/mlx5_ib_virt.c optional mlx5ib pci ofed compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_alloc.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_alloc.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_cmd.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_cmd.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_crypto.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_crypto.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_cq.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_cq.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_diag_cnt.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_diag_cnt.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_diagnostics.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_diagnostics.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_eq.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_eq.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_eswitch.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_eswitch.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_fs_chains.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_fs_chains.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_fs_cmd.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_fs_cmd.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_fs_core.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_fs_core.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_fs_counters.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_fs_counters.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_fs_ft_pool.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_fs_ft_pool.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_fs_tcp.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_fs_tcp.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_fw.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_fw.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_fwdump.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_fwdump.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_health.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_health.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_mad.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_mad.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_main.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_main.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_mcg.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_mcg.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_mpfs.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_mpfs.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_mr.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_mr.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_pagealloc.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_pagealloc.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_pd.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_pd.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_port.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_port.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_qp.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_qp.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_rl.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_rl.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_srq.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_srq.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_tls.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_tls.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_transobj.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_transobj.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_uar.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_uar.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_vport.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_vport.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_vsc.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_vsc.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_core/mlx5_wq.c optional mlx5 pci \ +dev/mlx5/mlx5_core/mlx5_wq.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_lib/mlx5_aso.c optional mlx5 pci \ +dev/mlx5/mlx5_lib/mlx5_aso.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_lib/mlx5_gid.c optional mlx5 pci \ +dev/mlx5/mlx5_lib/mlx5_gid.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_accel/mlx5_ipsec_fs.c optional mlx5 pci \ +dev/mlx5/mlx5_accel/mlx5_ipsec_fs.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_accel/mlx5_ipsec_offload.c optional mlx5 pci \ +dev/mlx5/mlx5_accel/mlx5_ipsec_offload.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_accel/mlx5_ipsec.c optional mlx5 pci \ +dev/mlx5/mlx5_accel/mlx5_ipsec.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_accel/mlx5_ipsec_rxtx.c optional mlx5 pci \ +dev/mlx5/mlx5_accel/mlx5_ipsec_rxtx.c optional mlx5 pci compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_en/mlx5_en_dim.c optional mlx5en pci inet inet6 \ +dev/mlx5/mlx5_en/mlx5_en_dim.c optional mlx5en pci inet inet6 compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_en/mlx5_en_ethtool.c optional mlx5en pci inet inet6 \ +dev/mlx5/mlx5_en/mlx5_en_ethtool.c optional mlx5en pci inet inet6 compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_en/mlx5_en_main.c optional mlx5en pci inet inet6 \ +dev/mlx5/mlx5_en/mlx5_en_main.c optional mlx5en pci inet inet6 compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_en/mlx5_en_tx.c optional mlx5en pci inet inet6 \ +dev/mlx5/mlx5_en/mlx5_en_tx.c optional mlx5en pci inet inet6 compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_en/mlx5_en_flow_table.c optional mlx5en pci inet inet6 \ +dev/mlx5/mlx5_en/mlx5_en_flow_table.c optional mlx5en pci inet inet6 compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_en/mlx5_en_hw_tls.c optional mlx5en pci inet inet6 \ +dev/mlx5/mlx5_en/mlx5_en_hw_tls.c optional mlx5en pci inet inet6 compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_en/mlx5_en_hw_tls_rx.c optional mlx5en pci inet inet6 \ +dev/mlx5/mlx5_en/mlx5_en_hw_tls_rx.c optional mlx5en pci inet inet6 compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_en/mlx5_en_iq.c optional mlx5en pci inet inet6 \ +dev/mlx5/mlx5_en/mlx5_en_iq.c optional mlx5en pci inet inet6 compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_en/mlx5_en_rx.c optional mlx5en pci inet inet6 \ +dev/mlx5/mlx5_en/mlx5_en_rx.c optional mlx5en pci inet inet6 compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_en/mlx5_en_rl.c optional mlx5en pci inet inet6 \ +dev/mlx5/mlx5_en/mlx5_en_rl.c optional mlx5en pci inet inet6 compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_en/mlx5_en_txrx.c optional mlx5en pci inet inet6 \ +dev/mlx5/mlx5_en/mlx5_en_txrx.c optional mlx5en pci inet inet6 compat_linuxkpi \ compile-with "${OFED_C}" -dev/mlx5/mlx5_en/mlx5_en_port_buffer.c optional mlx5en pci inet inet6 \ +dev/mlx5/mlx5_en/mlx5_en_port_buffer.c optional mlx5en pci inet inet6 compat_linuxkpi \ compile-with "${OFED_C}" # crypto support From nobody Fri Apr 11 21:26:14 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ8r63Fglz5shRs; Fri, 11 Apr 2025 21:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ8r61dnNz3tD3; Fri, 11 Apr 2025 21:26:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406774; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=plY+0OZZDLGdPqgNpUaPygWkX+QKHwS26xHn8N9/Mk4=; b=HkZGNp+WlaFSj2TnEOevgpcs0W971fpYAKBiaUhTKVLpc1+vcAtog24ZpHkIJ6LNAsTVxE lQNKjfNTlLmxV8ryTjBowJHO8hCUehikp5M4NapXmLydIT6TL1E5QCuWGm+zHWgcPsqY8i /W/hjSC9awLBLIPUgWENNFd5mpkAMI13+PLAmi3YiT9aQ6QOb7Ol15Hy0gwdsoX1JRW+ok pxyGJpLoa2MTlTxU0Nsk1sbN0CuLjPke1u/NyKPUDC4JlkWMERn2cZYojXasJ9RXHAeqgV k0w0mzUreijbleHOuIb8mtpNXSEkhVi0f4YoYQGVPiUCjbsUi3Zw3aO77b5Ihg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744406774; a=rsa-sha256; cv=none; b=OnFPIREuk46G4JqgZt/mbNKy/EtKkY5XAEP93ohn1YFjobmSip3qfBCSpZXl4ouvq79Vb6 uAob5FM1nAwkr7w0KB316oAcwYs4vRTNfOeswBk6WtJM34ZFoi0SFbauaGnG7W6nmlqbdM bBC9aEcR63BIidud9pYXYPDy9TjyijH1Y3luvambep4kQNZixVT7pJgUwM6i2eatCijvjk 0fYwCr8JsU7lrGiYhI2W16HjmJCcjLe3iGCDlijjwjC36bT3zMe5ei0fz2aCEZ+uIrP2rR nXyrUXim2KmIQGL4uleC3RbJLQ/+CppD339aW7vO3GHRTtWstiLlpzk2Ty7fCg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406774; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=plY+0OZZDLGdPqgNpUaPygWkX+QKHwS26xHn8N9/Mk4=; b=QDMbB34B4qn8r81H3LOia+jOImFTjBaoAPNccBK7EKnbb/k+ijHFzbtDYfE9Et6uF3vHp9 9u+shYfjRXmtWYVMqc0OSv0jelhbUnl/iKUTOFN5eSi7IyzOPpQLpWCWgyV+u+39mBojBK pT4bdKyARNax9+dtJxK++Ndh49YSVR4kS2UPd/UYK1PB/IfhAPauvi7m9p0zjUUYuaPuw8 7txQB9VKs2MJBPaiW5y3TG6J0o55VEiR7PKpCSQJdw5OPBdQWwkJcRR95VS85ZRwI8CFpw e1h/xdbfunN7dD4MJLxAXUYCobaapH0X6uXbw25hfufQ0Przk4VYg9W9Q073kA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ8r614Pqzpw2; Fri, 11 Apr 2025 21:26:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BLQEho078009; Fri, 11 Apr 2025 21:26:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BLQEHG078006; Fri, 11 Apr 2025 21:26:14 GMT (envelope-from git) Date: Fri, 11 Apr 2025 21:26:14 GMT Message-Id: <202504112126.53BLQEHG078006@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: b5b393df682f - main - net80211: fill in missing flags to IEEE80211_NODE_BITS List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b5b393df682f7938fa5e3ea4ed5e5938401baca0 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=b5b393df682f7938fa5e3ea4ed5e5938401baca0 commit b5b393df682f7938fa5e3ea4ed5e5938401baca0 Author: Bjoern A. Zeeb AuthorDate: 2025-04-10 23:13:50 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-11 21:17:24 +0000 net80211: fill in missing flags to IEEE80211_NODE_BITS Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: adrian, thj Differential Revision: https://reviews.freebsd.org/D49771 --- sys/net80211/ieee80211_node.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/net80211/ieee80211_node.h b/sys/net80211/ieee80211_node.h index e87192a8a5ae..c83eee04a8dc 100644 --- a/sys/net80211/ieee80211_node.h +++ b/sys/net80211/ieee80211_node.h @@ -342,7 +342,7 @@ MALLOC_DECLARE(M_80211_NODE_IE); #define IEEE80211_NODE_BITS \ "\20\1AUTH\2QOS\3ERP\5PWR_MGT\6AREF\7HT\10HTCOMPAT\11WPS\12TSN" \ "\13AMPDU_RX\14AMPDU_TX\15MIMO_PS\16MIMO_RTS\17RIFS\20SGI20\21SGI40" \ - "\22ASSOCID" + "\22ASSOCID\23AMSDU_RX\24AMSDU_TX\25VHT\26LDPC\27UAPSD" #define IEEE80211_NODE_AID(ni) IEEE80211_AID(ni->ni_associd) From nobody Fri Apr 11 21:26:15 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ8r75Cd9z5shmy; Fri, 11 Apr 2025 21:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ8r72Zt4z3t5H; Fri, 11 Apr 2025 21:26:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406775; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hssydY9jQFeQx39NMIAKh/NcuXYFz9MeatSQOVeg/bA=; b=q15655MrsuGkvmP9+7ZlWhoL5pwvic+uZp+OEINFjip11dJ2nMhn3PU1BtL/J94zz1BnDT 213b1UxdHFP7mW4u9G4Zgyi/wOocVTSZRbfIMnwKiOed/SjWcceAKt9u5xK9HFBypZAIOP R/Up6467YRMwsygiwj5qGwDDsYnVceOMaY1x8AawhD9rvJyw4hkdiGNqE/EUHzLaJrAwXY KqOGpN5f0196GLEkNKal3jOOliM2hhCDfOFQ1l5J4UIIDBNOCHsE9x1YwL5m04heANZdUu EkskRGoJqC4Snjpa6j1b+eH6hztQonx/DVZC3yogqQE02Nx1cAEsl4bRgK1FEg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744406775; a=rsa-sha256; cv=none; b=KZAChsTdcPozYrVMFnEiuvBzabkgqyzCcgLL3f6/4HWz+ervBERtyD9Qb0VgM570L0U4Jz nXH0ZUDH0kiu/A8Dv6tFXeOJVq9idjgtmL6KS5z+qU6qw3AtKNWcIJEGqV/da3KDfnt+XH D+oWE7kP4VRB/jjucMz2oGWp3t1dNaVbZP6tV2q+dmf04f9BkwkuYdG5eyC90uyTsy736N m/mf+G3fROK9B/C/0O+vW8pn6ZIH8f0Ta3j1hXbRu6K5HiGDdmR8kXdZdnKt4zk+DY0scD 6ncqsFjzsFxlND3ZtI2ZDXMJOzoXCc8u2N36LeQNaulpoU63T/ySHuY95M5FiA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406775; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hssydY9jQFeQx39NMIAKh/NcuXYFz9MeatSQOVeg/bA=; b=CflBE1XnDU6k9XQJWR2DUOik3XYGX1JrpvFE+ld55+ssy8EFMJbXZ4S9F5PInJZdpZVaxy t5KqhNVsBHEP0amSaiNAscds0UewstSVai8m+6m4pPXePBRvMwydGkSeQSx8guyw8wXBC3 UuLgNgdnsRMNTR19zPMCLgxj8V+zzA/eNGtTh2J6IY70Gc5k89AfS7zGOsXAFTQgozLWLm VGnQmJ2DiRtIC4fyryNuBOiTx7rgKG2weK7noCOd3XHDqtm434xxK3C8pwCzyw1Ka1lmIN /L1ztNWWdK1yPGbyRTgg03MQtZZVHmCRiiQAhQfcPlFkUHyCxlx/nMzYVtPLWg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ8r71lcfzpgv; Fri, 11 Apr 2025 21:26:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BLQFmd078044; Fri, 11 Apr 2025 21:26:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BLQF5N078041; Fri, 11 Apr 2025 21:26:15 GMT (envelope-from git) Date: Fri, 11 Apr 2025 21:26:15 GMT Message-Id: <202504112126.53BLQF5N078041@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 626a4931be7a - main - net80211: fix IEEE80211_VFHT_BITS after 160 nd 80P80 got swapped List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 626a4931be7a095cff95e4272c7f36f9bedebeff Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=626a4931be7a095cff95e4272c7f36f9bedebeff commit 626a4931be7a095cff95e4272c7f36f9bedebeff Author: Bjoern A. Zeeb AuthorDate: 2025-04-10 23:18:05 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-11 21:17:24 +0000 net80211: fix IEEE80211_VFHT_BITS after 160 nd 80P80 got swapped Sponsored by: The FreeBSD Foundation MFC after: 3 days Fixes: 8f2e5b6ef3230 Reviewed by: adrian, thj Differential Revision: https://reviews.freebsd.org/D49772 --- sys/net80211/ieee80211_var.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/net80211/ieee80211_var.h b/sys/net80211/ieee80211_var.h index 4f3ed5e4a3d8..6c52fd22f29e 100644 --- a/sys/net80211/ieee80211_var.h +++ b/sys/net80211/ieee80211_var.h @@ -754,7 +754,7 @@ MALLOC_DECLARE(M_80211_VAP); IEEE80211_FVHT_STBC_TX | IEEE80211_FVHT_STBC_RX) #define IEEE80211_VFHT_BITS \ - "\20\1VHT\2VHT40\3VHT80\4VHT160\5VHT80P80\6STBC_TX\7STBC_RX" + "\20\1VHT\2VHT40\3VHT80\4VHT80P80\5VHT160\6STBC_TX\7STBC_RX" #define IEEE80211_COM_DETACHED 0x00000001 /* ieee80211_ifdetach called */ #define IEEE80211_COM_REF_ADD 0x00000002 /* add / remove reference */ From nobody Fri Apr 11 21:26:16 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ8r863QJz5shVk; Fri, 11 Apr 2025 21:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ8r839M1z3tVG; Fri, 11 Apr 2025 21:26:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406776; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TktnMZ5ZjwdSujoYfOG9ZpRudSI1c/smfHu294Pc47U=; b=Uk7hcUbTrEyw+myjn2fWIoADCYLWtEu0PEkjffxCmfKTeJPRMT6y97QdJKjBky6+vIPuKN edBJMk27QOP31Ecc6eQoUh4YVRXPXfikRb0ajlkkuNVXMFVHAJ3LOA/SoAhHylDUWHpVQS fiC4sRinMrlpVK4Wd4D6+FIFeAUM/a/mWmRaRSUjJt7O8ui+U8r3OMyMBTnnUT1SgFM8Fz 3cuFE2LtxRu6DvfpTRqjqG2vSWNWWJ6KDfFC285IC+XuWTWpxdw469yBG6vvCtmpkUO5rP N/3QdO7LLfYAQ5V2HWhit2S6LBT/xgp9Av5WXOcL8aw8ZBsW82/nVYwJIf4X+g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744406776; a=rsa-sha256; cv=none; b=EiXignW3Ff+xYJqyeMJ7OTnidxEeav20M3t9ePmX1/ve7MdbM+Jo7ho16tjD0Nm09qvhAb /2cHL4Xh8DyJS0qRyeIvjIwpeJx9or2H0BCpdKM4l037yvjznlNzosRhQBlOjU/9J0bHGK YdYdb3WNO/b8pZJbPhftMoNmHTUxAAl8OkB91rPW8coFMMdOA9/s+zBumRxfCg7efkGK+E P6SNjoHpkByVruIOsAXtKrR7heFZ3TOVB3M9E7HKZ/fOZKuzJYPSO0JwKFbct8yPlmihvZ HUpffCE+9etzvVQ06Mc5Eh8ERZ4lj419ORwXCooUyVU+NDuK8uiw2os9eqPhhQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406776; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TktnMZ5ZjwdSujoYfOG9ZpRudSI1c/smfHu294Pc47U=; b=Sc8X6utrxtmi4yaizCpBdH1aeH7SKQTTkx+HhtwTA8JMoaiwbQJTHLhkaS0lv9Y4zXolk+ uSyPnbO8SQxZq5ZJd4mbRHJIs38kISsemeLbvsHwQX3vNrfrKjVYvo6PZjx9L3BDotfp9j CU/ZchRIjjamd0MiT5ImiTVjOTfzuUKoE7ABs08SQFHU802ue0KwuaM0RPCDqbW5RiOIwW UVk6az7N2N6Lkzpwh2OARy4MdhZnVt2xPaYLJ/dD8N57m/3aLsmpRtYXXyUqUStNWNRzPL HL2qzXwixX5OnzvwZl2nRfRfSs8gbMMwR5NKPyTi9BSvSdvZfgHsqq+xSNPWdA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ8r82VntzqHc; Fri, 11 Apr 2025 21:26:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BLQGen078080; Fri, 11 Apr 2025 21:26:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BLQGtj078077; Fri, 11 Apr 2025 21:26:16 GMT (envelope-from git) Date: Fri, 11 Apr 2025 21:26:16 GMT Message-Id: <202504112126.53BLQGtj078077@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: cdef9a9f91e2 - main - LinuxKPI: 802.11: remove cipher_scheme support List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: cdef9a9f91e2eee00e8f6f1ed743a8d8bd0bdc14 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=cdef9a9f91e2eee00e8f6f1ed743a8d8bd0bdc14 commit cdef9a9f91e2eee00e8f6f1ed743a8d8bd0bdc14 Author: Bjoern A. Zeeb AuthorDate: 2025-04-08 00:22:12 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-11 21:17:24 +0000 LinuxKPI: 802.11: remove cipher_scheme support iwlwifi was the only driver we care about which "used" cipher_scheme and it was removed from there too. Remove given it is no longer used anywhere. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/compat/linuxkpi/common/include/net/mac80211.h | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index 9830d8f16d05..5c155a4c1cc8 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -373,18 +373,6 @@ struct ieee80211_channel_switch { struct cfg80211_chan_def chandef; }; -struct ieee80211_cipher_scheme { - uint32_t cipher; - uint8_t iftype; /* We do not know the size of this. */ - uint8_t hdr_len; - uint8_t pn_len; - uint8_t pn_off; - uint8_t key_idx_off; - uint8_t key_idx_mask; - uint8_t key_idx_shift; - uint8_t mic_len; -}; - enum ieee80211_event_type { BA_FRAME_TIMEOUT, BAR_RX_EVENT, @@ -508,8 +496,6 @@ struct ieee80211_hw { /* TODO FIXME */ int extra_tx_headroom, weight_multiplier; int max_rate_tries, max_rates, max_report_rates; - struct ieee80211_cipher_scheme *cipher_schemes; - int n_cipher_schemes; const char *rate_control_algorithm; struct { uint16_t units_pos; /* radiotap "spec" is .. inconsistent. */ From nobody Fri Apr 11 21:26:17 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ8r96CHpz5shkp; Fri, 11 Apr 2025 21:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ8r942xqz3t7m; Fri, 11 Apr 2025 21:26:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406777; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QfLXD8Mb5D4iVFPqmKfHFxzbkBLgahObJPSm7FKf0rc=; b=TH6glr4edjF2ucotjrQZmX3cFw3mA0+6Ir+OWW3IEqTtMG9BNpwq0OHgWtzR+Ww6zL4WuO vhgPiqSfu9FyMRMgg8bR5BDGbEqYkPnDg7TYdy5K0W2KddFLlbOExsKmCkyAQMTUCMrN33 Dnap0PgOOJkV9HMUllGO+FHggMxOT7XyQpycAyM80F06vfGGGHFXrcymbFXqwtbho2hpbD aTBMSGgiW5RYEX3XH9A017+J8V0+pF99epZGnSyCSburCdc9NCJ5hc2F/TUiZOQKdT+2/g NTE4w7wPd8Q6pk6g14p/2oaqWKTwU6uZ1sVkTjIXOtUUa2I8nCgWW4yxF5nHsw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744406777; a=rsa-sha256; cv=none; b=wJZ+JMY6XsnyLh74ECRvzPRNno7q3PwbmGY5QtaO8JcniG0Qf5STbRSgwRVuVnAhH+nAWd MmPH78dzmYCw3SE2TExdaX19ctdWaaYgb+NZBcQDQexoiPCz5mLkNjw1uQLRDSv8byEiir PBg4ySt4kgJAb2whzL/necpweX3PJwxM9X6UxICfCi8QJMXxpIphaPiA/9bXa0V+j8B8kr hqCLGgmovZuIKB90sPPlAc4V2cV8ZOu2BqVEi3RsGiin7zb0gQXvotcGdvsJa2ZHUNYwTV PGTnS2opCFiYFBqfLglJ8ebmJ+A7uoJx2wVwVpgAQ6kfVh6g1Ob9Nt7g5zqKZw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406777; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QfLXD8Mb5D4iVFPqmKfHFxzbkBLgahObJPSm7FKf0rc=; b=g0A8N+bQCGZPlfxTzyFvMAP3M3AmmH4im0kG+TRvgas+hVhoDf9rdQAOhiJNH8UGgq/uCq ZoyT8q60PPRN4oUncXkwGx3ABSQk6Alm3mJoHqAlBjRg3EVR0R5Y640k0Q+3WOBqGrAcRK wZupfExjkRLpGTJctDZ0KOCoUhqTw6OZiurB86XVAbqRhr7Z4hkndJ6NWwR2cM4iuPfSFG JztMqSQFEaiDLMzLvekudy93GcKG2iRpcP04ocwInu3OV37bOS54XkBO8NS6S3B1ByVT0r SXjk8q3QJ/miGdwJKsHyBR493kLKFAWatLeoGUwvL3Fcx517w3WkoN1oH7RJDg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ8r93SRkzpgw; Fri, 11 Apr 2025 21:26:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BLQHmw078123; Fri, 11 Apr 2025 21:26:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BLQHi2078120; Fri, 11 Apr 2025 21:26:17 GMT (envelope-from git) Date: Fri, 11 Apr 2025 21:26:17 GMT Message-Id: <202504112126.53BLQHi2078120@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 50d826be664e - main - LinuxKPI: 802.11: reduce code duplication introducing lkpi_remove_chanctx() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 50d826be664ef35065e8c4c4966252f2dfde9cb9 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=50d826be664ef35065e8c4c4966252f2dfde9cb9 commit 50d826be664ef35065e8c4c4966252f2dfde9cb9 Author: Bjoern A. Zeeb AuthorDate: 2025-04-05 23:59:00 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-11 21:17:24 +0000 LinuxKPI: 802.11: reduce code duplication introducing lkpi_remove_chanctx() We have the same code three times, so factor it out into its own function to make it easier to maintain. Sponsored by: The FreeBSD Foundation PR: 280546 MFC after: 3 days Tested by: Oleksandr Kryvulia (shuriku shurik.kiev.ua) Tested by: Oleg Nauman (oleg.nauman gmail.com) [rtw88] Differential Revision: https://reviews.freebsd.org/D49734 --- sys/compat/linuxkpi/common/include/net/mac80211.h | 2 +- sys/compat/linuxkpi/common/src/linux_80211.c | 80 ++++++++--------------- 2 files changed, 30 insertions(+), 52 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index 5c155a4c1cc8..95991dd2ac42 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -839,7 +839,7 @@ struct ieee80211_vif { bool probe_req_reg; uint8_t addr[ETH_ALEN]; struct ieee80211_vif_cfg cfg; - struct ieee80211_chanctx_conf *chanctx_conf; + struct ieee80211_chanctx_conf *chanctx_conf; /* XXX-BZ no longer used anywhere but in linuxkpi 802.11 internally; now in bss_conf per-link? */ struct ieee80211_txq *txq; struct ieee80211_bss_conf bss_conf; struct ieee80211_bss_conf *link_conf[IEEE80211_MLD_MAX_NUM_LINKS]; /* rcu? */ diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index ec1798d2e886..5c50060e3dc0 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -1731,6 +1731,31 @@ lkpi_80211_flush_tx(struct lkpi_hw *lhw, struct lkpi_sta *lsta) } } + +static void +lkpi_remove_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif *vif) +{ + /* Take the chan ctx down. */ + if (vif->chanctx_conf != NULL) { + struct lkpi_chanctx *lchanctx; + struct ieee80211_chanctx_conf *chanctx_conf; + + chanctx_conf = vif->chanctx_conf; + /* Remove vif context. */ + lkpi_80211_mo_unassign_vif_chanctx(hw, vif, &vif->bss_conf, &vif->chanctx_conf); + /* NB: vif->chanctx_conf is NULL now. */ + + lkpi_hw_conf_idle(hw, true); + + /* Remove chan ctx. */ + lkpi_80211_mo_remove_chanctx(hw, chanctx_conf); + vif->bss_conf.chanctx_conf = NULL; + lchanctx = CHANCTX_CONF_TO_LCHANCTX(chanctx_conf); + free(lchanctx, M_LKPI80211); + } +} + + /* -------------------------------------------------------------------------- */ static int @@ -1924,6 +1949,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int ic_printf(vap->iv_ic, "%s:%d: mo_assign_vif_chanctx " "failed: %d\n", __func__, __LINE__, error); lkpi_80211_mo_remove_chanctx(hw, chanctx_conf); + vif->bss_conf.chanctx_conf = NULL; lchanctx = CHANCTX_CONF_TO_LCHANCTX(chanctx_conf); free(lchanctx, M_LKPI80211); goto out; @@ -2157,23 +2183,7 @@ lkpi_sta_auth_to_scan(struct ieee80211vap *vap, enum ieee80211_state nstate, int /* conf_tx */ - /* Take the chan ctx down. */ - if (vif->chanctx_conf != NULL) { - struct lkpi_chanctx *lchanctx; - struct ieee80211_chanctx_conf *chanctx_conf; - - chanctx_conf = vif->chanctx_conf; - /* Remove vif context. */ - lkpi_80211_mo_unassign_vif_chanctx(hw, vif, &vif->bss_conf, &vif->chanctx_conf); - /* NB: vif->chanctx_conf is NULL now. */ - - lkpi_hw_conf_idle(hw, true); - - /* Remove chan ctx. */ - lkpi_80211_mo_remove_chanctx(hw, chanctx_conf); - lchanctx = CHANCTX_CONF_TO_LCHANCTX(chanctx_conf); - free(lchanctx, M_LKPI80211); - } + lkpi_remove_chanctx(hw, vif); out: LKPI_80211_LHW_UNLOCK(lhw); @@ -2501,23 +2511,7 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i /* conf_tx */ - /* Take the chan ctx down. */ - if (vif->chanctx_conf != NULL) { - struct lkpi_chanctx *lchanctx; - struct ieee80211_chanctx_conf *chanctx_conf; - - chanctx_conf = vif->chanctx_conf; - /* Remove vif context. */ - lkpi_80211_mo_unassign_vif_chanctx(hw, vif, &vif->bss_conf, &vif->chanctx_conf); - /* NB: vif->chanctx_conf is NULL now. */ - - lkpi_hw_conf_idle(hw, true); - - /* Remove chan ctx. */ - lkpi_80211_mo_remove_chanctx(hw, chanctx_conf); - lchanctx = CHANCTX_CONF_TO_LCHANCTX(chanctx_conf); - free(lchanctx, M_LKPI80211); - } + lkpi_remove_chanctx(hw, vif); error = EALREADY; out: @@ -3117,23 +3111,7 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int /* conf_tx */ - /* Take the chan ctx down. */ - if (vif->chanctx_conf != NULL) { - struct lkpi_chanctx *lchanctx; - struct ieee80211_chanctx_conf *chanctx_conf; - - chanctx_conf = vif->chanctx_conf; - /* Remove vif context. */ - lkpi_80211_mo_unassign_vif_chanctx(hw, vif, &vif->bss_conf, &vif->chanctx_conf); - /* NB: vif->chanctx_conf is NULL now. */ - - lkpi_hw_conf_idle(hw, true); - - /* Remove chan ctx. */ - lkpi_80211_mo_remove_chanctx(hw, chanctx_conf); - lchanctx = CHANCTX_CONF_TO_LCHANCTX(chanctx_conf); - free(lchanctx, M_LKPI80211); - } + lkpi_remove_chanctx(hw, vif); error = EALREADY; out: From nobody Fri Apr 11 21:26:18 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ8rB5wq6z5shpT; Fri, 11 Apr 2025 21:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ8rB4PQFz3tgp; Fri, 11 Apr 2025 21:26:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406778; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VBEDs0R3WXRKlEKa8D+YqN8kJ6hLXT37EB66irml6B0=; b=abZRUcobPkr9W9cTAWEKhx8rDlOezvGhvwj0/QdLnnQU/U/ZCV3UvIHrKpUckDUEMc4FJq 769CFhk7jFOa/fkop4EzdtVO44gwOKw2g7FjIZh0MPDXHwoOcyFiHrzZbRZ9wmm0otj3yl 3/bB6mrP3xG7GQUg2o58VzkYim1eyT06f9sAdQmz3lR3niDyZD8/AS1r8fBWoHh/HBXQ+n BkCPKEAEJPTWfKKDexEVH3LfqkimsyjdLQq7eF9KRDWbd3nR8+ccY68vGEuDusuAzRULmJ 3YsXzPs6O2EIkYalOurJBtJ33oN5/RRvNc4GpCW9/PACU2PkYXmXuZ+6YQuvnA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744406778; a=rsa-sha256; cv=none; b=W4S+y2T++3U8UW9GjLORI9Eiu/0rZiH9QtJPZH7WURqITdXDUU8FzpRzy2nRHC7GlX6kFx m4pOD4JAWB9dViD+JXJ8tRvFJ0UeedIgGBI8hMwcfm0HR+ExGrhFnkr88VC8ApNIQxcnI+ Vwz2vIvCMaZtcIEC89JM7yU6mZAAqOULuxtVpxPim56IUGe2EQvHqwBZIxfgOfH4DYBP6f KLr9f8APhVeWcCo7SUKY6WR3dsPiINzMQ7RZWbbcwKlBSIiogJUaJS3EDw3I/0uR12Q3su B4DHZbRgK2ynsKtuOZFQ/sjWfqLgxUtxmFNI7SPJA6iuFqELV3uxewBc1SYmDQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406778; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VBEDs0R3WXRKlEKa8D+YqN8kJ6hLXT37EB66irml6B0=; b=kcs9tx7e7lz8LRI5IW6sp/IVXkaDGDQPv/VkLp4kwC0xwQkGo+mhBQjqRnT9HZ0gncLYEq jzmP6QclREZ6WYhctGJXisthtmKd6XhzQZLRUp1k5JU75FQNR2ptciFY3sL8UBeB+9XTKO HHaVJO8spU0OIb8IJf3b97woF9J/PrSXDyC0ZnYx5tAMskLHBuo0Lwk4HXiacz1+Z0cAdi q5Jb9pzgIGhFteOH6t4FLug+JjJNb2CS2dTG+Tuc1WZSakuHwETzJ2Oyj/t/MtqhmJHOJg /Jx4vz+2DSmpamtTRQRAH/NIRNNDH5tIywMX6ranV2U4wMNfxO5Q/6YiGdJOhg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ8rB3ygYzpy1; Fri, 11 Apr 2025 21:26:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BLQIpb078158; Fri, 11 Apr 2025 21:26:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BLQIuI078155; Fri, 11 Apr 2025 21:26:18 GMT (envelope-from git) Date: Fri, 11 Apr 2025 21:26:18 GMT Message-Id: <202504112126.53BLQIuI078155@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 11604b2a1659 - main - LinuxKPI: 802.11: move chanctx_conf from vif to vif->bss_conf List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 11604b2a1659fd6da9bbfdc6acf9758884cb2b36 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=11604b2a1659fd6da9bbfdc6acf9758884cb2b36 commit 11604b2a1659fd6da9bbfdc6acf9758884cb2b36 Author: Bjoern A. Zeeb AuthorDate: 2025-04-08 00:56:36 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-11 21:17:55 +0000 LinuxKPI: 802.11: move chanctx_conf from vif to vif->bss_conf In preparations for MLD support chanctx_conf was moved from vif to the bss_conf as it will be per-link later. Follow accordingly. Sponsored by: The FreeBSD Foundation PR: 280546 MFC after: 3 days Tested by: Oleksandr Kryvulia (shuriku shurik.kiev.ua) Tested by: Oleg Nauman (oleg.nauman gmail.com) [rtw88] Differential Revision: https://reviews.freebsd.org/D49734 --- sys/compat/linuxkpi/common/include/net/mac80211.h | 1 - sys/compat/linuxkpi/common/src/linux_80211.c | 20 ++++++++++---------- sys/compat/linuxkpi/common/src/linux_80211_macops.c | 2 +- 3 files changed, 11 insertions(+), 12 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index 95991dd2ac42..016143874564 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -839,7 +839,6 @@ struct ieee80211_vif { bool probe_req_reg; uint8_t addr[ETH_ALEN]; struct ieee80211_vif_cfg cfg; - struct ieee80211_chanctx_conf *chanctx_conf; /* XXX-BZ no longer used anywhere but in linuxkpi 802.11 internally; now in bss_conf per-link? */ struct ieee80211_txq *txq; struct ieee80211_bss_conf bss_conf; struct ieee80211_bss_conf *link_conf[IEEE80211_MLD_MAX_NUM_LINKS]; /* rcu? */ diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 5c50060e3dc0..28bd2c062427 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -1736,14 +1736,14 @@ static void lkpi_remove_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif *vif) { /* Take the chan ctx down. */ - if (vif->chanctx_conf != NULL) { + if (vif->bss_conf.chanctx_conf != NULL) { struct lkpi_chanctx *lchanctx; struct ieee80211_chanctx_conf *chanctx_conf; - chanctx_conf = vif->chanctx_conf; + chanctx_conf = vif->bss_conf.chanctx_conf; /* Remove vif context. */ - lkpi_80211_mo_unassign_vif_chanctx(hw, vif, &vif->bss_conf, &vif->chanctx_conf); - /* NB: vif->chanctx_conf is NULL now. */ + lkpi_80211_mo_unassign_vif_chanctx(hw, vif, &vif->bss_conf, &vif->bss_conf.chanctx_conf); + /* NB: vif->bss_conf.chanctx_conf is NULL now. */ lkpi_hw_conf_idle(hw, true); @@ -1840,8 +1840,8 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int LKPI_80211_LHW_LOCK(lhw); /* Add chanctx (or if exists, change it). */ - if (vif->chanctx_conf != NULL) { - chanctx_conf = vif->chanctx_conf; + if (vif->bss_conf.chanctx_conf != NULL) { + chanctx_conf = vif->bss_conf.chanctx_conf; lchanctx = CHANCTX_CONF_TO_LCHANCTX(chanctx_conf); IMPROVE("diff changes for changed, working on live copy, rcu"); } else { @@ -1916,7 +1916,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int bss_changed |= lkpi_update_dtim_tsf(vif, ni, vap, __func__, __LINE__); error = 0; - if (vif->chanctx_conf != NULL) { + if (vif->bss_conf.chanctx_conf != NULL) { changed = IEEE80211_CHANCTX_CHANGE_MIN_WIDTH; changed |= IEEE80211_CHANCTX_CHANGE_RADAR; changed |= IEEE80211_CHANCTX_CHANGE_RX_CHAINS; @@ -3470,7 +3470,7 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], /* XXX-BZ hardcoded for now! */ #if 1 - vif->chanctx_conf = NULL; + vif->bss_conf.chanctx_conf = NULL; vif->bss_conf.vif = vif; /* vap->iv_myaddr is not set until net80211::vap_setup or vap_attach. */ IEEE80211_ADDR_COPY(vif->bss_conf.addr, mac); @@ -5970,10 +5970,10 @@ linuxkpi_ieee80211_iterate_chan_contexts(struct ieee80211_hw *hw, TAILQ_FOREACH(lvif, &lhw->lvif_head, lvif_entry) { vif = LVIF_TO_VIF(lvif); - if (vif->chanctx_conf == NULL) + if (vif->bss_conf.chanctx_conf == NULL) continue; - lchanctx = CHANCTX_CONF_TO_LCHANCTX(vif->chanctx_conf); + lchanctx = CHANCTX_CONF_TO_LCHANCTX(vif->bss_conf.chanctx_conf); if (!lchanctx->added_to_drv) continue; diff --git a/sys/compat/linuxkpi/common/src/linux_80211_macops.c b/sys/compat/linuxkpi/common/src/linux_80211_macops.c index fde23d02af5e..9a7207424b2f 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211_macops.c +++ b/sys/compat/linuxkpi/common/src/linux_80211_macops.c @@ -458,7 +458,7 @@ lkpi_80211_mo_assign_vif_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif * hw, vif, conf, chanctx_conf); error = lhw->ops->assign_vif_chanctx(hw, vif, conf, chanctx_conf); if (error == 0) - vif->chanctx_conf = chanctx_conf; + vif->bss_conf.chanctx_conf = chanctx_conf; out: return (error); From nobody Fri Apr 11 21:26:19 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ8rD22Y4z5shW5; Fri, 11 Apr 2025 21:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ8rC5CF3z3tTD; Fri, 11 Apr 2025 21:26:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406779; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fev/QU0QNYv8DUgPa9uCekqXKyNWPvPluxriNFsftKQ=; b=ugCkrx5nM0J6LKKNEmaaMR+eXKPp9RAtUWc57wUaijr0z5YoUbykciOPLPBS441tsup+ty IUP/bSM/SCNaU3gCHqvu+Fc1L7ExB/8wNr4dr8ZZROWirKYX8AWCe1hagZvyIpAcIOTpce IAISHuxBqTwoW6xl4SwavjANgj1p5dZDckeRz/cWIGhqNrMgFfTQT+RWAlew6WgUDb2P9N qa5XMVHVnAY8GW4vNPhwcaUbO5FNadkiewvqvaaXNoYlCXbRCmYPu2oYeU7YegNddzasFS O8D8CoEPnn2qAPL9Z7Lab0Kj4hqj9J84NoEymTPcL3IyZDKknOj7ybcNpxGSSA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744406779; a=rsa-sha256; cv=none; b=JD9iITXhORuim4p8W+jD7UlEHbkwpDSdqAJ0+/YCEFQy2WWdfUrsPdhZP6yGUIJmhbXNwt uCoBw2U/CjxerthzMvBnzCDsaYdVkdClGt4VEPonjZBDvQySHptnWbm6alBI3+0qDLb+UQ GL66zTrOIQ+uwtDx4n4ZdKdNdxQlN9YulUgbTHhnmX5EzydqGQScXwiKySNz+jA0ZKQgZm YeaHM1BtrxEslEAeDwA2GE01G63V/c9of9ziOGqPb96UbwTx9W6z68M9N3PTbI9fzzQqD1 QDgXDTEN2Bs4zPJDGoz8YLdKdSL1Na3o2pyVQn9jJ/UqVhwfS2wiYTIObpCrMw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406779; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fev/QU0QNYv8DUgPa9uCekqXKyNWPvPluxriNFsftKQ=; b=Sl7lQrZQnJn47C1CTOQCvJ92femDytk/Yxv2g7L70zuJAfJIdWgQEAS0SCpYjw0I3h+dv0 7bs5E60gar32+0ib4VQCOqIeaxXIdK8NE65m4CavfAU5E6LHoE2uP2ev9lS1nDS76zXTQd NXgG7iKhUN+H9gZtfrD+exd+pw5DSABWgv/Ulntjn7a1LUL2tJRFkCJBbHKlaAH4Nuhvw6 fIGLNBg76BcSbn324y9YABdsfNaN3tfktsNW57YHnxI6Xm4HCL/KNhbI3x3PaLhh8JYcbo 3Ch0hR01xPPJa2fWrvtQ7G9hgFMqOR6tFL09K+raOSB0kqk+Rjc8+6QgTADesQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ8rC4jM0zqFM; Fri, 11 Apr 2025 21:26:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BLQJ58078194; Fri, 11 Apr 2025 21:26:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BLQJY7078191; Fri, 11 Apr 2025 21:26:19 GMT (envelope-from git) Date: Fri, 11 Apr 2025 21:26:19 GMT Message-Id: <202504112126.53BLQJY7078191@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 5321cf2b15d7 - main - LinuxKPI: 802.11: more fields moved from vif to bss_conf List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5321cf2b15d7bff1b01182cfc4897ac978c63fe7 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=5321cf2b15d7bff1b01182cfc4897ac978c63fe7 commit 5321cf2b15d7bff1b01182cfc4897ac978c63fe7 Author: Bjoern A. Zeeb AuthorDate: 2025-04-08 01:04:49 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-11 21:18:09 +0000 LinuxKPI: 802.11: more fields moved from vif to bss_conf csa_active, color_change_active, mu_mimo_owner also moved from vif to bss_conf; we already have the fields in bss_conf (adjust type for one) so all we have to do is remove the old relics in vif. Sponsored by: The FreeBSD Foundation MFC after: 3 days Tested by: Oleksandr Kryvulia (shuriku shurik.kiev.ua) Tested by: Oleg Nauman (oleg.nauman gmail.com) [rtw88] Differential Revision: https://reviews.freebsd.org/D49734 --- sys/compat/linuxkpi/common/include/net/mac80211.h | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index 016143874564..8856eee8c696 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -343,6 +343,7 @@ struct ieee80211_bss_conf { bool eht_support; bool csa_active; bool mu_mimo_owner; + bool color_change_active; uint32_t sync_device_ts; uint64_t sync_tsf; uint16_t beacon_int; @@ -363,7 +364,6 @@ struct ieee80211_bss_conf { int twt_requester, uora_exists, uora_ocw_range; int assoc_capability, enable_beacon, hidden_ssid, ibss_joined, twt_protected; int twt_responder, unsol_bcast_probe_resp_interval; - int color_change_active; }; struct ieee80211_channel_switch { @@ -831,9 +831,8 @@ struct ieee80211_vif_cfg { struct ieee80211_vif { /* TODO FIXME */ enum nl80211_iftype type; - int csa_active, mu_mimo_owner; int cab_queue; - int color_change_active, offload_flags; + int offload_flags; enum ieee80211_vif_driver_flags driver_flags; bool p2p; bool probe_req_reg; From nobody Fri Apr 11 21:26:20 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ8rF1VQjz5shW9; Fri, 11 Apr 2025 21:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ8rD6BJfz3tTf; Fri, 11 Apr 2025 21:26:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406780; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=blADl0t/7ajKRsCU5un+91prhoBYayz6l4CN+QiyBto=; b=GOX28nstGMptp9u21Op3/LouR29D6YU2IQIyhBUdTCZ34mdFV4u8tz6Mk3VnTaJD2w/WTn dLTdKU489mtNacBn4hKBfYktlvLDIdxEDXfwNFrqX+jpbEq3zDg0oTs2A642Jt2kMH/ZzZ YVPGpx6TfaHh96tIezbO+cXbZ2xgI1tnw1qVkxmcLwLSEA3I93CVJnn8xKwvvwN7fXSyz2 2L4CfMAQp//Fr+BElHTsnI8hrnpwWsxDy6I/9y3y1eBWHZNvXq3Jz9SfLJQcrsdNJ0dBeB RDkeTya0qArNw2eTCknRVUItP2veBXnhvz92Jqk2Dje07wgZ1hGkTEr9rgVuYQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744406780; a=rsa-sha256; cv=none; b=BFC/Cs+M5cZCl/EXn+ppwu79/XHbB64TulnykJgOwtz7kY+f37RX0+OvrPYiT3vB2AvY3v 3d2nk9EybDFjds69vIZOYeAFI7r1HnyL1xXhClkFL3FCdTAM2r4dmPycK2VLhU8B0MDiBU hcWwjcUOaRF4NiQrg6kSdluT2W0/06R94++QszUqfdUYcPyFozrdL0alWylQP2COjiNLpJ CZLXyJ5jIgM9cNZ/ZegYh9B+V9veKaDaESemDvYEqpWMvc6fnjIBW9kwwXsbacU25fjtpY fUyAhSanqRjnt3o6jp5iGTFBdolZ+PScvqBD9PkUAN3qwi0KIJCC0s+fGludWw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406780; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=blADl0t/7ajKRsCU5un+91prhoBYayz6l4CN+QiyBto=; b=TJer71B6ySgamKpOjFeJJUC1+aOzd8+ZknPySFlychlI+OwmbnNqrELt1KGolxMd5reuM8 VzipIuiDVnpdCedR+bL29BFDn3SRATYBrdBVhZABd2BYkvrw2lfmyXPbtM9pf1V+eyJvai 7yiWnYORoA205wSd98hAxtIDu+nBOcjb/L/UCl21Kk/DqUkRpNphE7nxNX77XhU6J9Agpz zpGEt3Kay56XQUKWM2Q+RjugjuhsDfTiDLaz+JZw4jfVmfH57rS/d6NYZmJ7NiVfimcvIF C1iBNYLBgc4rj8cI1j+X/Lmuwpq7IFSV7B1bNOZ7h7qSaffFOofEcQbuHjR4Kw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ8rD5lX5zpRX; Fri, 11 Apr 2025 21:26:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BLQK5q078230; Fri, 11 Apr 2025 21:26:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BLQKgp078227; Fri, 11 Apr 2025 21:26:20 GMT (envelope-from git) Date: Fri, 11 Apr 2025 21:26:20 GMT Message-Id: <202504112126.53BLQKgp078227@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 231168c7e777 - main - LinuxKPI: 802.11: adjust locking around lkpi_remove_chanctx() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 231168c7e77777f69a323bcd80a7956527d34548 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=231168c7e77777f69a323bcd80a7956527d34548 commit 231168c7e77777f69a323bcd80a7956527d34548 Author: Bjoern A. Zeeb AuthorDate: 2025-04-08 16:35:20 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-11 21:25:56 +0000 LinuxKPI: 802.11: adjust locking around lkpi_remove_chanctx() With the adjusted locking as a first step and the single code path into lkpi_80211_mo_unassign_vif_chanctx() we also move the "setting chnactx to NULL" into the caller to simplify the code. Before we can adjust the other places touching vif->bss_conf.chanctx we need to adjust the overall locking in LinuxKPI 802.11. Sponsored by: The FreeBSD Foundation PR: 280546 MFC after: 3 days Tested by: Oleksandr Kryvulia (shuriku shurik.kiev.ua) Tested by: Oleg Nauman (oleg.nauman gmail.com) [rtw88] Differential Revision: https://reviews.freebsd.org/D49734 --- sys/compat/linuxkpi/common/src/linux_80211.c | 39 +++++++++++++--------- sys/compat/linuxkpi/common/src/linux_80211.h | 2 +- .../linuxkpi/common/src/linux_80211_macops.c | 12 ++++--- 3 files changed, 32 insertions(+), 21 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 28bd2c062427..7dc18eccd4c8 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -1735,24 +1735,27 @@ lkpi_80211_flush_tx(struct lkpi_hw *lhw, struct lkpi_sta *lsta) static void lkpi_remove_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif *vif) { - /* Take the chan ctx down. */ - if (vif->bss_conf.chanctx_conf != NULL) { - struct lkpi_chanctx *lchanctx; - struct ieee80211_chanctx_conf *chanctx_conf; + struct ieee80211_chanctx_conf *chanctx_conf; + struct lkpi_chanctx *lchanctx; - chanctx_conf = vif->bss_conf.chanctx_conf; - /* Remove vif context. */ - lkpi_80211_mo_unassign_vif_chanctx(hw, vif, &vif->bss_conf, &vif->bss_conf.chanctx_conf); - /* NB: vif->bss_conf.chanctx_conf is NULL now. */ + chanctx_conf = rcu_dereference_protected(vif->bss_conf.chanctx_conf, + lockdep_is_held(&hw->wiphy->mtx)); - lkpi_hw_conf_idle(hw, true); + if (chanctx_conf == NULL) + return; - /* Remove chan ctx. */ - lkpi_80211_mo_remove_chanctx(hw, chanctx_conf); - vif->bss_conf.chanctx_conf = NULL; - lchanctx = CHANCTX_CONF_TO_LCHANCTX(chanctx_conf); - free(lchanctx, M_LKPI80211); - } + /* Remove vif context. */ + lkpi_80211_mo_unassign_vif_chanctx(hw, vif, &vif->bss_conf, chanctx_conf); + + lkpi_hw_conf_idle(hw, true); + + /* Remove chan ctx. */ + lkpi_80211_mo_remove_chanctx(hw, chanctx_conf); + + /* Cleanup. */ + rcu_assign_pointer(vif->bss_conf.chanctx_conf, NULL); + lchanctx = CHANCTX_CONF_TO_LCHANCTX(chanctx_conf); + free(lchanctx, M_LKPI80211); } @@ -2183,7 +2186,9 @@ lkpi_sta_auth_to_scan(struct ieee80211vap *vap, enum ieee80211_state nstate, int /* conf_tx */ + wiphy_lock(hw->wiphy); lkpi_remove_chanctx(hw, vif); + wiphy_unlock(hw->wiphy); out: LKPI_80211_LHW_UNLOCK(lhw); @@ -2511,7 +2516,9 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i /* conf_tx */ + wiphy_lock(hw->wiphy); lkpi_remove_chanctx(hw, vif); + wiphy_unlock(hw->wiphy); error = EALREADY; out: @@ -3111,7 +3118,9 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int /* conf_tx */ + wiphy_lock(hw->wiphy); lkpi_remove_chanctx(hw, vif); + wiphy_unlock(hw->wiphy); error = EALREADY; out: diff --git a/sys/compat/linuxkpi/common/src/linux_80211.h b/sys/compat/linuxkpi/common/src/linux_80211.h index c2d29b2dcc4b..c01a6cb0cd7c 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.h +++ b/sys/compat/linuxkpi/common/src/linux_80211.h @@ -425,7 +425,7 @@ int lkpi_80211_mo_config(struct ieee80211_hw *, uint32_t); int lkpi_80211_mo_assign_vif_chanctx(struct ieee80211_hw *, struct ieee80211_vif *, struct ieee80211_bss_conf *, struct ieee80211_chanctx_conf *); void lkpi_80211_mo_unassign_vif_chanctx(struct ieee80211_hw *, struct ieee80211_vif *, - struct ieee80211_bss_conf *, struct ieee80211_chanctx_conf **); + struct ieee80211_bss_conf *, struct ieee80211_chanctx_conf *); int lkpi_80211_mo_add_chanctx(struct ieee80211_hw *, struct ieee80211_chanctx_conf *); void lkpi_80211_mo_change_chanctx(struct ieee80211_hw *, struct ieee80211_chanctx_conf *, uint32_t); diff --git a/sys/compat/linuxkpi/common/src/linux_80211_macops.c b/sys/compat/linuxkpi/common/src/linux_80211_macops.c index 9a7207424b2f..336b8a1e9ce2 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211_macops.c +++ b/sys/compat/linuxkpi/common/src/linux_80211_macops.c @@ -466,21 +466,23 @@ out: void lkpi_80211_mo_unassign_vif_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif *vif, - struct ieee80211_bss_conf *conf, struct ieee80211_chanctx_conf **chanctx_conf) + struct ieee80211_bss_conf *conf, struct ieee80211_chanctx_conf *chanctx_conf) { struct lkpi_hw *lhw; + might_sleep(); + lockdep_assert_wiphy(hw->wiphy); + lhw = HW_TO_LHW(hw); if (lhw->ops->unassign_vif_chanctx == NULL) return; - if (*chanctx_conf == NULL) + if (chanctx_conf == NULL) return; LKPI_80211_TRACE_MO("hw %p vif %p bss_conf %p chanctx_conf %p", - hw, vif, conf, *chanctx_conf); - lhw->ops->unassign_vif_chanctx(hw, vif, conf, *chanctx_conf); - *chanctx_conf = NULL; + hw, vif, conf, chanctx_conf); + lhw->ops->unassign_vif_chanctx(hw, vif, conf, chanctx_conf); } From nobody Fri Apr 11 21:26:21 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ8rG2xg0z5shl0; Fri, 11 Apr 2025 21:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ8rG0lQhz3tn8; Fri, 11 Apr 2025 21:26:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406782; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6DJBFu6Y97Sg6tMPRAkncuz8UBB4GYICka0lSL2+Y2g=; b=B/v09tGgn9/8Q3AbMvW12AMK2YoQxCfV+K9Alt5j5tO+OEppcBKeeVY1o1pnyb7n7lzBpT 1Mn+gkpgBJJ+MHVVFZxOa3EJAtWF7pCk4DD9p45CUiYQuTXKNZbyFKnjFYw5kunbpIOT6Y QefmGaFAZB4+6w5wjDKI3b+trNCL3Rw90g9x5PdJXy5+kX81kYPsj7UJrZ/WpHbj52SS8h vJfdULU2MHOrgahxpliP38/7s5RHanvLhgMMHSCFd7yDTMA7k1Q61bkM6hH8hkbChvnez6 xXGAVDn0EMQSwHGwqcIcJvajy3qxgERVlgn+Yc6kQzc3h4ETBBRlc2VLvN+GIQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744406782; a=rsa-sha256; cv=none; b=eGFBGOWwy+kADn95EQBYRFMlxj4gbcra59vg/hMvXQRBA0FBzz678DYuHMeNuvK4ismSFt TDdqaGztuFyruc5oCLqfwsyf62ioIosgTBuBC+6e8RiukWIEIc04HujRgP/PdHfI/+RLBE daaBP8QOR85if79W4QvE1Ws/HULAw/n+uiRDA1sIWiwVLFbfaS/mORV4B9p9Kz2gvoUMGm l4kB3fPZEqZLfmR9Xw5z7M0/9vWKVuasNTZN5PnmtfFdYAuRfZJroB5XjxBOy7N0v/L1sK jgwSfy/CHzp9bz2qHsZLU+cSJkNEElnkvS5uCZDhGgbZYZxZVI9MeoRngFNP0A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406782; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6DJBFu6Y97Sg6tMPRAkncuz8UBB4GYICka0lSL2+Y2g=; b=mIVml5oaW0hqH0ltXUySL8KJjzeJQmJXcu7RPJJENuUX9SYtRwEo+lLgXulz4a7oL2+qDb q1+a+iBomy6evqu0kstRzONCLPPE8aFyBpzP0yu64LvVUNHjqAecrJax6iHaPRwdmoI7yW 6qwxplNHrL5vs6Jj4YlJak+EuPM1RO+pgwxYxQBQwtlaovOsUOIwXJ8gPSos01A8yPu9YZ OqV6oRLqamn64oaGVJeQHt6QUb9dqtfSd/9KFwqhSOmZJShe+Dim61UsuOxEAH9ecVUeTB aGr/GkuMH34DdAshYFZ09zcajOTDkXcgAeLi8G66qFP6OizVdZX8B82yPRN1hQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ8rF6y4Hzpy2; Fri, 11 Apr 2025 21:26:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BLQL2m078266; Fri, 11 Apr 2025 21:26:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BLQLot078263; Fri, 11 Apr 2025 21:26:21 GMT (envelope-from git) Date: Fri, 11 Apr 2025 21:26:21 GMT Message-Id: <202504112126.53BLQLot078263@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: cd0fcf9f1211 - main - LinuxKPI: 802.11: switch to wiphy_lock List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: cd0fcf9f12114df542d4b080202abb1fe5f1aec8 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=cd0fcf9f12114df542d4b080202abb1fe5f1aec8 commit cd0fcf9f12114df542d4b080202abb1fe5f1aec8 Author: Bjoern A. Zeeb AuthorDate: 2025-04-08 18:41:45 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-11 21:26:05 +0000 LinuxKPI: 802.11: switch to wiphy_lock Replace the LKPI_80211_LHW_LOCK (lhw->sx) with the wiphy lock (which is a Linux mutex, so also an sx lock). Apart from two places the change was mostly mechanically. Further remove the now recursive lock acquisitions. This lays the ground for us to use more Linux(KPI) 802.11 internal locking as well as more rcu equivalents, e.g., for the chanctx, and live better to the synchronisation expectations of the drivers. [I wish there would be more assertions in the drivers themselves, especially in the mac80211 ops and the iteration callbacks.] Sponsored by: The FreeBSD Foundation PR: 280546 MFC after: 3 days Tested by: Oleksandr Kryvulia (shuriku shurik.kiev.ua) Tested by: Oleg Nauman (oleg.nauman gmail.com) [rtw88] Differential Revision: https://reviews.freebsd.org/D49734 --- sys/compat/linuxkpi/common/src/linux_80211.c | 122 ++++++++++++--------------- sys/compat/linuxkpi/common/src/linux_80211.h | 15 ---- 2 files changed, 56 insertions(+), 81 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 7dc18eccd4c8..b5da3282d249 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -570,12 +570,11 @@ static void lkpi_lsta_remove(struct lkpi_sta *lsta, struct lkpi_vif *lvif) { + lockdep_assert_wiphy(lsta->hw->wiphy); - wiphy_lock(lsta->hw->wiphy); KASSERT(!list_empty(&lsta->lsta_list), ("%s: lsta %p ni %p\n", __func__, lsta, lsta->ni)); list_del_init(&lsta->lsta_list); - wiphy_unlock(lsta->hw->wiphy); } static struct lkpi_sta * @@ -1579,10 +1578,10 @@ lkpi_stop_hw_scan(struct lkpi_hw *lhw, struct ieee80211_vif *vif) hw = LHW_TO_HW(lhw); IEEE80211_UNLOCK(lhw->ic); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); /* Need to cancel the scan. */ lkpi_80211_mo_cancel_hw_scan(hw, vif); - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); /* Need to make sure we see ieee80211_scan_completed. */ LKPI_80211_LHW_SCAN_LOCK(lhw); @@ -1699,11 +1698,14 @@ lkpi_wake_tx_queues(struct ieee80211_hw *hw, struct ieee80211_sta *sta, static void lkpi_80211_flush_tx(struct lkpi_hw *lhw, struct lkpi_sta *lsta) { + struct ieee80211_hw *hw; struct mbufq mq; struct mbuf *m; int len; - LKPI_80211_LHW_UNLOCK_ASSERT(lhw); + /* There is no lockdep_assert_not_held_wiphy(). */ + hw = LHW_TO_HW(lhw); + lockdep_assert_not_held(&hw->wiphy->mtx); /* Do not accept any new packets until scan_to_auth or lsta_free(). */ LKPI_80211_LSTA_TXQ_LOCK(lsta); @@ -1840,7 +1842,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int LKPI_80211_LVIF_UNLOCK(lvif); IEEE80211_UNLOCK(vap->iv_ic); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); /* Add chanctx (or if exists, change it). */ if (vif->bss_conf.chanctx_conf != NULL) { @@ -1981,10 +1983,8 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int lsta->txq_ready = true; LKPI_80211_LSTA_TXQ_UNLOCK(lsta); - wiphy_lock(hw->wiphy); /* Insert the [l]sta into the list of known stations. */ list_add_tail(&lsta->lsta_list, &lvif->lsta_list); - wiphy_unlock(hw->wiphy); /* Add (or adjust) sta and change state (from NOTEXIST) to NONE. */ KASSERT(lsta != NULL, ("%s: ni %p lsta is NULL\n", __func__, ni)); @@ -2030,7 +2030,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int * (ideally we'd do that on a callback for something else ...) */ - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); IEEE80211_LOCK(vap->iv_ic); LKPI_80211_LVIF_LOCK(lvif); @@ -2075,7 +2075,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int goto out_relocked; out: - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); IEEE80211_LOCK(vap->iv_ic); out_relocked: /* @@ -2127,7 +2127,7 @@ lkpi_sta_auth_to_scan(struct ieee80211vap *vap, enum ieee80211_state nstate, int lkpi_lsta_dump(lsta, ni, __func__, __LINE__); IEEE80211_UNLOCK(vap->iv_ic); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); /* flush, drop. */ lkpi_80211_mo_flush(hw, vif, nitems(sta->txq), true); @@ -2186,12 +2186,10 @@ lkpi_sta_auth_to_scan(struct ieee80211vap *vap, enum ieee80211_state nstate, int /* conf_tx */ - wiphy_lock(hw->wiphy); lkpi_remove_chanctx(hw, vif); - wiphy_unlock(hw->wiphy); out: - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); IEEE80211_LOCK(vap->iv_ic); return (error); } @@ -2224,7 +2222,7 @@ lkpi_sta_auth_to_assoc(struct ieee80211vap *vap, enum ieee80211_state nstate, in vif = LVIF_TO_VIF(lvif); IEEE80211_UNLOCK(vap->iv_ic); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); LKPI_80211_LVIF_LOCK(lvif); /* XXX-BZ KASSERT later? */ @@ -2290,7 +2288,7 @@ lkpi_sta_auth_to_assoc(struct ieee80211vap *vap, enum ieee80211_state nstate, in */ out: - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); IEEE80211_LOCK(vap->iv_ic); return (error); } @@ -2313,7 +2311,7 @@ lkpi_sta_a_to_a(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg) vif = LVIF_TO_VIF(lvif); IEEE80211_UNLOCK(vap->iv_ic); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); LKPI_80211_LVIF_LOCK(lvif); /* XXX-BZ KASSERT later? */ @@ -2357,7 +2355,7 @@ lkpi_sta_a_to_a(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg) error = 0; out: - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); IEEE80211_LOCK(vap->iv_ic); return (error); @@ -2383,7 +2381,7 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i vif = LVIF_TO_VIF(lvif); IEEE80211_UNLOCK(vap->iv_ic); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); LKPI_80211_LVIF_LOCK(lvif); #ifdef LINUXKPI_DEBUG_80211 @@ -2419,7 +2417,7 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i lsta->in_mgd = true; } - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); IEEE80211_LOCK(vap->iv_ic); /* Call iv_newstate first so we get potential DEAUTH packet out. */ @@ -2435,7 +2433,7 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i /* Ensure the packets get out. */ lkpi_80211_flush_tx(lhw, lsta); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); lkpi_lsta_dump(lsta, ni, __func__, __LINE__); @@ -2516,13 +2514,11 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i /* conf_tx */ - wiphy_lock(hw->wiphy); lkpi_remove_chanctx(hw, vif); - wiphy_unlock(hw->wiphy); error = EALREADY; out: - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); IEEE80211_LOCK(vap->iv_ic); outni: return (error); @@ -2581,7 +2577,7 @@ lkpi_sta_assoc_to_run(struct ieee80211vap *vap, enum ieee80211_state nstate, int vif = LVIF_TO_VIF(lvif); IEEE80211_UNLOCK(vap->iv_ic); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); LKPI_80211_LVIF_LOCK(lvif); /* XXX-BZ KASSERT later? */ @@ -2719,7 +2715,7 @@ lkpi_sta_assoc_to_run(struct ieee80211vap *vap, enum ieee80211_state nstate, int lkpi_80211_mo_bss_info_changed(hw, vif, &vif->bss_conf, bss_changed); out: - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); IEEE80211_LOCK(vap->iv_ic); return (error); } @@ -2778,7 +2774,7 @@ lkpi_sta_run_to_assoc(struct ieee80211vap *vap, enum ieee80211_state nstate, int lkpi_lsta_dump(lsta, ni, __func__, __LINE__); IEEE80211_UNLOCK(vap->iv_ic); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); /* flush, drop. */ lkpi_80211_mo_flush(hw, vif, nitems(sta->txq), true); @@ -2793,7 +2789,7 @@ lkpi_sta_run_to_assoc(struct ieee80211vap *vap, enum ieee80211_state nstate, int lsta->in_mgd = true; } - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); IEEE80211_LOCK(vap->iv_ic); /* Call iv_newstate first so we get potential DISASSOC packet out. */ @@ -2809,7 +2805,7 @@ lkpi_sta_run_to_assoc(struct ieee80211vap *vap, enum ieee80211_state nstate, int /* Ensure the packets get out. */ lkpi_80211_flush_tx(lhw, lsta); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); lkpi_lsta_dump(lsta, ni, __func__, __LINE__); @@ -2853,9 +2849,7 @@ lkpi_sta_run_to_assoc(struct ieee80211vap *vap, enum ieee80211_state nstate, int #ifdef LKPI_80211_HW_CRYPTO if (lkpi_hwcrypto) { - wiphy_lock(hw->wiphy); error = lkpi_sta_del_keys(hw, vif, lsta); - wiphy_unlock(hw->wiphy); if (error != 0) { ic_printf(vap->iv_ic, "%s:%d: lkpi_sta_del_keys " "failed: %d\n", __func__, __LINE__, error); @@ -2889,7 +2883,7 @@ lkpi_sta_run_to_assoc(struct ieee80211vap *vap, enum ieee80211_state nstate, int error = EALREADY; out: - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); IEEE80211_LOCK(vap->iv_ic); outni: return (error); @@ -2915,7 +2909,7 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int vif = LVIF_TO_VIF(lvif); IEEE80211_UNLOCK(vap->iv_ic); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); LKPI_80211_LVIF_LOCK(lvif); #ifdef LINUXKPI_DEBUG_80211 @@ -2951,7 +2945,7 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int lsta->in_mgd = true; } - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); IEEE80211_LOCK(vap->iv_ic); /* Call iv_newstate first so we get potential DISASSOC packet out. */ @@ -2967,7 +2961,7 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int /* Ensure the packets get out. */ lkpi_80211_flush_tx(lhw, lsta); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); lkpi_lsta_dump(lsta, ni, __func__, __LINE__); @@ -3009,9 +3003,7 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int #ifdef LKPI_80211_HW_CRYPTO if (lkpi_hwcrypto) { - wiphy_lock(hw->wiphy); error = lkpi_sta_del_keys(hw, vif, lsta); - wiphy_unlock(hw->wiphy); if (error != 0) { ic_printf(vap->iv_ic, "%s:%d: lkpi_sta_del_keys " "failed: %d\n", __func__, __LINE__, error); @@ -3118,13 +3110,11 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int /* conf_tx */ - wiphy_lock(hw->wiphy); lkpi_remove_chanctx(hw, vif); - wiphy_unlock(hw->wiphy); error = EALREADY; out: - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); IEEE80211_LOCK(vap->iv_ic); outni: return (error); @@ -3328,6 +3318,9 @@ lkpi_wme_update(struct lkpi_hw *lhw, struct ieee80211vap *vap, bool planned) int error; uint16_t ac; + hw = LHW_TO_HW(lhw); + lockdep_assert_wiphy(hw->wiphy); + IMPROVE(); KASSERT(WME_NUM_AC == IEEE80211_NUM_ACS, ("%s: WME_NUM_AC %d != " "IEEE80211_NUM_ACS %d\n", __func__, WME_NUM_AC, IEEE80211_NUM_ACS)); @@ -3354,12 +3347,10 @@ lkpi_wme_update(struct lkpi_hw *lhw, struct ieee80211vap *vap, bool planned) wmeparr[ac] = chp.cap_wmeParams[ac]; IEEE80211_UNLOCK(ic); - hw = LHW_TO_HW(lhw); lvif = VAP_TO_LVIF(vap); vif = LVIF_TO_VIF(lvif); /* Configure tx queues (conf_tx) & send BSS_CHANGED_QOS. */ - LKPI_80211_LHW_LOCK(lhw); for (ac = 0; ac < IEEE80211_NUM_ACS; ac++) { struct wmeParams *wmep; @@ -3374,7 +3365,6 @@ lkpi_wme_update(struct lkpi_hw *lhw, struct ieee80211vap *vap, bool planned) ic_printf(ic, "%s: conf_tx ac %u failed %d\n", __func__, ac, error); } - LKPI_80211_LHW_UNLOCK(lhw); changed = BSS_CHANGED_QOS; if (!planned) lkpi_80211_mo_bss_info_changed(hw, vif, &vif->bss_conf, changed); @@ -3389,6 +3379,7 @@ lkpi_ic_wme_update(struct ieee80211com *ic) #ifdef LKPI_80211_WME struct ieee80211vap *vap; struct lkpi_hw *lhw; + struct ieee80211_hw *hw; IMPROVE("Use the per-VAP callback in net80211."); vap = TAILQ_FIRST(&ic->ic_vaps); @@ -3396,8 +3387,11 @@ lkpi_ic_wme_update(struct ieee80211com *ic) return (0); lhw = ic->ic_softc; + hw = LHW_TO_HW(lhw); + wiphy_lock(hw->wiphy); lkpi_wme_update(lhw, vap, false); + wiphy_unlock(hw->wiphy); #endif return (0); /* unused */ } @@ -3562,7 +3556,7 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], /* Configure tx queues (conf_tx), default WME & send BSS_CHANGED_QOS. */ IMPROVE("Hardcoded values; to fix see 802.11-2016, 9.4.2.29 EDCA Parameter Set element"); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); for (ac = 0; ac < IEEE80211_NUM_ACS; ac++) { bzero(&txqp, sizeof(txqp)); @@ -3575,7 +3569,7 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], ic_printf(ic, "%s: conf_tx ac %u failed %d\n", __func__, ac, error); } - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); changed = BSS_CHANGED_QOS; lkpi_80211_mo_bss_info_changed(hw, vif, &vif->bss_conf, changed); @@ -3737,8 +3731,8 @@ static void lkpi_ic_parent(struct ieee80211com *ic) { struct lkpi_hw *lhw; -#ifdef HW_START_STOP struct ieee80211_hw *hw; +#ifdef HW_START_STOP int error; #endif bool start_all; @@ -3746,13 +3740,11 @@ lkpi_ic_parent(struct ieee80211com *ic) IMPROVE(); lhw = ic->ic_softc; -#ifdef HW_START_STOP hw = LHW_TO_HW(lhw); -#endif start_all = false; /* IEEE80211_UNLOCK(ic); */ - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); if (ic->ic_nrunning > 0) { #ifdef HW_START_STOP error = lkpi_80211_mo_start(hw); @@ -3764,7 +3756,7 @@ lkpi_ic_parent(struct ieee80211com *ic) lkpi_80211_mo_stop(hw, false); /* XXX SUSPEND */ #endif } - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); /* IEEE80211_LOCK(ic); */ if (start_all) @@ -4729,9 +4721,9 @@ lkpi_80211_txq_tx_one(struct lkpi_sta *lsta, struct mbuf *m) ltxq->txq.tid, ac, skb->priority, skb->qmap); #endif LKPI_80211_LTXQ_UNLOCK(ltxq); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); lkpi_80211_mo_wake_tx_queue(hw, <xq->txq); - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); return; ops_tx: @@ -4744,9 +4736,9 @@ ops_tx: #endif memset(&control, 0, sizeof(control)); control.sta = sta; - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); lkpi_80211_mo_tx(hw, &control, skb); - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); } static void @@ -4907,9 +4899,9 @@ lkpi_ic_addba_request(struct ieee80211_node *ni, struct ieee80211_tx_ampdu *tap, params.amsdu = false; IEEE80211_UNLOCK(ic); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); error = lkpi_80211_mo_ampdu_action(hw, vif, ¶ms); - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); IEEE80211_LOCK(ic); if (error != 0) { ic_printf(ic, "%s: mo_ampdu_action returned %d. ni %p tap %p\n", @@ -4985,9 +4977,9 @@ lkpi_ic_addba_response(struct ieee80211_node *ni, struct ieee80211_tx_ampdu *tap } IEEE80211_UNLOCK(ic); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); error = lkpi_80211_mo_ampdu_action(hw, vif, ¶ms); - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); IEEE80211_LOCK(ic); if (error != 0) { ic_printf(ic, "%s: mo_ampdu_action returned %d. ni %p tap %p\n", @@ -5044,9 +5036,9 @@ lkpi_ic_addba_stop(struct ieee80211_node *ni, struct ieee80211_tx_ampdu *tap) params.amsdu = false; IEEE80211_UNLOCK(ic); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); error = lkpi_80211_mo_ampdu_action(hw, vif, ¶ms); - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); IEEE80211_LOCK(ic); if (error != 0) { ic_printf(ic, "%s: mo_ampdu_action returned %d. ni %p tap %p\n", @@ -5142,9 +5134,9 @@ lkpi_ic_ampdu_rx_start(struct ieee80211_node *ni, struct ieee80211_rx_ampdu *rap else params.amsdu = false; - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); error = lkpi_80211_mo_ampdu_action(hw, vif, ¶ms); - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); if (error != 0) { ic_printf(ic, "%s: mo_ampdu_action returned %d. ni %p rap %p\n", __func__, error, ni, rap); @@ -5216,9 +5208,9 @@ lkpi_ic_ampdu_rx_stop(struct ieee80211_node *ni, struct ieee80211_rx_ampdu *rap) ic_locked = IEEE80211_IS_LOCKED(ic); if (ic_locked) IEEE80211_UNLOCK(ic); - LKPI_80211_LHW_LOCK(lhw); + wiphy_lock(hw->wiphy); error = lkpi_80211_mo_ampdu_action(hw, vif, ¶ms); - LKPI_80211_LHW_UNLOCK(lhw); + wiphy_unlock(hw->wiphy); if (ic_locked) IEEE80211_LOCK(ic); if (error != 0) @@ -5456,7 +5448,6 @@ linuxkpi_ieee80211_alloc_hw(size_t priv_len, const struct ieee80211_ops *ops) lhw = wiphy_priv(wiphy); lhw->ops = ops; - LKPI_80211_LHW_LOCK_INIT(lhw); LKPI_80211_LHW_SCAN_LOCK_INIT(lhw); LKPI_80211_LHW_TXQ_LOCK_INIT(lhw); sx_init_flags(&lhw->lvif_sx, "lhw-lvif", SX_RECURSE | SX_DUPOK); @@ -5532,7 +5523,6 @@ linuxkpi_ieee80211_iffree(struct ieee80211_hw *hw) /* Cleanup more of lhw here or in wiphy_free()? */ LKPI_80211_LHW_TXQ_LOCK_DESTROY(lhw); LKPI_80211_LHW_SCAN_LOCK_DESTROY(lhw); - LKPI_80211_LHW_LOCK_DESTROY(lhw); sx_destroy(&lhw->lvif_sx); IMPROVE(); } diff --git a/sys/compat/linuxkpi/common/src/linux_80211.h b/sys/compat/linuxkpi/common/src/linux_80211.h index c01a6cb0cd7c..7028e05e9b20 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.h +++ b/sys/compat/linuxkpi/common/src/linux_80211.h @@ -216,8 +216,6 @@ struct lkpi_hw { /* name it mac80211_sc? */ TAILQ_HEAD(, lkpi_vif) lvif_head; struct sx lvif_sx; - struct sx sx; /* XXX-BZ Can this be wiphy->mtx in the future? */ - struct mtx txq_mtx; uint32_t txq_generation[IEEE80211_NUM_ACS]; TAILQ_HEAD(, lkpi_txq) scheduled_txqs[IEEE80211_NUM_ACS]; @@ -318,19 +316,6 @@ struct lkpi_wiphy { #define LKPI_80211_LWIPHY_WORK_UNLOCK_ASSERT(_lwiphy) \ mtx_assert(&(_lwiphy)->wwk_mtx, MA_NOTOWNED) -#define LKPI_80211_LHW_LOCK_INIT(_lhw) \ - sx_init_flags(&(_lhw)->sx, "lhw", SX_RECURSE); -#define LKPI_80211_LHW_LOCK_DESTROY(_lhw) \ - sx_destroy(&(_lhw)->sx); -#define LKPI_80211_LHW_LOCK(_lhw) \ - sx_xlock(&(_lhw)->sx) -#define LKPI_80211_LHW_UNLOCK(_lhw) \ - sx_xunlock(&(_lhw)->sx) -#define LKPI_80211_LHW_LOCK_ASSERT(_lhw) \ - sx_assert(&(_lhw)->sx, SA_LOCKED) -#define LKPI_80211_LHW_UNLOCK_ASSERT(_lhw) \ - sx_assert(&(_lhw)->sx, SA_UNLOCKED) - #define LKPI_80211_LHW_SCAN_LOCK_INIT(_lhw) \ mtx_init(&(_lhw)->scan_mtx, "lhw-scan", NULL, MTX_DEF | MTX_RECURSE); #define LKPI_80211_LHW_SCAN_LOCK_DESTROY(_lhw) \ From nobody Fri Apr 11 21:26:22 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ8rH2j0xz5shtv; Fri, 11 Apr 2025 21:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ8rH1L2Pz3tQy; Fri, 11 Apr 2025 21:26:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406783; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YTO9YJh1CuWOjMzr9x4ykWX9XiegV4+emcw4j19ltKc=; b=fP50qAQZyKYnCJKUVHx0gp8G/jHJQr1/oz4m1BFVvq3hLS/9YRFN48822mz0cdDSCQZLu1 9kdrMdbZQJy3jm5t4VhBykrn3iI4CNXbFUHZRi6P/9989FSpL1+vmvF8TzHRLv/ACneKM7 Y4XmKtPUJDNPu6dFBEReKCVvbxqzKPuNuIqlAbzfJ/6fCfCdduQx2Coa7Vi4RIzkQHUyLq FMMP91LFhFeep1gjMr3J4iXiFhnvFcRj1LlL3VthMn44IZGyiMyJbxzPuvtIUZyX/apeBI WAmmSJ+zFAvUy4CWBtgLzkM2R/aD/bDAKWqG7wTBD7ZBD2Zovh2qjOTI3pqrTA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744406783; a=rsa-sha256; cv=none; b=iEH3erg96SqQ0tpF4egMWsQcYhoNH9f0LX1zTQ2fVdLaSprnqbDFvhd1ClXQuOXn+GVyiB HTR9zPbKZtSO3szbGG7HhTAS2O8ruDXsyYYyP4yOM0mcS+tkpngIfCGHrsX8pq7+4Q06fP eszZfPniygN6IYNCXuHV1E0rbKvFHjwTgZDrDK8OBQo0U9rDdS0RTxHawmiF5wwFJNyfXe yfYM8pyAQQyhmkRk59u+HoUf+p24tk0igdtM4oB/rYcCNMEjRJu5LNCtp535PFH6haYe9O xpWqN+uqg5W9WCMoD3JUVbmMAqxk2hGUJgubrzlTS6fGz2HZFDuw7pgdQkbPiw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406783; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YTO9YJh1CuWOjMzr9x4ykWX9XiegV4+emcw4j19ltKc=; b=CAuUFSEyMTz58/n5SJoJQlMeJHgj2jZpI2Emd6uTDjiRe0mC93en08N8mlpIQG9tVNm8mW BjQVisaCBcxAx/PojHN1OVmMFc4cEOfhF/43azPOOOQONK22Svt6zg2usfb2BZI7LnOIvq Bms2luZd5gS/eZt1nXkTpJIeFA7ZGlfLS9hM65aHjUTHA4DXjdqBr1lAXa8XVcBLC999Jg r5ZzHUIOrAHaV/68Wx+IG1XJAgXReHC4wDBCpEh7M1o1a7nI5/iZkE6f4eePPPhnW0dm9R nCh0a3xtspdMkTbMNjDCnYar+ReulhG79V5AgKKeq5dHhuzYRj1OX9/5hTCzMg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ8rH0ShszqFN; Fri, 11 Apr 2025 21:26:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BLQNVv078308; Fri, 11 Apr 2025 21:26:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BLQMhI078305; Fri, 11 Apr 2025 21:26:22 GMT (envelope-from git) Date: Fri, 11 Apr 2025 21:26:22 GMT Message-Id: <202504112126.53BLQMhI078305@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 560708cbb046 - main - LinuxKPI: 802.11: adjust vif->bss_conf.chanctx_conf to rcu accessors List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 560708cbb0468bf1fd1834f4894a1326e88ff10e Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=560708cbb0468bf1fd1834f4894a1326e88ff10e commit 560708cbb0468bf1fd1834f4894a1326e88ff10e Author: Bjoern A. Zeeb AuthorDate: 2025-04-08 19:25:03 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-11 21:26:05 +0000 LinuxKPI: 802.11: adjust vif->bss_conf.chanctx_conf to rcu accessors Adjust the init and lkpi_sta_scan_to_auth() chanctx_conf accesses to use rcu functions as needed. linuxkpi_ieee80211_iterate_chan_contexts() which is ieee80211_iter_chan_contexts_atomic() needs further work to get rid of the vif locks by keeping all chanctx_conf on a list in lhw. This will be done in a follow-up commit. Sponsored by: The FreeBSD Foundation PR: 280546 MFC after: 3 days Tested by: Oleksandr Kryvulia (shuriku shurik.kiev.ua) Tested by: Oleg Nauman (oleg.nauman gmail.com) [rtw88] Differential Revision: https://reviews.freebsd.org/D49734 --- sys/compat/linuxkpi/common/src/linux_80211.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index b5da3282d249..891714fb75db 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -1845,8 +1845,9 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int wiphy_lock(hw->wiphy); /* Add chanctx (or if exists, change it). */ - if (vif->bss_conf.chanctx_conf != NULL) { - chanctx_conf = vif->bss_conf.chanctx_conf; + chanctx_conf = rcu_dereference_protected(vif->bss_conf.chanctx_conf, + lockdep_is_held(&hw->wiphy->mtx)); + if (chanctx_conf != NULL) { lchanctx = CHANCTX_CONF_TO_LCHANCTX(chanctx_conf); IMPROVE("diff changes for changed, working on live copy, rcu"); } else { @@ -1921,7 +1922,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int bss_changed |= lkpi_update_dtim_tsf(vif, ni, vap, __func__, __LINE__); error = 0; - if (vif->bss_conf.chanctx_conf != NULL) { + if (vif->bss_conf.chanctx_conf == chanctx_conf) { changed = IEEE80211_CHANCTX_CHANGE_MIN_WIDTH; changed |= IEEE80211_CHANCTX_CHANGE_RADAR; changed |= IEEE80211_CHANCTX_CHANGE_RX_CHAINS; @@ -1942,7 +1943,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int goto out; } - vif->bss_conf.chanctx_conf = chanctx_conf; + rcu_assign_pointer(vif->bss_conf.chanctx_conf, chanctx_conf); /* Assign vif chanctx. */ if (error == 0) @@ -1954,7 +1955,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int ic_printf(vap->iv_ic, "%s:%d: mo_assign_vif_chanctx " "failed: %d\n", __func__, __LINE__, error); lkpi_80211_mo_remove_chanctx(hw, chanctx_conf); - vif->bss_conf.chanctx_conf = NULL; + rcu_assign_pointer(vif->bss_conf.chanctx_conf, NULL); lchanctx = CHANCTX_CONF_TO_LCHANCTX(chanctx_conf); free(lchanctx, M_LKPI80211); goto out; @@ -3473,7 +3474,7 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], /* XXX-BZ hardcoded for now! */ #if 1 - vif->bss_conf.chanctx_conf = NULL; + RCU_INIT_POINTER(vif->bss_conf.chanctx_conf, NULL); vif->bss_conf.vif = vif; /* vap->iv_myaddr is not set until net80211::vap_setup or vap_attach. */ IEEE80211_ADDR_COPY(vif->bss_conf.addr, mac); @@ -5969,7 +5970,7 @@ linuxkpi_ieee80211_iterate_chan_contexts(struct ieee80211_hw *hw, TAILQ_FOREACH(lvif, &lhw->lvif_head, lvif_entry) { vif = LVIF_TO_VIF(lvif); - if (vif->bss_conf.chanctx_conf == NULL) + if (vif->bss_conf.chanctx_conf == NULL) /* XXX-BZ; FIXME see IMPROVE above. */ continue; lchanctx = CHANCTX_CONF_TO_LCHANCTX(vif->bss_conf.chanctx_conf); From nobody Fri Apr 11 21:26:24 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ8rJ6yhjz5shpd; Fri, 11 Apr 2025 21:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ8rJ2CFqz3tnm; Fri, 11 Apr 2025 21:26:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406784; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ej/SnT3SXLJoqaAm9dG4FUHiXBELRXPldoW9bHUc+ls=; b=ccHhLVpqH9VGIbn+bVB/Xwcby/DWbL2o53ItLDHLW4gHdo1ryA7Y7sJcIC8f2nEnW54nti M+pRTwZRK9tHZvx4fmzrt5av4gIdct9LFUL9/WWmhmSL3JhxzgoWtY5eOEqVhCOcpcW1H3 cSQhI+FDhLZmLv8IcyUKzATUJX0Wgevkxn94MA60W8ukZORyAQlNWGVy/2GSn6PA1zPKu2 wOsC6zP+SwsykMvdRGMamN+6jklmEBrzgT7eEPS71TAdACQtfaIijafwvLfKGa3F1xV4XE cE35ZuA6wTj5CEte3fI6cMKgDhr6MVHqz+i2yCr3TKaNVz+R0Fn+v4luCzV7bw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744406784; a=rsa-sha256; cv=none; b=GnzmWnO1mRwxTA8gx6jlQH4U2BERvaycE05bslJRmiqLB/r8jW7KiGu1P3JHVIwJc66Atn Dm6QzsreswTAwu1jy879LCAiomms2qMau+hC1wVnNMxNk65VKMgXeGGcZOhK+P1w63mz6U X4SQ1f7jRm4nHeFwwiYj+FuxO5JJIdwFErtUJstlLe5UwDF+3n3EaNTsf/mZ/CSxoD7qPj /lSdzlSSEHi+Rv1K3+UHMuSXQ386AG+sOoQiPWC/jgt4SnWB8rj7pEBke86X7zpxGS8WYf +ze5A6BozMX1tRY3lDUOZqvpSyzWrWci+zNZmVmliaEj+gwofX6UJOVVTJxwRQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406784; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ej/SnT3SXLJoqaAm9dG4FUHiXBELRXPldoW9bHUc+ls=; b=GzS1elGGNQOAZrjZt5UvKXhxE6FRiDJOHJt13gbLF0IfjoG9tTfeyWO4w7gKyunta+bMQp 28O7vFItSNYdI+gMyFQ7JGM+/mN5Czc6usxjSukbtXRWLFjYU1OwGl1YslMP0pPn8KGDHA zRiezKlEEFxgO6he3HBsHSryMsKi/T81XFzHi2Spr5aSiLkV+Wak9/khaQjlK9aApcz/tY XwsOGQRVJ/XTOB7Wbp+XXlFzj23NpnnYBYTcLeLiSnbnwxDreK642Gy/UKO1JTVofULj1n dO1F0wCBHgZfvu367GOlLTQzEOsY/Faowddn0Z99b21Er/Cl9/C5OfMsAcauIg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ8rJ1khvzqHd; Fri, 11 Apr 2025 21:26:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BLQOkO078344; Fri, 11 Apr 2025 21:26:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BLQOX1078341; Fri, 11 Apr 2025 21:26:24 GMT (envelope-from git) Date: Fri, 11 Apr 2025 21:26:24 GMT Message-Id: <202504112126.53BLQOX1078341@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: a8a47a41775b - main - LinuxKPI: 802.11: add a lchanctx list to lhw List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a8a47a41775b0320606f90b3ac2048bc23494615 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=a8a47a41775b0320606f90b3ac2048bc23494615 commit a8a47a41775b0320606f90b3ac2048bc23494615 Author: Bjoern A. Zeeb AuthorDate: 2025-04-08 23:05:43 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-11 21:26:05 +0000 LinuxKPI: 802.11: add a lchanctx list to lhw While we are currently only supporting a single VAP (vif) it is less of a trouble but in order to get locking and rcu accesses [from drivers] more right add a list for all chanctx_conf we have for one hw. Use that list in the iterator function to avoid having to lock the vif but not protecting the chanctx list (against a parallel removal) due to different locking. Sponsored by: The FreeBSD Foundation PR: 280546 MFC after: 3 days Tested by: Oleksandr Kryvulia (shuriku shurik.kiev.ua) Tested by: Oleg Nauman (oleg.nauman gmail.com) [rtw88] Differential Revision: https://reviews.freebsd.org/D49734 --- sys/compat/linuxkpi/common/src/linux_80211.c | 39 ++++++++++++++++++---------- sys/compat/linuxkpi/common/src/linux_80211.h | 5 ++++ 2 files changed, 30 insertions(+), 14 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 891714fb75db..65f203c0eec9 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -1757,6 +1757,7 @@ lkpi_remove_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif *vif) /* Cleanup. */ rcu_assign_pointer(vif->bss_conf.chanctx_conf, NULL); lchanctx = CHANCTX_CONF_TO_LCHANCTX(chanctx_conf); + list_del(&lchanctx->entry); free(lchanctx, M_LKPI80211); } @@ -1943,6 +1944,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int goto out; } + list_add_rcu(&lchanctx->entry, &lhw->lchanctx_list); rcu_assign_pointer(vif->bss_conf.chanctx_conf, chanctx_conf); /* Assign vif chanctx. */ @@ -1957,6 +1959,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int lkpi_80211_mo_remove_chanctx(hw, chanctx_conf); rcu_assign_pointer(vif->bss_conf.chanctx_conf, NULL); lchanctx = CHANCTX_CONF_TO_LCHANCTX(chanctx_conf); + list_del(&lchanctx->entry); free(lchanctx, M_LKPI80211); goto out; } @@ -5458,6 +5461,9 @@ linuxkpi_ieee80211_alloc_hw(size_t priv_len, const struct ieee80211_ops *ops) TAILQ_INIT(&lhw->scheduled_txqs[ac]); } + /* Chanctx_conf */ + INIT_LIST_HEAD(&lhw->lchanctx_list); + /* Deferred RX path. */ LKPI_80211_LHW_RXQ_LOCK_INIT(lhw); TASK_INIT(&lhw->rxq_task, 0, lkpi_80211_lhw_rxq_task, lhw); @@ -5521,6 +5527,22 @@ linuxkpi_ieee80211_iffree(struct ieee80211_hw *hw) __func__, lhw, mbufq_len(&lhw->rxq))); LKPI_80211_LHW_RXQ_LOCK_DESTROY(lhw); + /* Chanctx_conf. */ + if (!list_empty_careful(&lhw->lchanctx_list)) { + struct lkpi_chanctx *lchanctx, *next; + struct ieee80211_chanctx_conf *chanctx_conf; + + list_for_each_entry_safe(lchanctx, next, &lhw->lchanctx_list, entry) { + if (lchanctx->added_to_drv) { + /* In reality we should panic? */ + chanctx_conf = &lchanctx->chanctx_conf; + lkpi_80211_mo_remove_chanctx(hw, chanctx_conf); + } + list_del(&lchanctx->entry); + free(lchanctx, M_LKPI80211); + } + } + /* Cleanup more of lhw here or in wiphy_free()? */ LKPI_80211_LHW_TXQ_LOCK_DESTROY(lhw); LKPI_80211_LHW_SCAN_LOCK_DESTROY(lhw); @@ -5955,8 +5977,6 @@ linuxkpi_ieee80211_iterate_chan_contexts(struct ieee80211_hw *hw, void *arg) { struct lkpi_hw *lhw; - struct lkpi_vif *lvif; - struct ieee80211_vif *vif; struct lkpi_chanctx *lchanctx; KASSERT(hw != NULL && iterfunc != NULL, @@ -5964,22 +5984,13 @@ linuxkpi_ieee80211_iterate_chan_contexts(struct ieee80211_hw *hw, lhw = HW_TO_LHW(hw); - IMPROVE("lchanctx should be its own list somewhere"); - - LKPI_80211_LHW_LVIF_LOCK(lhw); - TAILQ_FOREACH(lvif, &lhw->lvif_head, lvif_entry) { - - vif = LVIF_TO_VIF(lvif); - if (vif->bss_conf.chanctx_conf == NULL) /* XXX-BZ; FIXME see IMPROVE above. */ - continue; - - lchanctx = CHANCTX_CONF_TO_LCHANCTX(vif->bss_conf.chanctx_conf); + rcu_read_lock(); + list_for_each_entry_rcu(lchanctx, &lhw->lchanctx_list, entry) { if (!lchanctx->added_to_drv) continue; - iterfunc(hw, &lchanctx->chanctx_conf, arg); } - LKPI_80211_LHW_LVIF_UNLOCK(lhw); + rcu_read_unlock(); } void diff --git a/sys/compat/linuxkpi/common/src/linux_80211.h b/sys/compat/linuxkpi/common/src/linux_80211.h index 7028e05e9b20..da377280b1c0 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.h +++ b/sys/compat/linuxkpi/common/src/linux_80211.h @@ -216,6 +216,8 @@ struct lkpi_hw { /* name it mac80211_sc? */ TAILQ_HEAD(, lkpi_vif) lvif_head; struct sx lvif_sx; + struct list_head lchanctx_list; + struct mtx txq_mtx; uint32_t txq_generation[IEEE80211_NUM_ACS]; TAILQ_HEAD(, lkpi_txq) scheduled_txqs[IEEE80211_NUM_ACS]; @@ -282,7 +284,10 @@ struct lkpi_hw { /* name it mac80211_sc? */ #define HW_TO_LHW(_hw) container_of(_hw, struct lkpi_hw, hw) struct lkpi_chanctx { + struct list_head entry; + bool added_to_drv; /* Managed by MO */ + struct ieee80211_chanctx_conf chanctx_conf __aligned(CACHE_LINE_SIZE); }; #define LCHANCTX_TO_CHANCTX_CONF(_lchanctx) \ From nobody Fri Apr 11 21:26:25 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ8rK5plsz5shpf; Fri, 11 Apr 2025 21:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ8rK3Bqmz3tp4; Fri, 11 Apr 2025 21:26:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406785; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UxTt1TpS3cHmClGHLTQfpaNpcNgLC33tzAuffixeuL0=; b=CnVA/PuTfwEs1Y1EYAM1XKyuuzBVAxflH8p9Wzjo9thwB9I4aKiBu9KJQE2qfn/GfwSVD8 KSIbN7vlANsOiwxKztS6W+yKgwXmp2wxwnWS5ZW7V+WLHYa7lmRLMXbgGEI+lSW+MMrUT9 un5i8ffUP96fIKAUboS8ltCzI0bgUb9oxcWlxBzoSIF6OYlm8niu74LLi1WA0RmEtlX06k gZGOpiUs75o4Jom9BJEgHdP3rfMWLiVNMAKM0YhWk2j0wEQN9Y2uakBN6FNKeNgHo/juOV o4Z5aQUuM9AI/7rVOst3MB9MLLobfJo8EaZ1N2RgvXuvtueiOxH7jUWwUHKKGg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744406785; a=rsa-sha256; cv=none; b=Mrs9f1r4EhDpS5E7S6tZzb6kLivjcblmn/TKBpVnPzeKN3Vuwxw5bYnlehif3iMbh/4qbB Rzb01uUyEjqjvsU9pDX8/Rl1fBW87b7zUYyhCgao+0c2gGhWcwsvilgvRg8roUEy5j6D0N tEe5X9Bb0DSDEg5Uotd4E6lEhjuz6dJ57pN3AYk5WRRmw2MpVN9FzzBS1UOdOiYeU+Plz6 sbQVyWujaQ45U567rVOQJO6Tnkfq98Xkf5fdaJ1sdqFzV00bljZb1VvAL6vUBHTFpi3l3x IddyoOthKjUBlM/uNLtujOHyad75dt5Dptc7OHJu9Fg2XWWQJ7a191TQMUhE/Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406785; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UxTt1TpS3cHmClGHLTQfpaNpcNgLC33tzAuffixeuL0=; b=h1Lmj2GxV/bq8QIBO1ZkG987b3DO853v8QYl3yu1OIrKWoeorO/Z5mc9hWoyFOpSuCr/yR jf+y/+5VwLMXjQ9e+ai/mik0049DvGBn5adee6S2kDWvXRh/CoRo4VshC++yL2/ea1SvrS rZwvugz8hpXLM5YoDsqGPSPhQzRfziEWFU8JnoeT3mZgPQQGQeWYWBc2EJ48n9Wq2irXzX higoBU7UTxZw5IO+g31fawcAgVTD3WJuajxewUAzqHhYHPEPuMEzDsokMlxy9cCE9GiOr2 Y5PFX13ulQX4/IHjkz+mLAUIWYU1fl4LYJRMUq0bEpJ49XenxaXcMsp9nn7mDg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ8rK2h7SzqFP; Fri, 11 Apr 2025 21:26:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BLQPPN078380; Fri, 11 Apr 2025 21:26:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BLQPVp078377; Fri, 11 Apr 2025 21:26:25 GMT (envelope-from git) Date: Fri, 11 Apr 2025 21:26:25 GMT Message-Id: <202504112126.53BLQPVp078377@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: ae8c3b6509c6 - main - LinuxKPI: 802.11: optimize mo_bss_info_changed List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ae8c3b6509c66d03cb68dc6f8bbad43acbc8c977 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=ae8c3b6509c66d03cb68dc6f8bbad43acbc8c977 commit ae8c3b6509c66d03cb68dc6f8bbad43acbc8c977 Author: Bjoern A. Zeeb AuthorDate: 2025-04-10 15:10:38 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-11 21:26:05 +0000 LinuxKPI: 802.11: optimize mo_bss_info_changed In case we are not announcing any changes there is no need to do a downcall into the driver. Catch that with an early return. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/compat/linuxkpi/common/src/linux_80211_macops.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/compat/linuxkpi/common/src/linux_80211_macops.c b/sys/compat/linuxkpi/common/src/linux_80211_macops.c index 336b8a1e9ce2..d7bd26a3d0e3 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211_macops.c +++ b/sys/compat/linuxkpi/common/src/linux_80211_macops.c @@ -553,6 +553,9 @@ lkpi_80211_mo_bss_info_changed(struct ieee80211_hw *hw, struct ieee80211_vif *vi lhw->ops->bss_info_changed == NULL) return; + if (changed == 0) + return; + LKPI_80211_TRACE_MO("hw %p vif %p conf %p changed %#jx", hw, vif, conf, (uintmax_t)changed); if (lhw->ops->link_info_changed != NULL) lhw->ops->link_info_changed(hw, vif, conf, changed); From nobody Fri Apr 11 21:26:26 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ8rM2QqPz5shnX; Fri, 11 Apr 2025 21:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ8rL3yL7z3tgB; Fri, 11 Apr 2025 21:26:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406786; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dZA+nn5VZOnZjSDw4V4SqalPtLi+N3vsUQ2o4PvOdII=; b=hrD0jiE04EzV9fGPKQEwZRar5HQ1XpucPNKQ+CLx6V+fHbuhmRw7Yx784aeEGdrNgvB4k9 rDdf8HUPy4FRpDsnUp5pKV09oPy14NnFK/g+6b6K6m5SDxjjOHRX/JcwfoKb18hkkbV4zQ FQxPg5521DempkSvOBfwYVphB0ksw/4/y79KSuPBaQaDE4201TzqM1scK+FfotXfhlhP5P sGlSDR8SfOH0+bsvqz/giM2m19lXR0lq8SnLofk9lg+bTdrTDTS37vPkzpNu4+noWjT0qH hOYF7AQEty5Ek8u52BK7DQ6o1cB5E7mVfZZl9YlOwTyun6+lpxpq1N8jCSZEOw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744406786; a=rsa-sha256; cv=none; b=asZsST1hSi+0gdIE2+GOTJp/lq/uf1mpFwcNVfCERllDAUWXmxX5npDAsm0HPVaFI+l7Qr 7iuSEyTnBZuYoKh6RkujgS2qFczvnAKBlYvZLwKfCaCZdRjfou4+2+vxBKnHQP+ebsHwHJ Lliy40jk7G4ApkAYEuahjxld0UXJqCjCah7BpE6CsmYU3ffE/YoZx36MPl/qX3V9PeT+dA ks7gX5szKojLefAAye6HcWi0VKdx3+EOwa4l8gUkQTLoaOoDVSBnrREziluc8GyfltGK02 MysCz/TdvAS4R0hJhUZZYK9YApl8JxwEu9MaATDzjyhE9m/NGZWCanHz5zyrYA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406786; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dZA+nn5VZOnZjSDw4V4SqalPtLi+N3vsUQ2o4PvOdII=; b=TWlch3wS2yQs7s7jZyWdaNz5oIceh9Mb0+QjKlPP6ogheP5R/gj+vnKx7Nas/CKb7RRqDl 15uKcaBss9BufFIR8kk02nosS1IZltov8Adlu83QS7TKR9TaZBdnPZCLe6rZmnvi94hAxl rYrt1sol0d36TBtpuv1jVzJyb1/hgyWI4SxOlDRYhbXiJpEFS6xGgX9CwKkQrqxME7wnKZ Cshjp59HxwQovoHYEv8rEa8XGI4QlEd0iTBXX6c2hHHPzET4lto/sJIbbDbU5R9Xl3ewON Cv7y+NKrxxE8VVHhI1CKqF9cceH4QZML/JujQVr2+35nwgie9n3YhUc1E/pkDQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ8rL3XH6zpgx; Fri, 11 Apr 2025 21:26:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BLQQGT078416; Fri, 11 Apr 2025 21:26:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BLQQHH078413; Fri, 11 Apr 2025 21:26:26 GMT (envelope-from git) Date: Fri, 11 Apr 2025 21:26:26 GMT Message-Id: <202504112126.53BLQQHH078413@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 5393cd34854e - main - LinuxKPI: 802.11: try to limit VHT (11ac) to 5Ghz List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5393cd34854e1fe23ab214e9f741879fa6bf1193 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=5393cd34854e1fe23ab214e9f741879fa6bf1193 commit 5393cd34854e1fe23ab214e9f741879fa6bf1193 Author: Bjoern A. Zeeb AuthorDate: 2025-04-09 19:22:25 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-11 21:26:05 +0000 LinuxKPI: 802.11: try to limit VHT (11ac) to 5Ghz We have multiple reports for iwlwifi firmware crashes where net80211 logged: ieee80211_sta_join: BSS xx:xx:xx:xx:xx:xx: 2GHz channel, VHT info; ignoring Make sure when we sync from net80211 or set state that we only do VHT if we are on the 5Ghz band. This change is likely helpful whether it fixes the originally reported problems or not. Sponsored by: The FreeBSD Foundation Reported by: Jonathan Vasquez (jon xyinn.org) Reported by: Michael Butler (imb protected-networks.net) Reported by: others (fw crash w/o net80211 logging) MFC after: 3 days Tested by: Eirik Øverby (ltning-freebsd-wireless anduin.net) Tested by: lwhsu Tested by: Michael Butler (imb protected-networks.net) Differential Revision: https://reviews.freebsd.org/D49761 --- sys/compat/linuxkpi/common/src/linux_80211.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 65f203c0eec9..12897a38459e 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -442,7 +442,8 @@ lkpi_sta_sync_vht_from_ni(struct ieee80211_sta *sta, struct ieee80211_node *ni) uint16_t rx_mcs_map; uint8_t mcs; - if ((ni->ni_flags & IEEE80211_NODE_VHT) == 0) { + if ((ni->ni_flags & IEEE80211_NODE_VHT) == 0 || + !IEEE80211_IS_CHAN_VHT_5GHZ(ni->ni_chan)) { sta->deflink.vht_cap.vht_supported = false; return; } @@ -1878,7 +1879,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int } #endif #ifdef LKPI_80211_VHT - if (IEEE80211_IS_CHAN_VHT(ni->ni_chan)) { + if (IEEE80211_IS_CHAN_VHT_5GHZ(ni->ni_chan)) { #ifdef __notyet__ if (IEEE80211_IS_CHAN_VHT80P80(ni->ni_chan)) chanctx_conf->def.width = NL80211_CHAN_WIDTH_80P80; @@ -3860,7 +3861,8 @@ lkpi_scan_ies_add(uint8_t *p, struct ieee80211_scan_ies *scan_ies, } #endif #if defined(LKPI_80211_VHT) - if ((vap->iv_vht_flags & IEEE80211_FVHT_VHT) != 0) { + if (band == NL80211_BAND_5GHZ && + (vap->iv_vht_flags & IEEE80211_FVHT_VHT) != 0) { struct ieee80211_channel *c; c = ieee80211_ht_adjust_channel(ic, ic->ic_curchan, @@ -5362,7 +5364,7 @@ lkpi_ic_getradiocaps(struct ieee80211com *ic, int maxchan, NL80211_BAND_5GHZ); #ifdef LKPI_80211_VHT - if (hw->wiphy->bands[NL80211_BAND_5GHZ]->vht_cap.vht_supported){ + if (hw->wiphy->bands[NL80211_BAND_5GHZ]->vht_cap.vht_supported) { ic->ic_flags_ext |= IEEE80211_FEXT_VHT; ic->ic_vht_cap.vht_cap_info = From nobody Fri Apr 11 21:26:27 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ8rN1P7Rz5shpg; Fri, 11 Apr 2025 21:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ8rM55v0z3tlq; Fri, 11 Apr 2025 21:26:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406787; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NlkS5r70uPn7yOFkhuku89+cO4POUMHyKwXkO3vfoV4=; b=W7tYXRRXhbrrfrYOr0MLXtaLtf2H8QWbyxK5dASvU5jK6X1dYT5x2cvEUlOkgG5J+GjMDZ HkRnoIxJ7Oy5dlfv3PabOydD9oUUjA+Jy7WJqO+4Y9PiQCwpfY0grfbUIAjYJAgYcXdg++ 4oCaOdYYZtsE1vVof3YOHoQEheg3e9+7tacJXNoYnQ0KfaQ+/LKdeDFpoWXRxF222KQwOJ vtXN5HUbg08d5KChAVmdNkcGFTGCRY4VWNTapH5darzH4vpUI48Gurp37M5E4t8UwsT3Q6 jdxpvwL7CIah4djki0KujBQ3Y1rbCfBpkPE7tIPVNr5RuseLI4lpfHZ0/3jjnA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744406787; a=rsa-sha256; cv=none; b=GTsGdNDCtZPJwW6Tuv65qH5tL8x2G+Izrx0y08dA0FuDxEG0sgbjNZKqKONhFlgLatFWac kQECb6K3hjhrOgs6s9fGOU36pEsWrTdQmrsGD0tYjKtu1/XMtqJpQeoSfHK/5WE7UythUD 22zUxNpBZrorE3FBPAc3aOXv1NIseFx14HBNK7Ou3qVpPAWGDPV6I86/NOgsSYsTr9vzVP hOWYGZK5dCPHMfos6TRSQ0zwdEyYuPEbh4aeFkmMIqQ/jC6gS7EYto3tPTZK6W2FGERRL7 sP1TxMNmgrQDjcHYSO69QtFE4LlExtFmNBzdFYiDoN4aqf5HbFy1rb3QP6ji/w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406787; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NlkS5r70uPn7yOFkhuku89+cO4POUMHyKwXkO3vfoV4=; b=WP6lhiboJ/WAj+fZtLEEMQM/OkUIUjfnpk18HZ3EKqXmQFJJJgcQfQBgrmGh/w26ioyDaz debMnZWm9QZngZWupfKtv87EFfYf4OYtctmOIDTei53XpYiyGVbNN2HYsMpwG1hpUkhAF0 1i9rVcJEv45aSRER0lcJBEzNUgwSavKr35AiRvgi9pwDvQ+zcYJH9zQrhrhOTQAWrpq6Qk pkOJpSM93By/hlYLmQQZg0J3KyMLveC4c/E0flpTgPpJRO6KsNaaD//e49pJuAFwSJVSNq WtgH8WQGqQyit4G2IeeUZmNot08hVHHqJJcf+v3kVtjFgBJMMrkWOu6OQT/EtQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ8rM4VzPzpRY; Fri, 11 Apr 2025 21:26:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BLQRkS078455; Fri, 11 Apr 2025 21:26:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BLQRpn078452; Fri, 11 Apr 2025 21:26:27 GMT (envelope-from git) Date: Fri, 11 Apr 2025 21:26:27 GMT Message-Id: <202504112126.53BLQRpn078452@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 62d51a43825b - main - LinuxKPI: 802.11: deal with sta bw > channel width List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 62d51a43825bb632f542f4e89d57f3dbdb08095f Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=62d51a43825bb632f542f4e89d57f3dbdb08095f commit 62d51a43825bb632f542f4e89d57f3dbdb08095f Author: Bjoern A. Zeeb AuthorDate: 2025-04-10 15:13:38 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-11 21:26:06 +0000 LinuxKPI: 802.11: deal with sta bw > channel width Especially on 2.4Ghz everything may indicate that we can use HT40 but we are stuck on a 20Mhz channel. Adjust the logic in lkpi_sta_sync_ht_from_ni() to also check the channel width before setting the sta bandwidth to 40. Further check that the sta bw is not larger than the channel width after the 'sync from ni' for HT and VHT and if it is, then update the chanctx accordingly. Firmware crashes we have seen with iwlwifi0: 0x00010000 | umac data1 iwlwifi0: 0x00000000 | umac data2 iwlwifi0: 0xDEADBEEF | umac data3 iwlwifi0: 0xXXXX050F | last host cmd likely indicate this problem. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reported by: Jonathan Vasquez (jon xyinn.org) Reported by: Michael Butler (imb protected-networks.net) Reported by: bapt Reported by: William D Pool (rotaechojunk gmail.com) Reported by: Eirik Øverby (ltning-freebsd-wireless anduin.net) Reported by: likely others before Tested by: Eirik Øverby (ltning-freebsd-wireless anduin.net) Tested by: lwhsu Tested by: Michael Butler (imb protected-networks.net) Differential Revision: https://reviews.freebsd.org/D49761 --- sys/compat/linuxkpi/common/src/linux_80211.c | 104 ++++++++++++++++++++++++--- 1 file changed, 95 insertions(+), 9 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 12897a38459e..8368ed0d563d 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -365,9 +365,81 @@ lkpi_80211_dump_stas(SYSCTL_HANDLER_ARGS) return (0); } +static enum ieee80211_sta_rx_bw +lkpi_cw_to_rx_bw(enum nl80211_chan_width cw) +{ + switch (cw) { + case NL80211_CHAN_WIDTH_320: + return (IEEE80211_STA_RX_BW_320); + case NL80211_CHAN_WIDTH_160: + case NL80211_CHAN_WIDTH_80P80: + return (IEEE80211_STA_RX_BW_160); + case NL80211_CHAN_WIDTH_80: + return (IEEE80211_STA_RX_BW_80); + case NL80211_CHAN_WIDTH_40: + return (IEEE80211_STA_RX_BW_40); + case NL80211_CHAN_WIDTH_20: + case NL80211_CHAN_WIDTH_20_NOHT: + return (IEEE80211_STA_RX_BW_20); + case NL80211_CHAN_WIDTH_5: + case NL80211_CHAN_WIDTH_10: + /* Unsupported input. */ + return (IEEE80211_STA_RX_BW_20); + } +} + +static enum nl80211_chan_width +lkpi_rx_bw_to_cw(enum ieee80211_sta_rx_bw rx_bw) +{ + switch (rx_bw) { + case IEEE80211_STA_RX_BW_20: + return (NL80211_CHAN_WIDTH_20); /* _NOHT */ + case IEEE80211_STA_RX_BW_40: + return (NL80211_CHAN_WIDTH_40); + case IEEE80211_STA_RX_BW_80: + return (NL80211_CHAN_WIDTH_80); + case IEEE80211_STA_RX_BW_160: + return (NL80211_CHAN_WIDTH_160); /* 80P80 */ + case IEEE80211_STA_RX_BW_320: + return (NL80211_CHAN_WIDTH_320); + } +} + +static void +lkpi_sync_chanctx_cw_from_rx_bw(struct ieee80211_hw *hw, + struct ieee80211_vif *vif, struct ieee80211_sta *sta) +{ + struct ieee80211_chanctx_conf *chanctx_conf; + enum ieee80211_sta_rx_bw old_bw; + uint32_t changed; + + chanctx_conf = rcu_dereference_protected(vif->bss_conf.chanctx_conf, + lockdep_is_held(&hw->wiphy->mtx)); + if (chanctx_conf == NULL) + return; + + old_bw = lkpi_cw_to_rx_bw(chanctx_conf->def.width); + if (old_bw == sta->deflink.bandwidth) + return; + + chanctx_conf->def.width = lkpi_rx_bw_to_cw(sta->deflink.bandwidth); + if (chanctx_conf->def.width == NL80211_CHAN_WIDTH_20 && + !sta->deflink.ht_cap.ht_supported) + chanctx_conf->def.width = NL80211_CHAN_WIDTH_20_NOHT; + + chanctx_conf->min_def = chanctx_conf->def; + + vif->bss_conf.chanreq.oper.width = chanctx_conf->def.width; + + changed = IEEE80211_CHANCTX_CHANGE_MIN_WIDTH; + changed |= IEEE80211_CHANCTX_CHANGE_WIDTH; + lkpi_80211_mo_change_chanctx(hw, chanctx_conf, changed); +} + #if defined(LKPI_80211_HT) static void -lkpi_sta_sync_ht_from_ni(struct ieee80211_sta *sta, struct ieee80211_node *ni) +lkpi_sta_sync_ht_from_ni(struct ieee80211_vif *vif, struct ieee80211_sta *sta, + struct ieee80211_node *ni) { struct ieee80211vap *vap; uint8_t *ie; @@ -399,7 +471,8 @@ lkpi_sta_sync_ht_from_ni(struct ieee80211_sta *sta, struct ieee80211_node *ni) sta->deflink.ht_cap.cap = htcap->cap_info; sta->deflink.ht_cap.mcs = htcap->mcs; - if ((sta->deflink.ht_cap.cap & IEEE80211_HT_CAP_SUP_WIDTH_20_40) != 0) + if ((sta->deflink.ht_cap.cap & IEEE80211_HT_CAP_SUP_WIDTH_20_40) != 0 && + IEEE80211_IS_CHAN_HT40(ni->ni_chan)) sta->deflink.bandwidth = IEEE80211_STA_RX_BW_40; else sta->deflink.bandwidth = IEEE80211_STA_RX_BW_20; @@ -435,7 +508,8 @@ lkpi_sta_sync_ht_from_ni(struct ieee80211_sta *sta, struct ieee80211_node *ni) #if defined(LKPI_80211_VHT) static void -lkpi_sta_sync_vht_from_ni(struct ieee80211_sta *sta, struct ieee80211_node *ni) +lkpi_sta_sync_vht_from_ni(struct ieee80211_vif *vif, struct ieee80211_sta *sta, + struct ieee80211_node *ni) { uint32_t width; int rx_nss; @@ -508,15 +582,25 @@ skip_bw: #endif static void -lkpi_sta_sync_from_ni(struct ieee80211_sta *sta, struct ieee80211_node *ni) +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(sta, ni); + lkpi_sta_sync_ht_from_ni(vif, sta, ni); #endif #if defined(LKPI_80211_VHT) - lkpi_sta_sync_vht_from_ni(sta, ni); + lkpi_sta_sync_vht_from_ni(vif, sta, ni); #endif + /* + * We are also called from node allocation which net80211 + * can do even on `ifconfig down`; in that case the chanctx + * may still be valid and we get a discrepancy between + * sta and chanctx. Thus do not try to update the chanctx + * when called from lkpi_lsta_alloc(). + */ + if (updchnctx) + lkpi_sync_chanctx_cw_from_rx_bw(hw, vif, sta); } static uint8_t @@ -686,7 +770,9 @@ lkpi_lsta_alloc(struct ieee80211vap *vap, const uint8_t mac[IEEE80211_ADDR_LEN], sta->deflink.bandwidth = IEEE80211_STA_RX_BW_20; sta->deflink.rx_nss = 1; - lkpi_sta_sync_from_ni(sta, ni); + wiphy_lock(hw->wiphy); + lkpi_sta_sync_from_ni(hw, vif, sta, ni, false); + wiphy_unlock(hw->wiphy); IMPROVE("he, eht, bw_320, ... smps_mode, .."); @@ -1870,6 +1956,7 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int IMPROVE("Check vht_cap from band not just chan?"); KASSERT(ni->ni_chan != NULL && ni->ni_chan != IEEE80211_CHAN_ANYC, ("%s:%d: ni %p ni_chan %p\n", __func__, __LINE__, ni, ni->ni_chan)); + #ifdef LKPI_80211_HT if (IEEE80211_IS_CHAN_HT(ni->ni_chan)) { if (IEEE80211_IS_CHAN_HT40(ni->ni_chan)) @@ -2658,7 +2745,6 @@ lkpi_sta_assoc_to_run(struct ieee80211vap *vap, enum ieee80211_state nstate, int } bss_changed |= lkpi_update_dtim_tsf(vif, ni, vap, __func__, __LINE__); - lkpi_80211_mo_bss_info_changed(hw, vif, &vif->bss_conf, bss_changed); /* - change_chanctx (if needed) @@ -2693,7 +2779,7 @@ lkpi_sta_assoc_to_run(struct ieee80211vap *vap, enum ieee80211_state nstate, int sta->deflink.rx_nss = MAX(1, sta->deflink.rx_nss); IMPROVE("Is this the right spot, has net80211 done all updates already?"); - lkpi_sta_sync_from_ni(sta, ni); + lkpi_sta_sync_from_ni(hw, vif, sta, ni, true); /* Update sta_state (ASSOC to AUTHORIZED). */ KASSERT(lsta != NULL, ("%s: ni %p lsta is NULL\n", __func__, ni)); From nobody Fri Apr 11 21:26:28 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ8rP4K9gz5shlD; Fri, 11 Apr 2025 21:26: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ8rN6CXSz3v2S; Fri, 11 Apr 2025 21:26:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406788; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Fmp3066jCtZGLxgm6G41svJahKa7f8cwo796/Zt54B4=; b=sQg7+K+35Smw5/QqmhDmADQ87lY4dpxwV9KsEB3HL/4THFZ2jm9esKBf4QFoMlLy3CpnCc lmE0s+Mp9vwSO2UVTFRLJHqcDrcUeq3Yr4VqtpipAcK2z5tP9GHTEbVccpGaGdPycvrAgR K4uP/+e1SfqDEPLgy5bN/sdK57Y4CiLwdbT38NRSu5IyG7hKEaZZPQpjSIVMGD+XvoHRBw Bt70XDb46Qe/fEjzAPD4P3S9HlF1nxamubxlirhzaCjUSPiS3KjcrXnS0DBtA7wVJCnhkQ dJ5kK0Jh7hUMIeTOLJMy/uI2uZwwfmXTZR2ikEHNZmXEljz75Yahj9MQxh8ugw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744406788; a=rsa-sha256; cv=none; b=lTrQrA+hrbBqahdR/L1S1UKn3vdzbWLyI4fOrqvXjIo5jKpDmWi0XXfdMktb72nSHdPhq/ MtXZk6FQ50tLnZz/xIPr6S73QUA+e/8lOY3HSgGThPuiemX3O2pIQkjMxEODQm/0ZQ5AC5 Tth38T4V8HCAanZIul/M1bfH3mDgoqgMS4Ni6/LyMP4kJX1Qytbr5doYouYA0d4KAHtFH5 QyLhe7j4pUbSZp57tzDeMSgbL+Z69khjZ99CCAAryYWMZUUBPiMwGDLc/fwru+VzmCgjLR Xuqm3AyFw4rkNGXG8J/mmoJpcmBQSVZl6cMEqEW4fmiz15xkoMydTX+gkaev/w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744406788; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Fmp3066jCtZGLxgm6G41svJahKa7f8cwo796/Zt54B4=; b=O1/c/WDbUD63TKxrMpfoJNkbu7fMOnvBLpzYjvy9wCdVt/IrfvfegZmgbxUkZ6re4fQY3f Ax3kKAsyA/kPYuD2m8I9IZWwsn1VrIYQOEzYM1dinA1QEIFZYfFi2idTpMb8M6rAolM1/8 ItoGbwlY8XdV26KutuTWD60J9nWKWnWKyFlVEJdRVZkrfFc8WCeD/zjY/fEubW46IouKFY vyooqUSn2Hxo8zbnRsKfm/G39JhqQWH52S0VGe+wpprI6fS/H28bYtmpjySYSnxcIIRKWP tnocguCFPJzNlB2TgH6md+nZF3aNSfRDvSAERsLm/eRrcAg5XQiS7LEafDg4+g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ8rN5W47zqC1; Fri, 11 Apr 2025 21:26:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BLQSCU078497; Fri, 11 Apr 2025 21:26:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BLQSbO078494; Fri, 11 Apr 2025 21:26:28 GMT (envelope-from git) Date: Fri, 11 Apr 2025 21:26:28 GMT Message-Id: <202504112126.53BLQSbO078494@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 97ddb6371b72 - main - iwlwifi: fix iwl_uefi_get_uats_table() if not compiled with ACPI List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 97ddb6371b7206c622de40745927e98f0dfd2e85 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=97ddb6371b7206c622de40745927e98f0dfd2e85 commit 97ddb6371b7206c622de40745927e98f0dfd2e85 Author: Bjoern A. Zeeb AuthorDate: 2025-04-11 15:22:55 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-11 21:26:06 +0000 iwlwifi: fix iwl_uefi_get_uats_table() if not compiled with ACPI Apply a temporary fix to FreeBSD only to allow AX101 to proceed further. While this fix results in a debug error message if firmware debugging is on we currently take this for the version we have. A proper fix will eventually show up in future versions of iwlwifi. Sponsored by: The FreeBSD Foundation Reported by: bapt Tested by: bapt MFC after: 3 days --- sys/contrib/dev/iwlwifi/fw/uefi.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/contrib/dev/iwlwifi/fw/uefi.h b/sys/contrib/dev/iwlwifi/fw/uefi.h index 1f8884ca8997..50327bb8c2d6 100644 --- a/sys/contrib/dev/iwlwifi/fw/uefi.h +++ b/sys/contrib/dev/iwlwifi/fw/uefi.h @@ -318,7 +318,11 @@ static inline int iwl_uefi_get_uats_table(struct iwl_trans *trans, struct iwl_fw_runtime *fwrt) { +#if defined(__linux__) return 0; +#elif defined(__FreeBSD__) + return -ENOENT; +#endif } #endif /* CONFIG_EFI */ #endif /* __iwl_fw_uefi__ */ From nobody Fri Apr 11 22:04:57 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ9hp0ZcCz5sl99; Fri, 11 Apr 2025 22:04: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ9hn5rkKz44XY; Fri, 11 Apr 2025 22:04:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744409097; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7RvvGvGZ7RW8/L3yOSNqV6mUMxAOWrmhIqEjL7UCscY=; b=lolIAxTb86UlYxpqEMjsOW69SeSRKdx3Bau/Kx38T5I2B04LIOl8ffzWbDgH3dhi0z/Q0m RG9DApOkmHPJIBUZ8HDwdwZKbdCR95QAXxsMqZgQUupdaUIGtV0PctfUawmb9zBlXYntH7 5xY/et1wOvw7yYULKfP51BzBRAzRvUNQ2U1+C2LEn9pbA7VkVykw2Ti4bnPxmSuvvlvBAE ridUm1tlYCTWn7OdideGMM6h+OccjYDCiMkZ4uvjE4rfP8HGv3j7jopPiUpAB+ObPXH0JF i7aty1wRH29vquRTNFGlTem0YApsFk/Ayuf9Nv6dO5BCl1QXl+3LENugirRVDQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744409097; a=rsa-sha256; cv=none; b=gnqfeFlkAV15XmLFFewrr1uj0BvSpRda3uEIpbP6bi184feGuiYUZUY1XANWGVG0amW5gp IVKwaWun1vrCtfXbhXjT/0ETN8oTef+6y3wpb/qL3bXjH8CATZWoATF6UiRBTDF1S5oli8 I56aBQiAY58sOi4JaPD4xovjumC75t9tTS384NGeKXRHFBHdClfYa2IkHr6kJO4gxLZK8t twc7vTlnrM9/Eh5KPUT5zZlQvSOkD6irshnouLgXZHKDWeaNl95dW/db/4yicSJG9Fr4j9 8hPk3SjOfmUaxp0Ao7askY0GUqn50ONkiKk0ZHvv+3Fy0w3ddxoL9np/4SE4xA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744409097; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7RvvGvGZ7RW8/L3yOSNqV6mUMxAOWrmhIqEjL7UCscY=; b=BhF2o6wxIvoM2sJoSY15BD91edI1vC6mfRhyhwAOM1ImOo2zwUn6T2YN7ZMOsqWboVUll0 Df19hQmVb0kFN+ySvqOhzwnFv4AgcgvI+eLqE5uRlsVIientRmqLJaikvrHAvJN5dzsn5e mahrrj8Nha2hXtJo5QEYIWPBTf+9iFqOiKZzQq3GerRC0gJnke5lfrWp05FOb4rUcSWsQf W+myCDvE2JfQKHlH4ehxT+mLfO7Eb82CtxdjawhNk4sbsHhQqodaQ29bMUyON2yp9zxgmS yn4WrbgTfjQqVGM4+jXUbfrqKPJZdtbGkWgIQsMY/Gn82PhZquh70C2eDy3pJw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ9hn56fVzqWH; Fri, 11 Apr 2025 22:04:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BM4vpS053822; Fri, 11 Apr 2025 22:04:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BM4vE1053819; Fri, 11 Apr 2025 22:04:57 GMT (envelope-from git) Date: Fri, 11 Apr 2025 22:04:57 GMT Message-Id: <202504112204.53BM4vE1053819@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 0d1d8c8cfa57 - main - loader/efi: Fix trivial whitespace error List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0d1d8c8cfa57069edc7e049772a9732929177fb0 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=0d1d8c8cfa57069edc7e049772a9732929177fb0 commit 0d1d8c8cfa57069edc7e049772a9732929177fb0 Author: Warner Losh AuthorDate: 2025-04-11 21:45:27 +0000 Commit: Warner Losh CommitDate: 2025-04-11 21:47:06 +0000 loader/efi: Fix trivial whitespace error Sponsored by: Netflix --- stand/efi/loader/arch/amd64/multiboot2.h | 4 ++-- stand/efi/loader/bootinfo.c | 2 +- stand/efi/loader/main.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/stand/efi/loader/arch/amd64/multiboot2.h b/stand/efi/loader/arch/amd64/multiboot2.h index 5693923c014f..a039aa0439aa 100644 --- a/stand/efi/loader/arch/amd64/multiboot2.h +++ b/stand/efi/loader/arch/amd64/multiboot2.h @@ -244,7 +244,7 @@ struct multiboot_tag_mmap multiboot_uint32_t size; multiboot_uint32_t entry_size; multiboot_uint32_t entry_version; - struct multiboot_mmap_entry entries[0]; + struct multiboot_mmap_entry entries[0]; }; struct multiboot_vbe_info_block @@ -388,7 +388,7 @@ struct multiboot_tag_efi_mmap multiboot_uint32_t descr_size; multiboot_uint32_t descr_vers; multiboot_uint8_t efi_mmap[0]; -}; +}; struct multiboot_tag_efi32_ih { diff --git a/stand/efi/loader/bootinfo.c b/stand/efi/loader/bootinfo.c index ca86a319613f..75d755686658 100644 --- a/stand/efi/loader/bootinfo.c +++ b/stand/efi/loader/bootinfo.c @@ -414,7 +414,7 @@ bi_load(char *args, vm_offset_t *modulep, vm_offset_t *kernendp, bool exit_bs) /* Handle device tree blob */ dtbp = addr; dtb_size = fdt_copy(addr); - + /* Pad to a page boundary */ if (dtb_size) addr += roundup(dtb_size, PAGE_SIZE); diff --git a/stand/efi/loader/main.c b/stand/efi/loader/main.c index f592f8ecf495..2384fd08b964 100644 --- a/stand/efi/loader/main.c +++ b/stand/efi/loader/main.c @@ -4,7 +4,7 @@ * All rights reserved. * * Copyright (c) 2016-2019 Netflix, Inc. written by M. Warner Losh - * + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: From nobody Fri Apr 11 22:04:58 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ9hq07wZz5slVT; Fri, 11 Apr 2025 22:04: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ9hp5mtwz44Rw; Fri, 11 Apr 2025 22:04:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744409098; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8SGVHOjdZRekpvmHVreHoKRohjz3Gn9EXYsW0oiKQHs=; b=wrcT5j/gSSpPSZdzBxy4R3Do6CEdrzrekVbhyf6u3+4ZgO0hgbuZbEGAsa1XEOtQeUe14l q4a2L6/s+70KXPm4rs8OYgfEtsipi8z/WHswzrPExJpq9Vy26LebYr0DLtbqV7ulqJyp8k SMx+0aPhKHGr4r0p5j7wv9paJo4A2W3L79rQzU/Oyt72psYdgKZWEXSA6eh6gqMiSF37si 2o/FcW4sl08KmxxberLGmKKUds2BLwr6t+wzOYxKARVQRK68ulN29vUiziPkq1LGPg0dh+ f11TLnq8CAlRkh3QcVgfUphC93JsYci5+vBSiqyGtSZnXo1lMZcpqcwns7RWEA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744409098; a=rsa-sha256; cv=none; b=NYjGArI8XdXRulEVEzo8CoNmJZ8gxUK+l6bl/iC4ps9tV8C1axAijNIHYyB+Z0QHX2Im/m tnz32nLezQVDFvkhH9buMwu0/BuWnoeDKmNHbkf1NCLunlqs0ov3u2eHVokryDl7m53/1a elY9b6SPFlj6PVkLK+BNGJOHUaJDvLQ7CHdlnWT4LBR/X9i5rrD6xf7EhFggmcDdEL5kQK uB+fR8WThDSlev5joU1Vh+L3YNcTJVTiVn3Y28FINMhcLnypmHDzqu3cjFXbXChx/PWt46 DDtJjud0Az14QKX8OCb5e+zJjCZN9i9APJArJISfcGiljy2w0yD69P/oieZNUg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744409098; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8SGVHOjdZRekpvmHVreHoKRohjz3Gn9EXYsW0oiKQHs=; b=f/ZEQhMIK4EtLhHeUxaLRbyByW3uYpxFAtEER86/muYlVg0/wdGnD608yzU3xhZWkIZ+66 j0G+SBYQLBgiXHVZpB1POfaJnysnNt7hN0mlxuqlj4g+r16aoFEc2vggFmYH0SsO3Aa1xW WEXreozh0Rg8hP/08ZVA2OzLeTkl2wmLZ5MA9PH6v/cm4An5sPEhaZbCpB3jsRMY3r4IGc xD/dRxtK7i3TXjaZ0TFsVZIn44k+VvkynMve8lMW/lLWlaxztbLbeUM2YmgfMBEjQr5/m2 usKp5AV1qR5BiZN+iNc39rGjhKDERwth/m5ePA6FlpVM5WTBwKV3s1a4o+FoAQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ9hp5Mf8zrDj; Fri, 11 Apr 2025 22:04:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BM4wL6053856; Fri, 11 Apr 2025 22:04:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BM4wwx053853; Fri, 11 Apr 2025 22:04:58 GMT (envelope-from git) Date: Fri, 11 Apr 2025 22:04:58 GMT Message-Id: <202504112204.53BM4wwx053853@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 7e791e2de6d5 - main - loader/libefi: Fix trivial trailing whitespace List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7e791e2de6d5182b102ec46f48f750ac54ebac80 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=7e791e2de6d5182b102ec46f48f750ac54ebac80 commit 7e791e2de6d5182b102ec46f48f750ac54ebac80 Author: Warner Losh AuthorDate: 2025-04-11 21:48:52 +0000 Commit: Warner Losh CommitDate: 2025-04-11 21:48:52 +0000 loader/libefi: Fix trivial trailing whitespace Sponsored by: Netflix --- stand/efi/libefi/devpath.c | 2 +- stand/efi/libefi/efi_console.c | 12 ++++++------ stand/efi/libefi/eficom.c | 6 +++--- stand/efi/libefi/efinet.c | 6 +++--- stand/efi/libefi/time.c | 2 +- 5 files changed, 14 insertions(+), 14 deletions(-) diff --git a/stand/efi/libefi/devpath.c b/stand/efi/libefi/devpath.c index 85a5459c7d6b..db152f8eb9ad 100644 --- a/stand/efi/libefi/devpath.c +++ b/stand/efi/libefi/devpath.c @@ -491,7 +491,7 @@ efi_devpath_to_name(EFI_DEVICE_PATH *devpath) free(ptr); ptr = out; } - + return (ptr); } diff --git a/stand/efi/libefi/efi_console.c b/stand/efi/libefi/efi_console.c index 5813e2d20aef..cbb4dd01d1fb 100644 --- a/stand/efi/libefi/efi_console.c +++ b/stand/efi/libefi/efi_console.c @@ -552,7 +552,7 @@ curs_move(int *_x, int *_y, int x, int y) if (_y != NULL) *_y = conout->Mode->CursorRow; } - + /* Clear internal state of the terminal emulation code. */ void end_term(void) @@ -687,7 +687,7 @@ HO(void) args[0] = args[1] = 1; CM(); } - + /* Clear line from current position to end of line */ static void CL(int direction) @@ -710,7 +710,7 @@ CL(int direction) default: /* NOTREACHED */ __unreachable(); } - + if (cury == y - 1) len--; @@ -725,7 +725,7 @@ CL(int direction) if (direction != 0) curs_move(NULL, NULL, 0, cury); - + conout->OutputString(conout, line); /* restore cursor position */ curs_move(NULL, NULL, curx, cury); @@ -742,7 +742,7 @@ get_arg(int c) args[argc] += c - '0'; } #endif - + /* Emulate basic capabilities of cons25 terminal */ static void efi_term_emu(int c) @@ -755,7 +755,7 @@ efi_term_emu(int c) }; int t, i; EFI_STATUS status; - + switch (esc) { case 0: switch (c) { diff --git a/stand/efi/libefi/eficom.c b/stand/efi/libefi/eficom.c index f1ce14eb50f8..2aa592da47f4 100644 --- a/stand/efi/libefi/eficom.c +++ b/stand/efi/libefi/eficom.c @@ -336,7 +336,7 @@ comc_probe(struct console *sc) return; } - if (env != NULL) + if (env != NULL) unsetenv("efi_com_port"); snprintf(value, sizeof (value), "%u", comc_port->ioaddr); env_setenv("efi_com_port", EV_VOLATILE, value, @@ -497,7 +497,7 @@ comc_port_set(struct env_var *ev, int flags, const void *value) if (value == NULL || comc_port == NULL) return (CMD_ERROR); - if (comc_parse_intval(value, &port) != CMD_OK) + if (comc_parse_intval(value, &port) != CMD_OK) return (CMD_ERROR); handle = efi_serial_get_handle(port, NULL); @@ -532,7 +532,7 @@ comc_speed_set(struct env_var *ev, int flags, const void *value) if (value == NULL || comc_port == NULL) return (CMD_ERROR); - if (comc_parse_intval(value, &speed) != CMD_OK) + if (comc_parse_intval(value, &speed) != CMD_OK) return (CMD_ERROR); comc_port->newbaudrate = speed; diff --git a/stand/efi/libefi/efinet.c b/stand/efi/libefi/efinet.c index 97890c9d9b43..186d816cd323 100644 --- a/stand/efi/libefi/efinet.c +++ b/stand/efi/libefi/efinet.c @@ -48,7 +48,7 @@ static int efinet_match(struct netif *, void *); static int efinet_probe(struct netif *, void *); static ssize_t efinet_put(struct iodesc *, void *, size_t); -struct netif_driver efinetif = { +struct netif_driver efinetif = { .netif_bname = "efinet", .netif_match = efinet_match, .netif_probe = efinet_probe, @@ -150,7 +150,7 @@ efinet_put(struct iodesc *desc, void *pkt, size_t len) buf = NULL; /* XXX Is this needed? */ status = net->GetStatus(net, NULL, &buf); /* - * XXX EFI1.1 and the E1000 card returns a different + * XXX EFI1.1 and the E1000 card returns a different * address than we gave. Sigh. */ } while (status == EFI_SUCCESS && buf == NULL); @@ -328,7 +328,7 @@ efinet_init(struct iodesc *desc, void *machdep_hint) static void efinet_end(struct netif *nif) { - EFI_SIMPLE_NETWORK *net = nif->nif_devdata; + EFI_SIMPLE_NETWORK *net = nif->nif_devdata; if (net == NULL) return; diff --git a/stand/efi/libefi/time.c b/stand/efi/libefi/time.c index 99d86e30ee96..aa8508879b20 100644 --- a/stand/efi/libefi/time.c +++ b/stand/efi/libefi/time.c @@ -175,7 +175,7 @@ from_efi_time(EFI_TIME *ETime) /* * UTime should now be set to 00:00:00 on Jan 1 of the file's year. * - * Months + * Months */ UTime += (CumulativeDays[isleap(ETime->Year)][ETime->Month] * SECSPERDAY); From nobody Fri Apr 11 22:04:59 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZ9hr1Mw3z5slRr; Fri, 11 Apr 2025 22:05: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZ9hq6pq1z4478; Fri, 11 Apr 2025 22:04:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744409099; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qwcToGDWyDJYI0M5lfA4dANsbs+IYbhNDFHzfUo1O20=; b=DCKXLCnWFEhPX6mVzoWGFr1iVoLks9dr4AJP/oPPRGEf+z3vBwKCjngJDvadYT5biwiFUS agYFjlK5jUtT+iT3Mq6s23BFFEVdaUZodTLk/pXEWM/l5ARNVT0+ZEBRyF7Nlaih7hoghs O4a8OjtLerWcsz1umWKWWBHCGsoFloLwM9MmtdB9KKu1sGzhCVORL8eqdkhzqNTJaKmvS9 dQs5EWnHWVfy1VwtqkcYsjAfp1POU7PsfAjCk0wrg9TofmasDjijdqQnzy6/dKOeqiOI04 qB4vaviKW/Nv+ORzHAsR+wnV99GJQhQViq8w6Z/KVgDg6JLR2iuqY5E9WmMZ7A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744409099; a=rsa-sha256; cv=none; b=AmWKOI1rGpdWk4P8Yxqb4l7CDHbWYZGAQNvvs5CHQX1pBF78E7jr1/osiWi57bSfw32bI3 +3NoFlzhKJF0cIS7ktbmj7dLV3yWjrXhKnoNBS+wTDH+DiTITi5O9j7cJ5Y4HLwxtyfMS5 o8OlM+7DONtJOLs0qdaDfeXY+BerbRg0ynRlZ8dxKaasasz3Vm5T+5g06kZOsG2EMki8cj HmEYSZpdt0doA4lfelkxC2OC0wqRTjAH6+2B9ShAwkuy6EVgWNftCcSQvnxnvDBFxrJcXf dyXzP7gE+RdhzYMe13KuX4FUZmAgR4lKTlG6yqVsp79SSjzUAlSwaijkGKMs8g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744409099; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qwcToGDWyDJYI0M5lfA4dANsbs+IYbhNDFHzfUo1O20=; b=BLMpgLKjhJ7h2mUHShnAQI4eAGdbZB9Ch2h8lGsP7laAON3HuNhvrs4ujJRkoNEpz8C/JV S8qh1nzcOlBnH5hMF4W4TzZvR3Kl37HXcWy8c2ollHyL3tfD5tzkb95XNDuY1tpZUMrsSX gysjxqfn6ZlkHUIpnoxnutL1dKDJN1DBT5S756585hZvtbcX4lXhhApm47YwVgI6cpZikb HRKE9L7P7uZN2DMDye9VlN9P6/d8uyPkSP8RZd22JFhekb5dn/CgoXsuIAjw5wtUnk8jrf zJoOG0EXPJ+uOskSesmkAuzfH512Cdi2ICbH31CA/etEwUs/2jjzXoT1wbsCmw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZ9hq68GFzqs1; Fri, 11 Apr 2025 22:04:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53BM4xiH053891; Fri, 11 Apr 2025 22:04:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53BM4xoY053888; Fri, 11 Apr 2025 22:04:59 GMT (envelope-from git) Date: Fri, 11 Apr 2025 22:04:59 GMT Message-Id: <202504112204.53BM4xoY053888@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 3a05fa14f9a6 - main - loader/efi: strip trailing whitespace List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3a05fa14f9a62370edc26260a4cfabb8a0c5041c Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=3a05fa14f9a62370edc26260a4cfabb8a0c5041c commit 3a05fa14f9a62370edc26260a4cfabb8a0c5041c Author: Warner Losh AuthorDate: 2025-04-11 22:02:58 +0000 Commit: Warner Losh CommitDate: 2025-04-11 22:02:58 +0000 loader/efi: strip trailing whitespace Many of these no-doubt are in upstream, but they are interfering with the filters I use to judge commits (no traling whitespace). We don't directly get stuff from upstream. If/when we pull this from contrib we'll revisit. Sponsored by: Netflix --- stand/efi/include/amd64/efibind.h | 22 ++-- stand/efi/include/amd64/pe.h | 6 +- stand/efi/include/arm64/efibind.h | 18 +-- stand/efi/include/efi_nii.h | 2 +- stand/efi/include/efidebug.h | 12 +- stand/efi/include/efidef.h | 10 +- stand/efi/include/efidevp.h | 14 +-- stand/efi/include/efifs.h | 2 +- stand/efi/include/efinet.h | 52 ++++---- stand/efi/include/efipart.h | 6 +- stand/efi/include/efipciio.h | 259 +++++++++++++++++++------------------- stand/efi/include/efiprot.h | 10 +- stand/efi/include/efipxebc.h | 6 +- stand/efi/include/efirng.h | 4 +- stand/efi/include/efiser.h | 6 +- stand/efi/include/efiuga.h | 34 ++--- stand/efi/include/i386/efibind.h | 22 ++-- stand/efi/include/i386/pe.h | 14 +-- stand/efi/include/riscv/efibind.h | 18 +-- 19 files changed, 258 insertions(+), 259 deletions(-) diff --git a/stand/efi/include/amd64/efibind.h b/stand/efi/include/amd64/efibind.h index d005ade221c4..1c974ee39f84 100644 --- a/stand/efi/include/amd64/efibind.h +++ b/stand/efi/include/amd64/efibind.h @@ -28,17 +28,17 @@ Revision History #ifdef EFI_NT_EMULATOR #define POST_CODE(_Data) -#else +#else #ifdef EFI_DEBUG #define POST_CODE(_Data) __asm mov eax,(_Data) __asm out 0x80,al #else #define POST_CODE(_Data) - #endif + #endif #endif #define EFIERR(a) (0x8000000000000000 | a) #define EFI_ERROR_MASK 0x8000000000000000 -#define EFIERR_OEM(a) (0xc000000000000000 | a) +#define EFIERR_OEM(a) (0xc000000000000000 | a) #define BAD_POINTER 0xFBFBFBFBFBFBFBFB @@ -72,18 +72,18 @@ Revision History // BOOTSERVICE - prototype for implementation of a boot service interface // RUNTIMESERVICE - prototype for implementation of a runtime service interface // RUNTIMEFUNCTION - prototype for implementation of a runtime function that is not a service -// RUNTIME_CODE - pragma macro for declaring runtime code +// RUNTIME_CODE - pragma macro for declaring runtime code // #ifdef __amd64__ #define EFIAPI __attribute__((ms_abi)) #endif -#ifndef EFIAPI // Forces EFI calling conventions reguardless of compiler options +#ifndef EFIAPI // Forces EFI calling conventions reguardless of compiler options #ifdef _MSC_EXTENSIONS - #define EFIAPI __cdecl // Force C calling convention for Microsoft C compiler + #define EFIAPI __cdecl // Force C calling convention for Microsoft C compiler #else - #define EFIAPI // Substitute expresion to force C calling convention + #define EFIAPI // Substitute expresion to force C calling convention #endif #endif @@ -100,7 +100,7 @@ Revision History #define VOLATILE volatile -#define MEMORY_FENCE() +#define MEMORY_FENCE() #ifdef EFI_NO_INTERFACE_DECL #define EFI_FORWARD_DECLARATION(x) @@ -149,9 +149,9 @@ Revision History #define LOAD_INTERNAL_DRIVER(_if, type, name, entry) \ - (_if)->LoadInternal(type, name, NULL) + (_if)->LoadInternal(type, name, NULL) -#else // EFI_NT_EMULATOR +#else // EFI_NT_EMULATOR // // When building similar to FW, link everything together as @@ -163,7 +163,7 @@ Revision History #define LOAD_INTERNAL_DRIVER(_if, type, name, entry) \ (_if)->LoadInternal(type, name, entry) -#endif // EFI_FW_NT +#endif // EFI_FW_NT #ifdef __FreeBSD__ #define INTERFACE_DECL(x) struct x diff --git a/stand/efi/include/amd64/pe.h b/stand/efi/include/amd64/pe.h index ad5985cc2740..b858ba916c7d 100644 --- a/stand/efi/include/amd64/pe.h +++ b/stand/efi/include/amd64/pe.h @@ -1,4 +1,4 @@ -/* +/* PE32+ header file */ #ifndef _PE_H @@ -7,7 +7,7 @@ #define IMAGE_DOS_SIGNATURE 0x5A4D // MZ #define IMAGE_OS2_SIGNATURE 0x454E // NE #define IMAGE_OS2_SIGNATURE_LE 0x454C // LE -#define IMAGE_NT_SIGNATURE 0x00004550 // PE00 +#define IMAGE_NT_SIGNATURE 0x00004550 // PE00 #define IMAGE_EDOS_SIGNATURE 0x44454550 // PEED @@ -129,7 +129,7 @@ typedef struct _IMAGE_OPTIONAL_HEADER { UINT32 AddressOfEntryPoint; UINT32 BaseOfCode; UINT32 BaseOfData; - + // // NT additional fields. // diff --git a/stand/efi/include/arm64/efibind.h b/stand/efi/include/arm64/efibind.h index 417da1b4d4ff..c81506f79334 100644 --- a/stand/efi/include/arm64/efibind.h +++ b/stand/efi/include/arm64/efibind.h @@ -31,10 +31,10 @@ Revision History // #define BIT63 0x8000000000000000 -#define PLATFORM_IOBASE_ADDRESS (0xffffc000000 | BIT63) +#define PLATFORM_IOBASE_ADDRESS (0xffffc000000 | BIT63) #define PORT_TO_MEMD(_Port) (PLATFORM_IOBASE_ADDRESS | ( ( ( (_Port) & 0xfffc) << 10 ) | ( (_Port) & 0x0fff) ) ) - -// + +// // Macro's with casts make this much easier to use and read. // #define PORT_TO_MEM8D(_Port) (*(UINT8 *)(PORT_TO_MEMD(_Port))) @@ -45,7 +45,7 @@ Revision History #define EFIERR(a) (0x8000000000000000 | a) #define EFI_ERROR_MASK 0x8000000000000000 -#define EFIERR_OEM(a) (0xc000000000000000 | a) +#define EFIERR_OEM(a) (0xc000000000000000 | a) #define BAD_POINTER 0xFBFBFBFBFBFBFBFB #define MAX_ADDRESS 0xFFFFFFFFFFFFFFFF @@ -77,14 +77,14 @@ Revision History // BOOTSERVICE - prototype for implementation of a boot service interface // RUNTIMESERVICE - prototype for implementation of a runtime service interface // RUNTIMEFUNCTION - prototype for implementation of a runtime function that is not a service -// RUNTIME_CODE - pragma macro for declaring runtime code +// RUNTIME_CODE - pragma macro for declaring runtime code // -#ifndef EFIAPI // Forces EFI calling conventions reguardless of compiler options +#ifndef EFIAPI // Forces EFI calling conventions reguardless of compiler options #ifdef _MSC_EXTENSIONS - #define EFIAPI __cdecl // Force C calling convention for Microsoft C compiler + #define EFIAPI __cdecl // Force C calling convention for Microsoft C compiler #else - #define EFIAPI // Substitute expresion to force C calling convention + #define EFIAPI // Substitute expresion to force C calling convention #endif #endif @@ -101,7 +101,7 @@ Revision History // // BugBug: Need to find out if this is portable across compilers. // -void __mfa (void); +void __mfa (void); #define MEMORY_FENCE() __mfa() #ifdef EFI_NO_INTERFACE_DECL diff --git a/stand/efi/include/efi_nii.h b/stand/efi/include/efi_nii.h index 069e318428ea..173108c55004 100644 --- a/stand/efi/include/efi_nii.h +++ b/stand/efi/include/efi_nii.h @@ -20,7 +20,7 @@ Revision history: 2000-Feb-18 M(f)J GUID updated. Structure order changed for machine word alignment. Added StringId[4] to structure. - + 2000-Feb-14 M(f)J Genesis. --*/ diff --git a/stand/efi/include/efidebug.h b/stand/efi/include/efidebug.h index b43b62d1283c..40a3cd0d5bb2 100644 --- a/stand/efi/include/efidebug.h +++ b/stand/efi/include/efidebug.h @@ -32,12 +32,12 @@ extern UINTN EFIDebug; #define DBGASSERT(a) DbgAssert(__FILE__, __LINE__, #a) #define DEBUG(a) DbgPrint a - + #else #define DBGASSERT(a) #define DEBUG(a) - + #endif #if EFI_DEBUG_CLEAR_MEMORY @@ -59,7 +59,7 @@ extern UINTN EFIDebug; #define D_INFO 0x00000040 // Verbose #define D_VARIABLE 0x00000100 // Variable #define D_VAR 0x00000100 // Variable -#define D_BM 0x00000400 // Boot Manager +#define D_BM 0x00000400 // Boot Manager #define D_BLKIO 0x00001000 // BlkIo Driver #define D_BLKIO_ULTRA 0x00002000 // BlkIo Driver #define D_NET 0x00004000 // SNI Driver @@ -90,9 +90,9 @@ extern UINTN EFIDebug; #else - #define ASSERT(a) - #define ASSERT_LOCKED(l) - #define ASSERT_STRUCT(p,t) + #define ASSERT(a) + #define ASSERT_LOCKED(l) + #define ASSERT_STRUCT(p,t) #endif diff --git a/stand/efi/include/efidef.h b/stand/efi/include/efidef.h index 54be3bb2a0ce..7a63fd185874 100644 --- a/stand/efi/include/efidef.h +++ b/stand/efi/include/efidef.h @@ -70,11 +70,11 @@ typedef VOID *EFI_EVENT; // A GUID // -typedef struct { +typedef struct { UINT32 Data1; UINT16 Data2; UINT16 Data3; - UINT8 Data4[8]; + UINT8 Data4[8]; } EFI_GUID; @@ -82,7 +82,7 @@ typedef struct { // Time // -typedef struct { +typedef struct { UINT16 Year; // 1998 - 20XX UINT8 Month; // 1 - 12 UINT8 Day; // 1 - 31 @@ -179,9 +179,9 @@ typedef enum { #define EFI_MEMORY_WC 0x0000000000000002 #define EFI_MEMORY_WT 0x0000000000000004 #define EFI_MEMORY_WB 0x0000000000000008 -#define EFI_MEMORY_UCE 0x0000000000000010 +#define EFI_MEMORY_UCE 0x0000000000000010 -// physical memory protection on range +// physical memory protection on range #define EFI_MEMORY_WP 0x0000000000001000 #define EFI_MEMORY_RP 0x0000000000002000 #define EFI_MEMORY_XP 0x0000000000004000 diff --git a/stand/efi/include/efidevp.h b/stand/efi/include/efidevp.h index 409f2b23b9ef..5fe42a3e7e8f 100644 --- a/stand/efi/include/efidevp.h +++ b/stand/efi/include/efidevp.h @@ -150,8 +150,8 @@ typedef struct _ACPI_EXTENDED_HID_DEVICE_PATH { // bits[31:16] - binary number // Compressed ASCII is 5 bits per character 0b00001 = 'A' 0b11010 = 'Z' // -#define PNP_EISA_ID_CONST 0x41d0 -#define EISA_ID(_Name, _Num) ((UINT32) ((_Name) | (_Num) << 16)) +#define PNP_EISA_ID_CONST 0x41d0 +#define EISA_ID(_Name, _Num) ((UINT32) ((_Name) | (_Num) << 16)) #define EISA_PNP_ID(_PNPId) (EISA_ID(PNP_EISA_ID_CONST, (_PNPId))) #define EFI_PNP_ID(_PNPId) (EISA_ID(PNP_EISA_ID_CONST, (_PNPId))) @@ -160,7 +160,7 @@ typedef struct _ACPI_EXTENDED_HID_DEVICE_PATH { /* * */ -#define MESSAGING_DEVICE_PATH 0x03 +#define MESSAGING_DEVICE_PATH 0x03 #define MSG_ATAPI_DP 0x01 typedef struct _ATAPI_DEVICE_PATH { @@ -174,7 +174,7 @@ typedef struct _ATAPI_DEVICE_PATH { typedef struct _SCSI_DEVICE_PATH { EFI_DEVICE_PATH Header; UINT16 Pun; - UINT16 Lun; + UINT16 Lun; } SCSI_DEVICE_PATH; #define MSG_FIBRECHANNEL_DP 0x03 @@ -283,7 +283,7 @@ typedef struct _UART_DEVICE_PATH { #define DEVICE_PATH_MESSAGING_VT_100_PLUS \ { 0x7baec70b, 0x57e0, 0x4c76, {0x8e, 0x87, 0x2f, 0x9e, 0x28, 0x08, 0x83, 0x43} } - + #define DEVICE_PATH_MESSAGING_VT_UTF8 \ { 0xad15a0d6, 0x8bec, 0x4acf, {0xa0, 0x73, 0xd0, 0x1d, 0xe7, 0x7e, 0x2d, 0x88} } @@ -393,7 +393,7 @@ typedef union { PCCARD_DEVICE_PATH PcCard; MEMMAP_DEVICE_PATH MemMap; VENDOR_DEVICE_PATH Vendor; - UNKNOWN_DEVICE_VENDOR_DEVICE_PATH UnknownVendor; + UNKNOWN_DEVICE_VENDOR_DEVICE_PATH UnknownVendor; CONTROLLER_DEVICE_PATH Controller; ACPI_HID_DEVICE_PATH Acpi; @@ -427,7 +427,7 @@ typedef union { PCCARD_DEVICE_PATH *PcCard; MEMMAP_DEVICE_PATH *MemMap; VENDOR_DEVICE_PATH *Vendor; - UNKNOWN_DEVICE_VENDOR_DEVICE_PATH *UnknownVendor; + UNKNOWN_DEVICE_VENDOR_DEVICE_PATH *UnknownVendor; CONTROLLER_DEVICE_PATH *Controller; ACPI_HID_DEVICE_PATH *Acpi; ACPI_EXTENDED_HID_DEVICE_PATH *ExtendedAcpi; diff --git a/stand/efi/include/efifs.h b/stand/efi/include/efifs.h index 3ba238496b23..0197449a9399 100644 --- a/stand/efi/include/efifs.h +++ b/stand/efi/include/efifs.h @@ -100,7 +100,7 @@ typedef struct _EFI_LBAL { UINT32 ArrayCount; } EFI_LBAL; -// Array size +// Array size #define EFI_LBAL_ARRAY_SIZE(lbal,offs,blks) \ (((blks) - (offs) - (lbal)->Hdr.HeaderSize) / sizeof(EFI_RL)) diff --git a/stand/efi/include/efinet.h b/stand/efi/include/efinet.h index 9cd13f5a4653..d8bcf9a36bcb 100644 --- a/stand/efi/include/efinet.h +++ b/stand/efi/include/efinet.h @@ -172,8 +172,8 @@ typedef struct { /////////////////////////////////////////////////////////////////////////////// // -typedef -EFI_STATUS +typedef +EFI_STATUS (EFIAPI *EFI_SIMPLE_NETWORK_START) ( IN struct _EFI_SIMPLE_NETWORK *This ); @@ -181,8 +181,8 @@ EFI_STATUS /////////////////////////////////////////////////////////////////////////////// // -typedef -EFI_STATUS +typedef +EFI_STATUS (EFIAPI *EFI_SIMPLE_NETWORK_STOP) ( IN struct _EFI_SIMPLE_NETWORK *This ); @@ -190,8 +190,8 @@ EFI_STATUS /////////////////////////////////////////////////////////////////////////////// // -typedef -EFI_STATUS +typedef +EFI_STATUS (EFIAPI *EFI_SIMPLE_NETWORK_INITIALIZE) ( IN struct _EFI_SIMPLE_NETWORK *This, IN UINTN ExtraRxBufferSize OPTIONAL, @@ -201,8 +201,8 @@ EFI_STATUS /////////////////////////////////////////////////////////////////////////////// // -typedef -EFI_STATUS +typedef +EFI_STATUS (EFIAPI *EFI_SIMPLE_NETWORK_RESET) ( IN struct _EFI_SIMPLE_NETWORK *This, IN BOOLEAN ExtendedVerification @@ -211,8 +211,8 @@ EFI_STATUS /////////////////////////////////////////////////////////////////////////////// // -typedef -EFI_STATUS +typedef +EFI_STATUS (EFIAPI *EFI_SIMPLE_NETWORK_SHUTDOWN) ( IN struct _EFI_SIMPLE_NETWORK *This ); @@ -220,8 +220,8 @@ EFI_STATUS /////////////////////////////////////////////////////////////////////////////// // -typedef -EFI_STATUS +typedef +EFI_STATUS (EFIAPI *EFI_SIMPLE_NETWORK_RECEIVE_FILTERS) ( IN struct _EFI_SIMPLE_NETWORK *This, IN UINT32 Enable, @@ -234,8 +234,8 @@ EFI_STATUS /////////////////////////////////////////////////////////////////////////////// // -typedef -EFI_STATUS +typedef +EFI_STATUS (EFIAPI *EFI_SIMPLE_NETWORK_STATION_ADDRESS) ( IN struct _EFI_SIMPLE_NETWORK *This, IN BOOLEAN Reset, @@ -245,8 +245,8 @@ EFI_STATUS /////////////////////////////////////////////////////////////////////////////// // -typedef -EFI_STATUS +typedef +EFI_STATUS (EFIAPI *EFI_SIMPLE_NETWORK_STATISTICS) ( IN struct _EFI_SIMPLE_NETWORK *This, IN BOOLEAN Reset, @@ -257,8 +257,8 @@ EFI_STATUS /////////////////////////////////////////////////////////////////////////////// // -typedef -EFI_STATUS +typedef +EFI_STATUS (EFIAPI *EFI_SIMPLE_NETWORK_MCAST_IP_TO_MAC) ( IN struct _EFI_SIMPLE_NETWORK *This, IN BOOLEAN IPv6, @@ -269,8 +269,8 @@ EFI_STATUS /////////////////////////////////////////////////////////////////////////////// // -typedef -EFI_STATUS +typedef +EFI_STATUS (EFIAPI *EFI_SIMPLE_NETWORK_NVDATA) ( IN struct _EFI_SIMPLE_NETWORK *This, IN BOOLEAN ReadWrite, @@ -282,8 +282,8 @@ EFI_STATUS /////////////////////////////////////////////////////////////////////////////// // -typedef -EFI_STATUS +typedef +EFI_STATUS (EFIAPI *EFI_SIMPLE_NETWORK_GET_STATUS) ( IN struct _EFI_SIMPLE_NETWORK *This, OUT UINT32 *InterruptStatus OPTIONAL, @@ -293,8 +293,8 @@ EFI_STATUS /////////////////////////////////////////////////////////////////////////////// // -typedef -EFI_STATUS +typedef +EFI_STATUS (EFIAPI *EFI_SIMPLE_NETWORK_TRANSMIT) ( IN struct _EFI_SIMPLE_NETWORK *This, IN UINTN HeaderSize, @@ -308,8 +308,8 @@ EFI_STATUS /////////////////////////////////////////////////////////////////////////////// // -typedef -EFI_STATUS +typedef +EFI_STATUS (EFIAPI *EFI_SIMPLE_NETWORK_RECEIVE) ( IN struct _EFI_SIMPLE_NETWORK *This, OUT UINTN *HeaderSize OPTIONAL, diff --git a/stand/efi/include/efipart.h b/stand/efi/include/efipart.h index 32a715c8781b..abad72440657 100644 --- a/stand/efi/include/efipart.h +++ b/stand/efi/include/efipart.h @@ -15,8 +15,8 @@ Intel Corporation. Module Name: efipart.h - -Abstract: + +Abstract: Info about disk partitions and Master Boot Records @@ -54,7 +54,7 @@ typedef struct { #define MIN_MBR_DEVICE_SIZE 0x80000 #define MBR_ERRATA_PAD 0x40000 // 128 MB -#define MAX_MBR_PARTITIONS 4 +#define MAX_MBR_PARTITIONS 4 typedef struct { UINT8 BootStrapCode[440]; UINT8 UniqueMbrSignature[4]; diff --git a/stand/efi/include/efipciio.h b/stand/efi/include/efipciio.h index 4e9ca153f721..8499ad9e9d7a 100644 --- a/stand/efi/include/efipciio.h +++ b/stand/efi/include/efipciio.h @@ -1,15 +1,15 @@ /** @file - EFI PCI I/O Protocol provides the basic Memory, I/O, PCI configuration, + EFI PCI I/O Protocol provides the basic Memory, I/O, PCI configuration, and DMA interfaces that a driver uses to access its PCI controller. Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.
- This program and the accompanying materials - are licensed and made available under the terms and conditions of the BSD License - which accompanies this distribution. The full text of the license may be found at - http://opensource.org/licenses/bsd-license.php + This program and the accompanying materials + are licensed and made available under the terms and conditions of the BSD License + which accompanies this distribution. The full text of the license may be found at + http://opensource.org/licenses/bsd-license.php - THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, - WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. **/ @@ -127,27 +127,27 @@ typedef enum { EfiPciIoAttributeOperationMaximum } EFI_PCI_IO_PROTOCOL_ATTRIBUTE_OPERATION; -/** +/** Reads from the memory space of a PCI controller. Returns either when the polling exit criteria is - satisfied or after a defined duration. - + satisfied or after a defined duration. + @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. @param Width Signifies the width of the memory or I/O operations. @param BarIndex The BAR index of the standard PCI Configuration header to use as the - base address for the memory operation to perform. + base address for the memory operation to perform. @param Offset The offset within the selected BAR to start the memory operation. @param Mask Mask used for the polling criteria. @param Value The comparison value used for the polling exit criteria. @param Delay The number of 100 ns units to poll. @param Result Pointer to the last value read from the memory location. - + @retval EFI_SUCCESS The last data returned from the access matched the poll exit criteria. @retval EFI_UNSUPPORTED BarIndex not valid for this PCI controller. @retval EFI_UNSUPPORTED Offset is not valid for the BarIndex of this PCI controller. @retval EFI_TIMEOUT Delay expired before a match occurred. @retval EFI_OUT_OF_RESOURCES The request could not be completed due to a lack of resources. @retval EFI_INVALID_PARAMETER One or more parameters are invalid. - + **/ typedef EFI_STATUS @@ -162,25 +162,25 @@ EFI_STATUS OUT UINT64 *Result ); -/** +/** Enable a PCI driver to access PCI controller registers in the PCI memory or I/O space. - + @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. @param Width Signifies the width of the memory or I/O operations. @param BarIndex The BAR index of the standard PCI Configuration header to use as the - base address for the memory or I/O operation to perform. - @param Offset The offset within the selected BAR to start the memory or I/O operation. + base address for the memory or I/O operation to perform. + @param Offset The offset within the selected BAR to start the memory or I/O operation. @param Count The number of memory or I/O operations to perform. @param Buffer For read operations, the destination buffer to store the results. For write - operations, the source buffer to write data from. - + operations, the source buffer to write data from. + @retval EFI_SUCCESS The data was read from or written to the PCI controller. @retval EFI_UNSUPPORTED BarIndex not valid for this PCI controller. @retval EFI_UNSUPPORTED The address range specified by Offset, Width, and Count is not - valid for the PCI BAR specified by BarIndex. + valid for the PCI BAR specified by BarIndex. @retval EFI_OUT_OF_RESOURCES The request could not be completed due to a lack of resources. @retval EFI_INVALID_PARAMETER One or more parameters are invalid. - + **/ typedef EFI_STATUS @@ -204,23 +204,22 @@ typedef struct { EFI_PCI_IO_PROTOCOL_IO_MEM Write; } EFI_PCI_IO_PROTOCOL_ACCESS; -/** +/** Enable a PCI driver to access PCI controller registers in PCI configuration space. - - @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. + + @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. @param Width Signifies the width of the memory operations. @param Offset The offset within the PCI configuration space for the PCI controller. @param Count The number of PCI configuration operations to perform. @param Buffer For read operations, the destination buffer to store the results. For write operations, the source buffer to write data from. - - + @retval EFI_SUCCESS The data was read from or written to the PCI controller. @retval EFI_UNSUPPORTED The address range specified by Offset, Width, and Count is not valid for the PCI configuration header of the PCI controller. - @retval EFI_OUT_OF_RESOURCES The request could not be completed due to a lack of resources. - @retval EFI_INVALID_PARAMETER Buffer is NULL or Width is invalid. - + @retval EFI_OUT_OF_RESOURCES The request could not be completed due to a lack of resources. + @retval EFI_INVALID_PARAMETER Buffer is NULL or Width is invalid. + **/ typedef EFI_STATUS @@ -243,33 +242,33 @@ typedef struct { EFI_PCI_IO_PROTOCOL_CONFIG Write; } EFI_PCI_IO_PROTOCOL_CONFIG_ACCESS; -/** +/** Enables a PCI driver to copy one region of PCI memory space to another region of PCI memory space. - + @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. @param Width Signifies the width of the memory operations. @param DestBarIndex The BAR index in the standard PCI Configuration header to use as the - base address for the memory operation to perform. + base address for the memory operation to perform. @param DestOffset The destination offset within the BAR specified by DestBarIndex to - start the memory writes for the copy operation. + start the memory writes for the copy operation. @param SrcBarIndex The BAR index in the standard PCI Configuration header to use as the - base address for the memory operation to perform. + base address for the memory operation to perform. @param SrcOffset The source offset within the BAR specified by SrcBarIndex to start - the memory reads for the copy operation. + the memory reads for the copy operation. @param Count The number of memory operations to perform. Bytes moved is Width - size * Count, starting at DestOffset and SrcOffset. - + size * Count, starting at DestOffset and SrcOffset. + @retval EFI_SUCCESS The data was copied from one memory region to another memory region. @retval EFI_UNSUPPORTED DestBarIndex not valid for this PCI controller. @retval EFI_UNSUPPORTED SrcBarIndex not valid for this PCI controller. @retval EFI_UNSUPPORTED The address range specified by DestOffset, Width, and Count - is not valid for the PCI BAR specified by DestBarIndex. + is not valid for the PCI BAR specified by DestBarIndex. @retval EFI_UNSUPPORTED The address range specified by SrcOffset, Width, and Count is - not valid for the PCI BAR specified by SrcBarIndex. + not valid for the PCI BAR specified by SrcBarIndex. @retval EFI_INVALID_PARAMETER Width is invalid. @retval EFI_OUT_OF_RESOURCES The request could not be completed due to a lack of resources. - + **/ typedef EFI_STATUS @@ -283,24 +282,24 @@ EFI_STATUS IN UINTN Count ); -/** +/** Provides the PCI controller-specific addresses needed to access system memory. - + @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. @param Operation Indicates if the bus master is going to read or write to system memory. @param HostAddress The system memory address to map to the PCI controller. @param NumberOfBytes On input the number of bytes to map. On output the number of bytes - that were mapped. + that were mapped. @param DeviceAddress The resulting map address for the bus master PCI controller to use to - access the hosts HostAddress. + access the hosts HostAddress. @param Mapping A resulting value to pass to Unmap(). - + @retval EFI_SUCCESS The range was mapped for the returned NumberOfBytes. - @retval EFI_UNSUPPORTED The HostAddress cannot be mapped as a common buffer. + @retval EFI_UNSUPPORTED The HostAddress cannot be mapped as a common buffer. @retval EFI_INVALID_PARAMETER One or more parameters are invalid. @retval EFI_OUT_OF_RESOURCES The request could not be completed due to a lack of resources. @retval EFI_DEVICE_ERROR The system hardware could not map the requested address. - + **/ typedef EFI_STATUS @@ -313,15 +312,15 @@ EFI_STATUS OUT VOID **Mapping ); -/** +/** Completes the Map() operation and releases any corresponding resources. - - @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. + + @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. @param Mapping The mapping value returned from Map(). - + @retval EFI_SUCCESS The range was unmapped. @retval EFI_DEVICE_ERROR The data was not committed to the target system memory. - + **/ typedef EFI_STATUS @@ -330,25 +329,25 @@ EFI_STATUS IN VOID *Mapping ); -/** +/** Allocates pages that are suitable for an EfiPciIoOperationBusMasterCommonBuffer - mapping. - + mapping. + @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. @param Type This parameter is not used and must be ignored. @param MemoryType The type of memory to allocate, EfiBootServicesData or - EfiRuntimeServicesData. - @param Pages The number of pages to allocate. + EfiRuntimeServicesData. + @param Pages The number of pages to allocate. @param HostAddress A pointer to store the base system memory address of the - allocated range. + allocated range. @param Attributes The requested bit mask of attributes for the allocated range. - + @retval EFI_SUCCESS The requested memory pages were allocated. @retval EFI_UNSUPPORTED Attributes is unsupported. The only legal attribute bits are - MEMORY_WRITE_COMBINE and MEMORY_CACHED. + MEMORY_WRITE_COMBINE and MEMORY_CACHED. @retval EFI_INVALID_PARAMETER One or more parameters are invalid. - @retval EFI_OUT_OF_RESOURCES The memory pages could not be allocated. - + @retval EFI_OUT_OF_RESOURCES The memory pages could not be allocated. + **/ typedef EFI_STATUS @@ -361,17 +360,17 @@ EFI_STATUS IN UINT64 Attributes ); -/** +/** Frees memory that was allocated with AllocateBuffer(). - - @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. - @param Pages The number of pages to free. - @param HostAddress The base system memory address of the allocated range. - + + @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. + @param Pages The number of pages to free. + @param HostAddress The base system memory address of the allocated range. + @retval EFI_SUCCESS The requested memory pages were freed. @retval EFI_INVALID_PARAMETER The memory range specified by HostAddress and Pages was not allocated with AllocateBuffer(). - + **/ typedef EFI_STATUS @@ -381,16 +380,16 @@ EFI_STATUS IN VOID *HostAddress ); -/** +/** Flushes all PCI posted write transactions from a PCI host bridge to system memory. - - @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. - + + @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. + @retval EFI_SUCCESS The PCI posted write transactions were flushed from the PCI host - bridge to system memory. + bridge to system memory. @retval EFI_DEVICE_ERROR The PCI posted write transactions were not flushed from the PCI - host bridge due to a hardware error. - + host bridge due to a hardware error. + **/ typedef EFI_STATUS @@ -398,18 +397,18 @@ EFI_STATUS IN EFI_PCI_IO_PROTOCOL *This ); -/** +/** Retrieves this PCI controller's current PCI bus number, device number, and function number. - - @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. + + @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. @param SegmentNumber The PCI controller's current PCI segment number. @param BusNumber The PCI controller's current PCI bus number. @param DeviceNumber The PCI controller's current PCI device number. @param FunctionNumber The PCI controller's current PCI function number. - - @retval EFI_SUCCESS The PCI controller location was returned. - @retval EFI_INVALID_PARAMETER One or more parameters are invalid. - + + @retval EFI_SUCCESS The PCI controller location was returned. + @retval EFI_INVALID_PARAMETER One or more parameters are invalid. + **/ typedef EFI_STATUS @@ -421,24 +420,24 @@ EFI_STATUS OUT UINTN *FunctionNumber ); -/** +/** Performs an operation on the attributes that this PCI controller supports. The operations include - getting the set of supported attributes, retrieving the current attributes, setting the current - attributes, enabling attributes, and disabling attributes. - - @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. + getting the set of supported attributes, retrieving the current attributes, setting the current + attributes, enabling attributes, and disabling attributes. + + @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. @param Operation The operation to perform on the attributes for this PCI controller. @param Attributes The mask of attributes that are used for Set, Enable, and Disable - operations. + operations. @param Result A pointer to the result mask of attributes that are returned for the Get - and Supported operations. - + and Supported operations. + @retval EFI_SUCCESS The operation on the PCI controller's attributes was completed. - @retval EFI_INVALID_PARAMETER One or more parameters are invalid. - @retval EFI_UNSUPPORTED one or more of the bits set in + @retval EFI_INVALID_PARAMETER One or more parameters are invalid. + @retval EFI_UNSUPPORTED one or more of the bits set in Attributes are not supported by this PCI controller or one of its parent bridges when Operation is Set, Enable or Disable. - + **/ typedef EFI_STATUS @@ -449,27 +448,27 @@ EFI_STATUS OUT UINT64 *Result OPTIONAL ); -/** +/** Gets the attributes that this PCI controller supports setting on a BAR using SetBarAttributes(), and retrieves the list of resource descriptors for a BAR. - - @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. + + @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. @param BarIndex The BAR index of the standard PCI Configuration header to use as the base address for resource range. The legal range for this field is 0..5. @param Supports A pointer to the mask of attributes that this PCI controller supports - setting for this BAR with SetBarAttributes(). + setting for this BAR with SetBarAttributes(). @param Resources A pointer to the ACPI 2.0 resource descriptors that describe the current - configuration of this BAR of the PCI controller. - - @retval EFI_SUCCESS If Supports is not NULL, then the attributes that the PCI - controller supports are returned in Supports. If Resources + configuration of this BAR of the PCI controller. + + @retval EFI_SUCCESS If Supports is not NULL, then the attributes that the PCI + controller supports are returned in Supports. If Resources is not NULL, then the ACPI 2.0 resource descriptors that the PCI - controller is currently using are returned in Resources. + controller is currently using are returned in Resources. @retval EFI_INVALID_PARAMETER Both Supports and Attributes are NULL. @retval EFI_UNSUPPORTED BarIndex not valid for this PCI controller. @retval EFI_OUT_OF_RESOURCES There are not enough resources available to allocate - Resources. - + Resources. + **/ typedef EFI_STATUS @@ -480,29 +479,29 @@ EFI_STATUS OUT VOID **Resources OPTIONAL ); -/** +/** Sets the attributes for a range of a BAR on a PCI controller. - - @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. + + @param This A pointer to the EFI_PCI_IO_PROTOCOL instance. @param Attributes The mask of attributes to set for the resource range specified by - BarIndex, Offset, and Length. + BarIndex, Offset, and Length. @param BarIndex The BAR index of the standard PCI Configuration header to use as the base address for resource range. The legal range for this field is 0..5. @param Offset A pointer to the BAR relative base address of the resource range to be - modified by the attributes specified by Attributes. + modified by the attributes specified by Attributes. @param Length A pointer to the length of the resource range to be modified by the - attributes specified by Attributes. - - @retval EFI_SUCCESS The set of attributes specified by Attributes for the resource - range specified by BarIndex, Offset, and Length were + attributes specified by Attributes. + + @retval EFI_SUCCESS The set of attributes specified by Attributes for the resource + range specified by BarIndex, Offset, and Length were set on the PCI controller, and the actual resource range is returned - in Offset and Length. + in Offset and Length. @retval EFI_INVALID_PARAMETER Offset or Length is NULL. @retval EFI_UNSUPPORTED BarIndex not valid for this PCI controller. @retval EFI_OUT_OF_RESOURCES There are not enough resources to set the attributes on the - resource range specified by BarIndex, Offset, and - Length. - + resource range specified by BarIndex, Offset, and *** 401 LINES SKIPPED *** From nobody Sat Apr 12 01:53:35 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZGmc1Jn5z5sbp0; Sat, 12 Apr 2025 01:53: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZGmb70Whz3CB5; Sat, 12 Apr 2025 01:53:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744422816; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9zy+pzBcmXMuYJTc3l4MQ//CBGnqVUKos/+d3sNHg1A=; b=mdkfmCjE9yjC9QuVEbxuzTSVAguDccSMVYjrDHhPSxckus4gocGh+pQ2ACaeztWYtYDxqu S4TVhND0C+tXuLsncpO9xQ19LnTrFubYJA2r8S/+DB0K4Hh78JeS4D3N8DINpGCk3ukmQt GBq6++qC1rzzAcpI8VIgG5qTvPhCc0lLaTD2K0dkXk7r6fMfBuCylUrYOYN8NoNH4uNvZP w5X+Ongh3G8/PIyMdc6sb23AY+o2Q7S1eysPmbPy9mVg6dAjZIrdDmMitmDSyOqzteBwqZ itFqbcEARP6+725OWpBAU2UvzLMiUVBZUMQ2cJxINQ626y234uwz+OgtvjxwUg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744422816; a=rsa-sha256; cv=none; b=CeAbgOw7pwOS6CFB27Ph+/NfUviiFVbz6FuWa7P3k2W1fEkkWQeZP8PolIAIUjc9RJnBBX g9DP+nZY38XdIzoqiLiy7zQ1Lw+tbKoN3aoqtdgibZPRwz+sarsZOndng0yyWNkjuLMn+i ems+8eI7CQSKkouNKESbfMjVWa5ATpO1BcbKmMDq1qAsovlXhFly3ALg0aSWMO0LgWBHFw Bb5qPYwR6ehcH4PQCmhcnHWTdtoZrs2TPFO8ijAaa14dYoc8HtzzVmh+pVdfZU1DDc3NMF PUAi8LDWyl9OYHQoVubm1RrClBDv4KfRvMCCpe2YO0lDAfKcBE3LoHT9r3Awjw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744422816; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9zy+pzBcmXMuYJTc3l4MQ//CBGnqVUKos/+d3sNHg1A=; b=m3K2oqrno8h9xL4luJ0N/NMuEzXNphhgfJZV/Y7cyZ4BDNUe1Y7TULNu2f58K1n7rXcurH krvb6sAlTUW5sLunQsqY1uVTbMOqMzx6ZCdCQhZVOfSNQ9IIyJ4Demhr6aj7nsgfALqZrx 0KGJ6N+AI1AwXhxIdVhTGiQ7kiYErJKDmZfcxAvOh0veHjDrMSoR7fcosbiS8JMwnJ2jae V7QDHrH7qdKFhrkMStyl3/Tb1tLT+ePkUqRtZt0DkR2ADoHZxOpJ/e8gwPLzHMv+7jlb1a 1OzDkSGnI4fMPvbzT2Pz+8zjdQOGNf5+4gPQXL+6UHtrQ4tNgXqhOgLwU1i6dw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZGmb6bsVzy0B; Sat, 12 Apr 2025 01:53:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53C1rZwu080320; Sat, 12 Apr 2025 01:53:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53C1rZRY080317; Sat, 12 Apr 2025 01:53:35 GMT (envelope-from git) Date: Sat, 12 Apr 2025 01:53:35 GMT Message-Id: <202504120153.53C1rZRY080317@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kyle Evans Subject: git: 858b5e424816 - main - sys: protect the kernel build from accidental _FORTIFY_SOURCE List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kevans X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 858b5e4248164e58f53c81a653933b45eecadacf Auto-Submitted: auto-generated The branch main has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=858b5e4248164e58f53c81a653933b45eecadacf commit 858b5e4248164e58f53c81a653933b45eecadacf Author: Kyle Evans AuthorDate: 2025-04-12 01:53:27 +0000 Commit: Kyle Evans CommitDate: 2025-04-12 01:53:27 +0000 sys: protect the kernel build from accidental _FORTIFY_SOURCE Fortification is a userland feature, thus the flag makes no sense in a kernel context at the moment. Move the relevant includes that aren't already in a !_KERNEL block under a !_KERNEL condition to avoid breaking kernel/kmod builds that are catching a stray -D_FORTIFY_SOURCE in their CFLAGS. PR: 286010 Reviewed by: emaste, imp, markj Differential Revision: https://reviews.freebsd.org/D49774 --- sys/sys/random.h | 10 ++++++---- sys/sys/select.h | 2 +- sys/sys/socket.h | 4 ++-- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/sys/sys/random.h b/sys/sys/random.h index 67aae93630b5..254ba9451d0a 100644 --- a/sys/sys/random.h +++ b/sys/sys/random.h @@ -156,16 +156,18 @@ void random_harvest_deregister_source(enum random_entropy_source); #define random_harvest_queue_ether(a, b) do {} while (0) #endif /* defined(RANDOM_ENABLE_ETHER) */ +#else /* !_KERNEL */ + +#if defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0 +#include +#endif + #endif /* _KERNEL */ #define GRND_NONBLOCK 0x1 #define GRND_RANDOM 0x2 #define GRND_INSECURE 0x4 -#if defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0 -#include -#endif - __BEGIN_DECLS ssize_t getrandom(void *buf, size_t buflen, unsigned int flags); __END_DECLS diff --git a/sys/sys/select.h b/sys/sys/select.h index fefc9961d63a..691f66b5047d 100644 --- a/sys/sys/select.h +++ b/sys/sys/select.h @@ -49,7 +49,7 @@ typedef __fd_mask fd_mask; typedef __sigset_t sigset_t; #endif -#if defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0 +#if !defined(_KERNEL) && defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0 #include #else #define __SSP_FORTIFY_LEVEL 0 diff --git a/sys/sys/socket.h b/sys/sys/socket.h index 064da1cb95be..5e7c554c34cf 100644 --- a/sys/sys/socket.h +++ b/sys/sys/socket.h @@ -685,12 +685,12 @@ struct splice { #endif /* __BSD_VISIBLE */ +#ifndef _KERNEL + #if defined(_FORTIFY_SOURCE) && _FORTIFY_SOURCE > 0 #include #endif -#ifndef _KERNEL - #include __BEGIN_DECLS From nobody Sat Apr 12 10:35:55 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZVMJ25mTz5tGqc; Sat, 12 Apr 2025 10:35:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZVMJ0rY6z42bb; Sat, 12 Apr 2025 10:35:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744454156; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5Gdu7cOGYHIhX099LFQ6C4iuQAgfe2SqNlwIRqywtQ0=; b=bepUeNszUkXmli7pKJEsm1v/xWIdJKTqfKt2hI+Jx6oCDk24WSv8wMWB9tQwYB+zZ/m7qt KBdAj2iu8TIq9Fpqjb1OJE6zwoHLjHWAolrJTMQl9HyXx2eH6znAlw/vBHNreduC1EWwvb 7gqISLHeBWs7F9uOEI+ijF+ztW3hbEFQQvBfY9owzPIEafkcKXEWNNj2YGCdoOqBr9qwCL GIHeFJ9UnGYUA1EDR+H8794ZgdZIi0hYlHwYZMRPyoR5kSTq7iiojau3QFhOrhmftgCRF7 K06aap/gIB/TnbYsF/hWogkNWTn99f4LJE2SZ5IZspT7Bsmr4PfI+OzoFZpO/g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744454156; a=rsa-sha256; cv=none; b=cCFWt8w3sUPoWLfDPY3tBLihxz1l/nui5C0u7zzaZR9ibfdiRZqFszl79nAldkp7IbAfi2 +RcNSY6g7s/bFcOhsEe20KzCAhdUZd04Z9jZak9fFnU1SsMHLs+FVlaz9R7Jzox4GSiaaA Gun3WuqVZqRIJBejB3gORBPxBqFTehruHbIJauRTrK7MgI2YJi0V5tlP43RGVG1JMdDs76 HRrFxEyIES2JOiL044l42E9C0/vXbjTadPB05JbOGs2BTIQEjFCw0yfwDtHA/Qck/a9k3n XpADuvYP0gGJPUeK2ox4g+uQ6Pu+lidfCZMUoAOT0mPIE2N7t6fIxlhC7zvx8g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744454156; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5Gdu7cOGYHIhX099LFQ6C4iuQAgfe2SqNlwIRqywtQ0=; b=sy11CWuq81mHZcYC77UotjWiUt/EtxChEVDOy0G5UoPSmvcNGlbbN0Hw0VoVjhzRNT5lpY iKNxt3yqjyot+jAVVjVqeaBziMMx+CIhzCskf7fEN+Mt40EDznzMPT/Uh73v+Ox9g0m3SS ZnpCvVpjqoOC3K+k9BN5NpBxI1mtzuNwDIdA6QDUjvrEBZC8K7hiB2tA/wz9T1OTs2fOp7 QNKiuzwM3KLrVk4H9IbO+nT0ke9wMUUnj8SJWQpYTNjE1/04ETzs1mMJt+70t1+HiucZvn u7+xK24Y4CEYCrrgoX1s5Bz+dWHJtqGneKCHrbAjCJZQMWaFvIpVylkRUFH2sA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZVMJ0RvJz7s; Sat, 12 Apr 2025 10:35:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53CAZtlr052494; Sat, 12 Apr 2025 10:35:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53CAZtCC052491; Sat, 12 Apr 2025 10:35:55 GMT (envelope-from git) Date: Sat, 12 Apr 2025 10:35:55 GMT Message-Id: <202504121035.53CAZtCC052491@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: 74bde725ad81 - main - linuxkpi: Add List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 74bde725ad81f457a9b4a04a98f1acac6b93e929 Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=74bde725ad81f457a9b4a04a98f1acac6b93e929 commit 74bde725ad81f457a9b4a04a98f1acac6b93e929 Author: Jean-Sébastien Pédron AuthorDate: 2025-02-24 21:04:34 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-04-12 10:34:17 +0000 linuxkpi: Add This currently implements the empty stubs when `CONFIG_REF_TRACKER` is not defined. This is used by the i915 DRM driver starting with Linux 6.8. Reviewed by: bz, emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49376 --- .../linuxkpi/common/include/linux/ref_tracker.h | 93 ++++++++++++++++++++++ 1 file changed, 93 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/ref_tracker.h b/sys/compat/linuxkpi/common/include/linux/ref_tracker.h new file mode 100644 index 000000000000..fa510b2498e1 --- /dev/null +++ b/sys/compat/linuxkpi/common/include/linux/ref_tracker.h @@ -0,0 +1,93 @@ +/*- + * Copyright (c) 2025 The FreeBSD Foundation + * Copyright (c) 2025 Jean-Sébastien Pédron + * + * This software was developed by Jean-Sébastien Pédron under sponsorship + * from the FreeBSD Foundation. + * + * 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. + */ + +#ifndef _LINUXKPI_LINUX_REF_TRACKER_H_ +#define _LINUXKPI_LINUX_REF_TRACKER_H_ + +#include +#include +#include +#include + +struct ref_tracker; + +struct ref_tracker_dir { +}; + +/* + * The following functions currently have dummy implementations that, on Linux, + * are used when CONFIG_REF_TRACKER is not set at compile time. + * + * The ref tracker is a tool to associate a refcount increase to a refcount + * decrease. This helps developers track, document and debug refcounts. We + * don't need this feature for now in linuxkpi. + */ + +static inline void +ref_tracker_dir_init(struct ref_tracker_dir *dir, + unsigned int quarantine_count, const char *name) +{ +} + +static inline void +ref_tracker_dir_exit(struct ref_tracker_dir *dir) +{ +} + +static inline void +ref_tracker_dir_print_locked(struct ref_tracker_dir *dir, + unsigned int display_limit) +{ +} + +static inline void +ref_tracker_dir_print(struct ref_tracker_dir *dir, unsigned int display_limit) +{ +} + +static inline int +ref_tracker_dir_snprint(struct ref_tracker_dir *dir, char *buf, size_t size) +{ + return (0); +} + +static inline int +ref_tracker_alloc(struct ref_tracker_dir *dir, struct ref_tracker **trackerp, + gfp_t gfp) +{ + return (0); +} + +static inline int +ref_tracker_free(struct ref_tracker_dir *dir, struct ref_tracker **trackerp) +{ + return (0); +} + +#endif /* !defined(_LINUXKPI_LINUX_REF_TRACKER_H_) */ From nobody Sat Apr 12 15:35:41 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZd1B147Kz5s9q5; Sat, 12 Apr 2025 15:35: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZd1B092xz3r7L; Sat, 12 Apr 2025 15:35:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744472142; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gotr1f5Nu0rpsELWNnvgBQhiOOx0SXYaipFc5cTulUM=; b=dYocSX8yasEPu97KnDaEtbeO6Kksi+ij5HU155QFIIubOuGD5DdtTCDGoAYk7G9mhHTC4m YuHTpY8qrnll8oBrWHNMaH7QbOVoJ68Oj7jvv2fJufMx7LnZPzPtjbl7qMGmFmTX8c0itG NQf0c1xxxYoVYgfIgL4fVHw87e8OVZmxDYWlAUnhn0YxleboT2YtfRUdZOA+5V+F5EWxjv 8+UZR4epui99YomJN/X8iR+ccvEidM4/Y0Em4iV/4vHBedMiOpzIpNjhbOHWA4mrtFKH3P N/v8C53mBQPZyZvQ9Js8u9cri/bLp++yxQL4QyQawSwIArH/r/l8ppXFZcsOyw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744472142; a=rsa-sha256; cv=none; b=IMQGAdivtgJ61c9YDth5G8LMJXhpIXyKKWYwqS0cylYUNAyqKuszIY72Y8/7IQCEqSpqXs 8iaDyQ2CLTYaC2FpoUMWxl76Mz9iDu7dWS7ETHTzDae4u1an1Vvpv8r56Kau5M1V6+QTUQ wujYHmKscQJyd2damHt8AicPxjaZ+AXuRGPXHxCm+RPWzyu3epV8Scx6u845Rte3FPzCAi TIsxsaxOX4ruDwLyerOSaEP/TrXS2wais25Nf+cvGssk0xHft3mA28DVg8lvqJVw1Fvvuv fxy+6oaWoVPzNEeLbkYYPiIXiZPZ8ucqYKhPpbB/5fa6UHz5z6SZxdNdCBiiOA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744472142; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gotr1f5Nu0rpsELWNnvgBQhiOOx0SXYaipFc5cTulUM=; b=PKJBb7HQuO2Kq1NQNijXmgqBlKaXgVIot4W7ZQTgYdUSuAMC9Wb8Bo6D/IcsDlRQ6cMCMQ N/IB+lZ3tHcIHVLAwXTngYlTs6cxM3PtI1AiJusTe2oi3NjFxQ3fLt0gPAhvhd5OxvN71M uVp2tCFcM2W/+u7kX4jm75k+Si6imrijVkRZPqXaXzXJrXjPlZHXIuVaYtYkpVy9uh9747 IktdDSJNPDXW31k+iuOlzD2IGiVbXe2EGKi9eFAu2HyDoijNfZBKPmg5O+vkfJw6zFCfBo 65mqQm6NAwDlvA1CgX9/s4YfpqVK4bs3XPj03grMwWa6TIvaekmVleSp1jyl7Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZd196t67z7Zk; Sat, 12 Apr 2025 15:35:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53CFZfAL012795; Sat, 12 Apr 2025 15:35:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53CFZfkW012792; Sat, 12 Apr 2025 15:35:41 GMT (envelope-from git) Date: Sat, 12 Apr 2025 15:35:41 GMT Message-Id: <202504121535.53CFZfkW012792@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: 509189bb4109 - main - fhopen: Enable handling of O_PATH, fix some bugs List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 509189bb41099407169ea57e1a5a8d396d1418f7 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=509189bb41099407169ea57e1a5a8d396d1418f7 commit 509189bb41099407169ea57e1a5a8d396d1418f7 Author: Mark Johnston AuthorDate: 2025-04-12 15:29:19 +0000 Commit: Mark Johnston CommitDate: 2025-04-12 15:35:15 +0000 fhopen: Enable handling of O_PATH, fix some bugs - kern_fhopen() permitted O_PATH but didn't clear O_ACCMODE flags when it is specified, leading to inconsistencies. For instance, opening a writeable O_PATH handle would not bump the writecount on the underlying vnode, but closing it would decrement the writecount. - kern_fhopen() didn't handle the possibility that VOP_OPEN could install a fileops table. This is how named pipes are implemented, for instance. Some devfs nodes do this as well, but devfs doesn't implement VFS_FHTOVP. Factor out some code from openatfp() and use it in kern_fhopen() to address these bugs. Reported by: syzbot+517a2c879eede02c03fb@syzkaller.appspotmail.com Reviewed by: kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D49717 --- sys/kern/vfs_syscalls.c | 128 +++++++++++++++++++++++++++--------------------- sys/kern/vfs_vnops.c | 3 ++ 2 files changed, 76 insertions(+), 55 deletions(-) diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c index 7b71ffc76892..5fe2ae2e23a6 100644 --- a/sys/kern/vfs_syscalls.c +++ b/sys/kern/vfs_syscalls.c @@ -1150,6 +1150,61 @@ sys_openat(struct thread *td, struct openat_args *uap) uap->mode)); } +/* + * Validate open(2) flags and convert access mode flags (O_RDONLY etc.) to their + * in-kernel representations (FREAD etc.). + */ +static int +openflags(int *flagsp) +{ + int flags; + + /* + * Only one of the O_EXEC, O_RDONLY, O_WRONLY and O_RDWR flags + * may be specified. On the other hand, for O_PATH any mode + * except O_EXEC is ignored. + */ + flags = *flagsp; + if ((flags & O_PATH) != 0) { + flags &= ~O_ACCMODE; + } else if ((flags & O_EXEC) != 0) { + if ((flags & O_ACCMODE) != 0) + return (EINVAL); + } else if ((flags & O_ACCMODE) == O_ACCMODE) { + return (EINVAL); + } else { + flags = FFLAGS(flags); + } + *flagsp = flags; + return (0); +} + +static void +finit_open(struct file *fp, struct vnode *vp, int flags) +{ + /* + * Store the vnode, for any f_type. Typically, the vnode use count is + * decremented by a direct call to vnops.fo_close() for files that + * switched type. + */ + fp->f_vnode = vp; + + /* + * If the file wasn't claimed by devfs or fifofs, bind it to the normal + * vnode operations here. + */ + if (fp->f_ops == &badfileops) { + KASSERT(vp->v_type != VFIFO || (flags & O_PATH) != 0, + ("Unexpected fifo fp %p vp %p", fp, vp)); + if ((flags & O_PATH) != 0) { + finit(fp, (flags & FMASK) | (fp->f_flag & FKQALLOWED), + DTYPE_VNODE, NULL, &path_fileops); + } else { + finit_vnode(fp, flags, NULL, &vnops); + } + } +} + /* * If fpp != NULL, opened file is not installed into the file * descriptor table, instead it is returned in *fpp. This is @@ -1179,21 +1234,9 @@ openatfp(struct thread *td, int dirfd, const char *path, cap_rights_init_one(&rights, CAP_LOOKUP); flags_to_rights(flags, &rights); - /* - * Only one of the O_EXEC, O_RDONLY, O_WRONLY and O_RDWR flags - * may be specified. On the other hand, for O_PATH any mode - * except O_EXEC is ignored. - */ - if ((flags & O_PATH) != 0) { - flags &= ~O_ACCMODE; - } else if ((flags & O_EXEC) != 0) { - if (flags & O_ACCMODE) - return (EINVAL); - } else if ((flags & O_ACCMODE) == O_ACCMODE) { - return (EINVAL); - } else { - flags = FFLAGS(flags); - } + error = openflags(&flags); + if (error != 0) + return (error); /* * Allocate a file structure. The descriptor to reference it @@ -1244,28 +1287,7 @@ openatfp(struct thread *td, int dirfd, const char *path, NDFREE_PNBUF(&nd); vp = nd.ni_vp; - /* - * Store the vnode, for any f_type. Typically, the vnode use - * count is decremented by direct call to vn_closefile() for - * files that switched type in the cdevsw fdopen() method. - */ - fp->f_vnode = vp; - - /* - * If the file wasn't claimed by devfs bind it to the normal - * vnode operations here. - */ - if (fp->f_ops == &badfileops) { - KASSERT(vp->v_type != VFIFO || (flags & O_PATH) != 0, - ("Unexpected fifo fp %p vp %p", fp, vp)); - if ((flags & O_PATH) != 0) { - finit(fp, (flags & FMASK) | (fp->f_flag & FKQALLOWED), - DTYPE_VNODE, NULL, &path_fileops); - } else { - finit_vnode(fp, flags, NULL, &vnops); - } - } - + finit_open(fp, vp, flags); VOP_UNLOCK(vp); if (flags & O_TRUNC) { error = fo_truncate(fp, 0, td->td_ucred, td); @@ -4653,21 +4675,20 @@ kern_fhopen(struct thread *td, const struct fhandle *u_fhp, int flags) struct vnode *vp; struct fhandle fhp; struct file *fp; - int fmode, error; - int indx; + int error, indx; bool named_attr; error = priv_check(td, PRIV_VFS_FHOPEN); if (error != 0) return (error); + indx = -1; - fmode = FFLAGS(flags); - /* why not allow a non-read/write open for our lockd? */ - if (((fmode & (FREAD | FWRITE)) == 0) || (fmode & O_CREAT)) - return (EINVAL); + error = openflags(&flags); + if (error != 0) + return (error); error = copyin(u_fhp, &fhp, sizeof(fhp)); if (error != 0) - return(error); + return (error); /* find the mount point */ mp = vfs_busyfs(&fhp.fh_fsid); if (mp == NULL) @@ -4685,8 +4706,8 @@ kern_fhopen(struct thread *td, const struct fhandle *u_fhp, int flags) */ named_attr = (vn_irflag_read(vp) & (VIRF_NAMEDDIR | VIRF_NAMEDATTR)) != 0; - if ((named_attr && (fmode & O_NAMEDATTR) == 0) || - (!named_attr && (fmode & O_NAMEDATTR) != 0)) { + if ((named_attr && (flags & O_NAMEDATTR) == 0) || + (!named_attr && (flags & O_NAMEDATTR) != 0)) { vput(vp); return (ENOATTR); } @@ -4696,15 +4717,13 @@ kern_fhopen(struct thread *td, const struct fhandle *u_fhp, int flags) vput(vp); return (error); } - /* - * An extra reference on `fp' has been held for us by - * falloc_noinstall(). - */ + /* Set the flags early so the finit in devfs can pick them up. */ + fp->f_flag = flags & FMASK; #ifdef INVARIANTS td->td_dupfd = -1; #endif - error = vn_open_vnode(vp, fmode, td->td_ucred, td, fp); + error = vn_open_vnode(vp, flags, td->td_ucred, td, fp); if (error != 0) { KASSERT(fp->f_ops == &badfileops, ("VOP_OPEN in fhopen() set f_ops")); @@ -4717,16 +4736,15 @@ kern_fhopen(struct thread *td, const struct fhandle *u_fhp, int flags) #ifdef INVARIANTS td->td_dupfd = 0; #endif - fp->f_vnode = vp; - finit_vnode(fp, fmode, NULL, &vnops); + finit_open(fp, vp, flags); VOP_UNLOCK(vp); - if ((fmode & O_TRUNC) != 0) { + if ((flags & O_TRUNC) != 0) { error = fo_truncate(fp, 0, td->td_ucred, td); if (error != 0) goto bad; } - error = finstall(td, fp, &indx, fmode, NULL); + error = finstall(td, fp, &indx, flags, NULL); bad: fdrop(fp, td); td->td_retval[0] = indx; diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c index c448d62e9920..4a369559111e 100644 --- a/sys/kern/vfs_vnops.c +++ b/sys/kern/vfs_vnops.c @@ -432,6 +432,9 @@ vn_open_vnode(struct vnode *vp, int fmode, struct ucred *cred, accmode_t accmode; int error; + KASSERT((fmode & O_PATH) == 0 || (fmode & O_ACCMODE) == 0, + ("%s: O_PATH and O_ACCMODE are mutually exclusive", __func__)); + if (vp->v_type == VLNK) { if ((fmode & O_PATH) == 0 || (fmode & FEXEC) != 0) return (EMLINK); From nobody Sat Apr 12 16:45:43 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZfYz3Z0Tz5sHyC; Sat, 12 Apr 2025 16:45:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZfYz2rWsz3Kb0; Sat, 12 Apr 2025 16:45:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744476343; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PKqJjW5QY/sGkmurREBcANgm7fYrQARBcV716sUt88w=; b=IR+LRzxYB6a7bkl8tC07Xffb9yizwzOWC0akJP96RI0R1fHrGer6BWJMsiLfJklCKeSdLq 1iZB1/KfLXXxSY1gmwSHKypzSNHSSAYcRqmNFjAtFH2SDv7e6Ro15tVMlbBSEneG57WgXx LcmJkhzUuZRxsY2Lc9xLJeQVo3mMh5hYuJJrq3WwQG35YrJkWOcEZxlHDRKY6VpP0ScC2B OTHA1GO4HvuonRdiLD8sBny0N2Lp24cSpAkZ04RjQZlPLxaN2q7VnGFwLA2U0b9VI0xNy5 YfDpHEgKVd6r9bhp/PZndfDiaH3okU7Vj7Jnm3aNZM1O1H94AFdHqnCSLSMfUg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744476343; a=rsa-sha256; cv=none; b=s2ZhfTkoF4Shx43CLlV1H27QscgZQKH/19uuDDYvKoScuGjjtKkYm9RWC05wVbWq/b6YMk Ppi0DdRLe8pyC7LUkzgAQ7rTjTqHCaMlK9dlgXt26P6Cfje2ueO8nJXjrbRxbrRCyX1Iaj RiJomvBXnveUtOqnxIuu490lrXCkTQC77lWHppVx6kTnBeGf+wONNM5W8gwFg3RqMtC1IT /XuPCb8TpmgomtymFolWoTiFcfq8DhTIzQHH34aQvcUkthbO0n6c+L8kgDt4fXhF7FrJA+ dUGxnw9huppytFec2Ns1C4uSO821RiXoM+IjQifyP25LMgdQgTXE1nNzcXt0Og== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744476343; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PKqJjW5QY/sGkmurREBcANgm7fYrQARBcV716sUt88w=; b=D2w0tWCBXil9QojJHsyQDjU8r+NnsvA04cuvGZ0SYi2T0hjSXJJ57B47BCA4WYEVjZShiA uRExpM0dkGudVNRKlI/SlKtJUO7Y2CuYBSdKvs4wSFbPtABMcoOZRBB+iPDYa4KaXcDAan 8BG5g6WupjIUNIrShQ9BYLvK4wyXEIXn3r7lLZK694ul9Y0kO5x8HKrJUgS8e1sxlNxAgL 9WnKEGwwAOtjHgD/4p/uWFjRdf+FIqkRlt4Y5AxvP118fbPUlwdEGRXGqDRYsg7mkcIWnO YCj7yowWkR5eMY2Gx29uxPkcDE0POv0Oyxsyiaef+rM+OPkl7QUvNQLMdelbGA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZfYz2Rfkz9Vx; Sat, 12 Apr 2025 16:45:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53CGjhh7043421; Sat, 12 Apr 2025 16:45:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53CGjhMl043418; Sat, 12 Apr 2025 16:45:43 GMT (envelope-from git) Date: Sat, 12 Apr 2025 16:45:43 GMT Message-Id: <202504121645.53CGjhMl043418@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: a6165709e3c8 - main - LinuxKPI: 802.11: further locking workarounds fro crypto updates List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a6165709e3c8ba4a0bee18aead6ca8ea2b033933 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=a6165709e3c8ba4a0bee18aead6ca8ea2b033933 commit a6165709e3c8ba4a0bee18aead6ca8ea2b033933 Author: Bjoern A. Zeeb AuthorDate: 2025-04-11 23:01:55 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-12 16:44:26 +0000 LinuxKPI: 802.11: further locking workarounds fro crypto updates There are cases when net80211 calls into crypto updates with the ic lock held (not (just) the nt lock). We have to unlock that as well and track the unlock like we do for the nt to avoid panics when we later can sleep (on the wiphy [sx] lock). Sponsored by: The FreeBSD Foundation MFC after: 3 days Reported by: rm Tested by: rm PR: 285729 Fixes: b8dfc3ecf703 Differential Revision: https://reviews.freebsd.org/D49791 --- sys/compat/linuxkpi/common/src/linux_80211.c | 51 ++++++++++++++++++---------- sys/compat/linuxkpi/common/src/linux_80211.h | 1 + 2 files changed, 35 insertions(+), 17 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 8368ed0d563d..3548ad04b795 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -1427,7 +1427,7 @@ lkpi_iv_key_update_begin(struct ieee80211vap *vap) struct lkpi_hw *lhw; struct ieee80211_hw *hw; struct lkpi_vif *lvif; - bool islocked; + bool icislocked, ntislocked; ic = vap->iv_ic; lhw = ic->ic_softc; @@ -1435,28 +1435,35 @@ lkpi_iv_key_update_begin(struct ieee80211vap *vap) lvif = VAP_TO_LVIF(vap); nt = &ic->ic_sta; - islocked = IEEE80211_NODE_IS_LOCKED(nt); + icislocked = IEEE80211_IS_LOCKED(ic); + ntislocked = IEEE80211_NODE_IS_LOCKED(nt); #ifdef LINUXKPI_DEBUG_80211 if (linuxkpi_debug_80211 & D80211_TRACE_HW_CRYPTO) - ic_printf(vap->iv_ic, "%s: tid %d vap %p nt %p %slocked " - "lvif nt_unlocked %d\n", __func__, curthread->td_tid, - vap, nt, islocked ? "" : "un", lvif->nt_unlocked); + ic_printf(ic, "%s: tid %d vap %p ic %p %slocked nt %p %slocked " + "lvif ic_unlocked %d nt_unlocked %d\n", __func__, + curthread->td_tid, vap, + ic, icislocked ? "" : "un", nt, ntislocked ? "" : "un", + lvif->ic_unlocked, lvif->nt_unlocked); #endif /* This is inconsistent net80211 locking to be fixed one day. */ - if (islocked) + if (icislocked) + IEEE80211_UNLOCK(ic); + if (ntislocked) IEEE80211_NODE_UNLOCK(nt); wiphy_lock(hw->wiphy); /* - * nt_unlocked could be a bool given we are under the lock and there + * ic/nt_unlocked could be a bool given we are under the lock and there * must only be a single thread. * In case anything in the future disturbs the order the refcnt will * help us catching problems a lot easier. */ - if (islocked) + if (icislocked) + refcount_acquire(&lvif->ic_unlocked); + if (ntislocked) refcount_acquire(&lvif->nt_unlocked); } @@ -1468,7 +1475,7 @@ lkpi_iv_key_update_end(struct ieee80211vap *vap) struct lkpi_hw *lhw; struct ieee80211_hw *hw; struct lkpi_vif *lvif; - bool islocked; + bool icislocked, ntislocked; ic = vap->iv_ic; lhw = ic->ic_softc; @@ -1476,14 +1483,18 @@ lkpi_iv_key_update_end(struct ieee80211vap *vap) lvif = VAP_TO_LVIF(vap); nt = &ic->ic_sta; - islocked = IEEE80211_NODE_IS_LOCKED(nt); - MPASS(!islocked); + icislocked = IEEE80211_IS_LOCKED(ic); + MPASS(!icislocked); + ntislocked = IEEE80211_NODE_IS_LOCKED(nt); + MPASS(!ntislocked); #ifdef LINUXKPI_DEBUG_80211 if (linuxkpi_debug_80211 & D80211_TRACE_HW_CRYPTO) - ic_printf(vap->iv_ic, "%s: tid %d vap %p nt %p %slocked " - "lvif nt_unlocked %d\n", __func__, curthread->td_tid, - vap, nt, islocked ? "" : "un", lvif->nt_unlocked); + ic_printf(ic, "%s: tid %d vap %p ic %p %slocked nt %p %slocked " + "lvif ic_unlocked %d nt_unlocked %d\n", __func__, + curthread->td_tid, vap, + ic, icislocked ? "" : "un", nt, ntislocked ? "" : "un", + lvif->ic_unlocked, lvif->nt_unlocked); #endif /* @@ -1491,11 +1502,17 @@ lkpi_iv_key_update_end(struct ieee80211vap *vap) * In case the refcnt gets out of sync locking in net80211 will * quickly barf as well (trying to unlock a lock not held). */ - islocked = refcount_release_if_last(&lvif->nt_unlocked); + icislocked = refcount_release_if_last(&lvif->ic_unlocked); + ntislocked = refcount_release_if_last(&lvif->nt_unlocked); wiphy_unlock(hw->wiphy); - /* This is inconsistent net80211 locking to be fixed one day. */ - if (islocked) + /* + * This is inconsistent net80211 locking to be fixed one day. + * ic before nt to avoid a LOR. + */ + if (icislocked) + IEEE80211_LOCK(ic); + if (ntislocked) IEEE80211_NODE_LOCK(nt); } #endif diff --git a/sys/compat/linuxkpi/common/src/linux_80211.h b/sys/compat/linuxkpi/common/src/linux_80211.h index da377280b1c0..ebf02994af47 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.h +++ b/sys/compat/linuxkpi/common/src/linux_80211.h @@ -187,6 +187,7 @@ struct lkpi_vif { struct lkpi_sta *lvif_bss; + int ic_unlocked; /* Count of ic unlocks pending (*mo_set_key) */ int nt_unlocked; /* Count of nt unlocks pending (*mo_set_key) */ bool lvif_bss_synched; bool added_to_drv; /* Driver knows; i.e. we called add_interface(). */ From nobody Sat Apr 12 16:51:49 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZfj23WmKz5sJyX; Sat, 12 Apr 2025 16:51: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZfj20z42z3NS6; Sat, 12 Apr 2025 16:51:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744476710; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FZnfB7dDhaQsKu0onIoTu79yce0DTZuQeLSjarybjMk=; b=HhhmGqgPhD5wI7ZsRb2gKd1JMfneKCZj8yVK0FNApSDF+yk7sBLv79zxZcq4jZOx+E48vq 1eIaryXVpi+PaKRdoy2smSxlr5AEZMJ9y00dgJ4MW2ylxXG+0Sn/Mnz9OyuuI1FFYmBmms 8DtG3bXj5EZvcGHi/Qt0sxzT1TUM0XnQhTbI+Iurt0Zw93FxMcwlVohxaEK180H5TDICQY iSMXI3bkuQWT04BUcCH84sdzY7MeekY28A9cCEHMNOzyabKld8jsazc/fM/NFRtcLCLrpn Neq1KEk7odVjaNsyoD8BDvJRvA+pw8i6aWCmOFcT6WEnky1ChbYIt+qhuGK64A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744476710; a=rsa-sha256; cv=none; b=DEgwBTngVJSfUqZNBJ3XIVDLP762107/2j5U0cY74XLWfj9QXdoyUYQ5Vhx2fO9Wer20t5 9tH85CCBrRFPOl7TJApuodwzqloNwBqV23x+n0+HStKoBTApoDvGJJZoaCYHyy8R7B0I25 ili/axPBptNvMKnfNL9v7JLvpk5R3MKzGbOvcLI3M4Y41rP7CiUqpAnO0iWI2838/6YPtJ JrNFVthWhxojTNHkMMaJl8692KqN9L/lJrH0cyuICp2SORvm4xivPq4xtzRQNSSxmACxsn 6uVqUkf8IuYyfFLnh9tP2hCIAdoKATCOz74aBDGd8QUDnjNDOnPRU9N2bLXZrg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744476710; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FZnfB7dDhaQsKu0onIoTu79yce0DTZuQeLSjarybjMk=; b=tPba6P9RFC4WrBrJQZadJz7DGZ6YG+aXVRG5qpmHyt+m0kPlcoI4hgL5SuuGN/QxxcIh7g H3rb6YzA1BMqI04u5lEpahC55Ru4BXplG7rZQEsYqkNR3LEyPpy0DP20NYETOXkpfYTPB4 u0weYFX8/J8GFagO8KB2qO4C3/JbpN0IMqfFQfyXGM9deYMMhp7cxpqvBb1M/Q3byxziEO LTs8f3OCt5qwYBSjRquaSfZFcOohlZG+QtoTUMDjfPxB4bQPjGOWBHSj5glMZJnFU8dojE z6t3XH+mjtS6eLs39EDsTevfFJfB12a1YTQJiqXAvrFABmwNj/v+swGpt9CUYA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZfj20Wgvz9WZ; Sat, 12 Apr 2025 16:51:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53CGpn5A060392; Sat, 12 Apr 2025 16:51:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53CGpnEM060389; Sat, 12 Apr 2025 16:51:49 GMT (envelope-from git) Date: Sat, 12 Apr 2025 16:51:49 GMT Message-Id: <202504121651.53CGpnEM060389@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 84e1eb50dd95 - main - net80211/regdomain: try to sort out TW List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 84e1eb50dd9529b234e568ccb6f6c37f897688dc Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=84e1eb50dd9529b234e568ccb6f6c37f897688dc commit 84e1eb50dd9529b234e568ccb6f6c37f897688dc Author: Bjoern A. Zeeb AuthorDate: 2025-04-11 13:12:41 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-12 16:49:39 +0000 net80211/regdomain: try to sort out TW Try to help people in TW to get onto 11ac as well by adding the missing entries to regdomain.xml. Use at your own risk. regdomain.xml is unmaintanable in the modern world with too many tiny difference between countries. We'll need a different way to generate this or a different representation long term. Sponsored by: The FreeBSD Foundation Reported by: lwhsu Tested by: lwhsu MFC after: 3 days Reviewed by: lwhsu, adrian Differential Revision: https://reviews.freebsd.org/D49776 --- lib/lib80211/regdomain.xml | 254 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 253 insertions(+), 1 deletion(-) diff --git a/lib/lib80211/regdomain.xml b/lib/lib80211/regdomain.xml index 557af0349cb0..9116e54c31cf 100644 --- a/lib/lib80211/regdomain.xml +++ b/lib/lib80211/regdomain.xml @@ -1187,6 +1187,202 @@ + + TAIWAN + + + + 30 + IEEE80211_CHAN_B + + + + + + + 30 + IEEE80211_CHAN_G + + + + + + + 30 + IEEE80211_CHAN_G + IEEE80211_CHAN_HT20 + + + + 30 + IEEE80211_CHAN_G + IEEE80211_CHAN_HT40 + + + + + + + 23 + + + + 23 + IEEE80211_CHAN_DFS + + + + 23 + IEEE80211_CHAN_DFS + + + + 30 + + + + + + + 23 + IEEE80211_CHAN_HT20 + + + + 23 + IEEE80211_CHAN_HT40 + + + + + 23 + IEEE80211_CHAN_HT20 + IEEE80211_CHAN_DFS + + + + 23 + IEEE80211_CHAN_HT40 + IEEE80211_CHAN_DFS + + + + + 23 + IEEE80211_CHAN_HT20 + IEEE80211_CHAN_DFS + + + + 23 + IEEE80211_CHAN_HT40 + IEEE80211_CHAN_DFS + + + + + 30 + IEEE80211_CHAN_HT20 + + + + 30 + IEEE80211_CHAN_HT40 + + + + + + + 23 + IEEE80211_CHAN_HT20 + IEEE80211_CHAN_VHT20 + + + + 23 + IEEE80211_CHAN_HT40 + IEEE80211_CHAN_VHT40 + + + + 23 + IEEE80211_CHAN_HT40 + IEEE80211_CHAN_VHT80 + + + + + 23 + IEEE80211_CHAN_HT20 + IEEE80211_CHAN_VHT20 + IEEE80211_CHAN_DFS + + + + 23 + IEEE80211_CHAN_HT40 + IEEE80211_CHAN_VHT40 + IEEE80211_CHAN_DFS + + + + 23 + IEEE80211_CHAN_HT40 + IEEE80211_CHAN_VHT80 + IEEE80211_CHAN_DFS + + + + + 23 + IEEE80211_CHAN_HT20 + IEEE80211_CHAN_VHT20 + IEEE80211_CHAN_DFS + + + + 23 + IEEE80211_CHAN_HT40 + IEEE80211_CHAN_VHT40 + IEEE80211_CHAN_DFS + + + + 23 + IEEE80211_CHAN_HT40 + IEEE80211_CHAN_VHT80 + IEEE80211_CHAN_DFS + + + + 23 + IEEE80211_CHAN_HT40 + IEEE80211_CHAN_VHT160 + IEEE80211_CHAN_DFS + + + + + 30 + IEEE80211_CHAN_HT20 + IEEE80211_CHAN_VHT20 + + + + 30 + IEEE80211_CHAN_HT40 + IEEE80211_CHAN_VHT40 + + + + 30 + IEEE80211_CHAN_HT40 + IEEE80211_CHAN_VHT80 + + + + @@ -1781,7 +1977,7 @@ 760 Syria - 158 Taiwan + 158 Taiwan 764 Thailand @@ -1904,6 +2100,11 @@ IEEE80211_CHAN_A + + 5120 5240 + 20 20 + IEEE80211_CHAN_A + 5160 5240 20 20 @@ -1925,6 +2126,11 @@ IEEE80211_CHAN_A + + 5260 5340 + 20 20 + IEEE80211_CHAN_A + 5260 5340 20 20 @@ -1941,6 +2147,11 @@ IEEE80211_CHAN_A + + 5480 5720 + 20 20 + IEEE80211_CHAN_A + 5480 5700 20 20 @@ -1961,7 +2172,38 @@ 160 20 IEEE80211_CHAN_A + + + 5500 5720 + 40 20 + IEEE80211_CHAN_A + + + 5500 5720 + 80 20 + IEEE80211_CHAN_A + + + 5745 5825 + 20 20 + IEEE80211_CHAN_A + + + 5745 5845 + 20 20 + IEEE80211_CHAN_A + + + 5745 5845 + 40 20 + IEEE80211_CHAN_A + + + 5745 5845 + 20 20 + IEEE80211_CHAN_A + 5745 5865 20 20 @@ -1972,6 +2214,11 @@ 40 20 IEEE80211_CHAN_A + + 5745 5845 + 40 20 + IEEE80211_CHAN_A + 5745 5805 80 20 @@ -2027,6 +2274,11 @@ 20 20 IEEE80211_CHAN_A + + 5500 5720 + 40 20 + IEEE80211_CHAN_A + 5500 5580 40 20 From nobody Sat Apr 12 17:03:26 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZfyQ4tXCz5sKcD; Sat, 12 Apr 2025 17:03: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZfyQ49rwz3T95; Sat, 12 Apr 2025 17:03:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744477406; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u1EL4Yqave7jNuR4iULfcTmjNWsXmk5hJgKLZ/ABW00=; b=qh9JRdny3i3va6z57kZDuV3FTqqLtxsZFXHcxnuXq5QjDNMcz8X6+UQbEsUYK8qcdJBORE cblCzir7n1JXQ7EjzxBjRxCwn1cqnvvpaCo0u0MQ5cRyjv8BaT0aVrsQF7cagpf+a82SxS rFyvM74ezZFxyTruBBqrXv0dC2V8qAxUYptEz4EU52Jw1AHfuOIXXcfyJkX9Ub3UR6NqeO pvwLNa9XAQfUAiaU1gA6VXa3I3gkQzje2u9oOT4RP0vrQP9YDQk56gEMoUXy3CN6b60oHp cYC5+OdPn2pU+dht0+iZsNmZfCVDl/xD/naxARnPEmoT5b8vD/mLjYlUbgoEug== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744477406; a=rsa-sha256; cv=none; b=wkLdEcYU4AnvYydYB0XGbbrmvAneH/Khqjh8NqDQHL90G8OfVNOc7RBG0GQv2Wv4orQYVq iprvEg9LA1GsulQ8s2aiuxqbC0ClldNBNAWPKMGHCDRH/upsLUy9dClo+lDCKdy0poBmRO B8YqyK2piQDSbgRCcnakOq2S5jEFrJt28d8exiq/xBfl9eYo5s9lUYJjksyp6aDuAr4YAR KaigIKQMtDWw14dsTlS4mhqBPvgImnTQAC+xbVBltBJpZzNjjXEC+O10B5gwZ5pmDx0lij v0TXnAmlvtNjGiOfIfZcOIM+YozBbLwhw4EabJAAsR5N0qf9MaDGqHor0cYN6A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744477406; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u1EL4Yqave7jNuR4iULfcTmjNWsXmk5hJgKLZ/ABW00=; b=Ubp5rlsIf6xw7EHvqTWEeE0WCfgnw1IusPn9SwIrMTehaVNy/+JSdTCnBMW/1iCrVj4j9e 9lyYpPvEcW/7qkeXtOZu2fSbuUfyWOnZKT+Ow199qKKkkPdRvDhXeQuRe+DVJ78h5lXqj6 noTBf3vKdUEVaxEd8u3fr7AKfN2jHygBMbZRzz81LW0VYqnC+zbu+y+vlk6K8RFKd4BeJk 36EWy2IeAIxkfjhSyJbvgyBu8Q7WuYOxSRSL3OkAprFvCRE6VbzMJqfxtZn3TBCzvQgz4P /a66TaZ6FnEtbmwFTABpe4iVMxOM86kDpxTDDjRazQZvDrDRZe+IX3hETU1NRQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZfyQ3dLLz9pP; Sat, 12 Apr 2025 17:03:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53CH3QsT080841; Sat, 12 Apr 2025 17:03:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53CH3Qle080838; Sat, 12 Apr 2025 17:03:26 GMT (envelope-from git) Date: Sat, 12 Apr 2025 17:03:26 GMT Message-Id: <202504121703.53CH3Qle080838@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Maxim Konovalov Subject: git: f29d155577cf - main - reboot.8: Xr reboot(2) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: maxim X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f29d155577cfac4d04484535a320f43683133c62 Auto-Submitted: auto-generated The branch main has been updated by maxim: URL: https://cgit.FreeBSD.org/src/commit/?id=f29d155577cfac4d04484535a320f43683133c62 commit f29d155577cfac4d04484535a320f43683133c62 Author: Maxim Konovalov AuthorDate: 2025-04-12 17:02:08 +0000 Commit: Maxim Konovalov CommitDate: 2025-04-12 17:02:08 +0000 reboot.8: Xr reboot(2) PR: 259439 MFC after: 1 week --- sbin/reboot/reboot.8 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sbin/reboot/reboot.8 b/sbin/reboot/reboot.8 index 59cbd9de7519..0ddcee643244 100644 --- a/sbin/reboot/reboot.8 +++ b/sbin/reboot/reboot.8 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd February 8, 2024 +.Dd April 12, 2025 .Dt REBOOT 8 .Os .Sh NAME @@ -213,6 +213,7 @@ reboot -r .Ed .Sh SEE ALSO .Xr kenv 1 , +.Xr reboot 2 , .Xr getutxent 3 , .Xr ipmi 4 , .Xr boot 8 , From nobody Sat Apr 12 18:14:55 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZhXw2XXKz5sRZd; Sat, 12 Apr 2025 18:14:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZhXw0Rgvz3xls; Sat, 12 Apr 2025 18:14:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744481696; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vnR/QB+57d9JNdP/J1izlSm/sWBDvTeCC9b8hQTtFx0=; b=LnapCtFtC7xKjwwVQEsiuAjGRJ37uk2JA9H9EVxG92qJmaUcqiL6c8iKTc46zPyhP2eA7D IcsvGA61Z7qJuPdhwiMeI/K6QSAljxxw4t3RE8P6+NRQCE3eg3LhXI/tDGuTaaSJGEKgqQ W3VRPzMrDgp9mLbkVid/i0fouT/i/InR4ClDj7svM5QX9X4O0DXVmlBkPIciljcRo3HOix dRIZ/a70mK5K5uPqzAyu5cj2yH3gW9lzVCN9623+yTeedgp+JyzUZVp5wc9dNwOtcjFjvH YNVq4g+4BwPPM5YmUHTajGMGu2zyzphCuxpF9C8UIOuLRwIIuB/bIKlueQJcGA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744481696; a=rsa-sha256; cv=none; b=NBmbpwxQDfmdiSY31Q4mr4K/TF1Z7OI4fuRBz8eGmbntgPBQ7ilFM2SLzDiu2fTZLHHVfv fAq3/PgZNgIALjDN8feNBG2Ql1EQHNEul4kEzOT8yQtklU1dpimlHT3n0qMukEl48n/2Lk RDqGnOT7rT1Ot8kLBY8LK2aSl3gycJ8uscg9wl06YzhINQDVHR3uns7n6Yc/r3LdlQrIyk Pl/jk1uXuMA59FdIXw4Wj42MON7yMal+78810WVCZyiLB15fcSzWTNCtWd6FMPZWgP1x3v h1fNjK4C32pOR6kpmIyBjNC9wMu8fi2njo1uTMtKZX29oKFFaVJ3DJWm5H6AiQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744481696; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vnR/QB+57d9JNdP/J1izlSm/sWBDvTeCC9b8hQTtFx0=; b=rgdbKj0DCGjLWvooRQ2LI28mKdTlHPd0V1A8Hgl/32Td4ODf7uzEUHCKVcTup029wGLzpJ ejckZr4knyGB8rBLHH3szKX6Oj48z35Ns1ukMGiZJUd8Aw5OqSffTsJS6kuBpIh4vNb0Xf CqVA5PhHAfYaY5jIBF6de9ei45BatJpBJXmAMCbnspu8C5qgDxKUQE6chQ57oAFMVb5M48 by6mxrPOQmkjPgDTLUEB9UCmwc6ckTsmeaAGIYl17as7uKOKdJVnhJKfDklIxWzPXRBurX jp4zWGlwIdqOKZIOa27TSL4E+SfypyHsl27GPdyLHeWGuwlt4g5f6SzpFUOO4Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZhXv70hszCjP; Sat, 12 Apr 2025 18:14:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53CIEti1012586; Sat, 12 Apr 2025 18:14:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53CIEtxr012583; Sat, 12 Apr 2025 18:14:55 GMT (envelope-from git) Date: Sat, 12 Apr 2025 18:14:55 GMT Message-Id: <202504121814.53CIEtxr012583@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 2cb892c0b6a5 - main - arch.7: Replace 13.x with 13.5 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2cb892c0b6a525ed604f3abdb3fc62e05af4a60b Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=2cb892c0b6a525ed604f3abdb3fc62e05af4a60b commit 2cb892c0b6a525ed604f3abdb3fc62e05af4a60b Author: Ed Maste AuthorDate: 2025-04-12 18:13:14 +0000 Commit: Ed Maste CommitDate: 2025-04-12 18:14:43 +0000 arch.7: Replace 13.x with 13.5 13.5 is the final FreeBSD 13.x release. Sponsored by: The FreeBSD Foundation --- share/man/man7/arch.7 | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/share/man/man7/arch.7 b/share/man/man7/arch.7 index fa5254849e3e..273c504ebaff 100644 --- a/share/man/man7/arch.7 +++ b/share/man/man7/arch.7 @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 11, 2025 +.Dd April 12, 2025 .Dt ARCH 7 .Os .Sh NAME @@ -104,17 +104,17 @@ Discontinued architectures are shown in the following table. .It armeb Ta 8.0 Ta 11.4 .It armv6 Ta 10.0 Ta 14.x .It ia64 Ta 5.0 Ta 10.4 -.It mips Ta 8.0 Ta 13.x -.It mipsel Ta 9.0 Ta 13.x -.It mipselhf Ta 12.0 Ta 13.x -.It mipshf Ta 12.0 Ta 13.x -.It mipsn32 Ta 9.0 Ta 13.x -.It mips64 Ta 9.0 Ta 13.x -.It mips64el Ta 9.0 Ta 13.x -.It mips64elhf Ta 12.0 Ta 13.x -.It mips64hf Ta 12.0 Ta 13.x +.It mips Ta 8.0 Ta 13.5 +.It mipsel Ta 9.0 Ta 13.5 +.It mipselhf Ta 12.0 Ta 13.5 +.It mipshf Ta 12.0 Ta 13.5 +.It mipsn32 Ta 9.0 Ta 13.5 +.It mips64 Ta 9.0 Ta 13.5 +.It mips64el Ta 9.0 Ta 13.5 +.It mips64elhf Ta 12.0 Ta 13.5 +.It mips64hf Ta 12.0 Ta 13.5 .It pc98 Ta 2.2 Ta 11.4 -.It riscv64sf Ta 12.0 Ta 13.x +.It riscv64sf Ta 12.0 Ta 13.5 .It sparc64 Ta 5.0 Ta 12.4 .El .Ss Type sizes From nobody Sat Apr 12 20:06:36 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZl2110lHz5sbhf; Sat, 12 Apr 2025 20:06:49 +0000 (UTC) (envelope-from eduardo@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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZl203sKPz3mJj; Sat, 12 Apr 2025 20:06:48 +0000 (UTC) (envelope-from eduardo@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744488408; 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=nJpIqt4CeOHslYsxB7p7hAf/tACpFeC9hQ3lcvjfKeI=; b=E9slsmXOZtqhBgvdxN+5QGqziHYyYBNES4WFTCJLveogQ7Kv2wuUxezqkiA4YRDGHasVkA L/iD35DPzY9rbj5u5nHC77s1JxdlcHhRMO16Jp+Hm7zzDUjZqjMLTNJzaPI4dnjwl8b3UP NREqil0N4uAzd9m2+bX/fgSM69+yVV7yLsUccw+TXuRNHRTuXPddH/9qaFhO0qy3jcWIQy EqfaCRmeP/pwGS6KJxjrAYdfPC0N7xHnS6uaeHEAqelctYFEDRzlDAPICAhM/RaXb6xQrn /n6iFHQl126Kknb6dTpGaIWQEtGZxDFhDC6PY55PJFvA/kB6ljMJlPu8g4o7jg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744488408; a=rsa-sha256; cv=none; b=v98aXRvqBYCX50lACAFO74aOZD/kDXgwQSbn2IkqYzXRRTj1qu3XVlmErVxQvqKByAlDK6 tW26CM3JDdcxOPOLxQyUA3l5SbTPIUDS4auqPAZj8sN8JPM2WpGviWz4HCJ2652F0mEZ8N QvzuwN0JzcmA7cFiF2EJhMnmJtv/aHova/EhiZ5vPFM2mdAqrdSUvVkGN66bpkvkmcp6po YcuhKZ20yVde1rAcwnr2inIOB89iUBUNKHjiP1bPfCEM6AZWfVwkbHsbJ4KkifaTkzJ/0K H0X2mUiTHRVKsYiNcWKqzl2tliqdlwcsSIAb6GFR1CGGtuTgJZ+wWgn8Zuvp7w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744488408; 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=nJpIqt4CeOHslYsxB7p7hAf/tACpFeC9hQ3lcvjfKeI=; b=DYnrhZWidftyTNEJddUo7RyRWIHwaJ0vyPhj5A61RfjySOQwE/pgFKMrBVB1KLWoD8m5hY 8z00+jLn26wZ58U8O5iRYDLoyZsA36zzV8dUfK5fg0uHqjLscG7jenjXxLF+5xR72TPUrj xTWwgBL8CBd7y+FmRX6Pp6r8LbQNQ4symhKpzxV8NbTnP0WI0+8x1Ks6gp0IRKnhuKQsFS Ghxtb6vp3B0pSI2ePnkrAzpb2gDd+yybgjzGvLYpnhBkxcBxWsrOIrMGP6dGWvsGjosiOK E1sjzm7lGhgieTiSdmpKNfxor+BP0723KblskrFefRUZl9O6cTUiQDP+NI2e2g== Received: from mail-qt1-f170.google.com (mail-qt1-f170.google.com [209.85.160.170]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) (Authenticated sender: eduardo) by smtp.freebsd.org (Postfix) with ESMTPSA id 4ZZl202SMGz19w4; Sat, 12 Apr 2025 20:06:48 +0000 (UTC) (envelope-from eduardo@freebsd.org) Received: by mail-qt1-f170.google.com with SMTP id d75a77b69052e-476a2b5dffcso5822311cf.3; Sat, 12 Apr 2025 13:06:48 -0700 (PDT) X-Forwarded-Encrypted: i=1; AJvYcCW/ufB8GGZ0qg8i0LygsNOCbp51SUVsgQKMIx7QhSiyLRR6tVo4jABGsx7TFUFPOwZbuj+v+RwyueoPXQlANg39uBGHCGA=@freebsd.org, AJvYcCXh84Df0OCfEBaqumWrhV2hME3j7Th1kwFU++zLtWjs/v4MFsMqgpW3xX0MdhDXbzUziWTpwMB0Ecr0QI49PeBNlKzC@freebsd.org X-Gm-Message-State: AOJu0Yw9ArsjbEmVyENpX02DU/mtpnbBqnI45jg/UXjC1iXmG/kTc4Bi XFt3rfcHF224zmN1E7nW1deYz7FSG0a5f829Dp/3cIR2goPyiHxNDpqKWIjNpAsN8DZuix7pBIt zdRxYhEpxEtOcxxaKTjLs69VLb9g= X-Google-Smtp-Source: AGHT+IF36AfynGiSFwnHWkkZuYcENQ4ni270OThuTdwLZlAGwJl9ObwrIXtrm2OqxPJi0qb6mOs1iSiYr8I+uBVOdc0= X-Received: by 2002:a05:622a:10f:b0:474:f6db:967 with SMTP id d75a77b69052e-4797755aa17mr38894951cf.8.1744488407499; Sat, 12 Apr 2025 13:06:47 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 References: <202504121651.53CGpnEM060389@gitrepo.freebsd.org> In-Reply-To: <202504121651.53CGpnEM060389@gitrepo.freebsd.org> From: Nuno Teixeira Date: Sat, 12 Apr 2025 21:06:36 +0100 X-Gmail-Original-Message-ID: X-Gm-Features: ATxdqUFsyh0RCVVECTcu255wF3AQbzKs1orrlJlG8x1Q2W5jNk4AwaRWCfZcth4 Message-ID: Subject: Re: git: 84e1eb50dd95 - main - net80211/regdomain: try to sort out TW To: "Bjoern A. Zeeb" Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: multipart/alternative; boundary="000000000000d8079e06329a5bdc" --000000000000d8079e06329a5bdc Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello, A quick search on regdomain.xml leads to regulatory.db used in linux: https://manpages.ubuntu.com/manpages/lunar/man5/regulatory.db.5.html Maybe this is of interest to use in FreeBSD too? Cheers, Bjoern A. Zeeb escreveu (s=C3=A1bado, 12/04/2025 =C3=A0(s)= 17:51): > The branch main has been updated by bz: > > URL: > https://cgit.FreeBSD.org/src/commit/?id=3D84e1eb50dd9529b234e568ccb6f6c37= f897688dc > > commit 84e1eb50dd9529b234e568ccb6f6c37f897688dc > Author: Bjoern A. Zeeb > AuthorDate: 2025-04-11 13:12:41 +0000 > Commit: Bjoern A. Zeeb > CommitDate: 2025-04-12 16:49:39 +0000 > > net80211/regdomain: try to sort out TW > > Try to help people in TW to get onto 11ac as well by adding the missi= ng > entries to regdomain.xml. Use at your own risk. > > regdomain.xml is unmaintanable in the modern world with too many tiny > difference between countries. We'll need a different way to generate > this or a different representation long term. > > Sponsored by: The FreeBSD Foundation > Reported by: lwhsu > Tested by: lwhsu > MFC after: 3 days > Reviewed by: lwhsu, adrian > Differential Revision: https://reviews.freebsd.org/D49776 > --- > lib/lib80211/regdomain.xml | 254 > ++++++++++++++++++++++++++++++++++++++++++++- > 1 file changed, 253 insertions(+), 1 deletion(-) > > diff --git a/lib/lib80211/regdomain.xml b/lib/lib80211/regdomain.xml > index 557af0349cb0..9116e54c31cf 100644 > --- a/lib/lib80211/regdomain.xml > +++ b/lib/lib80211/regdomain.xml > @@ -1187,6 +1187,202 @@ > > > > + > + TAIWAN > + > + > + > + 30 > + IEEE80211_CHAN_B > + > + > + > + > + > + > + 30 > + IEEE80211_CHAN_G > + > + > + > + > + > + > + 30 > + IEEE80211_CHAN_G > + IEEE80211_CHAN_HT20 > + > + > + > + 30 > + IEEE80211_CHAN_G > + IEEE80211_CHAN_HT40 > + > + > + > + > + > + > + 23 > + > + > + > + 23 > + IEEE80211_CHAN_DFS > + > + > + > + 23 > + IEEE80211_CHAN_DFS > + > + > + > + 30 > + > + > + > + > + > + > + 23 > + IEEE80211_CHAN_HT20 > + > + > + > + 23 > + IEEE80211_CHAN_HT40 > + > + > + > + > + 23 > + IEEE80211_CHAN_HT20 > + IEEE80211_CHAN_DFS > + > + > + > + 23 > + IEEE80211_CHAN_HT40 > + IEEE80211_CHAN_DFS > + > + > + > + > + 23 > + IEEE80211_CHAN_HT20 > + IEEE80211_CHAN_DFS > + > + > + > + 23 > + IEEE80211_CHAN_HT40 > + IEEE80211_CHAN_DFS > + > + > + > + > + 30 > + IEEE80211_CHAN_HT20 > + > + > + > + 30 > + IEEE80211_CHAN_HT40 > + > + > + > + > + > + > + 23 > + IEEE80211_CHAN_HT20 > + IEEE80211_CHAN_VHT20 > + > + > + > + 23 > + IEEE80211_CHAN_HT40 > + IEEE80211_CHAN_VHT40 > + > + > + > + 23 > + IEEE80211_CHAN_HT40 > + IEEE80211_CHAN_VHT80 > + > + > + > + > + 23 > + IEEE80211_CHAN_HT20 > + IEEE80211_CHAN_VHT20 > + IEEE80211_CHAN_DFS > + > + > + > + 23 > + IEEE80211_CHAN_HT40 > + IEEE80211_CHAN_VHT40 > + IEEE80211_CHAN_DFS > + > + > + > + 23 > + IEEE80211_CHAN_HT40 > + IEEE80211_CHAN_VHT80 > + IEEE80211_CHAN_DFS > + > + > + > + > + 23 > + IEEE80211_CHAN_HT20 > + IEEE80211_CHAN_VHT20 > + IEEE80211_CHAN_DFS > + > + > + > + 23 > + IEEE80211_CHAN_HT40 > + IEEE80211_CHAN_VHT40 > + IEEE80211_CHAN_DFS > + > + > + > + 23 > + IEEE80211_CHAN_HT40 > + IEEE80211_CHAN_VHT80 > + IEEE80211_CHAN_DFS > + > + > + > + 23 > + IEEE80211_CHAN_HT40 > + IEEE80211_CHAN_VHT160 > + IEEE80211_CHAN_DFS > + > + > + > + > + 30 > + IEEE80211_CHAN_HT20 > + IEEE80211_CHAN_VHT20 > + > + > + > + 30 > + IEEE80211_CHAN_HT40 > + IEEE80211_CHAN_VHT40 > + > + > + > + 30 > + IEEE80211_CHAN_HT40 > + IEEE80211_CHAN_VHT80 > + > + > + > + > > > > @@ -1781,7 +1977,7 @@ > 760 Syria > > > - 158 Taiwan > + 158 Taiwan > > > 764 Thailand > @@ -1904,6 +2100,11 @@ > IEEE80211_CHAN_A > > > + > + 5120 5240 > + 20 20 > + IEEE80211_CHAN_A > + > > 5160 5240 > 20 20 > @@ -1925,6 +2126,11 @@ > IEEE80211_CHAN_A > > > + > + 5260 5340 > + 20 20 > + IEEE80211_CHAN_A > + > > 5260 5340 > 20 20 > @@ -1941,6 +2147,11 @@ > IEEE80211_CHAN_A > > > + > + 5480 5720 > + 20 20 > + IEEE80211_CHAN_A > + > > 5480 5700 > 20 20 > @@ -1961,7 +2172,38 @@ > 160 20 > IEEE80211_CHAN_A > > + > + > + 5500 5720 > + 40 20 > + IEEE80211_CHAN_A > + > + > + 5500 5720 > + 80 20 > + IEEE80211_CHAN_A > + > > + > + 5745 5825 > + 20 20 > + IEEE80211_CHAN_A > + > + > + 5745 5845 > + 20 20 > + IEEE80211_CHAN_A > + > + > + 5745 5845 > + 40 20 > + IEEE80211_CHAN_A > + > + > + 5745 5845 > + 20 20 > + IEEE80211_CHAN_A > + > > 5745 5865 > 20 20 > @@ -1972,6 +2214,11 @@ > 40 20 > IEEE80211_CHAN_A > > + > + 5745 5845 > + 40 20 > + IEEE80211_CHAN_A > + > > 5745 5805 > 80 20 > @@ -2027,6 +2274,11 @@ > 20 20 > IEEE80211_CHAN_A > > + > + 5500 5720 > + 40 20 > + IEEE80211_CHAN_A > + > > 5500 5580 > 40 20 > > --=20 Nuno Teixeira FreeBSD UNIX: Web: https://FreeBSD.org --000000000000d8079e06329a5bdc Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello,

A quick search on reg= domain.xml leads to regulatory.db used in linux:
Maybe this is of interest to use in FreeBSD too?
Cheers,

Bjoern A. Zeeb <bz@freebsd.org> escreveu (s=C3=A1bado, 12= /04/2025 =C3=A0(s) 17:51):
The branch main has been updated by bz:

URL: https://cgit.= FreeBSD.org/src/commit/?id=3D84e1eb50dd9529b234e568ccb6f6c37f897688dc
commit 84e1eb50dd9529b234e568ccb6f6c37f897688dc
Author:=C2=A0 =C2=A0 =C2=A0Bjoern A. Zeeb <bz@FreeBSD.org>
AuthorDate: 2025-04-11 13:12:41 +0000
Commit:=C2=A0 =C2=A0 =C2=A0Bjoern A. Zeeb <bz@FreeBSD.org>
CommitDate: 2025-04-12 16:49:39 +0000

=C2=A0 =C2=A0 net80211/regdomain: try to sort out TW

=C2=A0 =C2=A0 Try to help people in TW to get onto 11ac as well by adding t= he missing
=C2=A0 =C2=A0 entries to regdomain.xml.=C2=A0 Use at your own risk.

=C2=A0 =C2=A0 regdomain.xml is unmaintanable in the modern world with too m= any tiny
=C2=A0 =C2=A0 difference between countries.=C2=A0 We'll need a differen= t way to generate
=C2=A0 =C2=A0 this or a different representation long term.

=C2=A0 =C2=A0 Sponsored by:=C2=A0 =C2=A0The FreeBSD Foundation
=C2=A0 =C2=A0 Reported by:=C2=A0 =C2=A0 lwhsu
=C2=A0 =C2=A0 Tested by:=C2=A0 =C2=A0 =C2=A0 lwhsu
=C2=A0 =C2=A0 MFC after:=C2=A0 =C2=A0 =C2=A0 3 days
=C2=A0 =C2=A0 Reviewed by:=C2=A0 =C2=A0 lwhsu, adrian
=C2=A0 =C2=A0 Differential Revision: https://reviews.freebsd.org/D= 49776
---
=C2=A0lib/lib80211/regdomain.xml | 254 ++++++++++++++++++++++++++++++++++++= ++++++++-
=C2=A01 file changed, 253 insertions(+), 1 deletion(-)

diff --git a/lib/lib80211/regdomain.xml b/lib/lib80211/regdomain.xml
index 557af0349cb0..9116e54c31cf 100644
--- a/lib/lib80211/regdomain.xml
+++ b/lib/lib80211/regdomain.xml
@@ -1187,6 +1187,202 @@
=C2=A0 =C2=A0</netband>
=C2=A0</rd>

+<rd id=3D"taiwan">
+=C2=A0 <name>TAIWAN</name>
+=C2=A0 <netband mode=3D"11b">
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"F1_2412_2472"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>30</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_B</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 </netband>
+
+=C2=A0 <netband mode=3D"11g">
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"F1_2412_2472"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>30</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_G</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 </netband>
+
+=C2=A0 <netband mode=3D"11ng">
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"F1_2412_2472"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>30</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_G</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT20</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"H4_2412_2472"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>30</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_G</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT40</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 </netband>
+
+=C2=A0 <netband mode=3D"11a">
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"F1_5160_5240"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"F1_5260_5340"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_DFS</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"F1_5480_5720"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_DFS</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"F1_5745_5845"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>30</maxpower>
+=C2=A0 =C2=A0 </band>
+=C2=A0 </netband>
+
+=C2=A0 <netband mode=3D"11na">
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"F1_5160_5240"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT20</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"H4_5180_5240"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT40</flags>
+=C2=A0 =C2=A0 </band>
+
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"F1_5260_5340"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT20</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_DFS</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"H4_5260_5320"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT40</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_DFS</flags>
+=C2=A0 =C2=A0 </band>
+
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"F1_5480_5720"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT20</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_DFS</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"H4_5500_5720"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT40</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_DFS</flags>
+=C2=A0 =C2=A0 </band>
+
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"F1_5745_5845"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>30</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT20</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"H4_5745_5845"/>
+=C2=A0 =C2=A0 =C2=A0 <maxpower>30</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT40</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 </netband>
+
+=C2=A0 <netband mode=3D"11ac">
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"AC2_5160_5240_20"/><= br> +=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT20</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_VHT20</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"AC2_5180_5240_40"/><= br> +=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT40</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_VHT40</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"AC2_5180_5240_80"/><= br> +=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT40</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_VHT80</flags>
+=C2=A0 =C2=A0 </band>
+
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"AC2_5260_5340_20"/><= br> +=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT20</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_VHT20</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_DFS</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"AC2_5260_5320_40"/><= br> +=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT40</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_VHT40</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_DFS</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"AC2_5260_5320_80"/><= br> +=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT40</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_VHT80</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_DFS</flags>
+=C2=A0 =C2=A0 </band>
+
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"AC2_5480_5700_20"/><= br> +=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT20</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_VHT20</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_DFS</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"AC2_5500_5720_40"/><= br> +=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT40</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_VHT40</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_DFS</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"AC2_5500_5720_80"/><= br> +=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT40</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_VHT80</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_DFS</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"AC2_5500_5640_160"/>=
+=C2=A0 =C2=A0 =C2=A0 <maxpower>23</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT40</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_VHT160</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_DFS</flags>
+=C2=A0 =C2=A0 </band>
+
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"AC2_5745_5845_20"/><= br> +=C2=A0 =C2=A0 =C2=A0 <maxpower>30</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT20</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_VHT20</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"AC2_5745_5845_40"/><= br> +=C2=A0 =C2=A0 =C2=A0 <maxpower>30</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT40</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_VHT40</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 =C2=A0 <band>
+=C2=A0 =C2=A0 =C2=A0 <freqband ref=3D"AC2_5745_5805_80"/><= br> +=C2=A0 =C2=A0 =C2=A0 <maxpower>30</maxpower>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_HT40</flags>
+=C2=A0 =C2=A0 =C2=A0 <flags>IEEE80211_CHAN_VHT80</flags>
+=C2=A0 =C2=A0 </band>
+=C2=A0 </netband>
+</rd>
+
=C2=A0<!-- Rest Of World -->

=C2=A0<rd id=3D"row">
@@ -1781,7 +1977,7 @@
=C2=A0 =C2=A0<isocc>760</isocc> <name>Syria</name> = <rd ref=3D"none"/>
=C2=A0</country>
=C2=A0<country id=3D"TW">
-=C2=A0 <isocc>158</isocc> <name>Taiwan</name> <= rd ref=3D"row"/>
+=C2=A0 <isocc>158</isocc> <name>Taiwan</name> <= rd ref=3D"taiwan"/>
=C2=A0</country>
=C2=A0<country id=3D"TH">
=C2=A0 =C2=A0<isocc>764</isocc> <name>Thailand</name&g= t; <rd ref=3D"none"/>
@@ -1904,6 +2100,11 @@
=C2=A0 =C2=A0<flags>IEEE80211_CHAN_A</flags>
=C2=A0</freqband>
=C2=A0<!-- 5150-5250/80 -->
+<freqband id=3D"F1_5160_5240">
+=C2=A0 <freqstart>5120</freqstart> <freqend>5240</fre= qend>
+=C2=A0 <chanwidth>20</chanwidth> <chansep>20</chansep= >
+=C2=A0 <flags>IEEE80211_CHAN_A</flags>
+</freqband>
=C2=A0<freqband id=3D"AC2_5160_5240_20">
=C2=A0 =C2=A0<freqstart>5160</freqstart> <freqend>5240<= ;/freqend>
=C2=A0 =C2=A0<chanwidth>20</chanwidth> <chansep>20</ch= ansep>
@@ -1925,6 +2126,11 @@
=C2=A0 =C2=A0<flags>IEEE80211_CHAN_A</flags>
=C2=A0</freqband>
=C2=A0<!-- 5250-5350/80 -->
+<freqband id=3D"F1_5260_5340">
+=C2=A0 <freqstart>5260</freqstart> <freqend>5340</fre= qend>
+=C2=A0 <chanwidth>20</chanwidth> <chansep>20</chansep= >
+=C2=A0 <flags>IEEE80211_CHAN_A</flags>
+</freqband>
=C2=A0<freqband id=3D"AC2_5260_5340_20">
=C2=A0 =C2=A0<freqstart>5260</freqstart> <freqend>5340<= ;/freqend>
=C2=A0 =C2=A0<chanwidth>20</chanwidth> <chansep>20</ch= ansep>
@@ -1941,6 +2147,11 @@
=C2=A0 =C2=A0<flags>IEEE80211_CHAN_A</flags>
=C2=A0</freqband>
=C2=A0<!-- 5470-5725/160 -->
+<freqband id=3D"F1_5480_5720">
+=C2=A0 <freqstart>5480</freqstart> <freqend>5720</fre= qend>
+=C2=A0 <chanwidth>20</chanwidth> <chansep>20</chansep= >
+=C2=A0 <flags>IEEE80211_CHAN_A</flags>
+</freqband>
=C2=A0<freqband id=3D"AC2_5480_5700_20">
=C2=A0 =C2=A0<freqstart>5480</freqstart> <freqend>5700<= ;/freqend>
=C2=A0 =C2=A0<chanwidth>20</chanwidth> <chansep>20</ch= ansep>
@@ -1961,7 +2172,38 @@
=C2=A0 =C2=A0<chanwidth>160</chanwidth> <chansep>20</c= hansep>
=C2=A0 =C2=A0<flags>IEEE80211_CHAN_A</flags>
=C2=A0</freqband>
+<!-- 5500-5720/80 -->
+<freqband id=3D"AC2_5500_5720_40">
+=C2=A0 <freqstart>5500</freqstart> <freqend>5720</fre= qend>
+=C2=A0 <chanwidth>40</chanwidth> <chansep>20</chansep= >
+=C2=A0 <flags>IEEE80211_CHAN_A</flags>
+</freqband>
+<freqband id=3D"AC2_5500_5720_80">
+=C2=A0 <freqstart>5500</freqstart> <freqend>5720</fre= qend>
+=C2=A0 <chanwidth>80</chanwidth> <chansep>20</chansep= >
+=C2=A0 <flags>IEEE80211_CHAN_A</flags>
+</freqband>
=C2=A0<!-- 5725-5875/80 short range -->
+<freqband id=3D"F1_5745_5825">
+=C2=A0 <freqstart>5745</freqstart> <freqend>5825</fre= qend>
+=C2=A0 <chanwidth>20</chanwidth> <chansep>20</chansep= >
+=C2=A0 <flags>IEEE80211_CHAN_A</flags>
+</freqband>
+<freqband id=3D"F1_5745_5845">
+=C2=A0 <freqstart>5745</freqstart> <freqend>5845</fre= qend>
+=C2=A0 <chanwidth>20</chanwidth> <chansep>20</chansep= >
+=C2=A0 <flags>IEEE80211_CHAN_A</flags>
+</freqband>
+<freqband id=3D"H4_5745_5845">
+=C2=A0 <freqstart>5745</freqstart> <freqend>5845</fre= qend>
+=C2=A0 <chanwidth>40</chanwidth> <chansep>20</chansep= >
+=C2=A0 <flags>IEEE80211_CHAN_A</flags>
+</freqband>
+<freqband id=3D"AC2_5745_5845_20">
+=C2=A0 <freqstart>5745</freqstart> <freqend>5845</fre= qend>
+=C2=A0 <chanwidth>20</chanwidth> <chansep>20</chansep= >
+=C2=A0 <flags>IEEE80211_CHAN_A</flags>
+</freqband>
=C2=A0<freqband id=3D"AC2_5745_5865_20">
=C2=A0 =C2=A0<freqstart>5745</freqstart> <freqend>5865<= ;/freqend>
=C2=A0 =C2=A0<chanwidth>20</chanwidth> <chansep>20</ch= ansep>
@@ -1972,6 +2214,11 @@
=C2=A0 =C2=A0<chanwidth>40</chanwidth> <chansep>20</ch= ansep>
=C2=A0 =C2=A0<flags>IEEE80211_CHAN_A</flags>
=C2=A0</freqband>
+<freqband id=3D"AC2_5745_5845_40">
+=C2=A0 <freqstart>5745</freqstart> <freqend>5845</fre= qend>
+=C2=A0 <chanwidth>40</chanwidth> <chansep>20</chansep= >
+=C2=A0 <flags>IEEE80211_CHAN_A</flags>
+</freqband>
=C2=A0<freqband id=3D"AC2_5745_5805_80">
=C2=A0 =C2=A0<freqstart>5745</freqstart> <freqend>5805<= ;/freqend>
=C2=A0 =C2=A0<chanwidth>80</chanwidth> <chansep>20</ch= ansep>
@@ -2027,6 +2274,11 @@
=C2=A0 =C2=A0<chanwidth>20</chanwidth> <chansep>20</ch= ansep>
=C2=A0 =C2=A0<flags>IEEE80211_CHAN_A</flags>
=C2=A0</freqband>
+<freqband id=3D"H4_5500_5720">
+=C2=A0 <freqstart>5500</freqstart> <freqend>5720</fre= qend>
+=C2=A0 <chanwidth>40</chanwidth> <chansep>20</chansep= >
+=C2=A0 <flags>IEEE80211_CHAN_A</flags>
+</freqband>
=C2=A0<freqband id=3D"H4_5500_5580">
=C2=A0 =C2=A0<freqstart>5500</freqstart> <freqend>5580<= ;/freqend>
=C2=A0 =C2=A0<chanwidth>40</chanwidth> <chansep>20</ch= ansep>



--
Nuno Teixeira
=
FreeBSD UNIX:=C2=A0 <eduardo@FreeBSD.org>=C2=A0 =C2=A0Web:=C2=A0 https://Fr= eeBSD.org
--000000000000d8079e06329a5bdc-- From nobody Sat Apr 12 20:49:38 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZlzQ4MmBz5sfdJ; Sat, 12 Apr 2025 20:49:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZlzQ3kVlz457n; Sat, 12 Apr 2025 20:49:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744490978; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IX14yUd1za0yDHlTbX5Qbes0mQ/ETiZlhI2AYK+msww=; b=YFy8QeOW3UwluFjBol8dJVNx551utMkzCenbiZjQvBPxMjXHcFKPKFpvl/4P6ELi68W2gG fwSyhc4eD/7qctcpJu0BgmzUf5VwfQuGUMnSdAX7LzP3ygfLvhyjOi/gvnK79epyDtYkyr Cw87Wwy6UW+HHU3kTKXDWjXKanUyIBnfIWt+cz2QtP5maf36NBNiPHeDnsvk3+KqOqUdzt ZBTzim80larZe1C8sTlTRaTAXdH+r3QJUpmRllH2PduhL77/6wnIARSO4PplGbPikkQiHU iUqNqZ4sl6NcNyAP6ux3sjOomDgvlM7SM6/ZKx9P7KmiAG3rbtgXbTpJxwt3Sw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744490978; a=rsa-sha256; cv=none; b=HCYxh50iB71mO75h3mg07K7XVmw6FrfEldCaQX4VYhi0MnjOj3QgMur92taipoo8/Yz7wo Sj6JMqiGMwwpQ2PpzgRVtCU6w4MLl0a4f5wtAXzOX4jegrJTpGiXi63j7j97Mn6esfFMET 7upanKtXChRabfsX22IQ9/kmtJHpiY4FGa9hLmipIh/i/xd2cE5Lt4loUqONclTfaIC5rT q14h443BlCckw7q6CTUXETt6GNYugRXwrf1msCgZDocaWBFWEoRgx7gu6Abj0Hb4U4NoiO 06t3DPuyMprIvFcR9SHd/Suvi2kWnhq4BOYySazz9gJcsWwxvdNwJ8asEew4HQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744490978; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IX14yUd1za0yDHlTbX5Qbes0mQ/ETiZlhI2AYK+msww=; b=TUWmhWJ3Srqmth9fcS9h6oq9tluk++mJK29CVisyuj4SXiAjoWjdZ1bp+HElUt7O8qAp3u xlb4uuCR5INvRM23Zae13Z14o/RJJ5ApSqxiYzU/6BvOiI7kNniH2SoYkX867HrjHGqViN VYa03zdXkLaetNTV/f2VWqvysqOpOORByUWDH1edpj+nPhfj6uf+DvdlqkkvQ025AjU04x RR3/q4shFeFDHZ2t6tMD+bd8Qh8SPLStKeJifzrhPQQQ2cZvHtIqlkBR3ejYcuDqQuQIyN WrnAYl1w/ff/J6hK7o4AtzfCAKpRoaU0QlvM0zBmNN2PJFJS1HsAkaugdc22jw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZlzQ3B2GzZQ0; Sat, 12 Apr 2025 20:49:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53CKncEM094566; Sat, 12 Apr 2025 20:49:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53CKncBg094563; Sat, 12 Apr 2025 20:49:38 GMT (envelope-from git) Date: Sat, 12 Apr 2025 20:49:38 GMT Message-Id: <202504122049.53CKncBg094563@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 4359672e656a - main - LinuxKPI: add seq_hex_dump() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4359672e656af5e6758d0aae147212e58f445f5b Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=4359672e656af5e6758d0aae147212e58f445f5b commit 4359672e656af5e6758d0aae147212e58f445f5b Author: Bjoern A. Zeeb AuthorDate: 2025-04-02 18:06:05 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-12 20:49:19 +0000 LinuxKPI: add seq_hex_dump() Move the implementation of print_hex_dump() into linux_compat.c as lkpi_hex_dump() taking an extra function pointer and argument. Add two internal wrappers for printf and sbuf_printf to get a common function definition (sbuf_printf takes the extra argument). Use these to implement print_hex_dump() and the newly added seq_hex_dump(). This allows us to re-use the same implementation of print_hex_dump() for both functions without duplicating the code. Initial implementation: D49381 by dumbbell Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D49637 --- sys/compat/linuxkpi/common/include/linux/printk.h | 54 +++------------ .../linuxkpi/common/include/linux/seq_file.h | 14 ++++ sys/compat/linuxkpi/common/src/linux_compat.c | 80 ++++++++++++++++++++++ 3 files changed, 102 insertions(+), 46 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/printk.h b/sys/compat/linuxkpi/common/include/linux/printk.h index 3840a6e5fb8a..da9d45122d4d 100644 --- a/sys/compat/linuxkpi/common/include/linux/printk.h +++ b/sys/compat/linuxkpi/common/include/linux/printk.h @@ -44,57 +44,19 @@ enum { DUMP_PREFIX_OFFSET }; +int __lkpi_hexdump_printf(void *, const char *, ...) __printflike(2, 3); + +void lkpi_hex_dump(int(*)(void *, const char *, ...), void *arg1, + const char *, const char *, const int, const int, const int, + const void *, size_t, const bool); + static inline void print_hex_dump(const char *level, const char *prefix_str, const int prefix_type, const int rowsize, const int groupsize, const void *buf, size_t len, const bool ascii) { - typedef const struct { long long value; } __packed *print_64p_t; - typedef const struct { uint32_t value; } __packed *print_32p_t; - typedef const struct { uint16_t value; } __packed *print_16p_t; - const void *buf_old = buf; - int row; - - while (len > 0) { - if (level != NULL) - printf("%s", level); - if (prefix_str != NULL) - printf("%s ", prefix_str); - - switch (prefix_type) { - case DUMP_PREFIX_ADDRESS: - printf("[%p] ", buf); - break; - case DUMP_PREFIX_OFFSET: - printf("[%#tx] ", ((const char *)buf - - (const char *)buf_old)); - break; - default: - break; - } - for (row = 0; row != rowsize; row++) { - if (groupsize == 8 && len > 7) { - printf("%016llx ", ((print_64p_t)buf)->value); - buf = (const uint8_t *)buf + 8; - len -= 8; - } else if (groupsize == 4 && len > 3) { - printf("%08x ", ((print_32p_t)buf)->value); - buf = (const uint8_t *)buf + 4; - len -= 4; - } else if (groupsize == 2 && len > 1) { - printf("%04x ", ((print_16p_t)buf)->value); - buf = (const uint8_t *)buf + 2; - len -= 2; - } else if (len > 0) { - printf("%02x ", *(const uint8_t *)buf); - buf = (const uint8_t *)buf + 1; - len--; - } else { - break; - } - } - printf("\n"); - } + lkpi_hex_dump(__lkpi_hexdump_printf, NULL, level, prefix_str, prefix_type, + rowsize, groupsize, buf, len, ascii); } static inline void diff --git a/sys/compat/linuxkpi/common/include/linux/seq_file.h b/sys/compat/linuxkpi/common/include/linux/seq_file.h index d8b327f59538..876ef9e8dfe5 100644 --- a/sys/compat/linuxkpi/common/include/linux/seq_file.h +++ b/sys/compat/linuxkpi/common/include/linux/seq_file.h @@ -28,9 +28,13 @@ #ifndef _LINUXKPI_LINUX_SEQ_FILE_H_ #define _LINUXKPI_LINUX_SEQ_FILE_H_ +#include +#include + #include #include #include +#include #undef file #define inode vnode @@ -89,6 +93,16 @@ void lkpi_seq_printf(struct seq_file *m, const char *fmt, ...); #define seq_vprintf(...) lkpi_seq_vprintf(__VA_ARGS__) #define seq_printf(...) lkpi_seq_printf(__VA_ARGS__) +int __lkpi_hexdump_sbuf_printf(void *, const char *, ...) __printflike(2, 3); + +static inline void +seq_hex_dump(struct seq_file *m, const char *prefix_str, int prefix_type, + int rowsize, int groupsize, const void *buf, size_t len, bool ascii) +{ + lkpi_hex_dump(__lkpi_hexdump_sbuf_printf, m->buf, NULL, prefix_str, prefix_type, + rowsize, groupsize, buf, len, ascii); +} + #define file linux_file #endif /* _LINUXKPI_LINUX_SEQ_FILE_H_ */ diff --git a/sys/compat/linuxkpi/common/src/linux_compat.c b/sys/compat/linuxkpi/common/src/linux_compat.c index af6cc01d8020..217df0aec91f 100644 --- a/sys/compat/linuxkpi/common/src/linux_compat.c +++ b/sys/compat/linuxkpi/common/src/linux_compat.c @@ -96,6 +96,8 @@ #include #include #include +#include +#include #if defined(__i386__) || defined(__amd64__) #include @@ -1969,6 +1971,84 @@ kasprintf(gfp_t gfp, const char *fmt, ...) return (p); } +int +__lkpi_hexdump_printf(void *arg1 __unused, const char *fmt, ...) +{ + va_list ap; + int result; + + va_start(ap, fmt); + result = vprintf(fmt, ap); + va_end(ap); + return (result); +} + +int +__lkpi_hexdump_sbuf_printf(void *arg1, const char *fmt, ...) +{ + va_list ap; + int result; + + va_start(ap, fmt); + result = sbuf_vprintf(arg1, fmt, ap); + va_end(ap); + return (result); +} + +void +lkpi_hex_dump(int(*_fpf)(void *, const char *, ...), void *arg1, + const char *level, const char *prefix_str, + const int prefix_type, const int rowsize, const int groupsize, + const void *buf, size_t len, const bool ascii) +{ + typedef const struct { long long value; } __packed *print_64p_t; + typedef const struct { uint32_t value; } __packed *print_32p_t; + typedef const struct { uint16_t value; } __packed *print_16p_t; + const void *buf_old = buf; + int row; + + while (len > 0) { + if (level != NULL) + _fpf(arg1, "%s", level); + if (prefix_str != NULL) + _fpf(arg1, "%s ", prefix_str); + + switch (prefix_type) { + case DUMP_PREFIX_ADDRESS: + _fpf(arg1, "[%p] ", buf); + break; + case DUMP_PREFIX_OFFSET: + _fpf(arg1, "[%#tx] ", ((const char *)buf - + (const char *)buf_old)); + break; + default: + break; + } + for (row = 0; row != rowsize; row++) { + if (groupsize == 8 && len > 7) { + _fpf(arg1, "%016llx ", ((print_64p_t)buf)->value); + buf = (const uint8_t *)buf + 8; + len -= 8; + } else if (groupsize == 4 && len > 3) { + _fpf(arg1, "%08x ", ((print_32p_t)buf)->value); + buf = (const uint8_t *)buf + 4; + len -= 4; + } else if (groupsize == 2 && len > 1) { + _fpf(arg1, "%04x ", ((print_16p_t)buf)->value); + buf = (const uint8_t *)buf + 2; + len -= 2; + } else if (len > 0) { + _fpf(arg1, "%02x ", *(const uint8_t *)buf); + buf = (const uint8_t *)buf + 1; + len--; + } else { + break; + } + } + _fpf(arg1, "\n"); + } +} + static void linux_timer_callback_wrapper(void *context) { From nobody Sat Apr 12 20:49:39 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZlzS0fdSz5sfld; Sat, 12 Apr 2025 20:49:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZlzR4X0rz45BD; Sat, 12 Apr 2025 20:49:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744490979; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UoDrVhbMJeIbbbGrn4rsttf++anuM2HnqYQyO1wjnAg=; b=vTsIpDkQVkTSQ5Lq583PCD1Kyqy5sjb/EMZWLFmFynsDrJYXMUwOpuR6kov4hLbHgLRfPr hdACozor7yfZpNwZY+Kte7oKXEwjr2EyRCJtKtBJCAftHqx9jp4oZyt5dvhzlV99MgOGA0 7d6xtOZZusjsmrEDlEonQhm+AVabRzKWZ6UkWYtvwk9ZpXkaL0nY4iExFresdJmAMpAsyo cMu+u0TF/GeR+GPZulieGOaMZ5UMPtGA2IRuvyiBXmgpYQVZVB8mK/kOBzcpz+sa9KcW6Y O4ZRPv7rMEHIlNOfttALO/zfXV1gVXn8/LszSscVAjLUv7cH1RxK9mkEJzU5vQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744490979; a=rsa-sha256; cv=none; b=yK/iFBPcpDX8REkCecYGOYODuGZjJ3hUlX9VfjrEvajezIjoO9K+MJ6jNQDSQKX1jiTEtK 6JK/guaeOnqsdoOGAvW4I82MuPpxfOU5D7kWwa4qmsHAiZaG3z80UCZiwL9HY6OTZCKM6p 38Gcb85rC1Nru7IftXrSL+vEeTaNIaMqKvRi32FKLong/bxLA0oH604E0aXKJsX8AgKA50 z9Maq1pL+wXaiXChBqm7/i0HAaa1ICNettP34sbrdpTDAaw3+/dZMJBCSER8pz2KMGlPsg 8VQN4eS10i4jktlDQvjObSlInTHvKQkILNfjzX5NP/dwZv2b3jNC/B0+VvPG5Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744490979; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UoDrVhbMJeIbbbGrn4rsttf++anuM2HnqYQyO1wjnAg=; b=vxM/v6T+yX1lKjifb7mS6nBZ07/VCF/nqwDlvnA9BifEqDpI/aXaCjJSw6vQhw2qCcFlCY zDloNhUYnDo/BMC5xlFXS9mpTEEUm1w2ogV41x2bd3PYRODKJAMUESdTRt58reDVLQnDa4 bgLKpowff9+VPxfqrjBXeflDwZktYIUsR3UVf4AXKjmu13cbLruZkipDGz7fPYcTFpk8aZ qESneRppblzHGh9QmPKFrbeeheC72wOeDJ3VUA1s09uqfErvLxyqoLuPSt6x3enNOBVBdx 4sBMOPNhQ/qqkqVrGBK6gf1VaYfe05tuS9Q3wbzkjA5/YK/z0Dhrj21ZX5aB8A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZlzR46cBzZD4; Sat, 12 Apr 2025 20:49:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53CKnd9j094610; Sat, 12 Apr 2025 20:49:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53CKndgQ094607; Sat, 12 Apr 2025 20:49:39 GMT (envelope-from git) Date: Sat, 12 Apr 2025 20:49:39 GMT Message-Id: <202504122049.53CKndgQ094607@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 1c81ebec74d8 - main - LinuxKPI: switch mallocarray to an lkpi implementation using __kmalloc() List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1c81ebec74d8a71c770f7835d3bc6e02c13467a0 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=1c81ebec74d8a71c770f7835d3bc6e02c13467a0 commit 1c81ebec74d8a71c770f7835d3bc6e02c13467a0 Author: Bjoern A. Zeeb AuthorDate: 2025-03-20 23:54:12 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-12 20:49:19 +0000 LinuxKPI: switch mallocarray to an lkpi implementation using __kmalloc() With mallocarray() we cannot guarantee that any size larger than PAGE_SIZE will be contiguous. Switch kmalloc_array() and kmalloc_array_node() to use __kmalloc()/lkpi___kmalloc_node() as their underlying implementation which now does provide that guarantee. Likewise adjust kcalloc_node() to use kmalloc_array_node(). This means we only have two (plain + _node) underlying allocation routines for the entire category of functions. Also adjust kvmalloc() and kvmalloc_array() to be a "mirrored" implementation to their non-v counterparts. These may return non-contiguous memory so can use malloc(). Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: jhb Extra thanks to: jhb for helping sorting this out Differential Revision: https://reviews.freebsd.org/D46657 --- sys/compat/linuxkpi/common/include/linux/slab.h | 48 +++++++++++++++---------- sys/compat/linuxkpi/common/src/linux_compat.c | 12 +++---- sys/compat/linuxkpi/common/src/linux_slab.c | 12 +++++++ 3 files changed, 48 insertions(+), 24 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/slab.h b/sys/compat/linuxkpi/common/include/linux/slab.h index 07c16884b00e..ddaabcef0b9c 100644 --- a/sys/compat/linuxkpi/common/include/linux/slab.h +++ b/sys/compat/linuxkpi/common/include/linux/slab.h @@ -42,7 +42,6 @@ MALLOC_DECLARE(M_KMALLOC); #define kmalloc(size, flags) lkpi_kmalloc(size, flags) -#define kvmalloc(size, flags) kmalloc(size, flags) #define kvzalloc(size, flags) kmalloc(size, (flags) | __GFP_ZERO) #define kvcalloc(n, size, flags) kvmalloc_array(n, size, (flags) | __GFP_ZERO) #define kzalloc(size, flags) kmalloc(size, (flags) | __GFP_ZERO) @@ -93,6 +92,7 @@ struct linux_kmem_cache; extern void *lkpi_kmalloc(size_t size, gfp_t flags); void *lkpi___kmalloc(size_t size, gfp_t flags); +void *lkpi___kmalloc_node(size_t size, gfp_t flags, int node); #define __kmalloc(_s, _f) lkpi___kmalloc(_s, _f) static inline gfp_t @@ -113,23 +113,39 @@ linux_check_m_flags(gfp_t flags) static inline void * kmalloc_node(size_t size, gfp_t flags, int node) { - return (malloc_domainset(size, M_KMALLOC, - linux_get_vm_domain_set(node), linux_check_m_flags(flags))); + return (lkpi___kmalloc_node(size, flags, node)); +} + +static inline void * +kmalloc_array(size_t n, size_t size, gfp_t flags) +{ + if (WOULD_OVERFLOW(n, size)) + panic("%s: %zu * %zu overflowed", __func__, n, size); + + return (kmalloc(size * n, flags)); } static inline void * kcalloc(size_t n, size_t size, gfp_t flags) { flags |= __GFP_ZERO; - return (mallocarray(n, size, M_KMALLOC, linux_check_m_flags(flags))); + return (kmalloc_array(n, size, linux_check_m_flags(flags))); +} + +static inline void * +kmalloc_array_node(size_t n, size_t size, gfp_t flags, int node) +{ + if (WOULD_OVERFLOW(n, size)) + panic("%s: %zu * %zu overflowed", __func__, n, size); + + return (kmalloc_node(size * n, flags, node)); } static inline void * kcalloc_node(size_t n, size_t size, gfp_t flags, int node) { flags |= __GFP_ZERO; - return (mallocarray_domainset(n, size, M_KMALLOC, - linux_get_vm_domain_set(node), linux_check_m_flags(flags))); + return (kmalloc_array_node(n, size, flags, node)); } static inline void * @@ -151,23 +167,20 @@ vmalloc_32(size_t size) return (contigmalloc(size, M_KMALLOC, M_WAITOK, 0, UINT_MAX, 1, 1)); } +/* May return non-contiguous memory. */ static inline void * -kmalloc_array(size_t n, size_t size, gfp_t flags) -{ - return (mallocarray(n, size, M_KMALLOC, linux_check_m_flags(flags))); -} - -static inline void * -kmalloc_array_node(size_t n, size_t size, gfp_t flags, int node) +kvmalloc(size_t size, gfp_t flags) { - return (mallocarray_domainset(n, size, M_KMALLOC, - linux_get_vm_domain_set(node), linux_check_m_flags(flags))); + return (malloc(size, M_KMALLOC, linux_check_m_flags(flags))); } static inline void * kvmalloc_array(size_t n, size_t size, gfp_t flags) { - return (mallocarray(n, size, M_KMALLOC, linux_check_m_flags(flags))); + if (WOULD_OVERFLOW(n, size)) + panic("%s: %zu * %zu overflowed", __func__, n, size); + + return (kvmalloc(size * n, flags)); } static inline void * @@ -179,9 +192,8 @@ krealloc(void *ptr, size_t size, gfp_t flags) static inline void * krealloc_array(void *ptr, size_t n, size_t size, gfp_t flags) { - if (WOULD_OVERFLOW(n, size)) { + if (WOULD_OVERFLOW(n, size)) return NULL; - } return (realloc(ptr, n * size, M_KMALLOC, linux_check_m_flags(flags))); } diff --git a/sys/compat/linuxkpi/common/src/linux_compat.c b/sys/compat/linuxkpi/common/src/linux_compat.c index 217df0aec91f..30acd1b54e9c 100644 --- a/sys/compat/linuxkpi/common/src/linux_compat.c +++ b/sys/compat/linuxkpi/common/src/linux_compat.c @@ -2847,8 +2847,8 @@ linux_compat_init(void *arg) boot_cpu_data.x86_model = CPUID_TO_MODEL(cpu_id); boot_cpu_data.x86_vendor = x86_vendor; - __cpu_data = mallocarray(mp_maxid + 1, - sizeof(*__cpu_data), M_KMALLOC, M_WAITOK | M_ZERO); + __cpu_data = kmalloc_array(mp_maxid + 1, + sizeof(*__cpu_data), M_WAITOK | M_ZERO); CPU_FOREACH(i) { __cpu_data[i].x86_clflush_size = cpu_clflush_line_size; __cpu_data[i].x86_max_cores = mp_ncpus; @@ -2890,8 +2890,8 @@ linux_compat_init(void *arg) * This is used by cpumask_of() (and possibly others in the future) for, * e.g., drivers to pass hints to irq_set_affinity_hint(). */ - static_single_cpu_mask = mallocarray(mp_maxid + 1, - sizeof(static_single_cpu_mask), M_KMALLOC, M_WAITOK | M_ZERO); + static_single_cpu_mask = kmalloc_array(mp_maxid + 1, + sizeof(static_single_cpu_mask), M_WAITOK | M_ZERO); /* * When the number of CPUs reach a threshold, we start to save memory @@ -2910,9 +2910,9 @@ linux_compat_init(void *arg) * (_BITSET_BITS / 8)' bytes (for comparison with the * overlapping scheme). */ - static_single_cpu_mask_lcs = mallocarray(mp_ncpus, + static_single_cpu_mask_lcs = kmalloc_array(mp_ncpus, sizeof(*static_single_cpu_mask_lcs), - M_KMALLOC, M_WAITOK | M_ZERO); + M_WAITOK | M_ZERO); sscm_ptr = static_single_cpu_mask_lcs; CPU_FOREACH(i) { diff --git a/sys/compat/linuxkpi/common/src/linux_slab.c b/sys/compat/linuxkpi/common/src/linux_slab.c index bc780ab3f609..4b0b18178a5c 100644 --- a/sys/compat/linuxkpi/common/src/linux_slab.c +++ b/sys/compat/linuxkpi/common/src/linux_slab.c @@ -207,6 +207,18 @@ linux_kmem_cache_destroy(struct linux_kmem_cache *c) free(c, M_KMALLOC); } +void * +lkpi___kmalloc_node(size_t size, gfp_t flags, int node) +{ + if (size <= PAGE_SIZE) + return (malloc_domainset(size, M_KMALLOC, + linux_get_vm_domain_set(node), linux_check_m_flags(flags))); + else + return (contigmalloc_domainset(size, M_KMALLOC, + linux_get_vm_domain_set(node), linux_check_m_flags(flags), + 0, -1UL, PAGE_SIZE, 0)); +} + void * lkpi___kmalloc(size_t size, gfp_t flags) { From nobody Sat Apr 12 20:49:40 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZlzS6TX2z5sffM; Sat, 12 Apr 2025 20:49:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZlzS58QZz454W; Sat, 12 Apr 2025 20:49:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744490980; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MoD2896I2R4bjQ0lCytJOraOh2gvoj+j7AbBl+u7ylI=; b=YF953DBDDHRrURx+tNx+UfOHCkZfObV6wloLcTEZ2/eEbnvDdt7n6vibxW1qpkbpisYAg4 wVTk/nglb+0cAUGchgTrUH64hL8KXt8VcNmpHkQb8ITAMd9MrUPXbWFfb0xNPShzXHpZf+ rgkBemyoJ5+62Y1Wzrw6bp+WsIAyoIECqGE7XsLncf1TyELRJg4ZevIv18Ilu7UchWs5qJ 4LPMNy5N3kX5XPLLooe07xvwpfXclp43ID1UapuCxsCee25FMjQft0l48ccCfIqQjNMmep oc0KyaQMULeS926k+g3urQo78FX93T6HGIIRwiQJ1tK2Zd1m3Ew6f+bOYbTBHw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744490980; a=rsa-sha256; cv=none; b=Dno2LUsoq7PslHQ59O411gYOSwg/+XEceHIz/uuqTHF1G/6Pioithjofuy3TRsjkk7pPwX l97uQEY6FztrZRK1tTKRrQcSLy2pr9e46fuVC+j/ttYNrsZaP+O48QgYLj6Ztdu6BQkNsU YSqQHiDZIJzkOqmqrIl6BXy3daCHWQLoNAuADOl01IlYnqIzQu/s1hKrNwcq+Gr9oGeo59 EVN47X7uLQbywDk62dMxXujbK+mWF3lbKFtzd8rHZ5YqDBCeW7aM4+ZYYuv/Qv1snwr+Mj r1dX1BXvpsIX+QGtfVDgLmD/uFdaks2UApa5UW9mFIf33+Hq3vBwcf7mmYX2aA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744490980; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MoD2896I2R4bjQ0lCytJOraOh2gvoj+j7AbBl+u7ylI=; b=RUNJyykw7nNCnfQKNH/PSk9cio9NLK4Ld4h0LrJqn8qjsfgeixioEWGRzgRk92HxgAtfib KTR+ZNG0Uva/ho/0GfQk1k3EN5+eUrrKd/WREOa3E9G578WpclhIjpNI4nHVwCnck8c85A N9Xwq7XP5h0NOTYcULMiIZtUpCMMwNposhhf5Cw5vrybj3bI0UuK1zB1WUZuLhK4Gdn0vN dh0brUYO93OUmufuW3VBuGvXBGZkrTFGTYKhVgKxNFPQYtpPfca7ij6cCl/jJB8wQaE88k iyt1tw1ay6hBtNoMkVV7ufh5AC+tvx20uYyECKw4cKMNOcDvlwr8U84HWiH83g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZlzS4lw7zYwB; Sat, 12 Apr 2025 20:49:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53CKne6C094647; Sat, 12 Apr 2025 20:49:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53CKne5e094644; Sat, 12 Apr 2025 20:49:40 GMT (envelope-from git) Date: Sat, 12 Apr 2025 20:49:40 GMT Message-Id: <202504122049.53CKne5e094644@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: c5cf4b64f4a9 - main - malloc: extend malloc_usable_size() for contigmalloc List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c5cf4b64f4a976f5c5d75d52816078def86bf3e4 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=c5cf4b64f4a976f5c5d75d52816078def86bf3e4 commit c5cf4b64f4a976f5c5d75d52816078def86bf3e4 Author: Bjoern A. Zeeb AuthorDate: 2025-04-12 17:11:26 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-12 20:49:19 +0000 malloc: extend malloc_usable_size() for contigmalloc Extend malloc_usable_size() for contigmalloc; it seems the only outside consumer is LinuxKPI ksize() which by itself has little to no consumer either. Sponsored by: The FreeBSD Foundation MFC after: 3 days Suggested by: jhb (see D46657) Reviewed by: jhb, markj Fixes: 9e6544dd6e02 Differential Revision: https://reviews.freebsd.org/D49571 --- sys/kern/kern_malloc.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sys/kern/kern_malloc.c b/sys/kern/kern_malloc.c index 0b76e633b04a..879220be050b 100644 --- a/sys/kern/kern_malloc.c +++ b/sys/kern/kern_malloc.c @@ -1142,6 +1142,9 @@ malloc_usable_size(const void *addr) case SLAB_COOKIE_MALLOC_LARGE: size = malloc_large_size(slab); break; + case SLAB_COOKIE_CONTIG_MALLOC: + size = round_page(contigmalloc_size(slab)); + break; default: __assert_unreachable(); size = 0; From nobody Sat Apr 12 20:49:41 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZlzV4MkSz5sfZK; Sat, 12 Apr 2025 20:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZlzV1KW9z44wM; Sat, 12 Apr 2025 20:49:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744490982; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z5yQiNFvlPhNWuneZ48CT1hdYVPsig1SaOvzYA0ZFnk=; b=a+ylqQD3F0SVmLQL9nYeqSftqNWID/f8087gZGYN/xeKwd9TtKWwhTgl6A5KcynLlMhBP8 o07pkJu/C2b9gHICeLV0VvNO5SYnF5Hk3EeIdtbT+Wc5hRRMTCw5Riu5jG30z3VfbO1/ab 8lE0D4LNOoJUi74i/WUmMy6jgGTFEkJnZf3U7tq5RO3259eJDb6D1IdDWONmiVRhuxDBdl GXHDyTlKwtxdpZy3OIO7gCkXLV5Si3c6k8SCJpD9rejNC+HlpuzqUDvLz8bRBUNkGDQ1Zv 18JC+okpNsWsb79RV+duzC/REIzBKeB6hXWBWd2Fn8tWGZEuhN4KczQACjZF2A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744490982; a=rsa-sha256; cv=none; b=DR1Zy0ei1PxbvLBYksQx4nj5oTG0/JKAb7/HYyb/ZUnGLXRHGXpdFAnDKf6EDgsyyzacGc 3S7d3bXSjrA4Zb1F4KLyxoV0krG0GNYyYlhX3hBqnbHy03GNUoguz1y1mtE2qWflALvAeW y4h8pQxF7wjJjdnGdp+SH4suj6lZw2Py05z+bcyor3+pqJAeqYduRSgjjVEOwpJo4hg+Wv LAhrTYxduEBr6QNeyw87f1WWQ7q6xL4xz1WWW826JjJhJw1Mk4hVn8W/aelQxjvZS3ty98 jmab3yVTRvvnhJoDfb5fT9CbdrVxdm5lreDF5DBWqhgf6I40V4Y4C/OQFMOXWQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744490982; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z5yQiNFvlPhNWuneZ48CT1hdYVPsig1SaOvzYA0ZFnk=; b=etsYQ1DdsogPc6tx5b1zvygg8tnF75S4T/JZ1DL6uuBeHhrnVrHnwqmpugudK3TtFTWU0e OELz/CcTNl3mQn7IU2afAl3uh/HZ/0p5KW0VzX4+na0EjcbVawYDdz661DwFwzE8BHcQR/ 2VPsE76zKFcQS1O11hyVRJtqnltVNDdGDL1P6SgaV02DmJbmf7cbog0vlCAAA/cpWjzBBU NdXtfNjhCpZ8XLZgWqI8dUX/VDP/Hao9boxTq5JABhhHsqNg2ysaTdbieTVzO+sjXFX0cF knig547mJjT/zZ5m7GkTxCkxXfMCkowLKgnGFu6Ji4IPpIT78zZ6fvyBaYcLeg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZlzT5kPwzYtJ; Sat, 12 Apr 2025 20:49:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53CKnfRN094690; Sat, 12 Apr 2025 20:49:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53CKnfeZ094687; Sat, 12 Apr 2025 20:49:41 GMT (envelope-from git) Date: Sat, 12 Apr 2025 20:49:41 GMT Message-Id: <202504122049.53CKnfeZ094687@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 1c95d401ebe5 - main - LinuxKPI: implement krealloc() for memory being contiguous List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1c95d401ebe5075ebb38b57638830713a496f107 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=1c95d401ebe5075ebb38b57638830713a496f107 commit 1c95d401ebe5075ebb38b57638830713a496f107 Author: Bjoern A. Zeeb AuthorDate: 2025-03-29 17:05:58 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-12 20:49:20 +0000 LinuxKPI: implement krealloc() for memory being contiguous Implement krealloc_array() using krealloc(). Implement krealloc() doing the various size checks ourselves and use realloc() or kmalloc() depending on old and new allocation sizes. This way we can ensure that allocated memory stays physically contiguous. Sponsored by: The FreeBSD Foundation MFC after: 3 days Suggested by: jhb (see D46657) Reviewed by: jhb, markj Differential Revision: https://reviews.freebsd.org/D49571 --- sys/compat/linuxkpi/common/include/linux/slab.h | 31 +++++++++++----------- sys/compat/linuxkpi/common/src/linux_slab.c | 35 +++++++++++++++++++++++++ 2 files changed, 51 insertions(+), 15 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/slab.h b/sys/compat/linuxkpi/common/include/linux/slab.h index ddaabcef0b9c..a692ccb8b944 100644 --- a/sys/compat/linuxkpi/common/include/linux/slab.h +++ b/sys/compat/linuxkpi/common/include/linux/slab.h @@ -94,6 +94,7 @@ extern void *lkpi_kmalloc(size_t size, gfp_t flags); void *lkpi___kmalloc(size_t size, gfp_t flags); void *lkpi___kmalloc_node(size_t size, gfp_t flags, int node); #define __kmalloc(_s, _f) lkpi___kmalloc(_s, _f) +void *lkpi_krealloc(void *, size_t, gfp_t); static inline gfp_t linux_check_m_flags(gfp_t flags) @@ -148,6 +149,21 @@ kcalloc_node(size_t n, size_t size, gfp_t flags, int node) return (kmalloc_array_node(n, size, flags, node)); } +static inline void * +krealloc(void *ptr, size_t size, gfp_t flags) +{ + return (lkpi_krealloc(ptr, size, flags)); +} + +static inline void * +krealloc_array(void *ptr, size_t n, size_t size, gfp_t flags) +{ + if (WOULD_OVERFLOW(n, size)) + return NULL; + + return (krealloc(ptr, n * size, flags)); +} + static inline void * __vmalloc(size_t size, gfp_t flags, int other) { @@ -183,21 +199,6 @@ kvmalloc_array(size_t n, size_t size, gfp_t flags) return (kvmalloc(size * n, flags)); } -static inline void * -krealloc(void *ptr, size_t size, gfp_t flags) -{ - return (realloc(ptr, size, M_KMALLOC, linux_check_m_flags(flags))); -} - -static inline void * -krealloc_array(void *ptr, size_t n, size_t size, gfp_t flags) -{ - if (WOULD_OVERFLOW(n, size)) - return NULL; - - return (realloc(ptr, n * size, M_KMALLOC, linux_check_m_flags(flags))); -} - extern void linux_kfree_async(void *); static inline void diff --git a/sys/compat/linuxkpi/common/src/linux_slab.c b/sys/compat/linuxkpi/common/src/linux_slab.c index 4b0b18178a5c..abcffdb094f5 100644 --- a/sys/compat/linuxkpi/common/src/linux_slab.c +++ b/sys/compat/linuxkpi/common/src/linux_slab.c @@ -234,6 +234,41 @@ lkpi___kmalloc(size_t size, gfp_t flags) 0, -1UL, PAGE_SIZE, 0)); } +void * +lkpi_krealloc(void *ptr, size_t size, gfp_t flags) +{ + void *nptr; + size_t osize; + + /* + * First handle invariants based on function arguments. + */ + if (ptr == NULL) + return (kmalloc(size, flags)); + + osize = ksize(ptr); + if (size <= osize) + return (ptr); + + /* + * We know the new size > original size. realloc(9) does not (and cannot) + * know about our requirements for physically contiguous memory, so we can + * only call it for sizes up to and including PAGE_SIZE, and otherwise have + * to replicate its functionality using kmalloc to get the contigmalloc(9) + * backing. + */ + if (size <= PAGE_SIZE) + return (realloc(ptr, size, M_KMALLOC, linux_check_m_flags(flags))); + + nptr = kmalloc(size, flags); + if (nptr == NULL) + return (NULL); + + memcpy(nptr, ptr, osize); + kfree(ptr); + return (nptr); +} + struct lkpi_kmalloc_ctx { size_t size; gfp_t flags; From nobody Sat Apr 12 20:49:42 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZlzW3MCQz5sfnh; Sat, 12 Apr 2025 20:49:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZlzV7328z45HL; Sat, 12 Apr 2025 20:49:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744490983; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jUMgsu7OWGs54Iv22x8dAwkFbnpQTW7V6QttD0B5xRY=; b=X/2Dos7gxfHiKbvlxuT/DFyAk1x/554DwnMTZhTI66iTQjtbqi93yIAOyWkbIKG4DFGHXz 4T3sCkQPAbchUXV4TSVvyIq8j1snVAlqUPDzsm89clJPVbrWCg+JAlbGS8HGKT/0hQX/MV 8/6Try6OT92KyzUqQhCNjc+iD3k7Y4RwDWR4s6Ov0Kib9KyLPcBXq6H5m6jgrqaR3GrgsZ HVAH2SyAoSCU345g0r7WbnRENeAjozi0ivGzh+L/UqHFI4myFAi/FyiiOBfk8cNpzimnso uJRYWe7T4fz4h47TqpXsv4i8afJ4K7gLz09EVlIM2YhZU8rDm3/11kGsKOOrZA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744490983; a=rsa-sha256; cv=none; b=sTx3XL34TDxjVpuVePFHLCWcrRo/dAmFAtUoAtkT1yMSqAhS85zCE1nnN8fb61/yVxamf5 6XUPN7/CrkvYpDzTr1cgbrAcDKHn9oqZ0GGLN4BRGVl4NsNB2hFfNeamMu8SfwS9LqQ85Q 3qBu01S7VBGm6ciwlXLsrzsxPFtQdishQ1/YT5s+p3ilgKhjpVDakyCYB7AY6xAekXk+ch ZXB0eZt6H0fWVcppXdxvFX8/RBc2myYbKsNjJAuKok7dcqRRuCxOPeEIlKmW5wv7HkMVoQ vJQLTIWCPKejTvczrZ3oXJMkQfRBtdZKbKCLQ3+gJF/FA7lOc5px1I2QU0qAmQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744490983; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jUMgsu7OWGs54Iv22x8dAwkFbnpQTW7V6QttD0B5xRY=; b=PyeJb86Kb9iD1YCdntHWXFV1UBdazagAsvytsNVeure+CtkoYJJv17ctftaFlwbKggsepg 2spjRE/Muzc8UZWkQdkUH/igcqmXFhE7PfZ9biUg+LQKGzer0vIIyBA3VyL7zuxbR+uVLc Z5Za6gIvmNlGiJPGRzGWN10f3EstYy0CAJbHDeObEunxpr3HKKIHbk6fc8tRzoIMt+/Lh2 qGKR/iMUqzQYbWxTOSZmlcsN4qD8Iu3Yk5/M3USYAgA+zN5bg1rQwYsy49FmZ8urWqEnU/ 74STHlA/LAsZDkhX0nI38pYe1tqWqZZpiGwdsHHphl0/jLK80cwZOuHm89OjQQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZlzV6QPfzZ0C; Sat, 12 Apr 2025 20:49:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53CKngD3094727; Sat, 12 Apr 2025 20:49:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53CKngbC094724; Sat, 12 Apr 2025 20:49:42 GMT (envelope-from git) Date: Sat, 12 Apr 2025 20:49:42 GMT Message-Id: <202504122049.53CKngbC094724@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: a3e6f97bf57c - main - LinuxKPI; cleanup slab.h a bit; move more free() into slab.c List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a3e6f97bf57c1d323487d07369aec66542f995ce Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=a3e6f97bf57c1d323487d07369aec66542f995ce commit a3e6f97bf57c1d323487d07369aec66542f995ce Author: Bjoern A. Zeeb AuthorDate: 2025-03-29 17:33:08 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-12 20:49:20 +0000 LinuxKPI; cleanup slab.h a bit; move more free() into slab.c Move kfree() into slab.c as an implementation and hide the private function linux_kfree_async() entirely. Remove a ; at the end of a define and sort some defines into place. Remove extern from function declarations and move the closer to where they belong. Sort the functions into "base allocator/free" functions--these have an implementation in slab.c and are ensuring contiguous physical memory allocations. Followed by inline functions using these base allocators to implement their functionality; vmalloc/kvalloc, and misc functions. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D49572 --- sys/compat/linuxkpi/common/include/linux/slab.h | 111 ++++++++++++++---------- sys/compat/linuxkpi/common/src/linux_slab.c | 19 +++- 2 files changed, 84 insertions(+), 46 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/slab.h b/sys/compat/linuxkpi/common/include/linux/slab.h index a692ccb8b944..f3a840d9bf4b 100644 --- a/sys/compat/linuxkpi/common/include/linux/slab.h +++ b/sys/compat/linuxkpi/common/include/linux/slab.h @@ -4,6 +4,10 @@ * Copyright (c) 2010 Panasas, Inc. * Copyright (c) 2013-2021 Mellanox Technologies, Ltd. * All rights reserved. + * Copyright (c) 2024-2025 The FreeBSD Foundation + * + * Portions of this software were developed by Björn Zeeb + * under sponsorship from the FreeBSD Foundation. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -41,12 +45,12 @@ MALLOC_DECLARE(M_KMALLOC); -#define kmalloc(size, flags) lkpi_kmalloc(size, flags) #define kvzalloc(size, flags) kmalloc(size, (flags) | __GFP_ZERO) #define kvcalloc(n, size, flags) kvmalloc_array(n, size, (flags) | __GFP_ZERO) #define kzalloc(size, flags) kmalloc(size, (flags) | __GFP_ZERO) #define kzalloc_node(size, flags, node) kmalloc_node(size, (flags) | __GFP_ZERO, node) #define kfree_const(ptr) kfree(ptr) +#define kfree_async(ptr) kfree(ptr) /* drm-kmod 5.4 compat */ #define vzalloc(size) __vmalloc(size, GFP_KERNEL | __GFP_NOWARN | __GFP_ZERO, 0) #define vfree(arg) kfree(arg) #define kvfree(arg) kfree(arg) @@ -84,17 +88,21 @@ struct linux_kmem_cache; #define ARCH_KMALLOC_MINALIGN \ __alignof(unsigned long long) -/* drm-kmod 5.4 compat */ -#define kfree_async(ptr) kfree(ptr); - #define ZERO_SIZE_PTR ((void *)16) #define ZERO_OR_NULL_PTR(x) ((x) == NULL || (x) == ZERO_SIZE_PTR) -extern void *lkpi_kmalloc(size_t size, gfp_t flags); -void *lkpi___kmalloc(size_t size, gfp_t flags); -void *lkpi___kmalloc_node(size_t size, gfp_t flags, int node); -#define __kmalloc(_s, _f) lkpi___kmalloc(_s, _f) +struct linux_kmem_cache *linux_kmem_cache_create(const char *name, + size_t size, size_t align, unsigned flags, linux_kmem_ctor_t *ctor); +void *lkpi_kmem_cache_alloc(struct linux_kmem_cache *, gfp_t); +void *lkpi_kmem_cache_zalloc(struct linux_kmem_cache *, gfp_t); +void lkpi_kmem_cache_free(struct linux_kmem_cache *, void *); +void linux_kmem_cache_destroy(struct linux_kmem_cache *); + +void *lkpi_kmalloc(size_t, gfp_t); +void *lkpi___kmalloc(size_t, gfp_t); +void *lkpi___kmalloc_node(size_t, gfp_t, int); void *lkpi_krealloc(void *, size_t, gfp_t); +void lkpi_kfree(const void *); static inline gfp_t linux_check_m_flags(gfp_t flags) @@ -111,12 +119,43 @@ linux_check_m_flags(gfp_t flags) return (flags & GFP_NATIVE_MASK); } +/* + * Base functions with a native implementation. + */ +static inline void * +kmalloc(size_t size, gfp_t flags) +{ + return (lkpi_kmalloc(size, flags)); +} + +static inline void * +__kmalloc(size_t size, gfp_t flags) +{ + return (lkpi___kmalloc(size, flags)); +} + static inline void * kmalloc_node(size_t size, gfp_t flags, int node) { return (lkpi___kmalloc_node(size, flags, node)); } +static inline void * +krealloc(void *ptr, size_t size, gfp_t flags) +{ + return (lkpi_krealloc(ptr, size, flags)); +} + +static inline void +kfree(const void *ptr) +{ + lkpi_kfree(ptr); +} + +/* + * Other k*alloc() funtions using the above as underlying allocator. + */ +/* kmalloc */ static inline void * kmalloc_array(size_t n, size_t size, gfp_t flags) { @@ -130,9 +169,10 @@ static inline void * kcalloc(size_t n, size_t size, gfp_t flags) { flags |= __GFP_ZERO; - return (kmalloc_array(n, size, linux_check_m_flags(flags))); + return (kmalloc_array(n, size, flags)); } +/* kmalloc_node */ static inline void * kmalloc_array_node(size_t n, size_t size, gfp_t flags, int node) { @@ -149,12 +189,7 @@ kcalloc_node(size_t n, size_t size, gfp_t flags, int node) return (kmalloc_array_node(n, size, flags, node)); } -static inline void * -krealloc(void *ptr, size_t size, gfp_t flags) -{ - return (lkpi_krealloc(ptr, size, flags)); -} - +/* krealloc */ static inline void * krealloc_array(void *ptr, size_t n, size_t size, gfp_t flags) { @@ -164,6 +199,9 @@ krealloc_array(void *ptr, size_t n, size_t size, gfp_t flags) return (krealloc(ptr, n * size, flags)); } +/* + * vmalloc/kvalloc functions. + */ static inline void * __vmalloc(size_t size, gfp_t flags, int other) { @@ -199,29 +237,6 @@ kvmalloc_array(size_t n, size_t size, gfp_t flags) return (kvmalloc(size * n, flags)); } -extern void linux_kfree_async(void *); - -static inline void -kfree(const void *ptr) -{ - if (ZERO_OR_NULL_PTR(ptr)) - return; - - if (curthread->td_critnest != 0) - linux_kfree_async(__DECONST(void *, ptr)); - else - free(__DECONST(void *, ptr), M_KMALLOC); -} - -static __inline void -kfree_sensitive(const void *ptr) -{ - if (ZERO_OR_NULL_PTR(ptr)) - return; - - zfree(__DECONST(void *, ptr), M_KMALLOC); -} - static inline void * kvrealloc(const void *ptr, size_t oldsize, size_t newsize, gfp_t flags) { @@ -239,6 +254,19 @@ kvrealloc(const void *ptr, size_t oldsize, size_t newsize, gfp_t flags) return (newptr); } +/* + * Misc. + */ + +static __inline void +kfree_sensitive(const void *ptr) +{ + if (ZERO_OR_NULL_PTR(ptr)) + return; + + zfree(__DECONST(void *, ptr), M_KMALLOC); +} + static inline size_t ksize(const void *ptr) { @@ -253,11 +281,4 @@ kmalloc_size_roundup(size_t size) return (malloc_size(size)); } -extern struct linux_kmem_cache *linux_kmem_cache_create(const char *name, - size_t size, size_t align, unsigned flags, linux_kmem_ctor_t *ctor); -extern void *lkpi_kmem_cache_alloc(struct linux_kmem_cache *, gfp_t); -extern void *lkpi_kmem_cache_zalloc(struct linux_kmem_cache *, gfp_t); -extern void lkpi_kmem_cache_free(struct linux_kmem_cache *, void *); -extern void linux_kmem_cache_destroy(struct linux_kmem_cache *); - #endif /* _LINUXKPI_LINUX_SLAB_H_ */ diff --git a/sys/compat/linuxkpi/common/src/linux_slab.c b/sys/compat/linuxkpi/common/src/linux_slab.c index abcffdb094f5..3d75ca480661 100644 --- a/sys/compat/linuxkpi/common/src/linux_slab.c +++ b/sys/compat/linuxkpi/common/src/linux_slab.c @@ -1,6 +1,10 @@ /*- * Copyright (c) 2017 Mellanox Technologies, Ltd. * All rights reserved. + * Copyright (c) 2024-2025 The FreeBSD Foundation + * + * Portions of this software were developed by Björn Zeeb + * under sponsorship from the FreeBSD Foundation. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -303,7 +307,7 @@ linux_kfree_async_fn(void *context, int pending) static struct task linux_kfree_async_task = TASK_INITIALIZER(0, linux_kfree_async_fn, &linux_kfree_async_task); -void +static void linux_kfree_async(void *addr) { if (addr == NULL) @@ -311,3 +315,16 @@ linux_kfree_async(void *addr) llist_add(addr, &linux_kfree_async_list); taskqueue_enqueue(linux_irq_work_tq, &linux_kfree_async_task); } + +void +lkpi_kfree(const void *ptr) +{ + if (ZERO_OR_NULL_PTR(ptr)) + return; + + if (curthread->td_critnest != 0) + linux_kfree_async(__DECONST(void *, ptr)); + else + free(__DECONST(void *, ptr), M_KMALLOC); +} + From nobody Sat Apr 12 20:49:43 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZlzX3gW3z5sfrS; Sat, 12 Apr 2025 20:49: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZlzX1M9Kz45Dx; Sat, 12 Apr 2025 20:49:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744490984; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iJCPxMB3h/DaUvqctxMBBnCUG5oXbjuPKFiLZSDTqD8=; b=GSZV8qwGq5qTpE1wer7fwkUo6U3bWqHZeCUhc1ITkMoOdxwsBlLYHZczcCnNmWbtN39sf0 wWj1oK2lggSFRM+S7Nnz0wDiU2wJOD3mV8ekUSkju9Ros/RGu4kUvwIphdTH3pQIa+bg06 Uhh3NZODVl45RyZ74jKslgX3MQoKZYgVxHcPc2bE9tfvPXH6+R5anPULYYREy2n+3nNJW/ VhFgBguJKYEJdlu/Cqhg4AFpG0UbJkqHbxhv5viwjfSgE5bcxS7Z9HHNe809u0jsUFMz4y NgaPmj5Jat9g//OCY12Ds9rHVjWhhbloeOOkx/Ht8XVrYApUdn2tCA5rky6Ovw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744490984; a=rsa-sha256; cv=none; b=Y72tKO5n9LwbAwCAqGUTCrnhp3xUYWU3tDilSbml5UHf65+0x1kc64uszyWlq/D/Rb5fvr /MFDAvnu/LImy+WnRvwRaoX9kdrfc96IxVt3loWid1V2VluTzkpDnWg/q9sv/fJsapDGD8 vmVRMO2PzEAr530CkLisnLUyfLD7H6raAgAA/2BLqD0bEAK02paOaKgAIzLFecEZh6Sx8v t2xxQh0M7ufGdUotk2nD9jq5tMmvGur8nvtk7nvi4378LYlt8bz6avte8HgWyUCB1/MZ7r M3eL2dVEi+BkdcFRsYXbd4XiDPgljm3olZYDeegOnq3LxXivZ8jEC9ogkOLvWQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744490984; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iJCPxMB3h/DaUvqctxMBBnCUG5oXbjuPKFiLZSDTqD8=; b=w5I0hm6tlW6b9gkw+yku7AJ1/WlMkuaB48Ug+bM6Dlsgoo8zyepOI7MiSe5vNiW5yp2lOG dzsrzmZoFQYjCANOKTkSNzVP2soGyngumLrouYhHeuvq2klYUoF3AG9wLmcAhbvoKwplrl WY5dHkwKfqIkYiw1/ebx1CGqlJ4H9qytC/0b68aExbCd58dbhew9AEQWZoOEXdbNL94F7n BmlLUFb9VrgfRmxZ7NmOKJWklUCnix+PjAdDCE/2y/0bcfbgBral1tyzppDXajP4Y0RB9Q pOqNWvvIYKtkdy4tovtBnM31rMNPvafiz22Q8s1kYUfWLt/FaRenzpdeuaoi3Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZlzX0WGQzYrJ; Sat, 12 Apr 2025 20:49:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53CKnhtY094766; Sat, 12 Apr 2025 20:49:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53CKnhKr094763; Sat, 12 Apr 2025 20:49:43 GMT (envelope-from git) Date: Sat, 12 Apr 2025 20:49:43 GMT Message-Id: <202504122049.53CKnhKr094763@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 7acd5af48cf1 - main - LinuxKPI: bump __FreeBSD_version to 1500037 for alloc routine changes List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7acd5af48cf1870ec48d5910dff1a26466d98074 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=7acd5af48cf1870ec48d5910dff1a26466d98074 commit 7acd5af48cf1870ec48d5910dff1a26466d98074 Author: Bjoern A. Zeeb AuthorDate: 2025-04-12 20:47:09 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-12 20:49:20 +0000 LinuxKPI: bump __FreeBSD_version to 1500037 for alloc routine changes Sponsored by: The FreeBSD Foundation --- UPDATING | 6 ++++++ sys/sys/param.h | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/UPDATING b/UPDATING index c97ba37d6447..15db36e0b44f 100644 --- a/UPDATING +++ b/UPDATING @@ -27,6 +27,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 15.x IS SLOW: world, or to merely disable the most expensive debugging functionality at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20250412: + LinuxKPI alloc routines were changed to return physically contiguous + memory where expected. These changes may require out-of-tree drivers + to be recompiled. + Bump __FreeBSD_version to 1500037 to be able to detect this change. + 20250409: Intel iwlwifi firmware has been removed from the src repository. Before updating their system, users of iwlwifi(4) or iwx(4) must diff --git a/sys/sys/param.h b/sys/sys/param.h index 4b7b4853e19d..39f3535a136d 100644 --- a/sys/sys/param.h +++ b/sys/sys/param.h @@ -73,7 +73,7 @@ * cannot include sys/param.h and should only be updated here. */ #undef __FreeBSD_version -#define __FreeBSD_version 1500036 +#define __FreeBSD_version 1500037 /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, From nobody Sat Apr 12 21:40:39 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZn6H32lMz5skNf; Sat, 12 Apr 2025 21:40:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZn6H27gVz3XKL; Sat, 12 Apr 2025 21:40:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744494039; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+vxl/tZl1/21KlENumlrDP2yX9RvzF4pZEn5h6oKcO0=; b=YrU0Qhr2PvZLmVy7j5vUCOKGLT6N0xqCsbLu9rV3kzotJpyxztWHEsGiE/qGqk6hJ+7AaU IMTwqyMkZs30m92Zf9C8bvmTc5/Ix41NwoQ3n/tvJEbW8KGDcaiD3n7+kpG1cz33cdDPzw tU0c/1GjRN8lVb60vjyQ+1/Ze1BOfFTEQvQPM4iU33WrwIwktkuq4h2uNEZ3/z1XP+rjZJ kf6Skg1Anlo0etff4LnlLu3A5efuyNOYFK2x6CzYGAhY14M22VvwPpn6TXxzkR6zlWrHj0 D0lW7f6WOBUEbTHTqX/opQMnAMMTHhcNv4iQrtmSDkGIvHkEBURE10Vnno5ltw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744494039; a=rsa-sha256; cv=none; b=qGMgnxJxUfLGtTRB0Iv/3tOive6+nWHxgJQYiAJuzwlHtc9nqfc41sIDrjrlOESyNE230g pU9vdqoegt+J+aeRs4+sJAv4Eev3u0vt8xKgh6+nQI+YLlv8BYTwlqsSsJvFSztdhSO/s5 TOFtKbdHqPgbey7YZWU20eT8kzKe/X53dx/k7JdzNrZW97YTGkFmLLUyeKtUyUn7FklfyA alBuVFOQclfu3OmfEkUN+wkrSSMXn2QpKsdEfoCMqkLf/iGw3ldkgG1GJgvaFeASJ38obp qlkig2IFt+LUq3NIunSJ6J2cBM3PLLyoqzuitI1l8Cyownu8Pfe6jV97D95RLQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744494039; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+vxl/tZl1/21KlENumlrDP2yX9RvzF4pZEn5h6oKcO0=; b=Lb7VRX0ACE2Hdb17Akmn8vyY9D+2EbB7zdvJ09GIMlb1+Q+QI4fyvejaHoH7UkWGLKLd4r 1NcZejBg8cMsHjIGLadptwNxbBN7HoJ5cZS0q9A5Q1Lk4GLDJoukn4XCTATGVWNEy3finf +6KcJqpVibqX9I/fxok9Q8DCPqtEZ4tZ/XsBtTeswyyPiL71cOsGj2nusplOhTqwsS5zra MnozP7AklaZdhQu61hSzBlMnTxYIZTZDeS0ka+NN5ezvB0/69dHb3BY11RP5k2ZCabNjdK rqVS+6/EIRqDoyThRlG3VgtwraNH5L/XpVXRhLKXPEN2sCUVljUaCYKwQrtCdg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZn6H1jGBzbmJ; Sat, 12 Apr 2025 21:40:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53CLedKK098508; Sat, 12 Apr 2025 21:40:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53CLedrx098505; Sat, 12 Apr 2025 21:40:39 GMT (envelope-from git) Date: Sat, 12 Apr 2025 21:40:39 GMT Message-Id: <202504122140.53CLedrx098505@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 63578bf225df - main - LinuxKPI: 802.11: enable fragmentation offload List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 63578bf225df37944b78febfb177e8c1c81f54e4 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=63578bf225df37944b78febfb177e8c1c81f54e4 commit 63578bf225df37944b78febfb177e8c1c81f54e4 Author: Bjoern A. Zeeb AuthorDate: 2025-04-12 19:50:06 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-04-12 21:38:24 +0000 LinuxKPI: 802.11: enable fragmentation offload Let the hardware handle fragmentation itself and tell net80211 to save itself from it. We already call the (*set_frag_threshold) mac80211 function. This should be a NOP for all currently enabled LinuxKPI based WiFi drivers. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/compat/linuxkpi/common/src/linux_80211.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 3548ad04b795..149926a54907 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -5759,6 +5759,10 @@ linuxkpi_ieee80211_ifattach(struct ieee80211_hw *hw) lhw->scan_flags |= LKPI_LHW_SCAN_HW; } + /* Does HW support Fragmentation offload? */ + if (ieee80211_hw_check(hw, SUPPORTS_TX_FRAG)) + ic->ic_flags_ext |= IEEE80211_FEXT_FRAG_OFFLOAD; + /* * The wiphy variables report bitmasks of avail antennas. * (*get_antenna) get the current bitmask sets which can be From nobody Sun Apr 13 02:10:13 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZZv5K5PgBz5t685; Sun, 13 Apr 2025 02:10: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZZv5K4s2qz3Htq; Sun, 13 Apr 2025 02:10:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744510213; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kzhiZRfTQ587B4ZoL2TDj1XotK/tsDUK0fZOiLoy5bw=; b=isk1rfr1w6cYF5U2IuoYJfFnpxeM1lVBCtIVceqJHvG1gLkbZ3Qt4+IWry3dowGa0TzuNz 5+mXVdfeHZcfTFlGx+pqp1r5xNAv5rvQNdxqmh7NIhbKqHo2N9FzShpj9apsx8ZbDrCr9l LNd1QMqPu/gCLiMmuKiggl3r2NMi3RfB96l2oaAH0w1MIqZxmerGlQtw3woXk53PaSjK1d D4yhLtAQy3I4vlRHTsYdtGvnz6DuUPLZyeBe+PNdbkomQiMxzwRVVjWu7DC1Tx4O7Me3AR 7/rBR+OZje3l+ufw54C5A/h3Xu31p194UNf5tEwWPdYYdUkY4c+AbB28pwMCLA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744510213; a=rsa-sha256; cv=none; b=qqQzAEmbZX0rl2R7Qo7dUiDQyhPaW9n+zy5VuzODsSohfoTfM3Dw3cWC9sEgLz1z20fn3P nGJ4vGiya/0n1fmSV4MKKBj4ZnMqwg2hD3ddcBgNi/DWfVno4QrXST/Eys+wdEnPrpAl7n VKaOQOmNdsXT8f9qNK4QUbw9LGXaMn/ovxWuNN/HJvxOVRd5YtbDr9MeZ6rLHeWEXgrhcj 2nczhIlC5lBOpplEVp7NaMtFC3KOiXx4nggia3S/ecKSzvtp3eu8d9qA2MfFQjfWtdpQSe xM/bDowvu8j1AZw/4guq5CITfmwCTr1o01BxU8iQUKugNaTkSYh2VeG1FAExPg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744510213; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kzhiZRfTQ587B4ZoL2TDj1XotK/tsDUK0fZOiLoy5bw=; b=GGvne8kJ+1jbYCN3CdsR3atmzbS6ZUne5rB1f6o4OpV8KT1XnbfQQp5U3/4MMpDNfoqM0E +wLtK2X3x1kcJ1dk3vn2ug53QXao01XcmMpRi/5mRDZb4WBTRgqDcg9Zr7rfY/G+cuzVlU d8dUZp7Fqf/MKvoFpFthgyfltweom8heK9jgGP+XP2AlRlAGSfTYoYR7CPTu++HaakCaTF 4s89mgwOnNdcrZXzT3FqqfZLVWy7KH7rv+u3bII+xr7nr8Eiw20tKINyGIvsBywuHdKxxl DubICxI/Tw35wYZ/noTXBqzFHQMsWSnEWYozHTniwovTRACsbWn46blJMubS1w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZZv5K45wCzkKS; Sun, 13 Apr 2025 02:10:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53D2ADp9001400; Sun, 13 Apr 2025 02:10:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53D2ADu8001388; Sun, 13 Apr 2025 02:10:13 GMT (envelope-from git) Date: Sun, 13 Apr 2025 02:10:13 GMT Message-Id: <202504130210.53D2ADu8001388@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Colin Percival Subject: git: 43d19e6a4c42 - main - dhclient: Keep two clocks List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 43d19e6a4c42ade0f276ceca18a09e2e3829fce4 Auto-Submitted: auto-generated The branch main has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=43d19e6a4c42ade0f276ceca18a09e2e3829fce4 commit 43d19e6a4c42ade0f276ceca18a09e2e3829fce4 Author: Colin Percival AuthorDate: 2025-04-08 22:50:01 +0000 Commit: Colin Percival CommitDate: 2025-04-13 02:09:56 +0000 dhclient: Keep two clocks Until July 2024, dhclient kept track of time as seconds-since-epoch as a time_t. This was a problem because (a) we wanted sub-second timeouts and (b) timeouts didn't always do the right thing if the system clock changed. Switching to using CLOCK_MONOTONIC and struct timespec fixed those issues but introduced a new problem: CLOCK_MONOTONIC values were being intepreted as seconds-since-epoch and written to the dhclient.leases file, causing confusion with DHCP leases expiring in early 1970. Attempt to compromise between these by keeping track of both times; any type within dhclient which is a time_t now refers to seconds past the epoch, while any struct timespec value is a CLOCK_MONOTONIC time. PR: 283256 Reviewed by: dch Fixes: f0a38976b01e ("dhclient: Use clock_gettime() instead of time()") Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D49720 --- sbin/dhclient/dhclient.c | 50 +++++++++++++++++++++--------------------------- sbin/dhclient/dhcpd.h | 4 ++-- sbin/dhclient/dispatch.c | 14 +++++++++----- 3 files changed, 33 insertions(+), 35 deletions(-) diff --git a/sbin/dhclient/dhclient.c b/sbin/dhclient/dhclient.c index 93988d5ce7a4..cbab3fa2973c 100644 --- a/sbin/dhclient/dhclient.c +++ b/sbin/dhclient/dhclient.c @@ -90,8 +90,8 @@ cap_channel_t *capsyslog; -time_t cur_time; -struct timespec time_now; +time_t cur_time; /* Seconds since epoch. */ +struct timespec time_now; /* CLOCK_MONOTONIC. */ static time_t default_lease_time = 43200; /* 12 hours... */ const char *path_dhclient_conf = _PATH_DHCLIENT_CONF; @@ -450,7 +450,7 @@ main(int argc, char *argv[]) tzset(); clock_gettime(CLOCK_MONOTONIC, &time_now); - cur_time = time_now.tv_sec; + cur_time = time(NULL); inaddr_broadcast.s_addr = INADDR_BROADCAST; inaddr_any.s_addr = INADDR_ANY; @@ -1030,13 +1030,13 @@ dhcpoffer(struct packet *packet) struct client_lease *lease, *lp; int i; struct timespec arp_timeout_needed; - struct timespec stop_selecting = { .tv_sec = 0, .tv_nsec = 0 }; - time_now.tv_sec = cur_time; - time_now.tv_nsec = 0; - + time_t stop_selecting; + struct timespec stop_time; const char *name = packet->options[DHO_DHCP_MESSAGE_TYPE].len ? "DHCPOFFER" : "BOOTREPLY"; + clock_gettime(CLOCK_MONOTONIC, &time_now); + /* If we're not receptive to an offer right now, or if the offer has an unrecognizable transaction id, then just drop it. */ if (ip->client->state != S_SELECTING || @@ -1095,7 +1095,7 @@ dhcpoffer(struct packet *packet) arp_timeout_needed = arp_timeout; /* Figure out when we're supposed to stop selecting. */ - stop_selecting.tv_sec = + stop_selecting = ip->client->first_sending + ip->client->config->select_interval; /* If this is the lease we asked for, put it at the head of the @@ -1116,7 +1116,7 @@ dhcpoffer(struct packet *packet) timespecadd(&time_now, &arp_timeout_needed, &interm_struct); if (ip->client->offered_leases && - timespeccmp(&interm_struct, &stop_selecting, >)) + interm_struct.tv_sec >= stop_selecting) arp_timeout_needed = zero_timespec; /* Put the lease at the end of the list. */ @@ -1131,27 +1131,21 @@ dhcpoffer(struct packet *packet) } } - /* If we're supposed to stop selecting before we've had time - to wait for the ARPREPLY, add some delay to wait for - the ARPREPLY. */ - struct timespec time_left; - timespecsub(&stop_selecting, &time_now, &time_left); - + /* + * Wait until stop_selecting seconds past the epoch, or until + * arp_timeout_needed past now, whichever is longer. Note that + * the first case only occurs if select-timeout is set to nonzero + * in dhclient.conf. + */ + struct timespec time_left = + {.tv_sec = stop_selecting - cur_time, .tv_nsec = 0}; if (timespeccmp(&time_left, &arp_timeout_needed, <)) { - timespecadd(&time_now, &arp_timeout_needed, &stop_selecting); - } - - /* If the selecting interval has expired, go immediately to - state_selecting(). Otherwise, time out into - state_selecting at the select interval. */ - - - if (timespeccmp(&stop_selecting, &zero_timespec, <=)) - state_selecting(ip); - else { - add_timeout_timespec(stop_selecting, state_selecting, ip); - cancel_timeout(send_discover, ip); + timespecadd(&time_now, &arp_timeout_needed, &stop_time); + } else { + timespecadd(&time_now, &time_left, &stop_time); } + add_timeout_timespec(stop_time, state_selecting, ip); + cancel_timeout(send_discover, ip); } /* Allocate a client_lease structure and initialize it from the parameters diff --git a/sbin/dhclient/dhcpd.h b/sbin/dhclient/dhcpd.h index 6f1f6679875c..c61564067598 100644 --- a/sbin/dhclient/dhcpd.h +++ b/sbin/dhclient/dhcpd.h @@ -361,8 +361,8 @@ char *piaddr(struct iaddr); extern cap_channel_t *capsyslog; extern const char *path_dhclient_conf; extern char *path_dhclient_db; -extern struct timespec time_now; -extern time_t cur_time; +extern struct timespec time_now; /* CLOCK_MONOTONIC */ +extern time_t cur_time; /* Seconds since epoch */ extern int log_priority; extern int log_perror; diff --git a/sbin/dhclient/dispatch.c b/sbin/dhclient/dispatch.c index 72230c01a491..06bd31e5ec82 100644 --- a/sbin/dhclient/dispatch.c +++ b/sbin/dhclient/dispatch.c @@ -159,8 +159,8 @@ dispatch(void) struct protocol *l; struct pollfd *fds; struct timespec howlong; - time_now.tv_sec = cur_time; - time_now.tv_nsec = 0; + + clock_gettime(CLOCK_MONOTONIC, &time_now); for (l = protocols; l; l = l->next) nfds++; @@ -224,7 +224,7 @@ another: if (count == -1) { if (errno == EAGAIN || errno == EINTR) { clock_gettime(CLOCK_MONOTONIC, &time_now); - cur_time = time_now.tv_sec; + cur_time = time(NULL); continue; } else error("poll: %m"); @@ -232,7 +232,7 @@ another: /* Get the current time... */ clock_gettime(CLOCK_MONOTONIC, &time_now); - cur_time = time_now.tv_sec; + cur_time = time(NULL); i = 0; for (l = protocols; l; l = l->next) { @@ -365,7 +365,11 @@ active: void add_timeout(time_t when_s, void (*where)(void *), void *what) { - struct timespec when = { .tv_sec = when_s, .tv_nsec = 0 }; + struct timespec when; + + cur_time = time(NULL); + clock_gettime(CLOCK_MONOTONIC, &when); + when.tv_sec += when_s - cur_time; add_timeout_timespec(when, where, what); } From nobody Sun Apr 13 08:34:02 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Zb3cC2kFMz5svpZ; Sun, 13 Apr 2025 08:34:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zb3cC0vX4z3Tf5; Sun, 13 Apr 2025 08:34:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744533243; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3V4lZGC4Kph8FIh/im4DgKASwt3zdK2FlQvqImdygHI=; b=GTfsVUVXRY+lCfGH/7jCSsSSsPY9I+5F6mp9Tt1TvCKZRq6G8Ynld8dpz67vGvcPa6BdmQ HVNMyFbI52Oqkgrwjlt6Mr+Xz01Jy//q2M5/gVTjh33ZNSHEhoK3RVqEWGIT9Dhn8LyacU HxHTT+YoEgx95PZnGP5w0HcFD+v5aFYLiV+d9JAbKksMmKApDenhoRnbKD4jMssQ2dhxNN B6NRyQzgT69uHm87zipj/a9f6RbzzMBebDhaSE0JXS1tgDlcY+9aCMYJNYMMrZ/CeHJmPt 65ACqTTgcJeyI94nXmUQJjnF5vdCyfY0JJ2SYT2aKIUDAmMqSGeu0WB7TshtVw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744533243; a=rsa-sha256; cv=none; b=M+CtcCcTvrMTO0S7/ARo4746gDhlWTjtCPeQaesQ+ALfWl1UZhiQf5D8iKo3O2QpMf2sAs onz6evIa9JDoWOYPBo0LowEIWxkcSD3dBjIEkFcFtDPspCDC3S9XlleZC1ZzX4+P5lzLUL 9uLmzpcnUr38bsLM7ltJnbENvD/tnfzp6qBlpEyP0L7kp9NUgEKP7FDyg+6A2QLCcB1+AG 8IC5Oz0UPo/4ikE3+tyICzN60XZoGYFXCGQRZqDj8F4LAw+cE8QcAHaJhGVxmSngWDDXNa Ke8OebFSbXQmZopg99muqVPGyTA/3DyZy3Iyujiu0mNdGqOcAN67bGYVhwQg0Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744533243; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3V4lZGC4Kph8FIh/im4DgKASwt3zdK2FlQvqImdygHI=; b=wFzbNTp5eEWSMLBjJ7G+Wr8/Jk72SOiMq3nBMj0CQfvp3P8OyRHrqV8GQJv6OiD5idutXH d59lYiabPVhUvELPV9HyIGVd6u6at4yfIz7gtv2E1IMmwSZXrGnIm5n3jRgCKsXSGcn+SF YsqJy5lWRf/0JDngbV19kdz8pZTQGNgv/0ShB0++tNxSWh2dGbPsUEhJQQwpFzHHClSqeQ N5kAO24dMuZABln3MHq2uGzgN071PyPcDrVk3SwhbhOGzV0sSoeEHcZANUDHiSy96itOgw jJIZ6yzDDbT0mRGnawkCU0toPjvEFcv+4bT9zZ2shLFqNC2JPkDKXmSXVNXpuA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Zb3cC02jNzw06; Sun, 13 Apr 2025 08:34:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53D8Y2lB021611; Sun, 13 Apr 2025 08:34:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53D8Y2ZN021608; Sun, 13 Apr 2025 08:34:02 GMT (envelope-from git) Date: Sun, 13 Apr 2025 08:34:02 GMT Message-Id: <202504130834.53D8Y2ZN021608@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Doug Moore Subject: git: c7780859aa9e - main - vm: wrap long lines List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dougm X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c7780859aa9ebf98a177d5efd87243bcf77e4268 Auto-Submitted: auto-generated The branch main has been updated by dougm: URL: https://cgit.FreeBSD.org/src/commit/?id=c7780859aa9ebf98a177d5efd87243bcf77e4268 commit c7780859aa9ebf98a177d5efd87243bcf77e4268 Author: Doug Moore AuthorDate: 2025-04-13 08:28:50 +0000 Commit: Doug Moore CommitDate: 2025-04-13 08:28:50 +0000 vm: wrap long lines In a few places where the 80-character limit is violated, wrap lines to restore proper style. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D49802 --- sys/vm/vm_object.c | 14 ++++++++------ sys/vm/vm_page.c | 7 ++++--- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c index 1bf5bbe5abb2..689ad7499f5c 100644 --- a/sys/vm/vm_object.c +++ b/sys/vm/vm_object.c @@ -2725,8 +2725,9 @@ DB_SHOW_COMMAND_FLAGS(vmochk, vm_object_check, DB_CMD_MEMSAFE) TAILQ_FOREACH(object, &vm_object_list, object_list) { if ((object->flags & OBJ_ANON) != 0) { if (object->ref_count == 0) { - db_printf("vmochk: internal obj has zero ref count: %ld\n", - (long)object->size); + db_printf( + "vmochk: internal obj has zero ref count: %lu\n", + (u_long)object->size); } if (!vm_object_in_map(object)) { db_printf( @@ -2761,11 +2762,12 @@ DB_SHOW_COMMAND(object, vm_object_print_static) if (object == NULL) return; - db_iprintf( - "Object %p: type=%d, size=0x%jx, res=%d, ref=%d, flags=0x%x ruid %d charge %jx\n", + db_iprintf("Object %p: type=%d, size=0x%jx, res=%d, ref=%d, flags=0x%x", object, (int)object->type, (uintmax_t)object->size, - object->resident_page_count, object->ref_count, object->flags, - object->cred ? object->cred->cr_ruid : -1, (uintmax_t)object->charge); + object->resident_page_count, object->ref_count, object->flags); + db_iprintf(" ruid %d charge %jx\n", + object->cred ? object->cred->cr_ruid : -1, + (uintmax_t)object->charge); db_iprintf(" sref=%d, backing_object(%d)=(%p)+0x%jx\n", atomic_load_int(&object->shadow_count), object->backing_object ? object->backing_object->ref_count : 0, diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index 5214b3c956ba..f1a891ff6955 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -3442,8 +3442,8 @@ int vm_page_reclaim_contig_domain(int domain, int req, u_long npages, vm_paddr_t low, vm_paddr_t high, u_long alignment, vm_paddr_t boundary) { - return (vm_page_reclaim_contig_domain_ext(domain, req, npages, low, high, - alignment, boundary, 1)); + return (vm_page_reclaim_contig_domain_ext(domain, req, npages, low, + high, alignment, boundary, 1)); } int @@ -3757,7 +3757,8 @@ vm_page_pagequeue(vm_page_t m) #endif static __always_inline bool -vm_page_pqstate_fcmpset(vm_page_t m, vm_page_astate_t *old, vm_page_astate_t new) +vm_page_pqstate_fcmpset(vm_page_t m, vm_page_astate_t *old, + vm_page_astate_t new) { vm_page_astate_t tmp; From nobody Sun Apr 13 10:00:55 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Zb5XR5h2bz5t3Fc; Sun, 13 Apr 2025 10:00: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zb5XR4MRLz46ZC; Sun, 13 Apr 2025 10:00:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744538455; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dzyUNMLUD1sp8OKvnNX2CMibpsl2GsVbJzBpczcps9A=; b=qAEfDg+mhfk1CC2pi06pk9xWsf/yZxUSca5dV6sScSp7d1kvtDGlg3yIMhylJTRJ9xfMI0 zp930YoChp5Lya3Q+1MXc0rgTGXrUo9eGEGVk+2fktRLDCOWJ1C9YZuEolFtyc/mDS7wYb 6paO1ovuJHTjqzl37+0f9iZhXNCO24qSUB++D80cdogfQazlwRnYFW6pHfjwmXWeN8QGGP j2/5jFzgNxB1LSgiv/SH6Tz+WsR+h+MiK2vOAp5ExV8m9zjS+L5QFrwNr0cJzE/fuG55nb Lbw0XUAABgv5ZVmIPbrYMgUCa4zRCjU80a3a9UPSnPsWVsGJ2zPg5MdHqWuXXg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744538455; a=rsa-sha256; cv=none; b=B8aNHLEuVVOWxHPUr42J2JpFtmKp+AR1/XvXMSG+kjdzHHkkMm0PgGJoQyAb1u4KvvDMSy q1XZ2LbzDuFigj6Zy+ssNWm2kGgBbfM5knbW2nAQmMQXmRLYaGCdUnoFBQ5K9R0D5tSV4f CTnw1gIFqqRqno+r3f5dXH0tTWrNeKAZq4aqHKZuadIrLg3UL/jXeTjohUv8pA/zG0ja1o pe1wsxxOCBnrjleeR2OZ3sJeWmeifTQ3GLMOX7pGyd78TmEHp9/9dmwnjb4VlyDnlTXB/1 HP8baXXstWcng4/9yaC8Ba2k/1bbkFAoIOpNlAOG6DvjrLMhIBD6+ZAqkZK98Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744538455; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dzyUNMLUD1sp8OKvnNX2CMibpsl2GsVbJzBpczcps9A=; b=he+M2EugjDZioLW2NK71yyRK5D9w6iH5UI7cfVIOcO3UoQNVNasPzEwCQJMJmQVUFfJj7g uAvoI2zZoO3VjLZGsZQzGlj03EbX2yq2sD2nGZJJ+vRP+ySFLYABzVcG5dpxDOkPyA0TCa z3LY73mQDUOEtYsAhvCxUqUiuwt07jOAjMJva1X32KiiqUipPFYlg10yNTSkUZV0eSAFjN 0WHBzZJIWkDKxFXQBHo4YM018jED1+vQ1RA2QWEqaPv7+0hHIbzTysZlwd3f3GpzBpcBB2 8jWeTsib1NN26zgwOdZGSN8/7nk8NluhH+s7JGvSIpgsXqs9jWCkNQNMEIXHKA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Zb5XR3xKvzy1J; Sun, 13 Apr 2025 10:00:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53DA0tbN083917; Sun, 13 Apr 2025 10:00:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53DA0thC083914; Sun, 13 Apr 2025 10:00:55 GMT (envelope-from git) Date: Sun, 13 Apr 2025 10:00:55 GMT Message-Id: <202504131000.53DA0thC083914@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: 78e25e65bf38 - main - lindebugfs: Add `debugfs_create_str()` List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 78e25e65bf381303c8bdac9a713ab7b26a854b8c Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=78e25e65bf381303c8bdac9a713ab7b26a854b8c commit 78e25e65bf381303c8bdac9a713ab7b26a854b8c Author: Jean-Sébastien Pédron AuthorDate: 2025-02-08 19:10:53 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-04-13 09:50:14 +0000 lindebugfs: Add `debugfs_create_str()` This function is used by the i915 DRM driver starting with Linux 6.8. Reviewed by: bz, emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49067 --- sys/compat/lindebugfs/lindebugfs.c | 115 +++++++++++++++++++++ sys/compat/linuxkpi/common/include/linux/debugfs.h | 2 + sys/modules/lindebugfs/Makefile | 1 + 3 files changed, 118 insertions(+) diff --git a/sys/compat/lindebugfs/lindebugfs.c b/sys/compat/lindebugfs/lindebugfs.c index 37028b667be8..97f73e79fb6c 100644 --- a/sys/compat/lindebugfs/lindebugfs.c +++ b/sys/compat/lindebugfs/lindebugfs.c @@ -624,6 +624,121 @@ debugfs_create_atomic_t(const char *name, umode_t mode, struct dentry *parent, a } +static int +fops_str_open(struct inode *inode, struct file *filp) +{ + + return (simple_open(inode, filp)); +} + +static ssize_t +fops_str_read(struct file *filp, char __user *ubuf, size_t read_size, + loff_t *ppos) +{ + ssize_t ret; + char *str, *str_with_newline; + size_t str_len, str_with_newline_len; + + if (filp->private_data == NULL) + return (-EINVAL); + + str = *(char **)filp->private_data; + str_len = strlen(str); + + /* + * `str_with_newline` is terminated with a newline, but is not + * NUL-terminated. + */ + str_with_newline_len = str_len + 1; + str_with_newline = kmalloc(str_with_newline_len, GFP_KERNEL); + if (str_with_newline == NULL) + return (-ENOMEM); + + strncpy(str_with_newline, str, str_len); + str_with_newline[str_len] = '\n'; + + ret = simple_read_from_buffer(ubuf, read_size, ppos, + str_with_newline, str_with_newline_len); + + kfree(str_with_newline); + + return (ret); +} + +static ssize_t +fops_str_write(struct file *filp, const char *buf, size_t write_size, + loff_t *ppos) +{ + char *old, *new; + size_t old_len, new_len; + + if (filp->private_data == NULL) + return (-EINVAL); + + old = *(char **)filp->private_data; + new = NULL; + + /* + * We enforce concatenation of the newly written value to the existing + * value. + */ + old_len = strlen(old); + if (*ppos && *ppos != old_len) + return (-EINVAL); + + new_len = old_len + write_size; + if (new_len + 1 > PAGE_SIZE) + return (-E2BIG); + + new = kmalloc(new_len + 1, GFP_KERNEL); + if (new == NULL) + return (-ENOMEM); + + memcpy(new, old, old_len); + if (copy_from_user(new + old_len, buf, write_size) != 0) { + kfree(new); + return (-EFAULT); + } + + new[new_len] = '\0'; + strim(new); + + filp->private_data = &new; + + kfree(old); + + return (write_size); +} + +static const struct file_operations fops_str = { + .owner = THIS_MODULE, + .open = fops_str_open, + .read = fops_str_read, + .write = fops_str_write, + .llseek = no_llseek +}; +static const struct file_operations fops_str_ro = { + .owner = THIS_MODULE, + .open = fops_str_open, + .read = fops_str_read, + .llseek = no_llseek +}; +static const struct file_operations fops_str_wo = { + .owner = THIS_MODULE, + .open = fops_str_open, + .write = fops_str_write, + .llseek = no_llseek +}; + +void +debugfs_create_str(const char *name, umode_t mode, struct dentry *parent, + char **value) +{ + debugfs_create_mode_unsafe(name, mode, parent, value, + &fops_str, &fops_str_ro, &fops_str_wo); +} + + static ssize_t fops_blob_read(struct file *filp, char __user *ubuf, size_t read_size, loff_t *ppos) { diff --git a/sys/compat/linuxkpi/common/include/linux/debugfs.h b/sys/compat/linuxkpi/common/include/linux/debugfs.h index 54145b61503e..4d146e085a7b 100644 --- a/sys/compat/linuxkpi/common/include/linux/debugfs.h +++ b/sys/compat/linuxkpi/common/include/linux/debugfs.h @@ -115,6 +115,8 @@ void debugfs_create_ulong(const char *name, umode_t mode, struct dentry *parent, unsigned long *value); void debugfs_create_atomic_t(const char *name, umode_t mode, struct dentry *parent, atomic_t *value); +void debugfs_create_str(const char *name, umode_t mode, struct dentry *parent, + char **value); struct dentry *debugfs_create_blob(const char *name, umode_t mode, struct dentry *parent, struct debugfs_blob_wrapper *value); diff --git a/sys/modules/lindebugfs/Makefile b/sys/modules/lindebugfs/Makefile index dce9a2a3e955..44041011b407 100644 --- a/sys/modules/lindebugfs/Makefile +++ b/sys/modules/lindebugfs/Makefile @@ -14,6 +14,7 @@ EXPORT_SYMS+= debugfs_create_file EXPORT_SYMS+= debugfs_create_file_size EXPORT_SYMS+= debugfs_create_file_unsafe EXPORT_SYMS+= debugfs_create_mode_unsafe +EXPORT_SYMS+= debugfs_create_str EXPORT_SYMS+= debugfs_create_symlink EXPORT_SYMS+= debugfs_create_u8 EXPORT_SYMS+= debugfs_create_u16 From nobody Sun Apr 13 10:00:57 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Zb5XV2ptNz5t3PD; Sun, 13 Apr 2025 10:00: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zb5XT6ZYJz46Tt; Sun, 13 Apr 2025 10:00:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744538458; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=T/Sh0ZgR6VaFZZHJBPG767cKyuE50AObwtPnBEnHcVw=; b=xK3Nk8lYQyMtIWqStNNmvsx3iCAcxs+h1ztvtDHpFRm7vvFS1W6sD5f+QgP04f2VKI1dxD YDtDwGM5hVWXvVYyKv1ELr/0btjuE9nCiSi9ldU+erDfet0OptnF/e77p3AX4FodFMdf1y CQcWcAJG4upivuEriSFbStb/7rDUu1NYThPHbzsQYup8N1nBw6sTY2kqNhW9J6zxkInaYQ lwHo5BsO78Hnb69IJsgAJcCpAxp29DGQMg+jo+7+4NTUsYE7tZeSD2D0gUlpo1NHB+GulO rHWCPPdxE+dTkGJEc83rKCYCkoivNnIp2v+F6UdITyfgiMEGT7tvYIo0cVkO4A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744538458; a=rsa-sha256; cv=none; b=EbS+XM+o3hthhea/B/34IIZ3+sxu86tRMFSXCcRImuQxDzDgRvjC4drc5bgxU+DGSnnHTm YNBj/Z+VlKMvkmLgwk6/Lu7tupLRfegYAAlkRSgVczHTrURrhn8h2CgH84ir3BTa3zsq6x jm7F9ynolqzyzC7aXBPJLjjmtUF3c23QZ79D0BZG7nM4OJ/Z5t7mvS/5FgMXQy5oSGfN7c qVefY+2q3zc7ekLEIebh7SJXlo4adG6oUBltU56zoB8S1JKgV6DApFDR2lqow0X3xhsVJf Q9Pt8JMZxR+i+n308EIYCDah89MPSC7yUA+um86VdLPyew/9HabVKNsGcB/oJg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744538458; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=T/Sh0ZgR6VaFZZHJBPG767cKyuE50AObwtPnBEnHcVw=; b=eH6Kyzf5UPezTT4Go1UdJBWvFBnsLa0m09kQqqCLMLT5AIc2wEguDuFNLBhVmEwMrgEgiR GQOGGbsXZKZ3cXnrGEKRXRBgpjZwPILEOmadKb0RnFQ6TTaoRT9pNMhERM9RLaA0w+3gDj q7t1YBdoOLMshNVr27gf3dOsn0NOFe5g1+hxzV59VioECmyUlDpiHUpbkgN20dMsoSB7+2 ZamheaYHqqKany0VErAydS+5vKcmt6tBWhi9VZ3kw8uVkyeFJPuvF3eG3y01gTEFgj3Cbg GWVCIDT5xHCYItVlN3Sri8pLjT93ahkhwxf2V1E1e+ZcesrY2uziHOTeeH6Iqg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Zb5XT69VtzyHJ; Sun, 13 Apr 2025 10:00:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53DA0vn7083999; Sun, 13 Apr 2025 10:00:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53DA0vEZ083996; Sun, 13 Apr 2025 10:00:57 GMT (envelope-from git) Date: Sun, 13 Apr 2025 10:00:57 GMT Message-Id: <202504131000.53DA0vEZ083996@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: 21b556557e46 - main - linuxkpi: Fix `pci_upstream_bridge()` with DRM devices List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 21b556557e464701960c4a8b4dcc062cb3954ddc Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=21b556557e464701960c4a8b4dcc062cb3954ddc commit 21b556557e464701960c4a8b4dcc062cb3954ddc Author: Jean-Sébastien Pédron AuthorDate: 2025-03-03 23:48:20 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-04-13 09:51:13 +0000 linuxkpi: Fix `pci_upstream_bridge()` with DRM devices In the case of DRM drivers, the passed device is a child of `vgapci`. We want to start the lookup from `vgapci`, so the parent of the passed `drmn`. We use the `isdrm` flag to determine if we are in this situation. This fixes an infinite loop with the amdgpu DRM driver that started to use this function in Linux 6.8: `pci_upstream_bridge()` was returning itself and the code in amdgpu was calling it again, hoping to get a device with a vendor that is not "ATI". Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49388 --- sys/compat/linuxkpi/common/include/linux/pci.h | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/include/linux/pci.h b/sys/compat/linuxkpi/common/include/linux/pci.h index afd6c827b3b4..e4e8e5c0abd1 100644 --- a/sys/compat/linuxkpi/common/include/linux/pci.h +++ b/sys/compat/linuxkpi/common/include/linux/pci.h @@ -523,7 +523,20 @@ pci_upstream_bridge(struct pci_dev *pdev) if (pdev == pdev->bus->self) { device_t bridge; - bridge = device_get_parent(pdev->dev.bsddev); + /* + * In the case of DRM drivers, the passed device is a child of + * `vgapci`. We want to start the lookup from `vgapci`, so the + * parent of the passed `drmn`. + * + * We can use the `isdrm` flag to determine this. + */ + bridge = pdev->dev.bsddev; + if (pdev->pdrv != NULL && pdev->pdrv->isdrm) + bridge = device_get_parent(bridge); + if (bridge == NULL) + goto done; + + bridge = device_get_parent(bridge); if (bridge == NULL) goto done; bridge = device_get_parent(bridge); From nobody Sun Apr 13 10:00:56 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Zb5XT21r3z5t3K5; Sun, 13 Apr 2025 10:00: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zb5XS5r8Pz46ZH; Sun, 13 Apr 2025 10:00:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744538456; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z/AHFPTaWO0Ny7j02MzORaba7auVZuhu+tReHBZZfKU=; b=Cc81WmgQuTh6YBdGZYxvaohCEsgbHQ2gW00s20YVSWQARaThIHDLruZsr5j8IwxLcPkz42 q+7ktomGUHIZZV+L2vRGxcFAe9wgIpx9qRKN3iop4SmoUuqVJWCcQZiAWVbKaGAVXbSPa9 jV5PcYG56M4xjkOJ6yac9xp/6UPe6LE+hYBmrKaP+v2gW2Wm3tA9PvugX1jZbW0hkhjEbd VOkOVvZyQA4qhvhkU5l488LeHm8hGoE86kwjjhvcGBz+4bvdFDN18O/3dqDe+Wd+K8bO/q kar/IdShnhS1FNfBDJ1JxtC55WAtPb/T088DMHWCkIKXTMxizEN2LbwG2RzrmA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744538456; a=rsa-sha256; cv=none; b=RsCps4a7HlLkQVakdM0vO9ylnuYZKoJcVZLDtcmJiCZL7BjT0UgWWcZsGiF+4tSutpBstH /MFno6iONfA5Txq1jHJdyHNfVXZQJ6Xyk11u8xQFJ8GKxNeRp7oXn3adj9iqhHDowU0y7M Y59o0xlh6B3uedUESLX/2v0ikawWj86tdA5EhG8in8tWfYFsXLaoNk9S5dna+9p2rBqz16 XmqfBzb29PUie9hH6Y76O1shIL60JEq/xOsVv7GiDggXekJc9OxZ8GJ2RF1XRd+x/Q978s H5eaQcR8mMpQLw1jET9TFTTM+bwUTFPp6AmRcrcfSrVQKcQjQfmjFkZO4QTFSQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744538456; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z/AHFPTaWO0Ny7j02MzORaba7auVZuhu+tReHBZZfKU=; b=tznvj6UFbZ1xmCcCia2OcuCGOSFBJAb9r1qxeFtgXE+9QbuztCy4CuPiCNi9uBkv4HSWoI ZvsJIHhkeW0Q+bOKKFsA6nkgBdFj5gt1YO6N948dwZCMB+B3W1sEYeo50tXu/tAT69PlTX pm490WodELwJgV9ROfaLuT9JVNfPmOHaiC2I2hlE1a+KzNEcOUKWHdjzWW8fHVr9gyvwrx d/f6uVX5d7GHEyAAi7XEN+oTvZcQzN/1j6iuik1NF2UewvC1UoOUBQXZjdKCx/+3I20oye NZQcCoyPx8Bq4Vvhoqzk1ztGgEVgV85W7GBj4r0pl4U6znRLlpKkMjfR7O7RgA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Zb5XS5CNnzxpX; Sun, 13 Apr 2025 10:00:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53DA0uWi083958; Sun, 13 Apr 2025 10:00:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53DA0uPJ083955; Sun, 13 Apr 2025 10:00:56 GMT (envelope-from git) Date: Sun, 13 Apr 2025 10:00:56 GMT Message-Id: <202504131000.53DA0uPJ083955@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: =?utf-8?Q?Jean-S=C3=A9bastien?= =?utf-8?Q?P=C3=A9dron?= Subject: git: d9a2c2e250ae - main - linuxkpi: Add `memcpy_{from,to}_page()` List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dumbbell X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d9a2c2e250ae561fc2ff6c12dda53f70fb8c76b6 Auto-Submitted: auto-generated The branch main has been updated by dumbbell: URL: https://cgit.FreeBSD.org/src/commit/?id=d9a2c2e250ae561fc2ff6c12dda53f70fb8c76b6 commit d9a2c2e250ae561fc2ff6c12dda53f70fb8c76b6 Author: Jean-Sébastien Pédron AuthorDate: 2025-02-28 23:25:29 +0000 Commit: Jean-Sébastien Pédron CommitDate: 2025-04-13 09:50:42 +0000 linuxkpi: Add `memcpy_{from,to}_page()` The i915 DRM driver started to use it in Linux 6.8. Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D49384 --- sys/compat/linuxkpi/common/include/linux/highmem.h | 30 ++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/sys/compat/linuxkpi/common/include/linux/highmem.h b/sys/compat/linuxkpi/common/include/linux/highmem.h index b8874481f9c6..8b5255c1869c 100644 --- a/sys/compat/linuxkpi/common/include/linux/highmem.h +++ b/sys/compat/linuxkpi/common/include/linux/highmem.h @@ -139,4 +139,34 @@ kunmap_local(void *addr) kunmap_atomic(addr); } +static inline void +memcpy_from_page(char *to, struct page *page, size_t offset, size_t len) +{ + char *from; + + KASSERT(offset + len <= PAGE_SIZE, + ("%s: memcpy from page %p to address %p: " + "offset+len (%zu+%zu) would go beyond page end", + __func__, page, to, offset, len)); + + from = kmap_local_page(page); + memcpy(to, from + offset, len); + kunmap_local(from); +} + +static inline void +memcpy_to_page(struct page *page, size_t offset, const char *from, size_t len) +{ + char *to; + + KASSERT(offset + len <= PAGE_SIZE, + ("%s: memcpy from address %p to page %p: " + "offset+len (%zu+%zu) would go beyond page end", + __func__, from, page, offset, len)); + + to = kmap_local_page(page); + memcpy(to + offset, from, len); + kunmap_local(to); +} + #endif /* _LINUXKPI_LINUX_HIGHMEM_H_ */ From nobody Sun Apr 13 11:06:42 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Zb71R35J3z5t8NQ; Sun, 13 Apr 2025 11:07:39 +0000 (UTC) (envelope-from mike@reifenberger.com) Received: from b1.eeeit.de (b1.eeeit.de [94.16.108.56]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4Zb71P4stNz3RYS; Sun, 13 Apr 2025 11:07:37 +0000 (UTC) (envelope-from mike@reifenberger.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=reifenberger.com header.s=nov24ed header.b="BEIU/OMD"; dkim=pass header.d=reifenberger.com header.s=nov24rsa header.b=YSbXVyFg; dmarc=pass (policy=reject) header.from=reifenberger.com; spf=pass (mx1.freebsd.org: domain of mike@reifenberger.com designates 94.16.108.56 as permitted sender) smtp.mailfrom=mike@reifenberger.com Received: from [10.0.0.190] (ip5f5bea8d.dynamic.kabel-deutschland.de [95.91.234.141]) by b1.eeeit.de (Postfix) with ESMTPSA id 16DE7917FD; Sun, 13 Apr 2025 13:06:58 +0200 (CEST) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=reifenberger.com; s=nov24ed; t=1744542419; 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=r9c4kx7V1ettScbwNi6sTbWw/9tbudozYY2P1hHIh7M=; b=BEIU/OMD9cZuXHddQEWVO4lIy9qGq6dLMVYDYINFEImU2o/vEA+8ZBF2+Se1WEMC16wNEu GQmQi2f60ZeMQcCA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=reifenberger.com; s=nov24rsa; t=1744542419; 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=r9c4kx7V1ettScbwNi6sTbWw/9tbudozYY2P1hHIh7M=; b=YSbXVyFgBE2wsorEf0+TGqrK6wc+9DxynwVC9ZI6wSA+uiC5AoMfY/Cj/S2Kig+HdThWkd +5Ot7eBIGrhcEuPtg4jgZvV7jfSKSonN6yXWILR8EofmI4pbSXc1Mcq9Bd6816/dYEDGaw 2L4oY/G8cjjzVTEY6ga1HyoF8RrYcsplSQs4SuZ48iZ3kwcAqdc0camwkD3NjWjul80Gov pm88eZcxuMybdgghnyQE7YtxI0HpOxWUS4U+XdOyvTi/NPdCeTXB+prJi5Avj4p5VTBsDS bPXjek0Y33X3oEsci6S23t8UdhTmgmHvYkDalWQM0BG7Af5h14D0rS5feeajPw== Content-Type: multipart/alternative; boundary="------------Z09Q7yBuiD001XQkUOdkWEPp" Message-ID: <23c7faa0-9691-471f-a888-ab25472fec3b@reifenberger.com> Date: Sun, 13 Apr 2025 13:06:42 +0200 List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: adad92981419 - main - Fix build under current. To: Warner Losh , Michael Reifenberger Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org References: <202504101341.53ADfEP0023340@gitrepo.freebsd.org> Content-Language: en-US From: mike new In-Reply-To: X-Spamd-Result: default: False [0.31 / 15.00]; NEURAL_SPAM_LONG(0.98)[0.982]; NEURAL_SPAM_MEDIUM(0.86)[0.855]; NEURAL_HAM_SHORT(-0.72)[-0.723]; DMARC_POLICY_ALLOW(-0.50)[reifenberger.com,reject]; ONCE_RECEIVED(0.20)[]; R_DKIM_ALLOW(-0.20)[reifenberger.com:s=nov24ed,reifenberger.com:s=nov24rsa]; R_SPF_ALLOW(-0.20)[+mx]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; ASN(0.00)[asn:197540, ipnet:94.16.108.0/22, country:DE]; FREEFALL_USER(0.00)[mike]; RCVD_TLS_ALL(0.00)[]; TO_DN_SOME(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; RCVD_COUNT_ONE(0.00)[1]; ARC_NA(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; RCPT_COUNT_FIVE(0.00)[5]; FROM_HAS_DN(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[reifenberger.com:+] X-Rspamd-Queue-Id: 4Zb71P4stNz3RYS X-Spamd-Bar: / This is a multi-part message in MIME format. --------------Z09Q7yBuiD001XQkUOdkWEPp Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi Warner, sorry for the disturbance. In the first place I was astonished because of the revertion request. The commit is a WIP which was meant to get the rescue image to a buildable state. The final goal is to get a rescue image which works for BIOS and UEFI. While the I found that in its current state nanobsd.sh unmodified doesn't produce a image at all because the FS is too big for the defasult NANO_MEDIASIZE. So I would propose at least: - decrease the size and speed up the build - increase the image size  to fit the build diff --git a/tools/tools/nanobsd/defaults.sh b/tools/tools/nanobsd/defaults.sh index 4ba35ffeb04d..8877ee3bb3b5 100755 --- a/tools/tools/nanobsd/defaults.sh +++ b/tools/tools/nanobsd/defaults.sh @@ -79,7 +79,11 @@ CONF_BUILD=' '  CONF_INSTALL=' '  # Options to put in make.conf during both build- & installworld. -CONF_WORLD=' ' +CONF_WORLD=' +WITHOUT_TESTS=true +WITHOUT_DEBUG_FILES=true +WITHOUT_KERNEL_SYMBOLS=true +'  # Kernel config file to use  NANO_KERNEL=GENERIC @@ -104,7 +108,7 @@ NANO_NEWFS="-b 4096 -f 512 -i 8192 -U"  NANO_DRIVE=ada0  # Target media size in 512 bytes sectors -NANO_MEDIASIZE=2000000 +NANO_MEDIASIZE=6000000  # Number of code images on media (1 or 2)  NANO_IMAGES=2 Greetings --- Michael On 4/11/25 00:17, Warner Losh wrote: > So after some experiments, I've concluded that I misread this commit. > It's for a different file than I thought. My apologies. > While the commit log isn't great, the change didn't break what I > thought it would break, so I withdraw my request to revert. > The worst that Isee this doing is that it does break a convention that > I have for NANO_OBJ that's set automatically, but > that convention isn't universal (though often followed in historical > nanobsd config files). > > Warner > > On Thu, Apr 10, 2025 at 12:33 PM Warner Losh wrote: >> Please revert this. >> >> (1) It includes things that are bogus (clearly not intended) >> (2) it wasn't reviewed. we're trying to review things in phab for nanobsd >> (3) The only possible valid change in here is the size bump, but even >> it doesn't make sense. >> (4) the t->true changes are gratuitous. >> >> Warner >> >> On Thu, Apr 10, 2025 at 7:41 AM Michael Reifenberger wrote: >>> The branch main has been updated by mr: >>> >>> URL:https://cgit.FreeBSD.org/src/commit/?id=adad9298141964ca38e21a05c0b8951efbcb70b2 >>> >>> commit adad9298141964ca38e21a05c0b8951efbcb70b2 >>> Author: Michael Reifenberger >>> AuthorDate: 2025-04-10 13:39:12 +0000 >>> Commit: Michael Reifenberger >>> CommitDate: 2025-04-10 13:41:02 +0000 >>> >>> Fix build under current. >>> --- >>> tools/tools/nanobsd/rescue/common | 34 ++++++++++++++++++---------------- >>> 1 file changed, 18 insertions(+), 16 deletions(-) >>> >>> diff --git a/tools/tools/nanobsd/rescue/common b/tools/tools/nanobsd/rescue/common >>> index 5fcf5c19b882..15bf10f5e67d 100644 >>> --- a/tools/tools/nanobsd/rescue/common >>> +++ b/tools/tools/nanobsd/rescue/common >>> @@ -1,15 +1,15 @@ >>> # >>> # >>> -NANO_SRC=$(pwd) >>> -NANO_SRC=${NANO_SRC%/tools/tools/nanobsd/rescue} >>> -NANO_OBJ=${NANO_SRC}/../nanobsd-builds/${NANO_NAME}/obj >>> +#NANO_SRC=$(pwd) >>> +#NANO_SRC=${NANO_SRC%/tools/tools/nanobsd/rescue} >>> +#NANO_OBJ=${NANO_SRC}/../nanobsd-builds/${NANO_NAME}/obj >>> NANO_TOOLS=`pwd` >>> NANO_PACKAGE_DIR=`pwd`/Pkg >>> NANO_RAM_TMPVARSIZE=40960 >>> NANO_PMAKE="make -j 8" >>> NANO_LABEL="rescue" >>> NANO_RAM_TMPVARSIZE=40960 >>> -NANO_MEDIASIZE="3932160" >>> +NANO_MEDIASIZE="6000000" >>> NANO_SECTS="63" >>> NANO_HEADS="16" >>> NANO_IMAGES="2" @@ -31,10 +31,12 @@ CONF_INSTALL=' CONF_WORLD=' CFLAGS=-O -pipe # >>> We do not need these for rescue -WITHOUT_LIB32=true >>> WITHOUT_TESTS=true -WITHOUT_DEBUG_FILES=t -WITHOUT_KERNEL_SYMBOLS=t >>> +WITHOUT_DEBUG_FILES=true +WITHOUT_KERNEL_SYMBOLS=true >>> +WITHOUT_CLANG_FULL=true +WITH_CLANG_EXTRAS=true +WITHOUT_LIB32=true >>> ' # Functions @@ -50,14 +52,14 @@ toUpper() { customize_cmd >>> cust_allow_ssh_root customize_cmd cust_install_files -cust_ld32_cfg >>> () ( - cd ${NANO_WORLDDIR}/libexec - if [ \! -f ld-elf32.so.1 ]; >>> then - ln -s ld-elf.so.1 ld-elf32.so.1 - fi -) -customize_cmd >>> cust_ld32_cfg - +#cust_ld32_cfg () ( +# cd ${NANO_WORLDDIR}/libexec >>> +# if [ \! -f ld-elf32.so.1 ]; then +# ln -s ld-elf.so.1 >>> ld-elf32.so.1 +# fi +#) +#customize_cmd cust_ld32_cfg +# >>> #cust_boot_cfg () ( # cd ${NANO_WORLDDIR} # echo "-S115200 -h" > boot.config >>> @@ -67,7 +69,7 @@ customize_cmd cust_ld32_cfg >>> #) >>> #customize_cmd cust_boot_cfg >>> >>> -customize_cmd cust_pkgng >>> +#customize_cmd cust_pkgng >>> >>> cust_etc_cfg () ( >>> cd ${NANO_WORLDDIR} --------------Z09Q7yBuiD001XQkUOdkWEPp Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit

Hi Warner,

sorry for the disturbance.

In the first place I was astonished because of the revertion request.

The commit is a WIP which was meant to get the rescue image to a buildable state.

The final goal is to get a rescue image which works for BIOS and UEFI.


While the I found that in its current state nanobsd.sh unmodified doesn't produce a image at all because the FS is too big for the defasult NANO_MEDIASIZE.

So I would propose at least:

- decrease the size and speed up the build
- increase the image size  to fit the build


diff --git a/tools/tools/nanobsd/defaults.sh b/tools/tools/nanobsd/defaults.sh
index 4ba35ffeb04d..8877ee3bb3b5 100755
--- a/tools/tools/nanobsd/defaults.sh
+++ b/tools/tools/nanobsd/defaults.sh
@@ -79,7 +79,11 @@ CONF_BUILD=' '
 CONF_INSTALL=' '
 
 # Options to put in make.conf during both build- & installworld.
-CONF_WORLD=' '
+CONF_WORLD='
+WITHOUT_TESTS=true
+WITHOUT_DEBUG_FILES=true
+WITHOUT_KERNEL_SYMBOLS=true
+'
 
 # Kernel config file to use
 NANO_KERNEL=GENERIC
@@ -104,7 +108,7 @@ NANO_NEWFS="-b 4096 -f 512 -i 8192 -U"
 NANO_DRIVE=ada0
 
 # Target media size in 512 bytes sectors
-NANO_MEDIASIZE=2000000
+NANO_MEDIASIZE=6000000
 
 # Number of code images on media (1 or 2)
 NANO_IMAGES=2


Greetings

---

Michael


On 4/11/25 00:17, Warner Losh wrote:
So after some experiments, I've concluded that I misread this commit.
It's for a different file than I thought. My apologies.
While the commit log isn't great, the change didn't break what I
thought it would break, so I withdraw my request to revert.
The worst that Isee this doing is that it does break a convention that
I have for NANO_OBJ that's set automatically, but
that convention isn't universal (though often followed in historical
nanobsd config files).

Warner

On Thu, Apr 10, 2025 at 12:33 PM Warner Losh <imp@bsdimp.com> wrote:
Please revert this.

(1) It includes things that are bogus (clearly not intended)
(2) it wasn't reviewed. we're trying to review things in phab for nanobsd
(3) The only possible valid change in here is the size bump, but even
it doesn't make sense.
(4) the t->true changes are gratuitous.

Warner

On Thu, Apr 10, 2025 at 7:41 AM Michael Reifenberger <mr@freebsd.org> wrote:
The branch main has been updated by mr:

URL: https://cgit.FreeBSD.org/src/commit/?id=adad9298141964ca38e21a05c0b8951efbcb70b2

commit adad9298141964ca38e21a05c0b8951efbcb70b2
Author:     Michael Reifenberger <mr@FreeBSD.org>
AuthorDate: 2025-04-10 13:39:12 +0000
Commit:     Michael Reifenberger <mr@FreeBSD.org>
CommitDate: 2025-04-10 13:41:02 +0000

    Fix build under current.
---
 tools/tools/nanobsd/rescue/common | 34 ++++++++++++++++++----------------
 1 file changed, 18 insertions(+), 16 deletions(-)

diff --git a/tools/tools/nanobsd/rescue/common b/tools/tools/nanobsd/rescue/common
index 5fcf5c19b882..15bf10f5e67d 100644
--- a/tools/tools/nanobsd/rescue/common
+++ b/tools/tools/nanobsd/rescue/common
@@ -1,15 +1,15 @@
 #
 #
-NANO_SRC=$(pwd)
-NANO_SRC=${NANO_SRC%/tools/tools/nanobsd/rescue}
-NANO_OBJ=${NANO_SRC}/../nanobsd-builds/${NANO_NAME}/obj
+#NANO_SRC=$(pwd)
+#NANO_SRC=${NANO_SRC%/tools/tools/nanobsd/rescue}
+#NANO_OBJ=${NANO_SRC}/../nanobsd-builds/${NANO_NAME}/obj
 NANO_TOOLS=`pwd`
 NANO_PACKAGE_DIR=`pwd`/Pkg
 NANO_RAM_TMPVARSIZE=40960
 NANO_PMAKE="make -j 8"
 NANO_LABEL="rescue"
 NANO_RAM_TMPVARSIZE=40960
-NANO_MEDIASIZE="3932160"
+NANO_MEDIASIZE="6000000"
 NANO_SECTS="63"
 NANO_HEADS="16"
 NANO_IMAGES="2"
@@ -31,10 +31,12 @@ CONF_INSTALL='
 CONF_WORLD='
 CFLAGS=-O -pipe
 # We do not need these for rescue
-WITHOUT_LIB32=true
 WITHOUT_TESTS=true
-WITHOUT_DEBUG_FILES=t
-WITHOUT_KERNEL_SYMBOLS=t
+WITHOUT_DEBUG_FILES=true
+WITHOUT_KERNEL_SYMBOLS=true
+WITHOUT_CLANG_FULL=true
+WITH_CLANG_EXTRAS=true
+WITHOUT_LIB32=true
 '

 # Functions
@@ -50,14 +52,14 @@ toUpper() {
 customize_cmd cust_allow_ssh_root
 customize_cmd cust_install_files

-cust_ld32_cfg () (
-       cd ${NANO_WORLDDIR}/libexec
-       if [ \! -f ld-elf32.so.1 ]; then
-       ln -s ld-elf.so.1 ld-elf32.so.1
-       fi
-)
-customize_cmd cust_ld32_cfg
-
+#cust_ld32_cfg () (
+#      cd ${NANO_WORLDDIR}/libexec
+#      if [ \! -f ld-elf32.so.1 ]; then
+#      ln -s ld-elf.so.1 ld-elf32.so.1
+#      fi
+#)
+#customize_cmd cust_ld32_cfg
+#
 #cust_boot_cfg () (
 #      cd ${NANO_WORLDDIR}
 #      echo "-S115200 -h" > boot.config
@@ -67,7 +69,7 @@ customize_cmd cust_ld32_cfg
 #)
 #customize_cmd cust_boot_cfg

-customize_cmd cust_pkgng
+#customize_cmd cust_pkgng

 cust_etc_cfg () (
   cd ${NANO_WORLDDIR}

    
--------------Z09Q7yBuiD001XQkUOdkWEPp-- From nobody Sun Apr 13 14:54:34 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZbD3J0VxJz5tRTV; Sun, 13 Apr 2025 14:54: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZbD3H0sM6z4446; Sun, 13 Apr 2025 14:54:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744556075; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fJ/RZe6dYZg/rjz8VDBRE/hJUGye0uhxVUwk73Gyk1E=; b=YIQucV2RGSfs3EDT2ZSJ+vV5q/6g16tZTGNeque4qANzHNAKftSMu6GoSTu0DECAE4HIp8 tynrZth7bumpphSBQqEd0vrXPUPmqemebhSLA2yPCb6IxvyEZ++AJd6hiSSpyv88BOWaxc H5PPl9Eqzu1vonXHkVnkPNdp4LdyYz/KbkGkV1BEIJ3soVUVsbpH3P6OVyS290JAzKORea w8ztUFbl9radsipwfarWnkh1hqy/q4khk2RWrvz29Orm1t93oZuObMJ/nv1YqWbP9CiENZ 93Oh7nEn5c/e1EnefPGmNtfTLOKFdLkkIHzauOxauSHiLbISFNpXzDlwUEoGVg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744556075; a=rsa-sha256; cv=none; b=PQ/5Hu3F4P70MI81A/YYbaAFuH4SzztEkUShJjBBprVv+p8mDh9bA/RFK2FHms1hVYQLFs wuZ9qUjYO8nKltFsj0BHVOhM+Vffx9AqpCSnmIxm6OhjMifoCfYZPMX5g8oR50BbAJrsCo VAW7jVby/Y/GmkCF4e5jfVYiZLcdcXBde49nJ4BNzqymsVpYLmiWujkeXbNSVyaDL9bJNV PYJzxfFsah8MIvhslIGKqPfnV7jmCa0dbbOUa+fnTGr7V7g0nWRHpg1nTLwVliVjNId47t UJj1vvETC8xtKbwcuo+G1FbAdMeLIto8L/9vqm8Ydy5vw0/ykjQd8J75aksrwA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744556075; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fJ/RZe6dYZg/rjz8VDBRE/hJUGye0uhxVUwk73Gyk1E=; b=ltJqZj7ICdKUVkD3Zjmzcuy1ks6xmJssVBkAEbzQPdP0wkpYqvCmIJaIGeel9F9RaPs/hz 9IR9aGtG89ToWKPxxBZxy6zQmXelAdIK0tM+iqOchA+bcKBjfycCZrZM/CL1Sk61+8ay/m OXk4K8a5hH9snEsOSUhdScQqLg3BSRM4OaxjQVS9Zmz/xJBeu+KeF/zwu6bq9wxMnlJWCl B2SYCGvs+Pe50F0UXEW8/JUlkp0nXaaBevxtph5wgGzXRTpsNvL+iOyoDJqCfcA9RKTVAt OsnukeG0pFLm+E3gf8CgPHZC0aBBStItVeffSP1ywK5avbmfcceVYNMgnDFIFg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZbD3H07MZz16nL; Sun, 13 Apr 2025 14:54:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53DEsYTk034314; Sun, 13 Apr 2025 14:54:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53DEsY4n034311; Sun, 13 Apr 2025 14:54:34 GMT (envelope-from git) Date: Sun, 13 Apr 2025 14:54:34 GMT Message-Id: <202504131454.53DEsY4n034311@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: d8cf51949252 - main - fhopen: Restore the O_CREAT check List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d8cf519492523f6dd239ab153029db62749afa52 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=d8cf519492523f6dd239ab153029db62749afa52 commit d8cf519492523f6dd239ab153029db62749afa52 Author: Mark Johnston AuthorDate: 2025-04-13 14:54:26 +0000 Commit: Mark Johnston CommitDate: 2025-04-13 14:54:26 +0000 fhopen: Restore the O_CREAT check Fixes: 509189bb4109 ("fhopen: Enable handling of O_PATH, fix some bugs") --- sys/kern/vfs_syscalls.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c index 5fe2ae2e23a6..3f1462d354fd 100644 --- a/sys/kern/vfs_syscalls.c +++ b/sys/kern/vfs_syscalls.c @@ -4683,6 +4683,8 @@ kern_fhopen(struct thread *td, const struct fhandle *u_fhp, int flags) return (error); indx = -1; + if ((flags & O_CREAT) != 0) + return (EINVAL); error = openflags(&flags); if (error != 0) return (error); From nobody Sun Apr 13 16:12:35 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZbFnH5RMWz5tX5k; Sun, 13 Apr 2025 16:12: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZbFnH3NrPz3VXc; Sun, 13 Apr 2025 16:12:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744560755; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VVRwLF+nFuvIh4AoCZa9+b+s90paNbZBQsLkpGTFXWg=; b=hfI3M4XijcBFrry0MsEySZ7s/xMkEKs8MTbCLNn5dMTii1XaIzd8yipVQyIC+3iUwYJZ4E T97bNinr7GsIruguRurGZnKpVOTG4wK/BwHs6SIy1D76UHfg/7/l408Nj44Luh45ue345b JI4GeQJ80E1D+0FO9nadgyWscKvqxowGuiiHWYfM4kBRTlcjyyWtzX6XQyjduz8EQAIIJT +9rIZqtEkjFZYwztskdlEA64+7gqm3TXyNRmlYbkMI/AxTfj2F7WrbhHcJi1MpDS6ZfA15 CJTAoZ7R75F6wwwb9mYuxKHiRSV3IxNMNWmwHOAQI3bGenbgIkknLRtSk4RGUQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744560755; a=rsa-sha256; cv=none; b=Gz2GIJ+u/VStlOOYD2it6XoIVts94FjYW8aTgtWzGuw6tVX7+T2dPZ3dc1HoiVPAt7xoOn lui8fZy1xl/lKAshKQiduxK/j409Qe1Ztubr4K7ga1BlFZkSz2aZ8zC7r6tWa4KIqTms4d 90mL5ASf9DhFXCkytQC6IYILFdnSjADxj7TJiKgP44bRSyOJODvGORwx3HPORhNF4f5x2D xxH4jJkfQza49dGFJ3c85nCzGinv8b1JCWlgm2nSe4zB9F6dYHo9CBfr4QT+vFLQxf6gW4 HxO17wYRqU9kKjJC4rATOl/tvilqtaF7DAvvdZlkySm5IA62ZnXy8YuTHugApA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744560755; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VVRwLF+nFuvIh4AoCZa9+b+s90paNbZBQsLkpGTFXWg=; b=q3TJSxgGXrfIOMrabusOT/PalCLJfTEyTrK9oFGF3TxPQ3UoiPilNwA91qtpgXrFJM5Gt0 lBFDHDn1oSwPFh0lXHG6Ccs1xX0G+C3UB0idenRtB+Wvz5o4K3l2zs8JcateohzNITPdlf htx/WWadU4V0Prra5W25woi3mvD2366jdFTR3jEhOtcSyA0xjTfmz9wEfQDSdDDR+cE2nQ smGX2MJ3rjzyA0Gs6biUECmY93/Y9Vy93QNYvx0JkBLEuKUwErr4kW/3O9BoJBxt08exkM VZAcq9maYqEFYdeD6h0BoOcpbvEf3fxdkx4f7vRzcfalGcEQyLwNzVQDOVvXJw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZbFnH2trQz18Fn; Sun, 13 Apr 2025 16:12:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53DGCZlg083055; Sun, 13 Apr 2025 16:12:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53DGCZEl083052; Sun, 13 Apr 2025 16:12:35 GMT (envelope-from git) Date: Sun, 13 Apr 2025 16:12:35 GMT Message-Id: <202504131612.53DGCZEl083052@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Johnston Subject: git: c98367641991 - main - vm_fault: Defer marking COW pages valid List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c98367641991019bac0e8cd55b70682171820534 Auto-Submitted: auto-generated The branch main has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=c98367641991019bac0e8cd55b70682171820534 commit c98367641991019bac0e8cd55b70682171820534 Author: Mark Johnston AuthorDate: 2025-04-13 16:09:31 +0000 Commit: Mark Johnston CommitDate: 2025-04-13 16:09:31 +0000 vm_fault: Defer marking COW pages valid Suppose an object O has two shadow objects S1, S2 mapped into processes P1, P2. Suppose a page resident in O is mapped read-only into P1. Now suppose that P1 writes to the page, triggering a COW fault: it allocates a new page in S1 and copies the page, then marks it valid. If the page in O was busy when initially looked up, P1 would have to release the map lock and sleep first. Then, after handling COW, P1 must re-check the map lookup because locks were dropped. Suppose the map indeed changed, so P1 has to retry the fault. At this point, the mapped page in O is shadowed by a valid page in S1. If P2 exits, S2 will be deallocated, resulting in a collapse of O into S1. In this case, because the mapped page is shadowed, P2 will free it, but that is illegal; this triggers a "freeing mapped page" assertion in invariants kernels. Fix the problem by deferring the vm_page_valid() call which marks the COW copy valid: only mark it once we know that the fault handler will succeed. It's okay to leave an invalid page in the top-level object; it will be freed when the fault is retried, and vm_object_collapse_scan() will similarly free invalid pages in the shadow object. Reviewed by: kib MFC after: 1 month Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D49758 --- sys/vm/vm_fault.c | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index 81631b672040..0bd3a8207c4a 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -1064,14 +1064,14 @@ vm_fault_cow(struct faultstate *fs) * Oh, well, lets copy it. */ pmap_copy_page(fs->m, fs->first_m); - vm_page_valid(fs->first_m); if (fs->wired && (fs->fault_flags & VM_FAULT_WIRE) == 0) { vm_page_wire(fs->first_m); vm_page_unwire(fs->m, PQ_INACTIVE); } /* - * Save the cow page to be released after - * pmap_enter is complete. + * Save the COW page to be released after pmap_enter is + * complete. The new copy will be marked valid when we're ready + * to map it. */ fs->m_cow = fs->m; fs->m = NULL; @@ -1759,6 +1759,19 @@ found: if (hardfault) fs.entry->next_read = vaddr + ptoa(ahead) + PAGE_SIZE; + /* + * If the page to be mapped was copied from a backing object, we defer + * marking it valid until here, where the fault handler is guaranteed to + * succeed. Otherwise we can end up with a shadowed, mapped page in the + * backing object, which violates an invariant of vm_object_collapse() + * that shadowed pages are not mapped. + */ + if (fs.m_cow != NULL) { + KASSERT(vm_page_none_valid(fs.m), + ("vm_fault: page %p is already valid", fs.m_cow)); + vm_page_valid(fs.m); + } + /* * Page must be completely valid or it is not fit to * map into user space. vm_pager_get_pages() ensures this.