From nobody Sat Oct 7 17:16:55 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S2sRC6Z8Sz4x1bT; Sat, 7 Oct 2023 17:16:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S2sRC5qGrz3SMW; Sat, 7 Oct 2023 17:16:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696699015; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+awxEkHhx9kkVByTgm/gxkOH9sYBmM0rwBEOvqTao90=; b=xIyQwosO8Kc5AGsoY9J5HaukLNMQaGIQF4vmAL3U4WezNZtw6tIR5k5pkus7X/VaTVrKWa oJKVx4ZpP0GwitCLa+MLXmpJz6NdpOAwPti9QZoSV2c8q2LTT+aQ2CTTs+wZErfsIWZi5x 4ITbSkSaohKvDVwGFihORTc7XA4ERizsdfEmNIzPqYub7UytNnS4kvWkQEcM/BmLshpPGj WwdTLKdh9sNVhIKf3BqCGVCiKuIObKrP/pHLby8Pz4FuRC87tDa+wuvhN9UWEpDYhO7NtY NayvaUhbM693xiL3/aJRbM0KF53WiK+sraVMkVFFdWDcKEjUdRbXUGGcSWTCwQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696699015; a=rsa-sha256; cv=none; b=qS2YRE26SXkd/xyvXtrDFpU+8Ptycqnfxp1hdgtxpz75wOQ/EVXp2XjT4vwhaFwSu7jB5J AEfkceMltPavO55+mkUDfv3K+VHklpdjaoKSZ+fP6+cHNulpnSTh5rVi6+Y6H+RKljuwwm K6hkr+26XWQcjrGY7W40qC4hsi2UZ76tbEbi1Q92SAGj2+OaobLonQa7nMUt7tLWqVMIBP DGaD3LY3FzPDmgxUKb5uOxz8txArRDngngG99b55MCngFJzs+fKb4R7Quc1WB2O5/B1yZF p0Od3QbAL9WT05c5m87+eUUE86eX4SGzCLeVzfHmD4YQ50kJXAjOQ5wWfT+/sQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696699015; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+awxEkHhx9kkVByTgm/gxkOH9sYBmM0rwBEOvqTao90=; b=oWD5KQzfzqrZkTpDw0+ZX9DZ1vCbR6/ko2TF6eLpRcnFy+T9GKCxcOAS72szTDCHEj7iDs LYUb5uUAE28thrsr0M32oAfWW4QWJC/O/Ik2yQ232MrTLfnV7AovkY8aIc6eO/2fnyV//+ IH18u5qF7m2DXqoVitu9DZk0Z5MBVH8opd7arOz59h9sJhocRazEMtsKgnjnb/vzC4OlmU qPit1wUQtOnFcNhG/cwVv0YwSkTvfqI+BWDaRd0CGx07P0Eru6bUoxYA4f3xa+yIzhg5QS bxuzOHdGq7LZMD4sOpDHRn82L44lgrHwoFaGwutrl3frlZ/LAi1uymy+1lOkHw== 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 4S2sRC4ZH7zfK3; Sat, 7 Oct 2023 17:16:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 397HGt6E070546; Sat, 7 Oct 2023 17:16:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 397HGtqr070543; Sat, 7 Oct 2023 17:16:55 GMT (envelope-from git) Date: Sat, 7 Oct 2023 17:16:55 GMT Message-Id: <202310071716.397HGtqr070543@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 0b42158e5ef5 - releng/14.0 - pf: cope with missing rpool.cur List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 0b42158e5ef5b2d9ed05bc8dff7fbfd106e1bcac Auto-Submitted: auto-generated The branch releng/14.0 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=0b42158e5ef5b2d9ed05bc8dff7fbfd106e1bcac commit 0b42158e5ef5b2d9ed05bc8dff7fbfd106e1bcac Author: Kristof Provost AuthorDate: 2023-10-03 15:11:44 +0000 Commit: Kristof Provost CommitDate: 2023-10-07 17:16:25 +0000 pf: cope with missing rpool.cur If we're evaluating a pfsync'd state (and have different rules on both ends) our state may point to the default rule, which does not have rpool.cur set. As a result we can end up dereferencing a NULL pointer. Explicitly check for this when we try to re-construct the route-to interface. Also add a test case which can trigger this issue. MFC after: 3 days See also: https://redmine.pfsense.org/issues/14804 Sponsored by: Rubicon Communications, LLC ("Netgate") Approved by: gjb (re) (cherry picked from commit 74c2461386ea5eeb41e674df6b16a44b0509a882) (cherry picked from commit f69181e9de1b021f4689ce50b420f9c694268ec8) --- sys/netpfil/pf/pf.c | 9 ++-- tests/sys/netpfil/pf/pfsync.sh | 96 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 101 insertions(+), 4 deletions(-) diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index a5d7c1ba0155..0973c829644a 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -6737,7 +6737,7 @@ pf_route(struct mbuf **m, struct pf_krule *r, struct ifnet *oifp, } else { ifp = s->rt_kif ? s->rt_kif->pfik_ifp : NULL; /* If pfsync'd */ - if (ifp == NULL) + if (ifp == NULL && r->rpool.cur != NULL) ifp = r->rpool.cur->kif ? r->rpool.cur->kif->pfik_ifp : NULL; PF_STATE_UNLOCK(s); @@ -6794,9 +6794,10 @@ pf_route(struct mbuf **m, struct pf_krule *r, struct ifnet *oifp, s->rt_addr.v4.s_addr; ifp = s->rt_kif ? s->rt_kif->pfik_ifp : NULL; /* If pfsync'd */ - if (ifp == NULL) + if (ifp == NULL && r->rpool.cur != NULL) { ifp = r->rpool.cur->kif ? r->rpool.cur->kif->pfik_ifp : NULL; + } PF_STATE_UNLOCK(s); } @@ -6950,7 +6951,7 @@ pf_route6(struct mbuf **m, struct pf_krule *r, struct ifnet *oifp, } else { ifp = s->rt_kif ? s->rt_kif->pfik_ifp : NULL; /* If pfsync'd */ - if (ifp == NULL) + if (ifp == NULL && r->rpool.cur != NULL) ifp = r->rpool.cur->kif ? r->rpool.cur->kif->pfik_ifp : NULL; PF_STATE_UNLOCK(s); @@ -7008,7 +7009,7 @@ pf_route6(struct mbuf **m, struct pf_krule *r, struct ifnet *oifp, &s->rt_addr, AF_INET6); ifp = s->rt_kif ? s->rt_kif->pfik_ifp : NULL; /* If pfsync'd */ - if (ifp == NULL) + if (ifp == NULL && r->rpool.cur != NULL) ifp = r->rpool.cur->kif ? r->rpool.cur->kif->pfik_ifp : NULL; } diff --git a/tests/sys/netpfil/pf/pfsync.sh b/tests/sys/netpfil/pf/pfsync.sh index d62cdddd504a..91c7b8410a08 100644 --- a/tests/sys/netpfil/pf/pfsync.sh +++ b/tests/sys/netpfil/pf/pfsync.sh @@ -825,6 +825,101 @@ basic_ipv6_cleanup() pfsynct_cleanup } +atf_test_case "route_to" "cleanup" +route_to_head() +{ + atf_set descr 'Test route-to with default rule' + atf_set require.user root + atf_set require.progs scapy +} + +route_to_body() +{ + pfsynct_init + + epair_sync=$(vnet_mkepair) + epair_one=$(vnet_mkepair) + epair_two=$(vnet_mkepair) + epair_out_one=$(vnet_mkepair) + epair_out_two=$(vnet_mkepair) + + vnet_mkjail one ${epair_one}a ${epair_sync}a ${epair_out_one}a + vnet_mkjail two ${epair_two}a ${epair_sync}b ${epair_out_two}a + + # pfsync interface + jexec one ifconfig ${epair_sync}a 192.0.2.1/24 up + jexec one ifconfig ${epair_one}a 198.51.100.1/24 up + jexec one ifconfig ${epair_out_one}a 203.0.113.1/24 up + jexec one ifconfig ${epair_out_one}a name outif + jexec one sysctl net.inet.ip.forwarding=1 + jexec one arp -s 203.0.113.254 00:01:02:03:04:05 + jexec one ifconfig pfsync0 \ + syncdev ${epair_sync}a \ + maxupd 1 \ + up + + jexec two ifconfig ${epair_sync}b 192.0.2.2/24 up + jexec two ifconfig ${epair_two}a 198.51.100.2/24 up + jexec two ifconfig ${epair_out_two}a 203.0.113.2/24 up + #jexec two ifconfig ${epair_out_two}a name outif + jexec two sysctl net.inet.ip.forwarding=1 + jexec two arp -s 203.0.113.254 00:01:02:03:04:05 + jexec two ifconfig pfsync0 \ + syncdev ${epair_sync}b \ + maxupd 1 \ + up + + # Enable pf! + jexec one pfctl -e + pft_set_rules one \ + "set skip on ${epair_sync}a" \ + "pass out route-to (outif 203.0.113.254)" + jexec two pfctl -e + + # Make sure we have different rulesets so the synced state is associated with + # V_pf_default_rule + pft_set_rules two \ + "set skip on ${epair_sync}b" \ + "pass out route-to (outif 203.0.113.254)" \ + "pass out proto tcp" + + ifconfig ${epair_one}b 198.51.100.254/24 up + ifconfig ${epair_two}b 198.51.100.253/24 up + route add -net 203.0.113.0/24 198.51.100.1 + ifconfig ${epair_two}b up + ifconfig ${epair_out_one}b up + ifconfig ${epair_out_two}b up + + atf_check -s exit:0 env PYTHONPATH=${common_dir} \ + ${common_dir}/pft_ping.py \ + --sendif ${epair_one}b \ + --fromaddr 198.51.100.254 \ + --to 203.0.113.254 \ + --recvif ${epair_out_one}b + + # Allow time for sync + ifconfig ${epair_one}b inet 198.51.100.254 -alias + route del -net 203.0.113.0/24 198.51.100.1 + route add -net 203.0.113.0/24 198.51.100.2 + + sleep 2 + + # Now try to trigger the state on the other pfsync member + env PYTHONPATH=${common_dir} \ + ${common_dir}/pft_ping.py \ + --sendif ${epair_two}b \ + --fromaddr 198.51.100.254 \ + --to 203.0.113.254 \ + --recvif ${epair_out_two}b + + true +} + +route_to_cleanup() +{ + pfsynct_cleanup +} + atf_init_test_cases() { atf_add_test_case "basic" @@ -837,4 +932,5 @@ atf_init_test_cases() atf_add_test_case "timeout" atf_add_test_case "basic_ipv6_unicast" atf_add_test_case "basic_ipv6" + atf_add_test_case "route_to" } From nobody Sun Oct 8 08:39:24 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3Fvk6DNzz4x68X; Sun, 8 Oct 2023 08:39:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S3Fvk5zn3z3Jg0; Sun, 8 Oct 2023 08:39:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696754370; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tmV7CrBwXRxSHfwZ8UCEupEYiUfpKV/Hf+Swi+djud8=; b=a5ovft6KnxcSgkKuA+7nmKxz81i9yfc/AvCMLVGYEdu2rdFyehUvV1EBAwExjn3uHZ9ofE cLvjAbR3+iE566lspV9ymSOFOC/+A9P0oyXZ+avKtdZsetEtWtDW4zWQ653J+qF6iCA3De gpnyfRuDE6ikTwG+BdBqgPXUA/LPRdTocrrD5h94iF/iA5nin1UkLj9xVLwSMIyNmBpf7P LCkLhITql1qNw+e6Js+2nbwqq95u+MV8b2JnSaM8+2pmeW2wf8vMtOLERTVAlSDHwtLZeG 0VOYqVkPt9jK5uBOMa6Gt0Bdlbx7HA3Lzoqjhrwls541759PvcsY0G2VE7piFw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696754370; a=rsa-sha256; cv=none; b=DZuPmOqNjDSw9zBKdp40R2BdqQgiAj97zeymZcSTGDBTnnwAW2YlbGXn8uLIfI55FD0j7d tUoQBJlw2kEzzFVSwwv2BnttAvxyNJZ5GB5PgOJZ2/c/+Is3jleSuuadsp1C1FKF3qeN7X YabwN4VEZOQmkKTjCMElzNjUpfxCUcUNZLiL3T7ggxoqK7SdohPRTJl9noCu7vWODskRU+ +xsmOK5T1E7/SmjNAR8FvLlSlL/FVWF4dkhbf4KQR6W1HJYiyInwwF2qVh2a0gRj4VFHjv ClKh+Z9cV9Fswx/YQS+QdyHfD0o/AmwEmRswui4FFOfw1XP1ZLr+2ojqZKb36A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696754370; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tmV7CrBwXRxSHfwZ8UCEupEYiUfpKV/Hf+Swi+djud8=; b=Y2OUGYxzg6Pfb6GWPiUCPthrB9KsnWW58YxeAP3ciyMYnycbgaD3xbD9Q6+kEb1E3EF31Z 6N+FDrKNv7kb2PAAol2eXgVZaXERrq3/Yi1eetB5oITpZKc48Zd/gESylGdSsbPxrjBCn/ XKNGjq3+knXpJbaa1Wlb3CHBBc5zDaOSKOU2Ti+pACtbvJtdTB0lAyzOZTxSAtpxYnleYR jI7T9Lo+LEZ98XoAA+Tf6QMPoc0L2gvAMHHUFjBMvXYgusDRe0qV8uBy7TVhwMoPseFpVh MxctZAzxfMCI1AzGdjnZoB/Xr4n51MPnJ87NEm2I9OliwukVBgDq38SRwzPvug== 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 4S3Fvk53D0z15qX; Sun, 8 Oct 2023 08:39:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3988dUkQ002634; Sun, 8 Oct 2023 08:39:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3988dOh1002622; Sun, 8 Oct 2023 08:39:24 GMT (envelope-from git) Date: Sun, 8 Oct 2023 08:39:24 GMT Message-Id: <202310080839.3988dOh1002622@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Martin Matuska Subject: git: fdc38bc6cd28 - stable/14 - zfs: merge openzfs/zfs@2407f30bd (zfs-2.2-release) into stable/14 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: fdc38bc6cd28a56fbc82d6ca1d99f47569070b3a Auto-Submitted: auto-generated The branch stable/14 has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=fdc38bc6cd28a56fbc82d6ca1d99f47569070b3a commit fdc38bc6cd28a56fbc82d6ca1d99f47569070b3a Merge: f69181e9de1b 2407f30bda96 Author: Martin Matuska AuthorDate: 2023-10-08 07:58:51 +0000 Commit: Martin Matuska CommitDate: 2023-10-08 08:14:19 +0000 zfs: merge openzfs/zfs@2407f30bd (zfs-2.2-release) into stable/14 Notable upstream pull request merges: #15290 33d7c2d16 import: require force when cachefile hostid doesn't match on-disk #15319 bcd010d3a Reduce number of metaslab preload taskq threads #15339 1611b8e56 Add BTI landing pads to the AArch64 SHA2 assembly #15340 bc77a0c85 ARC: Remove b_cv from struct l1arc_buf_hdr #15347 3158b5d71 ARC: Drop different size headers for crypto #15350 ba7797c8d ARC: Remove b_bufcnt/b_ebufcnt from ARC headers #15353 9be8ddfb3 ZIL: Reduce maximum size of WR_COPIED to 7.5K #15362 8495536f7 zfsconcepts: add description of block cloning Obtained from: OpenZFS OpenZFS commit: 2407f30bda96f7d61a32fc38c638b3eb5b216284 OpenZFS tag: zfs-2.2.0-rc5 sys/contrib/openzfs/.cirrus.yml | 21 ++ sys/contrib/openzfs/.gitignore | 2 +- sys/contrib/openzfs/META | 2 +- sys/contrib/openzfs/cmd/zpool/zpool_main.c | 23 +- sys/contrib/openzfs/config/zfs-build.m4 | 3 + .../openzfs/include/os/linux/zfs/sys/trace_arc.h | 12 +- sys/contrib/openzfs/include/sys/arc_impl.h | 10 +- sys/contrib/openzfs/include/sys/metaslab_impl.h | 1 - sys/contrib/openzfs/include/sys/spa_impl.h | 4 +- sys/contrib/openzfs/man/man4/zfs.4 | 11 + sys/contrib/openzfs/man/man7/zfsconcepts.7 | 40 ++- .../module/icp/asm-aarch64/sha2/sha256-armv8.S | 3 + .../module/icp/asm-aarch64/sha2/sha512-armv8.S | 2 + .../openzfs/module/os/freebsd/zfs/sysctl_os.c | 22 -- sys/contrib/openzfs/module/zfs/arc.c | 322 +++++---------------- sys/contrib/openzfs/module/zfs/metaslab.c | 23 +- sys/contrib/openzfs/module/zfs/spa.c | 46 ++- sys/contrib/openzfs/module/zfs/zil.c | 17 +- sys/contrib/openzfs/rpm/generic/zfs.spec.in | 2 +- sys/contrib/openzfs/tests/runfiles/common.run | 4 + .../openzfs/tests/zfs-tests/tests/Makefile.am | 4 + ...ock_cloning_copyfilerange_fallback_same_txg.ksh | 2 + .../cli_root/zpool_import/zpool_import.cfg | 5 + .../cli_root/zpool_import/zpool_import.kshlib | 1 + .../zpool_import/zpool_import_hostid_changed.ksh | 59 ++++ .../zpool_import_hostid_changed_cachefile.ksh | 65 +++++ ...ort_hostid_changed_cachefile_unclean_export.ksh | 75 +++++ .../zpool_import_hostid_changed_unclean_export.ksh | 70 +++++ sys/modules/zfs/zfs_config.h | 4 +- sys/modules/zfs/zfs_gitrev.h | 2 +- 30 files changed, 521 insertions(+), 336 deletions(-) diff --cc sys/contrib/openzfs/.cirrus.yml index 000000000000,000000000000..18b292289e20 new file mode 100644 --- /dev/null +++ b/sys/contrib/openzfs/.cirrus.yml @@@ -1,0 -1,0 +1,21 @@@ ++env: ++ CIRRUS_CLONE_DEPTH: 1 ++ ARCH: amd64 ++ ++build_task: ++ matrix: ++ freebsd_instance: ++ image_family: freebsd-12-4 ++ freebsd_instance: ++ image_family: freebsd-13-2 ++ freebsd_instance: ++ image_family: freebsd-14-0-snap ++ prepare_script: ++ - pkg install -y autoconf automake libtool gettext-runtime gmake ksh93 py39-packaging py39-cffi py39-sysctl ++ configure_script: ++ - env MAKE=gmake ./autogen.sh ++ - env MAKE=gmake ./configure --with-config="user" --with-python=3.9 ++ build_script: ++ - gmake -j `sysctl -n kern.smp.cpus` ++ install_script: ++ - gmake install diff --cc sys/contrib/openzfs/.gitignore index 8d91dd9466c5,000000000000..1ef47d921c28 mode 100644,000000..100644 --- a/sys/contrib/openzfs/.gitignore +++ b/sys/contrib/openzfs/.gitignore @@@ -1,88 -1,0 +1,88 @@@ +# +# This is the top-level .gitignore file: +# ignore everything except a list of allowed files. +# +# This is not the place for entries that are specific to +# a subdirectory. Instead add those files to the +# .gitignore file in that subdirectory. +# +# N.B. +# Please use 'git ls-files -i --exclude-standard' +# command after changing this file, to see if there are +# any tracked files which get ignored after the change. + +* + +!.github +!cmd +!config +!contrib +!etc +!include +!lib +!man +!module +!rpm +!scripts +!tests +!udev + +!.github/** +!cmd/** +!config/** +!contrib/** +!etc/** +!include/** +!lib/** +!man/** +!module/** +!rpm/** +!scripts/** +!tests/** +!udev/** + +!.editorconfig ++!.cirrus.yml +!.gitignore +!.gitmodules +!AUTHORS +!autogen.sh +!CODE_OF_CONDUCT.md +!configure.ac +!copy-builtin +!COPYRIGHT +!LICENSE +!Makefile.am +!META +!NEWS +!NOTICE +!README.md +!RELEASES.md +!TEST +!zfs.release.in + - +# +# Normal rules +# +*.[oa] +*.o.ur-safe +*.lo +*.la +*.mod.c +*~ +*.swp +*.gcno +*.gcda +*.pyc +*.pyo +.deps +.libs +.dirstamp +.DS_Store +modules.order +Makefile +Makefile.in +*.patch +*.orig +*.tmp +*.log diff --cc sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed.ksh index 000000000000,bc82b7cc1ee8..bc82b7cc1ee8 mode 000000,100755..100755 --- a/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed.ksh +++ b/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed.ksh diff --cc sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_cachefile.ksh index 000000000000,07c43482d68f..07c43482d68f mode 000000,100755..100755 --- a/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_cachefile.ksh +++ b/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_cachefile.ksh diff --cc sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_cachefile_unclean_export.ksh index 000000000000,dcb1ac1ab69f..dcb1ac1ab69f mode 000000,100755..100755 --- a/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_cachefile_unclean_export.ksh +++ b/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_cachefile_unclean_export.ksh diff --cc sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_unclean_export.ksh index 000000000000,ad8cca642dbc..ad8cca642dbc mode 000000,100755..100755 --- a/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_unclean_export.ksh +++ b/sys/contrib/openzfs/tests/zfs-tests/tests/functional/cli_root/zpool_import/zpool_import_hostid_changed_unclean_export.ksh diff --cc sys/modules/zfs/zfs_config.h index 3d527ecbd00f,000000000000..90591123450c mode 100644,000000..100644 --- a/sys/modules/zfs/zfs_config.h +++ b/sys/modules/zfs/zfs_config.h @@@ -1,1134 -1,0 +1,1134 @@@ +/* + */ + +/* zfs_config.h. Generated from zfs_config.h.in by configure. */ +/* zfs_config.h.in. Generated from configure.ac by autoheader. */ + +/* Define to 1 if translation of program messages to the user's native + language is requested. */ +/* #undef ENABLE_NLS */ + +/* bio_end_io_t wants 1 arg */ +/* #undef HAVE_1ARG_BIO_END_IO_T */ + +/* lookup_bdev() wants 1 arg */ +/* #undef HAVE_1ARG_LOOKUP_BDEV */ + +/* submit_bio() wants 1 arg */ +/* #undef HAVE_1ARG_SUBMIT_BIO */ + +/* bdi_setup_and_register() wants 2 args */ +/* #undef HAVE_2ARGS_BDI_SETUP_AND_REGISTER */ + +/* vfs_getattr wants 2 args */ +/* #undef HAVE_2ARGS_VFS_GETATTR */ + +/* zlib_deflate_workspacesize() wants 2 args */ +/* #undef HAVE_2ARGS_ZLIB_DEFLATE_WORKSPACESIZE */ + +/* bdi_setup_and_register() wants 3 args */ +/* #undef HAVE_3ARGS_BDI_SETUP_AND_REGISTER */ + +/* vfs_getattr wants 3 args */ +/* #undef HAVE_3ARGS_VFS_GETATTR */ + +/* vfs_getattr wants 4 args */ +/* #undef HAVE_4ARGS_VFS_GETATTR */ + +/* kernel has access_ok with 'type' parameter */ +/* #undef HAVE_ACCESS_OK_TYPE */ + +/* posix_acl has refcount_t */ +/* #undef HAVE_ACL_REFCOUNT */ + +/* add_disk() returns int */ +/* #undef HAVE_ADD_DISK_RET */ + +/* Define if host toolchain supports AES */ +#define HAVE_AES 1 + +/* Define if you have [rt] */ +#define HAVE_AIO_H 1 + +#ifdef __amd64__ +#ifndef RESCUE +/* Define if host toolchain supports AVX */ +#define HAVE_AVX 1 +#endif + +/* Define if host toolchain supports AVX2 */ +#define HAVE_AVX2 1 + +/* Define if host toolchain supports AVX512BW */ +#define HAVE_AVX512BW 1 + +/* Define if host toolchain supports AVX512CD */ +#define HAVE_AVX512CD 1 + +/* Define if host toolchain supports AVX512DQ */ +#define HAVE_AVX512DQ 1 + +/* Define if host toolchain supports AVX512ER */ +#define HAVE_AVX512ER 1 + +/* Define if host toolchain supports AVX512F */ +#define HAVE_AVX512F 1 + +/* Define if host toolchain supports AVX512IFMA */ +#define HAVE_AVX512IFMA 1 + +/* Define if host toolchain supports AVX512PF */ +#define HAVE_AVX512PF 1 + +/* Define if host toolchain supports AVX512VBMI */ +#define HAVE_AVX512VBMI 1 + +/* Define if host toolchain supports AVX512VL */ +#define HAVE_AVX512VL 1 +#endif + +/* bdevname() is available */ +/* #undef HAVE_BDEVNAME */ + +/* bdev_check_media_change() exists */ +/* #undef HAVE_BDEV_CHECK_MEDIA_CHANGE */ + +/* bdev_*_io_acct() available */ +/* #undef HAVE_BDEV_IO_ACCT_63 */ + +/* bdev_*_io_acct() available */ +/* #undef HAVE_BDEV_IO_ACCT_OLD */ + +/* bdev_kobj() exists */ +/* #undef HAVE_BDEV_KOBJ */ + +/* bdev_max_discard_sectors() is available */ +/* #undef HAVE_BDEV_MAX_DISCARD_SECTORS */ + +/* bdev_max_secure_erase_sectors() is available */ +/* #undef HAVE_BDEV_MAX_SECURE_ERASE_SECTORS */ + +/* block_device_operations->submit_bio() returns void */ +/* #undef HAVE_BDEV_SUBMIT_BIO_RETURNS_VOID */ + +/* bdev_whole() is available */ +/* #undef HAVE_BDEV_WHOLE */ + +/* bio_alloc() takes 4 arguments */ +/* #undef HAVE_BIO_ALLOC_4ARG */ + +/* bio->bi_bdev->bd_disk exists */ +/* #undef HAVE_BIO_BDEV_DISK */ + +/* bio->bi_opf is defined */ +/* #undef HAVE_BIO_BI_OPF */ + +/* bio->bi_status exists */ +/* #undef HAVE_BIO_BI_STATUS */ + +/* bio has bi_iter */ +/* #undef HAVE_BIO_BVEC_ITER */ + +/* bio_*_io_acct() available */ +/* #undef HAVE_BIO_IO_ACCT */ + +/* bio_max_segs() is implemented */ +/* #undef HAVE_BIO_MAX_SEGS */ + +/* bio_set_dev() is available */ +/* #undef HAVE_BIO_SET_DEV */ + +/* bio_set_dev() GPL-only */ +/* #undef HAVE_BIO_SET_DEV_GPL_ONLY */ + +/* bio_set_dev() is a macro */ +/* #undef HAVE_BIO_SET_DEV_MACRO */ + +/* bio_set_op_attrs is available */ +/* #undef HAVE_BIO_SET_OP_ATTRS */ + +/* blkdev_get_by_path() exists and takes 4 args */ +/* #undef HAVE_BLKDEV_GET_BY_PATH_4ARG */ + +/* blkdev_get_by_path() handles ERESTARTSYS */ +/* #undef HAVE_BLKDEV_GET_ERESTARTSYS */ + +/* blkdev_issue_discard() is available */ +/* #undef HAVE_BLKDEV_ISSUE_DISCARD */ + +/* blkdev_issue_secure_erase() is available */ +/* #undef HAVE_BLKDEV_ISSUE_SECURE_ERASE */ + +/* blkdev_put() accepts void* as arg 2 */ +/* #undef HAVE_BLKDEV_PUT_HOLDER */ + +/* blkdev_reread_part() exists */ +/* #undef HAVE_BLKDEV_REREAD_PART */ + +/* blkg_tryget() is available */ +/* #undef HAVE_BLKG_TRYGET */ + +/* blkg_tryget() GPL-only */ +/* #undef HAVE_BLKG_TRYGET_GPL_ONLY */ + +/* blk_alloc_disk() exists */ +/* #undef HAVE_BLK_ALLOC_DISK */ + +/* blk_alloc_queue() expects request function */ +/* #undef HAVE_BLK_ALLOC_QUEUE_REQUEST_FN */ + +/* blk_alloc_queue_rh() expects request function */ +/* #undef HAVE_BLK_ALLOC_QUEUE_REQUEST_FN_RH */ + +/* blk_cleanup_disk() exists */ +/* #undef HAVE_BLK_CLEANUP_DISK */ + +/* blk_mode_t is defined */ +/* #undef HAVE_BLK_MODE_T */ + +/* block multiqueue is available */ +/* #undef HAVE_BLK_MQ */ + +/* blk queue backing_dev_info is dynamic */ +/* #undef HAVE_BLK_QUEUE_BDI_DYNAMIC */ + +/* blk_queue_discard() is available */ +/* #undef HAVE_BLK_QUEUE_DISCARD */ + +/* blk_queue_flag_clear() exists */ +/* #undef HAVE_BLK_QUEUE_FLAG_CLEAR */ + +/* blk_queue_flag_set() exists */ +/* #undef HAVE_BLK_QUEUE_FLAG_SET */ + +/* blk_queue_flush() is available */ +/* #undef HAVE_BLK_QUEUE_FLUSH */ + +/* blk_queue_flush() is GPL-only */ +/* #undef HAVE_BLK_QUEUE_FLUSH_GPL_ONLY */ + +/* blk_queue_secdiscard() is available */ +/* #undef HAVE_BLK_QUEUE_SECDISCARD */ + +/* blk_queue_secure_erase() is available */ +/* #undef HAVE_BLK_QUEUE_SECURE_ERASE */ + +/* blk_queue_update_readahead() exists */ +/* #undef HAVE_BLK_QUEUE_UPDATE_READAHEAD */ + +/* blk_queue_write_cache() exists */ +/* #undef HAVE_BLK_QUEUE_WRITE_CACHE */ + +/* blk_queue_write_cache() is GPL-only */ +/* #undef HAVE_BLK_QUEUE_WRITE_CACHE_GPL_ONLY */ + +/* BLK_STS_RESV_CONFLICT is defined */ +/* #undef HAVE_BLK_STS_RESV_CONFLICT */ + +/* Define if release() in block_device_operations takes 1 arg */ +/* #undef HAVE_BLOCK_DEVICE_OPERATIONS_RELEASE_1ARG */ + +/* Define if revalidate_disk() in block_device_operations */ +/* #undef HAVE_BLOCK_DEVICE_OPERATIONS_REVALIDATE_DISK */ + +/* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the + CoreFoundation framework. */ +/* #undef HAVE_CFLOCALECOPYCURRENT */ + +/* Define to 1 if you have the Mac OS X function + CFLocaleCopyPreferredLanguages in the CoreFoundation framework. */ +/* #undef HAVE_CFLOCALECOPYPREFERREDLANGUAGES */ + +/* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in + the CoreFoundation framework. */ +/* #undef HAVE_CFPREFERENCESCOPYAPPVALUE */ + +/* check_disk_change() exists */ +/* #undef HAVE_CHECK_DISK_CHANGE */ + +/* clear_inode() is available */ +/* #undef HAVE_CLEAR_INODE */ + +/* dentry uses const struct dentry_operations */ +/* #undef HAVE_CONST_DENTRY_OPERATIONS */ + +/* copy_from_iter() is available */ +/* #undef HAVE_COPY_FROM_ITER */ + +/* copy_splice_read exists */ +/* #undef HAVE_COPY_SPLICE_READ */ + +/* copy_to_iter() is available */ +/* #undef HAVE_COPY_TO_ITER */ + +/* cpu_has_feature() is GPL-only */ +/* #undef HAVE_CPU_HAS_FEATURE_GPL_ONLY */ + +/* yes */ +/* #undef HAVE_CPU_HOTPLUG */ + +/* current_time() exists */ +/* #undef HAVE_CURRENT_TIME */ + +/* Define if the GNU dcgettext() function is already present or preinstalled. + */ +/* #undef HAVE_DCGETTEXT */ + +/* DECLARE_EVENT_CLASS() is available */ +/* #undef HAVE_DECLARE_EVENT_CLASS */ + +/* dentry aliases are in d_u member */ +/* #undef HAVE_DENTRY_D_U_ALIASES */ + +/* dequeue_signal() takes 4 arguments */ +/* #undef HAVE_DEQUEUE_SIGNAL_4ARG */ + +/* lookup_bdev() wants dev_t arg */ +/* #undef HAVE_DEVT_LOOKUP_BDEV */ + +/* sops->dirty_inode() wants flags */ +/* #undef HAVE_DIRTY_INODE_WITH_FLAGS */ + +/* disk_check_media_change() exists */ +/* #undef HAVE_DISK_CHECK_MEDIA_CHANGE */ + +/* disk_*_io_acct() available */ +/* #undef HAVE_DISK_IO_ACCT */ + +/* disk_update_readahead() exists */ +/* #undef HAVE_DISK_UPDATE_READAHEAD */ + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* d_make_root() is available */ +/* #undef HAVE_D_MAKE_ROOT */ + +/* d_prune_aliases() is available */ +/* #undef HAVE_D_PRUNE_ALIASES */ + +/* dops->d_revalidate() operation takes nameidata */ +/* #undef HAVE_D_REVALIDATE_NAMEIDATA */ + +/* eops->encode_fh() wants child and parent inodes */ +/* #undef HAVE_ENCODE_FH_WITH_INODE */ + +/* sops->evict_inode() exists */ +/* #undef HAVE_EVICT_INODE */ + +/* FALLOC_FL_ZERO_RANGE is defined */ +/* #undef HAVE_FALLOC_FL_ZERO_RANGE */ + +/* fault_in_iov_iter_readable() is available */ +/* #undef HAVE_FAULT_IN_IOV_ITER_READABLE */ + +/* filemap_range_has_page() is available */ +/* #undef HAVE_FILEMAP_RANGE_HAS_PAGE */ + +/* fops->aio_fsync() exists */ +/* #undef HAVE_FILE_AIO_FSYNC */ + +/* file_dentry() is available */ +/* #undef HAVE_FILE_DENTRY */ + +/* fops->fadvise() exists */ +/* #undef HAVE_FILE_FADVISE */ + +/* file_inode() is available */ +/* #undef HAVE_FILE_INODE */ + +/* flush_dcache_page() is GPL-only */ +/* #undef HAVE_FLUSH_DCACHE_PAGE_GPL_ONLY */ + +/* iops->follow_link() cookie */ +/* #undef HAVE_FOLLOW_LINK_COOKIE */ + +/* iops->follow_link() nameidata */ +/* #undef HAVE_FOLLOW_LINK_NAMEIDATA */ + +/* Define if compiler supports -Wformat-overflow */ +/* #undef HAVE_FORMAT_OVERFLOW */ + +/* fops->fsync() with range */ +/* #undef HAVE_FSYNC_RANGE */ + +/* fops->fsync() without dentry */ +/* #undef HAVE_FSYNC_WITHOUT_DENTRY */ + +/* yes */ +/* #undef HAVE_GENERIC_FADVISE */ + +/* generic_fillattr requires struct mnt_idmap* */ +/* #undef HAVE_GENERIC_FILLATTR_IDMAP */ + +/* generic_fillattr requires struct user_namespace* */ +/* #undef HAVE_GENERIC_FILLATTR_USERNS */ + +/* generic_*_io_acct() 3 arg available */ +/* #undef HAVE_GENERIC_IO_ACCT_3ARG */ + +/* generic_*_io_acct() 4 arg available */ +/* #undef HAVE_GENERIC_IO_ACCT_4ARG */ + +/* generic_readlink is global */ +/* #undef HAVE_GENERIC_READLINK */ + +/* generic_setxattr() exists */ +/* #undef HAVE_GENERIC_SETXATTR */ + +/* generic_write_checks() takes kiocb */ +/* #undef HAVE_GENERIC_WRITE_CHECKS_KIOCB */ + +/* Define if the GNU gettext() function is already present or preinstalled. */ +/* #undef HAVE_GETTEXT */ + +/* iops->get_acl() exists */ +/* #undef HAVE_GET_ACL */ + +/* iops->get_acl() takes rcu */ +/* #undef HAVE_GET_ACL_RCU */ + +/* has iops->get_inode_acl() */ +/* #undef HAVE_GET_INODE_ACL */ + +/* iops->get_link() cookie */ +/* #undef HAVE_GET_LINK_COOKIE */ + +/* iops->get_link() delayed */ +/* #undef HAVE_GET_LINK_DELAYED */ + +/* group_info->gid exists */ +/* #undef HAVE_GROUP_INFO_GID */ + +/* has_capability() is available */ +/* #undef HAVE_HAS_CAPABILITY */ + +/* iattr->ia_vfsuid and iattr->ia_vfsgid exist */ +/* #undef HAVE_IATTR_VFSID */ + +/* Define if you have the iconv() function and it works. */ +#define HAVE_ICONV 1 + +/* iops->getattr() takes struct mnt_idmap* */ +/* #undef HAVE_IDMAP_IOPS_GETATTR */ + +/* iops->setattr() takes struct mnt_idmap* */ +/* #undef HAVE_IDMAP_IOPS_SETATTR */ + +/* APIs for idmapped mount are present */ +/* #undef HAVE_IDMAP_MNT_API */ + +/* Define if compiler supports -Wimplicit-fallthrough */ +/* #undef HAVE_IMPLICIT_FALLTHROUGH */ + +/* Define if compiler supports -Winfinite-recursion */ +/* #undef HAVE_INFINITE_RECURSION */ + +/* yes */ +/* #undef HAVE_INODE_LOCK_SHARED */ + +/* inode_owner_or_capable() exists */ +/* #undef HAVE_INODE_OWNER_OR_CAPABLE */ + +/* inode_owner_or_capable() takes mnt_idmap */ +/* #undef HAVE_INODE_OWNER_OR_CAPABLE_IDMAP */ + +/* inode_owner_or_capable() takes user_ns */ +/* #undef HAVE_INODE_OWNER_OR_CAPABLE_USERNS */ + +/* inode_set_flags() exists */ +/* #undef HAVE_INODE_SET_FLAGS */ + +/* inode_set_iversion() exists */ +/* #undef HAVE_INODE_SET_IVERSION */ + +/* inode->i_*time's are timespec64 */ +/* #undef HAVE_INODE_TIMESPEC64_TIMES */ + +/* timestamp_truncate() exists */ +/* #undef HAVE_INODE_TIMESTAMP_TRUNCATE */ + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* in_compat_syscall() is available */ +/* #undef HAVE_IN_COMPAT_SYSCALL */ + +/* iops->create() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_CREATE_IDMAP */ + +/* iops->create() takes struct user_namespace* */ +/* #undef HAVE_IOPS_CREATE_USERNS */ + +/* iops->mkdir() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_MKDIR_IDMAP */ + +/* iops->mkdir() takes struct user_namespace* */ +/* #undef HAVE_IOPS_MKDIR_USERNS */ + +/* iops->mknod() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_MKNOD_IDMAP */ + +/* iops->mknod() takes struct user_namespace* */ +/* #undef HAVE_IOPS_MKNOD_USERNS */ + +/* iops->permission() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_PERMISSION_IDMAP */ + +/* iops->permission() takes struct user_namespace* */ +/* #undef HAVE_IOPS_PERMISSION_USERNS */ + +/* iops->rename() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_RENAME_IDMAP */ + +/* iops->rename() takes struct user_namespace* */ +/* #undef HAVE_IOPS_RENAME_USERNS */ + +/* iops->setattr() exists */ +/* #undef HAVE_IOPS_SETATTR */ + +/* iops->symlink() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_SYMLINK_IDMAP */ + +/* iops->symlink() takes struct user_namespace* */ +/* #undef HAVE_IOPS_SYMLINK_USERNS */ + +/* iov_iter_advance() is available */ +/* #undef HAVE_IOV_ITER_ADVANCE */ + +/* iov_iter_count() is available */ +/* #undef HAVE_IOV_ITER_COUNT */ + +/* iov_iter_fault_in_readable() is available */ +/* #undef HAVE_IOV_ITER_FAULT_IN_READABLE */ + +/* iov_iter_revert() is available */ +/* #undef HAVE_IOV_ITER_REVERT */ + +/* iov_iter_type() is available */ +/* #undef HAVE_IOV_ITER_TYPE */ + +/* iov_iter types are available */ +/* #undef HAVE_IOV_ITER_TYPES */ + +/* yes */ +/* #undef HAVE_IO_SCHEDULE_TIMEOUT */ + +/* Define to 1 if you have the `issetugid' function. */ +#define HAVE_ISSETUGID 1 + +/* iter_iov() is available */ +/* #undef HAVE_ITER_IOV */ + +/* kernel has kernel_fpu_* functions */ +/* #undef HAVE_KERNEL_FPU */ + +/* kernel has asm/fpu/api.h */ +/* #undef HAVE_KERNEL_FPU_API_HEADER */ + +/* kernel fpu internal */ +/* #undef HAVE_KERNEL_FPU_INTERNAL */ + +/* kernel has asm/fpu/internal.h */ +/* #undef HAVE_KERNEL_FPU_INTERNAL_HEADER */ + +/* uncached_acl_sentinel() exists */ +/* #undef HAVE_KERNEL_GET_ACL_HANDLE_CACHE */ + +/* Define if compiler supports -Winfinite-recursion */ +/* #undef HAVE_KERNEL_INFINITE_RECURSION */ + +/* kernel does stack verification */ +/* #undef HAVE_KERNEL_OBJTOOL */ + +/* kernel has linux/objtool.h */ +/* #undef HAVE_KERNEL_OBJTOOL_HEADER */ + +/* kernel_read() take loff_t pointer */ +/* #undef HAVE_KERNEL_READ_PPOS */ + +/* timer_list.function gets a timer_list */ +/* #undef HAVE_KERNEL_TIMER_FUNCTION_TIMER_LIST */ + +/* struct timer_list has a flags member */ +/* #undef HAVE_KERNEL_TIMER_LIST_FLAGS */ + +/* timer_setup() is available */ +/* #undef HAVE_KERNEL_TIMER_SETUP */ + +/* kernel_write() take loff_t pointer */ +/* #undef HAVE_KERNEL_WRITE_PPOS */ + +/* kmem_cache_create_usercopy() exists */ +/* #undef HAVE_KMEM_CACHE_CREATE_USERCOPY */ + +/* kstrtoul() exists */ +/* #undef HAVE_KSTRTOUL */ + +/* ktime_get_coarse_real_ts64() exists */ +/* #undef HAVE_KTIME_GET_COARSE_REAL_TS64 */ + +/* ktime_get_raw_ts64() exists */ +/* #undef HAVE_KTIME_GET_RAW_TS64 */ + +/* kvmalloc exists */ +/* #undef HAVE_KVMALLOC */ + +/* Define if you have [aio] */ +/* #undef HAVE_LIBAIO */ + +/* Define if you have [blkid] */ +/* #undef HAVE_LIBBLKID */ + +/* Define if you have [crypto] */ +#define HAVE_LIBCRYPTO 1 + +/* Define if you have [tirpc] */ +/* #undef HAVE_LIBTIRPC */ + +/* Define if you have [udev] */ +/* #undef HAVE_LIBUDEV */ + +/* Define if you have [uuid] */ +/* #undef HAVE_LIBUUID */ + +/* linux/blk-cgroup.h exists */ +/* #undef HAVE_LINUX_BLK_CGROUP_HEADER */ + +/* lseek_execute() is available */ +/* #undef HAVE_LSEEK_EXECUTE */ + +/* makedev() is declared in sys/mkdev.h */ +/* #undef HAVE_MAKEDEV_IN_MKDEV */ + +/* makedev() is declared in sys/sysmacros.h */ +/* #undef HAVE_MAKEDEV_IN_SYSMACROS */ + +/* Noting that make_request_fn() returns blk_qc_t */ +/* #undef HAVE_MAKE_REQUEST_FN_RET_QC */ + +/* Noting that make_request_fn() returns void */ +/* #undef HAVE_MAKE_REQUEST_FN_RET_VOID */ + +/* iops->mkdir() takes umode_t */ +/* #undef HAVE_MKDIR_UMODE_T */ + +/* Define to 1 if you have the `mlockall' function. */ +#define HAVE_MLOCKALL 1 + +/* lookup_bdev() wants mode arg */ +/* #undef HAVE_MODE_LOOKUP_BDEV */ + +/* Define if host toolchain supports MOVBE */ +#define HAVE_MOVBE 1 + +/* new_sync_read()/new_sync_write() are available */ +/* #undef HAVE_NEW_SYNC_READ */ + +/* folio_wait_bit() exists */ +/* #undef HAVE_PAGEMAP_FOLIO_WAIT_BIT */ + +/* part_to_dev() exists */ +/* #undef HAVE_PART_TO_DEV */ + +/* iops->getattr() takes a path */ +/* #undef HAVE_PATH_IOPS_GETATTR */ + +/* Define if host toolchain supports PCLMULQDQ */ +#define HAVE_PCLMULQDQ 1 + +/* percpu_counter_add_batch() is defined */ +/* #undef HAVE_PERCPU_COUNTER_ADD_BATCH */ + +/* percpu_counter_init() wants gfp_t */ +/* #undef HAVE_PERCPU_COUNTER_INIT_WITH_GFP */ + +/* posix_acl_chmod() exists */ +/* #undef HAVE_POSIX_ACL_CHMOD */ + +/* posix_acl_from_xattr() needs user_ns */ +/* #undef HAVE_POSIX_ACL_FROM_XATTR_USERNS */ + +/* posix_acl_release() is available */ +/* #undef HAVE_POSIX_ACL_RELEASE */ + +/* posix_acl_release() is GPL-only */ +/* #undef HAVE_POSIX_ACL_RELEASE_GPL_ONLY */ + +/* posix_acl_valid() wants user namespace */ +/* #undef HAVE_POSIX_ACL_VALID_WITH_NS */ + +/* proc_ops structure exists */ +/* #undef HAVE_PROC_OPS_STRUCT */ + +/* iops->put_link() cookie */ +/* #undef HAVE_PUT_LINK_COOKIE */ + +/* iops->put_link() delayed */ +/* #undef HAVE_PUT_LINK_DELAYED */ + +/* iops->put_link() nameidata */ +/* #undef HAVE_PUT_LINK_NAMEIDATA */ + +/* If available, contains the Python version number currently in use. */ +#define HAVE_PYTHON "3.7" + +/* qat is enabled and existed */ +/* #undef HAVE_QAT */ + +/* struct reclaim_state has reclaimed */ +/* #undef HAVE_RECLAIM_STATE_RECLAIMED */ + +/* register_shrinker is vararg */ +/* #undef HAVE_REGISTER_SHRINKER_VARARG */ + +/* register_sysctl_table exists */ +/* #undef HAVE_REGISTER_SYSCTL_TABLE */ + +/* iops->rename2() exists */ +/* #undef HAVE_RENAME2 */ + +/* struct inode_operations_wrapper takes .rename2() */ +/* #undef HAVE_RENAME2_OPERATIONS_WRAPPER */ + +/* iops->rename() wants flags */ +/* #undef HAVE_RENAME_WANTS_FLAGS */ + +/* REQ_DISCARD is defined */ +/* #undef HAVE_REQ_DISCARD */ + +/* REQ_FLUSH is defined */ +/* #undef HAVE_REQ_FLUSH */ + +/* REQ_OP_DISCARD is defined */ +/* #undef HAVE_REQ_OP_DISCARD */ + +/* REQ_OP_FLUSH is defined */ +/* #undef HAVE_REQ_OP_FLUSH */ + +/* REQ_OP_SECURE_ERASE is defined */ +/* #undef HAVE_REQ_OP_SECURE_ERASE */ + +/* REQ_PREFLUSH is defined */ +/* #undef HAVE_REQ_PREFLUSH */ + +/* revalidate_disk() is available */ +/* #undef HAVE_REVALIDATE_DISK */ + +/* revalidate_disk_size() is available */ +/* #undef HAVE_REVALIDATE_DISK_SIZE */ + +/* struct rw_semaphore has member activity */ +/* #undef HAVE_RWSEM_ACTIVITY */ + +/* struct rw_semaphore has atomic_long_t member count */ +/* #undef HAVE_RWSEM_ATOMIC_LONG_COUNT */ + +/* linux/sched/signal.h exists */ +/* #undef HAVE_SCHED_SIGNAL_HEADER */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SECURITY_PAM_MODULES_H 1 + +/* setattr_prepare() accepts mnt_idmap */ +/* #undef HAVE_SETATTR_PREPARE_IDMAP */ + +/* setattr_prepare() is available, doesn't accept user_namespace */ +/* #undef HAVE_SETATTR_PREPARE_NO_USERNS */ + +/* setattr_prepare() accepts user_namespace */ +/* #undef HAVE_SETATTR_PREPARE_USERNS */ + +/* iops->set_acl() exists, takes 3 args */ +/* #undef HAVE_SET_ACL */ + +/* iops->set_acl() takes 4 args, arg1 is struct mnt_idmap * */ +/* #undef HAVE_SET_ACL_IDMAP_DENTRY */ + +/* iops->set_acl() takes 4 args */ +/* #undef HAVE_SET_ACL_USERNS */ + +/* iops->set_acl() takes 4 args, arg2 is struct dentry * */ +/* #undef HAVE_SET_ACL_USERNS_DENTRY_ARG2 */ + +/* set_cached_acl() is usable */ +/* #undef HAVE_SET_CACHED_ACL_USABLE */ + +/* set_special_state() exists */ +/* #undef HAVE_SET_SPECIAL_STATE */ + +/* struct shrink_control exists */ +/* #undef HAVE_SHRINK_CONTROL_STRUCT */ + +/* kernel_siginfo_t exists */ +/* #undef HAVE_SIGINFO */ + +/* signal_stop() exists */ +/* #undef HAVE_SIGNAL_STOP */ + +/* new shrinker callback wants 2 args */ +/* #undef HAVE_SINGLE_SHRINKER_CALLBACK */ + +/* cs->count_objects exists */ +/* #undef HAVE_SPLIT_SHRINKER_CALLBACK */ + +#if defined(__amd64__) || defined(__i386__) +/* Define if host toolchain supports SSE */ +#define HAVE_SSE 1 + *** 366 LINES SKIPPED *** From nobody Mon Oct 9 00:58:53 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3gdn5hntz4wTd5; Mon, 9 Oct 2023 00:58:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S3gdn5CqRz3KqV; Mon, 9 Oct 2023 00:58:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696813133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=URldmZNMM8i4lze01/OKzGLTygz3A4oeF/hWmxFEJlQ=; b=Hjjnxvt4n/EUcPaBNi+Kvj4hpDPfLfXz1glxpVxvPZidL9ioAYJ41swiiTUePv1YOp6E+J zv4aEOJURQ16Rr7gv96RDeE7kgBu3gDuOpAX4lnZZheWAmm+qq15e+g2vja81D2LI+zPaa z/VF/Q28asFcq89necKH+LO2n/mFvDFT+NwSZnIWL9n2RjwLd23wHuB9rFHBObEwJRmJXt riu7+iAb8JFihoz9R+3YQZVAbUXO/2qEcamMKXu3gvDPBGGIiymYNoypdgobS7gkN522Vw CnXz1Ec4VcrFi1nRbaVTeGkM6WHRLiwF3hi6It8Z2GViEGKWC5K7EJ3IAbZDdg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696813133; a=rsa-sha256; cv=none; b=Q2lJRp6t6rjB4w6WIhdfRqRaiPqjVNRBZmuawEK2HswpAbQBmU9XjRYPi+Z9dHmNlSnlTf SeMMds1+Y19bf6BcwFUZpmUShRInI8SShb7I7wu38m1AuCfsrd7FSqgwdILLbn4gxHi2OH ZyZKoCL/NILKbt9DQeiBQIJG19B+mve8MWhqSzvrbzdjIvgagOwn9sjAOxLsIl9q7LE2kk 3eOIBqWHL3fZqRm34eDMpXxAZsgRrHuWuJRrBPkuO2N7x7r368DBcRToqmrYfqhKDXnAsj dd+SAlQUzu4N5ZUC/RxFxBGqkSVMEuZ6o20xYCRmtSoW8j52M467wEH7YObnYA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696813133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=URldmZNMM8i4lze01/OKzGLTygz3A4oeF/hWmxFEJlQ=; b=uKMcLjWaoUHLwp6mBfbgVJ8ABZLz7Hl5DhKEOiC7EF+OBt2IlR8000UrhKU/mnLZtPpO5w 31IQIwLIdsGzDPegoRsfe9a+LcdAxvIweEAp7JPS2EIp160Pn5mu5fk3n4cFQHG5GWN75v KCXtwAoph/+y4/owUEqZhAtfrHol6Aaw3UseDvPyadbxx81QQ+y4TPFelt1RWpAqFo7riR BvPWSSwbNLk78q2iI8wZq68usjWnC3A38gllLS4B1gVUXiODcK8MhLMwKQeW/n0aqvjh9p FhGUhnOlQP59FaDQGNguZTN69HNN6LkC/tfz+DVuARRBOxqQH8kkXFB5IGVJ/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 4S3gdn4GQ3zbZX; Mon, 9 Oct 2023 00:58:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3990wrRs040165; Mon, 9 Oct 2023 00:58:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3990wrWl040162; Mon, 9 Oct 2023 00:58:53 GMT (envelope-from git) Date: Mon, 9 Oct 2023 00:58:53 GMT Message-Id: <202310090058.3990wrWl040162@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 510404f2f49e - stable/14 - nvme: Fix memory leak in pt ioctl commands List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 510404f2f49e0797bbef0034b3c13831bed78b35 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=510404f2f49e0797bbef0034b3c13831bed78b35 commit 510404f2f49e0797bbef0034b3c13831bed78b35 Author: David Sloan AuthorDate: 2023-09-07 16:22:21 +0000 Commit: Mark Johnston CommitDate: 2023-10-09 00:41:25 +0000 nvme: Fix memory leak in pt ioctl commands When running nvme passthrough commands through the ioctl interface memory is mapped with vmapbuf() but not unmapped. This results in leaked memory whenever a process executes an nvme passthrough command with a data buffer. This can be replicated with a simple c function (error checks skipped for brevity): void leak_memory(int nvme_ns_fd, uint16_t nblocks) { struct nvme_pt_command pt = { .cmd = { .opc = NVME_OPC_READ, .cdw12 = nblocks - 1, }, .len = nblocks * 512, // Assumes devices with 512 byte lba .is_read = 1, // Reads and writes should both trigger leak } void *buf; posix_memalign(&buf, nblocks * 512); pt.buf = buf; ioctl(nvme_ns_fd, NVME_PASSTHROUGH_COMMAND, &pt); free(buf); } Signed-off-by: David Sloan PR: 273626 Reviewed by: imp, markj MFC after: 1 week (cherry picked from commit 7ea866eb14f8ec869a525442c03228b6701e1dab) --- sys/dev/nvme/nvme_ctrlr.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/dev/nvme/nvme_ctrlr.c b/sys/dev/nvme/nvme_ctrlr.c index 30a5ee81b2a4..ef4d7daa6efa 100644 --- a/sys/dev/nvme/nvme_ctrlr.c +++ b/sys/dev/nvme/nvme_ctrlr.c @@ -1334,8 +1334,9 @@ nvme_ctrlr_passthrough_cmd(struct nvme_controller *ctrlr, mtx_sleep(pt, mtx, PRIBIO, "nvme_pt", 0); mtx_unlock(mtx); -err: if (buf != NULL) { + vunmapbuf(buf); +err: uma_zfree(pbuf_zone, buf); PRELE(curproc); } From nobody Mon Oct 9 00:58:54 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3gdp6TChz4wTZ0; Mon, 9 Oct 2023 00:58:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S3gdp5yc8z3LBm; Mon, 9 Oct 2023 00:58:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696813134; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RWfukQify4CTiLOLLAJYaRRn4O1pKHoWCCQoImr/cVQ=; b=OIIbsFe28J/D3oAq3mw429z7TLEy5JcYs43eGjVTFEcquo1XkeG73RIJwTBqZp68n05vrD IZGO4xa7flQo2Qj9+CIQQ/rSbTQsOlGw7UOxN+0BvUlHcESk0OXQrPBuU7SohkrzckbrsH EXasRcP86TqqUcah8eUu/zCjPrFnT9ZVAyNdjLSAQj4X6mCw4MhY8MwzmAJV3iGsnJVidM fNXtdU7m95nNPXE8PhmbBy+a/wp4aJ1klGBzYKuLRjMW1mdOaDTWv4DzEJyyK9aqZe4+J0 eJPdLbBV8asJ0gbHiL4DMYnx3U50LabQnt83KU3KqqCNkt42usjxIrdE0mMcYg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696813134; a=rsa-sha256; cv=none; b=Lapwx51BEYITpGXlFSpJKsWVi0fcVVo15dVYxJCNbxAZus56r2DWYDyXDUoCWdHkm5kaD0 a7Qfdw3Car7Tsmw3D6m4SyCPiioqAUlnzMZ2c8ZMpXuIW62e/YV7smszDePotEWfk9U16A Fhxb3YA+m3IUIzz7PwYGiyXByZAiOKXo5L3ONBjxdz+RN9IJ+SlRU6GG0r6QGDClKmZVt8 F2ZhTs3693vZatVongfG//GgH9MKgdsXng7fdS0EJpys+/hjZzrVYJcbS8cLNd3YGTJ/Sd CAGY9YNOxp7N+DeIvzfmPIr7bVkT7G2p9nXGJqZLtScL/b0cYYvSm9Dks+P3TA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696813134; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=RWfukQify4CTiLOLLAJYaRRn4O1pKHoWCCQoImr/cVQ=; b=p7xOwpMWRlZplboR4Uf1IfHs1+9x0rN2Kt9yAAGiqUSlULFneatUDZ6/aslhB8Hcfs3Xah Vp/CKGtCm9n1dnCMXe8CZZTijNt3aEob3aNLOGMyweXpQWl32VHbmSWVwZIOYEGjzjZYPO ExySxoJfR8BPPZI16166T2zDdgKfoKPfuFf79wpKKQsThZAjbcSmUkOjZEo37chJpW/iXk cF883ydyWWzyT4Gz693OILHBRR19rc3ShmxyBYsCQAhR973hkhcE62WPmYnklaeAABLmPe mjO96l57xWF0fWfopQ4BR4shAfqH+63BusvqtUnNnJFnzWR6cwHLP/s2wNq5jQ== 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 4S3gdp53fKzb9T; Mon, 9 Oct 2023 00:58:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3990wsJ1040213; Mon, 9 Oct 2023 00:58:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3990wsmr040210; Mon, 9 Oct 2023 00:58:54 GMT (envelope-from git) Date: Mon, 9 Oct 2023 00:58:54 GMT Message-Id: <202310090058.3990wsmr040210@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: aa229a59adea - stable/14 - swap_pager: Fix a race in swap_pager_swapoff_object() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: aa229a59adeaf49517183c8117a239e2b68012f5 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=aa229a59adeaf49517183c8117a239e2b68012f5 commit aa229a59adeaf49517183c8117a239e2b68012f5 Author: Mark Johnston AuthorDate: 2023-10-02 11:49:27 +0000 Commit: Mark Johnston CommitDate: 2023-10-09 00:41:35 +0000 swap_pager: Fix a race in swap_pager_swapoff_object() When we disable swapping to a device, we scan the full VM object list looking for objects with swap trie nodes that reference the device in question. The pages corresponding to those nodes are paged in. While paging in, we drop the VM object lock. Moreover, we do not hold a reference for the object; swap_pager_swapoff_object() merely bumps the paging-in-progress counter. vm_object_terminate() waits for this counter to drain before proceeding and freeing pages. However, swap_pager_swapoff_object() decrements the counter before re-acquiring the VM object lock, which means that vm_object_terminate() can race to acquire the lock and free the pages. Then, swap_pager_swapoff_object() ends up unbusying a freed page. Fix the problem by acquiring the lock before waking up sleepers. PR: 273610 Reported by: Graham Perrin Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D42029 (cherry picked from commit e61568aeeec7667789e6c9d4837e074edecc990e) --- sys/vm/swap_pager.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/vm/swap_pager.c b/sys/vm/swap_pager.c index e548c2d16a0b..38151b3be96f 100644 --- a/sys/vm/swap_pager.c +++ b/sys/vm/swap_pager.c @@ -1890,8 +1890,8 @@ swap_pager_swapoff_object(struct swdevt *sp, vm_object_t object) if (rv != VM_PAGER_OK) panic("%s: read from swap failed: %d", __func__, rv); - vm_object_pip_wakeupn(object, 1); VM_OBJECT_WLOCK(object); + vm_object_pip_wakeupn(object, 1); vm_page_xunbusy(m); /* From nobody Mon Oct 9 00:58:55 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3gdr0rBHz4wTdC; Mon, 9 Oct 2023 00:58: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 4S3gdr09vcz3Kw5; Mon, 9 Oct 2023 00:58:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696813136; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pSqBH/5CJu8oqMgCrMwi9yoGno3Z6CX75hgmLDz+iOE=; b=cX0LFUz3MXzttPF0eMMmZfkTPXf6Zgg3TrEYa/CgOwOmpaAGuqjuwhHnZx8ZC0h/MX6WKc nJpj5a/B5RJ5bU3NZIU/v3h+wTr7YRf147A7ka8otz3rLbulgsslxcR3Du0U6rzhjv4vbD LwhnGrnTY4kYHCtokGf5Wgrc0MyFe5iZXjKQmPeJYajbFaZIa87CKnUNVZzvymlpKiAUnj KHgZ0zacRLCvwag8ECqUxPHqllFqiXln9aoQ6WZ5PlhxJcGIWY0SpFQ21H2EDoggycWzBK /CE8JXEiqPKlKp61Yv2DWE+EO3qZf27VAuF+0zh/ZrLk7DzeXzLisioM4Ofn0A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696813136; a=rsa-sha256; cv=none; b=yhpthQLve4bAKnQmMzhqahopAkmI4bdtVh/DxCMdZ/jor6jvxQrHSMObi+eCDMYUheu+a5 d1pefEcUiQEfdcvYFnVWV+47bdK/YaHHbsQQueo7hga4U/YWv5B5V/btwNdZP67m8xgjQz 2KxWVPl/rYrS3Y7Wq9a1EqcIunDN2a131p0T1rkcP671lJ8TxRtghJ6cUtUyVHVoCXO77n swOLClz4poLGbBQSO2VSuIOYo8Hhx3CTqGo7LIB3793w6D6ZG+Js4YaE0tCK07iZ9YKulB lH3urRE6nMerzachqRyi0emcqVC66igt95Qmh+r4YpiM1OeO31uhKq2hg8p3qA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696813136; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pSqBH/5CJu8oqMgCrMwi9yoGno3Z6CX75hgmLDz+iOE=; b=FSawLUwkfaiP1XoUv8poFTn/cZ/g8MM/pKrkrAdQgE/9DgaCdtHMQlOsOLaY5QfPbvDsL9 fVRpP8Q1ygSnRrrcrlchpdwKoikZtLMCd6NTZhJ0di3T2APMyuq58j9lMU8ekYa4Uzpfs5 2UxOIb7fSjRzmK7hvMKR0bH9sRQOIAaBg89DBwHcqfkTa6v0UnFlQGHHP7ERV/+yKok66z VG/Y9wG9Oa7ddrz7fw7cEMQlUxhbG0GpaFZUmkej4IU1ySFcd34iOX+AMPj7QGGbK67EAQ dG5atIrEcc62ArE09t4Y39khcKDx/MOBC5xV9CZj8fIwFYEuHrJ/QQh/EHzTJg== 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 4S3gdq63KgzbZY; Mon, 9 Oct 2023 00:58:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3990wtnF040262; Mon, 9 Oct 2023 00:58:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3990wta5040259; Mon, 9 Oct 2023 00:58:55 GMT (envelope-from git) Date: Mon, 9 Oct 2023 00:58:55 GMT Message-Id: <202310090058.3990wta5040259@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: d08ef6f7da39 - stable/14 - netdump: Check the return value of ifunit_ref() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d08ef6f7da3943dc49999988e6c2ac03644bdaf1 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=d08ef6f7da3943dc49999988e6c2ac03644bdaf1 commit d08ef6f7da3943dc49999988e6c2ac03644bdaf1 Author: Mark Johnston AuthorDate: 2023-10-02 12:08:20 +0000 Commit: Mark Johnston CommitDate: 2023-10-09 00:41:42 +0000 netdump: Check the return value of ifunit_ref() We may fail to match if the specific interface doesn't exist or was renamed. PR: 273715 Reported by: grembo MFC after: 1 week (cherry picked from commit d94d07d58141dcff48f01c6b3e5a31de9d7a7938) --- sys/netinet/netdump/netdump_client.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/netinet/netdump/netdump_client.c b/sys/netinet/netdump/netdump_client.c index 35167f690ed2..0f0cf4dbb79f 100644 --- a/sys/netinet/netdump/netdump_client.c +++ b/sys/netinet/netdump/netdump_client.c @@ -451,6 +451,8 @@ netdump_configure(struct diocskerneldump_arg *conf, struct thread *td) CURVNET_SET(vnet0); ifp = ifunit_ref(conf->kda_iface); CURVNET_RESTORE(); + if (ifp == NULL) + return (ENODEV); if (!DEBUGNET_SUPPORTED_NIC(ifp)) { if_rele(ifp); return (ENODEV); From nobody Mon Oct 9 00:59:01 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3gdx5C2kz4wTnr; Mon, 9 Oct 2023 00:59: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 4S3gdx4jtxz3Lbm; Mon, 9 Oct 2023 00:59:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696813141; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YqHUnl7r+bc+9/XjS4GCEt3xv2ik2RcRx41DJLd4tUY=; b=iFJJMuqdi/5KTAd+sqfyRYBVWNYnBBi+yuGx+p8QAV/c64nKMJckO79wVOWSjNCzN72kcQ 80OUgH+VsRTYjrom+/q5+6xaVbqr0uXj0Bk/WvqVJnDPe92WPVVyrXRgJ8DPrf6lbndoIb 8BMK+thfJIG1hyB35Yop1UFfujRiEu5Ei9FEkJx6/FvSt90JlK+etyu+u+f3KUx0Wmz9wW METg3xyXUy38KEr2AEmC3+SHbwTc1lbeSd1UyZnsWF1QJrv7Lqu6/I/HhjIODfc18SWycs ybWjhAccytKSmpbbRz1ysU+984ZdERh5TP/75Jsaj7IF0eeAGox5ptY65Q7Rgg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696813141; a=rsa-sha256; cv=none; b=UldgPkFnq1DAi0YfxW/KMzGhik4WCOxn+ZkCypZXp+LWof1AlIkZQM0/yXPJaygo2k7sQ1 Z6upOPJY1LrUOXxk6lxbcZ2gLk/2HTrAlUwHfKm9v5v7O1NKG6EgJ8gBKfKbqCCfGM12tx Mae5c4w59I8yAz7spNdCaLTgdRPhceoWZt5jd4SNopy9Xt9i8k2XGhIQEZBDVDIeYDABt5 9+2IdqDuAi5pvHElfmkAJdMluY5R18JaGZt7xh1dArLnRleifS8BlFya0eAIlCg+yQ9vKW oyfSjW1ALN+7eLvOF+LMUzgSCzjZg+3T/RVHdr1RaZJeuHifXZyVBhmKn4w9Dg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696813141; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YqHUnl7r+bc+9/XjS4GCEt3xv2ik2RcRx41DJLd4tUY=; b=jcB6cHuZHH06R81MJ+aAZDzgWd/ymk8VL6oHYw0A3oXdUFDcuIEFN9cLbQisTieO1E4Rxl MsYJ/gqwnadnUePNvaV7KQ5np9l0CQpZucGAnnvzuyvEm8049tWKtonM50OreuOFOFGfqr sDHY8NH0HcY3pcIKQNx77GkAad7Kt98eB6Amj4O0K4IWAL5AjlD5Mlc7iVsgsWc9aPqHVJ u+cH4UxorH4gcaEZPixDVlczZHatvwYC4DxpC8CdbcprWtYY3jwXo7jMQmWfXPy7LMCtXX NM1wnaOrrrmBtEY9RvoonzwhQLM15j6Fcw649hAA6EHV+JsvgDYzy6CeJv/Vcw== 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 4S3gdx3q0hzbTc; Mon, 9 Oct 2023 00:59:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3990x1ET040459; Mon, 9 Oct 2023 00:59:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3990x1Fn040456; Mon, 9 Oct 2023 00:59:01 GMT (envelope-from git) Date: Mon, 9 Oct 2023 00:59:01 GMT Message-Id: <202310090059.3990x1Fn040456@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 242a062841e7 - stable/13 - nvme: Fix memory leak in pt ioctl commands List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 242a062841e7166d8354470835dc1d94773b5c01 Auto-Submitted: auto-generated The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=242a062841e7166d8354470835dc1d94773b5c01 commit 242a062841e7166d8354470835dc1d94773b5c01 Author: David Sloan AuthorDate: 2023-09-07 16:22:21 +0000 Commit: Mark Johnston CommitDate: 2023-10-09 00:41:52 +0000 nvme: Fix memory leak in pt ioctl commands When running nvme passthrough commands through the ioctl interface memory is mapped with vmapbuf() but not unmapped. This results in leaked memory whenever a process executes an nvme passthrough command with a data buffer. This can be replicated with a simple c function (error checks skipped for brevity): void leak_memory(int nvme_ns_fd, uint16_t nblocks) { struct nvme_pt_command pt = { .cmd = { .opc = NVME_OPC_READ, .cdw12 = nblocks - 1, }, .len = nblocks * 512, // Assumes devices with 512 byte lba .is_read = 1, // Reads and writes should both trigger leak } void *buf; posix_memalign(&buf, nblocks * 512); pt.buf = buf; ioctl(nvme_ns_fd, NVME_PASSTHROUGH_COMMAND, &pt); free(buf); } Signed-off-by: David Sloan PR: 273626 Reviewed by: imp, markj MFC after: 1 week (cherry picked from commit 7ea866eb14f8ec869a525442c03228b6701e1dab) --- sys/dev/nvme/nvme_ctrlr.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/dev/nvme/nvme_ctrlr.c b/sys/dev/nvme/nvme_ctrlr.c index ae1aea18adb6..84aa402af4f8 100644 --- a/sys/dev/nvme/nvme_ctrlr.c +++ b/sys/dev/nvme/nvme_ctrlr.c @@ -1319,8 +1319,9 @@ nvme_ctrlr_passthrough_cmd(struct nvme_controller *ctrlr, mtx_sleep(pt, mtx, PRIBIO, "nvme_pt", 0); mtx_unlock(mtx); -err: if (buf != NULL) { + vunmapbuf(buf); +err: uma_zfree(pbuf_zone, buf); PRELE(curproc); } From nobody Mon Oct 9 00:59:02 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3gdy6Vppz4wTj8; Mon, 9 Oct 2023 00:59: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 4S3gdy5SmCz3LkP; Mon, 9 Oct 2023 00:59:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696813142; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kZ8rVBrMwDAgYKpWCDPn6tWfaK4w1r0BmOmB+lZYkYo=; b=hImUsidYkKvMJC79zXKr3ETZt/8qfr0vW3A83eDvHjbRkt/Y5porItUZtL72mU3rNMVnnO TFTyjGznIzJLXU9FzZIljq+O7PIL4xQM59DVejlYggfikwyDjItSQPmtH5aQaG/t0odMkA xphK3slw6+xZPD7Vs3CV/SmdylfvB7n2UO3u2X5KMKXt4GVYc5rW4aplRBEf8qSYUyApo8 W31mfShnk80qmD0jzJoQithvwnehQGGDRNcg+H23WPXizH8vlatEglxBa5gbtPjwHxll/J w5xqwGFBJX9+RN8jTRkh+MnWj8Eu78mgEnIfktnz8lIUhi+oWOOMuYFkIhD0pA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696813142; a=rsa-sha256; cv=none; b=be0l1xAsEZWH29L59sbbVmhn//DeSyo0fy8H7dH2uwdCGxZJEZJzZntDfVVjZ7Jkf+miOt yYInyqT/pUsN1pQrdpqjjADd5Q5gSQfKSQQJsU9MT/f8O+7iS4lTSrTxvn6tUxL0Zv/KAK 4TVx7OS91gj2ktJAzAkoLkh3ztDFmzSI6VQsFtOvasacnk6OQboq1YcwjZ8xWRCAzLctMn aLvexQWhe+Ji5BezEv9ITwDfaFCSxpK+7lelOyVD6LdUUqJBwoe5aUHAA7Wdd+eo2h+Bxz t+QZ7byW4T+eh/2bwMMAhuyVOvX8QH0GdNSzVXE6oTPRo6jNBrO0WOk2qHWx0w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696813142; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kZ8rVBrMwDAgYKpWCDPn6tWfaK4w1r0BmOmB+lZYkYo=; b=GEEr3hzvqMgc129IR5eFx7c+MEQYI/ZImpEl0CLfWF6ArOejtk4zMqbs0ovNErTjkmINZc r+qxo/QOYJEylKNf7uS0aA8wnmu8f8gxjHfospUryvxgs8vUL+GCQoG/UhNDdKaQJ6b9fk W3WYOntEPACO+68kkfPXT57qKU3ZqkCymCSZShNeVb/4MXZTWDmwuwSudOcIjv46bLraGf hwerGg0tEnfgi7p2oT15q9Z3NcuW9sZsJGf6ttsJlX62KNUcabhjB4tEuJhkiYj+wIKaa2 COmSBMTSmVkBxve24o9SUY7AMcPZ0ue/AvKwDEUWoJMaVcRv1nCP9DctOeaW7g== 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 4S3gdy4ZTHzbZZ; Mon, 9 Oct 2023 00:59:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3990x2Ju040504; Mon, 9 Oct 2023 00:59:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3990x2ZE040501; Mon, 9 Oct 2023 00:59:02 GMT (envelope-from git) Date: Mon, 9 Oct 2023 00:59:02 GMT Message-Id: <202310090059.3990x2ZE040501@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: d8cb6c173417 - stable/13 - swap_pager: Fix a race in swap_pager_swapoff_object() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: d8cb6c173417f47b2337c12ab662a13c6e147789 Auto-Submitted: auto-generated The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=d8cb6c173417f47b2337c12ab662a13c6e147789 commit d8cb6c173417f47b2337c12ab662a13c6e147789 Author: Mark Johnston AuthorDate: 2023-10-02 11:49:27 +0000 Commit: Mark Johnston CommitDate: 2023-10-09 00:42:30 +0000 swap_pager: Fix a race in swap_pager_swapoff_object() When we disable swapping to a device, we scan the full VM object list looking for objects with swap trie nodes that reference the device in question. The pages corresponding to those nodes are paged in. While paging in, we drop the VM object lock. Moreover, we do not hold a reference for the object; swap_pager_swapoff_object() merely bumps the paging-in-progress counter. vm_object_terminate() waits for this counter to drain before proceeding and freeing pages. However, swap_pager_swapoff_object() decrements the counter before re-acquiring the VM object lock, which means that vm_object_terminate() can race to acquire the lock and free the pages. Then, swap_pager_swapoff_object() ends up unbusying a freed page. Fix the problem by acquiring the lock before waking up sleepers. PR: 273610 Reported by: Graham Perrin Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D42029 (cherry picked from commit e61568aeeec7667789e6c9d4837e074edecc990e) --- sys/vm/swap_pager.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/vm/swap_pager.c b/sys/vm/swap_pager.c index 7e5fa90efd16..dd7fecc066c4 100644 --- a/sys/vm/swap_pager.c +++ b/sys/vm/swap_pager.c @@ -1897,8 +1897,8 @@ swap_pager_swapoff_object(struct swdevt *sp, vm_object_t object) if (rv != VM_PAGER_OK) panic("%s: read from swap failed: %d", __func__, rv); - vm_object_pip_wakeupn(object, 1); VM_OBJECT_WLOCK(object); + vm_object_pip_wakeupn(object, 1); vm_page_xunbusy(m); /* From nobody Mon Oct 9 00:59:03 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3gf00B11z4wTjB; Mon, 9 Oct 2023 00:59:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S3gdz6WMsz3LcL; Mon, 9 Oct 2023 00:59:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696813143; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KnMkyeEhskDqv0mva0jcNQtkzOdcVeN8typKuqjnViY=; b=OYb+sVqoQFzSMzBbsQmcsmUIJ54gb4Gyk8Ph0cIv1W6lBgYSK89n8mW1tIweKhko7FW21Y Ld1k4pslnNr21osGWWqpJumEGd9MNqVBgmTZvP3XO/teJV/EKF4SqZz2TNtyYZ9P2+3UbD w3BPaESqJu5dJcDKipZIgpYp97KGqWOsQmQnCQJP4tkoTWsc1C71ToCvEf04yxsk8n1mvj Iay8wvA7vwX56YXINqxmHLyeJ3fCVPl85qq9V9G/5k2cIo3oYTJvTGrBUVvTXVf87Ce4iI TWz0Aj24uF0tJvGTQJl2V3Nox1pBdkOvMqt2f4LmtCDkJL9foaWgNEUt+4EXvw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696813143; a=rsa-sha256; cv=none; b=cEBC8H32jCvoA22djFbwlZ9jVNzy0gl4okNOjek0MEF23Ua7wkWXtsyVqswLgiR8mUqpWt yjXSYnWNxfQGvAxFNHS6L6oOJlDWTGL2++dZ7pkkO67LNOtztB7ZVnVD3rfh45uzKVi3Xt rE5HhHLZ8kkm1A3Vw7elxLou/DU0gGWhjc5YND63MZKTCYNnmpbSFwpSHq7c33Y4MJOA81 q4BiBJhHz/dVzgrf5MJGNR9g9Ons7Xu8DUtQjpfByg8dD5a1o980AItoNRNSFDusDNMCQU vEj02eANo6XqaJAJBztvxfV65J9SHFe6M9iAWKSosQ+s+YWINWx3H+nIUZYXiQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696813143; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KnMkyeEhskDqv0mva0jcNQtkzOdcVeN8typKuqjnViY=; b=iNpQWBYIqVy9qAzlW5zA4BWShdhxMW9quXRv/UyBU7rjPEVufIVeGqoykNsH1y48wOvO1j 20iq7AXFcKXVgzwnZnQeRnKnR2e+nh5T80bTyvbUVYpUxuMzD5zAg9vnavfGJhB8ROhIms 1JnXIOEFoyDiKeDvsWCayJPMK5c3m82iUnAhft//i8PyPYk0tanW7xqqF9zSgDeSrK1swg 79kZ95bqzhw17CRqermf/xGKWQ9J6is3YWT+od+GvHTrNm5i8s6TdnKDDKkKiE8/MszWPv R1+UlUquvMu6LfsSFGh7dtzkc9kKAx0Y5i9uo1+xOz3fJDSGkz9k4djoLkBBiQ== 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 4S3gdz5chFzb4t; Mon, 9 Oct 2023 00:59:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3990x3gx040554; Mon, 9 Oct 2023 00:59:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3990x3ms040551; Mon, 9 Oct 2023 00:59:03 GMT (envelope-from git) Date: Mon, 9 Oct 2023 00:59:03 GMT Message-Id: <202310090059.3990x3ms040551@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: f093d21e081b - stable/13 - netdump: Check the return value of ifunit_ref() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: f093d21e081b1eed9844c28af605b5277e76094c Auto-Submitted: auto-generated The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=f093d21e081b1eed9844c28af605b5277e76094c commit f093d21e081b1eed9844c28af605b5277e76094c Author: Mark Johnston AuthorDate: 2023-10-02 12:08:20 +0000 Commit: Mark Johnston CommitDate: 2023-10-09 00:42:37 +0000 netdump: Check the return value of ifunit_ref() We may fail to match if the specific interface doesn't exist or was renamed. PR: 273715 Reported by: grembo MFC after: 1 week (cherry picked from commit d94d07d58141dcff48f01c6b3e5a31de9d7a7938) --- sys/netinet/netdump/netdump_client.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/netinet/netdump/netdump_client.c b/sys/netinet/netdump/netdump_client.c index b3c0cd8183a3..5adff1256343 100644 --- a/sys/netinet/netdump/netdump_client.c +++ b/sys/netinet/netdump/netdump_client.c @@ -450,6 +450,8 @@ netdump_configure(struct diocskerneldump_arg *conf, struct thread *td) CURVNET_SET(vnet0); ifp = ifunit_ref(conf->kda_iface); CURVNET_RESTORE(); + if (ifp == NULL) + return (ENODEV); if (!DEBUGNET_SUPPORTED_NIC(ifp)) { if_rele(ifp); return (ENODEV); From nobody Mon Oct 9 03:41:09 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3lF14ttVz4wBn0; Mon, 9 Oct 2023 03:41: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 4S3lF14S6Sz3gW5; Mon, 9 Oct 2023 03:41:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822869; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2r/OhGMDPncqtQHmYBXfS2e7p/KVkE4Vdvyx8YWwxuM=; b=DYIHSDNPaplecrP6OA8dLww4BIdNtmZKpv0z4dpWFe2tlyNZbyEnJTEUky+h+TkOdPoDPm VVTmZA8e8vBjx+BjSx9AW4D8ZmTxnq+3sA15yZwFe/LaSJpihhyJDsseFLuctBvk0zouFY hx8vcdwpPjQRGQkKzPDiQ+nYhzMdpgFXe4uL/VB3278zp1gZTXhATYf0BPaN9UYO8UGKOu RJA18LnDuIHm7NBGkTZMcqWAh//zg33n0KnfIDsatYPDI3368IsTt07A/VNSm3IbxC8TPD VNkg7hEovqlQKoP0ZYLztFhn+3qAkQGIdEVpbZBZaXAKVX84qv8U8OGi9MANSQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696822869; a=rsa-sha256; cv=none; b=WDUXIV61MM/8qZAz2bGYwJotcF0NopIkjKOzw08e85BCeK6FFiV0G5FZguZnLgBcxSHMPg to6c7thCbKK4XKyFjk5dD4n0P8dBbrrinC2ImpDFvua0MJNL6TKSg8g+5VYbd4Qvf+RhJ7 0wQHqQimHsK29fRz8UwQwBvR8XwKBhW2E1fm5kJu+Hp6SxbYCn7ZYec9FN9M9SbQt1CoYm 5eY9zTlXgQ3i6VVx7YGwYb/f/1pdkOaCMCfYUJylohYEApPXbKWv0u3QCoBBb0ok2F/xSZ HhWArs1PimjAuozFXsCRsJelg1vT6l561LEAfF96wD6IKxVn6Y7XFrN4VjXBGw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822869; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2r/OhGMDPncqtQHmYBXfS2e7p/KVkE4Vdvyx8YWwxuM=; b=Xwflo0rhLvzbz55OOjbYj5MB0ykpnBlW/UOjBh6lP3aqPIf1bNiJEt2Vwl/5/7nRXtithP TLv2WGh7gkeyXW1rhuszft3xPRZ7mfcoc85Q7NARLwYsU9mYCdjGbiEdrvmCy8WM1wnFso jDWMINEZVjzA6z/E+TNexPxlcb2dNOXF5uQAhH3JQSOv8954pmoVpvAl3qpWi/pbcNbUO7 45BvqReAEYIuWd0BWIEcWgorYhTHxcGjIEXUxlmLdcWp8NM9kVvRMAJPBtNu9igQeGVNE/ q/1v0Yl6syan0hRopAl3eCVHmY5sHC6Dx+3hYQ7wmp9gYawSvwNUmH8xO780iA== 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 4S3lF13V9Qzgcd; Mon, 9 Oct 2023 03:41:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3993f9Pn017722; Mon, 9 Oct 2023 03:41:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3993f9xx017719; Mon, 9 Oct 2023 03:41:09 GMT (envelope-from git) Date: Mon, 9 Oct 2023 03:41:09 GMT Message-Id: <202310090341.3993f9xx017719@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: 6c19376f4480 - stable/14 - amd64 cpu_fetch_syscall_args_fallback(): fix whitespace List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 6c19376f44801168a0a7b54de90e4f1c4f9871aa Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=6c19376f44801168a0a7b54de90e4f1c4f9871aa commit 6c19376f44801168a0a7b54de90e4f1c4f9871aa Author: Konstantin Belousov AuthorDate: 2023-09-26 09:20:30 +0000 Commit: Konstantin Belousov CommitDate: 2023-10-09 03:24:31 +0000 amd64 cpu_fetch_syscall_args_fallback(): fix whitespace (cherry picked from commit 6b3bb233cd0c3eeeb70e388a62b142b4f22b62b2) --- sys/amd64/amd64/trap.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sys/amd64/amd64/trap.c b/sys/amd64/amd64/trap.c index 4d5887369207..ef38c0789636 100644 --- a/sys/amd64/amd64/trap.c +++ b/sys/amd64/amd64/trap.c @@ -1032,10 +1032,10 @@ cpu_fetch_syscall_args_fallback(struct thread *td, struct syscall_args *sa) regcnt--; } - if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; - else - sa->callp = &p->p_sysent->sv_table[sa->code]; + if (sa->code >= p->p_sysent->sv_size) + sa->callp = &p->p_sysent->sv_table[0]; + else + sa->callp = &p->p_sysent->sv_table[sa->code]; KASSERT(sa->callp->sy_narg <= nitems(sa->args), ("Too many syscall arguments!")); @@ -1045,7 +1045,7 @@ cpu_fetch_syscall_args_fallback(struct thread *td, struct syscall_args *sa) if (sa->callp->sy_narg > regcnt) { params = (caddr_t)frame->tf_rsp + sizeof(register_t); error = copyin(params, &sa->args[regcnt], - (sa->callp->sy_narg - regcnt) * sizeof(sa->args[0])); + (sa->callp->sy_narg - regcnt) * sizeof(sa->args[0])); if (__predict_false(error != 0)) return (error); } From nobody Mon Oct 9 03:41:10 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3lF262pYz4wwXJ; Mon, 9 Oct 2023 03:41:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S3lF25SQYz3gcD; Mon, 9 Oct 2023 03:41:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822870; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tP/gtxYEO3uU/DY0FoGUdlmLP87gNCMPtUNvjtCYCZQ=; b=mCMkPIMM7rLtl8w+ydejXvdC2gVsjhZ0BHR+RbHZbRBSNDlLRcSIa04Z2ylo/k1AWoxoFX YOD17v0XP8fz52HeaWB5BBruosFIU3R++K60apc44ZxZWiNq9l5MjZ8b9ti1kEY20iPo1+ iegWV5qzlt45hKCfV1iimqxi663a8qhTjoltDsArF8+FTaAW9bGfQxifCcEpxWALmBozeR Olp5pqZfoo71WsuXJIpyDB7PJty02qMyyUi7yYJSG8wrhh1J8sKtfvo81C0Q7CKE7q1IWt g/cuU7akZLN3zXkWC7weYsPHD0Czu6MIcqNkMNwlHa0xsIFMAf0mhgOvf8cmbg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696822870; a=rsa-sha256; cv=none; b=UTB73LadCk/qrsRddzimUZ+2HZ0xDo69JW8Rhhr8inQW0m88iOTjcwGq4E38pZ4L/scETA fDrhA5nmYzbz7OvWzwN18CoypXqsG2t2CR9Rk9h9Km8Ni+4il2A8yD/Aybsc9Geee4RReI aldO2FH/abh83bGsuU9L8wShTU+UtX2otDsUnJ5DVpuxdHjZipQgEhLKU5Du/xJDvaWcco cYNwP/uXfxsKJg++LfVJAfFngSMFDTkXD1/lqS+MwqcivvTbUfA11wTsacSfaQehbiPSSq 5ns238/Eyk8m5gYOHhjfwUzqDbDYkuB2VwuBSeohN7yVBRbH3jtmIiQBOGkGCQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822870; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tP/gtxYEO3uU/DY0FoGUdlmLP87gNCMPtUNvjtCYCZQ=; b=egZvJYI8hlyhhKuauZ26/0AKb470osSUdnv54JkJuCO4P6MGHrPQjBnI4OhQeAN8gZ9oko Jb60OxYeYZBP11hbfO/m048kBpR69sfGB2L87XuqpHi4OZPAf4cipnW/F40SRP3qaQMHRf Cz97nr8yqgH9j56WmsR3whQLg1cOIq9lFrJFQ4p0R17wm+ZFA7nCu2bfapBvdKUywcpsCQ CyLoBODDcWAtnV3qkdUNXpROe2SEEIFukPDOQHIEUr1SWL8MDmn4KvRtTImbk1hq0XEich h00sfmvJE+z9sNw3cYTHaSNvHLyuKO7aimdcM9wt/IROWkslg0d+rU3nlo2b9Q== 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 4S3lF24WVlzgSj; Mon, 9 Oct 2023 03:41:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3993fApi017773; Mon, 9 Oct 2023 03:41:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3993fATB017770; Mon, 9 Oct 2023 03:41:10 GMT (envelope-from git) Date: Mon, 9 Oct 2023 03:41:10 GMT Message-Id: <202310090341.3993fATB017770@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: e0f1021386bd - stable/14 - syscalls: fix missing SIGSYS for several ENOSYS errors List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e0f1021386bd9df6d3510e6fc70572fb157f046f Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=e0f1021386bd9df6d3510e6fc70572fb157f046f commit e0f1021386bd9df6d3510e6fc70572fb157f046f Author: Konstantin Belousov AuthorDate: 2023-09-25 16:32:52 +0000 Commit: Konstantin Belousov CommitDate: 2023-10-09 03:24:31 +0000 syscalls: fix missing SIGSYS for several ENOSYS errors (cherry picked from commit 39024a89146902ca9aba250130b828ad9aced99d) --- sys/amd64/amd64/trap.c | 2 +- sys/amd64/ia32/ia32_syscall.c | 2 +- sys/arm/arm/syscall.c | 2 +- sys/arm64/arm64/elf32_machdep.c | 2 +- sys/arm64/arm64/trap.c | 2 +- sys/arm64/linux/linux_sysvec.c | 2 +- sys/i386/i386/trap.c | 2 +- sys/i386/linux/linux_sysvec.c | 2 +- sys/kern/kern_sig.c | 3 ++- sys/kern/kern_syscalls.c | 25 +++++++++++++++++++------ sys/kern/subr_syscall.c | 3 ++- sys/powerpc/powerpc/trap.c | 2 +- sys/riscv/riscv/trap.c | 2 +- sys/sys/sysent.h | 3 ++- 14 files changed, 35 insertions(+), 19 deletions(-) diff --git a/sys/amd64/amd64/trap.c b/sys/amd64/amd64/trap.c index ef38c0789636..8114105655f8 100644 --- a/sys/amd64/amd64/trap.c +++ b/sys/amd64/amd64/trap.c @@ -1033,7 +1033,7 @@ cpu_fetch_syscall_args_fallback(struct thread *td, struct syscall_args *sa) } if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/amd64/ia32/ia32_syscall.c b/sys/amd64/ia32/ia32_syscall.c index 3fb905ab9e0a..c61587a93d1f 100644 --- a/sys/amd64/ia32/ia32_syscall.c +++ b/sys/amd64/ia32/ia32_syscall.c @@ -183,7 +183,7 @@ ia32_fetch_syscall_args(struct thread *td) params += sizeof(quad_t); } if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/arm/arm/syscall.c b/sys/arm/arm/syscall.c index 57644c023646..c440f501e834 100644 --- a/sys/arm/arm/syscall.c +++ b/sys/arm/arm/syscall.c @@ -118,7 +118,7 @@ cpu_fetch_syscall_args(struct thread *td) } p = td->td_proc; if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; error = 0; diff --git a/sys/arm64/arm64/elf32_machdep.c b/sys/arm64/arm64/elf32_machdep.c index e1fcb533a8cc..9cf1b2e11f8b 100644 --- a/sys/arm64/arm64/elf32_machdep.c +++ b/sys/arm64/arm64/elf32_machdep.c @@ -191,7 +191,7 @@ freebsd32_fetch_syscall_args(struct thread *td) } if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/arm64/arm64/trap.c b/sys/arm64/arm64/trap.c index d1a48a2fd9f4..12f43e01630a 100644 --- a/sys/arm64/arm64/trap.c +++ b/sys/arm64/arm64/trap.c @@ -151,7 +151,7 @@ cpu_fetch_syscall_args(struct thread *td) } if (__predict_false(sa->code >= p->p_sysent->sv_size)) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/arm64/linux/linux_sysvec.c b/sys/arm64/linux/linux_sysvec.c index 5f9252accb5f..19dd5866ba50 100644 --- a/sys/arm64/linux/linux_sysvec.c +++ b/sys/arm64/linux/linux_sysvec.c @@ -123,7 +123,7 @@ linux_fetch_syscall_args(struct thread *td) sa->original_code = sa->code; /* LINUXTODO: generic syscall? */ if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/i386/i386/trap.c b/sys/i386/i386/trap.c index 172317aead29..d0ee2b30a3ce 100644 --- a/sys/i386/i386/trap.c +++ b/sys/i386/i386/trap.c @@ -1113,7 +1113,7 @@ cpu_fetch_syscall_args(struct thread *td) } if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/i386/linux/linux_sysvec.c b/sys/i386/linux/linux_sysvec.c index fe3e3f743620..a3d445951cce 100644 --- a/sys/i386/linux/linux_sysvec.c +++ b/sys/i386/linux/linux_sysvec.c @@ -522,7 +522,7 @@ linux_fetch_syscall_args(struct thread *td) if (sa->code >= p->p_sysent->sv_size) /* nosys */ - sa->callp = &p->p_sysent->sv_table[p->p_sysent->sv_size - 1]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c index 964ad2398bd9..8d0d2903bac0 100644 --- a/sys/kern/kern_sig.c +++ b/sys/kern/kern_sig.c @@ -2686,7 +2686,8 @@ ptrace_syscallreq(struct thread *td, struct proc *p, audited = AUDIT_SYSCALL_ENTER(sc, td) != 0; if (!sy_thr_static) { - error = syscall_thread_enter(td, se); + error = syscall_thread_enter(td, &se); + sy_thr_static = (se->sy_thrcnt & SY_THR_STATIC) != 0; if (error != 0) { tsr->ts_ret.sr_error = error; return; diff --git a/sys/kern/kern_syscalls.c b/sys/kern/kern_syscalls.c index 78014a36b34b..f923211cb6c8 100644 --- a/sys/kern/kern_syscalls.c +++ b/sys/kern/kern_syscalls.c @@ -61,6 +61,17 @@ lkmressys(struct thread *td, struct nosys_args *args) return (nosys(td, args)); } +struct sysent nosys_sysent = { + .sy_call = (sy_call_t *)nosys, + .sy_systrace_args_func = NULL, + .sy_narg = 0, + .sy_flags = SYF_CAPENABLED, + .sy_auevent = AUE_NULL, + .sy_entry = 0, /* DTRACE_IDNONE */ + .sy_return = 0, + .sy_thrcnt = SY_THR_STATIC, +}; + static void syscall_thread_drain(struct sysent *se) { @@ -78,19 +89,21 @@ syscall_thread_drain(struct sysent *se) } int -syscall_thread_enter(struct thread *td, struct sysent *se) +syscall_thread_enter(struct thread *td, struct sysent **se) { uint32_t cnt, oldcnt; - KASSERT((se->sy_thrcnt & SY_THR_STATIC) == 0, + KASSERT(((*se)->sy_thrcnt & SY_THR_STATIC) == 0, ("%s: not a static syscall", __func__)); do { - oldcnt = se->sy_thrcnt; - if ((oldcnt & (SY_THR_DRAINING | SY_THR_ABSENT)) != 0) - return (ENOSYS); + oldcnt = (*se)->sy_thrcnt; + if ((oldcnt & (SY_THR_DRAINING | SY_THR_ABSENT)) != 0) { + *se = &nosys_sysent; + return (0); + } cnt = oldcnt + SY_THR_INCR; - } while (atomic_cmpset_acq_32(&se->sy_thrcnt, oldcnt, cnt) == 0); + } while (atomic_cmpset_acq_32(&(*se)->sy_thrcnt, oldcnt, cnt) == 0); return (0); } diff --git a/sys/kern/subr_syscall.c b/sys/kern/subr_syscall.c index c0262a1b1010..ff13672501b2 100644 --- a/sys/kern/subr_syscall.c +++ b/sys/kern/subr_syscall.c @@ -144,7 +144,8 @@ syscallenter(struct thread *td) AUDIT_SYSCALL_ENTER(sa->code, td) || !sy_thr_static)) { if (!sy_thr_static) { - error = syscall_thread_enter(td, se); + error = syscall_thread_enter(td, &se); + sy_thr_static = (se->sy_thrcnt & SY_THR_STATIC) != 0; if (error != 0) { td->td_errno = error; goto retval; diff --git a/sys/powerpc/powerpc/trap.c b/sys/powerpc/powerpc/trap.c index 1527e813647d..7f1a267f5cf2 100644 --- a/sys/powerpc/powerpc/trap.c +++ b/sys/powerpc/powerpc/trap.c @@ -694,7 +694,7 @@ cpu_fetch_syscall_args(struct thread *td) } if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/riscv/riscv/trap.c b/sys/riscv/riscv/trap.c index e454beeb5245..e681058800f6 100644 --- a/sys/riscv/riscv/trap.c +++ b/sys/riscv/riscv/trap.c @@ -115,7 +115,7 @@ cpu_fetch_syscall_args(struct thread *td) } if (__predict_false(sa->code >= p->p_sysent->sv_size)) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/sys/sysent.h b/sys/sys/sysent.h index 3f52848af982..3ef6b06c5545 100644 --- a/sys/sys/sysent.h +++ b/sys/sys/sysent.h @@ -191,6 +191,7 @@ struct sysentvec { extern struct sysentvec aout_sysvec; extern struct sysent sysent[]; extern const char *syscallnames[]; +extern struct sysent nosys_sysent; struct nosys_args { register_t dummy; @@ -319,7 +320,7 @@ struct nosys_args; int lkmnosys(struct thread *, struct nosys_args *); int lkmressys(struct thread *, struct nosys_args *); -int syscall_thread_enter(struct thread *td, struct sysent *se); +int syscall_thread_enter(struct thread *td, struct sysent **se); void syscall_thread_exit(struct thread *td, struct sysent *se); int shared_page_alloc(int size, int align); From nobody Mon Oct 9 03:41:11 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3lF36zr9z4wwXL; Mon, 9 Oct 2023 03:41:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S3lF36V41z3gTj; Mon, 9 Oct 2023 03:41:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822871; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HXuyUiZvrqzr3wVPc9BeCUdb+Cshk4CTwLY+1ShrnOY=; b=Pn4Dbo4opUYFYv4pdaqINJ72GspPLloQkv1fPO6v0Doo5TRXAXpZ1ZBh/rCYtvvrQnTWTZ ncJDHt74evcw/ynENBEHDqSAbqYdOjBe1nD8HBy2YerG/WshqA52DxtTSZWooZlgL3TCmt kKakX5GOI51d8P6fFDdYfIeJi67X+BEL1k5soAzJJx1UYflHkIhu623z3QYxkmndCK1X3R tiOTaZbsC3p1A6jHdDYJPhwQn+2CBu3qZq0OOylZpbXJCmTN6MybewaxVSrbD0lKtSgnwR wqC0hPZI+hVh9ium9xK3qmmOsPglGbiMeAj9WxtEYWh/30NswYQEktDa7E5qgA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696822871; a=rsa-sha256; cv=none; b=R2rJ2lDqDQTxVU259DT6h4TjIQFaDsNhk6O4V/Kf8uwqC5CqrT36tBLS7a72T2PgaQ6RT2 NGB/sK7HvjsAjgpeQ8XUOTBNvezPCEYN7mjNEcjmNJRhTgQ4aef8MOSvVv50rXoiu1Qsu/ bn6ZbddSBBzxEl3sXsl6xJenDzsShQpFNczZpEdkTyd6Z5a1ncq0xgZQpTF5HSoh66fdHz auJ3CYZNHqX+82gMsq/UyDjEomH3vm/9qAbcKyKwPItykLR3IslfPHlPNwzQbbpO155I39 fjAH2Sn33glqMc1UeZAa3on4XlmheDDrHBU2uyGX1KQJxV5UE6ctGhf0hheLAg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822871; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HXuyUiZvrqzr3wVPc9BeCUdb+Cshk4CTwLY+1ShrnOY=; b=gXXvFZrmGcUbiQAchuzN4Lwoam4WA42i+nGOCXUfeSejBq9AnnI5iWYp0qZxfQ5Evy+Gwv QNXmfOGBYpFXJwoXM/jqUsB7q2JiqTd8tnV2/jCCos7KIJX536nvwALU9h+5tmvy0T136O XUlGzyClLjSbNssuu9nKppZtyH8Pn55xE9hhJanhT4aeYzEq5Qla27o804JuQTLTXH5TGP CE4pf/ARjePvbAyuoRxkbL3IhNrcrwMNU5yet9N6NFWaumduLqqyFeFj65/gd6qpokqlgD 8nXTeXOWv2Ih29rgbSZZyTaB1t5JqCE3V0OqjpfVxXMz9Cus/qlq3F4xFvDrHg== 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 4S3lF35YrCzgFM; Mon, 9 Oct 2023 03:41:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3993fBje017812; Mon, 9 Oct 2023 03:41:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3993fB6T017809; Mon, 9 Oct 2023 03:41:11 GMT (envelope-from git) Date: Mon, 9 Oct 2023 03:41:11 GMT Message-Id: <202310090341.3993fB6T017809@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: 45ebb15ab109 - stable/14 - sysentvec: add SV_SIGSYS flag List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 45ebb15ab10910a058ab0e98365fa0896fb91604 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=45ebb15ab10910a058ab0e98365fa0896fb91604 commit 45ebb15ab10910a058ab0e98365fa0896fb91604 Author: Konstantin Belousov AuthorDate: 2023-09-25 16:33:36 +0000 Commit: Konstantin Belousov CommitDate: 2023-10-09 03:24:31 +0000 sysentvec: add SV_SIGSYS flag (cherry picked from commit b82b4ae752501469053979393e33bbfa74fbc9d2) --- sys/amd64/amd64/elf_machdep.c | 6 ++++-- sys/arm/arm/elf_machdep.c | 2 +- sys/arm64/arm64/elf32_machdep.c | 2 +- sys/arm64/arm64/elf_machdep.c | 2 +- sys/compat/ia32/ia32_sysvec.c | 3 ++- sys/i386/i386/elf_machdep.c | 2 +- sys/kern/imgact_aout.c | 6 ++++-- sys/kern/kern_sig.c | 8 +++++--- sys/powerpc/powerpc/elf32_machdep.c | 2 +- sys/powerpc/powerpc/elf64_machdep.c | 4 ++-- sys/riscv/riscv/elf_machdep.c | 2 +- sys/sys/sysent.h | 2 +- 12 files changed, 24 insertions(+), 17 deletions(-) diff --git a/sys/amd64/amd64/elf_machdep.c b/sys/amd64/amd64/elf_machdep.c index 08eaa1e8ac8b..fc25decc64a2 100644 --- a/sys/amd64/amd64/elf_machdep.c +++ b/sys/amd64/amd64/elf_machdep.c @@ -80,7 +80,8 @@ struct sysentvec elf64_freebsd_sysvec_la48 = { .sv_fixlimit = NULL, .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_ASLR | SV_LP64 | SV_SHP | - SV_TIMEKEEP | SV_RNG_SEED_VER | SV_DSO_SIG, + SV_TIMEKEEP | SV_RNG_SEED_VER | SV_DSO_SIG | + SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, @@ -122,7 +123,8 @@ struct sysentvec elf64_freebsd_sysvec_la57 = { .sv_fixlimit = NULL, .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_ASLR | SV_LP64 | SV_SHP | - SV_TIMEKEEP | SV_RNG_SEED_VER | SV_DSO_SIG, + SV_TIMEKEEP | SV_RNG_SEED_VER | SV_DSO_SIG | + SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, diff --git a/sys/arm/arm/elf_machdep.c b/sys/arm/arm/elf_machdep.c index 19332d86afc3..c02e489728dd 100644 --- a/sys/arm/arm/elf_machdep.c +++ b/sys/arm/arm/elf_machdep.c @@ -87,7 +87,7 @@ struct sysentvec elf32_freebsd_sysvec = { .sv_maxssiz = NULL, .sv_flags = SV_ASLR | SV_SHP | SV_TIMEKEEP | SV_RNG_SEED_VER | - SV_ABI_FREEBSD | SV_ILP32, + SV_ABI_FREEBSD | SV_ILP32 | SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, diff --git a/sys/arm64/arm64/elf32_machdep.c b/sys/arm64/arm64/elf32_machdep.c index 9cf1b2e11f8b..4161f9d44ae7 100644 --- a/sys/arm64/arm64/elf32_machdep.c +++ b/sys/arm64/arm64/elf32_machdep.c @@ -105,7 +105,7 @@ static struct sysentvec elf32_freebsd_sysvec = { .sv_fixlimit = NULL, // XXX .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_ILP32 | SV_SHP | SV_TIMEKEEP | - SV_RNG_SEED_VER, + SV_RNG_SEED_VER | SV_SIGSYS, .sv_set_syscall_retval = freebsd32_set_syscall_retval, .sv_fetch_syscall_args = freebsd32_fetch_syscall_args, .sv_syscallnames = freebsd32_syscallnames, diff --git a/sys/arm64/arm64/elf_machdep.c b/sys/arm64/arm64/elf_machdep.c index 7ce521197503..dd053d4d7847 100644 --- a/sys/arm64/arm64/elf_machdep.c +++ b/sys/arm64/arm64/elf_machdep.c @@ -84,7 +84,7 @@ static struct sysentvec elf64_freebsd_sysvec = { .sv_fixlimit = NULL, .sv_maxssiz = NULL, .sv_flags = SV_SHP | SV_TIMEKEEP | SV_ABI_FREEBSD | SV_LP64 | - SV_ASLR | SV_RNG_SEED_VER, + SV_ASLR | SV_RNG_SEED_VER | SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, diff --git a/sys/compat/ia32/ia32_sysvec.c b/sys/compat/ia32/ia32_sysvec.c index b1f4b428a8aa..974bed85480c 100644 --- a/sys/compat/ia32/ia32_sysvec.c +++ b/sys/compat/ia32/ia32_sysvec.c @@ -127,7 +127,8 @@ struct sysentvec ia32_freebsd_sysvec = { .sv_fixlimit = ia32_fixlimit, .sv_maxssiz = &ia32_maxssiz, .sv_flags = SV_ABI_FREEBSD | SV_ASLR | SV_IA32 | SV_ILP32 | - SV_SHP | SV_TIMEKEEP | SV_RNG_SEED_VER | SV_DSO_SIG, + SV_SHP | SV_TIMEKEEP | SV_RNG_SEED_VER | + SV_DSO_SIG | SV_SIGSYS, .sv_set_syscall_retval = ia32_set_syscall_retval, .sv_fetch_syscall_args = ia32_fetch_syscall_args, .sv_syscallnames = freebsd32_syscallnames, diff --git a/sys/i386/i386/elf_machdep.c b/sys/i386/i386/elf_machdep.c index 85653367c3b6..eb6ac5735e56 100644 --- a/sys/i386/i386/elf_machdep.c +++ b/sys/i386/i386/elf_machdep.c @@ -75,7 +75,7 @@ struct sysentvec elf32_freebsd_sysvec = { .sv_fixlimit = NULL, .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_ASLR | SV_IA32 | SV_ILP32 | - SV_SHP | SV_TIMEKEEP | SV_RNG_SEED_VER, + SV_SHP | SV_TIMEKEEP | SV_RNG_SEED_VER | SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, diff --git a/sys/kern/imgact_aout.c b/sys/kern/imgact_aout.c index a4ac1901d50e..f1b2845349aa 100644 --- a/sys/kern/imgact_aout.c +++ b/sys/kern/imgact_aout.c @@ -91,7 +91,8 @@ struct sysentvec aout_sysvec = { .sv_setregs = exec_setregs, .sv_fixlimit = NULL, .sv_maxssiz = NULL, - .sv_flags = SV_ABI_FREEBSD | SV_AOUT | SV_IA32 | SV_ILP32, + .sv_flags = SV_ABI_FREEBSD | SV_AOUT | SV_IA32 | SV_ILP32 | + SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, @@ -140,7 +141,8 @@ struct sysentvec aout_sysvec = { .sv_setregs = ia32_setregs, .sv_fixlimit = ia32_fixlimit, .sv_maxssiz = &ia32_maxssiz, - .sv_flags = SV_ABI_FREEBSD | SV_AOUT | SV_IA32 | SV_ILP32, + .sv_flags = SV_ABI_FREEBSD | SV_AOUT | SV_IA32 | SV_ILP32 | + SV_SIGSYS, .sv_set_syscall_retval = ia32_set_syscall_retval, .sv_fetch_syscall_args = ia32_fetch_syscall_args, .sv_syscallnames = freebsd32_syscallnames, diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c index 8d0d2903bac0..16bc1e441119 100644 --- a/sys/kern/kern_sig.c +++ b/sys/kern/kern_sig.c @@ -4219,9 +4219,11 @@ nosys(struct thread *td, struct nosys_args *args) p = td->td_proc; - PROC_LOCK(p); - tdsignal(td, SIGSYS); - PROC_UNLOCK(p); + if (SV_PROC_FLAG(p, SV_SIGSYS) != 0) { + PROC_LOCK(p); + tdsignal(td, SIGSYS); + PROC_UNLOCK(p); + } if (kern_lognosys == 1 || kern_lognosys == 3) { uprintf("pid %d comm %s: nosys %d\n", p->p_pid, p->p_comm, td->td_sa.code); diff --git a/sys/powerpc/powerpc/elf32_machdep.c b/sys/powerpc/powerpc/elf32_machdep.c index 53af1642b6bf..fcdc1aa1e8a5 100644 --- a/sys/powerpc/powerpc/elf32_machdep.c +++ b/sys/powerpc/powerpc/elf32_machdep.c @@ -124,7 +124,7 @@ struct sysentvec elf32_freebsd_sysvec = { #endif .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_ILP32 | SV_SHP | SV_ASLR | - SV_TIMEKEEP | SV_RNG_SEED_VER, + SV_TIMEKEEP | SV_RNG_SEED_VER | SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_shared_page_base = FREEBSD32_SHAREDPAGE, diff --git a/sys/powerpc/powerpc/elf64_machdep.c b/sys/powerpc/powerpc/elf64_machdep.c index 07c1892591d2..6edfd965b7ec 100644 --- a/sys/powerpc/powerpc/elf64_machdep.c +++ b/sys/powerpc/powerpc/elf64_machdep.c @@ -86,7 +86,7 @@ struct sysentvec elf64_freebsd_sysvec_v1 = { .sv_fixlimit = NULL, .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_LP64 | SV_SHP | SV_ASLR | - SV_TIMEKEEP | SV_RNG_SEED_VER, + SV_TIMEKEEP | SV_RNG_SEED_VER | SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, @@ -128,7 +128,7 @@ struct sysentvec elf64_freebsd_sysvec_v2 = { .sv_fixlimit = NULL, .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_LP64 | SV_SHP | - SV_TIMEKEEP | SV_RNG_SEED_VER, + SV_TIMEKEEP | SV_RNG_SEED_VER | SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, diff --git a/sys/riscv/riscv/elf_machdep.c b/sys/riscv/riscv/elf_machdep.c index f0732e731854..e3744aa2c9e5 100644 --- a/sys/riscv/riscv/elf_machdep.c +++ b/sys/riscv/riscv/elf_machdep.c @@ -84,7 +84,7 @@ static struct sysentvec elf64_freebsd_sysvec = { .sv_fixlimit = NULL, .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_LP64 | SV_SHP | SV_TIMEKEEP | - SV_ASLR | SV_RNG_SEED_VER, + SV_ASLR | SV_RNG_SEED_VER | SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, diff --git a/sys/sys/sysent.h b/sys/sys/sysent.h index 3ef6b06c5545..0166523ab84e 100644 --- a/sys/sys/sysent.h +++ b/sys/sys/sysent.h @@ -164,7 +164,7 @@ struct sysentvec { #define SV_IA32 0x004000 /* Intel 32-bit executable. */ #define SV_AOUT 0x008000 /* a.out executable. */ #define SV_SHP 0x010000 /* Shared page. */ -#define SV_AVAIL1 0x020000 /* Unused */ +#define SV_SIGSYS 0x020000 /* SIGSYS for non-existing syscall */ #define SV_TIMEKEEP 0x040000 /* Shared page timehands. */ #define SV_ASLR 0x080000 /* ASLR allowed. */ #define SV_RNG_SEED_VER 0x100000 /* random(4) reseed generation. */ From nobody Mon Oct 9 03:41:12 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3lF51ptxz4wwWT; Mon, 9 Oct 2023 03:41:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S3lF50Qzdz3ggb; Mon, 9 Oct 2023 03:41:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822873; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J8UhPkPHXaA9LT+4kxOSfbasqNbfMKJ5M75qTw4jSl4=; b=DHN14oMIqZo7U0VmUWBw3lxzuraoSfqFpnErwic4oaSy+1vk+nfBn43HjrgdpBaQp93keO H07LEG6kFptBQHggJnki0kRO6ZWrGVeRGXVn055cn9rlGoG8w727czCdn+6VZecNLuP8Yu sBZsvDpDnZCtjY5jtN5Fzw9DS3zdSknDWhbAKwkwyGlyPGl8s26MRlS91bbf4MPS/sN6Ia eVn49NLe1b0Zx9y+CsyjTe//lTBHrdccRukFimRAo92jawOEnQMyedCBT+TkF41bzXdDUJ Hc0Oayguq7Ylcqa29uV7bF+Qm2ETg6XsiMoF6EEcBnnlhtm1jPh4hqfyjZZNlQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696822873; a=rsa-sha256; cv=none; b=cpwtfBXkHffa7pSBba2527Q85J4W8/+cyUV2u9RzckBmC5GdqWWX0qzzw51l2bLiaj0zlZ L6JNwKj9Y/Tr/g+FTvGvEpugltgqddRSWsxI5QhnliNGAU8d546lsW8EFTsJsifBN8dRa2 tcjxUEhCJ63nQ/yHzRq01X6JFO07HHZE6u6K83c3Tt425RUZmdWfyESkn23/SMa5XiV91V G7CDLely5PHd9OcAxfAEvc0JyDXNTCHXMJr2xFzfPEb6nb8l04YmxZMHui8O/PXILsQjUi B57dn7Ww/QKDQvYhplqJXn+/gzsBdD8cXBKipwu/DOr16RapRE7B8poV7Z4PwQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822873; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=J8UhPkPHXaA9LT+4kxOSfbasqNbfMKJ5M75qTw4jSl4=; b=Ik38EakfrnCaXDYI1YlATJlBgyKpr5CXKndqS1brxa6o9zPFAKjZ3pt09cI4Ndi1IHibFk Mm9bLUELp7fPtQBeFkjz7dd8THEGPX3DBftopJIVls+YwB91jVbh0PaQoZWZ5yjL0hWQQg 3gLldJitlJgTZb/cw1XMpTWjg5wT6GWOxYnbZ7Yy0O/ot9aK7X2i9AjI1p5QbwdKFmj28y x33Om6dfSDDba3IjlyNO+SZ3lE1MJ+1VmFMQ9JKh6D5ISzKVQ+Mjg/sRD3nrN/VDk8Ot+E RS6yLwkL1MkMIjyma2XFMFBWleoUlgg4AD8hL9Y2uMX9Cs4gu0/xZnTffA7sbg== 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 4S3lF46Yrnzg1S; Mon, 9 Oct 2023 03:41:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3993fCUg017860; Mon, 9 Oct 2023 03:41:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3993fCMS017858; Mon, 9 Oct 2023 03:41:12 GMT (envelope-from git) Date: Mon, 9 Oct 2023 03:41:12 GMT Message-Id: <202310090341.3993fCMS017858@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: 3911b00c0ab0 - stable/14 - nosys(): add kern.signosys tunable/sysctl to control SIGSYS List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 3911b00c0ab0a4ac0a1113310dd39c1fb2dd4e24 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=3911b00c0ab0a4ac0a1113310dd39c1fb2dd4e24 commit 3911b00c0ab0a4ac0a1113310dd39c1fb2dd4e24 Author: Konstantin Belousov AuthorDate: 2023-09-25 16:36:04 +0000 Commit: Konstantin Belousov CommitDate: 2023-10-09 03:24:31 +0000 nosys(): add kern.signosys tunable/sysctl to control SIGSYS (cherry picked from commit 5804a1623054d865618d77cfac86978f03b8111a) --- sys/kern/kern_sig.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c index 16bc1e441119..c847783cd3da 100644 --- a/sys/kern/kern_sig.c +++ b/sys/kern/kern_sig.c @@ -159,6 +159,10 @@ static int kern_lognosys = 0; SYSCTL_INT(_kern, OID_AUTO, lognosys, CTLFLAG_RWTUN, &kern_lognosys, 0, "Log invalid syscalls"); +static int kern_signosys = 1; +SYSCTL_INT(_kern, OID_AUTO, signosys, CTLFLAG_RWTUN, &kern_signosys, 0, + "Send SIGSYS on return from invalid syscall"); + __read_frequently bool sigfastblock_fetch_always = false; SYSCTL_BOOL(_kern, OID_AUTO, sigfastblock_fetch_always, CTLFLAG_RWTUN, &sigfastblock_fetch_always, 0, @@ -4219,7 +4223,7 @@ nosys(struct thread *td, struct nosys_args *args) p = td->td_proc; - if (SV_PROC_FLAG(p, SV_SIGSYS) != 0) { + if (SV_PROC_FLAG(p, SV_SIGSYS) != 0 && kern_signosys) { PROC_LOCK(p); tdsignal(td, SIGSYS); PROC_UNLOCK(p); From nobody Mon Oct 9 03:41:13 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3lF626B2z4wBqQ; Mon, 9 Oct 2023 03:41:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S3lF61BzFz3gYJ; Mon, 9 Oct 2023 03:41:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822874; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=34deJtY+oCXXaHYa2ANnQre/44uc/FRcFYVpCPyojUo=; b=BqlLwdZbpi697Y7+XD/yWXaFZ+EJA3dEFRa8Ze+qXBcR9o4wFy4QuDlX48P36WYAFepdAs cXppGsMmp6hpZyQxiVTwD4Fq11lCaUmjT8T1dcduZiTwOfBzZdgqIQr8yrT4qBTCVsaYlx EZKxib/IHwQ964/7lEUmYKg3HR+H75B/oVt7Ugibfkrs7tCP13LCnxm/6BgDuyhOy11FKT oqhYLa8Vvhq76kwBfHspJgM5eLgg3gGNOnAvVUDYLFq101ZilhUXgvuv3qM2SIIamhn49U aSH0j+808AcFXvpWWyMoY3FZE/MWADkPxJhEi/7+aPWcO6ZHbJFhTy+L4xGIDA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696822874; a=rsa-sha256; cv=none; b=ApBmIaAdH2WuU/Zir+qAUpUPTmXUmXsKQ2dvCcldPIJMAPmW/PsZ2gjifPvbXvh5i6n+HN avWp2lQj9Ooh1RoI+kbW19UJjyvwJByZ2UngxQ2lRblyBiHdwb91SL3cd1ZycTGvHj5PEJ vJBLKfyL2R6fORh365NMAdRP8wwIYB8ilWREeBdODGUADboshD8zu53j1Nd+zxVnTMGhBm 8Db1moltmXcNI1qu/q/9j2F0Z72apRXH70lPNTRkU3BOs8PN9Bjv2PcIULTUZNpentRxvU osGdBbr2f/LIhBUPOWtAZ0DX1pCuy3xCFBI8z8HYGbVQPxZVejPm/R8gJewWTg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822874; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=34deJtY+oCXXaHYa2ANnQre/44uc/FRcFYVpCPyojUo=; b=gDX+/TJS7FlrLQhMQvVrI6qKwljfvNcVZyRK2QC/iMZXS+Y3o9i3u1OljZIn1RUXPNkSxU Ysljx+feCI47wY5UqX+a7ODpn9sXTrr+6ksDvTM0NoNAmXZQ3Ob2AC2VkgGFIBe1X+ysh+ WBwPawZeakSHHZVjUmoDjIDHcKXx5jnQoN1rbylQdu4OHXqyO0hSrTrWxYwo3Mi+JdAMJW fqELIbp06sxLwEFkybcJ7H/ZlYwlXk35m7BC0Ecc8PBWiiJAFlpTTEKH0E6RSdLc1ckPLQ mEJo2yefOmFZkQBlKzsim8ftTmJ9+1bFEPtRsKeplN5WzpO89jadQ8ki2zjHDg== 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 4S3lF60JjMzg43; Mon, 9 Oct 2023 03:41:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3993fDQp017919; Mon, 9 Oct 2023 03:41:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3993fDqQ017916; Mon, 9 Oct 2023 03:41:13 GMT (envelope-from git) Date: Mon, 9 Oct 2023 03:41:13 GMT Message-Id: <202310090341.3993fDqQ017916@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: 9a077205ca6c - stable/14 - linuxolator: fix nosys() to not send SIGSYS List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 9a077205ca6cc1fa13ad50a797aed638abb9e7cb Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=9a077205ca6cc1fa13ad50a797aed638abb9e7cb commit 9a077205ca6cc1fa13ad50a797aed638abb9e7cb Author: Konstantin Belousov AuthorDate: 2023-09-25 16:39:48 +0000 Commit: Konstantin Belousov CommitDate: 2023-10-09 03:24:31 +0000 linuxolator: fix nosys() to not send SIGSYS (cherry picked from commit 7acc4240ce00af540093b47ad00be0508310b515) --- sys/amd64/linux/linux_sysvec.c | 2 +- sys/amd64/linux32/linux32_sysvec.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/amd64/linux/linux_sysvec.c b/sys/amd64/linux/linux_sysvec.c index 2907323d903c..98e2a01b98db 100644 --- a/sys/amd64/linux/linux_sysvec.c +++ b/sys/amd64/linux/linux_sysvec.c @@ -159,7 +159,7 @@ linux_fetch_syscall_args(struct thread *td) if (sa->code >= p->p_sysent->sv_size) /* nosys */ - sa->callp = &p->p_sysent->sv_table[p->p_sysent->sv_size - 1]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/amd64/linux32/linux32_sysvec.c b/sys/amd64/linux32/linux32_sysvec.c index 31436ee7162a..7104cc50735e 100644 --- a/sys/amd64/linux32/linux32_sysvec.c +++ b/sys/amd64/linux32/linux32_sysvec.c @@ -531,7 +531,7 @@ linux32_fetch_syscall_args(struct thread *td) if (sa->code >= p->p_sysent->sv_size) /* nosys */ - sa->callp = &p->p_sysent->sv_table[p->p_sysent->sv_size - 1]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; From nobody Mon Oct 9 03:41:15 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3lF72ZcPz4wC25; Mon, 9 Oct 2023 03:41: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 4S3lF726xgz3gbY; Mon, 9 Oct 2023 03:41:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822875; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DFUEvSHMCKPmlJsEXpxiR9FkQ3+1T3hJHxBvrXUUWQw=; b=UVY2uy47fd5upx7ZEb3RzRxM8beGBiP+zVhQb+PyET7lDAvqOFLUIDuVp1cNVcma6Ot3ql 0D42amGum5SzQ56+bAjDxcoNghnVAljf0HBE12kE+o/fOiRpIAscd7xxr8S0AhquolOGkC NhVtl6v6bq5oP7j6Uwfkepv0Nq6be82emTwCZKgRr2lB9p+cfFOkhPjrz2TAXNpz0M4brf a3/sZ4DEeEXTNNFV0MYSTpBE3jny3GSzgGYZYIxN7LeJEohVvzwMFB6FA0SCRkE5QRPz7o elaAhy16egCck2Jpa4Dzfs2e0Nsw7kuJqb/ZMMfi/Lf9fLAWr50epBK/VgzapQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696822875; a=rsa-sha256; cv=none; b=sFz8saUczsW7slZySe3i2+AMk0tSiLr7KL0GAHtHC/ebr7xlSOs+vISaBuYGlCYejnl23D Dvu7FlCjilWC8rKgs1Fs1in9CQLpXDf4rkMcyyYGkOVMMMUsPt1RDcInyXgVXLiiE96W6W 3IYzVHXFTLQP1g06Ih2kJ647PnCtD6HCs6phT6bvSKkYOXAIt6D74t+H+ioNpacKwD1V6I gXBYNDDYD62i9v1Ho/CQsZV2eGXJNf6TqIWrkEEGJm4s4gKU6bn/ljtqiYbwtmzUsZLEg+ 9ilyG3mDsiD0MREf0Xxawr+fy8eSrCI16PYeEMmOXJXw6e5JUDSbr0Ykh/d8xQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822875; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DFUEvSHMCKPmlJsEXpxiR9FkQ3+1T3hJHxBvrXUUWQw=; b=hyrykocsNm758WB4Z5hBzMUzIYhLb+UIvd9JMCSFdziyuctZHsVeOhyoGYmrHPgzdgKqMr JHz+j0UY03mbsl5t4LogIR72fnARkyET9z9Yb/ryqkp/sIZHIWPQ66KnPebb/5DO9XwQnU bvfaApK8ysfAOrw0q2IHqoaoyiYVpGWg3VJFpBpCDwb1g+Ucb48xeqHh63U4F3UeZud6VU lQfOiOk+qltBhPiPgiMQ+QkEfQsGY1jiCiGVg/f49GSim/wbtZULwoXbV67SRnzYeGA8E+ G8R9FmMssIlLbIGh+MSrcksTYcAKC5dCLXRS7kPpk2aWpcsH6ZmhB8z2iHLL2g== 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 4S3lF711HKzg44; Mon, 9 Oct 2023 03:41:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3993fFbO017956; Mon, 9 Oct 2023 03:41:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3993fFxm017953; Mon, 9 Oct 2023 03:41:15 GMT (envelope-from git) Date: Mon, 9 Oct 2023 03:41:15 GMT Message-Id: <202310090341.3993fFxm017953@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: e19be5b01eab - stable/14 - SIGSYS: add tests List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e19be5b01eabc5260011d97ae807e8d2410cf511 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=e19be5b01eabc5260011d97ae807e8d2410cf511 commit e19be5b01eabc5260011d97ae807e8d2410cf511 Author: Konstantin Belousov AuthorDate: 2023-09-25 18:40:28 +0000 Commit: Konstantin Belousov CommitDate: 2023-10-09 03:24:31 +0000 SIGSYS: add tests (cherry picked from commit 0afcac3e37e911f7e387ebeb2aae19b2b00ca4cc) --- tests/sys/kern/Makefile | 1 + tests/sys/kern/sigsys.c | 69 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 70 insertions(+) diff --git a/tests/sys/kern/Makefile b/tests/sys/kern/Makefile index f2fe9e7008d9..6396b22005c3 100644 --- a/tests/sys/kern/Makefile +++ b/tests/sys/kern/Makefile @@ -48,6 +48,7 @@ TEST_METADATA.unix_seqpacket_test+= timeout="15" ATF_TESTS_C+= unix_socketpair_test ATF_TESTS_C+= waitpid_nohang ATF_TESTS_C+= pdeathsig +ATF_TESTS_C+= sigsys ATF_TESTS_SH+= coredump_phnum_test ATF_TESTS_SH+= sonewconn_overflow diff --git a/tests/sys/kern/sigsys.c b/tests/sys/kern/sigsys.c new file mode 100644 index 000000000000..75e3816fc158 --- /dev/null +++ b/tests/sys/kern/sigsys.c @@ -0,0 +1,69 @@ +/*- + * Copyright (c) 2023 The FreeBSD Foundation + * + * SPDX-License-Identifier: BSD-2-Clause + * + * This software were developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + */ + +#include + +#include +#include +#include +#include +#include + +static sig_atomic_t sigsys_cnt; + +static void +sigsys_handler(int signo, siginfo_t *si, void *ucp) +{ + sigsys_cnt++; +} + +ATF_TC(sigsys_test); + +ATF_TC_HEAD(sigsys_test, tc) +{ + atf_tc_set_md_var(tc, "descr", + "Testing delivery of SIGSYS on invalid syscalls"); +} + +ATF_TC_BODY(sigsys_test, tc) +{ + struct sigaction sa; + + memset(&sa, 0, sizeof(sa)); + sa.sa_sigaction = sigsys_handler; + sa.sa_flags = SA_SIGINFO; + ATF_REQUIRE(sigaction(SIGSYS, &sa, NULL) == 0); + + ATF_REQUIRE(syscall(273) == -1); /* reserved */ + ATF_CHECK_ERRNO(ENOSYS, true); + atomic_signal_fence(memory_order_seq_cst); + ATF_CHECK_EQ(1, sigsys_cnt); + + ATF_REQUIRE(syscall(440) == -1); /* SYS_kse_switchin */ + ATF_CHECK_ERRNO(ENOSYS, true); + atomic_signal_fence(memory_order_seq_cst); + ATF_CHECK_EQ(2, sigsys_cnt); + + /* Hope this is enough for say next two months */ + ATF_REQUIRE(syscall(3000000) == -1); + ATF_CHECK_ERRNO(ENOSYS, true); + atomic_signal_fence(memory_order_seq_cst); + ATF_CHECK_EQ(3, sigsys_cnt); + + ATF_REQUIRE(syscall(SYS_afs3_syscall) == -1); + ATF_CHECK_ERRNO(ENOSYS, true); + atomic_signal_fence(memory_order_seq_cst); + ATF_CHECK_EQ(4, sigsys_cnt); +} + +ATF_TP_ADD_TCS(tp) +{ + ATF_TP_ADD_TC(tp, sigsys_test); + return (atf_no_error()); +} From nobody Mon Oct 9 03:43:04 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3lHD3mN0z4wCKJ; Mon, 9 Oct 2023 03:43: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 4S3lHD3KG2z4F0l; Mon, 9 Oct 2023 03:43:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822984; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IbV9ja4VC5XFltk0XPQDjlvPXfGHcpI88xnxs8YayO0=; b=QnwEAJ4wMmIH70Qsjq6bWJZm+c5g/g7ITMQ5clinVGUHs2361A5iEY1ISIKzxO1BsR9ofx 1s9ETDijKwCTFTeTMyWMoom2bRBRuad0XdTg4sBTdzMVbvNyvmNT8LbJmSLgkb+Ru+YTvR dApXg4kn12xo4CPd3cpdEuL0fXIeYdmGK559xCA3ud1c3RWnm3Kq4UR1cbnX9/Lx8xMGQt MiCeDqihNIGONySL9gyPjKfbGptXkOy15Fo8Ivbw2p6q4o7czpFKY85ivSJcEerTpA7A/I Z5E8M6anRKarp2pyAVy8Z91Zo0bz0EKU4kSOiM7J+SrA6NF49wnBcZZlyqIexg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696822984; a=rsa-sha256; cv=none; b=KYxjzMgMxKNPmCFMfyGvqAUit3mVXxHE7xO/W3bCO6xwEjE1SUyHBPh2bAITxXk4Ve3eBW /h9fRMJa/mvTku/mBUoSu+P1X8Yrz7/1NhV3xh2ApFCMVswuuBBEk80zVUbWdBt7M9JJw0 LkZPDJSnwtrEfhGnAW1ZHMuGGkRMDjjG1j5oqZG8f4SEfAN8YaqDfyyBJMs8ZrnhV6zD3R sh1ANDGJbVshDXHlnwTlkJD1Y5pkPq1skgJ/XgJPMGFVGRWCJ2kRNaqJ78eULyEB9e3baJ tekpJ1SL1R/JlBhIkBKd/v6ww16en/EDLgOtJ380t186v3xgy/ViElbXNz9w3Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822984; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IbV9ja4VC5XFltk0XPQDjlvPXfGHcpI88xnxs8YayO0=; b=ZLWckTWvgiR4ldBd8KlwxrLVIfso/qFqw+f0uNUDSYxb4HeXFZKBvMTOTnzTkRbA80HqhE RjBiAw7UWEnh0RhiMJG9lwFOODsMt6TJydKBuuA030RChNjA5dDW4dTO305M56OYMLaU+j lMbYcKFQvYXstia86bVYHPnacr2U08cD9TqGy/pQqDTwyhQCG2YvKiMl+rlv5ysuT9uLYU VIu9TqoG2D2CRABIgBBk2x1o5BMTSRuDIbQnsQIekqiWTtYT7hMLmD+8crj04jxIdJ1Z3C cacYHD4s1S2Vkn4YZ7rmcU1eWHftSUTwJZCwgFFUFuNd/GYf6mxremKneJo/PA== 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 4S3lHD2MmYzgQf; Mon, 9 Oct 2023 03:43:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3993h4hI024002; Mon, 9 Oct 2023 03:43:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3993h40Y023999; Mon, 9 Oct 2023 03:43:04 GMT (envelope-from git) Date: Mon, 9 Oct 2023 03:43:04 GMT Message-Id: <202310090343.3993h40Y023999@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: c2274d5a08e1 - stable/13 - amd64 cpu_fetch_syscall_args_fallback(): fix whitespace List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: c2274d5a08e1d7e21907f1a6bc1db8f2436a6b5d Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=c2274d5a08e1d7e21907f1a6bc1db8f2436a6b5d commit c2274d5a08e1d7e21907f1a6bc1db8f2436a6b5d Author: Konstantin Belousov AuthorDate: 2023-09-26 09:20:30 +0000 Commit: Konstantin Belousov CommitDate: 2023-10-09 03:42:17 +0000 amd64 cpu_fetch_syscall_args_fallback(): fix whitespace (cherry picked from commit 6b3bb233cd0c3eeeb70e388a62b142b4f22b62b2) --- sys/amd64/amd64/trap.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sys/amd64/amd64/trap.c b/sys/amd64/amd64/trap.c index ff1e4bea52f7..8534e1e5b063 100644 --- a/sys/amd64/amd64/trap.c +++ b/sys/amd64/amd64/trap.c @@ -1019,10 +1019,10 @@ cpu_fetch_syscall_args_fallback(struct thread *td, struct syscall_args *sa) regcnt--; } - if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; - else - sa->callp = &p->p_sysent->sv_table[sa->code]; + if (sa->code >= p->p_sysent->sv_size) + sa->callp = &p->p_sysent->sv_table[0]; + else + sa->callp = &p->p_sysent->sv_table[sa->code]; KASSERT(sa->callp->sy_narg <= nitems(sa->args), ("Too many syscall arguments!")); @@ -1032,7 +1032,7 @@ cpu_fetch_syscall_args_fallback(struct thread *td, struct syscall_args *sa) if (sa->callp->sy_narg > regcnt) { params = (caddr_t)frame->tf_rsp + sizeof(register_t); error = copyin(params, &sa->args[regcnt], - (sa->callp->sy_narg - regcnt) * sizeof(sa->args[0])); + (sa->callp->sy_narg - regcnt) * sizeof(sa->args[0])); if (__predict_false(error != 0)) return (error); } From nobody Mon Oct 9 03:43:05 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3lHF5MhVz4wBrY; Mon, 9 Oct 2023 03:43: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 4S3lHF4XNzz4FLv; Mon, 9 Oct 2023 03:43:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822985; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Y3mpc0v+yVwcG8x9HPp0w7yKBsSHSMBUFNQed0EyTZY=; b=ET8nRGI3X8ZD3Gw0RMGdmic1gnRB06FUuHl8wfl3vJanMdwEnStoN9IEF9daEoP+NVN1A9 dMiRuFYRddRwetB5r4AAADT1Fc6VmnZlry0qqP6pnG8vNlZJ5Jqx7RmNssq1+hxmX+FJce mo6YPTht4QDrYJkRgqdHvdR1nAEILBi7QML5bP5KTQ17gsSpQo66shdjnkBJAjmEJkfU3u xFusNFBXPGLGkBSXD3GceczVKwVt4FH/lUZre/0M48DVVVv7VtOp1XnVtkf9XUvKIWRUka 6ByE19QOOD61GHByQBuK3giSs9iF1CuzAnRPYx/uuUxCabcja6uH9mplsfe+cg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696822985; a=rsa-sha256; cv=none; b=LJBjmS3BSicS0iUt45W6pKKMBk2GGv0bI1cWErWzgwIHdKGCJzv3ar4OutHfzm3dGSVZNs Qi5jzgC1nDB6oq0ePoL2RQ06w9jeN2qwSrlj/BGWggyL/Wqq7eZ475FicS1lWKjtWRZc6e T7sEUW0QWpNo51VHWkUtVu4FdTKpTKDGahX7ONtDBmxFjBdc3jRnD58tGHJW3g85Sruqc7 +USotYSiYEdXkKnIYO1ElEv/KSSYfXH4/faD8Qlli4dYmZiL0OrAryJCANbNMPX8gUxjBa C/scKEGnfCb+ZEKfihuNKDhAq30DRou0B/sdiTqrO5ZdsNbh+SSq0jtLGncdeQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822985; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Y3mpc0v+yVwcG8x9HPp0w7yKBsSHSMBUFNQed0EyTZY=; b=msQx+TnSTK3j99ESAryEWzPwcgbdxvSTio6wCTcyTSry8GFC2zY7LvoL6gr54HtPYxhtaq RoH2zQYlnf69vuxjagFkE81xHHJwApVD6rpIzZU6U5S0lknRXVTwlfGt7Dy7XMctevK3z9 xA8EbnLq9rFCydbxxUk5knYzE2L3SxlMs0YCSrYG0wnNzJ7zxlt2Er8s3wv8EkACMUe78a hHYSYNDIah0vRT/aSeWA2qezl3+H8DbJzJJEewEtYZBI9/ew/HmyLLyYkJ/xjb2ZXMumbL 9XYAJ03uNHlyl/RZoIXC+Eefr8pzjDZnr96+AShuIH0vZcizbpNcoHc1eiqG2g== 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 4S3lHF3DXBzfvH; Mon, 9 Oct 2023 03:43:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3993h5pr024058; Mon, 9 Oct 2023 03:43:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3993h5mg024055; Mon, 9 Oct 2023 03:43:05 GMT (envelope-from git) Date: Mon, 9 Oct 2023 03:43:05 GMT Message-Id: <202310090343.3993h5mg024055@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: 62a8639f7012 - stable/13 - syscalls: fix missing SIGSYS for several ENOSYS errors List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 62a8639f7012603b3b525409b89c7b6a197c6dd3 Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=62a8639f7012603b3b525409b89c7b6a197c6dd3 commit 62a8639f7012603b3b525409b89c7b6a197c6dd3 Author: Konstantin Belousov AuthorDate: 2023-09-25 16:32:52 +0000 Commit: Konstantin Belousov CommitDate: 2023-10-09 03:42:17 +0000 syscalls: fix missing SIGSYS for several ENOSYS errors (cherry picked from commit 39024a89146902ca9aba250130b828ad9aced99d) --- sys/amd64/amd64/trap.c | 2 +- sys/amd64/ia32/ia32_syscall.c | 2 +- sys/arm/arm/syscall.c | 2 +- sys/arm64/arm64/elf32_machdep.c | 2 +- sys/arm64/arm64/trap.c | 2 +- sys/arm64/linux/linux_sysvec.c | 2 +- sys/i386/i386/trap.c | 2 +- sys/i386/linux/linux_sysvec.c | 2 +- sys/kern/kern_sig.c | 3 ++- sys/kern/kern_syscalls.c | 25 +++++++++++++++++++------ sys/kern/subr_syscall.c | 3 ++- sys/powerpc/powerpc/trap.c | 2 +- sys/riscv/riscv/trap.c | 2 +- sys/sys/sysent.h | 3 ++- 14 files changed, 35 insertions(+), 19 deletions(-) diff --git a/sys/amd64/amd64/trap.c b/sys/amd64/amd64/trap.c index 8534e1e5b063..9f50de795ca5 100644 --- a/sys/amd64/amd64/trap.c +++ b/sys/amd64/amd64/trap.c @@ -1020,7 +1020,7 @@ cpu_fetch_syscall_args_fallback(struct thread *td, struct syscall_args *sa) } if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/amd64/ia32/ia32_syscall.c b/sys/amd64/ia32/ia32_syscall.c index 9d8afa960abd..20a7b1cadb60 100644 --- a/sys/amd64/ia32/ia32_syscall.c +++ b/sys/amd64/ia32/ia32_syscall.c @@ -181,7 +181,7 @@ ia32_fetch_syscall_args(struct thread *td) params += sizeof(quad_t); } if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/arm/arm/syscall.c b/sys/arm/arm/syscall.c index d2799123138a..99ce83ebce5f 100644 --- a/sys/arm/arm/syscall.c +++ b/sys/arm/arm/syscall.c @@ -117,7 +117,7 @@ cpu_fetch_syscall_args(struct thread *td) } p = td->td_proc; if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; error = 0; diff --git a/sys/arm64/arm64/elf32_machdep.c b/sys/arm64/arm64/elf32_machdep.c index 30561ded9376..edd285d8b482 100644 --- a/sys/arm64/arm64/elf32_machdep.c +++ b/sys/arm64/arm64/elf32_machdep.c @@ -192,7 +192,7 @@ freebsd32_fetch_syscall_args(struct thread *td) } if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/arm64/arm64/trap.c b/sys/arm64/arm64/trap.c index 7906bd94d470..d62ebba3debd 100644 --- a/sys/arm64/arm64/trap.c +++ b/sys/arm64/arm64/trap.c @@ -149,7 +149,7 @@ cpu_fetch_syscall_args(struct thread *td) } if (__predict_false(sa->code >= p->p_sysent->sv_size)) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/arm64/linux/linux_sysvec.c b/sys/arm64/linux/linux_sysvec.c index 8f142e0d8069..4ceee760d80b 100644 --- a/sys/arm64/linux/linux_sysvec.c +++ b/sys/arm64/linux/linux_sysvec.c @@ -132,7 +132,7 @@ linux_fetch_syscall_args(struct thread *td) sa->code = td->td_frame->tf_x[8]; /* LINUXTODO: generic syscall? */ if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/i386/i386/trap.c b/sys/i386/i386/trap.c index aa33418c34b8..67bd0ba015e5 100644 --- a/sys/i386/i386/trap.c +++ b/sys/i386/i386/trap.c @@ -1114,7 +1114,7 @@ cpu_fetch_syscall_args(struct thread *td) } if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/i386/linux/linux_sysvec.c b/sys/i386/linux/linux_sysvec.c index de2e65fb2191..ab29da91f64a 100644 --- a/sys/i386/linux/linux_sysvec.c +++ b/sys/i386/linux/linux_sysvec.c @@ -522,7 +522,7 @@ linux_fetch_syscall_args(struct thread *td) if (sa->code >= p->p_sysent->sv_size) /* nosys */ - sa->callp = &p->p_sysent->sv_table[p->p_sysent->sv_size - 1]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c index 7601385677d2..04ca12cc5d84 100644 --- a/sys/kern/kern_sig.c +++ b/sys/kern/kern_sig.c @@ -2610,7 +2610,8 @@ ptrace_syscallreq(struct thread *td, struct proc *p, audited = AUDIT_SYSCALL_ENTER(sc, td) != 0; if (!sy_thr_static) { - error = syscall_thread_enter(td, se); + error = syscall_thread_enter(td, &se); + sy_thr_static = (se->sy_thrcnt & SY_THR_STATIC) != 0; if (error != 0) { tsr->ts_ret.sr_error = error; return; diff --git a/sys/kern/kern_syscalls.c b/sys/kern/kern_syscalls.c index c596fca98d6c..0adb55ce80d0 100644 --- a/sys/kern/kern_syscalls.c +++ b/sys/kern/kern_syscalls.c @@ -61,6 +61,17 @@ lkmressys(struct thread *td, struct nosys_args *args) return (nosys(td, args)); } +struct sysent nosys_sysent = { + .sy_call = (sy_call_t *)nosys, + .sy_systrace_args_func = NULL, + .sy_narg = 0, + .sy_flags = SYF_CAPENABLED, + .sy_auevent = AUE_NULL, + .sy_entry = 0, /* DTRACE_IDNONE */ + .sy_return = 0, + .sy_thrcnt = SY_THR_STATIC, +}; + static void syscall_thread_drain(struct sysent *se) { @@ -78,19 +89,21 @@ syscall_thread_drain(struct sysent *se) } int -syscall_thread_enter(struct thread *td, struct sysent *se) +syscall_thread_enter(struct thread *td, struct sysent **se) { u_int32_t cnt, oldcnt; - KASSERT((se->sy_thrcnt & SY_THR_STATIC) == 0, + KASSERT(((*se)->sy_thrcnt & SY_THR_STATIC) == 0, ("%s: not a static syscall", __func__)); do { - oldcnt = se->sy_thrcnt; - if ((oldcnt & (SY_THR_DRAINING | SY_THR_ABSENT)) != 0) - return (ENOSYS); + oldcnt = (*se)->sy_thrcnt; + if ((oldcnt & (SY_THR_DRAINING | SY_THR_ABSENT)) != 0) { + *se = &nosys_sysent; + return (0); + } cnt = oldcnt + SY_THR_INCR; - } while (atomic_cmpset_acq_32(&se->sy_thrcnt, oldcnt, cnt) == 0); + } while (atomic_cmpset_acq_32(&(*se)->sy_thrcnt, oldcnt, cnt) == 0); return (0); } diff --git a/sys/kern/subr_syscall.c b/sys/kern/subr_syscall.c index 464f91e04206..67ec87d2d563 100644 --- a/sys/kern/subr_syscall.c +++ b/sys/kern/subr_syscall.c @@ -144,7 +144,8 @@ syscallenter(struct thread *td) AUDIT_SYSCALL_ENTER(sa->code, td) || !sy_thr_static)) { if (!sy_thr_static) { - error = syscall_thread_enter(td, se); + error = syscall_thread_enter(td, &se); + sy_thr_static = (se->sy_thrcnt & SY_THR_STATIC) != 0; if (error != 0) { td->td_errno = error; goto retval; diff --git a/sys/powerpc/powerpc/trap.c b/sys/powerpc/powerpc/trap.c index e1bc7aee1be9..202a83c4683f 100644 --- a/sys/powerpc/powerpc/trap.c +++ b/sys/powerpc/powerpc/trap.c @@ -693,7 +693,7 @@ cpu_fetch_syscall_args(struct thread *td) } if (sa->code >= p->p_sysent->sv_size) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/riscv/riscv/trap.c b/sys/riscv/riscv/trap.c index 8a5e340442c7..ecf6b043d606 100644 --- a/sys/riscv/riscv/trap.c +++ b/sys/riscv/riscv/trap.c @@ -109,7 +109,7 @@ cpu_fetch_syscall_args(struct thread *td) } if (__predict_false(sa->code >= p->p_sysent->sv_size)) - sa->callp = &p->p_sysent->sv_table[0]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/sys/sysent.h b/sys/sys/sysent.h index f895f2cd894a..2d8631b94113 100644 --- a/sys/sys/sysent.h +++ b/sys/sys/sysent.h @@ -193,6 +193,7 @@ struct sysentvec { extern struct sysentvec aout_sysvec; extern struct sysent sysent[]; extern const char *syscallnames[]; +extern struct sysent nosys_sysent; #define NO_SYSCALL (-1) @@ -315,7 +316,7 @@ struct nosys_args; int lkmnosys(struct thread *, struct nosys_args *); int lkmressys(struct thread *, struct nosys_args *); -int syscall_thread_enter(struct thread *td, struct sysent *se); +int syscall_thread_enter(struct thread *td, struct sysent **se); void syscall_thread_exit(struct thread *td, struct sysent *se); int shared_page_alloc(int size, int align); From nobody Mon Oct 9 03:43:06 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3lHG5yhjz4wCHM; Mon, 9 Oct 2023 03:43:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S3lHG5Gf6z4FRr; Mon, 9 Oct 2023 03:43:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822986; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w47z03AxG48gVE3xji2j7+JUdSza0yclRKzcb7iALoM=; b=JacyBi5NdlN0G4q1RucBqjwhZ+bclEeR8aoOJa2gTrEoND5y7ZKUtgm19JYRuXk0GTCDsW zZKO3a7oXOjK7sJv0H6RQDOP02MhM1KfFAhvmJKBJLpxC3imhFt5PhezJ+nACF6vhntMvG ntlcYLAkXCCfOPBg/r9aUb8FEu4ZrrgDXiH4fszApSPygf9H7dF/Iv7UIlqBbXbGiJ3dqL +jwDoHmwQFcBFrBAHLM7hmryk/T04XPztOmCBGUuiXl0/M1gN5E/ZPQ4AllhO9/XdBWQTV fVEYdyXF+btTuJngCokkSDf9I3YRoMuLv72L0LzKXgv2Nsb5RSlfDY7PlPq6vQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696822986; a=rsa-sha256; cv=none; b=ucG76ArkvquWvcvRSPLp8dXrQeNWWownxihOoxlY8raID9/SrKHjAOnyJKRuLG1ySXMLPp y/KQIurtgu1PQi0liCiTd1KVivKl/lgdgLr8RVQILveQvNb/uoHpGllnvcFdZwGEPnfdI+ NNjpdAmxY8BFx8AVhQWh3+uY6f2kpQ0ynA4diQQ8/qzAUQZULXXlrHSviha4r74lTlCG04 xFwSmepgurGL02UIxiMWK3vGNXNrh2KiBGQ0XD4RZpX/PERxL6OcES+xozEyY+jXgTXJwb OZDtguIVKsJFvyd2WP9YJWKCq74btMrLtQhYFwAVKA0hkd35IHXmefcyqSCxTw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822986; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w47z03AxG48gVE3xji2j7+JUdSza0yclRKzcb7iALoM=; b=aA6bNEe1c26k41xTJbvLGWkdruAgXYZNpQ/g3JNN/HX4Bd7JJrvltp21cso+bC1EnesmsF 8BAzUcEqdU9SyXI1UCsOMvbOkHbjStYa4HdIsR/ya3qW6oHpPSIT5mdjXHlfitLJ6qk7Fd 5CM+TYq6rBVga/EKMOsifG2tF1O0g261pHoc9lpCMbnMoNg9XTPDGrFi6bzOOhYFZNiLJW 1XFplt4v07cTUH9REd45fbs80NCSZ9lHV4Lt5o/t2p0lPxTYvRcCRGH/6A+8zdxvshnkdu 4DDPQ4RmmBVSY0Uj3iSdP781lcZmjvDyL2Qv/RLobJNMOkog/Dm56K9WtREBCA== 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 4S3lHG4FP1zgfm; Mon, 9 Oct 2023 03:43:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3993h6H7024108; Mon, 9 Oct 2023 03:43:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3993h6EM024105; Mon, 9 Oct 2023 03:43:06 GMT (envelope-from git) Date: Mon, 9 Oct 2023 03:43:06 GMT Message-Id: <202310090343.3993h6EM024105@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: 7ac1c755d057 - stable/13 - sysentvec: add SV_SIGSYS flag List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 7ac1c755d05777620e47254d0526df82155df58e Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=7ac1c755d05777620e47254d0526df82155df58e commit 7ac1c755d05777620e47254d0526df82155df58e Author: Konstantin Belousov AuthorDate: 2023-09-25 16:33:36 +0000 Commit: Konstantin Belousov CommitDate: 2023-10-09 03:42:17 +0000 sysentvec: add SV_SIGSYS flag (cherry picked from commit b82b4ae752501469053979393e33bbfa74fbc9d2) --- sys/amd64/amd64/elf_machdep.c | 6 ++++-- sys/arm/arm/elf_machdep.c | 2 +- sys/arm64/arm64/elf32_machdep.c | 2 +- sys/arm64/arm64/elf_machdep.c | 2 +- sys/compat/ia32/ia32_sysvec.c | 3 ++- sys/i386/i386/elf_machdep.c | 2 +- sys/kern/imgact_aout.c | 6 ++++-- sys/kern/kern_sig.c | 8 +++++--- sys/powerpc/powerpc/elf32_machdep.c | 2 +- sys/powerpc/powerpc/elf64_machdep.c | 4 ++-- sys/riscv/riscv/elf_machdep.c | 2 +- sys/sys/sysent.h | 1 + 12 files changed, 24 insertions(+), 16 deletions(-) diff --git a/sys/amd64/amd64/elf_machdep.c b/sys/amd64/amd64/elf_machdep.c index 4cce1aa85970..6e966ec559f3 100644 --- a/sys/amd64/amd64/elf_machdep.c +++ b/sys/amd64/amd64/elf_machdep.c @@ -81,7 +81,8 @@ struct sysentvec elf64_freebsd_sysvec_la48 = { .sv_fixlimit = NULL, .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_ASLR | SV_LP64 | SV_SHP | - SV_TIMEKEEP | SV_RNG_SEED_VER | SV_DSO_SIG, + SV_TIMEKEEP | SV_RNG_SEED_VER | SV_DSO_SIG | + SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, @@ -124,7 +125,8 @@ struct sysentvec elf64_freebsd_sysvec_la57 = { .sv_fixlimit = NULL, .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_ASLR | SV_LP64 | SV_SHP | - SV_TIMEKEEP | SV_RNG_SEED_VER | SV_DSO_SIG, + SV_TIMEKEEP | SV_RNG_SEED_VER | SV_DSO_SIG | + SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, diff --git a/sys/arm/arm/elf_machdep.c b/sys/arm/arm/elf_machdep.c index a7de7deb73e1..0f31217d060e 100644 --- a/sys/arm/arm/elf_machdep.c +++ b/sys/arm/arm/elf_machdep.c @@ -88,7 +88,7 @@ struct sysentvec elf32_freebsd_sysvec = { .sv_maxssiz = NULL, .sv_flags = SV_ASLR | SV_SHP | SV_TIMEKEEP | SV_RNG_SEED_VER | - SV_ABI_FREEBSD | SV_ILP32, + SV_ABI_FREEBSD | SV_ILP32 | SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, diff --git a/sys/arm64/arm64/elf32_machdep.c b/sys/arm64/arm64/elf32_machdep.c index edd285d8b482..c59571808cd3 100644 --- a/sys/arm64/arm64/elf32_machdep.c +++ b/sys/arm64/arm64/elf32_machdep.c @@ -105,7 +105,7 @@ static struct sysentvec elf32_freebsd_sysvec = { .sv_fixlimit = NULL, // XXX .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_ILP32 | SV_SHP | SV_TIMEKEEP | - SV_RNG_SEED_VER, + SV_RNG_SEED_VER | SV_SIGSYS, .sv_set_syscall_retval = freebsd32_set_syscall_retval, .sv_fetch_syscall_args = freebsd32_fetch_syscall_args, .sv_syscallnames = freebsd32_syscallnames, diff --git a/sys/arm64/arm64/elf_machdep.c b/sys/arm64/arm64/elf_machdep.c index f190316ae3ec..5ca289326df2 100644 --- a/sys/arm64/arm64/elf_machdep.c +++ b/sys/arm64/arm64/elf_machdep.c @@ -83,7 +83,7 @@ static struct sysentvec elf64_freebsd_sysvec = { .sv_fixlimit = NULL, .sv_maxssiz = NULL, .sv_flags = SV_SHP | SV_TIMEKEEP | SV_ABI_FREEBSD | SV_LP64 | - SV_ASLR | SV_RNG_SEED_VER, + SV_ASLR | SV_RNG_SEED_VER | SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, diff --git a/sys/compat/ia32/ia32_sysvec.c b/sys/compat/ia32/ia32_sysvec.c index 84e3c674ee41..62108cf86ab9 100644 --- a/sys/compat/ia32/ia32_sysvec.c +++ b/sys/compat/ia32/ia32_sysvec.c @@ -128,7 +128,8 @@ struct sysentvec ia32_freebsd_sysvec = { .sv_fixlimit = ia32_fixlimit, .sv_maxssiz = &ia32_maxssiz, .sv_flags = SV_ABI_FREEBSD | SV_ASLR | SV_IA32 | SV_ILP32 | - SV_SHP | SV_TIMEKEEP | SV_RNG_SEED_VER | SV_DSO_SIG, + SV_SHP | SV_TIMEKEEP | SV_RNG_SEED_VER | + SV_DSO_SIG | SV_SIGSYS, .sv_set_syscall_retval = ia32_set_syscall_retval, .sv_fetch_syscall_args = ia32_fetch_syscall_args, .sv_syscallnames = freebsd32_syscallnames, diff --git a/sys/i386/i386/elf_machdep.c b/sys/i386/i386/elf_machdep.c index c40b27462ab4..58f3c23dfcb0 100644 --- a/sys/i386/i386/elf_machdep.c +++ b/sys/i386/i386/elf_machdep.c @@ -76,7 +76,7 @@ struct sysentvec elf32_freebsd_sysvec = { .sv_fixlimit = NULL, .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_ASLR | SV_IA32 | SV_ILP32 | - SV_SHP | SV_TIMEKEEP | SV_RNG_SEED_VER, + SV_SHP | SV_TIMEKEEP | SV_RNG_SEED_VER | SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, diff --git a/sys/kern/imgact_aout.c b/sys/kern/imgact_aout.c index 002bee840379..23384d383e2c 100644 --- a/sys/kern/imgact_aout.c +++ b/sys/kern/imgact_aout.c @@ -92,7 +92,8 @@ struct sysentvec aout_sysvec = { .sv_setregs = exec_setregs, .sv_fixlimit = NULL, .sv_maxssiz = NULL, - .sv_flags = SV_ABI_FREEBSD | SV_AOUT | SV_IA32 | SV_ILP32, + .sv_flags = SV_ABI_FREEBSD | SV_AOUT | SV_IA32 | SV_ILP32 | + SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, @@ -142,7 +143,8 @@ struct sysentvec aout_sysvec = { .sv_setregs = ia32_setregs, .sv_fixlimit = ia32_fixlimit, .sv_maxssiz = &ia32_maxssiz, - .sv_flags = SV_ABI_FREEBSD | SV_AOUT | SV_IA32 | SV_ILP32, + .sv_flags = SV_ABI_FREEBSD | SV_AOUT | SV_IA32 | SV_ILP32 | + SV_SIGSYS, .sv_set_syscall_retval = ia32_set_syscall_retval, .sv_fetch_syscall_args = ia32_fetch_syscall_args, .sv_syscallnames = freebsd32_syscallnames, diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c index 04ca12cc5d84..5dd56e0ec851 100644 --- a/sys/kern/kern_sig.c +++ b/sys/kern/kern_sig.c @@ -4128,9 +4128,11 @@ nosys(struct thread *td, struct nosys_args *args) p = td->td_proc; - PROC_LOCK(p); - tdsignal(td, SIGSYS); - PROC_UNLOCK(p); + if (SV_PROC_FLAG(p, SV_SIGSYS) != 0) { + PROC_LOCK(p); + tdsignal(td, SIGSYS); + PROC_UNLOCK(p); + } if (kern_lognosys == 1 || kern_lognosys == 3) { uprintf("pid %d comm %s: nosys %d\n", p->p_pid, p->p_comm, td->td_sa.code); diff --git a/sys/powerpc/powerpc/elf32_machdep.c b/sys/powerpc/powerpc/elf32_machdep.c index a689860b9a25..5611c18920ec 100644 --- a/sys/powerpc/powerpc/elf32_machdep.c +++ b/sys/powerpc/powerpc/elf32_machdep.c @@ -123,7 +123,7 @@ struct sysentvec elf32_freebsd_sysvec = { #endif .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_ILP32 | SV_SHP | SV_ASLR | - SV_TIMEKEEP | SV_RNG_SEED_VER, + SV_TIMEKEEP | SV_RNG_SEED_VER | SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_shared_page_base = FREEBSD32_SHAREDPAGE, diff --git a/sys/powerpc/powerpc/elf64_machdep.c b/sys/powerpc/powerpc/elf64_machdep.c index 118dedda2a71..a1cf7d41e38a 100644 --- a/sys/powerpc/powerpc/elf64_machdep.c +++ b/sys/powerpc/powerpc/elf64_machdep.c @@ -85,7 +85,7 @@ struct sysentvec elf64_freebsd_sysvec_v1 = { .sv_fixlimit = NULL, .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_LP64 | SV_SHP | SV_ASLR | - SV_TIMEKEEP | SV_RNG_SEED_VER, + SV_TIMEKEEP | SV_RNG_SEED_VER | SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, @@ -128,7 +128,7 @@ struct sysentvec elf64_freebsd_sysvec_v2 = { .sv_fixlimit = NULL, .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_LP64 | SV_SHP | - SV_TIMEKEEP | SV_RNG_SEED_VER, + SV_TIMEKEEP | SV_RNG_SEED_VER | SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, diff --git a/sys/riscv/riscv/elf_machdep.c b/sys/riscv/riscv/elf_machdep.c index 52e993a21abb..23d4ea885378 100644 --- a/sys/riscv/riscv/elf_machdep.c +++ b/sys/riscv/riscv/elf_machdep.c @@ -87,7 +87,7 @@ static struct sysentvec elf64_freebsd_sysvec = { .sv_fixlimit = NULL, .sv_maxssiz = NULL, .sv_flags = SV_ABI_FREEBSD | SV_LP64 | SV_SHP | SV_TIMEKEEP | - SV_ASLR | SV_RNG_SEED_VER, + SV_ASLR | SV_RNG_SEED_VER | SV_SIGSYS, .sv_set_syscall_retval = cpu_set_syscall_retval, .sv_fetch_syscall_args = cpu_fetch_syscall_args, .sv_syscallnames = syscallnames, diff --git a/sys/sys/sysent.h b/sys/sys/sysent.h index 2d8631b94113..77f59b968346 100644 --- a/sys/sys/sysent.h +++ b/sys/sys/sysent.h @@ -172,6 +172,7 @@ struct sysentvec { #define SV_SIG_DISCIGN 0x200000 /* Do not discard ignored signals */ #define SV_SIG_WAITNDQ 0x400000 /* Wait does not dequeue SIGCHLD */ #define SV_DSO_SIG 0x800000 /* Signal trampoline packed in dso */ +#define SV_SIGSYS 0x1000000 /* SIGSYS for non-existing syscall. NOTE: different value from HEAD */ #define SV_ABI_MASK 0xff #define SV_PROC_FLAG(p, x) ((p)->p_sysent->sv_flags & (x)) From nobody Mon Oct 9 03:43:07 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3lHJ1ntBz4wBrk; Mon, 9 Oct 2023 03:43: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 4S3lHH65gvz4FQ4; Mon, 9 Oct 2023 03:43:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822987; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LQcPhVIJWR+VGu1piNq+5P8jF5k0cF7S7h+3SU6CJWs=; b=LJ7vL5g9+FXgw+lhdexcI2MC9jeR3Rwo8YUlkKXsLgeoMR9/juavoaPkBQI0euOOh3nzlK tV4SRBWH0Eq2bf7eNsk/JXJXP5Ju9cOkX9DGehnGYBanH4SwJIwlhZYsRFn1PcGqjK3L1c a/4ylwM0NxzdodmSBMpN3G0sfS2ucjMXRtf67N0kr03EWt3beMPIfIrA6xmMtcgGyDZ8zb HX1MomwhcURuaJGqeSqYaUReFzSuYlI5e0Mw82susm/pK+msu3ZA75Vx6bnFDPczZwKKyN OvtOj8SLx9CQzycNmOZz3wizopf7ed1evnGhJImXRByrqXEQz//PoQMbXzANXw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696822987; a=rsa-sha256; cv=none; b=NSUdcn1D134t6mHUsKMKtrWHyBj2b6RK2QNZnljKNiUEKRBXdWwXjq8kATMsa1dIgiHuDE 55pkCrv7+O2QzWJ9jGVyeIId9GEdTA7gaPWRrLxKH6B+XPQJ8aCfjQAWnAog7TYgnZ6Nd8 Sjda4/mnbJe3Akzb5PdecPsXbvkZntm+fON+NP+xnRE4CCM1iE/iJP7xN8KMvAGG1Z7Lrl 6Oae9wMZWUsAxMrLcVTHKYYHasbbQWHZcc2xPbEEZ9vIslvaHOLhQoCLqIkUahMJzy0+0z /nTd7NMwQptLBckeXUveQDJNRTXlwDe9zFNOFAjS4HIg2zBsmgFT9ORRBfdZwQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822987; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LQcPhVIJWR+VGu1piNq+5P8jF5k0cF7S7h+3SU6CJWs=; b=Y3o/gKrOwnLau3XeBdkuJ8o/1UJg+JUsmYTKh5cxmM8YRDcOtkyhuPjXN7SxRHouCOQAKt u40W5IRCDdvDsdheFq5OCGwGhciWcePXaAru6FFPAVxONhnvd4Tj1bzUzKAeORySAlHSE/ zVX0U3eEGx0/07hUXZ7Jxgcel01kbuGHq4/9zta2UHMVTy59wWtlgTqPYiKivyxpWIJV1C NEIfbw2vyCr8iXI/gRrsb5S/se0P50uvOTsXdnsmcDWQvLit8g4E4qaWAOQQHT/m1d53LT ou481h0zloyrrEaHs8RkMfvxS78jiSoACtFqk6nOVlq6ivCnPjtHuLvLtCCalw== 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 4S3lHH5Cl8zfvJ; Mon, 9 Oct 2023 03:43:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3993h7C9024169; Mon, 9 Oct 2023 03:43:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3993h7MJ024166; Mon, 9 Oct 2023 03:43:07 GMT (envelope-from git) Date: Mon, 9 Oct 2023 03:43:07 GMT Message-Id: <202310090343.3993h7MJ024166@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: ff4e7f52471d - stable/13 - nosys(): add kern.signosys tunable/sysctl to control SIGSYS List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: ff4e7f52471d7ce6d3ca8fe563f64bda6a88bb28 Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=ff4e7f52471d7ce6d3ca8fe563f64bda6a88bb28 commit ff4e7f52471d7ce6d3ca8fe563f64bda6a88bb28 Author: Konstantin Belousov AuthorDate: 2023-09-25 16:36:04 +0000 Commit: Konstantin Belousov CommitDate: 2023-10-09 03:42:17 +0000 nosys(): add kern.signosys tunable/sysctl to control SIGSYS (cherry picked from commit 5804a1623054d865618d77cfac86978f03b8111a) --- sys/kern/kern_sig.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c index 5dd56e0ec851..f25ff1ed55a6 100644 --- a/sys/kern/kern_sig.c +++ b/sys/kern/kern_sig.c @@ -159,6 +159,10 @@ static int kern_lognosys = 0; SYSCTL_INT(_kern, OID_AUTO, lognosys, CTLFLAG_RWTUN, &kern_lognosys, 0, "Log invalid syscalls"); +static int kern_signosys = 1; +SYSCTL_INT(_kern, OID_AUTO, signosys, CTLFLAG_RWTUN, &kern_signosys, 0, + "Send SIGSYS on return from invalid syscall"); + __read_frequently bool sigfastblock_fetch_always = false; SYSCTL_BOOL(_kern, OID_AUTO, sigfastblock_fetch_always, CTLFLAG_RWTUN, &sigfastblock_fetch_always, 0, @@ -4128,7 +4132,7 @@ nosys(struct thread *td, struct nosys_args *args) p = td->td_proc; - if (SV_PROC_FLAG(p, SV_SIGSYS) != 0) { + if (SV_PROC_FLAG(p, SV_SIGSYS) != 0 && kern_signosys) { PROC_LOCK(p); tdsignal(td, SIGSYS); PROC_UNLOCK(p); From nobody Mon Oct 9 03:43:08 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3lHK15r7z4wCHS; Mon, 9 Oct 2023 03:43: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 4S3lHJ73pjz4FSc; Mon, 9 Oct 2023 03:43:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822989; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=d8WblNUj8oVaoNqTtrASriYXYuek2RWxUZIZuzWyvsg=; b=apJf1w8KfX6lFsChkjQTMEnHm75/67vmg3KTeglyp0/v6HpcaPUEGhd5vY26xIG/dwRD16 /9ELsmy4g44hTN8eqQbaGN8bvPzWYNcXk6DOUzboMzVYkhVzu0AWOv895zYLNNiJ/3PuYf fJ9HCeCTWnHHtAsnZ2dJsBmzJm4G8Zj09rKUnLK8wQduNIsaBwOk4X/JrumAKQSuAlH6a0 4wiJ7aFmg4t25HUn9Swy3sk0aVJwobiLO/qxbEP69nHD38SuHcf6LS64XderMOlegFYvTf nVjxcY7Cwq4lZLOoDpiKc1p4z0oRG2HEh6fAFw1cQpknLXk464OwIgkRXj1Pxg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696822989; a=rsa-sha256; cv=none; b=Eg1IZq2iBCLUHanZnIPLDjQOspwzRre8EU1w4KomCD43+SJz7qmqsstwkSo7Qg8knueVhv KSsM2iJB2YUIfCX8NhuIiZ7HKTb2HQQJho5VMURDmTRRxZtRha2HhR7phN+SRiDfhkZ6aN ff6F7rzjW4J31raN+72SnnFfLf9IzZaQ08ytJxuQJ6zUPibRTgFYA09POWoqEDyD3asSDB +thv6OxNwh34RvzAeT1tCsMmo1WG8Ibo9ataqWQc8JkOqMmmxN/uZbRUEuQeuxgvzNdSd4 49YpGy/8WWxKj8ju8cPwAPrdZrQqCWjp9Crwzgg251Gp3B0PyiC9ygXMiPs7wg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822989; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=d8WblNUj8oVaoNqTtrASriYXYuek2RWxUZIZuzWyvsg=; b=wsc6mG+bTo+S5LWVcB+P2BCfSsw/rS0jzl/d5OKTqW3cDD13egQjzunfzxfleJn89omn2R 9JQ+AR/0yKxl6EVjHjbv8b/kWBiugQMg567fVtAFjyzFo23AAhr/MxSt0M3z6drrRWfIEv 25Eb2EvRVlDPCWFvibyU4omiCqzRp0p7nR29j9FK+uH5O3SpUHqz2wWFZ7YnGQEmEgy4M1 MHxcTJht7wjTHgQ/M+sHGHiuGkX46m86xEnzVfrESjt/6vDeONf0B5llEue82egFN3gi1W qO3q8fUHsNyGF8yWh+I+GNRbTcbKWS6wP29hxWmQ4t3GIkxZuyc5HjBR8aQNTA== 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 4S3lHJ618kzfgL; Mon, 9 Oct 2023 03:43:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3993h8h2024218; Mon, 9 Oct 2023 03:43:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3993h8xh024215; Mon, 9 Oct 2023 03:43:08 GMT (envelope-from git) Date: Mon, 9 Oct 2023 03:43:08 GMT Message-Id: <202310090343.3993h8xh024215@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: 0c69982252b8 - stable/13 - linuxolator: fix nosys() to not send SIGSYS List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 0c69982252b82dfcd176604507df7e735edce565 Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=0c69982252b82dfcd176604507df7e735edce565 commit 0c69982252b82dfcd176604507df7e735edce565 Author: Konstantin Belousov AuthorDate: 2023-09-25 16:39:48 +0000 Commit: Konstantin Belousov CommitDate: 2023-10-09 03:42:17 +0000 linuxolator: fix nosys() to not send SIGSYS (cherry picked from commit 7acc4240ce00af540093b47ad00be0508310b515) --- sys/amd64/linux/linux_sysvec.c | 2 +- sys/amd64/linux32/linux32_sysvec.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/amd64/linux/linux_sysvec.c b/sys/amd64/linux/linux_sysvec.c index 8a2fcf8caa7b..c8dc40ea0a29 100644 --- a/sys/amd64/linux/linux_sysvec.c +++ b/sys/amd64/linux/linux_sysvec.c @@ -164,7 +164,7 @@ linux_fetch_syscall_args(struct thread *td) if (sa->code >= p->p_sysent->sv_size) /* nosys */ - sa->callp = &p->p_sysent->sv_table[p->p_sysent->sv_size - 1]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; diff --git a/sys/amd64/linux32/linux32_sysvec.c b/sys/amd64/linux32/linux32_sysvec.c index b30077b01b77..fb817ea2b1ab 100644 --- a/sys/amd64/linux32/linux32_sysvec.c +++ b/sys/amd64/linux32/linux32_sysvec.c @@ -536,7 +536,7 @@ linux32_fetch_syscall_args(struct thread *td) if (sa->code >= p->p_sysent->sv_size) /* nosys */ - sa->callp = &p->p_sysent->sv_table[p->p_sysent->sv_size - 1]; + sa->callp = &nosys_sysent; else sa->callp = &p->p_sysent->sv_table[sa->code]; From nobody Mon Oct 9 03:43:09 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S3lHL1nXQz4wC1J; Mon, 9 Oct 2023 03:43:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S3lHL0rQlz4FHw; Mon, 9 Oct 2023 03:43:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822990; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0INFk1kaoM3kRlW+w70BaCC2/u2nz6oGX7P1Cz9Fz5s=; b=NN6L7qQ/1dEt+BdV5WZHisZ5iXBymSWqh7ceARvlvv1vPRuc0rXlSuLSGpueKqipY8asNJ z7zLebEfKXYVz0dGNu3ybXbo13pIEyFaaZ46aGnChkFByDHg1VprzDLBQ/JZkYxmkedQT2 ICwH6yxa+f0t/T5wfRkKMy53ADnIql5a0n2Q91n2S12WJ+fvD3rpKppWRlC0ekOJsmGe38 wlVI/WGpjRvtxmbPOnT/ohblSU3HhhWNXaHwBvcvIc2OrnE5cTDs+PWVYwurB+OdHnzS7K R3b7sK3ixNa5B+3XoS0BfhnP7MGupgI1ra1a7UA0kenf7taJEwJ/y68aD3npog== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696822990; a=rsa-sha256; cv=none; b=Ao8qr646PSd4n+Q0RYcJinc0xMDyFoFj9ZKXk5YHT3b2J9TolEcTjt9K2qngrF9lIqSGVF AHFW0ofWWf/Ek0zgoe3fcZVEqvbqH75Om4wb0PZUtPAETGngMjE5DkjlRRIt8ooZYCHq2Z Uwu5WjEJ191/9Ru7+R/ogXziRQkkRzit2gg/Nrt8Fjep6T8zD+QGOwRZIoqqW6S9/NMWF8 b/PTd6F8JYBRI0Kqq+EcAJ2UFuqQ9CLQgGtCfPrUfvYs+UPhlz+8ovJYELHAAa6nNndHWr 60JMftwElAs+jHQQu3WKLMy8crI3fsjAUjj1w0Fwwm8sWSfA3aklH0IvbqKCyw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696822990; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0INFk1kaoM3kRlW+w70BaCC2/u2nz6oGX7P1Cz9Fz5s=; b=YfUS4gF4/W/PqTxbfalVF0T1GbPsBpCLuacKNWL/p7nIiwTHCAH+WILB7dppDQUybN0ZxV 5dDQy6wK+4oEavMFrJSLOejYrTWufxadC8m8A+mfbFQfToReMpwefXpDhUyyZOJ6f7Hawj iFJ34tyJYQoGUmUAY0xal0pY5oLbP0Y6HCgb+PvDG//zyMVnyVrmqEz0AOdoEaGQm7TjGD 3EMlFWuvW/1CUbklING947WmfT6l/tHxg+ttxlCtsNOajfZY5c5zpK7Jvo1wg3f56dAgpk mzGXQqTlO0wcgHU8Xxyb/BgZj5WbtyI0ZgX3gQRWOSVbf8SOg69bv4UJRLPz+A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4S3lHK6mcMzg1t; Mon, 9 Oct 2023 03:43:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3993h9Ir024254; Mon, 9 Oct 2023 03:43:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3993h9ic024251; Mon, 9 Oct 2023 03:43:09 GMT (envelope-from git) Date: Mon, 9 Oct 2023 03:43:09 GMT Message-Id: <202310090343.3993h9ic024251@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: c11f71789d7d - stable/13 - SIGSYS: add tests List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: c11f71789d7d8f741243c21add8d7c5f0ecea03e Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=c11f71789d7d8f741243c21add8d7c5f0ecea03e commit c11f71789d7d8f741243c21add8d7c5f0ecea03e Author: Konstantin Belousov AuthorDate: 2023-09-25 18:40:28 +0000 Commit: Konstantin Belousov CommitDate: 2023-10-09 03:42:17 +0000 SIGSYS: add tests (cherry picked from commit 0afcac3e37e911f7e387ebeb2aae19b2b00ca4cc) --- tests/sys/kern/Makefile | 1 + tests/sys/kern/sigsys.c | 69 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 70 insertions(+) diff --git a/tests/sys/kern/Makefile b/tests/sys/kern/Makefile index 95d6ef9b7bc0..ec2bbd742956 100644 --- a/tests/sys/kern/Makefile +++ b/tests/sys/kern/Makefile @@ -40,6 +40,7 @@ TEST_METADATA.unix_seqpacket_test+= timeout="15" ATF_TESTS_C+= unix_socketpair_test ATF_TESTS_C+= waitpid_nohang ATF_TESTS_C+= pdeathsig +ATF_TESTS_C+= sigsys ATF_TESTS_SH+= coredump_phnum_test ATF_TESTS_SH+= sonewconn_overflow diff --git a/tests/sys/kern/sigsys.c b/tests/sys/kern/sigsys.c new file mode 100644 index 000000000000..75e3816fc158 --- /dev/null +++ b/tests/sys/kern/sigsys.c @@ -0,0 +1,69 @@ +/*- + * Copyright (c) 2023 The FreeBSD Foundation + * + * SPDX-License-Identifier: BSD-2-Clause + * + * This software were developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + */ + +#include + +#include +#include +#include +#include +#include + +static sig_atomic_t sigsys_cnt; + +static void +sigsys_handler(int signo, siginfo_t *si, void *ucp) +{ + sigsys_cnt++; +} + +ATF_TC(sigsys_test); + +ATF_TC_HEAD(sigsys_test, tc) +{ + atf_tc_set_md_var(tc, "descr", + "Testing delivery of SIGSYS on invalid syscalls"); +} + +ATF_TC_BODY(sigsys_test, tc) +{ + struct sigaction sa; + + memset(&sa, 0, sizeof(sa)); + sa.sa_sigaction = sigsys_handler; + sa.sa_flags = SA_SIGINFO; + ATF_REQUIRE(sigaction(SIGSYS, &sa, NULL) == 0); + + ATF_REQUIRE(syscall(273) == -1); /* reserved */ + ATF_CHECK_ERRNO(ENOSYS, true); + atomic_signal_fence(memory_order_seq_cst); + ATF_CHECK_EQ(1, sigsys_cnt); + + ATF_REQUIRE(syscall(440) == -1); /* SYS_kse_switchin */ + ATF_CHECK_ERRNO(ENOSYS, true); + atomic_signal_fence(memory_order_seq_cst); + ATF_CHECK_EQ(2, sigsys_cnt); + + /* Hope this is enough for say next two months */ + ATF_REQUIRE(syscall(3000000) == -1); + ATF_CHECK_ERRNO(ENOSYS, true); + atomic_signal_fence(memory_order_seq_cst); + ATF_CHECK_EQ(3, sigsys_cnt); + + ATF_REQUIRE(syscall(SYS_afs3_syscall) == -1); + ATF_CHECK_ERRNO(ENOSYS, true); + atomic_signal_fence(memory_order_seq_cst); + ATF_CHECK_EQ(4, sigsys_cnt); +} + +ATF_TP_ADD_TCS(tp) +{ + ATF_TP_ADD_TC(tp, sigsys_test); + return (atf_no_error()); +} From nobody Mon Oct 9 18:13:23 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S46bS0gv5z4w12x; Mon, 9 Oct 2023 18:13: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 4S46bS0D99z4M1c; Mon, 9 Oct 2023 18:13:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696875204; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8n9gHZ0M6oMzTykDoqzzJqukssaLPe3ZEsczhmrQMQE=; b=aI1a1omGrPRvtIZqTsEUWy98BC5b0LGnZAl1GvOI1Oj4DIWfug90JuIUqX4GbdJmZbdPMd QnEttBw8MmcR0OXBwakRozEBN//W4Va0ExqVwpVi+HcaZ6zi54kMc4fWO2CLWw6Hz3kyj4 arMWAvBwCvtPkH0wqswbdUQ9N5fixLxk2WIEpPOejU7vmrJo3q3ZiQBMOzLDISo1BEAyHF 0qYZS++fE7iHuMoMrvgbgtJ5D8Oc/wAHLJ6USWFGO6gOWmaFoMWDXXLjqwRSjf6T8D+ZjE dRH6nLToIu2qjqy6wgTFrYvU0hdkp23MaYSAZNRqafbjAkJoLJeBX3oxcWkaiw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696875204; a=rsa-sha256; cv=none; b=NnrylfBK8OozD8ocHF4I9195RLm09aIC7mVsL01wZxXLTXFDYpxzmgi63ArFlV7usrON64 PB33xLzT/LRg4/4nV/vgBFIMiD6WlR5b9PwdIIGX5iZL8oPuTFc1d3oq5Z4FdYkFFNqM50 uHNmJGqRGuxP4b45rH4I6bdpX2yHrCNzeQxoHEZczmNF8auA1pUZOBoZApVgqmC/BDhZ/0 JE4QSgw6zqFsVDz/mE5x06ZA7yJsxoaPcNzKBsp5uEtmtXoDHypqe/EIyBSAvc3zpHcH3I QxNIXmly6SGIv5/q0lvmPAtRR2zvVV/C6/2du6k93rabk6gWIj3VSpuhzJmyCQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696875204; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8n9gHZ0M6oMzTykDoqzzJqukssaLPe3ZEsczhmrQMQE=; b=vtEXaQHv5Sz0vt5ql+WqQnGnwKL7IePR00pznTSpxljAVlnumeD5yeMwdpYrYu44+nycQA 5ZIdCQfc08dpbgC2oQBdfM7NVGkgpsLMGhJhkeSFUzJ/K3b+NGmC+y5+7KNU+a/LDv0lYu ccIz/vJdK2ZZ9sz2U7q5yzxx9cB9J8k4jKmbOl5nbvu0p81DgihgL2xv6hxj3EsbsN8EA2 bCC0enY6eyCDrH2lwDNNOyG2JNhBE2Rjy22P6aGnUgJtA1rSZQ8sOK4KchhL/qPszX5vSk egXDwyesjeeyURlJWnlEhHj2xCisO8Mn8vpRuitKTeC8xferOoNkJRdN2Pmb4A== 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 4S46bR6PFTz15lZ; Mon, 9 Oct 2023 18:13:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399IDNT8072279; Mon, 9 Oct 2023 18:13:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399IDNvh072276; Mon, 9 Oct 2023 18:13:23 GMT (envelope-from git) Date: Mon, 9 Oct 2023 18:13:23 GMT Message-Id: <202310091813.399IDNvh072276@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 11ab396fc995 - releng/14.0 - nvme: Fix memory leak in pt ioctl commands List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 11ab396fc995b72d9d5f5d54d0bc93840a7fbf76 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=11ab396fc995b72d9d5f5d54d0bc93840a7fbf76 commit 11ab396fc995b72d9d5f5d54d0bc93840a7fbf76 Author: David Sloan AuthorDate: 2023-09-07 16:22:21 +0000 Commit: Mark Johnston CommitDate: 2023-10-09 18:05:36 +0000 nvme: Fix memory leak in pt ioctl commands When running nvme passthrough commands through the ioctl interface memory is mapped with vmapbuf() but not unmapped. This results in leaked memory whenever a process executes an nvme passthrough command with a data buffer. This can be replicated with a simple c function (error checks skipped for brevity): void leak_memory(int nvme_ns_fd, uint16_t nblocks) { struct nvme_pt_command pt = { .cmd = { .opc = NVME_OPC_READ, .cdw12 = nblocks - 1, }, .len = nblocks * 512, // Assumes devices with 512 byte lba .is_read = 1, // Reads and writes should both trigger leak } void *buf; posix_memalign(&buf, nblocks * 512); pt.buf = buf; ioctl(nvme_ns_fd, NVME_PASSTHROUGH_COMMAND, &pt); free(buf); } Signed-off-by: David Sloan Approved by: re (gjb) PR: 273626 Reviewed by: imp, markj MFC after: 1 week (cherry picked from commit 7ea866eb14f8ec869a525442c03228b6701e1dab) (cherry picked from commit 510404f2f49e0797bbef0034b3c13831bed78b35) --- sys/dev/nvme/nvme_ctrlr.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/dev/nvme/nvme_ctrlr.c b/sys/dev/nvme/nvme_ctrlr.c index 30a5ee81b2a4..ef4d7daa6efa 100644 --- a/sys/dev/nvme/nvme_ctrlr.c +++ b/sys/dev/nvme/nvme_ctrlr.c @@ -1334,8 +1334,9 @@ nvme_ctrlr_passthrough_cmd(struct nvme_controller *ctrlr, mtx_sleep(pt, mtx, PRIBIO, "nvme_pt", 0); mtx_unlock(mtx); -err: if (buf != NULL) { + vunmapbuf(buf); +err: uma_zfree(pbuf_zone, buf); PRELE(curproc); } From nobody Mon Oct 9 18:13:24 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S46bT3ZVrz4w0p7; Mon, 9 Oct 2023 18:13: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 4S46bT1P8Gz4Lmk; Mon, 9 Oct 2023 18:13:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696875205; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zsrN0IMkGYUtFlBO0z8csWqPSUluIownLybkseIfr3Q=; b=q5fU8AxzJIWfl/4aA3pijUZC+xtnAOftHGMOe1OQNcED9XMzLWRMRxrDm0+Vi1Xy+1z3Pb OJw2DZkj3bkJInGoTwPDNq9/ELT49SjD7/Ir77KSRboAtSxaDRmN/0RzkWlV2bKpw7Y8kz m/IDSFb5yzx4sO8sMLF/WZx6HWI7uPq5joI41HXpmh2L67r7HwYwPkjsauxJT1E1owUMUM 4UqIl6tIFYrmBE4DG+W97q//2W7FJo3TKxbYXyinpTwm91xRRtf34ihTtPcTlNh77rmee8 1iaeU+hApKjddEs/Qjdsmlq6Aq+SyuWI3x+jhAEyox1IzMgqXVoTgHA8/eOQXg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696875205; a=rsa-sha256; cv=none; b=eiPcg8w1k61+Enpcx3dk+lbXxtXKSUDcGT3u15kPiVMfl0cdOf3eccbgVDClAgHYlznm+0 oM0+2y9qvLy4ucTTcWK5Rmh3It7DaG8/iMPvP91cEDbKcClmZuEBdaKw2Ch6dE3EdNiVYX BdBZaBkFvbopj9WZITd8oeccTSXjDcLQpN+g0e2bK4Iw4qG1sX2kmlxZCTy2heMDNHElFr 5lcvNyyMQuvEZOqJzzo4w5jUVIWacyoh32NA5ncQHabckq3AT+wSdO/d7Wen3YRxOkxNvP zyHse9qfqotm2PQ0RBQUL/JVAYHcvP/27cMlRZuHQsxi08FOcRh49ABjQb/Opw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696875205; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zsrN0IMkGYUtFlBO0z8csWqPSUluIownLybkseIfr3Q=; b=TaRUvWwFLTXKKomMWnWjM5u0GoA1t57iC0ox5Jg14LSbdu0dPVXAzssY774j4pZx2L3sSZ huR1n+/ywsGjlcuWdiG43mxHb2Tqw+bh33JjXLg6Y8tPdG3N2opgTIEM10tnrCsBaIGdG/ N/nXyyDwogl2EWztxTb9D+7OVci+Ora0UwOIpdKI09Vo2ZHlJwfBk4yjGzxVJOYNkpO3Z0 EO2ZS1AGTt5QfhY4wRSP111G35fFsAoVIuRy8GhVPlBxby6gHBRIk87dqFXEjStBQcWZOD +ZVdQLJcZN7I3mBhczcCitQSrMKxC8wXts0D0oMTpd644Mlz7rnVTLatXxvbSw== 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 4S46bT0FlGz15S3; Mon, 9 Oct 2023 18:13:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399IDON8072324; Mon, 9 Oct 2023 18:13:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399IDO9D072321; Mon, 9 Oct 2023 18:13:24 GMT (envelope-from git) Date: Mon, 9 Oct 2023 18:13:24 GMT Message-Id: <202310091813.399IDO9D072321@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 6f35c2380737 - releng/14.0 - swap_pager: Fix a race in swap_pager_swapoff_object() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 6f35c2380737fbef590ed48ed0669eebd1656287 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=6f35c2380737fbef590ed48ed0669eebd1656287 commit 6f35c2380737fbef590ed48ed0669eebd1656287 Author: Mark Johnston AuthorDate: 2023-10-02 11:49:27 +0000 Commit: Mark Johnston CommitDate: 2023-10-09 18:07:02 +0000 swap_pager: Fix a race in swap_pager_swapoff_object() When we disable swapping to a device, we scan the full VM object list looking for objects with swap trie nodes that reference the device in question. The pages corresponding to those nodes are paged in. While paging in, we drop the VM object lock. Moreover, we do not hold a reference for the object; swap_pager_swapoff_object() merely bumps the paging-in-progress counter. vm_object_terminate() waits for this counter to drain before proceeding and freeing pages. However, swap_pager_swapoff_object() decrements the counter before re-acquiring the VM object lock, which means that vm_object_terminate() can race to acquire the lock and free the pages. Then, swap_pager_swapoff_object() ends up unbusying a freed page. Fix the problem by acquiring the lock before waking up sleepers. Approved by: re (gjb) PR: 273610 Reported by: Graham Perrin Reviewed by: kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D42029 (cherry picked from commit e61568aeeec7667789e6c9d4837e074edecc990e) (cherry picked from commit aa229a59adeaf49517183c8117a239e2b68012f5) --- sys/vm/swap_pager.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/vm/swap_pager.c b/sys/vm/swap_pager.c index e548c2d16a0b..38151b3be96f 100644 --- a/sys/vm/swap_pager.c +++ b/sys/vm/swap_pager.c @@ -1890,8 +1890,8 @@ swap_pager_swapoff_object(struct swdevt *sp, vm_object_t object) if (rv != VM_PAGER_OK) panic("%s: read from swap failed: %d", __func__, rv); - vm_object_pip_wakeupn(object, 1); VM_OBJECT_WLOCK(object); + vm_object_pip_wakeupn(object, 1); vm_page_xunbusy(m); /* From nobody Mon Oct 9 18:13:26 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S46bV2yYmz4w0jD; Mon, 9 Oct 2023 18:13: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 4S46bV2GyPz4M2V; Mon, 9 Oct 2023 18:13:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696875206; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aTx1ZpL9him8DXx7lvqjdYO8liEWSNJWYkIOqz0I8Fk=; b=jhWXfBqv8GbwCYbrWEPBXzWsyszQHRTyfLImJeNbuqUwHUcvZw+JX7SnBwHD2RziaNuxO4 25dksiyjYeFhXdW95F1lMXg2z3nuOwLFu6LRSWLRuzNUTVVSe11TfHHqiBh5yywTxFUrMQ awiZ7kYXi+1BW5OKdHkJCfv2c6ODqQ6rbIxu1fZ2sv41o7321NSAwTW14MSgvtw5xnglGs Un6ZCphGkcdfuo2SY+iyaHozC0PxTXZSkYwTYz0fcxrkkpFm/EtyL+LaL0AgMUOuuRvxmf CMd8ahP983yGHtq1mUrkVIdKtkusYzBi/DQBKXw0Xbpil047w3saZ1uo9XtvIQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696875206; a=rsa-sha256; cv=none; b=sOWZI7ykABVOP9GWOurFkEu/VBxe+NFl09paT81eW8upFcxQaVEBmRYGscBC4GY/0vBpPS v8WCFL7POBXO0olZ8YoXg0TUKG3cI0o5sdtSGWy93x5Vz9d+ORnJEJk+bR5ViAlqGOGUw/ p4+QGvNmtnBF2eajkl/YdTCzbGbkRQxWY3zkZK6mg/YrrV6Z2s3mbw/3hdbV2BeErwVmwP npcIGbN5Vopi+AEbwVVNfHIVX8B/tts2ZHFoCequnB4dPOHKQAZJ1pnenB3eUGGL9z2ZFl c3hE3g/SWFV8h0gV+VFezDoZIW2UtfbBgT0T46YVBDQnHB2DrHudjsM4X2ghCA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696875206; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aTx1ZpL9him8DXx7lvqjdYO8liEWSNJWYkIOqz0I8Fk=; b=KWOTkV2kt6Doeonn2MffXCmFuxViDNFIRRkH8aV85iNSQ+kz15Z66G1moRXkjKYQltCLaL X39ReW7ZYcjIGJwQqtStDr1uOzHhCJX4tvHmlpzdTfXlJfOLU3AUUq4/gArZ3FIvVuK42t yZSDHR7rzYOHJah7HIjzL50XXfSy7HbXQXWqxgf5v9Nbe9GvRl5kwtBe0O/dopN9+NTTJ3 Fe6Ko8YoNkpmRQ1vtivGoqU+vgaUW5TcA532ValyOHrv3OjR/0DNJjFDC/JVZfjJ0W6Coi SzPpcMCM64dQRA7QfOediC6+bWAbwOISP68AX0ZJi/4xgecIz1bNHqSwjLSNgw== 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 4S46bV1LDvz156y; Mon, 9 Oct 2023 18:13:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399IDQBk072372; Mon, 9 Oct 2023 18:13:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399IDQ3f072369; Mon, 9 Oct 2023 18:13:26 GMT (envelope-from git) Date: Mon, 9 Oct 2023 18:13:26 GMT Message-Id: <202310091813.399IDQ3f072369@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 862483bd3500 - releng/14.0 - netdump: Check the return value of ifunit_ref() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 862483bd3500aacc1546d6dfaa940a43e23e096b Auto-Submitted: auto-generated The branch releng/14.0 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=862483bd3500aacc1546d6dfaa940a43e23e096b commit 862483bd3500aacc1546d6dfaa940a43e23e096b Author: Mark Johnston AuthorDate: 2023-10-02 12:08:20 +0000 Commit: Mark Johnston CommitDate: 2023-10-09 18:07:08 +0000 netdump: Check the return value of ifunit_ref() We may fail to match if the specific interface doesn't exist or was renamed. Approved by: re (gjb) PR: 273715 Reported by: grembo MFC after: 1 week (cherry picked from commit d94d07d58141dcff48f01c6b3e5a31de9d7a7938) (cherry picked from commit d08ef6f7da3943dc49999988e6c2ac03644bdaf1) --- sys/netinet/netdump/netdump_client.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/netinet/netdump/netdump_client.c b/sys/netinet/netdump/netdump_client.c index 35167f690ed2..0f0cf4dbb79f 100644 --- a/sys/netinet/netdump/netdump_client.c +++ b/sys/netinet/netdump/netdump_client.c @@ -451,6 +451,8 @@ netdump_configure(struct diocskerneldump_arg *conf, struct thread *td) CURVNET_SET(vnet0); ifp = ifunit_ref(conf->kda_iface); CURVNET_RESTORE(); + if (ifp == NULL) + return (ENODEV); if (!DEBUGNET_SUPPORTED_NIC(ifp)) { if_rele(ifp); return (ENODEV); From nobody Mon Oct 9 23:16:05 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FJj6S9Cz4wgtd; Mon, 9 Oct 2023 23:16: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 4S4FJj5XKGz3Pkt; Mon, 9 Oct 2023 23:16:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893365; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2/7kwR6/iqTSt8T986UxiFG5nX+ZOVkelpT2+zsvOVw=; b=eKoHV7J0D6HrxuleNmmu2Pdnrt5JFYZ2f7f9t8LnwAPUM6I5VCzAzS9OmYnRARv1cpoJRa Bm/9fcZmk95+q7ODD2wIHkrpQdDA+mvOHrGZ89UF/hrKtO7qn8jwVn2L4IrTkQXIrDWlPK RjVcFI6NJghZBe4H6MbwPewJga6e2+QdVPQbr6SlEzqPHgwhVKWkCHm60NX7E0BtmpvYxo Y0zZjqjCCeUrxAzrMNL39pif/46nSryE7Wpv/wHUHC6aqsH9dQsdTCkjR5UnoKX3rkoyLd sBB1siVzgusOTU4mtd6QA72jRbVqHUvckW16NhmaXCaYp2rsdKFbi25ODeT08A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893365; a=rsa-sha256; cv=none; b=fN4Ehsr1ljRpzBKOk0UBjBSvpLXBgOxvpjE7ES6RrhQ5M44A36Fq5v8lNAwj2p8rXLC3YA zz/sdsSNrixMJMK86ZltQx94WoiGKvgnnQcjIQ0ND1yeYG1sdGxFfuTuJK65Dh+DxaUdMi 5UiA5x2YPtu1I6P0ZyNpxMfYDz0A44PB2zs6/mPzSOgymd1GgIF0WL5K4DxScsm5TGygrV zwzrvDg59np9W+sMdjXs/yz45N9h/zs8HY6nSe6DhFl5EMfxIH10fU4PA/kgla8ZpyQ1WN oThUWOF2NtBusBNcHGyCIa3r9Ru301cAq6+upXgLwgvKk6V2Mb9AQLAsTTeEiQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893365; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2/7kwR6/iqTSt8T986UxiFG5nX+ZOVkelpT2+zsvOVw=; b=gXlTYojLGZ+HO8jDwmP9rMhAgKX2+qyvPxSn/c/c4tFfeGnuIeS8ezNbEwdUdcYcWLVPR8 dusgFr1VuOS3YebPpoe+tHizfp56yQWXxg+BBFiaPoO3k5ylJ4dLiKD8/xkhZ6RrPZ7dRB DQ/0jP3uOLQo4ZV9wgxNS8vYklVjPVkcsv8lUO8lbkHUCQLGNX7A/bHepjNAgGM5r25WgM toeQFzfYvS3y+kEJVqOsqlW+quuM1WQoWCeF49SON/52TKBnBiPBTJqPpPuNzZW5aMU0Wd TyYznemIY7c92Lb0Oj1oViy+ZGDJijA61ACuOd4I2jxgRQbYdxc4f7JK9Yf1ew== 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 4S4FJj4bnkz11F; Mon, 9 Oct 2023 23:16:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NG5R6070831; Mon, 9 Oct 2023 23:16:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NG53A070828; Mon, 9 Oct 2023 23:16:05 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:05 GMT Message-Id: <202310092316.399NG53A070828@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: b7e63fa4fd08 - releng/14.0 - LinuxKPI: 802.11: make sure bssid for scans (probe_req) is set List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: b7e63fa4fd080106b10d37cf675f98a6674e0aaa Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=b7e63fa4fd080106b10d37cf675f98a6674e0aaa commit b7e63fa4fd080106b10d37cf675f98a6674e0aaa Author: Bjoern A. Zeeb AuthorDate: 2023-09-14 17:48:19 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:51 +0000 LinuxKPI: 802.11: make sure bssid for scans (probe_req) is set In b0f73768220e9 we added bssid[] to struct cfg80211_scan_request likely while working on mt76 and did not need it (yet) back then. iwlwifi started to use the field in Linux f1fec51cda70f (April 2023). Without it set firmware crashes when trying to send probe requests ((empty) SSID also given to hw_scan). For now always set the field to the wildcard BSSID. Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit e1e90be05017c335862c938fd9d577e56f02af30) (cherry picked from commit 204fb7d8530e6c097ff0142959a3f7d55cf7e375) --- sys/compat/linuxkpi/common/src/linux_80211.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 51d5bc2c4fc1..4b9cc598740b 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -2728,6 +2728,7 @@ sw_scan: memcpy(hw_req->req.mac_addr, xxx, IEEE80211_ADDR_LEN); memset(hw_req->req.mac_addr_mask, 0xxx, IEEE80211_ADDR_LEN); #endif + eth_broadcast_addr(hw_req->req.bssid); hw_req->req.n_channels = nchan; cpp = (struct linuxkpi_ieee80211_channel **)(hw_req + 1); From nobody Mon Oct 9 23:16:06 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FJk6yyMz4wgxF; Mon, 9 Oct 2023 23:16:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4FJk6SKNz3PwN; Mon, 9 Oct 2023 23:16:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893366; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wsvMvvpMmWmpiZKs9LfBbkrwYpiNT9/lN3Ww+ilRM+c=; b=xlzcB838awuW+K5F5qSVDeLvxkgjaDHc7c6gWKtpHEEv9HbLmAR5+6sHj9nPHzYwqzQuit Clbysta5MNyuNkVyIVoz9SB+xALkwe1JwnoAmeJUvlYQ5KXc9Ai8AMRVRHYpNdzMlA2JaR x0I1uS/9xn9GkXftCaOiprxxIXw0iS7/6reuP0KrGpBHUKqDqM6uHj/MNDKKuyod2Wcty6 pmvdqFxuD/+3UwYlEnufwU3rxd8Fk5VOohiXW16D7KhRWWPmHqaqDUbsd5QQJEiEJCNN29 0JSuRJ3d+IrChPWokrrgYM+0TRPGcRF+kEiZJtT48+U8lJ1EkxZjk5C2jsJtQg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893366; a=rsa-sha256; cv=none; b=GHCry4BKUqvE0/97MssmSMUloDHbSYPB61VUlPNuT8nIKgk+kc4pzNLstfbSHmTrvVkYP8 TbQMnJa/UzY/WN+4JbCXYk3FQJgYW6yNMZbjA+/ANLdymqYpJ7tH2GUirTkyx9q6gSDxvQ YCbI0y1XL3kp7C3uzSukjN/QxLUttjC/fJiaQnmg6n17rNPtJElY0Y7aZQ69tg2kbnrbXQ zu73aG0ox7vhWOU99FbC+KOUXBao4nIbCmmCOUf/ot1k4c+afENA7jzppRWjVQO4EBYXo+ z+QSEeuEcx9wVu6LhPNEtw4tdCtG14/u9yBLTJa2Fi3OCQNXMSqz3qx53Mt2yA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893366; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wsvMvvpMmWmpiZKs9LfBbkrwYpiNT9/lN3Ww+ilRM+c=; b=Iwr9YFtSA8qW6rK3AX5q3l9c2JCHqPT/m6WgeUYfb1K0qVqevnWnJ8bh2WjnGA4C6ky+E9 C1azFA5YNue+K8UuVmAaQgjdtORlYwXwi9pMLEcRrqbKFy3g9xy6WyS+eoIVGf4VwLXg0Q FTCcq8Y5amV+qEGuzdzWZA4mmbNKXE3bY5AhAjSkQQGX0ICfnNlV34CeyvRqkcwlMhDojH TNxtGDCkgzc9EPUT9pu7IYp9WOYiYBYzM3Qn6C16OTx329el0e9gAZC22PVM2l7+W5Z7LV jkeEiMgvRFk3OLhduGu/VTddUBZJH3hFF8Vzr2uKxnODeUfvdm7KB+cXmcqYBA== 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 4S4FJk5YNkz17D; Mon, 9 Oct 2023 23:16:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NG6A1070884; Mon, 9 Oct 2023 23:16:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NG6Zf070881; Mon, 9 Oct 2023 23:16:06 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:06 GMT Message-Id: <202310092316.399NG6Zf070881@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 90876d4c6939 - releng/14.0 - LinuxKPI: skbuff: remove assumption about mac_header List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 90876d4c69393fc926d50320c31d5fa5ac3904d5 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=90876d4c69393fc926d50320c31d5fa5ac3904d5 commit 90876d4c69393fc926d50320c31d5fa5ac3904d5 Author: Bjoern A. Zeeb AuthorDate: 2023-09-08 12:47:03 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:52 +0000 LinuxKPI: skbuff: remove assumption about mac_header It seems the mac_header can be set to offset 0 for frames received. Remove the warning splattering messages to the console for each packet. Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit f0e59b6903c881859d7f4eaf269b2336b774c7bc) (cherry picked from commit 46e5d2b0c6e01fd0789a6ef543c8b9f52852301b) --- sys/compat/linuxkpi/common/include/linux/skbuff.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/skbuff.h b/sys/compat/linuxkpi/common/include/linux/skbuff.h index c917b3f09ac9..f8ce212e7853 100644 --- a/sys/compat/linuxkpi/common/include/linux/skbuff.h +++ b/sys/compat/linuxkpi/common/include/linux/skbuff.h @@ -935,10 +935,9 @@ static inline uint8_t * skb_mac_header(const struct sk_buff *skb) { SKB_TRACE(skb); - /* Make sure the mac_header was set as otherwise we return garbage. */ - WARN_ON(skb->mac_header == 0); return (skb->head + skb->mac_header); } + static inline void skb_reset_mac_header(struct sk_buff *skb) { From nobody Mon Oct 9 23:16:07 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FJm0vfKz4wgk4; Mon, 9 Oct 2023 23:16: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 4S4FJm0SVPz3PpV; Mon, 9 Oct 2023 23:16:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893368; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TtMSYrsYyz57olkvdqRZSE0w6LAndcs/5EZb/PDEhJw=; b=RCfWu5zbL7Cr/p+x8GUTiSbWou+9CDQdhdIRwoHEuNNyCFE0LD1pp2rKn6djUGjokVxKjL JThpgFeFgzxrQvMrug6fcAJczqweKBW4OZCBoPltxQlPRwsIXWzXs2CvpN9zfIVvjBn0q4 1bzu2b7eBGVjlPx1/WFo1BrD/y8+QRnY2W9T5wrn/q7K+qOh72Sb8B+e7XZonW4zeBxM9z VKuZIAoCtBSXAi7BGo9mi9eunMsMTJRx34hnB64rFcXxiwdG061H5zeK4QZY4YNeNYlmL8 vj67/FIVXT9XQyEx+uFyrdYTjDIKWPjYIx65qdIrBEcN6Bdq10MwANfHZbZN2w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893368; a=rsa-sha256; cv=none; b=QXk9UDkS0DvR6UF2G64BargT5OAl5TyPpL+2juBKzjMcAq5+MTFggeEUqrkdLTUbNVivn4 DaJeEnd7JfYSgSowWg1AjsS04SiHHSP7Rqq0/aL4vdKLs8q6sP61otB3uXFF+tiQQ3wzGQ xtp+apjXjhGnLgwxJLm29j29sbKzVEljgIimmtZB18RE9qZj1TDecbgMY/j28gCO0ssHer swyJcZHyjsU//B1Dl885Uz+S3RBuTy44EFG6+9ZspUvTNfhlAx4Qspg3adk75lSG/PZW9n xfppLvy/RgJqsO2eLUhWdVOSj35TDVDcOF51/07oklh/pV/dGfk0UzXOERWjsQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893368; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TtMSYrsYyz57olkvdqRZSE0w6LAndcs/5EZb/PDEhJw=; b=EWEscp/uIe+qwXtdiVqrsMwQ2IqMiYngWo5ekBtu7lErmB849nNiJFvTu8Q6JZ0BDQK27e +w2wNPZKKvzG8OwjxbqV876SgkvqGsaOrfK8FQVm39NGC+7jAEciMJp1VJl2375i+XhKWO XheeztkSAF1AcRxzh5AuTTrcGa01LhD5TgJFrxSb5IE8Gc6U0427YS32gzMeawPpbOdb1U ZniDMRyh3ZE36SuhlCOJuyby20EpeYoVBUHBaFa/ijpVzydvYc17JJ2rQsX34zr0K4fmGF B1BpZHLeeaEVBGXBwNpA8u2DU5/gweLU54ZyXOJ8e9CZRR1qRKGZZxxeMj9Tyw== 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 4S4FJl6fqSz17F; Mon, 9 Oct 2023 23:16:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NG7bZ070926; Mon, 9 Oct 2023 23:16:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NG706070923; Mon, 9 Oct 2023 23:16:07 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:07 GMT Message-Id: <202310092316.399NG706070923@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 914a319cd6ec - releng/14.0 - LinuxKPI: 802.11: improve lkpi_ic_vap_delete() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 914a319cd6ec26415459259d3f7c5c49d11f0654 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=914a319cd6ec26415459259d3f7c5c49d11f0654 commit 914a319cd6ec26415459259d3f7c5c49d11f0654 Author: Bjoern A. Zeeb AuthorDate: 2023-09-30 15:20:53 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:52 +0000 LinuxKPI: 802.11: improve lkpi_ic_vap_delete() Changing the order of cleanup in lkpi_ic_vap_delete() will avoid firmware crashes or a direct panic as observed as ieee80211_vap_detach() will do most cleanup for us and get us into the correct state. Calling mo_stop() in lkpi_ic_vap_delete() seems to stop the problem that further VAPs could not be created (error 17) after the first one being destroyed. Sponsored by: The FreeBSD Foundation PR: 269842 Approved by: re (gjb) (cherry picked from commit dbf7691999abe501e0ebc0fe4d8d9e97718d3890) (cherry picked from commit 6c38c6b1b917957d420902213f318bf0153214f2) (cherry picked from commit 53ef38313a6dd70e5d929a3d014cc62db807793f) --- sys/compat/linuxkpi/common/src/linux_80211.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 4b9cc598740b..f5951c95a8df 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -2424,10 +2424,17 @@ lkpi_ic_vap_delete(struct ieee80211vap *vap) LKPI_80211_LHW_LVIF_LOCK(lhw); TAILQ_REMOVE(&lhw->lvif_head, lvif, lvif_entry); LKPI_80211_LHW_LVIF_UNLOCK(lhw); - lkpi_80211_mo_remove_interface(hw, vif); ieee80211_ratectl_deinit(vap); ieee80211_vap_detach(vap); + + IMPROVE("clear up other bits in this state"); + + lkpi_80211_mo_remove_interface(hw, vif); + + /* Single VAP, so we can do this here. */ + lkpi_80211_mo_stop(hw); + mtx_destroy(&lvif->mtx); free(lvif, M_80211_VAP); } From nobody Mon Oct 9 23:16:08 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FJn42y6z4wgth; Mon, 9 Oct 2023 23:16: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 4S4FJn1CKTz3Q0h; Mon, 9 Oct 2023 23:16:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893369; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=030GPIdNER5QcSiPtEIHf1P7ZT/KLotXiZiIiYvNF6o=; b=eAzU2ihM/iEFHSWZd+aAGdn5Oe0SrtIN0OgJ/dvHR4lHeKZ3pNXgK0WOyFSANvQjJBc6pY vzdCby+qb42I9gbz99fhOnZ4J4pE53waTfpNd+qWmpQQ059/clpng8v/Ov35Zt7T6kMvrC uJTXhLNPZUcAZoRJCfdR5f4t5inEzjYxnvUMG+pCwaifJLoVVA4L9RArwt6nWic7aT7tsr wWMBYu2kR9KxSHuWSSZsj7skpapyooSSMJ9Dh70PMzVjSO4ykYmCghgqmqd8jxEqQGGsBt OcQ/1EQSG2XcuYDDYLaN+ZaH2qxM45ymutSNz46ge/Jokx50vUwJmrzC6HWdcA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893369; a=rsa-sha256; cv=none; b=lj3qhsGnsNQh4TcXTuAbKCEi4rJw/RDIfLHEwRkN33E+InnmH1i1Xux6yPe0r7rQyVo/3y t+52NyW0I5ZM3TQ0qgt4bd0JvXXwzwN1NQWAr/Yek6g7tRHf/DCiyPJtBLBaU7yHrn7t8i D5QxACCYo7o/hdn37oETvG3I2sJYb5FcY5ASBAL4a7DFqorgYbyrpBst3WJ6mFZRETGb69 af6EsjQneLWfz/uSW2rGC3/XTT8y32ziaU5oZoKPqSmDHyq5om3xlDBNu2071IADyYxc67 xtDorGyyYfxCf5QfTb0G0QPrns0E4lcy+paVmr4ijz17qc4FrW9+K8RgO+V1hQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893369; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=030GPIdNER5QcSiPtEIHf1P7ZT/KLotXiZiIiYvNF6o=; b=YzCERKjWgrxVkNdTuRYqB7K0kE8po33qiL3YpFkAPJ4xAtMU1dYnK8Olz8yjmQFgeStES1 r+T5eYT8VrMKaQIvY0mvwYUJk++AZLw33MbB2f1ho/3s8R7qpnhLjbfOA2nZTWBtn+KXoX jhhuIBrAmnKrbMDojYh/bNE4Vk5UH/yBvNTFaxAFRkXHUPm68Bg7fONiSSVfmuber7wLAd T4ACtO77Neyq879sTfKRMfEA0geSzvH5iSgL+aiznf38FIionjYKi2vxKHflu901vKSHSQ oEdmh5dztyqLRr26LpGo3VN0k9gmi7SefJ/TgzBLTiycWzHQxTkYQAQ8uiwgsQ== 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 4S4FJn0HQ9z19P; Mon, 9 Oct 2023 23:16:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NG8v2070977; Mon, 9 Oct 2023 23:16:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NG8AE070974; Mon, 9 Oct 2023 23:16:08 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:08 GMT Message-Id: <202310092316.399NG8AE070974@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 61c5d5679ba8 - releng/14.0 - net80211: introduce two extra ieee80211_notify_scan_done() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 61c5d5679ba8e9075f3486a08eb0bdfd507d1108 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=61c5d5679ba8e9075f3486a08eb0bdfd507d1108 commit 61c5d5679ba8e9075f3486a08eb0bdfd507d1108 Author: Bjoern A. Zeeb AuthorDate: 2023-09-21 11:51:23 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:52 +0000 net80211: introduce two extra ieee80211_notify_scan_done() We have multiple problems with scanning currently, one being that an initial scan restarts itself and we are unable to start another scan. wpa_supplicant in that case never shows scan results. Starting wpa_cli you may see: <3>CTRL-EVENT-SCAN-FAILED ret=-1 retry=1 messages. Add two extra calls to ieee80211_notify_scan_done() at the end of scans (before possible restarts). That will get wpa_supplicant to get scan results and possibly start associating to a BSSID and get us out of scan. This is kind-of a bandaid but on short notice may help to improve the situation for some. Based on analysis by: enweiwu Submitted by: enweiwu (initial version) Sponsored by: The FreeBSD Foundation Approved by: re (gjb) Tested by: cy, (others I cannot find email/PR for anymore) Reviewed by: cy Differential Revision: https://reviews.freebsd.org/D38661 (cherry picked from commit 3f382eb23b9fee75d05276a44feb5351d956238e) (cherry picked from commit 6104a9f9c5206c9ba23eec29217dff642f26722c) --- sys/net80211/ieee80211_scan_sw.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sys/net80211/ieee80211_scan_sw.c b/sys/net80211/ieee80211_scan_sw.c index ac97b7c14cbc..744c8f6bf28e 100644 --- a/sys/net80211/ieee80211_scan_sw.c +++ b/sys/net80211/ieee80211_scan_sw.c @@ -388,9 +388,10 @@ ieee80211_swscan_bg_scan(const struct ieee80211_scanner *scan, * scan_start method to populate it. */ ss->ss_next = 0; - if (ss->ss_last != 0) + if (ss->ss_last != 0) { + ieee80211_notify_scan_done(vap); ss->ss_ops->scan_restart(ss, vap); - else { + } else { ss->ss_ops->scan_start(ss, vap); #ifdef IEEE80211_DEBUG if (ieee80211_msg_scan(vap)) @@ -857,6 +858,7 @@ scan_end(struct ieee80211_scan_state *ss, int scandone) else vap->iv_stats.is_scan_passive++; + ieee80211_notify_scan_done(vap); ss->ss_ops->scan_restart(ss, vap); /* XXX? */ ieee80211_runtask(ic, &ss_priv->ss_scan_start); IEEE80211_UNLOCK(ic); From nobody Mon Oct 9 23:16:10 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FJp3pvDz4wgkB; Mon, 9 Oct 2023 23:16:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4FJp2w3rz3QB4; Mon, 9 Oct 2023 23:16:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893370; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4eK+5lIpCpmr9onBOZRWyYelHP/YdA45TvRqPG9SJjo=; b=EoNYNjqRfPgQjAk++tCl7bKmqOiyAcPOOuFcqhax9lwizncm+n6YOhe68HviVDF+IVVy6q GwL8kLHpdeX13vhZUxqNQPz9EhVlC4LdckhjyvXBody7Uyf5cknd4Zm2vKiTTJh32Hd1ZH xF4d9ZRqA16qGsrE86yHYJDPd1/LBz5drPX2pI5qNfENPDs4ZBf0VGMFk84xBj3ZcKmwOQ CDl4SqdqqeUHW3evSSloHZfT+ooGO+nTh1jEBzWEfnRaDJzj32sEuEwAQ6o+zgvgsrsNRW uOB3uogu7nwWTDxc9p+wuJG3PquCbebtfLi3f6nH/Qzxtoc7XTBPaTBiZX8UJA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893370; a=rsa-sha256; cv=none; b=KOHo/dPkLvw5/HOqRsrUxXyAdzoCupHAbfZg6uhh1G+IAvxAgSYeOygjRG69n153zy3ZeM VRSpZuDZ/8mpSojywL/T++gQSDeM/gpIwt0FqdHOoFwn2GNfZ9fMmPr+QncUkEtdaklUST n8keNJWPSFxPxQHcZVpr3sX1vRzzlanvkPsVeeiJXS8eS0/jBk9EPPz8siPDl1x2K1DSTs 0oq/8yjkmdiT5BUDpwmHe/ynZuM2jo3RNmV7nXNbKMu+PxcbXF9ixnEqVm1pI/dM+cQM1R HnupYUyXqTluBMoPbxBKnggUuCSEeBZTlxeVK9b9xXvM5/m9RL7rMPef90fwTA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893370; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4eK+5lIpCpmr9onBOZRWyYelHP/YdA45TvRqPG9SJjo=; b=oD55RMLE0GFfbuM7VUSJnZbH7/Kv3kjRkSo9ZYgvu5wfRc04aD3x/mLo9ODs3CSSF0dpzJ FamfVYGmk5bUEWwmbUTK3PwVFRFOpzhKQPnKfKOfeRfkFND107x29/BJu320DM8hyCPkyc VvQ5mCXIDxGxHXHxTemlXD6TD6UKgCbJTa3yqfEmZvd38/WQrsQ4K9/cYW/befiv+qX8z7 nC1m4tPrJYP36BHBGalslQiqkf/d6iHheCLXuHArM5ThloUO1ocOuk5t3gqbeAYot8KwkV NRJcH3PzBq7T2QB9dEtw/ElnNN3amnhkrrjsa3tq1PpnfghJNc3WfNkxSoaVmQ== 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 4S4FJp1XP7z17G; Mon, 9 Oct 2023 23:16:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGAHi071032; Mon, 9 Oct 2023 23:16:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGAC3071029; Mon, 9 Oct 2023 23:16:10 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:10 GMT Message-Id: <202310092316.399NGAC3071029@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 2f528e6583b4 - releng/14.0 - LinuxKPI: 802.11: fix counting the number of supbands List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 2f528e6583b4c64b0d00df3744af298d6351c937 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=2f528e6583b4c64b0d00df3744af298d6351c937 commit 2f528e6583b4c64b0d00df3744af298d6351c937 Author: Bjoern A. Zeeb AuthorDate: 2023-09-14 17:57:53 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:52 +0000 LinuxKPI: 802.11: fix counting the number of supbands While the main purpose was to assign an(y) early chandef with the loop, later additions made use of it to also count supbands as well as to initialise max_rates. Due to the main goal we can exit the loop early and not properly count and initialise supbands and max_rates. Move the terminating condition into the loop and make it a continue rather than ending the loop. Fixes: d9945d7821b9b ("improve hw_scan") Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit f454a4a10dc027474a85269cb4a3f50bbbf90528) (cherry picked from commit 96655d8a7db48f0944aebf07ffdcaa8a23aaa35a) --- sys/compat/linuxkpi/common/src/linux_80211.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index f5951c95a8df..5e7a3ff91b9f 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -3767,8 +3767,7 @@ linuxkpi_ieee80211_ifattach(struct ieee80211_hw *hw) * in any band so we can scale [(ext) sup rates] IE(s) accordingly. */ lhw->supbands = lhw->max_rates = 0; - for (band = 0; band < NUM_NL80211_BANDS && - hw->conf.chandef.chan == NULL; band++) { + for (band = 0; band < NUM_NL80211_BANDS; band++) { struct ieee80211_supported_band *supband; struct linuxkpi_ieee80211_channel *channels; @@ -3779,6 +3778,10 @@ linuxkpi_ieee80211_ifattach(struct ieee80211_hw *hw) lhw->supbands++; lhw->max_rates = max(lhw->max_rates, supband->n_bitrates); + /* If we have a channel, we need to keep counting supbands. */ + if (hw->conf.chandef.chan != NULL) + continue; + channels = supband->channels; for (i = 0; i < supband->n_channels; i++) { From nobody Mon Oct 9 23:16:11 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FJq3wvFz4wgxX; Mon, 9 Oct 2023 23:16:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4FJq3R4Fz3QH7; Mon, 9 Oct 2023 23:16:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893371; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E7GigrtdxzyEEfcDaHGUI1Vk6rHE5i8G/wHCGKdih/Q=; b=lAnb0DY7tcYfMNZF615/nDEvhrVJBaZY85ctfCjPSvSDfAqHD7LlpaMf3TkxOLQx3VtACh SFy3ResNzwKhEV/amYUdE+QAnPoaFYEoH6zWyBtuDyWrvn3VdXP6uluL5xQvUDSH4FImnB nP++4H1ZOKVArmVwpxYQfU5p9YDhap3UjlyDvHAdpH0rKB4xAznCOJDz1LDP8zWinyVt0V AXjW30e9r84yMuLBRyk0iI+cFZXZuJ5PgcpghA5U3Gab5BspYHgxUd7HRHiTaqFM0VtJU7 P7i1m0lLWUY/RI/1b2cBRL9ipjcaEir/4GJAPSA8kca3mfqXK+NJinSmXp76ww== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893371; a=rsa-sha256; cv=none; b=MAcVt6L7Cp32y3c4vMmfzmi5CjZy2r62FLSbkUoZUTBoHWF1WQ2MMuk+cgOhpSbwAAnYyg 2Yiuf6yg4A65OZNJby+40FG6JG7FsAagxW3YDSvpTwxPDhCYU+9rTnKdV6WUbYFMSFF2kx vUseVT5Sao4dL7k+0Fl+ns4+L1oAMF8fNnDeZQ2Ij6CNB9Jx3N6k1d7Y4X5zWOz8jSRFKy Th75QyCZGjB1qSAsQVr2IGAW/utq0TIdezII1fXyWxLqQueD+PmXuGSrEZ+ApkmWIPneQk +FbbXm5RbI5NwY6hKUQ+UVpvV+24GhQ+2acXAHI42w0NnrtCPHj57iTUX6W2EQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893371; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E7GigrtdxzyEEfcDaHGUI1Vk6rHE5i8G/wHCGKdih/Q=; b=L8TLGTOio9dVwkQuUe+BEaSn5mvERYllo8GY7XROgl/7dsT2ioPM9h8k53t1cvSk1qqR15 ytGSUhujUoa2mEAb56i1t6U0j3jhChdGK1M+vnzM1CjaNYAk0J8PtmbYk229R0YyJzNDRB D7QGPQJQYgVCu1QkvdWlNkNdWvFHVDbRNU/1YlVtTF5AEbtF5XMOhKsEZta1c1m/uH5ivU 3XE409IzNe4cRDvlGkw3cN9Q+JCcNEyPH+rkIYs3kHg6wVKUSE3KRiFrOKWBzG7T2WXJKm l9rAExe4x1aCB6KSt6L3GdYnZVq/GNjDcK2NMxJYRKbLo85pvsI4ThVRgCETxg== 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 4S4FJq2Y7Lzh4; Mon, 9 Oct 2023 23:16:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGBjT071086; Mon, 9 Oct 2023 23:16:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGB5J071083; Mon, 9 Oct 2023 23:16:11 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:11 GMT Message-Id: <202310092316.399NGB5J071083@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 35a61e071b84 - releng/14.0 - iwlwifi: fix a bug in iwl_ssid_exist() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 35a61e071b84eb6a3969ffd796c73399e0555e13 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=35a61e071b84eb6a3969ffd796c73399e0555e13 commit 35a61e071b84eb6a3969ffd796c73399e0555e13 Author: Bjoern A. Zeeb AuthorDate: 2023-09-14 17:22:04 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:52 +0000 iwlwifi: fix a bug in iwl_ssid_exist() Rather than always comparing a given SSID to the first SSID of the IE list, compare it to the the iterator one. That way duplicates can be found. Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit ee7077f24f5b02bde8cf5c202848128f18733398) (cherry picked from commit a513f65b92b672830c89acfa04b93c3b77d3f97d) --- sys/contrib/dev/iwlwifi/mvm/scan.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/contrib/dev/iwlwifi/mvm/scan.c b/sys/contrib/dev/iwlwifi/mvm/scan.c index a4077053e374..8c5d6860914b 100644 --- a/sys/contrib/dev/iwlwifi/mvm/scan.c +++ b/sys/contrib/dev/iwlwifi/mvm/scan.c @@ -447,7 +447,11 @@ static int iwl_ssid_exist(u8 *ssid, u8 ssid_len, struct iwl_ssid_ie *ssid_list) if (!ssid_list[i].len) break; if (ssid_list[i].len == ssid_len && +#if defined(__linux__) !memcmp(ssid_list->ssid, ssid, ssid_len)) +#elif defined(__FreeBSD__) + !memcmp(ssid_list[i].ssid, ssid, ssid_len)) +#endif return i; } return -1; From nobody Mon Oct 9 23:16:12 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FJr4q14z4wgrW; Mon, 9 Oct 2023 23:16: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 4S4FJr4JvLz3Q47; Mon, 9 Oct 2023 23:16:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893372; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+ZI/MSzXFFaGUic9UOtNy0S6Vi2Cgo+PIsgv7qjWUIg=; b=nrodRxC2ySctazJ6OIERwfOOfIXjbS0bqpNeCx90D9FLb+s5y9H+bYOVazju5f7parwogF ZEFqu19stP4RRtKg+bKsYKkYhKRT/1stPJSMb0kZuvk3ByAFKo0usgUMlG0Rh9JjgfAm94 6V70yLcbfwYtfRZJBB8Dfm76hzVUtXRAUbGiC7f6QLUhT7YsQoOo7NcMcL/6DHo8d+ee5A KkSPeBZ1GxdkvS9LS/F1s8vxneGBz/mx0BEAQZrL6SOU/mFDAgyjCV0J9aZ9xNrmU/ne75 iiFq9kIal+w0NpVA4blUpNfgl9QeE3oxIDctpkprNQqLuS6t1vApvCjL3Zsu0w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893372; a=rsa-sha256; cv=none; b=H0A/9/Hb3PfXPNPynR2dqi0Je+SrzwrwkVqplqtuc4a63GE+vvKerS3J+PkmYwEIE8k1BQ jhMmRWkWnOeBJHBpt2DgXlCdQFiuKnkx3uFOHB+aVOUUrsLc7Oi/T281ttF9q6M0PRB37L cfpmsV147w5dGKuFE9vc26AdsM4WQUEv4LS6SDuXPbl2hIfIBhvV443Y1OdGbjGE11MCGP 0HkpsP2nIj4Nrb0/d8mjgmeHrQq361i9UJi2IGD75Vumo1tgLI6i/4Ina7llEDvoAXoqG8 rBF9Qm7na+xDHWvdbg/aXoEksPcCxXDB8BsedWwuDPa8aaxGmrOTeaDFBHxX0w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893372; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+ZI/MSzXFFaGUic9UOtNy0S6Vi2Cgo+PIsgv7qjWUIg=; b=Gjn5i4doRVdwHAVSvaQdbzAq637BRhF5DP1stFe5TXbmr910mneZ303TH3tHeIool4O730 PRoBEUEDABT+1mdHLgo4xyDkDM+Fsm4l0/fZYL0/9vbKz9pi9uqcxAvjr8Xn7YWKhjv/85 WaYBoJC1rA24ixzim360fJPIFZ54n9ZfiYJ/RpSQALFcWoGTP1Z5Xb8QUJho7Biaf0x+WB UqZ7QUZ1RXJALMDY/oFABha6EAzFFr8TYz/d9IJdYz1MgwV3yPB1sKmZ62TqfUb2+7ZUG4 w3+9FTtRFS17pIoGv6zYLwVacISDMb9yQXT7TqxOAVQQNhQrkWeGWHOODd9/Pg== 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 4S4FJr3M7Czh5; Mon, 9 Oct 2023 23:16:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGCJ4071146; Mon, 9 Oct 2023 23:16:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGCZd071143; Mon, 9 Oct 2023 23:16:12 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:12 GMT Message-Id: <202310092316.399NGCZd071143@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: f4f49fcba3c4 - releng/14.0 - LinuxKPI: 802.11: avoid symbol clash on UP to AC mapping List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: f4f49fcba3c4258f30f1dc806e8610cbd43197cb Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=f4f49fcba3c4258f30f1dc806e8610cbd43197cb commit f4f49fcba3c4258f30f1dc806e8610cbd43197cb Author: Bjoern A. Zeeb AuthorDate: 2023-09-24 11:55:11 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:52 +0000 LinuxKPI: 802.11: avoid symbol clash on UP to AC mapping tid_to_mac80211_ac is an exported symbol in and likely based on iwlwifi, which leads to a symbol clash in NetBSD. Rename our local LinuxKPI copy to a better name and add a comment where to find a copy of the mapping table. Sponsored by: The FreeBSD Foundation Reported by: Phil Nelson (phil netbsd org) Approved by: re (gjb) (cherry picked from commit fb3c249ed93c834d70f8361215bc40a9e9004d3b) (cherry picked from commit 70e2b1f49c18c8ff5ca81a49abb0bdaa62708766) --- sys/compat/linuxkpi/common/src/linux_80211.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 5e7a3ff91b9f..c8232e6f33cc 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -116,7 +116,8 @@ const uint8_t rfc1042_header[6] = { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00 }; /* IEEE 802.11-05/0257r1 */ const uint8_t bridge_tunnel_header[6] = { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0xf8 }; -const uint8_t tid_to_mac80211_ac[] = { +/* IEEE 802.11e Table 20i-UP-to-AC mappings. */ +static const uint8_t ieee80211e_up_to_ac[] = { IEEE80211_AC_BE, IEEE80211_AC_BK, IEEE80211_AC_BK, @@ -242,7 +243,7 @@ lkpi_lsta_alloc(struct ieee80211vap *vap, const uint8_t mac[IEEE80211_ADDR_LEN], IMPROVE("AP/if we support non-STA here too"); ltxq->txq.ac = IEEE80211_AC_VO; } else { - ltxq->txq.ac = tid_to_mac80211_ac[tid & 7]; + ltxq->txq.ac = ieee80211e_up_to_ac[tid & 7]; } ltxq->seen_dequeue = false; ltxq->stopped = false; @@ -3243,7 +3244,7 @@ lkpi_80211_txq_tx_one(struct lkpi_sta *lsta, struct mbuf *m) ac = IEEE80211_AC_BE; } else { skb->priority = tid & IEEE80211_QOS_CTL_TID_MASK; - ac = tid_to_mac80211_ac[tid & 7]; + ac = ieee80211e_up_to_ac[tid & 7]; } skb_set_queue_mapping(skb, ac); From nobody Mon Oct 9 23:16:13 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FJs6PWGz4wh4h; Mon, 9 Oct 2023 23:16:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4FJs5qgpz3QCd; Mon, 9 Oct 2023 23:16:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893373; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FvpyRGlFLArjQaeldvrg0t0+dNcnA0DuKIlGFW0K4is=; b=BuTmH3d+fmgWEbdWYGkC3Gteu8Nx1XUy/I6oi8d4co750BhFOutaCn/0f5cj/HVUvwBi84 ryONbhQ3d0xkAVJR4drO37C+6wyjRshVgbxy8USs4YD1K2Whuav1ehqMIarqDi7p1/7n3v lW49pkVIt/UF07WSzKeBvQcJEtksOlZ6Iu11T+v1pALW5xMyejsaMHCIHYVI4qdf7oONJg O8sSXaVhwedbJZdm/OuaeXn6blfqTQ7q5TJh3qM3E1lUiED0B+uL7kJAm6xYuq3sjyD+BM BWfZ9M5VCLMQ39ojFhlg7su3G3dhVV/ERGudjxcIaOSgSobPamYh/DWnW1yYNA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893373; a=rsa-sha256; cv=none; b=J0wcpApzFEHdvLiaosVjyaKjcfkxZP3r3rj8VLbBG+kgPumP7RpXtRzOkPVMuqO7a9jxHV 5W1wbN61IGIxeRxUc0QmD0/JoIIU4ylwilKuXJezfEAHq16Z0ocMKTaDz1JOz9p0u0/p5v JEhvKGzCQ1Mjh2fMahA6RZyk7fZ71zF0eSR2Y7bvSuCkEmVDnqBJpTMeVhlmhxSp+/PK8a GdF9UwP/IAxQn8oooOdWeFBlnCsfsV0tOeB459GHDOIpbGYgLbg0X1H403lD+dss/Dyvq3 b3BFwit4QRf/362CppXG/kTLO4nrko2rQHo9OcYsSIBsUeSwPUsUbmGWf8lNLw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893373; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FvpyRGlFLArjQaeldvrg0t0+dNcnA0DuKIlGFW0K4is=; b=p4BZljLh+szrvvbN4RY9gtOmcpWy4gsEKi5DOMEOzkoTWZsUxW9NHBdj/F+rVGVd1t6t63 wGg6mRdEJGeIntGaecpDGXOyZG/l1xPvjehOgUGOzuvYv7Ukn/S4OkLFQba5nZ+L4PEqNV 0iKok29ZmfysisxXXQa/gPM+ejxU5VjMj9Ei8ZAMXWQVem6rSinX+NvxcUuoNOsW0b8NXG CKY8LQjnz6FZuj0pW/ljdjfnUibgaU5hVj/u0NpdvZwE7jYrUD9plvzGF3aEMp3MCK1eMl XNk5vw/AvF0RqVbND4L8TVdUn9iNWwKbqhrT8CAUAm5KQ3uN0y8cRY1VV82Q4A== 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 4S4FJs4RSQzh6; Mon, 9 Oct 2023 23:16:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGDUh071197; Mon, 9 Oct 2023 23:16:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGDPX071195; Mon, 9 Oct 2023 23:16:13 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:13 GMT Message-Id: <202310092316.399NGDPX071195@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: a99e7db072de - releng/14.0 - LinuxKPI: 802.11: fill regulatory_hint() with some life List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: a99e7db072de1d50ba13ef917bf8f501eaf63834 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=a99e7db072de1d50ba13ef917bf8f501eaf63834 commit a99e7db072de1d50ba13ef917bf8f501eaf63834 Author: Bjoern A. Zeeb AuthorDate: 2023-09-25 17:54:20 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:53 +0000 LinuxKPI: 802.11: fill regulatory_hint() with some life Start implementing regulatory_hint() using a .c file based allocation helper function so we could change structures in the future with better chances to keep compatibility. This sets wiphy->regd needed by various LinuxKPI based WiFi drivers. Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit 673d62fc359b0cb7a70af42c36d2fa54fb29452a) (cherry picked from commit a3e10c2b141879a68cff691f0176a2f6ac8ea04e) --- sys/compat/linuxkpi/common/include/net/cfg80211.h | 20 ++++++++++++++++++-- sys/compat/linuxkpi/common/src/linux_80211.c | 10 ++++++++++ 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/net/cfg80211.h b/sys/compat/linuxkpi/common/include/net/cfg80211.h index 56ca9a231d2d..7e57ce67cc26 100644 --- a/sys/compat/linuxkpi/common/include/net/cfg80211.h +++ b/sys/compat/linuxkpi/common/include/net/cfg80211.h @@ -1260,6 +1260,8 @@ struct cfg80211_bss *linuxkpi_cfg80211_get_bss(struct wiphy *, const uint8_t *, size_t, enum ieee80211_bss_type, enum ieee80211_privacy); void linuxkpi_cfg80211_put_bss(struct wiphy *, struct cfg80211_bss *); void linuxkpi_cfg80211_bss_flush(struct wiphy *); +struct linuxkpi_ieee80211_regdomain * + lkpi_get_linuxkpi_ieee80211_regdomain(size_t); /* -------------------------------------------------------------------------- */ @@ -1587,8 +1589,22 @@ regulatory_set_wiphy_regd(struct wiphy *wiphy, static __inline int regulatory_hint(struct wiphy *wiphy, const uint8_t *alpha2) { - TODO(); - return (-ENXIO); + struct linuxkpi_ieee80211_regdomain *regd; + + if (wiphy->regd != NULL) + return (-EBUSY); + + regd = lkpi_get_linuxkpi_ieee80211_regdomain(0); + if (regd == NULL) + return (-ENOMEM); + + regd->alpha2[0] = alpha2[0]; + regd->alpha2[1] = alpha2[1]; + wiphy->regd = regd; + + IMPROVE("are there flags who is managing? update net8011?"); + + return (0); } static __inline const char * diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index c8232e6f33cc..978a82ad2ceb 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -3954,6 +3954,16 @@ linuxkpi_ieee80211_iterate_stations_atomic(struct ieee80211_hw *hw, LKPI_80211_LHW_LVIF_UNLOCK(lhw); } +struct linuxkpi_ieee80211_regdomain * +lkpi_get_linuxkpi_ieee80211_regdomain(size_t n) +{ + struct linuxkpi_ieee80211_regdomain *regd; + + regd = kzalloc(sizeof(*regd) + n * sizeof(struct ieee80211_reg_rule), + GFP_KERNEL); + return (regd); +} + int linuxkpi_regulatory_set_wiphy_regd_sync(struct wiphy *wiphy, struct linuxkpi_ieee80211_regdomain *regd) From nobody Mon Oct 9 23:16:14 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FJv1Gr7z4wgkP; Mon, 9 Oct 2023 23:16: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 4S4FJt6Y6Rz3QMG; Mon, 9 Oct 2023 23:16:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893374; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O6bm4DYFjD0UHsqrgQUzoCwPJWpGrfRs5Xm6UN7Tmcw=; b=hNyqeQ7/4dXZ4cN6SxdUk1h5xQOFzRSFyFfbEwRvd0e8vpG3As/nj5V717sw/EMFIl2cLd TU7s7lkLhbnl5SBqPgLySB9sA816pXRIJz0LECvK/Ntx8+OYZ5b4a9ceh71jyHPhJ/Oq6K MeCmhaaMyBoX/6buoNTtAWNfSCKShJKpP3gmVDRxtidvKUNoFfG2ss25Ssc0D8JznLxesK /Pe3fJTXtRCFFZaLx9Cr3T6GpO39mOqyGHUA6WZCuw6t5IqlYV0NOo4oFFJSbn8+58i1z3 TdyjrspKfW01VVefJrefbHvvf9qSefi1lkz/s5KlI6/DQS9GDq4YSMZnvHCy+w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893374; a=rsa-sha256; cv=none; b=B9GU3ZOHrK2mz/0VTPTn9LpdW5ryDTRTfyR657y/qup0iZvX1y2luXkhfRupkZbabTiWPr cUg/gmwCp5cxx7w+6VguYhnH6z+FyIgzcQmyAmiK5ztM8+ucCLp+eGVRQ6m7RkNtC8sac0 A+bdBKfzlNwAP2UWuyGLG6Kyly/yEkrupECqiwe1/GbSu+wauRCp7AMf7J95pPq4D1YXKc Jx3oOi+WjbJkzHMgzX8N6dl1qiQ/K44ES/reGZPE27MVXktQl7fhdFi6WoV7XniPtSoT+j e2iok0bJx2+0ya1Nx10/j2UZF5hUu/byjPUGpB0EXZPPK/t3jWQ0Xn5q4gE8SA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893374; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O6bm4DYFjD0UHsqrgQUzoCwPJWpGrfRs5Xm6UN7Tmcw=; b=lCZm7jwLlaPYT6efSAfIWrTHtxvqbhJAOHQXLmka+JI7aSV6s25mR3YBqnfrGcxyK1opsf 9lGpXIUdZ10adoeipbfTGOOpqgXg2tUdieEtSv5njLzHOFUJrIckBea8sB0rvCgNGugd4C +C5WyU7E22AHGW9jDJsDeK0Ht+DeMFAYObpoYxQhsjzVSbhbKJJvXI9NaPE4Ruu/RWxl7z bRHxh3vlnSIAFFEylps5XXL+W2szSqP4ESYfoJiikVeqti7O7vwRGMetwTUxiFyr0iSUn7 VOyI57Zc1AnR+4N8zK/iE9CaUObrdAuY8eshkr3vQl0Tkf7N8o/WyDdCwqTlXg== 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 4S4FJt5gBpzxm; Mon, 9 Oct 2023 23:16:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGE8N071248; Mon, 9 Oct 2023 23:16:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGEcm071245; Mon, 9 Oct 2023 23:16:14 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:14 GMT Message-Id: <202310092316.399NGEcm071245@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 8fd6576e0400 - releng/14.0 - LinuxKPI: 802.11: prepare for iwlwifi driver updates List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 8fd6576e04002d42b4478b934c27ca9cbff5e0ed Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=8fd6576e04002d42b4478b934c27ca9cbff5e0ed commit 8fd6576e04002d42b4478b934c27ca9cbff5e0ed Author: Bjoern A. Zeeb AuthorDate: 2023-09-05 18:02:02 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:53 +0000 LinuxKPI: 802.11: prepare for iwlwifi driver updates Update ieee80211_request_smps() to the new number of arguments in LinuxKPI (which was already prepared) and update the one call in the older iwlwifi driver version. This will allow iwlwifi as-is now and rtw88 to compile in case someone else wants to work on the latter in parallel to predominant efforts on the former. Unconditionally enable the other changes for newer drivers, as needed by iwlwifi (and others). Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit 815b7436a7c6302365b6514194d27d41cb736227) (cherry picked from commit 3e1f5cc9a81a6065ddc371eea5755b4e207d72f8) (cherry picked from commit 82782cffead3c757a94a10fe02b202a4dd3b1a04) --- sys/compat/linuxkpi/common/include/net/mac80211.h | 29 +++-------------------- sys/contrib/dev/iwlwifi/mvm/utils.c | 2 +- 2 files changed, 4 insertions(+), 27 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index cacf9d652fd0..20371812198a 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -703,12 +703,6 @@ struct ieee80211_sta { struct ieee80211_link_sta deflink; struct ieee80211_link_sta *link[IEEE80211_MLD_MAX_NUM_LINKS]; /* rcu? */ -#ifndef __FOR_LATER_DRV_UPDATE - uint16_t max_rc_amsdu_len; - uint16_t max_amsdu_len; - uint16_t max_tid_amsdu_len[IEEE80211_NUM_TIDS]; -#endif - /* Must stay last. */ uint8_t drv_priv[0] __aligned(CACHE_LINE_SIZE); }; @@ -1421,7 +1415,6 @@ ieee80211_is_back_req(__le16 fc) } static __inline bool -#ifdef __FOR_LATER_DRV_UPDATE ieee80211_is_bufferable_mmpdu(struct sk_buff *skb) { struct ieee80211_mgmt *mgmt; @@ -1429,10 +1422,6 @@ ieee80211_is_bufferable_mmpdu(struct sk_buff *skb) mgmt = (struct ieee80211_mgmt *)skb->data; fc = mgmt->frame_control; -#else -ieee80211_is_bufferable_mmpdu(__le16 fc) -{ -#endif /* 11.2.2 Bufferable MMPDUs, 80211-2020. */ /* XXX we do not care about IBSS yet. */ @@ -2022,10 +2011,7 @@ ieee80211_ie_split(const u8 *ies, size_t ies_len, } static __inline void -ieee80211_request_smps(struct ieee80211_vif *vif, -#ifdef __FOR_LATER_DRV_UPDATE - u_int link_id, -#endif +ieee80211_request_smps(struct ieee80211_vif *vif, u_int link_id, enum ieee80211_smps_mode smps) { static const char *smps_mode_name[] = { @@ -2222,10 +2208,7 @@ ieee80211_tx_dequeue(struct ieee80211_hw *hw, struct ieee80211_txq *txq) static __inline void ieee80211_update_mu_groups(struct ieee80211_vif *vif, -#ifdef __FOR_LATER_DRV_UPDATE - u_int _i, -#endif - uint8_t *ms, uint8_t *up) + u_int _i, uint8_t *ms, uint8_t *up) { TODO(); } @@ -2345,14 +2328,8 @@ ieee80211_proberesp_get(struct ieee80211_hw *hw, struct ieee80211_vif *vif) static __inline struct sk_buff * ieee80211_nullfunc_get(struct ieee80211_hw *hw, struct ieee80211_vif *vif, -#ifdef __FOR_LATER_DRV_UPDATE - int linkid, -#endif - bool qos) + int linkid, bool qos) { -#ifndef __FOR_LATER_DRV_UPDATE - int linkid = 0; -#endif /* Only STA needs this. Otherwise return NULL and panic bad drivers. */ if (vif->type != NL80211_IFTYPE_STATION) diff --git a/sys/contrib/dev/iwlwifi/mvm/utils.c b/sys/contrib/dev/iwlwifi/mvm/utils.c index 075ada8ba356..5370cec8140a 100644 --- a/sys/contrib/dev/iwlwifi/mvm/utils.c +++ b/sys/contrib/dev/iwlwifi/mvm/utils.c @@ -307,7 +307,7 @@ void iwl_mvm_update_smps(struct iwl_mvm *mvm, struct ieee80211_vif *vif, smps_mode = IEEE80211_SMPS_DYNAMIC; } - ieee80211_request_smps(vif, smps_mode); + ieee80211_request_smps(vif, 0, smps_mode); } static bool iwl_wait_stats_complete(struct iwl_notif_wait_data *notif_wait, From nobody Mon Oct 9 23:16:15 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FJw1Nxsz4wgpb; Mon, 9 Oct 2023 23:16: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 4S4FJw0NRMz3QDD; Mon, 9 Oct 2023 23:16:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893376; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vjttdRtHBv/rWgOeQy5LoP1XgdBtvjOq6D2pcbtBo7A=; b=EBHWM7eLTgK73dmoCMcMyB1gsQvufCLRtkw5cTlEOc/3z43ZZ/1w9XemjvexpGC008w4t0 WBPl3MpqM++IVczMImi/sj7yUlE/0WAcOCr4fW4jLWwJxumyuMD/DUfzJOaeV+WIYOLfh9 /0Uc4pe8zE/ZTWIycFDAg7RCTGYKJ9SBvAa4HoqCYQ4CgWSr8JnYDXh9VhIKwQrFKmI5ct hV9Q+m4ZAk54qmNac/UsTj/ntJWPIWwZYqh4YMpld/w1O6Cquq451bi0ahRdt4jri39+YE mdtfKVq/NymK27Zy84eDTDg0aXN0s99fTD5V8XlggJPJBdnCUh3Y/xe84BD4jA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893376; a=rsa-sha256; cv=none; b=TtVXNSWU31+i/lQFENgDll8+6Z0W0Q6p1dBGm36FiybfWZF8UXqAMPezWDxri7PvLI2G3p bYb/vWDQrfe4O+T2ksL/S8fZlUvZN0cKxIrlemPlNASKJ/twrIkZ8YgYrRsIIhzZ873qo8 PFKqUpJvBJDwe4+zvKuvBXr6j0euiXPI0EW9fuMujq6RORKbvR6uSn5LGwxEQnhwBeXZX/ C8huyAv/gOdW/VeXrlQrAzrh6JwYT5LnGacrhDOnFF4gMyPlpV1q5H5fKKSTMqY3BseqO4 5J/bCZv7/YtDOGn3QKBZJEbN7T+GgVf6P80EJaHK2pLkd5Piq290UTHdI69s1Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893376; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vjttdRtHBv/rWgOeQy5LoP1XgdBtvjOq6D2pcbtBo7A=; b=qH1hjpqNGzU0tGpdMMxSXYXFOQW00D7zGXvjpPsXCnLG+1ayrJNIQfov5Hd4C6u7zd+ILb 3LU5j1yBrhpOTSsDx4tb2HDhkBAz0B6tgkhC9xN4wKPEUFKwyHa6vdxAhSiyiYcBxuwLzz m0amKhPFvIUV8yat1rB3/rbIh0ji1aArL9fboeleq7u4moLGy3y2Xfz2BCYN+fjaAcK/S4 anYvu8uIb5yHXBawOTxBgsyHRjesCHXyMhqxbLJLAcgRg/mPxGy0NpTzdq+LJyJ8o2sJCD ZyAYM1kj8MijBhXwwgp/LC89DnL5F9nMDXW2qjclOWRNdivn4GEQyLuTOzl9jQ== 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 4S4FJv6W3qzfj; Mon, 9 Oct 2023 23:16:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGFo6071308; Mon, 9 Oct 2023 23:16:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGFN6071305; Mon, 9 Oct 2023 23:16:15 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:15 GMT Message-Id: <202310092316.399NGFN6071305@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 6052271ca82b - releng/14.0 - LinuxKPI: 802.11: adjust code to new structure layout List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 6052271ca82b6ba3c29f04fa581280ace569b264 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=6052271ca82b6ba3c29f04fa581280ace569b264 commit 6052271ca82b6ba3c29f04fa581280ace569b264 Author: Bjoern A. Zeeb AuthorDate: 2023-09-21 12:19:54 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:53 +0000 LinuxKPI: 802.11: adjust code to new structure layout With past commits new structures were added. Now switch over some bss_conf fields into vif->cfg where they got moved to and remove the old fields. This allows drivers to find the expected values in the now expected places and work better. Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit 616e13301bcf274b007f84ef99ea857a55bef46d) (cherry picked from commit 8614ae463a1e913ff97039655a08316556839b4c) --- sys/compat/linuxkpi/common/include/net/mac80211.h | 9 ++--- sys/compat/linuxkpi/common/src/linux_80211.c | 44 +++++++++++------------ 2 files changed, 24 insertions(+), 29 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/net/mac80211.h b/sys/compat/linuxkpi/common/include/net/mac80211.h index 20371812198a..7e6fb1bce16e 100644 --- a/sys/compat/linuxkpi/common/include/net/mac80211.h +++ b/sys/compat/linuxkpi/common/include/net/mac80211.h @@ -280,19 +280,13 @@ struct ieee80211_bss_conf { bool eht_su_beamformer; bool eht_mu_beamformer; - size_t ssid_len; - uint8_t ssid[IEEE80211_NWID_LEN]; - uint16_t aid; uint16_t ht_operation_mode; int arp_addr_cnt; uint16_t eht_puncturing; uint8_t dtim_period; uint8_t sync_dtim_count; - bool assoc; - bool idle; bool qos; - bool ps; bool twt_broadcast; bool use_cts_prot; bool use_short_preamble; @@ -991,6 +985,8 @@ struct ieee80211_ops { void (*config_iface_filter)(struct ieee80211_hw *, struct ieee80211_vif *, unsigned int, unsigned int); void (*bss_info_changed)(struct ieee80211_hw *, struct ieee80211_vif *, struct ieee80211_bss_conf *, u64); + void (*link_info_changed)(struct ieee80211_hw *, struct ieee80211_vif *, struct ieee80211_bss_conf *, u64); + int (*set_rts_threshold)(struct ieee80211_hw *, u32); void (*event_callback)(struct ieee80211_hw *, struct ieee80211_vif *, const struct ieee80211_event *); int (*get_survey)(struct ieee80211_hw *, int, struct survey_info *); @@ -1038,7 +1034,6 @@ struct ieee80211_ops { int (*set_hw_timestamp)(struct ieee80211_hw *, struct ieee80211_vif *, struct cfg80211_set_hw_timestamp *); - void (*link_info_changed)(struct ieee80211_hw *, struct ieee80211_vif *, struct ieee80211_bss_conf *, u64); void (*vif_cfg_changed)(struct ieee80211_hw *, struct ieee80211_vif *, u64); int (*change_vif_links)(struct ieee80211_hw *, struct ieee80211_vif *, u16, u16, struct ieee80211_bss_conf *[IEEE80211_MLD_MAX_NUM_LINKS]); diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 978a82ad2ceb..ab79fd36ca14 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -744,7 +744,7 @@ lkpi_update_dtim_tsf(struct ieee80211_vif *vif, struct ieee80211_node *ni, "dtim_period %u sync_dtim_count %u sync_tsf %ju " "sync_device_ts %u bss_changed %#08x\n", __func__, __LINE__, _f, _l, - vif->bss_conf.assoc, vif->bss_conf.aid, + vif->cfg.assoc, vif->cfg.aid, vif->bss_conf.beacon_int, vif->bss_conf.dtim_period, vif->bss_conf.sync_dtim_count, (uintmax_t)vif->bss_conf.sync_tsf, @@ -775,7 +775,7 @@ lkpi_update_dtim_tsf(struct ieee80211_vif *vif, struct ieee80211_node *ni, "dtim_period %u sync_dtim_count %u sync_tsf %ju " "sync_device_ts %u bss_changed %#08x\n", __func__, __LINE__, _f, _l, - vif->bss_conf.assoc, vif->bss_conf.aid, + vif->cfg.assoc, vif->cfg.aid, vif->bss_conf.beacon_int, vif->bss_conf.dtim_period, vif->bss_conf.sync_dtim_count, (uintmax_t)vif->bss_conf.sync_tsf, @@ -846,7 +846,7 @@ lkpi_disassoc(struct ieee80211_sta *sta, struct ieee80211_vif *vif, struct lkpi_hw *lhw) { sta->aid = 0; - if (vif->bss_conf.assoc) { + if (vif->cfg.assoc) { struct ieee80211_hw *hw; enum ieee80211_bss_changed changed; @@ -854,8 +854,8 @@ lkpi_disassoc(struct ieee80211_sta *sta, struct ieee80211_vif *vif, lkpi_update_mcast_filter(lhw->ic, true); changed = 0; - vif->bss_conf.assoc = false; - vif->bss_conf.aid = 0; + vif->cfg.assoc = false; + vif->cfg.aid = 0; changed |= BSS_CHANGED_ASSOC; /* * This will remove the sta from firmware for iwlwifi. @@ -1008,12 +1008,12 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int bss_changed |= BSS_CHANGED_BSSID; vif->bss_conf.txpower = ni->ni_txpower; bss_changed |= BSS_CHANGED_TXPOWER; - vif->bss_conf.idle = false; + vif->cfg.idle = false; bss_changed |= BSS_CHANGED_IDLE; /* Should almost assert it is this. */ - vif->bss_conf.assoc = false; - vif->bss_conf.aid = 0; + vif->cfg.assoc = false; + vif->cfg.aid = 0; bss_changed |= lkpi_update_dtim_tsf(vif, ni, vap, __func__, __LINE__); @@ -1432,8 +1432,8 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i bss_changed = 0; vif->bss_conf.qos = 0; bss_changed |= BSS_CHANGED_QOS; - vif->bss_conf.ssid_len = 0; - memset(vif->bss_conf.ssid, '\0', sizeof(vif->bss_conf.ssid)); + vif->cfg.ssid_len = 0; + memset(vif->cfg.ssid, '\0', sizeof(vif->cfg.ssid)); bss_changed |= BSS_CHANGED_BSSID; lkpi_80211_mo_bss_info_changed(hw, vif, &vif->bss_conf, bss_changed); @@ -1548,14 +1548,14 @@ lkpi_sta_assoc_to_run(struct ieee80211vap *vap, enum ieee80211_state nstate, int #ifdef LKPI_80211_WME bss_changed |= lkpi_wme_update(lhw, vap, true); #endif - if (!vif->bss_conf.assoc || vif->bss_conf.aid != IEEE80211_NODE_AID(ni)) { - vif->bss_conf.assoc = true; - vif->bss_conf.aid = IEEE80211_NODE_AID(ni); + if (!vif->cfg.assoc || vif->cfg.aid != IEEE80211_NODE_AID(ni)) { + vif->cfg.assoc = true; + vif->cfg.aid = IEEE80211_NODE_AID(ni); bss_changed |= BSS_CHANGED_ASSOC; } /* We set SSID but this is not BSSID! */ - vif->bss_conf.ssid_len = ni->ni_esslen; - memcpy(vif->bss_conf.ssid, ni->ni_essid, ni->ni_esslen); + vif->cfg.ssid_len = ni->ni_esslen; + memcpy(vif->cfg.ssid, ni->ni_essid, ni->ni_esslen); if ((vap->iv_flags & IEEE80211_F_SHPREAMBLE) != vif->bss_conf.use_short_preamble) { vif->bss_conf.use_short_preamble ^= 1; @@ -1894,8 +1894,8 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int bss_changed = 0; vif->bss_conf.qos = 0; bss_changed |= BSS_CHANGED_QOS; - vif->bss_conf.ssid_len = 0; - memset(vif->bss_conf.ssid, '\0', sizeof(vif->bss_conf.ssid)); + vif->cfg.ssid_len = 0; + memset(vif->cfg.ssid, '\0', sizeof(vif->cfg.ssid)); bss_changed |= BSS_CHANGED_BSSID; lkpi_80211_mo_bss_info_changed(hw, vif, &vif->bss_conf, bss_changed); @@ -2275,16 +2275,16 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], #if 1 vif->chanctx_conf = NULL; vif->bss_conf.vif = vif; - vif->bss_conf.idle = true; - vif->bss_conf.ps = false; vif->bss_conf.chandef.width = NL80211_CHAN_WIDTH_20_NOHT; vif->bss_conf.use_short_preamble = false; /* vap->iv_flags IEEE80211_F_SHPREAMBLE */ vif->bss_conf.use_short_slot = false; /* vap->iv_flags IEEE80211_F_SHSLOT */ vif->bss_conf.qos = false; vif->bss_conf.use_cts_prot = false; /* vap->iv_protmode */ vif->bss_conf.ht_operation_mode = IEEE80211_HT_OP_MODE_PROTECTION_NONE; - vif->bss_conf.assoc = false; - vif->bss_conf.aid = 0; + vif->cfg.aid = 0; + vif->cfg.assoc = false; + vif->cfg.idle = true; + vif->cfg.ps = false; /* * We need to initialize it to something as the bss_info_changed call * will try to copy from it in iwlwifi and NULL is a panic. @@ -4711,7 +4711,7 @@ linuxkpi_ieee80211_pspoll_get(struct ieee80211_hw *hw, psp = skb_put_zero(skb, sizeof(*psp)); psp->i_fc[0] = IEEE80211_FC0_VERSION_0; psp->i_fc[0] |= IEEE80211_FC0_SUBTYPE_PS_POLL | IEEE80211_FC0_TYPE_CTL; - v = htole16(vif->bss_conf.aid | 1<<15 | 1<<16); + v = htole16(vif->cfg.aid | 1<<15 | 1<<16); memcpy(&psp->i_aid, &v, sizeof(v)); IEEE80211_ADDR_COPY(psp->i_bssid, vap->iv_bss->ni_macaddr); IEEE80211_ADDR_COPY(psp->i_ta, vif->addr); From nobody Mon Oct 9 23:16:16 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FJx2fqlz4wh30; Mon, 9 Oct 2023 23:16: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 4S4FJx1hSbz3Qcd; Mon, 9 Oct 2023 23:16:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893377; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hhjlUZHvXWFkRbgvXe4+6ZPL5bje6BQctu/EFZfEaMo=; b=A84gxek0XhtEJb+m0aH5kLQ6iUgPx2nAmIwIMBkjeCGpztZHVQ8xSHZUOAfq7f5f0DYMPz S+uel+YEYi/UcQxj+48zSuqNRmqHrsUgGfBCoJiniqnpHFOKL4GvxfkPtZauAbnI5QN6m/ jPmNAzJKwXbbb+IZ/j6kdoliBbyL7fL6o3xVN7zw6b7uTZzexa1JodATh0pSUr7mfhUC2a ef4a4K3dmthlJ2xCwyx9/zsljVnshAji8insQVP5NIZ4fM6a8aYnN/JBYEsi3H+PvOXIkW 5bTsaedHYl4ZK8z9UQW6Z6qJgpMLT4CMTdp969TEcQW/iMrSDsyLzoeYQL+1iA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893377; a=rsa-sha256; cv=none; b=ZeuUR9yX5/QUvr6CKqh8MGUVDUdpycc0R5pkRuy9vxQ/plabtMKjFNAWT/8dAYyVuEXdCb yCJsdgGI9HesYVM9z7Nxpax3v5Kwr69c+6Hmxil92oIw/lzRDQTM/r/FLtRW6xu50iELlx O9JdrdzDxUlnD5ft1EGC5q4cVpjwEVwA/0EHjnohvH43Gn11XrbnG1qamPufBu3BIj/Thl OE0xcEB6IhvxS59afDq8Wt+H3Te+v4Lz6p4zJ/maK6yC7Ydpy5wQ82cjrG70R1Hb7Jtbf6 TBr9qVyb9O5pY5PySOOD+q5Mw8923xSiTN8mpy+/pDGzzNM5i5DztHq4X65fGg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893377; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hhjlUZHvXWFkRbgvXe4+6ZPL5bje6BQctu/EFZfEaMo=; b=ZCyhjW1mx7agoiQiDlel1QwFVRpbqgdTfb5iehoZa7cAe8nWn6jihbdc/uoQr3LBAXDyLK 51r2PZR6F0JRH7UDmPAayYMT2tz4Ns9u06J3bZz1atomg6SugtvZGyiUCsEigSPnskPBuY /whWWRK0eYRKImBdyoSgTyPoYaSiuYOl6wwubahmiXvu1FTp8mQOQtkgR33Dv5PMi2Y4a4 FSOsIKQQ9pE9rdmhvqmIjViUS9aAxC4ZKkUDiXV6cwOkLoqEsF/GBV9rg696M8mu3dIJrD IFAjByD2UBgXzXFzuQBd1DaNlJ6GcB0hH5DlYIrUhtV/2l8lJYBJYFmWC9hueA== 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 4S4FJx0WTJz19Q; Mon, 9 Oct 2023 23:16:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGGRD071359; Mon, 9 Oct 2023 23:16:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGGuR071356; Mon, 9 Oct 2023 23:16:16 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:16 GMT Message-Id: <202310092316.399NGGuR071356@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: a965d1ebd3ad - releng/14.0 - LinuxKPI: 802.11: mac80211 ops: distinguish between {bss,link}_info_changed List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: a965d1ebd3adc68bf3c445dc0d5c1db8cf5bd867 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=a965d1ebd3adc68bf3c445dc0d5c1db8cf5bd867 commit a965d1ebd3adc68bf3c445dc0d5c1db8cf5bd867 Author: Bjoern A. Zeeb AuthorDate: 2023-09-21 11:58:17 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:53 +0000 LinuxKPI: 802.11: mac80211 ops: distinguish between {bss,link}_info_changed With MLO and multi-link setups if avail we want to call link_info_changed whereas for legacy drivers we still need to call bss_info_changed. While we currently do not (yet) support multi-link configurations we still need to drive the correct commands to satisfy firmware requirements. Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit 727f88f2617acaff4ada0f3dda6ca23c6679310d) (cherry picked from commit ad79da1b1ad323a00329c1c80fe9b90eb1e434b2) --- sys/compat/linuxkpi/common/src/linux_80211_macops.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211_macops.c b/sys/compat/linuxkpi/common/src/linux_80211_macops.c index c386c096add7..97a72a95e418 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211_macops.c +++ b/sys/compat/linuxkpi/common/src/linux_80211_macops.c @@ -538,14 +538,17 @@ lkpi_80211_mo_bss_info_changed(struct ieee80211_hw *hw, struct ieee80211_vif *vi struct lkpi_hw *lhw; lhw = HW_TO_LHW(hw); - if (lhw->ops->bss_info_changed == NULL) + if (lhw->ops->link_info_changed == NULL && + lhw->ops->bss_info_changed == NULL) return; LKPI_80211_TRACE_MO("hw %p vif %p conf %p changed %#jx", hw, vif, conf, (uintmax_t)changed); - lhw->ops->bss_info_changed(hw, vif, conf, changed); + if (lhw->ops->link_info_changed != NULL) + lhw->ops->link_info_changed(hw, vif, conf, changed); + else + lhw->ops->bss_info_changed(hw, vif, conf, changed); } - int lkpi_80211_mo_conf_tx(struct ieee80211_hw *hw, struct ieee80211_vif *vif, uint16_t ac, const struct ieee80211_tx_queue_params *txqp) From nobody Mon Oct 9 23:16:18 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FJy3D0bz4wh0R; Mon, 9 Oct 2023 23:16:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4FJy2kw9z3QdJ; Mon, 9 Oct 2023 23:16:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893378; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oC8rvOnfHwM9Svj5yXV0CdrKbS8+ve9owkBv8RqSjmE=; b=PINlqv3FRz3e7v3xpm9RgiYg6AOux8e4YCLEWZQo2DBz1NdYxMy+W2pYWRPiIhzyCkOmUA 72jOejosTbLh7HoNi4XaLcvB5ish/1osV34xGiUjeqVuYqVG7jpAndld1oaocDu/aiOF+f jSpZ/XiMtA3dJY1MW5VJ1IkT1KZ+h+ShBTxBGe8qcBVsWIuAaJR5TAfc6+piyFcJNbAeKv wakk1GviaaxbMCZobhFMZoWjFju+zxda5D0c2ReZeFDDV4jVH+y23gfwdAAgDUVmO2hpKw B/YTzHf99dXH+97OCtIIp4B1J6NSces2HT5FxFOnhI0/PzV4OKWayqzxYHQFoA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893378; a=rsa-sha256; cv=none; b=rYCSzT0tsktkYn613BbN0YRij1+9DR/jK5v/FrsMDKSPIbaZKI+RkdJP/9VbRtruk9x0Hd YBho8ZijtE7WWrxOlWfG6vcmyt7V2jGSxjG36DoKKcGcbHfQyVmwRfxZRTZgyGSWyuwLfm uRdChlGk8Iffi08fa0QKzVofzRG5C80QA8QmjMh8SN2/zFjA2Ey8dkcnldUl0DWxdzbOlY eC9453Z+dIo7XOkB4e98DlkgWHJQIMVEc0D6lYACuICY/4WLow1/cZpm8WQQZ651KEKNMg Fs2gPfgImBazNYcR031olh6zQsQmKqjTX86cClatkMwmXAY/YYS/5Vc71lYPlA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893378; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oC8rvOnfHwM9Svj5yXV0CdrKbS8+ve9owkBv8RqSjmE=; b=Sk4tdRt7fNazSUreSleGeJjW0JmTs3qJM1EQa6Tai0ZBSFQeF/4RKhOGiIBMdNNJFWDI+8 wmqdT/BOa9C2cUzQBzNPOsylckCWPqLqAZ7+m/iUpKAJY8siwWts2i2dj4Wl4omu3mpQnY Fm+xA8QVfzY//TGz7gj0sPTlSpX62GBbXXxMRsjODX6iLlOOjzgOFBhB0CIN15sbZYyAz3 WpxfvbchJ2sSTcz9uXE+XOKXr82qY+jkC4iirqdX+WJKnUclh6UXUDUnnxd7p17nYIqajS tkRxNuJFd7odUZ2Mwrjyz9AWo/vjZgNJgIK3UL0jJquoPKo0PKRJY8hDz0i/0Q== 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 4S4FJy1cmjzl6; Mon, 9 Oct 2023 23:16:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGIWd071416; Mon, 9 Oct 2023 23:16:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGICm071413; Mon, 9 Oct 2023 23:16:18 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:18 GMT Message-Id: <202310092316.399NGICm071413@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 2ddd45f30ed8 - releng/14.0 - iwlwifi / rtw88: temporary disconnect from build for updates List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 2ddd45f30ed8ca5c0507b0b5e9ba4cee253f4718 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=2ddd45f30ed8ca5c0507b0b5e9ba4cee253f4718 commit 2ddd45f30ed8ca5c0507b0b5e9ba4cee253f4718 Author: Bjoern A. Zeeb AuthorDate: 2023-09-05 17:34:35 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:53 +0000 iwlwifi / rtw88: temporary disconnect from build for updates Disconnect iwlwifi/rtw88 from the build for a few commits which, due to incompatible LinuxKPI 802.11 changes would break the build for a revision. It will be re-enabled "instantly". Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit 712468443df1130db8f893a5e2ce5c6a8dbf5cde) (cherry picked from commit b75d1ce6c10652fc4bfbf509deeae0e05c3d1356) (cherry picked from commit b6fbec77eb977538ab4c353789fdb255e01e0a8e) --- sys/modules/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/modules/Makefile b/sys/modules/Makefile index 4b98c7ed6e0d..66d7c895a460 100644 --- a/sys/modules/Makefile +++ b/sys/modules/Makefile @@ -561,12 +561,12 @@ _mlx5ib= mlx5ib ${MACHINE_CPUARCH} == "i386" _ena= ena _gve= gve -_iwlwifi= iwlwifi +#_iwlwifi= iwlwifi .if ${MK_SOURCELESS_UCODE} != "no" _iwlwififw= iwlwififw .endif _ossl= ossl -_rtw88= rtw88 +#_rtw88= rtw88 .if ${MK_SOURCELESS_UCODE} != "no" _rtw88fw= rtw88fw .endif From nobody Mon Oct 9 23:16:19 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FJz5r28z4wh0W; Mon, 9 Oct 2023 23:16: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 4S4FJz3mqsz3QmW; Mon, 9 Oct 2023 23:16:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893379; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SBTwtJYFGdJZ5UguOtAbsN37Pf6E7o4U6yRLn/WAL6A=; b=nF8ZHLHe/Cm4MSkLVL275k7Bys+NK+AG7lTiFj/SA1HexMR9fPmfrO87kH2fuFn22ji04U 1WIZjSHSZNdvVhQzxbsvcFP3R8Sbtp+TLz3NOeF4NWRORBP6pF348zIKNOsJ0/78j9T0M/ usgYCf5nGIAnz8uN94pbjmR38z7Usw4AoxLizVxPyozXgfobtFA2BQ14z1aVsHPE4DtWdG HzjX0eZwieXhvwaW3qRQZZsd8XI6NeTBKMkDufu0fgXlMpQmpSeWKQyeB6MS8ys+4o/l/r rOKpGJVYKR883X/uJaf7vBXk6ZYuxfMEtHHuHEKIMfyplo1Z7Mqf+xVyO2lOvg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893379; a=rsa-sha256; cv=none; b=Hva0AtShyXXZ0+qnyZOUMiUEJhKL023/vwbsQuSRjwkyV0cS9G/XGGizPq0u5gErbZjXOa cvfLAROQJVocYaUovZ2K/4Ldh3/RIE8HUVQYHo7oUBkv8zK+6JLPoc9F/zJgNn8abaPwTr C5+iGv8/chDwS6ogjTsKW97StPeMPVt+deMXYzCdtYo17MaIkzYGVFC3DMAzWORiqTUH1B +MCvn9WT5K5osecl/EAQRsAI3Mm+rH3QJ8nTRVuVPaemMWBYsmJ6uTxk4JWu9pyqIPpsdL f3kX1PTzRLF9m5AJ+wNqtxCb8Elz+vhU/7HCdV+01bdlqpi4LdD8Om2PmiLynQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893379; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SBTwtJYFGdJZ5UguOtAbsN37Pf6E7o4U6yRLn/WAL6A=; b=pFnzYNDLJK2MA9PRrtWK6RynLS0BNJ6oKUr+wY6KjNiS+Rg3lTpeStxM7MNPTQikF2b7cO d7tDrkktfLkSFc1liDyI+H2s58bfxv1MhSBUamkK/gMV1Nr8EoAE2VrStDVEpdX5RKlFLP 2W5b5fv5TID4JO5aQF/H4PU9mMumU3snjMcXWAMIvfMIAm377WFz0ep3+ew96KvPyzeonx dinduUW7JAsT2KcJLQO8wZ9IPd1d1IzXORvllbeL81iek8uUIX7eJmpIHFICebMOPmB5tl hA5H8u+K2HOPUbrN3C9J2guDLazFkhjfhH6kryXInFHoalFZrYe3zZSzLyJVcg== 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 4S4FJz2tTQz19R; Mon, 9 Oct 2023 23:16:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGJsD071471; Mon, 9 Oct 2023 23:16:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGJk7071468; Mon, 9 Oct 2023 23:16:19 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:19 GMT Message-Id: <202310092316.399NGJk7071468@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: c77b9b40fda8 - releng/14.0 - LinuxKPI: 802.11: pass non-0/NULL arguments to MO functions List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: c77b9b40fda8f93efc6dee84440e1ff65e381cc5 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=c77b9b40fda8f93efc6dee84440e1ff65e381cc5 commit c77b9b40fda8f93efc6dee84440e1ff65e381cc5 Author: Bjoern A. Zeeb AuthorDate: 2023-09-16 13:10:57 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:53 +0000 LinuxKPI: 802.11: pass non-0/NULL arguments to MO functions In [1] we updated the KPI for various mac80211 ops functions to deal with MLD code. Newer iwlwifi driver and firmware supports these functions so we need to pass non-dummy (0, NULL) arguments to them. Start extending the internel MO functions by these arguments and pass down values from LinuxKPI 802.11 code. It is assumed that further work will be needed to have all the right fields available to at least work in the lgeacy way of a single link. Sponsored by: The FreeBSD Foundation Improves: 549198b1ab95 (update mac80211 KPI) [1] Approved by: re (gjb) (cherry picked from commit 6854154638a2c04ab59da43aedbe2c0ee8ef71a5) (cherry picked from commit be5f1d2e7138eb680db400813af54d9f33d9b252) --- sys/compat/linuxkpi/common/src/linux_80211.c | 11 ++++++----- sys/compat/linuxkpi/common/src/linux_80211.h | 6 +++--- sys/compat/linuxkpi/common/src/linux_80211_macops.c | 21 ++++++++++++--------- 3 files changed, 21 insertions(+), 17 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index ab79fd36ca14..ac43b1248536 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -991,7 +991,8 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int } /* Assign vif chanctx. */ if (error == 0) - error = lkpi_80211_mo_assign_vif_chanctx(hw, vif, conf); + error = lkpi_80211_mo_assign_vif_chanctx(hw, vif, + &vif->bss_conf, conf); if (error == EOPNOTSUPP) error = 0; if (error != 0) { @@ -1172,7 +1173,7 @@ lkpi_sta_auth_to_scan(struct ieee80211vap *vap, enum ieee80211_state nstate, int conf = vif->chanctx_conf; /* Remove vif context. */ - lkpi_80211_mo_unassign_vif_chanctx(hw, vif, &vif->chanctx_conf); + lkpi_80211_mo_unassign_vif_chanctx(hw, vif, &vif->bss_conf, &vif->chanctx_conf); /* NB: vif->chanctx_conf is NULL now. */ /* Remove chan ctx. */ @@ -1447,7 +1448,7 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i conf = vif->chanctx_conf; /* Remove vif context. */ - lkpi_80211_mo_unassign_vif_chanctx(hw, vif, &vif->chanctx_conf); + lkpi_80211_mo_unassign_vif_chanctx(hw, vif, &vif->bss_conf, &vif->chanctx_conf); /* NB: vif->chanctx_conf is NULL now. */ /* Remove chan ctx. */ @@ -1909,7 +1910,7 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int conf = vif->chanctx_conf; /* Remove vif context. */ - lkpi_80211_mo_unassign_vif_chanctx(hw, vif, &vif->chanctx_conf); + lkpi_80211_mo_unassign_vif_chanctx(hw, vif, &vif->bss_conf, &vif->chanctx_conf); /* NB: vif->chanctx_conf is NULL now. */ /* Remove chan ctx. */ @@ -2200,7 +2201,7 @@ lkpi_wme_update(struct lkpi_hw *lhw, struct ieee80211vap *vap, bool planned) txqp.cw_max = wmep->wmep_logcwmax; txqp.txop = wmep->wmep_txopLimit; txqp.aifs = wmep->wmep_aifsn; - error = lkpi_80211_mo_conf_tx(hw, vif, ac, &txqp); + error = lkpi_80211_mo_conf_tx(hw, vif, /* link_id */0, ac, &txqp); if (error != 0) ic_printf(ic, "%s: conf_tx ac %u failed %d\n", __func__, ac, error); diff --git a/sys/compat/linuxkpi/common/src/linux_80211.h b/sys/compat/linuxkpi/common/src/linux_80211.h index 42b4192bac63..22a5f5a6377c 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.h +++ b/sys/compat/linuxkpi/common/src/linux_80211.h @@ -276,9 +276,9 @@ int lkpi_80211_mo_sta_state(struct ieee80211_hw *, struct ieee80211_vif *, struct lkpi_sta *, enum ieee80211_sta_state); int lkpi_80211_mo_config(struct ieee80211_hw *, uint32_t); int lkpi_80211_mo_assign_vif_chanctx(struct ieee80211_hw *, struct ieee80211_vif *, - struct ieee80211_chanctx_conf *); + struct ieee80211_bss_conf *, struct ieee80211_chanctx_conf *); void lkpi_80211_mo_unassign_vif_chanctx(struct ieee80211_hw *, struct ieee80211_vif *, - struct ieee80211_chanctx_conf **); + struct ieee80211_bss_conf *, struct ieee80211_chanctx_conf **); int lkpi_80211_mo_add_chanctx(struct ieee80211_hw *, struct ieee80211_chanctx_conf *); void lkpi_80211_mo_change_chanctx(struct ieee80211_hw *, struct ieee80211_chanctx_conf *, uint32_t); @@ -287,7 +287,7 @@ void lkpi_80211_mo_remove_chanctx(struct ieee80211_hw *, void lkpi_80211_mo_bss_info_changed(struct ieee80211_hw *, struct ieee80211_vif *, struct ieee80211_bss_conf *, uint64_t); int lkpi_80211_mo_conf_tx(struct ieee80211_hw *, struct ieee80211_vif *, - uint16_t, const struct ieee80211_tx_queue_params *); + uint32_t, uint16_t, const struct ieee80211_tx_queue_params *); void lkpi_80211_mo_flush(struct ieee80211_hw *, struct ieee80211_vif *, uint32_t, bool); void lkpi_80211_mo_mgd_prepare_tx(struct ieee80211_hw *, struct ieee80211_vif *, diff --git a/sys/compat/linuxkpi/common/src/linux_80211_macops.c b/sys/compat/linuxkpi/common/src/linux_80211_macops.c index 97a72a95e418..b3b53d23f62e 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211_macops.c +++ b/sys/compat/linuxkpi/common/src/linux_80211_macops.c @@ -444,7 +444,7 @@ out: int lkpi_80211_mo_assign_vif_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif *vif, - struct ieee80211_chanctx_conf *chanctx_conf) + struct ieee80211_bss_conf *conf, struct ieee80211_chanctx_conf *chanctx_conf) { struct lkpi_hw *lhw; int error; @@ -455,8 +455,9 @@ lkpi_80211_mo_assign_vif_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif * goto out; } - LKPI_80211_TRACE_MO("hw %p vif %p chanctx_conf %p", hw, vif, chanctx_conf); - error = lhw->ops->assign_vif_chanctx(hw, vif, NULL, chanctx_conf); + LKPI_80211_TRACE_MO("hw %p vif %p bss_conf %p chanctx_conf %p", + hw, vif, conf, chanctx_conf); + error = lhw->ops->assign_vif_chanctx(hw, vif, conf, chanctx_conf); if (error == 0) vif->chanctx_conf = chanctx_conf; @@ -466,7 +467,7 @@ out: void lkpi_80211_mo_unassign_vif_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif *vif, - struct ieee80211_chanctx_conf **chanctx_conf) + struct ieee80211_bss_conf *conf, struct ieee80211_chanctx_conf **chanctx_conf) { struct lkpi_hw *lhw; @@ -477,8 +478,9 @@ lkpi_80211_mo_unassign_vif_chanctx(struct ieee80211_hw *hw, struct ieee80211_vif if (*chanctx_conf == NULL) return; - LKPI_80211_TRACE_MO("hw %p vif %p chanctx_conf %p", hw, vif, *chanctx_conf); - lhw->ops->unassign_vif_chanctx(hw, vif, NULL, *chanctx_conf); + LKPI_80211_TRACE_MO("hw %p vif %p bss_conf %p chanctx_conf %p", + hw, vif, conf, *chanctx_conf); + lhw->ops->unassign_vif_chanctx(hw, vif, conf, *chanctx_conf); *chanctx_conf = NULL; } @@ -551,7 +553,7 @@ lkpi_80211_mo_bss_info_changed(struct ieee80211_hw *hw, struct ieee80211_vif *vi int lkpi_80211_mo_conf_tx(struct ieee80211_hw *hw, struct ieee80211_vif *vif, - uint16_t ac, const struct ieee80211_tx_queue_params *txqp) + uint32_t link_id, uint16_t ac, const struct ieee80211_tx_queue_params *txqp) { struct lkpi_hw *lhw; int error; @@ -562,8 +564,9 @@ lkpi_80211_mo_conf_tx(struct ieee80211_hw *hw, struct ieee80211_vif *vif, goto out; } - LKPI_80211_TRACE_MO("hw %p vif %p ac %u txpq %p", hw, vif, ac, txqp); - error = lhw->ops->conf_tx(hw, vif, 0, ac, txqp); + LKPI_80211_TRACE_MO("hw %p vif %p link_id %u ac %u txpq %p", + hw, vif, link_id, ac, txqp); + error = lhw->ops->conf_tx(hw, vif, link_id, ac, txqp); out: return (error); From nobody Mon Oct 9 23:16:20 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FK10kpnz4wgkh; Mon, 9 Oct 2023 23:16: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 4S4FK109g1z3Qkm; Mon, 9 Oct 2023 23:16:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893381; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Fz7zcWgDl9+gePJ5iYyd9arYub+/zAMBycGZsd0AvY0=; b=xaye3VH5qlRoHBCbbO4yJLFT/xY3dfT1S1S4X+ZplFbjbIZkGjlir9/0ouHDV9qdP5ZXD+ FYEm58OQsyu3W7wUMdZ+ZCM9wegASNbYlMBeASDAbEE1ozcDc+/LPFXKWwNVbLig3Vzw9c kIumUiDkdgZEsSK9cavx/UCrfw09b7woi4eVLJ0AP5WbvZgIN4iQ6UUFeRA22zbsTvEtFh NSL68cLSbPMY8QgPKbbdEx2kLlTdbJDPSz9Pdwx4fWG/ixlHRTbrwKkiNreJJQOHb7nRXJ 2OeYiHUvCntsCO+aZQENqADv39ctXUsNTp8ZmVJL9eSLcqjH2stWHuQpJGQpgQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893381; a=rsa-sha256; cv=none; b=rcuwIwMGh4ku656+h+5sA82dJlN5HORIe326kzVJ15TwXKSkXREeHlfAm61mPoYR75UlV6 kC4VEUxVsdP3T2tPQyPT3LXKK7B8jUnFcqLPGEEVZm8wqMrT0DBvl9cuztQZMvo+/Su4N8 vLwn42dQ43flE4qtNuWfetFZ9J7+B4EC0RmdGtrHHkjPgt8T8z+HT6FFbEJW+XITGQ025c yQnFVHESF6lv0IldWw66/2WbF4knBt+UXxAc5aNR0wj05rQba/3JhLVTIgd/9/mW2QfHI3 dZngrAvQzBY+QFDCMeP52u18y7HZrBOqhrgkzbJYrufmHJmsCn+fkbo4mTSxNQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893381; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Fz7zcWgDl9+gePJ5iYyd9arYub+/zAMBycGZsd0AvY0=; b=abGzX0iR2rNtKS3Ou8pRHqH8NcB5Dj/TUNtrBj6XA+lHzK0IK2V93f8Hpqp5BFuPkLJdZI jZvTllvYrRQoBjLXtNHAzPmAUgnejHRW48VqnRHSpZpC2J+tgtVayE5V7c4kcppgyXNaGv PtLTPrAwcuI1iWtlP2Wt9Qgyw+lcuKstTrY8tu0GZfktaQkeKvqEH9fk5+8ajBrgAz6EUe JNkpS/l2v+x4zfuj70vhBaAgY5iJz01dCKV2Um4MrHf82a9gAVVRrkt2Ll79wGql+dQBbc vN9yjGyWDeKb9mTP6Om3xdzb1VX9cn0/YCw6fkR6LGPQ9f537pIfQj8AkN1nKw== 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 4S4FK063Gsz11G; Mon, 9 Oct 2023 23:16:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGKnT071524; Mon, 9 Oct 2023 23:16:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGKoq071515; Mon, 9 Oct 2023 23:16:20 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:20 GMT Message-Id: <202310092316.399NGKoq071515@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: f45c8d49afb5 - releng/14.0 - iwlwifi: update driver from upstream List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: f45c8d49afb543af8bdab746e6821333bdb2185f Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=f45c8d49afb543af8bdab746e6821333bdb2185f commit f45c8d49afb543af8bdab746e6821333bdb2185f Author: Bjoern A. Zeeb AuthorDate: 2023-05-16 21:56:20 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:54 +0000 iwlwifi: update driver from upstream This is a combined versions of updates of the iwlwifi driver based on wireless-testing (wt-2023-05-11) 711dca0ca3d77414f8f346e564e9c8640147f40d (after v6.4-rc1). (wt-2023-06-09) 7bd20e011626ccc3ad53e57873452b1716fcfaaa (after v6.4-rc5). (wt-2023-07-24) 62e409149b62a285e89018e49b2e115757fb9022 (after v6.5-rc3). Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit 9af1bba44e1ce9b0296ae56760b564d67ab7a1cf) (cherry picked from commit 12d5f2e7196fc4a68833c154c74de814f770d468) --- sys/contrib/dev/iwlwifi/cfg/22000.c | 617 +----- sys/contrib/dev/iwlwifi/cfg/7000.c | 22 +- sys/contrib/dev/iwlwifi/cfg/8000.c | 10 +- sys/contrib/dev/iwlwifi/cfg/9000.c | 10 +- sys/contrib/dev/iwlwifi/cfg/ax210.c | 301 +++ sys/contrib/dev/iwlwifi/cfg/bz.c | 183 ++ sys/contrib/dev/iwlwifi/cfg/sc.c | 166 ++ sys/contrib/dev/iwlwifi/fw/acpi.c | 172 +- sys/contrib/dev/iwlwifi/fw/acpi.h | 41 +- sys/contrib/dev/iwlwifi/fw/api/binding.h | 14 +- sys/contrib/dev/iwlwifi/fw/api/commands.h | 47 +- sys/contrib/dev/iwlwifi/fw/api/config.h | 15 +- sys/contrib/dev/iwlwifi/fw/api/context.h | 13 +- sys/contrib/dev/iwlwifi/fw/api/d3.h | 98 +- sys/contrib/dev/iwlwifi/fw/api/datapath.h | 287 ++- sys/contrib/dev/iwlwifi/fw/api/dbg-tlv.h | 4 +- sys/contrib/dev/iwlwifi/fw/api/debug.h | 100 +- sys/contrib/dev/iwlwifi/fw/api/filter.h | 2 +- sys/contrib/dev/iwlwifi/fw/api/location.h | 16 +- sys/contrib/dev/iwlwifi/fw/api/mac-cfg.h | 465 ++++- sys/contrib/dev/iwlwifi/fw/api/mac.h | 30 +- sys/contrib/dev/iwlwifi/fw/api/nvm-reg.h | 46 +- sys/contrib/dev/iwlwifi/fw/api/offload.h | 20 +- sys/contrib/dev/iwlwifi/fw/api/phy-ctxt.h | 39 +- sys/contrib/dev/iwlwifi/fw/api/phy.h | 10 +- sys/contrib/dev/iwlwifi/fw/api/power.h | 2 +- sys/contrib/dev/iwlwifi/fw/api/rs.h | 39 +- sys/contrib/dev/iwlwifi/fw/api/rx.h | 215 ++- sys/contrib/dev/iwlwifi/fw/api/scan.h | 66 +- sys/contrib/dev/iwlwifi/fw/api/sta.h | 2 +- sys/contrib/dev/iwlwifi/fw/api/tdls.h | 2 +- sys/contrib/dev/iwlwifi/fw/api/time-event.h | 7 +- sys/contrib/dev/iwlwifi/fw/api/tx.h | 23 +- sys/contrib/dev/iwlwifi/fw/dbg.c | 129 +- sys/contrib/dev/iwlwifi/fw/dbg.h | 18 +- sys/contrib/dev/iwlwifi/fw/debugfs.c | 39 +- sys/contrib/dev/iwlwifi/fw/dump.c | 87 +- sys/contrib/dev/iwlwifi/fw/error-dump.h | 19 +- sys/contrib/dev/iwlwifi/fw/file.h | 23 +- sys/contrib/dev/iwlwifi/fw/img.h | 5 +- sys/contrib/dev/iwlwifi/fw/pnvm.c | 233 ++- sys/contrib/dev/iwlwifi/fw/pnvm.h | 27 +- sys/contrib/dev/iwlwifi/fw/rs.c | 6 +- sys/contrib/dev/iwlwifi/fw/runtime.h | 11 +- sys/contrib/dev/iwlwifi/fw/uefi.c | 331 ++-- sys/contrib/dev/iwlwifi/fw/uefi.h | 58 +- sys/contrib/dev/iwlwifi/iwl-config.h | 55 +- sys/contrib/dev/iwlwifi/iwl-context-info-gen3.h | 53 +- sys/contrib/dev/iwlwifi/iwl-context-info.h | 5 +- sys/contrib/dev/iwlwifi/iwl-csr.h | 5 + sys/contrib/dev/iwlwifi/iwl-dbg-tlv.c | 99 +- sys/contrib/dev/iwlwifi/iwl-debug.c | 3 +- sys/contrib/dev/iwlwifi/iwl-drv.c | 105 +- sys/contrib/dev/iwlwifi/iwl-drv.h | 6 +- sys/contrib/dev/iwlwifi/iwl-eeprom-parse.h | 8 +- sys/contrib/dev/iwlwifi/iwl-fh.h | 4 +- sys/contrib/dev/iwlwifi/iwl-io.c | 4 +- sys/contrib/dev/iwlwifi/iwl-modparams.h | 1 + sys/contrib/dev/iwlwifi/iwl-nvm-parse.c | 393 +++- sys/contrib/dev/iwlwifi/iwl-nvm-parse.h | 4 +- sys/contrib/dev/iwlwifi/iwl-prph.h | 20 +- sys/contrib/dev/iwlwifi/iwl-trans.c | 6 +- sys/contrib/dev/iwlwifi/iwl-trans.h | 138 +- sys/contrib/dev/iwlwifi/mei/iwl-mei.h | 23 +- sys/contrib/dev/iwlwifi/mvm/binding.c | 23 +- sys/contrib/dev/iwlwifi/mvm/coex.c | 112 +- sys/contrib/dev/iwlwifi/mvm/constants.h | 6 +- sys/contrib/dev/iwlwifi/mvm/d3.c | 1148 ++++++++---- sys/contrib/dev/iwlwifi/mvm/debugfs-vif.c | 31 +- sys/contrib/dev/iwlwifi/mvm/debugfs.c | 468 ++++- sys/contrib/dev/iwlwifi/mvm/ftm-initiator.c | 98 +- sys/contrib/dev/iwlwifi/mvm/ftm-responder.c | 44 +- sys/contrib/dev/iwlwifi/mvm/fw.c | 383 ++-- sys/contrib/dev/iwlwifi/mvm/link.c | 285 +++ sys/contrib/dev/iwlwifi/mvm/mac-ctxt.c | 686 ++++--- sys/contrib/dev/iwlwifi/mvm/mac80211.c | 2288 +++++++++++++++-------- sys/contrib/dev/iwlwifi/mvm/mld-key.c | 376 ++++ sys/contrib/dev/iwlwifi/mvm/mld-mac.c | 321 ++++ sys/contrib/dev/iwlwifi/mvm/mld-mac80211.c | 1215 ++++++++++++ sys/contrib/dev/iwlwifi/mvm/mld-sta.c | 1181 ++++++++++++ sys/contrib/dev/iwlwifi/mvm/mvm.h | 669 ++++++- sys/contrib/dev/iwlwifi/mvm/nvm.c | 73 +- sys/contrib/dev/iwlwifi/mvm/offloading.c | 10 +- sys/contrib/dev/iwlwifi/mvm/ops.c | 131 +- sys/contrib/dev/iwlwifi/mvm/phy-ctxt.c | 73 +- sys/contrib/dev/iwlwifi/mvm/power.c | 104 +- sys/contrib/dev/iwlwifi/mvm/ptp.c | 326 ++++ sys/contrib/dev/iwlwifi/mvm/quota.c | 15 +- sys/contrib/dev/iwlwifi/mvm/rfi.c | 16 +- sys/contrib/dev/iwlwifi/mvm/rs-fw.c | 366 +++- sys/contrib/dev/iwlwifi/mvm/rs.c | 6 +- sys/contrib/dev/iwlwifi/mvm/rs.h | 14 +- sys/contrib/dev/iwlwifi/mvm/rx.c | 94 +- sys/contrib/dev/iwlwifi/mvm/rxmq.c | 1204 ++++++++---- sys/contrib/dev/iwlwifi/mvm/scan.c | 313 +++- sys/contrib/dev/iwlwifi/mvm/sf.c | 66 +- sys/contrib/dev/iwlwifi/mvm/sta.c | 844 +++++---- sys/contrib/dev/iwlwifi/mvm/sta.h | 154 +- sys/contrib/dev/iwlwifi/mvm/tdls.c | 12 +- sys/contrib/dev/iwlwifi/mvm/time-event.c | 33 +- sys/contrib/dev/iwlwifi/mvm/time-sync.c | 173 ++ sys/contrib/dev/iwlwifi/mvm/time-sync.h | 30 + sys/contrib/dev/iwlwifi/mvm/tt.c | 79 +- sys/contrib/dev/iwlwifi/mvm/tx.c | 342 ++-- sys/contrib/dev/iwlwifi/mvm/utils.c | 115 +- sys/contrib/dev/iwlwifi/pcie/ctxt-info-gen3.c | 278 ++- sys/contrib/dev/iwlwifi/pcie/ctxt-info.c | 8 +- sys/contrib/dev/iwlwifi/pcie/drv.c | 711 +++---- sys/contrib/dev/iwlwifi/pcie/internal.h | 13 +- sys/contrib/dev/iwlwifi/pcie/rx.c | 52 +- sys/contrib/dev/iwlwifi/pcie/trans-gen2.c | 89 +- sys/contrib/dev/iwlwifi/pcie/trans.c | 225 ++- sys/contrib/dev/iwlwifi/pcie/tx.c | 7 +- sys/contrib/dev/iwlwifi/queue/tx.c | 32 +- sys/contrib/dev/iwlwifi/queue/tx.h | 8 +- sys/modules/iwlwifi/Makefile | 4 + 116 files changed, 15387 insertions(+), 4969 deletions(-) diff --git a/sys/contrib/dev/iwlwifi/cfg/22000.c b/sys/contrib/dev/iwlwifi/cfg/22000.c index 192ecc480f90..d594694206b3 100644 --- a/sys/contrib/dev/iwlwifi/cfg/22000.c +++ b/sys/contrib/dev/iwlwifi/cfg/22000.c @@ -1,7 +1,7 @@ // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause /* * Copyright (C) 2015-2017 Intel Deutschland GmbH - * Copyright (C) 2018-2022 Intel Corporation + * Copyright (C) 2018-2023 Intel Corporation */ #include #include @@ -10,10 +10,10 @@ #include "fw/api/txq.h" /* Highest firmware API version supported */ -#define IWL_22000_UCODE_API_MAX 73 +#define IWL_22000_UCODE_API_MAX 77 /* Lowest firmware API version supported */ -#define IWL_22000_UCODE_API_MIN 39 +#define IWL_22000_UCODE_API_MIN 50 /* NVM versions */ #define IWL_22000_NVM_VERSION 0x0a1d @@ -26,111 +26,26 @@ #define IWL_22000_SMEM_OFFSET 0x400000 #define IWL_22000_SMEM_LEN 0xD0000 -#define IWL_QU_B_HR_B_FW_PRE "iwlwifi-Qu-b0-hr-b0-" -#define IWL_QNJ_B_HR_B_FW_PRE "iwlwifi-QuQnj-b0-hr-b0-" -#define IWL_QU_C_HR_B_FW_PRE "iwlwifi-Qu-c0-hr-b0-" -#define IWL_QU_B_JF_B_FW_PRE "iwlwifi-Qu-b0-jf-b0-" -#define IWL_QU_C_JF_B_FW_PRE "iwlwifi-Qu-c0-jf-b0-" -#define IWL_QUZ_A_HR_B_FW_PRE "iwlwifi-QuZ-a0-hr-b0-" -#define IWL_QUZ_A_JF_B_FW_PRE "iwlwifi-QuZ-a0-jf-b0-" -#define IWL_QNJ_B_JF_B_FW_PRE "iwlwifi-QuQnj-b0-jf-b0-" -#define IWL_CC_A_FW_PRE "iwlwifi-cc-a0-" -#define IWL_SO_A_JF_B_FW_PRE "iwlwifi-so-a0-jf-b0-" -#define IWL_SO_A_HR_B_FW_PRE "iwlwifi-so-a0-hr-b0-" -#define IWL_SO_A_GF_A_FW_PRE "iwlwifi-so-a0-gf-a0-" -#define IWL_TY_A_GF_A_FW_PRE "iwlwifi-ty-a0-gf-a0-" -#define IWL_SO_A_GF4_A_FW_PRE "iwlwifi-so-a0-gf4-a0-" -#define IWL_SO_A_MR_A_FW_PRE "iwlwifi-so-a0-mr-a0-" -#define IWL_SNJ_A_GF4_A_FW_PRE "iwlwifi-SoSnj-a0-gf4-a0-" -#define IWL_SNJ_A_GF_A_FW_PRE "iwlwifi-SoSnj-a0-gf-a0-" -#define IWL_SNJ_A_HR_B_FW_PRE "iwlwifi-SoSnj-a0-hr-b0-" -#define IWL_SNJ_A_JF_B_FW_PRE "iwlwifi-SoSnj-a0-jf-b0-" -#define IWL_MA_A_HR_B_FW_PRE "iwlwifi-ma-a0-hr-b0-" -#define IWL_MA_A_GF_A_FW_PRE "iwlwifi-ma-a0-gf-a0-" -#define IWL_MA_A_GF4_A_FW_PRE "iwlwifi-ma-a0-gf4-a0-" -#define IWL_MA_A_MR_A_FW_PRE "iwlwifi-ma-a0-mr-a0-" -#define IWL_MA_A_FM_A_FW_PRE "iwlwifi-ma-a0-fm-a0-" -#define IWL_SNJ_A_MR_A_FW_PRE "iwlwifi-SoSnj-a0-mr-a0-" -#define IWL_BZ_A_HR_B_FW_PRE "iwlwifi-bz-a0-hr-b0-" -#define IWL_BZ_A_GF_A_FW_PRE "iwlwifi-bz-a0-gf-a0-" -#define IWL_BZ_A_GF4_A_FW_PRE "iwlwifi-bz-a0-gf4-a0-" -#define IWL_BZ_A_MR_A_FW_PRE "iwlwifi-bz-a0-mr-a0-" -#define IWL_BZ_A_FM_A_FW_PRE "iwlwifi-bz-a0-fm-a0-" -#define IWL_GL_A_FM_A_FW_PRE "iwlwifi-gl-a0-fm-a0-" -#define IWL_BZ_Z_GF_A_FW_PRE "iwlwifi-bz-z0-gf-a0-" -#define IWL_BNJ_A_FM_A_FW_PRE "iwlwifi-BzBnj-a0-fm-a0-" -#define IWL_BNJ_A_FM4_A_FW_PRE "iwlwifi-BzBnj-a0-fm4-a0-" -#define IWL_BNJ_A_GF_A_FW_PRE "iwlwifi-BzBnj-a0-gf-a0-" -#define IWL_BNJ_A_GF4_A_FW_PRE "iwlwifi-BzBnj-a0-gf4-a0-" -#define IWL_BNJ_A_HR_B_FW_PRE "iwlwifi-BzBnj-a0-hr-b0-" - +#define IWL_QU_B_HR_B_FW_PRE "iwlwifi-Qu-b0-hr-b0" +#define IWL_QU_C_HR_B_FW_PRE "iwlwifi-Qu-c0-hr-b0" +#define IWL_QU_B_JF_B_FW_PRE "iwlwifi-Qu-b0-jf-b0" +#define IWL_QU_C_JF_B_FW_PRE "iwlwifi-Qu-c0-jf-b0" +#define IWL_QUZ_A_HR_B_FW_PRE "iwlwifi-QuZ-a0-hr-b0" +#define IWL_QUZ_A_JF_B_FW_PRE "iwlwifi-QuZ-a0-jf-b0" +#define IWL_CC_A_FW_PRE "iwlwifi-cc-a0" #define IWL_QU_B_HR_B_MODULE_FIRMWARE(api) \ - IWL_QU_B_HR_B_FW_PRE __stringify(api) ".ucode" -#define IWL_QNJ_B_HR_B_MODULE_FIRMWARE(api) \ - IWL_QNJ_B_HR_B_FW_PRE __stringify(api) ".ucode" + IWL_QU_B_HR_B_FW_PRE "-" __stringify(api) ".ucode" #define IWL_QUZ_A_HR_B_MODULE_FIRMWARE(api) \ - IWL_QUZ_A_HR_B_FW_PRE __stringify(api) ".ucode" + IWL_QUZ_A_HR_B_FW_PRE "-" __stringify(api) ".ucode" #define IWL_QUZ_A_JF_B_MODULE_FIRMWARE(api) \ - IWL_QUZ_A_JF_B_FW_PRE __stringify(api) ".ucode" + IWL_QUZ_A_JF_B_FW_PRE "-" __stringify(api) ".ucode" #define IWL_QU_C_HR_B_MODULE_FIRMWARE(api) \ - IWL_QU_C_HR_B_FW_PRE __stringify(api) ".ucode" + IWL_QU_C_HR_B_FW_PRE "-" __stringify(api) ".ucode" #define IWL_QU_B_JF_B_MODULE_FIRMWARE(api) \ - IWL_QU_B_JF_B_FW_PRE __stringify(api) ".ucode" -#define IWL_QNJ_B_JF_B_MODULE_FIRMWARE(api) \ - IWL_QNJ_B_JF_B_FW_PRE __stringify(api) ".ucode" + IWL_QU_B_JF_B_FW_PRE "-" __stringify(api) ".ucode" #define IWL_CC_A_MODULE_FIRMWARE(api) \ - IWL_CC_A_FW_PRE __stringify(api) ".ucode" -#define IWL_SO_A_JF_B_MODULE_FIRMWARE(api) \ - IWL_SO_A_JF_B_FW_PRE __stringify(api) ".ucode" -#define IWL_SO_A_HR_B_MODULE_FIRMWARE(api) \ - IWL_SO_A_HR_B_FW_PRE __stringify(api) ".ucode" -#define IWL_SO_A_GF_A_MODULE_FIRMWARE(api) \ - IWL_SO_A_GF_A_FW_PRE __stringify(api) ".ucode" -#define IWL_TY_A_GF_A_MODULE_FIRMWARE(api) \ - IWL_TY_A_GF_A_FW_PRE __stringify(api) ".ucode" -#define IWL_SNJ_A_GF4_A_MODULE_FIRMWARE(api) \ - IWL_SNJ_A_GF4_A_FW_PRE __stringify(api) ".ucode" -#define IWL_SNJ_A_GF_A_MODULE_FIRMWARE(api) \ - IWL_SNJ_A_GF_A_FW_PRE __stringify(api) ".ucode" -#define IWL_SNJ_A_HR_B_MODULE_FIRMWARE(api) \ - IWL_SNJ_A_HR_B_FW_PRE __stringify(api) ".ucode" -#define IWL_SNJ_A_JF_B_MODULE_FIRMWARE(api) \ - IWL_SNJ_A_JF_B_FW_PRE __stringify(api) ".ucode" -#define IWL_MA_A_HR_B_FW_MODULE_FIRMWARE(api) \ - IWL_MA_A_HR_B_FW_PRE __stringify(api) ".ucode" -#define IWL_MA_A_GF_A_FW_MODULE_FIRMWARE(api) \ - IWL_MA_A_GF_A_FW_PRE __stringify(api) ".ucode" -#define IWL_MA_A_GF4_A_FW_MODULE_FIRMWARE(api) \ - IWL_MA_A_GF4_A_FW_PRE __stringify(api) ".ucode" -#define IWL_MA_A_MR_A_FW_MODULE_FIRMWARE(api) \ - IWL_MA_A_MR_A_FW_PRE __stringify(api) ".ucode" -#define IWL_MA_A_FM_A_FW_MODULE_FIRMWARE(api) \ - IWL_MA_A_FM_A_FW_PRE __stringify(api) ".ucode" -#define IWL_SNJ_A_MR_A_MODULE_FIRMWARE(api) \ - IWL_SNJ_A_MR_A_FW_PRE __stringify(api) ".ucode" -#define IWL_BZ_A_HR_B_MODULE_FIRMWARE(api) \ - IWL_BZ_A_HR_B_FW_PRE __stringify(api) ".ucode" -#define IWL_BZ_A_GF_A_MODULE_FIRMWARE(api) \ - IWL_BZ_A_GF_A_FW_PRE __stringify(api) ".ucode" -#define IWL_BZ_A_GF4_A_MODULE_FIRMWARE(api) \ - IWL_BZ_A_GF4_A_FW_PRE __stringify(api) ".ucode" -#define IWL_BZ_A_MR_A_MODULE_FIRMWARE(api) \ - IWL_BZ_A_MR_A_FW_PRE __stringify(api) ".ucode" -#define IWL_BZ_A_FM_A_MODULE_FIRMWARE(api) \ - IWL_BZ_A_FM_A_FW_PRE __stringify(api) ".ucode" -#define IWL_GL_A_FM_A_MODULE_FIRMWARE(api) \ - IWL_GL_A_FM_A_FW_PRE __stringify(api) ".ucode" -#define IWL_BNJ_A_FM_A_MODULE_FIRMWARE(api) \ - IWL_BNJ_A_FM_A_FW_PRE __stringify(api) ".ucode" -#define IWL_BNJ_A_FM4_A_MODULE_FIRMWARE(api) \ - IWL_BNJ_A_FM4_A_FW_PRE __stringify(api) ".ucode" -#define IWL_BNJ_A_GF_A_MODULE_FIRMWARE(api) \ - IWL_BNJ_A_GF_A_FW_PRE __stringify(api) ".ucode" -#define IWL_BNJ_A_GF4_A_MODULE_FIRMWARE(api) \ - IWL_BNJ_A_GF4_A_FW_PRE __stringify(api) ".ucode" -#define IWL_BNJ_A_HR_B_MODULE_FIRMWARE(api) \ - IWL_BNJ_A_HR_B_FW_PRE __stringify(api) ".ucode" + IWL_CC_A_FW_PRE "-" __stringify(api) ".ucode" static const struct iwl_base_params iwl_22000_base_params = { .eeprom_size = OTP_LOW_IMAGE_SIZE_32K, @@ -144,19 +59,7 @@ static const struct iwl_base_params iwl_22000_base_params = { .pcie_l1_allowed = true, }; -static const struct iwl_base_params iwl_ax210_base_params = { - .eeprom_size = OTP_LOW_IMAGE_SIZE_32K, - .num_of_queues = 512, - .max_tfd_queue_size = 65536, - .shadow_ram_support = true, - .led_compensation = 57, - .wd_timeout = IWL_LONG_WD_TIMEOUT, - .max_event_log_size = 512, - .shadow_reg_enable = true, - .pcie_l1_allowed = true, -}; - -static const struct iwl_ht_params iwl_22000_ht_params = { +const struct iwl_ht_params iwl_22000_ht_params = { .stbc = true, .ldpc = true, .ht40_bands = BIT(NL80211_BAND_2GHZ) | BIT(NL80211_BAND_5GHZ) | @@ -164,7 +67,6 @@ static const struct iwl_ht_params iwl_22000_ht_params = { }; #define IWL_DEVICE_22000_COMMON \ - .ucode_api_max = IWL_22000_UCODE_API_MAX, \ .ucode_api_min = IWL_22000_UCODE_API_MIN, \ .led_mode = IWL_LED_RF_STATE, \ .nvm_hw_section_num = 10, \ @@ -182,7 +84,6 @@ static const struct iwl_ht_params iwl_22000_ht_params = { .mac_addr_from_csr = 0x380, \ .ht_params = &iwl_22000_ht_params, \ .nvm_ver = IWL_22000_NVM_VERSION, \ - .trans.use_tfh = true, \ .trans.rf_id = true, \ .trans.gen2 = true, \ .nvm_type = IWL_NVM_EXT, \ @@ -203,6 +104,7 @@ static const struct iwl_ht_params iwl_22000_ht_params = { #define IWL_DEVICE_22500 \ IWL_DEVICE_22000_COMMON, \ + .ucode_api_max = IWL_22000_UCODE_API_MAX, \ .trans.device_family = IWL_DEVICE_FAMILY_22000, \ .trans.base_params = &iwl_22000_base_params, \ .gp2_reg_addr = 0xa02c68, \ @@ -217,108 +119,8 @@ static const struct iwl_ht_params iwl_22000_ht_params = { }, \ } -#define IWL_DEVICE_AX210 \ - IWL_DEVICE_22000_COMMON, \ - .trans.umac_prph_offset = 0x300000, \ - .trans.device_family = IWL_DEVICE_FAMILY_AX210, \ - .trans.base_params = &iwl_ax210_base_params, \ - .min_txq_size = 128, \ - .gp2_reg_addr = 0xd02c68, \ - .min_ba_txq_size = IWL_DEFAULT_QUEUE_SIZE_HE, \ - .mon_dram_regs = { \ - .write_ptr = { \ - .addr = DBGC_CUR_DBGBUF_STATUS, \ - .mask = DBGC_CUR_DBGBUF_STATUS_OFFSET_MSK, \ - }, \ - .cycle_cnt = { \ - .addr = DBGC_DBGBUF_WRAP_AROUND, \ - .mask = 0xffffffff, \ - }, \ - .cur_frag = { \ - .addr = DBGC_CUR_DBGBUF_STATUS, \ - .mask = DBGC_CUR_DBGBUF_STATUS_IDX_MSK, \ - }, \ - } - -#define IWL_DEVICE_BZ_COMMON \ - .ucode_api_max = IWL_22000_UCODE_API_MAX, \ - .ucode_api_min = IWL_22000_UCODE_API_MIN, \ - .led_mode = IWL_LED_RF_STATE, \ - .nvm_hw_section_num = 10, \ - .non_shared_ant = ANT_B, \ - .dccm_offset = IWL_22000_DCCM_OFFSET, \ - .dccm_len = IWL_22000_DCCM_LEN, \ - .dccm2_offset = IWL_22000_DCCM2_OFFSET, \ - .dccm2_len = IWL_22000_DCCM2_LEN, \ - .smem_offset = IWL_22000_SMEM_OFFSET, \ - .smem_len = IWL_22000_SMEM_LEN, \ - .features = IWL_TX_CSUM_NETIF_FLAGS_BZ | NETIF_F_RXCSUM, \ - .apmg_not_supported = true, \ - .trans.mq_rx_supported = true, \ - .vht_mu_mimo_supported = true, \ - .mac_addr_from_csr = 0x30, \ - .ht_params = &iwl_22000_ht_params, \ - .nvm_ver = IWL_22000_NVM_VERSION, \ - .trans.use_tfh = true, \ - .trans.rf_id = true, \ - .trans.gen2 = true, \ - .nvm_type = IWL_NVM_EXT, \ - .dbgc_supported = true, \ - .min_umac_error_event_table = 0x400000, \ - .d3_debug_data_base_addr = 0x401000, \ - .d3_debug_data_length = 60 * 1024, \ - .mon_smem_regs = { \ - .write_ptr = { \ - .addr = LDBG_M2S_BUF_WPTR, \ - .mask = LDBG_M2S_BUF_WPTR_VAL_MSK, \ - }, \ - .cycle_cnt = { \ - .addr = LDBG_M2S_BUF_WRAP_CNT, \ - .mask = LDBG_M2S_BUF_WRAP_CNT_VAL_MSK, \ - }, \ - } - -#define IWL_DEVICE_BZ \ - IWL_DEVICE_BZ_COMMON, \ - .trans.umac_prph_offset = 0x300000, \ - .trans.device_family = IWL_DEVICE_FAMILY_BZ, \ - .trans.base_params = &iwl_ax210_base_params, \ - .min_txq_size = 128, \ - .gp2_reg_addr = 0xd02c68, \ - .min_ba_txq_size = IWL_DEFAULT_QUEUE_SIZE_EHT, \ - .mon_dram_regs = { \ - .write_ptr = { \ - .addr = DBGC_CUR_DBGBUF_STATUS, \ - .mask = DBGC_CUR_DBGBUF_STATUS_OFFSET_MSK, \ - }, \ - .cycle_cnt = { \ - .addr = DBGC_DBGBUF_WRAP_AROUND, \ - .mask = 0xffffffff, \ - }, \ - .cur_frag = { \ - .addr = DBGC_CUR_DBGBUF_STATUS, \ - .mask = DBGC_CUR_DBGBUF_STATUS_IDX_MSK, \ - }, \ - }, \ - .mon_dbgi_regs = { \ - .write_ptr = { \ - .addr = DBGI_SRAM_FIFO_POINTERS, \ - .mask = DBGI_SRAM_FIFO_POINTERS_WR_PTR_MSK, \ - }, \ - } - -const struct iwl_cfg_trans_params iwl_qnj_trans_cfg = { - .mq_rx_supported = true, - .use_tfh = true, - .rf_id = true, - .gen2 = true, - .device_family = IWL_DEVICE_FAMILY_22000, - .base_params = &iwl_22000_base_params, -}; - const struct iwl_cfg_trans_params iwl_qu_trans_cfg = { .mq_rx_supported = true, - .use_tfh = true, .rf_id = true, .gen2 = true, .device_family = IWL_DEVICE_FAMILY_22000, @@ -330,7 +132,6 @@ const struct iwl_cfg_trans_params iwl_qu_trans_cfg = { const struct iwl_cfg_trans_params iwl_qu_medium_latency_trans_cfg = { .mq_rx_supported = true, - .use_tfh = true, .rf_id = true, .gen2 = true, .device_family = IWL_DEVICE_FAMILY_22000, @@ -342,7 +143,6 @@ const struct iwl_cfg_trans_params iwl_qu_medium_latency_trans_cfg = { const struct iwl_cfg_trans_params iwl_qu_long_latency_trans_cfg = { .mq_rx_supported = true, - .use_tfh = true, .rf_id = true, .gen2 = true, .device_family = IWL_DEVICE_FAMILY_22000, @@ -353,59 +153,6 @@ const struct iwl_cfg_trans_params iwl_qu_long_latency_trans_cfg = { .ltr_delay = IWL_CFG_TRANS_LTR_DELAY_2500US, }; -const struct iwl_cfg_trans_params iwl_snj_trans_cfg = { - .mq_rx_supported = true, - .use_tfh = true, - .rf_id = true, - .gen2 = true, - .device_family = IWL_DEVICE_FAMILY_AX210, - .base_params = &iwl_ax210_base_params, - .umac_prph_offset = 0x300000, -}; - -const struct iwl_cfg_trans_params iwl_so_trans_cfg = { - .mq_rx_supported = true, - .use_tfh = true, - .rf_id = true, - .gen2 = true, - .device_family = IWL_DEVICE_FAMILY_AX210, - .base_params = &iwl_ax210_base_params, - .umac_prph_offset = 0x300000, - .integrated = true, - /* TODO: the following values need to be checked */ - .xtal_latency = 500, - .ltr_delay = IWL_CFG_TRANS_LTR_DELAY_200US, -}; - -const struct iwl_cfg_trans_params iwl_so_long_latency_trans_cfg = { - .mq_rx_supported = true, - .use_tfh = true, - .rf_id = true, - .gen2 = true, - .device_family = IWL_DEVICE_FAMILY_AX210, - .base_params = &iwl_ax210_base_params, - .umac_prph_offset = 0x300000, - .integrated = true, - .low_latency_xtal = true, - .xtal_latency = 12000, - .ltr_delay = IWL_CFG_TRANS_LTR_DELAY_2500US, -}; - -const struct iwl_cfg_trans_params iwl_so_long_latency_imr_trans_cfg = { - .mq_rx_supported = true, - .use_tfh = true, - .rf_id = true, - .gen2 = true, - .device_family = IWL_DEVICE_FAMILY_AX210, - .base_params = &iwl_ax210_base_params, - .umac_prph_offset = 0x300000, - .integrated = true, - .low_latency_xtal = true, - .xtal_latency = 12000, - .ltr_delay = IWL_CFG_TRANS_LTR_DELAY_2500US, - .imr_enabled = true, -}; - /* * If the device doesn't support HE, no need to have that many buffers. * 22000 devices can split multiple frames into a single RB, so fewer are @@ -415,7 +162,6 @@ const struct iwl_cfg_trans_params iwl_so_long_latency_imr_trans_cfg = { */ #define IWL_NUM_RBDS_NON_HE 512 #define IWL_NUM_RBDS_22000_HE 2048 -#define IWL_NUM_RBDS_AX210_HE 4096 /* * All JF radio modules are part of the 9000 series, but the MAC part @@ -446,63 +192,20 @@ const struct iwl_cfg iwl9560_quz_a0_jf_b0_cfg = { .num_rbds = IWL_NUM_RBDS_NON_HE, }; -const struct iwl_cfg iwl9560_qnj_b0_jf_b0_cfg = { - .fw_name_pre = IWL_QNJ_B_JF_B_FW_PRE, - IWL_DEVICE_22500, - /* - * This device doesn't support receiving BlockAck with a large bitmap - * so we need to restrict the size of transmitted aggregation to the - * HT size; mac80211 would otherwise pick the HE max (256) by default. - */ - .max_tx_agg_size = IEEE80211_MAX_AMPDU_BUF_HT, - .num_rbds = IWL_NUM_RBDS_NON_HE, -}; - const struct iwl_cfg_trans_params iwl_ax200_trans_cfg = { .device_family = IWL_DEVICE_FAMILY_22000, .base_params = &iwl_22000_base_params, .mq_rx_supported = true, - .use_tfh = true, .rf_id = true, .gen2 = true, .bisr_workaround = 1, }; -const struct iwl_cfg_trans_params iwl_ma_trans_cfg = { - .device_family = IWL_DEVICE_FAMILY_AX210, - .base_params = &iwl_ax210_base_params, - .mq_rx_supported = true, - .use_tfh = true, - .rf_id = true, - .gen2 = true, - .integrated = true, - .umac_prph_offset = 0x300000 -}; - -const struct iwl_cfg_trans_params iwl_bz_trans_cfg = { - .device_family = IWL_DEVICE_FAMILY_BZ, - .base_params = &iwl_ax210_base_params, - .mq_rx_supported = true, - .use_tfh = true, - .rf_id = true, - .gen2 = true, - .integrated = true, - .umac_prph_offset = 0x300000, - .xtal_latency = 12000, - .low_latency_xtal = true, - .ltr_delay = IWL_CFG_TRANS_LTR_DELAY_2500US, -}; - const char iwl_ax101_name[] = "Intel(R) Wi-Fi 6 AX101"; const char iwl_ax200_name[] = "Intel(R) Wi-Fi 6 AX200 160MHz"; const char iwl_ax201_name[] = "Intel(R) Wi-Fi 6 AX201 160MHz"; const char iwl_ax203_name[] = "Intel(R) Wi-Fi 6 AX203"; const char iwl_ax204_name[] = "Intel(R) Wi-Fi 6 AX204 160MHz"; -const char iwl_ax211_name[] = "Intel(R) Wi-Fi 6E AX211 160MHz"; -const char iwl_ax221_name[] = "Intel(R) Wi-Fi 6E AX221 160MHz"; -const char iwl_ax231_name[] = "Intel(R) Wi-Fi 6E AX231 160MHz"; -const char iwl_ax411_name[] = "Intel(R) Wi-Fi 6E AX411 160MHz"; -const char iwl_bz_name[] = "Intel(R) TBD Bz device"; const char iwl_ax200_killer_1650w_name[] = "Killer(R) Wi-Fi 6 AX1650w 160MHz Wireless Network Adapter (200D2W)"; @@ -512,18 +215,6 @@ const char iwl_ax201_killer_1650s_name[] = "Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201D2W)"; const char iwl_ax201_killer_1650i_name[] = "Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW)"; -const char iwl_ax210_killer_1675w_name[] = - "Killer(R) Wi-Fi 6E AX1675w 160MHz Wireless Network Adapter (210D2W)"; -const char iwl_ax210_killer_1675x_name[] = - "Killer(R) Wi-Fi 6E AX1675x 160MHz Wireless Network Adapter (210NGW)"; -const char iwl_ax211_killer_1675s_name[] = - "Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW)"; -const char iwl_ax211_killer_1675i_name[] = - "Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW)"; -const char iwl_ax411_killer_1690s_name[] = - "Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W)"; -const char iwl_ax411_killer_1690i_name[] = - "Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW)"; const struct iwl_cfg iwl_qu_b0_hr1_b0 = { .fw_name_pre = IWL_QU_B_HR_B_FW_PRE, @@ -717,168 +408,6 @@ const struct iwl_cfg killer1650i_2ax_cfg_qu_c0_hr_b0 = { .num_rbds = IWL_NUM_RBDS_22000_HE, }; -const struct iwl_cfg iwl_qnj_b0_hr_b0_cfg = { - .fw_name_pre = IWL_QNJ_B_HR_B_FW_PRE, - IWL_DEVICE_22500, - /* - * This device doesn't support receiving BlockAck with a large bitmap - * so we need to restrict the size of transmitted aggregation to the - * HT size; mac80211 would otherwise pick the HE max (256) by default. - */ - .max_tx_agg_size = IEEE80211_MAX_AMPDU_BUF_HT, - .num_rbds = IWL_NUM_RBDS_22000_HE, -}; - -const struct iwl_cfg iwlax210_2ax_cfg_so_jf_b0 = { - .name = "Intel(R) Wireless-AC 9560 160MHz", - .fw_name_pre = IWL_SO_A_JF_B_FW_PRE, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_NON_HE, -}; - -const struct iwl_cfg iwlax211_2ax_cfg_so_gf_a0 = { - .name = iwl_ax211_name, - .fw_name_pre = IWL_SO_A_GF_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwlax211_2ax_cfg_so_gf_a0_long = { - .name = iwl_ax211_name, - .fw_name_pre = IWL_SO_A_GF_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, - .trans.xtal_latency = 12000, - .trans.low_latency_xtal = true, -}; - -const struct iwl_cfg iwlax210_2ax_cfg_ty_gf_a0 = { - .name = "Intel(R) Wi-Fi 6 AX210 160MHz", - .fw_name_pre = IWL_TY_A_GF_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwlax411_2ax_cfg_so_gf4_a0 = { - .name = iwl_ax411_name, - .fw_name_pre = IWL_SO_A_GF4_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwlax411_2ax_cfg_so_gf4_a0_long = { - .name = iwl_ax411_name, - .fw_name_pre = IWL_SO_A_GF4_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, - .trans.xtal_latency = 12000, - .trans.low_latency_xtal = true, -}; - -const struct iwl_cfg iwlax411_2ax_cfg_sosnj_gf4_a0 = { - .name = iwl_ax411_name, - .fw_name_pre = IWL_SNJ_A_GF4_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwlax211_cfg_snj_gf_a0 = { - .name = iwl_ax211_name, - .fw_name_pre = IWL_SNJ_A_GF_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_snj_hr_b0 = { - .fw_name_pre = IWL_SNJ_A_HR_B_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_snj_a0_jf_b0 = { - .fw_name_pre = IWL_SNJ_A_JF_B_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_ma_a0_hr_b0 = { - .fw_name_pre = IWL_MA_A_HR_B_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_ma_a0_gf_a0 = { - .fw_name_pre = IWL_MA_A_GF_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_ma_a0_gf4_a0 = { - .fw_name_pre = IWL_MA_A_GF4_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_ma_a0_mr_a0 = { - .fw_name_pre = IWL_MA_A_MR_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_ma_a0_ms_a0 = { - .fw_name_pre = IWL_MA_A_MR_A_FW_PRE, - .uhb_supported = false, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_so_a0_ms_a0 = { - .fw_name_pre = IWL_SO_A_MR_A_FW_PRE, - .uhb_supported = false, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_ma_a0_fm_a0 = { - .fw_name_pre = IWL_MA_A_FM_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_snj_a0_mr_a0 = { - .fw_name_pre = IWL_SNJ_A_MR_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_snj_a0_ms_a0 = { - .fw_name_pre = IWL_SNJ_A_MR_A_FW_PRE, - .uhb_supported = false, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_so_a0_hr_a0 = { - .fw_name_pre = IWL_SO_A_HR_B_FW_PRE, - IWL_DEVICE_AX210, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - const struct iwl_cfg iwl_cfg_quz_a0_hr_b0 = { .fw_name_pre = IWL_QUZ_A_HR_B_FW_PRE, IWL_DEVICE_22500, @@ -891,119 +420,9 @@ const struct iwl_cfg iwl_cfg_quz_a0_hr_b0 = { .num_rbds = IWL_NUM_RBDS_22000_HE, }; -const struct iwl_cfg iwl_cfg_bz_a0_hr_b0 = { - .fw_name_pre = IWL_BZ_A_HR_B_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_BZ, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_bz_a0_gf_a0 = { - .fw_name_pre = IWL_BZ_A_GF_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_BZ, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_bz_a0_gf4_a0 = { - .fw_name_pre = IWL_BZ_A_GF4_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_BZ, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_bz_a0_mr_a0 = { - .fw_name_pre = IWL_BZ_A_MR_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_BZ, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_bz_a0_fm_a0 = { - .fw_name_pre = IWL_BZ_A_FM_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_BZ, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_gl_a0_fm_a0 = { - .fw_name_pre = IWL_GL_A_FM_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_BZ, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_bz_z0_gf_a0 = { - .fw_name_pre = IWL_BZ_Z_GF_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_BZ, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_bnj_a0_fm_a0 = { - .fw_name_pre = IWL_BNJ_A_FM_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_BZ, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_bnj_a0_fm4_a0 = { - .fw_name_pre = IWL_BNJ_A_FM4_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_BZ, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_bnj_a0_gf_a0 = { - .fw_name_pre = IWL_BNJ_A_GF_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_BZ, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_bnj_a0_gf4_a0 = { - .fw_name_pre = IWL_BNJ_A_GF4_A_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_BZ, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; - -const struct iwl_cfg iwl_cfg_bnj_a0_hr_b0 = { - .fw_name_pre = IWL_BNJ_A_HR_B_FW_PRE, - .uhb_supported = true, - IWL_DEVICE_BZ, - .num_rbds = IWL_NUM_RBDS_AX210_HE, -}; MODULE_FIRMWARE(IWL_QU_B_HR_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_QNJ_B_HR_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); MODULE_FIRMWARE(IWL_QU_C_HR_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); MODULE_FIRMWARE(IWL_QU_B_JF_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); MODULE_FIRMWARE(IWL_QUZ_A_HR_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); MODULE_FIRMWARE(IWL_QUZ_A_JF_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_QNJ_B_JF_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); MODULE_FIRMWARE(IWL_CC_A_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_SO_A_JF_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_SO_A_HR_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_SO_A_GF_A_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_TY_A_GF_A_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_SNJ_A_GF4_A_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_SNJ_A_GF_A_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_SNJ_A_HR_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_SNJ_A_JF_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_MA_A_HR_B_FW_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_MA_A_GF_A_FW_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_MA_A_GF4_A_FW_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_MA_A_MR_A_FW_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_MA_A_FM_A_FW_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_SNJ_A_MR_A_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_BZ_A_HR_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_BZ_A_GF_A_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_BZ_A_GF4_A_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_BZ_A_MR_A_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_BZ_A_FM_A_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_GL_A_FM_A_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_BNJ_A_FM_A_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_BNJ_A_FM4_A_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_BNJ_A_GF_A_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_BNJ_A_GF4_A_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); -MODULE_FIRMWARE(IWL_BNJ_A_HR_B_MODULE_FIRMWARE(IWL_22000_UCODE_API_MAX)); diff --git a/sys/contrib/dev/iwlwifi/cfg/7000.c b/sys/contrib/dev/iwlwifi/cfg/7000.c index b24dc5523a52..4e2afdedf4c6 100644 --- a/sys/contrib/dev/iwlwifi/cfg/7000.c +++ b/sys/contrib/dev/iwlwifi/cfg/7000.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause /* - * Copyright (C) 2012-2014, 2018-2020 Intel Corporation + * Copyright (C) 2012-2014, 2018-2020, 2023 Intel Corporation * Copyright (C) 2013-2014 Intel Mobile Communications GmbH * Copyright (C) 2015 Intel Deutschland GmbH */ @@ -34,20 +34,20 @@ #define IWL3160_DCCM_LEN 0x10000 #define IWL7265_DCCM_LEN 0x17A00 -#define IWL7260_FW_PRE "iwlwifi-7260-" -#define IWL7260_MODULE_FIRMWARE(api) IWL7260_FW_PRE __stringify(api) ".ucode" +#define IWL7260_FW_PRE "iwlwifi-7260" +#define IWL7260_MODULE_FIRMWARE(api) IWL7260_FW_PRE "-" __stringify(api) ".ucode" -#define IWL3160_FW_PRE "iwlwifi-3160-" -#define IWL3160_MODULE_FIRMWARE(api) IWL3160_FW_PRE __stringify(api) ".ucode" +#define IWL3160_FW_PRE "iwlwifi-3160" +#define IWL3160_MODULE_FIRMWARE(api) IWL3160_FW_PRE "-" __stringify(api) ".ucode" -#define IWL3168_FW_PRE "iwlwifi-3168-" -#define IWL3168_MODULE_FIRMWARE(api) IWL3168_FW_PRE __stringify(api) ".ucode" +#define IWL3168_FW_PRE "iwlwifi-3168" +#define IWL3168_MODULE_FIRMWARE(api) IWL3168_FW_PRE "-" __stringify(api) ".ucode" -#define IWL7265_FW_PRE "iwlwifi-7265-" -#define IWL7265_MODULE_FIRMWARE(api) IWL7265_FW_PRE __stringify(api) ".ucode" +#define IWL7265_FW_PRE "iwlwifi-7265" +#define IWL7265_MODULE_FIRMWARE(api) IWL7265_FW_PRE "-" __stringify(api) ".ucode" -#define IWL7265D_FW_PRE "iwlwifi-7265D-" -#define IWL7265D_MODULE_FIRMWARE(api) IWL7265D_FW_PRE __stringify(api) ".ucode" +#define IWL7265D_FW_PRE "iwlwifi-7265D" +#define IWL7265D_MODULE_FIRMWARE(api) IWL7265D_FW_PRE "-" __stringify(api) ".ucode" static const struct iwl_base_params iwl7000_base_params = { .eeprom_size = OTP_LOW_IMAGE_SIZE_16K, diff --git a/sys/contrib/dev/iwlwifi/cfg/8000.c b/sys/contrib/dev/iwlwifi/cfg/8000.c index a6454287d506..d09cf8d7dc01 100644 --- a/sys/contrib/dev/iwlwifi/cfg/8000.c +++ b/sys/contrib/dev/iwlwifi/cfg/8000.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause /* - * Copyright (C) 2014, 2018-2020 Intel Corporation + * Copyright (C) 2014, 2018-2020, 2023 Intel Corporation * Copyright (C) 2014-2015 Intel Mobile Communications GmbH * Copyright (C) 2016 Intel Deutschland GmbH */ @@ -27,13 +27,13 @@ #define IWL8260_SMEM_OFFSET 0x400000 #define IWL8260_SMEM_LEN 0x68000 -#define IWL8000_FW_PRE "iwlwifi-8000C-" +#define IWL8000_FW_PRE "iwlwifi-8000C" #define IWL8000_MODULE_FIRMWARE(api) \ - IWL8000_FW_PRE __stringify(api) ".ucode" + IWL8000_FW_PRE "-" __stringify(api) ".ucode" -#define IWL8265_FW_PRE "iwlwifi-8265-" +#define IWL8265_FW_PRE "iwlwifi-8265" #define IWL8265_MODULE_FIRMWARE(api) \ - IWL8265_FW_PRE __stringify(api) ".ucode" + IWL8265_FW_PRE "-" __stringify(api) ".ucode" #define DEFAULT_NVM_FILE_FAMILY_8000C "nvmData-8000C" diff --git a/sys/contrib/dev/iwlwifi/cfg/9000.c b/sys/contrib/dev/iwlwifi/cfg/9000.c index 7a7ca06d46c1..0130d9a9b78b 100644 --- a/sys/contrib/dev/iwlwifi/cfg/9000.c +++ b/sys/contrib/dev/iwlwifi/cfg/9000.c @@ -1,7 +1,7 @@ // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause /* * Copyright (C) 2015-2017 Intel Deutschland GmbH - * Copyright (C) 2018-2021 Intel Corporation + * Copyright (C) 2018-2021, 2023 Intel Corporation *** 31087 LINES SKIPPED *** From nobody Mon Oct 9 23:16:21 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FK21rPqz4wgkk; Mon, 9 Oct 2023 23:16:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4FK213cxz3QqT; Mon, 9 Oct 2023 23:16:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893382; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7FISqBxpOOxpptV8GiJYEQJWIf+cjIUhuo7SeXr8QKM=; b=Zjds0CL3di4CDPfyPiwtpSG2EgbhvuUEzxEvYQofGSHjoe9nLc1BLodCG//WA6fP4Vrq1A 1tfO9irXfc6bIrResCOLsX+y+98+xdPg42U9kej7s6jMIfSn6EmGVnIUo0my0Kkkl/N/Dj uBdVwjLFPX3q51SszEBSp0LxSQjdNkOQByvb3uEq7WQF4s6Gt2F5SaNVnglLIArBD3UXR8 i/DPttcYQGRAcvOHgXZvrH/ETCaJr9T3nCbV8OC/FJvHQVCXn7TJbeXATdeT/fQsI4zXCf VGfDJX6zGKWdCLLgv/rw1mK6AnSjR26UgRSWSiQsajvWHybZ4GZAI4TKuUbU3g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893382; a=rsa-sha256; cv=none; b=bG+uYqQSvTpD3QbJMLtD3XS2fvXnqbm6OZ/fvzCSsiMp1UTvVgrBd9dls/pmV1Akv1fCtp hPdquTOCyp7ZHTfryrczLjKymMg3aDYJPCOTPKN2SzJdEntxsHPCurjJk8YrZjaqKFYBSu wEWZZaZseiJw6ayguOuZ6NqrPPocoEyvRaFshXYwT6fnX3/Vg+Y+f5WjLxttTP6iaO+i6A u6xko5+QkHkiAyc2eZE67rgHpqwA4I54Ypm1BugJgJnx4qJ/77b8Waq/IypKye250xXE+t Ez8HJ7pq5lG/YgRen8/k8spYG9/7jyCDldj5LAUh6xhfzU95dN7WHOrGX/P45g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893382; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7FISqBxpOOxpptV8GiJYEQJWIf+cjIUhuo7SeXr8QKM=; b=yrn26DgVqPnzA7FMY/vqWLYHFkNZoA+kiRTi7ku1GLf56U9DznH7zwslZHTp6pF1RNulUV Rb+OgXW4gf/lX/xgi3NhR8nyb7Q2T42gJudj9GuAtzHQoqFk+e2lKoKR2/qpLFN5+FqFAR zUQhZ5IQ/lebZbzut7Zx2s3ly9O7l3kaB33oK7BBp5+wXsYXAtau5faYr7z1c4iLMRiX93 5jovHWQ4tdJU6obeQVWFSPGM89cqM6fcquhcYj5bXowFZLs3MOlOL2DKMnTUhR3qP23/g9 ASsFZbffvwdplX59VbXfTm38yCXaSvpY/qW+GMCI4Snd/e3nitkjnodsCEkRNw== 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 4S4FK209Cyzn6; Mon, 9 Oct 2023 23:16:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGLO1071572; Mon, 9 Oct 2023 23:16:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGLKR071569; Mon, 9 Oct 2023 23:16:21 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:21 GMT Message-Id: <202310092316.399NGLKR071569@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 0b2982dcef77 - releng/14.0 - LinuxKPI: 802.11: fix problem removing sta List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 0b2982dcef77584dadf4d6c0eae276c67c67e925 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=0b2982dcef77584dadf4d6c0eae276c67c67e925 commit 0b2982dcef77584dadf4d6c0eae276c67c67e925 Author: Bjoern A. Zeeb AuthorDate: 2023-09-30 07:59:48 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:54 +0000 LinuxKPI: 802.11: fix problem removing sta Move the call to lkpi_disassoc() before the state change to IEEE80211_STA_NOTEXIST which will remove the sta (from firmware). Based on a comment it seems that originally we had to do it the other way round. iwlwifi(4) has a check and will silently not remove the sta from the firmware when vif->cfg.assoc is still set (see iwl_mvm_sta_del()). This leads to the LinuxKPI 802.11 code thinking the sta is gone as downward state changes by the mac80211 op (*sta_state)() may not fail. Once we try to assoc with a newly added station later, iwlwifi firmware will run into an assert having two ap_sta set on the same vif. We can observe that problem in iwlwifi(4) having __le32 sta_id = 1 instead of sta_id = 0 in iwl_mvm_sta_cfg_cmd{} on the HCMD. This should fix one of the most seen problems with iwlwifi(4), e.g., when running service netif restart wlan0 or service wpa_supplicant restart wlan0. Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit 16e688b2a403a3dbc05de3b9f8a3132838613790) (cherry picked from commit 4e26de26431be8b830ef9d2d2397490b68437ddd) --- sys/compat/linuxkpi/common/src/linux_80211.c | 37 ++++++++++++++-------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index ac43b1248536..b3ee07a9bab9 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -1410,6 +1410,15 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i lkpi_lsta_dump(lsta, ni, __func__, __LINE__); + /* Update bss info (bss_info_changed) (assoc, aid, ..). */ + /* + * We need to do this now, before sta changes to IEEE80211_STA_NOTEXIST + * as otherwise drivers (iwlwifi at least) will silently not remove + * the sta from the firmware and when we will add a new one trigger + * a fw assert. + */ + lkpi_disassoc(sta, vif, lhw); + /* Adjust sta and change state (from NONE) to NOTEXIST. */ KASSERT(lsta != NULL, ("%s: ni %p lsta is NULL\n", __func__, ni)); KASSERT(lsta->state == IEEE80211_STA_NONE, ("%s: lsta %p state not " @@ -1419,15 +1428,8 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i IMPROVE("do we need to undo the chan ctx?"); goto out; } -#if 0 - lsta->added_to_drv = false; /* mo manages. */ -#endif - lkpi_lsta_dump(lsta, ni, __func__, __LINE__); - - /* Update bss info (bss_info_changed) (assoc, aid, ..). */ - /* We need to do this now, can only do after sta is IEEE80211_STA_NOTEXIST. */ - lkpi_disassoc(sta, vif, lhw); + lkpi_lsta_dump(lsta, ni, __func__, __LINE__); /* sta no longer save to use. */ IMPROVE("Any bss_info changes to announce?"); bss_changed = 0; @@ -1869,6 +1871,13 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int lkpi_lsta_dump(lsta, ni, __func__, __LINE__); + /* Update bss info (bss_info_changed) (assoc, aid, ..). */ + /* + * One would expect this to happen when going off AUTHORIZED. + * See comment there; removes the sta from fw. + */ + lkpi_disassoc(sta, vif, lhw); + /* Adjust sta and change state (from NONE) to NOTEXIST. */ KASSERT(lsta != NULL, ("%s: ni %p lsta is NULL\n", __func__, ni)); KASSERT(lsta->state == IEEE80211_STA_NONE, ("%s: lsta %p state not " @@ -1878,18 +1887,8 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int IMPROVE("do we need to undo the chan ctx?"); goto out; } -#if 0 - lsta->added_to_drv = false; /* mo manages. */ -#endif - lkpi_lsta_dump(lsta, ni, __func__, __LINE__); - - /* Update bss info (bss_info_changed) (assoc, aid, ..). */ - /* - * One would expect this to happen when going off AUTHORIZED. - * See comment there; removes the sta from fw. - */ - lkpi_disassoc(sta, vif, lhw); + lkpi_lsta_dump(lsta, ni, __func__, __LINE__); /* sta no longer save to use. */ IMPROVE("Any bss_info changes to announce?"); bss_changed = 0; From nobody Mon Oct 9 23:16:23 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FK334fpz4wgln; Mon, 9 Oct 2023 23:16: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 4S4FK328hxz3Qfq; Mon, 9 Oct 2023 23:16:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893383; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=i5PB59bVKR+aXS5KREMosq5Ay/gKA1SUmJt+68ibWHE=; b=qhERs4Yy/tavDeM3nvSip/hBNkNmjlFL8jzNz8fhHtlv278gLCBRMNcnXdt9ZYAf0R6Ew0 Ee9oT5DBiKkQrMCBvLMl/rPzcxfyu/M5yuXzKpLD/y+t+Z6x5KrcK/8Kbu5eZXClewSROw eYcK5lOgI8XUO88jaDsXqj1QYd3Nwc42noOWyRwpXmRUbi2h+vEDFPKVsAUlqT1WDo5sCB 8/2Xt0CX0DtHnYfKrPbNpvMLzi2QR8yu9Ejqe31zKwKxRB6nj/BVO4YgtgK12Fyit0lhrS eHkoE60gf80OQPCiaLiSZytyoroXh88AmVGEKWp+EjWdC/kRo+JAmQOb61V42Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893383; a=rsa-sha256; cv=none; b=El3ZmLsvjaMB8K5Zmdva3RcUFAf+8nx+ARDwzgsO92PvScIGH2BqtI3N7BEbnQEH/XhPAp /2KCh7h14m/r3OsmmctlkCz9pVYMrNYzR82UlVawucUfTj0sgrZKFnYT9EumRlxQW4gO3h 56J4usd5t5Z1Wo6h4eUnTsaIdElSEIkOqZYU6rNQmeVk0uThgm/oP20D57tDeOe5B5wFNz bRzaH1HpddTJscQhmFxi2enuBsW3tW+E/qlwGdyOb8e8x9u3kvGb0YQ8Mu/20QbJZGzJBa wSyv/QS3AkJYIW8MNUiIqzbiSezWlAsy/yD99NHRy5Zoh7r2Vq2EBfq5Z9NCQQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893383; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=i5PB59bVKR+aXS5KREMosq5Ay/gKA1SUmJt+68ibWHE=; b=qrodGDdzj9uYW2Yd7ACrEQ7+zIEFqGB6mqkQHU4d/I3XsT8HxbtSCergBLr90c/cd4gBeh Yv2JQMH1/9KV+XD92KLC38vAQkNjO8mtzWufIRvkmWdubYuA3bi35k3Ae9Tg6Tl8PfomC5 FcgdnJF4OvqtlPTbv3NDtsg33oEbwNQZjam1+FnZL8OJzcIVlbHlMAsho+bCERSUsonQae iMarOCFmkbrYzpLsmIZoGfjmEMqNZ1TUEwyI+b260xKgrlerjCMEZ/eiRY5xB7POTDyZe2 FPpiIeeqamjYYqDPdF1juvBFUutrbQN8Qznv6YtXvI5WUFM+63RAwVL2Qzpy4g== 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 4S4FK31Ct1z11H; Mon, 9 Oct 2023 23:16:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGNB1071632; Mon, 9 Oct 2023 23:16:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGNwh071629; Mon, 9 Oct 2023 23:16:23 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:23 GMT Message-Id: <202310092316.399NGNwh071629@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: dae4e5ad140f - releng/14.0 - LinuxKPI: 802.11: hide txq debugging behind checks List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: dae4e5ad140f1e7671cb22a9640c1395c5688f00 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=dae4e5ad140f1e7671cb22a9640c1395c5688f00 commit dae4e5ad140f1e7671cb22a9640c1395c5688f00 Author: Bjoern A. Zeeb AuthorDate: 2023-10-04 20:30:00 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:54 +0000 LinuxKPI: 802.11: hide txq debugging behind checks Two txq debug messages were left unconditionally. Hide them behind ifdef/if() condition checks for selective debugging only. Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit 0d2cb6a6ecde3b271ede59d77801cb43a8804688) (cherry picked from commit 5b9404565fef6cf4f01210343c8074b9407cb268) --- sys/compat/linuxkpi/common/src/linux_80211.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index b3ee07a9bab9..7ffe658a628d 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -4831,15 +4831,18 @@ linuxkpi_ieee80211_stop_queue(struct ieee80211_hw *hw, int qnum) for (ac = 0; ac < ac_count; ac++) { IMPROVE_TXQ("LOCKING"); if (qnum == vif->hw_queue[ac]) { +#ifdef LINUXKPI_DEBUG_80211 /* * For now log this to better understand * how this is supposed to work. */ - if (lvif->hw_queue_stopped[ac]) + if (lvif->hw_queue_stopped[ac] && + (linuxkpi_debug_80211 & D80211_IMPROVE_TXQ) != 0) ic_printf(lhw->ic, "%s:%d: lhw %p hw %p " "lvif %p vif %p ac %d qnum %d already " "stopped\n", __func__, __LINE__, lhw, hw, lvif, vif, ac, qnum); +#endif lvif->hw_queue_stopped[ac] = true; } } @@ -4886,15 +4889,18 @@ lkpi_ieee80211_wake_queues(struct ieee80211_hw *hw, int hwq) /* XXX-BZ what about software scan? */ +#ifdef LINUXKPI_DEBUG_80211 /* * For now log this to better understand * how this is supposed to work. */ - if (!lvif->hw_queue_stopped[ac]) + if (!lvif->hw_queue_stopped[ac] && + (linuxkpi_debug_80211 & D80211_IMPROVE_TXQ) != 0) ic_printf(lhw->ic, "%s:%d: lhw %p hw %p " "lvif %p vif %p ac %d hw_q not stopped\n", __func__, __LINE__, lhw, hw, lvif, vif, ac); +#endif lvif->hw_queue_stopped[ac] = false; LKPI_80211_LVIF_LOCK(lvif); From nobody Mon Oct 9 23:16:24 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FK44Y4Yz4wh59; Mon, 9 Oct 2023 23:16: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 4S4FK436WLz3R20; Mon, 9 Oct 2023 23:16:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893384; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gnqYoHzDcFUlvEIHYI0L1TgFAbu9QHWOlPN8D51Yd1k=; b=xvfHSQJmMdJXCQvgMqL4hAtDH5+92ym+oYAOFIZ4YcToaKMRqE2+zhGckrZ2yPljLEnOcc +ebm8h7jEoy49KVCHxEfk0qfJkIrnm7Z9a/W4tH0yekb4VZ4q5ZQKTCIq9wFEOJWmLFqPI EI2ewxjpMxNu1rcsrNQBSLzdZeFFgA+nVwS+WcdZVwXfmUso6xkqXGmDiNl3h/UOEXQxvy EkO0PvJP63hz1nyIiqIzNNp1bet3MgHYI7bnr6HwuYJYKRNS9w4f8TWKsDihem3FtGzpGN Y/ByaHywMELJNQkkvoZWcx9zcmws2alldc5nSH4sgmxXoApZZT+ar9LL5q1T9Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893384; a=rsa-sha256; cv=none; b=vC4Y+2p8dqA9gmmy/nl3Itc9bE6c1yI52VqakMZ4wfXujCQWEYYyp9W1P8SNqdl9k/z0W5 rYyGf27MRwckvLnVrI80bdFetmA0+40qYz+HiEOYQqds6otx0mKY6w3/nWXWcAmcRFaOQ6 XCttMSwfP5AFe1R28+6j+gA2pHToma+vLHmcA8s9h7SvqHd5Ft2Xxqyo+zwY50ZIjWkhfU dyYn0SIchZMufy4ygF9UqQWY19yXFPSu+E0u/aOFjXvH4Ymu8ijrSkR1txaRDiH8hNKQsT /sKqcwruwI12q66e8LKVM4g1AxCSg8mqJJ/xNblj4VxWfwfuwkSF+EoKlKPLAg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893384; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gnqYoHzDcFUlvEIHYI0L1TgFAbu9QHWOlPN8D51Yd1k=; b=Ws8Y1MgikyeEnqyHzkOmzDLtuN56xR1Sm0fBUmHccv2MU96hq4XjfCM4/Dn/RKHb9R6Hzd 4YGW98IuLr1NjXBWMwyZcgvweQoSz4j7iUV1AXvRhRIagYQHU/yfSNWuedF2x2UjW9+68m y810Y0MigN2t0hT9sUP42Ilb28f4zG+Mk1H5ggoCBEqBF/WM7gtDeaHbgEJjZeCuhJWlEP JRpHUGMJER27Do/YXz9rTMwRu+DCcivysY/lecthdQoazfDruEVSxbOHsY2yfxWVWEn0eg GSppRW50uMLKUFJPVdG3jWSlvRfVo8iw7DCFsnAdJgC+KUZEbB9xmwOs7g29NA== 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 4S4FK42BP9zl7; Mon, 9 Oct 2023 23:16:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGO4k071680; Mon, 9 Oct 2023 23:16:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGONb071677; Mon, 9 Oct 2023 23:16:24 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:24 GMT Message-Id: <202310092316.399NGONb071677@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: da24b50552e7 - releng/14.0 - LinuxKPI: 802.11: inialize tx queue params List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: da24b50552e72d5d7ff6f995902777125f3d202d Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=da24b50552e72d5d7ff6f995902777125f3d202d commit da24b50552e72d5d7ff6f995902777125f3d202d Author: Bjoern A. Zeeb AuthorDate: 2023-09-21 12:36:38 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:54 +0000 LinuxKPI: 802.11: inialize tx queue params When adding a VAP (vif) initialize its tx queue parameters calling mo_conf_tx(). I could not spot net80211 providing some of the values needed before having a node so currrently we use hard-coded values with a comment with a reference on how to properly calculate the values in the future (e.g., in case of 11b or other cases). Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit a6042e17c8999c4965bd4d762c4564b322f1ae7b) (cherry picked from commit 68e1e25baf2e5576011ed532d5a30e70997d488c) --- sys/compat/linuxkpi/common/src/linux_80211.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 7ffe658a628d..e89979521296 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -2244,9 +2244,11 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], struct lkpi_vif *lvif; struct ieee80211vap *vap; struct ieee80211_vif *vif; + struct ieee80211_tx_queue_params txqp; enum ieee80211_bss_changed changed; size_t len; int error, i; + uint16_t ac; if (!TAILQ_EMPTY(&ic->ic_vaps)) /* 1 so far. Add once this works. */ return (NULL); @@ -2345,7 +2347,24 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], changed = 0; lkpi_80211_mo_bss_info_changed(hw, vif, &vif->bss_conf, changed); - /* conf_tx setup; default WME? */ + /* Configure tx queues (conf_tx), default WME & send BSS_CHANGED_QOS. */ + IMPROVE("Hardcoded values; to fix see 802.11-2016, 9.4.2.29 EDCA Parameter Set element"); + LKPI_80211_LHW_LOCK(lhw); + for (ac = 0; ac < IEEE80211_NUM_ACS; ac++) { + + bzero(&txqp, sizeof(txqp)); + txqp.cw_min = 15; + txqp.cw_max = 1023; + txqp.txop = 0; + txqp.aifs = 2; + error = lkpi_80211_mo_conf_tx(hw, vif, /* link_id */0, ac, &txqp); + if (error != 0) + ic_printf(ic, "%s: conf_tx ac %u failed %d\n", + __func__, ac, error); + } + LKPI_80211_LHW_UNLOCK(lhw); + changed = BSS_CHANGED_QOS; + lkpi_80211_mo_bss_info_changed(hw, vif, &vif->bss_conf, changed); /* Force MC init. */ lkpi_update_mcast_filter(ic, true); From nobody Mon Oct 9 23:16:25 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FK554D4z4wgvL; Mon, 9 Oct 2023 23:16: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 4S4FK54Gp9z3R9Q; Mon, 9 Oct 2023 23:16:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893385; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=y1JQ9HNEaM+5oGdWwUBJZ8xKiWZRMbFQFIrTSIVd2ME=; b=Eq7sxLbOJNkVJdVfkcl9ueb6SYYKNgGPqjDFICFGhS5bLQRdB0B52R3a/V3I8XdszQpOex /wZRG4QMVUcJGFQHuMcePYGqVHq9fKd66ax80GrEdOuP7aMrYxXb53HY9rjBFTiej2CDcg CZnUB+LRfyioHEP/EaUZbAJqlopvANgU+uM+h5DsoAvs5xT6ZkJ2GJTYfEazPYnJmSJUmd KwKB+bSvicM7MGMXYLxL37oaAuj4en/3ZGvsrNa0EjnfoBxaIbCoI+WJu3x9LjUE8wFeJD zIyiGn1MV9ikJHPzhYxd7HBmaFHYTkPN0zDukHoUwxgfs0HDkSjj+9syZrPGmQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893385; a=rsa-sha256; cv=none; b=gRVIgSdOPFQOZXx/whtclnEKq7H2YydpWuZ6i21Fs+Jf0qtog6orkL0+0IwZXcQRk3QJsz QPpJMdauid/RGWtff0YOI9YvF7jI/CJlc5zAdMGWGx269GaHOfjJli/Qfgg/HRhM6/pdrk BVpwt1f+2UNGmn8bG2r3yoclkrtKi0C2SXslPCmQJXZ6yAhD7lwhKM0U0IXn4cLLOrcXdJ sreUZk9ohNgqMOW2JmN2ttxwJOx3RvbRmzFdlc+N/4aB7YVBX7X0PTpLQ6ygitGYxVdKas VfZj7hp/be3gEAyXgC1Z8Q/LEpWokLOws+EqmYONdLwSADt7D1xABEoBfNiytw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893385; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=y1JQ9HNEaM+5oGdWwUBJZ8xKiWZRMbFQFIrTSIVd2ME=; b=wjDYlfge17mO6R68VrNdtocxaU+zo5AMbIJNdldHoXWUMfiyvuVSXxb5bHxhvBT+eNLowt p3ZLp0tFaDHnFEIOolI8tB9LaT53PxJBHBNr+6hkoXC68kTbb9f+Avnxe618aX/g3UMN9k yk1VvXYTDDFp8bgJrZwdvR2UQjNtX6dc1TCmYsMVpwLHl5XMy23w98e88cWwoFyYSagYKA 6kB1S1HkgegkE2hKePVa9q55m//iYis6dz8SvP3boD06265SW2oTLoWOjOFZRWsxEe4VzL Nt72fT6BDCH48ESUECltltAuhN+fi1wk7tEBNeqbpf/ot4T34dUQ9vAf3sdWdw== 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 4S4FK53FsHz17H; Mon, 9 Oct 2023 23:16:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGPMg071736; Mon, 9 Oct 2023 23:16:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGPxj071733; Mon, 9 Oct 2023 23:16:25 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:25 GMT Message-Id: <202310092316.399NGPxj071733@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: a5c1eed2a2a0 - releng/14.0 - LinuxKPI: 802.11: change ic_parent() to not call mo_stop()/mo_start() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: a5c1eed2a2a092824ce33c8308f1805d9c40ebb9 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=a5c1eed2a2a092824ce33c8308f1805d9c40ebb9 commit a5c1eed2a2a092824ce33c8308f1805d9c40ebb9 Author: Bjoern A. Zeeb AuthorDate: 2023-09-21 12:25:20 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:54 +0000 LinuxKPI: 802.11: change ic_parent() to not call mo_stop()/mo_start() Driven by net80211 we may call mac80211 ops stop() and start() mostly when toggling a first VAP. While this is FreeBSD behaviour the firmware based LinuxKPI drivers seem to possibly clear state in the case of stop() triggering further errors down the line. We call mo_start() when starting the VAP and mo_stop() when destroying it now only. In the future (e.g., in multi-VAP setups) we may need to re-address some of this so keep the code under #ifdef. Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit 8d58a0578635dc7dd1025ab08b0479f2b383e1a4) (cherry picked from commit 753730087671551425554a28d64c898997f9bbdd) --- sys/compat/linuxkpi/common/src/linux_80211.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index e89979521296..8df51f2630ff 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -2486,24 +2486,32 @@ static void lkpi_ic_parent(struct ieee80211com *ic) { struct lkpi_hw *lhw; +#ifdef HW_START_STOP struct ieee80211_hw *hw; int error; +#endif bool start_all; IMPROVE(); lhw = ic->ic_softc; +#ifdef HW_START_STOP hw = LHW_TO_HW(lhw); +#endif start_all = false; /* IEEE80211_UNLOCK(ic); */ LKPI_80211_LHW_LOCK(lhw); if (ic->ic_nrunning > 0) { +#ifdef HW_START_STOP error = lkpi_80211_mo_start(hw); if (error == 0) +#endif start_all = true; } else { +#ifdef HW_START_STOP lkpi_80211_mo_stop(hw); +#endif } LKPI_80211_LHW_UNLOCK(lhw); /* IEEE80211_LOCK(ic); */ From nobody Mon Oct 9 23:16:26 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FK66GfWz4wgvN; Mon, 9 Oct 2023 23:16: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 4S4FK65Sdsz3RB0; Mon, 9 Oct 2023 23:16:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893386; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pAHlhCYek3F0mVZ41s0yXXqqo9t/mmPnQsNh0UmUUco=; b=iWsLRAYIfb+5yww1X3H0kqajnL+ejOltAhixpVM01efivzJP7UeNl1xLqRm7POynMccD6/ uEauVYJvtylrKXezoXgWzXt9QfVdwazgKNP6pfikafaoLWYuQBiMnessxOQhQjf0GLXFvb lNaK10xZxyh47/d6ljFdk9aDyBNI1ulcS8nkcDvuLQPoRcR9pUdnb6wUtTJTp/hNuhQFXv LbRiWhTS1HK1F361QJXawnoFVnq2NayR4TGqi3JKpP2kaMJFh6qB6vBNoi5ia0yxKh7lh0 ro45omUA7yNHnQO0khVmcfClWPQHOrfuQdR9lX0IlmURObOvqDHvtPkDC2ayTg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893386; a=rsa-sha256; cv=none; b=c8mjiIgsi40+2F76Ak9nXI4kKOcduUgf/vDyqvGt+M8RAqd9lGroiP8tCyY+sUjQrOitLa Da3Kvqgcut4siiK9ohyglP/GFCRkEH6Vy0sBd2wu60DRH6rKididqqIPaxUxpyR5qbf5Jb r4AG+zH9pvwx+zAjDU2/i5OQLFZ8pHIs0CU5yuGq0mQd01dTHFPd/hqZT2rwKSRIOJ6INi GPJsQpWrmdLv719611j5L6zRCbZhsehKJkNUxsbVDRUol+1WkEe+capqOHW0mKtEFj+Vwa ESsnS5zNAjUZMc4VtzdLBuM695F9WhJZxxJZco8PY0+ZLAPO3PXyRuibP6wbDQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893386; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pAHlhCYek3F0mVZ41s0yXXqqo9t/mmPnQsNh0UmUUco=; b=E7ReEy32hOEiwDF9YzhG3isFv7G6+To0gugBu5xYh+eRiT4P9IfxbKumNV7NmBpS5DpL7R IClbsHqEJSJ5XdQoCw1Km/jHobcxAgVmVrthpu7c7lEzwKsJMdvqJ+t6BLXP+bIeveL60w nOh8DEjWg5kpSqWdL3Q04aw5+6qDc9fVTXno2HfpE6W6YZzPEJNoBVIz/kjMvu/Gy+bQyu vBgIbYYjkO0n3GL/w2WPCeCZ3lbFgzrlV3pJg6dTQX71mOEzwe9BsKt7GGAnMyYSZIULqL Kyp8md6m1Wy5KedLVUccVbaXkV8Mu8WzQwlf7E3j3Ba9aiq8x2ppWAMc0m8QhQ== 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 4S4FK64Gh8zfk; Mon, 9 Oct 2023 23:16:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGQMw071795; Mon, 9 Oct 2023 23:16:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGQp4071792; Mon, 9 Oct 2023 23:16:26 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:26 GMT Message-Id: <202310092316.399NGQp4071792@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 658a3f12e5ed - releng/14.0 - LinuxKPI: 802.11: move ieee80211_chanctx_conf into lkpi private struct List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 658a3f12e5edfa91c92df907290dace26c9f1d7b Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=658a3f12e5edfa91c92df907290dace26c9f1d7b commit 658a3f12e5edfa91c92df907290dace26c9f1d7b Author: Bjoern A. Zeeb AuthorDate: 2023-09-25 16:57:23 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:54 +0000 LinuxKPI: 802.11: move ieee80211_chanctx_conf into lkpi private struct Factor out ieee80211_chanctx_conf into struct lkpi_chanctx in order to keep local state as well. In first instance that is added_to_drv only. For now we stay single-chanctx only but this paves the path to make it a list. Use the new information to implement ieee80211_iter_chan_contexts_atomic(). Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit c5e257985085bd987b1dddffd0455c2230df2d1d) (cherry picked from commit b6628a233e8e6407a504172a562ba14a66c7e7da) --- sys/compat/linuxkpi/common/src/linux_80211.c | 46 +++++++++++++++++++--- sys/compat/linuxkpi/common/src/linux_80211.h | 9 +++++ .../linuxkpi/common/src/linux_80211_macops.c | 8 ++++ 3 files changed, 57 insertions(+), 6 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 8df51f2630ff..816fe3ab7646 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -917,6 +917,7 @@ static int lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg) { struct linuxkpi_ieee80211_channel *chan; + struct lkpi_chanctx *lchanctx; struct ieee80211_chanctx_conf *conf; struct lkpi_hw *lhw; struct ieee80211_hw *hw; @@ -948,11 +949,13 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int /* Add chanctx (or if exists, change it). */ if (vif->chanctx_conf != NULL) { conf = vif->chanctx_conf; + lchanctx = CHANCTX_CONF_TO_LCHANCTX(conf); IMPROVE("diff changes for changed, working on live copy, rcu"); } else { /* Keep separate alloc as in Linux this is rcu managed? */ - conf = malloc(sizeof(*conf) + hw->chanctx_data_size, + lchanctx = malloc(sizeof(*lchanctx) + hw->chanctx_data_size, M_LKPI80211, M_WAITOK | M_ZERO); + conf = &lchanctx->conf; } conf->rx_chains_dynamic = 1; @@ -997,7 +1000,8 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int error = 0; if (error != 0) { lkpi_80211_mo_remove_chanctx(hw, conf); - free(conf, M_LKPI80211); + lchanctx = CHANCTX_CONF_TO_LCHANCTX(conf); + free(lchanctx, M_LKPI80211); goto out; } } @@ -1169,6 +1173,7 @@ lkpi_sta_auth_to_scan(struct ieee80211vap *vap, enum ieee80211_state nstate, int /* Take the chan ctx down. */ if (vif->chanctx_conf != NULL) { + struct lkpi_chanctx *lchanctx; struct ieee80211_chanctx_conf *conf; conf = vif->chanctx_conf; @@ -1178,7 +1183,8 @@ lkpi_sta_auth_to_scan(struct ieee80211vap *vap, enum ieee80211_state nstate, int /* Remove chan ctx. */ lkpi_80211_mo_remove_chanctx(hw, conf); - free(conf, M_LKPI80211); + lchanctx = CHANCTX_CONF_TO_LCHANCTX(conf); + free(lchanctx, M_LKPI80211); } out: @@ -1446,6 +1452,7 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i /* Take the chan ctx down. */ if (vif->chanctx_conf != NULL) { + struct lkpi_chanctx *lchanctx; struct ieee80211_chanctx_conf *conf; conf = vif->chanctx_conf; @@ -1455,7 +1462,8 @@ _lkpi_sta_assoc_to_down(struct ieee80211vap *vap, enum ieee80211_state nstate, i /* Remove chan ctx. */ lkpi_80211_mo_remove_chanctx(hw, conf); - free(conf, M_LKPI80211); + lchanctx = CHANCTX_CONF_TO_LCHANCTX(conf); + free(lchanctx, M_LKPI80211); } error = EALREADY; @@ -1905,6 +1913,7 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int /* Take the chan ctx down. */ if (vif->chanctx_conf != NULL) { + struct lkpi_chanctx *lchanctx; struct ieee80211_chanctx_conf *conf; conf = vif->chanctx_conf; @@ -1914,7 +1923,8 @@ lkpi_sta_run_to_init(struct ieee80211vap *vap, enum ieee80211_state nstate, int /* Remove chan ctx. */ lkpi_80211_mo_remove_chanctx(hw, conf); - free(conf, M_LKPI80211); + lchanctx = CHANCTX_CONF_TO_LCHANCTX(conf); + free(lchanctx, M_LKPI80211); } error = EALREADY; @@ -3948,8 +3958,32 @@ linuxkpi_ieee80211_iterate_chan_contexts(struct ieee80211_hw *hw, void *), void *arg) { + struct lkpi_hw *lhw; + struct lkpi_vif *lvif; + struct ieee80211_vif *vif; + struct lkpi_chanctx *lchanctx; - UNIMPLEMENTED; + KASSERT(hw != NULL && iterfunc != NULL, + ("%s: hw %p iterfunc %p arg %p\n", __func__, hw, iterfunc, arg)); + + lhw = HW_TO_LHW(hw); + + IMPROVE("lchanctx should be its own list somewhere"); + + LKPI_80211_LHW_LVIF_LOCK(lhw); + TAILQ_FOREACH(lvif, &lhw->lvif_head, lvif_entry) { + + vif = LVIF_TO_VIF(lvif); + if (vif->chanctx_conf == NULL) + continue; + + lchanctx = CHANCTX_CONF_TO_LCHANCTX(vif->chanctx_conf); + if (!lchanctx->added_to_drv) + continue; + + iterfunc(hw, &lchanctx->conf, arg); + } + LKPI_80211_LHW_LVIF_UNLOCK(lhw); } void diff --git a/sys/compat/linuxkpi/common/src/linux_80211.h b/sys/compat/linuxkpi/common/src/linux_80211.h index 22a5f5a6377c..93c1e2873206 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.h +++ b/sys/compat/linuxkpi/common/src/linux_80211.h @@ -210,6 +210,15 @@ struct lkpi_hw { /* name it mac80211_sc? */ #define LHW_TO_HW(_lhw) (&(_lhw)->hw) #define HW_TO_LHW(_hw) container_of(_hw, struct lkpi_hw, hw) +struct lkpi_chanctx { + bool added_to_drv; /* Managed by MO */ + struct ieee80211_chanctx_conf conf __aligned(CACHE_LINE_SIZE); +}; +#define LCHANCTX_TO_CHANCTX_CONF(_lchanctx) \ + (&(_lchanctx)->conf) +#define CHANCTX_CONF_TO_LCHANCTX(_conf) \ + container_of(_conf, struct lkpi_chanctx, conf) + struct lkpi_wiphy { const struct cfg80211_ops *ops; diff --git a/sys/compat/linuxkpi/common/src/linux_80211_macops.c b/sys/compat/linuxkpi/common/src/linux_80211_macops.c index b3b53d23f62e..8f75b1bdf8b1 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211_macops.c +++ b/sys/compat/linuxkpi/common/src/linux_80211_macops.c @@ -490,6 +490,7 @@ lkpi_80211_mo_add_chanctx(struct ieee80211_hw *hw, struct ieee80211_chanctx_conf *chanctx_conf) { struct lkpi_hw *lhw; + struct lkpi_chanctx *lchanctx; int error; lhw = HW_TO_LHW(hw); @@ -500,6 +501,10 @@ lkpi_80211_mo_add_chanctx(struct ieee80211_hw *hw, LKPI_80211_TRACE_MO("hw %p chanctx_conf %p", hw, chanctx_conf); error = lhw->ops->add_chanctx(hw, chanctx_conf); + if (error == 0) { + lchanctx = CHANCTX_CONF_TO_LCHANCTX(chanctx_conf); + lchanctx->added_to_drv = true; + } out: return (error); @@ -524,6 +529,7 @@ lkpi_80211_mo_remove_chanctx(struct ieee80211_hw *hw, struct ieee80211_chanctx_conf *chanctx_conf) { struct lkpi_hw *lhw; + struct lkpi_chanctx *lchanctx; lhw = HW_TO_LHW(hw); if (lhw->ops->remove_chanctx == NULL) @@ -531,6 +537,8 @@ lkpi_80211_mo_remove_chanctx(struct ieee80211_hw *hw, LKPI_80211_TRACE_MO("hw %p chanctx_conf %p", hw, chanctx_conf); lhw->ops->remove_chanctx(hw, chanctx_conf); + lchanctx = CHANCTX_CONF_TO_LCHANCTX(chanctx_conf); + lchanctx->added_to_drv = false; } void From nobody Mon Oct 9 23:16:27 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FK76mktz4wh3D; Mon, 9 Oct 2023 23:16: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 4S4FK760l7z3RKK; Mon, 9 Oct 2023 23:16:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893387; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MbtaGD6YEWMOjnPhQ7HRDuYSGPEVOrEdjV3wxmgGFgo=; b=sa++vNQtggkXl8GDdZXOjbtu426+bcyP/T8+JebyQpi7B+TJmn+UNcfXbItfhUBZmFLkUM NSltQ2ktcFdb9/PL+Ij/4ZRoGgXGpxNGhTLYrMZctPDNJ8rL7LxSiIkQLUtnrsRGAhWnK3 rT45TFDiQYen3h1nGGR5CIRhOEXyBykmg34NhFMR6+LoNONaZ3Z3486xixueNQJxvspU7z 0ZjymW1diPbze1xUx56qfUA1RgbhXCnpo5SGwRv0ErAgbSKML+wEMFVZC6RG3Ayk6BhRhW bcBA6wQBT2qP68Bgb8S2Ncg6lTREw+ITVLrHIwfojJ/IrQxj3w8NSoGdRFuYlA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893387; a=rsa-sha256; cv=none; b=gJstAKaXDzg90+XtgDbrzxww5LZL2NVX4BRbDN1YT73zdFjPQcLWM5Y+uehv4uF51j1aRJ JMwwA+DI0LrLJPHByPWFmuaiwZ5+sRyZpD1D3KTP8ajYVe16QFZO18CAE2PXyvUaWjTBLm X5FJUTMV4YA2D0XiY7MyhCoGfLCKCNIUG+sJ4xlWA5ASN7aPbGZK9HWSQpc+I0cU34pZQH ZqbCnP51bRtwW25xf0SYwSiwhmLf78T9pTkim388G7IyMq+cx3xQnwWh6yTrHWevufK4jh Ah8Fdg4SHSznszaIZU15KeFrucvA/DHxRHIZuQmouMypb/8xMqIqhXSXZ1tYoA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893387; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MbtaGD6YEWMOjnPhQ7HRDuYSGPEVOrEdjV3wxmgGFgo=; b=myo7BVKQ7XWiFKjQ7IafzqbfS1DtE8s8l9WuU3B/XSGTd/voOsEik3b/oxyoJ0ZFmvV9Iu SXj4euvu6D5Uz6cgdul14wHNpCUlMbVuRMg+w8UB5oA/vOyEif5F50AWrvDzAxLMaM/ick RE6dpb5i3GeTTtRLStGJVq5qzes+k8PD1KX8BemzEf1LTJ1tH9TKvicOVwp5/m2soXaP/b LhzPIhi45FCUoPJUeWCtX6NWveEVF0P938i7K5XhsqJzz8a5UBIieuOGBxkEIt2CO8AGgJ gxpR+rBijf/3UiqmFwiHZp6yXF2AmzLELWOpRjAbjBW7c1z3FX9WzjwaUspY2g== 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 4S4FK753Yrzh7; Mon, 9 Oct 2023 23:16:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGRE2071856; Mon, 9 Oct 2023 23:16:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGRhr071853; Mon, 9 Oct 2023 23:16:27 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:27 GMT Message-Id: <202310092316.399NGRhr071853@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 6fcde9664465 - releng/14.0 - LinuxKPI: 802.11: setup a default link[0] and adjust related needs List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 6fcde966446505c70f95d95bf03bf4ae6b4ddfc4 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=6fcde966446505c70f95d95bf03bf4ae6b4ddfc4 commit 6fcde966446505c70f95d95bf03bf4ae6b4ddfc4 Author: Bjoern A. Zeeb AuthorDate: 2023-09-21 12:49:15 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:54 +0000 LinuxKPI: 802.11: setup a default link[0] and adjust related needs Setup more link_conf/deflink fields for vif/sta as are needed to allow us to work with the KPI bits in a non-MLO configuration. In lkpi_sta_scan_to_auth() set the bss_conf values before calling into the driver for chanctx setup/updates as certain values (e.g., beacon_int) need to be set before; we still call the MO function for the updates after to keep the expected workflow. Deal with the (to be dealt with otherwise later) net80211 ni swaps and update the addresses on the deflink as well as otherwise firmware will hit asserts or things will not work (e.g. indicating the peer is us). Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit 6ffb7bd469b26f2ff6cc62cedca6ffe884076196) (cherry picked from commit c18ead9cb26d4199dbea8cc032420ae2164928ad) --- sys/compat/linuxkpi/common/src/linux_80211.c | 63 ++++++++++++++++++---------- 1 file changed, 41 insertions(+), 22 deletions(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index 816fe3ab7646..4a296e2f0fad 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -107,9 +107,6 @@ SYSCTL_INT(_compat_linuxkpi_80211, OID_AUTO, debug, CTLFLAG_RWTUN, #define PREP_TX_INFO_DURATION 0 /* Let the driver do its thing. */ #endif -/* c.f. ieee80211_ioctl.c */ -static const uint8_t zerobssid[IEEE80211_ADDR_LEN]; - /* This is DSAP | SSAP | CTRL | ProtoID/OrgCode{3}. */ const uint8_t rfc1042_header[6] = { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00 }; @@ -270,9 +267,17 @@ lkpi_lsta_alloc(struct ieee80211vap *vap, const uint8_t mac[IEEE80211_ADDR_LEN], sta->deflink.supp_rates[band] |= BIT(i); } } + sta->deflink.smps_mode = IEEE80211_SMPS_OFF; IMPROVE("ht, vht, he, ... bandwidth, smps_mode, .."); /* bandwidth = IEEE80211_STA_RX_... */ + /* Link configuration. */ + IEEE80211_ADDR_COPY(sta->deflink.addr, sta->addr); + sta->link[0] = &sta->deflink; + for (i = 1; i < nitems(sta->link); i++) { + IMPROVE("more links; only link[0] = deflink currently."); + } + /* Deferred TX path. */ mtx_init(&lsta->txq_mtx, "lsta_txq", NULL, MTX_DEF); TASK_INIT(&lsta->txq_task, 0, lkpi_80211_txq_task, lsta); @@ -973,6 +978,23 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int conf->min_def.center_freq2 = 0; IMPROVE("currently 20_NOHT only"); + /* Set bss info (bss_info_changed). */ + bss_changed = 0; + vif->bss_conf.bssid = ni->ni_bssid; + bss_changed |= BSS_CHANGED_BSSID; + vif->bss_conf.txpower = ni->ni_txpower; + bss_changed |= BSS_CHANGED_TXPOWER; + vif->cfg.idle = false; + bss_changed |= BSS_CHANGED_IDLE; + + /* vif->bss_conf.basic_rates ? Where exactly? */ + + /* Should almost assert it is this. */ + vif->cfg.assoc = false; + vif->cfg.aid = 0; + + bss_changed |= lkpi_update_dtim_tsf(vif, ni, vap, __func__, __LINE__); + error = 0; if (vif->chanctx_conf != NULL) { changed = IEEE80211_CHANCTX_CHANGE_MIN_WIDTH; @@ -992,6 +1014,9 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int } else { goto out; } + + vif->bss_conf.chanctx_conf = conf; + /* Assign vif chanctx. */ if (error == 0) error = lkpi_80211_mo_assign_vif_chanctx(hw, vif, @@ -1007,21 +1032,6 @@ lkpi_sta_scan_to_auth(struct ieee80211vap *vap, enum ieee80211_state nstate, int } IMPROVE("update radiotap chan fields too"); - /* Set bss info (bss_info_changed). */ - bss_changed = 0; - vif->bss_conf.bssid = ni->ni_bssid; - bss_changed |= BSS_CHANGED_BSSID; - vif->bss_conf.txpower = ni->ni_txpower; - bss_changed |= BSS_CHANGED_TXPOWER; - vif->cfg.idle = false; - bss_changed |= BSS_CHANGED_IDLE; - - /* Should almost assert it is this. */ - vif->cfg.assoc = false; - vif->cfg.aid = 0; - - bss_changed |= lkpi_update_dtim_tsf(vif, ni, vap, __func__, __LINE__); - /* RATES */ IMPROVE("bss info: not all needs to come now and rates are missing"); lkpi_80211_mo_bss_info_changed(hw, vif, &vif->bss_conf, bss_changed); @@ -2141,12 +2151,14 @@ lkpi_iv_update_bss(struct ieee80211vap *vap, struct ieee80211_node *ni) lsta->ni = ni; sta = LSTA_TO_STA(lsta); IEEE80211_ADDR_COPY(sta->addr, lsta->ni->ni_macaddr); + IEEE80211_ADDR_COPY(sta->deflink.addr, sta->addr); } lsta = obss->ni_drv_data; if (lsta != NULL) { lsta->ni = obss; sta = LSTA_TO_STA(lsta); IEEE80211_ADDR_COPY(sta->addr, lsta->ni->ni_macaddr); + IEEE80211_ADDR_COPY(sta->deflink.addr, sta->addr); } out: @@ -2287,6 +2299,9 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], #if 1 vif->chanctx_conf = NULL; vif->bss_conf.vif = vif; + /* vap->iv_myaddr is not set until net80211::vap_setup or vap_attach. */ + IEEE80211_ADDR_COPY(vif->bss_conf.addr, mac); + vif->bss_conf.link_id = 0; /* Non-MLO operation. */ vif->bss_conf.chandef.width = NL80211_CHAN_WIDTH_20_NOHT; vif->bss_conf.use_short_preamble = false; /* vap->iv_flags IEEE80211_F_SHPREAMBLE */ vif->bss_conf.use_short_slot = false; /* vap->iv_flags IEEE80211_F_SHSLOT */ @@ -2297,15 +2312,13 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], vif->cfg.assoc = false; vif->cfg.idle = true; vif->cfg.ps = false; + IMPROVE("Check other fields and then figure out whats is left elsewhere of them"); /* * We need to initialize it to something as the bss_info_changed call * will try to copy from it in iwlwifi and NULL is a panic. * We will set the proper one in scan_to_auth() before being assoc. - * NB: the logic there with using an array as bssid_override and checking - * for non-NULL later is flawed but in their workflow does not seem to - * matter. */ - vif->bss_conf.bssid = zerobssid; + vif->bss_conf.bssid = ieee80211broadcastaddr; #endif #if 0 vif->bss_conf.dtim_period = 0; /* IEEE80211_DTIM_DEFAULT ; must stay 0. */ @@ -2316,6 +2329,12 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], vif->bss_conf.beacon_int = 16; #endif + /* Link Config */ + vif->link_conf[0] = &vif->bss_conf; + for (i = 0; i < nitems(vif->link_conf); i++) { + IMPROVE("more than 1 link one day"); + } + /* Setup queue defaults; driver may override in (*add_interface). */ for (i = 0; i < IEEE80211_NUM_ACS; i++) { if (ieee80211_hw_check(hw, QUEUE_CONTROL)) From nobody Mon Oct 9 23:16:28 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FK90hyDz4wgry; Mon, 9 Oct 2023 23:16: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 4S4FK90CJxz3RC1; Mon, 9 Oct 2023 23:16:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893389; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=chErA1vFaUHfMIn0YMonjqbHJcHGWLJbMCwqVjPqXF4=; b=rnWpok+OkkXwYYxpD6izEECtzlPtfRZwJfEFgIh1kqva2Am4dbpx+NNYXWSDUpjiaME7Ux k1rJJByCYEG8LPt7lAeIPDlmFS0b9yB7ZuAiC8pPo4djVAWCn54LR1DcLmBYmRC0NAfaJq 22z1cFN5PO05/URWMRjrXxwDxvDWX9Umrq1qsBcVzQZgA5coVJrKwOmmEwoJY8LQ9l271/ zYLq+SJqN0mzKjlK3h+lyLGGRzCASfdCyc+D5dP01EYw7G/cfBMWTSpqUBcwh7qF7PwuIu oWGxCKDI2qZVQ7e8+ZftA35FIROc0lFj33qVsAIj7smi3plvBceZ/C4UtTp3Yg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893389; a=rsa-sha256; cv=none; b=m24v3AcUY1BXtLUPtG0ov4K5ipqv2ZohgC9CmpzNeto80uHiprDfglvbxIPSHEmY+TF0Jt BaqX4hWwLSe8xsdWdlI/L87rJAFrIs8sC1ltZE4rNpNtmSXzMFekaCYbE3fg0oU+AdG+4Z yip48k5CgZMEqeXzYlYoYCV9SdBWqzcd1E3nzYVYS3BOEdMmCbcpvXSRlkCaiSx/0zt/Zz 0t9PrF67VdQWIYxp9TWiZ5mGE6ea0/N1cOz4G+f9BsujuraHSGZFFpGzEEBbXQKTgTEZe3 ropd/FZHSrQjAZLAcr8Hdgag8uVRIzAtXW+nD7P4hwpL2B6bZCX1geON3kGuPw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893389; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=chErA1vFaUHfMIn0YMonjqbHJcHGWLJbMCwqVjPqXF4=; b=RNKuv7oGUZ7utk03OuTJ1SKEgJCG8Fd8DdMvlSqMcGTzagHweAONq5+wqIsmIHL1dLwAAP ewxtuZ4Y0MgGVUiu3HeTPSBz4V1XgdYC0ZFHSsHF2DLrzsfZGFXFvovlZmN8rxBfzPg0Cx NYcGhWiQCT9bsTFDPIUQf4jVLmmg5IofeUDUXZ+IO8QxIAv0wbuZMOo/YHX1M1MoPdULxu JrPcpZGQW5m/Se+1FAWMju6RlIBLo3eEzXViwez3Depz9gyZSbTWGo75BfEOv/n90m9Dbp 6TsQ8F8bvbyOeKrUqsE9CyBp9hk6yl7hH+sdrLD9lFJ1d/UZtvzL23Vs9LWZGw== 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 4S4FK86Pn4zfl; Mon, 9 Oct 2023 23:16:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGS3v071901; Mon, 9 Oct 2023 23:16:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGS01071898; Mon, 9 Oct 2023 23:16:28 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:28 GMT Message-Id: <202310092316.399NGS01071898@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: ed36fb520bc7 - releng/14.0 - rtw88: update driver from upstream List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: ed36fb520bc78ce59fb55e7c95952da17c581db6 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=ed36fb520bc78ce59fb55e7c95952da17c581db6 commit ed36fb520bc78ce59fb55e7c95952da17c581db6 Author: Bjoern A. Zeeb AuthorDate: 2023-05-16 23:19:34 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:55 +0000 rtw88: update driver from upstream This is a combined version of updates of the rtw88 driver based on wireless-testing (wt-2023-05-11) 711dca0ca3d77414f8f346e564e9c8640147f40d (after v6.4-rc1), (wt-2023-06-09) 7bd20e011626ccc3ad53e57873452b1716fcfaaa (after v6.4-rc5), (wt-2023-07-24) 62e409149b62a285e89018e49b2e115757fb9022 (after v6.5-rc3), (wt-2023-08-06) 2a220a15be657a24868368892e3e2caba2115283 (after v6.5-rc4). This update follows other currently disconnected LinuxKPI based wireless drivers to lift them all to a same version in case someone else wants to work on this driver in parallel to predominant iwlwifi efforts. While debugging some funky register reads of 0xaeaea from RF_CFGCH resulting in "rtw880: [TXGAPK] unknown channel 234!!" more of these reads came to my attention hidden by using the register index rather than the defined value. Make this more grep-able. Approved by: re (gjb) (cherry picked from commit 90aac0d83bc9645f51ef0c2aeae6f9c0540bb031) (cherry picked from commit 4f3b2bba240b6e0603b5cbb47155fd8215bcbcb3) (cherry picked from commit 8323f69b8869ab714e329a378f632a55888d3fab) --- sys/contrib/dev/rtw88/Makefile | 78 +++ sys/contrib/dev/rtw88/bf.c | 17 +- sys/contrib/dev/rtw88/coex.c | 93 ++- sys/contrib/dev/rtw88/coex.h | 14 +- sys/contrib/dev/rtw88/debug.c | 85 ++- sys/contrib/dev/rtw88/debug.h | 1 + sys/contrib/dev/rtw88/efuse.c | 4 +- sys/contrib/dev/rtw88/fw.c | 220 ++++-- sys/contrib/dev/rtw88/fw.h | 47 +- sys/contrib/dev/rtw88/hci.h | 9 +- sys/contrib/dev/rtw88/mac.c | 119 +++- sys/contrib/dev/rtw88/mac.h | 1 - sys/contrib/dev/rtw88/mac80211.c | 89 ++- sys/contrib/dev/rtw88/main.c | 451 +++++++++--- sys/contrib/dev/rtw88/main.h | 81 ++- sys/contrib/dev/rtw88/pci.c | 89 +-- sys/contrib/dev/rtw88/phy.c | 71 +- sys/contrib/dev/rtw88/phy.h | 2 +- sys/contrib/dev/rtw88/ps.c | 57 +- sys/contrib/dev/rtw88/ps.h | 2 + sys/contrib/dev/rtw88/reg.h | 15 + sys/contrib/dev/rtw88/regd.c | 2 + sys/contrib/dev/rtw88/rtw8723d.c | 43 +- sys/contrib/dev/rtw88/rtw8723d.h | 19 +- sys/contrib/dev/rtw88/rtw8723ds.c | 41 ++ sys/contrib/dev/rtw88/rtw8723du.c | 39 ++ sys/contrib/dev/rtw88/rtw8821c.c | 54 +- sys/contrib/dev/rtw88/rtw8821c.h | 27 + sys/contrib/dev/rtw88/rtw8821cs.c | 36 + sys/contrib/dev/rtw88/rtw8821cu.c | 53 ++ sys/contrib/dev/rtw88/rtw8822b.c | 32 +- sys/contrib/dev/rtw88/rtw8822b.h | 8 +- sys/contrib/dev/rtw88/rtw8822bs.c | 36 + sys/contrib/dev/rtw88/rtw8822bu.c | 93 +++ sys/contrib/dev/rtw88/rtw8822c.c | 49 +- sys/contrib/dev/rtw88/rtw8822c.h | 8 +- sys/contrib/dev/rtw88/rtw8822cs.c | 36 + sys/contrib/dev/rtw88/rtw8822cu.c | 47 ++ sys/contrib/dev/rtw88/sdio.c | 1404 +++++++++++++++++++++++++++++++++++++ sys/contrib/dev/rtw88/sdio.h | 178 +++++ sys/contrib/dev/rtw88/tx.c | 149 ++-- sys/contrib/dev/rtw88/tx.h | 138 ++-- sys/contrib/dev/rtw88/usb.c | 919 ++++++++++++++++++++++++ sys/contrib/dev/rtw88/usb.h | 100 +++ sys/contrib/dev/rtw88/util.c | 104 ++- sys/contrib/dev/rtw88/util.h | 11 +- sys/contrib/dev/rtw88/wow.c | 2 +- 47 files changed, 4622 insertions(+), 551 deletions(-) diff --git a/sys/contrib/dev/rtw88/Makefile b/sys/contrib/dev/rtw88/Makefile new file mode 100644 index 000000000000..fd212c09d88a --- /dev/null +++ b/sys/contrib/dev/rtw88/Makefile @@ -0,0 +1,78 @@ +# SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause + +obj-$(CONFIG_RTW88_CORE) += rtw88_core.o +rtw88_core-y += main.o \ + mac80211.o \ + util.o \ + debug.o \ + tx.o \ + rx.o \ + mac.o \ + phy.o \ + coex.o \ + efuse.o \ + fw.o \ + ps.o \ + sec.o \ + bf.o \ + sar.o \ + regd.o + +rtw88_core-$(CONFIG_PM) += wow.o + +obj-$(CONFIG_RTW88_8822B) += rtw88_8822b.o +rtw88_8822b-objs := rtw8822b.o rtw8822b_table.o + +obj-$(CONFIG_RTW88_8822BE) += rtw88_8822be.o +rtw88_8822be-objs := rtw8822be.o + +obj-$(CONFIG_RTW88_8822BS) += rtw88_8822bs.o +rtw88_8822bs-objs := rtw8822bs.o + +obj-$(CONFIG_RTW88_8822BU) += rtw88_8822bu.o +rtw88_8822bu-objs := rtw8822bu.o + +obj-$(CONFIG_RTW88_8822C) += rtw88_8822c.o +rtw88_8822c-objs := rtw8822c.o rtw8822c_table.o + +obj-$(CONFIG_RTW88_8822CE) += rtw88_8822ce.o +rtw88_8822ce-objs := rtw8822ce.o + +obj-$(CONFIG_RTW88_8822CS) += rtw88_8822cs.o +rtw88_8822cs-objs := rtw8822cs.o + +obj-$(CONFIG_RTW88_8822CU) += rtw88_8822cu.o +rtw88_8822cu-objs := rtw8822cu.o + +obj-$(CONFIG_RTW88_8723D) += rtw88_8723d.o +rtw88_8723d-objs := rtw8723d.o rtw8723d_table.o + +obj-$(CONFIG_RTW88_8723DE) += rtw88_8723de.o +rtw88_8723de-objs := rtw8723de.o + +obj-$(CONFIG_RTW88_8723DS) += rtw88_8723ds.o +rtw88_8723ds-objs := rtw8723ds.o + +obj-$(CONFIG_RTW88_8723DU) += rtw88_8723du.o +rtw88_8723du-objs := rtw8723du.o + +obj-$(CONFIG_RTW88_8821C) += rtw88_8821c.o +rtw88_8821c-objs := rtw8821c.o rtw8821c_table.o + +obj-$(CONFIG_RTW88_8821CE) += rtw88_8821ce.o +rtw88_8821ce-objs := rtw8821ce.o + +obj-$(CONFIG_RTW88_8821CS) += rtw88_8821cs.o +rtw88_8821cs-objs := rtw8821cs.o + +obj-$(CONFIG_RTW88_8821CU) += rtw88_8821cu.o +rtw88_8821cu-objs := rtw8821cu.o + +obj-$(CONFIG_RTW88_PCI) += rtw88_pci.o +rtw88_pci-objs := pci.o + +obj-$(CONFIG_RTW88_SDIO) += rtw88_sdio.o +rtw88_sdio-objs := sdio.o + +obj-$(CONFIG_RTW88_USB) += rtw88_usb.o +rtw88_usb-objs := usb.o diff --git a/sys/contrib/dev/rtw88/bf.c b/sys/contrib/dev/rtw88/bf.c index d207fa5c122f..16c6a1d972e5 100644 --- a/sys/contrib/dev/rtw88/bf.c +++ b/sys/contrib/dev/rtw88/bf.c @@ -30,11 +30,11 @@ void rtw_bf_disassoc(struct rtw_dev *rtwdev, struct ieee80211_vif *vif, void rtw_bf_assoc(struct rtw_dev *rtwdev, struct ieee80211_vif *vif, struct ieee80211_bss_conf *bss_conf) { + const struct rtw_chip_info *chip = rtwdev->chip; struct ieee80211_hw *hw = rtwdev->hw; struct rtw_vif *rtwvif = (struct rtw_vif *)vif->drv_priv; struct rtw_bfee *bfee = &rtwvif->bfee; struct rtw_bf_info *bfinfo = &rtwdev->bf_info; - struct rtw_chip_info *chip = rtwdev->chip; struct ieee80211_sta *sta; struct ieee80211_sta_vht_cap *vht_cap; struct ieee80211_sta_vht_cap *ic_vht_cap; @@ -49,6 +49,8 @@ void rtw_bf_assoc(struct rtw_dev *rtwdev, struct ieee80211_vif *vif, sta = ieee80211_find_sta(vif, bssid); if (!sta) { + rcu_read_unlock(); + #if defined(__linux__) rtw_warn(rtwdev, "failed to find station entry for bss %pM\n", bssid); @@ -56,23 +58,25 @@ void rtw_bf_assoc(struct rtw_dev *rtwdev, struct ieee80211_vif *vif, rtw_warn(rtwdev, "failed to find station entry for bss %6D\n", bssid, ":"); #endif - goto out_unlock; + return; } ic_vht_cap = &hw->wiphy->bands[NL80211_BAND_5GHZ]->vht_cap; vht_cap = &sta->deflink.vht_cap; + rcu_read_unlock(); + if ((ic_vht_cap->cap & IEEE80211_VHT_CAP_MU_BEAMFORMEE_CAPABLE) && (vht_cap->cap & IEEE80211_VHT_CAP_MU_BEAMFORMER_CAPABLE)) { if (bfinfo->bfer_mu_cnt >= chip->bfer_mu_max_num) { rtw_dbg(rtwdev, RTW_DBG_BF, "mu bfer number over limit\n"); - goto out_unlock; + return; } ether_addr_copy(bfee->mac_addr, bssid); bfee->role = RTW_BFEE_MU; bfee->p_aid = (bssid[5] << 1) | (bssid[4] >> 7); - bfee->aid = bss_conf->aid; + bfee->aid = vif->cfg.aid; bfinfo->bfer_mu_cnt++; rtw_chip_config_bfee(rtwdev, rtwvif, bfee, true); @@ -80,7 +84,7 @@ void rtw_bf_assoc(struct rtw_dev *rtwdev, struct ieee80211_vif *vif, (vht_cap->cap & IEEE80211_VHT_CAP_SU_BEAMFORMER_CAPABLE)) { if (bfinfo->bfer_su_cnt >= chip->bfer_su_max_num) { rtw_dbg(rtwdev, RTW_DBG_BF, "su bfer number over limit\n"); - goto out_unlock; + return; } sound_dim = vht_cap->cap & @@ -103,9 +107,6 @@ void rtw_bf_assoc(struct rtw_dev *rtwdev, struct ieee80211_vif *vif, rtw_chip_config_bfee(rtwdev, rtwvif, bfee, true); } - -out_unlock: - rcu_read_unlock(); } void rtw_bf_init_bfer_entry_mu(struct rtw_dev *rtwdev, diff --git a/sys/contrib/dev/rtw88/coex.c b/sys/contrib/dev/rtw88/coex.c index cac053f485c3..86467d2f8888 100644 --- a/sys/contrib/dev/rtw88/coex.c +++ b/sys/contrib/dev/rtw88/coex.c @@ -13,7 +13,7 @@ static u8 rtw_coex_next_rssi_state(struct rtw_dev *rtwdev, u8 pre_state, u8 rssi, u8 rssi_thresh) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; u8 tol = chip->rssi_tolerance; u8 next_state; @@ -36,7 +36,7 @@ static u8 rtw_coex_next_rssi_state(struct rtw_dev *rtwdev, u8 pre_state, static void rtw_coex_limited_tx(struct rtw_dev *rtwdev, bool tx_limit_en, bool ampdu_limit_en) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; u8 num_of_active_port = 1; @@ -365,7 +365,7 @@ static void rtw_coex_set_wl_pri_mask(struct rtw_dev *rtwdev, u8 bitmap, void rtw_coex_write_scbd(struct rtw_dev *rtwdev, u16 bitpos, bool set) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; u16 val = 0x2; @@ -400,7 +400,7 @@ EXPORT_SYMBOL(rtw_coex_write_scbd); static u16 rtw_coex_read_scbd(struct rtw_dev *rtwdev) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; if (!chip->scbd_support) return 0; @@ -410,7 +410,7 @@ static u16 rtw_coex_read_scbd(struct rtw_dev *rtwdev) static void rtw_coex_check_rfk(struct rtw_dev *rtwdev) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_coex_rfe *coex_rfe = &coex->rfe; @@ -489,7 +489,7 @@ static void rtw_coex_monitor_bt_ctr(struct rtw_dev *rtwdev) static void rtw_coex_monitor_bt_enable(struct rtw_dev *rtwdev) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_coex_dm *coex_dm = &coex->dm; @@ -524,10 +524,10 @@ static void rtw_coex_monitor_bt_enable(struct rtw_dev *rtwdev) static void rtw_coex_update_wl_link_info(struct rtw_dev *rtwdev, u8 reason) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_coex_dm *coex_dm = &coex->dm; - struct rtw_chip_info *chip = rtwdev->chip; struct rtw_traffic_stats *stats = &rtwdev->stats; bool is_5G = false; bool wl_busy = false; @@ -633,7 +633,7 @@ static struct sk_buff *rtw_coex_info_request(struct rtw_dev *rtwdev, struct rtw_coex *coex = &rtwdev->coex; struct sk_buff *skb_resp = NULL; - mutex_lock(&coex->mutex); + lockdep_assert_held(&rtwdev->mutex); rtw_fw_query_bt_mp_info(rtwdev, req); @@ -650,7 +650,6 @@ static struct sk_buff *rtw_coex_info_request(struct rtw_dev *rtwdev, } out: - mutex_unlock(&coex->mutex); return skb_resp; } @@ -706,10 +705,10 @@ static const char *rtw_coex_get_bt_status_string(u8 bt_status) static void rtw_coex_update_bt_link_info(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_coex_dm *coex_dm = &coex->dm; - struct rtw_chip_info *chip = rtwdev->chip; u8 i; u8 rssi_state; u8 rssi_step; @@ -806,7 +805,7 @@ static void rtw_coex_update_bt_link_info(struct rtw_dev *rtwdev) static void rtw_coex_update_wl_ch_info(struct rtw_dev *rtwdev, u8 type) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_efuse *efuse = &rtwdev->efuse; struct rtw_coex_dm *coex_dm = &rtwdev->coex.dm; struct rtw_coex_stat *coex_stat = &rtwdev->coex.stat; @@ -933,7 +932,7 @@ EXPORT_SYMBOL(rtw_coex_write_indirect_reg); static void rtw_coex_coex_ctrl_owner(struct rtw_dev *rtwdev, bool wifi_control) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; const struct rtw_hw_reg *btg_reg = chip->btg_reg; if (wifi_control) { @@ -981,7 +980,7 @@ static void rtw_coex_mimo_ps(struct rtw_dev *rtwdev, bool force, bool state) static void rtw_btc_wltoggle_table_a(struct rtw_dev *rtwdev, bool force, u8 table_case) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_efuse *efuse = &rtwdev->efuse; u8 h2c_para[6] = {0}; u32 table_wl = 0x5a5a5a5a; @@ -1065,9 +1064,9 @@ static void rtw_coex_set_table(struct rtw_dev *rtwdev, bool force, u32 table0, static void rtw_coex_table(struct rtw_dev *rtwdev, bool force, u8 type) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_dm *coex_dm = &coex->dm; - struct rtw_chip_info *chip = rtwdev->chip; struct rtw_efuse *efuse = &rtwdev->efuse; struct rtw_coex_stat *coex_stat = &coex->stat; @@ -1135,9 +1134,9 @@ static void rtw_coex_power_save_state(struct rtw_dev *rtwdev, u8 ps_type, static void rtw_coex_set_tdma(struct rtw_dev *rtwdev, u8 byte1, u8 byte2, u8 byte3, u8 byte4, u8 byte5) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_dm *coex_dm = &coex->dm; - struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex_stat *coex_stat = &coex->stat; u8 ps_type = COEX_PS_WIFI_NATIVE; bool ap_enable = false; @@ -1193,10 +1192,10 @@ static void rtw_coex_set_tdma(struct rtw_dev *rtwdev, u8 byte1, u8 byte2, static void rtw_coex_tdma(struct rtw_dev *rtwdev, bool force, u32 tcase) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_dm *coex_dm = &coex->dm; struct rtw_coex_stat *coex_stat = &coex->stat; - struct rtw_chip_info *chip = rtwdev->chip; struct rtw_efuse *efuse = &rtwdev->efuse; u8 n, type; bool turn_on; @@ -1526,8 +1525,8 @@ static u8 rtw_coex_algorithm(struct rtw_dev *rtwdev) static void rtw_coex_action_coex_all_off(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; rtw_dbg(rtwdev, RTW_DBG_COEX, "[BTCoex], %s()\n", __func__); @@ -1549,11 +1548,11 @@ static void rtw_coex_action_coex_all_off(struct rtw_dev *rtwdev) static void rtw_coex_action_freerun(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_coex_dm *coex_dm = &coex->dm; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 level = 0; bool bt_afh_loss = true; @@ -1594,8 +1593,8 @@ static void rtw_coex_action_freerun(struct rtw_dev *rtwdev) static void rtw_coex_action_rf4ce(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; rtw_dbg(rtwdev, RTW_DBG_COEX, "[BTCoex], %s()\n", __func__); @@ -1619,8 +1618,8 @@ static void rtw_coex_action_rf4ce(struct rtw_dev *rtwdev) static void rtw_coex_action_bt_whql_test(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; rtw_dbg(rtwdev, RTW_DBG_COEX, "[BTCoex], %s()\n", __func__); @@ -1644,10 +1643,10 @@ static void rtw_coex_action_bt_whql_test(struct rtw_dev *rtwdev) static void rtw_coex_action_bt_relink(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; u32 slot_type = 0; @@ -1684,11 +1683,11 @@ static void rtw_coex_action_bt_relink(struct rtw_dev *rtwdev) static void rtw_coex_action_bt_idle(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_coex_dm *coex_dm = &coex->dm; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex_rfe *coex_rfe = &coex->rfe; u8 table_case = 0xff, tdma_case = 0xff; @@ -1753,10 +1752,10 @@ exit: static void rtw_coex_action_bt_inquiry(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; bool wl_hi_pri = false; u8 table_case, tdma_case; u32 slot_type = 0; @@ -1853,11 +1852,11 @@ static void rtw_coex_action_bt_inquiry(struct rtw_dev *rtwdev) static void rtw_coex_action_bt_game_hid(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_efuse *efuse = &rtwdev->efuse; struct rtw_coex_dm *coex_dm = &coex->dm; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; rtw_dbg(rtwdev, RTW_DBG_COEX, "[BTCoex], %s()\n", __func__); @@ -1901,10 +1900,10 @@ static void rtw_coex_action_bt_game_hid(struct rtw_dev *rtwdev) static void rtw_coex_action_bt_hfp(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; rtw_dbg(rtwdev, RTW_DBG_COEX, "[BTCoex], %s()\n", __func__); @@ -1932,10 +1931,10 @@ static void rtw_coex_action_bt_hfp(struct rtw_dev *rtwdev) static void rtw_coex_action_bt_hid(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; u32 slot_type = 0; bool bt_multi_link_remain = false, is_toggle_table = false; @@ -2015,11 +2014,11 @@ static void rtw_coex_action_bt_hid(struct rtw_dev *rtwdev) static void rtw_coex_action_bt_a2dp(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_coex_dm *coex_dm = &coex->dm; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; u32 slot_type = 0; @@ -2057,10 +2056,10 @@ static void rtw_coex_action_bt_a2dp(struct rtw_dev *rtwdev) static void rtw_coex_action_bt_a2dpsink(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; bool ap_enable = false; @@ -2096,10 +2095,10 @@ static void rtw_coex_action_bt_a2dpsink(struct rtw_dev *rtwdev) static void rtw_coex_action_bt_pan(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; rtw_dbg(rtwdev, RTW_DBG_COEX, "[BTCoex], %s()\n", __func__); @@ -2133,11 +2132,11 @@ static void rtw_coex_action_bt_pan(struct rtw_dev *rtwdev) static void rtw_coex_action_bt_a2dp_hid(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_coex_dm *coex_dm = &coex->dm; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case, interval = 0; u32 slot_type = 0; bool is_toggle_table = false; @@ -2190,10 +2189,10 @@ static void rtw_coex_action_bt_a2dp_hid(struct rtw_dev *rtwdev) static void rtw_coex_action_bt_a2dp_pan(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; bool wl_cpt_test = false, bt_cpt_test = false; @@ -2247,10 +2246,10 @@ static void rtw_coex_action_bt_a2dp_pan(struct rtw_dev *rtwdev) static void rtw_coex_action_bt_pan_hid(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; rtw_dbg(rtwdev, RTW_DBG_COEX, "[BTCoex], %s()\n", __func__); @@ -2282,10 +2281,10 @@ static void rtw_coex_action_bt_pan_hid(struct rtw_dev *rtwdev) static void rtw_coex_action_bt_a2dp_pan_hid(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; rtw_dbg(rtwdev, RTW_DBG_COEX, "[BTCoex], %s()\n", __func__); @@ -2316,9 +2315,9 @@ static void rtw_coex_action_bt_a2dp_pan_hid(struct rtw_dev *rtwdev) static void rtw_coex_action_wl_under5g(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex_stat *coex_stat = &coex->stat; u8 table_case, tdma_case; @@ -2348,8 +2347,8 @@ static void rtw_coex_action_wl_under5g(struct rtw_dev *rtwdev) static void rtw_coex_action_wl_only(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; rtw_dbg(rtwdev, RTW_DBG_COEX, "[BTCoex], %s()\n", __func__); @@ -2372,9 +2371,9 @@ static void rtw_coex_action_wl_only(struct rtw_dev *rtwdev) static void rtw_coex_action_wl_native_lps(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex_stat *coex_stat = &coex->stat; u8 table_case, tdma_case; @@ -2411,10 +2410,10 @@ static void rtw_coex_action_wl_native_lps(struct rtw_dev *rtwdev) static void rtw_coex_action_wl_linkscan(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; u32 slot_type = 0; @@ -2451,8 +2450,8 @@ static void rtw_coex_action_wl_linkscan(struct rtw_dev *rtwdev) static void rtw_coex_action_wl_not_connected(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 table_case, tdma_case; rtw_dbg(rtwdev, RTW_DBG_COEX, "[BTCoex], %s()\n", __func__); @@ -2528,8 +2527,8 @@ static void rtw_coex_action_wl_connected(struct rtw_dev *rtwdev) static void rtw_coex_run_coex(struct rtw_dev *rtwdev, u8 reason) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; - struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex_dm *coex_dm = &coex->dm; struct rtw_coex_stat *coex_stat = &coex->stat; bool rf4ce_en = false; @@ -3002,9 +3001,9 @@ void rtw_coex_media_status_notify(struct rtw_dev *rtwdev, u8 type) void rtw_coex_bt_info_notify(struct rtw_dev *rtwdev, u8 *buf, u8 length) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; - struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex_dm *coex_dm = &coex->dm; u32 bt_relink_time; u8 i, rsp_source = 0, type; @@ -3270,8 +3269,8 @@ static const u8 coex_bt_hidinfo_xb[] = {0x58, 0x62, 0x6f}; void rtw_coex_bt_hid_info_notify(struct rtw_dev *rtwdev, u8 *buf, u8 length) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; - struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_coex_hid *hidinfo; struct rtw_coex_hid_info_a *hida; @@ -3360,8 +3359,8 @@ void rtw_coex_bt_hid_info_notify(struct rtw_dev *rtwdev, u8 *buf, u8 length) void rtw_coex_query_bt_hid_list(struct rtw_dev *rtwdev) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex *coex = &rtwdev->coex; - struct rtw_chip_info *chip = rtwdev->chip; struct rtw_coex_stat *coex_stat = &coex->stat; struct rtw_coex_hid *hidinfo; u8 i, handle; @@ -3582,7 +3581,7 @@ static const char *rtw_coex_get_reason_string(u8 reason) static u8 rtw_coex_get_table_index(struct rtw_dev *rtwdev, u32 wl_reg_6c0, u32 wl_reg_6c4) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_efuse *efuse = &rtwdev->efuse; u8 ans = 0xFF; u8 n, i; @@ -3618,8 +3617,8 @@ static u8 rtw_coex_get_table_index(struct rtw_dev *rtwdev, u32 wl_reg_6c0, static u8 rtw_coex_get_tdma_index(struct rtw_dev *rtwdev, u8 *tdma_para) { + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_efuse *efuse = &rtwdev->efuse; - struct rtw_chip_info *chip = rtwdev->chip; u8 ans = 0xFF; u8 n, i, j; u8 load_cur_tab_val; @@ -3736,7 +3735,7 @@ static int rtw_coex_val_info(struct rtw_dev *rtwdev, static void rtw_coex_set_coexinfo_hw(struct rtw_dev *rtwdev, struct seq_file *m) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; const struct rtw_reg_domain *reg; char addr_info[INFO_SIZE]; int n_addr = 0; @@ -3910,7 +3909,7 @@ static const char *rtw_coex_get_wl_coex_mode(u8 coex_wl_link_mode) void rtw_coex_display_coex_info(struct rtw_dev *rtwdev, struct seq_file *m) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; struct rtw_dm_info *dm_info = &rtwdev->dm_info; struct rtw_coex *coex = &rtwdev->coex; struct rtw_coex_stat *coex_stat = &coex->stat; @@ -4057,7 +4056,7 @@ void rtw_coex_display_coex_info(struct rtw_dev *rtwdev, struct seq_file *m) rtwdev->stats.tx_throughput, rtwdev->stats.rx_throughput); seq_printf(m, "%-40s = %u/ %u/ %u\n", "IPS/ Low Power/ PS mode", - test_bit(RTW_FLAG_INACTIVE_PS, rtwdev->flags), + !test_bit(RTW_FLAG_POWERON, rtwdev->flags), test_bit(RTW_FLAG_LEISURE_PS_DEEP, rtwdev->flags), rtwdev->lps_conf.mode); diff --git a/sys/contrib/dev/rtw88/coex.h b/sys/contrib/dev/rtw88/coex.h index 07fa7aa34d4b..57cf29da9ea4 100644 --- a/sys/contrib/dev/rtw88/coex.h +++ b/sys/contrib/dev/rtw88/coex.h @@ -327,7 +327,7 @@ struct coex_rf_para { static inline void rtw_coex_set_init(struct rtw_dev *rtwdev) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; chip->ops->coex_set_init(rtwdev); } @@ -335,7 +335,7 @@ static inline void rtw_coex_set_init(struct rtw_dev *rtwdev) static inline void rtw_coex_set_ant_switch(struct rtw_dev *rtwdev, u8 ctrl_type, u8 pos_type) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; if (!chip->ops->coex_set_ant_switch) return; @@ -345,28 +345,28 @@ void rtw_coex_set_ant_switch(struct rtw_dev *rtwdev, u8 ctrl_type, u8 pos_type) static inline void rtw_coex_set_gnt_fix(struct rtw_dev *rtwdev) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; chip->ops->coex_set_gnt_fix(rtwdev); } static inline void rtw_coex_set_gnt_debug(struct rtw_dev *rtwdev) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; chip->ops->coex_set_gnt_debug(rtwdev); } static inline void rtw_coex_set_rfe_type(struct rtw_dev *rtwdev) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; chip->ops->coex_set_rfe_type(rtwdev); } static inline void rtw_coex_set_wl_tx_power(struct rtw_dev *rtwdev, u8 wl_pwr) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; chip->ops->coex_set_wl_tx_power(rtwdev, wl_pwr); } @@ -374,7 +374,7 @@ static inline void rtw_coex_set_wl_tx_power(struct rtw_dev *rtwdev, u8 wl_pwr) static inline void rtw_coex_set_wl_rx_gain(struct rtw_dev *rtwdev, bool low_gain) { - struct rtw_chip_info *chip = rtwdev->chip; + const struct rtw_chip_info *chip = rtwdev->chip; chip->ops->coex_set_wl_rx_gain(rtwdev, low_gain); } diff --git a/sys/contrib/dev/rtw88/debug.c b/sys/contrib/dev/rtw88/debug.c index fbbd11be5eef..d745c774aa6f 100644 --- a/sys/contrib/dev/rtw88/debug.c +++ b/sys/contrib/dev/rtw88/debug.c @@ -144,7 +144,9 @@ static int rtw_debugfs_get_rf_read(struct seq_file *m, void *v) addr = debugfs_priv->rf_addr; mask = debugfs_priv->rf_mask; + mutex_lock(&rtwdev->mutex); val = rtw_read_rf(rtwdev, path, addr, mask); + mutex_unlock(&rtwdev->mutex); seq_printf(m, "rf_read path:%d addr:0x%08x mask:0x%08x val=0x%08x\n", path, addr, mask, val); @@ -181,8 +183,8 @@ static int rtw_debugfs_copy_from_user(char tmp[], int size, tmp_len = (count > size - 1 ? size - 1 : count); - if (!buffer || copy_from_user(tmp, buffer, tmp_len)) - return count; + if (copy_from_user(tmp, buffer, tmp_len)) + return -EFAULT; tmp[tmp_len] = '\0'; @@ -199,13 +201,16 @@ static ssize_t rtw_debugfs_set_read_reg(struct file *filp, char tmp[32 + 1]; u32 addr, len; int num; + int ret; - rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 2); + ret = rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 2); + if (ret) + return ret; num = sscanf(tmp, "%x %x", &addr, &len); if (num != 2) - return count; + return -EINVAL; if (len != 1 && len != 2 && len != 4) { rtw_warn(rtwdev, "read reg setting wrong len\n"); @@ -286,8 +291,11 @@ static ssize_t rtw_debugfs_set_rsvd_page(struct file *filp, char tmp[32 + 1]; u32 offset, page_num; int num; + int ret; - rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 2); + ret = rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 2); + if (ret) + return ret; num = sscanf(tmp, "%d %d", &offset, &page_num); @@ -312,8 +320,11 @@ static ssize_t rtw_debugfs_set_single_input(struct file *filp, char tmp[32 + 1]; u32 input; int num; + int ret; - rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 1); + ret = rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 1); + if (ret) + return ret; num = kstrtoint(tmp, 0, &input); @@ -336,14 +347,17 @@ static ssize_t rtw_debugfs_set_write_reg(struct file *filp, char tmp[32 + 1]; u32 addr, val, len; int num; + int ret; - rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 3); + ret = rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 3); + if (ret) + return ret; /* write BB/MAC register */ num = sscanf(tmp, "%x %x %x", &addr, &val, &len); if (num != 3) - return count; + return -EINVAL; switch (len) { case 1: @@ -379,8 +393,11 @@ static ssize_t rtw_debugfs_set_h2c(struct file *filp, char tmp[32 + 1]; u8 param[8]; int num; + int ret; - rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 3); + ret = rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 3); + if (ret) + return ret; num = sscanf(tmp, "%hhx,%hhx,%hhx,%hhx,%hhx,%hhx,%hhx,%hhx", ¶m[0], ¶m[1], ¶m[2], ¶m[3], @@ -390,7 +407,9 @@ static ssize_t rtw_debugfs_set_h2c(struct file *filp, return -EINVAL; } + mutex_lock(&rtwdev->mutex); rtw_fw_h2c_cmd_dbg(rtwdev, param); + mutex_unlock(&rtwdev->mutex); return count; } @@ -404,17 +423,22 @@ static ssize_t rtw_debugfs_set_rf_write(struct file *filp, char tmp[32 + 1]; u32 path, addr, mask, val; int num; + int ret; - rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 4); + ret = rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 4); + if (ret) + return ret; num = sscanf(tmp, "%x %x %x %x", &path, &addr, &mask, &val); if (num != 4) { rtw_warn(rtwdev, "invalid args, [path] [addr] [mask] [val]\n"); - return count; + return -EINVAL; } + mutex_lock(&rtwdev->mutex); rtw_write_rf(rtwdev, path, addr, mask, val); + mutex_unlock(&rtwdev->mutex); rtw_dbg(rtwdev, RTW_DBG_DEBUGFS, "write_rf path:%d addr:0x%08x mask:0x%08x, val:0x%08x\n", path, addr, mask, val); @@ -432,14 +456,17 @@ static ssize_t rtw_debugfs_set_rf_read(struct file *filp, char tmp[32 + 1]; u32 path, addr, mask; int num; + int ret; - rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 3); + ret = rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 3); + if (ret) + return ret; num = sscanf(tmp, "%x %x %x", &path, &addr, &mask); if (num != 3) { rtw_warn(rtwdev, "invalid args, [path] [addr] [mask] [val]\n"); - return count; + return -EINVAL; } debugfs_priv->rf_path = path; @@ -461,7 +488,9 @@ static ssize_t rtw_debugfs_set_fix_rate(struct file *filp, char tmp[32 + 1]; int ret; - rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 1); + ret = rtw_debugfs_copy_from_user(tmp, sizeof(tmp), buffer, count, 1); + if (ret) + return ret; ret = kstrtou8(tmp, 0, &fix_rate); if (ret) { @@ -519,6 +548,8 @@ static int rtw_debug_get_rf_dump(struct seq_file *m, void *v) u32 addr, offset, data; u8 path; + mutex_lock(&rtwdev->mutex); + for (path = 0; path < rtwdev->hal.rf_path_num; path++) { seq_printf(m, "RF path:%d\n", path); *** 7359 LINES SKIPPED *** From nobody Mon Oct 9 23:16:30 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FKB6Ctgz4wgs1; Mon, 9 Oct 2023 23:16:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4FKB5cfvz3RPv; Mon, 9 Oct 2023 23:16:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893390; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/RowOqRaZs2qETrChu83cBdIDRpJheLTsfKG5669dts=; b=tabhs7deTvg/mV3iffdPkYL/qz2mjfQz8mfvqmQV5GwVqTxNVpTDP27r6l9/vUXhCTpaOo ZDoLq7qf1jAcVAS4Etdrnmr/HKzHDQp1Np7bP54tT7mi5+u288Ys5q1LewYqaLfu31g5Gn h1229Z9z0LAss6qSQxo4EKor7s4pyFt9XzgJqYSbiJq7gcOXj6sn2KfWJ6KOzIIb4+E/nm 0N7GGxkFlpdGYoa7tFEy2MVBdOR1VUAl4yXpymAQMM39jZvNWWPsiCKz3lKKkG/NE755sr Echi4xexyQhpYUMxIAL+3Hp1qxXM3koIO+FFfRN1V8UF8z3qDSofGexeTNSs5w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893390; a=rsa-sha256; cv=none; b=kUE58A8JT5RlwW+nIWeAWu2vs4W0W7ycpPWL/H7K7NCI1Qb/G212t3AD4CVXturGSrhrEn VMelL3RN59iN4A+4MtnnjmQEtTjOSW+3e2HJ5PTpN05YHP61FFFvz7EICW/ZU7VHjdVO5X OY8NG9Uzgjd8uy0VbaoFOLjWAJgGam7JU4fFu274b8UYegKyeQur6kgRYMwnqpHI2KLtBO JYmvglaA8tvJFeZrHWvyN/k3ogem/YpnPGlI31Pa2SbFhXhGPnWkyHh2E6YEpGagkYBEA3 gm4GwyuR9551H9s+nxM4zbcxOrkLXXWk01VpgZOLyXctff6t7sbOHXMxOLE98Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893390; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/RowOqRaZs2qETrChu83cBdIDRpJheLTsfKG5669dts=; b=Kqar/PqYP5eC6oPz9L9TwnDpX/pg3E979oVXuInRU0GrmMDNavTlB/hIXSLG1ATqBHF+YJ QM6RpvsZ4kj3x1CVGrrGYIVRdlJ3J4j8KFQjXoGapMzEHOMB+7pqR6/9nOMXC1JVX/t7Xu YIxvSMGF/JqneE/2s3nQXWpd4ifTe++uWVLUDb3o3Uxx2GnafJ5RUdXRMQRt/LKmMDGiSa SHW1l2U3k/oRkuakTe9tYwGIa5Nm9j+A+eLak7BlQjF0VV9fq922sZpFwunIe1ArjNFNqy /vW9eXjATzlr/rDle/E9sCUCpyKm/+zHI3NGFZOHI98jpn+aRF3P0INbzg43lw== 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 4S4FKB4jhMzl8; Mon, 9 Oct 2023 23:16:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGUWZ071961; Mon, 9 Oct 2023 23:16:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGUAP071958; Mon, 9 Oct 2023 23:16:30 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:30 GMT Message-Id: <202310092316.399NGUAP071958@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 3b4fb0633c42 - releng/14.0 - iwlwifi firmware: update up-to -83 / updated -77 for others List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 3b4fb0633c421335ced9b64fe62ad6e8b530baa6 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=3b4fb0633c421335ced9b64fe62ad6e8b530baa6 commit 3b4fb0633c421335ced9b64fe62ad6e8b530baa6 Author: Bjoern A. Zeeb AuthorDate: 2023-06-11 00:45:37 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:55 +0000 iwlwifi firmware: update up-to -83 / updated -77 for others Firmware was obtained from linux-firmware at dfa11466cf000120d1551146fd5bf78c44941eda. Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit 027768a21217499dd85aba8608715a5bf66a7857) (cherry picked from commit e504b5da3ef2c24b4e09e7331e9628a8299540f6) --- .../iwlwififw/iwlwifi-9000-pu-b0-jf-b0-46.ucode | Bin 1518788 -> 1518772 bytes .../iwlwififw/iwlwifi-9260-th-b0-jf-b0-46.ucode | Bin 1489548 -> 1489652 bytes ...hr-b0-73.ucode => iwlwifi-Qu-b0-hr-b0-77.ucode} | Bin 1369840 -> 1404704 bytes ...jf-b0-73.ucode => iwlwifi-Qu-b0-jf-b0-77.ucode} | Bin 1290220 -> 1322436 bytes ...hr-b0-73.ucode => iwlwifi-Qu-c0-hr-b0-77.ucode} | Bin 1369976 -> 1404720 bytes ...jf-b0-73.ucode => iwlwifi-Qu-c0-jf-b0-77.ucode} | Bin 1290100 -> 1322452 bytes ...r-b0-73.ucode => iwlwifi-QuZ-a0-hr-b0-77.ucode} | Bin 1369856 -> 1404840 bytes ...f-b0-73.ucode => iwlwifi-QuZ-a0-jf-b0-77.ucode} | Bin 1290084 -> 1321956 bytes ...lwifi-cc-a0-73.ucode => iwlwifi-cc-a0-77.ucode} | Bin 1333296 -> 1366144 bytes .../dev/iwlwififw/iwlwifi-so-a0-gf-a0-73.ucode | Bin 1563692 -> 0 bytes .../dev/iwlwififw/iwlwifi-so-a0-gf-a0-83.ucode | Bin 0 -> 1739988 bytes sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0.pnvm | Bin 41808 -> 55580 bytes .../dev/iwlwififw/iwlwifi-so-a0-gf4-a0-73.ucode | Bin 1587800 -> 0 bytes .../dev/iwlwififw/iwlwifi-so-a0-gf4-a0-83.ucode | Bin 0 -> 1703968 bytes .../dev/iwlwififw/iwlwifi-so-a0-gf4-a0.pnvm | Bin 28064 -> 28064 bytes ...hr-b0-73.ucode => iwlwifi-so-a0-hr-b0-81.ucode} | Bin 1465208 -> 1539288 bytes ...jf-b0-73.ucode => iwlwifi-so-a0-jf-b0-77.ucode} | Bin 1409336 -> 1446036 bytes .../dev/iwlwififw/iwlwifi-ty-a0-gf-a0-73.ucode | Bin 1502900 -> 0 bytes .../dev/iwlwififw/iwlwifi-ty-a0-gf-a0-83.ucode | Bin 0 -> 1683076 bytes sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0.pnvm | Bin 41588 -> 55484 bytes .../iwlwififw/iwlwifi-Qu-b0-hr-b0-fw/Makefile | 2 +- .../iwlwififw/iwlwifi-Qu-b0-jf-b0-fw/Makefile | 2 +- .../iwlwififw/iwlwifi-Qu-c0-hr-b0-fw/Makefile | 2 +- .../iwlwififw/iwlwifi-Qu-c0-jf-b0-fw/Makefile | 2 +- .../iwlwififw/iwlwifi-QuZ-a0-hr-b0-fw/Makefile | 2 +- .../iwlwififw/iwlwifi-QuZ-a0-jf-b0-fw/Makefile | 2 +- sys/modules/iwlwififw/iwlwifi-cc-a0-fw/Makefile | 2 +- .../iwlwififw/iwlwifi-so-a0-gf-a0-fw/Makefile | 2 +- .../iwlwififw/iwlwifi-so-a0-gf-a0-pnvm/Makefile | 2 +- .../iwlwififw/iwlwifi-so-a0-gf4-a0-fw/Makefile | 2 +- .../iwlwififw/iwlwifi-so-a0-gf4-a0-pnvm/Makefile | 2 +- .../iwlwififw/iwlwifi-so-a0-hr-b0-fw/Makefile | 2 +- .../iwlwififw/iwlwifi-so-a0-jf-b0-fw/Makefile | 2 +- .../iwlwififw/iwlwifi-ty-a0-gf-a0-fw/Makefile | 2 +- .../iwlwififw/iwlwifi-ty-a0-gf-a0-pnvm/Makefile | 2 +- 35 files changed, 15 insertions(+), 15 deletions(-) diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-9000-pu-b0-jf-b0-46.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-9000-pu-b0-jf-b0-46.ucode index f9ea46dc928c..9af424f1ce06 100644 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-9000-pu-b0-jf-b0-46.ucode and b/sys/contrib/dev/iwlwififw/iwlwifi-9000-pu-b0-jf-b0-46.ucode differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-9260-th-b0-jf-b0-46.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-9260-th-b0-jf-b0-46.ucode index fec9d0aba254..4c2b25e585cb 100644 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-9260-th-b0-jf-b0-46.ucode and b/sys/contrib/dev/iwlwififw/iwlwifi-9260-th-b0-jf-b0-46.ucode differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-hr-b0-73.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-hr-b0-77.ucode similarity index 52% rename from sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-hr-b0-73.ucode rename to sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-hr-b0-77.ucode index 26abb3a850a4..de6cd8b98985 100644 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-hr-b0-73.ucode and b/sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-hr-b0-77.ucode differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-jf-b0-73.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-jf-b0-77.ucode similarity index 52% rename from sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-jf-b0-73.ucode rename to sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-jf-b0-77.ucode index 072064dde7b1..ad87490d470b 100644 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-jf-b0-73.ucode and b/sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-jf-b0-77.ucode differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-hr-b0-73.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-hr-b0-77.ucode similarity index 51% rename from sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-hr-b0-73.ucode rename to sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-hr-b0-77.ucode index 16e42ff8889f..37e1c7af3f16 100644 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-hr-b0-73.ucode and b/sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-hr-b0-77.ucode differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-jf-b0-73.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-jf-b0-77.ucode similarity index 52% rename from sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-jf-b0-73.ucode rename to sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-jf-b0-77.ucode index 4e88eb24ba76..bd0b2b249894 100644 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-jf-b0-73.ucode and b/sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-jf-b0-77.ucode differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-hr-b0-73.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-hr-b0-77.ucode similarity index 52% rename from sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-hr-b0-73.ucode rename to sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-hr-b0-77.ucode index c3a23c81643c..256997390af6 100644 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-c0-hr-b0-73.ucode and b/sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-hr-b0-77.ucode differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-jf-b0-73.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-jf-b0-77.ucode similarity index 52% rename from sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-jf-b0-73.ucode rename to sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-jf-b0-77.ucode index e1ecc31408e2..7c2a06a2dd2e 100644 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-Qu-b0-jf-b0-73.ucode and b/sys/contrib/dev/iwlwififw/iwlwifi-QuZ-a0-jf-b0-77.ucode differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-cc-a0-73.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-cc-a0-77.ucode similarity index 51% rename from sys/contrib/dev/iwlwififw/iwlwifi-cc-a0-73.ucode rename to sys/contrib/dev/iwlwififw/iwlwifi-cc-a0-77.ucode index 9f7df7693322..d138e34af24d 100644 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-cc-a0-73.ucode and b/sys/contrib/dev/iwlwififw/iwlwifi-cc-a0-77.ucode differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0-73.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0-73.ucode deleted file mode 100644 index 196a3bda21b7..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0-73.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0-83.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0-83.ucode new file mode 100644 index 000000000000..dbb15f487716 Binary files /dev/null and b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0-83.ucode differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0.pnvm b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0.pnvm index b649de0118ef..9dad35a1f5f5 100644 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0.pnvm and b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf-a0.pnvm differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0-73.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0-73.ucode deleted file mode 100644 index c1595fd0baa8..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0-73.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0-83.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0-83.ucode new file mode 100644 index 000000000000..1bc07d83ac07 Binary files /dev/null and b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0-83.ucode differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0.pnvm b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0.pnvm index 8658ebaa8fa8..86b9a7c63776 100644 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0.pnvm and b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-gf4-a0.pnvm differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-hr-b0-73.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-hr-b0-81.ucode similarity index 50% rename from sys/contrib/dev/iwlwififw/iwlwifi-so-a0-hr-b0-73.ucode rename to sys/contrib/dev/iwlwififw/iwlwifi-so-a0-hr-b0-81.ucode index 2da5b4cdcae9..fc8558c6cc90 100644 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-hr-b0-73.ucode and b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-hr-b0-81.ucode differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-jf-b0-73.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-jf-b0-77.ucode similarity index 54% rename from sys/contrib/dev/iwlwififw/iwlwifi-so-a0-jf-b0-73.ucode rename to sys/contrib/dev/iwlwififw/iwlwifi-so-a0-jf-b0-77.ucode index 4704c56f8456..3649a1c89238 100644 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-jf-b0-73.ucode and b/sys/contrib/dev/iwlwififw/iwlwifi-so-a0-jf-b0-77.ucode differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0-73.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0-73.ucode deleted file mode 100644 index 1a6592408f1d..000000000000 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0-73.ucode and /dev/null differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0-83.ucode b/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0-83.ucode new file mode 100644 index 000000000000..3fdd6d5a0d9a Binary files /dev/null and b/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0-83.ucode differ diff --git a/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0.pnvm b/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0.pnvm index 70882a9127db..68b8668df93d 100644 Binary files a/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0.pnvm and b/sys/contrib/dev/iwlwififw/iwlwifi-ty-a0-gf-a0.pnvm differ diff --git a/sys/modules/iwlwififw/iwlwifi-Qu-b0-hr-b0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-Qu-b0-hr-b0-fw/Makefile index bc41b21969dd..e781e790a048 100644 --- a/sys/modules/iwlwififw/iwlwifi-Qu-b0-hr-b0-fw/Makefile +++ b/sys/modules/iwlwififw/iwlwifi-Qu-b0-hr-b0-fw/Makefile @@ -1,5 +1,5 @@ -FWVERSION= 73 +FWVERSION= 77 NAME= Qu-b0-hr-b0 .include diff --git a/sys/modules/iwlwififw/iwlwifi-Qu-b0-jf-b0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-Qu-b0-jf-b0-fw/Makefile index 125d3e969e51..ac8b13cd1777 100644 --- a/sys/modules/iwlwififw/iwlwifi-Qu-b0-jf-b0-fw/Makefile +++ b/sys/modules/iwlwififw/iwlwifi-Qu-b0-jf-b0-fw/Makefile @@ -1,5 +1,5 @@ -FWVERSION= 73 +FWVERSION= 77 NAME= Qu-b0-jf-b0 .include diff --git a/sys/modules/iwlwififw/iwlwifi-Qu-c0-hr-b0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-Qu-c0-hr-b0-fw/Makefile index c254768fcb68..15389b3c3e2f 100644 --- a/sys/modules/iwlwififw/iwlwifi-Qu-c0-hr-b0-fw/Makefile +++ b/sys/modules/iwlwififw/iwlwifi-Qu-c0-hr-b0-fw/Makefile @@ -1,5 +1,5 @@ -FWVERSION= 73 +FWVERSION= 77 NAME= Qu-c0-hr-b0 .include diff --git a/sys/modules/iwlwififw/iwlwifi-Qu-c0-jf-b0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-Qu-c0-jf-b0-fw/Makefile index af8ad15e7576..bd9cd5077021 100644 --- a/sys/modules/iwlwififw/iwlwifi-Qu-c0-jf-b0-fw/Makefile +++ b/sys/modules/iwlwififw/iwlwifi-Qu-c0-jf-b0-fw/Makefile @@ -1,5 +1,5 @@ -FWVERSION= 73 +FWVERSION= 77 NAME= Qu-c0-jf-b0 .include diff --git a/sys/modules/iwlwififw/iwlwifi-QuZ-a0-hr-b0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-QuZ-a0-hr-b0-fw/Makefile index d89f4c878d7b..d15ee3643679 100644 --- a/sys/modules/iwlwififw/iwlwifi-QuZ-a0-hr-b0-fw/Makefile +++ b/sys/modules/iwlwififw/iwlwifi-QuZ-a0-hr-b0-fw/Makefile @@ -1,5 +1,5 @@ -FWVERSION= 73 +FWVERSION= 77 NAME= QuZ-a0-hr-b0 .include diff --git a/sys/modules/iwlwififw/iwlwifi-QuZ-a0-jf-b0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-QuZ-a0-jf-b0-fw/Makefile index e92608872e07..ac0f398a10d6 100644 --- a/sys/modules/iwlwififw/iwlwifi-QuZ-a0-jf-b0-fw/Makefile +++ b/sys/modules/iwlwififw/iwlwifi-QuZ-a0-jf-b0-fw/Makefile @@ -1,5 +1,5 @@ -FWVERSION= 73 +FWVERSION= 77 NAME= QuZ-a0-jf-b0 .include diff --git a/sys/modules/iwlwififw/iwlwifi-cc-a0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-cc-a0-fw/Makefile index 0cb3830c4d57..645e3c94684a 100644 --- a/sys/modules/iwlwififw/iwlwifi-cc-a0-fw/Makefile +++ b/sys/modules/iwlwififw/iwlwifi-cc-a0-fw/Makefile @@ -1,5 +1,5 @@ -FWVERSION= 73 +FWVERSION= 77 NAME= cc-a0 .include diff --git a/sys/modules/iwlwififw/iwlwifi-so-a0-gf-a0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-so-a0-gf-a0-fw/Makefile index 98e1efddd7f3..4106eedfa339 100644 --- a/sys/modules/iwlwififw/iwlwifi-so-a0-gf-a0-fw/Makefile +++ b/sys/modules/iwlwififw/iwlwifi-so-a0-gf-a0-fw/Makefile @@ -1,5 +1,5 @@ -FWVERSION= 73 +FWVERSION= 83 NAME= so-a0-gf-a0 .include diff --git a/sys/modules/iwlwififw/iwlwifi-so-a0-gf-a0-pnvm/Makefile b/sys/modules/iwlwififw/iwlwifi-so-a0-gf-a0-pnvm/Makefile index 6a4085119166..56b5cbde6c26 100644 --- a/sys/modules/iwlwififw/iwlwifi-so-a0-gf-a0-pnvm/Makefile +++ b/sys/modules/iwlwififw/iwlwifi-so-a0-gf-a0-pnvm/Makefile @@ -1,5 +1,5 @@ -FWVERSION= 73 +FWVERSION= 83 NAME= so-a0-gf-a0 EXT= pnvm _NAME= iwlwifi-${NAME}.${EXT} diff --git a/sys/modules/iwlwififw/iwlwifi-so-a0-gf4-a0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-so-a0-gf4-a0-fw/Makefile index 44cd873e0b8e..f89756193b89 100644 --- a/sys/modules/iwlwififw/iwlwifi-so-a0-gf4-a0-fw/Makefile +++ b/sys/modules/iwlwififw/iwlwifi-so-a0-gf4-a0-fw/Makefile @@ -1,5 +1,5 @@ -FWVERSION= 73 +FWVERSION= 83 NAME= so-a0-gf4-a0 .include diff --git a/sys/modules/iwlwififw/iwlwifi-so-a0-gf4-a0-pnvm/Makefile b/sys/modules/iwlwififw/iwlwifi-so-a0-gf4-a0-pnvm/Makefile index 5a63a147c156..a13ba593b628 100644 --- a/sys/modules/iwlwififw/iwlwifi-so-a0-gf4-a0-pnvm/Makefile +++ b/sys/modules/iwlwififw/iwlwifi-so-a0-gf4-a0-pnvm/Makefile @@ -1,5 +1,5 @@ -FWVERSION= 73 +FWVERSION= 83 NAME= so-a0-gf4-a0 EXT= pnvm _NAME= iwlwifi-${NAME}.${EXT} diff --git a/sys/modules/iwlwififw/iwlwifi-so-a0-hr-b0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-so-a0-hr-b0-fw/Makefile index b95aba38ed80..ae908c41376a 100644 --- a/sys/modules/iwlwififw/iwlwifi-so-a0-hr-b0-fw/Makefile +++ b/sys/modules/iwlwififw/iwlwifi-so-a0-hr-b0-fw/Makefile @@ -1,5 +1,5 @@ -FWVERSION= 73 +FWVERSION= 81 NAME= so-a0-hr-b0 .include diff --git a/sys/modules/iwlwififw/iwlwifi-so-a0-jf-b0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-so-a0-jf-b0-fw/Makefile index 0211cf81d4e3..372a04314cf7 100644 --- a/sys/modules/iwlwififw/iwlwifi-so-a0-jf-b0-fw/Makefile +++ b/sys/modules/iwlwififw/iwlwifi-so-a0-jf-b0-fw/Makefile @@ -1,5 +1,5 @@ -FWVERSION= 73 +FWVERSION= 77 NAME= so-a0-jf-b0 .include diff --git a/sys/modules/iwlwififw/iwlwifi-ty-a0-gf-a0-fw/Makefile b/sys/modules/iwlwififw/iwlwifi-ty-a0-gf-a0-fw/Makefile index 62c98afb76ba..3bb0931b5248 100644 --- a/sys/modules/iwlwififw/iwlwifi-ty-a0-gf-a0-fw/Makefile +++ b/sys/modules/iwlwififw/iwlwifi-ty-a0-gf-a0-fw/Makefile @@ -1,5 +1,5 @@ -FWVERSION= 73 +FWVERSION= 83 NAME= ty-a0-gf-a0 .include diff --git a/sys/modules/iwlwififw/iwlwifi-ty-a0-gf-a0-pnvm/Makefile b/sys/modules/iwlwififw/iwlwifi-ty-a0-gf-a0-pnvm/Makefile index f61111576131..1dcb41414755 100644 --- a/sys/modules/iwlwififw/iwlwifi-ty-a0-gf-a0-pnvm/Makefile +++ b/sys/modules/iwlwififw/iwlwifi-ty-a0-gf-a0-pnvm/Makefile @@ -1,5 +1,5 @@ -FWVERSION= 73 +FWVERSION= 83 NAME= ty-a0-gf-a0 EXT= pnvm _NAME= iwlwifi-${NAME}.${EXT} From nobody Mon Oct 9 23:16:31 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FKC6xfhz4wgvg; Mon, 9 Oct 2023 23:16: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 4S4FKC6BV3z3RWZ; Mon, 9 Oct 2023 23:16:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893391; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=x3OcUJaNRmOm3BKDKIjYToWnM3J2kUvIUbesNdAERBI=; b=GvJP7S2N1AHbCgnE9b5PJiwY7Z2vF928cSiEqUrYVnQNymfZHayjrVrl3frgXEDAS4YPpD KyCC7M95N+CiiVPvTln2je9vFy1wg2NIdK9YagNTCVmVt8vfV4Ck8xtLPjh5DTuAyA3MNO vHuvQWMNQdeRGdTahsJGKIzmt6YEX5qoSYNgGUAOnjxdIzJ1x+yhm+bulg3oaPGP5Y+9zj WHqZeq6fY1UdXI6h6yXBTGL8y3JpqZ410CR//KICWzJgO5BU5o7V2V1diIVDYoCZM5sdoz IY4ZMzt8CISMi+W3x7XFGTp1RrDJp32zYMIRbGth4bI1/uyA5Y0By1gb9D9JEA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893391; a=rsa-sha256; cv=none; b=fBARG4LUarOMBvr6SMG+TGZKUiw0pZlU+XtyV/uIzGs756eTef+9fHLNxljUp9egKRHfhS C+OEzLan8eWtO/pJYAPSnsr4mHTf7XSl3uLNpJGoWIlBamJ6/JRXIGa+B/kgs/AlbqZofT k3z+/LbccI8y3L94WtpuM3CMBJWLuJ8X1tC37S+4UcAz4cwQ9PPBH+k+Ybi6+l8v0C0Sbb wKkInVRX779H9xv1aX46KmKWn2bwv2UjbEMc6tvFmjWNx5rW4fwzk+qZ1HYqsxsAD5FHEB zGLhhXkBFQowqbil4SGugBUUK/KbRXRLeKEQz+yMpb+q51Ucvop+Ydsu1UgaEw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893391; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=x3OcUJaNRmOm3BKDKIjYToWnM3J2kUvIUbesNdAERBI=; b=i00lSunt5P/2l0vTQHpLp7hsABk5cO4A4UCJI5WiV0RVep1WI1MWWCwCe6rF6dAvgmwzNA Z6aHct6uMTGB9JTFpqEZw/Q2JM9qgl7s3bkhJZjm+yZq1RCnj0ne9xOCBno0JuDZlEImEO mjV00r0kzGMmeTJzMRz9cIEjDq7B/g4PNwEdCSPadYFgk2pAg/t3KFcskRyF+jb6hfWm1+ D7pCFW1+zrP6W7OEu+C02ToRaGKx3QpbMlkNwssqpN3E3JaA8YfzrOOMpfhIQW+RoLB6Lv mZj/9j+1M3lWjcXPb4YcYY941Ad+YHGhQ0Tm2+DugBs4M6QNACQnJQ5j8OmNEA== 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 4S4FKC5HpTz19S; Mon, 9 Oct 2023 23:16:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGVJj072012; Mon, 9 Oct 2023 23:16:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGVwf072009; Mon, 9 Oct 2023 23:16:31 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:31 GMT Message-Id: <202310092316.399NGVwf072009@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: eb7bd8dcf4a7 - releng/14.0 - iwlwifi: Update iwlwifi.4 and iwlwififw.4 device list List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: eb7bd8dcf4a7d29e197e3a02a90512e969fcbf16 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=eb7bd8dcf4a7d29e197e3a02a90512e969fcbf16 commit eb7bd8dcf4a7d29e197e3a02a90512e969fcbf16 Author: Bjoern A. Zeeb AuthorDate: 2023-09-21 21:47:18 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:55 +0000 iwlwifi: Update iwlwifi.4 and iwlwififw.4 device list Update the man pages for iwlwifi.4 and iwlwififw.4 to list the current state of devices supported and which firmware they need. The list is automatically generated based on a sysctl added to the iwlwifi driver (so this is the driver's view). The reader should not be surprised by the larger number of any/any/any/any entries for PCI vendor and devices in the firmware table for which other matching logic happens. The reader should also not be confused about "TBD" (to be done) entries for chipsets which the driver already supports but have no (public) product yet. Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit 242f314842767c36eaaacca9f433c80d34def39c) (cherry picked from commit e96f025905d6a39f5c77b6bcb3bfecb7c5d10736) --- share/man/man4/iwlwifi.4 | 6 +- share/man/man4/iwlwififw.4 | 1002 +++++++++++++++++++------------------------- 2 files changed, 445 insertions(+), 563 deletions(-) diff --git a/share/man/man4/iwlwifi.4 b/share/man/man4/iwlwifi.4 index b67f1d440bde..1cf61c0008b5 100644 --- a/share/man/man4/iwlwifi.4 +++ b/share/man/man4/iwlwifi.4 @@ -1,5 +1,5 @@ .\"- -.\" Copyright (c) 2021 The FreeBSD Foundation +.\" Copyright (c) 2021-2023 The FreeBSD Foundation .\" .\" This documentation was written by Bj\xc3\xb6rn Zeeb under sponsorship from .\" the FreeBSD Foundation. @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd June 3, 2022 +.Dd September 21, 2023 .Dt IWLWIFI 4 .Os .Sh NAME @@ -178,6 +178,8 @@ Intel(R) Wi-Fi 6E AX231 160MHz Intel(R) TBD Bz device .It Intel(R) Wi-Fi 6 AX204 160MHz +.It +Intel(R) TBD Sc device .\" --------------------------------------------------------------------- .El .Pp diff --git a/share/man/man4/iwlwififw.4 b/share/man/man4/iwlwififw.4 index 82ee376aaa72..a377f6b51f78 100644 --- a/share/man/man4/iwlwififw.4 +++ b/share/man/man4/iwlwififw.4 @@ -1,5 +1,5 @@ .\"- -.\" Copyright (c) 2021 The FreeBSD Foundation +.\" Copyright (c) 2021-2023 The FreeBSD Foundation .\" .\" This documentation was written by Bj\xc3\xb6rn Zeeb under sponsorship from .\" the FreeBSD Foundation. @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd June 3, 2022 +.Dd September 21, 2023 .Dt iwlwififw 4 .Os .Sh NAME @@ -52,1414 +52,1294 @@ driver. .% --------------------------------------------------------------------- .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4070 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4070 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4072 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4072 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4170 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4170 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c60 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c60 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c70 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c70 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4060 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4060 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x406a Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x406a Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4160 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4160 Ta iwlwifi-7260 .It "" .It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4062 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4062 Ta iwlwifi-7260 .It "" .It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4162 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4162 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4270 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4270 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4272 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4272 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4260 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4260 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x426a Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b2 Ta any Ta 0x426a Ta iwlwifi-7260 .It "" .It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4262 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4262 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4470 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4470 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4472 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4472 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4460 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4460 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x446a Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x446a Ta iwlwifi-7260 .It "" .It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4462 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4462 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4870 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4870 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x486e Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x486e Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a70 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a70 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6e Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6e Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6c Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6c Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4570 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4570 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4560 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4560 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4370 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4370 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4360 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4360 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x5070 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x5070 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x5072 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x5072 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x5170 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x5170 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x5770 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x5770 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4020 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4020 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x402a Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x402a Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0x4220 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b2 Ta any Ta 0x4220 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0x4420 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0x4420 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc070 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc070 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc072 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc072 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc170 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc170 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc060 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc060 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc06a Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc06a Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc160 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc160 Ta iwlwifi-7260 .It "" .It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc062 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc062 Ta iwlwifi-7260 .It "" .It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc162 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc162 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc770 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc770 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc760 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc760 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc270 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc270 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc70 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc70 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc60 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc60 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc272 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc272 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc260 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc260 Ta iwlwifi-7260 .It "" .It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc26a Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc26a Ta iwlwifi-7260 .It "" .It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc262 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc262 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc470 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc470 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc472 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc472 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc460 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc460 Ta iwlwifi-7260 .It "" .It Intel(R) Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc462 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc462 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc570 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc570 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc560 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc560 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc370 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc370 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc360 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc360 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc020 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc020 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc02a Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc02a Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b2 Ta any Ta 0xc220 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b2 Ta any Ta 0xc220 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless N 7260 -.It 0x8086 Ta 0x08b1 Ta any Ta 0xc420 Ta iwlwifi-7260- +.It 0x8086 Ta 0x08b1 Ta any Ta 0xc420 Ta iwlwifi-7260 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0070 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0070 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0072 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0072 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0170 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0170 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0172 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0172 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless N 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0060 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0060 Ta iwlwifi-3160 .It "" .It Intel(R) Wireless N 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0062 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0062 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x0270 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b4 Ta any Ta 0x0270 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x0272 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b4 Ta any Ta 0x0272 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0470 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0470 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x0472 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x0472 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x0370 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b4 Ta any Ta 0x0370 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8070 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8070 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8072 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8072 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8170 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8170 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8172 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8172 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless N 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8060 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8060 Ta iwlwifi-3160 .It "" .It Intel(R) Wireless N 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8062 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8062 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x8270 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b4 Ta any Ta 0x8270 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x8370 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b4 Ta any Ta 0x8370 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b4 Ta any Ta 0x8272 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b4 Ta any Ta 0x8272 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8470 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8470 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x8570 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x8570 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x1070 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x1070 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3160 -.It 0x8086 Ta 0x08b3 Ta any Ta 0x1170 Ta iwlwifi-3160- +.It 0x8086 Ta 0x08b3 Ta any Ta 0x1170 Ta iwlwifi-3160 .It "" .It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x4010 Ta iwlwifi-7265D- +.It 0x8086 Ta 0x3165 Ta any Ta 0x4010 Ta iwlwifi-7265D .It "" .It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x4012 Ta iwlwifi-7265D- +.It 0x8086 Ta 0x3165 Ta any Ta 0x4012 Ta iwlwifi-7265D .It "" .It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3166 Ta any Ta 0x4212 Ta iwlwifi-7265D- +.It 0x8086 Ta 0x3166 Ta any Ta 0x4212 Ta iwlwifi-7265D .It "" .It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x4410 Ta iwlwifi-7265D- +.It 0x8086 Ta 0x3165 Ta any Ta 0x4410 Ta iwlwifi-7265D .It "" .It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x4510 Ta iwlwifi-7265D- +.It 0x8086 Ta 0x3165 Ta any Ta 0x4510 Ta iwlwifi-7265D .It "" .It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x4110 Ta iwlwifi-7265D- +.It 0x8086 Ta 0x3165 Ta any Ta 0x4110 Ta iwlwifi-7265D .It "" .It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3166 Ta any Ta 0x4310 Ta iwlwifi-7265D- +.It 0x8086 Ta 0x3166 Ta any Ta 0x4310 Ta iwlwifi-7265D .It "" .It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3166 Ta any Ta 0x4210 Ta iwlwifi-7265D- +.It 0x8086 Ta 0x3166 Ta any Ta 0x4210 Ta iwlwifi-7265D .It "" .It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x8010 Ta iwlwifi-7265D- +.It 0x8086 Ta 0x3165 Ta any Ta 0x8010 Ta iwlwifi-7265D .It "" .It Intel(R) Dual Band Wireless AC 3165 -.It 0x8086 Ta 0x3165 Ta any Ta 0x8110 Ta iwlwifi-7265D- +.It 0x8086 Ta 0x3165 Ta any Ta 0x8110 Ta iwlwifi-7265D .It "" .It Intel(R) Dual Band Wireless AC 3168 -.It 0x8086 Ta 0x24fb Ta any Ta 0x2010 Ta iwlwifi-3168- +.It 0x8086 Ta 0x24fb Ta any Ta 0x2010 Ta iwlwifi-3168 .It "" .It Intel(R) Dual Band Wireless AC 3168 -.It 0x8086 Ta 0x24fb Ta any Ta 0x2110 Ta iwlwifi-3168- +.It 0x8086 Ta 0x24fb Ta any Ta 0x2110 Ta iwlwifi-3168 .It "" .It Intel(R) Dual Band Wireless AC 3168 -.It 0x8086 Ta 0x24fb Ta any Ta 0x2050 Ta iwlwifi-3168- +.It 0x8086 Ta 0x24fb Ta any Ta 0x2050 Ta iwlwifi-3168 .It "" .It Intel(R) Dual Band Wireless AC 3168 -.It 0x8086 Ta 0x24fb Ta any Ta 0x2150 Ta iwlwifi-3168- +.It 0x8086 Ta 0x24fb Ta any Ta 0x2150 Ta iwlwifi-3168 .It "" .It Intel(R) Dual Band Wireless AC 3168 -.It 0x8086 Ta 0x24fb Ta any Ta 000000 Ta iwlwifi-3168- +.It 0x8086 Ta 0x24fb Ta any Ta 000000 Ta iwlwifi-3168 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5010 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5010 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5110 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5110 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5100 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5100 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5310 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095b Ta any Ta 0x5310 Ta iwlwifi-7265 .It "" .It Intel(R) Wireless N 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5302 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095b Ta any Ta 0x5302 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5210 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095b Ta any Ta 0x5210 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5c10 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5c10 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5012 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5012 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5412 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5412 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5410 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5410 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5510 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5510 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5400 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5400 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x1010 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x1010 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5000 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5000 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x500a Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x500a Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5200 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095b Ta any Ta 0x5200 Ta iwlwifi-7265 .It "" .It Intel(R) Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5002 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5002 Ta iwlwifi-7265 .It "" .It Intel(R) Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5102 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5102 Ta iwlwifi-7265 .It "" .It Intel(R) Wireless N 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5202 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095b Ta any Ta 0x5202 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9010 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x9010 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9012 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x9012 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x900a Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x900a Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9110 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x9110 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9112 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x9112 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x9210 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095b Ta any Ta 0x9210 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x9200 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095b Ta any Ta 0x9200 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9510 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x9510 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x9310 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095b Ta any Ta 0x9310 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9410 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x9410 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5020 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5020 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x502a Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x502a Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless N 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5420 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5420 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5090 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5090 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5190 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5190 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5590 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5590 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5290 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095b Ta any Ta 0x5290 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5490 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5490 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x5f10 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x5f10 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x5212 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095b Ta any Ta 0x5212 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095b Ta any Ta 0x520a Ta iwlwifi-7265- +.It 0x8086 Ta 0x095b Ta any Ta 0x520a Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9000 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x9000 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9400 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x9400 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 7265 -.It 0x8086 Ta 0x095a Ta any Ta 0x9e10 Ta iwlwifi-7265- +.It 0x8086 Ta 0x095a Ta any Ta 0x9e10 Ta iwlwifi-7265 .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0010 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0010 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x1010 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x1010 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x10b0 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x10b0 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0130 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0130 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x1130 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x1130 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0132 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0132 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x1132 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x1132 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0110 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0110 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x01f0 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x01f0 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0012 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0012 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x1012 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x1012 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x1110 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x1110 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0050 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0050 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0250 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0250 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x1050 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x1050 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0150 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0150 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x1150 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x1150 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f4 Ta any Ta 0x0030 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f4 Ta any Ta 0x0030 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f4 Ta any Ta 0x1030 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f4 Ta any Ta 0x1030 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0xc010 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0xc010 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0xc110 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0xc110 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0xd010 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0xd010 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0xc050 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0xc050 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0xd050 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0xd050 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0xd0b0 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0xd0b0 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0xb0b0 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0xb0b0 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x8010 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x8010 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x8110 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x8110 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x9010 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x9010 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x9110 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x9110 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f4 Ta any Ta 0x8030 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f4 Ta any Ta 0x8030 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f4 Ta any Ta 0x9030 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f4 Ta any Ta 0x9030 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f4 Ta any Ta 0xc030 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f4 Ta any Ta 0xc030 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f4 Ta any Ta 0xd030 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f4 Ta any Ta 0xd030 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x8130 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x8130 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x9130 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x9130 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x8132 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x8132 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x9132 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x9132 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x8050 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x8050 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x8150 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x8150 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x9050 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x9050 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x9150 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x9150 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless N 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0004 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0004 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless N 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0044 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0044 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 4165 -.It 0x8086 Ta 0x24f5 Ta any Ta 0x0010 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f5 Ta any Ta 0x0010 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 4165 -.It 0x8086 Ta 0x24f6 Ta any Ta 0x0030 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f6 Ta any Ta 0x0030 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0810 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0810 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0910 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0910 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0850 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0850 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0950 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0950 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x0930 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x0930 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24f3 Ta any Ta 000000 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24f3 Ta any Ta 000000 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8260 -.It 0x8086 Ta 0x24f3 Ta any Ta 0x4010 Ta iwlwifi-8000C- +.It 0x8086 Ta 0x24f3 Ta any Ta 0x4010 Ta iwlwifi-8000C .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0010 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x0010 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0110 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x0110 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x1110 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x1110 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x1130 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x1130 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0130 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x0130 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x1010 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x1010 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x10d0 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x10d0 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0050 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x0050 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0150 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x0150 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x9010 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x9010 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x8110 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x8110 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x8050 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x8050 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x8010 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x8010 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0810 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x0810 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x9110 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x9110 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x8130 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x8130 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0910 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x0910 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0930 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x0930 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0950 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x0950 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0850 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x0850 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8265 -.It 0x8086 Ta 0x24fd Ta any Ta 0x1014 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x1014 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8275 -.It 0x8086 Ta 0x24fd Ta any Ta 0x3e02 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x3e02 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8275 -.It 0x8086 Ta 0x24fd Ta any Ta 0x3e01 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x3e01 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8275 -.It 0x8086 Ta 0x24fd Ta any Ta 0x1012 Ta iwlwifi-8265- +.It 0x8086 Ta 0x24fd Ta any Ta 0x1012 Ta iwlwifi-8265 .It "" .It Intel(R) Dual Band Wireless AC 8275 -.It 0x8086 Ta 0x24fd Ta any Ta 0x0012 Ta iwlwifi-8265- *** 949 LINES SKIPPED *** From nobody Mon Oct 9 23:16:32 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FKF1M33z4wgs9; Mon, 9 Oct 2023 23:16: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 4S4FKF0RpZz3RlP; Mon, 9 Oct 2023 23:16:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893393; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tOSbKZ+Vk8MSxY4LKttu1xIGFQCZiNR8u1XPm512z38=; b=SjqZlMbWgIvZsmVFpiOgpW6QKJmM+lZFflCA2xU8zgWBcvxjD5U4lmfkIugBM+cf6436/k gJJX6H0CC1286ot701Ad6SO/WIUw8jr3rA+i3nqq7wEVmIrnP9zj5/f36iCP2DnCuPK0gq JkJCCrbdCb31b7D961lN/5W3gyKC3SYW11YSwGsRDZZxwjnqaFqIyCUS+S17VhJrxOc6z5 i3fcC5IKMa6+gEzp0kRi6B2Wh5lXK5OvuScvvDFZ1SaIQqHH8ELxgr0ma7zg3QEK/1ejA7 M2eckOOIYMJRMsdn1Inxpd1DeFsN7tISJrMVIX40wvK2rEcOpvYkwGki/LvSGA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893393; a=rsa-sha256; cv=none; b=HFH18xY6SZIJzzg7dDi6XrqJl+PiHYaHOtZih9qqWxXy5yBRX/Qk0D+dU1GeqCG/sA5i62 dU/Y7bak56crNzZ/6YNH0Qvv7Lavn3g3v64t0XgCCiItnyltRzrpyUXf45MoG+0jRuq3nm vGZnOxX3v0LQhaOA1rJUr0vo5BdzgdatS4pWV6D+pmckm22mkuqHxF/hUh+mnHymitvL1k RxZPQBWJuJZcMYe3vF165K8Lw5+iax3k9ITnJeLwEHjtSMy+p8TGySgg+fPq3scrwUAvGm bDtHrPlXyEAY8UWsEQOciBgykqVbgAsOQqpAm4XXHSO+jkKp52LhU+8bIW+7Jw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893393; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tOSbKZ+Vk8MSxY4LKttu1xIGFQCZiNR8u1XPm512z38=; b=ks23hDjwfZvmQ1YHXRlZVHrUmMS9vkUC86OULC+tc5G6FH5psPIiQS8whMwZd0z3E05vhI Lta/LAmL4qrtKUShzFguWn9Z8GZ5nI16bRohOOdHRK2jp5DOJIga1zw1TGa/v+wUBI0faD mL3UU4HspbemOKQe5be+GRaecD9+voFf/xZAhmQACe1Zf5KoFYcg9jbVKjZGuP1EZvHOlp EU3z8BvODdeW5rq7VXxS0d6ZJF0hia/wsU4j6XGvMKcXCqbjxE3njWuAcLHWM6cNe3aGPk UlUrXPq5Zw9058fhzvYEUSCBOf/IoIvHSgQo6XykIXDVVyHsAfXc857Y9LLFXA== 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 4S4FKD6YBGzl9; Mon, 9 Oct 2023 23:16:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGWTd072072; Mon, 9 Oct 2023 23:16:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGWPQ072069; Mon, 9 Oct 2023 23:16:32 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:32 GMT Message-Id: <202310092316.399NGWPQ072069@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: bf1c8af905f1 - releng/14.0 - iwlwifi / rtw88: re-attach to build after updates List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: bf1c8af905f11b341e08ed4a1685772b6059f820 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=bf1c8af905f11b341e08ed4a1685772b6059f820 commit bf1c8af905f11b341e08ed4a1685772b6059f820 Author: Bjoern A. Zeeb AuthorDate: 2023-09-21 17:12:01 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:55 +0000 iwlwifi / rtw88: re-attach to build after updates While the build-breaking changes were only in a smaller window further updates restored some functionality as well. Now that we are done, add iwlwifi back to the build. Sponsored by: The FreeBSD Foundation This also adds the (updated) rtw88 driver back to the build. Functionality has not been tested (much) so might not currently work but people offered to test. Approved by: re (gjb) (cherry picked from commit af6aaa90057d75644c41527acc903082104e4114) (cherry picked from commit 299e2d5724c2bc4929b6eac3258f04055e97992e) (cherry picked from commit 7ec227367ed748011a97540296b0935de877cc5a) --- sys/modules/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/modules/Makefile b/sys/modules/Makefile index 66d7c895a460..4b98c7ed6e0d 100644 --- a/sys/modules/Makefile +++ b/sys/modules/Makefile @@ -561,12 +561,12 @@ _mlx5ib= mlx5ib ${MACHINE_CPUARCH} == "i386" _ena= ena _gve= gve -#_iwlwifi= iwlwifi +_iwlwifi= iwlwifi .if ${MK_SOURCELESS_UCODE} != "no" _iwlwififw= iwlwififw .endif _ossl= ossl -#_rtw88= rtw88 +_rtw88= rtw88 .if ${MK_SOURCELESS_UCODE} != "no" _rtw88fw= rtw88fw .endif From nobody Mon Oct 9 23:19:11 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FNK1KSsz4whKp; Mon, 9 Oct 2023 23:19: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 4S4FNJ3KmXz3WJL; Mon, 9 Oct 2023 23:19:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893552; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=f9tuwATAf8rELPhDmevrIz+LsR9sgTJ/7piD8Bkv51o=; b=sovaFco3X+14sex9sX58LubS4Kbdf8/o89hpo1+P/fvO2qYZJR7vB1F3psvdAgCf+wy+Ax jxyA5/UBeQwrojBJHMyqY2ypMcVoDa322geEtDrAlR2nPHnRJBnRNv8Xg6XkjtqJueY2pY K9fB8SFubPFHj2LBK+fHsT3b3WZSshOq1M5hS46bykJATA87kdAbTZdE8OaPYa9b7x2Ya/ 5skXUKLYmpmkoCqlfx2VJdIX2vBgJv8SBVGGAUwBgJesTgXWogPum8X8Xscn0aUHPqCmm1 KF7Mc7qfvtpuOymCBfnwtXd0UJ5NJoT6/UI8zCUbJQwyxrqFON4Ug3teEH3f7g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893552; a=rsa-sha256; cv=none; b=caFqsyKQLJB+yX7xQjUeQ060OB+bS1B7A7/y42B0jam/O+HcWOI3QHwuThiZAQUk6cQdZS O1UXvz8uGOHaVu2MvJHPH9YCAZ9ZgbQSUIzmUBlEJJtXFSyBElsXJ+YzsUQI04SJokFk9r ulvryHDa4/kPQ7T/tlwZoAl4QhQlb92hRmAIlam7d7BKNRG2ToYdUWN4QfqNypi28V+rMq 4eWz5AxHzGahloy6ilKBtmEvVmF7eiwIPv4vDK88aKHFSFlA4KcJENfj3wb0YxLez5X5FR IWDUXXNoZPrybEA24gdApZf1WLlw6xLIIjGx5olnSbjxMWOlYwi4ggehL5e14Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893552; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=f9tuwATAf8rELPhDmevrIz+LsR9sgTJ/7piD8Bkv51o=; b=sVrmBPxjh2l+yU7fF9qFmuQZ5c4N3WvFMJbiDNT7ocaea/KzL1qLszVVMWUvz1pkx8qyYX 7Lf/JqaWp5D98uBC2wqWX0AQ0/ZP/N8JkjM+9zo6hcrAkIh1NU7IaKAY4o8ixgDcS18DPD taWnareeVoz1NJuABsDJlI2wSHpnDYtM/NXRdzhB09aKF/fVrHt/3c43JoExylBXqU4ERX piVRTb2FEW7x2YwueVjNHAp1uzDVE27cpU0SntGNXHlyhpLMipKO+LrKmmwP13oUYcYHTy J46QcIY/ScGL+9ppbjbGq9Juzrhgob4GXaPMn1rD0Yx72eMszgq/Ijppb9fSwg== 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 4S4FNJ0jb8zfp; Mon, 9 Oct 2023 23:19:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NJB3x072692; Mon, 9 Oct 2023 23:19:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NJBiu072689; Mon, 9 Oct 2023 23:19:11 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:19:11 GMT Message-Id: <202310092319.399NJBiu072689@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 75b03f73b4a0 - stable/14 - vfs cache: sanitize debug counters List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 75b03f73b4a0f94090aa9fd050e82089c83fe2bb Auto-Submitted: auto-generated The branch stable/14 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=75b03f73b4a0f94090aa9fd050e82089c83fe2bb commit 75b03f73b4a0f94090aa9fd050e82089c83fe2bb Author: Mateusz Guzik AuthorDate: 2023-10-05 12:16:18 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-09 23:19:00 +0000 vfs cache: sanitize debug counters They are very rarely triggered, so no need for per-cpu distribution. At the same time the non-cpu ones still should use atomics to not lose any updates. (cherry picked from commit 2749c222da8a6325d39c0571f72b1dbed2f7d583) --- sys/kern/vfs_cache.c | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index 7e059d374c31..38a39331e237 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -553,17 +553,14 @@ static SYSCTL_NODE(_vfs_cache, OID_AUTO, debug, CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "Name cache debugging"); #define DEBUGNODE_ULONG(name, varname, descr) \ SYSCTL_ULONG(_vfs_cache_debug, OID_AUTO, name, CTLFLAG_RD, &varname, 0, descr); -#define DEBUGNODE_COUNTER(name, varname, descr) \ - static COUNTER_U64_DEFINE_EARLY(varname); \ - SYSCTL_COUNTER_U64(_vfs_cache_debug, OID_AUTO, name, CTLFLAG_RD, &varname, \ - descr); -DEBUGNODE_COUNTER(zap_bucket_relock_success, zap_bucket_relock_success, +static u_long zap_bucket_relock_success; +DEBUGNODE_ULONG(zap_bucket_relock_success, zap_bucket_relock_success, "Number of successful removals after relocking"); -static long zap_bucket_fail; +static u_long zap_bucket_fail; DEBUGNODE_ULONG(zap_bucket_fail, zap_bucket_fail, ""); -static long zap_bucket_fail2; +static u_long zap_bucket_fail2; DEBUGNODE_ULONG(zap_bucket_fail2, zap_bucket_fail2, ""); -static long cache_lock_vnodes_cel_3_failures; +static u_long cache_lock_vnodes_cel_3_failures; DEBUGNODE_ULONG(vnodes_cel_3_failures, cache_lock_vnodes_cel_3_failures, "Number of times 3-way vnode locking failed"); @@ -1664,7 +1661,7 @@ cache_zap_unlocked_bucket(struct namecache *ncp, struct componentname *cnp, cache_zap_locked(rncp); mtx_unlock(blp); cache_unlock_vnodes(dvlp, vlp); - counter_u64_add(zap_bucket_relock_success, 1); + atomic_add_long(&zap_bucket_relock_success, 1); return (0); } @@ -1760,7 +1757,7 @@ retry: error = cache_zap_locked_bucket(ncp, cnp, hash, blp); if (__predict_false(error != 0)) { - zap_bucket_fail++; + atomic_add_long(&zap_bucket_fail, 1); goto retry; } counter_u64_add(numposzaps, 1); @@ -1986,7 +1983,7 @@ negative_success: counter_u64_add(numnegzaps, 1); error = cache_zap_locked_bucket(ncp, cnp, hash, blp); if (__predict_false(error != 0)) { - zap_bucket_fail2++; + atomic_add_long(&zap_bucket_fail2, 1); goto retry; } cache_free(ncp); @@ -2184,8 +2181,8 @@ cache_lock_vnodes_cel_3(struct celockstate *cel, struct vnode *vp) } else { if (mtx_trylock(vlp)) goto out; - cache_lock_vnodes_cel_3_failures++; cache_unlock_vnodes_cel(cel); + atomic_add_long(&cache_lock_vnodes_cel_3_failures, 1); if (vlp < cel->vlp[0]) { mtx_lock(vlp); mtx_lock(cel->vlp[0]); From nobody Mon Oct 9 23:19:12 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FNK5lZ5z4wh1d; Mon, 9 Oct 2023 23:19:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4FNK46zmz3WFy; Mon, 9 Oct 2023 23:19:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893553; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BskNqzehvXCGsDDDg8Onx5QMyApXPxNjaLznOhk9CVY=; b=x9H8dwIk2PeACu03MnPLPOTt4AlNnkVVxzIYIqIe2b2IVBKFAWlyvIHW7hBMt3idSO0T9e YDWkHw7JgxfzU5U3ZFbs1Awd4NUT0XqTH0Qhrze7so1dTqD6Kky8WstGveuZHEPeNl/hmh Oi0hSsam0jGcVqU734QKqA1a85PJyq4EzM8HPwS+0/EEScdthusb1vX5dNlGCC/d6XhRxD 8LS+FCFDezWzx4Zw/wvHOvYr6xl3/DcMlc7M270E+hqjMm38J1sZhTm8xcXDGvtw+aXwn5 PXeMPmvgU/6ZqI0mbq5sxmUh6TJhmyM1pmyGfOWUQMRP/tuHfgmWfC37/5Cdiw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893553; a=rsa-sha256; cv=none; b=iF6IKVk7GDMoQCUXTRxpzLgMCwg4CKFHRpCieqel+wqCODyGa1OpWL62NIDTOEIzzplezx BZHQai62swX51jzVYPdWx8dL2geR0S42Bm20UjXBQuZLIpZbHiiFWbWcA36eI9J+jzJI5k 2prHsfA3LbTMjRCE7wn4WZrYdCpvyTQpLPtm0zCz5UqL4L2FyJea0uw1g3sT2BsWjNCiNh 4L88oeBsFsFG3e4exFpjjYRINBPkc4rSAuufzjIaf2Q6RjUwlOqUc/HSyqDZCgExasKhhv 2FExLOtwUA3ZE1yzGBUnXQZyeP4JAx97xpOiK7izUg4xmrCSITRDLCUb5MhGbQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893553; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BskNqzehvXCGsDDDg8Onx5QMyApXPxNjaLznOhk9CVY=; b=q1Of9F8TnSkH8DOoxvuU4ttAwQGpKf+rpJNTsfcVk3UuNmX/aw5pWER/qD3AMBteVx1AdV PDIMwZbSdqzMs3Ksw5bwHth7uhDjjaR8AhGmCmYoH4Ni5LcFmghMqhqBaa8670NbLbQoyn W6dwwaGaMMmLSkVBiyEpOdmpqRZt6wcaUDteKfR011a/vIQB9SF1PYsHMXGhQypJ++c8/C OD7YdifzXq6QOB10l94Tu/errur4jdD3XrXHF8qaBZkar9IbRbDfe3gLCk50a2atvUxGwN IH8dp+Kk8EuPn8mXAoWtJDv2RjB05wyrOFP8oHldUiSlJoBV5+R+BZE+xlzdJQ== 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 4S4FNK0kBHznC; Mon, 9 Oct 2023 23:19:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NJCm6072746; Mon, 9 Oct 2023 23:19:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NJC8L072743; Mon, 9 Oct 2023 23:19:12 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:19:12 GMT Message-Id: <202310092319.399NJC8L072743@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: b206bfb92c1f - stable/14 - vfs cache: plug a hypothetical corner case when freeing List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b206bfb92c1f522c85ef1db44d42431e6c0d9334 Auto-Submitted: auto-generated The branch stable/14 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=b206bfb92c1f522c85ef1db44d42431e6c0d9334 commit b206bfb92c1f522c85ef1db44d42431e6c0d9334 Author: Mateusz Guzik AuthorDate: 2023-09-23 02:04:06 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-09 23:19:00 +0000 vfs cache: plug a hypothetical corner case when freeing cache_zap_unlocked_bucket is called with a bunch of addresses and without any locks held, forcing it to revalidate everything from scratch. It did not account for a case where the entry is reallocated with everything the same except for the target vnode. Should the target use a different lock than the one expected, freeing would proceed without being properly synchronized. Note this is almost impossible to happen in practice. (cherry picked from commit 0f15054f7990f9c772bea34778a8838aa05ebed8) --- sys/kern/vfs_cache.c | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index 38a39331e237..44295e12ee59 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -1645,6 +1645,7 @@ cache_zap_unlocked_bucket(struct namecache *ncp, struct componentname *cnp, struct mtx *blp) { struct namecache *rncp; + struct mtx *rvlp; cache_assert_bucket_unlocked(ncp); @@ -1657,14 +1658,24 @@ cache_zap_unlocked_bucket(struct namecache *ncp, struct componentname *cnp, !bcmp(rncp->nc_name, cnp->cn_nameptr, rncp->nc_nlen)) break; } - if (rncp != NULL) { - cache_zap_locked(rncp); - mtx_unlock(blp); - cache_unlock_vnodes(dvlp, vlp); - atomic_add_long(&zap_bucket_relock_success, 1); - return (0); - } + if (rncp == NULL) + goto out_mismatch; + + if (!(ncp->nc_flag & NCF_NEGATIVE)) + rvlp = VP2VNODELOCK(rncp->nc_vp); + else + rvlp = NULL; + if (rvlp != vlp) + goto out_mismatch; + + cache_zap_locked(rncp); + mtx_unlock(blp); + cache_unlock_vnodes(dvlp, vlp); + atomic_add_long(&zap_bucket_relock_success, 1); + return (0); + +out_mismatch: mtx_unlock(blp); cache_unlock_vnodes(dvlp, vlp); return (EAGAIN); From nobody Mon Oct 9 23:19:14 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4FNM3S2vz4whMq; Mon, 9 Oct 2023 23:19: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 4S4FNL4dztz3WJT; Mon, 9 Oct 2023 23:19:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893554; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v6/rZqrqrUUKeDGTtnecXlX5yYBi7BrnglZfjJI3CAk=; b=j8a86IbmAbuLkkNmjmgT6YsAzyOQVdswgr+o/jKba/3f76z0U34qtDb7L25RmWCmqJQzX5 SGdbYK++3s+oOhkOuG2npTSCc1EoRKPJ8a+vzTIMg2dN/LL9jly0HD/iYWWLglPaZJqOr8 g7xWuxpAr7FwpGW1k6t8txjhTo6Oalwtax4qOYTbZELoLm6Imaus0t5oIfopfgV+9Gg19f 1KzSbfol9mAFF87y4sTaAuzPxyxByoRImXwH58HYcxBA3dGmg/Gk/4vq8RAVPVxZVrEec8 shIY67RD9ljuJgyTeJ5Gj08grvyJeaaBbe8dAjBONf4jztsgMogOriDsnEDd/g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893554; a=rsa-sha256; cv=none; b=MMMZI4r7HLcpKeY5piJoQ062/hOnu4F93JyyMxrqIXV8Uohw63iUBAOfuACJ1R7u4rA/0J UyKnC8ufvv0fpgd/G1cAU3YN+J4i3q7g/csGkKff9MKzasg6cOcuBRIXKMiPcoZyhNkBUd VuGGPAdeHwkfLeu+0LzTeTzGxYUbSm+E4/Hw7F/UE7opwW6gS5qf4OxSZKdg1QFYnrIxy9 cUGjop1FMx0Omv+9gvkZRKo6cLKEMlpOPvNmj5kl/PmPo04eqCae5rRH+kPfrDzb2XbD7W 4U1ae7v6arqO6ZAOqqZSiGR4Y6vYETQi8XSTncJKNL7f2xtQ0wmhBJAxLcOKuQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893554; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v6/rZqrqrUUKeDGTtnecXlX5yYBi7BrnglZfjJI3CAk=; b=SQG7nfZ2NLV50R7FQV8oC6QjkXN+f5BWsKokfRW3XTC8ielDOQUzwZ8IQFYnGlAhqTLcfj Ds5aEnSNONn/K9iUAOCI2td7yR6x6S8LV3vrr0Rz5No4GE9BKLgeeJRTSIjQ0M1PwdN5CI poSRRlgJMRkL57H1zpT7q4oLgzq6iApT7hQtGmH/sfN0fGHkXW1EYqTP6ayGnyYXiliFyC GUUBhrsBuZfQoOYFyKdCib8Kdtp3kKmMT479izRQ/QLaFF7t0Ad3cHCE+v5A10BR842DUt rsqN6vCcZc+tYfQ63Q7u+SjGM095jx24X/hqmHMe5J1Hhl9XUS9sjMA0zd6uhg== 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 4S4FNL23PXzlN; Mon, 9 Oct 2023 23:19:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NJEV2072797; Mon, 9 Oct 2023 23:19:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NJE7u072794; Mon, 9 Oct 2023 23:19:14 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:19:14 GMT Message-Id: <202310092319.399NJE7u072794@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 99bfb6998b00 - stable/14 - vfs cache: denote a known bug in cache_remove_cnp List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 99bfb6998b00ac8edd1395d76d199ddee62d24a0 Auto-Submitted: auto-generated The branch stable/14 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=99bfb6998b00ac8edd1395d76d199ddee62d24a0 commit 99bfb6998b00ac8edd1395d76d199ddee62d24a0 Author: Mateusz Guzik AuthorDate: 2023-10-05 12:32:29 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-09 23:19:00 +0000 vfs cache: denote a known bug in cache_remove_cnp (cherry picked from commit cd2105d691f446f7dbddf5965d82b9e9103bc8d2) --- sys/kern/vfs_cache.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index 44295e12ee59..115d0bdd3993 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -1747,6 +1747,15 @@ retry_dotdot: return (1); } + /* + * XXX note that access here is completely unlocked with no provisions + * to keep the hash allocated. If one is sufficiently unlucky a + * parallel cache resize can reallocate the hash, unmap backing pages + * and cause the empty check below to fault. + * + * Fixing this has epsilon priority, but can be done with no overhead + * for this codepath with sufficient effort. + */ hash = cache_get_hash(cnp->cn_nameptr, cnp->cn_namelen, dvp); blp = HASH2BUCKETLOCK(hash); retry: From nobody Tue Oct 10 05:14:15 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4PFz6wxJz4x7Hk; Tue, 10 Oct 2023 05:14: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 4S4PFz6Ttvz4dd4; Tue, 10 Oct 2023 05:14:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914855; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KEkfADwoPtM+2gslF6zXOnA7zMi1hneLxUpauv0m6S8=; b=smPs/syakOdpf2CwM3y2NS7u0XKL7CY3Jt/Iow8X1Vfcyp8jY81yluK/inAydQVJu/JyxU qYy0vG7JP1plJZVBDdfGONjng/dx+ePrYUSfYcmW/cH8F9Dkx4mpFEv57PFLfp59TaTbTi gxYjX75MW9QbRZXQuWMnW7i8pN8PcsEov6MdYQwyd12VBQfkTsr7NriRYsoo0+NrvIQ9vz Ni9Ys4J+UbhsvcsF5OAdyRN2d4seIOKoLoTx1AaTWXICFvsq9sybvZwdLgv7jmYdHnWrhG 5/SvGE4XZJjbbKY7RzHXS2DtIWe7evvQiDGmTPkH/X9rhpotUxd9NDMIL5hIfw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696914855; a=rsa-sha256; cv=none; b=mV/Xk2CqqILLMbUI/LawLxEW/+1LUvzWLkIBx3QFTAiSNThrgnn14RoAQ/JEuQTUz+nVJN vC95fF/N+JzJZNpoI3L5LnTUCmAPlv/VLiWyT3WdgObfHa9sdTe7YOhxNB7a29cj1SuGGn ZFKqYwgBBRA4VhE0ZdKL8ksDetqAQT7VuultlLaehpAtdlw63Rb1ZQkrURQb0sm2M9/oje VstvVZMM+IoBZREez2b3ydKUvp/pZUnXk2iVwsqZ/y9W7fNQmWyssvqFR+oI3YA4+TfUZE vCzEFb0xwljXzPuJp5vZVgsZuEcvHGRxcVCCihEDvrz2Fqq2e1CHhpuPEowBAQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914855; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KEkfADwoPtM+2gslF6zXOnA7zMi1hneLxUpauv0m6S8=; b=Zmv7MQPpeB7phQygOmKVdWYj5qq0vf/8ju348v9+HE3nDCXIqMHGXKsiXzJI0t+NlJEIAA CAdmIU4FTjUk5UXpxyYreDwQ5CfSaxLO+7bLPsw7DQc2j+mmQRvy8CCzAESGvv0+U20DMj V6m2LbpDCSrAERCWlBnjhL71sul3pXVv72r7TD7Zx8ERYjOAqmWKlG6HO+CB2p1Y6jVidq N8JpTUaLJUKfw6sFVHlAPrKsSdZ8XaChzT825cXTCyRIsAlj72I9+PIcUsD9Bj5J0tvAKb PgOgJnYfjj+cjtVsdqlsJOiKBGh2yS2Hk4hAaFdpmtwG0MEMYPlRp0Nb356oCA== 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 4S4PFz5YZZzBMY; Tue, 10 Oct 2023 05:14:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39A5EFRR071721; Tue, 10 Oct 2023 05:14:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39A5EFUg071718; Tue, 10 Oct 2023 05:14:15 GMT (envelope-from git) Date: Tue, 10 Oct 2023 05:14:15 GMT Message-Id: <202310100514.39A5EFUg071718@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 761d9162d2ab - stable/14 - tests: Test that SIGSYS is not delivered if kern.signosys knob is off List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dchagin X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 761d9162d2ab56d1dfce2fd6422fcdf6f6393b79 Auto-Submitted: auto-generated The branch stable/14 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=761d9162d2ab56d1dfce2fd6422fcdf6f6393b79 commit 761d9162d2ab56d1dfce2fd6422fcdf6f6393b79 Author: Dmitry Chagin AuthorDate: 2023-10-03 07:38:02 +0000 Commit: Dmitry Chagin CommitDate: 2023-10-10 05:12:12 +0000 tests: Test that SIGSYS is not delivered if kern.signosys knob is off Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D41979 MFC after: 1 week (cherry picked from commit b67c0ba4613861f8245ce835081311aef1c19bae) --- tests/sys/kern/Makefile | 1 + tests/sys/kern/sigsys.c | 101 +++++++++++++++++++++++++++++++++++++++++------- 2 files changed, 88 insertions(+), 14 deletions(-) diff --git a/tests/sys/kern/Makefile b/tests/sys/kern/Makefile index 6396b22005c3..e449d9deeed1 100644 --- a/tests/sys/kern/Makefile +++ b/tests/sys/kern/Makefile @@ -49,6 +49,7 @@ ATF_TESTS_C+= unix_socketpair_test ATF_TESTS_C+= waitpid_nohang ATF_TESTS_C+= pdeathsig ATF_TESTS_C+= sigsys +TEST_METADATA.sigsys+= is_exclusive="true" ATF_TESTS_SH+= coredump_phnum_test ATF_TESTS_SH+= sonewconn_overflow diff --git a/tests/sys/kern/sigsys.c b/tests/sys/kern/sigsys.c index 75e3816fc158..8554a646ebc6 100644 --- a/tests/sys/kern/sigsys.c +++ b/tests/sys/kern/sigsys.c @@ -7,31 +7,29 @@ * under sponsorship from the FreeBSD Foundation. */ +#include #include +#include #include #include #include #include #include +#include static sig_atomic_t sigsys_cnt; +#define SAVEDVALUE "savedsignosys" + static void sigsys_handler(int signo, siginfo_t *si, void *ucp) { sigsys_cnt++; } -ATF_TC(sigsys_test); - -ATF_TC_HEAD(sigsys_test, tc) -{ - atf_tc_set_md_var(tc, "descr", - "Testing delivery of SIGSYS on invalid syscalls"); -} - -ATF_TC_BODY(sigsys_test, tc) +static void +sigsys_test(int knob) { struct sigaction sa; @@ -43,27 +41,102 @@ ATF_TC_BODY(sigsys_test, tc) ATF_REQUIRE(syscall(273) == -1); /* reserved */ ATF_CHECK_ERRNO(ENOSYS, true); atomic_signal_fence(memory_order_seq_cst); - ATF_CHECK_EQ(1, sigsys_cnt); + ATF_CHECK_EQ(1 * knob, sigsys_cnt * knob); ATF_REQUIRE(syscall(440) == -1); /* SYS_kse_switchin */ ATF_CHECK_ERRNO(ENOSYS, true); atomic_signal_fence(memory_order_seq_cst); - ATF_CHECK_EQ(2, sigsys_cnt); + ATF_CHECK_EQ(2 * knob, sigsys_cnt * knob); /* Hope this is enough for say next two months */ ATF_REQUIRE(syscall(3000000) == -1); ATF_CHECK_ERRNO(ENOSYS, true); atomic_signal_fence(memory_order_seq_cst); - ATF_CHECK_EQ(3, sigsys_cnt); + ATF_CHECK_EQ(3 * knob, sigsys_cnt * knob); ATF_REQUIRE(syscall(SYS_afs3_syscall) == -1); ATF_CHECK_ERRNO(ENOSYS, true); atomic_signal_fence(memory_order_seq_cst); - ATF_CHECK_EQ(4, sigsys_cnt); + ATF_CHECK_EQ(4 * knob, sigsys_cnt * knob); +} + +static void +sysctlset(const char *name, int val) +{ + size_t oldlen; + int oldval; + char buf[80]; + + ATF_REQUIRE(sysctlbyname(name, &oldval, &oldlen, NULL, 0) == 0); + + /* Store old %name in a symlink for cleanup */ + snprintf(buf, sizeof(buf), "%d", oldval); + ATF_REQUIRE(symlink(buf, SAVEDVALUE) == 0); + + ATF_REQUIRE(sysctlbyname(name, NULL, NULL, &val, sizeof(val)) == 0); +} + +static void +sysctlcleanup(const char *name) +{ + size_t oldlen; + int n, oldval; + char buf[80]; + + if ((n = readlink(SAVEDVALUE, buf, sizeof(buf))) > 0) { + buf[MIN((size_t)n, sizeof(buf) - 1)] = '\0'; + if (sscanf(buf, "%d", &oldval) == 1) { + oldlen = sizeof(oldval); + (void)sysctlbyname(name, NULL, 0, + &oldval, oldlen); + } + } + (void)unlink(SAVEDVALUE); +} + +ATF_TC_WITH_CLEANUP(sigsys_test_on); +ATF_TC_HEAD(sigsys_test_on, tc) +{ + atf_tc_set_md_var(tc, "require.user", "root"); + atf_tc_set_md_var(tc, "require.config", "allow_sysctl_side_effects"); + atf_tc_set_md_var(tc, "descr", + "Testing delivery of SIGSYS on invalid syscalls"); +} + +ATF_TC_BODY(sigsys_test_on, tc) +{ + sysctlset("kern.signosys", 1); + sigsys_test(1); +} + +ATF_TC_CLEANUP(sigsys_test_on, tc) +{ + sysctlcleanup("kern.signosys"); +} + +ATF_TC_WITH_CLEANUP(sigsys_test_off); +ATF_TC_HEAD(sigsys_test_off, tc) +{ + atf_tc_set_md_var(tc, "require.user", "root"); + atf_tc_set_md_var(tc, "require.config", "allow_sysctl_side_effects"); + atf_tc_set_md_var(tc, "descr", + "Testing SIGSYS silence on invalid syscalls"); +} + +ATF_TC_BODY(sigsys_test_off, tc) +{ + sysctlset("kern.signosys", 0); + sigsys_test(0); +} + +ATF_TC_CLEANUP(sigsys_test_off, tc) +{ + sysctlcleanup("kern.signosys"); } ATF_TP_ADD_TCS(tp) { - ATF_TP_ADD_TC(tp, sigsys_test); + ATF_TP_ADD_TC(tp, sigsys_test_on); + ATF_TP_ADD_TC(tp, sigsys_test_off); return (atf_no_error()); } From nobody Tue Oct 10 05:14:16 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4PG11YHSz4x7FT; Tue, 10 Oct 2023 05:14: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 4S4PG101V3z4dSF; Tue, 10 Oct 2023 05:14:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914857; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=noi7QOiSj+cEJ3GUcGhPT2nDcLcS5IxZrpanpwcbFvU=; b=C6+ko/NAcEGhN0cCOC3rOhHZd2kwJZViR9r/JPEEGj/NUgSu/dfiKfm55zO8uO+IctuHH6 ifzwa0UNaJ3xzQJDaIR0DdlaXOOQJx3DyIZIw+78sMpPSYcPboFWLCzpuflCaVIb8dlunT zmOFM15GoaDO2mC3hdvb5/YWU8PK2yDj6NcK3TP6CVZCYFfOBSnJGW959rgfszZjfXS1o5 zxl9reVH+WaFjuHD5EYkEZkypI9xgUClFdiITai0XHm8RjX+FS/TRbYrRO9CR+ZHUFhAOq E0Ye7qFuUNMZxvG826Iii+PNDP62rn77VGn8LHxiQI2N/cQB1Gt2dQxyRDplKA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696914857; a=rsa-sha256; cv=none; b=nWI3KhFIcj19jF28+KdPtphMhzWchYgkdD/dy+IPfE8/70yF1VHYtTlxJs/xTADO+R5apD EX4HJLoVXRe9QT5e5bsGQDgINzO5WL7yXxaeptxzlJ9YHFz91Ayhp1uS/otvV5J1PvI+oq js+ST1OYpCbcfRtIAYbKrk6H+i9KnLwOEVcdttLZdSEvCqrD0zt73S+7IBhnVWHooamJJW iknQb0jg/J7o2SWTr4LK8WlIyikCGlfI+46Q9LLqz8UdUPIMyppJjC3HWKoiTdkl+DY/c7 GLW1cJC2uOuZfg7K/3Gr8vveD6YU0TGNGiGPFCgy7Hk9hGtxKyxdMaTl8iLbJQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914857; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=noi7QOiSj+cEJ3GUcGhPT2nDcLcS5IxZrpanpwcbFvU=; b=cpUMw6huKH8a5y7lHy0QOcuXWQ4QiIVeIr5ZJ7IjFDjxOXOYZsvHFMufy0Ayaja/rKEUtW 4FA1HipA7TlachELRtN0UAuGv8V143jkNNNyYoGuT/jHzP6cA5SzfMOoU5Yx0jGZUyxobs SrvKvqHdKoNoPgKQPIgGc02HLlsiAyDp6be2yIdCM3qsaqKTJmAraayY5duphbdtRMX3Uw sNnl21R42Le5X+odzjvLa0IIc1HuU6IFbmXskIeU559VwtsodZJUoRy7wG5/OfJO4bKzSM OF5Ed5PlZZGipXZw/GZ0viPWX5/UMbFTjuZiaWGbuOQctoZubnlTkczd9FwevQ== 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 4S4PG06FLfzBQ4; Tue, 10 Oct 2023 05:14:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39A5EGN0071769; Tue, 10 Oct 2023 05:14:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39A5EG8N071766; Tue, 10 Oct 2023 05:14:16 GMT (envelope-from git) Date: Tue, 10 Oct 2023 05:14:16 GMT Message-Id: <202310100514.39A5EG8N071766@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: ea54d65b340e - stable/14 - linux(4): Deorbit linux_nosys from syscalls.master List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dchagin X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ea54d65b340eb090518f79c2322db2644b39e634 Auto-Submitted: auto-generated The branch stable/14 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=ea54d65b340eb090518f79c2322db2644b39e634 commit ea54d65b340eb090518f79c2322db2644b39e634 Author: Dmitry Chagin AuthorDate: 2023-10-03 07:38:02 +0000 Commit: Dmitry Chagin CommitDate: 2023-10-10 05:12:12 +0000 linux(4): Deorbit linux_nosys from syscalls.master Differential Revision: https://reviews.freebsd.org/D41902 MFC after: 1 week (cherry picked from commit 8e523be5a5a2cb9660021d2de5732ee7257b2788) --- sys/amd64/linux/syscalls.master | 7 +------ sys/amd64/linux32/syscalls.master | 7 +------ sys/arm64/linux/syscalls.master | 7 +------ sys/i386/linux/syscalls.master | 7 +------ 4 files changed, 4 insertions(+), 24 deletions(-) diff --git a/sys/amd64/linux/syscalls.master b/sys/amd64/linux/syscalls.master index 437066d1655b..8e12a539b87f 100644 --- a/sys/amd64/linux/syscalls.master +++ b/sys/amd64/linux/syscalls.master @@ -32,13 +32,9 @@ #include #include #include -#include #include #include -; Isn't pretty, but there seems to be no other way to trap nosys -#define nosys linux_nosys - 0 AUE_NULL NOPROTO { int read( int fd, @@ -2191,6 +2187,5 @@ 453 AUE_NULL STD { int linux_map_shadow_stack(void); } -; please, keep this line at the end. -454 AUE_NULL UNIMPL nosys + ; vim: syntax=off diff --git a/sys/amd64/linux32/syscalls.master b/sys/amd64/linux32/syscalls.master index 32ed678fe0c6..7d796df1aed3 100644 --- a/sys/amd64/linux32/syscalls.master +++ b/sys/amd64/linux32/syscalls.master @@ -32,14 +32,10 @@ #include #include #include -#include #include #include #include -; Isn't pretty, but there seems to be no other way to trap nosys -#define nosys linux_nosys - 0 AUE_NULL UNIMPL setup 1 AUE_EXIT STD { void linux_exit( @@ -2616,6 +2612,5 @@ 452 AUE_NULL STD { int linux_fchmodat2(void); } - ; please, keep this line at the end. -453 AUE_NULL UNIMPL nosys + ; vim: syntax=off diff --git a/sys/arm64/linux/syscalls.master b/sys/arm64/linux/syscalls.master index 9ba548359c46..61c7499d57b3 100644 --- a/sys/arm64/linux/syscalls.master +++ b/sys/arm64/linux/syscalls.master @@ -9,13 +9,9 @@ #include #include #include -#include #include #include -; Isn't pretty, but there seems to be no other way to trap nosys -#define nosys linux_nosys - 0 AUE_NULL UNIMPL linux_io_setup 1 AUE_NULL UNIMPL linux_io_destroy 2 AUE_NULL UNIMPL linux_io_submit @@ -1865,6 +1861,5 @@ 452 AUE_NULL STD { int linux_fchmodat2(void); } - ; please, keep this line at the end. -453 AUE_NULL UNIMPL nosys + ; vim: syntax=off diff --git a/sys/i386/linux/syscalls.master b/sys/i386/linux/syscalls.master index 3f37cc2fc485..e3c39e50986c 100644 --- a/sys/i386/linux/syscalls.master +++ b/sys/i386/linux/syscalls.master @@ -32,13 +32,9 @@ #include #include #include -#include #include #include -; Isn't pretty, but there seems to be no other way to trap nosys -#define nosys linux_nosys - 0 AUE_NULL UNIMPL setup 1 AUE_EXIT STD { void linux_exit( @@ -2628,6 +2624,5 @@ 452 AUE_NULL STD { int linux_fchmodat2(void); } - ; please, keep this line at the end. -453 AUE_NULL UNIMPL nosys + ; vim: syntax=off From nobody Tue Oct 10 05:14:17 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4PG21Lbbz4x7g1; Tue, 10 Oct 2023 05:14:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4PG20nK6z4dqM; Tue, 10 Oct 2023 05:14:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914858; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=puMLf/89/IW88h2YCQWgdBtWr60tfI+KAKu7KX0dv7E=; b=wjdeii/eF31FA8zohuvaft/LQL6CoHifQY70+9pNfBCjKBl1vkAM/HYQ38BwozuX6w8s9A IK5oRWv02zxWwPTlUyzUDABmnUZj9J+Rr7i22R/nSjvEF9eTZzxKUwv59fXbPhrQREjDuc LsNU44iRmjKZSfAm5he9VTshXNpHYHel/NOgaHrTgxzjGl+RfK+AinMzoKQVrcqz73ZB9O JYxJkCp46C18mm3Ym1k331Geya+h+eKzHkVaVcKd4Hh20kDanTT49sdsEe8xVeD/dAw8aI SoADkXE6VsGbYTtrWrL0PAZch3DXtElxs8gpepUxTBaoFj56JxTBRnAuCXbf2A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696914858; a=rsa-sha256; cv=none; b=xZO0C5AMBrxs+6NDRoOg4s41ZpLvPJlDwrNXRmk/Y+ilIQMOOkezL6wfE6B7jj5J0Hu41G Pn8KKJuVAglabaV2YzFAmSe1PhGbe1kQ0M/F8ojLn2xzVy0yXguNs8nNe5M8608WP1jTtF b+nafLjSuiLWT6Z6NShH6q9aLnI5iYs/ZxaA1X8Xg8FHFxFcyP4xhFlbfQB4AXaTpMtF5g 4UmOwrLUwwJUVG8F40fXEO9mhmlv4qk4gkmqom7PFrye0fCRmW3ErIlOtF2K9HIuGMi7Gf xp6gIdDSix4FF1QArCBfE3gF6LyhYTxbzWjY4FU+yjIWBY8evhlTjjX2xDpHQw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914858; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=puMLf/89/IW88h2YCQWgdBtWr60tfI+KAKu7KX0dv7E=; b=cTvhg0EAkJrpO57w1Au6KPGBTtfldqwd4SDOt0DnLVhjez7RJAIjpgZ2ihWEXu7B50x6sF IgtY9GmZ5mDJxlBa5D/wVChMHPTAXmQY7J6+vyp0bSbFzWVwtOCaIXOTE9Dzgg/rQ6jB+M dqKSYfFr1UEDRgzheu0GpNaa0swQ3ybPOuatkeOy9i0uEZMbISMT7X6EjQKXCZhhT9MkPd ZsfcME+G1BaJNxxKbbqzcu522ctTesgxXZvAx1h5H7LS/d6UQAA0nbAeyi7P3jxEwK0DOe 6UF9Ze1/rbxBv7kHL4QzBn2FFrEPiHbdG4WpfDIwtqjZRU8yj5UGUSr6JbLOTg== 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 4S4PG16vzhzB7W; Tue, 10 Oct 2023 05:14:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39A5EHPq071812; Tue, 10 Oct 2023 05:14:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39A5EHxf071809; Tue, 10 Oct 2023 05:14:17 GMT (envelope-from git) Date: Tue, 10 Oct 2023 05:14:17 GMT Message-Id: <202310100514.39A5EHxf071809@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: a4b328aa4182 - stable/14 - linux(4): Regen for linux_nosys change List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dchagin X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: a4b328aa4182ca8315a95bda7b1e05aaa68c15b1 Auto-Submitted: auto-generated The branch stable/14 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=a4b328aa4182ca8315a95bda7b1e05aaa68c15b1 commit a4b328aa4182ca8315a95bda7b1e05aaa68c15b1 Author: Dmitry Chagin AuthorDate: 2023-10-03 07:38:03 +0000 Commit: Dmitry Chagin CommitDate: 2023-10-10 05:12:12 +0000 linux(4): Regen for linux_nosys change MFC after: 1 week (cherry picked from commit 99abee8b7be2d19be583b942b470f7af11d32ddc) --- sys/amd64/linux/linux_proto.h | 2 -- sys/amd64/linux/linux_syscall.h | 2 +- sys/amd64/linux/linux_syscalls.c | 2 -- sys/amd64/linux/linux_sysent.c | 3 --- sys/amd64/linux/linux_systrace_args.c | 3 --- sys/amd64/linux32/linux32_proto.h | 2 -- sys/amd64/linux32/linux32_syscall.h | 2 +- sys/amd64/linux32/linux32_syscalls.c | 2 -- sys/amd64/linux32/linux32_sysent.c | 3 --- sys/amd64/linux32/linux32_systrace_args.c | 3 --- sys/arm64/linux/linux_proto.h | 2 -- sys/arm64/linux/linux_syscall.h | 2 +- sys/arm64/linux/linux_syscalls.c | 2 -- sys/arm64/linux/linux_sysent.c | 3 --- sys/arm64/linux/linux_systrace_args.c | 3 --- sys/i386/linux/linux_proto.h | 2 -- sys/i386/linux/linux_syscall.h | 2 +- sys/i386/linux/linux_syscalls.c | 2 -- sys/i386/linux/linux_sysent.c | 3 --- sys/i386/linux/linux_systrace_args.c | 3 --- 20 files changed, 4 insertions(+), 44 deletions(-) diff --git a/sys/amd64/linux/linux_proto.h b/sys/amd64/linux/linux_proto.h index 0759ce282499..e02e1e9e64eb 100644 --- a/sys/amd64/linux/linux_proto.h +++ b/sys/amd64/linux/linux_proto.h @@ -33,7 +33,6 @@ struct thread; #define PADR_(t) 0 #endif -#define nosys linux_nosys struct linux_write_args { char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)]; char buf_l_[PADL_(char *)]; char * buf; char buf_r_[PADR_(char *)]; @@ -1438,7 +1437,6 @@ struct linux_fchmodat2_args { struct linux_map_shadow_stack_args { syscallarg_t dummy; }; -#define nosys linux_nosys int linux_write(struct thread *, struct linux_write_args *); int linux_open(struct thread *, struct linux_open_args *); int linux_newstat(struct thread *, struct linux_newstat_args *); diff --git a/sys/amd64/linux/linux_syscall.h b/sys/amd64/linux/linux_syscall.h index efd3413f91ce..3f1198399416 100644 --- a/sys/amd64/linux/linux_syscall.h +++ b/sys/amd64/linux/linux_syscall.h @@ -354,4 +354,4 @@ #define LINUX_SYS_linux_cachestat 451 #define LINUX_SYS_linux_fchmodat2 452 #define LINUX_SYS_linux_map_shadow_stack 453 -#define LINUX_SYS_MAXSYSCALL 455 +#define LINUX_SYS_MAXSYSCALL 454 diff --git a/sys/amd64/linux/linux_syscalls.c b/sys/amd64/linux/linux_syscalls.c index 6851612ec749..eeec76f3f3b9 100644 --- a/sys/amd64/linux/linux_syscalls.c +++ b/sys/amd64/linux/linux_syscalls.c @@ -5,7 +5,6 @@ */ const char *linux_syscallnames[] = { -#define nosys linux_nosys "read", /* 0 = read */ "linux_write", /* 1 = linux_write */ "linux_open", /* 2 = linux_open */ @@ -460,5 +459,4 @@ const char *linux_syscallnames[] = { "linux_cachestat", /* 451 = linux_cachestat */ "linux_fchmodat2", /* 452 = linux_fchmodat2 */ "linux_map_shadow_stack", /* 453 = linux_map_shadow_stack */ - "#454", /* 454 = nosys */ }; diff --git a/sys/amd64/linux/linux_sysent.c b/sys/amd64/linux/linux_sysent.c index ecb4ebb85b3a..e5a0ff377de5 100644 --- a/sys/amd64/linux/linux_sysent.c +++ b/sys/amd64/linux/linux_sysent.c @@ -7,7 +7,6 @@ #include #include #include -#include #include #include @@ -15,7 +14,6 @@ /* The casts are bogus but will do for now. */ struct sysent linux_sysent[] = { -#define nosys linux_nosys { .sy_narg = AS(read_args), .sy_call = (sy_call_t *)sys_read, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 0 = read */ { .sy_narg = AS(linux_write_args), .sy_call = (sy_call_t *)linux_write, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 1 = linux_write */ { .sy_narg = AS(linux_open_args), .sy_call = (sy_call_t *)linux_open, .sy_auevent = AUE_OPEN_RWTC, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 2 = linux_open */ @@ -470,5 +468,4 @@ struct sysent linux_sysent[] = { { .sy_narg = 0, .sy_call = (sy_call_t *)linux_cachestat, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 451 = linux_cachestat */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fchmodat2, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 452 = linux_fchmodat2 */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_map_shadow_stack, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 453 = linux_map_shadow_stack */ - { .sy_narg = 0, .sy_call = (sy_call_t *)nosys, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_ABSENT }, /* 454 = nosys */ }; diff --git a/sys/amd64/linux/linux_systrace_args.c b/sys/amd64/linux/linux_systrace_args.c index 2b0cf1df7e40..8a350eeda6c0 100644 --- a/sys/amd64/linux/linux_systrace_args.c +++ b/sys/amd64/linux/linux_systrace_args.c @@ -11,7 +11,6 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) int64_t *iarg = (int64_t *)uarg; int a = 0; switch (sysnum) { -#define nosys linux_nosys /* read */ case 0: { struct read_args *p = params; @@ -2816,7 +2815,6 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) { const char *p = NULL; switch (sysnum) { -#define nosys linux_nosys /* read */ case 0: switch (ndx) { @@ -7280,7 +7278,6 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) { const char *p = NULL; switch (sysnum) { -#define nosys linux_nosys /* read */ case 0: if (ndx == 0 || ndx == 1) diff --git a/sys/amd64/linux32/linux32_proto.h b/sys/amd64/linux32/linux32_proto.h index ae52fb81c560..8da298847a43 100644 --- a/sys/amd64/linux32/linux32_proto.h +++ b/sys/amd64/linux32/linux32_proto.h @@ -33,7 +33,6 @@ struct thread; #define PADR_(t) 0 #endif -#define nosys linux_nosys struct linux_exit_args { char rval_l_[PADL_(int)]; int rval; char rval_r_[PADR_(int)]; }; @@ -1736,7 +1735,6 @@ struct linux_cachestat_args { struct linux_fchmodat2_args { syscallarg_t dummy; }; -#define nosys linux_nosys int linux_exit(struct thread *, struct linux_exit_args *); int linux_fork(struct thread *, struct linux_fork_args *); int linux_write(struct thread *, struct linux_write_args *); diff --git a/sys/amd64/linux32/linux32_syscall.h b/sys/amd64/linux32/linux32_syscall.h index b6d74578cdfd..c7a2e79842af 100644 --- a/sys/amd64/linux32/linux32_syscall.h +++ b/sys/amd64/linux32/linux32_syscall.h @@ -413,4 +413,4 @@ #define LINUX32_SYS_linux_set_mempolicy_home_node 450 #define LINUX32_SYS_linux_cachestat 451 #define LINUX32_SYS_linux_fchmodat2 452 -#define LINUX32_SYS_MAXSYSCALL 454 +#define LINUX32_SYS_MAXSYSCALL 453 diff --git a/sys/amd64/linux32/linux32_syscalls.c b/sys/amd64/linux32/linux32_syscalls.c index 3f1e0425e224..3308ffeb7712 100644 --- a/sys/amd64/linux32/linux32_syscalls.c +++ b/sys/amd64/linux32/linux32_syscalls.c @@ -5,7 +5,6 @@ */ const char *linux32_syscallnames[] = { -#define nosys linux_nosys "#0", /* 0 = setup */ "linux_exit", /* 1 = linux_exit */ "linux_fork", /* 2 = linux_fork */ @@ -459,5 +458,4 @@ const char *linux32_syscallnames[] = { "linux_set_mempolicy_home_node", /* 450 = linux_set_mempolicy_home_node */ "linux_cachestat", /* 451 = linux_cachestat */ "linux_fchmodat2", /* 452 = linux_fchmodat2 */ - "#453", /* 453 = nosys */ }; diff --git a/sys/amd64/linux32/linux32_sysent.c b/sys/amd64/linux32/linux32_sysent.c index c1656a124026..024bca613c11 100644 --- a/sys/amd64/linux32/linux32_sysent.c +++ b/sys/amd64/linux32/linux32_sysent.c @@ -7,7 +7,6 @@ #include #include #include -#include #include #include #include @@ -16,7 +15,6 @@ /* The casts are bogus but will do for now. */ struct sysent linux32_sysent[] = { -#define nosys linux_nosys { .sy_narg = 0, .sy_call = (sy_call_t *)nosys, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_ABSENT }, /* 0 = setup */ { .sy_narg = AS(linux_exit_args), .sy_call = (sy_call_t *)linux_exit, .sy_auevent = AUE_EXIT, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 1 = linux_exit */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fork, .sy_auevent = AUE_FORK, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 2 = linux_fork */ @@ -470,5 +468,4 @@ struct sysent linux32_sysent[] = { { .sy_narg = 0, .sy_call = (sy_call_t *)linux_set_mempolicy_home_node, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 450 = linux_set_mempolicy_home_node */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_cachestat, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 451 = linux_cachestat */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fchmodat2, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 452 = linux_fchmodat2 */ - { .sy_narg = 0, .sy_call = (sy_call_t *)nosys, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_ABSENT }, /* 453 = nosys */ }; diff --git a/sys/amd64/linux32/linux32_systrace_args.c b/sys/amd64/linux32/linux32_systrace_args.c index 29940f4ed8a3..994f80b92d81 100644 --- a/sys/amd64/linux32/linux32_systrace_args.c +++ b/sys/amd64/linux32/linux32_systrace_args.c @@ -11,7 +11,6 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) int64_t *iarg = (int64_t *)uarg; int a = 0; switch (sysnum) { -#define nosys linux_nosys /* linux_exit */ case 1: { struct linux_exit_args *p = params; @@ -3325,7 +3324,6 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) { const char *p = NULL; switch (sysnum) { -#define nosys linux_nosys /* linux_exit */ case 1: switch (ndx) { @@ -8651,7 +8649,6 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) { const char *p = NULL; switch (sysnum) { -#define nosys linux_nosys /* linux_exit */ case 1: if (ndx == 0 || ndx == 1) diff --git a/sys/arm64/linux/linux_proto.h b/sys/arm64/linux/linux_proto.h index d002ad5a824f..c42de57d77c5 100644 --- a/sys/arm64/linux/linux_proto.h +++ b/sys/arm64/linux/linux_proto.h @@ -33,7 +33,6 @@ struct thread; #define PADR_(t) 0 #endif -#define nosys linux_nosys struct linux_setxattr_args { char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; char name_l_[PADL_(const char *)]; const char * name; char name_r_[PADR_(const char *)]; @@ -1245,7 +1244,6 @@ struct linux_cachestat_args { struct linux_fchmodat2_args { syscallarg_t dummy; }; -#define nosys linux_nosys int linux_setxattr(struct thread *, struct linux_setxattr_args *); int linux_lsetxattr(struct thread *, struct linux_lsetxattr_args *); int linux_fsetxattr(struct thread *, struct linux_fsetxattr_args *); diff --git a/sys/arm64/linux/linux_syscall.h b/sys/arm64/linux/linux_syscall.h index c45f3ded47a2..5ddc0608aff8 100644 --- a/sys/arm64/linux/linux_syscall.h +++ b/sys/arm64/linux/linux_syscall.h @@ -301,4 +301,4 @@ #define LINUX_SYS_linux_set_mempolicy_home_node 450 #define LINUX_SYS_linux_cachestat 451 #define LINUX_SYS_linux_fchmodat2 452 -#define LINUX_SYS_MAXSYSCALL 454 +#define LINUX_SYS_MAXSYSCALL 453 diff --git a/sys/arm64/linux/linux_syscalls.c b/sys/arm64/linux/linux_syscalls.c index 81fed4cc0227..c26519dc0a52 100644 --- a/sys/arm64/linux/linux_syscalls.c +++ b/sys/arm64/linux/linux_syscalls.c @@ -5,7 +5,6 @@ */ const char *linux_syscallnames[] = { -#define nosys linux_nosys "#0", /* 0 = linux_io_setup */ "#1", /* 1 = linux_io_destroy */ "#2", /* 2 = linux_io_submit */ @@ -459,5 +458,4 @@ const char *linux_syscallnames[] = { "linux_set_mempolicy_home_node", /* 450 = linux_set_mempolicy_home_node */ "linux_cachestat", /* 451 = linux_cachestat */ "linux_fchmodat2", /* 452 = linux_fchmodat2 */ - "#453", /* 453 = nosys */ }; diff --git a/sys/arm64/linux/linux_sysent.c b/sys/arm64/linux/linux_sysent.c index c0b495482040..ac93f9bb3a54 100644 --- a/sys/arm64/linux/linux_sysent.c +++ b/sys/arm64/linux/linux_sysent.c @@ -7,7 +7,6 @@ #include #include #include -#include #include #include @@ -15,7 +14,6 @@ /* The casts are bogus but will do for now. */ struct sysent linux_sysent[] = { -#define nosys linux_nosys { .sy_narg = 0, .sy_call = (sy_call_t *)nosys, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_ABSENT }, /* 0 = linux_io_setup */ { .sy_narg = 0, .sy_call = (sy_call_t *)nosys, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_ABSENT }, /* 1 = linux_io_destroy */ { .sy_narg = 0, .sy_call = (sy_call_t *)nosys, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_ABSENT }, /* 2 = linux_io_submit */ @@ -469,5 +467,4 @@ struct sysent linux_sysent[] = { { .sy_narg = 0, .sy_call = (sy_call_t *)linux_set_mempolicy_home_node, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 450 = linux_set_mempolicy_home_node */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_cachestat, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 451 = linux_cachestat */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fchmodat2, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 452 = linux_fchmodat2 */ - { .sy_narg = 0, .sy_call = (sy_call_t *)nosys, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_ABSENT }, /* 453 = nosys */ }; diff --git a/sys/arm64/linux/linux_systrace_args.c b/sys/arm64/linux/linux_systrace_args.c index ff58a287ee88..151d46238d1c 100644 --- a/sys/arm64/linux/linux_systrace_args.c +++ b/sys/arm64/linux/linux_systrace_args.c @@ -11,7 +11,6 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) int64_t *iarg = (int64_t *)uarg; int a = 0; switch (sysnum) { -#define nosys linux_nosys /* linux_setxattr */ case 5: { struct linux_setxattr_args *p = params; @@ -2433,7 +2432,6 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) { const char *p = NULL; switch (sysnum) { -#define nosys linux_nosys /* linux_setxattr */ case 5: switch (ndx) { @@ -6347,7 +6345,6 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) { const char *p = NULL; switch (sysnum) { -#define nosys linux_nosys /* linux_setxattr */ case 5: if (ndx == 0 || ndx == 1) diff --git a/sys/i386/linux/linux_proto.h b/sys/i386/linux/linux_proto.h index 6cbab6b1e8d8..8109afec72e9 100644 --- a/sys/i386/linux/linux_proto.h +++ b/sys/i386/linux/linux_proto.h @@ -33,7 +33,6 @@ struct thread; #define PADR_(t) 0 #endif -#define nosys linux_nosys struct linux_exit_args { char rval_l_[PADL_(int)]; int rval; char rval_r_[PADR_(int)]; }; @@ -1730,7 +1729,6 @@ struct linux_cachestat_args { struct linux_fchmodat2_args { syscallarg_t dummy; }; -#define nosys linux_nosys int linux_exit(struct thread *, struct linux_exit_args *); int linux_fork(struct thread *, struct linux_fork_args *); int linux_write(struct thread *, struct linux_write_args *); diff --git a/sys/i386/linux/linux_syscall.h b/sys/i386/linux/linux_syscall.h index 19b1714fb5d9..d82006b89847 100644 --- a/sys/i386/linux/linux_syscall.h +++ b/sys/i386/linux/linux_syscall.h @@ -419,4 +419,4 @@ #define LINUX_SYS_linux_set_mempolicy_home_node 450 #define LINUX_SYS_linux_cachestat 451 #define LINUX_SYS_linux_fchmodat2 452 -#define LINUX_SYS_MAXSYSCALL 454 +#define LINUX_SYS_MAXSYSCALL 453 diff --git a/sys/i386/linux/linux_syscalls.c b/sys/i386/linux/linux_syscalls.c index 112e6505bd00..88f362661ae2 100644 --- a/sys/i386/linux/linux_syscalls.c +++ b/sys/i386/linux/linux_syscalls.c @@ -5,7 +5,6 @@ */ const char *linux_syscallnames[] = { -#define nosys linux_nosys "#0", /* 0 = setup */ "linux_exit", /* 1 = linux_exit */ "linux_fork", /* 2 = linux_fork */ @@ -459,5 +458,4 @@ const char *linux_syscallnames[] = { "linux_set_mempolicy_home_node", /* 450 = linux_set_mempolicy_home_node */ "linux_cachestat", /* 451 = linux_cachestat */ "linux_fchmodat2", /* 452 = linux_fchmodat2 */ - "#453", /* 453 = nosys */ }; diff --git a/sys/i386/linux/linux_sysent.c b/sys/i386/linux/linux_sysent.c index 5aa7f4921774..dbba4dec3a8c 100644 --- a/sys/i386/linux/linux_sysent.c +++ b/sys/i386/linux/linux_sysent.c @@ -7,7 +7,6 @@ #include #include #include -#include #include #include @@ -15,7 +14,6 @@ /* The casts are bogus but will do for now. */ struct sysent linux_sysent[] = { -#define nosys linux_nosys { .sy_narg = 0, .sy_call = (sy_call_t *)nosys, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_ABSENT }, /* 0 = setup */ { .sy_narg = AS(linux_exit_args), .sy_call = (sy_call_t *)linux_exit, .sy_auevent = AUE_EXIT, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 1 = linux_exit */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fork, .sy_auevent = AUE_FORK, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 2 = linux_fork */ @@ -469,5 +467,4 @@ struct sysent linux_sysent[] = { { .sy_narg = 0, .sy_call = (sy_call_t *)linux_set_mempolicy_home_node, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 450 = linux_set_mempolicy_home_node */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_cachestat, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 451 = linux_cachestat */ { .sy_narg = 0, .sy_call = (sy_call_t *)linux_fchmodat2, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_STATIC }, /* 452 = linux_fchmodat2 */ - { .sy_narg = 0, .sy_call = (sy_call_t *)nosys, .sy_auevent = AUE_NULL, .sy_flags = 0, .sy_thrcnt = SY_THR_ABSENT }, /* 453 = nosys */ }; diff --git a/sys/i386/linux/linux_systrace_args.c b/sys/i386/linux/linux_systrace_args.c index 76781af18124..70036d227707 100644 --- a/sys/i386/linux/linux_systrace_args.c +++ b/sys/i386/linux/linux_systrace_args.c @@ -11,7 +11,6 @@ systrace_args(int sysnum, void *params, uint64_t *uarg, int *n_args) int64_t *iarg = (int64_t *)uarg; int a = 0; switch (sysnum) { -#define nosys linux_nosys /* linux_exit */ case 1: { struct linux_exit_args *p = params; @@ -3356,7 +3355,6 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) { const char *p = NULL; switch (sysnum) { -#define nosys linux_nosys /* linux_exit */ case 1: switch (ndx) { @@ -8707,7 +8705,6 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) { const char *p = NULL; switch (sysnum) { -#define nosys linux_nosys /* linux_exit */ case 1: if (ndx == 0 || ndx == 1) From nobody Tue Oct 10 05:14:19 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4PG325dYz4x7Ws; Tue, 10 Oct 2023 05:14: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 4S4PG31gCvz4dqx; Tue, 10 Oct 2023 05:14:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914859; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/x0xDLyylfoU+4psoK/FspMMiaa8nO1uSe84xnSX7TQ=; b=eo8+DZMNWaSim5LonRvv59ps6tQZV6gfhryiak+ZNIDf5z660/enVhT0gxBrq3U7/Vrj4S OGAJP0gcFvLWAgiDi4JsTBcNIAFZtS6GoS2rusYj842priK/xf3ZuWtFdQVMn2xadjTOyU RYaDB3VTj3IfzD2PqKumhw6wAeDP25jYrC8g4RCcYWvElmFJH7l/m0aUSMJOkX0yk0MY86 3l4cvtQBBfhBj6RhMKXgB/1dRNrmMxYqzO0yNmblBP+1DXrjLwCF9yiaA+Qn3tPUlzUj7c 0pjrRXoUFdxkyPma4PTo01SLpCPAVZm2lsSJ3MtoIzZQ0LF1d1MxUdwuljOWpw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696914859; a=rsa-sha256; cv=none; b=HKR95QKhlZ/AnBLi/w+HSGJtRMr2wSZB+ubelH0+y3rfLEnxDchjBW1Wgz/Ncw3uBzW2+W RFlR9fQsSELCyrifdOV55rj3MgUBr6zU63CwQB9hQZJuRe8Yp7Bqtar+AzCIXmPhD1r9vT WO4Uyfbn0HnvBPvAXBVXz18w+W74ehYt9pxu/SRIlJBCqyHsDwYwoFMO/2Omd7I/Rp0cKo B1tnSdN/l19US1KwMMx0ISptTH1zmKdYeO7XflDVbWq26zTLf1J9i7CkqFQIpgVOPFLK2y PgLik++pmGkIhw+8oKHJU/StCg17a2cdukY4/TeFFnYWR7DANbNHl94np4WuGw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914859; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/x0xDLyylfoU+4psoK/FspMMiaa8nO1uSe84xnSX7TQ=; b=gZBbEYkroCC8AKkarOa8hM++1x7JWNddJNuDhfyHOC/OtLfTEhsIXV+hJQS02kKVIBOQqm hwY+VGDdMsaPkaXsk/SqCTvjxvJXoD63+SZ/4w2FhNvygzbIwNMq4cf87JnukkMIv4p4oW ztNklK5H6zWQyhi7NW2rw7b+hkTmBnZkn8bpKrLgcmSIKPU+Y7k7knRFS3j0doJpuYeX7a oePkGyUck9H3Y+HCeGeF/sTK2886QxEoFX9E5cFWPnXWGXlu5AXiEJpBupiVmmytqN3CaH dR2UUmjZQAmByifrD3zV96Yg/N/efHppfnLwxWXgVNtqFxhmGFKHP4xA70DO9A== 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 4S4PG30nD2z9jq; Tue, 10 Oct 2023 05:14:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39A5EJva071848; Tue, 10 Oct 2023 05:14:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39A5EJNq071845; Tue, 10 Oct 2023 05:14:19 GMT (envelope-from git) Date: Tue, 10 Oct 2023 05:14:19 GMT Message-Id: <202310100514.39A5EJNq071845@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: ce693de706fc - stable/14 - linux(4): Deorbit linux_nosys List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dchagin X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ce693de706fca8218e59705f609efed52d8e3623 Auto-Submitted: auto-generated The branch stable/14 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=ce693de706fca8218e59705f609efed52d8e3623 commit ce693de706fca8218e59705f609efed52d8e3623 Author: Dmitry Chagin AuthorDate: 2023-10-03 07:38:03 +0000 Commit: Dmitry Chagin CommitDate: 2023-10-10 05:12:12 +0000 linux(4): Deorbit linux_nosys Differential Revision: https://reviews.freebsd.org/D41901 MFC after: 1 week (cherry picked from commit 199e397e9bf1076ae905e2742ef8e294870f5b27) --- sys/amd64/linux/linux_sysvec.c | 1 - sys/compat/linux/linux_misc.c | 8 -------- sys/compat/linux/linux_sysproto.h | 36 ------------------------------------ 3 files changed, 45 deletions(-) diff --git a/sys/amd64/linux/linux_sysvec.c b/sys/amd64/linux/linux_sysvec.c index 98e2a01b98db..757986f94ae1 100644 --- a/sys/amd64/linux/linux_sysvec.c +++ b/sys/amd64/linux/linux_sysvec.c @@ -65,7 +65,6 @@ #include #include #include -#include #include #include diff --git a/sys/compat/linux/linux_misc.c b/sys/compat/linux/linux_misc.c index cb781f3bad75..b87c05322e16 100644 --- a/sys/compat/linux/linux_misc.c +++ b/sys/compat/linux/linux_misc.c @@ -79,7 +79,6 @@ #include #include #include -#include #include #include @@ -1506,13 +1505,6 @@ linux_getsid(struct thread *td, struct linux_getsid_args *args) return (kern_getsid(td, args->pid)); } -int -linux_nosys(struct thread *td, struct nosys_args *ignore) -{ - - return (ENOSYS); -} - int linux_getpriority(struct thread *td, struct linux_getpriority_args *args) { diff --git a/sys/compat/linux/linux_sysproto.h b/sys/compat/linux/linux_sysproto.h index 7ad9e2068d7f..e69de29bb2d1 100644 --- a/sys/compat/linux/linux_sysproto.h +++ b/sys/compat/linux/linux_sysproto.h @@ -1,36 +0,0 @@ -/*- - * SPDX-License-Identifier: BSD-3-Clause - * - * Copyright (c) 2005 Travis Poppe - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer - * in this position and unchanged. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES - * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF - * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef LINUX_SYSPROTO -#define LINUX_SYSPROTO - -int linux_nosys(struct thread *, struct nosys_args *); - -#endif From nobody Tue Oct 10 05:14:20 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4PG43d0Qz4x7FX; Tue, 10 Oct 2023 05:14:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4PG42jwCz4dnx; Tue, 10 Oct 2023 05:14:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914860; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jj5nwUaKevIFbkf7pcn5usyzhkXfIrQ+8ulRR3OIAH8=; b=lPe0DbcFcuQ5e7USUe0sgH479NDhLMbLm1lE5yVvuYT7OQGWLh8h9nqCk4cr3K9UduQtaS 1uMb5JXcDaUKCPS2EvDVzK4jFoPf8eZ9+Qe3MazId3zzU1gO8gK7xjVp5YD/ROfbxaWiRN 448L4CaE52QdCOSzlmQfMs9rxvtz9LCg29JF8089TxynYiToH1FRVmEeISKTI1/Qlgblt+ MHBKwJJRj97ACl9jCVe3rzb2f3BrleFvZm25lLxBw23QyQ8fChbCRicMpDoJOLxynUyRBe VbrQuN1HUSYyMcz2XWZSseU+KzP9hHItEy0rGwGnnJXv1jIQgwctFN9RwQdk4g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696914860; a=rsa-sha256; cv=none; b=Dnr8PrIaUHlhV5/ml1Xce0jGNTnEqPi+FDEcteMryHXzXvfOCsb8VNmpkJC9CAqIppy5d4 6L7WrP6CnHshi0Mt9jXXuogxQxxZFU0K/vEq++ZauMaDt7w5uPUiprQtgRyfnWf+gKMvMR R4GmpzyxgZh9+QOC4HZz886Wl213GB0bsIIvOCeN/279mqC5/3ORshFYMcPJRaSPkWilzz 4VZawmn4VwYkiTqUq7w25J1y4xqBnOSurfGirriRgGecBwos0nm76cRKbtiTiRxfamjcpa pX+z+5F6bj7DYP42iGQhYWPWz5Nw7+J4T5yFnRvl0fSX1iCTYhQBcC9SYdG3iw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914860; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jj5nwUaKevIFbkf7pcn5usyzhkXfIrQ+8ulRR3OIAH8=; b=ZXprUDykMU1gPXndi1UP6DPks6p+zjKn73RojPJSqSxezGcQRZW1OpTeFQZopFZtXBmf7h CkFPUoM6ny09tgqknOXpMScWZ5Uc4BizFihhO8YYceq7V/TBsxl99x4o/zu3KantNRYa4c JS3PGySR9ndfXJuOJ/a/5SfCt6gKgH+SNfBmblls2c+o1NEKizgADwIB/nd94/2zX26Y6g 3cBf6Vh9chkseq/FXeEc8vvL2DeoYfOxBkncWRcliSWhlE2aDaKTEsZYDY+zDU/a8xMWtT biZygO2u1TGEeRziXDCkgbpYdH6MrQs1c/iK4yukxgtC+2DdeHdjSif9Ppuudg== 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 4S4PG41dTVz9jr; Tue, 10 Oct 2023 05:14:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39A5EK9h071894; Tue, 10 Oct 2023 05:14:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39A5EKot071891; Tue, 10 Oct 2023 05:14:20 GMT (envelope-from git) Date: Tue, 10 Oct 2023 05:14:20 GMT Message-Id: <202310100514.39A5EKot071891@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 49dc4d714aee - stable/14 - sysent: Trim trailing whitespaces List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dchagin X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 49dc4d714aee981a38172d76d0b91a584e6c5049 Auto-Submitted: auto-generated The branch stable/14 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=49dc4d714aee981a38172d76d0b91a584e6c5049 commit 49dc4d714aee981a38172d76d0b91a584e6c5049 Author: Dmitry Chagin AuthorDate: 2023-10-03 07:38:03 +0000 Commit: Dmitry Chagin CommitDate: 2023-10-10 05:12:12 +0000 sysent: Trim trailing whitespaces MFC after: 1 week (cherry picked from commit 7ec361d627faeba2538fde88521d76e53a433359) --- sys/sys/sysent.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/sys/sysent.h b/sys/sys/sysent.h index 0166523ab84e..a23c338f9ce2 100644 --- a/sys/sys/sysent.h +++ b/sys/sys/sysent.h @@ -223,7 +223,7 @@ struct syscall_module_data { .sy_return = 0, \ .sy_flags = 0, \ .sy_thrcnt = 0 \ -} +} #define MAKE_SYSENT(syscallname) \ static struct sysent syscallname##_sysent = SYSENT_INIT_VALS(syscallname); From nobody Tue Oct 10 05:14:21 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4PG55hfQz4x7ct; Tue, 10 Oct 2023 05:14: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 4S4PG53YdZz4dx7; Tue, 10 Oct 2023 05:14:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914861; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BRgAWJMLS7FgbA5o+vkzqGNAgmhULOzBIlz/mnj5SrI=; b=aZKdk6Sh//ie9q+gn8UhFpJOE3YNUoQ8gzB1jXkwCb7djQxdMSYUMZTZnkm2QZp4RpXvFk a5Pb3BjumiY2kCYbq9ZclluZkLDPSBDb+KCXGqNzXl4Vot0kGwQ/3IxxeQxfhdTccr1Ycs RPGvXy+haUsrNzh6p+nenlhxxA50Emfh6vgXMuNRJ02HGizdCgzuJT/P9VVXGHDieed9JN jL3Fler2W9TQ7p6224TArBrDECX5zbRgakuuP8DHkoMb4WPRIvkoUIUdbq8iLjWircjOoQ P+NpKFeYh9nFVD7pw3m2jlR8FmXM8GksD+ZgKcCa8tZrnLOs+jiExDhkLKn+Qw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696914861; a=rsa-sha256; cv=none; b=jF/59rU87VPQl6vb9Wl1EHxGPhEadpikplZk8x/oHs3j0J7jcfb1Y1srUomJL3UYzCCNmL N1Qo7SA10QwT8eda43r4midng8Mn0yazvladYP6deam23uh4NxeShoFgY4/71BYHUZRbgR gEoE+VGtonm8ueUBe8qPwGWIEI1mInuEmp2oPlUhoB2IKVqwuHa5yGAKEgfcoxvU4rbFoS Fv5RP81la04wVuQro8A5xg5TBpjk24YQweMKHwaXcicY63AmkMfPfxVbRNpwsLP5unyH1C TT6hTpXi53+z3NIw7yrEmGrkh38ecilTobB4oFgwIaOPKZTBba1dGHQ+UcFHMg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914861; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BRgAWJMLS7FgbA5o+vkzqGNAgmhULOzBIlz/mnj5SrI=; b=SX/MNWutvZqSaob7WVQcWEhd5NjjEDu5pF4ee07KY47Kots2tdJgNNXuhkYIAsTYUU8IAn IVTtmYTRZDzbLdZ2nb6A4RXPLvi6X+x/hOnzd26XghU+hvubPVUDPajXHN0HMtmzQEYmqf btHgm5rySIw/lyEJiHD0HxDTGMDsxcwmd2czlTBivsDSsvQB97wMedAhRAYrdrTJDAfa70 +lsuDtYS19EE1id1bbO/gTJLOgJTm7ImAc4uHqTKILA8JJXCLMoImbDdi8SOzulp0aLyMa 24umjRxoNJjWFNsyVi5y4bTowLuV/schjcq0ulPj6HWX8QSJ4ioorRsTSvXXeQ== 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 4S4PG52fC7zBB3; Tue, 10 Oct 2023 05:14:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39A5EL5B071934; Tue, 10 Oct 2023 05:14:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39A5ELRi071931; Tue, 10 Oct 2023 05:14:21 GMT (envelope-from git) Date: Tue, 10 Oct 2023 05:14:21 GMT Message-Id: <202310100514.39A5ELRi071931@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 2e8294945749 - stable/14 - linux(4): Actually delete linux_sysproto.h List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dchagin X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 2e8294945749782fabf821246f37211449c6f37b Auto-Submitted: auto-generated The branch stable/14 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=2e8294945749782fabf821246f37211449c6f37b commit 2e8294945749782fabf821246f37211449c6f37b Author: Dmitry Chagin AuthorDate: 2023-10-03 08:26:17 +0000 Commit: Dmitry Chagin CommitDate: 2023-10-10 05:12:12 +0000 linux(4): Actually delete linux_sysproto.h MFC after: 1 week (cherry picked from commit fbb3f13b15539f223e40ff606744dc8ba1d6569f) --- sys/compat/linux/linux_sysproto.h | 0 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/sys/compat/linux/linux_sysproto.h b/sys/compat/linux/linux_sysproto.h deleted file mode 100644 index e69de29bb2d1..000000000000 From nobody Tue Oct 10 05:14:22 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4PG66DFbz4x7cv; Tue, 10 Oct 2023 05:14: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 4S4PG64FTJz4f4k; Tue, 10 Oct 2023 05:14:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914862; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WXuOLCy0lgpW8eCCuIp79B20FwSGGkSiyDqRCl+rFj8=; b=yMYcjCP8KI/20dmBwDcd3Z/l5smeFYXgFnB9zhcLWJDHI/u9VK6b0oN/sdLqqF9hZOyml+ nn6ZblB/ZeW2r6j/YQ1sjzr84+5kCPOwcrnf7aNCQMA1s/xhtm+4oyOEDMaKytWvEMuuSO JG1lbnnSlBt8P2rs0TPP1JwjlwTvZQ5TNVCgqn+GVWNIfd7N7qlTzFF+wx2EENXIetessl wN9m5ddq0I3qMYJrttXxpPpvW3BSA6aJObAgKgohggnVFDzMZ2HG3eCckU2iCLmOeDIV1G Nt23TkXhq/xgfII8fi/HfUHxRurrbg6hqkvMN2n0d/jqhRqAQzyiWVBKF0jNNw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696914862; a=rsa-sha256; cv=none; b=lHNguO4P10y4CTWqByTsfbepQludlT+Oq6fma5KPRyg6HvJ5v4602Sg5Vq2C+ZH/EUAD4n 4KjLACzoVHNqgYADvPYfxu5dk5vAE0MVchdGPo26wh6oyXOfVc+Qc3PAGPqyvrIpC8b+sZ qjADaMPqBwP3znPrRLn/OX4ngox1L5q3enOjzjwaX75RBOcCsCUi/ZYmjIbOxyt08H/URM c++8nMLpKGBLGggzE1/CuE432GbANGKzXEkt70tXBEtmw4Jbq86N7325yDsDPrAc27pV+m PMS8N2s8cFPE8TnOY9sfpo0kXRcYcJR2VGyRqfsm8n8VhQFh8/jg5a/jgyohrw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914862; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WXuOLCy0lgpW8eCCuIp79B20FwSGGkSiyDqRCl+rFj8=; b=Bb1N1g1DDTSyUoeMgbTTtmBhswYS1wYnqOCHQh5PI/7KzpTeP8BwLhYVvtpY4NBELGTNYi PbvEHSDTnSSr/AfWE/HJoQjZ7+TPJ6cL4l73VKZ5O2bxUQRCQCL+YWKU+FunW8q/6CEVNN 0zWLjkrKWIT2WBmmgo6EHb/PlV3b7cl5l+OnJVJtVzz8buMhUY4yIC6+kWAX1yeZ0PtN+e Spa8pnb7o7Ui+XHR9MSkbWGBBRJxg6Y2CtAL2WpAmrirt67nflePserEukOWhUx54dZoh4 o4wB8pqVPu9pSmtSda4/IsI+DqT3MMVQw9tLaUdcX7+WWXnf1AYtn47yAHYMsQ== 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 4S4PG63FzgzBMB; Tue, 10 Oct 2023 05:14:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39A5EM6E071986; Tue, 10 Oct 2023 05:14:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39A5EMfG071983; Tue, 10 Oct 2023 05:14:22 GMT (envelope-from git) Date: Tue, 10 Oct 2023 05:14:22 GMT Message-Id: <202310100514.39A5EMfG071983@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 4c1b13627a75 - stable/14 - linux(4): Fix semid64_ds structure layout List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dchagin X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 4c1b13627a75bee92652cded438ce313fefeec67 Auto-Submitted: auto-generated The branch stable/14 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=4c1b13627a75bee92652cded438ce313fefeec67 commit 4c1b13627a75bee92652cded438ce313fefeec67 Author: Dmitry Chagin AuthorDate: 2023-10-04 18:21:12 +0000 Commit: Dmitry Chagin CommitDate: 2023-10-10 05:12:13 +0000 linux(4): Fix semid64_ds structure layout Unlike x86_64, other 64-bit architectures do not have paddings for the time fields. MFC after: 1 week (cherry picked from commit 1ee29160c5e5d8fa70173445b4a6de6742af74dc) --- sys/compat/linux/linux_ipc64.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/compat/linux/linux_ipc64.h b/sys/compat/linux/linux_ipc64.h index 75563c55971c..e3834b909bfc 100644 --- a/sys/compat/linux/linux_ipc64.h +++ b/sys/compat/linux/linux_ipc64.h @@ -101,9 +101,13 @@ struct l_msqid64_ds { struct l_semid64_ds { struct l_ipc64_perm sem_perm; /* permissions */ l_time_t sem_otime; /* last semop time */ +#if defined(__amd64__) || defined(__i386__) l_ulong __unused1; +#endif l_time_t sem_ctime; /* last change time */ +#if defined(__amd64__) || defined(__i386__) l_ulong __unused2; +#endif l_ulong sem_nsems; /* no. of semaphores in array */ l_ulong __unused3; l_ulong __unused4; From nobody Tue Oct 10 05:16:16 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4PJK0bDWz4x7SJ; Tue, 10 Oct 2023 05:16: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 4S4PJK00Rjz4gKt; Tue, 10 Oct 2023 05:16:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914977; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BtF/1YKTZHiOnIb6dBu6mEWqSzezXXib4ezMKRtSdmE=; b=WhIYgpXja6eGGsk88XuBeXpucA26rZRJRbN2hFFGklKFrgcoh4+4EQYAEX+YyUBdgoiM/M 9vtmwqZTNiZO3kvNO3lf3GCihhvrnI+Mr+Cw1U3m92DEwR1QcQw0juyvWntWZh7SrAuvs3 EUb/zc1pFC8fQGSbevXxw6M6UwcNct6Zq4Bg3hKZjQqdT4A5/Wf0MWhcmAhEPK9VsAXRNs pHhNngrjpA9GHMYyXQ+D0hSHcmhXZNj5R41IUcvz9St2lllr9C+252U4mKoBYp0uUuxgZV c4GY3kjU9NZLG7ZHenQBJocqNxtcwWAJQcgHhQjUtoCYgxsRLg+afGZ1iEsaoQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696914977; a=rsa-sha256; cv=none; b=EG05Rys5CI3kuVNLsRUkzr0BMsSyscPVM1fvGWc31UYZHQUu7UNoWbucfxq8Y40p1e0hM7 IJk/dXHsU1nnAK+2uC9O+WTNpQFX2mCHifujXIna3N1xEtvO0PPMir6ibEIoIUxmC1xHCF VI2yrA8cythtjSI28KwhTbEn52effGzrQ0sTjuDKh5D1tVwE4JxIuWmIn9qqavKPe08lEQ iifQrSD9K5t1Lo4PAPyDsmSCHh4rWHnFGp4AZWC5v2QbgOHcXUOB21lDuCoJsTiC/qT32V lgdwr0RRXOPR7+N1Oa61iDylOxtMdWwlDCW06R3jHa3ZpjrcuQrp02oVLpjuVQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696914977; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BtF/1YKTZHiOnIb6dBu6mEWqSzezXXib4ezMKRtSdmE=; b=U6/zh1itTBeuuFeBxtmLAnqx3DwUGh3ifpAZZYodKThgiu5RX/Ck+NxC+Ib+QyIkmA6/Ce jmzzexL4OfBdPfGf7FoDH3wc9JaF18nkt6d65sA0JLjXIy5gfl0v8Kn5BUUK1lGa5/UJ6G r/bJ+pGfLbZOA1reVkB//YoQfKR2UKjGBa0Y4xGIklxYcA+4+59ci+hxnjm60o1KHK4mkF +YE/1Oaq/1WvBQukPNDsI/W5hlp6Y/Hlo4p2SFJ4cC39mUlzqJJB9WnQPyJpRLYecyOPKI rt2Hck7zHN7DPjRo0lPOjgqhEPiOewTPn86dv0zclKKCzPdU1NaU/DnHs8scTw== 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 4S4PJJ69rgzBMF; Tue, 10 Oct 2023 05:16:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39A5GGRe072401; Tue, 10 Oct 2023 05:16:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39A5GGXl072398; Tue, 10 Oct 2023 05:16:16 GMT (envelope-from git) Date: Tue, 10 Oct 2023 05:16:16 GMT Message-Id: <202310100516.39A5GGXl072398@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: f9d36fa86cdd - stable/13 - tests: Test that SIGSYS is not delivered if kern.signosys knob is off List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dchagin X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: f9d36fa86cdd458c00c74b8a211d049a560af322 Auto-Submitted: auto-generated The branch stable/13 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=f9d36fa86cdd458c00c74b8a211d049a560af322 commit f9d36fa86cdd458c00c74b8a211d049a560af322 Author: Dmitry Chagin AuthorDate: 2023-10-03 07:38:02 +0000 Commit: Dmitry Chagin CommitDate: 2023-10-10 05:15:57 +0000 tests: Test that SIGSYS is not delivered if kern.signosys knob is off Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D41979 MFC after: 1 week (cherry picked from commit b67c0ba4613861f8245ce835081311aef1c19bae) --- tests/sys/kern/Makefile | 1 + tests/sys/kern/sigsys.c | 101 +++++++++++++++++++++++++++++++++++++++++------- 2 files changed, 88 insertions(+), 14 deletions(-) diff --git a/tests/sys/kern/Makefile b/tests/sys/kern/Makefile index ec2bbd742956..16faeeb40421 100644 --- a/tests/sys/kern/Makefile +++ b/tests/sys/kern/Makefile @@ -41,6 +41,7 @@ ATF_TESTS_C+= unix_socketpair_test ATF_TESTS_C+= waitpid_nohang ATF_TESTS_C+= pdeathsig ATF_TESTS_C+= sigsys +TEST_METADATA.sigsys+= is_exclusive="true" ATF_TESTS_SH+= coredump_phnum_test ATF_TESTS_SH+= sonewconn_overflow diff --git a/tests/sys/kern/sigsys.c b/tests/sys/kern/sigsys.c index 75e3816fc158..8554a646ebc6 100644 --- a/tests/sys/kern/sigsys.c +++ b/tests/sys/kern/sigsys.c @@ -7,31 +7,29 @@ * under sponsorship from the FreeBSD Foundation. */ +#include #include +#include #include #include #include #include #include +#include static sig_atomic_t sigsys_cnt; +#define SAVEDVALUE "savedsignosys" + static void sigsys_handler(int signo, siginfo_t *si, void *ucp) { sigsys_cnt++; } -ATF_TC(sigsys_test); - -ATF_TC_HEAD(sigsys_test, tc) -{ - atf_tc_set_md_var(tc, "descr", - "Testing delivery of SIGSYS on invalid syscalls"); -} - -ATF_TC_BODY(sigsys_test, tc) +static void +sigsys_test(int knob) { struct sigaction sa; @@ -43,27 +41,102 @@ ATF_TC_BODY(sigsys_test, tc) ATF_REQUIRE(syscall(273) == -1); /* reserved */ ATF_CHECK_ERRNO(ENOSYS, true); atomic_signal_fence(memory_order_seq_cst); - ATF_CHECK_EQ(1, sigsys_cnt); + ATF_CHECK_EQ(1 * knob, sigsys_cnt * knob); ATF_REQUIRE(syscall(440) == -1); /* SYS_kse_switchin */ ATF_CHECK_ERRNO(ENOSYS, true); atomic_signal_fence(memory_order_seq_cst); - ATF_CHECK_EQ(2, sigsys_cnt); + ATF_CHECK_EQ(2 * knob, sigsys_cnt * knob); /* Hope this is enough for say next two months */ ATF_REQUIRE(syscall(3000000) == -1); ATF_CHECK_ERRNO(ENOSYS, true); atomic_signal_fence(memory_order_seq_cst); - ATF_CHECK_EQ(3, sigsys_cnt); + ATF_CHECK_EQ(3 * knob, sigsys_cnt * knob); ATF_REQUIRE(syscall(SYS_afs3_syscall) == -1); ATF_CHECK_ERRNO(ENOSYS, true); atomic_signal_fence(memory_order_seq_cst); - ATF_CHECK_EQ(4, sigsys_cnt); + ATF_CHECK_EQ(4 * knob, sigsys_cnt * knob); +} + +static void +sysctlset(const char *name, int val) +{ + size_t oldlen; + int oldval; + char buf[80]; + + ATF_REQUIRE(sysctlbyname(name, &oldval, &oldlen, NULL, 0) == 0); + + /* Store old %name in a symlink for cleanup */ + snprintf(buf, sizeof(buf), "%d", oldval); + ATF_REQUIRE(symlink(buf, SAVEDVALUE) == 0); + + ATF_REQUIRE(sysctlbyname(name, NULL, NULL, &val, sizeof(val)) == 0); +} + +static void +sysctlcleanup(const char *name) +{ + size_t oldlen; + int n, oldval; + char buf[80]; + + if ((n = readlink(SAVEDVALUE, buf, sizeof(buf))) > 0) { + buf[MIN((size_t)n, sizeof(buf) - 1)] = '\0'; + if (sscanf(buf, "%d", &oldval) == 1) { + oldlen = sizeof(oldval); + (void)sysctlbyname(name, NULL, 0, + &oldval, oldlen); + } + } + (void)unlink(SAVEDVALUE); +} + +ATF_TC_WITH_CLEANUP(sigsys_test_on); +ATF_TC_HEAD(sigsys_test_on, tc) +{ + atf_tc_set_md_var(tc, "require.user", "root"); + atf_tc_set_md_var(tc, "require.config", "allow_sysctl_side_effects"); + atf_tc_set_md_var(tc, "descr", + "Testing delivery of SIGSYS on invalid syscalls"); +} + +ATF_TC_BODY(sigsys_test_on, tc) +{ + sysctlset("kern.signosys", 1); + sigsys_test(1); +} + +ATF_TC_CLEANUP(sigsys_test_on, tc) +{ + sysctlcleanup("kern.signosys"); +} + +ATF_TC_WITH_CLEANUP(sigsys_test_off); +ATF_TC_HEAD(sigsys_test_off, tc) +{ + atf_tc_set_md_var(tc, "require.user", "root"); + atf_tc_set_md_var(tc, "require.config", "allow_sysctl_side_effects"); + atf_tc_set_md_var(tc, "descr", + "Testing SIGSYS silence on invalid syscalls"); +} + +ATF_TC_BODY(sigsys_test_off, tc) +{ + sysctlset("kern.signosys", 0); + sigsys_test(0); +} + +ATF_TC_CLEANUP(sigsys_test_off, tc) +{ + sysctlcleanup("kern.signosys"); } ATF_TP_ADD_TCS(tp) { - ATF_TP_ADD_TC(tp, sigsys_test); + ATF_TP_ADD_TC(tp, sigsys_test_on); + ATF_TP_ADD_TC(tp, sigsys_test_off); return (atf_no_error()); } From nobody Tue Oct 10 09:06:43 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4VQD2Cp8z4wRKs; Tue, 10 Oct 2023 09:06:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4VQD1ZGKz3KLW; Tue, 10 Oct 2023 09:06:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696928804; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4YspMrAB9zVI55AcLXdHftv0yAlcfSUHMRk3zculJJw=; b=XXZtpL7lpZN+WR1Xbnxd/NNJFiUCfpre9v2R6rN8OGh3aTcQIgXptYFhZa+0qgNdoTcQQK XrecvJI+LooxT5J22pvBpgxZWsDpz/AwnIT6jCi530bhjiXPscPX0hOEaioBG8Cp0bS5BB uDBhaUzF5y0ZU4MOiUvv9n+BRbiqfVQtEcwnMqHwJHSqnwQTzKZriqEno4oOcRKvThGxsM 1uLM47L7ByIqDJ2cKvr56mHkfZyZ9/FESkW0Oyiy2IeZpBzl2MisbPRpfNSLg1Nmhace0m +bDAuEeXybkdgtfpdZAXShJIWucyHvhx9tel+S7lJaZ2SySEjYMHq2dlAy9Wqw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696928804; a=rsa-sha256; cv=none; b=Ypjm8SJ+SrCAaR8vXc9MnC0Xfjg/rHm8mSC5tTydZUA0KGaJLYGwdJ3E1TI4qiGyedeny8 dHrP/xJA4FS36kpy4Xcmi/ezk//AqDU59TYf3M/dtBTG9Z2kReYXgbNVRG5/7tnMk6yx0s 4kMAoSHWQgvQjuhfgqKvvkIggjipPE+PvIpG6Td6dy0mYKP9obhSSOIH6F4pT43HosoSIU C8npEO86BGUJ/UEkCFPFuT7XDtQJ9JDFgnn/V43my6Mzm4BGH/+Tf/pkPXC+QrHMFAxYkL y7NYk2/1fklxIf1uxtPWZotwx1RqkdjdlUw6zFFQVaC6Vv8Xs8C+7M0IgGybiQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696928804; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4YspMrAB9zVI55AcLXdHftv0yAlcfSUHMRk3zculJJw=; b=sa8ipLIj6/NYwMjHbgbcbRGzq4H3jjWA5nwwfRXXqm9FLeLYp8xKjW5ihM28evFqhDsozy vU46z6n0DCVfDXW6NsuzDfxhAr1JsFRFXGW64CdpwFuS8ZoW6fVozlEe+9DfqiMizCKOEU fYPik2j+VzHGuV64pdQTRNFfl8luNsYfTXSdJPT5d31wrIk5Qq8f1POVH0+pMzSszBjzmr rMJQFGmTtlrqHMTwuv7SinTTsvuLGRRNJkgTPYsLpyD386X/s7GUwNqxwwdT4IbQgxXnAd qxPB/0juuIKcchQAlilLy8cqP7Hu4jEciK1Ibcn2R2K7nd5J5SNzNRz7mqTR5w== 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 4S4VQD0WwLzXnK; Tue, 10 Oct 2023 09:06:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39A96hDn055054; Tue, 10 Oct 2023 09:06:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39A96hxI055051; Tue, 10 Oct 2023 09:06:43 GMT (envelope-from git) Date: Tue, 10 Oct 2023 09:06:43 GMT Message-Id: <202310100906.39A96hxI055051@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dmitry Chagin Subject: git: 78d34c77f425 - stable/14 - linux(4): Deduplicate SystemV IPC defines from amd64/linux List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dchagin X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 78d34c77f42525f9a4005a5e751ee1ead94d4763 Auto-Submitted: auto-generated The branch stable/14 has been updated by dchagin: URL: https://cgit.FreeBSD.org/src/commit/?id=78d34c77f42525f9a4005a5e751ee1ead94d4763 commit 78d34c77f42525f9a4005a5e751ee1ead94d4763 Author: Dmitry Chagin AuthorDate: 2023-10-04 18:18:45 +0000 Commit: Dmitry Chagin CommitDate: 2023-10-10 09:06:28 +0000 linux(4): Deduplicate SystemV IPC defines from amd64/linux MFC after: 1 week (cherry picked from commit 4fe779900b5d9359969426d44679d28d3178604e) --- sys/amd64/linux/linux.h | 28 ---------------------------- 1 file changed, 28 deletions(-) diff --git a/sys/amd64/linux/linux.h b/sys/amd64/linux/linux.h index 4603835e15e6..918b9129f47b 100644 --- a/sys/amd64/linux/linux.h +++ b/sys/amd64/linux/linux.h @@ -188,34 +188,6 @@ typedef struct { #define LINUX_MS_NOEXEC 0x0008 #define LINUX_MS_REMOUNT 0x0020 -/* - * SystemV IPC defines - */ -#define LINUX_IPC_RMID 0 -#define LINUX_IPC_SET 1 -#define LINUX_IPC_STAT 2 -#define LINUX_IPC_INFO 3 - -#define LINUX_SHM_LOCK 11 -#define LINUX_SHM_UNLOCK 12 -#define LINUX_SHM_STAT 13 -#define LINUX_SHM_INFO 14 - -#define LINUX_SHM_RDONLY 0x1000 -#define LINUX_SHM_RND 0x2000 -#define LINUX_SHM_REMAP 0x4000 - -/* semctl commands */ -#define LINUX_GETPID 11 -#define LINUX_GETVAL 12 -#define LINUX_GETALL 13 -#define LINUX_GETNCNT 14 -#define LINUX_GETZCNT 15 -#define LINUX_SETVAL 16 -#define LINUX_SETALL 17 -#define LINUX_SEM_STAT 18 -#define LINUX_SEM_INFO 19 - union l_semun { l_int val; l_uintptr_t buf; From nobody Tue Oct 10 13:35:08 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4cMx1Gtxz4wmQ3; Tue, 10 Oct 2023 13: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 4S4cMx0p3qz4Hl0; Tue, 10 Oct 2023 13: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=1696944909; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LGT0bvBaU3W/wXXF2SUwMZ3gGe82AyZGt/RRUjY1Ip8=; b=LeKfW8Pc1tdUXHOahvajHFth/PO4WWAYdERDMv4GlchkgQvunpcoXKQW2iPFf1dMtbWcl4 l4m81seII13VqNJ5KnRWR5sxJ2E5IHua7JaORu6D9lHU0SM98JL85KAu9fveWnRjAxq1hu 6GEK7Is7zN1CWvvF6l3C46UE+jL61dWTmZ26ah55PnyKj1VIzAowwSeuTcoF1uwE+xyXn8 RHFY3kPQSXX8qapJDozbgYCZFWLZfaGixnPGMgCp8k+rUyQZqYrECtT01/gHEbqyckB/DO wKVh8/S1RsX3AvuyumtqbCT6rP8uaq5srfsSwDSKw5lNo8HloaOwRcU5BpVyKA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696944909; a=rsa-sha256; cv=none; b=G2ZtEtQxZ0YJWyAilm0z5dqiXjUXjCdsSRfeuhp8XxXZzSsBH85Qg/ZR2g6fYMHfTw8+mO ehRdwGNdyspHc112kYtYxbSYQ8Q8msHB8T6QY5OgRJ+/QzaYxBO7o9v8btN6OinTg2xLHG qqtkYC0SWHZ7QNqAc3dHU/nN3//cExiRugxeUwXE+AdMcHEx9yPcPE9IsXlp/RuLFXOdWl 2X97cI4hV/hhquvmrVnUV2YVaMP4Bw0V3RQMlmPUCGtROV9aJoUV0fzTDaNgXYJsSsapOZ 3hqtCzCfF/Y05he8NsEK8wJ98dszifoSgkJiXfnJ/2qiflPu/5OlalACLBjkzg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696944909; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LGT0bvBaU3W/wXXF2SUwMZ3gGe82AyZGt/RRUjY1Ip8=; b=UgxevmLruxaZjt5i2yMen94WP3w9VR3qhOX/WdKDO9I9cnPYLvGPnxQqqu2XZNGsdkjlO5 pqofy/WpzmBCRPBdsk/DNp3XITKj8gAAgu+0nYf9kNJBGZGY60AN5edvu76zBQWP75karK dr7D8Jx804NFuPuddNqt/ba3xm7XPOGM1upi/FdLZl1l1l7kGbzvUwa+gv9t9ih7plWiUp 8HMWWZp/1ZULTXr4LjfnifJtaKUSPXpVPOd/G2Afpaah1U8QPSJLw+i1AEsRNKdwMhlxL6 ILG06+M4QURfSckzgtVlTtNb+l3LhztC0v9JsxBAriU2HMXFudgiu6yEOLCydg== 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 4S4cMw707BzgrJ; Tue, 10 Oct 2023 13:35:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39ADZ8Gw004964; Tue, 10 Oct 2023 13:35:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39ADZ8j7004961; Tue, 10 Oct 2023 13:35:08 GMT (envelope-from git) Date: Tue, 10 Oct 2023 13:35:08 GMT Message-Id: <202310101335.39ADZ8j7004961@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 6c59ac8c7934 - stable/14 - x86: AMD Zen2: Zenbleed chicken bit mitigation List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 6c59ac8c7934064d63490b3f20fe92d0f87ef4b2 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=6c59ac8c7934064d63490b3f20fe92d0f87ef4b2 commit 6c59ac8c7934064d63490b3f20fe92d0f87ef4b2 Author: Olivier Certner AuthorDate: 2023-09-11 14:18:30 +0000 Commit: Ed Maste CommitDate: 2023-10-10 13:34:31 +0000 x86: AMD Zen2: Zenbleed chicken bit mitigation Applies only to bare-metal Zen2 processors. The system currently automatically applies it to all of them. Tunable/sysctl 'machdep.mitigations.zenbleed.enable' can be used to forcibly enable or disable the mitigation at boot or run-time. Possible values are: 0: Mitigation disabled 1: Mitigation enabled 2: Run the automatic determination. Currently, value 2 is the default and has identical effect as value 1. This might change in the future if we choose to take into account microcode revisions in the automatic determination process. The tunable/sysctl value is simply ignored on non-applicable CPU models, which is useful to apply the same configuration on a set of machines that do not all have Zen2 processors. Trying to set it to any integer value not listed above is silently equivalent to setting it to value 2 (automatic determination). The current mitigation state can be queried through sysctl 'machdep.mitigations.zenbleed.state', which returns "Not applicable", "Mitigation enabled" or "Mitigation disabled". Note that this state is not guaranteed to be accurate in case of intervening modifications of the corresponding chicken bit directly via cpuctl(4) (this includes the cpucontrol(8) utility). Resetting the desired policy through 'machdep.mitigations.zenbleed.enable' (possibly to its current value) will reset the hardware state and ensure that the reported state is again coherent with it. Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D41817 (cherry picked from commit ebaea1bcd2eb0aa90937637ed305184b6fedc69b) --- sys/amd64/acpica/acpi_wakeup.c | 1 + sys/amd64/amd64/initcpu.c | 3 + sys/amd64/amd64/machdep.c | 4 ++ sys/dev/cpuctl/cpuctl.c | 1 + sys/x86/include/specialreg.h | 1 + sys/x86/include/x86_var.h | 3 + sys/x86/x86/cpu_machdep.c | 123 +++++++++++++++++++++++++++++++++++++++++ 7 files changed, 136 insertions(+) diff --git a/sys/amd64/acpica/acpi_wakeup.c b/sys/amd64/acpica/acpi_wakeup.c index 3b21935255cb..0f9f987b6590 100644 --- a/sys/amd64/acpica/acpi_wakeup.c +++ b/sys/amd64/acpica/acpi_wakeup.c @@ -306,6 +306,7 @@ acpi_wakeup_machdep(struct acpi_softc *sc, int state, int sleep_result, amd64_syscall_ret_flush_l1d_recalc(); hw_ssb_recalculate(true); x86_rngds_mitg_recalculate(true); + zenbleed_check_and_apply(true); AcpiSetFirmwareWakingVector(0, 0); } else { diff --git a/sys/amd64/amd64/initcpu.c b/sys/amd64/amd64/initcpu.c index a048c08fc9ae..c5266ffcc235 100644 --- a/sys/amd64/amd64/initcpu.c +++ b/sys/amd64/amd64/initcpu.c @@ -193,6 +193,9 @@ init_amd(void) hw_lower_amd64_sharedpage = 1; } } + + /* Zenbleed. See the comments in 'cpu_machdep.c'. */ + zenbleed_check_and_apply(false); } /* diff --git a/sys/amd64/amd64/machdep.c b/sys/amd64/amd64/machdep.c index f39678d1f4e5..4b81f5b9671e 100644 --- a/sys/amd64/amd64/machdep.c +++ b/sys/amd64/amd64/machdep.c @@ -1495,6 +1495,10 @@ hammer_time(u_int64_t modulep, u_int64_t physfree) TUNABLE_INT_FETCH("machdep.mitigations.rndgs.enable", &x86_rngds_mitg_enable); + TUNABLE_INT_FETCH("machdep.mitigations.zenbleed.enable", + &zenbleed_enable); + zenbleed_sanitize_enable(); + finishidentcpu(); /* Final stage of CPU initialization */ /* diff --git a/sys/dev/cpuctl/cpuctl.c b/sys/dev/cpuctl/cpuctl.c index 9c56db1ad19a..1fa655342121 100644 --- a/sys/dev/cpuctl/cpuctl.c +++ b/sys/dev/cpuctl/cpuctl.c @@ -546,6 +546,7 @@ cpuctl_do_eval_cpu_features(int cpu, struct thread *td) hw_mds_recalculate(); x86_taa_recalculate(); x86_rngds_mitg_recalculate(true); + zenbleed_check_and_apply(true); printcpuinfo(); return (0); } diff --git a/sys/x86/include/specialreg.h b/sys/x86/include/specialreg.h index f45990a056c8..4886430c84b6 100644 --- a/sys/x86/include/specialreg.h +++ b/sys/x86/include/specialreg.h @@ -1172,6 +1172,7 @@ /* MSR_DE_CFG */ #define DE_CFG_10H_12H_STACK_POINTER_JUMP_FIX_BIT 0x1 #define DE_CFG_ZEN_LOAD_STALE_DATA_FIX_BIT 0x2000 +#define DE_CFG_ZEN2_FP_BACKUP_FIX_BIT 0x200 /* VIA ACE crypto featureset: for via_feature_rng */ #define VIA_HAS_RNG 1 /* cpu has RNG */ diff --git a/sys/x86/include/x86_var.h b/sys/x86/include/x86_var.h index 1629236c5928..44314456d8bf 100644 --- a/sys/x86/include/x86_var.h +++ b/sys/x86/include/x86_var.h @@ -90,6 +90,7 @@ extern int hw_ssb_active; extern int x86_taa_enable; extern int cpu_flush_rsb_ctxsw; extern int x86_rngds_mitg_enable; +extern int zenbleed_enable; extern int cpu_amdc1e_bug; extern char bootmethod[16]; @@ -140,6 +141,8 @@ void hw_mds_recalculate(void); void hw_ssb_recalculate(bool all_cpus); void x86_taa_recalculate(void); void x86_rngds_mitg_recalculate(bool all_cpus); +void zenbleed_sanitize_enable(void); +void zenbleed_check_and_apply(bool all_cpus); void nmi_call_kdb(u_int cpu, u_int type, struct trapframe *frame); void nmi_call_kdb_smp(u_int type, struct trapframe *frame); void nmi_handle_intr(u_int type, struct trapframe *frame); diff --git a/sys/x86/x86/cpu_machdep.c b/sys/x86/x86/cpu_machdep.c index c80284cf2987..868e6e2bc365 100644 --- a/sys/x86/x86/cpu_machdep.c +++ b/sys/x86/x86/cpu_machdep.c @@ -1477,6 +1477,129 @@ SYSCTL_PROC(_machdep_mitigations_rngds, OID_AUTO, state, sysctl_rngds_state_handler, "A", "MCU Optimization state"); + +/* + * Zenbleed. + * + * No corresponding errata is publicly listed. AMD has issued a security + * bulletin (AMD-SB-7008), entitled "Cross-Process Information Leak". This + * document lists (as of August 2023) platform firmware's availability target + * dates, with most being November/December 2023. It will then be up to + * motherboard manufacturers to produce corresponding BIOS updates, which will + * happen with an inevitable lag. Additionally, for a variety of reasons, + * operators might not be able to apply them everywhere due. On the side of + * standalone CPU microcodes, no plans for availability have been published so + * far. However, a developer appearing to be an AMD employee has hardcoded in + * Linux revision numbers of future microcodes that are presumed to fix the + * vulnerability. + * + * Given the stability issues encountered with early microcode releases for Rome + * (the only microcode publicly released so far) and the absence of official + * communication on standalone CPU microcodes, we have opted instead for + * matching by default all AMD Zen2 processors which, according to the + * vulnerability's discoverer, are all affected (see + * https://lock.cmpxchg8b.com/zenbleed.html). This policy, also adopted by + * OpenBSD, may be overriden using the tunable/sysctl + * 'machdep.mitigations.zenbleed.enable'. We might revise it later depending on + * official statements, microcode updates' public availability and community + * assessment that they actually fix the vulnerability without any instability + * side effects. + */ + +SYSCTL_NODE(_machdep_mitigations, OID_AUTO, zenbleed, + CTLFLAG_RW | CTLFLAG_MPSAFE, 0, + "Zenbleed OS-triggered prevention (via chicken bit)"); + +/* 2 is auto, see below. */ +int zenbleed_enable = 2; + +void +zenbleed_sanitize_enable(void) +{ + /* Default to auto (2). */ + if (zenbleed_enable < 0 || zenbleed_enable > 2) + zenbleed_enable = 2; +} + +static bool +zenbleed_chicken_bit_applicable(void) +{ + /* Concerns only bare-metal AMD Zen2 processors. */ + return (cpu_vendor_id == CPU_VENDOR_AMD && + CPUID_TO_FAMILY(cpu_id) == 0x17 && + CPUID_TO_MODEL(cpu_id) >= 0x30 && + vm_guest == VM_GUEST_NO); +} + +static bool +zenbleed_chicken_bit_should_enable(void) +{ + /* + * Obey tunable/sysctl. + * + * As explained above, currently, the automatic setting (2) and the "on" + * one (1) have the same effect. In the future, we might additionally + * check for specific microcode revisions as part of the automatic + * determination. + */ + return (zenbleed_enable != 0); +} + +void +zenbleed_check_and_apply(bool all_cpus) +{ + bool set; + + if (!zenbleed_chicken_bit_applicable()) + return; + + set = zenbleed_chicken_bit_should_enable(); + + x86_msr_op(MSR_DE_CFG, + (set ? MSR_OP_OR : MSR_OP_ANDNOT) | + (all_cpus ? MSR_OP_RENDEZVOUS_ALL : MSR_OP_LOCAL), + DE_CFG_ZEN2_FP_BACKUP_FIX_BIT, NULL); +} + +static int +sysctl_zenbleed_enable_handler(SYSCTL_HANDLER_ARGS) +{ + int error, val; + + val = zenbleed_enable; + error = sysctl_handle_int(oidp, &val, 0, req); + if (error != 0 || req->newptr == NULL) + return (error); + zenbleed_enable = val; + zenbleed_sanitize_enable(); + zenbleed_check_and_apply(true); + return (0); +} +SYSCTL_PROC(_machdep_mitigations_zenbleed, OID_AUTO, enable, CTLTYPE_INT | + CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, NULL, 0, + sysctl_zenbleed_enable_handler, "I", + "Enable Zenbleed OS-triggered mitigation (chicken bit) " + "(0: Force disable, 1: Force enable, 2: Automatic determination)"); + +static int +sysctl_zenbleed_state_handler(SYSCTL_HANDLER_ARGS) +{ + const char *state; + + if (!zenbleed_chicken_bit_applicable()) + state = "Not applicable"; + else if (zenbleed_chicken_bit_should_enable()) + state = "Mitigation enabled"; + else + state = "Mitigation disabled"; + return (SYSCTL_OUT(req, state, strlen(state))); +} +SYSCTL_PROC(_machdep_mitigations_zenbleed, OID_AUTO, state, + CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, 0, + sysctl_zenbleed_state_handler, "A", + "Zenbleed OS-triggered mitigation (chicken bit) state"); + + /* * Enable and restore kernel text write permissions. * Callers must ensure that disable_wp()/restore_wp() are executed From nobody Tue Oct 10 13:35:09 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4cMy2nQXz4wmQ4; Tue, 10 Oct 2023 13:35:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4cMy1MhRz4J53; Tue, 10 Oct 2023 13:35:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696944910; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fzpbe8P6jPeuEFafseyWtaoBtZA0/8p90jMrdM8E5Gw=; b=ECr+/hCeLylfsZNyUMJzZARAPffHCwCY87iDk05OrPVHjnbUdlhO1UF148vT8kEMPtLhMN oNdIVgHQSnfEsYq4Q7KJAaQrHu+9k7sMDcLHf4Tg9C3Kf9A8EpFVQ0dO5F/St3yjrlFBp+ TFtr1o6wi5ZB6Sk13Hws02xJDIM1zjJPReDjLZsmjB8SBg2WlzQKTnNVE6vLlo2CUfRs0L kPl3Xa/IU94TCD/By5RpnjaeQ/G6wyDDM+HmF0+6ShXeg31SdjC5jQO06PMOD83mx/Tp1E Zl1mF28QzUGVi5ps2djv1h3rzirJVYZdR20INsOEyCeIXNkKsu/vxxRKVePvZw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696944910; a=rsa-sha256; cv=none; b=KyHgGBq62oXO1nRNnK177sbdF+8n8mFfhbs4tajfPBpeW74qeEXLgh97BMtUu1fGNMDwYe EkmPDT6unQ+NgjkRmqK5UP5A2/0eE8jJcm0SXGpz62l2KPP6o7AkbpgBe6ceQ5czkGeW+W +MnhgRc2RQVPgH3TU1FOyj/qRVWkw6UiyBQ0o2yuyM6cvmex76jeeIwsjftY5cm40r3Nl6 LhHsHUfQA5OgAib0Jt74YaIoG9dxyMtzbcjt8JKWEf6mWiknGpIN7Nrf0n6lKU7YGbNq/B f4Wm0Lq06lt2A+Uvbpr0odv1R8WyHvV2/6PMchJ+gwnDCFpg89yskL3EWYcwew== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696944910; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fzpbe8P6jPeuEFafseyWtaoBtZA0/8p90jMrdM8E5Gw=; b=Ri6z7VQk0nL2wYOgzhe2xHM0BmoH8vmkcf46PYAqx9LelEJpWPfgLPI8oK4MTXC4McqEe5 /ufeRTTyKJUU1+QOMyRTTk0K4qJ2PPS+Bcxq0COrXX5gWk7Vno93dM7nGtavOkPbk90NbS fKggRd4YqTyaW+9xtM5d4crZioS700DxCBQ6YDEb8011AWGOlJpvJBC88pKNRU1BSx08lG hKvBAV9Ng8EP5dAtZEcR0S4leFE0r7raG4KsAEmKW4D79kcXm3MHc+Z7TSYo4FVfwBEyzQ rcH+OY19WbffsZf7uoqiwgAUlYk80YKLInf2jw81WlpBcQHKtCJ7n1pz096g3w== 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 4S4cMy0DXlzgjL; Tue, 10 Oct 2023 13:35:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39ADZ97C005011; Tue, 10 Oct 2023 13:35:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39ADZ9uW005008; Tue, 10 Oct 2023 13:35:09 GMT (envelope-from git) Date: Tue, 10 Oct 2023 13:35:09 GMT Message-Id: <202310101335.39ADZ9uW005008@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 272bc4597d0b - stable/14 - Add mitigations(7) describing our vulnerability mitigations List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 272bc4597d0b41eebdfa7c108778070665acb431 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=272bc4597d0b41eebdfa7c108778070665acb431 commit 272bc4597d0b41eebdfa7c108778070665acb431 Author: Ed Maste AuthorDate: 2023-09-08 17:49:11 +0000 Commit: Ed Maste CommitDate: 2023-10-10 13:34:31 +0000 Add mitigations(7) describing our vulnerability mitigations This is an initial take on documenting vulnerability mitigations. Connect mitigations(7) to the build Also add some cross references. Reviewed by: gbe (earlier) Sponsored by: The FreeBSD Foundation Co-authored-by: Olivier Certner Differential Revision: https://reviews.freebsd.org/D41794 (cherry picked from commit b6a61ac2d475fba9c45f7f407549a522f60dea18) (cherry picked from commit 6e5dcc6113da649a79e5bc2c3ea9329bcd1d85d5) (cherry picked from commit a2b289608d6b54b6e1ce85096560807e551bb5ac) --- share/man/man7/Makefile | 1 + share/man/man7/mitigations.7 | 367 ++++++++++++++++++++++++++++++++++++++ share/man/man7/security.7 | 3 +- usr.bin/elfctl/elfctl.1 | 4 +- usr.bin/proccontrol/proccontrol.1 | 5 +- 5 files changed, 376 insertions(+), 4 deletions(-) diff --git a/share/man/man7/Makefile b/share/man/man7/Makefile index 43d37fa33275..11246195201c 100644 --- a/share/man/man7/Makefile +++ b/share/man/man7/Makefile @@ -19,6 +19,7 @@ MAN= arch.7 \ hostname.7 \ intro.7 \ maclabel.7 \ + mitigations.7 \ operator.7 \ orders.7 \ ports.7 \ diff --git a/share/man/man7/mitigations.7 b/share/man/man7/mitigations.7 new file mode 100644 index 000000000000..fed16d7b325f --- /dev/null +++ b/share/man/man7/mitigations.7 @@ -0,0 +1,367 @@ +.\" Copyright © 2023 The FreeBSD Foundation +.\" +.\" This documentation was written by Ed Maste , and +.\" Olivier Certner at Kumacom SAS, under +.\" sponsorship of the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd October 6, 2023 +.Dt MITIGATIONS 7 +.Os +.Sh NAME +.Nm mitigations +.Nd FreeBSD Security Vulnerability Mitigations +.Sh SYNOPSIS +In +.Fx , +various security mitigations are employed to limit the impact of +vulnerabilities and protect the system from malicious attacks. +Some of these mitigations have run-time controls to enable them on a global +or per-process basis, some are optionally enabled or disabled at compile time, +and some are inherent to the implementation and have no controls. +.Pp +The following vulnerability mitigations are covered in this document: +.Bl -bullet -compact +.It +Address Space Layout Randomization (ASLR) +.It +Position Independent Executable (PIE) +.It +Write XOR Execute page protection policy +.It +.Dv PROT_MAX +.It +Relocation Read-Only (RELRO) +.It +Bind Now +.\".It +.\"Stack Smashing Protection (SSP) +.\".It +.\"Supervisor Mode Memory Protection +.It +Hardware Vulnerability Mitigation Controls +.It +Capsicum +.El +.Pp +Please note that the effectiveness and availability of these mitigations may +vary depending on the +.Fx +version and system configuration. +.Sh DESCRIPTION +Security vulnerability mitigations are techniques employed in +.Fx +to limit the potential impact of security vulnerabilities in software and +hardware. +It is essential to understand that mitigations do not directly address the +underlying security issues. +They are not a substitute for secure coding practices. +Mitigations serve as an additional layer of defense, helping to reduce the +likelihood of a successful exploitation of vulnerabilities by making it +more difficult for attackers to achieve their objectives. +.Pp +This manual page describes the security mitigations implemented in +.Fx +to enhance the overall security of the operating system. +Each mitigation is designed to protect against specific types of attacks +and vulnerabilities. +.\" +.Sh SOFTWARE VULNERABILITY MITIGATIONS +.Ss Address Space Layout Randomization (ASLR) +Address Space Layout Randomization (ASLR) is a security mitigation technique +that works by randomizing the memory addresses where system and application +code, data, and libraries are loaded, making it more challenging for attackers +to predict the memory layout and exploit vulnerabilities. +.Pp +ASLR introduces randomness into the memory layout during process execution, +reducing the predictability of memory addresses. +ASLR is intended to make exploitation more difficult in the event that an +attacker discovers a software vulnerability, such as a buffer overflow. +.Pp +ASLR can be enabled on both a global and per-process basis. +Global control is provided by a separate set of +.Xr sysctl 8 +knobs for 32- and 64-bit processes. +It can be or disabled on a per-process basis via +.Xr proccontrol 1 . +Note that an ASLR mode change takes effect upon address space change, +i.e., upon +.Xr execve 2 . +.Pp +Global controls for 32-bit processes: +.Bl -tag -width kern.elf32.aslr.pie_enable +.It Va kern.elf32.aslr.enable +Enable ASLR for 32-bit ELF binaries, other than Position Independent +Exectutable (PIE) binaries. +.It Va kern.elf32.aslr.pie_enable +Enable ASLR for 32-bit Position Independent Executable (PIE) ELF binaries. +.It Va kern.elf32.aslr.honor_sbrk +Reserve the legacy +.Xr sbrk 2 +region for compatibility with older binaries. +.It Va kern.elf32.aslr.stack +If ASLR is enabled for a process, also randomize the stack location. +.El +.Pp +Global controls for 64-bit processes: +.Bl -tag -width kern.elf64.aslr.pie_enable +.It Va kern.elf64.aslr.enable +Enable ASLR for 64-bit ELF binaries, other than Position Independent +Exectutable (PIE) binaries. +.It Va kern.elf64.aslr.pie_enable +Enable ASLR for 64-bit Position Independent Executable (PIE) ELF binaries. +.It Va kern.elf64.aslr.honor_sbrk +Reserve the legacy +.Xr sbrk 2 +region for compatibility with older binaries. +.It Va kern.elf64.aslr.stack +If ASLR is enabled for a process, also randomize the stack location. +.El +.Pp +To execute a command with ASLR enabled or disabled: +.Pp +proccontrol +.Fl m Ar aslr +.Op Fl s Ar enable | disable +.Ar command +.\" +.Ss Position Independent Executable (PIE) +PIE binaries are executable files that do not have a fixed load address. +They can be loaded at an arbitrary memory address by the +.Xr rtld +run-time linker. +With ASLR they are loaded at a random address on each execution. +.\" +.Ss Write XOR Execute page protection policy +Write XOR Execute (W^X) is a vulnerability mitigation strategy that strengthens +the security of the system by controlling memory access permissions. +.Pp +Under the W^X mitigation, memory pages may be writable (W) or executable (E), +but not both at the same time. +This means that code execution is prevented in areas of memory that are +designated as writable, and writing or modification of memory is restricted in +areas marked for execution. +Applications that perform Just In Time (JIT) compilation need to be adapted +to be compatible with W^X. +.Pp +There are separate +.Xr sysctl 8 +knobs to control W^X policy enforcement for 32- and 64-bit processes. +The W^X policy is enabled by setting the appropriate +.Dv allow_wx +sysctl to 0. +.Bl -tag -width kern.elf64.allow_wx +.It Va kern.elf32.allow_wx +Allow 32-bit processes to map pages simultaneously writable and executable. +.It Va kern.elf64.allow_wx +Allow 64-bit processes to map pages simultaneously writable and executable. +.El +.\" +.Ss PROT_MAX +.Dv PROT_MAX +is a FreeBSD-specific extension to +.Xr mmap 2 . +.Dv PROT_MAX +provides the ability to set the maximum protection of a region allocated by +.Xr mmap +and later altered by +.Xr mprotect . +For example, memory allocated originally with an mmap prot argument of +PROT_MAX(PROT_READ | PROT_WRITE) | PROT_READ +may be made writable by a future +.Xr mprotect +call, but may not be made executable. +.\" +.Ss Relocation Read-Only (RELRO) +Relocation Read-Only (RELRO) is a mitigation tool that makes certain portions +of a program's address space that contain ELF metadata read-only, after +relocation processing by +.Xr rtld 1 . +.Pp +When enabled in isolation the RELRO option provides +.Em partial RELRO +support. +In this case the Procedure Linkage Table (PLT)-related part of the +Global Offset Table (GOT) (in the section typically named .got.plt) remains +writable. +.Pp +RELRO is enabled by default. +The +.Xr src.conf 5 +build-time option +.Va WITHOUT_RELRO +may be used to disable it. +.Ss BIND_NOW +The +.Va WITH_BIND_NOW +.Xr src.conf 5 +build-time option causes binaries to be built with the +.Dv DF_BIND_NOW +flag set. +The run-time loader +.Xr rtld 1 +will then perform all relocation processing when the process starts, instead of +on demand (on the first access to each symbol). +.Pp +When enabled in combination with +.Dv RELRO +(which is enabled by default) this provides +.Em full RELRO . +The entire GOT (.got and .got.plt) are made read-only at program startup, +preventing attacks on the relocation table. +Note that this results in a nonstandard Application Binary Interface (ABI), +and it is possible that some applications may not function correctly. +.\" +.\".Ss Stack Smashing Protection (SSP) +.\" +.\".Ss Supervisor mode memory protection +.\" +.Ss Hardware vulnerability controls +See +.Xr security 7 +for more information. +.\" +.Ss Capsicum +Capsicum is a lightweight OS capability and sandbox framework. +See +.Xr capsicum 4 +for more information. +.Pp +.Sh HARDWARE VULNERABILITY MITIGATIONS +Recent years have seen an unending stream of new hardware vulnerabilities, +notably CPU ones generally caused by detectable microarchitectural side-effects +of speculative execution which leak private data from some other thread or +process or sometimes even internal CPU state that is normally inaccessible. +Hardware vendors usually address these vulnerabilities as they are discovered by +releasing microcode updates, which may then be bundled into platform firmware +updates +.Pq historically called BIOS updates for PCs . +.Pp +The best defense overall against hardware vulnerabilities is to timely apply +these updates when available and to disable the affected hardware's problematic +functionalities when possible (e.g., CPU Simultaneous Multi-Threading). +Software mitigations are only partial substitutes for these, but they can be +helpful on out-of-support hardware or as complements for just-discovered +vulnerabilities not yet addressed by vendors. +Some software mitigations depend on hardware capabilities provided by a +microcode update. +.Pp +FreeBSD's usual policy is to apply by default all OS-level mitigations that do +not require recompilation, except those the particular hardware it is running on +is known not to be vulnerable to +.Pq which sometimes requires firmware updates , +or those that are extremely detrimental to performance in proportion to the +protection they actually provide. +OS-level mitigations generally can have noticeable performance impacts on +specific workloads. +If your threat model allows it, you may want to try disabling some of them in +order to possibly get better performance. +Conversely, minimizing the risks may require you to explicitly enable the most +expensive ones. +The description of each vulnerability/mitigation indicates whether it is enabled +or disabled by default and under which conditions. +It also lists the knobs to tweak to force a particular status. +.Ss Zenbleed +The +.Dq Zenbleed +vulnerability exclusively affects AMD processors based on the Zen2 +microarchitecture. +In contrast with, e.g., Meltdown and the different variants of Spectre, which +leak data by leaving microarchitectural traces, Zenbleed is a genuine hardware +bug affecting the CPU's architectural state. +With particular sequences of instructions whose last ones are mispredicted by +speculative execution, it is possible to make appear in an XMM register data +previously put in some XMM register by some preceding or concurrent task +executing on the same physical core +.Po disabling Simultaneous Muti-Threading +.Pq SMT +is thus not a sufficient protection +.Pc . +.Pp +According to the vulnerability's discoverer, all Zen2-based processors are +affected +.Po see +.Lk https://lock.cmpxchg8b.com/zenbleed.html +.Pc . +As of August 2023, AMD has not publicly listed any corresponding errata but has +issued a security bulletin +.Pq AMD-SB-7008 +entitled +.Dq Cross-Process Information Leak +indicating that platform firmware fixing the vulnerability will be distributed +to manufacturers no sooner than the end of 2023, except for Rome processors for +which it is already available. +No standalone CPU microcodes have been announced so far. +The only readily-applicable fix mentioned by the discoverer is to set a bit of +an undocumented MSR, which reportedly completely stops XMM register leaks. +.Pp +.Fx +currently sets this bit by default on all Zen2 processors. +In the future, it might set it by default only on those Zen2 processors whose +microcode has not been updated to revisions fixing the vulnerability, once such +microcode updates have been actually released and community-tested. +To this mitigation are associated the following knobs: +.Bl -tag -width indent +.It Va machdep.mitigations.zenbleed.enable +A read-write integer tunable and sysctl indicating whether the mitigation should +be forcibly disabled (0), enabled (1) or if it is left to +.Fx +to selectively apply it (2). +Any other integer value is silently converted to and treated as value 2. +Note that this setting is silently ignored when running on non-Zen2 processors +to ease applying a common configuration to heterogeneous machines. +.It Va machdep.mitigations.zenbleed.state +A read-only string indicating the current mitigation state. +It can be either +.Dq Not applicable , +if the processor is not Zen2-based, +.Dq Mitigation enabled +or +.Dq Mitigation disabled . +This state is automatically updated each time the sysctl +.Va machdep.mitigations.zenbleed.enable +is written to. +Note that it can become inaccurate if the chicken bit is set or cleared +directly via +.Xr cpuctl 4 +.Po which includes the +.Xr cpucontrol 8 +utility +.Pc . +.El +.Pp +The performance impact and threat models related to these mitigations +should be considered when configuring and deploying them in a +.Fx +system. +.Pp +.Sh SEE ALSO +.Xr elfctl 1 , +.Xr proccontrol 1 , +.Xr rtld 1 , +.Xr mmap 2 , +.Xr src.conf 5 , +.Xr sysctl.conf 5 , +.Xr security 7 , +.Xr cpucontrol 8 , +.Xr sysctl 8 diff --git a/share/man/man7/security.7 b/share/man/man7/security.7 index 63b984ff66dd..ebe5e66e22af 100644 --- a/share/man/man7/security.7 +++ b/share/man/man7/security.7 @@ -26,7 +26,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd March 30, 2023 +.Dd October 5, 2023 .Dt SECURITY 7 .Os .Sh NAME @@ -1099,6 +1099,7 @@ Enables mapping of simultaneously writable and executable pages for .Xr xdm 1 Pq Pa ports/x11/xorg-clients , .Xr group 5 , .Xr ttys 5 , +.Xr mitigations 7 , .Xr accton 8 , .Xr init 8 , .Xr sshd 8 , diff --git a/usr.bin/elfctl/elfctl.1 b/usr.bin/elfctl/elfctl.1 index 7c565049c155..2dbe04ee0ed2 100644 --- a/usr.bin/elfctl/elfctl.1 +++ b/usr.bin/elfctl/elfctl.1 @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd February 4, 2022 +.Dd October 5, 2023 .Dt ELFCTL 1 .Os .Sh NAME @@ -95,6 +95,8 @@ Features may also be specified as a single combined value: .Bd -literal -offset -indent elfctl -e =0x5 file .Ed +.Sh SEE ALSO +.Xr mitigations 7 .Sh HISTORY .Nm first appeared in diff --git a/usr.bin/proccontrol/proccontrol.1 b/usr.bin/proccontrol/proccontrol.1 index 6bef355a54c9..5cb5d584f480 100644 --- a/usr.bin/proccontrol/proccontrol.1 +++ b/usr.bin/proccontrol/proccontrol.1 @@ -26,7 +26,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 2, 2021 +.Dd October 5, 2023 .Dt PROCCONTROL 1 .Os .Sh NAME @@ -126,7 +126,8 @@ process 1020, do .Sh SEE ALSO .Xr kill 2 , .Xr procctl 2 , -.Xr ptrace 2 +.Xr ptrace 2 , +.Xr mitigations 7 .Sh HISTORY The .Nm From nobody Tue Oct 10 13:36:29 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4cPT3Rtgz4wm8V; Tue, 10 Oct 2023 13:36: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 4S4cPT2d4zz4JRH; Tue, 10 Oct 2023 13:36:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696944989; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pLq/nlKUlEFNvhQ1US7WD1U9VcicZKX6AVbOopSVRh4=; b=U+O5jW+Pk0Ivk+st4VY9GrbZqmnVD0uWhDD9ZW9dlFUKTpEs5tweNYRggu+2ozOqmx/yDH uDGO3buhXdFu0/6q6ei9s5AgAKgc/XxBQkPvlAlMrGR3VHXf0DM7tuQ7pG2h75XYTAV8/D DUS/C4T8s54M/i7tIthzyJnSU2Cj6bxG9vPl9fqPI2gtMB2htGJPIKbdls8s+rFQeHW+xb vbc7mns3MZI2r/EXBF1XRV+FzRyZsQQ85lBPDxS9cE0x9BISpmnttiruta8DWD1BZLDijT gO/V+l6f2Q6VzgTjt6ostpEVY9nWsyrLk5GplNddY/EQKmRNYX8aY3YOKrh3Ww== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696944989; a=rsa-sha256; cv=none; b=ncI2QGqRQLTnsPLBC6zSaF8WBmuuuRb4rhln6UkZp1im4xrJ+VXFBnE50xBoZ/Jjukr4fB pLim3EozQBWLe5SWC3rR0tuJqR1KRmcMCytKX6sYP8G+ZP5z8+/K0QcBQ2TsBUKbGfTuaU ewtZie4l49V4oKMw/0WuzDceXgU3rzzA8nkHEj+1vL/Ym4sCEztFPMTtGHPxWVVHUpTTtC Wd569zx1gkFaYaCM+jzwPiBVdaPEuru9vxRoSZE/qlFITKHj4iZnL1XI4tzux281tGq1LK dIHiRnfKXYJvWTddkDeZw0duy0y1H1hI4IfxNDLvz+xjZO7l6ZjmhRFPRm7dKA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696944989; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pLq/nlKUlEFNvhQ1US7WD1U9VcicZKX6AVbOopSVRh4=; b=Be6EVxwl+RhTNClB34hpg+X1gLpwTnWEtI4P2JkUZSL/7C9xbBcWiDKASRZWMtFLjozW7b ur4iWi2/MbvsVk274MT2vdKT1BqWWkV/jhXJcM7ed6mnrPOWEM4mzNOmnTPXYOosSCJHWb P/gYowkA/KA2uLYmLemu6l9N5ye3hnn03K1MHoyD2WjTLYLtaSAZB9IiiySaT2Q5SOfjJo EkNR0gi/gG+OeHEFtcHABj7x/HpL3zzVMfxXrwrujqoqTG8UfV2wosawC4RS3xHiEsMxR4 S4GLusUIwmmLCxhEXxNN2TcVCjpZE7Ib8BJ8RcCWi0boTUhOY4SvVkMYscRs0A== 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 4S4cPT1dDtzg65; Tue, 10 Oct 2023 13:36:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39ADaT6v005332; Tue, 10 Oct 2023 13:36:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39ADaTZ6005329; Tue, 10 Oct 2023 13:36:29 GMT (envelope-from git) Date: Tue, 10 Oct 2023 13:36:29 GMT Message-Id: <202310101336.39ADaTZ6005329@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 4fac67126e87 - stable/13 - x86: Add defines for workaround bits in AMD's MSR "Decode Configuration" List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 4fac67126e879a24062fe9405f05042b79b6e6ca Auto-Submitted: auto-generated The branch stable/13 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=4fac67126e879a24062fe9405f05042b79b6e6ca commit 4fac67126e879a24062fe9405f05042b79b6e6ca Author: Olivier Certner AuthorDate: 2023-09-11 13:10:35 +0000 Commit: Ed Maste CommitDate: 2023-10-10 13:36:10 +0000 x86: Add defines for workaround bits in AMD's MSR "Decode Configuration" They are a bit more informative than raw hexadecimal values. While here, sort existing defines of bits for AMD MSRs to match the address order. Reviewed by: kib, emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D41816 (cherry picked from commit 125bbadf6084ac341673c9eb1979a740d3d5899a) --- sys/amd64/amd64/initcpu.c | 5 +++-- sys/x86/include/specialreg.h | 9 +++++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/sys/amd64/amd64/initcpu.c b/sys/amd64/amd64/initcpu.c index 7729c6aded2a..eb699a4f90fc 100644 --- a/sys/amd64/amd64/initcpu.c +++ b/sys/amd64/amd64/initcpu.c @@ -101,7 +101,8 @@ init_amd(void) case 0x10: case 0x12: if ((cpu_feature2 & CPUID2_HV) == 0) - wrmsr(MSR_DE_CFG, rdmsr(MSR_DE_CFG) | 1); + wrmsr(MSR_DE_CFG, rdmsr(MSR_DE_CFG) | + DE_CFG_10H_12H_STACK_POINTER_JUMP_FIX_BIT); break; } @@ -151,7 +152,7 @@ init_amd(void) (cpu_feature2 & CPUID2_HV) == 0) { /* 1021 */ msr = rdmsr(MSR_DE_CFG); - msr |= 0x2000; + msr |= DE_CFG_ZEN_LOAD_STALE_DATA_FIX_BIT; wrmsr(MSR_DE_CFG, msr); /* 1033 */ diff --git a/sys/x86/include/specialreg.h b/sys/x86/include/specialreg.h index 548d6010e7b8..f45990a056c8 100644 --- a/sys/x86/include/specialreg.h +++ b/sys/x86/include/specialreg.h @@ -1162,11 +1162,16 @@ #define MSR_IC_CFG 0xc0011021 /* Instruction Cache Configuration */ #define MSR_DE_CFG 0xc0011029 /* Decode Configuration */ +/* MSR_AMDK8_IPM */ +#define AMDK8_SMIONCMPHALT (1ULL << 27) +#define AMDK8_C1EONCMPHALT (1ULL << 28) + /* MSR_VM_CR related */ #define VM_CR_SVMDIS 0x10 /* SVM: disabled by BIOS */ -#define AMDK8_SMIONCMPHALT (1ULL << 27) -#define AMDK8_C1EONCMPHALT (1ULL << 28) +/* MSR_DE_CFG */ +#define DE_CFG_10H_12H_STACK_POINTER_JUMP_FIX_BIT 0x1 +#define DE_CFG_ZEN_LOAD_STALE_DATA_FIX_BIT 0x2000 /* VIA ACE crypto featureset: for via_feature_rng */ #define VIA_HAS_RNG 1 /* cpu has RNG */ From nobody Tue Oct 10 13:36:30 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4cPV45Cpz4wmc6; Tue, 10 Oct 2023 13:36:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4cPV3YWyz4Jl4; Tue, 10 Oct 2023 13:36:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696944990; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rypW1HadBpQ3tDFYEB+2kRMbQb+pvHh6sYIzPztdd78=; b=d6GKOlmJpU3KoEVnuuEqAHQpjY6N6Pdy/PTapT49UX6Y4gGBvuEw5BT9nzA/t8Pv2oqSnB GPrcn9Pybd3qg0iNvmyaO6Pu1i4JrxVtgs0Vxka+HlNx0kGkydAa+YhkIGPeCfW4TSlx/I RcPolcr/Sb6KeJfqa0HosM8QNd22wJuoultVmAm+jMLUk3dJe65EwAUM6jqc0Bm2tJ1KOO WCsADc7sSloQZ+4fJJKmrVymAhAqJQ+uxUl+YGdnQ1r01cfNP7uJ2oLUpOpu+7ByFBrlte VsaQRS4HJiro9ViDY/v7rSpVEHAuBl3jDcb8wXHvYpUQAt+zbxZjf/DM+4jkGQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696944990; a=rsa-sha256; cv=none; b=j64wuIz2EhLPAjvxwdyEugItpz1q3TxA0iNu+TCdgA1VSLjlYtV5l1Qx/Zr/rNRUNecVX0 CwxjRIPj3NtgJj+vzbfwDxX/urMS2W+ylF7cqLvz33cpR8XUXIDfwC272lX63Pzm2RyYe2 UxKxiOSk3zswKlBRRfLo9yZKuNY/N8oMB4QSoKpSC1Lx05EdcXHWKoddNsAExvRVO0zsc9 8F5I4QHFwUN3RPKdgcAA9mRTWjzKDLS0KU2VLC9GaUYsbRuUkPYYbZHFm6+7oyP2vGDNmj /VC2Djg2lvUPAvrIGFdSnGkNzafSOqXjynj64FZL/X6ZtYYqL7peJwwUfuIlkA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696944990; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rypW1HadBpQ3tDFYEB+2kRMbQb+pvHh6sYIzPztdd78=; b=OQcNYO+5vcHbLkecRZN5DqbCvApJMGme5jrVrj2TCuTK1/uXn946K5gApbbH4kqouQ+bxT 0cB+W5Pn2+0Gttz5FzQ6rIWheTXj6+FZ/YqmRl8+Aket/zqTLW8g2oK0/EpEpHq/q/iBLl Hn4QL1PL0bDMuOWoomWFBCpBJs/M4kNT4MQ9i9915HZkHJCS5ghCzXL0yqiY0BODnp2UgZ zYxsA3UWfkdUcoRDHsRNhq8r2jNZSN/Ew6f3yozJ6iJ1MTs1Jm2SycYQwe1aX19bw15Uhp T32lFNitnExksUjpsV9JtPtce2F+TkO4LLpS8Qlw43BkbNHp8+uEA8yXJLAXzQ== 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 4S4cPV2ckrzgLx; Tue, 10 Oct 2023 13:36:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39ADaUuQ005393; Tue, 10 Oct 2023 13:36:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39ADaUiW005390; Tue, 10 Oct 2023 13:36:30 GMT (envelope-from git) Date: Tue, 10 Oct 2023 13:36:30 GMT Message-Id: <202310101336.39ADaUiW005390@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: f098b537c932 - stable/13 - Speed up *-old-* make targets by using sed instead of xargs List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: f098b537c9323a6677dc549c9857a6e805405022 Auto-Submitted: auto-generated The branch stable/13 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=f098b537c9323a6677dc549c9857a6e805405022 commit f098b537c9323a6677dc549c9857a6e805405022 Author: Ed Maste AuthorDate: 2022-04-01 22:58:00 +0000 Commit: Ed Maste CommitDate: 2023-10-10 13:36:10 +0000 Speed up *-old-* make targets by using sed instead of xargs Targets like 'list-old-files' used "xargs -n1" to produce a list with one file per line. Using xargs resulted in one fork+exec for each Argument, resulting in rather long runtime. Instead, use sed to split the list. On one machine `make list-old-files` took 30s wall clock time with xargs and less than 1s with sed. Reviewed by: jhb MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D34741 (cherry picked from commit a8267ecc3df0aa633daa56360d67a24f9b1d3961) --- Makefile.inc1 | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index ab9a9451299c..e0f5d9cae72d 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -3225,7 +3225,8 @@ list-old-files: .PHONY ${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \ -V OLD_FILES -V "OLD_FILES:Musr/share/*.gz:R" \ -V "OLD_FILES:Mlib/*.so.*:S,^lib,usr/lib32," \ - -V "OLD_FILES:Musr/lib/*:S,^usr/lib,usr/lib32," | xargs -n1 | sort + -V "OLD_FILES:Musr/lib/*:S,^usr/lib,usr/lib32," | \ + sed -E 's/[[:space:]]+/\n/g' | sort delete-old-files: .PHONY @echo ">>> Removing old files (only deletes safe to delete libs)" @@ -3292,7 +3293,7 @@ list-old-libs: .PHONY -V OLD_LIBS -V MOVED_LIBS -V "OLD_LIBS:Mlib/*:S,^lib,usr/lib32," \ -V "OLD_LIBS:Musr/lib/*:S,^usr/lib,usr/lib32," \ -V "OLD_LIBS:Mlib/casper/*:S,^lib/casper,usr/lib32," | \ - xargs -n1 | sort + sed -E 's/[[:space:]]+/\n/g' | sort delete-old-libs: .PHONY @echo ">>> Removing old libraries" @@ -3333,7 +3334,7 @@ check-old-libs: .PHONY list-old-dirs: .PHONY @cd ${.CURDIR}; \ ${MAKE} -f ${.CURDIR}/Makefile.inc1 ${.MAKEFLAGS} ${.TARGET} \ - -V OLD_DIRS | xargs -n1 | sort -r + -V OLD_DIRS | sed -E 's/[[:space:]]+/\n/g' | sort -r delete-old-dirs: .PHONY @echo ">>> Removing old directories" From nobody Tue Oct 10 13:36:31 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4cPW5DKjz4wmfl; Tue, 10 Oct 2023 13:36: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 4S4cPW4V2Lz4Jch; Tue, 10 Oct 2023 13:36:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696944991; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w92eB2G+cW3acXB2h85XU5oM9ZyMUZe4TwtwN89H184=; b=ESdd8FJE5GzEMDlN93W4V4aVyIr8r87+eO43/I0Bux0Motxj8L3gbLwKr1L7O597HHLVp1 VAPa+d5EnnoO+CazK9Y09HYvAhPeYNvFO6p0/1utnMOcOU/Jw84OClhv/9GPMKhZgjnloa r9wE3NbWK2twpIlDDna6JwFJgYC42Hd+k2I5n5H/tuwkeuvMuBgV75giskEW14RsAEgElf 1GiLluUtZqOYPIvYJNeX4682Eg27jPHpeCY2kHfytPJuiW/Dvrt4ayHFfeXRntIHapfjl3 NPSNuD04UVGEut5M1FuNv3sSmxuCUhOUzY3789LQDckmcvrmUEqrCC+Uuh5JHw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696944991; a=rsa-sha256; cv=none; b=uFLWxrpgKVgCmv6DmwzY/XIzCj56k34ON35ubJ7uZhaA4ttsaqGZORv+Cgb0sx5NRqUNs7 f8ddzb+hlX85A7PvgdiBb0D04hzylbeHeGwHME4VdnbYloVdE0WqgXwdq3vUu17h/615Nr fH0OLOAZ9Nkdf9WvMEKZ9UBMMLetXWNTOZMOMkzhuhDC2REkVB17ZgXMH9dM/CyQXUeMbT xjt3ybOsjP7SbkgeoqPv1edFO8EqYXddZb87BjsFhgS5lN1SpvCgJtcfr4f6eb/VGsuv7U RRXgwcvTnu1uAtk7bb6U7h+L7fsshb2qdFQctsow+uPJcZ39U93ZxHkmwwv/Dw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696944991; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w92eB2G+cW3acXB2h85XU5oM9ZyMUZe4TwtwN89H184=; b=qlV4qwTM60UTvrcJTi2OaoXRGNBsVPe71p9pe0DcnZw7eyYFpLeg8dCCMPdimpbCdmHp/8 OT8aGoN65EWWP/D8IBjzRCayyPthvV12LOq1+yBGoCagnsdtFSEZgjWbvPcqGtdhzuDZg6 OuL6zhDxW95ACznGX46B2klR/9xfC3Q29CtStzL9WrM1dTJzM5T1uoXkEEZtXQ3PH9zj4/ rF/IDPMOyeWar5eHSsxMbin582apaoGdT0cXxpyu7qXDtRRMGcyFtuPEEy2n30U5JJ1YK1 cv5TlOHYjCyICgptlJhcC19alaigOd9WVHHGUIzqaI4zwNOyhmUEH3toAx4EiA== 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 4S4cPW3bVzzgZT; Tue, 10 Oct 2023 13:36:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39ADaVpZ005435; Tue, 10 Oct 2023 13:36:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39ADaVJl005432; Tue, 10 Oct 2023 13:36:31 GMT (envelope-from git) Date: Tue, 10 Oct 2023 13:36:31 GMT Message-Id: <202310101336.39ADaVJl005432@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 227980df3979 - stable/13 - pkgbase: accommodate pkg < 1.17 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 227980df397969bd844aa582ef248909651bebb0 Auto-Submitted: auto-generated The branch stable/13 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=227980df397969bd844aa582ef248909651bebb0 commit 227980df397969bd844aa582ef248909651bebb0 Author: Ed Maste AuthorDate: 2021-07-27 16:44:45 +0000 Commit: Ed Maste CommitDate: 2023-10-10 13:36:10 +0000 pkgbase: accommodate pkg < 1.17 6cafdee71d2b adapted the pkgbase build for 1.17, but broke Cirrus-CI's use of PKG_FORMAT=tar (the quarterly package set still has pkg 1.16). Because of this I disabled the pkgbase build and test in 2bfba2a04b05. Now, check `pkg --version` and use the old logic for < 1.17. To be reverted once we no longer encounter pkg 1.16 in Cirrus-CI (i.e., via GCP cloud images) to avoid keeping this extra complexity around. PR: 257422 Reviewed by: manu Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D31324 (cherry picked from commit 4e224e4be7c37052567ec4cd2481f299487fc222) (cherry picked from commit 4dbac528db6040694cd57c42a64e036daa91db86) (cherry picked from commit 54247ce1f96f04d16f1429007bac3607c8a0a39e) --- Makefile.inc1 | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/Makefile.inc1 b/Makefile.inc1 index e0f5d9cae72d..d648be2f3064 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -1907,9 +1907,16 @@ _pkgbootstrap: .PHONY @env ASSUME_ALWAYS_YES=YES pkg bootstrap .endif -.if make(create-world-packages-jobs) || make(create-kernel-packages*) || make(real-update-packages) +.if make(create-world-packages-jobs) || make(create-kernel-packages*) || make(real-update-packages) || make(sign-packages) PKG_ABI!=${PKG_CMD} -o ABI_FILE=${WSTAGEDIR}/usr/bin/uname config ABI .endif +PKG_BIN_VERSION!=${PKG_CMD} --version /dev/null |\ + awk -F. '/^[0-9.]+$$/ {print $$1 * 10000 + $$2 * 100 + $$3}' +.if ${PKG_BIN_VERSION} < 11700 +PKG_EXT= ${PKG_FORMAT} +.else +PKG_EXT= pkg +.endif .if !defined(PKG_VERSION_FROM) && make(real-update-packages) .if defined(PKG_ABI) @@ -1949,14 +1956,14 @@ real-update-packages: stage-packages .PHONY @echo "==> Checking for new packages (comparing ${PKG_VERSION} to ${PKG_VERSION_FROM})" @for pkg in ${PKG_VERSION_FROM_DIR}/${PKG_NAME_PREFIX}-*; do \ pkgname=$$(pkg query -F $${pkg} '%n' | sed 's/${PKG_NAME_PREFIX}-\(.*\)/\1/') ; \ - newpkgname=${PKG_NAME_PREFIX}-$${pkgname}-${PKG_VERSION}.pkg ; \ + newpkgname=${PKG_NAME_PREFIX}-$${pkgname}-${PKG_VERSION}.${PKG_EXT} ; \ oldsum=$$(pkg query -F $${pkg} '%X') ; \ if [ ! -f ${REPODIR}/${PKG_ABI}/${PKG_VERSION}/$${newpkgname} ]; then \ continue; \ fi ; \ newsum=$$(pkg query -F ${REPODIR}/${PKG_ABI}/${PKG_VERSION}/$${newpkgname} '%X') ; \ if [ "$${oldsum}" == "$${newsum}" ]; then \ - echo "==> Keeping old ${PKG_NAME_PREFIX}-$${pkgname}-${PKG_VERSION_FROM}.pkg" ; \ + echo "==> Keeping old ${PKG_NAME_PREFIX}-$${pkgname}-${PKG_VERSION_FROM}.${PKG_EXT}" ; \ rm ${REPODIR}/${PKG_ABI}/${PKG_VERSION}/$${newpkgname} ; \ cp $${pkg} ${REPODIR}/${PKG_ABI}/${PKG_VERSION} ; \ else \ @@ -2114,6 +2121,9 @@ create-kernel-packages-extra-flavor${flavor:C,^""$,${_default_flavor},}-${_kerne sign-packages: _pkgbootstrap .PHONY printf "version = 2;\n" > ${WSTAGEDIR}/meta +.if ${PKG_BIN_VERSION} < 11700 + printf "packing_format = \"${PKG_FORMAT}\";\n" >> ${WSTAGEDIR}/meta +.endif @[ -L "${REPODIR}/$$(${PKG_CMD} -o ABI_FILE=${WSTAGEDIR}/usr/bin/uname config ABI)/latest" ] && \ unlink ${REPODIR}/$$(${PKG_CMD} -o ABI_FILE=${WSTAGEDIR}/usr/bin/uname config ABI)/latest ; \ ${PKG_CMD} -o ABI_FILE=${WSTAGEDIR}/usr/bin/uname repo \ From nobody Tue Oct 10 13:42:23 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4cXH3h9Xz4wmmV; Tue, 10 Oct 2023 13:42: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 4S4cXH3GRlz4KSn; Tue, 10 Oct 2023 13:42:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696945343; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Bbem8sUYqDtB9qoAFYdAwJ9I92WDlc4O1MKO9L1Rf+k=; b=IiIxhGbynU7pp/CKz1ZBw5o+xu5Jg4BgKkp/c3K3L5LHajJy3IZV4a6IESUswwi+kaVLkM iBFisAWMb1Eu7upuNYhQ5+pI2Qzv8hfhy5kH7/lMckcPclYQM8ntba7oEs12f532Dz+Hto /SXBySlvtfHHEhJIfVHFzwygmJUr+AeBeTYCxzYy5CYtX+8Lj1zptmqKo75VdAut8lOVPu pt/zg6qcpHrTFdVEj6f/Qa1JrtVEQMXXKPUhj1aOfMD9prBZlLgvanjGxTIh+UcwHFzQ+J 6p0gOL5PzBz3qafq0OPpjXzTjowZUMGBkMLFaHMCtpnf0OMr6pu343ylpO5F6g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696945343; a=rsa-sha256; cv=none; b=CJAF5koguFhPaSaF2auYhVATyejRqK4SkCbe1c/ZPmjjlsdJOC7PndJ9Iv49UeY8VkSuDt UyBrJ02GEWewCul3eLCzsr6Z8XADNiMbJlvP29y9Cs1QA9Apyw1ORvWn2hEpc62SzVA0Nx 2ljYvsn7UetPDISzjCl/1Y9BADrRW+ebhPdKe6num/qkq6THH6OYenyp40jM45KW0iZfX9 XhVxdAYBNYv1pyCSBmlzgRGzVs8jB2rkzBfDGBlvoWwAqR89Bi3ZY/z6cMcpqpeoUqY0KF wClAyBe9Zwi994Iy9VZFSLi7trF7XH+IJcyHtJHeQSObaDT4SAajKP9T4hqw0w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696945343; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Bbem8sUYqDtB9qoAFYdAwJ9I92WDlc4O1MKO9L1Rf+k=; b=leFmjiZvpRAy2CWLUCKjo4ykQ5IENfdnkwD9WNKaTAKfvpJ4utLXQ6XGdBhMZWRh3uEJNL d9YIP17eIRkQaizZAMXEf4N4XkvFFOoTbpeINg5T6uIIFhrysDxoRHy1ahVk770dohREWv BDAueADfIDtqGdu9FBZR5u1XBKrZJr3l3U6DmjirbXNPoxmuZxV9MeMHS5/K7cN9jl+Tr2 yFPSOt+dHXI7YKFdy5jo6uvLph8+zE+QIX5um1OlL/SQl7UDrafGDJ7q3axtzSkwN+n6V0 5EIofZmh36D1wqtGGdaEMWsX8JeHBlIc7zX/NUCbkiaMpgrcRgcm+Fpw06/8FA== 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 4S4cXH2KPBzh1M; Tue, 10 Oct 2023 13:42:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39ADgNgH021467; Tue, 10 Oct 2023 13:42:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39ADgNXE021464; Tue, 10 Oct 2023 13:42:23 GMT (envelope-from git) Date: Tue, 10 Oct 2023 13:42:23 GMT Message-Id: <202310101342.39ADgNXE021464@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 2ba605f32ac3 - stable/14 - dtrace: fix fbt regression for aarch64 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 2ba605f32ac3c673ef0f0bee810a2696f1887488 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=2ba605f32ac3c673ef0f0bee810a2696f1887488 commit 2ba605f32ac3c673ef0f0bee810a2696f1887488 Author: Igor Ostapenko AuthorDate: 2023-10-03 16:48:00 +0000 Commit: Mark Johnston CommitDate: 2023-10-10 13:41:39 +0000 dtrace: fix fbt regression for aarch64 fbt computes incorrect instruction position for AArch64 kernel module symbol. The issue is with the for loop, it does an extra increment of instr pointer after the required instruction is found. Hence, a wrong instruction is targeted for patching. Signed-off-by: Igor Ostapenko Fixes: 980746e5cb26 ("fbt: simplify arm64 function-prologue parsing") Reviewed by: markj Pull Request: https://github.com/freebsd/freebsd-src/pull/855 MFC after: 1 week (cherry picked from commit b4db386f9fa7be9668aa09d14b0bbd048a7a7e89) --- sys/cddl/dev/fbt/aarch64/fbt_isa.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/sys/cddl/dev/fbt/aarch64/fbt_isa.c b/sys/cddl/dev/fbt/aarch64/fbt_isa.c index 4094ea43a9fe..44690b97f77a 100644 --- a/sys/cddl/dev/fbt/aarch64/fbt_isa.c +++ b/sys/cddl/dev/fbt/aarch64/fbt_isa.c @@ -90,7 +90,6 @@ fbt_provide_module_function(linker_file_t lf, int symindx, uint32_t *instr, *limit; const char *name; char *modname; - bool found; int offs; modname = opaque; @@ -119,16 +118,16 @@ fbt_provide_module_function(linker_file_t lf, int symindx, if ((*instr & BTI_MASK) == BTI_INSTR) instr++; - /* Look for stp (pre-indexed) operation */ - found = false; /* * If the first instruction is a nop it's a specially marked * asm function. We only support a nop first as it's not a normal * part of the function prologue. */ if (*instr == NOP_INSTR) - found = true; - for (; !found && instr < limit; instr++) { + goto found; + + /* Look for stp (pre-indexed) or sub operation */ + for (; instr < limit; instr++) { /* * Functions start with "stp xt1, xt2, [xn, ]!" or * "sub sp, sp, ". @@ -142,14 +141,14 @@ fbt_provide_module_function(linker_file_t lf, int symindx, * past the function prologue. */ if (((*instr >> ADDR_SHIFT) & ADDR_MASK) == 31) - found = true; + break; } else if ((*instr & SUB_MASK) == SUB_INSTR && ((*instr >> SUB_RD_SHIFT) & SUB_R_MASK) == 31 && ((*instr >> SUB_RN_SHIFT) & SUB_R_MASK) == 31) - found = true; + break; } - - if (!found) +found: + if (instr >= limit) return (0); fbt = malloc(sizeof (fbt_probe_t), M_FBT, M_WAITOK | M_ZERO); From nobody Tue Oct 10 14:34:20 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4dhD4Txtz4wqkJ; Tue, 10 Oct 2023 14:34:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4dhD2Rqnz4Qx3; Tue, 10 Oct 2023 14:34:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696948460; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VkouFUE/Wv9nQt25kD9iP7iA2AXRspa40TbhVUUh+wk=; b=D6vrNxIcgoCDElqbOhaELxJaEz2yLgDzUVc187kUvOCWsLoLzQZDgUEC80S68hrq6Mtfyq xF6Q4UMsblvTf76/CT0Tp7b/G4m7UmihKgyjVeABzLV6e/AXTQJ7wKcWqSQrWx4ngzmy+E ZyY95mvCunVrS+yjGOwzobRIpfyT5vgTR0cFksNYGmawu6Sl1jN3Gr11WaLWYs10lueTXE kmBSeora0OQh+onhQXuWzmlNR/60rGr7cwyguPMn+JQdmNQRfiClNv29/GA5uE8/kIz55i RMGAQ5wd3U0eEOfvbyBJu96r/9mI8vDcuhkHU/MqhLr//nme4URx0GdPSRij5Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696948460; a=rsa-sha256; cv=none; b=KeEvM8IlNBkkg7xSmv3W1iz9WE0pCsyYIEO411gawtrZPextNqCSdRVLtMjwGfnJLEc0kq KR7VlrKt8+B7fLK1GXz44D8e41307UBciISdzN12xYEf2HHVE9sF0QkCEZVeOW7914vt+a 3SdC9E+6+r1rk+ZyxT00G4yC1yCbttwLdaV/lKxopdBgvWBPvw5WZ0YPlKfGfRuzdl3QL9 5aVT6EdMitINN+XUiHm38Dbub4hLgKnaIyFsi+yAqYjhmTZ3Wplr0uGLUVI05TpVuSUXTY qSadANkSllgNf8BlR6K9CX6DcyHydVnuSSSMlrF0nX9tiY7vFYy5CvGwUpECqQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696948460; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VkouFUE/Wv9nQt25kD9iP7iA2AXRspa40TbhVUUh+wk=; b=IgFXgLMk64fHLqs3zj/+tlE5hhqz2RMtsK7yXJbrerfMKviJT2712aCAgxLmNeYrU7Fa8w sht1t+lUUMAf1pxFpGphXccoG8VWFWAV9OsEPBXxjDxC5gzP8xIT0oyNiQ17gXQTfU407Q jmEEy2/3WU4kjgBfKQoHVWmR/Gi5ni2OPtQhMh9TlyfDIgjWEtpFnEXWxW5lyYQiFTuLUF tTg0HAEFmVsaonsDVqUCdJSmmGgVWhAkYWMwboPZ1YkqFtxPDXElEB/BIlkODUKkwKFn9p s2EvjkLzsG8+196SpIKi0pbeaxZMYGAU9K+ti9fJfBTyYDNDrpAlywC67kuHzA== 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 4S4dhD1XKlzj5w; Tue, 10 Oct 2023 14:34:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39AEYKSZ005061; Tue, 10 Oct 2023 14:34:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39AEYKZ2005058; Tue, 10 Oct 2023 14:34:20 GMT (envelope-from git) Date: Tue, 10 Oct 2023 14:34:20 GMT Message-Id: <202310101434.39AEYKZ2005058@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 41023d85b3bc - releng/14.0 - netlink: fix accessing freed memory List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 41023d85b3bc43cb421f46bb35cf75201542c528 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=41023d85b3bc43cb421f46bb35cf75201542c528 commit 41023d85b3bc43cb421f46bb35cf75201542c528 Author: Bjoern A. Zeeb AuthorDate: 2023-09-30 15:11:57 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-10 14:33:37 +0000 netlink: fix accessing freed memory The check for if_addrlen in dump_iface() is not sufficient to determine if we still have a valid if_addr. Rather than directly accessing if_addr check the STAILQ (for the first entry). This avoids panics when destroying cloned interfaces as experienced with net80211 wlan ones. Sponsored by: The FreeBSD Foundation Approved by: re (gjb) Reviewed by: jhibbits (earlier version), kp Differential Revision: https://reviews.freebsd.org/D42027 (cherry picked from commit 7d48224073ce14f0dd3db2d4e96876ac928b52f2) (cherry picked from commit 8bda9f9c56a997d851e8fc2c20b5e37f072ecb4a) --- sys/netlink/route/iface.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/sys/netlink/route/iface.c b/sys/netlink/route/iface.c index e1939c7681de..b6e120933f83 100644 --- a/sys/netlink/route/iface.c +++ b/sys/netlink/route/iface.c @@ -292,6 +292,7 @@ static bool dump_iface(struct nl_writer *nw, if_t ifp, const struct nlmsghdr *hdr, int if_flags_mask) { + struct epoch_tracker et; struct ifinfomsg *ifinfo; NL_LOG(LOG_DEBUG3, "dumping interface %s data", if_name(ifp)); @@ -321,11 +322,15 @@ dump_iface(struct nl_writer *nw, if_t ifp, const struct nlmsghdr *hdr, nlattr_add_u8(nw, IFLA_PROTO_DOWN, val); nlattr_add_u8(nw, IFLA_LINKMODE, val); */ - if (if_getaddrlen(ifp) != 0) { - struct ifaddr *ifa = if_getifaddr(ifp); + if (if_getaddrlen(ifp) != 0) { + struct ifaddr *ifa; - dump_sa(nw, IFLA_ADDRESS, ifa->ifa_addr); - } + NET_EPOCH_ENTER(et); + ifa = CK_STAILQ_FIRST(&ifp->if_addrhead); + if (ifa != NULL) + dump_sa(nw, IFLA_ADDRESS, ifa->ifa_addr); + NET_EPOCH_EXIT(et); + } if ((if_getbroadcastaddr(ifp) != NULL)) { nlattr_add(nw, IFLA_BROADCAST, if_getaddrlen(ifp), From nobody Tue Oct 10 14:34:21 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4dhF4VVhz4wr4B; Tue, 10 Oct 2023 14:34: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 4S4dhF38Nxz4RHm; Tue, 10 Oct 2023 14:34:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696948461; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=20Oz3+IIJh960BozgdRPXSz02kQMu58IeMNNTRjWGtQ=; b=ZbbpiGr5XmiiaNOfm3Jv/BKjeS3ZXLyVYr4IglsbZwlgxumOc4kuaX5LaWmKRGQ4GrB35m c+iNdPvFIb/FSwyF/QVJVCHj1y3SGoFAXoV4YPjoTE8Osi6pb00CoqfaFQCJ5rnjfF4HEL yovoYd5epE1L/WngkeA7Q1JBCKj4iBHBBxWzua8wIrCLsnoLkanweJwkixkfZhi4MVETka 44fykWAjt2q6GM9ckSQA3lZKljDaCzgMVPLpOeyDfC7BNmRQHKuOZj08mIRNEL89Cuxm/C PhdXtB56vu1332KBQhLcO5uLYFJwgT8J0+ACJm4CvR7skYuK6zpepkVOpPtOww== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696948461; a=rsa-sha256; cv=none; b=yDmRCmXc5gMCTYtvKByHA2HwmZDrUJo4f0cyDluX/rAVdmT8vYf77ADVVR0siI9GnpAhYX 5XK2GySUc9erP0AhaLI8YCwywPwfuZRWTOdN5VuQR5BcJBftH2TNtL1cCeY6yxZwEiq5Ay xvRxo5Cbjm772VQZhSYDByzQiO9FthPmjmRInqX+6KldTGntiFca7prYwu24AGWhhD/Ks9 9/7W3IAXFho2zZCwM9RkYge0b/zuAdoTLg2ctx/3eSVLTpw+idE2hY1Ypf+1HHYWNIV7H9 ash+OXpqWMfGa1rB1Ky1JNoLZtivf+Z6kJB24swh5gTIxdoOpW5m7INfP1CZjA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696948461; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=20Oz3+IIJh960BozgdRPXSz02kQMu58IeMNNTRjWGtQ=; b=oUe2rZS1202E0tPg79zX+5kdkXZJOT4D7B8Op6OVhzZ1aeNnYH20dn6cGDinNtw4qFcek+ x3EHPseKUkhzEr40jXpv6OpLxlEhLgsvsyLvjrhT+16DLK7IkVPc7tbTnXMXvsQeJxQJWQ rcLzCO8uvSq56DJjqGZgYp3DW7MPOxHjXQTq/f++jd6f47mTclPMgGaubev9yVuTZiiPbI OR3afmGA+E6e4yTnQlULrhBpEAxJ/utSaD5wCvhPXwlmDtgHnMzanJk8PtqyR0jIC9Y43j bqnZSTRTnMhdUfKCFpzKC0UEddqo/0tk7ZzDnWcN7PNoI+VuRXu0nM4ky/sXlQ== 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 4S4dhF2GJgzhXR; Tue, 10 Oct 2023 14:34:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39AEYLhI005114; Tue, 10 Oct 2023 14:34:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39AEYLdn005110; Tue, 10 Oct 2023 14:34:21 GMT (envelope-from git) Date: Tue, 10 Oct 2023 14:34:21 GMT Message-Id: <202310101434.39AEYLdn005110@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 7e4ebe43721f - releng/14.0 - linuxkpi: fix iteration in __sg_alloc_table_from_pages List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 7e4ebe43721f24b78d9bd736988798bb46c54f71 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=7e4ebe43721f24b78d9bd736988798bb46c54f71 commit 7e4ebe43721f24b78d9bd736988798bb46c54f71 Author: Austin Shafer AuthorDate: 2023-09-06 14:08:05 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-10 14:33:54 +0000 linuxkpi: fix iteration in __sg_alloc_table_from_pages Commit 3f686532c9b4 tried to fix an issue with not properly starting at the first page in the sg list to prevent a panic. This worked but with the side effect of incrementing "s" during the final iteration causing it to be NULL since the list had ended. In cases non-DEBUG kernels this causes a panic with drm-5.15, since "s" is NULL when we later pass it to sg_mark_end(). This change decouples the iteration sg from the return value so that it is never incremented past the final page in the chain. Approved by: re (gjb) Reviewed by: manu Differential Revision: https://reviews.freebsd.org/D41574 (cherry picked from commit 09b0401e91a92bcb58ea1873857b42f8211f660f) (cherry picked from commit 2709483a725e1da2d443d9e391bfaa0f223099be) --- sys/compat/linuxkpi/common/include/linux/scatterlist.h | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/sys/compat/linuxkpi/common/include/linux/scatterlist.h b/sys/compat/linuxkpi/common/include/linux/scatterlist.h index 0e4cc90e57a5..e462d5c649f1 100644 --- a/sys/compat/linuxkpi/common/include/linux/scatterlist.h +++ b/sys/compat/linuxkpi/common/include/linux/scatterlist.h @@ -343,7 +343,7 @@ __sg_alloc_table_from_pages(struct sg_table *sgt, { unsigned int i, segs, cur, len; int rc; - struct scatterlist *s; + struct scatterlist *s, *sg_iter; #if defined(LINUXKPI_VERSION) && LINUXKPI_VERSION >= 51300 if (prv != NULL) { @@ -377,10 +377,18 @@ __sg_alloc_table_from_pages(struct sg_table *sgt, #endif cur = 0; - for (i = 0, s = sgt->sgl; i < sgt->orig_nents; i++) { + for_each_sg(sgt->sgl, sg_iter, sgt->orig_nents, i) { unsigned long seg_size; unsigned int j; + /* + * We need to make sure that when we exit this loop "s" has the + * last sg in the chain so we can call sg_mark_end() on it. + * Only set this inside the loop since sg_iter will be iterated + * until it is NULL. + */ + s = sg_iter; + len = 0; for (j = cur + 1; j < count; ++j) { len += PAGE_SIZE; @@ -394,8 +402,6 @@ __sg_alloc_table_from_pages(struct sg_table *sgt, size -= seg_size; off = 0; cur = j; - - s = sg_next(s); } KASSERT(s != NULL, ("s is NULL after loop in __sg_alloc_table_from_pages()")); From nobody Tue Oct 10 14:39:56 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4dpj0fsTz4wrCJ; Tue, 10 Oct 2023 14:39: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 4S4dpj06xTz4Rfl; Tue, 10 Oct 2023 14:39:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696948797; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=viiBWvS+z993e/PlZaUYCtJLIjMohe8rIzAiUpSMZGw=; b=AMhXEAsQRU/bJ+xnLh/cAz0cUtdAfV526qd41oxNILG/5tWN01VsAAi8OeZ5Ee8NuggKKf ryXFCW6ZXCx5MBUFe3jbr3z7oK0s49fQez3k5aClBka3y9PRRJANMcdHYgJurPBdFH6ZWN WSyS5gLA+LCE63szHjkdLEzl2CNcYAsYLtTcVh34OKDyqyN5Kmpp1+T9mnn7znlnL81Ky5 g38q92UOfYCMY6m6g40V0ig6QkSfJwiXfJyd14rgwXM8jVZih0kzYs1Go7wyZMv8w8+Fsk CJs0ltRYrYOIYbYNGcigISQMo8SOvHdor/f6qj/1U9ROH0BcVSISPoGZtWOaAw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696948797; a=rsa-sha256; cv=none; b=Iza7AB/8sYkFNgWhle2XqstgRKtoVZmaHPCI/bgdTqxEQx5ybO/etBB9gNEy9zzvtQpf57 q2UjP1wtC6SNdHfBMrWIsnyv74ojhOuXXEPKdck+tfbY9UmsfA2MMKhXxua6FML4nzSFxr QbqUaQx5e68evOZiPYcFayQFAP7h2i2g17CkaT1DKnGtrOBpAqtDBPWAkATKcss7753EAg IMsjAO14HJ+WB0vOx9MlxNashrAcoImnDi9nEqS1P38QKAxWJ4IUYXUa9M1IFcb+7imt9k cEjB28w/AqVf4j2jIGtlXr+Rv3NRDi434Uo6eFSwnSrvX/i+NWSO1iW8FgYFdA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696948797; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=viiBWvS+z993e/PlZaUYCtJLIjMohe8rIzAiUpSMZGw=; b=pZj9wcumSRJCsi4xmlj97RIY8ivzVxOy0x9+4THpRhEZXvfJ940Oo69mQSzSe5igi/PqP+ NS2QDSAfNqS2RkXSiydQ8UmLqv4wl+w7R3GVVEG505AwcOGzMH5qAv1hibFYRGs/adtNGg 16eKOrEeM8aRidpvMG9ZjdoDLMsyVxw7B6nTG+ZltTyOg6FMb+fPYS/PaLF0UGVEH4Xsk3 jDx2I8pd8i1k1LXXaiFz2n+5oWNoHya/Or8IbSt3S/BAQTjhakUq1qGQgTXU7jlSypSV9U +yiN4qccgksLZmszPKhFt2SHWAM/j9Y8rw8/5+QN54zs5RFEo5qA+qlS1jligg== 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 4S4dph6H9Tzj1s; Tue, 10 Oct 2023 14:39:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39AEduRI005979; Tue, 10 Oct 2023 14:39:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39AEdu2f005976; Tue, 10 Oct 2023 14:39:56 GMT (envelope-from git) Date: Tue, 10 Oct 2023 14:39:56 GMT Message-Id: <202310101439.39AEdu2f005976@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 21169ec5a219 - releng/14.0 - dtrace: fix fbt regression for aarch64 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 21169ec5a219f5fcec4c98649706f024d8bfe75f Auto-Submitted: auto-generated The branch releng/14.0 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=21169ec5a219f5fcec4c98649706f024d8bfe75f commit 21169ec5a219f5fcec4c98649706f024d8bfe75f Author: Igor Ostapenko AuthorDate: 2023-10-03 16:48:00 +0000 Commit: Mark Johnston CommitDate: 2023-10-10 14:39:44 +0000 dtrace: fix fbt regression for aarch64 fbt computes incorrect instruction position for AArch64 kernel module symbol. The issue is with the for loop, it does an extra increment of instr pointer after the required instruction is found. Hence, a wrong instruction is targeted for patching. Signed-off-by: Igor Ostapenko Approved by: re (gjb) Fixes: 980746e5cb26 ("fbt: simplify arm64 function-prologue parsing") Reviewed by: markj Pull Request: https://github.com/freebsd/freebsd-src/pull/855 MFC after: 1 week (cherry picked from commit b4db386f9fa7be9668aa09d14b0bbd048a7a7e89) (cherry picked from commit 2ba605f32ac3c673ef0f0bee810a2696f1887488) --- sys/cddl/dev/fbt/aarch64/fbt_isa.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/sys/cddl/dev/fbt/aarch64/fbt_isa.c b/sys/cddl/dev/fbt/aarch64/fbt_isa.c index 4094ea43a9fe..44690b97f77a 100644 --- a/sys/cddl/dev/fbt/aarch64/fbt_isa.c +++ b/sys/cddl/dev/fbt/aarch64/fbt_isa.c @@ -90,7 +90,6 @@ fbt_provide_module_function(linker_file_t lf, int symindx, uint32_t *instr, *limit; const char *name; char *modname; - bool found; int offs; modname = opaque; @@ -119,16 +118,16 @@ fbt_provide_module_function(linker_file_t lf, int symindx, if ((*instr & BTI_MASK) == BTI_INSTR) instr++; - /* Look for stp (pre-indexed) operation */ - found = false; /* * If the first instruction is a nop it's a specially marked * asm function. We only support a nop first as it's not a normal * part of the function prologue. */ if (*instr == NOP_INSTR) - found = true; - for (; !found && instr < limit; instr++) { + goto found; + + /* Look for stp (pre-indexed) or sub operation */ + for (; instr < limit; instr++) { /* * Functions start with "stp xt1, xt2, [xn, ]!" or * "sub sp, sp, ". @@ -142,14 +141,14 @@ fbt_provide_module_function(linker_file_t lf, int symindx, * past the function prologue. */ if (((*instr >> ADDR_SHIFT) & ADDR_MASK) == 31) - found = true; + break; } else if ((*instr & SUB_MASK) == SUB_INSTR && ((*instr >> SUB_RD_SHIFT) & SUB_R_MASK) == 31 && ((*instr >> SUB_RN_SHIFT) & SUB_R_MASK) == 31) - found = true; + break; } - - if (!found) +found: + if (instr >= limit) return (0); fbt = malloc(sizeof (fbt_probe_t), M_FBT, M_WAITOK | M_ZERO); From nobody Tue Oct 10 17:07:01 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4j4Q0Pg6z4x36l; Tue, 10 Oct 2023 17:07: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 4S4j4P71nzz4g6H; Tue, 10 Oct 2023 17:07:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696957622; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=amM0cXF3GqasgAqkxwCDQqnGb53YkqhQrg3MycOALIw=; b=xquIGzPUOuO7TyXPLoSkXLXoxpKsgWdSAlZQS4iUgRhH3UlaYi5pCjYg/y+8niAAfGVZAT WLZw40ExhMhI92X7x2NTwwd5W1scttkkn1/nVzFfbv/MbrEhTy83ySxsGFSPvOk+qli5X4 JxInB8JvjbjZAKpxR9f0tOXXYTsPw5VB92JLFYzFLSlBjAZIwcgJ2MKFlHmCd4ahqSgYgz RarheL2bRg3iJWMfNK+XyvASMkT+QO17KfVNXrokGJ+PuGTihFrTC3BFXMWnQwWZ4/B8p7 0+QuB7SouFdWImZ8Zj/nKsH/Qysqei/1IrFLGM3Lc8Zc714s2Hs7vJZ+QvAF6Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696957622; a=rsa-sha256; cv=none; b=RVKZpr9oSTys0n5H8VyRhGagwMUuf2gW6Mokxs1FH1bRuaO48nS01bLBddhm49hM0IQ/um J2Bx7XrEQQe8EEl6FCBOuMPCzw8ndxxKScFMD3Y+Mr584RCeNPJPBN0DmNvH9hpOvlwjKI ygLBdU74v1ZlHc7L7BM2dYAmC80oQ3mXtGLccdCDr7QcVI1pNQRKADPNfQeUMKguTM2ZaY TDRkS5OM1ighFDHxB4Xd1XpBFgYz3q1ewz8FggiZ9vBE6DunWI4TOvvN8JcaCzQn5fIGc8 admQ26KytvAmbk1fPuIePAkvrjMIRAXSU4DaCZcTghG6EA5ajB1QGBabIr5Gpg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696957622; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=amM0cXF3GqasgAqkxwCDQqnGb53YkqhQrg3MycOALIw=; b=GUdUORUA7qPP6PkzT0CSRGPOuLNiLiWn1QIVZRAF0b6Uc4LzgEIyuhcIHN0OZiF1h5iKQy Eiw6wB+57sJ4BOhJcsctwpX0YPJ/g3g7WJsqj+Ku8rmR+eUs0zLy4uOj6kpP4RfIhZK6dN 2LAgzV1J5uQjJS8FMrSfrcoOrLG+U+74dCaKRBJcTM43bfcuRaR32Nx3yV3HKn6pXSbsyP HPwf2jLSLsXVXYwL0t2UILqIpJjjJsLwHZHQNxURNfY2sgzvip9TQuZfclnr4w/3MzPKqU San8X56EBPmhktgmGPYKeZeCc03yi2nWKABDH0cAPC0s1ipxPqlOU7MrkXkkhQ== 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 4S4j4P65fWzmNW; Tue, 10 Oct 2023 17:07:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39AH71O8054659; Tue, 10 Oct 2023 17:07:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39AH71eP054657; Tue, 10 Oct 2023 17:07:01 GMT (envelope-from git) Date: Tue, 10 Oct 2023 17:07:01 GMT Message-Id: <202310101707.39AH71eP054657@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mitchell Horne Subject: git: 5a2849bc3c60 - stable/14 - pmcstat: fix duplicate event allocation on CPU 0 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mhorne X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 5a2849bc3c60426039ff2aeef1d2b54940152927 Auto-Submitted: auto-generated The branch stable/14 has been updated by mhorne: URL: https://cgit.FreeBSD.org/src/commit/?id=5a2849bc3c60426039ff2aeef1d2b54940152927 commit 5a2849bc3c60426039ff2aeef1d2b54940152927 Author: Mitchell Horne AuthorDate: 2023-09-27 16:37:46 +0000 Commit: Mitchell Horne CommitDate: 2023-10-10 17:06:12 +0000 pmcstat: fix duplicate event allocation on CPU 0 Commit b6e28991bf3a modified the allocation path for system scope PMCs so that the event was allocated early for CPU 0. The reason is so that the PMC's capabilities could be checked, to determine if pmcstat should allocate the event on every CPU, or just on one CPU in each NUMA domain. In the current scheme, there is no way to determine this information without performing the PMC allocation. This broke the established use-case of log analysis, and so 0aa150775179a was committed to fix the assertion. The result was what appeared to be functional, but in normal counter measurement pmcstat was silently allocating two counters for CPU 0. This cuts the total number of counters that can be allocated from a CPU in half. Additionally, depending on the particular hardware/event, we might not be able to allocate the same event twice on a single CPU. The simplest solution is to release the early-allocated PMC once we have obtained its capabilities, and reallocate it later on. This restores the event list logic to behave as it has for many years, and partially reverts commit b6e28991bf3a. Reported by: alc, kevans Reviewed by: jkoshy, ray MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D41978 (cherry picked from commit c362fe939f6fe52056fb7506be9e5cbd0a5ef60b) --- usr.sbin/pmcstat/pmcstat.c | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/usr.sbin/pmcstat/pmcstat.c b/usr.sbin/pmcstat/pmcstat.c index fd4be99f83c8..c36cee436e55 100644 --- a/usr.sbin/pmcstat/pmcstat.c +++ b/usr.sbin/pmcstat/pmcstat.c @@ -713,8 +713,16 @@ main(int argc, char **argv) errx(EX_SOFTWARE, "ERROR: Out of memory."); (void) strncpy(ev->ev_name, optarg, c); *(ev->ev_name + c) = '\0'; + libpmc_initialize(&npmc); + if (args.pa_flags & FLAG_HAS_SYSTEM_PMCS) { + /* + * We need to check the capabilities of the + * desired event to determine if it should be + * allocated on every CPU, or only a subset of + * them. This requires allocating a PMC now. + */ if (pmc_allocate(ev->ev_spec, ev->ev_mode, ev->ev_flags, ev->ev_cpu, &ev->ev_pmcid, ev->ev_count) < 0) @@ -726,8 +734,14 @@ main(int argc, char **argv) err(EX_OSERR, "ERROR: Cannot get pmc " "capabilities"); } - } + /* + * Release the PMC now that we have caps; we + * will reallocate shortly. + */ + pmc_release(ev->ev_pmcid); + ev->ev_pmcid = PMC_ID_INVALID; + } STAILQ_INSERT_TAIL(&args.pa_events, ev, ev_next); @@ -751,10 +765,7 @@ main(int argc, char **argv) } if (option == 's' || option == 'S') { CPU_CLR(ev->ev_cpu, &cpumask); - pmc_id_t saved_pmcid = ev->ev_pmcid; - ev->ev_pmcid = PMC_ID_INVALID; pmcstat_clone_event_descriptor(ev, &cpumask, &args); - ev->ev_pmcid = saved_pmcid; CPU_SET(ev->ev_cpu, &cpumask); } From nobody Tue Oct 10 23:14:35 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4sDX0n8Lz4wTQ8; Tue, 10 Oct 2023 23:14:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4sDX06bzz4Ng3; Tue, 10 Oct 2023 23:14:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696979676; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7vK/pyRqNoRcclkQ9g9B8GHXIshdHhGq5F05PwW7GaQ=; b=famnnmpy3Gd0ZMn1qaFYg8qZN8zOwTnF99K4DgDQFuFHhE5FLfAiRw2dFJ5YvT5Wenc67r jfFK8aY7287ni5wKWaEPlA68Ln1Xs3otOfno3CzhppTFVaFBfF9QS15WCokr1cBGa1yGqs ulrSCVmCfaTO21zOjP9DyTRZ0DSlETdSURbjelP10M+Ot3wA6mS8ojOTOxppWSb/WeVuTF 97fpdZSouTZcSA1g4zsTKF4mnoav3YtyadoBebLP5DqIzkz0Lv44jbqH/jq2kWrop7I5j9 pFiHIBSl7LAhP5ldy3SxtMN32SOQ4ArFVj3Ahe9t/EeTty4+F+ULo1KfRmOHXg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696979676; a=rsa-sha256; cv=none; b=j4GrIYuiQYwD+FgJxS3Ki/zMp5uiwClsBlnrHOKqcXJkq2dm2NBTRiSEDr1HWtOszetls6 mdV+5prkTuzsrKveLNwgGqXtaQ8jlPxmgiPkfGkf8dtayozisd9mBFPE8hJgK+nWExoq9T KB5cEbBebtiF6f8gam7f1psesZhFc01QMJv5XdCefcrkI43BXOM/QkEsVvG0x4t5wb+3ie VnrXvOnuVwqlkTqWgpdtHwFqdYvqfpwTT1cGRLFIRxNttqjS/LtTU2W5Sw+AshVUoHuud8 wRsX2QU9xNyst66/N7qHlqHQJS8lvpyGV7bzPeuRambNH7/fQSKjPFfaXtmhEw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696979676; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7vK/pyRqNoRcclkQ9g9B8GHXIshdHhGq5F05PwW7GaQ=; b=nk1B8XYgO8JRm0yvH00i/lzZNf3dOeMLxSPInScyvadE17kcLO+EyBZnU6Ri+8YFgLXw8N D0cn5Z3n+3qqGCTbGGr3RtClIf6JUyvQnhG9Ep9h70nXDv2WgNMtfzBQg04cwY1qpwjMG3 uaGZxWcqPJLxc4sD+7RQEyfX5OAc1Q+NRhC0HagijxrLB+X/16FpS6RQSejZO/5X79+13f /CpTcap0SG1PitCUd3YdNJqhCHcSZHFOZkvDk4b7ekMmbfnBTBT75JN5ez0xLOuFECWIxP Eiqot/FaP44RmVvrvT+IOUHkDebSSlpPLrrxuiQhrnw/u1GmZ51g/0x+plkx3g== 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 4S4sDW6HsKzy5l; Tue, 10 Oct 2023 23:14:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39ANEZ1o069240; Tue, 10 Oct 2023 23:14:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39ANEZ9v069237; Tue, 10 Oct 2023 23:14:35 GMT (envelope-from git) Date: Tue, 10 Oct 2023 23:14:35 GMT Message-Id: <202310102314.39ANEZ9v069237@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Danilo G. Baio" Subject: git: 42790564b48f - stable/14 - jexec.8: Add examples section List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dbaio X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 42790564b48f0d4d4ec5f67b73bad920fb070b94 Auto-Submitted: auto-generated The branch stable/14 has been updated by dbaio: URL: https://cgit.FreeBSD.org/src/commit/?id=42790564b48f0d4d4ec5f67b73bad920fb070b94 commit 42790564b48f0d4d4ec5f67b73bad920fb070b94 Author: Danilo G. Baio AuthorDate: 2023-10-07 22:44:44 +0000 Commit: Danilo G. Baio CommitDate: 2023-10-10 23:13:07 +0000 jexec.8: Add examples section MFC after: 3 days Reviewed by: gbe, 0mp, danfe, pauamma_gundo.com Differential Revision: https://reviews.freebsd.org/D40831 (cherry picked from commit 04c8bfc1761010c36081cf300fa751548d541122) --- usr.sbin/jexec/jexec.8 | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/usr.sbin/jexec/jexec.8 b/usr.sbin/jexec/jexec.8 index 69f380676c30..4400cbbe56a3 100644 --- a/usr.sbin/jexec/jexec.8 +++ b/usr.sbin/jexec/jexec.8 @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 24, 2016 +.Dd October 7, 2023 .Dt JEXEC 8 .Os .Sh NAME @@ -65,6 +65,44 @@ The user name from jailed environment as whom the .Ar command should run. .El +.Sh EXAMPLES +.Ss Example 1 : Open a shell in a jail +The following command specifies a jail by its name and utilizes the current +user's shell: +.Pp +.Dl # jexec name +.Pp +It is also possible to specify a jail by its jid: +.Pp +.Dl # jexec JID +.Ss Example 2 : Run a single command without opening a shell +The following command runs +.Ql uname -a +in a jail called +.Dq name . +Since a command is specified explicitly, +.Nm +does not spawn an interactive shell. +Instead, +.Nm +executes the specified command directly. +.Pp +.Dl # jexec name uname -a +.Ss Example 3 : Open a shell in a jail with a clean environment +The following command opens a +.Xr sh 1 +shell in a jail with a clean environment: +.Pp +.Dl # jexec -l name sh +.Ss Example 4 : Open a shell in a jail with the login command +The following command utilizes +.Xr login 1 +to access the jail, submitting an audit record, and displaying the +user's last login, system copyright, and +.Xr motd 5 +message: +.Pp +.Dl # jexec -l name login -f root .Sh SEE ALSO .Xr jail_attach 2 , .Xr jail 8 , From nobody Tue Oct 10 23:18:37 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4sKB26gwz4wTtP; Tue, 10 Oct 2023 23:18:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4sKB1K3qz4PDn; Tue, 10 Oct 2023 23:18:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696979918; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zKuZpZ1s73sZr1lLcjZn5hMfxFVnduEl5ECddPdSzSo=; b=rOFHMIuLJf5kvRTT2+E8vJN+shfxfCxBazmAj9puO9kkGT+w3AbYV6Y3MxEL8bTSSxkm8i ZY3b/Pq3CPci5OR20H9CPgU8n1bazo2wrNTc4LZ7D6QHBjsbrJJKt+fYEC1xdDCulZPPWI xDgty/1a/MuBub5SyYGWxRzGsPs/I/6WASYIPw0sYFT2iv9bfeVy35BPjfV8NNPOrt0NNY 7BOTpoYp4HT0CJgdVyvaIw9xu/rOJKyKfHCVWWHAhDBty0arHwjDGizJaIlF1npIJCdfjb WD0pYEZONZb4pkv7sGJ/n3zRZ2LnWm6MSz/+D5g45cQaKknAJxkkbtbhDWbR3Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696979918; a=rsa-sha256; cv=none; b=GzQW0beE2O5RLv8uc0BX/LwxcdYT7EvSRe8Br2Bo5C6CaVSv9u4er5sJphKSw3pG/p5dLE Qx8PSObjx6V1nU1mdUkfZLgas/pOjeqTrAiXVOwNyrb5ltGOBCUbHW76VvhjKnHozvRYWd 62arRh5aDhrW1+ZHiimpDWAo1JFZByx01sf+PQwtBC8g0IVyp+ImxTPo25OXQDRgDyydUK ziIRDPXJujGKtbVZeDZ1yW2Z6A28YKRSQplhQD1IDlhPE8DHIZSErEO8SprXrPe7Iftox2 IHFxs4NjE/nVTWT9GBLTDtfUl8yhpgm7pGLas7itNqAEyVbx9H/HLiuLmOg1kQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696979918; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zKuZpZ1s73sZr1lLcjZn5hMfxFVnduEl5ECddPdSzSo=; b=FhzHeKFm1E5MpdSf5fznvdPZ0q9/Zz+ttNVxTx2NIU1OcmOOEHxZ6AvKmSauaShdyuU8+d HmTS+mXe0lr8JuK7A+g+e8f0FlZIiYVQfOdYMNBwEcrI7VtjyYM2Pq++4Oo1uVnjxD1dE2 j/p85sfvwzUM+PE2AMd0K2ymoa75O5MT53OnUeU5p8W1C7/OLkmaViTvbqBNYDoSIeMhgi YklQZg7BrHn5Hm7PdhxkLb2OMuXvj2bVv69Ui9GkHBndWy79nlOxncc60da/nEo0EtluvC NHkhpI0fWsluHG7KoAR2RX1c6On3QQpey5Pqp8/3y6J1XiZMe2E/a3ku9H6ETA== 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 4S4sKB0FwFzy5m; Tue, 10 Oct 2023 23:18:38 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39ANIbJ4069910; Tue, 10 Oct 2023 23:18:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39ANIbbY069907; Tue, 10 Oct 2023 23:18:37 GMT (envelope-from git) Date: Tue, 10 Oct 2023 23:18:37 GMT Message-Id: <202310102318.39ANIbbY069907@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Danilo G. Baio" Subject: git: f069e9868d98 - stable/13 - jexec man: Explain how PATH is adjusted. List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dbaio X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: f069e9868d984ce03f5be11217a6fabaf1a054df Auto-Submitted: auto-generated The branch stable/13 has been updated by dbaio: URL: https://cgit.FreeBSD.org/src/commit/?id=f069e9868d984ce03f5be11217a6fabaf1a054df commit f069e9868d984ce03f5be11217a6fabaf1a054df Author: Gleb Popov AuthorDate: 2022-05-19 05:59:41 +0000 Commit: Danilo G. Baio CommitDate: 2023-10-10 23:16:24 +0000 jexec man: Explain how PATH is adjusted. Add a sentence that explains that PATH is set to `/bin:/usr/bin`. I had to dive into `jexec.c` to find this out. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D35251 (cherry picked from commit 7eb6a92e3f938d419d3edc0399fc4c1d1018da15) --- usr.sbin/jexec/jexec.8 | 2 ++ 1 file changed, 2 insertions(+) diff --git a/usr.sbin/jexec/jexec.8 b/usr.sbin/jexec/jexec.8 index 59c00750ee0b..69f380676c30 100644 --- a/usr.sbin/jexec/jexec.8 +++ b/usr.sbin/jexec/jexec.8 @@ -53,6 +53,8 @@ Execute in a clean environment. The environment is discarded except for .Ev HOME , SHELL , TERM , USER , and anything from the login class capability database for the user. +.Ev PATH +is set to "/bin:/usr/bin". .It Fl u Ar username The user name from host environment as whom the .Ar command From nobody Tue Oct 10 23:20:14 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S4sM311KCz4wTWm; Tue, 10 Oct 2023 23:20: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 4S4sM30WCFz4PSD; Tue, 10 Oct 2023 23:20:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696980015; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WRcWeY4zlqYRSkmair1ru0tlOOcUFQMl/+eUaBtRr3M=; b=BW214e+rum5MRr6Az7K78Pg/Q/spQ5/GyZxajBpNOV+XZeqilbA6R0Hp/T+CxDQs+zmNq5 8OKAapVaipvq0L8K6VH1WShXNDwm9dTtL47f9nVlfvRi3i1sdF0wZHguGuu8KtMIz5ZJzk Hjmq4rlLFWDsCvOlaKQ9XXoBZFhfXYXVmLZR539rEQ53SXXmgNrDcv/Ss/VzXxmY745TLk sl44buOKMRwun4Jx9ZJia+OKFReAVtikiKwGeGCrGhpZe9fh/6nR8lCYKFsj/aBR3jSVNJ +gUrfWvRQkdiYdW0yMNM14MuEmyu2sj1BTHazD5uP4/bokzi/sarBE6CaLUmIw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696980015; a=rsa-sha256; cv=none; b=w/KgUm3MaCsnuTJYnmk7OwyYP/k31NixeNrg7DvLgYlP/GL/WJLYF+b5hWwrqEXXlgzCVW jppACwGYlB1dvFbIJL7z6sBAPXthtSukt46xfhzQesyv22EhrgDTRSFR2vPgn3if7Hvv9G fZgpcEK0M6JKySFJh4OPyXJPq0JRUl+sUOn0cO1U2qSFffkHwZJL5lNgKT2VipMz6R+UPB SPMFIWX1wUVRL/o2zfffLkqoB++hnr4TWeQczcgsljS2npVvzw0fokwYldFl8r3TlYdfXi LO4G6DMJ/YWWnV9BWH+HeUttgEq1HGXDWgrwipgqvLjyd9HOCg4wjE8aa1O2yA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696980015; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WRcWeY4zlqYRSkmair1ru0tlOOcUFQMl/+eUaBtRr3M=; b=IQ+CaZhnNVMXTS63W36IpmlszV9VKBEzsdxFZGJpBxFocD1VLkNhOSYqfxVfIBHkvMELTj Rt2ENX19vgNbtUSQUbUxT3h5Z1PUBqKCm7pBnBjh8j09ZevJyf2qKJ6Bz2EVkvbfnlj5aD v4rsbVRBQh/kkPfcaxXpJruIcHmosr2WGhT6dBM7QHngLYaZepOK4HsSuvufRun6jTY07+ Bv0CvUJDBeX+UisD4W/kFODsThKUjGAffjhR1meJ3TtcD4bEnRm1LRECkdse3oJm4VRE/p THzGRvSynDPANN4OkIW5usOl4ri/IZ8MHCVOsvu+bnkgiVWx6u+j1OdO45MQjA== 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 4S4sM26hhSzxZ5; Tue, 10 Oct 2023 23:20:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39ANKEiO077060; Tue, 10 Oct 2023 23:20:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39ANKEGW077053; Tue, 10 Oct 2023 23:20:14 GMT (envelope-from git) Date: Tue, 10 Oct 2023 23:20:14 GMT Message-Id: <202310102320.39ANKEGW077053@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Danilo G. Baio" Subject: git: 1595a4087b19 - stable/13 - jexec.8: Add examples section List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dbaio X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 1595a4087b1947974b2f3fa18e31f79ab6a56572 Auto-Submitted: auto-generated The branch stable/13 has been updated by dbaio: URL: https://cgit.FreeBSD.org/src/commit/?id=1595a4087b1947974b2f3fa18e31f79ab6a56572 commit 1595a4087b1947974b2f3fa18e31f79ab6a56572 Author: Danilo G. Baio AuthorDate: 2023-10-07 22:44:44 +0000 Commit: Danilo G. Baio CommitDate: 2023-10-10 23:18:58 +0000 jexec.8: Add examples section MFC after: 3 days Reviewed by: gbe, 0mp, danfe, pauamma_gundo.com Differential Revision: https://reviews.freebsd.org/D40831 (cherry picked from commit 04c8bfc1761010c36081cf300fa751548d541122) --- usr.sbin/jexec/jexec.8 | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/usr.sbin/jexec/jexec.8 b/usr.sbin/jexec/jexec.8 index 69f380676c30..4400cbbe56a3 100644 --- a/usr.sbin/jexec/jexec.8 +++ b/usr.sbin/jexec/jexec.8 @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 24, 2016 +.Dd October 7, 2023 .Dt JEXEC 8 .Os .Sh NAME @@ -65,6 +65,44 @@ The user name from jailed environment as whom the .Ar command should run. .El +.Sh EXAMPLES +.Ss Example 1 : Open a shell in a jail +The following command specifies a jail by its name and utilizes the current +user's shell: +.Pp +.Dl # jexec name +.Pp +It is also possible to specify a jail by its jid: +.Pp +.Dl # jexec JID +.Ss Example 2 : Run a single command without opening a shell +The following command runs +.Ql uname -a +in a jail called +.Dq name . +Since a command is specified explicitly, +.Nm +does not spawn an interactive shell. +Instead, +.Nm +executes the specified command directly. +.Pp +.Dl # jexec name uname -a +.Ss Example 3 : Open a shell in a jail with a clean environment +The following command opens a +.Xr sh 1 +shell in a jail with a clean environment: +.Pp +.Dl # jexec -l name sh +.Ss Example 4 : Open a shell in a jail with the login command +The following command utilizes +.Xr login 1 +to access the jail, submitting an audit record, and displaying the +user's last login, system copyright, and +.Xr motd 5 +message: +.Pp +.Dl # jexec -l name login -f root .Sh SEE ALSO .Xr jail_attach 2 , .Xr jail 8 , From nobody Wed Oct 11 13:17:03 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5Cwb3HwJz4xN7s; Wed, 11 Oct 2023 13:17: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 4S5Cwb2Z14z3Dks; Wed, 11 Oct 2023 13:17:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030223; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b+ua5OSM1Z4GkmDNpR3E8znaToy+otVjsm1tKrWTZSA=; b=pxyGmnw2zTcffghZTAMb4YSLcA6bex3YipTwy2c9B8ugYoaIJDsgy/Wm1teby8l0g7L0VG dc2qtaTfRsgpkQ4J70geNWYW9OFqGbv/FnGeukFOt5LNF25SQRFZFI7ML+EtlVVNy7hFv/ /HSp2blRA5dFZ4QiOGqKNbLcuvfTAsui1HVRLB4UVcqy5D2dVuLPmutXDXYVs5/HXsU7Eo liccaksx3R4ohZ3c4aRNW9deA875YBrmwRfcfyeSYVV98OU1RiiFhRhCIxlSy5pg0QTYXm OfWeS7A4tL/lJ0CMJIio+FRMM9WOKiefiZNEtK0Po0ga7KB7Dn2jVPv0ObxiSA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030223; a=rsa-sha256; cv=none; b=sKeWYQYASN400iVL/4VJuX6x4LhPY0KRvTDVwPhb9E5lVYKUHaGm3yv9LlA92U73hm/klo D+NHwUHpM3B5qD7s3FSRPWtKzTvmnOiUKLZXY5ntQzZlpa3P8m6qeeWBwIuAibdnLDWRA4 NHlu7mE4js5RrDbuTS6JPDkd5oHezfqvb0ckN91lXcxJTu+uRtZSmOt0JdiBhHIW07Ny1l COEwfPRlGIVAJH4cZT9d9+DB1ucsz4QVxfTdDHYz7AOA4ZauAgWnBZaYajdCtE6qHojJ17 B2wVhAKGZUG/aGLL08HCCx0aAN9iVO5xy4Cj2f83nkFq5JxFs2JlfPpLzmulig== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030223; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b+ua5OSM1Z4GkmDNpR3E8znaToy+otVjsm1tKrWTZSA=; b=LURQNPgXGUxELhJbCHgKmEXjHYLFcRH7+oeaDEMaZIWxnWDnxa6GuW9ScQFAgzANOI5t7G OJdb7czGumST/k8VGoiVT8v1KVe125RCkszS6GN7G3PkPUcN8F3rmx5xLuSVXz8nQIQQTm /OwWsF0svKDYYut+QB8jkCPXs/sZb4RJxnzB+HrpRRAOnCN6HbKnXUiQQl3gcoHfYzjyzQ kstV615awuBghtAjn61yzKqT3ZcO7V95z6fQml5lozMUgJki6ZUtswbtcgN9+udxqXfafR mGfmgtivgbms169zZmcAcmoCquWxgVbRTvYbHD8TH9EaMKSM86srJUc4DOTIdw== 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 4S5Cwb1W4Fz76s; Wed, 11 Oct 2023 13:17:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDH3QH073167; Wed, 11 Oct 2023 13:17:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDH3CH073164; Wed, 11 Oct 2023 13:17:03 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:17:03 GMT Message-Id: <202310111317.39BDH3CH073164@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: b973cdbb20c0 - stable/14 - axge: Add support for AX88179A List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b973cdbb20c0d281b226c081d3f2f79888373ba6 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=b973cdbb20c0d281b226c081d3f2f79888373ba6 commit b973cdbb20c0d281b226c081d3f2f79888373ba6 Author: Damien Broka AuthorDate: 2023-09-19 16:26:06 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:16:14 +0000 axge: Add support for AX88179A The AX88179A has two firmware modes, one of which is backward compatible with existing AX88178A/179 driver. The active firmware mode can be controlled through a register. Update axge(4) man page to mention 179A support and ensure that, when bound to a AX88179A, the driver activates the compatible firmware mode. Reviewed by: markj Pull Request: https://github.com/freebsd/freebsd-src/pull/854 MFC after: 1 week (cherry picked from commit 6962da914dd511349b219241e92b32329be76fc6) --- share/man/man4/axge.4 | 12 ++++++------ sys/dev/usb/net/if_axge.c | 39 +++++++++++++++++++++++++++++++-------- sys/dev/usb/net/if_axgereg.h | 7 +++++++ 3 files changed, 44 insertions(+), 14 deletions(-) diff --git a/share/man/man4/axge.4 b/share/man/man4/axge.4 index d42a1a233c59..9ca268d6ff83 100644 --- a/share/man/man4/axge.4 +++ b/share/man/man4/axge.4 @@ -28,12 +28,12 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd November 24, 2015 +.Dd October 4, 2023 .Dt AXGE 4 .Os .Sh NAME .Nm axge -.Nd "ASIX Electronics AX88178A/AX88179 USB Gigabit Ethernet driver" +.Nd "ASIX Electronics AX88178A/179/179A USB Gigabit Ethernet driver" .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -59,13 +59,13 @@ if_axge_load="YES" The .Nm driver provides support for USB Gigabit Ethernet adapters based on the ASIX -Electronics AX88179 USB 3.0 and AX88178A USB 2.0 chipsets. +Electronics AX88179/AX88179A USB 3.0 and AX88178A USB 2.0 chipsets. .Pp -The AX88179 and AX88178A contain a 10/100/1000 Ethernet MAC with a GMII -interface for interfacing with the Gigabit Ethernet PHY. +The AX88179, AX88179A and AX88178A contain a 10/100/1000 Ethernet MAC with a +GMII interface for interfacing with the Gigabit Ethernet PHY. .Pp These devices will operate with both USB 1.x and USB 2.0 controllers, and the -AX88179 will operate with USB 3.0 controllers. +AX88179/AX88179A will operate with USB 3.0 controllers. Packets are received and transmitted over separate USB bulk transfer endpoints. .Pp The diff --git a/sys/dev/usb/net/if_axge.c b/sys/dev/usb/net/if_axge.c index 385a982afd9d..cae1d61feb34 100644 --- a/sys/dev/usb/net/if_axge.c +++ b/sys/dev/usb/net/if_axge.c @@ -28,7 +28,8 @@ #include /* - * ASIX Electronics AX88178A/AX88179 USB 2.0/3.0 gigabit ethernet driver. + * ASIX Electronics AX88178A/AX88179/AX88179A USB 2.0/3.0 gigabit ethernet + * driver. */ #include @@ -70,13 +71,15 @@ */ static const STRUCT_USB_HOST_ID axge_devs[] = { -#define AXGE_DEV(v,p) { USB_VP(USB_VENDOR_##v, USB_PRODUCT_##v##_##p) } - AXGE_DEV(ASIX, AX88178A), - AXGE_DEV(ASIX, AX88179), - AXGE_DEV(BELKIN, B2B128), - AXGE_DEV(DLINK, DUB1312), - AXGE_DEV(LENOVO, GIGALAN), - AXGE_DEV(SITECOMEU, LN032), +#define AXGE_DEV(v,p,i,...) \ + { USB_VPI(USB_VENDOR_##v, USB_PRODUCT_##v##_##p, i), __VA_ARGS__ } + AXGE_DEV(ASIX, AX88178A, AXGE_FLAG_178A), + AXGE_DEV(ASIX, AX88179, AXGE_FLAG_179, USB_DEV_BCD_LTEQ(0x0100)), + AXGE_DEV(ASIX, AX88179, AXGE_FLAG_179A, USB_DEV_BCD_GTEQ(0x0200)), + AXGE_DEV(BELKIN, B2B128, AXGE_FLAG_179), + AXGE_DEV(DLINK, DUB1312, AXGE_FLAG_179), + AXGE_DEV(LENOVO, GIGALAN, AXGE_FLAG_179), + AXGE_DEV(SITECOMEU, LN032, AXGE_FLAG_179), #undef AXGE_DEV }; @@ -410,6 +413,24 @@ axge_chip_init(struct axge_softc *sc) axge_write_cmd_1(sc, AXGE_ACCESS_MAC, AXGE_CLK_SELECT, AXGE_CLK_SELECT_ACS | AXGE_CLK_SELECT_BCS); uether_pause(&sc->sc_ue, hz / 10); + + if ((sc->sc_flags & AXGE_FLAG_179A) != 0) { + /* + * 179A chip has two firmware modes that each use different + * transfer layouts for Ethernet over USB. The newer fw mode has + * larger rx packet headers which seem to + * accomodate for ethernet frames up to 9K length and a VLAN + * field for hardware tagging, but is not backward compatible + * with 178A/179 bulk transfer code due to the change in size + * and field alignments. The other fw mode uses the same packet + * headers as the older 178A/179 chips, which this driver uses. + * + * As we do not currently have VLAN hw tagging or jumbo support + * in this driver anyway, we're ok forcing 179A into its compat + * mode by default. + */ + axge_write_cmd_1(sc, AXGE_FW_MODE, AXGE_FW_MODE_178A179, 0); + } } static void @@ -551,6 +572,8 @@ axge_attach(device_t dev) device_set_usb_desc(dev); mtx_init(&sc->sc_mtx, device_get_nameunit(dev), NULL, MTX_DEF); + sc->sc_flags = USB_GET_DRIVER_INFO(uaa); + iface_index = AXGE_IFACE_IDX; error = usbd_transfer_setup(uaa->device, &iface_index, sc->sc_xfer, axge_config, AXGE_N_TRANSFER, sc, &sc->sc_mtx); diff --git a/sys/dev/usb/net/if_axgereg.h b/sys/dev/usb/net/if_axgereg.h index ea7a2c4a98b8..87e662b6cbc1 100644 --- a/sys/dev/usb/net/if_axgereg.h +++ b/sys/dev/usb/net/if_axgereg.h @@ -32,10 +32,14 @@ #define AXGE_ACCESS_EEPROM 0x04 #define AXGE_ACCESS_EFUSE 0x05 #define AXGE_RELOAD_EEPROM_EFUSE 0x06 +#define AXGE_FW_MODE 0x08 #define AXGE_WRITE_EFUSE_EN 0x09 #define AXGE_WRITE_EFUSE_DIS 0x0A #define AXGE_ACCESS_MFAB 0x10 +#define AXGE_FW_MODE_178A179 0x0000 +#define AXGE_FW_MODE_179A 0x0001 + /* Physical link status register */ #define AXGE_PLSR 0x02 #define PLSR_USB_FS 0x01 @@ -202,6 +206,9 @@ struct axge_softc { int sc_flags; #define AXGE_FLAG_LINK 0x0001 /* got a link */ +#define AXGE_FLAG_178A 0x1000 /* AX88178A */ +#define AXGE_FLAG_179 0x2000 /* AX88179 */ +#define AXGE_FLAG_179A 0x4000 /* AX88179A */ }; #define AXGE_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) From nobody Wed Oct 11 13:17:04 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5Cwc3bgpz4xN5v; Wed, 11 Oct 2023 13:17: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 4S5Cwc33xWz3Dqy; Wed, 11 Oct 2023 13:17:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030224; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hl+F+aQbNg7AZY5heXzlHLgFFeZpl7716EO4rd82rOo=; b=Fky9QTyPq0LzRCEiF/GKnauUt1iNll4KEEY3XFjU7CTyySKI5vm9ozAjkVvxjJJ1JJ2R4P Ynn1eQb7oe/LRylgq93w+cKOimMr0PIobft4mkyVfVnyIG0e46YtBdGNjwJXBrPBurUOZa vJPJ+8B4l0Au0Za44kxqfsjqscrq5c/dGkzVDViyJ8DAp8ZGOZvqPKeAJ26DZS8+Qk+4kO zpO3Nl6D9QTeALlqD3ViMWFOjZVevxG2fvEGo0i1nn7Pr4qq50e2hqm6/ZC9Vc7pvTBqlJ VKh67ouX2+z5XEZ+2mYTVlnEkWonQnlF6am5KSUsMnpuIbwXZN76a4zmBjdLXw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030224; a=rsa-sha256; cv=none; b=p+xEsLsiiSCQYWJydSI4eAsFfO86Dvo7IaXAsm5C3nYqppoZdeNAIOfUdxD6DwkfvfglII DjcrkbbMTD5gsHJng7yQlwfMAWPVnqc8aRw/u/s34ymd1yOrkyO8Oqh6u9Dev0aRsLFvsn IwG6GD7pHDV9gohKf07Pz6rXvlKh9zsM0ailkre2EYuetuEkb0C4PxCcprD3do46C4QtKW rAlYr46qdVLFBadVN+r38AxYuERaFfNhzbZenOWpKE+AQ2T65e+CLN58LeVvCZlAvD8hjv rjDrFgDT8ADs4gq1yLDN8JwCbOiUPGMaqU99+Sx7Tn3P+Foxte1/QFuFv93a0g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030224; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hl+F+aQbNg7AZY5heXzlHLgFFeZpl7716EO4rd82rOo=; b=KNxUgWvYrYh33PMODHYafp67nNXpsABUlL2QTlaQizVI/mNrVPDD2GevLU8UlhkzWV4104 ImgcGmfxV/FM/QOy8TNvcs3bHzMJjm2Sop7OEM8UiM/zPQ+F2Vk3TN4AEynfkH9kUijgWI fNikNGietMw5w0i4Hgitg47HtWkscC9LYtdc1NNBLX+Irh4KQg2b5rEc8y96F8qD5ErEKS pT9zC+eSbg/dIpbpAn6O12W9CdUTLH9flHcCSixbUDIUj7Pa4AI8eSzoPx631E1NWqn1I/ UIy/nKsGL65kG5oVpTe/FHHNMe4ts2XTlXY8KETSnkt7o0o/5J3/mgSogk7GuQ== 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 4S5Cwc1vqgz7Yh; Wed, 11 Oct 2023 13:17:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDH4DL073206; Wed, 11 Oct 2023 13:17:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDH4Il073203; Wed, 11 Oct 2023 13:17:04 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:17:04 GMT Message-Id: <202310111317.39BDH4Il073203@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: e94476a117ab - stable/14 - mount.8: Mention tarfs(5) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e94476a117abd30c37432299319fee57ed7dafac Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=e94476a117abd30c37432299319fee57ed7dafac commit e94476a117abd30c37432299319fee57ed7dafac Author: Jose Luis Duran AuthorDate: 2023-10-04 15:42:40 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:16:39 +0000 mount.8: Mention tarfs(5) Reviewed by: markj MFC after: 1 week Pull Request: https://github.com/freebsd/freebsd-src/pull/856 (cherry picked from commit 4b38c532efb9845898d63546da57d843b3b1c1a6) --- sbin/mount/mount.8 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sbin/mount/mount.8 b/sbin/mount/mount.8 index 5632ad678ffb..91e697bdc3b8 100644 --- a/sbin/mount/mount.8 +++ b/sbin/mount/mount.8 @@ -27,7 +27,7 @@ .\" .\" @(#)mount.8 8.8 (Berkeley) 6/16/94 .\" -.Dd March 17, 2022 +.Dd October 4, 2023 .Dt MOUNT 8 .Os .Sh NAME @@ -569,6 +569,7 @@ support for a particular file system might be provided either on a static .Xr ext2fs 5 , .Xr fstab 5 , .Xr procfs 5 , +.Xr tarfs 5 , .Xr tmpfs 5 , .Xr automount 8 , .Xr fstyp 8 , From nobody Wed Oct 11 13:18:43 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5CyW2Xm4z4xNRS; Wed, 11 Oct 2023 13:18:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5CyW1nJhz3FFq; Wed, 11 Oct 2023 13:18:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030323; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dqNAlkGwG7X7vpt7aawitSvz5nW+BAMpxDzhlBZXtys=; b=s/WdsDKbr0ps6EZRcXtBUHKysj40n3LiANMeKyut+MuCzMcwYBD7CxdnEzis+r1uzsN1ek VadqA7EzeRUKkftryYdtGL7EN/1w0b9Fg0Mb0VXNYK+/zQo4Vcjr0Hm77u8t2KdemERWrz xFRWdwxn85EBmbN/3iiMfou8SUEklNZdD5LSVUDnMzPo4SvwsW9TKMotdE53okL4jiitDu tMk2xAY5ZTz12T3DOASFaPRvgIaaxlqqAIKkUD4Zjv8+KVULV1zNBw5jnSRBJd78fUsZbj Uf8w85VugUbv/fib38C4klEw9++5n46CfnEwcR1zaqkB5x5Bogk1KmBsW8bSPQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030323; a=rsa-sha256; cv=none; b=T9j0RVay74HzdIMB92cOlCEw1Wb3cpHQl7VLppV9Ma3fAqtZ3vLCZWhSHMXtFP+bqBoOcV fEk9OrIRb3Q6TTto4XSw5T/G+Swr7MBWe2IFIifLXzoTNW8Ea2KwOG4UHTiXy+62sceQkI e3vxUwUCklrutQV4eAkNacoGus3TM4RcVO3EsVQTEuj/pgNd5bHAHNSa1O4s1UmKYY+QrY JPrCcQCoSiVdGQU2ww2Ax00jrsuV6sk7WSvWj+qwwhtjbeFE6kIqMA62PC85xE6Zvf0/CY 6MRPepf8Drrv0Ps1qFM2y0P2pKH+kG7cfq01HSNqzRH8aLc/UAVojZWe7gI1tg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030323; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dqNAlkGwG7X7vpt7aawitSvz5nW+BAMpxDzhlBZXtys=; b=oNSWrUZpGf4bWMIdwSxR8s6mUCika8ewfzL3BDTcKmJzz8VA7NgZzandH9xa1WVH/dfvyO XKmU2ZvmKMkFZtfUXRoj1P55cE3Oa3iqHVFOS8T/apq0U83aMeIDFGIuu4K9vTsW0KqU22 Pkml+5bek1P/suNom1wifE0ZQSoQuz1WHDNCnrFomUr/qvWM+tILNaRaN5yaYVd9swjyw/ jb06cXU5typMRrZxH3Xx4la9H/UNIQqZ5OE/fSSgh3wlfv+/MWLE7MkHaRSHFbb7StB40K Cz+B84aqL8B86HqqQTx4h4ytjuMNN7xZb5GPBl6H41WnoCq22vZ1m0DcQiVljg== 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 4S5CyW0ny3z7J5; Wed, 11 Oct 2023 13:18:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDIhfC073541; Wed, 11 Oct 2023 13:18:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDIhSG073538; Wed, 11 Oct 2023 13:18:43 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:18:43 GMT Message-Id: <202310111318.39BDIhSG073538@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: e4a51dbf5d8d - stable/13 - axge: Add support for AX88179A List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: e4a51dbf5d8d75766519a8f775f30b5026227072 Auto-Submitted: auto-generated The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=e4a51dbf5d8d75766519a8f775f30b5026227072 commit e4a51dbf5d8d75766519a8f775f30b5026227072 Author: Damien Broka AuthorDate: 2023-09-19 16:26:06 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:18:25 +0000 axge: Add support for AX88179A The AX88179A has two firmware modes, one of which is backward compatible with existing AX88178A/179 driver. The active firmware mode can be controlled through a register. Update axge(4) man page to mention 179A support and ensure that, when bound to a AX88179A, the driver activates the compatible firmware mode. Reviewed by: markj Pull Request: https://github.com/freebsd/freebsd-src/pull/854 MFC after: 1 week (cherry picked from commit 6962da914dd511349b219241e92b32329be76fc6) --- share/man/man4/axge.4 | 12 ++++++------ sys/dev/usb/net/if_axge.c | 39 +++++++++++++++++++++++++++++++-------- sys/dev/usb/net/if_axgereg.h | 7 +++++++ 3 files changed, 44 insertions(+), 14 deletions(-) diff --git a/share/man/man4/axge.4 b/share/man/man4/axge.4 index d42a1a233c59..9ca268d6ff83 100644 --- a/share/man/man4/axge.4 +++ b/share/man/man4/axge.4 @@ -28,12 +28,12 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd November 24, 2015 +.Dd October 4, 2023 .Dt AXGE 4 .Os .Sh NAME .Nm axge -.Nd "ASIX Electronics AX88178A/AX88179 USB Gigabit Ethernet driver" +.Nd "ASIX Electronics AX88178A/179/179A USB Gigabit Ethernet driver" .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -59,13 +59,13 @@ if_axge_load="YES" The .Nm driver provides support for USB Gigabit Ethernet adapters based on the ASIX -Electronics AX88179 USB 3.0 and AX88178A USB 2.0 chipsets. +Electronics AX88179/AX88179A USB 3.0 and AX88178A USB 2.0 chipsets. .Pp -The AX88179 and AX88178A contain a 10/100/1000 Ethernet MAC with a GMII -interface for interfacing with the Gigabit Ethernet PHY. +The AX88179, AX88179A and AX88178A contain a 10/100/1000 Ethernet MAC with a +GMII interface for interfacing with the Gigabit Ethernet PHY. .Pp These devices will operate with both USB 1.x and USB 2.0 controllers, and the -AX88179 will operate with USB 3.0 controllers. +AX88179/AX88179A will operate with USB 3.0 controllers. Packets are received and transmitted over separate USB bulk transfer endpoints. .Pp The diff --git a/sys/dev/usb/net/if_axge.c b/sys/dev/usb/net/if_axge.c index 5cabad95c07f..9cd9c15515cb 100644 --- a/sys/dev/usb/net/if_axge.c +++ b/sys/dev/usb/net/if_axge.c @@ -28,7 +28,8 @@ #include /* - * ASIX Electronics AX88178A/AX88179 USB 2.0/3.0 gigabit ethernet driver. + * ASIX Electronics AX88178A/AX88179/AX88179A USB 2.0/3.0 gigabit ethernet + * driver. */ #include @@ -70,13 +71,15 @@ */ static const STRUCT_USB_HOST_ID axge_devs[] = { -#define AXGE_DEV(v,p) { USB_VP(USB_VENDOR_##v, USB_PRODUCT_##v##_##p) } - AXGE_DEV(ASIX, AX88178A), - AXGE_DEV(ASIX, AX88179), - AXGE_DEV(BELKIN, B2B128), - AXGE_DEV(DLINK, DUB1312), - AXGE_DEV(LENOVO, GIGALAN), - AXGE_DEV(SITECOMEU, LN032), +#define AXGE_DEV(v,p,i,...) \ + { USB_VPI(USB_VENDOR_##v, USB_PRODUCT_##v##_##p, i), __VA_ARGS__ } + AXGE_DEV(ASIX, AX88178A, AXGE_FLAG_178A), + AXGE_DEV(ASIX, AX88179, AXGE_FLAG_179, USB_DEV_BCD_LTEQ(0x0100)), + AXGE_DEV(ASIX, AX88179, AXGE_FLAG_179A, USB_DEV_BCD_GTEQ(0x0200)), + AXGE_DEV(BELKIN, B2B128, AXGE_FLAG_179), + AXGE_DEV(DLINK, DUB1312, AXGE_FLAG_179), + AXGE_DEV(LENOVO, GIGALAN, AXGE_FLAG_179), + AXGE_DEV(SITECOMEU, LN032, AXGE_FLAG_179), #undef AXGE_DEV }; @@ -412,6 +415,24 @@ axge_chip_init(struct axge_softc *sc) axge_write_cmd_1(sc, AXGE_ACCESS_MAC, AXGE_CLK_SELECT, AXGE_CLK_SELECT_ACS | AXGE_CLK_SELECT_BCS); uether_pause(&sc->sc_ue, hz / 10); + + if ((sc->sc_flags & AXGE_FLAG_179A) != 0) { + /* + * 179A chip has two firmware modes that each use different + * transfer layouts for Ethernet over USB. The newer fw mode has + * larger rx packet headers which seem to + * accomodate for ethernet frames up to 9K length and a VLAN + * field for hardware tagging, but is not backward compatible + * with 178A/179 bulk transfer code due to the change in size + * and field alignments. The other fw mode uses the same packet + * headers as the older 178A/179 chips, which this driver uses. + * + * As we do not currently have VLAN hw tagging or jumbo support + * in this driver anyway, we're ok forcing 179A into its compat + * mode by default. + */ + axge_write_cmd_1(sc, AXGE_FW_MODE, AXGE_FW_MODE_178A179, 0); + } } static void @@ -554,6 +575,8 @@ axge_attach(device_t dev) device_set_usb_desc(dev); mtx_init(&sc->sc_mtx, device_get_nameunit(dev), NULL, MTX_DEF); + sc->sc_flags = USB_GET_DRIVER_INFO(uaa); + iface_index = AXGE_IFACE_IDX; error = usbd_transfer_setup(uaa->device, &iface_index, sc->sc_xfer, axge_config, AXGE_N_TRANSFER, sc, &sc->sc_mtx); diff --git a/sys/dev/usb/net/if_axgereg.h b/sys/dev/usb/net/if_axgereg.h index ea7a2c4a98b8..87e662b6cbc1 100644 --- a/sys/dev/usb/net/if_axgereg.h +++ b/sys/dev/usb/net/if_axgereg.h @@ -32,10 +32,14 @@ #define AXGE_ACCESS_EEPROM 0x04 #define AXGE_ACCESS_EFUSE 0x05 #define AXGE_RELOAD_EEPROM_EFUSE 0x06 +#define AXGE_FW_MODE 0x08 #define AXGE_WRITE_EFUSE_EN 0x09 #define AXGE_WRITE_EFUSE_DIS 0x0A #define AXGE_ACCESS_MFAB 0x10 +#define AXGE_FW_MODE_178A179 0x0000 +#define AXGE_FW_MODE_179A 0x0001 + /* Physical link status register */ #define AXGE_PLSR 0x02 #define PLSR_USB_FS 0x01 @@ -202,6 +206,9 @@ struct axge_softc { int sc_flags; #define AXGE_FLAG_LINK 0x0001 /* got a link */ +#define AXGE_FLAG_178A 0x1000 /* AX88178A */ +#define AXGE_FLAG_179 0x2000 /* AX88179 */ +#define AXGE_FLAG_179A 0x4000 /* AX88179A */ }; #define AXGE_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) From nobody Wed Oct 11 13:25:00 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D5n19gfz4xNZT; Wed, 11 Oct 2023 13:25: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 4S5D5m6Bvrz3G6J; Wed, 11 Oct 2023 13:25:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030700; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7PqxS7Q+HE2tWxw5r59Hxjt/3A34jL+LVOQsdYvdsk0=; b=JVLi+hEycpgBshO4mVP9u5pqMZj3anQBMBpBkZ6hW6ZsUUOVCfW6VDM8goIOVrobrz/X5R P8NcqMXkuL54efd+hxPfDBbcOEaT6sJSM9nA6FBPFwtMPBeXe7U+XOyCGNXc4ZA6cGgGNy 9X85YralN/bE/C3abWvhkjLXdVOnAGOuz5VMw5bTrwKDW1JQMVvNHwj4xJS1F1RBIbYLj8 xYHBJv8RFwP+MrqTeLOEXxqxo9cl4uc23oICU9L9KFbSvYYiTakZ/G+XYXoRzJ/4zHAFtO MvOmrqF6EcLHoDSSjJl+BVgjfYAYh+GYYOFQ75kh3GVY7G3Mp36synmQIoZBxg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030700; a=rsa-sha256; cv=none; b=hYoxgtcFRO+Z3Ch1Y51UGZ7Z9yG8hiZiWpnfIcoR6EdpL4VsyuB6fM3YGXv5CGVGEqsgFV mEa+CDIE4fPVuc7sgnoGjNi0bxMqGMDqiuyN/WSnyKgvArJ4XF+cau7DZ9IRb8Zp71xapc FoDnDtnSgPyFXaqeHR3ryVK7bzW0lG5WPuS2o+ZZ5tHA1bNjPghpE3XFSPNEFDqyDFNDnV /gDYwz8jUfVvJ8RiPgmzDvh9w9PfO2denhuJKPv2X5xevi2FJAkDFSzZetNJaQG34EzRYk IO9BWwZuE3zx2kOB60dgiosct5QZs0oauuz/RB0cGIoG/6acLmMOQc7+t/Sbaw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030700; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7PqxS7Q+HE2tWxw5r59Hxjt/3A34jL+LVOQsdYvdsk0=; b=NrWoz9AseXJJ+7RRNynkcA+o92jxzrhHB8VXhUVX84neEhUN9qcIr0kpAsQGTKixPgTVom QKUAV6nNm92XhwPSRAuIsEK2oPN0wk0dAU5Q19pZHjpr5f0QALT5WYdXiLQKb/HB43WLkB RsDW+mGHv8Jzd1wqkDrKGRZjtHCetTko9t9Ayg4LV4NKl9MyyhEF/TME2sQjnNXgEaUUNb KKVSr3P0PZPt62gltdKMJ+vBMraDIB+lO++1DtntXKhyGK8CAJm11hT1BUWvvIkqnMcwKp spgBgEq5PexYL3oeuUnQRTuFGcMIiXOh/TMKuRdO/ThT/d4wzjkzE8IBL7MUJQ== 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 4S5D5m5H1Fz7MJ; Wed, 11 Oct 2023 13:25:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDP053089749; Wed, 11 Oct 2023 13:25:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDP0io089746; Wed, 11 Oct 2023 13:25:00 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:00 GMT Message-Id: <202310111325.39BDP0io089746@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 24682747b437 - stable/14 - bhyve: Improve pcifd function naming List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 24682747b437ce8626b7e6e1c3085012a6aa9458 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=24682747b437ce8626b7e6e1c3085012a6aa9458 commit 24682747b437ce8626b7e6e1c3085012a6aa9458 Author: Mark Johnston AuthorDate: 2023-10-04 16:19:58 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:21:48 +0000 bhyve: Improve pcifd function naming read_config() and write_config() are externally visible, so give them more descriptive names. No functional change intended. MFC after: 1 week Sponsored by: Innovate UK (cherry picked from commit 01d53c34e79afaad757088e5fbb4846f02a8beca) --- usr.sbin/bhyve/pci_emul.c | 2 +- usr.sbin/bhyve/pci_gvt-d.c | 8 ++++---- usr.sbin/bhyve/pci_lpc.c | 9 +++++---- usr.sbin/bhyve/pci_passthru.c | 40 +++++++++++++++++++++++----------------- usr.sbin/bhyve/pci_passthru.h | 6 ++++-- 5 files changed, 37 insertions(+), 28 deletions(-) diff --git a/usr.sbin/bhyve/pci_emul.c b/usr.sbin/bhyve/pci_emul.c index 3c34d0e22478..5fb25dbfe9c7 100644 --- a/usr.sbin/bhyve/pci_emul.c +++ b/usr.sbin/bhyve/pci_emul.c @@ -375,7 +375,7 @@ pci_config_read_reg(const struct pcisel *const host_sel, nvlist_t *nvl, if (config == NULL) { return def; } else if (host_sel != NULL && strcmp(config, "host") == 0) { - return read_config(host_sel, reg, size); + return pci_host_read_config(host_sel, reg, size); } else { return strtol(config, NULL, 16); } diff --git a/usr.sbin/bhyve/pci_gvt-d.c b/usr.sbin/bhyve/pci_gvt-d.c index 35c7f30dd292..78fa9878358e 100644 --- a/usr.sbin/bhyve/pci_gvt-d.c +++ b/usr.sbin/bhyve/pci_gvt-d.c @@ -49,11 +49,11 @@ gvt_d_probe(struct pci_devinst *const pi) sc = pi->pi_arg; - vendor = read_config(passthru_get_sel(sc), PCIR_VENDOR, 0x02); + vendor = pci_host_read_config(passthru_get_sel(sc), PCIR_VENDOR, 0x02); if (vendor != PCI_VENDOR_INTEL) return (ENXIO); - class = read_config(passthru_get_sel(sc), PCIR_CLASS, 0x01); + class = pci_host_read_config(passthru_get_sel(sc), PCIR_CLASS, 0x01); if (class != PCIC_DISPLAY) return (ENXIO); @@ -169,7 +169,7 @@ gvt_d_setup_gsm(struct pci_devinst *const pi) "Warning: Unable to reuse host address of Graphics Stolen Memory. GPU passthrough might not work properly."); } - bdsm = read_config(passthru_get_sel(sc), PCIR_BDSM, 4); + bdsm = pci_host_read_config(passthru_get_sel(sc), PCIR_BDSM, 4); pci_set_cfgdata32(pi, PCIR_BDSM, gsm->gpa | (bdsm & (PCIM_BDSM_GSM_ALIGNMENT - 1))); @@ -201,7 +201,7 @@ gvt_d_setup_opregion(struct pci_devinst *const pi) return (-1); } - asls = read_config(passthru_get_sel(sc), PCIR_ASLS_CTL, 4); + asls = pci_host_read_config(passthru_get_sel(sc), PCIR_ASLS_CTL, 4); header = mmap(NULL, sizeof(*header), PROT_READ, MAP_SHARED, memfd, asls); diff --git a/usr.sbin/bhyve/pci_lpc.c b/usr.sbin/bhyve/pci_lpc.c index 2ff9bbc27774..5c2a2a7965b0 100644 --- a/usr.sbin/bhyve/pci_lpc.c +++ b/usr.sbin/bhyve/pci_lpc.c @@ -485,15 +485,16 @@ pci_lpc_get_sel(struct pcisel *const sel) sel->pc_dev = slot; sel->pc_func = 0; - if (read_config(sel, PCIR_HDRTYPE, 1) & PCIM_MFDEV) + if (pci_host_read_config(sel, PCIR_HDRTYPE, 1) & PCIM_MFDEV) max_func = PCI_FUNCMAX; for (uint8_t func = 0; func <= max_func; ++func) { sel->pc_func = func; - if ((read_config(sel, PCIR_CLASS, 1) == PCIC_BRIDGE) && - (read_config(sel, PCIR_SUBCLASS, 1) == - PCIS_BRIDGE_ISA)) { + if (pci_host_read_config(sel, PCIR_CLASS, 1) == + PCIC_BRIDGE && + pci_host_read_config(sel, PCIR_SUBCLASS, 1) == + PCIS_BRIDGE_ISA) { return (0); } } diff --git a/usr.sbin/bhyve/pci_passthru.c b/usr.sbin/bhyve/pci_passthru.c index fa23358c07a2..0a80ee649689 100644 --- a/usr.sbin/bhyve/pci_passthru.c +++ b/usr.sbin/bhyve/pci_passthru.c @@ -145,7 +145,7 @@ pcifd_init(void) } uint32_t -read_config(const struct pcisel *sel, long reg, int width) +pci_host_read_config(const struct pcisel *sel, long reg, int width) { struct pci_io pi; @@ -165,7 +165,8 @@ read_config(const struct pcisel *sel, long reg, int width) } void -write_config(const struct pcisel *sel, long reg, int width, uint32_t data) +pci_host_write_config(const struct pcisel *sel, long reg, int width, + uint32_t data) { struct pci_io pi; @@ -224,24 +225,25 @@ cfginitmsi(struct passthru_softc *sc) * Parse the capabilities and cache the location of the MSI * and MSI-X capabilities. */ - sts = read_config(&sel, PCIR_STATUS, 2); + sts = pci_host_read_config(&sel, PCIR_STATUS, 2); if (sts & PCIM_STATUS_CAPPRESENT) { - ptr = read_config(&sel, PCIR_CAP_PTR, 1); + ptr = pci_host_read_config(&sel, PCIR_CAP_PTR, 1); while (ptr != 0 && ptr != 0xff) { - cap = read_config(&sel, ptr + PCICAP_ID, 1); + cap = pci_host_read_config(&sel, ptr + PCICAP_ID, 1); if (cap == PCIY_MSI) { /* * Copy the MSI capability into the config * space of the emulated pci device */ sc->psc_msi.capoff = ptr; - sc->psc_msi.msgctrl = read_config(&sel, - ptr + 2, 2); + sc->psc_msi.msgctrl = pci_host_read_config(&sel, + ptr + 2, 2); sc->psc_msi.emulated = 0; caplen = msi_caplen(sc->psc_msi.msgctrl); capptr = ptr; while (caplen > 0) { - u32 = read_config(&sel, capptr, 4); + u32 = pci_host_read_config(&sel, capptr, + 4); pci_set_cfgdata32(pi, capptr, u32); caplen -= 4; capptr += 4; @@ -255,7 +257,8 @@ cfginitmsi(struct passthru_softc *sc) msixcap_ptr = (char *)&msixcap; capptr = ptr; while (caplen > 0) { - u32 = read_config(&sel, capptr, 4); + u32 = pci_host_read_config(&sel, capptr, + 4); memcpy(msixcap_ptr, &u32, 4); pci_set_cfgdata32(pi, capptr, u32); caplen -= 4; @@ -263,7 +266,8 @@ cfginitmsi(struct passthru_softc *sc) msixcap_ptr += 4; } } - ptr = read_config(&sel, ptr + PCICAP_NEXTPTR, 1); + ptr = pci_host_read_config(&sel, ptr + PCICAP_NEXTPTR, + 1); } } @@ -298,7 +302,7 @@ cfginitmsi(struct passthru_softc *sc) */ if ((sts & PCIM_STATUS_CAPPRESENT) != 0 && sc->psc_msi.capoff == 0) { int origptr, msiptr; - origptr = read_config(&sel, PCIR_CAP_PTR, 1); + origptr = pci_host_read_config(&sel, PCIR_CAP_PTR, 1); msiptr = passthru_add_msicap(pi, 1, origptr); sc->psc_msi.capoff = msiptr; sc->psc_msi.msgctrl = pci_get_cfgdata16(pi, msiptr + 2); @@ -577,7 +581,8 @@ cfginitbar(struct passthru_softc *sc) return (-1); /* Use same lobits as physical bar */ - uint8_t lobits = read_config(&sc->psc_sel, PCIR_BAR(i), 0x01); + uint8_t lobits = pci_host_read_config(&sc->psc_sel, PCIR_BAR(i), + 0x01); if (bartype == PCIBAR_MEM32 || bartype == PCIBAR_MEM64) { lobits &= ~PCIM_BAR_MEM_BASE; } else { @@ -621,7 +626,8 @@ cfginit(struct pci_devinst *pi, int bus, int slot, int func) intline = pci_get_cfgdata8(pi, PCIR_INTLINE); intpin = pci_get_cfgdata8(pi, PCIR_INTPIN); for (int i = 0; i <= PCIR_MAXLAT; i += 4) { - pci_set_cfgdata32(pi, i, read_config(&sc->psc_sel, i, 4)); + pci_set_cfgdata32(pi, i, + pci_host_read_config(&sc->psc_sel, i, 4)); } pci_set_cfgdata8(pi, PCIR_INTLINE, intline); pci_set_cfgdata8(pi, PCIR_INTPIN, intpin); @@ -638,7 +644,7 @@ cfginit(struct pci_devinst *pi, int bus, int slot, int func) goto done; } - write_config(&sc->psc_sel, PCIR_COMMAND, 2, + pci_host_write_config(&sc->psc_sel, PCIR_COMMAND, 2, pci_get_cfgdata16(pi, PCIR_COMMAND)); /* @@ -988,13 +994,13 @@ passthru_cfgread_default(struct passthru_softc *sc, if (coff == PCIR_COMMAND) { if (bytes <= 2) return (-1); - *rv = read_config(&sc->psc_sel, PCIR_STATUS, 2) << 16 | + *rv = pci_host_read_config(&sc->psc_sel, PCIR_STATUS, 2) << 16 | pci_get_cfgdata16(pi, PCIR_COMMAND); return (0); } /* Everything else just read from the device's config space */ - *rv = read_config(&sc->psc_sel, coff, bytes); + *rv = pci_host_read_config(&sc->psc_sel, coff, bytes); return (0); } @@ -1080,7 +1086,7 @@ passthru_cfgwrite_default(struct passthru_softc *sc, struct pci_devinst *pi, } #endif - write_config(&sc->psc_sel, coff, bytes, val); + pci_host_write_config(&sc->psc_sel, coff, bytes, val); if (coff == PCIR_COMMAND) { cmd_old = pci_get_cfgdata16(pi, PCIR_COMMAND); if (bytes == 1) diff --git a/usr.sbin/bhyve/pci_passthru.h b/usr.sbin/bhyve/pci_passthru.h index 49d2bb309f71..a89ad287cbc5 100644 --- a/usr.sbin/bhyve/pci_passthru.h +++ b/usr.sbin/bhyve/pci_passthru.h @@ -36,8 +36,10 @@ typedef int (*cfgread_handler)(struct passthru_softc *sc, typedef int (*cfgwrite_handler)(struct passthru_softc *sc, struct pci_devinst *pi, int coff, int bytes, uint32_t val); -uint32_t read_config(const struct pcisel *sel, long reg, int width); -void write_config(const struct pcisel *sel, long reg, int width, uint32_t data); +uint32_t pci_host_read_config(const struct pcisel *sel, long reg, int width); +void pci_host_write_config(const struct pcisel *sel, long reg, int width, + uint32_t data); + int passthru_cfgread_emulate(struct passthru_softc *sc, struct pci_devinst *pi, int coff, int bytes, uint32_t *rv); int passthru_cfgwrite_emulate(struct passthru_softc *sc, struct pci_devinst *pi, From nobody Wed Oct 11 13:25:01 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D5p0yZqz4xNxt; Wed, 11 Oct 2023 13:25:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5D5p0DVtz3FlQ; Wed, 11 Oct 2023 13:25:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030702; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R5Gi955eWTb4W4gQYqCmTjUm2ITtPYlwdPmMJQovuQo=; b=nzurTiEMHed0+GY5Ywcc1asOVZ4MMU8AHnRjECX2cHUxWW4s3dVuI0pjJpxqjna4kMqDLU ce0QSgySJtsSW+V7SHI1a3xoRAVEt5/2bIUs90bWhBgscHYIKNhc5cwkLCxH6beRkwo59A W0LgT1tjzt5/IDOewW39j2dDo0pW+tNJ47HAGC5y0HuanEmSB+8I3j0Xv2b3Dq0yRm6J6f JA3Nv/8tL/WMSjVXugxVjmDlYFe5xYfQ8uBd9XoBfLX6EmNdAsMYjRz2tmsE+6zXUMrP5B xGaE50rL+fKOKLwnqMlcPwgGgXZrt8OA5lhqLZMg8dhAw5cxvZzMTOePg+XEow== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030702; a=rsa-sha256; cv=none; b=m41Pi3RftTCE6xVHfwhnfbwwqiUkuHJ+pmMXrDuQhAsZ2YfAPWhBQ+p4XvoFg3nJ5sRxS/ TgSmU9oYs9BpsoI2P2pr5VQCjxheq71rXZ0waDF9pEhTY/SE7jgSgjCuYkCPpLsruHe1Bs jImMsK6A+nPS7OjyGiYatbNBw6bJydfCi7Bqsbo5KyhYBdHdKmtVaP48nx544VtWQB0Z5n tDRkNR1jmON8Y+2GvHU7PAXEzvYY8paFyRGhuUcF7rAUWZ74TcrIrZNsOjLEVNPJ/JNQ/2 jEHSlHkFoESiYhC+cdvMGuwmppjWP4j+09DMfIvAl2ycwDbk1E1E/H0Chj6SiA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030702; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R5Gi955eWTb4W4gQYqCmTjUm2ITtPYlwdPmMJQovuQo=; b=Qtykvnfou8TEHjomGuwxpy5PPvCcgSEevRZQOK88ZQRW+00VHdnLfQkWqxbWCFKBzaizXh Xuzs0hwiZaokXREWVJa68U0NhGqU32evA/XP+Cb99zWit+EK+/IKKSWakZPqFPg29VKYdL Iqy+Srxrs/oEG7wamDL7weetErPeukIl5ahCGIaTVF0v8NLP8lE7BHRfm6z9dBAVJhLxDq XWqzifV4TUxY9UeZ0MDzOwWqypEvtXOqcWgEyBNEYj42Kicee+6V15jRIZx+p9s6p8BCyZ piZ+fBty8OYMyCpf0CLmp0q0o/qa/afQQ9+BXMSdnHGmbQfiNur4I0PBGnLbTg== 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 4S5D5n64jbz7cs; Wed, 11 Oct 2023 13:25:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDP15J089797; Wed, 11 Oct 2023 13:25:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDP1wF089794; Wed, 11 Oct 2023 13:25:01 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:01 GMT Message-Id: <202310111325.39BDP1wF089794@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 63a45512b2b7 - stable/14 - bhyve: Start moving machine-dependent code into subdirectories List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 63a45512b2b7c5248af54ce32200f3fac31b7a6a Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=63a45512b2b7c5248af54ce32200f3fac31b7a6a commit 63a45512b2b7c5248af54ce32200f3fac31b7a6a Author: Mark Johnston AuthorDate: 2023-10-04 16:20:37 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:21:51 +0000 bhyve: Start moving machine-dependent code into subdirectories In preparation for an arm64 port, make an easy change which puts some machine-dependent code in its own directory. Going forward, code which is only used on one platform should live in a MD directory. We should strive to layer modules in such a way as to avoid polluting shared code with lots of ifdefs. For some existing files this will take some effort. task_switch.c and fwctl.c are an easy place to start: the former is very x86-specific, and the latter provides an I/O port interface which can't be used on anything other than x86. (fwcfg as implemented has the same problem, but QEMU also supports a MMIO fwcfg interface.) So I propose that we start by simply making those files conditional. Reviewed by: corvink, jhb MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40501 (cherry picked from commit 4f2bd4027b3261d159f6d673dc9ee9e84b4a3538) --- usr.sbin/bhyve/Makefile | 16 +++++++++------- usr.sbin/bhyve/amd64/Makefile.inc | 6 ++++++ usr.sbin/bhyve/{ => amd64}/fwctl.c | 0 usr.sbin/bhyve/{ => amd64}/fwctl.h | 0 usr.sbin/bhyve/{ => amd64}/task_switch.c | 2 ++ usr.sbin/bhyve/bhyverun.c | 8 +++++++- usr.sbin/bhyve/bhyverun.h | 2 -- usr.sbin/bhyve/snapshot.c | 1 - 8 files changed, 24 insertions(+), 11 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index a720c6b3c7a4..794bfbe4c8a3 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -2,9 +2,6 @@ # .include -CFLAGS+=-I${.CURDIR}/../../contrib/lib9p -CFLAGS+=-I${SRCTOP}/sys -.PATH: ${SRCTOP}/sys/libkern ${SRCTOP}/sys/cam/ctl PROG= bhyve PACKAGE= bhyve @@ -13,6 +10,10 @@ MAN= bhyve.8 bhyve_config.5 BHYVE_SYSDIR?=${SRCTOP} +.PATH: ${.CURDIR}/${MACHINE_CPUARCH} \ + ${SRCTOP}/sys/libkern \ + ${SRCTOP}/sys/cam/ctl + SRCS= \ acpi.c \ acpi_device.c \ @@ -29,7 +30,6 @@ SRCS= \ ctl_scsi_all.c \ ctl_util.c \ e820.c \ - fwctl.c \ gdb.c \ hda_codec.c \ inout.c \ @@ -73,7 +73,6 @@ SRCS= \ smbiostbl.c \ sockstream.c \ spinup_ap.c \ - task_switch.c \ tpm_device.c \ tpm_emul_passthru.c \ tpm_intf_crb.c \ @@ -90,10 +89,13 @@ SRCS= \ SRCS+= snapshot.c .endif +.include "${MACHINE_CPUARCH}/Makefile.inc" + CFLAGS.kernemu_dev.c+= -I${SRCTOP}/sys/amd64 -.PATH: ${BHYVE_SYSDIR}/sys/amd64/vmm -SRCS+= vmm_instruction_emul.c +CFLAGS+=-I${.CURDIR} \ + -I${.CURDIR}/../../contrib/lib9p \ + -I${SRCTOP}/sys LIBADD= vmmapi md nv pthread z util sbuf cam 9p diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc new file mode 100644 index 000000000000..62de5f211a23 --- /dev/null +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -0,0 +1,6 @@ +SRCS+= \ + fwctl.c \ + task_switch.c + +.PATH: ${BHYVE_SYSDIR}/sys/amd64/vmm +SRCS+= vmm_instruction_emul.c diff --git a/usr.sbin/bhyve/fwctl.c b/usr.sbin/bhyve/amd64/fwctl.c similarity index 100% rename from usr.sbin/bhyve/fwctl.c rename to usr.sbin/bhyve/amd64/fwctl.c diff --git a/usr.sbin/bhyve/fwctl.h b/usr.sbin/bhyve/amd64/fwctl.h similarity index 100% rename from usr.sbin/bhyve/fwctl.h rename to usr.sbin/bhyve/amd64/fwctl.h diff --git a/usr.sbin/bhyve/task_switch.c b/usr.sbin/bhyve/amd64/task_switch.c similarity index 99% rename from usr.sbin/bhyve/task_switch.c rename to usr.sbin/bhyve/amd64/task_switch.c index 351df7fb738b..c316d18142a7 100644 --- a/usr.sbin/bhyve/task_switch.c +++ b/usr.sbin/bhyve/amd64/task_switch.c @@ -700,6 +700,8 @@ push_errcode(struct vcpu *vcpu, struct vm_guest_paging *paging, return (VMEXIT_CONTINUE); \ } while (0) +int vmexit_task_switch(struct vmctx *, struct vcpu *, struct vm_run *); + int vmexit_task_switch(struct vmctx *ctx, struct vcpu *vcpu, struct vm_run *vmrun) { diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index 3db796c65a28..229527e580d5 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -88,7 +88,9 @@ #include "inout.h" #include "debug.h" #include "e820.h" -#include "fwctl.h" +#ifdef __amd64__ +#include "amd64/fwctl.h" +#endif #include "gdb.h" #include "ioapic.h" #include "kernemu_dev.h" @@ -921,6 +923,8 @@ vmexit_ipi(struct vmctx *ctx __unused, struct vcpu *vcpu __unused, return (error); } +int vmexit_task_switch(struct vmctx *, struct vcpu *, struct vm_run *); + static const vmexit_handler_t handler[VM_EXITCODE_MAX] = { [VM_EXITCODE_INOUT] = vmexit_inout, [VM_EXITCODE_INOUT_STR] = vmexit_inout, @@ -1572,9 +1576,11 @@ main(int argc, char *argv[]) } free(e820_fwcfg_item); +#ifdef __amd64__ if (lpc_bootrom() && strcmp(lpc_fwcfg(), "bhyve") == 0) { fwctl_init(); } +#endif /* * Change the proc title to include the VM name. diff --git a/usr.sbin/bhyve/bhyverun.h b/usr.sbin/bhyve/bhyverun.h index 1131e18baed2..fc0d2595e66b 100644 --- a/usr.sbin/bhyve/bhyverun.h +++ b/usr.sbin/bhyve/bhyverun.h @@ -46,6 +46,4 @@ uintptr_t paddr_host2guest(struct vmctx *ctx, void *addr); int fbsdrun_virtio_msix(void); -int vmexit_task_switch(struct vmctx *, struct vcpu *, struct vm_run *); - #endif diff --git a/usr.sbin/bhyve/snapshot.c b/usr.sbin/bhyve/snapshot.c index ec56bd0fed9a..7d8959756757 100644 --- a/usr.sbin/bhyve/snapshot.c +++ b/usr.sbin/bhyve/snapshot.c @@ -79,7 +79,6 @@ #include "debug.h" #include "inout.h" #include "ipc.h" -#include "fwctl.h" #include "ioapic.h" #include "mem.h" #include "mevent.h" From nobody Wed Oct 11 13:25:02 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D5q1npzz4xNp6; Wed, 11 Oct 2023 13:25: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 4S5D5q1GwNz3G67; Wed, 11 Oct 2023 13:25:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030703; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6dSUnljQfxgd7viFBcYQxn//WYdcmzRThdM+y1mE028=; b=JydpZezGKUdf1E1CblZDuiIBQ2hv64xYkFxFE6Oc/QZmdHOT9NnFt0a626BiRa5JLEXKEv zPDILXLxvkfYxN7lKHXJ/o5JQP1YXciYq2XK9UCBB/AJOdgjnvlM1fKj/KbGWsrbOY6pLs furwOnbT37JmuQH5CvO/AUvLJUHkxAuuLu5CY5+T/5E5Mr+/ZCUIXXya9dXgpLy5IxSHxW sX0moS+fF8H/rQfkbY+2N0rDeuN69qpwwksB93lo0wlwo/u5ifDt+Xg7J89xchc1ZlaIVg QaJx04y8DFiHvVjYO+ErwN7OycQ9PVz449hdveFwrH4Zul/rH8PVEJhuNLbfLw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030703; a=rsa-sha256; cv=none; b=AAsNupHFoVKi/K4YqPdu2cFWkpuk5C5yjFNsnoSyyIJ5+FC76B5xDS8uhjeAVq6MJmmXFE 6cTxeJfMCI/IpioF4EpZZes/NhMNUOza8fUMoFPO1DCOP8CX0LgZvakPubinIdBsmQyj92 PuWSwjEA3BLdh7VPLxv0Q6pFSADVhoPz7iZ5QnRq6mO0Oils+SEBpRD5sfWPvx3Nu+f/0K zM1C8CkvG4l90W+qyGrEDKCN/V+dZP/56ZOi330DvbLQTQ8uXo8+GSN6XDSOBeKw+iXjO/ I+pzJeTEzHmzIEu5WxYBbMXLvzj8w4vG7564loD7aAimQyx0PQOvbWDl4BEORg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030703; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6dSUnljQfxgd7viFBcYQxn//WYdcmzRThdM+y1mE028=; b=s8KrSHaH7hliTXpIivSowMOybzndCcFcoQbGXEPO77UpiMpbIPRChBVboG6jEkf2lXSuez lnO3qcsYJuFUAQ2LnTbpsIiGf5+DLTayAiefUrY6nFOQIJS5XWV5IYf1XIVoKDh/5WPgXR 3+k+bxvWAHf6hkc9XxizxnQ5McIgi/TazgfwMnDxdCjL1GjOaP5ZcuowLHW+Cag9wvu+n/ 9+/Y29g/R2thNPDhilJHIymZFHd/ijxezkLTkABh35k0Kv45faAxEGm4xQRa2sCYjASWrj O4lCpI5eszN+q8F2r/DIGWwQT5bij7oxp/EYvfL59LV6GRyRq644iciLl8RXhA== 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 4S5D5q0Ftsz7ct; Wed, 11 Oct 2023 13:25:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDP2JD089858; Wed, 11 Oct 2023 13:25:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDP225089855; Wed, 11 Oct 2023 13:25:02 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:02 GMT Message-Id: <202310111325.39BDP225089855@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 71378e0ffa84 - stable/14 - bhyve: Move some more amd64-specific drivers to their own subdir List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 71378e0ffa84b5777aeda7da15dfca2c56125bf2 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=71378e0ffa84b5777aeda7da15dfca2c56125bf2 commit 71378e0ffa84b5777aeda7da15dfca2c56125bf2 Author: Mark Johnston AuthorDate: 2023-10-04 16:20:57 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:21:52 +0000 bhyve: Move some more amd64-specific drivers to their own subdir No functional change intended. Reviewed by: corvink, jhb, emaste MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40551 (cherry picked from commit f927afc1a6fe8257e28d79e8bb77305c2958724a) --- usr.sbin/bhyve/Makefile | 6 ------ usr.sbin/bhyve/amd64/Makefile.inc | 7 +++++++ usr.sbin/bhyve/{ => amd64}/atkbdc.c | 0 usr.sbin/bhyve/{ => amd64}/atkbdc.h | 0 usr.sbin/bhyve/{ => amd64}/post.c | 0 usr.sbin/bhyve/{ => amd64}/ps2kbd.c | 0 usr.sbin/bhyve/{ => amd64}/ps2kbd.h | 0 usr.sbin/bhyve/{ => amd64}/ps2mouse.c | 0 usr.sbin/bhyve/{ => amd64}/ps2mouse.h | 0 usr.sbin/bhyve/bhyverun.c | 6 +++++- usr.sbin/bhyve/snapshot.c | 15 +++++++++++++-- 11 files changed, 25 insertions(+), 9 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index 794bfbe4c8a3..86039a8c45da 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -17,7 +17,6 @@ BHYVE_SYSDIR?=${SRCTOP} SRCS= \ acpi.c \ acpi_device.c \ - atkbdc.c \ audio.c \ basl.c \ bhyvegc.c \ @@ -63,9 +62,6 @@ SRCS= \ pci_xhci.c \ pctestdev.c \ pm.c \ - post.c \ - ps2kbd.c \ - ps2mouse.c \ qemu_fwcfg.c \ qemu_loader.c \ rfb.c \ @@ -138,6 +134,4 @@ NO_WTHREAD_SAFETY= NO_WCAST_ALIGN= -SUBDIR= kbdlayout - .include diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc index 62de5f211a23..c52219cb8dd1 100644 --- a/usr.sbin/bhyve/amd64/Makefile.inc +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -1,6 +1,13 @@ SRCS+= \ + atkbdc.c \ fwctl.c \ + post.c \ + ps2kbd.c \ + ps2mouse.c \ task_switch.c + .PATH: ${BHYVE_SYSDIR}/sys/amd64/vmm SRCS+= vmm_instruction_emul.c + +SUBDIR+= kbdlayout diff --git a/usr.sbin/bhyve/atkbdc.c b/usr.sbin/bhyve/amd64/atkbdc.c similarity index 100% rename from usr.sbin/bhyve/atkbdc.c rename to usr.sbin/bhyve/amd64/atkbdc.c diff --git a/usr.sbin/bhyve/atkbdc.h b/usr.sbin/bhyve/amd64/atkbdc.h similarity index 100% rename from usr.sbin/bhyve/atkbdc.h rename to usr.sbin/bhyve/amd64/atkbdc.h diff --git a/usr.sbin/bhyve/post.c b/usr.sbin/bhyve/amd64/post.c similarity index 100% rename from usr.sbin/bhyve/post.c rename to usr.sbin/bhyve/amd64/post.c diff --git a/usr.sbin/bhyve/ps2kbd.c b/usr.sbin/bhyve/amd64/ps2kbd.c similarity index 100% rename from usr.sbin/bhyve/ps2kbd.c rename to usr.sbin/bhyve/amd64/ps2kbd.c diff --git a/usr.sbin/bhyve/ps2kbd.h b/usr.sbin/bhyve/amd64/ps2kbd.h similarity index 100% rename from usr.sbin/bhyve/ps2kbd.h rename to usr.sbin/bhyve/amd64/ps2kbd.h diff --git a/usr.sbin/bhyve/ps2mouse.c b/usr.sbin/bhyve/amd64/ps2mouse.c similarity index 100% rename from usr.sbin/bhyve/ps2mouse.c rename to usr.sbin/bhyve/amd64/ps2mouse.c diff --git a/usr.sbin/bhyve/ps2mouse.h b/usr.sbin/bhyve/amd64/ps2mouse.h similarity index 100% rename from usr.sbin/bhyve/ps2mouse.h rename to usr.sbin/bhyve/amd64/ps2mouse.h diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index 229527e580d5..6bebfddc3985 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -82,7 +82,9 @@ #include "bhyverun.h" #include "acpi.h" -#include "atkbdc.h" +#ifdef __amd64__ +#include "amd64/atkbdc.h" +#endif #include "bootrom.h" #include "config.h" #include "inout.h" @@ -1450,7 +1452,9 @@ main(int argc, char *argv[]) init_inout(); kernemu_dev_init(); init_bootrom(ctx); +#ifdef __amd64__ atkbdc_init(ctx); +#endif pci_irq_init(ctx); ioapic_init(ctx); diff --git a/usr.sbin/bhyve/snapshot.c b/usr.sbin/bhyve/snapshot.c index 7d8959756757..593930c7f8a3 100644 --- a/usr.sbin/bhyve/snapshot.c +++ b/usr.sbin/bhyve/snapshot.c @@ -75,7 +75,9 @@ #include "bhyverun.h" #include "acpi.h" -#include "atkbdc.h" +#ifdef __amd64__ +#include "amd64/atkbdc.h" +#endif #include "debug.h" #include "inout.h" #include "ipc.h" @@ -892,7 +894,12 @@ vm_restore_devices(struct restore_state *rstate) return (ret); } - return (vm_restore_device(rstate, atkbdc_snapshot, "atkbdc", NULL)); +#ifdef __amd64__ + ret = vm_restore_device(rstate, atkbdc_snapshot, "atkbdc", NULL); +#else + ret = 0; +#endif + return (ret); } int @@ -1131,8 +1138,12 @@ vm_snapshot_devices(int data_fd, xo_handle_t *xop) goto snapshot_err; } +#ifdef __amd64__ ret = vm_snapshot_device(atkbdc_snapshot, "atkbdc", NULL, data_fd, xop, meta, &offset); +#else + ret = 0; +#endif xo_close_list_h(xop, JSON_DEV_ARR_KEY); From nobody Wed Oct 11 13:25:04 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D5r33lsz4xNy0; Wed, 11 Oct 2023 13:25: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 4S5D5r2Wfxz3GMc; Wed, 11 Oct 2023 13:25:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030704; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KpImpOaOivpEbeGu51CFlmdvDNOFJZOTnyneWbeWTV4=; b=wTYUbW4VhaQkc2UaJN7v5yx6u1MnnCAH3mKsXwr6+2xM4WBaNsnV657pvedyN73UjQ0CvD sXffZwkWfRSB9HB5OPlwSTpfkiqrVP1eQ6ANU/Xyr/DDnYdhL0c6X4G2erpuetmQlmq9Ad QEbie9yBlZYFDWDyMrwF/KODZZgriJqC01HsgN3f8OAAK8wyZ5CC50JUTnUneH5ZjegCXn CZ1twxFSwM1kku2pBS5TgKANb9Q8FcsyhLGbMKJnjg/HAM0UWU5Li8qPgdbesOwCMZH3f9 F6YiZacbQRubLA5MJVxRCgfMGyChfdJJ2emjy8sKey64l2NSAiQxJTmD1YlgiQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030704; a=rsa-sha256; cv=none; b=qHi6Nyl8yN3bewS55Bp/PqcIMqbZu221razh3PYjPcICZlTa5je3UyRtE5q8wOqplF5dTy Vu9zwQ7ADLZ7LCOLVo3W2AVdOA9m0D+I1oF0s4mMMAocVXOE50HQF8aF5CzDSbZG1CM0Oq ZPPiSTMuX7UCWMNAM+HN7YJTpe2LAY9PfVcQ+hBKp7/MJj12zrNj0UPZebNS+uOM8kjXWa ZFqX5TLboddcO9HsYdGZFYqe9A5t6HPf6YVCcqtrY04ddZtzcLq7JNLCKUA2YUYMLdd1Kq QhZH1uKtnKvbq2CeoMPb+674iqnHmbrPS1JW7b/yH8OO6bJwK470bVV6tOX05w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030704; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KpImpOaOivpEbeGu51CFlmdvDNOFJZOTnyneWbeWTV4=; b=yuKtJpyTAP2GFhEqVPBRp2CiOqYQM+bacs5hYSiKHZ6UnATXwr6wv4iHkcsJ+SR2mb6i5O Q39kZQB1rMkKYUARo1/26qG4xIEv7I5FiNEY4OvSkgNWW5t/0o5FjiDMwk1HZEphQQu5yT CamIBb/Kmr0/5aKEmGeeHY47hwcDRi2xww3os1Hmf5A6waMwpwj2MGvZgfpCUO83qACGdf N58vahnBq0ZyvmeTbdmY4x61pQM3fYkckI2l/zFZeAMslzjXddtSTVjJLXLYjzBVGh/2hW RSgaLX7eZFMPjoPEDc6T8zNrf6ok/2JL8/JeTmB0RA0KPwBH0Q4ZGH5h5sXRfw== 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 4S5D5r1HXyz7cv; Wed, 11 Oct 2023 13:25:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDP4Y2089913; Wed, 11 Oct 2023 13:25:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDP4iA089910; Wed, 11 Oct 2023 13:25:04 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:04 GMT Message-Id: <202310111325.39BDP4iA089910@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: aeb52e2ff677 - stable/14 - bhyve: Move more amd64-specific code under amd64/ List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: aeb52e2ff67769b2f01582b4a26c3887b45d964b Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=aeb52e2ff67769b2f01582b4a26c3887b45d964b commit aeb52e2ff67769b2f01582b4a26c3887b45d964b Author: Mark Johnston AuthorDate: 2023-10-04 16:21:20 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:21:53 +0000 bhyve: Move more amd64-specific code under amd64/ mptable and the e820 are both rather amd64-specific and can be moved easily. In the case of e820, move the registration with qemu_fwcfg into e820.c, as it simplifies bhyverun.c a bit and I can't see any downsides. No functional change intended. Reviewed by: corvink, jhb, emaste MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40552 (cherry picked from commit 4fe5b70cae6761b9205ff35b72ccfe60d7326301) --- usr.sbin/bhyve/Makefile | 2 -- usr.sbin/bhyve/amd64/Makefile.inc | 2 ++ usr.sbin/bhyve/{ => amd64}/e820.c | 24 +++++++++++++++++++++++- usr.sbin/bhyve/{ => amd64}/e820.h | 2 +- usr.sbin/bhyve/{ => amd64}/mptbl.c | 0 usr.sbin/bhyve/{ => amd64}/mptbl.h | 0 usr.sbin/bhyve/bhyverun.c | 30 ++++++++++++++---------------- usr.sbin/bhyve/pci_gvt-d.c | 2 +- usr.sbin/bhyve/snapshot.c | 1 - 9 files changed, 41 insertions(+), 22 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index 86039a8c45da..499c0d1bb89d 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -28,7 +28,6 @@ SRCS= \ crc16.c \ ctl_scsi_all.c \ ctl_util.c \ - e820.c \ gdb.c \ hda_codec.c \ inout.c \ @@ -37,7 +36,6 @@ SRCS= \ kernemu_dev.c \ mem.c \ mevent.c \ - mptbl.c \ net_backends.c \ net_utils.c \ pci_ahci.c \ diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc index c52219cb8dd1..e0cb84e32b85 100644 --- a/usr.sbin/bhyve/amd64/Makefile.inc +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -1,6 +1,8 @@ SRCS+= \ atkbdc.c \ + e820.c \ fwctl.c \ + mptbl.c \ post.c \ ps2kbd.c \ ps2mouse.c \ diff --git a/usr.sbin/bhyve/e820.c b/usr.sbin/bhyve/amd64/e820.c similarity index 95% rename from usr.sbin/bhyve/e820.c rename to usr.sbin/bhyve/amd64/e820.c index 99a66645f70f..545878aad39f 100644 --- a/usr.sbin/bhyve/e820.c +++ b/usr.sbin/bhyve/amd64/e820.c @@ -105,7 +105,7 @@ e820_dump_table(void) } } -struct qemu_fwcfg_item * +static struct qemu_fwcfg_item * e820_get_fwcfg_item(void) { struct qemu_fwcfg_item *fwcfg_item; @@ -466,3 +466,25 @@ e820_init(struct vmctx *const ctx) return (0); } + +int +e820_finalize(void) +{ + struct qemu_fwcfg_item *e820_fwcfg_item; + int error; + + e820_fwcfg_item = e820_get_fwcfg_item(); + if (e820_fwcfg_item == NULL) { + warnx("invalid e820 table"); + return (ENOMEM); + } + error = qemu_fwcfg_add_file("etc/e820", + e820_fwcfg_item->size, e820_fwcfg_item->data); + if (error != 0) { + warnx("could not add qemu fwcfg etc/e820"); + return (error); + } + free(e820_fwcfg_item); + + return (0); +} diff --git a/usr.sbin/bhyve/e820.h b/usr.sbin/bhyve/amd64/e820.h similarity index 95% rename from usr.sbin/bhyve/e820.h rename to usr.sbin/bhyve/amd64/e820.h index 8703a55115cd..ae68fe9040a9 100644 --- a/usr.sbin/bhyve/e820.h +++ b/usr.sbin/bhyve/amd64/e820.h @@ -41,5 +41,5 @@ uint64_t e820_alloc(const uint64_t address, const uint64_t length, const uint64_t alignment, const enum e820_memory_type type, const enum e820_allocation_strategy strategy); void e820_dump_table(void); -struct qemu_fwcfg_item *e820_get_fwcfg_item(void); int e820_init(struct vmctx *const ctx); +int e820_finalize(void); diff --git a/usr.sbin/bhyve/mptbl.c b/usr.sbin/bhyve/amd64/mptbl.c similarity index 100% rename from usr.sbin/bhyve/mptbl.c rename to usr.sbin/bhyve/amd64/mptbl.c diff --git a/usr.sbin/bhyve/mptbl.h b/usr.sbin/bhyve/amd64/mptbl.h similarity index 100% rename from usr.sbin/bhyve/mptbl.h rename to usr.sbin/bhyve/amd64/mptbl.h diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index 6bebfddc3985..a61ebcda0003 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -89,8 +89,8 @@ #include "config.h" #include "inout.h" #include "debug.h" -#include "e820.h" #ifdef __amd64__ +#include "amd64/e820.h" #include "amd64/fwctl.h" #endif #include "gdb.h" @@ -98,7 +98,9 @@ #include "kernemu_dev.h" #include "mem.h" #include "mevent.h" -#include "mptbl.h" +#ifdef __amd64__ +#include "amd64/mptbl.h" +#endif #include "pci_emul.h" #include "pci_irq.h" #include "pci_lpc.h" @@ -1221,7 +1223,6 @@ main(int argc, char *argv[]) int max_vcpus, memflags; struct vcpu *bsp; struct vmctx *ctx; - struct qemu_fwcfg_item *e820_fwcfg_item; size_t memsize; const char *optstr, *value, *vmname; #ifdef BHYVE_SNAPSHOT @@ -1345,9 +1346,11 @@ main(int argc, char *argv[]) case 'x': set_config_bool("x86.x2apic", true); break; +#ifdef __amd64__ case 'Y': set_config_bool("x86.mptable", false); break; +#endif case 'h': usage(0); default: @@ -1472,10 +1475,12 @@ main(int argc, char *argv[]) exit(4); } +#ifdef __amd64__ if (e820_init(ctx) != 0) { fprintf(stderr, "Unable to setup E820"); exit(4); } +#endif /* * Exit if a device emulation finds an error in its initialization @@ -1548,9 +1553,7 @@ main(int argc, char *argv[]) } #endif - /* - * build the guest tables, MP etc. - */ +#ifdef __amd64__ if (get_config_bool_default("x86.mptable", true)) { error = mptable_build(ctx, guest_ncpus); if (error) { @@ -1558,6 +1561,7 @@ main(int argc, char *argv[]) exit(4); } } +#endif error = smbios_build(ctx); if (error != 0) @@ -1568,17 +1572,11 @@ main(int argc, char *argv[]) assert(error == 0); } - e820_fwcfg_item = e820_get_fwcfg_item(); - if (e820_fwcfg_item == NULL) { - fprintf(stderr, "invalid e820 table"); - exit(4); - } - if (qemu_fwcfg_add_file("etc/e820", e820_fwcfg_item->size, - e820_fwcfg_item->data) != 0) { - fprintf(stderr, "could not add qemu fwcfg etc/e820"); +#ifdef __amd64__ + error = e820_finalize(); + if (error != 0) exit(4); - } - free(e820_fwcfg_item); +#endif #ifdef __amd64__ if (lpc_bootrom() && strcmp(lpc_fwcfg(), "bhyve") == 0) { diff --git a/usr.sbin/bhyve/pci_gvt-d.c b/usr.sbin/bhyve/pci_gvt-d.c index 78fa9878358e..f64cc5984352 100644 --- a/usr.sbin/bhyve/pci_gvt-d.c +++ b/usr.sbin/bhyve/pci_gvt-d.c @@ -17,7 +17,7 @@ #include #include -#include "e820.h" +#include "amd64/e820.h" #include "pci_gvt-d-opregion.h" #include "pci_passthru.h" diff --git a/usr.sbin/bhyve/snapshot.c b/usr.sbin/bhyve/snapshot.c index 593930c7f8a3..2daef0ef74f0 100644 --- a/usr.sbin/bhyve/snapshot.c +++ b/usr.sbin/bhyve/snapshot.c @@ -84,7 +84,6 @@ #include "ioapic.h" #include "mem.h" #include "mevent.h" -#include "mptbl.h" #include "pci_emul.h" #include "pci_irq.h" #include "pci_lpc.h" From nobody Wed Oct 11 13:25:05 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D5s3vZZz4xNm5; Wed, 11 Oct 2023 13:25: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 4S5D5s3QtCz3GBF; Wed, 11 Oct 2023 13:25:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030705; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v7SZFfwQ2eBH3q/Mk9/JZ+2oRPN3kLtS4NaFb9hwejs=; b=jnqWvYvZeTubLzNjWKrmgX9QEXWLRImFRbHBRBLVi2sX5fh4PdZVrn4tiNSglRTQjwyz3K dChR2UY7TuTwi4U25VlvshhGmXR06zHKqud1VP2fE/04ttPNgN7wyR69QzYmNkkwWPO0IB UD+EkL6GKWXneVVUXruk57rk0q5qg+dyZGon4go/fscRQtmLMidTFPybSYEWsyAA5GB9dx AC7vkBNNM6wtNIINrM75uE+8ntMoThHnPXjQmNO3KZ2fcByeGgBL103xOp/STPTQQti8ja RvZJOzCzGuqTcy9ITSIk0n/oZKgq1DJCjKNSXZX7Mm2Blb8KZLTtJ/aT2iLoMw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030705; a=rsa-sha256; cv=none; b=LpIEBQsIybNFHrCViydEaPqMg9DX/4ngdszWn1RKzRaVG8lsXfx9fnol2EfBesnbndFItS DHyzLoIb/v564SGUaUKoBQZYBTsbqiyp7up57SWzr2epALRaoIw5fIi2qJGSV7CRHpbLsR 1PYMDudO/HtZIrLsbOA1gRkUTadDSisk+Tl3URWKQFiimvxvXUEGuyaGnpPGzhrjK4Klt3 /Dv4kVxVEBsu9MffwsNkCt7cnIc30KdJy5ElqiJ20cutWepP2I0v6NOgO3TZKxmtITfRaR qPbB89eraxWxFzBnpomS7RdOIOnZHa4TzVUDjYYo13qebOih1WBSQkI29rk7og== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030705; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v7SZFfwQ2eBH3q/Mk9/JZ+2oRPN3kLtS4NaFb9hwejs=; b=sIe9i0cRPCKIKXjtW6hMNSkHKOOIQnS0Yqx5Ep96IP7z/ieZiC72PHwgQEX6VoVkX4CXam aeZTx6IY870bjb5qwAFwTYGzw1Qc9oa5yCikun4Hgk26Gug2nodwxjA+4u4K77vLKBF4d0 tOcahUZhQqkfDgf3jrEfuruzACbup/ra/G4FcrMD/o5mH9FtuuLDRBveceU/7Fod6OUkFi 6ODv9K1pwyCZO2L8U4PFa25YyIwxKODwEEN4yuYLl/cGRIZkgeWj6ap/W6VGEHWOp/d/Bb ypk50v9PAyrqDeyP92KV7JhnifhqcFGka4XsBWIg/2GF+fmTlKT52wcXciJT9g== 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 4S5D5s2GQ6z7PJ; Wed, 11 Oct 2023 13:25:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDP5KH089955; Wed, 11 Oct 2023 13:25:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDP5ZZ089952; Wed, 11 Oct 2023 13:25:05 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:05 GMT Message-Id: <202310111325.39BDP5ZZ089952@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 013da5d9c415 - stable/14 - bhyve: Move kernemu to amd64/ List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 013da5d9c4156a2a6128d184f2e5464e0146cbae Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=013da5d9c4156a2a6128d184f2e5464e0146cbae commit 013da5d9c4156a2a6128d184f2e5464e0146cbae Author: Mark Johnston AuthorDate: 2023-10-04 16:22:41 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:21:54 +0000 bhyve: Move kernemu to amd64/ This code handles instruction emulation for accesses to various amd64-specific MMIO regions. No functional change intended. Reviewed by: corvink, jhb, emaste MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40554 (cherry picked from commit a1642451ce25bb0e2d01765a8dedda69c5029d48) --- usr.sbin/bhyve/Makefile | 3 --- usr.sbin/bhyve/amd64/Makefile.inc | 4 +++- usr.sbin/bhyve/{ => amd64}/kernemu_dev.c | 0 usr.sbin/bhyve/{ => amd64}/kernemu_dev.h | 0 usr.sbin/bhyve/bhyverun.c | 6 +++++- 5 files changed, 8 insertions(+), 5 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index 499c0d1bb89d..c2ccd60790ae 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -33,7 +33,6 @@ SRCS= \ inout.c \ ioapic.c \ iov.c \ - kernemu_dev.c \ mem.c \ mevent.c \ net_backends.c \ @@ -85,8 +84,6 @@ SRCS+= snapshot.c .include "${MACHINE_CPUARCH}/Makefile.inc" -CFLAGS.kernemu_dev.c+= -I${SRCTOP}/sys/amd64 - CFLAGS+=-I${.CURDIR} \ -I${.CURDIR}/../../contrib/lib9p \ -I${SRCTOP}/sys diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc index e0cb84e32b85..6843cec4919f 100644 --- a/usr.sbin/bhyve/amd64/Makefile.inc +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -2,14 +2,16 @@ SRCS+= \ atkbdc.c \ e820.c \ fwctl.c \ + kernemu_dev.c \ mptbl.c \ post.c \ ps2kbd.c \ ps2mouse.c \ task_switch.c - .PATH: ${BHYVE_SYSDIR}/sys/amd64/vmm SRCS+= vmm_instruction_emul.c +CFLAGS.kernemu_dev.c+= -I${SRCTOP}/sys/amd64 + SUBDIR+= kbdlayout diff --git a/usr.sbin/bhyve/kernemu_dev.c b/usr.sbin/bhyve/amd64/kernemu_dev.c similarity index 100% rename from usr.sbin/bhyve/kernemu_dev.c rename to usr.sbin/bhyve/amd64/kernemu_dev.c diff --git a/usr.sbin/bhyve/kernemu_dev.h b/usr.sbin/bhyve/amd64/kernemu_dev.h similarity index 100% rename from usr.sbin/bhyve/kernemu_dev.h rename to usr.sbin/bhyve/amd64/kernemu_dev.h diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index a61ebcda0003..7088f11f63eb 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -95,7 +95,9 @@ #endif #include "gdb.h" #include "ioapic.h" -#include "kernemu_dev.h" +#ifdef __amd64__ +#include "amd64/kernemu_dev.h" +#endif #include "mem.h" #include "mevent.h" #ifdef __amd64__ @@ -1453,7 +1455,9 @@ main(int argc, char *argv[]) init_mem(guest_ncpus); init_inout(); +#ifdef __amd64__ kernemu_dev_init(); +#endif init_bootrom(ctx); #ifdef __amd64__ atkbdc_init(ctx); From nobody Wed Oct 11 13:25:06 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D5t5rCWz4xNm9; Wed, 11 Oct 2023 13:25:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5D5t3xwrz3GH9; Wed, 11 Oct 2023 13:25:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030706; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1TafsQgG4RF1x4vDbHgl1eU3WGMzQuYukjcmw7X3pnM=; b=Sn8uhciBk5aag5EJ4msjfF4apxNE7D/u8TixgGuYNJTK1kyRZAKRtWdGbHSz1l4cfiWFsU XDxIwKPq9dKQVKy10ri31sZw2KCTFiE39oHVdX6NQJmSPqdHfTNtyq2R9BIVYOxIU0HR7g w75W5xsQQ+xLNnkyAGDcprdjbNXFf0Qe7MORT7xi0bP7up53S9OatNpAy5TMhQ4Bl6z/Su 0Y4gNcgb6GVG7Pf5scl2tmfhAekm0RqhcRymu0JkjRMjueOKyo6c4TvWrpyYIxCvFFisNw rpPKfIEEbOjWNM7CNIZscQ1mn6NEX8W4ZHL4cLOk95asaXuqnyQctiwxXmp8eg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030706; a=rsa-sha256; cv=none; b=C/t0LOFKQcuu8O7nGzfMO98u+5Q5V0/RtfVPhiw4qbBXjh3cMIkJvjDnPOF0kCW75pX8n6 +R/upL2K+bwn9EyaiNJ+F5HgILUs+H76kCL7riXHI7uuj10iv/rExKV6ROfrraDPJffvGB k5gU5nXs3aJzm1xghkse6HTYSLIv6NJorAD3Ex4zmhoR3alk6lYMurfpJM+rgMcH7hQRoU vAaLyZADVua3IhMfppyxelnVbr+8kuzLsGCajLe1Da8CuVcN7/HWlIT2QBlUuKVarGd6bF wPE3geDJHwpyhMcSCrmA+MOsGiVHDENlbG33EB90YaUaKXuxePs1Zz6wchIDmg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030706; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1TafsQgG4RF1x4vDbHgl1eU3WGMzQuYukjcmw7X3pnM=; b=MJPMP9YOARzloWt4ILQW8m7z6JkphRUKtrtVUqMtXyAcakI9S2yfzDovcNw42j2Unuhy05 TRI+iYQ1n3cIji+a4WZkbQncmL+aOHL7VKvQ0KaMt494sI4SVN0u1hBHwTz7LDa7V+JAEg BfoVZ3hVPfRW8KPDeNdDnCskWtrKXa5wV0lYYlviGLRVUFvwj9RzqVhWQN8x5pZhfOZCD0 NtdCV2dj2FSv9VMYZOo3c0ffyU+TU5EU9mY2Aj9NCT+NR+nYDJ4O76a5ipuI0eU+zRbhZv yF4VMLw2UY2R9Q9ufK4z7qDi15XOSMnb0hZrkVDvN+hXVNCx9v93P/7zXvHq0A== 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 4S5D5t33Ddz7MK; Wed, 11 Oct 2023 13:25:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDP6xE090006; Wed, 11 Oct 2023 13:25:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDP6BN090003; Wed, 11 Oct 2023 13:25:06 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:06 GMT Message-Id: <202310111325.39BDP6BN090003@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 28c8a44993e7 - stable/14 - bhyve: Split vmexit handling into a separate file List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 28c8a44993e73cba0ab78b8ff07e99592037c26c Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=28c8a44993e73cba0ab78b8ff07e99592037c26c commit 28c8a44993e73cba0ab78b8ff07e99592037c26c Author: Mark Johnston AuthorDate: 2023-10-04 16:22:56 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:21:55 +0000 bhyve: Split vmexit handling into a separate file Put it in amd64, since most of it is MD and won't be used on arm64. Add a bit of glue to bhyverun.h to make CPU startup and shutdown work without having to export more global variables. AP startup will be reworked further in a future revision. This makes bhyverun.c much more machine-independent. No functional change intended. Reviewed by: corvink, jhb MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40556 (cherry picked from commit 72f9c9d82fce84fcb68c9aa1f32fabcf0c0038e9) --- usr.sbin/bhyve/Makefile | 1 + usr.sbin/bhyve/amd64/vmexit.c | 493 ++++++++++++++++++++++++++++++++++++++++++ usr.sbin/bhyve/bhyverun.c | 468 ++------------------------------------- usr.sbin/bhyve/bhyverun.h | 7 + usr.sbin/bhyve/vmexit.h | 34 +++ 5 files changed, 551 insertions(+), 452 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index c2ccd60790ae..5f13d457d914 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -75,6 +75,7 @@ SRCS= \ usb_mouse.c \ vga.c \ virtio.c \ + vmexit.c \ vmgenc.c \ xmsr.c diff --git a/usr.sbin/bhyve/amd64/vmexit.c b/usr.sbin/bhyve/amd64/vmexit.c new file mode 100644 index 000000000000..152fecaf424c --- /dev/null +++ b/usr.sbin/bhyve/amd64/vmexit.c @@ -0,0 +1,493 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2011 NetApp, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY NETAPP, INC ``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 NETAPP, INC OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include + +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include + +#include + +#include "bhyverun.h" +#include "config.h" +#include "debug.h" +#include "gdb.h" +#include "inout.h" +#include "mem.h" +#ifdef BHYVE_SNAPSHOT +#include "snapshot.h" +#endif +#include "spinup_ap.h" +#include "vmexit.h" +#include "xmsr.h" + +static int +vmexit_inout(struct vmctx *ctx, struct vcpu *vcpu, struct vm_run *vmrun) +{ + struct vm_exit *vme; + int error; + int bytes, port, in; + + vme = vmrun->vm_exit; + port = vme->u.inout.port; + bytes = vme->u.inout.bytes; + in = vme->u.inout.in; + + error = emulate_inout(ctx, vcpu, vme); + if (error) { + fprintf(stderr, "Unhandled %s%c 0x%04x at 0x%lx\n", + in ? "in" : "out", + bytes == 1 ? 'b' : (bytes == 2 ? 'w' : 'l'), + port, vme->rip); + return (VMEXIT_ABORT); + } else { + return (VMEXIT_CONTINUE); + } +} + +static int +vmexit_rdmsr(struct vmctx *ctx __unused, struct vcpu *vcpu, + struct vm_run *vmrun) +{ + struct vm_exit *vme; + uint64_t val; + uint32_t eax, edx; + int error; + + vme = vmrun->vm_exit; + + val = 0; + error = emulate_rdmsr(vcpu, vme->u.msr.code, &val); + if (error != 0) { + fprintf(stderr, "rdmsr to register %#x on vcpu %d\n", + vme->u.msr.code, vcpu_id(vcpu)); + if (get_config_bool("x86.strictmsr")) { + vm_inject_gp(vcpu); + return (VMEXIT_CONTINUE); + } + } + + eax = val; + error = vm_set_register(vcpu, VM_REG_GUEST_RAX, eax); + assert(error == 0); + + edx = val >> 32; + error = vm_set_register(vcpu, VM_REG_GUEST_RDX, edx); + assert(error == 0); + + return (VMEXIT_CONTINUE); +} + +static int +vmexit_wrmsr(struct vmctx *ctx __unused, struct vcpu *vcpu, + struct vm_run *vmrun) +{ + struct vm_exit *vme; + int error; + + vme = vmrun->vm_exit; + + error = emulate_wrmsr(vcpu, vme->u.msr.code, vme->u.msr.wval); + if (error != 0) { + fprintf(stderr, "wrmsr to register %#x(%#lx) on vcpu %d\n", + vme->u.msr.code, vme->u.msr.wval, vcpu_id(vcpu)); + if (get_config_bool("x86.strictmsr")) { + vm_inject_gp(vcpu); + return (VMEXIT_CONTINUE); + } + } + return (VMEXIT_CONTINUE); +} + +static const char * const vmx_exit_reason_desc[] = { + [EXIT_REASON_EXCEPTION] = "Exception or non-maskable interrupt (NMI)", + [EXIT_REASON_EXT_INTR] = "External interrupt", + [EXIT_REASON_TRIPLE_FAULT] = "Triple fault", + [EXIT_REASON_INIT] = "INIT signal", + [EXIT_REASON_SIPI] = "Start-up IPI (SIPI)", + [EXIT_REASON_IO_SMI] = "I/O system-management interrupt (SMI)", + [EXIT_REASON_SMI] = "Other SMI", + [EXIT_REASON_INTR_WINDOW] = "Interrupt window", + [EXIT_REASON_NMI_WINDOW] = "NMI window", + [EXIT_REASON_TASK_SWITCH] = "Task switch", + [EXIT_REASON_CPUID] = "CPUID", + [EXIT_REASON_GETSEC] = "GETSEC", + [EXIT_REASON_HLT] = "HLT", + [EXIT_REASON_INVD] = "INVD", + [EXIT_REASON_INVLPG] = "INVLPG", + [EXIT_REASON_RDPMC] = "RDPMC", + [EXIT_REASON_RDTSC] = "RDTSC", + [EXIT_REASON_RSM] = "RSM", + [EXIT_REASON_VMCALL] = "VMCALL", + [EXIT_REASON_VMCLEAR] = "VMCLEAR", + [EXIT_REASON_VMLAUNCH] = "VMLAUNCH", + [EXIT_REASON_VMPTRLD] = "VMPTRLD", + [EXIT_REASON_VMPTRST] = "VMPTRST", + [EXIT_REASON_VMREAD] = "VMREAD", + [EXIT_REASON_VMRESUME] = "VMRESUME", + [EXIT_REASON_VMWRITE] = "VMWRITE", + [EXIT_REASON_VMXOFF] = "VMXOFF", + [EXIT_REASON_VMXON] = "VMXON", + [EXIT_REASON_CR_ACCESS] = "Control-register accesses", + [EXIT_REASON_DR_ACCESS] = "MOV DR", + [EXIT_REASON_INOUT] = "I/O instruction", + [EXIT_REASON_RDMSR] = "RDMSR", + [EXIT_REASON_WRMSR] = "WRMSR", + [EXIT_REASON_INVAL_VMCS] = + "VM-entry failure due to invalid guest state", + [EXIT_REASON_INVAL_MSR] = "VM-entry failure due to MSR loading", + [EXIT_REASON_MWAIT] = "MWAIT", + [EXIT_REASON_MTF] = "Monitor trap flag", + [EXIT_REASON_MONITOR] = "MONITOR", + [EXIT_REASON_PAUSE] = "PAUSE", + [EXIT_REASON_MCE_DURING_ENTRY] = + "VM-entry failure due to machine-check event", + [EXIT_REASON_TPR] = "TPR below threshold", + [EXIT_REASON_APIC_ACCESS] = "APIC access", + [EXIT_REASON_VIRTUALIZED_EOI] = "Virtualized EOI", + [EXIT_REASON_GDTR_IDTR] = "Access to GDTR or IDTR", + [EXIT_REASON_LDTR_TR] = "Access to LDTR or TR", + [EXIT_REASON_EPT_FAULT] = "EPT violation", + [EXIT_REASON_EPT_MISCONFIG] = "EPT misconfiguration", + [EXIT_REASON_INVEPT] = "INVEPT", + [EXIT_REASON_RDTSCP] = "RDTSCP", + [EXIT_REASON_VMX_PREEMPT] = "VMX-preemption timer expired", + [EXIT_REASON_INVVPID] = "INVVPID", + [EXIT_REASON_WBINVD] = "WBINVD", + [EXIT_REASON_XSETBV] = "XSETBV", + [EXIT_REASON_APIC_WRITE] = "APIC write", + [EXIT_REASON_RDRAND] = "RDRAND", + [EXIT_REASON_INVPCID] = "INVPCID", + [EXIT_REASON_VMFUNC] = "VMFUNC", + [EXIT_REASON_ENCLS] = "ENCLS", + [EXIT_REASON_RDSEED] = "RDSEED", + [EXIT_REASON_PM_LOG_FULL] = "Page-modification log full", + [EXIT_REASON_XSAVES] = "XSAVES", + [EXIT_REASON_XRSTORS] = "XRSTORS" +}; + +static const char * +vmexit_vmx_desc(uint32_t exit_reason) +{ + + if (exit_reason >= nitems(vmx_exit_reason_desc) || + vmx_exit_reason_desc[exit_reason] == NULL) + return ("Unknown"); + return (vmx_exit_reason_desc[exit_reason]); +} + +#define DEBUG_EPT_MISCONFIG +#ifdef DEBUG_EPT_MISCONFIG +#define VMCS_GUEST_PHYSICAL_ADDRESS 0x00002400 + +static uint64_t ept_misconfig_gpa, ept_misconfig_pte[4]; +static int ept_misconfig_ptenum; +#endif + +static int +vmexit_vmx(struct vmctx *ctx, struct vcpu *vcpu, struct vm_run *vmrun) +{ + struct vm_exit *vme; + + vme = vmrun->vm_exit; + + fprintf(stderr, "vm exit[%d]\n", vcpu_id(vcpu)); + fprintf(stderr, "\treason\t\tVMX\n"); + fprintf(stderr, "\trip\t\t0x%016lx\n", vme->rip); + fprintf(stderr, "\tinst_length\t%d\n", vme->inst_length); + fprintf(stderr, "\tstatus\t\t%d\n", vme->u.vmx.status); + fprintf(stderr, "\texit_reason\t%u (%s)\n", vme->u.vmx.exit_reason, + vmexit_vmx_desc(vme->u.vmx.exit_reason)); + fprintf(stderr, "\tqualification\t0x%016lx\n", + vme->u.vmx.exit_qualification); + fprintf(stderr, "\tinst_type\t\t%d\n", vme->u.vmx.inst_type); + fprintf(stderr, "\tinst_error\t\t%d\n", vme->u.vmx.inst_error); +#ifdef DEBUG_EPT_MISCONFIG + if (vme->u.vmx.exit_reason == EXIT_REASON_EPT_MISCONFIG) { + vm_get_register(vcpu, + VMCS_IDENT(VMCS_GUEST_PHYSICAL_ADDRESS), + &ept_misconfig_gpa); + vm_get_gpa_pmap(ctx, ept_misconfig_gpa, ept_misconfig_pte, + &ept_misconfig_ptenum); + fprintf(stderr, "\tEPT misconfiguration:\n"); + fprintf(stderr, "\t\tGPA: %#lx\n", ept_misconfig_gpa); + fprintf(stderr, "\t\tPTE(%d): %#lx %#lx %#lx %#lx\n", + ept_misconfig_ptenum, ept_misconfig_pte[0], + ept_misconfig_pte[1], ept_misconfig_pte[2], + ept_misconfig_pte[3]); + } +#endif /* DEBUG_EPT_MISCONFIG */ + return (VMEXIT_ABORT); +} + +static int +vmexit_svm(struct vmctx *ctx __unused, struct vcpu *vcpu, struct vm_run *vmrun) +{ + struct vm_exit *vme; + + vme = vmrun->vm_exit; + + fprintf(stderr, "vm exit[%d]\n", vcpu_id(vcpu)); + fprintf(stderr, "\treason\t\tSVM\n"); + fprintf(stderr, "\trip\t\t0x%016lx\n", vme->rip); + fprintf(stderr, "\tinst_length\t%d\n", vme->inst_length); + fprintf(stderr, "\texitcode\t%#lx\n", vme->u.svm.exitcode); + fprintf(stderr, "\texitinfo1\t%#lx\n", vme->u.svm.exitinfo1); + fprintf(stderr, "\texitinfo2\t%#lx\n", vme->u.svm.exitinfo2); + return (VMEXIT_ABORT); +} + +static int +vmexit_bogus(struct vmctx *ctx __unused, struct vcpu *vcpu __unused, + struct vm_run *vmrun) +{ + assert(vmrun->vm_exit->inst_length == 0); + + return (VMEXIT_CONTINUE); +} + +static int +vmexit_reqidle(struct vmctx *ctx __unused, struct vcpu *vcpu __unused, + struct vm_run *vmrun) +{ + assert(vmrun->vm_exit->inst_length == 0); + + return (VMEXIT_CONTINUE); +} + +static int +vmexit_hlt(struct vmctx *ctx __unused, struct vcpu *vcpu __unused, + struct vm_run *vmrun __unused) +{ + /* + * Just continue execution with the next instruction. We use + * the HLT VM exit as a way to be friendly with the host + * scheduler. + */ + return (VMEXIT_CONTINUE); +} + +static int +vmexit_pause(struct vmctx *ctx __unused, struct vcpu *vcpu __unused, + struct vm_run *vmrun __unused) +{ + return (VMEXIT_CONTINUE); +} + +static int +vmexit_mtrap(struct vmctx *ctx __unused, struct vcpu *vcpu, + struct vm_run *vmrun) +{ + assert(vmrun->vm_exit->inst_length == 0); + +#ifdef BHYVE_SNAPSHOT + checkpoint_cpu_suspend(vcpu_id(vcpu)); +#endif + gdb_cpu_mtrap(vcpu); +#ifdef BHYVE_SNAPSHOT + checkpoint_cpu_resume(vcpu_id(vcpu)); +#endif + + return (VMEXIT_CONTINUE); +} + +static int +vmexit_inst_emul(struct vmctx *ctx __unused, struct vcpu *vcpu, + struct vm_run *vmrun) +{ + struct vm_exit *vme; + struct vie *vie; + int err, i, cs_d; + enum vm_cpu_mode mode; + + vme = vmrun->vm_exit; + + vie = &vme->u.inst_emul.vie; + if (!vie->decoded) { + /* + * Attempt to decode in userspace as a fallback. This allows + * updating instruction decode in bhyve without rebooting the + * kernel (rapid prototyping), albeit with much slower + * emulation. + */ + vie_restart(vie); + mode = vme->u.inst_emul.paging.cpu_mode; + cs_d = vme->u.inst_emul.cs_d; + if (vmm_decode_instruction(mode, cs_d, vie) != 0) + goto fail; + if (vm_set_register(vcpu, VM_REG_GUEST_RIP, + vme->rip + vie->num_processed) != 0) + goto fail; + } + + err = emulate_mem(vcpu, vme->u.inst_emul.gpa, vie, + &vme->u.inst_emul.paging); + if (err) { + if (err == ESRCH) { + EPRINTLN("Unhandled memory access to 0x%lx\n", + vme->u.inst_emul.gpa); + } + goto fail; + } + + return (VMEXIT_CONTINUE); + +fail: + fprintf(stderr, "Failed to emulate instruction sequence [ "); + for (i = 0; i < vie->num_valid; i++) + fprintf(stderr, "%02x", vie->inst[i]); + FPRINTLN(stderr, " ] at 0x%lx", vme->rip); + return (VMEXIT_ABORT); +} + +static int +vmexit_suspend(struct vmctx *ctx, struct vcpu *vcpu, struct vm_run *vmrun) +{ + struct vm_exit *vme; + enum vm_suspend_how how; + int vcpuid = vcpu_id(vcpu); + + vme = vmrun->vm_exit; + + how = vme->u.suspended.how; + + fbsdrun_deletecpu(vcpuid); + + switch (how) { + case VM_SUSPEND_RESET: + exit(0); + case VM_SUSPEND_POWEROFF: + if (get_config_bool_default("destroy_on_poweroff", false)) + vm_destroy(ctx); + exit(1); + case VM_SUSPEND_HALT: + exit(2); + case VM_SUSPEND_TRIPLEFAULT: + exit(3); + default: + fprintf(stderr, "vmexit_suspend: invalid reason %d\n", how); + exit(100); + } + return (0); /* NOTREACHED */ +} + +static int +vmexit_debug(struct vmctx *ctx __unused, struct vcpu *vcpu, + struct vm_run *vmrun __unused) +{ + +#ifdef BHYVE_SNAPSHOT + checkpoint_cpu_suspend(vcpu_id(vcpu)); +#endif + gdb_cpu_suspend(vcpu); +#ifdef BHYVE_SNAPSHOT + checkpoint_cpu_resume(vcpu_id(vcpu)); +#endif + /* + * XXX-MJ sleep for a short period to avoid chewing up the CPU in the + * window between activation of the vCPU thread and the STARTUP IPI. + */ + usleep(1000); + return (VMEXIT_CONTINUE); +} + +static int +vmexit_breakpoint(struct vmctx *ctx __unused, struct vcpu *vcpu, + struct vm_run *vmrun) +{ + gdb_cpu_breakpoint(vcpu, vmrun->vm_exit); + return (VMEXIT_CONTINUE); +} + +static int +vmexit_ipi(struct vmctx *ctx __unused, struct vcpu *vcpu __unused, + struct vm_run *vmrun) +{ + struct vm_exit *vme; + cpuset_t *dmask; + int error = -1; + int i; + + dmask = vmrun->cpuset; + vme = vmrun->vm_exit; + + switch (vme->u.ipi.mode) { + case APIC_DELMODE_INIT: + CPU_FOREACH_ISSET(i, dmask) { + error = fbsdrun_suspendcpu(i); + if (error) { + warnx("failed to suspend cpu %d", i); + break; + } + } + break; + case APIC_DELMODE_STARTUP: + CPU_FOREACH_ISSET(i, dmask) { + spinup_ap(fbsdrun_vcpu(i), + vme->u.ipi.vector << PAGE_SHIFT); + } + error = 0; + break; + default: + break; + } + + return (error); +} + +int vmexit_task_switch(struct vmctx *, struct vcpu *, struct vm_run *); + +const vmexit_handler_t vmexit_handlers[VM_EXITCODE_MAX] = { + [VM_EXITCODE_INOUT] = vmexit_inout, + [VM_EXITCODE_INOUT_STR] = vmexit_inout, + [VM_EXITCODE_VMX] = vmexit_vmx, + [VM_EXITCODE_SVM] = vmexit_svm, + [VM_EXITCODE_BOGUS] = vmexit_bogus, + [VM_EXITCODE_REQIDLE] = vmexit_reqidle, + [VM_EXITCODE_RDMSR] = vmexit_rdmsr, + [VM_EXITCODE_WRMSR] = vmexit_wrmsr, + [VM_EXITCODE_MTRAP] = vmexit_mtrap, + [VM_EXITCODE_INST_EMUL] = vmexit_inst_emul, + [VM_EXITCODE_SUSPENDED] = vmexit_suspend, + [VM_EXITCODE_TASK_SWITCH] = vmexit_task_switch, + [VM_EXITCODE_DEBUG] = vmexit_debug, + [VM_EXITCODE_BPT] = vmexit_breakpoint, + [VM_EXITCODE_IPI] = vmexit_ipi, + [VM_EXITCODE_HLT] = vmexit_hlt, + [VM_EXITCODE_PAUSE] = vmexit_pause, +}; diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index 7088f11f63eb..31fda7028569 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -41,11 +41,7 @@ #include #endif -#include -#include - #include -#include #ifndef WITHOUT_CAPSICUM #include @@ -73,11 +69,6 @@ #include #endif -#include -#ifndef WITHOUT_CAPSICUM -#include -#endif -#include #include #include "bhyverun.h" @@ -112,83 +103,14 @@ #include "snapshot.h" #endif #include "tpm_device.h" -#include "xmsr.h" -#include "spinup_ap.h" #include "rtc.h" #include "vmgenc.h" +#include "vmexit.h" +#include "xmsr.h" #define MB (1024UL * 1024) #define GB (1024UL * MB) -static const char * const vmx_exit_reason_desc[] = { - [EXIT_REASON_EXCEPTION] = "Exception or non-maskable interrupt (NMI)", - [EXIT_REASON_EXT_INTR] = "External interrupt", - [EXIT_REASON_TRIPLE_FAULT] = "Triple fault", - [EXIT_REASON_INIT] = "INIT signal", - [EXIT_REASON_SIPI] = "Start-up IPI (SIPI)", - [EXIT_REASON_IO_SMI] = "I/O system-management interrupt (SMI)", - [EXIT_REASON_SMI] = "Other SMI", - [EXIT_REASON_INTR_WINDOW] = "Interrupt window", - [EXIT_REASON_NMI_WINDOW] = "NMI window", - [EXIT_REASON_TASK_SWITCH] = "Task switch", - [EXIT_REASON_CPUID] = "CPUID", - [EXIT_REASON_GETSEC] = "GETSEC", - [EXIT_REASON_HLT] = "HLT", - [EXIT_REASON_INVD] = "INVD", - [EXIT_REASON_INVLPG] = "INVLPG", - [EXIT_REASON_RDPMC] = "RDPMC", - [EXIT_REASON_RDTSC] = "RDTSC", - [EXIT_REASON_RSM] = "RSM", - [EXIT_REASON_VMCALL] = "VMCALL", - [EXIT_REASON_VMCLEAR] = "VMCLEAR", - [EXIT_REASON_VMLAUNCH] = "VMLAUNCH", - [EXIT_REASON_VMPTRLD] = "VMPTRLD", - [EXIT_REASON_VMPTRST] = "VMPTRST", - [EXIT_REASON_VMREAD] = "VMREAD", - [EXIT_REASON_VMRESUME] = "VMRESUME", - [EXIT_REASON_VMWRITE] = "VMWRITE", - [EXIT_REASON_VMXOFF] = "VMXOFF", - [EXIT_REASON_VMXON] = "VMXON", - [EXIT_REASON_CR_ACCESS] = "Control-register accesses", - [EXIT_REASON_DR_ACCESS] = "MOV DR", - [EXIT_REASON_INOUT] = "I/O instruction", - [EXIT_REASON_RDMSR] = "RDMSR", - [EXIT_REASON_WRMSR] = "WRMSR", - [EXIT_REASON_INVAL_VMCS] = - "VM-entry failure due to invalid guest state", - [EXIT_REASON_INVAL_MSR] = "VM-entry failure due to MSR loading", - [EXIT_REASON_MWAIT] = "MWAIT", - [EXIT_REASON_MTF] = "Monitor trap flag", - [EXIT_REASON_MONITOR] = "MONITOR", - [EXIT_REASON_PAUSE] = "PAUSE", - [EXIT_REASON_MCE_DURING_ENTRY] = - "VM-entry failure due to machine-check event", - [EXIT_REASON_TPR] = "TPR below threshold", - [EXIT_REASON_APIC_ACCESS] = "APIC access", - [EXIT_REASON_VIRTUALIZED_EOI] = "Virtualized EOI", - [EXIT_REASON_GDTR_IDTR] = "Access to GDTR or IDTR", - [EXIT_REASON_LDTR_TR] = "Access to LDTR or TR", - [EXIT_REASON_EPT_FAULT] = "EPT violation", - [EXIT_REASON_EPT_MISCONFIG] = "EPT misconfiguration", - [EXIT_REASON_INVEPT] = "INVEPT", - [EXIT_REASON_RDTSCP] = "RDTSCP", - [EXIT_REASON_VMX_PREEMPT] = "VMX-preemption timer expired", - [EXIT_REASON_INVVPID] = "INVVPID", - [EXIT_REASON_WBINVD] = "WBINVD", - [EXIT_REASON_XSETBV] = "XSETBV", - [EXIT_REASON_APIC_WRITE] = "APIC write", - [EXIT_REASON_RDRAND] = "RDRAND", - [EXIT_REASON_INVPCID] = "INVPCID", - [EXIT_REASON_VMFUNC] = "VMFUNC", - [EXIT_REASON_ENCLS] = "ENCLS", - [EXIT_REASON_RDSEED] = "RDSEED", - [EXIT_REASON_PM_LOG_FULL] = "Page-modification log full", - [EXIT_REASON_XSAVES] = "XSAVES", - [EXIT_REASON_XRSTORS] = "XRSTORS" -}; - -typedef int (*vmexit_handler_t)(struct vmctx *, struct vcpu *, struct vm_run *); - int guest_ncpus; uint16_t cpu_cores, cpu_sockets, cpu_threads; @@ -508,6 +430,12 @@ fbsdrun_virtio_msix(void) return (get_config_bool_default("virtio_msix", true)); } +struct vcpu * +fbsdrun_vcpu(int vcpuid) +{ + return (vcpu_info[vcpuid].vcpu); +} + static void * fbsdrun_start_thread(void *param) { @@ -554,7 +482,7 @@ fbsdrun_addcpu(struct vcpu_info *vi) assert(error == 0); } -static void +void fbsdrun_deletecpu(int vcpu) { static pthread_mutex_t resetcpu_mtx = PTHREAD_MUTEX_INITIALIZER; @@ -581,376 +509,12 @@ fbsdrun_deletecpu(int vcpu) pthread_mutex_unlock(&resetcpu_mtx); } -static int -vmexit_inout(struct vmctx *ctx, struct vcpu *vcpu, struct vm_run *vmrun) -{ - struct vm_exit *vme; - int error; - int bytes, port, in; - - vme = vmrun->vm_exit; - port = vme->u.inout.port; - bytes = vme->u.inout.bytes; - in = vme->u.inout.in; - - error = emulate_inout(ctx, vcpu, vme); - if (error) { - fprintf(stderr, "Unhandled %s%c 0x%04x at 0x%lx\n", - in ? "in" : "out", - bytes == 1 ? 'b' : (bytes == 2 ? 'w' : 'l'), - port, vme->rip); - return (VMEXIT_ABORT); - } else { - return (VMEXIT_CONTINUE); - } -} - -static int -vmexit_rdmsr(struct vmctx *ctx __unused, struct vcpu *vcpu, - struct vm_run *vmrun) -{ - struct vm_exit *vme; - uint64_t val; - uint32_t eax, edx; - int error; - - vme = vmrun->vm_exit; - - val = 0; - error = emulate_rdmsr(vcpu, vme->u.msr.code, &val); - if (error != 0) { - fprintf(stderr, "rdmsr to register %#x on vcpu %d\n", - vme->u.msr.code, vcpu_id(vcpu)); - if (get_config_bool("x86.strictmsr")) { - vm_inject_gp(vcpu); - return (VMEXIT_CONTINUE); - } - } - - eax = val; - error = vm_set_register(vcpu, VM_REG_GUEST_RAX, eax); - assert(error == 0); - - edx = val >> 32; - error = vm_set_register(vcpu, VM_REG_GUEST_RDX, edx); - assert(error == 0); - - return (VMEXIT_CONTINUE); -} - -static int -vmexit_wrmsr(struct vmctx *ctx __unused, struct vcpu *vcpu, - struct vm_run *vmrun) -{ - struct vm_exit *vme; - int error; - - vme = vmrun->vm_exit; - - error = emulate_wrmsr(vcpu, vme->u.msr.code, vme->u.msr.wval); - if (error != 0) { - fprintf(stderr, "wrmsr to register %#x(%#lx) on vcpu %d\n", - vme->u.msr.code, vme->u.msr.wval, vcpu_id(vcpu)); - if (get_config_bool("x86.strictmsr")) { - vm_inject_gp(vcpu); - return (VMEXIT_CONTINUE); - } - } - return (VMEXIT_CONTINUE); -} - -#define DEBUG_EPT_MISCONFIG -#ifdef DEBUG_EPT_MISCONFIG -#define VMCS_GUEST_PHYSICAL_ADDRESS 0x00002400 - -static uint64_t ept_misconfig_gpa, ept_misconfig_pte[4]; -static int ept_misconfig_ptenum; -#endif - -static const char * -vmexit_vmx_desc(uint32_t exit_reason) -{ - - if (exit_reason >= nitems(vmx_exit_reason_desc) || - vmx_exit_reason_desc[exit_reason] == NULL) - return ("Unknown"); - return (vmx_exit_reason_desc[exit_reason]); -} - -static int -vmexit_vmx(struct vmctx *ctx, struct vcpu *vcpu, struct vm_run *vmrun) -{ - struct vm_exit *vme; - - vme = vmrun->vm_exit; - - fprintf(stderr, "vm exit[%d]\n", vcpu_id(vcpu)); - fprintf(stderr, "\treason\t\tVMX\n"); - fprintf(stderr, "\trip\t\t0x%016lx\n", vme->rip); - fprintf(stderr, "\tinst_length\t%d\n", vme->inst_length); - fprintf(stderr, "\tstatus\t\t%d\n", vme->u.vmx.status); - fprintf(stderr, "\texit_reason\t%u (%s)\n", vme->u.vmx.exit_reason, - vmexit_vmx_desc(vme->u.vmx.exit_reason)); - fprintf(stderr, "\tqualification\t0x%016lx\n", - vme->u.vmx.exit_qualification); - fprintf(stderr, "\tinst_type\t\t%d\n", vme->u.vmx.inst_type); - fprintf(stderr, "\tinst_error\t\t%d\n", vme->u.vmx.inst_error); -#ifdef DEBUG_EPT_MISCONFIG - if (vme->u.vmx.exit_reason == EXIT_REASON_EPT_MISCONFIG) { - vm_get_register(vcpu, - VMCS_IDENT(VMCS_GUEST_PHYSICAL_ADDRESS), - &ept_misconfig_gpa); - vm_get_gpa_pmap(ctx, ept_misconfig_gpa, ept_misconfig_pte, - &ept_misconfig_ptenum); - fprintf(stderr, "\tEPT misconfiguration:\n"); - fprintf(stderr, "\t\tGPA: %#lx\n", ept_misconfig_gpa); - fprintf(stderr, "\t\tPTE(%d): %#lx %#lx %#lx %#lx\n", - ept_misconfig_ptenum, ept_misconfig_pte[0], - ept_misconfig_pte[1], ept_misconfig_pte[2], - ept_misconfig_pte[3]); - } -#endif /* DEBUG_EPT_MISCONFIG */ - return (VMEXIT_ABORT); -} - -static int -vmexit_svm(struct vmctx *ctx __unused, struct vcpu *vcpu, struct vm_run *vmrun) -{ - struct vm_exit *vme; - - vme = vmrun->vm_exit; - - fprintf(stderr, "vm exit[%d]\n", vcpu_id(vcpu)); - fprintf(stderr, "\treason\t\tSVM\n"); - fprintf(stderr, "\trip\t\t0x%016lx\n", vme->rip); - fprintf(stderr, "\tinst_length\t%d\n", vme->inst_length); - fprintf(stderr, "\texitcode\t%#lx\n", vme->u.svm.exitcode); - fprintf(stderr, "\texitinfo1\t%#lx\n", vme->u.svm.exitinfo1); - fprintf(stderr, "\texitinfo2\t%#lx\n", vme->u.svm.exitinfo2); - return (VMEXIT_ABORT); -} - -static int -vmexit_bogus(struct vmctx *ctx __unused, struct vcpu *vcpu __unused, - struct vm_run *vmrun) -{ - assert(vmrun->vm_exit->inst_length == 0); - - return (VMEXIT_CONTINUE); -} - -static int -vmexit_reqidle(struct vmctx *ctx __unused, struct vcpu *vcpu __unused, - struct vm_run *vmrun) -{ - assert(vmrun->vm_exit->inst_length == 0); - - return (VMEXIT_CONTINUE); -} - -static int -vmexit_hlt(struct vmctx *ctx __unused, struct vcpu *vcpu __unused, - struct vm_run *vmrun __unused) -{ - /* - * Just continue execution with the next instruction. We use - * the HLT VM exit as a way to be friendly with the host - * scheduler. - */ - return (VMEXIT_CONTINUE); -} - -static int -vmexit_pause(struct vmctx *ctx __unused, struct vcpu *vcpu __unused, - struct vm_run *vmrun __unused) -{ - return (VMEXIT_CONTINUE); -} - -static int -vmexit_mtrap(struct vmctx *ctx __unused, struct vcpu *vcpu, - struct vm_run *vmrun) -{ - assert(vmrun->vm_exit->inst_length == 0); - -#ifdef BHYVE_SNAPSHOT - checkpoint_cpu_suspend(vcpu_id(vcpu)); -#endif - gdb_cpu_mtrap(vcpu); -#ifdef BHYVE_SNAPSHOT - checkpoint_cpu_resume(vcpu_id(vcpu)); -#endif - - return (VMEXIT_CONTINUE); -} - -static int -vmexit_inst_emul(struct vmctx *ctx __unused, struct vcpu *vcpu, - struct vm_run *vmrun) -{ - struct vm_exit *vme; - struct vie *vie; - int err, i, cs_d; - enum vm_cpu_mode mode; - - vme = vmrun->vm_exit; - - vie = &vme->u.inst_emul.vie; - if (!vie->decoded) { - /* - * Attempt to decode in userspace as a fallback. This allows - * updating instruction decode in bhyve without rebooting the - * kernel (rapid prototyping), albeit with much slower - * emulation. - */ - vie_restart(vie); - mode = vme->u.inst_emul.paging.cpu_mode; - cs_d = vme->u.inst_emul.cs_d; - if (vmm_decode_instruction(mode, cs_d, vie) != 0) - goto fail; - if (vm_set_register(vcpu, VM_REG_GUEST_RIP, - vme->rip + vie->num_processed) != 0) - goto fail; - } - - err = emulate_mem(vcpu, vme->u.inst_emul.gpa, vie, - &vme->u.inst_emul.paging); - if (err) { - if (err == ESRCH) { - EPRINTLN("Unhandled memory access to 0x%lx\n", - vme->u.inst_emul.gpa); - } - goto fail; - } - - return (VMEXIT_CONTINUE); - -fail: - fprintf(stderr, "Failed to emulate instruction sequence [ "); - for (i = 0; i < vie->num_valid; i++) - fprintf(stderr, "%02x", vie->inst[i]); - FPRINTLN(stderr, " ] at 0x%lx", vme->rip); - return (VMEXIT_ABORT); -} - -static int -vmexit_suspend(struct vmctx *ctx, struct vcpu *vcpu, struct vm_run *vmrun) -{ - struct vm_exit *vme; - enum vm_suspend_how how; - int vcpuid = vcpu_id(vcpu); - - vme = vmrun->vm_exit; - - how = vme->u.suspended.how; - - fbsdrun_deletecpu(vcpuid); - - switch (how) { - case VM_SUSPEND_RESET: - exit(0); - case VM_SUSPEND_POWEROFF: - if (get_config_bool_default("destroy_on_poweroff", false)) - vm_destroy(ctx); - exit(1); - case VM_SUSPEND_HALT: - exit(2); - case VM_SUSPEND_TRIPLEFAULT: - exit(3); - default: - fprintf(stderr, "vmexit_suspend: invalid reason %d\n", how); - exit(100); - } - return (0); /* NOTREACHED */ -} - -static int -vmexit_debug(struct vmctx *ctx __unused, struct vcpu *vcpu, - struct vm_run *vmrun __unused) -{ - -#ifdef BHYVE_SNAPSHOT - checkpoint_cpu_suspend(vcpu_id(vcpu)); -#endif - gdb_cpu_suspend(vcpu); -#ifdef BHYVE_SNAPSHOT - checkpoint_cpu_resume(vcpu_id(vcpu)); -#endif - /* - * XXX-MJ sleep for a short period to avoid chewing up the CPU in the - * window between activation of the vCPU thread and the STARTUP IPI. - */ - usleep(1000); *** 152 LINES SKIPPED *** From nobody Wed Oct 11 13:25:07 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D5v5sbRz4xNvQ; Wed, 11 Oct 2023 13:25: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 4S5D5v4zs8z3GXw; Wed, 11 Oct 2023 13:25:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030707; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aH1JpkIEG996FSgiAxOJpE4oz9z4mnql+X9a3+YcjF8=; b=mcWzbyXBjGps6mw0JrfaMweyrCUeQjdlR3RMU2K5+9/PL4OVYCYWCawCfheEeWw4m2CuB4 0oK8/3hbbAGnbke7Nqo60vTDUIsL+Oucclec3GJBjEI3mxjczCbSCH42gsG9Iwk2f+EE9K PN7FtSf640XvJynGVoL7vZOfV3xXw7GTOJay4RjWkmUfriVq4ZSl6QSDAJSEhZHjqqgXNQ nexj786jhYcsyUEqkChwd65s14AywcfSmn7elvU7UVo8uGVjDHNUFD4QL1XjD55F4a1UV+ Qen8GK8PulIhyq6jbb5Ge89lOQVMLLe+Mia/HHuxUS6uOLW1CIGJO89E4zN8BQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030707; a=rsa-sha256; cv=none; b=ZB23UQ675uLPeEUPEVCBrpaKljp1FH+12XNbjDKB0LfzERj9/cz9swIemHykPMREiWgDFq QgfP3r2KJVH8mQGdFOj4s3MrQQwOY9BYbxiKLPW+jiv5wPgp16wHExIcKheRcfS5zYxDao WcxPypvz8dBriXyT+315a/vx+HzRI3rcw+Y7rpWIYUP8DEk4vU2pJtGOUFrVgYwMACErLo Eok2akcvhCzL1LmqLsTT7Oxm7mTBA+iGIXMY06hjaOlQShN5KDoCpfSWmBm4ERBBATMokr HWta8W/OHeKA/zlWQZ4dC/ddodvcGov1SGZ/BjGCt3yE7y2WxvixJ1rMCQ9uNw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030707; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aH1JpkIEG996FSgiAxOJpE4oz9z4mnql+X9a3+YcjF8=; b=MS3hzG/BL38xRB1SkFXmAyNTnixMnwxDm9gD6Vz/tAyb3788iaQCKznDf5IVNE7y409LZ9 ffR2ly2bT49uV/Yz/ICnfz3aN8bplJlruUjV17eM6Vca1FcYjz2zxfXvvQiUY6q6R6C5kG UyCUUuzv7v+y+KMdAiElltTxD8OIJN5Nxrf/kmL2RUlzSswf6qr5laioEYDccyjsW21I39 fF6q3eIe5rJUUxPZs4HUsErdBQSUDuDdsMFfFVgPwa6jqatdEZLlAfcHnglTtcSfwab64t MuMkOz3lKWwNL7/+Vq5cj2H0sLDT2fp+3z4Ki+WdKkpyEGjbCtZl8vEFG7zVtg== 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 4S5D5v45Xtz7gG; Wed, 11 Oct 2023 13:25:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDP7XB090060; Wed, 11 Oct 2023 13:25:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDP7D9090057; Wed, 11 Oct 2023 13:25:07 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:07 GMT Message-Id: <202310111325.39BDP7D9090057@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: f22dc6dca625 - stable/14 - bhyve: Remove some unneeded includes from snapshot.c List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f22dc6dca625588985af6f239f4b43f0820e37e4 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=f22dc6dca625588985af6f239f4b43f0820e37e4 commit f22dc6dca625588985af6f239f4b43f0820e37e4 Author: Mark Johnston AuthorDate: 2023-10-04 16:23:07 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:21:56 +0000 bhyve: Remove some unneeded includes from snapshot.c MFC after: 1 week Sponsored by: Innovate UK (cherry picked from commit 145ffd5db770669339fb73d242950f76d369de1b) --- usr.sbin/bhyve/snapshot.c | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/usr.sbin/bhyve/snapshot.c b/usr.sbin/bhyve/snapshot.c index 2daef0ef74f0..86c76e679e53 100644 --- a/usr.sbin/bhyve/snapshot.c +++ b/usr.sbin/bhyve/snapshot.c @@ -44,8 +44,6 @@ #include #include -#include - #ifndef WITHOUT_CAPSICUM #include #endif @@ -79,19 +77,10 @@ #include "amd64/atkbdc.h" #endif #include "debug.h" -#include "inout.h" #include "ipc.h" -#include "ioapic.h" #include "mem.h" -#include "mevent.h" #include "pci_emul.h" -#include "pci_irq.h" -#include "pci_lpc.h" -#include "smbiostbl.h" #include "snapshot.h" -#include "xmsr.h" -#include "spinup_ap.h" -#include "rtc.h" #include #include From nobody Wed Oct 11 13:25:08 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D5w6qjGz4xP14; Wed, 11 Oct 2023 13:25: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 4S5D5w65Yfz3GWP; Wed, 11 Oct 2023 13:25:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030708; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eND62L4cb4XhhpbncgkGcsa78QHA8XOayrfWY1FJLlk=; b=DUX5XbCg2yR3aCgYW8LkfAYWiSef9EL23U2W8+Aap1VWqIq80EQ4BO4SBVC7b0DzZSzuV+ iJntMax+1yPyS0hXRFBwKhxHriTFi7OaTyn1nM/AlxiIuJM73njyYsf8aZpNTBS8+MvZJ0 vTfun2EO8+6MZ8Rufx0tNEceoWdLxB8LvkFx5DzBzcH04LBov8ZuYfcQvJKTw3DLe7owwO wxEbFy3QuvahG8Mse5ptr0rpqsI8Hv7gK1ENH+xeSy/WPa9J2zzyt/yt7UTgp8wBPJMHDq msOSEzyAn21WPTqV6xswwBwe5QRYdRtzi1P+DZD5B+nxr5TlUs7NT7DQIFG6FQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030708; a=rsa-sha256; cv=none; b=KeyGC5bIaCA+veFasP8Sf5zWubkBYCZFfU7WqSorMG/IWvMupp1gTW8veQktejQcrKb1AD 9te7QvxU+DnGtXPoOX+seCKPxsD07YMjfL5eMXdgw2J+htFkhIOEjCjExJYLAd3j0/RtpT LB4Y3uGgboLSGyEKFCidEho0DD94wIDJBDNPHIHWAvXS1kESr8HiXts+rpzfqZeJvTsitr nUYv9f4VuapWvj2Ao/iLUupUziS88DUKRchY6h/jHF2iIOFZWVgAW5mq7NOLdx5MauhncX TnvI21/6lrnJinokMLCuNeFWRMqxyxx/Vv44UDnLqYniM4CTfBoWSGFjUvh2sQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030708; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eND62L4cb4XhhpbncgkGcsa78QHA8XOayrfWY1FJLlk=; b=Tw6qts3u/txA6BRDR5X0n5a0SzcVfxNUqIht2Q3oy1o6gyXzHwCQCHNiRUYUQACLhrXzj+ eL3qSEylbof3yKkO8Mqxu3uwNOMBdMsjc9FuMbUn0SzeFV0El+y0Mx8qWh7qp5IcO7N17B 0mS3K2Yt4FBkYpzEA0COkF+uRnU/KL+AFDkg10wgfBwfvK6R3ECEGKk4PlZ9AL4N7eBw6u D68n3Z8cFn6WBuwH03UjCL4jJMhFZ+11f4HB85xb5IyrLwiFWoTja4C9OI+Mx3/c/fbiwO Yl/p0+DhOyfee28AZubN5KhbBPLNbhePWUgGbUoZPp+nCUZqWPMc/06s3SjftQ== 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 4S5D5w5BrBz7cw; Wed, 11 Oct 2023 13:25:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDP8ck090105; Wed, 11 Oct 2023 13:25:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDP8YK090102; Wed, 11 Oct 2023 13:25:08 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:08 GMT Message-Id: <202310111325.39BDP8YK090102@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 3f23b202e199 - stable/14 - bhyve: Move MSR emulation into amd64/ List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 3f23b202e199a0a0d823ac2bbe835f2afde386c8 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=3f23b202e199a0a0d823ac2bbe835f2afde386c8 commit 3f23b202e199a0a0d823ac2bbe835f2afde386c8 Author: Mark Johnston AuthorDate: 2023-10-04 16:23:22 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:21:58 +0000 bhyve: Move MSR emulation into amd64/ No functional change intended. Reviewed by: corvink, jhb MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40733 (cherry picked from commit 548b11228f7a83785dcf6c4c8b0bbfed0284d794) --- usr.sbin/bhyve/Makefile | 3 +-- usr.sbin/bhyve/amd64/Makefile.inc | 3 ++- usr.sbin/bhyve/{ => amd64}/xmsr.c | 0 usr.sbin/bhyve/{ => amd64}/xmsr.h | 0 usr.sbin/bhyve/bhyverun.c | 6 +++++- 5 files changed, 8 insertions(+), 4 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index 5f13d457d914..30ecf56ae748 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -76,8 +76,7 @@ SRCS= \ vga.c \ virtio.c \ vmexit.c \ - vmgenc.c \ - xmsr.c + vmgenc.c .if ${MK_BHYVE_SNAPSHOT} != "no" SRCS+= snapshot.c diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc index 6843cec4919f..d655708210ce 100644 --- a/usr.sbin/bhyve/amd64/Makefile.inc +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -7,7 +7,8 @@ SRCS+= \ post.c \ ps2kbd.c \ ps2mouse.c \ - task_switch.c + task_switch.c \ + xmsr.c .PATH: ${BHYVE_SYSDIR}/sys/amd64/vmm SRCS+= vmm_instruction_emul.c diff --git a/usr.sbin/bhyve/xmsr.c b/usr.sbin/bhyve/amd64/xmsr.c similarity index 100% rename from usr.sbin/bhyve/xmsr.c rename to usr.sbin/bhyve/amd64/xmsr.c diff --git a/usr.sbin/bhyve/xmsr.h b/usr.sbin/bhyve/amd64/xmsr.h similarity index 100% rename from usr.sbin/bhyve/xmsr.h rename to usr.sbin/bhyve/amd64/xmsr.h diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index 31fda7028569..005acec77a93 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -106,7 +106,9 @@ #include "rtc.h" #include "vmgenc.h" #include "vmexit.h" -#include "xmsr.h" +#ifdef __amd64__ +#include "amd64/xmsr.h" +#endif #define MB (1024UL * 1024) #define GB (1024UL * MB) @@ -1011,11 +1013,13 @@ main(int argc, char *argv[]) exit(4); } +#ifdef __amd64__ error = init_msr(); if (error) { fprintf(stderr, "init_msr error %d", error); exit(4); } +#endif init_mem(guest_ncpus); init_inout(); From nobody Wed Oct 11 13:25:09 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D5y01XJz4xNvT; Wed, 11 Oct 2023 13:25:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5D5x6dn5z3GfY; Wed, 11 Oct 2023 13:25:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030709; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Bc4k0GJpoqMo3k7Vj6JjmVlEMQ1k2tTqdnDXM+zqhY8=; b=UElW9NCGXcaM/N80Sldkd6Iv+HTNC4YaBWiK68GKtjlCJ1r99nsr6OaAx08UE+7tUzZqhg SPjGFRe0riCLBZJqZ+/O5RNppRYEQGrnCssUZbr6FspjyxbRs2ZrmCLoSUJDUFJDiVQPv7 vsaljCAGWOngsJjK60ElVnLyaEflh0w4JdbpyTL7TZsCpa43DXa40ShzQyJPvu7DLz2aCr 8PG8LBr661bQk8v6C8u+pPAuIn1u/5mbBJA90ytgBD3bQdu8gLz+6R6HRrDS2B5C1PJDXu yTXL4OFgY79afUcc42ap4i5hFSBPiSJ9tpJ6DRnTc7aOKokRq4LRWfToPetrUA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030709; a=rsa-sha256; cv=none; b=sagDRTellxNVYljMhc1Ldg2jxRDb6/cFQwm5V/IxGDYJTmRMe9Tck6cwwHoO4i/vPEeAB1 YDT+xIDTwjemxok9D3E5uDrSgwDnNeV4sWe/BEmSuJJp8hOWnYPGT0XU/rMffctar7RoJ2 H+oOrFhJT3v6l6cqfNPInFdBHrus+XrGFsVECjoVpczW6adYhwHT53KtskkzGz+vnX3JY0 1b+xC84QFTzARSnqYZJUf4SUOBTzskZIheXnAXjV5sd9uyxNAAntqPa9p7BuFSUbFGux/+ gYaRy/3ti6bysEAMNLOFxOX1Osa+coQKeK4iFCCRmmymXXo6hMVIDibwZUIokA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030709; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Bc4k0GJpoqMo3k7Vj6JjmVlEMQ1k2tTqdnDXM+zqhY8=; b=R6QjnjaFbzi1/WPkCd7nX/Fk4JZ6HFlRx+gB5cUrmNA+0kTHQf+JU1z7IQxGeDlZQgjPlN pOLVsrFVpr0ducHsEz7Q/ItGPf2IvqNlF+ob9Ed1F5AR1E2qB3Qen/VFESxq22CKli5db/ cFRgTQzO1U++/vpRn0o6ysPycKv3si2m3DT8hgjMeiJyn8ChT22XiFov/AAnjGzExIBw18 LsbjlpaQ1gmZGalhRmbpOD8zBA3buQu/NAatZY9flnu6ZvnNWDJHKZ3SSlDHqw+M/QdwwV L/M+2ygWc0t+wJ/YEtPGfM66zQgW8ao4BHZk4xcM+3QRu4nclo5xFfTCcQsmFQ== 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 4S5D5x5hRKz7gH; Wed, 11 Oct 2023 13:25:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDP9Bv090159; Wed, 11 Oct 2023 13:25:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDP9Eh090156; Wed, 11 Oct 2023 13:25:09 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:09 GMT Message-Id: <202310111325.39BDP9Eh090156@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 83a8ffc20205 - stable/14 - bhyve: Move the RTC driver to amd64/ List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 83a8ffc20205fe4389a57d22bdeacf91eb365b12 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=83a8ffc20205fe4389a57d22bdeacf91eb365b12 commit 83a8ffc20205fe4389a57d22bdeacf91eb365b12 Author: Mark Johnston AuthorDate: 2023-10-04 16:23:36 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:21:59 +0000 bhyve: Move the RTC driver to amd64/ No functional change intended. Reviewed by: corvink, jhb MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40734 (cherry picked from commit a7f6c2ff732db1d0032066109ee0dd5af1a39b81) --- usr.sbin/bhyve/Makefile | 1 - usr.sbin/bhyve/amd64/Makefile.inc | 1 + usr.sbin/bhyve/{ => amd64}/rtc.c | 0 usr.sbin/bhyve/{ => amd64}/rtc.h | 0 usr.sbin/bhyve/bhyverun.c | 8 +++++++- 5 files changed, 8 insertions(+), 2 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index 30ecf56ae748..ef78b149c68c 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -62,7 +62,6 @@ SRCS= \ qemu_fwcfg.c \ qemu_loader.c \ rfb.c \ - rtc.c \ smbiostbl.c \ sockstream.c \ spinup_ap.c \ diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc index d655708210ce..a18b98a157ec 100644 --- a/usr.sbin/bhyve/amd64/Makefile.inc +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -7,6 +7,7 @@ SRCS+= \ post.c \ ps2kbd.c \ ps2mouse.c \ + rtc.c \ task_switch.c \ xmsr.c diff --git a/usr.sbin/bhyve/rtc.c b/usr.sbin/bhyve/amd64/rtc.c similarity index 100% rename from usr.sbin/bhyve/rtc.c rename to usr.sbin/bhyve/amd64/rtc.c diff --git a/usr.sbin/bhyve/rtc.h b/usr.sbin/bhyve/amd64/rtc.h similarity index 100% rename from usr.sbin/bhyve/rtc.h rename to usr.sbin/bhyve/amd64/rtc.h diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index 005acec77a93..a1ab5bd32fec 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -103,7 +103,9 @@ #include "snapshot.h" #endif #include "tpm_device.h" -#include "rtc.h" +#ifdef __amd64__ +#include "amd64/rtc.h" +#endif #include "vmgenc.h" #include "vmexit.h" #ifdef __amd64__ @@ -899,9 +901,11 @@ main(int argc, char *argv[]) case 'e': set_config_bool("x86.strictio", true); break; +#ifdef __amd64__ case 'u': set_config_bool("rtc.use_localtime", false); break; +#endif case 'U': set_config_value("uuid", optarg); break; @@ -1033,7 +1037,9 @@ main(int argc, char *argv[]) pci_irq_init(ctx); ioapic_init(ctx); +#ifdef __amd64__ rtc_init(ctx); +#endif sci_init(ctx); if (qemu_fwcfg_init(ctx) != 0) { From nobody Wed Oct 11 13:25:10 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D5z2TRFz4xNvW; Wed, 11 Oct 2023 13:25:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5D5z0qyGz3GRg; Wed, 11 Oct 2023 13:25:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030711; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gCTiyEzlULPzUFfP3e6jEjQU2zpM+iMIIhFTuz+p8lo=; b=VV8B9wZlb9I+RHCoOrj9FcPA0lTELd+JLvj0oaCiZ5kotJWsAqWWactvyELyrLDzNdaqTZ sWiIHK5miw0dv3Eb1jj2LN/nxZfBBHu+XjWXebKZPCERSh7tN2NMIHdNOW2Rl4osWvXXcM xFEjfu2Pqau1Z9He4Q8mQk+Ay39N7UeUTWTC8n4H7lnhCkRPN0j7JYhY8m30AzJ1Iqwwnm OKcjsczaL4ZOGhgOHNlelFBawAapOkhso2jGoq5qnYfwOV56ECxD7i3WNeUDjt6VOHNrTU P2EhiWB3VNfELVH1KY7U71/Ncfx0bhxk9NUItvDDoG7nK/jGkTJ6inHk5jsNcw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030711; a=rsa-sha256; cv=none; b=Dz7G3194cijGRned4EiRoy/ogessMvQpeWtNuN/M6aXQFJLnRvB50P0WoRXGpLwEpdGmsR cCQ9+7kwQoSLZtf8H6CJ3b5gmgcagXQYJ6dBN1e36MkFD7DuBu34Lna3tQHks9bLWGw2Rw d2QiOvI/iBNuBHg8Se5xkwOCdFWW+bXcS4rSZZHTHOuZJvHFRTjQOYWqZfPDcWby+qE268 PdiKG9XZRr/YXKyWXKvir1VpG7G5BHR7YYpyILK946IX9fvNIsCVxu8iw/Ufbmbg1aKb6I dIfUcqoPdXCQwX7CSWAUaIiGNRx8v3WmcttUtsKNT1bZcBGfVu8SI5UNgu8AKA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030711; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gCTiyEzlULPzUFfP3e6jEjQU2zpM+iMIIhFTuz+p8lo=; b=j+nUHlGo/R6DQbDoUsSXixajxH8uS6lOM1dzMXatnzGgwSzkcA+WF7GWyByK7hSEnxJ/pr 7nBpMvwU5q5kD9TkIUl5xms5Qd6SSCqhfp2CSkz/nen5b5dVM3A43cEl1txgnA0a/3lfOj k2ooMpJ4mUVG7adFSChRMSqpTD8rSUwY+UsJJKgeD+FAnhnQdsGLJEYo5XF6mC0Esu2I2W AONeP9abAbzCGwjZ6SonOF+t64iikf4Xhl72VoUAIuPj64kaUIRL38pq6bswNCDBEXyxfd aom2Jkay+vM7x9vvBlh1YP+TkL5tyeaq/s/YmYeEo+2ukMNXT6UIVi2z/e+jCg== 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 4S5D5y736Rz7Jw; Wed, 11 Oct 2023 13:25:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDPAbW090207; Wed, 11 Oct 2023 13:25:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDPAtl090204; Wed, 11 Oct 2023 13:25:10 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:10 GMT Message-Id: <202310111325.39BDPAtl090204@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 143fde3faf72 - stable/14 - bhyve: Move power management code to amd64/ List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 143fde3faf72184227bdbbbf995aa3e5173e6d22 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=143fde3faf72184227bdbbbf995aa3e5173e6d22 commit 143fde3faf72184227bdbbbf995aa3e5173e6d22 Author: Mark Johnston AuthorDate: 2023-10-04 16:23:50 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:22:00 +0000 bhyve: Move power management code to amd64/ This implements various x86-specific interfaces. No functional change intended. Reviewed by: corvink, jhb MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40735 (cherry picked from commit 75d1e855b0a2acfb60e5a3c81b018d8f73ebf450) --- usr.sbin/bhyve/Makefile | 1 - usr.sbin/bhyve/amd64/Makefile.inc | 1 + usr.sbin/bhyve/{ => amd64}/pm.c | 0 usr.sbin/bhyve/bhyverun.c | 2 +- 4 files changed, 2 insertions(+), 2 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index ef78b149c68c..7c14dbc4a524 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -58,7 +58,6 @@ SRCS= \ pci_virtio_scsi.c \ pci_xhci.c \ pctestdev.c \ - pm.c \ qemu_fwcfg.c \ qemu_loader.c \ rfb.c \ diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc index a18b98a157ec..a176b0e5471f 100644 --- a/usr.sbin/bhyve/amd64/Makefile.inc +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -4,6 +4,7 @@ SRCS+= \ fwctl.c \ kernemu_dev.c \ mptbl.c \ + pm.c \ post.c \ ps2kbd.c \ ps2mouse.c \ diff --git a/usr.sbin/bhyve/pm.c b/usr.sbin/bhyve/amd64/pm.c similarity index 100% rename from usr.sbin/bhyve/pm.c rename to usr.sbin/bhyve/amd64/pm.c diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index a1ab5bd32fec..2c32e2a56fbb 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -1039,8 +1039,8 @@ main(int argc, char *argv[]) #ifdef __amd64__ rtc_init(ctx); -#endif sci_init(ctx); +#endif if (qemu_fwcfg_init(ctx) != 0) { fprintf(stderr, "qemu fwcfg initialization error"); From nobody Wed Oct 11 13:25:12 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D6045YPz4xP17; Wed, 11 Oct 2023 13:25: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 4S5D601hzyz3GRm; Wed, 11 Oct 2023 13:25:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030712; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=k3p24lOwVUT/4S2w0m/SQh/UMRLskOuVfBm3KuTpYzs=; b=LVnIMUGm/azsKb+KpNzTr9N1gWlFHBBL+1rfrqwY/WKZ2gCU19oH0JteZAPGxFPmXdw4BF Waq77kKudSL4JFHmq019ZFK7pFLqebKPm8BGoCscbyvcBF9AbNVkdsWuHH+Ti6USPZd3it 0+nEi0DXRbEwG96PiAFzH7U0eDYSURjipWh4Pj07duUj1ZXajtp+IKn3JcGAI7WuuI4CXP 6jjzkOPxvxLbJUZVhtIFeNgFYMPU8DAUlli8Rk1M8lt1Z+Nk+ZgFWuQUAy31XAQM6jhj8P m5B2RZWtYCdxw31+UKw77U4Sj8NjUYpqJOfMAdoxoVmaovlSwQlXjQKQev9xuA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030712; a=rsa-sha256; cv=none; b=pQ4rhBjVdPnNO2cqEjmnmmjf2+PazEHKPpfnaOxOHVpF7+vPlvNgaIw7/Mc6JV1r0ooLY0 PJ/K7bBiQzuhcx3AylSWeY3hCKQ0VttXD0MG8c2bhmixGYfyi4NHP1VWNPqTEtpZvgktAz 3g8huxbwTbJORkekxCjWn3cmanTtUHtZ1y7Hy6QeBekb8cj5QugBslfYqCA9It3Mb9ORRg zlPFEumaprzic6jRXay65MXIrZsj2e3+neeC5FAhe7vhC0g7g9nV2QlvvQcwDOQQHhaqI4 i0WL0vIkrJ7Quwe6+Ia06Jl68YFqY6jOoTZML2unJKau2VswqeXr43vrQm8f/A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030712; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=k3p24lOwVUT/4S2w0m/SQh/UMRLskOuVfBm3KuTpYzs=; b=l7C6JFg5FSFpDQ1rOpAlA7YEciwCuCP8YHmUF0AZuP6XuwVxwpVgKG5LHc0Fli8MxSo9BH KO9Q0NLWwGG9oZ3crS/lPrHskWWK1OyIvYQGLBzg97cSN3fM22dhgKf+rsb1VCzLKlvGpi 88BIq15uMTjTzKmqA5D36LDbvE0Lg+X6463LVhzztPllueBVfuPLl1oecw3j6KapYoTxrh gtguMfrLPYwDcKn5rxKlW5NAIF/QOJw29tQvRxkMUaH3msJWGn1ZoSpJ4Zf+QsbhA3JGm9 grvhNU9+5QLK1KH2yUfhGw/0jnGvshDg5VufFbVThzaVMk48ai+m70Z4L15J8g== 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 4S5D600nJdz7rv; Wed, 11 Oct 2023 13:25:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDPCTV090255; Wed, 11 Oct 2023 13:25:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDPC6E090252; Wed, 11 Oct 2023 13:25:12 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:12 GMT Message-Id: <202310111325.39BDPC6E090252@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 2efcefea15e2 - stable/14 - bhyve: Move the gvt-d driver to amd64/ List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 2efcefea15e25b1d000318105282bf4d59c607ed Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=2efcefea15e25b1d000318105282bf4d59c607ed commit 2efcefea15e25b1d000318105282bf4d59c607ed Author: Mark Johnston AuthorDate: 2023-10-04 16:24:04 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:22:01 +0000 bhyve: Move the gvt-d driver to amd64/ It is amd64-only. No functional change intended. Reviewed by: corvink, jhb MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40736 (cherry picked from commit 4ab7aea8ec2f5fac0e6d140300c8f04db99d83df) --- usr.sbin/bhyve/Makefile | 1 - usr.sbin/bhyve/amd64/Makefile.inc | 1 + usr.sbin/bhyve/{ => amd64}/pci_gvt-d-opregion.h | 0 usr.sbin/bhyve/{ => amd64}/pci_gvt-d.c | 0 4 files changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index 7c14dbc4a524..d510c32fccd0 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -41,7 +41,6 @@ SRCS= \ pci_e82545.c \ pci_emul.c \ pci_fbuf.c \ - pci_gvt-d.c \ pci_hda.c \ pci_hostbridge.c \ pci_irq.c \ diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc index a176b0e5471f..5caecb35a620 100644 --- a/usr.sbin/bhyve/amd64/Makefile.inc +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -4,6 +4,7 @@ SRCS+= \ fwctl.c \ kernemu_dev.c \ mptbl.c \ + pci_gvt-d.c \ pm.c \ post.c \ ps2kbd.c \ diff --git a/usr.sbin/bhyve/pci_gvt-d-opregion.h b/usr.sbin/bhyve/amd64/pci_gvt-d-opregion.h similarity index 100% rename from usr.sbin/bhyve/pci_gvt-d-opregion.h rename to usr.sbin/bhyve/amd64/pci_gvt-d-opregion.h diff --git a/usr.sbin/bhyve/pci_gvt-d.c b/usr.sbin/bhyve/amd64/pci_gvt-d.c similarity index 100% rename from usr.sbin/bhyve/pci_gvt-d.c rename to usr.sbin/bhyve/amd64/pci_gvt-d.c From nobody Wed Oct 11 13:25:13 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D613wj7z4xNmF; Wed, 11 Oct 2023 13:25:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5D613CSfz3GdS; Wed, 11 Oct 2023 13:25:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030713; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zQ6b+OoD/U6AgZPgZaUC5hmejYB3mS3hB91JKDSMvG4=; b=NLyuJ96v8+g/JausH61qw+IJQlNkJFSFlTZ0K9rUeV7ze67HnM34vplOiYlKSHybrfGtPW iI3EUMt0haaUwk/tlnsLFafHD54nrbZ+0R+zvUZ+PMRRtUrIIa1SrogL8B9Gm3+NcUuVKg 1dNo6tvmnB0hfAlt2SThYEakr7z5fVtCjD3XOiorzWwip2LexQvxEgp1bZ3Q2YpEnCNVFE 0UOIm2KaiqD/zynMcdrOinE7ZsUJDRyXNs8ivk1pEdxgSxQBiNQzML2965u5yBpywWRsSG OKO6IiFhmLkyksHP5oi9J1rZXDKHXILvCeafd/58WsqP4ZSOeFgfePUdiBiOJA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030713; a=rsa-sha256; cv=none; b=R6upSoYMueT4bwIu+HZpMR/nUsphy2/nCHsXLKSOh6KH1E0/2qzZ+thUA+k8raz/9XZndb cGc3m8voBLLMoeKOLl/wB/5CQSztL8UI1W0/wz0plGtBGizrRmi8IQwpJX0Khg06/SZlN5 jNAnWPajxeqlXQ+xHdEAMlM4l6roZIN+75RU+4Yn7rVYplgU5Ovo1Gfj2PldhUXAssBOwM U5oYfFFCVuaB8HlfxpeQWGM7+0jkQaKoOOsLzxac4R8D4O0AiKVup2WjAhjThJWxYpKgUx GMSq0AE40a2dnQO+tvMyVL2NcDQiRzoqjrq9gcr3k8upuxEqmSw5JHVhzyABPQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030713; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zQ6b+OoD/U6AgZPgZaUC5hmejYB3mS3hB91JKDSMvG4=; b=IUIjcVS62leLhFqkIDorbcoqj1XEu/ppQol/FGwTf0okGA/ysoVm9xHn6Jt/0MLD0NUd7h vP4LASn4IohlV8FrHK0fNA7Zk4hwQn5r02aMzjm4+bM3fCvkEiEDBhM5l/RVeNOCntd/eA DeaLBUb+0lV/MauYixl+GUyceM/k5UxI1bjXOiMFO+rIvUFJUPGoAfHc3VnvvwGuoY7GKK tk2xz9JWZG3J4D0HOVH6WKMqlzIu7mDwwa1WT6BHR7mdN7NjzbNJxr4+F2eNf6SiJAtNa6 Iurp7o2B7rn5WgmNLxCxZ/ElqCMayx8KIftmqBI53zrumN/5m9LMZ6TGD4nPHg== 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 4S5D611z0Nz7PK; Wed, 11 Oct 2023 13:25:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDPDMO090303; Wed, 11 Oct 2023 13:25:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDPDq9090300; Wed, 11 Oct 2023 13:25:13 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:13 GMT Message-Id: <202310111325.39BDPDq9090300@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 4b5b18f0cfbb - stable/14 - bhyve: Move AP startup code to amd64/ List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 4b5b18f0cfbbad795afa505ace37e2e5654ee1c0 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=4b5b18f0cfbbad795afa505ace37e2e5654ee1c0 commit 4b5b18f0cfbbad795afa505ace37e2e5654ee1c0 Author: Mark Johnston AuthorDate: 2023-10-04 16:24:19 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:22:03 +0000 bhyve: Move AP startup code to amd64/ This code is only invoked via MD vmexit handlers. No functional change intended. Reviewed by: corvink, jhb MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40737 (cherry picked from commit c7c5d3e3888aa9018297794285dcd884e6182bd5) --- usr.sbin/bhyve/Makefile | 1 - usr.sbin/bhyve/amd64/Makefile.inc | 1 + usr.sbin/bhyve/{ => amd64}/spinup_ap.c | 0 usr.sbin/bhyve/{ => amd64}/spinup_ap.h | 0 4 files changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index d510c32fccd0..f6db03a3358b 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -62,7 +62,6 @@ SRCS= \ rfb.c \ smbiostbl.c \ sockstream.c \ - spinup_ap.c \ tpm_device.c \ tpm_emul_passthru.c \ tpm_intf_crb.c \ diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc index 5caecb35a620..824f12861923 100644 --- a/usr.sbin/bhyve/amd64/Makefile.inc +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -10,6 +10,7 @@ SRCS+= \ ps2kbd.c \ ps2mouse.c \ rtc.c \ + spinup_ap.c \ task_switch.c \ xmsr.c diff --git a/usr.sbin/bhyve/spinup_ap.c b/usr.sbin/bhyve/amd64/spinup_ap.c similarity index 100% rename from usr.sbin/bhyve/spinup_ap.c rename to usr.sbin/bhyve/amd64/spinup_ap.c diff --git a/usr.sbin/bhyve/spinup_ap.h b/usr.sbin/bhyve/amd64/spinup_ap.h similarity index 100% rename from usr.sbin/bhyve/spinup_ap.h rename to usr.sbin/bhyve/amd64/spinup_ap.h From nobody Wed Oct 11 13:25:14 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D624xSXz4xNpX; Wed, 11 Oct 2023 13:25:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5D624K24z3H0Y; Wed, 11 Oct 2023 13:25:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030714; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=k3bjddA4oOqzO6gwAim+lLtpK0z1YusuyqP+llc/zX0=; b=EbxMN9z3UFKXnd4qEMobm51XpedwSKqhAmWgFsyXfSu51V3nfk3GzDPakYMMswziRTeNwC njXbsWZWbFH+wjTXvpXXWuBv99T5Ciwu+jfa6sI+vrFCeJPunQiJ3LfR9lHt5mtBY2FXs0 VOn5VGpE6gXTzcvLBgvJLbyvQcz9n+4V8CxtFi/fA88STqheK3bhTBhU6fSaKEtYc+JKrv FY8ge5l3Nna6DYQykZfHwPZdoKFOAEKwDge3NEeXz5cqV58soL1O43x0q2o0oGjYS031oG Wp4VqEXoM5RxGEX7DggByuVYuqbwoo7KCQzhZ2e9Kejl4P8MeMeLiHI1IB0GTg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030714; a=rsa-sha256; cv=none; b=J0YXbAaIWvXUkXKEWRHB2JtbQAZqqgwGLDzm/R78zsC1ZhdZSBti569XQLMQhuF8O172Ql d4sxqxDuA+XXRvQFEUOw9kak4BPiQtPok8fEz2RjasfI2VIUlgcFqiakpladb/EfWQZpsA WH1lCDt4ULi+cVBQVGqzo0hpkFyPlsrg/Q2jwFZxcby8yIp6mfwzBdwrlWMJSvZrxPn+01 dHBaO6RDjDIQVlc9fSmwUJKwhx1LRzUqLPnasG5TIQJRzi4jKsoLYS3QMnLgvVhHKobDp/ UBY9NgHzx5STVVF+X2cWhofDv9YajWjC4aD6KhQifehPTYQ257KJ0qVlPeG0kw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030714; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=k3bjddA4oOqzO6gwAim+lLtpK0z1YusuyqP+llc/zX0=; b=gV/CLw8O2+jjLpc9FnxvR8nyRZHWZo/rfGoUBJT+F3MZ6tv+HYvb/y3xOa7ms28w9xzELq 95aEbsKpftUBQhE+xYVV2XRBbQy4Vkk43Pp5pkBI6fXLkLa9FYpXBXwtMWqsgk2qChkjEv 9UmctFi6XXAT09CSpCBIZjPIvdlX3ZrEnEPbdAB0KqkgNBxpAmgcFd+Ra3R+hWXOjvH3dl CZFDtdWfLwlCq8Chx3uoDlnoCDV4EBDwNxDjnHcpKS1SH/cVjLHXY+2wAH/i4BFFUqiKoF wejQxDK042wHt0IGEvtePW7IMvQhCbe7oeZd5g1OATgSP3KLbjulLIGKAGWRuA== 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 4S5D623Lp0z7rw; Wed, 11 Oct 2023 13:25:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDPEa8090359; Wed, 11 Oct 2023 13:25:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDPEG5090356; Wed, 11 Oct 2023 13:25:14 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:14 GMT Message-Id: <202310111325.39BDPEG5090356@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 4e509e693f32 - stable/14 - bhyve: Compile some device models only on amd64 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 4e509e693f3240f6e45972faad84e97e3d15e9ca Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=4e509e693f3240f6e45972faad84e97e3d15e9ca commit 4e509e693f3240f6e45972faad84e97e3d15e9ca Author: Mark Johnston AuthorDate: 2023-10-04 16:24:57 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:22:04 +0000 bhyve: Compile some device models only on amd64 These models register legacy PCI interrupts, which won't be supported in the arm64 port. In principle it should be possible to make these models work on arm64 with a bit of effort, so don't move the sources to the amd64 subdirectory. No functional change intended. Reviewed by: corvink, jhb MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40738 (cherry picked from commit 71cc76e8d78eba4f6ff158c1d163af573a52580e) --- usr.sbin/bhyve/Makefile | 6 ------ usr.sbin/bhyve/amd64/Makefile.inc | 6 ++++++ 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index f6db03a3358b..0ec6ad73e2a2 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -37,17 +37,13 @@ SRCS= \ mevent.c \ net_backends.c \ net_utils.c \ - pci_ahci.c \ - pci_e82545.c \ pci_emul.c \ pci_fbuf.c \ - pci_hda.c \ pci_hostbridge.c \ pci_irq.c \ pci_lpc.c \ pci_nvme.c \ pci_passthru.c \ - pci_uart.c \ pci_virtio_9p.c \ pci_virtio_block.c \ pci_virtio_console.c \ @@ -55,8 +51,6 @@ SRCS= \ pci_virtio_net.c \ pci_virtio_rnd.c \ pci_virtio_scsi.c \ - pci_xhci.c \ - pctestdev.c \ qemu_fwcfg.c \ qemu_loader.c \ rfb.c \ diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc index 824f12861923..862aeddb16e0 100644 --- a/usr.sbin/bhyve/amd64/Makefile.inc +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -4,7 +4,13 @@ SRCS+= \ fwctl.c \ kernemu_dev.c \ mptbl.c \ + pci_ahci.c \ + pci_e82545.c \ pci_gvt-d.c \ + pci_hda.c \ + pci_uart.c \ + pci_xhci.c \ + pctestdev.c \ pm.c \ post.c \ ps2kbd.c \ From nobody Wed Oct 11 13:25:15 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D636CYKz4xNZm; Wed, 11 Oct 2023 13:25: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 4S5D635rgQz3H10; Wed, 11 Oct 2023 13:25:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030715; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=218K8wk325suH3h+g2Dc/6VpotQBoc/82gTzpukM9yk=; b=wXvuMYQZRfx1a3yF2N7CdyjXA/0qYqSA2g+fPpiJ+8Cu6avF9BLVru1iaDvWnGRTj976Iw Zskbb3hEfPztsFPG+3oT7lOvprw8KTsMy1KV5vPU111+xLW/DH2Q8xNuMwr5jJLbsAXe3I 01AuKXV2Vy0dWLhLhlfQZhp1lYuNeZODThS+uP5xFam7ucgEI5cD6W4cs68qkKXe44AGYM Eb8D1XnSuIDSfA+Mns4buv2YbldkW737eWL++0LKWKAyhvG99plhl7qycvVW4MXh3TIcmc ZgFC3Gop6ii28TcR6NRYGX11Tb3vWeTvmkQyK9lJm+MRyE3ttlnHErObwb6MNQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030715; a=rsa-sha256; cv=none; b=PVujNWrVXp9WU46an2wsysWDnoangeqSTh1jSaNeTZQxmzojvuaI/VNpji/YhcW/07FugF ZwSIA4atLFOep0+uYlXasDNZW8d5WseY0VJpw+aPgiNSGluau+PVUOwD2Em6NRwU4csy++ +3R+tCnHm2VDi3gs5KBY3g+GMxOYMgINiS/lb3KOGzd0GBCMPUwNSMxz3M7GiULwl8u7wk 1obZhjMcw91JVr5b3TS2pcUmvWaLEEEhuCP/nfTM2DAWBKDdWT43mTYE60+gWZHeIw5CnC PMiEPfuHJeti5+OPkZCjxC/tQ7deTBaB4fAeZ2I3ALaedAqK213F+pX2VGLBeQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030715; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=218K8wk325suH3h+g2Dc/6VpotQBoc/82gTzpukM9yk=; b=LBInRY3TMOGZsFIGGyuj4GmShM8mEXTj/TxlhZi67FPmYJevyaOZPzFKrF/coZNRC5e5Qm 38iQMotHAzXshvsG19zKIINNzq4qwAKlZswU+aE7LBspZ+G/4afPqWFvISr/A+T4kpsjOd /N7Eq/HpMCe2un7nSqOkIrPsC7qTpOzerAk7umVHXJIghcPjv5UFZIvUUJkVwHrAc1WPki C7ON63sO+PB91m3cMj8xM0ct/wDcW2fTnrqas4a2JBn5tcsnWbjPqosUMYhZt7X0afnzxf ZjC2t07v8v+OhEAZ0ScEEDKsnWPklIfo/v3DO6M4uJMfRIPd51tg/U4kn4ZzuA== 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 4S5D634hHVz7pL; Wed, 11 Oct 2023 13:25:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDPFdx090416; Wed, 11 Oct 2023 13:25:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDPF4u090413; Wed, 11 Oct 2023 13:25:15 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:15 GMT Message-Id: <202310111325.39BDPF4u090413@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: a862ee32ca8b - stable/14 - bhyve: Move legacy PCI interrupt handling under amd64/ List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: a862ee32ca8bf2e0db6c749ae6e403216c95fe75 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=a862ee32ca8bf2e0db6c749ae6e403216c95fe75 commit a862ee32ca8bf2e0db6c749ae6e403216c95fe75 Author: Mark Johnston AuthorDate: 2023-10-04 16:25:19 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:22:05 +0000 bhyve: Move legacy PCI interrupt handling under amd64/ Specifically, move IO-APIC, LPC and PIRQ routing code under amd64/. Use ifdefs to conditionally compile related code in other files. In particular, legacy PCI interrupt handling is now compiled only on amd64. This is not too invasive, but suggestions for a more modular approach would be appreciated. I am not sure why qemu fwcfg handling is tied to LPC, and I suspect it should be decoupled. In this commit I just apply an ifdef hammer, but we will eventually want fwcfg on arm64 as well. No functional change intended. Reviewed by: corvink, jhb MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40739 (cherry picked from commit 55c13f6e7a412cc4bd0ea3fc183cd7c5c2348f01) --- usr.sbin/bhyve/Makefile | 3 --- usr.sbin/bhyve/amd64/Makefile.inc | 3 +++ usr.sbin/bhyve/{ => amd64}/ioapic.c | 0 usr.sbin/bhyve/{ => amd64}/ioapic.h | 0 usr.sbin/bhyve/{ => amd64}/pci_irq.c | 0 usr.sbin/bhyve/{ => amd64}/pci_irq.h | 0 usr.sbin/bhyve/{ => amd64}/pci_lpc.c | 0 usr.sbin/bhyve/{ => amd64}/pci_lpc.h | 0 usr.sbin/bhyve/bhyverun.c | 16 ++++++++++++---- usr.sbin/bhyve/pci_emul.c | 36 +++++++++++++++++++++++++++++------- usr.sbin/bhyve/pci_emul.h | 27 +++++++++++++++------------ usr.sbin/bhyve/qemu_fwcfg.c | 18 ++++++++++++++++-- usr.sbin/bhyve/virtio.h | 2 ++ 13 files changed, 77 insertions(+), 28 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index 0ec6ad73e2a2..5aaf0d4ea2a0 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -31,7 +31,6 @@ SRCS= \ gdb.c \ hda_codec.c \ inout.c \ - ioapic.c \ iov.c \ mem.c \ mevent.c \ @@ -40,8 +39,6 @@ SRCS= \ pci_emul.c \ pci_fbuf.c \ pci_hostbridge.c \ - pci_irq.c \ - pci_lpc.c \ pci_nvme.c \ pci_passthru.c \ pci_virtio_9p.c \ diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc index 862aeddb16e0..76813891b0a0 100644 --- a/usr.sbin/bhyve/amd64/Makefile.inc +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -2,12 +2,15 @@ SRCS+= \ atkbdc.c \ e820.c \ fwctl.c \ + ioapic.c \ kernemu_dev.c \ mptbl.c \ pci_ahci.c \ pci_e82545.c \ pci_gvt-d.c \ pci_hda.c \ + pci_irq.c \ + pci_lpc.c \ pci_uart.c \ pci_xhci.c \ pctestdev.c \ diff --git a/usr.sbin/bhyve/ioapic.c b/usr.sbin/bhyve/amd64/ioapic.c similarity index 100% rename from usr.sbin/bhyve/ioapic.c rename to usr.sbin/bhyve/amd64/ioapic.c diff --git a/usr.sbin/bhyve/ioapic.h b/usr.sbin/bhyve/amd64/ioapic.h similarity index 100% rename from usr.sbin/bhyve/ioapic.h rename to usr.sbin/bhyve/amd64/ioapic.h diff --git a/usr.sbin/bhyve/pci_irq.c b/usr.sbin/bhyve/amd64/pci_irq.c similarity index 100% rename from usr.sbin/bhyve/pci_irq.c rename to usr.sbin/bhyve/amd64/pci_irq.c diff --git a/usr.sbin/bhyve/pci_irq.h b/usr.sbin/bhyve/amd64/pci_irq.h similarity index 100% rename from usr.sbin/bhyve/pci_irq.h rename to usr.sbin/bhyve/amd64/pci_irq.h diff --git a/usr.sbin/bhyve/pci_lpc.c b/usr.sbin/bhyve/amd64/pci_lpc.c similarity index 100% rename from usr.sbin/bhyve/pci_lpc.c rename to usr.sbin/bhyve/amd64/pci_lpc.c diff --git a/usr.sbin/bhyve/pci_lpc.h b/usr.sbin/bhyve/amd64/pci_lpc.h similarity index 100% rename from usr.sbin/bhyve/pci_lpc.h rename to usr.sbin/bhyve/amd64/pci_lpc.h diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index 2c32e2a56fbb..b8e59d3b0fc0 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -85,8 +85,8 @@ #include "amd64/fwctl.h" #endif #include "gdb.h" -#include "ioapic.h" #ifdef __amd64__ +#include "amd64/ioapic.h" #include "amd64/kernemu_dev.h" #endif #include "mem.h" @@ -95,8 +95,10 @@ #include "amd64/mptbl.h" #endif #include "pci_emul.h" -#include "pci_irq.h" -#include "pci_lpc.h" +#ifdef __amd64__ +#include "amd64/pci_irq.h" +#include "amd64/pci_lpc.h" +#endif #include "qemu_fwcfg.h" #include "smbiostbl.h" #ifdef BHYVE_SNAPSHOT @@ -634,8 +636,10 @@ do_open(const char *vmname) reinit = romboot = false; +#ifdef __amd64__ if (lpc_bootrom()) romboot = true; +#endif error = vm_create(vmname); if (error) { @@ -851,6 +855,7 @@ main(int argc, char *argv[]) case 'K': set_config_value("keyboard.layout", optarg); break; +#ifdef __amd64__ case 'l': if (strncmp(optarg, "help", strlen(optarg)) == 0) { lpc_print_supported_devices(); @@ -860,6 +865,7 @@ main(int argc, char *argv[]) "configuration '%s'", optarg); } break; +#endif #ifdef BHYVE_SNAPSHOT case 'r': restore_file = optarg; @@ -1033,9 +1039,9 @@ main(int argc, char *argv[]) init_bootrom(ctx); #ifdef __amd64__ atkbdc_init(ctx); -#endif pci_irq_init(ctx); ioapic_init(ctx); +#endif #ifdef __amd64__ rtc_init(ctx); @@ -1081,6 +1087,7 @@ main(int argc, char *argv[]) init_gdb(ctx); +#ifdef __amd64__ if (lpc_bootrom()) { if (vm_set_capability(bsp, VM_CAP_UNRESTRICTED_GUEST, 1)) { fprintf(stderr, "ROM boot failed: unrestricted guest " @@ -1090,6 +1097,7 @@ main(int argc, char *argv[]) error = vcpu_reset(bsp); assert(error == 0); } +#endif /* * Add all vCPUs. diff --git a/usr.sbin/bhyve/pci_emul.c b/usr.sbin/bhyve/pci_emul.c index 5fb25dbfe9c7..6b2e46ce917d 100644 --- a/usr.sbin/bhyve/pci_emul.c +++ b/usr.sbin/bhyve/pci_emul.c @@ -52,11 +52,15 @@ #include "config.h" #include "debug.h" #include "inout.h" -#include "ioapic.h" +#ifdef __amd64__ +#include "amd64/ioapic.h" +#endif #include "mem.h" #include "pci_emul.h" -#include "pci_irq.h" -#include "pci_lpc.h" +#ifdef __amd64__ +#include "amd64/pci_irq.h" +#include "amd64/pci_lpc.h" +#endif #include "pci_passthru.h" #include "qemu_fwcfg.h" @@ -143,9 +147,12 @@ SYSRES_MEM(PCI_EMUL_ECFG_BASE, PCI_EMUL_ECFG_SIZE); #define PCI_EMUL_MEMLIMIT32 PCI_EMUL_ECFG_BASE #define PCI_EMUL_MEMSIZE64 (32*GB) -static struct pci_devemu *pci_emul_finddev(const char *name); +#ifdef __amd64__ static void pci_lintr_route(struct pci_devinst *pi); static void pci_lintr_update(struct pci_devinst *pi); +#endif + +static struct pci_devemu *pci_emul_finddev(const char *name); static void pci_cfgrw(int in, int bus, int slot, int func, int coff, int bytes, uint32_t *val); @@ -1061,11 +1068,13 @@ pci_emul_init(struct vmctx *ctx, struct pci_devemu *pde, int bus, int slot, pdi->pi_bus = bus; pdi->pi_slot = slot; pdi->pi_func = func; +#ifdef __amd64__ pthread_mutex_init(&pdi->pi_lintr.lock, NULL); pdi->pi_lintr.pin = 0; pdi->pi_lintr.state = IDLE; pdi->pi_lintr.pirq_pin = 0; pdi->pi_lintr.ioapic_irq = 0; +#endif pdi->pi_d = pde; snprintf(pdi->pi_name, PI_NAMESZ, "%s@pci.%d.%d.%d", pde->pe_emu, bus, slot, func); @@ -1203,7 +1212,9 @@ msixcap_cfgwrite(struct pci_devinst *pi, int capoff, int offset, pi->pi_msix.enabled = val & PCIM_MSIXCTRL_MSIX_ENABLE; pi->pi_msix.function_mask = val & PCIM_MSIXCTRL_FUNCTION_MASK; +#ifdef __amd64__ pci_lintr_update(pi); +#endif } CFGWRITE(pi, offset, val, bytes); @@ -1245,7 +1256,9 @@ msicap_cfgwrite(struct pci_devinst *pi, int capoff, int offset, } else { pi->pi_msi.maxmsgnum = 0; } +#ifdef __amd64__ pci_lintr_update(pi); +#endif } static void @@ -1538,6 +1551,7 @@ init_pci(struct vmctx *ctx) bi->memlimit64 = pci_emul_membase64; } +#ifdef __amd64__ /* * PCI backends are initialized before routing INTx interrupts * so that LPC devices are able to reserve ISA IRQs before @@ -1558,6 +1572,7 @@ init_pci(struct vmctx *ctx) } } lpc_pirq_routed(); +#endif if ((error = init_bootorder()) != 0) { warnx("%s: Unable to init bootorder", __func__); @@ -1601,6 +1616,7 @@ init_pci(struct vmctx *ctx) return (0); } +#ifdef __amd64__ static void pci_apic_prt_entry(int bus __unused, int slot, int pin, int pirq_pin __unused, int ioapic_irq, void *arg __unused) @@ -1633,6 +1649,7 @@ pci_pirq_prt_entry(int bus __unused, int slot, int pin, int pirq_pin, dsdt_line(" },"); free(name); } +#endif /* * A bhyve virtual machine has a flat PCI hierarchy with a root port @@ -1644,7 +1661,7 @@ pci_bus_write_dsdt(int bus) struct businfo *bi; struct slotinfo *si; struct pci_devinst *pi; - int count, func, slot; + int func, slot; /* * If there are no devices on this 'bus' then just return. @@ -1747,8 +1764,8 @@ pci_bus_write_dsdt(int bus) dsdt_line(" ,, , AddressRangeMemory, TypeStatic)"); dsdt_line(" })"); - count = pci_count_lintr(bus); - if (count != 0) { +#ifdef __amd64__ + if (pci_count_lintr(bus) != 0) { dsdt_indent(2); dsdt_line("Name (PPRT, Package ()"); dsdt_line("{"); @@ -1771,6 +1788,7 @@ pci_bus_write_dsdt(int bus) dsdt_line("}"); dsdt_unindent(2); } +#endif dsdt_indent(2); for (slot = 0; slot < MAXSLOTS; slot++) { @@ -1866,6 +1884,7 @@ pci_generate_msi(struct pci_devinst *pi, int index) } } +#ifdef __amd64__ static bool pci_lintr_permitted(struct pci_devinst *pi) { @@ -2026,6 +2045,7 @@ pci_walk_lintr(int bus, pci_lintr_cb cb, void *arg) } } } +#endif /* __amd64__ */ /* * Return 1 if the emulated device in 'slot' is a multi-function device. @@ -2130,11 +2150,13 @@ pci_emul_cmd_changed(struct pci_devinst *pi, uint16_t old) } } +#ifdef __amd64__ /* * If INTx has been unmasked and is pending, assert the * interrupt. */ pci_lintr_update(pi); +#endif } static void diff --git a/usr.sbin/bhyve/pci_emul.h b/usr.sbin/bhyve/pci_emul.h index 0fd438151093..c367169113f8 100644 --- a/usr.sbin/bhyve/pci_emul.h +++ b/usr.sbin/bhyve/pci_emul.h @@ -115,12 +115,6 @@ struct msix_table_entry { #define MAX_MSIX_TABLE_ENTRIES 2048 #define PBA_SIZE(msgnum) (roundup2((msgnum), 64) / 8) -enum lintr_stat { - IDLE, - ASSERTED, - PENDING -}; - struct pci_devinst { struct pci_devemu *pi_d; struct vmctx *pi_vmctx; @@ -130,13 +124,19 @@ struct pci_devinst { int pi_prevcap; int pi_capend; +#ifdef __amd64__ struct { int8_t pin; - enum lintr_stat state; + enum { + IDLE, + ASSERTED, + PENDING, + } state; int pirq_pin; int ioapic_irq; pthread_mutex_t lock; } pi_lintr; +#endif struct { int enabled; @@ -221,8 +221,15 @@ struct pciecap { } __packed; static_assert(sizeof(struct pciecap) == 60, "compile-time assertion failed"); +#ifdef __amd64__ typedef void (*pci_lintr_cb)(int b, int s, int pin, int pirq_pin, int ioapic_irq, void *arg); +void pci_lintr_assert(struct pci_devinst *pi); +void pci_lintr_deassert(struct pci_devinst *pi); +void pci_lintr_request(struct pci_devinst *pi); +int pci_count_lintr(int bus); +void pci_walk_lintr(int bus, pci_lintr_cb cb, void *arg); +#endif int init_pci(struct vmctx *ctx); void pci_callback(void); @@ -241,9 +248,6 @@ void pci_emul_capwrite(struct pci_devinst *pi, int offset, int bytes, void pci_emul_cmd_changed(struct pci_devinst *pi, uint16_t old); void pci_generate_msi(struct pci_devinst *pi, int msgnum); void pci_generate_msix(struct pci_devinst *pi, int msgnum); -void pci_lintr_assert(struct pci_devinst *pi); -void pci_lintr_deassert(struct pci_devinst *pi); -void pci_lintr_request(struct pci_devinst *pi); int pci_msi_enabled(struct pci_devinst *pi); int pci_msix_enabled(struct pci_devinst *pi); int pci_msix_table_bar(struct pci_devinst *pi); @@ -257,11 +261,10 @@ int pci_emul_add_msixcap(struct pci_devinst *pi, int msgnum, int barnum); int pci_emul_msix_twrite(struct pci_devinst *pi, uint64_t offset, int size, uint64_t value); uint64_t pci_emul_msix_tread(struct pci_devinst *pi, uint64_t offset, int size); -int pci_count_lintr(int bus); -void pci_walk_lintr(int bus, pci_lintr_cb cb, void *arg); void pci_write_dsdt(void); uint64_t pci_ecfg_base(void); int pci_bus_configured(int bus); + #ifdef BHYVE_SNAPSHOT struct pci_devinst *pci_next(const struct pci_devinst *cursor); int pci_snapshot(struct vm_snapshot_meta *meta); diff --git a/usr.sbin/bhyve/qemu_fwcfg.c b/usr.sbin/bhyve/qemu_fwcfg.c index e845c70950b1..73a401ad8a81 100644 --- a/usr.sbin/bhyve/qemu_fwcfg.c +++ b/usr.sbin/bhyve/qemu_fwcfg.c @@ -23,7 +23,9 @@ #include "acpi_device.h" #include "bhyverun.h" #include "inout.h" -#include "pci_lpc.h" +#ifdef __amd64__ +#include "amd64/pci_lpc.h" +#endif #include "qemu_fwcfg.h" #define QEMU_FWCFG_ACPI_DEVICE_NAME "FWCF" @@ -423,6 +425,18 @@ int qemu_fwcfg_init(struct vmctx *const ctx) { int error; + bool fwcfg_enabled; + + /* + * The fwcfg implementation currently only provides an I/O port + * interface and thus is amd64-specific for now. An MMIO interface is + * required for other platforms. + */ +#ifdef __amd64__ + fwcfg_enabled = strcmp(lpc_fwcfg(), "qemu") == 0; +#else + fwcfg_enabled = false; +#endif /* * Bhyve supports fwctl (bhyve) and fwcfg (qemu) as firmware interfaces. @@ -430,7 +444,7 @@ qemu_fwcfg_init(struct vmctx *const ctx) * interfaces at the same time to the guest. Therefore, only create acpi * tables and register io ports for fwcfg, if it's used. */ - if (strcmp(lpc_fwcfg(), "qemu") == 0) { + if (fwcfg_enabled) { error = acpi_device_create(&fwcfg_sc.acpi_dev, &fwcfg_sc, ctx, &qemu_fwcfg_acpi_device_emul); if (error) { diff --git a/usr.sbin/bhyve/virtio.h b/usr.sbin/bhyve/virtio.h index 2b72b862ab21..4c6c8004b2d1 100644 --- a/usr.sbin/bhyve/virtio.h +++ b/usr.sbin/bhyve/virtio.h @@ -358,7 +358,9 @@ vi_interrupt(struct virtio_softc *vs, uint8_t isr, uint16_t msix_idx) VS_LOCK(vs); vs->vs_isr |= isr; pci_generate_msi(vs->vs_pi, 0); +#ifdef __amd64__ pci_lintr_assert(vs->vs_pi); +#endif VS_UNLOCK(vs); } } From nobody Wed Oct 11 13:25:16 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D652G14z4xNmN; Wed, 11 Oct 2023 13:25: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 4S5D646Zhxz3Gn0; Wed, 11 Oct 2023 13:25:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030716; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8QoDIjNSDN4ZjRlI1BmnfBVEHTQ0hhH7D/Qe4de/Z08=; b=osWWAhbLc3XnDcrKAfHPZhuybFunlROkTSexiz14Fhm3SpbVV4YT9wrdYl962RfbFriUoB 2B2Cfityi9+S+zub1z7gLLVkybgvHR3L8vUP52/4WKfEBt1D4L3ZWXcW/KsxAJk85nI+ee bBMiBXznYfiqWoXNe2U8TNYOLm2rsqyhsHuKFt85SxAEtsi/XJR/gtVHnbKA1GJS6ykhzj 9YVXcKl1R8Qm5h4Xt6PvoUMwClyCPN8U1PKI7+58NbseKieM7yTwuVAqUzPV524tOgrNup M1falgp1JPOdi/d0lXrceqPQlo2lwR1p2uUlLDvcb4KnLUNHJD/cGpQZvb/zcw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030716; a=rsa-sha256; cv=none; b=NNTIQDXXslALrFkIJkZrhBFNeVQ+qXmr2yfzEyEEom1yaWDIF/+kfnYj23zIOog1MtcRrv Rto1luY7coI8jLCIz926GwCXoxlGLMX3+Y6V/mFJ8zMdLacBu+hX5WBy2fnQ6wGVZUebS8 WMqfQonkzTc6neHjJKYlazYia6c7b42a8c3tJ0fjWm9FraMhYSCIGJaKLdKJrJkffZRcK3 0z64i2G4/o2COBmEsQskV6zXbUE95qu4oDl+ZVgYiMkzKO44yFGye8juOwNB0VQuW52thC rFJUbJFq3BQQdvVT582cnhNrTPsohu0sI7U8lJXzGT+8WHWzDnHHBHg1mSOTAg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030716; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8QoDIjNSDN4ZjRlI1BmnfBVEHTQ0hhH7D/Qe4de/Z08=; b=XYPZso7lReZRNp4nhUAxkvmFIF0h1EcLRvWpcLFZ+tmOjF902P+CsxvFD03WKkTHzb0ETA VG5weV2B9rbkgtd4zDVGhzMtoyDQ+rSLLSdkCYvel+wPgkn8vjGF4bX4tDkov2UxQMMKXo LHKykE/JkXGw9IzU3s7rLtHq7P63d5JvWUi4AwJb4fMg4MWsHmpB/UxJcQZj1GXRQaziyy LyWFg2X1oISNGq7qQjLtr9sSE3Xm9UonMz8/IetnZTUnPhrmfQYrXd7r91coR07ymb2O0T 0MTCMLy3i2/jiNNK/ZKhwO4DRpbB33P/q38/CW797merv8JvO0REiOLRw8x9Eg== 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 4S5D645gZRz7rx; Wed, 11 Oct 2023 13:25:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDPGfo090458; Wed, 11 Oct 2023 13:25:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDPG1Q090455; Wed, 11 Oct 2023 13:25:16 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:16 GMT Message-Id: <202310111325.39BDPG1Q090455@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 96753aebcc39 - stable/14 - bhyve: Conditionally compile framebuffer-related code List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 96753aebcc39fdd96e369e2da9feca03a3b0b794 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=96753aebcc39fdd96e369e2da9feca03a3b0b794 commit 96753aebcc39fdd96e369e2da9feca03a3b0b794 Author: Mark Johnston AuthorDate: 2023-10-04 16:25:47 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:22:06 +0000 bhyve: Conditionally compile framebuffer-related code The arm64 port does not implement VGA, so move the device model sources. Compile framebuffer code only on amd64 for now, but do not move the sources, as we ought to be able to add support later. No functional change intended. Reviewed by: corvink, jhb MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40740 (cherry picked from commit 61429b49d2bd4fdad37e0873b2fc085eacbd26b2) --- usr.sbin/bhyve/Makefile | 3 --- usr.sbin/bhyve/amd64/Makefile.inc | 3 +++ usr.sbin/bhyve/{ => amd64}/vga.c | 0 usr.sbin/bhyve/{ => amd64}/vga.h | 0 usr.sbin/bhyve/pci_fbuf.c | 5 +++-- 5 files changed, 6 insertions(+), 5 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index 5aaf0d4ea2a0..1bb3c9a1b053 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -37,7 +37,6 @@ SRCS= \ net_backends.c \ net_utils.c \ pci_emul.c \ - pci_fbuf.c \ pci_hostbridge.c \ pci_nvme.c \ pci_passthru.c \ @@ -50,7 +49,6 @@ SRCS= \ pci_virtio_scsi.c \ qemu_fwcfg.c \ qemu_loader.c \ - rfb.c \ smbiostbl.c \ sockstream.c \ tpm_device.c \ @@ -60,7 +58,6 @@ SRCS= \ uart_emul.c \ usb_emul.c \ usb_mouse.c \ - vga.c \ virtio.c \ vmexit.c \ vmgenc.c diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc index 76813891b0a0..435327155fc3 100644 --- a/usr.sbin/bhyve/amd64/Makefile.inc +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -7,6 +7,7 @@ SRCS+= \ mptbl.c \ pci_ahci.c \ pci_e82545.c \ + pci_fbuf.c \ pci_gvt-d.c \ pci_hda.c \ pci_irq.c \ @@ -18,9 +19,11 @@ SRCS+= \ post.c \ ps2kbd.c \ ps2mouse.c \ + rfb.c \ rtc.c \ spinup_ap.c \ task_switch.c \ + vga.c \ xmsr.c .PATH: ${BHYVE_SYSDIR}/sys/amd64/vmm diff --git a/usr.sbin/bhyve/vga.c b/usr.sbin/bhyve/amd64/vga.c similarity index 100% rename from usr.sbin/bhyve/vga.c rename to usr.sbin/bhyve/amd64/vga.c diff --git a/usr.sbin/bhyve/vga.h b/usr.sbin/bhyve/amd64/vga.h similarity index 100% rename from usr.sbin/bhyve/vga.h rename to usr.sbin/bhyve/amd64/vga.h diff --git a/usr.sbin/bhyve/pci_fbuf.c b/usr.sbin/bhyve/pci_fbuf.c index 3d63707affa8..a6bf508a46e6 100644 --- a/usr.sbin/bhyve/pci_fbuf.c +++ b/usr.sbin/bhyve/pci_fbuf.c @@ -46,10 +46,11 @@ #include "config.h" #include "debug.h" #include "console.h" -#include "inout.h" #include "pci_emul.h" #include "rfb.h" -#include "vga.h" +#ifdef __amd64__ +#include "amd64/vga.h" +#endif /* * bhyve Framebuffer device emulation. From nobody Wed Oct 11 13:25:17 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D663vY7z4xNsT; Wed, 11 Oct 2023 13:25:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5D660WFjz3Gsv; Wed, 11 Oct 2023 13:25:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030718; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mbZfHVnavP8NjmslW0FehHUlyszZh8vgTLlJrq4fbAg=; b=UE1vuuAX+ktzhK5fySNr6O/17iEZx4zOdp8m4rHFHAbWpHHdn15HvWis4PNwKIjtb8enyI +ZpaTvz9ueae4b0HY51fAiZ13Iz76Zo/Y2xmqFCZaP6H8RXpcagrAR9xXWqshktf69mcUO hSB115Bx+ivo39TaRCB/B/6kiD/2WUb9Hrb1fipKoaHIrGxgijYtMm0vgFnAiHL2TAjqxS lwCUjRQLK3Fu9OshWqlWL16womYwBUB8gbc7ByhqMVF0MSfy3WSBXOQ8ADaJGFzy9b8IjM SjJjEl3ZB1SXEIuXANvjs2Ojw9uK4XyTjH7x4eiub+OE53E8A7Gg9m9ZDAL7dA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030718; a=rsa-sha256; cv=none; b=HnLBOwIoRndxe6/ouyZ2v/q9er4ehD2/3rgIyJCpAxbxE2QHplu3HC7VWAyNGXEXN20OhO 4gUmG+2uMLNREPNRnM0nBdc3v4hrQOHb99wNcbnJ27OzTA933w0JjqbcEGnSif9eLo81gH R9LO8cRreiufTBcEfOCecuKM6J+wewPekjUOud+MLIehQGoluIQ0IGriU1rfTnTpNneU6z KWSaq/LQOYpBReiJUzk72jklhmuNmiI74LtR234p0ZBbyBP/n7HUw0ZqtaWhlkdbCsZS9F X9KvNWG46T8NNgyksZM2wokPTqu9+7MEtQvLixQt+pmsoLWGt83sSEN4/pT0mA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030718; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mbZfHVnavP8NjmslW0FehHUlyszZh8vgTLlJrq4fbAg=; b=QEzGGNnJpigoBH9PcZLJ5msOvT/PevuNsK97VD9rOKh+rs/ogDXr0NmYPFJhR1GJosPlG3 LpijsPsG5TIe+w7vhavKJD8tLDjcEiajzCexME/uWQHuJnEkSC7O4uYYuIvQlfAtatQ+t2 5uVw+NIMdE84asI0M41yg51jlF59kW/P1O962sc5Rqlb8ReTN5fjr9d+dr5HxWFMO/Adg1 EtIAfN3U2NLLHRHv6yCk8F+olsyQeAPanaMRVPuD8WDO4Jy1r9q4YL0VAUH4vwuCIytyQt qA5BSvX33nGlR9K6+689zBgJmqRG55yLdT0C/jGZmrJfqv2SdfLN8QrJsHPKJg== 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 4S5D656kn7z7PL; Wed, 11 Oct 2023 13:25:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDPHj8090512; Wed, 11 Oct 2023 13:25:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDPHX3090509; Wed, 11 Oct 2023 13:25:17 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:17 GMT Message-Id: <202310111325.39BDPHX3090509@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: c011fbc9a8fe - stable/14 - bhyve: Make most I/O port handling specific to amd64 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c011fbc9a8fe514ac686b63ce58e0b270319d74b Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=c011fbc9a8fe514ac686b63ce58e0b270319d74b commit c011fbc9a8fe514ac686b63ce58e0b270319d74b Author: Mark Johnston AuthorDate: 2023-10-04 16:26:08 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:22:07 +0000 bhyve: Make most I/O port handling specific to amd64 - The qemu_fwcfg interface, as implemented, is I/O port-based, but QEMU implements an MMIO interface that we'll eventually want to port for arm64. - Retain support for I/O space PCI BARs, simply treat them like MMIO BARs for most purposes, similar to what the arm64 kernel does. Such BARs are created by virtio devices. Reviewed by: corvink, jhb MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40741 (cherry picked from commit 31cf78c9217b8298816115474973f4f0568962cf) --- usr.sbin/bhyve/Makefile | 1 - usr.sbin/bhyve/amd64/Makefile.inc | 1 + usr.sbin/bhyve/{ => amd64}/inout.c | 0 usr.sbin/bhyve/{ => amd64}/inout.h | 0 usr.sbin/bhyve/bhyverun.c | 6 ++-- usr.sbin/bhyve/pci_emul.c | 63 +++++++++++++++++++++++++++++++++++--- usr.sbin/bhyve/pctestdev.c | 4 ++- usr.sbin/bhyve/qemu_fwcfg.c | 9 ++++-- 8 files changed, 73 insertions(+), 11 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index 1bb3c9a1b053..7c0750fae7d7 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -30,7 +30,6 @@ SRCS= \ ctl_util.c \ gdb.c \ hda_codec.c \ - inout.c \ iov.c \ mem.c \ mevent.c \ diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc index 435327155fc3..96aaecafae4c 100644 --- a/usr.sbin/bhyve/amd64/Makefile.inc +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -2,6 +2,7 @@ SRCS+= \ atkbdc.c \ e820.c \ fwctl.c \ + inout.c \ ioapic.c \ kernemu_dev.c \ mptbl.c \ diff --git a/usr.sbin/bhyve/inout.c b/usr.sbin/bhyve/amd64/inout.c similarity index 100% rename from usr.sbin/bhyve/inout.c rename to usr.sbin/bhyve/amd64/inout.c diff --git a/usr.sbin/bhyve/inout.h b/usr.sbin/bhyve/amd64/inout.h similarity index 100% rename from usr.sbin/bhyve/inout.h rename to usr.sbin/bhyve/amd64/inout.h diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index b8e59d3b0fc0..2da4e198344a 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -78,7 +78,9 @@ #endif #include "bootrom.h" #include "config.h" -#include "inout.h" +#ifdef __amd64__ +#include "amd64/inout.h" +#endif #include "debug.h" #ifdef __amd64__ #include "amd64/e820.h" @@ -1032,8 +1034,8 @@ main(int argc, char *argv[]) #endif init_mem(guest_ncpus); - init_inout(); #ifdef __amd64__ + init_inout(); kernemu_dev_init(); #endif init_bootrom(ctx); diff --git a/usr.sbin/bhyve/pci_emul.c b/usr.sbin/bhyve/pci_emul.c index 6b2e46ce917d..e91b4d0a1e20 100644 --- a/usr.sbin/bhyve/pci_emul.c +++ b/usr.sbin/bhyve/pci_emul.c @@ -51,8 +51,8 @@ #include "bhyverun.h" #include "config.h" #include "debug.h" -#include "inout.h" #ifdef __amd64__ +#include "amd64/inout.h" #include "amd64/ioapic.h" #endif #include "mem.h" @@ -502,6 +502,7 @@ pci_msix_pba_bar(struct pci_devinst *pi) return (-1); } +#ifdef __amd64__ static int pci_emul_io_handler(struct vmctx *ctx __unused, int in, int port, int bytes, uint32_t *eax, void *arg) @@ -530,6 +531,31 @@ pci_emul_io_handler(struct vmctx *ctx __unused, int in, int port, } return (-1); } +#else +static int +pci_emul_iomem_handler(struct vcpu *vcpu __unused, int dir, + uint64_t addr, int size, uint64_t *val, void *arg1, long arg2) +{ + struct pci_devinst *pdi = arg1; + struct pci_devemu *pe = pdi->pi_d; + uint64_t offset; + int bidx = (int)arg2; + + assert(bidx <= PCI_BARMAX); + assert(pdi->pi_bar[bidx].type == PCIBAR_IO); + assert(addr >= pdi->pi_bar[bidx].addr && + addr + size <= pdi->pi_bar[bidx].addr + pdi->pi_bar[bidx].size); + assert(size == 1 || size == 2 || size == 4); + + offset = addr - pdi->pi_bar[bidx].addr; + if (dir == MEM_F_READ) + *val = (*pe->pe_barread)(pdi, bidx, offset, size); + else + (*pe->pe_barwrite)(pdi, bidx, offset, size, *val); + + return (0); +} +#endif /* !__amd64__ */ static int pci_emul_mem_handler(struct vcpu *vcpu __unused, int dir, @@ -538,7 +564,7 @@ pci_emul_mem_handler(struct vcpu *vcpu __unused, int dir, struct pci_devinst *pdi = arg1; struct pci_devemu *pe = pdi->pi_d; uint64_t offset; - int bidx = (int) arg2; + int bidx = (int)arg2; assert(bidx <= PCI_BARMAX); assert(pdi->pi_bar[bidx].type == PCIBAR_MEM32 || @@ -601,12 +627,16 @@ modify_bar_registration(struct pci_devinst *pi, int idx, int registration) { struct pci_devemu *pe; int error; - struct inout_port iop; - struct mem_range mr; + enum pcibar_type type; pe = pi->pi_d; - switch (pi->pi_bar[idx].type) { + type = pi->pi_bar[idx].type; + switch (type) { case PCIBAR_IO: + { +#ifdef __amd64__ + struct inout_port iop; + bzero(&iop, sizeof(struct inout_port)); iop.name = pi->pi_name; iop.port = pi->pi_bar[idx].addr; @@ -618,9 +648,29 @@ modify_bar_registration(struct pci_devinst *pi, int idx, int registration) error = register_inout(&iop); } else error = unregister_inout(&iop); +#else + struct mem_range mr; + + bzero(&mr, sizeof(struct mem_range)); + mr.name = pi->pi_name; + mr.base = pi->pi_bar[idx].addr; + mr.size = pi->pi_bar[idx].size; + if (registration) { + mr.flags = MEM_F_RW; + mr.handler = pci_emul_iomem_handler; + mr.arg1 = pi; + mr.arg2 = idx; + error = register_mem(&mr); + } else + error = unregister_mem(&mr); +#endif break; + } case PCIBAR_MEM32: case PCIBAR_MEM64: + { + struct mem_range mr; + bzero(&mr, sizeof(struct mem_range)); mr.name = pi->pi_name; mr.base = pi->pi_bar[idx].addr; @@ -634,6 +684,7 @@ modify_bar_registration(struct pci_devinst *pi, int idx, int registration) } else error = unregister_mem(&mr); break; + } case PCIBAR_ROM: error = 0; break; @@ -2346,6 +2397,7 @@ pci_cfgrw(int in, int bus, int slot, int func, int coff, int bytes, } } +#ifdef __amd64__ static int cfgenable, cfgbus, cfgslot, cfgfunc, cfgoff; static int @@ -2401,6 +2453,7 @@ INOUT_PORT(pci_cfgdata, CONF1_DATA_PORT+0, IOPORT_F_INOUT, pci_emul_cfgdata); INOUT_PORT(pci_cfgdata, CONF1_DATA_PORT+1, IOPORT_F_INOUT, pci_emul_cfgdata); INOUT_PORT(pci_cfgdata, CONF1_DATA_PORT+2, IOPORT_F_INOUT, pci_emul_cfgdata); INOUT_PORT(pci_cfgdata, CONF1_DATA_PORT+3, IOPORT_F_INOUT, pci_emul_cfgdata); +#endif #ifdef BHYVE_SNAPSHOT /* diff --git a/usr.sbin/bhyve/pctestdev.c b/usr.sbin/bhyve/pctestdev.c index b6fc3c336a93..539016a51876 100644 --- a/usr.sbin/bhyve/pctestdev.c +++ b/usr.sbin/bhyve/pctestdev.c @@ -43,7 +43,9 @@ #include #include "debug.h" -#include "inout.h" +#ifdef __amd64__ +#include "amd64/inout.h" +#endif #include "mem.h" #include "pctestdev.h" diff --git a/usr.sbin/bhyve/qemu_fwcfg.c b/usr.sbin/bhyve/qemu_fwcfg.c index 73a401ad8a81..830cee730dbd 100644 --- a/usr.sbin/bhyve/qemu_fwcfg.c +++ b/usr.sbin/bhyve/qemu_fwcfg.c @@ -22,8 +22,8 @@ #include "acpi_device.h" #include "bhyverun.h" -#include "inout.h" #ifdef __amd64__ +#include "amd64/inout.h" #include "amd64/pci_lpc.h" #endif #include "qemu_fwcfg.h" @@ -114,6 +114,7 @@ struct qemu_fwcfg_user_file { static STAILQ_HEAD(qemu_fwcfg_user_file_list, qemu_fwcfg_user_file) user_files = STAILQ_HEAD_INITIALIZER(user_files); +#ifdef __amd64__ static int qemu_fwcfg_selector_port_handler(struct vmctx *const ctx __unused, const int in, const int port __unused, const int bytes, uint32_t *const eax, @@ -181,6 +182,7 @@ qemu_fwcfg_data_port_handler(struct vmctx *const ctx __unused, const int in, return (0); } +#endif static int qemu_fwcfg_add_item(const uint16_t architecture, const uint16_t index, @@ -295,6 +297,7 @@ qemu_fwcfg_add_item_signature(void) (uint8_t *)fwcfg_signature)); } +#ifdef __amd64__ static int qemu_fwcfg_register_port(const char *const name, const int port, const int size, const int flags, const inout_func_t handler) @@ -310,6 +313,7 @@ qemu_fwcfg_register_port(const char *const name, const int port, const int size, return (register_inout(&iop)); } +#endif int qemu_fwcfg_add_file(const char *name, const uint32_t size, void *const data) @@ -461,7 +465,7 @@ qemu_fwcfg_init(struct vmctx *const ctx) goto done; } - /* add handlers for fwcfg ports */ +#ifdef __amd64__ if ((error = qemu_fwcfg_register_port("qemu_fwcfg_selector", QEMU_FWCFG_SELECTOR_PORT_NUMBER, QEMU_FWCFG_SELECTOR_PORT_SIZE, @@ -481,6 +485,7 @@ qemu_fwcfg_init(struct vmctx *const ctx) __func__, QEMU_FWCFG_DATA_PORT_NUMBER); goto done; } +#endif } /* add common fwcfg items */ From nobody Wed Oct 11 13:25:18 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D674XHvz4xNpg; Wed, 11 Oct 2023 13:25: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 4S5D671MfPz3H1T; Wed, 11 Oct 2023 13:25:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030719; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yRw/87xnBIkOknkfqt5IQafEmlsLFueEBtg9kEkAwn8=; b=PW33WYcx6GqB9GtLAjBqAIcHSP17RLeeQeLk3nkVLRByyT9ZXme7NM+5n1SD3L7W784oPO FsrMMYQUoANdxYKF0M3Gnasv49em0eFSMCGy1pKd43wizXRAcUUjJzRkKlUsyuYenH2Xej qW5tJth8bKV+UJvRfcc/epgICPijVxFlIjvMUViE3ePrD3yVo2G9RA62G4Y9WtHapOv7+Q idNpV5RLgnTk3OSQGVaKrm13ntoXwu2+HTaKgU/tRedRkXzgdZTFf6rN7OKCf66NTFvsxo 0IU/bkejNb9WdL6iVTXbeezBNvw9osan9Gx3ps3hFfCjSnk91RUYyVQlWpvBfQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030719; a=rsa-sha256; cv=none; b=YOa5p+xafNl4MltXBLCdH5pKlVbem/7581owbEEApQwK55z4wOEKVl5oT5GddBtY3Q7YuR G8DbPn2VAeeCuPI2A5PhYxFdRhbTrSsJYJwj5gH3DEJR3jrND1sKa2eiYSN2pXbap7i4bx K2cRSF1Njwdb46Q5zFxhkgsTZ2akxnSzXTXfDGnBWkFgi8XEHtbfkkKeHgs9Uu05ft5FAj bUMHYGOnyUwB/33hP6BiZDSB1VMXNfDKtb9kyFii1fddsR4xIyvfvRdz/Dp6OKsv/snFGk ee5Crys6+40Ppz4m4svHMYaCfHGYsS1XO4Pkf40siyRmwh42W572up47TyKoqw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030719; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yRw/87xnBIkOknkfqt5IQafEmlsLFueEBtg9kEkAwn8=; b=iFEEnMKJcbXDeCobKmpHrVRjMOll9qKtiktryklC/vfDoocjLBnKRb+BwXo+F0hXrCT2oK pjqThw2kJRJ+iqA9MPFTA6Ux4et6XSWeSJSR4zIkdtwBLlYkUMp7w1CntNXWvagUxq+o2V Z/YM3OuE1MHHo4i7ZbN6IIj04XXIfkBwnI5IfjCaLTLHKqlVFCWTP2tqFcFzuVevEozCSk efs9BUPSS3LtebFLQfECE/gTJxhPhZU6jLQN05PLVXLyZTHMbSgvydEdi4SRqC5Ysl+C3e WDv0wDhQUu3MeE1rxH12nHb4vG8tBWL/obMLZjgnW+uc1hFxR0z0xrPcZVOLVA== 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 4S5D670QKVz7ML; Wed, 11 Oct 2023 13:25:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDPIhU090554; Wed, 11 Oct 2023 13:25:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDPIdk090551; Wed, 11 Oct 2023 13:25:18 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:18 GMT Message-Id: <202310111325.39BDPIdk090551@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 7ed39a5ad79f - stable/14 - bhyve: Make gdb support optional List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 7ed39a5ad79f6faf64a72644b9827e5b4f9464e4 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=7ed39a5ad79f6faf64a72644b9827e5b4f9464e4 commit 7ed39a5ad79f6faf64a72644b9827e5b4f9464e4 Author: Mark Johnston AuthorDate: 2023-10-04 16:26:36 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:22:08 +0000 bhyve: Make gdb support optional Add a BHYVE_GDB_SUPPORT make variable that can be set by per-arch makefiles. When set, BHYVE_GDB is defined and can be used as a preprocessor predicate. Use it to guard gdb stub calls in MI code. The arm64 bhyve port currently does not have a functional gdb stub, but that's not critical to landing the port, so this mechanism slightly reduces the friction of adding support for a new platform. Reviewed by: corvink, jhb MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40986 (cherry picked from commit ca2cda98d265ef5d80b7cd0705697a1af27fb808) --- usr.sbin/bhyve/Makefile | 13 ++++++++----- usr.sbin/bhyve/amd64/Makefile.inc | 2 ++ usr.sbin/bhyve/bhyverun.c | 10 ++++++++++ 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index 7c0750fae7d7..1a8191f9fd3f 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -28,7 +28,6 @@ SRCS= \ crc16.c \ ctl_scsi_all.c \ ctl_util.c \ - gdb.c \ hda_codec.c \ iov.c \ mem.c \ @@ -67,6 +66,14 @@ SRCS+= snapshot.c .include "${MACHINE_CPUARCH}/Makefile.inc" +.if defined(BHYVE_GDB_SUPPORT) +SRCS+= gdb.c +CFLAGS+= -DBHYVE_GDB +.ifdef GDB_LOG +CFLAGS+=-DGDB_LOG +.endif +.endif + CFLAGS+=-I${.CURDIR} \ -I${.CURDIR}/../../contrib/lib9p \ -I${SRCTOP}/sys @@ -102,10 +109,6 @@ CFLAGS+= -I${SRCTOP}/contrib/libucl/include CFLAGS+= -DBHYVE_SNAPSHOT .endif -.ifdef GDB_LOG -CFLAGS+=-DGDB_LOG -.endif - # Disable thread safety analysis since it only finds very simple bugs and # yields many false positives. NO_WTHREAD_SAFETY= diff --git a/usr.sbin/bhyve/amd64/Makefile.inc b/usr.sbin/bhyve/amd64/Makefile.inc index 96aaecafae4c..bc0ffa720d31 100644 --- a/usr.sbin/bhyve/amd64/Makefile.inc +++ b/usr.sbin/bhyve/amd64/Makefile.inc @@ -1,3 +1,5 @@ +BHYVE_GDB_SUPPORT= + SRCS+= \ atkbdc.c \ e820.c \ diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index 2da4e198344a..b38c53da63eb 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -86,7 +86,9 @@ #include "amd64/e820.h" #include "amd64/fwctl.h" #endif +#ifdef BHYVE_GDB #include "gdb.h" +#endif #ifdef __amd64__ #include "amd64/ioapic.h" #include "amd64/kernemu_dev.h" @@ -463,7 +465,9 @@ fbsdrun_start_thread(void *param) #ifdef BHYVE_SNAPSHOT checkpoint_cpu_add(vi->vcpuid); #endif +#ifdef BHYVE_GDB gdb_cpu_add(vi->vcpu); +#endif vm_loop(vi->ctx, vi->vcpu); @@ -757,6 +761,7 @@ parse_simple_config_file(const char *path) fclose(fp); } +#ifdef BHYVE_GDB static void parse_gdb_options(const char *opt) { @@ -780,6 +785,7 @@ parse_gdb_options(const char *opt) set_config_value("gdb.port", sport); } +#endif static void set_defaults(void) @@ -848,9 +854,11 @@ main(int argc, char *argv[]) errx(EX_USAGE, "invalid fwcfg item '%s'", optarg); } break; +#ifdef BHYVE_GDB case 'G': parse_gdb_options(optarg); break; +#endif case 'k': parse_simple_config_file(optarg); break; @@ -1087,7 +1095,9 @@ main(int argc, char *argv[]) if (get_config_bool("acpi_tables")) vmgenc_init(ctx); +#ifdef BHYVE_GDB init_gdb(ctx); +#endif #ifdef __amd64__ if (lpc_bootrom()) { From nobody Wed Oct 11 13:25:20 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D683wxdz4xP1N; Wed, 11 Oct 2023 13:25:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5D682Pjnz3H8C; Wed, 11 Oct 2023 13:25:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030720; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LH7AQsz5vHnjBrgwFKR2lVpB+jYCwtIACjYor5yNmKU=; b=hmlfGXwJo42Dg5Hl5k/gTIxzUX+J9KXLizGw9MCazNCWGvyTN5gSSvUtINOlwnEv2Iu0ox sf2udpToXQJ9MvSaDtBjLCIc2lXHfdTCRKN0Tue+91iH4QsLjjzG1b/lgtoZCnNu2EI3Pz Sce0WI00ujOiITmVp3MU35w3OliKo2bxKO0N+podjbiBsPgmelGqWn+UjJVDwCp4ymQOvq 1NU//xiEazcxC5sIOtkfuxVUDPYwhRFnppS9gcATEA4iFmmGRVAPEw1AL8Eq18Wkqj2mh1 MJh+QthQSkcOEHeJnY4g4WpHxlidSai7aLaQvk0v3brSbYeVtjnFq4+S0VXpeA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030720; a=rsa-sha256; cv=none; b=Uimoa9UG2eCyPP8+CPAt01Lfmr7pIYjDjQMU5L+Sa2yk7aFvtb7nykLvM1MDo8Ii+zSI4l uu6n7Fx34wEJ2J7y744+WlK8RAlYZKRkbYWMuZcPfVQ2xyax92Vyav+sRt04GmFHK/ER7j gR8d3UtjEaWX+vD38PqT3H9UtYLNU/wyHCcFfPkd9cjwP4gxmzQSHcd+jHvS2PPWpgSjkQ djGkd69d04u+qruQ/lc30Vpiv8tmHiLkEehVpsBHBkGZIHsP4/VFMeqSuEY+j8Rnf5lkdd VWMFUfJe8oQMb0POkKg6ctXyHZQqN1OqEdDO6uWJcVp4wSPrNMarqjNcToPW8A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030720; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LH7AQsz5vHnjBrgwFKR2lVpB+jYCwtIACjYor5yNmKU=; b=srC7YONkqNVrxb+z1MXIFgP2T7+NlVAQ8t0XOuLkTjOrM0tD3cjOr27wxpRHKKR5YAO/NA s8SLnvkpRjwoXZ35BNNqNeo9llW2jgPAQSPrGGDaHHMmEoCVYXaysEQkLnTdG2Kw3Rd2M/ J2lqhZticT4ey5S0uKjzHeYdYGpf/cWXSHqCPfmFc1xp8IoVo8RpKnbrQddM/nuht3LFyM lTmptNCbxZsD52pcRX5DlzYJw2dzVvr/ClO5uAgucKw3y5t8XBVk0Llv0A+aO1h3l3W1Rp vKakBvbI4/A6ktyflmDGO60wWw4695CeLlTO3nUN8crCpG584SqKQfIIGt6k3w== 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 4S5D681SR5z7cx; Wed, 11 Oct 2023 13:25:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDPKKv090610; Wed, 11 Oct 2023 13:25:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDPKD6090607; Wed, 11 Oct 2023 13:25:20 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:20 GMT Message-Id: <202310111325.39BDPKD6090607@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: cd60f1af560a - stable/14 - bhyve: Move vcpu initialization into a MD source file List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: cd60f1af560ae0c63dd309417e0db0660f11fe14 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=cd60f1af560ae0c63dd309417e0db0660f11fe14 commit cd60f1af560ae0c63dd309417e0db0660f11fe14 Author: Mark Johnston AuthorDate: 2023-10-04 16:27:07 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:24:15 +0000 bhyve: Move vcpu initialization into a MD source file - Make handling of x86 config options, like x86.x2apic, conditional to amd64. - Move fbsdrun_set_capabilities() and spinup_vcpu() to a new file, bhyverun_machdep.c. The moved code is all highly x86 specific. I'm not sure how best to handle the namespace. I'm using "bhyve_" for MD functions called from MI code. We also have "fbsdrun_" for some MI routines that are typically called from MD code. The file name is prefixed by "bhyverun_". Reviewed by: corvink MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40987 (cherry picked from commit e20b74da223d675321618fe6d67858084d152c9e) --- usr.sbin/bhyve/Makefile | 1 + usr.sbin/bhyve/amd64/bhyverun_machdep.c | 125 ++++++++++++++++++++++++++++++++ usr.sbin/bhyve/bhyverun.c | 111 ++++------------------------ usr.sbin/bhyve/bhyverun.h | 12 ++- 4 files changed, 152 insertions(+), 97 deletions(-) diff --git a/usr.sbin/bhyve/Makefile b/usr.sbin/bhyve/Makefile index 1a8191f9fd3f..de8e87d2ad49 100644 --- a/usr.sbin/bhyve/Makefile +++ b/usr.sbin/bhyve/Makefile @@ -21,6 +21,7 @@ SRCS= \ basl.c \ bhyvegc.c \ bhyverun.c \ + bhyverun_machdep.c \ block_if.c \ bootrom.c \ config.c \ diff --git a/usr.sbin/bhyve/amd64/bhyverun_machdep.c b/usr.sbin/bhyve/amd64/bhyverun_machdep.c new file mode 100644 index 000000000000..f995c7aef195 --- /dev/null +++ b/usr.sbin/bhyve/amd64/bhyverun_machdep.c @@ -0,0 +1,125 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2011 NetApp, Inc. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY NETAPP, INC ``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 NETAPP, INC 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 "bhyverun.h" +#include "config.h" +#include "pci_lpc.h" + +void +bhyve_init_config(void) +{ + init_config(); + + /* Set default values prior to option parsing. */ + set_config_bool("acpi_tables", false); + set_config_bool("acpi_tables_in_memory", true); + set_config_value("memory.size", "256M"); + set_config_bool("x86.strictmsr", true); + set_config_value("lpc.fwcfg", "bhyve"); +} + +void +bhyve_init_vcpu(struct vcpu *vcpu) +{ + int err, tmp; + + if (get_config_bool_default("x86.vmexit_on_hlt", false)) { + err = vm_get_capability(vcpu, VM_CAP_HALT_EXIT, &tmp); + if (err < 0) { + fprintf(stderr, "VM exit on HLT not supported\n"); + exit(4); + } + vm_set_capability(vcpu, VM_CAP_HALT_EXIT, 1); + } + + if (get_config_bool_default("x86.vmexit_on_pause", false)) { + /* + * pause exit support required for this mode + */ + err = vm_get_capability(vcpu, VM_CAP_PAUSE_EXIT, &tmp); + if (err < 0) { + fprintf(stderr, + "SMP mux requested, no pause support\n"); + exit(4); + } + vm_set_capability(vcpu, VM_CAP_PAUSE_EXIT, 1); + } + + if (get_config_bool_default("x86.x2apic", false)) + err = vm_set_x2apic_state(vcpu, X2APIC_ENABLED); + else + err = vm_set_x2apic_state(vcpu, X2APIC_DISABLED); + + if (err) { + fprintf(stderr, "Unable to set x2apic state (%d)\n", err); + exit(4); + } + + vm_set_capability(vcpu, VM_CAP_ENABLE_INVPCID, 1); + + err = vm_set_capability(vcpu, VM_CAP_IPI_EXIT, 1); + assert(err == 0); +} + +void +bhyve_start_vcpu(struct vcpu *vcpu, bool bsp) +{ + int error; + + if (bsp) { + if (lpc_bootrom()) { + error = vm_set_capability(vcpu, + VM_CAP_UNRESTRICTED_GUEST, 1); + if (error != 0) { + err(4, "ROM boot failed: unrestricted guest " + "capability not available"); + } + error = vcpu_reset(vcpu); + assert(error == 0); + } + } else { + bhyve_init_vcpu(vcpu); + + /* + * Enable the 'unrestricted guest' mode for APs. + * + * APs startup in power-on 16-bit mode. + */ + error = vm_set_capability(vcpu, VM_CAP_UNRESTRICTED_GUEST, 1); + assert(error == 0); + } + + fbsdrun_addcpu(vcpu_id(vcpu)); +} diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index b38c53da63eb..d2bdba2e4a90 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -476,17 +476,20 @@ fbsdrun_start_thread(void *param) return (NULL); } -static void -fbsdrun_addcpu(struct vcpu_info *vi) +void +fbsdrun_addcpu(int vcpuid) { + struct vcpu_info *vi; pthread_t thr; int error; + vi = &vcpu_info[vcpuid]; + error = vm_activate_cpu(vi->vcpu); if (error != 0) err(EX_OSERR, "could not activate CPU %d", vi->vcpuid); - CPU_SET_ATOMIC(vi->vcpuid, &cpumask); + CPU_SET_ATOMIC(vcpuid, &cpumask); vm_suspend_cpu(vi->vcpu); @@ -590,49 +593,6 @@ num_vcpus_allowed(struct vmctx *ctx, struct vcpu *vcpu) return (1); } -static void -fbsdrun_set_capabilities(struct vcpu *vcpu) -{ - int err, tmp; - - if (get_config_bool_default("x86.vmexit_on_hlt", false)) { - err = vm_get_capability(vcpu, VM_CAP_HALT_EXIT, &tmp); - if (err < 0) { - fprintf(stderr, "VM exit on HLT not supported\n"); - exit(4); - } - vm_set_capability(vcpu, VM_CAP_HALT_EXIT, 1); - } - - if (get_config_bool_default("x86.vmexit_on_pause", false)) { - /* - * pause exit support required for this mode - */ - err = vm_get_capability(vcpu, VM_CAP_PAUSE_EXIT, &tmp); - if (err < 0) { - fprintf(stderr, - "SMP mux requested, no pause support\n"); - exit(4); - } - vm_set_capability(vcpu, VM_CAP_PAUSE_EXIT, 1); - } - - if (get_config_bool_default("x86.x2apic", false)) - err = vm_set_x2apic_state(vcpu, X2APIC_ENABLED); - else - err = vm_set_x2apic_state(vcpu, X2APIC_DISABLED); - - if (err) { - fprintf(stderr, "Unable to set x2apic state (%d)\n", err); - exit(4); - } - - vm_set_capability(vcpu, VM_CAP_ENABLE_INVPCID, 1); - - err = vm_set_capability(vcpu, VM_CAP_IPI_EXIT, 1); - assert(err == 0); -} - static struct vmctx * do_open(const char *vmname) { @@ -697,26 +657,6 @@ do_open(const char *vmname) return (ctx); } -static void -spinup_vcpu(struct vcpu_info *vi, bool bsp) -{ - int error; - - if (!bsp) { - fbsdrun_set_capabilities(vi->vcpu); - - /* - * Enable the 'unrestricted guest' mode for APs. - * - * APs startup in power-on 16-bit mode. - */ - error = vm_set_capability(vi->vcpu, VM_CAP_UNRESTRICTED_GUEST, 1); - assert(error == 0); - } - - fbsdrun_addcpu(vi); -} - static bool parse_config_option(const char *option) { @@ -787,17 +727,6 @@ parse_gdb_options(const char *opt) } #endif -static void -set_defaults(void) -{ - - set_config_bool("acpi_tables", false); - set_config_bool("acpi_tables_in_memory", true); - set_config_value("memory.size", "256M"); - set_config_bool("x86.strictmsr", true); - set_config_value("lpc.fwcfg", "bhyve"); -} - int main(int argc, char *argv[]) { @@ -814,8 +743,8 @@ main(int argc, char *argv[]) restore_file = NULL; #endif - init_config(); - set_defaults(); + bhyve_init_config(); + progname = basename(argv[0]); #ifdef BHYVE_SNAPSHOT @@ -825,9 +754,11 @@ main(int argc, char *argv[]) #endif while ((c = getopt(argc, argv, optstr)) != -1) { switch (c) { +#ifdef __amd64__ case 'a': set_config_bool("x86.x2apic", false); break; +#endif case 'A': set_config_bool("acpi_tables", true); break; @@ -899,6 +830,7 @@ main(int argc, char *argv[]) if (!parse_config_option(optarg)) errx(EX_USAGE, "invalid configuration option '%s'", optarg); break; +#ifdef __amd64__ case 'H': set_config_bool("x86.vmexit_on_hlt", true); break; @@ -917,7 +849,6 @@ main(int argc, char *argv[]) case 'e': set_config_bool("x86.strictio", true); break; -#ifdef __amd64__ case 'u': set_config_bool("rtc.use_localtime", false); break; @@ -925,16 +856,18 @@ main(int argc, char *argv[]) case 'U': set_config_value("uuid", optarg); break; +#ifdef __amd64__ case 'w': set_config_bool("x86.strictmsr", false); break; +#endif case 'W': set_config_bool("virtio_msix", false); break; +#ifdef __amd64__ case 'x': set_config_bool("x86.x2apic", true); break; -#ifdef __amd64__ case 'Y': set_config_bool("x86.mptable", false); break; @@ -1008,7 +941,7 @@ main(int argc, char *argv[]) exit(4); } - fbsdrun_set_capabilities(bsp); + bhyve_init_vcpu(bsp); /* Allocate per-VCPU resources. */ vcpu_info = calloc(guest_ncpus, sizeof(*vcpu_info)); @@ -1099,23 +1032,11 @@ main(int argc, char *argv[]) init_gdb(ctx); #endif -#ifdef __amd64__ - if (lpc_bootrom()) { - if (vm_set_capability(bsp, VM_CAP_UNRESTRICTED_GUEST, 1)) { - fprintf(stderr, "ROM boot failed: unrestricted guest " - "capability not available\n"); - exit(4); - } - error = vcpu_reset(bsp); - assert(error == 0); - } -#endif - /* * Add all vCPUs. */ for (int vcpuid = 0; vcpuid < guest_ncpus; vcpuid++) - spinup_vcpu(&vcpu_info[vcpuid], vcpuid == BSP); + bhyve_start_vcpu(vcpu_info[vcpuid].vcpu, vcpuid == BSP); #ifdef BHYVE_SNAPSHOT if (restore_file != NULL) { diff --git a/usr.sbin/bhyve/bhyverun.h b/usr.sbin/bhyve/bhyverun.h index b1cfb99a964e..39e0916f08ef 100644 --- a/usr.sbin/bhyve/bhyverun.h +++ b/usr.sbin/bhyve/bhyverun.h @@ -26,8 +26,10 @@ * SUCH DAMAGE. */ -#ifndef _FBSDRUN_H_ -#define _FBSDRUN_H_ +#ifndef _BHYVERUN_H_ +#define _BHYVERUN_H_ + +#include #define VMEXIT_CONTINUE (0) #define VMEXIT_ABORT (-1) @@ -46,6 +48,7 @@ uintptr_t paddr_host2guest(struct vmctx *ctx, void *addr); struct vcpu; struct vcpu *fbsdrun_vcpu(int vcpuid); +void fbsdrun_addcpu(int vcpuid); void fbsdrun_deletecpu(int vcpuid); int fbsdrun_suspendcpu(int vcpuid); @@ -53,4 +56,9 @@ int fbsdrun_virtio_msix(void); typedef int (*vmexit_handler_t)(struct vmctx *, struct vcpu *, struct vm_run *); +/* Interfaces implemented by machine-dependent code. */ +void bhyve_init_config(void); +void bhyve_init_vcpu(struct vcpu *vcpu); +void bhyve_start_vcpu(struct vcpu *vcpu, bool bsp); + #endif From nobody Wed Oct 11 13:25:21 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D6957r2z4xP3Q; Wed, 11 Oct 2023 13:25: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 4S5D6936f2z3H28; Wed, 11 Oct 2023 13:25:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030721; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tclKOW0aIFnAABMN8koLFvo6p1/cRJsHbmliqBXgXxs=; b=Fp60AnXTcZYuOVsRsGYHaDqj+YwZkPNWLlMIyQAcVa4NH2lB2k7ZriC5zgez1NyOi6qcVn +cWmoXCldSAflKZGfXnppCM/bXZvPHF2VeAbv6xoXkqtLGUgYzXRKYAeoHS16iioUa/58f Kw5F4YHA42kyqkK4A/3Oek57aI/EPcokDpkyitF9wEg6D6BcgQB5b0V2/yDw4PNRK132Yk uVAxRwrLTGa+iFMLKlc/pf4rYkfR1BiJWlufIzBJIVIMth94gcuE3EBI/rFmohScxRw4ER 7+VQxcXHoTcF4JGRCOTzxRoYr0fjnAi7OqbHVmhM4zTxb8Xt9JlHQGdRp61fFg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030721; a=rsa-sha256; cv=none; b=cGjjnwOyMFjfYEFluh3SxXO87OOcvw6TlsuYdhhSTuskrMoX0MuSGlBbxi8ElJpkZIe/Za I/S+sOLat2x32tueIQGtriQR8TgUAxKnWes6YzYleCE2UZgLTMbefkP23kWb8xbqhlbMCY y6Nlyl8cshoPYWqWVD1st8Fhl6mzIs07UHHwuW5XkVCBTlUZYZipaYxTzkOVpvJ0gXLGVD bcm/qFVMmZERkLLEQtPNqlJr2S6MJ/6giCTOThLuKWESVx/NqnBehmjjcWF3hD6taxJKuI XTY0pSVjB4Suoh5aOzevZpg8W089/hTdVsneAsfZVQTE0v65+gxyKUzqa4jKvw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030721; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tclKOW0aIFnAABMN8koLFvo6p1/cRJsHbmliqBXgXxs=; b=q5jiroD7GfG2JCyVMhzgPYJ/PxoU5sMs9bcEq+UB14p2ZMOGKOzOciW4iZsr/OkEWtKels ztrSrsgJUZqCfPAAVVftbi3bEa7kELih0SQE8ObIa0J78lDjlN9TNtM7fn4OKKXOxSpf57 RUdprmj8shh5XlZOl142wAFvZZ9kIzmSakoqFosOMcIrGxFedD/8IS7lIR3YNfrhkkDBoo b8lbWup5lxDDkOZ7TMIkAwaaKcCOcVsPRjFeRDvB67EgDtStnltOdfyOFqelEKFLTYuRDt aC27jLhw5Vb07wUiJIhxrOgx3G0vb1M9xctdcUG9Doxa/GL7IBiCCpUfERoggA== 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 4S5D692DbZz7MM; Wed, 11 Oct 2023 13:25:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDPLEN090670; Wed, 11 Oct 2023 13:25:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDPL7O090667; Wed, 11 Oct 2023 13:25:21 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:21 GMT Message-Id: <202310111325.39BDPL7O090667@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 15181b73025b - stable/14 - bhyve: Move most early initialization into an MD routine List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 15181b73025b8fa7bb892f3e161e2067ce865297 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=15181b73025b8fa7bb892f3e161e2067ce865297 commit 15181b73025b8fa7bb892f3e161e2067ce865297 Author: Mark Johnston AuthorDate: 2023-10-04 16:27:54 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:24:38 +0000 bhyve: Move most early initialization into an MD routine Prior to initializing PCI devices, main() calls a number of initialization routines, many of which are amd64-specific. Move this list of calls to bhyverun_machdep.c. Similarly, add an MD function to handle late initialization. No functional change intended. Reviewed by: corvink, jhb MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40989 (cherry picked from commit f82af74c76030029d4d8af95c29f2036a20796a4) --- usr.sbin/bhyve/amd64/bhyverun_machdep.c | 62 +++++++++++++++++++++++ usr.sbin/bhyve/amd64/xmsr.c | 7 +-- usr.sbin/bhyve/bhyverun.c | 88 ++------------------------------- usr.sbin/bhyve/bhyverun.h | 2 + 4 files changed, 72 insertions(+), 87 deletions(-) diff --git a/usr.sbin/bhyve/amd64/bhyverun_machdep.c b/usr.sbin/bhyve/amd64/bhyverun_machdep.c index f995c7aef195..9254fb5f94a0 100644 --- a/usr.sbin/bhyve/amd64/bhyverun_machdep.c +++ b/usr.sbin/bhyve/amd64/bhyverun_machdep.c @@ -33,9 +33,21 @@ #include +#include "acpi.h" +#include "atkbdc.h" #include "bhyverun.h" #include "config.h" +#include "e820.h" +#include "fwctl.h" +#include "ioapic.h" +#include "inout.h" +#include "kernemu_dev.h" +#include "mptbl.h" +#include "pci_irq.h" #include "pci_lpc.h" +#include "rtc.h" +#include "smbiostbl.h" +#include "xmsr.h" void bhyve_init_config(void) @@ -123,3 +135,53 @@ bhyve_start_vcpu(struct vcpu *vcpu, bool bsp) fbsdrun_addcpu(vcpu_id(vcpu)); } + +int +bhyve_init_platform(struct vmctx *ctx, struct vcpu *bsp __unused) +{ + int error; + + error = init_msr(); + if (error != 0) + return (error); + init_inout(); + kernemu_dev_init(); + atkbdc_init(ctx); + pci_irq_init(ctx); + ioapic_init(ctx); + rtc_init(ctx); + sci_init(ctx); + error = e820_init(ctx); + if (error != 0) + return (error); + + return (0); +} + +int +bhyve_init_platform_late(struct vmctx *ctx, struct vcpu *bsp __unused) +{ + int error; + + if (get_config_bool_default("x86.mptable", true)) { + error = mptable_build(ctx, guest_ncpus); + if (error != 0) + return (error); + } + error = smbios_build(ctx); + if (error != 0) + return (error); + error = e820_finalize(); + if (error != 0) + return (error); + + if (lpc_bootrom() && strcmp(lpc_fwcfg(), "bhyve") == 0) + fwctl_init(); + + if (get_config_bool("acpi_tables")) { + error = acpi_build(ctx, guest_ncpus); + assert(error == 0); + } + + return (0); +} diff --git a/usr.sbin/bhyve/amd64/xmsr.c b/usr.sbin/bhyve/amd64/xmsr.c index 99e758e84fff..7481df4669e7 100644 --- a/usr.sbin/bhyve/amd64/xmsr.c +++ b/usr.sbin/bhyve/amd64/xmsr.c @@ -33,12 +33,13 @@ #include #include -#include - +#include #include #include #include +#include + #include "debug.h" #include "xmsr.h" @@ -236,7 +237,7 @@ init_msr(void) cpu_vendor_intel = 1; } else { EPRINTLN("Unknown cpu vendor \"%s\"", cpu_vendor); - error = -1; + error = ENOENT; } return (error); } diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index d2bdba2e4a90..e3b297cfccca 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -71,52 +71,27 @@ #include -#include "bhyverun.h" #include "acpi.h" -#ifdef __amd64__ -#include "amd64/atkbdc.h" -#endif +#include "bhyverun.h" #include "bootrom.h" #include "config.h" -#ifdef __amd64__ -#include "amd64/inout.h" -#endif #include "debug.h" -#ifdef __amd64__ -#include "amd64/e820.h" -#include "amd64/fwctl.h" -#endif #ifdef BHYVE_GDB #include "gdb.h" #endif -#ifdef __amd64__ -#include "amd64/ioapic.h" -#include "amd64/kernemu_dev.h" -#endif #include "mem.h" #include "mevent.h" -#ifdef __amd64__ -#include "amd64/mptbl.h" -#endif #include "pci_emul.h" #ifdef __amd64__ -#include "amd64/pci_irq.h" #include "amd64/pci_lpc.h" #endif #include "qemu_fwcfg.h" -#include "smbiostbl.h" #ifdef BHYVE_SNAPSHOT #include "snapshot.h" #endif #include "tpm_device.h" -#ifdef __amd64__ -#include "amd64/rtc.h" -#endif #include "vmgenc.h" #include "vmexit.h" -#ifdef __amd64__ -#include "amd64/xmsr.h" -#endif #define MB (1024UL * 1024) #define GB (1024UL * MB) @@ -966,30 +941,10 @@ main(int argc, char *argv[]) exit(4); } -#ifdef __amd64__ - error = init_msr(); - if (error) { - fprintf(stderr, "init_msr error %d", error); - exit(4); - } -#endif - init_mem(guest_ncpus); -#ifdef __amd64__ - init_inout(); - kernemu_dev_init(); -#endif init_bootrom(ctx); -#ifdef __amd64__ - atkbdc_init(ctx); - pci_irq_init(ctx); - ioapic_init(ctx); -#endif - -#ifdef __amd64__ - rtc_init(ctx); - sci_init(ctx); -#endif + if (bhyve_init_platform(ctx, bsp) != 0) + exit(4); if (qemu_fwcfg_init(ctx) != 0) { fprintf(stderr, "qemu fwcfg initialization error"); @@ -1002,13 +957,6 @@ main(int argc, char *argv[]) exit(4); } -#ifdef __amd64__ - if (e820_init(ctx) != 0) { - fprintf(stderr, "Unable to setup E820"); - exit(4); - } -#endif - /* * Exit if a device emulation finds an error in its initialization */ @@ -1072,37 +1020,9 @@ main(int argc, char *argv[]) } #endif -#ifdef __amd64__ - if (get_config_bool_default("x86.mptable", true)) { - error = mptable_build(ctx, guest_ncpus); - if (error) { - perror("error to build the guest tables"); - exit(4); - } - } -#endif - - error = smbios_build(ctx); - if (error != 0) + if (bhyve_init_platform_late(ctx, bsp) != 0) exit(4); - if (get_config_bool("acpi_tables")) { - error = acpi_build(ctx, guest_ncpus); - assert(error == 0); - } - -#ifdef __amd64__ - error = e820_finalize(); - if (error != 0) - exit(4); -#endif - -#ifdef __amd64__ - if (lpc_bootrom() && strcmp(lpc_fwcfg(), "bhyve") == 0) { - fwctl_init(); - } -#endif - /* * Change the proc title to include the VM name. */ diff --git a/usr.sbin/bhyve/bhyverun.h b/usr.sbin/bhyve/bhyverun.h index 39e0916f08ef..5fe97ca07f0b 100644 --- a/usr.sbin/bhyve/bhyverun.h +++ b/usr.sbin/bhyve/bhyverun.h @@ -60,5 +60,7 @@ typedef int (*vmexit_handler_t)(struct vmctx *, struct vcpu *, struct vm_run *); void bhyve_init_config(void); void bhyve_init_vcpu(struct vcpu *vcpu); void bhyve_start_vcpu(struct vcpu *vcpu, bool bsp); +int bhyve_init_platform(struct vmctx *ctx, struct vcpu *bsp); +int bhyve_init_platform_late(struct vmctx *ctx, struct vcpu *bsp); #endif From nobody Wed Oct 11 13:25:22 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D6B4hntz4xNsb; Wed, 11 Oct 2023 13:25: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 4S5D6B4Cfmz3H8y; Wed, 11 Oct 2023 13:25:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030722; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7uNRMpXyl28urAfZAgRt2nEsY00ZiWTOztkehQxleF4=; b=NX0r6833jUjAxJFlq8k0WJafdV/5VPL76uOqK+eD/yzsIl3hK14Zkpgh/E5gaDglrO8tIJ LOtxKB1klrffLLYk4qA6hbw+9ANQFAprVET16dhb7qYtlggmMlgl67YLr53LVhBWl0NPRg ul60ihiLwACRxxgdqadqWhkJ1vQmAzH+0jeFcsjBMLcSSTbIRMu/yiyfnWPPxyymSQpBUP ofN0Fx6TzsUmMtj+A2gpJD8bVyyAYAKgEXGjnpg63yV5an319R4I/xYnHr/oRyYhz9Tiu8 XF10tcBwpo39UAn+1P906PBFlumY71zeIeZz1h3rI7gslKXRe7ECF41HUVOn+A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030722; a=rsa-sha256; cv=none; b=vkOhtpOj8eCKA2nhYBkVl8Vk7mm/JY6uZZfxT0tTcoS9GJbL63wYIHgnuXq+x1sN0Fx2Fq xLDO766Yk4TupA1Bf2cGt/bOP+43VLGYd/58epB2vUfthosoHpaB04zg2LdN/W1faVZHRa f5MQEr74ZzFoxKVRb1qwIKwYHG6/TL5/KMaIr8il3WRqZ8v8mbjw2DxLqshIAbixn9ll5B yuJSHCDR3kuYEqtB3rnx/U6K9ZSeCCO2UxYTrmvIy3lAQrXFjz2IJ3e0o4W2ZGnhYQXaC8 bpH8oo6u9yaCkRTdKaNIyPyS+9TclMWD032zmdeaW/30Ici5II/pwghCcTVtyQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030722; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7uNRMpXyl28urAfZAgRt2nEsY00ZiWTOztkehQxleF4=; b=tbjb+o86Y1FvLVaH3mfyBOVH8ax48d94tm8U2qiOuW+NyO46CDeayct4cmp3JJZSYAbsO/ lj64JBstz4H6rxQ320FphZwxDTe6yvGHg8TiYxEy3SY8l93TbnBKMdP381RibRu4Bdt9iQ GlQrh+sprui57kuQmkpBnxAsWhmfgd3yZKHGI5QxDG4RrBibs/ahxfbZf4gno+vg9hjTr2 +pC0leAqkUq8pvtBb6Keoe6GNbBQNIHWOCTY0w0N/HH+VQ3yKyXhKLrwhYNGXyzCkkkLgZ pMI3AAkikbttDbKKDq4goGDN+d3aZL1eyQZHUxKL41iLr5cCsxYcIApAR32nbQ== 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 4S5D6B3GJVz7ry; Wed, 11 Oct 2023 13:25:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDPMmw090724; Wed, 11 Oct 2023 13:25:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDPMgl090721; Wed, 11 Oct 2023 13:25:22 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:22 GMT Message-Id: <202310111325.39BDPMgl090721@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: a43a3efa5ab1 - stable/14 - bhyve: Build the HPET ACPI table on amd64 only List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: a43a3efa5ab13d937d1eb7e5f447babb4b8f66c5 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=a43a3efa5ab13d937d1eb7e5f447babb4b8f66c5 commit a43a3efa5ab13d937d1eb7e5f447babb4b8f66c5 Author: Mark Johnston AuthorDate: 2023-10-04 16:28:28 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:24:40 +0000 bhyve: Build the HPET ACPI table on amd64 only There is no HPET on arm64 and vm_get_hpet_capabilities() is not implemented there. Move the vm_get_hpet_capabilities() call into build_hpet(): I cannot see a downside, and doing so eliminates a global variable and reduces the amount of code that needs to be conditionally compiled. No functional change intended. Reviewed by: corvink, jhb MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40990 (cherry picked from commit 83b003fbe965869124706b4a80b212734152356d) --- usr.sbin/bhyve/acpi.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/usr.sbin/bhyve/acpi.c b/usr.sbin/bhyve/acpi.c index 4a3233291b7a..050e1a0ab75f 100644 --- a/usr.sbin/bhyve/acpi.c +++ b/usr.sbin/bhyve/acpi.c @@ -71,7 +71,6 @@ static int basl_keep_temps; static int basl_verbose_iasl; static int basl_ncpu; -static uint32_t hpet_capabilities; /* * Contains the full pathname of the template to be passed @@ -218,6 +217,7 @@ basl_fwrite_dsdt(FILE *fp) pci_write_dsdt(); +#ifdef __amd64__ dsdt_line(""); dsdt_line(" Scope (_SB.PC00)"); dsdt_line(" {"); @@ -233,6 +233,7 @@ basl_fwrite_dsdt(FILE *fp) dsdt_line(" })"); dsdt_line(" }"); dsdt_line(" }"); +#endif vmgenc_write_dsdt(); @@ -530,11 +531,18 @@ build_fadt(struct vmctx *const ctx) return (0); } +#ifdef __amd64__ static int build_hpet(struct vmctx *const ctx) { ACPI_TABLE_HPET hpet; struct basl_table *table; + uint32_t hpet_capabilities; + int err; + + err = vm_get_hpet_capabilities(ctx, &hpet_capabilities); + if (err != 0) + return (err); BASL_EXEC(basl_table_create(&table, ctx, ACPI_SIG_HPET, BASL_TABLE_ALIGNMENT)); @@ -551,6 +559,7 @@ build_hpet(struct vmctx *const ctx) return (0); } +#endif static int build_madt(struct vmctx *const ctx) @@ -720,14 +729,8 @@ build_spcr(struct vmctx *const ctx) int acpi_build(struct vmctx *ctx, int ncpu) { - int err; - basl_ncpu = ncpu; - err = vm_get_hpet_capabilities(ctx, &hpet_capabilities); - if (err != 0) - return (err); - /* * For debug, allow the user to have iasl compiler output sent * to stdout rather than /dev/null @@ -756,7 +759,9 @@ acpi_build(struct vmctx *ctx, int ncpu) BASL_EXEC(build_rsdp(ctx)); BASL_EXEC(build_fadt(ctx)); BASL_EXEC(build_madt(ctx)); +#ifdef __amd64__ BASL_EXEC(build_hpet(ctx)); +#endif BASL_EXEC(build_mcfg(ctx)); BASL_EXEC(build_facs(ctx)); BASL_EXEC(build_spcr(ctx)); From nobody Wed Oct 11 13:25:23 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5D6C6LKZz4xNvv; Wed, 11 Oct 2023 13:25: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 4S5D6C5DNGz3HNm; Wed, 11 Oct 2023 13:25:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030723; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=P1+1260G1hiGi0uDD8/yV4lmrJSy91E8djG6DKu4qaY=; b=fRipw8V8p9SDduYV9uRcti1Zz7r6Ld0RUyTBr+AoirYMP8X/z4Z/VIezWsTvWF+qNVrFH/ vAKJ+tIZCBpWyA1OOG7ErKA/0B4AWitELsMiBsuasqtmyqcpQn23p1Ky3T/kXZS4cKgLZR dpoYFYNyY23K04iaWz/1O7rdsMWvBGxTsQYKm5XEubtrT7dEbjHyqcEbDA/0yOafbOOP7m 9pVQ+6Lu0EOe+AIMVYzfsL0VD/qymFsj0ALy20ZlEEFdujcpPiQjLlyQLK+s84aNFP2uRo PvPxV5C8//iMvmZqs/JLQ10mJnF/4qQzEoxnYO1Tn9W3bZHgGCfVnIJOSVQntw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697030723; a=rsa-sha256; cv=none; b=isejhm45qFM6Hc7Rfe5VNMBsIx57/WOeM6e01jIDJzGZPAkMkQ1HkI7bSuzx9cPsX8I7Rk 3BX5eUQdi9bTn7iOrwwDn2Q+XaP46kZsKWSvm1eSC6sJkEVxWBtCdmBcQPU+Dwvu9xtc+m bkk8iOabzGeFOU99u7m54Mp5dBK6qAaI5ukEhzdK4Q0fBhMBbRR02glfxdhkHa+euHUTnf PCbfW0P4JMskSaBoa57CNyDyEVAuLq+RjvqMkIvXUexXYMx5jDWVPDelKog6LNhoLoTFox VhFJtJKJpotQkFAqfEBCxMHDuX3x6QdzZLxua+QD73fFhRaThqF5/W//bJayag== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697030723; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=P1+1260G1hiGi0uDD8/yV4lmrJSy91E8djG6DKu4qaY=; b=DdFFUZ/akaP/+UHFjLrUa8aiYHZrRR7ny7+iJiF+AM+BAeNB53+Qrn/XAjD2J92t+OKOCE kQ82X+Scjy8RVuOv7IVEtJ4ipscPUy9MSin95uYCNhCyPe5+0hAzif06VZufzzSv0VoN9r c6aA4yJ5Ba9LaspQAipTdJzsoFfsudl9soN862/9IN19aK8M6nLXIMw56tODMoZz05yA4+ OdcKn79muFXpq8hOLpUUtmdBGmHwjcpEMWt7/S1uqmvnND8XQVNje9jeUoW7lJ4gXIxV/i 99LxFCT9vwjAT2WvvkpgQE6adMWGMX3lYEMil/XRSLzQFS0BXipQzpTxHGkCWQ== 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 4S5D6C48Vvz7MN; Wed, 11 Oct 2023 13:25:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BDPNfA090776; Wed, 11 Oct 2023 13:25:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BDPNvn090773; Wed, 11 Oct 2023 13:25:23 GMT (envelope-from git) Date: Wed, 11 Oct 2023 13:25:23 GMT Message-Id: <202310111325.39BDPNvn090773@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 8f485cac6302 - stable/14 - bhyve: Move the vm_inject_fault() implementation to vmexit.c List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 8f485cac63024e1bd3a5328cdb2ccc08df364666 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=8f485cac63024e1bd3a5328cdb2ccc08df364666 commit 8f485cac63024e1bd3a5328cdb2ccc08df364666 Author: Mark Johnston AuthorDate: 2023-10-04 16:29:07 +0000 Commit: Mark Johnston CommitDate: 2023-10-11 13:24:41 +0000 bhyve: Move the vm_inject_fault() implementation to vmexit.c This function isn't generic and has a different signature on arm64. No functional change intended. Reviewed by: corvink, jhb MFC after: 1 week Sponsored by: Innovate UK Differential Revision: https://reviews.freebsd.org/D40991 (cherry picked from commit 7228ad8da93bcce820c85b733972d0d9cc767d27) --- usr.sbin/bhyve/amd64/vmexit.c | 13 +++++++++++++ usr.sbin/bhyve/bhyverun.c | 13 ------------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/usr.sbin/bhyve/amd64/vmexit.c b/usr.sbin/bhyve/amd64/vmexit.c index 152fecaf424c..5d903d98f277 100644 --- a/usr.sbin/bhyve/amd64/vmexit.c +++ b/usr.sbin/bhyve/amd64/vmexit.c @@ -56,6 +56,19 @@ #include "vmexit.h" #include "xmsr.h" +void +vm_inject_fault(struct vcpu *vcpu, int vector, int errcode_valid, + int errcode) +{ + int error, restart_instruction; + + restart_instruction = 1; + + error = vm_inject_exception(vcpu, vector, errcode_valid, errcode, + restart_instruction); + assert(error == 0); +} + static int vmexit_inout(struct vmctx *ctx, struct vcpu *vcpu, struct vm_run *vmrun) { diff --git a/usr.sbin/bhyve/bhyverun.c b/usr.sbin/bhyve/bhyverun.c index e3b297cfccca..eda9711bccb8 100644 --- a/usr.sbin/bhyve/bhyverun.c +++ b/usr.sbin/bhyve/bhyverun.c @@ -380,19 +380,6 @@ build_vcpumaps(void) } } -void -vm_inject_fault(struct vcpu *vcpu, int vector, int errcode_valid, - int errcode) -{ - int error, restart_instruction; - - restart_instruction = 1; - - error = vm_inject_exception(vcpu, vector, errcode_valid, errcode, - restart_instruction); - assert(error == 0); -} - void * paddr_guest2host(struct vmctx *ctx, uintptr_t gaddr, size_t len) { From nobody Wed Oct 11 15:44:21 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5HBZ0THDz4wK23; Wed, 11 Oct 2023 15:44:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5HBY6twcz3d1K; Wed, 11 Oct 2023 15:44:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039062; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zl67/QemO5PY+WUZKMkeIzzToNVK3b744yG8jC9+MOA=; b=B8TE9zvnnrDkzniuKe/X1WQkATGMJqpqtGHLVBSFr87W+7NzJt9PUiTq8af20Nuc/cKHWO F1wSUp4Wsuy10jl5uIhwRAEBlUNh9OuEeuWRl0xjs0n4VBIEph9Ls/bLTOdxAnsZqqg/xR vJpTQ0G42BadCB5j3ET5whkSy44s1dTEYv6kXZ2o/NBtzBmEjp3YeQG0fVpVAcOHf87azX 8xe7WQrnFK8t2p3oSezDms/Hhno2DieCslE4pSoTy32lxGGE3M3kKBqAhxL0Hw2hWjlSLX fLJNLuGAczUrmX0Y/Ohu+CAyffoSI0rIFjBUlTmIPUoghTmOJYkrmvC8ymfYBg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697039062; a=rsa-sha256; cv=none; b=hZe2W10iKRDOpevODJcID/RQglO6wU7M6EzaS9tznkkUZXMPqV7m4v4ng+rk+/iIIXKC2X 7MXigFaeVUEU5LBiyDRNIZiK2SDCfmkHisYNTMFLsKWuwIaabhIDtRQ83Ca7FPFps45Qh3 lNvHwvWhCUIt6MrCVsnGxHr/G/VZpsariw1VYr7amqOqTwR7LcQSaeAY1x49aaEbKd9Pvk XTQiTVukJx2T011b7y7beyhi9KIQOwgrlOMsEsMhu6jX+DI72EZp54SonyuGGPdtnaYrXL zAMH163GL3bxxqxLmpFkvG6V72Q69H8uRVIQBHAyIiX2uA6ZR7nIZoCJemydKA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039062; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zl67/QemO5PY+WUZKMkeIzzToNVK3b744yG8jC9+MOA=; b=Aafws+WTczobmfiu76UDNK/egRgCUR3x6r82yWFZKUkAc+Jwsv0zBeicMiau57oXi7Mkr+ RjS+Fs96cjy3WH4wyXdPOWORXutongS6OboSF6KVnyGANxIc85fnUIpErMLCkgHSLnhE0F c2tu7i7hMsVAGaJqt6GV5Gchf+mhj7dn/voLqmHAwKXULFJIE9riX0Lwg5zWVjp0Yl+Gs0 YoS8ElVi++eIy0XksNo3Si1rgOrExZJOvaiKZrGUeT0JumNOKXIppfwB/FIbuPB2XWzlaj +qZB+832fNA1Q8QVE4NXwAAf5DrknYiZfXi+iKNZYpqL8jfZJHIVpGjJaIVHug== 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 4S5HBY5xJ1zBx6; Wed, 11 Oct 2023 15:44:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BFiLsU023744; Wed, 11 Oct 2023 15:44:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BFiLsA023741; Wed, 11 Oct 2023 15:44:21 GMT (envelope-from git) Date: Wed, 11 Oct 2023 15:44:21 GMT Message-Id: <202310111544.39BFiLsA023741@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: b53155d4dfc6 - stable/14 - efirt: Move comment about fpu_kern_enter to where it is called List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b53155d4dfc67ee3754d886a03682e8522d85b31 Auto-Submitted: auto-generated The branch stable/14 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=b53155d4dfc67ee3754d886a03682e8522d85b31 commit b53155d4dfc67ee3754d886a03682e8522d85b31 Author: John Baldwin AuthorDate: 2023-08-25 19:33:00 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:10:31 +0000 efirt: Move comment about fpu_kern_enter to where it is called Reviewed by: imp, kib, andrew, markj Differential Revision: https://reviews.freebsd.org/D41576 (cherry picked from commit 8173fa60ddb7e9a805dec9fef7bf07e74ae4144d) --- sys/amd64/amd64/efirt_machdep.c | 5 ----- sys/dev/efidev/efirt.c | 5 +++++ 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/sys/amd64/amd64/efirt_machdep.c b/sys/amd64/amd64/efirt_machdep.c index 419f27a236bf..22d8cf963880 100644 --- a/sys/amd64/amd64/efirt_machdep.c +++ b/sys/amd64/amd64/efirt_machdep.c @@ -280,11 +280,6 @@ fail: * reason to bother with the virtual map, and no need to add a * complexity into loader. * - * The fpu_kern_enter() call allows firmware to use FPU, as mandated - * by the specification. In particular, CR0.TS bit is cleared. Also - * it enters critical section, giving us neccessary protection against - * context switch. - * * There is no need to disable interrupts around the change of %cr3, * the kernel mappings are correct, while we only grabbed the * userspace portion of VA. Interrupts handlers must not access diff --git a/sys/dev/efidev/efirt.c b/sys/dev/efidev/efirt.c index 535a6caa75bd..2d45b4d6ac66 100644 --- a/sys/dev/efidev/efirt.c +++ b/sys/dev/efidev/efirt.c @@ -285,6 +285,11 @@ rt_ok(void) return (0); } +/* + * The fpu_kern_enter() call in allows firmware to use FPU, as + * mandated by the specification. It also enters a critical section, + * giving us neccessary protection against context switches. + */ static int efi_enter(void) { From nobody Wed Oct 11 15:44:22 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5HBb1Yfrz4wK5Z; Wed, 11 Oct 2023 15:44:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5HBb0wpLz3d1k; Wed, 11 Oct 2023 15:44:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039063; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aD+SHf6BkCWtxXU6EFDsg6ZWO56ufson7D4dX1BiGDI=; b=yNn1vLo3AW/vs6ObHGusNiSPUVySMg18AiirVS4x6vQzr7aVkHtoWUJpt5wf4y1Tfx/Cdp MzttYxXqwOGfisE3oXs8eo6qC8XGucRja+Rw/wD/5CKzODvhQhhUsoGBlxJRm7WzIR8yu5 O6My4KfYp1zCOZe17PK5YZm8PdFSBFqTGzEOOOkqGSOGLiJis+hwb9Gw2RxDGygKNZMKSV /0gGEBW99mFrq2BazlgP2G+CKiUoTer0Tj7qGxxJ/HwqsU6ZpQWjmKq1e9XOO7xrELnp3v 1DepDYTdpGo1AnTaKKUGGP6dWjbINIbnbvl55Bnh/ouN8NAI1t3+FGvainpVeg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697039063; a=rsa-sha256; cv=none; b=GATKkAnRdwjEw/b3yvQWNFSGSSr4JXSniMX7hwIHHu21TBt5lxRX6AHecbz2dHG+UKCBtA XuEMeDHcQImyj0nEF+EPUn3RBluK2bpC716y3Rb2qZQHsHKqGVZ6DTC2U2CTyA2AcfqpIk cYIYv/gkpo+VeIwUBcickRIJmOq/HFEBL/+fsUJtR3MlGdoZOZiH+avbYQCDwApfuYkMle IdCwMFHdbSNQ0qyQ1GNvRbsubY5fx0Kee2COMzrDGbBjafgUe5xT7uJh6AWgL8D5u7qRF2 6RB5sa9FK+yIcKPX7ERKFjBtKN36ItfCrz/fDF6FK94YfaFnDWjbVPk3mL3m9w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039063; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aD+SHf6BkCWtxXU6EFDsg6ZWO56ufson7D4dX1BiGDI=; b=W5yWK1W87pp/4uZtS6sHs07q4B804zTdfgF6LyaakkkS+L2F0Puyqhcl1eJr6lkYIT+AZV VJ/1LQWjfzqxzplL8w4VrwQYxR0XfzDy3QouGeizNyEsIA00IpGm9ydaA1ShDsmVfLM1jd UjFwhb9zlZLgElyLkDAZHQ6vX5cc0JRFGqi6ho0wFlFwLrsnJ6Ub/en8S7XfH8n6n110S9 MI2VRiOHyU5wwV50t65gzGa9dY2QdSYCRgnmlodvCdvlAYVA8RY2H0nGTDBb3Zm0uvK9Sr yHZHNGGmpDtX6RjVahWtCeW53uABb/cms1AruphnBvMvuJfQ1T/UmE4RpuehLQ== 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 4S5HBZ6qvhzC7C; Wed, 11 Oct 2023 15:44:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BFiMlm023789; Wed, 11 Oct 2023 15:44:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BFiMP3023786; Wed, 11 Oct 2023 15:44:22 GMT (envelope-from git) Date: Wed, 11 Oct 2023 15:44:22 GMT Message-Id: <202310111544.39BFiMP3023786@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: f9984cda9609 - stable/14 - arm unwind: Reject unaligned stack pointers List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f9984cda960915c594a777d6423804bcaa0fab4e Auto-Submitted: auto-generated The branch stable/14 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=f9984cda960915c594a777d6423804bcaa0fab4e commit f9984cda960915c594a777d6423804bcaa0fab4e Author: John Baldwin AuthorDate: 2023-08-25 19:00:37 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:10:31 +0000 arm unwind: Reject unaligned stack pointers Reviewed by: andrew Differential Revision: https://reviews.freebsd.org/D41533 (cherry picked from commit 247e8662d2c080c27937ec4d62e80b2358e8c74f) --- sys/arm/arm/unwind.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sys/arm/arm/unwind.c b/sys/arm/arm/unwind.c index cdc9ef225ee7..591bae3dfc26 100644 --- a/sys/arm/arm/unwind.c +++ b/sys/arm/arm/unwind.c @@ -398,6 +398,9 @@ unwind_exec_insn(struct unwind_state *state) if (mask == 0) return 1; + if (!__is_aligned(vsp, sizeof(register_t))) + return 1; + /* Update SP */ update_vsp = 1; @@ -430,6 +433,9 @@ unwind_exec_insn(struct unwind_state *state) /* Read how many registers to load */ count = insn & INSN_POP_COUNT_MASK; + if (!__is_aligned(vsp, sizeof(register_t))) + return 1; + /* Update sp */ update_vsp = 1; @@ -460,6 +466,9 @@ unwind_exec_insn(struct unwind_state *state) if (mask == 0 || (mask & 0xf0) != 0) return 1; + if (!__is_aligned(vsp, sizeof(register_t))) + return 1; + /* Update SP */ update_vsp = 1; From nobody Wed Oct 11 15:44:23 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5HBc2Fnnz4wK25; Wed, 11 Oct 2023 15:44:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5HBc1SGFz3d4J; Wed, 11 Oct 2023 15:44:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039064; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YqQWMBSm40Vl5fQ95kCftb8OHuEqSuPKPKv3IRorZfY=; b=Jycjl6X9DocIb3kpCY5HSrN6uGBpjxco60bBtSI7DJcXpbANKiYlwbmGE/zEuhgXsG0wju CgMi2t7uACWntbpwQqN8I/Ryx7EINCeFjUBrDH39hWG//sXmgma+FSzir5A4mmXHwm/sqH JA11BWGhx+jR4P7FTg49pbV7Jq2wZFMCNi7hLvZTlF6JGVz6Ykmek9DpEVU7pjg643+mgO ylzDuHYOGtLNKOIWTGRvUITyZ8y3KKKGHeTeqcDXmFIS7VsLSXU7mog9mzRLLMsbB6RvGm k16MesvAqPT3l8IdApNK2Mcb0M5lEwL/6foBjUnF4MMX/m/8K/XPnMzgUWpsXg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697039064; a=rsa-sha256; cv=none; b=ML5ZAvjsOZoZsO0eV96pgtoxSQP7+UhsfDEBzBeGS07lhPEcD6yuYVNONbcxZJ8Og+RpLE t5WOJ+xy222pJQWw+FuevZEqkupiUJVMuZ4TPOu/wTELlQ6TRsfCFLIAHj4Wj8/U1wWKs/ f8Npv6gb/MLoavd4VIVcJ0EKd8J6WoN/teKGVmB2Rm9awuzPMQ6Z07GCH3l03rA7OKgZOx vdbcWL8lCvN1QwbHL5QKAFBgklL4iew4mlvFrLd8YU21H1eNWjLWjStM0AVQPNQXOPLpMG eaRKwfp0e0AudXLpCbd+ybJaHgpoIrXjWcaZYcPUeWkFZbwYOl6iFMf4kj/TRg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039064; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YqQWMBSm40Vl5fQ95kCftb8OHuEqSuPKPKv3IRorZfY=; b=JUCZu3nx3+DUHx3bnjOF2WPiwTyZ+ALoW5mtDJWyNlYZTZ54EWcS7byyylKI5pJrGFuhu0 bg02glmXu5li44u1c+dDjE2ccWrHNtHkdPgoO7DGteqIfCD+4Q6Y4FbvFMu1zkt3TJQRJk J2a2/tAuPYbeNO7+EpA/ypqigMD7Tp+9fb7TZDTtRQL/ihP7rLiKgLdO+LVvCP3nZ2Z79K fyALcquc0Qj9T7gAUNOUXfvHXF5yxjGXH3AOvRnHsPGFBvqonKTlScANXASyxGfW1E9sHV Hm2YUSgteYZ9CugN3A6UwSipGnneIzQivX+kycB45NE1iGzrfy46gHfhSIk9Ag== 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 4S5HBc0YC3zBMJ; Wed, 11 Oct 2023 15:44:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BFiNJf023837; Wed, 11 Oct 2023 15:44:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BFiNTH023834; Wed, 11 Oct 2023 15:44:23 GMT (envelope-from git) Date: Wed, 11 Oct 2023 15:44:23 GMT Message-Id: <202310111544.39BFiNTH023834@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: 842a945c4077 - stable/14 - efirt_machdep.c: Trim some unused includes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 842a945c4077da55232a4c503677ef9d2a13a125 Auto-Submitted: auto-generated The branch stable/14 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=842a945c4077da55232a4c503677ef9d2a13a125 commit 842a945c4077da55232a4c503677ef9d2a13a125 Author: John Baldwin AuthorDate: 2023-08-28 23:22:03 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:10:32 +0000 efirt_machdep.c: Trim some unused includes Reviewed by: imp, kib, markj Differential Revision: https://reviews.freebsd.org/D41596 (cherry picked from commit d1e4c63d9e93b113f7ef5aef5e0e79a4d7dca144) --- sys/amd64/amd64/efirt_machdep.c | 3 --- sys/arm64/arm64/efirt_machdep.c | 3 --- 2 files changed, 6 deletions(-) diff --git a/sys/amd64/amd64/efirt_machdep.c b/sys/amd64/amd64/efirt_machdep.c index 22d8cf963880..ffe2e2cf60a9 100644 --- a/sys/amd64/amd64/efirt_machdep.c +++ b/sys/amd64/amd64/efirt_machdep.c @@ -45,11 +45,8 @@ #include #include #include -#include #include -#include #include -#include #include #include #include diff --git a/sys/arm64/arm64/efirt_machdep.c b/sys/arm64/arm64/efirt_machdep.c index 26990f40ea0a..c51987625356 100644 --- a/sys/arm64/arm64/efirt_machdep.c +++ b/sys/arm64/arm64/efirt_machdep.c @@ -46,10 +46,7 @@ #include #include -#include -#include #include -#include #include #include From nobody Wed Oct 11 15:44:25 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5HBd38LKz4wK2B; Wed, 11 Oct 2023 15:44:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5HBd2RsXz3d7V; Wed, 11 Oct 2023 15:44:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039065; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6fjfvpPep70exuISA9oYOqerZGuCxAoSm2Xe1RaSn1g=; b=ZSo9D53CCrgJKgAP48kHRedFkyVCEbHHaGDHJ7b32V2NDD2JiGNwPwKS0T27x8zpQc6RqC yV7cu9EnuoPGhorwgHrIVABt4pWmjYKp0GLKBlCjWqOppfKx5lQZ36PxC/KrlRuu3ulBPP iphMrwr6OS5erRHpdegpLtp3wCGu+fLuTsVD1Jt+SoDHzN6Rq+vIZx5G0RXMYVBsDhlnDR c40M/Op9sFy/re282oB/iP5OXFgPke6X+9oGOMMUngunfPtt2tARWGi4cGJl2oer2GxtdB 7YRnYwznVUjG/fb2jB71XP61ICfgeQHtp7r/JGLUNhaEIcfW1K0HZxYfbFg3zQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697039065; a=rsa-sha256; cv=none; b=oYxb4yFW9MM5+jr4Ts1img32Hl6NBFgcwZGemq1EvaJiNhWgve1330O4ovVmxDtQgywdP/ 5McGgb1ke66w9dW54L+lzvPCyvcA+USTMwBHztGWIUFDGdyS3GvfJ+iQVKdDp0BTw+x2jf i4he2FGgCmQUQZ+/MEwXj//DOcGVqQX2GDNT73fCdMx/TFd4Sb6vdfCZyCBIPiCDt5MLoi eZWqYHvAmtzcBs1MSIADOa5r4H4k/wM38v+dmyiGBs3y+FBCvceqI6khPlnif3Fs9nBcoB A3vMYKeWEH/G6VU0PmdquAEmgu417EHnLM4NEkPzK4JYgYMhWOQsCn2882J6Sw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039065; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6fjfvpPep70exuISA9oYOqerZGuCxAoSm2Xe1RaSn1g=; b=GaL4uZu6AelsNs/I4KVKf0rwlkd4jZZhzG8Bxm1ROmPSQJBP/7p91UgEPKWQbN+XSYfubL m34luB7fLqrzmKcfMXWADLpxCKkE/cH83Fpz8fjV6wrELNBb7f/14ywVwU21rQDIDQUC59 40H4uJtl69N8LgdvFgC5ED4zt8NDLX40h03LCU9rpGoqeeC/4AIfpf2EiQ7AEhsrpf0AFW w5+zplt7mPO1ECk6tcBH77SMq8HDH6j//l/GIrj5WsTmFiEshV/GwSlXBbxGflY4Ow+gcK 9wRUh8fv4uY9wDIUDLyz0voZxdlPYaxI2+q7tdeDsS1w2xZvwbQ9W1eluhvBRw== 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 4S5HBd1X6wzCHN; Wed, 11 Oct 2023 15:44:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BFiPjS023883; Wed, 11 Oct 2023 15:44:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BFiPlR023880; Wed, 11 Oct 2023 15:44:25 GMT (envelope-from git) Date: Wed, 11 Oct 2023 15:44:25 GMT Message-Id: <202310111544.39BFiPlR023880@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: e23f1b86a6a7 - stable/14 - amd64 db_trace: Reject unaligned frame pointers List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e23f1b86a6a70a3cbd5ca86399f6ce50f06a3f35 Auto-Submitted: auto-generated The branch stable/14 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=e23f1b86a6a70a3cbd5ca86399f6ce50f06a3f35 commit e23f1b86a6a70a3cbd5ca86399f6ce50f06a3f35 Author: John Baldwin AuthorDate: 2023-09-01 22:55:05 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:10:32 +0000 amd64 db_trace: Reject unaligned frame pointers Switch to using db_addr_t to hold frame pointer values until they are verified to be suitably aligned. Reviewed by: kib, markj Differential Revision: https://reviews.freebsd.org/D41532 (cherry picked from commit 4a9cd9fc22d7f87a27ccd3d41b93a0356cd7061c) --- sys/amd64/amd64/db_trace.c | 127 ++++++++++++++++++++++++--------------------- 1 file changed, 68 insertions(+), 59 deletions(-) diff --git a/sys/amd64/amd64/db_trace.c b/sys/amd64/amd64/db_trace.c index 14bd893b6cc4..f9a0c2b6a03e 100644 --- a/sys/amd64/amd64/db_trace.c +++ b/sys/amd64/amd64/db_trace.c @@ -121,17 +121,14 @@ db_frame(struct db_variable *vp, db_expr_t *valuep, int op) #define INTERRUPT 2 #define SYSCALL 3 -static void db_nextframe(struct amd64_frame **, db_addr_t *, struct thread *); -static void db_print_stack_entry(const char *, db_addr_t, void *); - static void -db_print_stack_entry(const char *name, db_addr_t callpc, void *frame) +db_print_stack_entry(const char *name, db_addr_t callpc, db_addr_t frame) { db_printf("%s() at ", name != NULL ? name : "??"); db_printsym(callpc, DB_STGY_PROC); - if (frame != NULL) - db_printf("/frame 0x%lx", (register_t)frame); + if (frame != 0) + db_printf("/frame %#lx", frame); db_printf("\n"); } @@ -139,17 +136,20 @@ db_print_stack_entry(const char *name, db_addr_t callpc, void *frame) * Figure out the next frame up in the call stack. */ static void -db_nextframe(struct amd64_frame **fp, db_addr_t *ip, struct thread *td) +db_nextframe(db_addr_t *fp, db_addr_t *ip, struct thread *td) { struct trapframe *tf; + db_addr_t tf_addr; int frame_type; long rip, rsp, rbp; db_expr_t offset; c_db_sym_t sym; const char *name; - rip = db_get_value((long) &(*fp)->f_retaddr, 8, FALSE); - rbp = db_get_value((long) &(*fp)->f_frame, 8, FALSE); + rip = db_get_value(*fp + offsetof(struct amd64_frame, f_retaddr), 8, + FALSE); + rbp = db_get_value(*fp + offsetof(struct amd64_frame, f_frame), 8, + FALSE); /* * Figure out frame type. We look at the address just before @@ -193,50 +193,55 @@ db_nextframe(struct amd64_frame **fp, db_addr_t *ip, struct thread *td) * Normal frames need no special processing. */ if (frame_type == NORMAL) { - *ip = (db_addr_t) rip; - *fp = (struct amd64_frame *) rbp; + *ip = rip; + *fp = rbp; return; } - db_print_stack_entry(name, rip, &(*fp)->f_frame); + db_print_stack_entry(name, rip, *fp); /* * Point to base of trapframe which is just above the * current frame. */ - tf = (struct trapframe *)((long)*fp + 16); - - if (INKERNEL((long) tf)) { - rsp = tf->tf_rsp; - rip = tf->tf_rip; - rbp = tf->tf_rbp; - switch (frame_type) { - case TRAP: - db_printf("--- trap %#r", tf->tf_trapno); - break; - case SYSCALL: - db_printf("--- syscall"); - db_decode_syscall(td, tf->tf_rax); - break; - case INTERRUPT: - db_printf("--- interrupt"); - break; - default: - panic("The moon has moved again."); - } - db_printf(", rip = %#lr, rsp = %#lr, rbp = %#lr ---\n", rip, - rsp, rbp); + tf_addr = *fp + 16; + + if (!__is_aligned(tf_addr, _Alignof(*tf)) || !INKERNEL(tf_addr)) { + db_printf("--- invalid trapframe %p\n", (void *)tf_addr); + *ip = 0; + *fp = 0; + return; } + tf = (struct trapframe *)tf_addr; + + rsp = tf->tf_rsp; + rip = tf->tf_rip; + rbp = tf->tf_rbp; + switch (frame_type) { + case TRAP: + db_printf("--- trap %#r", tf->tf_trapno); + break; + case SYSCALL: + db_printf("--- syscall"); + db_decode_syscall(td, tf->tf_rax); + break; + case INTERRUPT: + db_printf("--- interrupt"); + break; + default: + __assert_unreachable(); + } + db_printf(", rip = %#lr, rsp = %#lr, rbp = %#lr ---\n", rip, rsp, rbp); - *ip = (db_addr_t) rip; - *fp = (struct amd64_frame *) rbp; + *ip = rip; + *fp = rbp; } static int __nosanitizeaddress __nosanitizememory -db_backtrace(struct thread *td, struct trapframe *tf, struct amd64_frame *frame, +db_backtrace(struct thread *td, struct trapframe *tf, db_addr_t frame, db_addr_t pc, register_t sp, int count) { - struct amd64_frame *actframe; + db_addr_t actframe; const char *name; db_expr_t offset; c_db_sym_t sym; @@ -270,7 +275,7 @@ db_backtrace(struct thread *td, struct trapframe *tf, struct amd64_frame *frame, * jumped to a bogus location, so try and use * the return address to find our caller. */ - db_print_stack_entry(name, pc, NULL); + db_print_stack_entry(name, pc, 0); pc = db_get_value(sp, 8, FALSE); if (db_search_symbol(pc, DB_STGY_PROC, &offset) == C_DB_SYM_NULL) @@ -282,20 +287,20 @@ db_backtrace(struct thread *td, struct trapframe *tf, struct amd64_frame *frame, instr = db_get_value(pc, 4, FALSE); if ((instr & 0xffffffff) == 0xe5894855) { /* pushq %rbp; movq %rsp, %rbp */ - actframe = (void *)(tf->tf_rsp - 8); + actframe = tf->tf_rsp - 8; } else if ((instr & 0xffffff) == 0xe58948) { /* movq %rsp, %rbp */ - actframe = (void *)tf->tf_rsp; + actframe = tf->tf_rsp; if (tf->tf_rbp == 0) { /* Fake frame better. */ frame = actframe; } } else if ((instr & 0xff) == 0xc3) { /* ret */ - actframe = (void *)(tf->tf_rsp - 8); + actframe = tf->tf_rsp - 8; } else if (offset == 0) { /* Probably an assembler symbol. */ - actframe = (void *)(tf->tf_rsp - 8); + actframe = tf->tf_rsp - 8; } } else if (name != NULL && strcmp(name, "fork_trampoline") == 0) { @@ -312,20 +317,24 @@ db_backtrace(struct thread *td, struct trapframe *tf, struct amd64_frame *frame, if (actframe != frame) { /* `frame' belongs to caller. */ - pc = (db_addr_t) - db_get_value((long)&actframe->f_retaddr, 8, FALSE); + pc = db_get_value(actframe + + offsetof(struct amd64_frame, f_retaddr), 8, FALSE); continue; } db_nextframe(&frame, &pc, td); - - if (INKERNEL((long)pc) && !INKERNEL((long)frame)) { - sym = db_search_symbol(pc, DB_STGY_ANY, &offset); - db_symbol_values(sym, &name, NULL); - db_print_stack_entry(name, pc, frame); + if (frame == 0) break; - } - if (!INKERNEL((long) frame)) { + + if (!__is_aligned(frame, _Alignof(struct amd64_frame)) || + !INKERNEL(frame)) { + if (INKERNEL(pc)) { + sym = db_search_symbol(pc, DB_STGY_ANY, + &offset); + db_symbol_values(sym, &name, NULL); + db_print_stack_entry(name, pc, frame); + break; + } break; } } @@ -336,14 +345,14 @@ db_backtrace(struct thread *td, struct trapframe *tf, struct amd64_frame *frame, void db_trace_self(void) { - struct amd64_frame *frame; - db_addr_t callpc; + db_addr_t callpc, frame; register_t rbp; __asm __volatile("movq %%rbp,%0" : "=r" (rbp)); - frame = (struct amd64_frame *)rbp; - callpc = (db_addr_t)db_get_value((long)&frame->f_retaddr, 8, FALSE); - frame = frame->f_frame; + callpc = db_get_value(rbp + offsetof(struct amd64_frame, f_retaddr), 8, + FALSE); + frame = db_get_value(rbp + offsetof(struct amd64_frame, f_frame), 8, + FALSE); db_backtrace(curthread, NULL, frame, callpc, 0, -1); } @@ -355,8 +364,8 @@ db_trace_thread(struct thread *thr, int count) ctx = kdb_thr_ctx(thr); tf = thr == kdb_thread ? kdb_frame : NULL; - return (db_backtrace(thr, tf, (struct amd64_frame *)ctx->pcb_rbp, - ctx->pcb_rip, ctx->pcb_rsp, count)); + return (db_backtrace(thr, tf, ctx->pcb_rbp, ctx->pcb_rip, ctx->pcb_rsp, + count)); } void From nobody Wed Oct 11 15:44:26 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5HBf4jwxz4wJmP; Wed, 11 Oct 2023 15:44:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5HBf39Rwz3d3H; Wed, 11 Oct 2023 15:44:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039066; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DLJaUgGWzPVyjWdAEgH0POk7CeyieSdAftji6lJx5tI=; b=a3bloLUvfb4d6PXQUQ5nhcOFJ1yxdxNWeZP5liTj6bQTy6qzOeSX2lMm/kTy6JEVyDZYAq eS1Qf0dTtCGbL9ziR8IinYmdIGukcUNsjBKKmV1b0HSNc4hLZLc6oYAIE8QSIasKrwaOoI QwCeXCoAEDyssgqs2aPYuZGxvjR5oFRtOb4PprZwp31assW6JS6eAQFvSftUV/TFdIhlrV ZRsP+YlMtsFw5lYHXTyUEGlKgTGc4xwN35QQfcdo9TPluyF4brazAOGJvFnBBnF3lVMeV1 O54bKF1Q1Z2l7ZzjHyPzbKFO6ocYRNm8sdviR6Euz2CkamrCaNEqRHEhphEzuA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697039066; a=rsa-sha256; cv=none; b=UDcy80GEXOJiH7lEQj6KfCPs9c+nZHJGazussOR3q6eq1AQKl4MUQwKvnanpuFEZsJueND KMCg1WAUaFIs29n+1Bx8x6xtN/60XJ49t2WjgiX9RkR2I9cgwLurC4VWmhKEdBC6Rp2/Hn qDIIKEhPLEwWON6O23vUSaDWrIhItAWRA1aNm8MiFTHRz61HB+Jzq4bqwS3SdPvusSq8Z8 TmRLH5kO+tj4oMLn/Q1aIkvGTcU+qyuhB1IXz4GJ5OJ9khV4KVXX4F1ws6DHBXz3CBVwo5 0V3mM48Np8pVMBSA8Fg+EGv1IsCuq6NgACMYOz99s3eaoBeNkOAKEgbPjPNPvA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039066; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DLJaUgGWzPVyjWdAEgH0POk7CeyieSdAftji6lJx5tI=; b=tAlROMVH+OxNcJGBv4jG4U7TexiNtIiHxi+l2f3ApF0ayDHxoprN5d8uKaW2nLlnHuVOJm 7mfnG0tpuz4wDkYGVziL40s6XygHI4/d4lF5OzXOTCwSaY1SfQqEh37UY0ZpiQ8f+lbvA0 ZZK5Q7tmlGCgJ1GaPax180POVl1r8h2uRuMCCzKes7k9A69NNb+vQAIb27+ZAnkeX8MdG1 9cOmvaoFfdsIDbwkKw2Rxhai4RlH5X+G4RPQISDByPezAak9VIUsi671JkoLpeqI7VeoGf zc5F4v316SDkKNQp7JWird++OrGATbkKcIRANx+2a/Eb3fZBbJAnaFefOm2+wQ== 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 4S5HBf2G3zzC58; Wed, 11 Oct 2023 15:44:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BFiQHF023925; Wed, 11 Oct 2023 15:44:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BFiQCd023922; Wed, 11 Oct 2023 15:44:26 GMT (envelope-from git) Date: Wed, 11 Oct 2023 15:44:26 GMT Message-Id: <202310111544.39BFiQCd023922@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: b7f5e993476f - stable/14 - virtio_random: Pipeline fetching the data List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b7f5e993476f6e445895383e73aed01741f8b9cf Auto-Submitted: auto-generated The branch stable/14 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=b7f5e993476f6e445895383e73aed01741f8b9cf commit b7f5e993476f6e445895383e73aed01741f8b9cf Author: John-Mark Gurney AuthorDate: 2023-09-05 15:59:43 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:10:32 +0000 virtio_random: Pipeline fetching the data Queue an initial fetch of data during attach and after every read rather than synchronously fetching data and polling for completion. If data has not been returned from an previous fetch during read, just return EAGAIN rather than blocking. Co-authored-by: John Baldwin Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D41656 (cherry picked from commit f1c5a2e3a625053e2b70d5b1777d849a4d9328f2) --- sys/dev/virtio/random/virtio_random.c | 73 +++++++++++++++++++++-------------- 1 file changed, 43 insertions(+), 30 deletions(-) diff --git a/sys/dev/virtio/random/virtio_random.c b/sys/dev/virtio/random/virtio_random.c index c02b5c98cece..d54e2e6b70d4 100644 --- a/sys/dev/virtio/random/virtio_random.c +++ b/sys/dev/virtio/random/virtio_random.c @@ -54,6 +54,8 @@ struct vtrnd_softc { struct virtqueue *vtrnd_vq; eventhandler_tag eh; bool inactive; + struct sglist *vtrnd_sg; + uint32_t *vtrnd_value; }; static int vtrnd_modevent(module_t, int, void *); @@ -67,6 +69,7 @@ static int vtrnd_negotiate_features(struct vtrnd_softc *); static int vtrnd_setup_features(struct vtrnd_softc *); static int vtrnd_alloc_virtqueue(struct vtrnd_softc *); static int vtrnd_harvest(struct vtrnd_softc *, void *, size_t *); +static void vtrnd_enqueue(struct vtrnd_softc *sc); static unsigned vtrnd_read(void *, unsigned); #define VTRND_FEATURES 0 @@ -138,12 +141,17 @@ static int vtrnd_attach(device_t dev) { struct vtrnd_softc *sc, *exp; + size_t len; int error; sc = device_get_softc(dev); sc->vtrnd_dev = dev; virtio_set_feature_desc(dev, vtrnd_feature_desc); + len = sizeof(*sc->vtrnd_value) * HARVESTSIZE; + sc->vtrnd_value = malloc_aligned(len, len, M_DEVBUF, M_WAITOK); + sc->vtrnd_sg = sglist_build(sc->vtrnd_value, len, M_WAITOK); + error = vtrnd_setup_features(sc); if (error) { device_printf(dev, "cannot setup features\n"); @@ -174,6 +182,8 @@ vtrnd_attach(device_t dev) sc->inactive = false; random_source_register(&random_vtrnd); + vtrnd_enqueue(sc); + fail: if (error) vtrnd_detach(dev); @@ -185,6 +195,7 @@ static int vtrnd_detach(device_t dev) { struct vtrnd_softc *sc; + uint32_t rdlen; sc = device_get_softc(dev); KASSERT( @@ -197,7 +208,13 @@ vtrnd_detach(device_t dev) sc->eh = NULL; } random_source_deregister(&random_vtrnd); + + /* clear the queue */ + virtqueue_poll(sc->vtrnd_vq, &rdlen); + atomic_store_explicit(&g_vtrnd_softc, NULL, memory_order_release); + sglist_free(sc->vtrnd_sg); + zfree(sc->vtrnd_value, M_DEVBUF); return (0); } @@ -251,49 +268,45 @@ vtrnd_alloc_virtqueue(struct vtrnd_softc *sc) return (virtio_alloc_virtqueues(dev, 0, 1, &vq_info)); } +static void +vtrnd_enqueue(struct vtrnd_softc *sc) +{ + struct virtqueue *vq; + int error __diagused; + + vq = sc->vtrnd_vq; + + KASSERT(virtqueue_empty(vq), ("%s: non-empty queue", __func__)); + + error = virtqueue_enqueue(vq, sc, sc->vtrnd_sg, 0, 1); + KASSERT(error == 0, ("%s: virtqueue_enqueue returned error: %d", + __func__, error)); + + virtqueue_notify(vq); +} + static int vtrnd_harvest(struct vtrnd_softc *sc, void *buf, size_t *sz) { - struct sglist_seg segs[1]; - struct sglist sg; struct virtqueue *vq; - uint32_t value[HARVESTSIZE] __aligned(sizeof(uint32_t) * HARVESTSIZE); + void *cookie; uint32_t rdlen; - int error; - - _Static_assert(sizeof(value) < PAGE_SIZE, "sglist assumption"); if (sc->inactive) return (EDEADLK); - sglist_init(&sg, 1, segs); - error = sglist_append(&sg, value, *sz); - if (error != 0) - panic("%s: sglist_append error=%d", __func__, error); - vq = sc->vtrnd_vq; - KASSERT(virtqueue_empty(vq), ("%s: non-empty queue", __func__)); - - error = virtqueue_enqueue(vq, buf, &sg, 0, 1); - if (error != 0) - return (error); - - /* - * Poll for the response, but the command is likely already - * done when we return from the notify. - */ - virtqueue_notify(vq); - virtqueue_poll(vq, &rdlen); - if (rdlen > *sz) - panic("%s: random device wrote %zu bytes beyond end of provided" - " buffer %p:%zu", __func__, (size_t)rdlen - *sz, - (void *)value, *sz); - else if (rdlen == 0) + cookie = virtqueue_dequeue(vq, &rdlen); + if (cookie == NULL) return (EAGAIN); + KASSERT(cookie == sc, ("%s: cookie mismatch", __func__)); + *sz = MIN(rdlen, *sz); - memcpy(buf, value, *sz); - explicit_bzero(value, *sz); + memcpy(buf, sc->vtrnd_value, *sz); + + vtrnd_enqueue(sc); + return (0); } From nobody Wed Oct 11 15:44:27 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5HBg57xzz4wJpX; Wed, 11 Oct 2023 15:44:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5HBg4Pllz3dRk; Wed, 11 Oct 2023 15:44:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039067; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=z0Z9Mzq22ui0d+GExNsFtZ1g24YQS3R6YOjGo4ZqeaQ=; b=KfoLzWdmFs8jaibA8JMAtFwSEjiKsjeTzFHoBrx6rY5/u/YtYIFahA4DEWC/KeLZ1crg4K 3IO5Vfa6YJd/dMU8WoCk0BlfvqtnJhtw+/gozf2A4ysn/W9cvhWtXodjM61246jXhCg9h5 jw6JuKPtwiF0/+vI8FXYIs//M4nbE4AlWf6uqiqtC8tZzd44AnOrb3DennpKxgWCIb87ab UsYeo0LYIZY/n84/S5MVn/mmD9w2IK7UZDCNVpfvxQQlOguzfuZG+LqOXfE5GLUVXJ+6gS 7kUaBZcB3hjzEwB5azk1WtAbZsw8cAQJeDzlJ4zxNPyrectjtoEnXbewjRJN5g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697039067; a=rsa-sha256; cv=none; b=eyZ9O8sLpeYJLjfJij8CN2lQ5C0VWRaESsjFdSAJ7clrijaBtwpUV26Dyi6iiSz/gvsqlG eSGgtFP0x/H8uuPGLLSAZjQUUHzn+s7scxpjPV+6gZZyYwn0ygyOApQZd4Qls0cM/akVz2 Z/xM0syiHL2p9DpxuPinyyKnhY5EaCs64TquDHx5vWHtNJjnIyJV5fE7HK8ncB0/jOkpv4 NjzHxYs9HlsJ9I3dFWmx1I7G+7WZE6DhSsyh6Q4UKz7uDViYe/WEsIYDLonJigvkGK54vx 4jHaUuflgbGZEfxlz+tDbMsU9SFtum2wUi0eqkWawUPiwoF/XVtNrk1owLYcUQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039067; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=z0Z9Mzq22ui0d+GExNsFtZ1g24YQS3R6YOjGo4ZqeaQ=; b=iLUc+drhYGXLqynf+Oa0KzdS6UAei8pPOw+JBsEzxKMFe5OwhD4/VHLKWuCz8jNfi/rHGd jJyeCY6dXeDrg85YYD7FMUBLENBERclnBOjyiUfgjzNnn9O8Ewd+ZAuhDOzfn8RxwiPg0f gLcgrFh0TLSp2yWJw5/4HGTzskwdBU6+xmdAYTBydp4EKZSZQlf3Q3EDazuSFq1DMLtwDa KCE24L+/vka8PpcQWBO/Wwh6GBWWsP4o1KB9G/h4GJkeWjh+HRW0mmmytpXGJBk+YcEowT LWIceCBMnaml/RYPFCXsVvHxI+ef2JAdLPQFsgDssRvikyWwipnp/4y8B9ungQ== 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 4S5HBg3WrlzC7D; Wed, 11 Oct 2023 15:44:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BFiReY023980; Wed, 11 Oct 2023 15:44:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BFiRLI023977; Wed, 11 Oct 2023 15:44:27 GMT (envelope-from git) Date: Wed, 11 Oct 2023 15:44:27 GMT Message-Id: <202310111544.39BFiRLI023977@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: 4de5dace1ace - stable/14 - riscv: Save gp in the trapframe in both modes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 4de5dace1acee104ecacc34e37a17f98d194164c Auto-Submitted: auto-generated The branch stable/14 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=4de5dace1acee104ecacc34e37a17f98d194164c commit 4de5dace1acee104ecacc34e37a17f98d194164c Author: John Baldwin AuthorDate: 2023-09-05 16:04:54 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:10:32 +0000 riscv: Save gp in the trapframe in both modes Similar to d95fbf4e1a12565908b04b442263fe60c9e890b4, always save gp in the trapframe even though it is only restored when returning to user mode. This is mostly a debugging aid so that dump_regs() doesn't print out random stack garbage as the value of gp for kernel faults (e.g. sysctl debug.kdb.trap=1) as well as keeping kgdb's trapframe unwinder from reporting bogus values of $gp for lower frames. Reviewed by: mhorne, jrtc27, markj Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D41699 (cherry picked from commit 3b35d2a8af43c2e3ea8cb5e1363ac87ec5eadeaf) --- sys/riscv/riscv/exception.S | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/riscv/riscv/exception.S b/sys/riscv/riscv/exception.S index 1aee009a4e00..8acb5cd691d4 100644 --- a/sys/riscv/riscv/exception.S +++ b/sys/riscv/riscv/exception.S @@ -43,9 +43,9 @@ sd ra, (TF_RA)(sp) sd tp, (TF_TP)(sp) + sd gp, (TF_GP)(sp) .if \mode == 0 /* We came from userspace. */ - sd gp, (TF_GP)(sp) .option push .option norelax /* Load the kernel's global pointer */ From nobody Wed Oct 11 15:44:28 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5HBh6SpXz4wKGq; Wed, 11 Oct 2023 15:44:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5HBh5fFqz3dSF; Wed, 11 Oct 2023 15:44:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039068; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QRFkMWZbS+hKOP2l6sup/o5tWXF4R0RMasCffuWrKnU=; b=asw85JuQBfR5zx+pIhhP07hQoqjQ2m2560xtlWxb4eUzsrltAftbNPOjDVpFyK1XgZNYvY SvvsUg7b6tFN6/JsjvxKVhO2zNnIeXJJNZN9pqOwAfB3IEnIMUJ0fs+tvb7vDxeworx++8 0ubySZdu2oV9DZ2h0CHk1nSUPvG3S7zY5I14BjjQy7CnpG6l4QMrOBK2HCvVGuQ9qWQoLf dYWIccF+HqRpQ2wqYdXsMKL0U6+0Jeqj/rpj4obdB3HJR9OUeZ2UrBVoz5TOYAPLI0X99w w4y0IbI61e6jt4JTDa82ZDn9YGo7QeZhSMFCuqEjOm49WBgcT1eJAhv06gQIMg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697039068; a=rsa-sha256; cv=none; b=lakGeQ/gxG98nrLKon2C/5/wiKGi7/hNXm2dL1ONVEDuCWE+SVnXrJOBI3QBd4eVseav6S pRdqKYFxhQnZZSRfFFDCElbIUMRjRrVh92OReUIjmiPNkqfshdWC+MSmpGqzveLvRiJKSr 1m/DaQ3kxd00Ziejyed+tK70sq/HvOK1jXbP51xr7vBpzuGF2dQuW5j2upTaV4fqp7icGW RGA4JLbOXGALk9dXfyAJD6P6WxXfCWUa55c2LnuEQdrjQijgrfN230698vL2Qb7KR/ZR5y gfCz8gK8bPLoIPE0nZ5uhfptn+73wMAT+lAHgkgr0nE4N2q4wfxrAxUgpBoDvw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039068; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QRFkMWZbS+hKOP2l6sup/o5tWXF4R0RMasCffuWrKnU=; b=jpWNwMOffCGHzgl+O5pdEoKfukT/W10Vn9hemgDCrgecuMNpulGsY3OsntRQU4sCJ2Ifx2 Xg8BsnUDUTeMIgvZujO4stHCRLEcN/k4txMbb7Qb/KQ0I4QsFH87rHxcaD1NQHxpEE7c2M uMcZKHMmqKpDPnvNeuP5wi7tY3uOrwwvo51VgFh4CITMeW56NAd6kwaDqtI80JoBFHPIHy /cdAP6POJ9XaT3TZM4pEnzHr15drcQJhIRLFSstUQpyeLcMpOESh6l5Lq2hkCj8y4beTTu HCdPe2aEq2qti0B4kto/U1sENWc3unP/FggjDNMAeBVTpVzRfRE2osot7ViQug== 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 4S5HBh4Z61zBMK; Wed, 11 Oct 2023 15:44:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BFiSRL024031; Wed, 11 Oct 2023 15:44:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BFiSn6024028; Wed, 11 Oct 2023 15:44:28 GMT (envelope-from git) Date: Wed, 11 Oct 2023 15:44:28 GMT Message-Id: <202310111544.39BFiSn6024028@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: 4ad3f9dbe8cf - stable/14 - riscv: Don't print zero offsets for register addresses List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 4ad3f9dbe8cf6c6c9bb3dafad8d076814c3a440c Auto-Submitted: auto-generated The branch stable/14 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=4ad3f9dbe8cf6c6c9bb3dafad8d076814c3a440c commit 4ad3f9dbe8cf6c6c9bb3dafad8d076814c3a440c Author: John Baldwin AuthorDate: 2023-09-05 16:12:27 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:10:32 +0000 riscv: Don't print zero offsets for register addresses This matches the behavior of db_printsym. Reviewed by: mhorne, markj Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D41702 (cherry picked from commit ba675bb94870fcb1a07018920433e9468003364c) --- sys/riscv/riscv/trap.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sys/riscv/riscv/trap.c b/sys/riscv/riscv/trap.c index e681058800f6..123163ecfc10 100644 --- a/sys/riscv/riscv/trap.c +++ b/sys/riscv/riscv/trap.c @@ -149,7 +149,10 @@ print_with_symbol(const char *name, uint64_t value) sym = db_search_symbol(value, DB_STGY_ANY, &offset); if (sym != C_DB_SYM_NULL) { db_symbol_values(sym, &sym_name, &sym_value); - printf(" (%s + 0x%lx)", sym_name, offset); + if (offset != 0) + printf(" (%s + 0x%lx)", sym_name, offset); + else + printf(" (%s)", sym_name); } } #endif From nobody Wed Oct 11 15:44:29 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5HBj6n4jz4wKBB; Wed, 11 Oct 2023 15:44: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 4S5HBj6GbHz3dYn; Wed, 11 Oct 2023 15:44:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039069; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ejq4DqHl9oSmurM3OUF2XxcQ434HEMXERrp6lh76bMc=; b=XIM6TzcRifyiIAcTTgm+mkvKMjBEat4QIqLFajlrcaFdKEKqN4531SXHtV7IWStOchOKvh 3JuboTIxJa1FAA4cwiQX/dq5p+8yKSvQVPDtbjQGrd5KcP7fRbrCCsy+W58A+d+pRbcgYo gkdEzKmEtYLrA091DquIjIXt5DBvU23br1Tf/SkyN2gyWRmvlJ8+ZaLTcz1zccprTYDV6f T0WnVOHqhvaGp/gfjScuWdFDj7m8XzQdJlTP8T3N3069uwZn2b/2YRuKBwnSzOrquRoM8H HJfPo4igTE/vH+02covPH1MueqKaX8MNSdKpAayJzXOoCiN2sOC82GkyJs+Q3A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697039069; a=rsa-sha256; cv=none; b=k7pF5M+MXgXBHIcTTAX1wVE1nPkXAb37JHE2Y13zKFs9AXJHL36p6nrJkpE7IUU+9AnSDd lK02rvVxih0dBMgNnjbUSTZ0+B8SrfKTtYJQ4SPoSbjR9SzTHRKGJ93suSXq71qbLB+36j CNPnLCzMBpv+Diq3owxQ5f1IZhdxok6JFvtjbYNGDouFy9XI4CrcWHnka4SsOJ04TpZ8zZ dS+JhlB8DR/hUuRdeCjpGKYrqunbbkJJERkrHFIywPTqxwR+smHpL6z+FQxZ5FvCRjUmJr lwEvCZvHPm7xZxg0OTwnVnQpzksmvL9B0KH/dDFjwr5XhT1sHRRHiFvEuMCu5Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039069; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ejq4DqHl9oSmurM3OUF2XxcQ434HEMXERrp6lh76bMc=; b=oL1SaXBByxUazvuLn+FSSUYDX1Q4eX42qT2BeDk0ZmNjaoAi+VOIHICIUrpOgXERPgz3DK 8apB0Bvdp5fANgyWssCjlkz8RKMTgAFdQoVrvLVQXexSZP7eE0hCDCtMGaIK+B45ceglSO AxmVuoEFrBaqSXd3N/tOKRSeK3WaHpUGrvYMQJwM9Gp3UKL3XVAULRbOiBKhnvHUj05e/M gC3O0qjmQKWb4bVEmP9BLhk7GY+1vvRe+huQ0p6lnQJ8TlQLD+BOzi6zsDLIj5IqCy6Roo 94bv9d5a1fpXeeRtlSklxWwxz8XQFtOz3kq3QF5/a4j1ufCuXWPo9urzYsrXGA== 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 4S5HBj5LRPzBML; Wed, 11 Oct 2023 15:44:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BFiTbq024082; Wed, 11 Oct 2023 15:44:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BFiTmI024079; Wed, 11 Oct 2023 15:44:29 GMT (envelope-from git) Date: Wed, 11 Oct 2023 15:44:29 GMT Message-Id: <202310111544.39BFiTmI024079@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: 7bf7713dcf34 - stable/14 - riscv: Print stval in dump_regs for fatal exceptions List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 7bf7713dcf34a6dd05cc3ca506166413de2807e7 Auto-Submitted: auto-generated The branch stable/14 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=7bf7713dcf34a6dd05cc3ca506166413de2807e7 commit 7bf7713dcf34a6dd05cc3ca506166413de2807e7 Author: John Baldwin AuthorDate: 2023-09-08 23:35:59 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:10:32 +0000 riscv: Print stval in dump_regs for fatal exceptions Reviewed by: mhorne, markj Obtained from: CheriBSD Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D41700 (cherry picked from commit 3b5fc5eead84bd75dedead71a7f3771882942fa7) --- sys/riscv/riscv/trap.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/riscv/riscv/trap.c b/sys/riscv/riscv/trap.c index 123163ecfc10..ea48b02ba29b 100644 --- a/sys/riscv/riscv/trap.c +++ b/sys/riscv/riscv/trap.c @@ -186,6 +186,7 @@ dump_regs(struct trapframe *frame) print_with_symbol("tp", frame->tf_tp); print_with_symbol("sepc", frame->tf_sepc); printf("sstatus: 0x%016lx\n", frame->tf_sstatus); + printf("stval : 0x%016lx\n", frame->tf_stval); } static void From nobody Wed Oct 11 15:44:30 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5HBl2LBLz4wKKQ; Wed, 11 Oct 2023 15:44: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 4S5HBk75Tjz3dcp; Wed, 11 Oct 2023 15:44:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039071; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gBB+fjKhDSM/5591FWdxq4YbVt4GrhDWh2M5BrPu9rM=; b=yvdC2GTl48zaD3dqREJwaXNrsAuslY9/chhGJau4eyso9wIanjjnXFn9+NvjYy/43uubw1 KBJ7yryAgwGpHeD4/Zr7h+9mctXYINy3/BbuR4HZO5FAi6plsUTJVJQK49n6khAMF6QIzr b9NSVOhsAk3FgRFWNuzcqSX4I6kGKcz3VcV7ioblkP/Ij6kXBgLchaOx+KjE51I6Xr5kow 6pgmgWYxMdgDGlJwNMKOmS7KbI0w/qgD+2PBFSFewMkhbi6XjfGHIhhksliILMKrFYacmd KqyBxUeVYo/I6KUfBSWaCpU9Ex5wNaNQnBwOldSOnqb1SnBR5IN33GdEKL0Wew== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697039071; a=rsa-sha256; cv=none; b=qgc0CfCg5g4YQtyBmlNsn0+hwFH0vM22YZMYO4qeRfKRwNgQ5oNyu9UdX1nlT8XMNRZZc6 Cf8tHKmn17KGMl8Yi09VdO8c1Qj4N3SkZKN1z3Sb9D+lOvpxI0jC8KtAnMi2rX9ZaJXa6O Le/DTnxqv338DBp6gPJRnMWXMg7RaKrHkQLlQz6j/BFACIwj8aHMG97FuM47SZFvoPk+Y1 rj5sIm5kM8GHlv0aVCWRqrT+kOh52Nu+M19i882b9PNcYZKRFzlj8uLTrvRyzqrzh1RuOw /xwbmQrBxK43GNSm4FjAlwPCBUH10/A2OOoL1m1i1447qZ0d0op0qyggYd3pig== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039071; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gBB+fjKhDSM/5591FWdxq4YbVt4GrhDWh2M5BrPu9rM=; b=pUKMiHTAm4MOEdYvnfwd6Rg1FH2bnOLUh1+TBPNzcs+zm8PexqDBWXD4XZ6hNiG/bkMTjP OQW1DuFGDtNQeAtb7yiNOL0Vq3+S5I1ot8ybQrtppHf1dgQgqKjVL+jUOxnoZvHd7Z5wZW Z+kH8RtKXlGXQWNf6WPc/WqLXv5oWdsF2vf/QCc2DsdAPUwIvHxo8JFFzE3x1qO8UX6umq +V65pZ+yPAjWYosE6QHsaV6haie/ObxHMaHLm+BDF4iraDDbgiDki8+Wqij5pM9AEvOy5S DTEFI2HbRPdkg4J2ubBpG3I6Rt5KXX6yPER8ozIChu2hfHxEbolWUa3UIWvlKA== 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 4S5HBk67pzzBhL; Wed, 11 Oct 2023 15:44:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BFiU6W024135; Wed, 11 Oct 2023 15:44:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BFiUUS024132; Wed, 11 Oct 2023 15:44:30 GMT (envelope-from git) Date: Wed, 11 Oct 2023 15:44:30 GMT Message-Id: <202310111544.39BFiUUS024132@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: b7f6b86ee7e4 - stable/14 - gic_acpi: Limit the number of CPUs to GIC_MAXCPU List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b7f6b86ee7e49718ab8bf74f7a33fa8cda4d38dc Auto-Submitted: auto-generated The branch stable/14 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=b7f6b86ee7e49718ab8bf74f7a33fa8cda4d38dc commit b7f6b86ee7e49718ab8bf74f7a33fa8cda4d38dc Author: John Baldwin AuthorDate: 2023-09-09 19:13:57 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:10:32 +0000 gic_acpi: Limit the number of CPUs to GIC_MAXCPU madt_table_data contains an array of pointers for each CPU and was allocated on the stack. If MAXCPU is raised to a sufficiently large value this can overflow the kernel stack. Cap the stack growth by using GIC_MAXCPU instead as for other parts of the gicv1/v2 driver in commit a0e20c0ded1a. Suggested by: andrew Reviewed by: andrew, emaste Obtained from: CheriBSD Sponsored by: DARPA Differential Revision: https://reviews.freebsd.org/D41800 (cherry picked from commit d0af08c4ba3e400049d246d72401ce36d3bee98a) --- sys/arm/arm/gic_acpi.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/arm/arm/gic_acpi.c b/sys/arm/arm/gic_acpi.c index e18bc12faf4d..56ff78f9b685 100644 --- a/sys/arm/arm/gic_acpi.c +++ b/sys/arm/arm/gic_acpi.c @@ -84,7 +84,7 @@ EARLY_DRIVER_MODULE(gic, acpi, gic_acpi_driver, 0, 0, struct madt_table_data { device_t parent; ACPI_MADT_GENERIC_DISTRIBUTOR *dist; - ACPI_MADT_GENERIC_INTERRUPT *intr[MAXCPU]; + ACPI_MADT_GENERIC_INTERRUPT *intr[GIC_MAXCPU]; }; static void @@ -107,7 +107,7 @@ madt_handler(ACPI_SUBTABLE_HEADER *entry, void *arg) break; case ACPI_MADT_TYPE_GENERIC_INTERRUPT: intr = (ACPI_MADT_GENERIC_INTERRUPT *)entry; - if (intr->CpuInterfaceNumber < MAXCPU) + if (intr->CpuInterfaceNumber < GIC_MAXCPU) madt_data->intr[intr->CpuInterfaceNumber] = intr; break; } @@ -151,7 +151,7 @@ gic_acpi_identify(driver_t *driver, device_t parent) } intr = NULL; - for (i = 0; i < MAXCPU; i++) { + for (i = 0; i < GIC_MAXCPU; i++) { if (madt_data.intr[i] != NULL) { if (intr == NULL) { intr = madt_data.intr[i]; From nobody Wed Oct 11 15:44:31 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5HBm2ZrGz4wKKS; Wed, 11 Oct 2023 15:44: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 4S5HBm1Dn2z3dZv; Wed, 11 Oct 2023 15:44:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039072; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0Dl1NGP/TmKtOe62Fqj586mvhm8rs5hKXZpoclUCw/k=; b=Pj4qoApWPkTVH7IM3CeUgzx/kxaaNhCiZeUjqKQuQem/fIizbr3GsGPc/fofIWGXip++1C FKSYzVp5ebXOhGiL+3CDMJqk92ubH/vHa96yWwzoq5QNJPxhehwA6HmvqBO5MTDYBEwMz9 RvaVWm2g6yYbP+s4CIwm1CesWE5AowTFPU7GVR/z6xmpzQ3wQE1TnjZyyq9sJX6/VIhch6 OjiVx2dkGlx90GPz3DhuPZCZcAOduTFInwaMyaJ3djRxYK4QV+VJG6RZAUK5neKOZ9SQ1B lgojTfhurADbSBaaWQFIRmqwuw9YxgAIaB6aRnm8xZq8KBxqCK55SUoEqqqwbw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697039072; a=rsa-sha256; cv=none; b=EEgrHC+xG66Ils3cJE70nz1/J/kQona42U5lDZh4IWKYtB64tDUB7Rcf+8c4oKQ4c5Ghcp IAORE3uY13eshxpg9oYsQsvPuAWwU1jng6C2HjlB0oYG3ZDU39WdrogGS+qiBLKW+0OkJY 0r61htxRHTLEhLRL+JuBBqlo01cr1ugVpar54/qHoKAdmpi76Dwvw0KuM81/0UFv46J2I/ Zn4GH9ytDHJ5hNpqfY2YYtvJTVE/UIKjxYtdY+LDB0ccMzA5hKw3o/M27VVEWNni1If6om FifEuX2co8KeAIIL74ho8aaEwwV2svYG+Bbm/JWHmm+6G4qjR0yPHs4u4rlgUQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039072; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0Dl1NGP/TmKtOe62Fqj586mvhm8rs5hKXZpoclUCw/k=; b=gh34/FDZklrXMkCn86oGemWXdVGe+0N7FXm3eJTWA1EuX0izC8+QTi0VdH316tJN4i5NSG o10Q8ZIZ2FV+IRg1N6olIuGhZG5oAoGl4f76qHfQ60x1JDgIg7fWix+nb4GDvNI+mFvu1M 8UGH3MZ0T8OCiqTL5Qnvk2KbMNEFpZP5wr2zePnhhexaumoS2Z2xvvhdjcHVDfc+/P4rFx UIwdngb68eZ3PUZprGD8LXn5EKRKZHyL9aRzQLOPpqHP6Y4onHfJZKT5XlaymZcS+4+/Pq fzpt2qTmOb7vlGOk/KUmQAIeZV5PzzTR8c6ZNXlm0TZY6TC7B/Upc4m09UHnxQ== 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 4S5HBm07L0zBhM; Wed, 11 Oct 2023 15:44:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BFiVhG024183; Wed, 11 Oct 2023 15:44:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BFiVR9024181; Wed, 11 Oct 2023 15:44:31 GMT (envelope-from git) Date: Wed, 11 Oct 2023 15:44:31 GMT Message-Id: <202310111544.39BFiVR9024181@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: d73b4f06403a - stable/14 - x86: Properly align interrupt vectors for MSI List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d73b4f06403af6c1a384c8c59ba9eb138c861ee1 Auto-Submitted: auto-generated The branch stable/14 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=d73b4f06403af6c1a384c8c59ba9eb138c861ee1 commit d73b4f06403af6c1a384c8c59ba9eb138c861ee1 Author: John Hay AuthorDate: 2023-09-28 21:08:08 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:10:32 +0000 x86: Properly align interrupt vectors for MSI MSI (not MSI-X) interrupt vectors must be allocated in groups that are powers of 2, and the block of IDT vectors must be aligned to the size of the request. The code in native_apic_alloc_vectors() does an alignment check in the loop: if ((vector & (align - 1)) != 0) continue; first = vector; But it adds APIC_IO_INTS to the value it returns: return (first + APIC_IO_INTS); The problem is that APIC_IO_INTS is not a multiple of 32. It is 48: As a result, a request for 32 vectors (the max supported by MSI), was not always aligned. To fix, check the alignment of 'vector + APIC_IO_INTS' in the loop. PR: 274074 Reviewed by: jhb (cherry picked from commit d33a4ae8ba5343f555842e6e32321f9cd64dfd09) --- sys/x86/x86/local_apic.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/x86/x86/local_apic.c b/sys/x86/x86/local_apic.c index 17b0223f834b..b382368cc626 100644 --- a/sys/x86/x86/local_apic.c +++ b/sys/x86/x86/local_apic.c @@ -1582,7 +1582,7 @@ apic_alloc_vectors(u_int apic_id, u_int *irqs, u_int count, u_int align) /* Start a new run if run == 0 and vector is aligned. */ if (run == 0) { - if ((vector & (align - 1)) != 0) + if (((vector + APIC_IO_INTS) & (align - 1)) != 0) continue; first = vector; } From nobody Wed Oct 11 15:44:33 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5HBn2gwhz4wK3P; Wed, 11 Oct 2023 15:44: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 4S5HBn2DxQz3dnZ; Wed, 11 Oct 2023 15:44:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039073; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GVqCn6R09BUo/PsTfckXZavsVJy5KcyvKJ1TO6nW5n8=; b=evQE6fG4It4WWQBzS1SfXBfh8KV8FeiHrT288eR0jqopXSbKWDCxN0OLspvvUyDu3F448g d06+AashTLXmQ7kJrEqN5O0fmOjP82tlVNFG2PmOE/6KHP0defkEr5EWRoxLRZhgZvFV7H bv5Yu6JurG7/botIRdFD0l8Rr1v1g8fMN9DxnshG7OdQmWHyNcNUsmvZ2dTRchqkKfeh3b 6GsD0uOTBLRo0DPWNk8aQ3Tn2gjBlFJKSXnCYC4kNa3ii4HsVcJSO3ye2bDKmpfdqE4P+I 6+4s6+T5XPwsCDLFjguGkyQK5gqF6NSRcmIFagY9CnzaUqlN2Bdk3wlsmVaoeg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697039073; a=rsa-sha256; cv=none; b=wMgX21AjV++4FBGlpZlIyDLaIXWh+ifDRCU9nS0AT/9iaiwIoe0Xj4dexmSh8ue6wU2WaO yvGTKi5pmfy/jLFc5rdulDFbLu9tNSx7yLmPZp1fU5+t150Kw/X0DmRRDds5xg4WZyhEhd gJDBbbk5Cb7Qfki/NDhgT2jh7u7p1B3zU5lzfUqkTZQZkvnWYMw4+viW6xU3FGMHREjHvr krCNzJA4YMqYX83V9Ili6LYzUifwegZ4Mu/gYX4TDb9V33+meariXZ1Mmgsa/U4SPweGdJ zJfxKiYNRxcPoNK/L30UfKwTAR4wGx8jfhba77s6AU8aGn7Db6paZcsc3lCoEg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039073; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GVqCn6R09BUo/PsTfckXZavsVJy5KcyvKJ1TO6nW5n8=; b=S3o73cE4eAMO2gWm/iMoJZ5w9akECHQwpO7nHhVF6Vw5I8J8AAZb2fUD4Xx2YPvqibPu7A Uvzm7ynwrVOwdpomASB5IgK0E1q4IUxa5OoHqnIj01QKUNIs5f926HIkvH7xw9IM0UfNSf lDBj1rO1+6ZkAjvkiIA7cqNxzzDk1Ua2lBco7YRsesOT3iZkczHWnKoJddg6FvTDkvi+7R wJEkG9SVpYiOTshRLEQHZOUPHROb8SwvHrSa6+VXypHPw0tZQmv1p6pOoiVn0w0/vFlqOj vSxepcfuDcFDLBvoH6mPysk5oTXjUZXOyZo2EThvH9drQXLvbj1cdOGVGG4TZg== 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 4S5HBn1KvHzCF0; Wed, 11 Oct 2023 15:44:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BFiXIl024241; Wed, 11 Oct 2023 15:44:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BFiXeu024238; Wed, 11 Oct 2023 15:44:33 GMT (envelope-from git) Date: Wed, 11 Oct 2023 15:44:33 GMT Message-Id: <202310111544.39BFiXeu024238@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: bd8cecc466ad - stable/14 - cxgbe tom: Call t4_rcvd_locked from do_rx_data to return RX credits List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: bd8cecc466adeca0763cca674f83bfcc3a751356 Auto-Submitted: auto-generated The branch stable/14 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=bd8cecc466adeca0763cca674f83bfcc3a751356 commit bd8cecc466adeca0763cca674f83bfcc3a751356 Author: John Baldwin AuthorDate: 2023-09-08 23:30:35 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:10:32 +0000 cxgbe tom: Call t4_rcvd_locked from do_rx_data to return RX credits In particular, the kernel RPC layer used by the NFS client never invokes pru_rcvd since it always reads data from the socket upcall via MSG_SOCALLBCK which avoids calling pru_rcvd. As a result, on an NFS client connection managed by t4_tom, RX credits were never returned to the TOE connection to open the TCP window resulting in connection hangs. To fix, expand the set of conditions in do_rx_data where RX credits are returned to match those in t4_rcvd_locked by calling the function directly. Reviewed by: np Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D41688 (cherry picked from commit dcfddc8dc091e7688abc8488a0307eba425fa7a2) --- sys/dev/cxgbe/tom/t4_cpl_io.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/sys/dev/cxgbe/tom/t4_cpl_io.c b/sys/dev/cxgbe/tom/t4_cpl_io.c index 9b48b2891f64..235d4196226d 100644 --- a/sys/dev/cxgbe/tom/t4_cpl_io.c +++ b/sys/dev/cxgbe/tom/t4_cpl_io.c @@ -1647,7 +1647,7 @@ do_rx_data(struct sge_iq *iq, const struct rss_header *rss, struct mbuf *m) struct socket *so; struct sockbuf *sb; struct epoch_tracker et; - int len, rx_credits; + int len; uint32_t ddp_placed = 0; if (__predict_false(toep->flags & TPF_SYNQE)) { @@ -1779,12 +1779,7 @@ do_rx_data(struct sge_iq *iq, const struct rss_header *rss, struct mbuf *m) } sbappendstream_locked(sb, m, 0); - rx_credits = sbspace(sb) > tp->rcv_wnd ? sbspace(sb) - tp->rcv_wnd : 0; - if (rx_credits > 0 && sbused(sb) + tp->rcv_wnd < sb->sb_lowat) { - rx_credits = send_rx_credits(sc, toep, rx_credits); - tp->rcv_wnd += rx_credits; - tp->rcv_adv += rx_credits; - } + t4_rcvd_locked(&toep->td->tod, tp); if (ulp_mode(toep) == ULP_MODE_TCPDDP && toep->ddp.waiting_count > 0 && sbavail(sb) != 0) { From nobody Wed Oct 11 15:44:34 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5HBp3tZ2z4wKKl; Wed, 11 Oct 2023 15:44: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 4S5HBp3RV6z3dp8; Wed, 11 Oct 2023 15:44:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039074; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=G/mxJxQJeitJ7uOFF+AHmJIYzrvpQrZxvdrLYNuNs1s=; b=lv2AaearY+HC3Vv2nfoPViQi97rCDbYLo92Moj6aWA6Qe+cJwLFCEp+b53vjGEypp8Hxs4 Ux7Sf5WdO7YiHSbtJXeIicMWi+cH49RcqFS80CFyExbLpoYPmpriYjobQIemwJwWjMJ6eX ScR029QoOmi9npZPm9g6bkuVHjbZA9fCTPRxpI624hxqd38+GbZZKdmzftZ+5Zj6l9cac9 iMNiZWb3GHU+P/tRJIU9u0jvYzxrMF4y3v7xpqn7uXnCkzU3rTPnAU4ZEf6UZ2ETtbTSzI mI1ry60zRddosGIM4kwzxTVkkIdeWMsfbiT8p44iO7foGyf/+Ax+hb0qO/IUGw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697039074; a=rsa-sha256; cv=none; b=wCMz1MUPqqde8w5yFNPBrlAaTP/uO0cdFIlAWBgTCtUbL3Qnb+HFNRvMkXI8qYanzeRBQ8 cFux3XYs/qTsuYi/0LKVEjrSOmq/gCn6qAu3gvV8DaS2P2MfR4E4sY1hP1VpRO3xbA+Huv PDPugvcTga2DuFHuFfY6rFZ5hgg530LcpTqyyULs1vgimDtkpiVnXtP/vFrieDt9qOZMAs kikML//sofq1sbWBwJd0m6veViTxfgc4WtLtgOWDqrWIApf3qy0dVfl9/GTFhpqE19BinF L+o+/i3zjICVx+eJbcWALsH5SdnOU9ieH7b5FdLZPViouIHNJHmeR50wMFqMJw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039074; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=G/mxJxQJeitJ7uOFF+AHmJIYzrvpQrZxvdrLYNuNs1s=; b=tOUYTVy0lz2pbnOzvthpTgnARLziJdrZinwFNq+cvGIyVv7c2jlnvi/djDzZ58Pc+Kms32 VqklsS7mo77aKTQGRYj2lzBHLfTRMyWKdfeQnh3ybZ2nSaX2fJgaXpm/VDNM63AxBtLkbP SRBeojqJZjtLZn2oW+OvTlP5jgaR58tIX7o1NExxqueXaqoR/To97+wn86QGmFMnllnGjk iu+P+/DC5mzGHolXQtW0Pu49fFRnHlBf14RZfFYfmF+BXTknHEydOSYZXqBYsYHiVmwL2l vEDziBx2GtQRI9yr/N7TNJfO0P4nTs/m8ZeHexbHwDyU459ZHTo90JYYg50HLg== 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 4S5HBp2KflzBx7; Wed, 11 Oct 2023 15:44:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BFiYHb024312; Wed, 11 Oct 2023 15:44:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BFiYBG024309; Wed, 11 Oct 2023 15:44:34 GMT (envelope-from git) Date: Wed, 11 Oct 2023 15:44:34 GMT Message-Id: <202310111544.39BFiYBG024309@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: cb2cd58dbd56 - stable/14 - cxgbe t4_tls: Don't bother returning RX credits for a protocol receive error List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: cb2cd58dbd56f734f4346ce4db3d0412b2809667 Auto-Submitted: auto-generated The branch stable/14 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=cb2cd58dbd56f734f4346ce4db3d0412b2809667 commit cb2cd58dbd56f734f4346ce4db3d0412b2809667 Author: John Baldwin AuthorDate: 2023-09-08 23:30:52 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:10:32 +0000 cxgbe t4_tls: Don't bother returning RX credits for a protocol receive error Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D41689 (cherry picked from commit 75af2d951cce7d51d2033405f96f083c01f39f04) --- sys/dev/cxgbe/tom/t4_tls.c | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/sys/dev/cxgbe/tom/t4_tls.c b/sys/dev/cxgbe/tom/t4_tls.c index b8005e213621..29a840067c62 100644 --- a/sys/dev/cxgbe/tom/t4_tls.c +++ b/sys/dev/cxgbe/tom/t4_tls.c @@ -1004,7 +1004,7 @@ do_rx_data_tls(const struct cpl_rx_data *cpl, struct toepcb *toep, struct tcpcb *tp; struct socket *so; struct sockbuf *sb; - int len, rx_credits; + int len; len = m->m_pkthdr.len; @@ -1075,22 +1075,6 @@ do_rx_data_tls(const struct cpl_rx_data *cpl, struct toepcb *toep, so->so_error = EBADMSG; out: - /* - * This connection is going to die anyway, so probably don't - * need to bother with returning credits. - */ - rx_credits = sbspace(sb) > tp->rcv_wnd ? sbspace(sb) - tp->rcv_wnd : 0; -#ifdef VERBOSE_TRACES - CTR4(KTR_CXGBE, "%s: tid %u rx_credits %u rcv_wnd %u", - __func__, toep->tid, rx_credits, tp->rcv_wnd); -#endif - if (rx_credits > 0 && sbused(sb) + tp->rcv_wnd < sb->sb_lowat) { - rx_credits = send_rx_credits(toep->vi->adapter, toep, - rx_credits); - tp->rcv_wnd += rx_credits; - tp->rcv_adv += rx_credits; - } - sorwakeup_locked(so); SOCKBUF_UNLOCK_ASSERT(sb); From nobody Wed Oct 11 15:44:35 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5HBq4n9nz4wK8q; Wed, 11 Oct 2023 15:44: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 4S5HBq4CLCz3dgl; Wed, 11 Oct 2023 15:44:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039075; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ePc8rKRhhwG74becQ0MD08rBZJ9nlE3H14lRi7P59yw=; b=CZ+EC0wzlC3fCZpfdfsIPPq05Dn3+o0eNYZAseX4TzGyegWEKClI7zHaiKdesq1R6regRr 9p/G3x3WZ/BwY49ueM03O70lCRv2tZy6HhSBx1eXYGKHP+/aDpMfgvxjlLxAqtdXccobVC 5+NImw5Pr75KyNw2FW+8/QLfyrPn6Vz2w/JhFpW5QGS3n+1XANTHdwHhRNoPMQGzwt9EQo UyunVAujVlTMAI5E1FwDuUzRC/wvnnyNHVVa8vZbUCvetXfmNoX4+g+AngSLru3SexbleB +U7SOPkde1JQipu2uabqrVXYWzjcdTBO+RkyXWs3TPBCCpe9evRI+OrD7/KCNQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697039075; a=rsa-sha256; cv=none; b=oGZgfnwuuQHuYQ2p/Q4JUL9Sx3ZvXQhi06N/rjiWIXdUFGHoMbjur01w6LGV3E+zcA5oGg hFdgPsbO3/x+L3uWKV9MX0XZNLV0rn9868ab+V+T0jMw9EuZICVZ6aZfotcgxKL9KOiu00 vgNdUMkdLRlvQvWqgxlOkXy9SDzqUujjHtHJw6raVPBvsKobphj/faOz8sBwqcyhWeqbAj lwxD4H/oOj5U3ZFSP8m70vDwThsUAScrWCYJbW1HBWSZkBhD8T7uTz18Vx+abi1awhkvxi UDMz8W7OnAxDILPyVHecwvrNqxL+V7uCG1wi1zaRGxXudivLi3/+ltZ59xxmPQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697039075; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ePc8rKRhhwG74becQ0MD08rBZJ9nlE3H14lRi7P59yw=; b=plGB4QxcVAM2o6pfk6UXBBsbrVbxw9suJqVTRLbyq2W5QQ1jdZF2zHTiQJW7ANJCO1N65h 7rUgZquTNR4Z/zyPZVP55hxQaj2whBhpyNwuyZ+NRMjet+mCa3/TOuAMpd2doKPzGTwumB Z0QRC0wHEr4Xu4Akq9hEvvErP1/MeBsyjIIb+0eLxU7oo5rQ8PgfICLvdOddOEI8q6VooL PcmRIo5VaUBsH+z8KdfNFEphmocaXJdeMCeqoangryVhyncWca0/KirkGFLDXpvow0qapW Ghjhh1FF+qfvWp5HMYXsSe5RC6fXQc1zJkrK7EtCVrCrNZf8VB+uuWL7wTdIUA== 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 4S5HBq3K0NzC7F; Wed, 11 Oct 2023 15:44:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BFiZIF024357; Wed, 11 Oct 2023 15:44:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BFiZMl024354; Wed, 11 Oct 2023 15:44:35 GMT (envelope-from git) Date: Wed, 11 Oct 2023 15:44:35 GMT Message-Id: <202310111544.39BFiZMl024354@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: 969dc06e919c - stable/14 - cxgbe t4_tls: Call t4_rcvd_locked from do_rx_tls_cmp List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 969dc06e919ca135fdbf5c9a760684c357ae9310 Auto-Submitted: auto-generated The branch stable/14 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=969dc06e919ca135fdbf5c9a760684c357ae9310 commit 969dc06e919ca135fdbf5c9a760684c357ae9310 Author: John Baldwin AuthorDate: 2023-09-08 23:31:38 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:10:32 +0000 cxgbe t4_tls: Call t4_rcvd_locked from do_rx_tls_cmp Similar to dcfddc8dc091e7688abc8488a0307eba425fa7a2, replace the simpler, inlined version with the full version. Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D41690 (cherry picked from commit 897e564361624411c4e557e0817642e1477f0af4) --- sys/dev/cxgbe/tom/t4_tls.c | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/sys/dev/cxgbe/tom/t4_tls.c b/sys/dev/cxgbe/tom/t4_tls.c index 29a840067c62..3a0c1a392e6c 100644 --- a/sys/dev/cxgbe/tom/t4_tls.c +++ b/sys/dev/cxgbe/tom/t4_tls.c @@ -794,7 +794,7 @@ do_rx_tls_cmp(struct sge_iq *iq, const struct rss_header *rss, struct mbuf *m) struct mbuf *tls_data; struct tls_get_record *tgr; struct mbuf *control; - int pdu_length, rx_credits, trailer_len; + int pdu_length, trailer_len; #if defined(KTR) || defined(INVARIANTS) int len; #endif @@ -975,16 +975,7 @@ do_rx_tls_cmp(struct sge_iq *iq, const struct rss_header *rss, struct mbuf *m) sbappendcontrol_locked(sb, m, control, 0); else sbappendstream_locked(sb, m, 0); - rx_credits = sbspace(sb) > tp->rcv_wnd ? sbspace(sb) - tp->rcv_wnd : 0; -#ifdef VERBOSE_TRACES - CTR4(KTR_CXGBE, "%s: tid %u rx_credits %u rcv_wnd %u", - __func__, tid, rx_credits, tp->rcv_wnd); -#endif - if (rx_credits > 0 && sbused(sb) + tp->rcv_wnd < sb->sb_lowat) { - rx_credits = send_rx_credits(sc, toep, rx_credits); - tp->rcv_wnd += rx_credits; - tp->rcv_adv += rx_credits; - } + t4_rcvd_locked(&toep->td->tod, tp); sorwakeup_locked(so); SOCKBUF_UNLOCK_ASSERT(sb); From nobody Wed Oct 11 19:06:26 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5Mgl04hcz4wYrk; Wed, 11 Oct 2023 19:06: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 4S5Mgk6hDbz4b1M; Wed, 11 Oct 2023 19:06:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051186; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gFL/njcTU0yvkw4LErfuI7PHeqAkwfj0TqMCCeWSn1Q=; b=GyIAmnsjIb6hsCGsNL9brOetKxoNRbHHtpGzRMYZW+iP+eTWEVOzL4+rhqv+5Z8/G+rGmq 5TtvN+PHFeUOQ2WZd3gkDMFfl7z+5a8tPJg1mno2ygQyCJ47dEWdrptRnX2MxkaQXGAyV9 /uowwiDYHFyTq2gr6WQSOgWjJ+80XV2LQ2SguFOaH74JNMA3q73PDWzLlMVgQZTu715LA3 uTCoILV10xv8I/LRqr29iGF8LLGQoV2F+yt4B0j9r6i7gWxvDgPDq0ePrTkrFOksQPRs0A JvmQiF9WCjhJcCGbhs4Qlw/yoZr3tG8bsVtbM8WvxnZvZwBmWvMRoCsm+E7TEw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697051186; a=rsa-sha256; cv=none; b=IUDa+cSg16enA+CWVv5jDOt9wF9heItzrkCeWU4d3g2ngTxR5j7aHKmlNKAzrmF0KB4GkG 9uz59wZGSiYriMSA+WZ/nAZ+oukI2Bna5t/4DiY0+0xMeDmn6enAn4cra8BmXr9XA+XjFR tS807SbZDkb16mTq05hL06lB9B6l5NVs2GhjhoL9zNDgJOUQbr6kmRkvdKnxCOBY5h4RSz MVQpEX11jCzhi4xc3U/Wafp0bn4D+ZnHLov8DJEurFEwKTGd/ydrtIKiSnVAtIyDUtAUmp l2PTCJkgjMA37u2uVlDvYTzSn2TaY+QNFc6XYRQJE9RsCS2Jm77ZNOhcZZnoOA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051186; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gFL/njcTU0yvkw4LErfuI7PHeqAkwfj0TqMCCeWSn1Q=; b=lBiKLgvChq7YL3QU9RcAPe6jKxeTEegaHk8dLeUBJ+UKRqhhaOOYq4++5gnra7TONIg5pg YHYAqJBe4KV98kHs5T3VktWFBvXgiJFnRlxxhE1adY51FN5rnEvJ5pcpAa7EMePNy3Np3I 8eU/6GrVZMaRJ0Z76vdH39ytLM+V+mb1P6wgWvBEDqTY/Hch6X47ogwx6zGDKiwB+IoRJW DdSUDa0Cf74iXJaJ6WLjqgGURrx/FHlsz3WzrPipPZ72h8lVt9NZ3Im9+hlnkyAV5pIooo eclMKadOXW71LFBjv8Evw7175mC41aVqQ+f8vnC8Hhp41ugu3qAMq7upP6htxA== 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 4S5Mgk5kbrzYjG; Wed, 11 Oct 2023 19:06:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BJ6QkV058757; Wed, 11 Oct 2023 19:06:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BJ6Q15058754; Wed, 11 Oct 2023 19:06:26 GMT (envelope-from git) Date: Wed, 11 Oct 2023 19:06:26 GMT Message-Id: <202310111906.39BJ6Q15058754@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: e6dbc4dfd144 - stable/13 - efirt: Move comment about fpu_kern_enter to where it is called List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: e6dbc4dfd1444a38647fb55e9238112291b9e4cd Auto-Submitted: auto-generated The branch stable/13 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=e6dbc4dfd1444a38647fb55e9238112291b9e4cd commit e6dbc4dfd1444a38647fb55e9238112291b9e4cd Author: John Baldwin AuthorDate: 2023-08-25 19:33:00 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:09:52 +0000 efirt: Move comment about fpu_kern_enter to where it is called Reviewed by: imp, kib, andrew, markj Differential Revision: https://reviews.freebsd.org/D41576 (cherry picked from commit 8173fa60ddb7e9a805dec9fef7bf07e74ae4144d) --- sys/amd64/amd64/efirt_machdep.c | 5 ----- sys/dev/efidev/efirt.c | 5 +++++ 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/sys/amd64/amd64/efirt_machdep.c b/sys/amd64/amd64/efirt_machdep.c index 4c6ee4ee88a2..5734e0300df8 100644 --- a/sys/amd64/amd64/efirt_machdep.c +++ b/sys/amd64/amd64/efirt_machdep.c @@ -280,11 +280,6 @@ fail: * reason to bother with the virtual map, and no need to add a * complexity into loader. * - * The fpu_kern_enter() call allows firmware to use FPU, as mandated - * by the specification. In particular, CR0.TS bit is cleared. Also - * it enters critical section, giving us neccessary protection against - * context switch. - * * There is no need to disable interrupts around the change of %cr3, * the kernel mappings are correct, while we only grabbed the * userspace portion of VA. Interrupts handlers must not access diff --git a/sys/dev/efidev/efirt.c b/sys/dev/efidev/efirt.c index 851385eeb8d6..29f51b78eb25 100644 --- a/sys/dev/efidev/efirt.c +++ b/sys/dev/efidev/efirt.c @@ -269,6 +269,11 @@ efi_rt_ok(void) return (0); } +/* + * The fpu_kern_enter() call in allows firmware to use FPU, as + * mandated by the specification. It also enters a critical section, + * giving us neccessary protection against context switches. + */ static int efi_enter(void) { From nobody Wed Oct 11 19:06:27 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5Mgm1gSfz4wYvg; Wed, 11 Oct 2023 19:06:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5Mgm0ynjz4bc0; Wed, 11 Oct 2023 19:06:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051188; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Kzcrn39eD0z7mdex5k15+pXfmfFzl1CZcnR3/gmwyRI=; b=PV17q+f+nHI3OzW9rO6Y1A4WSeoEmVx/oeASbdpybuY1OTr3YFanm5g0t2+8BEfjiaZMdz k3Z2SZyePRuA9HeVJiw0G6ELv5SfhQD0/94JByE40ZwVkI7l7/Q3VhSV+d8/Pu195PEKOW v9kLsLUr8peD+z28MrdDKiJArz8ZOVIg9fQtOotFiEgFlqfZtvmCCZttxLMPZLvorB3V+b zdX62tA4RvfSWSTCxol/jh6q3l3VPyGUrP/uEVwQHfdnz2ghvLhA+ug11ceFPVfUQipP35 wsEw3gFcH/cqKC25aC+qyAJIwq3sQ9SrGxtyPexaObi1+ssVLE1bPqwQdH2Bzg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697051188; a=rsa-sha256; cv=none; b=MuGqxG86fQDfLKY/Azc6txrtNGv0I6gvNoITg1fWmr6CnTZA6VD1iPmUaWB+T03LQ691D7 qZSzjR+iGcaLF/wx4I07RCTg6odftg2hqz/d2aXPpbEb0AxqqsI8j7xYbd/oHa5+HHG0id VZTS9vlTxBKqoRq/MHzi1NZ1CQDObd7kpCRToAxNJl1XFmHEVHaeJug+Hvm7QfwbQNji79 ltbJwLqPKSaLxa3dZC5jGiU479kak9L6q3DQYbnzAsdbetDtZh3Ae2M5bT/M2L/IYdPoLs Hwqe6whqcKGuWK1ht2Lg0bsf4esqBj89tmx3wqNIsjKjKxE3vROgBlggUQM+Lg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051188; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Kzcrn39eD0z7mdex5k15+pXfmfFzl1CZcnR3/gmwyRI=; b=gZnVZvyJc215C7AQctrA7OtikSo3XN32/suhqEsliG0s/tbWJ9b2GmlkXOTyocUngUJ9Io 5d8qWL5TtX3dKTn9Vy7SLnOYcl/OqWqRjHNlkbBJjmE49w7hc5gkiBN/2qf3yFerpD31S/ iCzI/OZwvgWlhSutnOqkUg3lhDlLrB/+UNz8l16PQ9hFL0oZrTEXVjM8KzYiN7TyriVhzg 1ij8EBfcxCE6kIgNFxxNxgHbYrdEtPelsoNqEQQ81EJzGwO98eUfW5QCAxCu9hyZM8kce+ Omtn+Ikk7699/SIgk5tEzHGZgyi3Z+Wtwd4c0J3zLi6+LKn/NVc6uYTI+dbxEg== 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 4S5Mgl6y9CzYjH; Wed, 11 Oct 2023 19:06:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BJ6RoU058807; Wed, 11 Oct 2023 19:06:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BJ6RoE058804; Wed, 11 Oct 2023 19:06:27 GMT (envelope-from git) Date: Wed, 11 Oct 2023 19:06:27 GMT Message-Id: <202310111906.39BJ6RoE058804@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: 0b76796abdc8 - stable/13 - arm unwind: Reject unaligned stack pointers List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 0b76796abdc865f5cb275f229569fe3259434d4c Auto-Submitted: auto-generated The branch stable/13 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=0b76796abdc865f5cb275f229569fe3259434d4c commit 0b76796abdc865f5cb275f229569fe3259434d4c Author: John Baldwin AuthorDate: 2023-08-25 19:00:37 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:09:52 +0000 arm unwind: Reject unaligned stack pointers Reviewed by: andrew Differential Revision: https://reviews.freebsd.org/D41533 (cherry picked from commit 247e8662d2c080c27937ec4d62e80b2358e8c74f) --- sys/arm/arm/unwind.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sys/arm/arm/unwind.c b/sys/arm/arm/unwind.c index cdc9ef225ee7..591bae3dfc26 100644 --- a/sys/arm/arm/unwind.c +++ b/sys/arm/arm/unwind.c @@ -398,6 +398,9 @@ unwind_exec_insn(struct unwind_state *state) if (mask == 0) return 1; + if (!__is_aligned(vsp, sizeof(register_t))) + return 1; + /* Update SP */ update_vsp = 1; @@ -430,6 +433,9 @@ unwind_exec_insn(struct unwind_state *state) /* Read how many registers to load */ count = insn & INSN_POP_COUNT_MASK; + if (!__is_aligned(vsp, sizeof(register_t))) + return 1; + /* Update sp */ update_vsp = 1; @@ -460,6 +466,9 @@ unwind_exec_insn(struct unwind_state *state) if (mask == 0 || (mask & 0xf0) != 0) return 1; + if (!__is_aligned(vsp, sizeof(register_t))) + return 1; + /* Update SP */ update_vsp = 1; From nobody Wed Oct 11 19:06:28 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5Mgn3hBFz4wYvm; Wed, 11 Oct 2023 19:06: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 4S5Mgn1VVhz4bT0; Wed, 11 Oct 2023 19:06:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051189; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZUa8lgWAX+J9lRhBB2XqfTw3x6uWUSa9nF9OUojOX0k=; b=FO9vbKWOWDU6G6JuzlMSElzwKP4srYBtGEcXVF0AfLQByDmlNQZsWmjc1Vph9W2bXirZVe 6DG3/PTGuEKSyxz6+l55FCahrR23FGNklqARSGqbsf9K3MTIY/SeQnAWHF748Quc8yC8B8 gAiUb5kr5wtWKqV/EQcxEdXwQGY4hZvYRhownejceTIQKropd8zY1djWvxhIKqGwjDauWG 1StNDmp9JPFb9bDLfF5/nIpa7hgK5KHc83nDsSRc+oSAXVAXvPOIlWrtUt0dpEmrM7pO3A 4rSH0ObeTCmggknNjtq8myZDq0qcTQwFo7xQrZe1ihHlRQJtxnjITC5exZEgrQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697051189; a=rsa-sha256; cv=none; b=RTbAk1J6O1z3ktV9jwYUxN01+8RRbIVI68U+4tyquRAZMYdnEoIsXdVFyHL9AUpQMzXn3X GPDJKzo2yFf0gdBsjy1dFoETgqoHXhU9TbH1Jt4Ft1+/zJDacGzQ1WrOhxKO6KaWTdy0WA ksZGhGFyyGMa/eJFEfuumCRjka47j0bZTbTrf82zi6D+wjM62vY6PeLGSeB833Ig6c1BUO Xv4BCaubyjOoqTU0ieeQPPWasgu/DPwdsbAPYX46AUmsPeVGI0SDZO3wJ/JRdm8YANwOeP NTyCrVRlR38HfGzqrxvU/Tac+gos0cOfFXkp+MxmOwFO5i79QuPrKNaiT9oGfg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051189; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZUa8lgWAX+J9lRhBB2XqfTw3x6uWUSa9nF9OUojOX0k=; b=lg7vFSZk22PQp2Yv6sBOL5WwpLbkFhsii/GZI6FIsnTMN9dD6nXfshpQDyPvsqOSocYw5f h7v4FXekhpeLFavKPrN8ATTbNOzTdzNd5FACW+2q8R8H8fTYA7ujuyzizx5cmH5st0hf88 FjTxkMOKiQNIeZPMX4gFIMr/i7u3SOsMRfxMGmoc26GBZh6e3vHjvqeRypD6xGSNtCl4aR LSLQ8YGWZpTlurEhQvb583XpJ0nqbX5jn0VP4Z+F7l//TY0EKtoyvFrcEW3uQn55bG1Dvc ELIv349nCTRSIs6xw/TYCV+8TVhCZ1BH4B93miWGXV5nlwlcPc+APuIRmNc7tA== 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 4S5Mgn0YrwzYfw; Wed, 11 Oct 2023 19:06:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BJ6SPJ058849; Wed, 11 Oct 2023 19:06:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BJ6STM058846; Wed, 11 Oct 2023 19:06:28 GMT (envelope-from git) Date: Wed, 11 Oct 2023 19:06:28 GMT Message-Id: <202310111906.39BJ6STM058846@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: 408429cca4ac - stable/13 - efirt_machdep.c: Trim some unused includes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 408429cca4ac76ea20a77fe26270155166e248df Auto-Submitted: auto-generated The branch stable/13 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=408429cca4ac76ea20a77fe26270155166e248df commit 408429cca4ac76ea20a77fe26270155166e248df Author: John Baldwin AuthorDate: 2023-08-28 23:22:03 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:09:52 +0000 efirt_machdep.c: Trim some unused includes Reviewed by: imp, kib, markj Differential Revision: https://reviews.freebsd.org/D41596 (cherry picked from commit d1e4c63d9e93b113f7ef5aef5e0e79a4d7dca144) --- sys/amd64/amd64/efirt_machdep.c | 3 --- sys/arm64/arm64/efirt_machdep.c | 3 --- 2 files changed, 6 deletions(-) diff --git a/sys/amd64/amd64/efirt_machdep.c b/sys/amd64/amd64/efirt_machdep.c index 5734e0300df8..61648cbb354f 100644 --- a/sys/amd64/amd64/efirt_machdep.c +++ b/sys/amd64/amd64/efirt_machdep.c @@ -45,11 +45,8 @@ #include #include #include -#include #include -#include #include -#include #include #include #include diff --git a/sys/arm64/arm64/efirt_machdep.c b/sys/arm64/arm64/efirt_machdep.c index 390289024606..d3538f3fe115 100644 --- a/sys/arm64/arm64/efirt_machdep.c +++ b/sys/arm64/arm64/efirt_machdep.c @@ -46,10 +46,7 @@ #include #include -#include -#include #include -#include #include #include From nobody Wed Oct 11 19:06:30 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5Mgp38Cqz4wZ2b; Wed, 11 Oct 2023 19:06:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5Mgp2Tdmz4bX1; Wed, 11 Oct 2023 19:06:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051190; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eV60LuRZUN7p6H7pQs3r9FcK4D1MIAw8+2mbD8Oejh4=; b=TRgkWfpGDfyo3qeRMkJYrXGKJzyzeABXQBX4AGbXQUOP4w1G68OoxmVWScLcc1I+Lrj4L+ RcTyQHi+BHm41j2OIBuIh1L3jMWMqkcDaXepw5x7Hufqjuij6SwtaG/iX5N0ScGtsX3tmR AKQhefm8ELF3FAfw8mjqT4DWxPH65tUu6aRcB/cyqlCzMknQN2zAYY+Qnt65o+V8mzPjhg 0N8iVS16duv2/dqu2rT0sGLG3IEZS+pF2yu2JXvV6/OOAJFG0zjhNqMR6PmiS1T8/oj27Q sdhr0PIvX3iBg1UGC1ahfIdDu+UHCAq6eyx5qMOdUTJlx6LiGhN323RRj9bfdQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697051190; a=rsa-sha256; cv=none; b=N/dVDCnGbOdGGtASFeBY3v4dDwrgjClfWy01yacZiduJXV/DyeZ/X79EVx/e6AhdZ8Og/K AyKHjd28uGL4ZD4tlJvKXnz9kUmYlVzRgJd7H7kwHHjDwpsGAleLUHCstyS0rMy/VdrQxj UcpZrDTfYtKZLHjSOGIHcMyKNufkqvfac0rmyb5EJrN1PGWMEWH66Of8JJRjRc2FfwUb+b Iy07YHtC/dlBx8iZm8maL79B7A0spuNQYV/TmwrP2K4h2WUze13PifUGidawXq41IqzrSG /g3KEDu3zlRHA9pIORiJZ+UZV4tfk3sqqR84KenPJhu353P24g6J5gR7bpgj6Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051190; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eV60LuRZUN7p6H7pQs3r9FcK4D1MIAw8+2mbD8Oejh4=; b=cq3dyU5QQRe97X9xPQIoBuJUokyDlWG4PeAzzBgPIG+oC6wZQB+w9w2vLipRwBdy1Fik/L I07OnShIxSSeD3cbfFqsT02SnQAuwPXLSsAjHNGSOzdp4Lzq9SUwdVnmrESv6txNv7iaRH 03YP32D8wq04biDij1DXV6MIMdx1gbFEhDX+/gd4OvDqVlUShER6t2fbIRoLOCwGdhAskt Y/LHtyNSaO/nW9+bZyTGHiUlQaoy2tKvByA0QrQZ/plAH7A2NMoaV3B+x7tcVHl90E+T2w Zj9XHS/wF5jI2aram0jF+9T1wohP2KuCVkcOl+TfoKpiv4D4J0dSWz+4sQwtSg== 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 4S5Mgp1XYmzXxb; Wed, 11 Oct 2023 19:06:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BJ6UJP058895; Wed, 11 Oct 2023 19:06:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BJ6Ukp058892; Wed, 11 Oct 2023 19:06:30 GMT (envelope-from git) Date: Wed, 11 Oct 2023 19:06:30 GMT Message-Id: <202310111906.39BJ6Ukp058892@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: 21923b24c4cf - stable/13 - amd64 db_trace: Reject unaligned frame pointers List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 21923b24c4cfc42870041a5aaa4effb3abd85fce Auto-Submitted: auto-generated The branch stable/13 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=21923b24c4cfc42870041a5aaa4effb3abd85fce commit 21923b24c4cfc42870041a5aaa4effb3abd85fce Author: John Baldwin AuthorDate: 2023-09-01 22:55:05 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:09:52 +0000 amd64 db_trace: Reject unaligned frame pointers Switch to using db_addr_t to hold frame pointer values until they are verified to be suitably aligned. Reviewed by: kib, markj Differential Revision: https://reviews.freebsd.org/D41532 (cherry picked from commit 4a9cd9fc22d7f87a27ccd3d41b93a0356cd7061c) --- sys/amd64/amd64/db_trace.c | 127 ++++++++++++++++++++++++--------------------- 1 file changed, 68 insertions(+), 59 deletions(-) diff --git a/sys/amd64/amd64/db_trace.c b/sys/amd64/amd64/db_trace.c index 62d02117016a..87a0c2aec7bf 100644 --- a/sys/amd64/amd64/db_trace.c +++ b/sys/amd64/amd64/db_trace.c @@ -121,17 +121,14 @@ db_frame(struct db_variable *vp, db_expr_t *valuep, int op) #define INTERRUPT 2 #define SYSCALL 3 -static void db_nextframe(struct amd64_frame **, db_addr_t *, struct thread *); -static void db_print_stack_entry(const char *, db_addr_t, void *); - static void -db_print_stack_entry(const char *name, db_addr_t callpc, void *frame) +db_print_stack_entry(const char *name, db_addr_t callpc, db_addr_t frame) { db_printf("%s() at ", name != NULL ? name : "??"); db_printsym(callpc, DB_STGY_PROC); - if (frame != NULL) - db_printf("/frame 0x%lx", (register_t)frame); + if (frame != 0) + db_printf("/frame %#lx", frame); db_printf("\n"); } @@ -139,17 +136,20 @@ db_print_stack_entry(const char *name, db_addr_t callpc, void *frame) * Figure out the next frame up in the call stack. */ static void -db_nextframe(struct amd64_frame **fp, db_addr_t *ip, struct thread *td) +db_nextframe(db_addr_t *fp, db_addr_t *ip, struct thread *td) { struct trapframe *tf; + db_addr_t tf_addr; int frame_type; long rip, rsp, rbp; db_expr_t offset; c_db_sym_t sym; const char *name; - rip = db_get_value((long) &(*fp)->f_retaddr, 8, FALSE); - rbp = db_get_value((long) &(*fp)->f_frame, 8, FALSE); + rip = db_get_value(*fp + offsetof(struct amd64_frame, f_retaddr), 8, + FALSE); + rbp = db_get_value(*fp + offsetof(struct amd64_frame, f_frame), 8, + FALSE); /* * Figure out frame type. We look at the address just before @@ -193,50 +193,55 @@ db_nextframe(struct amd64_frame **fp, db_addr_t *ip, struct thread *td) * Normal frames need no special processing. */ if (frame_type == NORMAL) { - *ip = (db_addr_t) rip; - *fp = (struct amd64_frame *) rbp; + *ip = rip; + *fp = rbp; return; } - db_print_stack_entry(name, rip, &(*fp)->f_frame); + db_print_stack_entry(name, rip, *fp); /* * Point to base of trapframe which is just above the * current frame. */ - tf = (struct trapframe *)((long)*fp + 16); - - if (INKERNEL((long) tf)) { - rsp = tf->tf_rsp; - rip = tf->tf_rip; - rbp = tf->tf_rbp; - switch (frame_type) { - case TRAP: - db_printf("--- trap %#r", tf->tf_trapno); - break; - case SYSCALL: - db_printf("--- syscall"); - db_decode_syscall(td, tf->tf_rax); - break; - case INTERRUPT: - db_printf("--- interrupt"); - break; - default: - panic("The moon has moved again."); - } - db_printf(", rip = %#lr, rsp = %#lr, rbp = %#lr ---\n", rip, - rsp, rbp); + tf_addr = *fp + 16; + + if (!__is_aligned(tf_addr, _Alignof(*tf)) || !INKERNEL(tf_addr)) { + db_printf("--- invalid trapframe %p\n", (void *)tf_addr); + *ip = 0; + *fp = 0; + return; } + tf = (struct trapframe *)tf_addr; + + rsp = tf->tf_rsp; + rip = tf->tf_rip; + rbp = tf->tf_rbp; + switch (frame_type) { + case TRAP: + db_printf("--- trap %#r", tf->tf_trapno); + break; + case SYSCALL: + db_printf("--- syscall"); + db_decode_syscall(td, tf->tf_rax); + break; + case INTERRUPT: + db_printf("--- interrupt"); + break; + default: + __assert_unreachable(); + } + db_printf(", rip = %#lr, rsp = %#lr, rbp = %#lr ---\n", rip, rsp, rbp); - *ip = (db_addr_t) rip; - *fp = (struct amd64_frame *) rbp; + *ip = rip; + *fp = rbp; } static int -db_backtrace(struct thread *td, struct trapframe *tf, struct amd64_frame *frame, +db_backtrace(struct thread *td, struct trapframe *tf, db_addr_t frame, db_addr_t pc, register_t sp, int count) { - struct amd64_frame *actframe; + db_addr_t actframe; const char *name; db_expr_t offset; c_db_sym_t sym; @@ -270,7 +275,7 @@ db_backtrace(struct thread *td, struct trapframe *tf, struct amd64_frame *frame, * jumped to a bogus location, so try and use * the return address to find our caller. */ - db_print_stack_entry(name, pc, NULL); + db_print_stack_entry(name, pc, 0); pc = db_get_value(sp, 8, FALSE); if (db_search_symbol(pc, DB_STGY_PROC, &offset) == C_DB_SYM_NULL) @@ -282,20 +287,20 @@ db_backtrace(struct thread *td, struct trapframe *tf, struct amd64_frame *frame, instr = db_get_value(pc, 4, FALSE); if ((instr & 0xffffffff) == 0xe5894855) { /* pushq %rbp; movq %rsp, %rbp */ - actframe = (void *)(tf->tf_rsp - 8); + actframe = tf->tf_rsp - 8; } else if ((instr & 0xffffff) == 0xe58948) { /* movq %rsp, %rbp */ - actframe = (void *)tf->tf_rsp; + actframe = tf->tf_rsp; if (tf->tf_rbp == 0) { /* Fake frame better. */ frame = actframe; } } else if ((instr & 0xff) == 0xc3) { /* ret */ - actframe = (void *)(tf->tf_rsp - 8); + actframe = tf->tf_rsp - 8; } else if (offset == 0) { /* Probably an assembler symbol. */ - actframe = (void *)(tf->tf_rsp - 8); + actframe = tf->tf_rsp - 8; } } else if (name != NULL && strcmp(name, "fork_trampoline") == 0) { @@ -312,20 +317,24 @@ db_backtrace(struct thread *td, struct trapframe *tf, struct amd64_frame *frame, if (actframe != frame) { /* `frame' belongs to caller. */ - pc = (db_addr_t) - db_get_value((long)&actframe->f_retaddr, 8, FALSE); + pc = db_get_value(actframe + + offsetof(struct amd64_frame, f_retaddr), 8, FALSE); continue; } db_nextframe(&frame, &pc, td); - - if (INKERNEL((long)pc) && !INKERNEL((long)frame)) { - sym = db_search_symbol(pc, DB_STGY_ANY, &offset); - db_symbol_values(sym, &name, NULL); - db_print_stack_entry(name, pc, frame); + if (frame == 0) break; - } - if (!INKERNEL((long) frame)) { + + if (!__is_aligned(frame, _Alignof(struct amd64_frame)) || + !INKERNEL(frame)) { + if (INKERNEL(pc)) { + sym = db_search_symbol(pc, DB_STGY_ANY, + &offset); + db_symbol_values(sym, &name, NULL); + db_print_stack_entry(name, pc, frame); + break; + } break; } } @@ -336,14 +345,14 @@ db_backtrace(struct thread *td, struct trapframe *tf, struct amd64_frame *frame, void db_trace_self(void) { - struct amd64_frame *frame; - db_addr_t callpc; + db_addr_t callpc, frame; register_t rbp; __asm __volatile("movq %%rbp,%0" : "=r" (rbp)); - frame = (struct amd64_frame *)rbp; - callpc = (db_addr_t)db_get_value((long)&frame->f_retaddr, 8, FALSE); - frame = frame->f_frame; + callpc = db_get_value(rbp + offsetof(struct amd64_frame, f_retaddr), 8, + FALSE); + frame = db_get_value(rbp + offsetof(struct amd64_frame, f_frame), 8, + FALSE); db_backtrace(curthread, NULL, frame, callpc, 0, -1); } @@ -355,8 +364,8 @@ db_trace_thread(struct thread *thr, int count) ctx = kdb_thr_ctx(thr); tf = thr == kdb_thread ? kdb_frame : NULL; - return (db_backtrace(thr, tf, (struct amd64_frame *)ctx->pcb_rbp, - ctx->pcb_rip, ctx->pcb_rsp, count)); + return (db_backtrace(thr, tf, ctx->pcb_rbp, ctx->pcb_rip, ctx->pcb_rsp, + count)); } void From nobody Wed Oct 11 19:06:31 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5Mgq45Dhz4wYjL; Wed, 11 Oct 2023 19:06: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 4S5Mgq3RC3z4bXn; Wed, 11 Oct 2023 19:06:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051191; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=f82TVS0D863Owjzd6cYOPFFz5VQ3lviVUoil2hNXei4=; b=OS/KeGLOA/XYNsRHOiwJOKxgKkXiDNzeOaN9QG/ViLYPR+YTdWRpIfvBELuSDA2AkInogx 5p0ltAy6r5DIA81inFhB5QYGeQhlVbCb3g+3TkT5xkHgPkBqhIBqRxjqoO0v1Qqm/kNZtA ONX3c8Pvkb8Wtvt3xdoaPU93kBGeVRalriU2BpE54k2T/OCw2u6vQk7ScF0tM9LR2W5kMZ i9TSyRI4HVTOdMy5PheJuXEkbLN97MgWUzeOryv8IpUZ5Bq/ZEEgBmyE0o3A7uHc99AhAQ mgy5IlaSnnNIbf7p6U7hvteIba0SYHiI9zTCmKTUEPqx3mavNWJ3+2u4fHagHQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697051191; a=rsa-sha256; cv=none; b=RerUf7m50U77cfX6TX+bqAjbXwr4OrA01S/K8Ta0fpEjEQvkWtlVPpNgSJQtkfjr4101v7 IMu6Tt0aBPUzXMtLRjqlKz7BF2SQSnVBb6Xx3SaoC4yZgQiUQBvQ+UJwX9DSLHW497hIxi D1yW7IX0zfAusLXOpueoHZy8Rf2sxiaYDbPliyGSHakO4dGDGdOo2gsDxAOnA92B4/5tfM EotPJYD1kxnZ2sb1SvfMaMCYfzXUZqexiNIPI7vgOi3qRg8dAILnsidRKumKh0RwXvmwMQ 5WsW1Ak3sCV1BuAmH2DIYvba3HpuNcAn0XV3/NwAna0rkOSKnVl/TdNwhJA/wA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051191; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=f82TVS0D863Owjzd6cYOPFFz5VQ3lviVUoil2hNXei4=; b=YaUQGbLLBEvRxd4Q4LSldYSTu42mTaCLAcBa2BC/ZMaLsaJPo9uaV7haKvOgXj1uBervFe x5sW8MWEQ6HK1XX4M6wpExY2j+JLrj22UvGILYms3cdIMk+wGz5Ok5+N6puy+2wGnN07FT miKcVhR8V6LhoKLehiU8RDF0PPRtUEEvtMu5B4pBFW03dSkxBU06AVuDgPkYzcBiooAN6e i3jZhkatfwF+/nzwxT/eI7YubtQmRfXX+VZnhDmYOll7CCXWvUj0INqOsSMBgasPEy4APY alw2zKPJw/qcFyUxOkUBC/2Dj2Dk3xzUkw28Ny3i+jfWyXcJZxvuPJRsFTAKcQ== 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 4S5Mgq2ThMzY3G; Wed, 11 Oct 2023 19:06:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BJ6VVC058940; Wed, 11 Oct 2023 19:06:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BJ6V4h058937; Wed, 11 Oct 2023 19:06:31 GMT (envelope-from git) Date: Wed, 11 Oct 2023 19:06:31 GMT Message-Id: <202310111906.39BJ6V4h058937@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: c31927eb866f - stable/13 - virtio_random: Pipeline fetching the data List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: c31927eb866f18b87cc196f14cbbcf658e10d38c Auto-Submitted: auto-generated The branch stable/13 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=c31927eb866f18b87cc196f14cbbcf658e10d38c commit c31927eb866f18b87cc196f14cbbcf658e10d38c Author: John-Mark Gurney AuthorDate: 2023-09-05 15:59:43 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:09:52 +0000 virtio_random: Pipeline fetching the data Queue an initial fetch of data during attach and after every read rather than synchronously fetching data and polling for completion. If data has not been returned from an previous fetch during read, just return EAGAIN rather than blocking. Co-authored-by: John Baldwin Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D41656 (cherry picked from commit f1c5a2e3a625053e2b70d5b1777d849a4d9328f2) --- sys/dev/virtio/random/virtio_random.c | 73 +++++++++++++++++++++-------------- 1 file changed, 43 insertions(+), 30 deletions(-) diff --git a/sys/dev/virtio/random/virtio_random.c b/sys/dev/virtio/random/virtio_random.c index 1088a218c957..d2e34714cb26 100644 --- a/sys/dev/virtio/random/virtio_random.c +++ b/sys/dev/virtio/random/virtio_random.c @@ -54,6 +54,8 @@ struct vtrnd_softc { struct virtqueue *vtrnd_vq; eventhandler_tag eh; bool inactive; + struct sglist *vtrnd_sg; + uint32_t *vtrnd_value; }; static int vtrnd_modevent(module_t, int, void *); @@ -67,6 +69,7 @@ static int vtrnd_negotiate_features(struct vtrnd_softc *); static int vtrnd_setup_features(struct vtrnd_softc *); static int vtrnd_alloc_virtqueue(struct vtrnd_softc *); static int vtrnd_harvest(struct vtrnd_softc *, void *, size_t *); +static void vtrnd_enqueue(struct vtrnd_softc *sc); static unsigned vtrnd_read(void *, unsigned); #define VTRND_FEATURES 0 @@ -140,12 +143,17 @@ static int vtrnd_attach(device_t dev) { struct vtrnd_softc *sc, *exp; + size_t len; int error; sc = device_get_softc(dev); sc->vtrnd_dev = dev; virtio_set_feature_desc(dev, vtrnd_feature_desc); + len = sizeof(*sc->vtrnd_value) * HARVESTSIZE; + sc->vtrnd_value = malloc_aligned(len, len, M_DEVBUF, M_WAITOK); + sc->vtrnd_sg = sglist_build(sc->vtrnd_value, len, M_WAITOK); + error = vtrnd_setup_features(sc); if (error) { device_printf(dev, "cannot setup features\n"); @@ -176,6 +184,8 @@ vtrnd_attach(device_t dev) sc->inactive = false; random_source_register(&random_vtrnd); + vtrnd_enqueue(sc); + fail: if (error) vtrnd_detach(dev); @@ -187,6 +197,7 @@ static int vtrnd_detach(device_t dev) { struct vtrnd_softc *sc; + uint32_t rdlen; sc = device_get_softc(dev); KASSERT( @@ -199,7 +210,13 @@ vtrnd_detach(device_t dev) sc->eh = NULL; } random_source_deregister(&random_vtrnd); + + /* clear the queue */ + virtqueue_poll(sc->vtrnd_vq, &rdlen); + atomic_store_explicit(&g_vtrnd_softc, NULL, memory_order_release); + sglist_free(sc->vtrnd_sg); + zfree(sc->vtrnd_value, M_DEVBUF); return (0); } @@ -253,49 +270,45 @@ vtrnd_alloc_virtqueue(struct vtrnd_softc *sc) return (virtio_alloc_virtqueues(dev, 0, 1, &vq_info)); } +static void +vtrnd_enqueue(struct vtrnd_softc *sc) +{ + struct virtqueue *vq; + int error __diagused; + + vq = sc->vtrnd_vq; + + KASSERT(virtqueue_empty(vq), ("%s: non-empty queue", __func__)); + + error = virtqueue_enqueue(vq, sc, sc->vtrnd_sg, 0, 1); + KASSERT(error == 0, ("%s: virtqueue_enqueue returned error: %d", + __func__, error)); + + virtqueue_notify(vq); +} + static int vtrnd_harvest(struct vtrnd_softc *sc, void *buf, size_t *sz) { - struct sglist_seg segs[1]; - struct sglist sg; struct virtqueue *vq; - uint32_t value[HARVESTSIZE] __aligned(sizeof(uint32_t) * HARVESTSIZE); + void *cookie; uint32_t rdlen; - int error; - - _Static_assert(sizeof(value) < PAGE_SIZE, "sglist assumption"); if (sc->inactive) return (EDEADLK); - sglist_init(&sg, 1, segs); - error = sglist_append(&sg, value, *sz); - if (error != 0) - panic("%s: sglist_append error=%d", __func__, error); - vq = sc->vtrnd_vq; - KASSERT(virtqueue_empty(vq), ("%s: non-empty queue", __func__)); - - error = virtqueue_enqueue(vq, buf, &sg, 0, 1); - if (error != 0) - return (error); - - /* - * Poll for the response, but the command is likely already - * done when we return from the notify. - */ - virtqueue_notify(vq); - virtqueue_poll(vq, &rdlen); - if (rdlen > *sz) - panic("%s: random device wrote %zu bytes beyond end of provided" - " buffer %p:%zu", __func__, (size_t)rdlen - *sz, - (void *)value, *sz); - else if (rdlen == 0) + cookie = virtqueue_dequeue(vq, &rdlen); + if (cookie == NULL) return (EAGAIN); + KASSERT(cookie == sc, ("%s: cookie mismatch", __func__)); + *sz = MIN(rdlen, *sz); - memcpy(buf, value, *sz); - explicit_bzero(value, *sz); + memcpy(buf, sc->vtrnd_value, *sz); + + vtrnd_enqueue(sc); + return (0); } From nobody Wed Oct 11 19:06:32 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5Mgr4t67z4wYrx; Wed, 11 Oct 2023 19:06: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 4S5Mgr47s9z4bpW; Wed, 11 Oct 2023 19:06:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051192; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=T01AkhAlRFh508yZ1F+HFqTkLZ/Lq5BJIWvxXxbSJsI=; b=TozNSNUuwSfr0+bLw2cuqClL4RABzOlvhvkmn06s/qvWIy6Hk+v6QMqBnCBQSjAH1IlxFk FQnVnR9/Pq6899M17B5gZ6FQeVs519B4ftELhCr+jPwRu/HZAtjvm/TqabCGgwGIU2U0wt XTdQPv1XlShwimOjlTJr8kItayHD8rspSOTz106WU6IL5JXBsh3QmWUIJX2mCdGO0TOj5J dELCIlGCJ4twPVJtA7FVutZVl1Cf9Z6bHDNCQXuVl1dtza+idy6+tCCjRcfDd4NBcLImGn Drd59lz8YcNik/sxqOecJj1ejFhTjGwOcgdFARgqlQmdmeaWLTnXV5qfLeXGXA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697051192; a=rsa-sha256; cv=none; b=ahea/rSbCbm2vchkthjTqPTwxbIgwmAnlxB4LB6tLFARvTl+HWjJnmAlwj31GqtjKbq21U kdJEIYtOG+YNXZEY3eCXBb6RWoJePaEAYlGBhE+PVEF3NLHBnCxWitHzfwPFGugW1En9RC J+EDk8lNKx4WN4BbWWvKmDSVVl3A7GU2JAna06G1DtOL2rWjnjbzOH0PNppNX2oRVJaaEN FV7PWqZs4p05dLEFushYeQiu8NcBHQdWBeXsmFvLHnF15Swdf8k0PEnpalhHUw63IE2LT6 1c0TB5tG2suG9k19RNWT+EQIS7ptkNdm4SfAUKU03kRedR2CVviWViPCJEixmA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051192; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=T01AkhAlRFh508yZ1F+HFqTkLZ/Lq5BJIWvxXxbSJsI=; b=j3aGuU3o7CbUANX8oA53UOaxlXfMmSv9Oq6hdJZQlKoAecitNQBc2AjysKiDOPfE5Awvpe b9qGfSkijv8MCGndbJp1+QzVFzjRWTZUbXOEQZjFo0W/PW8bumZd5S5yYrIvEfitPjRemb O7kXzUpSood4B5+LoQKCslPQJTXtJwfTF16bvVbc9NpDLY3SmpANmN6g4hhmjMYG68+4v9 AAMn01oAEnDwZiACK6S1b4rY5r709eMosu6+VhDzST2vNNGl4i/l58GrsD4LyJglx6Nu8R YJ7ejwtPTEZaxBqjNC0bkLxvP5XaFegImsJxVnEEqoW/wZOEdLFydfxlE4VBEg== 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 4S5Mgr3FBKzYlX; Wed, 11 Oct 2023 19:06:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BJ6WIe058988; Wed, 11 Oct 2023 19:06:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BJ6WVM058985; Wed, 11 Oct 2023 19:06:32 GMT (envelope-from git) Date: Wed, 11 Oct 2023 19:06:32 GMT Message-Id: <202310111906.39BJ6WVM058985@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: 358db6d8825b - stable/13 - x86: Properly align interrupt vectors for MSI List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 358db6d8825b38296a205206ac3d25b2084aa5f4 Auto-Submitted: auto-generated The branch stable/13 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=358db6d8825b38296a205206ac3d25b2084aa5f4 commit 358db6d8825b38296a205206ac3d25b2084aa5f4 Author: John Hay AuthorDate: 2023-09-28 21:08:08 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:09:52 +0000 x86: Properly align interrupt vectors for MSI MSI (not MSI-X) interrupt vectors must be allocated in groups that are powers of 2, and the block of IDT vectors must be aligned to the size of the request. The code in native_apic_alloc_vectors() does an alignment check in the loop: if ((vector & (align - 1)) != 0) continue; first = vector; But it adds APIC_IO_INTS to the value it returns: return (first + APIC_IO_INTS); The problem is that APIC_IO_INTS is not a multiple of 32. It is 48: As a result, a request for 32 vectors (the max supported by MSI), was not always aligned. To fix, check the alignment of 'vector + APIC_IO_INTS' in the loop. PR: 274074 Reviewed by: jhb (cherry picked from commit d33a4ae8ba5343f555842e6e32321f9cd64dfd09) --- sys/x86/x86/local_apic.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/x86/x86/local_apic.c b/sys/x86/x86/local_apic.c index 64358a53afcf..68468110e522 100644 --- a/sys/x86/x86/local_apic.c +++ b/sys/x86/x86/local_apic.c @@ -1655,7 +1655,7 @@ native_apic_alloc_vectors(u_int apic_id, u_int *irqs, u_int count, u_int align) /* Start a new run if run == 0 and vector is aligned. */ if (run == 0) { - if ((vector & (align - 1)) != 0) + if (((vector + APIC_IO_INTS) & (align - 1)) != 0) continue; first = vector; } From nobody Wed Oct 11 19:06:33 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5Mgt05WMz4wZ9c; Wed, 11 Oct 2023 19:06: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 4S5Mgs5GBTz4bst; Wed, 11 Oct 2023 19:06:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051193; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mk+ujqFui3HPhlDwAc4p3buUlogGeEbBjB/aUxTR+fA=; b=R6HFqgxy7FkOl/PcMKWToO8tcPrTpxsYLQhy5QqG6GIRJtvhirrlL6Bs74Z9+oOpj+Vm3+ /gbXsnFMIYe8aBaWIsfKgSd/6yXcx50WM5CNgKmaKEoaz6GJsq0i9tDjI0iuWhQcjsIuo5 K9RG6InXHG0oXplAEudHUYJmpzVkSnUwBFXx6NAfZ+b5WZutoP6pnBuc0DYKQCLHJGLvWq mQI1iaARiGJWi5ZjtN5x4KKn9ijD+JI8VlHjIt9wQ1ElJFl5oD1qudTJheFTV1xMfmXvVf 9mRyu2M42cAJom31HBqAO8+iLrNfpF1oDKBnj90EwW8juweDJ0Ift0wmGkpVvA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697051193; a=rsa-sha256; cv=none; b=UueZFca9IWOytc7Xx0T95YajFvgT/VRcvpQjZo/W5gxF9RUK7IFhVRPTVN8m+oDlor73u2 5hPbwXYm5BQWM0dXLHOscpAsTtelqhBMErzT5DrHmue5QDS3aWyiU5ENKJm98wCLfRX0La bYDuYTuAqf6y6wPxkShHb+hlV+c5DjR4rgbS3+ufait9blPY2SgDw6YEaswjg5RiMc+O5O Zky9rY582XuOkGbqLDwBYnu4sJxg4lI1/q/HHnCkJbA2TzFEfrEPZT87T1JVMzJekrSZ4z 6hf624XaDkMYqvzcDUtr0AuK8g2Myxe9w+uHY0p7Ejr7nwyqsvOSpHEHAoLHNQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051193; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mk+ujqFui3HPhlDwAc4p3buUlogGeEbBjB/aUxTR+fA=; b=EE9ltoRglEa3/6R81vmW3g41XKu2V2cqhZgDjrvpi+wZlb6wrgnOQHnmaCemAlb4OdIzP0 GTdxw4aNCFtsWTAX7C90X03KAr/pkeXQPp4wIV62jLt6aU+ujXZ9JP/4AxbUk6dF2MZBbe zAPh6dsQQN/6LSnh1Nso2d+qxOgPSQFppnykVYZiPqmQwMfuBvIFr+9MNDXM6VHlwcyG8c 9QlnGz59VW66uGZflBovXp1dDgXkdGHksL+sMSlMV/BRaiH6HsNyoRPgQUJlAAvx+6tFjr 7SdO4qfAfeucvdixpdGMY+NVLmlnMmL5QhTbqb1/LUtMfbjhU0yDbKlLz9Fm+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 4S5Mgs4LDfzYWF; Wed, 11 Oct 2023 19:06:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BJ6Xba059051; Wed, 11 Oct 2023 19:06:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BJ6Xde059048; Wed, 11 Oct 2023 19:06:33 GMT (envelope-from git) Date: Wed, 11 Oct 2023 19:06:33 GMT Message-Id: <202310111906.39BJ6Xde059048@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: a2128fd12d6e - stable/13 - cxgbe tom: Call t4_rcvd_locked from do_rx_data to return RX credits List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: a2128fd12d6e3cf506541429ff3e4c29994c7c80 Auto-Submitted: auto-generated The branch stable/13 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=a2128fd12d6e3cf506541429ff3e4c29994c7c80 commit a2128fd12d6e3cf506541429ff3e4c29994c7c80 Author: John Baldwin AuthorDate: 2023-09-08 23:30:35 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:09:52 +0000 cxgbe tom: Call t4_rcvd_locked from do_rx_data to return RX credits In particular, the kernel RPC layer used by the NFS client never invokes pru_rcvd since it always reads data from the socket upcall via MSG_SOCALLBCK which avoids calling pru_rcvd. As a result, on an NFS client connection managed by t4_tom, RX credits were never returned to the TOE connection to open the TCP window resulting in connection hangs. To fix, expand the set of conditions in do_rx_data where RX credits are returned to match those in t4_rcvd_locked by calling the function directly. Reviewed by: np Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D41688 (cherry picked from commit dcfddc8dc091e7688abc8488a0307eba425fa7a2) --- sys/dev/cxgbe/tom/t4_cpl_io.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/sys/dev/cxgbe/tom/t4_cpl_io.c b/sys/dev/cxgbe/tom/t4_cpl_io.c index 37470c1fb007..fe9dd4477ab3 100644 --- a/sys/dev/cxgbe/tom/t4_cpl_io.c +++ b/sys/dev/cxgbe/tom/t4_cpl_io.c @@ -1676,7 +1676,7 @@ do_rx_data(struct sge_iq *iq, const struct rss_header *rss, struct mbuf *m) struct socket *so; struct sockbuf *sb; struct epoch_tracker et; - int len, rx_credits; + int len; uint32_t ddp_placed = 0; if (__predict_false(toep->flags & TPF_SYNQE)) { @@ -1808,12 +1808,7 @@ do_rx_data(struct sge_iq *iq, const struct rss_header *rss, struct mbuf *m) } sbappendstream_locked(sb, m, 0); - rx_credits = sbspace(sb) > tp->rcv_wnd ? sbspace(sb) - tp->rcv_wnd : 0; - if (rx_credits > 0 && sbused(sb) + tp->rcv_wnd < sb->sb_lowat) { - rx_credits = send_rx_credits(sc, toep, rx_credits); - tp->rcv_wnd += rx_credits; - tp->rcv_adv += rx_credits; - } + t4_rcvd_locked(&toep->td->tod, tp); if (ulp_mode(toep) == ULP_MODE_TCPDDP && toep->ddp.waiting_count > 0 && sbavail(sb) != 0) { From nobody Wed Oct 11 19:06:34 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5Mgv0cp8z4wYs2; Wed, 11 Oct 2023 19:06: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 4S5Mgt6f2fz4bqc; Wed, 11 Oct 2023 19:06:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051194; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CwVwy/lqXj9QfhJlLlxcgCwb2XVFlY08QUq1Dbu1zeU=; b=STCOj1CErQz8v1AP+//tfqj6TudbbRbGw4SOtwtGC8vaw3+68u0HeSPGD76068t2ajm5nq nsjcZ/U4BqzWSY921KgNjHSysd2589Zwa5ozy7emlBIlZs+imdKmzAL7bcBeyIiISnNxl9 7DBMAnj/Z+18JdKyUSa1vflZP0JPaEifK4S0kNMUjOAs/fw42JE1OomNQdLtUJktOW/MhZ H9X+3ubbOf22YvkEZJX9Hf5WDQJY0JPRREIGyGtxUl1Y1dWUulqop4idBRWFPxzFP5qmT7 mbVhP99UIy6pvGSgaH0JTUtGrApS3O5eSI8qKzO9gbmuUZC6q1g1lJJWfR3IvA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697051194; a=rsa-sha256; cv=none; b=o/tovPxXloPtAOKdeLUF/O0IlPfe06Mhou3ROJwZMxbpIt8CeGIRfi+aPLWi4bVq5a2fQX z4C2A26sAXuFX8wGbGvrenG1zgcwKcWdbaTFsNQ/zCXlbfbJw82pA9R19Y/2Ib4Mdj2lFZ ilt5o4INRID0dRbvo6itzXjGP9H3IGiy2+2NV3BEYJZnTtLzp0cu8hozIt32Am9Mz65Awc oZDeSsNKGHDZAyh1ZO0RLHxgCrHQYBKjZeYBSF2w5Q5EnqOPJ5VRG4Zbavd5hg/qlpHILy VfnxckDx5ip+SajAF6RrW3fv/2i2hMdsePFffHMeO3PgR66bruu0sUL0qo4olg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051194; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CwVwy/lqXj9QfhJlLlxcgCwb2XVFlY08QUq1Dbu1zeU=; b=D+DQRBGSWJnw7yeRDQ3ZomRSodkMMPa/BQmogxK1SpCiEd9Mp0SS79MnFpOyEubvdTJFae vLpbTpCJWCyK6NvYDWyNZqe16E+miBlM9ipYmpAQ/gK1K6ji/02sSCsHvjw2gS2GjupiNq 4XWh+p+7gyxsqaeLvG582NzPK/UiN2EleU3Ub8iXJLiQBXGrO1PLBzsu0PVxTwdNl8o2tH +Lw7u1XTCVh/QDiaY66t1bF0XVA8TO7O64psmlX+jaMIphCxGAiARH+den758LV2gn8lLn 6o9LfBPLZ1PMQWJ94BA8SFBbvzo7pRr3vVy+rq4Qn9GNTRVP6BPIVAlr2/KhjA== 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 4S5Mgt5lXyzYMH; Wed, 11 Oct 2023 19:06:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BJ6Y9i059114; Wed, 11 Oct 2023 19:06:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BJ6YCi059111; Wed, 11 Oct 2023 19:06:34 GMT (envelope-from git) Date: Wed, 11 Oct 2023 19:06:34 GMT Message-Id: <202310111906.39BJ6YCi059111@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: dcb793989863 - stable/13 - cxgbe t4_tls: Don't bother returning RX credits for a protocol receive error List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: dcb7939898635424daf4c65179bbac75fcb0b09b Auto-Submitted: auto-generated The branch stable/13 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=dcb7939898635424daf4c65179bbac75fcb0b09b commit dcb7939898635424daf4c65179bbac75fcb0b09b Author: John Baldwin AuthorDate: 2023-09-08 23:30:52 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:09:52 +0000 cxgbe t4_tls: Don't bother returning RX credits for a protocol receive error Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D41689 (cherry picked from commit 75af2d951cce7d51d2033405f96f083c01f39f04) --- sys/dev/cxgbe/tom/t4_tls.c | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/sys/dev/cxgbe/tom/t4_tls.c b/sys/dev/cxgbe/tom/t4_tls.c index 3640ef410ca8..dcdbccb4fe7e 100644 --- a/sys/dev/cxgbe/tom/t4_tls.c +++ b/sys/dev/cxgbe/tom/t4_tls.c @@ -1125,7 +1125,7 @@ do_rx_data_tls(const struct cpl_rx_data *cpl, struct toepcb *toep, struct tcpcb *tp; struct socket *so; struct sockbuf *sb; - int len, rx_credits; + int len; len = m->m_pkthdr.len; @@ -1196,22 +1196,6 @@ do_rx_data_tls(const struct cpl_rx_data *cpl, struct toepcb *toep, so->so_error = EBADMSG; out: - /* - * This connection is going to die anyway, so probably don't - * need to bother with returning credits. - */ - rx_credits = sbspace(sb) > tp->rcv_wnd ? sbspace(sb) - tp->rcv_wnd : 0; -#ifdef VERBOSE_TRACES - CTR4(KTR_CXGBE, "%s: tid %u rx_credits %u rcv_wnd %u", - __func__, toep->tid, rx_credits, tp->rcv_wnd); -#endif - if (rx_credits > 0 && sbused(sb) + tp->rcv_wnd < sb->sb_lowat) { - rx_credits = send_rx_credits(toep->vi->adapter, toep, - rx_credits); - tp->rcv_wnd += rx_credits; - tp->rcv_adv += rx_credits; - } - sorwakeup_locked(so); SOCKBUF_UNLOCK_ASSERT(sb); From nobody Wed Oct 11 19:06:35 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5Mgw0zW2z4wZDJ; Wed, 11 Oct 2023 19:06:36 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5Mgw0Dnsz4c8f; Wed, 11 Oct 2023 19:06:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051196; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ObGBSVLw6OZjQoSSRIpiFsQuz6nyzuBRPQ8Ujke4ClU=; b=gLCr6NQv4lbkNu8dxvU9mZJDQcZJYxWOtBUCkYusLo4EchH7CA+MFzagK8dbHd/yjI8+YE EsGdJODGjk96h+gZ4wAfZyQR+2PIaQuwTB1Xow8WMhnTL6pd6msQF/rcszhMRpzcn6bYRv atrLByqHCjFY2UyG7jKTX7t/a36zAcRrWS0dqq4jvRdJmjQ2oCm/UYshqi13mBHSIS+K89 hCe4cLec0TdG2zL9D0qyF3/TAAh3ShOmrqF9PXKzjGcmYIhbcFb+rMRaVgtWKDrwBzO3bo nDkxv0Th7aFRTgCyv+v6fxeEVELiHVajY/HUUdtgp4Ld2BSiIqJnVVrk3hhE2A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697051196; a=rsa-sha256; cv=none; b=Lc2fahp99nzDe3NJtV+Mbqxp1TxWvanYiIEQ165rjR0UTuXJVFxdapHNKxAerzjjBO+zj2 +cOkyriLxD2IvN9YwbrNApYuDl/tqQ1UBcioQ9Q58BMvAHhZ0UE9UiiNF0dxT7htwKwfV5 rS+ZWX8Xm2Ovn3gKOH13hHyyOs0W7dN1/miY0WQVxTYQHnmMJj7yaOXEyW9Ou193ieJSvJ jIYAPbB+Mcb4pvHBWD6vKkHyjFwgclnZtIVQSJ/SXFbB3sUiFwj5rs3TIQ+3owjuZXbT+X kRkm+HDvgmVepbu1hdZk4UBKUE/tQJ8NdP13OEsU68EyvUjg2Nz/fDhGB4Akqg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697051196; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ObGBSVLw6OZjQoSSRIpiFsQuz6nyzuBRPQ8Ujke4ClU=; b=nUqiKwiuI8wdvsp+/n+Uv7N/MpUJv9d/9593yyOkdcB5sfzsMwTDgUpKeRxQCN3qJPOlow ZPNbUbekl7MOrvYRmkXgGLBKQ9i3HOTT8kLdnJvSeyC23zfpvBniLwtwme58X67V0OWOCR iJj+3XeBCnKVEuzX9cZg5UDG+l6hLZsGl974k6y2K7ddgboGU6mv1+cHNJLf4XLmu7oHkR JMGnTfXwUYKpFKfQxE7UKdVSwqbyKrD02X7DiHxkzZZBgJzG7Q+rWMnk/kpeEMjqeMNbMb 3EtRPQILchNxIfpqTlzm6psLWMyYNi7DP6sLaSmNP2Whi9c2wzHrVBzFQV3MmA== 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 4S5Mgv6RLwzYjJ; Wed, 11 Oct 2023 19:06:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39BJ6Zn3059164; Wed, 11 Oct 2023 19:06:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39BJ6ZYF059161; Wed, 11 Oct 2023 19:06:35 GMT (envelope-from git) Date: Wed, 11 Oct 2023 19:06:35 GMT Message-Id: <202310111906.39BJ6ZYF059161@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: John Baldwin Subject: git: 91086ed84b68 - stable/13 - cxgbe t4_tls: Call t4_rcvd_locked from do_rx_tls_cmp List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 91086ed84b68d6ce44458f9ea8a4a4a3f8347584 Auto-Submitted: auto-generated The branch stable/13 has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=91086ed84b68d6ce44458f9ea8a4a4a3f8347584 commit 91086ed84b68d6ce44458f9ea8a4a4a3f8347584 Author: John Baldwin AuthorDate: 2023-09-08 23:31:38 +0000 Commit: John Baldwin CommitDate: 2023-10-11 15:09:52 +0000 cxgbe t4_tls: Call t4_rcvd_locked from do_rx_tls_cmp Similar to dcfddc8dc091e7688abc8488a0307eba425fa7a2, replace the simpler, inlined version with the full version. Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D41690 (cherry picked from commit 897e564361624411c4e557e0817642e1477f0af4) --- sys/dev/cxgbe/tom/t4_tls.c | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/sys/dev/cxgbe/tom/t4_tls.c b/sys/dev/cxgbe/tom/t4_tls.c index dcdbccb4fe7e..404c6c04eb5c 100644 --- a/sys/dev/cxgbe/tom/t4_tls.c +++ b/sys/dev/cxgbe/tom/t4_tls.c @@ -941,7 +941,7 @@ do_rx_tls_cmp(struct sge_iq *iq, const struct rss_header *rss, struct mbuf *m) struct mbuf *tls_data; struct tls_get_record *tgr; struct mbuf *control; - int pdu_length, rx_credits; + int pdu_length; #if defined(KTR) || defined(INVARIANTS) int len; #endif @@ -1096,16 +1096,7 @@ do_rx_tls_cmp(struct sge_iq *iq, const struct rss_header *rss, struct mbuf *m) } sbappendcontrol_locked(sb, m, control, 0); - rx_credits = sbspace(sb) > tp->rcv_wnd ? sbspace(sb) - tp->rcv_wnd : 0; -#ifdef VERBOSE_TRACES - CTR4(KTR_CXGBE, "%s: tid %u rx_credits %u rcv_wnd %u", - __func__, tid, rx_credits, tp->rcv_wnd); -#endif - if (rx_credits > 0 && sbused(sb) + tp->rcv_wnd < sb->sb_lowat) { - rx_credits = send_rx_credits(sc, toep, rx_credits); - tp->rcv_wnd += rx_credits; - tp->rcv_adv += rx_credits; - } + t4_rcvd_locked(&toep->td->tod, tp); sorwakeup_locked(so); SOCKBUF_UNLOCK_ASSERT(sb); From nobody Thu Oct 12 04:09:52 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bkm31Bcz4xBNl; Thu, 12 Oct 2023 04:09: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 4S5bkm2XQ7z4T8w; Thu, 12 Oct 2023 04:09:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083792; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0OVlMqelgvBdjASTJUCYMItiYICM07LHNQmYVG1/jiI=; b=AXX4q02nuMYb2o5XrFAb0RQ6eLr4bIez7P//4uD4uWbaxdh7nAlWBHvOvvFNzaRqQtjJip QTWKyw3/4f89DU50Crolk/+johBJsjBvaXjRPHki63A/PRyiFtlv+umXNV+daZ4ffZ6iPx 7tqxwx6Eb2kkWkV8GLmXFGceS8ibCfxBEAx5kfN8xYr3vyMrTJ7C3bCAtuTtAGKXiUsktX LZSbH3V9s4lzGh1mMzx8IsBcD4lM1N7m4AjIGLHkl03w+EWIWRYaoKxvqwOCWEBlS2WGn0 uYoJ3ZFO8K331wfJqlEQruTjTyEraD39RB1rYksjCBHKJGEYwNLX1FVoG+LEzA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697083792; a=rsa-sha256; cv=none; b=ssJQcE4hVuOGdYBptkcfuf4ibd4PYT1TtHTUk2iSeT2DCdTNMVscqtiLmGjz6Dwwwhdro9 2cm6zxNby9adzDdSu6YwbV8UpnSHgsAuXUazO+uRU74+rHx7EQ2PnlBBdXe5SVUEgjmIJS RvkP7vuJgtJ700gWIaC9PZKXdLNbbmu3MahJbfUE8Xw2copSuB17PzXkMv0r9Jco59lfB8 RcjUFz14RZnh+Eu7IcDX6njyv5MZcfWOkh4ux4+mqqBezQauQni6Y//CBpFUI1wqBdOw4e Mxw9MZ6OxAdD2mvGSUyoqVjrVz9j689nDr91IFPoTDMFjCqN1WP9Mo8/t9imcw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083792; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0OVlMqelgvBdjASTJUCYMItiYICM07LHNQmYVG1/jiI=; b=Z8bJHkzeUtUbhgXFGm7ackNajjGU3gWFLEVKP4/aW/39kCMmif2rX4zpLZHLpqxjGtEstx PGifYf33N5NmgzLg1qnEzE1sQA2BMw/9WskGxfrCHp6kFUyAU6pXFqtSbA/giSCjMnHAyy O6PJBS3pMnqzS5DzJNaE9nHHzSSyjU0aYbsS5FzDOrpTDFyih52+AiYwyxx/3ao3d4bvM1 DdgWd6SB2yT05TGNKSdCKhDnrJVlutt2Zz0P9J7zxB4ipROsFLv4xF1UyIECWLwO4AEiFH +m9W9h14OZ/wF0x1XkheClAquB0VQQVABVjDhaTLBDLwHG9KbUPkS1rkcpGYpg== 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 4S5bkm1bwjzpxW; Thu, 12 Oct 2023 04:09:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C49qE0058486; Thu, 12 Oct 2023 04:09:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C49qSG058484; Thu, 12 Oct 2023 04:09:52 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:09:52 GMT Message-Id: <202310120409.39C49qSG058484@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: 4bf38105464b - stable/14 - cam/scsi: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/14 X-Git-Reftype: branch X-Git-Commit: 4bf38105464ba4dde42a9d3cf223f152aa980a1b Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=4bf38105464ba4dde42a9d3cf223f152aa980a1b commit 4bf38105464ba4dde42a9d3cf223f152aa980a1b Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:08:11 +0000 cam/scsi: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'kern.cam.scsi_delay' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp (for #cam) MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit e2ad7ce37b1a354750d2dd3567e77f72edeb7e1d) --- sys/cam/scsi/scsi_all.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/cam/scsi/scsi_all.c b/sys/cam/scsi/scsi_all.c index 985547b7ce20..0e42403d74a6 100644 --- a/sys/cam/scsi/scsi_all.c +++ b/sys/cam/scsi/scsi_all.c @@ -9406,7 +9406,8 @@ sysctl_scsi_delay(SYSCTL_HANDLER_ARGS) return (set_scsi_delay(delay)); } SYSCTL_PROC(_kern_cam, OID_AUTO, scsi_delay, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, 0, 0, sysctl_scsi_delay, "I", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + 0, 0, sysctl_scsi_delay, "I", "Delay to allow devices to settle after a SCSI bus reset (ms)"); static int From nobody Thu Oct 12 04:09:53 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bkn4WHbz4xBQ6; Thu, 12 Oct 2023 04:09:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5bkn3mvzz4TW1; Thu, 12 Oct 2023 04:09:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083793; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4o9W0YQ/PKo5PQw70IEV/FeBbzCO1s95nrIXZdRolgM=; b=ai4+WaMsoDFV/4Yx0CLJtIc3HUx2J2k6rHNAjwuUn2sv+tJsPa0RhfEAL0LU5Hvul8GLXy /JYUW4m3/+9dpzDwft+ZY7lf/GjISAVeVrxM3EspUzx+HXjghp463WUQ5sYkbcBlwxuiLd nr7Y9K/40I2227eL8Ii1GWdAKO/M8dHipDu8jJJzKmTr0sJnHN21entFf7vD/fDANa4dam ytu7rlOfiM2mWMg0g40vtiWQ9qni+WyUAw5ivf/7/KD8+fyIkWSGdRz9mNkUj8CPFG23UL WdWj+ghTz6273FxMSMKk7aSx/u9/S79+VL044fQ1VuSsf41/R2z/K7Vj0H+4iA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697083793; a=rsa-sha256; cv=none; b=Q1ozjg401QuL+4t8hEKAMhcjDsYxt3+okmmYjUoXONcewIpOdY/FAChwwiNH16S3NrkX66 aOikh9HrD658UtGrwLgThmDr60dKaIxKK4rkL6GGtFaBYdbvy5a46r7vMcUYLe/oIIlSBu Gvk1DUgzNUieODfvuZ4FfhixxUhZo6du3WisKwQfFHw3qe9UNoIXWirwLBFBve23A8eMsg Ed45htsSHcvA5eP7qxgHNQm13bZDHCvgtVQgXLJYY7RtAf1pShFej8M66/BtAwyz33S6LO LiNrJZdo56ooHfHQRRFmlU8K93Qig5U+fCN89qUJsI48Hzv7Ttaz+oPEtxyOQA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083793; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4o9W0YQ/PKo5PQw70IEV/FeBbzCO1s95nrIXZdRolgM=; b=pSD/CSNp9dzwJ2VvfGVql49mMkU8IoYNVBG0LNDHfyFGwSYr1b3hKZJY+51Zd1djqNtebT bi4t4bi0yxFfyuQFJ2WSlKILne9eN8seLUa6hOYTUtq4IcIRtDnDaYHi5N2UYcw2SK8n8r BpU3LXmhXJaL8GYtcdR+/aK4mq5ytgioHNolKhxtgTDXgJbcAUABan1CAWQHYdpi3jnrPJ /B0zk4BnmrGtBQ/9LZSJSlLfBBSls3tlbq2s4qu9OkVoSN3+nNLxsVUnxhSv23L4Ap2Vaq sCl8xFnF8hYNYs8mZcF0bbWpRxFmq0rbV5yUix6qQWFKkK019KCJUcLI+dFNgg== 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 4S5bkn2rmkzpnv; Thu, 12 Oct 2023 04:09:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C49r8C058537; Thu, 12 Oct 2023 04:09:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C49rpm058534; Thu, 12 Oct 2023 04:09:53 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:09:53 GMT Message-Id: <202310120409.39C49rpm058534@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: 0de3d5316cbc - stable/14 - ddb: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/14 X-Git-Reftype: branch X-Git-Commit: 0de3d5316cbc8297c61952c392e4b9d58b538b99 Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=0de3d5316cbc8297c61952c392e4b9d58b538b99 commit 0de3d5316cbc8297c61952c392e4b9d58b538b99 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:08:18 +0000 ddb: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'debug.ddb.capture.bufsize' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 0eb2e197896e2ec8a45730b61eeb77d5431af69f) --- sys/ddb/db_capture.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/ddb/db_capture.c b/sys/ddb/db_capture.c index 98c6e806187a..b4e598bf45cc 100644 --- a/sys/ddb/db_capture.c +++ b/sys/ddb/db_capture.c @@ -165,8 +165,8 @@ sysctl_debug_ddb_capture_bufsize(SYSCTL_HANDLER_ARGS) return (0); } SYSCTL_PROC(_debug_ddb_capture, OID_AUTO, bufsize, - CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_MPSAFE, 0, 0, - sysctl_debug_ddb_capture_bufsize, "IU", + CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + 0, 0, sysctl_debug_ddb_capture_bufsize, "IU", "Size of DDB capture buffer"); /* From nobody Thu Oct 12 04:09:54 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bkp56j4z4xBF6; Thu, 12 Oct 2023 04:09:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5bkp4Xktz4TJX; Thu, 12 Oct 2023 04:09:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083794; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bvLqMzXyjQOWdlYto9vAPyeEWo8ZtYbi9sA1jhN1FFc=; b=oZWwTORPH168bTDBzbO1HkfQmHH5iaVEIwxojASgL8zqrAHYN4Udd/t9NR+wAqb7DSJizV JEs1xjQK42YddIg5JRcMjohO4NAo/apO1iX/nXjFco5wGm4e2st6gGGnhB47P7Ve9k+0ro hOPxHJg2BqXCwtpc1vyPuSSj/UWTVb3s/g9dTdp5VzGedGXVb4EmeGgZs5mpWGx7/36S3K 7G1T8bIi8M/aYILC7+0umROu+LobLOdwK0Cm3H5j0Vr1MDRF3Smmc77rDfjLIg25o2VIil DZW+j0lRSvjjav2q4+qgyqVX5EUwCmoVhOQ4bw1WEobQEVSiKVW4eYC6ulkqfw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697083794; a=rsa-sha256; cv=none; b=Vqy87tqxxNr3y8/r1cZyURGPzAv3hZUbW46Sb6k9fePVeDvX0u3i+mI4YsNsubAZGK6Xdc E/AEMjm4H1lxfI180etBk4o1XWl9FjCs3ngmL40K/UiunMziTDzhQ5Cb7+mEAzomDpWvZx ZS7QMNDOLrPJIIO1ND3dquY9qo8REyW0pYFLBV7AIIT0SQ3bFy7josvqF4uXYgFjydgNQ1 emB5PcrDDp5+11MBK2s1M0cBP4+JadNySWUmTJpAi5AkNmHBqkBs4xH91DYvTFqzmrjZfA CH7Yv6JfcVpKdaCesLQ67MDP/6jD1bRYzqf76rgmS8KJzOcu/6Q1bT2PowNifQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083794; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bvLqMzXyjQOWdlYto9vAPyeEWo8ZtYbi9sA1jhN1FFc=; b=HpCShKmTb4rBfq9JbNO9+33R2yGNqTBwxbycuGqY8onK9eHFQjZ/HgzELsyIoZcOUvix3v p1o1xBcLo3dvQ7z04bAL1rVvhwp15sMw2BYOwtAa3QH2N2Pyvz7aLg+sGs1CpBXWfI0CuJ 8EFrtPkS/HpUkbaPWtYKwN8mFMpK8NbVuQ4FtE6jci7r1TGwGFrOURSll/ZzCfi7RebzYV 2LUG8dGabIDVXGv0Q+Nypa7EmnW/lpZnBSm1XZhTGS6T8OxItk7AsH/jJKEhBI2QmY/0uq MJvJm12jQyaux3955nFXT6qHgo/8h0D6s67l0QAaeP7n6BOlBu29wTlHBjx4jQ== 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 4S5bkp3fP7zq0f; Thu, 12 Oct 2023 04:09:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C49srK058589; Thu, 12 Oct 2023 04:09:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C49sa6058586; Thu, 12 Oct 2023 04:09:54 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:09:54 GMT Message-Id: <202310120409.39C49sa6058586@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: 3133f4d9dec4 - stable/14 - nfscl: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/14 X-Git-Reftype: branch X-Git-Commit: 3133f4d9dec495275120f920c0939b2752ac3d4d Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=3133f4d9dec495275120f920c0939b2752ac3d4d commit 3133f4d9dec495275120f920c0939b2752ac3d4d Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:08:19 +0000 nfscl: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'vfs.nfs.iodmin' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 95c01e9b329406699e89907167b5c3c9effbcbca) --- sys/fs/nfsclient/nfs_clnfsiod.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/fs/nfsclient/nfs_clnfsiod.c b/sys/fs/nfsclient/nfs_clnfsiod.c index 5dc1d5643591..f4f97a8646f0 100644 --- a/sys/fs/nfsclient/nfs_clnfsiod.c +++ b/sys/fs/nfsclient/nfs_clnfsiod.c @@ -123,8 +123,8 @@ out: return (0); } SYSCTL_PROC(_vfs_nfs, OID_AUTO, iodmin, - CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_MPSAFE, 0, sizeof (nfs_iodmin), - sysctl_iodmin, "IU", + CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + 0, sizeof (nfs_iodmin), sysctl_iodmin, "IU", "Min number of nfsiod kthreads to keep as spares"); static int From nobody Thu Oct 12 04:09:55 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bkq6R3Kz4xB9T; Thu, 12 Oct 2023 04:09:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5bkq5f4cz4TZm; Thu, 12 Oct 2023 04:09:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083795; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BpFcwm/kIHzqEETe5BwozBdGCVqOP9VNEchKOw3LbTY=; b=LnG2i1fbDGDoB5o0k2wx+6VwkNEH2Cv0iC8LJL1o10B5CRnLeXARpiPqeSz2VUHTYoKdZn d0Xhrs3vymdXJPzFljm7ZeKyqkURDHKrYHcHLRzSdeVUSr+DVuWw6yhwFzTJIafJDj9Q08 maKUGptQdItiqAd21T3q/pBF/rvPxHn5JQeWApm7RV8ELfvVC+cgT4wtDzzeL6JmrCGGC9 wSBKkUKPqGVCGt5OUysCsKVxAFd2l0H0s0O74+z3N54MWTUSPLR/3LTUj+eaKfHvTTtq7q rWhJmWmaRX61TAU8usddFLWBWF17ONN4oxPlnedFGGrhtI8lEtrKAaAsmBuOTQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697083795; a=rsa-sha256; cv=none; b=LxlLg//5mr5JafM4Ha8d3/dBkZkQodQ32nh+sCyjbSopD1AQgZ4FK82D5PKaDNRwwLtN+l km9aFN5/ArEW29vGPnG8waVO5xgMJ+JDdOJ3atOirLOKnG7sF96DllZEYDeJU+uXzs6Xk0 eXgT/Jn5tUQUUP/MVGlpYeV1+Vp6QW2K1zhZJ2Q9Eq2Evs+4LaWtG3/4k/bxaMwSS1OR6e zz6mK8e4Ims8OMtj2WALBdXX9N6gtP6jtwYQ0/JxmNAEehc38Ko4X06xm/EAgzvzsChqOL 0piDs181Vx7LTOwEc7UJZ1tdzCH23jC70dc0tMu3/i+WniamkckSvDuKJN+30Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083795; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BpFcwm/kIHzqEETe5BwozBdGCVqOP9VNEchKOw3LbTY=; b=Dvsb2jNCo4U5HBbaX9UWUCEHhPYwRNKpPNLaBHkoqFJiPPK/2r2MJIbiXXaYgNRF2VYsKp CnYJ1LrMJ4cA6qf+/PsJ40J93w8shlgy5kgRnGf+jGkLAlFZRXHGedaiBJqbOXTV7Zqr8R 0HtBBhgRpA30gSGcDJ+r0ooutT5yJu8+znx+C5xXOmZVWOarsTjx7r4xctg3OOw2giRbSa dLD9l/iWs5ey06Q34hqkwHGM6fdPvXf2FL+ITIvys7meFWkf1cxz5/5LS8gL4ipeKH6pV6 4BgNdP6sS2msGUXqu1bIxeCh6LmjEZfFwjr77tZYYipmCmQi8i5ctYhL7lBnHg== 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 4S5bkq4hhhzq0g; Thu, 12 Oct 2023 04:09:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C49tsZ058645; Thu, 12 Oct 2023 04:09:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C49tQI058642; Thu, 12 Oct 2023 04:09:55 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:09:55 GMT Message-Id: <202310120409.39C49tQI058642@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: 9eac775b415b - stable/14 - x86: Add sysctl flag CTLFLAG_TUN to loader tunables List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/14 X-Git-Reftype: branch X-Git-Commit: 9eac775b415bf54080a98a9cf62524b8a6817595 Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=9eac775b415bf54080a98a9cf62524b8a6817595 commit 9eac775b415bf54080a98a9cf62524b8a6817595 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:08:19 +0000 x86: Add sysctl flag CTLFLAG_TUN to loader tunables The following sysctl variables are actually loader tunables. Add sysctl flag CTLFLAG_TUN to them so that `sysctl -T` will report them correctly. 1. machdep.idle 2. machdep.idle_apl31 No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 149b9c234b00ff902718e1f76c809609a5465198) --- sys/x86/x86/cpu_machdep.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/x86/x86/cpu_machdep.c b/sys/x86/x86/cpu_machdep.c index 868e6e2bc365..6062b4e85e16 100644 --- a/sys/x86/x86/cpu_machdep.c +++ b/sys/x86/x86/cpu_machdep.c @@ -688,7 +688,7 @@ out: } static int cpu_idle_apl31_workaround; -SYSCTL_INT(_machdep, OID_AUTO, idle_apl31, CTLFLAG_RW, +SYSCTL_INT(_machdep, OID_AUTO, idle_apl31, CTLFLAG_RWTUN | CTLFLAG_NOFETCH, &cpu_idle_apl31_workaround, 0, "Apollo Lake APL31 MWAIT bug workaround"); @@ -802,7 +802,7 @@ cpu_idle_sysctl(SYSCTL_HANDLER_ARGS) } SYSCTL_PROC(_machdep, OID_AUTO, idle, - CTLTYPE_STRING | CTLFLAG_RW | CTLFLAG_MPSAFE, + CTLTYPE_STRING | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, 0, 0, cpu_idle_sysctl, "A", "currently selected idle function"); From nobody Thu Oct 12 04:09:56 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bks0xFsz4xB9W; Thu, 12 Oct 2023 04:09: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 4S5bkr6ZYdz4TpY; Thu, 12 Oct 2023 04:09:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083796; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Lx7YmMcwmm3H1+sSI1cOEWVvhEzIKXymduHq0kubEUM=; b=TJt1Bbs1UcK8pwmTVFmnTecZiIcEgo8xTqGJG81zEZHIeT5K82epU1uEeplxHjI666KvM6 jhes6myNiVQuevQrpnnsk7S4VWfW0NG4v3MlM9UNadK+cg8cjl8qZWzxuXVNVHC1Ap19M+ mMX1vCVCqNaOCZENEhJwk8ySS3m5XHJ0j/fv0/QPRltRflx5rV69Q1uXCHuZnGTkUBTk2e iNVKsh+qOtv+ZFDWH94aJiNxSOhIC9AiN5GDntBUKprrKa38pi2Ftu20Grf7+rba+nORny +McEuUXCtYbGCF5onYgcv5NLUV5MgRUnxWmEfp7WCnw/zxucyyR5gKQin8itbA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697083796; a=rsa-sha256; cv=none; b=jqJC9KsRhXh1NrH+JyL2JfD2ojS7UkMsrQkANyIBP6PUn+a0tVmu5FOU14xj+E+Z7z8yNW pfYG1vIvSaf36cK7rzGtJQMTVuk1IGqDVxS83o4aTjM5z2Js/zBShU5hnmRXQHth5ez5WJ 6vaa3c+x1cCJXlJkmYkXqIsArnTGzfljHDhupp1gqSk2oFZ7Tg899eUEge/BIHDXTb9Bjw ECNsNfcww+r+IRCJi71nizVZvSUKVOjdR+jxFAyJeiChlP7zfWcrm5FjEFoX6augzVOpj+ A2Q0VCOioP9X/xyAki1dvrYReqIIDyOJJii8CPa76Vnei3ofVgcsCMFjQ06tuA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083796; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Lx7YmMcwmm3H1+sSI1cOEWVvhEzIKXymduHq0kubEUM=; b=SHJLtMCkCQ2+k+lzAJSzBGCoZJbsbwfqxx9cysLc3FNxDmGHGhJo2boJC8v+Z2aitacnzV zPPflJ6Jsw6mfr1C/3kOD8bpNRItEnF1KGPRFWWRUt3N4Jso3mumWaV3jdxYHTjnO0mEPe lNY0mLBIS0MBjGJVnuunRQtuyPgQ7r/244zQ92JeEzhmdOX73vPbgbpiVxh5AWKd99Ux9W TPHEEcI+fkeYooe5z+EgK85LhLKVz0fPe0uWazwV/yNCUFrmg0JmramKyL6jwDQFXAxCnj 9sK2PEyQsGRfMqkvYYN/IxnYfO9+ZTp25p0+sIKYJlVVk3q6eR62EdtjGXpjQQ== 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 4S5bkr5h40zpjd; Thu, 12 Oct 2023 04:09:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C49upK058701; Thu, 12 Oct 2023 04:09:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C49uD9058698; Thu, 12 Oct 2023 04:09:56 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:09:56 GMT Message-Id: <202310120409.39C49uD9058698@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: d9aa72334782 - stable/14 - fd: Add sysctl flag CTLFLAG_TUN to loader tunables List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/14 X-Git-Reftype: branch X-Git-Commit: d9aa723347825418c742164c3e9a77d1e4b6943d Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=d9aa723347825418c742164c3e9a77d1e4b6943d commit d9aa723347825418c742164c3e9a77d1e4b6943d Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:08:19 +0000 fd: Add sysctl flag CTLFLAG_TUN to loader tunables The following sysctl variables are actually loader tunables. Add sysctl flag CTLFLAG_TUN to them so that `sysctl -T` will report them correctly. 1. kern.maxfiles 2. kern.maxfilesperproc No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 2af5ce5b5efb0cf6514acdc4a8b4058221641c39) --- sys/kern/kern_descrip.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c index 35046c856d54..6ed824e229d6 100644 --- a/sys/kern/kern_descrip.c +++ b/sys/kern/kern_descrip.c @@ -5090,10 +5090,11 @@ DB_SHOW_COMMAND_FLAGS(files, db_show_files, DB_CMD_MEMSAFE) } #endif -SYSCTL_INT(_kern, KERN_MAXFILESPERPROC, maxfilesperproc, CTLFLAG_RW, +SYSCTL_INT(_kern, KERN_MAXFILESPERPROC, maxfilesperproc, + CTLFLAG_RWTUN | CTLFLAG_NOFETCH, &maxfilesperproc, 0, "Maximum files allowed open per process"); -SYSCTL_INT(_kern, KERN_MAXFILES, maxfiles, CTLFLAG_RW, +SYSCTL_INT(_kern, KERN_MAXFILES, maxfiles, CTLFLAG_RWTUN | CTLFLAG_NOFETCH, &maxfiles, 0, "Maximum number of files"); SYSCTL_INT(_kern, OID_AUTO, openfiles, CTLFLAG_RD, From nobody Thu Oct 12 04:09:57 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bkt15gkz4xBHY; Thu, 12 Oct 2023 04:09: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 4S5bkt0WV9z4TmQ; Thu, 12 Oct 2023 04:09:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083798; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b0n9qKhqG5u904dlZZisp8nP+DrYWSF8fVclwHfdyWc=; b=EdJ3QuEBUTWkbOjz82PUGx5AHaPO+w0PZSO4wf+Q2Hk/VZaQHJoleHnAWNhhOb97kU57/y aPXa4sZuUExuNrQKRDCJC2MnFtmVbrKKAdJdRZqK2cCneI8ij7J5w+UxPbJJgw94ytMSR5 4HGvWdKeE+z00Ks/F+P54sGPk2y47sJO4SbqAr5gRfNzw84ZfQKF703KBBh0yvicWAcLsd uNCm6HxartsG2UodVh/HbrJenvKSQFnmU6XFdd9pvT97flO5ElSl1PuZ8U8/SOBTEzWw2o b0ZEsJqqy+/pfJ8cSAwn9iRT3q305k9sGDqlhX/Yr/e3hUGjjmmt01xtB1frtQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697083798; a=rsa-sha256; cv=none; b=uAZZmEgFFNNzXEsARHmtA0CM7xDNiMMgky7eCbktxkmjj8UwnJybvyoqsDBuArv2bG/+7C G4WUgeWayDc09NkhEJxCdKxZx4NNEJEJFV+ERE+O9slMFhEpiRYJoExPwKBa5BKBdWQVc1 5qBH3YPzvufpu0WJxBor7xfLTj6tPsI+C5sOCVscAzDIsXNxfoEG5rWMDpVcTiDPEqtPi3 YrO2mzsg8f/CYKj/8HMpeqS5GUUt1TqWYexyrGoChHyx+AAKkKe+OSWR0UToo5a0qOS2pc gKm8nkdnYNAgSOcx4Cj72hxet46zlN5RopDuZbnF1jvY4g9gS43RBsqUqXCHcw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083798; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=b0n9qKhqG5u904dlZZisp8nP+DrYWSF8fVclwHfdyWc=; b=BlPNut0awnITstKZ0DwgWrU1NZtzD457qJeg71AZ7xRVpybgneUaMcO+6mn9qe6xAFUQuO HG6gbQ+nxBxoxvfYSd3rWEos+oDd3ve1GTZXf20xRqmGTWEgaRjxtN/PsGEz4m36f7SJpq i4aCpQwNP01+cCR2UeBw1kTZy14r5e56ECcEk/di0XyCrP/uJWphutxP/ioIeoiZ2aHAhI 9yTcOjN+Guio1kBGV5TG+BvuZvJ2pmqcNDx3TWjUR1Pt+lsalFDatNuyKAioBlqSO9KLH8 EjTKHJfF2khCAjQwSHxqKnLzOByOzYa2WmOianLJqaPsUC+OEjvY3RiPhgYJpw== 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 4S5bks6kCqzpTS; Thu, 12 Oct 2023 04:09:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C49vgE058752; Thu, 12 Oct 2023 04:09:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C49vIo058749; Thu, 12 Oct 2023 04:09:57 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:09:57 GMT Message-Id: <202310120409.39C49vIo058749@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: b1456fd62094 - stable/14 - mbuf: Add sysctl flag CTLFLAG_TUN to loader tunables List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/14 X-Git-Reftype: branch X-Git-Commit: b1456fd6209474410c031e5e82455588e2b656c0 Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=b1456fd6209474410c031e5e82455588e2b656c0 commit b1456fd6209474410c031e5e82455588e2b656c0 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:22 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:08:19 +0000 mbuf: Add sysctl flag CTLFLAG_TUN to loader tunables The following sysctl variables are actually loader tunables. Add sysctl flag CTLFLAG_TUN to them so that `sysctl -T` will report them correctly. 1. kern.ipc.mb_use_ext_pgs 2. kern.ipc.nmbclusters 3. kern.ipc.nmbjumbop 4. kern.ipc.nmbjumbo9 5. kern.ipc.nmbjumbo16 6. kern.ipc.nmbufs No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 6a88498e53b24d870e066c2a94910ad23dd355eb) --- sys/kern/kern_mbuf.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/sys/kern/kern_mbuf.c b/sys/kern/kern_mbuf.c index 494379f53e7c..0897ac4cc2db 100644 --- a/sys/kern/kern_mbuf.c +++ b/sys/kern/kern_mbuf.c @@ -132,9 +132,9 @@ sysctl_mb_use_ext_pgs(SYSCTL_HANDLER_ARGS) } return (error); } -SYSCTL_PROC(_kern_ipc, OID_AUTO, mb_use_ext_pgs, CTLTYPE_INT | CTLFLAG_RW, - &mb_use_ext_pgs, 0, - sysctl_mb_use_ext_pgs, "IU", +SYSCTL_PROC(_kern_ipc, OID_AUTO, mb_use_ext_pgs, + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH, + &mb_use_ext_pgs, 0, sysctl_mb_use_ext_pgs, "IU", "Use unmapped mbufs for sendfile(2) and TLS offload"); static quad_t maxmbufmem; /* overall real memory limit for all mbufs */ @@ -222,8 +222,8 @@ sysctl_nmbclusters(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbclusters, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &nmbclusters, 0, - sysctl_nmbclusters, "IU", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + &nmbclusters, 0, sysctl_nmbclusters, "IU", "Maximum number of mbuf clusters allowed"); static int @@ -244,8 +244,8 @@ sysctl_nmbjumbop(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbjumbop, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &nmbjumbop, 0, - sysctl_nmbjumbop, "IU", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + &nmbjumbop, 0, sysctl_nmbjumbop, "IU", "Maximum number of mbuf page size jumbo clusters allowed"); static int @@ -266,8 +266,8 @@ sysctl_nmbjumbo9(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbjumbo9, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &nmbjumbo9, 0, - sysctl_nmbjumbo9, "IU", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + &nmbjumbo9, 0, sysctl_nmbjumbo9, "IU", "Maximum number of mbuf 9k jumbo clusters allowed"); static int @@ -288,8 +288,8 @@ sysctl_nmbjumbo16(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbjumbo16, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &nmbjumbo16, 0, - sysctl_nmbjumbo16, "IU", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + &nmbjumbo16, 0, sysctl_nmbjumbo16, "IU", "Maximum number of mbuf 16k jumbo clusters allowed"); static int @@ -310,7 +310,7 @@ sysctl_nmbufs(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbufs, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, &nmbufs, 0, sysctl_nmbufs, "IU", "Maximum number of mbufs allowed"); From nobody Thu Oct 12 04:09:58 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bkv2C7wz4xBLF; Thu, 12 Oct 2023 04:09: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 4S5bkv1cCBz4Tqk; Thu, 12 Oct 2023 04:09:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083799; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vOi6vLieIoGwKB6TUWa2onc8c315zwpPg4G5QBQB8v4=; b=O/JFZf1dwxuwCdTJJmElpkfh6R9VyQlBcdNKBAwXHdvOTBtPUoYYEgI4evGGuCxNlSd+vS quZk6R2WYX6FJhXEpxSoLfCcoBEyen+RCRqYcPKrGgQ08EZbUZQ3OAT3wm/YqVnenp2d2a 6PY3QgWEUutipdijcdUDr1H31dApOeVpD3cTkjxcUCZTYugPIQ6l3k7foCu7oIGrZdWUur wWENhU1Kohr7mcfBTAo5XXwl8MKz+uW6Bi+/diV0ygK/1cbPd2QjLgYmdxSGvL5MGcQJlc FkJuScuSgH3r0CRT7EViUXzkiK0lTbxO4YeD+PC1lMzYXzhP9JZUAn4Ej4WLVA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697083799; a=rsa-sha256; cv=none; b=OzMwsSDUkKdfjp6MC88ygvETBe7fK+ENkUrVEa51mZIfWARVqZzimtAVo9is6TPzzniBUZ cRsVdeneREzvfObaxEMT/hPZB8WNLYK46f2PiTi+oTy74VESn3enS1dxiqJ/WD+70ULWZM 0Nqle9FwozbzmTrSb5+vmbPy8CNrMFkhEQY6WPNPbx7Z+vy6IISGtfZgJDPiuWUziU62BZ 7BT15ydOElc4pNyDS4/TKq36dR0lFmjSR4AOQJjTab2/N1i1CUXu+dq6qfOO/fUlRBo24b BiLRuOGd6mwdzVdQtBUwG+GpCacYgdiCzsq46ERq08DmlAEe2w3TO8e03udv1Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083799; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vOi6vLieIoGwKB6TUWa2onc8c315zwpPg4G5QBQB8v4=; b=tO6gzrfuV0oRugCunO174bornKUIF+X9Jwb6R5GfwfmSP403Ya+H3OlGDHVWtCCCQobA2s aGyPZlDEvW31B6aOVxMgvgJBAO0D7P7M+RxpgqfKOhh8hkdrhpOMsRBbax5ZhHW2iNe+di em8txnJntwoEKi80UcGIsmAeb8n5CRzyXnR/Oy1SvHgUWFxbm1164/T8KS9vPLieUDuQMG EgksfGnrpVhJlSsYCcEkJCESWLN09h3WR1CyJvEho0fvDXqugF1fidBglfZpD3k4H4gE94 Xd8RKATKyX8EFzWhG7+iall0Pn1Uzlx/VZaI04gSpYr1yQkVf3a4lqq1x5p29A== 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 4S5bkv0jKzzpnw; Thu, 12 Oct 2023 04:09:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C49xkb058803; Thu, 12 Oct 2023 04:09:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C49wT4058800; Thu, 12 Oct 2023 04:09:58 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:09:58 GMT Message-Id: <202310120409.39C49wT4058800@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: e4f97a1ec798 - stable/14 - sockets: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/14 X-Git-Reftype: branch X-Git-Commit: e4f97a1ec798d69b8ebf767d0dd2e43fbb1550f6 Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=e4f97a1ec798d69b8ebf767d0dd2e43fbb1550f6 commit e4f97a1ec798d69b8ebf767d0dd2e43fbb1550f6 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:22 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:08:19 +0000 sockets: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'kern.ipc.maxsockets' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 978be1ee5d5fef983b4163955e15c4269c0ec76d) --- sys/kern/uipc_socket.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index 3c7e5c4cb4bb..880dec89245b 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -366,8 +366,8 @@ sysctl_maxsockets(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, maxsockets, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &maxsockets, 0, - sysctl_maxsockets, "IU", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + &maxsockets, 0, sysctl_maxsockets, "IU", "Maximum number of sockets available"); /* From nobody Thu Oct 12 04:10:00 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bkw3BsBz4xB6p; Thu, 12 Oct 2023 04:10: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 4S5bkw2hKnz4TyB; Thu, 12 Oct 2023 04:10:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083800; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=p9HJ36f29NEvw2nlgv3j67FPky2dKLsRYCguTmY3MtE=; b=issabxtAAXbc3DTisExyGb8uqQOnZILhXUEe279ePEcL//NrzJpeoF2WYkbapkdC6LTwJo 41GlF5BUFTiHph09UZM1TwGnPAvXeChI6+9KOkMWQqJ5K1kEA+UPwS/XgfPjfVDIliG6vT XTR/+wvvaIkk7rGPRfNYXI2s9cEwZmSLKSYjGMttaDQ+q9g5qnbdZxNN83HebwDYCbAJWB 1nzK3jN2OApRFZMpduQNqEXXmyIdxX4UUcH5Bjgu/ViTro+fncBRW1bmR1u4ix9Kf+2w84 mToLTUizQqE1fa+Nzy03kUsMR00NhiC8n3qUowW1rP7mvFb4Cun5iF5g+Gz6Wg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697083800; a=rsa-sha256; cv=none; b=JXAYNSc3fXFvkL0c5kW4puM1RtkG074OMjH3JQyBOYYomNaXzrHDgWrY04Lf5SKWfY2Ok0 2xQqwnmIV58cuZCrGyIY0w4YDcreFJZ7ZyZNEGydMvlybzEi9zVeYwj5Q7yAUJ0RJVEud1 +ppcLTKCRMMaVjiM6OR6yN1GlyR29Hq6683q+2PmHF2AkTlUEsxFB7MNlvzqmD/sC2XZOP pTcTrIYjPWLEt+eE6Yn5wU188IDC6lhfrUQ6G/EoMrNR5gaMx3ZpYZtX80BYCKTWJBlheA ga8MtjfT8spTXMVWIWl4Qhh/MzzRojlpJVzR6yLEiKpg7DbC087WHUmbI35wgg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083800; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=p9HJ36f29NEvw2nlgv3j67FPky2dKLsRYCguTmY3MtE=; b=AhzKDhBicfwZRUJB+ev0nPiyOg947IhvBwHnKkuYPAToCsyTHq7ItfPL8ey2cyo2CPLCAh WqLwVutcNMFxZpQpe0nUf0bgYGDVOZwgbEWhCiCdmjnfcI9RmORYtBlQU3xQ3wK9IsAhq0 e/lnz5MsLuhiiX3yXqtaBLWJhon36JGxXGtxoRA7B0rxEN25xgv0EaoMloBjY1paeOGTDR Lp82rRKtlGnoongvmG+LD4TPN3AjaMGMQbVvk5+nPYokv+WcID+ZMtUFpv5oKWn0qFlvQc xQrjnDaNbbkwwGm5T8F0h0S6GfvpJ5HJWpZbWdsD8jk0t7+7CkZlEEOsUuYLvQ== 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 4S5bkw1ScCzq0j; Thu, 12 Oct 2023 04:10:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C4A0KW059009; Thu, 12 Oct 2023 04:10:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C4A05x058984; Thu, 12 Oct 2023 04:10:00 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:10:00 GMT Message-Id: <202310120410.39C4A05x058984@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: 8c4eaac1534e - stable/14 - buf: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/14 X-Git-Reftype: branch X-Git-Commit: 8c4eaac1534e0486bd0fc6816ccb59fc348a5707 Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=8c4eaac1534e0486bd0fc6816ccb59fc348a5707 commit 8c4eaac1534e0486bd0fc6816ccb59fc348a5707 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:22 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:08:20 +0000 buf: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'vfs.unmapped_buf_allowed' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 31b94065300a76e52c26b8caec7256574d64a777) --- sys/kern/vfs_bio.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c index bc09131adb87..56f9d604b9eb 100644 --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -320,7 +320,8 @@ SYSCTL_COUNTER_U64(_vfs, OID_AUTO, notbufdflushes, CTLFLAG_RD, ¬bufdflushes, static long barrierwrites; SYSCTL_LONG(_vfs, OID_AUTO, barrierwrites, CTLFLAG_RW | CTLFLAG_STATS, &barrierwrites, 0, "Number of barrier writes"); -SYSCTL_INT(_vfs, OID_AUTO, unmapped_buf_allowed, CTLFLAG_RD, +SYSCTL_INT(_vfs, OID_AUTO, unmapped_buf_allowed, + CTLFLAG_RDTUN | CTLFLAG_NOFETCH, &unmapped_buf_allowed, 0, "Permit the use of the unmapped i/o"); int maxbcachebuf = MAXBCACHEBUF; From nobody Thu Oct 12 04:10:01 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bkx4JVLz4xB6q; Thu, 12 Oct 2023 04:10:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5bkx2YW7z4V8T; Thu, 12 Oct 2023 04:10:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083801; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=g34GPB3eUPyMYWO57Aq7kskzMuPt1MZTfBKPjL5IZcY=; b=MdLcxx2OwEpqMJkqukXs2Z+12HW874zD05yJ2qEnYlbDD8CH2HRNs14HhvQ87lFKitydFl 9GOYCe9lLzVp8Jlfn5xIOd4ex92f9lDED99aU2J3h3bv2l50AV41cTUf8eOEnh7ZxWcbXt odOJxxNSp8NUgWfzJYiQb36elC2J6GCIcPD4+VxJ1kFVhqwHW77n8wdKMb8Y5s0hAGezNV E9cA2gjG5VCf3lQpChb8k/sp3nHatcBdKpd2Dsk812ynFZ7YtYDuSw8ZPoJT+2V40bKD0a pyRRxnhw1VRRyfX03Iz/f3exLl42KSw140rTQV494OcE5p4VzWCUCGVxOG7EmA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697083801; a=rsa-sha256; cv=none; b=OdV+e7/QYbU5zi67s51etue/ZtqckYjJARcfTtpsW28t6Qka7W0w0r7gS82BDP6prhPlXS XXGQW7M1PHqSnIw+e87iwvp47w+8DaQU8qroJbO6ssTeagwnaFpdDNDqdWVqClyBnm/Er5 HVWETE6+4x+uigQuIQXJq7YFj1zsHHtoqqgzmQYbzEJrVxzMgX+4kmffuZDwMj+/NGJPvN WMDIi9cjouZWTrC17X2Y19PUeZlzhAkmYCviLWkVnzQlYGaXGGx7JwyMkE7QCiW7j2MmKF YyVssHKq364nvarMX+jFI0gPCsxMA/TTK7Buazqf0fh65IA4lmd65F4ObqsufQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697083801; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=g34GPB3eUPyMYWO57Aq7kskzMuPt1MZTfBKPjL5IZcY=; b=ACQmsRLUD3r2cBLuOnPh+w0O6x4zA4EikFYkh2AKURHw/fI6LSCpOpnvJ3i+3Ay6r+6oLu VEaQDXTtcviTcOXq3axnaVfk/IyyuGQFx1BtNtbQVIRKhEmZojSmyLa+G6x6O7Y8OSTR// 5ftnoRex0MNC/GajW9FWZNeogCei2QRO5MYN+3/xiKFIjSGZK9wdhY33mqrP+qUBzTIJhW Xbu1nMyqlcLwgV1tUy2tFeOtQJzgYsVyEjRWK5qim12qIjkpDRto970lKA14yWr2wxArVf hVtjKqStrPyC1q31HHYl0jYhurCwUgXcZPirOeCE8IoU8rmHoVuACDtX/Nev1A== 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 4S5bkx1gPqzpxX; Thu, 12 Oct 2023 04:10:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C4A14K060716; Thu, 12 Oct 2023 04:10:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C4A1BY060711; Thu, 12 Oct 2023 04:10:01 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:10:01 GMT Message-Id: <202310120410.39C4A1BY060711@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: 964a91aac9c9 - stable/14 - proc: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/14 X-Git-Reftype: branch X-Git-Commit: 964a91aac9c99d16294bc76d942de7bcc2a1b169 Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=964a91aac9c99d16294bc76d942de7bcc2a1b169 commit 964a91aac9c99d16294bc76d942de7bcc2a1b169 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:22 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:08:20 +0000 proc: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'kern.kstack_pages' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Note that on arm64 the thread0 stack size can not be controlled with it, kib@ suggested that arm64 maintainers can fix it eventually so let's enable it also on arm64 right now. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 35b3be81f1d9fe38457d9137bef7a2875d24e2c8) --- sys/kern/kern_proc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/kern/kern_proc.c b/sys/kern/kern_proc.c index cccce834e284..2daf39b398b5 100644 --- a/sys/kern/kern_proc.c +++ b/sys/kern/kern_proc.c @@ -161,7 +161,8 @@ EVENTHANDLER_LIST_DEFINE(process_fork); EVENTHANDLER_LIST_DEFINE(process_exec); int kstack_pages = KSTACK_PAGES; -SYSCTL_INT(_kern, OID_AUTO, kstack_pages, CTLFLAG_RD, &kstack_pages, 0, +SYSCTL_INT(_kern, OID_AUTO, kstack_pages, CTLFLAG_RDTUN | CTLFLAG_NOFETCH, + &kstack_pages, 0, "Kernel stack size in pages"); static int vmmap_skip_res_cnt = 0; SYSCTL_INT(_kern, OID_AUTO, proc_vmmap_skip_resident_count, CTLFLAG_RW, From nobody Thu Oct 12 04:20:55 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bzW3Ffrz4xC6R; Thu, 12 Oct 2023 04:20:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5bzW2qDZz4Xfv; Thu, 12 Oct 2023 04:20:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084455; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Q84WQ/DG2ne/XCimBXnIJcScbvpHUWhpoX6c34cAIK8=; b=tSNXx/FP9FtPUrMIrRrycnU4ciqSEoKOM3pwjlQ/Xl5/sBA9yw/XuJPZYKrih8z57J7cMm wIZTgm8L9gCokzDT49dX4O0yqaHjA3Ot88MSgG4t+kuXVVgXrTvFs5W0bOjsPZaSuezJcz A/IKnkWHWAtoZarndWXFvbbl/c3J8HF8AnPksxaTCErmLL5Q2qdSGLgnyzZ53HA9REuv7y zdD+V5lcN1r52yq55Ui5zf+gODd2NNqq3r3nWnE1g7OKgBHrK9p56cyliUAJjM0LGEXt5i o8Msr/gNLZsNuoEm7Jt2SdpsnK4cwOyPyWHF3wD8a8JEeeltauMeYABFF8jkeA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697084455; a=rsa-sha256; cv=none; b=SIkLbub0W1w5cigDBIiJnvYm+NnDw86djAwyQNCd1f4Z+aAoM2eaD/YvQ4ouMmOpTrc8X3 uDcV6ILupqgO/rDDz7ieSIN6X0w5sIfIbM83MT8kAdmW7upvryAUWeYmTNW3WluTOjDEP3 y9kJilkcYbp2nScBB9EtSLk4LnerEzqDH2SuDUArBhhwjpZvMwPbup7QtIi6Zs7JBqfq40 p0HRGQ2OnCq7NpbSOeENJfDN3nXgeLi6HJCo07NrqHCTY24kdHEsXOdbilthIcACzsdKYq 1y5MtD7bi/1Cpek+BUbflQCUojiF7ncSMPBJO9h7y/oAMERJPhjKx+ZeryCU6A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084455; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Q84WQ/DG2ne/XCimBXnIJcScbvpHUWhpoX6c34cAIK8=; b=X9KgihC+fFd+VTfj4DXNCLDX48T+2+sS5jtrJ29lyQwvL0aoKoTDWe/WZ1MoHf4z3YpVqI wOlDjc8x7EfArNutFHowS4yxgIvLheBOjTDoN6QU7APddAxDPRSEmB+IV5cOOWDnjD4Sx9 N3GcxU1zl6VHJWocxlQ4Jlx0vExlS2RboAKm/eshUHAtED25P6CYV228gBcYn25jWniMKm H+mVU3jsJvOPUC39vBMLpdqdL8kJQVp39WppOBvn3QnmZKLJo208Kgyxn439KopCdBZsGr Qe3PPhIx3mITxHDNjtqGDTkIvjZM75XvZzSyqzEgLa7lcyVGU5pcOh1m4B9CKQ== 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 4S5bzW1wdwzpkL; Thu, 12 Oct 2023 04:20:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C4KtZ5086274; Thu, 12 Oct 2023 04:20:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C4KtxP086271; Thu, 12 Oct 2023 04:20:55 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:20:55 GMT Message-Id: <202310120420.39C4KtxP086271@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: 7ac42534c234 - stable/13 - cam/scsi: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: 7ac42534c2343f2fc80feb1702751094d41e6873 Auto-Submitted: auto-generated The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=7ac42534c2343f2fc80feb1702751094d41e6873 commit 7ac42534c2343f2fc80feb1702751094d41e6873 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:19:32 +0000 cam/scsi: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'kern.cam.scsi_delay' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp (for #cam) MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit e2ad7ce37b1a354750d2dd3567e77f72edeb7e1d) (cherry picked from commit 4bf38105464ba4dde42a9d3cf223f152aa980a1b) --- sys/cam/scsi/scsi_all.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/cam/scsi/scsi_all.c b/sys/cam/scsi/scsi_all.c index a59d3047a939..3c5e509c99ad 100644 --- a/sys/cam/scsi/scsi_all.c +++ b/sys/cam/scsi/scsi_all.c @@ -9238,7 +9238,8 @@ sysctl_scsi_delay(SYSCTL_HANDLER_ARGS) return (set_scsi_delay(delay)); } SYSCTL_PROC(_kern_cam, OID_AUTO, scsi_delay, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, 0, 0, sysctl_scsi_delay, "I", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + 0, 0, sysctl_scsi_delay, "I", "Delay to allow devices to settle after a SCSI bus reset (ms)"); static int From nobody Thu Oct 12 04:20:56 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bzX4cZhz4xBr2; Thu, 12 Oct 2023 04:20: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 4S5bzX3wRgz4XlZ; Thu, 12 Oct 2023 04:20:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084456; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CdOf+M5vl/kd22AW4sErzKxoqmKtlBenZw6xwFq//PU=; b=WH5mCjuxbSXRxJ26JA/lN+TklzX1BSNYC30xVHiOChbPF9mrSuHIBu2MLBDWrK9r6fplNy G8N/jMw2ZgR+C4IYaXv0dNXPovd0oIbA/MdzUn/Tlw9FhJv/Ky/PmaGE/fEd06Rvrqhyz/ xLyoAatlyqjsA/frislPidyu66qzkN8jqbYoGAyUr4wjhKpNJmT3IKN4tCOtAKhwSfy7PH j+RCrXq/xkIUMgxUk3hE+lCyEzohwrMuUnHDHvwlUMDZH9nfua12HGBZDbRiaobqt4NpGl S6dhzJb3oVU/CYpJ6A4lIKcT2kIDpPTCVmv+a892ILYcNACF8Mi7EWJsb0gP8w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697084456; a=rsa-sha256; cv=none; b=GVXPNfYrCDQ3U5Va7IO97tWfWpct99xfYNqHOidmjdv6CIsdMNJzbvWH4V471LGNgy9Kji fLK3yyjqY/Ki+ZxKLMoKybPyt9ehX7YZr5UZMbxR/ubmErDgsPjVdLPPWKxeMYHMqXUPvZ nYd4kj7o+CodsrPbTGvPL+jYax00uqjYR07eNNxJYjcNfmAYMVDn10U/zL2Olucduu4bQv A0ODabtaLOxhVa83spTSbmFPxHIXWg+lAX58UIew6Fy/NieHHL5hvdleDghM0ecc8A6oTu HikmROoBQ3/JcSQNyR7Bmqyh6hfvkkuAUVmrbx5Fl8LEqUBTey9BmyUSZAXGdg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084456; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CdOf+M5vl/kd22AW4sErzKxoqmKtlBenZw6xwFq//PU=; b=OOWo2uxuJN2goT4rQuMep/FegrU0PZ4HoPAnMRiiqPRvJDXTIMhvTnLsBLGpepRsT7TQ8n wrsgZxfiFmz6uzVGYebfF0arj3ITh7a/kJosa7en5cIfUyBUuDMnBoRreOXrFbzYVpKxsY rkeEcXAIQiIz9dIXlUd0DTcKqLIbc646zQmNqRnt+7FjgIjhYUnClXwQdauiAYZULaYedH Naqdott1oD//+AYtna1jarZCNyyAqK46hPiP51ZOCsgZGyGqNTQ4lc8/bBKB/fUNgvg+8D ITusw8FuW7ehb9fxsseWSSVaB4iVZfkdeK4PsJ1cYAKzQT9wceV3mSODk24iBw== 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 4S5bzX2y2Lzpn6; Thu, 12 Oct 2023 04:20:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C4KuQD086326; Thu, 12 Oct 2023 04:20:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C4Kurd086323; Thu, 12 Oct 2023 04:20:56 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:20:56 GMT Message-Id: <202310120420.39C4Kurd086323@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: 9edd54537025 - stable/13 - ddb: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: 9edd545370254b30ae4fbaa618b33004e3005bb3 Auto-Submitted: auto-generated The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=9edd545370254b30ae4fbaa618b33004e3005bb3 commit 9edd545370254b30ae4fbaa618b33004e3005bb3 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:19:36 +0000 ddb: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'debug.ddb.capture.bufsize' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 0eb2e197896e2ec8a45730b61eeb77d5431af69f) (cherry picked from commit 0de3d5316cbc8297c61952c392e4b9d58b538b99) --- sys/ddb/db_capture.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/ddb/db_capture.c b/sys/ddb/db_capture.c index 98c6e806187a..b4e598bf45cc 100644 --- a/sys/ddb/db_capture.c +++ b/sys/ddb/db_capture.c @@ -165,8 +165,8 @@ sysctl_debug_ddb_capture_bufsize(SYSCTL_HANDLER_ARGS) return (0); } SYSCTL_PROC(_debug_ddb_capture, OID_AUTO, bufsize, - CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_MPSAFE, 0, 0, - sysctl_debug_ddb_capture_bufsize, "IU", + CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + 0, 0, sysctl_debug_ddb_capture_bufsize, "IU", "Size of DDB capture buffer"); /* From nobody Thu Oct 12 04:20:57 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bzY5xm5z4xC4F; Thu, 12 Oct 2023 04:20: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 4S5bzY4t66z4Xgx; Thu, 12 Oct 2023 04:20:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084457; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=m6gQ2wjn2SELvdDig5OLapK9ZbpeLVfu4BzQFca3hgA=; b=q1BId7k6dqoISL2H8VzyqWPXB80bioH/Owycj/ZtdN+krfqZTEnZXhYxGHVJEMuGg/twbd klcwskcqY2cl/YR8zB5RrdD/CmhRVuKXzIVfjUxBm9Fm1vNs1Yz+uzXq16V04vA0VwlRJ/ /xW5RM4ilXI+K0LNf8DsnBO7k+UR+9Z8zFsqsIyiBtRfe9BVADRlQWq2tC+s4h1hGtmCV7 rLvB5jANDmTv6CYbMB7LYP/b0U/KF9Jbpjn61CemD5mCflNaxB2tR1Lqon1r+ozJ/oQsQ3 6EM9YLtbxcRKtkb24BrZ832BbguN+Xa+O9iY7y2qyPiEbMwKMwn/H7/4lMPxwQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697084457; a=rsa-sha256; cv=none; b=Qs9dU7PVHBidYSWh+5Up75sPVjce9jSvlZNqmHapgVM2oTumwNscuD2PK3L2eyFchuJIPp na4uTLZRNziei42tcqPf2EV0nljO8vglU9bftM+ZKlTmhYG3NT7DlWTe91IwIfJ40qMc0U E2EWE28fs5V4URbfXUUgNxvz0vdIp08kUu4xLxvT3WYeh6qc7L7QRay3E2fZpLUlumds7e cTUmwZoTcNh3WVFNWT5MkE/AN77TXH8viSZ0bhATUFC9btSsu5VfO+LyoWTsB1rjP1DcRX rKe3KHdSDvAxDdKn0OBMy8WwsDDD4ia5cMkkMJZqpGv0UKV9iBxu1jnpRwkFhw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084457; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=m6gQ2wjn2SELvdDig5OLapK9ZbpeLVfu4BzQFca3hgA=; b=M8fs6laOA4TU1cZvdfzlwHdRJUOojIEIQbZowUI+cTgftbF/UgVad4FD8vTLKb6myy6Kmo L4waB3y8geKruOWKxS+gxTllg/Wcwv92FdTavVF25K/Qqc7xMrqBhPw2tg1vJjyrT8cLaZ hKBf4eFs0LG5LOUMfNFnTuhkVAHTzq1krr0SZwz+YaEQvQF9w7TTj8JOrRYTpPxkBhlkBs 4RIZCzhCvhSgp11WRuUyNt4gAvNeO2JWNpFK3P9Vbv7nik3SJGw3g454XTUAbrL3CAZDn2 +IsT8fAokmRS7j6+MHAOoHytuix21o/v7jKi0FNKpmw4nrN9bg4wm9dQcbxjjw== 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 4S5bzY40Llzpy4; Thu, 12 Oct 2023 04:20:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C4KvkF086381; Thu, 12 Oct 2023 04:20:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C4KvTB086378; Thu, 12 Oct 2023 04:20:57 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:20:57 GMT Message-Id: <202310120420.39C4KvTB086378@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: 234919330105 - stable/13 - nfscl: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: 234919330105ef0b06548fb92d411ad1939ac0bb Auto-Submitted: auto-generated The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=234919330105ef0b06548fb92d411ad1939ac0bb commit 234919330105ef0b06548fb92d411ad1939ac0bb Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:19:36 +0000 nfscl: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'vfs.nfs.iodmin' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 95c01e9b329406699e89907167b5c3c9effbcbca) (cherry picked from commit 3133f4d9dec495275120f920c0939b2752ac3d4d) --- sys/fs/nfsclient/nfs_clnfsiod.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/fs/nfsclient/nfs_clnfsiod.c b/sys/fs/nfsclient/nfs_clnfsiod.c index 5dc1d5643591..f4f97a8646f0 100644 --- a/sys/fs/nfsclient/nfs_clnfsiod.c +++ b/sys/fs/nfsclient/nfs_clnfsiod.c @@ -123,8 +123,8 @@ out: return (0); } SYSCTL_PROC(_vfs_nfs, OID_AUTO, iodmin, - CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_MPSAFE, 0, sizeof (nfs_iodmin), - sysctl_iodmin, "IU", + CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + 0, sizeof (nfs_iodmin), sysctl_iodmin, "IU", "Min number of nfsiod kthreads to keep as spares"); static int From nobody Thu Oct 12 04:20:58 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bzZ6Nfgz4xC1v; Thu, 12 Oct 2023 04:20: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 4S5bzZ5w60z4XYB; Thu, 12 Oct 2023 04:20:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084458; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2htvI/8EgTWZEDnR7mclp6aOOH98Frbu9NqO29hyaA4=; b=MUqbdfEAmMzlTEDVV6+AigFISIxq64xX++ArYMGfW3QCp3aP48oOjhjXtWVF7HWSGaap6R MNdUsgdkvFc4DrJLyxX/Riiiaca9sEPoLMLDBbiwWbx7ikX1QcfVC0lIdFJHuVauoSd4I8 05yh2iK3Upmozq4zG1r4bM79l92OvtnX57QN5MP4aciwHcEv/DQdE7rp/iMkgJZbqFm97G uUPH7LbucywNA9bGuo4dRoV7RcdtREgUMSi+sNm4Rpkd1q/wR7FEshGtPoPfGmP0wc4wlQ uhU3D2+SZXyYEJ2xRPfWceVzla5lWYYsW1ZPETTE+jVk9J5UcI0pvqXBw5uSSQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697084458; a=rsa-sha256; cv=none; b=NRQ1dY6fGfkts0s8a9h4yqAnN7Suu9RxPRz3nO9Ee1y6yaqYAXAW7TZLrH9SbqaIYyZOCc ruzAxB/D1Xf4D0789Eh1TSjm/Y18XZh1D4QhkjF3hIOT6pR4S8j/3ZI+xZHqEPcJk6LdIU UYRXWdelIWtGfa7JO2OS/Dqa1bGuaZWIFX+xTFTbvbyIBBfxIryQHEIq8FkEgAIDI8H2IS fv+kPgrECcb7H5NuFrvTk0/rOfE1sVj1Cmqv/8LpdiftiXjRw4rxAwv3ax45MLlIfF30Ag ML4m8XyGLXmndM3Wx9UTspLa7JdEszIRTaHE7IoSGF7Gu4Z5v51YjkUYTqiclg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084458; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2htvI/8EgTWZEDnR7mclp6aOOH98Frbu9NqO29hyaA4=; b=Q9Wd9ahEgq201nyH638c3Q8SjjtAkSFOwTHRqj8Gw3u8mXizYrwcEMTyoG8VrXzttwOjQI 5XzJP+qVfGPu2+q9qyiXmesigEzVOuNBx2JiiffGwA+Dyb5golZT/oshaOrNFTzWFwVAxH Nvccs0pdKuD3AluKdX1ba2OQmXjBJetVqL38YYJVUSKk+OmIDigoS79HSNvgXLiftb+a7e pBL3N4XFzdCvtFTXMIQhUly3o8i6MnFQIvP2OAR2/qYxdDSRjborIb8wvYSLKQm7o5I4Hn zguCx3M/sECy3vp/FkeTY+HwSSOR8yy8GzATleu+israsZ4t2c4Rv/HP8k64Jg== 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 4S5bzZ50bhzq1p; Thu, 12 Oct 2023 04:20:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C4Kw9f086439; Thu, 12 Oct 2023 04:20:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C4KwYF086436; Thu, 12 Oct 2023 04:20:58 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:20:58 GMT Message-Id: <202310120420.39C4KwYF086436@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: cabab5c36287 - stable/13 - x86: Add sysctl flag CTLFLAG_TUN to loader tunables List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: cabab5c36287e07cc2890ef76f7e849f16636164 Auto-Submitted: auto-generated The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=cabab5c36287e07cc2890ef76f7e849f16636164 commit cabab5c36287e07cc2890ef76f7e849f16636164 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:19:37 +0000 x86: Add sysctl flag CTLFLAG_TUN to loader tunables The following sysctl variables are actually loader tunables. Add sysctl flag CTLFLAG_TUN to them so that `sysctl -T` will report them correctly. 1. machdep.idle 2. machdep.idle_apl31 No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 149b9c234b00ff902718e1f76c809609a5465198) (cherry picked from commit 9eac775b415bf54080a98a9cf62524b8a6817595) --- sys/x86/x86/cpu_machdep.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/x86/x86/cpu_machdep.c b/sys/x86/x86/cpu_machdep.c index fea64484dcea..51928805a653 100644 --- a/sys/x86/x86/cpu_machdep.c +++ b/sys/x86/x86/cpu_machdep.c @@ -693,7 +693,7 @@ out: } static int cpu_idle_apl31_workaround; -SYSCTL_INT(_machdep, OID_AUTO, idle_apl31, CTLFLAG_RW, +SYSCTL_INT(_machdep, OID_AUTO, idle_apl31, CTLFLAG_RWTUN | CTLFLAG_NOFETCH, &cpu_idle_apl31_workaround, 0, "Apollo Lake APL31 MWAIT bug workaround"); @@ -807,7 +807,7 @@ cpu_idle_sysctl(SYSCTL_HANDLER_ARGS) } SYSCTL_PROC(_machdep, OID_AUTO, idle, - CTLTYPE_STRING | CTLFLAG_RW | CTLFLAG_MPSAFE, + CTLTYPE_STRING | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, 0, 0, cpu_idle_sysctl, "A", "currently selected idle function"); From nobody Thu Oct 12 04:20:59 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bzc0BhCz4xC6V; Thu, 12 Oct 2023 04:21: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 4S5bzb6JQcz4XvX; Thu, 12 Oct 2023 04:20:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084459; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9ui/ZsD3AU91Y7vYAmBXy/9DX/nk7PVTm+UPOxGdwRo=; b=iE5Qcq2k6944rl1/ih2s8muFME0FSLEAF62LwYsI6fgysJ4ghV+i2pT2oQuNoY4ptMFaHX LI016pNY9lMjuda9c7iewyAqKEla+5Osuxh0m2MHLN0uxsDaLn+qjjp9QXrXbtVCM4VY5O RHAkf1szfzxud6XDviWnl3ohQMFjjFmBX2J/PK4UgoU0pkubHiLNLP6Y590Np2+KVaKZOp 1ceq/xgJsL/eJ3t20x+yKKho/URyZhK8l8z2b67bpeE057mYfd7Z5e4GcvoJkHiBgLoeIw m/O6o3GdKfNZAgX3ABeIrLPW/ZWAMLySk7QMFFctPb256tzPO5kCfPepdSUu1A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697084459; a=rsa-sha256; cv=none; b=UXuqduXQCfRvDXr1hPUlRCHL41Pj3HNAQlucNHKwI3EJkrVgsl7HZGZC0SGwJKCQZMtx28 NGuq3tgS9oiMEavZ1Jkc1KkutpGe1SLdHkcRAljRjBZb6iSlIXdvSnPG2da5GezO6QQ5jr 6o17zUqt0F5FXrJrGdUEarlEjsPhbpuQWXHooOP3P1475TUbUtcACiWEdvCwrDKOZXpMun 2tf+eU57c2c96NeoU2+Ol47Xrzx/U7XCBb4mvtSmg816amu+bKXOLdPOUHGtIEDNBfZztZ 8LL4wALbcPSXlojjAbo/IeTqkTd7JfEoIBuXk/q+663z3j/nmg2eSA8iRBfDpw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084459; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9ui/ZsD3AU91Y7vYAmBXy/9DX/nk7PVTm+UPOxGdwRo=; b=YyRELhh84Fq0UNClSrqTEI1yuv65vgWdjbWf7BCN+JmsDCNvnN/KdxdNQQdpH5QcXwd+mF UYR/qcPTtDMk7GwU/RxO3O3VxLNrmc/2UeDoqvupxofZ711HQnbSBIS3yZp4Z41wh92DEK QuZ9ElwhuNDTm9ubwqkUazhx8/lVAxxoF7SBqchyFP9agGnd2iZ4CsSIVOqNqrWGHYIHv3 MGus+qBqnRCb8z8rF9C2Kwa4N1oVB56FaxfdcjOkqaM1klQ+iWxOsLrClw7A9MtqT2O4lY Gnubtjq0anMdaWgceYIg5KS5fASK6Ckrd1V4nFSVTMKILQ1/CuJ/Bg4mgJzx3g== 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 4S5bzb5M7Jzpq7; Thu, 12 Oct 2023 04:20:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C4Kxvf086491; Thu, 12 Oct 2023 04:20:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C4KxKW086488; Thu, 12 Oct 2023 04:20:59 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:20:59 GMT Message-Id: <202310120420.39C4KxKW086488@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: 4f8eaa24a2ac - stable/13 - fd: Add sysctl flag CTLFLAG_TUN to loader tunables List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: 4f8eaa24a2ac40363ad13101a60ba3516a7ef401 Auto-Submitted: auto-generated The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=4f8eaa24a2ac40363ad13101a60ba3516a7ef401 commit 4f8eaa24a2ac40363ad13101a60ba3516a7ef401 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:19:37 +0000 fd: Add sysctl flag CTLFLAG_TUN to loader tunables The following sysctl variables are actually loader tunables. Add sysctl flag CTLFLAG_TUN to them so that `sysctl -T` will report them correctly. 1. kern.maxfiles 2. kern.maxfilesperproc No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 2af5ce5b5efb0cf6514acdc4a8b4058221641c39) (cherry picked from commit d9aa723347825418c742164c3e9a77d1e4b6943d) --- sys/kern/kern_descrip.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c index dbf4ab1828de..de6bfe8bc1ae 100644 --- a/sys/kern/kern_descrip.c +++ b/sys/kern/kern_descrip.c @@ -5111,10 +5111,11 @@ DB_SHOW_COMMAND(files, db_show_files) } #endif -SYSCTL_INT(_kern, KERN_MAXFILESPERPROC, maxfilesperproc, CTLFLAG_RW, +SYSCTL_INT(_kern, KERN_MAXFILESPERPROC, maxfilesperproc, + CTLFLAG_RWTUN | CTLFLAG_NOFETCH, &maxfilesperproc, 0, "Maximum files allowed open per process"); -SYSCTL_INT(_kern, KERN_MAXFILES, maxfiles, CTLFLAG_RW, +SYSCTL_INT(_kern, KERN_MAXFILES, maxfiles, CTLFLAG_RWTUN | CTLFLAG_NOFETCH, &maxfiles, 0, "Maximum number of files"); SYSCTL_INT(_kern, OID_AUTO, openfiles, CTLFLAG_RD, From nobody Thu Oct 12 04:21:00 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bzd19c7z4xC4M; Thu, 12 Oct 2023 04:21: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 4S5bzd0TbVz4XnH; Thu, 12 Oct 2023 04:21:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084461; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v0pIyTlciJK/qHaR7vZEdEUfLSWhvnZiBfWQkq1JpUY=; b=nQcULb8oyTgnX1UPkw6Jf+rGYZGIBrYkoe7AZoG+ZgFx0bK655NwkkyDYKcuCRnZ7mdeev Tic2+gPZDeIQIRtA92EBMRKuyS4rhlK6nUH4vSnjqXIiPQEuh2HPcPEqys8SxxHblebivq 5jp5R9k4EIN2dNYRKEo0tBjfsskfRsQhIW6rjPEwFiCeiRe6JLdljLkfyNL1mizUT25TKR xBKjApApy80jAKPDlsz+/5zPgOQnJQq6LL2Mm5CWsTUfwcS0P6SATVd0kY0TvuqBAam7R+ TBqnviXe9cKfUiJT+bJbKLKK67trkdLilskObLYghvny5tpjr9lSxAX9GqNFGg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697084461; a=rsa-sha256; cv=none; b=vjTr1f+WVeGpJFU9nTfAIXMAtOcGJF7dXN/FkQNNTl3CeiebkN7EiMZjcdz5NzooPeHa8z hbdhg9y2Kgn7hCpJst3dK9jjsZcHb5lZ7uxBxZzvvgbDkdWTZAP0QKHKZI2TkkCV5rdAuu SpPsUiy9dihhNkDebcAMxPuuW1uZlB8ymNo1PDqTwz3rMWHFiGbQKtFocSx8j4FHfkIVTf g9R53T7h/5/u6DNDt8hAyiqagVCNifKR4S8ubXw4EuAe0rfXt/+34DqLQgHe5CJ1dT7whe 3/lTJkaYUUQ02YBq8ZDFjNkAXYWFr9VB1jg+DqE9kr0O2xohdLVyF0suqj/XIA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084461; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v0pIyTlciJK/qHaR7vZEdEUfLSWhvnZiBfWQkq1JpUY=; b=KxwBVyM2dzTHuXl4kRf0lbwPe4cRhpY10XWgaaEk4O7mFLYX3cU2CIHzlzYG2Dn3C4wTDl OyLLV9S6hDNz6mh9fwW81YLmU7r/gBcThHw2LgZyGugimpJojG3DvzSnxD6dXOJJaMLc9M m8ZnggxyO0xUMmZ5hP9qf0RZ3KOqrK4d9rkYT8Bo+aAbDrxzwdblmB2zlJYqfB3RoqFmQf gnnnZSBfJGUcsX1DB0TPeaDlgUZiHD6ko568qyfLlfVTnpBYWoCL6HaL6wcOEwUe4KvLEZ WLjF4Z2YQK/1qUHoxvhARMRT91xp+qM1CIUTxZZ4d23i9uJAF65KsTufuI4yZg== 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 4S5bzc6c80zpVC; Thu, 12 Oct 2023 04:21:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C4L0iU086548; Thu, 12 Oct 2023 04:21:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C4L0V1086545; Thu, 12 Oct 2023 04:21:00 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:21:00 GMT Message-Id: <202310120421.39C4L0V1086545@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: 0007ba082c33 - stable/13 - mbuf: Add sysctl flag CTLFLAG_TUN to loader tunables List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: 0007ba082c3353f0c545e5dcf328ce30d74c5ab7 Auto-Submitted: auto-generated The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=0007ba082c3353f0c545e5dcf328ce30d74c5ab7 commit 0007ba082c3353f0c545e5dcf328ce30d74c5ab7 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:22 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:19:37 +0000 mbuf: Add sysctl flag CTLFLAG_TUN to loader tunables The following sysctl variables are actually loader tunables. Add sysctl flag CTLFLAG_TUN to them so that `sysctl -T` will report them correctly. 1. kern.ipc.mb_use_ext_pgs 2. kern.ipc.nmbclusters 3. kern.ipc.nmbjumbop 4. kern.ipc.nmbjumbo9 5. kern.ipc.nmbjumbo16 6. kern.ipc.nmbufs No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 6a88498e53b24d870e066c2a94910ad23dd355eb) (cherry picked from commit b1456fd6209474410c031e5e82455588e2b656c0) --- sys/kern/kern_mbuf.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/sys/kern/kern_mbuf.c b/sys/kern/kern_mbuf.c index 3a5d570cb9a0..61f12ba12306 100644 --- a/sys/kern/kern_mbuf.c +++ b/sys/kern/kern_mbuf.c @@ -131,9 +131,9 @@ sysctl_mb_use_ext_pgs(SYSCTL_HANDLER_ARGS) } return (error); } -SYSCTL_PROC(_kern_ipc, OID_AUTO, mb_use_ext_pgs, CTLTYPE_INT | CTLFLAG_RW, - &mb_use_ext_pgs, 0, - sysctl_mb_use_ext_pgs, "IU", +SYSCTL_PROC(_kern_ipc, OID_AUTO, mb_use_ext_pgs, + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH, + &mb_use_ext_pgs, 0, sysctl_mb_use_ext_pgs, "IU", "Use unmapped mbufs for sendfile(2) and TLS offload"); static quad_t maxmbufmem; /* overall real memory limit for all mbufs */ @@ -221,8 +221,8 @@ sysctl_nmbclusters(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbclusters, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &nmbclusters, 0, - sysctl_nmbclusters, "IU", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + &nmbclusters, 0, sysctl_nmbclusters, "IU", "Maximum number of mbuf clusters allowed"); static int @@ -243,8 +243,8 @@ sysctl_nmbjumbop(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbjumbop, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &nmbjumbop, 0, - sysctl_nmbjumbop, "IU", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + &nmbjumbop, 0, sysctl_nmbjumbop, "IU", "Maximum number of mbuf page size jumbo clusters allowed"); static int @@ -265,8 +265,8 @@ sysctl_nmbjumbo9(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbjumbo9, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &nmbjumbo9, 0, - sysctl_nmbjumbo9, "IU", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + &nmbjumbo9, 0, sysctl_nmbjumbo9, "IU", "Maximum number of mbuf 9k jumbo clusters allowed"); static int @@ -287,8 +287,8 @@ sysctl_nmbjumbo16(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbjumbo16, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &nmbjumbo16, 0, - sysctl_nmbjumbo16, "IU", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + &nmbjumbo16, 0, sysctl_nmbjumbo16, "IU", "Maximum number of mbuf 16k jumbo clusters allowed"); static int @@ -309,7 +309,7 @@ sysctl_nmbufs(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbufs, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, &nmbufs, 0, sysctl_nmbufs, "IU", "Maximum number of mbufs allowed"); From nobody Thu Oct 12 04:21:01 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bzf2kRjz4xBnm; Thu, 12 Oct 2023 04:21: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 4S5bzf1TLkz4Xyt; Thu, 12 Oct 2023 04:21:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084462; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+kUYPfx7R6TvviUnk+1ZfxZiiTEr4bgqNKOUA/iI0PY=; b=Ji8S7msedmSdi6mcJE1a/aNQYQkBb6acucueGd17uc46zlEaLaQljdEKeCzpeoII/7/HO9 6MP2y/BmbdygCsICLFxhKLSFF1OvFT6yZ2mnL5LTLH1xZeOZjJsDdDYm/sknJ6Hwfe8ee3 RsbuK26G8ddsTJcwNtgHB3bIEC7omtrdNj2frf8X7vXHa9CcUzwEbqZdbne++U0pduqKUc gEdKhLHJ56U2QWtuc+GR8PxRsIKPWSuYVOkbXDih6eb31h1jCAUpmjG5BIMhekt/HtNHnq 3rpczcyEt452Ensb31X4hhXgxKRyuH5Z0dLocm+C0+ELJw9Nm7yoPNNQXGINZA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697084462; a=rsa-sha256; cv=none; b=jO4JCr310hAA2qUxp54wNM+uH7DFvBwEFtsGBVv9rL4+gknmTZGFM9hiQk/aWdYAoziybJ o1AE34yXcsLPVtvuD473pvdLdr/+EPEJLfyzEOVMa7traf3o/ByzN9ZIRmjFOId43engMH qaEUT2aBOhBWfwHRrgfW//tqvZT3OjCVqoEKxqmzczDFI/AsO+uBJV+AWpLzITStt2gDTs KP8JRuH2BhkMKzBaIguzczDuLdODi33NN5ogQTbEy72F9IFD8FNxjiv4QJIo+SxW2AFS0M a040fIwLAH7z/Egv+vago0YiOgnflQjRH9kmVkqKYATECUTPHeKnuRRXsWYE+w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084462; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+kUYPfx7R6TvviUnk+1ZfxZiiTEr4bgqNKOUA/iI0PY=; b=AuaM03QFx/kQr54R/RwJ9NtI9M5t98mGbmXcPqc1gMLgCryadNIG+yQ7Tb9nLPaPjLleLJ YZPlSivi7Inl3wYzFq/gTRK9WHs/is33y0earSK9s/XdBvJNgS1ujbfaMk/Z0EKgtFtxjX s/x4V0Y7wlcFWiWydAoFs2/NOapcTXkQWY9cQKYIXEAA57Dj5adTSXk9KSavCOdXGL8gWe HUfv3KCnpOdPTHEzvEBrtM5r1TTxCtVoTNXt722kypbLfhUL68U3PFw7Xm3NyxN5fWG7h6 WuWG0s/GARMoxHvzmflNsLiEIPxGH8NLcbSV5J1ltFc5VUjF1+mXpFPgZUvizw== 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 4S5bzf0bYSzpn8; Thu, 12 Oct 2023 04:21:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C4L1nO086599; Thu, 12 Oct 2023 04:21:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C4L1db086596; Thu, 12 Oct 2023 04:21:01 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:21:01 GMT Message-Id: <202310120421.39C4L1db086596@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: 6dbde8424561 - stable/13 - sockets: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: 6dbde842456151de0cec331b99e7330a80ae949c Auto-Submitted: auto-generated The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=6dbde842456151de0cec331b99e7330a80ae949c commit 6dbde842456151de0cec331b99e7330a80ae949c Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:22 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:19:37 +0000 sockets: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'kern.ipc.maxsockets' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 978be1ee5d5fef983b4163955e15c4269c0ec76d) (cherry picked from commit e4f97a1ec798d69b8ebf767d0dd2e43fbb1550f6) --- sys/kern/uipc_socket.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index e5997e439964..bcf0ad2ade2c 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -373,8 +373,8 @@ sysctl_maxsockets(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, maxsockets, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &maxsockets, 0, - sysctl_maxsockets, "IU", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + &maxsockets, 0, sysctl_maxsockets, "IU", "Maximum number of sockets available"); /* From nobody Thu Oct 12 04:21:03 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5bzg5vgFz4xBtn; Thu, 12 Oct 2023 04:21: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 4S5bzg2qk8z4Y8j; Thu, 12 Oct 2023 04:21:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084463; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7P8pmq9I7g96bwTsHR9rzHuFw86EubIqIhjrqnuantE=; b=SoVlheAPp6CRaL6RU4bSB3lHyeS2vRR1ZWvMt7JrqEVXUTCJBZG1H/55hJaHx85HaIGT73 io9ygo1q/2a3QZhwyJjG/4ZYV8uDe/5dOeZgzXGDVQKLje/T+ppVDpDqjkZNRJih39XYBa CLe7udx0AVviKxuOGsEdpnpGOmpLjsOhIZWTk76Z+g8jS6G3neOGHGsM2t7qw0lVS65hb3 OFI+KGGRosRU/L6io1wmjaKfLIP+Dd8b2haI9QbZJNjnimRAc+iw3wscCki/y5ID/p+szi 6ho55G+CzxANoJDaRvYlrm0xz7xq747FpJTzsSHZOW8wJS40QSnauRmiwmi5bA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697084463; a=rsa-sha256; cv=none; b=iJy12C5yBaM4dA6kVPMgt9+qYJsxmuioyoEjedDIBgGW2WT/+V2z+NV9wBLD6E5hslDPLW HAD66efLfOY1sjZ/2Rk0UrLA3sQr/L/z/AHg1UYLny2aLJyLPoO+z/C3Jok00RFvEQVjKe rhcglvvzpgXCZ7kViJ4JQ/vZjvpseuc9HLQNtDYAgGhMuL+Nj7IB1VrBNfS+6F1MDHa6Lx S6TEQtRpENgwd/M95SlIfZA2pvipWhzCP7tmigrnW/ql3Hp0fgSZGw+UBqQAgiQx/WYCEK jLJaLXvj7mjyiZ092iu3ecso5P7zdRZ9BeLizqn3Y9k62nzmtg0I3VSz3CfStA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697084463; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7P8pmq9I7g96bwTsHR9rzHuFw86EubIqIhjrqnuantE=; b=t+4qCexN8FZddbEzIKlc7Nb85wezK4ks4N31nY2gcfnodSI2EgA6fc3i+nUneJUG+Bv9dJ VvEKy6H8oUFvZhQD9LU0hq6eyt3tYSG2SU8aobNU2I561AnewHnStmsk4Yy3m0mfSkWy8+ T5wARhGFFM9NZJ4WRmprrX7yoPOX8MdX9fzuPvWo3V18RlsF6i8d1bitxMLWvIMpj13e46 7YC6ACiVHDG7cPsNajBff/LaGSFafo9oZwimfcgTP1v2m6JXAHRso4dg2rXt2+GqFE4VUp 0DdPrO0rfjF8wr+qLK2EhrXcPedb8nobMZJ7LwMouaRX8ZdLf12JFmKXYxZIYQ== 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 4S5bzg1llKzpkN; Thu, 12 Oct 2023 04:21:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C4L3PT086653; Thu, 12 Oct 2023 04:21:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C4L3iF086649; Thu, 12 Oct 2023 04:21:03 GMT (envelope-from git) Date: Thu, 12 Oct 2023 04:21:03 GMT Message-Id: <202310120421.39C4L3iF086649@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: 5184476107f7 - stable/13 - buf: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: 5184476107f7dfcbc9931a94a91f16c71915bbd9 Auto-Submitted: auto-generated The branch stable/13 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=5184476107f7dfcbc9931a94a91f16c71915bbd9 commit 5184476107f7dfcbc9931a94a91f16c71915bbd9 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:22 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 04:19:37 +0000 buf: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'vfs.unmapped_buf_allowed' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 31b94065300a76e52c26b8caec7256574d64a777) (cherry picked from commit 8c4eaac1534e0486bd0fc6816ccb59fc348a5707) --- sys/kern/vfs_bio.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c index f335f32cdd28..546b6dfb6239 100644 --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -316,7 +316,8 @@ SYSCTL_COUNTER_U64(_vfs, OID_AUTO, notbufdflushes, CTLFLAG_RD, ¬bufdflushes, static long barrierwrites; SYSCTL_LONG(_vfs, OID_AUTO, barrierwrites, CTLFLAG_RW | CTLFLAG_STATS, &barrierwrites, 0, "Number of barrier writes"); -SYSCTL_INT(_vfs, OID_AUTO, unmapped_buf_allowed, CTLFLAG_RD, +SYSCTL_INT(_vfs, OID_AUTO, unmapped_buf_allowed, + CTLFLAG_RDTUN | CTLFLAG_NOFETCH, &unmapped_buf_allowed, 0, "Permit the use of the unmapped i/o"); int maxbcachebuf = MAXBCACHEBUF; From nobody Thu Oct 12 05:10:55 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5d5C6Wr8z4xFfy; Thu, 12 Oct 2023 05:10:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5d5C5vdbz4gFx; Thu, 12 Oct 2023 05:10:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697087455; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bqSZXHoMFrHeQVH3Z/XRXWc6/uJTXkINS5qjIowgQEE=; b=Ew2nGjwWo3AUrRzETscJfJshVLuhCeAkSjFDGZ1xY6SnGapkY3vsZmHIDlFvZ8AGgED3ed /7iPaZRpmAgc1i3dHyS3XvyaIlEniKtzQPkA2ycwoBhQb/TmFQsy7CCv+meemqfW6uOG/6 m3inzmrZu/JBfV4gBrHOCq09iYO2CySpCLrJImbodX6/rsmM+aAcYFLXVJ4JE3xQCtDhIo lKa3TW8vKKmDHBPupZ/iBFa2/FPRHzVtIJxYp3dqqoAq95+Grf5E8vRjMcrjbPFkpRD/kW +X8guuJYdq8bU1nxW22iXJ6AqOqo158SPQt9yQXFsmSQap78eSaXEUO8vmB0yg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697087455; a=rsa-sha256; cv=none; b=bn/2vRSyWN//lRXf8OnvYxk4jz62Tx8AC8lUM77zQ8rnIqFuxn//C+j5rduXzhK1WyIA6G eEvg+jdlA1sETAD0jKxnQdOLvpl2Sv/fdqi77CcyOYY3deVC7KN/PyXMbrHZCQO1NdNxcJ y2hTtArVaCEAWuOXhOESv5amg9S5O1fJUqhcYviH4lYgeltN6rQ9TBcHl01Q78hg7Tde+C 4/wrKxX6zURDSiaET+oskL/r+egR17gOjZBWDkD6EpBiTbDDhPsig/pCoQKhFR011zU0M4 Cg3E81swzJBlcmZyb7nWtbatWEIwzSrmj/C1tz5V3NSzV7eBDF3C4zHGONeMqw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697087455; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bqSZXHoMFrHeQVH3Z/XRXWc6/uJTXkINS5qjIowgQEE=; b=iQQFW9OwyfJXW9Y/cmqDftHRoEkfbcPeTZhkgdXHO6J3fbdeey3ij/PuJZvH4vdlyMOYIV eBOKQH6KXfpvTBw07VpQB5WgByS6cM1j92beQo4r2Achq3wEYxAFyUDcqCxROSkkkYaPmg I4fkrFUZ3880r4whfDQsa+XiuFTwTIBAB6A1NTAumNG4BkQ1/5kXbfhLIF/skcA9i+DeLa eXRwzfaOi9b7mm9rMnuIGlBFQWLJbftsmDuYi/cb6d5om2pQi0P3slwfZK+GykRA4TAttU AQewJ/bjJJQHPD/SiV/6jVg8cFs7yKg59m3uXz9KbIaGBHlXivn31Z3KncUcyg== 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 4S5d5C4yZdzr3H; Thu, 12 Oct 2023 05:10:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C5Atcl071257; Thu, 12 Oct 2023 05:10:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C5AtbZ071254; Thu, 12 Oct 2023 05:10:55 GMT (envelope-from git) Date: Thu, 12 Oct 2023 05:10:55 GMT Message-Id: <202310120510.39C5AtbZ071254@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: e266819e47f7 - stable/12 - cam/scsi: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: e266819e47f742fdff6b8cf8f34a9f53518aef75 Auto-Submitted: auto-generated The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=e266819e47f742fdff6b8cf8f34a9f53518aef75 commit e266819e47f742fdff6b8cf8f34a9f53518aef75 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 05:09:27 +0000 cam/scsi: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'kern.cam.scsi_delay' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp (for #cam) MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit e2ad7ce37b1a354750d2dd3567e77f72edeb7e1d) (cherry picked from commit 4bf38105464ba4dde42a9d3cf223f152aa980a1b) (cherry picked from commit 7ac42534c2343f2fc80feb1702751094d41e6873) --- sys/cam/scsi/scsi_all.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/cam/scsi/scsi_all.c b/sys/cam/scsi/scsi_all.c index 07171b83923f..a7883cc8d68b 100644 --- a/sys/cam/scsi/scsi_all.c +++ b/sys/cam/scsi/scsi_all.c @@ -9243,7 +9243,8 @@ sysctl_scsi_delay(SYSCTL_HANDLER_ARGS) return (error); return (set_scsi_delay(delay)); } -SYSCTL_PROC(_kern_cam, OID_AUTO, scsi_delay, CTLTYPE_INT|CTLFLAG_RW, +SYSCTL_PROC(_kern_cam, OID_AUTO, scsi_delay, + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH, 0, 0, sysctl_scsi_delay, "I", "Delay to allow devices to settle after a SCSI bus reset (ms)"); From nobody Thu Oct 12 05:10:56 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5d5F0KDXz4xFV0; Thu, 12 Oct 2023 05:10: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 4S5d5D6nVvz4gBW; Thu, 12 Oct 2023 05:10:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697087457; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dXXNG232mLUKcRCT0lzrW78ys2hA20qp91+rz9mrE6Q=; b=dDtLHta64q3Mv8M4nTfpZOZCQFDItVlULueTeMKDdXVD8xvPB48oW/dhcAX1T4L213ajH3 pchQr/V4fADT/nmwlDktWNINVYXgkICa8strfjC+lz0Z9gyCKzq5fuSSgdm7Vacj/9MbRl jbZ/Ks0JMg4j3pvFDQdpyVyyqL4BWF3ga8kzumdY06iqiiS4lZQDfkFmttqsE/jYOV52bS JOTiIcBHvCMH2R4GJavmbhvIczs53rM2Sbsa0ZLj+uN53RDrszdfUKOIkK0Qipqj7sScuA Vsr2Swc+vqUvITLZp8RIxJuUTMrxFKh6WDnNuJmruzTfI3AcLpY39V8sJPThxA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697087457; a=rsa-sha256; cv=none; b=MDSsRqSxrdHpNWcnBjrfnwv0KgSRRrVH5tVU9dpeFWVWj/Rnz8Ok/xpupA38rPBSxrilA0 ycohuJiuqwif73Q37KuZ6aCXiHoKH50rSjqmHSHmdpQbok53TjrfJcqtveQUoVD4pojeIN BDBc3juAxwV2IIFp5Q2iBQwZ+SAzPiauNCqILF3FF9dpTFU0gOqyROLR+mhAKbuyE78of9 OqxmemUkrhMpLYqv5RM0HUciTcmWEu2rk2gb6Pzu/vK7OppFAcjMUi9VAF10g7jim2io/s oOsHHCFTQfZPHzxVoW+FuBX38vweVDl6O35XdJNWzxm8GpK2nNBD0GnLsAZc8w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697087457; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dXXNG232mLUKcRCT0lzrW78ys2hA20qp91+rz9mrE6Q=; b=EDU7hzAZ3FwCX77JS/pdAGLPw2loPnv397HOmNcQLSjdJ1b67vGUx4rUBTUZ8+EPB7hokE raJPsD3y8rRtwInzJ9hcqo3i1wzSLskYK9Ij6DTRkRkn1h9vulndSqTFk9RBgb5yIJ6+4y xJfvwmuEVIwFpoS95CrGWbRcYZB/LHeVtfRl5y2gi0qxj29cyvyfK0elGwWjxMg6ORx2vW BbP8RkoWs5B5T04xXPtyv5kPe8Qpn0IgGUOeRgA1+n+94aLAux7RRL7zsNtMTiU+zGAnIs UJh/jSJpDz0gZ+l6Nhkz0Ua9AwnIaoaCSBrD/TSgIOrlO6g7pRTL9ABhXyF7UA== 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 4S5d5D5tkrzqvg; Thu, 12 Oct 2023 05:10:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C5AubY071308; Thu, 12 Oct 2023 05:10:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C5AukN071305; Thu, 12 Oct 2023 05:10:56 GMT (envelope-from git) Date: Thu, 12 Oct 2023 05:10:56 GMT Message-Id: <202310120510.39C5AukN071305@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: 148a0f6bf059 - stable/12 - ddb: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: 148a0f6bf059664f965920aeb1573a1937fef301 Auto-Submitted: auto-generated The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=148a0f6bf059664f965920aeb1573a1937fef301 commit 148a0f6bf059664f965920aeb1573a1937fef301 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 05:09:31 +0000 ddb: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'debug.ddb.capture.bufsize' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 0eb2e197896e2ec8a45730b61eeb77d5431af69f) (cherry picked from commit 0de3d5316cbc8297c61952c392e4b9d58b538b99) (cherry picked from commit 9edd545370254b30ae4fbaa618b33004e3005bb3) --- sys/ddb/db_capture.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/ddb/db_capture.c b/sys/ddb/db_capture.c index 056edef437cd..810760fbceec 100644 --- a/sys/ddb/db_capture.c +++ b/sys/ddb/db_capture.c @@ -165,7 +165,8 @@ sysctl_debug_ddb_capture_bufsize(SYSCTL_HANDLER_ARGS) return (0); } -SYSCTL_PROC(_debug_ddb_capture, OID_AUTO, bufsize, CTLTYPE_UINT|CTLFLAG_RW, +SYSCTL_PROC(_debug_ddb_capture, OID_AUTO, bufsize, + CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH, 0, 0, sysctl_debug_ddb_capture_bufsize, "IU", "Size of DDB capture buffer"); From nobody Thu Oct 12 05:10:57 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5d5G1r8Vz4xFXd; Thu, 12 Oct 2023 05:10: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 4S5d5G0spfz4gY7; Thu, 12 Oct 2023 05:10:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697087458; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=23id9oJCnLNEHftFC2ZNV/0E9rWYDvQbP0Jz4GFvjwQ=; b=xJ+Fho1C8aa1MJ0wblStEWqmzD4Xf3dWVax8NBfxuWNDH8/gupWSRGJ2BnaGyNItnXELem A+qHWkg3eFEv4mCoQ00tLeRPPNkG8l3ujXnwfJT2FB2sU/wR9OoPKMfsD4rQgE226z+ndn vDqnKwMKKiKxur0mB9Gdv7qzWStNjdlMkQp1Y+FLV4thbiPBris7pxP4PJt7qXF+ljhfMo 95p8owlAk6DtcuYQylcHr0rA0/7AJU/0vyUI3m28mbp8GGIH2PfUJFp6SqaqlAm/Ig7txH BvAxPBMG1EjLJAaM2USjFZhtag2FNu/aCp44zNtPvnblRkUVlAMshSml/TYsUg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697087458; a=rsa-sha256; cv=none; b=HW9dGNSDFRdO0XEyosWk7BpBny4CggBgADUWVIpi6TKjRCmiX+Jboya3HmnrCS4jAKaNKY /jBV4kO3hPMfarG4p19Z0c2G9tJ2H8mLTMU2ITI53CLcx4Jli7Mvfs/8GRb8Ma8cmwNZVP CbRQs/ZNuGK26cioP8tep7Jlol6teTZOP2vwYj2TOBUqP8ZbiHSNmJCRJaBpWMlfKVMi0D 9grZ93oDS+VUwLcjL2FgS0ogJvfQnzejD6zmY42ZgMNYfUInEzMq9nWDsyZyzsXFBncx7l b7btHOuld9mJqRb3EQzCXNgzsZiuoxp057WWO9+OTJb+Y0obyAVN5b0OsvWl/A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697087458; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=23id9oJCnLNEHftFC2ZNV/0E9rWYDvQbP0Jz4GFvjwQ=; b=MKhp1fa9vfzW7OVWH3rz8COLt2f2Dvqoxc+oreb/SJUU6sut5g2YJxzBmhs1Fzt67+gmEm ytP0mgTeZoTIerwfbBmXSWwAzWq4jgz3WDCv1/gfKNU5YosENhMCEjrjRFQPSUWcZDrrDe GL46hSiuWon2WX6mWLjbkJvSwovkv4ArRMCLG5AdrOE3XFckvvSwX+XltFNDtYevg7z5SZ aa5VWUYvwJFGl5D+jzoN+zc50Jo6CIU73IlGIKGgaL0K/rZZj0VJH1Xu6HGAllz2kLDoeB lLUjM+jI3rMInaPvN9+W8xjZvT2g2ouXdbKEKM1dedUnzjDf3yUCn0Lf6Jt3qA== 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 4S5d5F6xFnzqvh; Thu, 12 Oct 2023 05:10:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C5Av9k071359; Thu, 12 Oct 2023 05:10:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C5Avoh071356; Thu, 12 Oct 2023 05:10:57 GMT (envelope-from git) Date: Thu, 12 Oct 2023 05:10:57 GMT Message-Id: <202310120510.39C5Avoh071356@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: 4e74b80165b0 - stable/12 - nfscl: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: 4e74b80165b0e465dd37691c2f82a6c997c0ab55 Auto-Submitted: auto-generated The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=4e74b80165b0e465dd37691c2f82a6c997c0ab55 commit 4e74b80165b0e465dd37691c2f82a6c997c0ab55 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 05:09:31 +0000 nfscl: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'vfs.nfs.iodmin' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 95c01e9b329406699e89907167b5c3c9effbcbca) (cherry picked from commit 3133f4d9dec495275120f920c0939b2752ac3d4d) (cherry picked from commit 234919330105ef0b06548fb92d411ad1939ac0bb) --- sys/fs/nfsclient/nfs_clnfsiod.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/fs/nfsclient/nfs_clnfsiod.c b/sys/fs/nfsclient/nfs_clnfsiod.c index 3f0fb777e37b..0675ed1ae404 100644 --- a/sys/fs/nfsclient/nfs_clnfsiod.c +++ b/sys/fs/nfsclient/nfs_clnfsiod.c @@ -124,8 +124,9 @@ out: NFSUNLOCKIOD(); return (0); } -SYSCTL_PROC(_vfs_nfs, OID_AUTO, iodmin, CTLTYPE_UINT | CTLFLAG_RW, 0, - sizeof (nfs_iodmin), sysctl_iodmin, "IU", +SYSCTL_PROC(_vfs_nfs, OID_AUTO, iodmin, + CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH, + 0, sizeof (nfs_iodmin), sysctl_iodmin, "IU", "Min number of nfsiod kthreads to keep as spares"); static int From nobody Thu Oct 12 05:10:59 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5d5H3tqRz4xFd3; Thu, 12 Oct 2023 05:10: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 4S5d5H1YlJz4gRX; Thu, 12 Oct 2023 05:10:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697087459; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SQo3L8DCr8tMY5pxOKm4FIZUOejDGw3bRavJoqsDeNI=; b=JTEhGstgaOK3S2XJHQ4fmIcH8RUepPsei8JE2FXh1FgVP07hKbRFWYIRofWJl2zSQuK4Bv eI37vGQmhI399Nyb38ldMgx6T+nc8VI04Lms3Gk59K/Uqk/OnlygSehBWZORFOJybhb7xH MTNOd9kRdDxEY8DE1NWkR9oYd8jtZ2wFO4sAXRPjXy+gAZDi/yxt/TbO7uCspHLjPBuzq3 MV6/y7OCEhFPSMawzJ+EL6AjHec2tFFhxRCtIXlc8VZMaLJFCasEy/mrUZirn8zhVmHDsm iJRHg/C40qRzpllzqtUGzQH8a8kmPYTZcw9BldVTCy2p7Y6fvUUmbJ2kGwOm6g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697087459; a=rsa-sha256; cv=none; b=h15eE6+I6H1Va2QTGEfylSc/WJknNQ9hXpLmliT/TwzjHoPTjhpjvfM8gESpx7m3hppQtG ebSWAh9lAYCguaEbqJxIGmdxeow2qtmGvNughBSZxnlA0tBmbI9Qmj5q06u1kBjXLcffi5 cD+ywLcgFTL8y7dOmTO8O9pT/6sSvac1eqwKX3KSknFdA3CyU//BhnWfXDBzSTqhKcslt0 hkF84AHdFoGSXyVs62OApNNU1Dhk+M/lqaeQB+qelJOueq+qL+Lcotns60bBSpORbO18DE bRxflEkdGZCEjqxD7JodnJIuO2FKOiV/4XaJlxmZ+Do6XYxM/JEWB5SFpP+wvw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697087459; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SQo3L8DCr8tMY5pxOKm4FIZUOejDGw3bRavJoqsDeNI=; b=a08mfwV+lHTyXrR5wS2d8EIinKsQuCuLU8sJR/M/tlUN7oYtOYGFOGAm944WhPjpL2UKnh f+oJWvfnYNn8yKZiy5o2yKBSkhD9hgG5MYp2V+vRVGWt6SDXEFiTLyHw29OdL7LztVIhh3 a+0TcrYaHj+pdhv/fOUHxxkRuDX5V+f72qAejp/APpBBw9D51DXZLPQZLHWH+9VzfNePKl 4g82IhGxL94bU37IRVJPLI2RlRh2wvzUFjXAGn6h+/1TZZ0B/FFmv0bAypttR/98jHztEx Tc/9j8Pq8Pq/BicwEeBkFHoLUuOrItw/XgHArqZfafw7GXrZ992n92W3RItY/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 4S5d5H0cFyzrND; Thu, 12 Oct 2023 05:10:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C5Axmm071425; Thu, 12 Oct 2023 05:10:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C5AxkS071422; Thu, 12 Oct 2023 05:10:59 GMT (envelope-from git) Date: Thu, 12 Oct 2023 05:10:59 GMT Message-Id: <202310120510.39C5AxkS071422@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: 9d6eb30abb29 - stable/12 - x86: Add sysctl flag CTLFLAG_TUN to loader tunables List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: 9d6eb30abb29ec6b71896b5a8e7c130375fa8549 Auto-Submitted: auto-generated The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=9d6eb30abb29ec6b71896b5a8e7c130375fa8549 commit 9d6eb30abb29ec6b71896b5a8e7c130375fa8549 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 05:09:31 +0000 x86: Add sysctl flag CTLFLAG_TUN to loader tunables The following sysctl variables are actually loader tunables. Add sysctl flag CTLFLAG_TUN to them so that `sysctl -T` will report them correctly. 1. machdep.idle 2. machdep.idle_apl31 No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 149b9c234b00ff902718e1f76c809609a5465198) (cherry picked from commit 9eac775b415bf54080a98a9cf62524b8a6817595) (cherry picked from commit cabab5c36287e07cc2890ef76f7e849f16636164) --- sys/x86/x86/cpu_machdep.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sys/x86/x86/cpu_machdep.c b/sys/x86/x86/cpu_machdep.c index 26423228d5dc..8ea64970a391 100644 --- a/sys/x86/x86/cpu_machdep.c +++ b/sys/x86/x86/cpu_machdep.c @@ -640,7 +640,7 @@ out: } static int cpu_idle_apl31_workaround; -SYSCTL_INT(_machdep, OID_AUTO, idle_apl31, CTLFLAG_RW, +SYSCTL_INT(_machdep, OID_AUTO, idle_apl31, CTLFLAG_RWTUN | CTLFLAG_NOFETCH, &cpu_idle_apl31_workaround, 0, "Apollo Lake APL31 MWAIT bug workaround"); @@ -748,8 +748,10 @@ cpu_idle_sysctl(SYSCTL_HANDLER_ARGS) return (cpu_idle_selector(buf) ? 0 : EINVAL); } -SYSCTL_PROC(_machdep, OID_AUTO, idle, CTLTYPE_STRING | CTLFLAG_RW, 0, 0, - cpu_idle_sysctl, "A", "currently selected idle function"); +SYSCTL_PROC(_machdep, OID_AUTO, idle, + CTLTYPE_STRING | CTLFLAG_RWTUN | CTLFLAG_NOFETCH, + 0, 0, cpu_idle_sysctl, "A", + "currently selected idle function"); static void cpu_idle_tun(void *unused __unused) From nobody Thu Oct 12 05:11:00 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5d5J3XG6z4xFXj; Thu, 12 Oct 2023 05:11: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 4S5d5J2lh0z4gcW; Thu, 12 Oct 2023 05:11:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697087460; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=g6GaU0uLwHqxHdm3XWVmeyp/DlNcYxQCFEWniZ7hvlc=; b=fX+Z+gUWaiwp4hO9CjfInE0EJUVjP6Ij3BY45RyXQbOekW2xxGLA/fQwSdYgpKDUaufRkQ d0I+POWUF/KMXZU0B6/opuUf8uP6vbbzbPdxMtKhGSzIBM1yPZyv4ceXn8r9Bpn3b/Psmh SoW8W73K9imaD1y2qMVUxMeQKf6JgeToDJqufrFwV9Wjfrpn50gQkHb3OHiDZO4l2AFOaI SLcMzJNxhxVLSeh+yd99n8BC8dgvBeUJknuug6P7ea+f6l33CRCazFd5KdDHFCGa70p7eX GBpUfU+jhlNvw3z0F31ZgifJq75PoGUT/ENZlUDyITuX9DnceLHSL+OWXsTSsQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697087460; a=rsa-sha256; cv=none; b=vmJbjT9uM8Gz2rMj6ugQEU3eywH8dya+YWku9XNTdEX9IdXWvVOuWmPf3tgwJGlr7079Pr xfd2EUC1DN+6SJBg6lV1iA/5KYEDKTCN5mq4Hu94g3eAVg6vmHKtYfxhSaFeywv2LUtWTF o2rNLP9O0Gy/NHcr3KfJsHPU5Up1GQh5GdQNWqiPmxkYReHqln2sGnQK44gvuDzBbkBlo4 bws3iRsBfWiZxr31v3sCCscvtGKlYMpwdWUYiFR8txARSLEkomf8VdiawFyQpbZ/FIGfXz R96/Seg2AICteGW6r+2CxVaV0Aevwc00ljvV74KWrZQ/bI2i+1PajcGv8W2wuA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697087460; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=g6GaU0uLwHqxHdm3XWVmeyp/DlNcYxQCFEWniZ7hvlc=; b=V0HY/YaXAAM9/BYOTNq5avsgBwpM2ERl7PcvM40erTxY/xDlbylrL5PhGDfvqk45a5dyBA 69aDnE26vIyRFov4U/6IA66q3q9mAFBQU3OD1L1brUn9wt6lAisrJH3g96sS+cFM1hr1Vh V9hCTc77WCvpvN8v+BhhwgbyLT15A503OFUDxmQkL3JZPo/iN/knPV6h4LZHb9rExFktFZ Juv7QC6Z4MWpW7k9j/kHv/6uetCYqvBi5GWjVce4KeJC0hv9L6vxfYJfyhuGPknnR1txl8 90wFjoRKx4xCe0sHv7Z/sXZyL+pVRUFQsOB2yk/NrraKsCLK68nOxDIzah7GjA== 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 4S5d5J1sbNzqvk; Thu, 12 Oct 2023 05:11:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C5B0pY071493; Thu, 12 Oct 2023 05:11:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C5B0eT071490; Thu, 12 Oct 2023 05:11:00 GMT (envelope-from git) Date: Thu, 12 Oct 2023 05:11:00 GMT Message-Id: <202310120511.39C5B0eT071490@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: 7563e1baf46e - stable/12 - fd: Add sysctl flag CTLFLAG_TUN to loader tunables List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: 7563e1baf46ea69e46201d33a0c4a853b678afad Auto-Submitted: auto-generated The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=7563e1baf46ea69e46201d33a0c4a853b678afad commit 7563e1baf46ea69e46201d33a0c4a853b678afad Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 05:09:31 +0000 fd: Add sysctl flag CTLFLAG_TUN to loader tunables The following sysctl variables are actually loader tunables. Add sysctl flag CTLFLAG_TUN to them so that `sysctl -T` will report them correctly. 1. kern.maxfiles 2. kern.maxfilesperproc No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 2af5ce5b5efb0cf6514acdc4a8b4058221641c39) (cherry picked from commit d9aa723347825418c742164c3e9a77d1e4b6943d) (cherry picked from commit 4f8eaa24a2ac40363ad13101a60ba3516a7ef401) --- sys/kern/kern_descrip.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c index 6e97a1e8e2f5..412d5dc5aed6 100644 --- a/sys/kern/kern_descrip.c +++ b/sys/kern/kern_descrip.c @@ -4144,10 +4144,11 @@ DB_SHOW_COMMAND(files, db_show_files) } #endif -SYSCTL_INT(_kern, KERN_MAXFILESPERPROC, maxfilesperproc, CTLFLAG_RW, +SYSCTL_INT(_kern, KERN_MAXFILESPERPROC, maxfilesperproc, + CTLFLAG_RWTUN | CTLFLAG_NOFETCH, &maxfilesperproc, 0, "Maximum files allowed open per process"); -SYSCTL_INT(_kern, KERN_MAXFILES, maxfiles, CTLFLAG_RW, +SYSCTL_INT(_kern, KERN_MAXFILES, maxfiles, CTLFLAG_RWTUN | CTLFLAG_NOFETCH, &maxfiles, 0, "Maximum number of files"); SYSCTL_INT(_kern, OID_AUTO, openfiles, CTLFLAG_RD, From nobody Thu Oct 12 05:11:01 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5d5K4J8Fz4xFV9; Thu, 12 Oct 2023 05:11: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 4S5d5K3ntTz4gfv; Thu, 12 Oct 2023 05:11:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697087461; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fyC/PlST8/mSIn8TKsps+vo+Jd0IqI0f4vvMVbvJhMs=; b=Ggr6pGY0Zz9IOZroa0rP7Q7eKUPBe1H2Utwlh5y3us2Q+uUbVopsZsaao0jZI86i/LtX0x 6ovcuVNERom1ORZd3OMmezSqIlNdD2nwuGpuBm26uhIcg3uJja8BiaYQtFwoEvRhKkNtrp Sv5No7u9tpRdyGIPixyj3E7gVacwYNQrww9DYTIg9FrW/NcWmMjvkox+prIIZvG21uVp4A Ro6v9Q1pa7cs/01Q8I+Ob02hj8bzFEtX54ziWE277LpIoDayWSsvXk++vL89w+DJLnJJTc Fs9z+/9i49hKqVMmb8AqZR6vg4JlmgL480+JxIwt7VB/RSKnj8LdpvLRjCSnQg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697087461; a=rsa-sha256; cv=none; b=O84DiZg/UqcUC7lteNck/vllmt/b+IAKalOHSFtm8RnCyAaUX8twtxZQvUyo+sd5BIJVyf uo9huzGTW6qsGsG4GpbKAiDjI5XUqL0brYR3V+wlnttrD25AAuTN1NSXzmonvsjRvwT5nG V4M+7Z1iT/56yPf/5gWe+SaSM7S9nBg4EMXFAjG+jjN7mKAaqdyx0MhzsjdIIwJc7KDAhK koTaZRKsiGEbYOLSFDS7CJ5tfSbRf12M4SoFCHVRiLRp0PeTlCNKxVUpHSeFU9TVssPgMa Awf+KGw69m15QvS2ajRs0TreK1KJpvoTumFCUmkMaHGqXs9fahJByBNZwNGMYg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697087461; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=fyC/PlST8/mSIn8TKsps+vo+Jd0IqI0f4vvMVbvJhMs=; b=cjjkfzlXPPyzvsqcX3cdYjIyUxJKV/hHwls05xVtjfjUwB35/nIVvZIX2jIAULDbr3hExL 1RkrQ9DgeEqgqWf+v2UjhWYhJA5HDDpoRAUgUz7NHIaLPgF7M4/JKWSODPK62dGg02DOt9 TDb9Sbw57bod0UN9ZPgwGt0Z6ITMSzCS3N5Oaa2zOctimzg4EShXKPKvdEFrhuKYmVRPS+ 5zqjpN9SHgvYEHRFzESKpM2NeQW2fIbXXXgCTJRz4i4ub5fBX70SouQwhW0cgmuOnujOFe MxHc3zxlb7Ly/VjDeAEJlOlsRkTUclN8OSmHcXwd4z1WB7+D+Ry2Filo1wp3Ew== 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 4S5d5K2t27zrNH; Thu, 12 Oct 2023 05:11:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C5B1Hw071553; Thu, 12 Oct 2023 05:11:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C5B10T071550; Thu, 12 Oct 2023 05:11:01 GMT (envelope-from git) Date: Thu, 12 Oct 2023 05:11:01 GMT Message-Id: <202310120511.39C5B10T071550@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: 8651da955203 - stable/12 - sockets: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: 8651da9552032258fec819728c7fd35b3a92e4d0 Auto-Submitted: auto-generated The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=8651da9552032258fec819728c7fd35b3a92e4d0 commit 8651da9552032258fec819728c7fd35b3a92e4d0 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:22 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 05:09:31 +0000 sockets: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'kern.ipc.maxsockets' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 978be1ee5d5fef983b4163955e15c4269c0ec76d) (cherry picked from commit e4f97a1ec798d69b8ebf767d0dd2e43fbb1550f6) (cherry picked from commit 6dbde842456151de0cec331b99e7330a80ae949c) --- sys/kern/uipc_socket.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index 620d81246062..8ef5bab8cba5 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -366,7 +366,8 @@ sysctl_maxsockets(SYSCTL_HANDLER_ARGS) } return (error); } -SYSCTL_PROC(_kern_ipc, OID_AUTO, maxsockets, CTLTYPE_INT|CTLFLAG_RW, +SYSCTL_PROC(_kern_ipc, OID_AUTO, maxsockets, + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH, &maxsockets, 0, sysctl_maxsockets, "IU", "Maximum number of sockets available"); From nobody Thu Oct 12 05:11:02 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5d5L5Glrz4xFm9; Thu, 12 Oct 2023 05:11: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 4S5d5L4Ylrz4gww; Thu, 12 Oct 2023 05:11:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697087462; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TigzgyaSgOfgovHcyMarDi6AWVEx+hl3uGzIBmK23jM=; b=rpGuSFemygokSlstZ6WZ++PtmceS06NJYa+O8cwQpmjeWiIMksStrEwm6kWMlR452p+XzI VEsvnMKQ+o93naygflqfCF56x+bwzqjcjePhb8WvhVpLmXiDKi606bGFFMG/QJUk78vlvm 08VSsgPGJ/3UQ7EwjygBQFe84x9yOd+BYrGfBNPXmP4v4285e1pgbfPjrSbdKdxIGOnPr4 2nZ/pEJLf9LjHiXduZXw333dZj4wBC8RhDBPu0UiqcMwRlxT5h7d920K2NPSKEDgYzEs6P AvF1oep7/4HyXWujDNSgBXhWmQ5dIggxF2numyOGsruMTZE5nvs9ALtH4YhNLw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697087462; a=rsa-sha256; cv=none; b=LHSTP+cKTuaso14V8ZiHWguCMS7yxLTNWfVSwFjG7vpDCyVGK8+CKMCZNVbTXs9E45HKb6 N6xBAZrAjCUXowclPHb3oiZ2R4eMJ/vDXQUQx+Pi43sjZTd0Cz0bW3Xxg4yAbKvrfmyrKD CwZqZm8dRlK3LOVo7NMT1DU4hHGgdTcfk09wnpwiPUujrzzxx1e3+falVVBlWKDZnoSnrI iKzKOZCRKJM5JlmRtJsmio9bnFAXY6Za0kHu67ECfPOTGR0CRlqvk9/dgzKPMzqFIhvgQP BniO+qJSZLF0rI83bGEPVfomVyTRbgErTq7rzD7poZWrlK7zjBW9QX/w22vyfw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697087462; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TigzgyaSgOfgovHcyMarDi6AWVEx+hl3uGzIBmK23jM=; b=W/TGK9u0Ss0GOA+pO37ygeeu7cDEDDrTvVXhCPpBDmTSP4gLI1AWKzV1mSxLWaYHmE/I2b d/ICHiOTUWTU20VtpHp4EGmMaLntkHKyVabZurcpIefUt4ly8BBHy4ZSQmELnYR2KGC/Do 3VgOgTM0L3b52s/LJn896NX0UWgPc1iAm7KY4/MXW9c18jIquMnvWhBpb9AjWe5ivYVkYW alhQ7qV2MbfyZuQXRvsmzMkstwweSmY4RF3jkAZNc0lLpR5L+1yNPjsRpszm64+NgnjuAv qFOlfxs1IFbmU05nWW3HJFaKu6UHvsYveOGqd9FjRHIOLSYkVLtAtvfCLF4wtQ== 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 4S5d5L3czlzqR2; Thu, 12 Oct 2023 05:11:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39C5B2S0071604; Thu, 12 Oct 2023 05:11:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39C5B2ss071601; Thu, 12 Oct 2023 05:11:02 GMT (envelope-from git) Date: Thu, 12 Oct 2023 05:11:02 GMT Message-Id: <202310120511.39C5B2ss071601@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: 5e5a2ef8585d - stable/12 - buf: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: 5e5a2ef8585da72cbdf192016c9e3d02d047cbe0 Auto-Submitted: auto-generated The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=5e5a2ef8585da72cbdf192016c9e3d02d047cbe0 commit 5e5a2ef8585da72cbdf192016c9e3d02d047cbe0 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:22 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 05:09:31 +0000 buf: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'vfs.unmapped_buf_allowed' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 31b94065300a76e52c26b8caec7256574d64a777) (cherry picked from commit 8c4eaac1534e0486bd0fc6816ccb59fc348a5707) (cherry picked from commit 5184476107f7dfcbc9931a94a91f16c71915bbd9) --- sys/kern/vfs_bio.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c index b1cc595d2887..47a663c5c50d 100644 --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -310,7 +310,8 @@ SYSCTL_COUNTER_U64(_vfs, OID_AUTO, notbufdflushes, CTLFLAG_RD, ¬bufdflushes, static long barrierwrites; SYSCTL_LONG(_vfs, OID_AUTO, barrierwrites, CTLFLAG_RW, &barrierwrites, 0, "Number of barrier writes"); -SYSCTL_INT(_vfs, OID_AUTO, unmapped_buf_allowed, CTLFLAG_RD, +SYSCTL_INT(_vfs, OID_AUTO, unmapped_buf_allowed, + CTLFLAG_RDTUN | CTLFLAG_NOFETCH, &unmapped_buf_allowed, 0, "Permit the use of the unmapped i/o"); int maxbcachebuf = MAXBCACHEBUF; From nobody Thu Oct 12 10:12:32 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5lnF25xvz4ngwS; Thu, 12 Oct 2023 10:12: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 4S5lnF1Z4Yz3TZX; Thu, 12 Oct 2023 10:12:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697105553; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nnCSm8Sx30E9m19Pow+HESoC3zP7uy0FiTKKWb1CvzU=; b=fu7Hsv7DhuyjJbR9oAu7IqQ0xhDuCYpZYGyQayXm7Ejrx38ATKO5APrM9lhvm0K5OPEl/T +lo++jFEnUS8sWAExNaaSfWcKtrrajVSwAVDWKJItdqZjxA7TjoikYDi2kZya3t6/zXaKN 7Ms0m+higEXOLSD3bh+BCfXid+1Z+8yPJch9cUUMZOWy5rI/GgfxPq9ZdKoUTNkla34zGO gnyhB/woq9yy+GP4+AgVSXw5TyqobdHKooNmNvef6ZkEKI5QLdb34u89fcNzv/3meSbAsg CbQYkCPlqRyPDNUPvnweKDis2hWhDcPu62oiMWPm+eEkBIswPj4llBKLDJ/sAA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697105553; a=rsa-sha256; cv=none; b=NXum8EzJAs/VEy+fl0eXdP/iYdZRv7cSnopOmX1I3a66yTfdq9wl03N68ztPwnMoRbRT+q SXJlPrjMy78cJ7RstHorpBYN2TrhD9802y7rau8SmliRF2/Y3nc8yLzbd36/VdaOQctfW3 AEaSWSGzcVsIiEaOHvETHFXuNVs042yaR6QeFG9LHEoOC7cGfSpDP/WVA1oSQ5B2SHmEAL w8OuU467DTNAjdTTgPgH4rCc2+sggjI2EGTy4uDb2RryjWlDJCHUUgUkIgplKhoghCpCa+ 5u1UXoqwNeOk6W0DqQ4CojjOKlUW4V5fHNePLMO9Z5ESaiV87/+/IGz/FMvsVw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697105553; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nnCSm8Sx30E9m19Pow+HESoC3zP7uy0FiTKKWb1CvzU=; b=nQnHN/KHSmP96RhTWU7ArbmWgVwltk7TAQgPCmL66mc9DuVgWehsShg2NOUHztB8q5GLdg bMx343LJNFC1ftfpBa6oGkUM6XXt+Y7twvSzt2xIfEieUxcrQaidK6Urk2yL0B8Q7+Rsp7 9jy57/xTIHnvOoZ2nNM0mDCghUueNiG8CHVgBOmTqJFFZdbFsQbn16iCFeTMm/Dx37JLR4 xZAr6lkYM7qZOGWouHSJcIcdWugnJHhAkxHjoeny9/IV38q2BF3eERF6GAqwx+XhpDeIzN WeRTBcLXy/Nk1ThB1/unhoHbNanlHM7LwTIM4Jn2zct0OzasrjZMw0n91R+YDg== 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 4S5lnF0crTz10f8; Thu, 12 Oct 2023 10:12:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CACWPj072542; Thu, 12 Oct 2023 10:12:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CACWa4072539; Thu, 12 Oct 2023 10:12:32 GMT (envelope-from git) Date: Thu, 12 Oct 2023 10:12:32 GMT Message-Id: <202310121012.39CACWa4072539@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: fd18dc70ceda - stable/12 - mbuf: Add sysctl flag CTLFLAG_TUN to loader tunables List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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: fd18dc70ceda596b1007f1ec81e86c03a3b334a8 Auto-Submitted: auto-generated The branch stable/12 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=fd18dc70ceda596b1007f1ec81e86c03a3b334a8 commit fd18dc70ceda596b1007f1ec81e86c03a3b334a8 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:22 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 10:09:39 +0000 mbuf: Add sysctl flag CTLFLAG_TUN to loader tunables The following sysctl variables are actually loader tunables. Add sysctl flag CTLFLAG_TUN to them so that `sysctl -T` will report them correctly. 1. kern.ipc.nmbclusters 2. kern.ipc.nmbjumbop 3. kern.ipc.nmbjumbo9 4. kern.ipc.nmbjumbo16 5. kern.ipc.nmbufs No functional change intended. Reviewed by: kib, imp MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 6a88498e53b24d870e066c2a94910ad23dd355eb) (cherry picked from commit b1456fd6209474410c031e5e82455588e2b656c0) (cherry picked from commit 0007ba082c3353f0c545e5dcf328ce30d74c5ab7) --- sys/kern/kern_mbuf.c | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/sys/kern/kern_mbuf.c b/sys/kern/kern_mbuf.c index d9a7f30d6557..0130f8f2a324 100644 --- a/sys/kern/kern_mbuf.c +++ b/sys/kern/kern_mbuf.c @@ -176,8 +176,9 @@ sysctl_nmbclusters(SYSCTL_HANDLER_ARGS) } return (error); } -SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbclusters, CTLTYPE_INT|CTLFLAG_RW, -&nmbclusters, 0, sysctl_nmbclusters, "IU", +SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbclusters, + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH, + &nmbclusters, 0, sysctl_nmbclusters, "IU", "Maximum number of mbuf clusters allowed"); static int @@ -197,8 +198,9 @@ sysctl_nmbjumbop(SYSCTL_HANDLER_ARGS) } return (error); } -SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbjumbop, CTLTYPE_INT|CTLFLAG_RW, -&nmbjumbop, 0, sysctl_nmbjumbop, "IU", +SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbjumbop, + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH, + &nmbjumbop, 0, sysctl_nmbjumbop, "IU", "Maximum number of mbuf page size jumbo clusters allowed"); static int @@ -218,8 +220,9 @@ sysctl_nmbjumbo9(SYSCTL_HANDLER_ARGS) } return (error); } -SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbjumbo9, CTLTYPE_INT|CTLFLAG_RW, -&nmbjumbo9, 0, sysctl_nmbjumbo9, "IU", +SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbjumbo9, + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH, + &nmbjumbo9, 0, sysctl_nmbjumbo9, "IU", "Maximum number of mbuf 9k jumbo clusters allowed"); static int @@ -239,8 +242,9 @@ sysctl_nmbjumbo16(SYSCTL_HANDLER_ARGS) } return (error); } -SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbjumbo16, CTLTYPE_INT|CTLFLAG_RW, -&nmbjumbo16, 0, sysctl_nmbjumbo16, "IU", +SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbjumbo16, + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH, + &nmbjumbo16, 0, sysctl_nmbjumbo16, "IU", "Maximum number of mbuf 16k jumbo clusters allowed"); static int @@ -260,8 +264,9 @@ sysctl_nmbufs(SYSCTL_HANDLER_ARGS) } return (error); } -SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbufs, CTLTYPE_INT|CTLFLAG_RW, -&nmbufs, 0, sysctl_nmbufs, "IU", +SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbufs, + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH, + &nmbufs, 0, sysctl_nmbufs, "IU", "Maximum number of mbufs allowed"); /* From nobody Thu Oct 12 15:02:46 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5tD71xQYz4wV20; Thu, 12 Oct 2023 15:02: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 4S5tD71BBJz4ZDg; Thu, 12 Oct 2023 15:02:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122967; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kjy7vsW9d3y2SUSL9T43yqW7qGNsf7mdDZYHB3N0QlQ=; b=jj0/pGbu0k3zGNqLuWKr66rdpoCvm/pgkrOzudYTHM2QfsifX8NpBxYryeR3syvyvt96e2 TLb2Ju3xSPZzky8/ssAL0K41JOySLXeBY+ocquBH2zqaNcT2I0D3vgkeXPGR1LW7/XoYq0 TUfEQHbxxj3YA/UJ19KcaJEQ+gM3wCvcVY3hldLdy/fFdawShxseSyGL1BmK2j9Vwew0Gp 62ZuGSv3QlBOe9xcuE57Dj6KqaekFkCOYopsMU9lpcXXwtL3ML/E8fNPlwO72jepbYw2x9 jXit+Q1uBQgLUUCJ0q5RTfZlwujLBmhREdQPSR2yWIhRuYzCbiJNYbjPC/YNOQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697122967; a=rsa-sha256; cv=none; b=uPfZNu/ce9tlplTiYrYxNKtGFL4B831106M+cd2k19yiCcRarQ3Ng7e/CG0oCaK5QgPtyl 00gqmtpP11CMaIf1rGIDaUf6zXesPdCwX1iqcErmJybM7QaaoP8+BV7fgFtQu2jFaTagij W5j4/ibnOeEChxotf/bgqROm5F7EIr6s1rj8eF65OjIwX6jiqt9w6LjxlBYNDAzIoWds04 7ZpUfX000qnzV3FMq1r0WeOlSY3ZYn9hT5sIsheqhH7fAow3fyRuwkkcsUyalHLXOWeH2C /mDWVMcHJX4xeLPrhjiUu+rnuCRTHku+04zAdLYryaQKeN4aejdbZObZCKyf3A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122967; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kjy7vsW9d3y2SUSL9T43yqW7qGNsf7mdDZYHB3N0QlQ=; b=gloxc6QPWeTcgZ6CHGDxryJdm1lBlFdrx7DQCK9GD/KXsSBQl0cPg09QRp46AN/FuMuACX vk+fQ2jUQSFGQ7n8MUWwutemyiaTsqbwWT8wpkTAwDqrWB7EATQXgjZyHbXyJkp/8q7Ans zSZfDqndQkYSV+Y+ENtMBaq4iZCVL9Pt83RIrN7uzgW+WSayo0gUE6qMQWXllgebNPAXGd Jb53K3zDgNdA0OTRGcwx345hrEqyWsgNj71hNYP/1S8sq4khbT7SeeCaP1prwLhnEwV1Qe m9UbKrlk1+5faMP2t8QKSm4p+tiNU8pFTdDaO7/WmE+I2AxE2CX7nYiflv1s7A== 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 4S5tD70CPVz17xW; Thu, 12 Oct 2023 15:02:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CF2kho056887; Thu, 12 Oct 2023 15:02:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CF2k3C056884; Thu, 12 Oct 2023 15:02:46 GMT (envelope-from git) Date: Thu, 12 Oct 2023 15:02:46 GMT Message-Id: <202310121502.39CF2k3C056884@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: ca40845c3aba - releng/14.0 - cam/scsi: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/releng/14.0 X-Git-Reftype: branch X-Git-Commit: ca40845c3abae897f51733a41dc85beeddea6be5 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=ca40845c3abae897f51733a41dc85beeddea6be5 commit ca40845c3abae897f51733a41dc85beeddea6be5 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 14:59:42 +0000 cam/scsi: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'kern.cam.scsi_delay' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp (for #cam) Approved by: re (gjb) MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit e2ad7ce37b1a354750d2dd3567e77f72edeb7e1d) (cherry picked from commit 4bf38105464ba4dde42a9d3cf223f152aa980a1b) --- sys/cam/scsi/scsi_all.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/cam/scsi/scsi_all.c b/sys/cam/scsi/scsi_all.c index 985547b7ce20..0e42403d74a6 100644 --- a/sys/cam/scsi/scsi_all.c +++ b/sys/cam/scsi/scsi_all.c @@ -9406,7 +9406,8 @@ sysctl_scsi_delay(SYSCTL_HANDLER_ARGS) return (set_scsi_delay(delay)); } SYSCTL_PROC(_kern_cam, OID_AUTO, scsi_delay, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, 0, 0, sysctl_scsi_delay, "I", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + 0, 0, sysctl_scsi_delay, "I", "Delay to allow devices to settle after a SCSI bus reset (ms)"); static int From nobody Thu Oct 12 15:02:48 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5tD832Kjz4wThm; Thu, 12 Oct 2023 15:02: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 4S5tD82T75z4ZFD; Thu, 12 Oct 2023 15:02:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122968; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=G1q9LlPJr4kMSCLvNqCvbbayYm23OBZ9W0F8+dPojeA=; b=cmrgh8foWg4MjnKbuD5bOoyxVt7yOPxf3bI8vDeAo3vV0AZrjIl1DNo/XkXdloT7fyqQpO 1ih+/1u3G0MkNaRKzFmWA9sc6HvOpDiFC+Psg1X22u7tCFaZ+dnJx25uClkKkPZsNn0RJS yrLAvkbRs61chiEVXqygwUX05olrB1zKqkOremPcCCFr2NVLg1Pv8kLhKn9TIIoI1YqNBk O3fuFuvB/ktPODjG6KIJYw0wbI0s0Srl+N+WBnpZC+1CHm9ZaV/3ekVkAne4Lird9jsOd4 qxwQwa1Y1G9yXiDnTmPaYLC6bHTRcdP4v2b86RTjNms21aQyWSjz7mpMzSwNpg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697122968; a=rsa-sha256; cv=none; b=oDT5Cx5K9EPbLh1oXpevsXqvrXja5m9H4YIFV6ueNn8cYFZRehwYEV3QQhkvHlzF2GBFmd cmolI9m+z33qpLROO64XKB6Z+4fELRovzxYrJkAamRAObNLTF/ts9cKKstdZZhubyxjvnM fCAiYxIBuu9iEKjf9lUV92IRoGVVyImH+v70aiN5wuZ+HpzwUQBBkr8asLAi1IHndOoWXg J6Te5Tfd9Q8/Wkiwy30acFhVA7sOuD+kZK6REGLFtbL50iLukHmk+f90xGf2MMr4aVJrQn qe17u4t5FE2JAI8ZsM8WqQU159OWhVyeLE6WTy7iBRjQs+JXMO+MHWvwz6iKxQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122968; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=G1q9LlPJr4kMSCLvNqCvbbayYm23OBZ9W0F8+dPojeA=; b=SyT5Qp2VdFddV7r4GkrOjqi1enqFe47zILE6O5xXYzkt8fU1z5KwxmRQNgtMMxcxunuTRq uMlFlIGNVvtn/A3Zuc7t7EQXpEaBPn0ZCGxVXnSyRpquvcsdQl4NbJCGp3pwV4n7Ge1xwB HWzirKAlsKJqNyI6fb/vENfLNI4veeFud+uUh3mwMnBe/LcYELZyhkx86Fj5wmCDIOJ8I3 g9g2VzUIxwE5QbYaDzseLRjIBO4jfZ2uC2hzWeqA887AE3Mb0o4Fe4LSBf3QRV7ByzXTD/ YJ6WefxFdUTnQsk/FO9zi2TRyTPjrfnTT6pFQnN5km+80n12HciolrKB1o8ljw== 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 4S5tD81D90z1811; Thu, 12 Oct 2023 15:02:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CF2mcH056938; Thu, 12 Oct 2023 15:02:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CF2mvU056935; Thu, 12 Oct 2023 15:02:48 GMT (envelope-from git) Date: Thu, 12 Oct 2023 15:02:48 GMT Message-Id: <202310121502.39CF2mvU056935@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: 654d8b545577 - releng/14.0 - ddb: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 654d8b545577d685cc892c00dc8e4cadaf450b26 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=654d8b545577d685cc892c00dc8e4cadaf450b26 commit 654d8b545577d685cc892c00dc8e4cadaf450b26 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 14:59:52 +0000 ddb: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'debug.ddb.capture.bufsize' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp Approved by: re (gjb) MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 0eb2e197896e2ec8a45730b61eeb77d5431af69f) (cherry picked from commit 0de3d5316cbc8297c61952c392e4b9d58b538b99) --- sys/ddb/db_capture.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/ddb/db_capture.c b/sys/ddb/db_capture.c index 98c6e806187a..b4e598bf45cc 100644 --- a/sys/ddb/db_capture.c +++ b/sys/ddb/db_capture.c @@ -165,8 +165,8 @@ sysctl_debug_ddb_capture_bufsize(SYSCTL_HANDLER_ARGS) return (0); } SYSCTL_PROC(_debug_ddb_capture, OID_AUTO, bufsize, - CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_MPSAFE, 0, 0, - sysctl_debug_ddb_capture_bufsize, "IU", + CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + 0, 0, sysctl_debug_ddb_capture_bufsize, "IU", "Size of DDB capture buffer"); /* From nobody Thu Oct 12 15:02:49 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5tD93c9Hz4wTky; Thu, 12 Oct 2023 15:02: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 4S5tD92vSlz4Z1n; Thu, 12 Oct 2023 15:02:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122969; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aoRo7NVwFO7DUrmHQ+Av9Wqw+VYMQVH23vXzziP1c6U=; b=gc3SBkH3IvEM+VSr+o5yqf6N3jhvCCSrYE9oxFpVzyFWE4faH1bD5RE0GkmQdFJJjpEtYm lyIHuEVq+6DwJ6x8EgHfIO58LCjgFLDiRYgz0e6c6mzb1FAhUNWI4f20rm87jyYOSIV2ue I43MzB7GtbDZJexjtntLA+7o+By03fokkohn2QJwkR4AeZizFdp/U4EZ24stOTqN7pYREf +Wt4yrB2zvHMuPazu1XkgJ8Z7GnxfaZ3MtIaQFVcOH7xYN5uKM3xiH+3mGxUrEqff0HkXf CJk1jSeucWnqec4zrHTnkond+Mc5EIbU2Of8hD6vss7UylCOT6gOak31+qDoEA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697122969; a=rsa-sha256; cv=none; b=hBTeuom8boeQcYFLDxexDyay4DfX3kmxVmx5FmBosE+qW5s25rDiiqWf6xgkUlW4Tc/yyC 6t6nVW+/+aenxsEg5XRgl9ccEc7JLTEJGxRmpo6yt4cHEaqQmQ3+7VBi5TatUIgp52I4vm xfLNTAChQRmmCRS2ymWp0sz9EG07JSQgdgqyPIrSLWpKVaMatuyqqTiv5CoBPzNBnxN0WN xEC2QgIylB4mJkmpNEomQi32obrnkNd2YBBTDuMYV/WTK34uTGsD2LBZ6TrOaDznXFwbsR G4leH6bVxBo8IXKiFoy2vQVAFIa9hML7e3uj1zkkRCJRiR5CdKatcAYvTpdUiQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122969; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aoRo7NVwFO7DUrmHQ+Av9Wqw+VYMQVH23vXzziP1c6U=; b=cghq79KN2NzhJaguVAVu7G5vu7dTx0vjn8yr0peBoOOHlQ8G54jVzlfJwElXrV8s31Iae9 copKVfVQadcCmGCkYkNBQMAo6jycOpPwbP5Jjx9i7yz5tcx47qQPPCKnbqKSU30Zfc66eH sfcZzlblUSltr/N06EgyodJ0BYmLrD7RR66iO6B6Op6yQ6wHznuZsNflRDDytUuqe3xHxe tiS0FT7wdM6XP7ygV0swQz+N+i4e6852Zeljvk+PDrD3WeJD2+fFl4PM9hxjFTvZvfUfel BcSwCAsVGQLgHDZOb2seRdMnE1zxGCdvw20lORa7W5+t+yoo5xMZGcEGimxLFA== 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 4S5tD9208Kz17cs; Thu, 12 Oct 2023 15:02:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CF2neu056994; Thu, 12 Oct 2023 15:02:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CF2nxv056991; Thu, 12 Oct 2023 15:02:49 GMT (envelope-from git) Date: Thu, 12 Oct 2023 15:02:49 GMT Message-Id: <202310121502.39CF2nxv056991@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: ccf8370b8193 - releng/14.0 - nfscl: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/releng/14.0 X-Git-Reftype: branch X-Git-Commit: ccf8370b819377684b4a1e1f21b6d81d1d4c4c4b Auto-Submitted: auto-generated The branch releng/14.0 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=ccf8370b819377684b4a1e1f21b6d81d1d4c4c4b commit ccf8370b819377684b4a1e1f21b6d81d1d4c4c4b Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 14:59:52 +0000 nfscl: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'vfs.nfs.iodmin' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp Approved by: re (gjb) MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 95c01e9b329406699e89907167b5c3c9effbcbca) (cherry picked from commit 3133f4d9dec495275120f920c0939b2752ac3d4d) --- sys/fs/nfsclient/nfs_clnfsiod.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/fs/nfsclient/nfs_clnfsiod.c b/sys/fs/nfsclient/nfs_clnfsiod.c index 5dc1d5643591..f4f97a8646f0 100644 --- a/sys/fs/nfsclient/nfs_clnfsiod.c +++ b/sys/fs/nfsclient/nfs_clnfsiod.c @@ -123,8 +123,8 @@ out: return (0); } SYSCTL_PROC(_vfs_nfs, OID_AUTO, iodmin, - CTLTYPE_UINT | CTLFLAG_RW | CTLFLAG_MPSAFE, 0, sizeof (nfs_iodmin), - sysctl_iodmin, "IU", + CTLTYPE_UINT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + 0, sizeof (nfs_iodmin), sysctl_iodmin, "IU", "Min number of nfsiod kthreads to keep as spares"); static int From nobody Thu Oct 12 15:02:50 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5tDB4YrPz4wTfX; Thu, 12 Oct 2023 15:02:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5tDB3q6Wz4ZK8; Thu, 12 Oct 2023 15:02:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122970; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HEILA2+mQeZNYVGmZQHLXMnQWZ+as7V2TrGcoHDD8Ns=; b=GKtxmTZeFWK2CN4idUa6QUYlETe6NTJlIz/f6ziQr+Af8dciyAEhVY0OWsIQ4c56ALs3Ah MjVe8IYk4hPNpOyeQZdAoQ5VX0Lo/ceQNtywNnZsJCgIouWBqaXxH8Y/+ZDCixZdSggRjO f4ZlQrRb9KF8IevjONVrZbAzgPQ9l2WNVbByo4c12I3Of0f6ItimnUhewB/Uo2f/6nR/xn lDfqkn6DWEcr6tUB1MP7D42C4gjTapsEUOx+1GUn6Em1QIUhV5xOhvuUaFgfEXEwZsJNON qDJjMbl1tdAbxmBWTjqhPI8ApjlB79V5tcTvIAPxvCtI5WknzauZdFk8yXE7Zg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697122970; a=rsa-sha256; cv=none; b=aX3GGDMcNMhs5cfuoI6VbiHWaMVeO9G21JcsVpHPoHhu3IwZHJotYj/OP86P2uJeehfeFR uCcGNgPQ/hynuKKi1hNZb1ILGMrWw0UH8BEXB6TCtkzPWPVS0x1e03r54Vt7mfTVcFgqQo 2FyGnbklW2Vh60eoIxGKGSxMO62R8Ms5VExgxe5SQHOvHsmGXXrnOEUHFa5uJEFVEl0yGj ae71qCv4gtoitigFQP7nRV3fry46GQooQzoTp/VdTijEN6gOYzwpPs+UbjygMNYA1AkipL SlLNa8l3KJj/bYJS7yxU/kbMpslA+sfaiDqQBb1a2Y4hcRZ4lQmlq69A97pAGg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122970; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HEILA2+mQeZNYVGmZQHLXMnQWZ+as7V2TrGcoHDD8Ns=; b=P36t0HQwj7BWz2Ya+T1dIRcp3ozsrw8I3PdU90Md4v6YmY7ur1qLTxYdN3D3J3jAKfPkQu rvKR7JyPHANL0u9VGlmMVrn/QR0icC1/zHY4qyqg3mV/qn9V5L7u5WpZuG3aM4SlH58ydQ iRS/55xwizSBBdvKTgoOWHxj0xcyKqZn6iP/ScGJgiLPLFcmu38m7+zTaVs7OT6Px85Gzo keMjZ2LVrPTJ2v3sD4A2Wxi5s70GOmnKydRA/2we2EQ58x5qHIsE0c3zrezVHpwFY746wM HoDT3D4NA54g/6vi8N7z00S9R1rUT+pa4AjKvTqVTUC+PfJ7yz6NgnjuYLS1TA== 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 4S5tDB2nRdz187s; Thu, 12 Oct 2023 15:02:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CF2o9B057046; Thu, 12 Oct 2023 15:02:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CF2oNp057043; Thu, 12 Oct 2023 15:02:50 GMT (envelope-from git) Date: Thu, 12 Oct 2023 15:02:50 GMT Message-Id: <202310121502.39CF2oNp057043@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: 5312436fef0a - releng/14.0 - x86: Add sysctl flag CTLFLAG_TUN to loader tunables List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 5312436fef0a2f4b07717bbdcaca1350934d30a3 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=5312436fef0a2f4b07717bbdcaca1350934d30a3 commit 5312436fef0a2f4b07717bbdcaca1350934d30a3 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 14:59:52 +0000 x86: Add sysctl flag CTLFLAG_TUN to loader tunables The following sysctl variables are actually loader tunables. Add sysctl flag CTLFLAG_TUN to them so that `sysctl -T` will report them correctly. 1. machdep.idle 2. machdep.idle_apl31 No functional change intended. Reviewed by: kib, imp Approved by: re (gjb) MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 149b9c234b00ff902718e1f76c809609a5465198) (cherry picked from commit 9eac775b415bf54080a98a9cf62524b8a6817595) --- sys/x86/x86/cpu_machdep.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/x86/x86/cpu_machdep.c b/sys/x86/x86/cpu_machdep.c index c80284cf2987..38e053832608 100644 --- a/sys/x86/x86/cpu_machdep.c +++ b/sys/x86/x86/cpu_machdep.c @@ -688,7 +688,7 @@ out: } static int cpu_idle_apl31_workaround; -SYSCTL_INT(_machdep, OID_AUTO, idle_apl31, CTLFLAG_RW, +SYSCTL_INT(_machdep, OID_AUTO, idle_apl31, CTLFLAG_RWTUN | CTLFLAG_NOFETCH, &cpu_idle_apl31_workaround, 0, "Apollo Lake APL31 MWAIT bug workaround"); @@ -802,7 +802,7 @@ cpu_idle_sysctl(SYSCTL_HANDLER_ARGS) } SYSCTL_PROC(_machdep, OID_AUTO, idle, - CTLTYPE_STRING | CTLFLAG_RW | CTLFLAG_MPSAFE, + CTLTYPE_STRING | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, 0, 0, cpu_idle_sysctl, "A", "currently selected idle function"); From nobody Thu Oct 12 15:02:51 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5tDD0Ch7z4wTc2; Thu, 12 Oct 2023 15:02: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 4S5tDC50Z5z4ZXB; Thu, 12 Oct 2023 15:02:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122971; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PZM+7K3hS6tyThHz2jCKt2vbjqmMaa4Yne50ZfJJ9HU=; b=sU2571BtLMA67t2YNU7UpniFpzK8ImK/FRQ1BOexu4lsAJ4alQV4D6o15Pw+2mq31ISwHm d8uCPAnggqbOzhGYhX8gENYX8xX4o0VmauO9yOanZEy/bELe0zHQyKVGFW/A2CmMOGJT6C g3D01HGv9K+z3wy54Y1e1TAr3uIDvG+isTwY5M95L7AZCzrGNW5j9A5gYbiS7UekPuqgPL oVAvXcZajv/skSCip+rUEi6quBBIyxRDbMYc0ufs9Npd4xHQuIifZJuRG5VE+MAoRyk5pw 1dOuuZSEGotclDKRisPF+47ayQe/I40b2uvVRKA0Jd5k40Pv18TIxLQdTVV+Xw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697122971; a=rsa-sha256; cv=none; b=eO7tRw/YH7VZMNzjkU4+kCoW68PZHjK7LiztsZUFzHxTdFaPKio1xsIbNUI9ToS5SGDmLm 3zNeBDuTGWETPI8uI/Mqbsvg4BkvxeBhNz1WDTJE0AZ/S5X3/qUNwBe3Mz94REJqpeSvGW sNFYYRWJjlZiZeGd8mk6ruJjI481EHSO74kEI4X8RwRLEL+N01Mohd9K72yhTVBxkx+f2j W39TdkUnK77MeLDy2g5XAta5NgwTSeQZd0EiRZ+qRrJQG5zV6y5xN2ZI/WmKJkZIuxDoNi Sa8pZf/uHOLK5ptwJFhEV/SgfhNyPg+zZE/FTU3jphnV0oTWu2rV3hFx78jpJA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122971; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PZM+7K3hS6tyThHz2jCKt2vbjqmMaa4Yne50ZfJJ9HU=; b=Hsdihk1wrgNQX14rlpbzAq84kiq7whbwnxI/5HsuZH7ZDAcG41J9L+Sfl9ycUdM+eexPF9 lI9KXcC6hO6qvfR3fO22etPUrj/xKCbVtCC9jHaUAWLm89h0Zl1IJm9scmq64dT6iGKzDY gZvHuulG7qf+PZD/qlychwJWESvIvdUnwYGQxAR0/EUdNj8I5h1cCzj/DpjyXen6INRFOc UaBFmUhR5q7PAW4X8+3lz0Samo7e7iWlkqwk107LvSzEFQdLCmviWvFFEEnt/ekYtuPRh2 V70gm7ANEjTbpTc/aRJ2MGgP0DkElWgk/Y3cU2riCcDao7Cmg4oKZFOF7kLAOA== 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 4S5tDC43v4z17xX; Thu, 12 Oct 2023 15:02:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CF2pFv057097; Thu, 12 Oct 2023 15:02:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CF2pa5057094; Thu, 12 Oct 2023 15:02:51 GMT (envelope-from git) Date: Thu, 12 Oct 2023 15:02:51 GMT Message-Id: <202310121502.39CF2pa5057094@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: 4bf2e34a35ec - releng/14.0 - fd: Add sysctl flag CTLFLAG_TUN to loader tunables List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 4bf2e34a35ec10eaa43a3eb867f8e8fd34974264 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=4bf2e34a35ec10eaa43a3eb867f8e8fd34974264 commit 4bf2e34a35ec10eaa43a3eb867f8e8fd34974264 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:21 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 14:59:52 +0000 fd: Add sysctl flag CTLFLAG_TUN to loader tunables The following sysctl variables are actually loader tunables. Add sysctl flag CTLFLAG_TUN to them so that `sysctl -T` will report them correctly. 1. kern.maxfiles 2. kern.maxfilesperproc No functional change intended. Reviewed by: kib, imp Approved by: re (gjb) MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 2af5ce5b5efb0cf6514acdc4a8b4058221641c39) (cherry picked from commit d9aa723347825418c742164c3e9a77d1e4b6943d) --- sys/kern/kern_descrip.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c index 35046c856d54..6ed824e229d6 100644 --- a/sys/kern/kern_descrip.c +++ b/sys/kern/kern_descrip.c @@ -5090,10 +5090,11 @@ DB_SHOW_COMMAND_FLAGS(files, db_show_files, DB_CMD_MEMSAFE) } #endif -SYSCTL_INT(_kern, KERN_MAXFILESPERPROC, maxfilesperproc, CTLFLAG_RW, +SYSCTL_INT(_kern, KERN_MAXFILESPERPROC, maxfilesperproc, + CTLFLAG_RWTUN | CTLFLAG_NOFETCH, &maxfilesperproc, 0, "Maximum files allowed open per process"); -SYSCTL_INT(_kern, KERN_MAXFILES, maxfiles, CTLFLAG_RW, +SYSCTL_INT(_kern, KERN_MAXFILES, maxfiles, CTLFLAG_RWTUN | CTLFLAG_NOFETCH, &maxfiles, 0, "Maximum number of files"); SYSCTL_INT(_kern, OID_AUTO, openfiles, CTLFLAG_RD, From nobody Thu Oct 12 15:02:52 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5tDF2BwJz4wV2f; Thu, 12 Oct 2023 15:02:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5tDD63GZz4ZPZ; Thu, 12 Oct 2023 15:02:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122972; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Gw48cyzDTZWRDFYZPNFsMz5YBA9mxlPVbqoRwTd81v8=; b=VvEPIVHobdqLh28NfgC76s2Hdi6a1owphV0UcE21Yyy1MpCODgpXcrszpsxNqah63jverL 6gPIBINo6siMkeaPlXI7HXry1DhIbnnYJc3BJc5QTg+J/lokNhuPb8yuknNgLA4D4EzCCY gw+IEUEGubixDsInXgNbMe9TcHRXjfBdXTbzblzdpZBlLt4yqkTt4C1JYPjM1vjTe0t5GL nuBcwrZJNiOp4jiWEZjbOyxmg0o33uQs59kWTeE+f8O6Z0UTjggaDPVqHwC6yxFtem0Cbi Tcc+XeAuPDfJqapcjg54HW9TxWftjv/uztxe4q9plsohtAtJ4kzC/vYL/lXd/A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697122972; a=rsa-sha256; cv=none; b=xuk14DxEfcS1yE9W9yeg2D4DAwjKMxGBilUxRldEG7wCVSXCSI6r4WrcXUyj+hUUeKd7dG yKgAx4R7+r+sMC5CsJtX2zji5st1RHbFgy5ydSH9VA4W+7xKDcl1c+JxA4z500idmo5jdU vJwMIhsKcV9hF57l3zpQcFY+bvmYz2al2x0QD+jZVIR2eCplOqU+mxCdwN7Mrk5IqRufV7 ozyLKsj1G8E4W40fYI7jRTP6jHqsIAJL5NZ3f8aw13Z2o3pr9o/+uunqMvLQBWqd1RWyKS xfTeA1HILMRhb/x8BTuCuh4ruaqisf/VkQJX/YKfZrFB7qylD1B5KAjpH8J/Qw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122972; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Gw48cyzDTZWRDFYZPNFsMz5YBA9mxlPVbqoRwTd81v8=; b=Vc8m5aT9gIbSS6UemK2PkqoXGVsLJFhwm8R0a0YosZNMqqZ49m+cKxs7K1bGVey1ySIRKV wkg8u8um8UIrnrJJvQN1d7QkA1KzvHvmfOvCk2F8UvEBbajg7GUuCod3OLqOwjL0vSPrat mbib62E6U1/w0DXARkLmBA+YijUHsj+C3FRx5zSg2+poRNMTZtqgAVROBNcWseigbktIan O/aKihkYlJPzjcLLR/aP/jO8X1JhbrRhmi0bkwNhnFwNjrO4NdeG5Len9Ur13K/ywz5qXN tJjXTYv6imBcZf/Huvu8ssfipqy/Y3IB/jgaoBdAhhou3yOSmBB1prDrpc/ETg== 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 4S5tDD54RVz17vD; Thu, 12 Oct 2023 15:02:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CF2qXI057154; Thu, 12 Oct 2023 15:02:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CF2qXn057151; Thu, 12 Oct 2023 15:02:52 GMT (envelope-from git) Date: Thu, 12 Oct 2023 15:02:52 GMT Message-Id: <202310121502.39CF2qXn057151@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: 718c395417de - releng/14.0 - mbuf: Add sysctl flag CTLFLAG_TUN to loader tunables List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 718c395417deb93d16fe81087670fa9a4d0cadea Auto-Submitted: auto-generated The branch releng/14.0 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=718c395417deb93d16fe81087670fa9a4d0cadea commit 718c395417deb93d16fe81087670fa9a4d0cadea Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:22 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 14:59:52 +0000 mbuf: Add sysctl flag CTLFLAG_TUN to loader tunables The following sysctl variables are actually loader tunables. Add sysctl flag CTLFLAG_TUN to them so that `sysctl -T` will report them correctly. 1. kern.ipc.mb_use_ext_pgs 2. kern.ipc.nmbclusters 3. kern.ipc.nmbjumbop 4. kern.ipc.nmbjumbo9 5. kern.ipc.nmbjumbo16 6. kern.ipc.nmbufs No functional change intended. Reviewed by: kib, imp Approved by: re (gjb) MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 6a88498e53b24d870e066c2a94910ad23dd355eb) (cherry picked from commit b1456fd6209474410c031e5e82455588e2b656c0) --- sys/kern/kern_mbuf.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/sys/kern/kern_mbuf.c b/sys/kern/kern_mbuf.c index 494379f53e7c..0897ac4cc2db 100644 --- a/sys/kern/kern_mbuf.c +++ b/sys/kern/kern_mbuf.c @@ -132,9 +132,9 @@ sysctl_mb_use_ext_pgs(SYSCTL_HANDLER_ARGS) } return (error); } -SYSCTL_PROC(_kern_ipc, OID_AUTO, mb_use_ext_pgs, CTLTYPE_INT | CTLFLAG_RW, - &mb_use_ext_pgs, 0, - sysctl_mb_use_ext_pgs, "IU", +SYSCTL_PROC(_kern_ipc, OID_AUTO, mb_use_ext_pgs, + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH, + &mb_use_ext_pgs, 0, sysctl_mb_use_ext_pgs, "IU", "Use unmapped mbufs for sendfile(2) and TLS offload"); static quad_t maxmbufmem; /* overall real memory limit for all mbufs */ @@ -222,8 +222,8 @@ sysctl_nmbclusters(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbclusters, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &nmbclusters, 0, - sysctl_nmbclusters, "IU", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + &nmbclusters, 0, sysctl_nmbclusters, "IU", "Maximum number of mbuf clusters allowed"); static int @@ -244,8 +244,8 @@ sysctl_nmbjumbop(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbjumbop, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &nmbjumbop, 0, - sysctl_nmbjumbop, "IU", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + &nmbjumbop, 0, sysctl_nmbjumbop, "IU", "Maximum number of mbuf page size jumbo clusters allowed"); static int @@ -266,8 +266,8 @@ sysctl_nmbjumbo9(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbjumbo9, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &nmbjumbo9, 0, - sysctl_nmbjumbo9, "IU", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + &nmbjumbo9, 0, sysctl_nmbjumbo9, "IU", "Maximum number of mbuf 9k jumbo clusters allowed"); static int @@ -288,8 +288,8 @@ sysctl_nmbjumbo16(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbjumbo16, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &nmbjumbo16, 0, - sysctl_nmbjumbo16, "IU", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + &nmbjumbo16, 0, sysctl_nmbjumbo16, "IU", "Maximum number of mbuf 16k jumbo clusters allowed"); static int @@ -310,7 +310,7 @@ sysctl_nmbufs(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, nmbufs, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, &nmbufs, 0, sysctl_nmbufs, "IU", "Maximum number of mbufs allowed"); From nobody Thu Oct 12 15:02:53 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5tDG0HxRz4wTl9; Thu, 12 Oct 2023 15:02:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5tDF6nt4z4ZMT; Thu, 12 Oct 2023 15:02:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122974; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Sr6sXkrk0/s4MGeHq+ke4YTZut1/a1o1+st+UDrC9EE=; b=Bvq9YDuPnOqHtThCNMDImjJCxvx9vmR7H8ipoeX+po7Vy92b9G0c8Nj0KdZMSF/kHzBwAj /B3L0WLhzso1m9xJNNRvxdfPaYfBcYq2c8Z7ztaq0PnaKuq13AL1/M6jz+qZQaIaDqplcr ma5VmqFDjrPu+hxQeAvVKcPzEV3btewXF4kJVPx73BpXG5XSdIwZIzf9r0l9QAXPDmtyHK 3QnX6pPV2ImyY1Bmc4CnxnuTD20zhUAQOuCFhI1s/AMOnFZAWdQh6BCsT1UVf2EHMgXVDK IlqVuq3GAfiSf1hTLhHe1Sjq8InddA58rCLMi4nXOKtIP8js2zj6tDq3Fmq2Yw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697122974; a=rsa-sha256; cv=none; b=f3mpXVZyrZKDix+MLMJOHAWPMNZwV+zUPO4De/F28RV4/yzTbiJ31ZpeVZ1cpTZCCrO9Cv r8RWtS2u2mGMa1PnKQ31F538qsN7P4fOveEx1jA9l1K0WKDhL2M9qCBQhDyhBuLz/jwREn 10DZKogYhUJOmVggGC7MuXM3dRBC+8aXRuJYD4fKmFIj5FgexiiFO5r2ZPFTPHmpB5UQZ/ ZvvK9yY5rfLqzj1LqOyrLkPcEPJCY3d2q24D+qWJOYld6VvKV5jTom6SLya8Gqgq6t4mds b8RlICLLuo8b8j5pQYlpin2Fz6t6+1Tls8WVL5dsvAS+i80mCh1eWfhRkII+tA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122974; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Sr6sXkrk0/s4MGeHq+ke4YTZut1/a1o1+st+UDrC9EE=; b=fnwm7BYsssGqXiS3vrmk2X6pMQjrfqYos8BxZyK2MMiTaT/XZLvpjp89ZpBwAIGxD+j0iI iLFFvvMAZMIKpEvLwC/Mg2yqwfqlw96FVPiCTxkiexZIOIP3kTi982Wx1YfwS63mIxyUTX UEzhdZRkNFX1yM4czN7eKPFvP2UUfqBxgSxT+XtFD6JBFUosaKusfXZrIlCLfPbGBdDa21 DPQjt+rd0362aI5NE6ogO12gjLzYRbDxUU9A5/DC8qtcDQDC2LbtETLcMFzkN41dit0eza yuy1J7asSCQqyS/yinHgeIUNCuR6naqUPWRZzR7KCwnfq3Nv4lX/TMFOnv1YTQ== 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 4S5tDF5vC5z17vF; Thu, 12 Oct 2023 15:02:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CF2rU1057205; Thu, 12 Oct 2023 15:02:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CF2rBa057202; Thu, 12 Oct 2023 15:02:53 GMT (envelope-from git) Date: Thu, 12 Oct 2023 15:02:53 GMT Message-Id: <202310121502.39CF2rBa057202@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: 83091c864451 - releng/14.0 - sockets: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 83091c8644516091040f32bc266f1204b0e2950d Auto-Submitted: auto-generated The branch releng/14.0 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=83091c8644516091040f32bc266f1204b0e2950d commit 83091c8644516091040f32bc266f1204b0e2950d Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:22 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 14:59:52 +0000 sockets: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'kern.ipc.maxsockets' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp Approved by: re (gjb) MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 978be1ee5d5fef983b4163955e15c4269c0ec76d) (cherry picked from commit e4f97a1ec798d69b8ebf767d0dd2e43fbb1550f6) --- sys/kern/uipc_socket.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index 3c7e5c4cb4bb..880dec89245b 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -366,8 +366,8 @@ sysctl_maxsockets(SYSCTL_HANDLER_ARGS) return (error); } SYSCTL_PROC(_kern_ipc, OID_AUTO, maxsockets, - CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, &maxsockets, 0, - sysctl_maxsockets, "IU", + CTLTYPE_INT | CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, + &maxsockets, 0, sysctl_maxsockets, "IU", "Maximum number of sockets available"); /* From nobody Thu Oct 12 15:02:54 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5tDH228Dz4wTZq; Thu, 12 Oct 2023 15:02:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S5tDH155Kz4ZbV; Thu, 12 Oct 2023 15:02:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122975; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tG/dWtfGXgpUL6cAoBHItNh9AtuWbJOLhISRrdLxK7g=; b=CqWPhjfKKnemJCnhdpmV+yV6qtnAesUqnoLzdQGOEdx4zpgKy3/ZfwvSz+EtdVfuykcE0k soYXdc6BCRxCFgy0CT12VpcBE2sljS/cgq4R3G6dafDifeJEPryp9/naMSHVr8UmN0hAt9 MKth28XFgbzRZ5pXowIJ58vPnbHk4ntqInwUBe9oPNSl6ScBQxxO2FOMIM7hH0M0AByaOc YGIniPZwMbRKqcvilzBMTVd9GfpRLtntGqNwD4PljMdIZEayavRoW8bFvB+7wFHg5vQ58N KtpFThLG6Ejh5KGvuwqRE+u0Ma+E8UVW+dAFeRV+0kVnEZqeGd7s80rv32pN5Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697122975; a=rsa-sha256; cv=none; b=v/vJZL0VDIEqaxqExIvjYO/sssBGtFFgoLIMAkvQLuqHHpandVnRmI9Sor1RaTspLTyDOt bzvlM9WjZYMYHF4wpKSR64OYIpbw64NzEcrGTVCUtVGteQRBLk6xK/YdwIF+UuGevqAOaB 57vwkJlpO86v8f1asGDPD/n8cdyad38dANq+LlbAanz2I2VlNlJBnMAa63GvyPyex+o8JZ +IrzyAQScYvCPx+uvzuXs61yYmKoYIDw6QrKC6S1ofsUAFo/I+rr3f7vS8nBbLSYHrwQiK geoqJlhMTW3ugPGYk9vlQ9KUMRywrU/zvIXzEcEHrvokCA15VdDeh1BwHIyIsQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122975; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tG/dWtfGXgpUL6cAoBHItNh9AtuWbJOLhISRrdLxK7g=; b=FJmiHW1NNB5lQ/g3BGx2a+c8g3JJ+dqU0bv0uiln5dKPdGmcexU8MD81B1yEYU7CHpVDS9 TI3cLjqofdHlI0XddVdHuWVJEJNXjIr/xGIvUZotIqFbWztlctN4haRJlU9YV4rViZGV1M XsA070Xc1aRcKdBiFcl5o+WkUT/t5zPzXQC2tTJ6r+REOQIVG0VD/7jbJVVArk0Z2/tGwO WGkq+ia4juVp0ZEfq0dzjqcNjh+OguMryUq/J1xg12+sNFm6Lo2/LYXvoF3+btAK/Fkkpx pisubcBLZkyNXufSjp7sV/SETxQpgqyftAlme8XJpNHR65lVKQNFZF5fnYti9Q== 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 4S5tDH08JKz1812; Thu, 12 Oct 2023 15:02:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CF2sAY057258; Thu, 12 Oct 2023 15:02:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CF2sGa057255; Thu, 12 Oct 2023 15:02:54 GMT (envelope-from git) Date: Thu, 12 Oct 2023 15:02:54 GMT Message-Id: <202310121502.39CF2sGa057255@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: 205b1c574cae - releng/14.0 - buf: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 205b1c574caeb74bcc22e8085c0cbb132cf5a298 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=205b1c574caeb74bcc22e8085c0cbb132cf5a298 commit 205b1c574caeb74bcc22e8085c0cbb132cf5a298 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:22 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 14:59:53 +0000 buf: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'vfs.unmapped_buf_allowed' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Reviewed by: kib, imp Approved by: re (gjb) MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 31b94065300a76e52c26b8caec7256574d64a777) (cherry picked from commit 8c4eaac1534e0486bd0fc6816ccb59fc348a5707) --- sys/kern/vfs_bio.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/kern/vfs_bio.c b/sys/kern/vfs_bio.c index bc09131adb87..56f9d604b9eb 100644 --- a/sys/kern/vfs_bio.c +++ b/sys/kern/vfs_bio.c @@ -320,7 +320,8 @@ SYSCTL_COUNTER_U64(_vfs, OID_AUTO, notbufdflushes, CTLFLAG_RD, ¬bufdflushes, static long barrierwrites; SYSCTL_LONG(_vfs, OID_AUTO, barrierwrites, CTLFLAG_RW | CTLFLAG_STATS, &barrierwrites, 0, "Number of barrier writes"); -SYSCTL_INT(_vfs, OID_AUTO, unmapped_buf_allowed, CTLFLAG_RD, +SYSCTL_INT(_vfs, OID_AUTO, unmapped_buf_allowed, + CTLFLAG_RDTUN | CTLFLAG_NOFETCH, &unmapped_buf_allowed, 0, "Permit the use of the unmapped i/o"); int maxbcachebuf = MAXBCACHEBUF; From nobody Thu Oct 12 15:02:56 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5tDJ2pLyz4wTfj; Thu, 12 Oct 2023 15:02: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 4S5tDJ251fz4ZqK; Thu, 12 Oct 2023 15:02:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122976; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3SX8FJ2gFAOlU/W3Lw0rjfS6H0uvd6UT4J7V06AqB4Q=; b=EBEznkLIVCCVu065EsrejXz+ZpFmq6ct0gUGkToZ7BAsS17Mdoi1cgto6JjM3J6b0X6CYK Q2Ev8Awv1Rg6KaiE8e8wRr0/5M0FHbVF1kscRDy7pfiwX/qMr4deLygLgiCKLk932QNoF1 DPApZuntv76iGbi2KfrqA2oQTsyrx+QN3Bpx40y+mLArSX+JauLgIMaEWDYQCKzpTGMBGX X7Vw+hwo4CuuwarRSuAIc0VK9kYCxOJWapAgR5Fa7pZVhzToWJYasNjJUyfsgyms+pS47c +qLpj39p1Fbhpmvteuogkcn4aM8cFWkOz2dtpQ5B3699xdjoRP8JmS545XrvRA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697122976; a=rsa-sha256; cv=none; b=cs9eiBCmO7FecTMOSk4LjWvFju5wq7WrwPx5zt2X5rFW4ky4eg5JT4g1QGKEt/0MtWOEWi t1qLsXwcLNLWtJcez3Ts9OYnmY7czJag818sSsc0+0gOihitExE+8DRj5oJJiYG/IBe/WT JiMi3BKVyKrLQmXwY15dxl02yceXE+wtmGd+sXD5p3UR03j4WPJ7ulUEbXBptpIYm7E3Hy G2bqJnWeGbgJEMCtraL8GC/vD+qeoViQ0t/fvascIHcZfaFKbXm3oAX/yW/oFNZMIMYD3g 3Pw2V4rIawSvTERh3tX20XMyqyHn0ZrBcbh3EFqXtIEJFFydNTFGnhO8xB9ntg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697122976; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3SX8FJ2gFAOlU/W3Lw0rjfS6H0uvd6UT4J7V06AqB4Q=; b=fiqcy0wJ+lJG4Op2PtusZLw9hbLYUy1YhUwfHlf3ecx01EinetIK0bGngV4wcegqG+G38n GhQ8GIdXmvPpvxIUNwrp3jsuR/FeR3ci5MVC7gi4WlJ8Tg5xJK7z9ayY6+Bvb9oAFDuS8b pSWjImnW0BTiwoyWSPONIjzgyDpCkM4cHujSeISVvSU+Fl3SeRI3q6cLq4APw/CE8dm6fS vowKuf2jKSymHTAsEziDRB73vNOJG4PxsMLO7+pm4x6gqr9kTIPnFyKhgTPkpKLXlJDEQ7 Zrf9ZZuQysaC+Ifg0xjq/hAVgiodYbRzFdGjZNOrLB/63sJkeqFKKlXTxYkxDQ== 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 4S5tDJ0v6Bz17xZ; Thu, 12 Oct 2023 15:02:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CF2uMZ057312; Thu, 12 Oct 2023 15:02:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CF2ugG057309; Thu, 12 Oct 2023 15:02:56 GMT (envelope-from git) Date: Thu, 12 Oct 2023 15:02:56 GMT Message-Id: <202310121502.39CF2ugG057309@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: fc2149590f73 - releng/14.0 - proc: Add sysctl flag CTLFLAG_TUN to loader tunable List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@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/releng/14.0 X-Git-Reftype: branch X-Git-Commit: fc2149590f73205b641714bcaeb562a25d9332e4 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=fc2149590f73205b641714bcaeb562a25d9332e4 commit fc2149590f73205b641714bcaeb562a25d9332e4 Author: Zhenlei Huang AuthorDate: 2023-10-09 10:30:22 +0000 Commit: Zhenlei Huang CommitDate: 2023-10-12 14:59:53 +0000 proc: Add sysctl flag CTLFLAG_TUN to loader tunable The sysctl variable 'kern.kstack_pages' is actually a loader tunable. Add sysctl flag CTLFLAG_TUN to it so that `sysctl -T` will report it correctly. No functional change intended. Note that on arm64 the thread0 stack size can not be controlled with it, kib@ suggested that arm64 maintainers can fix it eventually so let's enable it also on arm64 right now. Reviewed by: kib, imp Approved by: re (gjb) MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D42113 (cherry picked from commit 35b3be81f1d9fe38457d9137bef7a2875d24e2c8) (cherry picked from commit 964a91aac9c99d16294bc76d942de7bcc2a1b169) --- sys/kern/kern_proc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/kern/kern_proc.c b/sys/kern/kern_proc.c index cccce834e284..2daf39b398b5 100644 --- a/sys/kern/kern_proc.c +++ b/sys/kern/kern_proc.c @@ -161,7 +161,8 @@ EVENTHANDLER_LIST_DEFINE(process_fork); EVENTHANDLER_LIST_DEFINE(process_exec); int kstack_pages = KSTACK_PAGES; -SYSCTL_INT(_kern, OID_AUTO, kstack_pages, CTLFLAG_RD, &kstack_pages, 0, +SYSCTL_INT(_kern, OID_AUTO, kstack_pages, CTLFLAG_RDTUN | CTLFLAG_NOFETCH, + &kstack_pages, 0, "Kernel stack size in pages"); static int vmmap_skip_res_cnt = 0; SYSCTL_INT(_kern, OID_AUTO, proc_vmmap_skip_resident_count, CTLFLAG_RW, From nobody Thu Oct 12 16:11:47 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5vlm0pr8z4wZqp; Thu, 12 Oct 2023 16:11: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 4S5vlm0L48z3DNp; Thu, 12 Oct 2023 16:11:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697127108; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5eSIFUZogy3F+TfU0WDRjfsXuY0iir18QV00/G256QY=; b=U0fioWqEEdysOGJnvIS7f8f9TIS+Ha3zfXLb6EXd9YIJDsgclkIeg1PZIZvO8onmOeHxQH PJjxhhpedLLkYA7pz9np3bp8ELdZEePcRaOsFeO9q2GLPO14ET1pNkkMGrtjCfL/OsZyp8 oMRnB8St3cCz9cviBVFuLKOitZkPCK7hZSNORPqgntsYYzNaQCCyzyWci8i20ti3+ppNWT gnRYtTyBFDi9UOBE7cbDnTAlES2pSEMz6WcmbdugVLh2swOkcRABPthtTjjeFxFzxpvV2L 8d5xZjcDTDbM/9Xt7yhdnLZi8myTMyoD8R7xE8T6q3SF+6Bq0I+D5TKJX/CsOA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697127108; a=rsa-sha256; cv=none; b=FFOfy3nBrs4IR1vWgRhs7se9zkhsBUChecdUpFDbfhG7rP5u+FyXKIpznMExFUu9Xnn8Cm yHG677eOzXze65s5AMxkb+aw3t4U6D5rvpZ/l/BfR6mXO41q7WF8Q1NcD4N+mjfXCu8tp3 Ht4lVXXvCrGF9CIaieGap+4rpc04hks1yReff87DU6ApgUsyZ3vvHQF9+g+x8A1QXMAa/B sC8iWefbp+CkEmr9XRj1N951qmoOl6VlrCbdDBe4EiCnfxtZnZXBO09lKgx+tPKsaYlM9w eMW6AIsC6rYumNiMfCwrI9SxxxshKg9I2oSRFrm1RRgr5Fvr+XKIY/9pDsjwjg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697127108; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5eSIFUZogy3F+TfU0WDRjfsXuY0iir18QV00/G256QY=; b=SAneZvpVNkUCGru2dUAu7G3acNF33iJ4Dvkfm85HHehWAJKaZ4G7FZu7c7hyfScuohy/Nq sKLEdKMnDGTpFDl7pvV/7XUA7EHGcN5Qx4IlvWJbk+InBHMPiYHyQquCOZv05iN7xKBl1M U2dZLYtgrsgYrLq+8nJLNYnSmV+njIaQlzv0jsXSHb1UVKJLDGKBNYYhJvXzqoGgPQ9HCV ectUUXX1vqMQXrlqyi/liJ8WodOvi/lv++uiFPDe2jwsg2dx2K+IU4Ch5O+wVU61ldgZtJ 9KoQQVEd+oseALe7qj7XxmuVW8OC/F/TqVYOqJ6nDV5ypX+iJZjw+EODBVoAKg== 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 4S5vll6Vrmz19Cw; Thu, 12 Oct 2023 16:11:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CGBlZi072729; Thu, 12 Oct 2023 16:11:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CGBlLw072725; Thu, 12 Oct 2023 16:11:47 GMT (envelope-from git) Date: Thu, 12 Oct 2023 16:11:47 GMT Message-Id: <202310121611.39CGBlLw072725@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: e06428cfcaec - stable/14 - if_ovpn tests: fix ra test List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e06428cfcaec314dae9e88102548250f2fb1fa0c Auto-Submitted: auto-generated The branch stable/14 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=e06428cfcaec314dae9e88102548250f2fb1fa0c commit e06428cfcaec314dae9e88102548250f2fb1fa0c Author: Kristof Provost AuthorDate: 2023-10-05 07:41:25 +0000 Commit: Kristof Provost CommitDate: 2023-10-12 07:47:06 +0000 if_ovpn tests: fix ra test Client one is supposed to be assigend 198.51.100.2, but sometimes it loses the race and the address ends up assigned to client two. When this happened one would try to ping itself, which failed because the loopback interface isn't up. Ideally we'd generate static address assignments, but that would complicate the test. Activate loopback interfaces so the test always passes, and just try to ping both possible addresses. MFC after: 1 week Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 956a46311462423f97b2410065f8caff2c630701) --- tests/sys/net/if_ovpn/if_ovpn.sh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tests/sys/net/if_ovpn/if_ovpn.sh b/tests/sys/net/if_ovpn/if_ovpn.sh index c052a6d7eb47..bbaffa0bce73 100644 --- a/tests/sys/net/if_ovpn/if_ovpn.sh +++ b/tests/sys/net/if_ovpn/if_ovpn.sh @@ -805,14 +805,18 @@ ra_body() ifconfig ${bridge} addm ${two}a vnet_mkjail srv ${srv}b ${lan}a + jexec srv ifconfig lo0 inet 127.0.0.1/8 up jexec srv ifconfig ${srv}b 192.0.2.1/24 up jexec srv ifconfig ${lan}a 203.0.113.1/24 up vnet_mkjail lan ${lan}b + jexec lan ifconfig lo0 inet 127.0.0.1/8 up jexec lan ifconfig ${lan}b 203.0.113.2/24 up jexec lan route add default 203.0.113.1 vnet_mkjail one ${one}b + jexec one ifconfig lo0 inet 127.0.0.1/8 up jexec one ifconfig ${one}b 192.0.2.2/24 up vnet_mkjail two ${two}b + jexec two ifconfig lo0 inet 127.0.0.1/8 up jexec two ifconfig ${two}b 192.0.2.3/24 up # Sanity checks @@ -890,7 +894,9 @@ ra_body() # Client-to-client communication atf_check -s exit:0 -o ignore jexec one ping -c 1 198.51.100.3 + atf_check -s exit:0 -o ignore jexec one ping -c 1 198.51.100.2 atf_check -s exit:0 -o ignore jexec two ping -c 1 198.51.100.2 + atf_check -s exit:0 -o ignore jexec two ping -c 1 198.51.100.3 # RA test atf_check -s exit:0 -o ignore jexec one ping -c 1 203.0.113.1 From nobody Thu Oct 12 16:11:47 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5vlm1Z9Wz4wZt4; Thu, 12 Oct 2023 16:11: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 4S5vlm194Vz3DG7; Thu, 12 Oct 2023 16:11:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697127108; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TTq3x+ITgpt08KLfZhl1e2Q4W896llKtOeRcBzCiipo=; b=DriA04zTHaFcPii0BHtoCWQB184oVQ2sr4GktzlXcWaNkm49qI0ZME4LRxZTMwdoOyMIwT cNCAjIkXNBmV5isSYZfOB2IWPlC8JTLWI72FXwnTdPjHYJp8mHZkuMrloM/xxga3Ep4efD /ihY5y4qo8NgIkN9HCMUeK5fPj1ANMRsRKK0/B0kjlQokXhI7V9RXPpsyNUKTsKh9fqZAD KCc84lNGANgfJoOGztQ5s/GA966fCpwf0DvlKqSnJgC3TZbFemi8UyZH1alo7zaZFm3GNX dTnJU1M7lPRXM35fpPf5MKgPNqUx2s6MGeIEX4RcXVwXlpUZSLbrdnOf6mZh4w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697127108; a=rsa-sha256; cv=none; b=SoaecOQHj8i5ZAvF7IKVtsUTsa+ibepokxdnErgdjY5Mdm852O7y4sMh1jAeAWSzB6D2Bi bUTqKnf+n+iAB1zUlJSLacZ7oOjLHjHuFN6NG8+z6AElj4sB2hqoElX9FdnaJUqT99PKGB cSfUERWcPztZEfIYp+8BIeYNrAl9QXzyNdCIf7H/LKSpD9p6a49EesienPZGASBlurujXV nJEAm1HbuSgdRcDsr/SxFkGZX8NVWWb0apJywh1bEeCVuPjQNMYUCIJj6HrU60iymIJpSg sO4X/QDX0qHv5XPYa+CCgpptfE+3PND5iD0mQyVcTXT5FosyS8nlhsxNuir3UQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697127108; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TTq3x+ITgpt08KLfZhl1e2Q4W896llKtOeRcBzCiipo=; b=yGewFQKiHALkZo12HvVT977U6oMqd7WJAF9gt2Ia3sXSMCCj4MrwqVbuHAcnytoklLGYQ0 EBeabjooIq5HO1DJM1RYGe4I9K5QToWdyunMtiBAHMulcbNJpQqolxUp4093wBSq9h49x7 Aw1SDzTincij/bHlT3GshMWPAg9617kUDcRhBzeZlK50zakbN1fuEGXi+uMZRcLfVJPoYt nZ5aO5MXZxFU5q5IW6CuiNw4p8yb0hkALBgyhDv1z7RJr3uoyMQ2lIxXbSN864HTqvKUEt f7GbmgpsWXTH3FtOzODDhz3rwpIatlRohidT9OeTb6Eilh7TTb7WXhI/FVGmuQ== 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 4S5vlm0F1Xz19gQ; Thu, 12 Oct 2023 16:11:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CGBlU8072797; Thu, 12 Oct 2023 16:11:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CGBl5x072794; Thu, 12 Oct 2023 16:11:47 GMT (envelope-from git) Date: Thu, 12 Oct 2023 16:11:47 GMT Message-Id: <202310121611.39CGBl5x072794@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: f28ae9abf8bb - stable/13 - pf: fix SCTP SDT probe List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: f28ae9abf8bb848bcad47c2aa7ac19241eb0fa36 Auto-Submitted: auto-generated The branch stable/13 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=f28ae9abf8bb848bcad47c2aa7ac19241eb0fa36 commit f28ae9abf8bb848bcad47c2aa7ac19241eb0fa36 Author: Kristof Provost AuthorDate: 2023-10-05 14:57:50 +0000 Commit: Kristof Provost CommitDate: 2023-10-12 07:47:17 +0000 pf: fix SCTP SDT probe We want the return value of pf_test_rule(), i.e. the result of the evaluation of the new state, not the result of the evaluation of the original packet/state. MFC after: 1 week Sponsored by: Orange Business Services (cherry picked from commit b00dbe851c66f26a16219d31c76b7fb411ace94c) --- sys/netpfil/pf/pf.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index 501d9eef57cd..869c68ad308f 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -5365,7 +5365,7 @@ pf_sctp_multihome_delayed(struct pf_pdesc *pd, int off, struct pfi_kkif *kif, ret = pf_test_rule(&r, &sm, pd->dir, kif, j->m, off, &j->pd, &ra, &rs, NULL); PF_RULES_RUNLOCK(); - SDT_PROBE4(pf, sctp, multihome, test, kif, r, j->m, action); + SDT_PROBE4(pf, sctp, multihome, test, kif, r, j->m, ret); if (sm) { /* Inherit v_tag values. */ sm->src.scrub->pfss_v_tag = s->src.scrub->pfss_flags; From nobody Thu Oct 12 16:11:48 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5vln2B4gz4wb7y; Thu, 12 Oct 2023 16:11: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 4S5vln1Mw6z3DTV; Thu, 12 Oct 2023 16:11:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697127109; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gJocnbj9jBrn13w9uQbErlUIr5nytWcbnclcmj8hABY=; b=J1ANYcjOpsRll5NwhySHN7MF5EwgwhRuLWE13aZumNDW3g5/oMy1LVIYCGzx2CDlPz/5E4 6dZme/dtXIycqVJQZBDFBWh9jnS1NMXgI05OQBVUdzf0kYNOYIyzGYBJqJAg1ecT9pQ0sj yvDbG1ooLRFi0mcta4ATpdS5HbJEWmbZ9bO6i78XDHMPdAgD9AITxWE7s+FND3jvBj4E5E 282285qzVHrHAZxFKbFwR1lFw4UoEsmWiXq3CTKwFHtrNJxY1ixAn5KUSTcc3JUDRAMaDr pZDD7EKqfaanmynnI6o4Gh4g/9LlOkgIte56Yh8Wd63ZEwjnc94mP8TXqJxAfA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697127109; a=rsa-sha256; cv=none; b=JrHXSG5yJNvQgiDxdVS4hTUMmu8YkVlHeX/4S2He4KkJoc4NOMKARqL0picL5m+XfkzcoO 6d7dxtvi1Qd2oa+aemfRRt2nzH2cY1vSvg4P9ocwdodXHNeqL54akAIwxPzD99OmQ/z7La vlnHZkxjbYWn2FKA9GOclmW5TT/ph7L/PMwNBafH5hog2NAhmIc+DjzCCyQtuDaoOb1omy 9FDjcVb9MlYdpYY0r9T9YvPop3YiYaiGOrocoiq3i6vI+2r/9veehku59EhCjBO7DJnjwP DQJHEvchHSPCOR0JNrDO9LF60nWx/uH0kra4L1wuT/uxWZEimPl7DkZx9BDSwA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697127109; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gJocnbj9jBrn13w9uQbErlUIr5nytWcbnclcmj8hABY=; b=TFGnixzkV3asrugU1Cd4MFd6ARhRFf3ahzcPayYBEorLCU3OHeoEhcSMXhKcDdDWpcR/zl RPWX53c/qdENq8bxQ6D+fjjKe1oxBh5Zf5rTf/I3N7lDrz4cCRa375FoTKpD66OYpK+4kN tiATBG9rJVF40YkHsrBQXES0kVF1+osCfWsJ4ciSu51XP9JaBOfXPNRXVI7lhb5BSIedXe z1gxjUkZnJYefEsx90L5rib2TW7eoYyTO0BSPjIUJOOyDptsOAAJn0BOgY8vH3qgnANz1W V3noWV2U9/w7gHa1OjTXY2IeXs1SJ2QYW/fNQ4PutOC47/NP1ORK+NKCvJ5UVw== 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 4S5vln0PvNz19F8; Thu, 12 Oct 2023 16:11:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CGBmOC072840; Thu, 12 Oct 2023 16:11:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CGBmSo072837; Thu, 12 Oct 2023 16:11:48 GMT (envelope-from git) Date: Thu, 12 Oct 2023 16:11:48 GMT Message-Id: <202310121611.39CGBmSo072837@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: ee0b7276372e - stable/14 - pf: fix SCTP SDT probe List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ee0b7276372ebe07cd231b55d42ab3a4200f53c0 Auto-Submitted: auto-generated The branch stable/14 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=ee0b7276372ebe07cd231b55d42ab3a4200f53c0 commit ee0b7276372ebe07cd231b55d42ab3a4200f53c0 Author: Kristof Provost AuthorDate: 2023-10-05 14:57:50 +0000 Commit: Kristof Provost CommitDate: 2023-10-12 07:47:06 +0000 pf: fix SCTP SDT probe We want the return value of pf_test_rule(), i.e. the result of the evaluation of the new state, not the result of the evaluation of the original packet/state. MFC after: 1 week Sponsored by: Orange Business Services (cherry picked from commit b00dbe851c66f26a16219d31c76b7fb411ace94c) --- sys/netpfil/pf/pf.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index fae0bd2854f9..3dddfdd0b1a4 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -5943,7 +5943,7 @@ pf_sctp_multihome_delayed(struct pf_pdesc *pd, int off, struct pfi_kkif *kif, ret = pf_test_rule(&r, &sm, kif, j->m, off, &j->pd, &ra, &rs, NULL); PF_RULES_RUNLOCK(); - SDT_PROBE4(pf, sctp, multihome, test, kif, r, j->m, action); + SDT_PROBE4(pf, sctp, multihome, test, kif, r, j->m, ret); if (sm) { /* Inherit v_tag values. */ sm->src.scrub->pfss_v_tag = s->src.scrub->pfss_flags; From nobody Thu Oct 12 18:46:31 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5zBH70Hmz4wlqs; Thu, 12 Oct 2023 18:46: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 4S5zBH6KGVz3Tsq; Thu, 12 Oct 2023 18:46:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697136391; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8zmheXFpFS7N5rk5t4otjalrzCkp2z6dYC3iikF3t+c=; b=YTSdqaOdeUc3sOffp8shgly+Tjz/Yucmn0D8rF4OS6HRRotmBVTk9dKsbWAXdueWpjASN0 dJF4p75aXtjpLT0ex1zWKnoQiz+1Qd5P++TAMwzILFkpLHmap9h3mxAecr3H2qBgs71Y8S mjA5idH9uwn/h/1I38O42LVeFKMqibuWQcyf/s7qOSsPecyrdP/LI6W/JQNzbKOwajq+9c Q7ozwlVKPy7x2mOrll9eECkC9MIhBrveCLZHVv8Qm3LPoeuXbnZh9TTcBsgR5OO8KtbGmN /A5xg9TiFGU67a/Tb4qP59JSH17lL4XuuCdRx3axHhFApT7Y5k99Z/roMw4i/Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697136391; a=rsa-sha256; cv=none; b=fOrocgEFS5gXkAECQxVQMiGvQ+FkZj8PxXnYuB3pR6Sop6alnUoKPOL4l9ehSapTOIbAUu x/iE+TCJEjk0OLASIozbKqlxVRHm57+v4Z2SsAheEzHON28V5qscnNtd/5qnmSq4wdFXD+ 6C4IJVzlNyIIq4rXnHG6ZDOLsM7ls4DnIRk7/en/JGbwKVaJwMC54xDVfbjT89CC5AUD8A sZYPGomIwOMv8Lf8TR1Eg05V51qTfLGWxNVofOJQsJZjrj4j8Yjg41sDRpNNEX79PXaXbv 2s/0j4fDEXLnuNyq7ZQCWowpcHkDJBfCMUGICEFbgtVQiJzIYDpQW+opXPj0Jg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697136391; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8zmheXFpFS7N5rk5t4otjalrzCkp2z6dYC3iikF3t+c=; b=mOd8mIHMfj6Vm0O9XLF/qgZoT2BmdXofir3J7WR3hM7JqhfT6wEYqHjpz+4taV3xkj3iOd JCEczqAP2KVOd7ozKoUKFOI8GpkwKco9EJpKqH9ITUmLP41ZaKpNB79/DwIAQMxCUvpMZ/ Xi9Ur0DOQ1E++tmkPsNktGT9LKTy59N9EJapM/P/g49wiuDeBQU61k2XG4QKEWD1sZPoGf TMXQygGefnJDBvtWqDFIbuhWEAT162bu3ZM8W0umOdc+gRfoz9jY2KSgGP7BVt1/UuNs4g rG+Okp3KQN8PvPqwSb/Y+uHGZDTM8VBNiKGvYp+mMNB9rLK9HP9unX5YiimlmQ== 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 4S5zBH5JVhz1PK; Thu, 12 Oct 2023 18:46:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CIkVC4023579; Thu, 12 Oct 2023 18:46:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CIkVT9023576; Thu, 12 Oct 2023 18:46:31 GMT (envelope-from git) Date: Thu, 12 Oct 2023 18:46:31 GMT Message-Id: <202310121846.39CIkVT9023576@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: b24ca3caa752 - stable/14 - ssh: Update to OpenSSH 9.5p1 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b24ca3caa7524e650550d8a2ee1637e6efcb87f1 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=b24ca3caa7524e650550d8a2ee1637e6efcb87f1 commit b24ca3caa7524e650550d8a2ee1637e6efcb87f1 Author: Ed Maste AuthorDate: 2023-10-09 17:28:17 +0000 Commit: Ed Maste CommitDate: 2023-10-12 18:46:11 +0000 ssh: Update to OpenSSH 9.5p1 Excerpts from the release notes: Potentially incompatible changes -------------------------------- * ssh-keygen(1): generate Ed25519 keys by default. [NOTE: This change was already merged into FreeBSD.] * sshd(8): the Subsystem directive now accurately preserves quoting of subsystem commands and arguments. New features ------------ * ssh(1): add keystroke timing obfuscation to the client. * ssh(1), sshd(8): Introduce a transport-level ping facility. * sshd(8): allow override of Sybsystem directives in sshd Match blocks. Full release notes at https://www.openssh.com/txt/release-9.5 Relnotes: Yes Sponsored by: The FreeBSD Foundation (cherry picked from commit edf8578117e8844e02c0121147f45e4609b30680) --- crypto/openssh/.github/ci-status.md | 4 + crypto/openssh/.github/configs | 11 + crypto/openssh/.github/setup_ci.sh | 8 + crypto/openssh/.github/workflows/c-cpp.yml | 1 + crypto/openssh/.github/workflows/selfhosted.yml | 3 + crypto/openssh/ChangeLog | 1611 +++++++---------------- crypto/openssh/PROTOCOL | 35 +- crypto/openssh/PROTOCOL.agent | 4 +- crypto/openssh/README | 2 +- crypto/openssh/auth2.c | 11 +- crypto/openssh/channels.c | 35 +- crypto/openssh/channels.h | 4 +- crypto/openssh/clientloop.c | 189 ++- crypto/openssh/configure.ac | 12 +- crypto/openssh/contrib/redhat/openssh.spec | 2 +- crypto/openssh/contrib/suse/openssh.spec | 2 +- crypto/openssh/kex.c | 55 +- crypto/openssh/kex.h | 3 +- crypto/openssh/misc.c | 29 +- crypto/openssh/misc.h | 3 +- crypto/openssh/monitor.c | 7 +- crypto/openssh/openbsd-compat/bsd-closefrom.c | 1 - crypto/openssh/packet.c | 35 +- crypto/openssh/packet.h | 3 +- crypto/openssh/readconf.c | 64 +- crypto/openssh/readconf.h | 8 +- crypto/openssh/regress/Makefile | 5 +- crypto/openssh/regress/match-subsystem.sh | 90 ++ crypto/openssh/regress/scp.sh | 24 +- crypto/openssh/regress/scp3.sh | 19 +- crypto/openssh/scp.c | 50 +- crypto/openssh/servconf.c | 107 +- crypto/openssh/servconf.h | 14 +- crypto/openssh/serverloop.c | 4 +- crypto/openssh/session.c | 15 +- crypto/openssh/sftp-client.c | 409 +++--- crypto/openssh/sftp-client.h | 76 +- crypto/openssh/sftp-glob.c | 28 +- crypto/openssh/sftp-usergroup.c | 8 +- crypto/openssh/sftp.c | 138 +- crypto/openssh/ssh-agent.1 | 8 +- crypto/openssh/ssh.c | 11 +- crypto/openssh/ssh2.h | 7 +- crypto/openssh/ssh_config.5 | 33 +- crypto/openssh/ssh_namespace.h | 3 + crypto/openssh/sshd.8 | 6 +- crypto/openssh/sshd.c | 2 +- crypto/openssh/sshd_config | 2 +- crypto/openssh/sshd_config.5 | 2 +- crypto/openssh/sshkey.c | 3 +- crypto/openssh/sshsig.c | 27 +- crypto/openssh/version.h | 6 +- 52 files changed, 1639 insertions(+), 1600 deletions(-) diff --git a/crypto/openssh/.github/ci-status.md b/crypto/openssh/.github/ci-status.md index f3e088fd6043..8d4cea10dba4 100644 --- a/crypto/openssh/.github/ci-status.md +++ b/crypto/openssh/.github/ci-status.md @@ -6,6 +6,10 @@ master : [![Fuzzing Status](https://oss-fuzz-build-logs.storage.googleapis.com/badges/openssh.svg)](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:openssh) [![Coverity Status](https://scan.coverity.com/projects/21341/badge.svg)](https://scan.coverity.com/projects/openssh-portable) +9.4 : +[![C/C++ CI](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml/badge.svg?branch=V_9_4)](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml?query=branch:V_9_4) +[![C/C++ CI self-hosted](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml/badge.svg?branch=V_9_4)](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_9_4) + 9.3 : [![C/C++ CI](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml/badge.svg?branch=V_9_3)](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml?query=branch:V_9_3) [![C/C++ CI self-hosted](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml/badge.svg?branch=V_9_3)](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_9_3) diff --git a/crypto/openssh/.github/configs b/crypto/openssh/.github/configs index e054eb3196b5..c7d6a55ab962 100755 --- a/crypto/openssh/.github/configs +++ b/crypto/openssh/.github/configs @@ -30,6 +30,13 @@ case "$config" in default|sol64) ;; c89) + # If we don't have LLONG_MAX, configure will figure out that it can + # get it by setting -std=gnu99, at which point we won't be testing + # C89 any more. To avoid this, feed it in via CFLAGS. + llong_max=`gcc -E -dM - +Date: Wed Oct 4 15:34:10 2023 +1100 + + crank version numbers + +commit f65f187b105d9b5c12fd750a211397d08c17c6d4 +Author: djm@openbsd.org +Date: Wed Oct 4 04:04:09 2023 +0000 + + upstream: openssh-9.5 + + OpenBSD-Commit-ID: 5e0af680480bd3b6f5560cf840ad032d48fd6b16 + +commit ffe27e54a4bb18d5d3bbd3f4cc93a41b8d94dfd2 +Author: djm@openbsd.org +Date: Wed Oct 4 04:03:50 2023 +0000 + + upstream: add some cautionary text about % token expansion and + + shell metacharacters; based on report from vinci AT protonmail.ch + + OpenBSD-Commit-ID: aa1450a54fcee2f153ef70368d90edb1e7019113 + +commit 60ec3d54fd1ebfe2dda75893fa1e870b8dffbb0d +Author: djm@openbsd.org +Date: Tue Oct 3 23:56:10 2023 +0000 + + upstream: fix link to agent draft; spotted by Jann Horn + + OpenBSD-Commit-ID: ff5bda21a83ec013db683e282256a85201d2dc4b + +commit 12e2d4b13f6f63ce2de13cbfcc9e4d0d4b4ab231 +Author: Damien Miller +Date: Wed Oct 4 10:54:04 2023 +1100 + + use portable provider allowlist path in manpage + + spotted by Jann Horn + +commit 6c2c6ffde75df95fd838039850d3dd3d84956d87 +Author: deraadt@openbsd.org +Date: Tue Sep 19 20:37:07 2023 +0000 + + upstream: typo; from Jim Spath + + OpenBSD-Commit-ID: 2f5fba917b5d4fcf93d9e0b0756c7f63189e228e + +commit b6b49130a0089b297245ee39e769231d7c763014 +Author: djm@openbsd.org +Date: Sun Sep 10 23:12:32 2023 +0000 + + upstream: rename remote_glob() -> sftp_glob() to match other API + + OpenBSD-Commit-ID: d9dfb3708d824ec02970a84d96cf5937e0887229 + +commit 21b79af6c8d2357c822c84cef3fbdb8001ed263b +Author: djm@openbsd.org +Date: Sun Sep 10 03:51:55 2023 +0000 + + upstream: typo in comment + + OpenBSD-Commit-ID: 69285e0ce962a7c6b0ab5f17a293c60a0a360a18 + +commit 41232d25532b4d2ef6c5db62efc0cf50a79d26ca +Author: Darren Tucker +Date: Sun Sep 10 15:45:38 2023 +1000 + + Use zero-call-used-regs=used with Apple compilers. + + Apple's versions of clang have version numbers that do not match the + corresponding upstream clang versions. Unfortunately, they do still + have the clang-15 zero-call-used-regs=all bug, so for now use the value + that doesn't result in segfaults. We could allowlist future versions + that are known to work. bz#3584 (and probably also our github CI + failures). + +commit 90ccc5918ea505bf156c31148b6b59a1bf5d6dc6 +Author: djm@openbsd.org +Date: Sun Sep 10 03:25:53 2023 +0000 + + upstream: randomise keystroke obfuscation intervals and average + + interval rate. ok dtucker@ + + OpenBSD-Commit-ID: 05f61d051ab418fcfc4857ff306e420037502382 + +commit bd1b9e52f5fa94d87223c90905c5fdc1a7c32aa6 +Author: djm@openbsd.org +Date: Fri Sep 8 06:34:24 2023 +0000 + + upstream: fix sizeof(*ptr) instead sizeof(ptr) in realloc (pointer here + + is char**, so harmless); spotted in CID 416964 + + OpenBSD-Commit-ID: c61caa4a5a667ee20bb1042098861e6c72c69002 + +commit c4f966482983e18601eec70a1563115de836616f +Author: djm@openbsd.org +Date: Fri Sep 8 06:10:57 2023 +0000 + + upstream: regress test recursive remote-remote directories copies where + + the directory contains a symlink to another directory. + + also remove errant `set -x` that snuck in at some point + + OpenBSD-Regress-ID: 1c94a48bdbd633ef2285954ee257725cd7bc456f + +commit 5e1dfe5014ebc194641678303e22ab3bba15f4e5 +Author: djm@openbsd.org +Date: Fri Sep 8 06:10:02 2023 +0000 + + upstream: fix recursive remote-remote copies of directories that + + contain symlinks to other directories (similar to bz3611) + + OpenBSD-Commit-ID: 7e19d2ae09b4f941bf8eecc3955c9120171da37f + +commit 7c0ce2bf98b303b6ad91493ee3247d96c18ba1f6 +Author: djm@openbsd.org +Date: Fri Sep 8 05:50:57 2023 +0000 + + upstream: regress test for recursive copies of directories containing + + symlinks to other directories. bz3611, ok dtucker@ + + OpenBSD-Regress-ID: eaa4c29cc5cddff4e72a16bcce14aeb1ecfc94b9 + +commit 2de990142a83bf60ef694378b8598706bc654b08 +Author: djm@openbsd.org +Date: Fri Sep 8 05:56:13 2023 +0000 + + upstream: the sftp code was one of my first contributions to + + OpenSSH and it shows - the function names are terrible. + + Rename do_blah() to sftp_blah() to make them less so. + + Completely mechanical except for sftp_stat() and sftp_lstat() which + change from returning a pointer to a static variable (error-prone) to + taking a pointer to a caller-provided receiver. + + OpenBSD-Commit-ID: eb54d6a72d0bbba4d623e2175cf5cc4c75dc2ba4 + +commit 249d8bd0472b53e3a2a0e138b4c030a31e83346a +Author: djm@openbsd.org +Date: Fri Sep 8 05:50:12 2023 +0000 + + upstream: fix scp in SFTP mode recursive upload and download of + + directories that contain symlinks to other directories. In scp mode, the + links would be followed, but in SFTP mode they were not. bz3611, ok dtucker@ + + OpenBSD-Commit-ID: 9760fda668eaa94a992250d7670dfbc62a45197c + +commit 0e1f4401c466fa4fdaea81b6dadc8dd1fc4cf0af +Author: djm@openbsd.org +Date: Wed Sep 6 23:36:09 2023 +0000 + + upstream: regression test for override of subsystem in match blocks + + OpenBSD-Regress-ID: 5f8135da3bfda71067084c048d717b0e8793e87c + +commit 8a1450c62035e834d8a79a5d0d1c904236f9dcfe +Author: djm@openbsd.org +Date: Wed Sep 6 23:35:35 2023 +0000 + + upstream: allow override of Sybsystem directives in sshd Match + + blocks + + OpenBSD-Commit-ID: 3911d18a826a2d2fe7e4519075cf3e57af439722 + +commit 6e52826e2a74d077147a82ead8d4fbd5b54f4e3b +Author: djm@openbsd.org +Date: Wed Sep 6 23:26:37 2023 +0000 + + upstream: allocate the subsystems array as necessary and remove the + + fixed limit of subsystems. Saves a few kb of memory in the server and makes + it more like the other options. + + OpenBSD-Commit-ID: e683dfca6bdcbc3cc339bb6c6517c0c4736a547f + +commit e19069c9fac4c111d6496b19c7f7db43b4f07b4f +Author: djm@openbsd.org +Date: Wed Sep 6 23:23:53 2023 +0000 + + upstream: preserve quoting of Subsystem commands and arguments. + + This may change behaviour of exotic configurations, but the most common + subsystem configuration (sftp-server) is unlikely to be affected. + + OpenBSD-Commit-ID: 8ffa296aeca981de5b0945242ce75aa6dee479bf + +commit 52dfe3c72d98503d8b7c6f64fc7e19d685636c0b +Author: djm@openbsd.org +Date: Wed Sep 6 23:21:36 2023 +0000 + + upstream: downgrade duplicate Subsystem directives from being a + + fatal error to being a debug message to match behaviour with just about all + other directives. + + OpenBSD-Commit-ID: fc90ed2cc0c18d4eb8e33d2c5e98d25f282588ce + +commit 1ee0a16e07b6f0847ff463d7b5221c4bf1876e25 +Author: djm@openbsd.org +Date: Wed Sep 6 23:18:15 2023 +0000 + + upstream: handle cr+lf (instead of just cr) in sshsig signature + + files + + OpenBSD-Commit-ID: 647460a212b916540016d066568816507375fd7f + +commit e1c284d60a928bcdd60bc575c6f9604663502770 +Author: job@openbsd.org +Date: Mon Sep 4 10:29:58 2023 +0000 + + upstream: Generate Ed25519 keys when invoked without arguments + + Ed25519 public keys are very convenient due to their small size. + OpenSSH has supported Ed25519 since version 6.5 (January 2014). + + OK djm@ markus@ sthen@ deraadt@ + + OpenBSD-Commit-ID: f498beaad19c8cdcc357381a60df4a9c69858b3f + +commit 694150ad92765574ff82a18f4e86322bd3231e68 +Author: djm@openbsd.org +Date: Mon Sep 4 00:08:14 2023 +0000 + + upstream: trigger keystroke timing obfucation only if the channels + + layer enqueud some data in the last poll() cycle; this avoids triggering the + obfuscatior for non-channels data like ClientAlive probes and also fixes a + related problem were the obfucations would be triggered on fully quiescent + connections. + + Based on / tested by naddy@ + + OpenBSD-Commit-ID: d98f32dc62d7663ff4660e4556e184032a0db123 + +commit b5fd97896b59a3a46245cf438cc8b16c795d9f74 +Author: djm@openbsd.org +Date: Mon Sep 4 00:04:02 2023 +0000 + + upstream: avoid bogus "obfuscate_keystroke_timing: stopping ..." + + debug messages when keystroke timing obfuscation was never started; spotted + by naddy@ + + OpenBSD-Commit-ID: 5c270d35f7d2974db5c1646e9c64188f9393be31 + +commit ccf7d913db34e49b7a6db1b8331bd402004c840d +Author: djm@openbsd.org +Date: Mon Sep 4 00:01:46 2023 +0000 + + upstream: make channel_output_poll() return a flag indicating + + whether channel data was enqueued. Will be used to improve keystroke timing + obfuscation. Problem spotted by / tested by naddy@ + + OpenBSD-Commit-ID: f9776c7b0065ba7c3bbe50431fd3b629f44314d0 + +commit 43254b326ac6e2131dbd750f9464dc62c14bd5a7 +Author: djm@openbsd.org +Date: Sun Sep 3 23:59:32 2023 +0000 + + upstream: set interactive mode for ControlPersist sessions if they + + originally requested a tty; enables keystroke timing obfuscation for most + ControlPersist sessions. Spotted by naddy@ + + OpenBSD-Commit-ID: 72783a26254202e2f3f41a2818a19956fe49a772 + +commit ff3eda68ceb2e2bb8f48e3faceb96076c3e85c20 +Author: Darren Tucker +Date: Thu Aug 31 23:02:35 2023 +1000 + + Set LLONG_MAX for C89 test. + + If we don't have LLONG_MAX, configure will figure out that it can get it + by setting -std=gnu99, at which point we won't be testing C89 any more. + To avoid this, feed it in via CFLAGS. + +commit f98031773db361424d59e3301aa92aacf423d920 +Author: djm@openbsd.org +Date: Tue Aug 29 02:50:10 2023 +0000 + + upstream: make PerSourceMaxStartups first-match-wins; ok dtucker@ + + OpenBSD-Commit-ID: dac0c24cb709e3c595b8b4f422a0355dc5a3b4e7 + +commit cfa66857db90cd908de131e0041a50ffc17c7df8 +Author: djm@openbsd.org +Date: Mon Aug 28 09:52:09 2023 +0000 + + upstream: descriptive text shouldn't be under .Cm + + OpenBSD-Commit-ID: b1afaeb456a52bc8a58f4f9f8b2f9fa8f6bf651b + +commit 01dbf3d46651b7d6ddf5e45d233839bbfffaeaec +Author: djm@openbsd.org +Date: Mon Aug 28 09:48:11 2023 +0000 + + upstream: limit artificial login delay to a reasonable maximum (5s) + + and don't delay at all for the "none" authentication mechanism. Patch by + Dmitry Belyavskiy in bz3602 with polish/ok dtucker@ + + OpenBSD-Commit-ID: 85b364676dd84cf1de0e98fc2fbdcb1a844ce515 + +commit 528da5b9d7c5da01ed7a73ff21c722e1b5326006 +Author: jmc@openbsd.org +Date: Mon Aug 28 05:32:28 2023 +0000 + + upstream: add spacing for punctuation when macro args; + + OpenBSD-Commit-ID: e80343c16ce0420b2aec98701527cf90371bd0db + +commit 3867361ca691d0956ef7d5fb8181cf554a91d84a +Author: djm@openbsd.org +Date: Mon Aug 28 04:06:52 2023 +0000 + + upstream: explicit long long type in timing calculations (doesn't + + matter, since the range is pre-clamped) + + OpenBSD-Commit-ID: f786ed902d04a5b8ecc581d068fea1a79aa772de + +commit 7603ba71264e7fa938325c37eca993e2fa61272f +Author: djm@openbsd.org +Date: Mon Aug 28 03:31:16 2023 +0000 + + upstream: Add keystroke timing obfuscation to the client. + + This attempts to hide inter-keystroke timings by sending interactive + traffic at fixed intervals (default: every 20ms) when there is only a + small amount of data being sent. It also sends fake "chaff" keystrokes + for a random interval after the last real keystroke. These are + controlled by a new ssh_config ObscureKeystrokeTiming keyword/ + + feedback/ok markus@ + + OpenBSD-Commit-ID: 02231ddd4f442212820976068c34a36e3c1b15be + +commit dce6d80d2ed3cad2c516082682d5f6ca877ef714 +Author: djm@openbsd.org +Date: Mon Aug 28 03:28:43 2023 +0000 + + upstream: Introduce a transport-level ping facility + + This adds a pair of SSH transport protocol messages SSH2_MSG_PING/PONG + to implement a ping capability. These messages use numbers in the "local + extensions" number space and are advertised using a "ping@openssh.com" + ext-info message with a string version number of "0". + + ok markus@ + + OpenBSD-Commit-ID: b6b3c4cb2084c62f85a8dc67cf74954015eb547f + +commit d2d247938b38b928f8a6e1a47a330c5584d3a358 +Author: tobhe@openbsd.org +Date: Mon Aug 21 21:16:18 2023 +0000 + + upstream: Log errors in kex_exchange_identification() with level + + verbose instead of error to reduce preauth log spam. All of those get logged + with a more generic error message by sshpkt_fatal(). + + feedback from sthen@ + ok djm@ + + OpenBSD-Commit-ID: bd47dab4695b134a44c379f0e9a39eed33047809 + +commit 9d7193a8359639801193ad661a59d1ae4dc3d302 +Author: djm@openbsd.org +Date: Mon Aug 21 04:59:54 2023 +0000 + + upstream: correct math for ClientAliveInterval that caused the + + probes to be sent less frequently than configured; from Dawid Majchrzak + + OpenBSD-Commit-ID: 641153e7c05117436ddfc58267aa267ca8b80038 + +commit 3c6ab63b383b0b7630da175941e01de9db32a256 +Author: Darren Tucker +Date: Fri Aug 25 14:48:02 2023 +1000 + + Include Portable version in sshd version string. + + bz#3608, ok djm@ + +commit 17fa6cd10a26e193bb6f65d21264d2fe553bcd87 +Author: Darren Tucker +Date: Mon Aug 21 19:47:58 2023 +1000 + + obsd-arm64 host is real hardware... + + so put in the correct config location. + +commit 598ca75c85acaaacee5ef954251e489cc20d7be9 +Author: Darren Tucker +Date: Mon Aug 21 18:38:36 2023 +1000 + + Add OpenBSD ARM64 test host. + +commit 1acac79bfbe207e8db639e8043524962037c8feb +Author: Darren Tucker +Date: Mon Aug 21 18:05:26 2023 +1000 + + Add test for zlib development branch. + +commit 84efebf352fc700e9040c8065707c63caedd36a3 +Author: djm@openbsd.org +Date: Mon Aug 21 04:36:46 2023 +0000 + + upstream: want stdlib.h for free(3) + + OpenBSD-Commit-ID: 743af3c6e3ce5e6cecd051668f0327a01f44af29 + +commit cb4ed12ffc332d1f72d054ed92655b5f1c38f621 +Author: Darren Tucker +Date: Sat Aug 19 07:39:08 2023 +1000 + + Fix zlib version check for 1.3 and future version. + + bz#3604. + +commit 25b75e21f16bccdaa472ea1889b293c9bd51a87b +Author: Darren Tucker +Date: Mon Aug 14 11:10:08 2023 +1000 + + Add 9.4 branch to CI status page. + +commit 803e22eabd3ba75485eedd8b7b44d6ace79f2052 +Author: djm@openbsd.org +Date: Fri Aug 18 01:37:41 2023 +0000 + + upstream: fix regression in OpenSSH 9.4 (mux.c r1.99) that caused + + multiplexed sessions to ignore SIGINT under some circumstances. Reported by / + feedback naddy@, ok dtucker@ + + OpenBSD-Commit-ID: 4d5c6c894664f50149153fd4764f21f43e7d7e5a + +commit e706bca324a70f68dadfd0ec69edfdd486eed23a +Author: djm@openbsd.org +Date: Wed Aug 16 16:14:11 2023 +0000 + + upstream: defence-in-depth MaxAuthTries check in monitor; ok markus + + OpenBSD-Commit-ID: 65a4225dc708e2dae71315adf93677edace46c21 + +commit d1ab7eb90474df656d5e9935bae6df0bd000d343 +Author: djm@openbsd.org +Date: Mon Aug 14 03:37:00 2023 +0000 + + upstream: add message number of SSH2_MSG_NEWCOMPRESS defined in RFC8308 + + OpenBSD-Commit-ID: 6c984171c96ed67effd7b5092f3d3975d55d6028 + +commit fa8da52934cb7dff6f660a143276bdb28bb9bbe1 +Author: Darren Tucker +Date: Sun Aug 13 15:01:27 2023 +1000 + + Add obsd72 and obsd73 test targets. + +commit f9f18006678d2eac8b0c5a5dddf17ab7c50d1e9f +Author: djm@openbsd.org +Date: Thu Aug 10 23:05:48 2023 +0000 + + upstream: better debug logging of sessions' exit status + + OpenBSD-Commit-ID: 82237567fcd4098797cbdd17efa6ade08e1a36b0 + +commit a8c57bcb077f0cfdffcf9f23866bf73bb93e185c +Author: naddy@openbsd.org +Date: Thu Aug 10 14:37:32 2023 +0000 + + upstream: drop a wayward comma, ok jmc@ + + OpenBSD-Commit-ID: 5c11fbb9592a29b37bbf36f66df50db9d38182c6 + +commit e962f9b318a238db1becc53c2bf79dd3a49095b4 Author: Damien Miller Date: Thu Aug 10 11:10:22 2023 +1000 depend -commit 41bfb63f5101fbacde9d8d2ada863f9ee16df194 +commit 0fcb60bf83130dfa428bc4422b3a3ac20fb528af Author: Damien Miller Date: Thu Aug 10 11:05:42 2023 +1000 update versions in RPM specs -commit e598b92b1eecedac21667edf1fe92078eaf8f2b1 +commit d0cee4298491314f09afa1c4383a66d913150b26 Author: Damien Miller Date: Thu Aug 10 11:05:14 2023 +1000 update version in README -commit e797e5ffa74377c8696e3b0559a258d836479239 +commit 78b4dc6684f4d35943b46b24ee645edfdb9974f5 Author: djm@openbsd.org Date: Thu Aug 10 01:01:07 2023 +0000 @@ -24,6 +511,12 @@ Date: Thu Aug 10 01:01:07 2023 +0000 OpenBSD-Commit-ID: 71fc1e01a4c4ea061b252bd399cda7be757e6e35 +commit 58ca4f0aa8c4306ac0a629c9a85fb1efaf4ff092 +Author: Darren Tucker +Date: Thu Aug 10 11:30:24 2023 +1000 + + Only include unistd.h once. + commit 3961ed02dc578517a9d2535128cff5c3a5460d28 Author: Damien Miller Date: Thu Aug 10 09:08:49 2023 +1000 @@ -9062,1113 +9555,3 @@ Date: Wed Oct 6 13:16:21 2021 +1100 fix broken OPENSSL_HAS_ECC test spotted by dtucker - -commit 16a25414f303cd6790eb967aeb962040e32c9c7a -Author: Damien Miller -Date: Fri Oct 1 22:40:06 2021 +1000 - - make sk-dummy.so work without libcrypto installed - -commit dee22129bbc61e25b1003adfa2bc584c5406ef2d -Author: Damien Miller -Date: Fri Oct 1 16:35:49 2021 +1000 - - make OPENSSL_HAS_ECC checks more thorough - - ok dtucker - -commit 872595572b6c9a584ed754165e8b7c4c9e7e1d61 -Author: Damien Miller -Date: Fri Oct 1 16:35:05 2021 +1000 - - fix FIDO key support for !OPENSSL_HAS_ECC case - - ok dtucker - -commit 489741dc68366940d369ac670b210b4834a6c272 -Author: Damien Miller -Date: Fri Oct 1 14:51:37 2021 +1000 - - enable security key support for --without-openssl - -commit c978565c8589acfe4ea37ab5099d39c84158c713 -Author: Damien Miller -Date: Fri Oct 1 13:27:50 2021 +1000 - - need stdlib.h for free(3) - -commit 76a398edfb51951b2d65d522d7b02c72304db300 -Author: dtucker@openbsd.org -Date: Thu Sep 30 05:26:26 2021 +0000 - - upstream: Fix up whitespace left by previous - - change removing privsep. No other changes. - - OpenBSD-Regress-ID: 87adec225d8afaee4d6a91b2b71203f52bf14b15 - -commit ddcb53b7a7b29be65d57562302b2d5f41733e8dd -Author: dtucker@openbsd.org -Date: Thu Sep 30 05:20:08 2021 +0000 - - upstream: Remove references to privsep. - - This removes several do..while loops but does not change the - indentation of the now-shallower loops, which will be done in a separate - whitespace-only commit to keep changes of style and substance separate. - - OpenBSD-Regress-ID: 4bed1a0249df7b4a87c965066ce689e79472a8f7 - -commit ece2fbe486164860de8df3f8b943cccca3085eff -Author: dtucker@openbsd.org -Date: Thu Sep 30 04:22:50 2021 +0000 - - upstream: Use "skip" instead of "fatal" - - if SUDO isn't set for the *-command tests. This means running "make tests" - without SUDO set will perform all of the tests that it can instead of - failing on the ones it cannot run. - - OpenBSD-Regress-ID: bd4dbbb02f34b2e8c890558ad4a696248def763a - -commit bb754b470c360e787a99fb4e88e2668198e97b41 -Author: djm@openbsd.org -Date: Fri Oct 1 04:50:36 2021 +0000 - - upstream: unbreak FIDO sk-ed25519 key enrollment for OPENSSL=no builds; - - ok dtucker@ - - OpenBSD-Commit-ID: 6323a5241728626cbb2bf0452cf6a5bcbd7ff709 - -commit 207648d7a6415dc915260ca75850404dbf9f0a0b -Author: Darren Tucker -Date: Wed Sep 29 20:03:58 2021 +1000 - - Include stdlib.h for arc4random_uniform prototype. - -commit 696aadc854582c164d5fc04933d2f3e212dc0e06 -Author: Darren Tucker -Date: Wed Sep 29 20:00:30 2021 +1000 - - Look for clang after cc and gcc. - -commit a3c6375555026d85dbf811fab566b9f76f196144 -Author: Darren Tucker -Date: Wed Sep 29 19:30:59 2021 +1000 - - Use backticks instead of $(..) for portability. - - Older shells (eg /bin/sh on Solaris 10) don't support $() syntax. - -commit 958aaa0387133d51f84fe9c8f30bca03025f2867 -Author: Darren Tucker -Date: Wed Sep 29 18:53:32 2021 +1000 - - Skip file-based tests by default on Mac OS. - - The file-based tests need OpenSSL so skip them. - -commit 55c8bdf6e9afb0f9fa8e4f10c25c7f0081b48fd0 -Author: Darren Tucker -Date: Wed Sep 29 18:42:47 2021 +1000 - - Build without OpenSSL on Mac OS. - - Modern versions don't ship enough libcrypto to build against. - -commit c9172193ea975415facf0afb356d87df21535f88 -Author: Darren Tucker -Date: Wed Sep 29 18:33:38 2021 +1000 - - Remove TEST_SSH_ECC. - - Convert the only remaining user of it to runtime detection using ssh -Q. - -commit 5e6d28b7874b0deae95d2c68947c45212d32e599 -Author: Darren Tucker -Date: Wed Sep 29 17:48:09 2021 +1000 - - Split c89 test openssl setting out. - -commit c4ac7f98e230e83c015678dc958b1ffe828564ad -Author: Darren Tucker -Date: Wed Sep 29 17:40:50 2021 +1000 - - Expand TEST_SHELL consistently with other vars. - -commit cfe5f7b0eb7621bfb0a756222de0431315c2ab8b -Author: Darren Tucker -Date: Wed Sep 29 17:26:50 2021 +1000 - - Replace `pwd` with make variable in regress cmd. - -commit 899be59da5fbc3372444bd0fbe74af48313bed33 -Author: Darren Tucker -Date: Wed Sep 29 17:14:33 2021 +1000 - - Get BUILDDIR from autoconf. - - Use this to replace `pwd`s in regress test command line. - -commit c8d92d3d4f7d560146f2f936156ec4dac3fc5811 -Author: Darren Tucker -Date: Wed Sep 29 13:28:56 2021 +1000 - - Add make clean step to tests. - -commit 360fb41ef8359619ab90b0d131c914494e55d3dd -Author: Darren Tucker -Date: Wed Sep 29 11:36:13 2021 +1000 - - Test all available clang and gcc versions. - -commit 4fb49899d7da22952d35a4bc4c9bdb2311087893 -Author: djm@openbsd.org -Date: Wed Sep 29 01:32:21 2021 +0000 - - upstream: Test certificate hostkeys held in ssh-agent too. Would have - - caught regression fixed in sshd r1.575 - - ok markus@ - - OpenBSD-Regress-ID: 1f164d7bd89f83762db823eec4ddf2d2556145ed - -commit ce4854e12e749a05646e5775e9deb8cfaf49a755 -Author: djm@openbsd.org -Date: Wed Sep 29 01:33:32 2021 +0000 - - upstream: add some debug output showing how many key file/command lines - - were processed. Useful to see whether a file or command actually has keys - present - - OpenBSD-Commit-ID: 0bd9ff94e84e03a22df8e6c12f6074a95d27f23c - -commit 15abdd523501c349b703d9a27e2bb4252ad921ef -Author: dtucker@openbsd.org -Date: Tue Sep 28 11:14:50 2021 +0000 - - upstream: Make prototype for rijndaelEncrypt match function - - including the bounds. Fixes error in portable where GCC>=11 takes notice of - the bounds. ok deraadt@ - - OpenBSD-Commit-ID: cdd2f05fd1549e1786a70871e513cf9e9cf099a6 - -commit d1d29ea1d1ef1a1a54b209f062ec1dcc8399cf03 -Author: dtucker@openbsd.org -Date: Tue Sep 28 11:10:05 2021 +0000 - - upstream: Import regenerated moduli. - - OpenBSD-Commit-ID: 4bec5db13b736b64b06a0fca704cbecc2874c8e1 - -commit 39f2111b1d5f00206446257377dcce58cc72369f -Author: Darren Tucker -Date: Wed Sep 29 10:53:55 2021 +1000 - - Add new compiler hardening flags. - - Add -fzero-call-used-regs and -ftrivial-auto-var-init to the list of - compiler hardening flags that configure checks for. These are supported - by clang and gcc, and make ROP gadgets less useful and mitigate - stack-based infoleaks respectively. ok djm@ - -commit bf944e3794eff5413f2df1ef37cddf96918c6bde -Author: Damien Miller -Date: Mon Sep 27 00:03:19 2021 +1000 - - initgroups needs grp.h - -commit 8c5b5655149bd76ea21026d7fe73ab387dbc3bc7 -Author: djm@openbsd.org -Date: Sun Sep 26 14:01:11 2021 +0000 - - upstream: openssh-8.8 - - OpenBSD-Commit-ID: 12357794602ac979eb7312a1fb190c453f492ec4 - -commit f3cbe43e28fe71427d41cfe3a17125b972710455 -Author: djm@openbsd.org -Date: Sun Sep 26 14:01:03 2021 +0000 - - upstream: need initgroups() before setresgid(); reported by anton@, - - ok deraadt@ - - OpenBSD-Commit-ID: 6aa003ee658b316960d94078f2a16edbc25087ce - -commit 8acaff41f7518be40774c626334157b1b1c5583c -Author: Damien Miller -Date: Sun Sep 26 22:16:36 2021 +1000 - - update version numbers for release - -commit d39039ddc0010baa91c70a0fa0753a2699bbf435 -Author: kn@openbsd.org -Date: Sat Sep 25 09:40:33 2021 +0000 - - upstream: RSA/SHA-1 is not used by default anymore - - OK dtucker deraadt djm - - OpenBSD-Commit-ID: 055c51a221c3f099dd75c95362f902da1b8678c6 - -commit 9b2ee74e3aa8c461eb5552a6ebf260449bb06f7e -Author: Darren Tucker -Date: Fri Sep 24 11:08:03 2021 +1000 - *** 4735 LINES SKIPPED *** From nobody Thu Oct 12 18:46:56 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S5zBn42h3z4wlsy; Thu, 12 Oct 2023 18:46: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 4S5zBn3jHlz3VB4; Thu, 12 Oct 2023 18:46:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697136417; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BO3EDOA9pGcDMgUoReemddCDZJ/4yVELb04K26QBhHM=; b=aVIOTvzePrc9/VbwJ46bI1PR9jbQUXDt2pBCBUpsLvTne4kxogQPjEdsbcRQRmqGXmZRAZ VbDYa9w8QA4TErH1XXv9HFEshOUd+LFIQnsAvTsAUxvd1BHD4EXyyI/BP6EU2IT2jpepf1 UODGdSWaVqUBEKHRTTVcvoDb53LFwVaaWbLh46w7oD65+sb7kuaW/gytVIPuPeyy0AunKB GOASkFd/r0zQudK8EBvfItQxz89KKrBYM3WpYkq9/Ny1lIVvugYj11uRQPkjxw4GHXpW9j 4tmukZqIA23XN+AlOsIbQi61x88iMth0dGln1XiwfaSiu1JZ+bdZIm9vKLfu8Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697136417; a=rsa-sha256; cv=none; b=lR8A8cupBHFg+NlwJVkBuvyGs7JvF8Lwk9Qd4stNLz2C+vrvCQyEySiM5rFLyF4OLOChHk k3KeIQ1SKjcCMByomEsyt7NPFEQXeOBBYg7zdnv3HLSkUjMgKnPbU6yjXsPLoaONdRO9qn 7/t1e2uYm4qSdGMBT8Ke9l0GxWkxK3ZbAPZSEjACJRwXv8K7wMDXkjRHOCj4bH2oaCy9Vh CaJtC9Ni41Mpx/iy0616+eFje/oG9BplhzvGA/t/ogWgSMAjE74+c++aYUusfdaGMz1G2r gRiHqaP/rNRFjdBXRFd6iW33YhQJYSeFBZK2PvL+aLW02N9WgVsiMKLwQX0mQA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697136417; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BO3EDOA9pGcDMgUoReemddCDZJ/4yVELb04K26QBhHM=; b=URZLCdDF2GpJLSwwYMwQsCFojNnUDUEozR7WRkQU+h82/64QY7bu8i4ZQTgc2OmFx5vFDv cPVSAPfAhMA1VipP2MldEd0duSIcFsF/DCPZRKSDyarFhAMr9ZusjvafSG4J3wtgzHVxhg r00EmyVl8ixTkV6v+CicjGGxcfd5vkk0aU5xyYjpSqkIkIg1912ZWpVCnWkPDpq0i1KvHg +Ahx5uBbnj79o0TPesifzvVr395I+f8LnhThiAmWrPGGRjOuwe+Q3gQZIbY89E9NGDWhX2 7JCflTUtX/JWaZnK7gtHva/iFipPbDmFO5xTtgZgSpcmC0stc/pmOchnztuTGQ== 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 4S5zBn2mWMz1g4; Thu, 12 Oct 2023 18:46:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CIkvgk023759; Thu, 12 Oct 2023 18:46:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CIku5C023756; Thu, 12 Oct 2023 18:46:56 GMT (envelope-from git) Date: Thu, 12 Oct 2023 18:46:56 GMT Message-Id: <202310121846.39CIku5C023756@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: bbecb0ff6c9e - stable/14 - OpenSSL: update to 3.0.11 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: bbecb0ff6c9e2fc05c096ce2ca5387df0d8e99fe Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=bbecb0ff6c9e2fc05c096ce2ca5387df0d8e99fe commit bbecb0ff6c9e2fc05c096ce2ca5387df0d8e99fe Author: Pierre Pronchery AuthorDate: 2023-10-09 19:00:25 +0000 Commit: Ed Maste CommitDate: 2023-10-12 18:46:11 +0000 OpenSSL: update to 3.0.11 OpenSSL 3.0.11 addresses: POLY1305 MAC implementation corrupts XMM registers on Windows (CVE-2023-4807) Relnotes: Yes Pull request: https://github.com/freebsd/freebsd-src/pull/852 Sponsored by: The FreeBSD Foundation (cherry picked from commit 6f1af0d7d2af54b339b5212434cd6d4fda628d80) --- crypto/openssl/CHANGES.md | 25 +++++++++ crypto/openssl/NEWS.md | 6 ++ crypto/openssl/README.md | 2 +- crypto/openssl/VERSION.dat | 4 +- crypto/openssl/apps/cmp.c | 2 +- crypto/openssl/apps/lib/apps.c | 13 ++--- crypto/openssl/apps/req.c | 8 +-- crypto/openssl/apps/s_server.c | 2 +- crypto/openssl/crypto/asn1/a_strnid.c | 4 +- crypto/openssl/crypto/asn1/asn1_gen.c | 11 ++-- crypto/openssl/crypto/chacha/asm/chacha-ia64.pl | 2 + crypto/openssl/crypto/cmp/cmp_asn.c | 10 ++-- crypto/openssl/crypto/cmp/cmp_client.c | 2 +- crypto/openssl/crypto/cmp/cmp_status.c | 7 ++- crypto/openssl/crypto/cms/cms_env.c | 21 ++++++- crypto/openssl/crypto/cms/cms_lib.c | 5 +- crypto/openssl/crypto/cms/cms_local.h | 3 +- crypto/openssl/crypto/cms/cms_sd.c | 6 +- crypto/openssl/crypto/conf/conf_sap.c | 3 +- crypto/openssl/crypto/encode_decode/decoder_lib.c | 7 ++- crypto/openssl/crypto/encode_decode/decoder_pkey.c | 8 ++- crypto/openssl/crypto/engine/eng_lib.c | 24 +++++--- crypto/openssl/crypto/engine/eng_list.c | 11 ++-- crypto/openssl/crypto/engine/eng_local.h | 6 +- crypto/openssl/crypto/engine/eng_table.c | 12 ++-- crypto/openssl/crypto/evp/ctrl_params_translate.c | 22 +++++--- crypto/openssl/crypto/evp/p_lib.c | 2 + crypto/openssl/crypto/http/http_client.c | 15 +++-- crypto/openssl/crypto/mem.c | 5 +- crypto/openssl/crypto/pem/pem_pkey.c | 13 ++++- crypto/openssl/crypto/perlasm/arm-xlate.pl | 2 +- crypto/openssl/crypto/pkcs12/p12_crt.c | 64 +++++++++++++++------- .../openssl/crypto/poly1305/asm/poly1305-x86_64.pl | 6 +- crypto/openssl/crypto/property/property.c | 6 +- crypto/openssl/crypto/provider_core.c | 8 +-- crypto/openssl/crypto/rsa/rsa_ameth.c | 5 +- crypto/openssl/crypto/srp/srp_vfy.c | 3 +- crypto/openssl/crypto/store/store_lib.c | 6 +- crypto/openssl/crypto/threads_pthread.c | 4 +- crypto/openssl/crypto/x509/v3_ist.c | 8 +-- crypto/openssl/crypto/x509/x509_cmp.c | 9 ++- crypto/openssl/doc/man1/openssl-cmp.pod.in | 31 +++++++---- crypto/openssl/doc/man1/openssl-cms.pod.in | 4 +- crypto/openssl/doc/man1/openssl-ts.pod.in | 4 +- crypto/openssl/doc/man3/BIO_s_mem.pod | 22 +++++++- crypto/openssl/doc/man3/CMS_sign.pod | 4 +- crypto/openssl/doc/man3/EVP_MAC.pod | 4 +- crypto/openssl/doc/man3/EVP_SIGNATURE.pod | 4 +- crypto/openssl/doc/man3/OSSL_CMP_CTX_new.pod | 30 +++++----- crypto/openssl/doc/man3/OSSL_CMP_exec_certreq.pod | 16 ++++-- crypto/openssl/doc/man3/OSSL_HTTP_REQ_CTX.pod | 12 ++-- crypto/openssl/doc/man3/OSSL_HTTP_transfer.pod | 9 ++- crypto/openssl/doc/man3/PKCS12_create.pod | 9 ++- crypto/openssl/doc/man3/PKCS12_gen_mac.pod | 2 + crypto/openssl/doc/man3/SSL_new.pod | 4 +- crypto/openssl/doc/man3/d2i_RSAPrivateKey.pod | 6 +- crypto/openssl/doc/man3/d2i_X509.pod | 2 + crypto/openssl/doc/man5/x509v3_config.pod | 4 +- crypto/openssl/doc/man7/EVP_KDF-PKCS12KDF.pod | 8 ++- crypto/openssl/doc/man7/migration_guide.pod | 9 +++ crypto/openssl/include/openssl/opensslv.h | 10 ++-- crypto/openssl/providers/fips-sources.checksums | 14 ++--- crypto/openssl/providers/fips.checksum | 2 +- .../implementations/ciphers/cipher_chacha20.c | 23 +++++++- .../implementations/encode_decode/decode_der2key.c | 6 +- .../encode_decode/decode_msblob2key.c | 22 +++++++- .../implementations/encode_decode/decode_pvk2key.c | 21 ++++++- .../implementations/encode_decode/encode_key2any.c | 7 ++- .../providers/implementations/keymgmt/dh_kmgmt.c | 3 + .../providers/implementations/keymgmt/dsa_kmgmt.c | 3 + .../providers/implementations/keymgmt/ecx_kmgmt.c | 5 +- .../implementations/keymgmt/mac_legacy_kmgmt.c | 5 +- crypto/openssl/ssl/ssl_lib.c | 10 ++-- crypto/openssl/ssl/ssl_sess.c | 5 +- crypto/openssl/ssl/statem/extensions_srvr.c | 4 +- secure/lib/libcrypto/Makefile.inc | 4 +- secure/lib/libcrypto/man/man3/ADMISSIONS.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_EXTERN_FUNCS.3 | 6 +- .../libcrypto/man/man3/ASN1_INTEGER_get_int64.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_INTEGER_new.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_ITEM_lookup.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_OBJECT_new.3 | 6 +- .../lib/libcrypto/man/man3/ASN1_STRING_TABLE_add.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_STRING_length.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_STRING_new.3 | 6 +- .../lib/libcrypto/man/man3/ASN1_STRING_print_ex.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_TIME_set.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_TYPE_get.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_aux_cb.3 | 6 +- .../lib/libcrypto/man/man3/ASN1_generate_nconf.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_item_d2i_bio.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_item_new.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_item_sign.3 | 6 +- secure/lib/libcrypto/man/man3/ASYNC_WAIT_CTX_new.3 | 6 +- secure/lib/libcrypto/man/man3/ASYNC_start_job.3 | 6 +- secure/lib/libcrypto/man/man3/BF_encrypt.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_ADDR.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_ADDRINFO.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_connect.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_ctrl.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_base64.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_buffer.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_cipher.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_md.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_null.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_prefix.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_readbuffer.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_ssl.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_find_type.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_get_data.3 | 6 +- .../lib/libcrypto/man/man3/BIO_get_ex_new_index.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_meth_new.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_new.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_new_CMS.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_parse_hostserv.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_printf.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_push.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_read.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_accept.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_bio.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_connect.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_core.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_datagram.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_fd.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_file.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_mem.3 | 31 +++++++++-- secure/lib/libcrypto/man/man3/BIO_s_null.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_socket.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_set_callback.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_should_retry.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_socket_wait.3 | 6 +- secure/lib/libcrypto/man/man3/BN_BLINDING_new.3 | 6 +- secure/lib/libcrypto/man/man3/BN_CTX_new.3 | 6 +- secure/lib/libcrypto/man/man3/BN_CTX_start.3 | 6 +- secure/lib/libcrypto/man/man3/BN_add.3 | 6 +- secure/lib/libcrypto/man/man3/BN_add_word.3 | 6 +- secure/lib/libcrypto/man/man3/BN_bn2bin.3 | 6 +- secure/lib/libcrypto/man/man3/BN_cmp.3 | 6 +- secure/lib/libcrypto/man/man3/BN_copy.3 | 6 +- secure/lib/libcrypto/man/man3/BN_generate_prime.3 | 6 +- secure/lib/libcrypto/man/man3/BN_mod_exp_mont.3 | 6 +- secure/lib/libcrypto/man/man3/BN_mod_inverse.3 | 6 +- .../lib/libcrypto/man/man3/BN_mod_mul_montgomery.3 | 6 +- .../lib/libcrypto/man/man3/BN_mod_mul_reciprocal.3 | 6 +- secure/lib/libcrypto/man/man3/BN_new.3 | 6 +- secure/lib/libcrypto/man/man3/BN_num_bytes.3 | 6 +- secure/lib/libcrypto/man/man3/BN_rand.3 | 6 +- secure/lib/libcrypto/man/man3/BN_security_bits.3 | 6 +- secure/lib/libcrypto/man/man3/BN_set_bit.3 | 6 +- secure/lib/libcrypto/man/man3/BN_swap.3 | 6 +- secure/lib/libcrypto/man/man3/BN_zero.3 | 6 +- secure/lib/libcrypto/man/man3/BUF_MEM_new.3 | 6 +- .../libcrypto/man/man3/CMS_EncryptedData_decrypt.3 | 6 +- .../libcrypto/man/man3/CMS_EncryptedData_encrypt.3 | 6 +- .../libcrypto/man/man3/CMS_EnvelopedData_create.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_add0_cert.3 | 6 +- .../libcrypto/man/man3/CMS_add1_recipient_cert.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_add1_signer.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_compress.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_data_create.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_decrypt.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_digest_create.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_encrypt.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_final.3 | 6 +- .../libcrypto/man/man3/CMS_get0_RecipientInfos.3 | 6 +- .../lib/libcrypto/man/man3/CMS_get0_SignerInfos.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_get0_type.3 | 6 +- .../libcrypto/man/man3/CMS_get1_ReceiptRequest.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_sign.3 | 10 ++-- secure/lib/libcrypto/man/man3/CMS_sign_receipt.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_uncompress.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_verify.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_verify_receipt.3 | 6 +- secure/lib/libcrypto/man/man3/CONF_modules_free.3 | 6 +- .../libcrypto/man/man3/CONF_modules_load_file.3 | 6 +- .../libcrypto/man/man3/CRYPTO_THREAD_run_once.3 | 6 +- .../libcrypto/man/man3/CRYPTO_get_ex_new_index.3 | 6 +- secure/lib/libcrypto/man/man3/CRYPTO_memcmp.3 | 6 +- .../man/man3/CTLOG_STORE_get0_log_by_id.3 | 6 +- secure/lib/libcrypto/man/man3/CTLOG_STORE_new.3 | 6 +- secure/lib/libcrypto/man/man3/CTLOG_new.3 | 6 +- .../libcrypto/man/man3/CT_POLICY_EVAL_CTX_new.3 | 6 +- secure/lib/libcrypto/man/man3/DEFINE_STACK_OF.3 | 6 +- secure/lib/libcrypto/man/man3/DES_random_key.3 | 6 +- secure/lib/libcrypto/man/man3/DH_generate_key.3 | 6 +- .../libcrypto/man/man3/DH_generate_parameters.3 | 6 +- secure/lib/libcrypto/man/man3/DH_get0_pqg.3 | 6 +- secure/lib/libcrypto/man/man3/DH_get_1024_160.3 | 6 +- secure/lib/libcrypto/man/man3/DH_meth_new.3 | 6 +- secure/lib/libcrypto/man/man3/DH_new.3 | 6 +- secure/lib/libcrypto/man/man3/DH_new_by_nid.3 | 6 +- secure/lib/libcrypto/man/man3/DH_set_method.3 | 6 +- secure/lib/libcrypto/man/man3/DH_size.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_SIG_new.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_do_sign.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_dup_DH.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_generate_key.3 | 6 +- .../libcrypto/man/man3/DSA_generate_parameters.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_get0_pqg.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_meth_new.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_new.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_set_method.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_sign.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_size.3 | 6 +- secure/lib/libcrypto/man/man3/DTLS_get_data_mtu.3 | 6 +- secure/lib/libcrypto/man/man3/DTLS_set_timer_cb.3 | 6 +- secure/lib/libcrypto/man/man3/DTLSv1_listen.3 | 6 +- secure/lib/libcrypto/man/man3/ECDSA_SIG_new.3 | 6 +- secure/lib/libcrypto/man/man3/ECDSA_sign.3 | 6 +- .../lib/libcrypto/man/man3/ECPKParameters_print.3 | 6 +- .../lib/libcrypto/man/man3/EC_GFp_simple_method.3 | 6 +- secure/lib/libcrypto/man/man3/EC_GROUP_copy.3 | 6 +- secure/lib/libcrypto/man/man3/EC_GROUP_new.3 | 6 +- .../lib/libcrypto/man/man3/EC_KEY_get_enc_flags.3 | 6 +- secure/lib/libcrypto/man/man3/EC_KEY_new.3 | 6 +- secure/lib/libcrypto/man/man3/EC_POINT_add.3 | 6 +- secure/lib/libcrypto/man/man3/EC_POINT_new.3 | 6 +- secure/lib/libcrypto/man/man3/ENGINE_add.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_GET_LIB.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_clear_error.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_error_string.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_get_error.3 | 6 +- .../libcrypto/man/man3/ERR_load_crypto_strings.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_load_strings.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_new.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_print_errors.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_put_error.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_remove_state.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_set_mark.3 | 6 +- .../lib/libcrypto/man/man3/EVP_ASYM_CIPHER_free.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_BytesToKey.3 | 6 +- .../man/man3/EVP_CIPHER_CTX_get_cipher_data.3 | 6 +- .../man/man3/EVP_CIPHER_CTX_get_original_iv.3 | 6 +- .../lib/libcrypto/man/man3/EVP_CIPHER_meth_new.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_DigestInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_DigestSignInit.3 | 6 +- .../lib/libcrypto/man/man3/EVP_DigestVerifyInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_EncodeInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_EncryptInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_KDF.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_KEM_free.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_KEYEXCH_free.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_KEYMGMT.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_MAC.3 | 10 ++-- secure/lib/libcrypto/man/man3/EVP_MD_meth_new.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_OpenInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PBE_CipherInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY2PKCS8.3 | 6 +- .../lib/libcrypto/man/man3/EVP_PKEY_ASN1_METHOD.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_ctrl.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_CTX_get0_libctx.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_CTX_get0_pkey.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_new.3 | 6 +- .../man/man3/EVP_PKEY_CTX_set1_pbe_pass.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_CTX_set_hkdf_md.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_CTX_set_params.3 | 6 +- .../man/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_CTX_set_scrypt_N.3 | 6 +- .../man/man3/EVP_PKEY_CTX_set_tls1_prf_md.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_asn1_get_count.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_check.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_copy_parameters.3 | 6 +- .../lib/libcrypto/man/man3/EVP_PKEY_decapsulate.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_decrypt.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_derive.3 | 6 +- .../man/man3/EVP_PKEY_digestsign_supports_digest.3 | 6 +- .../lib/libcrypto/man/man3/EVP_PKEY_encapsulate.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_encrypt.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_fromdata.3 | 6 +- .../man/man3/EVP_PKEY_get_default_digest_nid.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_get_field_type.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_get_group_name.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_get_size.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_gettable_params.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_is_a.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_keygen.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_meth_get_count.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_meth_new.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_new.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_print_private.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_set1_RSA.3 | 6 +- .../man/man3/EVP_PKEY_set1_encoded_public_key.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_set_type.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_settable_params.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_sign.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_todata.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_verify.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_verify_recover.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_RAND.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_SIGNATURE.3 | 10 ++-- secure/lib/libcrypto/man/man3/EVP_SealInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_SignInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_VerifyInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_aes_128_gcm.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_aria_128_gcm.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_bf_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_blake2b512.3 | 6 +- .../lib/libcrypto/man/man3/EVP_camellia_128_ecb.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_cast5_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_chacha20.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_des_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_desx_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_idea_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_md2.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_md4.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_md5.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_mdc2.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_rc2_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_rc4.3 | 6 +- .../lib/libcrypto/man/man3/EVP_rc5_32_12_16_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_ripemd160.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_seed_cbc.3 | 6 +- .../man/man3/EVP_set_default_properties.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_sha1.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_sha224.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_sha3_224.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_sm3.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_sm4_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_whirlpool.3 | 6 +- secure/lib/libcrypto/man/man3/HMAC.3 | 6 +- secure/lib/libcrypto/man/man3/MD5.3 | 6 +- secure/lib/libcrypto/man/man3/MDC2_Init.3 | 6 +- secure/lib/libcrypto/man/man3/NCONF_new_ex.3 | 6 +- secure/lib/libcrypto/man/man3/OBJ_nid2obj.3 | 6 +- secure/lib/libcrypto/man/man3/OCSP_REQUEST_new.3 | 6 +- secure/lib/libcrypto/man/man3/OCSP_cert_to_id.3 | 6 +- .../libcrypto/man/man3/OCSP_request_add1_nonce.3 | 6 +- .../lib/libcrypto/man/man3/OCSP_resp_find_status.3 | 6 +- .../lib/libcrypto/man/man3/OCSP_response_status.3 | 6 +- secure/lib/libcrypto/man/man3/OCSP_sendreq_new.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_Applink.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_FILE.3 | 6 +- .../lib/libcrypto/man/man3/OPENSSL_LH_COMPFUNC.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_LH_stats.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_config.3 | 6 +- .../lib/libcrypto/man/man3/OPENSSL_fork_prepare.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_gmtime.3 | 6 +- .../lib/libcrypto/man/man3/OPENSSL_hexchar2int.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_ia32cap.3 | 6 +- .../lib/libcrypto/man/man3/OPENSSL_init_crypto.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_init_ssl.3 | 6 +- .../libcrypto/man/man3/OPENSSL_instrument_bus.3 | 6 +- .../man/man3/OPENSSL_load_builtin_modules.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_malloc.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_s390xcap.3 | 6 +- .../lib/libcrypto/man/man3/OPENSSL_secure_malloc.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_strcasecmp.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_ALGORITHM.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_CALLBACK.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_CMP_CTX_new.3 | 38 ++++++------- .../man/man3/OSSL_CMP_HDR_get0_transactionID.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_CMP_ITAV_set0.3 | 6 +- .../libcrypto/man/man3/OSSL_CMP_MSG_get0_header.3 | 6 +- .../libcrypto/man/man3/OSSL_CMP_MSG_http_perform.3 | 6 +- .../lib/libcrypto/man/man3/OSSL_CMP_SRV_CTX_new.3 | 6 +- .../libcrypto/man/man3/OSSL_CMP_STATUSINFO_new.3 | 6 +- .../lib/libcrypto/man/man3/OSSL_CMP_exec_certreq.3 | 22 +++++--- secure/lib/libcrypto/man/man3/OSSL_CMP_log_open.3 | 6 +- .../lib/libcrypto/man/man3/OSSL_CMP_validate_msg.3 | 6 +- .../lib/libcrypto/man/man3/OSSL_CORE_MAKE_FUNC.3 | 6 +- .../libcrypto/man/man3/OSSL_CRMF_MSG_get0_tmpl.3 | 6 +- .../man/man3/OSSL_CRMF_MSG_set0_validity.3 | 6 +- .../man/man3/OSSL_CRMF_MSG_set1_regCtrl_regToken.3 | 6 +- .../man/man3/OSSL_CRMF_MSG_set1_regInfo_certReq.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_CRMF_pbmp_new.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_DECODER.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_DECODER_CTX.3 | 6 +- .../man/man3/OSSL_DECODER_CTX_new_for_pkey.3 | 6 +- .../lib/libcrypto/man/man3/OSSL_DECODER_from_bio.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_DISPATCH.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_ENCODER.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_ENCODER_CTX.3 | 6 +- .../man/man3/OSSL_ENCODER_CTX_new_for_pkey.3 | 6 +- .../lib/libcrypto/man/man3/OSSL_ENCODER_to_bio.3 | 6 +- .../man/man3/OSSL_ESS_check_signing_certs.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_HTTP_REQ_CTX.3 | 18 +++--- .../lib/libcrypto/man/man3/OSSL_HTTP_parse_url.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_HTTP_transfer.3 | 15 +++-- secure/lib/libcrypto/man/man3/OSSL_ITEM.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_LIB_CTX.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_PARAM.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_PARAM_BLD.3 | 6 +- .../man/man3/OSSL_PARAM_allocate_from_text.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_PARAM_dup.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_PARAM_int.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_PROVIDER.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_SELF_TEST_new.3 | 6 +- .../man/man3/OSSL_SELF_TEST_set_callback.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_STORE_INFO.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_STORE_LOADER.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_STORE_SEARCH.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_STORE_attach.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_STORE_expect.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_STORE_open.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_trace_enabled.3 | 6 +- .../man/man3/OSSL_trace_get_category_num.3 | 6 +- .../libcrypto/man/man3/OSSL_trace_set_channel.3 | 6 +- .../man/man3/OpenSSL_add_all_algorithms.3 | 6 +- secure/lib/libcrypto/man/man3/OpenSSL_version.3 | 6 +- .../libcrypto/man/man3/PEM_X509_INFO_read_bio_ex.3 | 6 +- secure/lib/libcrypto/man/man3/PEM_bytes_read_bio.3 | 6 +- secure/lib/libcrypto/man/man3/PEM_read.3 | 6 +- secure/lib/libcrypto/man/man3/PEM_read_CMS.3 | 6 +- .../libcrypto/man/man3/PEM_read_bio_PrivateKey.3 | 6 +- secure/lib/libcrypto/man/man3/PEM_read_bio_ex.3 | 6 +- .../libcrypto/man/man3/PEM_write_bio_CMS_stream.3 | 6 +- .../man/man3/PEM_write_bio_PKCS7_stream.3 | 6 +- .../lib/libcrypto/man/man3/PKCS12_PBE_keyivgen.3 | 6 +- .../man/man3/PKCS12_SAFEBAG_create_cert.3 | 6 +- .../libcrypto/man/man3/PKCS12_SAFEBAG_get0_attrs.3 | 6 +- .../libcrypto/man/man3/PKCS12_SAFEBAG_get1_cert.3 | 6 +- .../libcrypto/man/man3/PKCS12_add1_attr_by_NID.3 | 6 +- .../libcrypto/man/man3/PKCS12_add_CSPName_asc.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS12_add_cert.3 | 6 +- .../man/man3/PKCS12_add_friendlyname_asc.3 | 6 +- .../lib/libcrypto/man/man3/PKCS12_add_localkeyid.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS12_add_safe.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS12_create.3 | 15 +++-- .../lib/libcrypto/man/man3/PKCS12_decrypt_skey.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS12_gen_mac.3 | 8 ++- .../libcrypto/man/man3/PKCS12_get_friendlyname.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS12_init.3 | 6 +- .../libcrypto/man/man3/PKCS12_item_decrypt_d2i.3 | 6 +- .../libcrypto/man/man3/PKCS12_key_gen_utf8_ex.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS12_newpass.3 | 6 +- .../lib/libcrypto/man/man3/PKCS12_pack_p7encdata.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS12_parse.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS5_PBE_keyivgen.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS5_PBKDF2_HMAC.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS7_decrypt.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS7_encrypt.3 | 6 +- .../libcrypto/man/man3/PKCS7_get_octet_string.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS7_sign.3 | 6 +- .../lib/libcrypto/man/man3/PKCS7_sign_add_signer.3 | 6 +- .../lib/libcrypto/man/man3/PKCS7_type_is_other.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS7_verify.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS8_encrypt.3 | 6 +- .../lib/libcrypto/man/man3/PKCS8_pkey_add1_attr.3 | 6 +- secure/lib/libcrypto/man/man3/RAND_add.3 | 6 +- secure/lib/libcrypto/man/man3/RAND_bytes.3 | 6 +- secure/lib/libcrypto/man/man3/RAND_cleanup.3 | 6 +- secure/lib/libcrypto/man/man3/RAND_egd.3 | 6 +- secure/lib/libcrypto/man/man3/RAND_get0_primary.3 | 6 +- secure/lib/libcrypto/man/man3/RAND_load_file.3 | 6 +- secure/lib/libcrypto/man/man3/RAND_set_DRBG_type.3 | 6 +- .../lib/libcrypto/man/man3/RAND_set_rand_method.3 | 6 +- secure/lib/libcrypto/man/man3/RC4_set_key.3 | 6 +- secure/lib/libcrypto/man/man3/RIPEMD160_Init.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_blinding_on.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_check_key.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_generate_key.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_get0_key.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_meth_new.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_new.3 | 6 +- .../man/man3/RSA_padding_add_PKCS1_type_1.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_print.3 | 6 +- .../lib/libcrypto/man/man3/RSA_private_encrypt.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_public_encrypt.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_set_method.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_sign.3 | 6 +- .../man/man3/RSA_sign_ASN1_OCTET_STRING.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_size.3 | 6 +- secure/lib/libcrypto/man/man3/SCT_new.3 | 6 +- secure/lib/libcrypto/man/man3/SCT_print.3 | 6 +- secure/lib/libcrypto/man/man3/SCT_validate.3 | 6 +- secure/lib/libcrypto/man/man3/SHA256_Init.3 | 6 +- secure/lib/libcrypto/man/man3/SMIME_read_ASN1.3 | 6 +- secure/lib/libcrypto/man/man3/SMIME_read_CMS.3 | 6 +- secure/lib/libcrypto/man/man3/SMIME_read_PKCS7.3 | 6 +- secure/lib/libcrypto/man/man3/SMIME_write_ASN1.3 | 6 +- secure/lib/libcrypto/man/man3/SMIME_write_CMS.3 | 6 +- secure/lib/libcrypto/man/man3/SMIME_write_PKCS7.3 | 6 +- secure/lib/libcrypto/man/man3/SRP_Calc_B.3 | 6 +- secure/lib/libcrypto/man/man3/SRP_VBASE_new.3 | 6 +- .../lib/libcrypto/man/man3/SRP_create_verifier.3 | 6 +- secure/lib/libcrypto/man/man3/SRP_user_pwd_new.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CIPHER_get_name.3 | 6 +- .../man/man3/SSL_COMP_add_compression_method.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CONF_CTX_new.3 | 6 +- .../libcrypto/man/man3/SSL_CONF_CTX_set1_prefix.3 | 6 +- .../libcrypto/man/man3/SSL_CONF_CTX_set_flags.3 | 6 +- .../libcrypto/man/man3/SSL_CONF_CTX_set_ssl_ctx.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CONF_cmd.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CONF_cmd_argv.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_add1_chain_cert.3 | 6 +- .../man/man3/SSL_CTX_add_extra_chain_cert.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_add_session.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_config.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_ctrl.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_dane_enable.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_flush_sessions.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_free.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_get0_param.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_get_verify_mode.3 | 6 +- .../man/man3/SSL_CTX_has_client_custom_ext.3 | 6 +- .../man/man3/SSL_CTX_load_verify_locations.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_new.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_sess_number.3 | 6 +- .../man/man3/SSL_CTX_sess_set_cache_size.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_sess_set_get_cb.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_sessions.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_set0_CA_list.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_set1_curves.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_set1_sigalgs.3 | 6 +- .../man/man3/SSL_CTX_set1_verify_cert_store.3 | 6 +- .../man/man3/SSL_CTX_set_alpn_select_cb.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_set_cert_cb.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_cert_store.3 | 6 +- .../man/man3/SSL_CTX_set_cert_verify_callback.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_cipher_list.3 | 6 +- .../man/man3/SSL_CTX_set_client_cert_cb.3 | 6 +- .../man/man3/SSL_CTX_set_client_hello_cb.3 | 6 +- .../man/man3/SSL_CTX_set_ct_validation_callback.3 | 6 +- .../man/man3/SSL_CTX_set_ctlog_list_file.3 | 6 +- .../man/man3/SSL_CTX_set_default_passwd_cb.3 | 6 +- .../man/man3/SSL_CTX_set_generate_session_id.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_info_callback.3 | 6 +- .../man/man3/SSL_CTX_set_keylog_callback.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_max_cert_list.3 | 6 +- .../man/man3/SSL_CTX_set_min_proto_version.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_set_mode.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_msg_callback.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_num_tickets.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_set_options.3 | 6 +- .../man/man3/SSL_CTX_set_psk_client_callback.3 | 6 +- .../man/man3/SSL_CTX_set_quiet_shutdown.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_read_ahead.3 | 6 +- .../man/man3/SSL_CTX_set_record_padding_callback.3 | 6 +- .../man/man3/SSL_CTX_set_security_level.3 | 6 +- .../man/man3/SSL_CTX_set_session_cache_mode.3 | 6 +- .../man/man3/SSL_CTX_set_session_id_context.3 | 6 +- .../man/man3/SSL_CTX_set_session_ticket_cb.3 | 6 +- .../man/man3/SSL_CTX_set_split_send_fragment.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_srp_password.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_ssl_version.3 | 6 +- .../SSL_CTX_set_stateless_cookie_generate_cb.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_set_timeout.3 | 6 +- .../man3/SSL_CTX_set_tlsext_servername_callback.3 | 6 +- .../man/man3/SSL_CTX_set_tlsext_status_cb.3 | 6 +- .../man/man3/SSL_CTX_set_tlsext_ticket_key_cb.3 | 6 +- .../man/man3/SSL_CTX_set_tlsext_use_srtp.3 | 6 +- .../man/man3/SSL_CTX_set_tmp_dh_callback.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_set_tmp_ecdh.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_set_verify.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_use_certificate.3 | 6 +- .../man/man3/SSL_CTX_use_psk_identity_hint.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_use_serverinfo.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_SESSION_free.3 | 6 +- .../libcrypto/man/man3/SSL_SESSION_get0_cipher.3 | 6 +- .../libcrypto/man/man3/SSL_SESSION_get0_hostname.3 | 6 +- .../man/man3/SSL_SESSION_get0_id_context.3 | 6 +- .../lib/libcrypto/man/man3/SSL_SESSION_get0_peer.3 | 6 +- .../man/man3/SSL_SESSION_get_compress_id.3 | 6 +- .../man/man3/SSL_SESSION_get_protocol_version.3 | 6 +- .../lib/libcrypto/man/man3/SSL_SESSION_get_time.3 | 6 +- .../libcrypto/man/man3/SSL_SESSION_has_ticket.3 | 6 +- .../libcrypto/man/man3/SSL_SESSION_is_resumable.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_SESSION_print.3 | 6 +- .../lib/libcrypto/man/man3/SSL_SESSION_set1_id.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_accept.3 | 6 +- .../lib/libcrypto/man/man3/SSL_alert_type_string.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_alloc_buffers.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_check_chain.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_clear.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_connect.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_do_handshake.3 | 6 +- .../man/man3/SSL_export_keying_material.3 | 6 +- .../libcrypto/man/man3/SSL_extension_supported.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_free.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get0_peer_scts.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get_SSL_CTX.3 | 6 +- .../lib/libcrypto/man/man3/SSL_get_all_async_fds.3 | 6 +- .../lib/libcrypto/man/man3/SSL_get_certificate.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get_ciphers.3 | 6 +- .../lib/libcrypto/man/man3/SSL_get_client_random.3 | 6 +- .../libcrypto/man/man3/SSL_get_current_cipher.3 | 6 +- .../libcrypto/man/man3/SSL_get_default_timeout.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get_error.3 | 6 +- .../lib/libcrypto/man/man3/SSL_get_extms_support.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get_fd.3 | 6 +- .../libcrypto/man/man3/SSL_get_peer_cert_chain.3 | 6 +- .../libcrypto/man/man3/SSL_get_peer_certificate.3 | 6 +- .../man/man3/SSL_get_peer_signature_nid.3 | 6 +- .../lib/libcrypto/man/man3/SSL_get_peer_tmp_key.3 | 6 +- .../lib/libcrypto/man/man3/SSL_get_psk_identity.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get_rbio.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get_session.3 | 6 +- .../libcrypto/man/man3/SSL_get_shared_sigalgs.3 | 6 +- .../lib/libcrypto/man/man3/SSL_get_verify_result.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get_version.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_group_to_name.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_in_init.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_key_update.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_library_init.3 | 6 +- .../libcrypto/man/man3/SSL_load_client_CA_file.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_new.3 | 10 ++-- secure/lib/libcrypto/man/man3/SSL_pending.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_read.3 | 6 +- .../lib/libcrypto/man/man3/SSL_read_early_data.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_rstate_string.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_session_reused.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_set1_host.3 | 6 +- .../libcrypto/man/man3/SSL_set_async_callback.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_set_bio.3 | 6 +- .../lib/libcrypto/man/man3/SSL_set_connect_state.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_set_fd.3 | 6 +- .../lib/libcrypto/man/man3/SSL_set_retry_verify.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_set_session.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_set_shutdown.3 | 6 +- .../lib/libcrypto/man/man3/SSL_set_verify_result.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_shutdown.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_state_string.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_want.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_write.3 | 6 +- secure/lib/libcrypto/man/man3/TS_RESP_CTX_new.3 | 6 +- .../libcrypto/man/man3/TS_VERIFY_CTX_set_certs.3 | 6 +- secure/lib/libcrypto/man/man3/UI_STRING.3 | 6 +- secure/lib/libcrypto/man/man3/UI_UTIL_read_pw.3 | 6 +- secure/lib/libcrypto/man/man3/UI_create_method.3 | 6 +- secure/lib/libcrypto/man/man3/UI_new.3 | 6 +- secure/lib/libcrypto/man/man3/X509V3_get_d2i.3 | 6 +- secure/lib/libcrypto/man/man3/X509V3_set_ctx.3 | 6 +- secure/lib/libcrypto/man/man3/X509_ALGOR_dup.3 | 6 +- .../libcrypto/man/man3/X509_CRL_get0_by_serial.3 | 6 +- .../libcrypto/man/man3/X509_EXTENSION_set_object.3 | 6 +- secure/lib/libcrypto/man/man3/X509_LOOKUP.3 | 6 +- .../lib/libcrypto/man/man3/X509_LOOKUP_hash_dir.3 | 6 +- .../lib/libcrypto/man/man3/X509_LOOKUP_meth_new.3 | 6 +- .../man/man3/X509_NAME_ENTRY_get_object.3 | 6 +- .../man/man3/X509_NAME_add_entry_by_txt.3 | 6 +- secure/lib/libcrypto/man/man3/X509_NAME_get0_der.3 | 6 +- .../man/man3/X509_NAME_get_index_by_NID.3 | 6 +- secure/lib/libcrypto/man/man3/X509_NAME_print_ex.3 | 6 +- secure/lib/libcrypto/man/man3/X509_PUBKEY_new.3 | 6 +- secure/lib/libcrypto/man/man3/X509_SIG_get0.3 | 6 +- .../libcrypto/man/man3/X509_STORE_CTX_get_error.3 | 6 +- secure/lib/libcrypto/man/man3/X509_STORE_CTX_new.3 | 6 +- .../man/man3/X509_STORE_CTX_set_verify_cb.3 | 6 +- .../lib/libcrypto/man/man3/X509_STORE_add_cert.3 | 6 +- .../lib/libcrypto/man/man3/X509_STORE_get0_param.3 | 6 +- secure/lib/libcrypto/man/man3/X509_STORE_new.3 | 6 +- .../man/man3/X509_STORE_set_verify_cb_func.3 | 6 +- .../man/man3/X509_VERIFY_PARAM_set_flags.3 | 6 +- secure/lib/libcrypto/man/man3/X509_add_cert.3 | 6 +- secure/lib/libcrypto/man/man3/X509_check_ca.3 | 6 +- secure/lib/libcrypto/man/man3/X509_check_host.3 | 6 +- secure/lib/libcrypto/man/man3/X509_check_issued.3 | 6 +- .../libcrypto/man/man3/X509_check_private_key.3 | 6 +- secure/lib/libcrypto/man/man3/X509_check_purpose.3 | 6 +- secure/lib/libcrypto/man/man3/X509_cmp.3 | 6 +- secure/lib/libcrypto/man/man3/X509_cmp_time.3 | 6 +- secure/lib/libcrypto/man/man3/X509_digest.3 | 6 +- secure/lib/libcrypto/man/man3/X509_dup.3 | 6 +- .../man/man3/X509_get0_distinguishing_id.3 | 6 +- .../lib/libcrypto/man/man3/X509_get0_notBefore.3 | 6 +- .../lib/libcrypto/man/man3/X509_get0_signature.3 | 6 +- secure/lib/libcrypto/man/man3/X509_get0_uids.3 | 6 +- .../libcrypto/man/man3/X509_get_extension_flags.3 | 6 +- secure/lib/libcrypto/man/man3/X509_get_pubkey.3 | 6 +- .../lib/libcrypto/man/man3/X509_get_serialNumber.3 | 6 +- .../lib/libcrypto/man/man3/X509_get_subject_name.3 | 6 +- secure/lib/libcrypto/man/man3/X509_get_version.3 | 6 +- secure/lib/libcrypto/man/man3/X509_load_http.3 | 6 +- secure/lib/libcrypto/man/man3/X509_new.3 | 6 +- secure/lib/libcrypto/man/man3/X509_sign.3 | 6 +- secure/lib/libcrypto/man/man3/X509_verify.3 | 6 +- secure/lib/libcrypto/man/man3/X509_verify_cert.3 | 6 +- .../lib/libcrypto/man/man3/X509v3_get_ext_by_NID.3 | 6 +- secure/lib/libcrypto/man/man3/b2i_PVK_bio_ex.3 | 6 +- .../libcrypto/man/man3/d2i_PKCS8PrivateKey_bio.3 | 6 +- secure/lib/libcrypto/man/man3/d2i_PrivateKey.3 | 6 +- secure/lib/libcrypto/man/man3/d2i_RSAPrivateKey.3 | 12 ++-- secure/lib/libcrypto/man/man3/d2i_SSL_SESSION.3 | 6 +- secure/lib/libcrypto/man/man3/d2i_X509.3 | 8 ++- secure/lib/libcrypto/man/man3/i2d_CMS_bio_stream.3 | 6 +- .../lib/libcrypto/man/man3/i2d_PKCS7_bio_stream.3 | 6 +- secure/lib/libcrypto/man/man3/i2d_re_X509_tbs.3 | 6 +- secure/lib/libcrypto/man/man3/o2i_SCT_LIST.3 | 6 +- secure/lib/libcrypto/man/man3/s2i_ASN1_IA5STRING.3 | 6 +- secure/lib/libcrypto/man/man5/config.5 | 6 +- secure/lib/libcrypto/man/man5/fips_config.5 | 6 +- secure/lib/libcrypto/man/man5/x509v3_config.5 | 10 ++-- .../lib/libcrypto/man/man7/EVP_ASYM_CIPHER-RSA.7 | 6 +- .../lib/libcrypto/man/man7/EVP_ASYM_CIPHER-SM2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-AES.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-ARIA.7 | 6 +- .../lib/libcrypto/man/man7/EVP_CIPHER-BLOWFISH.7 | 6 +- .../lib/libcrypto/man/man7/EVP_CIPHER-CAMELLIA.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-CAST.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-CHACHA.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-DES.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-IDEA.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-NULL.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-RC2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-RC4.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-RC5.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-SEED.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-SM4.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-HKDF.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-KB.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-KRB5KDF.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-PBKDF1.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-PBKDF2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-PKCS12KDF.7 | 14 +++-- secure/lib/libcrypto/man/man7/EVP_KDF-SCRYPT.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-SS.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-SSHKDF.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-TLS13_KDF.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-TLS1_PRF.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-X942-ASN1.7 | 6 +- .../lib/libcrypto/man/man7/EVP_KDF-X942-CONCAT.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-X963.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KEM-RSA.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KEYEXCH-DH.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KEYEXCH-ECDH.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KEYEXCH-X25519.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MAC-BLAKE2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MAC-CMAC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MAC-GMAC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MAC-HMAC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MAC-KMAC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MAC-Poly1305.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MAC-Siphash.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-BLAKE2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-MD2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-MD4.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-MD5-SHA1.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-MD5.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-MDC2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-NULL.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-RIPEMD160.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-SHA1.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-SHA2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-SHA3.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-SHAKE.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-SM3.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-WHIRLPOOL.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-common.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-DH.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-DSA.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-EC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-FFC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-HMAC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-RSA.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-SM2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-X25519.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_RAND-CTR-DRBG.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_RAND-HASH-DRBG.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_RAND-HMAC-DRBG.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_RAND-SEED-SRC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_RAND-TEST-RAND.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_RAND.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_SIGNATURE-DSA.7 | 6 +- .../lib/libcrypto/man/man7/EVP_SIGNATURE-ECDSA.7 | 6 +- .../lib/libcrypto/man/man7/EVP_SIGNATURE-ED25519.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_SIGNATURE-HMAC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_SIGNATURE-RSA.7 | 6 +- secure/lib/libcrypto/man/man7/OSSL_PROVIDER-FIPS.7 | 6 +- secure/lib/libcrypto/man/man7/OSSL_PROVIDER-base.7 | 6 +- .../lib/libcrypto/man/man7/OSSL_PROVIDER-default.7 | 6 +- .../lib/libcrypto/man/man7/OSSL_PROVIDER-legacy.7 | 6 +- secure/lib/libcrypto/man/man7/OSSL_PROVIDER-null.7 | 6 +- secure/lib/libcrypto/man/man7/RAND.7 | 6 +- secure/lib/libcrypto/man/man7/RSA-PSS.7 | 6 +- secure/lib/libcrypto/man/man7/X25519.7 | 6 +- secure/lib/libcrypto/man/man7/bio.7 | 6 +- secure/lib/libcrypto/man/man7/crypto.7 | 6 +- secure/lib/libcrypto/man/man7/ct.7 | 6 +- secure/lib/libcrypto/man/man7/des_modes.7 | 6 +- secure/lib/libcrypto/man/man7/evp.7 | 6 +- secure/lib/libcrypto/man/man7/fips_module.7 | 14 ++--- secure/lib/libcrypto/man/man7/life_cycle-cipher.7 | 6 +- secure/lib/libcrypto/man/man7/life_cycle-digest.7 | 6 +- secure/lib/libcrypto/man/man7/life_cycle-kdf.7 | 6 +- secure/lib/libcrypto/man/man7/life_cycle-mac.7 | 6 +- secure/lib/libcrypto/man/man7/life_cycle-pkey.7 | 6 +- secure/lib/libcrypto/man/man7/life_cycle-rand.7 | 6 +- secure/lib/libcrypto/man/man7/migration_guide.7 | 16 +++++- secure/lib/libcrypto/man/man7/openssl-core.h.7 | 6 +- .../libcrypto/man/man7/openssl-core_dispatch.h.7 | 6 +- .../lib/libcrypto/man/man7/openssl-core_names.h.7 | 6 +- secure/lib/libcrypto/man/man7/openssl-env.7 | 6 +- secure/lib/libcrypto/man/man7/openssl-glossary.7 | 6 +- secure/lib/libcrypto/man/man7/openssl-threads.7 | 6 +- .../lib/libcrypto/man/man7/openssl_user_macros.7 | 6 +- secure/lib/libcrypto/man/man7/ossl_store-file.7 | 6 +- secure/lib/libcrypto/man/man7/ossl_store.7 | 6 +- .../lib/libcrypto/man/man7/passphrase-encoding.7 | 6 +- secure/lib/libcrypto/man/man7/property.7 | 6 +- .../lib/libcrypto/man/man7/provider-asym_cipher.7 | 6 +- secure/lib/libcrypto/man/man7/provider-base.7 | 6 +- secure/lib/libcrypto/man/man7/provider-cipher.7 | 6 +- secure/lib/libcrypto/man/man7/provider-decoder.7 | 6 +- secure/lib/libcrypto/man/man7/provider-digest.7 | 6 +- secure/lib/libcrypto/man/man7/provider-encoder.7 | 6 +- secure/lib/libcrypto/man/man7/provider-kdf.7 | 6 +- secure/lib/libcrypto/man/man7/provider-kem.7 | 6 +- secure/lib/libcrypto/man/man7/provider-keyexch.7 | 6 +- secure/lib/libcrypto/man/man7/provider-keymgmt.7 | 6 +- secure/lib/libcrypto/man/man7/provider-mac.7 | 6 +- secure/lib/libcrypto/man/man7/provider-object.7 | 6 +- secure/lib/libcrypto/man/man7/provider-rand.7 | 6 +- secure/lib/libcrypto/man/man7/provider-signature.7 | 6 +- secure/lib/libcrypto/man/man7/provider-storemgmt.7 | 6 +- secure/lib/libcrypto/man/man7/provider.7 | 6 +- secure/lib/libcrypto/man/man7/proxy-certificates.7 | 6 +- secure/lib/libcrypto/man/man7/ssl.7 | 6 +- secure/lib/libcrypto/man/man7/x509.7 | 6 +- secure/usr.bin/openssl/man/CA.pl.1 | 6 +- secure/usr.bin/openssl/man/openssl-asn1parse.1 | 6 +- secure/usr.bin/openssl/man/openssl-ca.1 | 8 +-- secure/usr.bin/openssl/man/openssl-ciphers.1 | 6 +- secure/usr.bin/openssl/man/openssl-cmds.1 | 6 +- secure/usr.bin/openssl/man/openssl-cmp.1 | 37 ++++++++----- secure/usr.bin/openssl/man/openssl-cms.1 | 10 ++-- secure/usr.bin/openssl/man/openssl-crl.1 | 6 +- secure/usr.bin/openssl/man/openssl-crl2pkcs7.1 | 6 +- secure/usr.bin/openssl/man/openssl-dgst.1 | 6 +- secure/usr.bin/openssl/man/openssl-dhparam.1 | 6 +- secure/usr.bin/openssl/man/openssl-dsa.1 | 6 +- secure/usr.bin/openssl/man/openssl-dsaparam.1 | 6 +- secure/usr.bin/openssl/man/openssl-ec.1 | 6 +- secure/usr.bin/openssl/man/openssl-ecparam.1 | 6 +- secure/usr.bin/openssl/man/openssl-enc.1 | 6 +- secure/usr.bin/openssl/man/openssl-engine.1 | 6 +- secure/usr.bin/openssl/man/openssl-errstr.1 | 6 +- secure/usr.bin/openssl/man/openssl-fipsinstall.1 | 6 +- .../usr.bin/openssl/man/openssl-format-options.1 | 6 +- secure/usr.bin/openssl/man/openssl-gendsa.1 | 6 +- secure/usr.bin/openssl/man/openssl-genpkey.1 | 6 +- secure/usr.bin/openssl/man/openssl-genrsa.1 | 6 +- secure/usr.bin/openssl/man/openssl-info.1 | 6 +- secure/usr.bin/openssl/man/openssl-kdf.1 | 6 +- secure/usr.bin/openssl/man/openssl-list.1 | 6 +- secure/usr.bin/openssl/man/openssl-mac.1 | 6 +- .../openssl/man/openssl-namedisplay-options.1 | 6 +- secure/usr.bin/openssl/man/openssl-nseq.1 | 6 +- secure/usr.bin/openssl/man/openssl-ocsp.1 | 6 +- .../openssl/man/openssl-passphrase-options.1 | 6 +- secure/usr.bin/openssl/man/openssl-passwd.1 | 6 +- secure/usr.bin/openssl/man/openssl-pkcs12.1 | 6 +- secure/usr.bin/openssl/man/openssl-pkcs7.1 | 6 +- secure/usr.bin/openssl/man/openssl-pkcs8.1 | 6 +- secure/usr.bin/openssl/man/openssl-pkey.1 | 6 +- secure/usr.bin/openssl/man/openssl-pkeyparam.1 | 6 +- secure/usr.bin/openssl/man/openssl-pkeyutl.1 | 6 +- secure/usr.bin/openssl/man/openssl-prime.1 | 6 +- secure/usr.bin/openssl/man/openssl-rand.1 | 6 +- secure/usr.bin/openssl/man/openssl-rehash.1 | 8 +-- secure/usr.bin/openssl/man/openssl-req.1 | 6 +- secure/usr.bin/openssl/man/openssl-rsa.1 | 6 +- secure/usr.bin/openssl/man/openssl-rsautl.1 | 6 +- secure/usr.bin/openssl/man/openssl-s_client.1 | 6 +- secure/usr.bin/openssl/man/openssl-s_server.1 | 6 +- secure/usr.bin/openssl/man/openssl-s_time.1 | 6 +- secure/usr.bin/openssl/man/openssl-sess_id.1 | 6 +- secure/usr.bin/openssl/man/openssl-smime.1 | 6 +- secure/usr.bin/openssl/man/openssl-speed.1 | 6 +- secure/usr.bin/openssl/man/openssl-spkac.1 | 6 +- secure/usr.bin/openssl/man/openssl-srp.1 | 6 +- secure/usr.bin/openssl/man/openssl-storeutl.1 | 6 +- secure/usr.bin/openssl/man/openssl-ts.1 | 10 ++-- .../openssl/man/openssl-verification-options.1 | 6 +- secure/usr.bin/openssl/man/openssl-verify.1 | 6 +- secure/usr.bin/openssl/man/openssl-version.1 | 6 +- secure/usr.bin/openssl/man/openssl-x509.1 | 6 +- secure/usr.bin/openssl/man/openssl.1 | 6 +- secure/usr.bin/openssl/man/tsget.1 | 6 +- 868 files changed, 2999 insertions(+), 2665 deletions(-) diff --git a/crypto/openssl/CHANGES.md b/crypto/openssl/CHANGES.md index d5c0ba8daf1b..a26bdbdd0ad0 100644 --- a/crypto/openssl/CHANGES.md +++ b/crypto/openssl/CHANGES.md @@ -28,6 +28,30 @@ breaking changes, and mappings for the large list of deprecated functions. [Migration guide]: https://github.com/openssl/openssl/tree/master/doc/man7/migration_guide.pod +### Changes between 3.0.10 and 3.0.11 [19 Sep 2023] + + * Fix POLY1305 MAC implementation corrupting XMM registers on Windows. + + The POLY1305 MAC (message authentication code) implementation in OpenSSL + does not save the contents of non-volatile XMM registers on Windows 64 + platform when calculating the MAC of data larger than 64 bytes. Before + returning to the caller all the XMM registers are set to zero rather than + restoring their previous content. The vulnerable code is used only on newer + x86_64 processors supporting the AVX512-IFMA instructions. + + The consequences of this kind of internal application state corruption can + be various - from no consequences, if the calling application does not + depend on the contents of non-volatile XMM registers at all, to the worst + consequences, where the attacker could get complete control of the + application process. However given the contents of the registers are just + zeroized so the attacker cannot put arbitrary values inside, the most likely + consequence, if any, would be an incorrect result of some application + dependent calculations or a crash leading to a denial of service. + + ([CVE-2023-4807]) + + *Bernd Edlinger* + ### Changes between 3.0.9 and 3.0.10 [1 Aug 2023] * Fix excessive time spent checking DH q parameter value. @@ -19708,6 +19732,7 @@ ndif +[CVE-2023-4807]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-4807 [CVE-2023-3817]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-3817 [CVE-2023-3446]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-3446 [CVE-2023-2975]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-2975 diff --git a/crypto/openssl/NEWS.md b/crypto/openssl/NEWS.md index feed90269760..f7ca47baff87 100644 --- a/crypto/openssl/NEWS.md +++ b/crypto/openssl/NEWS.md @@ -18,6 +18,11 @@ OpenSSL Releases OpenSSL 3.0 ----------- +### Major changes between OpenSSL 3.0.10 and OpenSSL 3.0.11 [19 Sep 2023] + + * Fix POLY1305 MAC implementation corrupting XMM registers on Windows + ([CVE-2023-4807]) + ### Major changes between OpenSSL 3.0.9 and OpenSSL 3.0.10 [1 Aug 2023] * Fix excessive time spent checking DH q parameter value ([CVE-2023-3817]) @@ -1448,6 +1453,7 @@ OpenSSL 0.9.x +[CVE-2023-4807]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-4807 [CVE-2023-3817]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-3817 [CVE-2023-3446]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-3446 [CVE-2023-2975]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-2975 diff --git a/crypto/openssl/README.md b/crypto/openssl/README.md index f2f4fd39ad05..b848d050132a 100644 --- a/crypto/openssl/README.md +++ b/crypto/openssl/README.md @@ -166,7 +166,7 @@ attempting to develop or distribute cryptographic code. Copyright ========= -Copyright (c) 1998-2022 The OpenSSL Project +Copyright (c) 1998-2023 The OpenSSL Project Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson diff --git a/crypto/openssl/VERSION.dat b/crypto/openssl/VERSION.dat index 34658d316b4c..c4157a86274d 100644 --- a/crypto/openssl/VERSION.dat +++ b/crypto/openssl/VERSION.dat @@ -1,7 +1,7 @@ MAJOR=3 MINOR=0 -PATCH=10 +PATCH=11 PRE_RELEASE_TAG= BUILD_METADATA= -RELEASE_DATE="1 Aug 2023" +RELEASE_DATE="19 Sep 2023" SHLIB_VERSION=3 diff --git a/crypto/openssl/apps/cmp.c b/crypto/openssl/apps/cmp.c *** 19492 LINES SKIPPED *** From nobody Thu Oct 12 22:53:02 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S64fk43N3z4x2t7; Thu, 12 Oct 2023 22:53: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 4S64fk3YcVz4M46; Thu, 12 Oct 2023 22:53:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697151182; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E+YUZd8l0K6eie8+C5mB7rZnmjv2tqmCw4PtjyAAiIA=; b=qOQZNV41LgKhisHrOLwcD7jfLXzRJdBPR0Puo6mzT+E4hop4OgTeB10Leo2jD/1ExI9k8B CjMS9PgxX3JOeuk4LDJX8POm3zinmSryyW5aX8xShDMxkBSHQJk8BrUzfxEumnTF+khaE5 GnojNVombEG/Vxaw2xcXVIaDJQ74RsP77PqrUkam727cRbw+7irBNgVvNcS7e/F/0Uk3nG whcMO5G1R6HmKzoLB/CYgReIOPIdjQ1HPs4jZ+diLw9xV6Op+x1jlLjDHKa6L5vM1xPzbU 9YqQn9jKiXFg9p1+UB7+dTdRiorRowfV/mC2i9V45ZtTFplNmJdkbEOiAGV5Ug== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697151182; a=rsa-sha256; cv=none; b=Mfp/jk+oLjhRhQG+Y0zyfDBxAgRjVT8TEoRPU1bYWVrRhwovgOJDZAA6jQkTSHpZ2RUdHw JhekAVTdzteCMVTeSlKg7K0UUMTQCEoLoQNfhHS+Dt+SrF1HKD6LYSffLoELlXBT0MzyOa o08FQYRbWpJ3j/UJKb4tyLgxqmQlHhYXDehQcpJwAfb8ijMD8d0BH1noxZyNgJzX/K3xVM oSdv+x3SVGU8uZ9VSq/2pVluDY19TxuTT31AGrRRULDhhliJJX12vW8ejv2nvMgcA6w3mn +s3ZW6a4GlskSE5nkRY1HwGMCNRXMTsBKFj6shCyXsEbMtEKtK2rSYnqIHsqrg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697151182; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E+YUZd8l0K6eie8+C5mB7rZnmjv2tqmCw4PtjyAAiIA=; b=c7FFlMpDK57pHjOJuUbBbBhRVLoaLWmxlkJeE6g9Yxa/xLGOfS3aC44+C0MCNq9Kz9KY2j WXdMUt+5qLk2Yv/XGkv5xNuLt1SJ/mOZ61F5dyVdSmRn7O8WU0j6tBx0EMgyoTntX2PzqD VdUu+ytVXt9hckpmmzaHD0eW87WBbvDD+VL32w6M1PqqS7ut486Ch8ZGQfZfDcbwmN+7/z 0aGyI0ywQ1WhB+0bqG3M4s2PJWYbCQwj6v8+sR6gJe1xS8D/D7sNjrirVN8sTOVZWgz/Ac sViPAswn/czPuig3y0zwmENRInajaPHV+U7Eteb7upGmbqVuHQ21xPSr1CQA5g== 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 4S64fk2cLwz7tn; Thu, 12 Oct 2023 22:53:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39CMr2Hq037568; Thu, 12 Oct 2023 22:53:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39CMr2YI037566; Thu, 12 Oct 2023 22:53:02 GMT (envelope-from git) Date: Thu, 12 Oct 2023 22:53:02 GMT Message-Id: <202310122253.39CMr2YI037566@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Glen Barber Subject: git: 21bcb2c2a13e - releng/14.0 - switch groff parameter -man to -mandoc List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gjb X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 21bcb2c2a13ea9555d7f84f45be02fcb364475df Auto-Submitted: auto-generated The branch releng/14.0 has been updated by gjb: URL: https://cgit.FreeBSD.org/src/commit/?id=21bcb2c2a13ea9555d7f84f45be02fcb364475df commit 21bcb2c2a13ea9555d7f84f45be02fcb364475df Author: Wolfram Schneider AuthorDate: 2023-09-07 06:28:24 +0000 Commit: Glen Barber CommitDate: 2023-10-12 22:51:51 +0000 switch groff parameter -man to -mandoc groff 1.23.0 changed the semantics of the -man parameter, and many manual pages are not rendered. The -mandoc parameter brings back the old behavior, as in groff 1.22.4 and earlier. PR: 273565, 273245 Approved by: re (delphij) (cherry picked from commit 035f7c9a3653d91564a5513f1311aa3b6e14a17e) (cherry picked from commit 7f9f152307652d1cb454acb8b9018f29672b452f) --- usr.bin/man/man.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/usr.bin/man/man.sh b/usr.bin/man/man.sh index dd327cc5d1d8..b18895a91d96 100755 --- a/usr.bin/man/man.sh +++ b/usr.bin/man/man.sh @@ -1071,11 +1071,11 @@ do_whatis() { # User's PATH setting decides on the groff-suite to pick up. EQN=eqn -NROFF='groff -S -P-h -Wall -mtty-char -man' +NROFF='groff -S -P-h -Wall -mtty-char -mandoc' PIC=pic REFER=refer TBL=tbl -TROFF='groff -S -man' +TROFF='groff -S -mandoc' VGRIND=vgrind LOCALE=/usr/bin/locale From nobody Fri Oct 13 00:00:10 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S668B5M1kz4x62G; Fri, 13 Oct 2023 00:00:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S668B4vQzz4VDd; Fri, 13 Oct 2023 00:00:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697155210; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EOfseuKKjz4s53qgG4zLnhrsGjmtkkTqzDZ+lkQE154=; b=E3KwHovhOCN5AZgXImK+8MIVJynjOENU4TpCyQjOmb4dCZ7Yc+Do1s+pEB/yWchy9oh1W7 /lMOB4bw7obwxd4zN4a0dHBiKGMhNv0QE+JIuCSrPVNo7TDH1H8dZTAJQrSGOqPcRWmlqt PKKjBYE6AqwzDe+DNBrF2HreH55lre2GVc0jFVgQOxpCQNhWTU2ErKcU6vx8z+MF1PxSTc uicV/Ck+SwKvYldwjz3V7G0G68nClMtl53MLksfAZRbER3J2CmpdHCUO3VsNq06nP/5fGl E8UMG1HdYGVXEVJ+5CjGUu4PnVMGCIGxrpiKFj3GY4eIT0I41fwmOxDgCqM59w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697155210; a=rsa-sha256; cv=none; b=Qu/ILcpSDRz5+/mlkUxQ68K9yNUl/Dl1eQ8KMVg/ykwcbbakf9TbYuy+gfMesep4rRLzt9 ucpOYmBLOlr1ycxr2N5GumYN3C1y/xdRAzfT+NdYkHrGsV0ZALQunkbwJIPZi6XQokxgMN qIwoSRrfPlPEHupRXsMtwvd1QcCqfxHpRV7zKCFZYLotMsKNQOn1D31OVDx5gXBw4wznWP 5cZtkB393hwnXXt4hoaSRa4iAqw4wUQCoCxVCwNXnPcVZdX3doVAhS7uZZSwFFilKO//Br t8oycMi9Rm0IOE5dWc+SjvDp4azmgcc8eDieXNXaNoMkPEnoFzlGmi0feXW3+A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697155210; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EOfseuKKjz4s53qgG4zLnhrsGjmtkkTqzDZ+lkQE154=; b=JIXr4kXnVKCW8kcNWcHZ3O3FUN8xPP3rI9q1CbY/bUFjzpL14+Mfm3AjoMng6nOXNqt5Or 3hvYMheozaYKzh421mo6hckKEQ2NWZ2Q3bZ251jsU46jumgmRxu0n8qEzrEpbMbgrK6hJf fN7sn+Xl+aqD+mqU3yIDHrmKGahbxUXzbJo8TAiR0cvAfqOuokHrXhorleg2oKiuvAaIuj OSgWJO/1DqIivke+hEpbrocO34PCZRf/f8Ec/aKT43ujTTlPy69VR7UFaOkRN9HNu9w1VP d5f0QPsuBhjbd2nm4wT1hC3fOcCQ0v+laL518IjLLBwcFvHSVVZkFchvtviazA== 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 4S668B40jkz9vw; Fri, 13 Oct 2023 00:00:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39D00A0I043325; Fri, 13 Oct 2023 00:00:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39D00ARS043314; Fri, 13 Oct 2023 00:00:10 GMT (envelope-from git) Date: Fri, 13 Oct 2023 00:00:10 GMT Message-Id: <202310130000.39D00ARS043314@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Glen Barber Subject: git: d2025992ab68 - releng/14.0 - release: update releng/14.0 from BETA to RC List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gjb X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: d2025992ab6852d2a9ace62006e3a3ffa067364b Auto-Submitted: auto-generated The branch releng/14.0 has been updated by gjb: URL: https://cgit.FreeBSD.org/src/commit/?id=d2025992ab6852d2a9ace62006e3a3ffa067364b commit d2025992ab6852d2a9ace62006e3a3ffa067364b Author: Glen Barber AuthorDate: 2023-10-12 23:55:33 +0000 Commit: Glen Barber CommitDate: 2023-10-12 23:55:33 +0000 release: update releng/14.0 from BETA to RC Approved by: re (implicit) Sponsored by: GoFundMe https://www.gofundme.com/f/gjbbsd Sponsored by: PayPal https://paypal.me/gjbbsd --- sys/conf/newvers.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/conf/newvers.sh b/sys/conf/newvers.sh index 41c4da97d022..6ffe1c40a68f 100644 --- a/sys/conf/newvers.sh +++ b/sys/conf/newvers.sh @@ -53,7 +53,7 @@ TYPE="FreeBSD" REVISION="14.0" -BRANCH="BETA5" +BRANCH="RC1" if [ -n "${BRANCH_OVERRIDE}" ]; then BRANCH=${BRANCH_OVERRIDE} fi From nobody Fri Oct 13 07:50:22 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6JZl1hXYz4wdqD; Fri, 13 Oct 2023 07:50: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 4S6JZl1Cs1z4H6Q; Fri, 13 Oct 2023 07:50:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697183423; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lwGCUhY3cbaVect/RPkkEszV1JJaCAmp3Wj+muzxDH0=; b=ZyIVAJHAFInDaJzqY0z57uZh3mF2oIaqCu/uI9QIgiRcpHkKgY0xFRn7TCRIJX4NjE1DKR IJlO3/IsfApwUJm/X/wJJcUsqDHO3Ec69gQKBIsHJOoqTE8Ii8jMWg0NQpQCpxlOS0mWUf mq10mVTWCM3AMNwLWWRqF/3TtuTQ/Z5l7kIKHxnvPgcjbWBVRev09O5DxXofwe0NMPyVKG GqNltwbK5q+Mju6YKisnd2OvyEdLfcg3IU7bKHbOYlZHkVDybeANUKONWo6Qr2k4mXIRxj 2EmbyE8lnXbV6/dxZuAITeaZHorer7rCngIShQ1aQDXzaCcj59YxzzVTnD/SLw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697183423; a=rsa-sha256; cv=none; b=X7dUPj7KZ39keARa932SVgLRCn1thxVl6nhV4BxDkcf7OTqZ4kXdey9aERfe6k3y/6x4KS 4cukihiPuVt1S/DXkyIQS3BpAoLwqKMbZ9i5iB2uW5lG9AahHCA7F9vzMMkpVywlbscNDR /+HLk9H7FqElc8tHVVHUBiKTCeqM2ee2dRRkHBrPh9LL5QPBw5sNis55lG721mD/R84amg cRzmyu/oHXjnNfOJPfYvCDlmy7dxhpaJThbdxSaPmWU2nDBaDOQdFgd1Ss7E+fpl63XoxT b+slnNisaG7Tql73c2iI9qTf5+3S4OA1nYXGrPBD9a2VKUfnSRtSJxjvugQyPg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697183423; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lwGCUhY3cbaVect/RPkkEszV1JJaCAmp3Wj+muzxDH0=; b=NOc796M/ghuVQTcRHRHURJYtJePxZ4irSXVX5LxOjqcz/ZLBCF/zaTwrcQ8KNCRBDlqobu MApuZjcJenro4REfKqln30IL+GZaou/wZl8f4DY/thQ+Tnb2m0VgrOv0ATtEKj2aws9vYX 7E34rY3BtAYYOS2EDSFwYd/TFeDzrTB1zi3HD0tARRH9nCB6NBoshzKh8zQnNmLhXclb5Y ZRC35dgYRLL+S29UB4qMoHgTsuGyBEFjXQD4z+Wd+zhWZ8zC9MAgIGijIaDTuyJyWVG6N6 dZ3iK+q/YBqaiMCPAdDuWKJgcDQk+GTOR4HYZaSDHxtiSAlWZWLMYZuQV9PoOw== 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 4S6JZl0H6hzfxL; Fri, 13 Oct 2023 07:50:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39D7oMqv028065; Fri, 13 Oct 2023 07:50:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39D7oMBi028062; Fri, 13 Oct 2023 07:50:22 GMT (envelope-from git) Date: Fri, 13 Oct 2023 07:50:22 GMT Message-Id: <202310130750.39D7oMBi028062@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: dc80e764d682 - stable/14 - if_re: add Realtek Killer Ethernet E2600 IDs List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: dc80e764d682bd9b58eeec6a44ba4217444f1db1 Auto-Submitted: auto-generated The branch stable/14 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=dc80e764d682bd9b58eeec6a44ba4217444f1db1 commit dc80e764d682bd9b58eeec6a44ba4217444f1db1 Author: Sk Razee AuthorDate: 2023-10-06 06:08:16 +0000 Commit: Kristof Provost CommitDate: 2023-10-13 07:25:32 +0000 if_re: add Realtek Killer Ethernet E2600 IDs PR: 274292 MFC after: 1 week Reviewed by: kp Event: Oslo Hackathon at Modirum (cherry picked from commit 3c871489cdd6c5606b2b1125f66b0e9b8f39561f) --- sys/dev/re/if_re.c | 2 ++ sys/dev/rl/if_rlreg.h | 1 + 2 files changed, 3 insertions(+) diff --git a/sys/dev/re/if_re.c b/sys/dev/re/if_re.c index 27984200bd91..83fd31fc4f0b 100644 --- a/sys/dev/re/if_re.c +++ b/sys/dev/re/if_re.c @@ -178,6 +178,8 @@ static const struct rl_type re_devs[] = { "D-Link DGE-528(T) Gigabit Ethernet Adapter" }, { DLINK_VENDORID, DLINK_DEVICEID_530T_REVC, 0, "D-Link DGE-530(T) Gigabit Ethernet Adapter" }, + { RT_VENDORID, RT_DEVICEID_2600, 0, + "RealTek Killer E2600 Gigabit Ethernet Controller" }, { RT_VENDORID, RT_DEVICEID_8139, 0, "RealTek 8139C+ 10/100BaseTX" }, { RT_VENDORID, RT_DEVICEID_8101E, 0, diff --git a/sys/dev/rl/if_rlreg.h b/sys/dev/rl/if_rlreg.h index 01634bb704c7..808d11e34346 100644 --- a/sys/dev/rl/if_rlreg.h +++ b/sys/dev/rl/if_rlreg.h @@ -991,6 +991,7 @@ struct rl_softc { /* * RealTek chip device IDs. */ +#define RT_DEVICEID_2600 0x2600 #define RT_DEVICEID_8139D 0x8039 #define RT_DEVICEID_8129 0x8129 #define RT_DEVICEID_8101E 0x8136 From nobody Fri Oct 13 07:50:23 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6JZm0LQvz4wf23; Fri, 13 Oct 2023 07:50: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 4S6JZl6yKhz4H96; Fri, 13 Oct 2023 07:50:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697183424; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BJ6wCIAUqs79p0C3ApCt/pU6uFt1y1G2ohzJgQMafRQ=; b=A5h4GLIYvHEE5iiKya0Cke4/w+1M8wJIxEcbpdQa4ISHKVDZzv1pCmgRL7LB1pbgK2gKz2 7+w3nWuuTd8kNgt80k2An76GrYPXo8XDI7RBKyRCK8bCcGAA9hDu56h/hL4onPZGBz2dj/ cbGf3OxwyPhfF2S5U++D6z2NgB3P1AVXE3H8yiZgoRd871OPNyDg1330s031zlA177muXu VYIX4nenc+M3HaH3CdNsM2jrJThFeTt0KJDUlnC0wvGivH4QqQBrCREtcGc7NgnhY5+Dv+ x6IPDKOARdKDKl8kTJPyVWGCYh7e4SnoSIu2pjZcvcyb73aZ3ZhcQ5C8KzTZ/w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697183424; a=rsa-sha256; cv=none; b=iHqkwVmXnt/llDz1d0Ul9KOi7I3zuTXWL81TTiP83wg+xjjGi+9WnmQBpm+vcR439/t/HK hkJ4SU0gWq//6F19yX8sKAJFBoAXUOrTahiO0uqUbcltTC7dyw8EjaehJbMZk2JIBWjUnr ZfL5hgreRjrahqgLhoH6s5y5zvBD1IdW2xFTp0SCZT35m8vmFmWr/QHdCYeMyIX0cLikAC XvaemVHUQGbEnTJTP15Ao+eb2GbvcgQVwIOQvdoX/DzIFJ32OE0LLpodzM+4HaDmtl0/ae PNHTp/QFsX593vGniMbSEDwTGbOxdF3MijP169nkqRz5DOyLEK5LNbbcUHJ7ZQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697183424; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BJ6wCIAUqs79p0C3ApCt/pU6uFt1y1G2ohzJgQMafRQ=; b=ye5CZUJ6DINytfnKwjF79piBJ67N4ENnTcT32j6TIaEbTJ/umnfYeyVgQO6UM41b+AlhM+ B5Iwp8q/0xTit9Ye8fsrEWJB8P66freeShxgHz4NPk2hH0A32d2z5NU1t9MEi67xUjVVMv X3rxhU9l/aLZlkKrZ/A5UbJ2w9ct7Vn0ISeEmiTlONcxrGfDO1OJ3NG1dnqhEpnCqEe7OB GB1mxkal33UraKKwwWz3wD5WQNGMRVu1quj3kG4u0X0qPDA3hPfJmj5mKslRp7kQDKCHxb RXsClOm/XUN/3eP5sr9bbWe1Ynoco2opExHv2/XNuQU5YU8hyw1euJWMpkIwTw== 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 4S6JZl62bpzfc2; Fri, 13 Oct 2023 07:50:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39D7oNSa028172; Fri, 13 Oct 2023 07:50:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39D7oN8T028168; Fri, 13 Oct 2023 07:50:23 GMT (envelope-from git) Date: Fri, 13 Oct 2023 07:50:23 GMT Message-Id: <202310130750.39D7oN8T028168@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kristof Provost Subject: git: 50cf84e93c5b - stable/13 - if_re: add Realtek Killer Ethernet E2600 IDs List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kp X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 50cf84e93c5be087316da4495395b66793fe80d9 Auto-Submitted: auto-generated The branch stable/13 has been updated by kp: URL: https://cgit.FreeBSD.org/src/commit/?id=50cf84e93c5be087316da4495395b66793fe80d9 commit 50cf84e93c5be087316da4495395b66793fe80d9 Author: Sk Razee AuthorDate: 2023-10-06 06:08:16 +0000 Commit: Kristof Provost CommitDate: 2023-10-13 07:25:36 +0000 if_re: add Realtek Killer Ethernet E2600 IDs PR: 274292 MFC after: 1 week Reviewed by: kp Event: Oslo Hackathon at Modirum (cherry picked from commit 3c871489cdd6c5606b2b1125f66b0e9b8f39561f) --- sys/dev/re/if_re.c | 2 ++ sys/dev/rl/if_rlreg.h | 1 + 2 files changed, 3 insertions(+) diff --git a/sys/dev/re/if_re.c b/sys/dev/re/if_re.c index 3de61a7b2bed..10ac98e3345f 100644 --- a/sys/dev/re/if_re.c +++ b/sys/dev/re/if_re.c @@ -178,6 +178,8 @@ static const struct rl_type re_devs[] = { "D-Link DGE-528(T) Gigabit Ethernet Adapter" }, { DLINK_VENDORID, DLINK_DEVICEID_530T_REVC, 0, "D-Link DGE-530(T) Gigabit Ethernet Adapter" }, + { RT_VENDORID, RT_DEVICEID_2600, 0, + "RealTek Killer E2600 Gigabit Ethernet Controller" }, { RT_VENDORID, RT_DEVICEID_8139, 0, "RealTek 8139C+ 10/100BaseTX" }, { RT_VENDORID, RT_DEVICEID_8101E, 0, diff --git a/sys/dev/rl/if_rlreg.h b/sys/dev/rl/if_rlreg.h index 6850837364da..2fba14475256 100644 --- a/sys/dev/rl/if_rlreg.h +++ b/sys/dev/rl/if_rlreg.h @@ -991,6 +991,7 @@ struct rl_softc { /* * RealTek chip device IDs. */ +#define RT_DEVICEID_2600 0x2600 #define RT_DEVICEID_8139D 0x8039 #define RT_DEVICEID_8129 0x8129 #define RT_DEVICEID_8101E 0x8136 From nobody Fri Oct 13 08:18:09 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6KBp19V9z4wgXD; Fri, 13 Oct 2023 08:18:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6KBp0yJKz4Lr5; Fri, 13 Oct 2023 08:18:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697185090; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vO8OWSAsMYsDigFpYeQzz2pVQLXtCPc1xTaLQT0RgBM=; b=nFBNHkpOKwDSZPMnERtLT3/LGE1cFoP/LBFuqCaVEKTyWtV4qomgFu9aasiLoJMz4cyqUm QMUEjVsOiMFDj8vLuSpWMzqqQ7S0X5u5aBFO0TAuE2wV7uIjo15VD3jBpp1YxmVK5EVZ+J CZJfqb9UtVJBsx9b0J3qSFREkMNJW7Ut+sE8uotWs1OjdK84n1HA26cgUn5ehy+yXG/Wlk aHhlB8C8hR2Zv9jPMhLlqvJJ5Yv9FnWF5lvT/eTQF98DDQI5TwjwBSACpUuPpWlsMIwBzs 2dqEQrx8Rfe0Si2hRZXxQdQvvwf508U+OSTbsZIaEombmoQ1yVhChrUOMnobug== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697185090; a=rsa-sha256; cv=none; b=slJZt5AuUtdykRY1Qztwu+8Hkngn0v36aCTf6PDxdIiMsAfWxZnf1I/Rx0zT/5Wa4JPTt/ edr9sHMjqX6/+q2Zc9Ab25QFYR9ATJxGhPYcshpyBhMKv1qOt0nSkxEhxLOi7IZgxk4wfe 1FHLx/awrA+L4RSl3qcbfY4lyGh2/bajFX2iq9Sa5c6itnHUrO6pb9W/byPXm8K+9bQG9i 5Ofihh6pXpDYt3swFf98zPRa1LvgJGzMB8WafPU+u+gygDlpCLlLz6FkzGHm3Q5QDoLRum 1v3VSP3LWWkifT9yXe6deU9wzjo0ea1jEi7bKvEJZzbBSWo4C5ENWGmJ22nSpQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697185090; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vO8OWSAsMYsDigFpYeQzz2pVQLXtCPc1xTaLQT0RgBM=; b=vLqhemnUVFqdntim74esoYCDMd1TZqLZFFTG0CcSYGxoTCazwZpNFRxQyCbEF4S8jRS39y grvSx3aSZ66etw+EB1APmOgZ98iemwY6On4mRlNxzHEfGu8HKfpdnJL2EWo0POpkOw1fh/ s/nNIu7TzHH+asu+LURMrQBmwn2HRoJfbRcJ75W3D/Qd6OucTldwbx/k2HOFLBHeZ/LKYn nQ4LpaiJHXcZ/3fNfbTjkHMaN866uL9d7+RVwBuBuKRTieWH7qH4MxDknQkctGhATRNTUW ybt3VlTP5u8dCP3EpQQ+ChdNPer6AT/Q05tOHkB+ljkriUgTEfIi591LFG9Qmg== 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 4S6KBn73H7zg47; Fri, 13 Oct 2023 08:18:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39D8I9Jh069954; Fri, 13 Oct 2023 08:18:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39D8I9sD069951; Fri, 13 Oct 2023 08:18:09 GMT (envelope-from git) Date: Fri, 13 Oct 2023 08:18:09 GMT Message-Id: <202310130818.39D8I9sD069951@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Martin Matuska Subject: git: 69816d277f16 - stable/14 - zfs: merge openzfs/zfs@2bba9fd47 (zfs-2.2-release) into stable/14 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 69816d277f1621890d3964422b921ee52d75c1bf Auto-Submitted: auto-generated The branch stable/14 has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=69816d277f1621890d3964422b921ee52d75c1bf commit 69816d277f1621890d3964422b921ee52d75c1bf Merge: dc80e764d682 2bba9fd479f5 Author: Martin Matuska AuthorDate: 2023-10-13 08:17:40 +0000 Commit: Martin Matuska CommitDate: 2023-10-13 08:17:40 +0000 zfs: merge openzfs/zfs@2bba9fd47 (zfs-2.2-release) into stable/14 Notable upstream pull request merges: #15368 f6e6e77ed FreeBSD: Reduce divergence from in-tree sources #15395 2bba9fd47 Zpool can start allocating from metaslab before TRIMs have completed Obtained from: OpenZFS OpenZFS commit: 2bba9fd479f5dce01df31bceb532c5a9e9d5c5ca sys/contrib/openzfs/.gitignore | 1 + sys/contrib/openzfs/.mailmap | 189 +++++++++++ sys/contrib/openzfs/AUTHORS | 361 +++++++++++++++++++-- sys/contrib/openzfs/config/zfs-build.m4 | 1 + .../openzfs/include/os/freebsd/spl/sys/ctype.h | 2 +- sys/contrib/openzfs/man/man4/zfs.4 | 57 ---- .../openzfs/module/os/linux/zfs/zpl_file_range.c | 8 +- sys/contrib/openzfs/module/os/linux/zfs/zvol_os.c | 12 - sys/contrib/openzfs/module/zfs/vdev_trim.c | 28 +- sys/contrib/openzfs/rpm/generic/zfs.spec.in | 9 + sys/contrib/openzfs/scripts/Makefile.am | 1 + sys/contrib/openzfs/scripts/update_authors.pl | 322 ++++++++++++++++++ sys/contrib/openzfs/tests/runfiles/common.run | 4 - sys/contrib/openzfs/tests/runfiles/linux.run | 7 + .../openzfs/tests/test-runner/bin/zts-report.py.in | 1 - .../openzfs/tests/zfs-tests/include/tunables.cfg | 2 +- .../zfs_share/zfs_share_concurrent_shares.ksh | 39 ++- .../functional/delegate/delegate_common.kshlib | 4 +- sys/modules/zfs/zfs_config.h | 4 +- sys/modules/zfs/zfs_gitrev.h | 2 +- 20 files changed, 933 insertions(+), 121 deletions(-) diff --cc sys/contrib/openzfs/.gitignore index 1ef47d921c28,000000000000..47d17ae16d34 mode 100644,000000..100644 --- a/sys/contrib/openzfs/.gitignore +++ b/sys/contrib/openzfs/.gitignore @@@ -1,88 -1,0 +1,89 @@@ +# +# This is the top-level .gitignore file: +# ignore everything except a list of allowed files. +# +# This is not the place for entries that are specific to +# a subdirectory. Instead add those files to the +# .gitignore file in that subdirectory. +# +# N.B. +# Please use 'git ls-files -i --exclude-standard' +# command after changing this file, to see if there are +# any tracked files which get ignored after the change. + +* + +!.github +!cmd +!config +!contrib +!etc +!include +!lib +!man +!module +!rpm +!scripts +!tests +!udev + +!.github/** +!cmd/** +!config/** +!contrib/** +!etc/** +!include/** +!lib/** +!man/** +!module/** +!rpm/** +!scripts/** +!tests/** +!udev/** + +!.editorconfig +!.cirrus.yml +!.gitignore +!.gitmodules ++!.mailmap +!AUTHORS +!autogen.sh +!CODE_OF_CONDUCT.md +!configure.ac +!copy-builtin +!COPYRIGHT +!LICENSE +!Makefile.am +!META +!NEWS +!NOTICE +!README.md +!RELEASES.md +!TEST +!zfs.release.in + +# +# Normal rules +# +*.[oa] +*.o.ur-safe +*.lo +*.la +*.mod.c +*~ +*.swp +*.gcno +*.gcda +*.pyc +*.pyo +.deps +.libs +.dirstamp +.DS_Store +modules.order +Makefile +Makefile.in +*.patch +*.orig +*.tmp +*.log diff --cc sys/contrib/openzfs/.mailmap index 000000000000,46ef016b93f8..46ef016b93f8 mode 000000,100644..100644 --- a/sys/contrib/openzfs/.mailmap +++ b/sys/contrib/openzfs/.mailmap diff --cc sys/contrib/openzfs/scripts/update_authors.pl index 000000000000,8dd49b5fb38d..8dd49b5fb38d mode 000000,100755..100755 --- a/sys/contrib/openzfs/scripts/update_authors.pl +++ b/sys/contrib/openzfs/scripts/update_authors.pl diff --cc sys/modules/zfs/zfs_config.h index 90591123450c,000000000000..b62dbf112b31 mode 100644,000000..100644 --- a/sys/modules/zfs/zfs_config.h +++ b/sys/modules/zfs/zfs_config.h @@@ -1,1134 -1,0 +1,1134 @@@ +/* + */ + +/* zfs_config.h. Generated from zfs_config.h.in by configure. */ +/* zfs_config.h.in. Generated from configure.ac by autoheader. */ + +/* Define to 1 if translation of program messages to the user's native + language is requested. */ +/* #undef ENABLE_NLS */ + +/* bio_end_io_t wants 1 arg */ +/* #undef HAVE_1ARG_BIO_END_IO_T */ + +/* lookup_bdev() wants 1 arg */ +/* #undef HAVE_1ARG_LOOKUP_BDEV */ + +/* submit_bio() wants 1 arg */ +/* #undef HAVE_1ARG_SUBMIT_BIO */ + +/* bdi_setup_and_register() wants 2 args */ +/* #undef HAVE_2ARGS_BDI_SETUP_AND_REGISTER */ + +/* vfs_getattr wants 2 args */ +/* #undef HAVE_2ARGS_VFS_GETATTR */ + +/* zlib_deflate_workspacesize() wants 2 args */ +/* #undef HAVE_2ARGS_ZLIB_DEFLATE_WORKSPACESIZE */ + +/* bdi_setup_and_register() wants 3 args */ +/* #undef HAVE_3ARGS_BDI_SETUP_AND_REGISTER */ + +/* vfs_getattr wants 3 args */ +/* #undef HAVE_3ARGS_VFS_GETATTR */ + +/* vfs_getattr wants 4 args */ +/* #undef HAVE_4ARGS_VFS_GETATTR */ + +/* kernel has access_ok with 'type' parameter */ +/* #undef HAVE_ACCESS_OK_TYPE */ + +/* posix_acl has refcount_t */ +/* #undef HAVE_ACL_REFCOUNT */ + +/* add_disk() returns int */ +/* #undef HAVE_ADD_DISK_RET */ + +/* Define if host toolchain supports AES */ +#define HAVE_AES 1 + +/* Define if you have [rt] */ +#define HAVE_AIO_H 1 + +#ifdef __amd64__ +#ifndef RESCUE +/* Define if host toolchain supports AVX */ +#define HAVE_AVX 1 +#endif + +/* Define if host toolchain supports AVX2 */ +#define HAVE_AVX2 1 + +/* Define if host toolchain supports AVX512BW */ +#define HAVE_AVX512BW 1 + +/* Define if host toolchain supports AVX512CD */ +#define HAVE_AVX512CD 1 + +/* Define if host toolchain supports AVX512DQ */ +#define HAVE_AVX512DQ 1 + +/* Define if host toolchain supports AVX512ER */ +#define HAVE_AVX512ER 1 + +/* Define if host toolchain supports AVX512F */ +#define HAVE_AVX512F 1 + +/* Define if host toolchain supports AVX512IFMA */ +#define HAVE_AVX512IFMA 1 + +/* Define if host toolchain supports AVX512PF */ +#define HAVE_AVX512PF 1 + +/* Define if host toolchain supports AVX512VBMI */ +#define HAVE_AVX512VBMI 1 + +/* Define if host toolchain supports AVX512VL */ +#define HAVE_AVX512VL 1 +#endif + +/* bdevname() is available */ +/* #undef HAVE_BDEVNAME */ + +/* bdev_check_media_change() exists */ +/* #undef HAVE_BDEV_CHECK_MEDIA_CHANGE */ + +/* bdev_*_io_acct() available */ +/* #undef HAVE_BDEV_IO_ACCT_63 */ + +/* bdev_*_io_acct() available */ +/* #undef HAVE_BDEV_IO_ACCT_OLD */ + +/* bdev_kobj() exists */ +/* #undef HAVE_BDEV_KOBJ */ + +/* bdev_max_discard_sectors() is available */ +/* #undef HAVE_BDEV_MAX_DISCARD_SECTORS */ + +/* bdev_max_secure_erase_sectors() is available */ +/* #undef HAVE_BDEV_MAX_SECURE_ERASE_SECTORS */ + +/* block_device_operations->submit_bio() returns void */ +/* #undef HAVE_BDEV_SUBMIT_BIO_RETURNS_VOID */ + +/* bdev_whole() is available */ +/* #undef HAVE_BDEV_WHOLE */ + +/* bio_alloc() takes 4 arguments */ +/* #undef HAVE_BIO_ALLOC_4ARG */ + +/* bio->bi_bdev->bd_disk exists */ +/* #undef HAVE_BIO_BDEV_DISK */ + +/* bio->bi_opf is defined */ +/* #undef HAVE_BIO_BI_OPF */ + +/* bio->bi_status exists */ +/* #undef HAVE_BIO_BI_STATUS */ + +/* bio has bi_iter */ +/* #undef HAVE_BIO_BVEC_ITER */ + +/* bio_*_io_acct() available */ +/* #undef HAVE_BIO_IO_ACCT */ + +/* bio_max_segs() is implemented */ +/* #undef HAVE_BIO_MAX_SEGS */ + +/* bio_set_dev() is available */ +/* #undef HAVE_BIO_SET_DEV */ + +/* bio_set_dev() GPL-only */ +/* #undef HAVE_BIO_SET_DEV_GPL_ONLY */ + +/* bio_set_dev() is a macro */ +/* #undef HAVE_BIO_SET_DEV_MACRO */ + +/* bio_set_op_attrs is available */ +/* #undef HAVE_BIO_SET_OP_ATTRS */ + +/* blkdev_get_by_path() exists and takes 4 args */ +/* #undef HAVE_BLKDEV_GET_BY_PATH_4ARG */ + +/* blkdev_get_by_path() handles ERESTARTSYS */ +/* #undef HAVE_BLKDEV_GET_ERESTARTSYS */ + +/* blkdev_issue_discard() is available */ +/* #undef HAVE_BLKDEV_ISSUE_DISCARD */ + +/* blkdev_issue_secure_erase() is available */ +/* #undef HAVE_BLKDEV_ISSUE_SECURE_ERASE */ + +/* blkdev_put() accepts void* as arg 2 */ +/* #undef HAVE_BLKDEV_PUT_HOLDER */ + +/* blkdev_reread_part() exists */ +/* #undef HAVE_BLKDEV_REREAD_PART */ + +/* blkg_tryget() is available */ +/* #undef HAVE_BLKG_TRYGET */ + +/* blkg_tryget() GPL-only */ +/* #undef HAVE_BLKG_TRYGET_GPL_ONLY */ + +/* blk_alloc_disk() exists */ +/* #undef HAVE_BLK_ALLOC_DISK */ + +/* blk_alloc_queue() expects request function */ +/* #undef HAVE_BLK_ALLOC_QUEUE_REQUEST_FN */ + +/* blk_alloc_queue_rh() expects request function */ +/* #undef HAVE_BLK_ALLOC_QUEUE_REQUEST_FN_RH */ + +/* blk_cleanup_disk() exists */ +/* #undef HAVE_BLK_CLEANUP_DISK */ + +/* blk_mode_t is defined */ +/* #undef HAVE_BLK_MODE_T */ + +/* block multiqueue is available */ +/* #undef HAVE_BLK_MQ */ + +/* blk queue backing_dev_info is dynamic */ +/* #undef HAVE_BLK_QUEUE_BDI_DYNAMIC */ + +/* blk_queue_discard() is available */ +/* #undef HAVE_BLK_QUEUE_DISCARD */ + +/* blk_queue_flag_clear() exists */ +/* #undef HAVE_BLK_QUEUE_FLAG_CLEAR */ + +/* blk_queue_flag_set() exists */ +/* #undef HAVE_BLK_QUEUE_FLAG_SET */ + +/* blk_queue_flush() is available */ +/* #undef HAVE_BLK_QUEUE_FLUSH */ + +/* blk_queue_flush() is GPL-only */ +/* #undef HAVE_BLK_QUEUE_FLUSH_GPL_ONLY */ + +/* blk_queue_secdiscard() is available */ +/* #undef HAVE_BLK_QUEUE_SECDISCARD */ + +/* blk_queue_secure_erase() is available */ +/* #undef HAVE_BLK_QUEUE_SECURE_ERASE */ + +/* blk_queue_update_readahead() exists */ +/* #undef HAVE_BLK_QUEUE_UPDATE_READAHEAD */ + +/* blk_queue_write_cache() exists */ +/* #undef HAVE_BLK_QUEUE_WRITE_CACHE */ + +/* blk_queue_write_cache() is GPL-only */ +/* #undef HAVE_BLK_QUEUE_WRITE_CACHE_GPL_ONLY */ + +/* BLK_STS_RESV_CONFLICT is defined */ +/* #undef HAVE_BLK_STS_RESV_CONFLICT */ + +/* Define if release() in block_device_operations takes 1 arg */ +/* #undef HAVE_BLOCK_DEVICE_OPERATIONS_RELEASE_1ARG */ + +/* Define if revalidate_disk() in block_device_operations */ +/* #undef HAVE_BLOCK_DEVICE_OPERATIONS_REVALIDATE_DISK */ + +/* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the + CoreFoundation framework. */ +/* #undef HAVE_CFLOCALECOPYCURRENT */ + +/* Define to 1 if you have the Mac OS X function + CFLocaleCopyPreferredLanguages in the CoreFoundation framework. */ +/* #undef HAVE_CFLOCALECOPYPREFERREDLANGUAGES */ + +/* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in + the CoreFoundation framework. */ +/* #undef HAVE_CFPREFERENCESCOPYAPPVALUE */ + +/* check_disk_change() exists */ +/* #undef HAVE_CHECK_DISK_CHANGE */ + +/* clear_inode() is available */ +/* #undef HAVE_CLEAR_INODE */ + +/* dentry uses const struct dentry_operations */ +/* #undef HAVE_CONST_DENTRY_OPERATIONS */ + +/* copy_from_iter() is available */ +/* #undef HAVE_COPY_FROM_ITER */ + +/* copy_splice_read exists */ +/* #undef HAVE_COPY_SPLICE_READ */ + +/* copy_to_iter() is available */ +/* #undef HAVE_COPY_TO_ITER */ + +/* cpu_has_feature() is GPL-only */ +/* #undef HAVE_CPU_HAS_FEATURE_GPL_ONLY */ + +/* yes */ +/* #undef HAVE_CPU_HOTPLUG */ + +/* current_time() exists */ +/* #undef HAVE_CURRENT_TIME */ + +/* Define if the GNU dcgettext() function is already present or preinstalled. + */ +/* #undef HAVE_DCGETTEXT */ + +/* DECLARE_EVENT_CLASS() is available */ +/* #undef HAVE_DECLARE_EVENT_CLASS */ + +/* dentry aliases are in d_u member */ +/* #undef HAVE_DENTRY_D_U_ALIASES */ + +/* dequeue_signal() takes 4 arguments */ +/* #undef HAVE_DEQUEUE_SIGNAL_4ARG */ + +/* lookup_bdev() wants dev_t arg */ +/* #undef HAVE_DEVT_LOOKUP_BDEV */ + +/* sops->dirty_inode() wants flags */ +/* #undef HAVE_DIRTY_INODE_WITH_FLAGS */ + +/* disk_check_media_change() exists */ +/* #undef HAVE_DISK_CHECK_MEDIA_CHANGE */ + +/* disk_*_io_acct() available */ +/* #undef HAVE_DISK_IO_ACCT */ + +/* disk_update_readahead() exists */ +/* #undef HAVE_DISK_UPDATE_READAHEAD */ + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* d_make_root() is available */ +/* #undef HAVE_D_MAKE_ROOT */ + +/* d_prune_aliases() is available */ +/* #undef HAVE_D_PRUNE_ALIASES */ + +/* dops->d_revalidate() operation takes nameidata */ +/* #undef HAVE_D_REVALIDATE_NAMEIDATA */ + +/* eops->encode_fh() wants child and parent inodes */ +/* #undef HAVE_ENCODE_FH_WITH_INODE */ + +/* sops->evict_inode() exists */ +/* #undef HAVE_EVICT_INODE */ + +/* FALLOC_FL_ZERO_RANGE is defined */ +/* #undef HAVE_FALLOC_FL_ZERO_RANGE */ + +/* fault_in_iov_iter_readable() is available */ +/* #undef HAVE_FAULT_IN_IOV_ITER_READABLE */ + +/* filemap_range_has_page() is available */ +/* #undef HAVE_FILEMAP_RANGE_HAS_PAGE */ + +/* fops->aio_fsync() exists */ +/* #undef HAVE_FILE_AIO_FSYNC */ + +/* file_dentry() is available */ +/* #undef HAVE_FILE_DENTRY */ + +/* fops->fadvise() exists */ +/* #undef HAVE_FILE_FADVISE */ + +/* file_inode() is available */ +/* #undef HAVE_FILE_INODE */ + +/* flush_dcache_page() is GPL-only */ +/* #undef HAVE_FLUSH_DCACHE_PAGE_GPL_ONLY */ + +/* iops->follow_link() cookie */ +/* #undef HAVE_FOLLOW_LINK_COOKIE */ + +/* iops->follow_link() nameidata */ +/* #undef HAVE_FOLLOW_LINK_NAMEIDATA */ + +/* Define if compiler supports -Wformat-overflow */ +/* #undef HAVE_FORMAT_OVERFLOW */ + +/* fops->fsync() with range */ +/* #undef HAVE_FSYNC_RANGE */ + +/* fops->fsync() without dentry */ +/* #undef HAVE_FSYNC_WITHOUT_DENTRY */ + +/* yes */ +/* #undef HAVE_GENERIC_FADVISE */ + +/* generic_fillattr requires struct mnt_idmap* */ +/* #undef HAVE_GENERIC_FILLATTR_IDMAP */ + +/* generic_fillattr requires struct user_namespace* */ +/* #undef HAVE_GENERIC_FILLATTR_USERNS */ + +/* generic_*_io_acct() 3 arg available */ +/* #undef HAVE_GENERIC_IO_ACCT_3ARG */ + +/* generic_*_io_acct() 4 arg available */ +/* #undef HAVE_GENERIC_IO_ACCT_4ARG */ + +/* generic_readlink is global */ +/* #undef HAVE_GENERIC_READLINK */ + +/* generic_setxattr() exists */ +/* #undef HAVE_GENERIC_SETXATTR */ + +/* generic_write_checks() takes kiocb */ +/* #undef HAVE_GENERIC_WRITE_CHECKS_KIOCB */ + +/* Define if the GNU gettext() function is already present or preinstalled. */ +/* #undef HAVE_GETTEXT */ + +/* iops->get_acl() exists */ +/* #undef HAVE_GET_ACL */ + +/* iops->get_acl() takes rcu */ +/* #undef HAVE_GET_ACL_RCU */ + +/* has iops->get_inode_acl() */ +/* #undef HAVE_GET_INODE_ACL */ + +/* iops->get_link() cookie */ +/* #undef HAVE_GET_LINK_COOKIE */ + +/* iops->get_link() delayed */ +/* #undef HAVE_GET_LINK_DELAYED */ + +/* group_info->gid exists */ +/* #undef HAVE_GROUP_INFO_GID */ + +/* has_capability() is available */ +/* #undef HAVE_HAS_CAPABILITY */ + +/* iattr->ia_vfsuid and iattr->ia_vfsgid exist */ +/* #undef HAVE_IATTR_VFSID */ + +/* Define if you have the iconv() function and it works. */ +#define HAVE_ICONV 1 + +/* iops->getattr() takes struct mnt_idmap* */ +/* #undef HAVE_IDMAP_IOPS_GETATTR */ + +/* iops->setattr() takes struct mnt_idmap* */ +/* #undef HAVE_IDMAP_IOPS_SETATTR */ + +/* APIs for idmapped mount are present */ +/* #undef HAVE_IDMAP_MNT_API */ + +/* Define if compiler supports -Wimplicit-fallthrough */ +/* #undef HAVE_IMPLICIT_FALLTHROUGH */ + +/* Define if compiler supports -Winfinite-recursion */ +/* #undef HAVE_INFINITE_RECURSION */ + +/* yes */ +/* #undef HAVE_INODE_LOCK_SHARED */ + +/* inode_owner_or_capable() exists */ +/* #undef HAVE_INODE_OWNER_OR_CAPABLE */ + +/* inode_owner_or_capable() takes mnt_idmap */ +/* #undef HAVE_INODE_OWNER_OR_CAPABLE_IDMAP */ + +/* inode_owner_or_capable() takes user_ns */ +/* #undef HAVE_INODE_OWNER_OR_CAPABLE_USERNS */ + +/* inode_set_flags() exists */ +/* #undef HAVE_INODE_SET_FLAGS */ + +/* inode_set_iversion() exists */ +/* #undef HAVE_INODE_SET_IVERSION */ + +/* inode->i_*time's are timespec64 */ +/* #undef HAVE_INODE_TIMESPEC64_TIMES */ + +/* timestamp_truncate() exists */ +/* #undef HAVE_INODE_TIMESTAMP_TRUNCATE */ + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* in_compat_syscall() is available */ +/* #undef HAVE_IN_COMPAT_SYSCALL */ + +/* iops->create() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_CREATE_IDMAP */ + +/* iops->create() takes struct user_namespace* */ +/* #undef HAVE_IOPS_CREATE_USERNS */ + +/* iops->mkdir() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_MKDIR_IDMAP */ + +/* iops->mkdir() takes struct user_namespace* */ +/* #undef HAVE_IOPS_MKDIR_USERNS */ + +/* iops->mknod() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_MKNOD_IDMAP */ + +/* iops->mknod() takes struct user_namespace* */ +/* #undef HAVE_IOPS_MKNOD_USERNS */ + +/* iops->permission() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_PERMISSION_IDMAP */ + +/* iops->permission() takes struct user_namespace* */ +/* #undef HAVE_IOPS_PERMISSION_USERNS */ + +/* iops->rename() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_RENAME_IDMAP */ + +/* iops->rename() takes struct user_namespace* */ +/* #undef HAVE_IOPS_RENAME_USERNS */ + +/* iops->setattr() exists */ +/* #undef HAVE_IOPS_SETATTR */ + +/* iops->symlink() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_SYMLINK_IDMAP */ + +/* iops->symlink() takes struct user_namespace* */ +/* #undef HAVE_IOPS_SYMLINK_USERNS */ + +/* iov_iter_advance() is available */ +/* #undef HAVE_IOV_ITER_ADVANCE */ + +/* iov_iter_count() is available */ +/* #undef HAVE_IOV_ITER_COUNT */ + +/* iov_iter_fault_in_readable() is available */ +/* #undef HAVE_IOV_ITER_FAULT_IN_READABLE */ + +/* iov_iter_revert() is available */ +/* #undef HAVE_IOV_ITER_REVERT */ + +/* iov_iter_type() is available */ +/* #undef HAVE_IOV_ITER_TYPE */ + +/* iov_iter types are available */ +/* #undef HAVE_IOV_ITER_TYPES */ + +/* yes */ +/* #undef HAVE_IO_SCHEDULE_TIMEOUT */ + +/* Define to 1 if you have the `issetugid' function. */ +#define HAVE_ISSETUGID 1 + +/* iter_iov() is available */ +/* #undef HAVE_ITER_IOV */ + +/* kernel has kernel_fpu_* functions */ +/* #undef HAVE_KERNEL_FPU */ + +/* kernel has asm/fpu/api.h */ +/* #undef HAVE_KERNEL_FPU_API_HEADER */ + +/* kernel fpu internal */ +/* #undef HAVE_KERNEL_FPU_INTERNAL */ + +/* kernel has asm/fpu/internal.h */ +/* #undef HAVE_KERNEL_FPU_INTERNAL_HEADER */ + +/* uncached_acl_sentinel() exists */ +/* #undef HAVE_KERNEL_GET_ACL_HANDLE_CACHE */ + +/* Define if compiler supports -Winfinite-recursion */ +/* #undef HAVE_KERNEL_INFINITE_RECURSION */ + +/* kernel does stack verification */ +/* #undef HAVE_KERNEL_OBJTOOL */ + +/* kernel has linux/objtool.h */ +/* #undef HAVE_KERNEL_OBJTOOL_HEADER */ + +/* kernel_read() take loff_t pointer */ +/* #undef HAVE_KERNEL_READ_PPOS */ + +/* timer_list.function gets a timer_list */ +/* #undef HAVE_KERNEL_TIMER_FUNCTION_TIMER_LIST */ + +/* struct timer_list has a flags member */ +/* #undef HAVE_KERNEL_TIMER_LIST_FLAGS */ + +/* timer_setup() is available */ +/* #undef HAVE_KERNEL_TIMER_SETUP */ + +/* kernel_write() take loff_t pointer */ +/* #undef HAVE_KERNEL_WRITE_PPOS */ + +/* kmem_cache_create_usercopy() exists */ +/* #undef HAVE_KMEM_CACHE_CREATE_USERCOPY */ + +/* kstrtoul() exists */ +/* #undef HAVE_KSTRTOUL */ + +/* ktime_get_coarse_real_ts64() exists */ +/* #undef HAVE_KTIME_GET_COARSE_REAL_TS64 */ + +/* ktime_get_raw_ts64() exists */ +/* #undef HAVE_KTIME_GET_RAW_TS64 */ + +/* kvmalloc exists */ +/* #undef HAVE_KVMALLOC */ + +/* Define if you have [aio] */ +/* #undef HAVE_LIBAIO */ + +/* Define if you have [blkid] */ +/* #undef HAVE_LIBBLKID */ + +/* Define if you have [crypto] */ +#define HAVE_LIBCRYPTO 1 + +/* Define if you have [tirpc] */ +/* #undef HAVE_LIBTIRPC */ + +/* Define if you have [udev] */ +/* #undef HAVE_LIBUDEV */ + +/* Define if you have [uuid] */ +/* #undef HAVE_LIBUUID */ + +/* linux/blk-cgroup.h exists */ +/* #undef HAVE_LINUX_BLK_CGROUP_HEADER */ + +/* lseek_execute() is available */ +/* #undef HAVE_LSEEK_EXECUTE */ + +/* makedev() is declared in sys/mkdev.h */ +/* #undef HAVE_MAKEDEV_IN_MKDEV */ + +/* makedev() is declared in sys/sysmacros.h */ +/* #undef HAVE_MAKEDEV_IN_SYSMACROS */ + +/* Noting that make_request_fn() returns blk_qc_t */ +/* #undef HAVE_MAKE_REQUEST_FN_RET_QC */ + +/* Noting that make_request_fn() returns void */ +/* #undef HAVE_MAKE_REQUEST_FN_RET_VOID */ + +/* iops->mkdir() takes umode_t */ +/* #undef HAVE_MKDIR_UMODE_T */ + +/* Define to 1 if you have the `mlockall' function. */ +#define HAVE_MLOCKALL 1 + +/* lookup_bdev() wants mode arg */ +/* #undef HAVE_MODE_LOOKUP_BDEV */ + +/* Define if host toolchain supports MOVBE */ +#define HAVE_MOVBE 1 + +/* new_sync_read()/new_sync_write() are available */ +/* #undef HAVE_NEW_SYNC_READ */ + +/* folio_wait_bit() exists */ +/* #undef HAVE_PAGEMAP_FOLIO_WAIT_BIT */ + +/* part_to_dev() exists */ +/* #undef HAVE_PART_TO_DEV */ + +/* iops->getattr() takes a path */ +/* #undef HAVE_PATH_IOPS_GETATTR */ + +/* Define if host toolchain supports PCLMULQDQ */ +#define HAVE_PCLMULQDQ 1 + +/* percpu_counter_add_batch() is defined */ +/* #undef HAVE_PERCPU_COUNTER_ADD_BATCH */ + +/* percpu_counter_init() wants gfp_t */ +/* #undef HAVE_PERCPU_COUNTER_INIT_WITH_GFP */ + +/* posix_acl_chmod() exists */ +/* #undef HAVE_POSIX_ACL_CHMOD */ + +/* posix_acl_from_xattr() needs user_ns */ +/* #undef HAVE_POSIX_ACL_FROM_XATTR_USERNS */ + +/* posix_acl_release() is available */ +/* #undef HAVE_POSIX_ACL_RELEASE */ + +/* posix_acl_release() is GPL-only */ +/* #undef HAVE_POSIX_ACL_RELEASE_GPL_ONLY */ + +/* posix_acl_valid() wants user namespace */ +/* #undef HAVE_POSIX_ACL_VALID_WITH_NS */ + +/* proc_ops structure exists */ +/* #undef HAVE_PROC_OPS_STRUCT */ + +/* iops->put_link() cookie */ +/* #undef HAVE_PUT_LINK_COOKIE */ + +/* iops->put_link() delayed */ +/* #undef HAVE_PUT_LINK_DELAYED */ + +/* iops->put_link() nameidata */ +/* #undef HAVE_PUT_LINK_NAMEIDATA */ + +/* If available, contains the Python version number currently in use. */ +#define HAVE_PYTHON "3.7" + +/* qat is enabled and existed */ +/* #undef HAVE_QAT */ + +/* struct reclaim_state has reclaimed */ +/* #undef HAVE_RECLAIM_STATE_RECLAIMED */ + +/* register_shrinker is vararg */ +/* #undef HAVE_REGISTER_SHRINKER_VARARG */ + +/* register_sysctl_table exists */ +/* #undef HAVE_REGISTER_SYSCTL_TABLE */ + +/* iops->rename2() exists */ +/* #undef HAVE_RENAME2 */ + +/* struct inode_operations_wrapper takes .rename2() */ +/* #undef HAVE_RENAME2_OPERATIONS_WRAPPER */ + +/* iops->rename() wants flags */ +/* #undef HAVE_RENAME_WANTS_FLAGS */ + +/* REQ_DISCARD is defined */ +/* #undef HAVE_REQ_DISCARD */ + +/* REQ_FLUSH is defined */ +/* #undef HAVE_REQ_FLUSH */ + +/* REQ_OP_DISCARD is defined */ +/* #undef HAVE_REQ_OP_DISCARD */ + +/* REQ_OP_FLUSH is defined */ +/* #undef HAVE_REQ_OP_FLUSH */ + +/* REQ_OP_SECURE_ERASE is defined */ +/* #undef HAVE_REQ_OP_SECURE_ERASE */ + +/* REQ_PREFLUSH is defined */ +/* #undef HAVE_REQ_PREFLUSH */ + +/* revalidate_disk() is available */ +/* #undef HAVE_REVALIDATE_DISK */ + +/* revalidate_disk_size() is available */ +/* #undef HAVE_REVALIDATE_DISK_SIZE */ + +/* struct rw_semaphore has member activity */ +/* #undef HAVE_RWSEM_ACTIVITY */ + +/* struct rw_semaphore has atomic_long_t member count */ +/* #undef HAVE_RWSEM_ATOMIC_LONG_COUNT */ + +/* linux/sched/signal.h exists */ +/* #undef HAVE_SCHED_SIGNAL_HEADER */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SECURITY_PAM_MODULES_H 1 + +/* setattr_prepare() accepts mnt_idmap */ +/* #undef HAVE_SETATTR_PREPARE_IDMAP */ + +/* setattr_prepare() is available, doesn't accept user_namespace */ +/* #undef HAVE_SETATTR_PREPARE_NO_USERNS */ + +/* setattr_prepare() accepts user_namespace */ +/* #undef HAVE_SETATTR_PREPARE_USERNS */ + +/* iops->set_acl() exists, takes 3 args */ +/* #undef HAVE_SET_ACL */ + +/* iops->set_acl() takes 4 args, arg1 is struct mnt_idmap * */ +/* #undef HAVE_SET_ACL_IDMAP_DENTRY */ + +/* iops->set_acl() takes 4 args */ +/* #undef HAVE_SET_ACL_USERNS */ + +/* iops->set_acl() takes 4 args, arg2 is struct dentry * */ +/* #undef HAVE_SET_ACL_USERNS_DENTRY_ARG2 */ + +/* set_cached_acl() is usable */ +/* #undef HAVE_SET_CACHED_ACL_USABLE */ + +/* set_special_state() exists */ +/* #undef HAVE_SET_SPECIAL_STATE */ + +/* struct shrink_control exists */ +/* #undef HAVE_SHRINK_CONTROL_STRUCT */ + +/* kernel_siginfo_t exists */ +/* #undef HAVE_SIGINFO */ + +/* signal_stop() exists */ +/* #undef HAVE_SIGNAL_STOP */ + +/* new shrinker callback wants 2 args */ +/* #undef HAVE_SINGLE_SHRINKER_CALLBACK */ + +/* cs->count_objects exists */ +/* #undef HAVE_SPLIT_SHRINKER_CALLBACK */ + +#if defined(__amd64__) || defined(__i386__) +/* Define if host toolchain supports SSE */ +#define HAVE_SSE 1 + +/* Define if host toolchain supports SSE2 */ +#define HAVE_SSE2 1 + +/* Define if host toolchain supports SSE3 */ +#define HAVE_SSE3 1 + +/* Define if host toolchain supports SSE4.1 */ +#define HAVE_SSE4_1 1 + +/* Define if host toolchain supports SSE4.2 */ +#define HAVE_SSE4_2 1 + +/* Define if host toolchain supports SSSE3 */ +#define HAVE_SSSE3 1 +#endif + +/* STACK_FRAME_NON_STANDARD is defined */ +/* #undef HAVE_STACK_FRAME_NON_STANDARD */ + +/* standalone exists */ +/* #undef HAVE_STANDALONE_LINUX_STDARG */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDIO_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `strlcat' function. */ +#define HAVE_STRLCAT 1 + +/* Define to 1 if you have the `strlcpy' function. */ +#define HAVE_STRLCPY 1 + +/* submit_bio is member of struct block_device_operations */ +/* #undef HAVE_SUBMIT_BIO_IN_BLOCK_DEVICE_OPERATIONS */ + +/* super_setup_bdi_name() exits */ +/* #undef HAVE_SUPER_SETUP_BDI_NAME */ + +/* super_block->s_user_ns exists */ +/* #undef HAVE_SUPER_USER_NS */ + +/* struct kobj_type has default_groups */ +/* #undef HAVE_SYSFS_DEFAULT_GROUPS */ *** 312 LINES SKIPPED *** From nobody Fri Oct 13 15:44:16 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6W5Y2yB7z4x90b; Fri, 13 Oct 2023 15:44: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 4S6W5Y0vBNz3XPk; Fri, 13 Oct 2023 15:44:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211857; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PMGQjanXJUTxniPB0iffu8fSvqkPEjYyI/hL1Y9ckjU=; b=WWmcuNs8TIW+ppq2XTXBoYN0VMl/47IKCPWa2Y3iDu1Wl5xphfY/BtUqMQv5zGdTpMuCZA kdsf4bjn3WQU7gVSVgLfwJfCtxNwavHHfLw9odq7lVTeBX/3BP+C1AGVY6WCeq1wMOnpuE XZPk1Jcuu2dJ34k+O/H525PhyiCXu4RYdE8h3rb2WytK2Ad4qVIms4dbs4I1j7Zt18flYK BxYrt48QzIVU9xyHlS1eLx1TmFc3OJcPToiH5YZlYP/fUayLtSt22Q++KZ2lT4LbAdxI8K mutB6jZW2pwaWzJyAkmQ/2Ft6iE85UWWaGRvH3Y6bO4+RLbQxx7qnWL9j6uASA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697211857; a=rsa-sha256; cv=none; b=Mm+wa/oF/bWZ7vjhFH2OhI1fUmxiNa3LvShBJ8Mf2zojD2R2tOIaDE7ensvKZWC9gSHx7U JFoPcJJDwy9/4DTBbZdQ2VhgHxy0p+HwWN/2n0UZ0dxGuCiFGcIUAiGfbCmaJTg38J/xNo h/KUrpmELsQYYXmNLHEzCCGyEFWjrHT+3xegmztirePYCxyY7bniolUfMM+nEhDrzTBFIH kjoKUji62JudTHa0ZuM42/SI8cB/vtCh41wsUxKhQbxo+x9Tnztw1kHFEawxEBfTElVGj/ QGNqDykhs+QePgk4JCIvASciKuJRubU1usV8XmdCwX63FdvJCKy62OqrObyF7w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211857; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PMGQjanXJUTxniPB0iffu8fSvqkPEjYyI/hL1Y9ckjU=; b=tWRPg7EEHpqWE0NNGZKIAU65D8DkiFUeC7Q0LvBaGxDQFeP+06sjeTlF/iXqNLCB1uW+yh 6syoWGc1sgo/hIHl652fz4sVMFDuhXKMjmVcAhwOMJu6ksxT+RD3GjuncaTsvcHh5l2Co3 Yg0+P5JtdKDyUqBpUj8SQ5DYW1EXBkJUbHprt9NwGIyJjRuurE2YACqzu4UX6qtP2cDFCw GSPOYJWoDCs6ZzzYYHIgXFb6ECeqTkhgx0AyWJIN6DsmtHVVXMEwZSYwnpFf45ElFCx+gb Y1Ah4xnnL2sIu6Ln3uFYIJCnAeqY5AG4NRJmWjvgst6skKhsqOZqVpjomCfITw== 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 4S6W5Y014xztcJ; Fri, 13 Oct 2023 15:44:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DFiGW2014777; Fri, 13 Oct 2023 15:44:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DFiG0J014774; Fri, 13 Oct 2023 15:44:16 GMT (envelope-from git) Date: Fri, 13 Oct 2023 15:44:16 GMT Message-Id: <202310131544.39DFiG0J014774@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 2fe06dda0a8a - stable/14 - ktrace.2: correct kern.ktrace.genio_size sysctl name List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 2fe06dda0a8abced5851188ed2cb76d1759efa19 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=2fe06dda0a8abced5851188ed2cb76d1759efa19 commit 2fe06dda0a8abced5851188ed2cb76d1759efa19 Author: Ed Maste AuthorDate: 2023-10-11 01:18:36 +0000 Commit: Ed Maste CommitDate: 2023-10-13 14:12:34 +0000 ktrace.2: correct kern.ktrace.genio_size sysctl name The man page had `kern.ktrace.geniosize` but the sysctl node contains an underscore. PR: 274274 Reported by: Ivan Rozhuk Sponsored by: The FreeBSD Foundation (cherry picked from commit a572dfa1bfe00cec93b27d8848ca49562cab5e3c) --- lib/libc/sys/ktrace.2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libc/sys/ktrace.2 b/lib/libc/sys/ktrace.2 index fe69d7e648f0..97069e491f99 100644 --- a/lib/libc/sys/ktrace.2 +++ b/lib/libc/sys/ktrace.2 @@ -145,7 +145,7 @@ The following tunables influence the behaviour of .Fn ktrace : .Bl -tag -width indent -.It Va kern.ktrace.geniosize +.It Va kern.ktrace.genio_size bounds the amount of data a traced I/O request will log to the trace file. .It Va kern.ktrace.request_pool From nobody Fri Oct 13 15:44:18 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6W5Z4n2Wz4x90d; Fri, 13 Oct 2023 15:44:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6W5Z1gkTz3XZL; Fri, 13 Oct 2023 15:44:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211858; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tpQMBj28WmDPyVk97NaY58uy8w130kSWqjrgX3gjq64=; b=RxUHLaD4/r9XY5Sy2UGysuc2YS0bdVa2fcVUIs4/0RnwDJhUjkVy+oZTkS4UqT+abDnCur UnXNPEBHfjLL7YbGddgQmB0Vy7+dPwjZ/uUCkvFK2lo4/qIyaUCh5j6HXt49XkOhVfslwT uEOjkiWxt6V0Ht2Kmyf6AlfpRuyaxtBSy1Tcjugk0foDDYwQDGCWo1t6NhZEfHrDTfvkPY 1TPVBfs6wo6aLO+MoJ3hw2sFEOa2kUomneumrgaLAJPibdFhFHSGF7LOwNzyVHp0GPnki/ WIeuMoz8VHgtEliIUb2xW46oy1B4RAjZkuYj9XTUNcEg6O61gExJ1PiXKR6ZMw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697211858; a=rsa-sha256; cv=none; b=xYApGW1Kx6RXOZqp8eMmYLHR8XQymuEuWPvpwpNqgXtbTPWPdgAgejYOwUgMqMrE4odOMr 3l65jAL6Mj2grJSBOZetQO8ydZhsbcD1FSzxmXdsgJxSZJjyz5aulGwQ/kCg1JvSBDqagM YqkkdGsKABCL8p0KhPZUAQP7kMDPo+C+3uYS/pJj5Jji4LXYYjE+WUl7add0cG0B1NC18z hltZ8Lf5Hx5b38NDH5zvnr/NSKU0sUwj109go0VEEYlWSYTqqb10jPKOw1iWrq9K8BnL8b 7NNW1/mMtWyBOhF6N9ydeViBw4QimVhCeM8hfpaRyrFfc3C8z2FFLU9rqCDHAg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211858; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tpQMBj28WmDPyVk97NaY58uy8w130kSWqjrgX3gjq64=; b=BDDpZxIjCfDSQyCw5NryMJEzkSnvDfIEOBvco5JFDoXn9kbMbdkMFtZR2M3gXd3MrPI3ao gy3EdIqnoSHQJ15ChHdA7ou8W6ici/ivt02jYxWM2+8ThOSBqTNbTDxVKh5iJRfoE0V83Q 5ttz1O37D3gRoVWkRiqb7fQbobaBhRiWWgoAl8wyle+F6bwc3xGGjCKdCc2NLGSMJyzbkV NDVc4+DYGyBtrorI/29h8UKeQ0p45BMrBsZ8lKk1Ra/9nDzvgFvVVxOaCDX9reL10ZFt71 DEPmtq6PXr9Qor0K6X3hg0rcAuOP9DZ/6ch/cIBh8jc3YDeEv4QIT/gUVn/25w== 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 4S6W5Z0mVSztwb; Fri, 13 Oct 2023 15:44:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DFiI4I014828; Fri, 13 Oct 2023 15:44:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DFiIbX014825; Fri, 13 Oct 2023 15:44:18 GMT (envelope-from git) Date: Fri, 13 Oct 2023 15:44:18 GMT Message-Id: <202310131544.39DFiIbX014825@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: ced9fe051e31 - stable/14 - sysctl: emit a newline after NULL node descriptions List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ced9fe051e31f858a9d1dbec01cf6dec483fab19 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=ced9fe051e31f858a9d1dbec01cf6dec483fab19 commit ced9fe051e31f858a9d1dbec01cf6dec483fab19 Author: Ed Maste AuthorDate: 2023-10-06 18:00:30 +0000 Commit: Ed Maste CommitDate: 2023-10-13 14:12:34 +0000 sysctl: emit a newline after NULL node descriptions Previously when printing the sysctl description (via the -d flag) we omitted the newline if the node provided no description (i.e., NULL). This could be observed via e.g. `sysctl -d dev`. PR: 44034 Reviewed by: zlei Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42112 (cherry picked from commit 75be7e30271bb192fd27698982f2c7e56831eeef) --- sbin/sysctl/sysctl.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sbin/sysctl/sysctl.c b/sbin/sysctl/sysctl.c index fe1a53a9d645..7ed7be95c9a5 100644 --- a/sbin/sysctl/sysctl.c +++ b/sbin/sysctl/sysctl.c @@ -998,8 +998,10 @@ show_info(char *name, const char *sep, int ctltype, char *fmt, int *qoid, int nl bzero(buf, BUFSIZ); j = sizeof(buf); i = sysctl(qoid, nlen + 2, buf, &j, 0, 0); - if (i < 0) + if (i < 0) { + putchar('\n'); return (1); + } fputs(buf, stdout); return (error); } From nobody Fri Oct 13 15:44:19 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6W5b6bQ1z4x8xH; Fri, 13 Oct 2023 15:44:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6W5b2xsxz3XQ1; Fri, 13 Oct 2023 15:44:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211859; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=46oD0akvp+hfaQYUgX8Ar6rjjKHuYL52EU898FiuEgo=; b=rIKR4uJOKHiIKx7eD/r1NepJJ8zO0HO4SKebUQkMyfkPLkLWsRAnN1o6+8+UCtcYIbY61y lB9WpXnZ8dcFFIL5ukD6a6L0aLiVOoL8MlR6AWfztR9oxc/wssRLIyXhh+dhH45Cxfqv8L tFO0Jeuqhnf0ne9LkU3/M0CId4VqaxxdxknadrBHYhgavRm2HgzAdyA4D7wgFpiZLJXv93 jQhrX37qwCFbDPYNOu8vQb2W3fcS0e5o0tH9g0tu4aUd0euUyCQLClcPx/aDstdfGLhEB0 4lg041T6R4t8p9YF8GpeuJjkCsh5Jhf/BEs6GprVh62CFd+9oS/wKPQ93vcFUA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697211859; a=rsa-sha256; cv=none; b=GBIYNAWXoXUiuU5roNHfLlJNu/ZyurSVJaD326eP1OCQWfKonZBV7e1c03myh0EpDjVdo9 EiR3YoHVbcxo0QJSQPwpF7bP1D2p5g3pja5bpEA90gYp/iVnmL7oUYf6l7aYeHhlnxGGnM SGEzH2trBwiQnyMUNQK9Utdc3eaXVxtH98yQeBaizl1yT6RVQU/WMBxUcwP5q7SvLaVs5l /uCOhrtxAmJAPNKar0QSaiSPmbO2Tnul0duYJZlgaFnSs6bpwmCRMADyXeaoaPmNhiIJ5K mlQDF2xBXtJEd+UQwMlILGVNNcN4EuSYFZyA7o0jIHDB7S59/B9zW+8pl8praw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211859; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=46oD0akvp+hfaQYUgX8Ar6rjjKHuYL52EU898FiuEgo=; b=aZPsVOE6j/aTXUwgDbvp9eCOcf8vSCUUWlQzOJL/v/woHae/6zaxKY1ENkmzDG3IvmtEi6 FyzxCGNjSfbcpyGkbznKypr1Pet0/RmB9dSh5yTsO+HNCZCRpFbdIwnpZJ61/O8hsMemwM pGcn4/domTKuEFzzEwhYPOkuChnqIHIoGfony0hgG/bhRCtp9mxtlkUGyHsklKrg7JtglR 3bd3IsTMUOSOmTet43y6rZFkSHSSYsr/+wNLEr/246cFiCHwl7IRkPjIAgwVhgkM/7+Ikx ucasSdX/O8a7m7Hs2py9NupOcETzd6jRwSMk1Tz3WRvHD9Ai3UxHWBBTaiG35Q== 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 4S6W5b22PFztYy; Fri, 13 Oct 2023 15:44:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DFiJmU014876; Fri, 13 Oct 2023 15:44:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DFiJIr014874; Fri, 13 Oct 2023 15:44:19 GMT (envelope-from git) Date: Fri, 13 Oct 2023 15:44:19 GMT Message-Id: <202310131544.39DFiJIr014874@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: f6fa4749f746 - stable/14 - newvers: remove references to svnliteversion List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f6fa4749f746e493b51eea161b0ae2a28967c32d Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=f6fa4749f746e493b51eea161b0ae2a28967c32d commit f6fa4749f746e493b51eea161b0ae2a28967c32d Author: Ed Maste AuthorDate: 2023-10-02 12:16:50 +0000 Commit: Ed Maste CommitDate: 2023-10-13 14:13:14 +0000 newvers: remove references to svnliteversion svnliteversion was provided by the base system copy of subversion, which was disabled in a2bc17474b96 ("Disable building svnlite(1) by default.") Reviewed by: zlei Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42034 (cherry picked from commit 826d1446791816fcaa9be59aedc7295ffbc8d5bb) --- sys/conf/newvers.sh | 9 --------- 1 file changed, 9 deletions(-) diff --git a/sys/conf/newvers.sh b/sys/conf/newvers.sh index bb6f3349d87b..8416d073482b 100644 --- a/sys/conf/newvers.sh +++ b/sys/conf/newvers.sh @@ -218,15 +218,6 @@ for dir in /usr/bin /usr/local/bin; do fi done -if [ -z "${svnversion}" ] && [ -x /usr/bin/svnliteversion ] ; then - /usr/bin/svnliteversion $(realpath ${0}) >/dev/null 2>&1 - if [ $? -eq 0 ]; then - svnversion=/usr/bin/svnliteversion - else - svnversion= - fi -fi - if findvcs .git; then for dir in /usr/bin /usr/local/bin; do if [ -x "${dir}/git" ] ; then From nobody Fri Oct 13 15:44:20 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6W5d0lcfz4x8Xb; Fri, 13 Oct 2023 15:44:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6W5c3ZNdz3Xjr; Fri, 13 Oct 2023 15:44:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211860; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Qw7zV8jmZhhrmyjyCun+lY1UFnYKZwzFWQxZBmpLytU=; b=Wuxn6ThILEoFb/9n0lauJU1VI7BWM/P4oUjD3qGYdbOEL1VbX5du3I29eODaA1f/qgEucJ z+5d+ctburSVGSLC/H1Dq02RGByvaWr6VYYzVtAw7FF7jh5fuUxx53LlpfPFtRznNADOLs meMICQjg9UhRru7iA+yKf1yMCGvNJtp48xsFN8mfPowE4NJR6+vJwmwzwxAsXggA49ffHl +WEDFX3EBB3OUK/6pjromktR1vfsZsKdc8pTGd7YPnk0x4sdlSrS6gFLoEgcGyPcw5KAwK ZvQiXdIS5tlDvHjO2WJ3KMDe0W3f88So6XUjAYpinD8mWBp9IrIP8B2OO0l9VQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697211860; a=rsa-sha256; cv=none; b=jo5aoMqsWm1raJ6yqE+ogekqCSe5kmWCCLDD7cohrapARRA9hS65t1RaqI2vnoFIi9hPax +ymNKgZ3WPEatQWmQg5qLT8wIZmekVj2AHTS5WZjk6rIvVuvqCfMsxzL1HXm7BljP6XK05 mvs5j3uLq2eCel6ye93uYN0QQga/zuPr/kFer383rYalxGgly0JDX80JOUGp1LMA62QP96 pIThOC2wJ+jGNFEFdE48Pwq7OfGpqBisphyEeLS/UfAjsvMLH8lB6OTYyE0IYrAu0ly459 CnnAxQtMayUSEzEJ79NFHCPk59hCX8wK5cSKjPEvW1mQhWlXbCsDOZB2KX/JTg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211860; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Qw7zV8jmZhhrmyjyCun+lY1UFnYKZwzFWQxZBmpLytU=; b=A4kkBnpi07UnAO8bPxGkOPA/HOj8ZolCJXH34WxjQ2qj9uQtqCRK6I947YnfJedO3h/p47 WnUoauZGWQ6QIgySliA5i11cPERptBWNRf2TDcpvlxDwlHNxDKmm1TgXVUil1Lg9WNG670 J8zn7YwihUwLQXfva8+lLtsq2c8PBav8UNqWlMaZP5B2L2H5DHs0N3oRi2GmeZBEt2EkTM rvZ+kcnorilflAK540voa5VcMMfz+OOMDEzWZju7kDJ0Zt0jLiUsG4hzc6EoFaIYsfgYpK zS64K4uQxx9wApV8zVh9FSzAvYLw+OvJVoAou3bN93o2VcjkjhxBCEq2WW87KA== 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 4S6W5c2ft4ztW7; Fri, 13 Oct 2023 15:44:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DFiK1N014917; Fri, 13 Oct 2023 15:44:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DFiK4x014914; Fri, 13 Oct 2023 15:44:20 GMT (envelope-from git) Date: Fri, 13 Oct 2023 15:44:20 GMT Message-Id: <202310131544.39DFiK4x014914@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: c2009f3b5bd6 - stable/14 - x86: make EARLY_AP_STARTUP mandatory List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c2009f3b5bd62615e0d1385f14f81ed7264bf173 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=c2009f3b5bd62615e0d1385f14f81ed7264bf173 commit c2009f3b5bd62615e0d1385f14f81ed7264bf173 Author: Ed Maste AuthorDate: 2023-08-07 20:59:52 +0000 Commit: Ed Maste CommitDate: 2023-10-13 14:13:14 +0000 x86: make EARLY_AP_STARTUP mandatory When early AP startup was introduced in 2016 it was put behind a kernel option EARLY_AP_STARTUP as a transition aid, so that it could be turned off if necessary. For x86 the non-EARLY_AP_STARTUP case is no longer functional, so disallow it. Other archs are still incompatible with EARLY_AP_STARTUP, so the option cannot yet be removed entirely. Reported by: wollman Reviewed by: markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D41351 (cherry picked from commit 792655abd64c94146ededd991652496ec9ec0cfe) --- sys/x86/isa/clock.c | 8 ------ sys/x86/x86/intr_machdep.c | 63 +--------------------------------------------- sys/x86/x86/local_apic.c | 14 ----------- sys/x86/x86/mca.c | 4 --- sys/x86/x86/mp_x86.c | 5 ---- 5 files changed, 1 insertion(+), 93 deletions(-) diff --git a/sys/x86/isa/clock.c b/sys/x86/isa/clock.c index 8fa642295611..a0bf60159e78 100644 --- a/sys/x86/isa/clock.c +++ b/sys/x86/isa/clock.c @@ -411,7 +411,6 @@ startrtclock(void) void cpu_initclocks(void) { -#ifdef EARLY_AP_STARTUP struct thread *td; int i; @@ -434,13 +433,6 @@ cpu_initclocks(void) if (sched_is_bound(td)) sched_unbind(td); thread_unlock(td); -#else - tsc_calibrate(); -#ifdef DEV_APIC - lapic_calibrate_timer(); -#endif - cpu_initclocks_bsp(); -#endif } static int diff --git a/sys/x86/x86/intr_machdep.c b/sys/x86/x86/intr_machdep.c index b43fa790d264..458a0cb396bb 100644 --- a/sys/x86/x86/intr_machdep.c +++ b/sys/x86/x86/intr_machdep.c @@ -90,7 +90,7 @@ static TAILQ_HEAD(pics_head, pic) pics; u_int num_io_irqs; #if defined(SMP) && !defined(EARLY_AP_STARTUP) -static int assign_cpu; +#error EARLY_AP_STARTUP required on x86 #endif #define INTRNAME_LEN (MAXCOMLEN + 1) @@ -399,18 +399,10 @@ intr_assign_cpu(void *arg, int cpu) struct intsrc *isrc; int error; -#ifdef EARLY_AP_STARTUP MPASS(mp_ncpus == 1 || smp_started); /* Nothing to do if there is only a single CPU. */ if (mp_ncpus > 1 && cpu != NOCPU) { -#else - /* - * Don't do anything during early boot. We will pick up the - * assignment once the APs are started. - */ - if (assign_cpu && cpu != NOCPU) { -#endif isrc = arg; sx_xlock(&intrsrc_lock); error = isrc->is_pic->pic_assign_cpu(isrc, cpu_apic_ids[cpu]); @@ -620,15 +612,9 @@ intr_next_cpu(int domain) { u_int apic_id; -#ifdef EARLY_AP_STARTUP MPASS(mp_ncpus == 1 || smp_started); if (mp_ncpus == 1) return (PCPU_GET(apic_id)); -#else - /* Leave all interrupts on the BSP during boot. */ - if (!assign_cpu) - return (PCPU_GET(apic_id)); -#endif if (intr_no_domain) domain = 0; @@ -662,7 +648,6 @@ intr_add_cpu(u_int cpu) CPU_SET(cpu, &intr_cpus); } -#ifdef EARLY_AP_STARTUP static void intr_smp_startup(void *arg __unused) { @@ -673,52 +658,6 @@ intr_smp_startup(void *arg __unused) SYSINIT(intr_smp_startup, SI_SUB_SMP, SI_ORDER_SECOND, intr_smp_startup, NULL); -#else -/* - * Distribute all the interrupt sources among the available CPUs once the - * AP's have been launched. - */ -static void -intr_shuffle_irqs(void *arg __unused) -{ - struct intsrc *isrc; - u_int cpu, i; - - intr_init_cpus(); - /* Don't bother on UP. */ - if (mp_ncpus == 1) - return; - - /* Round-robin assign a CPU to each enabled source. */ - sx_xlock(&intrsrc_lock); - assign_cpu = 1; - for (i = 0; i < num_io_irqs; i++) { - isrc = interrupt_sources[i]; - if (isrc != NULL && isrc->is_handlers > 0) { - /* - * If this event is already bound to a CPU, - * then assign the source to that CPU instead - * of picking one via round-robin. Note that - * this is careful to only advance the - * round-robin if the CPU assignment succeeds. - */ - cpu = isrc->is_event->ie_cpu; - if (cpu == NOCPU) - cpu = current_cpu[isrc->is_domain]; - if (isrc->is_pic->pic_assign_cpu(isrc, - cpu_apic_ids[cpu]) == 0) { - isrc->is_cpu = cpu; - if (isrc->is_event->ie_cpu == NOCPU) - intr_next_cpu(isrc->is_domain); - } - } - } - sx_xunlock(&intrsrc_lock); -} -SYSINIT(intr_shuffle_irqs, SI_SUB_SMP, SI_ORDER_SECOND, intr_shuffle_irqs, - NULL); -#endif - /* * TODO: Export this information in a non-MD fashion, integrate with vmstat -i. */ diff --git a/sys/x86/x86/local_apic.c b/sys/x86/x86/local_apic.c index b382368cc626..43fe4625cd08 100644 --- a/sys/x86/x86/local_apic.c +++ b/sys/x86/x86/local_apic.c @@ -876,22 +876,8 @@ lapic_enable_pmc(void) lvts[APIC_LVT_PMC].lvt_masked = 0; -#ifdef EARLY_AP_STARTUP MPASS(mp_ncpus == 1 || smp_started); smp_rendezvous(NULL, lapic_update_pmc, NULL, NULL); -#else -#ifdef SMP - /* - * If hwpmc was loaded at boot time then the APs may not be - * started yet. In that case, don't forward the request to - * them as they will program the lvt when they start. - */ - if (smp_started) - smp_rendezvous(NULL, lapic_update_pmc, NULL, NULL); - else -#endif - lapic_update_pmc(NULL); -#endif return (1); #else return (0); diff --git a/sys/x86/x86/mca.c b/sys/x86/x86/mca.c index dca6b935e4a3..b293fcedbd84 100644 --- a/sys/x86/x86/mca.c +++ b/sys/x86/x86/mca.c @@ -1077,11 +1077,7 @@ mca_startup(void *dummy) taskqueue_enqueue_timeout_sbt(mca_tq, &mca_scan_task, mca_ticks * SBT_1S, 0, C_PREL(1)); } -#ifdef EARLY_AP_STARTUP SYSINIT(mca_startup, SI_SUB_KICK_SCHEDULER, SI_ORDER_ANY, mca_startup, NULL); -#else -SYSINIT(mca_startup, SI_SUB_SMP, SI_ORDER_ANY, mca_startup, NULL); -#endif #ifdef DEV_APIC static void diff --git a/sys/x86/x86/mp_x86.c b/sys/x86/x86/mp_x86.c index ddcb54b63d88..11b11471d736 100644 --- a/sys/x86/x86/mp_x86.c +++ b/sys/x86/x86/mp_x86.c @@ -1133,11 +1133,6 @@ init_secondary_tail(void) while (atomic_load_acq_int(&smp_started) == 0) ia32_pause(); -#ifndef EARLY_AP_STARTUP - /* Start per-CPU event timers. */ - cpu_initclocks_ap(); -#endif - kcsan_cpu_init(cpuid); sched_ap_entry(); From nobody Fri Oct 13 15:44:21 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6W5d562gz4x8d1; Fri, 13 Oct 2023 15:44:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6W5d4ddtz3XmL; Fri, 13 Oct 2023 15:44:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211861; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5LZL9ubwmt4OvdfJ7hrKaCm0mHHvSmJJ04s9ezy7ulM=; b=mpnlbMTtKs9zijCjVzzDyft3EZdtG/hnceCps41KYbIXXIaoMoRkxBdDx2bY+bU9uU6uT1 nW94WU4msQqIKhTQpCOPF999OO9aBaA7v02d6fGOUfXR59KBA+zvidskDGeVPJxKQPuXMQ 0QS7qczxDgGUvoZNoD+NshAE42fxCwf84G1neziEND1dJz4SZVLdKYlYgiycGksi/vPbrA 0x4q7hysXUc6T9soK9Kw1rtkDiXoR9sKzCYijK2H8RnxvqIIcLosxstj2KOdCctOVRtyv1 nTxwEZPgvCltgeFjbAl+8bKDWKJG7C9R64cK61vMaohbd5rE9vhgAXoJocNYTQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697211861; a=rsa-sha256; cv=none; b=U1jS3TowZM9vJHjrCjOo+kxJkcUQQ+Fwnnz9VtLx/FQ2NxAqXl3KCKtZgkwgdSpxIUyfjV O55vZJu2n8Y6GTiQ51GjEcSeMN2AmDm5IXzDD4qg8hGWJBBK6K1VFPWWP01KO+5LNsCFXp aAOfPvdEnxZqyROAS4WHgOS9IGGouCM1dfo76AnJ/0kz1/rUQF35/tRiMrQUBj3Uf5Fbw2 NLXstAxeGrM7B/M3GsFDS9iiqyDR8LbpAMZcYmQm97+RGmXjShU8aln5Kgc1VT9+/MoSF4 5BNHuj1GHi1YnhZYDNO2kKDtQquUo/RulZ/LZhQiXgY0Lt0j+sNFw7mFxpLfgA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211861; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5LZL9ubwmt4OvdfJ7hrKaCm0mHHvSmJJ04s9ezy7ulM=; b=BDgnZ4+ot0eU5vRptGmioAf7Jku9Pq7z5L1Jh/I6kqrL35E0KSwtMDBA/YnYAp7c5cCQ7D 2ezyDFuwoIgyoOzA30BqIzmQeHKcLY4cgfi4iBbZc4n1o2orb03QdeBFDqBL1SI2MmHFpX clpHrPf+sewf3vh2kabz6vI28qvhIRaDciIm0SD9J7FCOokNtHOMZn4SETGUpuQgwQxqk7 MLwwGnZUxZesdltPcIUbkhS/8vVDcrB/03bZpCEqpKZGK49IuAvX4z5XTsEgUUBVmKoLaV 7StPPGprKEKsz/Zsrhb2DiBqTcXB94YgejhdFDRa5JcaIoJwWj3F4zhvZp1e6w== 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 4S6W5d3jWXztZ1; Fri, 13 Oct 2023 15:44:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DFiLw3014961; Fri, 13 Oct 2023 15:44:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DFiLfY014958; Fri, 13 Oct 2023 15:44:21 GMT (envelope-from git) Date: Fri, 13 Oct 2023 15:44:21 GMT Message-Id: <202310131544.39DFiLfY014958@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 5feb890554b6 - stable/14 - dtrace: remove x86 non-EARLY_AP_STARTUP support List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 5feb890554b6fb2c37a4e9aca6e5e5a0a9743be2 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=5feb890554b6fb2c37a4e9aca6e5e5a0a9743be2 commit 5feb890554b6fb2c37a4e9aca6e5e5a0a9743be2 Author: Ed Maste AuthorDate: 2023-10-09 20:13:50 +0000 Commit: Ed Maste CommitDate: 2023-10-13 14:13:14 +0000 dtrace: remove x86 non-EARLY_AP_STARTUP support After 792655abd64c EARLY_AP_STARTUP is mandatory for x86. Reviewed by: markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42139 (cherry picked from commit e49c7cd677df0b8691c828b55919ef37d8aad219) --- sys/cddl/dev/dtrace/amd64/dtrace_subr.c | 28 ---------------------------- sys/cddl/dev/dtrace/i386/dtrace_subr.c | 28 ---------------------------- 2 files changed, 56 deletions(-) diff --git a/sys/cddl/dev/dtrace/amd64/dtrace_subr.c b/sys/cddl/dev/dtrace/amd64/dtrace_subr.c index ee57432bd2fb..09b820241e50 100644 --- a/sys/cddl/dev/dtrace/amd64/dtrace_subr.c +++ b/sys/cddl/dev/dtrace/amd64/dtrace_subr.c @@ -283,7 +283,6 @@ dtrace_gethrtime_init_cpu(void *arg) hst_cpu_tsc = rdtsc(); } -#ifdef EARLY_AP_STARTUP static void dtrace_gethrtime_init(void *arg) { @@ -291,16 +290,6 @@ dtrace_gethrtime_init(void *arg) uint64_t tsc_f; cpuset_t map; int i; -#else -/* - * Get the frequency and scale factor as early as possible so that they can be - * used for boot-time tracing. - */ -static void -dtrace_gethrtime_init_early(void *arg) -{ - uint64_t tsc_f; -#endif /* * Get TSC frequency known at this moment. @@ -329,18 +318,6 @@ dtrace_gethrtime_init_early(void *arg) * (terahertz) values; */ nsec_scale = ((uint64_t)NANOSEC << SCALE_SHIFT) / tsc_f; -#ifndef EARLY_AP_STARTUP -} -SYSINIT(dtrace_gethrtime_init_early, SI_SUB_CPU, SI_ORDER_ANY, - dtrace_gethrtime_init_early, NULL); - -static void -dtrace_gethrtime_init(void *arg) -{ - struct pcpu *pc; - cpuset_t map; - int i; -#endif if (vm_guest != VM_GUEST_NO) return; @@ -364,13 +341,8 @@ dtrace_gethrtime_init(void *arg) } sched_unpin(); } -#ifdef EARLY_AP_STARTUP SYSINIT(dtrace_gethrtime_init, SI_SUB_DTRACE, SI_ORDER_ANY, dtrace_gethrtime_init, NULL); -#else -SYSINIT(dtrace_gethrtime_init, SI_SUB_SMP, SI_ORDER_ANY, dtrace_gethrtime_init, - NULL); -#endif /* * DTrace needs a high resolution time function which can diff --git a/sys/cddl/dev/dtrace/i386/dtrace_subr.c b/sys/cddl/dev/dtrace/i386/dtrace_subr.c index 9c9143eb9dff..026581f5a899 100644 --- a/sys/cddl/dev/dtrace/i386/dtrace_subr.c +++ b/sys/cddl/dev/dtrace/i386/dtrace_subr.c @@ -283,7 +283,6 @@ dtrace_gethrtime_init_cpu(void *arg) hst_cpu_tsc = rdtsc(); } -#ifdef EARLY_AP_STARTUP static void dtrace_gethrtime_init(void *arg) { @@ -291,16 +290,6 @@ dtrace_gethrtime_init(void *arg) uint64_t tsc_f; cpuset_t map; int i; -#else -/* - * Get the frequency and scale factor as early as possible so that they can be - * used for boot-time tracing. - */ -static void -dtrace_gethrtime_init_early(void *arg) -{ - uint64_t tsc_f; -#endif /* * Get TSC frequency known at this moment. @@ -329,18 +318,6 @@ dtrace_gethrtime_init_early(void *arg) * (terahertz) values; */ nsec_scale = ((uint64_t)NANOSEC << SCALE_SHIFT) / tsc_f; -#ifndef EARLY_AP_STARTUP -} -SYSINIT(dtrace_gethrtime_init_early, SI_SUB_CPU, SI_ORDER_ANY, - dtrace_gethrtime_init_early, NULL); - -static void -dtrace_gethrtime_init(void *arg) -{ - cpuset_t map; - struct pcpu *pc; - int i; -#endif if (vm_guest != VM_GUEST_NO) return; @@ -364,13 +341,8 @@ dtrace_gethrtime_init(void *arg) } sched_unpin(); } -#ifdef EARLY_AP_STARTUP SYSINIT(dtrace_gethrtime_init, SI_SUB_DTRACE, SI_ORDER_ANY, dtrace_gethrtime_init, NULL); -#else -SYSINIT(dtrace_gethrtime_init, SI_SUB_SMP, SI_ORDER_ANY, dtrace_gethrtime_init, - NULL); -#endif /* * DTrace needs a high resolution time function which can From nobody Fri Oct 13 15:44:22 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6W5f6KB0z4x8Yf; Fri, 13 Oct 2023 15:44:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6W5f5cGjz3Xsg; Fri, 13 Oct 2023 15:44:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211862; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qgrI9jmWCIZnLtoQCfWuegQN4jfIkycxVuhd7bImzuE=; b=sm0Y+UqlMAZcFNNgoc0QjcWM7EFygqK6jy3BjOQ7ksXr5J+XWHsyFp895UcVU/kgOC8h65 JBXlmUZKpE4Mx0wcYAWn2LyArC+YDAC1YDCqIi5FMXTI6Edh77NQVUFuyzgw/HmWDSqGJa yAqSWC+usu5lrGhT82v54WBl2/SGACZ3vXfEltQ99jVnFOP4PKj9nDLksaQzmP0ztr7tcr WtBkcsJugViHcMnx0gZmDoDU/wjIaXUdbvvjO88NoRQOLke/KvBb4pRmB3ZSuO3rqKrPxK 6/htjxJK8ho0uQqSvOI/BqtvB8BmMYevDjL9NxmL/pQqMqr8iqtu1Ib6HUVm5g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697211862; a=rsa-sha256; cv=none; b=NJfXR3vY0h6C0Ud20y+D/C53xOuNMj+dIIzBlro+f1/Ty/4n7X6wc1MBfD1JaO8C4opsTz 0d+gReH/1hTn3vYAms+fzabjN9njJEtF+bRQCkuktmKHZ6K0vQYHdrShcWgJcyLV+pxgHi 5jWFJxWNNs3glhETnVzQpZEVpnXOi8iIiC9YC13JeZ1oqtbaqZPf4jwk9xcqvgjpMMZ2k1 bLqqZHPi9CSjWF27I5jPN12Q7KTmlRZD81nf5QDhb3WWa17u77N4AgTsFzKFZVbpLIDFtq 5MSfY25qZrNVWpmSt4O00bs01J6QfMvwBdmMBy0avGtC8bASXkkZmmdyBQIWZQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211862; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qgrI9jmWCIZnLtoQCfWuegQN4jfIkycxVuhd7bImzuE=; b=C/D1WngAb4VcUq42MgOP0eRRwYZ5nCWsVnaHgUleKYSl5W5i98jDJt6yRoGAUIcdR7HKqR 5ikrMkn+bTo1Jv3AEnu8XEU5SS6ojH8yGju93HBccob2AWwxHOUhu9zqunYPwGgLZbmlsj V6Gj+bZC88gJmd8gcgtLoCBVJAepOz+L5h2euNyG3fberMWi+8zFZB7EWhhTmq0p7Nh/2K pvZORLQSItSEpnO/EfPvXhaMYLvmZuq6ZVNLYklrCHCLioBLhU+fo9b2Pk9utZm0BV/mOw IVz8K9JbhbooYYvDukSfeX6+TvV0eiQZd+BEAPkmBNy2MXAjCmvrGUVDU8piVg== 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 4S6W5f4grYztqq; Fri, 13 Oct 2023 15:44:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DFiMMO015006; Fri, 13 Oct 2023 15:44:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DFiMOj015003; Fri, 13 Oct 2023 15:44:22 GMT (envelope-from git) Date: Fri, 13 Oct 2023 15:44:22 GMT Message-Id: <202310131544.39DFiMOj015003@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 38521270cd0a - stable/14 - fortune: use 115200 in serial example List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 38521270cd0aaa7e3d49c88f49b172e2d9a632d1 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=38521270cd0aaa7e3d49c88f49b172e2d9a632d1 commit 38521270cd0aaa7e3d49c88f49b172e2d9a632d1 Author: Ed Maste AuthorDate: 2023-10-05 12:11:46 +0000 Commit: Ed Maste CommitDate: 2023-10-13 14:13:38 +0000 fortune: use 115200 in serial example Commit 4722ceb7d53e switched the default serial rate to 115200 bps. Follow suit in the freebsd-tips fortune example. Reviewed by: bcr Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D41495 (cherry picked from commit aaff6a85ff1e506e38a8c4f94f1cb1065427e8c3) --- usr.bin/fortune/datfiles/freebsd-tips | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.bin/fortune/datfiles/freebsd-tips b/usr.bin/fortune/datfiles/freebsd-tips index dd2c3cfb0495..3ee4ca3a5972 100644 --- a/usr.bin/fortune/datfiles/freebsd-tips +++ b/usr.bin/fortune/datfiles/freebsd-tips @@ -833,7 +833,7 @@ $ sysctl -n hw.pagesize To establish a serial connection to anything including a USB device, nothing more than cu(1) is needed: -$ cu -s 9600 -l /dev/ttyU0 +$ cu -s 115200 -l /dev/ttyU0 -- Daniel Ebdrup Jensen % From nobody Fri Oct 13 15:44:23 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6W5h17W7z4x8w7; Fri, 13 Oct 2023 15:44:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6W5g6sYzz3XyV; Fri, 13 Oct 2023 15:44:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211864; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Y9/LIRoiHZ5s5wS/T6srzb0kaKIo4TndC5fKtdIHnVs=; b=tuHwgQNwZNoq87AD6otz7FsdPxNOjZWFy6eV34KrotK2lVuv1xv56pK/3nXZXMk6VHEZCY vEhSMxxxE+4XBuGhX6N6IYt6814EYIYMHvr2DzPnydTm4KQGc/Q4GL10zZVKvHaF81Bmu4 vfcrW4FqWO/svEjvrrKAS+kEVuu9LSQHIsXYBrDtpRPJEnH2UjP3DVoGQ0+Ch7Axj4Kjbs xIOdl+XUC02nVp467qAeOoiyEmu78QrMHojze21Kjz58/uBuf3Q9LkB0UBjZIaXpTnpAGs 5O5If/6BmyI/1Ba73MFDu4cstHnYCcndPQoA4vH9VU0QE0PaiP1nVLDknhrc3g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697211864; a=rsa-sha256; cv=none; b=onTZVLSsabUo9YdQCNxoxR/MbnAswhWJOQ+dzcuTy426LFpR5VO9k8EUD2yXKS9Cxq+zgZ xCPPDmX2OKLx8M72elyCgld0oojp5aJ/p9SIxKZaxlYoBbjCP8XIWFcL9LxPv0x6hNsWP0 vyeaG9X56wWWbc1aQXn6ph6XB3ZDJ/w4KB4hY9aveXBLynIZwQx0TaBKr78HUXQm83sChB Q9SDZLo5/N2AugB7L+ZGbJOGAeAcVfIIRPYVK5fxoFBturdN1l0vZd3b8G0tAxRG9a3M5U nlyM+DVid0CSUJAprCIIYXb42tGsslANwvLLxM9hF3uyiXUa8aejyUfjkFDfKg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211864; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Y9/LIRoiHZ5s5wS/T6srzb0kaKIo4TndC5fKtdIHnVs=; b=xBlp2vnU/IF2hZLkNrgtpQyOWHTNIdMoYA5jtYlGwF3+csxHWX8CxSLt/SSXixDuyILw2o +WgR9odcTpOpY5XQ+4V5o5KwK+dTNMVdvAZ3+YnatNDkD0dVVrLtqauT2roGbW0i1HrTkr y8aME1inctNGsWK1+LSEPaQpeuvf3iPIJYGBXFguBEzMYT0ff0WPlSis2H+yQfMdjbBDb+ 75ej/skjD3FpcUiPI3BhFxTQJAbXJlnV/GAxS26MIjvSSxaHurZyP01XSXA6y9j8nF7p1K H3AKibqXEA4UW9iUO3wIDvkRLXRU+JMfQvetms4WLhJQlCmOKShX7xwxi+Ul3A== 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 4S6W5g5jrkztwc; Fri, 13 Oct 2023 15:44:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DFiNGD015063; Fri, 13 Oct 2023 15:44:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DFiNkp015060; Fri, 13 Oct 2023 15:44:23 GMT (envelope-from git) Date: Fri, 13 Oct 2023 15:44:23 GMT Message-Id: <202310131544.39DFiNkp015060@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: ffe4456d7d9f - stable/14 - freebsd-update: add a note about when files may be deleted List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ffe4456d7d9f2c6bb14e9b747766adc3042f0b9e Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=ffe4456d7d9f2c6bb14e9b747766adc3042f0b9e commit ffe4456d7d9f2c6bb14e9b747766adc3042f0b9e Author: Ed Maste AuthorDate: 2023-09-29 15:47:41 +0000 Commit: Ed Maste CommitDate: 2023-10-13 14:13:38 +0000 freebsd-update: add a note about when files may be deleted Files under /var/db/freebsd-update are required during the upgrade process, and to support rollback. They may be deleted if no upgrade is in progress and rollback will not be required. PR: 273601 Reviewed by: bcr Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42022 (cherry picked from commit 30beebe444f5f415a388be9df91107246bd32674) --- usr.sbin/freebsd-update/freebsd-update.8 | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/usr.sbin/freebsd-update/freebsd-update.8 b/usr.sbin/freebsd-update/freebsd-update.8 index 471ae359c917..0d50ac8822de 100644 --- a/usr.sbin/freebsd-update/freebsd-update.8 +++ b/usr.sbin/freebsd-update/freebsd-update.8 @@ -23,7 +23,7 @@ .\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd September 10, 2022 +.Dd October 4, 2023 .Dt FREEBSD-UPDATE 8 .Os .Sh NAME @@ -251,7 +251,11 @@ configuration file. .It Pa /var/db/freebsd-update/ Default location where .Nm -stores temporary files and downloaded updates. +stores temporary files, downloaded updates, and files required for rollback. +All files under +.Pa /var/db/freebsd-update/ +may be deleted if an upgrade is not in progress and rollback will not be +required. .El .Sh SEE ALSO .Xr freebsd-version 1 , From nobody Fri Oct 13 15:44:24 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6W5j2NvVz4x8lk; Fri, 13 Oct 2023 15:44:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6W5j0cc3z3Xjg; Fri, 13 Oct 2023 15:44:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211865; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u2d0S2p5MlAVmsjVJu8a3MPwvS7bZyLoA0v+Uz+vFO4=; b=AhajYER6wnbnme9dHCQxB5vJhgRWKttuRKpXfw5Bp8DBWS9DpWskSdW6JPT9gv396RZSi/ 1ysr7J0NQmL6MnJ8QPqngmhijuJvvfT9IwJ1GD7uZx6PPkiicewZ4VBtIVTpEzs760sXIF tx8ez9XUbHyQTTtCbHqw1fCs1TRH5+wJTPHC92+XFiWjc7T6Kzyb/WaddAsEfaWejJs5hv aRYKFoJI3ZgxDdR7YdT9dV8wWE3n0cPFoSPTUkWD6rLbGnWhFu8cK54D3W41JW8xWA1FPq 5AEb25R7SJbaVqrpE2+cX2KnOzHMoH/2U6IRgJkytWHPGJU+zfSrA1Xz8lfz/w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697211865; a=rsa-sha256; cv=none; b=jOF/mhShy7ujmBpaf0sOtbL8/+rfmiX1Q5xiQk9p86ad7p8Ehax2jUNYvCg/BmCPpHqhOj NPeFu/mVYILZacrkZ6HevSOtKHYt79+DcCykJNGVQd3mSJy46VheYbK+V6JEjX94PKH3sn 0aWFmm6x/xd4kci3FTnXPUTCpwOyoGyAw1O2Yz3dLh18ok/nB1I+JxJHOrc7gCehnyShRS VNLpTye9FO/hAYbx14us5ccOZBv0AU0QnU6gSC9Pb2fdojvXaLLfvSe9ngWHAxDZUxq8Vy J+D3JX0hPUzeIQR7mrqUXCtXUGCSgLn33cgxhJyRTGqlWxtwAmPOIEtQu/nWag== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211865; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u2d0S2p5MlAVmsjVJu8a3MPwvS7bZyLoA0v+Uz+vFO4=; b=AQQHsMV++E7XJsukeveCXT9sGvl4Fw1jeVBy/V/87F2RGizpy75biC45YXBpGX8yjuQ6Q5 MAk3EpbVvWclpmExc+diZMzD1LZQ8BfsOOzjE4Ned42gjCnnsY8o5/Kv88kBeht95yL+lZ wOQi6vv7SygWayq1tmIvpnwfZJ8JuP1vHp70/bhLFOHMUqGBTzKEySldxWNonfUCN464JI x/BBeX3I+4aBGuoUurqM7Lt5AJsJi488YZ1bPo6mF0Q0aob6oEAAJ1s2zUO53iB/Mmprpn Nocd1sYII833OAUOLnR3BnnOfU5jBL6X+h7J9IzGV8NsXKuKP2haQiQCBSi5gA== 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 4S6W5h6jLdztZ2; Fri, 13 Oct 2023 15:44:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DFiOHs015106; Fri, 13 Oct 2023 15:44:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DFiONn015103; Fri, 13 Oct 2023 15:44:24 GMT (envelope-from git) Date: Fri, 13 Oct 2023 15:44:24 GMT Message-Id: <202310131544.39DFiONn015103@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 74e9205b5e4f - stable/14 - openssl: document the update process List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 74e9205b5e4f4c48da06d45719eacc605878c3a9 Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=74e9205b5e4f4c48da06d45719eacc605878c3a9 commit 74e9205b5e4f4c48da06d45719eacc605878c3a9 Author: Pierre Pronchery AuthorDate: 2023-09-25 15:40:26 +0000 Commit: Ed Maste CommitDate: 2023-10-13 14:13:38 +0000 openssl: document the update process This is directly inspired from the equivalent document for OpenSSH. Sponsored by: The FreeBSD Foundation (cherry picked from commit 6a770c04986b01a95fbbdadc621e25cdfffbf7a9) --- crypto/openssl/FREEBSD-upgrade | 130 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 130 insertions(+) diff --git a/crypto/openssl/FREEBSD-upgrade b/crypto/openssl/FREEBSD-upgrade new file mode 100644 index 000000000000..76943efdbde6 --- /dev/null +++ b/crypto/openssl/FREEBSD-upgrade @@ -0,0 +1,130 @@ + FreeBSD maintainer's guide to OpenSSL + ===================================== + + These instructions assume you have a clone of the FreeBSD git repo + main branch in src/freebsd/main, and will store vendor trees under + src/freebsd/vendor/. In addition, this assumes there is a "freebsd" + origin pointing to git(repo).freebsd.org/src.git. + +01) Switch to the vendor branch: + + $ cd src/freebsd/main + $ git worktree add ../vendor/openssl-X.Y freebsd/vendor/openssl-X.Y + $ cd ../vendor/openssl-X.Y + +02) Download the latest OpenSSL tarball and signature from the official + website (https://www.openssl.org/source/). + + $ (cd .. && fetch https://openssl.org/source/openssl-X.Y.Z.tar.gz) + $ (cd .. && fetch https://openssl.org/source/openssl-X.Y.Z.tar.gz.asc) + +03) Verify the signature: + + $ gpg --verify ../openssl-X.Y.Z.tar.gz.asc ../openssl-X.Y.Z.tar.gz + +04) Unpack the OpenSSL tarball to the parent directory: + + $ tar -x -X FREEBSD-Xlist -f ../openssl-X.Y.Z.tar.gz -C .. + +05) Copy to the vendor branch: + + $ rsync --exclude FREEBSD.* --delete -av ../openssl-X.Y.Z/* . + +06) Take care of added / deleted files: + + $ git add -A + +07) Commit: + + $ git commit -m "openssl: Vendor import of OpenSSL X.Y.Z" + +08) Tag: + + $ git tag -a -m "Tag OpenSSL X.Y.Z" vendor/openssl/X.Y.Z + + At this point the vendor branch can be pushed to the FreeBSD repo via: + + $ git push freebsd vendor/openssl-X.Y + $ git push freebsd vendor/openssl/X.Y.Z + + Note the second "git push" command is used to push the tag, which is + not pushed by default. + + It is also possible to push the branch and tag together, but use + --dry-run first to ensure that no undesired tags will be pushed: + + $ git push --dry-run --follow-tags freebsd vendor/openssl-X.Y + $ git push --follow-tags freebsd vendor/openssl-X.Y + + The update and tag could instead be pushed later, along with the merge + to main, but pushing now allows others to collaborate. + +09) Merge from the vendor branch: + + $ git subtree merge -P crypto/openssl vendor/openssl-X.Y + + A number of files have been deleted from FreeBSD's copy of OpenSSL. + If git prompts for these deleted files during the merge, choose 'd' + (leaving them deleted). + +10) Resolve conflicts. Remember to bump the version and date in + secure/lib/libcrypto/Makefile.inc and + crypto/openssl/include/openssl/opensslv.h. + +11) Diff against the vendor branch: + + $ git diff --diff-filter=M vendor/openssl/X.Y.Z HEAD:crypto/openssl + + Review the diff for any unexpected changes. + +12) Re-generate the assembly files: + + $ cd secure/lib/libcrypto + $ make cleanasm buildasm + +13) Update the appropriate makefiles to reflect changes in the vendor's + build.info files. This is especially important if source files have + been added or removed. Keep in mind that the assembly files generated + belong to sys/crypto/openssl, and will therefore affect the kernel as + well. + +14) If symbols have been added or removed, update the appropriate + Version.map to reflect these changes. + +15) Compare compilation flags, the list of files built and included, the + list of symbols generated with the corresponding port if available. + +16) Re-generate the manual files: + + $ tar xzf openssl-X.Y.Z.tar.gz + $ (cd openssl-X.Y.Z && ./Configure --prefix=/usr --openssldir=/etc/ssl && + make build_man_docs) + [...] + $ find openssl-X.Y.Z/doc/man/man1 -name '*.1' -exec cp {} secure/usr.bin/openssl/man/ \; + $ find openssl-X.Y.Z/doc/man/man3 -name '*.3' -exec cp {} secure/lib/libcrypto/man/man3/ \; + $ find openssl-X.Y.Z/doc/man/man5 -name '*.5' -exec cp {} secure/lib/libcrypto/man/man5/ \; + $ find openssl-X.Y.Z/doc/man/man7 -name '*.7' -exec cp {} secure/lib/libcrypto/man/man7/ \; + $ grep -nrF usr/local secure/lib/libcrypto/man secure/usr.bin/openssl/man + [correct the references to the prefix and OpenSSL directories] + $ git commit --amend secure/lib/libcrypto/man secure/usr.bin/openssl/man + + Review the diff and tree status for anything requiring attention. + +16) Build and install world, reboot, test. + +17) Test the legacy and fips providers as well: (here with "test" as the password) + + $ echo test | openssl rc4 -provider legacy -e -a -pbkdf2 + enter RC4 encryption password: + Verifying - enter RC4 encryption password: + U2FsdGVkX1+JvhqxLMOvlxvTi1/h + + # openssl fipsinstall -out /etc/ssl/fipsmodule.cnf -module /usr/lib/ossl-modules/fips.so + INSTALL PASSED + # vi /etc/ssl/openssl.cnf + [enable the FIPS module] + # echo test | openssl aes-256-cbc -provider fips -e -a -pbkdf2 + U2FsdGVkX19lTexiYsnMX83ZLSojBOFwv7GB0Plhgmw= + +18) Commit and hope you did not miss anything. + From nobody Fri Oct 13 15:44:25 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6W5k5BjKz4x8wF; Fri, 13 Oct 2023 15:44:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6W5k0wnSz3Y22; Fri, 13 Oct 2023 15:44:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211866; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=h5W/x3SsLDk8eigldwlVeiwaLoc4x2UxYfAlXH/ds6c=; b=x3ZEtg3/krWiffyQ7PzB6QMrHhHqxeGNxsLR1Bz2HwyYLFux5XB3aZnZp8KTP0K8gtQr1D cDAk2ifA8487hsQXJhbDoi+gINmmVwIR6EHPKSRm7ee1D3CpuDTqq9gTZOduUQU5BQPbDO mQTZ0wwRQuieJTSg3lCi92fizfyhT+4YMNxg6P2JWFVhy9+Ifa8FmkU5bjZUTGskfHxrYc Al61CvQ1zmPmzbZuD5bPfxv7TCY4l+2dOz/vdQiGk2YX5uUXIApvuxMYdxpHwciw4SKPx4 nXy8e3Gznv5g3MNSArQMgEQGfNohqBoLnBOoEsRNgZiBnMQH/hJomyKischMZw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697211866; a=rsa-sha256; cv=none; b=qyoH/uvnA9WZL4cLIwu4ykdC0SMBphbZ3kVAPg60K0YlMrQ9u5tGTxYrR2ITfRKKIO9E9P 4Y4EK05mnr4Wp5qVgfDYDpVsFtTfQdPFKBJEyrwgmkxRPIt1e2BJHBxsyJKl4p4flP4Z7z QvDwTLOrWHIeTL9vnlar/r4QLwNr2kh8jxbd1YhpEDMihFiqSEOkg/DvGPon1NGYQ+1EYE lCW+dPJx3KLvqycuWDq8huGnZ+0lJTaj3oHitNzwoqvFrZn3xoesapBj6BsuZpcaJ1htHm 6hkFxcmYv6LD+5XNhIfOlmieUHROusb+2TpaTpQPRmkVNeyXOVRDS4Aqz9uCqw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697211866; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=h5W/x3SsLDk8eigldwlVeiwaLoc4x2UxYfAlXH/ds6c=; b=yz/JYGhNJKWe9PW2cha7eVTV9+XIvHZKlca4iixkeq66x5WgyRfOK3Begq/TDKE3wwZVxG cfOLArQS69OFeFNN+7wM54PP4Lgv2srGgEjPu4fSmGG58jtgX7PwyBhZl64p9T/1BD130z KWeO/VkC+y1Tia8Xea6htOTH18d7nxxLOnR7CpzWM8MXqg1BoD8S1mg/x3mohMeory6Vsg rdciAs/1QxDLj4qfxaxwLM0ct9LnPHkQWQ5aCp5O3nkQ42T4zXSaY3XC68LNtUdxB09pFB 6e7woJyET/0gOr98ehNTEtS4tA1d1YoVGHDaZ3wRG5zNOLCWfFASZ6YWxAeX7w== 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 4S6W5k025wztqr; Fri, 13 Oct 2023 15:44:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DFiPDE015170; Fri, 13 Oct 2023 15:44:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DFiPGL015167; Fri, 13 Oct 2023 15:44:25 GMT (envelope-from git) Date: Fri, 13 Oct 2023 15:44:25 GMT Message-Id: <202310131544.39DFiPGL015167@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 83bcaf3b2d6c - stable/14 - login_cap.c: Don't set errno to ERANGE on memory allocation failure List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 83bcaf3b2d6cb173ee126f504478fa6ace4f406f Auto-Submitted: auto-generated The branch stable/14 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=83bcaf3b2d6cb173ee126f504478fa6ace4f406f commit 83bcaf3b2d6cb173ee126f504478fa6ace4f406f Author: Olivier Certner AuthorDate: 2023-05-25 11:48:40 +0000 Commit: Ed Maste CommitDate: 2023-10-13 14:13:38 +0000 login_cap.c: Don't set errno to ERANGE on memory allocation failure Modified functions: login_getcaptime(), login_getcapnum(), login_getcapsize(). They all call cgetstr(), which returns -2 on such conditions and already sets errno to ENOMEM, arguably the appropriate value for these functions as well. No in-tree consumer currently checks for errno on error reported by these functions, so this change has no other code impact. Reviewed by: kib MFC after: 2 weeks Sponsored by: Kumacom SAS Differential Revision: https://reviews.freebsd.org/D40342 (cherry picked from commit b8c1aadef9d80786daf731300c33d3a001261422) --- lib/libutil/login_cap.c | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/lib/libutil/login_cap.c b/lib/libutil/login_cap.c index e71d38d2d93b..aeda7d5e828b 100644 --- a/lib/libutil/login_cap.c +++ b/lib/libutil/login_cap.c @@ -650,10 +650,8 @@ login_getcaptime(login_cap_t *lc, const char *cap, rlim_t def, rlim_t error) if ((r = cgetstr(lc->lc_cap, cap, &res)) == -1) return def; - else if (r < 0) { - errno = ERANGE; + else if (r < 0) return error; - } /* "inf" and "infinity" are special cases */ if (isinfinite(res)) @@ -735,19 +733,18 @@ login_getcapnum(login_cap_t *lc, const char *cap, rlim_t def, rlim_t error) /* * For BSDI compatibility, try for the tag= first */ - if ((r = cgetstr(lc->lc_cap, cap, &res)) == -1) { + r = cgetstr(lc->lc_cap, cap, &res); + if (r == -1) { long lval; /* string capability not present, so try for tag# as numeric */ if ((r = cgetnum(lc->lc_cap, cap, &lval)) == -1) return def; /* Not there, so return default */ - else if (r >= 0) + else if (r < 0) + return error; + else return (rlim_t)lval; - } - - if (r < 0) { - errno = ERANGE; + } else if (r < 0) return error; - } if (isinfinite(res)) return RLIM_INFINITY; @@ -786,10 +783,8 @@ login_getcapsize(login_cap_t *lc, const char *cap, rlim_t def, rlim_t error) if ((r = cgetstr(lc->lc_cap, cap, &res)) == -1) return def; - else if (r < 0) { - errno = ERANGE; + else if (r < 0) return error; - } if (isinfinite(res)) return RLIM_INFINITY; From nobody Fri Oct 13 17:28:40 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6YQ107FBz4wXLW; Fri, 13 Oct 2023 17:28: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 4S6YQ06ghmz4HdY; Fri, 13 Oct 2023 17:28:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697218120; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=al7A1+8SzOw0IAruhGxWnF7aRCWYj2XBq/qmYdeUYjo=; b=lC7B/SAun/zISu4smGLB+ADuGOAt2/4pd1AAu63nSJLCZVdzBYzvfJS8SrRriEDFesKJce YO+pTlD7kZt1f5hcDMj3wGWOfiX9MuitOHb6TFzTsT6F8ReHSoFK6Qzpigi56/sTuDEiC3 bNv9gp9qjLyv/c4tSDR3cBIQrtsraoYOp/PyJam4eMAajnYJKZP9nPz720MYXX6ItM7FAJ aUnkg8PZsCtnYhMaO/GAXv1E0ij9mOfEEdXeYnD81kVVqGLGcTcMQ45MNjsTAyNEIYCH5n F352HOB7ZwnZFFL36e1UOM1dwxhixCs1Km3SbWMZvCkXmJdczG8OTZee2tFPMA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697218120; a=rsa-sha256; cv=none; b=yXxeVTzdZNryUdS1n1mhZqjdTA4I+rKKav+NZUGyCuuiWmn3q1Pu1WvTcT2ZB+/OzcmOuI tJltBi2ASCnCRkXZC5YpZ5Tt4EDghzgCkiYr7XFb1s6DsIPtxaan8HwmWwAMiiufuhHbjg 1n/ryBCJQXOkhk+luMqQvBs+woQtELKGmg+AIj8CUTmHoOTR0p/JZr8drk3Bh/Mlan6/jJ I/ZZ8DEnKarjVgDQkvDvrEdvsjqi6XCLfR7c6u52UvYpwfRoSk5vqOr7CM6/vZELQFB8BZ J1/+lYKEsF0oTtzmie47AZt6IqbcFmGNSS8w3H3LrpW/cc92XzYcAwIo+a0wHg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697218120; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=al7A1+8SzOw0IAruhGxWnF7aRCWYj2XBq/qmYdeUYjo=; b=KPfgz/ci7saJzr9AZqEBzpZfvWSBW5oj0RLL6mcG0g36EvFLFHtpAlNUGt56fZ8/iVYOZf mrLieekGo/BJJyc7+dMi+o9BRnEwEnsoddc6WC1iKgbNLFtmt/7bBjRlkghwR18aR7FSwI j2LJBOrbbQXXitQffYyvpurfh9exXrg/FHJ4lSjEPl52lART1P9+iVU6Pl1LFxyXwZjIZH eBaJ1l+maRamKeJBfF7k2cL1Vssx/fFEx1dZ46YKhlgcYI67SPhkMKA4UL/FYIq3KP4Oed TgJQeZfdQXkKWbNbmwqsX09HVE68KoThIj5exJR+54+AzQ8MByn0xWcaYIMNiQ== 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 4S6YQ05kSHzwwk; Fri, 13 Oct 2023 17:28:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DHSe7c082405; Fri, 13 Oct 2023 17:28:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DHSe8m082402; Fri, 13 Oct 2023 17:28:40 GMT (envelope-from git) Date: Fri, 13 Oct 2023 17:28:40 GMT Message-Id: <202310131728.39DHSe8m082402@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 4dd8132fc565 - stable/13 - freebsd-update: add a note about when files may be deleted List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 4dd8132fc565cb08b92a918a1cae52f246417999 Auto-Submitted: auto-generated The branch stable/13 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=4dd8132fc565cb08b92a918a1cae52f246417999 commit 4dd8132fc565cb08b92a918a1cae52f246417999 Author: Ed Maste AuthorDate: 2023-09-29 15:47:41 +0000 Commit: Ed Maste CommitDate: 2023-10-13 17:27:03 +0000 freebsd-update: add a note about when files may be deleted Files under /var/db/freebsd-update are required during the upgrade process, and to support rollback. They may be deleted if no upgrade is in progress and rollback will not be required. PR: 273601 Reviewed by: bcr Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42022 (cherry picked from commit 30beebe444f5f415a388be9df91107246bd32674) (cherry picked from commit ffe4456d7d9f2c6bb14e9b747766adc3042f0b9e) --- usr.sbin/freebsd-update/freebsd-update.8 | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/usr.sbin/freebsd-update/freebsd-update.8 b/usr.sbin/freebsd-update/freebsd-update.8 index 471ae359c917..0d50ac8822de 100644 --- a/usr.sbin/freebsd-update/freebsd-update.8 +++ b/usr.sbin/freebsd-update/freebsd-update.8 @@ -23,7 +23,7 @@ .\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd September 10, 2022 +.Dd October 4, 2023 .Dt FREEBSD-UPDATE 8 .Os .Sh NAME @@ -251,7 +251,11 @@ configuration file. .It Pa /var/db/freebsd-update/ Default location where .Nm -stores temporary files and downloaded updates. +stores temporary files, downloaded updates, and files required for rollback. +All files under +.Pa /var/db/freebsd-update/ +may be deleted if an upgrade is not in progress and rollback will not be +required. .El .Sh SEE ALSO .Xr freebsd-version 1 , From nobody Fri Oct 13 17:28:41 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6YQ23WxRz4wX9y; Fri, 13 Oct 2023 17:28:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6YQ20VDNz4HsT; Fri, 13 Oct 2023 17:28:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697218122; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qnMCxK/irp4vXa8lRXu5m9bgcPxEMNzNGYt9b1tn+BU=; b=d7kUppYYJk3g0OASsB9Xw761qfohKFz0+iVrCMQ2+AVhF1sa+W77PKOzJ33jV+yNDc53fo 4+caXIawfm4ovNPGY+1UIQOABhkfGYVf+8oNrQcKgm7PjjwDa+ut14/q+T7CgwoYK2CjSS DgEZAMCchRADzPVhrCGqPzF3vBUxdVrAS+7Cxzmf6pCznXKUjD9nnI1rNKxnhLYkuv7Hcr EM5MBKo1mw45u+Mecx/YxqE0qP0DnuHHcl/iccVqGIBwyaeUmd01wf8KGcfNmLSLHaoOdU 7Gyz2s4hY3jbujx9La54SG8M30fEJLG0xhU2NeXMMI+TFwSKLISKnwi+igPDVw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697218122; a=rsa-sha256; cv=none; b=eP/YzrygGxWv0JPRb0XkWN/JUAg7GdWrYker0Zztyux9v52pNQC8ekzTIse723xb/gWUrZ etGPBLrbomD/M1Q4etYpiusHJb6AEGKvTLdvdhHv/RGWCG5BjWXZjSe7fBgBT8lrZ2MVz5 rNARnv8/ZHSbmLt38Rr6UMToz1mL7JJOar56wc4vmi5oS7zjmEMzqO720ZYQs14QS0Zp8t O2mVgH5WL6aq2XPusULI3cFy4MO111Q+GPyEQZvbj+JuwvPeUJiwrUoheHvSx7J83p2Wc1 b/NwC0/fdFOL4P30ZmYTybJKaK+lDYXEQZ5z5OZ+culro8yFCGqGOnQxzYD32g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697218122; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qnMCxK/irp4vXa8lRXu5m9bgcPxEMNzNGYt9b1tn+BU=; b=B7dxjXC/b4gllE0z5/M/slCopM9pANZEkN7jU74IWsOMwCi1lJM1DgovcDpM+Q4dQFZR6+ xBuRWQUQwC9eD6oMzKZ8Gr0IVNPf5HWlqEfk/khUT1cv6WQ3Hd3FyJ0BoBH1nYQbxbf1K9 rSzvY1U6uEH1W1EiyteT+XDfyrvWYNItQACE4KN7TwjD3QDuNa5NZeAlBf7cVERoBVHejy GoDkR4cOvuV8Lc5Tq7fU5vVHBBeJoY6wqq//z/TV3ra+qpTkAdabFMfcITlC2mxjcFJ7dI CqokQnWfvtkQLQJ2CTa6PQwbgUIeDoiumClDWhu9LSsG7DX8RDJA7aL9i1vqWw== 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 4S6YQ16jRvzx0B; Fri, 13 Oct 2023 17:28:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DHSf9v082447; Fri, 13 Oct 2023 17:28:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DHSfu0082444; Fri, 13 Oct 2023 17:28:41 GMT (envelope-from git) Date: Fri, 13 Oct 2023 17:28:41 GMT Message-Id: <202310131728.39DHSfu0082444@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 311657cbc150 - stable/13 - ktrace.2: correct kern.ktrace.genio_size sysctl name List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 311657cbc15065af206ffdad18562f9f9e4b5298 Auto-Submitted: auto-generated The branch stable/13 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=311657cbc15065af206ffdad18562f9f9e4b5298 commit 311657cbc15065af206ffdad18562f9f9e4b5298 Author: Ed Maste AuthorDate: 2023-10-11 01:18:36 +0000 Commit: Ed Maste CommitDate: 2023-10-13 17:27:03 +0000 ktrace.2: correct kern.ktrace.genio_size sysctl name The man page had `kern.ktrace.geniosize` but the sysctl node contains an underscore. PR: 274274 Reported by: Ivan Rozhuk Sponsored by: The FreeBSD Foundation (cherry picked from commit a572dfa1bfe00cec93b27d8848ca49562cab5e3c) (cherry picked from commit 2fe06dda0a8abced5851188ed2cb76d1759efa19) --- lib/libc/sys/ktrace.2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libc/sys/ktrace.2 b/lib/libc/sys/ktrace.2 index 03e19c0c84a0..7025a2904f6c 100644 --- a/lib/libc/sys/ktrace.2 +++ b/lib/libc/sys/ktrace.2 @@ -145,7 +145,7 @@ The following tunables influence the behaviour of .Fn ktrace : .Bl -tag -width indent -.It Va kern.ktrace.geniosize +.It Va kern.ktrace.genio_size bounds the amount of data a traced I/O request will log to the trace file. .It Va kern.ktrace.request_pool From nobody Fri Oct 13 20:16:42 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6d7t3kj3z4wk1b; Fri, 13 Oct 2023 20:16:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6d7t3KNfz4cqW; Fri, 13 Oct 2023 20:16:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697228202; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wPzBNMjk3mWYn1HEaLCiVUoskbP9gtdk9ihsazINPjo=; b=DAD6qFhInWTk9GxxVmli+kNEnd57+xahH+R8w7CM95dcIcUHUBcaXG6OLHx3v72aDG6XVq KgdObgJTk77Ys0+TIKF5YupPKsC9Qprv1LVUgoaPAa395gYbrwmJSOPIxIjaGl9NqXcC9G smaWex7zPNLDMx+bT/Fd2xwJWDPRIXEAO0f0zokaLK01e5uti8KuqlQXilGuZJ6ZSrHVH4 ShXc0Njl5xbw78pSCWte6kMH9MKQ++DmxYodzozxhu2nkSnmrm2BbxzVcxAUJSoXAKQT9x x1mu0FuoBpzY+JFRsQBiLkSK+6Jp5tSVAa7ItQtp0/Ec2uWlXZdQRoobWYzAYw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697228202; a=rsa-sha256; cv=none; b=I48tEM+xSP8+ftiOyKgT55zknNr9b8k9AZbggJRltbhgYoWV6q9v+kdTnB33pD+kE77qu0 m4Wsqc/J8GUiHrxwsUrg2H3chT0dEsrH4pzT52NWxFX8UfsFsGqczlzFlVxt9FrsNMfBBJ MuurpPKo7FrYQBY+qaY3vwqpXomG3CzC9UWvH4vK+OQfREaKtptpG6A7pslzihjYg8SFeN 93f+Q/kX9scgUk5pB24uFyUoGxuSd8OC69+2a+m0Z5G//MffPT2wOE6EftIOYNyoyBilbb A/UhY0Ws8HHKSNekmuShmfzg3yEx7ugRGIf8yYkFcfHWvRMHGfpZT8ixT73Lyw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697228202; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wPzBNMjk3mWYn1HEaLCiVUoskbP9gtdk9ihsazINPjo=; b=tuxsqGPnxXazMOM0Xpd2sewuFtrAXRL4oBrNOHErH3dZBoE5vcKHnoCcBXt6m1gzBcq3bk LudH+Jj6pxg4ddeJXHHBuVmNOevm6rnNmhn4tYB9HbcbeDoaiC7U4VNYYX5QxqAxpVkwFh Sx7+IC9W7Q6E3S30tol8Jt4e+/hnh9DOvIsgnmGk3sVz2zD/1F+DYYwOF1KoVMmeC5ewHO ZTJCWZ2+wsBOkZS+DdJFZTIT89UulYiM4auxRIHKAialdQZTY/iBEblAWsw1ieudNE5Nf7 0kPwzcAdMKvty7oT+Gu6SJreNtp/ZRCZLZlj+PBUfnYIL9MKmUVM109Mt3pUzA== 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 4S6d7t26T2z11Nn; Fri, 13 Oct 2023 20:16:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DKGgWb065690; Fri, 13 Oct 2023 20:16:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DKGgUC065687; Fri, 13 Oct 2023 20:16:42 GMT (envelope-from git) Date: Fri, 13 Oct 2023 20:16:42 GMT Message-Id: <202310132016.39DKGgUC065687@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: 8209af15a699 - stable/14 - udp: fix sending of IPv4-mapped addresses List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 8209af15a6994d52276be05380e0c0b7ae117cea Auto-Submitted: auto-generated The branch stable/14 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=8209af15a6994d52276be05380e0c0b7ae117cea commit 8209af15a6994d52276be05380e0c0b7ae117cea Author: Michael Tuexen AuthorDate: 2023-10-07 13:56:00 +0000 Commit: Michael Tuexen CommitDate: 2023-10-13 20:13:44 +0000 udp: fix sending of IPv4-mapped addresses The inp_vflags field must be adjusted during the call of in_pcbbind_setup(). This is consistent with the other places in the code, but not elegant at all. PR: 274009 Reported by: syzbot+81ccc423a2737ed031ac@syzkaller.appspotmail.com Reported by: syzbot+c8e3dac881bba85bc029@syzkaller.appspotmail.com Reviewed by: markj, rrs, rscheff Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D42031 (cherry picked from commit abca3ae7734f664ee9c5edc7a9d3a17e29180bdb) --- sys/netinet/udp_usrreq.c | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/sys/netinet/udp_usrreq.c b/sys/netinet/udp_usrreq.c index 70d738bf2108..cbda7f536262 100644 --- a/sys/netinet/udp_usrreq.c +++ b/sys/netinet/udp_usrreq.c @@ -1050,7 +1050,7 @@ udp_send(struct socket *so, int flags, struct mbuf *m, struct sockaddr *addr, int cscov_partial = 0; int ipflags = 0; u_short fport, lport; - u_char tos; + u_char tos, vflagsav; uint8_t pr; uint16_t cscov = 0; uint32_t flowid = 0; @@ -1092,7 +1092,8 @@ udp_send(struct socket *so, int flags, struct mbuf *m, struct sockaddr *addr, * pcb hash. */ if (sin == NULL || - (inp->inp_laddr.s_addr == INADDR_ANY && inp->inp_lport == 0)) + (inp->inp_laddr.s_addr == INADDR_ANY && inp->inp_lport == 0) || + (flags & PRUS_IPV6) != 0) INP_WLOCK(inp); else INP_RLOCK(inp); @@ -1203,10 +1204,17 @@ udp_send(struct socket *so, int flags, struct mbuf *m, struct sockaddr *addr, error = EINVAL; goto release; } + if ((flags & PRUS_IPV6) != 0) { + vflagsav = inp->inp_vflag; + inp->inp_vflag |= INP_IPV4; + inp->inp_vflag &= ~INP_IPV6; + } INP_HASH_WLOCK(pcbinfo); error = in_pcbbind_setup(inp, &src, &laddr.s_addr, &lport, td->td_ucred); INP_HASH_WUNLOCK(pcbinfo); + if ((flags & PRUS_IPV6) != 0) + inp->inp_vflag = vflagsav; if (error) goto release; } @@ -1249,9 +1257,16 @@ udp_send(struct socket *so, int flags, struct mbuf *m, struct sockaddr *addr, inp->inp_lport == 0 || sin->sin_addr.s_addr == INADDR_ANY || sin->sin_addr.s_addr == INADDR_BROADCAST) { + if ((flags & PRUS_IPV6) != 0) { + vflagsav = inp->inp_vflag; + inp->inp_vflag |= INP_IPV4; + inp->inp_vflag &= ~INP_IPV6; + } INP_HASH_WLOCK(pcbinfo); error = in_pcbconnect_setup(inp, sin, &laddr.s_addr, &lport, &faddr.s_addr, &fport, td->td_ucred); + if ((flags & PRUS_IPV6) != 0) + inp->inp_vflag = vflagsav; if (error) { INP_HASH_WUNLOCK(pcbinfo); goto release; From nobody Fri Oct 13 21:54:25 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6gJf1Jc9z4wqQr; Fri, 13 Oct 2023 21:54: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 4S6gJf0n4Kz4lTd; Fri, 13 Oct 2023 21:54:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697234066; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OwPU1qBB2HEynLRUM2RHoJ137zkDqAW9tJYIdbgNTzw=; b=P/ZS0l3ao4ITAH1PAEZYCj52IqbneaPM5Uecfme4AanAUeL+cs4QQrFCXWLgp56q45RKkd uAr3hVt2ufemjNwU2tac4nBg53Cq5E2E+ZoVki6v+uuU2bZlaqnZiQXIZDYiaSvewiirEO WSeavmNLiq0ej5cC1gkxtxpXSJoHlMJ8p4hNMCceodD1LxBtMhBkBK8nbOLD7c1dF1YgX2 H7P7miD6rlH9boyG/AfXXF+dgi5DDlm6jIqA5h+bRK0MoQf/+nYN7uQXkHKglJ4EZLj4RE 8z62DDidU+m/BzC0sVs/tH+NR7RZdnhEn9GOjGC35CuBDa6JphofpqNZM0cJIg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697234066; a=rsa-sha256; cv=none; b=cPxCw39INk0ivwTSPOGXCjyqOy9nsWVRUS/7DnfFNU8LgSSKMT4opQueeyCiKId79rqhUJ FL1b7MGUXTfij/okViun8qyDOEP46+3ILI1dKhNxRRDdRb3QSu1tpvwnqFHN3Drk37a6A3 IuMCXwoNvqtEz5fEKo/aUzmxDvDgKYMOt9n+Qu9x86sBDF4GVsX9ZSwYt0rrJr01cw4U9c 7jgo4yU14i6iWnzDaMw1AtTWeyYfx2oJIraT8qmg+/Fc5zErX+rTZJLw9AYbHH6nRXFM8C w0ahQlmaKkNL1/Qo/OaRTI/PKV0JLhNSSmoQYKZd05CtxXxWtlAMyYfFZql+EA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697234066; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OwPU1qBB2HEynLRUM2RHoJ137zkDqAW9tJYIdbgNTzw=; b=OvvCb+SmQbzZZfZuLdzBmwZN/+63tGUy3eicFmz4sJjobm3IXJowzfJi6WX2Nx9twwte83 30eqiEGjXlUzHKq//qASuI2RLtn1f1XjPpJkamooWk2jSOE60OQsuGVA5/wcdselmtRzHU 1k+ZWVcnmIlwMywWV2PMrAomfeMSAMM6Pi9u/YwQpnYqfPXn/jY9G1YS35jcTDEXMR5L2D rWT5zU/5xjQE6CpQ/ZbTdi+RVZUYPqNURs3cMXAJt5HYXMZcWhGZ5zgNtpop7I3A18cFI/ Aq18596gtJLt3YPq+lnxraRqDOmMTuPMA7cA9+AQPO8dz9K+Uh20IZ/nRLJX1A== 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 4S6gJd6xVqz140b; Fri, 13 Oct 2023 21:54:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DLsPUg030587; Fri, 13 Oct 2023 21:54:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DLsPp8030584; Fri, 13 Oct 2023 21:54:25 GMT (envelope-from git) Date: Fri, 13 Oct 2023 21:54:25 GMT Message-Id: <202310132154.39DLsPp8030584@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Michael Tuexen Subject: git: f28965bcaa1f - releng/14.0 - udp: fix sending of IPv4-mapped addresses List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tuexen X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: f28965bcaa1f7f1bd3d855f5c025daeb445d07a7 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by tuexen: URL: https://cgit.FreeBSD.org/src/commit/?id=f28965bcaa1f7f1bd3d855f5c025daeb445d07a7 commit f28965bcaa1f7f1bd3d855f5c025daeb445d07a7 Author: Michael Tuexen AuthorDate: 2023-10-07 13:56:00 +0000 Commit: Michael Tuexen CommitDate: 2023-10-13 21:29:47 +0000 udp: fix sending of IPv4-mapped addresses The inp_vflags field must be adjusted during the call of in_pcbbind_setup(). This is consistent with the other places in the code, but not elegant at all. PR: 274009 Approved by: re (gjb) Reported by: syzbot+81ccc423a2737ed031ac@syzkaller.appspotmail.com Reported by: syzbot+c8e3dac881bba85bc029@syzkaller.appspotmail.com Reviewed by: markj, rrs, rscheff Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D42031 (cherry picked from commit abca3ae7734f664ee9c5edc7a9d3a17e29180bdb) (cherry picked from commit 8209af15a6994d52276be05380e0c0b7ae117cea) --- sys/netinet/udp_usrreq.c | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/sys/netinet/udp_usrreq.c b/sys/netinet/udp_usrreq.c index 70d738bf2108..cbda7f536262 100644 --- a/sys/netinet/udp_usrreq.c +++ b/sys/netinet/udp_usrreq.c @@ -1050,7 +1050,7 @@ udp_send(struct socket *so, int flags, struct mbuf *m, struct sockaddr *addr, int cscov_partial = 0; int ipflags = 0; u_short fport, lport; - u_char tos; + u_char tos, vflagsav; uint8_t pr; uint16_t cscov = 0; uint32_t flowid = 0; @@ -1092,7 +1092,8 @@ udp_send(struct socket *so, int flags, struct mbuf *m, struct sockaddr *addr, * pcb hash. */ if (sin == NULL || - (inp->inp_laddr.s_addr == INADDR_ANY && inp->inp_lport == 0)) + (inp->inp_laddr.s_addr == INADDR_ANY && inp->inp_lport == 0) || + (flags & PRUS_IPV6) != 0) INP_WLOCK(inp); else INP_RLOCK(inp); @@ -1203,10 +1204,17 @@ udp_send(struct socket *so, int flags, struct mbuf *m, struct sockaddr *addr, error = EINVAL; goto release; } + if ((flags & PRUS_IPV6) != 0) { + vflagsav = inp->inp_vflag; + inp->inp_vflag |= INP_IPV4; + inp->inp_vflag &= ~INP_IPV6; + } INP_HASH_WLOCK(pcbinfo); error = in_pcbbind_setup(inp, &src, &laddr.s_addr, &lport, td->td_ucred); INP_HASH_WUNLOCK(pcbinfo); + if ((flags & PRUS_IPV6) != 0) + inp->inp_vflag = vflagsav; if (error) goto release; } @@ -1249,9 +1257,16 @@ udp_send(struct socket *so, int flags, struct mbuf *m, struct sockaddr *addr, inp->inp_lport == 0 || sin->sin_addr.s_addr == INADDR_ANY || sin->sin_addr.s_addr == INADDR_BROADCAST) { + if ((flags & PRUS_IPV6) != 0) { + vflagsav = inp->inp_vflag; + inp->inp_vflag |= INP_IPV4; + inp->inp_vflag &= ~INP_IPV6; + } INP_HASH_WLOCK(pcbinfo); error = in_pcbconnect_setup(inp, sin, &laddr.s_addr, &lport, &faddr.s_addr, &fport, td->td_ucred); + if ((flags & PRUS_IPV6) != 0) + inp->inp_vflag = vflagsav; if (error) { INP_HASH_WUNLOCK(pcbinfo); goto release; From nobody Fri Oct 13 23:14:24 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6j4w4pyvz4wwFf; Fri, 13 Oct 2023 23:14: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 4S6j4w3S2Rz4v1l; Fri, 13 Oct 2023 23:14:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697238864; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5u/EizM4qrw5j4OLPgScjy5GOvM9BxLxuK4rE9UNCqw=; b=LWwbaZyUPpeaEIzvo+o1xHFSSy8VAMohIpY6+r7obatyYGjX5N1i7peoTOLnP/SwOHFWaa Eh8nnhP3/UxJak65VgV4Fkc2HdyoVHbNCGDh/RV1RcAw3rM6BEUz04IEF7z3R8hh1CoTM7 KfPKO/GSerXCS+SmjI46FIf9rKl1m+gAddgRzafz2rPHOXlcBVNhqN4tJlAUMoOn+VzLKp DMjMISxiSrG+xSenhV70W9JhtQRnFY1dI5Xa0aakTfNbEFH5AmLQRdLxotZfkz44ki61Dx q+TE8QN1vCtSIMkaEraAYGXJihKC1+X12mk+XyL6JEvhVi3faYyIZXq5Z+bv1g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697238864; a=rsa-sha256; cv=none; b=VRwuTD4qWNdT21gj8ciMJkdH4TyFU1STk9unG+KTl471gVDzbGHdLRLSGmN5smIG83+V4/ vYYUwCqHdtrbocPYTgtkZKRNYpaCsd80nuIP6FYoSaekExM9d2DDIEvyC1m5CI+pg+jFHq NKIMsPyuFJERGgyrzZ2DUtU4WT93EhBSod/YzdEOQ/lfOD1LmtaJeFgfeVfTdicJz61J9P PKnLQjp5Ij/dzT2z5/EPbCzaqK67yTD+HegNEO/T0N8nmnC6YVcmsRiCkMRLY9zBu2a4SL 7f/vYbxonTh6oFnAEoWxCzu/N7dY052eQ2SpAW5o1BBzpbwHavdv4UpfqNYcNg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697238864; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5u/EizM4qrw5j4OLPgScjy5GOvM9BxLxuK4rE9UNCqw=; b=c7jTWRuNstvbjRYcFLLxOHqGNXJDHI29YMLQ0ThpHXTkVLhuS2Rw8ik8XMFVuOn7ckuUIN fmRZTRCfb8WrkS314UPDf3AqVlP2jkYHAdYw69Iw7YYwBadgLjEdW3Lc/wNt7opwySYuZe h9h3wBGTU75ueSQnjbgrTxtTVWMGtJfGFiPQ8IMj1qYcjFHHILUd6z1FJvL7aNrZBEmXa+ sGbgVeVmw8TFSUJvlEXOpbkyQKY2RFo8yR/mipaXFXt3PeWrKpIisj6yRWJkdQcmLi1vL9 3n6+YJJs6dyc+KY1M4vOwBZCLxBvSgvbKCmU/doVdkfEMMpqPTr9YNUtydXKLQ== 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 4S6j4w2VkMz16J7; Fri, 13 Oct 2023 23:14:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNEOpc064766; Fri, 13 Oct 2023 23:14:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNEOp4064763; Fri, 13 Oct 2023 23:14:24 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:14:24 GMT Message-Id: <202310132314.39DNEOp4064763@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: e8d85401cd8d - releng/14.0 - x86: Add defines for workaround bits in AMD's MSR "Decode Configuration" List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: e8d85401cd8dbc88a822d9c54086c7526fb620f7 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=e8d85401cd8dbc88a822d9c54086c7526fb620f7 commit e8d85401cd8dbc88a822d9c54086c7526fb620f7 Author: Olivier Certner AuthorDate: 2023-09-11 13:10:35 +0000 Commit: Ed Maste CommitDate: 2023-10-13 23:14:00 +0000 x86: Add defines for workaround bits in AMD's MSR "Decode Configuration" They are a bit more informative than raw hexadecimal values. While here, sort existing defines of bits for AMD MSRs to match the address order. Reviewed by: kib, emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D41816 (cherry picked from commit 125bbadf6084ac341673c9eb1979a740d3d5899a) (cherry picked from commit d0c0dcf9db7e558a58fbec2d49c293d118ea6979) Approved by: re (gjb) --- sys/amd64/amd64/initcpu.c | 5 +++-- sys/x86/include/specialreg.h | 9 +++++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/sys/amd64/amd64/initcpu.c b/sys/amd64/amd64/initcpu.c index 4debe89426df..a048c08fc9ae 100644 --- a/sys/amd64/amd64/initcpu.c +++ b/sys/amd64/amd64/initcpu.c @@ -101,7 +101,8 @@ init_amd(void) case 0x10: case 0x12: if ((cpu_feature2 & CPUID2_HV) == 0) - wrmsr(MSR_DE_CFG, rdmsr(MSR_DE_CFG) | 1); + wrmsr(MSR_DE_CFG, rdmsr(MSR_DE_CFG) | + DE_CFG_10H_12H_STACK_POINTER_JUMP_FIX_BIT); break; } @@ -151,7 +152,7 @@ init_amd(void) (cpu_feature2 & CPUID2_HV) == 0) { /* 1021 */ msr = rdmsr(MSR_DE_CFG); - msr |= 0x2000; + msr |= DE_CFG_ZEN_LOAD_STALE_DATA_FIX_BIT; wrmsr(MSR_DE_CFG, msr); /* 1033 */ diff --git a/sys/x86/include/specialreg.h b/sys/x86/include/specialreg.h index 548d6010e7b8..f45990a056c8 100644 --- a/sys/x86/include/specialreg.h +++ b/sys/x86/include/specialreg.h @@ -1162,11 +1162,16 @@ #define MSR_IC_CFG 0xc0011021 /* Instruction Cache Configuration */ #define MSR_DE_CFG 0xc0011029 /* Decode Configuration */ +/* MSR_AMDK8_IPM */ +#define AMDK8_SMIONCMPHALT (1ULL << 27) +#define AMDK8_C1EONCMPHALT (1ULL << 28) + /* MSR_VM_CR related */ #define VM_CR_SVMDIS 0x10 /* SVM: disabled by BIOS */ -#define AMDK8_SMIONCMPHALT (1ULL << 27) -#define AMDK8_C1EONCMPHALT (1ULL << 28) +/* MSR_DE_CFG */ +#define DE_CFG_10H_12H_STACK_POINTER_JUMP_FIX_BIT 0x1 +#define DE_CFG_ZEN_LOAD_STALE_DATA_FIX_BIT 0x2000 /* VIA ACE crypto featureset: for via_feature_rng */ #define VIA_HAS_RNG 1 /* cpu has RNG */ From nobody Fri Oct 13 23:14:25 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6j4x5wWLz4wwFk; Fri, 13 Oct 2023 23:14: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 4S6j4x4jyVz4tn6; Fri, 13 Oct 2023 23:14:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697238865; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Tp+namnhwezng/JraaAPMHM6slLg2OnhidYgfV7rCcU=; b=lTEyRxtTw0erD9m+dFRwAsPnkg7TS/mqrRtPhULdjOS/8JvCR2TvxUPngSdPZ9SF2ren/j 7Cm0vK3iHu6ZAAQZZkEd1ItBWJIL8OtHeLth1gBchDqOHRXLNxHVji4Y32UsnDQSVt2WHb WzB7DJzUl78xJplWB/tAuWJvU7LnOc3/8mZP30vLlmo1hlqAQgE06sec061YDFpfTwmBOj Gdzj/F4uOQ2HBXNIS0Rr7zgVBYaVvLRDgrLC2zev27KrVr51ZPgNj4TvxrJm1o/8yttyu/ ILMfPqRifyhRPDFkj1PJHTQQC9mjoKQkc8MjWHmmKDI/YmWCwyI/yJxeli9CfQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697238865; a=rsa-sha256; cv=none; b=xC6VtWxGjdw9delV7x/js9E7evGu5sA3niIRPECAEUO/CT1qSpbClortXUrXEI7C+ZlxiL YcR9HOmcAs2Fa3LVoAud9aqnDkxB84UWKYCdVOrvssusE3RvyWR02ejPjk1fu6aDSyzcAw tA/RridbZ4o2y+/hzlQAo306m5ljBZMzDK6YgjZln8XKf+dDhqsvvdA8omYIDlcFYkzutp bs4YqT9mjXWnnDnstuE1czCO9Idg9dPellbkUGgDjD8L4idsndnlFRyHtndsgPD3L8Fhjr K/fE9kMq8qPLKK5TcS5phtYt2TeQo5+3qKLSAOBRSuKS7swd90TmBSMj88x6qg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697238865; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Tp+namnhwezng/JraaAPMHM6slLg2OnhidYgfV7rCcU=; b=Jz7Kh8j3TtSf93FnxceEm5oSUKeTWRL0UF5snLAVyFbQ7/jmtBMhvECIa6aMJ/w6GfuRLz xAeDfI8ZRXbWX6ZW3AaOCXtpe0dEbvTDDV5oKLXFCg3h/y4famyBObVivN+uU89s2Z3148 zAfijqEI3XZRiU6fZ72e4SsTt9dH2bwEphZcLRpGB3AV6NdK6ml+AYP2GFjo+GuiEybWfh DW6JQpauN5x/R0+Qou0URdKSZx0O1W2fg8KYGEONjb8ims/qhrX8JJPw3Hua0nDHk0692w pycVdZ7TNBLk30M3mkxek9citRNOUiV40LaEG80xH6qPZC7pVH/7lMCAfPM71A== 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 4S6j4x3XfGz16J8; Fri, 13 Oct 2023 23:14:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNEPvo064814; Fri, 13 Oct 2023 23:14:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNEPlJ064811; Fri, 13 Oct 2023 23:14:25 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:14:25 GMT Message-Id: <202310132314.39DNEPlJ064811@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: aea76bab1416 - releng/14.0 - x86: AMD Zen2: Zenbleed chicken bit mitigation List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: aea76bab141693f53c33a535a6e85fa2b73dba29 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=aea76bab141693f53c33a535a6e85fa2b73dba29 commit aea76bab141693f53c33a535a6e85fa2b73dba29 Author: Olivier Certner AuthorDate: 2023-09-11 14:18:30 +0000 Commit: Ed Maste CommitDate: 2023-10-13 23:14:00 +0000 x86: AMD Zen2: Zenbleed chicken bit mitigation Applies only to bare-metal Zen2 processors. The system currently automatically applies it to all of them. Tunable/sysctl 'machdep.mitigations.zenbleed.enable' can be used to forcibly enable or disable the mitigation at boot or run-time. Possible values are: 0: Mitigation disabled 1: Mitigation enabled 2: Run the automatic determination. Currently, value 2 is the default and has identical effect as value 1. This might change in the future if we choose to take into account microcode revisions in the automatic determination process. The tunable/sysctl value is simply ignored on non-applicable CPU models, which is useful to apply the same configuration on a set of machines that do not all have Zen2 processors. Trying to set it to any integer value not listed above is silently equivalent to setting it to value 2 (automatic determination). The current mitigation state can be queried through sysctl 'machdep.mitigations.zenbleed.state', which returns "Not applicable", "Mitigation enabled" or "Mitigation disabled". Note that this state is not guaranteed to be accurate in case of intervening modifications of the corresponding chicken bit directly via cpuctl(4) (this includes the cpucontrol(8) utility). Resetting the desired policy through 'machdep.mitigations.zenbleed.enable' (possibly to its current value) will reset the hardware state and ensure that the reported state is again coherent with it. Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D41817 (cherry picked from commit ebaea1bcd2eb0aa90937637ed305184b6fedc69b) (cherry picked from commit 6c59ac8c7934064d63490b3f20fe92d0f87ef4b2) Approved by: re (gjb) --- sys/amd64/acpica/acpi_wakeup.c | 1 + sys/amd64/amd64/initcpu.c | 3 + sys/amd64/amd64/machdep.c | 4 ++ sys/dev/cpuctl/cpuctl.c | 1 + sys/x86/include/specialreg.h | 1 + sys/x86/include/x86_var.h | 3 + sys/x86/x86/cpu_machdep.c | 123 +++++++++++++++++++++++++++++++++++++++++ 7 files changed, 136 insertions(+) diff --git a/sys/amd64/acpica/acpi_wakeup.c b/sys/amd64/acpica/acpi_wakeup.c index 3b21935255cb..0f9f987b6590 100644 --- a/sys/amd64/acpica/acpi_wakeup.c +++ b/sys/amd64/acpica/acpi_wakeup.c @@ -306,6 +306,7 @@ acpi_wakeup_machdep(struct acpi_softc *sc, int state, int sleep_result, amd64_syscall_ret_flush_l1d_recalc(); hw_ssb_recalculate(true); x86_rngds_mitg_recalculate(true); + zenbleed_check_and_apply(true); AcpiSetFirmwareWakingVector(0, 0); } else { diff --git a/sys/amd64/amd64/initcpu.c b/sys/amd64/amd64/initcpu.c index a048c08fc9ae..c5266ffcc235 100644 --- a/sys/amd64/amd64/initcpu.c +++ b/sys/amd64/amd64/initcpu.c @@ -193,6 +193,9 @@ init_amd(void) hw_lower_amd64_sharedpage = 1; } } + + /* Zenbleed. See the comments in 'cpu_machdep.c'. */ + zenbleed_check_and_apply(false); } /* diff --git a/sys/amd64/amd64/machdep.c b/sys/amd64/amd64/machdep.c index f39678d1f4e5..4b81f5b9671e 100644 --- a/sys/amd64/amd64/machdep.c +++ b/sys/amd64/amd64/machdep.c @@ -1495,6 +1495,10 @@ hammer_time(u_int64_t modulep, u_int64_t physfree) TUNABLE_INT_FETCH("machdep.mitigations.rndgs.enable", &x86_rngds_mitg_enable); + TUNABLE_INT_FETCH("machdep.mitigations.zenbleed.enable", + &zenbleed_enable); + zenbleed_sanitize_enable(); + finishidentcpu(); /* Final stage of CPU initialization */ /* diff --git a/sys/dev/cpuctl/cpuctl.c b/sys/dev/cpuctl/cpuctl.c index 9c56db1ad19a..1fa655342121 100644 --- a/sys/dev/cpuctl/cpuctl.c +++ b/sys/dev/cpuctl/cpuctl.c @@ -546,6 +546,7 @@ cpuctl_do_eval_cpu_features(int cpu, struct thread *td) hw_mds_recalculate(); x86_taa_recalculate(); x86_rngds_mitg_recalculate(true); + zenbleed_check_and_apply(true); printcpuinfo(); return (0); } diff --git a/sys/x86/include/specialreg.h b/sys/x86/include/specialreg.h index f45990a056c8..4886430c84b6 100644 --- a/sys/x86/include/specialreg.h +++ b/sys/x86/include/specialreg.h @@ -1172,6 +1172,7 @@ /* MSR_DE_CFG */ #define DE_CFG_10H_12H_STACK_POINTER_JUMP_FIX_BIT 0x1 #define DE_CFG_ZEN_LOAD_STALE_DATA_FIX_BIT 0x2000 +#define DE_CFG_ZEN2_FP_BACKUP_FIX_BIT 0x200 /* VIA ACE crypto featureset: for via_feature_rng */ #define VIA_HAS_RNG 1 /* cpu has RNG */ diff --git a/sys/x86/include/x86_var.h b/sys/x86/include/x86_var.h index 1629236c5928..44314456d8bf 100644 --- a/sys/x86/include/x86_var.h +++ b/sys/x86/include/x86_var.h @@ -90,6 +90,7 @@ extern int hw_ssb_active; extern int x86_taa_enable; extern int cpu_flush_rsb_ctxsw; extern int x86_rngds_mitg_enable; +extern int zenbleed_enable; extern int cpu_amdc1e_bug; extern char bootmethod[16]; @@ -140,6 +141,8 @@ void hw_mds_recalculate(void); void hw_ssb_recalculate(bool all_cpus); void x86_taa_recalculate(void); void x86_rngds_mitg_recalculate(bool all_cpus); +void zenbleed_sanitize_enable(void); +void zenbleed_check_and_apply(bool all_cpus); void nmi_call_kdb(u_int cpu, u_int type, struct trapframe *frame); void nmi_call_kdb_smp(u_int type, struct trapframe *frame); void nmi_handle_intr(u_int type, struct trapframe *frame); diff --git a/sys/x86/x86/cpu_machdep.c b/sys/x86/x86/cpu_machdep.c index 38e053832608..6062b4e85e16 100644 --- a/sys/x86/x86/cpu_machdep.c +++ b/sys/x86/x86/cpu_machdep.c @@ -1477,6 +1477,129 @@ SYSCTL_PROC(_machdep_mitigations_rngds, OID_AUTO, state, sysctl_rngds_state_handler, "A", "MCU Optimization state"); + +/* + * Zenbleed. + * + * No corresponding errata is publicly listed. AMD has issued a security + * bulletin (AMD-SB-7008), entitled "Cross-Process Information Leak". This + * document lists (as of August 2023) platform firmware's availability target + * dates, with most being November/December 2023. It will then be up to + * motherboard manufacturers to produce corresponding BIOS updates, which will + * happen with an inevitable lag. Additionally, for a variety of reasons, + * operators might not be able to apply them everywhere due. On the side of + * standalone CPU microcodes, no plans for availability have been published so + * far. However, a developer appearing to be an AMD employee has hardcoded in + * Linux revision numbers of future microcodes that are presumed to fix the + * vulnerability. + * + * Given the stability issues encountered with early microcode releases for Rome + * (the only microcode publicly released so far) and the absence of official + * communication on standalone CPU microcodes, we have opted instead for + * matching by default all AMD Zen2 processors which, according to the + * vulnerability's discoverer, are all affected (see + * https://lock.cmpxchg8b.com/zenbleed.html). This policy, also adopted by + * OpenBSD, may be overriden using the tunable/sysctl + * 'machdep.mitigations.zenbleed.enable'. We might revise it later depending on + * official statements, microcode updates' public availability and community + * assessment that they actually fix the vulnerability without any instability + * side effects. + */ + +SYSCTL_NODE(_machdep_mitigations, OID_AUTO, zenbleed, + CTLFLAG_RW | CTLFLAG_MPSAFE, 0, + "Zenbleed OS-triggered prevention (via chicken bit)"); + +/* 2 is auto, see below. */ +int zenbleed_enable = 2; + +void +zenbleed_sanitize_enable(void) +{ + /* Default to auto (2). */ + if (zenbleed_enable < 0 || zenbleed_enable > 2) + zenbleed_enable = 2; +} + +static bool +zenbleed_chicken_bit_applicable(void) +{ + /* Concerns only bare-metal AMD Zen2 processors. */ + return (cpu_vendor_id == CPU_VENDOR_AMD && + CPUID_TO_FAMILY(cpu_id) == 0x17 && + CPUID_TO_MODEL(cpu_id) >= 0x30 && + vm_guest == VM_GUEST_NO); +} + +static bool +zenbleed_chicken_bit_should_enable(void) +{ + /* + * Obey tunable/sysctl. + * + * As explained above, currently, the automatic setting (2) and the "on" + * one (1) have the same effect. In the future, we might additionally + * check for specific microcode revisions as part of the automatic + * determination. + */ + return (zenbleed_enable != 0); +} + +void +zenbleed_check_and_apply(bool all_cpus) +{ + bool set; + + if (!zenbleed_chicken_bit_applicable()) + return; + + set = zenbleed_chicken_bit_should_enable(); + + x86_msr_op(MSR_DE_CFG, + (set ? MSR_OP_OR : MSR_OP_ANDNOT) | + (all_cpus ? MSR_OP_RENDEZVOUS_ALL : MSR_OP_LOCAL), + DE_CFG_ZEN2_FP_BACKUP_FIX_BIT, NULL); +} + +static int +sysctl_zenbleed_enable_handler(SYSCTL_HANDLER_ARGS) +{ + int error, val; + + val = zenbleed_enable; + error = sysctl_handle_int(oidp, &val, 0, req); + if (error != 0 || req->newptr == NULL) + return (error); + zenbleed_enable = val; + zenbleed_sanitize_enable(); + zenbleed_check_and_apply(true); + return (0); +} +SYSCTL_PROC(_machdep_mitigations_zenbleed, OID_AUTO, enable, CTLTYPE_INT | + CTLFLAG_RWTUN | CTLFLAG_NOFETCH | CTLFLAG_MPSAFE, NULL, 0, + sysctl_zenbleed_enable_handler, "I", + "Enable Zenbleed OS-triggered mitigation (chicken bit) " + "(0: Force disable, 1: Force enable, 2: Automatic determination)"); + +static int +sysctl_zenbleed_state_handler(SYSCTL_HANDLER_ARGS) +{ + const char *state; + + if (!zenbleed_chicken_bit_applicable()) + state = "Not applicable"; + else if (zenbleed_chicken_bit_should_enable()) + state = "Mitigation enabled"; + else + state = "Mitigation disabled"; + return (SYSCTL_OUT(req, state, strlen(state))); +} +SYSCTL_PROC(_machdep_mitigations_zenbleed, OID_AUTO, state, + CTLTYPE_STRING | CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, 0, + sysctl_zenbleed_state_handler, "A", + "Zenbleed OS-triggered mitigation (chicken bit) state"); + + /* * Enable and restore kernel text write permissions. * Callers must ensure that disable_wp()/restore_wp() are executed From nobody Fri Oct 13 23:15:54 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6j6f1bwCz4wvrp; Fri, 13 Oct 2023 23:15:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6j6f1LBlz4vNP; Fri, 13 Oct 2023 23:15:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697238954; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7ltFwPsAt08kfEu087dfvgzsK5BxpBc58+QtRAcOsnI=; b=XYjBKd+eFrBnc4GsVohPXXFj0tRSdrErUH+R6di3HSxNcuWXfxZc7GJFjRY+Ul4gJCmuJ6 F5ooXDblPm98Go0NBCFprTJK0k9/iJ58Rc8tN8dr7uIokW3RenSyyiK3GXfrd8TWgZql8J 8eK71Fg/kmO4783aIQH/s3fCLn9aFRUBgAWyDb3sKeCvvuLutn9vASsp6K6IEJwmwnPlut KjF/xBb2iL9xodtvi6y8/95Q8SAK+ZIJyxQ37vCIo/cAyiWj7fFcjZO/X4eZ70nUpB8fZm gai8Tf1jMDt9qyikkGDOnIz+zFzyXjc1QrFsLaf+M/Zl5kVOikpHGnf0PDJS5A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697238954; a=rsa-sha256; cv=none; b=OG9Y+uTmIeXpF2hDSboi7wMvcBvdPwDd4VU8KY4ICnXPgVj5RqiHf2cemLsP0AJ95jpAE1 JhUjxu/kNK1I2VR7l2FEnPdsz28BSG2/gtFB4IBjq6xjuiQhDrTW/L2IO846mUKmXOxSXE y421kp1V+jSYdvJFueDUggCye6bumaMYXnGbh3zn/tlQA7pTiEnpPV2i2kEgI3szlQ7iwQ ktxRz52c3o/+EmkW1+r80lHNqaaoNYhTUV0M3JLogdznhKXMltlcB0Tx6QW6UPf21uBffs F+BPg/sb+BYTvR+vdJhg64NTQaLAgEJUUcR30RIgv8D6WnEGSfk+wuH4MkbqAw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697238954; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7ltFwPsAt08kfEu087dfvgzsK5BxpBc58+QtRAcOsnI=; b=TJakB5g964QgQh5gBCRJs/zi7VvzSQV54M6XlLZWea3UdF2ZhZEDGTOsgWLXMpNwpsvweV 8JHybq4I7zZFaoBd9GfMnjIKqufHsQ8OyehNEaRCXQ5AM+whyqS+As+men/eEuIjgKxDLR ZIFgrEuzHxRlysKXkxIhnYtceHjY3WzuFWLao2W15X1D0qyY/wMq5ci83r21AaMHpVwSLR wJdTfZ9JGo6YHkpqRtXVGe4FauSbfwuHrwNOQzSMOh+cEs1G31tsQ24A330evihuABXNIp sJaaZpPsgHGISBu3F+B7lv2r1TnWJKzFrvYpqkL6YorQyNToVUK6lyReMDviDQ== 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 4S6j6f0Nk8z16p9; Fri, 13 Oct 2023 23:15:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNFs79065185; Fri, 13 Oct 2023 23:15:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNFsdG065182; Fri, 13 Oct 2023 23:15:54 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:15:54 GMT Message-Id: <202310132315.39DNFsdG065182@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 8977587e89cb - releng/14.0 - Add mitigations(7) describing our vulnerability mitigations List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 8977587e89cbf221b1819d0a873fe53311de2fbd Auto-Submitted: auto-generated The branch releng/14.0 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=8977587e89cbf221b1819d0a873fe53311de2fbd commit 8977587e89cbf221b1819d0a873fe53311de2fbd Author: Ed Maste AuthorDate: 2023-09-08 17:49:11 +0000 Commit: Ed Maste CommitDate: 2023-10-13 23:14:54 +0000 Add mitigations(7) describing our vulnerability mitigations This is an initial take on documenting vulnerability mitigations. Connect mitigations(7) to the build Also add some cross references. Reviewed by: gbe (earlier) Sponsored by: The FreeBSD Foundation Co-authored-by: Olivier Certner Differential Revision: https://reviews.freebsd.org/D41794 (cherry picked from commit b6a61ac2d475fba9c45f7f407549a522f60dea18) (cherry picked from commit 6e5dcc6113da649a79e5bc2c3ea9329bcd1d85d5) (cherry picked from commit a2b289608d6b54b6e1ce85096560807e551bb5ac) (cherry picked from commit 272bc4597d0b41eebdfa7c108778070665acb431) Approved by: re (gjb) --- share/man/man7/Makefile | 1 + share/man/man7/mitigations.7 | 367 ++++++++++++++++++++++++++++++++++++++ share/man/man7/security.7 | 3 +- usr.bin/elfctl/elfctl.1 | 4 +- usr.bin/proccontrol/proccontrol.1 | 5 +- 5 files changed, 376 insertions(+), 4 deletions(-) diff --git a/share/man/man7/Makefile b/share/man/man7/Makefile index 60a52ae5327c..4a1582e67595 100644 --- a/share/man/man7/Makefile +++ b/share/man/man7/Makefile @@ -19,6 +19,7 @@ MAN= arch.7 \ hostname.7 \ intro.7 \ maclabel.7 \ + mitigations.7 \ operator.7 \ orders.7 \ ports.7 \ diff --git a/share/man/man7/mitigations.7 b/share/man/man7/mitigations.7 new file mode 100644 index 000000000000..fed16d7b325f --- /dev/null +++ b/share/man/man7/mitigations.7 @@ -0,0 +1,367 @@ +.\" Copyright © 2023 The FreeBSD Foundation +.\" +.\" This documentation was written by Ed Maste , and +.\" Olivier Certner at Kumacom SAS, under +.\" sponsorship of the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.Dd October 6, 2023 +.Dt MITIGATIONS 7 +.Os +.Sh NAME +.Nm mitigations +.Nd FreeBSD Security Vulnerability Mitigations +.Sh SYNOPSIS +In +.Fx , +various security mitigations are employed to limit the impact of +vulnerabilities and protect the system from malicious attacks. +Some of these mitigations have run-time controls to enable them on a global +or per-process basis, some are optionally enabled or disabled at compile time, +and some are inherent to the implementation and have no controls. +.Pp +The following vulnerability mitigations are covered in this document: +.Bl -bullet -compact +.It +Address Space Layout Randomization (ASLR) +.It +Position Independent Executable (PIE) +.It +Write XOR Execute page protection policy +.It +.Dv PROT_MAX +.It +Relocation Read-Only (RELRO) +.It +Bind Now +.\".It +.\"Stack Smashing Protection (SSP) +.\".It +.\"Supervisor Mode Memory Protection +.It +Hardware Vulnerability Mitigation Controls +.It +Capsicum +.El +.Pp +Please note that the effectiveness and availability of these mitigations may +vary depending on the +.Fx +version and system configuration. +.Sh DESCRIPTION +Security vulnerability mitigations are techniques employed in +.Fx +to limit the potential impact of security vulnerabilities in software and +hardware. +It is essential to understand that mitigations do not directly address the +underlying security issues. +They are not a substitute for secure coding practices. +Mitigations serve as an additional layer of defense, helping to reduce the +likelihood of a successful exploitation of vulnerabilities by making it +more difficult for attackers to achieve their objectives. +.Pp +This manual page describes the security mitigations implemented in +.Fx +to enhance the overall security of the operating system. +Each mitigation is designed to protect against specific types of attacks +and vulnerabilities. +.\" +.Sh SOFTWARE VULNERABILITY MITIGATIONS +.Ss Address Space Layout Randomization (ASLR) +Address Space Layout Randomization (ASLR) is a security mitigation technique +that works by randomizing the memory addresses where system and application +code, data, and libraries are loaded, making it more challenging for attackers +to predict the memory layout and exploit vulnerabilities. +.Pp +ASLR introduces randomness into the memory layout during process execution, +reducing the predictability of memory addresses. +ASLR is intended to make exploitation more difficult in the event that an +attacker discovers a software vulnerability, such as a buffer overflow. +.Pp +ASLR can be enabled on both a global and per-process basis. +Global control is provided by a separate set of +.Xr sysctl 8 +knobs for 32- and 64-bit processes. +It can be or disabled on a per-process basis via +.Xr proccontrol 1 . +Note that an ASLR mode change takes effect upon address space change, +i.e., upon +.Xr execve 2 . +.Pp +Global controls for 32-bit processes: +.Bl -tag -width kern.elf32.aslr.pie_enable +.It Va kern.elf32.aslr.enable +Enable ASLR for 32-bit ELF binaries, other than Position Independent +Exectutable (PIE) binaries. +.It Va kern.elf32.aslr.pie_enable +Enable ASLR for 32-bit Position Independent Executable (PIE) ELF binaries. +.It Va kern.elf32.aslr.honor_sbrk +Reserve the legacy +.Xr sbrk 2 +region for compatibility with older binaries. +.It Va kern.elf32.aslr.stack +If ASLR is enabled for a process, also randomize the stack location. +.El +.Pp +Global controls for 64-bit processes: +.Bl -tag -width kern.elf64.aslr.pie_enable +.It Va kern.elf64.aslr.enable +Enable ASLR for 64-bit ELF binaries, other than Position Independent +Exectutable (PIE) binaries. +.It Va kern.elf64.aslr.pie_enable +Enable ASLR for 64-bit Position Independent Executable (PIE) ELF binaries. +.It Va kern.elf64.aslr.honor_sbrk +Reserve the legacy +.Xr sbrk 2 +region for compatibility with older binaries. +.It Va kern.elf64.aslr.stack +If ASLR is enabled for a process, also randomize the stack location. +.El +.Pp +To execute a command with ASLR enabled or disabled: +.Pp +proccontrol +.Fl m Ar aslr +.Op Fl s Ar enable | disable +.Ar command +.\" +.Ss Position Independent Executable (PIE) +PIE binaries are executable files that do not have a fixed load address. +They can be loaded at an arbitrary memory address by the +.Xr rtld +run-time linker. +With ASLR they are loaded at a random address on each execution. +.\" +.Ss Write XOR Execute page protection policy +Write XOR Execute (W^X) is a vulnerability mitigation strategy that strengthens +the security of the system by controlling memory access permissions. +.Pp +Under the W^X mitigation, memory pages may be writable (W) or executable (E), +but not both at the same time. +This means that code execution is prevented in areas of memory that are +designated as writable, and writing or modification of memory is restricted in +areas marked for execution. +Applications that perform Just In Time (JIT) compilation need to be adapted +to be compatible with W^X. +.Pp +There are separate +.Xr sysctl 8 +knobs to control W^X policy enforcement for 32- and 64-bit processes. +The W^X policy is enabled by setting the appropriate +.Dv allow_wx +sysctl to 0. +.Bl -tag -width kern.elf64.allow_wx +.It Va kern.elf32.allow_wx +Allow 32-bit processes to map pages simultaneously writable and executable. +.It Va kern.elf64.allow_wx +Allow 64-bit processes to map pages simultaneously writable and executable. +.El +.\" +.Ss PROT_MAX +.Dv PROT_MAX +is a FreeBSD-specific extension to +.Xr mmap 2 . +.Dv PROT_MAX +provides the ability to set the maximum protection of a region allocated by +.Xr mmap +and later altered by +.Xr mprotect . +For example, memory allocated originally with an mmap prot argument of +PROT_MAX(PROT_READ | PROT_WRITE) | PROT_READ +may be made writable by a future +.Xr mprotect +call, but may not be made executable. +.\" +.Ss Relocation Read-Only (RELRO) +Relocation Read-Only (RELRO) is a mitigation tool that makes certain portions +of a program's address space that contain ELF metadata read-only, after +relocation processing by +.Xr rtld 1 . +.Pp +When enabled in isolation the RELRO option provides +.Em partial RELRO +support. +In this case the Procedure Linkage Table (PLT)-related part of the +Global Offset Table (GOT) (in the section typically named .got.plt) remains +writable. +.Pp +RELRO is enabled by default. +The +.Xr src.conf 5 +build-time option +.Va WITHOUT_RELRO +may be used to disable it. +.Ss BIND_NOW +The +.Va WITH_BIND_NOW +.Xr src.conf 5 +build-time option causes binaries to be built with the +.Dv DF_BIND_NOW +flag set. +The run-time loader +.Xr rtld 1 +will then perform all relocation processing when the process starts, instead of +on demand (on the first access to each symbol). +.Pp +When enabled in combination with +.Dv RELRO +(which is enabled by default) this provides +.Em full RELRO . +The entire GOT (.got and .got.plt) are made read-only at program startup, +preventing attacks on the relocation table. +Note that this results in a nonstandard Application Binary Interface (ABI), +and it is possible that some applications may not function correctly. +.\" +.\".Ss Stack Smashing Protection (SSP) +.\" +.\".Ss Supervisor mode memory protection +.\" +.Ss Hardware vulnerability controls +See +.Xr security 7 +for more information. +.\" +.Ss Capsicum +Capsicum is a lightweight OS capability and sandbox framework. +See +.Xr capsicum 4 +for more information. +.Pp +.Sh HARDWARE VULNERABILITY MITIGATIONS +Recent years have seen an unending stream of new hardware vulnerabilities, +notably CPU ones generally caused by detectable microarchitectural side-effects +of speculative execution which leak private data from some other thread or +process or sometimes even internal CPU state that is normally inaccessible. +Hardware vendors usually address these vulnerabilities as they are discovered by +releasing microcode updates, which may then be bundled into platform firmware +updates +.Pq historically called BIOS updates for PCs . +.Pp +The best defense overall against hardware vulnerabilities is to timely apply +these updates when available and to disable the affected hardware's problematic +functionalities when possible (e.g., CPU Simultaneous Multi-Threading). +Software mitigations are only partial substitutes for these, but they can be +helpful on out-of-support hardware or as complements for just-discovered +vulnerabilities not yet addressed by vendors. +Some software mitigations depend on hardware capabilities provided by a +microcode update. +.Pp +FreeBSD's usual policy is to apply by default all OS-level mitigations that do +not require recompilation, except those the particular hardware it is running on +is known not to be vulnerable to +.Pq which sometimes requires firmware updates , +or those that are extremely detrimental to performance in proportion to the +protection they actually provide. +OS-level mitigations generally can have noticeable performance impacts on +specific workloads. +If your threat model allows it, you may want to try disabling some of them in +order to possibly get better performance. +Conversely, minimizing the risks may require you to explicitly enable the most +expensive ones. +The description of each vulnerability/mitigation indicates whether it is enabled +or disabled by default and under which conditions. +It also lists the knobs to tweak to force a particular status. +.Ss Zenbleed +The +.Dq Zenbleed +vulnerability exclusively affects AMD processors based on the Zen2 +microarchitecture. +In contrast with, e.g., Meltdown and the different variants of Spectre, which +leak data by leaving microarchitectural traces, Zenbleed is a genuine hardware +bug affecting the CPU's architectural state. +With particular sequences of instructions whose last ones are mispredicted by +speculative execution, it is possible to make appear in an XMM register data +previously put in some XMM register by some preceding or concurrent task +executing on the same physical core +.Po disabling Simultaneous Muti-Threading +.Pq SMT +is thus not a sufficient protection +.Pc . +.Pp +According to the vulnerability's discoverer, all Zen2-based processors are +affected +.Po see +.Lk https://lock.cmpxchg8b.com/zenbleed.html +.Pc . +As of August 2023, AMD has not publicly listed any corresponding errata but has +issued a security bulletin +.Pq AMD-SB-7008 +entitled +.Dq Cross-Process Information Leak +indicating that platform firmware fixing the vulnerability will be distributed +to manufacturers no sooner than the end of 2023, except for Rome processors for +which it is already available. +No standalone CPU microcodes have been announced so far. +The only readily-applicable fix mentioned by the discoverer is to set a bit of +an undocumented MSR, which reportedly completely stops XMM register leaks. +.Pp +.Fx +currently sets this bit by default on all Zen2 processors. +In the future, it might set it by default only on those Zen2 processors whose +microcode has not been updated to revisions fixing the vulnerability, once such +microcode updates have been actually released and community-tested. +To this mitigation are associated the following knobs: +.Bl -tag -width indent +.It Va machdep.mitigations.zenbleed.enable +A read-write integer tunable and sysctl indicating whether the mitigation should +be forcibly disabled (0), enabled (1) or if it is left to +.Fx +to selectively apply it (2). +Any other integer value is silently converted to and treated as value 2. +Note that this setting is silently ignored when running on non-Zen2 processors +to ease applying a common configuration to heterogeneous machines. +.It Va machdep.mitigations.zenbleed.state +A read-only string indicating the current mitigation state. +It can be either +.Dq Not applicable , +if the processor is not Zen2-based, +.Dq Mitigation enabled +or +.Dq Mitigation disabled . +This state is automatically updated each time the sysctl +.Va machdep.mitigations.zenbleed.enable +is written to. +Note that it can become inaccurate if the chicken bit is set or cleared +directly via +.Xr cpuctl 4 +.Po which includes the +.Xr cpucontrol 8 +utility +.Pc . +.El +.Pp +The performance impact and threat models related to these mitigations +should be considered when configuring and deploying them in a +.Fx +system. +.Pp +.Sh SEE ALSO +.Xr elfctl 1 , +.Xr proccontrol 1 , +.Xr rtld 1 , +.Xr mmap 2 , +.Xr src.conf 5 , +.Xr sysctl.conf 5 , +.Xr security 7 , +.Xr cpucontrol 8 , +.Xr sysctl 8 diff --git a/share/man/man7/security.7 b/share/man/man7/security.7 index 63b984ff66dd..ebe5e66e22af 100644 --- a/share/man/man7/security.7 +++ b/share/man/man7/security.7 @@ -26,7 +26,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd March 30, 2023 +.Dd October 5, 2023 .Dt SECURITY 7 .Os .Sh NAME @@ -1099,6 +1099,7 @@ Enables mapping of simultaneously writable and executable pages for .Xr xdm 1 Pq Pa ports/x11/xorg-clients , .Xr group 5 , .Xr ttys 5 , +.Xr mitigations 7 , .Xr accton 8 , .Xr init 8 , .Xr sshd 8 , diff --git a/usr.bin/elfctl/elfctl.1 b/usr.bin/elfctl/elfctl.1 index 7c565049c155..2dbe04ee0ed2 100644 --- a/usr.bin/elfctl/elfctl.1 +++ b/usr.bin/elfctl/elfctl.1 @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd February 4, 2022 +.Dd October 5, 2023 .Dt ELFCTL 1 .Os .Sh NAME @@ -95,6 +95,8 @@ Features may also be specified as a single combined value: .Bd -literal -offset -indent elfctl -e =0x5 file .Ed +.Sh SEE ALSO +.Xr mitigations 7 .Sh HISTORY .Nm first appeared in diff --git a/usr.bin/proccontrol/proccontrol.1 b/usr.bin/proccontrol/proccontrol.1 index 6bef355a54c9..5cb5d584f480 100644 --- a/usr.bin/proccontrol/proccontrol.1 +++ b/usr.bin/proccontrol/proccontrol.1 @@ -26,7 +26,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 2, 2021 +.Dd October 5, 2023 .Dt PROCCONTROL 1 .Os .Sh NAME @@ -126,7 +126,8 @@ process 1020, do .Sh SEE ALSO .Xr kill 2 , .Xr procctl 2 , -.Xr ptrace 2 +.Xr ptrace 2 , +.Xr mitigations 7 .Sh HISTORY The .Nm From nobody Fri Oct 13 23:15:55 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6j6g49t5z4wvrs; Fri, 13 Oct 2023 23:15:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6j6g3Bydz4vJJ; Fri, 13 Oct 2023 23:15:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697238955; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A1g6L4XmuYYl41ywaCm/M2uTCbnXHCvwc0RJwtaZ1a0=; b=xkf8MD1tn5Buz05wKXoWrNg2oWvv9bRfYg8kJQCJEyjBBS0hU95LZkcka272CUWupHoOoj Q0m8T1yz10IpAW2lWwdrqVqKT9ngfKiRxpl9TGfB0sP4olyJqY4+yaOcVo1UZfSO+pgqvD pv5msj5kjO1wmUkAjGhnZPPynJ4fTQB6urdsMIlIRKhL/PXbTAPlbcMLQ09B85BzruQp3i SAR25vEj7fUV0RznUYuY3+Oviz15VeZWjZB7NCge6QspBPPG364F1fWXZxLJJm6XYUwlPY DX9pbcRubdJPdR4USrN9+/kJ22g8BvZiXv2daBPVgtfL58KrZRspWnWd8fDsiA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697238955; a=rsa-sha256; cv=none; b=bic7usqoWy7zAsXSX5kTNKlgf/saXLiH8dSMZdSsdX5hw/QQn/oMA4vRJGiYXCC4ikdMoZ R4hNA7zDtum+ZtfIX9inKsqL8f6Q1tb57nXH5CDboMetw7KXUVGIvp/Y3sPJx90PoGl0PF 4a0bAySOqvuQP7Op5tKSC6y0fFG5tm6A4xWJYNxpH75o7rd9rIYtOa9//SaZUzZv+iFDyw xdQE7My2FHC/EsbCkXlhQ9YowCPOPJX7YTB4i7CmeAdzyPomU0OqRdu7k+DUU5koxIXqi0 yFMebQe6WnP3tYVXuySS0LKhxAtgWiwt5/EwzxtTAhjeQOb661QFstVTuxgj1g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697238955; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A1g6L4XmuYYl41ywaCm/M2uTCbnXHCvwc0RJwtaZ1a0=; b=QgV1MHWbIeLMQJjS7rOQcIijRKt2nGp9x/sl8J3BXTTCavQmWvI8pwYNd03M4PfqyQVLcR dTot1JFyn7jexNnT5LHJm4rg2lwaeH/nKjkNu3N2oovmXRRzj1Y9biXmPiL6/zwn1inDRD rFzXgT5uQcsoXGEA82koxahwvFDp2rJfGxnLCnF2Ie8zW6xryC5rf2J+lytw1rabOhUEu/ hHfpdNsY6ylCkJG5bhl5QYci8FCH0V4jHWCMzkephab47sHMf9C/snM/4dLw29k2IjipeF wG/JZyIJolhJHWOfzL3EoDzQQWq+LKuaAjYRK+NZjuEOUmbqRFbHTuZW7PByhA== 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 4S6j6g1wHJz16bC; Fri, 13 Oct 2023 23:15:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNFtF1065234; Fri, 13 Oct 2023 23:15:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNFtp5065231; Fri, 13 Oct 2023 23:15:55 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:15:55 GMT Message-Id: <202310132315.39DNFtp5065231@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 676824f5cdf9 - releng/14.0 - ssh: Update to OpenSSH 9.5p1 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 676824f5cdf9dfdbfca38c9cfff2398345db9211 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=676824f5cdf9dfdbfca38c9cfff2398345db9211 commit 676824f5cdf9dfdbfca38c9cfff2398345db9211 Author: Ed Maste AuthorDate: 2023-10-09 17:28:17 +0000 Commit: Ed Maste CommitDate: 2023-10-13 23:15:02 +0000 ssh: Update to OpenSSH 9.5p1 Excerpts from the release notes: Potentially incompatible changes -------------------------------- * ssh-keygen(1): generate Ed25519 keys by default. [NOTE: This change was already merged into FreeBSD.] * sshd(8): the Subsystem directive now accurately preserves quoting of subsystem commands and arguments. New features ------------ * ssh(1): add keystroke timing obfuscation to the client. * ssh(1), sshd(8): Introduce a transport-level ping facility. * sshd(8): allow override of Sybsystem directives in sshd Match blocks. Full release notes at https://www.openssh.com/txt/release-9.5 Relnotes: Yes Sponsored by: The FreeBSD Foundation (cherry picked from commit edf8578117e8844e02c0121147f45e4609b30680) (cherry picked from commit b24ca3caa7524e650550d8a2ee1637e6efcb87f1) Approved by: re (gjb) --- crypto/openssh/.github/ci-status.md | 4 + crypto/openssh/.github/configs | 11 + crypto/openssh/.github/setup_ci.sh | 8 + crypto/openssh/.github/workflows/c-cpp.yml | 1 + crypto/openssh/.github/workflows/selfhosted.yml | 3 + crypto/openssh/ChangeLog | 1611 +++++++---------------- crypto/openssh/PROTOCOL | 35 +- crypto/openssh/PROTOCOL.agent | 4 +- crypto/openssh/README | 2 +- crypto/openssh/auth2.c | 11 +- crypto/openssh/channels.c | 35 +- crypto/openssh/channels.h | 4 +- crypto/openssh/clientloop.c | 189 ++- crypto/openssh/configure.ac | 12 +- crypto/openssh/contrib/redhat/openssh.spec | 2 +- crypto/openssh/contrib/suse/openssh.spec | 2 +- crypto/openssh/kex.c | 55 +- crypto/openssh/kex.h | 3 +- crypto/openssh/misc.c | 29 +- crypto/openssh/misc.h | 3 +- crypto/openssh/monitor.c | 7 +- crypto/openssh/openbsd-compat/bsd-closefrom.c | 1 - crypto/openssh/packet.c | 35 +- crypto/openssh/packet.h | 3 +- crypto/openssh/readconf.c | 64 +- crypto/openssh/readconf.h | 8 +- crypto/openssh/regress/Makefile | 5 +- crypto/openssh/regress/match-subsystem.sh | 90 ++ crypto/openssh/regress/scp.sh | 24 +- crypto/openssh/regress/scp3.sh | 19 +- crypto/openssh/scp.c | 50 +- crypto/openssh/servconf.c | 107 +- crypto/openssh/servconf.h | 14 +- crypto/openssh/serverloop.c | 4 +- crypto/openssh/session.c | 15 +- crypto/openssh/sftp-client.c | 409 +++--- crypto/openssh/sftp-client.h | 76 +- crypto/openssh/sftp-glob.c | 28 +- crypto/openssh/sftp-usergroup.c | 8 +- crypto/openssh/sftp.c | 138 +- crypto/openssh/ssh-agent.1 | 8 +- crypto/openssh/ssh.c | 11 +- crypto/openssh/ssh2.h | 7 +- crypto/openssh/ssh_config.5 | 33 +- crypto/openssh/ssh_namespace.h | 3 + crypto/openssh/sshd.8 | 6 +- crypto/openssh/sshd.c | 2 +- crypto/openssh/sshd_config | 2 +- crypto/openssh/sshd_config.5 | 2 +- crypto/openssh/sshkey.c | 3 +- crypto/openssh/sshsig.c | 27 +- crypto/openssh/version.h | 6 +- 52 files changed, 1639 insertions(+), 1600 deletions(-) diff --git a/crypto/openssh/.github/ci-status.md b/crypto/openssh/.github/ci-status.md index f3e088fd6043..8d4cea10dba4 100644 --- a/crypto/openssh/.github/ci-status.md +++ b/crypto/openssh/.github/ci-status.md @@ -6,6 +6,10 @@ master : [![Fuzzing Status](https://oss-fuzz-build-logs.storage.googleapis.com/badges/openssh.svg)](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:openssh) [![Coverity Status](https://scan.coverity.com/projects/21341/badge.svg)](https://scan.coverity.com/projects/openssh-portable) +9.4 : +[![C/C++ CI](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml/badge.svg?branch=V_9_4)](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml?query=branch:V_9_4) +[![C/C++ CI self-hosted](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml/badge.svg?branch=V_9_4)](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_9_4) + 9.3 : [![C/C++ CI](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml/badge.svg?branch=V_9_3)](https://github.com/openssh/openssh-portable/actions/workflows/c-cpp.yml?query=branch:V_9_3) [![C/C++ CI self-hosted](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml/badge.svg?branch=V_9_3)](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_9_3) diff --git a/crypto/openssh/.github/configs b/crypto/openssh/.github/configs index e054eb3196b5..c7d6a55ab962 100755 --- a/crypto/openssh/.github/configs +++ b/crypto/openssh/.github/configs @@ -30,6 +30,13 @@ case "$config" in default|sol64) ;; c89) + # If we don't have LLONG_MAX, configure will figure out that it can + # get it by setting -std=gnu99, at which point we won't be testing + # C89 any more. To avoid this, feed it in via CFLAGS. + llong_max=`gcc -E -dM - +Date: Wed Oct 4 15:34:10 2023 +1100 + + crank version numbers + +commit f65f187b105d9b5c12fd750a211397d08c17c6d4 +Author: djm@openbsd.org +Date: Wed Oct 4 04:04:09 2023 +0000 + + upstream: openssh-9.5 + + OpenBSD-Commit-ID: 5e0af680480bd3b6f5560cf840ad032d48fd6b16 + +commit ffe27e54a4bb18d5d3bbd3f4cc93a41b8d94dfd2 +Author: djm@openbsd.org +Date: Wed Oct 4 04:03:50 2023 +0000 + + upstream: add some cautionary text about % token expansion and + + shell metacharacters; based on report from vinci AT protonmail.ch + + OpenBSD-Commit-ID: aa1450a54fcee2f153ef70368d90edb1e7019113 + +commit 60ec3d54fd1ebfe2dda75893fa1e870b8dffbb0d +Author: djm@openbsd.org +Date: Tue Oct 3 23:56:10 2023 +0000 + + upstream: fix link to agent draft; spotted by Jann Horn + + OpenBSD-Commit-ID: ff5bda21a83ec013db683e282256a85201d2dc4b + +commit 12e2d4b13f6f63ce2de13cbfcc9e4d0d4b4ab231 +Author: Damien Miller +Date: Wed Oct 4 10:54:04 2023 +1100 + + use portable provider allowlist path in manpage + + spotted by Jann Horn + +commit 6c2c6ffde75df95fd838039850d3dd3d84956d87 +Author: deraadt@openbsd.org +Date: Tue Sep 19 20:37:07 2023 +0000 + + upstream: typo; from Jim Spath + + OpenBSD-Commit-ID: 2f5fba917b5d4fcf93d9e0b0756c7f63189e228e + +commit b6b49130a0089b297245ee39e769231d7c763014 +Author: djm@openbsd.org +Date: Sun Sep 10 23:12:32 2023 +0000 + + upstream: rename remote_glob() -> sftp_glob() to match other API + + OpenBSD-Commit-ID: d9dfb3708d824ec02970a84d96cf5937e0887229 + +commit 21b79af6c8d2357c822c84cef3fbdb8001ed263b +Author: djm@openbsd.org +Date: Sun Sep 10 03:51:55 2023 +0000 + + upstream: typo in comment + + OpenBSD-Commit-ID: 69285e0ce962a7c6b0ab5f17a293c60a0a360a18 + +commit 41232d25532b4d2ef6c5db62efc0cf50a79d26ca +Author: Darren Tucker +Date: Sun Sep 10 15:45:38 2023 +1000 + + Use zero-call-used-regs=used with Apple compilers. + + Apple's versions of clang have version numbers that do not match the + corresponding upstream clang versions. Unfortunately, they do still + have the clang-15 zero-call-used-regs=all bug, so for now use the value + that doesn't result in segfaults. We could allowlist future versions + that are known to work. bz#3584 (and probably also our github CI + failures). + +commit 90ccc5918ea505bf156c31148b6b59a1bf5d6dc6 +Author: djm@openbsd.org +Date: Sun Sep 10 03:25:53 2023 +0000 + + upstream: randomise keystroke obfuscation intervals and average + + interval rate. ok dtucker@ + + OpenBSD-Commit-ID: 05f61d051ab418fcfc4857ff306e420037502382 + +commit bd1b9e52f5fa94d87223c90905c5fdc1a7c32aa6 +Author: djm@openbsd.org +Date: Fri Sep 8 06:34:24 2023 +0000 + + upstream: fix sizeof(*ptr) instead sizeof(ptr) in realloc (pointer here + + is char**, so harmless); spotted in CID 416964 + + OpenBSD-Commit-ID: c61caa4a5a667ee20bb1042098861e6c72c69002 + +commit c4f966482983e18601eec70a1563115de836616f +Author: djm@openbsd.org +Date: Fri Sep 8 06:10:57 2023 +0000 + + upstream: regress test recursive remote-remote directories copies where + + the directory contains a symlink to another directory. + + also remove errant `set -x` that snuck in at some point + + OpenBSD-Regress-ID: 1c94a48bdbd633ef2285954ee257725cd7bc456f + +commit 5e1dfe5014ebc194641678303e22ab3bba15f4e5 +Author: djm@openbsd.org +Date: Fri Sep 8 06:10:02 2023 +0000 + + upstream: fix recursive remote-remote copies of directories that + + contain symlinks to other directories (similar to bz3611) + + OpenBSD-Commit-ID: 7e19d2ae09b4f941bf8eecc3955c9120171da37f + +commit 7c0ce2bf98b303b6ad91493ee3247d96c18ba1f6 +Author: djm@openbsd.org +Date: Fri Sep 8 05:50:57 2023 +0000 + + upstream: regress test for recursive copies of directories containing + + symlinks to other directories. bz3611, ok dtucker@ + + OpenBSD-Regress-ID: eaa4c29cc5cddff4e72a16bcce14aeb1ecfc94b9 + +commit 2de990142a83bf60ef694378b8598706bc654b08 +Author: djm@openbsd.org +Date: Fri Sep 8 05:56:13 2023 +0000 + + upstream: the sftp code was one of my first contributions to + + OpenSSH and it shows - the function names are terrible. + + Rename do_blah() to sftp_blah() to make them less so. + + Completely mechanical except for sftp_stat() and sftp_lstat() which + change from returning a pointer to a static variable (error-prone) to + taking a pointer to a caller-provided receiver. + + OpenBSD-Commit-ID: eb54d6a72d0bbba4d623e2175cf5cc4c75dc2ba4 + +commit 249d8bd0472b53e3a2a0e138b4c030a31e83346a +Author: djm@openbsd.org +Date: Fri Sep 8 05:50:12 2023 +0000 + + upstream: fix scp in SFTP mode recursive upload and download of + + directories that contain symlinks to other directories. In scp mode, the + links would be followed, but in SFTP mode they were not. bz3611, ok dtucker@ + + OpenBSD-Commit-ID: 9760fda668eaa94a992250d7670dfbc62a45197c + +commit 0e1f4401c466fa4fdaea81b6dadc8dd1fc4cf0af +Author: djm@openbsd.org +Date: Wed Sep 6 23:36:09 2023 +0000 + + upstream: regression test for override of subsystem in match blocks + + OpenBSD-Regress-ID: 5f8135da3bfda71067084c048d717b0e8793e87c + +commit 8a1450c62035e834d8a79a5d0d1c904236f9dcfe +Author: djm@openbsd.org +Date: Wed Sep 6 23:35:35 2023 +0000 + + upstream: allow override of Sybsystem directives in sshd Match + + blocks + + OpenBSD-Commit-ID: 3911d18a826a2d2fe7e4519075cf3e57af439722 + +commit 6e52826e2a74d077147a82ead8d4fbd5b54f4e3b +Author: djm@openbsd.org +Date: Wed Sep 6 23:26:37 2023 +0000 + + upstream: allocate the subsystems array as necessary and remove the + + fixed limit of subsystems. Saves a few kb of memory in the server and makes + it more like the other options. + + OpenBSD-Commit-ID: e683dfca6bdcbc3cc339bb6c6517c0c4736a547f + +commit e19069c9fac4c111d6496b19c7f7db43b4f07b4f +Author: djm@openbsd.org +Date: Wed Sep 6 23:23:53 2023 +0000 + + upstream: preserve quoting of Subsystem commands and arguments. + + This may change behaviour of exotic configurations, but the most common + subsystem configuration (sftp-server) is unlikely to be affected. + + OpenBSD-Commit-ID: 8ffa296aeca981de5b0945242ce75aa6dee479bf + +commit 52dfe3c72d98503d8b7c6f64fc7e19d685636c0b +Author: djm@openbsd.org +Date: Wed Sep 6 23:21:36 2023 +0000 + + upstream: downgrade duplicate Subsystem directives from being a + + fatal error to being a debug message to match behaviour with just about all + other directives. + + OpenBSD-Commit-ID: fc90ed2cc0c18d4eb8e33d2c5e98d25f282588ce + +commit 1ee0a16e07b6f0847ff463d7b5221c4bf1876e25 +Author: djm@openbsd.org +Date: Wed Sep 6 23:18:15 2023 +0000 + + upstream: handle cr+lf (instead of just cr) in sshsig signature + + files + + OpenBSD-Commit-ID: 647460a212b916540016d066568816507375fd7f + +commit e1c284d60a928bcdd60bc575c6f9604663502770 +Author: job@openbsd.org +Date: Mon Sep 4 10:29:58 2023 +0000 + + upstream: Generate Ed25519 keys when invoked without arguments + + Ed25519 public keys are very convenient due to their small size. + OpenSSH has supported Ed25519 since version 6.5 (January 2014). + + OK djm@ markus@ sthen@ deraadt@ + + OpenBSD-Commit-ID: f498beaad19c8cdcc357381a60df4a9c69858b3f + +commit 694150ad92765574ff82a18f4e86322bd3231e68 +Author: djm@openbsd.org +Date: Mon Sep 4 00:08:14 2023 +0000 + + upstream: trigger keystroke timing obfucation only if the channels + + layer enqueud some data in the last poll() cycle; this avoids triggering the + obfuscatior for non-channels data like ClientAlive probes and also fixes a + related problem were the obfucations would be triggered on fully quiescent + connections. + + Based on / tested by naddy@ + + OpenBSD-Commit-ID: d98f32dc62d7663ff4660e4556e184032a0db123 + +commit b5fd97896b59a3a46245cf438cc8b16c795d9f74 +Author: djm@openbsd.org +Date: Mon Sep 4 00:04:02 2023 +0000 + + upstream: avoid bogus "obfuscate_keystroke_timing: stopping ..." + + debug messages when keystroke timing obfuscation was never started; spotted + by naddy@ + + OpenBSD-Commit-ID: 5c270d35f7d2974db5c1646e9c64188f9393be31 + +commit ccf7d913db34e49b7a6db1b8331bd402004c840d +Author: djm@openbsd.org +Date: Mon Sep 4 00:01:46 2023 +0000 + + upstream: make channel_output_poll() return a flag indicating + + whether channel data was enqueued. Will be used to improve keystroke timing + obfuscation. Problem spotted by / tested by naddy@ + + OpenBSD-Commit-ID: f9776c7b0065ba7c3bbe50431fd3b629f44314d0 + +commit 43254b326ac6e2131dbd750f9464dc62c14bd5a7 +Author: djm@openbsd.org +Date: Sun Sep 3 23:59:32 2023 +0000 + + upstream: set interactive mode for ControlPersist sessions if they + + originally requested a tty; enables keystroke timing obfuscation for most + ControlPersist sessions. Spotted by naddy@ + + OpenBSD-Commit-ID: 72783a26254202e2f3f41a2818a19956fe49a772 + +commit ff3eda68ceb2e2bb8f48e3faceb96076c3e85c20 +Author: Darren Tucker +Date: Thu Aug 31 23:02:35 2023 +1000 + + Set LLONG_MAX for C89 test. + + If we don't have LLONG_MAX, configure will figure out that it can get it + by setting -std=gnu99, at which point we won't be testing C89 any more. + To avoid this, feed it in via CFLAGS. + +commit f98031773db361424d59e3301aa92aacf423d920 +Author: djm@openbsd.org +Date: Tue Aug 29 02:50:10 2023 +0000 + + upstream: make PerSourceMaxStartups first-match-wins; ok dtucker@ + + OpenBSD-Commit-ID: dac0c24cb709e3c595b8b4f422a0355dc5a3b4e7 + +commit cfa66857db90cd908de131e0041a50ffc17c7df8 +Author: djm@openbsd.org +Date: Mon Aug 28 09:52:09 2023 +0000 + + upstream: descriptive text shouldn't be under .Cm + + OpenBSD-Commit-ID: b1afaeb456a52bc8a58f4f9f8b2f9fa8f6bf651b + +commit 01dbf3d46651b7d6ddf5e45d233839bbfffaeaec +Author: djm@openbsd.org +Date: Mon Aug 28 09:48:11 2023 +0000 + + upstream: limit artificial login delay to a reasonable maximum (5s) + + and don't delay at all for the "none" authentication mechanism. Patch by + Dmitry Belyavskiy in bz3602 with polish/ok dtucker@ + + OpenBSD-Commit-ID: 85b364676dd84cf1de0e98fc2fbdcb1a844ce515 + +commit 528da5b9d7c5da01ed7a73ff21c722e1b5326006 +Author: jmc@openbsd.org +Date: Mon Aug 28 05:32:28 2023 +0000 + + upstream: add spacing for punctuation when macro args; + + OpenBSD-Commit-ID: e80343c16ce0420b2aec98701527cf90371bd0db + +commit 3867361ca691d0956ef7d5fb8181cf554a91d84a +Author: djm@openbsd.org +Date: Mon Aug 28 04:06:52 2023 +0000 + + upstream: explicit long long type in timing calculations (doesn't + + matter, since the range is pre-clamped) + + OpenBSD-Commit-ID: f786ed902d04a5b8ecc581d068fea1a79aa772de + +commit 7603ba71264e7fa938325c37eca993e2fa61272f +Author: djm@openbsd.org +Date: Mon Aug 28 03:31:16 2023 +0000 + + upstream: Add keystroke timing obfuscation to the client. + + This attempts to hide inter-keystroke timings by sending interactive + traffic at fixed intervals (default: every 20ms) when there is only a + small amount of data being sent. It also sends fake "chaff" keystrokes + for a random interval after the last real keystroke. These are + controlled by a new ssh_config ObscureKeystrokeTiming keyword/ + + feedback/ok markus@ + + OpenBSD-Commit-ID: 02231ddd4f442212820976068c34a36e3c1b15be + +commit dce6d80d2ed3cad2c516082682d5f6ca877ef714 +Author: djm@openbsd.org +Date: Mon Aug 28 03:28:43 2023 +0000 + + upstream: Introduce a transport-level ping facility + + This adds a pair of SSH transport protocol messages SSH2_MSG_PING/PONG + to implement a ping capability. These messages use numbers in the "local + extensions" number space and are advertised using a "ping@openssh.com" + ext-info message with a string version number of "0". + + ok markus@ + + OpenBSD-Commit-ID: b6b3c4cb2084c62f85a8dc67cf74954015eb547f + +commit d2d247938b38b928f8a6e1a47a330c5584d3a358 +Author: tobhe@openbsd.org +Date: Mon Aug 21 21:16:18 2023 +0000 + + upstream: Log errors in kex_exchange_identification() with level + + verbose instead of error to reduce preauth log spam. All of those get logged + with a more generic error message by sshpkt_fatal(). + + feedback from sthen@ + ok djm@ + + OpenBSD-Commit-ID: bd47dab4695b134a44c379f0e9a39eed33047809 + +commit 9d7193a8359639801193ad661a59d1ae4dc3d302 +Author: djm@openbsd.org +Date: Mon Aug 21 04:59:54 2023 +0000 + + upstream: correct math for ClientAliveInterval that caused the + + probes to be sent less frequently than configured; from Dawid Majchrzak + + OpenBSD-Commit-ID: 641153e7c05117436ddfc58267aa267ca8b80038 + +commit 3c6ab63b383b0b7630da175941e01de9db32a256 +Author: Darren Tucker +Date: Fri Aug 25 14:48:02 2023 +1000 + + Include Portable version in sshd version string. + + bz#3608, ok djm@ + +commit 17fa6cd10a26e193bb6f65d21264d2fe553bcd87 +Author: Darren Tucker +Date: Mon Aug 21 19:47:58 2023 +1000 + + obsd-arm64 host is real hardware... + + so put in the correct config location. + +commit 598ca75c85acaaacee5ef954251e489cc20d7be9 +Author: Darren Tucker +Date: Mon Aug 21 18:38:36 2023 +1000 + + Add OpenBSD ARM64 test host. + +commit 1acac79bfbe207e8db639e8043524962037c8feb +Author: Darren Tucker +Date: Mon Aug 21 18:05:26 2023 +1000 + + Add test for zlib development branch. + +commit 84efebf352fc700e9040c8065707c63caedd36a3 +Author: djm@openbsd.org +Date: Mon Aug 21 04:36:46 2023 +0000 + + upstream: want stdlib.h for free(3) + + OpenBSD-Commit-ID: 743af3c6e3ce5e6cecd051668f0327a01f44af29 + +commit cb4ed12ffc332d1f72d054ed92655b5f1c38f621 +Author: Darren Tucker +Date: Sat Aug 19 07:39:08 2023 +1000 + + Fix zlib version check for 1.3 and future version. + + bz#3604. + +commit 25b75e21f16bccdaa472ea1889b293c9bd51a87b +Author: Darren Tucker +Date: Mon Aug 14 11:10:08 2023 +1000 + + Add 9.4 branch to CI status page. + +commit 803e22eabd3ba75485eedd8b7b44d6ace79f2052 +Author: djm@openbsd.org +Date: Fri Aug 18 01:37:41 2023 +0000 + + upstream: fix regression in OpenSSH 9.4 (mux.c r1.99) that caused + + multiplexed sessions to ignore SIGINT under some circumstances. Reported by / + feedback naddy@, ok dtucker@ + + OpenBSD-Commit-ID: 4d5c6c894664f50149153fd4764f21f43e7d7e5a + +commit e706bca324a70f68dadfd0ec69edfdd486eed23a +Author: djm@openbsd.org +Date: Wed Aug 16 16:14:11 2023 +0000 + + upstream: defence-in-depth MaxAuthTries check in monitor; ok markus + + OpenBSD-Commit-ID: 65a4225dc708e2dae71315adf93677edace46c21 + +commit d1ab7eb90474df656d5e9935bae6df0bd000d343 +Author: djm@openbsd.org +Date: Mon Aug 14 03:37:00 2023 +0000 + + upstream: add message number of SSH2_MSG_NEWCOMPRESS defined in RFC8308 + + OpenBSD-Commit-ID: 6c984171c96ed67effd7b5092f3d3975d55d6028 + +commit fa8da52934cb7dff6f660a143276bdb28bb9bbe1 +Author: Darren Tucker +Date: Sun Aug 13 15:01:27 2023 +1000 + + Add obsd72 and obsd73 test targets. + +commit f9f18006678d2eac8b0c5a5dddf17ab7c50d1e9f +Author: djm@openbsd.org +Date: Thu Aug 10 23:05:48 2023 +0000 + + upstream: better debug logging of sessions' exit status + + OpenBSD-Commit-ID: 82237567fcd4098797cbdd17efa6ade08e1a36b0 + +commit a8c57bcb077f0cfdffcf9f23866bf73bb93e185c +Author: naddy@openbsd.org +Date: Thu Aug 10 14:37:32 2023 +0000 + + upstream: drop a wayward comma, ok jmc@ + + OpenBSD-Commit-ID: 5c11fbb9592a29b37bbf36f66df50db9d38182c6 + +commit e962f9b318a238db1becc53c2bf79dd3a49095b4 Author: Damien Miller Date: Thu Aug 10 11:10:22 2023 +1000 depend -commit 41bfb63f5101fbacde9d8d2ada863f9ee16df194 +commit 0fcb60bf83130dfa428bc4422b3a3ac20fb528af Author: Damien Miller Date: Thu Aug 10 11:05:42 2023 +1000 update versions in RPM specs -commit e598b92b1eecedac21667edf1fe92078eaf8f2b1 +commit d0cee4298491314f09afa1c4383a66d913150b26 Author: Damien Miller Date: Thu Aug 10 11:05:14 2023 +1000 update version in README -commit e797e5ffa74377c8696e3b0559a258d836479239 +commit 78b4dc6684f4d35943b46b24ee645edfdb9974f5 Author: djm@openbsd.org Date: Thu Aug 10 01:01:07 2023 +0000 @@ -24,6 +511,12 @@ Date: Thu Aug 10 01:01:07 2023 +0000 OpenBSD-Commit-ID: 71fc1e01a4c4ea061b252bd399cda7be757e6e35 +commit 58ca4f0aa8c4306ac0a629c9a85fb1efaf4ff092 +Author: Darren Tucker +Date: Thu Aug 10 11:30:24 2023 +1000 + + Only include unistd.h once. + commit 3961ed02dc578517a9d2535128cff5c3a5460d28 Author: Damien Miller Date: Thu Aug 10 09:08:49 2023 +1000 @@ -9062,1113 +9555,3 @@ Date: Wed Oct 6 13:16:21 2021 +1100 fix broken OPENSSL_HAS_ECC test spotted by dtucker - -commit 16a25414f303cd6790eb967aeb962040e32c9c7a -Author: Damien Miller -Date: Fri Oct 1 22:40:06 2021 +1000 - - make sk-dummy.so work without libcrypto installed - -commit dee22129bbc61e25b1003adfa2bc584c5406ef2d -Author: Damien Miller -Date: Fri Oct 1 16:35:49 2021 +1000 - - make OPENSSL_HAS_ECC checks more thorough - - ok dtucker - -commit 872595572b6c9a584ed754165e8b7c4c9e7e1d61 -Author: Damien Miller -Date: Fri Oct 1 16:35:05 2021 +1000 - - fix FIDO key support for !OPENSSL_HAS_ECC case - - ok dtucker - -commit 489741dc68366940d369ac670b210b4834a6c272 -Author: Damien Miller -Date: Fri Oct 1 14:51:37 2021 +1000 - - enable security key support for --without-openssl - -commit c978565c8589acfe4ea37ab5099d39c84158c713 -Author: Damien Miller -Date: Fri Oct 1 13:27:50 2021 +1000 - - need stdlib.h for free(3) - -commit 76a398edfb51951b2d65d522d7b02c72304db300 -Author: dtucker@openbsd.org -Date: Thu Sep 30 05:26:26 2021 +0000 - - upstream: Fix up whitespace left by previous - - change removing privsep. No other changes. - - OpenBSD-Regress-ID: 87adec225d8afaee4d6a91b2b71203f52bf14b15 - -commit ddcb53b7a7b29be65d57562302b2d5f41733e8dd -Author: dtucker@openbsd.org -Date: Thu Sep 30 05:20:08 2021 +0000 - - upstream: Remove references to privsep. - - This removes several do..while loops but does not change the - indentation of the now-shallower loops, which will be done in a separate - whitespace-only commit to keep changes of style and substance separate. - - OpenBSD-Regress-ID: 4bed1a0249df7b4a87c965066ce689e79472a8f7 - -commit ece2fbe486164860de8df3f8b943cccca3085eff -Author: dtucker@openbsd.org -Date: Thu Sep 30 04:22:50 2021 +0000 - - upstream: Use "skip" instead of "fatal" - - if SUDO isn't set for the *-command tests. This means running "make tests" - without SUDO set will perform all of the tests that it can instead of - failing on the ones it cannot run. - - OpenBSD-Regress-ID: bd4dbbb02f34b2e8c890558ad4a696248def763a - -commit bb754b470c360e787a99fb4e88e2668198e97b41 -Author: djm@openbsd.org -Date: Fri Oct 1 04:50:36 2021 +0000 - - upstream: unbreak FIDO sk-ed25519 key enrollment for OPENSSL=no builds; - - ok dtucker@ - - OpenBSD-Commit-ID: 6323a5241728626cbb2bf0452cf6a5bcbd7ff709 - -commit 207648d7a6415dc915260ca75850404dbf9f0a0b -Author: Darren Tucker -Date: Wed Sep 29 20:03:58 2021 +1000 - - Include stdlib.h for arc4random_uniform prototype. - -commit 696aadc854582c164d5fc04933d2f3e212dc0e06 -Author: Darren Tucker -Date: Wed Sep 29 20:00:30 2021 +1000 - - Look for clang after cc and gcc. - -commit a3c6375555026d85dbf811fab566b9f76f196144 -Author: Darren Tucker -Date: Wed Sep 29 19:30:59 2021 +1000 - - Use backticks instead of $(..) for portability. - - Older shells (eg /bin/sh on Solaris 10) don't support $() syntax. - -commit 958aaa0387133d51f84fe9c8f30bca03025f2867 -Author: Darren Tucker -Date: Wed Sep 29 18:53:32 2021 +1000 - - Skip file-based tests by default on Mac OS. - - The file-based tests need OpenSSL so skip them. - -commit 55c8bdf6e9afb0f9fa8e4f10c25c7f0081b48fd0 -Author: Darren Tucker -Date: Wed Sep 29 18:42:47 2021 +1000 - - Build without OpenSSL on Mac OS. - - Modern versions don't ship enough libcrypto to build against. - -commit c9172193ea975415facf0afb356d87df21535f88 -Author: Darren Tucker -Date: Wed Sep 29 18:33:38 2021 +1000 - - Remove TEST_SSH_ECC. - - Convert the only remaining user of it to runtime detection using ssh -Q. - -commit 5e6d28b7874b0deae95d2c68947c45212d32e599 -Author: Darren Tucker -Date: Wed Sep 29 17:48:09 2021 +1000 - - Split c89 test openssl setting out. - -commit c4ac7f98e230e83c015678dc958b1ffe828564ad -Author: Darren Tucker -Date: Wed Sep 29 17:40:50 2021 +1000 - - Expand TEST_SHELL consistently with other vars. - -commit cfe5f7b0eb7621bfb0a756222de0431315c2ab8b -Author: Darren Tucker -Date: Wed Sep 29 17:26:50 2021 +1000 - - Replace `pwd` with make variable in regress cmd. - -commit 899be59da5fbc3372444bd0fbe74af48313bed33 -Author: Darren Tucker -Date: Wed Sep 29 17:14:33 2021 +1000 - - Get BUILDDIR from autoconf. - - Use this to replace `pwd`s in regress test command line. - -commit c8d92d3d4f7d560146f2f936156ec4dac3fc5811 -Author: Darren Tucker -Date: Wed Sep 29 13:28:56 2021 +1000 - - Add make clean step to tests. - -commit 360fb41ef8359619ab90b0d131c914494e55d3dd -Author: Darren Tucker -Date: Wed Sep 29 11:36:13 2021 +1000 - - Test all available clang and gcc versions. - -commit 4fb49899d7da22952d35a4bc4c9bdb2311087893 -Author: djm@openbsd.org -Date: Wed Sep 29 01:32:21 2021 +0000 - - upstream: Test certificate hostkeys held in ssh-agent too. Would have - - caught regression fixed in sshd r1.575 - - ok markus@ - - OpenBSD-Regress-ID: 1f164d7bd89f83762db823eec4ddf2d2556145ed - -commit ce4854e12e749a05646e5775e9deb8cfaf49a755 -Author: djm@openbsd.org -Date: Wed Sep 29 01:33:32 2021 +0000 - - upstream: add some debug output showing how many key file/command lines - - were processed. Useful to see whether a file or command actually has keys - present - - OpenBSD-Commit-ID: 0bd9ff94e84e03a22df8e6c12f6074a95d27f23c - -commit 15abdd523501c349b703d9a27e2bb4252ad921ef -Author: dtucker@openbsd.org -Date: Tue Sep 28 11:14:50 2021 +0000 - - upstream: Make prototype for rijndaelEncrypt match function - - including the bounds. Fixes error in portable where GCC>=11 takes notice of - the bounds. ok deraadt@ - - OpenBSD-Commit-ID: cdd2f05fd1549e1786a70871e513cf9e9cf099a6 - -commit d1d29ea1d1ef1a1a54b209f062ec1dcc8399cf03 -Author: dtucker@openbsd.org -Date: Tue Sep 28 11:10:05 2021 +0000 - - upstream: Import regenerated moduli. - - OpenBSD-Commit-ID: 4bec5db13b736b64b06a0fca704cbecc2874c8e1 - -commit 39f2111b1d5f00206446257377dcce58cc72369f -Author: Darren Tucker -Date: Wed Sep 29 10:53:55 2021 +1000 - - Add new compiler hardening flags. - - Add -fzero-call-used-regs and -ftrivial-auto-var-init to the list of - compiler hardening flags that configure checks for. These are supported - by clang and gcc, and make ROP gadgets less useful and mitigate - stack-based infoleaks respectively. ok djm@ - -commit bf944e3794eff5413f2df1ef37cddf96918c6bde -Author: Damien Miller -Date: Mon Sep 27 00:03:19 2021 +1000 - - initgroups needs grp.h - -commit 8c5b5655149bd76ea21026d7fe73ab387dbc3bc7 -Author: djm@openbsd.org -Date: Sun Sep 26 14:01:11 2021 +0000 - - upstream: openssh-8.8 - - OpenBSD-Commit-ID: 12357794602ac979eb7312a1fb190c453f492ec4 - -commit f3cbe43e28fe71427d41cfe3a17125b972710455 -Author: djm@openbsd.org -Date: Sun Sep 26 14:01:03 2021 +0000 - - upstream: need initgroups() before setresgid(); reported by anton@, - - ok deraadt@ - - OpenBSD-Commit-ID: 6aa003ee658b316960d94078f2a16edbc25087ce - -commit 8acaff41f7518be40774c626334157b1b1c5583c -Author: Damien Miller -Date: Sun Sep 26 22:16:36 2021 +1000 - - update version numbers for release - -commit d39039ddc0010baa91c70a0fa0753a2699bbf435 -Author: kn@openbsd.org -Date: Sat Sep 25 09:40:33 2021 +0000 - - upstream: RSA/SHA-1 is not used by default anymore - - OK dtucker deraadt djm - - OpenBSD-Commit-ID: 055c51a221c3f099dd75c95362f902da1b8678c6 - -commit 9b2ee74e3aa8c461eb5552a6ebf260449bb06f7e *** 4738 LINES SKIPPED *** From nobody Fri Oct 13 23:15:56 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6j6h6xv8z4ww1c; Fri, 13 Oct 2023 23:15: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 4S6j6h6MZJz4vRk; Fri, 13 Oct 2023 23:15:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697238956; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GBjS+5AH0pdzDAZNp9Ck9rd7m/Kbaw5aDsDy1bsr/Zw=; b=bETcsPyAp1/Kio9Hi0CC15wRwAHVo83wdR9UH19ly1NALJH7kBIIAxHeZHw2ul1yZ0HDPW kEE7KHukUIXPi5Fak35J+S+nf1+m52v/kIrhCamXA5WeFZfSIEdMV47w4hBf6aAIols9d/ mGHWrGy4aJFPLzM0k4SAdfuVg3I5tDQG04IocykEIyz+g/uvC2lwdZwd5cr6q/1Zb9j1tT KkOkUg/ADuEL1xDCT96ppaPQ74Tl/3Lm59s2Lp8BHQNBO2siUWLjPCeEldgEmPsgW4K1i0 iSgtZnoaBSxspuUMCN+uWY0Z+osksMH5WTKwMOuCtvdIC8Eoxzr4CpGVvNe5EA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697238956; a=rsa-sha256; cv=none; b=K0E8D7WpEeTDzdmIkUguTREbD2w48Vy7/4dxST1gZXmn9EMOm9aKkwnfwWYTy73AdDizUb mNa+DbavkmB5XAw0mjfwaTg1ei5ZqX9EK1qXowc47DQI0BwXMObb/RNp1hgSgn94yqz7Td WT1NlDPxzASQ0ys42vfei2VORyR2qTU3V+MboCMWbv4pqtVoyI7qFH10lhNjTYeENn8k4a jqm4GI7czVAymQM7UsFa3fE8WunLDcs4aUYYlY8JGl6yza1qc2L1HDmXBx870lkhjCqh3g d3laDTVl56+/XkpL4rgTDASThxlDnAT4S9X95LfjYeKKqUzhRFIJTge0+xHMtg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697238956; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GBjS+5AH0pdzDAZNp9Ck9rd7m/Kbaw5aDsDy1bsr/Zw=; b=qsck3Y2RjDiJJowlcQcJ8Qq2KPkriYZM19iVJ1Sr+eH6RQ9ybD6MBKENZjvangUC9UAZBZ GqS+Ec7n5TnzoWPEKlnCncktpqiOWsPMy+nmIBZL6BGSGWJKTTBGmF2DVVEBbOb4W+eygK XeJWpLlQyZkEPBXOk2X+dU+0fLtw9lL1eujuTn569DuZdONWih1Wz/bbgtKFUBxY4flepp p66W8iYObx40klj6p+ZFpDH6RLKQuR1oTmXpFi6OrlJq3qB4tlsjw3x6x3eGr9i0Qc32P/ Bl/GVaJX5jDOfWHZcSBxVvqyN+yxegk1mw/bMzbESICqmC+yAh1Pd8hK7KV8yg== 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 4S6j6h5QyHz16R3; Fri, 13 Oct 2023 23:15:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNFuMd065273; Fri, 13 Oct 2023 23:15:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNFuWr065270; Fri, 13 Oct 2023 23:15:56 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:15:56 GMT Message-Id: <202310132315.39DNFuWr065270@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: c4262d1b08e9 - releng/14.0 - OpenSSL: update to 3.0.11 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: c4262d1b08e9427d65635170eb755b9db83cc294 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=c4262d1b08e9427d65635170eb755b9db83cc294 commit c4262d1b08e9427d65635170eb755b9db83cc294 Author: Pierre Pronchery AuthorDate: 2023-10-09 19:00:25 +0000 Commit: Ed Maste CommitDate: 2023-10-13 23:15:10 +0000 OpenSSL: update to 3.0.11 OpenSSL 3.0.11 addresses: POLY1305 MAC implementation corrupts XMM registers on Windows (CVE-2023-4807) Relnotes: Yes Pull request: https://github.com/freebsd/freebsd-src/pull/852 Sponsored by: The FreeBSD Foundation (cherry picked from commit 6f1af0d7d2af54b339b5212434cd6d4fda628d80) (cherry picked from commit bbecb0ff6c9e2fc05c096ce2ca5387df0d8e99fe) Approved by: re (gjb) --- crypto/openssl/CHANGES.md | 25 +++++++++ crypto/openssl/NEWS.md | 6 ++ crypto/openssl/README.md | 2 +- crypto/openssl/VERSION.dat | 4 +- crypto/openssl/apps/cmp.c | 2 +- crypto/openssl/apps/lib/apps.c | 13 ++--- crypto/openssl/apps/req.c | 8 +-- crypto/openssl/apps/s_server.c | 2 +- crypto/openssl/crypto/asn1/a_strnid.c | 4 +- crypto/openssl/crypto/asn1/asn1_gen.c | 11 ++-- crypto/openssl/crypto/chacha/asm/chacha-ia64.pl | 2 + crypto/openssl/crypto/cmp/cmp_asn.c | 10 ++-- crypto/openssl/crypto/cmp/cmp_client.c | 2 +- crypto/openssl/crypto/cmp/cmp_status.c | 7 ++- crypto/openssl/crypto/cms/cms_env.c | 21 ++++++- crypto/openssl/crypto/cms/cms_lib.c | 5 +- crypto/openssl/crypto/cms/cms_local.h | 3 +- crypto/openssl/crypto/cms/cms_sd.c | 6 +- crypto/openssl/crypto/conf/conf_sap.c | 3 +- crypto/openssl/crypto/encode_decode/decoder_lib.c | 7 ++- crypto/openssl/crypto/encode_decode/decoder_pkey.c | 8 ++- crypto/openssl/crypto/engine/eng_lib.c | 24 +++++--- crypto/openssl/crypto/engine/eng_list.c | 11 ++-- crypto/openssl/crypto/engine/eng_local.h | 6 +- crypto/openssl/crypto/engine/eng_table.c | 12 ++-- crypto/openssl/crypto/evp/ctrl_params_translate.c | 22 +++++--- crypto/openssl/crypto/evp/p_lib.c | 2 + crypto/openssl/crypto/http/http_client.c | 15 +++-- crypto/openssl/crypto/mem.c | 5 +- crypto/openssl/crypto/pem/pem_pkey.c | 13 ++++- crypto/openssl/crypto/perlasm/arm-xlate.pl | 2 +- crypto/openssl/crypto/pkcs12/p12_crt.c | 64 +++++++++++++++------- .../openssl/crypto/poly1305/asm/poly1305-x86_64.pl | 6 +- crypto/openssl/crypto/property/property.c | 6 +- crypto/openssl/crypto/provider_core.c | 8 +-- crypto/openssl/crypto/rsa/rsa_ameth.c | 5 +- crypto/openssl/crypto/srp/srp_vfy.c | 3 +- crypto/openssl/crypto/store/store_lib.c | 6 +- crypto/openssl/crypto/threads_pthread.c | 4 +- crypto/openssl/crypto/x509/v3_ist.c | 8 +-- crypto/openssl/crypto/x509/x509_cmp.c | 9 ++- crypto/openssl/doc/man1/openssl-cmp.pod.in | 31 +++++++---- crypto/openssl/doc/man1/openssl-cms.pod.in | 4 +- crypto/openssl/doc/man1/openssl-ts.pod.in | 4 +- crypto/openssl/doc/man3/BIO_s_mem.pod | 22 +++++++- crypto/openssl/doc/man3/CMS_sign.pod | 4 +- crypto/openssl/doc/man3/EVP_MAC.pod | 4 +- crypto/openssl/doc/man3/EVP_SIGNATURE.pod | 4 +- crypto/openssl/doc/man3/OSSL_CMP_CTX_new.pod | 30 +++++----- crypto/openssl/doc/man3/OSSL_CMP_exec_certreq.pod | 16 ++++-- crypto/openssl/doc/man3/OSSL_HTTP_REQ_CTX.pod | 12 ++-- crypto/openssl/doc/man3/OSSL_HTTP_transfer.pod | 9 ++- crypto/openssl/doc/man3/PKCS12_create.pod | 9 ++- crypto/openssl/doc/man3/PKCS12_gen_mac.pod | 2 + crypto/openssl/doc/man3/SSL_new.pod | 4 +- crypto/openssl/doc/man3/d2i_RSAPrivateKey.pod | 6 +- crypto/openssl/doc/man3/d2i_X509.pod | 2 + crypto/openssl/doc/man5/x509v3_config.pod | 4 +- crypto/openssl/doc/man7/EVP_KDF-PKCS12KDF.pod | 8 ++- crypto/openssl/doc/man7/migration_guide.pod | 9 +++ crypto/openssl/include/openssl/opensslv.h | 10 ++-- crypto/openssl/providers/fips-sources.checksums | 14 ++--- crypto/openssl/providers/fips.checksum | 2 +- .../implementations/ciphers/cipher_chacha20.c | 23 +++++++- .../implementations/encode_decode/decode_der2key.c | 6 +- .../encode_decode/decode_msblob2key.c | 22 +++++++- .../implementations/encode_decode/decode_pvk2key.c | 21 ++++++- .../implementations/encode_decode/encode_key2any.c | 7 ++- .../providers/implementations/keymgmt/dh_kmgmt.c | 3 + .../providers/implementations/keymgmt/dsa_kmgmt.c | 3 + .../providers/implementations/keymgmt/ecx_kmgmt.c | 5 +- .../implementations/keymgmt/mac_legacy_kmgmt.c | 5 +- crypto/openssl/ssl/ssl_lib.c | 10 ++-- crypto/openssl/ssl/ssl_sess.c | 5 +- crypto/openssl/ssl/statem/extensions_srvr.c | 4 +- secure/lib/libcrypto/Makefile.inc | 4 +- secure/lib/libcrypto/man/man3/ADMISSIONS.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_EXTERN_FUNCS.3 | 6 +- .../libcrypto/man/man3/ASN1_INTEGER_get_int64.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_INTEGER_new.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_ITEM_lookup.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_OBJECT_new.3 | 6 +- .../lib/libcrypto/man/man3/ASN1_STRING_TABLE_add.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_STRING_length.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_STRING_new.3 | 6 +- .../lib/libcrypto/man/man3/ASN1_STRING_print_ex.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_TIME_set.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_TYPE_get.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_aux_cb.3 | 6 +- .../lib/libcrypto/man/man3/ASN1_generate_nconf.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_item_d2i_bio.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_item_new.3 | 6 +- secure/lib/libcrypto/man/man3/ASN1_item_sign.3 | 6 +- secure/lib/libcrypto/man/man3/ASYNC_WAIT_CTX_new.3 | 6 +- secure/lib/libcrypto/man/man3/ASYNC_start_job.3 | 6 +- secure/lib/libcrypto/man/man3/BF_encrypt.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_ADDR.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_ADDRINFO.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_connect.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_ctrl.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_base64.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_buffer.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_cipher.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_md.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_null.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_prefix.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_readbuffer.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_f_ssl.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_find_type.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_get_data.3 | 6 +- .../lib/libcrypto/man/man3/BIO_get_ex_new_index.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_meth_new.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_new.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_new_CMS.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_parse_hostserv.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_printf.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_push.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_read.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_accept.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_bio.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_connect.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_core.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_datagram.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_fd.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_file.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_mem.3 | 31 +++++++++-- secure/lib/libcrypto/man/man3/BIO_s_null.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_s_socket.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_set_callback.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_should_retry.3 | 6 +- secure/lib/libcrypto/man/man3/BIO_socket_wait.3 | 6 +- secure/lib/libcrypto/man/man3/BN_BLINDING_new.3 | 6 +- secure/lib/libcrypto/man/man3/BN_CTX_new.3 | 6 +- secure/lib/libcrypto/man/man3/BN_CTX_start.3 | 6 +- secure/lib/libcrypto/man/man3/BN_add.3 | 6 +- secure/lib/libcrypto/man/man3/BN_add_word.3 | 6 +- secure/lib/libcrypto/man/man3/BN_bn2bin.3 | 6 +- secure/lib/libcrypto/man/man3/BN_cmp.3 | 6 +- secure/lib/libcrypto/man/man3/BN_copy.3 | 6 +- secure/lib/libcrypto/man/man3/BN_generate_prime.3 | 6 +- secure/lib/libcrypto/man/man3/BN_mod_exp_mont.3 | 6 +- secure/lib/libcrypto/man/man3/BN_mod_inverse.3 | 6 +- .../lib/libcrypto/man/man3/BN_mod_mul_montgomery.3 | 6 +- .../lib/libcrypto/man/man3/BN_mod_mul_reciprocal.3 | 6 +- secure/lib/libcrypto/man/man3/BN_new.3 | 6 +- secure/lib/libcrypto/man/man3/BN_num_bytes.3 | 6 +- secure/lib/libcrypto/man/man3/BN_rand.3 | 6 +- secure/lib/libcrypto/man/man3/BN_security_bits.3 | 6 +- secure/lib/libcrypto/man/man3/BN_set_bit.3 | 6 +- secure/lib/libcrypto/man/man3/BN_swap.3 | 6 +- secure/lib/libcrypto/man/man3/BN_zero.3 | 6 +- secure/lib/libcrypto/man/man3/BUF_MEM_new.3 | 6 +- .../libcrypto/man/man3/CMS_EncryptedData_decrypt.3 | 6 +- .../libcrypto/man/man3/CMS_EncryptedData_encrypt.3 | 6 +- .../libcrypto/man/man3/CMS_EnvelopedData_create.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_add0_cert.3 | 6 +- .../libcrypto/man/man3/CMS_add1_recipient_cert.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_add1_signer.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_compress.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_data_create.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_decrypt.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_digest_create.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_encrypt.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_final.3 | 6 +- .../libcrypto/man/man3/CMS_get0_RecipientInfos.3 | 6 +- .../lib/libcrypto/man/man3/CMS_get0_SignerInfos.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_get0_type.3 | 6 +- .../libcrypto/man/man3/CMS_get1_ReceiptRequest.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_sign.3 | 10 ++-- secure/lib/libcrypto/man/man3/CMS_sign_receipt.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_uncompress.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_verify.3 | 6 +- secure/lib/libcrypto/man/man3/CMS_verify_receipt.3 | 6 +- secure/lib/libcrypto/man/man3/CONF_modules_free.3 | 6 +- .../libcrypto/man/man3/CONF_modules_load_file.3 | 6 +- .../libcrypto/man/man3/CRYPTO_THREAD_run_once.3 | 6 +- .../libcrypto/man/man3/CRYPTO_get_ex_new_index.3 | 6 +- secure/lib/libcrypto/man/man3/CRYPTO_memcmp.3 | 6 +- .../man/man3/CTLOG_STORE_get0_log_by_id.3 | 6 +- secure/lib/libcrypto/man/man3/CTLOG_STORE_new.3 | 6 +- secure/lib/libcrypto/man/man3/CTLOG_new.3 | 6 +- .../libcrypto/man/man3/CT_POLICY_EVAL_CTX_new.3 | 6 +- secure/lib/libcrypto/man/man3/DEFINE_STACK_OF.3 | 6 +- secure/lib/libcrypto/man/man3/DES_random_key.3 | 6 +- secure/lib/libcrypto/man/man3/DH_generate_key.3 | 6 +- .../libcrypto/man/man3/DH_generate_parameters.3 | 6 +- secure/lib/libcrypto/man/man3/DH_get0_pqg.3 | 6 +- secure/lib/libcrypto/man/man3/DH_get_1024_160.3 | 6 +- secure/lib/libcrypto/man/man3/DH_meth_new.3 | 6 +- secure/lib/libcrypto/man/man3/DH_new.3 | 6 +- secure/lib/libcrypto/man/man3/DH_new_by_nid.3 | 6 +- secure/lib/libcrypto/man/man3/DH_set_method.3 | 6 +- secure/lib/libcrypto/man/man3/DH_size.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_SIG_new.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_do_sign.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_dup_DH.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_generate_key.3 | 6 +- .../libcrypto/man/man3/DSA_generate_parameters.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_get0_pqg.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_meth_new.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_new.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_set_method.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_sign.3 | 6 +- secure/lib/libcrypto/man/man3/DSA_size.3 | 6 +- secure/lib/libcrypto/man/man3/DTLS_get_data_mtu.3 | 6 +- secure/lib/libcrypto/man/man3/DTLS_set_timer_cb.3 | 6 +- secure/lib/libcrypto/man/man3/DTLSv1_listen.3 | 6 +- secure/lib/libcrypto/man/man3/ECDSA_SIG_new.3 | 6 +- secure/lib/libcrypto/man/man3/ECDSA_sign.3 | 6 +- .../lib/libcrypto/man/man3/ECPKParameters_print.3 | 6 +- .../lib/libcrypto/man/man3/EC_GFp_simple_method.3 | 6 +- secure/lib/libcrypto/man/man3/EC_GROUP_copy.3 | 6 +- secure/lib/libcrypto/man/man3/EC_GROUP_new.3 | 6 +- .../lib/libcrypto/man/man3/EC_KEY_get_enc_flags.3 | 6 +- secure/lib/libcrypto/man/man3/EC_KEY_new.3 | 6 +- secure/lib/libcrypto/man/man3/EC_POINT_add.3 | 6 +- secure/lib/libcrypto/man/man3/EC_POINT_new.3 | 6 +- secure/lib/libcrypto/man/man3/ENGINE_add.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_GET_LIB.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_clear_error.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_error_string.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_get_error.3 | 6 +- .../libcrypto/man/man3/ERR_load_crypto_strings.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_load_strings.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_new.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_print_errors.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_put_error.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_remove_state.3 | 6 +- secure/lib/libcrypto/man/man3/ERR_set_mark.3 | 6 +- .../lib/libcrypto/man/man3/EVP_ASYM_CIPHER_free.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_BytesToKey.3 | 6 +- .../man/man3/EVP_CIPHER_CTX_get_cipher_data.3 | 6 +- .../man/man3/EVP_CIPHER_CTX_get_original_iv.3 | 6 +- .../lib/libcrypto/man/man3/EVP_CIPHER_meth_new.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_DigestInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_DigestSignInit.3 | 6 +- .../lib/libcrypto/man/man3/EVP_DigestVerifyInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_EncodeInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_EncryptInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_KDF.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_KEM_free.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_KEYEXCH_free.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_KEYMGMT.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_MAC.3 | 10 ++-- secure/lib/libcrypto/man/man3/EVP_MD_meth_new.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_OpenInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PBE_CipherInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY2PKCS8.3 | 6 +- .../lib/libcrypto/man/man3/EVP_PKEY_ASN1_METHOD.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_ctrl.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_CTX_get0_libctx.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_CTX_get0_pkey.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_new.3 | 6 +- .../man/man3/EVP_PKEY_CTX_set1_pbe_pass.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_CTX_set_hkdf_md.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_CTX_set_params.3 | 6 +- .../man/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_CTX_set_scrypt_N.3 | 6 +- .../man/man3/EVP_PKEY_CTX_set_tls1_prf_md.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_asn1_get_count.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_check.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_copy_parameters.3 | 6 +- .../lib/libcrypto/man/man3/EVP_PKEY_decapsulate.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_decrypt.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_derive.3 | 6 +- .../man/man3/EVP_PKEY_digestsign_supports_digest.3 | 6 +- .../lib/libcrypto/man/man3/EVP_PKEY_encapsulate.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_encrypt.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_fromdata.3 | 6 +- .../man/man3/EVP_PKEY_get_default_digest_nid.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_get_field_type.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_get_group_name.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_get_size.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_gettable_params.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_is_a.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_keygen.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_meth_get_count.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_meth_new.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_new.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_print_private.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_set1_RSA.3 | 6 +- .../man/man3/EVP_PKEY_set1_encoded_public_key.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_set_type.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_settable_params.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_sign.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_todata.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_PKEY_verify.3 | 6 +- .../libcrypto/man/man3/EVP_PKEY_verify_recover.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_RAND.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_SIGNATURE.3 | 10 ++-- secure/lib/libcrypto/man/man3/EVP_SealInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_SignInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_VerifyInit.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_aes_128_gcm.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_aria_128_gcm.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_bf_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_blake2b512.3 | 6 +- .../lib/libcrypto/man/man3/EVP_camellia_128_ecb.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_cast5_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_chacha20.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_des_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_desx_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_idea_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_md2.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_md4.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_md5.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_mdc2.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_rc2_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_rc4.3 | 6 +- .../lib/libcrypto/man/man3/EVP_rc5_32_12_16_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_ripemd160.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_seed_cbc.3 | 6 +- .../man/man3/EVP_set_default_properties.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_sha1.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_sha224.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_sha3_224.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_sm3.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_sm4_cbc.3 | 6 +- secure/lib/libcrypto/man/man3/EVP_whirlpool.3 | 6 +- secure/lib/libcrypto/man/man3/HMAC.3 | 6 +- secure/lib/libcrypto/man/man3/MD5.3 | 6 +- secure/lib/libcrypto/man/man3/MDC2_Init.3 | 6 +- secure/lib/libcrypto/man/man3/NCONF_new_ex.3 | 6 +- secure/lib/libcrypto/man/man3/OBJ_nid2obj.3 | 6 +- secure/lib/libcrypto/man/man3/OCSP_REQUEST_new.3 | 6 +- secure/lib/libcrypto/man/man3/OCSP_cert_to_id.3 | 6 +- .../libcrypto/man/man3/OCSP_request_add1_nonce.3 | 6 +- .../lib/libcrypto/man/man3/OCSP_resp_find_status.3 | 6 +- .../lib/libcrypto/man/man3/OCSP_response_status.3 | 6 +- secure/lib/libcrypto/man/man3/OCSP_sendreq_new.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_Applink.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_FILE.3 | 6 +- .../lib/libcrypto/man/man3/OPENSSL_LH_COMPFUNC.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_LH_stats.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_config.3 | 6 +- .../lib/libcrypto/man/man3/OPENSSL_fork_prepare.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_gmtime.3 | 6 +- .../lib/libcrypto/man/man3/OPENSSL_hexchar2int.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_ia32cap.3 | 6 +- .../lib/libcrypto/man/man3/OPENSSL_init_crypto.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_init_ssl.3 | 6 +- .../libcrypto/man/man3/OPENSSL_instrument_bus.3 | 6 +- .../man/man3/OPENSSL_load_builtin_modules.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_malloc.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_s390xcap.3 | 6 +- .../lib/libcrypto/man/man3/OPENSSL_secure_malloc.3 | 6 +- secure/lib/libcrypto/man/man3/OPENSSL_strcasecmp.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_ALGORITHM.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_CALLBACK.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_CMP_CTX_new.3 | 38 ++++++------- .../man/man3/OSSL_CMP_HDR_get0_transactionID.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_CMP_ITAV_set0.3 | 6 +- .../libcrypto/man/man3/OSSL_CMP_MSG_get0_header.3 | 6 +- .../libcrypto/man/man3/OSSL_CMP_MSG_http_perform.3 | 6 +- .../lib/libcrypto/man/man3/OSSL_CMP_SRV_CTX_new.3 | 6 +- .../libcrypto/man/man3/OSSL_CMP_STATUSINFO_new.3 | 6 +- .../lib/libcrypto/man/man3/OSSL_CMP_exec_certreq.3 | 22 +++++--- secure/lib/libcrypto/man/man3/OSSL_CMP_log_open.3 | 6 +- .../lib/libcrypto/man/man3/OSSL_CMP_validate_msg.3 | 6 +- .../lib/libcrypto/man/man3/OSSL_CORE_MAKE_FUNC.3 | 6 +- .../libcrypto/man/man3/OSSL_CRMF_MSG_get0_tmpl.3 | 6 +- .../man/man3/OSSL_CRMF_MSG_set0_validity.3 | 6 +- .../man/man3/OSSL_CRMF_MSG_set1_regCtrl_regToken.3 | 6 +- .../man/man3/OSSL_CRMF_MSG_set1_regInfo_certReq.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_CRMF_pbmp_new.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_DECODER.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_DECODER_CTX.3 | 6 +- .../man/man3/OSSL_DECODER_CTX_new_for_pkey.3 | 6 +- .../lib/libcrypto/man/man3/OSSL_DECODER_from_bio.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_DISPATCH.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_ENCODER.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_ENCODER_CTX.3 | 6 +- .../man/man3/OSSL_ENCODER_CTX_new_for_pkey.3 | 6 +- .../lib/libcrypto/man/man3/OSSL_ENCODER_to_bio.3 | 6 +- .../man/man3/OSSL_ESS_check_signing_certs.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_HTTP_REQ_CTX.3 | 18 +++--- .../lib/libcrypto/man/man3/OSSL_HTTP_parse_url.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_HTTP_transfer.3 | 15 +++-- secure/lib/libcrypto/man/man3/OSSL_ITEM.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_LIB_CTX.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_PARAM.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_PARAM_BLD.3 | 6 +- .../man/man3/OSSL_PARAM_allocate_from_text.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_PARAM_dup.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_PARAM_int.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_PROVIDER.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_SELF_TEST_new.3 | 6 +- .../man/man3/OSSL_SELF_TEST_set_callback.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_STORE_INFO.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_STORE_LOADER.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_STORE_SEARCH.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_STORE_attach.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_STORE_expect.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_STORE_open.3 | 6 +- secure/lib/libcrypto/man/man3/OSSL_trace_enabled.3 | 6 +- .../man/man3/OSSL_trace_get_category_num.3 | 6 +- .../libcrypto/man/man3/OSSL_trace_set_channel.3 | 6 +- .../man/man3/OpenSSL_add_all_algorithms.3 | 6 +- secure/lib/libcrypto/man/man3/OpenSSL_version.3 | 6 +- .../libcrypto/man/man3/PEM_X509_INFO_read_bio_ex.3 | 6 +- secure/lib/libcrypto/man/man3/PEM_bytes_read_bio.3 | 6 +- secure/lib/libcrypto/man/man3/PEM_read.3 | 6 +- secure/lib/libcrypto/man/man3/PEM_read_CMS.3 | 6 +- .../libcrypto/man/man3/PEM_read_bio_PrivateKey.3 | 6 +- secure/lib/libcrypto/man/man3/PEM_read_bio_ex.3 | 6 +- .../libcrypto/man/man3/PEM_write_bio_CMS_stream.3 | 6 +- .../man/man3/PEM_write_bio_PKCS7_stream.3 | 6 +- .../lib/libcrypto/man/man3/PKCS12_PBE_keyivgen.3 | 6 +- .../man/man3/PKCS12_SAFEBAG_create_cert.3 | 6 +- .../libcrypto/man/man3/PKCS12_SAFEBAG_get0_attrs.3 | 6 +- .../libcrypto/man/man3/PKCS12_SAFEBAG_get1_cert.3 | 6 +- .../libcrypto/man/man3/PKCS12_add1_attr_by_NID.3 | 6 +- .../libcrypto/man/man3/PKCS12_add_CSPName_asc.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS12_add_cert.3 | 6 +- .../man/man3/PKCS12_add_friendlyname_asc.3 | 6 +- .../lib/libcrypto/man/man3/PKCS12_add_localkeyid.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS12_add_safe.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS12_create.3 | 15 +++-- .../lib/libcrypto/man/man3/PKCS12_decrypt_skey.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS12_gen_mac.3 | 8 ++- .../libcrypto/man/man3/PKCS12_get_friendlyname.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS12_init.3 | 6 +- .../libcrypto/man/man3/PKCS12_item_decrypt_d2i.3 | 6 +- .../libcrypto/man/man3/PKCS12_key_gen_utf8_ex.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS12_newpass.3 | 6 +- .../lib/libcrypto/man/man3/PKCS12_pack_p7encdata.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS12_parse.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS5_PBE_keyivgen.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS5_PBKDF2_HMAC.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS7_decrypt.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS7_encrypt.3 | 6 +- .../libcrypto/man/man3/PKCS7_get_octet_string.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS7_sign.3 | 6 +- .../lib/libcrypto/man/man3/PKCS7_sign_add_signer.3 | 6 +- .../lib/libcrypto/man/man3/PKCS7_type_is_other.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS7_verify.3 | 6 +- secure/lib/libcrypto/man/man3/PKCS8_encrypt.3 | 6 +- .../lib/libcrypto/man/man3/PKCS8_pkey_add1_attr.3 | 6 +- secure/lib/libcrypto/man/man3/RAND_add.3 | 6 +- secure/lib/libcrypto/man/man3/RAND_bytes.3 | 6 +- secure/lib/libcrypto/man/man3/RAND_cleanup.3 | 6 +- secure/lib/libcrypto/man/man3/RAND_egd.3 | 6 +- secure/lib/libcrypto/man/man3/RAND_get0_primary.3 | 6 +- secure/lib/libcrypto/man/man3/RAND_load_file.3 | 6 +- secure/lib/libcrypto/man/man3/RAND_set_DRBG_type.3 | 6 +- .../lib/libcrypto/man/man3/RAND_set_rand_method.3 | 6 +- secure/lib/libcrypto/man/man3/RC4_set_key.3 | 6 +- secure/lib/libcrypto/man/man3/RIPEMD160_Init.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_blinding_on.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_check_key.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_generate_key.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_get0_key.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_meth_new.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_new.3 | 6 +- .../man/man3/RSA_padding_add_PKCS1_type_1.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_print.3 | 6 +- .../lib/libcrypto/man/man3/RSA_private_encrypt.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_public_encrypt.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_set_method.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_sign.3 | 6 +- .../man/man3/RSA_sign_ASN1_OCTET_STRING.3 | 6 +- secure/lib/libcrypto/man/man3/RSA_size.3 | 6 +- secure/lib/libcrypto/man/man3/SCT_new.3 | 6 +- secure/lib/libcrypto/man/man3/SCT_print.3 | 6 +- secure/lib/libcrypto/man/man3/SCT_validate.3 | 6 +- secure/lib/libcrypto/man/man3/SHA256_Init.3 | 6 +- secure/lib/libcrypto/man/man3/SMIME_read_ASN1.3 | 6 +- secure/lib/libcrypto/man/man3/SMIME_read_CMS.3 | 6 +- secure/lib/libcrypto/man/man3/SMIME_read_PKCS7.3 | 6 +- secure/lib/libcrypto/man/man3/SMIME_write_ASN1.3 | 6 +- secure/lib/libcrypto/man/man3/SMIME_write_CMS.3 | 6 +- secure/lib/libcrypto/man/man3/SMIME_write_PKCS7.3 | 6 +- secure/lib/libcrypto/man/man3/SRP_Calc_B.3 | 6 +- secure/lib/libcrypto/man/man3/SRP_VBASE_new.3 | 6 +- .../lib/libcrypto/man/man3/SRP_create_verifier.3 | 6 +- secure/lib/libcrypto/man/man3/SRP_user_pwd_new.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CIPHER_get_name.3 | 6 +- .../man/man3/SSL_COMP_add_compression_method.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CONF_CTX_new.3 | 6 +- .../libcrypto/man/man3/SSL_CONF_CTX_set1_prefix.3 | 6 +- .../libcrypto/man/man3/SSL_CONF_CTX_set_flags.3 | 6 +- .../libcrypto/man/man3/SSL_CONF_CTX_set_ssl_ctx.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CONF_cmd.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CONF_cmd_argv.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_add1_chain_cert.3 | 6 +- .../man/man3/SSL_CTX_add_extra_chain_cert.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_add_session.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_config.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_ctrl.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_dane_enable.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_flush_sessions.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_free.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_get0_param.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_get_verify_mode.3 | 6 +- .../man/man3/SSL_CTX_has_client_custom_ext.3 | 6 +- .../man/man3/SSL_CTX_load_verify_locations.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_new.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_sess_number.3 | 6 +- .../man/man3/SSL_CTX_sess_set_cache_size.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_sess_set_get_cb.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_sessions.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_set0_CA_list.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_set1_curves.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_set1_sigalgs.3 | 6 +- .../man/man3/SSL_CTX_set1_verify_cert_store.3 | 6 +- .../man/man3/SSL_CTX_set_alpn_select_cb.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_set_cert_cb.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_cert_store.3 | 6 +- .../man/man3/SSL_CTX_set_cert_verify_callback.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_cipher_list.3 | 6 +- .../man/man3/SSL_CTX_set_client_cert_cb.3 | 6 +- .../man/man3/SSL_CTX_set_client_hello_cb.3 | 6 +- .../man/man3/SSL_CTX_set_ct_validation_callback.3 | 6 +- .../man/man3/SSL_CTX_set_ctlog_list_file.3 | 6 +- .../man/man3/SSL_CTX_set_default_passwd_cb.3 | 6 +- .../man/man3/SSL_CTX_set_generate_session_id.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_info_callback.3 | 6 +- .../man/man3/SSL_CTX_set_keylog_callback.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_max_cert_list.3 | 6 +- .../man/man3/SSL_CTX_set_min_proto_version.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_set_mode.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_msg_callback.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_num_tickets.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_set_options.3 | 6 +- .../man/man3/SSL_CTX_set_psk_client_callback.3 | 6 +- .../man/man3/SSL_CTX_set_quiet_shutdown.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_read_ahead.3 | 6 +- .../man/man3/SSL_CTX_set_record_padding_callback.3 | 6 +- .../man/man3/SSL_CTX_set_security_level.3 | 6 +- .../man/man3/SSL_CTX_set_session_cache_mode.3 | 6 +- .../man/man3/SSL_CTX_set_session_id_context.3 | 6 +- .../man/man3/SSL_CTX_set_session_ticket_cb.3 | 6 +- .../man/man3/SSL_CTX_set_split_send_fragment.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_srp_password.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_set_ssl_version.3 | 6 +- .../SSL_CTX_set_stateless_cookie_generate_cb.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_set_timeout.3 | 6 +- .../man3/SSL_CTX_set_tlsext_servername_callback.3 | 6 +- .../man/man3/SSL_CTX_set_tlsext_status_cb.3 | 6 +- .../man/man3/SSL_CTX_set_tlsext_ticket_key_cb.3 | 6 +- .../man/man3/SSL_CTX_set_tlsext_use_srtp.3 | 6 +- .../man/man3/SSL_CTX_set_tmp_dh_callback.3 | 6 +- .../lib/libcrypto/man/man3/SSL_CTX_set_tmp_ecdh.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_CTX_set_verify.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_use_certificate.3 | 6 +- .../man/man3/SSL_CTX_use_psk_identity_hint.3 | 6 +- .../libcrypto/man/man3/SSL_CTX_use_serverinfo.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_SESSION_free.3 | 6 +- .../libcrypto/man/man3/SSL_SESSION_get0_cipher.3 | 6 +- .../libcrypto/man/man3/SSL_SESSION_get0_hostname.3 | 6 +- .../man/man3/SSL_SESSION_get0_id_context.3 | 6 +- .../lib/libcrypto/man/man3/SSL_SESSION_get0_peer.3 | 6 +- .../man/man3/SSL_SESSION_get_compress_id.3 | 6 +- .../man/man3/SSL_SESSION_get_protocol_version.3 | 6 +- .../lib/libcrypto/man/man3/SSL_SESSION_get_time.3 | 6 +- .../libcrypto/man/man3/SSL_SESSION_has_ticket.3 | 6 +- .../libcrypto/man/man3/SSL_SESSION_is_resumable.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_SESSION_print.3 | 6 +- .../lib/libcrypto/man/man3/SSL_SESSION_set1_id.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_accept.3 | 6 +- .../lib/libcrypto/man/man3/SSL_alert_type_string.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_alloc_buffers.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_check_chain.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_clear.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_connect.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_do_handshake.3 | 6 +- .../man/man3/SSL_export_keying_material.3 | 6 +- .../libcrypto/man/man3/SSL_extension_supported.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_free.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get0_peer_scts.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get_SSL_CTX.3 | 6 +- .../lib/libcrypto/man/man3/SSL_get_all_async_fds.3 | 6 +- .../lib/libcrypto/man/man3/SSL_get_certificate.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get_ciphers.3 | 6 +- .../lib/libcrypto/man/man3/SSL_get_client_random.3 | 6 +- .../libcrypto/man/man3/SSL_get_current_cipher.3 | 6 +- .../libcrypto/man/man3/SSL_get_default_timeout.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get_error.3 | 6 +- .../lib/libcrypto/man/man3/SSL_get_extms_support.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get_fd.3 | 6 +- .../libcrypto/man/man3/SSL_get_peer_cert_chain.3 | 6 +- .../libcrypto/man/man3/SSL_get_peer_certificate.3 | 6 +- .../man/man3/SSL_get_peer_signature_nid.3 | 6 +- .../lib/libcrypto/man/man3/SSL_get_peer_tmp_key.3 | 6 +- .../lib/libcrypto/man/man3/SSL_get_psk_identity.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get_rbio.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get_session.3 | 6 +- .../libcrypto/man/man3/SSL_get_shared_sigalgs.3 | 6 +- .../lib/libcrypto/man/man3/SSL_get_verify_result.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_get_version.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_group_to_name.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_in_init.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_key_update.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_library_init.3 | 6 +- .../libcrypto/man/man3/SSL_load_client_CA_file.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_new.3 | 10 ++-- secure/lib/libcrypto/man/man3/SSL_pending.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_read.3 | 6 +- .../lib/libcrypto/man/man3/SSL_read_early_data.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_rstate_string.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_session_reused.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_set1_host.3 | 6 +- .../libcrypto/man/man3/SSL_set_async_callback.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_set_bio.3 | 6 +- .../lib/libcrypto/man/man3/SSL_set_connect_state.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_set_fd.3 | 6 +- .../lib/libcrypto/man/man3/SSL_set_retry_verify.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_set_session.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_set_shutdown.3 | 6 +- .../lib/libcrypto/man/man3/SSL_set_verify_result.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_shutdown.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_state_string.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_want.3 | 6 +- secure/lib/libcrypto/man/man3/SSL_write.3 | 6 +- secure/lib/libcrypto/man/man3/TS_RESP_CTX_new.3 | 6 +- .../libcrypto/man/man3/TS_VERIFY_CTX_set_certs.3 | 6 +- secure/lib/libcrypto/man/man3/UI_STRING.3 | 6 +- secure/lib/libcrypto/man/man3/UI_UTIL_read_pw.3 | 6 +- secure/lib/libcrypto/man/man3/UI_create_method.3 | 6 +- secure/lib/libcrypto/man/man3/UI_new.3 | 6 +- secure/lib/libcrypto/man/man3/X509V3_get_d2i.3 | 6 +- secure/lib/libcrypto/man/man3/X509V3_set_ctx.3 | 6 +- secure/lib/libcrypto/man/man3/X509_ALGOR_dup.3 | 6 +- .../libcrypto/man/man3/X509_CRL_get0_by_serial.3 | 6 +- .../libcrypto/man/man3/X509_EXTENSION_set_object.3 | 6 +- secure/lib/libcrypto/man/man3/X509_LOOKUP.3 | 6 +- .../lib/libcrypto/man/man3/X509_LOOKUP_hash_dir.3 | 6 +- .../lib/libcrypto/man/man3/X509_LOOKUP_meth_new.3 | 6 +- .../man/man3/X509_NAME_ENTRY_get_object.3 | 6 +- .../man/man3/X509_NAME_add_entry_by_txt.3 | 6 +- secure/lib/libcrypto/man/man3/X509_NAME_get0_der.3 | 6 +- .../man/man3/X509_NAME_get_index_by_NID.3 | 6 +- secure/lib/libcrypto/man/man3/X509_NAME_print_ex.3 | 6 +- secure/lib/libcrypto/man/man3/X509_PUBKEY_new.3 | 6 +- secure/lib/libcrypto/man/man3/X509_SIG_get0.3 | 6 +- .../libcrypto/man/man3/X509_STORE_CTX_get_error.3 | 6 +- secure/lib/libcrypto/man/man3/X509_STORE_CTX_new.3 | 6 +- .../man/man3/X509_STORE_CTX_set_verify_cb.3 | 6 +- .../lib/libcrypto/man/man3/X509_STORE_add_cert.3 | 6 +- .../lib/libcrypto/man/man3/X509_STORE_get0_param.3 | 6 +- secure/lib/libcrypto/man/man3/X509_STORE_new.3 | 6 +- .../man/man3/X509_STORE_set_verify_cb_func.3 | 6 +- .../man/man3/X509_VERIFY_PARAM_set_flags.3 | 6 +- secure/lib/libcrypto/man/man3/X509_add_cert.3 | 6 +- secure/lib/libcrypto/man/man3/X509_check_ca.3 | 6 +- secure/lib/libcrypto/man/man3/X509_check_host.3 | 6 +- secure/lib/libcrypto/man/man3/X509_check_issued.3 | 6 +- .../libcrypto/man/man3/X509_check_private_key.3 | 6 +- secure/lib/libcrypto/man/man3/X509_check_purpose.3 | 6 +- secure/lib/libcrypto/man/man3/X509_cmp.3 | 6 +- secure/lib/libcrypto/man/man3/X509_cmp_time.3 | 6 +- secure/lib/libcrypto/man/man3/X509_digest.3 | 6 +- secure/lib/libcrypto/man/man3/X509_dup.3 | 6 +- .../man/man3/X509_get0_distinguishing_id.3 | 6 +- .../lib/libcrypto/man/man3/X509_get0_notBefore.3 | 6 +- .../lib/libcrypto/man/man3/X509_get0_signature.3 | 6 +- secure/lib/libcrypto/man/man3/X509_get0_uids.3 | 6 +- .../libcrypto/man/man3/X509_get_extension_flags.3 | 6 +- secure/lib/libcrypto/man/man3/X509_get_pubkey.3 | 6 +- .../lib/libcrypto/man/man3/X509_get_serialNumber.3 | 6 +- .../lib/libcrypto/man/man3/X509_get_subject_name.3 | 6 +- secure/lib/libcrypto/man/man3/X509_get_version.3 | 6 +- secure/lib/libcrypto/man/man3/X509_load_http.3 | 6 +- secure/lib/libcrypto/man/man3/X509_new.3 | 6 +- secure/lib/libcrypto/man/man3/X509_sign.3 | 6 +- secure/lib/libcrypto/man/man3/X509_verify.3 | 6 +- secure/lib/libcrypto/man/man3/X509_verify_cert.3 | 6 +- .../lib/libcrypto/man/man3/X509v3_get_ext_by_NID.3 | 6 +- secure/lib/libcrypto/man/man3/b2i_PVK_bio_ex.3 | 6 +- .../libcrypto/man/man3/d2i_PKCS8PrivateKey_bio.3 | 6 +- secure/lib/libcrypto/man/man3/d2i_PrivateKey.3 | 6 +- secure/lib/libcrypto/man/man3/d2i_RSAPrivateKey.3 | 12 ++-- secure/lib/libcrypto/man/man3/d2i_SSL_SESSION.3 | 6 +- secure/lib/libcrypto/man/man3/d2i_X509.3 | 8 ++- secure/lib/libcrypto/man/man3/i2d_CMS_bio_stream.3 | 6 +- .../lib/libcrypto/man/man3/i2d_PKCS7_bio_stream.3 | 6 +- secure/lib/libcrypto/man/man3/i2d_re_X509_tbs.3 | 6 +- secure/lib/libcrypto/man/man3/o2i_SCT_LIST.3 | 6 +- secure/lib/libcrypto/man/man3/s2i_ASN1_IA5STRING.3 | 6 +- secure/lib/libcrypto/man/man5/config.5 | 6 +- secure/lib/libcrypto/man/man5/fips_config.5 | 6 +- secure/lib/libcrypto/man/man5/x509v3_config.5 | 10 ++-- .../lib/libcrypto/man/man7/EVP_ASYM_CIPHER-RSA.7 | 6 +- .../lib/libcrypto/man/man7/EVP_ASYM_CIPHER-SM2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-AES.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-ARIA.7 | 6 +- .../lib/libcrypto/man/man7/EVP_CIPHER-BLOWFISH.7 | 6 +- .../lib/libcrypto/man/man7/EVP_CIPHER-CAMELLIA.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-CAST.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-CHACHA.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-DES.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-IDEA.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-NULL.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-RC2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-RC4.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-RC5.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-SEED.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_CIPHER-SM4.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-HKDF.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-KB.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-KRB5KDF.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-PBKDF1.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-PBKDF2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-PKCS12KDF.7 | 14 +++-- secure/lib/libcrypto/man/man7/EVP_KDF-SCRYPT.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-SS.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-SSHKDF.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-TLS13_KDF.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-TLS1_PRF.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-X942-ASN1.7 | 6 +- .../lib/libcrypto/man/man7/EVP_KDF-X942-CONCAT.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KDF-X963.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KEM-RSA.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KEYEXCH-DH.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KEYEXCH-ECDH.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_KEYEXCH-X25519.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MAC-BLAKE2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MAC-CMAC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MAC-GMAC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MAC-HMAC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MAC-KMAC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MAC-Poly1305.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MAC-Siphash.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-BLAKE2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-MD2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-MD4.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-MD5-SHA1.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-MD5.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-MDC2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-NULL.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-RIPEMD160.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-SHA1.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-SHA2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-SHA3.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-SHAKE.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-SM3.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-WHIRLPOOL.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_MD-common.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-DH.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-DSA.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-EC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-FFC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-HMAC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-RSA.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-SM2.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_PKEY-X25519.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_RAND-CTR-DRBG.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_RAND-HASH-DRBG.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_RAND-HMAC-DRBG.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_RAND-SEED-SRC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_RAND-TEST-RAND.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_RAND.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_SIGNATURE-DSA.7 | 6 +- .../lib/libcrypto/man/man7/EVP_SIGNATURE-ECDSA.7 | 6 +- .../lib/libcrypto/man/man7/EVP_SIGNATURE-ED25519.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_SIGNATURE-HMAC.7 | 6 +- secure/lib/libcrypto/man/man7/EVP_SIGNATURE-RSA.7 | 6 +- secure/lib/libcrypto/man/man7/OSSL_PROVIDER-FIPS.7 | 6 +- secure/lib/libcrypto/man/man7/OSSL_PROVIDER-base.7 | 6 +- .../lib/libcrypto/man/man7/OSSL_PROVIDER-default.7 | 6 +- .../lib/libcrypto/man/man7/OSSL_PROVIDER-legacy.7 | 6 +- secure/lib/libcrypto/man/man7/OSSL_PROVIDER-null.7 | 6 +- secure/lib/libcrypto/man/man7/RAND.7 | 6 +- secure/lib/libcrypto/man/man7/RSA-PSS.7 | 6 +- secure/lib/libcrypto/man/man7/X25519.7 | 6 +- secure/lib/libcrypto/man/man7/bio.7 | 6 +- secure/lib/libcrypto/man/man7/crypto.7 | 6 +- secure/lib/libcrypto/man/man7/ct.7 | 6 +- secure/lib/libcrypto/man/man7/des_modes.7 | 6 +- secure/lib/libcrypto/man/man7/evp.7 | 6 +- secure/lib/libcrypto/man/man7/fips_module.7 | 14 ++--- secure/lib/libcrypto/man/man7/life_cycle-cipher.7 | 6 +- secure/lib/libcrypto/man/man7/life_cycle-digest.7 | 6 +- secure/lib/libcrypto/man/man7/life_cycle-kdf.7 | 6 +- secure/lib/libcrypto/man/man7/life_cycle-mac.7 | 6 +- secure/lib/libcrypto/man/man7/life_cycle-pkey.7 | 6 +- secure/lib/libcrypto/man/man7/life_cycle-rand.7 | 6 +- secure/lib/libcrypto/man/man7/migration_guide.7 | 16 +++++- secure/lib/libcrypto/man/man7/openssl-core.h.7 | 6 +- .../libcrypto/man/man7/openssl-core_dispatch.h.7 | 6 +- .../lib/libcrypto/man/man7/openssl-core_names.h.7 | 6 +- secure/lib/libcrypto/man/man7/openssl-env.7 | 6 +- secure/lib/libcrypto/man/man7/openssl-glossary.7 | 6 +- secure/lib/libcrypto/man/man7/openssl-threads.7 | 6 +- .../lib/libcrypto/man/man7/openssl_user_macros.7 | 6 +- secure/lib/libcrypto/man/man7/ossl_store-file.7 | 6 +- secure/lib/libcrypto/man/man7/ossl_store.7 | 6 +- .../lib/libcrypto/man/man7/passphrase-encoding.7 | 6 +- secure/lib/libcrypto/man/man7/property.7 | 6 +- .../lib/libcrypto/man/man7/provider-asym_cipher.7 | 6 +- secure/lib/libcrypto/man/man7/provider-base.7 | 6 +- secure/lib/libcrypto/man/man7/provider-cipher.7 | 6 +- secure/lib/libcrypto/man/man7/provider-decoder.7 | 6 +- secure/lib/libcrypto/man/man7/provider-digest.7 | 6 +- secure/lib/libcrypto/man/man7/provider-encoder.7 | 6 +- secure/lib/libcrypto/man/man7/provider-kdf.7 | 6 +- secure/lib/libcrypto/man/man7/provider-kem.7 | 6 +- secure/lib/libcrypto/man/man7/provider-keyexch.7 | 6 +- secure/lib/libcrypto/man/man7/provider-keymgmt.7 | 6 +- secure/lib/libcrypto/man/man7/provider-mac.7 | 6 +- secure/lib/libcrypto/man/man7/provider-object.7 | 6 +- secure/lib/libcrypto/man/man7/provider-rand.7 | 6 +- secure/lib/libcrypto/man/man7/provider-signature.7 | 6 +- secure/lib/libcrypto/man/man7/provider-storemgmt.7 | 6 +- secure/lib/libcrypto/man/man7/provider.7 | 6 +- secure/lib/libcrypto/man/man7/proxy-certificates.7 | 6 +- secure/lib/libcrypto/man/man7/ssl.7 | 6 +- secure/lib/libcrypto/man/man7/x509.7 | 6 +- secure/usr.bin/openssl/man/CA.pl.1 | 6 +- secure/usr.bin/openssl/man/openssl-asn1parse.1 | 6 +- secure/usr.bin/openssl/man/openssl-ca.1 | 8 +-- secure/usr.bin/openssl/man/openssl-ciphers.1 | 6 +- secure/usr.bin/openssl/man/openssl-cmds.1 | 6 +- secure/usr.bin/openssl/man/openssl-cmp.1 | 37 ++++++++----- secure/usr.bin/openssl/man/openssl-cms.1 | 10 ++-- secure/usr.bin/openssl/man/openssl-crl.1 | 6 +- secure/usr.bin/openssl/man/openssl-crl2pkcs7.1 | 6 +- secure/usr.bin/openssl/man/openssl-dgst.1 | 6 +- secure/usr.bin/openssl/man/openssl-dhparam.1 | 6 +- secure/usr.bin/openssl/man/openssl-dsa.1 | 6 +- secure/usr.bin/openssl/man/openssl-dsaparam.1 | 6 +- secure/usr.bin/openssl/man/openssl-ec.1 | 6 +- secure/usr.bin/openssl/man/openssl-ecparam.1 | 6 +- secure/usr.bin/openssl/man/openssl-enc.1 | 6 +- secure/usr.bin/openssl/man/openssl-engine.1 | 6 +- secure/usr.bin/openssl/man/openssl-errstr.1 | 6 +- secure/usr.bin/openssl/man/openssl-fipsinstall.1 | 6 +- .../usr.bin/openssl/man/openssl-format-options.1 | 6 +- secure/usr.bin/openssl/man/openssl-gendsa.1 | 6 +- secure/usr.bin/openssl/man/openssl-genpkey.1 | 6 +- secure/usr.bin/openssl/man/openssl-genrsa.1 | 6 +- secure/usr.bin/openssl/man/openssl-info.1 | 6 +- secure/usr.bin/openssl/man/openssl-kdf.1 | 6 +- secure/usr.bin/openssl/man/openssl-list.1 | 6 +- secure/usr.bin/openssl/man/openssl-mac.1 | 6 +- .../openssl/man/openssl-namedisplay-options.1 | 6 +- secure/usr.bin/openssl/man/openssl-nseq.1 | 6 +- secure/usr.bin/openssl/man/openssl-ocsp.1 | 6 +- .../openssl/man/openssl-passphrase-options.1 | 6 +- secure/usr.bin/openssl/man/openssl-passwd.1 | 6 +- secure/usr.bin/openssl/man/openssl-pkcs12.1 | 6 +- secure/usr.bin/openssl/man/openssl-pkcs7.1 | 6 +- secure/usr.bin/openssl/man/openssl-pkcs8.1 | 6 +- secure/usr.bin/openssl/man/openssl-pkey.1 | 6 +- secure/usr.bin/openssl/man/openssl-pkeyparam.1 | 6 +- secure/usr.bin/openssl/man/openssl-pkeyutl.1 | 6 +- secure/usr.bin/openssl/man/openssl-prime.1 | 6 +- secure/usr.bin/openssl/man/openssl-rand.1 | 6 +- secure/usr.bin/openssl/man/openssl-rehash.1 | 8 +-- secure/usr.bin/openssl/man/openssl-req.1 | 6 +- secure/usr.bin/openssl/man/openssl-rsa.1 | 6 +- secure/usr.bin/openssl/man/openssl-rsautl.1 | 6 +- secure/usr.bin/openssl/man/openssl-s_client.1 | 6 +- secure/usr.bin/openssl/man/openssl-s_server.1 | 6 +- secure/usr.bin/openssl/man/openssl-s_time.1 | 6 +- secure/usr.bin/openssl/man/openssl-sess_id.1 | 6 +- secure/usr.bin/openssl/man/openssl-smime.1 | 6 +- secure/usr.bin/openssl/man/openssl-speed.1 | 6 +- secure/usr.bin/openssl/man/openssl-spkac.1 | 6 +- secure/usr.bin/openssl/man/openssl-srp.1 | 6 +- secure/usr.bin/openssl/man/openssl-storeutl.1 | 6 +- secure/usr.bin/openssl/man/openssl-ts.1 | 10 ++-- .../openssl/man/openssl-verification-options.1 | 6 +- secure/usr.bin/openssl/man/openssl-verify.1 | 6 +- secure/usr.bin/openssl/man/openssl-version.1 | 6 +- secure/usr.bin/openssl/man/openssl-x509.1 | 6 +- secure/usr.bin/openssl/man/openssl.1 | 6 +- secure/usr.bin/openssl/man/tsget.1 | 6 +- 868 files changed, 2999 insertions(+), 2665 deletions(-) diff --git a/crypto/openssl/CHANGES.md b/crypto/openssl/CHANGES.md index d5c0ba8daf1b..a26bdbdd0ad0 100644 --- a/crypto/openssl/CHANGES.md +++ b/crypto/openssl/CHANGES.md @@ -28,6 +28,30 @@ breaking changes, and mappings for the large list of deprecated functions. [Migration guide]: https://github.com/openssl/openssl/tree/master/doc/man7/migration_guide.pod +### Changes between 3.0.10 and 3.0.11 [19 Sep 2023] + + * Fix POLY1305 MAC implementation corrupting XMM registers on Windows. + + The POLY1305 MAC (message authentication code) implementation in OpenSSL + does not save the contents of non-volatile XMM registers on Windows 64 + platform when calculating the MAC of data larger than 64 bytes. Before + returning to the caller all the XMM registers are set to zero rather than + restoring their previous content. The vulnerable code is used only on newer + x86_64 processors supporting the AVX512-IFMA instructions. + + The consequences of this kind of internal application state corruption can + be various - from no consequences, if the calling application does not + depend on the contents of non-volatile XMM registers at all, to the worst + consequences, where the attacker could get complete control of the + application process. However given the contents of the registers are just + zeroized so the attacker cannot put arbitrary values inside, the most likely + consequence, if any, would be an incorrect result of some application + dependent calculations or a crash leading to a denial of service. + + ([CVE-2023-4807]) + + *Bernd Edlinger* + ### Changes between 3.0.9 and 3.0.10 [1 Aug 2023] * Fix excessive time spent checking DH q parameter value. @@ -19708,6 +19732,7 @@ ndif +[CVE-2023-4807]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-4807 [CVE-2023-3817]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-3817 [CVE-2023-3446]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-3446 [CVE-2023-2975]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-2975 diff --git a/crypto/openssl/NEWS.md b/crypto/openssl/NEWS.md index feed90269760..f7ca47baff87 100644 --- a/crypto/openssl/NEWS.md +++ b/crypto/openssl/NEWS.md @@ -18,6 +18,11 @@ OpenSSL Releases OpenSSL 3.0 ----------- +### Major changes between OpenSSL 3.0.10 and OpenSSL 3.0.11 [19 Sep 2023] + + * Fix POLY1305 MAC implementation corrupting XMM registers on Windows + ([CVE-2023-4807]) + ### Major changes between OpenSSL 3.0.9 and OpenSSL 3.0.10 [1 Aug 2023] * Fix excessive time spent checking DH q parameter value ([CVE-2023-3817]) @@ -1448,6 +1453,7 @@ OpenSSL 0.9.x +[CVE-2023-4807]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-4807 [CVE-2023-3817]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-3817 [CVE-2023-3446]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-3446 [CVE-2023-2975]: https://www.openssl.org/news/vulnerabilities.html#CVE-2023-2975 diff --git a/crypto/openssl/README.md b/crypto/openssl/README.md index f2f4fd39ad05..b848d050132a 100644 --- a/crypto/openssl/README.md +++ b/crypto/openssl/README.md @@ -166,7 +166,7 @@ attempting to develop or distribute cryptographic code. Copyright ========= -Copyright (c) 1998-2022 The OpenSSL Project +Copyright (c) 1998-2023 The OpenSSL Project Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson diff --git a/crypto/openssl/VERSION.dat b/crypto/openssl/VERSION.dat index 34658d316b4c..c4157a86274d 100644 --- a/crypto/openssl/VERSION.dat +++ b/crypto/openssl/VERSION.dat @@ -1,7 +1,7 @@ MAJOR=3 MINOR=0 -PATCH=10 +PATCH=11 PRE_RELEASE_TAG= BUILD_METADATA= -RELEASE_DATE="1 Aug 2023" *** 19495 LINES SKIPPED *** From nobody Fri Oct 13 23:35:33 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jYK6Wdkz4wxMC; Fri, 13 Oct 2023 23: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 4S6jYK5yVKz3D1p; Fri, 13 Oct 2023 23: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=1697240133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jYW/0Gb9XzuaQl7HsABWym81xtswJdUJd4UuECPfg0I=; b=AqWDal1yzx4jvmjwxLIG3RXn6ClaUiJEBgNlunExAj0g6gVnGIyi0EjovDiC8tKTAAPduU Tm/4Cu+wDav6jqBX0qhoboKXHSnXFAR/Gt5fX/tbsWcCPwvT8F6LB8OdN0iDAuukqlHhEd v/g6zVUZXVWIXzXR0t22FjKKl7zwVywgCg/EOQ8+fLe+xprbNgIcaxQj7khr+qzBi42CrP lZSorcprQdf7esujR6DWjjVYC5h7EE4rgUxmKomH47sYBIPzMqgxkfX5/cid/Tnnr0h+Br TX0/8/sG8rMN7sQtmBR49Xpc/3B1XldzrAiCBEMYNpFtfs0qQGd6AB+q1jNa+w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697240133; a=rsa-sha256; cv=none; b=dQR4HHbJCkie+VJSGWy+TomIRb3LpBlW3VTJHjW+wXRBCY6rYS6di/8eelRZCBODqaJ4VL D2WhCAG85u4M60fdEIHUomEjAuB34CquAq76XvdZcKxIrBxQPhkubkv46y+Sq0hVLuKQcn TSfA38PoAYHLnT7iL2cZ93gkE6cG7racSNF8f2gaK7qCJM3Y0XMucX9XGt18nPMPShoaS+ NLTiueKy6D8P7W9fWFENB7bSRf8hZI7tn+dA0fW59gEXSdAHAlV1XoFZwNzlt3h3HJ+i5q s0H9QJz2lAAN5nySOBlp3rwyhJLDWOiCBx/HL91JvJRlS+R9POqVs0x/Mdn1YQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jYW/0Gb9XzuaQl7HsABWym81xtswJdUJd4UuECPfg0I=; b=EQVG7lsgPHo+Av0VIGF/D2IAZAqwEMo9Umw5OVl4ONFWeKNglvNq5wSp7dy2PTIg2QwIFn rcNFQh5c6XbPZhOTkJtXVEGM4mTL8vtZNkq+d1P0s9WgR6i+/8mGEnluaRnItehdzdJVum biss9aS0bePQG47X3yZtsZrh5gXizTk92YcbJbFfFAu4/v2cn4ZH1yTurAulOKAWl6EJnm MM76utKnFJ0YQ7K3j5Cm58Orz8woeMLZxxBxMMfBQNSxlFV1D9mGhHz73LwtjoQDdyObI8 g/mXTfTeUcnTo/8jCZ3+dAqafiIrwsLmxA3EO6NZX2rZI2ki0IgFbbjJqFrKtg== 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 4S6jYK51JZz16SC; Fri, 13 Oct 2023 23:35:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNZX8q098758; Fri, 13 Oct 2023 23:35:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNZXpk098755; Fri, 13 Oct 2023 23:35:33 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:35:33 GMT Message-Id: <202310132335.39DNZXpk098755@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 80b003e81684 - releng/14.0 - freebsd-update: add a note about when files may be deleted List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 80b003e816849b7809e7c64e01bf3acd543e4357 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=80b003e816849b7809e7c64e01bf3acd543e4357 commit 80b003e816849b7809e7c64e01bf3acd543e4357 Author: Ed Maste AuthorDate: 2023-09-29 15:47:41 +0000 Commit: Ed Maste CommitDate: 2023-10-13 23:17:39 +0000 freebsd-update: add a note about when files may be deleted Files under /var/db/freebsd-update are required during the upgrade process, and to support rollback. They may be deleted if no upgrade is in progress and rollback will not be required. PR: 273601 Reviewed by: bcr Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42022 (cherry picked from commit 30beebe444f5f415a388be9df91107246bd32674) (cherry picked from commit ffe4456d7d9f2c6bb14e9b747766adc3042f0b9e) Approved by: re (gjb) --- usr.sbin/freebsd-update/freebsd-update.8 | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/usr.sbin/freebsd-update/freebsd-update.8 b/usr.sbin/freebsd-update/freebsd-update.8 index 471ae359c917..0d50ac8822de 100644 --- a/usr.sbin/freebsd-update/freebsd-update.8 +++ b/usr.sbin/freebsd-update/freebsd-update.8 @@ -23,7 +23,7 @@ .\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd September 10, 2022 +.Dd October 4, 2023 .Dt FREEBSD-UPDATE 8 .Os .Sh NAME @@ -251,7 +251,11 @@ configuration file. .It Pa /var/db/freebsd-update/ Default location where .Nm -stores temporary files and downloaded updates. +stores temporary files, downloaded updates, and files required for rollback. +All files under +.Pa /var/db/freebsd-update/ +may be deleted if an upgrade is not in progress and rollback will not be +required. .El .Sh SEE ALSO .Xr freebsd-version 1 , From nobody Fri Oct 13 23:35:34 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jYM0pHCz4wwfk; Fri, 13 Oct 2023 23: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 4S6jYM01f6z3DDC; Fri, 13 Oct 2023 23: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=1697240135; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZtivDS8d9eRYlO8yyvw6kDnHlgtUr8ZZxH1mU+HjxoM=; b=jDFRx7BcLFiiG0rD7iEjoOHWY8btK/Txshvx3KjW0cgE8fN1W8KgdksT/As4U++gnN6fEU EuUfU2DCGTr62eGjhB24qaNAFyDjHGhpZKeY1Hhyvg9mPNE/TNUkesK5ULENX2f7j0h+Sp zDETf2tOjtoriXpY9W/noABlsDGSJ4MA59AKl3xQ3IE/NOhL6P6P8tER7FU+BLz5b6z5vO i5kOXOq3k88nLr7/YpIsR10fZRrpbR06XFcmuU+C9ex+oyASdwzItx6sviD5WYSZKhzhSC OmX2l1pWBQ61JTvxDzXqy2eDISDsbzXM4L+v9873gnBOGvM+SER1xVnU/W023Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697240135; a=rsa-sha256; cv=none; b=U+8u4IA22c3bEzb6eRBzbhJZ1Q06gxVs9fCTH3kxk9cUeP91CGSZtaihohufSh7Cdellbh 66asQ2vxdPBBNjBK7oP89psQsK9zCC0CCAHTNPl+celFMVoa+erCK+tlNd50Rcmlqxx0m3 XNaVvW0s/wC2M/z/VpfLNfstyapp/aj+dHoPJb+19EUQrxK2n0sE//+VHEOenYZS/Ob05p jd450cnXNP3OfcRW4bmMJrbyHGXOyYYyOCIMj83njGTxayDIicxHqpy6YJMQRxxH6yTU5z PAK32VwtvrlEu1KfTrNVXazW/0hJ36RTdlUp5suwtImJ62M7AjICfN/DZh22qQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240135; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZtivDS8d9eRYlO8yyvw6kDnHlgtUr8ZZxH1mU+HjxoM=; b=goAhJ5DDmKRwz6J9dns4WVOCVaaaWUv9OPvwEKUEWQGgSEsk/Lvew0/OlCbHq3aFGQIHPJ m4C5Supyr7rriIY4ukkyEbu2tuXG2/q2kFxlYQlVT5gIRxgnP4ciHeAPAQwY5pBZ3us+GH PApnGXWXw4GrF0hK8ljfTma/BfA38qP4ha3D5Law37VV36emusz7eDl6NdP9CNtJgVik7d F0u+N4FbshR5VpOAGiSG9WgcMfpmHE24Bg6sx34a8+VfJu53Q1RrTy3OCS8g4fPiCki2j9 Uor2VfCK1hG9vZO88Yso+qHIXC33ZmPmigUM4sLcxN0V1UBxgjt+G2lwhSS7wA== 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 4S6jYL5yrVz16mw; Fri, 13 Oct 2023 23:35:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNZY5E098805; Fri, 13 Oct 2023 23:35:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNZYf7098802; Fri, 13 Oct 2023 23:35:34 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:35:34 GMT Message-Id: <202310132335.39DNZYf7098802@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: fdda68c5f1a6 - releng/14.0 - freebsd-update: Allow for upper/lowercase y/n List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: fdda68c5f1a62010416f3e6b358d04b50d993d6a Auto-Submitted: auto-generated The branch releng/14.0 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=fdda68c5f1a62010416f3e6b358d04b50d993d6a commit fdda68c5f1a62010416f3e6b358d04b50d993d6a Author: Juraj Lutter AuthorDate: 2023-09-17 16:15:27 +0000 Commit: Ed Maste CommitDate: 2023-10-13 23:17:45 +0000 freebsd-update: Allow for upper/lowercase y/n Allow for upper/lowercase y/n in "Does this look right?" question. Reviewed by: emaste Approved by: emaste Differential revision: https://reviews.freebsd.org/D40434 (cherry picked from commit 39f4633b3d2354c01a290d5f422dce7874061769) (cherry picked from commit a39ddf881ad8530013c5e4cc5f84b3a6b58cca51) Approved by: re (gjb) --- usr.sbin/freebsd-update/freebsd-update.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/usr.sbin/freebsd-update/freebsd-update.sh b/usr.sbin/freebsd-update/freebsd-update.sh index b9b277cca1c8..c6432dcd6b0e 100644 --- a/usr.sbin/freebsd-update/freebsd-update.sh +++ b/usr.sbin/freebsd-update/freebsd-update.sh @@ -1202,10 +1202,10 @@ fetch_progress () { continuep () { while read -p "Does this look reasonable (y/n)? " CONTINUE; do case "${CONTINUE}" in - y*) + [yY]*) return 0 ;; - n*) + [nN]*) return 1 ;; esac From nobody Fri Oct 13 23:43:09 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jk52pP2z4wxlR; Fri, 13 Oct 2023 23:43: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 4S6jk52NP1z3FNF; Fri, 13 Oct 2023 23:43:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240589; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oS3S4jF46L0nNeT5ouqlpGRG1ZMdDZbFtLzsofIudr8=; b=mTon1p+GfeemulyC0euXxlfS+eeIiFrf4swomsDIvgogDAxA/XcXUSZU/RgEWuOUYa1nav 5LG/afSrkT+vTPNSRhBKSNrOeht+8cltSW7iiDxBscDN5v7tdT14djWa+X3i+KdUgBU+HE /Byz3ocI0avVb8ab7GFuC6pEJW+5ilZRU6UYSZ5V2ywtf8JWsy/AYDlnI5N9qNvjUKvvBV kLx1/Igp3nfwN1+3YL555FNrEqVVvJVC1akzencm6pv5EH9JWQFsQTP2CmV91gy2P8Rtjr aNQ+JETcV7V/mGZAfeIHX/tW7zdjRD9OQl7fCY1hLw1oQMjKoYviRjAcPvSohQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697240589; a=rsa-sha256; cv=none; b=fEfNlYNrx3bqKrUSx2E+zSZQTICeAUE+CBNcSKVGA6KYnuSFt1CSdZ6rQnpQLGDp1MzgFW 12gC/MB0Uui98qDAfRLR9GstyjQW4zKQw6SoXGkYq+oSl+fLNNjOa/G0eCDpbkJOIPEoqZ vRtp5KwXxdS3WcQUcWQoW5Dzpqk1Tih3sYTKlfY+9NY2sd5znRjqnStA3mgKFoIjZRcmB1 EBQ4LkP8TspeSfcLotkv7n4CVsm5EhscyK8BZy4cIonEhv1n3QeVM0vpnSdc+8CG/tYPn7 gkIeyb2ggU7QBpVi5zl8Mm8hFTJLCAMN6bQ0Hz9WWINIEve0XQeytAdz5Ej72g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240589; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=oS3S4jF46L0nNeT5ouqlpGRG1ZMdDZbFtLzsofIudr8=; b=IGKNDJ5xsFau9lFke0sMH6MsD8oTQ6u946UBPRQ/53VD1q6EJH18t2Rn8V5Ag1VmzqrqTs td8YFbBs3GdVADYghizThisZrE6zkMQo8PNS0G+f2Y7msEjussRyESN38Cbr6lVilLwpmT 7/uqmrSrDceosb2d5onbxo1ucP+FhAmSMjqpIOFHABqdM7cxwJ7hGk6dVFQoxCJuIXKuaE j4MwQ8lxibIJaZUQtFQMSfSvd059nRwaI7CxYA3wdBwrR3h6CY5D0ClsaTcvyCelizz6Dw 730AoatHVMTTauzlSBGVOohlcg8LK6O0ffkmVL+T5mU3c4xb92R6RgzwlQyOog== 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 4S6jk51Ry3z17Xj; Fri, 13 Oct 2023 23:43:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNh9sO014674; Fri, 13 Oct 2023 23:43:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNh9FY014671; Fri, 13 Oct 2023 23:43:09 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:43:09 GMT Message-Id: <202310132343.39DNh9FY014671@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 71a06765dc67 - stable/14 - vfs: don't provoke recycling non-free vnodes without a good reason List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 71a06765dc67090735293027136c8a0b5fc8c173 Auto-Submitted: auto-generated The branch stable/14 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=71a06765dc67090735293027136c8a0b5fc8c173 commit 71a06765dc67090735293027136c8a0b5fc8c173 Author: Mateusz Guzik AuthorDate: 2023-09-14 16:13:01 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:41:46 +0000 vfs: don't provoke recycling non-free vnodes without a good reason If the total number of free vnodes is at or above target, there is no point creating more of them. Tested by: pho (in a bigger patch) (cherry picked from commit 8733bc277a383cf59f38a83956f4f523869cfc90) --- sys/kern/vfs_subr.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 0251525a50c7..e37f8697efa2 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1802,11 +1802,19 @@ vn_alloc_hard(struct mount *mp) mtx_unlock(&vnode_list_mtx); goto alloc; } - rfreevnodes = vnlru_read_freevnodes(); - if (vn_alloc_cyclecount++ >= rfreevnodes) { - vn_alloc_cyclecount = 0; - vstir = true; + + if (vn_alloc_cyclecount != 0) { + rfreevnodes = vnlru_read_freevnodes(); + if (rfreevnodes < wantfreevnodes) { + if (vn_alloc_cyclecount++ >= rfreevnodes) { + vn_alloc_cyclecount = 0; + vstir = true; + } + } else { + vn_alloc_cyclecount = 0; + } } + /* * Grow the vnode cache if it will not be above its target max * after growing. Otherwise, if the free list is nonempty, try From nobody Fri Oct 13 23:43:10 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jk642CJz4wxrr; Fri, 13 Oct 2023 23:43:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6jk63Rd3z3FTf; Fri, 13 Oct 2023 23:43:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240590; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6QTwsIPll5T9oRNpKZONgSR+hQiQolKgFw3gKNsO5og=; b=SWWJaNkloGKG8mwDKd3TlDXyj/WMTHz55rKX3tLcjL22DWcVDZEBEWIstqM4uGlEMcArbo 1l0oRBd1mAqVjSKvb7YybetrY8aWpOPDJUG/lANzlbjJD6lncJuJIg5hYeU2konS/Jxw/m 4cvKpARVriWIhTM4S25AyDlCuIYPJWG/3+mbDxcuyeKMR+7x6PegtOJak9TSAdrrGjNZ2d H3sPAoaJD7nEKihnpctEbrvc18LtFx+WBTu5O90Q6t0h0Dy/aUknfWOlu/rnC5IG5fZejL dwGvyoDSVzDpydJpXWxy+1+5PntN7SSV8ijUtwz4iK67avApTmPZQ2FCyK14BA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697240590; a=rsa-sha256; cv=none; b=YzgYS22q/oH59wAigL2xv8JhfVQbfzBljro9kNEReQfPewNSGOK/wWJxymI/gpxmv0FGnu xLTAFbBoEwiGPZ2vRbtqdkoOSNMKtwRxrXhtXZ+Dvx2N4uuKsJRlYYsF4TI8bg+xTob370 MlV+VoDRuzSOhT8Pm5CwzyMsOOHnnx+9GnJ4oLy1NtcN9wpqI6p1fHza6ylll3DppTPY5t tk3D4a11LULfxjQIYUtR2Z7IlQdlIhb3rEcnBsbO3BsGvo3ttdnKn9Vv5JluH6Rb29O+EQ 6/lGM+MiLnFjCIQW1ksHIJ9NA0GvdCG+DUhzeSTO+7g8ans5liOjsnBereTMMA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240590; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6QTwsIPll5T9oRNpKZONgSR+hQiQolKgFw3gKNsO5og=; b=QABeU7KdVOnojNRmuq+4f+HNWnpShuQY4Rjfm7vgeU+Y5j3tIOnzODVeF0AEcGcym4p0hr Taz063UgMZ2ThTs8OFjnjNrwNz69846cZSv9W5N2VtxVsqGxPTQUZDNAuCnE51ETSaB2IN do2aXD1fZ/JQrX/YqkeCrjAA2H1GE1SCunzk7DfOXOw6LB/ndiChQJ2teJmCm5wJWu0igq uht70fntbkh8UHLg473yDQBaGK69F6WL/SAZXqSImGSBXQA6Gyfnd1Zts7xeQ7aPMyQOWd 76zfj6RtS4oNuZ+nYrlEGEPuF5QEiAfilGNHYo9G4aqUHAkXGXalHA1XS3OCyw== 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 4S6jk62Tbsz17K2; Fri, 13 Oct 2023 23:43:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNhAjb014723; Fri, 13 Oct 2023 23:43:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNhAEp014720; Fri, 13 Oct 2023 23:43:10 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:43:10 GMT Message-Id: <202310132343.39DNhAEp014720@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 9ff38b3d881c - stable/14 - vfs: be less eager to call uma_reclaim(UMA_RECLAIM_DRAIN) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 9ff38b3d881ce910803500fe3460f8283c96b4b2 Auto-Submitted: auto-generated The branch stable/14 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=9ff38b3d881ce910803500fe3460f8283c96b4b2 commit 9ff38b3d881ce910803500fe3460f8283c96b4b2 Author: Mateusz Guzik AuthorDate: 2023-10-10 16:15:53 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:41:46 +0000 vfs: be less eager to call uma_reclaim(UMA_RECLAIM_DRAIN) In face of vnode shortage the count very easily can go few units above the limit before going back down. Calling uma_reclaim results in massive amount of work which in this case is not warranted. Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 1bf55a739e754765fa2dc15ab6481fe411084be3) --- sys/kern/vfs_subr.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index e37f8697efa2..e7e612254ba2 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1674,7 +1674,12 @@ vnlru_proc(void) target = target / 10 + 1; done = vlrureclaim(reclaim_nc_src, trigger, target); mtx_unlock(&vnode_list_mtx); - if (onumvnodes > desiredvnodes && numvnodes <= desiredvnodes) + /* + * Total number of vnodes can transiently go slightly above the + * limit (see vn_alloc_hard), no need to call uma_reclaim if + * this happens. + */ + if (onumvnodes + 1000 > desiredvnodes && numvnodes <= desiredvnodes) uma_reclaim(UMA_RECLAIM_DRAIN); if (done == 0) { if (force == 0 || force == 1) { From nobody Fri Oct 13 23:43:11 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jk74lYkz4wxrt; Fri, 13 Oct 2023 23:43:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6jk744SJz3FdX; Fri, 13 Oct 2023 23:43:11 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240591; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lbASgz8j5hUX7MZQmdMsVgczp+eV1QiCaPZG2hx7EaA=; b=IBsrGNZfJEtIbb8QvX/SBWobK+HeuK99tW8uQOI5FkPhq0pNmDkLkti9T6ewOj+Lqz9uJy kuFuU9ObfID9My4BlOOSukY9MhSGORZiDDIGYsQhRArphuc6PpJtHT1g35EJXTNLYShdxl 9VeMxLlzXvkwxPJ3wQjIpgtXNIYRFkADjZiG1PdvpSG+TWVEjfzKvRdhyzBJ+gue4uJVd8 8diwVYmdx9hfQiY49oTQSyfHzIfm1OUul7JzQQf6nRzJauvcKmeOX2BbCHjQGK02myFn7J 31y3kHchGkqv9t7iTY4cphibO9ohD8jMlKTXB6/PiXq5T8tHuK6ODJp79gMmcA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697240591; a=rsa-sha256; cv=none; b=YxYzJyh6GO8C8N6H9DZSh0zgD0FGa6gBXlPP+4L02XCukoO8D0yh84hwgWMdmo5OGw81Kj 4VLzla6FZv3C5Muy9RVyXEMOZrS/CDg7aunbp+/iZrdx5eCO8R6eke2eTTk2ktNf8hzrXQ 7nB3Ieabg0zqtVumE6Dr7RYKxVSEjlTvpTKLux5j6wL735Ov8Ozf39v6nKFoPQkQ8zytWa s9gaiIFZqvPu3OI0M4NY8NyVl7QTwqBrYogz8MPgjS4+rsAR6Gp0/qyRDo0Mb5b5z9Yzlh dKhnlvz2CPN+m5sdRNPFS/2Opdc59MCOpblTociucNP4oNockgp2mjGEYOjaTA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240591; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lbASgz8j5hUX7MZQmdMsVgczp+eV1QiCaPZG2hx7EaA=; b=WtSpQtPcvtG8ZhNpKqt6cfLRFUyKAPmGil8IMUscMmHKkaedZF9nB1uc8JLKzMunuyEbDr FCPBQTkgWzlylrQxxLkdI5zA22nFdNw5BP5OLCM7zJT0p4ONPjBHleeikpOKb8NP9ePbwQ OWU0YVSmpRTsEIImnHvxCVu2VHUPzuUvoPjOko4CCvi0mlEk2IlO4vrobg2YBPrn0S/psm rw08qFYqkV8QIFXnXVcBSE89XvXol3aW0KAN/1UDFkGIdN/O0RMxODifJ2DDj2RA7irWmc Zv+1SB5gItcBLNIvL/o1hXfDOSHyOCCjZqNGvKjIwFqeGVUBn0ZdBbjtI8SVwQ== 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 4S6jk739Xnz17VF; Fri, 13 Oct 2023 23:43:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNhBj0014767; Fri, 13 Oct 2023 23:43:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNhBEL014764; Fri, 13 Oct 2023 23:43:11 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:43:11 GMT Message-Id: <202310132343.39DNhBEL014764@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 5cf1c99d4c42 - stable/14 - vfs: consult freevnodes in vnlru_kick_cond List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 5cf1c99d4c425ab196dfa3bafcf3a5f142eab887 Auto-Submitted: auto-generated The branch stable/14 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=5cf1c99d4c425ab196dfa3bafcf3a5f142eab887 commit 5cf1c99d4c425ab196dfa3bafcf3a5f142eab887 Author: Mateusz Guzik AuthorDate: 2023-10-10 16:19:53 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:41:46 +0000 vfs: consult freevnodes in vnlru_kick_cond If the count is high enough there is no point trying to produce more. Not going there reduces traffic on the vnode_list mtx. This further shaves total real time in a test mentioned in: 74be676d87745eb7 ("vfs: drop one vnode list lock trip during vnlru free recycle") -- 20 instances of find each creating 1 million vnodes, while total limit is set to 400k. Time goes down from ~41 to ~35 seconds. Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 23ef25d25d989e7213bc1d3ef32b0f48a9eb2537) --- sys/kern/vfs_subr.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index e7e612254ba2..5e39a149ef36 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1584,6 +1584,9 @@ static void vnlru_kick_cond(void) { + if (vnlru_read_freevnodes() > wantfreevnodes) + return; + if (vnlruproc_sig) return; mtx_lock(&vnode_list_mtx); @@ -1849,9 +1852,8 @@ vn_alloc_hard(struct mount *mp) } alloc: mtx_assert(&vnode_list_mtx, MA_NOTOWNED); - rnumvnodes = atomic_fetchadd_long(&numvnodes, 1) + 1; - if (vnlru_under(rnumvnodes, vlowat)) - vnlru_kick_cond(); + atomic_add_long(&numvnodes, 1); + vnlru_kick_cond(); return (uma_zalloc_smr(vnode_zone, M_WAITOK)); } From nobody Fri Oct 13 23:43:12 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jk870Xpz4wxpH; Fri, 13 Oct 2023 23:43:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6jk85BMKz3Ff7; Fri, 13 Oct 2023 23:43:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240592; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z89uwQsX8clhsM53GPmCDbJSvjNCB1WFCb9eXkd7Iqk=; b=O19qaWoMiYcmkcwE9hMy6rJVYV2gRagM7Yc101frHbLjXrI9j2qgyfxsvyLEaofeneWCt4 YnyGtEQcRFEKREhwviqo0WtJDUIcIRRd21drH/eX1593VW02k/Kz3eRJMzJSCyg6YnwLXn pRxJjOqHg6dEBfcM4mlyGJnRsv2/Wd4Y4bfZv1AHuy67DzLvadBWLVP51DMkXrhj3ujMAv xsZSIEdVtKkbNsoFoZ4C5qPS9oVoLeKGMleu/QiLg7mZ8D+9ZNsu27WmAAysUz4bHoyql4 i9+fMnxhYsfSDjZ33fFKBu5CjMCPtc+U+uNPoDbvSdduwULlz0ZXrifJ8tClQQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697240592; a=rsa-sha256; cv=none; b=OYOQdE7s/87DkSvwoisJtcF4QjDZpowQlIwhQFlJGY6JwuqO1rRo96wZlvVLFJt8v9B4XY oKkJ5NsAqonBTtAa3lNthz86tor+YroXZaBFEJYZtpCsmUkr5niRLaNKuKyfY+Z8bJ469A Ghi1K9BILl8+NVKFQkMpTMc0fk/U/JQJYDmWxCzTfc9qSOWbwUkHkrnDcDrJo7V4D2cfyQ T9x/74QZysmrxSp4vGhkHfYMh3hFqaoFzPiollzIL4vuxPi6ORng1kx+YIICzqkFgNK8Yv SZO83gD/l6uhqfXndkWt7BZk8mtMSNkdeJT4eQVq4sT/ul/TVAA8jGkIoXoEFA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240592; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Z89uwQsX8clhsM53GPmCDbJSvjNCB1WFCb9eXkd7Iqk=; b=ClaZnwQYA19frqQj4ud4pB3ou8Rht2AIScDpds+y9EvwPfyDr6z4Wfk9jsABW6fld5vIkf +EBdrQSdeFL5Z5loyZF2fJNG/Z/uZIYKpbH7cJgLqymxBvrEijFutMJ7AxYBQil3qcMMGd h/oEdk68kuYjjOw1X+wg0nM93o0ujK71UM+Z4F2a6IZ4ED9xx4W2zr1g1CNSzh10kl7no2 GC/CbZFg5mzT7g4wrLVwBW8feOvxhTSx2a58NMcwGCIKZ6ZiFbNYzxoZdo0pYkgIgrP4qV c3uNPyRRWU6MmGVEvWgxXrepnd8Bl8+VMYPaYkrgYTtZyNTM5FfiPd2LXHW25w== 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 4S6jk84FTpz17Xk; Fri, 13 Oct 2023 23:43:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNhCTZ014833; Fri, 13 Oct 2023 23:43:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNhCZ4014830; Fri, 13 Oct 2023 23:43:12 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:43:12 GMT Message-Id: <202310132343.39DNhCZ4014830@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: cfbc3927613a - stable/14 - vfs: prefix regular vnlru with a special case for free vnodes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: cfbc3927613a8455498db5ff3e67046a4dab15a1 Auto-Submitted: auto-generated The branch stable/14 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=cfbc3927613a8455498db5ff3e67046a4dab15a1 commit cfbc3927613a8455498db5ff3e67046a4dab15a1 Author: Mateusz Guzik AuthorDate: 2023-09-14 19:08:40 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:41:47 +0000 vfs: prefix regular vnlru with a special case for free vnodes Works around severe performance problems in certain corner cases, see the commentary added. Modifying vnlru logic has proven rather error prone in the past and a release is near, thus take the easy way out and fix it without having to dig into the current machinery. (cherry picked from commit 90a008e94bb205e5b8f3c41d57e155b59a6be95d) --- sys/kern/vfs_subr.c | 117 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 113 insertions(+), 4 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 5e39a149ef36..5834feff080c 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1427,6 +1427,14 @@ vnlru_free_locked(int count) return (ret); } +static int +vnlru_free(int count) +{ + + mtx_lock(&vnode_list_mtx); + return (vnlru_free_locked(count)); +} + void vnlru_free_vfsops(int count, struct vfsops *mnt_op, struct vnode *mvp) { @@ -1594,6 +1602,106 @@ vnlru_kick_cond(void) mtx_unlock(&vnode_list_mtx); } +static void +vnlru_proc_sleep(void) +{ + + if (vnlruproc_sig) { + vnlruproc_sig = 0; + wakeup(&vnlruproc_sig); + } + msleep(vnlruproc, &vnode_list_mtx, PVFS|PDROP, "vlruwt", hz); +} + +/* + * A lighter version of the machinery below. + * + * Tries to reach goals only by recycling free vnodes and does not invoke + * uma_reclaim(UMA_RECLAIM_DRAIN). + * + * This works around pathological behavior in vnlru in presence of tons of free + * vnodes, but without having to rewrite the machinery at this time. Said + * behavior boils down to continuously trying to reclaim all kinds of vnodes + * (cycling through all levels of "force") when the count is transiently above + * limit. This happens a lot when all vnodes are used up and vn_alloc + * speculatively increments the counter. + * + * Sample testcase: vnode limit 8388608, 20 separate directory trees each with + * 1 million files in total and 20 find(1) processes stating them in parallel + * (one per each tree). + * + * On a kernel with only stock machinery this needs anywhere between 60 and 120 + * seconds to execute (time varies *wildly* between runs). With the workaround + * it consistently stays around 20 seconds. + * + * That is to say the entire thing needs a fundamental redesign (most notably + * to accommodate faster recycling), the above only tries to get it ouf the way. + * + * Return values are: + * -1 -- fallback to regular vnlru loop + * 0 -- do nothing, go to sleep + * >0 -- recycle this many vnodes + */ +static long +vnlru_proc_light_pick(void) +{ + u_long rnumvnodes, rfreevnodes; + + if (vstir || vnlruproc_sig == 1) + return (-1); + + rnumvnodes = atomic_load_long(&numvnodes); + rfreevnodes = vnlru_read_freevnodes(); + + /* + * vnode limit might have changed and now we may be at a significant + * excess. Bail if we can't sort it out with free vnodes. + */ + if (rnumvnodes > desiredvnodes) { + if (rnumvnodes - rfreevnodes >= desiredvnodes || + rfreevnodes <= wantfreevnodes) { + return (-1); + } + + return (rnumvnodes - desiredvnodes); + } + + /* + * Don't try to reach wantfreevnodes target if there are too few vnodes + * to begin with. + */ + if (rnumvnodes < wantfreevnodes) { + return (0); + } + + if (rfreevnodes < wantfreevnodes) { + return (-1); + } + + return (0); +} + +static bool +vnlru_proc_light(void) +{ + long freecount; + + mtx_assert(&vnode_list_mtx, MA_NOTOWNED); + + freecount = vnlru_proc_light_pick(); + if (freecount == -1) + return (false); + + if (freecount != 0) { + vnlru_free(freecount); + } + + mtx_lock(&vnode_list_mtx); + vnlru_proc_sleep(); + mtx_assert(&vnode_list_mtx, MA_NOTOWNED); + return (true); +} + static void vnlru_proc(void) { @@ -1609,6 +1717,10 @@ vnlru_proc(void) want_reread = false; for (;;) { kproc_suspend_check(vnlruproc); + + if (force == 0 && vnlru_proc_light()) + continue; + mtx_lock(&vnode_list_mtx); rnumvnodes = atomic_load_long(&numvnodes); @@ -1639,10 +1751,7 @@ vnlru_proc(void) vstir = false; } if (force == 0 && !vnlru_under(rnumvnodes, vlowat)) { - vnlruproc_sig = 0; - wakeup(&vnlruproc_sig); - msleep(vnlruproc, &vnode_list_mtx, - PVFS|PDROP, "vlruwt", hz); + vnlru_proc_sleep(); continue; } rfreevnodes = vnlru_read_freevnodes(); From nobody Fri Oct 13 23:43:13 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jk970fXz4wxrx; Fri, 13 Oct 2023 23:43:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6jk968Yqz3Fgm; Fri, 13 Oct 2023 23:43:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240593; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gMmFT0YZS02ae0AQVJKkFgN7z5psqT12dwel+d2caOk=; b=U3N4mqzoTDA1yy+hJakfeLi0FzPTxnSlKI7wrpnimE40O5u+HC2GfK+OnJtVr3DjSE8bz6 7qC3+ZOxP6Ldx7WWR+qNaZAwEkMvifGDOVMqHEtfUAZoTZ76EzL9pZu1XvPsb7ubKXx+z+ sTdJNeHla+RQ7TA01mZKofzyd+zA6Mrnd1SAtQ+wYOItJGEyv6iRArKCh27dfcau9bthW8 m98szT9xP3HzqjBET2gyhUrfHBAYmFT0YRRkswMvkWYeEDixsoVqa7GOmEdZ+DVX3qK7nq zLVJmYW2Fc/VE92LR7OmdJ4Uh4fdE/ZcS5oduZXluHo5Arz/5ffJ6+PpGj6I3Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697240593; a=rsa-sha256; cv=none; b=SHb5chLaDj7oxrQkbPyQs1hibvsRxsOqipgW0HmLLoAI54XAfuFB5SatRnTPGM5LQwo3Bb 976dm5grhcvH4pIZHpCg8hhMO3aUL305vErN0w+PXolVZgGcmEib68l2hv9JdeCyt1Hoa6 lGE6OptPUQDfyoE101M9rdHpO1eiojaWKJ2LAYgks9QXF6h/YMsZX/J6nG9AMQzX3Z7gzb OWOHvKgB1xC1IHlqirmvbrHAmhDfQ6aE2qDzIPKjIebOYvixDC5KkU8v/I5CV0COUUMD7b RDX7dL8RkEm/pS4EYAg8hltMYTZq8jiftdoZ+XXAp/BARu80mCuEws02RAVWnQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240593; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gMmFT0YZS02ae0AQVJKkFgN7z5psqT12dwel+d2caOk=; b=nZKWoNS+4lNE7RmF1nLkCueAGaFDYoVlC3NSbT3d133QynlylkT2+mLKkK2/VqvDc0FI9G TMnJfzkwCUb2k5XcBBX1i/cVamDgnwIADHWOxcmUZx65zYMtTC9U8cXSg8EDIEMCUAL71h OkN11Hz2nvQCFsaKXh3IILLRuo+gBhJ2wpHtG71liOzIYD+icD8Cgo3JBxXjePRRy2yCQX VFX6ADD3VTcM9rA98kv2YkoudBA2R3d+KbWcUimmLo8Wfoq0vC0OuUmR+tEgcHCa/EpIhi FaKCLjmjsfoMOSUQLBtiNotKlF/nQOvKuQt0D+1c8CQn/tgkUoEVz8s1TUL9HQ== 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 4S6jk95Fcwz16ny; Fri, 13 Oct 2023 23:43:13 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNhDkS014880; Fri, 13 Oct 2023 23:43:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNhDpj014877; Fri, 13 Oct 2023 23:43:13 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:43:13 GMT Message-Id: <202310132343.39DNhDpj014877@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: e3b2372a76c1 - stable/14 - vfs: don't recycle transiently excess vnodes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e3b2372a76c18551529e1aa43d185f602dccdbf1 Auto-Submitted: auto-generated The branch stable/14 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=e3b2372a76c18551529e1aa43d185f602dccdbf1 commit e3b2372a76c18551529e1aa43d185f602dccdbf1 Author: Mateusz Guzik AuthorDate: 2023-10-11 06:39:48 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:41:47 +0000 vfs: don't recycle transiently excess vnodes Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit a4f753e812d8913e9be481c6dfa1574c7f032a56) --- sys/kern/vfs_subr.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 5834feff080c..52c14b4a234a 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1656,8 +1656,12 @@ vnlru_proc_light_pick(void) /* * vnode limit might have changed and now we may be at a significant * excess. Bail if we can't sort it out with free vnodes. + * + * Due to atomic updates the count can legitimately go above + * the limit for a short period, don't bother doing anything in + * that case. */ - if (rnumvnodes > desiredvnodes) { + if (rnumvnodes > desiredvnodes + 10) { if (rnumvnodes - rfreevnodes >= desiredvnodes || rfreevnodes <= wantfreevnodes) { return (-1); @@ -1734,7 +1738,7 @@ vnlru_proc(void) * adjusted using its sysctl, or emergency growth), first * try to reduce it by discarding from the free list. */ - if (rnumvnodes > desiredvnodes) { + if (rnumvnodes > desiredvnodes + 10) { vnlru_free_locked(rnumvnodes - desiredvnodes); mtx_lock(&vnode_list_mtx); rnumvnodes = atomic_load_long(&numvnodes); From nobody Fri Oct 13 23:43:14 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jkC0t6Mz4wxVZ; Fri, 13 Oct 2023 23:43:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6jkC05XQz3FnF; Fri, 13 Oct 2023 23:43:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240595; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CmT/LKdWXxkEJjjOEN5aIcSL/klH+ObbMVoJ33BR274=; b=eeTIcoJinPBWJYO79aEqO9yG9ovvJPH5P/JIYwuYulW6/mhAfFgpKeySw30OK5vjeROKgZ TN6CFve2Xf/mEtbWBv283UCqryd/sfBj/bHTsN64YMhOYZQ+WE/P36raIUw7uo5mznVL+d pbsaUlp4FSpFkwe8BJfLc80WBTh/UJ9SRtUr1z3zOLIT8ZV5djRhFraSosP7DcJw01W8BV MWLhf5/FEFdfppFQYmqwQ7k0R3t3uzpDdTyQzfFoXIzzQ54PGjJB7xnkV+0w3A4HPcCFoC JXAtVH7E1kiUuMjKdEC2zvLkIo+f+uCinNgDq61eKc4MRvDVzlNXLk997aAUoA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697240595; a=rsa-sha256; cv=none; b=CqWMdQ/b9fdGK9DNcQLMrpQGuK8rUhEe6bEHzvUOse2R3jVefK2gnfeZKnV3GWfJEuLl1P tMs9YD8G4IhIgG97g7rFBZy6qJnyFb1htwct4Pm9lNbLPheaNgtuJoJU7QI6EJ18b1Tf8f UaK4g7uJx0xHryPzrut4OfxO3NgLur+/rrSTmcX6hgJ5W8x3YF5R62KnXIAnAiI2rYOnak IhYlHmwtuX19gLyWkcHwAkv1dFFqvhLajgnI/tG7ry0FCF0cL6cZ1En0TwZYU17Iaf7zik I6zROAtGW+X0ywYA4VEeLvgKYhxBjeHDSeuqNCiYjdY8SYYw0SJ2+wXMNINDGw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240595; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CmT/LKdWXxkEJjjOEN5aIcSL/klH+ObbMVoJ33BR274=; b=Kxgr900RMbTD1e/iMwiE7Llg7A61JtG559npjM3kvxwm9L/5pLH4TxmYghaWZNI48cg3rK Wr5UAL/XYFAMrEEJ59VhzTQrSlmsN2HsagiJ5to8lbIAxqEMJKRkbhp9gWNNwgPWXlW4kH JRiO1Fz8uIGHoEGy04sTPk4O3UHKHTMf9j9XOaentxRpM5afky9kZIu380qwO5PsFX+evW qMO4Mlv6fur7cGZbqXZEJeZQgW27AVpMcoVtTukv9DRfZTF/M+NcC/42+xfwP4ifw0K/jD plzPQZ4zx4Qi/mpSbGvpBmNJ2mgLF5khmRRCwWzbCQdOlnckRYADjCyXD6MPJw== 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 4S6jkB6J7Nz16p0; Fri, 13 Oct 2023 23:43:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNhEY7014934; Fri, 13 Oct 2023 23:43:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNhE1V014931; Fri, 13 Oct 2023 23:43:14 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:43:14 GMT Message-Id: <202310132343.39DNhE1V014931@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: cc2d62daa339 - stable/14 - vfs: further speed up continuous free vnode recycle List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: cc2d62daa33935489235a4ef253ae61676baf7c4 Auto-Submitted: auto-generated The branch stable/14 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=cc2d62daa33935489235a4ef253ae61676baf7c4 commit cc2d62daa33935489235a4ef253ae61676baf7c4 Author: Mateusz Guzik AuthorDate: 2023-10-11 09:42:12 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:41:47 +0000 vfs: further speed up continuous free vnode recycle The primary bottleneck *was* vnode_list mtx, which got artificially worsened due to the following work done with the lock held: 1. the global heavily modified numvnodes counter was being read, inducing massive cache line ping pong 2. should the value fit limits (which it normally did) there would be an avoidable write to vn_alloc_cyclecount, which is being read outside of the lock, once more inducing traffic But if vn_alloc_cyclecount is 0, which it normally is even when facing vnode shortage, there is no need to check numvnodes nor set it to 0 again. Another problem was numvnodes adjustment (which made the locked read much worse). While it fundamentally does not scale as it is not distributed in any fashion, it was avoidably slow. When bumping over the vnode limit, it would be modified with atomics 3 times: inc + dec to backpedal in vn_alloc, then final inc in vn_alloc_hard. One can let some slop persist over calls to vnlru_free instead. In principle each thread in the system could get here and bump it, so a limit is put in place to keep things sane. Bench setup same as in prior commits: zfs, 20 separate directory trees each with 1 million files in total and 20 find(1) processes stating them in parallel (one per each tree). Total run time (in seconds) goes down as follows: vnode limit 8388608 400000 before ~20 ~35 after ~8 ~15 With this in place the primary bottleneck is now ZFS. Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 054f45e026d898bdc8f974d33dd748937dee1d6b) --- sys/kern/vfs_subr.c | 46 +++++++++++++++++++++++++++++++--------------- 1 file changed, 31 insertions(+), 15 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 52c14b4a234a..99933a6b9c88 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1490,6 +1490,8 @@ static u_long vnlruproc_kicks; SYSCTL_ULONG(_vfs_vnode_vnlru, OID_AUTO, kicks, CTLFLAG_RD, &vnlruproc_kicks, 0, "Number of times vnlru got woken up due to vnode shortage"); +#define VNLRU_COUNT_SLOP 100 + /* * The main freevnodes counter is only updated when a counter local to CPU * diverges from 0 by more than VNLRU_FREEVNODES_SLOP. CPUs are conditionally @@ -1632,7 +1634,8 @@ vnlru_proc_sleep(void) * * On a kernel with only stock machinery this needs anywhere between 60 and 120 * seconds to execute (time varies *wildly* between runs). With the workaround - * it consistently stays around 20 seconds. + * it consistently stays around 20 seconds [it got further down with later + * changes]. * * That is to say the entire thing needs a fundamental redesign (most notably * to accommodate faster recycling), the above only tries to get it ouf the way. @@ -1661,7 +1664,7 @@ vnlru_proc_light_pick(void) * the limit for a short period, don't bother doing anything in * that case. */ - if (rnumvnodes > desiredvnodes + 10) { + if (rnumvnodes > desiredvnodes + VNLRU_COUNT_SLOP + 10) { if (rnumvnodes - rfreevnodes >= desiredvnodes || rfreevnodes <= wantfreevnodes) { return (-1); @@ -1795,7 +1798,8 @@ vnlru_proc(void) * limit (see vn_alloc_hard), no need to call uma_reclaim if * this happens. */ - if (onumvnodes + 1000 > desiredvnodes && numvnodes <= desiredvnodes) + if (onumvnodes + VNLRU_COUNT_SLOP + 1000 > desiredvnodes && + numvnodes <= desiredvnodes) uma_reclaim(UMA_RECLAIM_DRAIN); if (done == 0) { if (force == 0 || force == 1) { @@ -1912,19 +1916,27 @@ SYSCTL_ULONG(_vfs_vnode_stats, OID_AUTO, alloc_sleeps, CTLFLAG_RD, &vn_alloc_sle "Number of times vnode allocation blocked waiting on vnlru"); static struct vnode * __noinline -vn_alloc_hard(struct mount *mp) +vn_alloc_hard(struct mount *mp, u_long rnumvnodes, bool bumped) { - u_long rnumvnodes, rfreevnodes; + u_long rfreevnodes; - mtx_lock(&vnode_list_mtx); - rnumvnodes = atomic_load_long(&numvnodes); - if (rnumvnodes + 1 < desiredvnodes) { - vn_alloc_cyclecount = 0; - mtx_unlock(&vnode_list_mtx); - goto alloc; + if (bumped) { + if (rnumvnodes > desiredvnodes + VNLRU_COUNT_SLOP) { + atomic_subtract_long(&numvnodes, 1); + bumped = false; + } } + mtx_lock(&vnode_list_mtx); + if (vn_alloc_cyclecount != 0) { + rnumvnodes = atomic_load_long(&numvnodes); + if (rnumvnodes + 1 < desiredvnodes) { + vn_alloc_cyclecount = 0; + mtx_unlock(&vnode_list_mtx); + goto alloc; + } + rfreevnodes = vnlru_read_freevnodes(); if (rfreevnodes < wantfreevnodes) { if (vn_alloc_cyclecount++ >= rfreevnodes) { @@ -1953,6 +1965,10 @@ vn_alloc_hard(struct mount *mp) /* * Wait for space for a new vnode. */ + if (bumped) { + atomic_subtract_long(&numvnodes, 1); + bumped = false; + } mtx_lock(&vnode_list_mtx); vnlru_kick_locked(); vn_alloc_sleeps++; @@ -1965,7 +1981,8 @@ vn_alloc_hard(struct mount *mp) } alloc: mtx_assert(&vnode_list_mtx, MA_NOTOWNED); - atomic_add_long(&numvnodes, 1); + if (!bumped) + atomic_add_long(&numvnodes, 1); vnlru_kick_cond(); return (uma_zalloc_smr(vnode_zone, M_WAITOK)); } @@ -1976,11 +1993,10 @@ vn_alloc(struct mount *mp) u_long rnumvnodes; if (__predict_false(vn_alloc_cyclecount != 0)) - return (vn_alloc_hard(mp)); + return (vn_alloc_hard(mp, 0, false)); rnumvnodes = atomic_fetchadd_long(&numvnodes, 1) + 1; if (__predict_false(vnlru_under(rnumvnodes, vlowat))) { - atomic_subtract_long(&numvnodes, 1); - return (vn_alloc_hard(mp)); + return (vn_alloc_hard(mp, rnumvnodes, true)); } return (uma_zalloc_smr(vnode_zone, M_WAITOK)); From nobody Fri Oct 13 23:43:15 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jkD1wMSz4wxv9; Fri, 13 Oct 2023 23:43:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6jkD1GPdz3Fp6; Fri, 13 Oct 2023 23:43:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240596; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tEPQJ+OMT4lUsl8ptiyug97l/WGJbQrxJNPLqHsRrkc=; b=OetGh6Z5eaSOGT3nP6YSjkihFAzhJ3B7saSfL4U7arNGNabyOjSZlJQ80SMZfyliBtp4Te rxFSmI0cvUFCLNfpt378Vd63pZqDt/+FGYnWkOflJBwfjrtWcEP4mpfrhrwvBoir4C+AEQ ajBg0wDGcjzOHfuik/GrNhdvHQXl+JqoIBr8R75gM6n0/oEa34pTgrOVUXvuO9K3jZho2J 2PbyjMKx0C9XBSf7BrJMkrzzYQgoumJuRgsaie0yvSOfOngf4SGrWnTqEvK1biRnlf5cwz kCSCTe19IPUPbEiD3hvdDrOFVQH9Oo99Bn+I7yw2CVNqeAB7uUhOB0uCa2NfPw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697240596; a=rsa-sha256; cv=none; b=b/sM0IVaV3qbDKhzowOG+mpvl82PE0u2DWyEKPCgirGhbjAABj15CUP6Y9DtKERfTuhO6U C6xI7YCHNPHbwBffpfCizgPD04Corc7JUi/n9nVJB45vQXiOzr2KAFAAA4uBQV6oHb6vmt 2u1gfMS7unrpbgu2pEpkugNECaKvsC7WfAaAPhB3zltDl7cxqTGsnYDfV+y21nbXUrTZrG rKCJzFtdQMbxItVfTrgm5Krhwq4g3EuMNS8Kb1UjFJWIeeYBTYyt0hqCnT2cmiCy3p0Fy8 z9v9w0gG78jgMDByOBJcQbaykv20JUeR/CLviE3zw+QY3mb3g49/pcDPfG+Ycg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240596; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tEPQJ+OMT4lUsl8ptiyug97l/WGJbQrxJNPLqHsRrkc=; b=H54rgZKDHF8nkKUvaSMDA65/jRSm0JkmcnSku4M49hJoJwNOg3OJ4uvenu7DATULLs6FiY uRaLQGThB572I+Fv5yi5NQjb/MuNjrNDEz9UF5DTIskveK31nuvvYKWKTHtr88MLXsQTcc YfbmyQhWto+jiQwccjNux6NF/qUcDjV+cYOjCwiqmmz610cFoJxw3NYK50SEdlVQHMN7YU ahn3g+NEPTxnsPAuLgQFHJvMQWPvbCy5EDvw2gHFW0Io4W1/Pv4CQWepSdR+GVaX2u3aju b2M/8/0yFjW3c0y9Tmcfb+3Tltz8aO0/UC3nNDl9yh+0/0PAtOUFGhA2fE9M1w== 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 4S6jkD0Gm4z17K3; Fri, 13 Oct 2023 23:43:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNhFoT014986; Fri, 13 Oct 2023 23:43:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNhFMn014983; Fri, 13 Oct 2023 23:43:15 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:43:15 GMT Message-Id: <202310132343.39DNhFMn014983@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 14babcc0815e - stable/14 - vfs: add max_vnlru_free to the vfs.vnode.vnlru tree List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 14babcc0815e74079d608f4fe1bc1892107e08a5 Auto-Submitted: auto-generated The branch stable/14 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=14babcc0815e74079d608f4fe1bc1892107e08a5 commit 14babcc0815e74079d608f4fe1bc1892107e08a5 Author: Mateusz Guzik AuthorDate: 2023-10-11 13:05:43 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:41:47 +0000 vfs: add max_vnlru_free to the vfs.vnode.vnlru tree While here rename the var internally. (cherry picked from commit 281a9715b582861fe4097c2f27eb27b208d752b1) --- sys/kern/vfs_subr.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 99933a6b9c88..d21ccb4251cd 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1306,9 +1306,11 @@ next_iter: return (done); } -static int max_vnlru_free = 10000; /* limit on vnode free requests per call */ -SYSCTL_INT(_debug, OID_AUTO, max_vnlru_free, CTLFLAG_RW, &max_vnlru_free, - 0, +static int max_free_per_call = 10000; +SYSCTL_INT(_debug, OID_AUTO, max_vnlru_free, CTLFLAG_RW, &max_free_per_call, 0, + "limit on vnode free requests per call to the vnlru_free routine (legacy)"); +SYSCTL_INT(_vfs_vnode_vnlru, OID_AUTO, max_free_per_call, CTLFLAG_RW, + &max_free_per_call, 0, "limit on vnode free requests per call to the vnlru_free routine"); /* @@ -1323,8 +1325,8 @@ vnlru_free_impl(int count, struct vfsops *mnt_op, struct vnode *mvp) bool retried; mtx_assert(&vnode_list_mtx, MA_OWNED); - if (count > max_vnlru_free) - count = max_vnlru_free; + if (count > max_free_per_call) + count = max_free_per_call; if (count == 0) { mtx_unlock(&vnode_list_mtx); return (0); From nobody Fri Oct 13 23:43:17 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jkF3Dzlz4wxvL; Fri, 13 Oct 2023 23:43: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 4S6jkF2MHsz3G0p; Fri, 13 Oct 2023 23:43:17 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240597; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Sa9KngubcpgWxCdFlb34bM+mhOU/KvfdSQOd/A5hb/E=; b=hjl28qIvhCKKOBRv7DzGxVOn0dJ5XKSDwzPPPwMlfVEVfvRe50ala8E8kqbPomwCOZ2d33 xVeSBTCy5qrFOImj2Zo5ysTaYVU2LZPlngxNPtUcG0+vU2HaE+XHtAlEQgfj5d2piuop82 wl3/jSW9PuWm6MvUghrpCiKlZKX12gGe0q31LChdnL0eYknaEC337Uwj5hrSV5F2XZg9iB /Iov1l47azx9tIua/LAIRCdCjogA4v7toaANEWDsGXg8k7plISmPQp/sMTplHZrJTBYxJ4 Z6FW2oaY6oFlrbE5w9rr8ApJPh82JxZD0pXgvyVQrKa6nxOCizyNgq4T7/zvPg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697240597; a=rsa-sha256; cv=none; b=dhgLPdcEq4FrqiCTQnNX8TXKfIGtuyuKCZfjpKwHL3/Oecf70j8OJMz/tVIcLE771cJGx4 Jzu0Q9P+tcG9VAAzawJuIFazBTvKbIqik4fk6Vs+1FEqP5mdF1GDUax3D1STQiklpVRhMY 4rPSMj3m1fTXiD8Z4qESbQ6D7WqldOZ1cGd3wSGCThd0zb2nno8/5z8qFD/BJxTKftr8sB 3PBb2hzALGkoee1AbdMB6BqP0fWirt/VvRcYE30QlcQ7rxCenP8oJ+eRMtjJAa0C8JglTG T0nDbRrQwevHZQR/bCZW6gwCjB6hEi4PIsmDNj1DxiK99MbmybIRi6KVRpWHpg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240597; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Sa9KngubcpgWxCdFlb34bM+mhOU/KvfdSQOd/A5hb/E=; b=To3c61ONPzMKOYjD46cEtBKV4LMSUVTgLf+mpstlgWzm1Ln/ywpoCAgTcMcblwPkfWKPbd ZkFe8P161MZGdSCI+iNJDGHTie5b1BNYBhbd5C9Vz+xwv+koftKKWP0xhkWtYm97Vm1O0c b5TYe38GzZoUcXJ/htYXrNBSH3IIuG6+KtOEuJtRykujToQ7hdpwFhN6sw63UTae2MrJjM Kgd5MQT5fKetKrFT1Df6n54WfjqhFTNEZJWzfN8VGp9EiZkHiCgLFk8/+eISy3U1+df8N2 CXI99j7e+m0dph7sPmh3EtJ1K1+by9AZ3S2dGBe7WZrJzkCrbywWMjii3Cuw6Q== 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 4S6jkF1QQ2z17K4; Fri, 13 Oct 2023 23:43:17 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNhHU7015036; Fri, 13 Oct 2023 23:43:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNhHaD015033; Fri, 13 Oct 2023 23:43:17 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:43:17 GMT Message-Id: <202310132343.39DNhHaD015033@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: c1ffb1ffeeac - stable/14 - vfs: count calls to uma_reclaim in vnlru List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c1ffb1ffeeac1b3968bf3eae5195b49e1c33b542 Auto-Submitted: auto-generated The branch stable/14 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=c1ffb1ffeeac1b3968bf3eae5195b49e1c33b542 commit c1ffb1ffeeac1b3968bf3eae5195b49e1c33b542 Author: Mateusz Guzik AuthorDate: 2023-10-11 22:48:03 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:41:48 +0000 vfs: count calls to uma_reclaim in vnlru (cherry picked from commit bb679b0c49094757f2aef3d8fe46c41dc8192fea) --- sys/kern/vfs_subr.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index d21ccb4251cd..01585ac9eefd 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1711,6 +1711,10 @@ vnlru_proc_light(void) return (true); } +static u_long uma_reclaim_calls; +SYSCTL_ULONG(_vfs_vnode_vnlru, OID_AUTO, uma_reclaim_calls, CTLFLAG_RD | CTLFLAG_STATS, + &uma_reclaim_calls, 0, "Number of calls to uma_reclaim"); + static void vnlru_proc(void) { @@ -1801,8 +1805,10 @@ vnlru_proc(void) * this happens. */ if (onumvnodes + VNLRU_COUNT_SLOP + 1000 > desiredvnodes && - numvnodes <= desiredvnodes) + numvnodes <= desiredvnodes) { + uma_reclaim_calls++; uma_reclaim(UMA_RECLAIM_DRAIN); + } if (done == 0) { if (force == 0 || force == 1) { force = 2; From nobody Fri Oct 13 23:43:18 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jkG5nKXz4wxvM; Fri, 13 Oct 2023 23:43:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6jkG3X0yz3G76; Fri, 13 Oct 2023 23:43:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240598; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HxblIl26AyGCzcskDky8h439kTSLuvcpeAFD2FATxhM=; b=PW+Mdr0hBPpv18l0ZMA/JmprWuV5OO5idpaBSmOhlaqRphUVliOV8HVHr2iM48qJZ7VEny PJWfz6HO7jVUqtZlNm9CMGtKs21ewi+SwBclo3Ej2WErls3MhbQajrSdfktfg3uoo7wI68 9dU6XHvT1XAkuFHEAwzC4Nl5yMDYP0t+DzVyFN9p2fRiv4fz8x0YOc9eThwsDYX6Ciq7oU sPUpgQtVgC03U5ZdNXG4t5/S1e3tWW362QmR09LcrlEDtvXhGzRIhpFjx0IJ9E6Q5HGB4l enzGREf7X9aV4h0N3yS43LcI9n0G82J9OAax/O+nX1HNuEjLsQb5EPgNNhX4NA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697240598; a=rsa-sha256; cv=none; b=RhYVc55se8OwQ4uSqn1ZMA4dTHgfL3utEDuHH/Ybn/UKLGFtAhESlLRDzHWWxoqV9HJg6Q QPcsbZ15mFKfmGDcJlDctxluGKwCZ614AglmaBGExs5xfc/jIuo4KdjfZQubEve4Tl3nOi t0R2pbZVTWQa9b+dlzpbJPQx1M4vZ3tlTVIkojMK88wtSFblMMR+H0iO9kyGnOkjlIOjDc +Lk6hQYZYR0/tLdhlQYdQq6i2rwMH/gyKKxFzhyHKb8mxvOtqvC2anOjGrRZuPvl0cJybV Haijnj6RXMnTKeExlD/PpTNtVbKklFVUDzq7Da1vMv4y48oosXNziO0tIGQG2g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240598; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=HxblIl26AyGCzcskDky8h439kTSLuvcpeAFD2FATxhM=; b=ZFV0W/tA6mo6vEvpK6jK+/WyRmYVWDVraedOiQhtMWVYVC6VHY4Dt07JbiLeOYM3SNnTYN IRqDPxUAJIgBS6SjYGFY1U0s168f6idVnoGCVkIfIQ31lerUt4zZgSSvWzY20QF3ZkG3Ks VChR3rdBLUHwKkdFABNV6WLsOEDSL9uKY3fFUH6tMSNFs0XtTVf9IfGESdDarp3ElN7nME VqKuHEGDL3D5B4JPqQEksgo2sWMNeksK+YKjGLEsMwOdCOsYsuiOJIzOjo/yl2szyj1pEm dKpNL6CxrQE+7hc5KP+ekZfYd05eIOPm2arCNszwPTdIjnlPOIB6KOgNdU1lWg== 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 4S6jkG2cCrz17K5; Fri, 13 Oct 2023 23:43:18 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNhIBW015092; Fri, 13 Oct 2023 23:43:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNhIaC015088; Fri, 13 Oct 2023 23:43:18 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:43:18 GMT Message-Id: <202310132343.39DNhIaC015088@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: e4f85a24f9ba - stable/14 - vfs: count recycles by vnlru and by vn_alloc separately List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e4f85a24f9baf7a6c31853ddad03a0f15028158f Auto-Submitted: auto-generated The branch stable/14 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=e4f85a24f9baf7a6c31853ddad03a0f15028158f commit e4f85a24f9baf7a6c31853ddad03a0f15028158f Author: Mateusz Guzik AuthorDate: 2023-10-12 06:47:45 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:41:48 +0000 vfs: count recycles by vnlru and by vn_alloc separately Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit a92fc3122d2becfbf5a627af6eda5cedfac57c31) --- sys/kern/vfs_subr.c | 48 ++++++++++++++++++++++++++++++++++-------------- 1 file changed, 34 insertions(+), 14 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 01585ac9eefd..b14793ccd84e 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -110,7 +110,7 @@ static void delmntque(struct vnode *vp); static int flushbuflist(struct bufv *bufv, int flags, struct bufobj *bo, int slpflag, int slptimeo); static void syncer_shutdown(void *arg, int howto); -static int vtryrecycle(struct vnode *vp); +static int vtryrecycle(struct vnode *vp, bool isvnlru); static void v_init_counters(struct vnode *); static void vn_seqc_init(struct vnode *); static void vn_seqc_write_end_free(struct vnode *vp); @@ -211,6 +211,11 @@ SYSCTL_COUNTER_U64(_vfs, OID_AUTO, recycles_free, CTLFLAG_RD, &recycles_free_cou SYSCTL_COUNTER_U64(_vfs_vnode_vnlru, OID_AUTO, recycles_free, CTLFLAG_RD, &recycles_free_count, "Number of free vnodes recycled to meet vnode cache targets"); +static counter_u64_t direct_recycles_free_count; +SYSCTL_COUNTER_U64(_vfs_vnode_vnlru, OID_AUTO, direct_recycles_free, CTLFLAG_RD, + &direct_recycles_free_count, + "Number of free vnodes recycled by vn_alloc callers to meet vnode cache targets"); + static counter_u64_t vnode_skipped_requeues; SYSCTL_COUNTER_U64(_vfs_vnode_stats, OID_AUTO, skipped_requeues, CTLFLAG_RD, &vnode_skipped_requeues, "Number of times LRU requeue was skipped due to lock contention"); @@ -771,6 +776,7 @@ vntblinit(void *dummy __unused) vnodes_created = counter_u64_alloc(M_WAITOK); recycles_count = counter_u64_alloc(M_WAITOK); recycles_free_count = counter_u64_alloc(M_WAITOK); + direct_recycles_free_count = counter_u64_alloc(M_WAITOK); vnode_skipped_requeues = counter_u64_alloc(M_WAITOK); /* @@ -1317,7 +1323,7 @@ SYSCTL_INT(_vfs_vnode_vnlru, OID_AUTO, max_free_per_call, CTLFLAG_RW, * Attempt to reduce the free list by the requested amount. */ static int -vnlru_free_impl(int count, struct vfsops *mnt_op, struct vnode *mvp) +vnlru_free_impl(int count, struct vfsops *mnt_op, struct vnode *mvp, bool isvnlru) { struct vnode *vp; struct mount *mp; @@ -1403,7 +1409,7 @@ vnlru_free_impl(int count, struct vfsops *mnt_op, struct vnode *mvp) * * Check nullfs for one example (null_getwritemount). */ - vtryrecycle(vp); + vtryrecycle(vp, isvnlru); count--; if (count == 0) { break; @@ -1419,22 +1425,33 @@ vnlru_free_impl(int count, struct vfsops *mnt_op, struct vnode *mvp) * XXX: returns without vnode_list_mtx locked! */ static int -vnlru_free_locked(int count) +vnlru_free_locked_direct(int count) { int ret; mtx_assert(&vnode_list_mtx, MA_OWNED); - ret = vnlru_free_impl(count, NULL, vnode_list_free_marker); + ret = vnlru_free_impl(count, NULL, vnode_list_free_marker, false); mtx_assert(&vnode_list_mtx, MA_NOTOWNED); return (ret); } static int -vnlru_free(int count) +vnlru_free_locked_vnlru(int count) +{ + int ret; + + mtx_assert(&vnode_list_mtx, MA_OWNED); + ret = vnlru_free_impl(count, NULL, vnode_list_free_marker, true); + mtx_assert(&vnode_list_mtx, MA_NOTOWNED); + return (ret); +} + +static int +vnlru_free_vnlru(int count) { mtx_lock(&vnode_list_mtx); - return (vnlru_free_locked(count)); + return (vnlru_free_locked_vnlru(count)); } void @@ -1445,7 +1462,7 @@ vnlru_free_vfsops(int count, struct vfsops *mnt_op, struct vnode *mvp) MPASS(mvp != NULL); VNPASS(mvp->v_type == VMARKER, mvp); mtx_lock(&vnode_list_mtx); - vnlru_free_impl(count, mnt_op, mvp); + vnlru_free_impl(count, mnt_op, mvp, true); mtx_assert(&vnode_list_mtx, MA_NOTOWNED); } @@ -1702,7 +1719,7 @@ vnlru_proc_light(void) return (false); if (freecount != 0) { - vnlru_free(freecount); + vnlru_free_vnlru(freecount); } mtx_lock(&vnode_list_mtx); @@ -1748,7 +1765,7 @@ vnlru_proc(void) * try to reduce it by discarding from the free list. */ if (rnumvnodes > desiredvnodes + 10) { - vnlru_free_locked(rnumvnodes - desiredvnodes); + vnlru_free_locked_vnlru(rnumvnodes - desiredvnodes); mtx_lock(&vnode_list_mtx); rnumvnodes = atomic_load_long(&numvnodes); } @@ -1848,7 +1865,7 @@ SYSINIT(vnlru, SI_SUB_KTHREAD_UPDATE, SI_ORDER_FIRST, kproc_start, * through vgone(). */ static int -vtryrecycle(struct vnode *vp) +vtryrecycle(struct vnode *vp, bool isvnlru) { struct mount *vnmp; @@ -1893,7 +1910,10 @@ vtryrecycle(struct vnode *vp) return (EBUSY); } if (!VN_IS_DOOMED(vp)) { - counter_u64_add(recycles_free_count, 1); + if (isvnlru) + counter_u64_add(recycles_free_count, 1); + else + counter_u64_add(direct_recycles_free_count, 1); vgonel(vp); } VOP_UNLOCK(vp); @@ -1966,7 +1986,7 @@ vn_alloc_hard(struct mount *mp, u_long rnumvnodes, bool bumped) * should be chosen so that we never wait or even reclaim from * the free list to below its target minimum. */ - if (vnlru_free_locked(1) > 0) + if (vnlru_free_locked_direct(1) > 0) goto alloc; mtx_assert(&vnode_list_mtx, MA_NOTOWNED); if (mp == NULL || (mp->mnt_kern_flag & MNTK_SUSPEND) == 0) { @@ -1983,7 +2003,7 @@ vn_alloc_hard(struct mount *mp, u_long rnumvnodes, bool bumped) msleep(&vnlruproc_sig, &vnode_list_mtx, PVFS, "vlruwk", hz); if (atomic_load_long(&numvnodes) + 1 > desiredvnodes && vnlru_read_freevnodes() > 1) - vnlru_free_locked(1); + vnlru_free_locked_direct(1); else mtx_unlock(&vnode_list_mtx); } From nobody Fri Oct 13 23:43:19 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jkH50YWz4wy0p; Fri, 13 Oct 2023 23:43: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 4S6jkH4QK8z3G7T; Fri, 13 Oct 2023 23:43:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240599; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XjvxXVjYfB5QEcpXXTUD8O1y8y36LJ7GIkqD2ghEGgQ=; b=DzICAtFngWswChI3q1Qh/6x52YgmxGsmZvrzX9y9juvb6lqXWjZf2f85DQ7DUz5Lk/Ei3c UUNxzdR5VKBxuuto3qsrJanhyTLrsZTUtj8JqcEBebez2PyAYw7AEvFE1FdOIxtPdzyVg8 L8vROFd6E6z30hHlhgMrOUaj9PAmM9NT81+CuJpuWixU1Fyh4nWFztaGwsYM0A7KfGBC1p 2z/DxMlWUyOCei4eP/Uy7BfDTre3rkLqS/iGuTo09Jkb75SLpHfUEyXvtagmHrod8Ioy4O poAgYa+Awrz8IDJKs80N6bwiiMtml6Z2RDALfaMVsu5/RY3JH8pf3nHmT0n7Zw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697240599; a=rsa-sha256; cv=none; b=f6V//Ukv/qvqkvFndBu8/r0nLCz+zYHpg6HB26DhV/+sUODZfgBe7f/0XaGsWI16t89V3+ j4zI8mzNO+bKypSux9CmMCPoOiwchlgM+f+DZeknIh8jKCblr68bJROrLrjrNTRaR0+z3B iMXhrddeWQrNsIbK+ivFp7NtlZyznGkJIxSXOM6tbV/Ekeqj8azpMgsE9nwaYsIlrIXseh CE7tgrvkFsotteFeyu7AkKGD5wlr0XF+PGOQydcUlHSS4fz92kPfpGlHsYIblBjw02yplD 8cQU9jj6qcL3qaqIIZpZjy/nuCumOkvsfK+Xg53gSeAB/3OccMRqGEuDF0gg8w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697240599; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XjvxXVjYfB5QEcpXXTUD8O1y8y36LJ7GIkqD2ghEGgQ=; b=B29ro1D0YxM7RG8B5GfnhQWV1mSf2g6gWo5DZxpE81ynLnSssZXLm4PS0TtKgMuTsJh4O8 z4/Y5rVJoIbkx+nhB/GjlAh8Nc0RDyO0uF3elWgdpp/7p2VcaiqF7JtEo0Kh5h3H37pwtz NiSq6JKrn6jjnM/AdY4NY7mLL2Zm/iEwN7QUM7LCUPQhksSGCptzfgldt+joY/1NBAX1Tg oQT99K/get06XbnqERL4PYbpU4KE5eQxQjcj/1P/KBZACWTD82ol1Mi13LAWsKMNz92cme MkRp8QxiSNpnOhbL7IHZ1SM9chQMAblB+V0x3EiQpsVwt8nxI4Mj7/4JQ68ooA== 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 4S6jkH3VsKz17K6; Fri, 13 Oct 2023 23:43:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNhJpx015150; Fri, 13 Oct 2023 23:43:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNhJhU015147; Fri, 13 Oct 2023 23:43:19 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:43:19 GMT Message-Id: <202310132343.39DNhJhU015147@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: bdd19ce53c07 - stable/14 - vfs: convert recycles_count and recycles_free_count to mere u_long List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: bdd19ce53c07bc44b9d8f46dcedda0fceca8e069 Auto-Submitted: auto-generated The branch stable/14 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=bdd19ce53c07bc44b9d8f46dcedda0fceca8e069 commit bdd19ce53c07bc44b9d8f46dcedda0fceca8e069 Author: Mateusz Guzik AuthorDate: 2023-10-12 06:57:59 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:41:48 +0000 vfs: convert recycles_count and recycles_free_count to mere u_long Only vnlru ever updates them. This also removes recycles_count updates from hand-rolled debug vnode recycling via sysctl. Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 37544d9768110fd67527db7f2a3f7bb6fc977582) --- sys/kern/vfs_subr.c | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index b14793ccd84e..0fe2bc46446c 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -199,16 +199,19 @@ static long wantfreevnodes; static long __exclusive_cache_line freevnodes; static long freevnodes_old; -static counter_u64_t recycles_count; -SYSCTL_COUNTER_U64(_vfs, OID_AUTO, recycles, CTLFLAG_RD, &recycles_count, +static u_long recycles_count; +SYSCTL_ULONG(_vfs, OID_AUTO, recycles, CTLFLAG_RD | CTLFLAG_STATS, &recycles_count, 0, "Number of vnodes recycled to meet vnode cache targets (legacy)"); -SYSCTL_COUNTER_U64(_vfs_vnode_vnlru, OID_AUTO, recycles, CTLFLAG_RD, &recycles_count, +SYSCTL_ULONG(_vfs_vnode_vnlru, OID_AUTO, recycles, CTLFLAG_RD | CTLFLAG_STATS, + &recycles_count, 0, "Number of vnodes recycled to meet vnode cache targets"); -static counter_u64_t recycles_free_count; -SYSCTL_COUNTER_U64(_vfs, OID_AUTO, recycles_free, CTLFLAG_RD, &recycles_free_count, +static u_long recycles_free_count; +SYSCTL_ULONG(_vfs, OID_AUTO, recycles_free, CTLFLAG_RD | CTLFLAG_STATS, + &recycles_free_count, 0, "Number of free vnodes recycled to meet vnode cache targets (legacy)"); -SYSCTL_COUNTER_U64(_vfs_vnode_vnlru, OID_AUTO, recycles_free, CTLFLAG_RD, &recycles_free_count, +SYSCTL_ULONG(_vfs_vnode_vnlru, OID_AUTO, recycles_free, CTLFLAG_RD | CTLFLAG_STATS, + &recycles_free_count, 0, "Number of free vnodes recycled to meet vnode cache targets"); static counter_u64_t direct_recycles_free_count; @@ -458,7 +461,6 @@ sysctl_try_reclaim_vnode(SYSCTL_HANDLER_ARGS) goto putvnode; } - counter_u64_add(recycles_count, 1); vgone(vp); putvnode: vput(vp); @@ -492,7 +494,6 @@ sysctl_ftry_reclaim_vnode(SYSCTL_HANDLER_ARGS) if (error != 0) goto drop; - counter_u64_add(recycles_count, 1); vgone(vp); VOP_UNLOCK(vp); drop: @@ -774,8 +775,6 @@ vntblinit(void *dummy __unused) uma_prealloc(buf_trie_zone, nbuf); vnodes_created = counter_u64_alloc(M_WAITOK); - recycles_count = counter_u64_alloc(M_WAITOK); - recycles_free_count = counter_u64_alloc(M_WAITOK); direct_recycles_free_count = counter_u64_alloc(M_WAITOK); vnode_skipped_requeues = counter_u64_alloc(M_WAITOK); @@ -1282,7 +1281,7 @@ restart: vn_finished_write(mp); goto next_iter_unlocked; } - counter_u64_add(recycles_count, 1); + recycles_count++; vgonel(vp); VOP_UNLOCK(vp); vdropl_recycle(vp); @@ -1911,7 +1910,7 @@ vtryrecycle(struct vnode *vp, bool isvnlru) } if (!VN_IS_DOOMED(vp)) { if (isvnlru) - counter_u64_add(recycles_free_count, 1); + recycles_free_count++; else counter_u64_add(direct_recycles_free_count, 1); vgonel(vp); From nobody Fri Oct 13 23:53:45 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyK5LGMz4wyJq; Fri, 13 Oct 2023 23:53: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 4S6jyK3c2Dz3JVJ; Fri, 13 Oct 2023 23:53:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241225; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hIrpPhccWzHXUQ1Nhug/ovvfJkfJ49aezw7LS5L1bGk=; b=WLLEtbK5MkcsusX3iWkq2fsm0X8+GtkxcWAt6mIZdG4qQ5TUY7YO/0vdeC9fy/reGbHFd9 RNrIuz8RpuYL7nCrKWNWSTVW4BBsYrXKpD5fdJ8WuTyOp3DUCNlzod6mLwSgax0Hysu9Zi U6XX+J0/MwPcHceV1jKV+VgOjizuoFj4I1zxjgj0Qd2icFTEPKbBX8D2j6ASeZgjj+b0jH OckIToXwAO8Iyx8mdgZgAdo7CTunhc1ydTKdJ4pcHt9eOpEb+L0C8Ftr+Pee3slw2MUhBH 9fkCz6tLxVXMmD4Hqq8StDmFnxc+YSfr8r0fsfzkCZA0+AS13xV2fwZcZfUNDA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241225; a=rsa-sha256; cv=none; b=JRr+uQ46JciMtffLoDbilKLoGW7pJD2xbHSQ39qg7tvVQWFpuZBgsvP36E8ZOGSuRRbldh bn0SXINWkpxe+CCx4m4F+NckqxN8rMbU0ifkeAvo4E6w0/OVq5OJfsQ+W4Rx43KsNGsQ1k Lwvw5b7DVCqVWIr4FnB519Sx1LnqXdIaA+vjTnJoG8rt4pb4bSpFZ+Yu0QDn/oqbPxFqwO +AoAN7/BXbhvOCg5aDmiAVJSwsHhaBjwbdBi9xDMSKrQaQEaYiQWWL3TnmFM2/z4lXoDdV cGG7ub9PcUH1jBjG/OGB2KlpM3kTNW0/7W5fAdNZF0s6G1ZFD2jHdDiSzumUhQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241225; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hIrpPhccWzHXUQ1Nhug/ovvfJkfJ49aezw7LS5L1bGk=; b=who0o9BFdDt6mqagUCuposqaRxezBs/IyvLEdh9Lxgz5JaxUTTRL7gaHMEECB4GCsxgJEW K4HMjPZOuTdcyX7HgvEJs46F3wg61ymrLdSwOdvkJsHKZGoeL2qLEpVc7dj5Nsk15Xy7q1 pNtH49BUyZJ7f+NDlXYwRI+0Q3BMAVWR0kEPdQgkVlNvaIdsxm58ivnPcHrGcn7V/ivQGt hkPZpWKiV15lCL19zfukTs23PXyS2hsxODOvAYHJV9x2GJW8WVdGyPL4nmq0M+mCKwEmUB eSOzLmydwXzoSWEH2dd0B18s3xHsTofEQi2379eUpWXkICorvOpqa9BvwMOYqg== 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 4S6jyK2hctz17nb; Fri, 13 Oct 2023 23:53:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNrjSI031808; Fri, 13 Oct 2023 23:53:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNrjEA031805; Fri, 13 Oct 2023 23:53:45 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:53:45 GMT Message-Id: <202310132353.39DNrjEA031805@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 564cd5a91540 - stable/13 - vfs cache: Drop known argument of internal cache_recalc_neg_min() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 564cd5a91540246ab13f8dd3cbc3058264c06755 Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=564cd5a91540246ab13f8dd3cbc3058264c06755 commit 564cd5a91540246ab13f8dd3cbc3058264c06755 Author: Olivier Certner AuthorDate: 2023-09-22 21:25:41 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:48:11 +0000 vfs cache: Drop known argument of internal cache_recalc_neg_min() 'ncnegminpct' is to be passed always, so just drop the unneeded parameter. Sponsored by: The FreeBSD Foundation Reviewed by: mjg Differential Revision: https://reviews.freebsd.org/D41763 (cherry picked from commit 02ef039c284b8a7b1ea40f5f9a851a3cb6af5b31) --- sys/kern/vfs_cache.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index a50e8010fb88..a98b0e5ce411 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -994,10 +994,10 @@ SYSCTL_PROC(_vfs_cache, OID_AUTO, nchstats, CTLTYPE_OPAQUE | CTLFLAG_RD | "VFS cache effectiveness statistics"); static void -cache_recalc_neg_min(u_int val) +cache_recalc_neg_min(void) { - neg_min = (ncsize * val) / 100; + neg_min = (ncsize * ncnegminpct) / 100; } static int @@ -1016,7 +1016,7 @@ sysctl_negminpct(SYSCTL_HANDLER_ARGS) if (val < 0 || val > 99) return (EINVAL); ncnegminpct = val; - cache_recalc_neg_min(val); + cache_recalc_neg_min(); return (0); } @@ -2656,7 +2656,7 @@ nchinit(void *dummy __unused) VFS_SMR_ZONE_SET(cache_zone_large_ts); ncsize = desiredvnodes * ncsizefactor; - cache_recalc_neg_min(ncnegminpct); + cache_recalc_neg_min(); nchashtbl = nchinittbl(desiredvnodes * 2, &nchash); ncbuckethash = cache_roundup_2(mp_ncpus * mp_ncpus) - 1; if (ncbuckethash < 7) /* arbitrarily chosen to avoid having one lock */ @@ -2800,7 +2800,7 @@ cache_changesize(u_long newmaxvnodes) } } ncsize = newncsize; - cache_recalc_neg_min(ncnegminpct); + cache_recalc_neg_min(); cache_changesize_set_new(new_nchashtbl, new_nchash); cache_unlock_all_buckets(); cache_unlock_all_vnodes(); From nobody Fri Oct 13 23:53:46 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyL586qz4wyQ1; Fri, 13 Oct 2023 23:53: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 4S6jyL4K7Pz3JZ3; Fri, 13 Oct 2023 23:53:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241226; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I+3vrpHg0fIaN1MyE7h+Odq+8o/MM2sSL3VVUfFAUas=; b=oAWwIg+2cGs8zuV9WpiwiOwnxqy+G1HB2MyRcxkzWg4UG0bJdyVgy4dbIM7mX+XvlhQoid w3thV7SBGUeaeOd4mJw17laKNketkN8PTln+haLpev0ALi+6c7YzGb7pVx2i8jJxQE3N9e O/d6natO4WEwI8obBW9/7MLRbLqBra+iyxVShElBF742mgWM3OhRHyuQ9h9SeNT+fZc5w0 rlJgEADcsI234ZkhdD8hv2NswcFjoZfoWs2zCXb34hdcInxsAMt6Byrd4Pw3Zhrb6AY4s7 x8tyD/eNAxQ5S5uVN+W8ZV0G1+fNqEbUuk08epR4OV0GzChIA7USumcmy3to2Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241226; a=rsa-sha256; cv=none; b=JE5y/71dHFLeOSWI3LANJpar37kDAVoR1pM5ts8BFuDgZfKxt8ewgtXViel6HHfsDoyIbE JfitqOna8lW2mG6Bho9U7UAb1tWwUjWQRO4XgeYUmUTDx5D+4SIh6dpWRRzBAV9ZOzxY/I A/vLn8C87Fi5sX0H/qNmIa8GmYJALAnSv7j0GOWkAG95FqUUvlexDAGUMM7yNFatQCIXXp 1XU6YjbO2UNj1/DsyEDrYofJ/CfJKdFWL44Nw78wJ7pyEJPTkvyc/EwguwYwUeoZEHWpdY n0J7xUUTEOnMwf9+oiKXWsTxepMcCofNHJpDnQ8hZsPJfZaKAafZL2veQJC+sA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241226; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I+3vrpHg0fIaN1MyE7h+Odq+8o/MM2sSL3VVUfFAUas=; b=Tp48PeEfUprPFRCdI2Zd+zDzCM+5jk2oeNBpoEGXYceU7+jQH4AxinI5crmPnJlzm+1O5Q o0kzy4Zo5Gw4LEhx79lnm8ccqcCdXXkkLMCw8BenGdW5vMn0v8Hn+JtTcUdFk3cnF/zfrt VXuE9lkXZvlSiSxNUnm7JtqxZnMjTWLj+DCAAsL0fXop1EQi3bZQIm4+83fW7NDl/JT6A9 zHVNlQ/g5wVyqADEVSuqPM5X/2mJiUhJ39Ko0FWKRrK8F6sa6K8XZuHGcvzFmEPyYXrh2v H80RLDOWp4EedoMrGnwRr85xq5HyUeivJle9OmL3EyOMlRhDtS1c+dgFt/ACkQ== 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 4S6jyL34snz17qk; Fri, 13 Oct 2023 23:53:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNrkgQ031857; Fri, 13 Oct 2023 23:53:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNrklr031854; Fri, 13 Oct 2023 23:53:46 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:53:46 GMT Message-Id: <202310132353.39DNrklr031854@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 6ec7f96c6c63 - stable/13 - vfs cache: mark vfs.cache.param.size as read-only List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6ec7f96c6c6364919f72ef3dddc9d6677ca34654 Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=6ec7f96c6c6364919f72ef3dddc9d6677ca34654 commit 6ec7f96c6c6364919f72ef3dddc9d6677ca34654 Author: Mateusz Guzik AuthorDate: 2023-09-22 21:32:23 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:48:11 +0000 vfs cache: mark vfs.cache.param.size as read-only It was not meant to be writable and writes don't work correctly as they fail to resize the hash. (cherry picked from commit 33fdf1afaea931eaa5dd14e6c097d7ffafe2fb1a) --- sys/kern/vfs_cache.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index a98b0e5ce411..671451cadabc 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -405,7 +405,7 @@ static SYSCTL_NODE(_vfs_cache, OID_AUTO, param, CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "Name cache parameters"); static u_int __read_mostly ncsize; /* the size as computed on creation or resizing */ -SYSCTL_UINT(_vfs_cache_param, OID_AUTO, size, CTLFLAG_RW, &ncsize, 0, +SYSCTL_UINT(_vfs_cache_param, OID_AUTO, size, CTLFLAG_RD, &ncsize, 0, "Total namecache capacity"); u_int ncsizefactor = 2; From nobody Fri Oct 13 23:53:47 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyM6Cvxz4wy2v; Fri, 13 Oct 2023 23:53: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 4S6jyM56C1z3Jcx; Fri, 13 Oct 2023 23:53:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241227; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ObAz5EMHQR4HOxrnpBdxhJVEm32dg4zNxTtE7lyRHFE=; b=cIS5P8u16Hl8OzI4DCUlTKKEzuTGrz6dKwr/fskmkKDx2R6E5FblMt0uQMNjrxp/YaT/2g IyMqjaLMg3OghKzHFymGXIcVPc5C/X67tcCbH0vBa6z+RlKFzVe5wBokQKJOGiXGQMNYs3 ZGFFTwRl2W5Imsilg8xdUHPGcndy07eLewOc3Xj0L+jDto28Qsxc8GjQC6hqnvJzV/a+Ey DjA0J13fUbNollaWCgWez7x9CJE9BvOoAEve4tBkWy4I5WCFzuVdM6hyWjlRN0+z3JIHdL JBbf++2/d0rQgMPpa8mH1XCjukyXi3C+maJsZJsPRT0lyJxkXDHjNUweDqbilA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241227; a=rsa-sha256; cv=none; b=HD9fX9AK6pXESJAtQ4LfTSfU4H3wvr4A8azEbGHp417b6q/aSGZkQqXIZNGlL2AA6FduLI LadXif4fHfS26T7X9HQh6sByPCPtSoXPc8a3aVPNP65Wp5uMym8mJqvFXdJV5aJYTTc7L5 5Xp14eFo06EAR8z/1EidfuAAgn96XQb4ln8aQq9JcJLFguXpPfkNsah9WAGnzsZ+9rjRlA wmzIXyMq70gcdhpHNiM1oVC0c86x2c3ouncTM551Fa3+ppU9ssqSeI2nz4z6eHjTCqK17T CPu8nmld7ThBMlbt9Uz6lFQyDShQnHi5mDZCie59f0dpXwiebYOmrl+Kgb5nbg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241227; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ObAz5EMHQR4HOxrnpBdxhJVEm32dg4zNxTtE7lyRHFE=; b=vPuajoRdp7q5S7KeHJbjza+RqYYXKK6LNH1/vxQgKkjPJbyTGrwE0k3UvQomf2UKc8xA8j N8RDAYPM8gP7sf83J7IrQYO6BAWl2RahfyZK2Jj003UvqUpeuZonLYtRP+VUqhllEaDHhQ tY8Kr+7E/Tqt7RgJtKDY0TDjNoNjpHixL7ZjIHkunkYpUB0t7Ue/iKaX3rW9lpl/jTUqs0 s6KrMw4Ls4i7YMA1nRxR9HfSroGOu1FKnMU0DxJVpbZJNK3yLtmSdUoKjyR/Ct8P7cjgSu Q36jyVd31rehtLBfmJS+EMZqM5TAMOFcSPjVS51y7SEBjNgFtVFsAcQMVma1nA== 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 4S6jyM3wTLz17nc; Fri, 13 Oct 2023 23:53:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNrlsa031908; Fri, 13 Oct 2023 23:53:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNrl9U031905; Fri, 13 Oct 2023 23:53:47 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:53:47 GMT Message-Id: <202310132353.39DNrl9U031905@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 1dca3a9406f1 - stable/13 - vfs cache: retire dothits and dotdothits counters List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 1dca3a9406f12168919bdcafdb45cbbb613e9c8c Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=1dca3a9406f12168919bdcafdb45cbbb613e9c8c commit 1dca3a9406f12168919bdcafdb45cbbb613e9c8c Author: Mateusz Guzik AuthorDate: 2023-09-23 00:08:49 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:48:12 +0000 vfs cache: retire dothits and dotdothits counters They demonstrate nothing, and in case of dotdot they are not even hits. This is just a count of lookups with "..", which are not worth mentioniong. (cherry picked from commit bb124a0f611a1288c8496e3b33494f23ba929ca1) --- sys/kern/vfs_cache.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index 671451cadabc..29f14fb931e6 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -534,8 +534,6 @@ STATNODE_ULONG(neg, numneg, "Number of negative cache entries"); STATNODE_ULONG(count, numcache, "Number of cache entries"); STATNODE_COUNTER(heldvnodes, numcachehv, "Number of namecache entries with vnodes held"); STATNODE_COUNTER(drops, numdrops, "Number of dropped entries due to reaching the limit"); -STATNODE_COUNTER(dothits, dothits, "Number of '.' hits"); -STATNODE_COUNTER(dotdothits, dotdothits, "Number of '..' hits"); STATNODE_COUNTER(miss, nummiss, "Number of cache misses"); STATNODE_COUNTER(misszap, nummisszap, "Number of cache misses we do not want to cache"); STATNODE_COUNTER(poszaps, numposzaps, @@ -1786,7 +1784,6 @@ cache_lookup_dot(struct vnode *dvp, struct vnode **vpp, struct componentname *cn int ltype; *vpp = dvp; - counter_u64_add(dothits, 1); SDT_PROBE3(vfs, namecache, lookup, hit, dvp, ".", *vpp); if (tsp != NULL) timespecclear(tsp); @@ -1831,7 +1828,6 @@ cache_lookup_dotdot(struct vnode *dvp, struct vnode **vpp, struct componentname return (0); } - counter_u64_add(dotdothits, 1); retry: dvlp = VP2VNODELOCK(dvp); mtx_lock(dvlp); @@ -5078,7 +5074,6 @@ cache_fplookup_dot(struct cache_fpl *fpl) fpl->tvp = fpl->dvp; fpl->tvp_seqc = fpl->dvp_seqc; - counter_u64_add(dothits, 1); SDT_PROBE3(vfs, namecache, lookup, hit, fpl->dvp, ".", fpl->dvp); error = 0; @@ -5167,7 +5162,6 @@ cache_fplookup_dotdot(struct cache_fpl *fpl) return (cache_fpl_aborted(fpl)); } - counter_u64_add(dotdothits, 1); return (0); } From nobody Fri Oct 13 23:53:48 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyN6nrPz4wyRV; Fri, 13 Oct 2023 23:53: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 4S6jyN61pWz3JbH; Fri, 13 Oct 2023 23:53:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241228; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=o3Vn6FfZZFYkD8BDjdgpfPfUwUgoBnX6+/4MLnKXZqM=; b=VFGXwwMUtDPz/Xfy/96tcMXcn3Tvg0FxpPxmckFuTVAkale3uHU+sCDxwysOCJD3XvZkUs A70BMR5nuVddCZ0+y9OOFYq4hHyYBjtucvV+truCT5ztwu03z+rRyv/KeDKyzSBIsY+Sct LRLB8zrsbTon17qDJlpTeJv6AZUmmtq5LKbLP49wyzMFH9OnarFHIznVSeLyjrBTXYAQa+ 8+1jKK7gEL0QR4qCix2s4DvTLRHb+x81dRl3LA4TbmpMW7cTBqDu31ONzYtghRNyGdl3QE 0zLzrlAfQ+cstmdb4i2LDenitHkXkNTe6rPxQzWRsptLvXRDEnRJuApQH3Yo6w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241228; a=rsa-sha256; cv=none; b=Zdscv/Aq/UsLB+DhCAGxou05MKHTlWTY1BZkKA+cfK+cLfocfujATPLLMiMTMypGImtdz1 bK1h2+6gX9h3WVGlBHoYdJKKQwB7bdXLK4DrqCYrM/J/cnYypIS9w9S8OyjSckKXLE0wB0 mZZB23GbXUq6JHxhGtN+FULgQZdsFTh+5/Rk4pzxldN72AgGpz4viJvlHouWhBAJDZPX5t lNb47nBmBp9O1IFjcsXsMDeLFkD9e7SwRDxGpZDfO3cvlxXO13Fw6GKmLOGJqNYdHGWWL5 nfhLK7AujeTf4jjul4GpeIc2swH1keGL0C063Hbd1otDN3eTGm8ukBVxV9wuDA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241228; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=o3Vn6FfZZFYkD8BDjdgpfPfUwUgoBnX6+/4MLnKXZqM=; b=wlFtfoukVbMhmWmxhdYSRh8hwnbJHAAI6iWzJWqFPhvmCZs2zZ9SjtY2UzPBALfOmet2uR 45GxUwZQKVhuhrWmzaKtIZvLe2rFTpjJoRr3FQ2eLqD88Kig/ZbozI9nJ/XIK6lyediPXN x6c9ww6SG3SuOWAT6TRPxD2y3PWO4q9vMMel91yi6xxUU8yFbeYYG8DNcTd4DKIiKVaUSh 0L7ehHLpovevd13CRzao6j/kok0+UlpW5IqtFtfo9xgCXV+GwMVKLTn6dhLOhvEorQO4EN Lmh2aAHtdoPGsRpdeG2D1DQM1vK1ndAw42aqabyV3fDSu+KdQj+/5SUPa2jD7g== 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 4S6jyN4wwSz17Gc; Fri, 13 Oct 2023 23:53:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNrmVn031950; Fri, 13 Oct 2023 23:53:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNrmAL031947; Fri, 13 Oct 2023 23:53:48 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:53:48 GMT Message-Id: <202310132353.39DNrmAL031947@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: bb84ee652edc - stable/13 - vfs cache: sanitize debug counters List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: bb84ee652edc233b5796f07a8b44a6b2f9221b0a Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=bb84ee652edc233b5796f07a8b44a6b2f9221b0a commit bb84ee652edc233b5796f07a8b44a6b2f9221b0a Author: Mateusz Guzik AuthorDate: 2023-10-05 12:16:18 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:48:12 +0000 vfs cache: sanitize debug counters They are very rarely triggered, so no need for per-cpu distribution. At the same time the non-cpu ones still should use atomics to not lose any updates. (cherry picked from commit 2749c222da8a6325d39c0571f72b1dbed2f7d583) --- sys/kern/vfs_cache.c | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index 29f14fb931e6..1d52b2e63169 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -557,17 +557,14 @@ static SYSCTL_NODE(_vfs_cache, OID_AUTO, debug, CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "Name cache debugging"); #define DEBUGNODE_ULONG(name, varname, descr) \ SYSCTL_ULONG(_vfs_cache_debug, OID_AUTO, name, CTLFLAG_RD, &varname, 0, descr); -#define DEBUGNODE_COUNTER(name, varname, descr) \ - static COUNTER_U64_DEFINE_EARLY(varname); \ - SYSCTL_COUNTER_U64(_vfs_cache_debug, OID_AUTO, name, CTLFLAG_RD, &varname, \ - descr); -DEBUGNODE_COUNTER(zap_bucket_relock_success, zap_bucket_relock_success, +static u_long zap_bucket_relock_success; +DEBUGNODE_ULONG(zap_bucket_relock_success, zap_bucket_relock_success, "Number of successful removals after relocking"); -static long zap_bucket_fail; +static u_long zap_bucket_fail; DEBUGNODE_ULONG(zap_bucket_fail, zap_bucket_fail, ""); -static long zap_bucket_fail2; +static u_long zap_bucket_fail2; DEBUGNODE_ULONG(zap_bucket_fail2, zap_bucket_fail2, ""); -static long cache_lock_vnodes_cel_3_failures; +static u_long cache_lock_vnodes_cel_3_failures; DEBUGNODE_ULONG(vnodes_cel_3_failures, cache_lock_vnodes_cel_3_failures, "Number of times 3-way vnode locking failed"); @@ -1668,7 +1665,7 @@ cache_zap_unlocked_bucket(struct namecache *ncp, struct componentname *cnp, cache_zap_locked(rncp); mtx_unlock(blp); cache_unlock_vnodes(dvlp, vlp); - counter_u64_add(zap_bucket_relock_success, 1); + atomic_add_long(&zap_bucket_relock_success, 1); return (0); } @@ -1764,7 +1761,7 @@ retry: error = cache_zap_locked_bucket(ncp, cnp, hash, blp); if (__predict_false(error != 0)) { - zap_bucket_fail++; + atomic_add_long(&zap_bucket_fail, 1); goto retry; } counter_u64_add(numposzaps, 1); @@ -1990,7 +1987,7 @@ negative_success: counter_u64_add(numnegzaps, 1); error = cache_zap_locked_bucket(ncp, cnp, hash, blp); if (__predict_false(error != 0)) { - zap_bucket_fail2++; + atomic_add_long(&zap_bucket_fail2, 1); goto retry; } cache_free(ncp); @@ -2188,8 +2185,8 @@ cache_lock_vnodes_cel_3(struct celockstate *cel, struct vnode *vp) } else { if (mtx_trylock(vlp)) goto out; - cache_lock_vnodes_cel_3_failures++; cache_unlock_vnodes_cel(cel); + atomic_add_long(&cache_lock_vnodes_cel_3_failures, 1); if (vlp < cel->vlp[0]) { mtx_lock(vlp); mtx_lock(cel->vlp[0]); From nobody Fri Oct 13 23:53:49 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyQ09Qqz4wy36; Fri, 13 Oct 2023 23:53:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6jyP6rcNz3JlD; Fri, 13 Oct 2023 23:53:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241230; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1XjwQQk8zw1GRmeP8oDGyC8sZ4T/M7tDVMuk2cUCOZA=; b=mCVyRFxGnWPobAGddv8G9AvWZ1BYjQrie73jYtufMYV5L4Nq1uozv3O4VPmNtwoLNL3+aW ssfdp2OHeFncEiZ5Uo6StG9Ocp5YettlyOoxSR7mDveTtFqZWmlpa8Z8olk8vG+k1oRqa4 uFRhxmsVyvVdAd4Z6x4kYpyrQWmBIIZQ69w+6jsTNwQPNEbntZGaVsffEJyZtJ6ZjMcH8B EwSsCVyt6kSUlfegdsYAgBuGXQkhbUQdsermsCDCQ1IWJorPk5wMS4uKJLCtfW68AuiUdB 9arDKCa/sOko9zZBWZDe249sT+fSjH1VcKmiUW9sEmVI2hc+6x829P4Gwe23PA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241230; a=rsa-sha256; cv=none; b=hV0wL2KZz7vAi5qjovT4Hwgiw/dM1et5d21pjfpwCB1hLZb9mH5J29s0C1SJ1hCLNuNaGq 9PrOy13zPyTgh/8TLYpT/1wxzEscV2MxJKDrFS1zBF9pdEgdq450wgZNrd4tl2oQfi5u7K 7iVPudPvNAaQ59mmj40/sAI/5KiMXKN6jV+OOoyXPK2b+mQETGQYwovGv7/4tnC0/2kGAj GgYF1gNalwOtRz2PzHEX0kTK5B+T4INj1KzAN+RV4lC24o5c7riSUaLIr+IJ0r3vYcaohJ Pp9Q0IB01zjmo2R7T6BIeqs3lmz7MqNkhDnjp/osvn6m5mhMLV63ZA6Fe10iyw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241230; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1XjwQQk8zw1GRmeP8oDGyC8sZ4T/M7tDVMuk2cUCOZA=; b=tp7JoOxXgcn4IJbF0iqpeNe6+66qxWUNCCS5ev/U6Y2rUOVQk2i51U8XzeyabziCnU6WOo Q/En+yVkZmUgVlEh2OKD3lcmwxG54NgpQkWDGQ1CLAfy5k3htZ9Src6qSmO72Pqekzjvtu z/pvBJuHJJ7u2WV4BmKjq1UbQ3b9lXww+I9zYtrhkevFEZ3XXALC7HRh1CueuBkOX6RwsE nlWZ3PCqOhfrIPUp9WmNrka+XSZqAq5i1DvBEAiIUu8fXfesAxgvpy4biKFzp9Phc0v+qM T6ChIwa85Pb4Ovi7GEN2sMXt9kYLLSH1pnjQzswJwzJpKYrUiU7LIIZ3OgPT4g== 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 4S6jyP5yYLz17Vp; Fri, 13 Oct 2023 23:53:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNrnuu032004; Fri, 13 Oct 2023 23:53:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNrnt9032001; Fri, 13 Oct 2023 23:53:49 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:53:49 GMT Message-Id: <202310132353.39DNrnt9032001@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: c3dc958cacd8 - stable/13 - vfs cache: plug a hypothetical corner case when freeing List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: c3dc958cacd819c9fe989477371f01c187873cc0 Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=c3dc958cacd819c9fe989477371f01c187873cc0 commit c3dc958cacd819c9fe989477371f01c187873cc0 Author: Mateusz Guzik AuthorDate: 2023-09-23 02:04:06 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:48:12 +0000 vfs cache: plug a hypothetical corner case when freeing cache_zap_unlocked_bucket is called with a bunch of addresses and without any locks held, forcing it to revalidate everything from scratch. It did not account for a case where the entry is reallocated with everything the same except for the target vnode. Should the target use a different lock than the one expected, freeing would proceed without being properly synchronized. Note this is almost impossible to happen in practice. (cherry picked from commit 0f15054f7990f9c772bea34778a8838aa05ebed8) --- sys/kern/vfs_cache.c | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index 1d52b2e63169..49e66803a1d1 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -1649,6 +1649,7 @@ cache_zap_unlocked_bucket(struct namecache *ncp, struct componentname *cnp, struct mtx *blp) { struct namecache *rncp; + struct mtx *rvlp; cache_assert_bucket_unlocked(ncp); @@ -1661,14 +1662,24 @@ cache_zap_unlocked_bucket(struct namecache *ncp, struct componentname *cnp, !bcmp(rncp->nc_name, cnp->cn_nameptr, rncp->nc_nlen)) break; } - if (rncp != NULL) { - cache_zap_locked(rncp); - mtx_unlock(blp); - cache_unlock_vnodes(dvlp, vlp); - atomic_add_long(&zap_bucket_relock_success, 1); - return (0); - } + if (rncp == NULL) + goto out_mismatch; + + if (!(ncp->nc_flag & NCF_NEGATIVE)) + rvlp = VP2VNODELOCK(rncp->nc_vp); + else + rvlp = NULL; + if (rvlp != vlp) + goto out_mismatch; + + cache_zap_locked(rncp); + mtx_unlock(blp); + cache_unlock_vnodes(dvlp, vlp); + atomic_add_long(&zap_bucket_relock_success, 1); + return (0); + +out_mismatch: mtx_unlock(blp); cache_unlock_vnodes(dvlp, vlp); return (EAGAIN); From nobody Fri Oct 13 23:53:50 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyR2Nhhz4wy54; Fri, 13 Oct 2023 23:53: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 4S6jyR0m4Hz3JnR; Fri, 13 Oct 2023 23:53:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241231; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zz7AVoSsSrkNdW0LrOw4hoBQutc9UOMi/9VtAwEEUYg=; b=tr/sDJrgMRfSIfm/1XL4FIpdaqvEaHkZW/dVnfy3DtmHeCdSaBfDNGPxGvzJ3R1T6cdF5+ bzwsMmtaC6BeV7YUE9rLfgpkA41ZCC+WOcRGkcxu6027BdrMycaAfovaQXZd0HHUz4PMxQ T8q/7ep8I2x6JDvoGhkPo/+ICvDP8CjJSYn9P7RCo4HRTjidWw1s2/Exh0hadUK3WQL5O+ xwsEGPTmkpcRq+zJaYIVIFiHOsqIxwSOQlSslzvk78Mxs6TIORkVh0lECjdrNUdmf/8OdQ RzgyEFOpOXcKa7fGPKISwKLQo8hxcDVBGjIv9IXrg+knJDi3gh2dveh9C0Y3jA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241231; a=rsa-sha256; cv=none; b=QMD+ZQUKbGA2L/5ithWYXMLXbylY3Xkx3bnll8sF/Ih8BXOeE+UJx2xUuiYYZIkd/AzqNZ ORSfs3AtiBYHKrkuAx4PZmrrPE9WGPqPa+p+8URwefI7N8UmNZBKJX9c5rOVLKeP0Mf3cF 09jBU9YIr9Ab6GsELIQuiWmLhrFUfQRgMF0Jp+2EUgeHRi/E/Op3q4DYcgVvUQ0r5e1y57 V7MgXU1X0q5ZEb9Q3XZHmyPBlIr+dsa6sVoLbHoV/H2a16l8vqM2eyfGLBVyPrVdixJjdK QTiQK6Ln0K5bFjGr3ymdlr7wUIaOVYYASa6zYgNDP4vcKr9dIYljcBPz00tylg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241231; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zz7AVoSsSrkNdW0LrOw4hoBQutc9UOMi/9VtAwEEUYg=; b=dnCv8lZZwXk+D135GdVxdbeZIqDlWW3tcqk4lEHlWKQpwXInppmtXPxVp+3OZSqzbSeynU shvvmBsxqeYnmcBrvxQi+kuuZmPrMSdyT4ZPY1/lubPt5ZEypZyZP/mJpSYoS1XTzdfXV0 +2Jgb34LtuVajwO5ar+DNgVbah5jifaJkcTVG4yD1KGz4MBCk6LyRtjPyB8wzmjMi1Br2Z K+g+JeMqqVv2eF/+MW2w4H+Axchd9p6n1LAWJ9dOfR1EguyYL4iN6MBDwwTsLo5q2y9bcc /Qvf1M17WP5WFbaIYTSEE/uJ9ugijM+DaPu4bP1dQh33SeVbKlYj3B4R6jERgA== 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 4S6jyQ6zqSz17c0; Fri, 13 Oct 2023 23:53:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNrodX032057; Fri, 13 Oct 2023 23:53:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNroMH032054; Fri, 13 Oct 2023 23:53:50 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:53:50 GMT Message-Id: <202310132353.39DNroMH032054@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 4cadd75a3b0d - stable/13 - vfs cache: denote a known bug in cache_remove_cnp List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 4cadd75a3b0d3c5d7b52f1b93c64836af8a212bc Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=4cadd75a3b0d3c5d7b52f1b93c64836af8a212bc commit 4cadd75a3b0d3c5d7b52f1b93c64836af8a212bc Author: Mateusz Guzik AuthorDate: 2023-10-05 12:32:29 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:48:12 +0000 vfs cache: denote a known bug in cache_remove_cnp (cherry picked from commit cd2105d691f446f7dbddf5965d82b9e9103bc8d2) --- sys/kern/vfs_cache.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index 49e66803a1d1..60e366068392 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -1751,6 +1751,15 @@ retry_dotdot: return (1); } + /* + * XXX note that access here is completely unlocked with no provisions + * to keep the hash allocated. If one is sufficiently unlucky a + * parallel cache resize can reallocate the hash, unmap backing pages + * and cause the empty check below to fault. + * + * Fixing this has epsilon priority, but can be done with no overhead + * for this codepath with sufficient effort. + */ hash = cache_get_hash(cnp->cn_nameptr, cnp->cn_namelen, dvp); blp = HASH2BUCKETLOCK(hash); retry: From nobody Fri Oct 13 23:53:52 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyS2mDnz4wyGB; Fri, 13 Oct 2023 23:53: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 4S6jyS22QHz3K4J; Fri, 13 Oct 2023 23:53:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241232; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jDOGzXEp6kayZEXoFarpTwsMC6rbxIVPnkFy0cqaPj4=; b=vD1DEoghSMnVmQmedQNUYJb5Su6rr1uF4ilbyAXBuNHkFZuK/BTRnWWQW0ph9a5v+rXU0/ mMTi86fGRJGkEA51kPuHTSh4vwxkVB5y9mog+SLNS7/pvQ+wl7YVs/hrdkxQFi/MxPNDrV TQDVrq4rq8emffvA1bC+Ef/3TpHkYzHmKZ6ySE7XC2AX4jDa+GsK5CdB+7MDdvYFcZgpW1 nzQc1s2tLdQODWtTBgaI4OjqLH3zHkC0vqAmj7aLjmKvJrAWRhROVxRoShXTKMens+stn+ DFU1GDTxPlkhx7nuBf40xVOrc9MYkHTjkcERQY/6qd0ONgpXAu8fwC3qZJhJhw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241232; a=rsa-sha256; cv=none; b=Kg2E3byQpwqbZhMr+gSGqb/QWd7XjgGhEHpjXtPbpsPicdQFUq+hBGjjxjCB4niP3wOwJs jP3utYKltANjsvmIJxdgUSwZKvkflZNeBU4V9OSw/toZEVWWgH7uOVgUTcV1Pe2++C6Bp1 1rzJTnlofd4QfGnewLMERE0DZDb6u4I/2PkYXchyVFr5q0L6m+Tff7RZnyDfObsdWzbCRJ coF5C6zeabR6Nrjr7w4RY049lMbVpWo1Xt4K2tox/rZ6ngk28y+/GM+hEyOl5Wy3LZxlZ8 FOJ7R+JFwAx5ARPgA/LXovmHUe1+s9YcwOwBt6Fh3uF9rIC9bwowyUGvwlye9Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241232; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jDOGzXEp6kayZEXoFarpTwsMC6rbxIVPnkFy0cqaPj4=; b=b0sOg/GOq5czcR57ZnmA0rVFU1OPqqoYr2uPfHSAJxspZKe7j5g35qy6mzjTLDA9Dw1lw5 QynoeWrxeNq/r+9vzTdhMhpa5JvbR102Lzjh1z1nzBL6dW1vvoezrPXPa6J6lpqnPutYDv H41xRdD7rtjADirC+Pmt0itkpp3utcqIbsgLum8wEChfIWGD+WitfmIckTqaqBV3NgknAD i9idgmYix4AgOEP9WDOUXnSTV94HEd/uCsLY3/A0tqWjMwnLrfLjQLSQyyruBOgnBnN1M3 8sM6X+KG/d/ZCU2D4BCvTcpMojOwA3evFfeF4dy+62ynzKLasmaFTmUo+CR9Ng== 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 4S6jyS10X3z17ff; Fri, 13 Oct 2023 23:53:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNrqO4032114; Fri, 13 Oct 2023 23:53:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNrq1v032111; Fri, 13 Oct 2023 23:53:52 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:53:52 GMT Message-Id: <202310132353.39DNrq1v032111@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 233167b270c8 - stable/13 - vfs: don't provoke recycling non-free vnodes without a good reason List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 233167b270c828f63f9b724f0955ef7fd6484fb2 Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=233167b270c828f63f9b724f0955ef7fd6484fb2 commit 233167b270c828f63f9b724f0955ef7fd6484fb2 Author: Mateusz Guzik AuthorDate: 2023-09-14 16:13:01 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:48:13 +0000 vfs: don't provoke recycling non-free vnodes without a good reason If the total number of free vnodes is at or above target, there is no point creating more of them. Tested by: pho (in a bigger patch) (cherry picked from commit 8733bc277a383cf59f38a83956f4f523869cfc90) --- sys/kern/vfs_subr.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 7d8e6c6c6cc5..c5a99179af36 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1820,11 +1820,19 @@ vn_alloc_hard(struct mount *mp) mtx_unlock(&vnode_list_mtx); goto alloc; } - rfreevnodes = vnlru_read_freevnodes(); - if (vn_alloc_cyclecount++ >= rfreevnodes) { - vn_alloc_cyclecount = 0; - vstir = true; + + if (vn_alloc_cyclecount != 0) { + rfreevnodes = vnlru_read_freevnodes(); + if (rfreevnodes < wantfreevnodes) { + if (vn_alloc_cyclecount++ >= rfreevnodes) { + vn_alloc_cyclecount = 0; + vstir = true; + } + } else { + vn_alloc_cyclecount = 0; + } } + /* * Grow the vnode cache if it will not be above its target max * after growing. Otherwise, if the free list is nonempty, try From nobody Fri Oct 13 23:53:53 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyT36Swz4wy3C; Fri, 13 Oct 2023 23:53:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6jyT2Zjqz3K0L; Fri, 13 Oct 2023 23:53:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241233; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9twF7pPUx0oy6rpdpaGrij5u87ejzZcG+UMH47CtYyU=; b=klTnKcK2n/REbtq9+dwEIYtkakj7aHX6lp4jjJCn2H350wZsaJw19/2OPLgOW1pV5O3cgq fiWfudDiMIj9sp+xxQprfM9ehW7GtaYApag4VP7sW4QL1cg2BgTh+qPBi3dhnTRi237aY3 7YNmJTu2JO21kuL/B/2pC1zGVzwkm6UQmmc6OUhgNYSLKmzW5Bz5gnIyXWi4EoG5UY+5ZL VXKT8odCH4LaP8i5pkf0XKHacnBLQdveeC3zEN2QvVFLkBU8sE85IB2uzVCwiaHuorsIGa mv45Sz1FB/nC2pch+OoVrFiV1peiCsIfEPyuXGaO1OJDX4usTkNzDpnA6Sp1Bw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241233; a=rsa-sha256; cv=none; b=Wndy4s4PV9Uy9AVYMgbiS/92c4y0BoYA0nhwR/e/aT+dbtcHxMylxso2hSmJJds0bzAtxQ hmven8kaqn7hipQqdd5qTyLYpp1HtsaLqx5Jj527lqdtrhAJOrsRSB418relDn7jmKrEWA Z86n+8hVSAUqXUhr1LHjC2idm+FHjxm+gO/n6PsMhHJlrZtbr5uqoxi+gRH51X+ZBCilV5 om15q5zWg/Zj8T0Zczgop+IvwyZuVTc3tkrASx7B5nMFxsect72hZ/Z6/AIXpPJclzcTPo WtlcGVhVIxSlLMIiqBO8BAkYcEalQZwXiLEMO26qlrC9NC+8VQFT5SEyPu60tg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241233; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9twF7pPUx0oy6rpdpaGrij5u87ejzZcG+UMH47CtYyU=; b=pdxv3ISkQuJtTXEqEXW81Kbg6ZFYcnH0dgAW2wGEZLLRyKQOnlYMcJ3L0/DmNgEAFqJWi/ KPyRdUqFuuH+X5iJe4/nuqgB6JfEcwq9baoZGQ/swkAsAr1cA+Gqcvy9Te4qYCg9eqCxDD XRZEaRIFq0udRb2CSNZvCwkPlvwFTSOOyilEcARX1brjneAmJEoN0blLYhVXdssRSj+sTx 0s0fIwtDvZVIjR3gSoyI6AkyDByhl6Vqv1d7PpPcDKUObXSG1lCeSR1gqIf0uRhTBIRzQP Fa96L9PsVZMylVj0J4Lth59TP/SfiQqEp5+jhHB6aJXrJFkClmCPxbNYGFNPWw== 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 4S6jyT1gz0z17Vq; Fri, 13 Oct 2023 23:53:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNrrYQ032168; Fri, 13 Oct 2023 23:53:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNrr37032165; Fri, 13 Oct 2023 23:53:53 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:53:53 GMT Message-Id: <202310132353.39DNrr37032165@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: f71e2bbc5e24 - stable/13 - vfs: be less eager to call uma_reclaim(UMA_RECLAIM_DRAIN) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: f71e2bbc5e24e53946f7a93ca49f7ac8ca2bd7b6 Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=f71e2bbc5e24e53946f7a93ca49f7ac8ca2bd7b6 commit f71e2bbc5e24e53946f7a93ca49f7ac8ca2bd7b6 Author: Mateusz Guzik AuthorDate: 2023-10-10 16:15:53 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:48:13 +0000 vfs: be less eager to call uma_reclaim(UMA_RECLAIM_DRAIN) In face of vnode shortage the count very easily can go few units above the limit before going back down. Calling uma_reclaim results in massive amount of work which in this case is not warranted. Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 1bf55a739e754765fa2dc15ab6481fe411084be3) --- sys/kern/vfs_subr.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index c5a99179af36..29b255b418e4 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1691,7 +1691,12 @@ vnlru_proc(void) target = target / 10 + 1; done = vlrureclaim(reclaim_nc_src, trigger, target); mtx_unlock(&vnode_list_mtx); - if (onumvnodes > desiredvnodes && numvnodes <= desiredvnodes) + /* + * Total number of vnodes can transiently go slightly above the + * limit (see vn_alloc_hard), no need to call uma_reclaim if + * this happens. + */ + if (onumvnodes + 1000 > desiredvnodes && numvnodes <= desiredvnodes) uma_reclaim(UMA_RECLAIM_DRAIN); if (done == 0) { if (force == 0 || force == 1) { From nobody Fri Oct 13 23:53:54 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyV4Ccwz4wyK0; Fri, 13 Oct 2023 23:53:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6jyV3jsPz3KG0; Fri, 13 Oct 2023 23:53:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241234; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8v+vBvD5Ke8p52N2FklLm4HTNKRsZWwOxtbQ6ysEQE0=; b=VaQG/CEOI2cCQP+fTwkcsoEb6aT6eUjX5dmfHoII2gGROgi9vBC4AanCa/ucPSOGkPJERo hZJIFaB1Udy8ZrdI4n5lMOjZEi8hPvH3fwozWpP1pdOIg4tqM57DYXvhXa3ykb8M7Eb1H4 yqh2On93h2DtIKetV4aiSLWR2fniJtid3ifxqIcLfOaqiA83KRkdQy7dnXMLdQRLj0f5OH 71udbGwELSEKP96kJeTFCssWnwq2sHWTt5DT6qSr/0/dUok1kFskA+QLAjNPhoWbG20IJF opK0ADmysoejuefuie8jfzzxhxQhQVNOwjEkS9MRnShejLY5DM4qM34Q7SSKAw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241234; a=rsa-sha256; cv=none; b=wpd5DtJTQUEkz702JhDcndUC3XPGkBQxP/TSI+oc0lQdP7wmDCImJ/OsjZKVJXhaVHEHqh pytY4pWCTUVpB52TkZEid3psbLcGEHmGG1ZQ2HwhOGkgBI8vbxrf58u6YL9uvgWrRfTXNn MBpPRxJCjsSofCzLJXvhPIJIxX568sTiNKC6BOcllha+oZWwCOcMW3E1NlamI3SjNR8LVL DkvlF9bPKlIFWXSDRvA3TKHSkmxjkMPpj17JL2/Vrm20Zg7LxyHPVIpcntGGmtz+E64jDX lEO/F8QnwSICzC+EUZzU/VpT0xTklupm8mvsDQl7uxHKg6oIRgNKqVS1spBkZg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241234; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8v+vBvD5Ke8p52N2FklLm4HTNKRsZWwOxtbQ6ysEQE0=; b=Y5GiYc12t4bsMHzo/xP4rNQKCCTyF2b2e35i/AcSebbXhefCL+OhCAzxH5PHGKUbM4z+Si nPT/PHIfmDqfPQe6HOouKlYkrceDlWkW2qHl/lq8vhH/ezzg0FB0ypmcmrdGXWQJBs2SWN whdhz1PAP7BzvNiGGVkR6/Si0QdxcS8C1LaeIpoPwozI2EjiN3pp0Lbio/pnFqslCytc+x yFQQzqGVfiAndYsKJCx0MeKHFvCKSrs/eoebML4tSbuPQsUTRsHb/XZTLk2JQFzfrDV4p2 8i8D0GIIT0EB26ArWw59DE/GLnUj8S7B0UuDX7sASVVU0SYJjOx9aeH3o5PrHw== 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 4S6jyV2d5Cz17Vr; Fri, 13 Oct 2023 23:53:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNrsNF032217; Fri, 13 Oct 2023 23:53:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNrsoC032214; Fri, 13 Oct 2023 23:53:54 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:53:54 GMT Message-Id: <202310132353.39DNrsoC032214@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 7ec19caae5b0 - stable/13 - vfs: consult freevnodes in vnlru_kick_cond List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 7ec19caae5b0044da963298d4ae79cfcf3ebaf01 Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=7ec19caae5b0044da963298d4ae79cfcf3ebaf01 commit 7ec19caae5b0044da963298d4ae79cfcf3ebaf01 Author: Mateusz Guzik AuthorDate: 2023-10-10 16:19:53 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:48:13 +0000 vfs: consult freevnodes in vnlru_kick_cond If the count is high enough there is no point trying to produce more. Not going there reduces traffic on the vnode_list mtx. This further shaves total real time in a test mentioned in: 74be676d87745eb7 ("vfs: drop one vnode list lock trip during vnlru free recycle") -- 20 instances of find each creating 1 million vnodes, while total limit is set to 400k. Time goes down from ~41 to ~35 seconds. Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 23ef25d25d989e7213bc1d3ef32b0f48a9eb2537) --- sys/kern/vfs_subr.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 29b255b418e4..5ddbff77a221 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1601,6 +1601,9 @@ static void vnlru_kick_cond(void) { + if (vnlru_read_freevnodes() > wantfreevnodes) + return; + if (vnlruproc_sig) return; mtx_lock(&vnode_list_mtx); @@ -1867,9 +1870,8 @@ vn_alloc_hard(struct mount *mp) } alloc: mtx_assert(&vnode_list_mtx, MA_NOTOWNED); - rnumvnodes = atomic_fetchadd_long(&numvnodes, 1) + 1; - if (vnlru_under(rnumvnodes, vlowat)) - vnlru_kick_cond(); + atomic_add_long(&numvnodes, 1); + vnlru_kick_cond(); return (uma_zalloc_smr(vnode_zone, M_WAITOK)); } From nobody Fri Oct 13 23:53:55 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyW71tPz4wyGL; Fri, 13 Oct 2023 23:53:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6jyW4fhsz3KDd; Fri, 13 Oct 2023 23:53:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241235; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JgTj/lsb+cr2Vxbu0VeFv0xF93Ta4gbRZqKPLZgpL00=; b=ZS/bDAeh1Jwza885DBYwaI2KyJ+ZykMlZdmZDzwO50mlRBvM+Wu8cnVB7nhsO+SMb/rqfa vkKiyMN1sbplmOxBn1F2vtP20fNN2/OW7SVFYfO7JZcjp+9Xua5EG286Mw3YJKMG3C0YSd nxk0URwgSCVUTKQYQ4Rrx0pxetoneAdd6PUf+smDFmB7JaRYfB0xjlHPuEBwO/znBZAwIv jfhQScPPqWWEnTCljQ1R4ng9dIghfmadiKkXFk6Py5hEEvX6pmPaWO2GzMwmyLEuDRW3MN IfawtbfAQ061aNd1YHKWVab8qjUn2ZnGMO4K1jGzQdShBeL3+u1Im2AA7jar2Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241235; a=rsa-sha256; cv=none; b=v+ZKfUAqHy+JU552uU7QaMKPUs0FbkPHPgAjwi1xrrmBHRoxLkf5GJFBrrV/borldA1NCV ooHgWUwB1pxU0NjPlCtdc1d/f8blA5FzOx9nHU/D7v0bn4rFcY6mKxH+4zf/4ODbHddahv y2Q2zoKXaW2L0FuTgmj+nCp11ZGui29uRiNeyJtDh8E0KSToVB59QaRBgoz0loaSs2Vkz0 qijDJZMxkutBm8mAeeLVPxf3SHUnwqx2o7tohwSyZylRy6qHkZUgnLCrCZoVfCpuGsHZNk Ku3XTUjdzqKxirmJUng3l0PXfl+nQQ3oBHJqWM70hGqbTt1CCxWlFW1zQbTqxQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241235; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JgTj/lsb+cr2Vxbu0VeFv0xF93Ta4gbRZqKPLZgpL00=; b=v+uaGhjhmR4IPpwOeuLilbOlLj3+OUlk/p0BaRX0nGP0U82JtFyGIERPQmDaTtaxtFJOfr 9BYgS4BduX1LxpQoFBsK6IKPsrbDd6fzXzBQxNYExD4/SGIt3yQROUUp/sL+pE5m5+j7Dt 6eO7Z4ykeErRrCxoIsLWzuD0msL6iA7LeqUu5o+VrMuhsEpQQnfFdBo0ZmlAQZGdV3E4/s 2I9zMEc9xCzQUf2V0SeDLAwlC7G8uHgI9ZViKGnQTEtPlcX7ZcELC4XcEVhGhc6bPni2lT DOIsZWRTij9271+NOcJ0fpPFF8dohPwAiwBSNEBHU0mPd2lQMuZAgQsTi9xLeA== 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 4S6jyW3jkzz17nd; Fri, 13 Oct 2023 23:53:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNrtH5032277; Fri, 13 Oct 2023 23:53:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNrtJU032274; Fri, 13 Oct 2023 23:53:55 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:53:55 GMT Message-Id: <202310132353.39DNrtJU032274@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 12e81504ef7a - stable/13 - vfs: prefix regular vnlru with a special case for free vnodes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 12e81504ef7aa1802c8ede384f07ae65fec48bdc Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=12e81504ef7aa1802c8ede384f07ae65fec48bdc commit 12e81504ef7aa1802c8ede384f07ae65fec48bdc Author: Mateusz Guzik AuthorDate: 2023-09-14 19:08:40 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:48:13 +0000 vfs: prefix regular vnlru with a special case for free vnodes Works around severe performance problems in certain corner cases, see the commentary added. Modifying vnlru logic has proven rather error prone in the past and a release is near, thus take the easy way out and fix it without having to dig into the current machinery. (cherry picked from commit 90a008e94bb205e5b8f3c41d57e155b59a6be95d) --- sys/kern/vfs_subr.c | 117 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 113 insertions(+), 4 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 5ddbff77a221..e4b9ff8e1ba6 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1417,6 +1417,14 @@ vnlru_free_locked(int count) return (ret); } +static int +vnlru_free(int count) +{ + + mtx_lock(&vnode_list_mtx); + return (vnlru_free_locked(count)); +} + void vnlru_free_vfsops(int count, struct vfsops *mnt_op, struct vnode *mvp) { @@ -1611,6 +1619,106 @@ vnlru_kick_cond(void) mtx_unlock(&vnode_list_mtx); } +static void +vnlru_proc_sleep(void) +{ + + if (vnlruproc_sig) { + vnlruproc_sig = 0; + wakeup(&vnlruproc_sig); + } + msleep(vnlruproc, &vnode_list_mtx, PVFS|PDROP, "vlruwt", hz); +} + +/* + * A lighter version of the machinery below. + * + * Tries to reach goals only by recycling free vnodes and does not invoke + * uma_reclaim(UMA_RECLAIM_DRAIN). + * + * This works around pathological behavior in vnlru in presence of tons of free + * vnodes, but without having to rewrite the machinery at this time. Said + * behavior boils down to continuously trying to reclaim all kinds of vnodes + * (cycling through all levels of "force") when the count is transiently above + * limit. This happens a lot when all vnodes are used up and vn_alloc + * speculatively increments the counter. + * + * Sample testcase: vnode limit 8388608, 20 separate directory trees each with + * 1 million files in total and 20 find(1) processes stating them in parallel + * (one per each tree). + * + * On a kernel with only stock machinery this needs anywhere between 60 and 120 + * seconds to execute (time varies *wildly* between runs). With the workaround + * it consistently stays around 20 seconds. + * + * That is to say the entire thing needs a fundamental redesign (most notably + * to accommodate faster recycling), the above only tries to get it ouf the way. + * + * Return values are: + * -1 -- fallback to regular vnlru loop + * 0 -- do nothing, go to sleep + * >0 -- recycle this many vnodes + */ +static long +vnlru_proc_light_pick(void) +{ + u_long rnumvnodes, rfreevnodes; + + if (vstir || vnlruproc_sig == 1) + return (-1); + + rnumvnodes = atomic_load_long(&numvnodes); + rfreevnodes = vnlru_read_freevnodes(); + + /* + * vnode limit might have changed and now we may be at a significant + * excess. Bail if we can't sort it out with free vnodes. + */ + if (rnumvnodes > desiredvnodes) { + if (rnumvnodes - rfreevnodes >= desiredvnodes || + rfreevnodes <= wantfreevnodes) { + return (-1); + } + + return (rnumvnodes - desiredvnodes); + } + + /* + * Don't try to reach wantfreevnodes target if there are too few vnodes + * to begin with. + */ + if (rnumvnodes < wantfreevnodes) { + return (0); + } + + if (rfreevnodes < wantfreevnodes) { + return (-1); + } + + return (0); +} + +static bool +vnlru_proc_light(void) +{ + long freecount; + + mtx_assert(&vnode_list_mtx, MA_NOTOWNED); + + freecount = vnlru_proc_light_pick(); + if (freecount == -1) + return (false); + + if (freecount != 0) { + vnlru_free(freecount); + } + + mtx_lock(&vnode_list_mtx); + vnlru_proc_sleep(); + mtx_assert(&vnode_list_mtx, MA_NOTOWNED); + return (true); +} + static void vnlru_proc(void) { @@ -1626,6 +1734,10 @@ vnlru_proc(void) want_reread = false; for (;;) { kproc_suspend_check(vnlruproc); + + if (force == 0 && vnlru_proc_light()) + continue; + mtx_lock(&vnode_list_mtx); rnumvnodes = atomic_load_long(&numvnodes); @@ -1656,10 +1768,7 @@ vnlru_proc(void) vstir = false; } if (force == 0 && !vnlru_under(rnumvnodes, vlowat)) { - vnlruproc_sig = 0; - wakeup(&vnlruproc_sig); - msleep(vnlruproc, &vnode_list_mtx, - PVFS|PDROP, "vlruwt", hz); + vnlru_proc_sleep(); continue; } rfreevnodes = vnlru_read_freevnodes(); From nobody Fri Oct 13 23:53:56 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyX68Gqz4wyQF; Fri, 13 Oct 2023 23:53: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 4S6jyX5fqlz3K68; Fri, 13 Oct 2023 23:53:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241236; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=62S2fYi0R20VcnkTO5DWVGKL7Rgw9T9TTXdOzSXtFp8=; b=xmD9P5WkEzXVN+eMVJboZakZ0pEiPiaox3RX5Q/FN9Zg7t5eyrgz36uhswMMrMuoLNlpiT nrS6jyexkX5l3Bx+EZlvDf3QCCAW7PPKy9WgmPKQNnRTf7v5j1PehKgDH80tTDtZhqSS2+ 8ChutaSzu7YaxjHSoesUFlpq33kP02XwIlGPIQjERvpumCiq3Mn32G+KJoYdBdxILUfc0c WpZ/9dtiJ8+/0Pb8L9VRoz3JQ4daJPaCGFdbZYI/W8u4hiXSl0lIXUOP/uaLYWn+jj9iAI /KA/2GEKCsM2bu+jI4yMkAtgfcM0SJ9GUFa69J4V2t5p9OVreOsndmqD3MmQBg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241236; a=rsa-sha256; cv=none; b=xqLEFRNi2K6jcqnam6bDM9TzdiLsW/Tq/clQyIsFeS4YCZSgvF9/sC8OsvCfPpG2YCaAmC ccmX0yqOUTll7kQM2Xyalx8TaWQo1q2UwaFN4lr2mTArQeqp9v01s1h7W4vuijPWmNZ69B hlyecdtDTFINfG63ukzrTjYtkwi51p2zv+QdU6xOVBjIeDXKDBVpHlJVOR8Kl75w90suJK cW56foiKNwTLEYm3/rrEBUo16bgr7as2X7S2W75Pao0cQhGL2J5noSQ7ToXp135jbJD4Ug NSxTGId3Tp/cKEEqcczlL0WMAJLlKutudqCTLbaDlZ+wEdxKQjGdt8BVfm4Q6Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241236; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=62S2fYi0R20VcnkTO5DWVGKL7Rgw9T9TTXdOzSXtFp8=; b=gxf4fXWOhCPcWyKCFQ2IU58HL2wE5U7eZX3m4GzI5+n2BWRIerYkcEFAkgl7k6C/pRJOcK LOR1iGLqusCs6uTcxqrVGeAor9L1HgruO0N2a/js1M17TItlj7KOcdxQay4DAMYBNnaIbN YEUqIYNGgEzJJpkXrlCkpVdOdRCkoxisY20v27lCwdIanbk/C58ph8urPYYBOio0oW9dVe THSOft51M6PSZRdGqIBJb3NT9KxjJvqo4yoZDAZpCCm6Jccs590eYlgkfqYMQxHYN4XQf8 dT+WChfwyq5c9ue168auqoTDsHG5GEu1itmACBLWU/A5knPGeofgzaMs+IKohA== 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 4S6jyX4ljJz17nf; Fri, 13 Oct 2023 23:53:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNruZJ032322; Fri, 13 Oct 2023 23:53:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNruhD032319; Fri, 13 Oct 2023 23:53:56 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:53:56 GMT Message-Id: <202310132353.39DNruhD032319@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: e47ede47277c - stable/13 - vfs: don't recycle transiently excess vnodes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: e47ede47277c6e3c8a5a8077200179e4065fe7fc Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=e47ede47277c6e3c8a5a8077200179e4065fe7fc commit e47ede47277c6e3c8a5a8077200179e4065fe7fc Author: Mateusz Guzik AuthorDate: 2023-10-11 06:39:48 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:48:13 +0000 vfs: don't recycle transiently excess vnodes Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit a4f753e812d8913e9be481c6dfa1574c7f032a56) --- sys/kern/vfs_subr.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index e4b9ff8e1ba6..54796fe6ef7d 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1673,8 +1673,12 @@ vnlru_proc_light_pick(void) /* * vnode limit might have changed and now we may be at a significant * excess. Bail if we can't sort it out with free vnodes. + * + * Due to atomic updates the count can legitimately go above + * the limit for a short period, don't bother doing anything in + * that case. */ - if (rnumvnodes > desiredvnodes) { + if (rnumvnodes > desiredvnodes + 10) { if (rnumvnodes - rfreevnodes >= desiredvnodes || rfreevnodes <= wantfreevnodes) { return (-1); @@ -1751,7 +1755,7 @@ vnlru_proc(void) * adjusted using its sysctl, or emergency growth), first * try to reduce it by discarding from the free list. */ - if (rnumvnodes > desiredvnodes) { + if (rnumvnodes > desiredvnodes + 10) { vnlru_free_locked(rnumvnodes - desiredvnodes); mtx_lock(&vnode_list_mtx); rnumvnodes = atomic_load_long(&numvnodes); From nobody Fri Oct 13 23:53:57 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyZ03Kjz4wyQJ; Fri, 13 Oct 2023 23:53: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 4S6jyY6SCwz3KVj; Fri, 13 Oct 2023 23: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=1697241237; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kx8EKiPIvY+h6ZyQezARijbmcR0vUSjbSw35J4oT4RM=; b=aVRj/neJljOKVx1PiSFOxL52tRdn2YT8KX3de1To+Udj7QCzAOKbpA0ahlcxwUwqexd8c8 94ZSu7T/idhDFKedZgi4qgMf0wvJP9RtPZ4IITIpb3U6fuy6r34/4ka0vJLNAtKjfSZ1bn fNAQ38EnI1TBpACYggHZJGEmB2+c6qheRNvb6di8XNGQs/p/xVAVMqupmUEf4f1+QU9Fl8 p0MBJeT5c/UvLXLXwLIrJ0NufEcymMyBlm8hsvMS3WAoP6zwqZNcdhyziN2lXuipP3ZvXY NITCTVKt55vUei2+DmeayqDh8InCgGWvtix6n6xzAanSYNi2k8uhJzvu9k6c+Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241237; a=rsa-sha256; cv=none; b=ZFrDxjF+fYve8kT2rkKhEFJvroWjjI7ZTpHT/BSg0L93Q16fQskaCVayVZ/k/ERSDGd+sc ZMGSs3r4jhna20eq1idGIhVZSxWmjVW4RuqQLy6BxMYSsJ1VF/lA4xJvXJnF0911Ascvkt 81AAWb7odt9tY8r6QZ0UVA9dfK7HBqd26wlxBXvW/OkPrVa1HvOviwQCNOKwQdSt7VEYxK 57AEWtSZ9cmnz3goRNvWtyFDT61gdhvo1mImNPVG69AkrqYyWhLXfpenPDGmVYn5fZbnwO sHpeWlF1wlpmN5z1qouklWdtefkYRbQj0rc5EXuMSR/GqMrAKZdDofXKJiybXQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241237; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kx8EKiPIvY+h6ZyQezARijbmcR0vUSjbSw35J4oT4RM=; b=NEibThkYMmknPj50BP+1l30dh1JzsQZVPUoVMiF6uYRKCSKT6XDAVfs1qaQf0evGTF5BIW Suflkl9iYGYRQY7MQl6ccX4hHShS71Hf1bRfsc5cwCsRuPBTTF1xoSrRTCpNN0A8957QsQ gV9K5axXVAOkTL+ejNU0v590/+TPN2l6+pXH+klRQ3XmMW2S7F+5M4Bhe18gkguF/GwNz/ XkFCwAsxfJfUa6GzmbElRyQ7oEB4KxAaFAitmlypjKBMsw0SsI1gLiOIv5Qu7z2/R7/0dU JeTISoQgJF7s9j69jhcvjjiFMDA0lAI2yTsFYh8OFda2k5A5scNDBVfpypyKZQ== 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 4S6jyY5Xtfz1758; Fri, 13 Oct 2023 23:53:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNrvjs032373; Fri, 13 Oct 2023 23:53:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNrv9s032370; Fri, 13 Oct 2023 23:53:57 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:53:57 GMT Message-Id: <202310132353.39DNrv9s032370@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 4deb2610cc23 - stable/13 - vfs: further speed up continuous free vnode recycle List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 4deb2610cc238fc014aace434f04ed1f22a20502 Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=4deb2610cc238fc014aace434f04ed1f22a20502 commit 4deb2610cc238fc014aace434f04ed1f22a20502 Author: Mateusz Guzik AuthorDate: 2023-10-11 09:42:12 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:48:14 +0000 vfs: further speed up continuous free vnode recycle The primary bottleneck *was* vnode_list mtx, which got artificially worsened due to the following work done with the lock held: 1. the global heavily modified numvnodes counter was being read, inducing massive cache line ping pong 2. should the value fit limits (which it normally did) there would be an avoidable write to vn_alloc_cyclecount, which is being read outside of the lock, once more inducing traffic But if vn_alloc_cyclecount is 0, which it normally is even when facing vnode shortage, there is no need to check numvnodes nor set it to 0 again. Another problem was numvnodes adjustment (which made the locked read much worse). While it fundamentally does not scale as it is not distributed in any fashion, it was avoidably slow. When bumping over the vnode limit, it would be modified with atomics 3 times: inc + dec to backpedal in vn_alloc, then final inc in vn_alloc_hard. One can let some slop persist over calls to vnlru_free instead. In principle each thread in the system could get here and bump it, so a limit is put in place to keep things sane. Bench setup same as in prior commits: zfs, 20 separate directory trees each with 1 million files in total and 20 find(1) processes stating them in parallel (one per each tree). Total run time (in seconds) goes down as follows: vnode limit 8388608 400000 before ~20 ~35 after ~8 ~15 With this in place the primary bottleneck is now ZFS. Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 054f45e026d898bdc8f974d33dd748937dee1d6b) --- sys/kern/vfs_subr.c | 46 +++++++++++++++++++++++++++++++--------------- 1 file changed, 31 insertions(+), 15 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 54796fe6ef7d..8c831034a8e5 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1507,6 +1507,8 @@ static u_long vnlruproc_kicks; SYSCTL_ULONG(_vfs_vnode_vnlru, OID_AUTO, kicks, CTLFLAG_RD, &vnlruproc_kicks, 0, "Number of times vnlru got woken up due to vnode shortage"); +#define VNLRU_COUNT_SLOP 100 + /* * The main freevnodes counter is only updated when a counter local to CPU * diverges from 0 by more than VNLRU_FREEVNODES_SLOP. CPUs are conditionally @@ -1649,7 +1651,8 @@ vnlru_proc_sleep(void) * * On a kernel with only stock machinery this needs anywhere between 60 and 120 * seconds to execute (time varies *wildly* between runs). With the workaround - * it consistently stays around 20 seconds. + * it consistently stays around 20 seconds [it got further down with later + * changes]. * * That is to say the entire thing needs a fundamental redesign (most notably * to accommodate faster recycling), the above only tries to get it ouf the way. @@ -1678,7 +1681,7 @@ vnlru_proc_light_pick(void) * the limit for a short period, don't bother doing anything in * that case. */ - if (rnumvnodes > desiredvnodes + 10) { + if (rnumvnodes > desiredvnodes + VNLRU_COUNT_SLOP + 10) { if (rnumvnodes - rfreevnodes >= desiredvnodes || rfreevnodes <= wantfreevnodes) { return (-1); @@ -1812,7 +1815,8 @@ vnlru_proc(void) * limit (see vn_alloc_hard), no need to call uma_reclaim if * this happens. */ - if (onumvnodes + 1000 > desiredvnodes && numvnodes <= desiredvnodes) + if (onumvnodes + VNLRU_COUNT_SLOP + 1000 > desiredvnodes && + numvnodes <= desiredvnodes) uma_reclaim(UMA_RECLAIM_DRAIN); if (done == 0) { if (force == 0 || force == 1) { @@ -1930,19 +1934,27 @@ SYSCTL_ULONG(_vfs_vnode_stats, OID_AUTO, alloc_sleeps, CTLFLAG_RD, &vn_alloc_sle "Number of times vnode allocation blocked waiting on vnlru"); static struct vnode * __noinline -vn_alloc_hard(struct mount *mp) +vn_alloc_hard(struct mount *mp, u_long rnumvnodes, bool bumped) { - u_long rnumvnodes, rfreevnodes; + u_long rfreevnodes; - mtx_lock(&vnode_list_mtx); - rnumvnodes = atomic_load_long(&numvnodes); - if (rnumvnodes + 1 < desiredvnodes) { - vn_alloc_cyclecount = 0; - mtx_unlock(&vnode_list_mtx); - goto alloc; + if (bumped) { + if (rnumvnodes > desiredvnodes + VNLRU_COUNT_SLOP) { + atomic_subtract_long(&numvnodes, 1); + bumped = false; + } } + mtx_lock(&vnode_list_mtx); + if (vn_alloc_cyclecount != 0) { + rnumvnodes = atomic_load_long(&numvnodes); + if (rnumvnodes + 1 < desiredvnodes) { + vn_alloc_cyclecount = 0; + mtx_unlock(&vnode_list_mtx); + goto alloc; + } + rfreevnodes = vnlru_read_freevnodes(); if (rfreevnodes < wantfreevnodes) { if (vn_alloc_cyclecount++ >= rfreevnodes) { @@ -1971,6 +1983,10 @@ vn_alloc_hard(struct mount *mp) /* * Wait for space for a new vnode. */ + if (bumped) { + atomic_subtract_long(&numvnodes, 1); + bumped = false; + } mtx_lock(&vnode_list_mtx); vnlru_kick_locked(); vn_alloc_sleeps++; @@ -1983,7 +1999,8 @@ vn_alloc_hard(struct mount *mp) } alloc: mtx_assert(&vnode_list_mtx, MA_NOTOWNED); - atomic_add_long(&numvnodes, 1); + if (!bumped) + atomic_add_long(&numvnodes, 1); vnlru_kick_cond(); return (uma_zalloc_smr(vnode_zone, M_WAITOK)); } @@ -1994,11 +2011,10 @@ vn_alloc(struct mount *mp) u_long rnumvnodes; if (__predict_false(vn_alloc_cyclecount != 0)) - return (vn_alloc_hard(mp)); + return (vn_alloc_hard(mp, 0, false)); rnumvnodes = atomic_fetchadd_long(&numvnodes, 1) + 1; if (__predict_false(vnlru_under(rnumvnodes, vlowat))) { - atomic_subtract_long(&numvnodes, 1); - return (vn_alloc_hard(mp)); + return (vn_alloc_hard(mp, rnumvnodes, true)); } return (uma_zalloc_smr(vnode_zone, M_WAITOK)); From nobody Fri Oct 13 23:53:58 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyb1MrZz4wyK8; Fri, 13 Oct 2023 23:53: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 4S6jyb0Mhsz3KYn; Fri, 13 Oct 2023 23:53:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241239; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2VJQqw6dVftiowUeVh8+hbJ2E2jb6kL0ZB8TzF9u8uQ=; b=c6e0rOae9Y4mKPfeLJFm0R88f0eP/BITPoexht3Y/pCnyDNz1MEpz/0eougxHOy9wZzI2U jruIPLsuAm2v38ewAAkOgOQaK3jwWt1csV1mMhUsohvluhhzPrk6D6Y9F50qtZv0bJBQZi mm5UW8xpyRRpWmT1hk1fnrQaS1Ql2MnGbx+uiRHtoxcwHsthkUzwNnfiByv4Bh0kyzycPO ARSyYqi1bW412F5GsqaWdJl/lcfeAO4sK5IEhoaUV5hJ/NwhsaZcv1NZLRDLPWsgvDOG1X 32hFdx0V3seOhw0xUhv5Bps+HYEqQJeefRdbPbfmdYlt/sVaUdOtoARBkBR+yQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241239; a=rsa-sha256; cv=none; b=eMjgtFOb/loh0rzCuFI4B2W/xzRizdUo7BrI/syNgBPX2ChAQ3rezUi+3AuE64YCIiR/NY DDVdiHBVPb+R5vfU4NJFFwcxlFUhcrKrZB5S0CCtGRz3B0N5rrTnItTOLrDMHep+YAKuj7 dEc0Hvv3S5uz7ZzH8GM/dChAdc3Da8Z8kRAFiADQFHFz4KP5Z7SsMCAhT76cxTiJoULV1D VfE8zi90fINOXieh85ffkbU3OP+qoy5M14QA4noFSTovd9E6g4wxieBknsV6BHRDayei8M FHkpZ6YD+hxKuJ3lD/6HM+VopXmUL753Ll4bSyb6NjOgL95t8Zmvz/90fDZfJw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241239; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2VJQqw6dVftiowUeVh8+hbJ2E2jb6kL0ZB8TzF9u8uQ=; b=Pg/Smin49FpjROz1P3UlJ4OQvJFDp18iwhHshFtrMxHs18tPa1ZwyZy8gVSjysCuwHBDVf insxEDE1RITUIKCVa5bFo1hHuiyzOnBkce4plRXb5A65MiFulC0MFkG5eQYfc7e50fSbG/ frF8uP8l/eD6lNxFehfiC4yGF+YAETdHNA1thTWa+kSnfbbNXEGgbd/Sjbeo9TiuBLn1eZ c90tNaddvuudXGi56zGVllWACO2UPl/8yngSQkDeke7yMCP+vnXuWrePVaH1V6XY5rL2iA 4GogcQ87R1+c1C+uAnSIlZJDk7mHeaTmJ+NkFgc6WsafCRu+oj1HcTXIeAbMxQ== 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 4S6jyZ6YHrz17ql; Fri, 13 Oct 2023 23:53:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNrw5Z032427; Fri, 13 Oct 2023 23:53:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNrwQv032424; Fri, 13 Oct 2023 23:53:58 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:53:58 GMT Message-Id: <202310132353.39DNrwQv032424@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: a0fb0a72b15c - stable/13 - vfs: add max_vnlru_free to the vfs.vnode.vnlru tree List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: a0fb0a72b15cc6cf36b402d35f5b63680e2ab282 Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=a0fb0a72b15cc6cf36b402d35f5b63680e2ab282 commit a0fb0a72b15cc6cf36b402d35f5b63680e2ab282 Author: Mateusz Guzik AuthorDate: 2023-10-11 13:05:43 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:48:14 +0000 vfs: add max_vnlru_free to the vfs.vnode.vnlru tree While here rename the var internally. (cherry picked from commit 281a9715b582861fe4097c2f27eb27b208d752b1) --- sys/kern/vfs_subr.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 8c831034a8e5..a8e4714a7a79 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1296,9 +1296,11 @@ next_iter: return (done); } -static int max_vnlru_free = 10000; /* limit on vnode free requests per call */ -SYSCTL_INT(_debug, OID_AUTO, max_vnlru_free, CTLFLAG_RW, &max_vnlru_free, - 0, +static int max_free_per_call = 10000; +SYSCTL_INT(_debug, OID_AUTO, max_vnlru_free, CTLFLAG_RW, &max_free_per_call, 0, + "limit on vnode free requests per call to the vnlru_free routine (legacy)"); +SYSCTL_INT(_vfs_vnode_vnlru, OID_AUTO, max_free_per_call, CTLFLAG_RW, + &max_free_per_call, 0, "limit on vnode free requests per call to the vnlru_free routine"); /* @@ -1313,8 +1315,8 @@ vnlru_free_impl(int count, struct vfsops *mnt_op, struct vnode *mvp) bool retried; mtx_assert(&vnode_list_mtx, MA_OWNED); - if (count > max_vnlru_free) - count = max_vnlru_free; + if (count > max_free_per_call) + count = max_free_per_call; if (count == 0) { mtx_unlock(&vnode_list_mtx); return (0); From nobody Fri Oct 13 23:54:00 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyc2N4zz4wyQN; Fri, 13 Oct 2023 23:54: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 4S6jyc1nhwz3KWj; Fri, 13 Oct 2023 23:54:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241240; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3lcwD7zOWSFc603hIGOuTYygnqx0pPK1jQRa3XZCZ7c=; b=AolNkOw9bZj6iCd8OIE6mufNKiTkC0JzDl5Tm1GRQD3Cc0pjZA5MskdPP/JOzsnUIVYE9n 1YuJPqLwrD/MtJ8e6qnCpd6qe54oTfO4v0F111fTq0LQOT7KWMS7lpBxo3OKUjcMCfbjAQ 5JNrXHY6yStTNHhkXh94CgaU7dmTOdWhhqi2w9cnzHuaDqyTQ7Y/SDopeioUEdKjB0GoV0 y68e23Sbj+N7TyjMf31YLvna+Afkezf64e+hI14q+K94Rk878uv+Fpcd6yJUSoa+BoE5C4 3ik7lB0mk7rgvk8+Xvr+s2wa4I+OFoYL0vBTiaAweCk9z/81oXDw0R09f+Ljig== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241240; a=rsa-sha256; cv=none; b=LArDykcMe/AUgkYJBbUAFNESKY3U6+7T91FyTjB36ol0fokwFNcPyL0UkYaNQpNJeDe6D/ QDXiethWUcOJQQ15E99/LD/nDVyNw3gYktGeFwUfoenPxBn0mKeDf+z+yQ60jZ/SbN3L9L ciDMr/hwENmPLkgQzNuxa6W3eCSW1bIWGSl8d0hl2iRehlclSC1uzQDD1+MHogaGOGL485 3MFDYmTnzcA/yfqXZb2yr4JB5A7oceIzM6rR7FpekERJSCNfUDwksDsgcvNNcrD4rQyDZI MfvSbFgXJKxhuwDLoFJytHLBj+FJ1yiqA7BXCxqPK3M4ca9y7DuzatuyjwemPw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241240; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3lcwD7zOWSFc603hIGOuTYygnqx0pPK1jQRa3XZCZ7c=; b=B5fPfgBC4winElRAGVBeXUXtO6Mdd8/lG3sh9YW0qZLFjpC8sKlWhsjaVePPx3avjytY0g OGZqMuixpNhwf+dMBQeKgRb40rIxlIBs9MQukV84YZ4jSHkGK/3oPppDtX2eldjRm+jgWb gcwdxPdRNKvx361D1fIRWHLVMcXhVHcDN37Fonq/ie0kUDgodOZSOh2ZBEe2XXMHZo6I1C XbNohDm10qK6Pz8WSiJ3GT+Dd7pAYg71eLrGLxORs+5pJAyp3/moQLXB46vAgZNIHkSpcz vsf6wpVhfTjoeOh69oL8OFGxMiXRY6BFnEgOYgCrLrHjXGoVVRFrofKQ0T95SQ== 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 4S6jyc0k4pz17Vs; Fri, 13 Oct 2023 23:54:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNs0AF032494; Fri, 13 Oct 2023 23:54:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNs0Fe032485; Fri, 13 Oct 2023 23:54:00 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:54:00 GMT Message-Id: <202310132354.39DNs0Fe032485@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 46d5611b8796 - stable/13 - vfs: count calls to uma_reclaim in vnlru List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 46d5611b8796328b4e326c319cd896f6cd1600f4 Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=46d5611b8796328b4e326c319cd896f6cd1600f4 commit 46d5611b8796328b4e326c319cd896f6cd1600f4 Author: Mateusz Guzik AuthorDate: 2023-10-11 22:48:03 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:48:14 +0000 vfs: count calls to uma_reclaim in vnlru (cherry picked from commit bb679b0c49094757f2aef3d8fe46c41dc8192fea) --- sys/kern/vfs_subr.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index a8e4714a7a79..2be83da5d73f 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1728,6 +1728,10 @@ vnlru_proc_light(void) return (true); } +static u_long uma_reclaim_calls; +SYSCTL_ULONG(_vfs_vnode_vnlru, OID_AUTO, uma_reclaim_calls, CTLFLAG_RD | CTLFLAG_STATS, + &uma_reclaim_calls, 0, "Number of calls to uma_reclaim"); + static void vnlru_proc(void) { @@ -1818,8 +1822,10 @@ vnlru_proc(void) * this happens. */ if (onumvnodes + VNLRU_COUNT_SLOP + 1000 > desiredvnodes && - numvnodes <= desiredvnodes) + numvnodes <= desiredvnodes) { + uma_reclaim_calls++; uma_reclaim(UMA_RECLAIM_DRAIN); + } if (done == 0) { if (force == 0 || force == 1) { force = 2; From nobody Fri Oct 13 23:54:01 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyd5gZYz4wyGT; Fri, 13 Oct 2023 23:54: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 4S6jyd2QXWz3KTf; Fri, 13 Oct 2023 23:54:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241241; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=o99MDK697+zN/s+bmY3KqH0XEypdZohRCmha9DZeVyY=; b=OwTyt3fsX7PgbK77/WnH2m9TgX4FXjoOGvKheiehMwPKoWLYuKNU/7ItzsBC4IhwQkiGHS a8BXQpi7A0PwrvzLiGEXJRyqEjc8qw4e1V0LzvXAHkYxTyK6mDsRSrZ70i8Y1VXac8KPYP U9+uCHl8QcpG0fsf5Vp9kJGMcAKToqPCLI2lhaRzZaS+/GHRkbCWQFRbjUAhaT6i2jJ89t Zxznbc7GmFnxSrjmMWGU9btsQpifPmDgDOPm8rJQTjUYyITeHpscs3PmSh18CWWcqhWsBk 1/qZOe9HUNRpA2M65ZVGpwUzA03plH56WlxHainGb97hOFmz4XmbHX+AdCM9Pw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241241; a=rsa-sha256; cv=none; b=VzkieVyMsfdsNnVCIqcujN6yzHdhOkpSi1ICj9FWAYzQABx1LB6s+p2Yy92V4xUv4Jm/r+ jYUj12S7bchYI5ge0plzWSTNTUYSjHd475xokIj2/hLZob+KWbsN91jE5W68Wip24vRbya 9kVKyAxCXygb4d256QGQio/03UnH21H0Mz1UvR8sZscyAzTdpGTYFNnOW5fhU6KPNaVKDJ HmwsnGPPOFIU6J9B2UlCHmDQS9sTgCeokQ1ib5jEd9Am6O3Llz3P0LY8Zr2/OorxAkaqz+ dIpSu3Xl7j+iCJ6NsLY7LkXvrZSHwLfUs+pPUak9NRu1qLO7BWh0AjqhFY+LXA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241241; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=o99MDK697+zN/s+bmY3KqH0XEypdZohRCmha9DZeVyY=; b=Oa5gsKOeMA2AqEd9y4EeqVOX7eQw9Wax/FR+7NlLfLk0t2K5TE+/lDsDKYfpte705UsF2T Cda6fMorBArWsZDsZT53PHeCgF7ZPKg9uDOAUTbc6b69NtkPH3i9kZv8mtsj2foXpP1xfD H6aNc+C1JGbVVZMNNCKXavoNN+NoiZU2ji9js3DpHDMtFCBmpkVmai//SzBDC9mL6BznKr 0wp8/pCy7+++jVV+86i1B4INCCnrmg/INv+x9do0ms01cRtH2ZnGU8ilAgOM6j5ELIipvw Uj03LlCf8lUBoe40KmGgisNmGU7H+QkloVanWg2uyvI2EYiEnZYpKOQ3MHtUiQ== 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 4S6jyd1XZQz17c1; Fri, 13 Oct 2023 23:54:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNs1Ti032548; Fri, 13 Oct 2023 23:54:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNs1UF032545; Fri, 13 Oct 2023 23:54:01 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:54:01 GMT Message-Id: <202310132354.39DNs1UF032545@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: a6a4a57ca3e8 - stable/13 - vfs: count recycles by vnlru and by vn_alloc separately List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: a6a4a57ca3e8fe5ca539c31cb1fab7acf8a26dd7 Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=a6a4a57ca3e8fe5ca539c31cb1fab7acf8a26dd7 commit a6a4a57ca3e8fe5ca539c31cb1fab7acf8a26dd7 Author: Mateusz Guzik AuthorDate: 2023-10-12 06:47:45 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:52:39 +0000 vfs: count recycles by vnlru and by vn_alloc separately Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit a92fc3122d2becfbf5a627af6eda5cedfac57c31) --- sys/kern/vfs_subr.c | 52 ++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 36 insertions(+), 16 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 2be83da5d73f..530afbe05b3e 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -109,7 +109,7 @@ static void delmntque(struct vnode *vp); static int flushbuflist(struct bufv *bufv, int flags, struct bufobj *bo, int slpflag, int slptimeo); static void syncer_shutdown(void *arg, int howto); -static int vtryrecycle(struct vnode *vp); +static int vtryrecycle(struct vnode *vp, bool isvnlru); static void v_init_counters(struct vnode *); static void vn_seqc_init(struct vnode *); static void vn_seqc_write_end_free(struct vnode *vp); @@ -210,6 +210,11 @@ SYSCTL_COUNTER_U64(_vfs, OID_AUTO, recycles_free, CTLFLAG_RD, &recycles_free_cou SYSCTL_COUNTER_U64(_vfs_vnode_vnlru, OID_AUTO, recycles_free, CTLFLAG_RD, &recycles_free_count, "Number of free vnodes recycled to meet vnode cache targets"); +static counter_u64_t direct_recycles_free_count; +SYSCTL_COUNTER_U64(_vfs_vnode_vnlru, OID_AUTO, direct_recycles_free, CTLFLAG_RD, + &direct_recycles_free_count, + "Number of free vnodes recycled by vn_alloc callers to meet vnode cache targets"); + static counter_u64_t vnode_skipped_requeues; SYSCTL_COUNTER_U64(_vfs_vnode_stats, OID_AUTO, skipped_requeues, CTLFLAG_RD, &vnode_skipped_requeues, "Number of times LRU requeue was skipped due to lock contention"); @@ -765,6 +770,7 @@ vntblinit(void *dummy __unused) vnodes_created = counter_u64_alloc(M_WAITOK); recycles_count = counter_u64_alloc(M_WAITOK); recycles_free_count = counter_u64_alloc(M_WAITOK); + direct_recycles_free_count = counter_u64_alloc(M_WAITOK); vnode_skipped_requeues = counter_u64_alloc(M_WAITOK); /* @@ -1307,7 +1313,7 @@ SYSCTL_INT(_vfs_vnode_vnlru, OID_AUTO, max_free_per_call, CTLFLAG_RW, * Attempt to reduce the free list by the requested amount. */ static int -vnlru_free_impl(int count, struct vfsops *mnt_op, struct vnode *mvp) +vnlru_free_impl(int count, struct vfsops *mnt_op, struct vnode *mvp, bool isvnlru) { struct vnode *vp; struct mount *mp; @@ -1393,7 +1399,7 @@ vnlru_free_impl(int count, struct vfsops *mnt_op, struct vnode *mvp) * * Check nullfs for one example (null_getwritemount). */ - vtryrecycle(vp); + vtryrecycle(vp, isvnlru); count--; if (count == 0) { break; @@ -1409,22 +1415,33 @@ vnlru_free_impl(int count, struct vfsops *mnt_op, struct vnode *mvp) * XXX: returns without vnode_list_mtx locked! */ static int -vnlru_free_locked(int count) +vnlru_free_locked_direct(int count) { int ret; mtx_assert(&vnode_list_mtx, MA_OWNED); - ret = vnlru_free_impl(count, NULL, vnode_list_free_marker); + ret = vnlru_free_impl(count, NULL, vnode_list_free_marker, false); mtx_assert(&vnode_list_mtx, MA_NOTOWNED); return (ret); } static int -vnlru_free(int count) +vnlru_free_locked_vnlru(int count) +{ + int ret; + + mtx_assert(&vnode_list_mtx, MA_OWNED); + ret = vnlru_free_impl(count, NULL, vnode_list_free_marker, true); + mtx_assert(&vnode_list_mtx, MA_NOTOWNED); + return (ret); +} + +static int +vnlru_free_vnlru(int count) { mtx_lock(&vnode_list_mtx); - return (vnlru_free_locked(count)); + return (vnlru_free_locked_vnlru(count)); } void @@ -1435,7 +1452,7 @@ vnlru_free_vfsops(int count, struct vfsops *mnt_op, struct vnode *mvp) MPASS(mvp != NULL); VNPASS(mvp->v_type == VMARKER, mvp); mtx_lock(&vnode_list_mtx); - vnlru_free_impl(count, mnt_op, mvp); + vnlru_free_impl(count, mnt_op, mvp, true); mtx_assert(&vnode_list_mtx, MA_NOTOWNED); } @@ -1451,7 +1468,7 @@ vnlru_free(int count, struct vfsops *mnt_op) return; mtx_lock(&vnode_list_mtx); mvp = vnode_list_free_marker; - if (vnlru_free_impl(count, mnt_op, mvp) == 0) { + if (vnlru_free_impl(count, mnt_op, mvp, true) == 0) { /* * It is possible the marker was moved over eligible vnodes by * callers which filtered by different ops. If so, start from @@ -1461,7 +1478,7 @@ vnlru_free(int count, struct vfsops *mnt_op) TAILQ_REMOVE(&vnode_list, mvp, v_vnodelist); TAILQ_INSERT_HEAD(&vnode_list, mvp, v_vnodelist); } - vnlru_free_impl(count, mnt_op, mvp); + vnlru_free_impl(count, mnt_op, mvp, true); } mtx_unlock(&vnode_list_mtx); } @@ -1719,7 +1736,7 @@ vnlru_proc_light(void) return (false); if (freecount != 0) { - vnlru_free(freecount); + vnlru_free_vnlru(freecount); } mtx_lock(&vnode_list_mtx); @@ -1765,7 +1782,7 @@ vnlru_proc(void) * try to reduce it by discarding from the free list. */ if (rnumvnodes > desiredvnodes + 10) { - vnlru_free_locked(rnumvnodes - desiredvnodes); + vnlru_free_locked_vnlru(rnumvnodes - desiredvnodes); mtx_lock(&vnode_list_mtx); rnumvnodes = atomic_load_long(&numvnodes); } @@ -1865,7 +1882,7 @@ SYSINIT(vnlru, SI_SUB_KTHREAD_UPDATE, SI_ORDER_FIRST, kproc_start, * through vgone(). */ static int -vtryrecycle(struct vnode *vp) +vtryrecycle(struct vnode *vp, bool isvnlru) { struct mount *vnmp; @@ -1911,7 +1928,10 @@ vtryrecycle(struct vnode *vp) return (EBUSY); } if (!VN_IS_DOOMED(vp)) { - counter_u64_add(recycles_free_count, 1); + if (isvnlru) + counter_u64_add(recycles_free_count, 1); + else + counter_u64_add(direct_recycles_free_count, 1); vgonel(vp); } VOP_UNLOCK(vp); @@ -1984,7 +2004,7 @@ vn_alloc_hard(struct mount *mp, u_long rnumvnodes, bool bumped) * should be chosen so that we never wait or even reclaim from * the free list to below its target minimum. */ - if (vnlru_free_locked(1) > 0) + if (vnlru_free_locked_direct(1) > 0) goto alloc; mtx_assert(&vnode_list_mtx, MA_NOTOWNED); if (mp == NULL || (mp->mnt_kern_flag & MNTK_SUSPEND) == 0) { @@ -2001,7 +2021,7 @@ vn_alloc_hard(struct mount *mp, u_long rnumvnodes, bool bumped) msleep(&vnlruproc_sig, &vnode_list_mtx, PVFS, "vlruwk", hz); if (atomic_load_long(&numvnodes) + 1 > desiredvnodes && vnlru_read_freevnodes() > 1) - vnlru_free_locked(1); + vnlru_free_locked_direct(1); else mtx_unlock(&vnode_list_mtx); } From nobody Fri Oct 13 23:54:02 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6jyf4Ky5z4wyQS; Fri, 13 Oct 2023 23:54:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6jyf3jSwz3Kg9; Fri, 13 Oct 2023 23:54:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241242; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NHbv4xFGKbMVF8Z5OhkmONlb4ZdmwyeEYhoEaTIMaho=; b=hPAaYQfQje1tkfdifRnsdSuKbS1QraVVCw5T7yFuDoFruvsd3ACB445yENek0MZTmGx8ma sLnzPNTJHeDYbkytah/M0JW50P+QwRTdt19b5acGL5/xg/TIB6H6m9aco5WDCyk10PAA34 I/OBsd6E0l5Uzm1Q+mW8C3SYuQCrwDd6UdQPkcioEHeKPdSg0GdIKsgAWg+UnlGwsjEWL6 UTnvbtH4IeOnPK67TCU6Vn5sMb788FH7iPUGbRKC0mp9LZeP5FzqyGwbrmLNH5GNo3Kvsp 5rUUAcDg5p9YW7vEetVaI2nPealnZTQ8Z9gB0hdO53zvrmU63WGFMDJwY0FWwA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241242; a=rsa-sha256; cv=none; b=q26geYkS9nqbUGPC5g6UUkAZIa+VL/8eyXM1vpduOj9schd9314Icv+FKn0NCNX97iuVuW zMBUC5dWf3pEisYtu0owSI2ZfRBPZLPQUoFqmvvzOzt98MVTSDVbQLwifz5UJFDjEaheT7 hXBycXUQqtnE/5PHnNUYJa3F5cAqNBpKHI0ELqTVwqoSXlvD0qmdH6v72zswUolgp816cf Pj4I6epCi8znwXLRvuoYzajdHxMxlPHJMDkhaG/k7PJE+1OlmRUbBWmN2yF4CbQZ3h+Yrm wu1RFedYNgEzpB+UUVVohzWX4miIQzJ7HrzIylOtNT282RQ8toQME1mTjDPDAA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241242; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NHbv4xFGKbMVF8Z5OhkmONlb4ZdmwyeEYhoEaTIMaho=; b=DvBX9UvaXktBESElf+0wV1saYsStmOCIA/rrV6t9G2kAM+q3A10y3Gmrb5G/KvsxkQ3uA0 U69RETmkIbdvnBEL5bcmsjbYHSOM7fWRCX6XmgNoQRuTzyTJoD5HOSzPARcy3Rgx2/mwKv lGo9J7kfRQDnL5UPs2hemVoYRb+r5GcWGyP7uaDtAJqTzS4srO9xuKxZ/VmhxjtGNFPoGp F/l9GkU1VYJtJfOmUrPueHlckQLrbc5q9RF/3GVbhnKr57VylHGr5a+FGcYJWOZqmdsdHx zJn1LeUEviCgEe0kNKgPcyghkPOiwrHGgRjzHtFhG4sMbSvP/3syaxJpoLNYMQ== 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 4S6jyf2q8gz17c2; Fri, 13 Oct 2023 23:54:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNs2WQ032599; Fri, 13 Oct 2023 23:54:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNs2fS032596; Fri, 13 Oct 2023 23:54:02 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:54:02 GMT Message-Id: <202310132354.39DNs2fS032596@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: eb58f9e6c6df - stable/13 - vfs: convert recycles_count and recycles_free_count to mere u_long List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: eb58f9e6c6dfbd6a43277bc0253152302ac1c2a2 Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=eb58f9e6c6dfbd6a43277bc0253152302ac1c2a2 commit eb58f9e6c6dfbd6a43277bc0253152302ac1c2a2 Author: Mateusz Guzik AuthorDate: 2023-10-12 06:57:59 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:52:39 +0000 vfs: convert recycles_count and recycles_free_count to mere u_long Only vnlru ever updates them. This also removes recycles_count updates from hand-rolled debug vnode recycling via sysctl. Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 37544d9768110fd67527db7f2a3f7bb6fc977582) --- sys/kern/vfs_subr.c | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 530afbe05b3e..3305110ed065 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -198,16 +198,19 @@ static long wantfreevnodes; static long __exclusive_cache_line freevnodes; static long freevnodes_old; -static counter_u64_t recycles_count; -SYSCTL_COUNTER_U64(_vfs, OID_AUTO, recycles, CTLFLAG_RD, &recycles_count, +static u_long recycles_count; +SYSCTL_ULONG(_vfs, OID_AUTO, recycles, CTLFLAG_RD | CTLFLAG_STATS, &recycles_count, 0, "Number of vnodes recycled to meet vnode cache targets (legacy)"); -SYSCTL_COUNTER_U64(_vfs_vnode_vnlru, OID_AUTO, recycles, CTLFLAG_RD, &recycles_count, +SYSCTL_ULONG(_vfs_vnode_vnlru, OID_AUTO, recycles, CTLFLAG_RD | CTLFLAG_STATS, + &recycles_count, 0, "Number of vnodes recycled to meet vnode cache targets"); -static counter_u64_t recycles_free_count; -SYSCTL_COUNTER_U64(_vfs, OID_AUTO, recycles_free, CTLFLAG_RD, &recycles_free_count, +static u_long recycles_free_count; +SYSCTL_ULONG(_vfs, OID_AUTO, recycles_free, CTLFLAG_RD | CTLFLAG_STATS, + &recycles_free_count, 0, "Number of free vnodes recycled to meet vnode cache targets (legacy)"); -SYSCTL_COUNTER_U64(_vfs_vnode_vnlru, OID_AUTO, recycles_free, CTLFLAG_RD, &recycles_free_count, +SYSCTL_ULONG(_vfs_vnode_vnlru, OID_AUTO, recycles_free, CTLFLAG_RD | CTLFLAG_STATS, + &recycles_free_count, 0, "Number of free vnodes recycled to meet vnode cache targets"); static counter_u64_t direct_recycles_free_count; @@ -459,7 +462,6 @@ sysctl_try_reclaim_vnode(SYSCTL_HANDLER_ARGS) goto putvnode; } - counter_u64_add(recycles_count, 1); vgone(vp); putvnode: NDFREE(&nd, 0); @@ -492,7 +494,6 @@ sysctl_ftry_reclaim_vnode(SYSCTL_HANDLER_ARGS) if (error != 0) goto drop; - counter_u64_add(recycles_count, 1); vgone(vp); VOP_UNLOCK(vp); drop: @@ -768,8 +769,6 @@ vntblinit(void *dummy __unused) uma_prealloc(buf_trie_zone, nbuf); vnodes_created = counter_u64_alloc(M_WAITOK); - recycles_count = counter_u64_alloc(M_WAITOK); - recycles_free_count = counter_u64_alloc(M_WAITOK); direct_recycles_free_count = counter_u64_alloc(M_WAITOK); vnode_skipped_requeues = counter_u64_alloc(M_WAITOK); @@ -1272,7 +1271,7 @@ restart: vn_finished_write(mp); goto next_iter_unlocked; } - counter_u64_add(recycles_count, 1); + recycles_count++; vgonel(vp); VOP_UNLOCK(vp); vdropl_recycle(vp); @@ -1929,7 +1928,7 @@ vtryrecycle(struct vnode *vp, bool isvnlru) } if (!VN_IS_DOOMED(vp)) { if (isvnlru) - counter_u64_add(recycles_free_count, 1); + recycles_free_count++; else counter_u64_add(direct_recycles_free_count, 1); vgonel(vp); From nobody Fri Oct 13 23:57:46 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6k2y59QHz4wyT3; Fri, 13 Oct 2023 23:57: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 4S6k2y4MKcz3NZC; Fri, 13 Oct 2023 23:57:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241466; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4Sqb5XAK/2vNzhJAMgdW8MPo0raXb/bExIGKXIYZOQc=; b=efyLT0Y0OVRRgGxB6sA8uY/0KkGCg4tQmaomw4xRgnA7Wzwe7UgJURCPO1yTgF6gwU/f3Z hvod4xrIdflUHbMiGWNRga5NzHrnCn/noBBjPbOhAPaSnjT3Y4kaX+mMcJc6mZ2I8mgYjX K6Jw/HfHrQkpCzmU0926+xGeLxcQzmqpUB9nXkekC5EBowZY8MSMvn2MH6QkS4pbchpQGK 7bkkw4xGRDSsTAdNJylBhOOGmn20sj5jrZDcIRAtuSnc6pUY/RQAaOTsTfQe81Diu+8WAE dTFEddo3apnF+YcbLZyddltw0Liz9LTI2604w7dF40tbMzjvnuG60mOxC+X+7A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241466; a=rsa-sha256; cv=none; b=LTMmdMkIFgsG4z0Npb0PZD3X+Jn1MTQ+eNLQtF4Vi8ysJTXP9ZOvcozVYALwjUqjABd4+z IwQePTCTk2lfVDQoGFq/wdHNbGUUwJk5MUvaPOnSmfCwfGehcARs+g3M8KBhQmzQMs8UpI KnYM8+98reP9GZEKu4IObUuquYl9gCP9/4dRUor7yvRC8o/lnwTJXANaUwxKKH9UWETkqw hvVwAT6p84gZ3+n9Np4syzWxNmZfXRWxmAP6g5Pf87Cz3gk434Wsbm3APAEpSfAjFDrDp+ /AtEqmYl6faBfpLyv/ohuCE5c50p85ybkaOBy8xU17Zh2L+ARHzMEtlgxeg3gQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241466; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4Sqb5XAK/2vNzhJAMgdW8MPo0raXb/bExIGKXIYZOQc=; b=oDlZfrYIHYIPeIvAMfo+ZS/7PGLMmRLO7XtsQGIasudp0kJ+aT1yC9I6icKJkCGoFAATbh T9+EEXPDtzb/veFr9rvzmmY20mPyVQieifhRF2w++9C0EhQk0A6L4ENZS4+yfpR9av/2Wi RHc3xFQWoOtrbtOPsi9e6ijuU0pLAoi576k8itY1WsOJV1y5Pc4GeJpM7hU7DKKFaFzbor 5QZ7f+/HYB/KmwHfB6elsRRiCKeCYbr/3Eik6PoczaKvB8d1fX8BfQSG+5G9tYIwiVxyL3 9N17PrxQMi/g4S+Mu/Mq+7djgqNDx1ZMSHyHgUq3WcCBPhhlYA8GlQHbFlF8CA== 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 4S6k2y3R9fz17fh; Fri, 13 Oct 2023 23:57:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39DNvk4x033294; Fri, 13 Oct 2023 23:57:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39DNvkep033291; Fri, 13 Oct 2023 23:57:46 GMT (envelope-from git) Date: Fri, 13 Oct 2023 23:57:46 GMT Message-Id: <202310132357.39DNvkep033291@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: f6277a777aa0 - stable/13 - vfs cache: s/vfs.cache_fast_lookup/vfs.cache.param.fast_lookup List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: f6277a777aa0f20cfe8d6e0000572a4c66706ad1 Auto-Submitted: auto-generated The branch stable/13 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=f6277a777aa0f20cfe8d6e0000572a4c66706ad1 commit f6277a777aa0f20cfe8d6e0000572a4c66706ad1 Author: Mateusz Guzik AuthorDate: 2023-10-03 13:34:32 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-13 23:56:37 +0000 vfs cache: s/vfs.cache_fast_lookup/vfs.cache.param.fast_lookup (cherry picked from commit 38a375c472d295df41adf73c5ddd50543f9d877c) --- sys/kern/vfs_cache.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index 60e366068392..647d4573563c 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -3977,6 +3977,8 @@ syscal_vfs_cache_fast_lookup(SYSCTL_HANDLER_ARGS) } SYSCTL_PROC(_vfs, OID_AUTO, cache_fast_lookup, CTLTYPE_INT|CTLFLAG_RW|CTLFLAG_MPSAFE, &cache_fast_lookup, 0, syscal_vfs_cache_fast_lookup, "IU", ""); +SYSCTL_PROC(_vfs_cache_param, OID_AUTO, fast_lookup, CTLTYPE_INT|CTLFLAG_RW|CTLFLAG_MPSAFE, + &cache_fast_lookup, 0, syscal_vfs_cache_fast_lookup, "IU", ""); /* * Components of nameidata (or objects it can point to) which may From nobody Sat Oct 14 00:03:23 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6k9R43dhz4x0kG; Sat, 14 Oct 2023 00:03: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 4S6k9R3XTQz3PSp; Sat, 14 Oct 2023 00:03:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241803; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CtX/Okb6eZVSqoH2MxWOZUddu6AZcDIcxSKpWytIGr8=; b=X4bVqG2+8Eh2sEMpKE+y2bWK6qxZowg+37tVeJ1Km39u4hQl9sqzghvXXyZVUyn4b10ZAI BXF+TRdWydmvcCgO9CMprmZptwYg2gMVBRtkAFitiDIC9KHCr3TlZYJv4MoYMP16cgDPAB zznZrtlhhUCLYK1sWxhXJVm4qcGkYCVCfJrvRFLbQcvvC2waStyixbDgTZZFY7FeWvFv0v VLMSw3HKGmrEkLx8lhvM5hAJtiqtAJvfytAEb1dVB8ikv06Lg6xqFYXSbXJRawTvfUwYJ2 Cy2UlzGHMRDaMKVFaFYZx9Fh/PFE26WQNKIqikGZLetyx/fykLW1xS00oWpulg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241803; a=rsa-sha256; cv=none; b=yMsSl8EjG5OpCgVMwuOK4iH0WV8aq90P72M1FGLzbliJOq8uHPTW4qMBwh8T753Edf/h6m Gq8rX22Zf0huH6/Zo/2zEiqMgZ65BYKQsK9+f1+wpbLbNxvkMVlXTe+2SGRwgS6+rwlM1o GIuDpU98WuBlSy5YyTxiXiWxMyKN0FSwZ0NzNkvc0zGasQ4T0ZLniUWEziVpcWQ31UaQG9 6uPkQmFdXLXZp8aaRup1i0JxcOG4JTrTkepb+UrzCrCxciLg+5ueigH4knFJifP5+uF/ql AXDm8u52VICvA0QgLj7wKLfQQFIhQ9e2ODGqdM7a8wAsYIReO2IMwN8LhBDxdw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241803; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CtX/Okb6eZVSqoH2MxWOZUddu6AZcDIcxSKpWytIGr8=; b=gC8zvKIC/XeWUXq1c4r7GrNom6pzAfj9Y9pvV3XdyJyJHyYkSCc6a/KEYPipWqwe+ywpfj oNLUgc/Q37pjUUXh3+abh5DSDw/zu6PekYDnNp5y+wc1tbvs3XFtgNxLRg3g880fmV6DcR UZg9QtTpdFLhXAft2j0RmF+uOrcqFBUMLPl3210OiFqq4E2KfkYPeaL+AEjWdx0dGJkxzJ yPUE8eRm8ZlWMGIbph49Bq9aCazWqc2H++egKawFjJcYa1KnlhAWytpSOmWSJsY20z83ae 6eMkdeFEiQww5tjIGtXzel0aaYbpvXr6SYsWzp9bmC0X10DiH1/Y1mihkLsDQQ== 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 4S6k9R2bM2z17r7; Sat, 14 Oct 2023 00:03:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E03NFo050412; Sat, 14 Oct 2023 00:03:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E03NA0050409; Sat, 14 Oct 2023 00:03:23 GMT (envelope-from git) Date: Sat, 14 Oct 2023 00:03:23 GMT Message-Id: <202310140003.39E03NA0050409@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 822e404750b1 - releng/14.0 - newvers: remove references to svnliteversion List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 822e404750b19f96cd375eae9dedfaa3d62c2b05 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=822e404750b19f96cd375eae9dedfaa3d62c2b05 commit 822e404750b19f96cd375eae9dedfaa3d62c2b05 Author: Ed Maste AuthorDate: 2023-10-02 12:16:50 +0000 Commit: Ed Maste CommitDate: 2023-10-13 23:17:51 +0000 newvers: remove references to svnliteversion svnliteversion was provided by the base system copy of subversion, which was disabled in a2bc17474b96 ("Disable building svnlite(1) by default.") Reviewed by: zlei Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42034 (cherry picked from commit 826d1446791816fcaa9be59aedc7295ffbc8d5bb) (cherry picked from commit f6fa4749f746e493b51eea161b0ae2a28967c32d) Approved by: re (gjb) --- sys/conf/newvers.sh | 9 --------- 1 file changed, 9 deletions(-) diff --git a/sys/conf/newvers.sh b/sys/conf/newvers.sh index 6ffe1c40a68f..a876fe20ec49 100644 --- a/sys/conf/newvers.sh +++ b/sys/conf/newvers.sh @@ -218,15 +218,6 @@ for dir in /usr/bin /usr/local/bin; do fi done -if [ -z "${svnversion}" ] && [ -x /usr/bin/svnliteversion ] ; then - /usr/bin/svnliteversion $(realpath ${0}) >/dev/null 2>&1 - if [ $? -eq 0 ]; then - svnversion=/usr/bin/svnliteversion - else - svnversion= - fi -fi - if findvcs .git; then for dir in /usr/bin /usr/local/bin; do if [ -x "${dir}/git" ] ; then From nobody Sat Oct 14 00:03:24 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6k9S53yyz4x0yJ; Sat, 14 Oct 2023 00:03:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6k9S4XPRz3PnT; Sat, 14 Oct 2023 00:03:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241804; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ISvNcnY3FWUJjsXvQw50R1/L2pehaO0Ncbh5m57Eh4I=; b=VIzDrkm9nDBDCYWP1mTlzkhokLzj1MeXJciXnMUBbzm4TfQ3eidhVrOaKP6mRmvZVVCTtU +s63Vr135eDJbdZPu+cLeAkzSkWpf1iI4KAoc8M3HG/S1dudrgPvE3yhNqTO8plfMDb5GB vlWyCbRSbsJa+OFa0l6HlaTYnfMneM+2LTp/Pe/GVMJEoMHQVaF08PN+gdYylP5CDetnWo XFnpwvnvoI/N2npi7TIQ/ic5qnFCMaapjs3pi9KrUrKYuWTEkpQL5Wscmn1W/nZBZfieXn WxjzR2xvdPhni3mmZ4n/vDuriSLlyGnzemVXkOuhW56XcmOmEM553FrMuo8sFA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241804; a=rsa-sha256; cv=none; b=sGp5by1TMtkMp9xsTvQUzeIbQQt7LuuksTyeXOAFayIraqNrsmN9CJ1MoIAem8jhegCZTr /nt+UCRbNVSW3eDa4lqmB/DUKZ5mfU4fbS2IT3437DiyUTXtsPwtTcAogGDbsQcYPyUoWR 8JuXvmmZP0MQuEVurdFMa3mpkmVHnlObgJfsvGVxKfdwRerhIzrglkCcpP05O7Sh5kimm0 XNrDRLEKW88SKpl29c3Q3Zhv7nlprG72g8rMCVbKWVAlY4/UEbn19fdvW6g3Z8uosRdQxZ x9nzBApdQNX+Kuk2/gnhcxbPLLiABBN2Jxf2N2NVKzb8kX57zQeZITEjXHuuug== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241804; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ISvNcnY3FWUJjsXvQw50R1/L2pehaO0Ncbh5m57Eh4I=; b=R/Iiii4LB5nclJA8tQZtqr8VssGckC3m5Cx1cfXGPJP7J6aJcGEpuN2wvkYnzcgoBLwyyd 4pH7cSQdmx58Uavl2MT0Eo+pyBuRofPIjpRYvezjb83zy+lxmbiGKNNmyHYsw7rRxgQxMk l/p0pz4mCiRLaT3FrvRIzE99VLqolUAaLxqfhdk4vN8vAVW5EyrcGTaaz53MXrTPWyN7AN V8RgWuKIlWooi6iTXtm5zXOw4sWq6R2NKHmbCwKFES1psuXWi2cXbFARzq5qF7h1Bu7HHK 2yxTVwbAHPh+zltKjnuaQ71ZNMyNzHduyP9SP1nO79ATKeSDXM6e+HaDIiDk2g== 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 4S6k9S3XXKz17HD; Sat, 14 Oct 2023 00:03:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E03OtJ050465; Sat, 14 Oct 2023 00:03:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E03Ot8050462; Sat, 14 Oct 2023 00:03:24 GMT (envelope-from git) Date: Sat, 14 Oct 2023 00:03:24 GMT Message-Id: <202310140003.39E03Ot8050462@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: a5767639a1cb - releng/14.0 - udl.4: note that "device videomode" is also required List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: a5767639a1cbe6a61c8c532b4e564786c00cbf35 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=a5767639a1cbe6a61c8c532b4e564786c00cbf35 commit a5767639a1cbe6a61c8c532b4e564786c00cbf35 Author: Archimedes Gaviola AuthorDate: 2023-09-09 17:39:17 +0000 Commit: Ed Maste CommitDate: 2023-10-13 23:17:58 +0000 udl.4: note that "device videomode" is also required Reviewed by: emaste (cherry picked from commit 9888a79adad22ba06b5aff17d05abac0029c537a) (cherry picked from commit 9200ca25d9d251d720e8b5263e5aa2fb8ba2e68d) Approved by: re (gjb) --- share/man/man4/udl.4 | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/share/man/man4/udl.4 b/share/man/man4/udl.4 index fa6e96343a2a..b2cfeba2489c 100644 --- a/share/man/man4/udl.4 +++ b/share/man/man4/udl.4 @@ -14,7 +14,7 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd February 15, 2015 +.Dd September 9, 2023 .Dt UDL 4 .Os .Sh NAME @@ -22,10 +22,11 @@ .Nd DisplayLink DL-120 / DL-160 USB display devices .Sh SYNOPSIS To compile this driver into the kernel, -place the following line in your +place the following lines in your kernel configuration file: .Bd -ragged -offset indent .Cd "device udl" +.Cd "device videomode" .Ed .Pp Alternatively, to load the driver as a From nobody Sat Oct 14 00:03:25 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6k9V1V9Sz4x0mx; Sat, 14 Oct 2023 00:03:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6k9T5FMMz3PqL; Sat, 14 Oct 2023 00:03:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241805; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1NGeeXdqF3QGoBVeEPwoUWwYqYwYBVc2N2nkiuP4m+Q=; b=U7WZ9bHO5YR43K6VGvBbqUBzgcwFpX7/U5T7t6VSnjvSGgRyBpqtLMBx7D2vAWj9uLm5oN T8FcsxyI5mt4YcXZR7nhOY3Kh7t8WnuZvkVxtEZ6Sux2SSHEA38eBVUWhepeujjzhIkcC0 ik3S67iv6zsvkwADugguXs98jO+yajrsRfG93aNXBuH9B1hmYYroMBIosyrG7EXAhJ8DYZ 0N37/XKKyk7+3o3TMgqVqOLwC43o9TVXKSQNnwPpkSihWwxVPSvRZd16Zqtnz5wuADPmh0 krxoR/CTMhFH0CiP6P7Kx+fp9KCPH66uNZtvxmK8cMHAyWbdasvyHHo3jIQ32Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241805; a=rsa-sha256; cv=none; b=BbDo6MNFQBFA8fiMAIcQjPjyjd3zTjvfBcuRzXAztfLcAZWRWnQSi55SH74d5HjvjEv4SK IeauSiui9xGQ3c8f+52VWp3e52u5K++9seXklUpmYbCIT433Ndriar2cOf48Ki6R2xfISe r7eh1johy7PXez8fDb3HkfD0sqruug2tZggV76gwUWVzatW1JSNHLzqhVNZ/vudxzxNVaK wSPsHjrG/eywv4sLbRjKAq1u/q/er8PpW9ZNzEOKqJ/6fj+rkqCqLSLH1kagZUfZ6G0Gof zQIlvq7+qhontRMY4O+PyHFVzbp2iOx753SpHfLr4mjxoSStz2C3XUoDLiqLQw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241805; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1NGeeXdqF3QGoBVeEPwoUWwYqYwYBVc2N2nkiuP4m+Q=; b=hZietyxOQUK0G41hfTsOA6VmVt7qbtjcdxpd3HYNUUaCbWLaZaatKRYIZI9prkddFSKHuJ TE2iCqKg/lmt+GsOrRjyQ6+AR34bblvop9LsXCaXwgx9A/ye/svtrNJivGBKq7YECJKvsz 9+QkhpKxYWQQu6yf35A5flQjzJ4g4a4AqUG4YToyT9Y7iHXcz/2gdPAw4A8KH91vO+Fpty nkAKF0Vmfe3XJHbQ3m+7sPHVJraWoIqSRJYf+pLt0WA0t3Yi/b6QAG5oqcLa4P5D8xEC7b TqEFIQ7+xRMt/Sa5cYKdDGKW/QQSxO6xG4lNE+KyOf/q5gKQvA74wKqBdizV4Q== 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 4S6k9T4Hs8z17WL; Sat, 14 Oct 2023 00:03:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E03P16050514; Sat, 14 Oct 2023 00:03:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E03PNU050511; Sat, 14 Oct 2023 00:03:25 GMT (envelope-from git) Date: Sat, 14 Oct 2023 00:03:25 GMT Message-Id: <202310140003.39E03PNU050511@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: 6519ec6fbab5 - releng/14.0 - ktrace.2: correct kern.ktrace.genio_size sysctl name List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 6519ec6fbab50d2b24372b3b3692db18d28a5fa3 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=6519ec6fbab50d2b24372b3b3692db18d28a5fa3 commit 6519ec6fbab50d2b24372b3b3692db18d28a5fa3 Author: Ed Maste AuthorDate: 2023-10-11 01:18:36 +0000 Commit: Ed Maste CommitDate: 2023-10-13 23:18:04 +0000 ktrace.2: correct kern.ktrace.genio_size sysctl name The man page had `kern.ktrace.geniosize` but the sysctl node contains an underscore. PR: 274274 Reported by: Ivan Rozhuk Sponsored by: The FreeBSD Foundation (cherry picked from commit a572dfa1bfe00cec93b27d8848ca49562cab5e3c) (cherry picked from commit 2fe06dda0a8abced5851188ed2cb76d1759efa19) Approved by: re (gjb) --- lib/libc/sys/ktrace.2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libc/sys/ktrace.2 b/lib/libc/sys/ktrace.2 index fe69d7e648f0..97069e491f99 100644 --- a/lib/libc/sys/ktrace.2 +++ b/lib/libc/sys/ktrace.2 @@ -145,7 +145,7 @@ The following tunables influence the behaviour of .Fn ktrace : .Bl -tag -width indent -.It Va kern.ktrace.geniosize +.It Va kern.ktrace.genio_size bounds the amount of data a traced I/O request will log to the trace file. .It Va kern.ktrace.request_pool From nobody Sat Oct 14 00:03:26 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6k9W0kmpz4x0w5; Sat, 14 Oct 2023 00:03: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 4S6k9V6Cjdz3Plk; Sat, 14 Oct 2023 00:03:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241806; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V8BK4NiJICFOSe+BERqKuntW/hIdRhT2YefDkvqo6aI=; b=n68JOEnETZlp3tVqcRwna6xouGLYdc1KfdOIiADrqLP3N8GMoLnTsGSRMzM8NVlbwMRa/7 o/W967n7cHSjHIzyTHVvYIaT2E6QIXsxeWcfNx1Nn3G1ZbcZbSA0MDyy8YWFCV+GKWbfE2 +jTYx5/ivKLxmc5GY/sQ/kqcAFlSZJ7kj/9DLOYwkkDYQgecCpLbVCvewvHri8OHEBc1bJ IJHvOrXBQu54dlocE6uWedSAVpA/d0TiKHUo2bdoBarDzFpc8W37TnBRbVvWpELK2UgTsM Z5OddJfnMyB1Jr0Pyuwa+km21HH7vwTHeoTzuLQUEmwStReCgXdoq5SjFgb2Lw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697241806; a=rsa-sha256; cv=none; b=pDyztIqD5eH5hGAwE8ToFOCc5CpfnEnGRgbeAKVObfRf60opiv1qU992pL1wV2MBHC8rSZ unZsj0ulx28LyocoXirNy6/TldD2YXqUtxE9MwJrQDQ34nKsP51wq1aah3wnG3dhbM4oUG alNZOoacJIjmn3sreeJJh0I5s+sGoduCX04eS3O6TF0c3Qyt8cWfVc1/zKRvho8IfXDtyI lKbc34W6x4FMNe5jFyRBXOWB+Sq+0d/Ue3rE2B5apxd2wc8N8AMfANV9xdb39bIulanjjF FvK+Y70AJsnKMptWMg/vmJC4olCGVx45xHsRMFYtJzfdslMXpmgE6xpazyoofg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697241806; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=V8BK4NiJICFOSe+BERqKuntW/hIdRhT2YefDkvqo6aI=; b=HnOplqRMG35ehTe4X3l/cfSnCqLC04GJtGGZnfe9OH4QH4n41XMu19mo01Tlzo9/Yz7WnH nVzmQ8scT7cDK0EL+bH9Ec4N+qtbj0xqe/sX2B9Rmqaf9T9h29MQLI6tHOePPex+aGhbBO VOjXWABSyZCDjQolVYI1e0lNlyxC2wUyqRfjRgoqhYr+JVcSizDjXG7/VUW5Ky8uRtdFkf F8pMSY8JhWSfJ5nantJQYF8vKypuNsd3ahUeG2YxeXXwUXSezTSZ+spPYFDXk2oTFY5T8B HjzdMmJsAq2p1ZeWQdBz9VWWxdnZvYlSu97UeJ94evP82vQNmLeUSnaaHPFtZQ== 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 4S6k9V5JmQz17pg; Sat, 14 Oct 2023 00:03:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E03Q1S050565; Sat, 14 Oct 2023 00:03:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E03Qns050562; Sat, 14 Oct 2023 00:03:26 GMT (envelope-from git) Date: Sat, 14 Oct 2023 00:03:26 GMT Message-Id: <202310140003.39E03Qns050562@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Ed Maste Subject: git: f0101a0ef9ad - releng/14.0 - sysctl: emit a newline after NULL node descriptions List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: f0101a0ef9adac0d0ceb5b77de74f51cd24ea906 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=f0101a0ef9adac0d0ceb5b77de74f51cd24ea906 commit f0101a0ef9adac0d0ceb5b77de74f51cd24ea906 Author: Ed Maste AuthorDate: 2023-10-06 18:00:30 +0000 Commit: Ed Maste CommitDate: 2023-10-13 23:18:14 +0000 sysctl: emit a newline after NULL node descriptions Previously when printing the sysctl description (via the -d flag) we omitted the newline if the node provided no description (i.e., NULL). This could be observed via e.g. `sysctl -d dev`. PR: 44034 Reviewed by: zlei Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D42112 (cherry picked from commit 75be7e30271bb192fd27698982f2c7e56831eeef) (cherry picked from commit ced9fe051e31f858a9d1dbec01cf6dec483fab19) Approved by: re (gjb) --- sbin/sysctl/sysctl.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sbin/sysctl/sysctl.c b/sbin/sysctl/sysctl.c index fe1a53a9d645..7ed7be95c9a5 100644 --- a/sbin/sysctl/sysctl.c +++ b/sbin/sysctl/sysctl.c @@ -998,8 +998,10 @@ show_info(char *name, const char *sep, int ctltype, char *fmt, int *qoid, int nl bzero(buf, BUFSIZ); j = sizeof(buf); i = sysctl(qoid, nlen + 2, buf, &j, 0, 0); - if (i < 0) + if (i < 0) { + putchar('\n'); return (1); + } fputs(buf, stdout); return (error); } From nobody Sat Oct 14 01:08:43 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6lcq6Dqhz4x3s4; Sat, 14 Oct 2023 01:08: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 4S6lcq5l4zz3XDw; Sat, 14 Oct 2023 01:08:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245723; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8xTEPpihEmzrFD4PesaeGO6NPnsKLHMYF9BLUSQBsBk=; b=x+Y3xSObGQNUGAnIalSmTDKgZNz3KrkicBBWH8YZCpKJkHWEtd2g0C9avzChA+dT0N6iOZ V5lqrVoeNcGGwLpjVHNKhqkxBAE8sumxC0bGo8SteFM96VacZmxPxTbis4x5spGPwEN3OT p0RFnioQlBD2pwrK6xj7cfBt5am58lAvb0E8i1zvDSxtVJkHzZDbuPehZaUqttkYz5jOMe FK/CE62mViJFPz2lKUV3pjnYfwF/B4ZKP+Fs+5KAhR4GS7jXq+p0D/JIV/8M6wIjnRHblX OfWmM2OBwmgvjBm7eDOZKMf113SG4XuI3QgEP+HKHPO360WYwXYbliqkLbFhyQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245723; a=rsa-sha256; cv=none; b=Ji5+bvR8LI6/neyfsEBnhB7rdEOHeSxxAFnt2AO7lMaNLOFd/EEWiKD8i4apZdPHUENAgi nFE4P3diQGDUTS+y3XljSj2mMaNbSwcChE69ADYpJTyhvfaxzSXzD+VukRreatbymRcV30 FAOz0rCdZALShWN4GIiTHhCdVKFVHdtCQzrqG+1x0uO3MU7iJZthXhhwWp+4bNI73rFJKb J846aGkqZb1JdxweSZoOCQ2SXmmezsDy19tHkL44f3800U1wabPs6EPf5P/W8ff6UbEyc3 8clwrQrljFsjAOx0jKzKwAkkbgXTJ6EVbpCp4mVSPDYtBY1gozdGksds6Q55OQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245723; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8xTEPpihEmzrFD4PesaeGO6NPnsKLHMYF9BLUSQBsBk=; b=IIiSir3JeaZcZHGbng4IoPgk6PoMXx3OF78teondWqtNFYkQJvoGFvBZvGP5luQw9s5VOz 5dMS2vtRcE7Wy1d4GEYs8BPPSj+3qYD8YbF0WuFVin9hlxSWir/WGUmFyGxLChgfEz/zns 6jwnmmnrpOqRNJwqQjEHbNwk8LRl97LSEGMlVFK7j2b8vZ2zn2IgUw5ioBMa1CDp6csijM wszcTd7JcnNcqASKBKWcMzf41cPqEsRDFwj8g0Za+EA2AhCyLi/VCZFFdUmZ//UesYVMiS c+x7sdEJJM25hgJZpr1qt1jWJVmFPRW6fWbW14a30w8ifs00aQu8crwFPWglHQ== 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 4S6lcq4pYRz19RM; Sat, 14 Oct 2023 01:08:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E18hNh052006; Sat, 14 Oct 2023 01:08:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E18hhW052003; Sat, 14 Oct 2023 01:08:43 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:08:43 GMT Message-Id: <202310140108.39E18hhW052003@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: c9e203ba3fb6 - releng/14.0 - vfs cache: mark vfs.cache.param.size as read-only List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: c9e203ba3fb61feed5e64a7047273b105c49eb50 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=c9e203ba3fb61feed5e64a7047273b105c49eb50 commit c9e203ba3fb61feed5e64a7047273b105c49eb50 Author: Mateusz Guzik AuthorDate: 2023-09-22 21:32:23 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:05:45 +0000 vfs cache: mark vfs.cache.param.size as read-only It was not meant to be writable and writes don't work correctly as they fail to resize the hash. (cherry picked from commit 33fdf1afaea931eaa5dd14e6c097d7ffafe2fb1a) (cherry picked from commit 3f4e6aa2ae7c5d7b086f76e7ec445ec71a60a627) Approved by: re (gjb) --- sys/kern/vfs_cache.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index 0f4d7526ebb5..631ce856efdf 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -405,7 +405,7 @@ static SYSCTL_NODE(_vfs_cache, OID_AUTO, param, CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "Name cache parameters"); static u_int __read_mostly ncsize; /* the size as computed on creation or resizing */ -SYSCTL_UINT(_vfs_cache_param, OID_AUTO, size, CTLFLAG_RW, &ncsize, 0, +SYSCTL_UINT(_vfs_cache_param, OID_AUTO, size, CTLFLAG_RD, &ncsize, 0, "Total namecache capacity"); u_int ncsizefactor = 2; From nobody Sat Oct 14 01:08:44 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6lcs0gLYz4x3s5; Sat, 14 Oct 2023 01:08: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 4S6lcs00xVz3Wt1; Sat, 14 Oct 2023 01:08:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245725; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+2Vw0eMhO6jOYt7iNa/mVpWk9J0oqLLUT3VP3QuteFI=; b=eiLAg8+WR36lToivWy+XwEojGUv8rc83BrqqsXRDVQBRc+GSN+7je20l326H0N40blz+uA rE0JdKFQDjn4qLviWzAHs/+BYW2XbvINnU/Rk+QZH3v9pzP6ihXzxQH7PN0S71QopKhbEV CjXGvRadOgTQcJJN0kb2kNLAu7QjZD4Xb7tsPQBAjXTLle8owP3OXumKlflbAmHcaBSryT YqzDqfKml/BY+IzPYV/4lETDTFR/bI0KHWtGJtYRefoRdpwtC694pDwdhSPJ751f7KF3K/ 5f/TWMPkJ+oV+j8uYGWkBrX3sHwacQGhujVAHzsieS/1p3CTivN2zwbRNupZFQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245725; a=rsa-sha256; cv=none; b=pSA/Jd+mpOX/GNJg5XUqzRH/BJwkEAaFjEpfhfckLclczBU/wvvoMtKGrmw2S2VJOcnf9Q 0sX/jjxMYIvJjYj5y0cwIPdZTJlCsTVJLkQrAilD+h8rujivCTkspRwI3nHHomMFeHPwz1 doXg+bY5qmkwtDmzK/y/4E3tRsef+B4SDVJAOOwMuVQ+k4A2VYTeLyzaBSGnF18OzXNUQD dvIniQCKAJ7HhFOTVmMeONH2bQsXlIr59leeE7C9Zjgr/g8MOtt+JwEqCZqtp88Qj0/gev zF5sQOdBMa9wV8JjvECo4tz7toIuln3cy2c7PDrHNcUYoIL3dr4jJvusqLiYag== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245725; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+2Vw0eMhO6jOYt7iNa/mVpWk9J0oqLLUT3VP3QuteFI=; b=ggxkUZ4V6xtd9ch60TU0ZtE9Kp/f6h3A5+lEUjY+gO2LyTkgqDPEuH+NA/uV00G6DiiFU3 W1Jzrz19NMB68KT5TT2BnghcKrgbJaJB4Mt/GZf1YmqcETFvkTpFI0q14gIM5HdkchEHvE 71YREIMiFW14wDi4bFaSYz1hfo/xS7KEN2L18BTkfVJf1inwyfBDCL5cW+xMi662GrhfDb wKYqgNLmZySKBo0C59HrygbImjDWMXBj+pJSPBjdhtWgbVN0M2+RxX+LgT9FNAGY0jGcm0 17Ae0BuglEB3YTjUpbpNFRfIFL+r6aSVbzMCyFQXFCp0A6hyECb2iKBUSq8EHQ== 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 4S6lcr5pnKz19BV; Sat, 14 Oct 2023 01:08:44 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E18iJ8052054; Sat, 14 Oct 2023 01:08:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E18iJC052051; Sat, 14 Oct 2023 01:08:44 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:08:44 GMT Message-Id: <202310140108.39E18iJC052051@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 06e001a7666d - releng/14.0 - vfs cache: retire dothits and dotdothits counters List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 06e001a7666d8b8d8d2514c94a2c3026f6a6b79f Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=06e001a7666d8b8d8d2514c94a2c3026f6a6b79f commit 06e001a7666d8b8d8d2514c94a2c3026f6a6b79f Author: Mateusz Guzik AuthorDate: 2023-09-23 00:08:49 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:06:12 +0000 vfs cache: retire dothits and dotdothits counters They demonstrate nothing, and in case of dotdot they are not even hits. This is just a count of lookups with "..", which are not worth mentioniong. (cherry picked from commit bb124a0f611a1288c8496e3b33494f23ba929ca1) (cherry picked from commit 0cf6ebad73640a20fe99adacba635e2630be5d08) Approved by: re (gjb --- sys/kern/vfs_cache.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index 631ce856efdf..62213d94d8e2 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -530,8 +530,6 @@ STATNODE_ULONG(neg, numneg, "Number of negative cache entries"); STATNODE_ULONG(count, numcache, "Number of cache entries"); STATNODE_COUNTER(heldvnodes, numcachehv, "Number of namecache entries with vnodes held"); STATNODE_COUNTER(drops, numdrops, "Number of dropped entries due to reaching the limit"); -STATNODE_COUNTER(dothits, dothits, "Number of '.' hits"); -STATNODE_COUNTER(dotdothits, dotdothits, "Number of '..' hits"); STATNODE_COUNTER(miss, nummiss, "Number of cache misses"); STATNODE_COUNTER(misszap, nummisszap, "Number of cache misses we do not want to cache"); STATNODE_COUNTER(poszaps, numposzaps, @@ -1782,7 +1780,6 @@ cache_lookup_dot(struct vnode *dvp, struct vnode **vpp, struct componentname *cn int ltype; *vpp = dvp; - counter_u64_add(dothits, 1); SDT_PROBE3(vfs, namecache, lookup, hit, dvp, ".", *vpp); if (tsp != NULL) timespecclear(tsp); @@ -1827,7 +1824,6 @@ cache_lookup_dotdot(struct vnode *dvp, struct vnode **vpp, struct componentname return (0); } - counter_u64_add(dotdothits, 1); retry: dvlp = VP2VNODELOCK(dvp); mtx_lock(dvlp); @@ -5131,7 +5127,6 @@ cache_fplookup_dot(struct cache_fpl *fpl) fpl->tvp = fpl->dvp; fpl->tvp_seqc = fpl->dvp_seqc; - counter_u64_add(dothits, 1); SDT_PROBE3(vfs, namecache, lookup, hit, fpl->dvp, ".", fpl->dvp); error = 0; @@ -5220,7 +5215,6 @@ cache_fplookup_dotdot(struct cache_fpl *fpl) return (cache_fpl_aborted(fpl)); } - counter_u64_add(dotdothits, 1); return (0); } From nobody Sat Oct 14 01:08:45 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6lct13LHz4x4GT; Sat, 14 Oct 2023 01:08: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 4S6lct0VlYz3XGB; Sat, 14 Oct 2023 01:08:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245726; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SRMzwZB9PPMRpMatBbeH3Izi58RHOARWD4X6/h8DVqU=; b=br7kMTafSee5Uqvn3eCQKmXYSDLy6tFNzMUVx/+3ZG91159Su/BHFeSq90yjwFflWiQ/aK u4rZltgWgIXxFwuX4DChQPDA8VD9fCQpb6+M0SMXY/G/+HICq9hPNcvkhA7NaY9rkhZLiu pqj21xczlj1Ij7BwjZyI58/ZWKHSnTUhFmyeslh6dtg6SvFF/DqXAhT15sQfzfIa852J/0 bIVwWqNUVJl6qUpP0twJ2le/Z5/Psc76o4T+4+XdjxYnFY+HOZVjid2qPBVUDKGhI24P2h vMKmG4dcH9x+2NZeWKq+yMjjCZpZCmvV29z/UYWeg4+Cu3VZ2fTGlcpHIKQAvw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245726; a=rsa-sha256; cv=none; b=u8mkby3b02y5lDOixvYByyVNFDNl7jyekeV82+nO4ulPtgcmCWXCfbTl0g/31IVxgRk0ye hq4+XJuraFG5GwkK1A2IObUbI+jOAO+0rmRHleq+X/ALcZrUFkNurtY4+AXzhyZrPe1TBV eHKysCAQUnZG68rGTnWQlvzoGH2iu8akhhsuN70YuH3GciImIYBywLq34rlfQeWNLNtpvp K75s8qTNytq087wMCISf4LyeXYMlyTZVWW7f/dDL0st/B5nH9ZLQJlAi4enxFIKp2uYnn7 LF5ex/8ZlgiKT0GgypZKHKjMtNDe6NVSLPC6AwxDW+iZUm8XXuShBjdadKVXPA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245726; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SRMzwZB9PPMRpMatBbeH3Izi58RHOARWD4X6/h8DVqU=; b=ilZdB+c9qwsLgxWZ9Y8r9StUI/AHhbM4lwJyIPHST1BTEYV88B0Q8bbV3hoCMH645EIGPx ZIjBQIhWZmXfRi59TBw6oyK4F6/MpwxVVCmU6h4gIiF3pyvhXiPvpY8q6sDafBQtJNkz5n dEAWMbXongZJu9jK4Uxb17bYkhtXVg/R0wV6fQlhhBZOKfgANQPD05vVd6mIoeVqDbPTHQ R81mIcT/GLcBLN4thUDGnGEgLihxj0gLylOr3UkUr3T+tvasU56LtQp1svW2ohH/M8OB9Q dA84HtKYh0MbS3DqPyyr4nxa/3Bfy6aNY0yjix14tatOBrTLdJvlGpG1CVo0zQ== 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 4S6lcs6hVNz19Fk; Sat, 14 Oct 2023 01:08:45 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E18jqj052090; Sat, 14 Oct 2023 01:08:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E18jZ9052087; Sat, 14 Oct 2023 01:08:45 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:08:45 GMT Message-Id: <202310140108.39E18jZ9052087@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 9f71eb3ef40a - releng/14.0 - vfs cache: s/vfs.cache_fast_lookup/vfs.cache.param.fast_lookup List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 9f71eb3ef40ae4dc0aceabb525076358345bc83c Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=9f71eb3ef40ae4dc0aceabb525076358345bc83c commit 9f71eb3ef40ae4dc0aceabb525076358345bc83c Author: Mateusz Guzik AuthorDate: 2023-10-03 13:34:32 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:06:18 +0000 vfs cache: s/vfs.cache_fast_lookup/vfs.cache.param.fast_lookup (cherry picked from commit 38a375c472d295df41adf73c5ddd50543f9d877c) (cherry picked from commit 7a360746c877e00c994c60004ccd87253091dbba) Approved by: re (gjb) --- sys/kern/vfs_cache.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index 62213d94d8e2..370236faa723 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -4036,7 +4036,7 @@ syscal_vfs_cache_fast_lookup(SYSCTL_HANDLER_ARGS) cache_fast_lookup_enabled_recalc(); return (error); } -SYSCTL_PROC(_vfs, OID_AUTO, cache_fast_lookup, CTLTYPE_INT|CTLFLAG_RW|CTLFLAG_MPSAFE, +SYSCTL_PROC(_vfs_cache_param, OID_AUTO, fast_lookup, CTLTYPE_INT|CTLFLAG_RW|CTLFLAG_MPSAFE, &cache_fast_lookup, 0, syscal_vfs_cache_fast_lookup, "IU", ""); /* From nobody Sat Oct 14 01:08:46 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6lcv3NKCz4x4GZ; Sat, 14 Oct 2023 01:08: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 4S6lcv1WGNz3XTS; Sat, 14 Oct 2023 01:08:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245727; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qMFlcS/Vo96edUmo6HKvWpG2Ss/UuTh1M5DNUStRc5g=; b=QQ2PfJpI49lPBbXRyP8PJXncjjjG79E1lD5T3NZ7Ey+tWfk6V5i88JWbQYRKpZ2vfSg36K rUvMXniK1hHfg3w4/EnP10zR1HdzlGbVH4+O+TXZ5kT4nNQhDGYYefJQkfOvqyHBGjeO1n 0IHpNJAjcZUlaWGLJnIz2QDqfrEMJEN7L12ajiCTbgCUPaDmyYBY1fNr2phfDs5reDPDp1 lk9OBr3m8DV2Lljoje5ttBC+Eu/bNhHsbdigyQUle+c7YdJIt54Xw1u0gzD5OjuRdUZews mr2deBfmJDezBsginpUetdUNhC5nP90YogIiyZWOIxwXYHwYGDq/dnwyv4CWLQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245727; a=rsa-sha256; cv=none; b=ZT4+PrEMRlkYhlJ7KLF3BuX+VUhtnN5c1AqFb7Tnxouk3X2fyRVno+VlbIO5y6duf+UBgn N94Aucfpo3PuIQCoYl08W5iAOMhWgmHYvInN+kcghrcXgtZMKYBUMZ8mt5RUVkpxRVw3xH G+7WvqqTxg3mXeyiaCt6nZfVX4S7vMGh1yuSjVUMh+wf8o2/M298Ybv+1+FwAnQ6aLIHOS f3RjMXUNs6ck55ddo2G5er+4B6e7fUsC/gDHfxYb9F3J5JKM7i69OYBjClE5SWVtGF5YV0 uvgfobm6CNur6l4uQoKBpqZLCN6Cm/rAu1w6IK2JSJt1YaPhugU+PKbW4AS8cw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245727; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qMFlcS/Vo96edUmo6HKvWpG2Ss/UuTh1M5DNUStRc5g=; b=vnYthO4AbLrtyZBERgkUuxDWbr3N1cT5u7ozGi/98dj/S/tCqP1/XCT0y05ptEDZrK3Aei Qvd5Ctqee5Ib8p7crlZeQlv3iPRSaC0ctLSi7gHlcAcoz1E7yWG+VJb5MhCHqP/7UawY2T SCw9pMU8tGW3ONjpic+owaDPUeZrGn0t45hPgVvhyQcajTcXfSYteYWvAZTKJ6GXFM5mVG 8bHszau0FFbd94OSt/GKBVdFvFHWAD2ol+uY5zLWDtZYHYU27bAu+A7yzV282JO9/UCmdx hJlwnNq3A8+XbzZSW4glDD2ZOV+kOhJDYOeJsJ5EPk5NvjaZuG+Kp0o2Fxxbww== 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 4S6lcv0c88z19Fl; Sat, 14 Oct 2023 01:08:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E18ksF052133; Sat, 14 Oct 2023 01:08:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E18kXN052129; Sat, 14 Oct 2023 01:08:46 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:08:46 GMT Message-Id: <202310140108.39E18kXN052129@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: dcee98fcb76c - releng/14.0 - vfs cache: sanitize debug counters List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: dcee98fcb76cd59ddb60a5cd48ec266d9f444cea Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=dcee98fcb76cd59ddb60a5cd48ec266d9f444cea commit dcee98fcb76cd59ddb60a5cd48ec266d9f444cea Author: Mateusz Guzik AuthorDate: 2023-10-05 12:16:18 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:06:29 +0000 vfs cache: sanitize debug counters They are very rarely triggered, so no need for per-cpu distribution. At the same time the non-cpu ones still should use atomics to not lose any updates. (cherry picked from commit 2749c222da8a6325d39c0571f72b1dbed2f7d583) (cherry picked from commit 75b03f73b4a0f94090aa9fd050e82089c83fe2bb) Approved by:re (gjb) --- sys/kern/vfs_cache.c | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index 370236faa723..d6ff7af97435 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -553,17 +553,14 @@ static SYSCTL_NODE(_vfs_cache, OID_AUTO, debug, CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "Name cache debugging"); #define DEBUGNODE_ULONG(name, varname, descr) \ SYSCTL_ULONG(_vfs_cache_debug, OID_AUTO, name, CTLFLAG_RD, &varname, 0, descr); -#define DEBUGNODE_COUNTER(name, varname, descr) \ - static COUNTER_U64_DEFINE_EARLY(varname); \ - SYSCTL_COUNTER_U64(_vfs_cache_debug, OID_AUTO, name, CTLFLAG_RD, &varname, \ - descr); -DEBUGNODE_COUNTER(zap_bucket_relock_success, zap_bucket_relock_success, +static u_long zap_bucket_relock_success; +DEBUGNODE_ULONG(zap_bucket_relock_success, zap_bucket_relock_success, "Number of successful removals after relocking"); -static long zap_bucket_fail; +static u_long zap_bucket_fail; DEBUGNODE_ULONG(zap_bucket_fail, zap_bucket_fail, ""); -static long zap_bucket_fail2; +static u_long zap_bucket_fail2; DEBUGNODE_ULONG(zap_bucket_fail2, zap_bucket_fail2, ""); -static long cache_lock_vnodes_cel_3_failures; +static u_long cache_lock_vnodes_cel_3_failures; DEBUGNODE_ULONG(vnodes_cel_3_failures, cache_lock_vnodes_cel_3_failures, "Number of times 3-way vnode locking failed"); @@ -1664,7 +1661,7 @@ cache_zap_unlocked_bucket(struct namecache *ncp, struct componentname *cnp, cache_zap_locked(rncp); mtx_unlock(blp); cache_unlock_vnodes(dvlp, vlp); - counter_u64_add(zap_bucket_relock_success, 1); + atomic_add_long(&zap_bucket_relock_success, 1); return (0); } @@ -1760,7 +1757,7 @@ retry: error = cache_zap_locked_bucket(ncp, cnp, hash, blp); if (__predict_false(error != 0)) { - zap_bucket_fail++; + atomic_add_long(&zap_bucket_fail, 1); goto retry; } counter_u64_add(numposzaps, 1); @@ -1986,7 +1983,7 @@ negative_success: counter_u64_add(numnegzaps, 1); error = cache_zap_locked_bucket(ncp, cnp, hash, blp); if (__predict_false(error != 0)) { - zap_bucket_fail2++; + atomic_add_long(&zap_bucket_fail2, 1); goto retry; } cache_free(ncp); @@ -2184,8 +2181,8 @@ cache_lock_vnodes_cel_3(struct celockstate *cel, struct vnode *vp) } else { if (mtx_trylock(vlp)) goto out; - cache_lock_vnodes_cel_3_failures++; cache_unlock_vnodes_cel(cel); + atomic_add_long(&cache_lock_vnodes_cel_3_failures, 1); if (vlp < cel->vlp[0]) { mtx_lock(vlp); mtx_lock(cel->vlp[0]); From nobody Sat Oct 14 01:08:48 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6lcw3BcPz4x4Jw; Sat, 14 Oct 2023 01:08: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 4S6lcw2hskz3XTZ; Sat, 14 Oct 2023 01:08:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245728; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3MVaPc64WWnfjZ2S6W33abKNAGC+3YUoX5x+vLoxSAc=; b=wD7FF4T/JvB8VtmBOyPjK+b5w7P24xnXfizIi0UQn9QUnt9E+y/ahkR8pu5M7iebeCRhPb VBP5zu0Yrgk8/Ji9N0aCCcj1RXBPpRno392a0/LdHwWnJbbfRnofDgPFoqTNnUTFnwprj9 Z/lnkWFkQocGxLapGIGseODVIERwmCeigxh9ycbLxqme8sRDnOvSaYpw1Fzuxo6aY5RDKB XsGGPXoD9ms9KzN+CQfJ3niRE9wGKFu2uEvwqp/7NWX9GLCqn+x/rxz+POm7iODsSo3j61 fEvjEuxo6awvEgeKuZJulepZXYIk5aczcTQA+fQMf/87etRFHzYy5QHvCfMriQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245728; a=rsa-sha256; cv=none; b=G6DC1B/kkrnwQgrDCTk14Q2kLiHw738OzJM0XkWwqy7msJBnIJAvyruHUsQywbsnGQx9Oq z8xypXQMI4c8mjd1nVJ8X1qPeO7NP13fEOXXUJ4y2dk++tu5Mhp4F7fVC9KOhXOA61c8LI 5M1fT83u+Cz5KDLjjgPPC2MxT0eZ57z/s1nd2qgeiicJiLpjN4y6SizsIUPdr1iYhbXPXz NHrNiqmfj4gxSCegjA1ddPKwolX7mGk5N7H16Uk9e9Jt6TiD1vJEYmGStvg4nAZtt1nKSx Fg8bAfmh//zUSMjNEOqvZdfl5wFuVOaIhJih5zeS+OwJK0MU89H8dB1u+0Gqtw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245728; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3MVaPc64WWnfjZ2S6W33abKNAGC+3YUoX5x+vLoxSAc=; b=gkrjR9pIKy/gr7eSzyaLp0vOPdW2he+CsFi0t9VE3XDUKx6QRGxmaGAfjuFCHjr5jpf80v JQBrnZlQOyeZI+zWN/ZR4PPghf5cfQG8M5bcTAup6vQU245rqFkLYhmnEvewc4k4QVJdD1 P6YOzoTW/edSnvBsAYsX3RRqHbFeL0iUH6WtmaC2kNmuE34WiNn4PGkcDfXWBl4EeOLLaN S2TchBTdkjy6wBLydGH7GKvE9Ih/+77haqoY0HuBicqIQK1GsVFeX+nEqaR+394aRZRqec uz7LpRDe7iFB7ICDm5G5cxk4T03LI5/QYilJeXuQdt/6pfXeNs1phNacekuRwg== 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 4S6lcw1f51z19BW; Sat, 14 Oct 2023 01:08:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E18m1b052192; Sat, 14 Oct 2023 01:08:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E18mql052189; Sat, 14 Oct 2023 01:08:48 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:08:48 GMT Message-Id: <202310140108.39E18mql052189@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 4404bad2cd1f - releng/14.0 - vfs cache: plug a hypothetical corner case when freeing List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 4404bad2cd1f179fe384883bd9286d5953327343 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=4404bad2cd1f179fe384883bd9286d5953327343 commit 4404bad2cd1f179fe384883bd9286d5953327343 Author: Mateusz Guzik AuthorDate: 2023-09-23 02:04:06 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:06:38 +0000 vfs cache: plug a hypothetical corner case when freeing cache_zap_unlocked_bucket is called with a bunch of addresses and without any locks held, forcing it to revalidate everything from scratch. It did not account for a case where the entry is reallocated with everything the same except for the target vnode. Should the target use a different lock than the one expected, freeing would proceed without being properly synchronized. Note this is almost impossible to happen in practice. (cherry picked from commit 0f15054f7990f9c772bea34778a8838aa05ebed8) (cherry picked from commit b206bfb92c1f522c85ef1db44d42431e6c0d9334) Approved by: re (gjb) --- sys/kern/vfs_cache.c | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index d6ff7af97435..0467619fe5d5 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -1645,6 +1645,7 @@ cache_zap_unlocked_bucket(struct namecache *ncp, struct componentname *cnp, struct mtx *blp) { struct namecache *rncp; + struct mtx *rvlp; cache_assert_bucket_unlocked(ncp); @@ -1657,14 +1658,24 @@ cache_zap_unlocked_bucket(struct namecache *ncp, struct componentname *cnp, !bcmp(rncp->nc_name, cnp->cn_nameptr, rncp->nc_nlen)) break; } - if (rncp != NULL) { - cache_zap_locked(rncp); - mtx_unlock(blp); - cache_unlock_vnodes(dvlp, vlp); - atomic_add_long(&zap_bucket_relock_success, 1); - return (0); - } + if (rncp == NULL) + goto out_mismatch; + + if (!(ncp->nc_flag & NCF_NEGATIVE)) + rvlp = VP2VNODELOCK(rncp->nc_vp); + else + rvlp = NULL; + if (rvlp != vlp) + goto out_mismatch; + + cache_zap_locked(rncp); + mtx_unlock(blp); + cache_unlock_vnodes(dvlp, vlp); + atomic_add_long(&zap_bucket_relock_success, 1); + return (0); + +out_mismatch: mtx_unlock(blp); cache_unlock_vnodes(dvlp, vlp); return (EAGAIN); From nobody Sat Oct 14 01:08:49 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6lcx4K9Gz4x3s9; Sat, 14 Oct 2023 01:08: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 4S6lcx3cfnz3XZn; Sat, 14 Oct 2023 01:08:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245729; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Iz4yJnVv6KEvr8k1vjBr4tuICnAhRj/Emf1Nm679QMA=; b=VlEgdAWUJzTfuNSlSv66xElIoxRJbMK2tQ8/P/L2ZtHFSVMfxPbBuXM0d+Jiz9aM7qnzMg KnaC1vY1Id8P4curNbAAJwRwtmtwdRE+qRgFkj/2CB5M2C1nmSdpwz7aoN/wW2cre0AXac zblySi3SbWwO+lKAfxdblMcdSua1LR+h+I6+OmVL40oLR8h231/TMR/FbFFK4w8cRJl27U LBaF4CgNjVjYDlC6A7dNpG9LO/YCR5WfzsQJS0t+Sn4DTXVLwfOp7oWxDMJzgM2z+UqJL0 9zOa0qwmUdX6nV9OVD81xlutH3A2sau+DaFqZKyf5oiyvH4o7iJzNnPhGAErpg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245729; a=rsa-sha256; cv=none; b=JF7VS4HWD/X1mFvC8dXnix3O9r5B0ArZgpfAJKCr4UC4pOvg0UvN+B03qAdLS4BO5Yjb0B B6duCHhtG254ou1IwT4ssUOfQUisK3fbtlT74YDpDpeZBt/BquCLlLSGlk/3RzHabotGi3 fEjH9JJTe/oOxwEzxVKKFhdiU6td+RcCjO6MPyUUQAAJi+QEe259aJaWXLyww+cBEAbvmM FBsDaSHpsm1W7MqUJsuFVUJ54UXDWF1vFy777RvACL6p9YJlR76KHk6xy/tkgMAnO+Bd6v 5efk2Ddii+UW6zuK7JjGvdzzptPzjq/nvOQpL8jpYB5lUg4LchWaWR95Hj1xxQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245729; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Iz4yJnVv6KEvr8k1vjBr4tuICnAhRj/Emf1Nm679QMA=; b=tfxXz+NXlU136GEbtMm9oFEa/1zxdKn/pel7GdiCr8wKptBSh+VrQpNb53EvpXf1v6/nyA iMU8iUCIRH2IYy6OfNr2ZcM+aUq78whtZkwjDwdfoZV4kCVdnhuCpOJC9+AiWKQAH3mX90 gSZcfdFTF9lHW6rlv+rKuUfHbbD08kPY81rEeKg0g8cbbBkb790jj7qlX/ZBrHASG+Hbwb wsX6FDbUf/mSsXRjhCLwr1X5MB0z3y65PUWb64xcJQJLe1Wyz8/rdGhTOeEMfixcFy5hnU 1xz/aAKVpC+P2Xr/buhBitMPJ8XUi1QOmXb30aBIgxSk66dLeoXjFLVIQ3ViXA== 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 4S6lcx2g09z19Sm; Sat, 14 Oct 2023 01:08:49 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E18nCd052243; Sat, 14 Oct 2023 01:08:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E18nSi052240; Sat, 14 Oct 2023 01:08:49 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:08:49 GMT Message-Id: <202310140108.39E18nSi052240@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: a1d54f986368 - releng/14.0 - vfs cache: denote a known bug in cache_remove_cnp List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: a1d54f98636833a512db69bfa765f1da0a011cb0 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=a1d54f98636833a512db69bfa765f1da0a011cb0 commit a1d54f98636833a512db69bfa765f1da0a011cb0 Author: Mateusz Guzik AuthorDate: 2023-10-05 12:32:29 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:06:47 +0000 vfs cache: denote a known bug in cache_remove_cnp (cherry picked from commit cd2105d691f446f7dbddf5965d82b9e9103bc8d2) (cherry picked from commit 99bfb6998b00ac8edd1395d76d199ddee62d24a0) Approved by: re (gjb) --- sys/kern/vfs_cache.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index 0467619fe5d5..bd9eac69bfcb 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -1747,6 +1747,15 @@ retry_dotdot: return (1); } + /* + * XXX note that access here is completely unlocked with no provisions + * to keep the hash allocated. If one is sufficiently unlucky a + * parallel cache resize can reallocate the hash, unmap backing pages + * and cause the empty check below to fault. + * + * Fixing this has epsilon priority, but can be done with no overhead + * for this codepath with sufficient effort. + */ hash = cache_get_hash(cnp->cn_nameptr, cnp->cn_namelen, dvp); blp = HASH2BUCKETLOCK(hash); retry: From nobody Sat Oct 14 01:08:50 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6lcy5NXGz4x46M; Sat, 14 Oct 2023 01:08:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6lcy4bZJz3XQT; Sat, 14 Oct 2023 01:08:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245730; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=97KLi29q3OMK6UAL7v/TWN6A6QNPIyuSI/U6tWFwBW4=; b=UHEq46yQyB/O40v7UpOadIQSO4fpUb3Z9n5mQgEFGE7AApoKUKhSR0xnr5yMvPAOS0XmyK AGg9SKZ3bdyAzfGdiVd9KfICJAsS9dgD+EoJIeXx/SUCI9HliGBS7q+4NWzpzfK7+Af34D SWZ7m2ET5exAMCWY+9JYXzWYQkje/nD6lyr+iwSrs8ShcgIIRTJfZGdek+9KxfwxQHV21J k7GwVjJ0jCyygKDFmH/OHDvqLlnFnCY56R1tIwGzcKaz3vF9BUTzd93jN7j2JpmaqYuDLX H7fBReInX0zsRc2SKeWbFHJtHdJ+EJUxzTe95sQjetz4k9Cf2etpsDVchwGtmw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245730; a=rsa-sha256; cv=none; b=NojSJxK7bzJZThfxL76OZ8tJcAsIHo+Yny9EEpIV24t6tkecVs5q6h2bGoqFnsgpJm2IbD ueAVUG7dkN78ZCWcwNYKS+kJ611kbPzXzrQfbgjeRsrTm2lajHVN9JkKDEQcN0k/Q/Zmpj aF5jnYIZp7cEBivSI6zLhZiIaCeHPI4Imt8k/fdmrC3ECqgP7FcW5IfLj5Usbsbq6VjD8o 7KoV4H4Od5wLIEqoCVAJOlvVEWtMROGe6opDsleGtw9f/FxdOZUptQCnHfYHwvpmOEG37V hZ/+i3pk5vyLmXOGLpFladPRGPxpZF4oPjgisT8bGeYGXknaVr7el9/ATEXunQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245730; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=97KLi29q3OMK6UAL7v/TWN6A6QNPIyuSI/U6tWFwBW4=; b=yXxWlo69+0MXJtggnBk/XKK8zv+OnsQX2I/e/74DlTtrC2vYvo3oWo9hAy09vptkv9MTgP 8pdVRQ+GOvELa+aEGxh0a8E06TLXLZJMFzYGO6gDd2y9ERmkj9fVZvJFrO/K34yDYVEuzz UgPUppOQBgB0Wm93jCDq77TCHpkON6iamVoGv5d9ujSMwWWcaxu5jvkQXJtZCC9/hMBZyb VM+I/76sv//xOUEKlI4Y8e2tWBMQT62bitpzEnN/nlCbx+ClnHAjZJb62Hnk7DNIrZPdAQ d5CHPWESTN+VHALNGCj2WXwLuQ2VEm/tnKcYdXqu69CSORHobmANVefLSjp8fQ== 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 4S6lcy3j4Jz191L; Sat, 14 Oct 2023 01:08:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E18ouY052300; Sat, 14 Oct 2023 01:08:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E18oNi052297; Sat, 14 Oct 2023 01:08:50 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:08:50 GMT Message-Id: <202310140108.39E18oNi052297@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 3e0c37999a5e - releng/14.0 - vfs: don't provoke recycling non-free vnodes without a good reason List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 3e0c37999a5e6bd10819140e52a481cb798f82d9 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=3e0c37999a5e6bd10819140e52a481cb798f82d9 commit 3e0c37999a5e6bd10819140e52a481cb798f82d9 Author: Mateusz Guzik AuthorDate: 2023-09-14 16:13:01 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:07:07 +0000 vfs: don't provoke recycling non-free vnodes without a good reason If the total number of free vnodes is at or above target, there is no point creating more of them. Tested by: pho (in a bigger patch) (cherry picked from commit 8733bc277a383cf59f38a83956f4f523869cfc90) (cherry picked from commit 71a06765dc67090735293027136c8a0b5fc8c173) Approved by: re (gjb) --- sys/kern/vfs_subr.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 0251525a50c7..e37f8697efa2 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1802,11 +1802,19 @@ vn_alloc_hard(struct mount *mp) mtx_unlock(&vnode_list_mtx); goto alloc; } - rfreevnodes = vnlru_read_freevnodes(); - if (vn_alloc_cyclecount++ >= rfreevnodes) { - vn_alloc_cyclecount = 0; - vstir = true; + + if (vn_alloc_cyclecount != 0) { + rfreevnodes = vnlru_read_freevnodes(); + if (rfreevnodes < wantfreevnodes) { + if (vn_alloc_cyclecount++ >= rfreevnodes) { + vn_alloc_cyclecount = 0; + vstir = true; + } + } else { + vn_alloc_cyclecount = 0; + } } + /* * Grow the vnode cache if it will not be above its target max * after growing. Otherwise, if the free list is nonempty, try From nobody Sat Oct 14 01:08:51 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6ld00YkHz4x48m; Sat, 14 Oct 2023 01:08: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 4S6lcz5n3Vz3Xc1; Sat, 14 Oct 2023 01:08:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245731; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MbGDhZu+EmjLLG3A35SUGJHbe+QuKNqjbKud3Hl2Vwc=; b=kC3R20M71cGF6iu7NzSGGjcVFN7tHPAOFRoOxXk6yAQzBdSD1eSBpCmJx7h3irWvkXDJ8F qd9NibSV+cmFIG5sPPubUNPpJWmvyrv9/qr5wbkLnO1HBbwMYo7fpa40KbyYIrw2NtAzhf caMmp82Y2xFtwcn2lxTWAwuTs80hJjxQYtILVzgQC5Rn8zWRy0hsKzzHhsxdDa6EiaxGQ6 dDNpJY5548cdHiCehFuDOUSpnbnySrFv2rl5GZmVoSli4gPVHO59IB4c7cBJA2hgPgLoY+ Ffh+77PX4h266lm8kcCqiBfBpTxjYAHSAW+J2WoHpcFyomdmaD8JH/NrWV1qXg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245731; a=rsa-sha256; cv=none; b=qzziDWqE0xgYPMI3PQ5GBtf4s5F5pJlLQ4Ro9gufBGGX8Hgvd9YGcc0PpgWxtdZaX9bmv1 EHJo4vds7bVb/LfYxRZesp/gUWC3Cy9eTgi+y4sPKME6+Pr+iYQDMDmhWdZb3PxdiBVVgb YE5SifjfkyrJpP8ouqYK0ss6zZG/XkYqEzg4ZRnzhZGUr5Eojb0a1mbYoJ37BDAUNwma4j ARiAyyKER16Ql3x27BkmHQj9NMShsoL4z8PUXgFeXHOzA5NQaEd9sXyO9XSvqe3mvzXmd2 CT8t43qdeMuxHM8nStPnsha33uWDbuu6jUtxVIEyCcyreKBH8P6BDYMvuuVSxg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245731; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MbGDhZu+EmjLLG3A35SUGJHbe+QuKNqjbKud3Hl2Vwc=; b=nKGu4ouzqUAMcYNOZ9qTUnjfb7b4xl+xLyMIiMSXG+dgvePGk43iOnsaWY2zXpRd+wGiKg LooyHX73PJn7hpn0MXk+L6WfVtnkzxKekPG3khBAr/nCknKQhNDBcveXZpy+4YWfh54WON boHVboaMEJaiBXYgpocbVzg9h47uvTQCyqOWnaZe8VSqgohRZfpMOxjpjRscIQrzadAGGa 1VctAAblY5JXAYFq1bAyfwYx0ZJdl241XybF79bBtik/RmOXnf5h2oVQxObm0Ajcw/zohE QjWiEWO23rseYtgJQrjncmGXSWypwc+A7e28/MZThKCEFzkK3izKJAhfmteOxw== 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 4S6lcz4n3rz193Q; Sat, 14 Oct 2023 01:08:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E18p3n052348; Sat, 14 Oct 2023 01:08:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E18pmV052345; Sat, 14 Oct 2023 01:08:51 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:08:51 GMT Message-Id: <202310140108.39E18pmV052345@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 988f3becc6d4 - releng/14.0 - vfs: be less eager to call uma_reclaim(UMA_RECLAIM_DRAIN) List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 988f3becc6d4afdb5c12313184515183c3e631db Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=988f3becc6d4afdb5c12313184515183c3e631db commit 988f3becc6d4afdb5c12313184515183c3e631db Author: Mateusz Guzik AuthorDate: 2023-10-10 16:15:53 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:07:15 +0000 vfs: be less eager to call uma_reclaim(UMA_RECLAIM_DRAIN) In face of vnode shortage the count very easily can go few units above the limit before going back down. Calling uma_reclaim results in massive amount of work which in this case is not warranted. Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 1bf55a739e754765fa2dc15ab6481fe411084be3) (cherry picked from commit 9ff38b3d881ce910803500fe3460f8283c96b4b2) Approved by: re (gjb) --- sys/kern/vfs_subr.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index e37f8697efa2..e7e612254ba2 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1674,7 +1674,12 @@ vnlru_proc(void) target = target / 10 + 1; done = vlrureclaim(reclaim_nc_src, trigger, target); mtx_unlock(&vnode_list_mtx); - if (onumvnodes > desiredvnodes && numvnodes <= desiredvnodes) + /* + * Total number of vnodes can transiently go slightly above the + * limit (see vn_alloc_hard), no need to call uma_reclaim if + * this happens. + */ + if (onumvnodes + 1000 > desiredvnodes && numvnodes <= desiredvnodes) uma_reclaim(UMA_RECLAIM_DRAIN); if (done == 0) { if (force == 0 || force == 1) { From nobody Sat Oct 14 01:08:52 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6ld12lKjz4x4K1; Sat, 14 Oct 2023 01:08:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6ld06Wqnz3Xfx; Sat, 14 Oct 2023 01:08:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245732; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yjVOuLlK1+j/fFniDlE0ZquRSR0kQRbhmrFhq65G5Lw=; b=KcKkzhXYnUPTEiyRCagkwM1Zpo48BQ2woc64DJ+rFKEo54kYWvGYpBhZ/tQpx2TsE0DUT2 t7LvT17UamnT7NpvLnVJqZhh1cBx5fBV7xL0mLcAwUshGZfw+OEUGbounnZ1f4JU8Ubhn9 m0RkN08n1t31zuSikgvzrMW9U6yro1rVhPNn3g5BBp8+7WCG9NB2l67W/xnULPR3npdy8t aGzh5oY0DbXkFAbaosNxKWoiUJQ9J6QnGRrZ/1w9jIZH1W8J5Q2wH3JgsMG5nkLOYUABRe mo8S8VEza9o/8yC6xziEGdtKiGBDlFBTpMT5Ftx4+EDNACmbWRilIknzDzGZ3w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245732; a=rsa-sha256; cv=none; b=UfYDu+YBTuk13jfqkyipeYpYQsdMm2V1cS+RiV+d8dz5cg4F6ds44P29TH3zrNWMMsxCX1 /gYZSfyiQa8cJ03ewpENDg8xljFrK5qpiug91+dkzFctcdBJs3iXrZfqGsK3PLfQqgaWaU tYgwAVzRpAOQke3lOVRSRxt+TEUsr8z7IxGxQ5/R99N4Ui9TIJ0Urb20EamlEy5AT4TOHE DrXQSYvGxjh6raATUWxboMIFFS2ECcE330ZPDyOpfbV6NjhSwQhEoWMRYaqwZzGKdged58 K4aLa1YqSzzD+m7gszbVBLDOd9Wtkk9V3bSCMK0I6tAOuWBt1XIYBcyJTV7hhg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245732; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yjVOuLlK1+j/fFniDlE0ZquRSR0kQRbhmrFhq65G5Lw=; b=U/dTiUt5cN/7vuSLHIBfEnbjlZaMzaUe16b3j6gDqF6D82jTg1LKm51DZ6RvWzKJuWrm1K tSXxlT0gV2EHEP/qrAkMOx0sdEP86fePQsPwRclkAIZJzWpRBbbBcIb8SL1nnb/AL6pk8H 9zmd/8Tlf7nZCsFm0Ysmn/2NPRs0BcU/hF/UkhUNy8AoOY80ZUZmm1rofHS8bakRVq9LcY ODZwTDKHjgdwrNqDPuDGs7uGObeo7885ixLU/bVBdkHFls+CA7eD/7z/BwPDOiAgykCujx P9OEpYGf4WdGfD5HRCbEd8ugG1sBreV1Lz0Bnccf2Q60tNIVdvOGF9wO9OcKag== 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 4S6ld05dTCz19Fm; Sat, 14 Oct 2023 01:08:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E18qSe052392; Sat, 14 Oct 2023 01:08:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E18qs2052389; Sat, 14 Oct 2023 01:08:52 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:08:52 GMT Message-Id: <202310140108.39E18qs2052389@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 01211b4be09f - releng/14.0 - vfs: consult freevnodes in vnlru_kick_cond List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 01211b4be09f6e1838da87339ddb3655702d254b Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=01211b4be09f6e1838da87339ddb3655702d254b commit 01211b4be09f6e1838da87339ddb3655702d254b Author: Mateusz Guzik AuthorDate: 2023-10-10 16:19:53 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:07:26 +0000 vfs: consult freevnodes in vnlru_kick_cond If the count is high enough there is no point trying to produce more. Not going there reduces traffic on the vnode_list mtx. This further shaves total real time in a test mentioned in: 74be676d87745eb7 ("vfs: drop one vnode list lock trip during vnlru free recycle") -- 20 instances of find each creating 1 million vnodes, while total limit is set to 400k. Time goes down from ~41 to ~35 seconds. Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 23ef25d25d989e7213bc1d3ef32b0f48a9eb2537) (cherry picked from commit 5cf1c99d4c425ab196dfa3bafcf3a5f142eab887) Approved by: re (gjb) --- sys/kern/vfs_subr.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index e7e612254ba2..5e39a149ef36 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1584,6 +1584,9 @@ static void vnlru_kick_cond(void) { + if (vnlru_read_freevnodes() > wantfreevnodes) + return; + if (vnlruproc_sig) return; mtx_lock(&vnode_list_mtx); @@ -1849,9 +1852,8 @@ vn_alloc_hard(struct mount *mp) } alloc: mtx_assert(&vnode_list_mtx, MA_NOTOWNED); - rnumvnodes = atomic_fetchadd_long(&numvnodes, 1) + 1; - if (vnlru_under(rnumvnodes, vlowat)) - vnlru_kick_cond(); + atomic_add_long(&numvnodes, 1); + vnlru_kick_cond(); return (uma_zalloc_smr(vnode_zone, M_WAITOK)); } From nobody Sat Oct 14 01:08:53 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6ld21jK9z4x4Q2; Sat, 14 Oct 2023 01:08:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6ld20kFRz3XnM; Sat, 14 Oct 2023 01:08:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245734; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6VNyramRx+F9jFTZqwW/toBxs85+YOALqdP1WnlMG3k=; b=jqpQcnXMJg092NmfyoCi8R4BC+cZhXu7MbIF3EBVn7csk8UNkvPBPvktFLrEj3vgToAb5n pH7MHotf3lQ9PL7BDTTOvN60wXle9dO5ibLJDhUHE8Op6TeHDirYuXpRt0YkQhIZbxPKNj 1w/EXGIJNteKi0I3DfI1nO0b/j42EaTLxWom4zaUlF1/cLGlx32j9Xpo/9woZaTsAmhGBh MEHO2yXTsIxJi3qBdJ9RQkuC5L+pKNF+Lb4RvOLClPqPyf1geal87m9r5WWFDGtJendAyX EYhty83mt99NCosrIidfXNPM33w39XSbN5bRnl+oUCELi9N72hE+rmZ3gvVt0g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245734; a=rsa-sha256; cv=none; b=KK9YrE1KdZ25WDZsRnRRtdWGi/4V3maY0hD4N6wEn2gxfKkK5gOqYb++uBaYU3VX4sr+I0 xtcOFUTwaE+qBjtPMroCp1mwHPsaN7IO3l9WVRL5ooCaqSuMFp6cBDXZtPxwpHK5QUDQQc oSLR2UO5fLkrfDB8cAn1gZeNwBGYoYIGNv5b87uB4dZu4daFMb6n8EjcRTWcbGOyFgdM67 pgKuhMHLkni0IULMvj5oUTMFqgXiECuiR3vPGyxf1kmJ19U0eIY5qx575GOYrJVxBK+GIh mqysSqHHmBnZpWkk8SwgQiDVNq6PrZAKfGhm5q4QAVsXWtgwB/Vpz1l5Y1hkrA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245734; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6VNyramRx+F9jFTZqwW/toBxs85+YOALqdP1WnlMG3k=; b=tcidAl58oGWnmQDmbs2VXzqPFRULqeQeFY/qrZnR1FZpWivvo2uikXR9gs1Kw+UoJ5OfKW goZiO7s2TX4TQUkk06SmAUtMgsZgEhnwsQ6p1I2wZPwnOxfbXUS8RJCK7AyPqocS83baB/ BdQ1Rohh+MUGhTQKapNT13M51+UT68KRLXdI5DM6w3UMkAhb0Lbvp05olf6OV+uXX1Yky0 EntaUQi4hUG2572RKS/rcQsLcHYLrHR2SIHh61Yo9Brgx/1IjfMm9waZ/3NHQTb7H1aP0p waVhnJCUDzcYgK8DIzcnLCYLBww3fACXPUUPlacZwYOSzAGT53jqzhM74ZoqEw== 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 4S6ld16qvKz19Hs; Sat, 14 Oct 2023 01:08:53 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E18rSa052452; Sat, 14 Oct 2023 01:08:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E18rDC052449; Sat, 14 Oct 2023 01:08:53 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:08:53 GMT Message-Id: <202310140108.39E18rDC052449@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 899b59500d24 - releng/14.0 - vfs: prefix regular vnlru with a special case for free vnodes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 899b59500d24f81a8b84751df225ecdb323a68a0 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=899b59500d24f81a8b84751df225ecdb323a68a0 commit 899b59500d24f81a8b84751df225ecdb323a68a0 Author: Mateusz Guzik AuthorDate: 2023-09-14 19:08:40 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:07:34 +0000 vfs: prefix regular vnlru with a special case for free vnodes Works around severe performance problems in certain corner cases, see the commentary added. Modifying vnlru logic has proven rather error prone in the past and a release is near, thus take the easy way out and fix it without having to dig into the current machinery. (cherry picked from commit 90a008e94bb205e5b8f3c41d57e155b59a6be95d) (cherry picked from commit cfbc3927613a8455498db5ff3e67046a4dab15a1) Approved by: re (gjb) --- sys/kern/vfs_subr.c | 117 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 113 insertions(+), 4 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 5e39a149ef36..5834feff080c 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1427,6 +1427,14 @@ vnlru_free_locked(int count) return (ret); } +static int +vnlru_free(int count) +{ + + mtx_lock(&vnode_list_mtx); + return (vnlru_free_locked(count)); +} + void vnlru_free_vfsops(int count, struct vfsops *mnt_op, struct vnode *mvp) { @@ -1594,6 +1602,106 @@ vnlru_kick_cond(void) mtx_unlock(&vnode_list_mtx); } +static void +vnlru_proc_sleep(void) +{ + + if (vnlruproc_sig) { + vnlruproc_sig = 0; + wakeup(&vnlruproc_sig); + } + msleep(vnlruproc, &vnode_list_mtx, PVFS|PDROP, "vlruwt", hz); +} + +/* + * A lighter version of the machinery below. + * + * Tries to reach goals only by recycling free vnodes and does not invoke + * uma_reclaim(UMA_RECLAIM_DRAIN). + * + * This works around pathological behavior in vnlru in presence of tons of free + * vnodes, but without having to rewrite the machinery at this time. Said + * behavior boils down to continuously trying to reclaim all kinds of vnodes + * (cycling through all levels of "force") when the count is transiently above + * limit. This happens a lot when all vnodes are used up and vn_alloc + * speculatively increments the counter. + * + * Sample testcase: vnode limit 8388608, 20 separate directory trees each with + * 1 million files in total and 20 find(1) processes stating them in parallel + * (one per each tree). + * + * On a kernel with only stock machinery this needs anywhere between 60 and 120 + * seconds to execute (time varies *wildly* between runs). With the workaround + * it consistently stays around 20 seconds. + * + * That is to say the entire thing needs a fundamental redesign (most notably + * to accommodate faster recycling), the above only tries to get it ouf the way. + * + * Return values are: + * -1 -- fallback to regular vnlru loop + * 0 -- do nothing, go to sleep + * >0 -- recycle this many vnodes + */ +static long +vnlru_proc_light_pick(void) +{ + u_long rnumvnodes, rfreevnodes; + + if (vstir || vnlruproc_sig == 1) + return (-1); + + rnumvnodes = atomic_load_long(&numvnodes); + rfreevnodes = vnlru_read_freevnodes(); + + /* + * vnode limit might have changed and now we may be at a significant + * excess. Bail if we can't sort it out with free vnodes. + */ + if (rnumvnodes > desiredvnodes) { + if (rnumvnodes - rfreevnodes >= desiredvnodes || + rfreevnodes <= wantfreevnodes) { + return (-1); + } + + return (rnumvnodes - desiredvnodes); + } + + /* + * Don't try to reach wantfreevnodes target if there are too few vnodes + * to begin with. + */ + if (rnumvnodes < wantfreevnodes) { + return (0); + } + + if (rfreevnodes < wantfreevnodes) { + return (-1); + } + + return (0); +} + +static bool +vnlru_proc_light(void) +{ + long freecount; + + mtx_assert(&vnode_list_mtx, MA_NOTOWNED); + + freecount = vnlru_proc_light_pick(); + if (freecount == -1) + return (false); + + if (freecount != 0) { + vnlru_free(freecount); + } + + mtx_lock(&vnode_list_mtx); + vnlru_proc_sleep(); + mtx_assert(&vnode_list_mtx, MA_NOTOWNED); + return (true); +} + static void vnlru_proc(void) { @@ -1609,6 +1717,10 @@ vnlru_proc(void) want_reread = false; for (;;) { kproc_suspend_check(vnlruproc); + + if (force == 0 && vnlru_proc_light()) + continue; + mtx_lock(&vnode_list_mtx); rnumvnodes = atomic_load_long(&numvnodes); @@ -1639,10 +1751,7 @@ vnlru_proc(void) vstir = false; } if (force == 0 && !vnlru_under(rnumvnodes, vlowat)) { - vnlruproc_sig = 0; - wakeup(&vnlruproc_sig); - msleep(vnlruproc, &vnode_list_mtx, - PVFS|PDROP, "vlruwt", hz); + vnlru_proc_sleep(); continue; } rfreevnodes = vnlru_read_freevnodes(); From nobody Sat Oct 14 01:08:55 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6ld32DHRz4x4F3; Sat, 14 Oct 2023 01:08:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S6ld31hvpz3XtR; Sat, 14 Oct 2023 01:08:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245735; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KchxW948RNWM+2SjIwxgLhfdhnmgGnIqdC3ZxLsANro=; b=mFECYLbFC+Y2v44iXlryLSl9tAoyK3s0dg8KOV3slbMfVBwxL+99eXL1NCs3QhKAvvJuPo G4d2aR4+7KG9SqHlKA45Zq2Pgr5cVXzf0MFt44ynXY78H4zLXP/VXpkzpxvWt8lUIZpJg6 XsYFJlVIiR2ObUJc7vdBNh3X843KCl8pOV6omZAjyCQzhyK/Zn1K1WX07tZt8kY8C4vrdU IkG6xylM6FqtKllTY8Jsvc9jbnQq05z0aNuzlJJLUm37zHTrsllYxVvLCayshW2zBgpMRw cfgVj12zsFpkQrGUX7IsH1ReIwhMJK4gIuRObcLqAcZ/K+CxNH1/WzG82Y5C0g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245735; a=rsa-sha256; cv=none; b=Owo3WbPIUKo47MZdr+Or+rIXuNrUg22bx6He5RTbtlHjXPLruNPQAzVXEQF89z5NC7Clb5 GZuoohDgmW7mkfDZ4tAvdvnjt8nwXqYiAdpEOrCBYA/ZQds3+skudhaeKTFQXIb3vwfWgw lrqRlIhRRRhDvbWYPH12akPIXfJObGjpp3vV4mfYyvsmOavh4CXsfZwZEvOveBIm8Pme02 0iJugImQfgxbWu3o7CRYVGBX4YMNw2O+HlESADsnwsQHBBCwLaI3+2ZwKBOEtdevbCT8P5 eI2gwxwTieV9GL1y3/1YUmL5kVx/ScrXElgNdyCGxrWZ68Jp4dkErmp4YTe6Vg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245735; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=KchxW948RNWM+2SjIwxgLhfdhnmgGnIqdC3ZxLsANro=; b=eVIrfq6IgtMJUg5xd2F+wuJN9WAa3tTwxOKoesLwJsT/xqVIh94eW6FSJZ3DY9z08dO3VU BCOka68hEent3q+6DNaEVv991TrdLyhMzT3njW57ICpDuwY3K14LAvIxlLpOWXVPGcC43D Zvahw3E/1FSwQhqbyfp3cPOgM/Wg9XBc2R8DP3PXKH5R2xkIqJVTzI9CDKL6+/EemDCyFg xqrLTniHEcNlGeWZc5cLOz9cwnHQnMjoTMLPHy2dAdaOEMzEgQcVPke8IW6N9PGNxdMDJS oJMySjrIvEegYYbVA8G9+hW5fbHEX2lTJp17knSTniRP9xgvt60zMWQPt1bSzg== 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 4S6ld30dQpz19Fn; Sat, 14 Oct 2023 01:08:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E18tAB052497; Sat, 14 Oct 2023 01:08:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E18tnM052494; Sat, 14 Oct 2023 01:08:55 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:08:55 GMT Message-Id: <202310140108.39E18tnM052494@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 421857921ab1 - releng/14.0 - vfs: don't recycle transiently excess vnodes List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 421857921ab1a6219d665605b2c76ff4272e788a Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=421857921ab1a6219d665605b2c76ff4272e788a commit 421857921ab1a6219d665605b2c76ff4272e788a Author: Mateusz Guzik AuthorDate: 2023-10-11 06:39:48 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:07:42 +0000 vfs: don't recycle transiently excess vnodes Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit a4f753e812d8913e9be481c6dfa1574c7f032a56) (cherry picked from commit e3b2372a76c18551529e1aa43d185f602dccdbf1) Approved by: re (gjb) --- sys/kern/vfs_subr.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 5834feff080c..52c14b4a234a 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1656,8 +1656,12 @@ vnlru_proc_light_pick(void) /* * vnode limit might have changed and now we may be at a significant * excess. Bail if we can't sort it out with free vnodes. + * + * Due to atomic updates the count can legitimately go above + * the limit for a short period, don't bother doing anything in + * that case. */ - if (rnumvnodes > desiredvnodes) { + if (rnumvnodes > desiredvnodes + 10) { if (rnumvnodes - rfreevnodes >= desiredvnodes || rfreevnodes <= wantfreevnodes) { return (-1); @@ -1734,7 +1738,7 @@ vnlru_proc(void) * adjusted using its sysctl, or emergency growth), first * try to reduce it by discarding from the free list. */ - if (rnumvnodes > desiredvnodes) { + if (rnumvnodes > desiredvnodes + 10) { vnlru_free_locked(rnumvnodes - desiredvnodes); mtx_lock(&vnode_list_mtx); rnumvnodes = atomic_load_long(&numvnodes); From nobody Sat Oct 14 01:08:56 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6ld43hjlz4x46Y; Sat, 14 Oct 2023 01:08: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 4S6ld43CYgz3Y3b; Sat, 14 Oct 2023 01:08:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245736; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4jy8KkVt1cINHBWydpUTp8yFQ81rdLd6wlQ0hRmRIq4=; b=t2NNTfj0aUEaFT4McErMpxEvjY5D3YB0XqldvcIsEmC7ufQbJ+x00EkgvRVIQzewV/Hzay LkHFqhyY6QW3arwVOGeEXr4GgLFeCZj63q0vWHw06u5XYtTP+BE1tSQXQ3qExKwF2nCXJH HNwx0A33uwlZSmTgv7x62Oz/KRHN67xvn6BJ5NhMbLq5CcQEAjXRpd6rErW8ORO4VPKcMn M2FZVB4njp7DiNu577qoImawFEGSVO0Y7CJfri3VNEJC74So3FPlzk7QlSa8A/r4fgdQeV H4b6zeDybQ/gricYz4nmP7Q4GkwLxzr+PBe9L9drU6qUVW3ZY21NnFj8+/PNYQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245736; a=rsa-sha256; cv=none; b=X56RkK/oxNnS0MeX2pzckYawqTO46H3rjheMlKxw3jZnAsZlH2OkEpEP6nHKpze/6jZOEj P6IYXJFABUqKHYDEUOWPswdPYcCT86KVpAImkwAahuYRnoXx8NCMAU9IfCqT3aLX4JUnwZ jqe9vesj76yyVR2wTxtqtzjZ6LISfM0qpVQzdLuY4QAV2xq3UJ2C2UwFB4pZqz9oXNvp8i rI1D8MOXCdBy2hpp3awDw6xilFizkci0I3VBYgYo82PLValqlcM+bHe0BqZSfn+DkmOjeC zyhu9VXu3LrBlOBSstlUfotlop5kX6KOVvoE9ke/uih7XbVNMpjnKjyzCHhPwQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245736; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4jy8KkVt1cINHBWydpUTp8yFQ81rdLd6wlQ0hRmRIq4=; b=IPgjA+MMa74wzNhAcJOBDPFH5SKzsA6cJUEp5eZhF4AWppCFW1Gv4xuZUitKopOIhp5KUH me2+49gFcEeo7aZFAV7WNgQ8gTk9Z0iIM4auIYeZT5iYdj5LEMycoCm6mMvhZWhignMkfD aynnMCm4NDpygi9VPRS09UITtT8ggAsw7OWt2fEzg70EAruAvS6rdgu3qhNkvuJbUBArnm uWzT2hTmhw7LbCHruvXJzGan7IOvJpaKPdHWsYkX75pDNfHqUQMgjg+kx0K3BOdT8MO6hc dwTwn0tCjHrnl/c9GRpqgv/0im0Y/qWqy/cxxT2wbICEMwSYmARyQ7YYM9LABA== 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 4S6ld426ncz191M; Sat, 14 Oct 2023 01:08:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E18une052549; Sat, 14 Oct 2023 01:08:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E18ucH052545; Sat, 14 Oct 2023 01:08:56 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:08:56 GMT Message-Id: <202310140108.39E18ucH052545@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: c3cf531eace6 - releng/14.0 - vfs: further speed up continuous free vnode recycle List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: c3cf531eace688634b3d839a8d916b713d98d6bc Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=c3cf531eace688634b3d839a8d916b713d98d6bc commit c3cf531eace688634b3d839a8d916b713d98d6bc Author: Mateusz Guzik AuthorDate: 2023-10-11 09:42:12 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:07:50 +0000 vfs: further speed up continuous free vnode recycle The primary bottleneck *was* vnode_list mtx, which got artificially worsened due to the following work done with the lock held: 1. the global heavily modified numvnodes counter was being read, inducing massive cache line ping pong 2. should the value fit limits (which it normally did) there would be an avoidable write to vn_alloc_cyclecount, which is being read outside of the lock, once more inducing traffic But if vn_alloc_cyclecount is 0, which it normally is even when facing vnode shortage, there is no need to check numvnodes nor set it to 0 again. Another problem was numvnodes adjustment (which made the locked read much worse). While it fundamentally does not scale as it is not distributed in any fashion, it was avoidably slow. When bumping over the vnode limit, it would be modified with atomics 3 times: inc + dec to backpedal in vn_alloc, then final inc in vn_alloc_hard. One can let some slop persist over calls to vnlru_free instead. In principle each thread in the system could get here and bump it, so a limit is put in place to keep things sane. Bench setup same as in prior commits: zfs, 20 separate directory trees each with 1 million files in total and 20 find(1) processes stating them in parallel (one per each tree). Total run time (in seconds) goes down as follows: vnode limit 8388608 400000 before ~20 ~35 after ~8 ~15 With this in place the primary bottleneck is now ZFS. Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 054f45e026d898bdc8f974d33dd748937dee1d6b) (cherry picked from commit cc2d62daa33935489235a4ef253ae61676baf7c4) Approved by: re (gjb) --- sys/kern/vfs_subr.c | 46 +++++++++++++++++++++++++++++++--------------- 1 file changed, 31 insertions(+), 15 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 52c14b4a234a..99933a6b9c88 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1490,6 +1490,8 @@ static u_long vnlruproc_kicks; SYSCTL_ULONG(_vfs_vnode_vnlru, OID_AUTO, kicks, CTLFLAG_RD, &vnlruproc_kicks, 0, "Number of times vnlru got woken up due to vnode shortage"); +#define VNLRU_COUNT_SLOP 100 + /* * The main freevnodes counter is only updated when a counter local to CPU * diverges from 0 by more than VNLRU_FREEVNODES_SLOP. CPUs are conditionally @@ -1632,7 +1634,8 @@ vnlru_proc_sleep(void) * * On a kernel with only stock machinery this needs anywhere between 60 and 120 * seconds to execute (time varies *wildly* between runs). With the workaround - * it consistently stays around 20 seconds. + * it consistently stays around 20 seconds [it got further down with later + * changes]. * * That is to say the entire thing needs a fundamental redesign (most notably * to accommodate faster recycling), the above only tries to get it ouf the way. @@ -1661,7 +1664,7 @@ vnlru_proc_light_pick(void) * the limit for a short period, don't bother doing anything in * that case. */ - if (rnumvnodes > desiredvnodes + 10) { + if (rnumvnodes > desiredvnodes + VNLRU_COUNT_SLOP + 10) { if (rnumvnodes - rfreevnodes >= desiredvnodes || rfreevnodes <= wantfreevnodes) { return (-1); @@ -1795,7 +1798,8 @@ vnlru_proc(void) * limit (see vn_alloc_hard), no need to call uma_reclaim if * this happens. */ - if (onumvnodes + 1000 > desiredvnodes && numvnodes <= desiredvnodes) + if (onumvnodes + VNLRU_COUNT_SLOP + 1000 > desiredvnodes && + numvnodes <= desiredvnodes) uma_reclaim(UMA_RECLAIM_DRAIN); if (done == 0) { if (force == 0 || force == 1) { @@ -1912,19 +1916,27 @@ SYSCTL_ULONG(_vfs_vnode_stats, OID_AUTO, alloc_sleeps, CTLFLAG_RD, &vn_alloc_sle "Number of times vnode allocation blocked waiting on vnlru"); static struct vnode * __noinline -vn_alloc_hard(struct mount *mp) +vn_alloc_hard(struct mount *mp, u_long rnumvnodes, bool bumped) { - u_long rnumvnodes, rfreevnodes; + u_long rfreevnodes; - mtx_lock(&vnode_list_mtx); - rnumvnodes = atomic_load_long(&numvnodes); - if (rnumvnodes + 1 < desiredvnodes) { - vn_alloc_cyclecount = 0; - mtx_unlock(&vnode_list_mtx); - goto alloc; + if (bumped) { + if (rnumvnodes > desiredvnodes + VNLRU_COUNT_SLOP) { + atomic_subtract_long(&numvnodes, 1); + bumped = false; + } } + mtx_lock(&vnode_list_mtx); + if (vn_alloc_cyclecount != 0) { + rnumvnodes = atomic_load_long(&numvnodes); + if (rnumvnodes + 1 < desiredvnodes) { + vn_alloc_cyclecount = 0; + mtx_unlock(&vnode_list_mtx); + goto alloc; + } + rfreevnodes = vnlru_read_freevnodes(); if (rfreevnodes < wantfreevnodes) { if (vn_alloc_cyclecount++ >= rfreevnodes) { @@ -1953,6 +1965,10 @@ vn_alloc_hard(struct mount *mp) /* * Wait for space for a new vnode. */ + if (bumped) { + atomic_subtract_long(&numvnodes, 1); + bumped = false; + } mtx_lock(&vnode_list_mtx); vnlru_kick_locked(); vn_alloc_sleeps++; @@ -1965,7 +1981,8 @@ vn_alloc_hard(struct mount *mp) } alloc: mtx_assert(&vnode_list_mtx, MA_NOTOWNED); - atomic_add_long(&numvnodes, 1); + if (!bumped) + atomic_add_long(&numvnodes, 1); vnlru_kick_cond(); return (uma_zalloc_smr(vnode_zone, M_WAITOK)); } @@ -1976,11 +1993,10 @@ vn_alloc(struct mount *mp) u_long rnumvnodes; if (__predict_false(vn_alloc_cyclecount != 0)) - return (vn_alloc_hard(mp)); + return (vn_alloc_hard(mp, 0, false)); rnumvnodes = atomic_fetchadd_long(&numvnodes, 1) + 1; if (__predict_false(vnlru_under(rnumvnodes, vlowat))) { - atomic_subtract_long(&numvnodes, 1); - return (vn_alloc_hard(mp)); + return (vn_alloc_hard(mp, rnumvnodes, true)); } return (uma_zalloc_smr(vnode_zone, M_WAITOK)); From nobody Sat Oct 14 01:08:57 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6ld607Krz4x4Q8; Sat, 14 Oct 2023 01:08: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 4S6ld53pbHz3Y12; Sat, 14 Oct 2023 01:08:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245737; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xqRfD/0dgigq1KXVUG+BD4RtIBXKfGr5xooeIRQjsx8=; b=HxB3wEDMwnuIehBSNgXpiiYgmXVw3CRFy9D8DMSixyf3pn5pK261zjTOxzC6IWeyaMcbtU 61HkFsMTaZ736QtYDh46Je0nqNJizLkdfeJddWjhens/myUg3bdTI311PNx0eOkbOoND6P xTe2f32tzbCxHw4lBmui8ijQR21ziXvALb+JMEb10GzbistuyZH8EyVgf5FKiK2Br6goL2 JoHTjvHfnsm+gwHL18/e9eVr9KyY1fgeD1ezpB4tlP78x/zw9iLx0ARm/eh6BJfapfRnOh DcGStpGdHuEeSwqhMhOqGfDk4uuWNNddZY9kZCF7BoT/OJH24fKPuYUEIJks9g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245737; a=rsa-sha256; cv=none; b=KHkeFJ0X53c9lUqEoLAoWvz8X1nxa96TDhxQR8rHYZuzVVKUWkvcg92VOiATq6QxQJ870s /Aqua/zt+ERx5Qko3HgvCU9oCI61Xgb+JhVO9j8TnKA4WtXj5gurkcd30O50Modm+531K1 e52kqqebU8Kwp7UBEw4TeStdOHFvBLkoBkvMaRoXwNf5/QVfz4Naky8CQ4dKzg15p4j7To d7lR8JD7jghGA/9EH0eLmw71GnhfFSMg0td/miLs7FqeLFdFW9CM2jZBYxorKMlCpOx2vb EF9yVvPD2XMMvE9MDV7KOwz0rLUw46/mMopRx3UhYvEucOm8Ct4UPD1FlnvTSw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245737; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xqRfD/0dgigq1KXVUG+BD4RtIBXKfGr5xooeIRQjsx8=; b=f8MNiPo0aGLpjhGlRZg+y8WTPAawSJ6HCjf3BHWYed1AnwKpKU5ZXkU3iIKKQQ7PrfQhZm dwhpvapkP8TdyYp8uYsRKyP110/DqWyNaw2TU7aWBYzBKvzTyriXGmbk/Cwep2xAF3ApEw /vR2oM+p3P/T1duXsZaBEzzwveZCcfsN+u5FXURhbw/tNzq6iQX5nsHp+EEk9Fl+OxymjP tk+9+SV8a04EoKDNv73AC/fnEZUUWrpjETx/S30dRGzdJyo/eNvFANLsnDsWSC8YE6bTZ9 NFSa9yHXzqEAUi05Zi1FsfQSGHE9ZEcQ67cMmL07rADJ6PDeB0RHUih1/QNh9A== 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 4S6ld52vjXz191N; Sat, 14 Oct 2023 01:08:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E18vLT052599; Sat, 14 Oct 2023 01:08:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E18vB7052596; Sat, 14 Oct 2023 01:08:57 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:08:57 GMT Message-Id: <202310140108.39E18vB7052596@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 6598816d6f2b - releng/14.0 - vfs: add max_vnlru_free to the vfs.vnode.vnlru tree List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 6598816d6f2b81b240f6685fe0ce48b20bf02b43 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=6598816d6f2b81b240f6685fe0ce48b20bf02b43 commit 6598816d6f2b81b240f6685fe0ce48b20bf02b43 Author: Mateusz Guzik AuthorDate: 2023-10-11 13:05:43 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:08:00 +0000 vfs: add max_vnlru_free to the vfs.vnode.vnlru tree While here rename the var internally. (cherry picked from commit 281a9715b582861fe4097c2f27eb27b208d752b1) (cherry picked from commit 14babcc0815e74079d608f4fe1bc1892107e08a5) Approved by: re (gjb) --- sys/kern/vfs_subr.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 99933a6b9c88..d21ccb4251cd 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1306,9 +1306,11 @@ next_iter: return (done); } -static int max_vnlru_free = 10000; /* limit on vnode free requests per call */ -SYSCTL_INT(_debug, OID_AUTO, max_vnlru_free, CTLFLAG_RW, &max_vnlru_free, - 0, +static int max_free_per_call = 10000; +SYSCTL_INT(_debug, OID_AUTO, max_vnlru_free, CTLFLAG_RW, &max_free_per_call, 0, + "limit on vnode free requests per call to the vnlru_free routine (legacy)"); +SYSCTL_INT(_vfs_vnode_vnlru, OID_AUTO, max_free_per_call, CTLFLAG_RW, + &max_free_per_call, 0, "limit on vnode free requests per call to the vnlru_free routine"); /* @@ -1323,8 +1325,8 @@ vnlru_free_impl(int count, struct vfsops *mnt_op, struct vnode *mvp) bool retried; mtx_assert(&vnode_list_mtx, MA_OWNED); - if (count > max_vnlru_free) - count = max_vnlru_free; + if (count > max_free_per_call) + count = max_free_per_call; if (count == 0) { mtx_unlock(&vnode_list_mtx); return (0); From nobody Sat Oct 14 01:08:58 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6ld66GgHz4x46f; Sat, 14 Oct 2023 01:08: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 4S6ld65Ds1z3YDM; Sat, 14 Oct 2023 01:08:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245738; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9YW5Ze8cWpaZGNLNloJ0rpmAboxr7SDnJi9wYl/czTk=; b=duDFDcOpRNZJflsLi0GsTl6VKXoyRH56Kj4hcDSKTC7sJ8swTTNlvXHEwaVWQ9UnlAObAE Xd4REFEuHJa4ogxlpB4uYHc48EkIm+yv8U/txYZsAY0fdQUiRNfeV/7gFYKowEQovIN+8k FSN5iy1+a/2jal16km4uM+MtEeQeRbwM2KsHp2jbknSAT6uosXTK7atEor36Eve6IqaXwA N58z65PpSSnFXUjpBby5JBlXzgycbB0wpLm7PTP+VAn6587YB60vOgoWVS8sommreVFTaB BEUV9AtmGqj5ILYJNLt3bx4h92NT/3dnK5E23sjbm4ZMV+RBUo1+VKCW6Utd6g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245738; a=rsa-sha256; cv=none; b=l4obSg1MKwnpl1ICSid9yp9OPVLSVYOLDmKKM901Hu/vzTexiYYoQmLZr0B0Gq0QQHkOz7 G0iVrccW7OJtc1VYHGApQL4y2ndOKn8ia3ralrHH8HK5mNX6+Jdsf2GYhc4067oqM6cbsy F9NavVIE9t19ql0vwJeabliDiAgdhDjSeBKe5umA/qVF391qAawPp3cq6mYp60HnfeRC8C I1IDRaprLppn7IkZ/yHYWZSJjgOWdLSIvcU9E1p1zmtWKffLbs3D+uhkpLI2AdByy7aR69 gC2BFUS74Rpjrmkb8Ar4dpM818Uw/WivUAYuj4jebxCCWKdwI1ENzajFbhaOHA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245738; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9YW5Ze8cWpaZGNLNloJ0rpmAboxr7SDnJi9wYl/czTk=; b=RRm0R7YgZoqRjHR05X9lnK8qZGOE9xMIyoxJdJCLx5WG6IAjzNzgJJxBJ62Dwe/ezJjD3R ZMzefeAnA4k3Z7iFLppa6BrVmZ+PvYGTrfNNlt10dY5QcCNx27bsk1CQw5puegBROg8zX+ dlqR0KY2ABJEgH0KzfGbIqkXDl4MHcS49ujjrD1sdtiMLCGL1p5sOuJwcIrmGYd3OQlA/n D2ZDhVXDWOT4SOEBnmOkbi3PVx0aokKgNrFTujI6LH3eQuhOH9GWQBpyFSeaUFTCbI3xTE kgCxmPlCzet2MA55pJ+5esgLW41fCGGKBDeoUL0s7wQ1t/9geKXQZ35ASBelNw== 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 4S6ld64Bb3z19RN; Sat, 14 Oct 2023 01:08:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E18wWN052647; Sat, 14 Oct 2023 01:08:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E18wPc052644; Sat, 14 Oct 2023 01:08:58 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:08:58 GMT Message-Id: <202310140108.39E18wPc052644@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: decacbe47c3e - releng/14.0 - vfs: count calls to uma_reclaim in vnlru List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: decacbe47c3e5948638bf368a3ac3d68a5a9b95f Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=decacbe47c3e5948638bf368a3ac3d68a5a9b95f commit decacbe47c3e5948638bf368a3ac3d68a5a9b95f Author: Mateusz Guzik AuthorDate: 2023-10-11 22:48:03 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:08:09 +0000 vfs: count calls to uma_reclaim in vnlru (cherry picked from commit bb679b0c49094757f2aef3d8fe46c41dc8192fea) (cherry picked from commit c1ffb1ffeeac1b3968bf3eae5195b49e1c33b542) Approved by: re (gjb) --- sys/kern/vfs_subr.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index d21ccb4251cd..01585ac9eefd 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1711,6 +1711,10 @@ vnlru_proc_light(void) return (true); } +static u_long uma_reclaim_calls; +SYSCTL_ULONG(_vfs_vnode_vnlru, OID_AUTO, uma_reclaim_calls, CTLFLAG_RD | CTLFLAG_STATS, + &uma_reclaim_calls, 0, "Number of calls to uma_reclaim"); + static void vnlru_proc(void) { @@ -1801,8 +1805,10 @@ vnlru_proc(void) * this happens. */ if (onumvnodes + VNLRU_COUNT_SLOP + 1000 > desiredvnodes && - numvnodes <= desiredvnodes) + numvnodes <= desiredvnodes) { + uma_reclaim_calls++; uma_reclaim(UMA_RECLAIM_DRAIN); + } if (done == 0) { if (force == 0 || force == 1) { force = 2; From nobody Sat Oct 14 01:08:59 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6ld801dpz4x4Gv; Sat, 14 Oct 2023 01:09: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 4S6ld76BvDz3Y6W; Sat, 14 Oct 2023 01:08:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245739; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2BxxPC/nJdBt9vtlZzB76s2aVkkCAWRYILSUFq0zE3I=; b=BSKFew1/rPtniVXglMZEIa73pkHztETOydUUa0sV+59mEp5WJeExqd1idBYSIFFahRQ1eZ 1ejmivW0CfGEYRA8ydLxkQNBDOp4sAkzvuH3Tdwq16vFQFpNXOF2JF9UulJxgZtiVSV6Kh ZML4ft4kGdMmAPpM2wu6ZazeCqVepXs9U5ix0V+JpQy9w7SsXYWlUtFEbVoz7QWvt8Jy9v lLdCP+Aw6eQKeDThVcFs+e1z+AlRRttd+rqIuaU74nOVL6Hr1pI9ehh+B7To4u/HBGA/tj h8spP4vbnxc5vyeyudjbyIvZBQ2LNbTAhL4gkDMKw+vihkVTMN4AoX8hAG4OKg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245739; a=rsa-sha256; cv=none; b=TYPJMdImkX/yOs8NDYFPqbdFG8mfUqTf40KoqTkFqBdA3hau4axaiFpfmywQqAnad7bMMt yPD/0xz8Gu2RPu1I06ihQQAsygteCvIxWudtWzcuQ1IbQilY9Qc4BvIH91WhRwnt0VOgEf g8Cj8lO24+4nL8+Tkihyo952NCVrxm9WCvK8GXcCVqYYpVdD8lqzpWAQqwogVbYgQo5Doo OPDSWMLWlBEGAJLNsb56qGk/0Umf75QIbDzj8+vEe0L3u9BsxV1MwCvrnWKYA6RR/CbQ52 Lj7qzSByJkgWINVVgFJtyfOTVjVdrMc0FQFZtx6sg/ENcppQiCNZWpkayX91cw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245739; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2BxxPC/nJdBt9vtlZzB76s2aVkkCAWRYILSUFq0zE3I=; b=uMUQx/+Ad9XP/rbVm1B3bWcn8KIZyoElDheiGgtDY3JLtdPHy5OJGRxe303DQXPxR3dG5a 4DYaMPUnFUmQvr/1KzQfK6JAJ9WeVb7+BMFMncIEo1zf+dxQhVfPBJO9CFBQcAON6MLhPf Cqz2D9qwo4EwNHf8dGLDEZbz1L7TMq15sVYlr3s6grx0KH9JYjANigBscSKli2L4+uDHWv wht5+PybxPg2K1ftALkpwdZrgwsg1uaihZ/PJJm79FXzoMwI7An61iaFkheHG0HsAGKFnR khHTL20ocIA4S4CGTwd7sSLexP3NhB4MCXG6tWfj85Ec/OsS8hw7OyVOyGnKtg== 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 4S6ld75H3rz19Fp; Sat, 14 Oct 2023 01:08:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E18xpq052703; Sat, 14 Oct 2023 01:08:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E18x4S052700; Sat, 14 Oct 2023 01:08:59 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:08:59 GMT Message-Id: <202310140108.39E18x4S052700@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: 344bc039e974 - releng/14.0 - vfs: count recycles by vnlru and by vn_alloc separately List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 344bc039e974db9753259c7ac2badf17ba17aa8f Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=344bc039e974db9753259c7ac2badf17ba17aa8f commit 344bc039e974db9753259c7ac2badf17ba17aa8f Author: Mateusz Guzik AuthorDate: 2023-10-12 06:47:45 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:08:17 +0000 vfs: count recycles by vnlru and by vn_alloc separately Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit a92fc3122d2becfbf5a627af6eda5cedfac57c31) (cherry picked from commit e4f85a24f9baf7a6c31853ddad03a0f15028158f) Approved by: re (gjb) --- sys/kern/vfs_subr.c | 48 ++++++++++++++++++++++++++++++++++-------------- 1 file changed, 34 insertions(+), 14 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 01585ac9eefd..b14793ccd84e 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -110,7 +110,7 @@ static void delmntque(struct vnode *vp); static int flushbuflist(struct bufv *bufv, int flags, struct bufobj *bo, int slpflag, int slptimeo); static void syncer_shutdown(void *arg, int howto); -static int vtryrecycle(struct vnode *vp); +static int vtryrecycle(struct vnode *vp, bool isvnlru); static void v_init_counters(struct vnode *); static void vn_seqc_init(struct vnode *); static void vn_seqc_write_end_free(struct vnode *vp); @@ -211,6 +211,11 @@ SYSCTL_COUNTER_U64(_vfs, OID_AUTO, recycles_free, CTLFLAG_RD, &recycles_free_cou SYSCTL_COUNTER_U64(_vfs_vnode_vnlru, OID_AUTO, recycles_free, CTLFLAG_RD, &recycles_free_count, "Number of free vnodes recycled to meet vnode cache targets"); +static counter_u64_t direct_recycles_free_count; +SYSCTL_COUNTER_U64(_vfs_vnode_vnlru, OID_AUTO, direct_recycles_free, CTLFLAG_RD, + &direct_recycles_free_count, + "Number of free vnodes recycled by vn_alloc callers to meet vnode cache targets"); + static counter_u64_t vnode_skipped_requeues; SYSCTL_COUNTER_U64(_vfs_vnode_stats, OID_AUTO, skipped_requeues, CTLFLAG_RD, &vnode_skipped_requeues, "Number of times LRU requeue was skipped due to lock contention"); @@ -771,6 +776,7 @@ vntblinit(void *dummy __unused) vnodes_created = counter_u64_alloc(M_WAITOK); recycles_count = counter_u64_alloc(M_WAITOK); recycles_free_count = counter_u64_alloc(M_WAITOK); + direct_recycles_free_count = counter_u64_alloc(M_WAITOK); vnode_skipped_requeues = counter_u64_alloc(M_WAITOK); /* @@ -1317,7 +1323,7 @@ SYSCTL_INT(_vfs_vnode_vnlru, OID_AUTO, max_free_per_call, CTLFLAG_RW, * Attempt to reduce the free list by the requested amount. */ static int -vnlru_free_impl(int count, struct vfsops *mnt_op, struct vnode *mvp) +vnlru_free_impl(int count, struct vfsops *mnt_op, struct vnode *mvp, bool isvnlru) { struct vnode *vp; struct mount *mp; @@ -1403,7 +1409,7 @@ vnlru_free_impl(int count, struct vfsops *mnt_op, struct vnode *mvp) * * Check nullfs for one example (null_getwritemount). */ - vtryrecycle(vp); + vtryrecycle(vp, isvnlru); count--; if (count == 0) { break; @@ -1419,22 +1425,33 @@ vnlru_free_impl(int count, struct vfsops *mnt_op, struct vnode *mvp) * XXX: returns without vnode_list_mtx locked! */ static int -vnlru_free_locked(int count) +vnlru_free_locked_direct(int count) { int ret; mtx_assert(&vnode_list_mtx, MA_OWNED); - ret = vnlru_free_impl(count, NULL, vnode_list_free_marker); + ret = vnlru_free_impl(count, NULL, vnode_list_free_marker, false); mtx_assert(&vnode_list_mtx, MA_NOTOWNED); return (ret); } static int -vnlru_free(int count) +vnlru_free_locked_vnlru(int count) +{ + int ret; + + mtx_assert(&vnode_list_mtx, MA_OWNED); + ret = vnlru_free_impl(count, NULL, vnode_list_free_marker, true); + mtx_assert(&vnode_list_mtx, MA_NOTOWNED); + return (ret); +} + +static int +vnlru_free_vnlru(int count) { mtx_lock(&vnode_list_mtx); - return (vnlru_free_locked(count)); + return (vnlru_free_locked_vnlru(count)); } void @@ -1445,7 +1462,7 @@ vnlru_free_vfsops(int count, struct vfsops *mnt_op, struct vnode *mvp) MPASS(mvp != NULL); VNPASS(mvp->v_type == VMARKER, mvp); mtx_lock(&vnode_list_mtx); - vnlru_free_impl(count, mnt_op, mvp); + vnlru_free_impl(count, mnt_op, mvp, true); mtx_assert(&vnode_list_mtx, MA_NOTOWNED); } @@ -1702,7 +1719,7 @@ vnlru_proc_light(void) return (false); if (freecount != 0) { - vnlru_free(freecount); + vnlru_free_vnlru(freecount); } mtx_lock(&vnode_list_mtx); @@ -1748,7 +1765,7 @@ vnlru_proc(void) * try to reduce it by discarding from the free list. */ if (rnumvnodes > desiredvnodes + 10) { - vnlru_free_locked(rnumvnodes - desiredvnodes); + vnlru_free_locked_vnlru(rnumvnodes - desiredvnodes); mtx_lock(&vnode_list_mtx); rnumvnodes = atomic_load_long(&numvnodes); } @@ -1848,7 +1865,7 @@ SYSINIT(vnlru, SI_SUB_KTHREAD_UPDATE, SI_ORDER_FIRST, kproc_start, * through vgone(). */ static int -vtryrecycle(struct vnode *vp) +vtryrecycle(struct vnode *vp, bool isvnlru) { struct mount *vnmp; @@ -1893,7 +1910,10 @@ vtryrecycle(struct vnode *vp) return (EBUSY); } if (!VN_IS_DOOMED(vp)) { - counter_u64_add(recycles_free_count, 1); + if (isvnlru) + counter_u64_add(recycles_free_count, 1); + else + counter_u64_add(direct_recycles_free_count, 1); vgonel(vp); } VOP_UNLOCK(vp); @@ -1966,7 +1986,7 @@ vn_alloc_hard(struct mount *mp, u_long rnumvnodes, bool bumped) * should be chosen so that we never wait or even reclaim from * the free list to below its target minimum. */ - if (vnlru_free_locked(1) > 0) + if (vnlru_free_locked_direct(1) > 0) goto alloc; mtx_assert(&vnode_list_mtx, MA_NOTOWNED); if (mp == NULL || (mp->mnt_kern_flag & MNTK_SUSPEND) == 0) { @@ -1983,7 +2003,7 @@ vn_alloc_hard(struct mount *mp, u_long rnumvnodes, bool bumped) msleep(&vnlruproc_sig, &vnode_list_mtx, PVFS, "vlruwk", hz); if (atomic_load_long(&numvnodes) + 1 > desiredvnodes && vnlru_read_freevnodes() > 1) - vnlru_free_locked(1); + vnlru_free_locked_direct(1); else mtx_unlock(&vnode_list_mtx); } From nobody Sat Oct 14 01:09:00 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6ld91G34z4x4FJ; Sat, 14 Oct 2023 01:09: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 4S6ld90NFvz3YL2; Sat, 14 Oct 2023 01:09:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245741; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nOdqa0m2DAgKKE7jW9gunrhxsx2sbgQUfs1AdMlCOd4=; b=qNak5mZt8Dvjc6Wr7OusoiHS65OFhF9fTy37Qn35rDCyg/aatNpiX/i7lgXlvGc+gbluLJ jE5FtJwnxMcLTsA256gqE026TvW5B4ix9B9+Tzcssu16UDIGHkVcTJGHLwOonAz0N4aYqG 92DyU5r4YHyKLNY7lHO9XFKWOn6gUselLLixjy6j3QNbhMDisiBSXvw1jkm70pSxVKCOM7 rJgDY8KGhz6aFywfUxe03HA/x6ftSHxr+3ZYWzRmWTh3vwDyohG8UUBVFBTkgHANPGLP4+ 3C+dM85vtW2/UvXM3ZH4HKPfhx+MAhfXdUtehPFwVsnlc5LVI/r7KEJA4CEKrw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245741; a=rsa-sha256; cv=none; b=jsWMnPa93T7bG5sWuyl5SmKCw+C3ZtOdBeUpM8pivXdM9ip9FyHhtlrVp/ri6yMLNUbeSI hYQxR/cNX6AgiIjZiwAYxXgXYl38KGwfctlqmyZbHh1U0TuUVWOuD9uSqzkzHWK0ckGLiQ noAecEQNSRwUrPjgY461VJZEWjljyYB3Kd1+OySWVxML6wB29jv2J3ME/zwU9Vmx5c7GDh xzxbnHQrb4rAsV5eGSpoMuKt6ptmYlsmprsTeGVrAyiW6aRiN6Gx3keatt9RWT9kBLXnHz y/xaR996XTEJ8nbRKbbKIebu/xYMifZCs7FCHVIBRbjarnxYhro+N4UmaA2bIQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245741; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nOdqa0m2DAgKKE7jW9gunrhxsx2sbgQUfs1AdMlCOd4=; b=dH7CN9EnnB9uzCYSoDjZp3YgPnsDkSeDYCXZnZk6gjVcC3nHfTaLQTZOJalsuiD48OwRKa i7UkIjRbMbk0n9uPAesiRaTSkGreia1YNiLdQxAU68QJOuwB2NvI9bO20d3m6snratTczL yh5dbJ3yaR0TmC49cXxZ3lMORajvP06g9e/0IpxGUNJdEIVq+9WW+lUfd/mI5jCiU/FecY OHOIsmjEIaqjKzTCpc7/AEY/vSamdGQ5hmAWUXQ4aB80MxoAi0/HFj2bvfxF7l3FLhjUS/ 3TU0IRjs4uo9YxXeJnmtczz2XdjZE+qk2aFu+X+9RGXdzlXoyP1QrJFHHpHTVA== 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 4S6ld86Kysz18ZK; Sat, 14 Oct 2023 01:09:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E1901K052760; Sat, 14 Oct 2023 01:09:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E190YL052757; Sat, 14 Oct 2023 01:09:00 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:09:00 GMT Message-Id: <202310140109.39E190YL052757@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: c79af90ce42f - releng/14.0 - vfs: convert recycles_count and recycles_free_count to mere u_long List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: c79af90ce42f2cea823c6ab052726393c709b89a Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=c79af90ce42f2cea823c6ab052726393c709b89a commit c79af90ce42f2cea823c6ab052726393c709b89a Author: Mateusz Guzik AuthorDate: 2023-10-12 06:57:59 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:08:23 +0000 vfs: convert recycles_count and recycles_free_count to mere u_long Only vnlru ever updates them. This also removes recycles_count updates from hand-rolled debug vnode recycling via sysctl. Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 37544d9768110fd67527db7f2a3f7bb6fc977582) (cherry picked from commit bdd19ce53c07bc44b9d8f46dcedda0fceca8e069) Approved by: re (gjb) --- sys/kern/vfs_subr.c | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index b14793ccd84e..0fe2bc46446c 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -199,16 +199,19 @@ static long wantfreevnodes; static long __exclusive_cache_line freevnodes; static long freevnodes_old; -static counter_u64_t recycles_count; -SYSCTL_COUNTER_U64(_vfs, OID_AUTO, recycles, CTLFLAG_RD, &recycles_count, +static u_long recycles_count; +SYSCTL_ULONG(_vfs, OID_AUTO, recycles, CTLFLAG_RD | CTLFLAG_STATS, &recycles_count, 0, "Number of vnodes recycled to meet vnode cache targets (legacy)"); -SYSCTL_COUNTER_U64(_vfs_vnode_vnlru, OID_AUTO, recycles, CTLFLAG_RD, &recycles_count, +SYSCTL_ULONG(_vfs_vnode_vnlru, OID_AUTO, recycles, CTLFLAG_RD | CTLFLAG_STATS, + &recycles_count, 0, "Number of vnodes recycled to meet vnode cache targets"); -static counter_u64_t recycles_free_count; -SYSCTL_COUNTER_U64(_vfs, OID_AUTO, recycles_free, CTLFLAG_RD, &recycles_free_count, +static u_long recycles_free_count; +SYSCTL_ULONG(_vfs, OID_AUTO, recycles_free, CTLFLAG_RD | CTLFLAG_STATS, + &recycles_free_count, 0, "Number of free vnodes recycled to meet vnode cache targets (legacy)"); -SYSCTL_COUNTER_U64(_vfs_vnode_vnlru, OID_AUTO, recycles_free, CTLFLAG_RD, &recycles_free_count, +SYSCTL_ULONG(_vfs_vnode_vnlru, OID_AUTO, recycles_free, CTLFLAG_RD | CTLFLAG_STATS, + &recycles_free_count, 0, "Number of free vnodes recycled to meet vnode cache targets"); static counter_u64_t direct_recycles_free_count; @@ -458,7 +461,6 @@ sysctl_try_reclaim_vnode(SYSCTL_HANDLER_ARGS) goto putvnode; } - counter_u64_add(recycles_count, 1); vgone(vp); putvnode: vput(vp); @@ -492,7 +494,6 @@ sysctl_ftry_reclaim_vnode(SYSCTL_HANDLER_ARGS) if (error != 0) goto drop; - counter_u64_add(recycles_count, 1); vgone(vp); VOP_UNLOCK(vp); drop: @@ -774,8 +775,6 @@ vntblinit(void *dummy __unused) uma_prealloc(buf_trie_zone, nbuf); vnodes_created = counter_u64_alloc(M_WAITOK); - recycles_count = counter_u64_alloc(M_WAITOK); - recycles_free_count = counter_u64_alloc(M_WAITOK); direct_recycles_free_count = counter_u64_alloc(M_WAITOK); vnode_skipped_requeues = counter_u64_alloc(M_WAITOK); @@ -1282,7 +1281,7 @@ restart: vn_finished_write(mp); goto next_iter_unlocked; } - counter_u64_add(recycles_count, 1); + recycles_count++; vgonel(vp); VOP_UNLOCK(vp); vdropl_recycle(vp); @@ -1911,7 +1910,7 @@ vtryrecycle(struct vnode *vp, bool isvnlru) } if (!VN_IS_DOOMED(vp)) { if (isvnlru) - counter_u64_add(recycles_free_count, 1); + recycles_free_count++; else counter_u64_add(direct_recycles_free_count, 1); vgonel(vp); From nobody Sat Oct 14 01:09:01 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S6ldB520tz4x49K; Sat, 14 Oct 2023 01:09: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 4S6ldB0gcZz3Y96; Sat, 14 Oct 2023 01:09:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245742; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Xby+U2TzZ4S5HizUWUHgrlCZBbOWvde/dJropzJpPmg=; b=iyfpHzGhwRBkLImynRg5elGo86664nKprgVxl9gDNaIrRV5gCdPAJ8u1cnwp3DdiOrKG+v AJ5LAGmUAUFnRXgG038NakRgCJwq+jW1RqrLmuobD6EDxz6khsu36OF35wOrDF9hknkkFR xBSEMV6b4i2DwPeVbsBfmvFNhQB1zoBVu5Rb79ynXNIiOjche4TGT24PB5R4QCIOCxt9+E spiW0EJ2k/2ec+xDLhutsVHLr8fDny1Xe/3JT1ictRyq34aY3Iv8zczQG6STpibGFpr6ef 95s3GtwRqLHh29IlEYrSNJNV0I2v3gf1Np0xAvY6p6FGj5v/Q87c3Ozm+tGweg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697245742; a=rsa-sha256; cv=none; b=PiTd5Vx0hqIoIZF1HS3REp/5fj4Y8+AA6NmJ4Mc5Fcr/J0D65kwk2DgQL4ZUDxISrs5pyX q0WwVhIt5RxTx1zm/1jwm9jEQ3zbImeyg1B43fvcO2WG5WUFzelBa05eZWZ52YAL0Jq+Cf kYYxjRaNNQdgMOu7VukgfO6Iw6ty71+QjJp0EOTGrH/OLAHgpMZE9lwy7dBgvfwLUSIWKe y30rWhBVS6gYGcBollLapLxHEyw+YgjVi9uB0kDDLQAoj4w5fxPFXgYg8VhFaJ2K/Jn9So Pp+6l6oMAnKly9x1s9UBhNryKyqbd0v0rDqRKHh0EU6CPiz2MuJY32nT9G/alQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697245742; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Xby+U2TzZ4S5HizUWUHgrlCZBbOWvde/dJropzJpPmg=; b=vCqzNxmwbw2h0bt/oDSTt7Qt7fNdILJWzYMsIvb0+/52GTaXsF89wPdOFPaLWtAP/0+v3W qmm/PoIPoLMsQijqLaJesObDFHIAWhd0NiPB3W9ukK2qALeReYUMT6uVmWuD8R9EO6uHVd vgsyQ5bfvqRhbshOp9E0jncnjPXsiOUjtce9YgJtUL63zH9E3Gg4ID/2dwXXfLHFQ9Mxbq DSD855tGVROuo5T5wKko9CwSQThP6rPzNE25i12Gk01sLFnxt/IHA+IPbrWcrd04rMs+Mu Ceg7PWSxUp9AWqqMlxQELtwn7ucmHzUvt4FKlvwgo22qRklplG0D/nlntNOYFQ== 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 4S6ld96vChz19Ht; Sat, 14 Oct 2023 01:09:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39E191fu052818; Sat, 14 Oct 2023 01:09:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39E191Se052815; Sat, 14 Oct 2023 01:09:01 GMT (envelope-from git) Date: Sat, 14 Oct 2023 01:09:01 GMT Message-Id: <202310140109.39E191Se052815@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mateusz Guzik Subject: git: a0c5d373435c - releng/14.0 - vfs cache: Drop known argument of internal cache_recalc_neg_min() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mjg X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: a0c5d373435c88b4076485251b13dcae279f1655 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mjg: URL: https://cgit.FreeBSD.org/src/commit/?id=a0c5d373435c88b4076485251b13dcae279f1655 commit a0c5d373435c88b4076485251b13dcae279f1655 Author: Olivier Certner AuthorDate: 2023-09-22 21:25:41 +0000 Commit: Mateusz Guzik CommitDate: 2023-10-14 01:08:31 +0000 vfs cache: Drop known argument of internal cache_recalc_neg_min() 'ncnegminpct' is to be passed always, so just drop the unneeded parameter. Sponsored by: The FreeBSD Foundation Reviewed by: mjg Differential Revision: https://reviews.freebsd.org/D41763 (cherry picked from commit 02ef039c284b8a7b1ea40f5f9a851a3cb6af5b31) (cherry picked from commit fc424de7e192bb33793ba1f7ed0c75b961809bf4) Approved by: re (gjb) --- sys/kern/vfs_cache.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index bd9eac69bfcb..115d0bdd3993 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -985,10 +985,10 @@ SYSCTL_PROC(_vfs_cache, OID_AUTO, nchstats, CTLTYPE_OPAQUE | CTLFLAG_RD | "VFS cache effectiveness statistics"); static void -cache_recalc_neg_min(u_int val) +cache_recalc_neg_min(void) { - neg_min = (ncsize * val) / 100; + neg_min = (ncsize * ncnegminpct) / 100; } static int @@ -1007,7 +1007,7 @@ sysctl_negminpct(SYSCTL_HANDLER_ARGS) if (val < 0 || val > 99) return (EINVAL); ncnegminpct = val; - cache_recalc_neg_min(val); + cache_recalc_neg_min(); return (0); } @@ -2665,7 +2665,7 @@ nchinit(void *dummy __unused) VFS_SMR_ZONE_SET(cache_zone_large_ts); ncsize = desiredvnodes * ncsizefactor; - cache_recalc_neg_min(ncnegminpct); + cache_recalc_neg_min(); nchashtbl = nchinittbl(desiredvnodes * 2, &nchash); ncbuckethash = cache_roundup_2(mp_ncpus * mp_ncpus) - 1; if (ncbuckethash < 7) /* arbitrarily chosen to avoid having one lock */ @@ -2809,7 +2809,7 @@ cache_changesize(u_long newmaxvnodes) } } ncsize = newncsize; - cache_recalc_neg_min(ncnegminpct); + cache_recalc_neg_min(); cache_changesize_set_new(new_nchashtbl, new_nchash); cache_unlock_all_buckets(); cache_unlock_all_vnodes(); From nobody Sat Oct 14 15:29:00 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S76jS3yNnz4wts9; Sat, 14 Oct 2023 15:29: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 4S76jS3PRLz4FL7; Sat, 14 Oct 2023 15:29:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697297340; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iRv9zyoR6HiAhfuGzBsp7XRwpS97pxAEP0ameDvPhLk=; b=RLtXJDdT/lFkHdI8/rGAVOpuj9xCsQdBHdmCDH+NmrZvabvIH9yexoJIHHmnkymyvtsie8 l7m+B7MBCnmBppz3BnlFtKOo6ZP+oJGj/h4a3/nB5DKDapA+zKuokZpp6kaLwD6AqBSKuQ xOSSXJrLsmIcJ2BbYOpwrlDm1z5NhlFPi/guGRHaXqcD07qiDNexT+fxuJoEacYeFS3p0Z zCaxa6ktXqSJMsoMZnrD2mCh+bQ3IU6zUYMPz0N3DDEyzaTaLhBtfOf/HjJzydFXyS3nH4 94pUgOUGOotnOL++Kr34W6Y/3CHH8iJqsKwvU/zC+EwLVVrTEMVbO2X3RKjpoA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697297340; a=rsa-sha256; cv=none; b=fNAMKmqHY/6NyBk3IEPpUQf+MZ0QdY7LdL40x1cluIAoxBNAlAQA3GiKvbaFC5s8VWY5jY vH0OQc3XOIYwpgc5BMC1FVv9K40VHtmE5mLSVDDt4Hx0GLTQWOUcJUwNwy+glidhhnuKzQ kZJhCr8Z8BEz3Fqj2VJaDtk5n67MiytqFeJe7RDJENtmCKS8zarl82IncMv/YIdXaAhiYk 3lLqEHlPXO7/cBpdBZSceymV0SxaOsyzdNH/X9UIMtlHtEXrsPY0PmM6UnSgydyYMm1Nt0 hU9Cp1PX3Vkaf10raLUD0m0maWwmos/QYSG5LbSPGaz5G7mlX0yrfAvbtMCHtQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697297340; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iRv9zyoR6HiAhfuGzBsp7XRwpS97pxAEP0ameDvPhLk=; b=UNIkEquxnYg1S0mIR29j7u/wSb00hXsb0v1dyFAmyQN65iaUqKUbRy/JPFHidlrFnzVmEl X8Rha9UemP+lea9oK2jEsl+E0Rz67n4kdUyI2cO7i96XiFBOfltlZQl2yUSAqe7lECcznw jXvt6xLbs8Bmfv9e3En4IDdZdsXn08Ctv03xBYSAp0w7UY7nd3ZPN5CcPdEPh+TYPRtoYB 2kl9Tj/6xEz01Jo8GMoCFjm9LMGXZlXR7lZiHS7VzjSHw9ozwaLjHnDsJbCV5kgi6p3fz4 aUOe7wOC8+Xq+bXN6Lpec8lV5Eb3+NoTU/q/xuWh6sCWvyzfJorML2hxOqX/kg== 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 4S76jS2Sf4zbnW; Sat, 14 Oct 2023 15:29:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39EFT0ut080159; Sat, 14 Oct 2023 15:29:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39EFT05a080156; Sat, 14 Oct 2023 15:29:00 GMT (envelope-from git) Date: Sat, 14 Oct 2023 15:29:00 GMT Message-Id: <202310141529.39EFT05a080156@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 1b934004c04c - stable/13 - mrsas: Fix callout locking in mrsas_complete_cmd() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 1b934004c04c64e96ed08b1a0c560225def21d94 Auto-Submitted: auto-generated The branch stable/13 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=1b934004c04c64e96ed08b1a0c560225def21d94 commit 1b934004c04c64e96ed08b1a0c560225def21d94 Author: Mark Johnston AuthorDate: 2023-10-07 00:31:03 +0000 Commit: Mark Johnston CommitDate: 2023-10-14 15:28:48 +0000 mrsas: Fix callout locking in mrsas_complete_cmd() callout_stop() requires the associated lock to be held. This is a bit hacky, but I believe it's safe since the subsequent mrsas_cmd_done() call will also acquire the SIM lock to stop a different callout. PR: 265484 Reviewed by: imp Tested by: Jérémie Jourdin MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D39559 (cherry picked from commit 4640df1b0a49697840b81f6bcd269a483514c6aa) --- sys/dev/mrsas/mrsas.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/dev/mrsas/mrsas.c b/sys/dev/mrsas/mrsas.c index 908cb19aaf3f..9689dbec4417 100644 --- a/sys/dev/mrsas/mrsas.c +++ b/sys/dev/mrsas/mrsas.c @@ -1753,11 +1753,13 @@ mrsas_complete_cmd(struct mrsas_softc *sc, u_int32_t MSIxIndex) data_length = r1_cmd->io_request->DataLength; sense = r1_cmd->sense; } + mtx_lock(&sc->sim_lock); r1_cmd->ccb_ptr = NULL; if (r1_cmd->callout_owner) { callout_stop(&r1_cmd->cm_callout); r1_cmd->callout_owner = false; } + mtx_unlock(&sc->sim_lock); mrsas_release_mpt_cmd(r1_cmd); mrsas_atomic_dec(&sc->fw_outstanding); mrsas_map_mpt_cmd_status(cmd_mpt, cmd_mpt->ccb_ptr, status, From nobody Sat Oct 14 15:29:21 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S76js4TWFz4wv65; Sat, 14 Oct 2023 15:29: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 4S76js3z2Jz4Frr; Sat, 14 Oct 2023 15:29:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697297361; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=19ppHn09ObctkRyIRGSjB7BQkm9s6iNjB8FP/+0h9NU=; b=tbS1Huyl4WLAM3AlWVK9q7sBegBGSaJrS0mganQ4tTFrxIj06J3h1XBm7Ozw20aUeUcbdi sqb4Y/DvRwTHEek+Jo6ZvVeyZTY9tIfz6fcrZCpbYyz05PW7aoBc0NCu4OvjYoilC5/wyB F0UimP4mVFeY6riQK5LpOvNNVdk/qXjHNZaEfUg/qo27xk+e5VJznxS9RV2VhN3680H8W/ lOwRI1362QQWqA2Vdy75yL2cZgD6KJ3TvCjpAVZTkTcSfgygSVObsfkub+dZB4RiK5clSN mu8iDKLzkQynDmRMZAAZllIUJeXKxLOmiUt3qLc6UzFgLA+xGAUhfceQHwIsRg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697297361; a=rsa-sha256; cv=none; b=jCnXJueaCrgx1QhpmlpBU0rY0F29DlZ9z3EloyyisWnL92c6Ok/hSwQYxx9usfQa5R4ps6 tWS2zN6OUihhqb4omBrRVdfQimIRZNA9i9BeWflYCe/AHd2FA6Zu8b6UvByqSFa9W/42a+ YH4wxHWsNvMiToV+MeAk2yMkD9oz/s7QNHngg4JTj9bqoLSzbJY0dmaI9VcNeAWetYSf/5 41qKzkgwZw8+KbCLeZF8DsToFbFhbceGRqeMEqhLtHHHlPi5TYWrCEi7CCoUDbcL3WveIX 3hSGVm0sENpIs6M9uKPHET4bJovxEvYdjoYWOnjQnmx5AuNiDu/wD8pwMj0Jfw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697297361; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=19ppHn09ObctkRyIRGSjB7BQkm9s6iNjB8FP/+0h9NU=; b=q/SaxUtpuS48futp66IazZqH+orlYYRseTa2sEUTO/tr080yuJHGMpEGDE/SjcJ7eh0P/p CPlQ5UPNVAfEO10LhH1PqJPwJSfpdqfisOu6xz3cT4JPLWFSeDzFAMf/7qz01jECbTMF5r elBDBonM8AMNJFdprao1sat1tTxRyiijHurvZP+TsXT1vq0dUm8ZCcexvpyY4fV2PwvfJl BuY7THuQOTz1iTUvIl1WD0yU6whAwHq7wU4OZAnnkUMtsri4T08KAWDS5BTTxsOzi1UJWH OSR1GunQfCkWQMqUvzSvEj7tVHeBao6kdCKA2r0h7g4eJthi5OjM/N7j5apDgw== 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 4S76js325czc4n; Sat, 14 Oct 2023 15:29:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39EFTLIa080340; Sat, 14 Oct 2023 15:29:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39EFTLR4080337; Sat, 14 Oct 2023 15:29:21 GMT (envelope-from git) Date: Sat, 14 Oct 2023 15:29:21 GMT Message-Id: <202310141529.39EFTLR4080337@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: 29de7af6ee47 - stable/14 - mrsas: Fix callout locking in mrsas_complete_cmd() List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 29de7af6ee47a3a251763e4220203a0d960ea532 Auto-Submitted: auto-generated The branch stable/14 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=29de7af6ee47a3a251763e4220203a0d960ea532 commit 29de7af6ee47a3a251763e4220203a0d960ea532 Author: Mark Johnston AuthorDate: 2023-10-07 00:31:03 +0000 Commit: Mark Johnston CommitDate: 2023-10-14 15:29:11 +0000 mrsas: Fix callout locking in mrsas_complete_cmd() callout_stop() requires the associated lock to be held. This is a bit hacky, but I believe it's safe since the subsequent mrsas_cmd_done() call will also acquire the SIM lock to stop a different callout. PR: 265484 Reviewed by: imp Tested by: Jérémie Jourdin MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D39559 (cherry picked from commit 4640df1b0a49697840b81f6bcd269a483514c6aa) --- sys/dev/mrsas/mrsas.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/dev/mrsas/mrsas.c b/sys/dev/mrsas/mrsas.c index 1241f44761c4..e362d4b455fc 100644 --- a/sys/dev/mrsas/mrsas.c +++ b/sys/dev/mrsas/mrsas.c @@ -1732,11 +1732,13 @@ mrsas_complete_cmd(struct mrsas_softc *sc, u_int32_t MSIxIndex) data_length = r1_cmd->io_request->DataLength; sense = r1_cmd->sense; } + mtx_lock(&sc->sim_lock); r1_cmd->ccb_ptr = NULL; if (r1_cmd->callout_owner) { callout_stop(&r1_cmd->cm_callout); r1_cmd->callout_owner = false; } + mtx_unlock(&sc->sim_lock); mrsas_release_mpt_cmd(r1_cmd); mrsas_atomic_dec(&sc->fw_outstanding); mrsas_map_mpt_cmd_status(cmd_mpt, cmd_mpt->ccb_ptr, status, From nobody Sat Oct 14 16:15:52 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S77lX5Jx7z4wxgv; Sat, 14 Oct 2023 16:15: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 4S77lX4mjMz4K28; Sat, 14 Oct 2023 16:15:52 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697300152; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yJWUBAuBd8v3QfApKFY/+hWZ2qj7Xy+u5L7YmJtw8+0=; b=GFSPJ8oJ49rbRXrm9GkkI+HDF2vIyu9FwaqZUihSkDdFN3n/UXbKbgU0sJk0jnJSy88tpb Q1a0QmsRMamkV7398Rpjg3OR/yyWB2URlaQfXg/n9MkGVAaOesGrhPZPP26eWPvuSyixti aaj7vYAc5EWng6+xpL+tKD/koU2Fk+Y2xUkpHMAqBYBRpp3fBN9q56ZTt+xTIryKOTVPGO q/E04HonQWqmCmGFKFfTRkqxNpEtZUb/Vg7gNTDdyq8QDjMdm52taGeWkaDAnTcxxtXPsz uUNLsSdbfOxAA+/wBVUZ1OESThKt522wVCvzjEOWnMJw3ZpIaI61WDu9HZx4hA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697300152; a=rsa-sha256; cv=none; b=r2lOUfdn8W7vIFENAY0Fiu0j7fR78AbJtOZj8+GfRUbJR0KpU94w4dIJQK1HZP259Lta8H 60pgE3AEGzVI12FUFX94276yfbDPesxGD4NEEK8cuoa1Ym+Q4wmmqEz1/EEJcLATksuBDh /Ix7zH1bnpiS4YOCmesIIurIGd0NiUjLggPNcbGBrRh5AcX5uSs4U9YnpmLH6jJLv2hzSk Zdwe6xe4r6uCgVbhTOlvOge12+vDtTZsjZxbbhDPnWpCx4K9HGe3YiyiP1U/n7VuCH9Vmn 55YoC7mFrE0vjTrRFgKetNTzpuXiNCqKt0vFURJLPa2lnmlzkBzvdKqrpU+eWA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697300152; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yJWUBAuBd8v3QfApKFY/+hWZ2qj7Xy+u5L7YmJtw8+0=; b=JDztFS0B0F3UL5kFewcPLIOWX45pRnRN4YRr+dDEsi2xyDSo5Lv2waRc8hiK7P8qnKnqdK EP2stjuBz6POTve6XNMGQkEoRjsaEm2rWxue2iigC1sxtTOiX39p+Cmtnqf95qx9xp4V0x UGRxOgYYUM96bdLrd9EbMAaCT8QqDgDusN9FVEr4dhL6jczgcTr2rDnr9+OYgU0T8dpZ1r vIX/onJr6GiUN5BHLQ15myhvfwGT9dv3jxQDRpzrzadbKBoQfMx0oFiamNEHnQ2a9Ee/vs UuDIq5dB0xAXPW7rX8FzU8Bvb+saKsFUOeMg6FdBXRzZVso9LgQzi+xjFzHWrA== 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 4S77lX3nJdzdB9; Sat, 14 Oct 2023 16:15:52 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39EGFqAA063605; Sat, 14 Oct 2023 16:15:52 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39EGFqX8063602; Sat, 14 Oct 2023 16:15:52 GMT (envelope-from git) Date: Sat, 14 Oct 2023 16:15:52 GMT Message-Id: <202310141615.39EGFqX8063602@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: b82c5a3429bb - releng/14.0 - axge: Add support for AX88179A List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: markj X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: b82c5a3429bbaf94b35c6181d54b0b021a8b8724 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=b82c5a3429bbaf94b35c6181d54b0b021a8b8724 commit b82c5a3429bbaf94b35c6181d54b0b021a8b8724 Author: Damien Broka AuthorDate: 2023-09-19 16:26:06 +0000 Commit: Mark Johnston CommitDate: 2023-10-14 16:15:28 +0000 axge: Add support for AX88179A The AX88179A has two firmware modes, one of which is backward compatible with existing AX88178A/179 driver. The active firmware mode can be controlled through a register. Update axge(4) man page to mention 179A support and ensure that, when bound to a AX88179A, the driver activates the compatible firmware mode. Approved by: re (gjb) Reviewed by: markj Pull Request: https://github.com/freebsd/freebsd-src/pull/854 MFC after: 1 week (cherry picked from commit 6962da914dd511349b219241e92b32329be76fc6) (cherry picked from commit b973cdbb20c0d281b226c081d3f2f79888373ba6) --- share/man/man4/axge.4 | 12 ++++++------ sys/dev/usb/net/if_axge.c | 39 +++++++++++++++++++++++++++++++-------- sys/dev/usb/net/if_axgereg.h | 7 +++++++ 3 files changed, 44 insertions(+), 14 deletions(-) diff --git a/share/man/man4/axge.4 b/share/man/man4/axge.4 index d42a1a233c59..9ca268d6ff83 100644 --- a/share/man/man4/axge.4 +++ b/share/man/man4/axge.4 @@ -28,12 +28,12 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd November 24, 2015 +.Dd October 4, 2023 .Dt AXGE 4 .Os .Sh NAME .Nm axge -.Nd "ASIX Electronics AX88178A/AX88179 USB Gigabit Ethernet driver" +.Nd "ASIX Electronics AX88178A/179/179A USB Gigabit Ethernet driver" .Sh SYNOPSIS To compile this driver into the kernel, place the following lines in your @@ -59,13 +59,13 @@ if_axge_load="YES" The .Nm driver provides support for USB Gigabit Ethernet adapters based on the ASIX -Electronics AX88179 USB 3.0 and AX88178A USB 2.0 chipsets. +Electronics AX88179/AX88179A USB 3.0 and AX88178A USB 2.0 chipsets. .Pp -The AX88179 and AX88178A contain a 10/100/1000 Ethernet MAC with a GMII -interface for interfacing with the Gigabit Ethernet PHY. +The AX88179, AX88179A and AX88178A contain a 10/100/1000 Ethernet MAC with a +GMII interface for interfacing with the Gigabit Ethernet PHY. .Pp These devices will operate with both USB 1.x and USB 2.0 controllers, and the -AX88179 will operate with USB 3.0 controllers. +AX88179/AX88179A will operate with USB 3.0 controllers. Packets are received and transmitted over separate USB bulk transfer endpoints. .Pp The diff --git a/sys/dev/usb/net/if_axge.c b/sys/dev/usb/net/if_axge.c index a3b459a553e0..3633e7b4c50c 100644 --- a/sys/dev/usb/net/if_axge.c +++ b/sys/dev/usb/net/if_axge.c @@ -28,7 +28,8 @@ #include /* - * ASIX Electronics AX88178A/AX88179 USB 2.0/3.0 gigabit ethernet driver. + * ASIX Electronics AX88178A/AX88179/AX88179A USB 2.0/3.0 gigabit ethernet + * driver. */ #include @@ -70,13 +71,15 @@ */ static const STRUCT_USB_HOST_ID axge_devs[] = { -#define AXGE_DEV(v,p) { USB_VP(USB_VENDOR_##v, USB_PRODUCT_##v##_##p) } - AXGE_DEV(ASIX, AX88178A), - AXGE_DEV(ASIX, AX88179), - AXGE_DEV(BELKIN, B2B128), - AXGE_DEV(DLINK, DUB1312), - AXGE_DEV(LENOVO, GIGALAN), - AXGE_DEV(SITECOMEU, LN032), +#define AXGE_DEV(v,p,i,...) \ + { USB_VPI(USB_VENDOR_##v, USB_PRODUCT_##v##_##p, i), __VA_ARGS__ } + AXGE_DEV(ASIX, AX88178A, AXGE_FLAG_178A), + AXGE_DEV(ASIX, AX88179, AXGE_FLAG_179, USB_DEV_BCD_LTEQ(0x0100)), + AXGE_DEV(ASIX, AX88179, AXGE_FLAG_179A, USB_DEV_BCD_GTEQ(0x0200)), + AXGE_DEV(BELKIN, B2B128, AXGE_FLAG_179), + AXGE_DEV(DLINK, DUB1312, AXGE_FLAG_179), + AXGE_DEV(LENOVO, GIGALAN, AXGE_FLAG_179), + AXGE_DEV(SITECOMEU, LN032, AXGE_FLAG_179), #undef AXGE_DEV }; @@ -410,6 +413,24 @@ axge_chip_init(struct axge_softc *sc) axge_write_cmd_1(sc, AXGE_ACCESS_MAC, AXGE_CLK_SELECT, AXGE_CLK_SELECT_ACS | AXGE_CLK_SELECT_BCS); uether_pause(&sc->sc_ue, hz / 10); + + if ((sc->sc_flags & AXGE_FLAG_179A) != 0) { + /* + * 179A chip has two firmware modes that each use different + * transfer layouts for Ethernet over USB. The newer fw mode has + * larger rx packet headers which seem to + * accomodate for ethernet frames up to 9K length and a VLAN + * field for hardware tagging, but is not backward compatible + * with 178A/179 bulk transfer code due to the change in size + * and field alignments. The other fw mode uses the same packet + * headers as the older 178A/179 chips, which this driver uses. + * + * As we do not currently have VLAN hw tagging or jumbo support + * in this driver anyway, we're ok forcing 179A into its compat + * mode by default. + */ + axge_write_cmd_1(sc, AXGE_FW_MODE, AXGE_FW_MODE_178A179, 0); + } } static void @@ -551,6 +572,8 @@ axge_attach(device_t dev) device_set_usb_desc(dev); mtx_init(&sc->sc_mtx, device_get_nameunit(dev), NULL, MTX_DEF); + sc->sc_flags = USB_GET_DRIVER_INFO(uaa); + iface_index = AXGE_IFACE_IDX; error = usbd_transfer_setup(uaa->device, &iface_index, sc->sc_xfer, axge_config, AXGE_N_TRANSFER, sc, &sc->sc_mtx); diff --git a/sys/dev/usb/net/if_axgereg.h b/sys/dev/usb/net/if_axgereg.h index ea7a2c4a98b8..87e662b6cbc1 100644 --- a/sys/dev/usb/net/if_axgereg.h +++ b/sys/dev/usb/net/if_axgereg.h @@ -32,10 +32,14 @@ #define AXGE_ACCESS_EEPROM 0x04 #define AXGE_ACCESS_EFUSE 0x05 #define AXGE_RELOAD_EEPROM_EFUSE 0x06 +#define AXGE_FW_MODE 0x08 #define AXGE_WRITE_EFUSE_EN 0x09 #define AXGE_WRITE_EFUSE_DIS 0x0A #define AXGE_ACCESS_MFAB 0x10 +#define AXGE_FW_MODE_178A179 0x0000 +#define AXGE_FW_MODE_179A 0x0001 + /* Physical link status register */ #define AXGE_PLSR 0x02 #define PLSR_USB_FS 0x01 @@ -202,6 +206,9 @@ struct axge_softc { int sc_flags; #define AXGE_FLAG_LINK 0x0001 /* got a link */ +#define AXGE_FLAG_178A 0x1000 /* AX88178A */ +#define AXGE_FLAG_179 0x2000 /* AX88179 */ +#define AXGE_FLAG_179A 0x4000 /* AX88179A */ }; #define AXGE_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) From nobody Sat Oct 14 17:57:43 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S7B140nSjz4x4RB; Sat, 14 Oct 2023 17:57: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 4S7B1372gwz4TRb; Sat, 14 Oct 2023 17:57:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697306264; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2XYJx6sFeXmcQEOjVC3jNpcx5uaJjZK5lV0UwiHzseA=; b=et/yX9MWSulvUuwQnrw1WCUbFJHmouL8JkXwnYYsq2/t0x8bJ/9ehg+1EzvoCHkvKp0VXR qrZdUj3clbpGGiEPYJ5WkYCCnCjXds1n99qIXXmHhO85dtxSHcLKykY3c5Bqz9nce/PC1h t+gJ1mMVMz4csTvi1NWvOdqJrpDAlGx7rrgSsU21M8dSAkkItLfCFa6mJe1PprJiIBFEDx xlZ2x8loeuw4FXE9XWHYwjs7NVFJaArm0N96r6NaPuAtq/rZdEfEEfgLBKSZP9EU3mYaTY VcBWwxY+/hJH1/pFjMdwcspooD/2JeUCkGvkBUPz6CoKDYfm4Jhgli0rRYH0rA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697306264; a=rsa-sha256; cv=none; b=FsUeDrZC/PvhcjdgedJJNtKJ0lQYVVIzyMzsGRAwf216CUnRLmuswda/bRDtr6hFtbO95O c4okK4JYwYm0FqtAJnezy1Z9iKvqBPmy+VOR9RnMCUQlWG3guverrv0Hoa0L2soMB1QzaX fupYtXDmpC/YOjepyot/eTwyZyzaN/5eN1EyDDRBpytDmKZpARq31krMHoVJ3HtXXQfy+I +y+pCN0cuW6IIEKrdNfap2Yvez2pw/WYJE6dm8A4SJCxzNnKFuofAe0t0+e2eNa14S4cTm 0gTpd7SaOqEerMWxcU9XQwnXWcm5sfdEa0DfS+3UsVU9rXQoxQQAacFt47HZ4g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697306264; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2XYJx6sFeXmcQEOjVC3jNpcx5uaJjZK5lV0UwiHzseA=; b=cwkxy2dnR0Ve1ePAzbc0xqezall25pcE8z5EdvYMSxkhwbkB/2mEpELdS1hEL4ciIz+Dn1 7BXjBierEx+vZfWdDOWqbmaLUFRopnajYSxDPuc8JDnUm/O1qPHnRXPti+WqdR9PJMq7rz JERMGRdnJkNpodJe41Ka5ygc3YdiF/sUWbXl4fNnS5EuoCTZwKtondD5maylgBFN6YUxDq G6Witl3vZuaws/lagYbXL+k8stQ9j/UyZSCq2EO7W5Elz/m6XffOn9B0E5idmczPEgvTYQ M4yeG6H/B8GqCHpDso3zyLbO6S2aYhUkAzbrw2r3l80ARmCtWcbTWMhibTot9A== 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 4S7B1361WjzgVN; Sat, 14 Oct 2023 17:57:43 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39EHvhhc030120; Sat, 14 Oct 2023 17:57:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39EHvheG030117; Sat, 14 Oct 2023 17:57:43 GMT (envelope-from git) Date: Sat, 14 Oct 2023 17:57:43 GMT Message-Id: <202310141757.39EHvheG030117@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Alan Somers Subject: git: 8fca98f6881f - stable/14 - fusefs: sanitize FUSE_READLINK results for embedded NULs List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: asomers X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 8fca98f6881fdd68a786f4366c345159ab0df408 Auto-Submitted: auto-generated The branch stable/14 has been updated by asomers: URL: https://cgit.FreeBSD.org/src/commit/?id=8fca98f6881fdd68a786f4366c345159ab0df408 commit 8fca98f6881fdd68a786f4366c345159ab0df408 Author: Alan Somers AuthorDate: 2023-10-04 18:48:01 +0000 Commit: Alan Somers CommitDate: 2023-10-14 17:57:09 +0000 fusefs: sanitize FUSE_READLINK results for embedded NULs If VOP_READLINK returns a path that contains a NUL, it will trigger an assertion in vfs_lookup. Sanitize such paths in fusefs, rejecting any and warning the user about the misbehaving server. PR: 274268 Sponsored by: Axcient Reviewed by: mjg, markj Differential Revision: https://reviews.freebsd.org/D42081 (cherry picked from commit 662ec2f781521c36b76af748d74bb0a3c2e27a76) --- sys/fs/fuse/fuse_ipc.h | 1 + sys/fs/fuse/fuse_vnops.c | 7 +++++++ tests/sys/fs/fusefs/readlink.cc | 39 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 47 insertions(+) diff --git a/sys/fs/fuse/fuse_ipc.h b/sys/fs/fuse/fuse_ipc.h index 27f3662741c5..0ec556138be0 100644 --- a/sys/fs/fuse/fuse_ipc.h +++ b/sys/fs/fuse/fuse_ipc.h @@ -239,6 +239,7 @@ struct fuse_data { #define FSESS_WARN_CACHE_INCOHERENT 0x200000 /* Read cache incoherent */ #define FSESS_WARN_WB_CACHE_INCOHERENT 0x400000 /* WB cache incoherent */ #define FSESS_WARN_ILLEGAL_INODE 0x800000 /* Illegal inode for new file */ +#define FSESS_WARN_READLINK_EMBEDDED_NUL 0x1000000 /* corrupt READLINK output */ #define FSESS_MNTOPTS_MASK ( \ FSESS_DAEMON_CAN_SPY | FSESS_PUSH_SYMLINKS_IN | \ FSESS_DEFAULT_PERMISSIONS | FSESS_INTR) diff --git a/sys/fs/fuse/fuse_vnops.c b/sys/fs/fuse/fuse_vnops.c index 21ee378b24c6..3249e5988801 100644 --- a/sys/fs/fuse/fuse_vnops.c +++ b/sys/fs/fuse/fuse_vnops.c @@ -2007,6 +2007,13 @@ fuse_vnop_readlink(struct vop_readlink_args *ap) if (err) { goto out; } + if (strnlen(fdi.answ, fdi.iosize) + 1 < fdi.iosize) { + struct fuse_data *data = fuse_get_mpdata(vnode_mount(vp)); + fuse_warn(data, FSESS_WARN_READLINK_EMBEDDED_NUL, + "Returned an embedded NUL from FUSE_READLINK."); + err = EIO; + goto out; + } if (((char *)fdi.answ)[0] == '/' && fuse_get_mpdata(vnode_mount(vp))->dataflags & FSESS_PUSH_SYMLINKS_IN) { char *mpth = vnode_mount(vp)->mnt_stat.f_mntonname; diff --git a/tests/sys/fs/fusefs/readlink.cc b/tests/sys/fs/fusefs/readlink.cc index ff9aa08f6fae..30815f2cd4b6 100644 --- a/tests/sys/fs/fusefs/readlink.cc +++ b/tests/sys/fs/fusefs/readlink.cc @@ -79,6 +79,45 @@ TEST_F(Readlink, eloop) EXPECT_EQ(ELOOP, errno); } +/* + * If a malicious or buggy server returns a NUL in the FUSE_READLINK result, it + * should be handled gracefully. + * https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=274268 + */ +TEST_F(Readlink, embedded_nul) +{ + const char FULLPATH[] = "mountpoint/src"; + const char RELPATH[] = "src"; + const char dst[] = "dst\0stuff"; + char buf[80]; + const uint64_t ino = 42; + + EXPECT_LOOKUP(FUSE_ROOT_ID, RELPATH) + .WillOnce(Invoke(ReturnImmediate([=](auto in __unused, auto& out) { + SET_OUT_HEADER_LEN(out, entry); + out.body.entry.attr.mode = S_IFLNK | 0777; + out.body.entry.nodeid = ino; + out.body.entry.attr_valid = UINT64_MAX; + out.body.entry.entry_valid = UINT64_MAX; + }))); + + EXPECT_CALL(*m_mock, process( + ResultOf([=](auto in) { + return (in.header.opcode == FUSE_READLINK && + in.header.nodeid == ino); + }, Eq(true)), + _) + ).WillRepeatedly(Invoke(ReturnImmediate([=](auto in __unused, auto& out) { + memcpy(out.body.str, dst, sizeof(dst)); + out.header.len = sizeof(out.header) + sizeof(dst) + 1; + }))); + + EXPECT_EQ(-1, readlink(FULLPATH, buf, sizeof(buf))); + EXPECT_EQ(EIO, errno); + EXPECT_EQ(-1, access(FULLPATH, R_OK)); + EXPECT_EQ(EIO, errno); +} + TEST_F(Readlink, ok) { const char FULLPATH[] = "mountpoint/src"; From nobody Sat Oct 14 18:30:34 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S7Bky5bkGz4x6HJ; Sat, 14 Oct 2023 18:30: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 4S7Bky5Nq5z4XZP; Sat, 14 Oct 2023 18:30:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697308234; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AS2mY7dC9L4xmQo0g/HiqYJUcCQSUo+WUeXvTyvyKF4=; b=r7dCKu2JdAKl9nTHbUP/62Q2W8ZcJMrPmX13IWZcBsX1sKOUGQTLKImNNE7b9Ho23yKxML QnmMQXmeg3rEwi2dKgJ3DdGf0kHosHXBZATP72QgOEwRyr5oD4DkA6+WNSTPfI75WJeke6 D9rOnt9PEhhnR3WGLSeio4gOV0IluwZaEUK9UKREHwVQBbnt7ptyEKhsyE2a9UBT8Tn1HI i04coiPVHpzu3kRxxomSZDhdywYjUNrPPpPrWeauOFVTi8h0CEIBb+a74bNlokTaxfiDYU OFngUa/Pk758eL72vgJD7S16HmN4In3GYVsU1hbSCArP4mV9N/dt57JcTG+aDA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697308234; a=rsa-sha256; cv=none; b=vShk4y8ejH8+Jla2vEfML6yzT82NoThljqk3BNZ9bGUeV6IfPyPpXQ08tvfSTiTGbTa70X 3VD4i5Jg0vqSI3IF0wth2XWlm+MprjGeij80AAAS1iUskVS8qg9b502qN5MDqegYiksclD SowGePsHQzfUaddSDKVEdocxJvT6Pz/CNCs/ZmX+2w60qMSZ75mtqlBSip+v1Ef6m4EpHw csU0ZlTQw9mJHlNYzubgrNWzPdaLp0VhoSR2zkCzBdSlRh/P/vRpk5UWvM9KZHEB4ACwei 5OcusC/3ll8vW9fURixbpyksUxl7bcn6X1cqeAsna8mWPD9IQC0+UT/L+2wnhg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697308234; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AS2mY7dC9L4xmQo0g/HiqYJUcCQSUo+WUeXvTyvyKF4=; b=RwzyTux2IoG8u9IwtQRg2VxWVHYClbzzoprMI9epguolVnN0nSrj+rVhHuzJzKpiFQdkCx PsoKHdxmbg1tdLiTFj2HSyoYNHbJYeJA5u4nAEmSkGa6RlRPE3Hr2Ky0s0/rBmaPq2ipSp BhqkPWPnRY/c4doyioSEdj/FhuOuqlULxZQJIN6vSRDe3oHk0wPAOZakhDT4HDmkvNtcbJ H3ThoQMZo72xBAGrIW6CIuNSS3psjTfrDDigZC04osKcwAJdNtzL0j1shq5X84P2jYgV9k S3ZCehnwgYkUl+BXB0aSUWv1wzRq1YTN4hOasrp+ZtgbjUIdBID7GIsKCGQfHQ== 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 4S7Bky4Rk1zhRp; Sat, 14 Oct 2023 18:30:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39EIUY8n089517; Sat, 14 Oct 2023 18:30:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39EIUY9Z089513; Sat, 14 Oct 2023 18:30:34 GMT (envelope-from git) Date: Sat, 14 Oct 2023 18:30:34 GMT Message-Id: <202310141830.39EIUY9Z089513@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Martin Matuska Subject: git: b2d6bc7597eb - stable/14 - zfs: merge openzfs/zfs@95785196f (zfs-2.2-release) into stable/14 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b2d6bc7597ebff8201c354a983a33149d1e1ef97 Auto-Submitted: auto-generated The branch stable/14 has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=b2d6bc7597ebff8201c354a983a33149d1e1ef97 commit b2d6bc7597ebff8201c354a983a33149d1e1ef97 Merge: 8fca98f6881f 95785196f26e Author: Martin Matuska AuthorDate: 2023-10-14 18:24:39 +0000 Commit: Martin Matuska CommitDate: 2023-10-14 18:29:47 +0000 zfs: merge openzfs/zfs@95785196f (zfs-2.2-release) into stable/14 OpenZFS release 2.2.0 This commit adjusts the version numbers only. Obtained from: OpenZFS OpenZFS commit: 95785196f26e92d82cf4445654ba84e4a9671c57 OpenZFS tag: zfs-2.2.0 sys/contrib/openzfs/META | 2 +- sys/modules/zfs/zfs_config.h | 4 ++-- sys/modules/zfs/zfs_gitrev.h | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --cc sys/modules/zfs/zfs_config.h index b62dbf112b31,000000000000..9c423a3e3e36 mode 100644,000000..100644 --- a/sys/modules/zfs/zfs_config.h +++ b/sys/modules/zfs/zfs_config.h @@@ -1,1134 -1,0 +1,1134 @@@ +/* + */ + +/* zfs_config.h. Generated from zfs_config.h.in by configure. */ +/* zfs_config.h.in. Generated from configure.ac by autoheader. */ + +/* Define to 1 if translation of program messages to the user's native + language is requested. */ +/* #undef ENABLE_NLS */ + +/* bio_end_io_t wants 1 arg */ +/* #undef HAVE_1ARG_BIO_END_IO_T */ + +/* lookup_bdev() wants 1 arg */ +/* #undef HAVE_1ARG_LOOKUP_BDEV */ + +/* submit_bio() wants 1 arg */ +/* #undef HAVE_1ARG_SUBMIT_BIO */ + +/* bdi_setup_and_register() wants 2 args */ +/* #undef HAVE_2ARGS_BDI_SETUP_AND_REGISTER */ + +/* vfs_getattr wants 2 args */ +/* #undef HAVE_2ARGS_VFS_GETATTR */ + +/* zlib_deflate_workspacesize() wants 2 args */ +/* #undef HAVE_2ARGS_ZLIB_DEFLATE_WORKSPACESIZE */ + +/* bdi_setup_and_register() wants 3 args */ +/* #undef HAVE_3ARGS_BDI_SETUP_AND_REGISTER */ + +/* vfs_getattr wants 3 args */ +/* #undef HAVE_3ARGS_VFS_GETATTR */ + +/* vfs_getattr wants 4 args */ +/* #undef HAVE_4ARGS_VFS_GETATTR */ + +/* kernel has access_ok with 'type' parameter */ +/* #undef HAVE_ACCESS_OK_TYPE */ + +/* posix_acl has refcount_t */ +/* #undef HAVE_ACL_REFCOUNT */ + +/* add_disk() returns int */ +/* #undef HAVE_ADD_DISK_RET */ + +/* Define if host toolchain supports AES */ +#define HAVE_AES 1 + +/* Define if you have [rt] */ +#define HAVE_AIO_H 1 + +#ifdef __amd64__ +#ifndef RESCUE +/* Define if host toolchain supports AVX */ +#define HAVE_AVX 1 +#endif + +/* Define if host toolchain supports AVX2 */ +#define HAVE_AVX2 1 + +/* Define if host toolchain supports AVX512BW */ +#define HAVE_AVX512BW 1 + +/* Define if host toolchain supports AVX512CD */ +#define HAVE_AVX512CD 1 + +/* Define if host toolchain supports AVX512DQ */ +#define HAVE_AVX512DQ 1 + +/* Define if host toolchain supports AVX512ER */ +#define HAVE_AVX512ER 1 + +/* Define if host toolchain supports AVX512F */ +#define HAVE_AVX512F 1 + +/* Define if host toolchain supports AVX512IFMA */ +#define HAVE_AVX512IFMA 1 + +/* Define if host toolchain supports AVX512PF */ +#define HAVE_AVX512PF 1 + +/* Define if host toolchain supports AVX512VBMI */ +#define HAVE_AVX512VBMI 1 + +/* Define if host toolchain supports AVX512VL */ +#define HAVE_AVX512VL 1 +#endif + +/* bdevname() is available */ +/* #undef HAVE_BDEVNAME */ + +/* bdev_check_media_change() exists */ +/* #undef HAVE_BDEV_CHECK_MEDIA_CHANGE */ + +/* bdev_*_io_acct() available */ +/* #undef HAVE_BDEV_IO_ACCT_63 */ + +/* bdev_*_io_acct() available */ +/* #undef HAVE_BDEV_IO_ACCT_OLD */ + +/* bdev_kobj() exists */ +/* #undef HAVE_BDEV_KOBJ */ + +/* bdev_max_discard_sectors() is available */ +/* #undef HAVE_BDEV_MAX_DISCARD_SECTORS */ + +/* bdev_max_secure_erase_sectors() is available */ +/* #undef HAVE_BDEV_MAX_SECURE_ERASE_SECTORS */ + +/* block_device_operations->submit_bio() returns void */ +/* #undef HAVE_BDEV_SUBMIT_BIO_RETURNS_VOID */ + +/* bdev_whole() is available */ +/* #undef HAVE_BDEV_WHOLE */ + +/* bio_alloc() takes 4 arguments */ +/* #undef HAVE_BIO_ALLOC_4ARG */ + +/* bio->bi_bdev->bd_disk exists */ +/* #undef HAVE_BIO_BDEV_DISK */ + +/* bio->bi_opf is defined */ +/* #undef HAVE_BIO_BI_OPF */ + +/* bio->bi_status exists */ +/* #undef HAVE_BIO_BI_STATUS */ + +/* bio has bi_iter */ +/* #undef HAVE_BIO_BVEC_ITER */ + +/* bio_*_io_acct() available */ +/* #undef HAVE_BIO_IO_ACCT */ + +/* bio_max_segs() is implemented */ +/* #undef HAVE_BIO_MAX_SEGS */ + +/* bio_set_dev() is available */ +/* #undef HAVE_BIO_SET_DEV */ + +/* bio_set_dev() GPL-only */ +/* #undef HAVE_BIO_SET_DEV_GPL_ONLY */ + +/* bio_set_dev() is a macro */ +/* #undef HAVE_BIO_SET_DEV_MACRO */ + +/* bio_set_op_attrs is available */ +/* #undef HAVE_BIO_SET_OP_ATTRS */ + +/* blkdev_get_by_path() exists and takes 4 args */ +/* #undef HAVE_BLKDEV_GET_BY_PATH_4ARG */ + +/* blkdev_get_by_path() handles ERESTARTSYS */ +/* #undef HAVE_BLKDEV_GET_ERESTARTSYS */ + +/* blkdev_issue_discard() is available */ +/* #undef HAVE_BLKDEV_ISSUE_DISCARD */ + +/* blkdev_issue_secure_erase() is available */ +/* #undef HAVE_BLKDEV_ISSUE_SECURE_ERASE */ + +/* blkdev_put() accepts void* as arg 2 */ +/* #undef HAVE_BLKDEV_PUT_HOLDER */ + +/* blkdev_reread_part() exists */ +/* #undef HAVE_BLKDEV_REREAD_PART */ + +/* blkg_tryget() is available */ +/* #undef HAVE_BLKG_TRYGET */ + +/* blkg_tryget() GPL-only */ +/* #undef HAVE_BLKG_TRYGET_GPL_ONLY */ + +/* blk_alloc_disk() exists */ +/* #undef HAVE_BLK_ALLOC_DISK */ + +/* blk_alloc_queue() expects request function */ +/* #undef HAVE_BLK_ALLOC_QUEUE_REQUEST_FN */ + +/* blk_alloc_queue_rh() expects request function */ +/* #undef HAVE_BLK_ALLOC_QUEUE_REQUEST_FN_RH */ + +/* blk_cleanup_disk() exists */ +/* #undef HAVE_BLK_CLEANUP_DISK */ + +/* blk_mode_t is defined */ +/* #undef HAVE_BLK_MODE_T */ + +/* block multiqueue is available */ +/* #undef HAVE_BLK_MQ */ + +/* blk queue backing_dev_info is dynamic */ +/* #undef HAVE_BLK_QUEUE_BDI_DYNAMIC */ + +/* blk_queue_discard() is available */ +/* #undef HAVE_BLK_QUEUE_DISCARD */ + +/* blk_queue_flag_clear() exists */ +/* #undef HAVE_BLK_QUEUE_FLAG_CLEAR */ + +/* blk_queue_flag_set() exists */ +/* #undef HAVE_BLK_QUEUE_FLAG_SET */ + +/* blk_queue_flush() is available */ +/* #undef HAVE_BLK_QUEUE_FLUSH */ + +/* blk_queue_flush() is GPL-only */ +/* #undef HAVE_BLK_QUEUE_FLUSH_GPL_ONLY */ + +/* blk_queue_secdiscard() is available */ +/* #undef HAVE_BLK_QUEUE_SECDISCARD */ + +/* blk_queue_secure_erase() is available */ +/* #undef HAVE_BLK_QUEUE_SECURE_ERASE */ + +/* blk_queue_update_readahead() exists */ +/* #undef HAVE_BLK_QUEUE_UPDATE_READAHEAD */ + +/* blk_queue_write_cache() exists */ +/* #undef HAVE_BLK_QUEUE_WRITE_CACHE */ + +/* blk_queue_write_cache() is GPL-only */ +/* #undef HAVE_BLK_QUEUE_WRITE_CACHE_GPL_ONLY */ + +/* BLK_STS_RESV_CONFLICT is defined */ +/* #undef HAVE_BLK_STS_RESV_CONFLICT */ + +/* Define if release() in block_device_operations takes 1 arg */ +/* #undef HAVE_BLOCK_DEVICE_OPERATIONS_RELEASE_1ARG */ + +/* Define if revalidate_disk() in block_device_operations */ +/* #undef HAVE_BLOCK_DEVICE_OPERATIONS_REVALIDATE_DISK */ + +/* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the + CoreFoundation framework. */ +/* #undef HAVE_CFLOCALECOPYCURRENT */ + +/* Define to 1 if you have the Mac OS X function + CFLocaleCopyPreferredLanguages in the CoreFoundation framework. */ +/* #undef HAVE_CFLOCALECOPYPREFERREDLANGUAGES */ + +/* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in + the CoreFoundation framework. */ +/* #undef HAVE_CFPREFERENCESCOPYAPPVALUE */ + +/* check_disk_change() exists */ +/* #undef HAVE_CHECK_DISK_CHANGE */ + +/* clear_inode() is available */ +/* #undef HAVE_CLEAR_INODE */ + +/* dentry uses const struct dentry_operations */ +/* #undef HAVE_CONST_DENTRY_OPERATIONS */ + +/* copy_from_iter() is available */ +/* #undef HAVE_COPY_FROM_ITER */ + +/* copy_splice_read exists */ +/* #undef HAVE_COPY_SPLICE_READ */ + +/* copy_to_iter() is available */ +/* #undef HAVE_COPY_TO_ITER */ + +/* cpu_has_feature() is GPL-only */ +/* #undef HAVE_CPU_HAS_FEATURE_GPL_ONLY */ + +/* yes */ +/* #undef HAVE_CPU_HOTPLUG */ + +/* current_time() exists */ +/* #undef HAVE_CURRENT_TIME */ + +/* Define if the GNU dcgettext() function is already present or preinstalled. + */ +/* #undef HAVE_DCGETTEXT */ + +/* DECLARE_EVENT_CLASS() is available */ +/* #undef HAVE_DECLARE_EVENT_CLASS */ + +/* dentry aliases are in d_u member */ +/* #undef HAVE_DENTRY_D_U_ALIASES */ + +/* dequeue_signal() takes 4 arguments */ +/* #undef HAVE_DEQUEUE_SIGNAL_4ARG */ + +/* lookup_bdev() wants dev_t arg */ +/* #undef HAVE_DEVT_LOOKUP_BDEV */ + +/* sops->dirty_inode() wants flags */ +/* #undef HAVE_DIRTY_INODE_WITH_FLAGS */ + +/* disk_check_media_change() exists */ +/* #undef HAVE_DISK_CHECK_MEDIA_CHANGE */ + +/* disk_*_io_acct() available */ +/* #undef HAVE_DISK_IO_ACCT */ + +/* disk_update_readahead() exists */ +/* #undef HAVE_DISK_UPDATE_READAHEAD */ + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* d_make_root() is available */ +/* #undef HAVE_D_MAKE_ROOT */ + +/* d_prune_aliases() is available */ +/* #undef HAVE_D_PRUNE_ALIASES */ + +/* dops->d_revalidate() operation takes nameidata */ +/* #undef HAVE_D_REVALIDATE_NAMEIDATA */ + +/* eops->encode_fh() wants child and parent inodes */ +/* #undef HAVE_ENCODE_FH_WITH_INODE */ + +/* sops->evict_inode() exists */ +/* #undef HAVE_EVICT_INODE */ + +/* FALLOC_FL_ZERO_RANGE is defined */ +/* #undef HAVE_FALLOC_FL_ZERO_RANGE */ + +/* fault_in_iov_iter_readable() is available */ +/* #undef HAVE_FAULT_IN_IOV_ITER_READABLE */ + +/* filemap_range_has_page() is available */ +/* #undef HAVE_FILEMAP_RANGE_HAS_PAGE */ + +/* fops->aio_fsync() exists */ +/* #undef HAVE_FILE_AIO_FSYNC */ + +/* file_dentry() is available */ +/* #undef HAVE_FILE_DENTRY */ + +/* fops->fadvise() exists */ +/* #undef HAVE_FILE_FADVISE */ + +/* file_inode() is available */ +/* #undef HAVE_FILE_INODE */ + +/* flush_dcache_page() is GPL-only */ +/* #undef HAVE_FLUSH_DCACHE_PAGE_GPL_ONLY */ + +/* iops->follow_link() cookie */ +/* #undef HAVE_FOLLOW_LINK_COOKIE */ + +/* iops->follow_link() nameidata */ +/* #undef HAVE_FOLLOW_LINK_NAMEIDATA */ + +/* Define if compiler supports -Wformat-overflow */ +/* #undef HAVE_FORMAT_OVERFLOW */ + +/* fops->fsync() with range */ +/* #undef HAVE_FSYNC_RANGE */ + +/* fops->fsync() without dentry */ +/* #undef HAVE_FSYNC_WITHOUT_DENTRY */ + +/* yes */ +/* #undef HAVE_GENERIC_FADVISE */ + +/* generic_fillattr requires struct mnt_idmap* */ +/* #undef HAVE_GENERIC_FILLATTR_IDMAP */ + +/* generic_fillattr requires struct user_namespace* */ +/* #undef HAVE_GENERIC_FILLATTR_USERNS */ + +/* generic_*_io_acct() 3 arg available */ +/* #undef HAVE_GENERIC_IO_ACCT_3ARG */ + +/* generic_*_io_acct() 4 arg available */ +/* #undef HAVE_GENERIC_IO_ACCT_4ARG */ + +/* generic_readlink is global */ +/* #undef HAVE_GENERIC_READLINK */ + +/* generic_setxattr() exists */ +/* #undef HAVE_GENERIC_SETXATTR */ + +/* generic_write_checks() takes kiocb */ +/* #undef HAVE_GENERIC_WRITE_CHECKS_KIOCB */ + +/* Define if the GNU gettext() function is already present or preinstalled. */ +/* #undef HAVE_GETTEXT */ + +/* iops->get_acl() exists */ +/* #undef HAVE_GET_ACL */ + +/* iops->get_acl() takes rcu */ +/* #undef HAVE_GET_ACL_RCU */ + +/* has iops->get_inode_acl() */ +/* #undef HAVE_GET_INODE_ACL */ + +/* iops->get_link() cookie */ +/* #undef HAVE_GET_LINK_COOKIE */ + +/* iops->get_link() delayed */ +/* #undef HAVE_GET_LINK_DELAYED */ + +/* group_info->gid exists */ +/* #undef HAVE_GROUP_INFO_GID */ + +/* has_capability() is available */ +/* #undef HAVE_HAS_CAPABILITY */ + +/* iattr->ia_vfsuid and iattr->ia_vfsgid exist */ +/* #undef HAVE_IATTR_VFSID */ + +/* Define if you have the iconv() function and it works. */ +#define HAVE_ICONV 1 + +/* iops->getattr() takes struct mnt_idmap* */ +/* #undef HAVE_IDMAP_IOPS_GETATTR */ + +/* iops->setattr() takes struct mnt_idmap* */ +/* #undef HAVE_IDMAP_IOPS_SETATTR */ + +/* APIs for idmapped mount are present */ +/* #undef HAVE_IDMAP_MNT_API */ + +/* Define if compiler supports -Wimplicit-fallthrough */ +/* #undef HAVE_IMPLICIT_FALLTHROUGH */ + +/* Define if compiler supports -Winfinite-recursion */ +/* #undef HAVE_INFINITE_RECURSION */ + +/* yes */ +/* #undef HAVE_INODE_LOCK_SHARED */ + +/* inode_owner_or_capable() exists */ +/* #undef HAVE_INODE_OWNER_OR_CAPABLE */ + +/* inode_owner_or_capable() takes mnt_idmap */ +/* #undef HAVE_INODE_OWNER_OR_CAPABLE_IDMAP */ + +/* inode_owner_or_capable() takes user_ns */ +/* #undef HAVE_INODE_OWNER_OR_CAPABLE_USERNS */ + +/* inode_set_flags() exists */ +/* #undef HAVE_INODE_SET_FLAGS */ + +/* inode_set_iversion() exists */ +/* #undef HAVE_INODE_SET_IVERSION */ + +/* inode->i_*time's are timespec64 */ +/* #undef HAVE_INODE_TIMESPEC64_TIMES */ + +/* timestamp_truncate() exists */ +/* #undef HAVE_INODE_TIMESTAMP_TRUNCATE */ + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* in_compat_syscall() is available */ +/* #undef HAVE_IN_COMPAT_SYSCALL */ + +/* iops->create() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_CREATE_IDMAP */ + +/* iops->create() takes struct user_namespace* */ +/* #undef HAVE_IOPS_CREATE_USERNS */ + +/* iops->mkdir() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_MKDIR_IDMAP */ + +/* iops->mkdir() takes struct user_namespace* */ +/* #undef HAVE_IOPS_MKDIR_USERNS */ + +/* iops->mknod() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_MKNOD_IDMAP */ + +/* iops->mknod() takes struct user_namespace* */ +/* #undef HAVE_IOPS_MKNOD_USERNS */ + +/* iops->permission() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_PERMISSION_IDMAP */ + +/* iops->permission() takes struct user_namespace* */ +/* #undef HAVE_IOPS_PERMISSION_USERNS */ + +/* iops->rename() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_RENAME_IDMAP */ + +/* iops->rename() takes struct user_namespace* */ +/* #undef HAVE_IOPS_RENAME_USERNS */ + +/* iops->setattr() exists */ +/* #undef HAVE_IOPS_SETATTR */ + +/* iops->symlink() takes struct mnt_idmap* */ +/* #undef HAVE_IOPS_SYMLINK_IDMAP */ + +/* iops->symlink() takes struct user_namespace* */ +/* #undef HAVE_IOPS_SYMLINK_USERNS */ + +/* iov_iter_advance() is available */ +/* #undef HAVE_IOV_ITER_ADVANCE */ + +/* iov_iter_count() is available */ +/* #undef HAVE_IOV_ITER_COUNT */ + +/* iov_iter_fault_in_readable() is available */ +/* #undef HAVE_IOV_ITER_FAULT_IN_READABLE */ + +/* iov_iter_revert() is available */ +/* #undef HAVE_IOV_ITER_REVERT */ + +/* iov_iter_type() is available */ +/* #undef HAVE_IOV_ITER_TYPE */ + +/* iov_iter types are available */ +/* #undef HAVE_IOV_ITER_TYPES */ + +/* yes */ +/* #undef HAVE_IO_SCHEDULE_TIMEOUT */ + +/* Define to 1 if you have the `issetugid' function. */ +#define HAVE_ISSETUGID 1 + +/* iter_iov() is available */ +/* #undef HAVE_ITER_IOV */ + +/* kernel has kernel_fpu_* functions */ +/* #undef HAVE_KERNEL_FPU */ + +/* kernel has asm/fpu/api.h */ +/* #undef HAVE_KERNEL_FPU_API_HEADER */ + +/* kernel fpu internal */ +/* #undef HAVE_KERNEL_FPU_INTERNAL */ + +/* kernel has asm/fpu/internal.h */ +/* #undef HAVE_KERNEL_FPU_INTERNAL_HEADER */ + +/* uncached_acl_sentinel() exists */ +/* #undef HAVE_KERNEL_GET_ACL_HANDLE_CACHE */ + +/* Define if compiler supports -Winfinite-recursion */ +/* #undef HAVE_KERNEL_INFINITE_RECURSION */ + +/* kernel does stack verification */ +/* #undef HAVE_KERNEL_OBJTOOL */ + +/* kernel has linux/objtool.h */ +/* #undef HAVE_KERNEL_OBJTOOL_HEADER */ + +/* kernel_read() take loff_t pointer */ +/* #undef HAVE_KERNEL_READ_PPOS */ + +/* timer_list.function gets a timer_list */ +/* #undef HAVE_KERNEL_TIMER_FUNCTION_TIMER_LIST */ + +/* struct timer_list has a flags member */ +/* #undef HAVE_KERNEL_TIMER_LIST_FLAGS */ + +/* timer_setup() is available */ +/* #undef HAVE_KERNEL_TIMER_SETUP */ + +/* kernel_write() take loff_t pointer */ +/* #undef HAVE_KERNEL_WRITE_PPOS */ + +/* kmem_cache_create_usercopy() exists */ +/* #undef HAVE_KMEM_CACHE_CREATE_USERCOPY */ + +/* kstrtoul() exists */ +/* #undef HAVE_KSTRTOUL */ + +/* ktime_get_coarse_real_ts64() exists */ +/* #undef HAVE_KTIME_GET_COARSE_REAL_TS64 */ + +/* ktime_get_raw_ts64() exists */ +/* #undef HAVE_KTIME_GET_RAW_TS64 */ + +/* kvmalloc exists */ +/* #undef HAVE_KVMALLOC */ + +/* Define if you have [aio] */ +/* #undef HAVE_LIBAIO */ + +/* Define if you have [blkid] */ +/* #undef HAVE_LIBBLKID */ + +/* Define if you have [crypto] */ +#define HAVE_LIBCRYPTO 1 + +/* Define if you have [tirpc] */ +/* #undef HAVE_LIBTIRPC */ + +/* Define if you have [udev] */ +/* #undef HAVE_LIBUDEV */ + +/* Define if you have [uuid] */ +/* #undef HAVE_LIBUUID */ + +/* linux/blk-cgroup.h exists */ +/* #undef HAVE_LINUX_BLK_CGROUP_HEADER */ + +/* lseek_execute() is available */ +/* #undef HAVE_LSEEK_EXECUTE */ + +/* makedev() is declared in sys/mkdev.h */ +/* #undef HAVE_MAKEDEV_IN_MKDEV */ + +/* makedev() is declared in sys/sysmacros.h */ +/* #undef HAVE_MAKEDEV_IN_SYSMACROS */ + +/* Noting that make_request_fn() returns blk_qc_t */ +/* #undef HAVE_MAKE_REQUEST_FN_RET_QC */ + +/* Noting that make_request_fn() returns void */ +/* #undef HAVE_MAKE_REQUEST_FN_RET_VOID */ + +/* iops->mkdir() takes umode_t */ +/* #undef HAVE_MKDIR_UMODE_T */ + +/* Define to 1 if you have the `mlockall' function. */ +#define HAVE_MLOCKALL 1 + +/* lookup_bdev() wants mode arg */ +/* #undef HAVE_MODE_LOOKUP_BDEV */ + +/* Define if host toolchain supports MOVBE */ +#define HAVE_MOVBE 1 + +/* new_sync_read()/new_sync_write() are available */ +/* #undef HAVE_NEW_SYNC_READ */ + +/* folio_wait_bit() exists */ +/* #undef HAVE_PAGEMAP_FOLIO_WAIT_BIT */ + +/* part_to_dev() exists */ +/* #undef HAVE_PART_TO_DEV */ + +/* iops->getattr() takes a path */ +/* #undef HAVE_PATH_IOPS_GETATTR */ + +/* Define if host toolchain supports PCLMULQDQ */ +#define HAVE_PCLMULQDQ 1 + +/* percpu_counter_add_batch() is defined */ +/* #undef HAVE_PERCPU_COUNTER_ADD_BATCH */ + +/* percpu_counter_init() wants gfp_t */ +/* #undef HAVE_PERCPU_COUNTER_INIT_WITH_GFP */ + +/* posix_acl_chmod() exists */ +/* #undef HAVE_POSIX_ACL_CHMOD */ + +/* posix_acl_from_xattr() needs user_ns */ +/* #undef HAVE_POSIX_ACL_FROM_XATTR_USERNS */ + +/* posix_acl_release() is available */ +/* #undef HAVE_POSIX_ACL_RELEASE */ + +/* posix_acl_release() is GPL-only */ +/* #undef HAVE_POSIX_ACL_RELEASE_GPL_ONLY */ + +/* posix_acl_valid() wants user namespace */ +/* #undef HAVE_POSIX_ACL_VALID_WITH_NS */ + +/* proc_ops structure exists */ +/* #undef HAVE_PROC_OPS_STRUCT */ + +/* iops->put_link() cookie */ +/* #undef HAVE_PUT_LINK_COOKIE */ + +/* iops->put_link() delayed */ +/* #undef HAVE_PUT_LINK_DELAYED */ + +/* iops->put_link() nameidata */ +/* #undef HAVE_PUT_LINK_NAMEIDATA */ + +/* If available, contains the Python version number currently in use. */ +#define HAVE_PYTHON "3.7" + +/* qat is enabled and existed */ +/* #undef HAVE_QAT */ + +/* struct reclaim_state has reclaimed */ +/* #undef HAVE_RECLAIM_STATE_RECLAIMED */ + +/* register_shrinker is vararg */ +/* #undef HAVE_REGISTER_SHRINKER_VARARG */ + +/* register_sysctl_table exists */ +/* #undef HAVE_REGISTER_SYSCTL_TABLE */ + +/* iops->rename2() exists */ +/* #undef HAVE_RENAME2 */ + +/* struct inode_operations_wrapper takes .rename2() */ +/* #undef HAVE_RENAME2_OPERATIONS_WRAPPER */ + +/* iops->rename() wants flags */ +/* #undef HAVE_RENAME_WANTS_FLAGS */ + +/* REQ_DISCARD is defined */ +/* #undef HAVE_REQ_DISCARD */ + +/* REQ_FLUSH is defined */ +/* #undef HAVE_REQ_FLUSH */ + +/* REQ_OP_DISCARD is defined */ +/* #undef HAVE_REQ_OP_DISCARD */ + +/* REQ_OP_FLUSH is defined */ +/* #undef HAVE_REQ_OP_FLUSH */ + +/* REQ_OP_SECURE_ERASE is defined */ +/* #undef HAVE_REQ_OP_SECURE_ERASE */ + +/* REQ_PREFLUSH is defined */ +/* #undef HAVE_REQ_PREFLUSH */ + +/* revalidate_disk() is available */ +/* #undef HAVE_REVALIDATE_DISK */ + +/* revalidate_disk_size() is available */ +/* #undef HAVE_REVALIDATE_DISK_SIZE */ + +/* struct rw_semaphore has member activity */ +/* #undef HAVE_RWSEM_ACTIVITY */ + +/* struct rw_semaphore has atomic_long_t member count */ +/* #undef HAVE_RWSEM_ATOMIC_LONG_COUNT */ + +/* linux/sched/signal.h exists */ +/* #undef HAVE_SCHED_SIGNAL_HEADER */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SECURITY_PAM_MODULES_H 1 + +/* setattr_prepare() accepts mnt_idmap */ +/* #undef HAVE_SETATTR_PREPARE_IDMAP */ + +/* setattr_prepare() is available, doesn't accept user_namespace */ +/* #undef HAVE_SETATTR_PREPARE_NO_USERNS */ + +/* setattr_prepare() accepts user_namespace */ +/* #undef HAVE_SETATTR_PREPARE_USERNS */ + +/* iops->set_acl() exists, takes 3 args */ +/* #undef HAVE_SET_ACL */ + +/* iops->set_acl() takes 4 args, arg1 is struct mnt_idmap * */ +/* #undef HAVE_SET_ACL_IDMAP_DENTRY */ + +/* iops->set_acl() takes 4 args */ +/* #undef HAVE_SET_ACL_USERNS */ + +/* iops->set_acl() takes 4 args, arg2 is struct dentry * */ +/* #undef HAVE_SET_ACL_USERNS_DENTRY_ARG2 */ + +/* set_cached_acl() is usable */ +/* #undef HAVE_SET_CACHED_ACL_USABLE */ + +/* set_special_state() exists */ +/* #undef HAVE_SET_SPECIAL_STATE */ + +/* struct shrink_control exists */ +/* #undef HAVE_SHRINK_CONTROL_STRUCT */ + +/* kernel_siginfo_t exists */ +/* #undef HAVE_SIGINFO */ + +/* signal_stop() exists */ +/* #undef HAVE_SIGNAL_STOP */ + +/* new shrinker callback wants 2 args */ +/* #undef HAVE_SINGLE_SHRINKER_CALLBACK */ + +/* cs->count_objects exists */ +/* #undef HAVE_SPLIT_SHRINKER_CALLBACK */ + +#if defined(__amd64__) || defined(__i386__) +/* Define if host toolchain supports SSE */ +#define HAVE_SSE 1 + +/* Define if host toolchain supports SSE2 */ +#define HAVE_SSE2 1 + +/* Define if host toolchain supports SSE3 */ +#define HAVE_SSE3 1 + +/* Define if host toolchain supports SSE4.1 */ +#define HAVE_SSE4_1 1 + +/* Define if host toolchain supports SSE4.2 */ +#define HAVE_SSE4_2 1 + +/* Define if host toolchain supports SSSE3 */ +#define HAVE_SSSE3 1 +#endif + +/* STACK_FRAME_NON_STANDARD is defined */ +/* #undef HAVE_STACK_FRAME_NON_STANDARD */ + +/* standalone exists */ +/* #undef HAVE_STANDALONE_LINUX_STDARG */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDIO_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `strlcat' function. */ +#define HAVE_STRLCAT 1 + +/* Define to 1 if you have the `strlcpy' function. */ +#define HAVE_STRLCPY 1 + +/* submit_bio is member of struct block_device_operations */ +/* #undef HAVE_SUBMIT_BIO_IN_BLOCK_DEVICE_OPERATIONS */ + +/* super_setup_bdi_name() exits */ +/* #undef HAVE_SUPER_SETUP_BDI_NAME */ + +/* super_block->s_user_ns exists */ +/* #undef HAVE_SUPER_USER_NS */ + +/* struct kobj_type has default_groups */ +/* #undef HAVE_SYSFS_DEFAULT_GROUPS */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* i_op->tmpfile() exists */ +/* #undef HAVE_TMPFILE */ + +/* i_op->tmpfile() uses old dentry signature */ +/* #undef HAVE_TMPFILE_DENTRY */ + +/* i_op->tmpfile() has mnt_idmap */ +/* #undef HAVE_TMPFILE_IDMAP */ + +/* i_op->tmpfile() has userns */ +/* #undef HAVE_TMPFILE_USERNS */ + +/* totalhigh_pages() exists */ +/* #undef HAVE_TOTALHIGH_PAGES */ + +/* kernel has totalram_pages() */ +/* #undef HAVE_TOTALRAM_PAGES_FUNC */ + +/* Define to 1 if you have the `udev_device_get_is_initialized' function. */ +/* #undef HAVE_UDEV_DEVICE_GET_IS_INITIALIZED */ + +/* kernel has __kernel_fpu_* functions */ +/* #undef HAVE_UNDERSCORE_KERNEL_FPU */ + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* iops->getattr() takes struct user_namespace* */ +/* #undef HAVE_USERNS_IOPS_GETATTR */ + +/* iops->setattr() takes struct user_namespace* */ +/* #undef HAVE_USERNS_IOPS_SETATTR */ + +/* user_namespace->ns.inum exists */ +/* #undef HAVE_USER_NS_COMMON_INUM */ + +/* iops->getattr() takes a vfsmount */ +/* #undef HAVE_VFSMOUNT_IOPS_GETATTR */ + +/* fops->clone_file_range() is available */ +/* #undef HAVE_VFS_CLONE_FILE_RANGE */ + +/* fops->copy_file_range() is available */ +/* #undef HAVE_VFS_COPY_FILE_RANGE */ + +/* fops->dedupe_file_range() is available */ +/* #undef HAVE_VFS_DEDUPE_FILE_RANGE */ + +/* aops->direct_IO() uses iovec */ +/* #undef HAVE_VFS_DIRECT_IO_IOVEC */ + +/* aops->direct_IO() uses iov_iter without rw */ +/* #undef HAVE_VFS_DIRECT_IO_ITER */ + +/* aops->direct_IO() uses iov_iter with offset */ +/* #undef HAVE_VFS_DIRECT_IO_ITER_OFFSET */ + +/* aops->direct_IO() uses iov_iter with rw and offset */ +/* #undef HAVE_VFS_DIRECT_IO_ITER_RW_OFFSET */ + +/* filemap_dirty_folio exists */ +/* #undef HAVE_VFS_FILEMAP_DIRTY_FOLIO */ + +/* file_operations_extend takes .copy_file_range() and .clone_file_range() */ +/* #undef HAVE_VFS_FILE_OPERATIONS_EXTEND */ + +/* generic_copy_file_range() is available */ +/* #undef HAVE_VFS_GENERIC_COPY_FILE_RANGE */ + +/* All required iov_iter interfaces are available */ +/* #undef HAVE_VFS_IOV_ITER */ + +/* fops->iterate() is available */ +/* #undef HAVE_VFS_ITERATE */ + +/* fops->iterate_shared() is available */ +/* #undef HAVE_VFS_ITERATE_SHARED */ + +/* fops->readdir() is available */ +/* #undef HAVE_VFS_READDIR */ + +/* address_space_operations->readpages exists */ +/* #undef HAVE_VFS_READPAGES */ + +/* read_folio exists */ +/* #undef HAVE_VFS_READ_FOLIO */ + +/* fops->remap_file_range() is available */ +/* #undef HAVE_VFS_REMAP_FILE_RANGE */ + +/* fops->read/write_iter() are available */ +/* #undef HAVE_VFS_RW_ITERATE */ + +/* __set_page_dirty_nobuffers exists */ +/* #undef HAVE_VFS_SET_PAGE_DIRTY_NOBUFFERS */ + +/* __vmalloc page flags exists */ +/* #undef HAVE_VMALLOC_PAGE_KERNEL */ + +/* yes */ +/* #undef HAVE_WAIT_ON_BIT_ACTION */ + +/* wait_queue_entry_t exists */ +/* #undef HAVE_WAIT_QUEUE_ENTRY_T */ + +/* wq_head->head and wq_entry->entry exist */ +/* #undef HAVE_WAIT_QUEUE_HEAD_ENTRY */ + +/* int (*writepage_t)() takes struct folio* */ +/* #undef HAVE_WRITEPAGE_T_FOLIO */ + +/* xattr_handler->get() wants dentry */ +/* #undef HAVE_XATTR_GET_DENTRY */ + +/* xattr_handler->get() wants both dentry and inode */ *** 190 LINES SKIPPED *** From nobody Sat Oct 14 22:35:38 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S7J9l1y4Pz4xLBw; Sat, 14 Oct 2023 22: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 4S7J9l1WY9z3Lk3; Sat, 14 Oct 2023 22: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=1697322939; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JImMaHy/UUGPhwuCp44YmyJzCM8AdzIl02LGDQUHH/8=; b=Den+iJn1IkbNq+M52+I08MLUeY/qFUTyaupzagMTTUf90QKWXVERS6OpmrpzM83Xx55+oy LywUQN6a4GPfdkCZCOaQYQRhLnnIEv2e382/uMPG81vt4N3HASzvsQC6qwuYg05jLLFNKU w8z8E3nZcb0XzQvtXmBTomF68dniOimAOWmSBUXjouYbF1CElrk9eM2O/Fhm4zZXS2WYaR f/mYj7Gx2T9kvAy3fAA/+utu3dAlPuQD4a7V5ckpFzTsb3MLRXTVPIZXcHJOLsMvN21FTR fGdgI5dr9UmtyMZEFeLilTCB2XjXkS/WQI6l4IWfDhLOOQq4rJjr8vbwkF/0PA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697322939; a=rsa-sha256; cv=none; b=LUuGhR4lwoQqB42qMujt5lMTuj62EI4KB/5eWXggqNopbSEGBVLtfJaUno/sxpZjBb1LPa GJBTpLJ93+vRoyIiyEELliHh235jx5EOL2FGGKux0t4LDJlpm/UFcYOLrjBR7g8Mwgm9lZ 51u1tV6IYGh17+n2JCqdzVFArKapAD1XFRA4uN/87KuNoH3FUFs5UQlNyByY2Xdr/vnjCK Zfw5CFBbcbheudXbewkRanncuNyJSXXdFwTRhsRzt5GVQAZqXe3cP+G/mvicYbxFw1f0Lm 68lxcc1XRhBDg4VwmGBJGI5O/Sb56U4e+qUfumg/ITH0nJQLQ37cvQU7FR31kA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697322939; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JImMaHy/UUGPhwuCp44YmyJzCM8AdzIl02LGDQUHH/8=; b=GA0VGAEGUTkUDiCe1HCTnqnvNVxERNDo/bMdd8dyE2KT/wbdPtXlweNFbjsqoIimJY6jWF X1Dx3cOERt7JBap1BXKyxxYiwgV9yy9vWrs7wbnhXA8LGZ5+iOZfkqgyodnI3seQmQzk+K +U0xJQ5DhZ+g6ylk/keewUeLIbR3MjNxI5yQBnKgBo9QFPzpaJAkRefw1RU7U2L5GEia2N rftACc0LhyPNneKC9AW2ZXEIFRjSlg0SYyjbA4hYQajSuUE4VhYrq226aQpa2TZx5NP1W8 9fUCK3HEOSsGZgqf34BJiZu2tXLUcI66zlRGtpbqvHHhExMLIRM1mYX+fEmU6g== 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 4S7J9l0Zz9zntS; Sat, 14 Oct 2023 22:35:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39EMZdUC094934; Sat, 14 Oct 2023 22:35:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39EMZcSl094931; Sat, 14 Oct 2023 22:35:38 GMT (envelope-from git) Date: Sat, 14 Oct 2023 22:35:38 GMT Message-Id: <202310142235.39EMZcSl094931@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Martin Matuska Subject: git: 0002395c4efb - releng/14.0 - zfs: merge openzfs/zfs@8015e2ea6 (zfs-2.2-release) into stable/14 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 0002395c4efbe7f98ac51f38421f9a876c0cd4fb Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=0002395c4efbe7f98ac51f38421f9a876c0cd4fb commit 0002395c4efbe7f98ac51f38421f9a876c0cd4fb Author: Martin Matuska AuthorDate: 2023-10-04 12:54:05 +0000 Commit: Martin Matuska CommitDate: 2023-10-14 20:51:39 +0000 zfs: merge openzfs/zfs@8015e2ea6 (zfs-2.2-release) into stable/14 Notable upstream pull request merges: #15240 e9dc31c74 Update the behavior of mountpoint property #15240 c53bc3837 Improve the handling of sharesmb,sharenfs properties #15298 0ce1b2ca1 Invoke zdb by guid to avoid import errors #15301 0aabd6b48 ZIL: Avoid dbuf_read() in ztest_get_data() #15308 9e36c576f Don't allocate from new metaslabs #15312 229ca7d73 Fix ENOSPC for extended quota #15321 3079bf2e6 Restrict short block cloning requests #15322 8015e2ea6 Add '-u' - nomount flag for zfs set #15324 b34bf2d5f Tweak rebuild in-flight hard limit #15331 608741d06 Report ashift of L2ARC devices in zdb #15333 0d870a177 Fix invalid pointer access in trace_dbuf.h Obtained from: OpenZFS OpenZFS commit: 8015e2ea66b4f6233877fef29a8a35594f33558d Approved by: re (gjb) (cherry picked from commit a21cb0234b896d8e524840d8b06927f5e8ee1b13) --- sys/contrib/openzfs/cmd/zdb/zdb.c | 2 +- sys/contrib/openzfs/cmd/zfs/zfs_main.c | 52 ++++++----- sys/contrib/openzfs/cmd/ztest.c | 24 ++--- sys/contrib/openzfs/config/zfs-build.m4 | 11 +++ .../openzfs/contrib/bash_completion.d/Makefile.am | 2 - sys/contrib/openzfs/contrib/debian/control | 2 +- .../contrib/debian/openzfs-zfsutils.install | 1 - sys/contrib/openzfs/contrib/debian/rules.in | 5 - sys/contrib/openzfs/include/libzfs.h | 8 ++ .../openzfs/include/os/linux/zfs/sys/trace_dbuf.h | 8 +- sys/contrib/openzfs/lib/libshare/os/freebsd/nfs.c | 3 +- sys/contrib/openzfs/lib/libshare/os/linux/nfs.c | 47 +++++++++- sys/contrib/openzfs/lib/libzfs/libzfs.abi | 7 ++ sys/contrib/openzfs/lib/libzfs/libzfs_changelist.c | 46 +++++---- sys/contrib/openzfs/lib/libzfs/libzfs_dataset.c | 18 +++- sys/contrib/openzfs/man/man7/zfsprops.7 | 26 +++++- sys/contrib/openzfs/man/man8/zfs-set.8 | 7 ++ sys/contrib/openzfs/module/zfs/dsl_dir.c | 22 ++--- sys/contrib/openzfs/module/zfs/metaslab.c | 9 ++ sys/contrib/openzfs/module/zfs/vdev_label.c | 10 ++ sys/contrib/openzfs/module/zfs/vdev_rebuild.c | 4 +- sys/contrib/openzfs/module/zfs/zfs_vnops.c | 13 +++ sys/contrib/openzfs/tests/runfiles/common.run | 2 +- sys/contrib/openzfs/tests/runfiles/sanity.run | 2 +- .../openzfs/tests/test-runner/bin/zts-report.py.in | 4 +- .../openzfs/tests/zfs-tests/tests/Makefile.am | 1 + ...ock_cloning_copyfilerange_fallback_same_txg.ksh | 5 +- .../cli_root/zfs_mount/zfs_mount_006_pos.ksh | 2 +- .../cli_root/zfs_mount/zfs_mount_008_pos.ksh | 4 +- .../cli_root/zfs_mount/zfs_mount_012_pos.ksh | 15 ++- .../cli_root/zfs_set/mountpoint_002_pos.ksh | 12 ++- .../cli_root/zfs_set/zfs_set_003_neg.ksh | 10 +- .../cli_root/zfs_set/zfs_set_nomount.ksh | 103 +++++++++++++++++++++ .../cli_root/zpool_trim/zpool_trim_partial.ksh | 2 +- .../zpool_trim/zpool_trim_verify_trimmed.ksh | 2 +- .../tests/functional/no_space/enospc_rm.ksh | 12 ++- .../tests/functional/trim/autotrim_config.ksh | 2 +- .../tests/functional/trim/autotrim_integrity.ksh | 2 +- .../functional/trim/autotrim_trim_integrity.ksh | 2 +- .../tests/functional/trim/trim_config.ksh | 2 +- .../tests/functional/trim/trim_integrity.ksh | 2 +- sys/modules/zfs/zfs_config.h | 4 +- sys/modules/zfs/zfs_gitrev.h | 2 +- 43 files changed, 398 insertions(+), 121 deletions(-) diff --git a/sys/contrib/openzfs/cmd/zdb/zdb.c b/sys/contrib/openzfs/cmd/zdb/zdb.c index 4b9921d47b81..005bf3f16590 100644 --- a/sys/contrib/openzfs/cmd/zdb/zdb.c +++ b/sys/contrib/openzfs/cmd/zdb/zdb.c @@ -5179,7 +5179,7 @@ dump_label(const char *dev) if (nvlist_size(config, &size, NV_ENCODE_XDR) != 0) size = buflen; - /* If the device is a cache device clear the header. */ + /* If the device is a cache device read the header. */ if (!read_l2arc_header) { if (nvlist_lookup_uint64(config, ZPOOL_CONFIG_POOL_STATE, &l2cache) == 0 && diff --git a/sys/contrib/openzfs/cmd/zfs/zfs_main.c b/sys/contrib/openzfs/cmd/zfs/zfs_main.c index 533a21bba4d0..5a2285ce434b 100644 --- a/sys/contrib/openzfs/cmd/zfs/zfs_main.c +++ b/sys/contrib/openzfs/cmd/zfs/zfs_main.c @@ -339,7 +339,7 @@ get_usage(zfs_help_t idx) "\tsend [-nVvPe] -t \n" "\tsend [-PnVv] --saved filesystem\n")); case HELP_SET: - return (gettext("\tset ... " + return (gettext("\tset [-u] ... " " ...\n")); case HELP_SHARE: return (gettext("\tshare [-l] <-a [nfs|smb] | filesystem>\n")); @@ -4202,9 +4202,10 @@ out: static int set_callback(zfs_handle_t *zhp, void *data) { - nvlist_t *props = data; + zprop_set_cbdata_t *cb = data; + int ret = zfs_prop_set_list_flags(zhp, cb->cb_proplist, cb->cb_flags); - if (zfs_prop_set_list(zhp, props) != 0) { + if (ret != 0 || libzfs_errno(g_zfs) != EZFS_SUCCESS) { switch (libzfs_errno(g_zfs)) { case EZFS_MOUNTFAILED: (void) fprintf(stderr, gettext("property may be set " @@ -4215,33 +4216,42 @@ set_callback(zfs_handle_t *zhp, void *data) "but unable to reshare filesystem\n")); break; } - return (1); } - return (0); + return (ret); } static int zfs_do_set(int argc, char **argv) { - nvlist_t *props = NULL; + zprop_set_cbdata_t cb = { 0 }; int ds_start = -1; /* argv idx of first dataset arg */ int ret = 0; - int i; + int i, c; - /* check for options */ - if (argc > 1 && argv[1][0] == '-') { - (void) fprintf(stderr, gettext("invalid option '%c'\n"), - argv[1][1]); - usage(B_FALSE); + /* check options */ + while ((c = getopt(argc, argv, "u")) != -1) { + switch (c) { + case 'u': + cb.cb_flags |= ZFS_SET_NOMOUNT; + break; + case '?': + default: + (void) fprintf(stderr, gettext("invalid option '%c'\n"), + optopt); + usage(B_FALSE); + } } + argc -= optind; + argv += optind; + /* check number of arguments */ - if (argc < 2) { + if (argc < 1) { (void) fprintf(stderr, gettext("missing arguments\n")); usage(B_FALSE); } - if (argc < 3) { - if (strchr(argv[1], '=') == NULL) { + if (argc < 2) { + if (strchr(argv[0], '=') == NULL) { (void) fprintf(stderr, gettext("missing property=value " "argument(s)\n")); } else { @@ -4252,7 +4262,7 @@ zfs_do_set(int argc, char **argv) } /* validate argument order: prop=val args followed by dataset args */ - for (i = 1; i < argc; i++) { + for (i = 0; i < argc; i++) { if (strchr(argv[i], '=') != NULL) { if (ds_start > 0) { /* out-of-order prop=val argument */ @@ -4270,20 +4280,20 @@ zfs_do_set(int argc, char **argv) } /* Populate a list of property settings */ - if (nvlist_alloc(&props, NV_UNIQUE_NAME, 0) != 0) + if (nvlist_alloc(&cb.cb_proplist, NV_UNIQUE_NAME, 0) != 0) nomem(); - for (i = 1; i < ds_start; i++) { - if (!parseprop(props, argv[i])) { + for (i = 0; i < ds_start; i++) { + if (!parseprop(cb.cb_proplist, argv[i])) { ret = -1; goto error; } } ret = zfs_for_each(argc - ds_start, argv + ds_start, 0, - ZFS_TYPE_DATASET, NULL, NULL, 0, set_callback, props); + ZFS_TYPE_DATASET, NULL, NULL, 0, set_callback, &cb); error: - nvlist_free(props); + nvlist_free(cb.cb_proplist); return (ret); } diff --git a/sys/contrib/openzfs/cmd/ztest.c b/sys/contrib/openzfs/cmd/ztest.c index 59c4be225f93..8cfbdfe1c2e2 100644 --- a/sys/contrib/openzfs/cmd/ztest.c +++ b/sys/contrib/openzfs/cmd/ztest.c @@ -2457,8 +2457,7 @@ ztest_get_data(void *arg, uint64_t arg2, lr_write_t *lr, char *buf, zgd->zgd_lr = (struct zfs_locked_range *)ztest_range_lock(zd, object, offset, size, RL_READER); - error = dmu_buf_hold(os, object, offset, zgd, &db, - DMU_READ_NO_PREFETCH); + error = dmu_buf_hold_noread(os, object, offset, zgd, &db); if (error == 0) { blkptr_t *bp = &lr->lr_blkptr; @@ -6379,6 +6378,7 @@ ztest_reguid(ztest_ds_t *zd, uint64_t id) spa_t *spa = ztest_spa; uint64_t orig, load; int error; + ztest_shared_t *zs = ztest_shared; if (ztest_opts.zo_mmp_test) return; @@ -6388,6 +6388,7 @@ ztest_reguid(ztest_ds_t *zd, uint64_t id) (void) pthread_rwlock_wrlock(&ztest_name_lock); error = spa_change_guid(spa); + zs->zs_guid = spa_guid(spa); (void) pthread_rwlock_unlock(&ztest_name_lock); if (error != 0) @@ -6917,7 +6918,7 @@ ztest_trim(ztest_ds_t *zd, uint64_t id) * Verify pool integrity by running zdb. */ static void -ztest_run_zdb(const char *pool) +ztest_run_zdb(uint64_t guid) { int status; char *bin; @@ -6941,13 +6942,13 @@ ztest_run_zdb(const char *pool) free(set_gvars_args); size_t would = snprintf(zdb, len, - "%s -bcc%s%s -G -d -Y -e -y %s -p %s %s", + "%s -bcc%s%s -G -d -Y -e -y %s -p %s %"PRIu64, bin, ztest_opts.zo_verbose >= 3 ? "s" : "", ztest_opts.zo_verbose >= 4 ? "v" : "", set_gvars_args_joined, ztest_opts.zo_dir, - pool); + guid); ASSERT3U(would, <, len); umem_free(set_gvars_args_joined, strlen(set_gvars_args_joined) + 1); @@ -7525,14 +7526,15 @@ ztest_import(ztest_shared_t *zs) VERIFY0(spa_open(ztest_opts.zo_pool, &spa, FTAG)); zs->zs_metaslab_sz = 1ULL << spa->spa_root_vdev->vdev_child[0]->vdev_ms_shift; + zs->zs_guid = spa_guid(spa); spa_close(spa, FTAG); kernel_fini(); if (!ztest_opts.zo_mmp_test) { - ztest_run_zdb(ztest_opts.zo_pool); + ztest_run_zdb(zs->zs_guid); ztest_freeze(); - ztest_run_zdb(ztest_opts.zo_pool); + ztest_run_zdb(zs->zs_guid); } (void) pthread_rwlock_destroy(&ztest_name_lock); @@ -7603,7 +7605,6 @@ ztest_run(ztest_shared_t *zs) dsl_pool_config_enter(dmu_objset_pool(os), FTAG); dmu_objset_fast_stat(os, &dds); dsl_pool_config_exit(dmu_objset_pool(os), FTAG); - zs->zs_guid = dds.dds_guid; dmu_objset_disown(os, B_TRUE, FTAG); /* @@ -7874,14 +7875,15 @@ ztest_init(ztest_shared_t *zs) VERIFY0(spa_open(ztest_opts.zo_pool, &spa, FTAG)); zs->zs_metaslab_sz = 1ULL << spa->spa_root_vdev->vdev_child[0]->vdev_ms_shift; + zs->zs_guid = spa_guid(spa); spa_close(spa, FTAG); kernel_fini(); if (!ztest_opts.zo_mmp_test) { - ztest_run_zdb(ztest_opts.zo_pool); + ztest_run_zdb(zs->zs_guid); ztest_freeze(); - ztest_run_zdb(ztest_opts.zo_pool); + ztest_run_zdb(zs->zs_guid); } (void) pthread_rwlock_destroy(&ztest_name_lock); @@ -8304,7 +8306,7 @@ main(int argc, char **argv) } if (!ztest_opts.zo_mmp_test) - ztest_run_zdb(ztest_opts.zo_pool); + ztest_run_zdb(zs->zs_guid); } if (ztest_opts.zo_verbose >= 1) { diff --git a/sys/contrib/openzfs/config/zfs-build.m4 b/sys/contrib/openzfs/config/zfs-build.m4 index 2703e6c016c4..5ea6aa29a3de 100644 --- a/sys/contrib/openzfs/config/zfs-build.m4 +++ b/sys/contrib/openzfs/config/zfs-build.m4 @@ -617,6 +617,17 @@ AC_DEFUN([ZFS_AC_DEFAULT_PACKAGE], [ AC_MSG_RESULT([no]) fi AC_SUBST(RPM_DEFINE_INITRAMFS) + + AC_MSG_CHECKING([default bash completion directory]) + case "$VENDOR" in + ubuntu) bashcompletiondir=/usr/share/bash-completion/completions ;; + debian) bashcompletiondir=/usr/share/bash-completion/completions ;; + freebsd) bashcompletiondir=$sysconfdir/bash_completion.d;; + *) bashcompletiondir=/etc/bash_completion.d ;; + esac + AC_MSG_RESULT([$bashcompletiondir]) + AC_SUBST(bashcompletiondir) + ]) dnl # diff --git a/sys/contrib/openzfs/contrib/bash_completion.d/Makefile.am b/sys/contrib/openzfs/contrib/bash_completion.d/Makefile.am index dc4b610c42b8..1ec05ed73d2d 100644 --- a/sys/contrib/openzfs/contrib/bash_completion.d/Makefile.am +++ b/sys/contrib/openzfs/contrib/bash_completion.d/Makefile.am @@ -1,5 +1,3 @@ -bashcompletiondir = $(sysconfdir)/bash_completion.d - nodist_bashcompletion_DATA = %D%/zfs SUBSTFILES += $(nodist_bashcompletion_DATA) diff --git a/sys/contrib/openzfs/contrib/debian/control b/sys/contrib/openzfs/contrib/debian/control index b9bb23b09ba0..f4e97fe16145 100644 --- a/sys/contrib/openzfs/contrib/debian/control +++ b/sys/contrib/openzfs/contrib/debian/control @@ -4,7 +4,7 @@ Priority: optional Maintainer: ZFS on Linux specific mailing list Build-Depends: debhelper-compat (= 12), dh-python, - dkms (>> 2.1.1.2-5), + dh-sequence-dkms | dkms (>> 2.1.1.2-5), libaio-dev, libblkid-dev, libcurl4-openssl-dev, diff --git a/sys/contrib/openzfs/contrib/debian/openzfs-zfsutils.install b/sys/contrib/openzfs/contrib/debian/openzfs-zfsutils.install index 301d8f67b3af..fa05401bc168 100644 --- a/sys/contrib/openzfs/contrib/debian/openzfs-zfsutils.install +++ b/sys/contrib/openzfs/contrib/debian/openzfs-zfsutils.install @@ -1,7 +1,6 @@ etc/default/zfs etc/zfs/zfs-functions etc/zfs/zpool.d/ -etc/bash_completion.d/zfs lib/systemd/system-generators/ lib/systemd/system-preset/ lib/systemd/system/zfs-import-cache.service diff --git a/sys/contrib/openzfs/contrib/debian/rules.in b/sys/contrib/openzfs/contrib/debian/rules.in index f0791cfabd38..a3a05efacb50 100755 --- a/sys/contrib/openzfs/contrib/debian/rules.in +++ b/sys/contrib/openzfs/contrib/debian/rules.in @@ -71,10 +71,6 @@ override_dh_auto_install: @# Install the utilities. $(MAKE) install DESTDIR='$(CURDIR)/debian/tmp' - # Use upstream's bash completion - install -D -t '$(CURDIR)/debian/tmp/usr/share/bash-completion/completions/' \ - '$(CURDIR)/contrib/bash_completion.d/zfs' - # Move from bin_dir to /usr/sbin # Remove suffix (.py) as per policy 10.4 - Scripts # https://www.debian.org/doc/debian-policy/ch-files.html#s-scripts @@ -136,7 +132,6 @@ override_dh_auto_install: chmod a-x '$(CURDIR)/debian/tmp/etc/zfs/zfs-functions' chmod a-x '$(CURDIR)/debian/tmp/etc/default/zfs' - chmod a-x '$(CURDIR)/debian/tmp/usr/share/bash-completion/completions/zfs' override_dh_python3: dh_python3 -p openzfs-python3-pyzfs diff --git a/sys/contrib/openzfs/include/libzfs.h b/sys/contrib/openzfs/include/libzfs.h index fa05b7921bb5..6c3669273786 100644 --- a/sys/contrib/openzfs/include/libzfs.h +++ b/sys/contrib/openzfs/include/libzfs.h @@ -523,6 +523,7 @@ _LIBZFS_H nvlist_t *zfs_valid_proplist(libzfs_handle_t *, zfs_type_t, _LIBZFS_H const char *zfs_prop_to_name(zfs_prop_t); _LIBZFS_H int zfs_prop_set(zfs_handle_t *, const char *, const char *); _LIBZFS_H int zfs_prop_set_list(zfs_handle_t *, nvlist_t *); +_LIBZFS_H int zfs_prop_set_list_flags(zfs_handle_t *, nvlist_t *, int); _LIBZFS_H int zfs_prop_get(zfs_handle_t *, zfs_prop_t, char *, size_t, zprop_source_t *, char *, size_t, boolean_t); _LIBZFS_H int zfs_prop_get_recvd(zfs_handle_t *, const char *, char *, size_t, @@ -645,6 +646,13 @@ typedef struct zprop_get_cbdata { vdev_cbdata_t cb_vdevs; } zprop_get_cbdata_t; +#define ZFS_SET_NOMOUNT 1 + +typedef struct zprop_set_cbdata { + int cb_flags; + nvlist_t *cb_proplist; +} zprop_set_cbdata_t; + _LIBZFS_H void zprop_print_one_property(const char *, zprop_get_cbdata_t *, const char *, const char *, zprop_source_t, const char *, const char *); diff --git a/sys/contrib/openzfs/include/os/linux/zfs/sys/trace_dbuf.h b/sys/contrib/openzfs/include/os/linux/zfs/sys/trace_dbuf.h index 11d25be35bc4..0f6a98b47d60 100644 --- a/sys/contrib/openzfs/include/os/linux/zfs/sys/trace_dbuf.h +++ b/sys/contrib/openzfs/include/os/linux/zfs/sys/trace_dbuf.h @@ -60,8 +60,12 @@ #define DBUF_TP_FAST_ASSIGN \ if (db != NULL) { \ - __assign_str(os_spa, \ - spa_name(DB_DNODE(db)->dn_objset->os_spa)); \ + if (POINTER_IS_VALID(DB_DNODE(db)->dn_objset)) { \ + __assign_str(os_spa, \ + spa_name(DB_DNODE(db)->dn_objset->os_spa)); \ + } else { \ + __assign_str(os_spa, "NULL"); \ + } \ \ __entry->ds_object = db->db_objset->os_dsl_dataset ? \ db->db_objset->os_dsl_dataset->ds_object : 0; \ diff --git a/sys/contrib/openzfs/lib/libshare/os/freebsd/nfs.c b/sys/contrib/openzfs/lib/libshare/os/freebsd/nfs.c index 521631c51f07..d9fc66106369 100644 --- a/sys/contrib/openzfs/lib/libshare/os/freebsd/nfs.c +++ b/sys/contrib/openzfs/lib/libshare/os/freebsd/nfs.c @@ -161,7 +161,8 @@ nfs_is_shared(sa_share_impl_t impl_share) static int nfs_validate_shareopts(const char *shareopts) { - (void) shareopts; + if (strlen(shareopts) == 0) + return (SA_SYNTAX_ERR); return (SA_OK); } diff --git a/sys/contrib/openzfs/lib/libshare/os/linux/nfs.c b/sys/contrib/openzfs/lib/libshare/os/linux/nfs.c index c27e5564c1e1..004946b0cfe4 100644 --- a/sys/contrib/openzfs/lib/libshare/os/linux/nfs.c +++ b/sys/contrib/openzfs/lib/libshare/os/linux/nfs.c @@ -319,12 +319,49 @@ get_linux_shareopts_cb(const char *key, const char *value, void *cookie) "wdelay" }; char **plinux_opts = (char **)cookie; + char *host, *val_dup, *literal, *next; - /* host-specific options, these are taken care of elsewhere */ - if (strcmp(key, "ro") == 0 || strcmp(key, "rw") == 0 || - strcmp(key, "sec") == 0) + if (strcmp(key, "sec") == 0) return (SA_OK); + if (strcmp(key, "ro") == 0 || strcmp(key, "rw") == 0) { + if (value == NULL || strlen(value) == 0) + return (SA_OK); + val_dup = strdup(value); + host = val_dup; + if (host == NULL) + return (SA_NO_MEMORY); + do { + if (*host == '[') { + host++; + literal = strchr(host, ']'); + if (literal == NULL) { + free(val_dup); + return (SA_SYNTAX_ERR); + } + if (literal[1] == '\0') + next = NULL; + else if (literal[1] == '/') { + next = strchr(literal + 2, ':'); + if (next != NULL) + ++next; + } else if (literal[1] == ':') + next = literal + 2; + else { + free(val_dup); + return (SA_SYNTAX_ERR); + } + } else { + next = strchr(host, ':'); + if (next != NULL) + ++next; + } + host = next; + } while (host != NULL); + free(val_dup); + return (SA_OK); + } + if (strcmp(key, "anon") == 0) key = "anonuid"; @@ -472,6 +509,10 @@ static int nfs_validate_shareopts(const char *shareopts) { char *linux_opts = NULL; + + if (strlen(shareopts) == 0) + return (SA_SYNTAX_ERR); + int error = get_linux_shareopts(shareopts, &linux_opts); if (error != SA_OK) return (error); diff --git a/sys/contrib/openzfs/lib/libzfs/libzfs.abi b/sys/contrib/openzfs/lib/libzfs/libzfs.abi index 6e53bcb41a87..8658d39e28fc 100644 --- a/sys/contrib/openzfs/lib/libzfs/libzfs.abi +++ b/sys/contrib/openzfs/lib/libzfs/libzfs.abi @@ -396,6 +396,7 @@ + @@ -4424,6 +4425,12 @@ + + + + + + diff --git a/sys/contrib/openzfs/lib/libzfs/libzfs_changelist.c b/sys/contrib/openzfs/lib/libzfs/libzfs_changelist.c index dd14c570ec03..4db1cbce9568 100644 --- a/sys/contrib/openzfs/lib/libzfs/libzfs_changelist.c +++ b/sys/contrib/openzfs/lib/libzfs/libzfs_changelist.c @@ -105,6 +105,15 @@ changelist_prefix(prop_changelist_t *clp) clp->cl_prop != ZFS_PROP_SHARESMB) return (0); + /* + * If CL_GATHER_DONT_UNMOUNT is set, don't want to unmount/unshare and + * later (re)mount/(re)share the filesystem in postfix phase, so we + * return from here. If filesystem is mounted or unmounted, leave it + * as it is. + */ + if (clp->cl_gflags & CL_GATHER_DONT_UNMOUNT) + return (0); + if ((walk = uu_avl_walk_start(clp->cl_tree, UU_WALK_ROBUST)) == NULL) return (-1); @@ -129,8 +138,6 @@ changelist_prefix(prop_changelist_t *clp) */ switch (clp->cl_prop) { case ZFS_PROP_MOUNTPOINT: - if (clp->cl_gflags & CL_GATHER_DONT_UNMOUNT) - break; if (zfs_unmount(cn->cn_handle, NULL, clp->cl_mflags) != 0) { ret = -1; @@ -164,9 +171,8 @@ changelist_prefix(prop_changelist_t *clp) * reshare the filesystems as necessary. In changelist_gather() we recorded * whether the filesystem was previously shared or mounted. The action we take * depends on the previous state, and whether the value was previously 'legacy'. - * For non-legacy properties, we only remount/reshare the filesystem if it was - * previously mounted/shared. Otherwise, we always remount/reshare the - * filesystem. + * For non-legacy properties, we always remount/reshare the filesystem, + * if CL_GATHER_DONT_UNMOUNT is not set. */ int changelist_postfix(prop_changelist_t *clp) @@ -174,10 +180,17 @@ changelist_postfix(prop_changelist_t *clp) prop_changenode_t *cn; uu_avl_walk_t *walk; char shareopts[ZFS_MAXPROPLEN]; - int errors = 0; boolean_t commit_smb_shares = B_FALSE; boolean_t commit_nfs_shares = B_FALSE; + /* + * If CL_GATHER_DONT_UNMOUNT is set, it means we don't want to (un)mount + * or (re/un)share the filesystem, so we return from here. If filesystem + * is mounted or unmounted, leave it as it is. + */ + if (clp->cl_gflags & CL_GATHER_DONT_UNMOUNT) + return (0); + /* * If we're changing the mountpoint, attempt to destroy the underlying * mountpoint. All other datasets will have inherited from this dataset @@ -240,17 +253,16 @@ changelist_postfix(prop_changelist_t *clp) needs_key = (zfs_prop_get_int(cn->cn_handle, ZFS_PROP_KEYSTATUS) == ZFS_KEYSTATUS_UNAVAILABLE); - mounted = (clp->cl_gflags & CL_GATHER_DONT_UNMOUNT) || - zfs_is_mounted(cn->cn_handle, NULL); + mounted = zfs_is_mounted(cn->cn_handle, NULL); if (!mounted && !needs_key && (cn->cn_mounted || - ((sharenfs || sharesmb || clp->cl_waslegacy) && + (((clp->cl_prop == ZFS_PROP_MOUNTPOINT && + clp->cl_prop == clp->cl_realprop) || + sharenfs || sharesmb || clp->cl_waslegacy) && (zfs_prop_get_int(cn->cn_handle, ZFS_PROP_CANMOUNT) == ZFS_CANMOUNT_ON)))) { - if (zfs_mount(cn->cn_handle, NULL, 0) != 0) - errors++; - else + if (zfs_mount(cn->cn_handle, NULL, 0) == 0) mounted = TRUE; } @@ -262,19 +274,19 @@ changelist_postfix(prop_changelist_t *clp) const enum sa_protocol nfs[] = {SA_PROTOCOL_NFS, SA_NO_PROTOCOL}; if (sharenfs && mounted) { - errors += zfs_share(cn->cn_handle, nfs); + zfs_share(cn->cn_handle, nfs); commit_nfs_shares = B_TRUE; } else if (cn->cn_shared || clp->cl_waslegacy) { - errors += zfs_unshare(cn->cn_handle, NULL, nfs); + zfs_unshare(cn->cn_handle, NULL, nfs); commit_nfs_shares = B_TRUE; } const enum sa_protocol smb[] = {SA_PROTOCOL_SMB, SA_NO_PROTOCOL}; if (sharesmb && mounted) { - errors += zfs_share(cn->cn_handle, smb); + zfs_share(cn->cn_handle, smb); commit_smb_shares = B_TRUE; } else if (cn->cn_shared || clp->cl_waslegacy) { - errors += zfs_unshare(cn->cn_handle, NULL, smb); + zfs_unshare(cn->cn_handle, NULL, smb); commit_smb_shares = B_TRUE; } } @@ -288,7 +300,7 @@ changelist_postfix(prop_changelist_t *clp) zfs_commit_shares(proto); uu_avl_walk_end(walk); - return (errors ? -1 : 0); + return (0); } /* diff --git a/sys/contrib/openzfs/lib/libzfs/libzfs_dataset.c b/sys/contrib/openzfs/lib/libzfs/libzfs_dataset.c index 11d3eb6a3c60..727efc5a91ad 100644 --- a/sys/contrib/openzfs/lib/libzfs/libzfs_dataset.c +++ b/sys/contrib/openzfs/lib/libzfs/libzfs_dataset.c @@ -1771,14 +1771,24 @@ error: return (ret); } - - /* * Given an nvlist of property names and values, set the properties for the * given dataset. */ int zfs_prop_set_list(zfs_handle_t *zhp, nvlist_t *props) +{ + return (zfs_prop_set_list_flags(zhp, props, 0)); +} + +/* + * Given an nvlist of property names, values and flags, set the properties + * for the given dataset. If ZFS_SET_NOMOUNT is set, it allows to update + * mountpoint, sharenfs and sharesmb properties without (un/re)mounting + * and (un/re)sharing the dataset. + */ +int +zfs_prop_set_list_flags(zfs_handle_t *zhp, nvlist_t *props, int flags) { zfs_cmd_t zc = {"\0"}; int ret = -1; @@ -1848,7 +1858,9 @@ zfs_prop_set_list(zfs_handle_t *zhp, nvlist_t *props) if (prop != ZFS_PROP_CANMOUNT || (fnvpair_value_uint64(elem) == ZFS_CANMOUNT_OFF && zfs_is_mounted(zhp, NULL))) { - cls[cl_idx] = changelist_gather(zhp, prop, 0, 0); + cls[cl_idx] = changelist_gather(zhp, prop, + ((flags & ZFS_SET_NOMOUNT) ? + CL_GATHER_DONT_UNMOUNT : 0), 0); if (cls[cl_idx] == NULL) goto error; } diff --git a/sys/contrib/openzfs/man/man7/zfsprops.7 b/sys/contrib/openzfs/man/man7/zfsprops.7 index 51ddd85eb79e..e3674b1f8a8d 100644 --- a/sys/contrib/openzfs/man/man7/zfsprops.7 +++ b/sys/contrib/openzfs/man/man7/zfsprops.7 @@ -1248,10 +1248,18 @@ Otherwise, they are automatically remounted in the new location if the property was previously .Sy legacy or -.Sy none , -or if they were mounted before the property was changed. +.Sy none . In addition, any shared file systems are unshared and shared in the new location. +.Pp +When the +.Sy mountpoint +property is set with +.Nm zfs Cm set Fl u +, the +.Sy mountpoint +property is updated but dataset is not mounted or unmounted and remains +as it was before. .It Sy nbmand Ns = Ns Sy on Ns | Ns Sy off Controls whether the file system should be mounted with .Sy nbmand @@ -1656,6 +1664,13 @@ by default. This means that any additional access control (disallow specific user specific access etc) must be done on the underlying file system. +.Pp +When the +.Sy sharesmb +property is updated with +.Nm zfs Cm set Fl u +, the property is set to desired value, but the operation to share, reshare +or unshare the the dataset is not performed. .It Sy sharenfs Ns = Ns Sy on Ns | Ns Sy off Ns | Ns Ar opts Controls whether the file system is shared via NFS, and what options are to be used. @@ -1699,6 +1714,13 @@ or if they were shared before the property was changed. If the new property is .Sy off , the file systems are unshared. +.Pp +When the +.Sy sharenfs +property is updated with +.Nm zfs Cm set Fl u +, the property is set to desired value, but the operation to share, reshare +or unshare the the dataset is not performed. .It Sy logbias Ns = Ns Sy latency Ns | Ns Sy throughput Provide a hint to ZFS about handling of synchronous requests in this dataset. If diff --git a/sys/contrib/openzfs/man/man8/zfs-set.8 b/sys/contrib/openzfs/man/man8/zfs-set.8 index 4cabdcd8bd83..c01bcc643e5d 100644 --- a/sys/contrib/openzfs/man/man8/zfs-set.8 +++ b/sys/contrib/openzfs/man/man8/zfs-set.8 @@ -39,6 +39,7 @@ .Sh SYNOPSIS .Nm zfs .Cm set +.Op Fl u .Ar property Ns = Ns Ar value Oo Ar property Ns = Ns Ar value Oc Ns … .Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns … .Nm zfs @@ -60,6 +61,7 @@ .It Xo .Nm zfs .Cm set +.Op Fl u .Ar property Ns = Ns Ar value Oo Ar property Ns = Ns Ar value Oc Ns … .Ar filesystem Ns | Ns Ar volume Ns | Ns Ar snapshot Ns … .Xc @@ -79,6 +81,11 @@ For more information, see the .Em User Properties section of .Xr zfsprops 7 . +.Bl -tag -width "-u" +.It Fl u +Update mountpoint, sharenfs, sharesmb property but do not mount or share the +dataset. +.El .It Xo .Nm zfs .Cm get diff --git a/sys/contrib/openzfs/module/zfs/dsl_dir.c b/sys/contrib/openzfs/module/zfs/dsl_dir.c index bbe6a03d620f..baf970121a61 100644 --- a/sys/contrib/openzfs/module/zfs/dsl_dir.c +++ b/sys/contrib/openzfs/module/zfs/dsl_dir.c @@ -26,6 +26,7 @@ * Copyright (c) 2014 Spectra Logic Corporation, All rights reserved. * Copyright (c) 2016 Actifio, Inc. All rights reserved. * Copyright (c) 2018, loli10K . All rights reserved. + * Copyright (c) 2023 Hewlett Packard Enterprise Development LP. */ #include @@ -1358,30 +1359,23 @@ top_of_function: ext_quota = 0; if (used_on_disk >= quota) { + if (retval == ENOSPC && (used_on_disk - quota) < + dsl_pool_deferred_space(dd->dd_pool)) { + retval = SET_ERROR(ERESTART); + } /* Quota exceeded */ mutex_exit(&dd->dd_lock); DMU_TX_STAT_BUMP(dmu_tx_quota); return (retval); } else if (used_on_disk + est_inflight >= quota + ext_quota) { - if (est_inflight > 0 || used_on_disk < quota) { - retval = SET_ERROR(ERESTART); - } else { - ASSERT3U(used_on_disk, >=, quota); - - if (retval == ENOSPC && (used_on_disk - quota) < - dsl_pool_deferred_space(dd->dd_pool)) { - retval = SET_ERROR(ERESTART); - } - } - dprintf_dd(dd, "failing: used=%lluK inflight = %lluK " - "quota=%lluK tr=%lluK err=%d\n", + "quota=%lluK tr=%lluK\n", (u_longlong_t)used_on_disk>>10, (u_longlong_t)est_inflight>>10, - (u_longlong_t)quota>>10, (u_longlong_t)asize>>10, retval); + (u_longlong_t)quota>>10, (u_longlong_t)asize>>10); mutex_exit(&dd->dd_lock); DMU_TX_STAT_BUMP(dmu_tx_quota); - return (retval); + return (SET_ERROR(ERESTART)); } /* We need to up our estimated delta before dropping dd_lock */ diff --git a/sys/contrib/openzfs/module/zfs/metaslab.c b/sys/contrib/openzfs/module/zfs/metaslab.c index 20dc934593f1..cdf599b17924 100644 --- a/sys/contrib/openzfs/module/zfs/metaslab.c +++ b/sys/contrib/openzfs/module/zfs/metaslab.c @@ -3208,6 +3208,15 @@ metaslab_segment_weight(metaslab_t *msp) static boolean_t metaslab_should_allocate(metaslab_t *msp, uint64_t asize, boolean_t try_hard) { + /* + * This case will usually but not always get caught by the checks below; + * metaslabs can be loaded by various means, including the trim and + * initialize code. Once that happens, without this check they are + * allocatable even before they finish their first txg sync. + */ + if (unlikely(msp->ms_new)) + return (B_FALSE); + /* * If the metaslab is loaded, ms_max_size is definitive and we can use * the fast check. If it's not, the ms_max_size is a lower bound (once diff --git a/sys/contrib/openzfs/module/zfs/vdev_label.c b/sys/contrib/openzfs/module/zfs/vdev_label.c index a5c76808f2d2..a2e5524a8391 100644 --- a/sys/contrib/openzfs/module/zfs/vdev_label.c +++ b/sys/contrib/openzfs/module/zfs/vdev_label.c @@ -1138,6 +1138,16 @@ vdev_label_init(vdev_t *vd, uint64_t crtxg, vdev_labeltype_t reason) POOL_STATE_L2CACHE) == 0); VERIFY(nvlist_add_uint64(label, ZPOOL_CONFIG_GUID, vd->vdev_guid) == 0); + + /* + * This is merely to facilitate reporting the ashift of the + * cache device through zdb. The actual retrieval of the + * ashift (in vdev_alloc()) uses the nvlist + * spa->spa_l2cache->sav_config (populated in + * spa_ld_open_aux_vdevs()). + */ + VERIFY(nvlist_add_uint64(label, ZPOOL_CONFIG_ASHIFT, + vd->vdev_ashift) == 0); } else { uint64_t txg = 0ULL; diff --git a/sys/contrib/openzfs/module/zfs/vdev_rebuild.c b/sys/contrib/openzfs/module/zfs/vdev_rebuild.c index 75c3900cbb0c..6503390f7973 100644 --- a/sys/contrib/openzfs/module/zfs/vdev_rebuild.c +++ b/sys/contrib/openzfs/module/zfs/vdev_rebuild.c @@ -807,12 +807,12 @@ vdev_rebuild_thread(void *arg) /* * Calculate the max number of in-flight bytes for top-level - * vdev scanning operations (minimum 1MB, maximum 1/4 of + * vdev scanning operations (minimum 1MB, maximum 1/2 of * arc_c_max shared by all top-level vdevs). Limits for the * issuing phase are done per top-level vdev and are handled * separately. */ - uint64_t limit = (arc_c_max / 4) / MAX(rvd->vdev_children, 1); + uint64_t limit = (arc_c_max / 2) / MAX(rvd->vdev_children, 1); vr->vr_bytes_inflight_max = MIN(limit, MAX(1ULL << 20, zfs_rebuild_vdev_limit * vd->vdev_children)); diff --git a/sys/contrib/openzfs/module/zfs/zfs_vnops.c b/sys/contrib/openzfs/module/zfs/zfs_vnops.c index a64e1e2dc83d..40d6c87a754e 100644 --- a/sys/contrib/openzfs/module/zfs/zfs_vnops.c +++ b/sys/contrib/openzfs/module/zfs/zfs_vnops.c @@ -1206,6 +1206,19 @@ zfs_clone_range(znode_t *inzp, uint64_t *inoffp, znode_t *outzp, goto unlock; } + /* + * If we are copying only one block and it is smaller than recordsize + * property, do not allow destination to grow beyond one block if it + * is not there yet. Otherwise the destination will get stuck with + * that block size forever, that can be as small as 512 bytes, no + * matter how big the destination grow later. + */ + if (len <= inblksz && inblksz < outzfsvfs->z_max_blksz && + outzp->z_size <= inblksz && outoff + len > inblksz) { + error = SET_ERROR(EINVAL); + goto unlock; + } + error = zn_rlimit_fsize(outoff + len); if (error != 0) { goto unlock; diff --git a/sys/contrib/openzfs/tests/runfiles/common.run b/sys/contrib/openzfs/tests/runfiles/common.run index 342f56d50d04..ef787c65c0f9 100644 --- a/sys/contrib/openzfs/tests/runfiles/common.run +++ b/sys/contrib/openzfs/tests/runfiles/common.run @@ -281,7 +281,7 @@ tests = ['cache_001_pos', 'cache_002_neg', 'canmount_001_pos', 'user_property_004_pos', 'version_001_neg', 'zfs_set_001_neg', 'zfs_set_002_neg', 'zfs_set_003_neg', 'property_alias_001_pos', 'mountpoint_003_pos', 'ro_props_001_pos', 'zfs_set_keylocation', - 'zfs_set_feature_activation'] + 'zfs_set_feature_activation', 'zfs_set_nomount'] tags = ['functional', 'cli_root', 'zfs_set'] [tests/functional/cli_root/zfs_share] diff --git a/sys/contrib/openzfs/tests/runfiles/sanity.run b/sys/contrib/openzfs/tests/runfiles/sanity.run index 449bf1c0f56a..ab41c05b8473 100644 --- a/sys/contrib/openzfs/tests/runfiles/sanity.run +++ b/sys/contrib/openzfs/tests/runfiles/sanity.run @@ -212,7 +212,7 @@ tests = ['cache_001_pos', 'cache_002_neg', 'canmount_001_pos', 'user_property_001_pos', 'user_property_003_neg', 'readonly_001_pos', 'user_property_004_pos', 'version_001_neg', 'zfs_set_003_neg', 'property_alias_001_pos', - 'zfs_set_keylocation', 'zfs_set_feature_activation'] + 'zfs_set_keylocation', 'zfs_set_feature_activation', 'zfs_set_nomount'] tags = ['functional', 'cli_root', 'zfs_set'] [tests/functional/cli_root/zfs_snapshot] diff --git a/sys/contrib/openzfs/tests/test-runner/bin/zts-report.py.in b/sys/contrib/openzfs/tests/test-runner/bin/zts-report.py.in index e1bbe063ab4c..558e4b57279d 100755 --- a/sys/contrib/openzfs/tests/test-runner/bin/zts-report.py.in +++ b/sys/contrib/openzfs/tests/test-runner/bin/zts-report.py.in @@ -214,6 +214,7 @@ maybe = { 'cli_root/zfs_get/zfs_get_009_pos': ['SKIP', 5479], 'cli_root/zfs_rollback/zfs_rollback_001_pos': ['FAIL', known_reason], 'cli_root/zfs_rollback/zfs_rollback_002_pos': ['FAIL', known_reason], + 'cli_root/zfs_share/zfs_share_concurrent_shares': ['FAIL', known_reason], 'cli_root/zfs_snapshot/zfs_snapshot_002_neg': ['FAIL', known_reason], 'cli_root/zfs_unshare/zfs_unshare_006_pos': ['SKIP', na_reason], 'cli_root/zpool_add/zpool_add_004_pos': ['FAIL', known_reason], @@ -259,10 +260,9 @@ if sys.platform.startswith('freebsd'): maybe.update({ 'cli_root/zfs_copies/zfs_copies_002_pos': ['FAIL', known_reason], 'cli_root/zfs_inherit/zfs_inherit_001_neg': ['FAIL', known_reason], - 'cli_root/zfs_share/zfs_share_concurrent_shares': - ['FAIL', known_reason], 'cli_root/zpool_import/zpool_import_012_pos': ['FAIL', known_reason], 'delegate/zfs_allow_003_pos': ['FAIL', known_reason], + 'delegate/zfs_allow_010_pos': ['FAIL', known_reason], 'inheritance/inherit_001_pos': ['FAIL', 11829], 'resilver/resilver_restart_001': ['FAIL', known_reason], 'pool_checkpoint/checkpoint_big_rewind': ['FAIL', 12622], diff --git a/sys/contrib/openzfs/tests/zfs-tests/tests/Makefile.am b/sys/contrib/openzfs/tests/zfs-tests/tests/Makefile.am index 1a58e6f774e9..3272a5d5816f 100644 --- a/sys/contrib/openzfs/tests/zfs-tests/tests/Makefile.am +++ b/sys/contrib/openzfs/tests/zfs-tests/tests/Makefile.am @@ -870,6 +870,7 @@ nobase_dist_datadir_zfs_tests_tests_SCRIPTS += \ functional/cli_root/zfs_set/zfs_set_003_neg.ksh \ functional/cli_root/zfs_set/zfs_set_feature_activation.ksh \ functional/cli_root/zfs_set/zfs_set_keylocation.ksh \ + functional/cli_root/zfs_set/zfs_set_nomount.ksh \ functional/cli_root/zfs_share/cleanup.ksh \ functional/cli_root/zfs_share/setup.ksh \ functional/cli_root/zfs_share/zfs_share_001_pos.ksh \ diff --git a/sys/contrib/openzfs/tests/zfs-tests/tests/functional/block_cloning/block_cloning_copyfilerange_fallback_same_txg.ksh b/sys/contrib/openzfs/tests/zfs-tests/tests/functional/block_cloning/block_cloning_copyfilerange_fallback_same_txg.ksh index 74c5a5bece60..2cd2f4763a73 100755 *** 413 LINES SKIPPED *** From nobody Sat Oct 14 22:35:40 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S7J9m4R5Jz4xL1R; Sat, 14 Oct 2023 22: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 4S7J9m2Snyz3Lk9; Sat, 14 Oct 2023 22: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=1697322940; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pkh+sgabeAXzgtfGSMS51s2mOq9ILZXOfu2SG+TcK+w=; b=noR8eJMZ7ZrPmtsyVdKD5MTknHtJ2d6UCpuxlpYw2boBfxDidYYrMTQQRgkv+bCuw8e+ja tSWkMlOQTMRwfY6TFEJWKYEST45jflKAxtbc7LvnAZ3T9amSDVl6omvI8AvfVbFiGLKBqP Ftwl/TAVKj0+wJEoS02N7bE+ZN8iob9hWei00wAZ3RIYmaB+8d5aeRl9jmaXr3DWOxOzkf dKQC3vH48ui4iipp803ahRjcxxUmdBueOEGHHnxmLimUNyndes0ytVR16u7VwmVbrubFX9 HHnGwJJHUr934PGfcjOv5iHyrDl4Y6m1eR4+PhoZecmeNnnNyuWcUeWDCNFEag== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697322940; a=rsa-sha256; cv=none; b=MpOehuQc+jSR0LTrfTXRlWqAL2lD3oH7uLeC9oR5Hbv1mIWzYBXg+sCnNh9L1V3bzm/LVG 8Vyi0P/64aQlhlVx5XOZ9wmsUpFjq3qpTm6yYpTrG+zN70yiHIieky0HDfCBoYNqOyEAz5 6P4Kf2UE1NmgR4o1gUuFQDiJCMbNFvJ+occhZ/49C1VmifGANhLWm0gQ4GpMsO8q4xIXiK Rb/hVFaoS1WqOChCt4C1f6bQnzQ/NEkFLAtv5SDG+FVFf6H56oe/zQOIWg7yE12gq0M6gk jECIypuB/JrKM7h64rurMCeP7pEVlkkRlfPXYIqYawWZfOcFNrvEUWTX9ave2Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697322940; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=pkh+sgabeAXzgtfGSMS51s2mOq9ILZXOfu2SG+TcK+w=; b=yhUmWDV/Wea5nvOIp8LuxlZdqSigM0QFioIOKzXmk3ivwMG85toJbFKeRVInK8tggmpu4Z 9YWb4+o4rNdfPDixqoysVgIY0oITXJPhWGzfICvcsocs8lzlCmJt08mxOniVHowIHTXPdN Bu5q0Gdodlq3McpP8vNtpYTqDQmrvkvgAwmTFtRyCAjezz/O8E//VAQCzB9DnrDEOJYjqH 84FklCpVUg6kbaMPXJbvLZVxKICaAVPvKPhO3vFiB80B+C4zypTaipbd+LRM2gGZdX2DFU 319/8KoJ6sz6ILHHNdzH6G/02PMEDC+es5Bbv1+7omw+4CceoofWD8Wn3RUV8A== 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 4S7J9m1Fmkzp2H; Sat, 14 Oct 2023 22:35:40 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39EMZeta094980; Sat, 14 Oct 2023 22:35:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39EMZeif094977; Sat, 14 Oct 2023 22:35:40 GMT (envelope-from git) Date: Sat, 14 Oct 2023 22:35:40 GMT Message-Id: <202310142235.39EMZeif094977@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Martin Matuska Subject: git: 6b04e2bedd33 - releng/14.0 - zfs: merge openzfs/zfs@2407f30bd (zfs-2.2-release) into stable/14 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 6b04e2bedd33f96037f4a44594d129608ad5e87c Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=6b04e2bedd33f96037f4a44594d129608ad5e87c commit 6b04e2bedd33f96037f4a44594d129608ad5e87c Author: Martin Matuska AuthorDate: 2023-10-08 07:58:51 +0000 Commit: Martin Matuska CommitDate: 2023-10-14 20:52:07 +0000 zfs: merge openzfs/zfs@2407f30bd (zfs-2.2-release) into stable/14 Notable upstream pull request merges: #15290 33d7c2d16 import: require force when cachefile hostid doesn't match on-disk #15319 bcd010d3a Reduce number of metaslab preload taskq threads #15339 1611b8e56 Add BTI landing pads to the AArch64 SHA2 assembly #15340 bc77a0c85 ARC: Remove b_cv from struct l1arc_buf_hdr #15347 3158b5d71 ARC: Drop different size headers for crypto #15350 ba7797c8d ARC: Remove b_bufcnt/b_ebufcnt from ARC headers #15353 9be8ddfb3 ZIL: Reduce maximum size of WR_COPIED to 7.5K #15362 8495536f7 zfsconcepts: add description of block cloning Obtained from: OpenZFS OpenZFS commit: 2407f30bda96f7d61a32fc38c638b3eb5b216284 OpenZFS tag: zfs-2.2.0-rc5 Approved by: re (gjb) (cherry picked from commit fdc38bc6cd28a56fbc82d6ca1d99f47569070b3a) --- sys/contrib/openzfs/.cirrus.yml | 21 ++ sys/contrib/openzfs/.gitignore | 2 +- sys/contrib/openzfs/META | 2 +- sys/contrib/openzfs/cmd/zpool/zpool_main.c | 23 +- sys/contrib/openzfs/config/zfs-build.m4 | 3 + .../openzfs/include/os/linux/zfs/sys/trace_arc.h | 12 +- sys/contrib/openzfs/include/sys/arc_impl.h | 10 +- sys/contrib/openzfs/include/sys/metaslab_impl.h | 1 - sys/contrib/openzfs/include/sys/spa_impl.h | 4 +- sys/contrib/openzfs/man/man4/zfs.4 | 11 + sys/contrib/openzfs/man/man7/zfsconcepts.7 | 40 ++- .../module/icp/asm-aarch64/sha2/sha256-armv8.S | 3 + .../module/icp/asm-aarch64/sha2/sha512-armv8.S | 2 + .../openzfs/module/os/freebsd/zfs/sysctl_os.c | 22 -- sys/contrib/openzfs/module/zfs/arc.c | 322 +++++---------------- sys/contrib/openzfs/module/zfs/metaslab.c | 23 +- sys/contrib/openzfs/module/zfs/spa.c | 46 ++- sys/contrib/openzfs/module/zfs/zil.c | 17 +- sys/contrib/openzfs/rpm/generic/zfs.spec.in | 2 +- sys/contrib/openzfs/tests/runfiles/common.run | 4 + .../openzfs/tests/zfs-tests/tests/Makefile.am | 4 + ...ock_cloning_copyfilerange_fallback_same_txg.ksh | 2 + .../cli_root/zpool_import/zpool_import.cfg | 5 + .../cli_root/zpool_import/zpool_import.kshlib | 1 + .../zpool_import/zpool_import_hostid_changed.ksh | 59 ++++ .../zpool_import_hostid_changed_cachefile.ksh | 65 +++++ ...ort_hostid_changed_cachefile_unclean_export.ksh | 75 +++++ .../zpool_import_hostid_changed_unclean_export.ksh | 70 +++++ sys/modules/zfs/zfs_config.h | 4 +- sys/modules/zfs/zfs_gitrev.h | 2 +- 30 files changed, 521 insertions(+), 336 deletions(-) diff --git a/sys/contrib/openzfs/.cirrus.yml b/sys/contrib/openzfs/.cirrus.yml new file mode 100644 index 000000000000..18b292289e20 --- /dev/null +++ b/sys/contrib/openzfs/.cirrus.yml @@ -0,0 +1,21 @@ +env: + CIRRUS_CLONE_DEPTH: 1 + ARCH: amd64 + +build_task: + matrix: + freebsd_instance: + image_family: freebsd-12-4 + freebsd_instance: + image_family: freebsd-13-2 + freebsd_instance: + image_family: freebsd-14-0-snap + prepare_script: + - pkg install -y autoconf automake libtool gettext-runtime gmake ksh93 py39-packaging py39-cffi py39-sysctl + configure_script: + - env MAKE=gmake ./autogen.sh + - env MAKE=gmake ./configure --with-config="user" --with-python=3.9 + build_script: + - gmake -j `sysctl -n kern.smp.cpus` + install_script: + - gmake install diff --git a/sys/contrib/openzfs/.gitignore b/sys/contrib/openzfs/.gitignore index 8d91dd9466c5..1ef47d921c28 100644 --- a/sys/contrib/openzfs/.gitignore +++ b/sys/contrib/openzfs/.gitignore @@ -42,6 +42,7 @@ !udev/** !.editorconfig +!.cirrus.yml !.gitignore !.gitmodules !AUTHORS @@ -60,7 +61,6 @@ !TEST !zfs.release.in - # # Normal rules # diff --git a/sys/contrib/openzfs/META b/sys/contrib/openzfs/META index 9ffe90458dbd..4178f1b5daa4 100644 --- a/sys/contrib/openzfs/META +++ b/sys/contrib/openzfs/META @@ -2,7 +2,7 @@ Meta: 1 Name: zfs Branch: 1.0 Version: 2.2.0 -Release: rc4 +Release: rc5 Release-Tags: relext License: CDDL Author: OpenZFS diff --git a/sys/contrib/openzfs/cmd/zpool/zpool_main.c b/sys/contrib/openzfs/cmd/zpool/zpool_main.c index d64fdfa5ba4c..5507f9d3fd67 100644 --- a/sys/contrib/openzfs/cmd/zpool/zpool_main.c +++ b/sys/contrib/openzfs/cmd/zpool/zpool_main.c @@ -3122,12 +3122,21 @@ zfs_force_import_required(nvlist_t *config) nvlist_t *nvinfo; state = fnvlist_lookup_uint64(config, ZPOOL_CONFIG_POOL_STATE); - (void) nvlist_lookup_uint64(config, ZPOOL_CONFIG_HOSTID, &hostid); + nvinfo = fnvlist_lookup_nvlist(config, ZPOOL_CONFIG_LOAD_INFO); + + /* + * The hostid on LOAD_INFO comes from the MOS label via + * spa_tryimport(). If its not there then we're likely talking to an + * older kernel, so use the top one, which will be from the label + * discovered in zpool_find_import(), or if a cachefile is in use, the + * local hostid. + */ + if (nvlist_lookup_uint64(nvinfo, ZPOOL_CONFIG_HOSTID, &hostid) != 0) + nvlist_lookup_uint64(config, ZPOOL_CONFIG_HOSTID, &hostid); if (state != POOL_STATE_EXPORTED && hostid != get_system_hostid()) return (B_TRUE); - nvinfo = fnvlist_lookup_nvlist(config, ZPOOL_CONFIG_LOAD_INFO); if (nvlist_exists(nvinfo, ZPOOL_CONFIG_MMP_STATE)) { mmp_state_t mmp_state = fnvlist_lookup_uint64(nvinfo, ZPOOL_CONFIG_MMP_STATE); @@ -3198,7 +3207,10 @@ do_import(nvlist_t *config, const char *newname, const char *mntopts, time_t timestamp = 0; uint64_t hostid = 0; - if (nvlist_exists(config, ZPOOL_CONFIG_HOSTNAME)) + if (nvlist_exists(nvinfo, ZPOOL_CONFIG_HOSTNAME)) + hostname = fnvlist_lookup_string(nvinfo, + ZPOOL_CONFIG_HOSTNAME); + else if (nvlist_exists(config, ZPOOL_CONFIG_HOSTNAME)) hostname = fnvlist_lookup_string(config, ZPOOL_CONFIG_HOSTNAME); @@ -3206,7 +3218,10 @@ do_import(nvlist_t *config, const char *newname, const char *mntopts, timestamp = fnvlist_lookup_uint64(config, ZPOOL_CONFIG_TIMESTAMP); - if (nvlist_exists(config, ZPOOL_CONFIG_HOSTID)) + if (nvlist_exists(nvinfo, ZPOOL_CONFIG_HOSTID)) + hostid = fnvlist_lookup_uint64(nvinfo, + ZPOOL_CONFIG_HOSTID); + else if (nvlist_exists(config, ZPOOL_CONFIG_HOSTID)) hostid = fnvlist_lookup_uint64(config, ZPOOL_CONFIG_HOSTID); diff --git a/sys/contrib/openzfs/config/zfs-build.m4 b/sys/contrib/openzfs/config/zfs-build.m4 index 5ea6aa29a3de..e4197dc1424e 100644 --- a/sys/contrib/openzfs/config/zfs-build.m4 +++ b/sys/contrib/openzfs/config/zfs-build.m4 @@ -358,6 +358,9 @@ AC_DEFUN([ZFS_AC_RPM], [ AS_IF([test -n "$udevruledir" ], [ RPM_DEFINE_UTIL=${RPM_DEFINE_UTIL}' --define "_udevruledir $(udevruledir)"' ]) + AS_IF([test -n "$bashcompletiondir" ], [ + RPM_DEFINE_UTIL=${RPM_DEFINE_UTIL}' --define "_bashcompletiondir $(bashcompletiondir)"' + ]) RPM_DEFINE_UTIL=${RPM_DEFINE_UTIL}' $(DEFINE_SYSTEMD)' RPM_DEFINE_UTIL=${RPM_DEFINE_UTIL}' $(DEFINE_PYZFS)' RPM_DEFINE_UTIL=${RPM_DEFINE_UTIL}' $(DEFINE_PAM)' diff --git a/sys/contrib/openzfs/include/os/linux/zfs/sys/trace_arc.h b/sys/contrib/openzfs/include/os/linux/zfs/sys/trace_arc.h index c494f48bb48b..f749223daa72 100644 --- a/sys/contrib/openzfs/include/os/linux/zfs/sys/trace_arc.h +++ b/sys/contrib/openzfs/include/os/linux/zfs/sys/trace_arc.h @@ -51,7 +51,6 @@ DECLARE_EVENT_CLASS(zfs_arc_buf_hdr_class, __array(uint64_t, hdr_dva_word, 2) __field(uint64_t, hdr_birth) __field(uint32_t, hdr_flags) - __field(uint32_t, hdr_bufcnt) __field(arc_buf_contents_t, hdr_type) __field(uint16_t, hdr_psize) __field(uint16_t, hdr_lsize) @@ -70,7 +69,6 @@ DECLARE_EVENT_CLASS(zfs_arc_buf_hdr_class, __entry->hdr_dva_word[1] = ab->b_dva.dva_word[1]; __entry->hdr_birth = ab->b_birth; __entry->hdr_flags = ab->b_flags; - __entry->hdr_bufcnt = ab->b_l1hdr.b_bufcnt; __entry->hdr_psize = ab->b_psize; __entry->hdr_lsize = ab->b_lsize; __entry->hdr_spa = ab->b_spa; @@ -84,12 +82,12 @@ DECLARE_EVENT_CLASS(zfs_arc_buf_hdr_class, __entry->hdr_refcount = ab->b_l1hdr.b_refcnt.rc_count; ), TP_printk("hdr { dva 0x%llx:0x%llx birth %llu " - "flags 0x%x bufcnt %u type %u psize %u lsize %u spa %llu " + "flags 0x%x type %u psize %u lsize %u spa %llu " "state_type %u access %lu mru_hits %u mru_ghost_hits %u " "mfu_hits %u mfu_ghost_hits %u l2_hits %u refcount %lli }", __entry->hdr_dva_word[0], __entry->hdr_dva_word[1], __entry->hdr_birth, __entry->hdr_flags, - __entry->hdr_bufcnt, __entry->hdr_type, __entry->hdr_psize, + __entry->hdr_type, __entry->hdr_psize, __entry->hdr_lsize, __entry->hdr_spa, __entry->hdr_state_type, __entry->hdr_access, __entry->hdr_mru_hits, __entry->hdr_mru_ghost_hits, __entry->hdr_mfu_hits, @@ -192,7 +190,6 @@ DECLARE_EVENT_CLASS(zfs_arc_miss_class, __array(uint64_t, hdr_dva_word, 2) __field(uint64_t, hdr_birth) __field(uint32_t, hdr_flags) - __field(uint32_t, hdr_bufcnt) __field(arc_buf_contents_t, hdr_type) __field(uint16_t, hdr_psize) __field(uint16_t, hdr_lsize) @@ -223,7 +220,6 @@ DECLARE_EVENT_CLASS(zfs_arc_miss_class, __entry->hdr_dva_word[1] = hdr->b_dva.dva_word[1]; __entry->hdr_birth = hdr->b_birth; __entry->hdr_flags = hdr->b_flags; - __entry->hdr_bufcnt = hdr->b_l1hdr.b_bufcnt; __entry->hdr_psize = hdr->b_psize; __entry->hdr_lsize = hdr->b_lsize; __entry->hdr_spa = hdr->b_spa; @@ -255,7 +251,7 @@ DECLARE_EVENT_CLASS(zfs_arc_miss_class, __entry->zb_blkid = zb->zb_blkid; ), TP_printk("hdr { dva 0x%llx:0x%llx birth %llu " - "flags 0x%x bufcnt %u psize %u lsize %u spa %llu state_type %u " + "flags 0x%x psize %u lsize %u spa %llu state_type %u " "access %lu mru_hits %u mru_ghost_hits %u mfu_hits %u " "mfu_ghost_hits %u l2_hits %u refcount %lli } " "bp { dva0 0x%llx:0x%llx dva1 0x%llx:0x%llx dva2 " @@ -264,7 +260,7 @@ DECLARE_EVENT_CLASS(zfs_arc_miss_class, "blkid %llu }", __entry->hdr_dva_word[0], __entry->hdr_dva_word[1], __entry->hdr_birth, __entry->hdr_flags, - __entry->hdr_bufcnt, __entry->hdr_psize, __entry->hdr_lsize, + __entry->hdr_psize, __entry->hdr_lsize, __entry->hdr_spa, __entry->hdr_state_type, __entry->hdr_access, __entry->hdr_mru_hits, __entry->hdr_mru_ghost_hits, __entry->hdr_mfu_hits, __entry->hdr_mfu_ghost_hits, diff --git a/sys/contrib/openzfs/include/sys/arc_impl.h b/sys/contrib/openzfs/include/sys/arc_impl.h index 78774792f367..adff42c55d05 100644 --- a/sys/contrib/openzfs/include/sys/arc_impl.h +++ b/sys/contrib/openzfs/include/sys/arc_impl.h @@ -159,10 +159,6 @@ struct arc_write_callback { * these two allocation states. */ typedef struct l1arc_buf_hdr { - /* for waiting on reads to complete */ - kcondvar_t b_cv; - uint8_t b_byteswap; - /* protected by arc state mutex */ arc_state_t *b_state; multilist_node_t b_arc_node; @@ -173,7 +169,7 @@ typedef struct l1arc_buf_hdr { uint32_t b_mru_ghost_hits; uint32_t b_mfu_hits; uint32_t b_mfu_ghost_hits; - uint32_t b_bufcnt; + uint8_t b_byteswap; arc_buf_t *b_buf; /* self protecting */ @@ -436,12 +432,12 @@ typedef struct l2arc_dev { */ typedef struct arc_buf_hdr_crypt { abd_t *b_rabd; /* raw encrypted data */ - dmu_object_type_t b_ot; /* object type */ - uint32_t b_ebufcnt; /* count of encrypted buffers */ /* dsobj for looking up encryption key for l2arc encryption */ uint64_t b_dsobj; + dmu_object_type_t b_ot; /* object type */ + /* encryption parameters */ uint8_t b_salt[ZIO_DATA_SALT_LEN]; uint8_t b_iv[ZIO_DATA_IV_LEN]; diff --git a/sys/contrib/openzfs/include/sys/metaslab_impl.h b/sys/contrib/openzfs/include/sys/metaslab_impl.h index d328068890cc..4f434291ddbf 100644 --- a/sys/contrib/openzfs/include/sys/metaslab_impl.h +++ b/sys/contrib/openzfs/include/sys/metaslab_impl.h @@ -250,7 +250,6 @@ struct metaslab_group { int64_t mg_activation_count; metaslab_class_t *mg_class; vdev_t *mg_vd; - taskq_t *mg_taskq; metaslab_group_t *mg_prev; metaslab_group_t *mg_next; diff --git a/sys/contrib/openzfs/include/sys/spa_impl.h b/sys/contrib/openzfs/include/sys/spa_impl.h index 588c72f6e4fa..cdf65c371337 100644 --- a/sys/contrib/openzfs/include/sys/spa_impl.h +++ b/sys/contrib/openzfs/include/sys/spa_impl.h @@ -423,7 +423,9 @@ struct spa { hrtime_t spa_ccw_fail_time; /* Conf cache write fail time */ taskq_t *spa_zvol_taskq; /* Taskq for minor management */ + taskq_t *spa_metaslab_taskq; /* Taskq for metaslab preload */ taskq_t *spa_prefetch_taskq; /* Taskq for prefetch threads */ + taskq_t *spa_upgrade_taskq; /* Taskq for upgrade jobs */ uint64_t spa_multihost; /* multihost aware (mmp) */ mmp_thread_t spa_mmp; /* multihost mmp thread */ list_t spa_leaf_list; /* list of leaf vdevs */ @@ -447,8 +449,6 @@ struct spa { */ spa_config_lock_t spa_config_lock[SCL_LOCKS]; /* config changes */ zfs_refcount_t spa_refcount; /* number of opens */ - - taskq_t *spa_upgrade_taskq; /* taskq for upgrade jobs */ }; extern char *spa_config_path; diff --git a/sys/contrib/openzfs/man/man4/zfs.4 b/sys/contrib/openzfs/man/man4/zfs.4 index 3843419731b8..cfadd79d87f3 100644 --- a/sys/contrib/openzfs/man/man4/zfs.4 +++ b/sys/contrib/openzfs/man/man4/zfs.4 @@ -402,6 +402,12 @@ Practical upper limit of total metaslabs per top-level vdev. .It Sy metaslab_preload_enabled Ns = Ns Sy 1 Ns | Ns 0 Pq int Enable metaslab group preloading. . +.It Sy metaslab_preload_limit Ns = Ns Sy 10 Pq uint +Maximum number of metaslabs per group to preload +. +.It Sy metaslab_preload_pct Ns = Ns Sy 50 Pq uint +Percentage of CPUs to run a metaslab preload taskq +. .It Sy metaslab_lba_weighting_enabled Ns = Ns Sy 1 Ns | Ns 0 Pq int Give more weight to metaslabs with lower LBAs, assuming they have greater bandwidth, @@ -2144,6 +2150,11 @@ On very fragmented pools, lowering this .Pq typically to Sy 36 KiB can improve performance. . +.It Sy zil_maxcopied Ns = Ns Sy 7680 Ns B Po 7.5 KiB Pc Pq uint +This sets the maximum number of write bytes logged via WR_COPIED. +It tunes a tradeoff between additional memory copy and possibly worse log +space efficiency vs additional range lock/unlock. +. .It Sy zil_min_commit_timeout Ns = Ns Sy 5000 Pq u64 This sets the minimum delay in nanoseconds ZIL care to delay block commit, waiting for more records. diff --git a/sys/contrib/openzfs/man/man7/zfsconcepts.7 b/sys/contrib/openzfs/man/man7/zfsconcepts.7 index 18a9e9b5cafe..1be3d961c3d7 100644 --- a/sys/contrib/openzfs/man/man7/zfsconcepts.7 +++ b/sys/contrib/openzfs/man/man7/zfsconcepts.7 @@ -28,8 +28,9 @@ .\" Copyright 2019 Richard Laager. All rights reserved. .\" Copyright 2018 Nexenta Systems, Inc. .\" Copyright 2019 Joyent, Inc. +.\" Copyright 2023 Klara, Inc. .\" -.Dd June 30, 2019 +.Dd October 6, 2023 .Dt ZFSCONCEPTS 7 .Os . @@ -205,3 +206,40 @@ practices, such as regular backups. Consider using the .Sy compression property as a less resource-intensive alternative. +.Ss Block cloning +Block cloning is a facility that allows a file (or parts of a file) to be +.Qq cloned , +that is, a shallow copy made where the existing data blocks are referenced +rather than copied. +Later modifications to the data will cause a copy of the data block to be taken +and that copy modified. +This facility is used to implement +.Qq reflinks +or +.Qq file-level copy-on-write . +.Pp +Cloned blocks are tracked in a special on-disk structure called the Block +Reference Table +.Po BRT +.Pc . +Unlike deduplication, this table has minimal overhead, so can be enabled at all +times. +.Pp +Also unlike deduplication, cloning must be requested by a user program. +Many common file copying programs, including newer versions of +.Nm /bin/cp , +will try to create clones automatically. +Look for +.Qq clone , +.Qq dedupe +or +.Qq reflink +in the documentation for more information. +.Pp +There are some limitations to block cloning. +Only whole blocks can be cloned, and blocks can not be cloned if they are not +yet written to disk, or if they are encrypted, or the source and destination +.Sy recordsize +properties differ. +The OS may add additional restrictions; +for example, most versions of Linux will not allow clones across datasets. diff --git a/sys/contrib/openzfs/module/icp/asm-aarch64/sha2/sha256-armv8.S b/sys/contrib/openzfs/module/icp/asm-aarch64/sha2/sha256-armv8.S index fa50c4e74d59..7ae486e4e229 100644 --- a/sys/contrib/openzfs/module/icp/asm-aarch64/sha2/sha256-armv8.S +++ b/sys/contrib/openzfs/module/icp/asm-aarch64/sha2/sha256-armv8.S @@ -49,6 +49,7 @@ .type zfs_sha256_block_armv7,%function .align 6 zfs_sha256_block_armv7: + hint #34 // bti c stp x29,x30,[sp,#-128]! add x29,sp,#0 @@ -1015,6 +1016,7 @@ zfs_sha256_block_armv7: .type zfs_sha256_block_armv8,%function .align 6 zfs_sha256_block_armv8: + hint #34 // bti c .Lv8_entry: stp x29,x30,[sp,#-16]! add x29,sp,#0 @@ -1155,6 +1157,7 @@ zfs_sha256_block_armv8: .type zfs_sha256_block_neon,%function .align 4 zfs_sha256_block_neon: + hint #34 // bti c .Lneon_entry: stp x29, x30, [sp, #-16]! mov x29, sp diff --git a/sys/contrib/openzfs/module/icp/asm-aarch64/sha2/sha512-armv8.S b/sys/contrib/openzfs/module/icp/asm-aarch64/sha2/sha512-armv8.S index 1683fc1ca53c..9c61eeee4d7b 100644 --- a/sys/contrib/openzfs/module/icp/asm-aarch64/sha2/sha512-armv8.S +++ b/sys/contrib/openzfs/module/icp/asm-aarch64/sha2/sha512-armv8.S @@ -73,6 +73,7 @@ .type zfs_sha512_block_armv7,%function .align 6 zfs_sha512_block_armv7: + hint #34 // bti c stp x29,x30,[sp,#-128]! add x29,sp,#0 @@ -1040,6 +1041,7 @@ zfs_sha512_block_armv7: .type zfs_sha512_block_armv8,%function .align 6 zfs_sha512_block_armv8: + hint #34 // bti c .Lv8_entry: // Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later stp x29,x30,[sp,#-16]! diff --git a/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c b/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c index 8ae2f23c3ecf..38ef590702cb 100644 --- a/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c +++ b/sys/contrib/openzfs/module/os/freebsd/zfs/sysctl_os.c @@ -596,28 +596,6 @@ SYSCTL_UINT(_vfs_zfs_metaslab, OID_AUTO, df_free_pct, " space map to continue allocations in a first-fit fashion"); /* END CSTYLED */ -/* - * Percentage of all cpus that can be used by the metaslab taskq. - */ -extern int metaslab_load_pct; - -/* BEGIN CSTYLED */ -SYSCTL_INT(_vfs_zfs_metaslab, OID_AUTO, load_pct, - CTLFLAG_RWTUN, &metaslab_load_pct, 0, - "Percentage of cpus that can be used by the metaslab taskq"); -/* END CSTYLED */ - -/* - * Max number of metaslabs per group to preload. - */ -extern uint_t metaslab_preload_limit; - -/* BEGIN CSTYLED */ -SYSCTL_UINT(_vfs_zfs_metaslab, OID_AUTO, preload_limit, - CTLFLAG_RWTUN, &metaslab_preload_limit, 0, - "Max number of metaslabs per group to preload"); -/* END CSTYLED */ - /* mmp.c */ int diff --git a/sys/contrib/openzfs/module/zfs/arc.c b/sys/contrib/openzfs/module/zfs/arc.c index 22dc0ed5e3b6..b5946e7604c0 100644 --- a/sys/contrib/openzfs/module/zfs/arc.c +++ b/sys/contrib/openzfs/module/zfs/arc.c @@ -748,8 +748,7 @@ taskq_t *arc_prune_taskq; * Other sizes */ -#define HDR_FULL_CRYPT_SIZE ((int64_t)sizeof (arc_buf_hdr_t)) -#define HDR_FULL_SIZE ((int64_t)offsetof(arc_buf_hdr_t, b_crypt_hdr)) +#define HDR_FULL_SIZE ((int64_t)sizeof (arc_buf_hdr_t)) #define HDR_L2ONLY_SIZE ((int64_t)offsetof(arc_buf_hdr_t, b_l1hdr)) /* @@ -1113,7 +1112,6 @@ buf_hash_remove(arc_buf_hdr_t *hdr) */ static kmem_cache_t *hdr_full_cache; -static kmem_cache_t *hdr_full_crypt_cache; static kmem_cache_t *hdr_l2only_cache; static kmem_cache_t *buf_cache; @@ -1134,7 +1132,6 @@ buf_fini(void) for (int i = 0; i < BUF_LOCKS; i++) mutex_destroy(BUF_HASH_LOCK(i)); kmem_cache_destroy(hdr_full_cache); - kmem_cache_destroy(hdr_full_crypt_cache); kmem_cache_destroy(hdr_l2only_cache); kmem_cache_destroy(buf_cache); } @@ -1151,7 +1148,6 @@ hdr_full_cons(void *vbuf, void *unused, int kmflag) memset(hdr, 0, HDR_FULL_SIZE); hdr->b_l1hdr.b_byteswap = DMU_BSWAP_NUMFUNCS; - cv_init(&hdr->b_l1hdr.b_cv, NULL, CV_DEFAULT, NULL); zfs_refcount_create(&hdr->b_l1hdr.b_refcnt); #ifdef ZFS_DEBUG mutex_init(&hdr->b_l1hdr.b_freeze_lock, NULL, MUTEX_DEFAULT, NULL); @@ -1163,19 +1159,6 @@ hdr_full_cons(void *vbuf, void *unused, int kmflag) return (0); } -static int -hdr_full_crypt_cons(void *vbuf, void *unused, int kmflag) -{ - (void) unused; - arc_buf_hdr_t *hdr = vbuf; - - hdr_full_cons(vbuf, unused, kmflag); - memset(&hdr->b_crypt_hdr, 0, sizeof (hdr->b_crypt_hdr)); - arc_space_consume(sizeof (hdr->b_crypt_hdr), ARC_SPACE_HDRS); - - return (0); -} - static int hdr_l2only_cons(void *vbuf, void *unused, int kmflag) { @@ -1211,7 +1194,6 @@ hdr_full_dest(void *vbuf, void *unused) arc_buf_hdr_t *hdr = vbuf; ASSERT(HDR_EMPTY(hdr)); - cv_destroy(&hdr->b_l1hdr.b_cv); zfs_refcount_destroy(&hdr->b_l1hdr.b_refcnt); #ifdef ZFS_DEBUG mutex_destroy(&hdr->b_l1hdr.b_freeze_lock); @@ -1220,16 +1202,6 @@ hdr_full_dest(void *vbuf, void *unused) arc_space_return(HDR_FULL_SIZE, ARC_SPACE_HDRS); } -static void -hdr_full_crypt_dest(void *vbuf, void *unused) -{ - (void) vbuf, (void) unused; - - hdr_full_dest(vbuf, unused); - arc_space_return(sizeof (((arc_buf_hdr_t *)NULL)->b_crypt_hdr), - ARC_SPACE_HDRS); -} - static void hdr_l2only_dest(void *vbuf, void *unused) { @@ -1285,9 +1257,6 @@ retry: hdr_full_cache = kmem_cache_create("arc_buf_hdr_t_full", HDR_FULL_SIZE, 0, hdr_full_cons, hdr_full_dest, NULL, NULL, NULL, 0); - hdr_full_crypt_cache = kmem_cache_create("arc_buf_hdr_t_full_crypt", - HDR_FULL_CRYPT_SIZE, 0, hdr_full_crypt_cons, hdr_full_crypt_dest, - NULL, NULL, NULL, 0); hdr_l2only_cache = kmem_cache_create("arc_buf_hdr_t_l2only", HDR_L2ONLY_SIZE, 0, hdr_l2only_cons, hdr_l2only_dest, NULL, NULL, NULL, 0); @@ -1995,7 +1964,6 @@ arc_buf_untransform_in_place(arc_buf_t *buf) arc_buf_size(buf)); buf->b_flags &= ~ARC_BUF_FLAG_ENCRYPTED; buf->b_flags &= ~ARC_BUF_FLAG_COMPRESSED; - hdr->b_crypt_hdr.b_ebufcnt -= 1; } /* @@ -2230,7 +2198,6 @@ arc_evictable_space_increment(arc_buf_hdr_t *hdr, arc_state_t *state) ASSERT(HDR_HAS_L1HDR(hdr)); if (GHOST_STATE(state)) { - ASSERT0(hdr->b_l1hdr.b_bufcnt); ASSERT3P(hdr->b_l1hdr.b_buf, ==, NULL); ASSERT3P(hdr->b_l1hdr.b_pabd, ==, NULL); ASSERT(!HDR_HAS_RABD(hdr)); @@ -2270,7 +2237,6 @@ arc_evictable_space_decrement(arc_buf_hdr_t *hdr, arc_state_t *state) ASSERT(HDR_HAS_L1HDR(hdr)); if (GHOST_STATE(state)) { - ASSERT0(hdr->b_l1hdr.b_bufcnt); ASSERT3P(hdr->b_l1hdr.b_buf, ==, NULL); ASSERT3P(hdr->b_l1hdr.b_pabd, ==, NULL); ASSERT(!HDR_HAS_RABD(hdr)); @@ -2386,7 +2352,9 @@ arc_buf_info(arc_buf_t *ab, arc_buf_info_t *abi, int state_index) l2hdr = &hdr->b_l2hdr; if (l1hdr) { - abi->abi_bufcnt = l1hdr->b_bufcnt; + abi->abi_bufcnt = 0; + for (arc_buf_t *buf = l1hdr->b_buf; buf; buf = buf->b_next) + abi->abi_bufcnt++; abi->abi_access = l1hdr->b_arc_access; abi->abi_mru_hits = l1hdr->b_mru_hits; abi->abi_mru_ghost_hits = l1hdr->b_mru_ghost_hits; @@ -2414,7 +2382,6 @@ arc_change_state(arc_state_t *new_state, arc_buf_hdr_t *hdr) { arc_state_t *old_state; int64_t refcnt; - uint32_t bufcnt; boolean_t update_old, update_new; arc_buf_contents_t type = arc_buf_type(hdr); @@ -2428,19 +2395,16 @@ arc_change_state(arc_state_t *new_state, arc_buf_hdr_t *hdr) if (HDR_HAS_L1HDR(hdr)) { old_state = hdr->b_l1hdr.b_state; refcnt = zfs_refcount_count(&hdr->b_l1hdr.b_refcnt); - bufcnt = hdr->b_l1hdr.b_bufcnt; - update_old = (bufcnt > 0 || hdr->b_l1hdr.b_pabd != NULL || - HDR_HAS_RABD(hdr)); + update_old = (hdr->b_l1hdr.b_buf != NULL || + hdr->b_l1hdr.b_pabd != NULL || HDR_HAS_RABD(hdr)); - IMPLY(GHOST_STATE(old_state), bufcnt == 0); - IMPLY(GHOST_STATE(new_state), bufcnt == 0); IMPLY(GHOST_STATE(old_state), hdr->b_l1hdr.b_buf == NULL); IMPLY(GHOST_STATE(new_state), hdr->b_l1hdr.b_buf == NULL); - IMPLY(old_state == arc_anon, bufcnt <= 1); + IMPLY(old_state == arc_anon, hdr->b_l1hdr.b_buf == NULL || + ARC_BUF_LAST(hdr->b_l1hdr.b_buf)); } else { old_state = arc_l2c_only; refcnt = 0; - bufcnt = 0; update_old = B_FALSE; } update_new = update_old; @@ -2488,14 +2452,12 @@ arc_change_state(arc_state_t *new_state, arc_buf_hdr_t *hdr) if (update_new && new_state != arc_l2c_only) { ASSERT(HDR_HAS_L1HDR(hdr)); if (GHOST_STATE(new_state)) { - ASSERT0(bufcnt); /* * When moving a header to a ghost state, we first - * remove all arc buffers. Thus, we'll have a - * bufcnt of zero, and no arc buffer to use for - * the reference. As a result, we use the arc - * header pointer for the reference. + * remove all arc buffers. Thus, we'll have no arc + * buffer to use for the reference. As a result, we + * use the arc header pointer for the reference. */ (void) zfs_refcount_add_many( &new_state->arcs_size[type], @@ -2503,7 +2465,6 @@ arc_change_state(arc_state_t *new_state, arc_buf_hdr_t *hdr) ASSERT3P(hdr->b_l1hdr.b_pabd, ==, NULL); ASSERT(!HDR_HAS_RABD(hdr)); } else { - uint32_t buffers = 0; /* * Each individual buffer holds a unique reference, @@ -2512,8 +2473,6 @@ arc_change_state(arc_state_t *new_state, arc_buf_hdr_t *hdr) */ for (arc_buf_t *buf = hdr->b_l1hdr.b_buf; buf != NULL; buf = buf->b_next) { - ASSERT3U(bufcnt, !=, 0); - buffers++; /* * When the arc_buf_t is sharing the data @@ -2529,7 +2488,6 @@ arc_change_state(arc_state_t *new_state, arc_buf_hdr_t *hdr) &new_state->arcs_size[type], arc_buf_size(buf), buf); } - ASSERT3U(bufcnt, ==, buffers); if (hdr->b_l1hdr.b_pabd != NULL) { (void) zfs_refcount_add_many( @@ -2548,7 +2506,6 @@ arc_change_state(arc_state_t *new_state, arc_buf_hdr_t *hdr) if (update_old && old_state != arc_l2c_only) { ASSERT(HDR_HAS_L1HDR(hdr)); if (GHOST_STATE(old_state)) { - ASSERT0(bufcnt); ASSERT3P(hdr->b_l1hdr.b_pabd, ==, NULL); ASSERT(!HDR_HAS_RABD(hdr)); @@ -2564,7 +2521,6 @@ arc_change_state(arc_state_t *new_state, arc_buf_hdr_t *hdr) &old_state->arcs_size[type], HDR_GET_LSIZE(hdr), hdr); } else { - uint32_t buffers = 0; /* * Each individual buffer holds a unique reference, @@ -2573,8 +2529,6 @@ arc_change_state(arc_state_t *new_state, arc_buf_hdr_t *hdr) */ for (arc_buf_t *buf = hdr->b_l1hdr.b_buf; buf != NULL; buf = buf->b_next) { - ASSERT3U(bufcnt, !=, 0); - buffers++; /* * When the arc_buf_t is sharing the data @@ -2590,7 +2544,6 @@ arc_change_state(arc_state_t *new_state, arc_buf_hdr_t *hdr) &old_state->arcs_size[type], arc_buf_size(buf), buf); } - ASSERT3U(bufcnt, ==, buffers); ASSERT(hdr->b_l1hdr.b_pabd != NULL || HDR_HAS_RABD(hdr)); @@ -2838,9 +2791,6 @@ arc_buf_alloc_impl(arc_buf_hdr_t *hdr, spa_t *spa, const zbookmark_phys_t *zb, VERIFY3P(buf->b_data, !=, NULL); hdr->b_l1hdr.b_buf = buf; - hdr->b_l1hdr.b_bufcnt += 1; - if (encrypted) - hdr->b_crypt_hdr.b_ebufcnt += 1; /* * If the user wants the data from the hdr, we need to either copy or @@ -3082,8 +3032,6 @@ arc_buf_remove(arc_buf_hdr_t *hdr, arc_buf_t *buf) } buf->b_next = NULL; ASSERT3P(lastbuf, !=, buf); - IMPLY(hdr->b_l1hdr.b_bufcnt > 0, lastbuf != NULL); - IMPLY(hdr->b_l1hdr.b_bufcnt > 0, hdr->b_l1hdr.b_buf != NULL); IMPLY(lastbuf != NULL, ARC_BUF_LAST(lastbuf)); return (lastbuf); @@ -3122,22 +3070,20 @@ arc_buf_destroy_impl(arc_buf_t *buf) } buf->b_data = NULL; - ASSERT(hdr->b_l1hdr.b_bufcnt > 0); - hdr->b_l1hdr.b_bufcnt -= 1; - - if (ARC_BUF_ENCRYPTED(buf)) { - hdr->b_crypt_hdr.b_ebufcnt -= 1; - - /* - * If we have no more encrypted buffers and we've - * already gotten a copy of the decrypted data we can - * free b_rabd to save some space. - */ - if (hdr->b_crypt_hdr.b_ebufcnt == 0 && - HDR_HAS_RABD(hdr) && hdr->b_l1hdr.b_pabd != NULL && - !HDR_IO_IN_PROGRESS(hdr)) { - arc_hdr_free_abd(hdr, B_TRUE); + /* + * If we have no more encrypted buffers and we've already + * gotten a copy of the decrypted data we can free b_rabd + * to save some space. + */ + if (ARC_BUF_ENCRYPTED(buf) && HDR_HAS_RABD(hdr) && + hdr->b_l1hdr.b_pabd != NULL && !HDR_IO_IN_PROGRESS(hdr)) { + arc_buf_t *b; + for (b = hdr->b_l1hdr.b_buf; b; b = b->b_next) { + if (b != buf && ARC_BUF_ENCRYPTED(b)) + break; } + if (b == NULL) + arc_hdr_free_abd(hdr, B_TRUE); } } @@ -3298,11 +3244,7 @@ arc_hdr_alloc(uint64_t spa, int32_t psize, int32_t lsize, arc_buf_hdr_t *hdr; VERIFY(type == ARC_BUFC_DATA || type == ARC_BUFC_METADATA); - if (protected) { - hdr = kmem_cache_alloc(hdr_full_crypt_cache, KM_PUSHPAGE); - } else { - hdr = kmem_cache_alloc(hdr_full_cache, KM_PUSHPAGE); - } + hdr = kmem_cache_alloc(hdr_full_cache, KM_PUSHPAGE); ASSERT(HDR_EMPTY(hdr)); #ifdef ZFS_DEBUG @@ -3325,7 +3267,6 @@ arc_hdr_alloc(uint64_t spa, int32_t psize, int32_t lsize, hdr->b_l1hdr.b_mru_ghost_hits = 0; hdr->b_l1hdr.b_mfu_hits = 0; hdr->b_l1hdr.b_mfu_ghost_hits = 0; - hdr->b_l1hdr.b_bufcnt = 0; hdr->b_l1hdr.b_buf = NULL; ASSERT(zfs_refcount_is_zero(&hdr->b_l1hdr.b_refcnt)); @@ -3351,16 +3292,6 @@ arc_hdr_realloc(arc_buf_hdr_t *hdr, kmem_cache_t *old, kmem_cache_t *new) ASSERT((old == hdr_full_cache && new == hdr_l2only_cache) || (old == hdr_l2only_cache && new == hdr_full_cache)); - /* - * if the caller wanted a new full header and the header is to be - * encrypted we will actually allocate the header from the full crypt - * cache instead. The same applies to freeing from the old cache. - */ - if (HDR_PROTECTED(hdr) && new == hdr_full_cache) - new = hdr_full_crypt_cache; - if (HDR_PROTECTED(hdr) && old == hdr_full_cache) - old = hdr_full_crypt_cache; - nhdr = kmem_cache_alloc(new, KM_PUSHPAGE); ASSERT(MUTEX_HELD(HDR_LOCK(hdr))); @@ -3368,7 +3299,7 @@ arc_hdr_realloc(arc_buf_hdr_t *hdr, kmem_cache_t *old, kmem_cache_t *new) memcpy(nhdr, hdr, HDR_L2ONLY_SIZE); - if (new == hdr_full_cache || new == hdr_full_crypt_cache) { + if (new == hdr_full_cache) { arc_hdr_set_flags(nhdr, ARC_FLAG_HAS_L1HDR); /* * arc_access and arc_change_state need to be aware that a @@ -3382,7 +3313,6 @@ arc_hdr_realloc(arc_buf_hdr_t *hdr, kmem_cache_t *old, kmem_cache_t *new) ASSERT(!HDR_HAS_RABD(hdr)); } else { ASSERT3P(hdr->b_l1hdr.b_buf, ==, NULL); - ASSERT0(hdr->b_l1hdr.b_bufcnt); #ifdef ZFS_DEBUG ASSERT3P(hdr->b_l1hdr.b_freeze_cksum, ==, NULL); #endif @@ -3448,126 +3378,6 @@ arc_hdr_realloc(arc_buf_hdr_t *hdr, kmem_cache_t *old, kmem_cache_t *new) return (nhdr); } -/* - * This function allows an L1 header to be reallocated as a crypt - * header and vice versa. If we are going to a crypt header, the - * new fields will be zeroed out. - */ -static arc_buf_hdr_t * -arc_hdr_realloc_crypt(arc_buf_hdr_t *hdr, boolean_t need_crypt) -{ - arc_buf_hdr_t *nhdr; - arc_buf_t *buf; - kmem_cache_t *ncache, *ocache; - - /* - * This function requires that hdr is in the arc_anon state. - * Therefore it won't have any L2ARC data for us to worry - * about copying. - */ - ASSERT(HDR_HAS_L1HDR(hdr)); - ASSERT(!HDR_HAS_L2HDR(hdr)); - ASSERT3U(!!HDR_PROTECTED(hdr), !=, need_crypt); - ASSERT3P(hdr->b_l1hdr.b_state, ==, arc_anon); - ASSERT(!multilist_link_active(&hdr->b_l1hdr.b_arc_node)); - ASSERT(!list_link_active(&hdr->b_l2hdr.b_l2node)); - ASSERT3P(hdr->b_hash_next, ==, NULL); - - if (need_crypt) { - ncache = hdr_full_crypt_cache; - ocache = hdr_full_cache; - } else { - ncache = hdr_full_cache; - ocache = hdr_full_crypt_cache; - } - - nhdr = kmem_cache_alloc(ncache, KM_PUSHPAGE); - - /* - * Copy all members that aren't locks or condvars to the new header. - * No lists are pointing to us (as we asserted above), so we don't - * need to worry about the list nodes. - */ - nhdr->b_dva = hdr->b_dva; - nhdr->b_birth = hdr->b_birth; - nhdr->b_type = hdr->b_type; - nhdr->b_flags = hdr->b_flags; - nhdr->b_psize = hdr->b_psize; - nhdr->b_lsize = hdr->b_lsize; - nhdr->b_spa = hdr->b_spa; -#ifdef ZFS_DEBUG - nhdr->b_l1hdr.b_freeze_cksum = hdr->b_l1hdr.b_freeze_cksum; -#endif - nhdr->b_l1hdr.b_bufcnt = hdr->b_l1hdr.b_bufcnt; - nhdr->b_l1hdr.b_byteswap = hdr->b_l1hdr.b_byteswap; - nhdr->b_l1hdr.b_state = hdr->b_l1hdr.b_state; - nhdr->b_l1hdr.b_arc_access = hdr->b_l1hdr.b_arc_access; - nhdr->b_l1hdr.b_mru_hits = hdr->b_l1hdr.b_mru_hits; - nhdr->b_l1hdr.b_mru_ghost_hits = hdr->b_l1hdr.b_mru_ghost_hits; - nhdr->b_l1hdr.b_mfu_hits = hdr->b_l1hdr.b_mfu_hits; - nhdr->b_l1hdr.b_mfu_ghost_hits = hdr->b_l1hdr.b_mfu_ghost_hits; - nhdr->b_l1hdr.b_acb = hdr->b_l1hdr.b_acb; - nhdr->b_l1hdr.b_pabd = hdr->b_l1hdr.b_pabd; - - /* - * This zfs_refcount_add() exists only to ensure that the individual - * arc buffers always point to a header that is referenced, avoiding - * a small race condition that could trigger ASSERTs. - */ - (void) zfs_refcount_add(&nhdr->b_l1hdr.b_refcnt, FTAG); - nhdr->b_l1hdr.b_buf = hdr->b_l1hdr.b_buf; - for (buf = nhdr->b_l1hdr.b_buf; buf != NULL; buf = buf->b_next) - buf->b_hdr = nhdr; - - zfs_refcount_transfer(&nhdr->b_l1hdr.b_refcnt, &hdr->b_l1hdr.b_refcnt); - (void) zfs_refcount_remove(&nhdr->b_l1hdr.b_refcnt, FTAG); - ASSERT0(zfs_refcount_count(&hdr->b_l1hdr.b_refcnt)); - - if (need_crypt) { - arc_hdr_set_flags(nhdr, ARC_FLAG_PROTECTED); - } else { - arc_hdr_clear_flags(nhdr, ARC_FLAG_PROTECTED); - } - - /* unset all members of the original hdr */ - memset(&hdr->b_dva, 0, sizeof (dva_t)); - hdr->b_birth = 0; - hdr->b_type = 0; - hdr->b_flags = 0; - hdr->b_psize = 0; - hdr->b_lsize = 0; - hdr->b_spa = 0; -#ifdef ZFS_DEBUG - hdr->b_l1hdr.b_freeze_cksum = NULL; -#endif - hdr->b_l1hdr.b_buf = NULL; - hdr->b_l1hdr.b_bufcnt = 0; - hdr->b_l1hdr.b_byteswap = 0; - hdr->b_l1hdr.b_state = NULL; - hdr->b_l1hdr.b_arc_access = 0; - hdr->b_l1hdr.b_mru_hits = 0; - hdr->b_l1hdr.b_mru_ghost_hits = 0; - hdr->b_l1hdr.b_mfu_hits = 0; - hdr->b_l1hdr.b_mfu_ghost_hits = 0; - hdr->b_l1hdr.b_acb = NULL; - hdr->b_l1hdr.b_pabd = NULL; - - if (ocache == hdr_full_crypt_cache) { - ASSERT(!HDR_HAS_RABD(hdr)); - hdr->b_crypt_hdr.b_ot = DMU_OT_NONE; - hdr->b_crypt_hdr.b_ebufcnt = 0; - hdr->b_crypt_hdr.b_dsobj = 0; - memset(hdr->b_crypt_hdr.b_salt, 0, ZIO_DATA_SALT_LEN); - memset(hdr->b_crypt_hdr.b_iv, 0, ZIO_DATA_IV_LEN); - memset(hdr->b_crypt_hdr.b_mac, 0, ZIO_DATA_MAC_LEN); - } - - buf_discard_identity(hdr); - kmem_cache_free(ocache, hdr); - - return (nhdr); -} - /* * This function is used by the send / receive code to convert a newly * allocated arc_buf_t to one that is suitable for a raw encrypted write. It @@ -3587,8 +3397,7 @@ arc_convert_to_raw(arc_buf_t *buf, uint64_t dsobj, boolean_t byteorder, ASSERT3P(hdr->b_l1hdr.b_state, ==, arc_anon); buf->b_flags |= (ARC_BUF_FLAG_COMPRESSED | ARC_BUF_FLAG_ENCRYPTED); - if (!HDR_PROTECTED(hdr)) - hdr = arc_hdr_realloc_crypt(hdr, B_TRUE); + arc_hdr_set_flags(hdr, ARC_FLAG_PROTECTED); hdr->b_crypt_hdr.b_dsobj = dsobj; hdr->b_crypt_hdr.b_ot = ot; hdr->b_l1hdr.b_byteswap = (byteorder == ZFS_HOST_BYTEORDER) ? @@ -3789,8 +3598,6 @@ static void arc_hdr_destroy(arc_buf_hdr_t *hdr) { if (HDR_HAS_L1HDR(hdr)) { - ASSERT(hdr->b_l1hdr.b_buf == NULL || - hdr->b_l1hdr.b_bufcnt > 0); *** 836 LINES SKIPPED *** From nobody Sat Oct 14 22:35:41 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S7J9n4Y32z4xLFC; Sat, 14 Oct 2023 22: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 4S7J9n3TKTz3Lq1; Sat, 14 Oct 2023 22:35:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697322941; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tcdcvSs6Nd/6H4Tbk9LNXd5STnxfdHiWHSGoMpidUJo=; b=Vd5ofXbBFF5jggE1c/OBP4K5pUkP4ErGsnmYfAipLvQg5Dg6JFBU+tAUNLKv73b9obeRER 2SRRvd2wsMGnPyvtCU8Fmnd/e4f9QMZX0AnZo48FOtCkLghgKtODP40Wqs0XA++D5pC3Pg TgTWjuBHU1jdTQcnnMwKR0oKCXx/Xr9lunwoOYdWpya9oXeHfm+bAx9fVNH8rgW+3fGnDv C58rLyIlPgmgAhTPYE/KXF6sMwWu4b+o3rcVPVqnJMxdM9n9WyU5GuaAeAR0UHBqB0XHMh vEAJat6oBeCH8SiHWuzKdP7o+MeXK1f/0j7gFBclOjZDjl9NwhPPAINkYn/TyQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697322941; a=rsa-sha256; cv=none; b=dUqdYbF1tI+bf3DCr/XNhsd+yXKkqra4TTPGvPcXviC9IPj0VLDTs7+IHI1uzhLtR9IHBW grK3qjwqvBihfEJ3eXuFSZ1PXrpvoDHULIYjIA6eUBi3TqfH6nA8DxFP7r+MzhLm97EmZt ZTY11h5VDy8mHmepuWFZrQxQNYtgTJ4DK2PTDKvSm50XWpmEqnHKdJFiAs7OZkNPGzO7gN z3T6BZrFbUyekT31peT8or7eHufMhNPx59+OPUVQgserPBdY8QOVKCCMw7UOJUWZDdLLTB Idu0r6vtkCJuFJLRv1gUZ5BFFIdDzQPfZ7TpiEOI0j3ojSD9/iKn/O5746s/CA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697322941; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=tcdcvSs6Nd/6H4Tbk9LNXd5STnxfdHiWHSGoMpidUJo=; b=qQAcJjP/Yxe1r3wJCCg7taX1fu2RAFp6cSltbh2Zz1T2gcAx6zDC0faxkjlLQhaStBNSh4 u3qnQUqF/9MxdR6ZWDXqYwtPfIuETcSh9lpT6uEGp+BethzvRBP0YNDuxKWHNZJ7mG5LVi E8cEyrpU1RlHads8Dj9gtqqzQtdrmEusPKA3cino9ZpQmx3W+OJt5gg97Z4hFoO1iIxCrX C+c89aaebWUNM52OMLHfwZwyfhtrOTtnJ5mkZa3onbqcJs8+E9cbaAXxTemQdj2g90f1v2 eTrUsX9iHiv7PsbUK9wS/dSbLXXCj24puRQWkxM/KkjmanyMkPc42oujf7RDMQ== 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 4S7J9n2Kwnzp2J; Sat, 14 Oct 2023 22:35:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39EMZfhg095031; Sat, 14 Oct 2023 22:35:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39EMZftN095028; Sat, 14 Oct 2023 22:35:41 GMT (envelope-from git) Date: Sat, 14 Oct 2023 22:35:41 GMT Message-Id: <202310142235.39EMZftN095028@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Martin Matuska Subject: git: d5a6a30019e4 - releng/14.0 - zfs: merge openzfs/zfs@2bba9fd47 (zfs-2.2-release) into stable/14 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: d5a6a30019e4732361e015b8bb27fb4dfd32c6fd Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=d5a6a30019e4732361e015b8bb27fb4dfd32c6fd commit d5a6a30019e4732361e015b8bb27fb4dfd32c6fd Author: Martin Matuska AuthorDate: 2023-10-13 08:17:40 +0000 Commit: Martin Matuska CommitDate: 2023-10-14 20:52:26 +0000 zfs: merge openzfs/zfs@2bba9fd47 (zfs-2.2-release) into stable/14 Notable upstream pull request merges: #15368 f6e6e77ed FreeBSD: Reduce divergence from in-tree sources #15395 2bba9fd47 Zpool can start allocating from metaslab before TRIMs have completed Obtained from: OpenZFS OpenZFS commit: 2bba9fd479f5dce01df31bceb532c5a9e9d5c5ca Approved by: re (gjb) (cherry picked from commit 69816d277f1621890d3964422b921ee52d75c1bf) --- sys/contrib/openzfs/.gitignore | 1 + sys/contrib/openzfs/.mailmap | 189 +++++++++++ sys/contrib/openzfs/AUTHORS | 361 +++++++++++++++++++-- sys/contrib/openzfs/config/zfs-build.m4 | 1 + .../openzfs/include/os/freebsd/spl/sys/ctype.h | 2 +- sys/contrib/openzfs/man/man4/zfs.4 | 57 ---- .../openzfs/module/os/linux/zfs/zpl_file_range.c | 8 +- sys/contrib/openzfs/module/os/linux/zfs/zvol_os.c | 12 - sys/contrib/openzfs/module/zfs/vdev_trim.c | 28 +- sys/contrib/openzfs/rpm/generic/zfs.spec.in | 9 + sys/contrib/openzfs/scripts/Makefile.am | 1 + sys/contrib/openzfs/scripts/update_authors.pl | 322 ++++++++++++++++++ sys/contrib/openzfs/tests/runfiles/common.run | 4 - sys/contrib/openzfs/tests/runfiles/linux.run | 7 + .../openzfs/tests/test-runner/bin/zts-report.py.in | 1 - .../openzfs/tests/zfs-tests/include/tunables.cfg | 2 +- .../zfs_share/zfs_share_concurrent_shares.ksh | 39 ++- .../functional/delegate/delegate_common.kshlib | 4 +- sys/modules/zfs/zfs_config.h | 4 +- sys/modules/zfs/zfs_gitrev.h | 2 +- 20 files changed, 933 insertions(+), 121 deletions(-) diff --git a/sys/contrib/openzfs/.gitignore b/sys/contrib/openzfs/.gitignore index 1ef47d921c28..47d17ae16d34 100644 --- a/sys/contrib/openzfs/.gitignore +++ b/sys/contrib/openzfs/.gitignore @@ -45,6 +45,7 @@ !.cirrus.yml !.gitignore !.gitmodules +!.mailmap !AUTHORS !autogen.sh !CODE_OF_CONDUCT.md diff --git a/sys/contrib/openzfs/.mailmap b/sys/contrib/openzfs/.mailmap new file mode 100644 index 000000000000..46ef016b93f8 --- /dev/null +++ b/sys/contrib/openzfs/.mailmap @@ -0,0 +1,189 @@ +# This file maps the name+email seen in a commit back to a canonical +# name+email. Git will replace the commit name/email with the canonical version +# wherever it sees it. +# +# If there is a commit in the history with a "wrong" name or email, list it +# here. If you regularly commit with an alternate name or email address and +# would like to ensure that you are always listed consistently in the repo, add +# mapping here. +# +# On the other hand, if you use multiple names or email addresses legitimately +# (eg you use a company email address for your paid OpenZFS work, and a +# personal address for your evening side projects), then don't map one to the +# other here. +# +# The most common formats are: +# +# Canonical Name +# Canonical Name +# Canonical Name Commit Name +# +# See https://git-scm.com/docs/gitmailmap for more info. + +# These maps are making names consistent where they have varied but the email +# address has never changed. In most cases, the full name is in the +# Signed-off-by of a commit with a matching author. +Ahelenia Ziemiańska +Ahelenia Ziemiańska +Alex John +Andreas Dilger +Andrew Walker +Benedikt Neuffer +Chengfei Zhu +Chris Lindee +Colm Buckley +Crag Wang +Damian Szuberski +Daniel Kolesa +Debabrata Banerjee +Finix Yan +Gaurav Kumar +Gionatan Danti +Glenn Washburn +Gordan Bobic +Gregory Bartholomew +hedong zhang +InsanePrawn +Jason Cohen +Jason Harmening +Jeremy Faulkner +Jinshan Xiong +John Poduska +Justin Scholz +Ka Ho Ng +Kash Pande +Kay Pedersen +KernelOfTruth +Liu Hua +Liu Qing +loli10K +Matthias Blankertz +Michael Gmelin +Olivier Mazouffre +Piotr Kubaj +Quentin Zdanis +Roberto Ricci +Rob Norris +Rob Norris +Sam Lunt +Sanjeev Bagewadi +Stoiko Ivanov +Tamas TEVESZ +WHR +Yanping Gao +Youzhong Yang + +# Commits from strange places, long ago +Brian Behlendorf +Brian Behlendorf +Brian Behlendorf +Brian Behlendorf +Brian Behlendorf +Herb Wartens +Ned Bass +Tulsi Jain + +# Mappings from Github no-reply addresses +ajs124 +Alek Pinchuk +Alexander Lobakin +Alexey Smirnoff +Allen Holl <65494904+allen-4@users.noreply.github.com> +Ameer Hamza <106930537+ixhamza@users.noreply.github.com> +Andrew J. Hesford <48421688+ahesford@users.noreply.github.com>> +Andrew Sun +Aron Xu +Arun KV <65647132+arun-kv@users.noreply.github.com> +Ben Wolsieffer +bernie1995 <42413912+bernie1995@users.noreply.github.com> +Boris Protopopov +Brad Forschinger +Brandon Thetford +buzzingwires <131118055+buzzingwires@users.noreply.github.com> +Cedric Maunoury <38213715+cedricmaunoury@users.noreply.github.com> +Charles Suh +Dacian Reece-Stremtan <35844628+dacianstremtan@users.noreply.github.com> +Damian Szuberski <30863496+szubersk@users.noreply.github.com> +Daniel Hiepler <32984777+heeplr@users.noreply.github.com> +Daniel Kobras +Daniel Reichelt +David Quigley +DHE +Dmitri John Ledkov <19779+xnox@users.noreply.github.com> +Dries Michiels <32487486+driesmp@users.noreply.github.com> +Edmund Nadolski <137826107+ednadolski-ix@users.noreply.github.com> +Érico Nogueira <34201958+ericonr@users.noreply.github.com> +Fedor Uporov <60701163+fuporovvStack@users.noreply.github.com> +Felix Dörre +Felix Neumärker <34678034+xdch47@users.noreply.github.com> +Finix Yan +Gaurav Kumar +George Gaydarov +Georgy Yakovlev <168902+gyakovlev@users.noreply.github.com> +Gerardwx +Gian-Carlo DeFazio +Giuseppe Di Natale +Hajo Möller +Harry Mallon <1816667+hjmallon@users.noreply.github.com> +Hiếu Lê +Jake Howard +James Cowgill +Jason King +Jeff Dike <52420226+jdike@users.noreply.github.com> +Jitendra Patidar <53164267+jsai20@users.noreply.github.com> +João Carlos Mendes Luís +John Eismeier <32205350+jeis2497052@users.noreply.github.com> +John L. Hammond <35266395+jhammond-intel@users.noreply.github.com> +John-Mark Gurney +John Ramsden +Jonathon Fernyhough <559369+jonathonf@users.noreply.github.com> +Justin Hibbits +Kevin Jin <33590050+jxdking@users.noreply.github.com> +Kevin P. Fleming +Krzysztof Piecuch <3964215+pikrzysztof@users.noreply.github.com> +Kyle Evans +Laurențiu Nicola +loli10K +Lorenz Hüdepohl +Luís Henriques <73643340+lumigch@users.noreply.github.com> +Marcin Skarbek +Matt Fiddaman <81489167+matt-fidd@users.noreply.github.com> +Max Zettlmeißl <6818198+maxz@users.noreply.github.com> +Michael Niewöhner +Michael Zhivich <33133421+mzhivich@users.noreply.github.com> +Mo Zhou <5723047+cdluminate@users.noreply.github.com> +Nick Mattis +omni <79493359+omnivagant@users.noreply.github.com> +Pablo Correa Gómez <32678034+pablofsf@users.noreply.github.com> +Paul Zuchowski <31706010+PaulZ-98@users.noreply.github.com> +Peter Ashford +Peter Dave Hello +Peter Wirdemo <4224155+pewo@users.noreply.github.com> +Petros Koutoupis +Ping Huang <101400146+hpingfs@users.noreply.github.com> +Piotr P. Stefaniak +Richard Allen <33836503+belperite@users.noreply.github.com> +Rich Ercolani <214141+rincebrain@users.noreply.github.com> +Rob Wing <98866084+rob-wing@users.noreply.github.com> +Roman Strashkin +Ryan Hirasaki <4690732+RyanHir@users.noreply.github.com> +Samuel Wycliffe J <115969550+samwyc@users.noreply.github.com> +Samuel Wycliffe <50765275+npc203@users.noreply.github.com> +Savyasachee Jha +Scott Colby +Sean Eric Fagan +Spencer Kinny <30333052+Spencer-Kinny@users.noreply.github.com> +Srikanth N S <75025422+nssrikanth@users.noreply.github.com> +Thomas Geppert +Tim Crawford +Tom Matthews +Tony Perkins <62951051+tony-zfs@users.noreply.github.com> +Torsten Wörtwein +Tulsi Jain +Václav Skála <33496485+vaclavskala@users.noreply.github.com> +Violet Purcell <66446404+vimproved@users.noreply.github.com> +Vipin Kumar Verma <75025470+vermavipinkumar@users.noreply.github.com> +Wolfgang Bumiller +xtouqh <72357159+xtouqh@users.noreply.github.com> +Yuri Pankov <113725409+yuripv@users.noreply.github.com> +Yuri Pankov <82001006+yuripv@users.noreply.github.com> diff --git a/sys/contrib/openzfs/AUTHORS b/sys/contrib/openzfs/AUTHORS index c2af58d75085..be1efb87b34c 100644 --- a/sys/contrib/openzfs/AUTHORS +++ b/sys/contrib/openzfs/AUTHORS @@ -10,228 +10,450 @@ PAST MAINTAINERS: CONTRIBUTORS: Aaron Fineman + Adam D. Moss Adam Leventhal Adam Stevko + adisbladis + Adrian Chadd + Ahelenia Ziemiańska Ahmed G + Aidan Harris + AJ Jordan + ajs124 Akash Ayare + Akash B Alan Somers Alar Aun Albert Lee Alec Salazar + Alejandro Colomar Alejandro R. Sedeño Alek Pinchuk Aleksa Sarai - Alex Braunegg - Alex McWhirter - Alex Reece - Alex Wilson - Alex Zhuravlev Alexander Eremin + Alexander Lobakin Alexander Motin Alexander Pyhalov + Alexander Richardson Alexander Stetsenko + Alex Braunegg Alexey Shvetsov Alexey Smirnoff + Alex John + Alex McWhirter + Alex Reece + Alex Wilson + Alex Zhuravlev Allan Jude + Allen Holl + alteriks + Alyssa Ross + Ameer Hamza + Anatoly Borodin AndCycle + Andrea Gelmini + Andrea Righi Andreas Buschmann Andreas Dilger + Andreas Vögele Andrew Barnes Andrew Hamilton + Andrew Innes + Andrew J. Hesford Andrew Reid Andrew Stormont + Andrew Sun Andrew Tselischev + Andrew Turner + Andrew Walker + Andrey Prokopenko Andrey Vesnovaty Andriy Gapon Andy Bakun + Andy Fiddaman Aniruddha Shankar + Anton Gubarkov Antonio Russo Arkadiusz Bubała + Armin Wehrfritz Arne Jansen Aron Xu + Arshad Hussain + Arun KV + Arvind Sankar + Attila Fülöp + Avatat Bart Coddens Basil Crow - Huang Liu + Bassu Ben Allen - Ben Rubson + Ben Cordero + Benedikt Neuffer Benjamin Albrecht + Benjamin Gentil + Ben McGough + Ben Rubson + Ben Wolsieffer + bernie1995 Bill McGonigle Bill Pijewski Boris Protopopov + Brad Forschinger Brad Lewis + Brandon Thetford + Brian Atkinson Brian Behlendorf Brian J. Murrell + Brooks Davis + BtbN + bunder2015 + buzzingwires + bzzz77 + cable2999 Caleb James DeLisle Cao Xuewen Carlo Landmeter Carlos Alberto Lopez Perez + Cedric Maunoury Chaoyu Zhang + Charles Suh Chen Can + Chengfei Zhu Chen Haiquan Chip Parker Chris Burroughs Chris Dunlap Chris Dunlop + Chris Lindee + Chris McDonough Chris Siden - Chris Wedgwood - Chris Williamson - Chris Zubrzycki - Christ Schlacta + Chris Siebenmann Christer Ekholm Christian Kohlschütter Christian Neukirchen Christian Schwarz Christopher Voltz + Christ Schlacta + Chris Wedgwood + Chris Williamson + Chris Zubrzycki + Chuck Tuffli Chunwei Chen Clemens Fruhwirth + Clemens Lang + Clint Armstrong Coleman Kane Colin Ian King + Colm Buckley + Crag Wang Craig Loomis Craig Sanders Cyril Plisko - DHE + Cy Schubert + Cédric Berger + Dacian Reece-Stremtan + Dag-Erling Smørgrav + Damiano Albani + Damian Szuberski Damian Wojsław + Daniel Hiepler + Daniel Hoffman + Daniel Kobras + Daniel Kolesa + Daniel Reichelt + Daniel Stevenson + Daniel Verite + Daniil Lunev Dan Kimmel Dan McDonald Dan Swartzendruber Dan Vatca - Daniel Hoffman - Daniel Verite - Daniil Lunev Darik Horn Dave Eddy + David Hedberg David Lamparter David Qian David Quigley Debabrata Banerjee + D. Ebdrup Denys Rtveliashvili Derek Dai + DHE + Didier Roche Dimitri John Ledkov + Dimitry Andric + Dirkjan Bussink Dmitry Khasanov + Dominic Pearson Dominik Hassler Dominik Honnef Don Brady + Doug Rabson Dr. András Korn + Dries Michiels + Edmund Nadolski + Eitan Adler Eli Rosenthal + Eli Schwartz Eric Desrochers Eric Dillmann Eric Schrock + Ethan Coe-Renner Etienne Dechamps + Evan Allrich + Evan Harris Evan Susarret Fabian Grünbichler + Fabio Buso + Fabio Scaccabarozzi Fajar A. Nugraha Fan Yong + fbynite + Fedor Uporov + Felix Dörre + Felix Neumärker Feng Sun + Finix Yan + Francesco Mazzoli Frederik Wessels Frédéric Vanniere + Gabriel A. Devenyi Garrett D'Amore + Garrett Fields Garrison Jensen Gary Mills Gaurav Kumar GeLiXin George Amanakis + George Diamantopoulos + George Gaydarov George Melikov George Wilson Georgy Yakovlev + Gerardwx + Gian-Carlo DeFazio + Gionatan Danti Giuseppe Di Natale + Glenn Washburn Gordan Bobic + Gordon Bergling Gordon Ross + Graham Christensen + Graham Perrin Gregor Kopka + Gregory Bartholomew + grembo Grischa Zengel + grodik Gunnar Beutner Gvozden Neskovic Hajo Möller + Han Gao Hans Rosenfeld + Harald van Dijk + Harry Mallon + Harry Sintonen + HC + hedong zhang + Heitor Alves de Siqueira + Henrik Riomar + Herb Wartens + Hiếu Lê + Huang Liu Håkan Johansson + Igor K Igor Kozhukhov Igor Lvovsky + ilbsmart + illiliti + ilovezfs + InsanePrawn Isaac Huang - JK Dingwall Jacek Fefliński + Jacob Adams + Jake Howard James Cowgill + James H James Lee James Pan + James Wah Jan Engelhardt Jan Kryl Jan Sanislo + Jason Cohen + Jason Harmening Jason King Jason Zaman Javen Wu + Jean-Baptiste Lallement + Jeff Dike + Jeremy Faulkner Jeremy Gill Jeremy Jones + Jeremy Visser Jerry Jelinek + Jessica Clarke Jinshan Xiong + Jitendra Patidar + JK Dingwall Joe Stein + John-Mark Gurney John Albietz John Eismeier - John L. Hammond + John Gallagher John Layman + John L. Hammond + John M. Layman + Johnny Stenback John Paul Adrian Glaubitz + John Poduska + John Ramsden John Wren Kennedy - Johnny Stenback + jokersus + Jonathon Fernyhough Jorgen Lundman Josef 'Jeff' Sipek + Josh Soref Joshua M. Clulow + José Luis Salvador Rufo + João Carlos Mendes Luís + Julian Brunner + Julian Heuking + jumbi77 Justin Bedő + Justin Gottula + Justin Hibbits + Justin Keogh Justin Lecher + Justin Scholz Justin T. Gibbs + jyxent Jörg Thalheim - KORN Andras + ka7 + Ka Ho Ng Kamil Domański Karsten Kretschmer Kash Pande + Kay Pedersen Keith M Wesolowski + KernelOfTruth + Kevin Bowling + Kevin Jin + Kevin P. Fleming Kevin Tanguy KireinaHoro Kjeld Schouten-Lebbing + Kleber Tarcísio + Kody A Kantor Kohsuke Kawaguchi + Konstantin Khorenko + KORN Andras + Kristof Provost + Krzysztof Piecuch Kyle Blatter + Kyle Evans Kyle Fuller - Loli + Laevos + Lalufu Lars Johannsen + Laura Hild + Laurențiu Nicola + Lauri Tirkkonen + liaoyuxiangqin Li Dongyang + Liu Hua + Liu Qing Li Wei + Loli + lorddoskias + Lorenz Brun + Lorenz Hüdepohl + louwrentius Lukas Wunner + luozhengzheng + Luís Henriques Madhav Suresh + manfromafar Manoj Joseph Manuel Amador (Rudd-O) Marcel Huber + Marcel Menzel + Marcel Schilling Marcel Telka Marcel Wysocki + Marcin Skarbek + Mariusz Zaborski + Mark Johnston + Mark Maybee + Mark Roper Mark Shellenbaum + marku89 Mark Wright Martin Matuska + Martin Rüegg Massimo Maggi - Matt Johnston - Matt Kemp + Mateusz Guzik + Mateusz Piotrowski <0mp@FreeBSD.org> + Mathieu Velten + Matt Fiddaman Matthew Ahrens Matthew Thode + Matthias Blankertz + Matt Johnston + Matt Kemp + Matt Macy Matus Kral + Mauricio Faria de Oliveira Max Grossman Maximilian Mehnert + Max Zettlmeißl + Md Islam + megari + Michael D Labriola + Michael Franzl Michael Gebetsroither Michael Kjorling Michael Martin Michael Niewöhner + Michael Zhivich + Michal Vasilek Mike Gerdts Mike Harsch Mike Leddy Mike Swanson Milan Jurik + Minsoo Choo + Mohamed Tawfik Morgan Jones Moritz Maxeiner + Mo Zhou + naivekun + nathancheek Nathaniel Clark Nathaniel Wesley Filardo + Nathan Lewis Nav Ravindranath Neal Gompa (ニール・ゴンパ) Ned Bass Neependra Khare Neil Stockbridge + Nick Black Nick Garvey + Nick Mattis + Nick Terrell + Niklas Haas Nikolay Borisov + nordaux + ofthesun9 Olaf Faaland Oleg Drokin Oleg Stepura + Olivier Mazouffre + omni + Orivej Desh + Pablo Correa Gómez + Palash Gandhi + Patrick Mooney Patrik Greco Paul B. Henson Paul Dagnelie @@ -243,69 +465,160 @@ CONTRIBUTORS: Pedro Giffuni Peng Peter Ashford + Peter Dave Hello + Peter Levine + Peter Wirdemo + Petros Koutoupis + Philip Pokorny + Philipp Riederer + Phil Kauffman + Ping Huang + Piotr Kubaj + Piotr P. Stefaniak Prakash Surya Prasad Joshi + privb0x23 + P.SCH + Quentin Zdanis + Rafael Kitover + RageLtMan Ralf Ertzinger Randall Mason Remy Blank + renelson + Reno Reckling Ricardo M. Correia - Rich Ercolani + Riccardo Schirone + Richard Allen Richard Elling Richard Laager Richard Lowe Richard Sharpe Richard Yao + Rich Ercolani + Robert Novak + Roberto Ricci + Rob Norris + Rob Wing Rohan Puri Romain Dolbeau Roman Strashkin + Ross Williams Ruben Kerkhof + Ryan Hirasaki + Ryan Lahfa + Ryan Libby + Ryan Moeller + Sam Hathaway + Sam Lunt + Samuel VERSCHELDE + Samuel Wycliffe + Samuel Wycliffe J + Sanjeev Bagewadi + Sara Hartse Saso Kiselkov + Satadru Pramanik + Savyasachee Jha + Scott Colby Scot W. Stevenson Sean Eric Fagan Sebastian Gottschall + Sebastien Roy Sen Haerens Serapheim Dimitropoulos Seth Forshee + Shaan Nobee Shampavman + Shaun Tancheff Shen Yan Simon Guest Simon Klinkert Sowrabha Gopal + Spencer Kinny + Srikanth N S Stanislav Seletskiy Steffen Müthing Stephen Blinick + sterlingjensen Steve Dougherty + Steve Mokris Steven Burgess Steven Hartland Steven Johnson + Steven Noonan + stf Stian Ellingsen + Stoiko Ivanov + Stéphane Lesimple Suman Chakravartula Sydney Vanda Sören Tempel + Tamas TEVESZ + Teodor Spæren + TerraTech Thijs Cramer + Thomas Geppert + Thomas Lamprecht + Till Maas Tim Chase Tim Connors Tim Crawford Tim Haley + timor + Timothy Day + Tim Schumacher Tino Reichardt Tobin Harding Tom Caputi Tom Matthews - Tom Prince Tomohiro Kusumi + Tom Prince Tony Hutter + Tony Nguyen + Tony Perkins Toomas Soome + Torsten Wörtwein + Toyam Cox + Trevor Bautista Trey Dockendorf + Troels Nørgaard + Tulsi Jain Turbo Fredriksson Tyler J. Stachecki + Umer Saleem + Valmiky Arquissandas + Val Packett + Vince van Oosten + Violet Purcell + Vipin Kumar Verma Vitaut Bajaryn + Volker Mauel + Václav Skála + Walter Huf + Warner Losh Weigang Li + WHR Will Andrews Will Rouesnel + Windel Bouwman + Wojciech Małota-Wójcik Wolfgang Bumiller Xin Li + Xinliang Liu + xtouqh + Yann Collet + Yanping Gao Ying Zhu + Youzhong Yang + yparitcher + yuina822 YunQiang Su Yuri Pankov Yuxuan Shui Zachary Bedell + Zach Dykstra + zgock + Zhu Chuang + Érico Nogueira + Đoàn Trần Công Danh + 韩朴宇 diff --git a/sys/contrib/openzfs/config/zfs-build.m4 b/sys/contrib/openzfs/config/zfs-build.m4 index e4197dc1424e..5f36569fe25b 100644 --- a/sys/contrib/openzfs/config/zfs-build.m4 +++ b/sys/contrib/openzfs/config/zfs-build.m4 @@ -626,6 +626,7 @@ AC_DEFUN([ZFS_AC_DEFAULT_PACKAGE], [ ubuntu) bashcompletiondir=/usr/share/bash-completion/completions ;; debian) bashcompletiondir=/usr/share/bash-completion/completions ;; freebsd) bashcompletiondir=$sysconfdir/bash_completion.d;; + gentoo) bashcompletiondir=/usr/share/bash-completion/completions ;; *) bashcompletiondir=/etc/bash_completion.d ;; esac AC_MSG_RESULT([$bashcompletiondir]) diff --git a/sys/contrib/openzfs/include/os/freebsd/spl/sys/ctype.h b/sys/contrib/openzfs/include/os/freebsd/spl/sys/ctype.h index 201fa95550e3..b9ca0f8ef2c4 100644 --- a/sys/contrib/openzfs/include/os/freebsd/spl/sys/ctype.h +++ b/sys/contrib/openzfs/include/os/freebsd/spl/sys/ctype.h @@ -39,6 +39,6 @@ ((C) >= 0x3A && (C) <= 0x40) || \ ((C) >= 0x5B && (C) <= 0x60) || \ ((C) >= 0x7B && (C) <= 0x7E)) -#define isspace(C) ((C) == 0x20 || ((C) >= 0x9 && (C) <= 0xD)) +#define isspace(C) ((C) == 0x20 || ((C) >= 0x9 && (C) <= 0xD)) #endif diff --git a/sys/contrib/openzfs/man/man4/zfs.4 b/sys/contrib/openzfs/man/man4/zfs.4 index cfadd79d87f3..71a3e67ee67e 100644 --- a/sys/contrib/openzfs/man/man4/zfs.4 +++ b/sys/contrib/openzfs/man/man4/zfs.4 @@ -2317,63 +2317,6 @@ If .Sy zvol_threads to the number of CPUs present or 32 (whichever is greater). . -.It Sy zvol_blk_mq_threads Ns = Ns Sy 0 Pq uint -The number of threads per zvol to use for queuing IO requests. -This parameter will only appear if your kernel supports -.Li blk-mq -and is only read and assigned to a zvol at zvol load time. -If -.Sy 0 -(the default) then internally set -.Sy zvol_blk_mq_threads -to the number of CPUs present. -. -.It Sy zvol_use_blk_mq Ns = Ns Sy 0 Ns | Ns 1 Pq uint -Set to -.Sy 1 -to use the -.Li blk-mq -API for zvols. -Set to -.Sy 0 -(the default) to use the legacy zvol APIs. -This setting can give better or worse zvol performance depending on -the workload. -This parameter will only appear if your kernel supports -.Li blk-mq -and is only read and assigned to a zvol at zvol load time. -. -.It Sy zvol_blk_mq_blocks_per_thread Ns = Ns Sy 8 Pq uint -If -.Sy zvol_use_blk_mq -is enabled, then process this number of -.Sy volblocksize Ns -sized blocks per zvol thread. -This tunable can be use to favor better performance for zvol reads (lower -values) or writes (higher values). -If set to -.Sy 0 , -then the zvol layer will process the maximum number of blocks -per thread that it can. -This parameter will only appear if your kernel supports -.Li blk-mq -and is only applied at each zvol's load time. -. -.It Sy zvol_blk_mq_queue_depth Ns = Ns Sy 0 Pq uint -The queue_depth value for the zvol -.Li blk-mq -interface. -This parameter will only appear if your kernel supports -.Li blk-mq -and is only applied at each zvol's load time. -If -.Sy 0 -(the default) then use the kernel's default queue depth. -Values are clamped to the kernel's -.Dv BLKDEV_MIN_RQ -and -.Dv BLKDEV_MAX_RQ Ns / Ns Dv BLKDEV_DEFAULT_RQ -limits. -. .It Sy zvol_volmode Ns = Ns Sy 1 Pq uint Defines zvol block devices behaviour when .Sy volmode Ns = Ns Sy default : diff --git a/sys/contrib/openzfs/module/os/linux/zfs/zpl_file_range.c b/sys/contrib/openzfs/module/os/linux/zfs/zpl_file_range.c index 2abbf44df587..c47fe99dacff 100644 *** 647 LINES SKIPPED *** From nobody Sat Oct 14 22:35:42 2023 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4S7J9p5Zrtz4xL1Y; Sat, 14 Oct 2023 22:35:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S7J9p4VNLz3LyP; Sat, 14 Oct 2023 22: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=1697322942; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Orgzqqe2iZEXgYqP7ZRuOrWArAXFJg2HJKC14KZTjoQ=; b=dfos3fj0s7hX/6QZYlIVQ2xUqjDT8OHku9thXHTvhw8dpX7toWXQ1PGqQ7RK0A4As5yeve QFJw8If9w/bqLR9qbBYacJd269I7CADNMFy6E9/8p2xAifn+de5hhoaPmxxu/Qbv3K0EmZ ginlSl8K9pq8fxBK/uGAKlN1bm+nWMbVbqxU89F7T4y7J4oHxOwL/AXN4Z7HFbGE5m8H5g lQ0JwJBmVxAkrSsjrlgZJPsuohg2dJy4tjW4mVzk/zoVowxrHByHQZ1h7hf6krsllwDqyv WkJbHNai8f+PbFw1HYsed/+MV+jDvUI9bbfudLB1W2s9KaDkoda1eKOqvQPolg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1697322942; a=rsa-sha256; cv=none; b=t8333jTDVLcHagBhQ2ou2dCu1aM7BQvl+uvYCq+THS/Ey0GDutWQ6CBJDGBc1cHaWh96sQ lzr7nNsfbS6D/Cx9bPQ/87ehHJcHh5zcUCvPe6vZX4sgz/RlxaIJ2JAjbDgoxTDb1x1Efs d8BlkhFbXeViEhuGsESgCag7ebFcw6YFALEU5PZUmoMuX8pdth/MIIab/hHPioAzZLinJB HuTAaH1URihWSw2UnwTBDv8Py4z9XEGIjRo0HTInSKa9nQpCNdzWUlEHfUZ3SXxRtE6cSe apnTmYadBhxA97bbyGcXtQ1vKg85nOII6HM2pg6wwywe0iONtuI2DXfjgbrinw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1697322942; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Orgzqqe2iZEXgYqP7ZRuOrWArAXFJg2HJKC14KZTjoQ=; b=LrfIE1BF1UUTA/59peeFec2ulLkyXfzK/zZ5BrM0t8Bz0OXRsAHnF5f+vQhiW6v/C1s7eH aOoYWuFnrKhBt/3wwejfags7lO/xeYdikmG6r9IKyMMvjJVadzqlTdCqCxefs+ENcu9/+0 2+ynrLF8CA68R/g/CKdh0GUcmBRy/m4N4gOXgI/D7UT9mujwmIYlNNjjBwPnVr0k367zw0 lwspPYFLLGY5GAbbO/Tbk1EuY4vVMowqiXB7Sg60lqMqsRg6ojwbc+pGdyKa51+7DwBSMR KAUyaXj0a7rBR4OrbZTz1QItawrfQbtxXU6iC5UBqv+fnH/H92fStwZl5e+ORA== 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 4S7J9p3Ln1zp2K; Sat, 14 Oct 2023 22:35:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 39EMZgYA095077; Sat, 14 Oct 2023 22:35:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 39EMZgfW095074; Sat, 14 Oct 2023 22:35:42 GMT (envelope-from git) Date: Sat, 14 Oct 2023 22:35:42 GMT Message-Id: <202310142235.39EMZgfW095074@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Martin Matuska Subject: git: 3ac9fb49cc1c - releng/14.0 - zfs: merge openzfs/zfs@95785196f (zfs-2.2-release) into stable/14 List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mm X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.0 X-Git-Reftype: branch X-Git-Commit: 3ac9fb49cc1c3d6034a449471df7ba2d24f26089 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by mm: URL: https://cgit.FreeBSD.org/src/commit/?id=3ac9fb49cc1c3d6034a449471df7ba2d24f26089 commit 3ac9fb49cc1c3d6034a449471df7ba2d24f26089 Author: Martin Matuska AuthorDate: 2023-10-14 18:24:39 +0000 Commit: Martin Matuska CommitDate: 2023-10-14 20:52:48 +0000 zfs: merge openzfs/zfs@95785196f (zfs-2.2-release) into stable/14 OpenZFS release 2.2.0 This commit adjusts the version numbers only. Obtained from: OpenZFS OpenZFS commit: 95785196f26e92d82cf4445654ba84e4a9671c57 OpenZFS tag: zfs-2.2.0 Approved by: re (gjb) (cherry picked from commit b2d6bc7597ebff8201c354a983a33149d1e1ef97) --- sys/contrib/openzfs/META | 2 +- sys/modules/zfs/zfs_config.h | 4 ++-- sys/modules/zfs/zfs_gitrev.h | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/contrib/openzfs/META b/sys/contrib/openzfs/META index 4178f1b5daa4..0d7df10d47db 100644 --- a/sys/contrib/openzfs/META +++ b/sys/contrib/openzfs/META @@ -2,7 +2,7 @@ Meta: 1 Name: zfs Branch: 1.0 Version: 2.2.0 -Release: rc5 +Release: 1 Release-Tags: relext License: CDDL Author: OpenZFS diff --git a/sys/modules/zfs/zfs_config.h b/sys/modules/zfs/zfs_config.h index b62dbf112b31..9c423a3e3e36 100644 --- a/sys/modules/zfs/zfs_config.h +++ b/sys/modules/zfs/zfs_config.h @@ -1095,7 +1095,7 @@ /* #undef ZFS_IS_GPL_COMPATIBLE */ /* Define the project alias string. */ -#define ZFS_META_ALIAS "zfs-2.2.0-FreeBSD_g2bba9fd47" +#define ZFS_META_ALIAS "zfs-2.2.0-FreeBSD_g95785196f" /* Define the project author. */ #define ZFS_META_AUTHOR "OpenZFS" @@ -1125,7 +1125,7 @@ #define ZFS_META_NAME "zfs" /* Define the project release. */ -#define ZFS_META_RELEASE "FreeBSD_g2bba9fd47" +#define ZFS_META_RELEASE "FreeBSD_g95785196f" /* Define the project version. */ #define ZFS_META_VERSION "2.2.0" diff --git a/sys/modules/zfs/zfs_gitrev.h b/sys/modules/zfs/zfs_gitrev.h index db30da19109e..d1341d6a39ef 100644 --- a/sys/modules/zfs/zfs_gitrev.h +++ b/sys/modules/zfs/zfs_gitrev.h @@ -1 +1 @@ -#define ZFS_META_GITREV "zfs-2.2.0-rc5-14-g2bba9fd47" +#define ZFS_META_GITREV "zfs-2.2.0-0-g95785196f"