From nobody Sun Apr 9 03:54:07 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvJBR3WyQz43X08; Sun, 9 Apr 2023 03:54: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvJBR2yVGz47DF; Sun, 9 Apr 2023 03:54:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681012447; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EyLhMnEnzT+mj/LgB4zVrQEEnRRQUocqvCa9mFiihN8=; b=bnWbYi3AO/8sBK5A8J0gIiNhrUYZh9Gdl7aj/Mcl2XDmUEAg6FS/uRhAe1/ayM0U9qQtF8 i3NBq27Gd/pWW9I1D2ObUZdYTYgwxVLbm1GQUxSdSuYsvzjVtxCzbcn2XxiHa/0LS0Qmw/ awQ5QTgIhoHc2oG5tSpOE31uqAFTYy8b2LpxmvAg0lr7fZqZIzj8S+4hxZDBnJPaKzP2+n Ifzp0uMT1OBhgiHEMSrPV5y2pF03Q2Et/6KdLbXFtz8EHzoeopK8L5Aw2ofGKVsBqLrXin jsGro9tutIUFCYb35KXvZ58YS0PDrSYuqqHfNBChRsNwkNFCQqf4ya5ESAUAKA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681012447; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EyLhMnEnzT+mj/LgB4zVrQEEnRRQUocqvCa9mFiihN8=; b=qNB6IVvcAvfAPsHJWQ6JZpzHylEDkFr46fuB2m+uCbDxuszSxiqAG/VoETjsTQlrP1lant D4jFfM079ayzhh0XuQfi6JCGp8Sn8MKDM7bDkAoM1V22tIOpdGby2MzYAFG+kDSCIIanRV dioVYGZc7ZZi/3TOJmF149VI2UhICL0VGF7aGlEeFlQLK2TREV7lXF/EeNoZd/rtEiUyYy xTzOSFFJWzMylMaQWVpeeBXyEL30W3UHfki/RgbTZCOCloyneUvlMIb2XQL1ZVJsnenEHp G3sQxJsL0WWPbL/aj1iK3iteoGnVhtQWXPBGRtEc4I/285SItapvUoePsZAxuQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681012447; a=rsa-sha256; cv=none; b=jxre0NlgcMduGrf0MuFyV3WwmQIKy5/hMOQWh7YXy0Jt5HIuZU6ySrRMf4FrpucpLsHsRc PiAO2Yax7gvKXMJvi19zOqN1FxoqJIB5qQ7YcdIbEFsBmcXmd/8YmURCAIojgzFfl+NRDC xB9ZbVlzvVVB01Eduy6ZO/bu5/YIU7EeTs+MzInVhBAeA3aVLNHP4AlPmTbs+Qe3z5vhWA fyEhY0xUEBQGaO5n93VoV17kYGq/+5jp4+6Weja+uwxVzwsiRICWxbzX17wgAaf4SRwW4/ keuOyKlT4DNh5z/fTrjdS+HR+xfLBpyMSKk242ebVeYvv9gbkiIuCIwB//nzbw== 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 4PvJBR203xzt84; Sun, 9 Apr 2023 03:54:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 3393s71w024000; Sun, 9 Apr 2023 03:54:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 3393s7Hl023999; Sun, 9 Apr 2023 03:54:07 GMT (envelope-from git) Date: Sun, 9 Apr 2023 03:54:07 GMT Message-Id: <202304090354.3393s7Hl023999@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: 264e0365e8d8 - stable/13 - wpa_supplicant/hostapd: Fix uninitialized packet pointer on error List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 264e0365e8d8e491d1205f4b6489efca2d563eed Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=264e0365e8d8e491d1205f4b6489efca2d563eed commit 264e0365e8d8e491d1205f4b6489efca2d563eed Author: Cy Schubert AuthorDate: 2023-04-06 04:07:15 +0000 Commit: Cy Schubert CommitDate: 2023-04-09 03:52:27 +0000 wpa_supplicant/hostapd: Fix uninitialized packet pointer on error The packet pointer (called packet) will remain uninitialized when pcap_next_ex() returns an error. This occurs when the wlan interface is shut down using ifconfig destroy. Adding a NULL assignment to packet duplicates what pcap_next() does. The reason we use pcap_next_ex() in this instance is because with pacp_next() when we receive a null pointer if there was an error or if no packets were read. With pcap_next_ex() we can differentiate between an error and legitimately no packets were received. PR: 270649 Reported by: Robert Morris Fixes: 6e5d01124fd4 (cherry picked from commit 953efa5b200f060564a090ab71b3d7f614a35e3f) --- contrib/wpa/src/l2_packet/l2_packet_freebsd.c | 1 + 1 file changed, 1 insertion(+) diff --git a/contrib/wpa/src/l2_packet/l2_packet_freebsd.c b/contrib/wpa/src/l2_packet/l2_packet_freebsd.c index 0461758ff210..7b96bd033c87 100644 --- a/contrib/wpa/src/l2_packet/l2_packet_freebsd.c +++ b/contrib/wpa/src/l2_packet/l2_packet_freebsd.c @@ -85,6 +85,7 @@ static void l2_packet_receive(int sock, void *eloop_ctx, void *sock_ctx) if (pcap_next_ex(pcap, &hdr, &packet) == -1) { wpa_printf(MSG_ERROR, "Error reading packet, has device disappeared?"); + packet = NULL; eloop_terminate(); } From nobody Sun Apr 9 03:54:08 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvJBS6jmzz43XGR; Sun, 9 Apr 2023 03:54: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvJBS4QQvz478X; Sun, 9 Apr 2023 03:54:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681012448; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EpW1qJA0md7gOzWX5L77ME26GJ9ystDPRtWciUpBfIg=; b=hMNufGefReyQo9p1GTBifH4yAG9qBVc4cw/emlrWm/o7cPZnHHJ8Jla/HXvGxoopt+x5QC sV+av1MfuKy3eAzTIBl+pJKVjmR8w/BqlnrPkXJ6RU3Fdnk2hFK08xQpn2oC5OpIGjGTbc VXBD2CM8U05Fs+KooExnhkZ59Yq5HYiCE9mCEwycEeUUcHScBKFRxrNy8yePiZIYg1RQdc LjGcD8djpKYKP1JFmzIN//IGYmWhDc0YR7z3VLVoBiknaZ+qLLL4LyI/CfbyCTXCSjkUcd YsE70nOiOUKKh/PAo6k0tV5DV1Rdfyy2pyYyBqDT53Fv1lE0xlczS1trDN4lzA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681012448; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EpW1qJA0md7gOzWX5L77ME26GJ9ystDPRtWciUpBfIg=; b=GEM6jcjSJ7wIz3pi4tXNAxSnGZQqUZtH5ykJgz4AlAQXqKxCU24GsKOnnzjoOFOw0tT5qm f0eohDVW1yDTNGcmmEPGuzCd7LMQhzbdxWr5NiVVI7hk6Vpig4sC0Xtq0LTBEc/9zZZwVZ j++oQA40PQ65HX2PL9+L/B/3tAYB2za9yne/Gu/OSDSjbeMXpGqYhsJaXxzuoAuig7nCpI Od9Wwd+OvGj+NymdvDJ/1e7TWbrmIeioNdli9cBdJTNjUD+ZiolqiR1k7GicohkjzwoXcr 52FlYa4VQpMirFk8/vcSw+ZE72cZgfnp3CPBmGJNWuXCJ6vW2Z37GTJd0kZGqg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681012448; a=rsa-sha256; cv=none; b=k+rPMTzQR28JgNE98BEP5+UN3DKQ5YF22+HNN8tsObJBAn7XJ2WQ3DvpSn1yHQZWlTLBod h/QcyxMweS/su6QrD8QcrsgyHk0IBrBMbO9b4h7cRNxYIM27MPAT6g75of0GMiM64Ea9le Sw+VAizigXsWvGB/CTwh2x7RUNXVRFc4aVoIVksIF77bt2cZeuREl7ZKHNsFgWgBgd+QMT AFTSnZ4fImampmKVJtBijf3lr+kLXu7EUXSDhjhY3GesXQ099XHAhcLBGu7yUjXa2L90hg ryJtyBmWYTFEiCLbNIX/BdYUg2y+MxBc5OnRkK6cWf+zAdEJRRRaP7MdSXlBcg== 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 4PvJBS2kl2ztMK; Sun, 9 Apr 2023 03:54:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 3393s8D0024019; Sun, 9 Apr 2023 03:54:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 3393s8Bd024018; Sun, 9 Apr 2023 03:54:08 GMT (envelope-from git) Date: Sun, 9 Apr 2023 03:54:08 GMT Message-Id: <202304090354.3393s8Bd024018@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: 2e3c94b70d31 - stable/13 - heimdal: Do not build a redundant source file List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 2e3c94b70d31a7e62a69d345510ac00c787eb875 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=2e3c94b70d31a7e62a69d345510ac00c787eb875 commit 2e3c94b70d31a7e62a69d345510ac00c787eb875 Author: Cy Schubert AuthorDate: 2023-04-01 03:43:10 +0000 Commit: Cy Schubert CommitDate: 2023-04-09 03:52:53 +0000 heimdal: Do not build a redundant source file Heimdal's lib/hdb/db3.c is only built if DB3 is enabled, i.e. #if HAVE_DB3. FreeBSD's bdb is DB1. Therefore the entire db3.c file is #ifdef'd out. Let's avoid building a file that results in a useless object file. (cherry picked from commit 7ee18f5aada07f03433504545c1b7bed91cbda82) --- kerberos5/lib/libhdb/Makefile | 1 - 1 file changed, 1 deletion(-) diff --git a/kerberos5/lib/libhdb/Makefile b/kerberos5/lib/libhdb/Makefile index f39d54d6c2d7..26caf43e5429 100644 --- a/kerberos5/lib/libhdb/Makefile +++ b/kerberos5/lib/libhdb/Makefile @@ -43,7 +43,6 @@ INCS= hdb-protos.h \ SRCS= common.c \ db.c \ - db3.c \ dbinfo.c \ ext.c \ hdb-ldap.c \ From nobody Sun Apr 9 03:54:14 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvJBc02tPz43Wx3; Sun, 9 Apr 2023 03:54: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvJBb0Kh5z47d5; Sun, 9 Apr 2023 03:54:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681012455; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xq66z1jGTN0Uv+DUE7CyCEqDvBT3fM9Px1bokIsiIo8=; b=roaqAePV/WondsI9kpSWiZ2NipaXPPH2TLKuMY/tGAhL39AfM6PRzqkW1H20fzHr0okILn MyQrkMBm0E+yUtsUYn8V0lnTtWzwFhXZvlRCdapFRpr0wXpG1XOOmfrfBcIzvh1TmkkaSL Ukxo4DFCLzX0CM0UFnbAEKv9tXZ2uj2m7ZkUOqeEVfbhUpZJPF3hA9OEpGvjWHbpujegDN l16O/2GSjzps7nAGdEiK/oDya+NGzDo30/YZywyzXEnFjBN9QOYmtfR0nzbDqlJjQlMzbC D4qFE2gPozBwozEXFL+OUxbgiv01rYyMHHrackf8iBVo9RZBDgxzIgX7VzsdKA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681012455; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xq66z1jGTN0Uv+DUE7CyCEqDvBT3fM9Px1bokIsiIo8=; b=oyATFX7bQKB8rFb9Et1tIt8RcZskqNAQ9psN0jotLG4UBDqRNsQdnsWoCUW7Zvlyo8Q+hv RHyUiNfKjd+GDciR7r/DmtWXdEZRFjmybRak2QD62FBlTSvUqcaymvSZZj74U5e1zHZo/e QSJSny6evbnVqE8lPRzds1CSiur6W3VEkCF5yvkAgZ/jlT6tItgORe4GeVosNXlxBkjb0f RokNznGRDR92rFgaoCcJTO38fINm52PcZuWPV/ViL2WpW4afR9pNLZRKgJAkXpt8RauH2/ y924kAJsCFSWKpA+xhY1T8LuPAOb0CiCC7NJ3HO6SbiLTGufqyeFWspqV3FE9A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681012455; a=rsa-sha256; cv=none; b=dheskhVcuc9UrgRXcGHg7FLLd21/cfzLQRQ5GpXLzuNdhtjtSrQTBOEju1pFgrB4dEdVbe sbqRhEaz1OcPQQ3JdLFDLOZI8Ntz4/o5YyZXyYmBdedzrPcyLNqThaoBSoxFx1hIHIXw+m XEb7+UL8F3KgktkuPi7kbGTXU4TL57qMVRRXAhhod+s/mCio4/9A+lJ4BUIXBgfXkmfPra EM95zB8Y2+NsyGmvUDYnNVujioCKvtZpcxyS1F4W1A3aV5LDHx41fb0KpVYf8s0o76UdP4 eJGRcYSd8KIXnB3yDBuOFs2aY98/HOFXzheHmjvngeg2kcYdtsRQVk4hYsDtjQ== 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 4PvJBZ68p2ztML; Sun, 9 Apr 2023 03:54:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 3393sEuM024153; Sun, 9 Apr 2023 03:54:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 3393sETv024152; Sun, 9 Apr 2023 03:54:14 GMT (envelope-from git) Date: Sun, 9 Apr 2023 03:54:14 GMT Message-Id: <202304090354.3393sETv024152@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: 4a99b854723b - stable/12 - wpa_supplicant/hostapd: Fix uninitialized packet pointer on error List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 4a99b854723bb28817b01eb7bf485a072a02ae5a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=4a99b854723bb28817b01eb7bf485a072a02ae5a commit 4a99b854723bb28817b01eb7bf485a072a02ae5a Author: Cy Schubert AuthorDate: 2023-04-06 04:07:15 +0000 Commit: Cy Schubert CommitDate: 2023-04-09 03:52:35 +0000 wpa_supplicant/hostapd: Fix uninitialized packet pointer on error The packet pointer (called packet) will remain uninitialized when pcap_next_ex() returns an error. This occurs when the wlan interface is shut down using ifconfig destroy. Adding a NULL assignment to packet duplicates what pcap_next() does. The reason we use pcap_next_ex() in this instance is because with pacp_next() when we receive a null pointer if there was an error or if no packets were read. With pcap_next_ex() we can differentiate between an error and legitimately no packets were received. PR: 270649 Reported by: Robert Morris Fixes: 6e5d01124fd4 (cherry picked from commit 953efa5b200f060564a090ab71b3d7f614a35e3f) --- contrib/wpa/src/l2_packet/l2_packet_freebsd.c | 1 + 1 file changed, 1 insertion(+) diff --git a/contrib/wpa/src/l2_packet/l2_packet_freebsd.c b/contrib/wpa/src/l2_packet/l2_packet_freebsd.c index 0461758ff210..7b96bd033c87 100644 --- a/contrib/wpa/src/l2_packet/l2_packet_freebsd.c +++ b/contrib/wpa/src/l2_packet/l2_packet_freebsd.c @@ -85,6 +85,7 @@ static void l2_packet_receive(int sock, void *eloop_ctx, void *sock_ctx) if (pcap_next_ex(pcap, &hdr, &packet) == -1) { wpa_printf(MSG_ERROR, "Error reading packet, has device disappeared?"); + packet = NULL; eloop_terminate(); } From nobody Sun Apr 9 03:54:15 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvJBc4jcdz43Wx5; Sun, 9 Apr 2023 03:54: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvJBc1N3Mz47nm; Sun, 9 Apr 2023 03:54:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681012456; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kjtNVViqMZ67le64bvgf23HW5a1XJiAcwLU3qz2JpS0=; b=XJdRnoHSBIGYk+Cxuk1zq+wOL4WPGtgYjKEcNj04dsZRtVBUzQGxVaWdohLEB36vybqG9k z7MDJNPd2sYrCkjGlG4V/XiWrg0c17/r3t6B7XNaR0sDoko5Mv7mvX1Azyf+hsVMsBp9Va AX51wGD0XYO57lh8KniWu5pJubiXEICQE7UErMdfiiMUy+wXzynwhmnNuz49DZRuxqLKKw 0/YYPKJBu4TZ/n1wadKri4pKeiRvGlr0gKXDspIYWZ2CM3eyprQkAsHCv0qFfnBzIQ5qRs km7ZXbGJVorPj8eXoIow9CysyYL0/3UMSdZv3pfew39naYYuYNKLCLqTursZJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681012456; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kjtNVViqMZ67le64bvgf23HW5a1XJiAcwLU3qz2JpS0=; b=w8PZOpCity5QpGxapCIsRJMM+7PqCKCmNfm0k1HFzMASP/6gvKrZ+0fbXHxkI8DSFWQAmb 0MTfPn5chYU704kpZi8n/BQBjdrYRVh9lTaHeNH4Qg7ZLj7FHPzlEjomJIxEaZ4WBsXbtO xAX7Gzsvn2YLgdTGJIwSCNJG1btI7cbfv5HUwKXHOQqPLq5iNGLL2Yy3/r/HTpxizlH4/c cnkbQsGKZZ2Ad0Wm3Dw/G1MtIJH+w83FJYEfLzsDLpueDaDimFr2YW6NmnX/YmY9KbNrNj QOgnOuGOlvuBGOgJJERr4xzsQ6WI/+xyijoR8umvKEmybNXLSvlzWWyhWiL5pA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681012456; a=rsa-sha256; cv=none; b=kcHUfJi+UJMPwL5ZrCeJEWsypsyilgb6w3hqNVbVO0xN8TmDPvTwGXa72/hqKQO3/iw116 3Pq7jvyxxuzJv0HuU284W+eH+JHVN40FCSfopQx5agUuiKIt1kW1DW6uFK4wbjJnNGltTj a3mWjS7F/FthHpb1hUD9XzLeiiy/U/Cx+bNa5mz0Q78Q4hYiZViAbj/rNKY6CKuXMeY/6Q K/WJsxtvxo2o7rdrU+quteshDi/EcUUBJmRrSdRUwLP14uGuyOV5g6BGNSuUVtQjmlWbC9 fki4IJx16iivFTVKecVo14aPXZc0Q16McD5yXOTiScJjg1XpcPQ6eLil+BJyxg== 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 4PvJBc0FfSzt85; Sun, 9 Apr 2023 03:54:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 3393sFY9024174; Sun, 9 Apr 2023 03:54:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 3393sFAB024173; Sun, 9 Apr 2023 03:54:15 GMT (envelope-from git) Date: Sun, 9 Apr 2023 03:54:15 GMT Message-Id: <202304090354.3393sFAB024173@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Cy Schubert Subject: git: 6fb835f3b6ea - stable/12 - heimdal: Do not build a redundant source file List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 6fb835f3b6eab2d7906d33c3d177ac327f033901 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=6fb835f3b6eab2d7906d33c3d177ac327f033901 commit 6fb835f3b6eab2d7906d33c3d177ac327f033901 Author: Cy Schubert AuthorDate: 2023-04-01 03:43:10 +0000 Commit: Cy Schubert CommitDate: 2023-04-09 03:53:05 +0000 heimdal: Do not build a redundant source file Heimdal's lib/hdb/db3.c is only built if DB3 is enabled, i.e. #if HAVE_DB3. FreeBSD's bdb is DB1. Therefore the entire db3.c file is #ifdef'd out. Let's avoid building a file that results in a useless object file. (cherry picked from commit 7ee18f5aada07f03433504545c1b7bed91cbda82) --- kerberos5/lib/libhdb/Makefile | 1 - 1 file changed, 1 deletion(-) diff --git a/kerberos5/lib/libhdb/Makefile b/kerberos5/lib/libhdb/Makefile index 29ba7d2c58a2..93b27afcff2b 100644 --- a/kerberos5/lib/libhdb/Makefile +++ b/kerberos5/lib/libhdb/Makefile @@ -39,7 +39,6 @@ INCS= hdb-protos.h \ SRCS= common.c \ db.c \ - db3.c \ dbinfo.c \ ext.c \ hdb-ldap.c \ From nobody Sun Apr 9 09:28:25 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvRc96t8Wz4499H; Sun, 9 Apr 2023 09:28: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvRc95YmQz41sB; Sun, 9 Apr 2023 09:28:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681032505; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jm5p8f4zKA/9pjV0f/arHBDQ3c5yfX05j6TfrqsHma8=; b=FXiUV4JRFblxUcT5ApKivyjQMg8sqnms2e56aMuZkDT+ELSKr7EWKiUPLKoB46Zkqm7S5P Un4GurrIOJYfAoWvCEJWX2bR7vdTsfNQ9oaOJ69HJv6etwNvke7l9pyTxy8zeC6pJH7KI7 SIfsaKf0t/Q685/jXKhi/F3DFR0I9IjTquPle8vcZMnb5LsXc3oDY9TePSzMLU2jSP6EDf JEJg5M+VFzAJ1AduOEXl9zAmFNSWrI1mQZjY9MjADakPUDTip+OzaLsbeIDZCSap46Zxbk ujljp2qT+dTaWNdnuls19I3z3wi0c9vS4IeKL3HoVfPnE1XaQuoA8mTwTXK3eA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681032505; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jm5p8f4zKA/9pjV0f/arHBDQ3c5yfX05j6TfrqsHma8=; b=f5Ms6G/hM9ixqDpexQUeShDbBc9POBlA6WYf1T59RDDmD9gBj4Yca/iYLDcGkqsCON8QOS iXJ/3freOmZEvxSjwfe9V5KJLhmy20RPngpgbR4vcn1Z4Xs/iANRcSM+ylMTwG3CjHTGlm 1juk29l4FBIop7sjEbFFY2e795RkPU7y1eL0Va8UhofjAMuQmlOvKiHvkzxgYQmJwpWrEK nkOUFxxFU/IDYdHDVZHX/xzCiufY/YF8wxJikpzhSrzdFZOdwGZw4bOy7/YQPz0emsWg3T TFolwvTVNVFKlZ4mOZgnnhBFda4dBvWzdfvfAOyBGDCyCGHLnpZCSUzp13u1mA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681032505; a=rsa-sha256; cv=none; b=pvWd5mzfoP6xIhLZNRqj+2Mu5IKhmHDq0+q95d649gezLf1BAWsrn7+MXszZg+k6RSU0ou Axl2Yzmfeenyfu9btpuNV7RoKyaIin/kTAzh/j0f4j7N71mJBrbljqejLRs6+dL3a+Xv+j DELDGGMw8Ayo53NXliUhhZ44Bzpw5+w3ktNOt9iFTu61fCIwpM/zE93GE/NdYjkFRqFt88 NLm80jK5AOh4Xk+cUa7TcRAWtxn7yTYNhbdIxKvuwp4mpqJ8BPus67j4Vdt3zcLUJ662Yo DX7LP4SMqDRiyYNYj8/S4+GP7QpR13jJSENDrnhJCwAn62NJQE/G/bA7hyVSUA== 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 4PvRc94bbQz13NL; Sun, 9 Apr 2023 09:28:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 3399SPO6065956; Sun, 9 Apr 2023 09:28:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 3399SP07065955; Sun, 9 Apr 2023 09:28:25 GMT (envelope-from git) Date: Sun, 9 Apr 2023 09:28:25 GMT Message-Id: <202304090928.3399SP07065955@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Alexander V. Chernikov" Subject: git: 0d4038e3012b - main - netlink: set prefix-related flags to the created nexthop. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: melifaro X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0d4038e3012b86c4f1ce5c2f25736993a1c9ac38 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by melifaro: URL: https://cgit.FreeBSD.org/src/commit/?id=0d4038e3012b86c4f1ce5c2f25736993a1c9ac38 commit 0d4038e3012b86c4f1ce5c2f25736993a1c9ac38 Author: Alexander V. Chernikov AuthorDate: 2023-04-09 09:26:12 +0000 Commit: Alexander V. Chernikov CommitDate: 2023-04-09 09:26:12 +0000 netlink: set prefix-related flags to the created nexthop. This fixes incorrect flag combinations when adding IPv4/IPv6 host routes. MFC after: 3 days --- sys/netlink/route/rt.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/netlink/route/rt.c b/sys/netlink/route/rt.c index 288ff111a038..7e81d59d696b 100644 --- a/sys/netlink/route/rt.c +++ b/sys/netlink/route/rt.c @@ -732,7 +732,7 @@ get_pxflag(const struct nl_parsed_route *attrs) pxflag = NHF_DEFAULT; break; case AF_INET6: - if (attrs->rtm_dst_len == 32) + if (attrs->rtm_dst_len == 128) pxflag = NHF_HOST; else if (attrs->rtm_dst_len == 0) pxflag = NHF_DEFAULT; @@ -776,6 +776,7 @@ create_nexthop_one(struct nl_parsed_route *attrs, struct rta_mpath_nh *mpnh, } if (mpnh->ifp != NULL) nhop_set_transmit_ifp(nh, mpnh->ifp); + nhop_set_pxtype_flag(nh, get_pxflag(attrs)); nhop_set_rtflags(nh, attrs->rta_rtflags); if (attrs->rtm_protocol > RTPROT_STATIC) nhop_set_origin(nh, attrs->rtm_protocol); @@ -852,6 +853,7 @@ create_nexthop_from_attrs(struct nl_parsed_route *attrs, nhop_set_broadcast(nh, true); if (attrs->rtm_protocol > RTPROT_STATIC) nhop_set_origin(nh, attrs->rtm_protocol); + nhop_set_pxtype_flag(nh, get_pxflag(attrs)); nhop_set_rtflags(nh, attrs->rta_rtflags); switch (attrs->rtm_type) { From nobody Sun Apr 9 10:05:21 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvSQn3qv2z44Cgn; Sun, 9 Apr 2023 10:05: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvSQn3JRwz3mVb; Sun, 9 Apr 2023 10:05:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681034721; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yxb1KUGPn8tBu8ha9sgupIfnAu2SRRDuRA3Nz18FnU8=; b=htabEQ63pKwgrP0nNBl3dtx25Xxj/56P7cel9Aix5e2hJZ+QIzoneouyYin3lYCI19JIwO yHa1Et4FydghM+bE8cgg0CdzTZdNQCyf5wpO7B9pkB7jyvvxyCKywZVYga7be1++uEyL/3 iDCnbfhk3vHOX0Jb3F7+Vr7tOY98f8DLCE2vUt6n/OsshuQvEVvNfIgvYQOop2uAqWiaMc /bBH7CpH8jyT91itqpQSG86lXBl49aE239hhAi3LtOKRpUuyr0wPGb34JdLE/8awf7RTnm RTwvpmdzJ057nnBID3IgTOifGm+o2X7W2djRiHGl5eEkJfn2euCvK+uRB/Wq5A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681034721; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yxb1KUGPn8tBu8ha9sgupIfnAu2SRRDuRA3Nz18FnU8=; b=l2UTKocQv02DdUeXFBZ9+dqcjfZe3L8ZRaWp9Y8dnWe3juZEtBgrco4BTQKCSDuQwcMDSl iL26ahj8D3hR4oUjNSvsihDncKg84VSTW1orb4x5qiFXbbp/aBoU/VsKoxxAcLQYubj6cd /B9lvhlcBYnxZhz2+nDg9WlzjyIH2+CGxqMGDFnEyXfOnOk4/oiZi9FMORYbSQ8AVgZALe TMGweuscZKcuuNEZFG2Wjvc7c0ydezDc3pZAgLEQJbWMExRstOU/cOivl9/1MqaxWmycbv MOX7yvEM/SQbwDR2BhKSd3x8kcpAsBqnn/9ZgCwKm+jFMCCfS9/g+XHnrVxBdQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681034721; a=rsa-sha256; cv=none; b=v16lScL+P0ABZUf4fq96fp9DBMB9f2xHXI7reWBbwhQO7LBCfNYe+giEdngonU5vP3Mmj5 OSF/lt+ayRISaWYdA40OHYaGoMuclVK5ZBXHIbb+7smoJ4HdWgqYFN9y2hbiHb22lvopOe j0EUsljO1DoGdbqkUuQaRkaLbKA4mLg672gLCeJr1JaMb+UaPENa/Pzlae3xwG1v3f4tX1 WnOndTX5ZCGd4gmU2MVqmGhPY2R8rYUrmYCZOVwkd4adEepT3Y4OgcBlfk0Vmb5hgbYGyr gRP2fH2qWu1M2NTA122+8auUD4T7Qav8K9McUwsgmR/U5PdX4XbUj9JpIomvfg== 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 4PvSQn2Hppz13kM; Sun, 9 Apr 2023 10:05:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339A5LoR031582; Sun, 9 Apr 2023 10:05:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339A5L70031581; Sun, 9 Apr 2023 10:05:21 GMT (envelope-from git) Date: Sun, 9 Apr 2023 10:05:21 GMT Message-Id: <202304091005.339A5L70031581@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Alexander V. Chernikov" Subject: git: 351e4592f64b - main - route: remove always-true expression List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: melifaro X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 351e4592f64b5c752e7967f5ed565c546a5ef9ac Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by melifaro: URL: https://cgit.FreeBSD.org/src/commit/?id=351e4592f64b5c752e7967f5ed565c546a5ef9ac commit 351e4592f64b5c752e7967f5ed565c546a5ef9ac Author: Alexander V. Chernikov AuthorDate: 2023-04-09 10:04:56 +0000 Commit: Alexander V. Chernikov CommitDate: 2023-04-09 10:04:56 +0000 route: remove always-true expression --- sbin/route/route_netlink.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/sbin/route/route_netlink.c b/sbin/route/route_netlink.c index a9f550ef6f43..e3305c0d7df1 100644 --- a/sbin/route/route_netlink.c +++ b/sbin/route/route_netlink.c @@ -781,8 +781,7 @@ print_flushed_route(struct snl_parsed_route *r, struct sockaddr *gw) routename(sa) : netname(sa)); sa = gw; printf("%-20.20s ", routename(sa)); - if (r->rta_table >= 0) - printf("-fib %-3d ", r->rta_table); + printf("-fib %-3d ", r->rta_table); printf("done\n"); } From nobody Sun Apr 9 13:34:16 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvY3r3jZJz44RGs; Sun, 9 Apr 2023 13:34:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvY3r2pV2z43M6; Sun, 9 Apr 2023 13:34:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681047256; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=psf9QAeIQaPgMaTuJJnojDoCoElf3dK8S/xXTz/hVvw=; b=sab+DJXzpzpP1NBychX9exgTcwSsJyhCj28zgMA8zcC2l5nxCyhn5Rjs1qiiDZDX/aqIGh NLo4xlxxXuMizDW6+GOJFI74yqMfUann733aMAhlFZ1tmIAzEs4+XKNlsg5OygUeLatFDO 1egosFq+HomzF9ahqaBygASXCrtYkl7MMTKCSdW2QmbFjDgDMnlj3tFmKM4epUNe4g94aX 4ARY9OQRYq9ijYAcxhtDDHkFPCLPm0j4l4XmSye+PGpTpl6mn0M+W6FaPFknIAlWH0gDKm Vhm1ufFQUPe1EP0VoJzSkJw1Og++wWYitPvB9/p8ZuJO598vuwcLr5wLTEYsAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681047256; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=psf9QAeIQaPgMaTuJJnojDoCoElf3dK8S/xXTz/hVvw=; b=TFxQkDrHTkxj3g0Z1LCqIrWHGkh3qPIPlI7eEUppPJuW84zdBYhhngSlVv6Escmd0TsuDF fbRVeOH/js0rk11AQXvRmdJPac0kzj5a6Fxd+QWwqDIfirmyAOCsGjot14Sfk+LmOqekDi bMFOklaXzWR8BLe6LrQAkhWxviK7GQXPwI/A83vYiy6N3NY8OUKK8NXCUpf85MWcEQUkMV OKW5pSoFPDgsQocMyJpl/D8gr1nSx71xTofx5SF9kV9L9RcFnCR7/HtfwsZGjjHgkzF74l 9zO/oDc5dJiSybHuInGhePVcg5dtPjanUYssyZVnRwJiMqGgk13epyfqp+2N5g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681047256; a=rsa-sha256; cv=none; b=mWgeEd8UqN7V/emW6w8161IOLEUGJiBhV5upMomT5ESm4loTmjQXDDwIJMA4aweEgvK9k0 zK0xKosLuIArnLcn594eqApiwkm1lUTiyHo20fWZ8TxXdYmnZsh4VhIVdi5dsxMInmI9Cd vGy3JjX+9dcYziINikLcI4iieoA8C85vE8mhvn49pLiq0QM5NjIbSTo1hMhHcAWvfeKi1J VbNzcnDzB6I9HtiKX+6OeNjBRWciURW1iCHq/Y4Cb5UfxXnD1opH6K1KWwvmPNslXNSxcm WeHxzYqX3ingFpA/EXnykqZf4U/i28gLRIkHS/c1G3uche1LvJEjSnsT/zpZYw== 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 4PvY3r1r62z19HD; Sun, 9 Apr 2023 13:34:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339DYG4P077250; Sun, 9 Apr 2023 13:34:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339DYGRC077249; Sun, 9 Apr 2023 13:34:16 GMT (envelope-from git) Date: Sun, 9 Apr 2023 13:34:16 GMT Message-Id: <202304091334.339DYGRC077249@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Alexander V. Chernikov" Subject: git: cc3793b1c548 - main - netlink: improve source ifa selection algorithm when adding routes. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: melifaro X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: cc3793b1c54847e26001f42026778703970fa570 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by melifaro: URL: https://cgit.FreeBSD.org/src/commit/?id=cc3793b1c54847e26001f42026778703970fa570 commit cc3793b1c54847e26001f42026778703970fa570 Author: Alexander V. Chernikov AuthorDate: 2023-04-09 13:30:45 +0000 Commit: Alexander V. Chernikov CommitDate: 2023-04-09 13:33:22 +0000 netlink: improve source ifa selection algorithm when adding routes. Use route destination sockaddr when the gateway is eiter AF_LINK or has the different family (IPv4 over IPv6). This change ensures the nexthop IFA has the same family as the destination. Reported by: Dmitriy Smirnov Tested by: Dmitriy Smirnov MFC after: 3 days --- sys/netlink/route/rt.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/sys/netlink/route/rt.c b/sys/netlink/route/rt.c index 7e81d59d696b..db535cb676e4 100644 --- a/sys/netlink/route/rt.c +++ b/sys/netlink/route/rt.c @@ -708,7 +708,19 @@ finalize_nhop(struct nhop_object *nh, const struct sockaddr *dst, int *perror) } /* Both nh_ifp and gateway are set */ if (nh->nh_ifa == NULL) { - struct ifaddr *ifa = ifaof_ifpforaddr(&nh->gw_sa, nh->nh_ifp); + const struct sockaddr *gw_sa = &nh->gw_sa; + + if (gw_sa->sa_family != dst->sa_family) { + /* + * Use dst as the target for determining the default + * preferred ifa IF + * 1) the gateway is link-level (e.g. direct route) + * 2) the gateway family is different (e.g. IPv4 over IPv6). + */ + gw_sa = dst; + } + + struct ifaddr *ifa = ifaof_ifpforaddr(gw_sa, nh->nh_ifp); if (ifa == NULL) { NL_LOG(LOG_DEBUG, "Unable to determine ifa, skipping"); *perror = EINVAL; From nobody Sun Apr 9 13:53:14 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvYTl1PvKz44VJY; Sun, 9 Apr 2023 13:53:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvYTl0YZbz42Dh; Sun, 9 Apr 2023 13:53:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681048395; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sjUG3uBGYet/AS+3xv7Y0Rw3nAax7UwgMJO7QuQlpXc=; b=XFSZFrhvjhrlLY5RbNFx69JkonfPTEZRBsxogZDBNn0qKMtr0NNw7QHmxkabDk1K7JcyBN T4ZSA6206R8LUDojkR7hZUEVXh7qPQmKfHsHrV4au6gepPFF8w4dxfOUgh6pe3DbTkBLgD BnvnveqKoOWUmfTu10UBCA3CcI7lprTGQqFvfa3JNZKRk82JJKYrnNKIxV7iu2iBh+t3QF 53XkSxTQ8/mn6Qme4tnJaBZEC7mUeBGBtdDGtSNcNaZstNDvaz9mNf82FXAD2dMVtNWegC nKBdTu9kqNhAvWUYkrkQUXfoS5n5vqzJ7Sv7oamK1rkAFZB9Y0h1iVtqqkx1pQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681048395; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sjUG3uBGYet/AS+3xv7Y0Rw3nAax7UwgMJO7QuQlpXc=; b=RwIxjBKW1sn0JWWlNHr0JhDvnNPoZCTR9JP80egVtp+mymo2cusRWOBT4F5gCVS2U9wnPi 28YQjzMXAeIb8f8m+HZma59tGA3jjwx2E5vkRKbu0fDXx27gxMxoL0/ymAku2wUxrnpHR7 KbjKqTCX8qKWbwIWCqFRvgAT1gnRCFh6dxhuskcjXhkiGZnHY655IgvJCzHub0qgC4sbUG ZPq/cTKatEU4gUCielvhVxkyXjtTYrOQazVDkdHmFWtzdYYTpJ97VDCyADoBkuv7L2EIgJ Q/uyJWkfKGdcIZiYB7llObIF736G9F1HQs0A3zqWx2JHSTdILo+LmZJhCqZDCA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681048395; a=rsa-sha256; cv=none; b=Q5twO0FQXbNOaExLDPNd+jmceOx5UEiGS11fu4eqjIDXBbjqZpRfx5aDVu1lopXIPmRZHD 6HqsIdNxLHm4M7Voxin4j3x5TFjAdSlsVQJYJkwhYFpiknHtLR9osZc8WeUTMFsR43mbMD 20t5rVgLqky1mrXuOJmO8ZCVra0sB4AjUQSCcgp5y+J5cVnR/ChcmatN1tdQvlMwMUYAJh 7zRgk97Nkx39p/4I1JowxmH++UmwruBjRnKWkwNW82ookdE0gx6qpj4FIlWsIFekrige2a WX9VusSEZoIngaXula/3DnNCbrP2OgNU7uXGoOANB2cw6I5pC6bEJMR0O6hNJw== 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 4PvYTk6N3bz19rw; Sun, 9 Apr 2023 13:53:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339DrEQt019409; Sun, 9 Apr 2023 13:53:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339DrEgO019408; Sun, 9 Apr 2023 13:53:14 GMT (envelope-from git) Date: Sun, 9 Apr 2023 13:53:14 GMT Message-Id: <202304091353.339DrEgO019408@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Alexander V. Chernikov" Subject: git: 2ccf6388ba60 - stable/13 - routing: add public rt_is_exportable() version to check if the route can be exported to userland when jailed. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: melifaro X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 2ccf6388ba60ab8f1acc697a1112d8891102f36f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by melifaro: URL: https://cgit.FreeBSD.org/src/commit/?id=2ccf6388ba60ab8f1acc697a1112d8891102f36f commit 2ccf6388ba60ab8f1acc697a1112d8891102f36f Author: Alexander V. Chernikov AuthorDate: 2023-03-26 08:19:56 +0000 Commit: Alexander V. Chernikov CommitDate: 2023-04-09 13:52:55 +0000 routing: add public rt_is_exportable() version to check if the route can be exported to userland when jailed. Differential Revision: https://reviews.freebsd.org/D39204 MFC after: 2 weeks (cherry picked from commit 2cda6a2fb0d9473a53931dc2b0171af54dd79b04) --- sys/net/route/route_ctl.h | 2 ++ sys/net/route/route_rtentry.c | 24 ++++++++++++++++++++++++ sys/net/rtsock.c | 29 ++++------------------------- 3 files changed, 30 insertions(+), 25 deletions(-) diff --git a/sys/net/route/route_ctl.h b/sys/net/route/route_ctl.h index e8560e681ddb..b65b64fcdaa0 100644 --- a/sys/net/route/route_ctl.h +++ b/sys/net/route/route_ctl.h @@ -121,6 +121,7 @@ void rib_foreach_table_walk_del(int family, rib_filter_f_t *filter_f, void *arg) struct nhop_object; struct nhgrp_object; +struct ucred; const struct rtentry *rib_lookup_prefix(uint32_t fibnum, int family, const struct sockaddr *dst, const struct sockaddr *netmask, @@ -133,6 +134,7 @@ bool rt_is_host(const struct rtentry *rt); sa_family_t rt_get_family(const struct rtentry *); struct nhop_object *rt_get_raw_nhop(const struct rtentry *rt); void rt_get_rnd(const struct rtentry *rt, struct route_nhop_data *rnd); +bool rt_is_exportable(const struct rtentry *rt, struct ucred *cred); #ifdef INET struct in_addr; void rt_get_inet_prefix_plen(const struct rtentry *rt, struct in_addr *paddr, diff --git a/sys/net/route/route_rtentry.c b/sys/net/route/route_rtentry.c index 64900ae3ae39..7bf624f01540 100644 --- a/sys/net/route/route_rtentry.c +++ b/sys/net/route/route_rtentry.c @@ -35,6 +35,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -198,6 +199,29 @@ rt_get_rnd(const struct rtentry *rt, struct route_nhop_data *rnd) rnd->rnd_weight = rt->rt_weight; } +/* + * If the process in in jail w/o VNET, export only host routes for the + * addresses assigned to the jail. + * Otherwise, allow exporting the entire table. + */ +bool +rt_is_exportable(const struct rtentry *rt, struct ucred *cred) +{ + if (!rt_is_host(rt)) { + /* + * Performance optimisation: only host routes are allowed + * in the jail w/o vnet. + */ + if (jailed_without_vnet(cred)) + return (false); + } else { + if (prison_if(cred, rt_key_const(rt)) != 0) + return (false); + } + + return (true); +} + #ifdef INET /* * Stores IPv4 address and prefix length of @rt inside diff --git a/sys/net/rtsock.c b/sys/net/rtsock.c index fc9439602c13..0c6d856ed7ad 100644 --- a/sys/net/rtsock.c +++ b/sys/net/rtsock.c @@ -208,8 +208,6 @@ static int update_rtm_from_rc(struct rt_addrinfo *info, static void send_rtm_reply(struct socket *so, struct rt_msghdr *rtm, struct mbuf *m, sa_family_t saf, u_int fibnum, int rtm_errno); -static bool can_export_rte(struct ucred *td_ucred, bool rt_is_host, - const struct sockaddr *rt_dst); static void rtsock_notify_event(uint32_t fibnum, const struct rib_cmd_info *rc); static void rtsock_ifmsg(struct ifnet *ifp, int if_flags_mask); @@ -1229,11 +1227,8 @@ route_output(struct mbuf *m, struct socket *so, ...) senderr(error); nh = rc.rc_nh_new; - if (!can_export_rte(curthread->td_ucred, - info.rti_info[RTAX_NETMASK] == NULL, - info.rti_info[RTAX_DST])) { + if (!rt_is_exportable(rc.rc_rt, curthread->td_ucred)) senderr(ESRCH); - } break; default: @@ -2273,23 +2268,6 @@ rt_dispatch(struct mbuf *m, sa_family_t saf) netisr_queue(NETISR_ROUTE, m); /* mbuf is free'd on failure. */ } -/* - * Checks if rte can be exported w.r.t jails/vnets. - * - * Returns true if it can, false otherwise. - */ -static bool -can_export_rte(struct ucred *td_ucred, bool rt_is_host, - const struct sockaddr *rt_dst) -{ - - if ((!rt_is_host) ? jailed_without_vnet(td_ucred) - : prison_if(td_ucred, rt_dst) != 0) - return (false); - return (true); -} - - /* * This is used in dumping the kernel table via sysctl(). */ @@ -2301,9 +2279,10 @@ sysctl_dumpentry(struct rtentry *rt, void *vw) NET_EPOCH_ASSERT(); - export_rtaddrs(rt, w->dst, w->mask); - if (!can_export_rte(w->w_req->td->td_ucred, rt_is_host(rt), w->dst)) + if (!rt_is_exportable(rt, w->w_req->td->td_ucred)) return (0); + + export_rtaddrs(rt, w->dst, w->mask); nh = rt_get_raw_nhop(rt); #ifdef ROUTE_MPATH if (NH_IS_NHGRP(nh)) { From nobody Sun Apr 9 13:53:57 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvYVY3LyQz44VPF; Sun, 9 Apr 2023 13:53: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvYVY2m0qz43LQ; Sun, 9 Apr 2023 13:53:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681048437; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sItm5jT7Et47IMbgvH/GnbuGMZAjaCvF5GE9c6tyyOk=; b=aqDWAeZfV3eQtNHdjd2wP/YxCYjKHBmEDqqsr6lS+7WMHuDLrXTYI9jMCfdaitjX24+2/M 1Yxmir7UL69Nc7lX2yne7v/mJL8A5ctm3/VsoGAVoD559lYdND7RNhgg1gUZEbT4cVCany oCGVr3VS5f4km4NCfIXjj0Ngqwwk1UHwZJrWMOSFXCSEUTR/vOUayeW82Vp0Ck3WnXpAL6 B4dhNljs6LErAafzPgmLKlRQE8JPXc9ZOmz2ay/hHuISJHjyxFBc8Lzg2/VqO2TlVtG2Jr uzG1dXrhk8CNV9xHBnZNFeYJ7M9nbCWxf3aMVpzjgPvSNNtPthdVLR9TJslUfg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681048437; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sItm5jT7Et47IMbgvH/GnbuGMZAjaCvF5GE9c6tyyOk=; b=YbYIlydi64GauPBq4MVcHRQW4xs1Oq6dJf6aw4bgpMjOdS+qe982txx8cccaOnpFCPRaVi WiG7cgxpF4xm+G9J+qU2DdL9yPZIaIA5/FlKCvoE1aGVBZsSzYiAoeOaRI8y9YaKtgK7KZ iakzw+OnRgERQ3OK7gkJ3uJO5oL3I7ztGm4Ke4n715tQ9w8fAntBq5yZMqru11YSjayuzH HjZyANBVbO69jRYeKY4WEa0+C87T7gtxl+p7WJx6tr9HLj+w9AUut5tzmX1CWUiKeWdYK5 IqJwZbLNQEJltM4DUdT4EdyOFpHDcP1vbdrTWEy1Cv0I5eF5PAQBv6j9yOeyNw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681048437; a=rsa-sha256; cv=none; b=m3O5DPhXL2qbSpbprcKuXIDqOu1HOiw/0eCCyhssvM9mIlDmCu3rEnuZozUWH6OKA9mLWT HQJ+3LGESJ0mLh9qnvGUYV1EZtV3qvjfyIXNiKG2PCpGTDd2cI72euzxqLqtRaHRbefn8P Z665t7Hqom4XQpMBiWaUb4eNMUH9I34QVYUHlVJgsDqzcO6Ycyi5y7/bUM8PJ8jgg1hyCD TUT9A6vy3b2BNfJFbtAiRCCXfbnh7hbdGIKnspXnCSZ0xuyWk5DOaR1W+lCyvMwHSPtd0L EkpgksThavnq4FrFfXhhfohX4+LYIIChBXUR1xIzxzjQu0+jIFyaDM0eS1UN0w== 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 4PvYVY1ltzz19fp; Sun, 9 Apr 2023 13:53:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339DrvNF019681; Sun, 9 Apr 2023 13:53:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339Drv1O019680; Sun, 9 Apr 2023 13:53:57 GMT (envelope-from git) Date: Sun, 9 Apr 2023 13:53:57 GMT Message-Id: <202304091353.339Drv1O019680@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Alexander V. Chernikov" Subject: git: 6cee6af2064a - stable/13 - netlink: add standrard ifaddr/neigh parsers to snl(3). List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: melifaro X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6cee6af2064ae0c60221238904dd2c6420845128 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by melifaro: URL: https://cgit.FreeBSD.org/src/commit/?id=6cee6af2064ae0c60221238904dd2c6420845128 commit 6cee6af2064ae0c60221238904dd2c6420845128 Author: Alexander V. Chernikov AuthorDate: 2023-03-26 09:04:41 +0000 Commit: Alexander V. Chernikov CommitDate: 2023-04-09 13:53:39 +0000 netlink: add standrard ifaddr/neigh parsers to snl(3). MFC after: 2 weeks (cherry picked from commit 9a11f3dff991bac89afb5f74a476e765abdbd1d1) --- sys/netlink/netlink_snl_route_parsers.h | 57 ++++++++++++++++++++++++++++++++- 1 file changed, 56 insertions(+), 1 deletion(-) diff --git a/sys/netlink/netlink_snl_route_parsers.h b/sys/netlink/netlink_snl_route_parsers.h index a370f89fb9e3..ba9ead461c80 100644 --- a/sys/netlink/netlink_snl_route_parsers.h +++ b/sys/netlink/netlink_snl_route_parsers.h @@ -198,6 +198,7 @@ struct snl_parsed_link_simple { uint32_t ifi_index; uint32_t ifla_mtu; uint16_t ifi_type; + uint32_t ifi_flags; char *ifla_ifname; }; @@ -210,14 +211,68 @@ static struct snl_attr_parser _nla_p_link_s[] = { static struct snl_field_parser _fp_p_link_s[] = { {.off_in = _IN(ifi_index), .off_out = _OUT(ifi_index), .cb = snl_field_get_uint32 }, {.off_in = _IN(ifi_type), .off_out = _OUT(ifi_type), .cb = snl_field_get_uint16 }, + {.off_in = _IN(ifi_flags), .off_out = _OUT(ifi_flags), .cb = snl_field_get_uint32 }, }; #undef _IN #undef _OUT SNL_DECLARE_PARSER(snl_rtm_link_parser_simple, struct ifinfomsg, _fp_p_link_s, _nla_p_link_s); +struct snl_parsed_neigh { + uint8_t ndm_family; + uint8_t ndm_flags; + uint16_t ndm_state; + uint32_t nda_ifindex; + struct sockaddr *nda_dst; + struct nlattr *nda_lladdr; +}; + +#define _IN(_field) offsetof(struct ndmsg, _field) +#define _OUT(_field) offsetof(struct snl_parsed_neigh, _field) +static struct snl_attr_parser _nla_p_neigh_s[] = { + { .type = NDA_DST, .off = _OUT(nda_dst), .cb = snl_attr_get_ip }, + { .type = NDA_LLADDR , .off = _OUT(nda_lladdr), .cb = snl_attr_get_nla }, + { .type = NDA_IFINDEX, .off = _OUT(nda_ifindex), .cb = snl_attr_get_uint32 }, +}; +static struct snl_field_parser _fp_p_neigh_s[] = { + {.off_in = _IN(ndm_family), .off_out = _OUT(ndm_family), .cb = snl_field_get_uint8 }, + {.off_in = _IN(ndm_flags), .off_out = _OUT(ndm_flags), .cb = snl_field_get_uint8 }, + {.off_in = _IN(ndm_state), .off_out = _OUT(ndm_state), .cb = snl_field_get_uint16 }, +}; +#undef _IN +#undef _OUT +SNL_DECLARE_PARSER(snl_rtm_neigh_parser, struct ndmsg, _fp_p_neigh_s, _nla_p_neigh_s); + +struct snl_parsed_addr { + uint8_t ifa_family; + uint8_t ifa_prefixlen; + uint32_t ifa_index; + struct sockaddr *ifa_local; + struct sockaddr *ifa_address; + struct sockaddr *ifa_broadcast; + char *ifa_label; +}; + +#define _IN(_field) offsetof(struct ifaddrmsg, _field) +#define _OUT(_field) offsetof(struct snl_parsed_addr, _field) +static struct snl_attr_parser _nla_p_addr_s[] = { + { .type = IFA_ADDRESS, .off = _OUT(ifa_address), .cb = snl_attr_get_ip }, + { .type = IFA_LOCAL, .off = _OUT(ifa_local), .cb = snl_attr_get_ip }, + { .type = IFA_LABEL, .off = _OUT(ifa_label), .cb = snl_attr_get_string }, + { .type = IFA_BROADCAST, .off = _OUT(ifa_broadcast), .cb = snl_attr_get_ip }, +}; +static struct snl_field_parser _fp_p_addr_s[] = { + {.off_in = _IN(ifa_family), .off_out = _OUT(ifa_family), .cb = snl_field_get_uint8 }, + {.off_in = _IN(ifa_prefixlen), .off_out = _OUT(ifa_prefixlen), .cb = snl_field_get_uint8 }, + {.off_in = _IN(ifa_index), .off_out = _OUT(ifa_index), .cb = snl_field_get_uint32 }, +}; +#undef _IN +#undef _OUT +SNL_DECLARE_PARSER(snl_rtm_addr_parser, struct ifaddrmsg, _fp_p_addr_s, _nla_p_addr_s); + static const struct snl_hdr_parser *snl_all_route_parsers[] = { &_metrics_mp_nh_parser, &_mpath_nh_parser, &_metrics_parser, &snl_rtm_route_parser, - &snl_rtm_link_parser, &snl_rtm_link_parser_simple, + &snl_rtm_link_parser, &snl_rtm_link_parser_simple, &snl_rtm_neigh_parser, + &snl_rtm_addr_parser, }; #endif From nobody Sun Apr 9 14:38:43 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvZVD04qPz44XpF; Sun, 9 Apr 2023 14:38: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvZVC2L72z4KFv; Sun, 9 Apr 2023 14:38:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681051123; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0d4BY3tdunEh7MEfRkOP/FY7d2NYSK/Ch+zcULfSLIo=; b=Wy+S26pR54g3wRgHl9iYEwwPLr+shUhySPQM+jXJoZQ30gp1pvf9hz4/P+ygk1NlvxmQXv ZH9GEcRp0nAQVpL8Yyl613ZBmcKSoeBg+OOtMCyanAhb53VLjO/IB8vk4mvriARA5aLEBA FigVuIe2BeiXzQTEbwwalpIe+1BWSq6SrX4HoFjBVoAtzDLAW6c3BywhVppJLP8JmDfx5M etXWyJQk/8QuGgWgw6qGgVyCbhX3d0vAoa7zQr5VHvvP6/1yM8KLuoEsdwF86v9CMY3qT9 uCcfaRFCQREqt80tcavLEYS0nHqU+j8U22YJdSOuJ1R+BcDIuEaichFoTdtDPw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681051123; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0d4BY3tdunEh7MEfRkOP/FY7d2NYSK/Ch+zcULfSLIo=; b=T4gSAsKCpINYY1EAW6PPVO7QbNq4e35r/lqoMb+BKrlp7iLirxB7p7R5SBIDlsd/1xsKEY arYGu4RbNv0CqlRyBk2KQdcTGHL5XbbB9b2qHFPC9DCKOQrLt1hawgxnQPvldPpPvpeahI RHg6Xf6BQD3wmQ6NI5PoV0yaRmKEdm6jkBQWnJBN0Yh9xlaasW98RkqiyRAyDkZk3WEQKa ZfsGQD6uTxyl5BjzMb/OkwJOqjxPLwXd7MrdI8gIli0sFUQKyn8oGwxfwgomAohrWJ4N9w kTrE5gjD9giVZcalEVUa7r32kyG5ZgFVS69BSQCdXAOxUwvodbABLNyh4TC1OQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681051123; a=rsa-sha256; cv=none; b=sfMtqSN9+3atRUPr+RQrRt/dh7ZaAmUBxV8djzPtWlfXcMn3HojHPRHyjODE9uhdVc0uSs 3b0rl6qlrZPLttqwVR2TG/zevhqeCqE+kwfh9JjdrNsgTa9Xbvp9bm36coW2+HyM4m6ZK+ 6Iuseeb0piQNa9PeLxuHdMh+xqbd7hrq7XBX6KcLPQzixML4R/z8336A1XpfDN5HumpV9p lN6i6+i4YAVKC957X5C0T0UfStAP47d7xVYYQC+jMpr1iB8nGN/lLaGtbjetzsT0RDOHVn gu/Y54wnj3BesNnJncG1CsBqXlU9HseosJvmFq6RMSQeDywnsl1DYB/QeBTMtQ== 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 4PvZVC1Gckz1BYr; Sun, 9 Apr 2023 14:38:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339Ech3k085937; Sun, 9 Apr 2023 14:38:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339Ech2m085936; Sun, 9 Apr 2023 14:38:43 GMT (envelope-from git) Date: Sun, 9 Apr 2023 14:38:43 GMT Message-Id: <202304091438.339Ech2m085936@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: bf86e2c503bc - stable/13 - times: Use modern function definitions List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: bf86e2c503bcffb46f59a8d08eea68d96016815f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=bf86e2c503bcffb46f59a8d08eea68d96016815f commit bf86e2c503bcffb46f59a8d08eea68d96016815f Author: Warner Losh AuthorDate: 2022-10-25 05:03:11 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:37:52 +0000 times: Use modern function definitions Use the modern ANSI function defition syntax rather than the old K&R syntax for times. Sponsored by: Netflix (cherry picked from commit aec9453fec70864234c70ccd0198c8b612139cf7) --- lib/libc/gen/times.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/libc/gen/times.c b/lib/libc/gen/times.c index d811b553b990..985c8266a0f8 100644 --- a/lib/libc/gen/times.c +++ b/lib/libc/gen/times.c @@ -45,8 +45,7 @@ __FBSDID("$FreeBSD$"); #define CONVTCK(r) (r.tv_sec * CLK_TCK + r.tv_usec / (1000000 / CLK_TCK)) clock_t -times(tp) - struct tms *tp; +times(struct tms *tp) { struct rusage ru; struct timespec t; From nobody Sun Apr 9 14:39:01 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvZVY5hmyz44XKd; Sun, 9 Apr 2023 14:39: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvZVY4p8Rz4KcP; Sun, 9 Apr 2023 14:39:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681051141; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+D0d7vSxRd9dXfINoq/R7qO61ygddCXSxY0TmhMKEc4=; b=PdUsCNTDeMcJMe23boKrXFEUC5NkLxU7MmrukSBV0dFBcLa7rKcix9IhYB7sgmqNzWBh3f QdHs38TWPZoRmDGgeK2586QvQI6HqDbbzCVB7YTKhPCGpROLr97nqOUTmaY+ZWF62VtvEu BrbfYOq1WLyQ9uPv7Rt8YUmGHZiskg1JMy/Y/YzCEd6VlHrIc9YRId/XLQ1Mw7Cgpp4vd8 hYt/CWXZ+qZdiosOtFggay7ipn8o+89wRS4BfMKAeQbRrnXJNZDirXkmTIPIt2d06IFuXL vGm5vt70jvbqfs4+KUADnCAO/fyZaCPkM5MAQp+CKaiCNnuDtcGLJIPpyZNaYg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681051141; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+D0d7vSxRd9dXfINoq/R7qO61ygddCXSxY0TmhMKEc4=; b=pGfEK5hpu1S2gyFq9Zkh56HeEcDvZbgk+yL1kbb+6J6wGVUYshHtPXWr6kRkdkuSNXNWaZ y+fDskRwaKowHMss6g7Pc7OBstqqY8sp4KRxwruWyHPV9gJj+H50FFwdkmfB0BbZ8B8szk elIs6lWJruIW6UM8xjQSyiUaHyUgnNsGOvXR3Sts7GbDqioXUG8gy1kNXPSoHoHgJS/pmF wotORK6LJPAhr2TxJqTAbz4C4bTgTlSxWxa5WqdN5DhGcl8yTNp0O7acbRZgfq99Fo84hx WUxROo+HHRGdp3Zw4KW1ak74HFm5THd33y++boe1dHzALN1V9lDIdr0Xdth2RQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681051141; a=rsa-sha256; cv=none; b=UbQzvhJOcjeqUMHBVB2EzvR4tiFq+XV5RTkWm2gc+voTKQxJ3CLijnhFrG7AOFk4m/dJCH DGsmRcdnH0aZPITzn820BWozhN4srh1GhpYKjjFjL74nKijvclz0Ge2h0d1RGONJLWrE2k SZCGQ2no9TIPLw2Zvulu9ZKNrtjGQMKO8S/CYej7WDyepGN706/7YBrUuhbo0bqUQdpoTX v7imQxtVBaVfDM7z/oqa7K7ZzExT4JzBsJynKp2pA4pJv+1LEVHcxB7eV2tZLKo0FFKYF+ rmurdY53ybiWqFFf0WKQztCgDENEs3xSoLgIECesKKlwhmz0tolOuluhskxFnQ== 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 4PvZVY3rFfz1BRQ; Sun, 9 Apr 2023 14:39:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339Ed17x086072; Sun, 9 Apr 2023 14:39:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339Ed1Nl086071; Sun, 9 Apr 2023 14:39:01 GMT (envelope-from git) Date: Sun, 9 Apr 2023 14:39:01 GMT Message-Id: <202304091439.339Ed1Nl086071@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: b7768c8f2597 - stable/12 - times: Use modern function definitions List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: b7768c8f2597883c8c510e2028992f212010241d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=b7768c8f2597883c8c510e2028992f212010241d commit b7768c8f2597883c8c510e2028992f212010241d Author: Warner Losh AuthorDate: 2022-10-25 05:03:11 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:37:36 +0000 times: Use modern function definitions Use the modern ANSI function defition syntax rather than the old K&R syntax for times. Sponsored by: Netflix (cherry picked from commit aec9453fec70864234c70ccd0198c8b612139cf7) --- lib/libc/gen/times.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/libc/gen/times.c b/lib/libc/gen/times.c index d811b553b990..985c8266a0f8 100644 --- a/lib/libc/gen/times.c +++ b/lib/libc/gen/times.c @@ -45,8 +45,7 @@ __FBSDID("$FreeBSD$"); #define CONVTCK(r) (r.tv_sec * CLK_TCK + r.tv_usec / (1000000 / CLK_TCK)) clock_t -times(tp) - struct tms *tp; +times(struct tms *tp) { struct rusage ru; struct timespec t; From nobody Sun Apr 9 14:42:33 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvZZf3LXQz44Y3J; Sun, 9 Apr 2023 14:42:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvZZf1PJXz4R8d; Sun, 9 Apr 2023 14:42:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681051354; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0mLWCmaOX7oxjAD1ACCb9bck9ImHuUGXvKQKdnWgT7k=; b=GaxvcsjelwjKjUwkgU85tA5Gvw8+9R5ynUqPNh6yWd+3WvQ6dbKveXqiZ/V4NPtpo/mdml gnzGaVD+G52coEZ3EgY0UHpDqFpgZNlxwjq6a5/mhLmwHCM19j07BNigzeo5RNRKqdS4B7 oF2LkShOhm5N05SNEhmZfVvJnZ6JvcMfrBqwAWUFWw0WeGUJ7KZgD459p8Y8XXzHF9J+X4 igxGZfZ927V+CxkfMaiIcvikOKIpKTVEQsPKN7FYq5CXbnaEdh4mnci4IgmuoD+QuyBG1y YSJyFa2lA1KKblebdFh1jFfcPHjseN0jTGRx+F5tCTdRtopKyFYzoMybv2hryA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681051354; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0mLWCmaOX7oxjAD1ACCb9bck9ImHuUGXvKQKdnWgT7k=; b=Hh33G0oFBF+oAw7Vnwo/S3n1BK4RnDu9XVNR00u1x4fShd/4q7svsZilD++ZB+uFsOWc5Y gHcOH9SNyVdqydkY2VhizEsPM+IhQcnmFkd4eP+l4ZYKULP1+Cj5jJUU8AfKsVsyKq1f3z uUXso16Iq7XA43QyLAopndPFvcP1SX7TvwPNebPxBr3yzsFEV7n3Jcz2iHmhbrHAtP99cm o7/WNepc9ghhtXxtNNZjKMkG+o0uXROSAlLZaOBiReR9B4CcssBZua5TlwO6Xb9PuXNo3x Zk9jJOw7b0rU35T1SZ+qylOacm0RkJ9VW627fFPu3Kvy3VGXSdITA2UIMOBjUw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681051354; a=rsa-sha256; cv=none; b=XRX0Hn5BmcE6acPqL5kH4nG9o+RLu/yt6fNnxnQAvSPPA21nDM2LOHCvjF9pAtMOPDyaUD rbN+ya7noL+zcEVN6ARNQrShsKFY1eX1Fxv+zqCULzQkcYhSFwCmM9+YSaP5fLD8I3jCYX 8Y8x27KIrVWrIC/6zdXnTAHOoK1RdHVIwfc50Hsg6GmmT3lJFf1Y8R91bbk0H2tMcKmOvh 7uhiSp/1ihjVfeHMW9HMo7izSVNgzNvsJBTqPbLt7/InPkrJv7JaLnwScYZn3A5tuHk7f3 QvHHfDDhyFXc+p2chjPP9TZ79VGAgO9NUyzamxtH2rUTFvzg1wj120A8djz9zQ== 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 4PvZZf0VkPz1BlL; Sun, 9 Apr 2023 14:42:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339EgX8B001618; Sun, 9 Apr 2023 14:42:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339EgX9n001617; Sun, 9 Apr 2023 14:42:33 GMT (envelope-from git) Date: Sun, 9 Apr 2023 14:42:33 GMT Message-Id: <202304091442.339EgX9n001617@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 3e7b96764a80 - stable/13 - : Avoid instantiating a pointer type in std::decay<>. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 3e7b96764a80c7851421af60f800587b2f94b697 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=3e7b96764a80c7851421af60f800587b2f94b697 commit 3e7b96764a80c7851421af60f800587b2f94b697 Author: John Baldwin AuthorDate: 2022-11-24 00:10:05 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:39:46 +0000 : Avoid instantiating a pointer type in std::decay<>. GCC expands the pointer type in this conditional expression even for template types _Up that are not arrays. This raises an error when std::decay<> is used with reference types (as is done in LLVM's sources). Using add_pointer<> causes GCC to only instantiate a pointer type for array types. A similar change to this commit (albeit reworked due to upstream changes) has been merged to libc++ in commit 26068c6e60324ed866a1ca2afb5cb5eb0aaf015b. In file included from /usr/obj/usr/src/amd64.amd64/tmp/usr/include/c++/v1/__compare/ordering.h:13, from /usr/obj/usr/src/amd64.amd64/tmp/usr/include/c++/v1/__compare/common_comparison_category.h:12, from /usr/obj/usr/src/amd64.amd64/tmp/usr/include/c++/v1/tuple:168, from /usr/src/contrib/llvm-project/llvm/include/llvm/ADT/DenseMapInfo.h:20, from /usr/src/contrib/llvm-project/llvm/include/llvm/ADT/DenseMap.h:17, from /usr/src/contrib/llvm-project/llvm/lib/Transforms/Scalar/GVNHoist.cpp:36: /usr/obj/usr/src/amd64.amd64/tmp/usr/include/c++/v1/type_traits: In instantiation of 'struct std::__1::__decay': /usr/obj/usr/src/amd64.amd64/tmp/usr/include/c++/v1/type_traits:1591:89: required from 'struct std::__1::decay' /usr/obj/usr/src/amd64.amd64/tmp/usr/include/c++/v1/__utility/pair.h:132:16: required by substitution of 'template::type>::value && (! std::__1::is_same::type, std::__1::pair > >::value)), std::__1::pair >::_CheckTupleLikeConstructor, std::__1::__check_tuple_constructor_fail>::type::__enable_implicit<_Tuple>(), void>::type* > constexpr std::__1::pair >::pair(_Tuple&&) [with _Tuple = llvm::CHIArg&&; typename std::__1::enable_if::type>::value && (! std::__1::is_same::type, std::__1::pair > >::value)), std::__1::pair >::_CheckTupleLikeConstructor, std::__1::__check_tuple_constructor_fail>::type::__enable_implicit<_Tuple>(), void>::type* = ]' /usr/src/contrib/llvm-project/llvm/lib/Transforms/Scalar/GVNHoist.cpp:892:51: required from here /usr/obj/usr/src/amd64.amd64/tmp/usr/include/c++/v1/type_traits:1582:30: error: forming pointer to reference type 'std::__1::remove_extent::type' {aka 'llvm::CHIArg&'} 1582 | >::type type; | ^~~~ Reviewed by: dim Differential Revision: https://reviews.freebsd.org/D36898 (cherry picked from commit c36de97088a2b9141cdaf2fae2a7f41bf820ffa0) --- contrib/llvm-project/libcxx/include/type_traits | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/llvm-project/libcxx/include/type_traits b/contrib/llvm-project/libcxx/include/type_traits index 3391999675a0..daf031e475f7 100644 --- a/contrib/llvm-project/libcxx/include/type_traits +++ b/contrib/llvm-project/libcxx/include/type_traits @@ -1572,7 +1572,7 @@ public: typedef _LIBCPP_NODEBUG typename conditional < is_array<_Up>::value, - typename remove_extent<_Up>::type*, + typename add_pointer::type>::type, typename conditional < is_function<_Up>::value, From nobody Sun Apr 9 14:42:35 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvZZg4zfgz44Y3K; Sun, 9 Apr 2023 14:42: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvZZg2Yspz4R7J; Sun, 9 Apr 2023 14:42:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681051355; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cOAHoQ4CKMudDDtjTjW7OZGdblKdTazO9xTP2gMMNj4=; b=GmJjey9/A0ZIe1IlxPMQvq8K8EoZbvJIvvWjHGoS3d1K1qrZkpxoh0lCe3ebHI76LcrLqX sQKOup/5TKBaKEwDsvQBDwxBWt2DeAKZ+kgNGQMKwI3vIJ5sTaihuVovEITK+rIUWXH+UH r+S4DKooLSgDHxHD0cEtpXa+CgIElRmH9jtQqK3myghVpD89kLUrbWY/R0NN1m5SdSsapV KrObekM9g3TZMPMMgTGgNhz4iMpCm6DwtEFbr2+bRugH9SfuptUglgfMZ7WaDcwYEKn4JZ +196TehSQdCnY+3X69bfSF7LtwsPtdbAQpCe1LA1T8PwNQ/M+fh5WYC0GE7PwQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681051355; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cOAHoQ4CKMudDDtjTjW7OZGdblKdTazO9xTP2gMMNj4=; b=PXHgJ7kRtkCjg0YHieTj76lzctEVXyq0u+EZ7ibMFkVYu8pyhNm7sImiA9NnzESYdr/9ZI HmgQ2oIA6GZETCCsqxVlnuODQKOpR/YoVce85YbdaTiKRj8v9qXsQQC1MAAN+44GEbl6O+ S5vSStttoddcE+kaPxRUlUStpS2qtmRLXULTHKmgEkyWA9lwz31DA0HDFTOOzP68p3e6Eu Nl0Hl0HEz5VAhtAkqviAyBALnD0ps3WjP6c4wijyasDBaONna3m6u1eD1FYtVDyyEHciWn LvDMnXEanemATjfOGoMsda6Wh9+siK1WjIJRhplMX0CWSunTFMtcbqioXdY0mQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681051355; a=rsa-sha256; cv=none; b=mUcv5DCcIkcromL9RPj2hxOp2CzsOeJ2E+z+oo7isRfLHU1tu4fLaSko/7lgvWfw0U2/MX SAK1Cvqo5kC5Rhm7PyPORMsMiBcWPez4iBHJS4cko4mpAY77tey7BFVm1nfZsG7SZp2V6t eQHM0WvCjJ1JuHv9y4qXIzk7STzIadRUnzp8AQnDNzoMsKi4PTaIC0ne0jZm9kc2YSIdBQ JxF7qEO1+z+bOD5r2PHg8IHiI1YzkBb6sDNgDEGVbXHNQpwKZQbhzVmL0UnFWwmVFlNwy8 OJF7duX0RJWAV/W5/OLx/ftlGKN/JClinbSK00CCDDCB8w2QQ8ey3cke2PVh8Q== 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 4PvZZg1bYkz1Bhx; Sun, 9 Apr 2023 14:42:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339EgZoK001643; Sun, 9 Apr 2023 14:42:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339EgZt5001642; Sun, 9 Apr 2023 14:42:35 GMT (envelope-from git) Date: Sun, 9 Apr 2023 14:42:35 GMT Message-Id: <202304091442.339EgZt5001642@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: ad81b9ee3db9 - stable/13 - Revert "Ensure .inc files are regenerated when llvm/clang tblgen binaries change" List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: ad81b9ee3db95f874bc6bfec91fc8eff2404a39f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=ad81b9ee3db95f874bc6bfec91fc8eff2404a39f commit ad81b9ee3db95f874bc6bfec91fc8eff2404a39f Author: Dimitry Andric AuthorDate: 2023-03-29 18:37:02 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:40:09 +0000 Revert "Ensure .inc files are regenerated when llvm/clang tblgen binaries change" This reverts commit ab80f0b21fbb9c44d40e6f7a99090188f4ed2f71. The intent of this change was to avoid possible compilation errors when certain .inc files were not regenerated, but the method turns out to cause way more rebuilds than anticipated. Another method will have to be found, and in the mean time, WITH_CLEAN is the solution that always works. Fixes: ab80f0b21fbb (cherry picked from commit 4dc3b1fa1bbcf20f7713d94776a1604964ada32b) --- lib/clang/clang.pre.mk | 1 - lib/clang/headers/Makefile | 2 -- lib/clang/libclang/Makefile | 22 +++++++--------------- lib/clang/liblldb/Makefile | 3 --- lib/clang/libllvm/Makefile | 2 -- lib/clang/llvm.pre.mk | 1 - usr.bin/clang/lld/Makefile | 2 -- usr.bin/clang/lldb-server/Makefile | 2 -- usr.bin/clang/lldb/Makefile | 2 -- usr.bin/clang/llvm-cxxfilt/Makefile | 2 -- usr.bin/clang/llvm-nm/Makefile | 2 -- usr.bin/clang/llvm-objcopy/Makefile | 2 -- usr.bin/clang/llvm-objdump/Makefile | 2 -- usr.bin/clang/llvm-readobj/Makefile | 2 -- usr.bin/clang/llvm-size/Makefile | 2 -- usr.bin/clang/llvm-strings/Makefile | 2 -- usr.bin/clang/llvm-symbolizer/Makefile | 2 -- 17 files changed, 7 insertions(+), 46 deletions(-) diff --git a/lib/clang/clang.pre.mk b/lib/clang/clang.pre.mk index 9ef401645f14..520a9300e6ce 100644 --- a/lib/clang/clang.pre.mk +++ b/lib/clang/clang.pre.mk @@ -5,4 +5,3 @@ CLANG_SRCS= ${LLVM_BASE}/clang CLANG_TBLGEN?= clang-tblgen -CLANG_TBLGEN_BIN!= which ${CLANG_TBLGEN} diff --git a/lib/clang/headers/Makefile b/lib/clang/headers/Makefile index c4643e9353e6..80a1250f6366 100644 --- a/lib/clang/headers/Makefile +++ b/lib/clang/headers/Makefile @@ -200,8 +200,6 @@ riscv_${hdr:H}.h: ${CLANG_SRCS}/include/clang/Basic/riscv_${hdr:H}.td GENINCS+= riscv_${hdr:H}.h .endfor -${GENINCS}: ${CLANG_TBLGEN_BIN} - CLEANFILES= ${GENINCS} ${GENINCS:C/$/.d/} .include diff --git a/lib/clang/libclang/Makefile b/lib/clang/libclang/Makefile index cdffedfe3d36..a2612bc9d894 100644 --- a/lib/clang/libclang/Makefile +++ b/lib/clang/libclang/Makefile @@ -1010,6 +1010,13 @@ clang/Basic/riscv_vector_builtin_cg.inc: \ -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/riscv_vector.td TGHDRS+= clang/Basic/riscv_vector_builtin_cg.inc +clang/Driver/Options.inc: ${CLANG_SRCS}/include/clang/Driver/Options.td + ${LLVM_TBLGEN} -gen-opt-parser-defs \ + -I ${LLVM_SRCS}/include -I ${CLANG_SRCS}/include/clang/Driver \ + -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ + ${CLANG_SRCS}/include/clang/Driver/Options.td +TGHDRS+= clang/Driver/Options.inc + clang/Parse/AttrParserStringSwitches.inc: \ ${CLANG_SRCS}/include/clang/Basic/Attr.td ${CLANG_TBLGEN} -gen-clang-attr-parser-string-switches \ @@ -1087,25 +1094,10 @@ OpenCLBuiltins.inc: ${CLANG_SRCS}/lib/Sema/OpenCLBuiltins.td ${CLANG_SRCS}/lib/Sema/OpenCLBuiltins.td TGHDRS+= OpenCLBuiltins.inc -${TGHDRS}: ${CLANG_TBLGEN_BIN} - DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} -clang/Driver/Options.inc: ${CLANG_SRCS}/include/clang/Driver/Options.td - ${LLVM_TBLGEN} -gen-opt-parser-defs \ - -I ${LLVM_SRCS}/include -I ${CLANG_SRCS}/include/clang/Driver \ - -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ - ${CLANG_SRCS}/include/clang/Driver/Options.td -LTGHDRS+= clang/Driver/Options.inc - -${LTGHDRS}: ${LLVM_TBLGEN_BIN} - -DEPENDFILES+= ${LTGHDRS:C/$/.d/} -DPSRCS+= ${LTGHDRS} -CLEANFILES+= ${LTGHDRS} ${LTGHDRS:C/$/.d/} - .include "../clang.build.mk" INTERNALLIB= diff --git a/lib/clang/liblldb/Makefile b/lib/clang/liblldb/Makefile index dbf9c6d696e7..28778cb04c57 100644 --- a/lib/clang/liblldb/Makefile +++ b/lib/clang/liblldb/Makefile @@ -693,7 +693,6 @@ SRCS+= Utility/VMRange.cpp SRCS+= Version/Version.cpp LLDB_TBLGEN?= lldb-tblgen -LLDB_TBLGEN_BIN!= which ${LLDB_TBLGEN} CommandOptions.inc: ${LLDB_SRCS}/source/Commands/Options.td ${LLDB_TBLGEN} -gen-lldb-option-defs \ @@ -721,8 +720,6 @@ ${path:T}PropertiesEnum.inc: ${LLDB_SRCS}/source/${path}Properties.td TGHDRS+= ${path:T}PropertiesEnum.inc .endfor -${TGHDRS}: ${LLDB_TBLGEN_BIN} - DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} diff --git a/lib/clang/libllvm/Makefile b/lib/clang/libllvm/Makefile index ef9d87dd7d2f..868f9aa48964 100644 --- a/lib/clang/libllvm/Makefile +++ b/lib/clang/libllvm/Makefile @@ -2026,8 +2026,6 @@ TGHDRS+= X86GenRegisterInfo.inc TGHDRS+= X86GenSubtargetInfo.inc .endif # MK_LLVM_TARGET_X86 -${TGHDRS}: ${LLVM_TBLGEN_BIN} - DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} diff --git a/lib/clang/llvm.pre.mk b/lib/clang/llvm.pre.mk index 92124a7bf092..774d7d47ea37 100644 --- a/lib/clang/llvm.pre.mk +++ b/lib/clang/llvm.pre.mk @@ -5,4 +5,3 @@ LLVM_BASE= ${SRCTOP}/contrib/llvm-project LLVM_SRCS= ${LLVM_BASE}/llvm LLVM_TBLGEN?= llvm-tblgen -LLVM_TBLGEN_BIN!= which ${LLVM_TBLGEN} diff --git a/usr.bin/clang/lld/Makefile b/usr.bin/clang/lld/Makefile index 1113072e4e9d..9f114dbb81bf 100644 --- a/usr.bin/clang/lld/Makefile +++ b/usr.bin/clang/lld/Makefile @@ -95,8 +95,6 @@ ${INCFILE}: ${TDFILE} -o ${.TARGET} ${TDFILE} TGHDRS+= ${INCFILE} -${TGHDRS}: ${LLVM_TBLGEN_BIN} - DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} diff --git a/usr.bin/clang/lldb-server/Makefile b/usr.bin/clang/lldb-server/Makefile index efe8529f3611..9c3883984618 100644 --- a/usr.bin/clang/lldb-server/Makefile +++ b/usr.bin/clang/lldb-server/Makefile @@ -37,8 +37,6 @@ ${INCFILE}: ${TDFILE} -o ${.TARGET} ${TDFILE} TGHDRS+= ${INCFILE} -${TGHDRS}: ${LLVM_TBLGEN_BIN} - DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} diff --git a/usr.bin/clang/lldb/Makefile b/usr.bin/clang/lldb/Makefile index 8e160b18eaa5..10ffd3b90057 100644 --- a/usr.bin/clang/lldb/Makefile +++ b/usr.bin/clang/lldb/Makefile @@ -30,8 +30,6 @@ ${INCFILE}: ${TDFILE} -o ${.TARGET} ${TDFILE} TGHDRS+= ${INCFILE} -${TGHDRS}: ${LLVM_TBLGEN_BIN} - DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} diff --git a/usr.bin/clang/llvm-cxxfilt/Makefile b/usr.bin/clang/llvm-cxxfilt/Makefile index 073316b7b4a7..a61e32db9aa7 100644 --- a/usr.bin/clang/llvm-cxxfilt/Makefile +++ b/usr.bin/clang/llvm-cxxfilt/Makefile @@ -19,8 +19,6 @@ ${INCFILE}: ${TDFILE} -o ${.TARGET} ${TDFILE} TGHDRS+= ${INCFILE} -${TGHDRS}: ${LLVM_TBLGEN_BIN} - DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} diff --git a/usr.bin/clang/llvm-nm/Makefile b/usr.bin/clang/llvm-nm/Makefile index d3099e5a75be..0df48744632d 100644 --- a/usr.bin/clang/llvm-nm/Makefile +++ b/usr.bin/clang/llvm-nm/Makefile @@ -19,8 +19,6 @@ ${INCFILE}: ${TDFILE} -o ${.TARGET} ${TDFILE} TGHDRS+= ${INCFILE} -${TGHDRS}: ${LLVM_TBLGEN_BIN} - DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} diff --git a/usr.bin/clang/llvm-objcopy/Makefile b/usr.bin/clang/llvm-objcopy/Makefile index 995a8b461344..80aa29949edf 100644 --- a/usr.bin/clang/llvm-objcopy/Makefile +++ b/usr.bin/clang/llvm-objcopy/Makefile @@ -36,8 +36,6 @@ ${hdr}.inc: ${LLVM_BASE}/${SRCDIR}/${hdr}.td TGHDRS+= ${hdr}.inc .endfor -${TGHDRS}: ${LLVM_TBLGEN_BIN} - DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} diff --git a/usr.bin/clang/llvm-objdump/Makefile b/usr.bin/clang/llvm-objdump/Makefile index fc81304ddb1a..44d8c7f82e33 100644 --- a/usr.bin/clang/llvm-objdump/Makefile +++ b/usr.bin/clang/llvm-objdump/Makefile @@ -25,8 +25,6 @@ ${hdr}.inc: ${LLVM_BASE}/${SRCDIR}/${hdr}.td TGHDRS+= ${hdr}.inc .endfor -${TGHDRS}: ${LLVM_TBLGEN_BIN} - DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} diff --git a/usr.bin/clang/llvm-readobj/Makefile b/usr.bin/clang/llvm-readobj/Makefile index 8926eb03bdbf..4b547d81c583 100644 --- a/usr.bin/clang/llvm-readobj/Makefile +++ b/usr.bin/clang/llvm-readobj/Makefile @@ -30,8 +30,6 @@ ${INCFILE}: ${TDFILE} -o ${.TARGET} ${TDFILE} TGHDRS+= ${INCFILE} -${TGHDRS}: ${LLVM_TBLGEN_BIN} - DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} diff --git a/usr.bin/clang/llvm-size/Makefile b/usr.bin/clang/llvm-size/Makefile index f39e5db6f872..20bd5de61192 100644 --- a/usr.bin/clang/llvm-size/Makefile +++ b/usr.bin/clang/llvm-size/Makefile @@ -19,8 +19,6 @@ ${INCFILE}: ${TDFILE} -o ${.TARGET} ${TDFILE} TGHDRS+= ${INCFILE} -${TGHDRS}: ${LLVM_TBLGEN_BIN} - DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} diff --git a/usr.bin/clang/llvm-strings/Makefile b/usr.bin/clang/llvm-strings/Makefile index 253766ba084d..1438aa847997 100644 --- a/usr.bin/clang/llvm-strings/Makefile +++ b/usr.bin/clang/llvm-strings/Makefile @@ -17,8 +17,6 @@ ${INCFILE}: ${TDFILE} -o ${.TARGET} ${TDFILE} TGHDRS+= ${INCFILE} -${TGHDRS}: ${LLVM_TBLGEN_BIN} - DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} diff --git a/usr.bin/clang/llvm-symbolizer/Makefile b/usr.bin/clang/llvm-symbolizer/Makefile index ae417356df6b..c4677169f912 100644 --- a/usr.bin/clang/llvm-symbolizer/Makefile +++ b/usr.bin/clang/llvm-symbolizer/Makefile @@ -20,8 +20,6 @@ ${INCFILE}: ${TDFILE} -o ${.TARGET} ${TDFILE} TGHDRS+= ${INCFILE} -${TGHDRS}: ${LLVM_TBLGEN_BIN} - DEPENDFILES+= ${TGHDRS:C/$/.d/} DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} From nobody Sun Apr 9 14:47:22 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvZhB3m8Hz44Y4F; Sun, 9 Apr 2023 14:47: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvZhB3LW0z4YYv; Sun, 9 Apr 2023 14:47:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681051642; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=P7VcgB6+HjG+9ZYMZ92MjiEgNGXN7BUjBz2tYazQG2o=; b=AE0YuYNi5CpbTMTjlJnUSbMzHGVFHmt0gjbx3Km7jcP17aQ5LnKfvnBY0RPmqloimgFmGh ZUV2X86cg1P/psnPpCXasocJEAPkC0Be/N169+n5geGHrMtRDZYPunM6ZPfJbtbaZ2CeuE uSXiU2nmuDHgSDdFgg2emTOqB9azoCHcyzT1aaaYNllUYUElpP5INRnkNRasbJ4gPJ6UL9 bdXbuEXq3C1T6XO2uAeUAfXfNfyRM7RthWStRuNBWByBnLWx1DpQx4t/VABRmxh9mMDubB arUXSeN0YC0mhw5KT/5KhTCcIar1x7UllwvjXR99TyT/OFxoyiDYjh5zS+VV1g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681051642; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=P7VcgB6+HjG+9ZYMZ92MjiEgNGXN7BUjBz2tYazQG2o=; b=sb8yoWa+0bIwqeEht27y8+AgrcXejd2bPG1JplJmkWHFQGqHc589sPH+OtghfcgT0qztx6 uCyBMXCBygFRW7rK3lfzDenMO7YbAfRIdcdLCPoOBeoRCyx4dzhok3sB3CzjwqJDbA5h16 M0HNcydBlJ4EXoBp+s2szs8kQ4Mknh+N11uC4/K14QpUfMwwDxyQj8WU1p4Dg2B269wfQM sBKuGAHRsVgaPvQMtuxEVUQlcrWGV/uzPxr3K2NUiLSUptOgOTZ/vK5NgegBPdCRNM6MVK SjYRyGBuAVMKUSWpbp1yzUk3Nsd6VuJBi0FiU0KNmpvjQJ0ybLp1ZhnCF8s+Mg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681051642; a=rsa-sha256; cv=none; b=fwJWMOxVCNOBFh8buc6Z1YYFBk1f0v7icOKc56DYI4uW8xM5IHAFPt3yTBq8i7i0Mk62Nn iPaL4Dz1raQstsA/hvPRyIYp6K+9R/KB3H1E4TP2MmjEI/nS9A7128dNUDMqyDDCn39rKA N3502CAFyXWFtNqh4NaA2s35J6JjFMTWC8xwT4ijqCpj8VheR9wbA7MM6c6Lnr52nkEmHU V3eFR2IjMUaw5+LSeMwKIFGsDUL8FPUI1I4yafxmsj48/tVBZkJq8H0W8pjiNuoAeehi8p I/PtdUYaYWL/ibvCnJuj0qpl+4N0MBvuA1ktF/Pq06z2T9xTt4lhKAXuHyiRLQ== 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 4PvZhB2PfHz1Bnk; Sun, 9 Apr 2023 14:47:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339ElMjT002544; Sun, 9 Apr 2023 14:47:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339ElMwV002543; Sun, 9 Apr 2023 14:47:22 GMT (envelope-from git) Date: Sun, 9 Apr 2023 14:47:22 GMT Message-Id: <202304091447.339ElMwV002543@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: a0b3fbe4ccb6 - stable/13 - libc/yp: sort out warnings List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: a0b3fbe4ccb6961765d2325bb2ecae6ff2111102 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=a0b3fbe4ccb6961765d2325bb2ecae6ff2111102 commit a0b3fbe4ccb6961765d2325bb2ecae6ff2111102 Author: Mateusz Guzik AuthorDate: 2023-03-16 18:56:47 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:46:34 +0000 libc/yp: sort out warnings .. in least-effort manner Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit ba5070ab441f1ad901c0412f531bd646d0bd0616) --- lib/libc/yp/xdryp.c | 2 +- lib/libc/yp/yplib.c | 6 +----- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/lib/libc/yp/xdryp.c b/lib/libc/yp/xdryp.c index aa7c7123a04b..da996276aaf8 100644 --- a/lib/libc/yp/xdryp.c +++ b/lib/libc/yp/xdryp.c @@ -37,7 +37,7 @@ __FBSDID("$FreeBSD$"); #include #include -extern int (*ypresp_allfn)(); +extern int (*ypresp_allfn)(u_long, char *, int, char *, int, void *); extern void *ypresp_data; /* diff --git a/lib/libc/yp/yplib.c b/lib/libc/yp/yplib.c index 92b57c2512db..c6a30bee1d72 100644 --- a/lib/libc/yp/yplib.c +++ b/lib/libc/yp/yplib.c @@ -92,11 +92,7 @@ struct dom_binding { #endif #define MAX_RETRIES 20 -extern bool_t xdr_domainname(), xdr_ypbind_resp(); -extern bool_t xdr_ypreq_key(), xdr_ypresp_val(); -extern bool_t xdr_ypreq_nokey(), xdr_ypresp_key_val(); -extern bool_t xdr_ypresp_all(), xdr_ypresp_all_seq(); -extern bool_t xdr_ypresp_master(); +bool_t xdr_ypresp_all_seq(XDR *xdrs, u_long *objp); int (*ypresp_allfn)(); void *ypresp_data; From nobody Sun Apr 9 16:49:23 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvdP22ysMz44gnV; Sun, 9 Apr 2023 16:49:26 +0000 (UTC) (envelope-from vishwin@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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvdP22Jp5z3JyF; Sun, 9 Apr 2023 16:49:26 +0000 (UTC) (envelope-from vishwin@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681058966; 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=NwjJxoSPXBS0rdEArxcTYQHwc6GaNx/e5yTLfcEl9UM=; b=Iagzn/gh76BmlLZl+P3cEDG96GbN0T/xGFN3fUjcAQdGNg2Ix4brB6FBbax4TRG6zpsg5N br840coPvwis9RSlk65lA7TkKGIWQaN1IA6r162XKQN+wN6VNbxV5qfns3xU0nod/03jDz wyN3mCPP0+QToUfmkzDYt1GR67ouJlmIELP0T8BFxn6iPApnEWFA+jr4cgMjYAAQflJsjT aAEOXmiJ2CLcrdcZF8NCqgTSvhCIw1VYhNV++kIsHmCdpg6tNSDwH4znwJ0i3d4o/K56Rn MomQc2vYtPbagxsA8G+zEWJ5EH73hVSEozDWHUt1NehbxMiNjgCeYZodqp8Q4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681058966; 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=NwjJxoSPXBS0rdEArxcTYQHwc6GaNx/e5yTLfcEl9UM=; b=euQb1UB4/6/PHBX9pkGO1AspdH7/ewygolIjvbMBorz3XNrUdYe/uXeraZdokfLgOlW9SZ pnPAoA4DfnUirWPV5pQljCPN2cR6V5HJfDO53oxlCBhqyRLs5AifNi1PjhHrNgG5C5ogI9 1fg1JNt0fVJmlS6oieXU44d6TmdisBESPWDIsjX76pcOsptiQ5RY9CupScDC1YucEJQT2b Brny0LZudJjABkVCGvjwDi58Uy1WlaX10BTGFbVtPFLtVv/FypeSbDSKkLpSBgxVHPwlA1 iA4yVmbptD94rTyGHc6vu1fSFnveWFruMH2YiCax2eYlB6NCuWfjzIAdoEVdoA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681058966; a=rsa-sha256; cv=none; b=f5rlRoa65tmHN5RIcQT8oeSb9LzAF9Sd8r9zdpGfHK/pkXHgdW9FI8s9mitp++VX4mQCb9 M4IfjCu5zAvQIxBtdwizqJr/2m7ONW3YZDDzYazHrLapVkuij2e6c06CN4qnUoRHB+qmdu 2UjlZXHs4Y5hGt391GoNSRdTfsepUeli0qBfAzGTGW0YApFbDhn4jOzikXR3czBRuT3gWN 4O8nGmjyXKYI4w2Mw39q+Lu6sJO6Egn5Z8Z4Bqpo7mLxQhZMqJDoluNmV16EdIa3qHgGo8 C0t69HXlNHu0g5pNeb8WO/O5Tymc6LaTBpJQGO6pDgdpqp2yqiDDlF+I47Yi0Q== Received: from [IPV6:2601:98a:602:da0:1fa8:be6c:38d1:bd] (unknown [IPv6:2601:98a:602:da0:1fa8:be6c:38d1:bd]) (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: vishwin/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4PvdP16WT7z16NH; Sun, 9 Apr 2023 16:49:25 +0000 (UTC) (envelope-from vishwin@freebsd.org) Message-ID: <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> Date: Sun, 9 Apr 2023 12:49:23 -0400 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 To: Cy Schubert , Rick Macklem Cc: Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> Content-Language: en-GB From: Charlie Li Organization: FreeBSD Project Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 In-Reply-To: <20230404052811.DA2172C1@slippy.cwsent.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------rhQBVeEGGGVY5Zq9VHsNa9eb" X-ThisMailContainsUnwantedMimeParts: N This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------rhQBVeEGGGVY5Zq9VHsNa9eb Content-Type: multipart/mixed; boundary="------------pNAtpx0K9htveoYQQhLXap4I"; protected-headers="v1" From: Charlie Li To: Cy Schubert , Rick Macklem Cc: Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Message-ID: <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> In-Reply-To: <20230404052811.DA2172C1@slippy.cwsent.com> --------------pNAtpx0K9htveoYQQhLXap4I Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 Q3kgU2NodWJlcnQgd3JvdGU6DQo+IEkndmUgbm90aWNlZCByYW5kb20gYXJ0aWZhY3RzIGlu IG15IGVtYWlscyBzaW5jZSB0aGUgbmV3IFpGUy4gSSdtIG5vdCBzdXJlDQo+IGlmIGl0J3Mg cmVsYXRlZCB0byBibG9ja19jbG9uaW5nIG9yIHNvbWV0aGluZyBlbHNlLiBUaGlzIGNvdWxk IG1lYW4gZGVlcGVyDQo+IHRyb3VibGUuDQo+IA0KSSd2ZSBhbHNvIHN0YXJ0ZWQgbm90aWNp bmcgcmFuZG9tIGFydGVmYWN0cyBhbmQgbWFsZm9ybWVkIGZpbGVzIHdoaWxzdCANCmJ1aWxk aW5nIHBhY2thZ2VzIHdpdGggcG91ZHJpZXJlLCBjYXVzaW5nIGFsbCBzb3J0cyBvZiAiZXhl YyBmb3JtYXQgDQplcnJvciJzLCBtaXNzaW5nIC5zbyBmaWxlcyBkdWUgdG8gY29ycnVwdGlv biwgZGF0YSBmaWxlIGNvcnJ1cHRpb24gDQpjYXVzaW5nIHVuaW50ZW5kZWQgZmFpbHVyZSBt b2RlcywgZXRjLiBBbGwgd2l0aG91dCBibG9ja19jbG9uaW5nOyANCmVuYWJsaW5nIHN1Y2gg Y2F1c2VzIGEgcGFuaWMgb2YgaXRzIG93biB3aGVuIHN0YXJ0aW5nIG11bHRpcGxlIGJ1aWxk ZXIgDQpqYWlscyBhdCBvbmNlLg0KDQotLSANCkNoYXJsaWUgTGkNCuKApm5vcGUsIHN0aWxs IGRvbid0IGhhdmUgYW4gZXhpdCBsaW5lLg0KDQo= --------------pNAtpx0K9htveoYQQhLXap4I-- --------------rhQBVeEGGGVY5Zq9VHsNa9eb Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsF5BAABCAAjFiEEJXd5utNNhpeHcBMx/reFK+KbPocFAmQy7JMFAwAAAAAACgkQ/reFK+KbPocf RBAAqnn8L/YOhxsVF4ZUHCS8u2ijHH22T156pwkD/Nv2K0xehrNB7Ffu7OHtg7G6w7c3bZzbmfj3 5prMEstuc8Hd5dc1ocgv8nA6iCkclJysInHxAq/aM1648MqGC8hKMEByz3SzLuNwS9yJBiQZJ/xV +zvf7S4/y5BpNAUkJ7YpOQTEJJE85XxvCoJYkaM0bA2G0j9e95hgzB/EydbX4u9rikbp1RgOkiYD 8HMhWoAgOHy8/jaBdNvRFMpEa4m4pP946l+CEE2MksNXn4yh9OmqjbMdZeuYtXBcCnbt7KM9KCxd U6XwAxNUaW+HRoBWlJbdSqUUPHUXCm7KkjEEUQYEEANar5e5E54NcwjBj8Sbi+WQxnLJ0pFQU3xL kDyvQfymI9Vd63h+z4t7LiemB+R4NP8fHau7oCfS8wuuPkE31vHEcR4KK6IbWo7e6mThQCwqugLw JvDcZWkRSVPpgTU1apx8kLLQ9Qg6wvb7XzELEAf3JEL0JQ1Ya7b1TikvwWudsRq63PdJG9GPkiMQ Uiz8A0oOJ8SR3BEQ/e1q2C6K4f+xxbsYsDpc7o+hCF645MOUdzxp1zbX+AmUJ8y4QMJTTag444w5 H63w0vfCuVLJZjV7RuV7UAqAw+DbH1F7j3HjijhJIW6qs9hGB4InfdChXPUUxbZ0Yy2eFX1zhCUn S+w= =tguw -----END PGP SIGNATURE----- --------------rhQBVeEGGGVY5Zq9VHsNa9eb-- From nobody Sun Apr 9 17:02:47 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvdhZ6hTkz44j4Q; Sun, 9 Apr 2023 17:02:54 +0000 (UTC) (envelope-from mjguzik@gmail.com) Received: from mail-oa1-x2e.google.com (mail-oa1-x2e.google.com [IPv6:2001:4860:4864:20::2e]) (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 "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvdhY40p4z3vMd; Sun, 9 Apr 2023 17:02:53 +0000 (UTC) (envelope-from mjguzik@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-oa1-x2e.google.com with SMTP id 586e51a60fabf-1842e278605so3733709fac.6; Sun, 09 Apr 2023 10:02:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1681059768; x=1683651768; h=content-transfer-encoding:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=pxu/g4C6VrLDfx1T9dE9iir2rwyNS3T3vGOs4SHjM+M=; b=hUjDHvrNoPtKwgOwpF9J/BuMWha9LS9fndh77lHKa0J5hoOAebWUAC9jeqNTrXDIJj HJ3SCKnAAwO8seG1iKpqSCjqenyzahMNtgsr48x/4PmC2BC6uIum2bYk0aVgeSP+V1QO l+ca24tI1SVjPb/Z9hXHPD7t0pZnc5IGQ86lCOFKoWvym3F5Sfi2rlpTORdEHiVQWTQv HFDsJqDSamz/55FbPy7QeMDbjhQyNsKHyUj6R0c8T9LTgcpMr417XGkfMa6OC2dHurXx s8tGSnJpeFvCb5lIG2BR+kKVOoEFeHqjrPOJYB2mFJL+gjT/VaW3dsOin+YVYJjTgDXa TUmw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1681059768; x=1683651768; h=content-transfer-encoding:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=pxu/g4C6VrLDfx1T9dE9iir2rwyNS3T3vGOs4SHjM+M=; b=Sj3NAC0TSf9uX7UsU7EvHEBgsvpPL/tb9dtcARzU95I3bxJXBi6t+dloIOkhmiW8TP QZIvkhUPGFV2sLyg2Pywy9wjo9xHaSvW8soaFxxxqJ30kRuOAFxsQd/ojg8/zQK/HSoV 1ohZR0RBDzKZGyuqW4mV48wQrFpZMHnHjQOQunyY9qic9NXAcVH40pxxx22Z3BjF0W+r 09wlHAdRigPtciVX9h7oBlgmnIrP4GPB2MvEr0SQPt7Fai9+2T9QG5C80qW+YoinlVaF JRxOizNcBIQH6uesoiSBAtOfpP+QpQrZKM0w6r4XEWsSYGr5gLseEFceyxWCkb2PR+pX A3kA== X-Gm-Message-State: AAQBX9fC7IdBSlE4n2Ai/7+pYbExORB0zAIPBFkyHHI3vhA8pR06O/s6 heLP4xe+p7o26iVnVjUpDJ+ZSFBwz+a6vPoNOksf96gv X-Google-Smtp-Source: AKy350Y8fjyTuudNPHFR+E0IfUI1MEEavj91v0zVy9+hlyxG9SzCajOa/ppnL1QpSd1JNVvXYjCf+cqKGRcNBYIj/fM= X-Received: by 2002:a05:6870:24a2:b0:177:ca1c:2cd5 with SMTP id s34-20020a05687024a200b00177ca1c2cd5mr2434440oaq.4.1681059768443; Sun, 09 Apr 2023 10:02:48 -0700 (PDT) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Received: by 2002:ac9:798d:0:b0:49c:b071:b1e3 with HTTP; Sun, 9 Apr 2023 10:02:47 -0700 (PDT) In-Reply-To: <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> From: Mateusz Guzik Date: Sun, 9 Apr 2023 19:02:47 +0200 Message-ID: Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 To: Charlie Li Cc: Cy Schubert , Rick Macklem , Martin Matuska , 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-Queue-Id: 4PvdhY40p4z3vMd X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; TAGGED_RCPT(0.00)[]; ASN(0.00)[asn:15169, ipnet:2001:4860:4864::/48, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N On 4/9/23, Charlie Li wrote: > Cy Schubert wrote: >> I've noticed random artifacts in my emails since the new ZFS. I'm not >> sure >> if it's related to block_cloning or something else. This could mean >> deeper >> trouble. >> > I've also started noticing random artefacts and malformed files whilst > building packages with poudriere, causing all sorts of "exec format > error"s, missing .so files due to corruption, data file corruption > causing unintended failure modes, etc. All without block_cloning; > enabling such causes a panic of its own when starting multiple builder > jails at once. > what's the panic? > -- > Charlie Li > =E2=80=A6nope, still don't have an exit line. > > --=20 Mateusz Guzik From nobody Sun Apr 9 17:23:05 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvf7t5vXPz440Pk; Sun, 9 Apr 2023 17:23:06 +0000 (UTC) (envelope-from vishwin@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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvf7t5D4Rz3HR0; Sun, 9 Apr 2023 17:23:06 +0000 (UTC) (envelope-from vishwin@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681060986; 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=Ukl5StKisZ0t5mqsZ/sHZfSK1gh9o5w6Q9guipmoI1E=; b=cVdLRv69l9Ip4Bh5EDOGiDoGG+udKFUHZX4vrNM6CHtBp7LZsu/+m1manEYiPMFsQX/udc yH0LNYUU+tbbzdnPTZtIrDGyoyGAaD6ZvaDzdLg0LM72usIVkXxyToNxbeln2H3IoqCB/0 VPUUapTbKJ/2/0ZSpSkCvfug1YBEWsnxgeVFJ9dnPuZnDHsFpcoxQWtudPX4TKTEMhqF91 8uVOMHycuZg80aOldiGoK9Bkv/AaAFSiLamLBS6GrA8Ct8eGOizLltNty7/48WYvinrekh 28OTPbtejnl3TSGU3iOT7XgMbqTuDuGx/RMeEsTr17depeoCgT6fo1VNrOBuXg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681060986; 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=Ukl5StKisZ0t5mqsZ/sHZfSK1gh9o5w6Q9guipmoI1E=; b=ZBy/hCXwu2IpTKNTS44c2fmwV2Ow9SuOAppmTNGsZIvPzyBtfOLF7gL9lW/g8MqUYVaKMl d1IIIsOTNHpKLeAbq+sujwP7c37z41wtEyPli+QdXDRkTbtym6wJjZunXc+zhzUuZWP6Re mX4GmdrJKlSYEE0mJw5QXMfQPvt8AjDa6mmoZfUmnBI/BGoWg1U30znMVbI/PZpj2P2j/L DE6fwmEbIRN6poireYRIVoQ7wr0LG3ZdWCCgB6y2XU4e4R5HMM2341qhoYIh35mcHtJc5p dQ2+3GWZuszLBGWTTkhfwlwLIgd6UIZ3tutctCKSqq1E39xJfCjVYBHeX0SdUQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681060986; a=rsa-sha256; cv=none; b=ScKfcA0Dal0AKqXew2G3z6t7UWgcy0cHQvOD7TYnsiKPhLGRr/HLE4xc9/Sp5DfDZ1g0zb U7xGKQ4oe19K495fBvzFaZ8EYljQPipz4j7wGU8udKrQIkQwXH2RaqVgW6IvVoCC6BO0qQ ZkmIQT5NXqn7jwGLd1tWuNtxPMgKgEMR0mLhJmMSj4tkHQg90OjCrY2GhxXsdwsCMZOmBQ d++c97ku4FxPXaIU/SaGhB3YsJdQIqXuYo681Qkj2KkCBcaq2YRmCZS1TH3eRpEVPXuvsH 4YR3qVCxXlyDvjE3vuXU8h98jV7ZZH/0kVUV4sX5z79Wl7LdP5/lVfzHV2T/aQ== Received: from [IPV6:2601:98a:602:da0:1fa8:be6c:38d1:bd] (unknown [IPv6:2601:98a:602:da0:1fa8:be6c:38d1:bd]) (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: vishwin/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4Pvf7t26zNz17k9; Sun, 9 Apr 2023 17:23:06 +0000 (UTC) (envelope-from vishwin@freebsd.org) Message-ID: Date: Sun, 9 Apr 2023 13:23:05 -0400 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Content-Language: en-GB To: Mateusz Guzik Cc: Cy Schubert , Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> From: Charlie Li Organization: FreeBSD Project Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------fgZr9sxCVpGzCTDhWsx50PDB" X-ThisMailContainsUnwantedMimeParts: N This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------fgZr9sxCVpGzCTDhWsx50PDB Content-Type: multipart/mixed; boundary="------------M8iNBa1XqwSylgIrYGfE0HTM"; protected-headers="v1" From: Charlie Li To: Mateusz Guzik Cc: Cy Schubert , Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Message-ID: Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> In-Reply-To: --------------M8iNBa1XqwSylgIrYGfE0HTM Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 TWF0ZXVzeiBHdXppayB3cm90ZToNCj4gT24gNC85LzIzLCBDaGFybGllIExpIHdyb3RlOg0K Pj4gSSd2ZSBhbHNvIHN0YXJ0ZWQgbm90aWNpbmcgcmFuZG9tIGFydGVmYWN0cyBhbmQgbWFs Zm9ybWVkIGZpbGVzIHdoaWxzdA0KPj4gYnVpbGRpbmcgcGFja2FnZXMgd2l0aCBwb3Vkcmll cmUsIGNhdXNpbmcgYWxsIHNvcnRzIG9mICJleGVjIGZvcm1hdA0KPj4gZXJyb3IicywgbWlz c2luZyAuc28gZmlsZXMgZHVlIHRvIGNvcnJ1cHRpb24sIGRhdGEgZmlsZSBjb3JydXB0aW9u DQo+PiBjYXVzaW5nIHVuaW50ZW5kZWQgZmFpbHVyZSBtb2RlcywgZXRjLiBBbGwgd2l0aG91 dCBibG9ja19jbG9uaW5nOw0KPj4gZW5hYmxpbmcgc3VjaCBjYXVzZXMgYSBwYW5pYyBvZiBp dHMgb3duIHdoZW4gc3RhcnRpbmcgbXVsdGlwbGUgYnVpbGRlcg0KPj4gamFpbHMgYXQgb25j ZS4NCj4+DQo+IA0KPiB3aGF0J3MgdGhlIHBhbmljPw0KPiANCm1hbnVhbGx5IHR5cGVkIG91 dDoNCg0KcGFuaWM6IFZFUklGWSghemlsX3JlcGxheWluZyh6aWxvZywgdHgpKSBmYWlsZWQN Cg0KY3B1aWQgPSA3DQp0aW1lID0gMTY4MTA2MDQ3Mg0KS0RCOiBzdGFjayBiYWNrdHJhY2U6 DQpkYl90cmFjZV9zZWxmX3dyYXBwZXIoKSBhdCBkYl90cmFjZV9zZWxmX3dyYXBwZXIrMHgy Yi9mcmFtZSANCjB4ZmZmZmZlMDJhMDViMjhhMA0KdnBhbmljKCkgYXQgdnBhbmljKzB4MTUy L2ZyYW1lIDB4ZmZmZmZlMDJhMDViMjhmMA0Kc3BsX3BhbmljKCkgYXQgc3BsX3BhbmljKzB4 M2EvZnJhbWUgMHhmZmZmZmUwMmEwNWIyOTUwDQp6ZnNfbG9nX2Nsb25lX3JhbmdlKCkgYXQg emZzX2xvZ19jbG9uZV9yYW5nZSsweDFkYi9mcmFtZSAweGZmZmZmZTAyYTA1YjI5ZTANCnpm c19jbG9uZV9yYW5nZSgpIGF0IHpmc19jbG9uZV9yYW5nZSsweGFlMi9mcmFtZSAweGZmZmZm ZTAyYTA1YjJiYzANCnpmc19mcmVlYnNkX2NvcHlfZmlsZV9yYW5nZSgpIGF0IHpmc19mcmVl YnNkX2NvcHlfZmlsZV9yYW5nZSsweGZmL2ZyYW1lIA0KMHhmZmZmZmUwMmEwNWIyYzQwDQp2 bl9jb3B5X2ZpbGVfcmFuZ2UoKSBhdCB2bl9jb3B5X2ZpbGVfcmFuZ2UrMHgxMTUvZnJhbWUg MHhmZmZmZmUwMmEwNWIyY2UwDQprZXJuX2NvcHlfZmlsZV9yYW5nZSgpIGF0IGtlcm5fY29w eV9maWxlX3JhbmdlKzB4MzRlL2ZyYW1lIA0KMHhmZmZmZmUwMmEwNWIyZGIwDQpzeXNfY29w eV9maWxlX3JhbmdlKCkgYXQgc3lzX2NvcHlfZmlsZV9yYW5nZSsweDc4L2ZyYW1lIDB4ZmZm ZmZlMDJhMDViMmUwMA0KYW1kNjRfc3lzY2FsbCgpIGF0IGFtZDY0X3N5c2NhbGwrMHgxNDgv ZnJhbWUgMHhmZmZmZmUwMmEwNWIyZjMwDQpmYXN0X3N5c2NhbGxfY29tbW9uKCkgYXQgZmFz dF9zeXNjYWxsX2NvbW1vbisweGY4L2ZyYW1lIDB4ZmZmZmZlMDJhMDViMmYzMA0KLS0tIHN5 c2NhbGwgKDU2OSwgRnJlZUJTRCBFTEY2NCwgY29weV9maWxlX3JhbmdlKSwgcmlwID0gMHg5 MDhkMmEsIHJzcCA9IA0KMHg4MjBjMjhlNjgsIHJicCA9IDB4ODIwYzI5MmIwIC0tLQ0KS0RC OiBlbnRlcjogcGFuaWMNClsgdGhyZWFkIHBpZCAxODU2IHRpZCAxMDIxMjkgXQ0KU3RvcHBl ZCBhdCAgICAgIGtkYl9lbnRlcisweDMyOiBtb3ZxICAgICQwLDB4MTI3NjBmMyglcmlwKQ0K ZGI+DQoNCi0tIA0KQ2hhcmxpZSBMaQ0K4oCmbm9wZSwgc3RpbGwgZG9uJ3QgaGF2ZSBhbiBl eGl0IGxpbmUuDQoNCg== --------------M8iNBa1XqwSylgIrYGfE0HTM-- --------------fgZr9sxCVpGzCTDhWsx50PDB Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsF5BAABCAAjFiEEJXd5utNNhpeHcBMx/reFK+KbPocFAmQy9HkFAwAAAAAACgkQ/reFK+KbPoc2 BQ//QoIitNvlL1H4mney6jOVQ1kterrGgxLdpIS8mDvFSSosbLhTyKQbUf+DQ/yXJcqRJTB3L0a6 VdMHnq9k5utRfR+9vv19jEQtKuBPzZpWJCWrFfoKVmGodJy2Cimc5q4FX4xKmWeRHtkJ7i3B3uUz dVVAiUxTg/WnAU5bpqJK0nAJy1ZCQEFJD5YwNhm0b2ImmThJATvmVJFEBEqfYqgBBoTrC3oR7WtA wXyFSv2OWa0cwRRsPe2+ITo9/5De8u5MYwbMmsFuakzWHBbn6V/kraFTCW+HzutN/gfCWGYvUVrf g7ouTgTDjuvmzanI5SuMj7X3hDanR+IsGEhlxLbStNupH41eEf4XKAiU+S0Jc/BzQB5V0KqHeLxx b/VtZORMTTyCJ9HyuliHKjJft5w1/IYA8JJEqXfwNGXdR4CYT7HS+rQLA38NNwzGYQ1cV/BJOhuj NbhwqVfE7eeavC3ogPhrKvFczqruEMfB2TtgPuaAUEK6bNctllk0igT9Ng+ul9IdlnmFTp+l5ZCj A5rrgWU6wSOU4Pevg89I15lTa3CBONSY2IMaRytOaiZDvi26PS/kc1fD+UJrcMIwk4iKm6ZJ64GG dI5dpKq38Qh2sHYBJbxB1f0bI37hBrlFLUuzeiU4ciLOTDUq9YCESqs5VkO3+D6AlclzTSD3V9nF CdM= =VvTi -----END PGP SIGNATURE----- --------------fgZr9sxCVpGzCTDhWsx50PDB-- From nobody Sun Apr 9 18:26:23 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvgYz2qVRz444JH; Sun, 9 Apr 2023 18:27:19 +0000 (UTC) (envelope-from freebsd@walstatt-de.de) Received: from smtp052.goneo.de (smtp052.goneo.de [85.220.129.60]) (using TLSv1.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 4PvgYz0Jkvz4Qlb; Sun, 9 Apr 2023 18:27:18 +0000 (UTC) (envelope-from freebsd@walstatt-de.de) Authentication-Results: mx1.freebsd.org; none Received: from hub2.goneo.de (hub2.goneo.de [IPv6:2001:1640:5::8:53]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp5.goneo.de (Postfix) with ESMTPS id 547DD101A7B2; Sun, 9 Apr 2023 20:27:11 +0200 (CEST) Received: from hub2.goneo.de (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by hub2.goneo.de (Postfix) with ESMTPS id 47D6410A1EBE; Sun, 9 Apr 2023 20:27:07 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=walstatt-de.de; s=DKIM001; t=1681064827; 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=RqbYmqdRU5lNeD/AphaztRfHhoXnW3+dooD2BLGWY+Y=; b=WjWDpzFx2Un+YomKvC8oSR/VQCR9iLRKJ6ZqHnNg4IHhy40ML+ILA4yV5p/51DIyvfTMCO dPfrufrjyWcIBqVJLVGdMGbZcxfPQoaAHGO6U0zHQgz2Uo2Gyt0rL4169apyM4nmUwf17B ayTIuUmbhkRc7irbLvNew7N6DTsttp38hLvRX1VaXacWnrpBaAhxw9LwN1Y7SBV+S+hLXI kbgCefBJn8P3tQYKRNkPS8hevXgU4roqlXcBd0c9isynoQ04sVwUcMi5pWfCOKZA43qcrG H8WD1ub8xiQOBavhKqgWv8oXJOKEF8drYw+VkVdp/Vqy2Oph/AaO8Eq1fxHkMA== Received: from thor.intern.walstatt.dynvpn.de (dynamic-078-054-235-039.78.54.pool.telefonica.de [78.54.235.39]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by hub2.goneo.de (Postfix) with ESMTPSA id AD28210A1EBB; Sun, 9 Apr 2023 20:27:06 +0200 (CEST) Date: Sun, 9 Apr 2023 20:26:23 +0200 From: FreeBSD User To: Charlie Li Cc: Mateusz Guzik , Cy Schubert , Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 Message-ID: <20230409202650.49130b92@thor.intern.walstatt.dynvpn.de> In-Reply-To: References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> Organization: walstatt-de.de List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/NSO=6J2gRQWjQg+=NaQ_H9c"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Rspamd-UID: 3c9105 X-Rspamd-UID: 5c778e X-Rspamd-Queue-Id: 4PvgYz0Jkvz4Qlb X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; TAGGED_RCPT(0.00)[]; ASN(0.00)[asn:25394, ipnet:85.220.128.0/17, country:DE] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N --Sig_/NSO=6J2gRQWjQg+=NaQ_H9c Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Am Sun, 9 Apr 2023 13:23:05 -0400 Charlie Li schrieb: > Mateusz Guzik wrote: > > On 4/9/23, Charlie Li wrote: =20 > >> I've also started noticing random artefacts and malformed files whilst > >> building packages with poudriere, causing all sorts of "exec format > >> error"s, missing .so files due to corruption, data file corruption > >> causing unintended failure modes, etc. All without block_cloning; > >> enabling such causes a panic of its own when starting multiple builder > >> jails at once. > >> =20 > >=20 > > what's the panic? > > =20 > manually typed out: >=20 > panic: VERIFY(!zil_replaying(zilog, tx)) failed >=20 > cpuid =3D 7 > time =3D 1681060472 > KDB: stack backtrace: > db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame=20 > 0xfffffe02a05b28a0 > vpanic() at vpanic+0x152/frame 0xfffffe02a05b28f0 > spl_panic() at spl_panic+0x3a/frame 0xfffffe02a05b2950 > zfs_log_clone_range() at zfs_log_clone_range+0x1db/frame 0xfffffe02a05b29= e0 > zfs_clone_range() at zfs_clone_range+0xae2/frame 0xfffffe02a05b2bc0 > zfs_freebsd_copy_file_range() at zfs_freebsd_copy_file_range+0xff/frame=20 > 0xfffffe02a05b2c40 > vn_copy_file_range() at vn_copy_file_range+0x115/frame 0xfffffe02a05b2ce0 > kern_copy_file_range() at kern_copy_file_range+0x34e/frame=20 > 0xfffffe02a05b2db0 > sys_copy_file_range() at sys_copy_file_range+0x78/frame 0xfffffe02a05b2e00 > amd64_syscall() at amd64_syscall+0x148/frame 0xfffffe02a05b2f30 > fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe02a05b2f30 > --- syscall (569, FreeBSD ELF64, copy_file_range), rip =3D 0x908d2a, rsp = =3D=20 > 0x820c28e68, rbp =3D 0x820c292b0 --- > KDB: enter: panic > [ thread pid 1856 tid 102129 ] > Stopped at kdb_enter+0x32: movq $0,0x12760f3(%rip) > db> =20 >=20 I have the same issue (crash on access of several, but random datasets). It started with /usr/ports build failures when performing updates or rebuil= ding ports, poudriere host doesn't work anymore, as soon as started building ports, the= hosts (several of them, same OS revision, new ZFS option enabled) crash. Also when building binaries for an pkg OS distribution. That host also reports a ZFS RAIDZ pool as corrupted, out of the blue! Some= files from a poudriere build and /usr/ports build seem to have issues with some temporar= ily created files in work directory.=20 On another host /usr/ports is residing on ZFS and it crashes also when buil= ding/updating ports (/usr/ports residing on ZFS) - but on the same host /home is also residing = on ZFS, but even downloading large amounts of emails, the host seem to be stable. Have not f= ound out yet what kind of file access triggers the crash. Kind regards, oh --=20 O. Hartmann --Sig_/NSO=6J2gRQWjQg+=NaQ_H9c Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iHUEARYKAB0WIQRQheDybVktG5eW/1Kxzvs8OqokrwUCZDMDagAKCRCxzvs8Oqok r3AyAP9FON4zWPqVHNHc2cuI68fgm+kB7uJrJ3Q2pXgcBO+SrAEAkNpVEIlf0utS focxU1C3yUUUGwSsoITprL9yVOf5iwY= =7grH -----END PGP SIGNATURE----- --Sig_/NSO=6J2gRQWjQg+=NaQ_H9c-- From nobody Sun Apr 9 21:34:34 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvlk25HkWz44JRC; Sun, 9 Apr 2023 21:34:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvlk23vwJz4Kd4; Sun, 9 Apr 2023 21:34:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076074; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SWuT3pM91kpNJrcyLMUMyClic6mqMQKD6O6jof1P5RU=; b=TXbG8sb1RkxfGCm3Pd8lDqzJr0qW6K1zPZylEokb9p7B52u/YyWJlpfbhYEw300PbIw/mS S1eDUguInkbm4JIOvfv1O3En855YDWlH9rTJ5l2XvB8mj7XW+C8HeQ9KLj2t2WYbyLV6tV E3kmsgiiHddCfT0RAQ5DIN8aFk0I5qhkk4VvWMzMi71r66RPPEW+xEStV2vBja2/FRyc0E XUH3IIR4+7e62VSXRNR18q/FLAPMf8rt75s34/FwQKy8GYBSHNGvUVKWTL2precdaCBAtb MsM6UEPAtuwc8j7XOvZz19Dfq67YgEZTnjzwerThBT7RNwC9MVUJh171t8wu6g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076074; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SWuT3pM91kpNJrcyLMUMyClic6mqMQKD6O6jof1P5RU=; b=yrqPR6P1KOW4+2UNnFEjUlup5x7vX0qD9DEmHEHsaI2xUAGKSJGxlJA+dMRRJFh7iN/PNu sqJVpwtV1qPPsRKJpRvaoALC/+j8sI2WRZl5ds0diVi10iEfqn9B18KNXf+2Q14cWkTaX3 Y3RIxxWqohk0q5Gt8I3voo/v7tB5NOjQGqwwGZD6fXtziH4PmxSwQzvoul69OjtjpKhJt5 wBwnoDLv6g/DEbTNl6TcC8n2mQ/YfyZUdBhBuqc3LROqtwUIpxF+16S86bKy9+R6+kDjtM QV0etwF8u4EE/kBSnozYmVBPb93t9ueCdnHGbZK2uJAEqalRO039PiQN+FdRtA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076074; a=rsa-sha256; cv=none; b=Hk2HBjZn3o49/bRZmUwCLFP7LF2Bj4UkMeeAR5XA3B4jFucQiQgFntK/ha/VuWkfZB2PEN 9Ai/fw4TpUiGhDeQj8UhchCQ4LqqSus0kGlaF/nFpCFmz+YmYTcSMnxR2qeSVi1eWz7Qpk L4zRiMRyU+YyswZpa1BhfKoplaVx7YViEDsl8Us6AdIIUtd+mb3XBcGQhjCc/qG/DzuzpY gbiChfZYtL/1Nn84dP3RIKIzcbb010ocuu9nDI2OMJVK+zP6HzdZxP7ptAGOapa164rV/n UcE+Y2nq7urw0R3av6G4pA5voJsHeLypYXVrHNBP2C+Q/in6RHH71dL22vrg9Q== 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 4Pvlk22Df5zPhC; Sun, 9 Apr 2023 21:34:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LYYko081081; Sun, 9 Apr 2023 21:34:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LYYY5081080; Sun, 9 Apr 2023 21:34:34 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:34:34 GMT Message-Id: <202304092134.339LYYY5081080@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: 7b6fe2428a97 - main - DEBUG_VFS_LOCKS: use witness if available List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7b6fe2428a97921e8df882d0a24b87094c37b468 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=7b6fe2428a97921e8df882d0a24b87094c37b468 commit 7b6fe2428a97921e8df882d0a24b87094c37b468 Author: Konstantin Belousov AuthorDate: 2023-04-08 06:15:00 +0000 Commit: Konstantin Belousov CommitDate: 2023-04-09 21:34:12 +0000 DEBUG_VFS_LOCKS: use witness if available The assert_vop_locked messages are ignored, and file/line information is not too useful. Fixing this without changing both witness and VFS asserts KPIs is not possible. Reviewed by: markj (previous version) Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D39464 --- sys/kern/vfs_lookup.c | 1 + sys/kern/vfs_subr.c | 16 +++++++++++++--- sys/sys/vnode.h | 1 + 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/sys/kern/vfs_lookup.c b/sys/kern/vfs_lookup.c index e7f1deea0fae..172aa4b4f576 100644 --- a/sys/kern/vfs_lookup.c +++ b/sys/kern/vfs_lookup.c @@ -162,6 +162,7 @@ nameiinit(void *dummy __unused) vfs_vector_op_register(&crossmp_vnodeops); getnewvnode("crossmp", NULL, &crossmp_vnodeops, &vp_crossmp); vp_crossmp->v_state = VSTATE_CONSTRUCTED; + vp_crossmp->v_irflag |= VIRF_CROSSMP; } SYSINIT(vfs, SI_SUB_VFS, SI_ORDER_SECOND, nameiinit, NULL); diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index c2b1f71502cd..7e7315f827a1 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -5452,14 +5452,18 @@ assert_vi_unlocked(struct vnode *vp, const char *str) void assert_vop_locked(struct vnode *vp, const char *str) { - int locked; - if (KERNEL_PANICKED() || vp == NULL) return; - locked = VOP_ISLOCKED(vp); +#ifdef WITNESS + if ((vp->v_irflag & VIRF_CROSSMP) == 0) + witness_assert(&vp->v_vnlock->lock_object, LA_LOCKED, + __FILE__, __LINE__); +#else + int locked = VOP_ISLOCKED(vp); if (locked == 0 || locked == LK_EXCLOTHER) vfs_badlock("is not locked but should be", str, vp); +#endif } void @@ -5468,8 +5472,14 @@ assert_vop_unlocked(struct vnode *vp, const char *str) if (KERNEL_PANICKED() || vp == NULL) return; +#ifdef WITNESS + if ((vp->v_irflag & VIRF_CROSSMP) == 0) + witness_assert(&vp->v_vnlock->lock_object, LA_UNLOCKED, + __FILE__, __LINE__); +#else if (VOP_ISLOCKED(vp) == LK_EXCLUSIVE) vfs_badlock("is locked but should not be", str, vp); +#endif } void diff --git a/sys/sys/vnode.h b/sys/sys/vnode.h index 5e3f81de0236..fa889826867e 100644 --- a/sys/sys/vnode.h +++ b/sys/sys/vnode.h @@ -228,6 +228,7 @@ _Static_assert(sizeof(struct vnode) <= 448, "vnode size crosses 448 bytes"); never cleared once set */ #define VIRF_MOUNTPOINT 0x0004 /* This vnode is mounted on */ #define VIRF_TEXT_REF 0x0008 /* Executable mappings ref the vnode */ +#define VIRF_CROSSMP 0x0010 /* Cross-mp vnode, no locking */ #define VI_UNUSED0 0x0001 /* unused */ #define VI_MOUNT 0x0002 /* Mount in progress */ From nobody Sun Apr 9 21:34:58 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvlkj5Q8bz44JZK; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvlkj4f3lz4LfT; Sun, 9 Apr 2023 21:35:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076109; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=G6Nv1Ng4yOi6l06WUahN1cxp9BGt/oISES5unZCsmfE=; b=Q9w20GnczOPQ6J9+aPsnJeKOTcvz9+Qcw3DOQ2beUgBFHAgr4OC9oDLXJDJrCA/B+/Voq5 BGDGzbUYv7Fz0NhYnALx1LaCCrsJdkIaqeQdmqFYZ1N1ABP9Umar7+AnJNAQhlLdlVMc34 2G0vccNvzz/4bEc1IFWb+nd7W2GWA2JpxbdT2Ezf8nWFJiuKVqtgMbNyWGZrbvCsZeagy0 cK6NTqOGXanpgcdEb+BsDYBX40ZZ5dn6C4G3JkRL5LZN7NcCQWsYyHtNsxd6G9yFyY1O3D w/Na8EDnuXWeZ2lT0nNFvtW75ocv92se21bX9jRQo9uJJ9aX+GxuugAsHqgGKw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076109; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=G6Nv1Ng4yOi6l06WUahN1cxp9BGt/oISES5unZCsmfE=; b=bLsyCr5LtfDabyHF31/HwrpB3Q6WBXIVIcGUdFE6MoVjx/XeCWVMkY+lrkujaYlQ69oOAr SGxruaRRA1tsFIjQxnheX4mgus2kJ2KD1DWzPbQll3gDlS//55Wp0lcNEcZh69FxltNpxx tlg0lvcZSKmzCo4oxLJdVuv4Ods9sB5IPZHl2HV0aMKg5Az22DHAm+X2FbZKlTbzfw7/5A rmk8WaB0XR8IRe7V4JFy/2if6JeJWGNJhvo8WP52m7i/DhBiCZH/a0lF0uzu0VCBkeuYg5 TB4RSHyDRKYhtiRB11LJUz8CNPcH6onFW6gAtsFsFYA4eOE3LOXI0t3Zg20cfg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076109; a=rsa-sha256; cv=none; b=AlFIOOjBTEnvddZfiTKGu82wuC/Xq1DwWsrY1r8ml6mCCaQ99yYhZpymIJ8mW3p/Kqqw9j YIh8t0a8S6kcOBYRYckN5IpKHKNMzOlNlxzKiPUkF8QMzFlcPTngop8QBIEwnFvNrsC/9u 0gDsoJrkrj8yP4o6vBZDKXCzyrn3xJpGYTwPh5gaieB2qZgxq7gBcps7NMJAXqBT2NJY1u NsJI5b2gsUWD7DBcUqxtV8ZLjtdDPWv7bgNPt89spQs+R2BIku3GpT6IXsJmgVeeb2Excp gfu88liBkwmqJMTDfYk1pJFnIO5EWq9zwMwlJaYaq5Mx+R3bGAk2pCqFfk+vDA== 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 4Pvlkj3ZDTzPf6; Sun, 9 Apr 2023 21:35:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZ968081475; Sun, 9 Apr 2023 21:35:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LYwuv081438; Sun, 9 Apr 2023 21:34:58 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:34:58 GMT Message-Id: <202304092134.339LYwuv081438@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 255d6c9fe5a7 - stable/13 - Merge llvm-project main llvmorg-15-init-15358-g53dc0f10787 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 255d6c9fe5a7577c6caf78004034f2555bd0cba0 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=255d6c9fe5a7577c6caf78004034f2555bd0cba0 commit 255d6c9fe5a7577c6caf78004034f2555bd0cba0 Author: Dimitry Andric AuthorDate: 2022-07-04 19:20:19 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:54:45 +0000 Merge llvm-project main llvmorg-15-init-15358-g53dc0f10787 This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-15-init-15358-g53dc0f10787. PR: 265425 MFC after: 2 weeks (cherry picked from commit 81ad626541db97eb356e2c1d4a20eb2a26a766ab) --- Makefile.inc1 | 3 +- ObsoleteFiles.inc | 318 + contrib/llvm-project/FREEBSD-Xlist | 48 +- contrib/llvm-project/clang/include/clang-c/Index.h | 68 +- .../clang/include/clang/APINotes/Types.h | 34 +- .../clang/include/clang/AST/ASTContext.h | 47 +- .../llvm-project/clang/include/clang/AST/ASTFwd.h | 1 + .../clang/include/clang/AST/ASTImportError.h | 51 + .../clang/include/clang/AST/ASTImporter.h | 36 +- .../include/clang/AST/ASTImporterSharedState.h | 18 +- .../clang/include/clang/AST/ASTLambda.h | 5 +- .../clang/include/clang/AST/ASTNodeTraverser.h | 7 + .../clang/include/clang/AST/ASTTypeTraits.h | 8 +- .../clang/include/clang/AST/AbstractBasicReader.h | 2 +- .../clang/include/clang/AST/AbstractTypeReader.h | 3 +- .../clang/include/clang/AST/CharUnits.h | 6 + .../llvm-project/clang/include/clang/AST/Comment.h | 21 +- .../clang/include/clang/AST/CommentCommands.td | 62 +- .../clang/include/clang/AST/CommentParser.h | 5 +- .../clang/include/clang/AST/CommentSema.h | 8 +- .../llvm-project/clang/include/clang/AST/Decl.h | 64 +- .../clang/include/clang/AST/DeclBase.h | 48 +- .../llvm-project/clang/include/clang/AST/DeclCXX.h | 89 +- .../clang/include/clang/AST/DeclObjC.h | 12 +- .../clang/include/clang/AST/DeclTemplate.h | 42 +- .../clang/include/clang/AST/DeclarationName.h | 29 +- .../llvm-project/clang/include/clang/AST/Expr.h | 27 +- .../llvm-project/clang/include/clang/AST/ExprCXX.h | 83 +- .../clang/include/clang/AST/ExprConcepts.h | 2 + .../clang/include/clang/AST/JSONNodeDumper.h | 2 + .../llvm-project/clang/include/clang/AST/Mangle.h | 35 +- .../clang/include/clang/AST/NestedNameSpecifier.h | 2 +- .../clang/include/clang/AST/OpenMPClause.h | 163 +- .../clang/include/clang/AST/ParentMapContext.h | 18 +- .../clang/include/clang/AST/PrettyPrinter.h | 11 +- .../clang/include/clang/AST/PropertiesBase.td | 17 +- .../clang/include/clang/AST/Randstruct.h | 35 + .../clang/include/clang/AST/RawCommentList.h | 15 + .../clang/include/clang/AST/RecursiveASTVisitor.h | 242 +- .../llvm-project/clang/include/clang/AST/Stmt.h | 59 +- .../llvm-project/clang/include/clang/AST/StmtCXX.h | 14 +- .../clang/include/clang/AST/StmtOpenMP.h | 744 +- .../clang/include/clang/AST/TemplateBase.h | 7 + .../clang/include/clang/AST/TemplateName.h | 50 +- .../clang/include/clang/AST/TextNodeDumper.h | 3 + .../llvm-project/clang/include/clang/AST/Type.h | 141 +- .../llvm-project/clang/include/clang/AST/TypeLoc.h | 41 + .../clang/include/clang/AST/TypeProperties.td | 15 +- .../clang/include/clang/ASTMatchers/ASTMatchers.h | 101 +- .../clang/ASTMatchers/ASTMatchersInternal.h | 37 +- .../clang/ASTMatchers/Dynamic/VariantValue.h | 2 +- .../clang/Analysis/Analyses/CalledOnceCheck.h | 2 +- .../clang/Analysis/Analyses/ExprMutationAnalyzer.h | 2 + .../include/clang/Analysis/Analyses/ThreadSafety.h | 9 +- .../clang/Analysis/Analyses/ThreadSafetyCommon.h | 47 +- .../include/clang/Analysis/AnalysisDeclContext.h | 6 +- .../clang/include/clang/Analysis/CloneDetection.h | 8 +- .../include/clang/Analysis/ConstructionContext.h | 3 +- .../Analysis/FlowSensitive/DataflowAnalysis.h | 43 +- .../FlowSensitive/DataflowAnalysisContext.h | 224 +- .../Analysis/FlowSensitive/DataflowEnvironment.h | 126 +- .../clang/Analysis/FlowSensitive/MatchSwitch.h | 151 + .../FlowSensitive/Models/ChromiumCheckModel.h | 39 + .../Models/UncheckedOptionalAccessModel.h | 85 + .../clang/Analysis/FlowSensitive/NoopLattice.h | 41 + .../include/clang/Analysis/FlowSensitive/Solver.h | 56 + .../clang/Analysis/FlowSensitive/StorageLocation.h | 10 +- .../clang/Analysis/FlowSensitive/Transfer.h | 15 +- .../FlowSensitive/TypeErasedDataflowAnalysis.h | 16 +- .../include/clang/Analysis/FlowSensitive/Value.h | 175 +- .../Analysis/FlowSensitive/WatchedLiteralsSolver.h | 37 + .../clang/include/clang/Analysis/PathDiagnostic.h | 8 +- .../llvm-project/clang/include/clang/Basic/Attr.td | 234 +- .../clang/include/clang/Basic/AttrDocs.td | 341 +- .../include/clang/Basic/AttrSubjectMatchRules.h | 3 + .../include/clang/Basic/AttributeCommonInfo.h | 23 +- .../clang/include/clang/Basic/Attributes.h | 22 +- .../clang/include/clang/Basic/Builtins.def | 32 +- .../clang/include/clang/Basic/Builtins.h | 40 +- .../clang/include/clang/Basic/BuiltinsAArch64.def | 12 + .../clang/include/clang/Basic/BuiltinsAMDGPU.def | 48 + .../clang/include/clang/Basic/BuiltinsARM.def | 3 + .../clang/include/clang/Basic/BuiltinsNVPTX.def | 127 +- .../clang/include/clang/Basic/BuiltinsPPC.def | 38 +- .../clang/include/clang/Basic/BuiltinsRISCV.def | 61 +- .../clang/include/clang/Basic/BuiltinsVE.def | 32 + .../clang/include/clang/Basic/BuiltinsVEVL.gen.def | 1257 ++ .../include/clang/Basic/BuiltinsWebAssembly.def | 13 +- .../clang/include/clang/Basic/BuiltinsX86.def | 32 +- .../clang/include/clang/Basic/BuiltinsX86_64.def | 1 - .../clang/include/clang/Basic/CharInfo.h | 43 +- .../clang/include/clang/Basic/CodeGenOptions.def | 17 +- .../clang/include/clang/Basic/CodeGenOptions.h | 9 +- .../llvm-project/clang/include/clang/Basic/Cuda.h | 9 + .../clang/include/clang/Basic/DarwinSDKInfo.h | 3 +- .../clang/include/clang/Basic/DeclNodes.td | 1 + .../clang/include/clang/Basic/Diagnostic.h | 29 +- .../include/clang/Basic/DiagnosticASTKinds.td | 6 +- .../include/clang/Basic/DiagnosticCategories.h | 3 +- .../include/clang/Basic/DiagnosticCommentKinds.td | 4 +- .../include/clang/Basic/DiagnosticCommonKinds.td | 12 +- .../include/clang/Basic/DiagnosticCrossTUKinds.td | 4 +- .../include/clang/Basic/DiagnosticDriverKinds.td | 95 +- .../include/clang/Basic/DiagnosticFrontendKinds.td | 9 + .../clang/include/clang/Basic/DiagnosticGroups.td | 45 +- .../clang/include/clang/Basic/DiagnosticIDs.h | 13 +- .../include/clang/Basic/DiagnosticLexKinds.td | 52 +- .../include/clang/Basic/DiagnosticParseKinds.td | 42 +- .../include/clang/Basic/DiagnosticSemaKinds.td | 296 +- .../clang/Basic/DiagnosticSerializationKinds.td | 100 +- .../clang/include/clang/Basic/DirectoryEntry.h | 31 +- .../clang/include/clang/Basic/FPOptions.def | 8 +- .../clang/include/clang/Basic/Features.def | 12 +- .../clang/include/clang/Basic/FileEntry.h | 18 +- .../clang/include/clang/Basic/FileManager.h | 12 +- .../clang/include/clang/Basic/Lambda.h | 2 +- .../clang/include/clang/Basic/LangOptions.def | 36 +- .../clang/include/clang/Basic/LangOptions.h | 211 +- .../clang/include/clang/Basic/LangStandard.h | 15 +- .../clang/include/clang/Basic/LangStandards.def | 37 +- .../clang/include/clang/Basic/Module.h | 68 +- .../clang/include/clang/Basic/OpenCLOptions.h | 9 - .../clang/include/clang/Basic/OpenMPKinds.def | 3 + .../clang/include/clang/Basic/Sanitizers.def | 5 +- .../clang/include/clang/Basic/SourceLocation.h | 6 +- .../clang/include/clang/Basic/SourceManager.h | 52 +- .../clang/include/clang/Basic/Specifiers.h | 4 +- .../clang/include/clang/Basic/StmtNodes.td | 9 + .../clang/include/clang/Basic/TargetBuiltins.h | 7 +- .../clang/include/clang/Basic/TargetInfo.h | 75 +- .../clang/include/clang/Basic/TargetOptions.h | 24 +- .../clang/include/clang/Basic/TokenKinds.def | 48 +- .../clang/include/clang/Basic/TokenKinds.h | 3 + .../clang/include/clang/Basic/TypeNodes.td | 1 + .../clang/include/clang/Basic/arm_sve.td | 32 +- .../clang/include/clang/Basic/riscv_vector.td | 538 +- .../clang/include/clang/CodeGen/CGFunctionInfo.h | 14 + .../include/clang/CrossTU/CrossTranslationUnit.h | 18 +- .../clang/include/clang/Driver/Action.h | 42 +- .../clang/include/clang/Driver/Compilation.h | 21 +- .../clang/include/clang/Driver/Distro.h | 6 +- .../clang/include/clang/Driver/Driver.h | 97 +- .../clang/include/clang/Driver/Options.h | 3 +- .../clang/include/clang/Driver/Options.td | 652 +- .../clang/include/clang/Driver/SanitizerArgs.h | 19 + .../clang/include/clang/Driver/ToolChain.h | 31 +- .../clang/include/clang/Driver/Types.def | 12 +- .../clang/include/clang/Driver/Types.h | 6 +- .../clang/include/clang/ExtractAPI/API.h | 728 + .../include/clang/ExtractAPI/AvailabilityInfo.h | 78 + .../clang/ExtractAPI/DeclarationFragments.h | 287 + .../include/clang/ExtractAPI/FrontendActions.h | 69 + .../ExtractAPI/Serialization/SerializerBase.h | 63 + .../Serialization/SymbolGraphSerializer.h | 178 + .../clang/include/clang/Format/Format.h | 686 +- .../clang/include/clang/Frontend/ASTUnit.h | 4 +- .../include/clang/Frontend/CompilerInvocation.h | 13 - .../clang/include/clang/Frontend/FrontendActions.h | 15 +- .../clang/include/clang/Frontend/FrontendOptions.h | 49 +- .../include/clang/Frontend/MultiplexConsumer.h | 2 + .../include/clang/Frontend/PrecompiledPreamble.h | 79 +- .../clang/Frontend/PreprocessorOutputOptions.h | 2 + .../clang/include/clang/Frontend/Utils.h | 60 +- .../clang/include/clang/Index/IndexSymbol.h | 2 + .../clang/include/clang/Index/IndexingOptions.h | 4 +- .../clang/include/clang/Interpreter/Interpreter.h | 3 + .../clang/Lex/DependencyDirectivesScanner.h | 136 + .../Lex/DependencyDirectivesSourceMinimizer.h | 115 - .../clang/include/clang/Lex/DirectoryLookup.h | 4 + .../clang/include/clang/Lex/HeaderSearch.h | 173 +- .../clang/include/clang/Lex/HeaderSearchOptions.h | 12 +- .../llvm-project/clang/include/clang/Lex/Lexer.h | 61 +- .../clang/include/clang/Lex/LiteralSupport.h | 16 +- .../clang/include/clang/Lex/MacroInfo.h | 48 +- .../clang/include/clang/Lex/ModuleMap.h | 19 +- .../clang/include/clang/Lex/PPCallbacks.h | 62 +- .../clang/include/clang/Lex/PreprocessingRecord.h | 13 +- .../clang/include/clang/Lex/Preprocessor.h | 172 +- ...cessorExcludedConditionalDirectiveSkipMapping.h | 30 - .../clang/include/clang/Lex/PreprocessorLexer.h | 21 +- .../clang/include/clang/Lex/PreprocessorOptions.h | 23 +- .../llvm-project/clang/include/clang/Lex/Token.h | 5 +- .../clang/include/clang/Parse/Parser.h | 327 +- .../include/clang/Parse/RAIIObjectsForParser.h | 15 +- .../include/clang/Sema/CodeCompleteConsumer.h | 5 +- .../clang/include/clang/Sema/DeclSpec.h | 73 +- .../llvm-project/clang/include/clang/Sema/Lookup.h | 46 +- .../clang/include/clang/Sema/ParsedAttr.h | 106 +- .../clang/include/clang/Sema/ParsedTemplate.h | 6 +- .../llvm-project/clang/include/clang/Sema/Scope.h | 28 +- .../clang/include/clang/Sema/ScopeInfo.h | 7 +- .../llvm-project/clang/include/clang/Sema/Sema.h | 595 +- .../clang/include/clang/Sema/Template.h | 2 +- .../llvm-project/clang/include/clang/Sema/Weak.h | 39 +- .../include/clang/Serialization/ASTBitCodes.h | 20 +- .../clang/include/clang/Serialization/ASTReader.h | 37 +- .../include/clang/Serialization/ASTRecordReader.h | 18 +- .../include/clang/Serialization/ASTRecordWriter.h | 16 +- .../clang/include/clang/Serialization/ASTWriter.h | 15 +- .../clang/Serialization/SourceLocationEncoding.h | 163 + .../include/clang/Serialization/TypeBitCodes.def | 1 + .../clang/StaticAnalyzer/Checkers/CheckerBase.td | 9 +- .../clang/StaticAnalyzer/Checkers/Checkers.td | 124 +- .../clang/StaticAnalyzer/Checkers/SValExplainer.h | 8 +- .../clang}/StaticAnalyzer/Checkers/Taint.h | 0 .../include/clang/StaticAnalyzer/Core/Analyses.def | 8 - .../clang/StaticAnalyzer/Core/AnalyzerOptions.def | 41 +- .../clang/StaticAnalyzer/Core/AnalyzerOptions.h | 41 +- .../Core/BugReporter/BugReporterVisitors.h | 2 +- .../include/clang/StaticAnalyzer/Core/Checker.h | 12 - .../StaticAnalyzer/Core/PathSensitive/APSIntType.h | 4 +- .../Core/PathSensitive/BasicValueFactory.h | 14 +- .../Core/PathSensitive/CallDescription.h | 81 +- .../StaticAnalyzer/Core/PathSensitive/CallEvent.h | 15 +- .../Core/PathSensitive/CheckerContext.h | 1 + .../Core/PathSensitive/ConstraintManager.h | 118 +- .../StaticAnalyzer/Core/PathSensitive/CoreEngine.h | 8 +- .../Core/PathSensitive/DynamicType.h | 1 + .../Core/PathSensitive/ExplodedGraph.h | 6 +- .../StaticAnalyzer/Core/PathSensitive/ExprEngine.h | 39 +- .../StaticAnalyzer/Core/PathSensitive/MemRegion.h | 61 +- .../Core/PathSensitive/ProgramState.h | 54 +- .../Core/PathSensitive/ProgramStateTrait.h | 108 +- .../Core/PathSensitive/RangedConstraintManager.h | 43 + .../Core/PathSensitive/SMTConstraintManager.h | 6 +- .../StaticAnalyzer/Core/PathSensitive/SMTConv.h | 22 + .../Core/PathSensitive/SValBuilder.h | 62 +- .../StaticAnalyzer/Core/PathSensitive/SVals.h | 255 +- .../Core/PathSensitive/SimpleConstraintManager.h | 21 +- .../StaticAnalyzer/Core/PathSensitive/Store.h | 2 - .../StaticAnalyzer/Core/PathSensitive/SymExpr.h | 1 + .../Core/PathSensitive/SymbolManager.h | 106 +- .../StaticAnalyzer/Core/PathSensitive/Symbols.def | 2 + .../include/clang/Support/RISCVVIntrinsicUtils.h | 354 + .../clang/include/clang/Testing/CommandLineArgs.h | 2 + .../clang/include/clang/Testing/TestAST.h | 95 + .../DependencyScanningFilesystem.h | 125 +- .../DependencyScanning/DependencyScanningService.h | 17 +- .../DependencyScanning/DependencyScanningTool.h | 29 +- .../DependencyScanning/DependencyScanningWorker.h | 2 - .../DependencyScanning/ModuleDepCollector.h | 36 +- .../clang/include/clang/Tooling/DiagnosticsYaml.h | 3 +- .../clang/Tooling/Inclusions/CSymbolMap.inc | 945 + .../clang/Tooling/Inclusions/HeaderIncludes.h | 4 +- .../clang/Tooling/Inclusions/StandardLibrary.h | 141 + .../clang/Tooling/Inclusions/StdSymbolMap.inc | 1538 ++ .../clang/Tooling/Refactoring/AtomicChange.h | 2 + .../clang/Tooling/Transformer/RewriteRule.h | 148 +- .../include/clang/Tooling/Transformer/SourceCode.h | 4 + .../clang/Tooling/Transformer/Transformer.h | 191 +- .../clang/include/clang/module.modulemap | 2 + .../clang/lib/ARCMigrate/Transforms.cpp | 2 +- contrib/llvm-project/clang/lib/AST/APValue.cpp | 83 +- contrib/llvm-project/clang/lib/AST/ASTContext.cpp | 223 +- .../llvm-project/clang/lib/AST/ASTDiagnostic.cpp | 18 +- contrib/llvm-project/clang/lib/AST/ASTImporter.cpp | 321 +- .../clang/lib/AST/ASTStructuralEquivalence.cpp | 150 +- .../llvm-project/clang/lib/AST/ASTTypeTraits.cpp | 6 + contrib/llvm-project/clang/lib/AST/AttrImpl.cpp | 6 +- .../llvm-project/clang/lib/AST/CommentParser.cpp | 47 +- contrib/llvm-project/clang/lib/AST/CommentSema.cpp | 48 +- .../clang/lib/AST/ComputeDependence.cpp | 2 +- contrib/llvm-project/clang/lib/AST/Decl.cpp | 109 +- contrib/llvm-project/clang/lib/AST/DeclBase.cpp | 9 +- contrib/llvm-project/clang/lib/AST/DeclCXX.cpp | 153 +- contrib/llvm-project/clang/lib/AST/DeclObjC.cpp | 11 +- contrib/llvm-project/clang/lib/AST/DeclPrinter.cpp | 13 +- .../llvm-project/clang/lib/AST/DeclTemplate.cpp | 30 +- contrib/llvm-project/clang/lib/AST/Expr.cpp | 248 +- contrib/llvm-project/clang/lib/AST/ExprCXX.cpp | 4 +- .../clang/lib/AST/ExprClassification.cpp | 13 +- .../llvm-project/clang/lib/AST/ExprConstant.cpp | 177 +- .../llvm-project/clang/lib/AST/FormatString.cpp | 4 +- .../clang/lib/AST/Interp/ByteCodeExprGen.h | 4 +- .../llvm-project/clang/lib/AST/Interp/Function.cpp | 3 +- .../llvm-project/clang/lib/AST/ItaniumMangle.cpp | 306 +- .../llvm-project/clang/lib/AST/JSONNodeDumper.cpp | 15 + contrib/llvm-project/clang/lib/AST/Mangle.cpp | 6 +- .../llvm-project/clang/lib/AST/MicrosoftCXXABI.cpp | 15 + .../llvm-project/clang/lib/AST/MicrosoftMangle.cpp | 30 +- contrib/llvm-project/clang/lib/AST/ODRHash.cpp | 1 + contrib/llvm-project/clang/lib/AST/OSLog.cpp | 2 +- .../llvm-project/clang/lib/AST/OpenMPClause.cpp | 89 +- .../clang/lib/AST/ParentMapContext.cpp | 14 +- .../llvm-project/clang/lib/AST/QualTypeNames.cpp | 8 +- contrib/llvm-project/clang/lib/AST/Randstruct.cpp | 231 + .../llvm-project/clang/lib/AST/RawCommentList.cpp | 65 +- .../clang/lib/AST/RecordLayoutBuilder.cpp | 19 +- contrib/llvm-project/clang/lib/AST/Stmt.cpp | 27 +- contrib/llvm-project/clang/lib/AST/StmtCXX.cpp | 1 - contrib/llvm-project/clang/lib/AST/StmtOpenMP.cpp | 405 +- contrib/llvm-project/clang/lib/AST/StmtPrinter.cpp | 185 +- contrib/llvm-project/clang/lib/AST/StmtProfile.cpp | 61 +- .../llvm-project/clang/lib/AST/TemplateBase.cpp | 44 +- .../llvm-project/clang/lib/AST/TemplateName.cpp | 55 +- .../llvm-project/clang/lib/AST/TextNodeDumper.cpp | 24 + contrib/llvm-project/clang/lib/AST/Type.cpp | 55 +- contrib/llvm-project/clang/lib/AST/TypeLoc.cpp | 8 + contrib/llvm-project/clang/lib/AST/TypePrinter.cpp | 63 +- .../llvm-project/clang/lib/AST/VTableBuilder.cpp | 10 +- .../clang/lib/ASTMatchers/ASTMatchFinder.cpp | 222 +- .../clang/lib/ASTMatchers/ASTMatchersInternal.cpp | 1 + .../clang/lib/ASTMatchers/Dynamic/Marshallers.cpp | 2 +- .../clang/lib/ASTMatchers/Dynamic/Marshallers.h | 10 +- .../clang/lib/ASTMatchers/Dynamic/Parser.cpp | 8 +- .../clang/lib/ASTMatchers/Dynamic/Registry.cpp | 7 +- .../clang/lib/Analysis/AnalysisDeclContext.cpp | 2 +- .../llvm-project/clang/lib/Analysis/BodyFarm.cpp | 57 +- contrib/llvm-project/clang/lib/Analysis/CFG.cpp | 122 +- .../clang/lib/Analysis/CalledOnceCheck.cpp | 4 +- .../clang/lib/Analysis/ExprMutationAnalyzer.cpp | 20 +- .../Analysis/FlowSensitive/ControlFlowContext.cpp | 4 +- .../FlowSensitive/DataflowAnalysisContext.cpp | 340 + .../Analysis/FlowSensitive/DataflowEnvironment.cpp | 309 +- .../FlowSensitive/Models/ChromiumCheckModel.cpp | 67 + .../Models/UncheckedOptionalAccessModel.cpp | 753 + .../clang/lib/Analysis/FlowSensitive/Transfer.cpp | 299 +- .../FlowSensitive/TypeErasedDataflowAnalysis.cpp | 203 +- .../FlowSensitive/WatchedLiteralsSolver.cpp | 600 + .../clang/lib/Analysis/PathDiagnostic.cpp | 8 +- .../clang/lib/Analysis/ReachableCode.cpp | 4 +- .../clang/lib/Analysis/RetainSummaryManager.cpp | 2 +- .../clang/lib/Analysis/ThreadSafety.cpp | 306 +- .../clang/lib/Analysis/ThreadSafetyCommon.cpp | 37 +- .../clang/lib/Analysis/UninitializedValues.cpp | 4 +- .../llvm-project/clang/lib/Basic/Attributes.cpp | 10 +- .../clang/lib/Basic/BuiltinTargetFeatures.h | 95 + contrib/llvm-project/clang/lib/Basic/Builtins.cpp | 48 +- contrib/llvm-project/clang/lib/Basic/Cuda.cpp | 9 +- .../llvm-project/clang/lib/Basic/Diagnostic.cpp | 92 +- .../llvm-project/clang/lib/Basic/DiagnosticIDs.cpp | 42 +- .../llvm-project/clang/lib/Basic/FileManager.cpp | 191 +- .../clang/lib/Basic/IdentifierTable.cpp | 8 +- .../llvm-project/clang/lib/Basic/LangOptions.cpp | 132 +- .../llvm-project/clang/lib/Basic/LangStandards.cpp | 45 + contrib/llvm-project/clang/lib/Basic/Module.cpp | 5 +- .../llvm-project/clang/lib/Basic/OpenCLOptions.cpp | 12 +- .../llvm-project/clang/lib/Basic/OpenMPKinds.cpp | 64 +- .../llvm-project/clang/lib/Basic/SourceManager.cpp | 22 +- contrib/llvm-project/clang/lib/Basic/TargetID.cpp | 6 +- .../llvm-project/clang/lib/Basic/TargetInfo.cpp | 24 +- contrib/llvm-project/clang/lib/Basic/Targets.cpp | 18 + .../clang/lib/Basic/Targets/AArch64.cpp | 30 +- .../llvm-project/clang/lib/Basic/Targets/AArch64.h | 2 - .../clang/lib/Basic/Targets/AMDGPU.cpp | 40 +- .../llvm-project/clang/lib/Basic/Targets/AMDGPU.h | 7 +- .../llvm-project/clang/lib/Basic/Targets/ARM.cpp | 1 + .../llvm-project/clang/lib/Basic/Targets/AVR.cpp | 557 +- .../llvm-project/clang/lib/Basic/Targets/CSKY.cpp | 314 + .../llvm-project/clang/lib/Basic/Targets/CSKY.h | 107 + .../clang/lib/Basic/Targets/DirectX.cpp | 22 + .../llvm-project/clang/lib/Basic/Targets/DirectX.h | 93 + .../llvm-project/clang/lib/Basic/Targets/NVPTX.cpp | 8 +- .../clang/lib/Basic/Targets/OSTargets.cpp | 52 +- .../clang/lib/Basic/Targets/OSTargets.h | 62 +- .../llvm-project/clang/lib/Basic/Targets/PPC.cpp | 35 +- contrib/llvm-project/clang/lib/Basic/Targets/PPC.h | 16 +- .../llvm-project/clang/lib/Basic/Targets/RISCV.cpp | 16 +- .../llvm-project/clang/lib/Basic/Targets/RISCV.h | 4 + .../llvm-project/clang/lib/Basic/Targets/SPIR.h | 10 +- .../clang/lib/Basic/Targets/SystemZ.cpp | 13 +- .../llvm-project/clang/lib/Basic/Targets/SystemZ.h | 24 + .../llvm-project/clang/lib/Basic/Targets/VE.cpp | 9 +- .../clang/lib/Basic/Targets/WebAssembly.cpp | 19 +- .../clang/lib/Basic/Targets/WebAssembly.h | 1 + .../llvm-project/clang/lib/Basic/Targets/X86.cpp | 25 +- contrib/llvm-project/clang/lib/Basic/Targets/X86.h | 25 +- .../llvm-project/clang/lib/Basic/TokenKinds.cpp | 9 + contrib/llvm-project/clang/lib/CodeGen/ABIInfo.h | 1 + contrib/llvm-project/clang/lib/CodeGen/Address.h | 5 - .../llvm-project/clang/lib/CodeGen/BackendUtil.cpp | 631 +- .../llvm-project/clang/lib/CodeGen/CGAtomic.cpp | 27 +- .../llvm-project/clang/lib/CodeGen/CGBlocks.cpp | 80 +- contrib/llvm-project/clang/lib/CodeGen/CGBuilder.h | 70 +- .../llvm-project/clang/lib/CodeGen/CGBuiltin.cpp | 2069 +- .../llvm-project/clang/lib/CodeGen/CGCUDANV.cpp | 84 +- .../llvm-project/clang/lib/CodeGen/CGCUDARuntime.h | 13 + .../llvm-project/clang/lib/CodeGen/CGCXXABI.cpp | 3 +- contrib/llvm-project/clang/lib/CodeGen/CGCXXABI.h | 5 +- contrib/llvm-project/clang/lib/CodeGen/CGCall.cpp | 222 +- contrib/llvm-project/clang/lib/CodeGen/CGClass.cpp | 246 +- .../llvm-project/clang/lib/CodeGen/CGCleanup.cpp | 30 +- .../llvm-project/clang/lib/CodeGen/CGCoroutine.cpp | 107 +- .../llvm-project/clang/lib/CodeGen/CGDebugInfo.cpp | 501 +- .../llvm-project/clang/lib/CodeGen/CGDebugInfo.h | 44 +- contrib/llvm-project/clang/lib/CodeGen/CGDecl.cpp | 73 +- .../llvm-project/clang/lib/CodeGen/CGDeclCXX.cpp | 14 +- .../llvm-project/clang/lib/CodeGen/CGException.cpp | 5 +- contrib/llvm-project/clang/lib/CodeGen/CGExpr.cpp | 403 +- .../llvm-project/clang/lib/CodeGen/CGExprCXX.cpp | 22 +- .../clang/lib/CodeGen/CGExprConstant.cpp | 47 +- .../clang/lib/CodeGen/CGExprScalar.cpp | 104 +- .../clang/lib/CodeGen/CGHLSLRuntime.cpp | 52 + .../llvm-project/clang/lib/CodeGen/CGHLSLRuntime.h | 38 + .../clang/lib/CodeGen/CGNonTrivialStruct.cpp | 14 +- contrib/llvm-project/clang/lib/CodeGen/CGObjC.cpp | 64 +- .../llvm-project/clang/lib/CodeGen/CGObjCGNU.cpp | 84 +- .../llvm-project/clang/lib/CodeGen/CGObjCMac.cpp | 69 +- .../clang/lib/CodeGen/CGObjCRuntime.cpp | 2 +- .../clang/lib/CodeGen/CGOpenCLRuntime.cpp | 51 +- .../clang/lib/CodeGen/CGOpenCLRuntime.h | 6 +- .../clang/lib/CodeGen/CGOpenMPRuntime.cpp | 1030 +- .../clang/lib/CodeGen/CGOpenMPRuntime.h | 29 +- .../clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp | 173 +- .../clang/lib/CodeGen/CGRecordLayout.h | 6 + contrib/llvm-project/clang/lib/CodeGen/CGStmt.cpp | 70 +- .../clang/lib/CodeGen/CGStmtOpenMP.cpp | 1003 +- contrib/llvm-project/clang/lib/CodeGen/CGVTT.cpp | 4 +- .../llvm-project/clang/lib/CodeGen/CGVTables.cpp | 26 +- .../clang/lib/CodeGen/CodeGenAction.cpp | 38 +- .../clang/lib/CodeGen/CodeGenFunction.cpp | 198 +- .../clang/lib/CodeGen/CodeGenFunction.h | 176 +- .../clang/lib/CodeGen/CodeGenModule.cpp | 674 +- .../llvm-project/clang/lib/CodeGen/CodeGenModule.h | 115 +- .../llvm-project/clang/lib/CodeGen/CodeGenPGO.cpp | 2 +- .../clang/lib/CodeGen/CodeGenTypes.cpp | 53 +- .../llvm-project/clang/lib/CodeGen/CodeGenTypes.h | 5 +- .../clang/lib/CodeGen/ConstantInitBuilder.cpp | 2 +- .../clang/lib/CodeGen/CoverageMappingGen.cpp | 52 +- .../clang/lib/CodeGen/CoverageMappingGen.h | 20 +- .../clang/lib/CodeGen/ItaniumCXXABI.cpp | 34 +- .../clang/lib/CodeGen/MacroPPCallbacks.cpp | 2 +- .../clang/lib/CodeGen/MacroPPCallbacks.h | 6 +- .../clang/lib/CodeGen/MicrosoftCXXABI.cpp | 25 +- .../clang/lib/CodeGen/ModuleBuilder.cpp | 12 + .../CodeGen/ObjectFilePCHContainerOperations.cpp | 4 + .../clang/lib/CodeGen/SanitizerMetadata.cpp | 121 +- .../clang/lib/CodeGen/SanitizerMetadata.h | 21 +- .../llvm-project/clang/lib/CodeGen/TargetInfo.cpp | 461 +- .../llvm-project/clang/lib/CodeGen/TargetInfo.h | 2 +- .../clang/lib/CrossTU/CrossTranslationUnit.cpp | 114 +- .../lib/DirectoryWatcher/DirectoryScanner.cpp | 2 +- contrib/llvm-project/clang/lib/Driver/Action.cpp | 30 +- .../llvm-project/clang/lib/Driver/Compilation.cpp | 11 +- contrib/llvm-project/clang/lib/Driver/Distro.cpp | 3 + contrib/llvm-project/clang/lib/Driver/Driver.cpp | 814 +- .../clang/lib/Driver/SanitizerArgs.cpp | 116 +- .../llvm-project/clang/lib/Driver/ToolChain.cpp | 53 +- .../clang/lib/Driver/ToolChains/AIX.cpp | 11 +- .../clang/lib/Driver/ToolChains/AMDGPU.cpp | 69 +- .../clang/lib/Driver/ToolChains/AMDGPU.h | 3 +- .../clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp | 20 +- .../clang/lib/Driver/ToolChains/AVR.cpp | 154 +- .../llvm-project/clang/lib/Driver/ToolChains/AVR.h | 17 +- .../clang/lib/Driver/ToolChains/Arch/AArch64.cpp | 174 +- .../clang/lib/Driver/ToolChains/Arch/AArch64.h | 1 - .../clang/lib/Driver/ToolChains/Arch/ARM.cpp | 54 +- .../clang/lib/Driver/ToolChains/Arch/ARM.h | 1 - .../clang/lib/Driver/ToolChains/Arch/CSKY.cpp | 170 + .../clang/lib/Driver/ToolChains/Arch/CSKY.h | 47 + .../clang/lib/Driver/ToolChains/Arch/RISCV.cpp | 2 +- .../clang/lib/Driver/ToolChains/Arch/VE.h | 2 +- .../clang/lib/Driver/ToolChains/Arch/X86.cpp | 26 +- .../clang/lib/Driver/ToolChains/CSKYToolChain.cpp | 204 + .../clang/lib/Driver/ToolChains/CSKYToolChain.h | 63 + .../clang/lib/Driver/ToolChains/Clang.cpp | 945 +- .../clang/lib/Driver/ToolChains/Clang.h | 13 + .../clang/lib/Driver/ToolChains/CommonArgs.cpp | 215 +- .../clang/lib/Driver/ToolChains/CommonArgs.h | 15 +- .../clang/lib/Driver/ToolChains/Cuda.cpp | 99 +- .../clang/lib/Driver/ToolChains/Cuda.h | 4 + .../clang/lib/Driver/ToolChains/Darwin.cpp | 404 +- .../clang/lib/Driver/ToolChains/Darwin.h | 31 +- .../clang/lib/Driver/ToolChains/Flang.cpp | 55 +- .../clang/lib/Driver/ToolChains/FreeBSD.cpp | 2 + .../clang/lib/Driver/ToolChains/Fuchsia.cpp | 26 +- .../clang/lib/Driver/ToolChains/Fuchsia.h | 25 +- .../clang/lib/Driver/ToolChains/Gnu.cpp | 221 +- .../clang/lib/Driver/ToolChains/HIPAMD.cpp | 60 +- .../clang/lib/Driver/ToolChains/HIPAMD.h | 4 + .../clang/lib/Driver/ToolChains/HIPUtility.cpp | 12 +- .../clang/lib/Driver/ToolChains/HLSL.cpp | 183 + .../clang/lib/Driver/ToolChains/HLSL.h | 40 + .../clang/lib/Driver/ToolChains/Hexagon.cpp | 7 +- .../clang/lib/Driver/ToolChains/Hexagon.h | 3 - .../clang/lib/Driver/ToolChains/Lanai.h | 2 - .../clang/lib/Driver/ToolChains/Linux.cpp | 93 +- .../clang/lib/Driver/ToolChains/Linux.h | 2 + .../clang/lib/Driver/ToolChains/MSP430.cpp | 2 +- .../clang/lib/Driver/ToolChains/MSVC.cpp | 815 +- .../clang/lib/Driver/ToolChains/MSVC.h | 31 +- .../clang/lib/Driver/ToolChains/MinGW.cpp | 12 +- .../clang/lib/Driver/ToolChains/Minix.cpp | 9 +- .../clang/lib/Driver/ToolChains/OpenBSD.cpp | 31 +- .../clang/lib/Driver/ToolChains/PS4CPU.cpp | 188 +- .../clang/lib/Driver/ToolChains/PS4CPU.h | 115 +- .../clang/lib/Driver/ToolChains/RISCVToolchain.cpp | 7 + .../clang/lib/Driver/ToolChains/RISCVToolchain.h | 1 - .../clang/lib/Driver/ToolChains/ROCm.h | 38 +- .../clang/lib/Driver/ToolChains/SPIRV.h | 3 +- .../clang/lib/Driver/ToolChains/Solaris.cpp | 14 +- .../clang/lib/Driver/ToolChains/VEToolchain.h | 1 - .../clang/lib/Driver/ToolChains/WebAssembly.cpp | 110 +- .../clang/lib/Driver/ToolChains/WebAssembly.h | 9 + .../llvm-project/clang/lib/Driver/ToolChains/ZOS.h | 2 + contrib/llvm-project/clang/lib/Driver/Types.cpp | 41 +- .../clang/lib/Edit/RewriteObjCFoundationAPI.cpp | 6 +- contrib/llvm-project/clang/lib/ExtractAPI/API.cpp | 233 + .../clang/lib/ExtractAPI/DeclarationFragments.cpp | 799 + .../clang/lib/ExtractAPI/ExtractAPIConsumer.cpp | 974 + .../ExtractAPI/Serialization/SerializerBase.cpp | 19 + .../Serialization/SymbolGraphSerializer.cpp | 708 + .../ExtractAPI/TypedefUnderlyingTypeResolver.cpp | 79 + .../lib/ExtractAPI/TypedefUnderlyingTypeResolver.h | 46 + .../clang/lib/Format/AffectedRangeManager.cpp | 6 +- .../clang/lib/Format/BreakableToken.cpp | 98 +- .../clang/lib/Format/ContinuationIndenter.cpp | 844 +- .../clang/lib/Format/ContinuationIndenter.h | 6 - .../clang/lib/Format/DefinitionBlockSeparator.cpp | 30 +- contrib/llvm-project/clang/lib/Format/Format.cpp | 456 +- .../llvm-project/clang/lib/Format/FormatToken.cpp | 32 +- .../llvm-project/clang/lib/Format/FormatToken.h | 626 +- .../clang/lib/Format/FormatTokenLexer.cpp | 277 +- .../clang/lib/Format/FormatTokenLexer.h | 7 + .../clang/lib/Format/MacroExpander.cpp | 3 +- .../clang/lib/Format/NamespaceEndCommentsFixer.cpp | 119 +- .../clang/lib/Format/QualifierAlignmentFixer.cpp | 141 +- .../clang/lib/Format/SortJavaScriptImports.cpp | 26 +- .../clang/lib/Format/TokenAnalyzer.cpp | 3 +- .../clang/lib/Format/TokenAnnotator.cpp | 1631 +- .../llvm-project/clang/lib/Format/TokenAnnotator.h | 37 +- .../clang/lib/Format/UnwrappedLineFormatter.cpp | 450 +- .../clang/lib/Format/UnwrappedLineParser.cpp | 1549 +- .../clang/lib/Format/UnwrappedLineParser.h | 42 +- .../clang/lib/Format/WhitespaceManager.cpp | 276 +- .../clang/lib/Format/WhitespaceManager.h | 20 +- .../llvm-project/clang/lib/Frontend/ASTUnit.cpp | 16 +- .../clang/lib/Frontend/CompilerInstance.cpp | 23 +- .../clang/lib/Frontend/CompilerInvocation.cpp | 530 +- .../Frontend/CreateInvocationFromCommandLine.cpp | 29 +- .../clang/lib/Frontend/DependencyFile.cpp | 35 +- .../clang/lib/Frontend/DependencyGraph.cpp | 26 +- .../clang/lib/Frontend/ExtractAPIConsumer.cpp | 32 - .../clang/lib/Frontend/FrontendAction.cpp | 81 +- .../clang/lib/Frontend/FrontendActions.cpp | 137 +- .../clang/lib/Frontend/FrontendOptions.cpp | 2 +- .../clang/lib/Frontend/InitPreprocessor.cpp | 70 +- .../clang/lib/Frontend/LogDiagnosticPrinter.cpp | 6 +- .../lib/Frontend/ModuleDependencyCollector.cpp | 6 +- .../clang/lib/Frontend/MultiplexConsumer.cpp | 6 + .../clang/lib/Frontend/PrecompiledPreamble.cpp | 353 +- .../clang/lib/Frontend/PrintPreprocessedOutput.cpp | 44 +- .../lib/Frontend/Rewrite/InclusionRewriter.cpp | 8 +- .../lib/Frontend/Rewrite/RewriteModernObjC.cpp | 20 +- .../clang/lib/Frontend/Rewrite/RewriteObjC.cpp | 2 +- .../clang/lib/Frontend/TextDiagnostic.cpp | 3 +- .../lib/FrontendTool/ExecuteCompilerInvocation.cpp | 3 + .../clang/lib/Headers/__clang_cuda_intrinsics.h | 4 +- .../clang/lib/Headers/__wmmintrin_pclmul.h | 20 +- contrib/llvm-project/clang/lib/Headers/altivec.h | 735 +- contrib/llvm-project/clang/lib/Headers/amxintrin.h | 2 - .../llvm-project/clang/lib/Headers/avx2intrin.h | 16 +- .../clang/lib/Headers/avx512bwintrin.h | 24 +- .../llvm-project/clang/lib/Headers/avx512fintrin.h | 149 +- .../clang/lib/Headers/avx512vlbf16intrin.h | 2 +- .../clang/lib/Headers/avx512vlbwintrin.h | 16 +- .../clang/lib/Headers/avx512vlintrin.h | 176 +- .../clang/lib/Headers/avx512vlvnniintrin.h | 32 +- contrib/llvm-project/clang/lib/Headers/avxintrin.h | 95 +- .../llvm-project/clang/lib/Headers/avxvnniintrin.h | 32 +- contrib/llvm-project/clang/lib/Headers/bmiintrin.h | 8 +- contrib/llvm-project/clang/lib/Headers/cetintrin.h | 18 +- contrib/llvm-project/clang/lib/Headers/emmintrin.h | 1318 +- .../llvm-project/clang/lib/Headers/f16cintrin.h | 6 +- contrib/llvm-project/clang/lib/Headers/hlsl.h | 15 + .../clang/lib/Headers/hlsl/hlsl_basic_types.h | 64 + .../clang/lib/Headers/hlsl/hlsl_intrinsics.h | 15 + .../llvm-project/clang/lib/Headers/hresetintrin.h | 4 +- .../llvm-project/clang/lib/Headers/ia32intrin.h | 22 +- contrib/llvm-project/clang/lib/Headers/immintrin.h | 30 +- contrib/llvm-project/clang/lib/Headers/intrin.h | 33 +- .../clang/lib/Headers/keylockerintrin.h | 44 +- contrib/llvm-project/clang/lib/Headers/mm_malloc.h | 6 +- .../llvm-project/clang/lib/Headers/opencl-c-base.h | 10 + contrib/llvm-project/clang/lib/Headers/opencl-c.h | 13820 ++++++------ contrib/llvm-project/clang/lib/Headers/pmmintrin.h | 2 +- .../clang/lib/Headers/ppc_wrappers/bmi2intrin.h | 134 + .../clang/lib/Headers/ppc_wrappers/bmiintrin.h | 165 + .../clang/lib/Headers/ppc_wrappers/emmintrin.h | 2918 ++- .../clang/lib/Headers/ppc_wrappers/immintrin.h | 27 + .../clang/lib/Headers/ppc_wrappers/mm_malloc.h | 26 +- .../clang/lib/Headers/ppc_wrappers/mmintrin.h | 769 +- .../clang/lib/Headers/ppc_wrappers/nmmintrin.h | 26 + .../clang/lib/Headers/ppc_wrappers/pmmintrin.h | 147 +- .../clang/lib/Headers/ppc_wrappers/smmintrin.h | 580 +- .../clang/lib/Headers/ppc_wrappers/tmmintrin.h | 642 +- .../clang/lib/Headers/ppc_wrappers/x86gprintrin.h | 17 + .../clang/lib/Headers/ppc_wrappers/x86intrin.h | 28 + .../clang/lib/Headers/ppc_wrappers/xmmintrin.h | 2064 +- .../llvm-project/clang/lib/Headers/rdseedintrin.h | 6 +- contrib/llvm-project/clang/lib/Headers/rtmintrin.h | 2 +- contrib/llvm-project/clang/lib/Headers/smmintrin.h | 491 +- contrib/llvm-project/clang/lib/Headers/stdbool.h | 15 +- contrib/llvm-project/clang/lib/Headers/stddef.h | 2 +- .../llvm-project/clang/lib/Headers/stdnoreturn.h | 13 + .../llvm-project/clang/lib/Headers/uintrintrin.h | 16 +- contrib/llvm-project/clang/lib/Headers/unwind.h | 13 +- contrib/llvm-project/clang/lib/Headers/velintrin.h | 71 + .../clang/lib/Headers/velintrin_approx.h | 120 + .../llvm-project/clang/lib/Headers/velintrin_gen.h | 1257 ++ .../llvm-project/clang/lib/Headers/wasm_simd128.h | 4 +- contrib/llvm-project/clang/lib/Headers/xmmintrin.h | 12 +- contrib/llvm-project/clang/lib/Index/IndexBody.cpp | 22 +- contrib/llvm-project/clang/lib/Index/IndexDecl.cpp | 68 +- .../llvm-project/clang/lib/Index/IndexSymbol.cpp | 5 + .../clang/lib/Index/IndexTypeSourceInfo.cpp | 10 + .../clang/lib/Index/IndexingContext.cpp | 10 +- .../llvm-project/clang/lib/Index/USRGeneration.cpp | 31 +- .../clang/lib/Interpreter/IncrementalExecutor.cpp | 30 +- .../clang/lib/Interpreter/IncrementalExecutor.h | 14 +- .../clang/lib/Interpreter/IncrementalParser.cpp | 56 +- .../clang/lib/Interpreter/IncrementalParser.h | 4 + .../clang/lib/Interpreter/Interpreter.cpp | 30 +- .../clang/lib/Lex/DependencyDirectivesScanner.cpp | 862 + .../Lex/DependencyDirectivesSourceMinimizer.cpp | 982 - .../llvm-project/clang/lib/Lex/HeaderSearch.cpp | 237 +- .../clang/lib/Lex/InitHeaderSearch.cpp | 13 +- contrib/llvm-project/clang/lib/Lex/Lexer.cpp | 381 +- .../llvm-project/clang/lib/Lex/LiteralSupport.cpp | 241 +- contrib/llvm-project/clang/lib/Lex/MacroInfo.cpp | 34 +- contrib/llvm-project/clang/lib/Lex/ModuleMap.cpp | 48 +- .../llvm-project/clang/lib/Lex/PPDirectives.cpp | 445 +- .../llvm-project/clang/lib/Lex/PPExpressions.cpp | 19 +- .../llvm-project/clang/lib/Lex/PPLexerChange.cpp | 109 +- .../clang/lib/Lex/PPMacroExpansion.cpp | 127 +- contrib/llvm-project/clang/lib/Lex/Pragma.cpp | 102 +- .../clang/lib/Lex/PreprocessingRecord.cpp | 7 +- .../llvm-project/clang/lib/Lex/Preprocessor.cpp | 38 +- .../clang/lib/Lex/PreprocessorLexer.cpp | 5 +- contrib/llvm-project/clang/lib/Lex/TokenLexer.cpp | 2 +- contrib/llvm-project/clang/lib/Parse/ParseAST.cpp | 8 +- .../clang/lib/Parse/ParseCXXInlineMethods.cpp | 13 +- contrib/llvm-project/clang/lib/Parse/ParseDecl.cpp | 508 +- .../llvm-project/clang/lib/Parse/ParseDeclCXX.cpp | 245 +- contrib/llvm-project/clang/lib/Parse/ParseExpr.cpp | 112 +- .../llvm-project/clang/lib/Parse/ParseExprCXX.cpp | 48 +- contrib/llvm-project/clang/lib/Parse/ParseHLSL.cpp | 42 + contrib/llvm-project/clang/lib/Parse/ParseObjc.cpp | 63 +- .../llvm-project/clang/lib/Parse/ParseOpenMP.cpp | 164 +- .../llvm-project/clang/lib/Parse/ParsePragma.cpp | 343 +- contrib/llvm-project/clang/lib/Parse/ParseStmt.cpp | 181 +- .../llvm-project/clang/lib/Parse/ParseTemplate.cpp | 54 +- contrib/llvm-project/clang/lib/Parse/Parser.cpp | 328 +- .../clang/lib/Sema/AnalysisBasedWarnings.cpp | 9 +- .../clang/lib/Sema/CodeCompleteConsumer.cpp | 12 +- .../clang/lib/Sema/IdentifierResolver.cpp | 6 +- .../llvm-project/clang/lib/Sema/OpenCLBuiltins.td | 90 +- contrib/llvm-project/clang/lib/Sema/ParsedAttr.cpp | 64 + contrib/llvm-project/clang/lib/Sema/Sema.cpp | 68 +- contrib/llvm-project/clang/lib/Sema/SemaAccess.cpp | 35 +- contrib/llvm-project/clang/lib/Sema/SemaAttr.cpp | 265 +- .../clang/lib/Sema/SemaAvailability.cpp | 2 +- contrib/llvm-project/clang/lib/Sema/SemaCUDA.cpp | 51 +- .../clang/lib/Sema/SemaCXXScopeSpec.cpp | 15 +- contrib/llvm-project/clang/lib/Sema/SemaCast.cpp | 21 +- .../llvm-project/clang/lib/Sema/SemaChecking.cpp | 739 +- .../clang/lib/Sema/SemaCodeComplete.cpp | 36 +- .../llvm-project/clang/lib/Sema/SemaConcept.cpp | 89 +- .../llvm-project/clang/lib/Sema/SemaCoroutine.cpp | 323 +- contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp | 943 +- .../llvm-project/clang/lib/Sema/SemaDeclAttr.cpp | 574 +- .../llvm-project/clang/lib/Sema/SemaDeclCXX.cpp | 297 +- .../llvm-project/clang/lib/Sema/SemaDeclObjC.cpp | 53 +- .../clang/lib/Sema/SemaExceptionSpec.cpp | 17 +- contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp | 1044 +- .../llvm-project/clang/lib/Sema/SemaExprCXX.cpp | 272 +- .../llvm-project/clang/lib/Sema/SemaExprMember.cpp | 30 +- .../llvm-project/clang/lib/Sema/SemaExprObjC.cpp | 8 +- contrib/llvm-project/clang/lib/Sema/SemaInit.cpp | 97 +- contrib/llvm-project/clang/lib/Sema/SemaLambda.cpp | 35 +- contrib/llvm-project/clang/lib/Sema/SemaLookup.cpp | 426 +- contrib/llvm-project/clang/lib/Sema/SemaModule.cpp | 327 +- contrib/llvm-project/clang/lib/Sema/SemaOpenMP.cpp | 2377 ++- .../llvm-project/clang/lib/Sema/SemaOverload.cpp | 488 +- contrib/llvm-project/clang/lib/Sema/SemaStmt.cpp | 51 +- .../llvm-project/clang/lib/Sema/SemaStmtAsm.cpp | 27 +- .../llvm-project/clang/lib/Sema/SemaStmtAttr.cpp | 78 +- .../llvm-project/clang/lib/Sema/SemaTemplate.cpp | 119 +- .../clang/lib/Sema/SemaTemplateDeduction.cpp | 51 +- .../clang/lib/Sema/SemaTemplateInstantiate.cpp | 99 +- .../clang/lib/Sema/SemaTemplateInstantiateDecl.cpp | 194 +- .../clang/lib/Sema/SemaTemplateVariadic.cpp | 28 +- contrib/llvm-project/clang/lib/Sema/SemaType.cpp | 400 +- .../llvm-project/clang/lib/Sema/TreeTransform.h | 297 +- .../clang/lib/Serialization/ASTCommon.cpp | 5 +- .../clang/lib/Serialization/ASTReader.cpp | 1212 +- .../clang/lib/Serialization/ASTReaderDecl.cpp | 100 +- .../clang/lib/Serialization/ASTReaderStmt.cpp | 156 +- .../clang/lib/Serialization/ASTWriter.cpp | 461 +- .../clang/lib/Serialization/ASTWriterDecl.cpp | 74 +- .../clang/lib/Serialization/ASTWriterStmt.cpp | 67 +- .../clang/lib/Serialization/GlobalModuleIndex.cpp | 2 +- .../StaticAnalyzer/Checkers/ArrayBoundChecker.cpp | 4 +- .../Checkers/ArrayBoundCheckerV2.cpp | 19 +- .../Checkers/BasicObjCFoundationChecks.cpp | 12 +- .../Checkers/BoolAssignmentChecker.cpp | 16 +- .../lib/StaticAnalyzer/Checkers/CStringChecker.cpp | 80 +- .../Checkers/CallAndMessageChecker.cpp | 2 +- .../StaticAnalyzer/Checkers/CastValueChecker.cpp | 6 +- .../StaticAnalyzer/Checkers/CheckObjCDealloc.cpp | 4 +- .../Checkers/CheckObjCInstMethSignature.cpp | 8 +- .../Checkers/CheckSecuritySyntaxOnly.cpp | 30 +- .../lib/StaticAnalyzer/Checkers/CloneChecker.cpp | 2 +- .../StaticAnalyzer/Checkers/DeadStoresChecker.cpp | 7 +- .../StaticAnalyzer/Checkers/DereferenceChecker.cpp | 51 +- .../lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp | 2 +- .../Checkers/DynamicTypePropagation.cpp | 5 +- .../lib/StaticAnalyzer/Checkers/ErrnoChecker.cpp | 249 + .../lib/StaticAnalyzer/Checkers/ErrnoModeling.cpp | 288 + .../lib/StaticAnalyzer/Checkers/ErrnoModeling.h | 78 + .../StaticAnalyzer/Checkers/ErrnoTesterChecker.cpp | 184 + .../Checkers/ExprInspectionChecker.cpp | 23 +- .../Checkers/FuchsiaHandleChecker.cpp | 6 +- .../lib/StaticAnalyzer/Checkers/GTestChecker.cpp | 19 +- .../Checkers/GenericTaintChecker.cpp | 185 +- .../Checkers/InnerPointerChecker.cpp | 15 +- .../clang/lib/StaticAnalyzer/Checkers/Iterator.cpp | 4 +- .../clang/lib/StaticAnalyzer/Checkers/Iterator.h | 8 +- .../StaticAnalyzer/Checkers/IteratorModeling.cpp | 8 +- .../Checkers/IvarInvalidationChecker.cpp | 4 +- .../Checkers/LLVMConventionsChecker.cpp | 2 +- .../Checkers/LocalizationChecker.cpp | 8 +- .../Checkers/MPI-Checker/MPIChecker.cpp | 2 +- .../lib/StaticAnalyzer/Checkers/MallocChecker.cpp | 150 +- .../Checkers/MallocSizeofChecker.cpp | 6 +- .../Checkers/MmapWriteExecChecker.cpp | 4 +- .../lib/StaticAnalyzer/Checkers/MoveChecker.cpp | 1 - .../lib/StaticAnalyzer/Checkers/NSErrorChecker.cpp | 6 +- .../Checkers/NonNullParamChecker.cpp | 6 +- .../StaticAnalyzer/Checkers/NullabilityChecker.cpp | 6 +- .../Checkers/NumberObjectConversionChecker.cpp | 2 +- .../StaticAnalyzer/Checkers/ObjCAtSyncChecker.cpp | 2 +- .../Checkers/ObjCAutoreleaseWriteChecker.cpp | 6 +- .../Checkers/ObjCContainersASTChecker.cpp | 6 +- .../Checkers/ObjCContainersChecker.cpp | 7 +- .../Checkers/ObjCSelfInitChecker.cpp | 22 +- .../lib/StaticAnalyzer/Checkers/PaddingChecker.cpp | 6 +- .../StaticAnalyzer/Checkers/PthreadLockChecker.cpp | 2 +- .../RetainCountChecker/RetainCountChecker.cpp | 5 +- .../RetainCountChecker/RetainCountDiagnostics.cpp | 9 +- .../Checkers/ReturnPointerRangeChecker.cpp | 4 +- .../Checkers/STLAlgorithmModeling.cpp | 4 +- .../Checkers/SimpleStreamChecker.cpp | 14 - .../StaticAnalyzer/Checkers/SmartPtrModeling.cpp | 34 +- .../Checkers/StackAddrEscapeChecker.cpp | 2 +- .../Checkers/StdLibraryFunctionsChecker.cpp | 679 +- .../lib/StaticAnalyzer/Checkers/StreamChecker.cpp | 30 +- .../lib/StaticAnalyzer/Checkers/StringChecker.cpp | 2 +- .../clang/lib/StaticAnalyzer/Checkers/Taint.cpp | 6 +- .../StaticAnalyzer/Checkers/TaintTesterChecker.cpp | 21 +- .../Checkers/TrustReturnsNonnullChecker.cpp | 60 + .../StaticAnalyzer/Checkers/UndefResultChecker.cpp | 9 +- .../UninitializedObjectChecker.cpp | 2 +- .../UninitializedObject/UninitializedPointee.cpp | 8 +- .../lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp | 8 +- .../lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp | 7 +- .../lib/StaticAnalyzer/Checkers/ValistChecker.cpp | 4 +- .../Checkers/cert/InvalidPtrChecker.cpp | 16 +- .../lib/StaticAnalyzer/Core/AnalyzerOptions.cpp | 17 +- .../clang/lib/StaticAnalyzer/Core/BugReporter.cpp | 2 +- .../StaticAnalyzer/Core/BugReporterVisitors.cpp | 78 +- .../lib/StaticAnalyzer/Core/CallDescription.cpp | 44 +- .../clang/lib/StaticAnalyzer/Core/CallEvent.cpp | 34 +- .../lib/StaticAnalyzer/Core/CheckerContext.cpp | 29 +- .../lib/StaticAnalyzer/Core/ConstraintManager.cpp | 80 + .../clang/lib/StaticAnalyzer/Core/CoreEngine.cpp | 71 +- .../clang/lib/StaticAnalyzer/Core/DynamicType.cpp | 8 +- .../clang/lib/StaticAnalyzer/Core/Environment.cpp | 2 +- .../clang/lib/StaticAnalyzer/Core/ExprEngine.cpp | 253 +- .../clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp | 21 +- .../lib/StaticAnalyzer/Core/ExprEngineCXX.cpp | 24 +- .../Core/ExprEngineCallAndReturn.cpp | 73 +- .../lib/StaticAnalyzer/Core/LoopUnrolling.cpp | 4 +- .../clang/lib/StaticAnalyzer/Core/MemRegion.cpp | 51 +- .../lib/StaticAnalyzer/Core/PlistDiagnostics.cpp | 2 +- .../clang/lib/StaticAnalyzer/Core/ProgramState.cpp | 37 +- .../StaticAnalyzer/Core/RangeConstraintManager.cpp | 243 +- .../Core/RangedConstraintManager.cpp | 71 +- .../clang/lib/StaticAnalyzer/Core/RegionStore.cpp | 152 +- .../clang/lib/StaticAnalyzer/Core/SValBuilder.cpp | 93 +- .../clang/lib/StaticAnalyzer/Core/SVals.cpp | 67 +- .../lib/StaticAnalyzer/Core/SarifDiagnostics.cpp | 15 +- .../Core/SimpleConstraintManager.cpp | 14 +- .../lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp | 173 +- .../clang/lib/StaticAnalyzer/Core/Store.cpp | 8 +- .../lib/StaticAnalyzer/Core/SymbolManager.cpp | 43 +- .../lib/StaticAnalyzer/Core/TextDiagnostics.cpp | 2 +- .../clang/lib/StaticAnalyzer/Core/WorkList.cpp | 16 +- .../StaticAnalyzer/Frontend/AnalysisConsumer.cpp | 63 +- .../StaticAnalyzer/Frontend/AnalyzerHelpFlags.cpp | 5 +- .../StaticAnalyzer/Frontend/CheckerRegistry.cpp | 4 +- .../clang/lib/Support/RISCVVIntrinsicUtils.cpp | 955 + .../clang/lib/Testing/CommandLineArgs.cpp | 42 + contrib/llvm-project/clang/lib/Testing/TestAST.cpp | 162 + .../clang/lib/Tooling/Core/Replacement.cpp | 4 +- .../DependencyScanningFilesystem.cpp | 124 +- .../DependencyScanningService.cpp | 4 +- .../DependencyScanning/DependencyScanningTool.cpp | 55 +- .../DependencyScanningWorker.cpp | 112 +- .../DependencyScanning/ModuleDepCollector.cpp | 129 +- .../lib/Tooling/Inclusions/HeaderIncludes.cpp | 3 +- .../lib/Tooling/Inclusions/StandardLibrary.cpp | 165 + .../Tooling/InterpolatingCompilationDatabase.cpp | 2 +- .../Refactoring/Rename/USRFindingAction.cpp | 6 +- .../clang/lib/Tooling/Syntax/BuildTree.cpp | 4 +- .../clang/lib/Tooling/Transformer/RewriteRule.cpp | 53 +- .../clang/lib/Tooling/Transformer/Stencil.cpp | 2 +- .../clang/lib/Tooling/Transformer/Transformer.cpp | 58 +- .../clang/tools/clang-format/ClangFormat.cpp | 56 +- .../clang/tools/clang-repl/ClangRepl.cpp | 30 +- .../llvm-project/clang/tools/driver/cc1_main.cpp | 3 +- .../llvm-project/clang/tools/driver/cc1as_main.cpp | 28 +- contrib/llvm-project/clang/tools/driver/driver.cpp | 64 +- .../clang/utils/TableGen/ClangAttrEmitter.cpp | 437 +- .../utils/TableGen/ClangDiagnosticsEmitter.cpp | 16 +- .../utils/TableGen/ClangOpenCLBuiltinEmitter.cpp | 108 +- .../clang/utils/TableGen/ClangOptionDocEmitter.cpp | 28 +- .../utils/TableGen/ClangSACheckersEmitter.cpp | 41 +- .../clang/utils/TableGen/MveEmitter.cpp | 19 +- .../clang/utils/TableGen/RISCVVEmitter.cpp | 1069 +- .../compiler-rt/{lib => include}/orc/c_api.h | 3 - .../compiler-rt/include/profile/InstrProfData.inc | 4 +- .../compiler-rt/include/profile/MIBEntryDef.inc | 47 + .../compiler-rt/include/profile/MemProfData.inc | 139 +- .../compiler-rt/lib/asan/asan_allocator.cpp | 17 +- .../compiler-rt/lib/asan/asan_errors.cpp | 4 +- .../compiler-rt/lib/asan/asan_errors.h | 2 +- .../compiler-rt/lib/asan/asan_fake_stack.cpp | 2 - .../compiler-rt/lib/asan/asan_flags.cpp | 2 +- .../compiler-rt/lib/asan/asan_flags.inc | 11 +- .../compiler-rt/lib/asan/asan_fuchsia.cpp | 21 +- .../compiler-rt/lib/asan/asan_globals.cpp | 29 +- .../compiler-rt/lib/asan/asan_interceptors.cpp | 12 +- .../compiler-rt/lib/asan/asan_interceptors.h | 4 +- .../compiler-rt/lib/asan/asan_interface_internal.h | 5 +- .../compiler-rt/lib/asan/asan_internal.h | 38 +- .../llvm-project/compiler-rt/lib/asan/asan_mac.cpp | 4 +- .../compiler-rt/lib/asan/asan_malloc_mac.cpp | 2 +- .../compiler-rt/lib/asan/asan_mapping.h | 6 +- .../compiler-rt/lib/asan/asan_new_delete.cpp | 12 +- .../compiler-rt/lib/asan/asan_poisoning.cpp | 4 +- .../compiler-rt/lib/asan/asan_posix.cpp | 47 +- .../compiler-rt/lib/asan/asan_report.cpp | 6 +- .../llvm-project/compiler-rt/lib/asan/asan_rtl.cpp | 38 +- .../compiler-rt/lib/asan/asan_rtl_static.cpp | 21 + .../compiler-rt/lib/asan/asan_rtl_x86_64.S | 10 +- .../compiler-rt/lib/asan/asan_thread.cpp | 4 +- .../llvm-project/compiler-rt/lib/asan/asan_win.cpp | 38 +- .../compiler-rt/lib/builtins/aarch64/fp_mode.c | 4 +- .../compiler-rt/lib/builtins/arm/fp_mode.c | 4 +- .../compiler-rt/lib/builtins/arm/sync-ops.h | 22 +- .../llvm-project/compiler-rt/lib/builtins/atomic.c | 2 + .../compiler-rt/lib/builtins/avr/divmodhi4.S | 57 + .../compiler-rt/lib/builtins/avr/divmodqi4.S | 44 + .../compiler-rt/lib/builtins/avr/exit.S | 18 + .../compiler-rt/lib/builtins/avr/mulhi3.S | 71 + .../compiler-rt/lib/builtins/avr/mulqi3.S | 53 + .../compiler-rt/lib/builtins/avr/udivmodhi4.S | 49 + .../compiler-rt/lib/builtins/avr/udivmodqi4.S | 39 + .../compiler-rt/lib/builtins/clear_cache.c | 4 +- .../compiler-rt/lib/builtins/cpu_model.c | 43 +- .../llvm-project/compiler-rt/lib/builtins/emutls.c | 12 +- .../compiler-rt/lib/builtins/fp_compare_impl.inc | 3 + .../compiler-rt/lib/builtins/fp_mode.c | 4 +- .../compiler-rt/lib/builtins/fp_trunc.h | 6 + .../compiler-rt/lib/builtins/gcc_personality_v0.c | 2 +- .../compiler-rt/lib/builtins/i386/fp_mode.c | 4 +- .../compiler-rt/lib/builtins/int_endianness.h | 2 +- .../compiler-rt/lib/builtins/os_version_check.c | 4 +- .../compiler-rt/lib/builtins/truncdfbf2.c | 13 + .../compiler-rt/lib/builtins/truncsfbf2.c | 13 + .../llvm-project/compiler-rt/lib/crt/crtbegin.c | 4 +- .../llvm-project/compiler-rt/lib/dfsan/dfsan.cpp | 27 +- contrib/llvm-project/compiler-rt/lib/dfsan/dfsan.h | 6 + .../compiler-rt/lib/dfsan/dfsan_custom.cpp | 213 +- .../compiler-rt/lib/dfsan/dfsan_thread.cpp | 28 +- .../compiler-rt/lib/dfsan/dfsan_thread.h | 4 +- .../compiler-rt/lib/fuzzer/FuzzerInternal.h | 5 +- .../compiler-rt/lib/fuzzer/FuzzerLoop.cpp | 24 +- .../compiler-rt/lib/fuzzer/FuzzerTracePC.cpp | 9 +- .../llvm-project/compiler-rt/lib/hwasan/hwasan.cpp | 1 + .../llvm-project/compiler-rt/lib/hwasan/hwasan.h | 15 - .../compiler-rt/lib/hwasan/hwasan_allocator.cpp | 4 +- .../compiler-rt/lib/hwasan/hwasan_fuchsia.cpp | 20 +- .../compiler-rt/lib/hwasan/hwasan_new_delete.cpp | 63 +- .../compiler-rt/lib/hwasan/hwasan_preinit.cpp | 23 + .../compiler-rt/lib/interception/interception.h | 18 +- .../lib/interception/interception_mac.cpp | 4 +- .../lib/interception/interception_mac.h | 4 +- .../lib/interception/interception_type_test.cpp | 4 +- .../lib/interception/interception_win.cpp | 2 +- contrib/llvm-project/compiler-rt/lib/lsan/lsan.cpp | 9 +- contrib/llvm-project/compiler-rt/lib/lsan/lsan.h | 1 + .../compiler-rt/lib/lsan/lsan_allocator.cpp | 16 +- .../compiler-rt/lib/lsan/lsan_allocator.h | 10 +- .../compiler-rt/lib/lsan/lsan_common.cpp | 25 +- .../compiler-rt/lib/lsan/lsan_common.h | 4 +- .../compiler-rt/lib/lsan/lsan_common_fuchsia.cpp | 9 + .../compiler-rt/lib/lsan/lsan_common_mac.cpp | 4 +- .../compiler-rt/lib/lsan/lsan_fuchsia.cpp | 7 + .../compiler-rt/lib/lsan/lsan_interceptors.cpp | 10 +- .../llvm-project/compiler-rt/lib/lsan/lsan_mac.cpp | 4 +- .../compiler-rt/lib/lsan/lsan_malloc_mac.cpp | 4 +- .../compiler-rt/lib/lsan/lsan_posix.cpp | 5 + .../compiler-rt/lib/memprof/memprof_allocator.cpp | 55 +- .../compiler-rt/lib/memprof/memprof_internal.h | 15 - .../compiler-rt/lib/memprof/memprof_rtl.cpp | 2 + .../compiler-rt/lib/memprof/tests/rawprofile.cpp | 4 +- contrib/llvm-project/compiler-rt/lib/msan/msan.cpp | 33 +- contrib/llvm-project/compiler-rt/lib/msan/msan.h | 26 +- .../compiler-rt/lib/msan/msan_allocator.cpp | 7 +- .../compiler-rt/lib/msan/msan_flags.inc | 2 +- .../compiler-rt/lib/msan/msan_interceptors.cpp | 43 +- contrib/llvm-project/compiler-rt/lib/orc/adt.h | 19 +- contrib/llvm-project/compiler-rt/lib/orc/common.h | 2 +- .../compiler-rt/lib/orc/dlfcn_wrapper.cpp | 52 + .../compiler-rt/lib/orc/elfnix_platform.cpp | 47 +- .../compiler-rt/lib/orc/elfnix_platform.h | 2 +- .../compiler-rt/lib/orc/executor_address.h | 11 + .../lib/orc/macho_ehframe_registration.cpp | 2 +- .../compiler-rt/lib/orc/macho_platform.cpp | 914 +- .../compiler-rt/lib/orc/macho_platform.h | 59 - .../compiler-rt/lib/orc/wrapper_function_utils.h | 2 +- .../compiler-rt/lib/profile/GCDAProfiling.c | 14 +- .../compiler-rt/lib/profile/InstrProfiling.c | 2 +- .../compiler-rt/lib/profile/InstrProfilingFile.c | 18 +- .../lib/profile/InstrProfilingInternal.c | 2 +- .../compiler-rt/lib/profile/InstrProfilingMerge.c | 2 +- .../lib/profile/InstrProfilingPlatformFuchsia.c | 2 +- .../lib/profile/InstrProfilingPlatformLinux.c | 44 +- .../lib/profile/InstrProfilingPlatformOther.c | 4 +- .../compiler-rt/lib/profile/InstrProfilingUtil.c | 6 +- .../compiler-rt/lib/profile/InstrProfilingValue.c | 4 +- .../compiler-rt/lib/safestack/safestack_platform.h | 2 +- .../sanitizer_allocator_report.cpp | 3 +- .../lib/sanitizer_common/sanitizer_atomic_clang.h | 4 +- .../sanitizer_chained_origin_depot.cpp | 2 + .../sanitizer_chained_origin_depot.h | 1 + .../lib/sanitizer_common/sanitizer_common.cpp | 50 +- .../lib/sanitizer_common/sanitizer_common.h | 33 +- .../sanitizer_common_interceptors.inc | 251 +- .../sanitizer_common_interceptors_ioctl.inc | 10 +- .../sanitizer_common/sanitizer_common_libcdep.cpp | 5 + .../sanitizer_common/sanitizer_common_nolibc.cpp | 2 +- .../sanitizer_coverage_fuchsia.cpp | 1 + .../sanitizer_coverage_libcdep_new.cpp | 20 +- .../lib/sanitizer_common/sanitizer_errno.h | 2 +- .../lib/sanitizer_common/sanitizer_file.cpp | 9 +- .../lib/sanitizer_common/sanitizer_file.h | 2 +- .../lib/sanitizer_common/sanitizer_flags.inc | 6 +- .../lib/sanitizer_common/sanitizer_fuchsia.cpp | 54 +- .../sanitizer_interface_internal.h | 178 +- .../lib/sanitizer_common/sanitizer_internal_defs.h | 11 +- .../lib/sanitizer_common/sanitizer_libignore.cpp | 4 +- .../lib/sanitizer_common/sanitizer_linux.cpp | 130 +- .../lib/sanitizer_common/sanitizer_linux.h | 1 + .../sanitizer_common/sanitizer_linux_libcdep.cpp | 14 +- .../lib/sanitizer_common/sanitizer_mac.cpp | 33 +- .../lib/sanitizer_common/sanitizer_mac.h | 10 +- .../lib/sanitizer_common/sanitizer_mac_libcdep.cpp | 4 +- .../lib/sanitizer_common/sanitizer_malloc_mac.inc | 2 +- .../lib/sanitizer_common/sanitizer_mutex.h | 16 +- .../lib/sanitizer_common/sanitizer_openbsd.cpp | 0 .../lib/sanitizer_common/sanitizer_platform.h | 93 +- .../sanitizer_platform_interceptors.h | 14 +- .../sanitizer_platform_limits_freebsd.cpp | 4 + .../sanitizer_platform_limits_freebsd.h | 37 + *** 848833 LINES SKIPPED *** From nobody Sun Apr 9 21:35:10 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvlkm4Pblz44J8S; Sun, 9 Apr 2023 21:35:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvlkm2yl0z4Lqk; Sun, 9 Apr 2023 21:35:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076112; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oY7xBSa9T6ZM5yLyyD4sc+cDg1Lt9/H2qaFwFAMtmkw=; b=WN2YHqiKZF8NAIuoqs4e4c2i/Z3QQg6TJbOiAoIMTGfCwNyZ+ahxN0WmmFMqzPcv4C91R/ 64Y/TZL9Tj3scX2KZKbG4C9jrTbXiAEBCCbyM9W8HqVKnbuWH8PAiBFmE1xOseQMyWiz5n Q/hnijqEEtfOH4el76b6ltY4YbyxxlprqGnkUNo0cxHWBfaRHGLZBwGyAasAfYZSeaBPE0 msTSVYLB481PN+/KG8Mjrxt+PoYFoWUeoxCYXtqc8vZAx64EKx8wtGthGGUngiS6dkaUjI KniynUnPj7CFByE8tqagbO38CaA0vGTCvZ7EDcHr4/wT/qClaBONexpe0oposA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076112; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oY7xBSa9T6ZM5yLyyD4sc+cDg1Lt9/H2qaFwFAMtmkw=; b=oR0o1B5jxj9Ygb1bwZAnaj6IcY37OUhMqQLD2M8KnUkLCvKwGy3Ub2z2YQraAh0VNxLe2J gT4U4OihXvyx8nMZg9/nQztXD7zrIAaofDAP8rCQljf/Z+DBCT0ZF9f2POXmCxs5pGY4RY TolG93/t4KYTH8hv5Mq8SAPAGnkS8C+0EuxI6UW5wQCizt74e6jbXI4BpxlxSF1QEdKHF9 j0YfV1BL91GzHb3wn+MmVFe53qHSWwL7SFMNUt1UBwsIr0YF6TN2zwFz3Tb11TL3R+gRbb 0xkUvmE4DYIo6iM7qJ92x5Oy4NthIhHTqSzAD6qmkSkofMenVhkSAzOm+PeC4A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076112; a=rsa-sha256; cv=none; b=Oha0I0/NcZJV4Ie9d5BC7TTWHhOufOFhiZC5PH1e3jKdCYhl/K+Irs21V0f4k1QiK/N1Zp GUAnCdPgyRZxqcVyhHuufI2M7e491ToBqpH0ZxQiBClOBF7qaTGqWtkdRzdp3Ku4WVKpps okmJO4zVqL7vY1klMfiZJz/0IZv3cPlg/j2/ltf/Kqq3Cs5c15OZ4AqG8YTHei1KRZAErr avz8mIJrsyz4TordJM169hOUgmi9+aMIlyiYEvthABgpS3hFOxIBpvt47LzA9nwhcaMJ0R 28DANuE7WiI+b4FXmtxJn4nLdhIpcwDVKcZupHT6RMLiYlBhiXx1A6X3ybwWVg== 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 4Pvlkm10ZvzPf7; Sun, 9 Apr 2023 21:35:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZCjv081495; Sun, 9 Apr 2023 21:35:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZACF081493; Sun, 9 Apr 2023 21:35:10 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:10 GMT Message-Id: <202304092135.339LZACF081493@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 7982d1ea2c5e - stable/13 - Merge llvm-project main llvmorg-15-init-16436-g18a6ab5b8d1f List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 7982d1ea2c5eb2ea2261fd82ebd7eebdda0e58b3 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=7982d1ea2c5eb2ea2261fd82ebd7eebdda0e58b3 commit 7982d1ea2c5eb2ea2261fd82ebd7eebdda0e58b3 Author: Dimitry Andric AuthorDate: 2022-07-14 18:58:48 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:54:46 +0000 Merge llvm-project main llvmorg-15-init-16436-g18a6ab5b8d1f This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-15-init-16436-g18a6ab5b8d1f. PR: 265425 MFC after: 2 weeks (cherry picked from commit 753f127f3ace09432b2baeffd71a308760641a62) --- .../clang/include/clang/APINotes/Types.h | 2 +- .../clang/include/clang/AST/ASTContext.h | 42 +- .../clang/include/clang/AST/ASTImportError.h | 1 - .../clang/include/clang/AST/DeclTemplate.h | 13 +- .../clang/include/clang/AST/PropertiesBase.td | 10 +- .../FlowSensitive/DataflowAnalysisContext.h | 28 +- .../clang/Analysis/FlowSensitive/DebugSupport.h | 63 + .../include/clang/Analysis/FlowSensitive/Solver.h | 62 +- .../clang/include/clang/Analysis/SelectorExtras.h | 2 +- .../clang/include/clang/Basic/AlignedAllocation.h | 4 +- .../llvm-project/clang/include/clang/Basic/Attr.td | 11 + .../clang/include/clang/Basic/AttrDocs.td | 47 +- .../clang/include/clang/Basic/BuiltinsX86.def | 1 + .../clang/include/clang/Basic/CodeGenOptions.def | 1 + .../clang/include/clang/Basic/CodeGenOptions.h | 3 + .../include/clang/Basic/DiagnosticDriverKinds.td | 2 - .../clang/include/clang/Basic/DiagnosticGroups.td | 4 + .../include/clang/Basic/DiagnosticLexKinds.td | 11 +- .../include/clang/Basic/DiagnosticSemaKinds.td | 34 +- .../clang/include/clang/Basic/MakeSupport.h | 23 + .../clang/include/clang/Basic/TargetInfo.h | 6 +- .../clang/include/clang/Basic/riscv_vector.td | 99 +- .../clang/include/clang/Driver/Options.td | 27 +- .../clang/include/clang/Frontend/FrontendActions.h | 4 + .../clang/include/clang/Lex/Preprocessor.h | 63 + .../include/clang/Sema/HLSLExternalSemaSource.h | 41 + .../llvm-project/clang/include/clang/Sema/Sema.h | 45 +- .../StaticAnalyzer/Core/PathSensitive/CallEvent.h | 5 +- .../Core/PathSensitive/ConstraintManager.h | 12 +- .../Core/PathSensitive/SMTConstraintManager.h | 2 +- .../include/clang/Support/RISCVVIntrinsicUtils.h | 6 +- .../DependencyScanningFilesystem.h | 4 +- .../DependencyScanning/DependencyScanningTool.h | 12 +- .../DependencyScanning/ModuleDepCollector.h | 31 +- contrib/llvm-project/clang/lib/AST/ASTContext.cpp | 169 +- contrib/llvm-project/clang/lib/AST/ASTImporter.cpp | 10 - contrib/llvm-project/clang/lib/AST/AttrImpl.cpp | 6 +- contrib/llvm-project/clang/lib/AST/DeclPrinter.cpp | 6 + .../llvm-project/clang/lib/AST/FormatString.cpp | 6 + .../clang/lib/AST/Interp/ByteCodeExprGen.cpp | 2 +- .../llvm-project/clang/lib/Analysis/BodyFarm.cpp | 4 +- .../Analysis/FlowSensitive/ControlFlowContext.cpp | 2 +- .../FlowSensitive/DataflowAnalysisContext.cpp | 8 +- .../lib/Analysis/FlowSensitive/DebugSupport.cpp | 197 ++ .../FlowSensitive/TypeErasedDataflowAnalysis.cpp | 6 +- .../FlowSensitive/WatchedLiteralsSolver.cpp | 66 +- .../clang/lib/Analysis/PathDiagnostic.cpp | 4 +- .../clang/lib/Analysis/UninitializedValues.cpp | 4 +- .../llvm-project/clang/lib/Basic/LangStandards.cpp | 4 +- .../llvm-project/clang/lib/Basic/MakeSupport.cpp | 35 + .../llvm-project/clang/lib/Basic/TargetInfo.cpp | 2 +- .../llvm-project/clang/lib/Basic/Targets/RISCV.cpp | 2 +- .../llvm-project/clang/lib/Basic/Targets/SystemZ.h | 8 + .../llvm-project/clang/lib/Basic/Targets/X86.cpp | 6 + contrib/llvm-project/clang/lib/Basic/Targets/X86.h | 7 +- .../llvm-project/clang/lib/CodeGen/BackendUtil.cpp | 12 + .../llvm-project/clang/lib/CodeGen/CGCUDANV.cpp | 11 +- contrib/llvm-project/clang/lib/CodeGen/CGCall.cpp | 3 + contrib/llvm-project/clang/lib/CodeGen/CGClass.cpp | 4 +- .../clang/lib/CodeGen/CGOpenMPRuntime.cpp | 140 +- .../clang/lib/CodeGen/CGOpenMPRuntime.h | 10 +- .../clang/lib/CodeGen/CGStmtOpenMP.cpp | 48 +- .../clang/lib/CodeGen/CodeGenFunction.cpp | 14 + .../clang/lib/CodeGen/CodeGenModule.cpp | 10 + .../llvm-project/clang/lib/CodeGen/CodeGenModule.h | 19 + .../llvm-project/clang/lib/CodeGen/CodeGenTBAA.cpp | 37 +- .../clang/lib/CodeGen/SanitizerMetadata.cpp | 18 +- contrib/llvm-project/clang/lib/Driver/Driver.cpp | 39 +- .../clang/lib/Driver/ToolChains/AVR.cpp | 8 +- .../clang/lib/Driver/ToolChains/Clang.cpp | 234 +- .../clang/lib/Driver/ToolChains/CommonArgs.cpp | 3 +- .../clang/lib/Driver/ToolChains/Darwin.cpp | 14 +- .../clang/lib/Driver/ToolChains/Gnu.cpp | 2 +- .../clang/lib/Driver/ToolChains/Hexagon.cpp | 4 +- .../clang/lib/Driver/ToolChains/MinGW.cpp | 28 +- .../clang/lib/Driver/ToolChains/MinGW.h | 1 + .../clang/lib/Driver/ToolChains/RISCVToolchain.cpp | 7 +- .../Serialization/SymbolGraphSerializer.cpp | 4 +- .../clang/lib/Format/ContinuationIndenter.cpp | 6 +- .../clang/lib/Format/ContinuationIndenter.h | 2 +- contrib/llvm-project/clang/lib/Format/Format.cpp | 31 +- .../llvm-project/clang/lib/Format/FormatToken.cpp | 2 +- .../llvm-project/clang/lib/Format/FormatToken.h | 9 + .../clang/lib/Format/MacroCallReconstructor.cpp | 573 +++++ contrib/llvm-project/clang/lib/Format/Macros.h | 279 ++- .../clang/lib/Format/TokenAnnotator.cpp | 8 +- .../clang/lib/Format/UnwrappedLineFormatter.cpp | 15 +- .../clang/lib/Format/UnwrappedLineParser.cpp | 16 +- .../clang/lib/Format/UnwrappedLineParser.h | 3 +- .../clang/lib/Frontend/CompilerInstance.cpp | 21 +- .../clang/lib/Frontend/CompilerInvocation.cpp | 28 +- .../clang/lib/Frontend/FrontendAction.cpp | 9 + .../clang/lib/Frontend/FrontendActions.cpp | 3 +- .../clang/lib/Frontend/InitPreprocessor.cpp | 4 +- .../clang/lib/Headers/hlsl/hlsl_basic_types.h | 54 +- contrib/llvm-project/clang/lib/Headers/opencl-c.h | 18 - .../llvm-project/clang/lib/Headers/rdpruintrin.h | 57 + contrib/llvm-project/clang/lib/Headers/stdatomic.h | 4 - contrib/llvm-project/clang/lib/Headers/x86intrin.h | 4 + .../clang/lib/Lex/DependencyDirectivesScanner.cpp | 2 +- contrib/llvm-project/clang/lib/Lex/Lexer.cpp | 117 +- .../llvm-project/clang/lib/Lex/LiteralSupport.cpp | 10 +- contrib/llvm-project/clang/lib/Lex/MacroInfo.cpp | 2 +- contrib/llvm-project/clang/lib/Lex/ModuleMap.cpp | 4 +- .../llvm-project/clang/lib/Lex/PPDirectives.cpp | 90 +- .../clang/lib/Lex/PPMacroExpansion.cpp | 4 +- .../clang/lib/Lex/PreprocessingRecord.cpp | 2 +- .../llvm-project/clang/lib/Lex/Preprocessor.cpp | 14 + .../llvm-project/clang/lib/Parse/ParseOpenMP.cpp | 18 +- contrib/llvm-project/clang/lib/Parse/Parser.cpp | 18 +- .../clang/lib/Sema/HLSLExternalSemaSource.cpp | 96 + contrib/llvm-project/clang/lib/Sema/SemaCUDA.cpp | 13 +- .../llvm-project/clang/lib/Sema/SemaChecking.cpp | 403 ++-- .../clang/lib/Sema/SemaCodeComplete.cpp | 4 +- contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp | 72 +- .../llvm-project/clang/lib/Sema/SemaDeclAttr.cpp | 46 +- contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp | 48 +- .../llvm-project/clang/lib/Sema/SemaExprCXX.cpp | 35 + contrib/llvm-project/clang/lib/Sema/SemaModule.cpp | 13 + contrib/llvm-project/clang/lib/Sema/SemaOpenMP.cpp | 79 +- .../llvm-project/clang/lib/Sema/SemaTemplate.cpp | 65 +- .../clang/lib/Sema/SemaTemplateInstantiateDecl.cpp | 9 +- .../clang/lib/Serialization/ASTReader.cpp | 16 +- .../clang/lib/Serialization/ASTWriter.cpp | 13 +- .../Checkers/BasicObjCFoundationChecks.cpp | 4 +- .../lib/StaticAnalyzer/Checkers/CStringChecker.cpp | 2 +- .../lib/StaticAnalyzer/Checkers/MallocChecker.cpp | 9 +- .../Checkers/NonNullParamChecker.cpp | 4 +- .../lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp | 3 +- .../lib/StaticAnalyzer/Core/AnalyzerOptions.cpp | 6 +- .../clang/lib/StaticAnalyzer/Core/BugReporter.cpp | 6 +- .../StaticAnalyzer/Core/BugReporterVisitors.cpp | 8 +- .../Core/ExprEngineCallAndReturn.cpp | 2 +- .../lib/StaticAnalyzer/Core/PlistDiagnostics.cpp | 4 +- .../clang/lib/StaticAnalyzer/Core/SValBuilder.cpp | 6 + .../clang/lib/Support/RISCVVIntrinsicUtils.cpp | 4 +- .../DependencyScanning/DependencyScanningTool.cpp | 19 +- .../DependencyScanning/ModuleDepCollector.cpp | 45 +- .../clang/tools/clang-format/ClangFormat.cpp | 16 +- contrib/llvm-project/clang/tools/driver/driver.cpp | 4 +- .../clang/utils/TableGen/RISCVVEmitter.cpp | 22 +- .../compiler-rt/lib/asan/asan_globals.cpp | 4 +- .../compiler-rt/lib/asan/asan_interceptors.cpp | 4 +- .../llvm-project/compiler-rt/lib/asan/asan_rtl.cpp | 3 - .../llvm-project/compiler-rt/lib/hwasan/hwasan.cpp | 6 + .../compiler-rt/lib/hwasan/hwasan_fuchsia.cpp | 6 +- .../lib/hwasan/hwasan_interface_internal.h | 8 + .../compiler-rt/lib/hwasan/hwasan_linux.cpp | 26 +- .../compiler-rt/lib/memprof/memprof_rtl.cpp | 3 - .../compiler-rt/lib/orc/elfnix_platform.cpp | 13 + .../compiler-rt/lib/orc/elfnix_tls.aarch64.S | 94 + .../compiler-rt/lib/profile/GCDAProfiling.c | 11 +- .../lib/sanitizer_common/sanitizer_common.h | 1 - .../sanitizer_common_interceptors.inc | 28 +- .../lib/sanitizer_common/sanitizer_flags.inc | 7 +- .../lib/sanitizer_common/sanitizer_fuchsia.cpp | 1 - .../lib/sanitizer_common/sanitizer_linux.cpp | 30 +- .../lib/sanitizer_common/sanitizer_linux.h | 3 + .../lib/sanitizer_common/sanitizer_mac.cpp | 136 +- .../lib/sanitizer_common/sanitizer_platform.h | 7 +- .../sanitizer_platform_limits_posix.cpp | 10 +- .../sanitizer_common/sanitizer_procmaps_mac.cpp | 8 +- .../lib/sanitizer_common/sanitizer_vector.h | 4 +- .../lib/sanitizer_common/sanitizer_win.cpp | 4 - .../compiler-rt/lib/scudo/standalone/fuchsia.cpp | 9 +- .../lib/scudo/standalone/include/scudo/interface.h | 14 +- .../compiler-rt/lib/scudo/standalone/release.h | 5 +- .../compiler-rt/lib/scudo/standalone/vector.h | 7 +- .../compiler-rt/lib/tsan/rtl/tsan_rtl.cpp | 3 - .../libcxx/include/__algorithm/binary_search.h | 10 +- .../libcxx/include/__algorithm/count.h | 4 +- .../libcxx/include/__algorithm/equal_range.h | 18 +- .../llvm-project/libcxx/include/__algorithm/fill.h | 12 +- .../libcxx/include/__algorithm/fill_n.h | 8 +- .../llvm-project/libcxx/include/__algorithm/find.h | 4 +- .../libcxx/include/__algorithm/find_end.h | 181 +- .../include/__algorithm/iterator_operations.h | 68 +- .../libcxx/include/__algorithm/lower_bound.h | 15 +- .../libcxx/include/__algorithm/make_heap.h | 43 +- .../libcxx/include/__algorithm/make_projected.h | 22 +- .../libcxx/include/__algorithm/minmax_element.h | 8 +- .../libcxx/include/__algorithm/nth_element.h | 44 +- .../libcxx/include/__algorithm/partial_sort.h | 9 +- .../libcxx/include/__algorithm/pop_heap.h | 60 +- .../libcxx/include/__algorithm/push_heap.h | 71 +- .../include/__algorithm/ranges_binary_search.h | 4 +- .../include/__algorithm/ranges_equal_range.h | 74 + .../libcxx/include/__algorithm/ranges_find_end.h | 113 + .../libcxx/include/__algorithm/ranges_generate.h | 73 + .../libcxx/include/__algorithm/ranges_generate_n.h | 65 + .../libcxx/include/__algorithm/ranges_includes.h | 75 + .../include/__algorithm/ranges_inplace_merge.h | 73 + .../libcxx/include/__algorithm/ranges_is_heap.h | 70 + .../include/__algorithm/ranges_is_heap_until.h | 71 + .../include/__algorithm/ranges_lower_bound.h | 4 +- .../libcxx/include/__algorithm/ranges_make_heap.h | 79 + .../libcxx/include/__algorithm/ranges_merge.h | 142 ++ .../include/__algorithm/ranges_nth_element.h | 79 + .../include/__algorithm/ranges_partial_sort_copy.h | 88 + .../libcxx/include/__algorithm/ranges_partition.h | 74 + .../include/__algorithm/ranges_partition_copy.h | 82 + .../include/__algorithm/ranges_partition_point.h | 71 + .../libcxx/include/__algorithm/ranges_pop_heap.h | 80 + .../libcxx/include/__algorithm/ranges_push_heap.h | 79 + .../libcxx/include/__algorithm/ranges_remove.h | 64 + .../include/__algorithm/ranges_remove_copy.h | 81 + .../include/__algorithm/ranges_remove_copy_if.h | 80 + .../libcxx/include/__algorithm/ranges_remove_if.h | 85 + .../include/__algorithm/ranges_replace_copy.h | 84 + .../include/__algorithm/ranges_replace_copy_if.h | 81 + .../include/__algorithm/ranges_reverse_copy.h | 67 + .../include/__algorithm/ranges_rotate_copy.h | 68 + .../libcxx/include/__algorithm/ranges_search.h | 134 ++ .../libcxx/include/__algorithm/ranges_search_n.h | 120 ++ .../include/__algorithm/ranges_set_difference.h | 104 + .../include/__algorithm/ranges_set_intersection.h | 117 + .../__algorithm/ranges_set_symmetric_difference.h | 116 + .../libcxx/include/__algorithm/ranges_set_union.h | 86 + .../libcxx/include/__algorithm/ranges_shuffle.h | 74 + .../libcxx/include/__algorithm/ranges_sort_heap.h | 79 + .../include/__algorithm/ranges_stable_partition.h | 75 + .../libcxx/include/__algorithm/ranges_unique.h | 74 + .../include/__algorithm/ranges_unique_copy.h | 88 + .../include/__algorithm/ranges_upper_bound.h | 4 +- .../libcxx/include/__algorithm/remove.h | 6 +- .../libcxx/include/__algorithm/remove_copy.h | 4 +- .../libcxx/include/__algorithm/search.h | 176 +- .../libcxx/include/__algorithm/search_n.h | 159 +- .../libcxx/include/__algorithm/set_difference.h | 81 +- .../libcxx/include/__algorithm/set_intersection.h | 101 +- .../include/__algorithm/set_symmetric_difference.h | 111 +- .../llvm-project/libcxx/include/__algorithm/sort.h | 7 +- .../libcxx/include/__algorithm/sort_heap.h | 33 +- .../libcxx/include/__algorithm/upper_bound.h | 12 +- .../llvm-project/libcxx/include/__bit_reference | 16 +- contrib/llvm-project/libcxx/include/__bits | 17 + .../libcxx/include/__charconv/tables.h | 50 + .../libcxx/include/__charconv/to_chars_base_10.h | 60 +- contrib/llvm-project/libcxx/include/__chrono/day.h | 23 +- .../libcxx/include/__chrono/duration.h | 8 +- .../libcxx/include/__chrono/time_point.h | 4 +- .../llvm-project/libcxx/include/__chrono/year.h | 9 +- .../libcxx/include/__chrono/year_month_weekday.h | 8 +- contrib/llvm-project/libcxx/include/__config | 56 +- contrib/llvm-project/libcxx/include/__debug | 16 - .../libcxx/include/__debug_utils/randomize_range.h | 42 + .../libcxx/include/__filesystem/copy_options.h | 34 +- .../include/__filesystem/directory_options.h | 46 +- .../libcxx/include/__filesystem/operations.h | 22 +- .../libcxx/include/__filesystem/perm_options.h | 34 +- .../libcxx/include/__filesystem/perms.h | 28 +- .../libcxx/include/__format/format_arg.h | 23 +- .../libcxx/include/__format/format_arg_store.h | 10 +- .../libcxx/include/__format/formatter.h | 227 -- .../libcxx/include/__format/formatter_bool.h | 1 + .../libcxx/include/__format/formatter_char.h | 2 +- .../include/__format/formatter_floating_point.h | 415 ++-- .../libcxx/include/__format/formatter_integer.h | 33 +- .../libcxx/include/__format/formatter_integral.h | 5 +- .../libcxx/include/__format/formatter_output.h | 59 +- .../include/__format/parser_std_format_spec.h | 893 +------- .../libcxx/include/__functional/default_searcher.h | 8 +- .../libcxx/include/__functional/function.h | 4 +- contrib/llvm-project/libcxx/include/__hash_table | 63 +- .../include/__iterator/back_insert_iterator.h | 8 +- .../include/__iterator/front_insert_iterator.h | 8 +- .../libcxx/include/__iterator/insert_iterator.h | 8 +- .../libcxx/include/__iterator/iterator_traits.h | 12 + .../libcxx/include/__iterator/ostream_iterator.h | 4 +- .../libcxx/include/__iterator/reverse_iterator.h | 17 +- contrib/llvm-project/libcxx/include/__mutex_base | 12 +- .../llvm-project/libcxx/include/__numeric/iota.h | 6 +- .../__random/piecewise_constant_distribution.h | 20 +- .../__random/piecewise_linear_distribution.h | 20 +- .../libcxx/include/__ranges/zip_view.h | 8 +- contrib/llvm-project/libcxx/include/__split_buffer | 26 +- .../libcxx/include/__string/char_traits.h | 4 +- .../libcxx/include/__threading_support | 22 +- contrib/llvm-project/libcxx/include/__tree | 32 +- contrib/llvm-project/libcxx/include/__tuple | 6 +- .../libcxx/include/__type_traits/extent.h | 6 +- .../include/__type_traits/has_virtual_destructor.h | 2 +- .../libcxx/include/__type_traits/is_array.h | 4 +- .../libcxx/include/__type_traits/is_assignable.h | 6 +- .../libcxx/include/__type_traits/is_compound.h | 6 +- .../libcxx/include/__type_traits/is_const.h | 4 +- .../libcxx/include/__type_traits/is_convertible.h | 6 +- .../libcxx/include/__type_traits/is_destructible.h | 6 +- .../libcxx/include/__type_traits/is_function.h | 4 +- .../libcxx/include/__type_traits/is_fundamental.h | 6 +- .../libcxx/include/__type_traits/is_integral.h | 4 +- .../__type_traits/is_member_function_pointer.h | 6 +- .../__type_traits/is_member_object_pointer.h | 6 +- .../include/__type_traits/is_member_pointer.h | 6 +- .../include/__type_traits/is_nothrow_assignable.h | 4 +- .../__type_traits/is_nothrow_constructible.h | 4 +- .../libcxx/include/__type_traits/is_object.h | 6 +- .../libcxx/include/__type_traits/is_pod.h | 4 +- .../libcxx/include/__type_traits/is_pointer.h | 6 +- .../libcxx/include/__type_traits/is_reference.h | 10 +- .../libcxx/include/__type_traits/is_scalar.h | 6 +- .../libcxx/include/__type_traits/is_signed.h | 6 +- .../include/__type_traits/is_standard_layout.h | 2 +- .../libcxx/include/__type_traits/is_trivial.h | 2 +- .../__type_traits/is_trivially_destructible.h | 6 +- .../libcxx/include/__type_traits/is_unsigned.h | 6 +- .../libcxx/include/__type_traits/is_void.h | 4 +- .../libcxx/include/__type_traits/is_volatile.h | 4 +- contrib/llvm-project/libcxx/include/algorithm | 234 ++ contrib/llvm-project/libcxx/include/any | 2 +- contrib/llvm-project/libcxx/include/array | 7 +- contrib/llvm-project/libcxx/include/atomic | 9 +- contrib/llvm-project/libcxx/include/barrier | 8 +- contrib/llvm-project/libcxx/include/charconv | 135 +- contrib/llvm-project/libcxx/include/chrono | 12 +- contrib/llvm-project/libcxx/include/cmath | 6 +- contrib/llvm-project/libcxx/include/codecvt | 96 +- .../llvm-project/libcxx/include/condition_variable | 2 +- contrib/llvm-project/libcxx/include/deque | 18 +- contrib/llvm-project/libcxx/include/exception | 6 +- .../libcxx/include/experimental/functional | 6 +- .../llvm-project/libcxx/include/experimental/simd | 12 +- contrib/llvm-project/libcxx/include/ext/hash_map | 24 +- contrib/llvm-project/libcxx/include/ext/hash_set | 24 +- contrib/llvm-project/libcxx/include/format | 93 +- contrib/llvm-project/libcxx/include/forward_list | 42 +- contrib/llvm-project/libcxx/include/future | 8 +- contrib/llvm-project/libcxx/include/list | 16 +- contrib/llvm-project/libcxx/include/map | 64 +- contrib/llvm-project/libcxx/include/memory | 4 +- .../libcxx/include/module.modulemap.in | 41 + contrib/llvm-project/libcxx/include/regex | 29 +- .../llvm-project/libcxx/include/scoped_allocator | 18 +- contrib/llvm-project/libcxx/include/shared_mutex | 4 +- contrib/llvm-project/libcxx/include/string_view | 4 +- contrib/llvm-project/libcxx/include/system_error | 4 +- contrib/llvm-project/libcxx/include/tuple | 16 +- contrib/llvm-project/libcxx/include/unordered_map | 52 +- contrib/llvm-project/libcxx/include/unordered_set | 40 +- contrib/llvm-project/libcxx/include/variant | 4 +- contrib/llvm-project/libcxx/include/vector | 68 +- contrib/llvm-project/libcxx/include/wchar.h | 8 +- contrib/llvm-project/lld/COFF/Config.h | 4 + contrib/llvm-project/lld/COFF/Driver.cpp | 35 +- contrib/llvm-project/lld/COFF/Options.td | 2 + contrib/llvm-project/lld/ELF/Arch/RISCV.cpp | 306 ++- contrib/llvm-project/lld/ELF/Config.h | 3 +- contrib/llvm-project/lld/ELF/Driver.cpp | 22 +- contrib/llvm-project/lld/ELF/InputSection.cpp | 29 +- contrib/llvm-project/lld/ELF/InputSection.h | 29 +- contrib/llvm-project/lld/ELF/LTO.cpp | 7 +- contrib/llvm-project/lld/ELF/Options.td | 2 + contrib/llvm-project/lld/ELF/OutputSections.cpp | 30 +- contrib/llvm-project/lld/ELF/OutputSections.h | 4 +- contrib/llvm-project/lld/ELF/Relocations.cpp | 9 +- contrib/llvm-project/lld/ELF/Relocations.h | 13 +- contrib/llvm-project/lld/ELF/Target.h | 4 + contrib/llvm-project/lld/ELF/Thunks.cpp | 29 +- contrib/llvm-project/lld/ELF/Writer.cpp | 38 +- contrib/llvm-project/lld/MachO/Arch/ARM.cpp | 36 + contrib/llvm-project/lld/MachO/Arch/ARM64.cpp | 208 +- .../llvm-project/lld/MachO/Arch/ARM64Common.cpp | 18 + contrib/llvm-project/lld/MachO/Arch/ARM64Common.h | 3 + contrib/llvm-project/lld/MachO/Arch/X86_64.cpp | 23 + contrib/llvm-project/lld/MachO/Config.h | 3 - contrib/llvm-project/lld/MachO/Driver.cpp | 1 - contrib/llvm-project/lld/MachO/InputFiles.cpp | 77 +- contrib/llvm-project/lld/MachO/InputFiles.h | 1 + contrib/llvm-project/lld/MachO/InputSection.cpp | 6 + contrib/llvm-project/lld/MachO/SymbolTable.cpp | 4 + contrib/llvm-project/lld/MachO/Target.h | 9 + .../llvm-project/lld/MachO/UnwindInfoSection.cpp | 2 +- contrib/llvm-project/lld/docs/ReleaseNotes.rst | 8 +- contrib/llvm-project/lld/tools/lld/lld.cpp | 6 + .../lldb/bindings/interface/SBSection.i | 4 + .../llvm-project/lldb/bindings/interface/SBTrace.i | 2 + .../llvm-project/lldb/include/lldb/API/SBSection.h | 6 + .../llvm-project/lldb/include/lldb/API/SBTrace.h | 22 + .../lldb/include/lldb/Core/Disassembler.h | 17 +- .../lldb/include/lldb/Expression/DWARFExpression.h | 128 +- .../include/lldb/Expression/DWARFExpressionList.h | 151 ++ .../lldb/include/lldb/Interpreter/CommandObject.h | 3 - .../lldb/include/lldb/Symbol/Function.h | 16 +- .../lldb/include/lldb/Symbol/ObjectFile.h | 2 + .../lldb/include/lldb/Symbol/TypeList.h | 7 +- .../lldb/include/lldb/Symbol/TypeMap.h | 8 +- .../lldb/include/lldb/Symbol/Variable.h | 14 +- .../lldb/include/lldb/Target/StackFrame.h | 4 +- .../llvm-project/lldb/include/lldb/Target/Trace.h | 26 +- .../lldb/include/lldb/Target/TraceCursor.h | 10 + .../lldb/include/lldb/Target/TraceDumper.h | 3 + .../lldb/include/lldb/Utility/Environment.h | 2 +- .../lldb/include/lldb/Utility/RangeMap.h | 4 + .../lldb/Utility/TraceIntelPTGDBRemotePackets.h | 5 + .../lldb/include/lldb/lldb-enumerations.h | 47 +- .../llvm-project/lldb/include/lldb/lldb-forward.h | 1 + .../llvm-project/lldb/source/API/SBInstruction.cpp | 7 +- .../lldb/source/API/SBInstructionList.cpp | 5 +- contrib/llvm-project/lldb/source/API/SBSection.cpp | 9 + contrib/llvm-project/lldb/source/API/SBTrace.cpp | 18 + .../source/Commands/CommandObjectDisassemble.cpp | 8 + .../source/Commands/CommandObjectDisassemble.h | 1 + .../lldb/source/Commands/CommandObjectProcess.cpp | 128 +- .../lldb/source/Commands/CommandObjectTarget.cpp | 69 +- .../lldb/source/Commands/CommandObjectThread.cpp | 33 +- .../lldb/source/Commands/CommandObjectTrace.cpp | 116 +- .../llvm-project/lldb/source/Commands/Options.td | 28 +- contrib/llvm-project/lldb/source/Core/Debugger.cpp | 15 +- .../llvm-project/lldb/source/Core/Disassembler.cpp | 376 +++- .../lldb/source/Core/DumpDataExtractor.cpp | 5 +- contrib/llvm-project/lldb/source/Core/Module.cpp | 19 +- .../lldb/source/Core/ValueObjectVariable.cpp | 19 +- .../lldb/source/Expression/DWARFExpression.cpp | 334 +-- .../lldb/source/Expression/DWARFExpressionList.cpp | 248 +++ .../lldb/source/Expression/IRExecutionUnit.cpp | 4 +- .../lldb/source/Expression/Materializer.cpp | 2 +- .../lldb/source/Interpreter/CommandObject.cpp | 21 +- .../source/Plugins/ABI/X86/ABIWindows_x86_64.h | 11 +- .../Disassembler/LLVMC/DisassemblerLLVMC.cpp | 6 +- .../Clang/ClangExpressionDeclMap.cpp | 53 +- .../Clang/ClangExpressionDeclMap.h | 4 +- .../Language/CPlusPlus/CPlusPlusLanguage.cpp | 8 + .../source/Plugins/Language/CPlusPlus/LibCxx.cpp | 279 ++- .../source/Plugins/Language/CPlusPlus/LibCxx.h | 50 + .../BSD-Archive/ObjectContainerBSDArchive.cpp | 208 +- .../BSD-Archive/ObjectContainerBSDArchive.h | 22 +- .../Plugins/ObjectFile/ELF/ObjectFileELF.cpp | 3 +- .../Plugins/ObjectFile/PDB/ObjectFilePDB.cpp | 2 - .../gdb-remote/GDBRemoteCommunicationClient.cpp | 4 +- .../gdb-remote/GDBRemoteCommunicationClient.h | 2 - .../SymbolFile/DWARF/DWARFASTParserClang.cpp | 2 +- .../source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp | 2 +- .../source/Plugins/SymbolFile/DWARF/DWARFDIE.h | 11 +- .../SymbolFile/DWARF/DWARFDebugInfoEntry.cpp | 19 +- .../Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h | 2 +- .../source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp | 11 + .../source/Plugins/SymbolFile/DWARF/DWARFUnit.h | 2 + .../Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp | 83 +- .../Plugins/SymbolFile/DWARF/SymbolFileDWARF.h | 1 + .../NativePDB/DWARFLocationExpression.cpp | 4 +- .../Plugins/SymbolFile/NativePDB/PdbUtil.cpp | 10 +- .../source/Plugins/SymbolFile/NativePDB/PdbUtil.h | 4 +- .../SymbolFile/NativePDB/SymbolFileNativePDB.cpp | 28 +- .../PDB/PDBLocationToDWARFExpression.cpp | 2 +- .../Plugins/SymbolFile/PDB/SymbolFilePDB.cpp | 7 +- .../intel-pt/CommandObjectTraceStartIntelPT.cpp | 89 +- .../intel-pt/CommandObjectTraceStartIntelPT.h | 18 + .../Plugins/Trace/intel-pt/DecodedThread.cpp | 32 +- .../source/Plugins/Trace/intel-pt/DecodedThread.h | 23 +- .../Plugins/Trace/intel-pt/LibiptDecoder.cpp | 2 + .../Trace/intel-pt/PerfContextSwitchDecoder.cpp | 45 +- .../Trace/intel-pt/PerfContextSwitchDecoder.h | 5 + .../lldb/source/Plugins/Trace/intel-pt/TaskTimer.h | 4 +- .../Plugins/Trace/intel-pt/ThreadDecoder.cpp | 5 +- .../Plugins/Trace/intel-pt/TraceCursorIntelPT.cpp | 4 + .../Plugins/Trace/intel-pt/TraceCursorIntelPT.h | 2 + .../source/Plugins/Trace/intel-pt/TraceIntelPT.cpp | 175 +- .../source/Plugins/Trace/intel-pt/TraceIntelPT.h | 23 +- .../Trace/intel-pt/TraceIntelPTBundleSaver.cpp | 138 +- .../Trace/intel-pt/TraceIntelPTBundleSaver.h | 12 +- .../Plugins/Trace/intel-pt/TraceIntelPTConstants.h | 1 + .../Trace/intel-pt/TraceIntelPTMultiCpuDecoder.cpp | 77 +- .../Trace/intel-pt/TraceIntelPTMultiCpuDecoder.h | 16 +- .../Plugins/Trace/intel-pt/TraceIntelPTOptions.td | 29 +- .../Plugins/TraceExporter/common/TraceHTR.cpp | 6 +- .../InstEmulation/UnwindAssemblyInstEmulation.cpp | 4 +- .../llvm-project/lldb/source/Symbol/Function.cpp | 14 +- contrib/llvm-project/lldb/source/Symbol/Symbol.cpp | 5 +- .../llvm-project/lldb/source/Symbol/TypeList.cpp | 9 +- .../llvm-project/lldb/source/Symbol/TypeMap.cpp | 41 +- .../llvm-project/lldb/source/Symbol/Variable.cpp | 30 +- .../lldb/source/Target/RegisterContextUnwind.cpp | 20 +- .../llvm-project/lldb/source/Target/StackFrame.cpp | 10 +- .../lldb/source/Target/ThreadPlanTracer.cpp | 5 +- .../lldb/source/Target/TraceCursor.cpp | 3 + .../lldb/source/Target/TraceDumper.cpp | 105 +- contrib/llvm-project/lldb/source/Utility/Args.cpp | 1 + .../Utility/TraceIntelPTGDBRemotePackets.cpp | 12 +- .../llvm-project/llvm/include/llvm-c/BitReader.h | 9 +- contrib/llvm-project/llvm/include/llvm-c/Core.h | 36 +- .../llvm/include/llvm/ADT/ScopedHashTable.h | 13 +- .../llvm-project/llvm/include/llvm/ADT/StringMap.h | 30 +- .../include/llvm/Analysis/BlockFrequencyInfoImpl.h | 8 +- .../llvm/include/llvm/Analysis/GlobalsModRef.h | 6 +- .../include/llvm/Analysis/InstSimplifyFolder.h | 17 +- .../llvm/include/llvm/Analysis/ScalarEvolution.h | 6 +- .../llvm/include/llvm/Analysis/TargetFolder.h | 53 +- .../include/llvm/Analysis/TargetTransformInfo.h | 14 +- .../llvm/Analysis/TargetTransformInfoImpl.h | 4 +- .../llvm/include/llvm/Analysis/ValueTracking.h | 6 +- .../llvm/include/llvm/Analysis/VectorUtils.h | 6 +- .../llvm/include/llvm/AsmParser/LLToken.h | 5 +- .../llvm/include/llvm/BinaryFormat/ELF.h | 1 + .../llvm/include/llvm/Bitcode/LLVMBitCodes.h | 5 +- .../llvm/include/llvm/Bitstream/BitstreamWriter.h | 4 +- .../llvm/include/llvm/CodeGen/AsmPrinter.h | 7 +- .../llvm/include/llvm/CodeGen/BasicTTIImpl.h | 2 +- .../llvm/CodeGen/GlobalISel/InstructionSelector.h | 4 + .../CodeGen/GlobalISel/InstructionSelectorImpl.h | 21 +- .../llvm/CodeGen/GlobalISel/LegalizerHelper.h | 3 - .../llvm/CodeGen/GlobalISel/MachineIRBuilder.h | 41 + .../llvm/include/llvm/CodeGen/ISDOpcodes.h | 7 + .../llvm/include/llvm/CodeGen/MachineScheduler.h | 2 + .../llvm/include/llvm/CodeGen/SelectionDAGISel.h | 1 + .../llvm/include/llvm/CodeGen/SelectionDAGNodes.h | 4 + .../llvm/include/llvm/CodeGen/TargetLowering.h | 3 + .../llvm/include/llvm/DWARFLinker/DWARFLinker.h | 3 - .../include/llvm/DebugInfo/Symbolize/Symbolize.h | 2 + .../llvm/include/llvm/Debuginfod/Debuginfod.h | 83 +- .../llvm/include/llvm/Debuginfod/HTTPServer.h | 123 ++ .../include/llvm/ExecutionEngine/JITLink/COFF.h | 39 + .../llvm/ExecutionEngine/JITLink/COFF_x86_64.h | 38 + .../include/llvm/ExecutionEngine/JITLink/aarch64.h | 14 +- .../llvm/ExecutionEngine/Orc/MachOPlatform.h | 3 - .../llvm/include/llvm/Frontend/OpenACC/ACC.td | 5 +- .../include/llvm/Frontend/OpenMP/OMPIRBuilder.h | 23 +- .../llvm/include/llvm/Frontend/OpenMP/OMPKinds.def | 10 + .../llvm/include/llvm/IR/Attributes.td | 4 + .../llvm-project/llvm/include/llvm/IR/Constant.h | 4 - .../llvm/include/llvm/IR/ConstantFolder.h | 50 +- .../llvm-project/llvm/include/llvm/IR/Constants.h | 36 +- .../llvm/include/llvm/IR/FixedMetadataKinds.def | 1 + .../llvm/include/llvm/IR/GlobalValue.h | 48 +- .../llvm-project/llvm/include/llvm/IR/IRBuilder.h | 24 +- .../llvm/include/llvm/IR/IRBuilderFolder.h | 10 +- .../llvm-project/llvm/include/llvm/IR/InlineAsm.h | 9 +- .../llvm/include/llvm/IR/Instructions.h | 12 +- .../llvm/include/llvm/IR/Intrinsics.td | 2 +- .../llvm/include/llvm/IR/IntrinsicsAArch64.td | 43 +- .../llvm/include/llvm/IR/IntrinsicsAMDGPU.td | 2 +- .../llvm/include/llvm/IR/IntrinsicsDirectX.td | 10 +- .../llvm/include/llvm/IR/IntrinsicsX86.td | 6 + .../llvm-project/llvm/include/llvm/IR/Metadata.h | 20 +- contrib/llvm-project/llvm/include/llvm/IR/Module.h | 4 + .../llvm/include/llvm/IR/ModuleSummaryIndex.h | 2 +- .../llvm-project/llvm/include/llvm/IR/NoFolder.h | 18 +- .../llvm-project/llvm/include/llvm/IR/OptBisect.h | 4 +- .../llvm-project/llvm/include/llvm/LTO/Config.h | 6 +- .../llvm-project/llvm/include/llvm/MC/MCDwarf.h | 4 +- .../llvm/include/llvm/MC/MCSymbolWasm.h | 10 +- .../llvm/include/llvm/MC/MCSymbolXCOFF.h | 2 +- .../llvm/include/llvm/ObjCopy/CommonConfig.h | 1 + .../llvm/include/llvm/Object/Decompressor.h | 4 +- .../llvm/include/llvm/Support/ARMTargetParser.def | 3 + .../llvm/include/llvm/Support/Allocator.h | 21 +- .../llvm/include/llvm/Support/AllocatorBase.h | 22 + .../llvm/include/llvm/Support/Casting.h | 4 +- .../llvm/include/llvm/Support/CodeGen.h | 7 + .../llvm/include/llvm/Support/Compression.h | 23 +- .../llvm/include/llvm/Support/ConvertUTF.h | 2 + .../llvm-project/llvm/include/llvm/Support/Error.h | 2 +- .../llvm/include/llvm/Support/TargetOpcodes.def | 2 + .../llvm/include/llvm/Support/X86TargetParser.def | 1 + .../llvm/include/llvm/Target/GenericOpcodes.td | 2 + .../llvm/Target/GlobalISel/SelectionDAGCompat.td | 4 + .../llvm/include/llvm/Target/TargetSelectionDAG.td | 58 + .../llvm/Transforms/IPO/PassManagerBuilder.h | 2 - .../llvm/include/llvm/Transforms/Utils/Debugify.h | 66 +- .../llvm/include/llvm/Transforms/Utils/LoopUtils.h | 8 +- .../include/llvm/Transforms/Utils/ModuleUtils.h | 3 +- .../Vectorize/LoopVectorizationLegality.h | 7 - .../llvm/lib/Analysis/BranchProbabilityInfo.cpp | 11 +- .../llvm/lib/Analysis/ConstantFolding.cpp | 15 +- .../llvm/lib/Analysis/GlobalsModRef.cpp | 16 - .../llvm/lib/Analysis/IRSimilarityIdentifier.cpp | 4 +- .../llvm/lib/Analysis/InlineAdvisor.cpp | 13 +- .../llvm-project/llvm/lib/Analysis/InlineCost.cpp | 17 +- .../llvm/lib/Analysis/InstructionSimplify.cpp | 45 +- .../llvm/lib/Analysis/LazyValueInfo.cpp | 6 +- contrib/llvm-project/llvm/lib/Analysis/Loads.cpp | 5 +- .../llvm/lib/Analysis/MemoryBuiltins.cpp | 4 +- .../llvm-project/llvm/lib/Analysis/MustExecute.cpp | 2 +- .../llvm/lib/Analysis/ProfileSummaryInfo.cpp | 12 +- .../llvm/lib/Analysis/ScalarEvolution.cpp | 44 +- contrib/llvm-project/llvm/lib/Analysis/TFUtils.cpp | 11 +- .../llvm/lib/Analysis/TargetTransformInfo.cpp | 2 +- .../llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp | 34 +- .../llvm/lib/Analysis/ValueTracking.cpp | 24 +- .../llvm-project/llvm/lib/Analysis/VectorUtils.cpp | 2 +- .../llvm-project/llvm/lib/AsmParser/LLLexer.cpp | 3 +- .../llvm-project/llvm/lib/AsmParser/LLParser.cpp | 84 +- .../llvm/lib/Bitcode/Reader/BitcodeReader.cpp | 15 +- .../llvm/lib/Bitcode/Writer/BitcodeWriter.cpp | 9 +- .../llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp | 125 +- .../lib/CodeGen/AsmPrinter/DIEHashAttributes.def | 2 +- .../llvm/lib/CodeGen/AtomicExpandPass.cpp | 2 + .../llvm/lib/CodeGen/ExpandVectorPredication.cpp | 3 +- .../llvm/lib/CodeGen/GlobalISel/CallLowering.cpp | 6 + .../llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp | 50 +- .../llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp | 15 +- .../lib/CodeGen/GlobalISel/MachineIRBuilder.cpp | 31 + .../llvm/lib/CodeGen/InterleavedAccessPass.cpp | 9 +- .../CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp | 46 +- .../llvm/lib/CodeGen/LiveIntervals.cpp | 17 +- .../llvm/lib/CodeGen/MIRParser/MIParser.cpp | 2 +- .../llvm/lib/CodeGen/MachineBasicBlock.cpp | 2 +- .../llvm/lib/CodeGen/MachineFunctionSplitter.cpp | 4 +- .../llvm/lib/CodeGen/MachineScheduler.cpp | 7 +- .../llvm/lib/CodeGen/MachineVerifier.cpp | 1 + .../llvm/lib/CodeGen/ModuloSchedule.cpp | 8 +- .../llvm/lib/CodeGen/PrologEpilogInserter.cpp | 2 +- .../llvm/lib/CodeGen/RegAllocEvictionAdvisor.h | 3 - .../llvm/lib/CodeGen/SelectOptimize.cpp | 4 +- .../llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp | 128 +- .../CodeGen/SelectionDAG/LegalizeFloatTypes.cpp | 17 + .../CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp | 93 +- .../llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h | 3 + .../CodeGen/SelectionDAG/LegalizeVectorTypes.cpp | 8 +- .../llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp | 38 +- .../CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 168 +- .../lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h | 2 +- .../CodeGen/SelectionDAG/SelectionDAGDumper.cpp | 2 + .../lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp | 99 +- .../CodeGen/SelectionDAG/StatepointLowering.cpp | 4 +- .../lib/CodeGen/SelectionDAG/TargetLowering.cpp | 160 +- .../lib/CodeGen/TargetLoweringObjectFileImpl.cpp | 6 +- .../llvm/lib/DWARFLinker/DWARFLinker.cpp | 1 + .../llvm/lib/DebugInfo/CodeView/CodeViewError.cpp | 5 +- .../llvm/lib/DebugInfo/DWARF/DWARFContext.cpp | 4 +- .../llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp | 10 +- .../llvm/lib/DebugInfo/DWARF/DWARFDie.cpp | 29 +- .../llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp | 8 + .../llvm/lib/DebugInfo/MSF/MSFError.cpp | 7 +- .../llvm/lib/DebugInfo/PDB/DIA/DIAError.cpp | 7 +- .../llvm/lib/DebugInfo/PDB/GenericError.cpp | 7 +- .../llvm/lib/DebugInfo/PDB/Native/RawError.cpp | 7 +- .../llvm/lib/DebugInfo/Symbolize/Symbolize.cpp | 4 +- .../llvm/lib/Debuginfod/Debuginfod.cpp | 315 ++- .../llvm/lib/Debuginfod/HTTPServer.cpp | 189 ++ .../ExecutionEngine/GDBRegistrationListener.cpp | 30 +- .../llvm/lib/ExecutionEngine/JITLink/COFF.cpp | 137 ++ .../JITLink/COFFLinkGraphBuilder.cpp | 527 +++++ .../ExecutionEngine/JITLink/COFFLinkGraphBuilder.h | 199 ++ .../lib/ExecutionEngine/JITLink/COFF_x86_64.cpp | 216 ++ .../lib/ExecutionEngine/JITLink/EHFrameSupport.cpp | 5 +- .../lib/ExecutionEngine/JITLink/ELF_aarch64.cpp | 161 +- .../llvm/lib/ExecutionEngine/JITLink/ELF_riscv.cpp | 30 +- .../llvm/lib/ExecutionEngine/JITLink/JITLink.cpp | 11 +- .../lib/ExecutionEngine/JITLink/MachO_arm64.cpp | 2 +- .../llvm/lib/ExecutionEngine/JITLink/aarch64.cpp | 8 +- .../lib/ExecutionEngine/Orc/ELFNixPlatform.cpp | 6 +- .../llvm/lib/ExecutionEngine/Orc/LLJIT.cpp | 5 +- .../ExecutionEngine/Orc/ObjectFileInterface.cpp | 52 + .../llvm/lib/ExecutionEngine/Orc/OrcABISupport.cpp | 4 +- .../lib/ExecutionEngine/Orc/Shared/OrcError.cpp | 10 +- .../Orc/TargetProcess/JITLoaderGDB.cpp | 8 +- .../PerfJITEvents/PerfJITEventListener.cpp | 10 +- .../ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp | 6 +- .../ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp | 2 +- .../llvm/lib/Frontend/OpenMP/OMPContext.cpp | 4 +- .../llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp | 115 +- contrib/llvm-project/llvm/lib/IR/AsmWriter.cpp | 14 +- contrib/llvm-project/llvm/lib/IR/ConstantFold.cpp | 27 +- contrib/llvm-project/llvm/lib/IR/Constants.cpp | 183 +- .../llvm-project/llvm/lib/IR/ConstantsContext.h | 60 +- contrib/llvm-project/llvm/lib/IR/Core.cpp | 86 +- contrib/llvm-project/llvm/lib/IR/InlineAsm.cpp | 43 +- contrib/llvm-project/llvm/lib/IR/Instructions.cpp | 17 +- contrib/llvm-project/llvm/lib/IR/IntrinsicInst.cpp | 10 +- .../llvm-project/llvm/lib/IR/LLVMContextImpl.cpp | 5 +- contrib/llvm-project/llvm/lib/IR/Metadata.cpp | 7 - contrib/llvm-project/llvm/lib/IR/Module.cpp | 12 + contrib/llvm-project/llvm/lib/IR/OptBisect.cpp | 7 +- contrib/llvm-project/llvm/lib/IR/PassRegistry.cpp | 10 +- .../llvm/lib/InterfaceStub/IFSHandler.cpp | 21 +- contrib/llvm-project/llvm/lib/LTO/LTOBackend.cpp | 52 +- contrib/llvm-project/llvm/lib/Linker/IRMover.cpp | 28 +- .../llvm-project/llvm/lib/MC/ELFObjectWriter.cpp | 14 +- contrib/llvm-project/llvm/lib/MC/MCContext.cpp | 4 +- .../llvm/lib/MC/MCDisassembler/MCDisassembler.cpp | 4 +- .../llvm/lib/MC/MCParser/ELFAsmParser.cpp | 2 + .../llvm/lib/MC/MCParser/MasmParser.cpp | 92 +- contrib/llvm-project/llvm/lib/MC/MCSchedule.cpp | 8 +- contrib/llvm-project/llvm/lib/MC/MCSectionELF.cpp | 2 + .../llvm-project/llvm/lib/MC/MCSectionXCOFF.cpp | 4 +- .../llvm/lib/ObjCopy/ConfigManager.cpp | 28 +- .../llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp | 125 +- .../llvm/lib/ObjCopy/ELF/ELFObject.cpp | 24 +- .../llvm-project/llvm/lib/ObjCopy/ELF/ELFObject.h | 2 +- .../llvm-project/llvm/lib/Object/Decompressor.cpp | 7 +- contrib/llvm-project/llvm/lib/Object/ELF.cpp | 1 + .../llvm-project/llvm/lib/Object/ELFObjectFile.cpp | 18 +- contrib/llvm-project/llvm/lib/Object/Error.cpp | 6 +- .../llvm/lib/ObjectYAML/DXContainerEmitter.cpp | 6 +- .../llvm-project/llvm/lib/ObjectYAML/ELFYAML.cpp | 1 + .../llvm/lib/Passes/PassBuilderPipelines.cpp | 3 +- .../llvm/lib/Passes/StandardInstrumentations.cpp | 5 +- .../lib/ProfileData/Coverage/CoverageMapping.cpp | 6 +- .../ProfileData/Coverage/CoverageMappingReader.cpp | 12 +- .../ProfileData/Coverage/CoverageMappingWriter.cpp | 12 +- .../llvm/lib/ProfileData/InstrProf.cpp | 32 +- .../llvm/lib/ProfileData/SampleProf.cpp | 6 +- .../llvm/lib/ProfileData/SampleProfReader.cpp | 10 +- .../llvm/lib/ProfileData/SampleProfWriter.cpp | 11 +- .../llvm-project/llvm/lib/Support/CommandLine.cpp | 6 +- .../llvm-project/llvm/lib/Support/Compression.cpp | 52 +- .../llvm-project/llvm/lib/Support/ConvertUTF.cpp | 10 + contrib/llvm-project/llvm/lib/Support/Error.cpp | 12 +- contrib/llvm-project/llvm/lib/Support/Process.cpp | 2 +- contrib/llvm-project/llvm/lib/Support/Unicode.cpp | 2 +- .../llvm-project/llvm/lib/Support/Unix/Process.inc | 8 +- .../llvm/lib/Support/VirtualFileSystem.cpp | 6 +- .../llvm/lib/Support/Windows/Signals.inc | 5 + .../llvm/lib/Support/X86TargetParser.cpp | 6 +- .../llvm-project/llvm/lib/Support/raw_ostream.cpp | 2 +- contrib/llvm-project/llvm/lib/TableGen/Record.cpp | 2 +- .../llvm/lib/Target/AArch64/AArch64.td | 11 +- .../llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp | 2 + .../lib/Target/AArch64/AArch64ISelLowering.cpp | 239 +- .../llvm/lib/Target/AArch64/AArch64ISelLowering.h | 4 + .../llvm/lib/Target/AArch64/AArch64InstrAtomics.td | 38 +- .../llvm/lib/Target/AArch64/AArch64InstrFormats.td | 2 +- .../llvm/lib/Target/AArch64/AArch64InstrInfo.td | 2 + .../llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td | 73 +- .../llvm/lib/Target/AArch64/AArch64SchedA53.td | 3 +- .../llvm/lib/Target/AArch64/AArch64SchedA55.td | 2 +- .../llvm/lib/Target/AArch64/AArch64SchedA57.td | 7 +- .../llvm/lib/Target/AArch64/AArch64SchedA64FX.td | 4 +- .../llvm/lib/Target/AArch64/AArch64SchedAmpere1.td | 4 +- .../llvm/lib/Target/AArch64/AArch64SchedCyclone.td | 3 +- .../lib/Target/AArch64/AArch64SchedExynosM3.td | 3 +- .../lib/Target/AArch64/AArch64SchedExynosM4.td | 3 +- .../lib/Target/AArch64/AArch64SchedExynosM5.td | 3 +- .../llvm/lib/Target/AArch64/AArch64SchedFalkor.td | 3 +- .../llvm/lib/Target/AArch64/AArch64SchedKryo.td | 3 +- .../lib/Target/AArch64/AArch64SchedNeoverseN2.td | 2279 ++++++++++++++++++++ .../llvm/lib/Target/AArch64/AArch64SchedTSV110.td | 3 +- .../lib/Target/AArch64/AArch64SchedThunderX.td | 3 +- .../lib/Target/AArch64/AArch64SchedThunderX2T99.td | 3 +- .../Target/AArch64/AArch64SchedThunderX3T110.td | 3 +- .../Target/AArch64/AArch64TargetTransformInfo.cpp | 47 + .../Target/AArch64/AArch64TargetTransformInfo.h | 6 +- .../Target/AArch64/GISel/AArch64CallLowering.cpp | 29 +- .../lib/Target/AArch64/GISel/AArch64CallLowering.h | 4 + .../AArch64/GISel/AArch64InstructionSelector.cpp | 57 +- .../Target/AArch64/GISel/AArch64LegalizerInfo.cpp | 35 +- .../AArch64/MCTargetDesc/AArch64MCCodeEmitter.cpp | 14 +- .../AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp | 1 + .../AArch64/MCTargetDesc/AArch64MCTargetDesc.h | 1 + .../llvm/lib/Target/AArch64/SMEInstrFormats.td | 34 + .../llvm/lib/Target/AArch64/SVEInstrFormats.td | 10 +- .../lib/Target/AArch64/Utils/AArch64BaseInfo.h | 3 +- .../llvm-project/llvm/lib/Target/AMDGPU/AMDGPU.h | 3 + .../lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp | 4 +- .../llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp | 53 +- .../llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h | 8 +- .../llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp | 2 + .../Target/AMDGPU/AMDGPUInstructionSelector.cpp | 47 +- .../llvm/lib/Target/AMDGPU/AMDGPUInstructions.td | 76 +- .../llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp | 4 + .../lib/Target/AMDGPU/AMDGPUMachineModuleInfo.h | 4 +- .../llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp | 11 +- .../llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp | 13 + .../llvm/lib/Target/AMDGPU/BUFInstructions.td | 27 +- .../llvm/lib/Target/AMDGPU/DSInstructions.td | 77 +- .../llvm/lib/Target/AMDGPU/FLATInstructions.td | 27 +- .../llvm/lib/Target/AMDGPU/GCNCreateVOPD.cpp | 175 ++ .../llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp | 127 +- .../llvm/lib/Target/AMDGPU/GCNVOPDUtils.cpp | 212 ++ .../llvm/lib/Target/AMDGPU/GCNVOPDUtils.h | 32 + .../AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.h | 6 - .../AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp | 1 + .../AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.h | 1 + .../AMDGPU/MCTargetDesc/R600MCCodeEmitter.cpp | 13 +- .../AMDGPU/MCTargetDesc/R600MCTargetDesc.cpp | 2 + .../Target/AMDGPU/MCTargetDesc/R600MCTargetDesc.h | 1 + .../Target/AMDGPU/MCTargetDesc/SIMCCodeEmitter.cpp | 8 +- .../llvm/lib/Target/AMDGPU/R600ISelLowering.cpp | 2 +- .../llvm/lib/Target/AMDGPU/R600ISelLowering.h | 4 +- .../llvm/lib/Target/AMDGPU/R600MCInstLower.cpp | 4 + .../llvm/lib/Target/AMDGPU/SIISelLowering.cpp | 2 +- .../llvm/lib/Target/AMDGPU/SIInstrInfo.cpp | 19 +- .../llvm/lib/Target/AMDGPU/SIInstrInfo.h | 3 + .../llvm/lib/Target/AMDGPU/SIInstrInfo.td | 125 +- .../llvm/lib/Target/AMDGPU/SIInstructions.td | 37 + .../llvm/lib/Target/AMDGPU/SILowerControlFlow.cpp | 1 + .../llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp | 2 +- .../llvm/lib/Target/AMDGPU/SIMachineScheduler.cpp | 6 + .../llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp | 8 +- .../lib/Target/AMDGPU/SIOptimizeExecMasking.cpp | 524 ++--- .../Target/AMDGPU/SIOptimizeExecMaskingPreRA.cpp | 15 +- .../llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp | 4 + .../llvm/lib/Target/AMDGPU/SIRegisterInfo.h | 2 + .../lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp | 34 + .../llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h | 14 + .../llvm/lib/Target/AMDGPU/VOP2Instructions.td | 6 +- .../llvm/lib/Target/AMDGPU/VOPCInstructions.td | 2 - .../llvm/lib/Target/AMDGPU/VOPInstructions.td | 6 +- .../llvm/lib/Target/ARC/ARCAsmPrinter.cpp | 3 + .../Target/ARC/MCTargetDesc/ARCMCTargetDesc.cpp | 1 + .../lib/Target/ARC/MCTargetDesc/ARCMCTargetDesc.h | 1 + contrib/llvm-project/llvm/lib/Target/ARM/ARM.td | 11 +- .../llvm/lib/Target/ARM/ARMAsmPrinter.cpp | 4 + .../llvm/lib/Target/ARM/ARMISelLowering.cpp | 14 +- .../llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp | 6 +- .../llvm/lib/Target/ARM/ARMTargetTransformInfo.h | 2 +- .../Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp | 1 + .../lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.h | 1 + .../lib/Target/ARM/MVEGatherScatterLowering.cpp | 8 +- .../llvm/lib/Target/AVR/AVRAsmPrinter.cpp | 4 + .../Target/AVR/MCTargetDesc/AVRMCTargetDesc.cpp | 1 + .../lib/Target/AVR/MCTargetDesc/AVRMCTargetDesc.h | 1 + .../lib/Target/BPF/BPFAbstractMemberAccess.cpp | 79 + .../llvm/lib/Target/BPF/BPFAsmPrinter.cpp | 3 + contrib/llvm-project/llvm/lib/Target/BPF/BTF.h | 2 + .../Target/BPF/MCTargetDesc/BPFMCCodeEmitter.cpp | 15 +- .../Target/BPF/MCTargetDesc/BPFMCTargetDesc.cpp | 1 + .../lib/Target/BPF/MCTargetDesc/BPFMCTargetDesc.h | 1 + .../llvm/lib/Target/CSKY/CSKYAsmPrinter.cpp | 3 + .../llvm/lib/Target/CSKY/CSKYInstrInfo.td | 2 +- .../llvm/lib/Target/CSKY/CSKYInstrInfo16Instr.td | 2 +- .../Target/CSKY/MCTargetDesc/CSKYMCTargetDesc.cpp | 1 + .../Target/CSKY/MCTargetDesc/CSKYMCTargetDesc.h | 1 + .../llvm-project/llvm/lib/Target/DirectX/DXIL.td | 8 +- .../DirectX/DXILWriter/DXILBitcodeWriter.cpp | 4 + .../llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp | 3 + .../lib/Target/Hexagon/HexagonFrameLowering.cpp | 2 +- .../Hexagon/MCTargetDesc/HexagonMCCodeEmitter.cpp | 3 - .../Hexagon/MCTargetDesc/HexagonMCCodeEmitter.h | 5 - .../Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp | 1 + .../Hexagon/MCTargetDesc/HexagonMCTargetDesc.h | 1 + .../lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp | 4 +- .../llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp | 3 + .../Lanai/MCTargetDesc/LanaiMCTargetDesc.cpp | 1 + .../Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.h | 1 + .../lib/Target/LoongArch/LoongArchAsmPrinter.cpp | 3 + .../lib/Target/LoongArch/LoongArchAsmPrinter.h | 4 + .../Target/LoongArch/LoongArchFloat32InstrInfo.td | 52 + .../Target/LoongArch/LoongArchFloat64InstrInfo.td | 54 + .../Target/LoongArch/LoongArchFrameLowering.cpp | 172 +- .../lib/Target/LoongArch/LoongArchFrameLowering.h | 18 + .../lib/Target/LoongArch/LoongArchISelDAGToDAG.cpp | 56 +- .../lib/Target/LoongArch/LoongArchISelDAGToDAG.h | 5 + .../lib/Target/LoongArch/LoongArchISelLowering.cpp | 569 +++++ .../lib/Target/LoongArch/LoongArchISelLowering.h | 26 + .../lib/Target/LoongArch/LoongArchInstrInfo.cpp | 70 +- .../llvm/lib/Target/LoongArch/LoongArchInstrInfo.h | 10 + .../lib/Target/LoongArch/LoongArchInstrInfo.td | 218 +- .../lib/Target/LoongArch/LoongArchMCInstLower.cpp | 33 +- .../lib/Target/LoongArch/LoongArchRegisterInfo.cpp | 24 +- .../Target/LoongArch/LoongArchTargetMachine.cpp | 7 + .../MCTargetDesc/LoongArchMCTargetDesc.cpp | 1 + .../LoongArch/MCTargetDesc/LoongArchMCTargetDesc.h | 1 + .../llvm/lib/Target/M68k/M68kAsmPrinter.cpp | 3 + .../Target/M68k/MCTargetDesc/M68kMCTargetDesc.cpp | 1 + .../Target/M68k/MCTargetDesc/M68kMCTargetDesc.h | 1 + .../MSP430/MCTargetDesc/MSP430MCTargetDesc.cpp | 1 + .../MSP430/MCTargetDesc/MSP430MCTargetDesc.h | 1 + .../llvm/lib/Target/MSP430/MSP430AsmPrinter.cpp | 3 + .../Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp | 1 + .../Target/Mips/MCTargetDesc/MipsMCTargetDesc.h | 1 + .../llvm/lib/Target/Mips/MipsAsmPrinter.cpp | 4 + .../NVPTX/MCTargetDesc/NVPTXMCTargetDesc.cpp | 1 + .../Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.h | 1 + contrib/llvm-project/llvm/lib/Target/NVPTX/NVPTX.h | 1 + .../llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp | 3 + .../llvm/lib/Target/NVPTX/NVPTXGenericToNVVM.cpp | 4 - .../llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp | 2 +- .../llvm/lib/Target/NVPTX/NVPTXImageOptimizer.cpp | 2 + .../lib/Target/NVPTX/NVPTXPrologEpilogPass.cpp | 2 + .../llvm/lib/Target/NVPTX/NVPTXUtilities.cpp | 54 +- .../PowerPC/MCTargetDesc/PPCMCCodeEmitter.cpp | 10 +- .../Target/PowerPC/MCTargetDesc/PPCMCCodeEmitter.h | 6 - .../PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp | 1 + .../Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.h | 1 + .../llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp | 48 +- .../llvm/lib/Target/PowerPC/PPCISelLowering.cpp | 9 +- .../llvm/lib/Target/PowerPC/PPCISelLowering.h | 1 + .../llvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp | 20 +- .../RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp | 10 - .../RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp | 1 + .../Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.h | 1 + .../llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp | 3 + .../llvm/lib/Target/RISCV/RISCVFrameLowering.cpp | 17 +- .../llvm/lib/Target/RISCV/RISCVFrameLowering.h | 4 +- .../llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp | 646 +++--- .../llvm/lib/Target/RISCV/RISCVISelDAGToDAG.h | 13 +- .../llvm/lib/Target/RISCV/RISCVISelLowering.cpp | 105 +- .../llvm/lib/Target/RISCV/RISCVISelLowering.h | 6 +- .../llvm/lib/Target/RISCV/RISCVInstrInfo.td | 1 - .../llvm/lib/Target/RISCV/RISCVInstrInfoV.td | 85 +- .../lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td | 36 +- .../lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td | 16 +- .../llvm/lib/Target/RISCV/RISCVInstrInfoZb.td | 28 +- .../lib/Target/RISCV/RISCVMakeCompressible.cpp | 10 +- .../llvm/lib/Target/RISCV/RISCVScheduleV.td | 28 + .../lib/Target/RISCV/RISCVTargetTransformInfo.h | 4 + .../SPIRV/MCTargetDesc/SPIRVMCCodeEmitter.cpp | 10 - .../SPIRV/MCTargetDesc/SPIRVMCTargetDesc.cpp | 1 + .../Target/SPIRV/MCTargetDesc/SPIRVMCTargetDesc.h | 1 + .../llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp | 3 + .../llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp | 6 + .../lib/Target/SPIRV/SPIRVDuplicatesTracker.cpp | 95 + .../llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.h | 174 ++ .../llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp | 52 +- .../llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h | 41 +- .../lib/Target/SPIRV/SPIRVInstructionSelector.cpp | 34 +- .../llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp | 101 +- .../llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.h | 6 + .../Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp | 15 +- .../Sparc/MCTargetDesc/SparcMCTargetDesc.cpp | 1 + .../Target/Sparc/MCTargetDesc/SparcMCTargetDesc.h | 1 + .../llvm/lib/Target/Sparc/SparcAsmPrinter.cpp | 2 + .../SystemZ/MCTargetDesc/SystemZMCCodeEmitter.cpp | 17 +- .../SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp | 1 + .../SystemZ/MCTargetDesc/SystemZMCTargetDesc.h | 1 + .../llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp | 3 + .../llvm/lib/Target/SystemZ/SystemZCallingConv.td | 6 +- .../lib/Target/SystemZ/SystemZFrameLowering.cpp | 113 +- .../llvm/lib/Target/TargetLoweringObjectFile.cpp | 7 + .../lib/Target/VE/MCTargetDesc/VEMCCodeEmitter.cpp | 15 +- .../lib/Target/VE/MCTargetDesc/VEMCTargetDesc.cpp | 1 + .../lib/Target/VE/MCTargetDesc/VEMCTargetDesc.h | 1 + .../llvm/lib/Target/VE/VEAsmPrinter.cpp | 2 + .../llvm-project/llvm/lib/Target/VE/VEInstrInfo.td | 8 +- .../llvm/lib/Target/VE/VERegisterInfo.cpp | 203 +- .../llvm/lib/Target/VE/VVPISelLowering.cpp | 2 +- .../AsmParser/WebAssemblyAsmTypeCheck.cpp | 7 +- .../MCTargetDesc/WebAssemblyMCTargetDesc.cpp | 1 + .../MCTargetDesc/WebAssemblyMCTargetDesc.h | 1 + .../TargetInfo/WebAssemblyTargetInfo.cpp | 1 + .../WebAssembly/Utils/WebAssemblyTypeUtilities.cpp | 33 +- .../WebAssembly/Utils/WebAssemblyTypeUtilities.h | 8 +- .../WebAssembly/Utils/WebAssemblyUtilities.cpp | 22 + .../WebAssembly/Utils/WebAssemblyUtilities.h | 4 + .../Target/WebAssembly/WebAssemblyAsmPrinter.cpp | 2 + .../Target/WebAssembly/WebAssemblyCFGStackify.cpp | 22 +- .../Target/WebAssembly/WebAssemblyInstrInfo.cpp | 18 +- .../WebAssemblyLowerEmscriptenEHSjLj.cpp | 2 +- .../Target/WebAssembly/WebAssemblyMCInstLower.cpp | 25 +- .../lib/Target/WebAssembly/WebAssemblyPeephole.cpp | 27 +- .../WebAssemblyRuntimeLibcallSignatures.cpp | 17 +- .../Target/X86/MCTargetDesc/X86InstComments.cpp | 2 +- .../X86/MCTargetDesc/X86InstrRelaxTables.cpp | 8 +- .../Target/X86/MCTargetDesc/X86MCTargetDesc.cpp | 1 + contrib/llvm-project/llvm/lib/Target/X86/X86.h | 4 + contrib/llvm-project/llvm/lib/Target/X86/X86.td | 3 + .../llvm/lib/Target/X86/X86EvexToVex.cpp | 1 + .../llvm/lib/Target/X86/X86ISelLowering.cpp | 193 +- .../llvm/lib/Target/X86/X86InstrCompiler.td | 38 - .../llvm/lib/Target/X86/X86InstrFMA3Info.cpp | 2 +- .../llvm/lib/Target/X86/X86InstrFoldTables.cpp | 8 +- .../llvm/lib/Target/X86/X86InstrInfo.td | 1 + .../llvm/lib/Target/X86/X86InstrSystem.td | 9 + .../llvm/lib/Target/X86/X86IntrinsicsInfo.h | 3 +- .../llvm/lib/Target/X86/X86MCInstLower.cpp | 4 + .../llvm/lib/Target/X86/X86PartialReduction.cpp | 6 +- .../llvm/lib/Target/X86/X86ReturnThunks.cpp | 92 + .../llvm/lib/Target/X86/X86TargetMachine.cpp | 2 + .../XCore/MCTargetDesc/XCoreMCTargetDesc.cpp | 1 + .../Target/XCore/MCTargetDesc/XCoreMCTargetDesc.h | 1 + .../llvm/lib/Target/XCore/XCoreAsmPrinter.cpp | 3 + .../llvm/lib/ToolDrivers/llvm-lib/Options.td | 2 + .../llvm/lib/Transforms/Coroutines/CoroFrame.cpp | 49 +- .../llvm/lib/Transforms/Coroutines/CoroSplit.cpp | 2 +- .../llvm/lib/Transforms/IPO/Attributor.cpp | 12 +- .../lib/Transforms/IPO/AttributorAttributes.cpp | 173 +- .../llvm/lib/Transforms/IPO/GlobalOpt.cpp | 6 +- .../llvm/lib/Transforms/IPO/IROutliner.cpp | 34 +- .../llvm/lib/Transforms/IPO/OpenMPOpt.cpp | 9 +- .../llvm/lib/Transforms/IPO/PassManagerBuilder.cpp | 177 -- .../lib/Transforms/IPO/SampleContextTracker.cpp | 2 +- .../llvm/lib/Transforms/IPO/SampleProfile.cpp | 4 +- .../Transforms/InstCombine/InstCombineAddSub.cpp | 105 +- .../Transforms/InstCombine/InstCombineAndOrXor.cpp | 13 +- .../InstCombine/InstCombineAtomicRMW.cpp | 8 +- .../Transforms/InstCombine/InstCombineCalls.cpp | 7 +- *** 66128 LINES SKIPPED *** From nobody Sun Apr 9 21:35:13 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvlkq4KWkz44JNX; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvlkp6Bh7z4LrK; Sun, 9 Apr 2023 21:35:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076115; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mDpbJe7hKTOh6GDzsEyQoV+yHYtfZctUL7VoRtptD3A=; b=j2q64aQbBtIqSCCDMJSc35Uq8xH3BIlM6QuD2xvnXtANcubibRkoKU9z6+6OA1qrNNiuHa IW244k6RfVKZAbDoR+0LDCa+dD5iOeMyJIlFfSeLD9AFiofSNjxC0EovGaLyj+weQkr3gS W+aspCZNsbmQ8GeUUzwAP96tlqLdCfcUduORbn7TS77ZbSpWSVYEb4Cnbq9YfOrBcdMx0U CmPqgWJLBpOicyYyRKRpEo5nsBmiPfTCL0GWFoZ9B5EwDc28Te1U11ZnjZ+IuxT0LOXDAv f2FLRggjJ5Nixgh0v/MjP29JQKlU9H0TVXC5AxpNafFyFUy4YiN3Cy1xqeXu2g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076115; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mDpbJe7hKTOh6GDzsEyQoV+yHYtfZctUL7VoRtptD3A=; b=IVD8eyVwP9/ENKmQi3p+mpx1KbxVf26k5CXFntHPeL4CzTUhnpe8YTuLzZAOa6rhd3eZDp n9E2MWuqRp+YICWK2ckY/wf7LcvKADkoYZ7QxckFbxEtQq+YKc9UrKJHc4/jIsDoBNhhbk X/GPG/W00buEp5lyAU7LBeaxObIb4XL9J4yyyLCkEUzrIxmLM8b16cBchlykYdk8l2A4Hz yCXjHAot5bmSWupc9n5TwGR0odDoIEj3pzfOS7Ej3XMlyRpN2qiqHwVCHsdHNiNLazXO+r lNOypQ2c6+LHGrhcz8DBEZxTPzCM+Lhwfo452whsnoYc3nNMKU0P1HWmyElWwQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076115; a=rsa-sha256; cv=none; b=DzGSMR5v9sxtMqdB3i8BCJCHLQNoQxutgZIqK7NylaKrNOWN8C5SCHKjNM0zL8WJttR0Hw Xrj2gIRjNdZTqn+zMZ2m3I+0NvYLrgZh5qERL4M+kEupuZu0ZJY4TP/c68kY/PUkyj3n3S BM17EiDscUngmxHJbMKAaU9JUC8lZ0J5CQTT8OMpRY5o6lfeB0f+nrfJ0G9vM0XhHsOyVr orpGpHb5bXQLs+WTb+mjMg7dNrg2pGl8t7Y0hhxD6wIIuk5x6k2stNaP+q6xfqSydUfjXu sBKiNK8z7ZKRLjcC9fDvPqcK+3CX9v21lZoTiGgkaTwyX/33mTisZVUQPXdq0A== 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 4Pvlkp5BSVzPKS; Sun, 9 Apr 2023 21:35:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZExp081514; Sun, 9 Apr 2023 21:35:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZDYA081513; Sun, 9 Apr 2023 21:35:13 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:13 GMT Message-Id: <202304092135.339LZDYA081513@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 13a2180118bd - stable/13 - Merge llvm-project main llvmorg-15-init-17485-ga3e38b4a206b List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 13a2180118bde2302097a9e6cc995c1b255724bb Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=13a2180118bde2302097a9e6cc995c1b255724bb commit 13a2180118bde2302097a9e6cc995c1b255724bb Author: Dimitry Andric AuthorDate: 2022-07-24 15:11:41 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:54:47 +0000 Merge llvm-project main llvmorg-15-init-17485-ga3e38b4a206b This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-15-init-17485-ga3e38b4a206b. PR: 265425 MFC after: 2 weeks (cherry picked from commit fcaf7f8644a9988098ac6be2165bce3ea4786e91) --- .../clang/include/clang/APINotes/Types.h | 2 +- .../clang/include/clang/AST/ASTContext.h | 9 + .../llvm-project/clang/include/clang/AST/Decl.h | 27 +- .../clang/include/clang/AST/DeclBase.h | 10 +- .../clang/include/clang/ASTMatchers/ASTMatchers.h | 33 +- .../clang/Analysis/Analyses/ThreadSafetyTIL.h | 8 +- .../Analysis/FlowSensitive/DataflowAnalysis.h | 6 + .../FlowSensitive/DataflowAnalysisContext.h | 3 + .../Analysis/FlowSensitive/DataflowEnvironment.h | 3 +- .../clang/Analysis/FlowSensitive/DebugSupport.h | 23 +- .../clang/Analysis/FlowSensitive/NoopAnalysis.h | 47 + .../FlowSensitive/TypeErasedDataflowAnalysis.h | 25 +- .../llvm-project/clang/include/clang/Basic/Attr.td | 2 +- .../clang/include/clang/Basic/BuiltinsAMDGPU.def | 25 + .../clang/include/clang/Basic/CodeGenOptions.def | 4 + .../include/clang/Basic/DiagnosticDriverKinds.td | 7 + .../clang/include/clang/Basic/DiagnosticGroups.td | 3 +- .../include/clang/Basic/DiagnosticLexKinds.td | 14 +- .../clang/include/clang/Basic/DiagnosticOptions.h | 2 +- .../include/clang/Basic/DiagnosticSemaKinds.td | 42 +- .../clang/include/clang/Basic/Features.def | 2 +- .../clang/include/clang/Basic/LangOptions.def | 3 +- .../clang/include/clang/Basic/Module.h | 12 + .../clang/include/clang/Basic/NoSanitizeList.h | 2 + .../llvm-project/clang/include/clang/Basic/Sarif.h | 440 ++++ .../clang/include/clang/Driver/Options.h | 3 +- .../clang/include/clang/Driver/Options.td | 49 +- .../clang/include/clang/Format/Format.h | 2 +- .../clang/include/clang/Frontend/FrontendOptions.h | 3 + .../include/clang/Sema/CodeCompleteConsumer.h | 18 + .../llvm-project/clang/include/clang/Sema/Sema.h | 5 + .../Core/PathSensitive/ConstraintManager.h | 3 + .../StaticAnalyzer/Core/PathSensitive/ExprEngine.h | 64 +- .../StaticAnalyzer/Core/PathSensitive/MemRegion.h | 1 + .../Core/PathSensitive/SValBuilder.h | 33 - .../StaticAnalyzer/Core/PathSensitive/SVals.h | 5 + .../DependencyScanning/DependencyScanningTool.h | 4 +- .../DependencyScanning/DependencyScanningWorker.h | 3 +- .../clang/Tooling/Inclusions/IncludeStyle.h | 8 +- .../clang/include/clang/Tooling/Syntax/BuildTree.h | 18 +- .../clang/include/clang/Tooling/Syntax/Mutations.h | 6 +- .../clang/include/clang/Tooling/Syntax/Nodes.h | 7 +- .../clang/Tooling/Syntax/TokenBufferTokenManager.h | 70 + .../include/clang/Tooling/Syntax/TokenManager.h | 47 + .../clang/include/clang/Tooling/Syntax/Tokens.h | 1 - .../clang/include/clang/Tooling/Syntax/Tree.h | 49 +- .../clang/include/clang/module.modulemap | 14 +- contrib/llvm-project/clang/lib/AST/ASTImporter.cpp | 5 + contrib/llvm-project/clang/lib/AST/Decl.cpp | 24 +- contrib/llvm-project/clang/lib/AST/DeclBase.cpp | 5 +- contrib/llvm-project/clang/lib/AST/DeclCXX.cpp | 2 +- contrib/llvm-project/clang/lib/AST/DeclPrinter.cpp | 8 +- .../llvm-project/clang/lib/AST/ExprConstant.cpp | 6 + .../llvm-project/clang/lib/AST/TextNodeDumper.cpp | 3 + .../FlowSensitive/DataflowAnalysisContext.cpp | 13 + .../Analysis/FlowSensitive/DataflowEnvironment.cpp | 6 +- .../lib/Analysis/FlowSensitive/DebugSupport.cpp | 83 +- .../clang/lib/Analysis/ThreadSafety.cpp | 11 + .../llvm-project/clang/lib/Basic/MakeSupport.cpp | 2 +- .../clang/lib/Basic/NoSanitizeList.cpp | 5 + contrib/llvm-project/clang/lib/Basic/Sarif.cpp | 389 ++++ .../clang/lib/Basic/Targets/AMDGPU.cpp | 1 + .../llvm-project/clang/lib/Basic/Targets/RISCV.cpp | 4 +- contrib/llvm-project/clang/lib/CodeGen/ABIInfo.h | 4 - .../llvm-project/clang/lib/CodeGen/CGBuiltin.cpp | 1 + contrib/llvm-project/clang/lib/CodeGen/CGCall.h | 3 - .../llvm-project/clang/lib/CodeGen/CGDeclCXX.cpp | 185 +- contrib/llvm-project/clang/lib/CodeGen/CGExpr.cpp | 25 +- .../llvm-project/clang/lib/CodeGen/CGObjCRuntime.h | 3 +- contrib/llvm-project/clang/lib/CodeGen/CGStmt.cpp | 7 +- .../clang/lib/CodeGen/CGStmtOpenMP.cpp | 23 +- .../clang/lib/CodeGen/CodeGenFunction.cpp | 2 +- .../clang/lib/CodeGen/CodeGenModule.cpp | 137 +- .../llvm-project/clang/lib/CodeGen/CodeGenModule.h | 49 +- .../clang/lib/CodeGen/SwiftCallingConv.cpp | 3 +- .../llvm-project/clang/lib/CodeGen/TargetInfo.cpp | 14 +- .../llvm-project/clang/lib/CodeGen/TargetInfo.h | 4 +- contrib/llvm-project/clang/lib/Driver/Driver.cpp | 36 +- contrib/llvm-project/clang/lib/Driver/Multilib.cpp | 7 +- .../llvm-project/clang/lib/Driver/ToolChain.cpp | 2 + .../clang/lib/Driver/ToolChains/AIX.cpp | 10 +- .../clang/lib/Driver/ToolChains/Ananas.cpp | 2 +- .../clang/lib/Driver/ToolChains/Arch/RISCV.cpp | 12 +- .../clang/lib/Driver/ToolChains/BareMetal.cpp | 2 + .../clang/lib/Driver/ToolChains/Clang.cpp | 103 +- .../clang/lib/Driver/ToolChains/Clang.h | 6 + .../clang/lib/Driver/ToolChains/CloudABI.cpp | 2 + .../clang/lib/Driver/ToolChains/CrossWindows.cpp | 5 +- .../clang/lib/Driver/ToolChains/Darwin.cpp | 30 +- .../clang/lib/Driver/ToolChains/DragonFly.cpp | 2 +- .../clang/lib/Driver/ToolChains/FreeBSD.cpp | 16 +- .../clang/lib/Driver/ToolChains/Fuchsia.cpp | 4 +- .../clang/lib/Driver/ToolChains/Hexagon.cpp | 2 + .../clang/lib/Driver/ToolChains/MipsLinux.cpp | 2 + .../clang/lib/Driver/ToolChains/NaCl.cpp | 2 + .../clang/lib/Driver/ToolChains/NetBSD.cpp | 2 +- .../clang/lib/Driver/ToolChains/OpenBSD.cpp | 11 +- .../clang/lib/Driver/ToolChains/VEToolchain.cpp | 2 + .../clang/lib/Driver/ToolChains/WebAssembly.cpp | 2 + .../clang/lib/ExtractAPI/ExtractAPIConsumer.cpp | 1 + .../clang/lib/Format/ContinuationIndenter.cpp | 11 +- contrib/llvm-project/clang/lib/Format/Format.cpp | 39 +- .../clang/lib/Format/TokenAnnotator.cpp | 13 +- .../clang/lib/Format/UnwrappedLineParser.cpp | 3 +- .../clang/lib/Frontend/FrontendAction.cpp | 3 +- .../clang/lib/Frontend/InitPreprocessor.cpp | 21 +- .../clang/lib/Frontend/TextDiagnostic.cpp | 2 + .../clang/lib/Headers/__clang_cuda_intrinsics.h | 8 +- .../clang/lib/Headers/ppc_wrappers/emmintrin.h | 7 +- .../clang/lib/Headers/ppc_wrappers/mm_malloc.h | 3 +- .../clang/lib/Headers/ppc_wrappers/mmintrin.h | 7 +- .../clang/lib/Headers/ppc_wrappers/pmmintrin.h | 7 +- .../clang/lib/Headers/ppc_wrappers/smmintrin.h | 7 +- .../clang/lib/Headers/ppc_wrappers/tmmintrin.h | 7 +- .../clang/lib/Headers/ppc_wrappers/xmmintrin.h | 7 +- .../llvm-project/clang/lib/Headers/x86gprintrin.h | 28 +- contrib/llvm-project/clang/lib/Lex/Lexer.cpp | 6 +- contrib/llvm-project/clang/lib/Lex/ModuleMap.cpp | 6 +- .../llvm-project/clang/lib/Lex/PPDirectives.cpp | 29 +- contrib/llvm-project/clang/lib/Parse/ParseAST.cpp | 23 + .../clang/lib/Sema/AnalysisBasedWarnings.cpp | 3 +- .../clang/lib/Sema/CodeCompleteConsumer.cpp | 15 +- contrib/llvm-project/clang/lib/Sema/SemaCUDA.cpp | 2 +- .../llvm-project/clang/lib/Sema/SemaChecking.cpp | 49 +- .../clang/lib/Sema/SemaCodeComplete.cpp | 72 +- contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp | 37 +- contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp | 11 +- .../llvm-project/clang/lib/Sema/SemaExprCXX.cpp | 16 +- contrib/llvm-project/clang/lib/Sema/SemaLookup.cpp | 15 +- contrib/llvm-project/clang/lib/Sema/SemaModule.cpp | 10 + .../llvm-project/clang/lib/Sema/SemaTemplate.cpp | 6 +- .../clang/lib/Sema/SemaTemplateInstantiateDecl.cpp | 5 + contrib/llvm-project/clang/lib/Sema/SemaType.cpp | 3 +- .../clang/lib/Serialization/ASTReader.cpp | 502 +++-- .../clang/lib/Serialization/ASTReaderDecl.cpp | 4 + .../clang/lib/Serialization/ASTWriterDecl.cpp | 3 + .../Checkers/ExprInspectionChecker.cpp | 60 +- .../clang/lib/StaticAnalyzer/Core/ExprEngine.cpp | 156 +- .../lib/StaticAnalyzer/Core/ExprEngineCXX.cpp | 77 +- .../Core/ExprEngineCallAndReturn.cpp | 61 +- .../clang/lib/StaticAnalyzer/Core/MemRegion.cpp | 4 + .../StaticAnalyzer/Core/RangeConstraintManager.cpp | 133 +- .../clang/lib/StaticAnalyzer/Core/SValBuilder.cpp | 870 ++++---- .../clang/lib/StaticAnalyzer/Core/SVals.cpp | 10 + .../DependencyScanning/DependencyScanningTool.cpp | 5 +- .../DependencyScanningWorker.cpp | 7 +- .../clang/lib/Tooling/Syntax/BuildTree.cpp | 57 +- .../lib/Tooling/Syntax/ComputeReplacements.cpp | 37 +- .../clang/lib/Tooling/Syntax/Mutations.cpp | 5 +- .../clang/lib/Tooling/Syntax/Nodes.cpp | 2 +- .../clang/lib/Tooling/Syntax/Synthesis.cpp | 34 +- .../lib/Tooling/Syntax/TokenBufferTokenManager.cpp | 25 + .../llvm-project/clang/lib/Tooling/Syntax/Tree.cpp | 52 +- .../llvm-project/clang/tools/driver/cc1_main.cpp | 11 +- .../clang/utils/TableGen/ClangOptionDocEmitter.cpp | 28 + .../compiler-rt/lib/asan/asan_interceptors.cpp | 35 +- .../compiler-rt/lib/asan/asan_interceptors_vfork.S | 1 + .../compiler-rt/lib/asan/asan_internal.h | 1 + .../compiler-rt/lib/asan/asan_linux.cpp | 12 +- .../llvm-project/compiler-rt/lib/asan/asan_mac.cpp | 2 + .../compiler-rt/lib/asan/asan_mapping.h | 9 + .../llvm-project/compiler-rt/lib/asan/asan_win.cpp | 2 + .../compiler-rt/lib/hwasan/hwasan_linux.cpp | 13 +- .../compiler-rt/lib/lsan/lsan_common.cpp | 2 +- .../compiler-rt/lib/memprof/memprof_internal.h | 2 - .../compiler-rt/lib/memprof/memprof_linux.cpp | 6 - contrib/llvm-project/compiler-rt/lib/msan/msan.h | 21 + ...zer_common_interceptors_vfork_loongarch64.inc.S | 63 + .../sanitizer_coverage_interface.inc | 10 + .../sanitizer_coverage_libcdep_new.cpp | 10 + .../sanitizer_interface_internal.h | 20 + .../lib/sanitizer_common/sanitizer_linux.cpp | 104 +- .../sanitizer_common/sanitizer_linux_libcdep.cpp | 52 +- .../lib/sanitizer_common/sanitizer_mac.cpp | 56 + .../lib/sanitizer_common/sanitizer_mac.h | 11 + .../lib/sanitizer_common/sanitizer_platform.h | 6 + .../sanitizer_platform_limits_linux.cpp | 3 +- .../sanitizer_platform_limits_posix.cpp | 6 +- .../sanitizer_platform_limits_posix.h | 13 +- .../sanitizer_procmaps_solaris.cpp | 58 +- .../lib/sanitizer_common/sanitizer_solaris.h | 56 + .../lib/sanitizer_common/sanitizer_stacktrace.cpp | 4 +- .../sanitizer_stoptheworld_mac.cpp | 2 +- .../sanitizer_symbolizer_posix_libcdep.cpp | 1 - .../sanitizer_syscall_linux_loongarch64.inc | 167 ++ .../compiler-rt/lib/tsan/rtl/tsan_dense_alloc.h | 115 +- .../compiler-rt/lib/tsan/rtl/tsan_platform_mac.cpp | 59 +- .../compiler-rt/lib/tsan/rtl/tsan_rtl.cpp | 29 +- .../compiler-rt/lib/ubsan/ubsan_value.cpp | 6 +- .../libcxx/include/__algorithm/equal_range.h | 87 +- .../libcxx/include/__algorithm/includes.h | 58 +- .../libcxx/include/__algorithm/inplace_merge.h | 48 +- .../include/__algorithm/iterator_operations.h | 28 +- .../libcxx/include/__algorithm/make_heap.h | 7 +- .../libcxx/include/__algorithm/make_projected.h | 15 + .../libcxx/include/__algorithm/min_element.h | 44 +- .../libcxx/include/__algorithm/nth_element.h | 36 +- .../libcxx/include/__algorithm/partial_sort.h | 71 +- .../libcxx/include/__algorithm/partial_sort_copy.h | 12 +- .../libcxx/include/__algorithm/partition.h | 49 +- .../libcxx/include/__algorithm/pop_heap.h | 17 +- .../libcxx/include/__algorithm/push_heap.h | 17 +- .../include/__algorithm/ranges_equal_range.h | 41 +- .../libcxx/include/__algorithm/ranges_fill.h | 2 +- .../libcxx/include/__algorithm/ranges_find_end.h | 18 +- .../libcxx/include/__algorithm/ranges_for_each_n.h | 1 - .../libcxx/include/__algorithm/ranges_generate_n.h | 1 - .../libcxx/include/__algorithm/ranges_includes.h | 60 +- .../libcxx/include/__algorithm/ranges_is_heap.h | 1 - .../include/__algorithm/ranges_iterator_concept.h | 51 + .../libcxx/include/__algorithm/ranges_make_heap.h | 3 +- .../include/__algorithm/ranges_min_element.h | 1 + .../include/__algorithm/ranges_nth_element.h | 3 +- .../include/__algorithm/ranges_partial_sort.h | 77 + .../libcxx/include/__algorithm/ranges_partition.h | 22 +- .../include/__algorithm/ranges_partition_copy.h | 36 +- .../include/__algorithm/ranges_partition_point.h | 37 +- .../libcxx/include/__algorithm/ranges_pop_heap.h | 3 +- .../libcxx/include/__algorithm/ranges_push_heap.h | 3 +- .../libcxx/include/__algorithm/ranges_set_union.h | 84 +- .../libcxx/include/__algorithm/ranges_shuffle.h | 49 +- .../libcxx/include/__algorithm/ranges_sort.h | 3 +- .../libcxx/include/__algorithm/ranges_sort_heap.h | 3 +- .../include/__algorithm/ranges_stable_partition.h | 25 +- .../include/__algorithm/ranges_stable_sort.h | 3 +- .../libcxx/include/__algorithm/rotate.h | 85 +- .../libcxx/include/__algorithm/search_n.h | 2 +- .../libcxx/include/__algorithm/set_union.h | 102 +- .../libcxx/include/__algorithm/shuffle.h | 25 +- .../libcxx/include/__algorithm/sift_down.h | 13 +- .../llvm-project/libcxx/include/__algorithm/sort.h | 268 ++- .../libcxx/include/__algorithm/sort_heap.h | 12 +- .../libcxx/include/__algorithm/stable_partition.h | 95 +- .../libcxx/include/__algorithm/stable_sort.h | 75 +- .../libcxx/include/__algorithm/unwrap_iter.h | 76 +- .../libcxx/include/__algorithm/upper_bound.h | 64 +- contrib/llvm-project/libcxx/include/__config | 25 +- .../libcxx/include/__debug_utils/randomize_range.h | 7 +- .../__format/extended_grapheme_cluster_table.h | 332 +++ .../libcxx/include/__format/formatter_integral.h | 2 +- .../libcxx/include/__format/formatter_output.h | 111 +- .../libcxx/include/__format/formatter_string.h | 4 +- .../include/__format/parser_std_format_spec.h | 664 ++---- .../llvm-project/libcxx/include/__format/unicode.h | 339 +++ .../libcxx/include/__iterator/reverse_iterator.h | 39 +- contrib/llvm-project/libcxx/include/__locale | 9 +- .../include/__random/binomial_distribution.h | 2 +- .../include/__random/discrete_distribution.h | 2 +- .../include/__random/geometric_distribution.h | 2 +- .../libcxx/include/__random/is_valid.h | 7 +- .../__random/negative_binomial_distribution.h | 8 +- .../libcxx/include/__random/poisson_distribution.h | 2 +- .../include/__random/uniform_int_distribution.h | 2 +- contrib/llvm-project/libcxx/include/algorithm | 122 ++ contrib/llvm-project/libcxx/include/bit | 3 - contrib/llvm-project/libcxx/include/format | 3 +- contrib/llvm-project/libcxx/include/limits | 4 - .../libcxx/include/module.modulemap.in | 46 +- contrib/llvm-project/libcxx/include/ostream | 84 + contrib/llvm-project/libcxx/include/version | 4 +- .../llvm-project/libunwind/src/UnwindCursor.hpp | 10 +- contrib/llvm-project/lld/COFF/Chunks.cpp | 3 +- contrib/llvm-project/lld/COFF/DLL.cpp | 8 +- contrib/llvm-project/lld/COFF/DebugTypes.cpp | 3 +- contrib/llvm-project/lld/COFF/DriverUtils.cpp | 10 +- contrib/llvm-project/lld/COFF/PDB.cpp | 18 +- contrib/llvm-project/lld/ELF/Arch/RISCV.cpp | 82 +- contrib/llvm-project/lld/ELF/Driver.cpp | 27 +- contrib/llvm-project/lld/ELF/InputFiles.cpp | 37 +- contrib/llvm-project/lld/ELF/InputFiles.h | 10 +- contrib/llvm-project/lld/ELF/LTO.cpp | 4 +- contrib/llvm-project/lld/ELF/SyntheticSections.cpp | 8 +- contrib/llvm-project/lld/ELF/Writer.cpp | 4 +- contrib/llvm-project/lld/MachO/Arch/ARM.cpp | 34 +- contrib/llvm-project/lld/MachO/Arch/ARM64.cpp | 42 +- contrib/llvm-project/lld/MachO/Arch/ARM64_32.cpp | 39 +- contrib/llvm-project/lld/MachO/Arch/X86_64.cpp | 36 +- contrib/llvm-project/lld/MachO/Config.h | 11 +- contrib/llvm-project/lld/MachO/Driver.cpp | 138 +- contrib/llvm-project/lld/MachO/ICF.cpp | 31 +- contrib/llvm-project/lld/MachO/ICF.h | 2 +- contrib/llvm-project/lld/MachO/InputFiles.cpp | 74 +- contrib/llvm-project/lld/MachO/InputFiles.h | 1 + contrib/llvm-project/lld/MachO/InputSection.cpp | 5 + contrib/llvm-project/lld/MachO/InputSection.h | 3 +- contrib/llvm-project/lld/MachO/LTO.cpp | 25 +- contrib/llvm-project/lld/MachO/Options.td | 1 - .../llvm-project/lld/MachO/SectionPriorities.cpp | 2 +- contrib/llvm-project/lld/MachO/SymbolTable.cpp | 7 + contrib/llvm-project/lld/MachO/SymbolTable.h | 2 + .../llvm-project/lld/MachO/SyntheticSections.cpp | 235 ++- contrib/llvm-project/lld/MachO/SyntheticSections.h | 23 + contrib/llvm-project/lld/MachO/Target.h | 11 +- .../llvm-project/lld/MachO/UnwindInfoSection.cpp | 2 +- contrib/llvm-project/lld/MachO/Writer.cpp | 5 + .../lldb/include/lldb/Core/EmulateInstruction.h | 2 +- .../include/lldb/DataFormatters/TypeCategory.h | 2 +- .../include/lldb/DataFormatters/TypeSynthetic.h | 2 +- .../lldb/include/lldb/Expression/Materializer.h | 22 + .../lldb/include/lldb/Expression/UserExpression.h | 17 + .../lldb/include/lldb/Interpreter/CommandObject.h | 11 +- .../lldb/Interpreter/CommandOptionArgumentTable.h | 334 +++ .../lldb/include/lldb/Symbol/SymbolFile.h | 2 +- .../lldb/include/lldb/Target/MemoryRegionInfo.h | 2 +- .../llvm-project/lldb/include/lldb/Target/Target.h | 6 - .../lldb/Utility/StringExtractorGDBRemote.h | 1 + .../lldb/include/lldb/lldb-enumerations.h | 2 + .../lldb/include/lldb/lldb-private-enumerations.h | 23 + .../lldb/include/lldb/lldb-private-types.h | 6 + .../llvm-project/lldb/source/API/SBBreakpoint.cpp | 3 +- .../lldb/source/API/SBMemoryRegionInfo.cpp | 6 +- .../source/Commands/CommandObjectBreakpoint.cpp | 1 + .../Commands/CommandObjectBreakpointCommand.cpp | 31 +- .../lldb/source/Commands/CommandObjectCommands.cpp | 24 +- .../source/Commands/CommandObjectDisassemble.cpp | 1 + .../source/Commands/CommandObjectExpression.cpp | 18 +- .../lldb/source/Commands/CommandObjectFrame.cpp | 5 +- .../lldb/source/Commands/CommandObjectHelp.cpp | 1 + .../lldb/source/Commands/CommandObjectLog.cpp | 31 +- .../lldb/source/Commands/CommandObjectMemory.cpp | 5 +- .../source/Commands/CommandObjectMemoryTag.cpp | 1 + .../lldb/source/Commands/CommandObjectPlatform.cpp | 1 + .../lldb/source/Commands/CommandObjectProcess.cpp | 17 +- .../lldb/source/Commands/CommandObjectRegister.cpp | 1 + .../source/Commands/CommandObjectReproducer.cpp | 87 +- .../lldb/source/Commands/CommandObjectScript.cpp | 23 +- .../lldb/source/Commands/CommandObjectSession.cpp | 1 + .../lldb/source/Commands/CommandObjectSettings.cpp | 1 + .../lldb/source/Commands/CommandObjectSource.cpp | 1 + .../lldb/source/Commands/CommandObjectStats.cpp | 1 + .../lldb/source/Commands/CommandObjectTarget.cpp | 53 +- .../lldb/source/Commands/CommandObjectThread.cpp | 23 +- .../lldb/source/Commands/CommandObjectTrace.cpp | 1 + .../lldb/source/Commands/CommandObjectType.cpp | 75 +- .../source/Commands/CommandObjectWatchpoint.cpp | 1 + .../Commands/CommandObjectWatchpointCommand.cpp | 31 +- .../source/Commands/CommandOptionArgumentTable.cpp | 313 +++ .../Commands/CommandOptionsProcessLaunch.cpp | 2 + .../llvm-project/lldb/source/Commands/Options.td | 26 +- .../lldb/source/Commands/OptionsBase.td | 6 +- .../lldb/source/Core/DumpDataExtractor.cpp | 4 +- .../lldb/source/Core/ValueObjectChild.cpp | 6 +- .../lldb/source/Expression/DWARFExpression.cpp | 18 +- .../lldb/source/Expression/Materializer.cpp | 233 ++- .../lldb/source/Expression/UserExpression.cpp | 16 +- .../llvm-project/lldb/source/Host/common/File.cpp | 10 +- .../lldb/source/Host/common/Terminal.cpp | 4 +- .../lldb/source/Interpreter/CommandObject.cpp | 438 +--- .../lldb/source/Interpreter/OptionValueArray.cpp | 2 +- .../source/Interpreter/OptionValueFileSpecList.cpp | 2 +- .../source/Interpreter/OptionValuePathMappings.cpp | 2 +- .../lldb/source/Plugins/ABI/X86/ABIX86.cpp | 4 +- .../Disassembler/LLVMC/DisassemblerLLVMC.cpp | 6 +- .../Hexagon-DYLD/HexagonDYLDRendezvous.cpp | 4 + .../Clang/ASTResultSynthesizer.cpp | 27 +- .../ExpressionParser/Clang/ClangASTSource.cpp | 7 +- .../Clang/ClangExpressionDeclMap.cpp | 173 +- .../Clang/ClangExpressionDeclMap.h | 31 + .../Clang/ClangExpressionSourceCode.cpp | 54 +- .../Clang/ClangExpressionSourceCode.h | 16 +- .../ExpressionParser/Clang/ClangExpressionUtil.cpp | 27 + .../ExpressionParser/Clang/ClangExpressionUtil.h | 30 + .../Clang/ClangExpressionVariable.h | 8 +- .../ExpressionParser/Clang/ClangUserExpression.cpp | 38 +- .../ExpressionParser/Clang/ClangUserExpression.h | 4 + .../Instruction/ARM/EmulateInstructionARM.h | 3 +- .../Language/CPlusPlus/CPlusPlusLanguage.cpp | 18 +- .../Language/CPlusPlus/CPlusPlusNameParser.cpp | 12 +- .../Plugins/Language/CPlusPlus/LibCxxList.cpp | 10 +- .../Plugins/Language/CPlusPlus/LibCxxMap.cpp | 4 +- .../source/Plugins/Language/ObjC/CFBasicHash.h | 2 +- .../source/Plugins/Language/ObjC/NSDictionary.cpp | 2 +- .../lldb/source/Plugins/Language/ObjC/NSError.cpp | 2 +- .../lldb/source/Plugins/Language/ObjC/NSSet.cpp | 2 +- .../AppleObjCRuntime/AppleObjCClassDescriptorV2.h | 12 +- .../AppleObjCTrampolineHandler.cpp | 9 +- .../RenderScriptRuntime/RenderScriptRuntime.cpp | 4 +- .../RenderScriptRuntime/RenderScriptRuntime.h | 3 +- .../Plugins/ObjectFile/ELF/ObjectFileELF.cpp | 5 +- .../ObjectFile/Minidump/MinidumpFileBuilder.cpp | 1 + .../Process/Utility/RegisterContextPOSIX_x86.cpp | 1 + .../Process/Utility/RegisterInfoPOSIX_arm64.cpp | 8 +- .../Process/gdb-remote/GDBRemoteCommunication.cpp | 6 +- .../GDBRemoteCommunicationServerLLGS.cpp | 333 ++- .../gdb-remote/GDBRemoteCommunicationServerLLGS.h | 25 +- .../Process/gdb-remote/ProcessGDBRemote.cpp | 10 +- .../Python/ScriptInterpreterPython.cpp | 6 +- .../SymbolFile/DWARF/DWARFASTParserClang.cpp | 81 +- .../Plugins/SymbolFile/DWARF/DWARFASTParserClang.h | 16 + .../Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp | 7 +- .../Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp | 34 + .../intel-pt/CommandObjectTraceStartIntelPT.cpp | 1 + .../ctf/CommandObjectThreadTraceExportCTF.cpp | 1 + .../Plugins/TypeSystem/Clang/TypeSystemClang.cpp | 2 +- .../InstEmulation/UnwindAssemblyInstEmulation.h | 4 +- .../x86/x86AssemblyInspectionEngine.cpp | 5 +- .../lldb/source/Symbol/ArmUnwindInfo.cpp | 2 +- .../lldb/source/Symbol/CompileUnit.cpp | 2 +- contrib/llvm-project/lldb/source/Symbol/Symtab.cpp | 2 +- .../lldb/source/Target/DynamicRegisterInfo.cpp | 2 +- contrib/llvm-project/lldb/source/Target/Target.cpp | 2 +- .../llvm-project/lldb/source/Target/TargetList.cpp | 3 +- contrib/llvm-project/lldb/source/Target/Thread.cpp | 3 +- .../lldb/source/Target/UnixSignals.cpp | 7 +- .../lldb/source/Utility/ReproducerProvider.cpp | 2 +- .../lldb/source/Utility/SelectHelper.cpp | 4 +- .../source/Utility/StringExtractorGDBRemote.cpp | 2 + contrib/llvm-project/lldb/source/Utility/Timer.cpp | 2 +- .../lldb/utils/TableGen/LLDBOptionDefEmitter.cpp | 8 +- contrib/llvm-project/llvm/include/llvm/ADT/APInt.h | 4 +- .../llvm-project/llvm/include/llvm/ADT/APSInt.h | 4 +- .../llvm/include/llvm/ADT/AddressRanges.h | 82 +- .../llvm-project/llvm/include/llvm/ADT/BitVector.h | 4 +- .../llvm/include/llvm/ADT/EpochTracker.h | 6 +- .../llvm/include/llvm/ADT/IntEqClasses.h | 4 +- .../llvm-project/llvm/include/llvm/ADT/Triple.h | 14 +- .../llvm/Analysis/FunctionPropertiesAnalysis.h | 1 - .../llvm/include/llvm/Analysis/IVDescriptors.h | 3 - .../llvm/include/llvm/Analysis/LoopCacheAnalysis.h | 5 +- .../llvm/include/llvm/Analysis/LoopInfo.h | 15 +- .../llvm/include/llvm/Analysis/MemoryBuiltins.h | 39 +- .../llvm/include/llvm/Analysis/MemoryProfileInfo.h | 112 + .../llvm/include/llvm/Analysis/ScalarEvolution.h | 6 +- .../llvm/include/llvm/Analysis/SparsePropagation.h | 4 +- .../include/llvm/Analysis/TargetTransformInfo.h | 20 +- .../llvm/Analysis/TargetTransformInfoImpl.h | 2 +- .../llvm/include/llvm/BinaryFormat/XCOFF.h | 1 + .../include/llvm/CodeGen/BasicBlockSectionUtils.h | 2 + .../llvm/CodeGen/BasicBlockSectionsProfileReader.h | 6 +- .../llvm/include/llvm/CodeGen/BasicTTIImpl.h | 4 +- .../llvm/include/llvm/CodeGen/CallingConvLower.h | 4 +- .../include/llvm/CodeGen/GlobalISel/IRTranslator.h | 1 + .../llvm/include/llvm/CodeGen/GlobalISel/Utils.h | 1 - .../llvm/include/llvm/CodeGen/ISDOpcodes.h | 6 + .../llvm/include/llvm/CodeGen/LiveIntervals.h | 7 +- .../llvm/include/llvm/CodeGen/LiveRangeEdit.h | 14 +- .../llvm/include/llvm/CodeGen/LiveVariables.h | 6 +- .../llvm/include/llvm/CodeGen/MachineInstr.h | 7 +- .../llvm/include/llvm/CodeGen/MachineModuleInfo.h | 1 - .../llvm/include/llvm/CodeGen/MachinePipeliner.h | 4 +- .../llvm/include/llvm/CodeGen/Passes.h | 1 - .../llvm/include/llvm/CodeGen/RegisterScavenging.h | 12 +- .../llvm/include/llvm/CodeGen/ScheduleDAG.h | 5 +- .../llvm/include/llvm/CodeGen/SelectionDAG.h | 6 +- .../llvm/include/llvm/CodeGen/SelectionDAGISel.h | 4 + .../llvm/include/llvm/CodeGen/TargetInstrInfo.h | 13 +- .../llvm/include/llvm/CodeGen/TargetLowering.h | 10 +- .../llvm/include/llvm/DWARFLinker/DWARFLinker.h | 22 +- .../llvm/DWARFLinker/DWARFLinkerCompileUnit.h | 26 +- .../llvm/include/llvm/DWARFLinker/DWARFStreamer.h | 2 +- .../llvm/DebugInfo/CodeView/CodeViewRegisters.def | 76 +- .../llvm/include/llvm/DebugInfo/Symbolize/Markup.h | 4 + .../llvm/DebugInfo/Symbolize/MarkupFilter.h | 98 +- .../llvm/include/llvm/Debuginfod/HTTPServer.h | 6 +- .../llvm/include/llvm/Demangle/ItaniumDemangle.h | 6 +- .../llvm/include/llvm/Demangle/StringView.h | 4 +- .../llvm/include/llvm/Demangle/Utility.h | 4 +- .../Orc/MapperJITLinkMemoryManager.h | 56 + .../llvm/ExecutionEngine/Orc/MemoryMapper.h | 60 +- .../llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h | 21 + .../Orc/Shared/SimplePackedSerialization.h | 9 +- .../Orc/Shared/TargetProcessControlTypes.h | 61 +- .../ExecutorSharedMemoryMapperService.h | 78 + .../llvm/Frontend/Directive/DirectiveBase.td | 12 + .../llvm/include/llvm/Frontend/OpenACC/ACC.td | 7 + .../include/llvm/Frontend/OpenMP/OMPIRBuilder.h | 9 + .../llvm/include/llvm/Frontend/OpenMP/OMPKinds.def | 5 +- .../llvm/include/llvm/IR/FixedMetadataKinds.def | 2 + .../llvm/include/llvm/IR/GlobalIFunc.h | 6 + .../llvm-project/llvm/include/llvm/IR/IRBuilder.h | 2 +- .../llvm-project/llvm/include/llvm/IR/InlineAsm.h | 5 +- .../llvm/include/llvm/IR/Instruction.h | 15 - .../llvm/include/llvm/IR/Instructions.h | 7 +- .../llvm/include/llvm/IR/IntrinsicInst.h | 2 +- .../llvm/include/llvm/IR/Intrinsics.td | 14 +- .../llvm/include/llvm/IR/IntrinsicsAMDGPU.td | 78 + .../llvm/include/llvm/IR/IntrinsicsSPIRV.td | 3 +- .../llvm-project/llvm/include/llvm/IR/Metadata.h | 6 +- .../llvm/include/llvm/IR/PatternMatch.h | 18 +- .../llvm-project/llvm/include/llvm/IR/Statepoint.h | 1 - .../llvm/include/llvm/InitializePasses.h | 13 - .../llvm-project/llvm/include/llvm/LinkAllPasses.h | 5 - .../llvm-project/llvm/include/llvm/MC/MCContext.h | 2 - .../llvm/include/llvm/MC/MCDXContainerStreamer.h | 2 - .../llvm/include/llvm/MC/MCMachObjectWriter.h | 4 +- .../llvm/include/llvm/MC/MCSPIRVStreamer.h | 2 - .../llvm/include/llvm/MC/MCTargetOptions.h | 1 - .../llvm/include/llvm/Object/Archive.h | 2 +- .../llvm/include/llvm/Object/DXContainer.h | 2 +- .../llvm/include/llvm/Object/Decompressor.h | 12 - .../llvm-project/llvm/include/llvm/Object/ELF.h | 31 +- .../llvm/include/llvm/Object/ELFObjectFile.h | 2 + .../llvm/include/llvm/Object/OffloadBinary.h | 6 +- .../llvm/include/llvm/ObjectYAML/OffloadYAML.h | 2 +- .../include/llvm/Passes/StandardInstrumentations.h | 6 +- .../include/llvm/ProfileData/InstrProfReader.h | 11 +- .../llvm/include/llvm/ProfileData/SampleProf.h | 18 +- .../include/llvm/Support/AMDHSAKernelDescriptor.h | 3 +- .../llvm/include/llvm/Support/Casting.h | 2 +- .../llvm/include/llvm/Support/Compression.h | 23 +- .../include/llvm/Support/DivisionByConstantInfo.h | 8 +- .../llvm-project/llvm/include/llvm/Support/JSON.h | 106 +- .../llvm/include/llvm/Support/SpecialCaseList.h | 7 +- .../llvm/include/llvm/Support/VirtualFileSystem.h | 1 - .../llvm/include/llvm/TableGen/DirectiveEmitter.h | 10 + .../llvm/include/llvm/TableGen/Record.h | 10 +- .../llvm/include/llvm/Target/TargetCallingConv.td | 9 + .../llvm/include/llvm/Target/TargetSelectionDAG.td | 3 + .../llvm/include/llvm/Transforms/IPO.h | 40 - .../llvm/include/llvm/Transforms/IPO/Attributor.h | 165 +- .../llvm/Transforms/IPO/PassManagerBuilder.h | 16 - .../llvm/Transforms/IPO/ProfiledCallGraph.h | 4 +- .../llvm/Transforms/InstCombine/InstCombiner.h | 2 +- .../llvm/include/llvm/Transforms/Instrumentation.h | 10 - .../Transforms/Instrumentation/AddressSanitizer.h | 5 - .../Instrumentation/HWAddressSanitizer.h | 1 - .../Transforms/Instrumentation/MemorySanitizer.h | 1 - .../Transforms/Instrumentation/SanitizerCoverage.h | 11 +- .../Transforms/Instrumentation/ThreadSanitizer.h | 1 - .../llvm/include/llvm/Transforms/Scalar.h | 4 - .../llvm/include/llvm/Transforms/Utils.h | 16 - .../include/llvm/Transforms/Utils/LowerAtomic.h | 6 +- .../llvm/include/llvm/Transforms/Utils/MisExpect.h | 5 + .../Transforms/Utils/ScalarEvolutionExpander.h | 23 +- .../llvm/include/llvm/WindowsDriver/MSVCPaths.h | 4 +- .../llvm/lib/Analysis/AliasSetTracker.cpp | 2 +- .../llvm/lib/Analysis/BasicAliasAnalysis.cpp | 2 +- .../llvm/lib/Analysis/BranchProbabilityInfo.cpp | 2 +- contrib/llvm-project/llvm/lib/Analysis/CFG.cpp | 2 +- .../llvm/lib/Analysis/CFLAndersAliasAnalysis.cpp | 2 +- contrib/llvm-project/llvm/lib/Analysis/CFLGraph.h | 3 +- .../llvm/lib/Analysis/CFLSteensAliasAnalysis.cpp | 2 +- .../llvm/lib/Analysis/ConstraintSystem.cpp | 2 +- .../llvm-project/llvm/lib/Analysis/CostModel.cpp | 26 +- contrib/llvm-project/llvm/lib/Analysis/DDG.cpp | 4 +- .../llvm/lib/Analysis/Delinearization.cpp | 2 +- .../llvm/lib/Analysis/DivergenceAnalysis.cpp | 8 +- .../llvm/lib/Analysis/GlobalsModRef.cpp | 4 +- .../llvm/lib/Analysis/IVDescriptors.cpp | 16 +- contrib/llvm-project/llvm/lib/Analysis/IVUsers.cpp | 2 +- .../lib/Analysis/InstructionPrecedenceTracking.cpp | 4 +- .../llvm/lib/Analysis/LazyValueInfo.cpp | 6 +- .../llvm/lib/Analysis/LegacyDivergenceAnalysis.cpp | 4 +- contrib/llvm-project/llvm/lib/Analysis/Lint.cpp | 2 +- .../llvm/lib/Analysis/LoopAccessAnalysis.cpp | 184 +- .../llvm/lib/Analysis/LoopCacheAnalysis.cpp | 29 +- .../llvm-project/llvm/lib/Analysis/LoopInfo.cpp | 19 +- .../llvm/lib/Analysis/MemoryBuiltins.cpp | 125 +- .../llvm/lib/Analysis/MemoryDependenceAnalysis.cpp | 10 +- .../llvm/lib/Analysis/MemoryProfileInfo.cpp | 226 ++ .../llvm/lib/Analysis/MemorySSAUpdater.cpp | 16 +- .../llvm/lib/Analysis/ModuleDebugInfoPrinter.cpp | 2 +- .../llvm/lib/Analysis/ModuleSummaryAnalysis.cpp | 32 +- .../llvm-project/llvm/lib/Analysis/MustExecute.cpp | 18 +- .../llvm/lib/Analysis/ScalarEvolution.cpp | 139 +- .../llvm/lib/Analysis/StackLifetime.cpp | 2 +- .../llvm/lib/Analysis/StackSafetyAnalysis.cpp | 20 +- .../llvm/lib/Analysis/TargetTransformInfo.cpp | 10 +- .../llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp | 5 +- .../llvm/lib/Analysis/ValueTracking.cpp | 12 +- .../llvm-project/llvm/lib/Analysis/VectorUtils.cpp | 4 +- .../lib/BinaryFormat/AMDGPUMetadataVerifier.cpp | 3 + .../llvm/lib/Bitcode/Reader/BitcodeReader.cpp | 55 + .../llvm/lib/Bitcode/Reader/MetadataLoader.cpp | 27 +- .../llvm/lib/Bitcode/Reader/ValueList.h | 1 - .../llvm/lib/Bitcode/Writer/BitcodeWriter.cpp | 5 +- .../llvm/lib/Bitcode/Writer/ValueEnumerator.cpp | 2 +- .../llvm/lib/CodeGen/AsmPrinter/AccelTable.cpp | 12 +- .../llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp | 55 +- .../lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp | 2 +- .../llvm/lib/CodeGen/AsmPrinter/DIEHash.cpp | 2 +- .../AsmPrinter/DbgEntityHistoryCalculator.cpp | 4 +- .../lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp | 2 +- .../lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp | 6 +- .../llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp | 6 +- .../llvm/lib/CodeGen/AtomicExpandPass.cpp | 6 +- .../llvm/lib/CodeGen/BasicBlockSections.cpp | 8 +- .../llvm/lib/CodeGen/CalcSpillWeights.cpp | 4 +- .../llvm/lib/CodeGen/CodeGenPrepare.cpp | 48 +- .../llvm/lib/CodeGen/DFAPacketizer.cpp | 2 +- .../llvm/lib/CodeGen/EarlyIfConversion.cpp | 10 +- .../llvm/lib/CodeGen/ExpandVectorPredication.cpp | 87 +- .../llvm-project/llvm/lib/CodeGen/FaultMaps.cpp | 2 +- .../llvm/lib/CodeGen/GlobalISel/CSEInfo.cpp | 2 +- .../llvm/lib/CodeGen/GlobalISel/CallLowering.cpp | 4 +- .../llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp | 20 +- .../llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp | 89 +- .../lib/CodeGen/GlobalISel/InlineAsmLowering.cpp | 5 +- .../lib/CodeGen/GlobalISel/LegalizerHelper.cpp | 30 +- .../llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp | 6 +- .../lib/CodeGen/GlobalISel/MachineIRBuilder.cpp | 2 +- .../llvm/lib/CodeGen/GlobalISel/Utils.cpp | 2 +- .../llvm/lib/CodeGen/HardwareLoops.cpp | 6 +- .../llvm/lib/CodeGen/ImplicitNullChecks.cpp | 2 +- .../llvm/lib/CodeGen/InlineSpiller.cpp | 22 +- .../llvm/lib/CodeGen/InterleavedAccessPass.cpp | 2 +- .../lib/CodeGen/InterleavedLoadCombinePass.cpp | 8 +- .../CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp | 49 +- .../CodeGen/LiveDebugValues/VarLocBasedImpl.cpp | 6 +- .../llvm/lib/CodeGen/LiveDebugVariables.cpp | 2 +- .../llvm/lib/CodeGen/LiveIntervals.cpp | 13 +- .../llvm/lib/CodeGen/LiveRangeEdit.cpp | 23 +- .../llvm/lib/CodeGen/LiveVariables.cpp | 3 +- .../llvm-project/llvm/lib/CodeGen/LowerEmuTLS.cpp | 2 +- .../llvm/lib/CodeGen/MIRCanonicalizerPass.cpp | 4 +- .../llvm/lib/CodeGen/MIRParser/MIParser.cpp | 2 +- .../llvm/lib/CodeGen/MIRParser/MIRParser.cpp | 4 +- .../llvm/lib/CodeGen/MLRegallocEvictAdvisor.cpp | 8 +- .../llvm/lib/CodeGen/MachineBasicBlock.cpp | 2 +- .../llvm/lib/CodeGen/MachineBlockPlacement.cpp | 8 +- .../llvm-project/llvm/lib/CodeGen/MachineCSE.cpp | 2 +- .../llvm/lib/CodeGen/MachineCombiner.cpp | 49 +- .../llvm/lib/CodeGen/MachineFrameInfo.cpp | 2 +- .../llvm/lib/CodeGen/MachineFunction.cpp | 4 +- .../llvm/lib/CodeGen/MachineFunctionSplitter.cpp | 2 +- .../llvm-project/llvm/lib/CodeGen/MachineInstr.cpp | 12 +- .../llvm-project/llvm/lib/CodeGen/MachineLICM.cpp | 17 +- .../llvm/lib/CodeGen/MachinePipeliner.cpp | 24 +- .../llvm/lib/CodeGen/MachineScheduler.cpp | 2 +- .../llvm-project/llvm/lib/CodeGen/MachineSink.cpp | 2 +- .../llvm/lib/CodeGen/MachineStableHash.cpp | 4 +- .../llvm/lib/CodeGen/MachineTraceMetrics.cpp | 4 +- .../llvm/lib/CodeGen/MachineVerifier.cpp | 4 +- contrib/llvm-project/llvm/lib/CodeGen/RDFGraph.cpp | 4 +- .../llvm-project/llvm/lib/CodeGen/RDFLiveness.cpp | 12 +- .../llvm/lib/CodeGen/ReachingDefAnalysis.cpp | 2 +- .../llvm-project/llvm/lib/CodeGen/RegAllocBase.cpp | 2 +- .../llvm/lib/CodeGen/RegAllocBasic.cpp | 1 + .../llvm-project/llvm/lib/CodeGen/RegAllocFast.cpp | 7 +- .../llvm/lib/CodeGen/RegAllocGreedy.cpp | 16 +- .../llvm-project/llvm/lib/CodeGen/RegAllocGreedy.h | 3 - .../llvm-project/llvm/lib/CodeGen/RegAllocPBQP.cpp | 2 +- .../llvm/lib/CodeGen/RegAllocScore.cpp | 5 +- .../llvm-project/llvm/lib/CodeGen/RegAllocScore.h | 4 +- .../llvm/lib/CodeGen/RegisterCoalescer.cpp | 4 +- .../llvm/lib/CodeGen/RegisterPressure.cpp | 6 +- .../llvm-project/llvm/lib/CodeGen/SafeStack.cpp | 4 +- .../llvm/lib/CodeGen/ScheduleDAGInstrs.cpp | 8 +- .../llvm/lib/CodeGen/SelectOptimize.cpp | 2 +- .../llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp | 327 +-- .../llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp | 12 +- .../CodeGen/SelectionDAG/LegalizeFloatTypes.cpp | 18 + .../CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp | 140 +- .../llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h | 5 + .../lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp | 24 + .../lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp | 2 +- .../CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp | 2 +- .../llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp | 131 +- .../CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 128 +- .../CodeGen/SelectionDAG/SelectionDAGDumper.cpp | 2 + .../lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp | 95 +- .../CodeGen/SelectionDAG/StatepointLowering.cpp | 42 +- .../lib/CodeGen/SelectionDAG/TargetLowering.cpp | 114 +- .../llvm-project/llvm/lib/CodeGen/SlotIndexes.cpp | 11 +- contrib/llvm-project/llvm/lib/CodeGen/SplitKit.cpp | 14 +- contrib/llvm-project/llvm/lib/CodeGen/SplitKit.h | 7 +- .../llvm-project/llvm/lib/CodeGen/StackMaps.cpp | 2 +- .../llvm/lib/CodeGen/SwiftErrorValueTracking.cpp | 2 +- .../llvm/lib/CodeGen/TailDuplicator.cpp | 2 +- .../llvm/lib/CodeGen/TargetInstrInfo.cpp | 4 +- .../llvm/lib/CodeGen/TargetLoweringBase.cpp | 2 +- .../llvm/lib/CodeGen/TwoAddressInstructionPass.cpp | 6 +- .../llvm/lib/CodeGen/TypePromotion.cpp | 6 +- .../llvm/lib/CodeGen/VLIWMachineScheduler.cpp | 2 +- .../llvm/lib/DWARFLinker/DWARFLinker.cpp | 64 +- .../lib/DWARFLinker/DWARFLinkerCompileUnit.cpp | 6 +- .../llvm/lib/DWARFLinker/DWARFStreamer.cpp | 20 +- contrib/llvm-project/llvm/lib/DWP/DWP.cpp | 19 +- .../lib/DebugInfo/CodeView/TypeRecordMapping.cpp | 6 +- .../llvm/lib/DebugInfo/DWARF/DWARFContext.cpp | 2 +- .../llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp | 4 - .../llvm/lib/DebugInfo/Symbolize/Markup.cpp | 3 + .../llvm/lib/DebugInfo/Symbolize/MarkupFilter.cpp | 389 +++- .../JITLink/COFFLinkGraphBuilder.cpp | 2 +- .../JITLink/DWARFRecordSectionSplitter.cpp | 2 +- .../Orc/JITTargetMachineBuilder.cpp | 4 + .../Orc/MapperJITLinkMemoryManager.cpp | 135 ++ .../llvm/lib/ExecutionEngine/Orc/MemoryMapper.cpp | 254 +++ .../lib/ExecutionEngine/Orc/Shared/OrcRTBridge.cpp | 15 + .../ExecutorSharedMemoryMapperService.cpp | 341 ++++ .../TargetProcess/SimpleExecutorMemoryManager.cpp | 3 +- .../llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp | 31 +- contrib/llvm-project/llvm/lib/IR/Function.cpp | 2 + contrib/llvm-project/llvm/lib/IR/GCStrategy.cpp | 5 +- contrib/llvm-project/llvm/lib/IR/Globals.cpp | 37 +- contrib/llvm-project/llvm/lib/IR/InlineAsm.cpp | 20 +- contrib/llvm-project/llvm/lib/IR/Instructions.cpp | 13 +- contrib/llvm-project/llvm/lib/IR/IntrinsicInst.cpp | 22 +- contrib/llvm-project/llvm/lib/IR/Verifier.cpp | 110 +- contrib/llvm-project/llvm/lib/Linker/IRMover.cpp | 32 +- .../llvm-project/llvm/lib/MC/ELFObjectWriter.cpp | 82 +- contrib/llvm-project/llvm/lib/MC/MCContext.cpp | 18 - .../llvm-project/llvm/lib/MC/MCMachOStreamer.cpp | 18 +- .../llvm/lib/MC/MCParser/MasmParser.cpp | 33 +- contrib/llvm-project/llvm/lib/MC/MCPseudoProbe.cpp | 3 +- .../llvm-project/llvm/lib/MC/MachObjectWriter.cpp | 25 +- .../llvm/lib/MC/WinCOFFObjectWriter.cpp | 1 + .../llvm-project/llvm/lib/MC/XCOFFObjectWriter.cpp | 43 +- .../llvm/lib/ObjCopy/ELF/ELFObject.cpp | 3 - contrib/llvm-project/llvm/lib/Object/Archive.cpp | 61 +- .../llvm-project/llvm/lib/Object/Decompressor.cpp | 39 +- .../llvm/lib/Object/WasmObjectFile.cpp | 2 +- .../llvm/lib/Passes/PassBuilderPipelines.cpp | 2 +- .../llvm/lib/Passes/StandardInstrumentations.cpp | 84 +- .../lib/ProfileData/Coverage/CoverageMapping.cpp | 12 +- .../llvm/lib/ProfileData/InstrProfReader.cpp | 38 +- .../llvm/lib/Support/AddressRanges.cpp | 57 +- .../llvm-project/llvm/lib/Support/CommandLine.cpp | 2 +- .../llvm-project/llvm/lib/Support/Compression.cpp | 65 + .../llvm/lib/Support/DivisionByConstantInfo.cpp | 8 +- .../llvm-project/llvm/lib/Support/RISCVISAInfo.cpp | 2 + .../llvm-project/llvm/lib/TableGen/JSONBackend.cpp | 4 +- contrib/llvm-project/llvm/lib/TableGen/Record.cpp | 8 + .../llvm-project/llvm/lib/TableGen/TGParser.cpp | 2 + .../llvm/lib/Target/AArch64/AArch64.td | 2 +- .../lib/Target/AArch64/AArch64ISelDAGToDAG.cpp | 55 +- .../lib/Target/AArch64/AArch64ISelLowering.cpp | 119 +- .../llvm/lib/Target/AArch64/AArch64ISelLowering.h | 9 +- .../llvm/lib/Target/AArch64/AArch64InstrFormats.td | 6 + .../llvm/lib/Target/AArch64/AArch64InstrInfo.td | 25 + .../lib/Target/AArch64/AArch64MachineScheduler.cpp | 4 +- .../llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td | 36 +- .../lib/Target/AArch64/AArch64TargetMachine.cpp | 24 +- .../Target/AArch64/AArch64TargetTransformInfo.cpp | 86 + .../Target/AArch64/AArch64TargetTransformInfo.h | 10 + .../AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp | 65 +- .../llvm-project/llvm/lib/Target/AMDGPU/AMDGPU.td | 17 +- .../lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.cpp | 5 + .../lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.h | 2 + .../llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp | 67 + .../llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h | 3 + .../llvm/lib/Target/AMDGPU/AMDGPUAttributes.def | 1 + .../llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp | 19 +- .../llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp | 14 +- .../llvm/lib/Target/AMDGPU/AMDGPUGISel.td | 4 + .../Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp | 2 + .../llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp | 76 +- .../llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h | 14 +- .../Target/AMDGPU/AMDGPUInstructionSelector.cpp | 166 +- .../lib/Target/AMDGPU/AMDGPUInstructionSelector.h | 8 +- .../llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp | 32 + .../llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h | 7 + .../llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp | 23 +- .../lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp | 45 +- .../lib/Target/AMDGPU/AMDGPUMachineFunction.cpp | 16 + .../llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h | 5 +- .../lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.cpp | 47 +- .../lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.h | 6 +- .../lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp | 5 +- .../lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp | 20 +- .../AMDGPU/AMDGPUReplaceLDSUseWithPointer.cpp | 2 +- .../lib/Target/AMDGPU/AMDGPUSearchableTables.td | 16 + .../llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp | 50 +- .../llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp | 3 + .../Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp | 102 +- .../AMDGPU/Disassembler/AMDGPUDisassembler.cpp | 91 +- .../AMDGPU/Disassembler/AMDGPUDisassembler.h | 1 + .../llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp | 17 + .../llvm/lib/Target/AMDGPU/GCNProcessors.td | 4 +- .../llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp | 7 +- .../llvm/lib/Target/AMDGPU/GCNSchedStrategy.h | 2 +- .../llvm/lib/Target/AMDGPU/GCNSubtarget.h | 7 +- .../AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp | 5 +- .../AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp | 2 + .../llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp | 323 ++- .../llvm/lib/Target/AMDGPU/SIISelLowering.cpp | 40 +- .../llvm/lib/Target/AMDGPU/SIISelLowering.h | 1 + .../llvm/lib/Target/AMDGPU/SIInstrFormats.td | 2 +- .../llvm/lib/Target/AMDGPU/SIInstrInfo.cpp | 23 +- .../llvm/lib/Target/AMDGPU/SIInstrInfo.h | 3 +- .../llvm/lib/Target/AMDGPU/SIInstrInfo.td | 110 +- .../lib/Target/AMDGPU/SIMachineFunctionInfo.cpp | 11 + .../llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h | 6 + .../lib/Target/AMDGPU/SIOptimizeExecMasking.cpp | 309 +-- .../Target/AMDGPU/SIOptimizeExecMaskingPreRA.cpp | 82 +- .../llvm/lib/Target/AMDGPU/SIProgramInfo.h | 2 + .../llvm/lib/Target/AMDGPU/SMInstructions.td | 119 +- .../lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp | 4 +- .../lib/Target/AMDGPU/Utils/AMDGPUMemoryUtils.h | 2 +- .../llvm/lib/Target/AMDGPU/VOP1Instructions.td | 78 + .../llvm/lib/Target/AMDGPU/VOP3Instructions.td | 100 +- .../llvm/lib/Target/AMDGPU/VOP3PInstructions.td | 38 + .../llvm/lib/Target/AMDGPU/VOPCInstructions.td | 26 +- .../llvm/lib/Target/AMDGPU/VOPInstructions.td | 42 + .../llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp | 4 +- .../llvm/lib/Target/ARM/ARMBaseInstrInfo.h | 3 +- .../llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp | 15 +- .../llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp | 6 +- .../llvm/lib/Target/ARM/ARMISelLowering.cpp | 42 + .../llvm/lib/Target/ARM/ARMISelLowering.h | 2 + .../llvm/lib/Target/ARM/ARMInstrMVE.td | 6 + .../llvm/lib/Target/ARM/ARMInstrThumb.td | 8 +- .../llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp | 14 +- .../llvm/lib/Target/ARM/ARMTargetTransformInfo.h | 8 +- .../llvm/lib/Target/AVR/AVRSubtarget.h | 14 +- .../llvm/lib/Target/CSKY/CSKYInstrInfo.cpp | 2 +- .../DirectX/DXILWriter/DXILBitcodeWriter.cpp | 8 +- .../DirectX/DXILWriter/DXILValueEnumerator.cpp | 2 +- .../lib/Target/Hexagon/HexagonVectorCombine.cpp | 1 - .../lib/Target/LoongArch/LoongArchISelLowering.cpp | 5 +- .../Target/LoongArch/LoongArchTargetMachine.cpp | 4 +- .../llvm/lib/Target/Mips/MipsISelLowering.cpp | 6 + .../llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp | 128 +- .../llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h | 100 +- .../llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp | 95 +- .../llvm/lib/Target/NVPTX/NVPTXSubtarget.h | 1 + .../llvm/lib/Target/NVPTX/NVPTXUtilities.h | 10 + .../llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp | 25 +- .../llvm/lib/Target/PowerPC/PPCInstrInfo.cpp | 4 +- .../llvm/lib/Target/PowerPC/PPCInstrInfo.h | 3 +- .../lib/Target/PowerPC/PPCLoopInstrFormPrep.cpp | 13 +- contrib/llvm-project/llvm/lib/Target/RISCV/RISCV.h | 3 + .../llvm-project/llvm/lib/Target/RISCV/RISCV.td | 26 +- .../llvm/lib/Target/RISCV/RISCVCodeGenPrepare.cpp | 169 ++ .../llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp | 27 +- .../llvm/lib/Target/RISCV/RISCVISelLowering.cpp | 376 ++-- .../llvm/lib/Target/RISCV/RISCVInstrInfo.cpp | 112 +- .../llvm/lib/Target/RISCV/RISCVInstrInfo.h | 13 + .../llvm/lib/Target/RISCV/RISCVInstrInfo.td | 7 + .../llvm/lib/Target/RISCV/RISCVInstrInfoM.td | 22 +- .../llvm/lib/Target/RISCV/RISCVSExtWRemoval.cpp | 3 +- .../llvm/lib/Target/RISCV/RISCVSubtarget.cpp | 8 +- .../llvm/lib/Target/RISCV/RISCVSubtarget.h | 2 + .../llvm/lib/Target/RISCV/RISCVTargetMachine.cpp | 7 +- .../lib/Target/RISCV/RISCVTargetTransformInfo.cpp | 5 +- .../Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.cpp | 10 + .../lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.h | 13 + .../Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp | 15 +- contrib/llvm-project/llvm/lib/Target/SPIRV/SPIRV.h | 1 + .../llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp | 164 +- .../llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp | 201 +- .../llvm/lib/Target/SPIRV/SPIRVCallLowering.h | 6 +- .../lib/Target/SPIRV/SPIRVDuplicatesTracker.cpp | 2 +- .../llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.h | 4 +- .../llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp | 61 +- .../llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp | 425 +++- .../llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h | 53 +- .../llvm/lib/Target/SPIRV/SPIRVInstrInfo.cpp | 14 +- .../llvm/lib/Target/SPIRV/SPIRVInstrInfo.h | 1 + .../llvm/lib/Target/SPIRV/SPIRVInstrInfo.td | 24 +- .../lib/Target/SPIRV/SPIRVInstructionSelector.cpp | 252 ++- .../llvm/lib/Target/SPIRV/SPIRVMCInstLower.cpp | 7 +- .../llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp | 168 +- .../llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.h | 8 +- .../llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp | 75 +- .../lib/Target/SPIRV/SPIRVPrepareFunctions.cpp | 288 +++ .../llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp | 3 +- .../llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp | 5 +- .../llvm/lib/Target/SPIRV/SPIRVUtils.cpp | 31 + .../llvm/lib/Target/SPIRV/SPIRVUtils.h | 6 + .../Target/Sparc/TargetInfo/SparcTargetInfo.cpp | 8 +- .../llvm/lib/Target/SystemZ/SystemZCallingConv.cpp | 4 - .../llvm/lib/Target/SystemZ/SystemZCallingConv.h | 38 - .../llvm/lib/Target/SystemZ/SystemZCallingConv.td | 34 +- .../lib/Target/SystemZ/SystemZFrameLowering.cpp | 101 +- .../llvm/lib/Target/SystemZ/SystemZFrameLowering.h | 2 + .../lib/Target/SystemZ/SystemZISelLowering.cpp | 8 +- .../llvm/lib/Target/VE/VEInstrInfo.cpp | 40 +- .../llvm/lib/Target/VE/VEInstrPatternsVec.td | 14 + .../llvm-project/llvm/lib/Target/VE/VEInstrVec.td | 27 + .../llvm/lib/Target/VE/VERegisterInfo.cpp | 201 ++ .../Target/WebAssembly/WebAssemblyInstrInfo.cpp | 2 +- .../lib/Target/WebAssembly/WebAssemblyInstrInfo.h | 3 +- .../Target/WebAssembly/WebAssemblyRegStackify.cpp | 23 +- contrib/llvm-project/llvm/lib/Target/X86/X86.td | 2 +- .../llvm/lib/Target/X86/X86FixupBWInsts.cpp | 12 +- .../llvm/lib/Target/X86/X86ISelLowering.cpp | 561 +++-- .../llvm/lib/Target/X86/X86InstrAVX512.td | 48 +- .../llvm/lib/Target/X86/X86InstrInfo.cpp | 12 +- .../llvm/lib/Target/X86/X86InstrInfo.h | 3 +- .../llvm/lib/Target/X86/X86InstrSSE.td | 70 + .../llvm/lib/Target/X86/X86TargetMachine.cpp | 8 +- .../llvm/lib/Target/X86/X86TargetTransformInfo.cpp | 65 +- .../llvm/lib/Target/XCore/XCoreFrameLowering.cpp | 2 +- .../llvm/lib/ToolDrivers/llvm-lib/Options.td | 1 + .../llvm/lib/Transforms/Coroutines/CoroCleanup.cpp | 4 +- .../llvm/lib/Transforms/Coroutines/CoroInternal.h | 2 - .../llvm/lib/Transforms/Coroutines/CoroSplit.cpp | 19 +- .../llvm/lib/Transforms/IPO/Attributor.cpp | 278 ++- .../lib/Transforms/IPO/AttributorAttributes.cpp | 2156 ++++++++++++-------- .../llvm/lib/Transforms/IPO/FunctionImport.cpp | 45 +- .../llvm/lib/Transforms/IPO/GlobalOpt.cpp | 2 +- .../llvm-project/llvm/lib/Transforms/IPO/IPO.cpp | 4 - .../llvm/lib/Transforms/IPO/Internalize.cpp | 36 +- .../llvm/lib/Transforms/IPO/LowerTypeTests.cpp | 42 - .../llvm/lib/Transforms/IPO/OpenMPOpt.cpp | 2 +- .../llvm/lib/Transforms/IPO/PassManagerBuilder.cpp | 106 +- .../llvm/lib/Transforms/IPO/SampleProfile.cpp | 102 +- .../llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp | 70 - .../Transforms/InstCombine/InstCombineAddSub.cpp | 12 +- .../Transforms/InstCombine/InstCombineAndOrXor.cpp | 45 +- .../Transforms/InstCombine/InstCombineCalls.cpp | 55 +- .../Transforms/InstCombine/InstCombineCompares.cpp | 57 +- .../Transforms/InstCombine/InstCombineInternal.h | 2 +- .../Transforms/InstCombine/InstCombineShifts.cpp | 18 + .../InstCombine/InstructionCombining.cpp | 52 +- .../Instrumentation/AddressSanitizer.cpp | 3 + .../lib/Transforms/Instrumentation/CGProfile.cpp | 36 - .../Instrumentation/ControlHeightReduction.cpp | 53 - .../Transforms/Instrumentation/InstrOrderFile.cpp | 31 - .../Transforms/Instrumentation/InstrProfiling.cpp | 44 - .../Transforms/Instrumentation/Instrumentation.cpp | 5 - .../Transforms/Instrumentation/MemorySanitizer.cpp | 16 + .../Instrumentation/PGOInstrumentation.cpp | 42 +- .../Instrumentation/SanitizerCoverage.cpp | 64 - .../lib/Transforms/Scalar/DeadStoreElimination.cpp | 73 +- .../llvm/lib/Transforms/Scalar/IndVarSimplify.cpp | 5 +- .../Scalar/InductiveRangeCheckElimination.cpp | 4 +- .../lib/Transforms/Scalar/LoopDataPrefetch.cpp | 6 +- .../lib/Transforms/Scalar/LoopIdiomRecognize.cpp | 4 +- .../llvm/lib/Transforms/Scalar/LoopInterchange.cpp | 1 - .../llvm/lib/Transforms/Scalar/LoopPredication.cpp | 29 +- .../llvm/lib/Transforms/Scalar/LoopSimplifyCFG.cpp | 12 + .../lib/Transforms/Scalar/LoopStrengthReduce.cpp | 93 +- .../llvm/lib/Transforms/Scalar/Reassociate.cpp | 58 +- .../Transforms/Scalar/RewriteStatepointsForGC.cpp | 14 +- .../llvm/lib/Transforms/Scalar/Scalar.cpp | 2 - .../llvm/lib/Transforms/Scalar/StructurizeCFG.cpp | 59 - .../llvm/lib/Transforms/Utils/BasicBlockUtils.cpp | 13 +- .../llvm/lib/Transforms/Utils/BuildLibCalls.cpp | 228 ++- .../lib/Transforms/Utils/CanonicalizeAliases.cpp | 28 - .../llvm/lib/Transforms/Utils/CloneFunction.cpp | 19 +- .../lib/Transforms/Utils/EntryExitInstrumenter.cpp | 59 - .../llvm/lib/Transforms/Utils/Evaluator.cpp | 12 +- .../lib/Transforms/Utils/FunctionImportUtils.cpp | 7 + .../llvm/lib/Transforms/Utils/InlineFunction.cpp | 10 +- .../llvm/lib/Transforms/Utils/Local.cpp | 27 +- .../lib/Transforms/Utils/LoopRotationUtils.cpp | 2 +- .../llvm/lib/Transforms/Utils/LoopSimplify.cpp | 6 +- .../llvm/lib/Transforms/Utils/LoopUtils.cpp | 10 +- .../llvm/lib/Transforms/Utils/LowerAtomic.cpp | 2 +- .../llvm/lib/Transforms/Utils/NameAnonGlobals.cpp | 31 - .../Transforms/Utils/ScalarEvolutionExpander.cpp | 19 +- .../llvm/lib/Transforms/Utils/SimplifyCFG.cpp | 2 +- .../llvm/lib/Transforms/Utils/SimplifyIndVar.cpp | 105 +- .../llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp | 11 +- .../llvm/lib/Transforms/Utils/UnifyLoopExits.cpp | 46 +- .../llvm/lib/Transforms/Utils/Utils.cpp | 2 - .../lib/Transforms/Vectorize/LoopVectorize.cpp | 245 +-- .../lib/Transforms/Vectorize/SLPVectorizer.cpp | 11 +- .../lib/Transforms/Vectorize/VPRecipeBuilder.h | 6 +- .../llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp | 46 + .../lib/Transforms/Vectorize/VPlanVerifier.cpp | 66 +- .../lib/Transforms/Vectorize/VectorCombine.cpp | 2 +- contrib/llvm-project/llvm/tools/llc/llc.cpp | 2 - .../llvm-project/llvm/tools/llvm-ar/llvm-ar.cpp | 162 +- .../llvm/tools/llvm-cov/CodeCoverage.cpp | 17 +- .../llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp | 2 +- .../llvm/tools/llvm-dwarfutil/DebugInfoLinker.cpp | 277 +++ .../llvm/tools/llvm-dwarfutil/DebugInfoLinker.h | 31 + .../llvm-project/llvm/tools/llvm-dwarfutil/Error.h | 44 + .../llvm/tools/llvm-dwarfutil/Options.h | 46 + .../llvm/tools/llvm-dwarfutil/Options.td | 65 + .../llvm/tools/llvm-dwarfutil/llvm-dwarfutil.cpp | 527 +++++ .../llvm-project/llvm/tools/llvm-mc/llvm-mc.cpp | 4 +- .../llvm/tools/llvm-objdump/llvm-objdump.cpp | 62 +- .../llvm/tools/llvm-objdump/llvm-objdump.h | 2 +- .../llvm/tools/llvm-profdata/llvm-profdata.cpp | 7 +- .../llvm/tools/llvm-size/llvm-size.cpp | 7 +- .../llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp | 15 +- contrib/llvm-project/llvm/tools/opt/opt.cpp | 28 - .../llvm/utils/TableGen/CTagsEmitter.cpp | 29 +- .../llvm/utils/TableGen/CallingConvEmitter.cpp | 25 +- .../llvm/utils/TableGen/DXILEmitter.cpp | 51 +- .../llvm/utils/TableGen/DirectiveEmitter.cpp | 82 + .../llvm/utils/TableGen/SearchableTableEmitter.cpp | 6 +- contrib/llvm-project/openmp/runtime/src/kmp.h | 13 + *** 63399 LINES SKIPPED *** From nobody Sun Apr 9 21:35:15 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvlks5pyMz44JTc; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvlks04Yrz4M9k; Sun, 9 Apr 2023 21:35:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076117; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Uw8GxdvTkSr4ZyFYurcgeRMIlpLpiZjCA3UeTKVTKIg=; b=cQqNQvbpzXCT0Wy6avJZhc44E6gYCghK7/hht9hh22FXw+df61jKyzEGVpX6r8Fc77V99k 7G1XzWuDG3JKDdcs2L7ObWbi/NMsPEgpf1EJrEkENAjvpOujmol9vkDj2KrUYT5KgqVkR6 DNJvST3zFeM3tV8oA8hmZgglOGK4Rv83o7KYVC3fM6RMzMywt80VdbxDZ7oaVj04IBaRJN tbflsSdBO4fcu9iHuO3Yv4JcN96QOrPjpUaYFtxaoA9d5JTUBeQrgAJkR4t612hGNUXyvW WFknpKP8WQbsmZ+KSbQyhH6VCAISj+A9OjiiRmANlNSl1t0nUU8uOwuNd7EQRQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076117; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Uw8GxdvTkSr4ZyFYurcgeRMIlpLpiZjCA3UeTKVTKIg=; b=he0ZF+9KUAVDHYq0HKhpekJzlUgxjtDJEGmZAk+WxaniyXRWCbYAxPhtdTPHffAeQW/fid U3ZLBXBIJS+c0fWCnobdlb2QLYsIgU4vwx6fN7Z0lL3Nz2tY8cLAfmNY+ZpXe3V1omW6Qa lLf81kVL3PLre6Fv4Pcri6siWStgzZ0gt+nHaULzulTqR0Bmz3NgqW/Mmybn/Jtj4Gwjxn doIDSgQGxbpe2VQLNYSj4zJmu1VXkEPJZ8io3SMSi8PS75KH1AiOsBtxS2dSqRHVSBPGFa 9Vo0k5hb5iRMvCOmlV3K2JgrVeX6pSK4YYwUQnlCGHC+ATWV6PhRPphHEMakKg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076117; a=rsa-sha256; cv=none; b=BYevaZ/FFBK6LJcCMFUfpSDJTaNFNw9Ag12y8l4DhWcz65YANQ1jzQkHRHN+1rLiZeOv7t 0YuWrz+R2L4x8zq7aygw3tZ7w6E3IQBXU+j0G0QksYiba3Ku6PAI1on3DkcKr4iXT3Cvnh SUj+XJ1CoE9ztlYPB2fQZtHyh0oTR5WgPC5zyXCia1lTpYYyv25lbd1fspSetDFvM5xPni jKU0OSkUluQt+TMsKbJwuI6vQGvHK97ZQo3h+AGP1rHjsiO56tfeZ9oh9vHeRmUB7CnK8N 0icfuYA+CG5UnjkylWWdbaALSSfWf61UmoAO2y0OFz+5Swt6Z1BUejDY4nCAsA== 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 4Pvlkr3RwnzPKT; Sun, 9 Apr 2023 21:35:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZGqP081537; Sun, 9 Apr 2023 21:35:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZFjU081535; Sun, 9 Apr 2023 21:35:15 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:15 GMT Message-Id: <202304092135.339LZFjU081535@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 74093eb27f68 - stable/13 - Merge llvm-project main llvmorg-15-init-17826-g1f8ae9d7e7e4 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 74093eb27f687d9f89d8db457e410aec1cd71b6b Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=74093eb27f687d9f89d8db457e410aec1cd71b6b commit 74093eb27f687d9f89d8db457e410aec1cd71b6b Author: Dimitry Andric AuthorDate: 2022-07-27 20:11:54 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:54:48 +0000 Merge llvm-project main llvmorg-15-init-17826-g1f8ae9d7e7e4 This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-15-init-17826-g1f8ae9d7e7e4, the last commit before the upstream release/16.x branch was created. PR: 265425 MFC after: 2 weeks (cherry picked from commit 972a253a57b6f144b0e4a3e2080a2a0076ec55a0) --- .../clang/include/clang/Analysis/CFG.h | 3 +- .../include/clang/Analysis/ConstructionContext.h | 72 +- .../FlowSensitive/DataflowAnalysisContext.h | 4 + .../Analysis/FlowSensitive/DataflowEnvironment.h | 15 + .../clang/Analysis/FlowSensitive/MapLattice.h | 9 +- .../clang/Analysis/FlowSensitive/Transfer.h | 9 +- .../FlowSensitive/TypeErasedDataflowAnalysis.h | 11 +- .../include/clang/Analysis/FlowSensitive/Value.h | 59 +- .../clang/include/clang/Basic/AttrDocs.td | 6 + .../clang/include/clang/Basic/DiagnosticIDs.h | 24 +- .../include/clang/Basic/DiagnosticParseKinds.td | 6 +- .../include/clang/Basic/DiagnosticSemaKinds.td | 8 +- .../clang/include/clang/Basic/LangOptions.def | 1 + .../clang/include/clang/Basic/TokenKinds.def | 3 + .../clang/include/clang/Basic/riscv_vector.td | 103 +-- .../clang/include/clang/CodeGen/ModuleBuilder.h | 8 +- .../clang/include/clang/Driver/Driver.h | 2 - .../clang/include/clang/Driver/Options.td | 4 + .../clang/include/clang/Frontend/Utils.h | 4 +- .../clang/include/clang/Lex/PreprocessingRecord.h | 1 - .../clang/include/clang/Lex/Preprocessor.h | 1 - .../clang/include/clang/Parse/Parser.h | 3 +- .../clang/include/clang/Sema/Overload.h | 4 + .../include/clang/Sema/RISCVIntrinsicManager.h | 36 + .../llvm-project/clang/include/clang/Sema/Scope.h | 38 +- .../llvm-project/clang/include/clang/Sema/Sema.h | 14 +- .../clang/include/clang/Sema/Template.h | 34 + .../clang/include/clang/Serialization/ASTWriter.h | 4 + .../Core/BugReporter/BugReporterVisitors.h | 2 +- .../StaticAnalyzer/Core/PathSensitive/ExprEngine.h | 19 +- .../Core/PathSensitive/ProgramState.h | 2 - .../StaticAnalyzer/Core/PathSensitive/SVals.h | 1 - .../include/clang/Support/RISCVVIntrinsicUtils.h | 100 ++- .../RefactoringActionRuleRequirements.h | 2 +- .../Tooling/Refactoring/RefactoringActionRules.h | 4 +- .../clang/Tooling/Refactoring/RefactoringOptions.h | 4 +- contrib/llvm-project/clang/lib/AST/ASTImporter.cpp | 52 +- contrib/llvm-project/clang/lib/AST/Decl.cpp | 14 +- .../llvm-project/clang/lib/AST/ExprConstant.cpp | 10 +- contrib/llvm-project/clang/lib/Analysis/CFG.cpp | 45 +- .../clang/lib/Analysis/ConstructionContext.cpp | 11 + .../clang/lib/Analysis/ExprMutationAnalyzer.cpp | 18 +- .../FlowSensitive/DataflowAnalysisContext.cpp | 71 +- .../Analysis/FlowSensitive/DataflowEnvironment.cpp | 48 +- .../lib/Analysis/FlowSensitive/DebugSupport.cpp | 14 + .../clang/lib/Analysis/FlowSensitive/Transfer.cpp | 48 +- .../FlowSensitive/TypeErasedDataflowAnalysis.cpp | 20 +- .../FlowSensitive/WatchedLiteralsSolver.cpp | 110 ++- .../clang/lib/Analysis/LiveVariables.cpp | 27 +- .../llvm-project/clang/lib/Basic/Targets/CSKY.h | 2 +- .../llvm-project/clang/lib/Basic/Targets/PPC.cpp | 3 + contrib/llvm-project/clang/lib/Basic/Targets/X86.h | 4 +- contrib/llvm-project/clang/lib/CodeGen/ABIInfo.h | 2 +- contrib/llvm-project/clang/lib/CodeGen/CGCXXABI.h | 2 + contrib/llvm-project/clang/lib/CodeGen/CGCall.cpp | 19 +- contrib/llvm-project/clang/lib/CodeGen/CGClass.cpp | 14 +- .../llvm-project/clang/lib/CodeGen/CGDebugInfo.cpp | 8 +- .../llvm-project/clang/lib/CodeGen/CGObjCGNU.cpp | 12 +- .../clang/lib/CodeGen/CGOpenMPRuntimeGPU.h | 23 +- .../clang/lib/CodeGen/CodeGenAction.cpp | 25 +- .../clang/lib/CodeGen/CodeGenModule.cpp | 39 +- .../llvm-project/clang/lib/CodeGen/CodeGenModule.h | 11 +- .../clang/lib/CodeGen/ItaniumCXXABI.cpp | 6 +- .../clang/lib/CodeGen/MicrosoftCXXABI.cpp | 2 +- .../clang/lib/CodeGen/ModuleBuilder.cpp | 24 +- .../CodeGen/ObjectFilePCHContainerOperations.cpp | 4 +- .../clang/lib/CodeGen/SanitizerMetadata.h | 1 - .../clang/lib/Driver/ToolChains/Arch/ARM.cpp | 5 + .../clang/lib/Driver/ToolChains/Arch/PPC.cpp | 4 + .../clang/lib/Driver/ToolChains/Clang.cpp | 7 + .../clang/lib/Driver/ToolChains/FreeBSD.cpp | 6 +- .../llvm-project/clang/lib/Edit/EditedSource.cpp | 4 +- .../clang/lib/Format/FormatTokenLexer.cpp | 159 ++-- .../clang/lib/Frontend/CompilerInvocation.cpp | 6 + contrib/llvm-project/clang/lib/Headers/stdatomic.h | 3 +- .../clang/lib/Interpreter/IncrementalExecutor.h | 1 - contrib/llvm-project/clang/lib/Parse/ParseDecl.cpp | 36 +- .../llvm-project/clang/lib/Parse/ParseDeclCXX.cpp | 594 +++++++-------- .../llvm-project/clang/lib/Parse/ParsePragma.cpp | 52 ++ contrib/llvm-project/clang/lib/Parse/Parser.cpp | 4 +- contrib/llvm-project/clang/lib/Sema/Scope.cpp | 82 +- contrib/llvm-project/clang/lib/Sema/Sema.cpp | 7 +- contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp | 20 +- contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp | 37 +- contrib/llvm-project/clang/lib/Sema/SemaLookup.cpp | 45 ++ .../llvm-project/clang/lib/Sema/SemaOverload.cpp | 26 +- .../clang/lib/Sema/SemaRISCVVectorLookup.cpp | 395 ++++++++++ contrib/llvm-project/clang/lib/Sema/SemaStmt.cpp | 10 +- .../llvm-project/clang/lib/Sema/SemaTemplate.cpp | 55 +- .../clang/lib/Serialization/ASTReaderDecl.cpp | 3 +- .../clang/lib/Serialization/ASTWriter.cpp | 6 +- .../lib/StaticAnalyzer/Checkers/CStringChecker.cpp | 100 ++- .../Checkers/InnerPointerChecker.cpp | 6 +- .../lib/StaticAnalyzer/Checkers/MallocChecker.cpp | 11 +- .../lib/StaticAnalyzer/Checkers/PaddingChecker.cpp | 2 +- .../Checkers/StdLibraryFunctionsChecker.cpp | 2 +- .../UninitializedObjectChecker.cpp | 20 +- .../UninitializedObject/UninitializedPointee.cpp | 26 +- .../StaticAnalyzer/Core/BugReporterVisitors.cpp | 23 +- .../clang/lib/StaticAnalyzer/Core/ExprEngine.cpp | 91 ++- .../lib/StaticAnalyzer/Core/ExprEngineCXX.cpp | 124 +++- .../Core/ExprEngineCallAndReturn.cpp | 28 +- .../clang/lib/StaticAnalyzer/Core/RegionStore.cpp | 69 +- .../clang/lib/Support/RISCVVIntrinsicUtils.cpp | 88 ++- .../clang/utils/TableGen/RISCVVEmitter.cpp | 417 +++++++---- .../llvm-project/clang/utils/TableGen/TableGen.cpp | 6 + .../clang/utils/TableGen/TableGenBackends.h | 1 + .../compiler-rt/lib/builtins/int_types.h | 2 +- .../lib/sanitizer_common/sanitizer_common.h | 5 + .../lib/sanitizer_common/sanitizer_win.cpp | 11 + .../compiler-rt/lib/tsan/rtl/tsan_flags.inc | 4 - .../compiler-rt/lib/tsan/rtl/tsan_platform.h | 1 + .../compiler-rt/lib/tsan/rtl/tsan_rtl.cpp | 63 +- .../compiler-rt/lib/tsan/rtl/tsan_rtl.h | 40 +- .../compiler-rt/lib/tsan/rtl/tsan_rtl_access.cpp | 9 - .../compiler-rt/lib/tsan/rtl/tsan_rtl_report.cpp | 44 +- .../compiler-rt/lib/tsan/rtl/tsan_shadow.h | 10 + .../llvm-project/libcxx/include/__algorithm/copy.h | 16 +- .../libcxx/include/__algorithm/copy_backward.h | 42 +- .../libcxx/include/__algorithm/equal_range.h | 1 + .../libcxx/include/__algorithm/includes.h | 19 +- .../libcxx/include/__algorithm/inplace_merge.h | 4 +- .../libcxx/include/__algorithm/is_heap.h | 2 +- .../libcxx/include/__algorithm/is_heap_until.h | 4 +- .../include/__algorithm/ranges_copy_backward.h | 7 +- .../libcxx/include/__algorithm/ranges_generate.h | 24 +- .../libcxx/include/__algorithm/ranges_generate_n.h | 14 +- .../libcxx/include/__algorithm/ranges_includes.h | 8 +- .../libcxx/include/__algorithm/ranges_is_heap.h | 23 +- .../include/__algorithm/ranges_is_heap_until.h | 20 +- contrib/llvm-project/libcxx/include/__assert | 6 +- .../libcxx/include/__concepts/arithmetic.h | 2 + .../libcxx/include/__format/formatter_integer.h | 1 + .../libcxx/include/__functional/invoke.h | 11 +- contrib/llvm-project/libcxx/include/__hash_table | 1 + .../include/__iterator/incrementable_traits.h | 1 + .../libcxx/include/__iterator/iterator_traits.h | 6 + .../libcxx/include/__iterator/reverse_iterator.h | 184 ++++- .../libcxx/include/__memory/swap_allocator.h | 53 ++ .../libcxx/include/__memory/temporary_buffer.h | 1 + .../include/__memory/uninitialized_algorithms.h | 144 ++++ contrib/llvm-project/libcxx/include/__split_buffer | 1 + contrib/llvm-project/libcxx/include/__tree | 1 + .../libcxx/include/__type_traits/aligned_storage.h | 142 ++++ .../libcxx/include/__type_traits/aligned_union.h | 55 ++ .../include/__type_traits/common_reference.h | 188 +++++ .../libcxx/include/__type_traits/common_type.h | 138 ++++ .../libcxx/include/__type_traits/copy_cv.h | 54 ++ .../libcxx/include/__type_traits/copy_cvref.h | 46 ++ .../include/__type_traits/is_nothrow_convertible.h | 53 ++ .../include/__type_traits/is_primary_template.h | 34 + .../include/__type_traits/is_signed_integer.h | 33 + .../include/__type_traits/is_unsigned_integer.h | 33 + .../include/__type_traits/is_valid_expansion.h | 31 + .../libcxx/include/__type_traits/lazy.h | 25 + .../include/__type_traits/make_32_64_or_128_bit.h | 48 ++ .../libcxx/include/__type_traits/make_signed.h | 76 ++ .../libcxx/include/__type_traits/make_unsigned.h | 89 +++ .../libcxx/include/__type_traits/nat.h | 32 + .../libcxx/include/__type_traits/promote.h | 95 +++ .../libcxx/include/__type_traits/remove_cvref.h | 41 + .../libcxx/include/__type_traits/type_list.h | 44 ++ .../libcxx/include/__utility/transaction.h | 5 + contrib/llvm-project/libcxx/include/algorithm | 33 + contrib/llvm-project/libcxx/include/charconv | 1 + contrib/llvm-project/libcxx/include/forward_list | 1 + contrib/llvm-project/libcxx/include/list | 1 + contrib/llvm-project/libcxx/include/math.h | 1 + contrib/llvm-project/libcxx/include/memory | 118 --- .../libcxx/include/module.modulemap.in | 20 + contrib/llvm-project/libcxx/include/string | 1 + contrib/llvm-project/libcxx/include/type_traits | 787 +------------------- contrib/llvm-project/libcxx/include/vector | 19 +- contrib/llvm-project/libcxx/src/assert.cpp | 47 +- contrib/llvm-project/lld/ELF/Driver.cpp | 15 +- contrib/llvm-project/lld/ELF/DriverUtils.cpp | 20 +- contrib/llvm-project/lld/ELF/InputFiles.cpp | 4 +- contrib/llvm-project/lld/ELF/LinkerScript.cpp | 12 +- contrib/llvm-project/lld/ELF/Options.td | 14 +- contrib/llvm-project/lld/ELF/ScriptParser.cpp | 7 +- contrib/llvm-project/lld/ELF/SyntheticSections.cpp | 12 +- contrib/llvm-project/lld/ELF/Writer.cpp | 30 +- contrib/llvm-project/lld/MachO/Driver.cpp | 20 +- contrib/llvm-project/lld/MachO/DriverUtils.cpp | 1 + contrib/llvm-project/lld/MachO/InputFiles.cpp | 60 +- contrib/llvm-project/lld/MachO/InputFiles.h | 12 +- contrib/llvm-project/lld/MachO/InputSection.cpp | 2 +- contrib/llvm-project/lld/MachO/Options.td | 10 +- contrib/llvm-project/lld/MachO/SyntheticSections.h | 6 +- .../lldb/include/lldb/Core/Disassembler.h | 8 +- .../lldb/include/lldb/Target/MemoryTagManager.h | 15 + .../lldb/include/lldb/Target/Process.h | 4 +- .../lldb/include/lldb/Target/TraceCursor.h | 36 +- .../lldb/include/lldb/Target/TraceDumper.h | 7 +- .../lldb/Utility/TraceIntelPTGDBRemotePackets.h | 4 +- .../lldb/include/lldb/lldb-enumerations.h | 8 +- .../source/Commands/CommandObjectDisassemble.cpp | 3 +- .../source/Commands/CommandObjectExpression.cpp | 2 +- .../lldb/source/Commands/CommandObjectMemory.cpp | 2 +- .../lldb/source/Commands/CommandObjectThread.cpp | 2 +- .../llvm-project/lldb/source/Commands/Options.td | 10 +- .../llvm-project/lldb/source/Core/Disassembler.cpp | 385 +--------- .../llvm-project/lldb/source/Host/common/Host.cpp | 2 +- .../Disassembler/LLVMC/DisassemblerLLVMC.cpp | 331 +++++++++ .../ExpressionParser/Clang/ClangASTSource.cpp | 10 +- .../Clang/ClangExpressionParser.cpp | 5 +- .../Instruction/ARM/EmulateInstructionARM.cpp | 4 +- .../Plugins/Instruction/ARM/EmulationStateARM.cpp | 85 ++- .../Plugins/Instruction/ARM/EmulationStateARM.h | 7 +- .../ObjectFile/Minidump/MinidumpFileBuilder.cpp | 4 +- .../Process/Utility/MemoryTagManagerAArch64MTE.cpp | 65 ++ .../Process/Utility/MemoryTagManagerAArch64MTE.h | 6 + .../Utility/RegisterContextDarwin_arm64.cpp | 2 +- .../Plugins/Process/Utility/ThreadMemory.cpp | 3 +- .../Plugins/Process/elf-core/ProcessElfCore.cpp | 72 +- .../Plugins/Process/elf-core/ProcessElfCore.h | 14 + .../gdb-remote/GDBRemoteCommunicationClient.cpp | 18 + .../gdb-remote/GDBRemoteCommunicationClient.h | 2 + .../Process/gdb-remote/ProcessGDBRemote.cpp | 68 +- .../Plugins/Process/minidump/ProcessMinidump.cpp | 3 +- .../Plugins/SymbolFile/NativePDB/PdbUtil.cpp | 2 +- .../Plugins/Trace/intel-pt/DecodedThread.cpp | 198 ++--- .../source/Plugins/Trace/intel-pt/DecodedThread.h | 180 +++-- .../Plugins/Trace/intel-pt/LibiptDecoder.cpp | 57 +- .../source/Plugins/Trace/intel-pt/LibiptDecoder.h | 10 + .../Plugins/Trace/intel-pt/ThreadDecoder.cpp | 19 +- .../source/Plugins/Trace/intel-pt/ThreadDecoder.h | 6 + .../Plugins/Trace/intel-pt/TraceCursorIntelPT.cpp | 89 ++- .../Plugins/Trace/intel-pt/TraceCursorIntelPT.h | 46 +- .../source/Plugins/Trace/intel-pt/TraceIntelPT.cpp | 50 +- .../source/Plugins/Trace/intel-pt/TraceIntelPT.h | 9 + .../Trace/intel-pt/TraceIntelPTMultiCpuDecoder.cpp | 26 +- .../Trace/intel-pt/TraceIntelPTMultiCpuDecoder.h | 6 + .../x86/x86AssemblyInspectionEngine.cpp | 2 +- contrib/llvm-project/lldb/source/Symbol/Type.cpp | 4 +- .../llvm-project/lldb/source/Target/Process.cpp | 15 +- .../lldb/source/Target/RegisterContextUnwind.cpp | 4 +- .../llvm-project/lldb/source/Target/StackFrame.cpp | 42 +- .../lldb/source/Target/ThreadPlanCallFunction.cpp | 10 +- .../lldb/source/Target/ThreadPlanTracer.cpp | 4 +- .../lldb/source/Target/TraceCursor.cpp | 2 + .../lldb/source/Target/TraceDumper.cpp | 58 +- .../llvm-project/llvm/include/llvm/ADT/DenseMap.h | 2 + .../llvm-project/llvm/include/llvm/ADT/Optional.h | 7 +- .../llvm-project/llvm/include/llvm/Analysis/DDG.h | 23 +- .../llvm/include/llvm/Analysis/MemoryBuiltins.h | 1 - .../include/llvm/Analysis/TargetTransformInfo.h | 1 - .../llvm/include/llvm/BinaryFormat/ELF.h | 22 + .../llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h | 4 +- .../include/llvm/CodeGen/GlobalISel/IRTranslator.h | 2 +- .../llvm/include/llvm/CodeGen/LiveIntervals.h | 1 - .../llvm/include/llvm/CodeGen/SelectionDAGNodes.h | 6 + .../llvm/include/llvm/CodeGen/TargetInstrInfo.h | 1 - .../llvm/include/llvm/DWARFLinker/DWARFLinker.h | 2 +- .../include/llvm/DebugInfo/PDB/IPDBEnumChildren.h | 11 +- .../include/llvm/ExecutionEngine/JITLink/x86_64.h | 23 +- .../ExecutorSharedMemoryMapperService.h | 6 +- .../llvm/include/llvm/IR/Instructions.h | 2 + .../llvm/include/llvm/IR/IntrinsicInst.h | 11 +- .../llvm/include/llvm/IR/Intrinsics.td | 6 + .../llvm/include/llvm/IR/ModuleSummaryIndex.h | 6 + .../llvm/include/llvm/IR/PrintPasses.h | 15 + .../include/llvm/LTO/legacy/LTOCodeGenerator.h | 4 + .../llvm/MC/MCDisassembler/MCDisassembler.h | 23 + .../include/llvm/Passes/StandardInstrumentations.h | 10 +- .../include/llvm/ProfileData/SampleProfReader.h | 37 +- .../include/llvm/ProfileData/SampleProfWriter.h | 45 +- .../llvm/include/llvm/Support/BinaryByteStream.h | 4 +- .../include/llvm/Support/DXILOperationCommon.h | 63 ++ .../llvm-project/llvm/include/llvm/Support/Error.h | 2 +- .../llvm/include/llvm/Support/MathExtras.h | 6 + .../llvm/include/llvm/Support/raw_ostream.h | 4 +- .../llvm/Target/GlobalISel/SelectionDAGCompat.td | 2 + .../llvm/include/llvm/Transforms/IPO.h | 2 - .../llvm/include/llvm/Transforms/IPO/Attributor.h | 2 +- .../llvm/Transforms/IPO/WholeProgramDevirt.h | 4 +- .../include/llvm/Transforms/Utils/MatrixUtils.h | 47 +- .../include/llvm/Transforms/Utils/MemoryOpRemark.h | 6 +- .../llvm/Transforms/Utils/SimplifyLibCalls.h | 2 +- .../llvm-project/llvm/lib/Analysis/CodeMetrics.cpp | 3 +- .../llvm-project/llvm/lib/Analysis/InlineCost.cpp | 4 +- .../llvm/lib/Analysis/InstructionSimplify.cpp | 12 - .../llvm/lib/Analysis/LoopAccessAnalysis.cpp | 4 +- .../llvm/lib/Analysis/MemoryBuiltins.cpp | 7 - .../llvm/lib/Analysis/ModuleSummaryAnalysis.cpp | 3 +- .../llvm/lib/Analysis/PHITransAddr.cpp | 17 +- .../llvm/lib/Analysis/ScalarEvolution.cpp | 26 +- .../llvm/lib/Analysis/TypeMetadataUtils.cpp | 4 +- .../llvm/lib/Analysis/ValueTracking.cpp | 43 +- .../llvm/lib/Bitcode/Reader/BitcodeReader.cpp | 2 +- .../llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp | 7 +- .../llvm/lib/CodeGen/AsmPrinter/WasmException.h | 2 +- .../llvm/lib/CodeGen/AtomicExpandPass.cpp | 7 +- .../llvm/lib/CodeGen/CodeGenPrepare.cpp | 4 +- .../llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp | 3 +- .../llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp | 10 +- .../CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp | 5 +- .../llvm/lib/CodeGen/LiveRangeEdit.cpp | 16 +- .../llvm/lib/CodeGen/MachineFunctionPass.cpp | 29 + .../llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp | 7 +- .../llvm/lib/CodeGen/ProcessImplicitDefs.cpp | 2 +- .../llvm/lib/CodeGen/RegAllocGreedy.cpp | 19 +- .../llvm-project/llvm/lib/CodeGen/RegAllocGreedy.h | 2 + .../llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp | 90 ++- .../llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp | 41 +- .../lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h | 2 +- .../lib/CodeGen/SelectionDAG/TargetLowering.cpp | 17 +- .../llvm/lib/DWARFLinker/DWARFLinker.cpp | 53 +- contrib/llvm-project/llvm/lib/DWP/DWP.cpp | 7 + .../JITLink/COFFLinkGraphBuilder.cpp | 124 ++-- .../ExecutionEngine/JITLink/COFFLinkGraphBuilder.h | 10 +- .../lib/ExecutionEngine/JITLink/COFF_x86_64.cpp | 179 +++-- .../lib/ExecutionEngine/JITLink/SEHFrameSupport.h | 61 ++ .../llvm/lib/ExecutionEngine/JITLink/x86_64.cpp | 2 + .../ExecutionEngine/Orc/ObjectFileInterface.cpp | 38 +- .../llvm-project/llvm/lib/FileCheck/FileCheck.cpp | 2 + contrib/llvm-project/llvm/lib/IR/Instructions.cpp | 4 + contrib/llvm-project/llvm/lib/IR/IntrinsicInst.cpp | 33 + .../llvm/lib/IR/ModuleSummaryIndex.cpp | 8 +- contrib/llvm-project/llvm/lib/IR/PrintPasses.cpp | 44 ++ contrib/llvm-project/llvm/lib/LTO/LTO.cpp | 4 + contrib/llvm-project/llvm/lib/LTO/LTOBackend.cpp | 3 + .../llvm-project/llvm/lib/LTO/LTOCodeGenerator.cpp | 12 + .../llvm/lib/LTO/ThinLTOCodeGenerator.cpp | 6 + .../llvm-project/llvm/lib/MC/ELFObjectWriter.cpp | 5 +- .../llvm/lib/MC/MCDisassembler/MCDisassembler.cpp | 5 + .../llvm-project/llvm/lib/MC/XCOFFObjectWriter.cpp | 2 +- .../llvm/lib/ObjCopy/ELF/ELFObject.cpp | 52 +- .../llvm-project/llvm/lib/ObjCopy/ELF/ELFObject.h | 14 +- .../llvm-project/llvm/lib/ObjectYAML/ELFYAML.cpp | 8 + .../llvm/lib/Passes/PassBuilderPipelines.cpp | 3 + .../llvm/lib/Passes/StandardInstrumentations.cpp | 58 -- .../llvm/lib/Support/ARMAttributeParser.cpp | 2 +- .../lib/Target/AArch64/AArch64ISelLowering.cpp | 144 +++- .../llvm/lib/Target/AArch64/AArch64InstrInfo.td | 6 + .../llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td | 32 +- .../AArch64/Disassembler/AArch64Disassembler.cpp | 8 + .../AArch64/Disassembler/AArch64Disassembler.h | 3 + .../GISel/AArch64O0PreLegalizerCombiner.cpp | 4 +- .../AArch64/GISel/AArch64PostLegalizerCombiner.cpp | 4 +- .../AArch64/GISel/AArch64PostLegalizerLowering.cpp | 4 +- .../AArch64/GISel/AArch64PreLegalizerCombiner.cpp | 4 +- .../llvm/lib/Target/AArch64/SVEInstrFormats.td | 12 +- .../lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp | 212 ++++-- .../llvm/lib/Target/AMDGPU/AMDGPUMIRFormatter.h | 2 +- .../Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp | 4 +- .../llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp | 826 ++++++++++++--------- .../llvm/lib/Target/AMDGPU/GCNSchedStrategy.h | 233 ++++-- .../Target/AMDGPU/MCTargetDesc/SIMCCodeEmitter.cpp | 16 + .../llvm/lib/Target/AMDGPU/R600ISelLowering.h | 4 +- .../llvm/lib/Target/AMDGPU/SIISelLowering.cpp | 6 +- .../llvm/lib/Target/AMDGPU/SIISelLowering.h | 8 +- .../llvm/lib/Target/AMDGPU/SIRegisterInfo.td | 56 +- .../llvm/lib/Target/AMDGPU/VOPCInstructions.td | 2 +- .../Target/ARM/Disassembler/ARMDisassembler.cpp | 30 + .../llvm/lib/Target/DirectX/DXILOpBuilder.cpp | 324 ++++++++ .../llvm/lib/Target/DirectX/DXILOpBuilder.h | 46 ++ .../llvm/lib/Target/DirectX/DXILOpLowering.cpp | 167 +---- .../DirectX/DXILWriter/DXILValueEnumerator.cpp | 4 +- .../llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.h | 1 - .../llvm/lib/Target/Hexagon/HexagonISelLowering.h | 3 - .../llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp | 46 -- .../llvm/lib/Target/Hexagon/HexagonInstrInfo.h | 4 - .../LoongArch/AsmParser/LoongArchAsmParser.cpp | 2 +- .../Disassembler/LoongArchDisassembler.cpp | 2 +- .../llvm/lib/Target/LoongArch/LoongArch.h | 2 +- .../lib/Target/LoongArch/LoongArchFrameLowering.h | 2 +- .../lib/Target/LoongArch/LoongArchISelDAGToDAG.h | 2 +- .../lib/Target/LoongArch/LoongArchISelLowering.h | 2 +- .../lib/Target/LoongArch/LoongArchRegisterInfo.h | 2 +- .../llvm/lib/Target/LoongArch/LoongArchSubtarget.h | 2 +- .../Target/LoongArch/LoongArchTargetMachine.cpp | 2 +- .../LoongArch/MCTargetDesc/LoongArchAsmBackend.h | 2 +- .../LoongArch/MCTargetDesc/LoongArchBaseInfo.cpp | 4 +- .../LoongArch/MCTargetDesc/LoongArchBaseInfo.h | 4 +- .../MCTargetDesc/LoongArchELFObjectWriter.cpp | 2 +- .../LoongArch/MCTargetDesc/LoongArchInstPrinter.h | 2 +- .../LoongArch/MCTargetDesc/LoongArchMCAsmInfo.h | 2 +- .../MCTargetDesc/LoongArchMCCodeEmitter.cpp | 2 +- .../MCTargetDesc/LoongArchMCTargetDesc.cpp | 2 +- .../LoongArch/MCTargetDesc/LoongArchMCTargetDesc.h | 2 +- .../LoongArch/MCTargetDesc/LoongArchMatInt.h | 4 +- .../LoongArch/TargetInfo/LoongArchTargetInfo.h | 2 +- .../lib/Target/Mips/MipsPreLegalizerCombiner.cpp | 4 +- .../llvm/lib/Target/RISCV/RISCVCodeGenPrepare.cpp | 15 + .../llvm/lib/Target/RISCV/RISCVISelLowering.cpp | 53 +- .../llvm/lib/Target/RISCV/RISCVISelLowering.h | 1 + .../llvm/lib/Target/RISCV/RISCVInstrInfo.h | 21 +- .../llvm/lib/Target/RISCV/RISCVInstrInfoC.td | 56 +- .../llvm/lib/Target/RISCV/RISCVTargetMachine.h | 3 +- .../llvm/lib/Target/SystemZ/SystemZRegisterInfo.h | 34 +- .../Target/WebAssembly/WebAssemblyISelLowering.cpp | 30 +- .../llvm/lib/Target/X86/X86ISelLowering.cpp | 84 ++- .../llvm/lib/Target/X86/X86ISelLowering.h | 2 +- .../llvm/lib/Target/X86/X86InstrInfo.h | 2 +- .../AggressiveInstCombine.cpp | 55 +- .../llvm/lib/Transforms/IPO/ArgumentPromotion.cpp | 6 +- .../lib/Transforms/IPO/AttributorAttributes.cpp | 28 +- .../llvm/lib/Transforms/IPO/FunctionAttrs.cpp | 61 +- .../llvm/lib/Transforms/IPO/GlobalOpt.cpp | 3 +- .../llvm/lib/Transforms/IPO/LowerTypeTests.cpp | 61 +- .../llvm/lib/Transforms/IPO/OpenMPOpt.cpp | 12 - .../llvm-project/llvm/lib/Transforms/IPO/SCCP.cpp | 2 +- .../lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp | 8 + .../llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp | 35 +- .../Transforms/InstCombine/InstCombineInternal.h | 7 +- .../Instrumentation/AddressSanitizer.cpp | 4 +- .../lib/Transforms/Scalar/LoopDataPrefetch.cpp | 8 +- .../Transforms/Scalar/LowerMatrixIntrinsics.cpp | 25 +- .../llvm/lib/Transforms/Scalar/Reassociate.cpp | 24 +- .../llvm/lib/Transforms/Utils/InlineFunction.cpp | 59 +- .../llvm/lib/Transforms/Utils/MatrixUtils.cpp | 42 +- .../llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp | 137 +++- .../lib/Transforms/Vectorize/LoopVectorize.cpp | 9 +- .../lib/Transforms/Vectorize/SLPVectorizer.cpp | 4 +- .../llvm/tools/llvm-dwarfutil/DebugInfoLinker.cpp | 49 +- .../llvm/tools/llvm-dwarfutil/DebugInfoLinker.h | 4 +- .../llvm/tools/llvm-dwarfutil/llvm-dwarfutil.cpp | 22 +- .../llvm-project/llvm/tools/llvm-lto/llvm-lto.cpp | 7 + .../llvm/tools/llvm-mca/CodeRegionGenerator.cpp | 4 +- .../llvm/tools/llvm-objcopy/ObjcopyOptions.cpp | 27 +- .../llvm/tools/llvm-objcopy/ObjcopyOpts.td | 11 +- .../llvm/tools/llvm-objdump/llvm-objdump.cpp | 152 +++- .../llvm/tools/llvm-profdata/llvm-profdata.cpp | 3 +- .../llvm/tools/llvm-readobj/ELFDumper.cpp | 15 + .../llvm/tools/llvm-xray/xray-graph.cpp | 9 +- .../llvm/utils/TableGen/DXILEmitter.cpp | 107 ++- .../TableGen/GlobalISel/GIMatchDagPredicate.h | 6 +- lib/clang/include/VCSVersion.inc | 6 +- lib/clang/include/clang/Config/config.h | 2 +- lib/clang/include/lld/Common/Version.inc | 2 +- lib/clang/include/lldb/Version/Version.inc | 4 +- lib/clang/include/llvm/Config/config.h | 4 +- lib/clang/include/llvm/Config/llvm-config.h | 2 +- lib/clang/include/llvm/Support/VCSRevision.h | 2 +- lib/clang/libclang/Makefile | 9 + lib/clang/liblldb/LLDBWrapLua.cpp | 2 +- lib/libc++/Makefile | 20 + 438 files changed, 9684 insertions(+), 4700 deletions(-) diff --git a/contrib/llvm-project/clang/include/clang/Analysis/CFG.h b/contrib/llvm-project/clang/include/clang/Analysis/CFG.h index d8e7e1e43d81..4f16a6361950 100644 --- a/contrib/llvm-project/clang/include/clang/Analysis/CFG.h +++ b/contrib/llvm-project/clang/include/clang/Analysis/CFG.h @@ -202,7 +202,8 @@ public: isa(C) || isa(C) || isa(C) || - isa(C))); + isa(C) || + isa(C))); Data2.setPointer(const_cast(C)); } diff --git a/contrib/llvm-project/clang/include/clang/Analysis/ConstructionContext.h b/contrib/llvm-project/clang/include/clang/Analysis/ConstructionContext.h index a437160e0778..67a091199b91 100644 --- a/contrib/llvm-project/clang/include/clang/Analysis/ConstructionContext.h +++ b/contrib/llvm-project/clang/include/clang/Analysis/ConstructionContext.h @@ -36,13 +36,14 @@ public: ElidedDestructorKind, ElidableConstructorKind, ArgumentKind, - STATEMENT_WITH_INDEX_KIND_BEGIN=ArgumentKind, - STATEMENT_WITH_INDEX_KIND_END=ArgumentKind, + LambdaCaptureKind, + STATEMENT_WITH_INDEX_KIND_BEGIN = ArgumentKind, + STATEMENT_WITH_INDEX_KIND_END = LambdaCaptureKind, STATEMENT_KIND_BEGIN = VariableKind, - STATEMENT_KIND_END = ArgumentKind, + STATEMENT_KIND_END = LambdaCaptureKind, InitializerKind, - INITIALIZER_KIND_BEGIN=InitializerKind, - INITIALIZER_KIND_END=InitializerKind + INITIALIZER_KIND_BEGIN = InitializerKind, + INITIALIZER_KIND_END = InitializerKind }; LLVM_DUMP_METHOD static StringRef getKindAsString(ItemKind K) { @@ -55,6 +56,8 @@ public: case ElidedDestructorKind: return "elide destructor"; case ElidableConstructorKind: return "elide constructor"; case ArgumentKind: return "construct into argument"; + case LambdaCaptureKind: + return "construct into lambda captured variable"; case InitializerKind: return "construct into member variable"; }; llvm_unreachable("Unknown ItemKind"); @@ -72,7 +75,7 @@ private: bool hasIndex() const { return Kind >= STATEMENT_WITH_INDEX_KIND_BEGIN && - Kind >= STATEMENT_WITH_INDEX_KIND_END; + Kind <= STATEMENT_WITH_INDEX_KIND_END; } bool hasInitializer() const { @@ -127,6 +130,9 @@ public: ConstructionContextItem(const CXXCtorInitializer *Init) : Data(Init), Kind(InitializerKind), Index(0) {} + ConstructionContextItem(const LambdaExpr *LE, unsigned Index) + : Data(LE), Kind(LambdaCaptureKind), Index(Index) {} + ItemKind getKind() const { return Kind; } LLVM_DUMP_METHOD StringRef getKindAsString() const { @@ -254,7 +260,8 @@ public: CXX17ElidedCopyReturnedValueKind, RETURNED_VALUE_BEGIN = SimpleReturnedValueKind, RETURNED_VALUE_END = CXX17ElidedCopyReturnedValueKind, - ArgumentKind + ArgumentKind, + LambdaCaptureKind }; protected: @@ -298,6 +305,11 @@ public: const ConstructionContextLayer *TopLayer); Kind getKind() const { return K; } + + virtual const ArrayInitLoopExpr *getArrayInitLoop() const { return nullptr; } + + // Only declared to silence -Wnon-virtual-dtor warnings. + virtual ~ConstructionContext() = default; }; /// An abstract base class for local variable constructors. @@ -314,6 +326,12 @@ protected: public: const DeclStmt *getDeclStmt() const { return DS; } + const ArrayInitLoopExpr *getArrayInitLoop() const override { + const auto *Var = cast(DS->getSingleDecl()); + + return dyn_cast(Var->getInit()); + } + static bool classof(const ConstructionContext *CC) { return CC->getKind() >= VARIABLE_BEGIN && CC->getKind() <= VARIABLE_END; @@ -381,6 +399,10 @@ protected: public: const CXXCtorInitializer *getCXXCtorInitializer() const { return I; } + const ArrayInitLoopExpr *getArrayInitLoop() const override { + return dyn_cast(I->getInit()); + } + static bool classof(const ConstructionContext *CC) { return CC->getKind() >= INITIALIZER_BEGIN && CC->getKind() <= INITIALIZER_END; @@ -659,6 +681,42 @@ public: } }; +class LambdaCaptureConstructionContext : public ConstructionContext { + // The lambda of which the initializer we capture. + const LambdaExpr *LE; + + // Index of the captured element in the captured list. + unsigned Index; + + friend class ConstructionContext; // Allows to create<>() itself. + + explicit LambdaCaptureConstructionContext(const LambdaExpr *LE, + unsigned Index) + : ConstructionContext(LambdaCaptureKind), LE(LE), Index(Index) {} + +public: + const LambdaExpr *getLambdaExpr() const { return LE; } + unsigned getIndex() const { return Index; } + + const Expr *getInitializer() const { + return *(LE->capture_init_begin() + Index); + } + + const FieldDecl *getFieldDecl() const { + auto It = LE->getLambdaClass()->field_begin(); + std::advance(It, Index); + return *It; + } + + const ArrayInitLoopExpr *getArrayInitLoop() const override { + return dyn_cast_or_null(getInitializer()); + } + + static bool classof(const ConstructionContext *CC) { + return CC->getKind() == LambdaCaptureKind; + } +}; + } // end namespace clang #endif // LLVM_CLANG_ANALYSIS_CONSTRUCTIONCONTEXT_H diff --git a/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/DataflowAnalysisContext.h b/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/DataflowAnalysisContext.h index abc3183e1b0b..b3e725ad3f6a 100644 --- a/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/DataflowAnalysisContext.h +++ b/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/DataflowAnalysisContext.h @@ -340,6 +340,10 @@ private: llvm::DenseMap, DisjunctionValue *> DisjunctionVals; llvm::DenseMap NegationVals; + llvm::DenseMap, ImplicationValue *> + ImplicationVals; + llvm::DenseMap, BiconditionalValue *> + BiconditionalVals; // Flow conditions are tracked symbolically: each unique flow condition is // associated with a fresh symbolic variable (token), bound to the clause that diff --git a/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h b/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h index f17df36f6a4a..2e9c088d0e5c 100644 --- a/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h +++ b/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h @@ -128,6 +128,21 @@ public: /// with a symbolic representation of the `this` pointee. Environment(DataflowAnalysisContext &DACtx, const DeclContext &DeclCtx); + /// Creates and returns an environment to use for an inline analysis of the + /// callee. Uses the storage location from each argument in the `Call` as the + /// storage location for the corresponding parameter in the callee. + /// + /// Requirements: + /// + /// The callee of `Call` must be a `FunctionDecl` with a body. + /// + /// The body of the callee must not reference globals. + /// + /// The arguments of `Call` must map 1:1 to the callee's parameters. + /// + /// Each argument of `Call` must already have a `StorageLocation`. + Environment pushCall(const CallExpr *Call) const; + /// Returns true if and only if the environment is equivalent to `Other`, i.e /// the two environments: /// - have the same mappings from declarations to storage locations, diff --git a/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/MapLattice.h b/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/MapLattice.h index 014cd60841ee..16b0c978779a 100644 --- a/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/MapLattice.h +++ b/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/MapLattice.h @@ -54,10 +54,13 @@ public: // The `bottom` element is the empty map. static MapLattice bottom() { return MapLattice(); } - void insert(const std::pair &P) { C.insert(P); } + std::pair + insert(const std::pair &P) { + return C.insert(P); + } - void insert(std::pair &&P) { - C.insert(std::move(P)); + std::pair insert(std::pair &&P) { + return C.insert(std::move(P)); } unsigned size() const { return C.size(); } diff --git a/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/Transfer.h b/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/Transfer.h index 25afa01f307c..cbb625487c1e 100644 --- a/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/Transfer.h +++ b/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/Transfer.h @@ -20,6 +20,12 @@ namespace clang { namespace dataflow { +struct TransferOptions { + /// Determines whether to analyze function bodies when present in the + /// translation unit. + bool ContextSensitive = false; +}; + /// Maps statements to the environments of basic blocks that contain them. class StmtToEnvMap { public: @@ -36,7 +42,8 @@ public: /// Requirements: /// /// `S` must not be `ParenExpr` or `ExprWithCleanups`. -void transfer(const StmtToEnvMap &StmtToEnv, const Stmt &S, Environment &Env); +void transfer(const StmtToEnvMap &StmtToEnv, const Stmt &S, Environment &Env, + TransferOptions Options); } // namespace dataflow } // namespace clang diff --git a/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h b/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h index b043062459e4..92700f164e7b 100644 --- a/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h +++ b/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h @@ -23,6 +23,7 @@ #include "clang/Analysis/FlowSensitive/ControlFlowContext.h" #include "clang/Analysis/FlowSensitive/DataflowEnvironment.h" #include "clang/Analysis/FlowSensitive/DataflowLattice.h" +#include "clang/Analysis/FlowSensitive/Transfer.h" #include "llvm/ADT/Any.h" #include "llvm/ADT/Optional.h" #include "llvm/Support/Error.h" @@ -36,6 +37,9 @@ struct DataflowAnalysisOptions { // (at which point the built-in transfer functions can be simply a standalone // analysis). bool ApplyBuiltinTransfer = true; + + /// Only has an effect if `ApplyBuiltinTransfer` is true. + TransferOptions BuiltinTransferOptions; }; /// Type-erased lattice element container. @@ -57,7 +61,7 @@ public: /// Deprecated. Use the `DataflowAnalysisOptions` constructor instead. TypeErasedDataflowAnalysis(bool ApplyBuiltinTransfer) - : Options({ApplyBuiltinTransfer}) {} + : Options({ApplyBuiltinTransfer, TransferOptions{}}) {} TypeErasedDataflowAnalysis(DataflowAnalysisOptions Options) : Options(Options) {} @@ -90,6 +94,11 @@ public: /// Determines whether to apply the built-in transfer functions, which model /// the heap and stack in the `Environment`. bool applyBuiltinTransfer() const { return Options.ApplyBuiltinTransfer; } + + /// Returns the options to be passed to the built-in transfer functions. + TransferOptions builtinTransferOptions() const { + return Options.BuiltinTransferOptions; + } }; /// Type-erased model of the program at a given program point. diff --git a/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/Value.h b/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/Value.h index 70348f874543..c63799fe6a46 100644 --- a/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/Value.h +++ b/contrib/llvm-project/clang/include/clang/Analysis/FlowSensitive/Value.h @@ -37,12 +37,13 @@ public: Pointer, Struct, - // Synthetic boolean values are either atomic values or composites that - // represent conjunctions, disjunctions, and negations. + // Synthetic boolean values are either atomic values or logical connectives. AtomicBool, Conjunction, Disjunction, - Negation + Negation, + Implication, + Biconditional, }; explicit Value(Kind ValKind) : ValKind(ValKind) {} @@ -84,7 +85,9 @@ public: return Val->getKind() == Kind::AtomicBool || Val->getKind() == Kind::Conjunction || Val->getKind() == Kind::Disjunction || - Val->getKind() == Kind::Negation; + Val->getKind() == Kind::Negation || + Val->getKind() == Kind::Implication || + Val->getKind() == Kind::Biconditional; } }; @@ -162,6 +165,54 @@ private: BoolValue &SubVal; }; +/// Models a boolean implication. +/// +/// Equivalent to `!LHS v RHS`. +class ImplicationValue : public BoolValue { +public: + explicit ImplicationValue(BoolValue &LeftSubVal, BoolValue &RightSubVal) + : BoolValue(Kind::Implication), LeftSubVal(LeftSubVal), + RightSubVal(RightSubVal) {} + + static bool classof(const Value *Val) { + return Val->getKind() == Kind::Implication; + } + + /// Returns the left sub-value of the implication. + BoolValue &getLeftSubValue() const { return LeftSubVal; } + + /// Returns the right sub-value of the implication. + BoolValue &getRightSubValue() const { return RightSubVal; } + +private: + BoolValue &LeftSubVal; + BoolValue &RightSubVal; +}; + +/// Models a boolean biconditional. +/// +/// Equivalent to `(LHS ^ RHS) v (!LHS ^ !RHS)`. +class BiconditionalValue : public BoolValue { +public: + explicit BiconditionalValue(BoolValue &LeftSubVal, BoolValue &RightSubVal) + : BoolValue(Kind::Biconditional), LeftSubVal(LeftSubVal), + RightSubVal(RightSubVal) {} + + static bool classof(const Value *Val) { + return Val->getKind() == Kind::Biconditional; + } + + /// Returns the left sub-value of the biconditional. + BoolValue &getLeftSubValue() const { return LeftSubVal; } + + /// Returns the right sub-value of the biconditional. + BoolValue &getRightSubValue() const { return RightSubVal; } + +private: + BoolValue &LeftSubVal; + BoolValue &RightSubVal; +}; + /// Models an integer. class IntegerValue : public Value { public: diff --git a/contrib/llvm-project/clang/include/clang/Basic/AttrDocs.td b/contrib/llvm-project/clang/include/clang/Basic/AttrDocs.td index aff0dbbdd94d..5c84e2fc5b77 100644 --- a/contrib/llvm-project/clang/include/clang/Basic/AttrDocs.td +++ b/contrib/llvm-project/clang/include/clang/Basic/AttrDocs.td @@ -5040,6 +5040,12 @@ general this requires the template to be declared at least twice. For example: clang::preferred_name(wstring)]] basic_string { // ... }; + + +Note that the ``preferred_name`` attribute will be ignored when the compiler +writes a C++20 Module interface now. This is due to a compiler issue +(https://github.com/llvm/llvm-project/issues/56490) that blocks users to modularize +declarations with `preferred_name`. This is intended to be fixed in the future. }]; } diff --git a/contrib/llvm-project/clang/include/clang/Basic/DiagnosticIDs.h b/contrib/llvm-project/clang/include/clang/Basic/DiagnosticIDs.h index 709d5e1dc80d..91b180f8004d 100644 --- a/contrib/llvm-project/clang/include/clang/Basic/DiagnosticIDs.h +++ b/contrib/llvm-project/clang/include/clang/Basic/DiagnosticIDs.h @@ -45,18 +45,18 @@ namespace clang { // Start position for diagnostics. enum { DIAG_START_COMMON = 0, - DIAG_START_DRIVER = DIAG_START_COMMON + DIAG_SIZE_COMMON, - DIAG_START_FRONTEND = DIAG_START_DRIVER + DIAG_SIZE_DRIVER, - DIAG_START_SERIALIZATION = DIAG_START_FRONTEND + DIAG_SIZE_FRONTEND, - DIAG_START_LEX = DIAG_START_SERIALIZATION + DIAG_SIZE_SERIALIZATION, - DIAG_START_PARSE = DIAG_START_LEX + DIAG_SIZE_LEX, - DIAG_START_AST = DIAG_START_PARSE + DIAG_SIZE_PARSE, - DIAG_START_COMMENT = DIAG_START_AST + DIAG_SIZE_AST, - DIAG_START_CROSSTU = DIAG_START_COMMENT + DIAG_SIZE_COMMENT, - DIAG_START_SEMA = DIAG_START_CROSSTU + DIAG_SIZE_CROSSTU, - DIAG_START_ANALYSIS = DIAG_START_SEMA + DIAG_SIZE_SEMA, - DIAG_START_REFACTORING = DIAG_START_ANALYSIS + DIAG_SIZE_ANALYSIS, - DIAG_UPPER_LIMIT = DIAG_START_REFACTORING + DIAG_SIZE_REFACTORING + DIAG_START_DRIVER = DIAG_START_COMMON + static_cast(DIAG_SIZE_COMMON), + DIAG_START_FRONTEND = DIAG_START_DRIVER + static_cast(DIAG_SIZE_DRIVER), + DIAG_START_SERIALIZATION = DIAG_START_FRONTEND + static_cast(DIAG_SIZE_FRONTEND), + DIAG_START_LEX = DIAG_START_SERIALIZATION + static_cast(DIAG_SIZE_SERIALIZATION), + DIAG_START_PARSE = DIAG_START_LEX + static_cast(DIAG_SIZE_LEX), + DIAG_START_AST = DIAG_START_PARSE + static_cast(DIAG_SIZE_PARSE), + DIAG_START_COMMENT = DIAG_START_AST + static_cast(DIAG_SIZE_AST), + DIAG_START_CROSSTU = DIAG_START_COMMENT + static_cast(DIAG_SIZE_COMMENT), + DIAG_START_SEMA = DIAG_START_CROSSTU + static_cast(DIAG_SIZE_CROSSTU), + DIAG_START_ANALYSIS = DIAG_START_SEMA + static_cast(DIAG_SIZE_SEMA), + DIAG_START_REFACTORING = DIAG_START_ANALYSIS + static_cast(DIAG_SIZE_ANALYSIS), + DIAG_UPPER_LIMIT = DIAG_START_REFACTORING + static_cast(DIAG_SIZE_REFACTORING) }; class CustomDiagInfo; diff --git a/contrib/llvm-project/clang/include/clang/Basic/DiagnosticParseKinds.td b/contrib/llvm-project/clang/include/clang/Basic/DiagnosticParseKinds.td index 352a050ba5cf..18adb21e2be0 100644 --- a/contrib/llvm-project/clang/include/clang/Basic/DiagnosticParseKinds.td +++ b/contrib/llvm-project/clang/include/clang/Basic/DiagnosticParseKinds.td @@ -282,7 +282,7 @@ def err_inline_nested_namespace_definition : Error< def err_expected_semi_after_attribute_list : Error< "expected ';' after attribute list">; def err_expected_semi_after_static_assert : Error< - "expected ';' after static_assert">; + "expected ';' after '%0'">; def err_expected_semi_for : Error<"expected ';' in 'for' statement specifier">; def err_single_decl_assign_in_for_range : Error< "range-based 'for' statement uses ':', not '='">; @@ -425,7 +425,7 @@ def err_unexpected_token_in_nested_name_spec : Error< def err_bool_redeclaration : Error< "redeclaration of C++ built-in type 'bool'">; def warn_cxx98_compat_static_assert : Warning< - "static_assert declarations are incompatible with C++98">, + "'static_assert' declarations are incompatible with C++98">, InGroup, DefaultIgnore; def ext_ms_static_assert : ExtWarn< "use of 'static_assert' without inclusion of is a Microsoft " @@ -538,6 +538,8 @@ def err_invalid_operator_on_type : Error< "cannot use %select{dot|arrow}0 operator on a type">; def err_expected_unqualified_id : Error< "expected %select{identifier|unqualified-id}0">; +def err_while_loop_outside_of_a_function : Error< + "while loop outside of a function">; def err_brackets_go_after_unqualified_id : Error< "brackets are not allowed here; to declare an array, " "place the brackets after the %select{identifier|name}0">; diff --git a/contrib/llvm-project/clang/include/clang/Basic/DiagnosticSemaKinds.td b/contrib/llvm-project/clang/include/clang/Basic/DiagnosticSemaKinds.td index 756102720049..6ff5b8de57fd 100644 --- a/contrib/llvm-project/clang/include/clang/Basic/DiagnosticSemaKinds.td +++ b/contrib/llvm-project/clang/include/clang/Basic/DiagnosticSemaKinds.td @@ -1526,12 +1526,12 @@ def err_messaging_class_with_direct_method : Error< // C++ declarations def err_static_assert_expression_is_not_constant : Error< - "static_assert expression is not an integral constant expression">; + "static assertion expression is not an integral constant expression">; def err_constexpr_if_condition_expression_is_not_constant : Error< "constexpr if condition is not a constant expression">; -def err_static_assert_failed : Error<"static_assert failed%select{: %1|}0">; +def err_static_assert_failed : Error<"static assertion failed%select{: %1|}0">; def err_static_assert_requirement_failed : Error< - "static_assert failed due to requirement '%0'%select{: %2|}1">; + "static assertion failed due to requirement '%0'%select{: %2|}1">; def warn_consteval_if_always_true : Warning< "consteval if is always true in an %select{unevaluated|immediate}0 context">, @@ -5774,6 +5774,8 @@ def warn_forward_class_redefinition : Warning< def err_redefinition_different_typedef : Error< "%select{typedef|type alias|type alias template}0 " "redefinition with different types%diff{ ($ vs $)|}1,2">; +def err_redefinition_different_concept : Error< + "redefinition of concept %0 with different template parameters or requirements">; def err_tag_reference_non_tag : Error< "%select{non-struct type|non-class type|non-union type|non-enum " "type|typedef|type alias|template|type alias template|template " diff --git a/contrib/llvm-project/clang/include/clang/Basic/LangOptions.def b/contrib/llvm-project/clang/include/clang/Basic/LangOptions.def index 6fb31c5655ab..ad366821f3cb 100644 --- a/contrib/llvm-project/clang/include/clang/Basic/LangOptions.def +++ b/contrib/llvm-project/clang/include/clang/Basic/LangOptions.def @@ -195,6 +195,7 @@ VALUE_LANGOPT(DoubleSize , 32, 0, "width of double") VALUE_LANGOPT(LongDoubleSize , 32, 0, "width of long double") LANGOPT(PPCIEEELongDouble , 1, 0, "use IEEE 754 quadruple-precision for long double") LANGOPT(EnableAIXExtendedAltivecABI , 1, 0, "__EXTABI__ predefined macro") +LANGOPT(EnableAIXQuadwordAtomicsABI , 1, 0, "Use 16-byte atomic lock free semantics") COMPATIBLE_VALUE_LANGOPT(PICLevel , 2, 0, "__PIC__ level") COMPATIBLE_VALUE_LANGOPT(PIE , 1, 0, "is pie") LANGOPT(ROPI , 1, 0, "Read-only position independence") diff --git a/contrib/llvm-project/clang/include/clang/Basic/TokenKinds.def b/contrib/llvm-project/clang/include/clang/Basic/TokenKinds.def index 7b65a1537805..84fc0893c8b5 100644 --- a/contrib/llvm-project/clang/include/clang/Basic/TokenKinds.def +++ b/contrib/llvm-project/clang/include/clang/Basic/TokenKinds.def @@ -908,6 +908,9 @@ PRAGMA_ANNOTATION(pragma_fp) // Annotation for the attribute pragma directives - #pragma clang attribute ... PRAGMA_ANNOTATION(pragma_attribute) +// Annotation for the riscv pragma directives - #pragma clang riscv intrinsic ... +PRAGMA_ANNOTATION(pragma_riscv) + // Annotations for module import translated from #include etc. ANNOTATION(module_include) ANNOTATION(module_begin) diff --git a/contrib/llvm-project/clang/include/clang/Basic/riscv_vector.td b/contrib/llvm-project/clang/include/clang/Basic/riscv_vector.td index d96020ee40d0..6b21f48110de 100644 --- a/contrib/llvm-project/clang/include/clang/Basic/riscv_vector.td +++ b/contrib/llvm-project/clang/include/clang/Basic/riscv_vector.td @@ -186,7 +186,7 @@ class RVVBuiltin To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: a2e927433f9d - stable/13 - Merge llvm-project release/15.x llvmorg-15.0.0-rc2-40-gfbd2950d8d0d List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: a2e927433f9d66b477247c4d36da79c008cfa8a4 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=a2e927433f9d66b477247c4d36da79c008cfa8a4 commit a2e927433f9d66b477247c4d36da79c008cfa8a4 Author: Dimitry Andric AuthorDate: 2022-08-13 15:37:04 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:54:49 +0000 Merge llvm-project release/15.x llvmorg-15.0.0-rc2-40-gfbd2950d8d0d This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-15.0.0-rc2-40-gfbd2950d8d0d. PR: 265425 MFC after: 2 weeks (cherry picked from commit 61cfbce3347e4372143bcabf7b197577b9f3958a) --- .../clang/include/clang/AST/DeclTemplate.h | 8 +- .../clang/include/clang/Basic/Module.h | 5 + .../llvm-project/clang/include/clang/Sema/Sema.h | 2 + .../clang/include/clang/Serialization/ASTReader.h | 3 +- contrib/llvm-project/clang/lib/AST/APValue.cpp | 8 +- .../llvm-project/clang/lib/Basic/Targets/X86.cpp | 2 + contrib/llvm-project/clang/lib/Basic/Targets/X86.h | 4 + .../llvm-project/clang/lib/CodeGen/CGDeclCXX.cpp | 8 +- contrib/llvm-project/clang/lib/CodeGen/CGStmt.cpp | 15 + .../clang/lib/CodeGen/CodeGenModule.cpp | 10 +- .../llvm-project/clang/lib/CodeGen/TargetInfo.cpp | 13 +- .../clang/lib/Driver/ToolChains/Arch/Sparc.cpp | 25 + .../clang/lib/Driver/ToolChains/Arch/Sparc.h | 3 + .../clang/lib/Driver/ToolChains/Clang.cpp | 21 +- .../clang/lib/Driver/ToolChains/CommonArgs.cpp | 11 +- .../clang/lib/Driver/ToolChains/Gnu.cpp | 10 + .../clang/lib/Frontend/FrontendAction.cpp | 2 +- contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp | 76 ++- .../llvm-project/clang/lib/Sema/SemaOverload.cpp | 5 +- .../llvm-project/clang/lib/Sema/SemaTemplate.cpp | 8 +- .../clang/lib/Serialization/ASTReader.cpp | 89 ++-- .../compiler-rt/lib/builtins/fp_trunc.h | 2 +- .../compiler-rt/lib/builtins/int_types.h | 2 +- .../lib/sanitizer_common/sanitizer_platform.h | 2 +- .../libcxx/include/__algorithm/adjacent_find.h | 32 +- .../libcxx/include/__algorithm/clamp.h | 4 +- .../llvm-project/libcxx/include/__algorithm/copy.h | 10 +- .../libcxx/include/__algorithm/copy_backward.h | 6 +- .../llvm-project/libcxx/include/__algorithm/fill.h | 2 + .../libcxx/include/__algorithm/fill_n.h | 2 + .../libcxx/include/__algorithm/find_first_of.h | 3 +- .../libcxx/include/__algorithm/inplace_merge.h | 91 ++-- .../libcxx/include/__algorithm/is_permutation.h | 259 ++++++---- .../include/__algorithm/iterator_operations.h | 83 ++- .../libcxx/include/__algorithm/make_heap.h | 4 +- .../libcxx/include/__algorithm/make_projected.h | 98 ++-- .../llvm-project/libcxx/include/__algorithm/move.h | 26 +- .../libcxx/include/__algorithm/move_backward.h | 38 +- .../libcxx/include/__algorithm/next_permutation.h | 36 +- .../libcxx/include/__algorithm/partial_sort.h | 10 +- .../libcxx/include/__algorithm/partial_sort_copy.h | 42 +- .../libcxx/include/__algorithm/pop_heap.h | 4 +- .../libcxx/include/__algorithm/prev_permutation.h | 36 +- .../libcxx/include/__algorithm/push_heap.h | 2 +- .../libcxx/include/__algorithm/ranges_clamp.h | 65 +++ .../include/__algorithm/ranges_inplace_merge.h | 52 +- .../libcxx/include/__algorithm/ranges_is_heap.h | 2 +- .../include/__algorithm/ranges_is_heap_until.h | 2 +- .../include/__algorithm/ranges_is_permutation.h | 89 ++++ .../libcxx/include/__algorithm/ranges_make_heap.h | 2 +- .../libcxx/include/__algorithm/ranges_move.h | 15 +- .../include/__algorithm/ranges_move_backward.h | 5 +- .../include/__algorithm/ranges_next_permutation.h | 72 +++ .../include/__algorithm/ranges_nth_element.h | 2 +- .../include/__algorithm/ranges_partial_sort.h | 2 +- .../include/__algorithm/ranges_partial_sort_copy.h | 19 +- .../libcxx/include/__algorithm/ranges_partition.h | 2 +- .../libcxx/include/__algorithm/ranges_pop_heap.h | 2 +- .../include/__algorithm/ranges_prev_permutation.h | 76 +++ .../libcxx/include/__algorithm/ranges_push_heap.h | 2 +- .../include/__algorithm/ranges_remove_copy.h | 55 +- .../include/__algorithm/ranges_remove_copy_if.h | 58 ++- .../include/__algorithm/ranges_replace_copy.h | 69 +-- .../include/__algorithm/ranges_replace_copy_if.h | 72 +-- .../libcxx/include/__algorithm/ranges_rotate.h | 71 +++ .../libcxx/include/__algorithm/ranges_sample.h | 74 +++ .../libcxx/include/__algorithm/ranges_shuffle.h | 34 +- .../libcxx/include/__algorithm/ranges_sort.h | 2 +- .../libcxx/include/__algorithm/ranges_sort_heap.h | 2 +- .../include/__algorithm/ranges_stable_partition.h | 2 +- .../include/__algorithm/ranges_stable_sort.h | 2 +- .../include/__algorithm/ranges_swap_ranges.h | 11 +- .../libcxx/include/__algorithm/ranges_unique.h | 46 +- .../include/__algorithm/ranges_unique_copy.h | 73 ++- .../libcxx/include/__algorithm/reverse.h | 23 +- .../libcxx/include/__algorithm/rotate.h | 57 ++- .../libcxx/include/__algorithm/sample.h | 48 +- .../libcxx/include/__algorithm/sift_down.h | 4 +- .../libcxx/include/__algorithm/sort_heap.h | 4 +- .../libcxx/include/__algorithm/stable_partition.h | 4 +- .../libcxx/include/__algorithm/stable_sort.h | 2 +- .../libcxx/include/__algorithm/swap_ranges.h | 37 +- .../uniform_random_bit_generator_adaptor.h | 62 +++ .../libcxx/include/__algorithm/unique.h | 48 +- .../libcxx/include/__algorithm/unique_copy.h | 147 +++--- .../libcxx/include/__algorithm/unwrap_range.h | 97 ++++ contrib/llvm-project/libcxx/include/__assert | 11 +- contrib/llvm-project/libcxx/include/__availability | 41 +- .../llvm-project/libcxx/include/__bit_reference | 243 +++++---- .../include/__iterator/incrementable_traits.h | 1 + .../libcxx/include/__iterator/iterator_traits.h | 7 + .../libcxx/include/__iterator/reverse_iterator.h | 14 +- .../libcxx/include/__memory/construct_at.h | 3 +- .../libcxx/include/__memory/pointer_traits.h | 28 +- .../include/__memory/uninitialized_algorithms.h | 7 +- .../llvm-project/libcxx/include/__ranges/size.h | 1 + contrib/llvm-project/libcxx/include/__split_buffer | 134 +++-- .../llvm-project/libcxx/include/__verbose_abort | 51 ++ contrib/llvm-project/libcxx/include/algorithm | 219 +++++++- contrib/llvm-project/libcxx/include/format | 101 ++-- contrib/llvm-project/libcxx/include/memory | 26 +- .../libcxx/include/module.modulemap.in | 16 +- contrib/llvm-project/libcxx/include/vector | 557 ++++++++++++--------- contrib/llvm-project/libcxx/include/version | 8 +- .../libcxx/src/include/sso_allocator.h | 5 + .../libcxx/src/{assert.cpp => verbose_abort.cpp} | 22 +- contrib/llvm-project/lld/COFF/Driver.cpp | 17 +- contrib/llvm-project/lld/COFF/Driver.h | 4 +- contrib/llvm-project/lld/COFF/DriverUtils.cpp | 3 + contrib/llvm-project/lld/COFF/MinGW.cpp | 10 +- contrib/llvm-project/lld/COFF/MinGW.h | 6 +- contrib/llvm-project/lld/COFF/Options.td | 2 + contrib/llvm-project/lld/COFF/PDB.cpp | 4 + contrib/llvm-project/lld/ELF/Arch/AArch64.cpp | 4 +- contrib/llvm-project/lld/ELF/Config.h | 1 + contrib/llvm-project/lld/ELF/Driver.cpp | 6 +- contrib/llvm-project/lld/ELF/Options.td | 2 + contrib/llvm-project/lld/ELF/Relocations.cpp | 3 +- contrib/llvm-project/lld/ELF/SyntheticSections.cpp | 17 + contrib/llvm-project/lld/ELF/SyntheticSections.h | 10 + contrib/llvm-project/lld/ELF/Writer.cpp | 5 + contrib/llvm-project/lld/MachO/Arch/ARM64.cpp | 2 +- contrib/llvm-project/lld/MachO/DriverUtils.cpp | 2 +- contrib/llvm-project/lld/MachO/EhFrame.cpp | 10 +- contrib/llvm-project/lld/MachO/EhFrame.h | 8 +- contrib/llvm-project/lld/MachO/InputFiles.cpp | 118 ++++- contrib/llvm-project/lld/MachO/InputFiles.h | 17 +- .../llvm-project/lld/MachO/UnwindInfoSection.cpp | 8 +- contrib/llvm-project/lld/MachO/Writer.cpp | 122 ++--- contrib/llvm-project/lld/docs/ReleaseNotes.rst | 144 +++++- .../llvm-project/lldb/source/Core/Disassembler.cpp | 1 + .../include/llvm/Analysis/TargetTransformInfo.h | 9 + .../llvm/Analysis/TargetTransformInfoImpl.h | 2 + .../llvm/include/llvm/BinaryFormat/ELF.h | 1 + .../llvm/include/llvm/CodeGen/ISDOpcodes.h | 5 + .../include/llvm/DebugInfo/CodeView/CodeView.h | 3 + .../ExecutorSharedMemoryMapperService.h | 3 + .../Orc/TargetProcess/JITLoaderGDB.h | 3 + contrib/llvm-project/llvm/include/llvm/IR/Type.h | 5 + .../llvm/include/llvm/Support/ErrorHandling.h | 6 +- .../llvm-project/llvm/include/llvm/Support/Host.h | 1 + .../llvm/lib/Analysis/ConstantFolding.cpp | 4 +- .../llvm/lib/Analysis/TargetTransformInfo.cpp | 4 + .../llvm/lib/CodeGen/MachineScheduler.cpp | 2 +- .../llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp | 45 +- .../llvm/lib/DebugInfo/PDB/Native/FormatUtil.cpp | 7 + .../IntelJITEvents/IntelJITEventListener.cpp | 1 + .../llvm/lib/ExecutionEngine/Orc/MemoryMapper.cpp | 22 +- .../ExecutorSharedMemoryMapperService.cpp | 7 +- contrib/llvm-project/llvm/lib/Support/Host.cpp | 108 ++++ .../lib/Target/AArch64/AArch64ISelLowering.cpp | 47 +- .../Target/AArch64/AArch64TargetTransformInfo.h | 4 + .../Target/AArch64/GISel/AArch64LegalizerInfo.cpp | 2 +- contrib/llvm-project/llvm/lib/Target/ARM/ARM.td | 9 + .../llvm/lib/Target/ARM/ARMISelLowering.cpp | 3 +- .../llvm/lib/Target/PowerPC/PPCFastISel.cpp | 5 +- .../llvm/lib/Target/RISCV/RISCVISelLowering.cpp | 8 +- .../llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp | 25 +- .../llvm/lib/Target/X86/X86ISelLowering.cpp | 96 ++-- .../llvm/lib/Target/X86/X86ISelLowering.h | 12 + .../lib/Transforms/IPO/AttributorAttributes.cpp | 13 +- .../llvm/lib/Transforms/IPO/OpenMPOpt.cpp | 12 + .../Transforms/Utils/RelLookupTableConverter.cpp | 8 +- .../lib/Transforms/Vectorize/LoopVectorize.cpp | 15 +- contrib/llvm-project/llvm/tools/lli/lli.cpp | 3 +- .../llvm-project/llvm/tools/llvm-ar/llvm-ar.cpp | 33 +- .../openmp/runtime/src/kmp_dispatch.cpp | 2 +- lib/clang/include/VCSVersion.inc | 6 +- lib/clang/include/lld/Common/Version.inc | 2 +- lib/clang/include/llvm/Support/VCSRevision.h | 2 +- lib/clang/libllvm/Makefile | 4 +- lib/libc++/Makefile | 11 +- sys/conf/kern.mk | 10 +- 173 files changed, 3754 insertions(+), 1472 deletions(-) diff --git a/contrib/llvm-project/clang/include/clang/AST/DeclTemplate.h b/contrib/llvm-project/clang/include/clang/AST/DeclTemplate.h index 725bb0bced9c..baed5ca22fa7 100755 --- a/contrib/llvm-project/clang/include/clang/AST/DeclTemplate.h +++ b/contrib/llvm-project/clang/include/clang/AST/DeclTemplate.h @@ -3287,8 +3287,12 @@ public: return isa(getTemplateParameters()->getParam(0)); } - ConceptDecl *getCanonicalDecl() override { return getFirstDecl(); } - const ConceptDecl *getCanonicalDecl() const { return getFirstDecl(); } + ConceptDecl *getCanonicalDecl() override { + return cast(getPrimaryMergedDecl(this)); + } + const ConceptDecl *getCanonicalDecl() const { + return const_cast(this)->getCanonicalDecl(); + } // Implement isa/cast/dyncast/etc. static bool classof(const Decl *D) { return classofKind(D->getKind()); } diff --git a/contrib/llvm-project/clang/include/clang/Basic/Module.h b/contrib/llvm-project/clang/include/clang/Basic/Module.h index 47d736a3b455..8ef1c5991c56 100644 --- a/contrib/llvm-project/clang/include/clang/Basic/Module.h +++ b/contrib/llvm-project/clang/include/clang/Basic/Module.h @@ -525,6 +525,11 @@ public: Parent->SubModules.push_back(this); } + /// Is this module have similar semantics as headers. + bool isHeaderLikeModule() const { + return isModuleMapModule() || isHeaderUnit(); + } + /// Is this a module partition. bool isModulePartition() const { return Kind == ModulePartitionInterface || diff --git a/contrib/llvm-project/clang/include/clang/Sema/Sema.h b/contrib/llvm-project/clang/include/clang/Sema/Sema.h index 06ea0b417cb3..681a76dfa56a 100644 --- a/contrib/llvm-project/clang/include/clang/Sema/Sema.h +++ b/contrib/llvm-project/clang/include/clang/Sema/Sema.h @@ -4479,6 +4479,8 @@ public: bool CheckRedeclarationModuleOwnership(NamedDecl *New, NamedDecl *Old); bool CheckRedeclarationExported(NamedDecl *New, NamedDecl *Old); bool CheckRedeclarationInModule(NamedDecl *New, NamedDecl *Old); + bool IsRedefinitionInModule(const NamedDecl *New, + const NamedDecl *Old) const; void DiagnoseAmbiguousLookup(LookupResult &Result); //@} diff --git a/contrib/llvm-project/clang/include/clang/Serialization/ASTReader.h b/contrib/llvm-project/clang/include/clang/Serialization/ASTReader.h index cc4ced02876e..dee2744516d5 100644 --- a/contrib/llvm-project/clang/include/clang/Serialization/ASTReader.h +++ b/contrib/llvm-project/clang/include/clang/Serialization/ASTReader.h @@ -1738,7 +1738,8 @@ public: const LangOptions &LangOpts, const TargetOptions &TargetOpts, const PreprocessorOptions &PPOpts, - StringRef ExistingModuleCachePath); + StringRef ExistingModuleCachePath, + bool RequireStrictOptionMatches = false); /// Returns the suggested contents of the predefines buffer, /// which contains a (typically-empty) subset of the predefines diff --git a/contrib/llvm-project/clang/lib/AST/APValue.cpp b/contrib/llvm-project/clang/lib/AST/APValue.cpp index a22031142c7c..d522c87388a5 100644 --- a/contrib/llvm-project/clang/lib/AST/APValue.cpp +++ b/contrib/llvm-project/clang/lib/AST/APValue.cpp @@ -637,10 +637,10 @@ static bool TryPrintAsStringLiteral(raw_ostream &Out, return false; // Nothing we can do about a sequence that is not null-terminated - if (!Inits.back().getInt().isZero()) + if (!Inits.back().isInt() || !Inits.back().getInt().isZero()) return false; - else - Inits = Inits.drop_back(); + + Inits = Inits.drop_back(); llvm::SmallString<40> Buf; Buf.push_back('"'); @@ -655,6 +655,8 @@ static bool TryPrintAsStringLiteral(raw_ostream &Out, } for (auto &Val : Inits) { + if (!Val.isInt()) + return false; int64_t Char64 = Val.getInt().getExtValue(); if (!isASCII(Char64)) return false; // Bye bye, see you in integers. diff --git a/contrib/llvm-project/clang/lib/Basic/Targets/X86.cpp b/contrib/llvm-project/clang/lib/Basic/Targets/X86.cpp index 69afdf8a3584..0f5c366816df 100644 --- a/contrib/llvm-project/clang/lib/Basic/Targets/X86.cpp +++ b/contrib/llvm-project/clang/lib/Basic/Targets/X86.cpp @@ -358,6 +358,8 @@ bool X86TargetInfo::handleTargetFeatures(std::vector &Features, HasFloat16 = SSELevel >= SSE2; + HasBFloat16 = SSELevel >= SSE2; + MMX3DNowEnum ThreeDNowLevel = llvm::StringSwitch(Feature) .Case("+3dnowa", AMD3DNowAthlon) .Case("+3dnow", AMD3DNow) diff --git a/contrib/llvm-project/clang/lib/Basic/Targets/X86.h b/contrib/llvm-project/clang/lib/Basic/Targets/X86.h index 224145f4b020..136047a5055c 100644 --- a/contrib/llvm-project/clang/lib/Basic/Targets/X86.h +++ b/contrib/llvm-project/clang/lib/Basic/Targets/X86.h @@ -156,6 +156,8 @@ protected: public: X86TargetInfo(const llvm::Triple &Triple, const TargetOptions &) : TargetInfo(Triple) { + BFloat16Width = BFloat16Align = 16; + BFloat16Format = &llvm::APFloat::BFloat(); LongDoubleFormat = &llvm::APFloat::x87DoubleExtended(); AddrSpaceMap = &X86AddrSpaceMap; HasStrictFP = true; @@ -400,6 +402,8 @@ public: uint64_t getPointerAlignV(unsigned AddrSpace) const override { return getPointerWidthV(AddrSpace); } + + const char *getBFloat16Mangling() const override { return "u6__bf16"; }; }; // X86-32 generic target diff --git a/contrib/llvm-project/clang/lib/CodeGen/CGDeclCXX.cpp b/contrib/llvm-project/clang/lib/CodeGen/CGDeclCXX.cpp index 949112c63cc9..6915f950b6ce 100644 --- a/contrib/llvm-project/clang/lib/CodeGen/CGDeclCXX.cpp +++ b/contrib/llvm-project/clang/lib/CodeGen/CGDeclCXX.cpp @@ -649,8 +649,8 @@ void CodeGenModule::EmitCXXModuleInitFunc(Module *Primary) { SmallVector ModuleInits; for (Module *M : AllImports) { - // No Itanium initializer in module map modules. - if (M->isModuleMapModule()) + // No Itanium initializer in header like modules. + if (M->isHeaderLikeModule()) continue; // TODO: warn of mixed use of module map modules and C++20? llvm::FunctionType *FTy = llvm::FunctionType::get(VoidTy, false); SmallString<256> FnName; @@ -778,8 +778,8 @@ CodeGenModule::EmitCXXGlobalInitFunc() { SmallVector ModuleInits; if (CXX20ModuleInits) for (Module *M : ImportedModules) { - // No Itanium initializer in module map modules. - if (M->isModuleMapModule()) + // No Itanium initializer in header like modules. + if (M->isHeaderLikeModule()) continue; llvm::FunctionType *FTy = llvm::FunctionType::get(VoidTy, false); SmallString<256> FnName; diff --git a/contrib/llvm-project/clang/lib/CodeGen/CGStmt.cpp b/contrib/llvm-project/clang/lib/CodeGen/CGStmt.cpp index 05ab16668743..481438de0e53 100644 --- a/contrib/llvm-project/clang/lib/CodeGen/CGStmt.cpp +++ b/contrib/llvm-project/clang/lib/CodeGen/CGStmt.cpp @@ -2343,6 +2343,7 @@ void CodeGenFunction::EmitAsmStmt(const AsmStmt &S) { std::vector ArgElemTypes; std::vector Args; llvm::BitVector ResultTypeRequiresCast; + llvm::BitVector ResultRegIsFlagReg; // Keep track of inout constraints. std::string InOutConstraints; @@ -2400,6 +2401,9 @@ void CodeGenFunction::EmitAsmStmt(const AsmStmt &S) { ResultRegQualTys.push_back(QTy); ResultRegDests.push_back(Dest); + bool IsFlagReg = llvm::StringRef(OutputConstraint).startswith("{@cc"); + ResultRegIsFlagReg.push_back(IsFlagReg); + llvm::Type *Ty = ConvertTypeForMem(QTy); const bool RequiresCast = Info.allowsRegister() && (getTargetHooks().isScalarizableAsmOperand(*this, Ty) || @@ -2717,10 +2721,21 @@ void CodeGenFunction::EmitAsmStmt(const AsmStmt &S) { // ResultRegDests can be also populated by addReturnRegisterOutputs() above, // in which case its size may grow. assert(ResultTypeRequiresCast.size() <= ResultRegDests.size()); + assert(ResultRegIsFlagReg.size() <= ResultRegDests.size()); for (unsigned i = 0, e = RegResults.size(); i != e; ++i) { llvm::Value *Tmp = RegResults[i]; llvm::Type *TruncTy = ResultTruncRegTypes[i]; + if ((i < ResultRegIsFlagReg.size()) && ResultRegIsFlagReg[i]) { + // Target must guarantee the Value `Tmp` here is lowered to a boolean + // value. + llvm::Constant *Two = llvm::ConstantInt::get(Tmp->getType(), 2); + llvm::Value *IsBooleanValue = + Builder.CreateCmp(llvm::CmpInst::ICMP_ULT, Tmp, Two); + llvm::Function *FnAssume = CGM.getIntrinsic(llvm::Intrinsic::assume); + Builder.CreateCall(FnAssume, IsBooleanValue); + } + // If the result type of the LLVM IR asm doesn't match the result type of // the expression, do the conversion. if (ResultRegTypes[i] != ResultTruncRegTypes[i]) { diff --git a/contrib/llvm-project/clang/lib/CodeGen/CodeGenModule.cpp b/contrib/llvm-project/clang/lib/CodeGen/CodeGenModule.cpp index 4e8e120d89df..d87692face2a 100644 --- a/contrib/llvm-project/clang/lib/CodeGen/CodeGenModule.cpp +++ b/contrib/llvm-project/clang/lib/CodeGen/CodeGenModule.cpp @@ -521,7 +521,7 @@ static void setVisibilityFromDLLStorageClass(const clang::LangOptions &LO, void CodeGenModule::Release() { Module *Primary = getContext().getModuleForCodeGen(); - if (CXX20ModuleInits && Primary && !Primary->isModuleMapModule()) + if (CXX20ModuleInits && Primary && !Primary->isHeaderLikeModule()) EmitModuleInitializers(Primary); EmitDeferred(); DeferredDecls.insert(EmittedDeferredDecls.begin(), @@ -2521,21 +2521,23 @@ void CodeGenModule::EmitModuleInitializers(clang::Module *Primary) { // source, first Global Module Fragments, if present. if (auto GMF = Primary->getGlobalModuleFragment()) { for (Decl *D : getContext().getModuleInitializers(GMF)) { - assert(D->getKind() == Decl::Var && "GMF initializer decl is not a var?"); + if (isa(D)) + continue; + assert(isa(D) && "GMF initializer decl is not a var?"); EmitTopLevelDecl(D); } } // Second any associated with the module, itself. for (Decl *D : getContext().getModuleInitializers(Primary)) { // Skip import decls, the inits for those are called explicitly. - if (D->getKind() == Decl::Import) + if (isa(D)) continue; EmitTopLevelDecl(D); } // Third any associated with the Privat eMOdule Fragment, if present. if (auto PMF = Primary->getPrivateModuleFragment()) { for (Decl *D : getContext().getModuleInitializers(PMF)) { - assert(D->getKind() == Decl::Var && "PMF initializer decl is not a var?"); + assert(isa(D) && "PMF initializer decl is not a var?"); EmitTopLevelDecl(D); } } diff --git a/contrib/llvm-project/clang/lib/CodeGen/TargetInfo.cpp b/contrib/llvm-project/clang/lib/CodeGen/TargetInfo.cpp index d1ee61eab9d6..195ad8cdc13e 100644 --- a/contrib/llvm-project/clang/lib/CodeGen/TargetInfo.cpp +++ b/contrib/llvm-project/clang/lib/CodeGen/TargetInfo.cpp @@ -2871,7 +2871,7 @@ void X86_64ABIInfo::classify(QualType Ty, uint64_t OffsetBase, Class &Lo, } else if (k >= BuiltinType::Bool && k <= BuiltinType::LongLong) { Current = Integer; } else if (k == BuiltinType::Float || k == BuiltinType::Double || - k == BuiltinType::Float16) { + k == BuiltinType::Float16 || k == BuiltinType::BFloat16) { Current = SSE; } else if (k == BuiltinType::LongDouble) { const llvm::fltSemantics *LDF = &getTarget().getLongDoubleFormat(); @@ -3002,7 +3002,8 @@ void X86_64ABIInfo::classify(QualType Ty, uint64_t OffsetBase, Class &Lo, Current = Integer; else if (Size <= 128) Lo = Hi = Integer; - } else if (ET->isFloat16Type() || ET == getContext().FloatTy) { + } else if (ET->isFloat16Type() || ET == getContext().FloatTy || + ET->isBFloat16Type()) { Current = SSE; } else if (ET == getContext().DoubleTy) { Lo = Hi = SSE; @@ -3474,9 +3475,9 @@ GetSSETypeAtOffset(llvm::Type *IRType, unsigned IROffset, if (SourceSize > T0Size) T1 = getFPTypeAtOffset(IRType, IROffset + T0Size, TD); if (T1 == nullptr) { - // Check if IRType is a half + float. float type will be in IROffset+4 due + // Check if IRType is a half/bfloat + float. float type will be in IROffset+4 due // to its alignment. - if (T0->isHalfTy() && SourceSize > 4) + if (T0->is16bitFPTy() && SourceSize > 4) T1 = getFPTypeAtOffset(IRType, IROffset + 4, TD); // If we can't get a second FP type, return a simple half or float. // avx512fp16-abi.c:pr51813_2 shows it works to return float for @@ -3488,7 +3489,7 @@ GetSSETypeAtOffset(llvm::Type *IRType, unsigned IROffset, if (T0->isFloatTy() && T1->isFloatTy()) return llvm::FixedVectorType::get(T0, 2); - if (T0->isHalfTy() && T1->isHalfTy()) { + if (T0->is16bitFPTy() && T1->is16bitFPTy()) { llvm::Type *T2 = nullptr; if (SourceSize > 4) T2 = getFPTypeAtOffset(IRType, IROffset + 4, TD); @@ -3497,7 +3498,7 @@ GetSSETypeAtOffset(llvm::Type *IRType, unsigned IROffset, return llvm::FixedVectorType::get(T0, 4); } - if (T0->isHalfTy() || T1->isHalfTy()) + if (T0->is16bitFPTy() || T1->is16bitFPTy()) return llvm::FixedVectorType::get(llvm::Type::getHalfTy(getVMContext()), 4); return llvm::Type::getDoubleTy(getVMContext()); diff --git a/contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/Sparc.cpp b/contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/Sparc.cpp index 70ba8eb2a7d0..2c9d65e7714a 100644 --- a/contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/Sparc.cpp +++ b/contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/Sparc.cpp @@ -12,6 +12,7 @@ #include "clang/Driver/Options.h" #include "llvm/ADT/StringSwitch.h" #include "llvm/Option/ArgList.h" +#include "llvm/Support/Host.h" using namespace clang::driver; using namespace clang::driver::tools; @@ -113,6 +114,30 @@ sparc::FloatABI sparc::getSparcFloatABI(const Driver &D, return ABI; } +std::string sparc::getSparcTargetCPU(const Driver &D, const ArgList &Args, + const llvm::Triple &Triple) { + if (const Arg *A = Args.getLastArg(clang::driver::options::OPT_march_EQ)) { + D.Diag(diag::err_drv_unsupported_opt_for_target) + << A->getSpelling() << Triple.getTriple(); + return ""; + } + + if (const Arg *A = Args.getLastArg(clang::driver::options::OPT_mcpu_EQ)) { + StringRef CPUName = A->getValue(); + if (CPUName == "native") { + std::string CPU = std::string(llvm::sys::getHostCPUName()); + if (!CPU.empty() && CPU != "generic") + return CPU; + return ""; + } + return std::string(CPUName); + } + + if (Triple.getArch() == llvm::Triple::sparc && Triple.isOSSolaris()) + return "v9"; + return ""; +} + void sparc::getSparcTargetFeatures(const Driver &D, const ArgList &Args, std::vector &Features) { sparc::FloatABI FloatABI = sparc::getSparcFloatABI(D, Args); diff --git a/contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/Sparc.h b/contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/Sparc.h index d12a9a70e264..44658c4259c6 100644 --- a/contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/Sparc.h +++ b/contrib/llvm-project/clang/lib/Driver/ToolChains/Arch/Sparc.h @@ -28,6 +28,9 @@ enum class FloatABI { FloatABI getSparcFloatABI(const Driver &D, const llvm::opt::ArgList &Args); +std::string getSparcTargetCPU(const Driver &D, const llvm::opt::ArgList &Args, + const llvm::Triple &Triple); + void getSparcTargetFeatures(const Driver &D, const llvm::opt::ArgList &Args, std::vector &Features); const char *getSparcAsmModeForCPU(llvm::StringRef Name, diff --git a/contrib/llvm-project/clang/lib/Driver/ToolChains/Clang.cpp b/contrib/llvm-project/clang/lib/Driver/ToolChains/Clang.cpp index b62a025c5072..3704ed858668 100644 --- a/contrib/llvm-project/clang/lib/Driver/ToolChains/Clang.cpp +++ b/contrib/llvm-project/clang/lib/Driver/ToolChains/Clang.cpp @@ -2205,6 +2205,18 @@ void Clang::AddSparcTargetArgs(const ArgList &Args, CmdArgs.push_back("-mfloat-abi"); CmdArgs.push_back("hard"); } + + if (const Arg *A = Args.getLastArg(clang::driver::options::OPT_mtune_EQ)) { + StringRef Name = A->getValue(); + std::string TuneCPU; + if (Name == "native") + TuneCPU = std::string(llvm::sys::getHostCPUName()); + else + TuneCPU = std::string(Name); + + CmdArgs.push_back("-tune-cpu"); + CmdArgs.push_back(Args.MakeArgString(TuneCPU)); + } } void Clang::AddSystemZTargetArgs(const ArgList &Args, @@ -4610,8 +4622,13 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA, TC.addClangWarningOptions(CmdArgs); // FIXME: Subclass ToolChain for SPIR and move this to addClangWarningOptions. - if (Triple.isSPIR() || Triple.isSPIRV()) + if (Triple.isSPIR() || Triple.isSPIRV()) { CmdArgs.push_back("-Wspir-compat"); + // SPIR-V support still needs pointer types in some cases as recovering + // type from pointer uses is not always possible e.g. for extern functions + // (see PR56660). + CmdArgs.push_back("-no-opaque-pointers"); + } // Select the appropriate action. RewriteKind rewriteKind = RK_None; @@ -6576,7 +6593,7 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA, // support by default, or just assume that all languages do. bool HaveModules = Std && (Std->containsValue("c++2a") || Std->containsValue("c++20") || - Std->containsValue("c++latest")); + Std->containsValue("c++2b") || Std->containsValue("c++latest")); RenderModulesOptions(C, D, Args, Input, Output, CmdArgs, HaveModules); if (Args.hasFlag(options::OPT_fpch_validate_input_files_content, diff --git a/contrib/llvm-project/clang/lib/Driver/ToolChains/CommonArgs.cpp b/contrib/llvm-project/clang/lib/Driver/ToolChains/CommonArgs.cpp index 1d2c085d683e..443725f7d8a8 100644 --- a/contrib/llvm-project/clang/lib/Driver/ToolChains/CommonArgs.cpp +++ b/contrib/llvm-project/clang/lib/Driver/ToolChains/CommonArgs.cpp @@ -12,6 +12,7 @@ #include "Arch/M68k.h" #include "Arch/Mips.h" #include "Arch/PPC.h" +#include "Arch/Sparc.h" #include "Arch/SystemZ.h" #include "Arch/VE.h" #include "Arch/X86.h" @@ -431,15 +432,15 @@ std::string tools::getCPUName(const Driver &D, const ArgList &Args, case llvm::Triple::bpfel: case llvm::Triple::bpfeb: - case llvm::Triple::sparc: - case llvm::Triple::sparcel: - case llvm::Triple::sparcv9: if (const Arg *A = Args.getLastArg(options::OPT_mcpu_EQ)) return A->getValue(); - if (T.getArch() == llvm::Triple::sparc && T.isOSSolaris()) - return "v9"; return ""; + case llvm::Triple::sparc: + case llvm::Triple::sparcel: + case llvm::Triple::sparcv9: + return sparc::getSparcTargetCPU(D, Args, T); + case llvm::Triple::x86: case llvm::Triple::x86_64: return x86::getX86TargetCPU(D, Args, T); diff --git a/contrib/llvm-project/clang/lib/Driver/ToolChains/Gnu.cpp b/contrib/llvm-project/clang/lib/Driver/ToolChains/Gnu.cpp index 34396b0b59c2..f203cae1d329 100644 --- a/contrib/llvm-project/clang/lib/Driver/ToolChains/Gnu.cpp +++ b/contrib/llvm-project/clang/lib/Driver/ToolChains/Gnu.cpp @@ -631,6 +631,16 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA, AddRunTimeLibs(ToolChain, D, CmdArgs, Args); + // LLVM support for atomics on 32-bit SPARC V8+ is incomplete, so + // forcibly link with libatomic as a workaround. + // TODO: Issue #41880 and D118021. + if (getToolChain().getTriple().getArch() == llvm::Triple::sparc) { + CmdArgs.push_back("--push-state"); + CmdArgs.push_back("--as-needed"); + CmdArgs.push_back("-latomic"); + CmdArgs.push_back("--pop-state"); + } + if (WantPthread && !isAndroid) CmdArgs.push_back("-lpthread"); diff --git a/contrib/llvm-project/clang/lib/Frontend/FrontendAction.cpp b/contrib/llvm-project/clang/lib/Frontend/FrontendAction.cpp index 7b07ab948f64..53cb48d2de9e 100644 --- a/contrib/llvm-project/clang/lib/Frontend/FrontendAction.cpp +++ b/contrib/llvm-project/clang/lib/Frontend/FrontendAction.cpp @@ -772,7 +772,7 @@ bool FrontendAction::BeginSourceFile(CompilerInstance &CI, if (ASTReader::isAcceptableASTFile( Dir->path(), FileMgr, CI.getPCHContainerReader(), CI.getLangOpts(), CI.getTargetOpts(), CI.getPreprocessorOpts(), - SpecificModuleCachePath)) { + SpecificModuleCachePath, /*RequireStrictOptionMatches=*/true)) { PPOpts.ImplicitPCHInclude = std::string(Dir->path()); Found = true; break; diff --git a/contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp b/contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp index 985005d0b79b..75ffa8b0a90a 100644 --- a/contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp +++ b/contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp @@ -1711,6 +1711,80 @@ bool Sema::CheckRedeclarationInModule(NamedDecl *New, NamedDecl *Old) { return false; } +// Check the redefinition in C++20 Modules. +// +// [basic.def.odr]p14: +// For any definable item D with definitions in multiple translation units, +// - if D is a non-inline non-templated function or variable, or +// - if the definitions in different translation units do not satisfy the +// following requirements, +// the program is ill-formed; a diagnostic is required only if the definable +// item is attached to a named module and a prior definition is reachable at +// the point where a later definition occurs. +// - Each such definition shall not be attached to a named module +// ([module.unit]). +// - Each such definition shall consist of the same sequence of tokens, ... +// ... +// +// Return true if the redefinition is not allowed. Return false otherwise. +bool Sema::IsRedefinitionInModule(const NamedDecl *New, + const NamedDecl *Old) const { + assert(getASTContext().isSameEntity(New, Old) && + "New and Old are not the same definition, we should diagnostic it " + "immediately instead of checking it."); + assert(const_cast(this)->isReachable(New) && + const_cast(this)->isReachable(Old) && + "We shouldn't see unreachable definitions here."); + + Module *NewM = New->getOwningModule(); + Module *OldM = Old->getOwningModule(); + + // We only checks for named modules here. The header like modules is skipped. + // FIXME: This is not right if we import the header like modules in the module + // purview. + // + // For example, assuming "header.h" provides definition for `D`. + // ```C++ + // //--- M.cppm + // export module M; + // import "header.h"; // or #include "header.h" but import it by clang modules + // actually. + // + // //--- Use.cpp + // import M; + // import "header.h"; // or uses clang modules. + // ``` + // + // In this case, `D` has multiple definitions in multiple TU (M.cppm and + // Use.cpp) and `D` is attached to a named module `M`. The compiler should + // reject it. But the current implementation couldn't detect the case since we + // don't record the information about the importee modules. + // + // But this might not be painful in practice. Since the design of C++20 Named + // Modules suggests us to use headers in global module fragment instead of + // module purview. + if (NewM && NewM->isHeaderLikeModule()) + NewM = nullptr; + if (OldM && OldM->isHeaderLikeModule()) + OldM = nullptr; + + if (!NewM && !OldM) + return true; + + // [basic.def.odr]p14.3 + // Each such definition shall not be attached to a named module + // ([module.unit]). + if ((NewM && NewM->isModulePurview()) || (OldM && OldM->isModulePurview())) + return true; + + // Then New and Old lives in the same TU if their share one same module unit. + if (NewM) + NewM = NewM->getTopLevelModule(); + if (OldM) + OldM = OldM->getTopLevelModule(); + return OldM == NewM; +} + static bool isUsingDecl(NamedDecl *D) { return isa(D) || isa(D) || @@ -3960,7 +4034,7 @@ bool Sema::MergeFunctionDecl(FunctionDecl *New, NamedDecl *&OldD, Scope *S, // default argument promotion rules were already checked by // ASTContext::typesAreCompatible(). if (Old->hasPrototype() && !New->hasWrittenPrototype() && NewDeclIsDefn && - Old->getNumParams() != New->getNumParams()) { + Old->getNumParams() != New->getNumParams() && !Old->isImplicit()) { if (Old->hasInheritedPrototype()) Old = Old->getCanonicalDecl(); Diag(New->getLocation(), diag::err_conflicting_types) << New; diff --git a/contrib/llvm-project/clang/lib/Sema/SemaOverload.cpp b/contrib/llvm-project/clang/lib/Sema/SemaOverload.cpp index d72cc33ed0f5..5dc0aadb2d5f 100644 --- a/contrib/llvm-project/clang/lib/Sema/SemaOverload.cpp +++ b/contrib/llvm-project/clang/lib/Sema/SemaOverload.cpp @@ -63,9 +63,8 @@ static ExprResult CreateFunctionRefExpr( // being used. if (FoundDecl != Fn && S.DiagnoseUseOfDecl(Fn, Loc)) return ExprError(); - DeclRefExpr *DRE = - DeclRefExpr::Create(S.Context, Fn->getQualifierLoc(), SourceLocation(), - Fn, false, Loc, Fn->getType(), VK_LValue, FoundDecl); + DeclRefExpr *DRE = new (S.Context) + DeclRefExpr(S.Context, Fn, false, Fn->getType(), VK_LValue, Loc, LocInfo); if (HadMultipleCandidates) DRE->setHadMultipleCandidates(true); diff --git a/contrib/llvm-project/clang/lib/Sema/SemaTemplate.cpp b/contrib/llvm-project/clang/lib/Sema/SemaTemplate.cpp index 1542a07713fb..ecc9596a87f0 100644 --- a/contrib/llvm-project/clang/lib/Sema/SemaTemplate.cpp +++ b/contrib/llvm-project/clang/lib/Sema/SemaTemplate.cpp @@ -8728,7 +8728,7 @@ void Sema::CheckConceptRedefinition(ConceptDecl *NewDecl, if (Previous.empty()) return; - auto *OldConcept = dyn_cast(Previous.getRepresentativeDecl()); + auto *OldConcept = dyn_cast(Previous.getRepresentativeDecl()->getUnderlyingDecl()); if (!OldConcept) { auto *Old = Previous.getRepresentativeDecl(); Diag(NewDecl->getLocation(), diag::err_redefinition_different_kind) @@ -8746,7 +8746,8 @@ void Sema::CheckConceptRedefinition(ConceptDecl *NewDecl, AddToScope = false; return; } - if (hasReachableDefinition(OldConcept)) { + if (hasReachableDefinition(OldConcept) && + IsRedefinitionInModule(NewDecl, OldConcept)) { Diag(NewDecl->getLocation(), diag::err_redefinition) << NewDecl->getDeclName(); notePreviousDefinition(OldConcept, NewDecl->getLocation()); @@ -8758,7 +8759,8 @@ void Sema::CheckConceptRedefinition(ConceptDecl *NewDecl, // Other decls (e.g. namespaces) also have this shortcoming. return; } - Context.setPrimaryMergedDecl(NewDecl, OldConcept); + // We unwrap canonical decl late to check for module visibility. + Context.setPrimaryMergedDecl(NewDecl, OldConcept->getCanonicalDecl()); } /// \brief Strips various properties off an implicit instantiation diff --git a/contrib/llvm-project/clang/lib/Serialization/ASTReader.cpp b/contrib/llvm-project/clang/lib/Serialization/ASTReader.cpp index 76281d26b2ae..d1e47c1045de 100644 --- a/contrib/llvm-project/clang/lib/Serialization/ASTReader.cpp +++ b/contrib/llvm-project/clang/lib/Serialization/ASTReader.cpp @@ -624,20 +624,28 @@ collectMacroDefinitions(const PreprocessorOptions &PPOpts, } } +enum OptionValidation { + OptionValidateNone, + OptionValidateContradictions, + OptionValidateStrictMatches, +}; + /// Check the preprocessor options deserialized from the control block /// against the preprocessor options in an existing preprocessor. /// /// \param Diags If non-null, produce diagnostics for any mismatches incurred. -/// \param Validate If true, validate preprocessor options. If false, allow -/// macros defined by \p ExistingPPOpts to override those defined by -/// \p PPOpts in SuggestedPredefines. -static bool checkPreprocessorOptions(const PreprocessorOptions &PPOpts, - const PreprocessorOptions &ExistingPPOpts, - DiagnosticsEngine *Diags, - FileManager &FileMgr, - std::string &SuggestedPredefines, - const LangOptions &LangOpts, - bool Validate = true) { +/// \param Validation If set to OptionValidateNone, ignore differences in +/// preprocessor options. If set to OptionValidateContradictions, +/// require that options passed both in the AST file and on the command +/// line (-D or -U) match, but tolerate options missing in one or the +/// other. If set to OptionValidateContradictions, require that there +/// are no differences in the options between the two. +static bool checkPreprocessorOptions( + const PreprocessorOptions &PPOpts, + const PreprocessorOptions &ExistingPPOpts, DiagnosticsEngine *Diags, + FileManager &FileMgr, std::string &SuggestedPredefines, + const LangOptions &LangOpts, + OptionValidation Validation = OptionValidateContradictions) { // Check macro definitions. MacroDefinitionsMap ASTFileMacros; collectMacroDefinitions(PPOpts, ASTFileMacros); @@ -653,7 +661,15 @@ static bool checkPreprocessorOptions(const PreprocessorOptions &PPOpts, // Check whether we know anything about this macro name or not. llvm::StringMap>::iterator Known = ASTFileMacros.find(MacroName); - if (!Validate || Known == ASTFileMacros.end()) { + if (Validation == OptionValidateNone || Known == ASTFileMacros.end()) { + if (Validation == OptionValidateStrictMatches) { + // If strict matches are requested, don't tolerate any extra defines on + // the command line that are missing in the AST file. + if (Diags) { + Diags->Report(diag::err_pch_macro_def_undef) << MacroName << true; + } + return true; + } // FIXME: Check whether this identifier was referenced anywhere in the // AST file. If so, we should reject the AST file. Unfortunately, this // information isn't in the control block. What shall we do about it? @@ -684,8 +700,10 @@ static bool checkPreprocessorOptions(const PreprocessorOptions &PPOpts, // If the macro was #undef'd in both, or if the macro bodies are identical, // it's fine. - if (Existing.second || Existing.first == Known->second.first) + if (Existing.second || Existing.first == Known->second.first) { + ASTFileMacros.erase(Known); continue; + } // The macro bodies differ; complain. if (Diags) { @@ -694,9 +712,20 @@ static bool checkPreprocessorOptions(const PreprocessorOptions &PPOpts, } return true; } + if (Validation == OptionValidateStrictMatches) { + // If strict matches are requested, don't tolerate any extra defines in + // the AST file that are missing on the command line. + for (const auto &MacroName : ASTFileMacros.keys()) { + if (Diags) { + Diags->Report(diag::err_pch_macro_def_undef) << MacroName << false; + } + return true; + } + } // Check whether we're using predefines. - if (PPOpts.UsePredefines != ExistingPPOpts.UsePredefines && Validate) { + if (PPOpts.UsePredefines != ExistingPPOpts.UsePredefines && + Validation != OptionValidateNone) { if (Diags) { Diags->Report(diag::err_pch_undef) << ExistingPPOpts.UsePredefines; } @@ -705,7 +734,8 @@ static bool checkPreprocessorOptions(const PreprocessorOptions &PPOpts, // Detailed record is important since it is used for the module cache hash. if (LangOpts.Modules && - PPOpts.DetailedRecord != ExistingPPOpts.DetailedRecord && Validate) { + PPOpts.DetailedRecord != ExistingPPOpts.DetailedRecord && + Validation != OptionValidateNone) { if (Diags) { Diags->Report(diag::err_pch_pp_detailed_record) << PPOpts.DetailedRecord; } @@ -766,13 +796,9 @@ bool SimpleASTReaderListener::ReadPreprocessorOptions( const PreprocessorOptions &PPOpts, bool Complain, std::string &SuggestedPredefines) { - return checkPreprocessorOptions(PPOpts, - PP.getPreprocessorOpts(), - nullptr, - PP.getFileManager(), - SuggestedPredefines, - PP.getLangOpts(), - false); + return checkPreprocessorOptions(PPOpts, PP.getPreprocessorOpts(), nullptr, + PP.getFileManager(), SuggestedPredefines, + PP.getLangOpts(), OptionValidateNone); } /// Check the header search options deserialized from the control block @@ -5138,16 +5164,19 @@ namespace { const PreprocessorOptions &ExistingPPOpts; std::string ExistingModuleCachePath; FileManager &FileMgr; + bool StrictOptionMatches; public: SimplePCHValidator(const LangOptions &ExistingLangOpts, const TargetOptions &ExistingTargetOpts, const PreprocessorOptions &ExistingPPOpts, - StringRef ExistingModuleCachePath, FileManager &FileMgr) + StringRef ExistingModuleCachePath, FileManager &FileMgr, + bool StrictOptionMatches) : ExistingLangOpts(ExistingLangOpts), ExistingTargetOpts(ExistingTargetOpts), ExistingPPOpts(ExistingPPOpts), - ExistingModuleCachePath(ExistingModuleCachePath), FileMgr(FileMgr) {} + ExistingModuleCachePath(ExistingModuleCachePath), FileMgr(FileMgr), + StrictOptionMatches(StrictOptionMatches) {} bool ReadLanguageOptions(const LangOptions &LangOpts, bool Complain, bool AllowCompatibleDifferences) override { @@ -5172,9 +5201,11 @@ namespace { bool ReadPreprocessorOptions(const PreprocessorOptions &PPOpts, bool Complain, std::string &SuggestedPredefines) override { - return checkPreprocessorOptions(PPOpts, ExistingPPOpts, /*Diags=*/nullptr, - FileMgr, SuggestedPredefines, - ExistingLangOpts); + return checkPreprocessorOptions( + PPOpts, ExistingPPOpts, /*Diags=*/nullptr, FileMgr, + SuggestedPredefines, ExistingLangOpts, + StrictOptionMatches ? OptionValidateStrictMatches + : OptionValidateContradictions); } }; @@ -5451,9 +5482,11 @@ bool ASTReader::isAcceptableASTFile(StringRef Filename, FileManager &FileMgr, const LangOptions &LangOpts, const TargetOptions &TargetOpts, const PreprocessorOptions &PPOpts, - StringRef ExistingModuleCachePath) { + StringRef ExistingModuleCachePath, + bool RequireStrictOptionMatches) { SimplePCHValidator validator(LangOpts, TargetOpts, PPOpts, - ExistingModuleCachePath, FileMgr); + ExistingModuleCachePath, FileMgr, + RequireStrictOptionMatches); return !readASTFileControlBlock(Filename, FileMgr, PCHContainerRdr, /*FindModuleFileExtensions=*/false, validator, diff --git a/contrib/llvm-project/compiler-rt/lib/builtins/fp_trunc.h b/contrib/llvm-project/compiler-rt/lib/builtins/fp_trunc.h index 7a54564a3520..91f614528ab3 100644 --- a/contrib/llvm-project/compiler-rt/lib/builtins/fp_trunc.h +++ b/contrib/llvm-project/compiler-rt/lib/builtins/fp_trunc.h @@ -60,7 +60,7 @@ typedef uint16_t dst_rep_t; static const int dstSigBits = 10; #elif defined DST_BFLOAT -typedef uint16_t dst_t; +typedef __bf16 dst_t; typedef uint16_t dst_rep_t; #define DST_REP_C UINT16_C static const int dstSigBits = 7; diff --git a/contrib/llvm-project/compiler-rt/lib/builtins/int_types.h b/contrib/llvm-project/compiler-rt/lib/builtins/int_types.h index 9ee5a327b28a..7a72de480676 100644 --- a/contrib/llvm-project/compiler-rt/lib/builtins/int_types.h +++ b/contrib/llvm-project/compiler-rt/lib/builtins/int_types.h @@ -64,7 +64,7 @@ typedef union { } udwords; *** 10317 LINES SKIPPED *** From nobody Sun Apr 9 21:35:18 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvlkv3QvFz44J8g; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvlkv1jbMz4MBG; Sun, 9 Apr 2023 21:35:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076119; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fby/UJ3MARcdky/akyAzXfBHLCuvuQL/Xqn32QMzUN0=; b=FiZhHfor4Pc3XaoDjJrQDwNj5XR4X3CFyRoclOCw7tfuBgmQbKvyFuFy2CYvSjeRtdloY0 itiep6fOxQi+v/GX1v6W+jidIPO/jvRhxJTLgCfXW+2rsZX8AtBVHtKerDKqNtRtffIWnJ jy2QDB1xeejDBfhNrE/bQQ2BQmrNISu8jCUU5UCu4rfL9wQ1DuCgC8t2zpS+6bTcPaglOM qfd3cSkOjreo6KcVq303/6TccUeNdO6KMnP/vF17ug2BKhBTwUnJsR+S4f66HUILH4MLOr ANtNkoH9sP45oL9cNyOnECqgUt7OjXE1DAAUOYkTjkxad86+20IcRlFVoxXrQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076119; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fby/UJ3MARcdky/akyAzXfBHLCuvuQL/Xqn32QMzUN0=; b=Q9BiVNHBygsvxlVYPxjgjcrV2fW+aCHE3cGWkd01geg0Jmam0X2LZziBW3qyD/hOk8V/l1 Vq1AoVP/9FtYPNFB2sfUBdLspgveRjnFABCGQGOgO4GvCMgqUl83nb3Fw/RehlC6fEKfcE U5En9YdUHi0NLioLF7fCZ6iui6X6oxSJiC4N32jBwXb5rvpauaKHx/LMBvASZzUH4nejdV DyFNZpO+9Fr6vxYlWeTPqxPZB8SiemvcxzUsRDUUfB45ckgx9cl/r8Axyho0W9kUvcebI3 rYslEaCavtXbH3IGOEw+rAYCnBvRanHsxcMENCNHOMAtZ+5qkQTAQGE+mjYWTQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076119; a=rsa-sha256; cv=none; b=abA2gw3PtuF5gmSyHUVE1dQuCGcmxS/3qYieyP38r9dk4PzSTEo4XlvZo769aZmHL2Xfjz cru4NYOfJNE198x+QMtBWl7PnL+K9xQlTupQB9nzh5Lpog4zui6f0Jp4GroRcD5IGkQEQJ NKVJCHaly8G16XraHGoryY/yIiLpavmQeQ0T28u6udjYj3iK0oearDRnpcoQLbsEISKEOI lhEUPz4XL34Etnyjc7gaTqJgxuBul0pk9PObwJwEiLUooEOI3rK8YEnHvDEc1jyyv0cIz+ trEw2mxTRbi8ESrtwaTDBawCG6PvOzBcxkRlSVPzcZEjQplckbx8fqCX9QL5Lw== 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 4Pvlkv0MN4zPhD; Sun, 9 Apr 2023 21:35:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZJqj081582; Sun, 9 Apr 2023 21:35:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZIa9081580; Sun, 9 Apr 2023 21:35:18 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:18 GMT Message-Id: <202304092135.339LZIa9081580@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 5d976198a6de - stable/13 - Merge llvm-project release/15.x llvmorg-15.0.0-9-g1c73596d3454 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 5d976198a6de2c316a9f371a4ca587cc8545d941 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=5d976198a6de2c316a9f371a4ca587cc8545d941 commit 5d976198a6de2c316a9f371a4ca587cc8545d941 Author: Dimitry Andric AuthorDate: 2022-09-10 18:56:18 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:54:50 +0000 Merge llvm-project release/15.x llvmorg-15.0.0-9-g1c73596d3454 This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-15.0.0-9-g1c73596d3454. PR: 265425 MFC after: 2 weeks (cherry picked from commit a4a491e2238b12ccd64d3faf9e6401487f6f1f1b) --- .../clang/include/clang/Lex/Preprocessor.h | 7 + .../clang/lib/AST/RecordLayoutBuilder.cpp | 7 +- .../clang/lib/Basic/Targets/AArch64.cpp | 5 +- .../clang/lib/CodeGen/CGStmtOpenMP.cpp | 13 +- .../clang/lib/CodeGen/CodeGenFunction.h | 7 +- .../llvm-project/clang/lib/CodeGen/TargetInfo.cpp | 15 +- .../clang/lib/Driver/ToolChains/Cuda.cpp | 4 +- .../clang/lib/Format/TokenAnnotator.cpp | 19 -- contrib/llvm-project/clang/lib/Headers/cpuid.h | 1 + .../clang/lib/Lex/PPMacroExpansion.cpp | 55 ++++ contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp | 7 + .../llvm-project/clang/lib/Sema/SemaExprCXX.cpp | 2 + contrib/llvm-project/clang/lib/Sema/SemaOpenMP.cpp | 3 + .../clang/utils/TableGen/SveEmitter.cpp | 2 + contrib/llvm-project/libcxx/include/regex | 2 +- contrib/llvm-project/libcxx/include/span | 7 +- contrib/llvm-project/lld/COFF/Driver.cpp | 15 +- contrib/llvm-project/lld/docs/ReleaseNotes.rst | 11 +- .../include/llvm/Analysis/LoopAccessAnalysis.h | 2 + .../llvm/DebugInfo/Symbolize/MarkupFilter.h | 30 +- .../llvm-project/llvm/include/llvm/MC/MCContext.h | 6 +- .../llvm-project/llvm/include/llvm/MC/MCDwarf.h | 6 + .../llvm/lib/Analysis/LoopAccessAnalysis.cpp | 3 +- .../llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp | 56 ++-- .../CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp | 5 +- .../llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp | 10 +- .../llvm/lib/DebugInfo/Symbolize/MarkupFilter.cpp | 302 +++++++++++++++++++-- contrib/llvm-project/llvm/lib/MC/MCContext.cpp | 39 +-- contrib/llvm-project/llvm/lib/MC/MCDwarf.cpp | 14 +- .../llvm/lib/MC/MCParser/ELFAsmParser.cpp | 3 +- contrib/llvm-project/llvm/lib/Support/Host.cpp | 1 + .../llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp | 11 +- .../llvm/lib/Target/RISCV/RISCVCodeGenPrepare.cpp | 4 +- .../Target/RISCV/TargetInfo/RISCVTargetInfo.cpp | 8 +- .../Target/Sparc/MCTargetDesc/SparcMCAsmInfo.cpp | 1 - .../llvm/lib/Target/X86/X86ISelLowering.cpp | 49 +++- .../Transforms/InstCombine/InstCombineCompares.cpp | 4 +- .../llvm/lib/Transforms/Utils/LoopUtils.cpp | 5 +- .../llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp | 12 +- .../lib/Transforms/Vectorize/SLPVectorizer.cpp | 18 +- .../llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp | 28 +- lib/clang/include/VCSVersion.inc | 6 +- lib/clang/include/lld/Common/Version.inc | 2 +- lib/clang/include/llvm/Support/VCSRevision.h | 2 +- 44 files changed, 616 insertions(+), 193 deletions(-) diff --git a/contrib/llvm-project/clang/include/clang/Lex/Preprocessor.h b/contrib/llvm-project/clang/include/clang/Lex/Preprocessor.h index 79454b5addea..7c5df05069ed 100644 --- a/contrib/llvm-project/clang/include/clang/Lex/Preprocessor.h +++ b/contrib/llvm-project/clang/include/clang/Lex/Preprocessor.h @@ -178,6 +178,8 @@ class Preprocessor { IdentifierInfo *Ident__is_target_vendor; // __is_target_vendor IdentifierInfo *Ident__is_target_os; // __is_target_os IdentifierInfo *Ident__is_target_environment; // __is_target_environment + IdentifierInfo *Ident__is_target_variant_os; + IdentifierInfo *Ident__is_target_variant_environment; IdentifierInfo *Ident__FLT_EVAL_METHOD__; // __FLT_EVAL_METHOD // Weak, only valid (and set) while InMacroArgs is true. @@ -1353,6 +1355,11 @@ public: StringRef getLastMacroWithSpelling(SourceLocation Loc, ArrayRef Tokens) const; + /// Get the predefines for this processor. + /// Used by some third-party tools to inspect and add predefines (see + /// https://github.com/llvm/llvm-project/issues/57483). + const std::string &getPredefines() const { return Predefines; } + /// Set the predefines for this Preprocessor. /// /// These predefines are automatically injected when parsing the main file. diff --git a/contrib/llvm-project/clang/lib/AST/RecordLayoutBuilder.cpp b/contrib/llvm-project/clang/lib/AST/RecordLayoutBuilder.cpp index 6f3ede2ce42a..5ddd95e2ecca 100644 --- a/contrib/llvm-project/clang/lib/AST/RecordLayoutBuilder.cpp +++ b/contrib/llvm-project/clang/lib/AST/RecordLayoutBuilder.cpp @@ -1889,12 +1889,7 @@ void ItaniumRecordLayoutBuilder::LayoutField(const FieldDecl *D, UnfilledBitsInLastUnit = 0; LastBitfieldStorageUnitSize = 0; - llvm::Triple Target = Context.getTargetInfo().getTriple(); - bool FieldPacked = (Packed && (!FieldClass || FieldClass->isPOD() || - Context.getLangOpts().getClangABICompat() <= - LangOptions::ClangABI::Ver14 || - Target.isPS() || Target.isOSDarwin())) || - D->hasAttr(); + bool FieldPacked = Packed || D->hasAttr(); AlignRequirementKind AlignRequirement = AlignRequirementKind::None; CharUnits FieldSize; diff --git a/contrib/llvm-project/clang/lib/Basic/Targets/AArch64.cpp b/contrib/llvm-project/clang/lib/Basic/Targets/AArch64.cpp index 60ef52ac3f0d..8d8972c1613a 100644 --- a/contrib/llvm-project/clang/lib/Basic/Targets/AArch64.cpp +++ b/contrib/llvm-project/clang/lib/Basic/Targets/AArch64.cpp @@ -489,9 +489,12 @@ void AArch64TargetInfo::getTargetDefines(const LangOptions &Opts, Builder.defineMacro("__FP_FAST_FMA", "1"); Builder.defineMacro("__FP_FAST_FMAF", "1"); + // C/C++ operators work on both VLS and VLA SVE types + if (FPU & SveMode) + Builder.defineMacro("__ARM_FEATURE_SVE_VECTOR_OPERATORS", "2"); + if (Opts.VScaleMin && Opts.VScaleMin == Opts.VScaleMax) { Builder.defineMacro("__ARM_FEATURE_SVE_BITS", Twine(Opts.VScaleMin * 128)); - Builder.defineMacro("__ARM_FEATURE_SVE_VECTOR_OPERATORS"); } } diff --git a/contrib/llvm-project/clang/lib/CodeGen/CGStmtOpenMP.cpp b/contrib/llvm-project/clang/lib/CodeGen/CGStmtOpenMP.cpp index aa55cdaca5dc..570424dae7fc 100644 --- a/contrib/llvm-project/clang/lib/CodeGen/CGStmtOpenMP.cpp +++ b/contrib/llvm-project/clang/lib/CodeGen/CGStmtOpenMP.cpp @@ -2582,8 +2582,9 @@ static void emitOMPSimdRegion(CodeGenFunction &CGF, const OMPLoopDirective &S, CGF.EmitOMPReductionClauseFinal(S, /*ReductionKind=*/OMPD_simd); emitPostUpdateForReductionClause(CGF, S, [](CodeGenFunction &) { return nullptr; }); + LoopScope.restoreMap(); + CGF.EmitOMPLinearClauseFinal(S, [](CodeGenFunction &) { return nullptr; }); } - CGF.EmitOMPLinearClauseFinal(S, [](CodeGenFunction &) { return nullptr; }); // Emit: if (PreCond) - end. if (ContBlock) { CGF.EmitBranch(ContBlock); @@ -3426,11 +3427,12 @@ bool CodeGenFunction::EmitOMPWorksharingLoop( EmitOMPLastprivateClauseFinal( S, isOpenMPSimdDirective(S.getDirectiveKind()), Builder.CreateIsNotNull(EmitLoadOfScalar(IL, S.getBeginLoc()))); + LoopScope.restoreMap(); + EmitOMPLinearClauseFinal(S, [IL, &S](CodeGenFunction &CGF) { + return CGF.Builder.CreateIsNotNull( + CGF.EmitLoadOfScalar(IL, S.getBeginLoc())); + }); } - EmitOMPLinearClauseFinal(S, [IL, &S](CodeGenFunction &CGF) { - return CGF.Builder.CreateIsNotNull( - CGF.EmitLoadOfScalar(IL, S.getBeginLoc())); - }); DoacrossCleanupScope.ForceCleanup(); // We're now done with the loop, so jump to the continuation block. if (ContBlock) { @@ -7658,6 +7660,7 @@ void CodeGenFunction::EmitOMPTaskLoopBasedDirective(const OMPLoopDirective &S) { CGF.GetAddrOfLocalVar(*LIP), /*Volatile=*/false, (*LIP)->getType(), S.getBeginLoc()))); } + LoopScope.restoreMap(); CGF.EmitOMPLinearClauseFinal(S, [LIP, &S](CodeGenFunction &CGF) { return CGF.Builder.CreateIsNotNull( CGF.EmitLoadOfScalar(CGF.GetAddrOfLocalVar(*LIP), /*Volatile=*/false, diff --git a/contrib/llvm-project/clang/lib/CodeGen/CodeGenFunction.h b/contrib/llvm-project/clang/lib/CodeGen/CodeGenFunction.h index fe0890f433e8..672acd844525 100644 --- a/contrib/llvm-project/clang/lib/CodeGen/CodeGenFunction.h +++ b/contrib/llvm-project/clang/lib/CodeGen/CodeGenFunction.h @@ -1094,7 +1094,7 @@ public: void ForceCleanup() { RunCleanupsScope::ForceCleanup(); - MappedVars.restore(CGF); + restoreMap(); } /// Exit scope - all the mapped variables are restored. @@ -1108,6 +1108,11 @@ public: VD = VD->getCanonicalDecl(); return !VD->isLocalVarDeclOrParm() && CGF.LocalDeclMap.count(VD) > 0; } + + /// Restore all mapped variables w/o clean up. This is usefully when we want + /// to reference the original variables but don't want the clean up because + /// that could emit lifetime end too early, causing backend issue #56913. + void restoreMap() { MappedVars.restore(CGF); } }; /// Save/restore original map of previously emitted local vars in case when we diff --git a/contrib/llvm-project/clang/lib/CodeGen/TargetInfo.cpp b/contrib/llvm-project/clang/lib/CodeGen/TargetInfo.cpp index 195ad8cdc13e..36e10e4df4c1 100644 --- a/contrib/llvm-project/clang/lib/CodeGen/TargetInfo.cpp +++ b/contrib/llvm-project/clang/lib/CodeGen/TargetInfo.cpp @@ -11002,9 +11002,22 @@ bool RISCVABIInfo::detectFPCCEligibleStructHelper(QualType Ty, CharUnits CurOff, // Unions aren't eligible unless they're empty (which is caught above). if (RD->isUnion()) return false; + const ASTRecordLayout &Layout = getContext().getASTRecordLayout(RD); + // If this is a C++ record, check the bases first. + if (const CXXRecordDecl *CXXRD = dyn_cast(RD)) { + for (const CXXBaseSpecifier &B : CXXRD->bases()) { + const auto *BDecl = + cast(B.getType()->castAs()->getDecl()); + CharUnits BaseOff = Layout.getBaseClassOffset(BDecl); + bool Ret = detectFPCCEligibleStructHelper(B.getType(), CurOff + BaseOff, + Field1Ty, Field1Off, Field2Ty, + Field2Off); + if (!Ret) + return false; + } + } int ZeroWidthBitFieldCount = 0; for (const FieldDecl *FD : RD->fields()) { - const ASTRecordLayout &Layout = getContext().getASTRecordLayout(RD); uint64_t FieldOffInBits = Layout.getFieldOffset(FD->getFieldIndex()); QualType QTy = FD->getType(); if (FD->isBitField()) { diff --git a/contrib/llvm-project/clang/lib/Driver/ToolChains/Cuda.cpp b/contrib/llvm-project/clang/lib/Driver/ToolChains/Cuda.cpp index 5e59677947e6..7ad990dda467 100644 --- a/contrib/llvm-project/clang/lib/Driver/ToolChains/Cuda.cpp +++ b/contrib/llvm-project/clang/lib/Driver/ToolChains/Cuda.cpp @@ -693,8 +693,8 @@ CudaToolChain::CudaToolChain(const Driver &D, const llvm::Triple &Triple, std::string CudaToolChain::getInputFilename(const InputInfo &Input) const { // Only object files are changed, for example assembly files keep their .s - // extensions. - if (Input.getType() != types::TY_Object) + // extensions. If the user requested device-only compilation don't change it. + if (Input.getType() != types::TY_Object || getDriver().offloadDeviceOnly()) return ToolChain::getInputFilename(Input); // Replace extension for object files with cubin because nvlink relies on diff --git a/contrib/llvm-project/clang/lib/Format/TokenAnnotator.cpp b/contrib/llvm-project/clang/lib/Format/TokenAnnotator.cpp index 5991cf23d5dc..cf6549e2a5bd 100644 --- a/contrib/llvm-project/clang/lib/Format/TokenAnnotator.cpp +++ b/contrib/llvm-project/clang/lib/Format/TokenAnnotator.cpp @@ -2329,25 +2329,6 @@ private: !PrevToken->MatchingParen) return TT_PointerOrReference; - // For "} &&" - if (PrevToken->is(tok::r_brace) && Tok.is(tok::ampamp)) { - const FormatToken *MatchingLBrace = PrevToken->MatchingParen; - - // We check whether there is a TemplateCloser(">") to indicate it's a - // template or not. If it's not a template, "&&" is likely a reference - // operator. - // struct {} &&ref = {}; - if (!MatchingLBrace) - return TT_PointerOrReference; - FormatToken *BeforeLBrace = MatchingLBrace->getPreviousNonComment(); - if (!BeforeLBrace || BeforeLBrace->isNot(TT_TemplateCloser)) - return TT_PointerOrReference; - - // If it is a template, "&&" is a binary operator. - // enable_if<>{} && ... - return TT_BinaryOperator; - } - if (PrevToken->Tok.isLiteral() || PrevToken->isOneOf(tok::r_paren, tok::r_square, tok::kw_true, tok::kw_false, tok::r_brace)) { diff --git a/contrib/llvm-project/clang/lib/Headers/cpuid.h b/contrib/llvm-project/clang/lib/Headers/cpuid.h index 5d262a60735f..caa0069c2e1f 100644 --- a/contrib/llvm-project/clang/lib/Headers/cpuid.h +++ b/contrib/llvm-project/clang/lib/Headers/cpuid.h @@ -232,6 +232,7 @@ /* Features in %ebx for leaf 0x80000008 */ #define bit_CLZERO 0x00000001 +#define bit_RDPRU 0x00000010 #define bit_WBNOINVD 0x00000200 diff --git a/contrib/llvm-project/clang/lib/Lex/PPMacroExpansion.cpp b/contrib/llvm-project/clang/lib/Lex/PPMacroExpansion.cpp index f3be2107f985..c56f41c4495e 100644 --- a/contrib/llvm-project/clang/lib/Lex/PPMacroExpansion.cpp +++ b/contrib/llvm-project/clang/lib/Lex/PPMacroExpansion.cpp @@ -387,6 +387,10 @@ void Preprocessor::RegisterBuiltinMacros() { Ident__is_target_os = RegisterBuiltinMacro(*this, "__is_target_os"); Ident__is_target_environment = RegisterBuiltinMacro(*this, "__is_target_environment"); + Ident__is_target_variant_os = + RegisterBuiltinMacro(*this, "__is_target_variant_os"); + Ident__is_target_variant_environment = + RegisterBuiltinMacro(*this, "__is_target_variant_environment"); // Modules. Ident__building_module = RegisterBuiltinMacro(*this, "__building_module"); @@ -1431,6 +1435,39 @@ static bool isTargetEnvironment(const TargetInfo &TI, return TI.getTriple().getEnvironment() == Env.getEnvironment(); } +/// Implements the __is_target_variant_os builtin macro. +static bool isTargetVariantOS(const TargetInfo &TI, const IdentifierInfo *II) { + if (TI.getTriple().isOSDarwin()) { + const llvm::Triple *VariantTriple = TI.getDarwinTargetVariantTriple(); + if (!VariantTriple) + return false; + + std::string OSName = + (llvm::Twine("unknown-unknown-") + II->getName().lower()).str(); + llvm::Triple OS(OSName); + if (OS.getOS() == llvm::Triple::Darwin) { + // Darwin matches macos, ios, etc. + return VariantTriple->isOSDarwin(); + } + return VariantTriple->getOS() == OS.getOS(); + } + return false; +} + +/// Implements the __is_target_variant_environment builtin macro. +static bool isTargetVariantEnvironment(const TargetInfo &TI, + const IdentifierInfo *II) { + if (TI.getTriple().isOSDarwin()) { + const llvm::Triple *VariantTriple = TI.getDarwinTargetVariantTriple(); + if (!VariantTriple) + return false; + std::string EnvName = (llvm::Twine("---") + II->getName().lower()).str(); + llvm::Triple Env(EnvName); + return VariantTriple->getEnvironment() == Env.getEnvironment(); + } + return false; +} + /// ExpandBuiltinMacro - If an identifier token is read that is to be expanded /// as a builtin macro, handle it and return the next token as 'Tok'. void Preprocessor::ExpandBuiltinMacro(Token &Tok) { @@ -1677,6 +1714,8 @@ void Preprocessor::ExpandBuiltinMacro(Token &Tok) { .Case("__is_target_vendor", true) .Case("__is_target_os", true) .Case("__is_target_environment", true) + .Case("__is_target_variant_os", true) + .Case("__is_target_variant_environment", true) .Default(false); } }); @@ -1877,6 +1916,22 @@ void Preprocessor::ExpandBuiltinMacro(Token &Tok) { Tok, *this, diag::err_feature_check_malformed); return II && isTargetEnvironment(getTargetInfo(), II); }); + } else if (II == Ident__is_target_variant_os) { + EvaluateFeatureLikeBuiltinMacro( + OS, Tok, II, *this, false, + [this](Token &Tok, bool &HasLexedNextToken) -> int { + IdentifierInfo *II = ExpectFeatureIdentifierInfo( + Tok, *this, diag::err_feature_check_malformed); + return II && isTargetVariantOS(getTargetInfo(), II); + }); + } else if (II == Ident__is_target_variant_environment) { + EvaluateFeatureLikeBuiltinMacro( + OS, Tok, II, *this, false, + [this](Token &Tok, bool &HasLexedNextToken) -> int { + IdentifierInfo *II = ExpectFeatureIdentifierInfo( + Tok, *this, diag::err_feature_check_malformed); + return II && isTargetVariantEnvironment(getTargetInfo(), II); + }); } else { llvm_unreachable("Unknown identifier!"); } diff --git a/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp b/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp index 0f79978b0911..83081bbf0aa0 100644 --- a/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp +++ b/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp @@ -15603,6 +15603,8 @@ ExprResult Sema::CreateBuiltinUnaryOp(SourceLocation OpLoc, resultType->castAs()->getVectorKind() != VectorType::AltiVecBool)) break; + else if (resultType->isVLSTBuiltinType()) // SVE vectors allow + and - + break; else if (getLangOpts().CPlusPlus && // C++ [expr.unary.op]p6 Opc == UO_Plus && resultType->isPointerType()) @@ -17598,6 +17600,11 @@ static void RemoveNestedImmediateInvocation( DRSet.erase(E); return E; } + ExprResult TransformLambdaExpr(LambdaExpr *E) { + // Do not rebuild lambdas to avoid creating a new type. + // Lambdas have already been processed inside their eval context. + return E; + } bool AlwaysRebuild() { return false; } bool ReplacingOriginal() { return true; } bool AllowSkippingCXXConstructExpr() { diff --git a/contrib/llvm-project/clang/lib/Sema/SemaExprCXX.cpp b/contrib/llvm-project/clang/lib/Sema/SemaExprCXX.cpp index 5331193de863..6f9e025283f5 100644 --- a/contrib/llvm-project/clang/lib/Sema/SemaExprCXX.cpp +++ b/contrib/llvm-project/clang/lib/Sema/SemaExprCXX.cpp @@ -5412,6 +5412,8 @@ void DiagnoseBuiltinDeprecation(Sema& S, TypeTrait Kind, Replacement = BTT_IsTriviallyAssignable; break; case UTT_HasTrivialCopy: + Replacement = UTT_IsTriviallyCopyable; + break; case UTT_HasTrivialDefaultConstructor: case UTT_HasTrivialMoveConstructor: Replacement = TT_IsTriviallyConstructible; diff --git a/contrib/llvm-project/clang/lib/Sema/SemaOpenMP.cpp b/contrib/llvm-project/clang/lib/Sema/SemaOpenMP.cpp index dc1470bf7a9d..a92fec6a0232 100644 --- a/contrib/llvm-project/clang/lib/Sema/SemaOpenMP.cpp +++ b/contrib/llvm-project/clang/lib/Sema/SemaOpenMP.cpp @@ -2270,6 +2270,9 @@ bool Sema::isInOpenMPTargetExecutionDirective() const { } bool Sema::isOpenMPRebuildMemberExpr(ValueDecl *D) { + // Only rebuild for Field. + if (!dyn_cast(D)) + return false; DSAStackTy::DSAVarData DVarPrivate = DSAStack->hasDSA( D, [](OpenMPClauseKind C, bool AppliedToPointee, diff --git a/contrib/llvm-project/clang/utils/TableGen/SveEmitter.cpp b/contrib/llvm-project/clang/utils/TableGen/SveEmitter.cpp index b2f6ede56522..e1e1c078ccbf 100644 --- a/contrib/llvm-project/clang/utils/TableGen/SveEmitter.cpp +++ b/contrib/llvm-project/clang/utils/TableGen/SveEmitter.cpp @@ -1282,6 +1282,8 @@ void SVEEmitter::createHeader(raw_ostream &OS) { OS << "#ifdef __cplusplus\n"; OS << "} // extern \"C\"\n"; OS << "#endif\n\n"; + OS << "#undef __ai\n\n"; + OS << "#undef __aio\n\n"; OS << "#endif /*__ARM_FEATURE_SVE */\n\n"; OS << "#endif /* __ARM_SVE_H */\n"; } diff --git a/contrib/llvm-project/libcxx/include/regex b/contrib/llvm-project/libcxx/include/regex index 850fe099df1e..26887e84bf28 100644 --- a/contrib/llvm-project/libcxx/include/regex +++ b/contrib/llvm-project/libcxx/include/regex @@ -1355,7 +1355,7 @@ inline _LIBCPP_INLINE_VISIBILITY unsigned char __to_lower(unsigned char __c) { #if defined(__MVS__) && !defined(__NATIVE_ASCII_F) - return c & 0xBF; + return __c & 0xBF; #else return __c | 0x20; #endif diff --git a/contrib/llvm-project/libcxx/include/span b/contrib/llvm-project/libcxx/include/span index 00793a210cbe..67d2ac241ff2 100644 --- a/contrib/llvm-project/libcxx/include/span +++ b/contrib/llvm-project/libcxx/include/span @@ -453,9 +453,10 @@ public: : __data{_VSTD::to_address(__first)}, __size{__count} {} template <__span_compatible_iterator _It, __span_compatible_sentinel_for<_It> _End> - _LIBCPP_INLINE_VISIBILITY - constexpr span(_It __first, _End __last) - : __data(_VSTD::to_address(__first)), __size(__last - __first) {} + _LIBCPP_INLINE_VISIBILITY constexpr span(_It __first, _End __last) + : __data(_VSTD::to_address(__first)), __size(__last - __first) { + _LIBCPP_ASSERT(__last - __first >= 0, "invalid range in span's constructor (iterator, sentinel)"); + } template _LIBCPP_INLINE_VISIBILITY diff --git a/contrib/llvm-project/lld/COFF/Driver.cpp b/contrib/llvm-project/lld/COFF/Driver.cpp index 680f89b79b95..5b21337bb45e 100644 --- a/contrib/llvm-project/lld/COFF/Driver.cpp +++ b/contrib/llvm-project/lld/COFF/Driver.cpp @@ -2228,15 +2228,14 @@ void LinkerDriver::linkerMain(ArrayRef argsArr) { // Windows specific -- if __load_config_used can be resolved, resolve it. if (ctx.symtab.findUnderscore("_load_config_used")) addUndefined(mangle("_load_config_used")); - } while (run()); - if (args.hasArg(OPT_include_optional)) { - // Handle /includeoptional - for (auto *arg : args.filtered(OPT_include_optional)) - if (isa_and_nonnull(ctx.symtab.find(arg->getValue()))) - addUndefined(arg->getValue()); - while (run()); - } + if (args.hasArg(OPT_include_optional)) { + // Handle /includeoptional + for (auto *arg : args.filtered(OPT_include_optional)) + if (isa_and_nonnull(ctx.symtab.find(arg->getValue()))) + addUndefined(arg->getValue()); + } + } while (run()); // Create wrapped symbols for -wrap option. std::vector wrapped = addWrappedSymbols(ctx, args); diff --git a/contrib/llvm-project/lld/docs/ReleaseNotes.rst b/contrib/llvm-project/lld/docs/ReleaseNotes.rst index 5819d67d3297..db0b66a3807c 100644 --- a/contrib/llvm-project/lld/docs/ReleaseNotes.rst +++ b/contrib/llvm-project/lld/docs/ReleaseNotes.rst @@ -5,13 +5,6 @@ lld |release| Release Notes .. contents:: :local: -.. only:: PreRelease - - .. warning:: - These are in-progress notes for the upcoming LLVM |release| release. - Release notes for previous releases can be found on - `the Download Page `_. - Introduction ============ @@ -98,7 +91,7 @@ MachO Improvements * We now support proper relocation and pruning of EH frames. **Note:** this comes at some performance overhead on x86_64 builds, and we recommend adding - the ``-femit-compact-unwind=no-compact-unwind`` compile flag to avoid it. + the ``-femit-dwarf-unwind=no-compact-unwind`` compile flag to avoid it. (`D129540 `_, `D122258 `_) @@ -212,6 +205,8 @@ Fixes errors. (`D122624 `_) * Fixed handling of relocatable object files within frameworks. (`D114841 `_) +* Fixed the PPC64R2SaveStub to only use non-pc-relative code. + (`D129580 `_) WebAssembly Improvements ------------------------ diff --git a/contrib/llvm-project/llvm/include/llvm/Analysis/LoopAccessAnalysis.h b/contrib/llvm-project/llvm/include/llvm/Analysis/LoopAccessAnalysis.h index 8f71ce9e96c0..af8e8d22269e 100644 --- a/contrib/llvm-project/llvm/include/llvm/Analysis/LoopAccessAnalysis.h +++ b/contrib/llvm-project/llvm/include/llvm/Analysis/LoopAccessAnalysis.h @@ -253,6 +253,8 @@ public: return {}; } + const Loop *getInnermostLoop() const { return InnermostLoop; } + private: /// A wrapper around ScalarEvolution, used to add runtime SCEV checks, and /// applies dynamic knowledge to simplify SCEV expressions and convert them diff --git a/contrib/llvm-project/llvm/include/llvm/DebugInfo/Symbolize/MarkupFilter.h b/contrib/llvm-project/llvm/include/llvm/DebugInfo/Symbolize/MarkupFilter.h index 26686143af95..a54f8f5d2db8 100644 --- a/contrib/llvm-project/llvm/include/llvm/DebugInfo/Symbolize/MarkupFilter.h +++ b/contrib/llvm-project/llvm/include/llvm/DebugInfo/Symbolize/MarkupFilter.h @@ -26,11 +26,14 @@ namespace llvm { namespace symbolize { +class LLVMSymbolizer; + /// Filter to convert parsed log symbolizer markup elements into human-readable /// text. class MarkupFilter { public: - MarkupFilter(raw_ostream &OS, Optional ColorsEnabled = llvm::None); + MarkupFilter(raw_ostream &OS, LLVMSymbolizer &Symbolizer, + Optional ColorsEnabled = llvm::None); /// Filters a line containing symbolizer markup and writes the human-readable /// results to the output stream. @@ -57,6 +60,7 @@ private: uint64_t ModuleRelativeAddr; bool contains(uint64_t Addr) const; + uint64_t getModuleRelativeAddr(uint64_t Addr) const; }; // An informational module line currently being constructed. As many mmap @@ -67,6 +71,15 @@ private: SmallVector MMaps = {}; }; + // The semantics of a possible program counter value. + enum class PCType { + // The address is a return address and must be adjusted to point to the call + // itself. + ReturnAddress, + // The address is the precise location in the code and needs no adjustment. + PreciseCode, + }; + bool tryContextualElement(const MarkupNode &Node, const SmallVector &DeferredNodes); bool tryMMap(const MarkupNode &Element, @@ -83,6 +96,9 @@ private: bool tryPresentation(const MarkupNode &Node); bool trySymbol(const MarkupNode &Node); + bool tryPC(const MarkupNode &Node); + bool tryBackTrace(const MarkupNode &Node); + bool tryData(const MarkupNode &Node); bool trySGR(const MarkupNode &Node); @@ -91,6 +107,9 @@ private: void restoreColor(); void resetColor(); + void printRawElement(const MarkupNode &Element); + void printValue(Twine Value); + Optional parseModule(const MarkupNode &Element) const; Optional parseMMap(const MarkupNode &Element) const; @@ -99,19 +118,26 @@ private: Optional parseSize(StringRef Str) const; Optional> parseBuildID(StringRef Str) const; Optional parseMode(StringRef Str) const; + Optional parsePCType(StringRef Str) const; + Optional parseFrameNumber(StringRef Str) const; bool checkTag(const MarkupNode &Node) const; bool checkNumFields(const MarkupNode &Element, size_t Size) const; bool checkNumFieldsAtLeast(const MarkupNode &Element, size_t Size) const; + bool checkNumFieldsAtMost(const MarkupNode &Element, size_t Size) const; void reportTypeError(StringRef Str, StringRef TypeName) const; void reportLocation(StringRef::iterator Loc) const; - const MMap *overlappingMMap(const MMap &Map) const; + const MMap *getOverlappingMMap(const MMap &Map) const; + const MMap *getContainingMMap(uint64_t Addr) const; + + uint64_t adjustAddr(uint64_t Addr, PCType Type) const; StringRef lineEnding() const; raw_ostream &OS; + LLVMSymbolizer &Symbolizer; const bool ColorsEnabled; MarkupParser Parser; diff --git a/contrib/llvm-project/llvm/include/llvm/MC/MCContext.h b/contrib/llvm-project/llvm/include/llvm/MC/MCContext.h index 61520c4f29bf..c20ce79ee4d0 100644 --- a/contrib/llvm-project/llvm/include/llvm/MC/MCContext.h +++ b/contrib/llvm-project/llvm/include/llvm/MC/MCContext.h @@ -190,7 +190,8 @@ private: SmallString<128> CompilationDir; /// Prefix replacement map for source file information. - std::map DebugPrefixMap; + std::map> + DebugPrefixMap; /// The main file name if passed in explicitly. std::string MainFileName; @@ -698,6 +699,9 @@ public: /// Add an entry to the debug prefix map. void addDebugPrefixMapEntry(const std::string &From, const std::string &To); + /// Remap one path in-place as per the debug prefix map. + void remapDebugPath(SmallVectorImpl &Path); + // Remaps all debug directory paths in-place as per the debug prefix map. void RemapDebugPaths(); diff --git a/contrib/llvm-project/llvm/include/llvm/MC/MCDwarf.h b/contrib/llvm-project/llvm/include/llvm/MC/MCDwarf.h index 8b2ae84749b4..557c713575e4 100644 --- a/contrib/llvm-project/llvm/include/llvm/MC/MCDwarf.h +++ b/contrib/llvm-project/llvm/include/llvm/MC/MCDwarf.h @@ -22,6 +22,7 @@ #include "llvm/MC/StringTableBuilder.h" #include "llvm/Support/Error.h" #include "llvm/Support/MD5.h" +#include "llvm/Support/StringSaver.h" #include #include #include @@ -48,6 +49,8 @@ MCSymbol *emitListsTableHeaderStart(MCStreamer &S); /// Manage the .debug_line_str section contents, if we use it. class MCDwarfLineStr { + BumpPtrAllocator Alloc; + StringSaver Saver{Alloc}; MCSymbol *LineStrLabel = nullptr; StringTableBuilder LineStrings{StringTableBuilder::DWARF}; bool UseRelocs = false; @@ -57,6 +60,8 @@ public: /// v5 line table). explicit MCDwarfLineStr(MCContext &Ctx); + StringSaver &getSaver() { return Saver; } + /// Emit a reference to the string. void emitRef(MCStreamer *MCOS, StringRef Path); @@ -382,6 +387,7 @@ public: bool hasRootFile() const { return !Header.RootFile.Name.empty(); } + MCDwarfFile &getRootFile() { return Header.RootFile; } const MCDwarfFile &getRootFile() const { return Header.RootFile; } // Report whether MD5 usage has been consistent (all-or-none). diff --git a/contrib/llvm-project/llvm/lib/Analysis/LoopAccessAnalysis.cpp b/contrib/llvm-project/llvm/lib/Analysis/LoopAccessAnalysis.cpp index aa35f253bc5f..8311b480ab09 100644 --- a/contrib/llvm-project/llvm/lib/Analysis/LoopAccessAnalysis.cpp +++ b/contrib/llvm-project/llvm/lib/Analysis/LoopAccessAnalysis.cpp @@ -280,7 +280,8 @@ void RuntimePointerChecking::tryToCreateDiffCheck( auto *SrcAR = dyn_cast(Src->Expr); auto *SinkAR = dyn_cast(Sink->Expr); - if (!SrcAR || !SinkAR) { + if (!SrcAR || !SinkAR || SrcAR->getLoop() != DC.getInnermostLoop() || + SinkAR->getLoop() != DC.getInnermostLoop()) { CanUseDiffCheck = false; return; } diff --git a/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp index 8d465b9520de..a7f9382478d4 100644 --- a/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp +++ b/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp @@ -6360,7 +6360,8 @@ SDValue DAGCombiner::visitAND(SDNode *N) { SDValue Extendee = Ext->getOperand(0); unsigned ScalarWidth = Extendee.getValueType().getScalarSizeInBits(); - if (N1C->getAPIntValue().isMask(ScalarWidth)) { + if (N1C->getAPIntValue().isMask(ScalarWidth) && + (!LegalOperations || TLI.isOperationLegal(ISD::ZERO_EXTEND, ExtVT))) { // (and (extract_subvector (zext|anyext|sext v) _) iN_mask) // => (extract_subvector (iN_zeroext v)) SDValue ZeroExtExtendee = @@ -7162,9 +7163,8 @@ static SDValue extractShiftForRotate(SelectionDAG &DAG, SDValue OppShift, SDValue ExtractFrom, SDValue &Mask, const SDLoc &DL) { assert(OppShift && ExtractFrom && "Empty SDValue"); - assert( - (OppShift.getOpcode() == ISD::SHL || OppShift.getOpcode() == ISD::SRL) && - "Existing shift must be valid as a rotate half"); + if (OppShift.getOpcode() != ISD::SHL && OppShift.getOpcode() != ISD::SRL) + return SDValue(); ExtractFrom = stripConstantMask(DAG, ExtractFrom, Mask); @@ -7573,6 +7573,10 @@ SDValue DAGCombiner::MatchRotate(SDValue LHS, SDValue RHS, const SDLoc &DL) { std::swap(LHSMask, RHSMask); } + // Something has gone wrong - we've lost the shl/srl pair - bail. + if (LHSShift.getOpcode() != ISD::SHL || RHSShift.getOpcode() != ISD::SRL) + return SDValue(); + unsigned EltSizeInBits = VT.getScalarSizeInBits(); SDValue LHSShiftArg = LHSShift.getOperand(0); SDValue LHSShiftAmt = LHSShift.getOperand(1); @@ -22729,25 +22733,31 @@ SDValue DAGCombiner::visitVECTOR_SHUFFLE(SDNode *N) { SDLoc DL(N); EVT IntVT = VT.changeVectorElementTypeToInteger(); EVT IntSVT = VT.getVectorElementType().changeTypeToInteger(); - IntSVT = TLI.getTypeToTransformTo(*DAG.getContext(), IntSVT); - SDValue ZeroElt = DAG.getConstant(0, DL, IntSVT); - SDValue AllOnesElt = DAG.getAllOnesConstant(DL, IntSVT); - SmallVector AndMask(NumElts, DAG.getUNDEF(IntSVT)); - for (int I = 0; I != (int)NumElts; ++I) - if (0 <= Mask[I]) - AndMask[I] = Mask[I] == I ? AllOnesElt : ZeroElt; - - // See if a clear mask is legal instead of going via - // XformToShuffleWithZero which loses UNDEF mask elements. - if (TLI.isVectorClearMaskLegal(ClearMask, IntVT)) - return DAG.getBitcast( - VT, DAG.getVectorShuffle(IntVT, DL, DAG.getBitcast(IntVT, N0), - DAG.getConstant(0, DL, IntVT), ClearMask)); - - if (TLI.isOperationLegalOrCustom(ISD::AND, IntVT)) - return DAG.getBitcast( - VT, DAG.getNode(ISD::AND, DL, IntVT, DAG.getBitcast(IntVT, N0), - DAG.getBuildVector(IntVT, DL, AndMask))); + // Transform the type to a legal type so that the buildvector constant + // elements are not illegal. Make sure that the result is larger than the + // original type, incase the value is split into two (eg i64->i32). + if (!TLI.isTypeLegal(IntSVT) && LegalTypes) + IntSVT = TLI.getTypeToTransformTo(*DAG.getContext(), IntSVT); + if (IntSVT.getSizeInBits() >= IntVT.getScalarSizeInBits()) { + SDValue ZeroElt = DAG.getConstant(0, DL, IntSVT); + SDValue AllOnesElt = DAG.getAllOnesConstant(DL, IntSVT); + SmallVector AndMask(NumElts, DAG.getUNDEF(IntSVT)); + for (int I = 0; I != (int)NumElts; ++I) + if (0 <= Mask[I]) + AndMask[I] = Mask[I] == I ? AllOnesElt : ZeroElt; + + // See if a clear mask is legal instead of going via + // XformToShuffleWithZero which loses UNDEF mask elements. + if (TLI.isVectorClearMaskLegal(ClearMask, IntVT)) + return DAG.getBitcast( + VT, DAG.getVectorShuffle(IntVT, DL, DAG.getBitcast(IntVT, N0), + DAG.getConstant(0, DL, IntVT), ClearMask)); + + if (TLI.isOperationLegalOrCustom(ISD::AND, IntVT)) + return DAG.getBitcast( + VT, DAG.getNode(ISD::AND, DL, IntVT, DAG.getBitcast(IntVT, N0), + DAG.getBuildVector(IntVT, DL, AndMask))); + } } } diff --git a/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp b/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp index 228d4a43ccde..e2173879c218 100644 --- a/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp +++ b/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp @@ -4428,7 +4428,10 @@ void DAGTypeLegalizer::ExpandIntRes_XMULO(SDNode *N, else if (VT == MVT::i128) LC = RTLIB::MULO_I128; - if (LC == RTLIB::UNKNOWN_LIBCALL || !TLI.getLibcallName(LC)) { + // If we don't have the libcall or if the function we are compiling is the + // implementation of the expected libcall (avoid inf-loop), expand inline. + if (LC == RTLIB::UNKNOWN_LIBCALL || !TLI.getLibcallName(LC) || + TLI.getLibcallName(LC) == DAG.getMachineFunction().getName()) { // FIXME: This is not an optimal expansion, but better than crashing. EVT WideVT = EVT::getIntegerVT(*DAG.getContext(), VT.getScalarSizeInBits() * 2); diff --git a/contrib/llvm-project/llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp b/contrib/llvm-project/llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp index d2ed4fe018b5..5ea4c4cded7f 100644 --- a/contrib/llvm-project/llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp +++ b/contrib/llvm-project/llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp @@ -1382,10 +1382,12 @@ bool DWARFDebugLine::Prologue::getFileNameByIndex( IncludeDir = dwarf::toStringRef(IncludeDirectories[Entry.DirIdx - 1]); } - // For absolute paths only, include the compilation directory of compile unit. - // We know that FileName is not absolute, the only way to have an absolute - // path at this point would be if IncludeDir is absolute. - if (Kind == FileLineInfoKind::AbsoluteFilePath && !CompDir.empty() && + // For absolute paths only, include the compilation directory of compile unit, + // unless v5 DirIdx == 0 (IncludeDir indicates the compilation directory). We + // know that FileName is not absolute, the only way to have an absolute path + // at this point would be if IncludeDir is absolute. + if (Kind == FileLineInfoKind::AbsoluteFilePath && + (getVersion() < 5 || Entry.DirIdx != 0) && !CompDir.empty() && !isPathAbsoluteOnWindowsOrPosix(IncludeDir)) sys::path::append(FilePath, Style, CompDir); diff --git a/contrib/llvm-project/llvm/lib/DebugInfo/Symbolize/MarkupFilter.cpp b/contrib/llvm-project/llvm/lib/DebugInfo/Symbolize/MarkupFilter.cpp index 91a51485026e..d96c0c85d5bd 100644 --- a/contrib/llvm-project/llvm/lib/DebugInfo/Symbolize/MarkupFilter.cpp +++ b/contrib/llvm-project/llvm/lib/DebugInfo/Symbolize/MarkupFilter.cpp @@ -20,11 +20,14 @@ #include "llvm/ADT/STLExtras.h" #include "llvm/ADT/StringExtras.h" #include "llvm/ADT/StringSwitch.h" +#include "llvm/DebugInfo/DIContext.h" #include "llvm/DebugInfo/Symbolize/Markup.h" +#include "llvm/DebugInfo/Symbolize/Symbolize.h" #include "llvm/Debuginfod/Debuginfod.h" #include "llvm/Demangle/Demangle.h" #include "llvm/Object/ObjectFile.h" #include "llvm/Support/Error.h" +#include "llvm/Support/Format.h" #include "llvm/Support/FormatVariadic.h" #include "llvm/Support/WithColor.h" #include "llvm/Support/raw_ostream.h" @@ -32,9 +35,11 @@ using namespace llvm; using namespace llvm::symbolize; -MarkupFilter::MarkupFilter(raw_ostream &OS, Optional ColorsEnabled) - : OS(OS), ColorsEnabled(ColorsEnabled.value_or( - WithColor::defaultAutoDetectFunction()(OS))) {} +MarkupFilter::MarkupFilter(raw_ostream &OS, LLVMSymbolizer &Symbolizer, + Optional ColorsEnabled) + : OS(OS), Symbolizer(Symbolizer), + ColorsEnabled( + ColorsEnabled.value_or(WithColor::defaultAutoDetectFunction()(OS))) {} void MarkupFilter::filter(StringRef Line) { this->Line = Line; @@ -94,10 +99,10 @@ bool MarkupFilter::tryMMap(const MarkupNode &Node, if (!ParsedMMap) return true; - if (const MMap *M = overlappingMMap(*ParsedMMap)) { + if (const MMap *M = getOverlappingMMap(*ParsedMMap)) { WithColor::error(errs()) - << formatv("overlapping mmap: #{0:x} [{1:x},{2:x})\n", M->Mod->ID, - M->Addr, M->Addr + M->Size); + << formatv("overlapping mmap: #{0:x} [{1:x}-{2:x}]\n", M->Mod->ID, + M->Addr, M->Addr + M->Size - 1); reportLocation(Node.Fields[0].begin()); return true; } @@ -160,18 +165,17 @@ bool MarkupFilter::tryModule(const MarkupNode &Node, filterNode(Node); beginModuleInfoLine(&Module); OS << "; BuildID="; - highlightValue(); - OS << toHex(Module.BuildID, /*LowerCase=*/true); - highlight(); + printValue(toHex(Module.BuildID, /*LowerCase=*/true)); return true; } void MarkupFilter::beginModuleInfoLine(const Module *M) { highlight(); OS << "[[[ELF module"; - highlightValue(); - OS << formatv(" #{0:x} \"{1}\"", M->ID, M->Name); - highlight(); + printValue(formatv(" #{0:x} ", M->ID)); + OS << '"'; + printValue(M->Name); + OS << '"'; MIL = ModuleInfoLine{M}; } @@ -182,14 +186,13 @@ void MarkupFilter::endAnyModuleInfoLine() { return A->Addr < B->Addr; }); for (const MMap *M : MIL->MMaps) { - OS << (M == MIL->MMaps.front() ? ' ' : '-'); - highlightValue(); - OS << formatv("{0:x}", M->Addr); - highlight(); - OS << '('; - highlightValue(); - OS << M->Mode; - highlight(); + OS << (M == MIL->MMaps.front() ? ' ' : ','); + OS << '['; + printValue(formatv("{0:x}", M->Addr)); + OS << '-'; + printValue(formatv("{0:x}", M->Addr + M->Size - 1)); + OS << "]("; + printValue(M->Mode); OS << ')'; } OS << "]]]" << lineEnding(); @@ -210,7 +213,13 @@ void MarkupFilter::filterNode(const MarkupNode &Node) { } bool MarkupFilter::tryPresentation(const MarkupNode &Node) { - return trySymbol(Node); + if (trySymbol(Node)) + return true; + if (tryPC(Node)) + return true; + if (tryBackTrace(Node)) + return true; + return tryData(Node); } bool MarkupFilter::trySymbol(const MarkupNode &Node) { @@ -225,6 +234,172 @@ bool MarkupFilter::trySymbol(const MarkupNode &Node) { return true; } +bool MarkupFilter::tryPC(const MarkupNode &Node) { + if (Node.Tag != "pc") + return false; + if (!checkNumFieldsAtLeast(Node, 1)) + return true; + if (!checkNumFieldsAtMost(Node, 2)) + return true; + + Optional Addr = parseAddr(Node.Fields[0]); + if (!Addr) + return true; + + // PC addresses that aren't part of a backtrace are assumed to be precise code + // locations. + PCType Type = PCType::PreciseCode; + if (Node.Fields.size() == 2) { + Optional ParsedType = parsePCType(Node.Fields[1]); + if (!ParsedType) + return true; + Type = *ParsedType; + } + *Addr = adjustAddr(*Addr, Type); + + const MMap *MMap = getContainingMMap(*Addr); + if (!MMap) { + WithColor::error() << "no mmap covers address\n"; + reportLocation(Node.Fields[0].begin()); + printRawElement(Node); + return true; + } + + Expected LI = Symbolizer.symbolizeCode( + MMap->Mod->BuildID, {MMap->getModuleRelativeAddr(*Addr)}); + if (!LI) { + WithColor::defaultErrorHandler(LI.takeError()); + printRawElement(Node); + return true; + } + if (!*LI) { + printRawElement(Node); + return true; + } + + highlight(); + printValue(LI->FunctionName); *** 777 LINES SKIPPED *** From nobody Sun Apr 9 21:35:20 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvlkx0Czwz44JZW; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvlkw34pXz4M3G; Sun, 9 Apr 2023 21:35:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076120; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=42jFje+CBjGbtARa9ofYmPfm0fKXpp1vvzf01zgC3wk=; b=pkoEtoOcAy4LDH0VV9rVgNoN+OlRb6YRkU2je4cycAAwuWC+zGI6z2WytuIil+oxEOBaOC fLp28J8jve1QCsbLO5CxS00P3q5UoqLY5NVSdSsgLl0Wy3T62CwdIwlPJgeQqkZk/xeras hVzRircaOURS9CF4SmvmSzD+p4RD3cwXKVajc5Peh3sU3obh3OI8mzpYbxPz3XM9vexGdL 1TVyCmFZv4UOXkfnIF5IfXARBc9NBpk8mBQoJsOUdX4z3J64ggoYdtNEtVImdxtHjTuuO6 6IP4vDr2PXRfXP4KnjPhmEEDFZbh85jwsYy/hkAavvT+UQ1r4V3e0jfwSo+BVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076120; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=42jFje+CBjGbtARa9ofYmPfm0fKXpp1vvzf01zgC3wk=; b=oQGzi7qIlYHG/QJrR2OSE8I2+ArmSBpFDO4Ew9/CZHgWvUwDg8RZ2jXbEW+Cs0VykOLG06 4OQpyzVyy2Hl3Sx9VH2rj8ti2m0ucdvlEciCjTCtziQC3DpMOQSkDIDiNFTr+iLomCljWd HV4FobuMlbHAvl/Iu2HUsLB0v6cj3z25FwMAg/Cd1LCHqeks/EQmlmIABSXMg10SYG+wev YXRsLHOhi9WgHYMnCfmSKTuSgWty78bsM+ZxwfevBrX2yN2yH89FkfFxjglBxnrvSsPRLB /U6efGCQo/bUt3olJtKDIM9fZ4ZfXWWVy1vfDCWWKEa/bWoYWrU3mm/BpfLKgQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076120; a=rsa-sha256; cv=none; b=VjjX2qLJxwdp2DPN38YRbl66KXf0IrieZLTVh/XKwT8xlaDKH2EHrodz4gxWK2SNJFhUkb 3W5WoR6mVDMTTKyYhBGHGTwFxly5Rg3gcNXHHYs7y4qZ05+HISYw0lkrA3hxHo12pahFSZ mhX7z+GSTupTyRsZdoRBZtV2fT3lpES5cbjk/fc+3v4DGc3XZfyMaueqZR+3lSBaOKm7UE EYlxW4BnOsuSA7mGVsNp6aRXSxwJw/whyoyIcuzPqIl/xmHeP4iIqmIXFORdzI9mEQoZBF 3OEYWbzAF9hhCgmXIAF0sgv8CnkGbuW4K5eXYWDJP9VT80vLUGysaxWsWdNmbQ== 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 4Pvlkw1dfNzPS8; Sun, 9 Apr 2023 21:35:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZKPa081601; Sun, 9 Apr 2023 21:35:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZKOP081600; Sun, 9 Apr 2023 21:35:20 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:20 GMT Message-Id: <202304092135.339LZKOP081600@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: c3fe23542ac3 - stable/13 - Merge llvm-project release/15.x llvmorg-15.0.2-10-gf3c5289e7846 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: c3fe23542ac3a3db42f169c21c2996eebe1f37bb Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=c3fe23542ac3a3db42f169c21c2996eebe1f37bb commit c3fe23542ac3a3db42f169c21c2996eebe1f37bb Author: Dimitry Andric AuthorDate: 2022-10-16 19:03:40 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:54:51 +0000 Merge llvm-project release/15.x llvmorg-15.0.2-10-gf3c5289e7846 This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-15.0.2-10-gf3c5289e7846. PR: 265425 MFC after: 2 weeks (cherry picked from commit 6246ae0b85d8159978c01ae916a9ad6cde9378b5) --- ObsoleteFiles.inc | 4 +- .../include/clang/Basic/DiagnosticSemaKinds.td | 8 +- contrib/llvm-project/clang/lib/AST/StmtPrinter.cpp | 2 +- contrib/llvm-project/clang/lib/CodeGen/CGStmt.cpp | 15 + .../clang/lib/CodeGen/CoverageMappingGen.cpp | 32 +- contrib/llvm-project/clang/lib/Sema/SemaInit.cpp | 8 +- .../Tooling/InterpolatingCompilationDatabase.cpp | 4 +- .../clang/lib/Tooling/Syntax/Tokens.cpp | 222 +++++-- contrib/llvm-project/libcxx/include/__config | 33 +- contrib/llvm-project/libcxx/include/atomic | 46 +- contrib/llvm-project/libcxx/include/stdatomic.h | 4 +- contrib/llvm-project/libcxx/include/version | 2 +- contrib/llvm-project/lld/COFF/Symbols.h | 5 +- contrib/llvm-project/lld/COFF/Writer.cpp | 2 +- contrib/llvm-project/lld/ELF/Arch/RISCV.cpp | 9 +- contrib/llvm-project/lld/MachO/InputFiles.cpp | 9 + .../llvm-project/lld/MachO/UnwindInfoSection.cpp | 45 +- .../llvm/include/llvm/ADT/GenericCycleImpl.h | 29 +- .../llvm/include/llvm/ADT/GenericCycleInfo.h | 19 +- .../llvm-project/llvm/include/llvm/Object/ELF.h | 2 +- .../llvm/lib/Analysis/ScalarEvolution.cpp | 7 +- .../llvm/lib/Analysis/ValueTracking.cpp | 13 +- .../llvm/lib/CodeGen/DwarfEHPrepare.cpp | 8 + .../llvm/lib/CodeGen/PrologEpilogInserter.cpp | 7 +- .../llvm/lib/Support/X86TargetParser.cpp | 10 +- .../lib/Target/Hexagon/HexagonVectorCombine.cpp | 3 + .../lib/Target/SPIRV/SPIRVDuplicatesTracker.cpp | 2 + contrib/llvm-project/llvm/lib/Target/X86/X86.td | 1 - .../llvm/lib/Transforms/Utils/LoopVersioning.cpp | 4 +- .../lib/Transforms/Vectorize/LoopVectorize.cpp | 12 +- .../llvm/lib/Transforms/Vectorize/VPlan.h | 8 +- .../llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp | 6 +- .../llvm/tools/llvm-objdump/ELFDump.cpp | 39 +- etc/mtree/BSD.debug.dist | 2 +- etc/mtree/BSD.usr.dist | 2 +- lib/clang/headers/Makefile | 2 +- lib/clang/include/VCSVersion.inc | 6 +- lib/clang/include/clang/Basic/Version.inc | 6 +- lib/clang/include/clang/Config/config.h | 2 +- lib/clang/include/lld/Common/Version.inc | 2 +- lib/clang/include/lldb/Version/Version.inc | 6 +- lib/clang/include/llvm/Config/config.h | 4 +- lib/clang/include/llvm/Config/llvm-config.h | 4 +- lib/clang/include/llvm/Support/VCSRevision.h | 2 +- lib/libc++/module.modulemap | 36 +- lib/libclang_rt/compiler-rt-vars.mk | 2 +- tools/build/mk/OptionalObsoleteFiles.inc | 644 ++++++++++----------- 47 files changed, 778 insertions(+), 562 deletions(-) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 686fe4142256..ce5c9c15dae0 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -52,7 +52,7 @@ # xargs -n1 | sort | uniq -d; # done -# 20230410: new clang import which bumps version from 14.0.5 to 15.0.0 +# 20230410: new clang import which bumps version from 14.0.5 to 15.0.3 OLD_FILES+=usr/lib/clang/14.0.5/include/cuda_wrappers/algorithm OLD_FILES+=usr/lib/clang/14.0.5/include/cuda_wrappers/complex OLD_FILES+=usr/lib/clang/14.0.5/include/cuda_wrappers/new @@ -363,7 +363,7 @@ OLD_FILES+=usr/lib/clang/14.0.5/share/msan_ignorelist.txt OLD_DIRS+=usr/lib/clang/14.0.5/share OLD_DIRS+=usr/lib/clang/14.0.5 -# 20230410: new libc++ import which bumps version from 14.0.5 to 15.0.0 +# 20230410: new libc++ import which bumps version from 14.0.5 to 15.0.3 OLD_FILES+=usr/include/c++/v1/__functional_base OLD_FILES+=usr/include/c++/v1/__libcpp_version OLD_FILES+=usr/include/c++/v1/__nullptr diff --git a/contrib/llvm-project/clang/include/clang/Basic/DiagnosticSemaKinds.td b/contrib/llvm-project/clang/include/clang/Basic/DiagnosticSemaKinds.td index 6ff5b8de57fd..cb460401eb47 100644 --- a/contrib/llvm-project/clang/include/clang/Basic/DiagnosticSemaKinds.td +++ b/contrib/llvm-project/clang/include/clang/Basic/DiagnosticSemaKinds.td @@ -419,7 +419,7 @@ def warn_implicit_function_decl : Warning< InGroup, DefaultIgnore; def ext_implicit_function_decl_c99 : ExtWarn< "call to undeclared function %0; ISO C99 and later do not support implicit " - "function declarations">, InGroup, DefaultError; + "function declarations">, InGroup; def note_function_suggestion : Note<"did you mean %0?">; def err_ellipsis_first_param : Error< @@ -705,7 +705,7 @@ def ext_implicit_lib_function_decl : ExtWarn< def ext_implicit_lib_function_decl_c99 : ExtWarn< "call to undeclared library function '%0' with type %1; ISO C99 and later " "do not support implicit function declarations">, - InGroup, DefaultError; + InGroup; def note_include_header_or_declare : Note< "include the header <%0> or explicitly provide a declaration for '%1'">; def note_previous_builtin_declaration : Note<"%0 is a builtin with type %1">; @@ -4359,7 +4359,7 @@ def err_ident_list_in_fn_declaration : Error< "a parameter list without types is only allowed in a function definition">; def ext_param_not_declared : ExtWarn< "parameter %0 was not declared, defaults to 'int'; ISO C99 and later do not " - "support implicit int">, InGroup, DefaultError; + "support implicit int">, InGroup; def err_param_default_argument : Error< "C does not support default arguments">; def err_param_default_argument_redefinition : Error< @@ -10029,7 +10029,7 @@ def warn_receiver_forward_class : Warning< def note_method_sent_forward_class : Note<"method %0 is used for the forward class">; def ext_missing_type_specifier : ExtWarn< "type specifier missing, defaults to 'int'; ISO C99 and later do not support " - "implicit int">, InGroup, DefaultError; + "implicit int">, InGroup; def err_missing_type_specifier : Error< "a type specifier is required for all declarations">; def err_decimal_unsupported : Error< diff --git a/contrib/llvm-project/clang/lib/AST/StmtPrinter.cpp b/contrib/llvm-project/clang/lib/AST/StmtPrinter.cpp index 8d778500d103..625048c69a86 100644 --- a/contrib/llvm-project/clang/lib/AST/StmtPrinter.cpp +++ b/contrib/llvm-project/clang/lib/AST/StmtPrinter.cpp @@ -1993,7 +1993,7 @@ void StmtPrinter::VisitUserDefinedLiteral(UserDefinedLiteral *Node) { cast(DRE->getDecl())->getTemplateSpecializationArgs(); assert(Args); - if (Args->size() != 1) { + if (Args->size() != 1 || Args->get(0).getKind() != TemplateArgument::Pack) { const TemplateParameterList *TPL = nullptr; if (!DRE->hadMultipleCandidates()) if (const auto *TD = dyn_cast(DRE->getDecl())) diff --git a/contrib/llvm-project/clang/lib/CodeGen/CGStmt.cpp b/contrib/llvm-project/clang/lib/CodeGen/CGStmt.cpp index 481438de0e53..9935fcc0d3ea 100644 --- a/contrib/llvm-project/clang/lib/CodeGen/CGStmt.cpp +++ b/contrib/llvm-project/clang/lib/CodeGen/CGStmt.cpp @@ -1509,6 +1509,21 @@ void CodeGenFunction::EmitCaseStmt(const CaseStmt &S, llvm::ConstantInt *CaseVal = Builder.getInt(S.getLHS()->EvaluateKnownConstInt(getContext())); + + // Emit debuginfo for the case value if it is an enum value. + const ConstantExpr *CE; + if (auto ICE = dyn_cast(S.getLHS())) + CE = dyn_cast(ICE->getSubExpr()); + else + CE = dyn_cast(S.getLHS()); + if (CE) { + if (auto DE = dyn_cast(CE->getSubExpr())) + if (CGDebugInfo *Dbg = getDebugInfo()) + if (CGM.getCodeGenOpts().hasReducedDebugInfo()) + Dbg->EmitGlobalVariable(DE->getDecl(), + APValue(llvm::APSInt(CaseVal->getValue()))); + } + if (SwitchLikelihood) SwitchLikelihood->push_back(Stmt::getLikelihood(Attrs)); diff --git a/contrib/llvm-project/clang/lib/CodeGen/CoverageMappingGen.cpp b/contrib/llvm-project/clang/lib/CodeGen/CoverageMappingGen.cpp index 0fe084b628da..836aabf80179 100644 --- a/contrib/llvm-project/clang/lib/CodeGen/CoverageMappingGen.cpp +++ b/contrib/llvm-project/clang/lib/CodeGen/CoverageMappingGen.cpp @@ -1377,19 +1377,23 @@ struct CounterCoverageMappingBuilder // Extend into the condition before we propagate through it below - this is // needed to handle macros that generate the "if" but not the condition. - extendRegion(S->getCond()); + if (!S->isConsteval()) + extendRegion(S->getCond()); Counter ParentCount = getRegion().getCounter(); Counter ThenCount = getRegionCounter(S); - // Emitting a counter for the condition makes it easier to interpret the - // counter for the body when looking at the coverage. - propagateCounts(ParentCount, S->getCond()); + if (!S->isConsteval()) { + // Emitting a counter for the condition makes it easier to interpret the + // counter for the body when looking at the coverage. + propagateCounts(ParentCount, S->getCond()); - // The 'then' count applies to the area immediately after the condition. - auto Gap = findGapAreaBetween(S->getRParenLoc(), getStart(S->getThen())); - if (Gap) - fillGapAreaWithCount(Gap->getBegin(), Gap->getEnd(), ThenCount); + // The 'then' count applies to the area immediately after the condition. + Optional Gap = + findGapAreaBetween(S->getRParenLoc(), getStart(S->getThen())); + if (Gap) + fillGapAreaWithCount(Gap->getBegin(), Gap->getEnd(), ThenCount); + } extendRegion(S->getThen()); Counter OutCount = propagateCounts(ThenCount, S->getThen()); @@ -1398,9 +1402,9 @@ struct CounterCoverageMappingBuilder if (const Stmt *Else = S->getElse()) { bool ThenHasTerminateStmt = HasTerminateStmt; HasTerminateStmt = false; - // The 'else' count applies to the area immediately after the 'then'. - Gap = findGapAreaBetween(getEnd(S->getThen()), getStart(Else)); + Optional Gap = + findGapAreaBetween(getEnd(S->getThen()), getStart(Else)); if (Gap) fillGapAreaWithCount(Gap->getBegin(), Gap->getEnd(), ElseCount); extendRegion(Else); @@ -1416,9 +1420,11 @@ struct CounterCoverageMappingBuilder GapRegionCounter = OutCount; } - // Create Branch Region around condition. - createBranchRegion(S->getCond(), ThenCount, - subtractCounters(ParentCount, ThenCount)); + if (!S->isConsteval()) { + // Create Branch Region around condition. + createBranchRegion(S->getCond(), ThenCount, + subtractCounters(ParentCount, ThenCount)); + } } void VisitCXXTryStmt(const CXXTryStmt *S) { diff --git a/contrib/llvm-project/clang/lib/Sema/SemaInit.cpp b/contrib/llvm-project/clang/lib/Sema/SemaInit.cpp index d3b454843234..bf7ca718a36b 100644 --- a/contrib/llvm-project/clang/lib/Sema/SemaInit.cpp +++ b/contrib/llvm-project/clang/lib/Sema/SemaInit.cpp @@ -695,10 +695,10 @@ void InitListChecker::FillInEmptyInitForField(unsigned Init, FieldDecl *Field, // member of reference type uninitialized, the program is // ill-formed. SemaRef.Diag(Loc, diag::err_init_reference_member_uninitialized) - << Field->getType() - << ILE->getSyntacticForm()->getSourceRange(); - SemaRef.Diag(Field->getLocation(), - diag::note_uninit_reference_member); + << Field->getType() + << (ILE->isSyntacticForm() ? ILE : ILE->getSyntacticForm()) + ->getSourceRange(); + SemaRef.Diag(Field->getLocation(), diag::note_uninit_reference_member); } hadError = true; return; diff --git a/contrib/llvm-project/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp b/contrib/llvm-project/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp index 0143b5f8df6b..655be20572b6 100644 --- a/contrib/llvm-project/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp +++ b/contrib/llvm-project/clang/lib/Tooling/InterpolatingCompilationDatabase.cpp @@ -165,8 +165,8 @@ struct TransferableCommand { const unsigned OldPos = Pos; std::unique_ptr Arg(OptTable.ParseOneArg( ArgList, Pos, - /* Include */ ClangCLMode ? CoreOption | CLOption : 0, - /* Exclude */ ClangCLMode ? 0 : CLOption)); + /* Include */ ClangCLMode ? CoreOption | CLOption | CLDXCOption : 0, + /* Exclude */ ClangCLMode ? 0 : CLOption | CLDXCOption)); if (!Arg) continue; diff --git a/contrib/llvm-project/clang/lib/Tooling/Syntax/Tokens.cpp b/contrib/llvm-project/clang/lib/Tooling/Syntax/Tokens.cpp index e2014f965c90..1fa73c667b7f 100644 --- a/contrib/llvm-project/clang/lib/Tooling/Syntax/Tokens.cpp +++ b/contrib/llvm-project/clang/lib/Tooling/Syntax/Tokens.cpp @@ -55,45 +55,140 @@ getTokensCovering(llvm::ArrayRef Toks, SourceRange R, return {Begin, End}; } -// Finds the smallest expansion range that contains expanded tokens First and -// Last, e.g.: +// Finds the range within FID corresponding to expanded tokens [First, Last]. +// Prev precedes First and Next follows Last, these must *not* be included. +// If no range satisfies the criteria, returns an invalid range. +// // #define ID(x) x // ID(ID(ID(a1) a2)) // ~~ -> a1 // ~~ -> a2 // ~~~~~~~~~ -> a1 a2 -SourceRange findCommonRangeForMacroArgs(const syntax::Token &First, - const syntax::Token &Last, - const SourceManager &SM) { - SourceRange Res; - auto FirstLoc = First.location(), LastLoc = Last.location(); - // Keep traversing up the spelling chain as longs as tokens are part of the - // same expansion. - while (!FirstLoc.isFileID() && !LastLoc.isFileID()) { - auto ExpInfoFirst = SM.getSLocEntry(SM.getFileID(FirstLoc)).getExpansion(); - auto ExpInfoLast = SM.getSLocEntry(SM.getFileID(LastLoc)).getExpansion(); - // Stop if expansions have diverged. - if (ExpInfoFirst.getExpansionLocStart() != - ExpInfoLast.getExpansionLocStart()) +SourceRange spelledForExpandedSlow(SourceLocation First, SourceLocation Last, + SourceLocation Prev, SourceLocation Next, + FileID TargetFile, + const SourceManager &SM) { + // There are two main parts to this algorithm: + // - identifying which spelled range covers the expanded tokens + // - validating that this range doesn't cover any extra tokens (First/Last) + // + // We do these in order. However as we transform the expanded range into the + // spelled one, we adjust First/Last so the validation remains simple. + + assert(SM.getSLocEntry(TargetFile).isFile()); + // In most cases, to select First and Last we must return their expansion + // range, i.e. the whole of any macros they are included in. + // + // When First and Last are part of the *same macro arg* of a macro written + // in TargetFile, we that slice of the arg, i.e. their spelling range. + // + // Unwrap such macro calls. If the target file has A(B(C)), the + // SourceLocation stack of a token inside C shows us the expansion of A first, + // then B, then any macros inside C's body, then C itself. + // (This is the reverse of the order the PP applies the expansions in). + while (First.isMacroID() && Last.isMacroID()) { + auto DecFirst = SM.getDecomposedLoc(First); + auto DecLast = SM.getDecomposedLoc(Last); + auto &ExpFirst = SM.getSLocEntry(DecFirst.first).getExpansion(); + auto &ExpLast = SM.getSLocEntry(DecLast.first).getExpansion(); + + if (!ExpFirst.isMacroArgExpansion() || !ExpLast.isMacroArgExpansion()) + break; + // Locations are in the same macro arg if they expand to the same place. + // (They may still have different FileIDs - an arg can have >1 chunks!) + if (ExpFirst.getExpansionLocStart() != ExpLast.getExpansionLocStart()) break; - // Do not continue into macro bodies. - if (!ExpInfoFirst.isMacroArgExpansion() || - !ExpInfoLast.isMacroArgExpansion()) + // Careful, given: + // #define HIDE ID(ID(a)) + // ID(ID(HIDE)) + // The token `a` is wrapped in 4 arg-expansions, we only want to unwrap 2. + // We distinguish them by whether the macro expands into the target file. + // Fortunately, the target file ones will always appear first. + auto &ExpMacro = + SM.getSLocEntry(SM.getFileID(ExpFirst.getExpansionLocStart())) + .getExpansion(); + if (ExpMacro.getExpansionLocStart().isMacroID()) break; - FirstLoc = SM.getImmediateSpellingLoc(FirstLoc); - LastLoc = SM.getImmediateSpellingLoc(LastLoc); - // Update the result afterwards, as we want the tokens that triggered the - // expansion. - Res = {FirstLoc, LastLoc}; + // Replace each endpoint with its spelling inside the macro arg. + // (This is getImmediateSpellingLoc without repeating lookups). + First = ExpFirst.getSpellingLoc().getLocWithOffset(DecFirst.second); + Last = ExpLast.getSpellingLoc().getLocWithOffset(DecLast.second); + + // Now: how do we adjust the previous/next bounds? Three cases: + // A) If they are also part of the same macro arg, we translate them too. + // This will ensure that we don't select any macros nested within the + // macro arg that cover extra tokens. Critical case: + // #define ID(X) X + // ID(prev target) // selecting 'target' succeeds + // #define LARGE ID(prev target) + // LARGE // selecting 'target' fails. + // B) They are not in the macro at all, then their expansion range is a + // sibling to it, and we can safely substitute that. + // #define PREV prev + // #define ID(X) X + // PREV ID(target) // selecting 'target' succeeds. + // #define LARGE PREV ID(target) + // LARGE // selecting 'target' fails. + // C) They are in a different arg of this macro, or the macro body. + // Now selecting the whole macro arg is fine, but the whole macro is not. + // Model this by setting using the edge of the macro call as the bound. + // #define ID2(X, Y) X Y + // ID2(prev, target) // selecting 'target' succeeds + // #define LARGE ID2(prev, target) + // LARGE // selecting 'target' fails + auto AdjustBound = [&](SourceLocation &Bound) { + if (Bound.isInvalid() || !Bound.isMacroID()) // Non-macro must be case B. + return; + auto DecBound = SM.getDecomposedLoc(Bound); + auto &ExpBound = SM.getSLocEntry(DecBound.first).getExpansion(); + if (ExpBound.isMacroArgExpansion() && + ExpBound.getExpansionLocStart() == ExpFirst.getExpansionLocStart()) { + // Case A: translate to (spelling) loc within the macro arg. + Bound = ExpBound.getSpellingLoc().getLocWithOffset(DecBound.second); + return; + } + while (Bound.isMacroID()) { + SourceRange Exp = SM.getImmediateExpansionRange(Bound).getAsRange(); + if (Exp.getBegin() == ExpMacro.getExpansionLocStart()) { + // Case B: bounds become the macro call itself. + Bound = (&Bound == &Prev) ? Exp.getBegin() : Exp.getEnd(); + return; + } + // Either case C, or expansion location will later find case B. + // We choose the upper bound for Prev and the lower one for Next: + // ID(prev) target ID(next) + // ^ ^ + // new-prev new-next + Bound = (&Bound == &Prev) ? Exp.getEnd() : Exp.getBegin(); + } + }; + AdjustBound(Prev); + AdjustBound(Next); } - // Normally mapping back to expansion location here only changes FileID, as - // we've already found some tokens expanded from the same macro argument, and - // they should map to a consecutive subset of spelled tokens. Unfortunately - // SourceManager::isBeforeInTranslationUnit discriminates sourcelocations - // based on their FileID in addition to offsets. So even though we are - // referring to same tokens, SourceManager might tell us that one is before - // the other if they've got different FileIDs. - return SM.getExpansionRange(CharSourceRange(Res, true)).getAsRange(); + + // In all remaining cases we need the full containing macros. + // If this overlaps Prev or Next, then no range is possible. + SourceRange Candidate = + SM.getExpansionRange(SourceRange(First, Last)).getAsRange(); + auto DecFirst = SM.getDecomposedExpansionLoc(Candidate.getBegin()); + auto DecLast = SM.getDecomposedLoc(Candidate.getEnd()); + // Can end up in the wrong file due to bad input or token-pasting shenanigans. + if (Candidate.isInvalid() || DecFirst.first != TargetFile || DecLast.first != TargetFile) + return SourceRange(); + // Check bounds, which may still be inside macros. + if (Prev.isValid()) { + auto Dec = SM.getDecomposedLoc(SM.getExpansionRange(Prev).getBegin()); + if (Dec.first != DecFirst.first || Dec.second >= DecFirst.second) + return SourceRange(); + } + if (Next.isValid()) { + auto Dec = SM.getDecomposedLoc(SM.getExpansionRange(Next).getEnd()); + if (Dec.first != DecLast.first || Dec.second <= DecLast.second) + return SourceRange(); + } + // Now we know that Candidate is a file range that covers [First, Last] + // without encroaching on {Prev, Next}. Ship it! + return Candidate; } } // namespace @@ -363,51 +458,50 @@ TokenBuffer::spelledForExpanded(llvm::ArrayRef Expanded) const { // of the range, bail out in that case. if (Expanded.empty()) return llvm::None; - - const syntax::Token *BeginSpelled; - const Mapping *BeginMapping; - std::tie(BeginSpelled, BeginMapping) = - spelledForExpandedToken(&Expanded.front()); - - const syntax::Token *LastSpelled; - const Mapping *LastMapping; - std::tie(LastSpelled, LastMapping) = - spelledForExpandedToken(&Expanded.back()); - - FileID FID = SourceMgr->getFileID(BeginSpelled->location()); + const syntax::Token *First = &Expanded.front(); + const syntax::Token *Last = &Expanded.back(); + const syntax::Token *FirstSpelled, *LastSpelled; + const TokenBuffer::Mapping *FirstMapping, *LastMapping; + std::tie(FirstSpelled, FirstMapping) = spelledForExpandedToken(First); + std::tie(LastSpelled, LastMapping) = spelledForExpandedToken(Last); + + FileID FID = SourceMgr->getFileID(FirstSpelled->location()); // FIXME: Handle multi-file changes by trying to map onto a common root. if (FID != SourceMgr->getFileID(LastSpelled->location())) return llvm::None; const MarkedFile &File = Files.find(FID)->second; - // If both tokens are coming from a macro argument expansion, try and map to - // smallest part of the macro argument. BeginMapping && LastMapping check is - // only for performance, they are a prerequisite for Expanded.front() and - // Expanded.back() being part of a macro arg expansion. - if (BeginMapping && LastMapping && - SourceMgr->isMacroArgExpansion(Expanded.front().location()) && - SourceMgr->isMacroArgExpansion(Expanded.back().location())) { - auto CommonRange = findCommonRangeForMacroArgs(Expanded.front(), - Expanded.back(), *SourceMgr); - // It might be the case that tokens are arguments of different macro calls, - // in that case we should continue with the logic below instead of returning - // an empty range. - if (CommonRange.isValid()) - return getTokensCovering(File.SpelledTokens, CommonRange, *SourceMgr); + // If the range is within one macro argument, the result may be only part of a + // Mapping. We must use the general (SourceManager-based) algorithm. + if (FirstMapping && FirstMapping == LastMapping && + SourceMgr->isMacroArgExpansion(First->location()) && + SourceMgr->isMacroArgExpansion(Last->location())) { + // We use excluded Prev/Next token for bounds checking. + SourceLocation Prev = (First == &ExpandedTokens.front()) + ? SourceLocation() + : (First - 1)->location(); + SourceLocation Next = (Last == &ExpandedTokens.back()) + ? SourceLocation() + : (Last + 1)->location(); + SourceRange Range = spelledForExpandedSlow( + First->location(), Last->location(), Prev, Next, FID, *SourceMgr); + if (Range.isInvalid()) + return llvm::None; + return getTokensCovering(File.SpelledTokens, Range, *SourceMgr); } + // Otherwise, use the fast version based on Mappings. // Do not allow changes that doesn't cover full expansion. - unsigned BeginExpanded = Expanded.begin() - ExpandedTokens.data(); - unsigned EndExpanded = Expanded.end() - ExpandedTokens.data(); - if (BeginMapping && BeginExpanded != BeginMapping->BeginExpanded) + unsigned FirstExpanded = Expanded.begin() - ExpandedTokens.data(); + unsigned LastExpanded = Expanded.end() - ExpandedTokens.data(); + if (FirstMapping && FirstExpanded != FirstMapping->BeginExpanded) return llvm::None; - if (LastMapping && LastMapping->EndExpanded != EndExpanded) + if (LastMapping && LastMapping->EndExpanded != LastExpanded) return llvm::None; - // All is good, return the result. return llvm::makeArrayRef( - BeginMapping ? File.SpelledTokens.data() + BeginMapping->BeginSpelled - : BeginSpelled, + FirstMapping ? File.SpelledTokens.data() + FirstMapping->BeginSpelled + : FirstSpelled, LastMapping ? File.SpelledTokens.data() + LastMapping->EndSpelled : LastSpelled + 1); } diff --git a/contrib/llvm-project/libcxx/include/__config b/contrib/llvm-project/libcxx/include/__config index 8c2f7614af53..589b5c3b2241 100644 --- a/contrib/llvm-project/libcxx/include/__config +++ b/contrib/llvm-project/libcxx/include/__config @@ -22,9 +22,21 @@ # pragma GCC system_header #endif +#if defined(__apple_build_version__) +# define _LIBCPP_COMPILER_CLANG_BASED +# define _LIBCPP_APPLE_CLANG_VER (__apple_build_version__ / 10000) +#elif defined(__clang__) +# define _LIBCPP_COMPILER_CLANG_BASED +# define _LIBCPP_CLANG_VER (__clang_major__ * 100 + __clang_minor__) +#elif defined(__GNUC__) +# define _LIBCPP_COMPILER_GCC +#elif defined(_MSC_VER) +# define _LIBCPP_COMPILER_MSVC +#endif + #ifdef __cplusplus -# define _LIBCPP_VERSION 15000 +# define _LIBCPP_VERSION 15003 # define _LIBCPP_CONCAT_IMPL(_X, _Y) _X##_Y # define _LIBCPP_CONCAT(_X, _Y) _LIBCPP_CONCAT_IMPL(_X, _Y) @@ -198,18 +210,6 @@ # define __has_include(...) 0 # endif -# if defined(__apple_build_version__) -# define _LIBCPP_COMPILER_CLANG_BASED -# define _LIBCPP_APPLE_CLANG_VER (__apple_build_version__ / 10000) -# elif defined(__clang__) -# define _LIBCPP_COMPILER_CLANG_BASED -# define _LIBCPP_CLANG_VER (__clang_major__ * 100 + __clang_minor__) -# elif defined(__GNUC__) -# define _LIBCPP_COMPILER_GCC -# elif defined(_MSC_VER) -# define _LIBCPP_COMPILER_MSVC -# endif - # if !defined(_LIBCPP_COMPILER_CLANG_BASED) && __cplusplus < 201103L # error "libc++ only supports C++03 with Clang-based compilers. Please enable C++11" # endif @@ -1101,6 +1101,13 @@ _LIBCPP_BEGIN_NAMESPACE_STD _LIBCPP_END_NAMESPACE_STD # define _LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION # endif // _LIBCPP_ENABLE_CXX17_REMOVED_FEATURES +// Leave the deprecation notices in by default, but don't remove unary_function and +// binary_function entirely just yet. That way, folks will have one release to act +// on the deprecation warnings. +# ifndef _LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION +# define _LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION +# endif + # if defined(_LIBCPP_ENABLE_CXX20_REMOVED_FEATURES) # define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS # define _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_VOID_SPECIALIZATION diff --git a/contrib/llvm-project/libcxx/include/atomic b/contrib/llvm-project/libcxx/include/atomic index 6cdc839c1715..28c86ce5daa2 100644 --- a/contrib/llvm-project/libcxx/include/atomic +++ b/contrib/llvm-project/libcxx/include/atomic @@ -1113,6 +1113,12 @@ _Tp kill_dependency(_Tp __y) _NOEXCEPT # define ATOMIC_POINTER_LOCK_FREE __GCC_ATOMIC_POINTER_LOCK_FREE #endif +template +struct __libcpp_is_always_lock_free { + // __atomic_always_lock_free is available in all Standard modes + static const bool __value = __atomic_always_lock_free(sizeof(_Tp), 0); +}; + #ifdef _LIBCPP_ATOMIC_ONLY_USE_BUILTINS template @@ -1404,42 +1410,8 @@ _Tp __cxx_atomic_fetch_xor(__cxx_atomic_lock_impl<_Tp>* __a, return __old; } -#ifdef __cpp_lib_atomic_is_always_lock_free - -template struct __cxx_is_always_lock_free { - enum { __value = __atomic_always_lock_free(sizeof(_Tp), 0) }; }; - -#else - -template struct __cxx_is_always_lock_free { enum { __value = false }; }; -// Implementations must match the C ATOMIC_*_LOCK_FREE macro values. -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_BOOL_LOCK_FREE }; }; -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_CHAR_LOCK_FREE }; }; -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_CHAR_LOCK_FREE }; }; -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_CHAR_LOCK_FREE }; }; -#ifndef _LIBCPP_HAS_NO_CHAR8_T -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_CHAR8_T_LOCK_FREE }; }; -#endif -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_CHAR16_T_LOCK_FREE }; }; -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_CHAR32_T_LOCK_FREE }; }; -#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_WCHAR_T_LOCK_FREE }; }; -#endif -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_SHORT_LOCK_FREE }; }; -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_SHORT_LOCK_FREE }; }; -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_INT_LOCK_FREE }; }; -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_INT_LOCK_FREE }; }; -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_LONG_LOCK_FREE }; }; -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_LONG_LOCK_FREE }; }; -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_LLONG_LOCK_FREE }; }; -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_LLONG_LOCK_FREE }; }; -template struct __cxx_is_always_lock_free<_Tp*> { enum { __value = 2 == ATOMIC_POINTER_LOCK_FREE }; }; -template<> struct __cxx_is_always_lock_free { enum { __value = 2 == ATOMIC_POINTER_LOCK_FREE }; }; - -#endif //__cpp_lib_atomic_is_always_lock_free - template ::__value, + typename _Base = typename conditional<__libcpp_is_always_lock_free<_Tp>::__value, __cxx_atomic_base_impl<_Tp>, __cxx_atomic_lock_impl<_Tp> >::type> #else @@ -1562,7 +1534,7 @@ struct __atomic_base // false mutable __cxx_atomic_impl<_Tp> __a_; #if defined(__cpp_lib_atomic_is_always_lock_free) - static _LIBCPP_CONSTEXPR bool is_always_lock_free = __atomic_always_lock_free(sizeof(__a_), 0); + static _LIBCPP_CONSTEXPR bool is_always_lock_free = __libcpp_is_always_lock_free<__cxx_atomic_impl<_Tp> >::__value; #endif _LIBCPP_INLINE_VISIBILITY @@ -2665,7 +2637,7 @@ typedef atomic atomic_uintmax_t; // atomic_*_lock_free : prefer the contention type most highly, then the largest lock-free type #ifdef __cpp_lib_atomic_is_always_lock_free -# define _LIBCPP_CONTENTION_LOCK_FREE __atomic_always_lock_free(sizeof(__cxx_contention_t), 0) +# define _LIBCPP_CONTENTION_LOCK_FREE ::std::__libcpp_is_always_lock_free<__cxx_contention_t>::__value #else # define _LIBCPP_CONTENTION_LOCK_FREE false #endif diff --git a/contrib/llvm-project/libcxx/include/stdatomic.h b/contrib/llvm-project/libcxx/include/stdatomic.h index d9550c44061c..ff2a5682f5bb 100644 --- a/contrib/llvm-project/libcxx/include/stdatomic.h +++ b/contrib/llvm-project/libcxx/include/stdatomic.h @@ -121,7 +121,7 @@ using std::atomic_signal_fence // see below # pragma GCC system_header #endif -#if _LIBCPP_STD_VER > 20 +#if defined(__cplusplus) && _LIBCPP_STD_VER > 20 #include #include @@ -230,6 +230,6 @@ using std::atomic_thread_fence _LIBCPP_USING_IF_EXISTS; # include_next # endif -#endif // _LIBCPP_STD_VER > 20 +#endif // defined(__cplusplus) && _LIBCPP_STD_VER > 20 #endif // _LIBCPP_STDATOMIC_H diff --git a/contrib/llvm-project/libcxx/include/version b/contrib/llvm-project/libcxx/include/version index 8ffb1747eb27..d0c6fe466e70 100644 --- a/contrib/llvm-project/libcxx/include/version +++ b/contrib/llvm-project/libcxx/include/version @@ -332,7 +332,7 @@ __cpp_lib_void_t 201411L # undef __cpp_lib_execution // # define __cpp_lib_execution 201902L # if !defined(_LIBCPP_AVAILABILITY_DISABLE_FTM___cpp_lib_format) && !defined(_LIBCPP_HAS_NO_INCOMPLETE_FORMAT) -# define __cpp_lib_format 202106L +// # define __cpp_lib_format 202106L # endif # define __cpp_lib_generic_unordered_lookup 201811L # define __cpp_lib_int_pow2 202002L diff --git a/contrib/llvm-project/lld/COFF/Symbols.h b/contrib/llvm-project/lld/COFF/Symbols.h index c8865d128fb8..a4c6f893f10c 100644 --- a/contrib/llvm-project/lld/COFF/Symbols.h +++ b/contrib/llvm-project/lld/COFF/Symbols.h @@ -106,7 +106,10 @@ protected: : symbolKind(k), isExternal(true), isCOMDAT(false), writtenToSymtab(false), pendingArchiveLoad(false), isGCRoot(false), isRuntimePseudoReloc(false), deferUndefined(false), canInline(true), - nameSize(n.size()), nameData(n.empty() ? nullptr : n.data()) {} + nameSize(n.size()), nameData(n.empty() ? nullptr : n.data()) { + assert((!n.empty() || k <= LastDefinedCOFFKind) && + "If the name is empty, the Symbol must be a DefinedCOFF."); + } const unsigned symbolKind : 8; unsigned isExternal : 1; diff --git a/contrib/llvm-project/lld/COFF/Writer.cpp b/contrib/llvm-project/lld/COFF/Writer.cpp index df60c9032b2d..f39697d5d381 100644 --- a/contrib/llvm-project/lld/COFF/Writer.cpp +++ b/contrib/llvm-project/lld/COFF/Writer.cpp @@ -395,7 +395,7 @@ getThunk(DenseMap &lastThunks, Defined *target, uint64_t p, default: llvm_unreachable("Unexpected architecture"); } - Defined *d = make("", c); + Defined *d = make("range_extension_thunk", c); lastThunk = d; return {d, true}; } diff --git a/contrib/llvm-project/lld/ELF/Arch/RISCV.cpp b/contrib/llvm-project/lld/ELF/Arch/RISCV.cpp index 8fca1a686a79..56a516f9cdc1 100644 --- a/contrib/llvm-project/lld/ELF/Arch/RISCV.cpp +++ b/contrib/llvm-project/lld/ELF/Arch/RISCV.cpp @@ -750,12 +750,13 @@ void elf::riscvFinalizeRelax(int passes) { p += size; // For R_RISCV_ALIGN, we will place `offset` in a location (among NOPs) - // to satisfy the alignment requirement. If `remove` is a multiple of 4, - // it is as if we have skipped some NOPs. Otherwise we are in the middle - // of a 4-byte NOP, and we need to rewrite the NOP sequence. + // to satisfy the alignment requirement. If both `remove` and r.addend + // are multiples of 4, it is as if we have skipped some NOPs. Otherwise + // we are in the middle of a 4-byte NOP, and we need to rewrite the NOP + // sequence. int64_t skip = 0; if (r.type == R_RISCV_ALIGN) { - if (remove % 4 != 0) { + if (remove % 4 || r.addend % 4) { skip = r.addend - remove; int64_t j = 0; for (; j + 4 <= skip; j += 4) diff --git a/contrib/llvm-project/lld/MachO/InputFiles.cpp b/contrib/llvm-project/lld/MachO/InputFiles.cpp index fd0e4ec8834c..87034d41e87d 100644 --- a/contrib/llvm-project/lld/MachO/InputFiles.cpp +++ b/contrib/llvm-project/lld/MachO/InputFiles.cpp @@ -1587,6 +1587,15 @@ void ObjFile::registerEhFrames(Section &ehFrameSection) { funcSym->unwindEntry = isec; ehRelocator.commit(); } + + // __eh_frame is marked as S_ATTR_LIVE_SUPPORT in input files, because FDEs + // are normally required to be kept alive if they reference a live symbol. + // However, we've explicitly created a dependency from a symbol to its FDE, so + // dead-stripping will just work as usual, and S_ATTR_LIVE_SUPPORT will only + // serve to incorrectly prevent us from dead-stripping duplicate FDEs for a + // live symbol (e.g. if there were multiple weak copies). Remove this flag to + // let dead-stripping proceed correctly. + ehFrameSection.flags &= ~S_ATTR_LIVE_SUPPORT; } std::string ObjFile::sourceFile() const { diff --git a/contrib/llvm-project/lld/MachO/UnwindInfoSection.cpp b/contrib/llvm-project/lld/MachO/UnwindInfoSection.cpp index c3f563d5572b..ca6cbdfbb8bb 100644 --- a/contrib/llvm-project/lld/MachO/UnwindInfoSection.cpp +++ b/contrib/llvm-project/lld/MachO/UnwindInfoSection.cpp @@ -196,13 +196,13 @@ UnwindInfoSection::UnwindInfoSection() // Record function symbols that may need entries emitted in __unwind_info, which // stores unwind data for address ranges. // -// Note that if several adjacent functions have the same unwind encoding, LSDA, -// and personality function, they share one unwind entry. For this to work, -// functions without unwind info need explicit "no unwind info" unwind entries -// -- else the unwinder would think they have the unwind info of the closest -// function with unwind info right before in the image. Thus, we add function -// symbols for each unique address regardless of whether they have associated -// unwind info. +// Note that if several adjacent functions have the same unwind encoding and +// personality function and no LSDA, they share one unwind entry. For this to +// work, functions without unwind info need explicit "no unwind info" unwind +// entries -- else the unwinder would think they have the unwind info of the +// closest function with unwind info right before in the image. Thus, we add +// function symbols for each unique address regardless of whether they have +// associated unwind info. void UnwindInfoSection::addSymbol(const Defined *d) { if (d->unwindEntry) allEntriesAreOmitted = false; @@ -427,9 +427,9 @@ void UnwindInfoSectionImpl::finalize() { // assigned, so we can relocate the __LD,__compact_unwind entries // into a temporary buffer. Relocation is necessary in order to sort // the CU entries by function address. Sorting is necessary so that - // we can fold adjacent CU entries with identical - // encoding+personality+lsda. Folding is necessary because it reduces - // the number of CU entries by as much as 3 orders of magnitude! + // we can fold adjacent CU entries with identical encoding+personality + // and without any LSDA. Folding is necessary because it reduces the + // number of CU entries by as much as 3 orders of magnitude! cuEntries.resize(symbols.size()); // The "map" part of the symbols MapVector was only needed for deduplication // in addSymbol(). Now that we are done adding, move the contents to a plain @@ -445,7 +445,7 @@ void UnwindInfoSectionImpl::finalize() { return cuEntries[a].functionAddress < cuEntries[b].functionAddress; }); - // Fold adjacent entries with matching encoding+personality+lsda + // Fold adjacent entries with matching encoding+personality and without LSDA // We use three iterators on the same cuIndices to fold in-situ: // (1) `foldBegin` is the first of a potential sequence of matching entries // (2) `foldEnd` is the first non-matching entry after `foldBegin`. @@ -455,11 +455,32 @@ void UnwindInfoSectionImpl::finalize() { auto foldWrite = cuIndices.begin(); for (auto foldBegin = cuIndices.begin(); foldBegin < cuIndices.end();) { auto foldEnd = foldBegin; + // Common LSDA encodings (e.g. for C++ and Objective-C) contain offsets from + // a base address. The base address is normally not contained directly in + // the LSDA, and in that case, the personality function treats the starting + // address of the function (which is computed by the unwinder) as the base + // address and interprets the LSDA accordingly. The unwinder computes the + // starting address of a function as the address associated with its CU + // entry. For this reason, we cannot fold adjacent entries if they have an + // LSDA, because folding would make the unwinder compute the wrong starting + // address for the functions with the folded entries, which in turn would + // cause the personality function to misinterpret the LSDA for those + // functions. In the very rare case where the base address is encoded + // directly in the LSDA, two functions at different addresses would + // necessarily have different LSDAs, so their CU entries would not have been + // folded anyway. while (++foldEnd < cuIndices.end() && cuEntries[*foldBegin].encoding == cuEntries[*foldEnd].encoding && + !cuEntries[*foldBegin].lsda && !cuEntries[*foldEnd].lsda && + // If we've gotten to this point, we don't have an LSDA, which should + // also imply that we don't have a personality function, since in all + // likelihood a personality function needs the LSDA to do anything + // useful. It can be technically valid to have a personality function + // and no LSDA though (e.g. the C++ personality __gxx_personality_v0 + // is just a no-op without LSDA), so we still check for personality + // function equivalence to handle that case. cuEntries[*foldBegin].personality == cuEntries[*foldEnd].personality && - cuEntries[*foldBegin].lsda == cuEntries[*foldEnd].lsda && canFoldEncoding(cuEntries[*foldEnd].encoding)) ; *foldWrite++ = *foldBegin; diff --git a/contrib/llvm-project/llvm/include/llvm/ADT/GenericCycleImpl.h b/contrib/llvm-project/llvm/include/llvm/ADT/GenericCycleImpl.h index ea2847f8c8ee..07ac1768ea27 100644 --- a/contrib/llvm-project/llvm/include/llvm/ADT/GenericCycleImpl.h +++ b/contrib/llvm-project/llvm/include/llvm/ADT/GenericCycleImpl.h @@ -144,8 +144,12 @@ private: }; template -auto GenericCycleInfo::getTopLevelParentCycle( - const BlockT *Block) const -> CycleT * { +auto GenericCycleInfo::getTopLevelParentCycle(BlockT *Block) + -> CycleT * { + auto Cycle = BlockMapTopLevel.find(Block); + if (Cycle != BlockMapTopLevel.end()) + return Cycle->second; + auto MapIt = BlockMap.find(Block); if (MapIt == BlockMap.end()) return nullptr; @@ -153,12 +157,15 @@ auto GenericCycleInfo::getTopLevelParentCycle( auto *C = MapIt->second; while (C->ParentCycle) C = C->ParentCycle; + BlockMapTopLevel.try_emplace(Block, C); return C; } template -void GenericCycleInfo::moveToNewParent(CycleT *NewParent, - CycleT *Child) { +void GenericCycleInfo::moveTopLevelCycleToNewParent(CycleT *NewParent, + CycleT *Child) { + assert((!Child->ParentCycle && !NewParent->ParentCycle) && + "NewParent and Child must be both top level cycle!\n"); auto &CurrentContainer = Child->ParentCycle ? Child->ParentCycle->Children : TopLevelCycles; auto Pos = llvm::find_if(CurrentContainer, [=](const auto &Ptr) -> bool { @@ -169,6 +176,13 @@ void GenericCycleInfo::moveToNewParent(CycleT *NewParent, *Pos = std::move(CurrentContainer.back()); CurrentContainer.pop_back(); Child->ParentCycle = NewParent; + + NewParent->Blocks.insert(NewParent->Blocks.end(), Child->block_begin(), + Child->block_end()); + + for (auto &It : BlockMapTopLevel) + if (It.second == Child) + It.second = NewParent; } /// \brief Main function of the cycle info computations. @@ -240,10 +254,7 @@ void GenericCycleInfoCompute::run(BlockT *EntryBlock) { << "discovered child cycle " << Info.Context.print(BlockParent->getHeader()) << "\n"); // Make BlockParent the child of NewCycle. - Info.moveToNewParent(NewCycle.get(), BlockParent); - NewCycle->Blocks.insert(NewCycle->Blocks.end(), - BlockParent->block_begin(), - BlockParent->block_end()); + Info.moveTopLevelCycleToNewParent(NewCycle.get(), BlockParent); for (auto *ChildEntry : BlockParent->entries()) ProcessPredecessors(ChildEntry); @@ -257,6 +268,7 @@ void GenericCycleInfoCompute::run(BlockT *EntryBlock) { assert(!is_contained(NewCycle->Blocks, Block)); NewCycle->Blocks.push_back(Block); ProcessPredecessors(Block); + Info.BlockMapTopLevel.try_emplace(Block, NewCycle.get()); } } while (!Worklist.empty()); @@ -336,6 +348,7 @@ void GenericCycleInfoCompute::dfs(BlockT *EntryBlock) { template void GenericCycleInfo::clear() { TopLevelCycles.clear(); BlockMap.clear(); + BlockMapTopLevel.clear(); } /// \brief Compute the cycle info for a function. diff --git a/contrib/llvm-project/llvm/include/llvm/ADT/GenericCycleInfo.h b/contrib/llvm-project/llvm/include/llvm/ADT/GenericCycleInfo.h index 970664b85715..5f851b795cbc 100644 --- a/contrib/llvm-project/llvm/include/llvm/ADT/GenericCycleInfo.h +++ b/contrib/llvm-project/llvm/include/llvm/ADT/GenericCycleInfo.h @@ -232,15 +232,24 @@ public: private: ContextT Context; - /// Map basic blocks to their inner-most containing loop. + /// Map basic blocks to their inner-most containing cycle. DenseMap BlockMap; + /// Map basic blocks to their top level containing cycle. + DenseMap BlockMapTopLevel; + /// Outermost cycles discovered by any DFS. /// /// Note: The implementation treats the nullptr as the parent of /// every top-level cycle. See \ref contains for an example. std::vector> TopLevelCycles; + /// Move \p Child to \p NewParent by manipulating Children vectors. + /// + /// Note: This is an incomplete operation that does not update the depth of + /// the subtree. + void moveTopLevelCycleToNewParent(CycleT *NewParent, CycleT *Child); + public: GenericCycleInfo() = default; GenericCycleInfo(GenericCycleInfo &&) = default; @@ -254,13 +263,7 @@ public: CycleT *getCycle(const BlockT *Block) const; unsigned getCycleDepth(const BlockT *Block) const; - CycleT *getTopLevelParentCycle(const BlockT *Block) const; - - /// Move \p Child to \p NewParent by manipulating Children vectors. - /// - /// Note: This is an incomplete operation that does not update the - /// list of blocks in the new parent or the depth of the subtree. - void moveToNewParent(CycleT *NewParent, CycleT *Child); + CycleT *getTopLevelParentCycle(BlockT *Block); /// Methods for debug and self-test. //@{ diff --git a/contrib/llvm-project/llvm/include/llvm/Object/ELF.h b/contrib/llvm-project/llvm/include/llvm/Object/ELF.h index 794d29fd9913..5eb43777a951 100644 --- a/contrib/llvm-project/llvm/include/llvm/Object/ELF.h +++ b/contrib/llvm-project/llvm/include/llvm/Object/ELF.h @@ -1028,7 +1028,7 @@ ELFFile::getVersionDependencies(const Elf_Shdr &Sec, VN.Offset = VerneedBuf - Start; if (Verneed->vn_file < StrTab.size()) - VN.File = std::string(StrTab.drop_front(Verneed->vn_file)); + VN.File = std::string(StrTab.data() + Verneed->vn_file); else *** 1304 LINES SKIPPED *** From nobody Sun Apr 9 21:35:21 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvlkz0BKwz44JXf; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvlky2pYRz4MDG; Sun, 9 Apr 2023 21:35:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076122; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mvbiJTs7BDbNGP/KF0GvvMZyghid4AnTJsFBSWqBs4A=; b=Wj28eQpo1OIkXSw8cdnWo6AnVYkEdwKKiXcZfiNRpzlHtzFNWBixtYg04FkXOZ678UuC/3 GJVKDB0iJtizhXTaFXeDOwAY9yppEiLAfF5IQ/ypGWwPvsL/9PhgWOAnq2CVJb1LtNnoqH aWz9xOl/jzRZMwTc5YyOK6WyjQ15k1YeisE1yZ9n09Ascftk1pBFnSzBxB65+l5mFC+FBx +xlGdsnAIYiVXlhjjdrt5sY3vOQgcqtLOzYeCJOnboizqXLTFOSasXMam9YZceiyY1SLv/ fnsbY8RIPB7IK7XFtBjZi/siwL5kFdbYPgqJRZ3ktNj9pJdU2P4otbhyggk1Gw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076122; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mvbiJTs7BDbNGP/KF0GvvMZyghid4AnTJsFBSWqBs4A=; b=XJSK6RAmTpigvtRbolHfOflxEOW7+xW/9eqlb8rO6SAQRyyYCYnvf8Cr259hjoD5MuequC ZI0tSluL5T3WC4UG7M3ThlRCmJh9oX7m92pRDaXnb5a8np2hYo9gxe7XOF0UYHpu7zVZ1+ 2R6eNCnTrUolpJhpMvSqdS4TPmZkE76WomUrG8lRufWQjtx8SrsUbqQWopZQ5lhQc1Gu/u tKZ7dz1TvwdUtkZEnGqUJYUett7SYzN089MSwcdf31SbAVMLWBgOLbCcse7WltKlNoRN8x GGwuLwW8hAb0Tsuk1jIkwplyZpfFvMqTv6N4FAOoiSi3utWPZFmumx1IEiBV7g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076122; a=rsa-sha256; cv=none; b=pci1TyZF41DYI2dMLGkwYBe7rBecrIxDB4CLpkaz/x3C8onE5baA9OGezQLHfxhIktVS3u mvO/UjOUVnlvg3ZI5FwebtKs3sfedzUPU8pU7+7qC0ADSt6YbdhfQMWqvOt2PQHksGeDiG uPNWCsBTmRxoqqwwyUouaiyRTCmE4ySXf50SqRjrW13zWwIri4gM5a4Zh5CnPxPQgK+Cu4 c4ZQ9sukAnzs/GUe9zNcMo2YM2SqoRAnvZdcy4dGk9p1FV5w6ylpRVT5yTwjLe5lnG5E7Q uFN52nRSDmRo8TxnwTWm8tUaegnR3fNUTOIoHMD7GxLkLtkfG+otQricGac80w== 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 4Pvlkx3LjLzPhF; Sun, 9 Apr 2023 21:35:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZLcS081622; Sun, 9 Apr 2023 21:35:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZLrV081621; Sun, 9 Apr 2023 21:35:21 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:21 GMT Message-Id: <202304092135.339LZLrV081621@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: f1ad517df71c - stable/13 - Merge llvm-project release/15.x llvmorg-15.0.6-0-g088f33605d8a List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: f1ad517df71ca639c58897254a216e36e999ac06 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=f1ad517df71ca639c58897254a216e36e999ac06 commit f1ad517df71ca639c58897254a216e36e999ac06 Author: Dimitry Andric AuthorDate: 2022-12-04 22:09:55 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:54:51 +0000 Merge llvm-project release/15.x llvmorg-15.0.6-0-g088f33605d8a This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-15.0.6-0-g088f33605d8a. PR: 265425 MFC after: 2 weeks (cherry picked from commit f3fd488f1e19a3d09c4bdcece893901de4f49cdd) --- ObsoleteFiles.inc | 4 +- .../llvm-project/clang/lib/CodeGen/TargetInfo.cpp | 8 +- .../clang/lib/Driver/ToolChains/Gnu.cpp | 40 +- contrib/llvm-project/clang/lib/Sema/SemaLookup.cpp | 8 +- contrib/llvm-project/clang/lib/Sema/SemaType.cpp | 3 + .../clang/lib/StaticAnalyzer/Core/ExprEngine.cpp | 6 + .../sanitizer_common_interceptors.inc | 2 +- contrib/llvm-project/libcxx/include/__config | 2 +- .../libcxx/include/__functional/function.h | 14 +- contrib/llvm-project/lld/ELF/Driver.cpp | 9 +- contrib/llvm-project/lld/ELF/InputFiles.cpp | 2 +- .../llvm-project/lld/MachO/UnwindInfoSection.cpp | 35 +- contrib/llvm-project/lld/MachO/UnwindInfoSection.h | 2 +- contrib/llvm-project/lld/MachO/Writer.cpp | 2 +- contrib/llvm-project/lldb/bindings/interfaces.swig | 3 - .../lldb/bindings/python/python-typemaps.swig | 2 +- .../llvm-project/lldb/include/lldb/API/SBType.h | 2 + .../lldb/include/lldb/Symbol/CompilerType.h | 24 +- .../lldb/include/lldb/Symbol/TypeSystem.h | 14 +- contrib/llvm-project/lldb/source/API/SBType.cpp | 12 +- .../Plugins/TypeSystem/Clang/TypeSystemClang.cpp | 81 ++- .../Plugins/TypeSystem/Clang/TypeSystemClang.h | 19 +- .../lldb/source/Symbol/CompilerType.cpp | 18 +- .../llvm-project/lldb/source/Symbol/TypeSystem.cpp | 12 +- .../llvm-project/llvm/lib/Analysis/VectorUtils.cpp | 7 +- .../CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 1 + .../llvm/lib/CodeGen/TypePromotion.cpp | 8 +- contrib/llvm-project/llvm/lib/IR/AutoUpgrade.cpp | 2 +- .../llvm-project/llvm/lib/Support/Unix/Signals.inc | 4 - .../lib/Target/AArch64/AArch64ISelLowering.cpp | 67 ++- .../llvm/lib/Target/AArch64/AArch64ISelLowering.h | 2 +- .../llvm/lib/Target/AMDGPU/SIISelLowering.cpp | 2 + .../llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp | 2 +- .../llvm/lib/Target/Sparc/SparcCallingConv.td | 10 +- .../llvm/lib/Target/Sparc/SparcISelLowering.cpp | 61 +- .../llvm/lib/Target/Sparc/SparcISelLowering.h | 5 + .../llvm/lib/Transforms/IPO/GlobalOpt.cpp | 2 +- .../Transforms/InstCombine/InstCombineCalls.cpp | 4 + .../llvm/lib/Transforms/Scalar/SROA.cpp | 19 +- .../llvm/lib/Transforms/Utils/VNCoercion.cpp | 4 +- etc/mtree/BSD.debug.dist | 2 +- etc/mtree/BSD.usr.dist | 2 +- lib/clang/headers/Makefile | 2 +- lib/clang/include/VCSVersion.inc | 6 +- lib/clang/include/clang/Basic/Version.inc | 6 +- lib/clang/include/clang/Config/config.h | 2 +- lib/clang/include/lld/Common/Version.inc | 2 +- lib/clang/include/lldb/Version/Version.inc | 6 +- lib/clang/include/llvm/Config/config.h | 4 +- lib/clang/include/llvm/Config/llvm-config.h | 4 +- lib/clang/include/llvm/Support/VCSRevision.h | 2 +- lib/libclang_rt/compiler-rt-vars.mk | 2 +- tools/build/mk/OptionalObsoleteFiles.inc | 644 ++++++++++----------- 53 files changed, 694 insertions(+), 514 deletions(-) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index ce5c9c15dae0..6f3d0f297515 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -52,7 +52,7 @@ # xargs -n1 | sort | uniq -d; # done -# 20230410: new clang import which bumps version from 14.0.5 to 15.0.3 +# 20230410: new clang import which bumps version from 14.0.5 to 15.0.6 OLD_FILES+=usr/lib/clang/14.0.5/include/cuda_wrappers/algorithm OLD_FILES+=usr/lib/clang/14.0.5/include/cuda_wrappers/complex OLD_FILES+=usr/lib/clang/14.0.5/include/cuda_wrappers/new @@ -363,7 +363,7 @@ OLD_FILES+=usr/lib/clang/14.0.5/share/msan_ignorelist.txt OLD_DIRS+=usr/lib/clang/14.0.5/share OLD_DIRS+=usr/lib/clang/14.0.5 -# 20230410: new libc++ import which bumps version from 14.0.5 to 15.0.3 +# 20230410: new libc++ import which bumps version from 14.0.5 to 15.0.6 OLD_FILES+=usr/include/c++/v1/__functional_base OLD_FILES+=usr/include/c++/v1/__libcpp_version OLD_FILES+=usr/include/c++/v1/__nullptr diff --git a/contrib/llvm-project/clang/lib/CodeGen/TargetInfo.cpp b/contrib/llvm-project/clang/lib/CodeGen/TargetInfo.cpp index 36e10e4df4c1..44743fa0206f 100644 --- a/contrib/llvm-project/clang/lib/CodeGen/TargetInfo.cpp +++ b/contrib/llvm-project/clang/lib/CodeGen/TargetInfo.cpp @@ -7047,10 +7047,10 @@ Address ARMABIInfo::EmitVAArg(CodeGenFunction &CGF, Address VAListAddr, // Empty records are ignored for parameter passing purposes. if (isEmptyRecord(getContext(), Ty, true)) { - Address Addr = Address(CGF.Builder.CreateLoad(VAListAddr), - getVAListElementType(CGF), SlotSize); - Addr = CGF.Builder.CreateElementBitCast(Addr, CGF.ConvertTypeForMem(Ty)); - return Addr; + VAListAddr = CGF.Builder.CreateElementBitCast(VAListAddr, CGF.Int8PtrTy); + auto *Load = CGF.Builder.CreateLoad(VAListAddr); + Address Addr = Address(Load, CGF.Int8Ty, SlotSize); + return CGF.Builder.CreateElementBitCast(Addr, CGF.ConvertTypeForMem(Ty)); } CharUnits TySize = getContext().getTypeSizeInChars(Ty); diff --git a/contrib/llvm-project/clang/lib/Driver/ToolChains/Gnu.cpp b/contrib/llvm-project/clang/lib/Driver/ToolChains/Gnu.cpp index f203cae1d329..665cdc3132fb 100644 --- a/contrib/llvm-project/clang/lib/Driver/ToolChains/Gnu.cpp +++ b/contrib/llvm-project/clang/lib/Driver/ToolChains/Gnu.cpp @@ -2139,31 +2139,21 @@ void Generic_GCC::GCCInstallationDetector::AddDefaultGCCPrefixes( // and gcc-toolsets. if (SysRoot.empty() && TargetTriple.getOS() == llvm::Triple::Linux && D.getVFS().exists("/opt/rh")) { - // Find the directory in /opt/rh/ starting with gcc-toolset-* or - // devtoolset-* with the highest version number and add that - // one to our prefixes. - std::string ChosenToolsetDir; - unsigned ChosenToolsetVersion = 0; - std::error_code EC; - for (llvm::vfs::directory_iterator LI = D.getVFS().dir_begin("/opt/rh", EC), - LE; - !EC && LI != LE; LI = LI.increment(EC)) { - StringRef ToolsetDir = llvm::sys::path::filename(LI->path()); - unsigned ToolsetVersion; - if ((!ToolsetDir.startswith("gcc-toolset-") && - !ToolsetDir.startswith("devtoolset-")) || - ToolsetDir.substr(ToolsetDir.rfind('-') + 1) - .getAsInteger(10, ToolsetVersion)) - continue; - - if (ToolsetVersion > ChosenToolsetVersion) { - ChosenToolsetVersion = ToolsetVersion; - ChosenToolsetDir = "/opt/rh/" + ToolsetDir.str(); - } - } - - if (ChosenToolsetVersion > 0) - Prefixes.push_back(ChosenToolsetDir + "/root/usr"); + // TODO: We may want to remove this, since the functionality + // can be achieved using config files. + Prefixes.push_back("/opt/rh/gcc-toolset-12/root/usr"); + Prefixes.push_back("/opt/rh/gcc-toolset-11/root/usr"); + Prefixes.push_back("/opt/rh/gcc-toolset-10/root/usr"); + Prefixes.push_back("/opt/rh/devtoolset-12/root/usr"); + Prefixes.push_back("/opt/rh/devtoolset-11/root/usr"); + Prefixes.push_back("/opt/rh/devtoolset-10/root/usr"); + Prefixes.push_back("/opt/rh/devtoolset-9/root/usr"); + Prefixes.push_back("/opt/rh/devtoolset-8/root/usr"); + Prefixes.push_back("/opt/rh/devtoolset-7/root/usr"); + Prefixes.push_back("/opt/rh/devtoolset-6/root/usr"); + Prefixes.push_back("/opt/rh/devtoolset-4/root/usr"); + Prefixes.push_back("/opt/rh/devtoolset-3/root/usr"); + Prefixes.push_back("/opt/rh/devtoolset-2/root/usr"); } // Fall back to /usr which is used by most non-Solaris systems. diff --git a/contrib/llvm-project/clang/lib/Sema/SemaLookup.cpp b/contrib/llvm-project/clang/lib/Sema/SemaLookup.cpp index 68158ec977cf..5d0d87fd2422 100644 --- a/contrib/llvm-project/clang/lib/Sema/SemaLookup.cpp +++ b/contrib/llvm-project/clang/lib/Sema/SemaLookup.cpp @@ -939,11 +939,9 @@ bool Sema::LookupBuiltin(LookupResult &R) { // If this is a builtin on this (or all) targets, create the decl. if (unsigned BuiltinID = II->getBuiltinID()) { - // In C++, C2x, and OpenCL (spec v1.2 s6.9.f), we don't have any - // predefined library functions like 'malloc'. Instead, we'll just - // error. - if ((getLangOpts().CPlusPlus || getLangOpts().OpenCL || - getLangOpts().C2x) && + // In C++ and OpenCL (spec v1.2 s6.9.f), we don't have any predefined + // library functions like 'malloc'. Instead, we'll just error. + if ((getLangOpts().CPlusPlus || getLangOpts().OpenCL) && Context.BuiltinInfo.isPredefinedLibFunction(BuiltinID)) return false; diff --git a/contrib/llvm-project/clang/lib/Sema/SemaType.cpp b/contrib/llvm-project/clang/lib/Sema/SemaType.cpp index 3ab5d26a9a75..edcac4d2ee9a 100644 --- a/contrib/llvm-project/clang/lib/Sema/SemaType.cpp +++ b/contrib/llvm-project/clang/lib/Sema/SemaType.cpp @@ -6443,6 +6443,9 @@ GetTypeSourceInfoForDeclarator(TypeProcessingState &State, CurrTL = TL.getNextTypeLoc().getUnqualifiedLoc(); } + while (BTFTagAttributedTypeLoc TL = CurrTL.getAs()) + CurrTL = TL.getNextTypeLoc().getUnqualifiedLoc(); + while (DependentAddressSpaceTypeLoc TL = CurrTL.getAs()) { fillDependentAddressSpaceTypeLoc(TL, D.getTypeObject(i).getAttrs()); diff --git a/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp b/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp index 19149d079822..ab65612bce90 100644 --- a/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp +++ b/contrib/llvm-project/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp @@ -2839,6 +2839,12 @@ void ExprEngine::VisitCommonDeclRefExpr(const Expr *Ex, const NamedDecl *D, return; } + if (const auto *TPO = dyn_cast(D)) { + // FIXME: We should meaningfully implement this. + (void)TPO; + return; + } + llvm_unreachable("Support for this Decl not implemented."); } diff --git a/contrib/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc b/contrib/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc index 9af296b1853a..b29665a63390 100644 --- a/contrib/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc +++ b/contrib/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc @@ -6703,7 +6703,7 @@ INTERCEPTOR(int, sem_init, __sanitizer_sem_t *s, int pshared, unsigned value) { COMMON_INTERCEPTOR_ENTER(ctx, sem_init, s, pshared, value); // Workaround a bug in glibc's "old" semaphore implementation by // zero-initializing the sem_t contents. This has to be done here because - // interceptors bind to the lowest symbols version by default, hitting the + // interceptors bind to the lowest version before glibc 2.36, hitting the // buggy code path while the non-sanitized build of the same code works fine. REAL(memset)(s, 0, sizeof(*s)); int res = REAL(sem_init)(s, pshared, value); diff --git a/contrib/llvm-project/libcxx/include/__config b/contrib/llvm-project/libcxx/include/__config index 589b5c3b2241..5f62b974170f 100644 --- a/contrib/llvm-project/libcxx/include/__config +++ b/contrib/llvm-project/libcxx/include/__config @@ -36,7 +36,7 @@ #ifdef __cplusplus -# define _LIBCPP_VERSION 15003 +# define _LIBCPP_VERSION 15006 # define _LIBCPP_CONCAT_IMPL(_X, _Y) _X##_Y # define _LIBCPP_CONCAT(_X, _Y) _LIBCPP_CONCAT_IMPL(_X, _Y) diff --git a/contrib/llvm-project/libcxx/include/__functional/function.h b/contrib/llvm-project/libcxx/include/__functional/function.h index db3af6e24101..55b607f3f804 100644 --- a/contrib/llvm-project/libcxx/include/__functional/function.h +++ b/contrib/llvm-project/libcxx/include/__functional/function.h @@ -883,7 +883,7 @@ template class __policy_func<_Rp(_ArgTypes...)> #endif // _LIBCPP_NO_RTTI }; -#if defined(_LIBCPP_HAS_BLOCKS_RUNTIME) && !defined(_LIBCPP_HAS_OBJC_ARC) +#if defined(_LIBCPP_HAS_BLOCKS_RUNTIME) extern "C" void *_Block_copy(const void *); extern "C" void _Block_release(const void *); @@ -898,14 +898,22 @@ class __func<_Rp1(^)(_ArgTypes1...), _Alloc, _Rp(_ArgTypes...)> public: _LIBCPP_INLINE_VISIBILITY explicit __func(__block_type const& __f) +#ifdef _LIBCPP_HAS_OBJC_ARC + : __f_(__f) +#else : __f_(reinterpret_cast<__block_type>(__f ? _Block_copy(__f) : nullptr)) +#endif { } // [TODO] add && to save on a retain _LIBCPP_INLINE_VISIBILITY explicit __func(__block_type __f, const _Alloc& /* unused */) +#ifdef _LIBCPP_HAS_OBJC_ARC + : __f_(__f) +#else : __f_(reinterpret_cast<__block_type>(__f ? _Block_copy(__f) : nullptr)) +#endif { } virtual __base<_Rp(_ArgTypes...)>* __clone() const { @@ -921,8 +929,10 @@ public: } virtual void destroy() _NOEXCEPT { +#ifndef _LIBCPP_HAS_OBJC_ARC if (__f_) _Block_release(__f_); +#endif __f_ = 0; } @@ -950,7 +960,7 @@ public: #endif // _LIBCPP_NO_RTTI }; -#endif // _LIBCPP_HAS_EXTENSION_BLOCKS && !_LIBCPP_HAS_OBJC_ARC +#endif // _LIBCPP_HAS_EXTENSION_BLOCKS } // namespace __function diff --git a/contrib/llvm-project/lld/ELF/Driver.cpp b/contrib/llvm-project/lld/ELF/Driver.cpp index 296fb4220012..58d863776430 100644 --- a/contrib/llvm-project/lld/ELF/Driver.cpp +++ b/contrib/llvm-project/lld/ELF/Driver.cpp @@ -1330,12 +1330,15 @@ static void readConfigs(opt::InputArgList &args) { parseClangOption(std::string("-") + arg->getValue(), arg->getSpelling()); // GCC collect2 passes -plugin-opt=path/to/lto-wrapper with an absolute or - // relative path. Just ignore. If not ended with "lto-wrapper", consider it an + // relative path. Just ignore. If not ended with "lto-wrapper" (or + // "lto-wrapper.exe" for GCC cross-compiled for Windows), consider it an // unsupported LLVMgold.so option and error. - for (opt::Arg *arg : args.filtered(OPT_plugin_opt_eq)) - if (!StringRef(arg->getValue()).endswith("lto-wrapper")) + for (opt::Arg *arg : args.filtered(OPT_plugin_opt_eq)) { + StringRef v(arg->getValue()); + if (!v.endswith("lto-wrapper") && !v.endswith("lto-wrapper.exe")) error(arg->getSpelling() + ": unknown plugin option '" + arg->getValue() + "'"); + } config->passPlugins = args::getStrings(args, OPT_load_pass_plugins); diff --git a/contrib/llvm-project/lld/ELF/InputFiles.cpp b/contrib/llvm-project/lld/ELF/InputFiles.cpp index 927dc272b532..473809b05e9c 100644 --- a/contrib/llvm-project/lld/ELF/InputFiles.cpp +++ b/contrib/llvm-project/lld/ELF/InputFiles.cpp @@ -1157,7 +1157,7 @@ template void ObjFile::postParse() { continue; } - if (binding == STB_WEAK) + if (sym.binding == STB_WEAK || binding == STB_WEAK) continue; std::lock_guard lock(mu); ctx->duplicates.push_back({&sym, this, sec, eSym.st_value}); diff --git a/contrib/llvm-project/lld/MachO/UnwindInfoSection.cpp b/contrib/llvm-project/lld/MachO/UnwindInfoSection.cpp index ca6cbdfbb8bb..8f267251b7c0 100644 --- a/contrib/llvm-project/lld/MachO/UnwindInfoSection.cpp +++ b/contrib/llvm-project/lld/MachO/UnwindInfoSection.cpp @@ -158,7 +158,7 @@ class UnwindInfoSectionImpl final : public UnwindInfoSection { public: UnwindInfoSectionImpl() : cuOffsets(target->wordSize) {} uint64_t getSize() const override { return unwindInfoSize; } - void prepareRelocations() override; + void prepare() override; void finalize() override; void writeTo(uint8_t *buf) const override; @@ -166,6 +166,7 @@ private: void prepareRelocations(ConcatInputSection *); void relocateCompactUnwind(std::vector &); void encodePersonalities(); + Symbol *canonicalizePersonality(Symbol *); uint64_t unwindInfoSize = 0; std::vector symbolsVec; @@ -218,14 +219,24 @@ void UnwindInfoSection::addSymbol(const Defined *d) { } } -void UnwindInfoSectionImpl::prepareRelocations() { +void UnwindInfoSectionImpl::prepare() { // This iteration needs to be deterministic, since prepareRelocations may add // entries to the GOT. Hence the use of a MapVector for // UnwindInfoSection::symbols. for (const Defined *d : make_second_range(symbols)) - if (d->unwindEntry && - d->unwindEntry->getName() == section_names::compactUnwind) - prepareRelocations(d->unwindEntry); + if (d->unwindEntry) { + if (d->unwindEntry->getName() == section_names::compactUnwind) { + prepareRelocations(d->unwindEntry); + } else { + // We don't have to add entries to the GOT here because FDEs have + // explicit GOT relocations, so Writer::scanRelocations() will add those + // GOT entries. However, we still need to canonicalize the personality + // pointers (like prepareRelocations() does for CU entries) in order + // to avoid overflowing the 3-personality limit. + FDE &fde = cast(d->getFile())->fdes[d->unwindEntry]; + fde.personality = canonicalizePersonality(fde.personality); + } + } } // Compact unwind relocations have different semantics, so we handle them in a @@ -279,6 +290,7 @@ void UnwindInfoSectionImpl::prepareRelocations(ConcatInputSection *isec) { continue; } + // Similar to canonicalizePersonality(), but we also register a GOT entry. if (auto *defined = dyn_cast(s)) { // Check if we have created a synthetic symbol at the same address. Symbol *&personality = @@ -291,6 +303,7 @@ void UnwindInfoSectionImpl::prepareRelocations(ConcatInputSection *isec) { } continue; } + assert(isa(s)); in.got->addEntry(s); continue; @@ -320,6 +333,18 @@ void UnwindInfoSectionImpl::prepareRelocations(ConcatInputSection *isec) { } } +Symbol *UnwindInfoSectionImpl::canonicalizePersonality(Symbol *personality) { + if (auto *defined = dyn_cast_or_null(personality)) { + // Check if we have created a synthetic symbol at the same address. + Symbol *&synth = personalityTable[{defined->isec, defined->value}]; + if (synth == nullptr) + synth = defined; + else if (synth != defined) + return synth; + } + return personality; +} + // We need to apply the relocations to the pre-link compact unwind section // before converting it to post-link form. There should only be absolute // relocations here: since we are not emitting the pre-link CU section, there diff --git a/contrib/llvm-project/lld/MachO/UnwindInfoSection.h b/contrib/llvm-project/lld/MachO/UnwindInfoSection.h index c6b334731c75..f2bc3213a127 100644 --- a/contrib/llvm-project/lld/MachO/UnwindInfoSection.h +++ b/contrib/llvm-project/lld/MachO/UnwindInfoSection.h @@ -24,7 +24,7 @@ public: // section entirely. bool isNeeded() const override { return !allEntriesAreOmitted; } void addSymbol(const Defined *); - virtual void prepareRelocations() = 0; + virtual void prepare() = 0; protected: UnwindInfoSection(); diff --git a/contrib/llvm-project/lld/MachO/Writer.cpp b/contrib/llvm-project/lld/MachO/Writer.cpp index 3c44a60f4be2..ce9672dd0b4f 100644 --- a/contrib/llvm-project/lld/MachO/Writer.cpp +++ b/contrib/llvm-project/lld/MachO/Writer.cpp @@ -675,7 +675,7 @@ void Writer::scanRelocations() { } } - in.unwindInfo->prepareRelocations(); + in.unwindInfo->prepare(); } void Writer::scanSymbols() { diff --git a/contrib/llvm-project/lldb/bindings/interfaces.swig b/contrib/llvm-project/lldb/bindings/interfaces.swig index c9a6d0f06056..021c7683d170 100644 --- a/contrib/llvm-project/lldb/bindings/interfaces.swig +++ b/contrib/llvm-project/lldb/bindings/interfaces.swig @@ -1,8 +1,5 @@ /* Various liblldb typedefs that SWIG needs to know about. */ #define __extension__ /* Undefine GCC keyword to make Swig happy when processing glibc's stdint.h. */ -/* The ISO C99 standard specifies that in C++ implementations limit macros such - as INT32_MAX should only be defined if __STDC_LIMIT_MACROS is. */ -#define __STDC_LIMIT_MACROS %include "stdint.i" %include "lldb/lldb-defines.h" diff --git a/contrib/llvm-project/lldb/bindings/python/python-typemaps.swig b/contrib/llvm-project/lldb/bindings/python/python-typemaps.swig index bf3de66b91bf..d45431c771ca 100644 --- a/contrib/llvm-project/lldb/bindings/python/python-typemaps.swig +++ b/contrib/llvm-project/lldb/bindings/python/python-typemaps.swig @@ -435,7 +435,7 @@ template <> bool SetNumberFromPyObject(double &number, PyObject *obj) { %typemap(out) lldb::FileSP { $result = nullptr; - lldb::FileSP &sp = $1; + const lldb::FileSP &sp = $1; if (sp) { PythonFile pyfile = unwrapOrSetPythonException(PythonFile::FromFile(*sp)); if (!pyfile.IsValid()) diff --git a/contrib/llvm-project/lldb/include/lldb/API/SBType.h b/contrib/llvm-project/lldb/include/lldb/API/SBType.h index 244d328b51f4..aa45aeeec476 100644 --- a/contrib/llvm-project/lldb/include/lldb/API/SBType.h +++ b/contrib/llvm-project/lldb/include/lldb/API/SBType.h @@ -182,6 +182,8 @@ public: lldb::SBType GetTemplateArgumentType(uint32_t idx); + /// Return the TemplateArgumentKind of the template argument at index idx. + /// Variadic argument packs are automatically expanded. lldb::TemplateArgumentKind GetTemplateArgumentKind(uint32_t idx); lldb::SBType GetFunctionReturnType(); diff --git a/contrib/llvm-project/lldb/include/lldb/Symbol/CompilerType.h b/contrib/llvm-project/lldb/include/lldb/Symbol/CompilerType.h index 0ad05a27570e..aefd19d0a859 100644 --- a/contrib/llvm-project/lldb/include/lldb/Symbol/CompilerType.h +++ b/contrib/llvm-project/lldb/include/lldb/Symbol/CompilerType.h @@ -338,14 +338,28 @@ public: GetIndexOfChildMemberWithName(const char *name, bool omit_empty_base_classes, std::vector &child_indexes) const; - size_t GetNumTemplateArguments() const; - - lldb::TemplateArgumentKind GetTemplateArgumentKind(size_t idx) const; - CompilerType GetTypeTemplateArgument(size_t idx) const; + /// Return the number of template arguments the type has. + /// If expand_pack is true, then variadic argument packs are automatically + /// expanded to their supplied arguments. If it is false an argument pack + /// will only count as 1 argument. + size_t GetNumTemplateArguments(bool expand_pack = false) const; + + // Return the TemplateArgumentKind of the template argument at index idx. + // If expand_pack is true, then variadic argument packs are automatically + // expanded to their supplied arguments. With expand_pack set to false, an + // arguement pack will count as 1 argument and return a type of Pack. + lldb::TemplateArgumentKind + GetTemplateArgumentKind(size_t idx, bool expand_pack = false) const; + CompilerType GetTypeTemplateArgument(size_t idx, + bool expand_pack = false) const; /// Returns the value of the template argument and its type. + /// If expand_pack is true, then variadic argument packs are automatically + /// expanded to their supplied arguments. With expand_pack set to false, an + /// arguement pack will count as 1 argument and it is invalid to call this + /// method on the pack argument. llvm::Optional - GetIntegralTemplateArgument(size_t idx) const; + GetIntegralTemplateArgument(size_t idx, bool expand_pack = false) const; CompilerType GetTypeForFormatters() const; diff --git a/contrib/llvm-project/lldb/include/lldb/Symbol/TypeSystem.h b/contrib/llvm-project/lldb/include/lldb/Symbol/TypeSystem.h index be5783596897..769449a4933b 100644 --- a/contrib/llvm-project/lldb/include/lldb/Symbol/TypeSystem.h +++ b/contrib/llvm-project/lldb/include/lldb/Symbol/TypeSystem.h @@ -346,14 +346,18 @@ public: const char *name, bool omit_empty_base_classes, std::vector &child_indexes) = 0; - virtual size_t GetNumTemplateArguments(lldb::opaque_compiler_type_t type); + virtual size_t GetNumTemplateArguments(lldb::opaque_compiler_type_t type, + bool expand_pack); virtual lldb::TemplateArgumentKind - GetTemplateArgumentKind(lldb::opaque_compiler_type_t type, size_t idx); - virtual CompilerType GetTypeTemplateArgument(lldb::opaque_compiler_type_t type, - size_t idx); + GetTemplateArgumentKind(lldb::opaque_compiler_type_t type, size_t idx, + bool expand_pack); + virtual CompilerType + GetTypeTemplateArgument(lldb::opaque_compiler_type_t type, size_t idx, + bool expand_pack); virtual llvm::Optional - GetIntegralTemplateArgument(lldb::opaque_compiler_type_t type, size_t idx); + GetIntegralTemplateArgument(lldb::opaque_compiler_type_t type, size_t idx, + bool expand_pack); // Dumping types diff --git a/contrib/llvm-project/lldb/source/API/SBType.cpp b/contrib/llvm-project/lldb/source/API/SBType.cpp index 533930c0544b..adc60a084367 100644 --- a/contrib/llvm-project/lldb/source/API/SBType.cpp +++ b/contrib/llvm-project/lldb/source/API/SBType.cpp @@ -542,7 +542,8 @@ uint32_t SBType::GetNumberOfTemplateArguments() { LLDB_INSTRUMENT_VA(this); if (IsValid()) - return m_opaque_sp->GetCompilerType(false).GetNumTemplateArguments(); + return m_opaque_sp->GetCompilerType(false).GetNumTemplateArguments( + /*expand_pack=*/true); return 0; } @@ -553,13 +554,15 @@ lldb::SBType SBType::GetTemplateArgumentType(uint32_t idx) { return SBType(); CompilerType type; + const bool expand_pack = true; switch(GetTemplateArgumentKind(idx)) { case eTemplateArgumentKindType: - type = m_opaque_sp->GetCompilerType(false).GetTypeTemplateArgument(idx); + type = m_opaque_sp->GetCompilerType(false).GetTypeTemplateArgument( + idx, expand_pack); break; case eTemplateArgumentKindIntegral: type = m_opaque_sp->GetCompilerType(false) - .GetIntegralTemplateArgument(idx) + .GetIntegralTemplateArgument(idx, expand_pack) ->type; break; default: @@ -574,7 +577,8 @@ lldb::TemplateArgumentKind SBType::GetTemplateArgumentKind(uint32_t idx) { LLDB_INSTRUMENT_VA(this, idx); if (IsValid()) - return m_opaque_sp->GetCompilerType(false).GetTemplateArgumentKind(idx); + return m_opaque_sp->GetCompilerType(false).GetTemplateArgumentKind( + idx, /*expand_pack=*/true); return eTemplateArgumentKindNull; } diff --git a/contrib/llvm-project/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp b/contrib/llvm-project/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp index 5f5649a32e19..b47d86d76337 100644 --- a/contrib/llvm-project/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp +++ b/contrib/llvm-project/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp @@ -7096,7 +7096,8 @@ TypeSystemClang::GetIndexOfChildWithName(lldb::opaque_compiler_type_t type, } size_t -TypeSystemClang::GetNumTemplateArguments(lldb::opaque_compiler_type_t type) { +TypeSystemClang::GetNumTemplateArguments(lldb::opaque_compiler_type_t type, + bool expand_pack) { if (!type) return 0; @@ -7111,8 +7112,17 @@ TypeSystemClang::GetNumTemplateArguments(lldb::opaque_compiler_type_t type) { const clang::ClassTemplateSpecializationDecl *template_decl = llvm::dyn_cast( cxx_record_decl); - if (template_decl) - return template_decl->getTemplateArgs().size(); + if (template_decl) { + const auto &template_arg_list = template_decl->getTemplateArgs(); + size_t num_args = template_arg_list.size(); + assert(num_args && "template specialization without any args"); + if (expand_pack && num_args) { + const auto &pack = template_arg_list[num_args - 1]; + if (pack.getKind() == clang::TemplateArgument::Pack) + num_args += pack.pack_size() - 1; + } + return num_args; + } } } break; @@ -7149,15 +7159,51 @@ TypeSystemClang::GetAsTemplateSpecialization( } } +const TemplateArgument * +GetNthTemplateArgument(const clang::ClassTemplateSpecializationDecl *decl, + size_t idx, bool expand_pack) { + const auto &args = decl->getTemplateArgs(); + const size_t args_size = args.size(); + + assert(args_size && "template specialization without any args"); + if (!args_size) + return nullptr; + + const size_t last_idx = args_size - 1; + + // We're asked for a template argument that can't be a parameter pack, so + // return it without worrying about 'expand_pack'. + if (idx < last_idx) + return &args[idx]; + + // We're asked for the last template argument but we don't want/need to + // expand it. + if (!expand_pack || args[last_idx].getKind() != clang::TemplateArgument::Pack) + return idx >= args.size() ? nullptr : &args[idx]; + + // Index into the expanded pack. + // Note that 'idx' counts from the beginning of all template arguments + // (including the ones preceding the parameter pack). + const auto &pack = args[last_idx]; + const size_t pack_idx = idx - last_idx; + const size_t pack_size = pack.pack_size(); + assert(pack_idx < pack_size && "parameter pack index out-of-bounds"); + return &pack.pack_elements()[pack_idx]; +} + lldb::TemplateArgumentKind TypeSystemClang::GetTemplateArgumentKind(lldb::opaque_compiler_type_t type, - size_t arg_idx) { + size_t arg_idx, bool expand_pack) { const clang::ClassTemplateSpecializationDecl *template_decl = GetAsTemplateSpecialization(type); - if (! template_decl || arg_idx >= template_decl->getTemplateArgs().size()) + if (!template_decl) + return eTemplateArgumentKindNull; + + const auto *arg = GetNthTemplateArgument(template_decl, arg_idx, expand_pack); + if (!arg) return eTemplateArgumentKindNull; - switch (template_decl->getTemplateArgs()[arg_idx].getKind()) { + switch (arg->getKind()) { case clang::TemplateArgument::Null: return eTemplateArgumentKindNull; @@ -7190,35 +7236,32 @@ TypeSystemClang::GetTemplateArgumentKind(lldb::opaque_compiler_type_t type, CompilerType TypeSystemClang::GetTypeTemplateArgument(lldb::opaque_compiler_type_t type, - size_t idx) { + size_t idx, bool expand_pack) { const clang::ClassTemplateSpecializationDecl *template_decl = GetAsTemplateSpecialization(type); - if (!template_decl || idx >= template_decl->getTemplateArgs().size()) + if (!template_decl) return CompilerType(); - const clang::TemplateArgument &template_arg = - template_decl->getTemplateArgs()[idx]; - if (template_arg.getKind() != clang::TemplateArgument::Type) + const auto *arg = GetNthTemplateArgument(template_decl, idx, expand_pack); + if (!arg || arg->getKind() != clang::TemplateArgument::Type) return CompilerType(); - return GetType(template_arg.getAsType()); + return GetType(arg->getAsType()); } Optional TypeSystemClang::GetIntegralTemplateArgument(lldb::opaque_compiler_type_t type, - size_t idx) { + size_t idx, bool expand_pack) { const clang::ClassTemplateSpecializationDecl *template_decl = GetAsTemplateSpecialization(type); - if (! template_decl || idx >= template_decl->getTemplateArgs().size()) + if (!template_decl) return llvm::None; - const clang::TemplateArgument &template_arg = - template_decl->getTemplateArgs()[idx]; - if (template_arg.getKind() != clang::TemplateArgument::Integral) + const auto *arg = GetNthTemplateArgument(template_decl, idx, expand_pack); + if (!arg || arg->getKind() != clang::TemplateArgument::Integral) return llvm::None; - return { - {template_arg.getAsIntegral(), GetType(template_arg.getIntegralType())}}; + return {{arg->getAsIntegral(), GetType(arg->getIntegralType())}}; } CompilerType TypeSystemClang::GetTypeForFormatters(void *type) { diff --git a/contrib/llvm-project/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h b/contrib/llvm-project/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h index 4883f510eb31..6ecbfdd4d1a5 100644 --- a/contrib/llvm-project/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h +++ b/contrib/llvm-project/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h @@ -91,7 +91,7 @@ public: void SetOwningModule(OptionalClangModuleID id); /// \} }; - + /// A TypeSystem implementation based on Clang. /// /// This class uses a single clang::ASTContext as the backend for storing @@ -334,7 +334,7 @@ public: llvm::SmallVector names; llvm::SmallVector args; - + const char * pack_name = nullptr; std::unique_ptr packed_args; }; @@ -539,7 +539,7 @@ public: #ifndef NDEBUG bool Verify(lldb::opaque_compiler_type_t type) override; #endif - + bool IsArrayType(lldb::opaque_compiler_type_t type, CompilerType *element_type, uint64_t *size, bool *is_incomplete) override; @@ -812,16 +812,17 @@ public: const char *name, bool omit_empty_base_classes, std::vector &child_indexes) override; - size_t GetNumTemplateArguments(lldb::opaque_compiler_type_t type) override; + size_t GetNumTemplateArguments(lldb::opaque_compiler_type_t type, + bool expand_pack) override; lldb::TemplateArgumentKind - GetTemplateArgumentKind(lldb::opaque_compiler_type_t type, - size_t idx) override; + GetTemplateArgumentKind(lldb::opaque_compiler_type_t type, size_t idx, + bool expand_pack) override; CompilerType GetTypeTemplateArgument(lldb::opaque_compiler_type_t type, - size_t idx) override; + size_t idx, bool expand_pack) override; llvm::Optional - GetIntegralTemplateArgument(lldb::opaque_compiler_type_t type, - size_t idx) override; + GetIntegralTemplateArgument(lldb::opaque_compiler_type_t type, size_t idx, + bool expand_pack) override; CompilerType GetTypeForFormatters(void *type) override; diff --git a/contrib/llvm-project/lldb/source/Symbol/CompilerType.cpp b/contrib/llvm-project/lldb/source/Symbol/CompilerType.cpp index ac98352c235e..bef456583687 100644 --- a/contrib/llvm-project/lldb/source/Symbol/CompilerType.cpp +++ b/contrib/llvm-project/lldb/source/Symbol/CompilerType.cpp @@ -659,30 +659,32 @@ size_t CompilerType::GetIndexOfChildMemberWithName( return 0; } -size_t CompilerType::GetNumTemplateArguments() const { +size_t CompilerType::GetNumTemplateArguments(bool expand_pack) const { if (IsValid()) { - return m_type_system->GetNumTemplateArguments(m_type); + return m_type_system->GetNumTemplateArguments(m_type, expand_pack); } return 0; } -TemplateArgumentKind CompilerType::GetTemplateArgumentKind(size_t idx) const { +TemplateArgumentKind +CompilerType::GetTemplateArgumentKind(size_t idx, bool expand_pack) const { if (IsValid()) - return m_type_system->GetTemplateArgumentKind(m_type, idx); + return m_type_system->GetTemplateArgumentKind(m_type, idx, expand_pack); return eTemplateArgumentKindNull; } -CompilerType CompilerType::GetTypeTemplateArgument(size_t idx) const { +CompilerType CompilerType::GetTypeTemplateArgument(size_t idx, + bool expand_pack) const { if (IsValid()) { - return m_type_system->GetTypeTemplateArgument(m_type, idx); + return m_type_system->GetTypeTemplateArgument(m_type, idx, expand_pack); } return CompilerType(); } llvm::Optional -CompilerType::GetIntegralTemplateArgument(size_t idx) const { +CompilerType::GetIntegralTemplateArgument(size_t idx, bool expand_pack) const { if (IsValid()) - return m_type_system->GetIntegralTemplateArgument(m_type, idx); + return m_type_system->GetIntegralTemplateArgument(m_type, idx, expand_pack); return llvm::None; } diff --git a/contrib/llvm-project/lldb/source/Symbol/TypeSystem.cpp b/contrib/llvm-project/lldb/source/Symbol/TypeSystem.cpp index 3092dc0bf0a4..412373533aab 100644 --- a/contrib/llvm-project/lldb/source/Symbol/TypeSystem.cpp +++ b/contrib/llvm-project/lldb/source/Symbol/TypeSystem.cpp @@ -118,23 +118,25 @@ CompilerType TypeSystem::GetTypeForFormatters(void *type) { return CompilerType(this, type); } -size_t TypeSystem::GetNumTemplateArguments(lldb::opaque_compiler_type_t type) { +size_t TypeSystem::GetNumTemplateArguments(lldb::opaque_compiler_type_t type, + bool expand_pack) { return 0; } TemplateArgumentKind -TypeSystem::GetTemplateArgumentKind(opaque_compiler_type_t type, size_t idx) { +TypeSystem::GetTemplateArgumentKind(opaque_compiler_type_t type, size_t idx, + bool expand_pack) { return eTemplateArgumentKindNull; } CompilerType TypeSystem::GetTypeTemplateArgument(opaque_compiler_type_t type, - size_t idx) { + size_t idx, bool expand_pack) { return CompilerType(); } llvm::Optional -TypeSystem::GetIntegralTemplateArgument(opaque_compiler_type_t type, - size_t idx) { +TypeSystem::GetIntegralTemplateArgument(opaque_compiler_type_t type, size_t idx, + bool expand_pack) { return llvm::None; } diff --git a/contrib/llvm-project/llvm/lib/Analysis/VectorUtils.cpp b/contrib/llvm-project/llvm/lib/Analysis/VectorUtils.cpp index c4795a80ead2..bc20f33f174c 100644 --- a/contrib/llvm-project/llvm/lib/Analysis/VectorUtils.cpp +++ b/contrib/llvm-project/llvm/lib/Analysis/VectorUtils.cpp @@ -1110,6 +1110,12 @@ void InterleavedAccessInfo::collectConstStrideAccesses( continue; Type *ElementTy = getLoadStoreType(&I); + // Currently, codegen doesn't support cases where the type size doesn't + // match the alloc size. Skip them for now. + uint64_t Size = DL.getTypeAllocSize(ElementTy); + if (Size * 8 != DL.getTypeSizeInBits(ElementTy)) + continue; + // We don't check wrapping here because we don't know yet if Ptr will be // part of a full group or a group with gaps. Checking wrapping for all // pointers (even those that end up in groups with no gaps) will be overly @@ -1121,7 +1127,6 @@ void InterleavedAccessInfo::collectConstStrideAccesses( /*Assume=*/true, /*ShouldCheckWrap=*/false); const SCEV *Scev = replaceSymbolicStrideSCEV(PSE, Strides, Ptr); - uint64_t Size = DL.getTypeAllocSize(ElementTy); AccessStrideInfo[&I] = StrideDescriptor(Stride, Scev, Size, getLoadStoreAlignment(&I)); } diff --git a/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp index 35650b9bd00e..ecdaef0442da 100644 --- a/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp +++ b/contrib/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp @@ -9693,6 +9693,7 @@ TargetLowering::LowerCallTo(TargetLowering::CallLoweringInfo &CLI) const { Entry.Alignment = Alignment; CLI.getArgs().insert(CLI.getArgs().begin(), Entry); CLI.NumFixedArgs += 1; + CLI.getArgs()[0].IndirectType = CLI.RetTy; CLI.RetTy = Type::getVoidTy(CLI.RetTy->getContext()); // sret demotion isn't compatible with tail-calls, since the sret argument diff --git a/contrib/llvm-project/llvm/lib/CodeGen/TypePromotion.cpp b/contrib/llvm-project/llvm/lib/CodeGen/TypePromotion.cpp index 8dc8d381ad16..a63118067139 100644 --- a/contrib/llvm-project/llvm/lib/CodeGen/TypePromotion.cpp +++ b/contrib/llvm-project/llvm/lib/CodeGen/TypePromotion.cpp @@ -569,7 +569,8 @@ void IRPromoter::TruncateSinks() { void IRPromoter::Cleanup() { LLVM_DEBUG(dbgs() << "IR Promotion: Cleanup..\n"); // Some zexts will now have become redundant, along with their trunc - // operands, so remove them + // operands, so remove them. + // Some zexts need to be replaced with truncate if src bitwidth is larger. for (auto *V : Visited) { if (!isa(V)) continue; @@ -584,6 +585,11 @@ void IRPromoter::Cleanup() { << "\n"); ReplaceAllUsersOfWith(ZExt, Src); continue; + } else if (ZExt->getSrcTy()->getScalarSizeInBits() > PromotedWidth) { + IRBuilder<> Builder{ZExt}; + Value *Trunc = Builder.CreateTrunc(Src, ZExt->getDestTy()); + ReplaceAllUsersOfWith(ZExt, Trunc); + continue; } // We've inserted a trunc for a zext sink, but we already know that the diff --git a/contrib/llvm-project/llvm/lib/IR/AutoUpgrade.cpp b/contrib/llvm-project/llvm/lib/IR/AutoUpgrade.cpp index 75594f90c926..b9962da1d302 100644 --- a/contrib/llvm-project/llvm/lib/IR/AutoUpgrade.cpp +++ b/contrib/llvm-project/llvm/lib/IR/AutoUpgrade.cpp @@ -1040,7 +1040,7 @@ static bool UpgradeIntrinsicFunction1(Function *F, Function *&NewFn) { Name, F->getParent()); // The new function may also need remangling. - if (auto Result = llvm::Intrinsic::remangleIntrinsicFunction(F)) + if (auto Result = llvm::Intrinsic::remangleIntrinsicFunction(NewFn)) NewFn = *Result; return true; } diff --git a/contrib/llvm-project/llvm/lib/Support/Unix/Signals.inc b/contrib/llvm-project/llvm/lib/Support/Unix/Signals.inc index bf145bffe8bf..23ac012b9e00 100644 --- a/contrib/llvm-project/llvm/lib/Support/Unix/Signals.inc +++ b/contrib/llvm-project/llvm/lib/Support/Unix/Signals.inc @@ -432,10 +432,6 @@ void llvm::sys::SetOneShotPipeSignalFunction(void (*Handler)()) { } void llvm::sys::DefaultOneShotPipeSignalHandler() { - // UNIX03 conformance requires a non-zero exit code and an error message - // to stderr when writing to a closed stdout fails. - errs() << "error: write on a pipe with no reader\n"; - // Send a special return code that drivers can check for, from sysexits.h. exit(EX_IOERR); } diff --git a/contrib/llvm-project/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp b/contrib/llvm-project/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp index c28216048d7c..06e21f90ebf1 100644 --- a/contrib/llvm-project/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp +++ b/contrib/llvm-project/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp @@ -5805,7 +5805,7 @@ SDValue AArch64TargetLowering::LowerFormalArguments( assert(!Res && "Call operand has unhandled type"); (void)Res; } - SmallVector ArgValues; + unsigned ExtraArgLocs = 0; for (unsigned i = 0, e = Ins.size(); i != e; ++i) { CCValAssign &VA = ArgLocs[i - ExtraArgLocs]; @@ -6157,17 +6157,10 @@ void AArch64TargetLowering::saveVarArgRegisters(CCState &CCInfo, /// appropriate copies out of appropriate physical registers. SDValue AArch64TargetLowering::LowerCallResult( SDValue Chain, SDValue InFlag, CallingConv::ID CallConv, bool isVarArg, - const SmallVectorImpl &Ins, const SDLoc &DL, + const SmallVectorImpl &RVLocs, const SDLoc &DL, SelectionDAG &DAG, SmallVectorImpl &InVals, bool isThisReturn, SDValue ThisVal) const { - CCAssignFn *RetCC = CCAssignFnForReturn(CallConv); - // Assign locations to each value returned by this call. - SmallVector RVLocs; DenseMap CopiedRegs; - CCState CCInfo(CallConv, isVarArg, DAG.getMachineFunction(), RVLocs, - *DAG.getContext()); - CCInfo.AnalyzeCallResult(Ins, RetCC); - // Copy all of the result registers out of their specified physreg. for (unsigned i = 0; i != RVLocs.size(); ++i) { CCValAssign VA = RVLocs[i]; @@ -6508,17 +6501,39 @@ AArch64TargetLowering::LowerCall(CallLoweringInfo &CLI, *** 1199 LINES SKIPPED *** From nobody Sun Apr 9 21:35:22 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvll014PHz44JNh; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvlkz3HkNz4MH9; Sun, 9 Apr 2023 21:35:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076123; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zS6ajZ/IF1gOsik0ZuA19odYFDVfb5tZWFrvbc8wrHU=; b=eb0GlaVJXpV5X02O7q2Zs06MS0rgepbz+gPaR0iJytH1sUhCORgPw9Roio/SNTDLTBHlMc 2rr6ELw6u2CVw8iJWcHdMnJZ6F/xRap73dfDqB6om/3ab89lxXMrClJbMGwO0edrtyHh5E zApKz5ro7rAPuQEWmotNNOvpcgEm3mR5JU0Mu1ef/jXMvqsQqS7AoA1/eBdoAA/YPl719u C1DRMA2JJGs08o0g4xMeDvzAfIoHBUWo5+FngEFsr/X+xuVSkNRx4DCBF0nmjBsmXE5a38 EoR8MTeSNfyqGe/PaaB8Ts9kp35/p6H4kKfcP/u2DQv4gxBzJWaLxRR8RBsjPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076123; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zS6ajZ/IF1gOsik0ZuA19odYFDVfb5tZWFrvbc8wrHU=; b=gvm9Tm3UyDr3+/PbmhZN3ctuxNFj9403bLeyGhlFeML5Ks2YZ4hPPCt9Yq8I9Szr9adfYU F2nr/JcT3cFvK/GmzxomSew9UL4I4jyTrtiKrbp4ShVS7N71sA0y+HHchVUwHigVjFUacE 05mD+lUnGEpS4kt3VECTOZQ5ldXe01ihF3e6lMN7QQ3YwL5uEtGMjAq58lb0VIqGTATBON ocjX+9AxPEVYk366prEVt/fuGVjvbxOpbdw/Lr/Q26JdbLXNX/UJW0uEca25gAD8QePUpL DVFdFZAJ9qUorqKr1IRc8BMmIBCQJCtDGif+o1xpdjohWWe7v+WZyvnYX8uF7g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076123; a=rsa-sha256; cv=none; b=w2ZoSI8ZLa0SeukYh93dYWUyRfBv1qhyzyeOhgltKfV0Mj/kkreW0vnqSxyEhw7QcdytKS 1S+1WHcgQ2Sn/80vs68KrF2dhaQoCbWaWYJe0OQ+MykSymH2gI1qOTZeowqYqiKc8bsFvd p6eoKlqXs2AgWy/PjWwaHzvdD62PeQLYfsVne+YE8ahbMtRkWfZpDjRBvy1zPt8RONm/dv y6dYcVbPuOHRcl7Puy/tljVbvOaFKNWEnf4mHUpBkuowNvOGznKrrPU8fkMBBduxDTR77X 6uqB7T/ljmwS6Q2QVrSXxu4pvrcdixL8i6cbqfDFsJ9X0ZzlNNJwAO5fx6awnw== 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 4Pvlky4KqZzPhG; Sun, 9 Apr 2023 21:35:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZMr3081641; Sun, 9 Apr 2023 21:35:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZMeJ081640; Sun, 9 Apr 2023 21:35:22 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:22 GMT Message-Id: <202304092135.339LZMeJ081640@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 060699e91369 - stable/13 - Merge llvm-project release/15.x llvmorg-15.0.7-0-g8dfdcc7b7bf6 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 060699e9136975d51d3f726b9785bdbac9a62ba6 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=060699e9136975d51d3f726b9785bdbac9a62ba6 commit 060699e9136975d51d3f726b9785bdbac9a62ba6 Author: Dimitry Andric AuthorDate: 2023-01-14 16:33:24 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:54:52 +0000 Merge llvm-project release/15.x llvmorg-15.0.7-0-g8dfdcc7b7bf6 This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-15.0.7-0-g8dfdcc7b7bf6. PR: 265425 MFC after: 2 weeks (cherry picked from commit 50d7464c3fe687c0a3d4dea6b96a5437779a3ef6) --- ObsoleteFiles.inc | 4 +- contrib/llvm-project/libcxx/include/__config | 2 +- contrib/llvm-project/libcxx/include/vector | 119 ++-- .../llvm/lib/CodeGen/PrologEpilogInserter.cpp | 8 +- .../llvm-project/llvm/lib/CodeGen/RegAllocFast.cpp | 3 + .../llvm/lib/CodeGen/TypePromotion.cpp | 8 +- etc/mtree/BSD.debug.dist | 2 +- etc/mtree/BSD.usr.dist | 2 +- lib/clang/headers/Makefile | 2 +- lib/clang/include/VCSVersion.inc | 6 +- lib/clang/include/clang/Basic/Version.inc | 6 +- lib/clang/include/clang/Config/config.h | 2 +- lib/clang/include/lld/Common/Version.inc | 2 +- lib/clang/include/lldb/Version/Version.inc | 6 +- lib/clang/include/llvm/Config/config.h | 4 +- lib/clang/include/llvm/Config/llvm-config.h | 4 +- lib/clang/include/llvm/Support/VCSRevision.h | 2 +- lib/libclang_rt/compiler-rt-vars.mk | 2 +- tools/build/mk/OptionalObsoleteFiles.inc | 644 ++++++++++----------- 19 files changed, 440 insertions(+), 388 deletions(-) diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 6f3d0f297515..39c3e57f93b1 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -52,7 +52,7 @@ # xargs -n1 | sort | uniq -d; # done -# 20230410: new clang import which bumps version from 14.0.5 to 15.0.6 +# 20230410: new clang import which bumps version from 14.0.5 to 15.0.7 OLD_FILES+=usr/lib/clang/14.0.5/include/cuda_wrappers/algorithm OLD_FILES+=usr/lib/clang/14.0.5/include/cuda_wrappers/complex OLD_FILES+=usr/lib/clang/14.0.5/include/cuda_wrappers/new @@ -363,7 +363,7 @@ OLD_FILES+=usr/lib/clang/14.0.5/share/msan_ignorelist.txt OLD_DIRS+=usr/lib/clang/14.0.5/share OLD_DIRS+=usr/lib/clang/14.0.5 -# 20230410: new libc++ import which bumps version from 14.0.5 to 15.0.6 +# 20230410: new libc++ import which bumps version from 14.0.5 to 15.0.7 OLD_FILES+=usr/include/c++/v1/__functional_base OLD_FILES+=usr/include/c++/v1/__libcpp_version OLD_FILES+=usr/include/c++/v1/__nullptr diff --git a/contrib/llvm-project/libcxx/include/__config b/contrib/llvm-project/libcxx/include/__config index 5f62b974170f..c97cbae96fba 100644 --- a/contrib/llvm-project/libcxx/include/__config +++ b/contrib/llvm-project/libcxx/include/__config @@ -36,7 +36,7 @@ #ifdef __cplusplus -# define _LIBCPP_VERSION 15006 +# define _LIBCPP_VERSION 15007 # define _LIBCPP_CONCAT_IMPL(_X, _Y) _X##_Y # define _LIBCPP_CONCAT(_X, _Y) _LIBCPP_CONCAT_IMPL(_X, _Y) diff --git a/contrib/llvm-project/libcxx/include/vector b/contrib/llvm-project/libcxx/include/vector index 252a0f051ff5..63759407ce94 100644 --- a/contrib/llvm-project/libcxx/include/vector +++ b/contrib/llvm-project/libcxx/include/vector @@ -297,6 +297,7 @@ erase_if(vector& c, Predicate pred); // C++20 #include <__utility/forward.h> #include <__utility/move.h> #include <__utility/swap.h> +#include <__utility/transaction.h> #include #include #include @@ -425,18 +426,27 @@ public: value_type, typename iterator_traits<_ForwardIterator>::reference>::value>::type* = 0); - _LIBCPP_CONSTEXPR_AFTER_CXX17 _LIBCPP_INLINE_VISIBILITY - ~vector() - { - __annotate_delete(); - std::__debug_db_erase_c(this); +private: + class __destroy_vector { + public: + _LIBCPP_CONSTEXPR __destroy_vector(vector& __vec) : __vec_(__vec) {} - if (this->__begin_ != nullptr) - { - __clear(); - __alloc_traits::deallocate(__alloc(), this->__begin_, capacity()); + _LIBCPP_CONSTEXPR_AFTER_CXX17 _LIBCPP_HIDE_FROM_ABI void operator()() { + __vec_.__annotate_delete(); + std::__debug_db_erase_c(std::addressof(__vec_)); + + if (__vec_.__begin_ != nullptr) { + __vec_.__clear(); + __alloc_traits::deallocate(__vec_.__alloc(), __vec_.__begin_, __vec_.capacity()); + } } - } + + private: + vector& __vec_; + }; + +public: + _LIBCPP_CONSTEXPR_AFTER_CXX17 _LIBCPP_HIDE_FROM_ABI ~vector() { __destroy_vector(*this)(); } _LIBCPP_CONSTEXPR_AFTER_CXX17 vector(const vector& __x); _LIBCPP_CONSTEXPR_AFTER_CXX17 vector(const vector& __x, const __type_identity_t& __a); @@ -1075,12 +1085,14 @@ template _LIBCPP_CONSTEXPR_AFTER_CXX17 vector<_Tp, _Allocator>::vector(size_type __n) { - _VSTD::__debug_db_insert_c(this); + auto __guard = std::__make_transaction(__destroy_vector(*this)); + std::__debug_db_insert_c(this); if (__n > 0) { __vallocate(__n); __construct_at_end(__n); } + __guard.__complete(); } #if _LIBCPP_STD_VER > 11 @@ -1089,12 +1101,14 @@ _LIBCPP_CONSTEXPR_AFTER_CXX17 vector<_Tp, _Allocator>::vector(size_type __n, const allocator_type& __a) : __end_cap_(nullptr, __a) { - _VSTD::__debug_db_insert_c(this); + auto __guard = std::__make_transaction(__destroy_vector(*this)); + std::__debug_db_insert_c(this); if (__n > 0) { __vallocate(__n); __construct_at_end(__n); } + __guard.__complete(); } #endif @@ -1102,12 +1116,14 @@ template _LIBCPP_CONSTEXPR_AFTER_CXX17 vector<_Tp, _Allocator>::vector(size_type __n, const value_type& __x) { - _VSTD::__debug_db_insert_c(this); + auto __guard = std::__make_transaction(__destroy_vector(*this)); + std::__debug_db_insert_c(this); if (__n > 0) { __vallocate(__n); __construct_at_end(__n, __x); } + __guard.__complete(); } template @@ -1120,9 +1136,11 @@ vector<_Tp, _Allocator>::vector(_InputIterator __first, typename iterator_traits<_InputIterator>::reference>::value, _InputIterator>::type __last) { - _VSTD::__debug_db_insert_c(this); + auto __guard = std::__make_transaction(__destroy_vector(*this)); + std::__debug_db_insert_c(this); for (; __first != __last; ++__first) emplace_back(*__first); + __guard.__complete(); } template @@ -1135,9 +1153,11 @@ vector<_Tp, _Allocator>::vector(_InputIterator __first, _InputIterator __last, c typename iterator_traits<_InputIterator>::reference>::value>::type*) : __end_cap_(nullptr, __a) { - _VSTD::__debug_db_insert_c(this); + auto __guard = std::__make_transaction(__destroy_vector(*this)); + std::__debug_db_insert_c(this); for (; __first != __last; ++__first) emplace_back(*__first); + __guard.__complete(); } template @@ -1150,13 +1170,15 @@ vector<_Tp, _Allocator>::vector(_ForwardIterator __first, typename iterator_traits<_ForwardIterator>::reference>::value, _ForwardIterator>::type __last) { - _VSTD::__debug_db_insert_c(this); - size_type __n = static_cast(_VSTD::distance(__first, __last)); + auto __guard = std::__make_transaction(__destroy_vector(*this)); + std::__debug_db_insert_c(this); + size_type __n = static_cast(std::distance(__first, __last)); if (__n > 0) { __vallocate(__n); __construct_at_end(__first, __last, __n); } + __guard.__complete(); } template @@ -1169,13 +1191,15 @@ vector<_Tp, _Allocator>::vector(_ForwardIterator __first, _ForwardIterator __las typename iterator_traits<_ForwardIterator>::reference>::value>::type*) : __end_cap_(nullptr, __a) { - _VSTD::__debug_db_insert_c(this); - size_type __n = static_cast(_VSTD::distance(__first, __last)); + auto __guard = std::__make_transaction(__destroy_vector(*this)); + std::__debug_db_insert_c(this); + size_type __n = static_cast(std::distance(__first, __last)); if (__n > 0) { __vallocate(__n); __construct_at_end(__first, __last, __n); } + __guard.__complete(); } template @@ -1183,13 +1207,15 @@ _LIBCPP_CONSTEXPR_AFTER_CXX17 vector<_Tp, _Allocator>::vector(const vector& __x) : __end_cap_(nullptr, __alloc_traits::select_on_container_copy_construction(__x.__alloc())) { - _VSTD::__debug_db_insert_c(this); + auto __guard = std::__make_transaction(__destroy_vector(*this)); + std::__debug_db_insert_c(this); size_type __n = __x.size(); if (__n > 0) { __vallocate(__n); __construct_at_end(__x.__begin_, __x.__end_, __n); } + __guard.__complete(); } template @@ -1197,13 +1223,15 @@ _LIBCPP_CONSTEXPR_AFTER_CXX17 vector<_Tp, _Allocator>::vector(const vector& __x, const __type_identity_t& __a) : __end_cap_(nullptr, __a) { - _VSTD::__debug_db_insert_c(this); + auto __guard = std::__make_transaction(__destroy_vector(*this)); + std::__debug_db_insert_c(this); size_type __n = __x.size(); if (__n > 0) { __vallocate(__n); __construct_at_end(__x.__begin_, __x.__end_, __n); } + __guard.__complete(); } template @@ -1243,7 +1271,9 @@ vector<_Tp, _Allocator>::vector(vector&& __x, const __type_identity_t _Ip; + auto __guard = std::__make_transaction(__destroy_vector(*this)); assign(_Ip(__x.begin()), _Ip(__x.end())); + __guard.__complete(); } } @@ -1254,12 +1284,14 @@ _LIBCPP_CONSTEXPR_AFTER_CXX17 inline _LIBCPP_INLINE_VISIBILITY vector<_Tp, _Allocator>::vector(initializer_list __il) { - _VSTD::__debug_db_insert_c(this); + auto __guard = std::__make_transaction(__destroy_vector(*this)); + std::__debug_db_insert_c(this); if (__il.size() > 0) { __vallocate(__il.size()); __construct_at_end(__il.begin(), __il.end(), __il.size()); } + __guard.__complete(); } template @@ -1268,12 +1300,14 @@ inline _LIBCPP_INLINE_VISIBILITY vector<_Tp, _Allocator>::vector(initializer_list __il, const allocator_type& __a) : __end_cap_(nullptr, __a) { - _VSTD::__debug_db_insert_c(this); + auto __guard = std::__make_transaction(__destroy_vector(*this)); + std::__debug_db_insert_c(this); if (__il.size() > 0) { __vallocate(__il.size()); __construct_at_end(__il.begin(), __il.end(), __il.size()); } + __guard.__complete(); } #endif // _LIBCPP_CXX03_LANG @@ -2111,8 +2145,26 @@ public: #else _NOEXCEPT; #endif - _LIBCPP_CONSTEXPR_AFTER_CXX17 ~vector(); - _LIBCPP_CONSTEXPR_AFTER_CXX17 explicit vector(size_type __n); + +private: + class __destroy_vector { + public: + _LIBCPP_CONSTEXPR __destroy_vector(vector& __vec) : __vec_(__vec) {} + + _LIBCPP_CONSTEXPR_AFTER_CXX17 _LIBCPP_HIDE_FROM_ABI void operator()() { + if (__vec_.__begin_ != nullptr) + __storage_traits::deallocate(__vec_.__alloc(), __vec_.__begin_, __vec_.__cap()); + std::__debug_db_invalidate_all(this); + } + + private: + vector& __vec_; + }; + +public: + _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_AFTER_CXX17 ~vector() { __destroy_vector(*this)(); } + + _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_AFTER_CXX17 explicit vector(size_type __n); #if _LIBCPP_STD_VER > 11 _LIBCPP_CONSTEXPR_AFTER_CXX17 explicit vector(size_type __n, const allocator_type& __a); #endif @@ -2647,12 +2699,14 @@ vector::vector(_ForwardIterator __first, _ForwardIterator __la __size_(0), __cap_alloc_(0, __default_init_tag()) { - size_type __n = static_cast(_VSTD::distance(__first, __last)); + auto __guard = std::__make_transaction(__destroy_vector(*this)); + size_type __n = static_cast(std::distance(__first, __last)); if (__n > 0) { __vallocate(__n); __construct_at_end(__first, __last); } + __guard.__complete(); } template @@ -2664,12 +2718,14 @@ vector::vector(_ForwardIterator __first, _ForwardIterator __la __size_(0), __cap_alloc_(0, static_cast<__storage_allocator>(__a)) { - size_type __n = static_cast(_VSTD::distance(__first, __last)); + auto __guard = std::__make_transaction(__destroy_vector(*this)); + size_type __n = static_cast(std::distance(__first, __last)); if (__n > 0) { __vallocate(__n); __construct_at_end(__first, __last); } + __guard.__complete(); } #ifndef _LIBCPP_CXX03_LANG @@ -2706,15 +2762,6 @@ vector::vector(initializer_list __il, const alloca #endif // _LIBCPP_CXX03_LANG -template -_LIBCPP_CONSTEXPR_AFTER_CXX17 -vector::~vector() -{ - if (__begin_ != nullptr) - __storage_traits::deallocate(__alloc(), __begin_, __cap()); - std::__debug_db_invalidate_all(this); -} - template _LIBCPP_CONSTEXPR_AFTER_CXX17 vector::vector(const vector& __v) diff --git a/contrib/llvm-project/llvm/lib/CodeGen/PrologEpilogInserter.cpp b/contrib/llvm-project/llvm/lib/CodeGen/PrologEpilogInserter.cpp index 85d051cfdbe7..a8d40edd88d3 100644 --- a/contrib/llvm-project/llvm/lib/CodeGen/PrologEpilogInserter.cpp +++ b/contrib/llvm-project/llvm/lib/CodeGen/PrologEpilogInserter.cpp @@ -1237,7 +1237,13 @@ void PEI::insertZeroCallUsedRegs(MachineFunction &MF) { if (!MO.isReg()) continue; - for (MCPhysReg SReg : TRI.sub_and_superregs_inclusive(MO.getReg())) + MCRegister Reg = MO.getReg(); + + // This picks up sibling registers (e.q. %al -> %ah). + for (MCRegUnitIterator Unit(Reg, &TRI); Unit.isValid(); ++Unit) + RegsToZero.reset(*Unit); + + for (MCPhysReg SReg : TRI.sub_and_superregs_inclusive(Reg)) RegsToZero.reset(SReg); } } diff --git a/contrib/llvm-project/llvm/lib/CodeGen/RegAllocFast.cpp b/contrib/llvm-project/llvm/lib/CodeGen/RegAllocFast.cpp index 9e4e26f1392e..cb552f212fbb 100644 --- a/contrib/llvm-project/llvm/lib/CodeGen/RegAllocFast.cpp +++ b/contrib/llvm-project/llvm/lib/CodeGen/RegAllocFast.cpp @@ -443,6 +443,9 @@ void RegAllocFast::spill(MachineBasicBlock::iterator Before, Register VirtReg, SpilledOperandsMap[MO->getParent()].push_back(MO); for (auto MISpilledOperands : SpilledOperandsMap) { MachineInstr &DBG = *MISpilledOperands.first; + // We don't have enough support for tracking operands of DBG_VALUE_LISTs. + if (DBG.isDebugValueList()) + continue; MachineInstr *NewDV = buildDbgValueForSpill( *MBB, Before, *MISpilledOperands.first, FI, MISpilledOperands.second); assert(NewDV->getParent() == MBB && "dangling parent pointer"); diff --git a/contrib/llvm-project/llvm/lib/CodeGen/TypePromotion.cpp b/contrib/llvm-project/llvm/lib/CodeGen/TypePromotion.cpp index a63118067139..36e3c1245f1c 100644 --- a/contrib/llvm-project/llvm/lib/CodeGen/TypePromotion.cpp +++ b/contrib/llvm-project/llvm/lib/CodeGen/TypePromotion.cpp @@ -570,7 +570,6 @@ void IRPromoter::Cleanup() { LLVM_DEBUG(dbgs() << "IR Promotion: Cleanup..\n"); // Some zexts will now have become redundant, along with their trunc // operands, so remove them. - // Some zexts need to be replaced with truncate if src bitwidth is larger. for (auto *V : Visited) { if (!isa(V)) continue; @@ -585,11 +584,6 @@ void IRPromoter::Cleanup() { << "\n"); ReplaceAllUsersOfWith(ZExt, Src); continue; - } else if (ZExt->getSrcTy()->getScalarSizeInBits() > PromotedWidth) { - IRBuilder<> Builder{ZExt}; - Value *Trunc = Builder.CreateTrunc(Src, ZExt->getDestTy()); - ReplaceAllUsersOfWith(ZExt, Trunc); - continue; } // We've inserted a trunc for a zext sink, but we already know that the @@ -626,6 +620,8 @@ void IRPromoter::ConvertTruncs() { ConstantInt *Mask = ConstantInt::get(SrcTy, APInt::getMaxValue(NumBits).getZExtValue()); Value *Masked = Builder.CreateAnd(Trunc->getOperand(0), Mask); + if (SrcTy != ExtTy) + Masked = Builder.CreateTrunc(Masked, ExtTy); if (auto *I = dyn_cast(Masked)) NewInsts.insert(I); diff --git a/etc/mtree/BSD.debug.dist b/etc/mtree/BSD.debug.dist index a73aca740a10..1d9c926432dd 100644 --- a/etc/mtree/BSD.debug.dist +++ b/etc/mtree/BSD.debug.dist @@ -31,7 +31,7 @@ .. lib clang - 15.0.6 + 15.0.7 lib freebsd .. diff --git a/etc/mtree/BSD.usr.dist b/etc/mtree/BSD.usr.dist index 9416a70eafcd..dcb5cde47e94 100644 --- a/etc/mtree/BSD.usr.dist +++ b/etc/mtree/BSD.usr.dist @@ -35,7 +35,7 @@ .. lib clang - 15.0.6 + 15.0.7 include cuda_wrappers .. diff --git a/lib/clang/headers/Makefile b/lib/clang/headers/Makefile index 822d934cbede..4e5a08e9fed2 100644 --- a/lib/clang/headers/Makefile +++ b/lib/clang/headers/Makefile @@ -5,7 +5,7 @@ .PATH: ${CLANG_SRCS}/lib/Headers INCSGROUPS= INCS CUDA HLSL OMP PPC -INCSDIR= ${LIBDIR}/clang/15.0.6/include +INCSDIR= ${LIBDIR}/clang/15.0.7/include CUDADIR= ${INCSDIR}/cuda_wrappers HLSLDIR= ${INCSDIR}/hlsl OMPDIR= ${INCSDIR}/openmp_wrappers diff --git a/lib/clang/include/VCSVersion.inc b/lib/clang/include/VCSVersion.inc index df4289259487..e71c8f63b229 100644 --- a/lib/clang/include/VCSVersion.inc +++ b/lib/clang/include/VCSVersion.inc @@ -1,10 +1,10 @@ // $FreeBSD$ -#define LLVM_REVISION "llvmorg-15.0.6-0-g088f33605d8a" +#define LLVM_REVISION "llvmorg-15.0.7-0-g8dfdcc7b7bf6" #define LLVM_REPOSITORY "https://github.com/llvm/llvm-project.git" -#define CLANG_REVISION "llvmorg-15.0.6-0-g088f33605d8a" +#define CLANG_REVISION "llvmorg-15.0.7-0-g8dfdcc7b7bf6" #define CLANG_REPOSITORY "https://github.com/llvm/llvm-project.git" -#define LLDB_REVISION "llvmorg-15.0.6-0-g088f33605d8a" +#define LLDB_REVISION "llvmorg-15.0.7-0-g8dfdcc7b7bf6" #define LLDB_REPOSITORY "https://github.com/llvm/llvm-project.git" diff --git a/lib/clang/include/clang/Basic/Version.inc b/lib/clang/include/clang/Basic/Version.inc index d28210f87bed..ed380b8a0e72 100644 --- a/lib/clang/include/clang/Basic/Version.inc +++ b/lib/clang/include/clang/Basic/Version.inc @@ -1,9 +1,9 @@ /* $FreeBSD$ */ -#define CLANG_VERSION 15.0.6 -#define CLANG_VERSION_STRING "15.0.6" +#define CLANG_VERSION 15.0.7 +#define CLANG_VERSION_STRING "15.0.7" #define CLANG_VERSION_MAJOR 15 #define CLANG_VERSION_MINOR 0 -#define CLANG_VERSION_PATCHLEVEL 6 +#define CLANG_VERSION_PATCHLEVEL 7 #define CLANG_VENDOR "FreeBSD " diff --git a/lib/clang/include/clang/Config/config.h b/lib/clang/include/clang/Config/config.h index 18a0e28d7f3f..485f33a3fad0 100644 --- a/lib/clang/include/clang/Config/config.h +++ b/lib/clang/include/clang/Config/config.h @@ -80,7 +80,7 @@ #define CLANG_HAVE_RLIMITS 1 /* The LLVM product name and version */ -#define BACKEND_PACKAGE_STRING "LLVM 15.0.6" +#define BACKEND_PACKAGE_STRING "LLVM 15.0.7" /* Linker version detected at compile time. */ /* #undef HOST_LINK_VERSION */ diff --git a/lib/clang/include/lld/Common/Version.inc b/lib/clang/include/lld/Common/Version.inc index edb3421ae064..c7af7cd79d0d 100644 --- a/lib/clang/include/lld/Common/Version.inc +++ b/lib/clang/include/lld/Common/Version.inc @@ -1,4 +1,4 @@ // Local identifier in __FreeBSD_version style #define LLD_FREEBSD_VERSION 1400005 -#define LLD_VERSION_STRING "15.0.6 (FreeBSD llvmorg-15.0.6-0-g088f33605d8a-" __XSTRING(LLD_FREEBSD_VERSION) ")" +#define LLD_VERSION_STRING "15.0.7 (FreeBSD llvmorg-15.0.7-0-g8dfdcc7b7bf6-" __XSTRING(LLD_FREEBSD_VERSION) ")" diff --git a/lib/clang/include/lldb/Version/Version.inc b/lib/clang/include/lldb/Version/Version.inc index 7dcfad4a7d30..13c0abd835a2 100644 --- a/lib/clang/include/lldb/Version/Version.inc +++ b/lib/clang/include/lldb/Version/Version.inc @@ -1,6 +1,6 @@ -#define LLDB_VERSION 15.0.6 -#define LLDB_VERSION_STRING "15.0.6" +#define LLDB_VERSION 15.0.7 +#define LLDB_VERSION_STRING "15.0.7" #define LLDB_VERSION_MAJOR 15 #define LLDB_VERSION_MINOR 0 -#define LLDB_VERSION_PATCH 6 +#define LLDB_VERSION_PATCH 7 /* #undef LLDB_FULL_VERSION_STRING */ diff --git a/lib/clang/include/llvm/Config/config.h b/lib/clang/include/llvm/Config/config.h index 22dfdef58573..75e12c89863a 100644 --- a/lib/clang/include/llvm/Config/config.h +++ b/lib/clang/include/llvm/Config/config.h @@ -353,10 +353,10 @@ #define PACKAGE_NAME "LLVM" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "LLVM 15.0.6" +#define PACKAGE_STRING "LLVM 15.0.7" /* Define to the version of this package. */ -#define PACKAGE_VERSION "15.0.6" +#define PACKAGE_VERSION "15.0.7" /* Define to the vendor of this package. */ /* #undef PACKAGE_VENDOR */ diff --git a/lib/clang/include/llvm/Config/llvm-config.h b/lib/clang/include/llvm/Config/llvm-config.h index fa14fe523bd1..ab9f4d711628 100644 --- a/lib/clang/include/llvm/Config/llvm-config.h +++ b/lib/clang/include/llvm/Config/llvm-config.h @@ -74,10 +74,10 @@ #define LLVM_VERSION_MINOR 0 /* Patch version of the LLVM API */ -#define LLVM_VERSION_PATCH 6 +#define LLVM_VERSION_PATCH 7 /* LLVM version string */ -#define LLVM_VERSION_STRING "15.0.6" +#define LLVM_VERSION_STRING "15.0.7" /* Whether LLVM records statistics for use with GetStatistics(), * PrintStatistics() or PrintStatisticsJSON() diff --git a/lib/clang/include/llvm/Support/VCSRevision.h b/lib/clang/include/llvm/Support/VCSRevision.h index b58f85d44f73..ecccb84d835f 100644 --- a/lib/clang/include/llvm/Support/VCSRevision.h +++ b/lib/clang/include/llvm/Support/VCSRevision.h @@ -1,3 +1,3 @@ /* $FreeBSD$ */ -#define LLVM_REVISION "llvmorg-15.0.6-0-g088f33605d8a" +#define LLVM_REVISION "llvmorg-15.0.7-0-g8dfdcc7b7bf6" #define LLVM_REPOSITORY "https://github.com/llvm/llvm-project.git" diff --git a/lib/libclang_rt/compiler-rt-vars.mk b/lib/libclang_rt/compiler-rt-vars.mk index 687a280af8d6..3b0cfa853e7a 100644 --- a/lib/libclang_rt/compiler-rt-vars.mk +++ b/lib/libclang_rt/compiler-rt-vars.mk @@ -1,4 +1,4 @@ -CLANG_SUBDIR=clang/15.0.6 +CLANG_SUBDIR=clang/15.0.7 CLANGDIR= /usr/lib/${CLANG_SUBDIR} SANITIZER_LIBDIR= ${CLANGDIR}/lib/freebsd SANITIZER_SHAREDIR= ${CLANGDIR}/share diff --git a/tools/build/mk/OptionalObsoleteFiles.inc b/tools/build/mk/OptionalObsoleteFiles.inc index d8812f65b840..21440e6e9560 100644 --- a/tools/build/mk/OptionalObsoleteFiles.inc +++ b/tools/build/mk/OptionalObsoleteFiles.inc @@ -1191,328 +1191,328 @@ OLD_FILES+=usr/share/man/man1/objdump.1.gz OLD_FILES+=usr/bin/clang OLD_FILES+=usr/bin/clang++ OLD_FILES+=usr/bin/clang-cpp -OLD_FILES+=usr/lib/clang/15.0.6/include/cuda_wrappers/algorithm -OLD_FILES+=usr/lib/clang/15.0.6/include/cuda_wrappers/complex -OLD_FILES+=usr/lib/clang/15.0.6/include/cuda_wrappers/new -OLD_DIRS+=usr/lib/clang/15.0.6/include/cuda_wrappers -OLD_FILES+=usr/lib/clang/15.0.6/include/fuzzer/FuzzedDataProvider.h -OLD_DIRS+=usr/lib/clang/15.0.6/include/fuzzer -OLD_FILES+=usr/lib/clang/15.0.6/include/hlsl/hlsl_basic_types.h -OLD_FILES+=usr/lib/clang/15.0.6/include/hlsl/hlsl_intrinsics.h -OLD_DIRS+=usr/lib/clang/15.0.6/include/hlsl -OLD_FILES+=usr/lib/clang/15.0.6/include/openmp_wrappers/__clang_openmp_device_functions.h -OLD_FILES+=usr/lib/clang/15.0.6/include/openmp_wrappers/cmath -OLD_FILES+=usr/lib/clang/15.0.6/include/openmp_wrappers/complex -OLD_FILES+=usr/lib/clang/15.0.6/include/openmp_wrappers/complex.h -OLD_FILES+=usr/lib/clang/15.0.6/include/openmp_wrappers/complex_cmath.h -OLD_FILES+=usr/lib/clang/15.0.6/include/openmp_wrappers/math.h -OLD_FILES+=usr/lib/clang/15.0.6/include/openmp_wrappers/new -OLD_DIRS+=usr/lib/clang/15.0.6/include/openmp_wrappers -OLD_FILES+=usr/lib/clang/15.0.6/include/ppc_wrappers/bmi2intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/ppc_wrappers/bmiintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/ppc_wrappers/emmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/ppc_wrappers/immintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/ppc_wrappers/mm_malloc.h -OLD_FILES+=usr/lib/clang/15.0.6/include/ppc_wrappers/mmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/ppc_wrappers/pmmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/ppc_wrappers/smmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/ppc_wrappers/tmmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/ppc_wrappers/x86gprintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/ppc_wrappers/x86intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/ppc_wrappers/xmmintrin.h -OLD_DIRS+=usr/lib/clang/15.0.6/include/ppc_wrappers -OLD_FILES+=usr/lib/clang/15.0.6/include/profile/InstrProfData.inc -OLD_FILES+=usr/lib/clang/15.0.6/include/profile/MemProfData.inc -OLD_DIRS+=usr/lib/clang/15.0.6/include/profile -OLD_FILES+=usr/lib/clang/15.0.6/include/sanitizer/allocator_interface.h -OLD_FILES+=usr/lib/clang/15.0.6/include/sanitizer/asan_interface.h -OLD_FILES+=usr/lib/clang/15.0.6/include/sanitizer/common_interface_defs.h -OLD_FILES+=usr/lib/clang/15.0.6/include/sanitizer/coverage_interface.h -OLD_FILES+=usr/lib/clang/15.0.6/include/sanitizer/dfsan_interface.h -OLD_FILES+=usr/lib/clang/15.0.6/include/sanitizer/hwasan_interface.h -OLD_FILES+=usr/lib/clang/15.0.6/include/sanitizer/linux_syscall_hooks.h -OLD_FILES+=usr/lib/clang/15.0.6/include/sanitizer/lsan_interface.h -OLD_FILES+=usr/lib/clang/15.0.6/include/sanitizer/memprof_interface.h -OLD_FILES+=usr/lib/clang/15.0.6/include/sanitizer/msan_interface.h -OLD_FILES+=usr/lib/clang/15.0.6/include/sanitizer/netbsd_syscall_hooks.h -OLD_FILES+=usr/lib/clang/15.0.6/include/sanitizer/scudo_interface.h -OLD_FILES+=usr/lib/clang/15.0.6/include/sanitizer/tsan_interface.h -OLD_FILES+=usr/lib/clang/15.0.6/include/sanitizer/tsan_interface_atomic.h -OLD_FILES+=usr/lib/clang/15.0.6/include/sanitizer/ubsan_interface.h -OLD_DIRS+=usr/lib/clang/15.0.6/include/sanitizer -OLD_FILES+=usr/lib/clang/15.0.6/include/xray/xray_interface.h -OLD_FILES+=usr/lib/clang/15.0.6/include/xray/xray_log_interface.h -OLD_FILES+=usr/lib/clang/15.0.6/include/xray/xray_records.h -OLD_DIRS+=usr/lib/clang/15.0.6/include/xray -OLD_FILES+=usr/lib/clang/15.0.6/include/__clang_cuda_builtin_vars.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__clang_cuda_cmath.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__clang_cuda_complex_builtins.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__clang_cuda_device_functions.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__clang_cuda_intrinsics.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__clang_cuda_libdevice_declares.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__clang_cuda_math.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__clang_cuda_math_forward_declares.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__clang_cuda_runtime_wrapper.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__clang_cuda_texture_intrinsics.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__clang_hip_cmath.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__clang_hip_libdevice_declares.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__clang_hip_math.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__clang_hip_runtime_wrapper.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__stddef_max_align_t.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__wmmintrin_aes.h -OLD_FILES+=usr/lib/clang/15.0.6/include/__wmmintrin_pclmul.h -OLD_FILES+=usr/lib/clang/15.0.6/include/adxintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/altivec.h -OLD_FILES+=usr/lib/clang/15.0.6/include/ammintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/amxintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/arm64intr.h -OLD_FILES+=usr/lib/clang/15.0.6/include/arm_acle.h -OLD_FILES+=usr/lib/clang/15.0.6/include/arm_bf16.h -OLD_FILES+=usr/lib/clang/15.0.6/include/arm_cde.h -OLD_FILES+=usr/lib/clang/15.0.6/include/arm_cmse.h -OLD_FILES+=usr/lib/clang/15.0.6/include/arm_fp16.h -OLD_FILES+=usr/lib/clang/15.0.6/include/arm_mve.h -OLD_FILES+=usr/lib/clang/15.0.6/include/arm_neon.h -OLD_FILES+=usr/lib/clang/15.0.6/include/arm_neon_sve_bridge.h -OLD_FILES+=usr/lib/clang/15.0.6/include/arm_sve.h -OLD_FILES+=usr/lib/clang/15.0.6/include/armintr.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx2intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512bf16intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512bitalgintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512bwintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512cdintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512dqintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512erintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512fintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512fp16intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512ifmaintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512ifmavlintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512pfintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vbmi2intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vbmiintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vbmivlintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vlbf16intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vlbitalgintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vlbwintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vlcdintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vldqintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vlfp16intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vlintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vlvbmi2intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vlvnniintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vlvp2intersectintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vnniintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vp2intersectintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vpopcntdqintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avx512vpopcntdqvlintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avxintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/avxvnniintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/bmi2intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/bmiintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/builtins.h -OLD_FILES+=usr/lib/clang/15.0.6/include/cet.h -OLD_FILES+=usr/lib/clang/15.0.6/include/cetintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/cldemoteintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/clflushoptintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/clwbintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/clzerointrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/cpuid.h -OLD_FILES+=usr/lib/clang/15.0.6/include/crc32intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/emmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/enqcmdintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/f16cintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/float.h -OLD_FILES+=usr/lib/clang/15.0.6/include/fma4intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/fmaintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/fxsrintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/gfniintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/hexagon_circ_brev_intrinsics.h -OLD_FILES+=usr/lib/clang/15.0.6/include/hexagon_protos.h -OLD_FILES+=usr/lib/clang/15.0.6/include/hexagon_types.h -OLD_FILES+=usr/lib/clang/15.0.6/include/hlsl.h -OLD_FILES+=usr/lib/clang/15.0.6/include/hresetintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/htmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/htmxlintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/hvx_hexagon_protos.h -OLD_FILES+=usr/lib/clang/15.0.6/include/ia32intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/immintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/inttypes.h -OLD_FILES+=usr/lib/clang/15.0.6/include/invpcidintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/iso646.h -OLD_FILES+=usr/lib/clang/15.0.6/include/keylockerintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/limits.h -OLD_FILES+=usr/lib/clang/15.0.6/include/lwpintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/lzcntintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/mm3dnow.h -OLD_FILES+=usr/lib/clang/15.0.6/include/mm_malloc.h -OLD_FILES+=usr/lib/clang/15.0.6/include/mmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/module.modulemap -OLD_FILES+=usr/lib/clang/15.0.6/include/movdirintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/msa.h -OLD_FILES+=usr/lib/clang/15.0.6/include/mwaitxintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/nmmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/omp-tools.h -OLD_FILES+=usr/lib/clang/15.0.6/include/omp.h -OLD_FILES+=usr/lib/clang/15.0.6/include/ompt.h -OLD_FILES+=usr/lib/clang/15.0.6/include/opencl-c-base.h -OLD_FILES+=usr/lib/clang/15.0.6/include/opencl-c.h -OLD_FILES+=usr/lib/clang/15.0.6/include/pconfigintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/pkuintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/pmmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/popcntintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/prfchwintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/ptwriteintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/rdpruintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/rdseedintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/riscv_vector.h -OLD_FILES+=usr/lib/clang/15.0.6/include/rtmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/s390intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/serializeintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/sgxintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/shaintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/smmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/stdalign.h -OLD_FILES+=usr/lib/clang/15.0.6/include/stdarg.h -OLD_FILES+=usr/lib/clang/15.0.6/include/stdatomic.h -OLD_FILES+=usr/lib/clang/15.0.6/include/stdbool.h -OLD_FILES+=usr/lib/clang/15.0.6/include/stddef.h -OLD_FILES+=usr/lib/clang/15.0.6/include/stdint.h -OLD_FILES+=usr/lib/clang/15.0.6/include/stdnoreturn.h -OLD_FILES+=usr/lib/clang/15.0.6/include/tbmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/tgmath.h -OLD_FILES+=usr/lib/clang/15.0.6/include/tmmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/tsxldtrkintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/uintrintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/unwind.h -OLD_FILES+=usr/lib/clang/15.0.6/include/vadefs.h -OLD_FILES+=usr/lib/clang/15.0.6/include/vaesintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/varargs.h -OLD_FILES+=usr/lib/clang/15.0.6/include/vecintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/velintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/velintrin_approx.h -OLD_FILES+=usr/lib/clang/15.0.6/include/velintrin_gen.h -OLD_FILES+=usr/lib/clang/15.0.6/include/vpclmulqdqintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/waitpkgintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/wasm_simd128.h -OLD_FILES+=usr/lib/clang/15.0.6/include/wbnoinvdintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/wmmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/x86gprintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/x86intrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/xmmintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/xopintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/xsavecintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/xsaveintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/xsaveoptintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/xsavesintrin.h -OLD_FILES+=usr/lib/clang/15.0.6/include/xtestintrin.h -OLD_DIRS+=usr/lib/clang/15.0.6/include -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan-aarch64.so -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan-arm.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan-arm.so -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan-armhf.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan-armhf.so -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan-i386.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan-i386.so -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan-preinit-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan-preinit-arm.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan-preinit-armhf.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan-preinit-i386.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan-preinit-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan-x86_64.so -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan_cxx-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan_cxx-arm.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan_cxx-armhf.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan_cxx-i386.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan_cxx-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan_static-i386.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.asan_static-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.cfi-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.cfi-arm.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.cfi-armhf.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.cfi-i386.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.cfi-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.cfi_diag-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.cfi_diag-arm.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.cfi_diag-armhf.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.cfi_diag-i386.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.cfi_diag-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.dd-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.dd-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.fuzzer-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.fuzzer-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.fuzzer_interceptors-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.fuzzer_no_main-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.fuzzer_no_main-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.msan-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.msan-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.msan_cxx-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.msan_cxx-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.profile-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.profile-arm.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.profile-armhf.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.profile-i386.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.profile-powerpc.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.profile-powerpc64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.profile-powerpc64le.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.profile-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.safestack-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.safestack-i386.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.safestack-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.stats-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.stats-arm.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.stats-armhf.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.stats-i386.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.stats-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.stats_client-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.stats_client-arm.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.stats_client-armhf.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.stats_client-i386.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.stats_client-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.tsan-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.tsan-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.tsan_cxx-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.tsan_cxx-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.ubsan_minimal-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.ubsan_minimal-arm.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.ubsan_minimal-armhf.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.ubsan_minimal-i386.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.ubsan_minimal-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.ubsan_standalone-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.ubsan_standalone-arm.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.ubsan_standalone-armhf.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.ubsan_standalone-i386.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.ubsan_standalone-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.ubsan_standalone_cxx-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.ubsan_standalone_cxx-arm.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.ubsan_standalone_cxx-armhf.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.ubsan_standalone_cxx-i386.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.ubsan_standalone_cxx-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-arm.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-armhf.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-basic-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-basic-arm.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-basic-armhf.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-basic-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-fdr-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-fdr-arm.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-fdr-armhf.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-fdr-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-profiling-aarch64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-profiling-arm.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-profiling-armhf.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-profiling-x86_64.a -OLD_FILES+=usr/lib/clang/15.0.6/lib/freebsd/libclang_rt.xray-x86_64.a -OLD_DIRS+=usr/lib/clang/15.0.6/lib/freebsd -OLD_DIRS+=usr/lib/clang/15.0.6/lib -OLD_FILES+=usr/lib/clang/15.0.6/share/asan_ignorelist.txt -OLD_FILES+=usr/lib/clang/15.0.6/share/cfi_ignorelist.txt -OLD_FILES+=usr/lib/clang/15.0.6/share/msan_ignorelist.txt -OLD_DIRS+=usr/lib/clang/15.0.6/share -OLD_DIRS+=usr/lib/clang/15.0.6 +OLD_FILES+=usr/lib/clang/15.0.7/include/cuda_wrappers/algorithm +OLD_FILES+=usr/lib/clang/15.0.7/include/cuda_wrappers/complex +OLD_FILES+=usr/lib/clang/15.0.7/include/cuda_wrappers/new +OLD_DIRS+=usr/lib/clang/15.0.7/include/cuda_wrappers +OLD_FILES+=usr/lib/clang/15.0.7/include/fuzzer/FuzzedDataProvider.h +OLD_DIRS+=usr/lib/clang/15.0.7/include/fuzzer +OLD_FILES+=usr/lib/clang/15.0.7/include/hlsl/hlsl_basic_types.h +OLD_FILES+=usr/lib/clang/15.0.7/include/hlsl/hlsl_intrinsics.h +OLD_DIRS+=usr/lib/clang/15.0.7/include/hlsl +OLD_FILES+=usr/lib/clang/15.0.7/include/openmp_wrappers/__clang_openmp_device_functions.h +OLD_FILES+=usr/lib/clang/15.0.7/include/openmp_wrappers/cmath +OLD_FILES+=usr/lib/clang/15.0.7/include/openmp_wrappers/complex +OLD_FILES+=usr/lib/clang/15.0.7/include/openmp_wrappers/complex.h +OLD_FILES+=usr/lib/clang/15.0.7/include/openmp_wrappers/complex_cmath.h +OLD_FILES+=usr/lib/clang/15.0.7/include/openmp_wrappers/math.h +OLD_FILES+=usr/lib/clang/15.0.7/include/openmp_wrappers/new +OLD_DIRS+=usr/lib/clang/15.0.7/include/openmp_wrappers +OLD_FILES+=usr/lib/clang/15.0.7/include/ppc_wrappers/bmi2intrin.h +OLD_FILES+=usr/lib/clang/15.0.7/include/ppc_wrappers/bmiintrin.h +OLD_FILES+=usr/lib/clang/15.0.7/include/ppc_wrappers/emmintrin.h +OLD_FILES+=usr/lib/clang/15.0.7/include/ppc_wrappers/immintrin.h +OLD_FILES+=usr/lib/clang/15.0.7/include/ppc_wrappers/mm_malloc.h +OLD_FILES+=usr/lib/clang/15.0.7/include/ppc_wrappers/mmintrin.h +OLD_FILES+=usr/lib/clang/15.0.7/include/ppc_wrappers/pmmintrin.h +OLD_FILES+=usr/lib/clang/15.0.7/include/ppc_wrappers/smmintrin.h +OLD_FILES+=usr/lib/clang/15.0.7/include/ppc_wrappers/tmmintrin.h +OLD_FILES+=usr/lib/clang/15.0.7/include/ppc_wrappers/x86gprintrin.h +OLD_FILES+=usr/lib/clang/15.0.7/include/ppc_wrappers/x86intrin.h +OLD_FILES+=usr/lib/clang/15.0.7/include/ppc_wrappers/xmmintrin.h +OLD_DIRS+=usr/lib/clang/15.0.7/include/ppc_wrappers +OLD_FILES+=usr/lib/clang/15.0.7/include/profile/InstrProfData.inc +OLD_FILES+=usr/lib/clang/15.0.7/include/profile/MemProfData.inc +OLD_DIRS+=usr/lib/clang/15.0.7/include/profile +OLD_FILES+=usr/lib/clang/15.0.7/include/sanitizer/allocator_interface.h +OLD_FILES+=usr/lib/clang/15.0.7/include/sanitizer/asan_interface.h +OLD_FILES+=usr/lib/clang/15.0.7/include/sanitizer/common_interface_defs.h +OLD_FILES+=usr/lib/clang/15.0.7/include/sanitizer/coverage_interface.h +OLD_FILES+=usr/lib/clang/15.0.7/include/sanitizer/dfsan_interface.h *** 287 LINES SKIPPED *** From nobody Sun Apr 9 21:35:23 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvll05V5Vz44JTq; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvll01GZDz4MPs; Sun, 9 Apr 2023 21:35:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076124; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1xILPY+PFimnlY0N1S5W8f/gCBjXyGMF/rbYuu6W4Lw=; b=nbeikTHYKQ4WI8h5hCFXCMDi6kR9NpbKUntBDKiaxfqhJ68lQCN3zV7hOS2Xng5Pzd0tr0 cVLheCee0uXMbL2q1zPsuejzahOQiWLMBx9J5SOskc64WktKQ9HlHCebK7Qe7xYFIclcln OXJue4tjCbVHnP0PEO/8u6F346vUg59HAjJrWNPI89T3O24QSrXem0fsQhqCYGeAPQch4N wbPHTGQteJx7zX1kETu0yACV01T2GfntrvMOA03FFMTMNDxLDnoCzJBhz9042hHYakDmvU N8kz6OfqVXmInukvOjrPPr1sLXnPdKXBHPlQsApBe06feOWEHrWKiP+jbHGIqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076124; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1xILPY+PFimnlY0N1S5W8f/gCBjXyGMF/rbYuu6W4Lw=; b=ktd4fpzelc9V4o4y8UY0FL32G+XS7pqfT66jzNMzudXiyHUGtWR+58HGVp4E3z+vCqhinO eqTlY8SgykUyZskQX8gKfBC3LuepO6K1BS2eDkFfY/00PpGyyjGUW7eRp4Kq0ajRO1o+bl DPgExr3yPt8SUTz5/26wiF3EEl4/YcpY/SqgRTlQqTP+txSgtBCxY6mhUiAp8EexxrIoun PNvVqIyojMbr6uvvVMBzhNT/uqEZOBqEQjbmvtIf+wofpPXCd4Cd4xh1goVw7LusSf7sNB 6hAoPPw0hgKBxTmngQyVE2qMGViUvMh3mJheEKbPh4y2T/ue7ZJzEn1YAH/kaQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076124; a=rsa-sha256; cv=none; b=WJS+8HkQum84sBvcFI7v2linA4z8GVpT5ZGwW3LLO63nt2ST0oh7C4lyJFdlKZvrZ8O3e0 TnWqeK6z3tEJNbdPBGRtdnHGlN/6JWksS0MogNT/QYWz8Vt9Az6zCCmNAZ/O5vnzgPSVZe fFTBH4PWYYkJKjylmlE6IA0g9JR/x0Lwgcx16Wlp4W1acA7lFyHMYRss492EDKha0eVe5n oB/FjcCxOfEd1v+Wj3tkjmqr7ik+JupykF9yc2R/aCSPv2ynK7W1tqyc0g1hGx1zTj4n26 ZpVLLr+lqh1FUaZTNofEP58DXDLxQ69mSTKg8IfMM1zgGd0zNbaIUQNRU2QRIg== 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 4Pvlkz4fF7zPF2; Sun, 9 Apr 2023 21:35:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZNSX081665; Sun, 9 Apr 2023 21:35:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZNks081664; Sun, 9 Apr 2023 21:35:23 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:23 GMT Message-Id: <202304092135.339LZNks081664@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: cb80698e4c85 - stable/13 - Reapply: : Avoid instantiating a pointer type in std::decay<> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: cb80698e4c850fbe6f13f4f937501c5639ecfca5 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=cb80698e4c850fbe6f13f4f937501c5639ecfca5 commit cb80698e4c850fbe6f13f4f937501c5639ecfca5 Author: Dimitry Andric AuthorDate: 2023-02-09 09:33:42 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:54:53 +0000 Reapply: : Avoid instantiating a pointer type in std::decay<> GCC expands the pointer type in this conditional expression even for template types _Up that are not arrays. This raises an error when std::decay<> is used with reference types (as is done in LLVM's sources). Using add_pointer<> causes GCC to only instantiate a pointer type for array types. A similar change to this commit (albeit reworked due to upstream changes) has been merged to libc++ in commit 26068c6e60324ed866a1ca2afb5cb5eb0aaf015b. In file included from /usr/obj/usr/src/amd64.amd64/tmp/usr/include/c++/v1/__compare/ordering.h:13, from /usr/obj/usr/src/amd64.amd64/tmp/usr/include/c++/v1/__compare/common_comparison_category.h:12, from /usr/obj/usr/src/amd64.amd64/tmp/usr/include/c++/v1/tuple:168, from /usr/src/contrib/llvm-project/llvm/include/llvm/ADT/DenseMapInfo.h:20, from /usr/src/contrib/llvm-project/llvm/include/llvm/ADT/DenseMap.h:17, from /usr/src/contrib/llvm-project/llvm/lib/Transforms/Scalar/GVNHoist.cpp:36: /usr/obj/usr/src/amd64.amd64/tmp/usr/include/c++/v1/type_traits: In instantiation of 'struct std::__1::__decay': /usr/obj/usr/src/amd64.amd64/tmp/usr/include/c++/v1/type_traits:1591:89: required from 'struct std::__1::decay' /usr/obj/usr/src/amd64.amd64/tmp/usr/include/c++/v1/__utility/pair.h:132:16: required by substitution of 'template::type>::value && (! std::__1::is_same::type, std::__1::pair > >::value)), std::__1::pair >::_CheckTupleLikeConstructor, std::__1::__check_tuple_constructor_fail>::type::__enable_implicit<_Tuple>(), void>::type* > constexpr std::__1::pair >::pair(_Tuple&&) [with _Tuple = llvm::CHIArg&&; typename std::__1::enable_if::type>::value && (! std::__1::is_same::type, std::__1::pair > >::value)), std::__1::pair >::_CheckTupleLikeConstructor, std::__1::__check_tuple_constructor_fail>::type::__enable_implicit<_Tuple>(), void>::type* = ]' /usr/src/contrib/llvm-project/llvm/lib/Transforms/Scalar/GVNHoist.cpp:892:51: required from here /usr/obj/usr/src/amd64.amd64/tmp/usr/include/c++/v1/type_traits:1582:30: error: forming pointer to reference type 'std::__1::remove_extent::type' {aka 'llvm::CHIArg&'} 1582 | >::type type; | ^~~~ Reviewed by: dim Differential Revision: https://reviews.freebsd.org/D36898 This reapplies commit c36de97088a2b9141cdaf2fae2a7f41bf820ffa0, which I accidentally overwrote in the llvm 15 merge. (It turns out upstream did not merge this to their 15.x branch.) MFC after: 2 weeks (cherry picked from commit 4378cc5cfb5cf928e287c0143efb120d5558c4a0) --- contrib/llvm-project/libcxx/include/__type_traits/decay.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/llvm-project/libcxx/include/__type_traits/decay.h b/contrib/llvm-project/libcxx/include/__type_traits/decay.h index d47ad03fe008..2af0c1ca42c3 100644 --- a/contrib/llvm-project/libcxx/include/__type_traits/decay.h +++ b/contrib/llvm-project/libcxx/include/__type_traits/decay.h @@ -37,7 +37,7 @@ public: typedef _LIBCPP_NODEBUG typename conditional < is_array<_Up>::value, - typename remove_extent<_Up>::type*, + typename add_pointer::type>::type, typename conditional < is_function<_Up>::value, From nobody Sun Apr 9 21:35:24 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvll144bpz44JKV; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvll11sk7z4MVm; Sun, 9 Apr 2023 21:35:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076125; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ipW4lbkCfgatFp2mP8EMiAMG4UqAJEmPz1EHZr6Paa8=; b=Njgs4pSp4+E/QmHHdhI9HNiup1nSOYPAaKfWKYY5poiaK/ICDfGJPTS5d8mD50nrKXJe8z dPtdFeR14XNYwUYlGcw1MzGLDbqkg+CqikCiw4YjKbsYqYBN97Ns1P4P7QuIQLs171P6ZR L6rc+3tiuY9JNaOKfDyhLUCT7icnCi2Mmvdf//haxOb1JPox2HwvH+l0wYQOBJ01kaLl9x w0VcyLsHYEwl13FYlUAjWk++sL7Ngg0P96XwD0AQP4LdVfI3xe9LN1DdurNjCVFGrgpsAR R/oNEt5DnHcKIYM8xmF/icO5DalAhtwdHvHnTJBk1AnR4tCEe8McNbwLlVdnWA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076125; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ipW4lbkCfgatFp2mP8EMiAMG4UqAJEmPz1EHZr6Paa8=; b=QDf8TO7zBZY3GNozxtQ8wadePKJwbPnxI0d/n7+ZUPHA9teuwvxMhWZD8Ny1muyfqAuu02 Y2AtcBWbUWoumnYjf+0wjPBWux3h8xH7Uw0NE68Nhi4c+LRzyGMtw7YLGVv+aTsVvOAxn0 k4tVXgVHPV8f15TEolp3IraiTbOpTTZ88uhOMIlEK03NxMxhckWUA0tL77kfDZsLCIKJMn ICLWIdfJVqY3QJh6/KqvNCS+OYvWOmTHp1VvRAQeafL/mF4Dig2WMD5oX2zR/5UBB9fHKx pfnXZFAJwbkxbxZ5UfVo3M3jLZtZVIdcJu2qPZVqdfIu5+mUqGlEPMNHY58MDw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076125; a=rsa-sha256; cv=none; b=oq2UvkwO/LBmpwsGrNo8DhJh+01LitNH1ZDntrVwEI67t8bOPtuhi1eBR5tSzvWYkB+iyz oOlOx9UUiJxym8WouJXwONeY2PLPq8/l2Ef3yUHX6OAjrLTRoOrjzptelN4g4uWbSQFCYL NTCmJBKvX3nrhvx4l08W3VtbWASxVIYLBuKi6ohbOd3nR0YWZKfSRZhgd367KGT3/aniZP s4bdygDgEqkzb4XlKkw3V2cY7XwB83M3hJOSSnYjroBnvvFclXRTGAsUs2VtsT8CGYsF6C KypcdoiGLtAqBdKEL3kPLTTM39eNGRh3MyFfMCpqQuEqHst70e4hIF6sBiPXJA== 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 4Pvll05KbtzPKV; Sun, 9 Apr 2023 21:35:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZOU8081686; Sun, 9 Apr 2023 21:35:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZOYF081685; Sun, 9 Apr 2023 21:35:24 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:24 GMT Message-Id: <202304092135.339LZOYF081685@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 801fd0db28cb - stable/13 - llvm/lld: damage control threading List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 801fd0db28cb43bee27dd297b7be92a39d9dff98 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=801fd0db28cb43bee27dd297b7be92a39d9dff98 commit 801fd0db28cb43bee27dd297b7be92a39d9dff98 Author: Mateusz Guzik AuthorDate: 2023-04-02 12:38:49 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:54:53 +0000 llvm/lld: damage control threading See the comment inside. Reviewed by: dim Differential Revision: https://reviews.freebsd.org/D39389 (cherry picked from commit 04bab189b8a54974fcd9530140e4eed6ad137f48) --- contrib/llvm-project/llvm/lib/Support/Threading.cpp | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/contrib/llvm-project/llvm/lib/Support/Threading.cpp b/contrib/llvm-project/llvm/lib/Support/Threading.cpp index 04a1a9e19428..3ac3695fa9ed 100644 --- a/contrib/llvm-project/llvm/lib/Support/Threading.cpp +++ b/contrib/llvm-project/llvm/lib/Support/Threading.cpp @@ -62,8 +62,19 @@ unsigned llvm::ThreadPoolStrategy::compute_thread_count() const { : sys::getHostNumPhysicalCores(); if (MaxThreadCount <= 0) MaxThreadCount = 1; - if (ThreadsRequested == 0) - return MaxThreadCount; + // Damage control threading. + // + // There are no heuristics to figure out how many threads makes sense to spawn, + // all while rolling with all available hw threads starts being detrimental to + // performance really early. + // + // Work around by putting a hard cap unless the user explicitly requested a certain amount. + // + // See https://discourse.llvm.org/t/avoidable-overhead-from-threading-by-default/69160 + // for more details. + if (ThreadsRequested == 0) { + return std::min(MaxThreadCount, 4); + } if (!Limit) return ThreadsRequested; return std::min((unsigned)MaxThreadCount, ThreadsRequested); From nobody Sun Apr 9 21:35:25 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvll22qBnz44JLp; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvll20M3Qz4MF7; Sun, 9 Apr 2023 21:35:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076126; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MBYySZbWMlBodcYKSXBqlzLIHigvZEXC2if4PF0f8Po=; b=hzhRVoEP9jLFegAPzpmuRzZ9ieJiz1cGxx5o5TjaAx+gac9LDXol7jhdyMNZBoSpzntC/a WEXbhX1/LYaLgTzBhhhvddNCKBHlaYakMVusDinIfKSBTmUaGK6fP8HVrkL+3Ewdh1jW1a gmbD7U2bu8/cs/Lm45KQtWjMkUiTCPxgq8WyqgGa1uIMqesNrnKZipWm7pbOfDxUg75w2t iGxMj2krknn6V/DH6tE+U9Ul9rR6v8k5b4NB0E5LX68Y1PjWBJUQq60aZposyW8uzlbGg6 7zLgd/y4Id+5Z311LCEqAJQxm9Ic3/54CGV5rLm/9VvsAL/xo9vb1Anpb3fwug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076126; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MBYySZbWMlBodcYKSXBqlzLIHigvZEXC2if4PF0f8Po=; b=kOgy1Yyk/WzEJkdAfzLEv4JijrFd3nBX7Yzx/aOP4G5g5EnmFYaSrX9ihX2vTgZmgsz92C kosRlDmRIGBrLiAcRS4pDm9KL/EOA27aKMgsb7XiQ4xLoEuEp/cFZaH/7iISeCV6h6DRMd zd23c853F/f/doUSPK0CxLOue5gImQGbtICqBhAiIhXdTbjK0zCsiuLFE0TlF4rJs1gxzG oAPdQS5X4VHo2CRaBEdFvhfFQc/9665YEELH7SlK1ZOGcykt0UDhi1kJl/6bMdpYERyaQ5 KzOSiGVlqrSqTMAIAlm3h7TXMjE57fabylEA92zhTNz5/Pk/S2mw2PDaG5KhSQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076126; a=rsa-sha256; cv=none; b=i7E2tkuCdgskJ8y36YYaEE5mimGyu8VLwXDUikfCgjd85DOKBDpRyxAJpO3hics9rqDJz8 ffAKURXvwVx9Ioy4RK0dNyiknB9tIGlNHdJgEN3QerEzFiJL1Hb0IaWAQ7HuRFX0kEPELz VsWJPV9ajDNJk0wnOqFZ1iTEr5b2GrdwES4HKrdTwt9z0JoxJwKZqFgnla78+8sWxgYd4n wYV6ogzt/S4FB4aieasDmEEcXUg5rhLgg7gn8QW7C59dAUMxH2lHduRdx2aarSekIRgsPA QGWH8FGV0BKlphuD/b6MzY4yf/sBfhvqsePeOJGAJHn9aPlZ9ZIcGc8xO9+ifQ== 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 4Pvll16VNWzPVY; Sun, 9 Apr 2023 21:35:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZPRt081705; Sun, 9 Apr 2023 21:35:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZPvY081704; Sun, 9 Apr 2023 21:35:25 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:25 GMT Message-Id: <202304092135.339LZPvY081704@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 4d2ea4dc2c7c - stable/13 - clang: Define NO_WDEPRECATED_NON_PROTOTYPE for clang 15 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 4d2ea4dc2c7c335c02c46e7bf77f31baafccfb6a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=4d2ea4dc2c7c335c02c46e7bf77f31baafccfb6a commit 4d2ea4dc2c7c335c02c46e7bf77f31baafccfb6a Author: Warner Losh AuthorDate: 2022-11-30 18:08:16 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:55:42 +0000 clang: Define NO_WDEPRECATED_NON_PROTOTYPE for clang 15 Clang 15 enforces function definitions using the C89 form rather than the K&R form. While not strictly a prototype (which is only for a declaration), use the name that mirror's clang's warning name. Much code in contrib still uses K&R function definitions, so invent this for compiling there. Sponsored by: Netflix Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D37515 (cherry picked from commit 0ecb61619688acf57a6f5d7b00bf7fda62cf7c53) --- share/mk/bsd.sys.mk | 3 +++ 1 file changed, 3 insertions(+) diff --git a/share/mk/bsd.sys.mk b/share/mk/bsd.sys.mk index 25e2c9787329..b11ba2ddabcb 100644 --- a/share/mk/bsd.sys.mk +++ b/share/mk/bsd.sys.mk @@ -114,6 +114,9 @@ CWARNFLAGS+= -Wno-misleading-indentation .if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 140000 NO_WBITWISE_INSTEAD_OF_LOGICAL= -Wno-bitwise-instead-of-logical .endif +.if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 150000 +NO_WDEPRECATED_NON_PROTOTYPE=-Wno-deprecated-non-prototype +.endif .if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 110100 NO_WARRAY_PARAMETER= -Wno-array-parameter .endif From nobody Sun Apr 9 21:35:26 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvll369Xrz44JNp; Sun, 9 Apr 2023 21: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvll33h2Jz4MJC; Sun, 9 Apr 2023 21: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=1681076127; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Zmpsk/YH3JWL5aVNlQs+282zlo6WjXx5XYwKyurlvOM=; b=PM9827PQgjzxB3A1VKJNIih83uMhcFaR7FropOVGrJuekoRKES/A7yAdSseFgD1S9prtNY 36bcbhq4fiBR1PP+2aeGUIuRNDCoeuLVmnmatV9aQc6/QozUvTjINAyS/+FVHyCWVbj6aU Oh3K8X/9lmRA1qNszDlz56g0YSfoRpkoW3I6KN+A7MkPZ6r8PKNKUcI4t+iyhM83oKZ9o9 8sfmd5LXU3ImrH5MaoWPBB7L7fPT5LQ1fmwNlSjQ0Wg6CsyfCNf/Du7EUi27/f/3WEFCfV tKaU0UxhG4K3K5CvSPS12lyE1OJJcYvGKqDubhkSqJIad2tSQ0ZPV0CdTdAoyQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076127; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Zmpsk/YH3JWL5aVNlQs+282zlo6WjXx5XYwKyurlvOM=; b=oh+Lx6z6ojzIa6sMfXxVkIILEDDw+1pHkq4LI4hWd1zvbDh1BG6B+1z5LtGDoZaPFiXyUH hEcfxmvB+Ff1AbkA727bOJmdb0xh8Nzk21le6y42Jv7dj9b/ZqLc8UnB7WrJWs9Ji8JyYJ upsgY6DAXwlPiZfo1PLGtk6CzNyRoQ3ubcTs4yi2I6SnYZ/zdK4nA2Ti+Tb7fCw8zofKHa io76Jcn60/lp4Ut9nh5He8eeK3/1f+ksNSeC/2/sI4TjevVpqjQSlTxA/PEL6EApa40hvb BfMht7XCoTjS9IXwLo5xRUCysRqqxGPRbn4i5IilClSjbTVXoqa8lQ3RrUgO/Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076127; a=rsa-sha256; cv=none; b=N73zD64SAPTFQzs3bAPbcl7OzTGP+bQIJ9qGf1Fr2p+gdSUgrvjAN3Wx5ApKehPQ+JtsQz wmMKefmMeZPwDdACnr6PVTXijjbiHfaUYP4mi8RnzoXVWmx0J5jDyKJXCnYe3O3k+2dBOD oCdzPb9WjfA6g20VHCDFc//f2leArmK6A+gHHbMSP1Lmmu1Z9kI74byuPRWdv+2Vx0+/Zy 7mgMPoxB2jK8xcAzSRRpN08qkQY7iMAudeqIRW+Z2vhT/ZLA8P/Q2mP9mYjPuGuFk/htKV 9Eo4mYHiTodCMvbktVnA8u1uTpvq2TOTTtblKCyMzfPpH48gYlKQO12DAxxlIw== 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 4Pvll30LStzPkk; Sun, 9 Apr 2023 21:35:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZQfj081724; Sun, 9 Apr 2023 21:35:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZQfA081723; Sun, 9 Apr 2023 21:35:26 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:26 GMT Message-Id: <202304092135.339LZQfA081723@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 191d5e3704a9 - stable/13 - zlib: silence K&R warns List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 191d5e3704a96611dac2ebaa035fdcd3afd63be5 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=191d5e3704a96611dac2ebaa035fdcd3afd63be5 commit 191d5e3704a96611dac2ebaa035fdcd3afd63be5 Author: Mateusz Guzik AuthorDate: 2023-02-12 21:12:34 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:56:20 +0000 zlib: silence K&R warns Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit eca005d8531fd153f46f941f3101e73cdf181a0b) --- sys/conf/files | 18 +++++++++++------- sys/modules/zlib/Makefile | 2 ++ 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/sys/conf/files b/sys/conf/files index 17dcd22facc7..d1024ae8b8bb 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -4141,28 +4141,32 @@ libkern/strtouq.c standard libkern/strvalid.c standard libkern/timingsafe_bcmp.c standard contrib/zlib/adler32.c optional crypto | geom_uzip | \ - mxge | ddb_ctf | gzio | zfs | zlib + mxge | ddb_ctf | gzio | zfs | zlib \ + compile-with "${NORMAL_C} -Wno-deprecated-non-prototype" contrib/zlib/compress.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ - compile-with "${NORMAL_C} -Wno-cast-qual" + compile-with "${NORMAL_C} -Wno-cast-qual -Wno-deprecated-non-prototype" contrib/zlib/crc32.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ compile-with "${NORMAL_C} ${NO_WSTRICT_PROTOTYPES}" contrib/zlib/deflate.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ - compile-with "${NORMAL_C} -Wno-cast-qual" + compile-with "${NORMAL_C} -Wno-cast-qual -Wno-deprecated-non-prototype" contrib/zlib/inffast.c optional crypto | geom_uzip | \ - mxge | ddb_ctf | gzio | zfs | zlib + mxge | ddb_ctf | gzio | zfs | zlib \ + compile-with "${NORMAL_C} -Wno-deprecated-non-prototype" contrib/zlib/inflate.c optional crypto | geom_uzip | \ - mxge | ddb_ctf | gzio | zfs | zlib + mxge | ddb_ctf | gzio | zfs | zlib \ + compile-with "${NORMAL_C} -Wno-deprecated-non-prototype" contrib/zlib/inftrees.c optional crypto | geom_uzip | \ - mxge | ddb_ctf | gzio | zfs | zlib + mxge | ddb_ctf | gzio | zfs | zlib \ + compile-with "${NORMAL_C} -Wno-deprecated-non-prototype" contrib/zlib/trees.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ compile-with "${NORMAL_C} ${NO_WSTRICT_PROTOTYPES}" contrib/zlib/uncompr.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ - compile-with "${NORMAL_C} -Wno-cast-qual" + compile-with "${NORMAL_C} -Wno-cast-qual -Wno-deprecated-non-prototype" contrib/zlib/zutil.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ compile-with "${NORMAL_C} ${NO_WSTRICT_PROTOTYPES}" diff --git a/sys/modules/zlib/Makefile b/sys/modules/zlib/Makefile index 6391255e512b..178d3a3f7ab7 100644 --- a/sys/modules/zlib/Makefile +++ b/sys/modules/zlib/Makefile @@ -25,4 +25,6 @@ CWARNFLAGS.crc32.c+=${NO_WSTRICT_PROTOTYPES} # crc32.c:586 CWARNFLAGS.trees.c+=${NO_WSTRICT_PROTOTYPES} # trees.c:232 CWARNFLAGS.zutil.c+=${NO_WSTRICT_PROTOTYPES} # zutil.c:27,32 +CWARNFLAGS+=-Wno-deprecated-non-prototype + .include From nobody Sun Apr 9 21:35:28 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvll521WVz44JRk; Sun, 9 Apr 2023 21: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvll473rFz4MQq; Sun, 9 Apr 2023 21: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=1681076129; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hb94c2Rqqgu6eWFdRXnzUXoGL+DPgMYEEIIa06r6tSk=; b=Ddg3eTIgNiPUdQD8kblfotIqG34oOZA49LH+0iArTv50SKxEjBXAlu2JW2QQ4/Z/sM1L3I b12leQQToTZLBgpkrWp3cYhcVlKKKvueNAkdtprQ7YnleaNGobI9lDZ/BbsyhcSVKalWxX SbGrwkTZBHA0dCWrwngCLmFnFxQn5rWpSBqm/4geJJt9HOXbDd1Bsh/4ZDyvTxs9xH+fBh 2sj+AcuCEVKbk1V3VHo4nPbhid1JBSffTKkBuoI77ttP/cVDjyUan+By3f2+dFFAEWyjgp YBvczfyQyOyA7b8TZVWD4129Ulxxs8YlsGSPfroLgyqJuzOxjh5K0OqDPG7mAQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076129; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hb94c2Rqqgu6eWFdRXnzUXoGL+DPgMYEEIIa06r6tSk=; b=dv7Q+IOfhZorV4SUqq72Nppj0o5aXYMjqovUAh9WDyg8BFoFxI0f7HbVeNmqHzBxKpPz2e ztqcYHcboeCPfZqWbjI4vln4DKGF5GW5FWvm7gEmZdFQoRy3qWSyfSUlQxP8RcrfH0wm4R Boqdg/v/94FpfyEhI5rBI2cU72xd7GHJ9Dtgzocc3xOhyrTZtgykjlFCHIbR/qjYDCOfIQ rm4TufYgAI5RJY3q1L2C+klJsPuD5d5HdBSsbDYPLklvzDSM/TJs4AlxBHXDPNkE6zpvec FTc1c23AcdO5kKm8N/epvroJhmKxr9So64zOj4UYd0zW2UbG+jflo3ZduK8kqQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076129; a=rsa-sha256; cv=none; b=Ij2rlX+lss6oyIxTQO95YCPND4FmDRKvVUOOLttzc+JNm3TBq4nQYd6t26pMi8TLn+b76y aaj9yDD4H181vu2+bpe4DvrmUBNgdNElZPQr8LJXl3NCJjNJFXpnJR6uzKs9jM1rmxWMzm jC4RvPeykeXrAG7To5LRHajqeetn0TL4m/U0yFwhN7tUxpOIMfztCJp0MN21uVs35UKX7H iD9sVBxil12JkYSajo9kNYQLBunXhax8Pk5xIE+CFsk1/lA+yQg0gMQVtfJq1APknGgAEO JNxSHXqeyk6mX0SRZNrj2zNcsgDcADixug/CarxnlR/hH7BcYg9Onw1HFsRMJg== 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 4Pvll41H6WzPKW; Sun, 9 Apr 2023 21:35:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZS9c081743; Sun, 9 Apr 2023 21:35:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZSB7081742; Sun, 9 Apr 2023 21:35:28 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:28 GMT Message-Id: <202304092135.339LZSB7081742@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 31f9f7037bc7 - stable/13 - Properly conditionalize clang 15-only flags List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 31f9f7037bc786afd40fe204b0eefedfbcec4915 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=31f9f7037bc786afd40fe204b0eefedfbcec4915 commit 31f9f7037bc786afd40fe204b0eefedfbcec4915 Author: Warner Losh AuthorDate: 2023-02-13 15:19:00 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:56:23 +0000 Properly conditionalize clang 15-only flags Sponsored by: Netflix Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D38550 (cherry picked from commit b9f235ba3178e5315cc1c77c87febd033cf69b3e) --- sys/conf/files | 20 ++++++++++---------- sys/conf/kern.pre.mk | 5 +++++ 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/sys/conf/files b/sys/conf/files index d1024ae8b8bb..2258acd4c9e7 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -4142,34 +4142,34 @@ libkern/strvalid.c standard libkern/timingsafe_bcmp.c standard contrib/zlib/adler32.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ - compile-with "${NORMAL_C} -Wno-deprecated-non-prototype" + compile-with "${ZLIB_C}" contrib/zlib/compress.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ - compile-with "${NORMAL_C} -Wno-cast-qual -Wno-deprecated-non-prototype" + compile-with "${ZLIB_C}" contrib/zlib/crc32.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ - compile-with "${NORMAL_C} ${NO_WSTRICT_PROTOTYPES}" + compile-with "${ZLIB_C}" contrib/zlib/deflate.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ - compile-with "${NORMAL_C} -Wno-cast-qual -Wno-deprecated-non-prototype" + compile-with "${ZLIB_C}" contrib/zlib/inffast.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ - compile-with "${NORMAL_C} -Wno-deprecated-non-prototype" + compile-with "${ZLIB_C}" contrib/zlib/inflate.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ - compile-with "${NORMAL_C} -Wno-deprecated-non-prototype" + compile-with "${ZLIB_C}" contrib/zlib/inftrees.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ - compile-with "${NORMAL_C} -Wno-deprecated-non-prototype" + compile-with "${ZLIB_C}" contrib/zlib/trees.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ - compile-with "${NORMAL_C} ${NO_WSTRICT_PROTOTYPES}" + compile-with "${ZLIB_C}" contrib/zlib/uncompr.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ - compile-with "${NORMAL_C} -Wno-cast-qual -Wno-deprecated-non-prototype" + compile-with "${ZLIB_C}" contrib/zlib/zutil.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib \ - compile-with "${NORMAL_C} ${NO_WSTRICT_PROTOTYPES}" + compile-with "${ZLIB_C}" dev/zlib/zlib_mod.c optional crypto | geom_uzip | \ mxge | ddb_ctf | gzio | zfs | zlib dev/zlib/zcalloc.c optional crypto | geom_uzip | \ diff --git a/sys/conf/kern.pre.mk b/sys/conf/kern.pre.mk index 5fba3e58295b..a12aff2c2816 100644 --- a/sys/conf/kern.pre.mk +++ b/sys/conf/kern.pre.mk @@ -296,6 +296,11 @@ DTRACE_ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${DTRACE_CFLAGS} DTRACE_C= ${CC} -c ${DTRACE_CFLAGS} ${WERROR} ${PROF} ${.IMPSRC} DTRACE_S= ${CC} -c ${DTRACE_ASM_CFLAGS} ${WERROR} ${.IMPSRC} +# zlib code supports systems that are quite old, but will fix this issue once C2x gets radified. +# see https://github.com/madler/zlib/issues/633 for details +ZLIB_CFLAGS= -Wno-cast-qual ${NO_WDEPRECATED_NON_PROTOTYPE} -Wno-strict-prototypes +ZLIB_C= ${CC} -c ${CFLAGS} ${WERROR} ${ZLIB_CFLAGS} ${.IMPSRC} + # Special flags for managing the compat compiles for DTrace/FBT FBT_CFLAGS= -DBUILDING_DTRACE -nostdinc -I$S/cddl/dev/fbt/${MACHINE_CPUARCH} -I$S/cddl/dev/fbt ${CDDL_CFLAGS} -I$S/cddl/compat/opensolaris -I$S/cddl/contrib/opensolaris/uts/common .if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" From nobody Sun Apr 9 21:35:29 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvll55wVDz44JLr; Sun, 9 Apr 2023 21: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvll53jbzz4MTy; Sun, 9 Apr 2023 21: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=1681076129; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=M8VIvXnafN5fHoGBB9dtvXkfQrFuFndjosdoAOE/6Ak=; b=tTMNf/W5TZYoymc6eKGpCCLlF7WTrDJHrflwMhu19oOdPNRKMT7g4wyZr0iUnIEdwLq8vI ZT9iEuvG9GQIEzcWm0uNCRLwKYzKoTBBmfiXe1B9gtezsQsH5YjagqUzOhBbqbscA3bw4j 07BkzcfgbW2tuvOXl+R87Yc+o9in8dQXfYPafkQ2mKQ1miQjdsbhvPVx7a3nmcRTauG1ql e0tvOABcyArzPL0k7V1T7wOgIO7brTptyLTIn2x4FHVZfz0MaV87oVNK1UPwr7x8FKeUzq mrywJSjY+L0UqMG6exxAGCsywHCSXFe2HBMrEQXHzIDeAlj6yKWmOYVCXeBDkA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076129; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=M8VIvXnafN5fHoGBB9dtvXkfQrFuFndjosdoAOE/6Ak=; b=VFQOtr/lUAEcpzOBajbCOVocEFzW7X1ja+8G+8xNVOiaV0C2nHsw+w9W9wDgms6AKR9uQ2 RtlcLYpwwcUP2twLhUOudw664OAsmERV8FYXqpV5f0vdJ87yftpzuBH0c5IW9uXHZwx/sG cBnttJ9Ra5r90H2KHs6cgM6La2xVMaEHK2y5ufci6GS3gIYwbu3SifWfBVSYo9iqkrKISR 9EnRv15tt1caTHva5Eps142Zxm3HKhsExy+MsgT3yFtAbAA/rfXuRZADqh3PvRij6gN/sm gTMxHJ95O2lwnbKNkBI24Q8/e8dsUSnUzjD+HjYnrbkMFDwvDqPgen4Xieu3Yw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076129; a=rsa-sha256; cv=none; b=DIbj//7sVJf76XnE4ew+eK+pUTI508ZaB4dU9kBCY022qAdYAkVh3kaVIpbEpctfZSoGVh 1YV/XVILWYJ6kWcTcmpEZmTNjd65s/ALSUyH6kLoaDALm4j0DfAfOgPujtzKNq+QKQzq44 PVEAk39gaP5jJjh2x2Dqa7/TAMuYBnazOF6XAC606j3rVledDOV2arWXVB7Kg9bcn139Al 2a1bPy2yLqK2zPn5T7u7TbIoUV0c7rNSVy6GJ5sao8uQR37Ur5yBe/1z/0OEBGvZcpHCFx 7fpszdXwD3RpwP7tEE3kTgskkCcDHtfaxY6/rvHiuuIBVIzUN20YkflUhcBb7w== 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 4Pvll51sD5zPF3; Sun, 9 Apr 2023 21:35:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZT2j081768; Sun, 9 Apr 2023 21:35:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZTZA081767; Sun, 9 Apr 2023 21:35:29 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:29 GMT Message-Id: <202304092135.339LZTZA081767@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: f80ddde258be - stable/13 - bearssl: Suppress warnings from functions that have no args List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: f80ddde258beb49d8e12a921743e5bbfdd226506 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=f80ddde258beb49d8e12a921743e5bbfdd226506 commit f80ddde258beb49d8e12a921743e5bbfdd226506 Author: Warner Losh AuthorDate: 2023-02-13 15:19:40 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:56:33 +0000 bearssl: Suppress warnings from functions that have no args clag15 is much pickier than others, so suppress the warning until upstream can be updated. Sponsored by: Netflix (cherry picked from commit 9768746ba83efa02837c5b9c66348db6e900208f) --- lib/libbearssl/Makefile.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libbearssl/Makefile.inc b/lib/libbearssl/Makefile.inc index dd0e242c8ef0..2af4864d8441 100644 --- a/lib/libbearssl/Makefile.inc +++ b/lib/libbearssl/Makefile.inc @@ -4,4 +4,4 @@ BEARSSL?= ${SRCTOP}/contrib/bearssl BEARSSL_SRC= ${BEARSSL}/src CFLAGS+= -I${BEARSSL}/inc - +CFLAGS+= ${NO_WDEPRECATED_NON_PROTOTYPE} From nobody Sun Apr 9 21:35:30 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvll70R1Qz44JV2; Sun, 9 Apr 2023 21: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvll644g4z4MYp; Sun, 9 Apr 2023 21:35:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076130; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=n0ozjufT0Qm2dozEgdP/u+gJW2RB9QDDgcLmhra1wlQ=; b=RQpf+Z6sw5/xBtp8jDRa90AAvlDWukz7Pnsjlu7Tk7wcS+m8KRaZpAZ38RLPPGzQTJJ09F JPDpXiK4hfcPRoqo+0pWI8FXVBTOPI0kL02kGh29j0CvqYoCP6KI5Q6uWTqUiUh17u0J1l oOUPuaxWnhnK4nPBgk1m/HfcWSG1FSH1XFCibE+KipTKa7Da/pHcTxqqpIaOCYR/M9j3Y0 dHZfy3qN9+5avY8qw+Y6uenfZPCSOD2aZGfMStFCMbx0Ask/d/5g05hdve7AmglhKE9ePX QQr1K1EGVTV/9m21IebH5THwDVYxE7jcAug170cX78riwEtfqMxuDYo0dhnRlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076130; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=n0ozjufT0Qm2dozEgdP/u+gJW2RB9QDDgcLmhra1wlQ=; b=TC31lw6Tw2sV0ierhE8VPzAzPFj2F0eCozj0jbRmc8lhlGoYtRtDsZHf6y4skGOke4TIL2 1QzS2nNF/SUjU3UilbGKGgfkKlk6G2T8XYQ3bKrbnFScHHAO9kmtxO261websnKDecQm0x VE0PQasB/bpN205ABQQuLKVs2YU5TG9W99uPFW7N2IGkyNeVa8p3Ot1vA/4vseRqiTpQRu Exvj7VACsjOIMDqzx+1qDR/058EOjAuBKVG4HMNqjL1qZLv6wz1MsHWUw1cLdLAlpd+awU gcuvPofMaLG3Rwg5PdhzLCZ1CEuqXolzbHudmoV3PEExNzl+U4ScwJuPCgcAag== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076130; a=rsa-sha256; cv=none; b=nET/k3Dvklx0v3mOmE7gJ/Q5fdJ4WiCtPK0fH5kcA8tuTidywUDosG0dvUBaC2Tc2zVuTk Rjtce/jo5+uX1yO+g8hWTPiiqIzjSlXpMqZaoKax1BNZ4e/11//b3rSI1RtKQ/azEunB3z kKgUwczerYAOFSeMVvqCdp8h6MHcSy0sGgt3hnIRs7t7FHeBMxSgzvvgTtANn7xcartsEs 5ZfEKZSMWscSrpwPOBPzmxq1J6TzdvMJzNF5ZmqA7EcDmjSzkz4d5tC44KlthP8YJmeM1c NOUtB4jAPoK1rA4MKm2kWWS38eJH0LpuK8tR7DFpjhLuj2fqZfOrZvnB9XWZyQ== 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 4Pvll62r4rzPF4; Sun, 9 Apr 2023 21:35:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZUo7081789; Sun, 9 Apr 2023 21:35:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZUYG081788; Sun, 9 Apr 2023 21:35:30 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:30 GMT Message-Id: <202304092135.339LZUYG081788@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 90b910f1534f - stable/13 - zlib: Use NO_WDEPRECATED_NON_PROTOTYPE List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 90b910f1534fc6f76b79db9107032ee4395ee94c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=90b910f1534fc6f76b79db9107032ee4395ee94c commit 90b910f1534fc6f76b79db9107032ee4395ee94c Author: Warner Losh AuthorDate: 2023-02-13 16:15:58 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:56:37 +0000 zlib: Use NO_WDEPRECATED_NON_PROTOTYPE Also add it to kern.mk so it's available for module builds. Sponsored by: Netflix Noticed by: mjg Fixes: b9f235ba3178 Differential Revision: https://reviews.freebsd.org/D38550 (cherry picked from commit b80185c267243a57bbc3e03fd2b47680672d6050) --- sys/conf/kern.mk | 1 + sys/modules/zlib/Makefile | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/conf/kern.mk b/sys/conf/kern.mk index b6b59a9f13b3..4abef91c7805 100644 --- a/sys/conf/kern.mk +++ b/sys/conf/kern.mk @@ -53,6 +53,7 @@ CWARNEXTRA+= -Wno-error=array-parameter CWARNEXTRA+= -Wno-error=deprecated-non-prototype CWARNEXTRA+= -Wno-error=strict-prototypes CWARNEXTRA+= -Wno-error=unused-but-set-variable +NO_WDEPRECATED_NON_PROTOTYPE=-Wno-deprecated-non-prototype .endif .endif # clang diff --git a/sys/modules/zlib/Makefile b/sys/modules/zlib/Makefile index 178d3a3f7ab7..b5a55b9812bb 100644 --- a/sys/modules/zlib/Makefile +++ b/sys/modules/zlib/Makefile @@ -25,6 +25,6 @@ CWARNFLAGS.crc32.c+=${NO_WSTRICT_PROTOTYPES} # crc32.c:586 CWARNFLAGS.trees.c+=${NO_WSTRICT_PROTOTYPES} # trees.c:232 CWARNFLAGS.zutil.c+=${NO_WSTRICT_PROTOTYPES} # zutil.c:27,32 -CWARNFLAGS+=-Wno-deprecated-non-prototype - .include + +CWARNFLAGS+=${NO_WDEPRECATED_NON_PROTOTYPE} # https://github.com/madler/zlib/issues/633 From nobody Sun Apr 9 21:35:31 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvll86dZpz44J91; Sun, 9 Apr 2023 21:35:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvll81s8gz4MRR; Sun, 9 Apr 2023 21:35:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076132; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+8iztwTOzStrZyoJIEJPhmeDHpgk4K0PXQ5jB+VT0gQ=; b=tZ5HnnkYqzsThUEkBEmyzuSs8NFiQQdOwUKtHCmYw8JsRjsikUS02a+nBrLA7IQnWECykW G0znepAnpjJLnK2feAuBGA6G6LEWlQvqWpbftWyafnBFa9RSorK4sgrkK/qF5mJZxhYolE 2KyDCS2Bvmi/xbfqkr83CiKlbwzaVGKqZIQ5gU/D21YA3gEohw4ukPMEyL4rcnEbCvrsIb DcRyYYjBXFimxHReZz4DbsuQ8Co1DF7Qos0WrMxVnZzLiW+4b7CpfNbKzOs60lbeF7UBH/ BUON7vvutPKI/xDFDAB2Yy87K1YDk0VMJT3JQdBbNjd4I7kjeJhdC1LSyqCxbw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076132; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+8iztwTOzStrZyoJIEJPhmeDHpgk4K0PXQ5jB+VT0gQ=; b=bDVQmF9QWmt9HrMHqKN5HjYNC09C4SSOTdWOV+YxE5l7XXZzBKdVa5gFL4FrGpaxl9agzb glopeFPeGP6P7lKSPoq2ZSP/Nbj/D97NlIbXVAc/nJU78nSyrlba9y83onz/iisWk01zMA Cd1MPmfJY/MPJBe+2jX2M2dEHGcmzMtWdGESSrF1GkzW420Il1GUs7qZVzXQnd/pvsbNcG hQdktceU+GS2RncJol2ZOS3EKeQ6wKCoTJgyEI4WCbDeHPhiQMCX1wUl+oKw1lHHZYi89U fYuArilxlGwzecjDtX+gpF0oekpb5HXo7dw7BRkyqcieizq/YrViKWHEAcp8rg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076132; a=rsa-sha256; cv=none; b=Qm3nyia2SzyXpyqS2rhtIxzCzTfdJiBW1yOHdjgxTf71h1IBWA5wpsCBjxLKUVJMq2mX9J NiKcOIuRWFZSt4O0plFQksloxJtV5Tv8KlfM8Mq2G80ckwwunZ0ppxirEyx+iDGAqhvlcb Qoxbp+ybHYR+ewegfLoMvJIu8zWDENQf6zFehsdQ74XzTKNG9Wg78XizVKtm5Xt+vzbLpg QBMoMns/Uf2ycDvOUXYsVBtPYa0GEhYN9BIths/XRgqz3FGsbcIGlfT9Yn3Z4oBrmpkeCc mmoB8hS6aDEo2MmCqHsGl6SmfiYz5avGZTByzqnToQzLUJ9Za5FTAN2nqaeCRA== 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 4Pvll73d9VzPF5; Sun, 9 Apr 2023 21:35:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZVJm081808; Sun, 9 Apr 2023 21:35:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZVCn081807; Sun, 9 Apr 2023 21:35:31 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:31 GMT Message-Id: <202304092135.339LZVCn081807@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: bda1244f0193 - stable/13 - sendmail: silence K&R warns List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: bda1244f0193ba23ad20c721796ec58b2bb7d991 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=bda1244f0193ba23ad20c721796ec58b2bb7d991 commit bda1244f0193ba23ad20c721796ec58b2bb7d991 Author: Mateusz Guzik AuthorDate: 2023-03-16 18:18:48 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:56:45 +0000 sendmail: silence K&R warns Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 95a2b4d17234fb78177add37c8882d133855c3d0) --- usr.sbin/sendmail/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/usr.sbin/sendmail/Makefile b/usr.sbin/sendmail/Makefile index 3a74a200f2ed..12e58ac3df5e 100644 --- a/usr.sbin/sendmail/Makefile +++ b/usr.sbin/sendmail/Makefile @@ -62,6 +62,8 @@ CFLAGS+= -DTCPWRAPPERS LIBADD+= wrap .endif +CFLAGS+= ${NO_WDEPRECATED_NON_PROTOTYPE} + # User customizations to the sendmail build environment CFLAGS+=${SENDMAIL_CFLAGS} DPADD+=${SENDMAIL_DPADD} From nobody Sun Apr 9 21:35:32 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvll94w6Kz44JM3; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvll90Pcfz4MXV; Sun, 9 Apr 2023 21:35:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UvcIRozp6LkNHcKuVVr5zM2Xi1uZe+ohps+fuV2QBC0=; b=CCrWt48OeL0TQzUVof3s6mBn9vSXRvrm8m3xif5B1oMQh4EnXJ0pmMkGDdK/udaaMch1yk wUsXy6lB5I+EZb+DCRkDT14qhTzQ9KucEx3cOSfQfCJdEGdRvTq+ghVoS9mkqS6lpC0FCv /JctHY54UvektPsDkzLY+paec3Qg+My2qQppsHCSmGaN2q3sNSglWEzJBVu3iGQNFbhsvf Vt3E/G1fQsFKcca+eEwOPFPG4vUGrgElZKUyWLL7b8T8xq3U/4tkiWCU8akxc34Hv9wX63 HBJfWjPhX0prScTgTafWOgdxlQ58javuwZ16CLhiEtBiDH/Vx7UmVHXm3IgXIw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UvcIRozp6LkNHcKuVVr5zM2Xi1uZe+ohps+fuV2QBC0=; b=DiqbfBd6zib1S1foVHMVoUGwYkBOSTV2u0dIf43hWEaUvg17tXroRnhwJuRf3WKdjjHNW2 MC61xnbEksHC0/JiLja4yMj1ddgbGUItxedBFV0qGJDve4U1e2vdb6vFzFiqI9qkY03oF6 8EQSzDAyi4OeUe6eYT+eBZOkDPzD6v5YqNFGeA8WB7CmEyoMp1sfn6zCq3EBRqetcHs8aw SwHxMdI7B6sbgByP/4GqyiX9CGeYPcrIXQAUVG7LYLJJXmsSMTENEbjp6TsvNhulCl6qBw qsSRHaSovJrP3px5U4wLOOEV/BcDupPuwtAKz9vm7AILIzolJQvaS01UHokHEg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076133; a=rsa-sha256; cv=none; b=JOgCgGIZaXnRGTNhOgGZPHy28tZ4nqz6ueIrBtD6RLKo7yZjBq390jXdTUITHJ7IXz6/O0 uX4NHpso6v35p1xtaNFOkJ/aNRpUXfhdViVq3FLFl/hh2ut4jerjmkM/Y7By0H1+++SLdS prSz2pNSwZgCLKU6JRrm+/nnxlHvjBQbt4DIcCNQ6WWkTfEGGelmh2lY9rU/fzN5jS0QbP tZ9hlLrL49nOiHsyZ0tUakjMEoKtlLmyavQE9UluNHgz4ree16kyKAf9K3P1U+W/O+BPcT ciu4l31NzlZMGqOZrBQA5uP1sPvzHqBt+Ep7sM5KstcC7GbOM1OzHqaRbRnAfg== 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 4Pvll84lDPzPhH; Sun, 9 Apr 2023 21:35:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZWqe081827; Sun, 9 Apr 2023 21:35:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZWrN081826; Sun, 9 Apr 2023 21:35:32 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:32 GMT Message-Id: <202304092135.339LZWrN081826@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: f7ddc6a1667f - stable/13 - libz: silence K&R warns List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: f7ddc6a1667ffe4f6fa563f22debd10cc63ff637 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=f7ddc6a1667ffe4f6fa563f22debd10cc63ff637 commit f7ddc6a1667ffe4f6fa563f22debd10cc63ff637 Author: Mateusz Guzik AuthorDate: 2023-03-16 18:22:24 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:56:49 +0000 libz: silence K&R warns Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit de0009f001c2aa0bfb9349d9e08199c46b1af707) --- lib/libz/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/libz/Makefile b/lib/libz/Makefile index d6155b6955a6..11df0801a7b9 100644 --- a/lib/libz/Makefile +++ b/lib/libz/Makefile @@ -53,6 +53,7 @@ CFLAGS+= -DUNALIGNED_OK VERSION_DEF= ${.CURDIR}/Versions.def SYMBOL_MAPS= ${.CURDIR}/Symbol.map CFLAGS+= -DSYMBOL_VERSIONING +CFLAGS+= ${NO_WDEPRECATED_NON_PROTOTYPE} INCS= zconf.h zlib.h From nobody Sun Apr 9 21:35:33 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllB4Pr9z44JV7; Sun, 9 Apr 2023 21:35:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllB0Npxz4MRs; Sun, 9 Apr 2023 21:35:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076134; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=weFFw6ZIEXdfRY1+9a5h+px4hX9x43+0GUNszXCRRVg=; b=nWMqi33WI1HZcwZSPQR4NZKqDq1Ko86XUk5sFAkRIhH9nmyaYhksB3Gz8tuytRcOJozHY5 2wFAPzxT8A9jKmBEoSeIpumsUB8MhMjarjGW4xhqM5relyJtr4IxFsl9B4Gx08nU/+Pghb 6yl4/hXk/8uvnyNFzFqhD2/q09DK4f4CGdwh/cYUAmn7qLvu7UThx1D6RSU3i/V7Y33qme mwJKATahGKTl31yK4J0wasyu46E/NblzU5t9QZSIZZsG+0C/nWFa7BRrprUXASLsNIUjua 5XhgKLUeMESDaHSJph+LLnRUrsiFfGW1M+nCDSQ2XttsVCsWBqj881WsYN0YjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076134; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=weFFw6ZIEXdfRY1+9a5h+px4hX9x43+0GUNszXCRRVg=; b=ZOZpB4vij0wMAGLMq+uBb8jFeiUDSurgXzRJ+IIUbVAp5dJ+FcSrCVUfGJFp1JNJBr21el P+1ZNyUUzdujM1w1xFvNFv/2iR6K4Zo024hlJBbBf5v+mK2Qcw3B6VUmSD0yNXTL6X+OHb 8Go0806jo5q4BaDzjFzotvnuapY73lgznP6PpFpPa9hsfUvV0hSa3eWlltuK3fXeO/oyRt XFwumRsZV4a2LIPp6LdLF3qepbO2BImusVaD5tgEEM+mKIp96eU94OLnBDsulv9BRzC57j IQfZE++HhbfA5/tkXYUnot2oCnPNPrL3PI2wX+VkCFbl64kJHEmYOTEbmG1Wcg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076134; a=rsa-sha256; cv=none; b=HVwuZH7lxCg72Npc5R6IoFVylTPlySx+fT4EMS74f1NDgErmsMMg1vTWJ9qjUjwCTmO7Qw bO/J4HK/ItOlsgxFVwylkpCyQBEfEdgHBrP8nS98+plbl24WHshTrfbtF5V6zU13WFfDl5 3UjNZknwmHA8817hPAOgf2p5FSqg37H20XJxToBckYyUCIUfdcyZIPgCHhunHKPwQMugC/ cPXn1ue8FjfiHTTqkFFiAYclLvrfAh7tmGEL/veaZJ0P3YkKDL7TIQtCFYK2rJW+cxisk9 Ww6QhBePQxgFPrQ1DNOEirXonJle6g4rYzpz+YQFoEpTyqxZDIeLLUqWGfG6pw== 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 4Pvll95VkHzPf9; Sun, 9 Apr 2023 21:35:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZX4u081846; Sun, 9 Apr 2023 21:35:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZX5F081845; Sun, 9 Apr 2023 21:35:33 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:33 GMT Message-Id: <202304092135.339LZX5F081845@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 6f2a60511cef - stable/13 - less: silence K&R warns List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6f2a60511cefcd38cb59c2368844861c95f65f64 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=6f2a60511cefcd38cb59c2368844861c95f65f64 commit 6f2a60511cefcd38cb59c2368844861c95f65f64 Author: Mateusz Guzik AuthorDate: 2023-03-16 18:24:12 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 14:56:53 +0000 less: silence K&R warns Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 3451ed888e7519ba620e7372ba620500c47bdc8a) --- usr.bin/less/Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/usr.bin/less/Makefile b/usr.bin/less/Makefile index 012554401d20..4719da5eaaed 100644 --- a/usr.bin/less/Makefile +++ b/usr.bin/less/Makefile @@ -19,5 +19,7 @@ LINKS= ${BINDIR}/less ${BINDIR}/more \ MLINKS= less.1 more.1 CLEANFILES= less.1 +CFLAGS+= ${NO_WDEPRECATED_NON_PROTOTYPE} + .include "Makefile.common" .include From nobody Sun Apr 9 21:35:34 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllC6L1rz44JY4; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllC3PyTz4MrD; Sun, 9 Apr 2023 21:35:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076135; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5V6wThQlLNsLFmRdp0gT6TcVaQfDQrv2xbgo/9KpTG8=; b=P/SWIIcYSeLuGw4Y5+Oz8Hx0rfKa2Npfj5WXk2MmzgkGvIQx3uNG77hld/vI5K9/fxo0s2 cFTFnW8EGMMCmr1oTLI6FLMy3HMTDsMZ9S1U153PLDFFRQz6orjoS79kQxsCxR8GybeFAs 4e5cP8upq1O3IEvkCWpv2lb4ZyYkpWpq/8tg3UDrrWa1BPOI8H5dYXVbTsl+BMdgBFgrw1 8VLE4P42dsI6D1jOPshZs4x18yPGz0LZ1cErKRgoSFNZ0Ru4SSyQpZL9gaLn4dBeKrfHId 7H3uyiiG62ODr1vgvMjlm5Sspp/UfnHduZRYKr4N2X2Hv8UVnTg7m1zZKdi4JA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076135; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5V6wThQlLNsLFmRdp0gT6TcVaQfDQrv2xbgo/9KpTG8=; b=bwxhQW9SkYAL60w7cAQQ38BJ8elFP1c7nyph3onAOAMyOj9lQcU+QIOKFvKYhs01jIUqVg P9GL/M1fwOBsVSD3OyTbouHWUYgAsII3Gbs6DMjJ4MdjQNfa8kY10E/kLKwj/xusV1V7HZ Oxwpn9fYEj3gk69nK2IqV3x9vmePf7Tj83TqQkLOtTcuSevZqOMJ8gF4arfZR5TqC20Rlb yDa+XlT67wp5bN+2pnOf2vOzZCjo+7clnwLQ+2Uzr+oAl71UzSHfkeYQJm1ClBOmqaZThP LCxocNvlvk1tUgidmrJrwfehdfXI7zMJfEW0GI83wuMBeqhZFZxpff//kXIkyw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076135; a=rsa-sha256; cv=none; b=IXeROSXP/F+5Pd5FxAWg/0Sah1EAWl6/VmjXuQhs7NQuPmgmtp36kMRx+R/qDfow7zakNB kzhMxqpNsG7rWRJjH1t/1slV5g10NdCeeUdlnH5YWO1vC6HYqNegi+Aikf6soRo8a11Gjg kFBSmSFh5mOceNr1X1gAXC02bBa1vnDuHVgU45M7ndgcwXY8WLaGJF+Ts76mdRjRrHso59 9z9o209PvO+05Xeq7pqH26sH4xOlEkNd9S/NnHmGxbAA4s3v3pVK8yDEl6ytqX6dDvnkuE WrxJNAZ7B+tG9hMWzD9ScBuuK6kNJ9Bm1ENGTziiJs2FdVZYzOoD8lYPqPSeEw== 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 4PvllB6WKFzPkl; Sun, 9 Apr 2023 21:35:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZYCd081868; Sun, 9 Apr 2023 21:35:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZYRk081866; Sun, 9 Apr 2023 21:35:34 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:34 GMT Message-Id: <202304092135.339LZYRk081866@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 482a0e57303c - stable/13 - Fix unused variable warnings in sctp_indata.c List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 482a0e57303cc392fdcdeb53d4ef6adbaaba74c2 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=482a0e57303cc392fdcdeb53d4ef6adbaaba74c2 commit 482a0e57303cc392fdcdeb53d4ef6adbaaba74c2 Author: Dimitry Andric AuthorDate: 2022-07-25 19:15:52 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 15:20:16 +0000 Fix unused variable warnings in sctp_indata.c With clang 15, the following -Werror warnings are produced: sys/netinet/sctp_indata.c:3309:6: error: variable 'tot_retrans' set but not used [-Werror,-Wunused-but-set-variable] int tot_retrans = 0; ^ sys/netinet/sctp_indata.c:3842:20: error: variable 'resend' set but not used [-Werror,-Wunused-but-set-variable] int inflight = 0, resend = 0, inbetween = 0, acked = 0, above = 0; ^ sys/netinet/sctp_indata.c:3842:47: error: variable 'acked' set but not used [-Werror,-Wunused-but-set-variable] int inflight = 0, resend = 0, inbetween = 0, acked = 0, above = 0; ^ sys/netinet/sctp_indata.c:3842:58: error: variable 'above' set but not used [-Werror,-Wunused-but-set-variable] int inflight = 0, resend = 0, inbetween = 0, acked = 0, above = 0; ^ The 'tot_retrans' variable was used in sctp_strike_gap_ack_chunks(), but refactoring in 493d8e5a830e got rid of it. Remove the variable since it no longer serves any purpose. The 'resend', 'acked', and 'above' variables are only used when INVARIANTS is undefined. Ensure they are only declared and set in that case. MFC after: 3 days (cherry picked from commit 05b3a4282c408f495add570bbca12242dd006279) --- sys/netinet/sctp_indata.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/sys/netinet/sctp_indata.c b/sys/netinet/sctp_indata.c index b8bfaf164904..aa6787257a13 100644 --- a/sys/netinet/sctp_indata.c +++ b/sys/netinet/sctp_indata.c @@ -3837,9 +3837,10 @@ static int sctp_fs_audit(struct sctp_association *asoc) { struct sctp_tmit_chunk *chk; - int inflight = 0, resend = 0, inbetween = 0, acked = 0, above = 0; + int inflight = 0, inbetween = 0; int ret; #ifndef INVARIANTS + int resend = 0, acked = 0, above = 0; int entry_flight, entry_cnt; #endif @@ -3859,13 +3860,19 @@ sctp_fs_audit(struct sctp_association *asoc) chk->snd_count); inflight++; } else if (chk->sent == SCTP_DATAGRAM_RESEND) { +#ifndef INVARIANTS resend++; +#endif } else if (chk->sent < SCTP_DATAGRAM_ACKED) { inbetween++; } else if (chk->sent > SCTP_DATAGRAM_ACKED) { +#ifndef INVARIANTS above++; +#endif } else { +#ifndef INVARIANTS acked++; +#endif } } From nobody Sun Apr 9 21:35:35 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllF5qfNz44JKw; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllD503gz4Mjj; Sun, 9 Apr 2023 21:35:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076137; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ovg3J0X9ujSRyL2YYum1yisJp5A0RcPz47anhX++k3A=; b=MmhlbYpEQKqMBlUbWAMn86QsLoZOrPPmIi4ruHcZTp8kjAIFV8DEgQNtzizi55vbc86/D9 Vjjbb69xG0gTsHqqLwdoC+IbCSad1hBGK7mWNt4XNO7tLnlnU9Wl7q//tHdYcKMlw59+VS /lt7Z3KaTWe6QJSP/FB1q0NaLuoP6TiHkCxP2TbsdFdImyQkeyQg5tVZXHJEFzyN/DegWe 9xfCNhkEipNOyYpKZthSO1i+5m0nfrtOraSPGTU50vG8lr0liAhuU+0EMy49Ox0cWtOh/2 FMOEww1gCj/Jr3JVN8DX1YDZBWH/ju29WCbUXQJHVlbaiefmWPqlOjEIXYl2Rg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076137; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ovg3J0X9ujSRyL2YYum1yisJp5A0RcPz47anhX++k3A=; b=Eylv5b38XQADc3TiBnXQFL5QtPelKq4lGtHC3YHmBBVSts5PMwzgHPePBSnOieUv7QCBAS c+DUfc/TSKyLA3HNwkNWi0XmASx2dd3ESxeX0ni9l9oLsmct9kIdddei4pnJG4E+HS3gFA E3uzKgh+eS2bbwbGCLoKPP/dn226AsPe+fpVbwTY4KfdJ8SAt8OiMiiZz0/LHqJvXqjY+K sCgeNBL7JYfC5E6jPcAkI+ela+xpqYR3bAu+LkeDXObf+nYF79rgwbTSE4OXwqvRHP86RB gT5bCt6rs7bc6dBkKNqWTO2Fh6kwTLexokpmlLE0uyVVaV1C5ccuYcV504P9fQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076137; a=rsa-sha256; cv=none; b=n0bx/So1FPH44KL/CNvUAPAKI43797LiIscziUBRAycIiC2FOoRS0twCO2XXkYhWxZ9uHy ROK7xVKxahp4Gcgwfh09WAUj9rdCgsg5hS9O0IlIQ9odlF4t6MsJiJUxljv6pEA18f06QR cCm1iHhhOwdMXc963uE1gTMnN318E8Tx2PuFAdwzyIiJajOZjU4/SIthjojgG66mQm2WSJ zd4pzKvur7i2MDWZGurE0at8FIM2Tn+XygsMrio1kxo6DvF07j1IFCKaBigH0AOlvScEfQ G3Gn7hgjc4SfbQy10uzKE55lfHz1VxwwujpTFxZbaxvlyoBGTDbtqevcy2v10Q== 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 4PvllD0PwBzPF6; Sun, 9 Apr 2023 21:35:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZZKg081901; Sun, 9 Apr 2023 21:35:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZZdT081900; Sun, 9 Apr 2023 21:35:35 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:35 GMT Message-Id: <202304092135.339LZZdT081900@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 29d88c3b0bfc - stable/13 - Update CWARNFLAGS in bsd.sys.mk and CWARNEXTRA in kern.mk for clang 15. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 29d88c3b0bfcd4974f7e84618bfb492ce88fffb1 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=29d88c3b0bfcd4974f7e84618bfb492ce88fffb1 commit 29d88c3b0bfcd4974f7e84618bfb492ce88fffb1 Author: Dimitry Andric AuthorDate: 2022-07-25 10:29:58 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 15:37:03 +0000 Update CWARNFLAGS in bsd.sys.mk and CWARNEXTRA in kern.mk for clang 15. MFC after: 3 days (cherry picked from commit 526f57bf85a2b9b113c55ded47b932abc8567bc5) --- share/mk/bsd.sys.mk | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/share/mk/bsd.sys.mk b/share/mk/bsd.sys.mk index b11ba2ddabcb..cb4399610d0e 100644 --- a/share/mk/bsd.sys.mk +++ b/share/mk/bsd.sys.mk @@ -49,8 +49,11 @@ CWARNFLAGS+= -Werror CWARNFLAGS+= -Wall -Wno-format-y2k .endif # WARNS >= 2 .if ${WARNS} >= 3 -CWARNFLAGS+= -W -Wno-unused-parameter -Wstrict-prototypes\ - -Wmissing-prototypes -Wpointer-arith +CWARNFLAGS+= -W -Wno-unused-parameter +.if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} < 150000 +CWARNFLAGS+= -Wstrict-prototypes +.endif +CWARNFLAGS+= -Wmissing-prototypes -Wpointer-arith .endif # WARNS >= 3 .if ${WARNS} >= 4 CWARNFLAGS+= -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow\ @@ -59,6 +62,11 @@ CWARNFLAGS+= -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow\ CWARNFLAGS+= -Wcast-align .endif # !NO_WCAST_ALIGN !NO_WCAST_ALIGN.${COMPILER_TYPE} .endif # WARNS >= 4 +.if ${WARNS} >= 5 +.if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 150000 +CWARNFLAGS+= -Wstrict-prototypes +.endif +.endif # WARNS >= 4 .if ${WARNS} >= 6 CWARNFLAGS+= -Wchar-subscripts -Wnested-externs \ -Wold-style-definition @@ -83,6 +91,11 @@ CWARNFLAGS.clang+= -Wno-unused-const-variable .if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 130000 CWARNFLAGS.clang+= -Wno-error=unused-but-set-variable .endif +.if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 150000 +CWARNFLAGS.clang+= -Wno-error=array-parameter +CWARNFLAGS.clang+= -Wno-error=deprecated-non-prototype +CWARNFLAGS.clang+= -Wno-error=unused-but-set-parameter +.endif .endif # WARNS <= 6 .if ${WARNS} <= 3 CWARNFLAGS.clang+= -Wno-tautological-compare -Wno-unused-value\ From nobody Sun Apr 9 21:35:37 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllF5lYGz44JVG; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllF3RQjz4Mv8; Sun, 9 Apr 2023 21:35:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076137; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7AOBekUoDF6tGbBn87EOOaAWDzTYeBHb7W9en2vd50k=; b=MkzQhQtgjje6iZjGOwA2tlQMMG7coYUinZupkmW1mncMPzzp35iIwfbtLEYUQ2zcSYbyN4 UOx2ktOahDT2gAAVm0AIh3zgWdGjqjVLAa3oS8tNHqIuE7ThGSbCMs8rEYBiTXBPPwn7Zt kIUMjvVV7BPoKVO79q6TyRHGEu6YdrWpCieMzGheSknUUDPy1qjNm9MlzLvS8XbLW0c+fr Ha2kMrPitTV8JGyQT5habL4ZkZsfJAgdkVdgluIZpsJ387XCtECsefSvoXo26+N9r5gi8f PJoHfZrTdI6DsxYVlexOOLG/YbELHSqsIptUs+3X7MQwjrtYiq0LoiwEGcDxNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076137; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7AOBekUoDF6tGbBn87EOOaAWDzTYeBHb7W9en2vd50k=; b=Yg3yyvKp3PVkvXkF0l9QkOm9mgiTZivsBC0K8vD7jRnKjF+AGQlr1viziyCoGAk8qCyqdj Ax9vO9Kjiy4Q/HiMoX7omBKRz6A+p41nt35YTer74dfKTVBSR8Lh4EHLRamXRJF7SL9A3r tduGRprIbnqwW4eKbzHEEI6iAVpFoa2CQ8s6trP2qW3rwl7Hh4uC0IU5td3+ccEHU7mYby azkOtu15GQ9MuJBKE+OE5tPFXBkqCX0zFspsEBwWZkp+1rfSaI/XBxiIR4gFAvU2CXX8Rd bSgyA+dPgwIHvqJBWRejtGHrrgdihR85qR9eRINpvslaRe/s7FvA5+tKnkyu9w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076137; a=rsa-sha256; cv=none; b=aN4zX+bFhxRNTnhkete1WO4iVtFdZ2PwKofod3DoBh3r5/QU5cO7O7z5t9BVTqHg7gqmjF AeBWu7C2iKkUYjsnIysqjHYoYglUQ0xjEqTLOR/zyg1TS0IBLfj3dHDFfshSvuoiXrG7dn 9Lso3gz7cmedByIw8wk14fd0voWTf7ltbIXzZUmEZQAtHA8MbB5KFM3B01zDbXUsaQWNTW cyyOKZhP2FKYDn8Cvah9VImxiqe4DovKk+e1LNnVM3Nhvy/t6ExO44CvAH/Rhinea4cLvq ja6qm1znd1Z9ULnVZvt7sV1mK8PDw3GMFc3jEAX2Srk0PmQ2YoBBJOl1PslHrQ== 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 4PvllF1SCczPcR; Sun, 9 Apr 2023 21:35:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZbTv081920; Sun, 9 Apr 2023 21:35:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZbdG081919; Sun, 9 Apr 2023 21:35:37 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:37 GMT Message-Id: <202304092135.339LZbdG081919@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 884bcc57c2f3 - stable/13 - amd64: ansify List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 884bcc57c2f336dee66b05bba5d9ec96ea952f65 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=884bcc57c2f336dee66b05bba5d9ec96ea952f65 commit 884bcc57c2f336dee66b05bba5d9ec96ea952f65 Author: Mateusz Guzik AuthorDate: 2023-02-07 22:52:06 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 15:37:09 +0000 amd64: ansify Reported by: clang 15 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit b2c68dc6d9b31de853664ac9277816678d2c9181) --- sys/amd64/amd64/db_disasm.c | 23 +++++------------------ sys/amd64/amd64/machdep.c | 15 ++++----------- sys/amd64/amd64/sys_machdep.c | 8 ++------ 3 files changed, 11 insertions(+), 35 deletions(-) diff --git a/sys/amd64/amd64/db_disasm.c b/sys/amd64/amd64/db_disasm.c index ac71d7e06609..54f7beda1169 100644 --- a/sys/amd64/amd64/db_disasm.c +++ b/sys/amd64/amd64/db_disasm.c @@ -1045,12 +1045,8 @@ static db_addr_t * Read address at location and return updated location. */ static db_addr_t -db_read_address(loc, short_addr, rex, regmodrm, addrp) - db_addr_t loc; - int short_addr; - int rex; - int regmodrm; - struct i_addr * addrp; /* out */ +db_read_address(db_addr_t loc, int short_addr, int rex, int regmodrm, + struct i_addr *addrp) { int mod, rm, sib, index, disp, size, have_sib; @@ -1113,11 +1109,7 @@ db_read_address(loc, short_addr, rex, regmodrm, addrp) } static void -db_print_address(seg, size, rex, addrp) - const char * seg; - int size; - int rex; - struct i_addr * addrp; +db_print_address(const char *seg, int size, int rex, struct i_addr *addrp) { if (addrp->is_reg) { db_printf("%s", db_reg[rex != 0 ? 1 : 0][(size == LONG && (rex & REX_W)) ? QUAD : size][addrp->disp]); @@ -1145,13 +1137,8 @@ db_print_address(seg, size, rex, addrp) * and return updated location. */ static db_addr_t -db_disasm_esc(loc, inst, rex, short_addr, size, seg) - db_addr_t loc; - int inst; - int rex; - int short_addr; - int size; - const char * seg; +db_disasm_esc(db_addr_t loc, int inst, int rex, int short_addr, int size, + const char *seg) { int regmodrm; const struct finst * fp; diff --git a/sys/amd64/amd64/machdep.c b/sys/amd64/amd64/machdep.c index 3c365b5d6e62..c27e15c7e1a4 100644 --- a/sys/amd64/amd64/machdep.c +++ b/sys/amd64/amd64/machdep.c @@ -227,8 +227,7 @@ void (*vmm_resume_p)(void); bool efi_boot; static void -cpu_startup(dummy) - void *dummy; +cpu_startup(void *dummy) { uintmax_t memsize; char *sysenv; @@ -591,9 +590,7 @@ DB_SHOW_COMMAND(dbregs, db_show_dbregs) #endif void -sdtossd(sd, ssd) - struct user_segment_descriptor *sd; - struct soft_segment_descriptor *ssd; +sdtossd(struct user_segment_descriptor *sd, struct soft_segment_descriptor *ssd) { ssd->ssd_base = (sd->sd_hibase << 24) | sd->sd_lobase; @@ -607,9 +604,7 @@ sdtossd(sd, ssd) } void -ssdtosd(ssd, sd) - struct soft_segment_descriptor *ssd; - struct user_segment_descriptor *sd; +ssdtosd(struct soft_segment_descriptor *ssd, struct user_segment_descriptor *sd) { sd->sd_lobase = (ssd->ssd_base) & 0xffffff; @@ -625,9 +620,7 @@ ssdtosd(ssd, sd) } void -ssdtosyssd(ssd, sd) - struct soft_segment_descriptor *ssd; - struct system_segment_descriptor *sd; +ssdtosyssd(struct soft_segment_descriptor *ssd, struct system_segment_descriptor *sd) { sd->sd_lobase = (ssd->ssd_base) & 0xffffff; diff --git a/sys/amd64/amd64/sys_machdep.c b/sys/amd64/amd64/sys_machdep.c index c10b15896132..9a577e3e0817 100644 --- a/sys/amd64/amd64/sys_machdep.c +++ b/sys/amd64/amd64/sys_machdep.c @@ -391,9 +391,7 @@ sysarch(struct thread *td, struct sysarch_args *uap) } int -amd64_set_ioperm(td, uap) - struct thread *td; - struct i386_ioperm_args *uap; +amd64_set_ioperm(struct thread *td, struct i386_ioperm_args *uap) { char *iomap; struct amd64tss *tssp; @@ -448,9 +446,7 @@ amd64_set_ioperm(td, uap) } int -amd64_get_ioperm(td, uap) - struct thread *td; - struct i386_ioperm_args *uap; +amd64_get_ioperm(struct thread *td, struct i386_ioperm_args *uap) { int i, state; char *iomap; From nobody Sun Apr 9 21:35:38 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllH5WGNz44J99; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllG70T2z4Mpw; Sun, 9 Apr 2023 21:35:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076139; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=q8wFRKwqd66M6hVdy1WwQntzs3nwwz4Pa6J565hhFgs=; b=sJr3c4P3YmL6Oqedz7yn4nZN1gcVrxGxXeZ3UmcWc6olll2IPxLHbEhCA2LXIbH0J4vrnZ qA3eSQmp0drRvrjLW8lerOqU73wNf70E+mS9VbZDShSQTbC/mITKSydmGKCzE7Jt4aOOgk oJ1qcbEaFvrW5QtpxrT2EINd0irNSRkNtNYYl2liN+DJfHx8nB0csOYsnYus8sQPvEJ2L+ d/3YY7VItfKDNn0+Bg9pctzdQ6c4RlFuBSgrNJcRBmrost9Lo2y9Vm1VYjiMTDIBN18Y64 DNwflA2GboGI17kYFdb8DcFeyeVs8+qzr7+I4fRqBIUBox/uXWntaSiPMxG9UQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076139; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=q8wFRKwqd66M6hVdy1WwQntzs3nwwz4Pa6J565hhFgs=; b=sJa5UCivS0tbktXDE1DMiVOhayXvCE28Z3t/3qMXjBnjQjNSVLNJ/c/v3nGBm0cKITVWqM cJWvL5YjEuk6gkZzCTFcbE/nDJxR+I2cDNaOMiymAkNMlCqIUFsCHZ0bbFezdifRnHG10x Ks9+89Gu28z5JL10rtQ5grcX+uXBCizJ//HJ5NLLhIJOLX8UbOda2VW1C1ZhwFpfLrwZ74 TjCwXkX4zOF7PobxuTx1quY0TJk+yLU7u4zNwItIs2tBeuQph47RqSlJKoTl+7pWjmrqWh ic/CaISFYgk+IA7N103RCe1pix5K1YPvVcXCnC01wvk4eBdmY53YnAowcChz4A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076139; a=rsa-sha256; cv=none; b=SzuPQXM2ig4wN8idi2ueAh1MmB/SBwntJ2zH9In4WSmtosTDb7TqB0TAcieK3pHZsGiUhp XNDxOUXnSIcHg6Ady2ZXVsIQ/rj25dc8BMW/D0Vb9Bzu8X81COChQXH+FhMlHasuMVGZmn E3qUO6tFM/P0rfmBWYpkI0z+JXFQvAA9VCMcA6kefknW9/v9FV3RBTkq9RftNHYbQnFY7k cZRnpeoP/ZcUwsP6ciZh8/tTbW7q4Jg4kzMIEA99wwbUKnVNQvEzBTbn7giWwfakgguHKe GAR4N1QnPxszfesJpZDLsIOzjG/X7pbmlgt2PmCe+/smFqGrY+JtOTV1c8XIsg== 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 4PvllG2FdczPhJ; Sun, 9 Apr 2023 21:35:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZcI0081939; Sun, 9 Apr 2023 21:35:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZcc3081938; Sun, 9 Apr 2023 21:35:38 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:38 GMT Message-Id: <202304092135.339LZcc3081938@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: b7ddd93c32a1 - stable/13 - vfs: ansify List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: b7ddd93c32a1c1bd999bd13d3514e6b23cacf34b Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=b7ddd93c32a1c1bd999bd13d3514e6b23cacf34b commit b7ddd93c32a1c1bd999bd13d3514e6b23cacf34b Author: Mateusz Guzik AuthorDate: 2023-02-07 23:03:20 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 15:39:22 +0000 vfs: ansify Reported by: clang 15 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 8377575772be0ed37eb42a0b08c684d9fc5c3e18) --- sys/kern/vfs_default.c | 161 +++++++++---------------------------------------- 1 file changed, 27 insertions(+), 134 deletions(-) diff --git a/sys/kern/vfs_default.c b/sys/kern/vfs_default.c index 018660310e68..6201426d582c 100644 --- a/sys/kern/vfs_default.c +++ b/sys/kern/vfs_default.c @@ -236,12 +236,7 @@ vop_panic(struct vop_generic_args *ap) * Default vop for filesystems that do not support name lookup */ static int -vop_nolookup(ap) - struct vop_lookup_args /* { - struct vnode *a_dvp; - struct vnode **a_vpp; - struct componentname *a_cnp; - } */ *ap; +vop_nolookup(struct vop_lookup_args *ap) { *ap->a_vpp = NULL; @@ -500,12 +495,7 @@ vop_stdadvlockpurge(struct vop_advlockpurge_args *ap) * limits. */ int -vop_stdpathconf(ap) - struct vop_pathconf_args /* { - struct vnode *a_vp; - int a_name; - int *a_retval; - } */ *ap; +vop_stdpathconf(struct vop_pathconf_args *ap) { switch (ap->a_name) { @@ -532,13 +522,7 @@ vop_stdpathconf(ap) * Standard lock, unlock and islocked functions. */ int -vop_stdlock(ap) - struct vop_lock1_args /* { - struct vnode *a_vp; - int a_flags; - char *file; - int line; - } */ *ap; +vop_stdlock(struct vop_lock1_args *ap) { struct vnode *vp = ap->a_vp; struct mtx *ilk; @@ -550,10 +534,7 @@ vop_stdlock(ap) /* See above. */ int -vop_stdunlock(ap) - struct vop_unlock_args /* { - struct vnode *a_vp; - } */ *ap; +vop_stdunlock(struct vop_unlock_args *ap) { struct vnode *vp = ap->a_vp; @@ -562,10 +543,7 @@ vop_stdunlock(ap) /* See above. */ int -vop_stdislocked(ap) - struct vop_islocked_args /* { - struct vnode *a_vp; - } */ *ap; +vop_stdislocked(struct vop_islocked_args *ap) { return (lockstatus(ap->a_vp->v_vnlock)); @@ -579,13 +557,7 @@ vop_stdislocked(ap) * - v_vnlock pointer is not honored */ int -vop_lock(ap) - struct vop_lock1_args /* { - struct vnode *a_vp; - int a_flags; - char *file; - int line; - } */ *ap; +vop_lock(struct vop_lock1_args *ap) { struct vnode *vp = ap->a_vp; int flags = ap->a_flags; @@ -609,10 +581,7 @@ other: } int -vop_unlock(ap) - struct vop_unlock_args /* { - struct vnode *a_vp; - } */ *ap; +vop_unlock(struct vop_unlock_args *ap) { struct vnode *vp = ap->a_vp; @@ -622,10 +591,7 @@ vop_unlock(ap) } int -vop_islocked(ap) - struct vop_islocked_args /* { - struct vnode *a_vp; - } */ *ap; +vop_islocked(struct vop_islocked_args *ap) { struct vnode *vp = ap->a_vp; @@ -638,13 +604,7 @@ vop_islocked(ap) * Return true for select/poll. */ int -vop_nopoll(ap) - struct vop_poll_args /* { - struct vnode *a_vp; - int a_events; - struct ucred *a_cred; - struct thread *a_td; - } */ *ap; +vop_nopoll(struct vop_poll_args *ap) { if (ap->a_events & ~POLLSTANDARD) @@ -656,13 +616,7 @@ vop_nopoll(ap) * Implement poll for local filesystems that support it. */ int -vop_stdpoll(ap) - struct vop_poll_args /* { - struct vnode *a_vp; - int a_events; - struct ucred *a_cred; - struct thread *a_td; - } */ *ap; +vop_stdpoll(struct vop_poll_args *ap) { if (ap->a_events & ~POLLSTANDARD) return (vn_pollrecord(ap->a_vp, ap->a_td, ap->a_events)); @@ -673,11 +627,7 @@ vop_stdpoll(ap) * Return our mount point, as we will take charge of the writes. */ int -vop_stdgetwritemount(ap) - struct vop_getwritemount_args /* { - struct vnode *a_vp; - struct mount **a_mpp; - } */ *ap; +vop_stdgetwritemount(struct vop_getwritemount_args *ap) { struct mount *mp; struct vnode *vp; @@ -705,15 +655,7 @@ vop_stdgetwritemount(ap) * - Report no contiguous runs of blocks. */ int -vop_stdbmap(ap) - struct vop_bmap_args /* { - struct vnode *a_vp; - daddr_t a_bn; - struct bufobj **a_bop; - daddr_t *a_bnp; - int *a_runp; - int *a_runb; - } */ *ap; +vop_stdbmap(struct vop_bmap_args *ap) { if (ap->a_bop != NULL) @@ -728,12 +670,7 @@ vop_stdbmap(ap) } int -vop_stdfsync(ap) - struct vop_fsync_args /* { - struct vnode *a_vp; - int a_waitfor; - struct thread *a_td; - } */ *ap; +vop_stdfsync(struct vop_fsync_args *ap) { return (vn_fsync_buf(ap->a_vp, ap->a_waitfor)); @@ -755,14 +692,7 @@ vop_stdfdatasync_buf(struct vop_fdatasync_args *ap) /* XXX Needs good comment and more info in the manpage (VOP_GETPAGES(9)). */ int -vop_stdgetpages(ap) - struct vop_getpages_args /* { - struct vnode *a_vp; - vm_page_t *a_m; - int a_count; - int *a_rbehind; - int *a_rahead; - } */ *ap; +vop_stdgetpages(struct vop_getpages_args *ap) { return vnode_pager_generic_getpages(ap->a_vp, ap->a_m, @@ -789,14 +719,7 @@ vop_stdkqfilter(struct vop_kqfilter_args *ap) /* XXX Needs good comment and more info in the manpage (VOP_PUTPAGES(9)). */ int -vop_stdputpages(ap) - struct vop_putpages_args /* { - struct vnode *a_vp; - vm_page_t *a_m; - int a_count; - int a_sync; - int *a_rtvals; - } */ *ap; +vop_stdputpages(struct vop_putpages_args *ap) { return vnode_pager_generic_putpages(ap->a_vp, ap->a_m, ap->a_count, @@ -1331,39 +1254,28 @@ vop_stdioctl(struct vop_ioctl_args *ap) * used to fill the vfs function table to get reasonable default return values. */ int -vfs_stdroot (mp, flags, vpp) - struct mount *mp; - int flags; - struct vnode **vpp; +vfs_stdroot(struct mount *mp, int flags, struct vnode **vpp) { return (EOPNOTSUPP); } int -vfs_stdstatfs (mp, sbp) - struct mount *mp; - struct statfs *sbp; +vfs_stdstatfs(struct mount *mp, struct statfs *sbp) { return (EOPNOTSUPP); } int -vfs_stdquotactl (mp, cmds, uid, arg) - struct mount *mp; - int cmds; - uid_t uid; - void *arg; +vfs_stdquotactl(struct mount *mp, int cmds, uid_t uid, void *arg) { return (EOPNOTSUPP); } int -vfs_stdsync(mp, waitfor) - struct mount *mp; - int waitfor; +vfs_stdsync(struct mount *mp, int waitfor) { struct vnode *vp, *mvp; struct thread *td; @@ -1398,9 +1310,7 @@ loop: } int -vfs_stdnosync (mp, waitfor) - struct mount *mp; - int waitfor; +vfs_stdnosync(struct mount *mp, int waitfor) { return (0); @@ -1418,50 +1328,36 @@ vop_stdcopy_file_range(struct vop_copy_file_range_args *ap) } int -vfs_stdvget (mp, ino, flags, vpp) - struct mount *mp; - ino_t ino; - int flags; - struct vnode **vpp; +vfs_stdvget(struct mount *mp, ino_t ino, int flags, struct vnode **vpp) { return (EOPNOTSUPP); } int -vfs_stdfhtovp (mp, fhp, flags, vpp) - struct mount *mp; - struct fid *fhp; - int flags; - struct vnode **vpp; +vfs_stdfhtovp(struct mount *mp, struct fid *fhp, int flags, struct vnode **vpp) { return (EOPNOTSUPP); } int -vfs_stdinit (vfsp) - struct vfsconf *vfsp; +vfs_stdinit(struct vfsconf *vfsp) { return (0); } int -vfs_stduninit (vfsp) - struct vfsconf *vfsp; +vfs_stduninit(struct vfsconf *vfsp) { return(0); } int -vfs_stdextattrctl(mp, cmd, filename_vp, attrnamespace, attrname) - struct mount *mp; - int cmd; - struct vnode *filename_vp; - int attrnamespace; - const char *attrname; +vfs_stdextattrctl(struct mount *mp, int cmd, struct vnode *filename_vp, + int attrnamespace, const char *attrname) { if (filename_vp != NULL) @@ -1470,10 +1366,7 @@ vfs_stdextattrctl(mp, cmd, filename_vp, attrnamespace, attrname) } int -vfs_stdsysctl(mp, op, req) - struct mount *mp; - fsctlop_t op; - struct sysctl_req *req; +vfs_stdsysctl(struct mount *mp, fsctlop_t op, struct sysctl_req *req) { return (EOPNOTSUPP); From nobody Sun Apr 9 21:35:39 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllJ45J4z44JPD; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllH5t0pz4Mxf; Sun, 9 Apr 2023 21:35:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076140; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qb4/4AS/01vMB16Z83wUPm3KVzGEqCdNzyjShNk9qpI=; b=aQe9xgwqdM1EkMbBSdTOCs14UqIkKQWChIKbTza5sEA1kKmZRf7Aaj+MAwwJ5zAS6gTWfK hSNlyeSLgAO1cmgNIGfPZ1yloFRwr9gzjTdeBm+cBFaenVsKUhhOV/DaiYM4xhGckDmm4y ILYD0bDLahFgiqpvf9MMLTzi22Kdci28EbJQYQiZatDI3aoiUJ6y0hVty/d13SoTN5dmi0 6MYLKvPEwRpaIllxUjDb8pPfdHzI0LaTVUizP5ryXKqwBbjpU27Sk/KfMY6DgdrfVYVHEJ DofuXtWrtxliufZSRUbvGq8CvnYy5ocfPl85PEi9JCvdiUt2F2jRPAAkX0KxFg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076140; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qb4/4AS/01vMB16Z83wUPm3KVzGEqCdNzyjShNk9qpI=; b=EIu6Tna3y+p/R3FapKDbOD7FULAIlMWFeVfwXF+v2FhJae+s95Q4l6ZnVRyvSsiRUD2k2O EfDjxtg276srxEpJE9vol9GbxF55Fkn7D2ld9AuM3CxMmQw+M7L5q6M9uqGTBGQsKAspk0 4EIrZlVl0o/4W8mQYeif6axhu20yhLQ1thushKLQbYhc3byVzlrvd3jO6zwsMFZFPn/yIL Yj2oW00uxF3SJGtE6YMR6pklndDzHAfyvZGMP5qgwiYBZWsMAXyhMAL8PkguRrxbZinhG5 zjubwG7U6w8MsmaPKtHUFUDP/4D2lpJwgLo69mq24OViP4OZG/hd2ffwnwjlFg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076140; a=rsa-sha256; cv=none; b=AsgVaOcfoyxngPAww/QxLW550W06dP1xkrhfGkSyvRBfpaBHEDaFlZXTTGKc50FhYjbG0i djk1bJbSD32cH/MY4vPMXuut8bylVifHLGqUsIEAHPvKuLirQHJ7EL5eBcINchcxvcHczQ BWp9Q5Qr9kZ8xosSB70ymkxI6RkphSnPQ0Nitq17uv+tIpe0gjlRhmaoBf4M9izA7HyyDc Z2Fc83ZCYSyFVdLk61vVuV3D2gmWhpNjuh8U8JfSa9GhNRvbCjBXGmt7RYu9CiTWOZZE4g ZjOdaDpp/DU1W8EgL/EEjrU3nygEs6DUVPQ/6E/jja+OBYPxsueizaJSQgtxfw== 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 4PvllH3dWmzPkm; Sun, 9 Apr 2023 21:35:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZd1x081959; Sun, 9 Apr 2023 21:35:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZdg9081958; Sun, 9 Apr 2023 21:35:39 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:39 GMT Message-Id: <202304092135.339LZdg9081958@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 6e9599a84652 - stable/13 - fifofs: ansify List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6e9599a846521f58a46f218b91271b394dffb419 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=6e9599a846521f58a46f218b91271b394dffb419 commit 6e9599a846521f58a46f218b91271b394dffb419 Author: Mateusz Guzik AuthorDate: 2023-02-07 23:18:51 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 15:39:29 +0000 fifofs: ansify Reported by: clang 15 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit ed40bc50dff06219baa251f1d238249624cb74ec) --- sys/fs/fifofs/fifo_vnops.c | 34 +++++----------------------------- 1 file changed, 5 insertions(+), 29 deletions(-) diff --git a/sys/fs/fifofs/fifo_vnops.c b/sys/fs/fifofs/fifo_vnops.c index 1b941620b080..2b57cf68be8c 100644 --- a/sys/fs/fifofs/fifo_vnops.c +++ b/sys/fs/fifofs/fifo_vnops.c @@ -127,14 +127,7 @@ fifo_cleanup(struct vnode *vp) */ /* ARGSUSED */ static int -fifo_open(ap) - struct vop_open_args /* { - struct vnode *a_vp; - int a_mode; - struct ucred *a_cred; - struct thread *a_td; - struct file *a_fp; - } */ *ap; +fifo_open(struct vop_open_args *ap) { struct vnode *vp; struct file *fp; @@ -269,13 +262,7 @@ fifo_open(ap) */ /* ARGSUSED */ static int -fifo_close(ap) - struct vop_close_args /* { - struct vnode *a_vp; - int a_fflag; - struct ucred *a_cred; - struct thread *a_td; - } */ *ap; +fifo_close(struct vop_close_args *ap) { struct vnode *vp; struct fifoinfo *fip; @@ -332,8 +319,7 @@ fifo_close(ap) * Print out internal contents of a fifo vnode. */ int -fifo_printinfo(vp) - struct vnode *vp; +fifo_printinfo(struct vnode *vp) { struct fifoinfo *fip = vp->v_fifoinfo; @@ -350,10 +336,7 @@ fifo_printinfo(vp) * Print out the contents of a fifo vnode. */ static int -fifo_print(ap) - struct vop_print_args /* { - struct vnode *a_vp; - } */ *ap; +fifo_print(struct vop_print_args *ap) { printf(" "); fifo_printinfo(ap->a_vp); @@ -366,14 +349,7 @@ fifo_print(ap) */ /* ARGSUSED */ static int -fifo_advlock(ap) - struct vop_advlock_args /* { - struct vnode *a_vp; - caddr_t a_id; - int a_op; - struct flock *a_fl; - int a_flags; - } */ *ap; +fifo_advlock(struct vop_advlock_args *ap) { if ((ap->a_flags & F_FLOCK) == 0) From nobody Sun Apr 9 21:35:40 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllK1bcSz44JS2; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllJ5qMmz4MsM; Sun, 9 Apr 2023 21:35:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076140; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cXf61+EmomesZsEVARy4XxSs9Mz/wdE0uU4Ny2hCmZQ=; b=f9yPM20TPmzqLTy8B3P6c6pgwr+cCVADuh81Rj0zPCPP7sfrUDEUlu9D9hCnWSXZKCDhhb Pkk0LMwY9Npj7J4iORPqvWNmxv1SwWcazE8fYMP0IQYoqh4Z00dao5t7JSKMQOMzOGu8iR zU2YsOdf8T3oguYjF0LUHdrfXJbvkEZdFOSXmsq+YSCRfa9TDET+LIxW9cCQP/EMNkEO2w M4AlG01MJTpJdBQSY+LzQBgKvRo2pyePzX3viEf/xrGRl3e0ZGMrkQ9ooJziolE3C6EyLC yUL7rKwlLyk9Rsu3dqZYKAIdfWzCvk8cXXWDdf5Mgx2XKQUnckEp1QJ8l2ogCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076140; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cXf61+EmomesZsEVARy4XxSs9Mz/wdE0uU4Ny2hCmZQ=; b=LCkr6DMktOpCb1YCCufB6UAGT+urQ6XBu1hBkETUsqGC6VjPpCZ+IbCoSEJubQ2YINGc+E JIEDfceUiobDnV3TY0i1hmEa3rWMf/g8TiEkYI0b14jAVeGPopIP5GpMwk62iQ0ZmAlY4l JPixJoo6CNs+2Fx4KR3/+w4y3wXqtfEgIKhnfy/CD5BQDyQ7EF9hmPuoW6cSN69ZO1r0RL lKxM/tVqqqzSe20wEzcdqwjR7LG1W4965L9W1eIBK7j6xlbtyR5vJLjRfQEX7q48Lw8SMl gE7VynaIk08TY+edixDKvLXHqVaQliH07HoHPV9koz/kO9AS/HRnYg8HtUQwbA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076140; a=rsa-sha256; cv=none; b=nPLO4dw9mGRn+CZy0tQVDbkYXYtdUbrM67onCMu1mHSKUcgt1zg3N2S9vqNbLjDB0DhLn+ 7FZkhpT9+ovJNAp+hWQRSYo8OJUBWctWFtE1RjiScPylRXGMFHcYlgd85/D2ZiAFm+LGD+ 6ziPBUrMQf1IZ5YW5Ue2FWJLSHMCyi+4w0aNEcXehq7p2+hlhyQBymqDzds/rNxGVoA0jq 7EZiDGEUx9nnDExqenaAehce0aRcEowzAqpNfwGKxZqUPrH2G8v8YkW1vSK9xVpQNNyvSR +FtIOgwh0IlgngtrhLcAYVzQwJ/Fuv9Nk323YLjvRQ4QieIDCB1Uvjj+7cHadg== 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 4PvllJ4npwzPkn; Sun, 9 Apr 2023 21:35:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZeaN081982; Sun, 9 Apr 2023 21:35:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZeVp081981; Sun, 9 Apr 2023 21:35:40 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:40 GMT Message-Id: <202304092135.339LZeVp081981@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: b14680d4d707 - stable/13 - nullfs: ansify List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: b14680d4d707cace67e724bd10796e8fe18c9b8a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=b14680d4d707cace67e724bd10796e8fe18c9b8a commit b14680d4d707cace67e724bd10796e8fe18c9b8a Author: Mateusz Guzik AuthorDate: 2023-02-07 23:22:27 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 15:40:36 +0000 nullfs: ansify Reported by: clang 15 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 24641b8b3964e9015d3f8579b2359104bb0e5eea) --- sys/fs/nullfs/null_vfsops.c | 45 ++++++++++----------------------------------- 1 file changed, 10 insertions(+), 35 deletions(-) diff --git a/sys/fs/nullfs/null_vfsops.c b/sys/fs/nullfs/null_vfsops.c index 1a83973313b1..241e89a60f6f 100644 --- a/sys/fs/nullfs/null_vfsops.c +++ b/sys/fs/nullfs/null_vfsops.c @@ -230,9 +230,7 @@ nullfs_mount(struct mount *mp) * Free reference to null layer */ static int -nullfs_unmount(mp, mntflags) - struct mount *mp; - int mntflags; +nullfs_unmount(struct mount *mp, int mntflags) { struct null_mount *mntdata; struct mount *ump; @@ -281,10 +279,7 @@ nullfs_unmount(mp, mntflags) } static int -nullfs_root(mp, flags, vpp) - struct mount *mp; - int flags; - struct vnode **vpp; +nullfs_root(struct mount *mp, int flags, struct vnode **vpp) { struct vnode *vp; struct null_mount *mntdata; @@ -305,19 +300,13 @@ nullfs_root(mp, flags, vpp) } static int -nullfs_quotactl(mp, cmd, uid, arg) - struct mount *mp; - int cmd; - uid_t uid; - void *arg; +nullfs_quotactl(struct mount *mp, int cmd, uid_t uid, void *arg) { return VFS_QUOTACTL(MOUNTTONULLMOUNT(mp)->nullm_vfs, cmd, uid, arg); } static int -nullfs_statfs(mp, sbp) - struct mount *mp; - struct statfs *sbp; +nullfs_statfs(struct mount *mp, struct statfs *sbp) { int error; struct statfs *mstat; @@ -352,9 +341,7 @@ nullfs_statfs(mp, sbp) } static int -nullfs_sync(mp, waitfor) - struct mount *mp; - int waitfor; +nullfs_sync(struct mount *mp, int waitfor) { /* * XXX - Assumes no data cached at null layer. @@ -363,11 +350,7 @@ nullfs_sync(mp, waitfor) } static int -nullfs_vget(mp, ino, flags, vpp) - struct mount *mp; - ino_t ino; - int flags; - struct vnode **vpp; +nullfs_vget(struct mount *mp, ino_t ino, int flags, struct vnode **vpp) { int error; @@ -381,11 +364,7 @@ nullfs_vget(mp, ino, flags, vpp) } static int -nullfs_fhtovp(mp, fidp, flags, vpp) - struct mount *mp; - struct fid *fidp; - int flags; - struct vnode **vpp; +nullfs_fhtovp(struct mount *mp, struct fid *fidp, int flags, struct vnode **vpp) { int error; @@ -396,13 +375,9 @@ nullfs_fhtovp(mp, fidp, flags, vpp) return (null_nodeget(mp, *vpp, vpp)); } -static int -nullfs_extattrctl(mp, cmd, filename_vp, namespace, attrname) - struct mount *mp; - int cmd; - struct vnode *filename_vp; - int namespace; - const char *attrname; +static int +nullfs_extattrctl(struct mount *mp, int cmd, struct vnode *filename_vp, + int namespace, const char *attrname) { return (VFS_EXTATTRCTL(MOUNTTONULLMOUNT(mp)->nullm_vfs, cmd, From nobody Sun Apr 9 21:35:41 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllM0cXdz44JPH; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllL37vqz4Mqk; Sun, 9 Apr 2023 21: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=1681076142; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=X3Egnk51/Qhtq9zhjIXs+aLL462MKnrbujGxKJl3RDk=; b=KEitdH4y4/r6hlagWD+N0Ze+TkiNRaBAouPXxplnL1dkT85vFlGjuzWCPDvh9beKIi2Hqv P13Ryqn0OtKmsaoNMliiW6rUE8aYc4ppCwBpHPI0+RnNjb/Zk6HWqpBIBDWQiaKCmM8V1A v+iCHXSVn5i5D9W2xvFUZzHGFoApOW+BzHABcXoHdB1KuWgQ3DJvL93A+iqIKs/I7iGPXw iH1/Bsx0FHOU09PKzze49pd/sj8ukkizYWMHggogNpWJjsraOkmm2KfFJB2ovZ08fznPq2 /RWnHP4/Mb+RY3XgYT0D3iVrRBMH26EXpmtEgryqyfAZlFi1jUOZz37lhi9p2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076142; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=X3Egnk51/Qhtq9zhjIXs+aLL462MKnrbujGxKJl3RDk=; b=QjK2vfltt55d4c0RSLNfOT1z4/a2Jljd/CcoCpMgVKxYLPsunsB5JgFe34FGMldoZe3WWN COe2jhIbRL6gOrresUOmqx0M8B+QY9P/rUcW04Ww3eBui9XGH0JV7SLTWoHLbCZlaaqAx4 sZ18874DX2M2ErMQSH3ltfYXPvGsqsps8Q1xODXGLII50KjaE7cLCkgeBSp9esRiHBSRB2 i3O0sjZ/khOIw8A0Gaqm7THU+Jrux+owcUQmo9G3S0DlggtHf6FMNYlzpl9EiZ0w/r8CmV RjYAeOOiEIm4pwb9wWJqcNPbDZO3zCxFAy7JTz6v9d3ZwsJXq3vmoVACnKnBuA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076142; a=rsa-sha256; cv=none; b=p8ks8uHdEmRiPTyAc8XmS6C5WSZfWivOC+bE4F96VZRuV9QvespWK6HO560ONMUsos4x3F tOaCRRpw9CqpCownf24GHVr11KHKxGyJfGAMo8IlcAyzQVkrmQC479hFKoDvnZnrwQ8hO4 8FLuYoK37FgSMBPUt6t0vnMB9w+uwNH9YP2M2SSMML8lLbAXK8CNTSfN15FQCUNNKy4VKo KPXSwQqYBYnC/sqIW2NRNWMVFoTmq3MPyBwkRWJz/vgYZvUAvEGeoJDj3slon74cJOMFxN AAIik3u2auNayha2FAUz06nxBkW/9a1aAujtcyN1f9boLzODJ5r0wMth0Y9CaQ== 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 4PvllK5lGPzPKX; Sun, 9 Apr 2023 21:35:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZfuk082004; Sun, 9 Apr 2023 21:35:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZflq082003; Sun, 9 Apr 2023 21:35:41 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:41 GMT Message-Id: <202304092135.339LZflq082003@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: c53ea2f3481b - stable/13 - udf: ansify List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: c53ea2f3481b7159d3a91f67dc24f357fa64c337 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=c53ea2f3481b7159d3a91f67dc24f357fa64c337 commit c53ea2f3481b7159d3a91f67dc24f357fa64c337 Author: Mateusz Guzik AuthorDate: 2023-02-07 23:24:24 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 15:40:39 +0000 udf: ansify Reported by: clang 15 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 724240c6fa249e03762cee62a95405105bd69ebe) --- sys/fs/udf/osta.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/sys/fs/udf/osta.c b/sys/fs/udf/osta.c index 70a22d933652..b9d358b5aced 100644 --- a/sys/fs/udf/osta.c +++ b/sys/fs/udf/osta.c @@ -211,9 +211,7 @@ static unsigned short crc_table[256] = { }; unsigned short -udf_cksum(s, n) - unsigned char *s; - int n; +udf_cksum(unsigned char *s, int n) { unsigned short crc=0; @@ -224,9 +222,7 @@ udf_cksum(s, n) /* UNICODE Checksum */ unsigned short -udf_unicode_cksum(s, n) - unsigned short *s; - int n; +udf_unicode_cksum(unsigned short *s, int n) { unsigned short crc=0; From nobody Sun Apr 9 21:35:42 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllN2W5dz44JS8; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllM6pq7z4N1V; Sun, 9 Apr 2023 21:35:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076144; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GhfbvBKYj2HDC1WsWb3sNyElE73h22Zf1iHOGg7jiI8=; b=jp8ut8jGFrj7FQA4Bcy68YnpzMfra1lkxqY48EGp1ZgOgnkvfUN8ABcbuO74Jo1tbdwj/O mMdarp4PxqgiH3AoswQK2rVRZXty5P7S9/7AeSUxNUmZDGQDCLWVuQ0CMg+D0XA/4zAgdy z7xqg85a1e3ydLLwMBXf/I3pi7U+nDevUE+QXDjmaefrhhjuWqr86dbaBwWK8y/ZZbwAJa h+5Cc7Fp+0HlWtQ8+yxVwEQgX2xTdX+qamTexQQc76k0Ymi9TM28v0J3hWyJQ4bb2fvx1Y 9SjhOwhcyIuhqJr7PEJKMFX5KEfkUrh4SBNWJs9dqtyS15LJ7ADIo2AGO1F8nA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076144; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GhfbvBKYj2HDC1WsWb3sNyElE73h22Zf1iHOGg7jiI8=; b=uDom3nyB+Xf1X2sktiUXbpB52fkrLeU2Q0sDMsIbo02CoxVOktkaJoNJs7O061SxdgI9q5 xNZ1EfKEDgDEBTZARGMBlLl5y1FwEGzQ0vYPtfWhuRLI5fH1KVCQfZx5bh0Cugm1m7YGLu iFnYWYsJ90W3MZvlGdpFSu1icK600ebiwQy+BltB0bf8ZrGs8b4lNn5Nb38LHLNyggj+br uJRbHnCaDVC9apvGrtD1DNBKxRJPSgLHEqHu1Yuw33aq98X05vJI7ofEB9zgQX+0bBDE+g w3o7MImpTHfiZxpVYHjKvbVlgSS/VJMRRfFocc5oarj24YsxWQTUlaQc4zJszw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076144; a=rsa-sha256; cv=none; b=HyPK/eqXAf747HQlszYaafMhLGn+TiKR4BJbhDh6irgWgEDHajudjIaf8+FP32bVJudHs5 Ew2/9t66wWcvwTVHR/U3DznuQSOCWuQUJcw71156n5OwXStiVOA7WppZKvmkNXj7eE8J6B rJcndrF0iiM323Wkrgqds7O0t+MC6ly6Nn3VfMOH5wKtD9bgnM9HxjaeE9FGqyNjJxMT2l wOzFAbx32TupkRPbxZb8gIZ2GoSoBCQlq3YZFrLEoxcL/2onGSfs/kLQRveOWU0V8ucRwX hBzpeJ2Vvc1ZjFn2Qh4j9i8CdUAFgmqN5V+JTdAi17OQ23yXc3sgunqDx5uk+w== 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 4PvllL6kb5zPF7; Sun, 9 Apr 2023 21:35:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZgxY082023; Sun, 9 Apr 2023 21:35:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZg7P082022; Sun, 9 Apr 2023 21:35:42 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:42 GMT Message-Id: <202304092135.339LZg7P082022@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: bebed8e6ea53 - stable/13 - smbfs: ansify List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: bebed8e6ea532562cac23897eab9891d586f1b4a Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=bebed8e6ea532562cac23897eab9891d586f1b4a commit bebed8e6ea532562cac23897eab9891d586f1b4a Author: Mateusz Guzik AuthorDate: 2023-02-07 23:35:11 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 15:42:37 +0000 smbfs: ansify Reported by: clang 15 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit b09b03a19d26e63046f3413cc8be2e4ece08daff) --- sys/fs/smbfs/smbfs_io.c | 17 +--- sys/fs/smbfs/smbfs_node.c | 10 +-- sys/fs/smbfs/smbfs_vfsops.c | 6 +- sys/fs/smbfs/smbfs_vnops.c | 184 ++++++-------------------------------------- 4 files changed, 30 insertions(+), 187 deletions(-) diff --git a/sys/fs/smbfs/smbfs_io.c b/sys/fs/smbfs/smbfs_io.c index f92fe50ccd99..0927ec420cf5 100644 --- a/sys/fs/smbfs/smbfs_io.c +++ b/sys/fs/smbfs/smbfs_io.c @@ -413,13 +413,7 @@ smbfs_doio(struct vnode *vp, struct buf *bp, struct ucred *cr, struct thread *td * Wish wish .... get rid from multiple IO routines */ int -smbfs_getpages(ap) - struct vop_getpages_args /* { - struct vnode *a_vp; - vm_page_t *a_m; - int a_count; - int a_reqpage; - } */ *ap; +smbfs_getpages(struct vop_getpages_args *ap) { #ifdef SMBFS_RWGENERIC return vop_stdgetpages(ap); @@ -544,14 +538,7 @@ out: * not necessary to open vnode. */ int -smbfs_putpages(ap) - struct vop_putpages_args /* { - struct vnode *a_vp; - vm_page_t *a_m; - int a_count; - int a_sync; - int *a_rtvals; - } */ *ap; +smbfs_putpages(struct vop_putpages_args *ap) { int error; struct vnode *vp = ap->a_vp; diff --git a/sys/fs/smbfs/smbfs_node.c b/sys/fs/smbfs/smbfs_node.c index f7ba9ac1c1a4..a0aa26b80810 100644 --- a/sys/fs/smbfs/smbfs_node.c +++ b/sys/fs/smbfs/smbfs_node.c @@ -257,10 +257,7 @@ smbfs_nget(struct mount *mp, struct vnode *dvp, const char *name, int nmlen, * Free smbnode, and give vnode back to system */ int -smbfs_reclaim(ap) - struct vop_reclaim_args /* { - struct vnode *a_vp; - } */ *ap; +smbfs_reclaim(struct vop_reclaim_args *ap) { struct vnode *vp = ap->a_vp; struct vnode *dvp; @@ -296,10 +293,7 @@ smbfs_reclaim(ap) } int -smbfs_inactive(ap) - struct vop_inactive_args /* { - struct vnode *a_vp; - } */ *ap; +smbfs_inactive(struct vop_inactive_args *ap) { struct thread *td = curthread; struct ucred *cred = td->td_ucred; diff --git a/sys/fs/smbfs/smbfs_vfsops.c b/sys/fs/smbfs/smbfs_vfsops.c index c27b62693d7a..bb69e288105e 100644 --- a/sys/fs/smbfs/smbfs_vfsops.c +++ b/sys/fs/smbfs/smbfs_vfsops.c @@ -349,11 +349,7 @@ out: */ /* ARGSUSED */ static int -smbfs_quotactl(mp, cmd, uid, arg) - struct mount *mp; - int cmd; - uid_t uid; - void *arg; +smbfs_quotactl(struct mount *mp, int cmd, uid_t uid, void *arg) { SMBVDEBUG("return EOPNOTSUPP\n"); return EOPNOTSUPP; diff --git a/sys/fs/smbfs/smbfs_vnops.c b/sys/fs/smbfs/smbfs_vnops.c index ad04bb93962a..19f9be932b99 100644 --- a/sys/fs/smbfs/smbfs_vnops.c +++ b/sys/fs/smbfs/smbfs_vnops.c @@ -116,13 +116,7 @@ struct vop_vector smbfs_vnodeops = { VFS_VOP_VECTOR_REGISTER(smbfs_vnodeops); static int -smbfs_access(ap) - struct vop_access_args /* { - struct vnode *a_vp; - accmode_t a_accmode; - struct ucred *a_cred; - struct thread *a_td; - } */ *ap; +smbfs_access(struct vop_access_args *ap) { struct vnode *vp = ap->a_vp; accmode_t accmode = ap->a_accmode; @@ -145,13 +139,7 @@ smbfs_access(ap) /* ARGSUSED */ static int -smbfs_open(ap) - struct vop_open_args /* { - struct vnode *a_vp; - int a_mode; - struct ucred *a_cred; - struct thread *a_td; - } */ *ap; +smbfs_open(struct vop_open_args *ap) { struct vnode *vp = ap->a_vp; struct smbnode *np = VTOSMB(vp); @@ -220,14 +208,7 @@ smbfs_open(ap) } static int -smbfs_close(ap) - struct vop_close_args /* { - struct vnodeop_desc *a_desc; - struct vnode *a_vp; - int a_fflag; - struct ucred *a_cred; - struct thread *a_td; - } */ *ap; +smbfs_close(struct vop_close_args *ap) { struct vnode *vp = ap->a_vp; struct thread *td = ap->a_td; @@ -249,12 +230,7 @@ smbfs_close(ap) * smbfs_getattr call from vfs. */ static int -smbfs_getattr(ap) - struct vop_getattr_args /* { - struct vnode *a_vp; - struct vattr *a_vap; - struct ucred *a_cred; - } */ *ap; +smbfs_getattr(struct vop_getattr_args *ap) { struct vnode *vp = ap->a_vp; struct smbnode *np = VTOSMB(vp); @@ -287,12 +263,7 @@ smbfs_getattr(ap) } static int -smbfs_setattr(ap) - struct vop_setattr_args /* { - struct vnode *a_vp; - struct vattr *a_vap; - struct ucred *a_cred; - } */ *ap; +smbfs_setattr(struct vop_setattr_args *ap) { struct vnode *vp = ap->a_vp; struct smbnode *np = VTOSMB(vp); @@ -489,13 +460,7 @@ out: * smbfs_read call. */ static int -smbfs_read(ap) - struct vop_read_args /* { - struct vnode *a_vp; - struct uio *a_uio; - int a_ioflag; - struct ucred *a_cred; - } */ *ap; +smbfs_read(struct vop_read_args *ap) { struct vnode *vp = ap->a_vp; struct uio *uio = ap->a_uio; @@ -507,13 +472,7 @@ smbfs_read(ap) } static int -smbfs_write(ap) - struct vop_write_args /* { - struct vnode *a_vp; - struct uio *a_uio; - int a_ioflag; - struct ucred *a_cred; - } */ *ap; +smbfs_write(struct vop_write_args *ap) { struct vnode *vp = ap->a_vp; struct uio *uio = ap->a_uio; @@ -532,13 +491,7 @@ smbfs_write(ap) * only if the SAVESTART bit in cn_flags is clear on success. */ static int -smbfs_create(ap) - struct vop_create_args /* { - struct vnode *a_dvp; - struct vnode **a_vpp; - struct componentname *a_cnp; - struct vattr *a_vap; - } */ *ap; +smbfs_create(struct vop_create_args *ap) { struct vnode *dvp = ap->a_dvp; struct vattr *vap = ap->a_vap; @@ -580,13 +533,7 @@ out: } static int -smbfs_remove(ap) - struct vop_remove_args /* { - struct vnodeop_desc *a_desc; - struct vnode * a_dvp; - struct vnode * a_vp; - struct componentname * a_cnp; - } */ *ap; +smbfs_remove(struct vop_remove_args *ap) { struct vnode *vp = ap->a_vp; /* struct vnode *dvp = ap->a_dvp;*/ @@ -611,15 +558,7 @@ smbfs_remove(ap) * smbfs_file rename call */ static int -smbfs_rename(ap) - struct vop_rename_args /* { - struct vnode *a_fdvp; - struct vnode *a_fvp; - struct componentname *a_fcnp; - struct vnode *a_tdvp; - struct vnode *a_tvp; - struct componentname *a_tcnp; - } */ *ap; +smbfs_rename(struct vop_rename_args *ap) { struct vnode *fvp = ap->a_fvp; struct vnode *tvp = ap->a_tvp; @@ -707,12 +646,7 @@ out: * somtime it will come true... */ static int -smbfs_link(ap) - struct vop_link_args /* { - struct vnode *a_tdvp; - struct vnode *a_vp; - struct componentname *a_cnp; - } */ *ap; +smbfs_link(struct vop_link_args *ap) { return EOPNOTSUPP; } @@ -722,34 +656,19 @@ smbfs_link(ap) * Sometime it will be functional... */ static int -smbfs_symlink(ap) - struct vop_symlink_args /* { - struct vnode *a_dvp; - struct vnode **a_vpp; - struct componentname *a_cnp; - struct vattr *a_vap; - char *a_target; - } */ *ap; +smbfs_symlink(struct vop_symlink_args *ap) { return EOPNOTSUPP; } static int -smbfs_mknod(ap) - struct vop_mknod_args /* { - } */ *ap; +smbfs_mknod(struct vop_mknod_args *ap) { return EOPNOTSUPP; } static int -smbfs_mkdir(ap) - struct vop_mkdir_args /* { - struct vnode *a_dvp; - struct vnode **a_vpp; - struct componentname *a_cnp; - struct vattr *a_vap; - } */ *ap; +smbfs_mkdir(struct vop_mkdir_args *ap) { struct vnode *dvp = ap->a_dvp; /* struct vattr *vap = ap->a_vap;*/ @@ -765,7 +684,7 @@ smbfs_mkdir(ap) if ((error = VOP_GETATTR(dvp, &vattr, cnp->cn_cred))) { return error; - } + } if ((name[0] == '.') && ((len == 1) || ((len == 2) && (name[1] == '.')))) return EEXIST; scred = smbfs_malloc_scred(); @@ -789,12 +708,7 @@ out: * smbfs_remove directory call */ static int -smbfs_rmdir(ap) - struct vop_rmdir_args /* { - struct vnode *a_dvp; - struct vnode *a_vp; - struct componentname *a_cnp; - } */ *ap; +smbfs_rmdir(struct vop_rmdir_args *ap) { struct vnode *vp = ap->a_vp; struct vnode *dvp = ap->a_dvp; @@ -825,15 +739,7 @@ smbfs_rmdir(ap) * smbfs_readdir call */ static int -smbfs_readdir(ap) - struct vop_readdir_args /* { - struct vnode *a_vp; - struct uio *a_uio; - struct ucred *a_cred; - int *a_eofflag; - u_long *a_cookies; - int a_ncookies; - } */ *ap; +smbfs_readdir(struct vop_readdir_args *ap) { struct vnode *vp = ap->a_vp; struct uio *uio = ap->a_uio; @@ -853,24 +759,14 @@ smbfs_readdir(ap) /* ARGSUSED */ static int -smbfs_fsync(ap) - struct vop_fsync_args /* { - struct vnodeop_desc *a_desc; - struct vnode * a_vp; - struct ucred * a_cred; - int a_waitfor; - struct thread * a_td; - } */ *ap; +smbfs_fsync(struct vop_fsync_args *ap) { /* return (smb_flush(ap->a_vp, ap->a_cred, ap->a_waitfor, ap->a_td, 1));*/ return (0); } -static -int smbfs_print (ap) - struct vop_print_args /* { - struct vnode *a_vp; - } */ *ap; +static +int smbfs_print(struct vop_print_args *ap) { struct vnode *vp = ap->a_vp; struct smbnode *np = VTOSMB(vp); @@ -885,12 +781,7 @@ int smbfs_print (ap) } static int -smbfs_pathconf (ap) - struct vop_pathconf_args /* { - struct vnode *vp; - int name; - register_t *retval; - } */ *ap; +smbfs_pathconf(struct vop_pathconf_args *ap) { struct smbmount *smp = VFSTOSMBFS(VTOVFS(ap->a_vp)); struct smb_vc *vcp = SSTOVC(smp->sm_share); @@ -921,10 +812,7 @@ smbfs_pathconf (ap) } static int -smbfs_strategy (ap) - struct vop_strategy_args /* { - struct buf *a_bp - } */ *ap; +smbfs_strategy(struct vop_strategy_args *ap) { struct buf *bp=ap->a_bp; struct ucred *cr; @@ -946,15 +834,7 @@ smbfs_strategy (ap) } int -smbfs_ioctl(ap) - struct vop_ioctl_args /* { - struct vnode *a_vp; - u_long a_command; - caddr_t a_data; - int fflag; - struct ucred *cred; - struct thread *td; - } */ *ap; +smbfs_ioctl(struct vop_ioctl_args *ap) { return ENOTTY; } @@ -993,7 +873,6 @@ smbfs_getextattr(struct vop_getextattr_args *ap) buf[i] = (attr & 1) ? smbfs_atl[i] : '-'; buf[i] = 0; error = uiomove(buf, i, uio); - } else error = EINVAL; return error; @@ -1005,14 +884,7 @@ smbfs_getextattr(struct vop_getextattr_args *ap) * a callback mechanism because it will help to improve a level of consistency. */ int -smbfs_advlock(ap) - struct vop_advlock_args /* { - struct vnode *a_vp; - caddr_t a_id; - int a_op; - struct flock *a_fl; - int a_flags; - } */ *ap; +smbfs_advlock(struct vop_advlock_args *ap) { struct vnode *vp = ap->a_vp; struct smbnode *np = VTOSMB(vp); @@ -1161,13 +1033,7 @@ smbfs_pathcheck(struct smbmount *smp, const char *name, int nmlen, int nameiop) * Things go even weird without fixed inode numbers... */ int -smbfs_lookup(ap) - struct vop_lookup_args /* { - struct vnodeop_desc *a_desc; - struct vnode *a_dvp; - struct vnode **a_vpp; - struct componentname *a_cnp; - } */ *ap; +smbfs_lookup(struct vop_lookup_args *ap) { struct componentname *cnp = ap->a_cnp; struct thread *td = cnp->cn_thread; From nobody Sun Apr 9 21:35:43 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllN69bKz44JSD; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllN1J9hz4N4F; Sun, 9 Apr 2023 21:35:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076144; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UVhY52+YD7S2cqcFlgENWZICTa1p/XX2KRgF3e/N0Yg=; b=wRGmvLOhye9Xr2i1JPIv68jeQmyi1jI5jv9oIi+fhqT8WczzoYKuL+u1+4wdOuqzMhPyyi GmeQTVddFSOr3uSSHDg3f6z6I+EfUyXXhCCfu0EkXd8znLEoub31ClEqKYvnFG2hpXmXyk 3XvgUChk+dKjld26r6E5A1lETYcqyYuIy/rJKM5ZuCb7xVK2HyEllH8BmUTbd5Z1NZa2/X rSoPnjl2jBeCSvSTLllW5DnqLzhce6Wt22BhgfpelJi/302V/bIzgqsRudImQzbutTxBM2 YxdifrqBaIOl8G7iDDbJGsrlde4k2sqKOgYMBGN0yFr6MXZPc46BE0EbQOO2ag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076144; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UVhY52+YD7S2cqcFlgENWZICTa1p/XX2KRgF3e/N0Yg=; b=GvrRIB/6VyPJWTW92Ip9hl+qWWI9wryehmQQesdwUTiGfSzRad/TX8njDIelTWIiDalkJZ f5pE1gnDFX+UCcu6w9WoZZXT8wps4X0KHcYIXkpOLaFkEZDEw76M1mD2JQxAg3Ogku4OWR QbZZRpBD3dS645hABLDE09aytWonrZK+P5nAUaISKpYTk5ewu7bo//Tr4gp+cmYGyz8Qtb JYIUD8nKjIl/PXPa5uLqAq6+d/GOnJFZt38GoNKGmrAAEfRWIM4GxgPRCpZFkzDBAR3tRm LhnmPM6+NeBWIrjtfQtrLg7ybZ5Dg4qkWeAwYY+O4X9bU+BGXEvw5YyHogRE4A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076144; a=rsa-sha256; cv=none; b=s01/o9u4c5MGZBrSwhrCxCxeaMOcVaa4EVkRe+1IRp4B9bDTykTsDIQkZVdf+Bda2YZSpF rbq91l8vdYSJJ72EXOrHmhXK0XByrqh2/YE4SNHl4CTO/5aIsiZwXR3fI6txagsDVlpbIk 3DhopkhWo8ek8r0Bim38QFhYNtSewAZDjiK820v1YjQrxnAdehhcmdFxQvKx2de4Z6KvrB ENfw7RTp5f2JazGXbaHeGIKnmI0dAU/F2yYKmIajnW5bYcc1yA2gRXllJFipDhdUxG8G2V bph4xfk9TkHhu1WoCdyGVr91YOci+Lc86Ful6icD7Du849Z1CjGGnj/GXrHJsg== 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 4PvllN05MhzPF8; Sun, 9 Apr 2023 21:35:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZhFk082042; Sun, 9 Apr 2023 21:35:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZhsP082041; Sun, 9 Apr 2023 21:35:43 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:43 GMT Message-Id: <202304092135.339LZhsP082041@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 13def8c17d25 - stable/13 - sk: ansify List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 13def8c17d2501f24563e0b77501a870a17c900f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=13def8c17d2501f24563e0b77501a870a17c900f commit 13def8c17d2501f24563e0b77501a870a17c900f Author: Mateusz Guzik AuthorDate: 2023-02-08 00:05:03 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 15:46:45 +0000 sk: ansify Reported by: clang 15 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 82c519c21f15b7ce4775a7484aa4354f40771480) --- sys/dev/sk/if_sk.c | 225 +++++++++++++++-------------------------------------- 1 file changed, 64 insertions(+), 161 deletions(-) diff --git a/sys/dev/sk/if_sk.c b/sys/dev/sk/if_sk.c index 809cfa6f9e14..9a0dc1eab81f 100644 --- a/sys/dev/sk/if_sk.c +++ b/sys/dev/sk/if_sk.c @@ -364,9 +364,7 @@ static struct resource_spec sk_res_spec_mem[] = { sk_win_write_2(sc, reg, sk_win_read_2(sc, reg) & ~x) static u_int32_t -sk_win_read_4(sc, reg) - struct sk_softc *sc; - int reg; +sk_win_read_4(struct sk_softc *sc, int reg) { #ifdef SK_USEIOSPACE CSR_WRITE_4(sc, SK_RAP, SK_WIN(reg)); @@ -377,9 +375,7 @@ sk_win_read_4(sc, reg) } static u_int16_t -sk_win_read_2(sc, reg) - struct sk_softc *sc; - int reg; +sk_win_read_2(struct sk_softc *sc, int reg) { #ifdef SK_USEIOSPACE CSR_WRITE_4(sc, SK_RAP, SK_WIN(reg)); @@ -390,9 +386,7 @@ sk_win_read_2(sc, reg) } static u_int8_t -sk_win_read_1(sc, reg) - struct sk_softc *sc; - int reg; +sk_win_read_1(struct sk_softc *sc, int reg) { #ifdef SK_USEIOSPACE CSR_WRITE_4(sc, SK_RAP, SK_WIN(reg)); @@ -403,10 +397,7 @@ sk_win_read_1(sc, reg) } static void -sk_win_write_4(sc, reg, val) - struct sk_softc *sc; - int reg; - u_int32_t val; +sk_win_write_4(struct sk_softc *sc, int reg, u_int32_t val) { #ifdef SK_USEIOSPACE CSR_WRITE_4(sc, SK_RAP, SK_WIN(reg)); @@ -418,10 +409,7 @@ sk_win_write_4(sc, reg, val) } static void -sk_win_write_2(sc, reg, val) - struct sk_softc *sc; - int reg; - u_int32_t val; +sk_win_write_2(struct sk_softc *sc, int reg, u_int32_t val) { #ifdef SK_USEIOSPACE CSR_WRITE_4(sc, SK_RAP, SK_WIN(reg)); @@ -433,10 +421,7 @@ sk_win_write_2(sc, reg, val) } static void -sk_win_write_1(sc, reg, val) - struct sk_softc *sc; - int reg; - u_int32_t val; +sk_win_write_1(struct sk_softc *sc, int reg, u_int32_t val) { #ifdef SK_USEIOSPACE CSR_WRITE_4(sc, SK_RAP, SK_WIN(reg)); @@ -448,9 +433,7 @@ sk_win_write_1(sc, reg, val) } static int -sk_miibus_readreg(dev, phy, reg) - device_t dev; - int phy, reg; +sk_miibus_readreg(device_t dev, int phy, int reg) { struct sk_if_softc *sc_if; int v; @@ -477,9 +460,7 @@ sk_miibus_readreg(dev, phy, reg) } static int -sk_miibus_writereg(dev, phy, reg, val) - device_t dev; - int phy, reg, val; +sk_miibus_writereg(device_t dev, int phy, int reg, int val) { struct sk_if_softc *sc_if; int v; @@ -506,8 +487,7 @@ sk_miibus_writereg(dev, phy, reg, val) } static void -sk_miibus_statchg(dev) - device_t dev; +sk_miibus_statchg(device_t dev) { struct sk_if_softc *sc_if; @@ -530,9 +510,7 @@ sk_miibus_statchg(dev) } static int -sk_xmac_miibus_readreg(sc_if, phy, reg) - struct sk_if_softc *sc_if; - int phy, reg; +sk_xmac_miibus_readreg(struct sk_if_softc *sc_if, int phy, int reg) { int i; @@ -558,9 +536,7 @@ sk_xmac_miibus_readreg(sc_if, phy, reg) } static int -sk_xmac_miibus_writereg(sc_if, phy, reg, val) - struct sk_if_softc *sc_if; - int phy, reg, val; +sk_xmac_miibus_writereg(struct sk_if_softc *sc_if, int phy, int reg, int val) { int i; @@ -588,8 +564,7 @@ sk_xmac_miibus_writereg(sc_if, phy, reg, val) } static void -sk_xmac_miibus_statchg(sc_if) - struct sk_if_softc *sc_if; +sk_xmac_miibus_statchg(struct sk_if_softc *sc_if) { struct mii_data *mii; @@ -609,9 +584,7 @@ sk_xmac_miibus_statchg(sc_if) } static int -sk_marv_miibus_readreg(sc_if, phy, reg) - struct sk_if_softc *sc_if; - int phy, reg; +sk_marv_miibus_readreg(struct sk_if_softc *sc_if, int phy, int reg) { u_int16_t val; int i; @@ -642,9 +615,7 @@ sk_marv_miibus_readreg(sc_if, phy, reg) } static int -sk_marv_miibus_writereg(sc_if, phy, reg, val) - struct sk_if_softc *sc_if; - int phy, reg, val; +sk_marv_miibus_writereg(struct sk_if_softc *sc_if, int phy, int reg, int val) { int i; @@ -664,8 +635,7 @@ sk_marv_miibus_writereg(sc_if, phy, reg, val) } static void -sk_marv_miibus_statchg(sc_if) - struct sk_if_softc *sc_if; +sk_marv_miibus_statchg(struct sk_if_softc *sc_if) { return; } @@ -673,8 +643,7 @@ sk_marv_miibus_statchg(sc_if) #define HASH_BITS 6 static u_int32_t -sk_xmchash(addr) - const uint8_t *addr; +sk_xmchash(const uint8_t *addr) { uint32_t crc; @@ -685,10 +654,7 @@ sk_xmchash(addr) } static void -sk_setfilt(sc_if, addr, slot) - struct sk_if_softc *sc_if; - u_int16_t *addr; - int slot; +sk_setfilt(struct sk_if_softc *sc_if, u_int16_t *addr, int slot) { int base; @@ -702,8 +668,7 @@ sk_setfilt(sc_if, addr, slot) } static void -sk_rxfilter(sc_if) - struct sk_if_softc *sc_if; +sk_rxfilter(struct sk_if_softc *sc_if) { struct sk_softc *sc; @@ -826,8 +791,7 @@ sk_rxfilter_yukon(struct sk_if_softc *sc_if) } static int -sk_init_rx_ring(sc_if) - struct sk_if_softc *sc_if; +sk_init_rx_ring(struct sk_if_softc *sc_if) { struct sk_ring_data *rd; bus_addr_t addr; @@ -859,8 +823,7 @@ sk_init_rx_ring(sc_if) } static int -sk_init_jumbo_rx_ring(sc_if) - struct sk_if_softc *sc_if; +sk_init_jumbo_rx_ring(struct sk_if_softc *sc_if) { struct sk_ring_data *rd; bus_addr_t addr; @@ -893,8 +856,7 @@ sk_init_jumbo_rx_ring(sc_if) } static void -sk_init_tx_ring(sc_if) - struct sk_if_softc *sc_if; +sk_init_tx_ring(struct sk_if_softc *sc_if) { struct sk_ring_data *rd; struct sk_txdesc *txd; @@ -926,9 +888,7 @@ sk_init_tx_ring(sc_if) } static __inline void -sk_discard_rxbuf(sc_if, idx) - struct sk_if_softc *sc_if; - int idx; +sk_discard_rxbuf(struct sk_if_softc *sc_if, int idx) { struct sk_rx_desc *r; struct sk_rxdesc *rxd; @@ -941,9 +901,7 @@ sk_discard_rxbuf(sc_if, idx) } static __inline void -sk_discard_jumbo_rxbuf(sc_if, idx) - struct sk_if_softc *sc_if; - int idx; +sk_discard_jumbo_rxbuf(struct sk_if_softc *sc_if, int idx) { struct sk_rx_desc *r; struct sk_rxdesc *rxd; @@ -956,9 +914,7 @@ sk_discard_jumbo_rxbuf(sc_if, idx) } static int -sk_newbuf(sc_if, idx) - struct sk_if_softc *sc_if; - int idx; +sk_newbuf(struct sk_if_softc *sc_if, int idx) { struct sk_rx_desc *r; struct sk_rxdesc *rxd; @@ -1001,9 +957,7 @@ sk_newbuf(sc_if, idx) } static int -sk_jumbo_newbuf(sc_if, idx) - struct sk_if_softc *sc_if; - int idx; +sk_jumbo_newbuf(struct sk_if_softc *sc_if, int idx) { struct sk_rx_desc *r; struct sk_rxdesc *rxd; @@ -1055,8 +1009,7 @@ sk_jumbo_newbuf(sc_if, idx) * Set media options. */ static int -sk_ifmedia_upd(ifp) - struct ifnet *ifp; +sk_ifmedia_upd(struct ifnet *ifp) { struct sk_if_softc *sc_if = ifp->if_softc; struct mii_data *mii; @@ -1072,9 +1025,7 @@ sk_ifmedia_upd(ifp) * Report current media status. */ static void -sk_ifmedia_sts(ifp, ifmr) - struct ifnet *ifp; - struct ifmediareq *ifmr; +sk_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) { struct sk_if_softc *sc_if; struct mii_data *mii; @@ -1090,10 +1041,7 @@ sk_ifmedia_sts(ifp, ifmr) } static int -sk_ioctl(ifp, command, data) - struct ifnet *ifp; - u_long command; - caddr_t data; +sk_ioctl(struct ifnet *ifp, u_long command, caddr_t data) { struct sk_if_softc *sc_if = ifp->if_softc; struct ifreq *ifr = (struct ifreq *) data; @@ -1181,8 +1129,7 @@ sk_ioctl(ifp, command, data) * IDs against our list and return a device name if we find a match. */ static int -skc_probe(dev) - device_t dev; +skc_probe(device_t dev) { const struct sk_type *t = sk_devs; @@ -1213,8 +1160,7 @@ skc_probe(dev) * Force the GEnesis into reset, then bring it out of reset. */ static void -sk_reset(sc) - struct sk_softc *sc; +sk_reset(struct sk_softc *sc) { CSR_WRITE_2(sc, SK_CSR, SK_CSR_SW_RESET); @@ -1271,8 +1217,7 @@ sk_reset(sc) } static int -sk_probe(dev) - device_t dev; +sk_probe(device_t dev) { struct sk_softc *sc; @@ -1303,8 +1248,7 @@ sk_probe(dev) * Single port cards will have only one logical interface of course. */ static int -sk_attach(dev) - device_t dev; +sk_attach(device_t dev) { struct sk_softc *sc; struct sk_if_softc *sc_if; @@ -1539,8 +1483,7 @@ fail: * setup and ethernet/BPF attach. */ static int -skc_attach(dev) - device_t dev; +skc_attach(device_t dev) { struct sk_softc *sc; int error = 0, *port; @@ -1815,8 +1758,7 @@ fail: * allocated. */ static int -sk_detach(dev) - device_t dev; +sk_detach(device_t dev) { struct sk_if_softc *sc_if; struct ifnet *ifp; @@ -1857,8 +1799,7 @@ sk_detach(dev) } static int -skc_detach(dev) - device_t dev; +skc_detach(device_t dev) { struct sk_softc *sc; @@ -1899,11 +1840,7 @@ struct sk_dmamap_arg { }; static void -sk_dmamap_cb(arg, segs, nseg, error) - void *arg; - bus_dma_segment_t *segs; - int nseg; - int error; +sk_dmamap_cb(void *arg, bus_dma_segment_t *segs, int nseg, int error) { struct sk_dmamap_arg *ctx; @@ -1924,8 +1861,7 @@ sk_dmamap_cb(arg, segs, nseg, error) * excessive amount of additional code. */ static int -sk_dma_alloc(sc_if) - struct sk_if_softc *sc_if; +sk_dma_alloc(struct sk_if_softc *sc_if) { struct sk_dmamap_arg ctx; struct sk_txdesc *txd; @@ -2112,8 +2048,7 @@ fail: } static int -sk_dma_jumbo_alloc(sc_if) - struct sk_if_softc *sc_if; +sk_dma_jumbo_alloc(struct sk_if_softc *sc_if) { struct sk_dmamap_arg ctx; struct sk_rxdesc *jrxd; @@ -2214,8 +2149,7 @@ jumbo_fail: } static void -sk_dma_free(sc_if) - struct sk_if_softc *sc_if; +sk_dma_free(struct sk_if_softc *sc_if) { struct sk_txdesc *txd; struct sk_rxdesc *rxd; @@ -2288,8 +2222,7 @@ sk_dma_free(sc_if) } static void -sk_dma_jumbo_free(sc_if) - struct sk_if_softc *sc_if; +sk_dma_jumbo_free(struct sk_if_softc *sc_if) { struct sk_rxdesc *jrxd; int i; @@ -2331,10 +2264,7 @@ sk_dma_jumbo_free(sc_if) } static void -sk_txcksum(ifp, m, f) - struct ifnet *ifp; - struct mbuf *m; - struct sk_tx_desc *f; +sk_txcksum(struct ifnet *ifp, struct mbuf *m, struct sk_tx_desc *f) { struct ip *ip; u_int16_t offset; @@ -2377,9 +2307,7 @@ sendit: } static int -sk_encap(sc_if, m_head) - struct sk_if_softc *sc_if; - struct mbuf **m_head; +sk_encap(struct sk_if_softc *sc_if, struct mbuf **m_head) { struct sk_txdesc *txd; struct sk_tx_desc *f = NULL; @@ -2469,8 +2397,7 @@ sk_encap(sc_if, m_head) } static void -sk_start(ifp) - struct ifnet *ifp; +sk_start(struct ifnet *ifp) { struct sk_if_softc *sc_if; @@ -2484,8 +2411,7 @@ sk_start(ifp) } static void -sk_start_locked(ifp) - struct ifnet *ifp; +sk_start_locked(struct ifnet *ifp) { struct sk_softc *sc; struct sk_if_softc *sc_if; @@ -2534,8 +2460,7 @@ sk_start_locked(ifp) } static void -sk_watchdog(arg) - void *arg; +sk_watchdog(void *arg) { struct sk_if_softc *sc_if; struct ifnet *ifp; @@ -2567,8 +2492,7 @@ done: } static int -skc_shutdown(dev) - device_t dev; +skc_shutdown(device_t dev) { struct sk_softc *sc; @@ -2589,8 +2513,7 @@ skc_shutdown(dev) } static int -skc_suspend(dev) - device_t dev; +skc_suspend(device_t dev) { struct sk_softc *sc; struct sk_if_softc *sc_if0, *sc_if1; @@ -2618,8 +2541,7 @@ skc_suspend(dev) } static int -skc_resume(dev) - device_t dev; +skc_resume(device_t dev) { struct sk_softc *sc; struct sk_if_softc *sc_if0, *sc_if1; @@ -2661,10 +2583,7 @@ skc_resume(dev) * TCP/UDP checksum offload support. */ static __inline void -sk_rxcksum(ifp, m, csum) - struct ifnet *ifp; - struct mbuf *m; - u_int32_t csum; +sk_rxcksum(struct ifnet *ifp, struct mbuf *m, u_int32_t csum) { struct ether_header *eh; struct ip *ip; @@ -2713,9 +2632,7 @@ sk_rxcksum(ifp, m, csum) } static __inline int -sk_rxvalid(sc, stat, len) - struct sk_softc *sc; - u_int32_t stat, len; +sk_rxvalid(struct sk_softc *sc, u_int32_t stat, u_int32_t len) { if (sc->sk_type == SK_GENESIS) { @@ -2735,8 +2652,7 @@ sk_rxvalid(sc, stat, len) } static void -sk_rxeof(sc_if) - struct sk_if_softc *sc_if; +sk_rxeof(struct sk_if_softc *sc_if) { struct sk_softc *sc; struct mbuf *m; @@ -2802,8 +2718,7 @@ sk_rxeof(sc_if) } static void -sk_jumbo_rxeof(sc_if) - struct sk_if_softc *sc_if; +sk_jumbo_rxeof(struct sk_if_softc *sc_if) { struct sk_softc *sc; struct mbuf *m; @@ -2870,8 +2785,7 @@ sk_jumbo_rxeof(sc_if) } static void -sk_txeof(sc_if) - struct sk_if_softc *sc_if; +sk_txeof(struct sk_if_softc *sc_if) { struct sk_txdesc *txd; struct sk_tx_desc *cur_tx; @@ -2920,8 +2834,7 @@ sk_txeof(sc_if) } static void -sk_tick(xsc_if) - void *xsc_if; +sk_tick(void *xsc_if) { struct sk_if_softc *sc_if; struct mii_data *mii; @@ -2965,8 +2878,7 @@ sk_tick(xsc_if) } static void -sk_yukon_tick(xsc_if) - void *xsc_if; +sk_yukon_tick(void *xsc_if) { struct sk_if_softc *sc_if; struct mii_data *mii; @@ -2979,8 +2891,7 @@ sk_yukon_tick(xsc_if) } static void -sk_intr_bcom(sc_if) - struct sk_if_softc *sc_if; +sk_intr_bcom(struct sk_if_softc *sc_if) { struct mii_data *mii; struct ifnet *ifp; @@ -3033,8 +2944,7 @@ sk_intr_bcom(sc_if) } static void -sk_intr_xmac(sc_if) - struct sk_if_softc *sc_if; +sk_intr_xmac(struct sk_if_softc *sc_if) { struct sk_softc *sc; u_int16_t status; @@ -3069,8 +2979,7 @@ sk_intr_xmac(sc_if) } static void -sk_intr_yukon(sc_if) - struct sk_if_softc *sc_if; +sk_intr_yukon(struct sk_if_softc *sc_if) { u_int8_t status; @@ -3088,8 +2997,7 @@ sk_intr_yukon(sc_if) } static void -sk_intr(xsc) - void *xsc; +sk_intr(void *xsc) { struct sk_softc *sc = xsc; struct sk_if_softc *sc_if0, *sc_if1; @@ -3179,8 +3087,7 @@ done_locked: } static void -sk_init_xmac(sc_if) - struct sk_if_softc *sc_if; +sk_init_xmac(struct sk_if_softc *sc_if) { struct sk_softc *sc; struct ifnet *ifp; @@ -3341,8 +3248,7 @@ sk_init_xmac(sc_if) } static void -sk_init_yukon(sc_if) - struct sk_if_softc *sc_if; +sk_init_yukon(struct sk_if_softc *sc_if) { u_int32_t phy, v; u_int16_t reg; @@ -3475,8 +3381,7 @@ sk_init_yukon(sc_if) * you first have to take it out of reset mode. */ static void -sk_init(xsc) - void *xsc; +sk_init(void *xsc) { struct sk_if_softc *sc_if = xsc; @@ -3488,8 +3393,7 @@ sk_init(xsc) } static void -sk_init_locked(sc_if) - struct sk_if_softc *sc_if; +sk_init_locked(struct sk_if_softc *sc_if) { struct sk_softc *sc; struct ifnet *ifp; @@ -3688,8 +3592,7 @@ sk_init_locked(sc_if) } static void -sk_stop(sc_if) - struct sk_if_softc *sc_if; +sk_stop(struct sk_if_softc *sc_if) { int i; struct sk_softc *sc; From nobody Sun Apr 9 21:35:45 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllQ0w26z44JLN; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllP4Ybpz4N4Z; Sun, 9 Apr 2023 21:35:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076145; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hIC32nRgqHWBZnvWjw/ZmNdRw148TKyU7Kyn+8MLiLQ=; b=Y17VOSoUo/1z69JgjUq9j3nY6UZPWK/VosiP1k8GHkV07TCSLCVO6GhxT4DCIjysOuKqsT K71plfmTW6vmDgRECLv7rGP868E2pCJxCHLutsJQghFz1NGfO0H0p9UXMp3oa++w0nNXmz vQoEBmVxsUVj+VqeHi0BiMiaLX6eKhyEcZtCAd3T50X//Y+PQBdHcjoEQmXmGWmkYQu1ai QULoyxdgy+RR1nBBA13z5qENREgcPj5ocfGHwuhnuJ4KsPCwXpAhREVeOOtazfCEeCacfx 3MO8SxeGwTnuoZIeoBe9Ou1aLy+xxx/KKRrOThg6UO4CSmjTk1duyHqRAoONLQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076145; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hIC32nRgqHWBZnvWjw/ZmNdRw148TKyU7Kyn+8MLiLQ=; b=WPlsHZq57kuV9vW4bfsZjjUNqdwNjTB4N4VQvVYwVJ9U3D0j5nsqqb9NRgvfv9W/C4t9t3 SU4lKFJSLB11AO0ZVeAl070i5CHAr1KCC83T+r/V1wVOroiuw5copL+kHaJXUGuTn9UOzL n0H2yhephFO0da2Pp/3pc6m4fZlJXBE30y/jXS25O93tHxM0Re2sKC0AuODtkEzZoLM4Dz TG0vLdi0k+V+D9nDoLTO0mCXE29FmHZ954ReJJWV48rNH8XEVsCcXIp1F5yfbTovvZQU3e tthzlv/L5fErna0YrfSCygRXvCCO6zkmkfBGDLsNIwdSePmIrKyIEGX1bGXiCA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076145; a=rsa-sha256; cv=none; b=ug8jXvggL2f3lgj7a56oKCGoQBBp91AQf+69X/S8Ay0DIXtCIpk95xKYJVdrQRush6EbTI 15oHzVBQu03vVR5vqsjlqFZsaOCvUkoqKkWl5XBkTr4HSrf/FeKOOrDGCSEwo0EfQ1lDmn lDyR/0sw3g0OIDPvuFSHqN0xmNx4TlWvkhHt5jIRGkw7liRgziMwS4XBNJlLPZNmQ8H7yl aXrRPqHuWYi16tPGo8M672GitjxZpy4GeIvUZHHghSEo1055iycuAi08lqNt4paUnCGlwu IoE7fWKWnUKe3rH6+G208zMA1Vk6tHt33/COfLFDlfBfCEeE1V1Qes374DPRTQ== 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 4PvllP18NnzPS9; Sun, 9 Apr 2023 21:35:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZjQa082061; Sun, 9 Apr 2023 21:35:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZj7I082060; Sun, 9 Apr 2023 21:35:45 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:45 GMT Message-Id: <202304092135.339LZj7I082060@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 7ec88f5b4b3b - stable/13 - ddb: ansify List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 7ec88f5b4b3bd10016a8b831a189dafb15f759fd Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=7ec88f5b4b3bd10016a8b831a189dafb15f759fd commit 7ec88f5b4b3bd10016a8b831a189dafb15f759fd Author: Mateusz Guzik AuthorDate: 2023-02-08 00:09:23 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 15:46:48 +0000 ddb: ansify Reported by: clang 15 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit fb1b78bfcead2126f9a984ac1c3e6a3a7e505f83) --- sys/ddb/db_input.c | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/sys/ddb/db_input.c b/sys/ddb/db_input.c index 41396e0a041f..b4bd667067c6 100644 --- a/sys/ddb/db_input.c +++ b/sys/ddb/db_input.c @@ -72,18 +72,14 @@ static void db_putnchars(int c, int count); static void db_putstring(char *s, int count); static void -db_putstring(s, count) - char *s; - int count; +db_putstring(char *s, int count) { while (--count >= 0) cnputc(*s++); } static void -db_putnchars(c, count) - int c; - int count; +db_putnchars(int c, int count) { while (--count >= 0) cnputc(c); @@ -95,9 +91,7 @@ db_putnchars(c, count) #define DEL_FWD 0 #define DEL_BWD 1 static void -db_delete(n, bwd) - int n; - int bwd; +db_delete(int n, int bwd) { char *p; @@ -116,8 +110,7 @@ db_delete(n, bwd) /* returns true at end-of-line */ static int -db_inputchar(c) - int c; +db_inputchar(int c) { static int escstate; @@ -314,9 +307,7 @@ cnmaygetc() } int -db_readline(lstart, lsize) - char * lstart; - int lsize; +db_readline(char *lstart, int lsize) { if (lsize < 2) From nobody Sun Apr 9 21:35:46 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllR02ZZz44JYP; Sun, 9 Apr 2023 21:35:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllQ5cLxz4Mwx; Sun, 9 Apr 2023 21:35:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076146; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w3HMaKwLBLCknmPFqfEEHytcp43ebCdyDz13A8OglDg=; b=nzQHdGbmSx8CiFmSf8LnLyKKrzlSwaVOotA1QDQHsqNhvNbgWYu53MPYXoMoBmJbXpbQtO ow6E6wk0wFZcaib2SbATsG2wb9yV6tCCIqHK1hrbr+fG353Fyv5z/jJg7DcO2THa6gnIPj 6OIGQj5mXTUKQ4Y/q0T+VZd9jZYaeAlox7ykHAae4Y/wLGli5ryIFVEh1x+45OcNt/1gQJ HDMrjcjJvje68DsCpM45bs6aQzK/0CptJ9UMhXm5uFVHUGDgCN7qNGZPmYK1yuqMxOZ34m dU19tIz1y1L5TQVFZ3bTjtAUYPVpKnsBP0nfOY4HGoyOlSnsAL5Knmm/bepkQg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076146; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w3HMaKwLBLCknmPFqfEEHytcp43ebCdyDz13A8OglDg=; b=rAXhH61UygL6VjZip54HokZB6Vblykqoby3s7W4IV/RSfTHZ8GGTXmrIoFwgcDgYstDc4D BEAYMiYLMMQXApr3JunnStg93lmgrYtOr9kTk+Zg0pttw8aJ0HfvdUtBtP6sNGZq/mWduc NXbRaUl9hxxKWIluc+QXMI3EQILVIf4ASsiEyxPETPolydQH+8jd7p4ysk9+CbRLvDvRKg nlXJiysPj1l5BjyvKiePoLgTUIRUkQVl9bzPBu8SWPd10TimUxrBezH2EL5C+jqwbb+rg5 m0caLzEPNfQMKwR33HNZmWzpOBvzWBJZ3BwW1kV7R9cO48WpJaSamE+NcAysLQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076146; a=rsa-sha256; cv=none; b=tjdqE3tmleQ138/fImCfY1PEQejS+r2cROHl5Ob753cANuXlCJ1In2vjYaesDcLCU/pYXj P4K0SOXaQaZW67GQCA4/GX4xZ3fjO5Mg+KI2FnXglkxsMhlW9VYFO3vzLdgST/woShirgy Ebl7OYJur9SN9gwfojPBmiWNvVE4ZsN/yQmxbAO5B/dUyZXc8hh6fKPlNbQIMyubewMbIK uZT46tbIlvbyQX8et48DiQWFmXCvovoBN+LTbeQR3z1JBbluNKNPwNNXjN9OFrAHSwXF+G 7U3qC87zTjURMcrrJKNsa+A6XkAiOJydVPbhe/5lS7YWn0tqZydVNUPWUiH27w== 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 4PvllQ1s6lzPfB; Sun, 9 Apr 2023 21:35:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZktF082084; Sun, 9 Apr 2023 21:35:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZkxF082083; Sun, 9 Apr 2023 21:35:46 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:46 GMT Message-Id: <202304092135.339LZkxF082083@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 7ccd87e8a211 - stable/13 - sysv: ansify List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 7ccd87e8a21150794f51968479aec6bd0eff6071 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=7ccd87e8a21150794f51968479aec6bd0eff6071 commit 7ccd87e8a21150794f51968479aec6bd0eff6071 Author: Mateusz Guzik AuthorDate: 2023-02-08 00:11:10 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 15:46:48 +0000 sysv: ansify Reported by: clang 15 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 08d357287b4306b24110dc5ff15bcf5d51f79b28) --- sys/kern/sysv_sem.c | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/sys/kern/sysv_sem.c b/sys/kern/sysv_sem.c index 65fe2a233572..5f5446d8a8d8 100644 --- a/sys/kern/sysv_sem.c +++ b/sys/kern/sysv_sem.c @@ -1765,16 +1765,7 @@ static sy_call_t *semcalls[] = { * Entry point for all SEM calls. */ int -sys_semsys(td, uap) - struct thread *td; - /* XXX actually varargs. */ - struct semsys_args /* { - int which; - int a2; - int a3; - int a4; - int a5; - } */ *uap; +sys_semsys(struct thread *td, struct semsys_args *uap) { int error; From nobody Sun Apr 9 21:35:47 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllS0GXVz44Jd3; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllR4c68z4N0L; Sun, 9 Apr 2023 21:35:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076147; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kYAQeSjGuABkRQjiLdJBOsOgPIiDm3tqVgDLRYvtKd0=; b=vx9PlG5+AP0WkYmIDH4pfmBUUQ/UzoStRAA539kFvuhp7BcCM1YBm78/DUnz0KAfg2dTkE XVwaEFec6RYz6i5eEwwtJcGW+eN3W+0tJVyXPzL1TnScJ0kLolElwL7rMPcwZLzwJqC8pR i7cqLvMP1JaM9TnSrjGbPqUjW6G+gSqRm5S3ldtArCvsgNEzX1S7eNABP3+7kdWqY6pytX AsO5oIYGxWnQwWxYsvMTRp70St65n8WcOI+jiCuP1So8L7vZVsLn2WrAOhq11vuSjjiE7g ttryuS77EvSsfmEQ6bPvi8y6LoFeVFqW8alBNbw6OJblqQQCqD8y19XzpQBgTA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076147; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kYAQeSjGuABkRQjiLdJBOsOgPIiDm3tqVgDLRYvtKd0=; b=V+95s2mYRi5CJmZLkOQnUlyOhsoJMBFfj+ZHXlzP3PHyrD61UkorIOgscCxmR4cVR2Jdpp il6zE+sJpSNskO9JEjeG2KU9iXy0Go6mp/iVLlQk2fcfDlBXXFmvZKBoIECeC1ZtGy1o+4 3jm/p9wyVnJe8mV2enDOMkPWSwdGvhLAhNK65AgD/cTr8rx6WYM9xP2HX/PZ7VXFOQsFzB tM2Gh4c6RoGc9lL/lAqw/m/f1kCYZKGbHmXNFW85D0V1/ohrv1BZCaGDvisE6k+JvdcKJD uZ+3MQ8vK1n2jkuCcgB/SqrRxlfO9mYej4A5lKkfUm1Xc9H0GXKtLkKgvjg9OQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076147; a=rsa-sha256; cv=none; b=mHCAQZJW5+JSDJgx3R4/nJE6/NDHpl7gohzCr7AUW5dXzgF4r5SXL8X5HB+MK+/x0JCbTB uMbDsL+dyY6PIuROZGa+j9vlJJqpoXBlDj9aUDG329d+r//6aIXdqLRFTIT2MgLVOMzOtp ccQvA30oUSqS9y3HXTVWQx070RmMQ87EyuNdV9yqVbKHCksu4/GgodyCTEk095Hiq2wqAg F73TahsuG3n4kwFAcTer2AYWsAlAgm4QWAP4+Z67orzeKUkRdkgavBJT3NkG7AZwVJaFh5 xFtP3jfdigbFjsj/8Ar819OKI/1EjE6D6josGLV5pkawU9U0YWqbiUtzt40PrA== 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 4PvllR31KhzPKY; Sun, 9 Apr 2023 21:35:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZl2a082105; Sun, 9 Apr 2023 21:35:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZlA4082104; Sun, 9 Apr 2023 21:35:47 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:47 GMT Message-Id: <202304092135.339LZlA4082104@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 7d757e3c03b8 - stable/13 - lge: ansify List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 7d757e3c03b850512fe7cac7c4345c0cdd72f19b Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=7d757e3c03b850512fe7cac7c4345c0cdd72f19b commit 7d757e3c03b850512fe7cac7c4345c0cdd72f19b Author: Mateusz Guzik AuthorDate: 2023-02-12 21:37:24 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 15:48:04 +0000 lge: ansify Reported by: clang 15 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 16d10ee0235abb217773aa46b927c8c1513f3261) --- sys/dev/lge/if_lge.c | 123 ++++++++++++++++----------------------------------- 1 file changed, 37 insertions(+), 86 deletions(-) diff --git a/sys/dev/lge/if_lge.c b/sys/dev/lge/if_lge.c index 298b66b1b0e2..1458444bd269 100644 --- a/sys/dev/lge/if_lge.c +++ b/sys/dev/lge/if_lge.c @@ -213,10 +213,7 @@ MODULE_DEPEND(lge, miibus, 1, 1, 1); * Read a word of data stored in the EEPROM at address 'addr.' */ static void -lge_eeprom_getword(sc, addr, dest) - struct lge_softc *sc; - int addr; - u_int16_t *dest; +lge_eeprom_getword(struct lge_softc *sc, int addr, u_int16_t *dest) { int i; u_int32_t val; @@ -247,12 +244,7 @@ lge_eeprom_getword(sc, addr, dest) * Read a sequence of words from the EEPROM. */ static void -lge_read_eeprom(sc, dest, off, cnt, swap) - struct lge_softc *sc; - caddr_t dest; - int off; - int cnt; - int swap; +lge_read_eeprom(struct lge_softc *sc, caddr_t dest, int off, int cnt, int swap) { int i; u_int16_t word = 0, *ptr; @@ -270,9 +262,7 @@ lge_read_eeprom(sc, dest, off, cnt, swap) } static int -lge_miibus_readreg(dev, phy, reg) - device_t dev; - int phy, reg; +lge_miibus_readreg(device_t dev, int phy, int reg) { struct lge_softc *sc; int i; @@ -302,9 +292,7 @@ lge_miibus_readreg(dev, phy, reg) } static int -lge_miibus_writereg(dev, phy, reg, data) - device_t dev; - int phy, reg, data; +lge_miibus_writereg(device_t dev, int phy, int reg, int data) { struct lge_softc *sc; int i; @@ -327,8 +315,7 @@ lge_miibus_writereg(dev, phy, reg, data) } static void -lge_miibus_statchg(dev) - device_t dev; +lge_miibus_statchg(device_t dev) { struct lge_softc *sc; struct mii_data *mii; @@ -381,8 +368,7 @@ lge_hash_maddr(void *arg, struct sockaddr_dl *sdl, u_int count) } static void -lge_setmulti(sc) - struct lge_softc *sc; +lge_setmulti(struct lge_softc *sc) { struct ifnet *ifp; uint32_t hashes[2] = { 0, 0 }; @@ -413,8 +399,7 @@ lge_setmulti(sc) } static void -lge_reset(sc) - struct lge_softc *sc; +lge_reset(struct lge_softc *sc) { int i; @@ -431,7 +416,7 @@ lge_reset(sc) /* Wait a little while for the chip to get its brains in order. */ DELAY(1000); - return; + return; } /* @@ -439,8 +424,7 @@ lge_reset(sc) * IDs against our list and return a device name if we find a match. */ static int -lge_probe(dev) - device_t dev; +lge_probe(device_t dev) { const struct lge_type *t; @@ -463,8 +447,7 @@ lge_probe(dev) * setup and ethernet/BPF attach. */ static int -lge_attach(dev) - device_t dev; +lge_attach(device_t dev) { u_char eaddr[ETHER_ADDR_LEN]; struct lge_softc *sc; @@ -473,7 +456,7 @@ lge_attach(dev) sc = device_get_softc(dev); sc->lge_dev = dev; - + mtx_init(&sc->lge_mtx, device_get_nameunit(dev), MTX_NETWORK_LOCK, MTX_DEF); callout_init_mtx(&sc->lge_stat_callout, &sc->lge_mtx, 0); @@ -594,8 +577,7 @@ fail: } static int -lge_detach(dev) - device_t dev; +lge_detach(device_t dev) { struct lge_softc *sc; struct ifnet *ifp; @@ -629,8 +611,7 @@ lge_detach(dev) * Initialize the transmit descriptors. */ static int -lge_list_tx_init(sc) - struct lge_softc *sc; +lge_list_tx_init(struct lge_softc *sc) { struct lge_list_data *ld; struct lge_ring_data *cd; @@ -655,8 +636,7 @@ lge_list_tx_init(sc) * points back to the first. */ static int -lge_list_rx_init(sc) - struct lge_softc *sc; +lge_list_rx_init(struct lge_softc *sc) { struct lge_list_data *ld; struct lge_ring_data *cd; @@ -686,10 +666,7 @@ lge_list_rx_init(sc) * Initialize an RX descriptor and attach an MBUF cluster. */ static int -lge_newbuf(sc, c, m) - struct lge_softc *sc; - struct lge_rx_desc *c; - struct mbuf *m; +lge_newbuf(struct lge_softc *sc, struct lge_rx_desc *c, struct mbuf *m) { struct mbuf *m_new = NULL; char *buf = NULL; @@ -754,8 +731,7 @@ lge_newbuf(sc, c, m) } static int -lge_alloc_jumbo_mem(sc) - struct lge_softc *sc; +lge_alloc_jumbo_mem(struct lge_softc *sc) { caddr_t ptr; int i; @@ -797,8 +773,7 @@ lge_alloc_jumbo_mem(sc) } static void -lge_free_jumbo_mem(sc) - struct lge_softc *sc; +lge_free_jumbo_mem(struct lge_softc *sc) { struct lge_jpool_entry *entry; @@ -827,13 +802,12 @@ lge_free_jumbo_mem(sc) * Allocate a jumbo buffer. */ static void * -lge_jalloc(sc) - struct lge_softc *sc; +lge_jalloc(struct lge_softc *sc) { struct lge_jpool_entry *entry; - + entry = SLIST_FIRST(&sc->lge_jfree_listhead); - + if (entry == NULL) { #ifdef LGE_VERBOSE device_printf(sc->lge_dev, "no free jumbo buffers\n"); @@ -882,9 +856,7 @@ lge_jfree(struct mbuf *m) * the higher level protocols. */ static void -lge_rxeof(sc, cnt) - struct lge_softc *sc; - int cnt; +lge_rxeof(struct lge_softc *sc, int cnt) { struct mbuf *m; struct ifnet *ifp; @@ -966,8 +938,7 @@ lge_rxeof(sc, cnt) } static void -lge_rxeoc(sc) - struct lge_softc *sc; +lge_rxeoc(struct lge_softc *sc) { struct ifnet *ifp; @@ -983,8 +954,7 @@ lge_rxeoc(sc) */ static void -lge_txeof(sc) - struct lge_softc *sc; +lge_txeof(struct lge_softc *sc) { struct lge_tx_desc *cur_tx = NULL; struct ifnet *ifp; @@ -1026,8 +996,7 @@ lge_txeof(sc) } static void -lge_tick(xsc) - void *xsc; +lge_tick(void *xsc) { struct lge_softc *sc; struct mii_data *mii; @@ -1065,8 +1034,7 @@ lge_tick(xsc) } static void -lge_intr(arg) - void *arg; +lge_intr(void *arg) { struct lge_softc *sc; struct ifnet *ifp; @@ -1125,10 +1093,7 @@ lge_intr(arg) * pointers to the fragment pointers. */ static int -lge_encap(sc, m_head, txidx) - struct lge_softc *sc; - struct mbuf *m_head; - u_int32_t *txidx; +lge_encap(struct lge_softc *sc, struct mbuf *m_head, u_int32_t *txidx) { struct lge_frag *f = NULL; struct lge_tx_desc *cur_tx; @@ -1176,8 +1141,7 @@ lge_encap(sc, m_head, txidx) */ static void -lge_start(ifp) - struct ifnet *ifp; +lge_start(struct ifnet *ifp) { struct lge_softc *sc; @@ -1188,8 +1152,7 @@ lge_start(ifp) } static void -lge_start_locked(ifp) - struct ifnet *ifp; +lge_start_locked(struct ifnet *ifp) { struct lge_softc *sc; struct mbuf *m_head = NULL; @@ -1237,8 +1200,7 @@ lge_start_locked(ifp) } static void -lge_init(xsc) - void *xsc; +lge_init(void *xsc) { struct lge_softc *sc = xsc; @@ -1248,8 +1210,7 @@ lge_init(xsc) } static void -lge_init_locked(sc) - struct lge_softc *sc; +lge_init_locked(struct lge_softc *sc) { struct ifnet *ifp = sc->lge_ifp; @@ -1377,8 +1338,7 @@ lge_init_locked(sc) * Set media options. */ static int -lge_ifmedia_upd(ifp) - struct ifnet *ifp; +lge_ifmedia_upd(struct ifnet *ifp) { struct lge_softc *sc; @@ -1391,8 +1351,7 @@ lge_ifmedia_upd(ifp) } static void -lge_ifmedia_upd_locked(ifp) - struct ifnet *ifp; +lge_ifmedia_upd_locked(struct ifnet *ifp) { struct lge_softc *sc; struct mii_data *mii; @@ -1412,9 +1371,7 @@ lge_ifmedia_upd_locked(ifp) * Report current media status. */ static void -lge_ifmedia_sts(ifp, ifmr) - struct ifnet *ifp; - struct ifmediareq *ifmr; +lge_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) { struct lge_softc *sc; struct mii_data *mii; @@ -1432,10 +1389,7 @@ lge_ifmedia_sts(ifp, ifmr) } static int -lge_ioctl(ifp, command, data) - struct ifnet *ifp; - u_long command; - caddr_t data; +lge_ioctl(struct ifnet *ifp, u_long command, caddr_t data) { struct lge_softc *sc = ifp->if_softc; struct ifreq *ifr = (struct ifreq *) data; @@ -1498,8 +1452,7 @@ lge_ioctl(ifp, command, data) } static void -lge_watchdog(sc) - struct lge_softc *sc; +lge_watchdog(struct lge_softc *sc) { struct ifnet *ifp; @@ -1523,8 +1476,7 @@ lge_watchdog(sc) * RX and TX lists. */ static void -lge_stop(sc) - struct lge_softc *sc; +lge_stop(struct lge_softc *sc) { int i; struct ifnet *ifp; @@ -1574,8 +1526,7 @@ lge_stop(sc) * get confused by errant DMAs when rebooting. */ static int -lge_shutdown(dev) - device_t dev; +lge_shutdown(device_t dev) { struct lge_softc *sc; From nobody Sun Apr 9 21:35:48 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllT6vWsz44JQ0; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllT0Kydz4NHq; Sun, 9 Apr 2023 21:35:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076149; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mLl2ETRHKvIdnS2ZT8w3JDwvwEszOhCqoN/KuDWk8DY=; b=q+9VlYIcCXnYoebSVqxnCdsL6Bp48qimUC+iAYi7mslQ2yxgnBmodcZZfAHS8EYSd3woP9 RN53KrvfBnsWhO1J8hojQSn73VtkpD6gpHP28MTP3e0yKlqgCHWsc9AODe8cf2Ue+h/7+6 lAECRwabhPBwJ+KCxGWvk3c1UOEauZwOuB+SY4a7LGAUHMQ5KfTQT/mWOlSVpJ7M26IaU2 hTp37GjOe8uHMH7oejyvXEVU8osMpJAw2hONw61ySPUuyu+2o+wd5xCmVHmMvuIUecxsRQ fhYvsy3tcC2GyOjEaha/t+4+mPf2+B/IJWXolLscAZypVXilXXQo1Cxun+xciQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076149; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mLl2ETRHKvIdnS2ZT8w3JDwvwEszOhCqoN/KuDWk8DY=; b=tzJzlxjwGfAZgriuRuY13Q28e0Cw/naJGcjV/oMZM3lKOI/nojy8XkQDCMtjH9bqGbrQDh rtgT3BtFQSiQwsV0s5NXWzzqwA6QKBy8taoKVVVxRU9tLv2sqFYSKif0ytigCTeSvtPgn4 U8t0oS0iOioqT/uvrIsPXo7LE/QM2cGtJF5KbYS5ZMtSCnrffBe1PDAA3+zHv9hR4iZgMf jZJcEvDkFFvGrW3yphxzXYGmPm+21j9XFwB60cV4kFsEFHz4cX8NiHgplpA9ylV8JCRqyp MLhyvvIQcLMRNws/tYyNjRm2TA9MOW2qiSYDDbn/v1Dyu5enfsJsde1gxSzPWw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076149; a=rsa-sha256; cv=none; b=xUw+lUvMGEH/ab4wvdBMtN/Wp5JryG+RuhPSHO1iaJDaOaqymWRz7TQxceVk57rDnF8aiM kKR6RTk9xnpYSiYxJEL4+ELa4pcjlOV1wFURiVzgZI11uE3sMPauVAI8R3lEP2ZIGYjNoF dT1KYTg7rhFNFdVJdNqbgXXycPfUIyvkXKCiTBrQF0M1EQ1ZQE0dt4zsvHzBvKwD2q/NSv Q3JA155KoMqa95vRXWX/+egp1LxlGFazr++pAYlv5ZFmKwFearPp5LbKJvfvSSqyHn4Ux1 yHziqjD0JA+g2rCvi9kmw0OsTqtDJtgySdNieda32RAFRtcJfnNX09A0sKUUyw== 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 4PvllS3zmzzPhK; Sun, 9 Apr 2023 21:35:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZmIa082125; Sun, 9 Apr 2023 21:35:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZmds082124; Sun, 9 Apr 2023 21:35:48 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:48 GMT Message-Id: <202304092135.339LZmds082124@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: da9441d11aa6 - stable/13 - rpc: ansify List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: da9441d11aa6f322d56d3506396088afddcf6772 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=da9441d11aa6f322d56d3506396088afddcf6772 commit da9441d11aa6f322d56d3506396088afddcf6772 Author: Mateusz Guzik AuthorDate: 2023-02-13 05:39:10 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 15:48:06 +0000 rpc: ansify Reported by: clang 15 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 71948c15ba9e6db536e7a26c65f2f22ee03f1630) --- sys/rpc/rpc_generic.c | 9 +++------ sys/rpc/svc_auth_unix.c | 6 ++---- sys/rpc/svc_dg.c | 5 +---- 3 files changed, 6 insertions(+), 14 deletions(-) diff --git a/sys/rpc/rpc_generic.c b/sys/rpc/rpc_generic.c index 1a02085efe47..6d92367f4d60 100644 --- a/sys/rpc/rpc_generic.c +++ b/sys/rpc/rpc_generic.c @@ -146,8 +146,7 @@ __rpc_get_t_size(int af, int proto, int size) * Find the appropriate address buffer size */ u_int -__rpc_get_a_size(af) - int af; +__rpc_get_a_size(int af) { switch (af) { case AF_INET: @@ -567,8 +566,7 @@ __rpc_getconfip(const char *nettype) * unset, i.e. iterate over all visible entries in netconfig. */ void * -__rpc_setconf(nettype) - const char *nettype; +__rpc_setconf(const char *nettype) { struct handle *handle; @@ -688,8 +686,7 @@ __rpc_getconf(void *vhandle) } void -__rpc_endconf(vhandle) - void * vhandle; +__rpc_endconf(void *vhandle) { struct handle *handle; diff --git a/sys/rpc/svc_auth_unix.c b/sys/rpc/svc_auth_unix.c index de46bf438f0e..441f70e4a8af 100644 --- a/sys/rpc/svc_auth_unix.c +++ b/sys/rpc/svc_auth_unix.c @@ -135,10 +135,8 @@ done: * Looks up longhand in a cache. */ /*ARGSUSED*/ -enum auth_stat -_svcauth_short(rqst, msg) - struct svc_req *rqst; - struct rpc_msg *msg; +enum auth_stat +_svcauth_short(struct svc_req *rqst, struct rpc_msg *msg) { return (AUTH_REJECTEDCRED); } diff --git a/sys/rpc/svc_dg.c b/sys/rpc/svc_dg.c index db1928655618..36724ed07b98 100644 --- a/sys/rpc/svc_dg.c +++ b/sys/rpc/svc_dg.c @@ -288,10 +288,7 @@ svc_dg_destroy(SVCXPRT *xprt) static bool_t /*ARGSUSED*/ -svc_dg_control(xprt, rq, in) - SVCXPRT *xprt; - const u_int rq; - void *in; +svc_dg_control(SVCXPRT *xprt, const u_int rq, void *in) { return (FALSE); From nobody Sun Apr 9 21:35:49 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllW4G1Tz44JmF; Sun, 9 Apr 2023 21: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllV62wSz4N33; Sun, 9 Apr 2023 21:35:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076151; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v8/AJdDDipHWw0HhFV1If8bufDo/U2cdFtotVML+0GI=; b=wa+GFbxdk295fkCzNYjvFdlBPTJ6MkYEkcsgoi4PD34GnV3/7Kinq6Rq4bgr3z81eWUm6P NQ6F/tHiN9p/myG4Ehs9kFvHDk4CbqdJsR69NZXmSIZRZzwcXJ1SkFvtJRxl8BY6z2eI1p Q/9L74xmoBJz1WlwPttEUVnZ8BvfcOdV21BIp2tZby09ft2E1wmCFZ0hAAGl7ZQ4K2U5mQ pMY192BkXpGcIh87OLpoaVV+cU5AEEU/EiY7X3uSXMB0JkKhcp2KGHkykZbSG86qAwMGsw Oq6WoG7Zw2pCdsnT1MzL0s2krtoqm+GD/fB73iA++fsZNrhpaBMhg7KCt6VJJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076151; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v8/AJdDDipHWw0HhFV1If8bufDo/U2cdFtotVML+0GI=; b=rwEkfZZizBT4am3AY62DDzg/3k9lCAiuoE/OXA6FI9q5OyefTN/0nL37tFRie6tZVFqjhH HcJV7WLNK1pDHe9apQKRq7GHT/q95EzgMfrlsRMqCrs+LALILekCdIEsq9ugnrhC9E6T+f tmGaiAgrde+nsgNVlRwUkm6dTG4rqpkcaH7dxhEa3EUrpVzYa7C0f81DBtuNRSllxOGTwr +V/VQIq9g6BpC3p7PAus28Wuy293tXoBhax3xH1sTNkKG9qPkzPLdAL+TsAfHnZCrAEj1b Htyl4cRM2dyDYgdunugRhQzwMXEHsTAmM6tZ0BN8VrUrrD+7jI7heoptTBA/Jg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076151; a=rsa-sha256; cv=none; b=Z3uAz8ToDDRObIUHPkKq6TeG/ouTXRdPaYnChIJN6ztuWG0wKmOv8pWStstcTcO1eQ19au MJMGwjUwURfji9OuRY200MKw7WMYcJSebuZu2st1E/clp+y6v4xmtVYQJ0sIQ4RLX+wSDQ uBK5CI1pvJ7WWvNqWkn1bXCgVAdr4bCnNAKNOp54/ryxbQxx8Qh3xP8eklJ6tvvzdr3D0f Ep54etyP3lBuUz9I1IH1i32lACTzVHLxbw+20Zk7YO+cNpqAC16pImf58j78NxKA/deJpn YuwqNw+XC3wAR2sHrMze+p9SWBPyvkI6+hA+dalOed2WIt+cBE7qpSo0npNf5w== 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 4PvllT4zrQzPhL; Sun, 9 Apr 2023 21:35:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZnR5082144; Sun, 9 Apr 2023 21:35:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZnqd082143; Sun, 9 Apr 2023 21:35:49 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:49 GMT Message-Id: <202304092135.339LZnqd082143@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: e581f57b6ada - stable/13 - i386: ansify List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: e581f57b6ada649744fbb8d9224b099f5aadb282 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=e581f57b6ada649744fbb8d9224b099f5aadb282 commit e581f57b6ada649744fbb8d9224b099f5aadb282 Author: Dmitry Chagin AuthorDate: 2023-03-25 20:21:03 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 15:48:07 +0000 i386: ansify Reported by: clang 15 (cherry picked from commit f0fe68a965a2f0b42c296fef2c756f168a57b326) --- sys/i386/i386/db_disasm.c | 20 +++++--------------- sys/i386/i386/db_trace.c | 12 +++--------- sys/i386/i386/in_cksum_machdep.c | 5 +---- sys/i386/i386/machdep.c | 7 ++----- sys/i386/i386/sys_machdep.c | 8 ++------ 5 files changed, 13 insertions(+), 39 deletions(-) diff --git a/sys/i386/i386/db_disasm.c b/sys/i386/i386/db_disasm.c index 2d5a65fe31d3..46b0a1b8a895 100644 --- a/sys/i386/i386/db_disasm.c +++ b/sys/i386/i386/db_disasm.c @@ -938,11 +938,8 @@ static db_addr_t * Read address at location and return updated location. */ static db_addr_t -db_read_address(loc, short_addr, regmodrm, addrp) - db_addr_t loc; - int short_addr; - int regmodrm; - struct i_addr * addrp; /* out */ +db_read_address(db_addr_t loc, int short_addr, int regmodrm, + struct i_addr *addrp) { int mod, rm, sib, index, disp; @@ -1026,10 +1023,7 @@ db_read_address(loc, short_addr, regmodrm, addrp) } static void -db_print_address(seg, size, addrp) - const char * seg; - int size; - struct i_addr * addrp; +db_print_address(const char *seg, int size, struct i_addr *addrp) { if (addrp->is_reg) { db_printf("%s", db_reg[size][addrp->disp]); @@ -1059,12 +1053,8 @@ db_print_address(seg, size, addrp) * and return updated location. */ static db_addr_t -db_disasm_esc(loc, inst, short_addr, size, seg) - db_addr_t loc; - int inst; - int short_addr; - int size; - const char * seg; +db_disasm_esc(db_addr_t loc, int inst, int short_addr, int size, + const char *seg) { int regmodrm; const struct finst * fp; diff --git a/sys/i386/i386/db_trace.c b/sys/i386/i386/db_trace.c index 47057906fa58..cc386cb88a8c 100644 --- a/sys/i386/i386/db_trace.c +++ b/sys/i386/i386/db_trace.c @@ -200,8 +200,7 @@ static void db_print_stack_entry(const char *, int, char **, int *, db_addr_t, * Figure out how many arguments were passed into the frame at "fp". */ static int -db_numargs(fp) - struct i386_frame *fp; +db_numargs(struct i386_frame *fp) { char *argp; int inst; @@ -232,13 +231,8 @@ retry: } static void -db_print_stack_entry(name, narg, argnp, argp, callpc, frame) - const char *name; - int narg; - char **argnp; - int *argp; - db_addr_t callpc; - void *frame; +db_print_stack_entry(const char *name, int narg, char **argnp, int *argp, + db_addr_t callpc, void *frame) { int n = narg >= 0 ? narg : 5; diff --git a/sys/i386/i386/in_cksum_machdep.c b/sys/i386/i386/in_cksum_machdep.c index ec8b35e8afe8..833bd1609092 100644 --- a/sys/i386/i386/in_cksum_machdep.c +++ b/sys/i386/i386/in_cksum_machdep.c @@ -260,10 +260,7 @@ u_int in_cksum_hdr(const struct ip *ip) * other calculations. */ u_short -in_cksum_skip(m, len, skip) - struct mbuf *m; - int len; - int skip; +in_cksum_skip(struct mbuf *m, int len, int skip) { u_short *w; unsigned sum = 0; diff --git a/sys/i386/i386/machdep.c b/sys/i386/i386/machdep.c index 27a323bce62a..97b095337852 100644 --- a/sys/i386/i386/machdep.c +++ b/sys/i386/i386/machdep.c @@ -215,8 +215,7 @@ i386_clock_source_init(void) } static void -cpu_startup(dummy) - void *dummy; +cpu_startup(void *dummy) { uintmax_t memsize; char *sysenv; @@ -746,9 +745,7 @@ DB_SHOW_COMMAND(frame, db_show_frame) #endif void -sdtossd(sd, ssd) - struct segment_descriptor *sd; - struct soft_segment_descriptor *ssd; +sdtossd(struct segment_descriptor *sd, struct soft_segment_descriptor *ssd) { ssd->ssd_base = (sd->sd_hibase << 24) | sd->sd_lobase; ssd->ssd_limit = (sd->sd_hilimit << 16) | sd->sd_lolimit; diff --git a/sys/i386/i386/sys_machdep.c b/sys/i386/i386/sys_machdep.c index a0a1c273f467..eeff4b280696 100644 --- a/sys/i386/i386/sys_machdep.c +++ b/sys/i386/i386/sys_machdep.c @@ -334,9 +334,7 @@ i386_extend_pcb(struct thread *td) } int -i386_set_ioperm(td, uap) - struct thread *td; - struct i386_ioperm_args *uap; +i386_set_ioperm(struct thread *td, struct i386_ioperm_args *uap) { char *iomap; u_int i; @@ -372,9 +370,7 @@ i386_set_ioperm(td, uap) } int -i386_get_ioperm(td, uap) - struct thread *td; - struct i386_ioperm_args *uap; +i386_get_ioperm(struct thread *td, struct i386_ioperm_args *uap) { int i, state; char *iomap; From nobody Sun Apr 9 21:35:50 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllW6h8bz44Jpj; Sun, 9 Apr 2023 21: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllW2hG3z4NG4; Sun, 9 Apr 2023 21: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=1681076151; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aTSGJujJJBop5PHfOUzNx8lsQpGAD5x74uLMxqxidpM=; b=QpZcaYj3t2GcD/O1CPoZFFzO9uaFRlXLQL5U8lDXg9rm7fLX1ap7vyzeFE0o3hwEbIQFSq SmhVqLTPN5qTHcD61PZImhSQiR/i6bFEMaFzqu2yHF9qPoNkBs4FLmBacQ4lVZhbA0fQfe B8bxOLrqnGXqRvitNf0DiD6eroT2Zi0Ff2Xv37aRZ/E1+2eI6+xceDBUDK8H6QnlEmqwLs BiPNuP/6cA3hPFuTX3SRGcLl7SuaoB/Q9f/K6k5yIY+5Vrq0HWXeSlLtmPbWvcuxgZE8MS xWsQedhQwzvRtNQ2y+k3q6kpV2fbs7VTBsf46bRkt/weGM0sTHUe6giC7E25JA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076151; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aTSGJujJJBop5PHfOUzNx8lsQpGAD5x74uLMxqxidpM=; b=oVA5Cqi1p+AiLTEWhzwNhic0rzz2xUNZL2/Cw6wHD2phUuCFGaGefY1KlVlC2EPFdNmfSG a3Kz+lSh2nEUsRjhu+cgcilpvFI88hY4knjiHm90blzhmA6s51eXGXOWYCQ4/5jxjJ65b+ PhpD90hegUO8tOVwmt8ty5ft7xgIslqrJNoGl8yCwHRhT/oXEt7PoGWQS0t8APVXTbasld /FV6U6haIv12Dyf3cdLaYrXsqzMlKa/PtYfl7/toXbby+ztx5lhSMYDfw55koFu+cyQRCP akzu3TawQrgzlxmo2wAqEgap9wDC0eG3vhtOMgHt5ljSFmSqflCnS/L2Tb65cA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076151; a=rsa-sha256; cv=none; b=smhT/S71BUsqmIyEvUNX22EeKfhUFkTlNGTSKzbOLtWVfbnGTd87Sqq+idLQIRdiutfptr fsxn5hpNH7oo4oVj24UVsSQNZ63G0ZJg2s/n0y2GJfoo2Rck9mIQAKcibHTY9uewjXfttU 3KkQzgLFgqqUWwTTDfHrbtu+bx6JrsClSvfQ2IbID3yqc1S1bEfCSlLKpBJcWRNAxS0U0X NlHbOcJxUEhjjL/qvytQ0OcBdx/zBNPFCqwmgkItdOFLPzmoQJppKho7jOGAUaIVH62ifU w9JbvlFUJz7Op21osCth9+qFdq6W6UCMQJyt0XT1Mq2ZG/FZoI5OBG2d7erxrQ== 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 4PvllV5lN0zPkp; Sun, 9 Apr 2023 21:35:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZomK082164; Sun, 9 Apr 2023 21:35:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZocQ082163; Sun, 9 Apr 2023 21:35:50 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:50 GMT Message-Id: <202304092135.339LZocQ082163@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 442f26c2bccc - stable/13 - sctp: tweak panic message List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 442f26c2bccc754be1f9c725181b13ff7600310c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=442f26c2bccc754be1f9c725181b13ff7600310c commit 442f26c2bccc754be1f9c725181b13ff7600310c Author: Michael Tuexen AuthorDate: 2022-08-03 15:28:15 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 20:20:13 +0000 sctp: tweak panic message MFC after: 1 week (cherry picked from commit 979bc32c7c14f944a340058fcd1a580a7492f785) --- sys/netinet/sctp_indata.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/sys/netinet/sctp_indata.c b/sys/netinet/sctp_indata.c index aa6787257a13..b8bfaf164904 100644 --- a/sys/netinet/sctp_indata.c +++ b/sys/netinet/sctp_indata.c @@ -3837,10 +3837,9 @@ static int sctp_fs_audit(struct sctp_association *asoc) { struct sctp_tmit_chunk *chk; - int inflight = 0, inbetween = 0; + int inflight = 0, resend = 0, inbetween = 0, acked = 0, above = 0; int ret; #ifndef INVARIANTS - int resend = 0, acked = 0, above = 0; int entry_flight, entry_cnt; #endif @@ -3860,19 +3859,13 @@ sctp_fs_audit(struct sctp_association *asoc) chk->snd_count); inflight++; } else if (chk->sent == SCTP_DATAGRAM_RESEND) { -#ifndef INVARIANTS resend++; -#endif } else if (chk->sent < SCTP_DATAGRAM_ACKED) { inbetween++; } else if (chk->sent > SCTP_DATAGRAM_ACKED) { -#ifndef INVARIANTS above++; -#endif } else { -#ifndef INVARIANTS acked++; -#endif } } From nobody Sun Apr 9 21:35:51 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvllX45Wxz44JdT; Sun, 9 Apr 2023 21:35: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvllX0ZTtz4NLn; Sun, 9 Apr 2023 21:35:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076152; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Lqfh9ejhFqI5R4K+ro9S/h9WR35its6J08PLfmZ7eBc=; b=WUBmST2AN54acJg2p2mTSUo/Tipx9HQcJGmuqIlL4FcdWoBrgMPFtCbx8naEnwjnlKwZ19 QUWz1pyP9YgEDrXkIAiwYVDx2gsK4T02D/Uz/+sgAEBGQPvMS666vhpeYgh/63Qc44JUYe z3oHmaxWj5A1lSJfoUh4xN36ZDRweg6evt5AglMDyr4UMTeF7eh5aVwPC8u1SEpL+uB4A7 UoKP+QgazN/TCZUamBmS8TcZXCyKmDtZM5HA6OMmpT+PpIwfW0O45dS1mQF9clDZSSi4Wb EG/UQezZcX6wDRdl4xSJYFK+yrwS3GSg4QXhJkS57UfcSqXl71CipEC/sRhvPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681076152; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Lqfh9ejhFqI5R4K+ro9S/h9WR35its6J08PLfmZ7eBc=; b=I9llWNHm2E40cAE90l5Al74SIcUu2NlCuvsKlrEy6cQDwS2Yt2Mf9lLxt2pj7Y9gBPNY2G cL4R+7GjCOEEK4XZJkjFscFELYMkXiv3RNvzgNX3shoxaALH13MjisHp0U9dOjbqgTVNIB 7WXhdKIETxsPOhmBhFUD95ZF5fAVpGH+YTsS0E1xYUrQGeNEPRAjbnjRvBDcTehXSzEnwk 6yLS/llZ0k/gbNkZqhfcq7me2VXqO1RywdFC3fCIBdMku51crIrU8I5zGQgiz9qmMCkalZ UuC4ggj6Z93iXn/G7DrUi9yQWOb4ISr65PgW3Djvu1YpElF4cDG6gw22sI642w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681076152; a=rsa-sha256; cv=none; b=eoiO0HkfjcZN+OVnTANQpf64PLpGIlHviVWG/1UY5qF9kKIMKzWJH7O2njBsMZ0lSEi767 JVWkSi/2C67UH3F/WjwrU/UVRTEHbKrB/TK/djgtVdxSobxHA0FkcNHQ++9CAk2BEMtMs0 239Q78A1VTS5D8OkxSY9yLaQSSihO1WaIfFOueC6al7ys82jo12vxMexsi1mCgnYQ9dGQ/ Y0jsejERS1Y8hqWRQ/x1Gc+Cfqym9KMIXLSHApFgTPRBSaFRn8UXFWNiglCKndWA8fekHJ VVzm6w905xMzDrUP0Becxgh+h6Jc+/W78GZ7TTOiDcbaQ4BIQEOdHvyfl4HEEg== 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 4PvllW6jkCzPSB; Sun, 9 Apr 2023 21:35:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339LZpus082187; Sun, 9 Apr 2023 21:35:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339LZpuR082186; Sun, 9 Apr 2023 21:35:51 GMT (envelope-from git) Date: Sun, 9 Apr 2023 21:35:51 GMT Message-Id: <202304092135.339LZpuR082186@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 85e32e957fcc - stable/13 - Bump __FreeBSD_version for llvm 15.0.7 merge List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 85e32e957fcca01d50e29e543584909795c1acef Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=85e32e957fcca01d50e29e543584909795c1acef commit 85e32e957fcca01d50e29e543584909795c1acef Author: Dimitry Andric AuthorDate: 2023-02-08 19:20:21 +0000 Commit: Dimitry Andric CommitDate: 2023-04-09 21:33:59 +0000 Bump __FreeBSD_version for llvm 15.0.7 merge PR: 265425 MFC after: 2 weeks (cherry picked from commit 3264f6b88fce7c5437d205685863617d8f6a22dd) --- sys/sys/param.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/sys/param.h b/sys/sys/param.h index 564fbfd9c70d..b57c5afb5d05 100644 --- a/sys/sys/param.h +++ b/sys/sys/param.h @@ -60,7 +60,7 @@ * in the range 5 to 9. */ #undef __FreeBSD_version -#define __FreeBSD_version 1302504 /* Master, propagated to newvers */ +#define __FreeBSD_version 1302505 /* Master, propagated to newvers */ /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, From nobody Sun Apr 9 21:58:04 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvmFB6WK2z44Kyw; Sun, 9 Apr 2023 21:58:06 +0000 (UTC) (envelope-from mjguzik@gmail.com) Received: from mail-oi1-x22c.google.com (mail-oi1-x22c.google.com [IPv6:2607:f8b0:4864:20::22c]) (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 "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvmFB4Tfrz3vT3; Sun, 9 Apr 2023 21:58:06 +0000 (UTC) (envelope-from mjguzik@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-oi1-x22c.google.com with SMTP id bh10so2289837oib.1; Sun, 09 Apr 2023 14:58:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1681077485; x=1683669485; h=cc:to:subject:message-id:date:from:references:in-reply-to :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=+U5TcYFAfdiJB7QwZpnQZkdWH63UlTtgCMJUZGH+fEQ=; b=UcyP3xIHh4AoZi9ZTtPum2djCcnJKfJl9sm5FcvVWMs2DFWCBDpK6Q0FSFXZznzQtS dDCBRMN5tPbD+3Ejl8BS9/YjqbY2LaflBxpatZbigIkI7NZIo8jk5Uw7swScVJ9Na7Om PtAmUF3nCtqKyR/b73bbngPsvGmC9/OdQiJsdDMhw/5o8MVuXYDTi4WwKG64tYOD8g7+ tni+AKV/GAM5USfiCOxD92827/biMMO7OM4xu7rihtvBT2QfwvpdG3G4eczjWHNVFJIZ FAmoumRNM3eGdHw3yN7FWxzUNOztozPoBdwd8JkuK88eR33Ipw4Jb1vkVzlcLT00DgPx 847w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1681077485; x=1683669485; h=cc:to:subject:message-id:date:from:references:in-reply-to :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=+U5TcYFAfdiJB7QwZpnQZkdWH63UlTtgCMJUZGH+fEQ=; b=KV4RSq0ap4BmKNUy2H9qWGlPtyam8+MSnWFeTbXMeT6w5/8AZwaN+RWTqgafH+Bnd6 5BRqh4XfEQJIPeNwLozJhhEQLtulwwPR8udIV9JhBw8GKM4/CZhmZW0TJaqX16Hhtw+E HS3/L67amcZ4ZDZ436TlBPNbxLLb+qkKcm3RsN80qKFauy0VKiM4sM+vilXsKZ06EjTJ 0AvbNGJqOIJyNODpja6YvPcnWwlJHSxy5GW28VaMjdZo7zgJDk7fQ7MZoeGTZulFO1ny xJrQwU1PKG+UNKVyfXYOuClgncD6pIZejWpJnr5rebEbYg1bpUlgVsrl0RXDhjDuliB3 xVbg== X-Gm-Message-State: AAQBX9ehtvIibcKJ07Iz05lz/kOqVYi0wt+9V7r+b0aOyIl61VO3tXo0 5YreRt/Wh09iUlLkcvrcnGo980dHNTGJUaj0OLhHb/woA38= X-Google-Smtp-Source: AKy350aN81ly70ztFgGGzGdiQQ/zxBRokhMe4edQ569I/1PH+mikCX/qEFbyuTC0QB9vDlxFlgrhNpmdbLkFabhGCXQ= X-Received: by 2002:a05:6808:3a96:b0:389:53dc:cdf2 with SMTP id fb22-20020a0568083a9600b0038953dccdf2mr2278592oib.4.1681077485169; Sun, 09 Apr 2023 14:58:05 -0700 (PDT) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Received: by 2002:ac9:798d:0:b0:49c:b071:b1e3 with HTTP; Sun, 9 Apr 2023 14:58:04 -0700 (PDT) In-Reply-To: <20230409202650.49130b92@thor.intern.walstatt.dynvpn.de> References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> <20230409202650.49130b92@thor.intern.walstatt.dynvpn.de> From: Mateusz Guzik Date: Sun, 9 Apr 2023 23:58:04 +0200 Message-ID: Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 To: FreeBSD User Cc: Charlie Li , Cy Schubert , Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 4PvmFB4Tfrz3vT3 X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; TAGGED_RCPT(0.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N On 4/9/23, FreeBSD User wrote: > Am Sun, 9 Apr 2023 13:23:05 -0400 > Charlie Li schrieb: > >> Mateusz Guzik wrote: >> > On 4/9/23, Charlie Li wrote: >> >> I've also started noticing random artefacts and malformed files whilst >> >> building packages with poudriere, causing all sorts of "exec format >> >> error"s, missing .so files due to corruption, data file corruption >> >> causing unintended failure modes, etc. All without block_cloning; >> >> enabling such causes a panic of its own when starting multiple builder >> >> jails at once. >> >> >> > >> > what's the panic? >> > >> manually typed out: >> >> panic: VERIFY(!zil_replaying(zilog, tx)) failed >> >> cpuid = 7 >> time = 1681060472 >> KDB: stack backtrace: >> db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame >> 0xfffffe02a05b28a0 >> vpanic() at vpanic+0x152/frame 0xfffffe02a05b28f0 >> spl_panic() at spl_panic+0x3a/frame 0xfffffe02a05b2950 >> zfs_log_clone_range() at zfs_log_clone_range+0x1db/frame >> 0xfffffe02a05b29e0 >> zfs_clone_range() at zfs_clone_range+0xae2/frame 0xfffffe02a05b2bc0 >> zfs_freebsd_copy_file_range() at zfs_freebsd_copy_file_range+0xff/frame >> 0xfffffe02a05b2c40 >> vn_copy_file_range() at vn_copy_file_range+0x115/frame 0xfffffe02a05b2ce0 >> kern_copy_file_range() at kern_copy_file_range+0x34e/frame >> 0xfffffe02a05b2db0 >> sys_copy_file_range() at sys_copy_file_range+0x78/frame >> 0xfffffe02a05b2e00 >> amd64_syscall() at amd64_syscall+0x148/frame 0xfffffe02a05b2f30 >> fast_syscall_common() at fast_syscall_common+0xf8/frame >> 0xfffffe02a05b2f30 >> --- syscall (569, FreeBSD ELF64, copy_file_range), rip = 0x908d2a, rsp = >> 0x820c28e68, rbp = 0x820c292b0 --- >> KDB: enter: panic >> [ thread pid 1856 tid 102129 ] >> Stopped at kdb_enter+0x32: movq $0,0x12760f3(%rip) >> db> >> > > I have the same issue (crash on access of several, but random datasets). > > It started with /usr/ports build failures when performing updates or > rebuilding ports, > poudriere host doesn't work anymore, as soon as started building ports, the > hosts (several of > them, same OS revision, new ZFS option enabled) crash. > Also when building binaries for an pkg OS distribution. > > That host also reports a ZFS RAIDZ pool as corrupted, out of the blue! Some > files from a > poudriere build and /usr/ports build seem to have issues with some > temporarily created files > in work directory. > > On another host /usr/ports is residing on ZFS and it crashes also when > building/updating ports > (/usr/ports residing on ZFS) - but on the same host /home is also residing > on ZFS, but even > downloading large amounts of emails, the host seem to be stable. Have not > found out yet what > kind of file access triggers the crash. > I reproduced the VERIFY(!zil_replaying(zilog, tx)) panic. As the backtrace shows it triggers when using copy_file_range, I temporarily patched the kernel to never do block cloning. So far the only package which failed to build was sqlite and it was for a legitimate reason (compiler errored out due to a problem in the code). -- Mateusz Guzik From nobody Sun Apr 9 22:15:57 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvmds1hy4z44M0y; Sun, 9 Apr 2023 22:16:01 +0000 (UTC) (envelope-from mjguzik@gmail.com) Received: from mail-oi1-x236.google.com (mail-oi1-x236.google.com [IPv6:2607:f8b0:4864:20::236]) (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 "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvmdr0m5Mz4NXm; Sun, 9 Apr 2023 22:16:00 +0000 (UTC) (envelope-from mjguzik@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20210112 header.b=ITe0UASO; spf=pass (mx1.freebsd.org: domain of mjguzik@gmail.com designates 2607:f8b0:4864:20::236 as permitted sender) smtp.mailfrom=mjguzik@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-oi1-x236.google.com with SMTP id e9so2175460oig.7; Sun, 09 Apr 2023 15:16:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1681078558; x=1683670558; h=cc:to:subject:message-id:date:from:references:in-reply-to :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=OoWj940RdtoeSQEx4KHZMdisRHXku0JQPs4Z2xGawL8=; b=ITe0UASOGDvlI/KidV2zTVugzd9M8Z1qg2MbqMBnW+UTQr55yYrOKRvqcxChn/QsJj lkSQdlOzfE6n9moIarEsQyr1JGF1sR1Gr+1TJ1RhoRg90pv/KuS1TrcZ/nKDWwzQqTPk 8EwbWsON6ocHHDhtuSB3S6htMIkYorc1rvAwXP8Fb48LgzUCHssKoulTLKNOmHxfI3aL Dowg2sHh+blJxekw+/lws0w2u5llnvmsCG01r16sedQikaNLYdwTkt11fNjw7HnOQ3wC ywNB+7lzHi8NB0ff9wUAPtslvDSPZRz5vIBf/CByi+J7fcUDiyVdG0wJsZvyFi5DACJV Pc7g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1681078558; x=1683670558; h=cc:to:subject:message-id:date:from:references:in-reply-to :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=OoWj940RdtoeSQEx4KHZMdisRHXku0JQPs4Z2xGawL8=; b=IefI3kS1ZCFc8gE16TTp0f8ip0mhITUV2PgPizhXtf/k4jKt2ya6Zt+sUnriFT36Ox Z5GlYDGP0dIzjD84RCMZbWxO3hOo/Z2/oMwXAH5rynv/ICDtEp9eQnJMbLOAaqD+Jedg NBbfsQ3GHty1WD7DCh5Mj0GWzT69L4pLoaqoyWRb2B7NYCmMZSEX9H5dd36x9QS70ukR PoIcV1fgdBP+BlNGmfrFc1wrgP3DM2my/0PEeEDIOfPo29J0e75EgU6e+/m8g0kePELN bebexlQ+MaeiQE1hjW3iweqOLCeCC5rev35dEOEMAdU8mw/yrsj+OKfUgS1OhhYfGC0U y1Qg== X-Gm-Message-State: AAQBX9cUXPaSTR+piWCNZbOCWjzPz4yGI+A4yy6w6X8RQOz8KAy1jOXU j5v4tDZBahUmmhQV0AePSb+EEmjyZaBe7ih8ymY= X-Google-Smtp-Source: AKy350bmsRQECNb0w2kU3JiMTQ7sUDtJq87orkDnMuBNsW4MKT8K8bgDlFvQYjbzfH9j1F/Lho8KrYM9t5mTXQoKDZo= X-Received: by 2002:a05:6808:8c4:b0:387:82c4:6425 with SMTP id k4-20020a05680808c400b0038782c46425mr1026139oij.4.1681078558073; Sun, 09 Apr 2023 15:15:58 -0700 (PDT) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Received: by 2002:ac9:798d:0:b0:49c:b071:b1e3 with HTTP; Sun, 9 Apr 2023 15:15:57 -0700 (PDT) In-Reply-To: References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> <20230409202650.49130b92@thor.intern.walstatt.dynvpn.de> From: Mateusz Guzik Date: Mon, 10 Apr 2023 00:15:57 +0200 Message-ID: Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 To: FreeBSD User Cc: Charlie Li , Cy Schubert , Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Spamd-Result: default: False [-2.49 / 15.00]; SUSPICIOUS_RECIPS(1.50)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.99)[-0.988]; DMARC_POLICY_ALLOW(-0.50)[gmail.com,none]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20210112]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36:c]; MIME_GOOD(-0.10)[text/plain]; FROM_HAS_DN(0.00)[]; TAGGED_RCPT(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; ARC_NA(0.00)[]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::236:from]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; FREEMAIL_ENVFROM(0.00)[gmail.com]; MID_RHS_MATCH_FROMTLD(0.00)[]; RCVD_COUNT_THREE(0.00)[3]; FREEMAIL_FROM(0.00)[gmail.com]; FREEMAIL_CC(0.00)[freebsd.org,cschubert.com,gmail.com]; DKIM_TRACE(0.00)[gmail.com:+]; FROM_EQ_ENVFROM(0.00)[]; RCPT_COUNT_SEVEN(0.00)[8]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; TO_DN_SOME(0.00)[] X-Rspamd-Queue-Id: 4Pvmdr0m5Mz4NXm X-Spamd-Bar: -- X-ThisMailContainsUnwantedMimeParts: N On 4/9/23, Mateusz Guzik wrote: > On 4/9/23, FreeBSD User wrote: >> Am Sun, 9 Apr 2023 13:23:05 -0400 >> Charlie Li schrieb: >> >>> Mateusz Guzik wrote: >>> > On 4/9/23, Charlie Li wrote: >>> >> I've also started noticing random artefacts and malformed files >>> >> whilst >>> >> building packages with poudriere, causing all sorts of "exec format >>> >> error"s, missing .so files due to corruption, data file corruption >>> >> causing unintended failure modes, etc. All without block_cloning; >>> >> enabling such causes a panic of its own when starting multiple >>> >> builder >>> >> jails at once. >>> >> >>> > >>> > what's the panic? >>> > >>> manually typed out: >>> >>> panic: VERIFY(!zil_replaying(zilog, tx)) failed >>> >>> cpuid = 7 >>> time = 1681060472 >>> KDB: stack backtrace: >>> db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame >>> 0xfffffe02a05b28a0 >>> vpanic() at vpanic+0x152/frame 0xfffffe02a05b28f0 >>> spl_panic() at spl_panic+0x3a/frame 0xfffffe02a05b2950 >>> zfs_log_clone_range() at zfs_log_clone_range+0x1db/frame >>> 0xfffffe02a05b29e0 >>> zfs_clone_range() at zfs_clone_range+0xae2/frame 0xfffffe02a05b2bc0 >>> zfs_freebsd_copy_file_range() at zfs_freebsd_copy_file_range+0xff/frame >>> 0xfffffe02a05b2c40 >>> vn_copy_file_range() at vn_copy_file_range+0x115/frame >>> 0xfffffe02a05b2ce0 >>> kern_copy_file_range() at kern_copy_file_range+0x34e/frame >>> 0xfffffe02a05b2db0 >>> sys_copy_file_range() at sys_copy_file_range+0x78/frame >>> 0xfffffe02a05b2e00 >>> amd64_syscall() at amd64_syscall+0x148/frame 0xfffffe02a05b2f30 >>> fast_syscall_common() at fast_syscall_common+0xf8/frame >>> 0xfffffe02a05b2f30 >>> --- syscall (569, FreeBSD ELF64, copy_file_range), rip = 0x908d2a, rsp = >>> 0x820c28e68, rbp = 0x820c292b0 --- >>> KDB: enter: panic >>> [ thread pid 1856 tid 102129 ] >>> Stopped at kdb_enter+0x32: movq $0,0x12760f3(%rip) >>> db> >>> >> >> I have the same issue (crash on access of several, but random datasets). >> >> It started with /usr/ports build failures when performing updates or >> rebuilding ports, >> poudriere host doesn't work anymore, as soon as started building ports, >> the >> hosts (several of >> them, same OS revision, new ZFS option enabled) crash. >> Also when building binaries for an pkg OS distribution. >> >> That host also reports a ZFS RAIDZ pool as corrupted, out of the blue! >> Some >> files from a >> poudriere build and /usr/ports build seem to have issues with some >> temporarily created files >> in work directory. >> >> On another host /usr/ports is residing on ZFS and it crashes also when >> building/updating ports >> (/usr/ports residing on ZFS) - but on the same host /home is also >> residing >> on ZFS, but even >> downloading large amounts of emails, the host seem to be stable. Have not >> found out yet what >> kind of file access triggers the crash. >> > > I reproduced the VERIFY(!zil_replaying(zilog, tx)) panic. As the > backtrace shows it triggers when using copy_file_range, I temporarily > patched the kernel to never do block cloning. So far the only package > which failed to build was sqlite and it was for a legitimate reason > (compiler errored out due to a problem in the code). > ... and got an illegitimate failure: strip: file format not recognized the port builds after retrying iow there is more breakage. i don't know if the merge can be easily reverted now, will have to see about that -- Mateusz Guzik From nobody Sun Apr 9 22:27:19 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvmtx6P8Xz44MQq; Sun, 9 Apr 2023 22:27:21 +0000 (UTC) (envelope-from vishwin@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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvmtx5CRzz3kfm; Sun, 9 Apr 2023 22:27:21 +0000 (UTC) (envelope-from vishwin@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681079241; 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=GPfcXdn/9nyX1jEwLX6BluXqC2dwP7M9iVJtlk/MM1c=; b=IaGKTRhRqu5YSEwKaUWnLJNa0KNAI5Bgroj/ApP3moqtzN+eggmFkBYCVlWuRvFEv72umP ozN2TJ0WN+fCUoExkg9Jjr4/AcfDJ2dZklkqw74I6THeY4Zw8TIjS1b+X2bVpSMIsb+EtV DcHCP283k7cZIVnEKhyklYj97QTI4mYQgTu6GUmMCpnmnpFG+wpecqkv8XJzzwCHaufa2l /NutoDp/lGB5xCIxbGIaltn7ePgdEs6LvS3UAt3CaGROWBriBNf7vgh0v6VeBODVXh5P67 WNVfBXm38I01jpNwavd3k5zi5K8G3XbonCfEJAgMAJ09g0w4vzZE862ZtCbmAQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681079241; 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=GPfcXdn/9nyX1jEwLX6BluXqC2dwP7M9iVJtlk/MM1c=; b=E+j7tYTMC3ibt+qu9zgBFhIlrqFXCHdp4p8k80vX4ZIuMDXuzPPGXoAc6YHRdHd9ea2i1s 5AZsSCg0i28RQNdGw8PH6zSnROd0HoqJIa4WK+jZGJ3sDjqeBEKbRVabxeQYBlSEFwT9rj ikVwCDcwM4IsGD9x0N4rJLF4jqd7NdHDQZ5wxIHrlwnqnPvVaRD9pPuuC+axLXpTxdsAuD KEjub2Tu08Mw10CEyjF9cyJmVCfb1F+hbfwT/ctVYBUPvDR077rl/tpqlMEmujjIqAXEll VPXwrHFLnoJSG4Zkzr14fTikbkKNd9W4t3pi6o8mPSVJrlLvuFGAYwrBrulyIA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681079241; a=rsa-sha256; cv=none; b=UeSsLWMcG3aDbazEv46+BfT0eHSAEsbFnu9P+/HuEVHX5Y7rJ0azp13bh7C6kb3LMbVX36 ObRgDb+4+3/Gg5ktuXgWjPfahViUp2fWALeEehEJZe+GdMsSC8xUwQuuFXtnm6vktYQLR7 bCDs+jfNuIeMpP4rxmD7bKptwZUdzP7B4/zQxj4yjJsfL1ddYyEt7WDpAO1rYtK2r0ghfa 7QBJ+tq62K+VU88rhnQZWzyg81yw7daadkOwU3aVzu20/EUSZUb6hfKpvHlFRn8vqWyl/W JfgjiPyhVDcz4DYFVBLijEPBdEhG2qJs4NIjHZiZMMCkjGlIzu8lG//gP40r4g== Received: from [IPV6:2601:98a:602:da0:1fa8:be6c:38d1:bd] (unknown [IPv6:2601:98a:602:da0:1fa8:be6c:38d1:bd]) (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: vishwin/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4Pvmtx1l89zFg5; Sun, 9 Apr 2023 22:27:21 +0000 (UTC) (envelope-from vishwin@freebsd.org) Message-ID: <68784fe5-ae12-133c-fe22-1660c0037652@freebsd.org> Date: Sun, 9 Apr 2023 18:27:19 -0400 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 To: Mateusz Guzik , FreeBSD User Cc: Cy Schubert , Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> <20230409202650.49130b92@thor.intern.walstatt.dynvpn.de> Content-Language: en-GB From: Charlie Li Organization: FreeBSD Project In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------TxDufWBMGHa7sjgXR4N0m3GV" X-ThisMailContainsUnwantedMimeParts: N This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------TxDufWBMGHa7sjgXR4N0m3GV Content-Type: multipart/mixed; boundary="------------bmFFwwFN4Yh92EfkiXQaEJ05"; protected-headers="v1" From: Charlie Li To: Mateusz Guzik , FreeBSD User Cc: Cy Schubert , Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Message-ID: <68784fe5-ae12-133c-fe22-1660c0037652@freebsd.org> Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> <20230409202650.49130b92@thor.intern.walstatt.dynvpn.de> In-Reply-To: --------------bmFFwwFN4Yh92EfkiXQaEJ05 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 TWF0ZXVzeiBHdXppayB3cm90ZToNCj4gLi4uIGFuZCBnb3QgYW4gaWxsZWdpdGltYXRlIGZh aWx1cmU6DQo+IHN0cmlwOiBmaWxlIGZvcm1hdCBub3QgcmVjb2duaXplZA0KPiANCj4gdGhl IHBvcnQgYnVpbGRzIGFmdGVyIHJldHJ5aW5nDQo+IA0KPiBpb3cgdGhlcmUgaXMgbW9yZSBi cmVha2FnZS4NCj4gDQo+IGkgZG9uJ3Qga25vdyBpZiB0aGUgbWVyZ2UgY2FuIGJlIGVhc2ls eSByZXZlcnRlZCBub3csIHdpbGwgaGF2ZSB0byBzZWUNCj4gYWJvdXQgdGhhdA0KPiANCll1 cCwgdGhpcyBpcyB0aGUgcmFuZG9tIGZpbGUgY29ycnVwdGlvbiBtb2RlIHRoYXQgSSBtZW50 aW9uZWQgYmVmb3JlLiANClRoZSBhY3R1YWwgYnVpbGQvY29tcGlsZS9ldGMgYWN0aW9ucyBh cmUgZmluZSwganVzdCB0aGUgd3JpdGluZyANCm9jY2FzaW9uYWxseSBjb21lcyB1cCBjb3Jy dXB0ZWQsIHdpdGggdGhlIHJlc3VsdHMgKHRoYXQgYXJlIG5vdCBmdXJ0aGVyIA0KdXNlZC90 b3VjaGVkKSBnZXR0aW5nIHBhY2thZ2VkLCBjYXVzaW5nIGZhaWx1cmVzIGluIGNvbnN1bWVy cy4NCg0KLS0gDQpDaGFybGllIExpDQrigKZub3BlLCBzdGlsbCBkb24ndCBoYXZlIGFuIGV4 aXQgbGluZS4NCg0K --------------bmFFwwFN4Yh92EfkiXQaEJ05-- --------------TxDufWBMGHa7sjgXR4N0m3GV Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsF5BAABCAAjFiEEJXd5utNNhpeHcBMx/reFK+KbPocFAmQzO8cFAwAAAAAACgkQ/reFK+KbPocC uRAAgqHDOQtSHZKEExAL53Fc0uCNvOBNyD6yazJRI5FhpDrKO7dSZJPklF4GXU+tb10lc/NN3XRd QWe11fIphGUbhcVI+mxQUnCGS5KQ7c8zR3R+r6/Ldef3+Yp/8HJkC+C6FfkUOSXBLQw3fojkrNnb UfDbHjay6hbImby/NiR0Fb/xP8IJWSsfAYTwk56RzJH2lDQoTni19IpDQq+tjgvZT/QzpjTdQjdT uur0hM2F1iAgnwIct+NHe2wh/DFTgwmnNIOBJ69AmUbKRTRRZDrEDC4obtDjjfoDMTbV6WePQTp6 qcNGAvWIjP+Uxbwi1vMq5wpHvj3BFNjFmGz3bo5TIVBoT27trWFVG6wxukRf/CzDSZG5wjm8NtPP V56XVo6K4Urb4CIIlXjqcqt/WEnK2LgSfI+26Z5Or5BD162YMCHi4hsSoivfu0At/+MnxdAsh9DI e0oUw8335H7sQIzchqrlrhvtTm1MSzdliz4Iljjd/vSduueInnJcnS/M7OnKvrLHYig4ha5TCAv8 rPB8ZL5SFG5mWYazikQdVnZ3Fzr0fjFnPCZcep6G/RGn5BJli6PegImkpOI502w6GQ+Em/TVRoXP mPcwuz2eQmHMkpehtGuVQ7KvYJGumJ/757okFaLsc4/UUwk5S4lHNTbgdj3903LpOcnksl4nRY/T v04= =VNKl -----END PGP SIGNATURE----- --------------TxDufWBMGHa7sjgXR4N0m3GV-- From nobody Sun Apr 9 22:35:19 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvn4D68fsz44MyK; Sun, 9 Apr 2023 22:35:24 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from omta001.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 4Pvn4C703Pz40RC; Sun, 9 Apr 2023 22:35:23 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Authentication-Results: mx1.freebsd.org; none Received: from shw-obgw-4001a.ext.cloudfilter.net ([10.228.9.142]) by cmsmtp with ESMTP id lVAbpxuLjuZMSldd4pD8kw; Sun, 09 Apr 2023 22:35:22 +0000 Received: from spqr.komquats.com ([70.66.148.124]) by cmsmtp with ESMTPA id ldd2pxzZrHFsOldd3pLdrJ; Sun, 09 Apr 2023 22:35:22 +0000 X-Authority-Analysis: v=2.4 cv=XZqaca15 c=1 sm=1 tr=0 ts=64333daa a=Cwc3rblV8FOMdVN/wOAqyQ==:117 a=Cwc3rblV8FOMdVN/wOAqyQ==:17 a=kj9zAlcOel0A:10 a=dKHAf1wccvYA:10 a=pGLkceISAAAA:8 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=EkcXrb_YAAAA:8 a=DxWW-xz7vxWGE-6_3GgA:9 a=CjuIK1q_8ugA:10 a=Trad_Bmqfy8A:10 a=aHTgUBiGqFQ7EW2Mis07:22 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 a=LK5xJRSDVpKd5WXXoEvA:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTP id C4E663DBB; Sun, 9 Apr 2023 15:35:19 -0700 (PDT) Received: by slippy.cwsent.com (Postfix, from userid 1000) id 68D741F3; Sun, 9 Apr 2023 15:35:19 -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: Mateusz Guzik cc: FreeBSD User , Charlie Li , Cy Schubert , Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 In-reply-to: References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> <20230409202650.49130b92@thor.intern.walstatt.dynvpn.de> Comments: In-reply-to Mateusz Guzik message dated "Mon, 10 Apr 2023 00:15:57 +0200." List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Sun, 09 Apr 2023 15:35:19 -0700 Message-Id: <20230409223519.68D741F3@slippy.cwsent.com> X-CMAE-Envelope: MS4xfKivlH12rK/gTCaCJPTboNHandJ2IkkV/+3grQRBAP/BYMA0GfoVXLw6E8HlCXugMKdWe0Op5bqFSQUmAUMa2hGJoo43IGFtpoGnzBkexP0bU8Q9Kv1b Ah1tzy7P6U4uvlEGNpgsLi7n/4SwwNUFoEFNu63jijXNSnjzzUSj7jsm1WxPu7pAgQD5H5dSnuLeJiQK6u6rO9Ux2ptk0wGCPSMpfSKianmgoCldY7XvhPTI 8LTx5WcRBMzy8xRNaFc0z5ISTox+GJlhVBxYqh1rpxPQbEH7wiDdt/77DmEhCB6M4UQk4II6uaDooU2mEFhy6Klg+6H8Ll/4IdTzLQ1Bmbv3t+s8d/qlboVE SZOdrHT/x5VmjrncN0HDMknpQZTq9edXM7u5b+3hUqkQuxztV72MfCOPkKnEKex7jqn6Tl1y4eQAJPkEiiCGplUfP5+3m81sM//u1vsVZRhi6aNGQPw= X-Rspamd-Queue-Id: 4Pvn4C703Pz40RC X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; TAGGED_RCPT(0.00)[]; ASN(0.00)[asn:16509, ipnet:3.96.0.0/15, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N In message , Mateusz Guzik writes: > On 4/9/23, Mateusz Guzik wrote: > > On 4/9/23, FreeBSD User wrote: > >> Am Sun, 9 Apr 2023 13:23:05 -0400 > >> Charlie Li schrieb: > >> > >>> Mateusz Guzik wrote: > >>> > On 4/9/23, Charlie Li wrote: > >>> >> I've also started noticing random artefacts and malformed files > >>> >> whilst > >>> >> building packages with poudriere, causing all sorts of "exec format > >>> >> error"s, missing .so files due to corruption, data file corruption > >>> >> causing unintended failure modes, etc. All without block_cloning; > >>> >> enabling such causes a panic of its own when starting multiple > >>> >> builder > >>> >> jails at once. > >>> >> > >>> > > >>> > what's the panic? > >>> > > >>> manually typed out: > >>> > >>> panic: VERIFY(!zil_replaying(zilog, tx)) failed > >>> > >>> cpuid = 7 > >>> time = 1681060472 > >>> KDB: stack backtrace: > >>> db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame > >>> 0xfffffe02a05b28a0 > >>> vpanic() at vpanic+0x152/frame 0xfffffe02a05b28f0 > >>> spl_panic() at spl_panic+0x3a/frame 0xfffffe02a05b2950 > >>> zfs_log_clone_range() at zfs_log_clone_range+0x1db/frame > >>> 0xfffffe02a05b29e0 > >>> zfs_clone_range() at zfs_clone_range+0xae2/frame 0xfffffe02a05b2bc0 > >>> zfs_freebsd_copy_file_range() at zfs_freebsd_copy_file_range+0xff/frame > >>> 0xfffffe02a05b2c40 > >>> vn_copy_file_range() at vn_copy_file_range+0x115/frame > >>> 0xfffffe02a05b2ce0 > >>> kern_copy_file_range() at kern_copy_file_range+0x34e/frame > >>> 0xfffffe02a05b2db0 > >>> sys_copy_file_range() at sys_copy_file_range+0x78/frame > >>> 0xfffffe02a05b2e00 > >>> amd64_syscall() at amd64_syscall+0x148/frame 0xfffffe02a05b2f30 > >>> fast_syscall_common() at fast_syscall_common+0xf8/frame > >>> 0xfffffe02a05b2f30 > >>> --- syscall (569, FreeBSD ELF64, copy_file_range), rip = 0x908d2a, rsp = > >>> 0x820c28e68, rbp = 0x820c292b0 --- > >>> KDB: enter: panic > >>> [ thread pid 1856 tid 102129 ] > >>> Stopped at kdb_enter+0x32: movq $0,0x12760f3(%rip) > >>> db> > >>> > >> > >> I have the same issue (crash on access of several, but random datasets). > >> > >> It started with /usr/ports build failures when performing updates or > >> rebuilding ports, > >> poudriere host doesn't work anymore, as soon as started building ports, > >> the > >> hosts (several of > >> them, same OS revision, new ZFS option enabled) crash. > >> Also when building binaries for an pkg OS distribution. > >> > >> That host also reports a ZFS RAIDZ pool as corrupted, out of the blue! > >> Some > >> files from a > >> poudriere build and /usr/ports build seem to have issues with some > >> temporarily created files > >> in work directory. > >> > >> On another host /usr/ports is residing on ZFS and it crashes also when > >> building/updating ports > >> (/usr/ports residing on ZFS) - but on the same host /home is also > >> residing > >> on ZFS, but even > >> downloading large amounts of emails, the host seem to be stable. Have not > >> found out yet what > >> kind of file access triggers the crash. > >> > > > > I reproduced the VERIFY(!zil_replaying(zilog, tx)) panic. As the > > backtrace shows it triggers when using copy_file_range, I temporarily > > patched the kernel to never do block cloning. So far the only package > > which failed to build was sqlite and it was for a legitimate reason > > (compiler errored out due to a problem in the code). > > > > ... and got an illegitimate failure: > strip: file format not recognized > > the port builds after retrying > > iow there is more breakage. > > i don't know if the merge can be easily reverted now, will have to see > about that git revert is the easy part. What about people who've done zpool upgrade, and following the revert have read-only zpools? Personally, I typically avoid enabling new zpool features for the first few weeks, even months, just in case. But not everyone does this. People who've done zpool upgrade already will need to back up their zpools and restore them following any upgrade to a FreeBSD with reverted zfs commits. And, considering the above, we may be long past the point of no return. For me, personally, it won't matter either way. For others? I don't know. Maybe simply disabling block_cloning regardless of the zpool setting might be a less disruptive solution. What is the ZFS project issue number? -- Cheers, Cy Schubert FreeBSD UNIX: Web: https://FreeBSD.org NTP: Web: https://nwtime.org e^(i*pi)+1=0 From nobody Sun Apr 9 22:40:50 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvnBY5dnWz44MvF; Sun, 9 Apr 2023 22:40:53 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from omta002.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 4PvnBX4kyvz487Z; Sun, 9 Apr 2023 22:40:52 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Authentication-Results: mx1.freebsd.org; none Received: from shw-obgw-4001a.ext.cloudfilter.net ([10.228.9.142]) by cmsmtp with ESMTP id ld3tp3wnpjvm1ldiOpyuIn; Sun, 09 Apr 2023 22:40:52 +0000 Received: from spqr.komquats.com ([70.66.148.124]) by cmsmtp with ESMTPA id ldiMpy0yAHFsOldiNpLeFA; Sun, 09 Apr 2023 22:40:52 +0000 X-Authority-Analysis: v=2.4 cv=XZqaca15 c=1 sm=1 tr=0 ts=64333ef4 a=Cwc3rblV8FOMdVN/wOAqyQ==:117 a=Cwc3rblV8FOMdVN/wOAqyQ==:17 a=xqWC_Br6kY4A:10 a=kj9zAlcOel0A:10 a=dKHAf1wccvYA:10 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=EkcXrb_YAAAA:8 a=NqxC62ManMFd0QyVcpYA:9 a=CjuIK1q_8ugA:10 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 a=LK5xJRSDVpKd5WXXoEvA:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTP id 762313DC5; Sun, 9 Apr 2023 15:40:50 -0700 (PDT) Received: from localhost (localhost [IPv6:::1]) by slippy.cwsent.com (Postfix) with ESMTP id 393E71F4; Sun, 9 Apr 2023 15:40:50 -0700 (PDT) Date: Sun, 9 Apr 2023 15:40:50 -0700 From: Cy Schubert To: Charlie Li Cc: Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 Message-ID: <20230409154042.0685a273@cschubert.com> In-Reply-To: <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> Organization: KOMQUATS X-Mailer: Claws Mail 3.19.0 (GTK+ 2.24.33; amd64-portbld-freebsd14.0) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-CMAE-Envelope: MS4xfPe8L3TRZ5V1b8xxNzgKtg9/aG8wLTtZpa4HzCXagLFPp+5ioLm5iVHafm29MHkMJJuy+k+hhJTceclUm6Wk/BflZxpbLk/syyLVjz2/qlsLWloi5WMR aZhp6OO1JAp5VJ4LZ9xfp9XUnKy7uvZGjCq+WfMs6bTY8Cr9t+Oqe+sM5+CoRqem6P9ZCc/l1aRi+k9KmRbtn4Tn0NTJ1J+lBA7F1jo/P3sWddWrrxuTSABA PfdDypG5iTY41FW3P1bKZtu/pfFkwnQXZRSgavFzZVLmzhbKPUu09MQtDCI/sKGO+bKhezvzICen3XP/WBexxZOhC8Lfr8uYRxR6s1DpYSrOlPhpZESQ0eWB F7MegcOoktDzMZXXyAMip2THpvPjuLKumHmHB/ArFKDTZqizmOU= X-Rspamd-Queue-Id: 4PvnBX4kyvz487Z X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; TAGGED_RCPT(0.00)[]; ASN(0.00)[asn:16509, ipnet:3.96.0.0/15, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N On Sun, 9 Apr 2023 12:49:23 -0400 Charlie Li wrote: > Cy Schubert wrote: > > I've noticed random artifacts in my emails since the new ZFS. I'm not sure > > if it's related to block_cloning or something else. This could mean deeper > > trouble. > > > I've also started noticing random artefacts and malformed files whilst > building packages with poudriere, causing all sorts of "exec format > error"s, missing .so files due to corruption, data file corruption > causing unintended failure modes, etc. All without block_cloning; > enabling such causes a panic of its own when starting multiple builder > jails at once. > I've noticed that the problem was resolved after the latest mjg patch (and prior to that the rmacklem patch) was applied. block_cloning is disabled in all my zpools. I assume you you are saying that enabling block_cloning also causes random corruption? -- Cheers, Cy Schubert FreeBSD UNIX: Web: https://FreeBSD.org NTP: Web: https://nwtime.org e^(i*pi)+1=0 From nobody Sun Apr 9 23:57:55 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvpvS1mF7z44Snj; Sun, 9 Apr 2023 23:57: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvpvS0Qczz4FBf; Sun, 9 Apr 2023 23:57:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084676; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u3Ztab933QYprWmx0PTFDccQT3UJ58WDyktf0DmRmKM=; b=MJbAetW8SVvlO6KrOiygibgPXr/JmG0lAHLbMIquz14LZLUjzr5euHXCI2rlonPI+mPCSh Xc40dDPzFjX9/VnYBBcQUxDmW+inr8xKMFNHk2k54Hae5YtpR6LJX5NNz3ht1Q/2B/tkTr kPEO42ChYtCAB8UDC+DJbuaKlnak+7Ro1y31sYUceuqEpe43a3EUp9322Na+gBX8+a1p+I PWEStGRM3whrUOzSPXcP6nIlhr9gw6zZ2bpPKlom/wOCW7xw0PoLraOtUrGbzG9ZjL6YR7 zedJx/mVYmrR9US8UeSMyvG/kxCe/1xeNfuH3horVwPKh1tDI7agDobEqVKDNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084676; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u3Ztab933QYprWmx0PTFDccQT3UJ58WDyktf0DmRmKM=; b=kVaCzyWPjlgrA+51yMZw6oURyLGh10cATztav01LEv/6fimbdV717vFD9wR1n/WV89Kimp sVAu66ZfKKMY9DT77Wi0xmuBfskH/nFZj4Md9PWXdI427x70dQiyAnYqj7NJuXziZvVVJJ FSDa7GxCGuUSL9SV4nu61Wfp/vt5xu019zS+DWFsccwJbnGLG9m0tk70JO+EKGL/ZXg5aY SjzasiRrOZbzwy+jO50Skz0skC/3RO+zLTSdbSAG7b59Yx/QXgAh5MYugSYdnBwlTTI55H izxvQEbbVKB1F94kpAzQU5ETwtMZkSkQSz7lGaEYkZ5RgcoPYcPWPxJGP9WAhA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681084676; a=rsa-sha256; cv=none; b=L7DDPtyyKLbIMkj8Cd/oVsmbpbs9kQdqKiwd3oa7fHHK4efRMaMSJWBAUMzreFHTr1qeuD Z/c5IhtY8Cei5PdBCEnLd/Z9OzFfz6JYW8LcNTQh+aPQeGnse3GJSgoe+UkfiQWsCt71yX sVShBaDJsD2ZEyc69+Q5sOItm9GQ+Y6ZY+PbUwiTGvfjna5+w+FnZ09hyHpGGATaZMsR3T 3Qwd2YAsEQk0hl51HpvbZW+89i+uSubQakkz4q63DafWc4M0j+BQOjnfZR7nfrghOSBQqa h7xrPoYCPEvHprnY0Tbra4nnbx6VPqkK+71WJkp24N7Z3rdMYycCVB/LQKth+w== 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 4PvpvR603czSpw; Sun, 9 Apr 2023 23:57:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339NvtVQ011917; Sun, 9 Apr 2023 23:57:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339Nvttf011916; Sun, 9 Apr 2023 23:57:55 GMT (envelope-from git) Date: Sun, 9 Apr 2023 23:57:55 GMT Message-Id: <202304092357.339Nvttf011916@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kyle Evans Subject: git: 7362081fad70 - stable/13 - daemon: move variables into struct daemon_state List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 7362081fad7090e312c3b14ecb80dc47657799c0 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=7362081fad7090e312c3b14ecb80dc47657799c0 commit 7362081fad7090e312c3b14ecb80dc47657799c0 Author: Ihor Antonov AuthorDate: 2023-03-12 16:07:34 +0000 Commit: Kyle Evans CommitDate: 2023-04-09 22:49:51 +0000 daemon: move variables into struct daemon_state The fact that most of the daemon's state is stored on the stack of the main() makes it hard to split the logic smaller chunks. Which in turn leads to huge main func that does a a lot of things. struct log_params existed because some variables need to be passed into other functions together. This change renames struct log_params into daemon_state and moves the rest of the variables into it. This is a necessary preparation step for further refactroing. Reviewed by: imp (cherry picked from commit 298a392ec31819c8440974eeb47dfed48568fd5e) --- usr.sbin/daemon/daemon.c | 288 +++++++++++++++++++++++++---------------------- 1 file changed, 154 insertions(+), 134 deletions(-) diff --git a/usr.sbin/daemon/daemon.c b/usr.sbin/daemon/daemon.c index 3bbf092b500c..b215803cf3c6 100644 --- a/usr.sbin/daemon/daemon.c +++ b/usr.sbin/daemon/daemon.c @@ -59,14 +59,28 @@ __FBSDID("$FreeBSD$"); #define LBUF_SIZE 4096 -struct log_params { +struct daemon_state { + int pipe_fd[2]; + const char *child_pidfile; + const char *parent_pidfile; const char *output_filename; const char *syslog_tag; + const char *title; + const char *user; + struct pidfh *parent_pidfh; + struct pidfh *child_pidfh; + int keep_cur_workdir; + int restart_delay; + int stdmask; int syslog_priority; int syslog_facility; int keep_fds_open; int output_fd; + bool supervision_enabled; + bool child_eof; + bool restart_enabled; bool syslog_enabled; + bool log_reopen; }; static void restrict_process(const char *); @@ -74,13 +88,13 @@ static void handle_term(int); static void handle_chld(int); static void handle_hup(int); static int open_log(const char *); -static void reopen_log(struct log_params *); -static bool listen_child(int, struct log_params *); +static void reopen_log(struct daemon_state *); +static bool listen_child(int, struct daemon_state *); static int get_log_mapping(const char *, const CODE *); -static void open_pid_files(const char *, const char *, struct pidfh **, - struct pidfh **); -static void do_output(const unsigned char *, size_t, struct log_params *); +static void open_pid_files(struct daemon_state *); +static void do_output(const unsigned char *, size_t, struct daemon_state *); static void daemon_sleep(time_t, long); +static void daemon_state_init(struct daemon_state *); static volatile sig_atomic_t terminate = 0; static volatile sig_atomic_t child_gone = 0; @@ -144,36 +158,15 @@ usage(int exitcode) int main(int argc, char *argv[]) { - bool supervision_enabled = false; - bool log_reopen = false; - bool child_eof = false; - bool restart_enabled = false; char *p = NULL; - const char *child_pidfile = NULL; - const char *parent_pidfile = NULL; - const char *title = NULL; - const char *user = NULL; int ch = 0; - int keep_cur_workdir = 1; - int pipe_fd[2] = { -1, -1 }; - int restart_delay = 1; - int stdmask = STDOUT_FILENO | STDERR_FILENO; - struct log_params logparams = { - .syslog_enabled = false, - .syslog_priority = LOG_NOTICE, - .syslog_tag = "daemon", - .syslog_facility = LOG_DAEMON, - .keep_fds_open = 1, - .output_fd = -1, - .output_filename = NULL - }; - struct pidfh *parent_pidfh = NULL; - struct pidfh *child_pidfh = NULL; + struct daemon_state state; sigset_t mask_orig; sigset_t mask_read; sigset_t mask_term; sigset_t mask_susp; + daemon_state_init(&state); sigemptyset(&mask_susp); sigemptyset(&mask_read); sigemptyset(&mask_term); @@ -199,81 +192,81 @@ main(int argc, char *argv[]) while ((ch = getopt_long(argc, argv, shortopts, longopts, NULL)) != -1) { switch (ch) { case 'c': - keep_cur_workdir = 0; + state.keep_cur_workdir = 0; break; case 'f': - logparams.keep_fds_open = 0; + state.keep_fds_open = 0; break; case 'H': - log_reopen = true; + state.log_reopen = true; break; case 'l': - logparams.syslog_facility = get_log_mapping(optarg, + state.syslog_facility = get_log_mapping(optarg, facilitynames); - if (logparams.syslog_facility == -1) { + if (state.syslog_facility == -1) { errx(5, "unrecognized syslog facility"); } - logparams.syslog_enabled = true; - supervision_enabled = true; + state.syslog_enabled = true; + state.supervision_enabled = true; break; case 'm': - stdmask = strtol(optarg, &p, 10); - if (p == optarg || stdmask < 0 || stdmask > 3) { + state.stdmask = strtol(optarg, &p, 10); + if (p == optarg || state.stdmask < 0 || state.stdmask > 3) { errx(6, "unrecognized listening mask"); } break; case 'o': - logparams.output_filename = optarg; + state.output_filename = optarg; /* * TODO: setting output filename doesn't have to turn * the supervision mode on. For non-supervised mode * daemon could open the specified file and set it's * descriptor as both stderr and stout before execve() */ - supervision_enabled = true; + state.supervision_enabled = true; break; case 'p': - child_pidfile = optarg; - supervision_enabled = true; + state.child_pidfile = optarg; + state.supervision_enabled = true; break; case 'P': - parent_pidfile = optarg; - supervision_enabled = true; + state.parent_pidfile = optarg; + state.supervision_enabled = true; break; case 'r': - restart_enabled = true; - supervision_enabled = true; + state.restart_enabled = true; + state.supervision_enabled = true; break; case 'R': - restart_enabled = true; - restart_delay = strtol(optarg, &p, 0); - if (p == optarg || restart_delay < 1) { + state.restart_enabled = true; + state.restart_delay = strtol(optarg, &p, 0); + if (p == optarg || state.restart_delay < 1) { errx(6, "invalid restart delay"); } break; case 's': - logparams.syslog_priority = get_log_mapping(optarg, + state.syslog_priority = get_log_mapping(optarg, prioritynames); - if (logparams.syslog_priority == -1) { + if (state.syslog_priority == -1) { errx(4, "unrecognized syslog priority"); } - logparams.syslog_enabled = true; - supervision_enabled = true; + state.syslog_enabled = true; + state.supervision_enabled = true; break; case 'S': - logparams.syslog_enabled = true; - supervision_enabled = true; + state.syslog_enabled = true; + state.supervision_enabled = true; break; case 't': - title = optarg; + state.title = optarg; break; case 'T': - logparams.syslog_tag = optarg; - logparams.syslog_enabled = true; - supervision_enabled = true; + state.syslog_tag = optarg; + state.syslog_enabled = true; + state.supervision_enabled = true; break; case 'u': - user = optarg; + state.user = optarg; break; case 'h': usage(0); @@ -289,35 +282,35 @@ main(int argc, char *argv[]) usage(1); } - if (!title) { - title = argv[0]; + if (!state.title) { + state.title = argv[0]; } - if (logparams.output_filename) { - logparams.output_fd = open_log(logparams.output_filename); - if (logparams.output_fd == -1) { + if (state.output_filename) { + state.output_fd = open_log(state.output_filename); + if (state.output_fd == -1) { err(7, "open"); } } - if (logparams.syslog_enabled) { - openlog(logparams.syslog_tag, LOG_PID | LOG_NDELAY, - logparams.syslog_facility); + if (state.syslog_enabled) { + openlog(state.syslog_tag, LOG_PID | LOG_NDELAY, + state.syslog_facility); } /* * Try to open the pidfile before calling daemon(3), * to be able to report the error intelligently */ - open_pid_files(child_pidfile, parent_pidfile, &child_pidfh, &parent_pidfh); - if (daemon(keep_cur_workdir, logparams.keep_fds_open) == -1) { + open_pid_files(&state); + if (daemon(state.keep_cur_workdir, state.keep_fds_open) == -1) { warn("daemon"); goto exit; } /* Write out parent pidfile if needed. */ - pidfile_write(parent_pidfh); + pidfile_write(state.parent_pidfh); - if (supervision_enabled) { + if (state.supervision_enabled) { struct sigaction act_term = { 0 }; struct sigaction act_chld = { 0 }; struct sigaction act_hup = { 0 }; @@ -364,13 +357,13 @@ main(int argc, char *argv[]) * not have superuser privileges. */ (void)madvise(NULL, 0, MADV_PROTECT); - if (log_reopen && logparams.output_fd >= 0 && + if (state.log_reopen && state.output_fd >= 0 && sigaction(SIGHUP, &act_hup, NULL) == -1) { warn("sigaction"); goto exit; } restart: - if (pipe(pipe_fd)) { + if (pipe(state.pipe_fd)) { err(1, "pipe"); } /* @@ -389,33 +382,33 @@ restart: /* fork succeeded, this is child's branch or supervision is disabled */ if (pid == 0) { - pidfile_write(child_pidfh); + pidfile_write(state.child_pidfh); - if (user != NULL) { - restrict_process(user); + if (state.user != NULL) { + restrict_process(state.user); } /* * In supervision mode, the child gets the original sigmask, * and dup'd pipes. */ - if (supervision_enabled) { - close(pipe_fd[0]); + if (state.supervision_enabled) { + close(state.pipe_fd[0]); if (sigprocmask(SIG_SETMASK, &mask_orig, NULL)) { err(1, "sigprogmask"); } - if (stdmask & STDERR_FILENO) { - if (dup2(pipe_fd[1], STDERR_FILENO) == -1) { + if (state.stdmask & STDERR_FILENO) { + if (dup2(state.pipe_fd[1], STDERR_FILENO) == -1) { err(1, "dup2"); } } - if (stdmask & STDOUT_FILENO) { - if (dup2(pipe_fd[1], STDOUT_FILENO) == -1) { + if (state.stdmask & STDOUT_FILENO) { + if (dup2(state.pipe_fd[1], STDOUT_FILENO) == -1) { err(1, "dup2"); } } - if (pipe_fd[1] != STDERR_FILENO && - pipe_fd[1] != STDOUT_FILENO) { - close(pipe_fd[1]); + if (state.pipe_fd[1] != STDERR_FILENO && + state.pipe_fd[1] != STDOUT_FILENO) { + close(state.pipe_fd[1]); } } execvp(argv[0], argv); @@ -434,10 +427,10 @@ restart: warn("sigprocmask"); goto exit; } - close(pipe_fd[1]); - pipe_fd[1] = -1; + close(state.pipe_fd[1]); + state.pipe_fd[1] = -1; - setproctitle("%s[%d]", title, (int)pid); + setproctitle("%s[%d]", state.title, (int)pid); /* * As we have closed the write end of pipe for parent process, * we might detect the child's exit by reading EOF. The child @@ -460,7 +453,7 @@ restart: * to depart. To handle the second option, a different * approach would be needed (procctl()?) */ - if (child_gone && child_eof) { + if (child_gone && state.child_eof) { break; } @@ -468,7 +461,7 @@ restart: goto exit; } - if (child_eof) { + if (state.child_eof) { if (sigprocmask(SIG_BLOCK, &mask_susp, NULL)) { warn("sigprocmask"); goto exit; @@ -488,7 +481,7 @@ restart: goto exit; } - child_eof = !listen_child(pipe_fd[0], &logparams); + state.child_eof = !listen_child(state.pipe_fd[0], &state); if (sigprocmask(SIG_UNBLOCK, &mask_read, NULL)) { warn("sigprocmask"); @@ -496,27 +489,27 @@ restart: } } - if (restart_enabled && !terminate) { - daemon_sleep(restart_delay, 0); + if (state.restart_enabled && !terminate) { + daemon_sleep(state.restart_delay, 0); } if (sigprocmask(SIG_BLOCK, &mask_term, NULL)) { warn("sigprocmask"); goto exit; } - if (restart_enabled && !terminate) { - close(pipe_fd[0]); - pipe_fd[0] = -1; + if (state.restart_enabled && !terminate) { + close(state.pipe_fd[0]); + state.pipe_fd[0] = -1; goto restart; } exit: - close(logparams.output_fd); - close(pipe_fd[0]); - close(pipe_fd[1]); - if (logparams.syslog_enabled) { + close(state.output_fd); + close(state.pipe_fd[0]); + close(state.pipe_fd[1]); + if (state.syslog_enabled) { closelog(); } - pidfile_remove(child_pidfh); - pidfile_remove(parent_pidfh); + pidfile_remove(state.child_pidfh); + pidfile_remove(state.parent_pidfh); exit(1); /* If daemon(3) succeeded exit status does not matter. */ } @@ -533,34 +526,33 @@ daemon_sleep(time_t secs, long nsecs) } static void -open_pid_files(const char *pidfile, const char *ppidfile, - struct pidfh **pfh, struct pidfh **ppfh) +open_pid_files(struct daemon_state *state) { pid_t fpid; int serrno; - if (pidfile) { - *pfh = pidfile_open(pidfile, 0600, &fpid); - if (*pfh == NULL) { + if (state->child_pidfile) { + state->child_pidfh = pidfile_open(state->child_pidfile, 0600, &fpid); + if (state->child_pidfh == NULL) { if (errno == EEXIST) { errx(3, "process already running, pid: %d", fpid); } - err(2, "pidfile ``%s''", pidfile); + err(2, "pidfile ``%s''", state->child_pidfile); } } /* Do the same for the actual daemon process. */ - if (ppidfile) { - *ppfh = pidfile_open(ppidfile, 0600, &fpid); - if (*ppfh == NULL) { + if (state->parent_pidfile) { + state->parent_pidfh= pidfile_open(state->parent_pidfile, 0600, &fpid); + if (state->parent_pidfh == NULL) { serrno = errno; - pidfile_remove(*pfh); + pidfile_remove(state->child_pidfh); errno = serrno; if (errno == EEXIST) { errx(3, "process already running, pid: %d", fpid); } - err(2, "ppidfile ``%s''", ppidfile); + err(2, "ppidfile ``%s''", state->parent_pidfile); } } } @@ -603,17 +595,17 @@ restrict_process(const char *user) * continue reading. */ static bool -listen_child(int fd, struct log_params *logpar) +listen_child(int fd, struct daemon_state *state) { static unsigned char buf[LBUF_SIZE]; static size_t bytes_read = 0; int rv; - assert(logpar); + assert(state); assert(bytes_read < LBUF_SIZE - 1); if (do_log_reopen) { - reopen_log(logpar); + reopen_log(state); } rv = read(fd, buf + bytes_read, LBUF_SIZE - bytes_read - 1); if (rv > 0) { @@ -630,7 +622,7 @@ listen_child(int fd, struct log_params *logpar) while ((cp = memchr(buf, '\n', bytes_read)) != NULL) { size_t bytes_line = cp - buf + 1; assert(bytes_line <= bytes_read); - do_output(buf, bytes_line, logpar); + do_output(buf, bytes_line, state); bytes_read -= bytes_line; memmove(buf, cp + 1, bytes_read); } @@ -638,7 +630,7 @@ listen_child(int fd, struct log_params *logpar) if (bytes_read < LBUF_SIZE - 1) { return true; } - do_output(buf, bytes_read, logpar); + do_output(buf, bytes_read, state); bytes_read = 0; return true; } else if (rv == -1) { @@ -652,7 +644,7 @@ listen_child(int fd, struct log_params *logpar) } /* Upon EOF, we have to flush what's left of the buffer. */ if (bytes_read > 0) { - do_output(buf, bytes_read, logpar); + do_output(buf, bytes_read, state); bytes_read = 0; } return false; @@ -664,24 +656,24 @@ listen_child(int fd, struct log_params *logpar) * everything back to parent's stdout. */ static void -do_output(const unsigned char *buf, size_t len, struct log_params *logpar) +do_output(const unsigned char *buf, size_t len, struct daemon_state *state) { assert(len <= LBUF_SIZE); - assert(logpar); + assert(state); if (len < 1) { return; } - if (logpar->syslog_enabled) { - syslog(logpar->syslog_priority, "%.*s", (int)len, buf); + if (state->syslog_enabled) { + syslog(state->syslog_priority, "%.*s", (int)len, buf); } - if (logpar->output_fd != -1) { - if (write(logpar->output_fd, buf, len) == -1) + if (state->output_fd != -1) { + if (write(state->output_fd, buf, len) == -1) warn("write"); } - if (logpar->keep_fds_open && - !logpar->syslog_enabled && - logpar->output_fd == -1) { + if (state->keep_fds_open && + !state->syslog_enabled && + state->output_fd == -1) { printf("%.*s", (int)len, buf); } } @@ -730,15 +722,43 @@ open_log(const char *outfn) } static void -reopen_log(struct log_params *logparams) +reopen_log(struct daemon_state *state) { int outfd; do_log_reopen = 0; - outfd = open_log(logparams->output_filename); - if (logparams->output_fd >= 0) { - close(logparams->output_fd); + outfd = open_log(state->output_filename); + if (state->output_fd >= 0) { + close(state->output_fd); } - logparams->output_fd = outfd; + state->output_fd = outfd; } +static void +daemon_state_init(struct daemon_state *state) +{ + memset(state, 0, sizeof(struct daemon_state)); + *state = (struct daemon_state) { + .pipe_fd = { -1, -1 }, + .parent_pidfh = NULL, + .child_pidfh = NULL, + .child_pidfile = NULL, + .parent_pidfile = NULL, + .title = NULL, + .user = NULL, + .supervision_enabled = false, + .child_eof = false, + .restart_enabled = false, + .keep_cur_workdir = 1, + .restart_delay = 1, + .stdmask = STDOUT_FILENO | STDERR_FILENO, + .syslog_enabled = false, + .log_reopen = false, + .syslog_priority = LOG_NOTICE, + .syslog_tag = "daemon", + .syslog_facility = LOG_DAEMON, + .keep_fds_open = 1, + .output_fd = -1, + .output_filename = NULL, + }; +} From nobody Sun Apr 9 23:57:56 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvpvT4tNlz44Snt; Sun, 9 Apr 2023 23:57: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvpvT2FYTz4FPn; Sun, 9 Apr 2023 23:57:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084677; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fUydyIrlGkFsxHjY8VPA5HhMexX5Xplsxxbv0DPhNNs=; b=DcBm5rTSzPg0XwqqoPJqrarqW9rTQWFbjspQ62bFAzRtRHMr7N5Uytyf5V6GfHpovk2hxJ rY+MeXnug+BvmjBIz97XmFTvX4w8Wjl6/Ji1yDWvXRDqJmCJt9dvNCPlLuGgU1g+fywUiR RtPuwrrAFcYLs3P2GbiGgBWjE/Xo8HgRezG6/npKd9jmHkqV6tk0IvPMgzk6inQXGjK3uH ylJdhoso9wjY5SWS+K8tLLEQQEycdM7NFrCqyx9QsUEvJOmqKKQJUby0OHgiVt4aN3CsVe IWiByeElLrQQp/r2S3LpNYKk7sH3jbmGP4NVxS7mdI3/HvsUWqYq4SRP2OlPng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084677; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fUydyIrlGkFsxHjY8VPA5HhMexX5Xplsxxbv0DPhNNs=; b=y0KSBeSoJbtT/VVbO3ekKH/y0lVd+yJpW8oyt8ZPN7kriSa3Nno3lzSCwmAhCSu1wtOeyv XlI2uCcItQ6Ds9f0Q4GejDlLZoAquPH7JTi27kVpLmnDwA9IJOVYuY5vOulunhEiuNrw6c xIGW7mTWdQdnDCHGK5qDR7QGUSEQSNGMJnmM/eLUAoyaqNy2zQ35rKGNwx7O+3r2NwDrQp VCRspkof32470nlKc66L0bHnGP8fQEIvQl73j8hhwKD19DP+xfHeMeAgFVs3FB0NfZGoS7 QOBzkmhubtKJe+QtUdZj3w4fwoz/WsSzEnWazmVQJGkT50rk9f+H6n9u2XuOkg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681084677; a=rsa-sha256; cv=none; b=QuRHWPTEHDaeISUbfgGR79G9D14B8zh9FpaOsB0+0bSyY2xCszkubEKTRvqBxWRuFOCM5Z YXrEzuNUnyMZ9uNp2AI9rMmEnaux5+qDYjuwCoq3zsXqWpqwhgW3iEindKB4ZFJiE1bfb7 lUzfnnObYIpuTvRPwk8lMG/pec9Hdp8PdNEoVD3RvyBoUaFp2mMzqaj0LoHWg22EBLIGUD uAsO7lXK/z4SNGCbPa7l4ug0gWp1yZ7tnI/fB0MraCGCtYAj3t7h5cvYD9badVsOn0grHB AiQ9KF85sDL1+1iwnFyE8w8OyRnXujIwBtP6o+IDxL/C4J69xNockr3zOT7Y9g== 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 4PvpvS6ssLzT0M; Sun, 9 Apr 2023 23:57:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339NvuG6011936; Sun, 9 Apr 2023 23:57:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339NvuvL011935; Sun, 9 Apr 2023 23:57:56 GMT (envelope-from git) Date: Sun, 9 Apr 2023 23:57:56 GMT Message-Id: <202304092357.339NvuvL011935@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kyle Evans Subject: git: edc3bffde20a - stable/13 - daemon: repace goto exit with daemon_terminate() List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@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/stable/13 X-Git-Reftype: branch X-Git-Commit: edc3bffde20a0cc6ad5921fbaab75bbf3ec44e68 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=edc3bffde20a0cc6ad5921fbaab75bbf3ec44e68 commit edc3bffde20a0cc6ad5921fbaab75bbf3ec44e68 Author: Ihor Antonov AuthorDate: 2023-03-18 05:31:12 +0000 Commit: Kyle Evans CommitDate: 2023-04-09 22:49:51 +0000 daemon: repace goto exit with daemon_terminate() Start breaking down big main() Remove goto exit label and replace it with a function that does cleanup. Comment re-worded by kevans@. (cherry picked from commit cf6356fd471cdf4e5c52550f63599881d722962c) --- usr.sbin/daemon/daemon.c | 65 +++++++++++++++++++++++++++++------------------- 1 file changed, 40 insertions(+), 25 deletions(-) diff --git a/usr.sbin/daemon/daemon.c b/usr.sbin/daemon/daemon.c index b215803cf3c6..2a57d021258e 100644 --- a/usr.sbin/daemon/daemon.c +++ b/usr.sbin/daemon/daemon.c @@ -95,6 +95,8 @@ static void open_pid_files(struct daemon_state *); static void do_output(const unsigned char *, size_t, struct daemon_state *); static void daemon_sleep(time_t, long); static void daemon_state_init(struct daemon_state *); +static void daemon_terminate(struct daemon_state *); + static volatile sig_atomic_t terminate = 0; static volatile sig_atomic_t child_gone = 0; @@ -305,7 +307,7 @@ main(int argc, char *argv[]) open_pid_files(&state); if (daemon(state.keep_cur_workdir, state.keep_fds_open) == -1) { warn("daemon"); - goto exit; + daemon_terminate(&state); } /* Write out parent pidfile if needed. */ pidfile_write(state.parent_pidfh); @@ -341,15 +343,15 @@ main(int argc, char *argv[]) /* Block SIGTERM to avoid racing until we have forked. */ if (sigprocmask(SIG_BLOCK, &mask_term, &mask_orig)) { warn("sigprocmask"); - goto exit; + daemon_terminate(&state); } if (sigaction(SIGTERM, &act_term, NULL) == -1) { warn("sigaction"); - goto exit; + daemon_terminate(&state); } if (sigaction(SIGCHLD, &act_chld, NULL) == -1) { warn("sigaction"); - goto exit; + daemon_terminate(&state); } /* * Try to protect against pageout kill. Ignore the @@ -360,7 +362,7 @@ main(int argc, char *argv[]) if (state.log_reopen && state.output_fd >= 0 && sigaction(SIGHUP, &act_hup, NULL) == -1) { warn("sigaction"); - goto exit; + daemon_terminate(&state); } restart: if (pipe(state.pipe_fd)) { @@ -376,7 +378,7 @@ restart: /* fork failed, this can only happen when supervision is enabled */ if (pid == -1) { warn("fork"); - goto exit; + daemon_terminate(&state); } @@ -425,7 +427,7 @@ restart: */ if (sigprocmask(SIG_UNBLOCK, &mask_term, NULL)) { warn("sigprocmask"); - goto exit; + daemon_terminate(&state); } close(state.pipe_fd[1]); state.pipe_fd[1] = -1; @@ -458,34 +460,34 @@ restart: } if (terminate) { - goto exit; + daemon_terminate(&state); } if (state.child_eof) { if (sigprocmask(SIG_BLOCK, &mask_susp, NULL)) { warn("sigprocmask"); - goto exit; + daemon_terminate(&state); } while (!terminate && !child_gone) { sigsuspend(&mask_orig); } if (sigprocmask(SIG_UNBLOCK, &mask_susp, NULL)) { warn("sigprocmask"); - goto exit; + daemon_terminate(&state); } continue; } if (sigprocmask(SIG_BLOCK, &mask_read, NULL)) { warn("sigprocmask"); - goto exit; + daemon_terminate(&state); } state.child_eof = !listen_child(state.pipe_fd[0], &state); if (sigprocmask(SIG_UNBLOCK, &mask_read, NULL)) { warn("sigprocmask"); - goto exit; + daemon_terminate(&state); } } @@ -494,23 +496,14 @@ restart: } if (sigprocmask(SIG_BLOCK, &mask_term, NULL)) { warn("sigprocmask"); - goto exit; + daemon_terminate(&state); } if (state.restart_enabled && !terminate) { close(state.pipe_fd[0]); state.pipe_fd[0] = -1; goto restart; } -exit: - close(state.output_fd); - close(state.pipe_fd[0]); - close(state.pipe_fd[1]); - if (state.syslog_enabled) { - closelog(); - } - pidfile_remove(state.child_pidfh); - pidfile_remove(state.parent_pidfh); - exit(1); /* If daemon(3) succeeded exit status does not matter. */ + daemon_terminate(&state); } static void @@ -601,7 +594,7 @@ listen_child(int fd, struct daemon_state *state) static size_t bytes_read = 0; int rv; - assert(state); + assert(state != NULL); assert(bytes_read < LBUF_SIZE - 1); if (do_log_reopen) { @@ -659,7 +652,7 @@ static void do_output(const unsigned char *buf, size_t len, struct daemon_state *state) { assert(len <= LBUF_SIZE); - assert(state); + assert(state != NULL); if (len < 1) { return; @@ -762,3 +755,25 @@ daemon_state_init(struct daemon_state *state) .output_filename = NULL, }; } + + +static _Noreturn void +daemon_terminate(struct daemon_state *state) +{ + assert(state != NULL); + close(state->output_fd); + close(state->pipe_fd[0]); + close(state->pipe_fd[1]); + if (state->syslog_enabled) { + closelog(); + } + pidfile_remove(state->child_pidfh); + pidfile_remove(state->parent_pidfh); + + /* + * Note that the exit value here doesn't matter in the case of a clean + * exit; daemon(3) already detached us from the caller, nothing is left + * to care about this one. + */ + exit(1); +} From nobody Sun Apr 9 23:57:57 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvpvV5YRPz44SmJ; Sun, 9 Apr 2023 23:57:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvpvV1RXJz4FMq; Sun, 9 Apr 2023 23:57:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084678; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=h5cZtPPogOJEtXT09F2B5VK1Gq0N5uLiRS0UnDr17zo=; b=SCFONpMawY61AmUSXamb0XszhzW4ZM4bQInDcFctESwCJdikuP4fmXJXTZTVJ5lTOw4NM5 SvLpq6nJujFQE/ow9kSBWYcr5NBUKiNRs/aGTu5RHnPcpARzxMC1DQxtKvaXKiUcp/AFqq bvyi0GqkLuiQovwqPsvzGWx1MzzSfdCR9LWqQhkNDgT0skaVVN7jdPjxeI8PIbgYaC0kZF 4N4cH2aPGeNcEvWqlIqnUS9VaQxCE+unSL1+t4rui7fx/xLX3Rp90NUr6wYfSuQkeNS0tc uUTG27bGrEWDfkbHYr6kitKBUUI5sJVp4DukmaAVpVP6QaDn2OP75e2MbTWx2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084678; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=h5cZtPPogOJEtXT09F2B5VK1Gq0N5uLiRS0UnDr17zo=; b=oRRhOLXI2S4dZNCCw8ofYwALgjuMGs2+qZyFAhWMQ+++nNqbT6Ki5bp63D3QwGuzXgEBuM TncKWAqhKnUKV3Ka2dkQyY+epj9rtPv0uiWEZ/wwf0iyJ38A07ZceqlvyDx9daCX+Ot31G Llt/NiTlCSsyUJFPbj3bV6at5fz/zsOJrKGnD9F//IruclhaS0nWf4T13BSOGZOszVP6s6 z56xTAHt3m4wjS7AEf54pKh1MpY1R3YGBhLQ6VyA5qRS9/8gzE96Sm1zwn/SPF1mXKnWB1 IlSd18deS7jsz6+T/qlDAfXRNDEHv7j0DIZ86oWG/ECDh5brHXK5Yoqj9AHnHA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681084678; a=rsa-sha256; cv=none; b=CdjTpbGpIO7dE2vt3znMdV94A/vxbjxeA8+mtuuslcNEzjNCL/2vpnanQmxE3KO20CSNcF YWke4sC+74SXBKOG7wm7f6dddx26C+iP2eDgG53QqBnt7B7Hh1rpNYGunDqEAxON95yc3V ENOQHnNEdGHKrhXOmE60/Uzf8qvEvUvUJV6FIXeodJXp5UCeJuh5orSei2K0C06McYOckk FM0oUNd7+57detyp48D5HYRhIowrep2qsgm1DlfQRd7A9GqNHR7g0dnZBFgwNm4OFuGJhj /IzHIRrlYsycPx4HHHe1nCHhNWc77Odm5kRUioVepKEFtvJ4aBCCOId9Ca+idg== 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 4PvpvV0R0wzSj7; Sun, 9 Apr 2023 23:57:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339NvwbO011962; Sun, 9 Apr 2023 23:57:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339NvvhO011961; Sun, 9 Apr 2023 23:57:57 GMT (envelope-from git) Date: Sun, 9 Apr 2023 23:57:57 GMT Message-Id: <202304092357.339NvvhO011961@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kyle Evans Subject: git: 980ad642711f - stable/13 - daemon: remove unnecessary memset in daemon_state_init() List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 980ad642711fadb351ca53cad6341343b98d9cb0 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=980ad642711fadb351ca53cad6341343b98d9cb0 commit 980ad642711fadb351ca53cad6341343b98d9cb0 Author: Ihor Antonov AuthorDate: 2023-03-18 05:43:35 +0000 Commit: Kyle Evans CommitDate: 2023-04-09 22:49:51 +0000 daemon: remove unnecessary memset in daemon_state_init() (cherry picked from commit 8117ea0a413150dccc05ea376596b98c4b1855e6) --- usr.sbin/daemon/daemon.c | 1 - 1 file changed, 1 deletion(-) diff --git a/usr.sbin/daemon/daemon.c b/usr.sbin/daemon/daemon.c index 2a57d021258e..eb69fc87a827 100644 --- a/usr.sbin/daemon/daemon.c +++ b/usr.sbin/daemon/daemon.c @@ -730,7 +730,6 @@ reopen_log(struct daemon_state *state) static void daemon_state_init(struct daemon_state *state) { - memset(state, 0, sizeof(struct daemon_state)); *state = (struct daemon_state) { .pipe_fd = { -1, -1 }, .parent_pidfh = NULL, From nobody Sun Apr 9 23:57:59 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvpvW4L8Jz44SXM; Sun, 9 Apr 2023 23:57: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvpvW2GGmz4FLl; Sun, 9 Apr 2023 23:57:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084679; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UImsTlHsW/a3aba9NocwsaPvVmyv9X5sxRjUUWsc2ZU=; b=t063mthzVF5Sv4jtXOHmKhnSxChw2KH94mqGkpkbTn8+Ze4NRRdFlLq6w3/5yklkq98S6z vyEAG5Xakqv4SL2H81pUswEbOGdoNlOoFwdFu4D9anroL6sTdPyq3EbxxBkbw2sycw1oUh sQfGhea2EKxVtVSmxlOTwrnO5rBZEv2+67Hr5kYjlOOgcI4Qhx7ptiybEgvDlsiIy7e3pB kivQpXHkX3O9ZbSsE/g1+zQzXDNaFF+ec2BV0mN2MNL1L1BbmSUD8B9FdJGusx+lNqwiOP L+67Os+zsJ93OZCe4KYMONhrMrjjkKTRw5FpXSV/+99xwnIY4U8Hz8BEqlGG5A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084679; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UImsTlHsW/a3aba9NocwsaPvVmyv9X5sxRjUUWsc2ZU=; b=bY3Quow8EUiFZUNebCsD/ijf5ve4LSVcf0MFwadjS2BgeQIAFcVNpOYImzt/YRVuVYe77z pJ8wF9j5YBIsbZ5xXNx8kVQHzg7TaL03TMVBa/uXmUQPKxDA5CpS9rWicHK08n4c/+WgsB 0BWVpygujGrbS+7ig623prcfnTH7R/rqf4MNk3JH9wJ18DqRSIJQvr8J7ROwC0WHgikxDt KkfhgA3rdAOlewplInhbVOEqd7HhuF6gdojQuOkND6HOfC0RJmuctSbVI1xNM0KCxoasi2 cPpBrs4+jZgmqFAHnkAqx4lqTvuutDaW7DZKV4hJEeGeS9jv8YXdxXTECX3+vg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681084679; a=rsa-sha256; cv=none; b=DvY5sRFqePrGhAsjaIVl98eIqwNBpMSln3EdAVH1HUsSO+GWSghl8AANZnfw6lTYj/P2sH OXUKDa9uRz5BCR8+juY6cSvE+MzZ2kUSC4NwhZh/CiqkYI8l2TueFpJmEr396acW0j+gbu JBFyBxxd3YDC/LCXNw+hy9gOKn/kOKWy97ZFAxlzFQ/c2MfeMah9ygAdxPW9+8DiOXW/K1 lceO2wHAE3E5L0aYQYO5c1OffRzPeGlAJwYh/t52i9BO3GhbSxXaZ2IxXRpfNgqOXxsXfr x6rwU+KLTjfBsoRWuSoAHMEBLX4NUBWd3ONLMPzipUAIPeLjzdVDlaBVCgX92w== 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 4PvpvW1HhvzT2t; Sun, 9 Apr 2023 23:57:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339NvxHl011981; Sun, 9 Apr 2023 23:57:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339Nvxch011980; Sun, 9 Apr 2023 23:57:59 GMT (envelope-from git) Date: Sun, 9 Apr 2023 23:57:59 GMT Message-Id: <202304092357.339Nvxch011980@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kyle Evans Subject: git: 2a69943c7b65 - stable/13 - daemon: kill off some stray blank lines List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 2a69943c7b653dced1217fbfe74cd68019d19c18 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=2a69943c7b653dced1217fbfe74cd68019d19c18 commit 2a69943c7b653dced1217fbfe74cd68019d19c18 Author: Kyle Evans AuthorDate: 2023-03-18 06:04:35 +0000 Commit: Kyle Evans CommitDate: 2023-04-09 22:49:51 +0000 daemon: kill off some stray blank lines Overlooked in review; mea culpa. Reported by: jrtc27 (cherry picked from commit 6b49a630f441e1a9e8c8e57d2bb71e589d95872c) --- usr.sbin/daemon/daemon.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/usr.sbin/daemon/daemon.c b/usr.sbin/daemon/daemon.c index eb69fc87a827..54e2aeea6874 100644 --- a/usr.sbin/daemon/daemon.c +++ b/usr.sbin/daemon/daemon.c @@ -97,7 +97,6 @@ static void daemon_sleep(time_t, long); static void daemon_state_init(struct daemon_state *); static void daemon_terminate(struct daemon_state *); - static volatile sig_atomic_t terminate = 0; static volatile sig_atomic_t child_gone = 0; static volatile sig_atomic_t pid = 0; @@ -381,7 +380,6 @@ restart: daemon_terminate(&state); } - /* fork succeeded, this is child's branch or supervision is disabled */ if (pid == 0) { pidfile_write(state.child_pidfh); @@ -755,7 +753,6 @@ daemon_state_init(struct daemon_state *state) }; } - static _Noreturn void daemon_terminate(struct daemon_state *state) { From nobody Sun Apr 9 23:58:00 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvpvY1d4Sz44Sjc; Sun, 9 Apr 2023 23:58: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvpvX3lfbz4FQh; Sun, 9 Apr 2023 23:58:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084681; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v5Q4fkcha+3JpWQW5xPLvzpaRMaZWysBk3KAm4aKX0w=; b=U7rgN+upKjj8E8JcUj9+Fx+nw4lWqcHohtRN1tPWITBMIHakvmtoyjXJmr1uywHMg5WsbF TmK/4xtfLyvzCqLpOKuDEJLeV2QO0Lc0NT66XBJje/J5zidZrfmUVCeiFVrlazp0tCG2jW 7UvbtgT5eTkVoQQOipr/OLk7Pv8CEZmgNmawoC8a5J26wjfs2slVltLEcvvs//+90wW65n hg1vSaUb22TVRNWG016/AmWdVR84Y4zgkXiCdBql8/7c8wOZ8V9CGebIcaYwRZhQmV+JuE Xpyh4O39PGjybtFDczLK+qO3w6osXNYHpLNWj34CHsHn5l2z9SImUQRoxbbdew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084680; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v5Q4fkcha+3JpWQW5xPLvzpaRMaZWysBk3KAm4aKX0w=; b=fh0u08d5B0s9tmRwc8KFzuwLpWj5c+eG5NQn/C/KOxwtbXRlWbaVNrSVktCF2YhAji8ccS 9PfPgX4hHjtzFWVpR3PpUTQfDWlnu9vQeXdQH3qsMk7U6HrO5c8OLxSvIkPJsYoDCwRL/H Ab/z92Y+48JiZHZhgeIs1+qqGcpVqvn6eM7j2EEQqOkapYvLWGXjIibchF4ZuGj0hGqOxb awAVYPDQL9OkzS9HaoJ338yzhjJDYyMDDSPj/rhf9nGXCGTQtK/5ZfqQ7Q1UZtgprPLCcv e4XJLlVPYo3sbPQdi8GJmplVWzWn5nUarHIDUHHvYYbiWPxtyDgn20cVZxAKKQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681084680; a=rsa-sha256; cv=none; b=BmCHg4D889lRqRmi0V35rJyqzpxXbpiRzPHDq2ZMHeOeptG/wG1C2reu3At/rn8lgzkRvS lfXE2p6fgxrJQvWyiWkQ92usamW1IAuQaNdhmyzmAngNfIflbeR32q4c/F3LrtFjgB6deH tjQ0Njb70PYzLUrCZEjh8lxPLovlakqPZk9MmgvztUcvY002fuZOwhTMwACSPDymL4D3pg luusk+s9JIHSG1MjEokb3YwfSlj6CWWbMN/sLOMU8B+/KX1WKjmjErMDlk+U0Zb5qi2IVq UKnZMVbYay3Y2vbuB3KdvmXcBgVbHakvDZUQkLQRM1dQ4Pb1BtX4bXzJZpTbPQ== 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 4PvpvX2DRjzSmn; Sun, 9 Apr 2023 23:58:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339Nw0St012000; Sun, 9 Apr 2023 23:58:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339Nw01E011999; Sun, 9 Apr 2023 23:58:00 GMT (envelope-from git) Date: Sun, 9 Apr 2023 23:58:00 GMT Message-Id: <202304092358.339Nw01E011999@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kyle Evans Subject: git: df42ae6d99ac - stable/13 - pkill: use an ARG_MAX size buffer for argument matching List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@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/stable/13 X-Git-Reftype: branch X-Git-Commit: df42ae6d99acfeae81572077078baee07d653313 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=df42ae6d99acfeae81572077078baee07d653313 commit df42ae6d99acfeae81572077078baee07d653313 Author: Kyle Evans AuthorDate: 2023-03-20 19:19:35 +0000 Commit: Kyle Evans CommitDate: 2023-04-09 22:49:52 +0000 pkill: use an ARG_MAX size buffer for argument matching Right now pkill/pgrep cut off at _POSIX2_LINE_MAX (2048), but argument strings can be much larger (ARG_MAX is 256K/512K). Stop arbitrarily cutting the search off at 2K, rather than documenting the limit. Reviewed by: allanjude (earlier version), des Sponsored by: Klara, Inc. (cherry picked from commit 3610bffd2888b65389a46e8d075ce8e1fc83af4c) --- bin/pkill/pkill.c | 38 +++++++++++-- bin/pkill/tests/Makefile | 6 ++ bin/pkill/tests/pgrep-f_test.sh | 58 +++++++++++++++++++ bin/pkill/tests/spin_helper.c | 123 ++++++++++++++++++++++++++++++++++++++++ 4 files changed, 220 insertions(+), 5 deletions(-) diff --git a/bin/pkill/pkill.c b/bin/pkill/pkill.c index 0ffa5ababaac..6d8f29147a04 100644 --- a/bin/pkill/pkill.c +++ b/bin/pkill/pkill.c @@ -133,8 +133,9 @@ static int takepid(const char *, int); int main(int argc, char **argv) { - char buf[_POSIX2_LINE_MAX], *mstr, **pargv, *p, *q, *pidfile; + char *buf, *mstr, **pargv, *p, *q, *pidfile; const char *execf, *coref; + size_t bufsz; int ancestors, debug_opt, did_action; int i, ch, bestidx, rv, criteria, pidfromfile, pidfilelock; size_t jsz; @@ -177,6 +178,7 @@ main(int argc, char **argv) } } + buf = NULL; ancestors = 0; criteria = 0; debug_opt = 0; @@ -311,6 +313,31 @@ main(int argc, char **argv) mypid = getpid(); + /* + * If we're not matching args, we only need a buffer large enough to + * hold some relatively short error strings. Otherwise, we have to + * assume we'll need up to ARG_MAX bytes for arguments. + */ + bufsz = _POSIX2_LINE_MAX; + if (matchargs) { + long arg_max; + + arg_max = sysconf(_SC_ARG_MAX); + if (arg_max == -1) + arg_max = ARG_MAX; + + /* + * The absolute worst case scenario is ARG_MAX single-byte + * arguments which we'll then separate with spaces and NUL + * terminate. + */ + bufsz = (arg_max * 2) + 1; + } + + buf = malloc(bufsz); + if (buf == NULL) + err(STATUS_ERROR, "malloc"); + /* * Retrieve the list of running processes from the kernel. */ @@ -346,7 +373,7 @@ main(int argc, char **argv) */ for (; *argv != NULL; argv++) { if ((rv = regcomp(®, *argv, cflags)) != 0) { - regerror(rv, ®, buf, sizeof(buf)); + regerror(rv, ®, buf, bufsz); errx(STATUS_BADUSAGE, "Cannot compile regular expression `%s' (%s)", *argv, buf); @@ -363,9 +390,9 @@ main(int argc, char **argv) if (matchargs && (pargv = kvm_getargv(kd, kp, 0)) != NULL) { jsz = 0; - while (jsz < sizeof(buf) && *pargv != NULL) { + while (jsz < bufsz && *pargv != NULL) { jsz += snprintf(buf + jsz, - sizeof(buf) - jsz, + bufsz - jsz, pargv[1] != NULL ? "%s " : "%s", pargv[0]); pargv++; @@ -384,7 +411,7 @@ main(int argc, char **argv) } else selected[i] = 1; } else if (rv != REG_NOMATCH) { - regerror(rv, ®, buf, sizeof(buf)); + regerror(rv, ®, buf, bufsz); errx(STATUS_ERROR, "Regular expression evaluation error (%s)", buf); @@ -576,6 +603,7 @@ main(int argc, char **argv) fprintf(stderr, "No matching processes belonging to you were found\n"); + free(buf); exit(rv ? STATUS_MATCH : STATUS_NOMATCH); } diff --git a/bin/pkill/tests/Makefile b/bin/pkill/tests/Makefile index be467074651f..9bf448bb2460 100644 --- a/bin/pkill/tests/Makefile +++ b/bin/pkill/tests/Makefile @@ -2,6 +2,11 @@ .include +PACKAGE= tests + +PROGS+= spin_helper +BINDIR= ${TESTSDIR} + TAP_TESTS_SH= pgrep-F_test TAP_TESTS_SH+= pgrep-LF_test TAP_TESTS_SH+= pgrep-P_test @@ -10,6 +15,7 @@ TAP_TESTS_SH+= pgrep-_g_test TAP_TESTS_SH+= pgrep-_s_test TAP_TESTS_SH+= pgrep-g_test TAP_TESTS_SH+= pgrep-i_test +TAP_TESTS_SH+= pgrep-f_test TAP_TESTS_SH+= pgrep-j_test TEST_METADATA.pgrep-j_test+= required_user="root" TEST_METADATA.pgrep-j_test+= required_programs="jail jls" diff --git a/bin/pkill/tests/pgrep-f_test.sh b/bin/pkill/tests/pgrep-f_test.sh new file mode 100644 index 000000000000..85b1878b97a6 --- /dev/null +++ b/bin/pkill/tests/pgrep-f_test.sh @@ -0,0 +1,58 @@ +#!/bin/sh +# $FreeBSD$ + +: ${ARG_MAX:=524288} +base=$(dirname $(realpath "$0")) + +echo "1..2" + +waitfor() { + flagfile=$1 + + iter=0 + + while [ ! -f ${flagfile} ] && [ ${iter} -lt 50 ]; do + sleep 0.10 + iter=$((iter + 1)) + done + + if [ ! -f ${flagfile} ]; then + return 1 + fi +} + +sentinel="findme=test-$$" +sentinelsz=$(printf "${sentinel}" | wc -c | tr -d '[[:space:]]') +name="pgrep -f" +spin="${base}/spin_helper" +flagfile="pgrep_f_short.flag" + +${spin} --short ${flagfile} ${sentinel} & +chpid=$! +if ! waitfor ${flagfile}; then + echo "not ok - $name" +else + pid=$(pgrep -f ${sentinel}) + if [ "$pid" = "$chpid" ]; then + echo "ok - $name" + else + echo "not ok - $name" + fi +fi +kill $chpid + +name="pgrep -f long args" +flagfile="pgrep_f_long.flag" +${spin} --long ${flagfile} ${sentinel} & +chpid=$! +if ! waitfor ${flagfile}; then + echo "not ok - $name" +else + pid=$(pgrep -f ${sentinel}) + if [ "$pid" = "$chpid" ]; then + echo "ok - $name" + else + echo "not ok - $name" + fi +fi +kill $chpid diff --git a/bin/pkill/tests/spin_helper.c b/bin/pkill/tests/spin_helper.c new file mode 100644 index 000000000000..10541ad12516 --- /dev/null +++ b/bin/pkill/tests/spin_helper.c @@ -0,0 +1,123 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2023 Klara, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +static int +exec_shortargs(char *argv[]) +{ + char *flag_arg = argv[2]; + char *sentinel = argv[3]; + char * nargv[] = { argv[0], __DECONST(char *, "--spin"), flag_arg, + sentinel, NULL }; + char * const nenvp[] = { NULL }; + + execve(argv[0], nargv, nenvp); + err(1, "execve"); +} + +static int +exec_largeargs(char *argv[]) +{ + char *flag_arg = argv[2]; + char *sentinel = argv[3]; + /* + * Account for each argument and their NUL terminator, as well as an + * extra NUL terminator. + */ + size_t bufsz = ARG_MAX - + ((strlen(argv[0]) + 1) + sizeof("--spin") + (strlen(flag_arg) + 1) + + (strlen(sentinel) + 1) + 1); + char *s = NULL; + char * nargv[] = { argv[0], __DECONST(char *, "--spin"), flag_arg, NULL, + sentinel, NULL }; + char * const nenvp[] = { NULL }; + + /* + * Our heuristic may or may not be accurate, we'll keep trying with + * smaller argument sizes as needed until we stop getting E2BIG. + */ + do { + if (s == NULL) + s = malloc(bufsz + 1); + else + s = realloc(s, bufsz + 1); + if (s == NULL) + abort(); + memset(s, 'x', bufsz); + s[bufsz] = '\0'; + nargv[3] = s; + + execve(argv[0], nargv, nenvp); + bufsz--; + } while (errno == E2BIG); + err(1, "execve"); +} + +int +main(int argc, char *argv[]) +{ + + if (argc > 1 && strcmp(argv[1], "--spin") == 0) { + int fd; + + if (argc < 4) { + fprintf(stderr, "usage: %s --spin flagfile ...\n", argv[0]); + return (1); + } + + fd = open(argv[2], O_RDWR | O_CREAT, 0755); + if (fd < 0) + err(1, "%s", argv[2]); + close(fd); + + for (;;) { + sleep(1); + } + + return (1); + } + + if (argc != 4) { + fprintf(stderr, "usage: %s [--short | --long] flagfile sentinel\n", + argv[0]); + return (1); + } + + if (strcmp(argv[1], "--short") == 0) + exec_shortargs(argv); + else + exec_largeargs(argv); +} From nobody Sun Apr 9 23:58:01 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvpvZ3QX3z44STr; Sun, 9 Apr 2023 23:58: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvpvZ16Hsz4Fg6; Sun, 9 Apr 2023 23:58:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084682; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=m37QgbMBU0NL3uS2/TUFXormvDW2b0E+stOTFW+Gmos=; b=ub2sIdyKoM3wzNxaTnsEL+x5N6V59NmXLPiM9WsEcmgT6XIOrm9zB2ja9V3vx64hDZ1zkZ 1RebUZB5VLBENqKhrcVsrSL3mqXBAFrpbp8x1sL/tbeN45PUO2QhFyGX5rkKRRTrrrCFqj VEkPuSD3fSViP2HbnGBNAPtILCTKeqVp5K0gPFUWTJyN89Mklnjnrh+tIXtBX774cn4dKr ckUyzvY5C0QTncDzyYzOwLRZlzk2lhLLHtugfKVg2MnL/0FThBLC27NTTuLZDye34r3eJX cJO2FdMJB2PW0qINdEbHKEYqG1ggZNlKtT00G3p7iClvOPs7YxPnHakM8rvQsQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084682; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=m37QgbMBU0NL3uS2/TUFXormvDW2b0E+stOTFW+Gmos=; b=K/tp4qrR1Qxpu5mtmUxZjekasvsxwQ0ce/jRgcVj1dRoZBm2jpOPRgrLFz+3MtSEGKr3da ksc2XErLtSOotv368iuHgMKtk94Ilz2P6JOKGlMqJ1pCkAXAwGhpp4ZjI/jjM0AUyH57aN 5fvrFlHk0JI4K75CIcoXk1O9m0OgyQAvoLuMEWHsWbwkGAryX2NWKBZXU/yFGKvDd1hv2O RNDJuxbfRDhILe+EjOs1+vWlTq35u3VowbYwbJvImkL5nPt7zY7Cr4OMMkJ/P7p9u2q7Kd 7rudrtOsKQ6+vxIr1wV/0zqjmKWr3hKdvdo/hFmXpR7X64cYGi+Goj2SncYNUQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681084682; a=rsa-sha256; cv=none; b=g4eQr2QBJKJ9ki74SPF2yRqqQPgI7cpXPYdjlqvO+3+I139DVQ6HMWuGGsZRsuxctwCQ8X lU60U76Lp9ztvqTyZ5hB2cG7XIrrVENTKV17UTNsllwZMQcdX6mIlwqNggsJVJBzHve5iN p1LDkwwPawyaq97fitRqU8N980LlEWlkoxW/ebqKyK9yQPxA4oliyfzCGPqjc9xrKB7tAx 8IOdiwqFc+Sh3pYrV5RRz4t+84mxkIXEfYmNFHzURyRjPb1OD+m9hHL1ogUyJpd7EIAKp0 R0JCz9fTQ6UzgxxYlp+THOFsgfSSJ7rpmfUy17KA6ejUOCxnbf9vlQrcxbcOHA== 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 4PvpvY3PHLzSmp; Sun, 9 Apr 2023 23:58:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339Nw1jl012020; Sun, 9 Apr 2023 23:58:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339Nw1tG012019; Sun, 9 Apr 2023 23:58:01 GMT (envelope-from git) Date: Sun, 9 Apr 2023 23:58:01 GMT Message-Id: <202304092358.339Nw1tG012019@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kyle Evans Subject: git: 7ad1bebb0f1d - stable/13 - daemon: move signal setup into a function List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 7ad1bebb0f1d4b95d6bcdb59b90f1b234e6532b4 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=7ad1bebb0f1d4b95d6bcdb59b90f1b234e6532b4 commit 7ad1bebb0f1d4b95d6bcdb59b90f1b234e6532b4 Author: Ihor Antonov AuthorDate: 2023-03-21 04:40:04 +0000 Commit: Kyle Evans CommitDate: 2023-04-09 22:49:52 +0000 daemon: move signal setup into a function No functional change intended. Reviewed by: kevans (cherry picked from commit 9ee1faeebab594712ed302ea51949410c9744920) --- usr.sbin/daemon/daemon.c | 142 ++++++++++++++++++++++++++--------------------- 1 file changed, 79 insertions(+), 63 deletions(-) diff --git a/usr.sbin/daemon/daemon.c b/usr.sbin/daemon/daemon.c index 54e2aeea6874..983dbdc7ed8c 100644 --- a/usr.sbin/daemon/daemon.c +++ b/usr.sbin/daemon/daemon.c @@ -83,6 +83,7 @@ struct daemon_state { bool log_reopen; }; +static void setup_signals(struct daemon_state *); static void restrict_process(const char *); static void handle_term(int); static void handle_chld(int); @@ -168,10 +169,40 @@ main(int argc, char *argv[]) sigset_t mask_susp; daemon_state_init(&state); + + /* + * Signal handling logic: + * + * - SIGTERM is masked while there is no child. + * + * - SIGCHLD is masked while reading from the pipe. SIGTERM has to be + * caught, to avoid indefinite blocking on read(). + * + * - Both SIGCHLD and SIGTERM are masked before calling sigsuspend() + * to avoid racing. + * + * - After SIGTERM is recieved and propagated to the child there are + * several options on what to do next: + * - read until EOF + * - read until EOF but only for a while + * - bail immediately + * Currently the third option is used, because otherwise there is no + * guarantee that read() won't block indefinitely if the child refuses + * to depart. To handle the second option, a different approach + * would be needed (procctl()?). + * + * - Child's exit might be detected by receiveing EOF from the pipe. + * But the child might have closed its stdout and stderr, so deamon + * must wait for the SIGCHLD to ensure that the child is actually gone. + */ sigemptyset(&mask_susp); sigemptyset(&mask_read); sigemptyset(&mask_term); sigemptyset(&mask_orig); + sigaddset(&mask_susp, SIGTERM); + sigaddset(&mask_susp, SIGCHLD); + sigaddset(&mask_term, SIGTERM); + sigaddset(&mask_read, SIGCHLD); /* * Supervision mode is enabled if one of the following options are used: @@ -312,57 +343,20 @@ main(int argc, char *argv[]) pidfile_write(state.parent_pidfh); if (state.supervision_enabled) { - struct sigaction act_term = { 0 }; - struct sigaction act_chld = { 0 }; - struct sigaction act_hup = { 0 }; - - /* Avoid PID racing with SIGCHLD and SIGTERM. */ - act_term.sa_handler = handle_term; - sigemptyset(&act_term.sa_mask); - sigaddset(&act_term.sa_mask, SIGCHLD); - - act_chld.sa_handler = handle_chld; - sigemptyset(&act_chld.sa_mask); - sigaddset(&act_chld.sa_mask, SIGTERM); - - act_hup.sa_handler = handle_hup; - sigemptyset(&act_hup.sa_mask); - - /* Block these when avoiding racing before sigsuspend(). */ - sigaddset(&mask_susp, SIGTERM); - sigaddset(&mask_susp, SIGCHLD); - /* Block SIGTERM when we lack a valid child PID. */ - sigaddset(&mask_term, SIGTERM); - /* - * When reading, we wish to avoid SIGCHLD. SIGTERM - * has to be caught, otherwise we'll be stuck until - * the read() returns - if it returns. - */ - sigaddset(&mask_read, SIGCHLD); /* Block SIGTERM to avoid racing until we have forked. */ if (sigprocmask(SIG_BLOCK, &mask_term, &mask_orig)) { warn("sigprocmask"); daemon_terminate(&state); } - if (sigaction(SIGTERM, &act_term, NULL) == -1) { - warn("sigaction"); - daemon_terminate(&state); - } - if (sigaction(SIGCHLD, &act_chld, NULL) == -1) { - warn("sigaction"); - daemon_terminate(&state); - } + + setup_signals(&state); + /* * Try to protect against pageout kill. Ignore the * error, madvise(2) will fail only if a process does * not have superuser privileges. */ (void)madvise(NULL, 0, MADV_PROTECT); - if (state.log_reopen && state.output_fd >= 0 && - sigaction(SIGHUP, &act_hup, NULL) == -1) { - warn("sigaction"); - daemon_terminate(&state); - } restart: if (pipe(state.pipe_fd)) { err(1, "pipe"); @@ -419,9 +413,9 @@ restart: /* * else: pid > 0 * fork succeeded, this is the parent branch, this can only happen when - * supervision is enabled + * supervision is enabled. * - * Unblock SIGTERM after we know we have a valid child PID to signal. + * Unblock SIGTERM - now there is a valid child PID to signal to. */ if (sigprocmask(SIG_UNBLOCK, &mask_term, NULL)) { warn("sigprocmask"); @@ -431,28 +425,7 @@ restart: state.pipe_fd[1] = -1; setproctitle("%s[%d]", state.title, (int)pid); - /* - * As we have closed the write end of pipe for parent process, - * we might detect the child's exit by reading EOF. The child - * might have closed its stdout and stderr, so we must wait for - * the SIGCHLD to ensure that the process is actually gone. - */ for (;;) { - /* - * We block SIGCHLD when listening, but SIGTERM we accept - * so the read() won't block if we wish to depart. - * - * Upon receiving SIGTERM, we have several options after - * sending the SIGTERM to our child: - * - read until EOF - * - read until EOF but only for a while - * - bail immediately - * - * We go for the third, as otherwise we have no guarantee - * that we won't block indefinitely if the child refuses - * to depart. To handle the second option, a different - * approach would be needed (procctl()?) - */ if (child_gone && state.child_eof) { break; } @@ -516,6 +489,49 @@ daemon_sleep(time_t secs, long nsecs) } } +/* + * Setup SIGTERM, SIGCHLD and SIGHUP handlers. + * To avoid racing SIGCHLD with SIGTERM corresponding + * signal handlers mask the other signal. + */ +static void +setup_signals(struct daemon_state *state) +{ + struct sigaction act_term = { 0 }; + struct sigaction act_chld = { 0 }; + struct sigaction act_hup = { 0 }; + + /* Setup SIGTERM */ + act_term.sa_handler = handle_term; + sigemptyset(&act_term.sa_mask); + sigaddset(&act_term.sa_mask, SIGCHLD); + if (sigaction(SIGTERM, &act_term, NULL) == -1) { + warn("sigaction"); + daemon_terminate(state); + } + + /* Setup SIGCHLD */ + act_chld.sa_handler = handle_chld; + sigemptyset(&act_chld.sa_mask); + sigaddset(&act_chld.sa_mask, SIGTERM); + if (sigaction(SIGCHLD, &act_chld, NULL) == -1) { + warn("sigaction"); + daemon_terminate(state); + } + + /* Setup SIGHUP if configured */ + if (!state->log_reopen || state->output_fd < 0) { + return; + } + + act_hup.sa_handler = handle_hup; + sigemptyset(&act_hup.sa_mask); + if (sigaction(SIGHUP, &act_hup, NULL) == -1) { + warn("sigaction"); + daemon_terminate(state); + } +} + static void open_pid_files(struct daemon_state *state) { From nobody Sun Apr 9 23:58:02 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvpvb45gQz44Srh; Sun, 9 Apr 2023 23:58: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvpvb19Nxz4FWt; Sun, 9 Apr 2023 23:58:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084683; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=edslcl/WMp5i2IDkvyHd7EG1ZZhombQcCUtpvW/J2bU=; b=w+0aBaBD3fwzX3RrbcOKm3ja9c9E0wXZm/uesvlHwOE1vetRe0fhhffyOMkkY7GSQhhw6u gxP38eSWj4/eKQNrDD8L0rKLX4FTesG4fp8uQMIv6EzGi5bdhzOzBYQxoxBjoGOblD+XQ8 BHvBBQeAxPiP/nCYNe1pcB874zY9ACajUkR2OIaZGJh/0Ne7+e6RcTS+GxjEmew7UvoAG/ P/PknSXvU1KIlqh8Rsl/EPU5RB6ayNnBhxykoAj/S57LfX80YIOh5uIgcIVkRrHf32TXws lKnFzCGKjN+bgQeY+4wvxRATrNR5C9woQQRv3r2gXPPTrwxMnm12kgDZmdNFmg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084683; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=edslcl/WMp5i2IDkvyHd7EG1ZZhombQcCUtpvW/J2bU=; b=Lqg0KGkUIPEcjgaiEAqCJWyLM9n7HawmPmyPs8tX4Uga2b9Y/SPUPNHZZDwJthgrUGBLTB xgDa3kxtZq1Nk4/QEcvDA6ixNe/ERS0+5U0A59Fwn/hIW9ggtqK31YSY6xlqK/Y0GaSbTs IjtLhihV2QdsxFvIWvgsNQSRy0alEeinKCiMgzVQe5BVQhHHUUS09tk7OtynD/LwSSjejh 1Wp6zhKSes3DDfXWv/Kcq3VP6guSSnxCBbAgbzsppCY2K6EbmNW/GGeqI2uiKR1gZ1zyuh O5yYQWDKwufm1otu535pX0cW5rwl/j7gjbTQjrxX+bx5Fro84OLmN9zB32DCuA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681084683; a=rsa-sha256; cv=none; b=D4K0yDjbJYyxUSEdKJsTz0ijb9TXcrMGd2viwo3VyYx8OuwYlPN2kHOCDaoe7svBeBxHLq K/8dHzbYR1uugtiVxR/awn0n2oS00jD/czRjLna7S7jSuF3SPIxJtNnVMTwEa6TV3vlvq+ Llx/M8MMBoxbrKpEskz2u2VTrFVQlJJ6T0RmR2Gj3OxEGgCx9n2ZB0er/EWPZbueKG62Wb Z2Z1IUssMECtjoPAGZl3HutAG3HrnZUGNCcpZCoXCktDKDQviSl3s2nepqe2gH92l6S6cS 2lVwfE+kiG5b9X8ScdxeERrePJ7mJAYClQt9Avrpx9qdk6SoSQKEg1Gj/v7iAQ== 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 4PvpvZ4KmfzSch; Sun, 9 Apr 2023 23:58:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339Nw2ST012039; Sun, 9 Apr 2023 23:58:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339Nw2R6012038; Sun, 9 Apr 2023 23:58:02 GMT (envelope-from git) Date: Sun, 9 Apr 2023 23:58:02 GMT Message-Id: <202304092358.339Nw2R6012038@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kyle Evans Subject: git: 81f89a76e8fa - stable/13 - daemon: decouple init logic from main loop List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 81f89a76e8fa9a9fba8f8cfdf44addf8bae2d448 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=81f89a76e8fa9a9fba8f8cfdf44addf8bae2d448 commit 81f89a76e8fa9a9fba8f8cfdf44addf8bae2d448 Author: Ihor Antonov AuthorDate: 2023-03-23 02:37:12 +0000 Commit: Kyle Evans CommitDate: 2023-04-09 22:49:52 +0000 daemon: decouple init logic from main loop main() func contained both initialization and main loop logic. This made certain operations like restarting problematic and required dirty hacks in form of goto jumps. This commit moves the main loop logic into daemon_eventloop(), cleans up main, and makes restart logic clear: daemon_mainloop() is run in a loop with a restart condition checked at the end. Reviewed by: kevans (cherry picked from commit 4c41f4a0d67fc93cfb07ad5287f02d024d19ef5a) --- usr.sbin/daemon/daemon.c | 195 ++++++++++++++++++++++++++--------------------- 1 file changed, 109 insertions(+), 86 deletions(-) diff --git a/usr.sbin/daemon/daemon.c b/usr.sbin/daemon/daemon.c index 983dbdc7ed8c..4b218c2b53c5 100644 --- a/usr.sbin/daemon/daemon.c +++ b/usr.sbin/daemon/daemon.c @@ -60,7 +60,12 @@ __FBSDID("$FreeBSD$"); #define LBUF_SIZE 4096 struct daemon_state { + sigset_t mask_orig; + sigset_t mask_read; + sigset_t mask_term; + sigset_t mask_susp; int pipe_fd[2]; + char **argv; const char *child_pidfile; const char *parent_pidfile; const char *output_filename; @@ -96,6 +101,7 @@ static void open_pid_files(struct daemon_state *); static void do_output(const unsigned char *, size_t, struct daemon_state *); static void daemon_sleep(time_t, long); static void daemon_state_init(struct daemon_state *); +static void daemon_eventloop(struct daemon_state *); static void daemon_terminate(struct daemon_state *); static volatile sig_atomic_t terminate = 0; @@ -163,47 +169,9 @@ main(int argc, char *argv[]) char *p = NULL; int ch = 0; struct daemon_state state; - sigset_t mask_orig; - sigset_t mask_read; - sigset_t mask_term; - sigset_t mask_susp; daemon_state_init(&state); - /* - * Signal handling logic: - * - * - SIGTERM is masked while there is no child. - * - * - SIGCHLD is masked while reading from the pipe. SIGTERM has to be - * caught, to avoid indefinite blocking on read(). - * - * - Both SIGCHLD and SIGTERM are masked before calling sigsuspend() - * to avoid racing. - * - * - After SIGTERM is recieved and propagated to the child there are - * several options on what to do next: - * - read until EOF - * - read until EOF but only for a while - * - bail immediately - * Currently the third option is used, because otherwise there is no - * guarantee that read() won't block indefinitely if the child refuses - * to depart. To handle the second option, a different approach - * would be needed (procctl()?). - * - * - Child's exit might be detected by receiveing EOF from the pipe. - * But the child might have closed its stdout and stderr, so deamon - * must wait for the SIGCHLD to ensure that the child is actually gone. - */ - sigemptyset(&mask_susp); - sigemptyset(&mask_read); - sigemptyset(&mask_term); - sigemptyset(&mask_orig); - sigaddset(&mask_susp, SIGTERM); - sigaddset(&mask_susp, SIGCHLD); - sigaddset(&mask_term, SIGTERM); - sigaddset(&mask_read, SIGCHLD); - /* * Supervision mode is enabled if one of the following options are used: * --child-pidfile -p @@ -309,6 +277,7 @@ main(int argc, char *argv[]) } argc -= optind; argv += optind; + state.argv = argv; if (argc == 0) { usage(1); @@ -343,8 +312,8 @@ main(int argc, char *argv[]) pidfile_write(state.parent_pidfh); if (state.supervision_enabled) { - /* Block SIGTERM to avoid racing until we have forked. */ - if (sigprocmask(SIG_BLOCK, &mask_term, &mask_orig)) { + /* Block SIGTERM to avoid racing until the child is spawned. */ + if (sigprocmask(SIG_BLOCK, &state.mask_term, &state.mask_orig)) { warn("sigprocmask"); daemon_terminate(&state); } @@ -357,8 +326,50 @@ main(int argc, char *argv[]) * not have superuser privileges. */ (void)madvise(NULL, 0, MADV_PROTECT); -restart: - if (pipe(state.pipe_fd)) { + } + do { + daemon_eventloop(&state); + close(state.pipe_fd[0]); + state.pipe_fd[0] = -1; + } while (state.restart_enabled && !terminate); + + daemon_terminate(&state); +} + + +/* + * Main event loop: fork the child and watch for events. + * In legacy mode simply execve into the target process. + * + * Signal handling logic: + * + * - SIGTERM is masked while there is no child. + * + * - SIGCHLD is masked while reading from the pipe. SIGTERM has to be + * caught, to avoid indefinite blocking on read(). + * + * - Both SIGCHLD and SIGTERM are masked before calling sigsuspend() + * to avoid racing. + * + * - After SIGTERM is recieved and propagated to the child there are + * several options on what to do next: + * - read until EOF + * - read until EOF but only for a while + * - bail immediately + * Currently the third option is used, because otherwise there is no + * guarantee that read() won't block indefinitely if the child refuses + * to depart. To handle the second option, a different approach + * would be needed (procctl()?). + * + * - Child's exit might be detected by receiveing EOF from the pipe. + * But the child might have closed its stdout and stderr, so deamon + * must wait for the SIGCHLD to ensure that the child is actually gone. + */ +static void +daemon_eventloop(struct daemon_state *state) +{ + if (state->supervision_enabled) { + if (pipe(state->pipe_fd)) { err(1, "pipe"); } /* @@ -371,43 +382,43 @@ restart: /* fork failed, this can only happen when supervision is enabled */ if (pid == -1) { warn("fork"); - daemon_terminate(&state); + daemon_terminate(state); } /* fork succeeded, this is child's branch or supervision is disabled */ if (pid == 0) { - pidfile_write(state.child_pidfh); + pidfile_write(state->child_pidfh); - if (state.user != NULL) { - restrict_process(state.user); + if (state->user != NULL) { + restrict_process(state->user); } /* * In supervision mode, the child gets the original sigmask, * and dup'd pipes. */ - if (state.supervision_enabled) { - close(state.pipe_fd[0]); - if (sigprocmask(SIG_SETMASK, &mask_orig, NULL)) { + if (state->supervision_enabled) { + close(state->pipe_fd[0]); + if (sigprocmask(SIG_SETMASK, &state->mask_orig, NULL)) { err(1, "sigprogmask"); } - if (state.stdmask & STDERR_FILENO) { - if (dup2(state.pipe_fd[1], STDERR_FILENO) == -1) { + if (state->stdmask & STDERR_FILENO) { + if (dup2(state->pipe_fd[1], STDERR_FILENO) == -1) { err(1, "dup2"); } } - if (state.stdmask & STDOUT_FILENO) { - if (dup2(state.pipe_fd[1], STDOUT_FILENO) == -1) { + if (state->stdmask & STDOUT_FILENO) { + if (dup2(state->pipe_fd[1], STDOUT_FILENO) == -1) { err(1, "dup2"); } } - if (state.pipe_fd[1] != STDERR_FILENO && - state.pipe_fd[1] != STDOUT_FILENO) { - close(state.pipe_fd[1]); + if (state->pipe_fd[1] != STDERR_FILENO && + state->pipe_fd[1] != STDOUT_FILENO) { + close(state->pipe_fd[1]); } } - execvp(argv[0], argv); + execvp(state->argv[0], state->argv); /* execvp() failed - report error and exit this process */ - err(1, "%s", argv[0]); + err(1, "%s", state->argv[0]); } /* @@ -417,64 +428,65 @@ restart: * * Unblock SIGTERM - now there is a valid child PID to signal to. */ - if (sigprocmask(SIG_UNBLOCK, &mask_term, NULL)) { + if (sigprocmask(SIG_UNBLOCK, &state->mask_term, NULL)) { warn("sigprocmask"); - daemon_terminate(&state); + daemon_terminate(state); } - close(state.pipe_fd[1]); - state.pipe_fd[1] = -1; + close(state->pipe_fd[1]); + state->pipe_fd[1] = -1; - setproctitle("%s[%d]", state.title, (int)pid); + setproctitle("%s[%d]", state->title, (int)pid); for (;;) { - if (child_gone && state.child_eof) { + if (child_gone && state->child_eof) { break; } if (terminate) { - daemon_terminate(&state); + daemon_terminate(state); } - if (state.child_eof) { - if (sigprocmask(SIG_BLOCK, &mask_susp, NULL)) { + if (state->child_eof) { + if (sigprocmask(SIG_BLOCK, &state->mask_susp, NULL)) { warn("sigprocmask"); - daemon_terminate(&state); + daemon_terminate(state); } while (!terminate && !child_gone) { - sigsuspend(&mask_orig); + sigsuspend(&state->mask_orig); } - if (sigprocmask(SIG_UNBLOCK, &mask_susp, NULL)) { + if (sigprocmask(SIG_UNBLOCK, &state->mask_susp, NULL)) { warn("sigprocmask"); - daemon_terminate(&state); + daemon_terminate(state); } continue; } - if (sigprocmask(SIG_BLOCK, &mask_read, NULL)) { + if (sigprocmask(SIG_BLOCK, &state->mask_read, NULL)) { warn("sigprocmask"); - daemon_terminate(&state); + daemon_terminate(state); } - state.child_eof = !listen_child(state.pipe_fd[0], &state); + state->child_eof = !listen_child(state->pipe_fd[0], state); - if (sigprocmask(SIG_UNBLOCK, &mask_read, NULL)) { + if (sigprocmask(SIG_UNBLOCK, &state->mask_read, NULL)) { warn("sigprocmask"); - daemon_terminate(&state); + daemon_terminate(state); } } - if (state.restart_enabled && !terminate) { - daemon_sleep(state.restart_delay, 0); - } - if (sigprocmask(SIG_BLOCK, &mask_term, NULL)) { + + /* + * At the end of the loop the the child is already gone. + * Block SIGTERM to avoid racing until the child is spawned. + */ + if (sigprocmask(SIG_BLOCK, &state->mask_term, NULL)) { warn("sigprocmask"); - daemon_terminate(&state); + daemon_terminate(state); } - if (state.restart_enabled && !terminate) { - close(state.pipe_fd[0]); - state.pipe_fd[0] = -1; - goto restart; + + /* sleep before exiting mainloop if restart is enabled */ + if (state->restart_enabled && !terminate) { + daemon_sleep(state->restart_delay, 0); } - daemon_terminate(&state); } static void @@ -746,6 +758,7 @@ daemon_state_init(struct daemon_state *state) { *state = (struct daemon_state) { .pipe_fd = { -1, -1 }, + .argv = NULL, .parent_pidfh = NULL, .child_pidfh = NULL, .child_pidfile = NULL, @@ -767,6 +780,16 @@ daemon_state_init(struct daemon_state *state) .output_fd = -1, .output_filename = NULL, }; + + sigemptyset(&state->mask_susp); + sigemptyset(&state->mask_read); + sigemptyset(&state->mask_term); + sigemptyset(&state->mask_orig); + sigaddset(&state->mask_susp, SIGTERM); + sigaddset(&state->mask_susp, SIGCHLD); + sigaddset(&state->mask_term, SIGTERM); + sigaddset(&state->mask_read, SIGCHLD); + } static _Noreturn void From nobody Sun Apr 9 23:58:03 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvpvc1pGJz44SdQ; Sun, 9 Apr 2023 23:58: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvpvb75mzz4FjW; Sun, 9 Apr 2023 23:58:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084684; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xASYTqvLNhH745vffauBh7uZq3TszJtPSVgSKpNCU4w=; b=MCSCTaGqq8qQNsM1JNYo/R+zQ/Jsku97cx5S+VaDyv50j2V2cMKnPBXHG6tF3QgfNIHaaQ Ka/qg8G8KfIyeNQ2UvEu6TPPCIAz9k/sg8Nj/Lw9wCPrqUvV4rib6icHjl7Rujxs5FefUl aDqtk0sr4fuhrGWqvbwHqAzRG1eicd20StlKA6yjcMwt2tIK6QNcPt2bdy4kw+LomOYori pv1nZV8EEil1dvYnLWmoT7FZyI2mXNjLG9JC6k6lxYnvwbyDobEmrYx8ScNT15c+DYBSDR sSbjhBJnaBUya68JlBg/UF8bR0zL/0pPlHp8NgnsjG/oBY1uRspLKNj9i6+aNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681084684; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xASYTqvLNhH745vffauBh7uZq3TszJtPSVgSKpNCU4w=; b=AXqzO72/dIP2AX69Mz+xhSoj/8abas4CZleqnwVx7KnI7x2fSfOVatCYVAW3JxLCvYZuAA HGkVs5N/0cMrZ2Y/aHMNFlDi88oTouqasROgD+YlxNVYVfT/+2nAuigeWfIjX+fJPmx6iF sbfwHJ9EtID9HjN3r/zNTjujGv13xJELNazp5RTS20w0S/8z5H/aTWAqZoWRlDSL+r1NZx /WBHI8SXurBhr/aygzBK9/PzZGQA2HdADHD5EpvWIO5jeyiLLdgs1m7xW9LrZqqeA3dya0 3u3Ncm0eNMru4lIAyxf5ogFAFvaM9rj37M0dGy3NuFu5yRlb2jW2M1aqteSOdQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681084684; a=rsa-sha256; cv=none; b=FABNL9DsQ0goZVAh7b6GlAvAXK/RuKcM5Ln7SHh4QDLRxMQzG5IUNRKBYCa0PifDMRsJZ4 AJKuNuckFXqMNkrzQWH4kMKzVVADuhD/2488/aCqnZqdamrRaT5Gyl/UTpRzmZysqElSCV DUBrKOnmC6ixpPhe08dre8z8Ia9HPEnrNMGGIgtve+HOHymdZ/PKsFY2mpuTCx1m2OPxTg Da/BGyJ55itzdQ7NF8BGCjpdNZ+Eg5fDC6eACfbZE+kN9vlM/exHuE2n5/JkVEE2Oz/dgB Hj37P51Lc8ZAbpXtOy4mXr/Kh8nu32+Yu5+fjfyV9FluMMLvabu9KTpUYh13Rg== 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 4Pvpvb4zkrzSmq; Sun, 9 Apr 2023 23:58:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 339Nw3mt012064; Sun, 9 Apr 2023 23:58:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 339Nw3mJ012063; Sun, 9 Apr 2023 23:58:03 GMT (envelope-from git) Date: Sun, 9 Apr 2023 23:58:03 GMT Message-Id: <202304092358.339Nw3mJ012063@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kyle Evans Subject: git: 535fc5f75e20 - stable/13 - daemon: reformat longopts List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@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/stable/13 X-Git-Reftype: branch X-Git-Commit: 535fc5f75e20e745823cc694a4ee7deb9913553f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=535fc5f75e20e745823cc694a4ee7deb9913553f commit 535fc5f75e20e745823cc694a4ee7deb9913553f Author: Kyle Evans AuthorDate: 2023-03-23 02:39:10 +0000 Commit: Kyle Evans CommitDate: 2023-04-09 22:49:52 +0000 daemon: reformat longopts Use a single tab instead of eight spaces, these aren't line continuations. (cherry picked from commit b84aaf143c5097e6b2481b9afec66c90deec627f) --- usr.sbin/daemon/daemon.c | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/usr.sbin/daemon/daemon.c b/usr.sbin/daemon/daemon.c index 4b218c2b53c5..790b0f6fcd0f 100644 --- a/usr.sbin/daemon/daemon.c +++ b/usr.sbin/daemon/daemon.c @@ -112,23 +112,23 @@ static volatile sig_atomic_t do_log_reopen = 0; static const char shortopts[] = "+cfHSp:P:ru:o:s:l:t:m:R:T:h"; static const struct option longopts[] = { - { "change-dir", no_argument, NULL, 'c' }, - { "close-fds", no_argument, NULL, 'f' }, - { "sighup", no_argument, NULL, 'H' }, - { "syslog", no_argument, NULL, 'S' }, - { "output-file", required_argument, NULL, 'o' }, - { "output-mask", required_argument, NULL, 'm' }, - { "child-pidfile", required_argument, NULL, 'p' }, - { "supervisor-pidfile", required_argument, NULL, 'P' }, - { "restart", no_argument, NULL, 'r' }, - { "restart-delay", required_argument, NULL, 'R' }, - { "title", required_argument, NULL, 't' }, - { "user", required_argument, NULL, 'u' }, - { "syslog-priority", required_argument, NULL, 's' }, - { "syslog-facility", required_argument, NULL, 'l' }, - { "syslog-tag", required_argument, NULL, 'T' }, - { "help", no_argument, NULL, 'h' }, - { NULL, 0, NULL, 0 } + { "change-dir", no_argument, NULL, 'c' }, + { "close-fds", no_argument, NULL, 'f' }, + { "sighup", no_argument, NULL, 'H' }, + { "syslog", no_argument, NULL, 'S' }, + { "output-file", required_argument, NULL, 'o' }, + { "output-mask", required_argument, NULL, 'm' }, + { "child-pidfile", required_argument, NULL, 'p' }, + { "supervisor-pidfile", required_argument, NULL, 'P' }, + { "restart", no_argument, NULL, 'r' }, + { "restart-delay", required_argument, NULL, 'R' }, + { "title", required_argument, NULL, 't' }, + { "user", required_argument, NULL, 'u' }, + { "syslog-priority", required_argument, NULL, 's' }, + { "syslog-facility", required_argument, NULL, 'l' }, + { "syslog-tag", required_argument, NULL, 'T' }, + { "help", no_argument, NULL, 'h' }, + { NULL, 0, NULL, 0 } }; static _Noreturn void From nobody Mon Apr 10 00:14:35 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvqGk0VBMz44TfJ; Mon, 10 Apr 2023 00:14:38 +0000 (UTC) (envelope-from jah@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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvqGj6JhVz3DVs; Mon, 10 Apr 2023 00:14:37 +0000 (UTC) (envelope-from jah@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681085677; 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=R3OeZjJ3eR3+nAa57Cv2vLnuXNBPHJJCSgXJGijkUYU=; b=iUuLEL8DsOrxH9Keq/uAXfGvURUK3wJvC/MsCYHtpgC9D4lR8gljKvu1MTtBnJj3nVTEX7 b7PxRpsKzecN4NY+5rPrPSOvLeUOzzBeztwtcNza9F3NZFWmUZYtCH28/m6+l6Lcu6MKo3 q9TA+UXu+suvnuxIAKQaCwTcDzY0iUE9LWgJOntaIEZm0nX9lnUhD+W6S4C50FXTOWq96v +fi++2mcdGOMX+34IVBWTmGgAuaPINXvGtBrn7PJUZwcWSNZ0TR+dO4UqgQgLI7ndIxVZv MVczV/y6PvVfK+i7kZYMylHtMieR7s1jwCwQ48ozuGis64dQddHj+o/yKWXxDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681085677; 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=R3OeZjJ3eR3+nAa57Cv2vLnuXNBPHJJCSgXJGijkUYU=; b=r+bYo3fW3tXQVykpxP6rM3iISqFCXKSVDbu2DLUDhsMDQ1tTVCDXAKLv49HD1iqNEfw03U 6gLK7hmobX+MISj5Wa01MvzjCbo8JqyhKZz3vmED5iUtw/NnC70Y6ehgfi2u+q632PNctd iEyL/JGiMGrvkCHylxBPjXU1vke0Jj3TfVpG+CWoZJ1ntGTjGh/ain98k9deJDgwKymMy/ uyD/UwFsMmHt6Q+mFT0dvGYBZR9x/eFtkjYwSLd3HlgrRhuXICR61Z39NezJE/9HxD3iyJ LCNjUHtlRussGt1vcQfR6lv0YQR0zEFlt4WmTSStlxkM1YkCJXIZN/AW4AJn7g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681085677; a=rsa-sha256; cv=none; b=OgX41aR9//U8cpW3oDj452ovUFmDIDRKek6PR50QG9KMSx0gsJVKpOY/qSHewaKDthHL0r trG8xAbKJxfNoGVau6WXMlLs3WFyHC913LiVKaAkFoCpADdRtFkPp+0DlOKHIZJkbI35UX 4cjZ459LNBZspQSzy+DXqYXTbLa5csPxmX9gZk6qYgIfkGjD85v5QQGT8TA+Gd++ause6P YxHN0Hfd+eS4sqPK8JFoy3bwsdi2giWnT6GkMUCKq8NdH4FXVeqXZPPYRM/7IwiKYfqU/+ JLaSZg8WHVGT0D8kLcGNY4f5RMU3IzNMRayHawIgTbyY0sJQAn5ERsK6TPKyEw== Received: from corona (047-232-115-243.res.spectrum.com [47.232.115.243]) (using TLSv1.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: jah) by smtp.freebsd.org (Postfix) with ESMTPSA id 4PvqGj36cRzHTb; Mon, 10 Apr 2023 00:14:37 +0000 (UTC) (envelope-from jah@freebsd.org) Date: Sun, 9 Apr 2023 19:14:35 -0500 From: "Jason A. Harmening" To: Konstantin Belousov Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 7b6fe2428a97 - main - DEBUG_VFS_LOCKS: use witness if available Message-ID: References: <202304092134.339LYYY5081080@gitrepo.freebsd.org> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202304092134.339LYYY5081080@gitrepo.freebsd.org> X-ThisMailContainsUnwantedMimeParts: N On Sun, Apr 09, 2023 at 09:34:34PM +0000, Konstantin Belousov wrote: > The branch main has been updated by kib: > > URL: https://cgit.FreeBSD.org/src/commit/?id=7b6fe2428a97921e8df882d0a24b87094c37b468 > > commit 7b6fe2428a97921e8df882d0a24b87094c37b468 > Author: Konstantin Belousov > AuthorDate: 2023-04-08 06:15:00 +0000 > Commit: Konstantin Belousov > CommitDate: 2023-04-09 21:34:12 +0000 > > DEBUG_VFS_LOCKS: use witness if available > > The assert_vop_locked messages are ignored, and file/line information > is not too useful. Fixing this without changing both witness and VFS > asserts KPIs is not possible. What was the motivation for this change? At first glance it seems regressive. I've at least found the assert messages, as well as the vnode state dumping done by vfs_badlock(), to be really useful for quick debugging of locking issues. This is especially true when optimization makes the backtrace and frame info less than useful; see commit 5a4a83fd0e67a0d7787d2f3e09ef0e5552a1ffb6 for a recent example. > > Reviewed by: markj (previous version) > Tested by: pho > Sponsored by: The FreeBSD Foundation > MFC after: 1 week > Differential revision: https://reviews.freebsd.org/D39464 > --- > sys/kern/vfs_lookup.c | 1 + > sys/kern/vfs_subr.c | 16 +++++++++++++--- > sys/sys/vnode.h | 1 + > 3 files changed, 15 insertions(+), 3 deletions(-) > > diff --git a/sys/kern/vfs_lookup.c b/sys/kern/vfs_lookup.c > index e7f1deea0fae..172aa4b4f576 100644 > --- a/sys/kern/vfs_lookup.c > +++ b/sys/kern/vfs_lookup.c > @@ -162,6 +162,7 @@ nameiinit(void *dummy __unused) > vfs_vector_op_register(&crossmp_vnodeops); > getnewvnode("crossmp", NULL, &crossmp_vnodeops, &vp_crossmp); > vp_crossmp->v_state = VSTATE_CONSTRUCTED; > + vp_crossmp->v_irflag |= VIRF_CROSSMP; > } > SYSINIT(vfs, SI_SUB_VFS, SI_ORDER_SECOND, nameiinit, NULL); > > diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c > index c2b1f71502cd..7e7315f827a1 100644 > --- a/sys/kern/vfs_subr.c > +++ b/sys/kern/vfs_subr.c > @@ -5452,14 +5452,18 @@ assert_vi_unlocked(struct vnode *vp, const char *str) > void > assert_vop_locked(struct vnode *vp, const char *str) > { > - int locked; > - > if (KERNEL_PANICKED() || vp == NULL) > return; > > - locked = VOP_ISLOCKED(vp); > +#ifdef WITNESS > + if ((vp->v_irflag & VIRF_CROSSMP) == 0) > + witness_assert(&vp->v_vnlock->lock_object, LA_LOCKED, > + __FILE__, __LINE__); > +#else > + int locked = VOP_ISLOCKED(vp); > if (locked == 0 || locked == LK_EXCLOTHER) > vfs_badlock("is not locked but should be", str, vp); > +#endif > } > > void > @@ -5468,8 +5472,14 @@ assert_vop_unlocked(struct vnode *vp, const char *str) > if (KERNEL_PANICKED() || vp == NULL) > return; > > +#ifdef WITNESS > + if ((vp->v_irflag & VIRF_CROSSMP) == 0) > + witness_assert(&vp->v_vnlock->lock_object, LA_UNLOCKED, > + __FILE__, __LINE__); > +#else > if (VOP_ISLOCKED(vp) == LK_EXCLUSIVE) > vfs_badlock("is locked but should not be", str, vp); > +#endif > } > > void > diff --git a/sys/sys/vnode.h b/sys/sys/vnode.h > index 5e3f81de0236..fa889826867e 100644 > --- a/sys/sys/vnode.h > +++ b/sys/sys/vnode.h > @@ -228,6 +228,7 @@ _Static_assert(sizeof(struct vnode) <= 448, "vnode size crosses 448 bytes"); > never cleared once set */ > #define VIRF_MOUNTPOINT 0x0004 /* This vnode is mounted on */ > #define VIRF_TEXT_REF 0x0008 /* Executable mappings ref the vnode */ > +#define VIRF_CROSSMP 0x0010 /* Cross-mp vnode, no locking */ > > #define VI_UNUSED0 0x0001 /* unused */ > #define VI_MOUNT 0x0002 /* Mount in progress */ From nobody Mon Apr 10 01:35:21 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvs3w3jJMz44Z03; Mon, 10 Apr 2023 01:35:24 +0000 (UTC) (envelope-from vishwin@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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvs3w2mbgz4YSd; Mon, 10 Apr 2023 01:35:24 +0000 (UTC) (envelope-from vishwin@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681090524; 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=wmXjrWzp1g2imJZ0DdKDLy2hIwJkm3b1KqAVyTpzgUw=; b=FZTualsoSsRJyyirOPoZ0Cdk3UPX2qPaLl/nivEOCzPLVuEdCB7EugLET0IRy2lexMSdka zI93DNoT/dRT0Dygut55qqeH6+mzY/GyfO6/PkLGUwIXul+xJDlZ7i9pboSVz9+fTPwd0l GX5RXVhBhh3pMFv7baftv6ug11pW8wLCHfP0aKdz6YcaktF1pxnLgle6X0K2JOKBJVvtiJ A+2rN5KMi4CW+SroP4UGb0B2yGvoZ+wyDuiPvrt04fZRby9/VUkRFyx+jhOR+H3MnJ0qzN 8HbCYpmsmH/h+g96gmm0XpQPqrFNIX8bv9igdxddWS92i/Cte3ZLb17peAc3xQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681090524; 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=wmXjrWzp1g2imJZ0DdKDLy2hIwJkm3b1KqAVyTpzgUw=; b=EFXedsdJ5gZB+4/2gX7af9jIayTW8CmCF5JDQTJdPAi0E+7DoJ/t5cg1KXnZEp4HWz73O0 keD4KwawT8zZWy78lwNEFHNs/2IVrbBzuhwOIqUPfuji0do5wRaqPe8rHdH0btgU/u6Lt1 yJ31VfLIsYc5kHiorZ9YNfD7tUyZnxbSEYZfZsKwTks3sEGKtgAWiG8YPK8C0kBIi4ecJ3 R1ayDr1WoNxCUY8cchptXESNJ7jg+yEH3ZFNkBNBbxPO5fxLrBTY0R2YRpywD+6L9EGUZJ j0PCTzuqNiBlt8zcCEMo924VL5JOXWUyCtH02FfsCE9ZT6r2H9JdIoPVwr4IrA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681090524; a=rsa-sha256; cv=none; b=sCecNe/cIAO3JmN9Tvlstyp5qbn8SWSaDwXabWHhMcswS6FRBGtlszgnDaeP1zL/ZtLW7B 8ocO6lqVu9FOfTmFBH9E4H9OTcETPrYDJ2w6YoR8tCalUrFlIQFVTs/16DIjqJlEFyN1Nt DHHzNkVMdwAjb1g7EBVgHASttC06ARWDkEpASydW7AHj9YdyapSY8ztVXF6Jdy8AR67JnX T4dDY6F6mWiOxqyTDQuY23feVhQ34oTdLjL+wzytOg370CLq3qQt5Dhejpu6x9immBsboz P3yk3IflrEm+QNbgcaxqFWOGtyFQEjevX5FN/P1z6ZEWLlPZXKvudXLjA1xslg== Received: from [IPV6:2601:98a:602:da0:1fa8:be6c:38d1:bd] (unknown [IPv6:2601:98a:602:da0:1fa8:be6c:38d1:bd]) (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: vishwin/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4Pvs3v72rFzJpM; Mon, 10 Apr 2023 01:35:23 +0000 (UTC) (envelope-from vishwin@freebsd.org) Message-ID: Date: Sun, 9 Apr 2023 21:35:21 -0400 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 To: Cy Schubert Cc: Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> <20230409154042.0685a273@cschubert.com> Content-Language: en-GB From: Charlie Li Organization: FreeBSD Project In-Reply-To: <20230409154042.0685a273@cschubert.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------GvO1BrhbWWT9GhiWvcGYymNQ" X-ThisMailContainsUnwantedMimeParts: N This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------GvO1BrhbWWT9GhiWvcGYymNQ Content-Type: multipart/mixed; boundary="------------kLC6OEShzSzOizBlOM13t45z"; protected-headers="v1" From: Charlie Li To: Cy Schubert Cc: Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Message-ID: Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> <20230409154042.0685a273@cschubert.com> In-Reply-To: <20230409154042.0685a273@cschubert.com> --------------kLC6OEShzSzOizBlOM13t45z Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 Q3kgU2NodWJlcnQgd3JvdGU6DQo+IE9uIFN1biwgOSBBcHIgMjAyMyAxMjo0OToyMyAtMDQw MA0KPiBDaGFybGllIExpIHdyb3RlOg0KPiANCj4+IEN5IFNjaHViZXJ0IHdyb3RlOg0KPj4+ IEkndmUgbm90aWNlZCByYW5kb20gYXJ0aWZhY3RzIGluIG15IGVtYWlscyBzaW5jZSB0aGUg bmV3IFpGUy4gSSdtIG5vdCBzdXJlDQo+Pj4gaWYgaXQncyByZWxhdGVkIHRvIGJsb2NrX2Ns b25pbmcgb3Igc29tZXRoaW5nIGVsc2UuIFRoaXMgY291bGQgbWVhbiBkZWVwZXINCj4+PiB0 cm91YmxlLg0KPj4+ICAgIA0KPj4gSSd2ZSBhbHNvIHN0YXJ0ZWQgbm90aWNpbmcgcmFuZG9t IGFydGVmYWN0cyBhbmQgbWFsZm9ybWVkIGZpbGVzIHdoaWxzdA0KPj4gYnVpbGRpbmcgcGFj a2FnZXMgd2l0aCBwb3VkcmllcmUsIGNhdXNpbmcgYWxsIHNvcnRzIG9mICJleGVjIGZvcm1h dA0KPj4gZXJyb3IicywgbWlzc2luZyAuc28gZmlsZXMgZHVlIHRvIGNvcnJ1cHRpb24sIGRh dGEgZmlsZSBjb3JydXB0aW9uDQo+PiBjYXVzaW5nIHVuaW50ZW5kZWQgZmFpbHVyZSBtb2Rl cywgZXRjLiBBbGwgd2l0aG91dCBibG9ja19jbG9uaW5nOw0KPj4gZW5hYmxpbmcgc3VjaCBj YXVzZXMgYSBwYW5pYyBvZiBpdHMgb3duIHdoZW4gc3RhcnRpbmcgbXVsdGlwbGUgYnVpbGRl cg0KPj4gamFpbHMgYXQgb25jZS4NCj4+DQo+IA0KPiBJJ3ZlIG5vdGljZWQgdGhhdCB0aGUg cHJvYmxlbSB3YXMgcmVzb2x2ZWQgYWZ0ZXIgdGhlIGxhdGVzdCBtamcgcGF0Y2gNCj4gKGFu ZCBwcmlvciB0byB0aGF0IHRoZSBybWFja2xlbSBwYXRjaCkgd2FzIGFwcGxpZWQuIGJsb2Nr X2Nsb25pbmcgaXMNCj4gZGlzYWJsZWQgaW4gYWxsIG15IHpwb29scy4NCj4gDQo+IEkgYXNz dW1lIHlvdSB5b3UgYXJlIHNheWluZyB0aGF0IGVuYWJsaW5nIGJsb2NrX2Nsb25pbmcgYWxz byBjYXVzZXMNCj4gcmFuZG9tIGNvcnJ1cHRpb24/DQo+IA0KVGhlIGZpbGUgY29ycnVwdGlv biB3YXMgcHJpb3IgdG8gZW5hYmxpbmcgYmxvY2tfY2xvbmluZyBidXQgYWZ0ZXIgdGhpcyAN CmltcG9ydC4NCg0KLS0gDQpDaGFybGllIExpDQrigKZub3BlLCBzdGlsbCBkb24ndCBoYXZl IGFuIGV4aXQgbGluZS4NCg0K --------------kLC6OEShzSzOizBlOM13t45z-- --------------GvO1BrhbWWT9GhiWvcGYymNQ Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsF5BAABCAAjFiEEJXd5utNNhpeHcBMx/reFK+KbPocFAmQzZ9kFAwAAAAAACgkQ/reFK+KbPodQ Yg/9H+9NMQ9OYSU0uA4YsjF0cFxrnYwLpqLBNatYRuYdzWL0qReENJ4iarQxow9QIiZYczx56Nq0 3Ak93RV8fdY87I58ihmIwH7rs8kbuFF0S+bjk/RbBgNkTqJqJTE8Btzlce1GWd1KSW+0ZMPonFef BMVMzbo6VfZjucuh7Hc4HSd+K3Vj2heGLrCFGVU/Je/HXebaIM4ewMR3nz2ihxgAzq8ot3R5B5Iw Rlq6pXi53Tn0Rs02VDfnlIbXJSsZ5EXTMTDexJ1aETASNgr3Nfug5vv93tmXXSQUT8EAwPwtOg96 rF5ozijzcLd3XMtL3WiW2G0MHRxP7HolP85k9Yy456oObVXIdZF8YljBDxZ51dfvaHueevIKvy8F t+Ae8xqZ/Dv4tH6WtpivIBamk2xUNUKZvNw/4bi3fwvppuO0tEAd3DjyWl/602zFNyi2U69QBrmr 15ZThBKem4STL34+6h0MavVz+59Z2ouwdghgQ+1gqoncFkJ8BTxk5lRqqtdFl4KlQFUhHD2xGje4 7iqZdQ4ldLWs3YlchDcMHmWeXfC0IiEsLpnzE8+dQZawC63cGakI699wrg9qFIpakCwZqTBDIhIB Z/9figfpwehPqmNeBy/W5Pu0L1CTXTk7tputCu1STnjJM6dvLNm8tPkJMIATUeHMskK9bb1GF7Lc 1sY= =yCkd -----END PGP SIGNATURE----- --------------GvO1BrhbWWT9GhiWvcGYymNQ-- From nobody Mon Apr 10 02:27:36 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvtVh2DjJz44dQy; Mon, 10 Apr 2023 02:40:12 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from omta002.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 4PvtVh04QNz4F2F; Mon, 10 Apr 2023 02:40:11 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Authentication-Results: mx1.freebsd.org; none Received: from shw-obgw-4004a.ext.cloudfilter.net ([10.228.9.227]) by cmsmtp with ESMTP id lUbNp3UMXjvm1lhRzpzFGz; Mon, 10 Apr 2023 02:40:11 +0000 Received: from spqr.komquats.com ([70.66.148.124]) by cmsmtp with ESMTPA id lhRxpBubi3fOSlhRypWeve; Mon, 10 Apr 2023 02:40:11 +0000 X-Authority-Analysis: v=2.4 cv=J8G5USrS c=1 sm=1 tr=0 ts=6433770b a=Cwc3rblV8FOMdVN/wOAqyQ==:117 a=Cwc3rblV8FOMdVN/wOAqyQ==:17 a=IkcTkHD0fZMA:10 a=dKHAf1wccvYA:10 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=EkcXrb_YAAAA:8 a=nfzC2KkzRXIm6QvMOUYA:9 a=QEXdDO2ut3YA:10 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 a=LK5xJRSDVpKd5WXXoEvA:22 Received: from [127.0.0.1] (unknown [209.52.88.50]) by spqr.komquats.com (Postfix) with ESMTPSA id 8BAF74688; Sun, 9 Apr 2023 19:40:08 -0700 (PDT) Date: Sun, 09 Apr 2023 19:27:36 -0700 From: Cy Schubert To: Charlie Li CC: Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 In-Reply-To: References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> <20230409154042.0685a273@cschubert.com> Message-ID: List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-CMAE-Envelope: MS4xfJvBJutMn/ZBI184GXAgZmJalrBq33SEqIEQBSKl5WdFN98LrVllyz9nNxF6+LK4ppY+h4Wv6qulw7vqN5+8aT0aX3BeyyltGp8x9ZeHdzgK2OCG0C3Y caKLawwkw/eE1u9GbUMiWXzQzQ9I4HzoubA2WseWhYC9IpM4MZSHCI2fk4ffL4UxE/1HDvib9gn8mV9cDjynqZHmQRpY2eLJ1CGtTVhsjSwaF6jerlYjk+Wg RuWQVbf1Sp7qr797CPWhmUsdJeidE2B29KoFOJbzzZm8RwntYD5uxYB1TZKxnNS+T8s25i8Nb5EYJKpe6OLO8PH3JdgSjrMKHz4urjsc1Jf+NkwPQmmetOrE WCk+AfvFsRNEVnHL1NTBBRZsmnTGTjVBiGg5xsTUYbhlMD7pxyQ= X-Rspamd-Queue-Id: 4PvtVh04QNz4F2F X-Spamd-Bar: ---- 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]; TAGGED_RCPT(0.00)[] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N On April 9, 2023 6:35:21 PM PDT, Charlie Li wrote: >Cy Schubert wrote: >> On Sun, 9 Apr 2023 12:49:23 -0400 >> Charlie Li wrote: >>=20 >>> Cy Schubert wrote: >>>> I've noticed random artifacts in my emails since the new ZFS=2E I'm n= ot sure >>>> if it's related to block_cloning or something else=2E This could mean= deeper >>>> trouble=2E >>>> =20 >>> I've also started noticing random artefacts and malformed files whilst >>> building packages with poudriere, causing all sorts of "exec format >>> error"s, missing =2Eso files due to corruption, data file corruption >>> causing unintended failure modes, etc=2E All without block_cloning; >>> enabling such causes a panic of its own when starting multiple builder >>> jails at once=2E >>>=20 >>=20 >> I've noticed that the problem was resolved after the latest mjg patch >> (and prior to that the rmacklem patch) was applied=2E block_cloning is >> disabled in all my zpools=2E >>=20 >> I assume you you are saying that enabling block_cloning also causes >> random corruption? >>=20 >The file corruption was prior to enabling block_cloning but after this im= port=2E > This regression was fixed by mjg's commit=2E I'm not sure which (I'm pres= ently AFK)=2E --=20 Cheers, Cy Schubert FreeBSD UNIX: Web: https://FreeBSD=2Eorg NTP: Web: https://nwtime=2Eorg e^(i*pi)+1=3D0 Pardon the typos=2E Small keyboard in use=2E From nobody Mon Apr 10 03:13:20 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvvDx4vY4z44g8X; Mon, 10 Apr 2023 03:13:21 +0000 (UTC) (envelope-from vishwin@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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvvDx45vQz45bT; Mon, 10 Apr 2023 03:13:21 +0000 (UTC) (envelope-from vishwin@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681096401; 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=BPywK4lulOVnlUbol5XJ5oIlxhr/xoiplqcZavVBJ+k=; b=x23ugzJAKo5DegKTsCPr1JGHD8syY4Fdnh/Q0bHwQ7wzeSUGjaoVdyo6c1JpQsxzAVHHq/ BX7BeyGk8GOfZYPtydKrGdMsGA9jtJxuy182IunRE/x028hrqDc5n7DcuhlOo2yhU9mqdF X9EpOR5m8kgcZmBdq1HUrwO5YFiPBzLsvYdkEDKuRxVfBVlnJYuLspTH2qO5Z+Hl48jcuG 4AUwdrRVzMHrybNZB624qOxr92aI0OB09xXLUKcd4Y3PHecIwFp85KKqC8JphdSRAx/C95 PEpISp3Vkx9jfwQ+DyTccFsAhjSkvo830BEyuhf+4jGisEslwcDUJ8M6YILU3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681096401; 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=BPywK4lulOVnlUbol5XJ5oIlxhr/xoiplqcZavVBJ+k=; b=Xzfiwc5Titox6Wn86zfeFeDyD2CoWuTQ6PHwkYcm6EpyjUyM02yYzvMwAmjgYycTXga+rb C6QuFWXrI7QtvsB2tcby+BHi6jNR01X5iLu6bPplMjpZjYQO7BJRKIo/bb1K55+kIMECgF 6Dqtkpwq2a2Ulv/wt8KwpwfjN/Ei0ab99ogdq+YFO6NSlguw+v5bT2ybNU/Y/XgcOdcQEC L00vtbVKFL7qA7u5ETemMN4iq4gup00ZqPXejoY7gPHyTh2iGYYdSg2tyAzeqXLJPcuqjB 6SwqH7UH/84KBGhI7oLljGWfK90wl0dPFEnncUrXcBtaZwd4xFNWPoTzrdkgYg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681096401; a=rsa-sha256; cv=none; b=c0ficp6d7WDGV54XC5/D2E1YVB+js/vjWEMVhHf4zVqw+RFunyC6DtW/gf1KLo7eMnBpKF /x/i4VvGA/4aKz7/hifBuYBtssITibWt0kDAtp2qstE3g14TitsQLVfDVRXES24B8qhoGY Dx90J/rc3/qojHOzXOKWJAW+pDk+PxL2+Sju1y4uEFNXNRCErb5pPnGy1fTeYxGTu9ttJS mGlMqKcJWGPmB7Vb0S11CX/AEwueTBIKo9WGYwiMjHrrrcLOkOSMKsrF6OGNkp6loAabkz L9SQp5+AkSBD2sSaRP9jbh13dVP/GIBCA9VFNOy7WKa1u0x1lDSWsrJC1nOLYw== Received: from [IPV6:2601:98a:602:da0:1fa8:be6c:38d1:bd] (unknown [IPv6:2601:98a:602:da0:1fa8:be6c:38d1:bd]) (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: vishwin/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4PvvDx1HnlzKSy; Mon, 10 Apr 2023 03:13:21 +0000 (UTC) (envelope-from vishwin@freebsd.org) Message-ID: Date: Sun, 9 Apr 2023 23:13:20 -0400 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Content-Language: en-GB To: Cy Schubert Cc: Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> <20230409154042.0685a273@cschubert.com> From: Charlie Li Organization: FreeBSD Project Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------TuaIPLrOhunk2h8kB4On5Pxl" X-ThisMailContainsUnwantedMimeParts: N This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------TuaIPLrOhunk2h8kB4On5Pxl Content-Type: multipart/mixed; boundary="------------FC4NNm2jl0ttEeJkCT0DD5Gs"; protected-headers="v1" From: Charlie Li To: Cy Schubert Cc: Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Message-ID: Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> <20230409154042.0685a273@cschubert.com> In-Reply-To: --------------FC4NNm2jl0ttEeJkCT0DD5Gs Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 Q3kgU2NodWJlcnQgd3JvdGU6DQo+PiBUaGUgZmlsZSBjb3JydXB0aW9uIHdhcyBwcmlvciB0 byBlbmFibGluZyBibG9ja19jbG9uaW5nIGJ1dCBhZnRlciB0aGlzIGltcG9ydC4NCj4+DQo+ IA0KPiBUaGlzIHJlZ3Jlc3Npb24gd2FzIGZpeGVkICBieSBtamcncyBjb21taXQuIEknbSBu b3Qgc3VyZSB3aGljaCAoSSdtIHByZXNlbnRseSBBRkspLg0KPiANCkJvdGggdGhlIGJsb2Nr X2Nsb25pbmcgcGFuaWMgYW5kIGZpbGUgY29ycnVwdGlvbiBhcmUgc3RpbGwgaGFwcGVuaW5n IGFzIA0Kb2YgMzUxZTQ1OTJmNjRiLCB3aGljaCBpcyBhZnRlciBhbnkgc3VjaCBjb21taXQg aGVyZSwgdW5sZXNzIHJlZmVycmluZyANCnRvIGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuemZz L3pmcy9wdWxsLzE0NzIzIC4NCg0KLS0gDQpDaGFybGllIExpDQrigKZub3BlLCBzdGlsbCBk b24ndCBoYXZlIGFuIGV4aXQgbGluZS4NCg0K --------------FC4NNm2jl0ttEeJkCT0DD5Gs-- --------------TuaIPLrOhunk2h8kB4On5Pxl Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsF5BAABCAAjFiEEJXd5utNNhpeHcBMx/reFK+KbPocFAmQzftAFAwAAAAAACgkQ/reFK+KbPoep QxAAj5IY48LrnbMylGrwvw32jZe+k8PsQpoIxpAWUL9auUTTWb6qaB+Cl9vmAP24erAsDkuq4z3E SPf+XUhAPU1Nz4ou1ISL27prm9uXb+5rxtLhGLSeixazsA7Hb+Xq9orM1ps5Yd67FZftQDrSbSar RBGq6n2C98iX2scvDVj7Yfa+rBL4CZgC/s1wHEjwWetUI0mpR+Rr8T4wHEeZd/4Gs/uxdy75WLUR xSHjoqXGLGJ3GW+OJ/eZ6hTmipak5k0TdpwzT2/g4HW7wDzCsjljrFWKJBdvBMHF9KWdGvQw+sXe Qc/QAqNGFxDYbPUO+LPpBgxaMEyyC68ugzFGypLGAAC1VJoRfpNCLso+vbzJsJAaH7rgKqxAE/Gu nV5yGqsjKKD3Q5KHnAH7QspgUaKceuZHsx+bO+Jg2cBV4mTx45/7AdA7CpcnBUlycXmhbphDsE+a fLIkK2o9Yc+W4QApKhxDxVJufbWOr6xY9QT2VqJQZGczda+unS/W91NdIs3gbQ/hXxti4k6LUnZ5 SkfPiq+WqRuiuhwNTK0DC86c4X9gGrUEsNHcc7eUy4auJAxZMSVLTdPn7Oc0a1v0XfeFDTMPMWBL CBjbpQntPbuiTLcG0oJmXyP+ul/Ll2nrDU9jdkN4MdW31TQH4+LawiSvL8tGns1Yy2EHqOFaIsko trE= =kU4k -----END PGP SIGNATURE----- --------------TuaIPLrOhunk2h8kB4On5Pxl-- From nobody Mon Apr 10 03:25:44 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvvWG0yblz44h2f; Mon, 10 Apr 2023 03:25:46 +0000 (UTC) (envelope-from vishwin@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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvvWF72FRz4QvG; Mon, 10 Apr 2023 03:25:45 +0000 (UTC) (envelope-from vishwin@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681097146; 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=jg7gTtZZgq1XNtNZb9tY2SUBxnVqPUCis+fXgleJYvM=; b=aZhTy7P2pxQyyzVetB3687Cl3gSE+46KE54Cb7UdmvArRIVI2HsfeLsGL2+1pOcy3bnkk2 0yRMntB7y+CAz2zkt93mL0/QmGZDJAq9PEqGWKdOnKs6w7B1VH+kwYnKwRRpIlQqPhK9vN c1A6fCf0jfgy9u4oFjeo8+hLjbpAuPUr5hgS0doEDmeYlIOof/XlUpoisnzPuiHsAcOVaa 3c0u5esjZ7FtnAfQ4cQ7wqPdub/Wi/V1rp1PiOLY+mYS1fnEVQj7lxLndgCw+l6L6qwuLK JRqlElu2sQzAGxqhJ+XFxRe8zY2R/g9kIaBKGLc+U50DvygdMoF4INH1TIufFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681097146; 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=jg7gTtZZgq1XNtNZb9tY2SUBxnVqPUCis+fXgleJYvM=; b=tL2wdsDOBsLYU8kMmAKrPJJCoTy9nMnMwff7/eFULPTKGgTGK272eQ6NsbBWwZj7D2cZaU RkzCqobAHy0PBSkBasl13JNxwSzd1MPRGhWZnOe2VXU0XE+acSYXCeSkWNvWUs8KnRl6+o nrWPwXKjtoJWBqfYA5Ccc1/JscCvgED0rtTzGVw99UQQyMuxRwXDAnml/bccl2qPKxq+Gh 73h5CgfXyyOOISOQHvrQMv4j6gIV/EQgtaTUshOoCQhJGMBZfogn2SQjojr/CS05RTIG9m wUZBetwokdH9/0OoJhsd5tnSKFKfFZQCe1iXI7M3OyxEqw2b16et3qBoC+eGhg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681097146; a=rsa-sha256; cv=none; b=OXBd7YVuZ+H7Qs0mCLyPXySPfrjbMeX9RNRiMuMd0CY6ng9f7QxW+jYPei2lxd0RCvvmKG bUdkDRrzX7eL7t8elV5pNi5PurSkMD29mjto+FbEg5yrmx4ElzcZGianidxT0dx8WhXCx7 eI7PwOqFmBXR2YHIBz2tgryarlckI1vH7CCTZ3268WB1u9LiN0GT4NilzEGpXIclFVU0Ey Z8xTcEL/eSINTPPXO6JVVduTwz+mMPvOjzkZC2pgQq6O53GNkdaXdXq23aqKO5n7basI7M wmoHl0MxiUvEffK6vO4kKHmELYvs8AwinZzz3n36+EwsaTI7+9p8BBHG4YI+xQ== Received: from [IPV6:2601:98a:602:da0:1fa8:be6c:38d1:bd] (unknown [IPv6:2601:98a:602:da0:1fa8:be6c:38d1:bd]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (Client did not present a certificate) (Authenticated sender: vishwin/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4PvvWF35Q2zKw8; Mon, 10 Apr 2023 03:25:45 +0000 (UTC) (envelope-from vishwin@freebsd.org) Message-ID: <707e4671-d746-aa23-e340-6eb8f50f78c6@freebsd.org> Date: Sun, 9 Apr 2023 23:25:44 -0400 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:102.0) Gecko/20100101 Thunderbird/102.10.0 Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 Content-Language: en-GB From: Charlie Li To: Cy Schubert Cc: Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> <20230409154042.0685a273@cschubert.com> Organization: FreeBSD Project In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------XHP0D9knEScCyjni0h3JdQPA" X-ThisMailContainsUnwantedMimeParts: N This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------XHP0D9knEScCyjni0h3JdQPA Content-Type: multipart/mixed; boundary="------------6nTviK4Iy00ip22O1kHIPR6I"; protected-headers="v1" From: Charlie Li To: Cy Schubert Cc: Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Message-ID: <707e4671-d746-aa23-e340-6eb8f50f78c6@freebsd.org> Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> <20230409154042.0685a273@cschubert.com> In-Reply-To: --------------6nTviK4Iy00ip22O1kHIPR6I Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 Q2hhcmxpZSBMaSB3cm90ZToNCj4gQ3kgU2NodWJlcnQgd3JvdGU6DQo+Pj4gVGhlIGZpbGUg Y29ycnVwdGlvbiB3YXMgcHJpb3IgdG8gZW5hYmxpbmcgYmxvY2tfY2xvbmluZyBidXQgYWZ0 ZXIgDQo+Pj4gdGhpcyBpbXBvcnQuDQo+Pj4NCj4+DQo+PiBUaGlzIHJlZ3Jlc3Npb24gd2Fz IGZpeGVkwqAgYnkgbWpnJ3MgY29tbWl0LiBJJ20gbm90IHN1cmUgd2hpY2ggKEknbSANCj4+ IHByZXNlbnRseSBBRkspLg0KPj4NCj4gQm90aCB0aGUgYmxvY2tfY2xvbmluZyBwYW5pYyBh bmQgZmlsZSBjb3JydXB0aW9uIGFyZSBzdGlsbCBoYXBwZW5pbmcgYXMgDQo+IG9mIDM1MWU0 NTkyZjY0Yiwgd2hpY2ggaXMgYWZ0ZXIgYW55IHN1Y2ggY29tbWl0IGhlcmUsIHVubGVzcyBy ZWZlcnJpbmcgDQo+IHRvIGh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuemZzL3pmcy9wdWxsLzE0 NzIzIC4NCj4gDQouLi53aGljaCB3YXMgY29tbWl0dGVkIGhlcmUgcHJpb3IgdG8gMzUxZTQ1 OTJmNjRiLCBzbyB0aGUgaXNzdWVzIHN0aWxsIA0KcGVyc2lzdC4NCg0KLS0gDQpDaGFybGll IExpDQrigKZub3BlLCBzdGlsbCBkb24ndCBoYXZlIGFuIGV4aXQgbGluZS4NCg0K --------------6nTviK4Iy00ip22O1kHIPR6I-- --------------XHP0D9knEScCyjni0h3JdQPA Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsF5BAABCAAjFiEEJXd5utNNhpeHcBMx/reFK+KbPocFAmQzgbgFAwAAAAAACgkQ/reFK+KbPof6 /hAAol1TH/hH5GrMz6pICVK+3F77qzAVa+9Sh18hcMuF5WQ6E3H9e9OEwFdVUYxCxTzAKl27Du5s EVssAlRlZi2XhtZCu7aw12bqMxUJSdT4igQNsEgWkmC4MuZMmZKkPfrYJdTonTte7oASXjYzAoDC 5mIKg1p5VNaMRK1VPhofKdXtBsGiOE8EXSK/DTrZd+wvUIq1V+wpSZLq3oTI/QKNQQ8U4OvIwSBV cvJrtLE9nKYYyuiJ9sIBpdDP+e6Ibwp3g5QAimFaU6Ped/Y9rxpYV/VVuLtX5E83vUwy05ykeAbg 0lkLV5D7hXC0bDSXqSKmkfM7wsTEhu7+4YytNTRxHYupHE9Eb7zgbzNvsoKogMqle8gbUkzN66YS nLP1IlM0Got59o1RDsK5yYTrD9q8MfjENEImtpJ7pODE28QhtagOuoUZTnN6tgIDaidjZa9yVvBQ EeB7U/M2Kgxu90nvMdnf9zuTpcZxc0r7J47q/IgV2MHDy3vkIHF7fZ1yDaKh0H0fV0aG6j4ppE3Q h0Cduw5qTLdbTqWRlDJOCH1Kd8R6/MgOMs43599Z/OIQqkW1fwPnftonqyDnkWmzySTk442bEjna uQC2GeITvMjtqxmX0+yNFvw2UX9ySYYuQGhVKXyVZzFl1pMBJipR1o8gBdio13a4wmKWGT5hwQoe dDk= =45w6 -----END PGP SIGNATURE----- --------------XHP0D9knEScCyjni0h3JdQPA-- From nobody Mon Apr 10 04:16:42 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvwf31f7Lz44kSP; Mon, 10 Apr 2023 04:16: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvwf309fLz4MTk; Mon, 10 Apr 2023 04:16:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100203; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=As79e0rmf9Zq9kVVoXku92lEuQPVwR+tSGO1S7XGUxA=; b=legEcUlo+ckvAfo3IbrEzY3494iK8LzpQxKn5rpSXTv2pUQh6pv1LKw6d8YanY6wygkcMt QJXwgn2WpxfacpuWQ8GBzSfgCYFpCe5DYHevxl07nM2PPN2z+y2lUV9UlYMBcWZfCLICSF krwAFnbD/e2FvIP5+z+SXtO/UBneUvrWu2KmLw5zK0Dg5EgOGZqLQmo16BK2YYp1MNITEE AVUKYWK9xEbBHsUjRl9KkzNUTt34oNOMYSKkuM+ZLys+2ZNMHMWR34Fbl6+cCkIoJkTGcw fnyKl3f2K1mXW9iJ7fRJdXeb1FK+jd4rUIWZpxoNLynYTwLx1LOU3ODLm46m9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100203; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=As79e0rmf9Zq9kVVoXku92lEuQPVwR+tSGO1S7XGUxA=; b=evzW5tQExxpAqswUEF8+aQw0xEqAYU9QWZ8krL/+GuYT0O96ryqIrA+gHtomXePrE9+AkB gQ+F7MSbX8HDxX3k7ZCg2LJg6wfATbnI1Bv9Ny9VDuaQ4a9z094rR96wZvD5LJ0yAb5ick WkEBiv3eHYZAAyJ6jACetJuURqH4Jp4ZTZx18lvChKzGd7jyTpXo8HCBKriPojkL9zhsP4 91MNKXep+iZcfabT8ZwfzbaYh0J8VkYPiywL2p8Bl8d7S14znobahQUHVLkthSAIxIRspw bnZFBG2jL1ayQgYmFDKv9px3XG0nJNWIFn8IeSVLpgWjCrf7jucKK5kmH7sFfg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681100203; a=rsa-sha256; cv=none; b=l999WXESk0yasNck7rpiuZ/WXrjiY1QaSsR8eyF88GHXgV56el9PiwgQtMd5GzZqKM5y7L ZdHC9cvOvGvY4MCTPxSQaPorNl1n7nyBZVi8kNFGcjQddxn/IFENqEC6cjsHD8bL9+Qme6 w0GnsCFZcyrYbyv0pxR9EVfm07aPpz36ZtToYpyjpQ65o+Crf1aQ4Q1JnKOiNL1+xzy+uc pxlbjJXj2ijNEsbXtLvqhLtz54e4VGfJltr3V6+NSF+g+ayyK8Otd/N3QwVuYAOK9NN7xp PaNTpRQZ0ZjT6wYOM9UyNw3JyV7XF/YJETLSX6UEya6cdv1HPwUi8FU8gubq7w== 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 4Pvwf261SqzbmF; Mon, 10 Apr 2023 04:16:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A4Gggs039518; Mon, 10 Apr 2023 04:16:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A4GgWF039517; Mon, 10 Apr 2023 04:16:42 GMT (envelope-from git) Date: Mon, 10 Apr 2023 04:16:42 GMT Message-Id: <202304100416.33A4GgWF039517@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: 9d1d0667c7fd - stable/13 - lagg: Various style fixes List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 9d1d0667c7fd9955711b39abf17750fd2a9d01fd Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=9d1d0667c7fd9955711b39abf17750fd2a9d01fd commit 9d1d0667c7fd9955711b39abf17750fd2a9d01fd Author: Zhenlei Huang AuthorDate: 2023-03-24 09:55:15 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 04:15:04 +0000 lagg: Various style fixes MFC after: 1 week (cherry picked from commit dcd7f0bd02f407952de42d96e1c2c01ee3460702) --- sys/net/if_lagg.c | 45 ++++++++++++++++++++++----------------------- sys/net/if_lagg.h | 2 +- 2 files changed, 23 insertions(+), 24 deletions(-) diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index eeae7273ad2a..e559371f2d37 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -152,15 +152,15 @@ static int lagg_snd_tag_query(struct m_snd_tag *, union if_snd_tag_query_params *); static void lagg_snd_tag_free(struct m_snd_tag *); static struct m_snd_tag *lagg_next_snd_tag(struct m_snd_tag *); -static void lagg_ratelimit_query(struct ifnet *, +static void lagg_ratelimit_query(struct ifnet *, struct if_ratelimit_query_results *); #endif static int lagg_setmulti(struct lagg_port *); static int lagg_clrmulti(struct lagg_port *); -static int lagg_setcaps(struct lagg_port *, int cap); -static int lagg_setflag(struct lagg_port *, int, int, +static int lagg_setcaps(struct lagg_port *, int cap); +static int lagg_setflag(struct lagg_port *, int, int, int (*func)(struct ifnet *, int)); -static int lagg_setflags(struct lagg_port *, int status); +static int lagg_setflags(struct lagg_port *, int status); static uint64_t lagg_get_counter(struct ifnet *ifp, ift_counter cnt); static int lagg_transmit_ethernet(struct ifnet *, struct mbuf *); static int lagg_transmit_infiniband(struct ifnet *, struct mbuf *); @@ -168,7 +168,7 @@ static void lagg_qflush(struct ifnet *); static int lagg_media_change(struct ifnet *); static void lagg_media_status(struct ifnet *, struct ifmediareq *); static struct lagg_port *lagg_link_active(struct lagg_softc *, - struct lagg_port *); + struct lagg_port *); /* Simple round robin */ static void lagg_rr_attach(struct lagg_softc *); @@ -192,7 +192,7 @@ static struct mbuf *lagg_lb_input(struct lagg_softc *, struct lagg_port *, static int lagg_lb_porttable(struct lagg_softc *, struct lagg_port *); /* Broadcast */ -static int lagg_bcast_start(struct lagg_softc *, struct mbuf *); +static int lagg_bcast_start(struct lagg_softc *, struct mbuf *); static struct mbuf *lagg_bcast_input(struct lagg_softc *, struct lagg_port *, struct mbuf *); @@ -475,7 +475,7 @@ lagg_register_vlan(void *arg, struct ifnet *ifp, u_int16_t vtag) struct lagg_softc *sc = ifp->if_softc; struct lagg_port *lp; - if (ifp->if_softc != arg) /* Not our event */ + if (ifp->if_softc != arg) /* Not our event */ return; LAGG_XLOCK(sc); @@ -494,7 +494,7 @@ lagg_unregister_vlan(void *arg, struct ifnet *ifp, u_int16_t vtag) struct lagg_softc *sc = ifp->if_softc; struct lagg_port *lp; - if (ifp->if_softc != arg) /* Not our event */ + if (ifp->if_softc != arg) /* Not our event */ return; LAGG_XLOCK(sc); @@ -532,7 +532,7 @@ lagg_clone_create(struct if_clone *ifc, int unit, caddr_t params) if_type = IFT_ETHER; } - sc = malloc(sizeof(*sc), M_LAGG, M_WAITOK|M_ZERO); + sc = malloc(sizeof(*sc), M_LAGG, M_WAITOK | M_ZERO); ifp = sc->sc_ifp = if_alloc(if_type); if (ifp == NULL) { free(sc, M_LAGG); @@ -551,7 +551,7 @@ lagg_clone_create(struct if_clone *ifc, int unit, caddr_t params) sc->flowid_shift = V_def_flowid_shift; /* Hash all layers by default */ - sc->sc_flags = MBUF_HASHFLAG_L2|MBUF_HASHFLAG_L3|MBUF_HASHFLAG_L4; + sc->sc_flags = MBUF_HASHFLAG_L2 | MBUF_HASHFLAG_L3 | MBUF_HASHFLAG_L4; lagg_proto_attach(sc, LAGG_PROTO_DEFAULT); @@ -792,7 +792,7 @@ lagg_port_create(struct lagg_softc *sc, struct ifnet *ifp) ifr.ifr_mtu = oldmtu; } - lp = malloc(sizeof(struct lagg_port), M_LAGG, M_WAITOK|M_ZERO); + lp = malloc(sizeof(struct lagg_port), M_LAGG, M_WAITOK | M_ZERO); lp->lp_softc = sc; /* Check if port is a stacked lagg */ @@ -862,7 +862,7 @@ lagg_port_create(struct lagg_softc *sc, struct ifnet *ifp) CK_SLIST_FOREACH(tlp, &sc->sc_ports, lp_entries) { if (tlp->lp_ifp->if_index < ifp->if_index && ( CK_SLIST_NEXT(tlp, lp_entries) == NULL || - ((struct lagg_port*)CK_SLIST_NEXT(tlp, lp_entries))->lp_ifp->if_index > + ((struct lagg_port*)CK_SLIST_NEXT(tlp, lp_entries))->lp_ifp->if_index > ifp->if_index)) break; } @@ -1076,15 +1076,15 @@ fallback: } /* - * Requests counter @cnt data. + * Requests counter @cnt data. * * Counter value is calculated the following way: - * 1) for each port, sum difference between current and "initial" measurements. + * 1) for each port, sum difference between current and "initial" measurements. * 2) add lagg logical interface counters. * 3) add data from detached_counters array. * * We also do the following things on ports attach/detach: - * 1) On port attach we store all counters it has into port_counter array. + * 1) On port attach we store all counters it has into port_counter array. * 2) On port detach we add the different between "initial" and * current counters data to detached_counters array. */ @@ -1463,7 +1463,7 @@ lagg_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) /* Invalid combination of options specified. */ error = EINVAL; LAGG_XUNLOCK(sc); - break; /* Return from SIOCSLAGGOPTS. */ + break; /* Return from SIOCSLAGGOPTS. */ } /* @@ -1512,15 +1512,15 @@ lagg_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) break; case LAGG_OPT_LACP_FAST_TIMO: LACP_LOCK(lsc); - LIST_FOREACH(lp, &lsc->lsc_ports, lp_next) - lp->lp_state |= LACP_STATE_TIMEOUT; + LIST_FOREACH(lp, &lsc->lsc_ports, lp_next) + lp->lp_state |= LACP_STATE_TIMEOUT; LACP_UNLOCK(lsc); lsc->lsc_fast_timeout = 1; break; case -LAGG_OPT_LACP_FAST_TIMO: LACP_LOCK(lsc); - LIST_FOREACH(lp, &lsc->lsc_ports, lp_next) - lp->lp_state &= ~LACP_STATE_TIMEOUT; + LIST_FOREACH(lp, &lsc->lsc_ports, lp_next) + lp->lp_state &= ~LACP_STATE_TIMEOUT; LACP_UNLOCK(lsc); lsc->lsc_fast_timeout = 0; break; @@ -1909,8 +1909,7 @@ lagg_setmulti(struct lagg_port *lp) IF_ADDR_WUNLOCK(scifp); return (ENOMEM); } - bcopy(ifma->ifma_addr, &mc->mc_addr, - ifma->ifma_addr->sa_len); + bcopy(ifma->ifma_addr, &mc->mc_addr, ifma->ifma_addr->sa_len); mc->mc_addr.sdl_index = ifp->if_index; mc->mc_ifma = NULL; SLIST_INSERT_HEAD(&lp->lp_mc_head, mc, mc_entries); @@ -2424,7 +2423,7 @@ lagg_fail_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) * If tmp_tp is null, we've received a packet when all * our links are down. Weird, but process it anyways. */ - if ((tmp_tp == NULL || tmp_tp == lp)) { + if (tmp_tp == NULL || tmp_tp == lp) { m->m_pkthdr.rcvif = ifp; return (m); } diff --git a/sys/net/if_lagg.h b/sys/net/if_lagg.h index 94f3487af6f7..2ff1ee8279ca 100644 --- a/sys/net/if_lagg.h +++ b/sys/net/if_lagg.h @@ -223,7 +223,7 @@ struct lagg_lb { struct lagg_mc { struct sockaddr_dl mc_addr; - struct ifmultiaddr *mc_ifma; + struct ifmultiaddr *mc_ifma; SLIST_ENTRY(lagg_mc) mc_entries; }; From nobody Mon Apr 10 04:16:43 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvwf40rrMz44kNm; Mon, 10 Apr 2023 04:16: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvwf36JfXz4MbS; Mon, 10 Apr 2023 04:16:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100203; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YqNwbaw+YazBZN8+rgaYXMHHNRp/nxX5HQxovqtdtU4=; b=Z6C7yTm8tnksmGKXy4iTsIglSXry9L+82KJisViPK1IDmNBcf0UTfjd2DGOKdwxzkv1QLY PyTLvrUAERATAWRprGPWVpTjpWj0DUxZetZzsrGtTnXdSqJmAfNLgnnMVymX+Aij6+UBTO tBbQWVQa7IqMQLXotvkESWj8O65fSqC5QQ/bBM3wkDyZI0hd+bNS/dDjWcxqnMhEKve5JY 4KsUAVsgR3W9sH8YMu04/m7CJm2W0ANB0C15czVT6O+mqm6ed4OIcwhOkrdUqkPqjF3Ycc 1T3DQAh6ht8sXyDzQReCowEmvzaEFpnsQN8b2XrCzCvu+XYOD/xPkQ+1axjpgQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100203; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YqNwbaw+YazBZN8+rgaYXMHHNRp/nxX5HQxovqtdtU4=; b=KhJwx3hoI/d4SkYa9CX+5LopXzYX5mDoBqdrz+pL+AfGABAueI06rGrPc1+dYTDwXes1AY AZzlfJEMQkhWn7cDD+hqjNb0IxCZO/AH3b4VFSsARW+i3510yb9zSKoxt+G2/a4YlfqSYp b2L7ZSuGoRWyNEhUIBCXsbWprY1LoW6LAAFoCkQeapEZ+HkjztBSk48n9OkEUZTj0/9knJ 82Kamh/1gNvehqem2Q2RWLrTHHKxix/LZAScKjVgjhFyhycahso32g6CBW6M4AvTNZYDrd 6x4OB8ZnMh1CLPcTCSHF4Xhyf0T4xkzQ8FOkUx00n3TA+TdC+HoNnxMrsuzVlA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681100203; a=rsa-sha256; cv=none; b=dxbg+6Ql6O0SuOIM/hqVukEFndaBHFm5jwbu0XWHehTqj04/yD/NBThl/hV55IgYqlfQcO WCJZSHZLjmOj/rZtjWcahHhBZR4P80NLnsT4/B0aZ5iQITKF7NUUYYlcstPe42BSOIbWLz 8oGybnF4k9WW4N555ec2mYp8+G4oGwVxVjduUcyq6b/1NoVhEW8Gt+fYUOJQ+QcTMmLcaF WfAcjrB8e7+2IAYXflNU4Pu0LMB0NastVrAEF8I11u2hJgLmZfjGTWyKaAA1wlfN1G/+r5 A9gz5NhaTXgji/BU1b9aHknADe9L5J2nQ0q1bd5048fJ6aWOHXaoTKZRsUQZPg== 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 4Pvwf34sQ6zbmh; Mon, 10 Apr 2023 04:16:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A4GhE7039537; Mon, 10 Apr 2023 04:16:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A4GhJx039536; Mon, 10 Apr 2023 04:16:43 GMT (envelope-from git) Date: Mon, 10 Apr 2023 04:16:43 GMT Message-Id: <202304100416.33A4GhJx039536@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: b452382e5c00 - stable/13 - lagg(4): Make lagg_list and lagg_detach_cookie static List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: b452382e5c00facd0fab8a8b0bd53d9564689e55 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=b452382e5c00facd0fab8a8b0bd53d9564689e55 commit b452382e5c00facd0fab8a8b0bd53d9564689e55 Author: Zhenlei Huang AuthorDate: 2023-03-29 16:13:02 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 04:15:04 +0000 lagg(4): Make lagg_list and lagg_detach_cookie static They are used internally only. No functional change intended. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D39250 (cherry picked from commit fcac5719a1833ad865ac0a7960ff18319a40dfff) --- sys/net/if_lagg.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index e559371f2d37..cf332ea529e9 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -106,7 +106,7 @@ struct lagg_snd_tag { struct m_snd_tag *tag; }; -VNET_DEFINE(SLIST_HEAD(__trhead, lagg_softc), lagg_list); /* list of laggs */ +VNET_DEFINE_STATIC(SLIST_HEAD(__trhead, lagg_softc), lagg_list); /* list of laggs */ #define V_lagg_list VNET(lagg_list) VNET_DEFINE_STATIC(struct mtx, lagg_list_mtx); #define V_lagg_list_mtx VNET(lagg_list_mtx) @@ -115,7 +115,7 @@ VNET_DEFINE_STATIC(struct mtx, lagg_list_mtx); #define LAGG_LIST_LOCK_DESTROY(x) mtx_destroy(&V_lagg_list_mtx) #define LAGG_LIST_LOCK(x) mtx_lock(&V_lagg_list_mtx) #define LAGG_LIST_UNLOCK(x) mtx_unlock(&V_lagg_list_mtx) -eventhandler_tag lagg_detach_cookie = NULL; +static eventhandler_tag lagg_detach_cookie = NULL; static int lagg_clone_create(struct if_clone *, int, caddr_t); static void lagg_clone_destroy(struct ifnet *); From nobody Mon Apr 10 04:16:44 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvwf51y26z44kcg; Mon, 10 Apr 2023 04:16: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvwf503bQz4Mg5; Mon, 10 Apr 2023 04:16:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100205; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ChYHuyuCB892EpOwC30C/EQ+QDnokuyrnmdmQbq2BUs=; b=pz28fMAEuJlNG2xjpRNH2y7akfeclIJrPvrE1vR7k2z+KdWiP8ApcQadFU+gQdeQIlG59i a17STJvpsCglNuWK9bbXsOwYt1hGUMq2sAnrFc3/jMaUq8SZsK/NFHuLy41Ja/KB/oj5hu RHAhBb9hqijabgYe/qfxZfIYpJxGjRLA5yAzlzvzCVRoYlEgZzbmqK4H3wPs/Dyhf6o/0w OJO3KQXxGuVjzV7eER0KrIOhn2Ec0qBTe0reScJ+ZtKXPouFE9aI4OztPmnclvmBs0G/8g I2MLM3O5Ao5cFqv2ljCxVBXFW7dtxnjvgjVN9YhAif7bnAlHmSBs/OI/CUv0TQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100205; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ChYHuyuCB892EpOwC30C/EQ+QDnokuyrnmdmQbq2BUs=; b=JO6CMbKhBzZ/ckcxbJ65Vpri/IhdnOAee0XxGkUwsJM2xlt3HJEO9tj5/TC5406Y1Y1Utv rjOm5Na8AhkNyiF0WfL3U+7iYR+EB7VuLA1nYoD4Qdeu5662eEFOe7trSbC18Zy5JdkFCe LiyW69fxCNH4aTeWtRstWHzCW+fIGbCWekEm/lT3L6eLFfmJzlEX4+ZaTTA6RFl5DDCbes /Ul8AhFXOVzzKBoabvwSBcPK2aJJzOI7kFpwSjy8OBaSlSTGw2Xin6DbFXbXbH23JdIcYc 18o4bXTcj46W3I9BgTGJHzXohYpZoDrG4s5DFBS1dPLvhkFX1N2bPnzcDgp+Hw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681100205; a=rsa-sha256; cv=none; b=Vxv2PhAZ7JekO9rm2WXhonTqH+BIFkq2Q2K6GMFCRRqEpgutkacELlhqOgyUDSGQsmkKgo Xulnre6hrtYV5FhmoTm9Go/qNu4LNOwNpjqTVvRIoXSBZWDey2jc93GKijYXWbJExyiOYm apzACr75fX/mzx+WEVsahXlcZ55XdxS4xVRHApHGqbCDDN69a+CwHg7qAHhMmlO6SQRVBP EwfF1xTu9AKMyxKrN5nA8J5aikrZCB982hsoMAMsxFFgMt3kfNCUQBnwdNK3lG4QIDjMt6 JbsJWWHLh2w5ilR/vnM+g4IeuLO0cDuqjj3Z3d76Lg5KiiPL7MbJKkARBVhseQ== 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 4Pvwf45FC9zbMp; Mon, 10 Apr 2023 04:16:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A4GiTE039556; Mon, 10 Apr 2023 04:16:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A4GiYQ039555; Mon, 10 Apr 2023 04:16:44 GMT (envelope-from git) Date: Mon, 10 Apr 2023 04:16:44 GMT Message-Id: <202304100416.33A4GiYQ039555@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: eeb96a7b9178 - stable/13 - lagg(4): Refactor out some lagg protocol input routines into a default one List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: eeb96a7b9178aa55d855203b977564b287d6d108 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=eeb96a7b9178aa55d855203b977564b287d6d108 commit eeb96a7b9178aa55d855203b977564b287d6d108 Author: Zhenlei Huang AuthorDate: 2023-03-29 16:16:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 04:15:04 +0000 lagg(4): Refactor out some lagg protocol input routines into a default one Those input routines are identical. Also inline two fast paths. No functional change intended. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D39251 (cherry picked from commit dbe86dd5de18fdf61e1300f6575e0f50785bf6b3) --- sys/net/if_lagg.c | 64 ++++++++++++++++++------------------------------------- 1 file changed, 21 insertions(+), 43 deletions(-) diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index cf332ea529e9..e282fde66013 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -173,8 +173,6 @@ static struct lagg_port *lagg_link_active(struct lagg_softc *, /* Simple round robin */ static void lagg_rr_attach(struct lagg_softc *); static int lagg_rr_start(struct lagg_softc *, struct mbuf *); -static struct mbuf *lagg_rr_input(struct lagg_softc *, struct lagg_port *, - struct mbuf *); /* Active failover */ static int lagg_fail_start(struct lagg_softc *, struct mbuf *); @@ -187,14 +185,10 @@ static void lagg_lb_detach(struct lagg_softc *); static int lagg_lb_port_create(struct lagg_port *); static void lagg_lb_port_destroy(struct lagg_port *); static int lagg_lb_start(struct lagg_softc *, struct mbuf *); -static struct mbuf *lagg_lb_input(struct lagg_softc *, struct lagg_port *, - struct mbuf *); static int lagg_lb_porttable(struct lagg_softc *, struct lagg_port *); /* Broadcast */ static int lagg_bcast_start(struct lagg_softc *, struct mbuf *); -static struct mbuf *lagg_bcast_input(struct lagg_softc *, struct lagg_port *, - struct mbuf *); /* 802.3ad LACP */ static void lagg_lacp_attach(struct lagg_softc *); @@ -204,6 +198,10 @@ static struct mbuf *lagg_lacp_input(struct lagg_softc *, struct lagg_port *, struct mbuf *); static void lagg_lacp_lladdr(struct lagg_softc *); +/* Default input */ +static struct mbuf *lagg_default_input(struct lagg_softc *, struct lagg_port *, + struct mbuf *); + /* lagg protocol table */ static const struct lagg_proto { lagg_proto pr_num; @@ -228,7 +226,7 @@ static const struct lagg_proto { .pr_num = LAGG_PROTO_ROUNDROBIN, .pr_attach = lagg_rr_attach, .pr_start = lagg_rr_start, - .pr_input = lagg_rr_input, + .pr_input = lagg_default_input, }, { .pr_num = LAGG_PROTO_FAILOVER, @@ -240,7 +238,7 @@ static const struct lagg_proto { .pr_attach = lagg_lb_attach, .pr_detach = lagg_lb_detach, .pr_start = lagg_lb_start, - .pr_input = lagg_lb_input, + .pr_input = lagg_default_input, .pr_addport = lagg_lb_port_create, .pr_delport = lagg_lb_port_destroy, }, @@ -262,7 +260,7 @@ static const struct lagg_proto { { .pr_num = LAGG_PROTO_BROADCAST, .pr_start = lagg_bcast_start, - .pr_input = lagg_bcast_input, + .pr_input = lagg_default_input, }, }; @@ -385,14 +383,14 @@ lagg_proto_detach(struct lagg_softc *sc) lagg_protos[pr].pr_detach(sc); } -static int +static inline int lagg_proto_start(struct lagg_softc *sc, struct mbuf *m) { return (lagg_protos[sc->sc_proto].pr_start(sc, m)); } -static struct mbuf * +static inline struct mbuf * lagg_proto_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) { @@ -2319,17 +2317,6 @@ lagg_rr_start(struct lagg_softc *sc, struct mbuf *m) return (lagg_enqueue(lp->lp_ifp, m)); } -static struct mbuf * -lagg_rr_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) -{ - struct ifnet *ifp = sc->sc_ifp; - - /* Just pass in the packet to our lagg device */ - m->m_pkthdr.rcvif = ifp; - - return (m); -} - /* * Broadcast mode */ @@ -2377,16 +2364,6 @@ lagg_bcast_start(struct lagg_softc *sc, struct mbuf *m) return (ret); } -static struct mbuf* -lagg_bcast_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) -{ - struct ifnet *ifp = sc->sc_ifp; - - /* Just pass in the packet to our lagg device */ - m->m_pkthdr.rcvif = ifp; - return (m); -} - /* * Active failover */ @@ -2530,17 +2507,6 @@ lagg_lb_start(struct lagg_softc *sc, struct mbuf *m) return (lagg_enqueue(lp->lp_ifp, m)); } -static struct mbuf * -lagg_lb_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) -{ - struct ifnet *ifp = sc->sc_ifp; - - /* Just pass in the packet to our lagg device */ - m->m_pkthdr.rcvif = ifp; - - return (m); -} - /* * 802.3ad LACP */ @@ -2632,3 +2598,15 @@ lagg_lacp_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) m->m_pkthdr.rcvif = ifp; return (m); } + +/* Default input */ +static struct mbuf * +lagg_default_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) +{ + struct ifnet *ifp = sc->sc_ifp; + + /* Just pass in the packet to our lagg device */ + m->m_pkthdr.rcvif = ifp; + + return (m); +} From nobody Mon Apr 10 04:16:45 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvwf66Jj5z44kWQ; Mon, 10 Apr 2023 04:16: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvwf60Ksqz4MdP; Mon, 10 Apr 2023 04:16:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100206; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wHP29XErVEztMMQPYI3+poAQCUc1xVf7flUqu2NBF1o=; b=uppAW8vVOX1yYQALV7ChdSLJ1UDiAxe6WHzAQSMucU0bxs/2oCZrkSBxJA2bF/zMut1a7D rUtNT4oT786OCOhGOIOIk9nTkoQfOdMTGqcV+VJGrsc3a9YnjZqsQqhrhlu+mZPUmvZQtr F+Vh2jNgsqJC6WXEe32/7UoaiB6Sz4eRBiPj1myDzEPeVVrW2ucdLCZU2g44vk3iS/+T+T zcuCTV1cLr6vmDrXCZ40MRcTy4zmibbbqwUp0RbHJMsUn9II7drCSn+IZc85T7M3vsWEDM RqtB5eXRkvUjvqSvKHvZxw/Nrmkdwd0UFpJqmWqkuP6aknjZaC7VWoYap0bcRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100206; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wHP29XErVEztMMQPYI3+poAQCUc1xVf7flUqu2NBF1o=; b=KKejKsn86K62sw2gzqTmD+iSL4UecC5BRkYbMeLkyX3CFqb2EGvzKuJ8zsrwRk3ESPRAIR nmuBIOBbv1IkccjvknYJil6wMyjgjNg65OqSU3a/DrTJuLZhbCwYAHS6xxOxvJLqujcr3F P4RXwloE+AgQm9wE4OPeFMLln+B+xwB6fCJlxYLktPm+0v6z4zXBIrzDDxVxtDb4GCS2D2 fUNttbxL5PCZZVhmepQVuXTQ8BQ+ui2hLLz7aYKEI1e+oLoFmLtig8+a1YLvRXPxs8o+TH 9+rqp1Hd0SrY2ydC7ez1llySMqJ0J+P83T/94zExAknRSVCmNqE5VR6bdOeXNw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681100206; a=rsa-sha256; cv=none; b=a5Ek5gLf+9jZs7GjpH74+yNH7AQ11C3dkDLBay2GkqiXEl+ZNGcUdg/tIe1g4U9NnvD5Ck Jj84Fc507cNuL3I/OnjJwbNh81+aBHGAghm105PBXIq7uF+Y98h76l4k934sPH/6/8eBg8 ppQizsG2CxF5tabz0Tc8F+fpzL4StKE43NitHM3SvC6EXpwax7fA8v2pKINiLO0mP6mjTd U0QQ8RPSe4WKXKLHLmH6Mziisrf+o63uDVfr4oKN/5XyXcGn8Jb+ZEU3rTts4vKWLDCRt/ pRwLyfXI0KD3aQeYJnDPzweT0SipftoGK26RBfl0q5O4iPM2awdnXT41fJ+hig== 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 4Pvwf56JBmzbpx; Mon, 10 Apr 2023 04:16:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A4GjDs039582; Mon, 10 Apr 2023 04:16:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A4GjOW039581; Mon, 10 Apr 2023 04:16:45 GMT (envelope-from git) Date: Mon, 10 Apr 2023 04:16:45 GMT Message-Id: <202304100416.33A4GjOW039581@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: 758fea562555 - stable/13 - lagg(4): Do not enter net epoch recursively List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 758fea562555ab90979b4bd269aa2cd084de63bb Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=758fea562555ab90979b4bd269aa2cd084de63bb commit 758fea562555ab90979b4bd269aa2cd084de63bb Author: Zhenlei Huang AuthorDate: 2023-03-29 16:25:16 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 04:15:04 +0000 lagg(4): Do not enter net epoch recursively This saves a little resources. No functional change intended. Reviewed by: kp Fixes: b8a6e03fac92 Widen NET_EPOCH coverage MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D39267 (cherry picked from commit d4a80d21b3d32a2de02d1820cc1f38dba1f127cb) --- sys/net/if_lagg.c | 23 +++++------------------ 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index e282fde66013..8a62286db81b 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -2006,18 +2006,15 @@ lagg_setflags(struct lagg_port *lp, int status) static int lagg_transmit_ethernet(struct ifnet *ifp, struct mbuf *m) { - struct epoch_tracker et; struct lagg_softc *sc = (struct lagg_softc *)ifp->if_softc; - int error; + NET_EPOCH_ASSERT(); #if defined(KERN_TLS) || defined(RATELIMIT) if (m->m_pkthdr.csum_flags & CSUM_SND_TAG) MPASS(m->m_pkthdr.snd_tag->ifp == ifp); #endif - NET_EPOCH_ENTER(et); /* We need a Tx algorithm and at least one port */ if (sc->sc_proto == LAGG_PROTO_NONE || sc->sc_count == 0) { - NET_EPOCH_EXIT(et); m_freem(m); if_inc_counter(ifp, IFCOUNTER_OERRORS, 1); return (ENXIO); @@ -2025,26 +2022,21 @@ lagg_transmit_ethernet(struct ifnet *ifp, struct mbuf *m) ETHER_BPF_MTAP(ifp, m); - error = lagg_proto_start(sc, m); - NET_EPOCH_EXIT(et); - return (error); + return (lagg_proto_start(sc, m)); } static int lagg_transmit_infiniband(struct ifnet *ifp, struct mbuf *m) { - struct epoch_tracker et; struct lagg_softc *sc = (struct lagg_softc *)ifp->if_softc; - int error; + NET_EPOCH_ASSERT(); #if defined(KERN_TLS) || defined(RATELIMIT) if (m->m_pkthdr.csum_flags & CSUM_SND_TAG) MPASS(m->m_pkthdr.snd_tag->ifp == ifp); #endif - NET_EPOCH_ENTER(et); /* We need a Tx algorithm and at least one port */ if (sc->sc_proto == LAGG_PROTO_NONE || sc->sc_count == 0) { - NET_EPOCH_EXIT(et); m_freem(m); if_inc_counter(ifp, IFCOUNTER_OERRORS, 1); return (ENXIO); @@ -2052,9 +2044,7 @@ lagg_transmit_infiniband(struct ifnet *ifp, struct mbuf *m) INFINIBAND_BPF_MTAP(ifp, m); - error = lagg_proto_start(sc, m); - NET_EPOCH_EXIT(et); - return (error); + return (lagg_proto_start(sc, m)); } /* @@ -2068,16 +2058,14 @@ lagg_qflush(struct ifnet *ifp __unused) static struct mbuf * lagg_input_ethernet(struct ifnet *ifp, struct mbuf *m) { - struct epoch_tracker et; struct lagg_port *lp = ifp->if_lagg; struct lagg_softc *sc = lp->lp_softc; struct ifnet *scifp = sc->sc_ifp; - NET_EPOCH_ENTER(et); + NET_EPOCH_ASSERT(); if ((scifp->if_drv_flags & IFF_DRV_RUNNING) == 0 || lp->lp_detaching != 0 || sc->sc_proto == LAGG_PROTO_NONE) { - NET_EPOCH_EXIT(et); m_freem(m); return (NULL); } @@ -2090,7 +2078,6 @@ lagg_input_ethernet(struct ifnet *ifp, struct mbuf *m) m = NULL; } - NET_EPOCH_EXIT(et); return (m); } From nobody Mon Apr 10 04:16:46 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvwf74VjYz44kg2; Mon, 10 Apr 2023 04:16:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvwf72Fbnz4MsG; Mon, 10 Apr 2023 04:16:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100207; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rgvl8Mqc2SeufOrK7CpEX65SXsm19tVhzZDgAN/r9ho=; b=rrMEGd4u0dd3ymJGpRYF/IvqzFm+ILPgWXhWDZacYe5Uy2sCy74H1dutwkzRbEyhqOawbx gz22yFeJtI4rcdAlkndY8uRfhCKx2rIx8hdQIHu9hAizWUe1W8o2axuArELUgCUC/J1iyS UvCQVaDOLoKkKaqo5K249xzvapBOeDTHOmd1d2TjtS8sctRGh3P14qFeawU7He4LNfiPCG XYVblfPr8/THE/JJiXh5MrV4kNBM+zMjbm+G/H6jKz7WxAum7qIDo8IALY1YjqKdqPsYiV ul3TGYhgqBk3gyce5sC3bfPpZnZauNwXA5fFZRY75xXF3tiACj+2JsNLQAry3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100207; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rgvl8Mqc2SeufOrK7CpEX65SXsm19tVhzZDgAN/r9ho=; b=hjoB2lXrd8V3k1M9MbYts/tkjoIMIMnuLPu+pmdT1NWvhNxX3XbRC4UtHvdx1HAHADW+FF knMBndokwhYVMK3MJTCDCjxTp0ZmrO4W9qO4TloRTadfn6VY7JkfugANjjGN7XzXev/7xa Kr+SdcT/jpr++xtwGxph77OPBiUH9uAIgjCjrGxCZUGCtUx4G6EhZNwXpHlTpHmbzhT57B L67e80DEVUo7qYyKsrOFgkj0W5fbNRixAblIVz6DXL9+KQmDLjyPBobZdTJvn1BHnGs4RG f0bZMSbsWNj1h8jEQS6U0Z2x0Fb6IPqztBs/qADCaBatiBMNBuW+m0O9Xo7EMw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681100207; a=rsa-sha256; cv=none; b=qpeje0LUAuZAsVbHTU/0yzZ5jUfGO1LH67vRhSwrqEaMecmCUNfX5oSD6zMHUewDJrgVLl tprBdoR53VPlw1Wm4M7iuOl//koadTJ4yU0yGzx7vIf5rNVDM0fwUQfjGwDVCA1+M+AdD5 WjMC1FbL+IeVxu5HcnAsy+KmNvgFG4Rz6OLrcB4lXkR8/qhqrLB/N6gsXyT4eFMigqd4ir Vat/zzxEdB5EX3VPUbDER+1/AWxfzem1/ttnRSvSmJY60/mrn+RSrpfqizZwNhDME3LoHW NRZ4iZ27wVaqFVXvBHgMur3rlSs95yXO+fviE1DAICjhx0fPBgVMNeFtP9BF6g== 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 4Pvwf706YCzbMq; Mon, 10 Apr 2023 04:16:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A4Gkrd039601; Mon, 10 Apr 2023 04:16:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A4GkMC039600; Mon, 10 Apr 2023 04:16:46 GMT (envelope-from git) Date: Mon, 10 Apr 2023 04:16:46 GMT Message-Id: <202304100416.33A4GkMC039600@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: d1d5d8f69659 - stable/13 - lacp: Use C99 bool for boolean return value List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: d1d5d8f69659c4d3573e64a62a9306ee944d9e4d Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=d1d5d8f69659c4d3573e64a62a9306ee944d9e4d commit d1d5d8f69659c4d3573e64a62a9306ee944d9e4d Author: Zhenlei Huang AuthorDate: 2023-03-31 17:48:36 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 04:15:04 +0000 lacp: Use C99 bool for boolean return value This improves readability. No functional change intended. MFC after: 1 week (cherry picked from commit 5a8abd0a298e6e7a8bf938a7eb171b647b1860cd) --- sys/net/ieee8023ad_lacp.c | 38 +++++++++++++++++--------------------- sys/net/ieee8023ad_lacp.h | 15 ++++++--------- sys/net/if_lagg.c | 2 +- 3 files changed, 24 insertions(+), 31 deletions(-) diff --git a/sys/net/ieee8023ad_lacp.c b/sys/net/ieee8023ad_lacp.c index 6656ebb2b400..8770e2a3e398 100644 --- a/sys/net/ieee8023ad_lacp.c +++ b/sys/net/ieee8023ad_lacp.c @@ -116,9 +116,9 @@ static void lacp_fill_aggregator_id(struct lacp_aggregator *, const struct lacp_port *); static void lacp_fill_aggregator_id_peer(struct lacp_peerinfo *, const struct lacp_peerinfo *); -static int lacp_aggregator_is_compatible(const struct lacp_aggregator *, +static bool lacp_aggregator_is_compatible(const struct lacp_aggregator *, const struct lacp_port *); -static int lacp_peerinfo_is_compatible(const struct lacp_peerinfo *, +static bool lacp_peerinfo_is_compatible(const struct lacp_peerinfo *, const struct lacp_peerinfo *); static struct lacp_aggregator *lacp_aggregator_get(struct lacp_softc *, @@ -1367,44 +1367,40 @@ lacp_fill_aggregator_id_peer(struct lacp_peerinfo *lpi_aggr, * lacp_aggregator_is_compatible: check if a port can join to an aggregator. */ -static int +static bool lacp_aggregator_is_compatible(const struct lacp_aggregator *la, const struct lacp_port *lp) { if (!(lp->lp_state & LACP_STATE_AGGREGATION) || !(lp->lp_partner.lip_state & LACP_STATE_AGGREGATION)) { - return (0); + return (false); } - if (!(la->la_actor.lip_state & LACP_STATE_AGGREGATION)) { - return (0); - } + if (!(la->la_actor.lip_state & LACP_STATE_AGGREGATION)) + return (false); - if (!lacp_peerinfo_is_compatible(&la->la_partner, &lp->lp_partner)) { - return (0); - } + if (!lacp_peerinfo_is_compatible(&la->la_partner, &lp->lp_partner)) + return (false); - if (!lacp_peerinfo_is_compatible(&la->la_actor, &lp->lp_actor)) { - return (0); - } + if (!lacp_peerinfo_is_compatible(&la->la_actor, &lp->lp_actor)) + return (false); - return (1); + return (true); } -static int +static bool lacp_peerinfo_is_compatible(const struct lacp_peerinfo *a, const struct lacp_peerinfo *b) { if (memcmp(&a->lip_systemid, &b->lip_systemid, - sizeof(a->lip_systemid))) { - return (0); + sizeof(a->lip_systemid)) != 0) { + return (false); } - if (memcmp(&a->lip_key, &b->lip_key, sizeof(a->lip_key))) { - return (0); - } + if (memcmp(&a->lip_key, &b->lip_key, sizeof(a->lip_key)) != 0) + return (false); - return (1); + return (true); } static void diff --git a/sys/net/ieee8023ad_lacp.h b/sys/net/ieee8023ad_lacp.h index 0610ed855d50..629bdc25cfc5 100644 --- a/sys/net/ieee8023ad_lacp.h +++ b/sys/net/ieee8023ad_lacp.h @@ -307,7 +307,7 @@ void lacp_linkstate(struct lagg_port *); void lacp_req(struct lagg_softc *, void *); void lacp_portreq(struct lagg_port *, void *); -static __inline int +static __inline bool lacp_isactive(struct lagg_port *lgp) { struct lacp_port *lp = LACP_PORT(lgp); @@ -315,26 +315,23 @@ lacp_isactive(struct lagg_port *lgp) struct lacp_aggregator *la = lp->lp_aggregator; /* This port is joined to the active aggregator */ - if (la != NULL && la == lsc->lsc_active_aggregator) - return (1); - - return (0); + return (la != NULL && la == lsc->lsc_active_aggregator); } -static __inline int +static __inline bool lacp_iscollecting(struct lagg_port *lgp) { struct lacp_port *lp = LACP_PORT(lgp); - return ((lp->lp_state & LACP_STATE_COLLECTING) != 0); + return (lp->lp_state & LACP_STATE_COLLECTING); } -static __inline int +static __inline bool lacp_isdistributing(struct lagg_port *lgp) { struct lacp_port *lp = LACP_PORT(lgp); - return ((lp->lp_state & LACP_STATE_DISTRIBUTING) != 0); + return (lp->lp_state & LACP_STATE_DISTRIBUTING); } /* following constants don't include terminating NUL */ diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index 8a62286db81b..74f8c41a125e 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -2577,7 +2577,7 @@ lagg_lacp_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) * If the port is not collecting or not in the active aggregator then * free and return. */ - if (lacp_iscollecting(lp) == 0 || lacp_isactive(lp) == 0) { + if (!lacp_iscollecting(lp) || !lacp_isactive(lp)) { m_freem(m); return (NULL); } From nobody Mon Apr 10 04:16:48 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvwf82W3Rz44kYT; Mon, 10 Apr 2023 04:16: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvwf81lJgz4Mpy; Mon, 10 Apr 2023 04:16:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100208; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zZO2qHhplhWP5l6VRscPq5blnH135ya7Ha5QLYw6CJc=; b=wwzwpeQC6b8fHz9e+DJfFElkByv64o/dcbFnsxxwErz2pdK4tWawoTI/arjEkDEbhxuRvX gFRf5ZKZ0S/FUcYc57bPnC77FhVCMf/nHYsgwXMBW1SVbH9bcKHJnK34qv4fDdodBMgGmn KSkJZ6kGw/AGqlfdaZt/XVb5x6sQBCqfV5rFRGahTvf5K+DBMZA9FRr3MSskK/sYXbftxn 4mjMlvqTtL5SeDhDRZMOCtJhjQbRhKA7XNJ/Dkt03NRg7oRw68T5/FVmBzpB6GySs4fvGR Ott25W5hgE0K2OB5upMOaEPk39AuH1ioZ7jriXc4PoQAMqB+vRnkLLlq9p7SVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100208; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zZO2qHhplhWP5l6VRscPq5blnH135ya7Ha5QLYw6CJc=; b=dmj8pjpmLmpiyOsamN0hsxkWDA5KwaMdJ7j8KPEsTAHrLdpWgg4QaoxSZ5VrdsJaXJMsqh 5/7stlNjVmvb+XNJZbQD5N/bDEKlWO2ETVLHkKg8gP4pIsMFK8tQglqnCO8pGLvtPPJfLz PN04pn1LHr6A5E8GnAMRe0hfW6nJ/0ouCcDSm8DZNwvlIkHwTl4EEkFSYVJFVtiZyVoARA QSv5rdH4+iaWl73Yu8rUehxWZnHubO2R3t0exuudLI4+wOHLfIwzFMyHZtDyk0JMJKvQG2 7FvCaSD1JDbsAsHmFcDfkK5uSaNVsHgA6Q3s+S4L2XzB2fQ6POPjmKEfbS/wqA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681100208; a=rsa-sha256; cv=none; b=QxchdFLJpZH3Tow8YTtNd80EQ/jruxYL5rqsJ/7Ai6+QTTDbzdnJmSm/V54sU4N9NXi2Hy u9DDM6f4LH2nQ4L/ZxuVO8JRuhwoApUiaoNLfwtBkcgMMPZEqtIfWUHAyVLSrhIepwo5Bf DbtCdcmJk1btkZzYwEYroAagMuZmXmYtzbbxI76SAybnZgFwhttJIp3lUrAL/gZReiPn/g qNv00ABq7PWKPiwmvIrf+zkGj+t8RMvmm0cK68ABAvG3PuMXzkzsgf7kZomsNhclpfcusR q86PirJv222A9fFRn05ztX0tHx2IDxLBMOpWlwdS21aPX1JsEE3wJQqoYwDdvw== 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 4Pvwf80pXFzbmG; Mon, 10 Apr 2023 04:16:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A4GmP9039620; Mon, 10 Apr 2023 04:16:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A4GmZS039619; Mon, 10 Apr 2023 04:16:48 GMT (envelope-from git) Date: Mon, 10 Apr 2023 04:16:48 GMT Message-Id: <202304100416.33A4GmZS039619@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: ed44ba413c54 - stable/13 - lagg(4): Tap traffic after protocol processing List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: ed44ba413c544c0aa05b3456bc430c816a0e3168 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=ed44ba413c544c0aa05b3456bc430c816a0e3168 commit ed44ba413c544c0aa05b3456bc430c816a0e3168 Author: Zhenlei Huang AuthorDate: 2023-04-02 17:01:51 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 04:15:04 +0000 lagg(4): Tap traffic after protocol processing Different lagg protocols have different means and policies to process incoming traffic. For example, for failover protocol, by default received traffic is only accepted when they are received through the active port. For lacp protocol, LACP control messages are tapped off, also traffic will be dropped if they are received through the port which is not in collecting state or is not joined to the active aggregator. It confuses if user dump and see inbound traffic on lagg(4) interfaces but they are actually silently dropped and not passed into the net stack. Tap traffic after protocol processing so that user will have consistent view of the inbound traffic, meanwhile mbuf is set with correct receiving interface and bpf(4) will diagnose the right direction of inbound packets. PR: 270417 Reviewed by: melifaro (previous version) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D39225 (cherry picked from commit 5f3d0399e903573e9648385ea6585e54af4d573f) --- sys/net/if_lagg.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index 74f8c41a125e..3bbcb4f8e4cd 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -2070,12 +2070,14 @@ lagg_input_ethernet(struct ifnet *ifp, struct mbuf *m) return (NULL); } - ETHER_BPF_MTAP(scifp, m); - m = lagg_proto_input(sc, lp, m); - if (m != NULL && (scifp->if_flags & IFF_MONITOR) != 0) { - m_freem(m); - m = NULL; + if (m != NULL) { + ETHER_BPF_MTAP(scifp, m); + + if ((scifp->if_flags & IFF_MONITOR) != 0) { + m_freem(m); + m = NULL; + } } return (m); @@ -2098,12 +2100,14 @@ lagg_input_infiniband(struct ifnet *ifp, struct mbuf *m) return (NULL); } - INFINIBAND_BPF_MTAP(scifp, m); - m = lagg_proto_input(sc, lp, m); - if (m != NULL && (scifp->if_flags & IFF_MONITOR) != 0) { - m_freem(m); - m = NULL; + if (m != NULL) { + INFINIBAND_BPF_MTAP(scifp, m); + + if ((scifp->if_flags & IFF_MONITOR) != 0) { + m_freem(m); + m = NULL; + } } NET_EPOCH_EXIT(et); From nobody Mon Apr 10 04:16:49 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvwf96xBRz44kSX; Mon, 10 Apr 2023 04:16: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvwf943BXz4Mkn; Mon, 10 Apr 2023 04:16:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100209; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fyJF/FYjOwXVUVl3PLloQA4hs8DTMMLikhp/UB6BSLQ=; b=QjUNF1Q+VbFw605ysioWLjo2CL6f15Hx/EzoKgcF2Gr9zHn4ViI0swROEK0mUMN2UZkqlo DNhR0TjksAEE8ly8jZ8gcvggUHgeAWIivwKfxRKdYu/LxtD2S84sxPmaafxN0kHWAGNLiZ /QVNUWEzLqP0aZ2Hr13azjIg5HVd8/cc+d8JakNv2KIeluEx8VJ/3Lf8TXsZZ1c8UnvCOs 9ou38m/sSKOLZjO1Am+wRzJrTsS4so7pFexngpiBR+JG26aL74DF7IR66VLssb5rquGnVP +w9zYkx0lEh3QE50wfTtEs7WxuLkgB1Fjsd1Ag7Z2m8K1/WylXFp6DpfqUq+9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100209; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fyJF/FYjOwXVUVl3PLloQA4hs8DTMMLikhp/UB6BSLQ=; b=pS5V99g0hw9hJJKxX9TsJ61cgP37HHrDbUdWhRHcjBcanswWuywfnHEkBGWCxXENXKkUCL eZI/YU7NtZ6m8zQAXR1VgLcTjyJIWUHb4AIotc7737pKZe4hsJ//0ODZCQXJ0J2u38zRel r6EejtUEwKAv5wVMiCuSrvb4dfVIl6ssVdnc9Yu7ViNE9rvYf0AzB+fTscdN5ni+ZYLkvm INKg4wmwjUzJkXWZ2Z8GfpmyrKAt4I4HwGlusDax2g2NAW4dTm2zXh3QZBvAPZ05L5RY7C 9xHyRDsSXAMSOvjWhsJktqJYkY4Ds1pW0Tb49LkhEjAFL59zLXZrfPLm5si/9w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681100209; a=rsa-sha256; cv=none; b=QfHwJhARbLJ0xvn+Q6sSkU8EZPQKaIy28Q/F0oAl8zXRKKW7QtNnJhFykXx1LytCklQ7V4 qlTJ53lLKFs/ZbgpaLY/1O6wOXwI4vmuRs+3gL5DhP49CWvCXzc6kER4kHJ+kzrJBqobYO zuukbdoX7TLVqVk/Dpf4790T3NqWmdCIhQbGzeQKx3rjWFUYwgGFORBmi8CWfXKyf79zkj moVOUmxrfaKIWQVSJ1iH+y5o3K5lAHkDw2oXTKhQjWFvyYdEQScfWWWG/yd0kW12BvdTT7 ymL8c1r1C9ysDXdq8p+QQpLCyRa0sA3aakUvp1vPOZ3vlhjNVPl5llXs5EMjfg== 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 4Pvwf91vhszZvm; Mon, 10 Apr 2023 04:16:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A4Gnjp039639; Mon, 10 Apr 2023 04:16:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A4Gnua039638; Mon, 10 Apr 2023 04:16:49 GMT (envelope-from git) Date: Mon, 10 Apr 2023 04:16:49 GMT Message-Id: <202304100416.33A4Gnua039638@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: 5d45e09d50e6 - stable/13 - infiniband: Widen NET_EPOCH coverage List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 5d45e09d50e648a75667c9b12b204eb62fa60ed2 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=5d45e09d50e648a75667c9b12b204eb62fa60ed2 commit 5d45e09d50e648a75667c9b12b204eb62fa60ed2 Author: Zhenlei Huang AuthorDate: 2023-04-02 16:51:49 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 04:15:04 +0000 infiniband: Widen NET_EPOCH coverage From static code analysis, some device drivers (cxgbe, mlx4, mthca, and qlnx) do not enter net epoch before lagg_input_infiniband(). If IPoIB interface is a member of lagg(4) interface, and after returning from lagg_input_infiniband() the receiving interface of mbuf is set to lagg(4) interface, then when concurrently destroying the lagg(4) interface, there is a small window that the interface gets destroyed and becomes invalid before infiniband_input() re-enter net epoch, thus leading use-after-free. Widen NET_EPOCH coverage to prevent use-after-free. Thanks hselasky@ for testing with mlx5 devices. Reviewed by: hselasky Tested by: hselasky MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D39275 (cherry picked from commit 90820ef121b38479f2479c03c12c69f940f5fa33) --- sys/net/if_infiniband.c | 4 ++-- sys/net/if_lagg.c | 5 +---- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/sys/net/if_infiniband.c b/sys/net/if_infiniband.c index 4dfbd5272d15..9bf4756f2556 100644 --- a/sys/net/if_infiniband.c +++ b/sys/net/if_infiniband.c @@ -411,6 +411,7 @@ infiniband_input(struct ifnet *ifp, struct mbuf *m) int isr; CURVNET_SET_QUIET(ifp->if_vnet); + NET_EPOCH_ENTER(et); if ((ifp->if_flags & IFF_UP) == 0) { if_inc_counter(ifp, IFCOUNTER_IERRORS, 1); @@ -498,10 +499,9 @@ infiniband_input(struct ifnet *ifp, struct mbuf *m) mac_ifnet_create_mbuf(ifp, m); #endif /* Allow monitor mode to claim this frame, after stats are updated. */ - NET_EPOCH_ENTER(et); netisr_dispatch(isr, m); - NET_EPOCH_EXIT(et); done: + NET_EPOCH_EXIT(et); CURVNET_RESTORE(); } diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index 3bbcb4f8e4cd..687c07971d60 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -2086,16 +2086,14 @@ lagg_input_ethernet(struct ifnet *ifp, struct mbuf *m) static struct mbuf * lagg_input_infiniband(struct ifnet *ifp, struct mbuf *m) { - struct epoch_tracker et; struct lagg_port *lp = ifp->if_lagg; struct lagg_softc *sc = lp->lp_softc; struct ifnet *scifp = sc->sc_ifp; - NET_EPOCH_ENTER(et); + NET_EPOCH_ASSERT(); if ((scifp->if_drv_flags & IFF_DRV_RUNNING) == 0 || lp->lp_detaching != 0 || sc->sc_proto == LAGG_PROTO_NONE) { - NET_EPOCH_EXIT(et); m_freem(m); return (NULL); } @@ -2110,7 +2108,6 @@ lagg_input_infiniband(struct ifnet *ifp, struct mbuf *m) } } - NET_EPOCH_EXIT(et); return (m); } From nobody Mon Apr 10 04:16:50 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvwfC0zCtz44kg5; Mon, 10 Apr 2023 04:16: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvwfB4zg4z4N8F; Mon, 10 Apr 2023 04:16:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100210; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iHLLcvmQ+iwAmizhTk49KClSLJhpGuvd1IizL/Iw8Ss=; b=wMUj7sYTyASYffeUJeO0K7IAGcXRHjFcy8C4zwBCfMcfkBr/NPIwrd8voV4RgO78wwwwEk U1huv2ko5NtopgF3fOoSG1NIUfpfiknBImKPDZK1moGIPQ4kKzQxhqJBD6An6LzoucZP2d r5W6v2kqvN55yDWVXlO3N7f2XARfCZi6RDafmUz+gshomT/rAkplxBlma1nvGM0JWK+NX7 8b0NcNu9NkMqjezEkLugh1QeBwN5/942MiwGk4bJ0GAF2byZsM57g6LN/ueXoG2BojdprG 4/T4o8lk38rOtKMx+yyY5MPvLcm3VfwQwHgn5AMz3wsewLcFXzbZNVNTmqAL2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100210; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iHLLcvmQ+iwAmizhTk49KClSLJhpGuvd1IizL/Iw8Ss=; b=LwkLz2tk4p0meKcj/e4lZr5r0ZwO9yIn78sSjYiMUr8Mz63OluJlbkFgrfHW8O/3Ro7voA 2xLH0k37t9L/eUjgLZXNpygKJ44pa34PodHByubA+B2BRQC9jKhFTOPxyYnHmrMHbhu1h8 bn8SlIFLzN5ZWk8jtCEbSHGakL3djTk8Agdd6rHi8axuWQhh8q4yu2N88QVLzhogSfcxih 30t4YmN/WiafHoFOhtcF/YsEkMNyDmqIZrCrJiJM/Ij5Sq1XCmuHxITjyZhx89R+UiJljx C69z1IcAkO4illFVMLD0KOOQ0LI7+YvatELQ1nuiCx6JqiqjqmaxPr7o8HYiAQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681100210; a=rsa-sha256; cv=none; b=SfoYJSCsUOwY02JQGaOjvNeFIa8MRSjvWD/AeCvBgADCdTCC2KycDIIqk/RGFhgreKMK1h 9gbRp3HoUeArKGWeQaRvsWSOVRPKrM+ESN8Jd3f+jEyE5fdFcpfz6mqvckMfViLEKMzQdk g0AY2kHNbZPGXd0SMFpaMBhN6ntWYKkTcheNkcB+zwMhwvjewgQ2H3eyqKFGXptq8wuW/l tJtD2APvlvk2cZT9wdE/FtjKFi8coGvo2ndphG8VRvvO/LRrisg7Le6+HffXiF7e+fDuYc HamM4GMDo8OCZYSXdHA9ZR4ofT1MHrbnhFfC6gzKQMLnZm0U/dNeoVJ7bwN0Zw== 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 4PvwfB2y0xzbmH; Mon, 10 Apr 2023 04:16:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A4Go4V039658; Mon, 10 Apr 2023 04:16:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A4GoEL039657; Mon, 10 Apr 2023 04:16:50 GMT (envelope-from git) Date: Mon, 10 Apr 2023 04:16:50 GMT Message-Id: <202304100416.33A4GoEL039657@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: ba169bddbc9d - stable/13 - ifconfig: Improve VLAN identifier parsing List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: ba169bddbc9da0dec833deb9cd274a68ec1bfd9c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=ba169bddbc9da0dec833deb9cd274a68ec1bfd9c commit ba169bddbc9da0dec833deb9cd274a68ec1bfd9c Author: Zhenlei Huang AuthorDate: 2023-04-02 17:54:31 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 04:15:05 +0000 ifconfig: Improve VLAN identifier parsing VLAN identifier 0xFFF is reserved. It must not be configured or transmitted. Also validate during parsing to prevent potential integer overflow. Reviewed by: #network, melifaro Fixes: c7cffd65c5d85 Add support for stacked VLANs (IEEE 802.1ad, AKA Q-in-Q) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D39282 (cherry picked from commit 28b498e65ab40975ea12393498bacd6249b7204c) --- sbin/ifconfig/ifvlan.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/sbin/ifconfig/ifvlan.c b/sbin/ifconfig/ifvlan.c index 8b7b6e9daf9a..40e1f697db7a 100644 --- a/sbin/ifconfig/ifvlan.c +++ b/sbin/ifconfig/ifvlan.c @@ -121,7 +121,7 @@ vlan_parse_ethervid(const char *name) { char ifname[IFNAMSIZ]; char *cp; - int vid; + unsigned int vid; strlcpy(ifname, name, IFNAMSIZ); if ((cp = strrchr(ifname, '.')) == NULL) @@ -134,9 +134,12 @@ vlan_parse_ethervid(const char *name) errx(1, "invalid vlan tag"); vid = *cp++ - '0'; - while ((*cp >= '0') && (*cp <= '9')) + while ((*cp >= '0') && (*cp <= '9')) { vid = (vid * 10) + (*cp++ - '0'); - if ((*cp != '\0') || (vid & ~0xFFF)) + if (vid >= 0xFFF) + errx(1, "invalid vlan tag"); + } + if (*cp != '\0') errx(1, "invalid vlan tag"); /* From nobody Mon Apr 10 04:16:51 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvwfD0tSmz44kcw; Mon, 10 Apr 2023 04:16: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvwfC5LhRz4N8c; Mon, 10 Apr 2023 04:16:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100212; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=utSa5J5D96YLji/qGk/AndjhzoiYhN+NJM5Uqjl0C9o=; b=LKshVf3MW2XN7NwIqSLXDr6kA1ztQ12UVEMtZLTVXzag4poD8YEP+YKFiUudAXWXQzXKrw NmUcQLnKduQUEBGp1CzsfJXzs0BejPYTAK9LxacKMcencUZgmBL42wpoSYkHEnOkFJ5+S5 v8iMKhTgFBZzcMJR5L6J2Dad6zc4tn6J1zbtlSfs5s3oGrXVZsK9mcjh2ZKBn7NmTFYx6G CQ8WgvGcks6byjNUPYbY2MEPjo49J+jpaNf0zUz4X8Aw8z/mcwNQvMZzLPx45mTu8as+9Z k6QlSaYSBXYGXTOigKmoDJHt0gItyXHK8/gYWiVkV0hoR5BkWUTUfIWMJ0QeSw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681100211; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=utSa5J5D96YLji/qGk/AndjhzoiYhN+NJM5Uqjl0C9o=; b=m+7+S9k/YJs20eNlTTfrZjoImUdJp6GouAJ/Jhp7Qr/6oYIToeUkKaOaarjjAmxtrlx+uH +BTdC6hszOz4RaVAUU6jJPLKqMM32Kk57f1nzpKXIjHazx6ioLb/jWamavFE3s9xIKdq34 ABlP6skk30bC3oZB0s8tgnVmmFiNREwqQxJg123VhJJFW7y7vGEl9vH++t3LsCVOIYtl3/ s0WI1Zn7n8cw/yx1D/8YxYja02phtSQ0HhwP7D9sRSu0hNv8mjDBKUOMTh6lV+5qBBXXnp 8ovXT8lTrMgxrqj8Hy0+vEahFABGuWETGaFTdKZinOHXZDTZyIArgovBfL7sGQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681100211; a=rsa-sha256; cv=none; b=fkTHz4d6gQL1PPwMWWA1tNHMNBEZCk4aP24jLMUAlVIfoQdCa4x5KRkU7oseCe2XMuZN/a uBLAPXWBy32mnJHaTgdwo7lEcBRcxY1uDGCVMzixKjPO79DCsfLsvnX7NPC+/gaEgSplgO uyAIex7IEUvStLqTJBzuiofzVUVT1b4nxi/S+S1onrTywtZkn+Z9so/snT8g++2jXBPDKD 7ablvkgWWzUCsoUKjGQhZEmsu5tkOnxnEgewctDSKvzFMqteX3ZtbhwIlTNpPWsvZwVE8a MLYXwh9awWqPTkMgNdcOf5WSnjPn59YIqzk20N9YyrW3cCYl7Wo5hI/OUvkbiw== 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 4PvwfC3tQ2zbSY; Mon, 10 Apr 2023 04:16:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A4GpTp039683; Mon, 10 Apr 2023 04:16:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A4GpA2039682; Mon, 10 Apr 2023 04:16:51 GMT (envelope-from git) Date: Mon, 10 Apr 2023 04:16:51 GMT Message-Id: <202304100416.33A4GpA2039682@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: bab5ce8deafb - stable/13 - ifconfig: Fix configuring if_bridge with additional operating parameters List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: bab5ce8deafb00683fb8319208750981e68d309c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=bab5ce8deafb00683fb8319208750981e68d309c commit bab5ce8deafb00683fb8319208750981e68d309c Author: Zhenlei Huang AuthorDate: 2023-04-07 14:25:41 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 04:15:05 +0000 ifconfig: Fix configuring if_bridge with additional operating parameters For clone create and rename operations, the interface name get back can be different from the one passed to ioctl(). Use the interface name we get back so that ifconfig will not return unexpected ENXIO. PR: 270618 Reviewed by: kp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D39396 (cherry picked from commit 09e5e3d598604167c1fb05e5cd0f41ed83314517) --- sbin/ifconfig/ifbridge.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/ifconfig/ifbridge.c b/sbin/ifconfig/ifbridge.c index 2bd9c96f2489..3a78b068eb5d 100644 --- a/sbin/ifconfig/ifbridge.c +++ b/sbin/ifconfig/ifbridge.c @@ -91,7 +91,7 @@ do_cmd(int sock, u_long op, void *arg, size_t argsize, int set) memset(&ifd, 0, sizeof(ifd)); - strlcpy(ifd.ifd_name, ifr.ifr_name, sizeof(ifd.ifd_name)); + strlcpy(ifd.ifd_name, name, sizeof(ifd.ifd_name)); ifd.ifd_cmd = op; ifd.ifd_len = argsize; ifd.ifd_data = arg; From nobody Mon Apr 10 04:41:12 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvxBP362Fz44lZs; Mon, 10 Apr 2023 04:41:17 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from omta001.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 4PvxBN3v6Sz47Zq; Mon, 10 Apr 2023 04:41:16 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Authentication-Results: mx1.freebsd.org; none Received: from shw-obgw-4004a.ext.cloudfilter.net ([10.228.9.227]) by cmsmtp with ESMTP id lUbNpxsYuuZMSljL9pDcS5; Mon, 10 Apr 2023 04:41:15 +0000 Received: from spqr.komquats.com ([70.66.148.124]) by cmsmtp with ESMTPA id ljL7pCPLR3fOSljL8pWllI; Mon, 10 Apr 2023 04:41:14 +0000 X-Authority-Analysis: v=2.4 cv=J8G5USrS c=1 sm=1 tr=0 ts=6433936a a=Cwc3rblV8FOMdVN/wOAqyQ==:117 a=Cwc3rblV8FOMdVN/wOAqyQ==:17 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=dKHAf1wccvYA:10 a=6I5d2MoRAAAA:8 a=NEAV23lmAAAA:8 a=YxBL1-UpAAAA:8 a=EkcXrb_YAAAA:8 a=kenwOhc8DBI5jldCQOAA:9 a=QEXdDO2ut3YA:10 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 a=LK5xJRSDVpKd5WXXoEvA:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTP id E065F4964; Sun, 9 Apr 2023 21:41:12 -0700 (PDT) Received: from localhost (localhost [IPv6:::1]) by slippy.cwsent.com (Postfix) with ESMTP id A6F661AF; Sun, 9 Apr 2023 21:41:12 -0700 (PDT) Date: Sun, 9 Apr 2023 21:41:12 -0700 From: Cy Schubert To: Charlie Li Cc: Rick Macklem , Martin Matuska , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 2a58b312b62f - main - zfs: merge openzfs/zfs@431083f75 Message-ID: <20230409205826.7802259d@cschubert.com> In-Reply-To: <707e4671-d746-aa23-e340-6eb8f50f78c6@freebsd.org> References: <202304031513.333FD6qw014903@gitrepo.freebsd.org> <20230403231444.CF48911F@slippy.cwsent.com> <20230403232549.73E331A2@slippy.cwsent.com> <20230403235851.84C0467@slippy.cwsent.com> <20230404052811.DA2172C1@slippy.cwsent.com> <7c75b934-cb0a-b32e-bc19-b1e15e8cf3aa@freebsd.org> <20230409154042.0685a273@cschubert.com> <707e4671-d746-aa23-e340-6eb8f50f78c6@freebsd.org> Organization: KOMQUATS X-Mailer: Claws Mail 3.19.0 (GTK+ 2.24.33; amd64-portbld-freebsd14.0) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-CMAE-Envelope: MS4xfP8kN/cfLkLnclXeIJBY4MibOoJ90Rl77sNndKyFS/7VylEpSY/MJqe3+vlwj2AOhr3VHsQlpUj7Y+pLB7qCFl/aLFOUHw7uxnAH0oQ7GBCVsnd1uC7t 9XTMqyiuD3nsQHBwbjAcUyv+i3xDjzUjEL0W1HXiZ2iJhqmF/wu6nKDwGUjurWX+zulOkBpTj0qN1gTrCehDUJEsLn1qcEwW8yMT+UukLfVN9FFbkoZVLQja UFW+E35bQjsg96RI2l3S/xOeNqoWEBXY5NjzNGg9chfQO1vWDRAQMgiYUl0IsCLuVWXdQYmeKDOFGhYLB3N86PU8m4G4/phrO8YH80Jk4n2UbKf4zCdysRji xC9HUjXRcMQhhSynoSdlVvrjgwUSuUw6/13OveK7Yj58+8QMwZ8= X-Rspamd-Queue-Id: 4PvxBN3v6Sz47Zq X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; TAGGED_RCPT(0.00)[]; ASN(0.00)[asn:16509, ipnet:3.96.0.0/15, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N On Sun, 9 Apr 2023 23:25:44 -0400 Charlie Li wrote: > Charlie Li wrote: > > Cy Schubert wrote: =20 > >>> The file corruption was prior to enabling block_cloning but after=20 > >>> this import. > >>> =20 > >> > >> This regression was fixed=C2=A0 by mjg's commit. I'm not sure which (I= 'm=20 > >> presently AFK). > >> =20 > > Both the block_cloning panic and file corruption are still happening as= =20 > > of 351e4592f64b, which is after any such commit here, unless referring= =20 > > to https://github.com/openzfs/zfs/pull/14723 . > > =20 > ...which was committed here prior to 351e4592f64b, so the issues still=20 > persist. >=20 Hmm, interesting. I'm experiencing no such panics nor corruption since the commit. Reading a previous email of yours from today block_cloning is not enabled. Is it possible that before the regression was fixed, while it was wreaking havoc in your zpool, that your zpool became irreversibly corrupted resulting in panics, even with the fixed code? One way, probably the best way, to test would be to revert back to the commit prior to the import. If you still experience panics and corruption, your zpool is damaged. At the moment we don't know if the code is still broken or if it has been fixed but residual damage is still causing creeping rot and panics. I don't know if zpool scrub can fix this -- reading one comment on FreeBSD-current, zpool scrub fails to complete. I'm not convinced, yet, that the problem code has not been fixed. We don't know if the panics are a result of corruption as a result of the regression. Would it be best if we reverted the seven commits to main? I don't know. I could argue it either way. My problems, on four machines, have been fixed by the subsequent commits. We don't know if there are other regressions or if the current problems are due to corruption caused writes prior to patches addressing the regression. Maybe reverting the seven commits and taking a watch for further fallout approach, whether the panics and problems persist post revert. If the problems persist post revert we know for sure the regression has caused some permanent corruption. This is a radical option. IMO, I'm torn whether a revert would be the best approach or not. It has its merits but significant limitations too. --=20 Cheers, Cy Schubert FreeBSD UNIX: Web: https://FreeBSD.org NTP: Web: https://nwtime.org e^(i*pi)+1=3D0 From nobody Mon Apr 10 04:58:11 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvxZ4439Bz44mPp; Mon, 10 Apr 2023 04:58:20 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvxZ40sqTz3DZj; Mon, 10 Apr 2023 04:58:19 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: from tom.home (kib@localhost [127.0.0.1]) by kib.kiev.ua (8.17.1/8.17.1) with ESMTPS id 33A4wC6p008438 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Mon, 10 Apr 2023 07:58:15 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 33A4wC6p008438 Received: (from kostik@localhost) by tom.home (8.17.1/8.17.1/Submit) id 33A4wBIU008437; Mon, 10 Apr 2023 07:58:11 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Mon, 10 Apr 2023 07:58:11 +0300 From: Konstantin Belousov To: "Jason A. Harmening" Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 7b6fe2428a97 - main - DEBUG_VFS_LOCKS: use witness if available Message-ID: References: <202304092134.339LYYY5081080@gitrepo.freebsd.org> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.0 X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on tom.home X-Rspamd-Queue-Id: 4PvxZ40sqTz3DZj X-Spamd-Bar: ---- X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US] X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-ThisMailContainsUnwantedMimeParts: N On Sun, Apr 09, 2023 at 07:14:35PM -0500, Jason A. Harmening wrote: > On Sun, Apr 09, 2023 at 09:34:34PM +0000, Konstantin Belousov wrote: > > The branch main has been updated by kib: > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=7b6fe2428a97921e8df882d0a24b87094c37b468 > > > > commit 7b6fe2428a97921e8df882d0a24b87094c37b468 > > Author: Konstantin Belousov > > AuthorDate: 2023-04-08 06:15:00 +0000 > > Commit: Konstantin Belousov > > CommitDate: 2023-04-09 21:34:12 +0000 > > > > DEBUG_VFS_LOCKS: use witness if available > > > > The assert_vop_locked messages are ignored, and file/line information > > is not too useful. Fixing this without changing both witness and VFS > > asserts KPIs is not possible. > > What was the motivation for this change? I thought it was obvious, please look at the old assertion conditions, now in the #else blocks. They are completely unable to handle shared locks. In other words, if the current thread owns the lock shared, or does not, ASSERT_VOP_UNLOCKED/ASSERT_VOP_LOCKED silently do nothing. > At first glance it seems regressive. I've at least found the assert > messages, as well as the vnode state dumping done by vfs_badlock(), > to be really useful for quick debugging of locking issues. This is > especially true when optimization makes the backtrace and frame info > less than useful; see commit 5a4a83fd0e67a0d7787d2f3e09ef0e5552a1ffb6 > for a recent example. This is fair, and I noted it in the commit message. But better working asserts are IMO worth it. Eventually it might be fixed. From nobody Mon Apr 10 05:07:56 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvxn90jD4z44mws; Mon, 10 Apr 2023 05:07: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvxn870TBz3Pr3; Mon, 10 Apr 2023 05:07:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103277; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b7002RgnvwyABP8heD+zbfGqGTuGgnfhS+x21VUrNCk=; b=NbBQxq6H71JfBq/NnPvQETYIIXPVE9Tm6doiJV7+YyhCC4+CUTNu98vAN7qzUnhFX73BPr zgafw+aIjli1MV0rFADr5UU24pjaCkA+HGMMWY5BTngyYgOOT1VkKJzQb99PSAEb7ALX9O SqGLQXHuyVgCbyLiFneBUjuFBDsYgwDvPhwMQSDWaoEIsxV6jOgWjQOqqmX3RTkfPyBnhE B2TfmPvNCL7EHnHfQzGK8TguwLMhVIY1AtwqmtIDzICV6GXEXmmHKpBqXI2HdC0p2TmDXN 76rYiB04ydluSJNftEZ+iKWARxoc8HO1J4DdOwmbIsQR5SRSRvrp1zhofyzVuQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103277; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b7002RgnvwyABP8heD+zbfGqGTuGgnfhS+x21VUrNCk=; b=d84sJHJjagEntzvfxjDtqaLrEsLPKHzpBaAVkSvzjnOT57aJ/87gtXFJnUpuGyc0rFg/HO wDvEa/7AQgGCJrgBPK/fh8p3SRgAeCRihkLikjT7846NccFBXkXgMmhcQvcpZh2Ps6TAvm DWxyW7dVEl/38f4ED3vi9il90QjNJE2GkMuVDg9ninC7kV4qtzibUiGy0zpAhrYr30ePCQ FIXNNeKbPzxgvfrKZQI+/TtH8F02dj90ywjMPxpDiaH7RclEgvXG6xr2pK0vu3UAwSZnMx wPLWMeNGMkVRUIbFzTywp7+GHoxv2Aea+i2mH21iDBMucJoCZ0Z6IqsGGb7N2w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681103277; a=rsa-sha256; cv=none; b=ykwiKdcHss6Sw/aROU6BZpPewCAkna352m7TkrHy3yNng1nsJbgl6RdgVYfse/iqfbHg0+ sO3+Nn01YaKIEnYc6hJBIAk7/KgzZTOtc0jQzO1Gw9cnpxpPJLQYNEkDHzHDC3TNe6sXeQ Wh68DK41j8CbW6GiOSpMELyyGU07ReYtvqnP+9MQq9RxW2SJP0rnQKa2tlxh8rWtD0ODuy uA0zhBH0c24NErv0i07UZy9c/TqD10S9poN88p3izEK2iVznOzNo7+sRMkmsdwrdsLUVI8 rlaVif9IShsuBx4FfNdUFeMsbTz/OmjG5PRd9pnejx/vPNYPp2te7tkQR7xEUg== 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 4Pvxn85nnHzd3l; Mon, 10 Apr 2023 05:07:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A57urC022109; Mon, 10 Apr 2023 05:07:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A57u8O022108; Mon, 10 Apr 2023 05:07:56 GMT (envelope-from git) Date: Mon, 10 Apr 2023 05:07:56 GMT Message-Id: <202304100507.33A57u8O022108@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: 78e05da5c273 - stable/12 - xhci(4): Describe Fresco Logic FL1009 USB 3.0 controller List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 78e05da5c27374dee96239f0178dcc411f67c3bb Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=78e05da5c27374dee96239f0178dcc411f67c3bb commit 78e05da5c27374dee96239f0178dcc411f67c3bb Author: Zhenlei Huang AuthorDate: 2023-03-20 04:00:59 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 05:06:21 +0000 xhci(4): Describe Fresco Logic FL1009 USB 3.0 controller Reviewed by: hselasky MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D38922 (cherry picked from commit 082895ebecb55f342dec918c555309c11e3fe17f) (cherry picked from commit 298d6896b0aca5a4a67c4147b94113ab0a39c9e3) --- sys/dev/usb/controller/xhci_pci.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/dev/usb/controller/xhci_pci.c b/sys/dev/usb/controller/xhci_pci.c index 754b722c8928..84713d66c328 100644 --- a/sys/dev/usb/controller/xhci_pci.c +++ b/sys/dev/usb/controller/xhci_pci.c @@ -117,6 +117,8 @@ xhci_pci_match(device_t self) case 0x10001b73: return ("Fresco Logic FL1000G USB 3.0 controller"); + case 0x10091b73: + return ("Fresco Logic FL1009 USB 3.0 controller"); case 0x11001b73: return ("Fresco Logic FL1100 USB 3.0 controller"); From nobody Mon Apr 10 05:07:57 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvxnB2sVWz44mXH; Mon, 10 Apr 2023 05:07: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvxnB18vHz3Q07; Mon, 10 Apr 2023 05:07:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103278; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DucwUemUKUs956PxeTi8n3WxzClQW2pw8KT0DVSNAN8=; b=OpnWTX3icGsp8gAzARq0QfT9A92g1mAskJsslSANdMmxDCEm+f+q0EH9ITZRnbJCjcI2Yr PZE84fOiEj22Vsuuuu0atSMew0HENdY8ACwmoKL2RoaYEwO9ssd/XEJ5wDy3oH8uCCfsnq Do0IN5ai+6J8V3DV7n2O09uBJstvt9Qlh4F3lNRdS4e05RTT+9yL88RorMNC9GLJbwpdZy fWTfu+WrhBSEzL8Xs9x2d/u53MVgjGehfuUl1Gl/04Xqi+a81bRaZCq2iZlXUnAnMmQz0u PI6zXmOfsBNsam6eGW7QldNsVmO70Zk67UyxQjOCcZFmrRWXzcyovL2d+ty42g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103278; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DucwUemUKUs956PxeTi8n3WxzClQW2pw8KT0DVSNAN8=; b=upjvPuUFemopCdGDkQ9L8t9LKr47kZbWKRmjpw/w/CtGUqFTkcDb6BBxCNIxh3vw+LOvLm rBh1ZHP8e7hQbP/mmBwTQFkes6/y/crDf7CRWtbmzO+s7yr3sqjrAMEJtiYLlfLP8jGOum vjCHUEcxQ8lD+vlrKuO2G9y6wc4ZVggwQGoQmhZ0FYIUOaL94Ie4G8ARllFgwZhjsLNs6P hRUzABiERSdF5y86mxhi6/ZlsxkvrvOrznEO60WgrdvK9CpqQSYkrJAXKhvlqRUixvhbWg TMLNTDQmfafuw3wqEpkuPIrAg4iatVgKz2o9CYfyZYL2pb0r+NghiNH2KG2lDw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681103278; a=rsa-sha256; cv=none; b=vJqk0Rp6+drHH11rAObiwKjvqBOSpy8rBvjCFn0RO1mm/v6ESl3DtxehhPCWp1S5Kzik7l HDr2/NYIi6HLIIt8qIAxMEPtPzRIad48iMov2CTetkWBbwnAyYaGsvKdP6pdneaFpAMgLE T+tdV0Hy9fhoO/rTRCwabhMLjaUdoRFCpVAPo/pF8XkKTuQTNLj/XXonDBOhPYT8r2WA4A G5qM6U21GcJRyRsekhIWBCo7cx7JZ6tZCuNOTJdMkfEXLwu0nrOcnNOcHKka+F9VGCk00b CKek5bI50h6sX+kOyws2Fj5t8OaXZqNL/PF4TRGNuKwAp8AFAGFnGp8eoRMUCQ== 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 4Pvxn96x1hzcdM; Mon, 10 Apr 2023 05:07:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A57vUx022128; Mon, 10 Apr 2023 05:07:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A57vjG022127; Mon, 10 Apr 2023 05:07:57 GMT (envelope-from git) Date: Mon, 10 Apr 2023 05:07:57 GMT Message-Id: <202304100507.33A57vjG022127@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: 731e9e830ff5 - stable/12 - lagg: Various style fixes List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 731e9e830ff57193badf4b468869e5c1700015c3 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=731e9e830ff57193badf4b468869e5c1700015c3 commit 731e9e830ff57193badf4b468869e5c1700015c3 Author: Zhenlei Huang AuthorDate: 2023-03-24 09:55:15 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 05:06:21 +0000 lagg: Various style fixes MFC after: 1 week (cherry picked from commit dcd7f0bd02f407952de42d96e1c2c01ee3460702) (cherry picked from commit 9d1d0667c7fd9955711b39abf17750fd2a9d01fd) --- sys/net/if_lagg.c | 43 +++++++++++++++++++++---------------------- sys/net/if_lagg.h | 2 +- 2 files changed, 22 insertions(+), 23 deletions(-) diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index 6b342167e8e1..9e7a72d7cf0a 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -148,10 +148,10 @@ static int lagg_snd_tag_alloc(struct ifnet *, #endif static int lagg_setmulti(struct lagg_port *); static int lagg_clrmulti(struct lagg_port *); -static int lagg_setcaps(struct lagg_port *, int cap); -static int lagg_setflag(struct lagg_port *, int, int, +static int lagg_setcaps(struct lagg_port *, int cap); +static int lagg_setflag(struct lagg_port *, int, int, int (*func)(struct ifnet *, int)); -static int lagg_setflags(struct lagg_port *, int status); +static int lagg_setflags(struct lagg_port *, int status); static uint64_t lagg_get_counter(struct ifnet *ifp, ift_counter cnt); static int lagg_transmit_ethernet(struct ifnet *, struct mbuf *); static int lagg_transmit_infiniband(struct ifnet *, struct mbuf *); @@ -159,7 +159,7 @@ static void lagg_qflush(struct ifnet *); static int lagg_media_change(struct ifnet *); static void lagg_media_status(struct ifnet *, struct ifmediareq *); static struct lagg_port *lagg_link_active(struct lagg_softc *, - struct lagg_port *); + struct lagg_port *); /* Simple round robin */ static void lagg_rr_attach(struct lagg_softc *); @@ -183,7 +183,7 @@ static struct mbuf *lagg_lb_input(struct lagg_softc *, struct lagg_port *, static int lagg_lb_porttable(struct lagg_softc *, struct lagg_port *); /* Broadcast */ -static int lagg_bcast_start(struct lagg_softc *, struct mbuf *); +static int lagg_bcast_start(struct lagg_softc *, struct mbuf *); static struct mbuf *lagg_bcast_input(struct lagg_softc *, struct lagg_port *, struct mbuf *); @@ -459,7 +459,7 @@ lagg_register_vlan(void *arg, struct ifnet *ifp, u_int16_t vtag) struct lagg_softc *sc = ifp->if_softc; struct lagg_port *lp; - if (ifp->if_softc != arg) /* Not our event */ + if (ifp->if_softc != arg) /* Not our event */ return; LAGG_XLOCK(sc); @@ -478,7 +478,7 @@ lagg_unregister_vlan(void *arg, struct ifnet *ifp, u_int16_t vtag) struct lagg_softc *sc = ifp->if_softc; struct lagg_port *lp; - if (ifp->if_softc != arg) /* Not our event */ + if (ifp->if_softc != arg) /* Not our event */ return; LAGG_XLOCK(sc); @@ -516,7 +516,7 @@ lagg_clone_create(struct if_clone *ifc, int unit, caddr_t params) if_type = IFT_ETHER; } - sc = malloc(sizeof(*sc), M_LAGG, M_WAITOK|M_ZERO); + sc = malloc(sizeof(*sc), M_LAGG, M_WAITOK | M_ZERO); ifp = sc->sc_ifp = if_alloc(if_type); if (ifp == NULL) { free(sc, M_LAGG); @@ -533,7 +533,7 @@ lagg_clone_create(struct if_clone *ifc, int unit, caddr_t params) sc->flowid_shift = V_def_flowid_shift; /* Hash all layers by default */ - sc->sc_flags = MBUF_HASHFLAG_L2|MBUF_HASHFLAG_L3|MBUF_HASHFLAG_L4; + sc->sc_flags = MBUF_HASHFLAG_L2 | MBUF_HASHFLAG_L3 | MBUF_HASHFLAG_L4; lagg_proto_attach(sc, LAGG_PROTO_DEFAULT); @@ -766,7 +766,7 @@ lagg_port_create(struct lagg_softc *sc, struct ifnet *ifp) ifr.ifr_mtu = oldmtu; } - lp = malloc(sizeof(struct lagg_port), M_LAGG, M_WAITOK|M_ZERO); + lp = malloc(sizeof(struct lagg_port), M_LAGG, M_WAITOK | M_ZERO); lp->lp_softc = sc; /* Check if port is a stacked lagg */ @@ -836,7 +836,7 @@ lagg_port_create(struct lagg_softc *sc, struct ifnet *ifp) CK_SLIST_FOREACH(tlp, &sc->sc_ports, lp_entries) { if (tlp->lp_ifp->if_index < ifp->if_index && ( CK_SLIST_NEXT(tlp, lp_entries) == NULL || - ((struct lagg_port*)CK_SLIST_NEXT(tlp, lp_entries))->lp_ifp->if_index > + ((struct lagg_port*)CK_SLIST_NEXT(tlp, lp_entries))->lp_ifp->if_index > ifp->if_index)) break; } @@ -1050,15 +1050,15 @@ fallback: } /* - * Requests counter @cnt data. + * Requests counter @cnt data. * * Counter value is calculated the following way: - * 1) for each port, sum difference between current and "initial" measurements. + * 1) for each port, sum difference between current and "initial" measurements. * 2) add lagg logical interface counters. * 3) add data from detached_counters array. * * We also do the following things on ports attach/detach: - * 1) On port attach we store all counters it has into port_counter array. + * 1) On port attach we store all counters it has into port_counter array. * 2) On port detach we add the different between "initial" and * current counters data to detached_counters array. */ @@ -1432,7 +1432,7 @@ lagg_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) /* Invalid combination of options specified. */ error = EINVAL; LAGG_XUNLOCK(sc); - break; /* Return from SIOCSLAGGOPTS. */ + break; /* Return from SIOCSLAGGOPTS. */ } /* @@ -1481,15 +1481,15 @@ lagg_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) break; case LAGG_OPT_LACP_FAST_TIMO: LACP_LOCK(lsc); - LIST_FOREACH(lp, &lsc->lsc_ports, lp_next) - lp->lp_state |= LACP_STATE_TIMEOUT; + LIST_FOREACH(lp, &lsc->lsc_ports, lp_next) + lp->lp_state |= LACP_STATE_TIMEOUT; LACP_UNLOCK(lsc); lsc->lsc_fast_timeout = 1; break; case -LAGG_OPT_LACP_FAST_TIMO: LACP_LOCK(lsc); - LIST_FOREACH(lp, &lsc->lsc_ports, lp_next) - lp->lp_state &= ~LACP_STATE_TIMEOUT; + LIST_FOREACH(lp, &lsc->lsc_ports, lp_next) + lp->lp_state &= ~LACP_STATE_TIMEOUT; LACP_UNLOCK(lsc); lsc->lsc_fast_timeout = 0; break; @@ -1783,8 +1783,7 @@ lagg_setmulti(struct lagg_port *lp) IF_ADDR_WUNLOCK(scifp); return (ENOMEM); } - bcopy(ifma->ifma_addr, &mc->mc_addr, - ifma->ifma_addr->sa_len); + bcopy(ifma->ifma_addr, &mc->mc_addr, ifma->ifma_addr->sa_len); mc->mc_addr.sdl_index = ifp->if_index; mc->mc_ifma = NULL; SLIST_INSERT_HEAD(&lp->lp_mc_head, mc, mc_entries); @@ -2278,7 +2277,7 @@ lagg_fail_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) * If tmp_tp is null, we've received a packet when all * our links are down. Weird, but process it anyways. */ - if ((tmp_tp == NULL || tmp_tp == lp)) { + if (tmp_tp == NULL || tmp_tp == lp) { m->m_pkthdr.rcvif = ifp; return (m); } diff --git a/sys/net/if_lagg.h b/sys/net/if_lagg.h index de0fdd712b3e..dfab0d1b1c7a 100644 --- a/sys/net/if_lagg.h +++ b/sys/net/if_lagg.h @@ -222,7 +222,7 @@ struct lagg_lb { struct lagg_mc { struct sockaddr_dl mc_addr; - struct ifmultiaddr *mc_ifma; + struct ifmultiaddr *mc_ifma; SLIST_ENTRY(lagg_mc) mc_entries; }; From nobody Mon Apr 10 05:07:59 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvxnC3wz3z44mwv; Mon, 10 Apr 2023 05:07: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvxnC27B7z3Ps1; Mon, 10 Apr 2023 05:07:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103279; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bjC/vmjQFAxXSq5UAh5NUIGkOqn8QYW0mWDf6OsJYp4=; b=raC+oRvW/Z2KWfdikTt+z2/QUBhJK3RZGeMoDxmk1bQnXX55Jc2DsiOCU5xw3gyPWzNXaT fCft+ptCxkssKhmS8eWslHGqCWnyGOSV+xX7C9SF0hF1ht8qtejWVW+92X1BBJTozJfVy6 zHOmJi7sDM6XkiqvEbhHYU6ZdHEYL4y4/OKiaPo31AHPd/qMO7XNLof97M32Mpl7nLb7JZ Ag+A/KhYs5Wi0mhQ7A/LqBM6Hhe3b3wiOMR26xTacEoD4h81ixvgnD396Ir/f0hzcD9oF+ BiDOaV4xmJyslM2tLS2/kXdA9gMj2uTkHu67++IDx+ZpGQA3c7PVze2gGStLHg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103279; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bjC/vmjQFAxXSq5UAh5NUIGkOqn8QYW0mWDf6OsJYp4=; b=bFveibXeeHzqXiVfjWPZIFBrPTKJK7deaMRzoSNEs8oL+VyeXUzyGS+xckPKwpstKAsWPs z/McOCeiXXC4Pf3+hg+y6KPymJRZOQ5/fKDHRll6LdAwgK/wIWDlmaPUZLxbr7KvUvVYjW UGPecnWqWC83cJBYW2cyTifIA1oQs69S9EDCVti7AczveLLTkqxYzfSLNYf7UrUxFWa4cH XTi12mDaJ6atlanEqRnqC6e/H6e+bpyM7TR+TNbCmi358ay5dAxfnqENUZIA1yTROue1cg +KVaMm+oBahLOdU3N/vFDg2lKyEOmsIcJuDeroPe5aC5xVo+c3nJRC3DzY+f5Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681103279; a=rsa-sha256; cv=none; b=IcoHsioQdxRPETenXfUPIonsi4dg203cLOgrKtqsGV5pmeHokxb8P6c27aCGO17PFJqPtV LfsGhIQJkdCpzPVaevzRxj4/g/O0fBDxoMGXMTUrBkWfS02emXudSJ3mix1AIoNImSPtyJ x2DuWuadTlCr5ll/Uyw6kWR3+DGXxWkijY22d5PHZORlc89nKvWvImt6s108AsH0YEI68X wccsGxh2O4KrOQATssIvhLlEXWz5RawepxhMjuOF4NAf2/pKyEVrkTYbCLK8IgMNVEcIrn n3avpqEUz2tI1sFLE15FWTgz3msnUL+iLRfw3nmh7Aq5u9vMLrmcPZ2s/Es3cA== 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 4PvxnC0l5Wzcpp; Mon, 10 Apr 2023 05:07:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A57xdg022147; Mon, 10 Apr 2023 05:07:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A57xdZ022146; Mon, 10 Apr 2023 05:07:59 GMT (envelope-from git) Date: Mon, 10 Apr 2023 05:07:59 GMT Message-Id: <202304100507.33A57xdZ022146@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: f3493c86529e - stable/12 - lagg(4): Make lagg_list and lagg_detach_cookie static List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: f3493c86529e71351776961127ad16a260f752de Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=f3493c86529e71351776961127ad16a260f752de commit f3493c86529e71351776961127ad16a260f752de Author: Zhenlei Huang AuthorDate: 2023-03-29 16:13:02 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 05:06:21 +0000 lagg(4): Make lagg_list and lagg_detach_cookie static They are used internally only. No functional change intended. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D39250 (cherry picked from commit fcac5719a1833ad865ac0a7960ff18319a40dfff) (cherry picked from commit b452382e5c00facd0fab8a8b0bd53d9564689e55) --- sys/net/if_lagg.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index 9e7a72d7cf0a..c4ea1e9e7637 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -105,7 +105,7 @@ static struct { {0, NULL} }; -VNET_DEFINE(SLIST_HEAD(__trhead, lagg_softc), lagg_list); /* list of laggs */ +VNET_DEFINE_STATIC(SLIST_HEAD(__trhead, lagg_softc), lagg_list); /* list of laggs */ #define V_lagg_list VNET(lagg_list) VNET_DEFINE_STATIC(struct mtx, lagg_list_mtx); #define V_lagg_list_mtx VNET(lagg_list_mtx) @@ -114,7 +114,7 @@ VNET_DEFINE_STATIC(struct mtx, lagg_list_mtx); #define LAGG_LIST_LOCK_DESTROY(x) mtx_destroy(&V_lagg_list_mtx) #define LAGG_LIST_LOCK(x) mtx_lock(&V_lagg_list_mtx) #define LAGG_LIST_UNLOCK(x) mtx_unlock(&V_lagg_list_mtx) -eventhandler_tag lagg_detach_cookie = NULL; +static eventhandler_tag lagg_detach_cookie = NULL; static int lagg_clone_create(struct if_clone *, int, caddr_t); static void lagg_clone_destroy(struct ifnet *); From nobody Mon Apr 10 05:08:00 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvxnD3VhNz44mRG; Mon, 10 Apr 2023 05:08: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvxnD2Gxkz3Pm1; Mon, 10 Apr 2023 05:08:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103280; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=i7G1Uqrb7Pgg6PrWvTk+h6Pvq7hltA/mN9ZfK7EDkjI=; b=eD9HGsgA4pjApJvJIotEsu1Hf540njMswdWHN4AGRYLyuu0fhD9U5upZetlw+LNsZebQVz 488j7g9QIVsKlIRLDSvwAt6v9OHfyfqR/I0R73Iju75Hb8etTTm6JAt/TSU7Qv+JuDfQsv 9WHs5YL+O1rjLWJ72S12JQpsVtGp+x/ya5jzsw79vD2sTd0HDiOXF8BcDkn6mB9IDNIrpx L9jM1SEcJVOv1S9bWR3ooCWK6tLa58z5JAbE7Xv0SlTVlV2EO0CYw6g1kTahDZaHfM8vlY rp3YmvwHWpSOHnqdQRNcNUfuYHNx/ciA4c2cIm5kcJ+kf+VhMV/9msugg76zjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103280; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=i7G1Uqrb7Pgg6PrWvTk+h6Pvq7hltA/mN9ZfK7EDkjI=; b=bpOVjo3Dtdv5fAwDAlbM2/wHuv5EP75v+3+A3jDaecRVONOOLKHAWRW7i8hJ4J2/W4boQa 8Z+6s5IGQnpxoIda1LsxfbpgsJyTx5pWuixWtYUFkB/AfqnYGFEBqYE3xommHuyZmbN6S1 YjmjSDk9kv3XvWrVblZ6F0N2FOiFwOZO+ESO1UXxAXJuUFXl0U0n8bMBIoved1ocKNdca+ 1OuDd54WAAYU7qPOCBvO243pWj7zxm8TIrhFtXTGFl7HD/PvNgNWub4NxlnjldoMSMXgxm 7e4K7Os3pRIzIcOrjhX/bLbI4nD0tn01L9G3NPirOmQSWI7IhForCW1di68jpA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681103280; a=rsa-sha256; cv=none; b=YYl7Swid6ekdnTojImRLX1/7QnPCbNlMZ3YlFrnJqopmXY23GDnwlYhf2VT/K6mIU6GYOo Q+CnSXvEqqfJVQCc1Gc0WHFI4B/P85S0vj7R3KnGyLGSW5EXaPozyeuqGBzMrytqK6aODD EbVzoRHI6yyXUPZ98UmZZe3fxWzqOtXPJGuv5YNbdMj+AgYArn0ersaK1/HnfI4kjUSGWb 8d30bMwRu3yOs6OquuwPqA4C18KXnp1MzUoXcvS2AYpj5uJKnbYQeAUta20lqCnk35LZRE 2owoxLZDL98ERyrsykvabTFcye5XRlCAyfUD6yC6GeQhdXWIzGgAfI0u7eZDLg== 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 4PvxnD1Nvrzcpq; Mon, 10 Apr 2023 05:08:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A580Ln022173; Mon, 10 Apr 2023 05:08:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A580Tl022172; Mon, 10 Apr 2023 05:08:00 GMT (envelope-from git) Date: Mon, 10 Apr 2023 05:08:00 GMT Message-Id: <202304100508.33A580Tl022172@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: cb7a77b8ba80 - stable/12 - lagg(4): Refactor out some lagg protocol input routines into a default one List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: cb7a77b8ba80b93f3c07937752e68a26e31451c3 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=cb7a77b8ba80b93f3c07937752e68a26e31451c3 commit cb7a77b8ba80b93f3c07937752e68a26e31451c3 Author: Zhenlei Huang AuthorDate: 2023-03-29 16:16:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 05:06:21 +0000 lagg(4): Refactor out some lagg protocol input routines into a default one Those input routines are identical. Also inline two fast paths. No functional change intended. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D39251 (cherry picked from commit dbe86dd5de18fdf61e1300f6575e0f50785bf6b3) (cherry picked from commit eeb96a7b9178aa55d855203b977564b287d6d108) --- sys/net/if_lagg.c | 63 ++++++++++++++++++------------------------------------- 1 file changed, 20 insertions(+), 43 deletions(-) diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index c4ea1e9e7637..6a6f08b9696e 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -164,8 +164,6 @@ static struct lagg_port *lagg_link_active(struct lagg_softc *, /* Simple round robin */ static void lagg_rr_attach(struct lagg_softc *); static int lagg_rr_start(struct lagg_softc *, struct mbuf *); -static struct mbuf *lagg_rr_input(struct lagg_softc *, struct lagg_port *, - struct mbuf *); /* Active failover */ static int lagg_fail_start(struct lagg_softc *, struct mbuf *); @@ -178,14 +176,10 @@ static void lagg_lb_detach(struct lagg_softc *); static int lagg_lb_port_create(struct lagg_port *); static void lagg_lb_port_destroy(struct lagg_port *); static int lagg_lb_start(struct lagg_softc *, struct mbuf *); -static struct mbuf *lagg_lb_input(struct lagg_softc *, struct lagg_port *, - struct mbuf *); static int lagg_lb_porttable(struct lagg_softc *, struct lagg_port *); /* Broadcast */ static int lagg_bcast_start(struct lagg_softc *, struct mbuf *); -static struct mbuf *lagg_bcast_input(struct lagg_softc *, struct lagg_port *, - struct mbuf *); /* 802.3ad LACP */ static void lagg_lacp_attach(struct lagg_softc *); @@ -195,6 +189,10 @@ static struct mbuf *lagg_lacp_input(struct lagg_softc *, struct lagg_port *, struct mbuf *); static void lagg_lacp_lladdr(struct lagg_softc *); +/* Default input */ +static struct mbuf *lagg_default_input(struct lagg_softc *, struct lagg_port *, + struct mbuf *); + /* lagg protocol table */ static const struct lagg_proto { lagg_proto pr_num; @@ -219,7 +217,7 @@ static const struct lagg_proto { .pr_num = LAGG_PROTO_ROUNDROBIN, .pr_attach = lagg_rr_attach, .pr_start = lagg_rr_start, - .pr_input = lagg_rr_input, + .pr_input = lagg_default_input, }, { .pr_num = LAGG_PROTO_FAILOVER, @@ -231,7 +229,7 @@ static const struct lagg_proto { .pr_attach = lagg_lb_attach, .pr_detach = lagg_lb_detach, .pr_start = lagg_lb_start, - .pr_input = lagg_lb_input, + .pr_input = lagg_default_input, .pr_addport = lagg_lb_port_create, .pr_delport = lagg_lb_port_destroy, }, @@ -253,7 +251,7 @@ static const struct lagg_proto { { .pr_num = LAGG_PROTO_BROADCAST, .pr_start = lagg_bcast_start, - .pr_input = lagg_bcast_input, + .pr_input = lagg_default_input, }, }; @@ -369,14 +367,14 @@ lagg_proto_detach(struct lagg_softc *sc) lagg_protos[pr].pr_detach(sc); } -static int +static inline int lagg_proto_start(struct lagg_softc *sc, struct mbuf *m) { return (lagg_protos[sc->sc_proto].pr_start(sc, m)); } -static struct mbuf * +static inline struct mbuf * lagg_proto_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) { @@ -2171,17 +2169,6 @@ lagg_rr_start(struct lagg_softc *sc, struct mbuf *m) return (lagg_enqueue(lp->lp_ifp, m)); } -static struct mbuf * -lagg_rr_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) -{ - struct ifnet *ifp = sc->sc_ifp; - - /* Just pass in the packet to our lagg device */ - m->m_pkthdr.rcvif = ifp; - - return (m); -} - /* * Broadcast mode */ @@ -2232,16 +2219,6 @@ lagg_bcast_start(struct lagg_softc *sc, struct mbuf *m) return (0); } -static struct mbuf* -lagg_bcast_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) -{ - struct ifnet *ifp = sc->sc_ifp; - - /* Just pass in the packet to our lagg device */ - m->m_pkthdr.rcvif = ifp; - return (m); -} - /* * Active failover */ @@ -2383,17 +2360,6 @@ lagg_lb_start(struct lagg_softc *sc, struct mbuf *m) return (lagg_enqueue(lp->lp_ifp, m)); } -static struct mbuf * -lagg_lb_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) -{ - struct ifnet *ifp = sc->sc_ifp; - - /* Just pass in the packet to our lagg device */ - m->m_pkthdr.rcvif = ifp; - - return (m); -} - /* * 802.3ad LACP */ @@ -2484,3 +2450,14 @@ lagg_lacp_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) return (m); } +/* Default input */ +static struct mbuf * +lagg_default_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) +{ + struct ifnet *ifp = sc->sc_ifp; + + /* Just pass in the packet to our lagg device */ + m->m_pkthdr.rcvif = ifp; + + return (m); +} From nobody Mon Apr 10 05:08:01 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvxnF5zHFz44mlc; Mon, 10 Apr 2023 05:08: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvxnF3yx5z3Q3N; Mon, 10 Apr 2023 05:08:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103281; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LA0VP0L0c9OxM8KX4zxSwm5h+cPKiHrSI/O2qoXBM7w=; b=m1iqjs/QpyqZq8bRRwdI2i50NO1kKK9JSHuE/yTt7rZ9Zc1ttm2GvyBvMbvd5WEwwPX0SP IrVNcd80uTZw3dUXZeEebTeiJeiJ9HMPTYExUCx0aZ/9cIMNLwSxTGR+5bhb1eaPGL+Kla ClmFAKlpjHmmynDEAPNGCGBYZtD9T4hxtlVFr/ErLIVXE2T/oSasgbXmpb3InSmJBpaBXu APvpJ5wWViTF7mG5oV5FLeYguotBv805rLXwI+GJVNqjGOSMWsmzpjKLl6EFQjdeq6e9W9 43FF/f4LSnuysqqbalPiIaRpz1jyYbWd6sK6Cw5vzAc8rWqlZoL0NDls1chALw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103281; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LA0VP0L0c9OxM8KX4zxSwm5h+cPKiHrSI/O2qoXBM7w=; b=BkWAfBpW8r1k7mD4vQLCpFuqZFrKqXboxaWeI7Mmw4ZqUIGkwb8433jUnLEzWXv8TMuhON YJIZyMxs6GW4Z7RofX0OIhDBpJ0tNcPkFj/4FHTJNf2j8W8hNGUlbyVNKkvVTBbY/qo5HV OvFYimZW/vSLIJ1m5+9Z8W+QxGHtapPVVOjb3JgNI97HpOcfANqVu0chpKCYsBCNGVOp8H 5Pjukb5XJ5VEFzC6rQFcEXEjWFwd/luwFvCBFbqvcMZ8viBQHUjwTJezz6LOCC10yEsPIW Kxp/Usi1e5aU4SMiw9b1EEHQH5ze9q1DSGiKt964C8ex1GeEQTPEoBJP9WQ+EA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681103281; a=rsa-sha256; cv=none; b=dsYxCLCy76oIEOzYTIQDtlp4fTn/auAm2TvVOuZ6VhKycD6jESO+r8IEKgoHbGyoU0zNtE hwRBgSerdbAw6IfJ/IGcpX8+6AKfDCi0KSNBa+5jyRqe3kiJHvAHbPJPSIRc3JrxO903CW jpSGqIhHe9jf7/bZ0aIdWAahk+MgUmsDGqmTChFWswHiPgVByCniXF3ByaYitEqkM39LIO QST7zz8uUMzMgojhgi+SLv4wX/iP7lBg27sSb+Wx5NydML3++7M1UCOofMu9qZG1EfMiNu N2js5je/emkBx82Pdwep7KQMJNqBu2eSJEJTDEVP4fISFrPoRHm6M0S220a7gA== 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 4PvxnF2HXGzd3m; Mon, 10 Apr 2023 05:08:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A581EJ022201; Mon, 10 Apr 2023 05:08:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A581cp022200; Mon, 10 Apr 2023 05:08:01 GMT (envelope-from git) Date: Mon, 10 Apr 2023 05:08:01 GMT Message-Id: <202304100508.33A581cp022200@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: d7dd3c8274aa - stable/12 - lacp: Use C99 bool for boolean return value List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: d7dd3c8274aa48e1e29f1232773ef88ff4baf73c Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=d7dd3c8274aa48e1e29f1232773ef88ff4baf73c commit d7dd3c8274aa48e1e29f1232773ef88ff4baf73c Author: Zhenlei Huang AuthorDate: 2023-03-31 17:48:36 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 05:06:22 +0000 lacp: Use C99 bool for boolean return value This improves readability. No functional change intended. MFC after: 1 week (cherry picked from commit 5a8abd0a298e6e7a8bf938a7eb171b647b1860cd) (cherry picked from commit d1d5d8f69659c4d3573e64a62a9306ee944d9e4d) --- sys/net/ieee8023ad_lacp.c | 38 +++++++++++++++++--------------------- sys/net/ieee8023ad_lacp.h | 15 ++++++--------- sys/net/if_lagg.c | 2 +- 3 files changed, 24 insertions(+), 31 deletions(-) diff --git a/sys/net/ieee8023ad_lacp.c b/sys/net/ieee8023ad_lacp.c index 61cd94e5ce2f..2160baf18351 100644 --- a/sys/net/ieee8023ad_lacp.c +++ b/sys/net/ieee8023ad_lacp.c @@ -115,9 +115,9 @@ static void lacp_fill_aggregator_id(struct lacp_aggregator *, const struct lacp_port *); static void lacp_fill_aggregator_id_peer(struct lacp_peerinfo *, const struct lacp_peerinfo *); -static int lacp_aggregator_is_compatible(const struct lacp_aggregator *, +static bool lacp_aggregator_is_compatible(const struct lacp_aggregator *, const struct lacp_port *); -static int lacp_peerinfo_is_compatible(const struct lacp_peerinfo *, +static bool lacp_peerinfo_is_compatible(const struct lacp_peerinfo *, const struct lacp_peerinfo *); static struct lacp_aggregator *lacp_aggregator_get(struct lacp_softc *, @@ -1337,44 +1337,40 @@ lacp_fill_aggregator_id_peer(struct lacp_peerinfo *lpi_aggr, * lacp_aggregator_is_compatible: check if a port can join to an aggregator. */ -static int +static bool lacp_aggregator_is_compatible(const struct lacp_aggregator *la, const struct lacp_port *lp) { if (!(lp->lp_state & LACP_STATE_AGGREGATION) || !(lp->lp_partner.lip_state & LACP_STATE_AGGREGATION)) { - return (0); + return (false); } - if (!(la->la_actor.lip_state & LACP_STATE_AGGREGATION)) { - return (0); - } + if (!(la->la_actor.lip_state & LACP_STATE_AGGREGATION)) + return (false); - if (!lacp_peerinfo_is_compatible(&la->la_partner, &lp->lp_partner)) { - return (0); - } + if (!lacp_peerinfo_is_compatible(&la->la_partner, &lp->lp_partner)) + return (false); - if (!lacp_peerinfo_is_compatible(&la->la_actor, &lp->lp_actor)) { - return (0); - } + if (!lacp_peerinfo_is_compatible(&la->la_actor, &lp->lp_actor)) + return (false); - return (1); + return (true); } -static int +static bool lacp_peerinfo_is_compatible(const struct lacp_peerinfo *a, const struct lacp_peerinfo *b) { if (memcmp(&a->lip_systemid, &b->lip_systemid, - sizeof(a->lip_systemid))) { - return (0); + sizeof(a->lip_systemid)) != 0) { + return (false); } - if (memcmp(&a->lip_key, &b->lip_key, sizeof(a->lip_key))) { - return (0); - } + if (memcmp(&a->lip_key, &b->lip_key, sizeof(a->lip_key)) != 0) + return (false); - return (1); + return (true); } static void diff --git a/sys/net/ieee8023ad_lacp.h b/sys/net/ieee8023ad_lacp.h index 10c6a2c9f892..858500d12b33 100644 --- a/sys/net/ieee8023ad_lacp.h +++ b/sys/net/ieee8023ad_lacp.h @@ -300,7 +300,7 @@ void lacp_linkstate(struct lagg_port *); void lacp_req(struct lagg_softc *, void *); void lacp_portreq(struct lagg_port *, void *); -static __inline int +static __inline bool lacp_isactive(struct lagg_port *lgp) { struct lacp_port *lp = LACP_PORT(lgp); @@ -308,26 +308,23 @@ lacp_isactive(struct lagg_port *lgp) struct lacp_aggregator *la = lp->lp_aggregator; /* This port is joined to the active aggregator */ - if (la != NULL && la == lsc->lsc_active_aggregator) - return (1); - - return (0); + return (la != NULL && la == lsc->lsc_active_aggregator); } -static __inline int +static __inline bool lacp_iscollecting(struct lagg_port *lgp) { struct lacp_port *lp = LACP_PORT(lgp); - return ((lp->lp_state & LACP_STATE_COLLECTING) != 0); + return (lp->lp_state & LACP_STATE_COLLECTING); } -static __inline int +static __inline bool lacp_isdistributing(struct lagg_port *lgp) { struct lacp_port *lp = LACP_PORT(lgp); - return ((lp->lp_state & LACP_STATE_DISTRIBUTING) != 0); + return (lp->lp_state & LACP_STATE_DISTRIBUTING); } /* following constants don't include terminating NUL */ diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index 6a6f08b9696e..b970e1a9f2b1 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -2441,7 +2441,7 @@ lagg_lacp_input(struct lagg_softc *sc, struct lagg_port *lp, struct mbuf *m) * If the port is not collecting or not in the active aggregator then * free and return. */ - if (lacp_iscollecting(lp) == 0 || lacp_isactive(lp) == 0) { + if (!lacp_iscollecting(lp) || !lacp_isactive(lp)) { m_freem(m); return (NULL); } From nobody Mon Apr 10 05:08:02 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvxnG72v5z44mZB; Mon, 10 Apr 2023 05:08: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvxnG4Kc1z3QH4; Mon, 10 Apr 2023 05:08:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103282; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QwFKhazrJlHMo6NLqVo+4hOGKHuQ0fnTHj/rv0znuQc=; b=ew/7g2OnkrtSqMo6cZQ9Gll+ALPdSrHsFKy7xdPeKxnHXGYI9uVd9+kRAxcmhiEDZb2YJA AlAP/pnlfuraoPJhaIOghVNzQhuzX3rZPPZ0+tpF7vG4r0kiNTiiNwS5z1PUJm49uiCEXN Cz0zxLkhqAqRULmSlyqH5NYUvd99GtrCUnEEKzUHirSkb9JVtOfF1+QbSG6gZooOTqKYNd ID9Y/aZyhSNJX3NRaAmPOSOLvSyyHTBdBAgaRvcMEzTarGMhHUoHO3l2j0E86KlQ+96X2V 54sWE6I6MQ1XdBLE0QPjOb1guA326SN2MadXUANBiXvwqNbipkaHv7Jr/VWOZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103282; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QwFKhazrJlHMo6NLqVo+4hOGKHuQ0fnTHj/rv0znuQc=; b=NH9p4YQ5klfV3AQj+Xw8KED5BOzb07UWLBSl4o6JP2R0sz/sRzt6Tpx+0bshhfuhRMY42z Khh5ZM1xNyPjE+5E+8FqMUhDzgWocFbvJ1XzSwv3JiQpTrzG50DVOONH60/4uhTkDje4/n FKD4VdsijWxKms4HGAgsRTDLCnC1TfuvhaLhh/ibbe0O1JE2stnSSFpHsrdk1QuXT5cH19 fo7M99z3MnfE/RJp5UbuPSBeojTDXE628a5fywONMfqJGr1pO6OAbfSXMF3D/LEZS8mZjv j7kTOZbrHIyDqwu0dcIi8u517jCu8drwnI4EgcVs0GnZtX3z4+kQk1GMAQ8Vyw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681103282; a=rsa-sha256; cv=none; b=uZuH1x3eYY0n3Yjqu+3GnAylIJwR3mpH6c6od6gbMt4ldOxrlYkX7BJAeIN7qLKliwZEcv 2EeWCfdvfZWF4fphh0ZQWb1r7xMw0QvZSawWqqqKC303/u5zwZ/LU1KftynOmMc9YVIo6q FA4Ccwu31RdtljvmsAArwdZik6obufrD0EWV290qioyyGnVvKAyzTeNgX2jD0YXBMLzDxB x6nFuenXbXx6km6d4aQRnD1FyRiilKQQJ6afU/TADzTpvWW+cyL18HaVbm5IoDkKUMiJeL UhFymidckO86lXXsgqJofM3mrKx2SCkiMOdczPBoVWkMVGk3xhGgPoBovj4u3A== 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 4PvxnG2Zyszcyh; Mon, 10 Apr 2023 05:08:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A582Rh022220; Mon, 10 Apr 2023 05:08:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A5820P022219; Mon, 10 Apr 2023 05:08:02 GMT (envelope-from git) Date: Mon, 10 Apr 2023 05:08:02 GMT Message-Id: <202304100508.33A5820P022219@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: 114126825629 - stable/12 - lagg(4): Tap traffic after protocol processing List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 11412682562925064591f0abaae63e2a9ff767e5 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=11412682562925064591f0abaae63e2a9ff767e5 commit 11412682562925064591f0abaae63e2a9ff767e5 Author: Zhenlei Huang AuthorDate: 2023-04-02 17:01:51 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 05:06:22 +0000 lagg(4): Tap traffic after protocol processing Different lagg protocols have different means and policies to process incoming traffic. For example, for failover protocol, by default received traffic is only accepted when they are received through the active port. For lacp protocol, LACP control messages are tapped off, also traffic will be dropped if they are received through the port which is not in collecting state or is not joined to the active aggregator. It confuses if user dump and see inbound traffic on lagg(4) interfaces but they are actually silently dropped and not passed into the net stack. Tap traffic after protocol processing so that user will have consistent view of the inbound traffic, meanwhile mbuf is set with correct receiving interface and bpf(4) will diagnose the right direction of inbound packets. PR: 270417 Reviewed by: melifaro (previous version) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D39225 (cherry picked from commit 5f3d0399e903573e9648385ea6585e54af4d573f) (cherry picked from commit ed44ba413c544c0aa05b3456bc430c816a0e3168) --- sys/net/if_lagg.c | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index b970e1a9f2b1..796aa7f24dcd 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -1953,12 +1953,14 @@ lagg_input_ethernet(struct ifnet *ifp, struct mbuf *m) return (NULL); } - ETHER_BPF_MTAP(scifp, m); - m = lagg_proto_input(sc, lp, m); - if (m != NULL && (scifp->if_flags & IFF_MONITOR) != 0) { - m_freem(m); - m = NULL; + if (m != NULL) { + ETHER_BPF_MTAP(scifp, m); + + if ((scifp->if_flags & IFF_MONITOR) != 0) { + m_freem(m); + m = NULL; + } } LAGG_RUNLOCK(); @@ -1981,12 +1983,14 @@ lagg_input_infiniband(struct ifnet *ifp, struct mbuf *m) return (NULL); } - INFINIBAND_BPF_MTAP(scifp, m); - m = lagg_proto_input(sc, lp, m); - if (m != NULL && (scifp->if_flags & IFF_MONITOR) != 0) { - m_freem(m); - m = NULL; + if (m != NULL) { + INFINIBAND_BPF_MTAP(scifp, m); + + if ((scifp->if_flags & IFF_MONITOR) != 0) { + m_freem(m); + m = NULL; + } } LAGG_RUNLOCK(); From nobody Mon Apr 10 05:08:03 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvxnJ30fjz44mwy; Mon, 10 Apr 2023 05:08: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvxnJ0ZWCz3Q1l; Mon, 10 Apr 2023 05:08:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103284; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yJM/HohDKsTRWWz2O6DDFqt1bUi7UdBFe9J3eig7uRQ=; b=Nxh5/64VxVOgQcPvEuh3F307QvnHRvCzfJQtQIuEMNN6aJkEh8QLhUec373kXgok8Dg0Da WkoXv7kFIzi3EmQDw0R2KyT2jHb/3ynUrIfstpYqUdqwGyMCQfxY7LPcLaOo97uHgJafHY oheX48aaeMe8li2gcQSZr/dVnDdFSHaXZJWzz6qJd8ptPP0yrpjOWKOp0sQGkoUILzN8jy SgUDTBoCwi465pnLFZm8GRiyAgS5uXDwDgI5uC1APAKGnqpIjcvt7CpJ1fe1zPyU8WG3Dh FOOomUmJtiuV4Kis/DUiOZ+xUaxMJMTP06386MHZS+9iwmmkNQM6AA0qgBFS4Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103284; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yJM/HohDKsTRWWz2O6DDFqt1bUi7UdBFe9J3eig7uRQ=; b=PSvGBpm6/V7ShmD0BqZVJkLUFMus7YWKj7QYrWdLqcd8kXOXQCiW9XDf/c4dHgMg13FiON qObEYn5f1Jkqw4KJm6yz8v4HtyIpTiAgQ3BpRif7YcHY6ieX5UXG4yBykyOLWU2vHSMOOh q0CRZcQhCKVjv9klZwTZjlahKN6cLDcHl2Wy2ISBhXYbAocNa1cytYSyIou4hl7wzi/hHL Qm5/5C6OQwb5lGojRjGQWk5myCEf4w1NX8nJb3REUKE8KhrnVyH6IgUbtwM/RvgM+oWuk4 ORq/TNSOT5ElwpQm+KDpmYkoWX4vKsul023ppvLNLAmvgp/pFj7IuZDxkS93FA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681103284; a=rsa-sha256; cv=none; b=jxiKQO4JvJk25jhGALZ4ZjHh2KY9OS2yycHWfP/EwmqdbC/YurCXUMkgNGFNx3OK08pC4t grBS20IooRaHHVKzLTrPakT2pP8T5y3YtEijhLCkTeczfkC55tH4+I4/g8059EtO8EBrpt yZHxONgLz4nXquRtHmIWWc0oWGY2i93Batk7Z4FFqilLFyfEiX8mBV54lbTc6Tir2Lax5k sBbtz2KwBPukOgbII5w2vp5L6/v5UBkSlZ3O82rLdh+WMqaz9BZovBy0051qFaHqx1Pa7Z HmnGxuuDNUSGs3mWunoN6bPlBqXczL0seR2vyVPwXKfhJ3ntKGwE3N9MJubbTw== 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 4PvxnH3VlGzcn3; Mon, 10 Apr 2023 05:08:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A583qP022240; Mon, 10 Apr 2023 05:08:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A5838P022239; Mon, 10 Apr 2023 05:08:03 GMT (envelope-from git) Date: Mon, 10 Apr 2023 05:08:03 GMT Message-Id: <202304100508.33A5838P022239@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: 24069f0dc073 - stable/12 - infiniband: Widen NET_EPOCH coverage List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 24069f0dc0730248bd5b09e50b12e37645d57c31 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=24069f0dc0730248bd5b09e50b12e37645d57c31 commit 24069f0dc0730248bd5b09e50b12e37645d57c31 Author: Zhenlei Huang AuthorDate: 2023-04-02 16:51:49 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 05:06:22 +0000 infiniband: Widen NET_EPOCH coverage From static code analysis, some device drivers (cxgbe, mlx4, mthca, and qlnx) do not enter net epoch before lagg_input_infiniband(). If IPoIB interface is a member of lagg(4) interface, and after returning from lagg_input_infiniband() the receiving interface of mbuf is set to lagg(4) interface, then when concurrently destroying the lagg(4) interface, there is a small window that the interface gets destroyed and becomes invalid before infiniband_input() re-enter net epoch, thus leading use-after-free. Widen NET_EPOCH coverage to prevent use-after-free. Thanks hselasky@ for testing with mlx5 devices. Reviewed by: hselasky Tested by: hselasky MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D39275 (cherry picked from commit 90820ef121b38479f2479c03c12c69f940f5fa33) (cherry picked from commit 5d45e09d50e648a75667c9b12b204eb62fa60ed2) --- sys/net/if_infiniband.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/net/if_infiniband.c b/sys/net/if_infiniband.c index b644f91f2cda..3fe4fb0616e8 100644 --- a/sys/net/if_infiniband.c +++ b/sys/net/if_infiniband.c @@ -407,6 +407,7 @@ infiniband_input(struct ifnet *ifp, struct mbuf *m) int isr; CURVNET_SET_QUIET(ifp->if_vnet); + NET_EPOCH_ENTER_ET(et); if ((ifp->if_flags & IFF_UP) == 0) { if_inc_counter(ifp, IFCOUNTER_IERRORS, 1); @@ -494,10 +495,9 @@ infiniband_input(struct ifnet *ifp, struct mbuf *m) mac_ifnet_create_mbuf(ifp, m); #endif /* Allow monitor mode to claim this frame, after stats are updated. */ - NET_EPOCH_ENTER_ET(et); netisr_dispatch(isr, m); - NET_EPOCH_EXIT_ET(et); done: + NET_EPOCH_EXIT_ET(et); CURVNET_RESTORE(); } From nobody Mon Apr 10 05:08:04 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PvxnK2BZlz44mx2; Mon, 10 Apr 2023 05:08: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PvxnJ5tRwz3QHj; Mon, 10 Apr 2023 05:08:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103284; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZZC6XCMEk7zDdNx6sONaPcdwt+FbmhQeZ0kPEpCUWOc=; b=ANUZ1iABZoK7fi9TeVUhx22P6sjUIALojkrQZECzu7zjaD5Krj0YUT1N4YLey45W34G21D fQW9rHdr0JoPJO2Kq6D9GzlQDIA6hN3tcW2psiGC3qdEfS+3cwwsxol5UsxfZ4YjzchnIi 5CLRKLpSn+o7W1p9AvgYvrNo3OcEQQ+M+PL3hvNhzDuUz3o5Q183L3Tbgucum4fWjxqAtc /390wabJIPznxELDVoSCdwOGVZVYJICMyuX550fwGExwg1VruMeOGCVbz2fXuEKEIHM+/F xyfJ/BD2v0bQlgcYcZ4Se6zmkZ+P6P4avq0HvnMX6TlSYQFoEsdAp+ohLVvheA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103284; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZZC6XCMEk7zDdNx6sONaPcdwt+FbmhQeZ0kPEpCUWOc=; b=YeDcgiq16a+4pTvEWAv/t+HHhPg/TqAMviHxVoMj4tM8PebEetOlUNhAfn28VicT2+v7b2 xHdXfI0MRsrZWvmnSklFnD1y2ABwum8Z11pg0nEUq1z8pbr47EZWjOGkYIjHPB8Cm2A5PZ CRAlmx9Zja906O7qNnLt2bbFZ8cgposuJyn28lOqgF4F7SeB3J598raGi4Tb7S1yGhI5o1 PvYX+DQLLuV09CaMnoiZZAY9NCC01SO8nETC99EOsf6Pw+ztO97KmjwV3ZcpTOq75vy+AL 8ULZmLcI5G14OVg3fcjPT+X4QjFpslkFJbJrgXu3//z2n/916MA3I1VXddn2FA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681103284; a=rsa-sha256; cv=none; b=erFtLmmaSjSxcp+zN6GszJ78WqocldzDSar77Wk6/wtdMWCtGJSEaCTgqM45haXg40RCns YuGPoH477rC2PxMSwtyO0bp6T8YcGoxNtclX6MWm2a3a5OjOQBuJSjtIeaOUn8XhVKMjlo E7Ar/rRxFmJ+cMNm2ADP3CUwroO5n//0easiJrLUpSWDMHztrjbbTuvscGcYP1juNL7zq1 oB2EUtzU9W53Prt+zSV114de1usskClvWPfB+zOcU67sfyt1Tvi+1JPp8C89MW3QrY9dgW q0T03t0Ej5q1cUZXfdFJ/AS+4c2aLMTqggYIrol4EGmcjcUykTdgF+AuJEPUjA== 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 4PvxnJ4Zktzcn4; Mon, 10 Apr 2023 05:08:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A584Ku022259; Mon, 10 Apr 2023 05:08:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A584xM022258; Mon, 10 Apr 2023 05:08:04 GMT (envelope-from git) Date: Mon, 10 Apr 2023 05:08:04 GMT Message-Id: <202304100508.33A584xM022258@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Zhenlei Huang Subject: git: 59f3510ea793 - stable/12 - ifconfig: Fix configuring if_bridge with additional operating parameters List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 59f3510ea793d35fbf2996087af5ab870cc0229f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=59f3510ea793d35fbf2996087af5ab870cc0229f commit 59f3510ea793d35fbf2996087af5ab870cc0229f Author: Zhenlei Huang AuthorDate: 2023-04-07 14:25:41 +0000 Commit: Zhenlei Huang CommitDate: 2023-04-10 05:06:22 +0000 ifconfig: Fix configuring if_bridge with additional operating parameters For clone create and rename operations, the interface name get back can be different from the one passed to ioctl(). Use the interface name we get back so that ifconfig will not return unexpected ENXIO. PR: 270618 Reviewed by: kp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D39396 (cherry picked from commit 09e5e3d598604167c1fb05e5cd0f41ed83314517) (cherry picked from commit bab5ce8deafb00683fb8319208750981e68d309c) --- sbin/ifconfig/ifbridge.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/ifconfig/ifbridge.c b/sbin/ifconfig/ifbridge.c index f4c51632bc98..afbe4b309cb5 100644 --- a/sbin/ifconfig/ifbridge.c +++ b/sbin/ifconfig/ifbridge.c @@ -89,7 +89,7 @@ do_cmd(int sock, u_long op, void *arg, size_t argsize, int set) memset(&ifd, 0, sizeof(ifd)); - strlcpy(ifd.ifd_name, ifr.ifr_name, sizeof(ifd.ifd_name)); + strlcpy(ifd.ifd_name, name, sizeof(ifd.ifd_name)); ifd.ifd_cmd = op; ifd.ifd_len = argsize; ifd.ifd_data = arg; From nobody Mon Apr 10 05:10:29 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Pvxr56RDzz44nB7; Mon, 10 Apr 2023 05:10: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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Pvxr55NC7z3lnG; Mon, 10 Apr 2023 05:10:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103429; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3AcyRxFx833ADTpp+kekknrbBvo2iTVYOo91VlYB5hU=; b=nO4ioeRo/cATM5MQ5PLFFbNBxwn3luTqtYWYpXpjYmIKNeCUbbMprq+una/hpe4xjBFRJH VS4x+vpbTMSkaKITlg04vP680o71af2i5Z/SUx8HjaJ57o9c5yE6w8bCcFxSldqgjbV2M9 SrfYM1JliD7rJbwN3HWjvTgXVVdl+zkVlk4xkBeYmEwbPqm3KK0jzmhOROdqCbQokNVgXE PefFXN7KuawVoTHOqXW9uZVvOz/X0KDSqBQnZLKD7gbyC7UomFFFV6U3OY7XfLPsbSdbZC cNr3h4QI+WT2F0yD7ufv74IAc3Lg3rnlyRmsaG+dicNz9BKeuYMuldmMRIbzuQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1681103429; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3AcyRxFx833ADTpp+kekknrbBvo2iTVYOo91VlYB5hU=; b=p/lIODkgg47VJn1KHtlCBUuEgD2ZtLDWyROx45mt0NTA81lwYZz1Kg/UfN2JqoFWKybTSJ 1p6hvvbrkMzjpZ8O3qlC+ttQ5LYXH/Wkpz7XrDhpgRk+5OuH0Oh33ZzIkdHYLqXkkRRkcn AzMiRsnQXYW6kiQuIvDSx4HGkbrNpbfcQ2FJn+l8Aq9BVDKL7bXL9feCQDxVAtNJ/vIZXm S/ZaAtgsNJqZSE0HUWjtf2ReaCwIFDeIk/m38OCQ2EGLBrTf+4ZDMnHBncjun7MXMGRMO1 GsssyiVtJY1AEd4XQrcCt9YQ3XsprpMKtYd0n5m/a4IMhpkkOtpY8X5SFS7Drg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1681103429; a=rsa-sha256; cv=none; b=jQzGoBRmkMYQuraWn4lfAgfwTfRsGEy3ZG1mvhOsNjENvbH/vubRGbr2+/CXe7VVsZH3Ii VIMuVpGqe4oP9UUxtl9ijwE/4OBoohhjalYjJUyJTVtyLb+W9804sO/O8YZzXx++jWqdUA HvwU2aYSU76JHRzs4Rdq5RXFgpZnKIXD6dsKB5+PfxGpBS3O04FMph3QvR9QFO8PzGtmTJ yZa8w7mtQ14T0amIsavzw1+esNTlEMbLH1g21Nfa4eOZXt4f6iOYmgXxDds2CD4V00OY6b VqNVcPcBM1mhEn0D/udqBg0Dbmd7Vul4H4MMlDHic4gELmJNbewse2IMoxXJEg== 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 4Pvxr54SnzzcXd; Mon, 10 Apr 2023 05:10:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 33A5ATDK031192; Mon, 10 Apr 2023 05:10:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 33A5ATPS031191; Mon, 10 Apr 2023 05:10:29 GMT (envelope-from git) Date: Mon, 10 Apr 2023 05:10:29 GMT Message-Id: <202304100510.33A5ATPS031191@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 3cea7ca846e9 - stable/13 - setkey(8): add -e option to take script from the command line List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 3cea7ca846e94c90e3cb39200f72daac48bceac9 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=3cea7ca846e94c90e3cb39200f72daac48bceac9 commit 3cea7ca846e94c90e3cb39200f72daac48bceac9 Author: Konstantin Belousov AuthorDate: 2023-04-03 01:03:50 +0000 Commit: Konstantin Belousov CommitDate: 2023-04-10 05:10:06 +0000 setkey(8): add -e option to take script from the command line (cherry picked from commit 3cb808226c1f62ed5c726480073eb9035a24d2cc) --- sbin/setkey/setkey.8 | 14 ++++++++++---- sbin/setkey/setkey.c | 17 ++++++++++++++++- 2 files changed, 26 insertions(+), 5 deletions(-) diff --git a/sbin/setkey/setkey.8 b/sbin/setkey/setkey.8 index 2bb87cc21a97..20754c1b368f 100644 --- a/sbin/setkey/setkey.8 +++ b/sbin/setkey/setkey.8 @@ -29,7 +29,7 @@ .\" .\" $FreeBSD$ .\" -.Dd September 13, 2022 +.Dd April 3, 2023 .Dt SETKEY 8 .Os .\" @@ -45,6 +45,9 @@ .Op Fl v .Fl f Ar filename .Nm +.Op Fl v +.Fl e Ar script +.Nm .Op Fl Pgltv .Fl D .Nm @@ -65,11 +68,14 @@ The .Nm utility takes a series of operations from the standard input (if invoked with -.Fl c ) -or the file named +.Fl c ) , +from the file named .Ar filename (if invoked with -.Fl f Ar filename ) . +.Fl f Ar filename ) , +or from the command line argument following the option +(if invoked with +.Fl e Ar script ) . .Bl -tag -width indent .It Fl D Dump the SAD entries. diff --git a/sbin/setkey/setkey.c b/sbin/setkey/setkey.c index 2bc8ec7e5816..ff2509555ff2 100644 --- a/sbin/setkey/setkey.c +++ b/sbin/setkey/setkey.c @@ -99,6 +99,7 @@ usage() printf("usage: setkey [-v] -c\n"); printf(" setkey [-v] -f filename\n"); + printf(" setkey [-v] -e \"