From nobody Mon Mar 11 00:29:25 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtHhj60mhz5DDH4; Mon, 11 Mar 2024 00:29: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 4TtHhj5SF4z4sZ7; Mon, 11 Mar 2024 00:29:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710116965; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=M4oIY2UYnPCCfhFy6JmddxErYM7Oacpz3uxSkBKMcI8=; b=SsmXcoVWoxY9BLdAT6mQJThrBjNH4fIypXkIFg8OHxiP1ghGjmiViYadExC4qawA/lwdwD QZEgdbQph+6YLZpaArh6KV37FwXar9YRcB6mZbBeDorxpdj3KCJ25Jrx0tHx4+tsY/LyLM W60eDkFwv4BTe3G6UweRCuAJOIJqodhB2rF4XCaczPB6zc+3dXiPhwRYW4wMWqbrkfRvE3 iRR3aGKed/TO9tkD6CAGO2dDqAyUIvH15sz3rCx9thOMHPIaWIMAOzu1Q413YV+O9vU5wX v0muu2qzPfiY2mjsfneCJPyCpNglB9EwDry1b5KqIbWzyPXB4kerWHYhAAGqpg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710116965; a=rsa-sha256; cv=none; b=OQQ0Z0vIHe1XE78eyczsxW1VE/mhkCB26keIOfCKlSPr4L1D0e7TqxlNyAn+pZDee5ZdvB f56tLdcA7Sz9UAVXorelJ35XkWXlwL/Xzjql2r7mC4lrLPX4+6ZBCHlqS/dgTvSUpSkDb/ uFndbFxTuYOAWPf8eA+HrbmiPKIYAie/RJR97oA3RYrVnomfPY5yEPe1/fnGrBkQFBbjqv KNEAlPpXkrMwBzrEw97kNU97ruGC87eA11VDAGhRsLJgIVQcj2GIlN6UkG+aoUzxpBp47l bCvpN64Tn/4QnJIWJX8bcxMIhfhxobb5aDr2H9Vm7MQzuJ7/Meu2NBFUssJrOw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710116965; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=M4oIY2UYnPCCfhFy6JmddxErYM7Oacpz3uxSkBKMcI8=; b=OTD+3L1jcE4jPfK/FyCn/tumWOXX+ycIR8OhdHvRx62YWW1qsTlPa6//RKNnX+uD2jq4XO hMIA5/+d59SVO039u5smOFCDgUaRV7otMQvPCFxujYbj3sCcXZcJD0/kxegcKgaCay69V8 ao1G1cW6GDIGDeF57W+p/LgaQMgadPp9zMELPDddDoSUXzGMbM8x1Ee9m39jwkoDtfWmHg W+0p4M6yr/HoNf2NeQ44f5JLN96wilmhvumfcBikPE4BXfoo3AYfeNexWUHtYJBPjWKZ1m IQaxMwBSMj5zs3fumfSeX197MUUz8UmJ+h06teDwJtbZpzMdTw8+2UDL9UYdkg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtHhj4wdFz17J6; Mon, 11 Mar 2024 00:29: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 42B0TP7G093856; Mon, 11 Mar 2024 00:29:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42B0TPYs093853; Mon, 11 Mar 2024 00:29:25 GMT (envelope-from git) Date: Mon, 11 Mar 2024 00:29:25 GMT Message-Id: <202403110029.42B0TPYs093853@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: eb36277dc926 - stable/14 - posix_spawnattr_setflags(3): validate argument List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: eb36277dc926b671b520ca0ecb1da54eacf424a2 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=eb36277dc926b671b520ca0ecb1da54eacf424a2 commit eb36277dc926b671b520ca0ecb1da54eacf424a2 Author: Konstantin Belousov AuthorDate: 2024-03-03 13:19:37 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-11 00:25:58 +0000 posix_spawnattr_setflags(3): validate argument (cherry picked from commit 80ac36c3a2a87a19790eba487466bf70d55f566e) --- lib/libc/gen/posix_spawn.c | 4 ++++ lib/libc/gen/posix_spawnattr_getflags.3 | 7 +++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/lib/libc/gen/posix_spawn.c b/lib/libc/gen/posix_spawn.c index a067d1f68ea5..41e059cf437b 100644 --- a/lib/libc/gen/posix_spawn.c +++ b/lib/libc/gen/posix_spawn.c @@ -629,6 +629,10 @@ posix_spawnattr_getsigmask(const posix_spawnattr_t * __restrict sa, int posix_spawnattr_setflags(posix_spawnattr_t *sa, short flags) { + if ((flags & ~(POSIX_SPAWN_RESETIDS | POSIX_SPAWN_SETPGROUP | + POSIX_SPAWN_SETSCHEDPARAM | POSIX_SPAWN_SETSCHEDULER | + POSIX_SPAWN_SETSIGDEF | POSIX_SPAWN_SETSIGMASK)) != 0) + return (EINVAL); (*sa)->sa_flags = flags; return (0); } diff --git a/lib/libc/gen/posix_spawnattr_getflags.3 b/lib/libc/gen/posix_spawnattr_getflags.3 index 9a468cbb8b0f..18cf6683e935 100644 --- a/lib/libc/gen/posix_spawnattr_getflags.3 +++ b/lib/libc/gen/posix_spawnattr_getflags.3 @@ -83,9 +83,12 @@ The default value of this attribute is as if no flags were set. .Sh RETURN VALUES The .Fn posix_spawnattr_getflags -and +function returns zero. +The .Fn posix_spawnattr_setflags -functions return zero. +function returns zero on success, and +.Er EINVAL +on failure due to invalid flag specified. .Sh SEE ALSO .Xr posix_spawn 3 , .Xr posix_spawnattr_destroy 3 , From nobody Mon Mar 11 00:29:26 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtHhl1FpBz5DDDS; Mon, 11 Mar 2024 00:29: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 4TtHhl0Fk1z4sWp; Mon, 11 Mar 2024 00:29:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710116967; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=viqM3UOmzPtIT4+SC0fDPUDM8M/QX9mDLYsQviuO1IQ=; b=n4expSy7S29GQwGeI4tw3JY1ZHz/Y/9WN1nKuPwIZERV0Dru/ANj9xiyyr1WeI2pFVponA rFZdBhcSdMHNo3f+M+x5gj/+NPeWkY3HB6yNk0J423tbolq5Bk970ElpAo55guqg8A57D8 boKMMdRJAev26PHh1CHrJmcboq+8uC19yhkApg/Z3yKotfh+4oYXgR7Z0Wv992fyWn0afB 6Pw8YaHtFBTwCQCOKt+8FOQzZqN76Tuby2G1lre4pFHMa69SDGzPPiYBPE+kBQlsbh2CqN +0xP0QRbHYWS6XwwFoj8FxGeHpT76RAxpduWd0iU8W6h8it6J83zG96L5fNznA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710116967; a=rsa-sha256; cv=none; b=DBOXPIzJoKAesUQOpj5kXPUFGbBqoP6EgLe8fQQV6GvoeSwPuaqXCJvli/0iOrn/DiGzTR Tx0W3+VbpOdoD6OrJuPOxu+5vClRN+hPnXo+7ER+xQhAtj6b2DtZayXk04Ryp6/gH74MBe q2xGKKlbQfh/bAN5dkbGP6aURJwKYEO6GTYzr1rQjZ6LMH28VL1LSc369Q1fScoBfzJdK1 umk2jM56vmjG+36ezFoRSWX4eVazcarEzn6Bgta1OQG50MRjtkmzApaZDq9We9B7wqCp6v zYoLvrPXCr1xgrSFlX/A6T6pUZxWRxhFoYzQ4j4xlQenkYUOCairm6gEqVDBMg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710116967; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=viqM3UOmzPtIT4+SC0fDPUDM8M/QX9mDLYsQviuO1IQ=; b=qpjwX+hadY5KznDX+o3hbTyf9Y2CGoqgSLNgRik6L3KBm6rJ6zy/ZMCPCh6Dx7mlpYfhC2 WgUg1Tq+4GOqgln6DhrnEIFaUl+PMjGlm7f8bIg0yMH/jIohFMCHxScGrcMN/vGCUc5lBv WhRuHbm6a5jTfBZC56DZaB1A16z7JeRUQ5VS0OhEXM+8G+ZZrE9P4pHl6Ila0U+FEkTpsN Ah7mt6VHCpsXFqokxd1o0U+9N6yxPhnH05PB8nj4GfYDzmW7WIfgHIY6X9UsjZxJTVTCk1 xz32joAjFYMXePC+WEXDBBdEd801GFb7/LXbxdFHN7BX3KDGRxO4xViWFioTCQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtHhk68Zdz17J7; Mon, 11 Mar 2024 00:29: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 42B0TQoW093892; Mon, 11 Mar 2024 00:29:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42B0TQww093889; Mon, 11 Mar 2024 00:29:26 GMT (envelope-from git) Date: Mon, 11 Mar 2024 00:29:26 GMT Message-Id: <202403110029.42B0TQww093889@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: b5e95d17ec89 - stable/14 - posix_spawn(3): add POSIX_SPAWN_DISABLE_ASLR_NP List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b5e95d17ec8958e26efe70368405e6dd18df6336 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=b5e95d17ec8958e26efe70368405e6dd18df6336 commit b5e95d17ec8958e26efe70368405e6dd18df6336 Author: Konstantin Belousov AuthorDate: 2024-03-03 13:30:04 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-11 00:25:58 +0000 posix_spawn(3): add POSIX_SPAWN_DISABLE_ASLR_NP (cherry picked from commit 822042fdfca79faada89e67110b01dd9ecc05996) --- include/spawn.h | 1 + lib/libc/gen/posix_spawn.c | 13 +++++++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/include/spawn.h b/include/spawn.h index 9643fcda5c13..a93315930954 100644 --- a/include/spawn.h +++ b/include/spawn.h @@ -59,6 +59,7 @@ typedef struct __posix_spawn_file_actions *posix_spawn_file_actions_t; #define POSIX_SPAWN_SETSCHEDULER 0x08 #define POSIX_SPAWN_SETSIGDEF 0x10 #define POSIX_SPAWN_SETSIGMASK 0x20 +#define POSIX_SPAWN_DISABLE_ASLR_NP 0x40 __BEGIN_DECLS /* diff --git a/lib/libc/gen/posix_spawn.c b/lib/libc/gen/posix_spawn.c index 41e059cf437b..4726416f1d02 100644 --- a/lib/libc/gen/posix_spawn.c +++ b/lib/libc/gen/posix_spawn.c @@ -28,6 +28,7 @@ #include "namespace.h" #include +#include #include #include @@ -91,7 +92,7 @@ static int process_spawnattr(const posix_spawnattr_t sa) { struct sigaction sigact = { .sa_flags = 0, .sa_handler = SIG_DFL }; - int i; + int aslr, i; /* * POSIX doesn't really describe in which order everything @@ -139,6 +140,13 @@ process_spawnattr(const posix_spawnattr_t sa) } } + /* Disable ASLR. */ + if ((sa->sa_flags & POSIX_SPAWN_DISABLE_ASLR_NP) != 0) { + aslr = PROC_ASLR_FORCE_DISABLE; + if (procctl(P_PID, 0, PROC_ASLR_CTL, &aslr) != 0) + return (errno); + } + return (0); } @@ -631,7 +639,8 @@ posix_spawnattr_setflags(posix_spawnattr_t *sa, short flags) { if ((flags & ~(POSIX_SPAWN_RESETIDS | POSIX_SPAWN_SETPGROUP | POSIX_SPAWN_SETSCHEDPARAM | POSIX_SPAWN_SETSCHEDULER | - POSIX_SPAWN_SETSIGDEF | POSIX_SPAWN_SETSIGMASK)) != 0) + POSIX_SPAWN_SETSIGDEF | POSIX_SPAWN_SETSIGMASK | + POSIX_SPAWN_DISABLE_ASLR_NP)) != 0) return (EINVAL); (*sa)->sa_flags = flags; return (0); From nobody Mon Mar 11 00:29:27 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtHhm25kqz5DDBY; Mon, 11 Mar 2024 00:29: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 4TtHhm0clMz4snc; Mon, 11 Mar 2024 00:29:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710116968; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vrm1z8ESbj2+s0hLu8nQZ2/WrujZO4T0xmnod5f2yiE=; b=N5tTf6yOgwH1oBDgA2SNpDGyWON7sVu5HWasvmLwSkz1acMg14b+43KIL9eHmqslmkBCfW 0GQv4MIH3cUfVq/XumzOILg25yiDLoR6Bg/4WLjmKy1KLqN/RdMahwFyocMqQ+p6L65YrF YBHr6lMndLevJ3YrhM+Ezds3kH2JIJo7X3XP6TGD/yCRprQT67HzrMjpOOmvU1M/Tmrmfi J0D9B/ZdJaOOvWe+BjiRILtbE2Z4pTc81iHhEykuRLumjPrBZwyJ8dh8ObrZgfGpk2YuAz OQ/DTSYo3CzNV6zhGp+74jpQTLKqxgB/0sgv3gwznwy2BhxFjZgCBhu2/LjA6w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710116968; a=rsa-sha256; cv=none; b=ggA6T5s3cY+sV0llf6MAchqoz0fU/2yJsXGo4LfwliJwwQeeZGp0KM8Iy3irdFQ8ut8MrX 05NKl4vvqi80QYjhF/orl0NpMu099TwbakmnIitkzd8dL9yfqxSe7A+tYc8StmndS0s35W FGeZ1lEzgMbML03gjguPtFOzxxxGxMUlH83MzHzkPfSHQ3ASMfCMnpPqdoX7MJ+UxMywhT M0TQwk5vRYGcuSwKdrenp147BodW+7oRf0qiheYCrIFNmzmZAijitm/EdPCE9FDnXnuN2f nOHMlhefyEmtKzozpIfvfywvWvO5n8BKtHeHcA/Nin0bLAEX6d/mCSeeg8q7dQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710116968; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vrm1z8ESbj2+s0hLu8nQZ2/WrujZO4T0xmnod5f2yiE=; b=LB6BF44/XM6nyn3Eg5q4rWU6AejBUh4Fjj7X2tZ0d0vSag94i7N1K34qLLimZMcr7bOItE GLuv2EDw+Og5UhtOzIKRIm25qUPIRuhMhnQYiZUsscmjqVxVj3r14M03VXT3l4FVd+3s2M M/gQY3np1IM5sxJ42RxqfNlboOe+oj4kIGLzr82mT9FsHYXHQimPb+VgwFljPOzV0O2bPe tw3ZSrDiHRiszfx9H28l1EzxvjGdMxweeesqSOe4spAAfG6s8FglMg1qbwGzjUIHtyx6Xb f5TkhD7vwb7kF40JFvklPnGwUI/qUC4J55lOqxzyTFnZ8181Q/3QRtiFM4Rgqw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtHhl6wq6z179c; Mon, 11 Mar 2024 00:29: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 42B0TRvq093928; Mon, 11 Mar 2024 00:29:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42B0TR2Y093925; Mon, 11 Mar 2024 00:29:27 GMT (envelope-from git) Date: Mon, 11 Mar 2024 00:29:27 GMT Message-Id: <202403110029.42B0TR2Y093925@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: 7178cd5f8108 - stable/14 - posix_spawn(3): document POSIX_SPAWN_DISABLE_ASLR_NP List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 7178cd5f810809d0329327131f8181d2c954918f Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=7178cd5f810809d0329327131f8181d2c954918f commit 7178cd5f810809d0329327131f8181d2c954918f Author: Konstantin Belousov AuthorDate: 2024-03-03 22:19:22 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-11 00:25:58 +0000 posix_spawn(3): document POSIX_SPAWN_DISABLE_ASLR_NP (cherry picked from commit a725a7a24de585e996f21e190b5af41261ebc774) --- lib/libc/gen/posix_spawn.3 | 12 +++++++++++- lib/libc/gen/posix_spawnattr_getflags.3 | 3 ++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/lib/libc/gen/posix_spawn.3 b/lib/libc/gen/posix_spawn.3 index a9ff7b2b21da..55559ae7222b 100644 --- a/lib/libc/gen/posix_spawn.3 +++ b/lib/libc/gen/posix_spawn.3 @@ -32,7 +32,7 @@ .\" the referee document. The original Standard can be obtained online at .\" http://www.opengroup.org/unix/online.html. .\" -.Dd November 28, 2021 +.Dd March 4, 2024 .Dt POSIX_SPAWN 3 .Os .Sh NAME @@ -297,6 +297,15 @@ and the signals being indicated in the spawn-sigdefault attribute of the object referenced by .Fa attrp . .Pp +The Address Space Layout Randomization for the newly spawned process +can be disabled by specifying the +.Dv POSIX_SPAWN_DISABLE_ASLR_NP +flag in the spawn-flags attribute. +This setting is inherited by future children of the child as well. +See +.Xr procctl 2 +for more details. +.Pp If the value of the .Fa attrp pointer is NULL, then the default values are used. @@ -432,6 +441,7 @@ action. .Xr execve 2 , .Xr fcntl 2 , .Xr open 2 , +.Xr procctl 2 , .Xr sched_setparam 2 , .Xr sched_setscheduler 2 , .Xr setpgid 2 , diff --git a/lib/libc/gen/posix_spawnattr_getflags.3 b/lib/libc/gen/posix_spawnattr_getflags.3 index 18cf6683e935..308bbb386d76 100644 --- a/lib/libc/gen/posix_spawnattr_getflags.3 +++ b/lib/libc/gen/posix_spawnattr_getflags.3 @@ -32,7 +32,7 @@ .\" the referee document. The original Standard can be obtained online at .\" http://www.opengroup.org/unix/online.html. .\" -.Dd March 24, 2008 +.Dd March 4, 2024 .Dt POSIX_SPAWNATTR_GETFLAGS 3 .Os .Sh NAME @@ -75,6 +75,7 @@ It is the bitwise-inclusive OR of zero or more of the following flags .It Dv POSIX_SPAWN_SETSIGMASK .It Dv POSIX_SPAWN_SETSCHEDPARAM .It Dv POSIX_SPAWN_SETSCHEDULER +.It Dv POSIX_SPAWN_DISABLE_ASLR_NP .El .Pp These flags are defined in From nobody Mon Mar 11 00:29:29 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtHhn3F1lz5DDHD; Mon, 11 Mar 2024 00:29: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 4TtHhn1L2jz4ssv; Mon, 11 Mar 2024 00:29:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710116969; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/eiGqil5qzs8BzLRypIOCDr4IHV6/0mBvsnAQVFj7ww=; b=WjAkw5sdpfq+rOzAGF7r5noKuCGoOND7GfUGgYxuKrzp5GDOy9rPN0EslaP42aRxTTpRtH fgEnSqlArlwnbsTGUxpzkdN65E/OHeZubhgTzB/5riZWzvy00bIKeivXLcFu0OKujvMiih 2zR8pa1HSYzVf9Qstg/PFTldm+H4RjOEC95aPq9+wjbpWwbjBE8vSD4NUXN3siVBiLwPKR EKv0tE9Le1u0SH6OiRZYykjMCz+6E2gJMprk0PF8OXKmiETM/hvbT1MXlj3PSRQJTAEz+/ eBDQRnU4au+vtHfhHe7o32DCcGeIfHhp2v/QgTAqG8f76yMIp4ddT8gYk74inw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710116969; a=rsa-sha256; cv=none; b=Gn8ntIe5VQ/QZqtsrnAtgm9mGmh2O7kkm+jLPNo1GlThGvKjLlhyMcft4tncVadmXOD5Tz zr3nxL31sZcQkRFx5V91x4WfzpCSMgLshalTUgm4JqBjjz3X2UvwrhpaBaq4EKxs/Jcwzn gRh6md0QwUtShiMKHcPhvrWKA+SBw0hl8UdFzlXK690ob2xDAgeBmsh1j68lTUNrUnwvEh 6pc60Aw0KYlNutuHujizKzbnnW+utL4w/UhHrR4t0jdZeVRR6flG6GWPpT23jfcTBMPq1P gUq3OxCnYoAytcQ0qWe70vUtVdjx1ZuSHgMZ4hHVMf1OmQ7vwUzVGn47Dke7KQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710116969; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/eiGqil5qzs8BzLRypIOCDr4IHV6/0mBvsnAQVFj7ww=; b=OWHDsmno+4PLfeSXbI3Z8x2G3ftcIONJViaa2DotuHiDxw2N7AWRpFhRA62+dQ0Ng8nQ8j OSIh0xGau4PzjP5fO6ej7H50Ixdg0aHoRyo/V+AVI7NVsZD4qTf9zIurMEMniTULINbeHa PxCBnOjeQgdnTJfrXfFcgmrK5P19BXjXL25K5Uv6r0EXeAe5fcV3l0THHtiC5c0I3k0mr3 bX79BOonuSdp57y0kGAwsXpezTtxpqEhnkXwE0zVuV5uSXc1CPrbz4icWZGMj/J6z8r9Ju 6WoeTtEUIvSmOD6RsWRC4/p7kuRb52PL1bvrK0qd08qrItBv+24MHeIiMsAOmA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtHhn0pQbz16sb; Mon, 11 Mar 2024 00:29: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 42B0TTON093976; Mon, 11 Mar 2024 00:29:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42B0TTfT093973; Mon, 11 Mar 2024 00:29:29 GMT (envelope-from git) Date: Mon, 11 Mar 2024 00:29:29 GMT Message-Id: <202403110029.42B0TTfT093973@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: 8e9963d7b000 - stable/14 - posix_spawn.c: fix typo in comment List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 8e9963d7b0004becb3b2d83a3b354b079db9d697 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=8e9963d7b0004becb3b2d83a3b354b079db9d697 commit 8e9963d7b0004becb3b2d83a3b354b079db9d697 Author: Konstantin Belousov AuthorDate: 2024-03-06 06:19:16 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-11 00:25:58 +0000 posix_spawn.c: fix typo in comment (cherry picked from commit ebaf907114aa6bda49be4204185072571396bb0d) --- lib/libc/gen/posix_spawn.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libc/gen/posix_spawn.c b/lib/libc/gen/posix_spawn.c index 4726416f1d02..d405517ba68d 100644 --- a/lib/libc/gen/posix_spawn.c +++ b/lib/libc/gen/posix_spawn.c @@ -329,7 +329,7 @@ do_posix_spawn(pid_t *pid, const char *path, #ifdef _RFORK_THREAD_STACK_SIZE /* * x86 stores the return address on the stack, so rfork(2) cannot work - * as-is because the child would clobber the return address om the + * as-is because the child would clobber the return address of the * parent. Because of this, we must use rfork_thread instead while * almost every other arch stores the return address in a register. */ From nobody Mon Mar 11 00:29:30 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtHhp3n3Qz5DDBf; Mon, 11 Mar 2024 00:29: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 4TtHhp2LyHz4spB; Mon, 11 Mar 2024 00:29:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710116970; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xsfKVwrII5J8m9zw9mWaFWDKr3CLGPbYwL1p0Tpzh6c=; b=sEj+sAMKUVxVnmRwhIlaxVsCix3Rpglxvi7sY3Gw/ULf1Qf+6TxBlxd9aGUtDYtDOiFZsS o7OLXbSnJxfNVIx1edUE8cIMjP3MHljNJDoUrfMoaL45Ozn9iuGgz6o8mHG1HsiAhofM4i +QIzqH1Q5/c/Leh+xeAzkQ8LQIzB523lArcQOG6yOUgU1qIlicMk4PlRBCih5prpg5DmjS 85pwKMDsxs15YJixFEsmOAFdmtVhvOeDaXvsOwhefFDSXdb96wtKOww3FPUKx+opmKBMjk n5ZDXRvden/A+hRBIUiLBFcZRC5J0Pzvqv9IgFSaYpy5LYiq/pZzceMG/VNksA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710116970; a=rsa-sha256; cv=none; b=XzClvUQtvdregDE6vJ6SgI59qLxMfuv2h0nnZc1aXjpKPmcJYbANlM3+A1LoPwCK8cVUXO jpF90INfoqgfJEN3N5SYE4CaPRQVUQZO0Q8rFry9/h4kVdBFaw2ucwhRgPVL/oip6y47o6 9xvq/ixr2koMWGtJMbCL9uiW2hwvqbll+cCgUsYp4cafskjkYMkeUKqa+ecRo8+k3RLcwi 4uQJZ6DvoUB+1W3z/Dlx/fsyGyut5EBRsjWICmgFpQgzGQk7PhIkQiDb8c0ntxteS3OvQd SeNFZKWHWSLI97w1c2SeeoVaO6lzT9TYij9GnrgsDeGawLBw0B5Vg415i++mvQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710116970; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xsfKVwrII5J8m9zw9mWaFWDKr3CLGPbYwL1p0Tpzh6c=; b=k66Fr3dXlkK8TNHNEHUrSjQXvdQPQf0gyGG3yxM4XLStCd6nYFRH88hB7+kJ69lfzEZ2zo y6f1UlUdkFbnJdNmbE0SChA5eI3ODN42k1sr14u6uKcJQmMlBZ8r1b3xnbUQKCuqrnQSLP h7MbiQOr1NhqsCvEJRqy+zaCXyhHlNoK2McUnJ/0fIndzrupui77HgUQY+jzGc+JyXLSvu H6iZybDpyYG/7XKKSQRs6ADUrSQqLqTXMBvEObIp8oK4oqEmK46agxCYjamEPdKSVTWHgE phzODXzKTrJnfEIqztTorDM5y/xV5A/Co5hMF674cT8WS4lZt3RtExAwssKGsA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtHhp1rR0z17G5; Mon, 11 Mar 2024 00:29: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 42B0TUQA094038; Mon, 11 Mar 2024 00:29:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42B0TU9Y094035; Mon, 11 Mar 2024 00:29:30 GMT (envelope-from git) Date: Mon, 11 Mar 2024 00:29:30 GMT Message-Id: <202403110029.42B0TU9Y094035@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: f8b5e5320eee - stable/14 - libc posix_spawn(): explain why rtld can be used after fork List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f8b5e5320eee75b2dfeb965d485d8f97bae729e0 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=f8b5e5320eee75b2dfeb965d485d8f97bae729e0 commit f8b5e5320eee75b2dfeb965d485d8f97bae729e0 Author: Konstantin Belousov AuthorDate: 2024-03-06 07:24:22 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-11 00:25:58 +0000 libc posix_spawn(): explain why rtld can be used after fork (cherry picked from commit 2ce23b1f76721e44646fc98ba4e24a113a6d5972) --- lib/libc/gen/posix_spawn.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/libc/gen/posix_spawn.c b/lib/libc/gen/posix_spawn.c index d405517ba68d..ee2ce05ff317 100644 --- a/lib/libc/gen/posix_spawn.c +++ b/lib/libc/gen/posix_spawn.c @@ -325,6 +325,11 @@ do_posix_spawn(pid_t *pid, const char *path, * ideal vfork(2) if we get an EINVAL from rfork -- this should only * happen with newer libc on older kernel that doesn't accept * RFSPAWN. + * + * Combination of vfork() (or its equivalent rfork() form) and + * a special property of the libthr rtld locks ensure that + * rtld is operational in the child. In particular, libthr + * rtld locks do not store owner' tid into the lock word. */ #ifdef _RFORK_THREAD_STACK_SIZE /* From nobody Mon Mar 11 00:30:31 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtHk01673z5DDRN; Mon, 11 Mar 2024 00:30: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 4TtHjz64C6z4v6c; Mon, 11 Mar 2024 00:30:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710117031; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cpK5VRyLcv4TXf3dSESbY+QATTRnsynY0Y4YZyPlzFA=; b=kboUIno/Avt7dEmxTywaK7YMJKp0e43zm68cPO2XRg8qMPMHnxohJF0gEoT3WKkf6CV8/v A8i54rXsq3f/FXE9FLjf8rDrU/B9X4TF1FsxHuU5ukwX8l90gs9gBtGZI+B0rbqMjnhp3y QWnMDt2seVXd11aPrFGxEuXKHJyWW1lyi6yJ8jPNKl0VarZX5afxzWkwMmP5wiqD/ZgLy/ fCY8eqmDifRdhQVl6AhbbyRNp450o4PpXRGgYiRGM6TVNk/+5Btj+ZAVnHVqaz7SRlK5fF ynpsmpD3ZtJONmIQLxwP1YcsbV0XktjGkKx9FZiKClpEOSu5Qc1QCbpnSIHAyA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710117031; a=rsa-sha256; cv=none; b=Xf0WY80C6tfzoFBwcE01KuRakVoDvSsadFIQkGj1AQ0xhxS26ReaXHkzoNZCkF3Dkjsl2x bopQAekuGaK2CxbOduQTKaK8AjcA/+85iY52tVzL8zDl/EGIaYQhE3KwtgXYRmDBBur9b7 lkgX3akCQRspiOhOsVRWU3Leeksf6RCmFTxn0aNjV6x0dbTWuIGovZ4d/DpOUuDYspX2lX UlS99WvElysR9RRqo3pallHTmASHoEz1Ba/MGRFNUz/RKAPCiiDhBCqrs3hNHaN7aWfute Pywf0pNfsuvCf2+V29OYyWa4N0W7M0GVlq47nNCG6cqVC5Gltupiou1OIf/VVQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710117031; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cpK5VRyLcv4TXf3dSESbY+QATTRnsynY0Y4YZyPlzFA=; b=pYZBoTn5vfvV3bcwlmbxvLXbhx67blzaksNPfMQGAqfI9dqLEUwSP774INmwTvzDzV0HMj sYTG/5KPyXzSJbT/sfBCCQI7+fyazKbnNqANyJdtSbQhDwJyaVpBBwD+L7bYlnHoz9MYap VXKsiKwOwa4elN3/cK4gunCBo065gsj068glWujv6DSgBVFumCMAz8FjBfvpDTixJJq5iU zfytQpVpwqPqN8HZsDASPu9Odsybhu7Bf/GftyE22Dpgn4IrxShjm1OusEBZtahRQwzX1z T2a8HkD3qbpHtbApe4k43rikE4ekOq/Lc7OvufhJTHUYiCGSlOewln4CwV+aCQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtHjz5NK7z17Lc; Mon, 11 Mar 2024 00:30: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 42B0UVd5002991; Mon, 11 Mar 2024 00:30:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42B0UVJk002988; Mon, 11 Mar 2024 00:30:31 GMT (envelope-from git) Date: Mon, 11 Mar 2024 00:30:31 GMT Message-Id: <202403110030.42B0UVJk002988@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: 2c34a6f77008 - stable/13 - posix_spawnattr_setflags(3): validate argument List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 2c34a6f77008780307df85d9387adf37bf74026f Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=2c34a6f77008780307df85d9387adf37bf74026f commit 2c34a6f77008780307df85d9387adf37bf74026f Author: Konstantin Belousov AuthorDate: 2024-03-03 13:19:37 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-11 00:29:51 +0000 posix_spawnattr_setflags(3): validate argument (cherry picked from commit 80ac36c3a2a87a19790eba487466bf70d55f566e) --- lib/libc/gen/posix_spawn.c | 4 ++++ lib/libc/gen/posix_spawnattr_getflags.3 | 7 +++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/lib/libc/gen/posix_spawn.c b/lib/libc/gen/posix_spawn.c index 77f7dd9955cd..49a63bb40501 100644 --- a/lib/libc/gen/posix_spawn.c +++ b/lib/libc/gen/posix_spawn.c @@ -630,6 +630,10 @@ posix_spawnattr_getsigmask(const posix_spawnattr_t * __restrict sa, int posix_spawnattr_setflags(posix_spawnattr_t *sa, short flags) { + if ((flags & ~(POSIX_SPAWN_RESETIDS | POSIX_SPAWN_SETPGROUP | + POSIX_SPAWN_SETSCHEDPARAM | POSIX_SPAWN_SETSCHEDULER | + POSIX_SPAWN_SETSIGDEF | POSIX_SPAWN_SETSIGMASK)) != 0) + return (EINVAL); (*sa)->sa_flags = flags; return (0); } diff --git a/lib/libc/gen/posix_spawnattr_getflags.3 b/lib/libc/gen/posix_spawnattr_getflags.3 index 9a468cbb8b0f..18cf6683e935 100644 --- a/lib/libc/gen/posix_spawnattr_getflags.3 +++ b/lib/libc/gen/posix_spawnattr_getflags.3 @@ -83,9 +83,12 @@ The default value of this attribute is as if no flags were set. .Sh RETURN VALUES The .Fn posix_spawnattr_getflags -and +function returns zero. +The .Fn posix_spawnattr_setflags -functions return zero. +function returns zero on success, and +.Er EINVAL +on failure due to invalid flag specified. .Sh SEE ALSO .Xr posix_spawn 3 , .Xr posix_spawnattr_destroy 3 , From nobody Mon Mar 11 00:30:32 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtHk11mkGz5DDcX; Mon, 11 Mar 2024 00:30: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 4TtHk06xvcz4ttH; Mon, 11 Mar 2024 00:30:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710117033; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lhQDq065743AEf4+af9GkQDsm/fcBZX8i0uYMjQrFnw=; b=u3ilPiIjplTotE5n4dzJ4UnhYCIDZKjDnmFWjRAd8kMFqVC5gLxaZEGPC6cXALo9HQMlXm RQmg/jmqdy8hTxPSL0ak9y12SNxWjO2bSRstzQYktebOqO6389MkRk+sBb9CtNVJ4e8t0Q F+HRUbR43BVhaxEarC26WcLpWkCWDnng4oAtQVzozL5/QK8XTLioIfHh5EWjF6YHclE7Dl 8XNaBI4mF/uCU2C7lWxEH0TY8XMWLGGBcieC+TKD/8v8gcORqXJWfkEGJgzqwCECgP3J7S qTGOxT9YtyJZt1OmQmnXDf7aAo6WXb41gyPMyGu+BKG6NQo42vQUMv3scz4XwQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710117033; a=rsa-sha256; cv=none; b=X3YU8SIDlnDAv6Td+/qKiM/p+khB9+BRJHZYykAIYAlPHwHQsj6E+5otWaSGFSvqUMeBV3 HQMnUurKU0QSJrVldb+Vabf3BXgs3tmFUicYlX1IVGkOj3e0Si92GPnklUIRq1nqIPqZnk mb2heVjeUg91kbQCX9i8UXhOqTjNZYqJmbBKT4ecNGdU3kdVlwL9a8b5Nt0a3mXq/cOHC0 oB5HRHqqLq0TT6BTanA9MZUnHEXVzn66SP4zviAVNr0DH0DU/3sMPQ4gamcvlWNUtB6LH3 FR/XS02mDmRr0unYDF7SWGHFYBL0kCfX3RGJO1KDObWFHfqb7ursu7HldZOW2A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710117033; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lhQDq065743AEf4+af9GkQDsm/fcBZX8i0uYMjQrFnw=; b=b9Z+5GyhiBYJIWmmyrwL2Q5jkWmOXhk5zwlPuKzMDP3aCDBacuY8uL9HaVaiQJFU7/O2Qj AUX+Wogm2TXULeyuBFR+lUEDk+LBzPjchH05kLZsJTx6yLfjv1e0sB4OQZFXHOvdIPyy9F 3ybB/2eU0GthJlC9iTPp+0OYqahGgE76nOB+QG593lH2U7LR6DX2Q8T/udnmXBwpKFYlQO KPpZoE5GDBVUo7bizEaERt+14ABHEMlOYj2ZFf3lUA38YDZNgwNpft+9N/4GJDJUxmZ38K TNk+ZMZV5JYSCptO6IHlK9E7F5uqRk7qDIMjm04IjO7i0itT1nwqw3qoigtGxQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtHk06LbVz16h1; Mon, 11 Mar 2024 00:30: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 42B0UWK5003028; Mon, 11 Mar 2024 00:30:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42B0UWJ7003025; Mon, 11 Mar 2024 00:30:32 GMT (envelope-from git) Date: Mon, 11 Mar 2024 00:30:32 GMT Message-Id: <202403110030.42B0UWJ7003025@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: fc287f28dfc9 - stable/13 - posix_spawn(3): add POSIX_SPAWN_DISABLE_ASLR_NP List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: fc287f28dfc99bfe47d7a6071f52ddecd9983472 Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=fc287f28dfc99bfe47d7a6071f52ddecd9983472 commit fc287f28dfc99bfe47d7a6071f52ddecd9983472 Author: Konstantin Belousov AuthorDate: 2024-03-03 13:30:04 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-11 00:29:51 +0000 posix_spawn(3): add POSIX_SPAWN_DISABLE_ASLR_NP (cherry picked from commit 822042fdfca79faada89e67110b01dd9ecc05996) --- include/spawn.h | 1 + lib/libc/gen/posix_spawn.c | 13 +++++++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/include/spawn.h b/include/spawn.h index 9643fcda5c13..a93315930954 100644 --- a/include/spawn.h +++ b/include/spawn.h @@ -59,6 +59,7 @@ typedef struct __posix_spawn_file_actions *posix_spawn_file_actions_t; #define POSIX_SPAWN_SETSCHEDULER 0x08 #define POSIX_SPAWN_SETSIGDEF 0x10 #define POSIX_SPAWN_SETSIGMASK 0x20 +#define POSIX_SPAWN_DISABLE_ASLR_NP 0x40 __BEGIN_DECLS /* diff --git a/lib/libc/gen/posix_spawn.c b/lib/libc/gen/posix_spawn.c index 49a63bb40501..eda654a2f7e6 100644 --- a/lib/libc/gen/posix_spawn.c +++ b/lib/libc/gen/posix_spawn.c @@ -29,6 +29,7 @@ #include #include "namespace.h" #include +#include #include #include @@ -92,7 +93,7 @@ static int process_spawnattr(const posix_spawnattr_t sa) { struct sigaction sigact = { .sa_flags = 0, .sa_handler = SIG_DFL }; - int i; + int aslr, i; /* * POSIX doesn't really describe in which order everything @@ -140,6 +141,13 @@ process_spawnattr(const posix_spawnattr_t sa) } } + /* Disable ASLR. */ + if ((sa->sa_flags & POSIX_SPAWN_DISABLE_ASLR_NP) != 0) { + aslr = PROC_ASLR_FORCE_DISABLE; + if (procctl(P_PID, 0, PROC_ASLR_CTL, &aslr) != 0) + return (errno); + } + return (0); } @@ -632,7 +640,8 @@ posix_spawnattr_setflags(posix_spawnattr_t *sa, short flags) { if ((flags & ~(POSIX_SPAWN_RESETIDS | POSIX_SPAWN_SETPGROUP | POSIX_SPAWN_SETSCHEDPARAM | POSIX_SPAWN_SETSCHEDULER | - POSIX_SPAWN_SETSIGDEF | POSIX_SPAWN_SETSIGMASK)) != 0) + POSIX_SPAWN_SETSIGDEF | POSIX_SPAWN_SETSIGMASK | + POSIX_SPAWN_DISABLE_ASLR_NP)) != 0) return (EINVAL); (*sa)->sa_flags = flags; return (0); From nobody Mon Mar 11 00:30:33 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtHk22RK7z5DDKq; Mon, 11 Mar 2024 00: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 4TtHk20dF4z4trK; Mon, 11 Mar 2024 00: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=1710117034; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7szmvXepgFCAAH8siR16vCwlodAs8D/ifzKo+2PuvWw=; b=hBqa00GM6mJPbvxfWoXydQvUIo+QiFRc4oHT9QeI/EdBVTnz++QCFl6kM0cbRIuw4HnRMI /USRXfRlt3+vValnThry0tbHXEvUuEU2HrCUhWje92WUNcpG5RLBnufwjU4UvO0xlbqNle 6vtRiq+M0iXS/RjEXwHshmWjv7hfoJFoc1WEC/c8ei1/c68AsVC+DMq6WCFUKLniV+haPz kKPtDduJgk3SvhM3wNus4XCrLsRsrUpwJWZ+UHN1kVSmU9RG7dPplmNpk0J+4UOnAtqSne OIsFjULnG887sa6uBWkGn7WgG0To0sq1IjU6ZXJdekFuhCYs40E/lxIKGrFxEA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710117034; a=rsa-sha256; cv=none; b=QyF4fehfzGJHUbyl/WlWf1VfczdBpaLlW3JFtknkqUsIa5vtBKOaLXVm+7BBU7iRx+/0Ol 5DLJ9V2b1QSLIGs4mPh3qPZvHGdRPL88d8lVwUgeYmqwiX/ZbaxLq7deFmuKbSPKgoBQWH +pyh72xeD3R8EzrMrQ6DvicOuNaBo/XJq3pZLL+EGnXHsrIe/jsOgqJDleFlk5zXHpTSGM XAe9yyxel8Z3lwn0gmbB1mg5Gsd2NlqKhryL/I6m95cssGvzyWTf/2dMAre+mJ6rornS67 A8/BHM7ZzU39DUP65qgNnyZmE1HvP/qSpaWqOCo0TTc5OrUWN4yriWoawH4Jtw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710117034; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7szmvXepgFCAAH8siR16vCwlodAs8D/ifzKo+2PuvWw=; b=Jmanddpk/7iTSn1D5MXcVSIdeGeTs1rEajq384IwI+Iyx4vujWciR3KNaT27X4uCs8MmIO ZVpBaPnvnwPi37IO4LdYOW3Zwb3q8IEiZb2yvebW2Ljt3uDH3qehc3onqorAzGFIMcnVdS tidI0xBoF3gt9AQYkTy8s5JHEW+ujt/4Ru9W+x+JTkljGplRJaGft7Ya4LlyNTFs64gDlH p2FqlcbxkRzjiEl2iHA//8cXfkUBHUzo/zyN4AzjMjZMoFCSAXhNj8EKTDU59JCSlXz4lK QH+rP+yWuDOuDyyX4LHDTZ5b9L8tCOoBztDO4YS9Ye9qFxlk1bpVuZ2xBXGmuQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtHk20DTsz16h2; Mon, 11 Mar 2024 00: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 42B0UXHm003064; Mon, 11 Mar 2024 00:30:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42B0UXOe003062; Mon, 11 Mar 2024 00:30:33 GMT (envelope-from git) Date: Mon, 11 Mar 2024 00:30:33 GMT Message-Id: <202403110030.42B0UXOe003062@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: b52405d11db5 - stable/13 - posix_spawn(3): document POSIX_SPAWN_DISABLE_ASLR_NP List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: b52405d11db5f959106f19568d4a8f94e951cee3 Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=b52405d11db5f959106f19568d4a8f94e951cee3 commit b52405d11db5f959106f19568d4a8f94e951cee3 Author: Konstantin Belousov AuthorDate: 2024-03-03 22:19:22 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-11 00:29:51 +0000 posix_spawn(3): document POSIX_SPAWN_DISABLE_ASLR_NP (cherry picked from commit a725a7a24de585e996f21e190b5af41261ebc774) --- lib/libc/gen/posix_spawn.3 | 12 +++++++++++- lib/libc/gen/posix_spawnattr_getflags.3 | 3 ++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/lib/libc/gen/posix_spawn.3 b/lib/libc/gen/posix_spawn.3 index a9ff7b2b21da..55559ae7222b 100644 --- a/lib/libc/gen/posix_spawn.3 +++ b/lib/libc/gen/posix_spawn.3 @@ -32,7 +32,7 @@ .\" the referee document. The original Standard can be obtained online at .\" http://www.opengroup.org/unix/online.html. .\" -.Dd November 28, 2021 +.Dd March 4, 2024 .Dt POSIX_SPAWN 3 .Os .Sh NAME @@ -297,6 +297,15 @@ and the signals being indicated in the spawn-sigdefault attribute of the object referenced by .Fa attrp . .Pp +The Address Space Layout Randomization for the newly spawned process +can be disabled by specifying the +.Dv POSIX_SPAWN_DISABLE_ASLR_NP +flag in the spawn-flags attribute. +This setting is inherited by future children of the child as well. +See +.Xr procctl 2 +for more details. +.Pp If the value of the .Fa attrp pointer is NULL, then the default values are used. @@ -432,6 +441,7 @@ action. .Xr execve 2 , .Xr fcntl 2 , .Xr open 2 , +.Xr procctl 2 , .Xr sched_setparam 2 , .Xr sched_setscheduler 2 , .Xr setpgid 2 , diff --git a/lib/libc/gen/posix_spawnattr_getflags.3 b/lib/libc/gen/posix_spawnattr_getflags.3 index 18cf6683e935..308bbb386d76 100644 --- a/lib/libc/gen/posix_spawnattr_getflags.3 +++ b/lib/libc/gen/posix_spawnattr_getflags.3 @@ -32,7 +32,7 @@ .\" the referee document. The original Standard can be obtained online at .\" http://www.opengroup.org/unix/online.html. .\" -.Dd March 24, 2008 +.Dd March 4, 2024 .Dt POSIX_SPAWNATTR_GETFLAGS 3 .Os .Sh NAME @@ -75,6 +75,7 @@ It is the bitwise-inclusive OR of zero or more of the following flags .It Dv POSIX_SPAWN_SETSIGMASK .It Dv POSIX_SPAWN_SETSCHEDPARAM .It Dv POSIX_SPAWN_SETSCHEDULER +.It Dv POSIX_SPAWN_DISABLE_ASLR_NP .El .Pp These flags are defined in From nobody Mon Mar 11 00:30:35 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtHk33qL9z5DDcd; Mon, 11 Mar 2024 00:30: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 4TtHk31njCz4v1t; Mon, 11 Mar 2024 00:30:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710117035; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SNirJomNJ/QpxQQs1mOJodRIw59+GBj7bvXKjnIPZwc=; b=eVtLxPYPfFtFOJxXUJAWz6LP1sPVQSa+TjXyw1mTjL4f6Clnz9HDu/e43XS9WsE5Rq3FoC D/Nlh9gs82JulxuPIUTBT+yb7Kwowm5AyZ8GGtmX6hoZjVsPTK6ir3/DIEIVv+2E9iFuCp w/rV9wt6rmRE6afrdirq4aANUFrJ5AdtoBO7/q7K2i1aVK5yJqA+HQyUp4WA8QIXP2FaXz M1rFhF4wAbjuLJrwAHwcVZb0Q6APRNlD/TEe79WZWZhjJ355n9swa+H/G/qCwZiAhEx3aQ AZ7HI4SN2bkpJx4VfClwV7TCkutOYYvXm4fDToaNKkGcz0NteN0mKRNaO3M8yg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710117035; a=rsa-sha256; cv=none; b=G1jpdbIMIaefsRYkryUxRclsOt55MMZ3MYZHeLE2cLmd/nNS0NpityfnCqtNIfsh0cBq1z eVscc0lTIAHx4zXOLLvhvhcCVYo6LAq8a7OLhcGvbl3AsMoXSW5M27p1IB8w9ooMmMDPx6 0w7w7n0o44cyaO0vcelzsyCFY8EEZsi/gMF4RxJs3j9e2+KkVNsstDhpYsutotHL+Vi4Zo R5pOIDLF9ACJcjkM+nf86TZmMqapExtyaxp3cMpFsqtdhfqfzBtYdNtUwwWojytx7/SEu2 kcpHU5VqyXyy2Sb9cc/M0DippxSi/EWBKhG/iaWbWvVq1Ej6vAHcy6O4cT/5/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=1710117035; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SNirJomNJ/QpxQQs1mOJodRIw59+GBj7bvXKjnIPZwc=; b=ycPHC9Ow9LC3AsPlSEE0EMqVF3SiUcmw1D3BRB06vMs2FT7LW5qqXxkn5RRBZYskGnSTq4 3iqre87N5ZCG6dfG3D0L3/npmghozmBaQ4PkT/di7TBbmHisiRTsoJtTO0SnRuHFtw4RLS ub2nnD6nSZKRuO5cbrt4RkBCQNM2yZHZHZmuJlSKoRrkrJESORpGi+6OW9HC5h3EsK+0Ad cZIzB1HnqUzOxO/3XPPbixdC/cmQdNXs++xlZUi/3lrfE5+nqnG0HjY2WoIu8aNcgwhAdD MXG548aagxcESEKSw9L/53pFiB/UYXlF3zjr5W+lS0os9PwOKQnQacyCc+7okw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtHk31FrFz16pY; Mon, 11 Mar 2024 00:30: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 42B0UZ5Z003107; Mon, 11 Mar 2024 00:30:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42B0UZca003104; Mon, 11 Mar 2024 00:30:35 GMT (envelope-from git) Date: Mon, 11 Mar 2024 00:30:35 GMT Message-Id: <202403110030.42B0UZca003104@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: d27a8000c4b2 - stable/13 - posix_spawn.c: fix typo in comment List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: d27a8000c4b26fea1f417b053550c0fae701fa57 Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=d27a8000c4b26fea1f417b053550c0fae701fa57 commit d27a8000c4b26fea1f417b053550c0fae701fa57 Author: Konstantin Belousov AuthorDate: 2024-03-06 06:19:16 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-11 00:29:51 +0000 posix_spawn.c: fix typo in comment (cherry picked from commit ebaf907114aa6bda49be4204185072571396bb0d) --- lib/libc/gen/posix_spawn.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libc/gen/posix_spawn.c b/lib/libc/gen/posix_spawn.c index eda654a2f7e6..67e6e3a19876 100644 --- a/lib/libc/gen/posix_spawn.c +++ b/lib/libc/gen/posix_spawn.c @@ -330,7 +330,7 @@ do_posix_spawn(pid_t *pid, const char *path, #ifdef _RFORK_THREAD_STACK_SIZE /* * x86 stores the return address on the stack, so rfork(2) cannot work - * as-is because the child would clobber the return address om the + * as-is because the child would clobber the return address of the * parent. Because of this, we must use rfork_thread instead while * almost every other arch stores the return address in a register. */ From nobody Mon Mar 11 00:30:36 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtHk50Djbz5DDXQ; Mon, 11 Mar 2024 00:30:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TtHk43BGGz4v01; Mon, 11 Mar 2024 00:30:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710117036; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BmL29skH24JotQgGoJl9RjumDg+RyZJQb1Ch8rquBbA=; b=fX0duFRzM8tpSUScWcukcxTNOQfT2WVv5WZWwv326qhB85kjnxx9KEnkfHH1ZZFoTjmjjG Ermowk4Lb52xyVBTj8hsnDA0QbKjXTjIY7qucIHCZnZ1de4htkrBe33LCPKd/A9+VTnO/4 fcZa0VVwKC0tWWurZQl2xknPYj8FGfwvjfyaAyBWlMzhwWUKkpmr3r33EUYwUHQMGeU7Pg RZxQpa1kFVYf2An+IUB7JmArFSnQlBDQo0WUUtcnOUEZ0CSwpJAEdJo0mcN3jZLXyDEV2e 3JON88cRxoF5P2g+ORLXNOsuWj50NM1B5c65FkCA8t1/ieJFmG2+S3fyJkXWHg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710117036; a=rsa-sha256; cv=none; b=HIcfBHN6yox6UK47jeliql9jXTdKAkuAAfhRzlVv8uC2ZC1sB6uvXsBa7wZzmy5JALdVml 8dT65H7pnVdQ5bOR/HEkCrX4LyYi5RREg7pc8zR/70AAkJk5vnQ57lMwB/OvQMRzl5TSLO qQT5F+BPVbi3UDx/MSDnwyJ9M7bgsYs5Yd4fDBOLj2isOEJn9xZA4j7rlId1Q7a9ROYIvr yaPFansqddNaorxirDhKmLWti7WLmjuICBE3k33KsDmJBoQ/BK6DZ6zuWAhoB3G6+F0NVO Esq2G3RYpY4HBT0ca/9pAHLh82mLmSj7S8zJQZZTittoqZ7jaJPmfmC6/YJUvg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710117036; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BmL29skH24JotQgGoJl9RjumDg+RyZJQb1Ch8rquBbA=; b=b7TBXCREWqxOHK1ACDjZ1mYr2d13Kk7QKdAJLI9EtlRpEkbhQpqK+xcF9+mKAn+5ipPjTV h8apu7dzS0ccySmqABEvKGGDpLkMSXtsHW8Ob4m0wEnaSbpfL6kW1QwVsUBUYHT3IfHMbJ ZafwDcnU7vOfrcKfy8MbnubqaERURKqX9PmS9nG1VzP6Zvcqx963c+3OXPCvsvnezpld3i vAErRoAySKG+hE1Htw33dVMdQS0mf5MEcGvGGKzAQNhvWiK6ArNzJafWncfcjupvQIS5Td OXbF2iNcLdKbEzWrq0wqSRCFVu0Yz+ybetJ++dbBVJlEXfu3SulsKqrh1tpxNw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtHk42KdCz16sd; Mon, 11 Mar 2024 00:30:36 +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 42B0UavI003175; Mon, 11 Mar 2024 00:30:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42B0UarT003172; Mon, 11 Mar 2024 00:30:36 GMT (envelope-from git) Date: Mon, 11 Mar 2024 00:30:36 GMT Message-Id: <202403110030.42B0UarT003172@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: c4e18a7ba35e - stable/13 - libc posix_spawn(): explain why rtld can be used after fork List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: c4e18a7ba35e663d6d0765545ab6fd8377c55366 Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=c4e18a7ba35e663d6d0765545ab6fd8377c55366 commit c4e18a7ba35e663d6d0765545ab6fd8377c55366 Author: Konstantin Belousov AuthorDate: 2024-03-06 07:24:22 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-11 00:29:51 +0000 libc posix_spawn(): explain why rtld can be used after fork (cherry picked from commit 2ce23b1f76721e44646fc98ba4e24a113a6d5972) --- lib/libc/gen/posix_spawn.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/libc/gen/posix_spawn.c b/lib/libc/gen/posix_spawn.c index 67e6e3a19876..064bae186876 100644 --- a/lib/libc/gen/posix_spawn.c +++ b/lib/libc/gen/posix_spawn.c @@ -326,6 +326,11 @@ do_posix_spawn(pid_t *pid, const char *path, * ideal vfork(2) if we get an EINVAL from rfork -- this should only * happen with newer libc on older kernel that doesn't accept * RFSPAWN. + * + * Combination of vfork() (or its equivalent rfork() form) and + * a special property of the libthr rtld locks ensure that + * rtld is operational in the child. In particular, libthr + * rtld locks do not store owner' tid into the lock word. */ #ifdef _RFORK_THREAD_STACK_SIZE /* From nobody Mon Mar 11 00:39:53 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtHwn4f35z5DFKw; Mon, 11 Mar 2024 00:39: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 4TtHwn4B1pz3xcs; Mon, 11 Mar 2024 00:39:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710117593; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UfHP+r8p1945kTNTPrxLtxvkxMlsHbuMOGdUnPGopkc=; b=JJ4/1iwvliP58qMAOvn+qu8dfl79xKGFzFrGqgWyPq9k3g+YH/m04KiRT8S59UXyfzRVn0 PIAdwG7azmowiTVds6BDqcmdv/iS3DN7NwgRPmpp3guHQsZkzw4avDJvAlct2tLou8MrNT k4EijuulzjoIHx0RCacVIDymy/Jus0Q7QPKAdkZ8DrrnLBzog7KqDJXWKyOAUkZ11vxp6W TRCuENlPcuu2MjNCCNqG7LJA/yTd7syfjFxGi2/qEFyXp2D1lE3iQn/pxxOkdivqq0RqKV e1lSmGihrDa8bJi8juvF4kcXlFaCuDAuCykoYrKYtjmWA+FM+VX6wmzC8lb7oQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710117593; a=rsa-sha256; cv=none; b=jALZAubFH5LVDJCQq911xEwTFNUwar6F/7SR9U1GINSBYuguthA56tQXXc/PRYWguDBimS tKwh/R0MFlyqSqoS2reBdIzRB5VO4I+3HbqeEbkquW4A85VOzQyzWADIoHA+uE+kcqBLJP aTQMIx5wg/2W/GtKqw12sGAZB7RBvWDZOrFihWZupeDGV1acrYUoA9YWxT/6nv0bgSqbrX CFVDmZbcDm5epbvjPsjDZzZuI3BpVLfl7zejR9xU3lWXWciNZVI8fvCDjG+dTyHuOW+z5d /jyh8WqgN6HZ9Zg6h7D6rywbMARGw1cf45HkRbThc4Qe1V67KxANY/dilVJd1A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710117593; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UfHP+r8p1945kTNTPrxLtxvkxMlsHbuMOGdUnPGopkc=; b=RMAm/XcdZPEgFA96NLOFN2WYEtMsCOWqVw9mRbU5yArj6exgcFRt2hqJ0ZPC7sXc2E6+Fj OR9v/Ks2xy8JdG6em8vxVm2M85kQPn0bN9WhHJfHi+TVQogtQKJSkxE2m3RhUq85sHBfkA 1tuHiO5tkNI3YjutSJQf/Dpxx0kHhG5WEaqzRVPo348SMs7epyOr77Sx8D1W97Gsf3IVuQ wesC4PM6yuWDJMoWtmZ2aNxjDxO8xFyxPBk5PvYIUIj2dFOkwrwKJvN5MGtB/FJRbNPvYV FIUFvA1SDyDNk35vtZn6QmRfOegzsDsoEqAyf1DYYnTGQkHmkfsgU0IscMwCCg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtHwn3kS8z17Jk; Mon, 11 Mar 2024 00:39: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 42B0drGQ011210; Mon, 11 Mar 2024 00:39:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42B0drHg011207; Mon, 11 Mar 2024 00:39:53 GMT (envelope-from git) Date: Mon, 11 Mar 2024 00:39:53 GMT Message-Id: <202403110039.42B0drHg011207@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Christos Margiolis Subject: git: f9e317a7b41b - stable/14 - pcm.4: Fix lint warnings List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f9e317a7b41bdddab124ae58921e2334e707777c Auto-Submitted: auto-generated The branch stable/14 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=f9e317a7b41bdddab124ae58921e2334e707777c commit f9e317a7b41bdddab124ae58921e2334e707777c Author: Christos Margiolis AuthorDate: 2024-02-26 23:28:53 +0000 Commit: Christos Margiolis CommitDate: 2024-03-11 00:39:47 +0000 pcm.4: Fix lint warnings Ignore the "manual not found" warnings for snd_ai2s(4) and snd_davbus(4). Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D43996 (cherry picked from commit 8bfb23abf882afdca0a0530ef1231ac59963bc4a) --- share/man/man4/pcm.4 | 97 ++++++++++++++++++---------------------------------- 1 file changed, 33 insertions(+), 64 deletions(-) diff --git a/share/man/man4/pcm.4 b/share/man/man4/pcm.4 index 54efd86a2b52..cd0d29519f0c 100644 --- a/share/man/man4/pcm.4 +++ b/share/man/man4/pcm.4 @@ -167,16 +167,16 @@ This will mute the input channel per default. Multichannel audio, popularly referred to as .Dq surround sound is supported and enabled by default. -The FreeBSD multichannel matrix processor supports up to 18 interleaved -channels, but the limit is currently set to 8 channels (as commonly used -for 7.1 surround sound). +The +.Fx +multichannel matrix processor supports up to 18 interleaved channels, but the +limit is currently set to 8 channels (as commonly used for 7.1 surround sound). The internal matrix mapping can handle reduction, expansion or re-routing of channels. This provides a base interface for related multichannel .Fn ioctl support. -Multichannel audio works both with and without -.Tn VCHANs . +Multichannel audio works both with and without VCHANs. .Pp Most bridge device drivers are still missing multichannel matrixing support, but in most cases this should be trivial to implement. @@ -202,21 +202,18 @@ tunable. Each device can optionally support more playback and recording channels than physical hardware provides by using .Dq virtual channels -or -.Tn VCHANs . -.Tn VCHAN -options can be configured via the +or VCHANs. +VCHAN options can be configured via the .Xr sysctl 8 interface but can only be manipulated while the device is inactive. .Ss VPC -FreeBSD supports independent and individual volume controls for each active +.Fx +supports independent and individual volume controls for each active application, without touching the master .Nm volume. This is sometimes referred to as Volume Per Channel (VPC). -The -.Tn VPC -feature is enabled by default. +The VPC feature is enabled by default. .Ss Loader Tunables The following loader tunables are used to set driver configuration at the .Xr loader 8 @@ -238,12 +235,9 @@ Enabling this will make bass and treble controls appear in mixer applications. This tunable is undefined by default. Equalizing is disabled by default. .It Va hint.pcm.%d.vpc -Set to 1 or 0 to explicitly enable (1) or disable (0) the -.Tn VPC -feature. +Set to 1 or 0 to explicitly enable (1) or disable (0) the VPC feature. This tunable is undefined by default. -.Tn VPC -is however enabled by default. +VPC is however enabled by default. .El .Ss Runtime Configuration There are a number of @@ -365,16 +359,12 @@ in possible underruns if the application cannot keep up with a rapid irq rate, especially during high workload. The default value is 1, which is considered a moderate/safe latency profile. .It Va hw.snd.maxautovchans -Global -.Tn VCHAN -setting that only affects devices with at least one playback or recording channel available. -The sound system will dynamically create up to this many -.Tn VCHANs . +Global VCHAN setting that only affects devices with at least one playback or +recording channel available. +The sound system will dynamically create up to this many VCHANs. Set to .Dq 0 -if no -.Tn VCHANs -are desired. +if no VCHANs are desired. Maximum value is 256. .It Va hw.snd.report_soft_formats Controls the internal format conversion if it is @@ -419,13 +409,11 @@ This means that any changes to the volume will be lost. Enabling this will preserve the volume, at the cost of possible confusion when applications tries to re-open the same device. .It Va hw.snd.vpc_mixer_bypass -The recommended way to use the -.Tn VPC -feature is to teach applications to use -the correct +The recommended way to use the VPC feature is to teach applications to use the +correct .Fn ioctl : -.Dv SNDCTL_DSP_GETPLAYVOL, SNDCTL_DSP_SETPLAYVOL, -.Dv SNDCTL_DSP_SETRECVOL, SNDCTL_DSP_SETRECVOL. +.Dv SNDCTL_DSP_GETPLAYVOL , SNDCTL_DSP_SETPLAYVOL , +.Dv SNDCTL_DSP_SETRECVOL , SNDCTL_DSP_SETRECVOL . This is however not always possible. Enable this to allow applications to use their own existing mixer logic to control their own channel volume. @@ -438,30 +426,19 @@ matrixing, rate converting and equalizing. The pure .Nm stream will be fed directly to the hardware. -If -.Tn VCHANs -are enabled, the bitperfect mode will use the -.Tn VCHAN -format/rate as the definitive format/rate target. -The recommended way to use bitperfect mode is to disable -.Tn VCHANs -and enable this sysctl. +If VCHANs are enabled, the bitperfect mode will use the VCHAN format/rate as +the definitive format/rate target. +The recommended way to use bitperfect mode is to disable VCHANs and enable this +sysctl. Default is disabled. .It Va dev.pcm.%d.[play|rec].vchans -The current number of -.Tn VCHANs -allocated per device. -This can be set to preallocate a certain number of -.Tn VCHANs . +The current number of VCHANs allocated per device. +This can be set to preallocate a certain number of VCHANs. Setting this value to .Dq 0 -will disable -.Tn VCHANs -for this device. +will disable VCHANs for this device. .It Va dev.pcm.%d.[play|rec].vchanformat -Format for -.Tn VCHAN -mixing. +Format for VCHAN mixing. All playback paths will be converted to this format before the mixing process begins. By default only 2 channels are enabled. @@ -491,8 +468,7 @@ Quadraphonic, 4 channels (front/rear left and right). 8 channels (4.0 + center + LFE + left and right side). .El .It Va dev.pcm.%d.[play|rec].vchanmode -.Tn VCHAN -format/rate selection. +VCHAN format/rate selection. Available options include: .Bl -tag -width 2n .It fixed @@ -527,9 +503,7 @@ The downside is that the hardware DMA mode needs to be restarted, which may cause annoying pops or clicks. .El .It Va dev.pcm.%d.[play|rec].vchanrate -Sample rate speed for -.Tn VCHAN -mixing. +Sample rate speed for VCHAN mixing. All playback paths will be converted to this sample rate before the mixing process begins. .It Va dev.pcm.%d.polling @@ -552,17 +526,12 @@ Channel statistics are only kept while the device is open. So with situations involving overruns and underruns, consider the output while the errant application is open and running. .Ss IOCTL Support -The driver supports most of the -.Tn OSS +The driver supports most of the OSS .Fn ioctl functions, and most applications work unmodified. A few differences exist, while memory mapped playback is -supported natively and in -.Tn Linux -emulation, memory mapped recording is -not due to -.Tn VM -system design. +supported natively and in Linux emulation, memory mapped recording is not due +to VM system design. As a consequence, some applications may need to be recompiled with a slightly modified audio module. See From nobody Mon Mar 11 04:47:12 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtPQ83pj9z5Dddd; Mon, 11 Mar 2024 04:47: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 4TtPQ83JZWz4KTR; Mon, 11 Mar 2024 04:47:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710132432; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sur33/r07fjOigoVgwI7K2TQ0VskSGcsp0ttUtyYChw=; b=MVE5lgWWhb7lKcnyepVn3c9BlDOMX39+4RL6gjUvNWb4a2A/68Fa61GgJTalhpyPhUm4SY bwls2satVZAaohyTuKJOstX6Bvsh5G3gUgmBUQEgyWnOU2PA+UnjKjW2tWRSkSEpUAp6qp 6rS1l5NWyWa7YgQ7m1WkFFfKR7A/ZqGO9VzYiMpSayqZVM/ldQNuBhYrdkFPhlyE3q8c1v QelBir/FK71hFsJLtnXvQh/cUzUG3ffWK/LiBcrZxDCo34bIIX8kAoDQOOgRkieNOZhdwB A6zOCq08PHPkXV/hq13MLffHXo4oP3lLEZZoH1Uy47EWtkrOKzR1J+s8WDBOnQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710132432; a=rsa-sha256; cv=none; b=SnYYcA0Hu3Nm8VQ5rEHvRK6BB/TKI5Eq9+OPN/3LET5g1cNqoZx8oAaXh+8+5gqBcFEsVs mErgtFQ47axvvuPD3OO9z5yp0fPL5oqS/OANCiVoSXZzPlXpt3aWWkGpNG4oYLk6W0Gaiq jPOGVq+qKKFSF9Mr+WwWMZdNI2KFErRUaDoe6fIIcF5fNYg8w7aLxW/NvaA+kiAjk8NgVx 2LIykcYboRD2+AruHLPwcpd549WD5PAtqrRmcLFGmItbyduYyze7PGg6Ykpxqvg233Ma+a NXU2ABzdUlDjduusc3Np7ZeJn8Oi390ZT+GPMl1rOu0yBowJ7LJ7LAqkkRAHCg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710132432; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sur33/r07fjOigoVgwI7K2TQ0VskSGcsp0ttUtyYChw=; b=YrJxBLNlaKzNz7hdVI2OYDVCGX22ZrkwCbMhFW+ArV9wCD2kLmdTm/rlzecGB2KcDkzD3v HhqvKCL9Oe+oh/Y0wBowP1LICuR/XHFfG5ebstdByvbwnvRJ3JKtNd0vLjtmfuPybGnThW aoA5dmXqh4BMSBbjt2zmlXCU8lX8u+PcMHnptYfZMoP3LhVg1Lj9TAcHUue+kYCHN7PBTP ae4cEX4rptkQHrarUNvk8ko/ehy2K+MhYpBXi4gweaxeMPX1PCFJqYvO6u4ULT5YY/Mlrn +HxO2YWxurAYW87SLgwUy6R1NmlCaZhSYKvFHurOyiro8xHAvRJ9zWjt+hAZkw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtPQ82ngbzFPV; Mon, 11 Mar 2024 04:47: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 42B4lCqd034380; Mon, 11 Mar 2024 04:47:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42B4lCJH034377; Mon, 11 Mar 2024 04:47:12 GMT (envelope-from git) Date: Mon, 11 Mar 2024 04:47:12 GMT Message-Id: <202403110447.42B4lCJH034377@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Wei Hu Subject: git: 0010132dbd24 - stable/14 - Hyper-V: vPCI: fix cpu id mis-mapping in vmbus_pcib_map_msi() List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: whu X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 0010132dbd24b9d23a1f9c4a9961b7593438fa34 Auto-Submitted: auto-generated The branch stable/14 has been updated by whu: URL: https://cgit.FreeBSD.org/src/commit/?id=0010132dbd24b9d23a1f9c4a9961b7593438fa34 commit 0010132dbd24b9d23a1f9c4a9961b7593438fa34 Author: Wei Hu AuthorDate: 2024-03-08 10:00:25 +0000 Commit: Wei Hu CommitDate: 2024-03-11 04:23:18 +0000 Hyper-V: vPCI: fix cpu id mis-mapping in vmbus_pcib_map_msi() The msi address contains apic id. The code in vmbus_pcib_map_msi() treats it as cpu id, which could cause mis-configuration of msix IRQs, leading to missing interrupts for SRIOV devices. This happens when apic id is not the same as cpu id on certain large VM sizes with multiple numa domains in Azure. Fix this issue by correctly mapping apic ids to cpu ids. On vPCI version before 1.4, it only supports up to 64 vcpus for msi/msix interrupt. This change also adds a check and returns error if the vcpu_id is greater than 63. Reported by: NetApp Tested by: whu Sponsored by: Microsoft (cherry picked from commit 999174ba03642fa63c9654752993a62db461afc9) --- sys/dev/hyperv/pcib/vmbus_pcib.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/sys/dev/hyperv/pcib/vmbus_pcib.c b/sys/dev/hyperv/pcib/vmbus_pcib.c index da722eb0b834..be66393a7ab4 100644 --- a/sys/dev/hyperv/pcib/vmbus_pcib.c +++ b/sys/dev/hyperv/pcib/vmbus_pcib.c @@ -67,6 +67,7 @@ #if defined(__i386__) || defined(__amd64__) #include #include +#include #endif #if defined(__aarch64__) #include @@ -1891,11 +1892,21 @@ vmbus_pcib_map_msi(device_t pcib, device_t child, int irq, vcpu_id = VMBUS_GET_VCPU_ID(device_get_parent(pcib), pcib, cpu); vector = v_data; #else - cpu = (v_addr & MSI_INTEL_ADDR_DEST) >> 12; + cpu = apic_cpuid((v_addr & MSI_INTEL_ADDR_DEST) >> 12); vcpu_id = VMBUS_GET_VCPU_ID(device_get_parent(pcib), pcib, cpu); vector = v_data & MSI_INTEL_DATA_INTVEC; #endif + if (hpdev->hbus->protocol_version < PCI_PROTOCOL_VERSION_1_4 && + vcpu_id > 63) { + /* We only support vcpu_id < 64 before vPCI version 1.4 */ + device_printf(pcib, + "Error: " + "vcpu_id %u overflowed on PCI VMBus version 0x%x\n", + vcpu_id, hpdev->hbus->protocol_version); + return (ENODEV); + } + init_completion(&comp.comp_pkt.host_event); memset(&ctxt, 0, sizeof(ctxt)); From nobody Mon Mar 11 04:54:13 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtPZF4XHyz5DfGZ; Mon, 11 Mar 2024 04:54: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 4TtPZF3sDcz4LgH; Mon, 11 Mar 2024 04:54:13 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710132853; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A869HA9MCfAjYPKrwxXyW9F3foXqLcM2Z3TGjlYR6uM=; b=sglWQo9KN/OEOuhkKmSJIT2f2raIzac1EdFzBMdHwqNjiVC8D2wgTZkYOCEoxIL9M/7Dt6 I5pcSEcv3ZII1n4ZPcipkmLwwruhu7719Jwdvbe8xnCBnnttE5l41Gqp3uzE07njYbFUc8 hQHg9S4XK95II2GMToiGR4xVXuGPpPynqhItq5clxzvANdHKzomsrmonUHnc/+GmQyp0PL O4jJmjnfxeDZlVUMg6SNPEVLem8nELVSiKYLGTUtGSxHP9SeWxcVbNRtDSu0WnH57+GQ0y 0jUoWdwbUTHJVOw952iAL0qNi7iG8bCTXpQY72JssTBePOKCFVwGqdohuko4+Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710132853; a=rsa-sha256; cv=none; b=YjPBpL1dlE28qOBG/MdBzhaif5Dt4anVD8JqjU0twvqeL1kOcpp5RiZZLs86+v3W6FnIbo GBdPVeh1ltpharwPl5a1IJZX5yGBEjiRnAPlW1LewL6HPbQ9CLaqEl+Um5L2N/4ofvLEmv l7pajZjzArykYLxjZjNrDzidwfdVfaUgiRToOF2pNbk74r6ONCgkHg4dCgg7WOdwADSCEf TBJnDl4j5YlapToo3hIZRi3pg4/QFTdRpophlsZe/bUk7BbELYtKcvX/iiRGJ4IoCFnGGP 5qGt9K+H74jzjt7ZAF/6KHJdnurz1RQZkJ1KulY8y6cAgia67TsJq9hZi4kelw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710132853; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=A869HA9MCfAjYPKrwxXyW9F3foXqLcM2Z3TGjlYR6uM=; b=G4rkG2noWpqcJMP56fey6VKQ502L5pIpnKz8in7+QpnhaM+21qJdggdu00h9gj32DJG4R3 QIJD3kY4WWv7MYQ2qCvPTBuFCwd0L/B8Qon1UObx8VCC/PZVPvWa5sXCbf5ACZkavI+vyL wE4QQ4eumvAkAeojtFcna+NRBR69a368PDvCTApbCWuMZES93d8ue4SBIXhBcKYx1/0e6o YL5emnIo1XsoWJXWg60semuZfkEFWaBbZyfZcW3xp2+euKhY1HcgnezQ929m4q5k43wTQ7 /6VLSjgdCrdK0v1pad/g0gw4eocc7M6J64k+kpFUQQfZR9n8c4dE0ZtqkDl9nA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtPZF3SLkzG5S; Mon, 11 Mar 2024 04:54: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 42B4sD3T050356; Mon, 11 Mar 2024 04:54:13 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42B4sDDX050353; Mon, 11 Mar 2024 04:54:13 GMT (envelope-from git) Date: Mon, 11 Mar 2024 04:54:13 GMT Message-Id: <202403110454.42B4sDDX050353@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Xin LI Subject: git: 07de733b1f55 - stable/14 - MFC: liblzma: don't export lzma_lz_decoder_uncompressed List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: delphij X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 07de733b1f558ab82cd4463c8ab3ee12975d0831 Auto-Submitted: auto-generated The branch stable/14 has been updated by delphij: URL: https://cgit.FreeBSD.org/src/commit/?id=07de733b1f558ab82cd4463c8ab3ee12975d0831 commit 07de733b1f558ab82cd4463c8ab3ee12975d0831 Author: Brooks Davis AuthorDate: 2024-03-07 00:54:22 +0000 Commit: Xin LI CommitDate: 2024-03-11 04:53:46 +0000 MFC: liblzma: don't export lzma_lz_decoder_uncompressed It was removed in the 5.4.0 import. (cherry picked from commit 023fa553bf0000837738ce3ba118921ee24e3792) --- lib/liblzma/Symbol.map | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/liblzma/Symbol.map b/lib/liblzma/Symbol.map index 3b58bc759e75..938b6191b4f4 100644 --- a/lib/liblzma/Symbol.map +++ b/lib/liblzma/Symbol.map @@ -142,7 +142,6 @@ XZprivate_1.0 { lzma_index_prealloc; lzma_lz_decoder_init; lzma_lz_decoder_memusage; - lzma_lz_decoder_uncompressed; lzma_lz_encoder_init; lzma_lz_encoder_memusage; lzma_lzma2_block_size; From nobody Mon Mar 11 04:54:38 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtPZk2hD0z5DfK3; Mon, 11 Mar 2024 04:54: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 4TtPZk22XVz4Lbv; Mon, 11 Mar 2024 04:54:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710132878; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SKiVI3WvjTGsf4nozJyS+WfOZmZ7B9gkA5M0M7aADMM=; b=e5s1U8HMtj46Q43StI2Hz2IwXvDA5F5zQO568/EP2ccZvB4Hb1jlsHAunDBm+hAH3nb4vd 2j7x7kySfHeqB/HUEdk5I4/CAeYGA2fJizxl+JOxt0DNoi+XJzvRoMkHPwr9UkXOD2RDv3 pRtr9nn7mthL5Ach/I7PG2s1RzyFHgOOrx2e8CbDslI3rnHOliuKoNwoTVbZp3dIhPY5qE IJVsBZnDDlij6cN8NasTWWgDzUOaza1Mg9iqXVq7ZW7BDc6cnMY5sDaDCcOeUGKGn6FC9w cn0pZ6+KqnVg6P4GApIUTINDL3g50vImB8HwCyVQyp7cqvFHCpJsM6jyljvQqw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710132878; a=rsa-sha256; cv=none; b=xUzMZbknbGaLtX5dbLtvZ+qrnoUt/0+1fHe8lAqYcBE+GzizI5rVrNwywkaycJOIy0wbTI cETr0V2mrCLoCNezKfQ0Yfl+/ykeTmT/UjJSYI66LywQmf/ehMpEGPH1KG3Htdn3QyDJuk 5s5Y1AGzM1hqCVO3YIEfrT4bpg8TZBg/UmT58yAH4B+z1Pa48eX52rRZRpVIP106KYtz55 FqRhaCcBVyndpfWJUXgwA/BQPvVZaLcM/Xs36hIGMOLAXxw5MCE51CpA3ruZWOWb+o59tF x2deQKD4eH8rw2sfaC2kJiZ6vkL03voDn6M3DwBN6cjry6pkKqTKHxXiXSYR5g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710132878; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SKiVI3WvjTGsf4nozJyS+WfOZmZ7B9gkA5M0M7aADMM=; b=NxGi1wzATv0ONjZ5SmsjKStLSdQx9folvsr/Fy2zbB6c9TTr+HmOcMuueqonWuU22Xwyjl gl0FqOdOGqAoXANqrXw+aLVG9L+lHBBVn02w2VUs7Mpl3zkrDMnaBZRHB8/x1pqPdlUlHy LkZQsT2VCDYqYUmWs5W19l+I9iEtzCVjWW0Wv6pWo1qLW3rfon/eWLiY4i81DnwAUCvCfH vwJAP6mEJuAQf7HFaOgVL6Yc5TL09tKElBdDr9dQu1MCJ9CpWbVB1JSfdWqDRc5y1uLwWa fPCtQVklMRuEG1O1UwyAhkcWuW1XzVVSeoEeTCN7+c3nr+QnNlqvNd0csc7VOQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtPZk1f7JzGYT; Mon, 11 Mar 2024 04:54: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 42B4scnc050542; Mon, 11 Mar 2024 04:54:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42B4sc6q050539; Mon, 11 Mar 2024 04:54:38 GMT (envelope-from git) Date: Mon, 11 Mar 2024 04:54:38 GMT Message-Id: <202403110454.42B4sc6q050539@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Xin LI Subject: git: 6b7800eea4ea - stable/13 - liblzma: don't export lzma_lz_decoder_uncompressed List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: delphij X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6b7800eea4ea3442ff6d7cb5f23b49313cdb7915 Auto-Submitted: auto-generated The branch stable/13 has been updated by delphij: URL: https://cgit.FreeBSD.org/src/commit/?id=6b7800eea4ea3442ff6d7cb5f23b49313cdb7915 commit 6b7800eea4ea3442ff6d7cb5f23b49313cdb7915 Author: Brooks Davis AuthorDate: 2024-03-07 00:54:22 +0000 Commit: Xin LI CommitDate: 2024-03-11 04:54:30 +0000 liblzma: don't export lzma_lz_decoder_uncompressed It was removed in the 5.4.0 import. Reviewed by: delphij Differential Revision: https://reviews.freebsd.org/D44247 (cherry picked from commit 023fa553bf0000837738ce3ba118921ee24e3792) --- lib/liblzma/Symbol.map | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/liblzma/Symbol.map b/lib/liblzma/Symbol.map index 3b58bc759e75..938b6191b4f4 100644 --- a/lib/liblzma/Symbol.map +++ b/lib/liblzma/Symbol.map @@ -142,7 +142,6 @@ XZprivate_1.0 { lzma_index_prealloc; lzma_lz_decoder_init; lzma_lz_decoder_memusage; - lzma_lz_decoder_uncompressed; lzma_lz_encoder_init; lzma_lz_encoder_memusage; lzma_lzma2_block_size; From nobody Mon Mar 11 05:30:28 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtQN44JtHz5Dj5q; Mon, 11 Mar 2024 05:30: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 4TtQN43nDRz4NfZ; Mon, 11 Mar 2024 05:30:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710135028; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xgwEcBytZ2QSmD4UXdUBKW1FN28r6BBBRxgrwEaBqU4=; b=GVB5Xe4BKzZqDI5FAVF5ojXOK6x9+aDuScmlGb6JTEDJioMWouCDIZhen5bklUHkiMvSRj HQM/5YlH82JM5RPVTWTJ0rvXIg5kijiNMv/TsT7bk/21SxQXmXcpTUqgF59ymWRfwSfaJd O5Dbheco3fhZfyBE5S6KczXmnB8LvYBQwzV00v11zK6EUd/6ku8qxo3zlh8Aw53v60mdxn JKZa2h+qOaDN2JQv63chLJF13wsZdLiNhcNBovnBoNK21jbndiLjf8r2tba3nKgtlXu1N1 XlShp8qvfjIdulGpBcq0IyAff+q9zN6PtZQbCnHEjw1c1+qS7KkIGwYFGc7ObQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710135028; a=rsa-sha256; cv=none; b=qveezlRxSrhuEM3xLsb+qd5TYypFNgkD28V/or+M65avxg/wwfUkd5GN0sRfikUYzJ69wa K5lZdDJ+HHzMtOQwT37gFDiYFxoqEKBL+CWlSJns6WWouGv2WaHKOpEOWmk9peJqCTonmx HxMhzA5DOQDysBcfPDnxioYEa3qoK7Gklk8TvXfVHG7J9+Ytp/aVZ0nSBrGu0v0c//d4r/ 355DJ6mScfB7OZTTSj+PmMHeI8RpPovNoOsZB93pJLWooqeFce+G5HAwg4TWr4gDoGL5J0 AvsUpmXyYOFbQsPqqLHEqXZva6o0HYRXCfWr3bY+gPApNfZ5CKvHUNYQARdwJw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710135028; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xgwEcBytZ2QSmD4UXdUBKW1FN28r6BBBRxgrwEaBqU4=; b=xf+k1y8wvwDNsrQ+UJR2CxEvGcBKquHFgx3tL1k9In7cAdq5gIa/y8UsTm05w2ASPKRkWg pPLEsh+vm8WD6dw8zFtvMxuyTbBRJh/9abIL59/HvvpIqI4tNjANbyGTNdPEr4Nwbl4apD OE21H/6UNUv86c9s3fLwpSzHBPJzLQWsF+hO1A/QUgYrwoWvh/kBqEDoivABjlbB93BLRY jyDFcdIxxIWBKKiT+WiUuEHfFW72drjn59ebi500scQKxLfdNdJ8/zF7Q48eCcf6xPG26O a1NKa7GNh8GUHs7DtvGCoGNqLob5zpZImfSnootlnttS2g9/AnHoI8YeW457RQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtQN43NZpzHJ0; Mon, 11 Mar 2024 05:30: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 42B5US3K011264; Mon, 11 Mar 2024 05:30:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42B5US4E011261; Mon, 11 Mar 2024 05:30:28 GMT (envelope-from git) Date: Mon, 11 Mar 2024 05:30:28 GMT Message-Id: <202403110530.42B5US4E011261@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Wei Hu Subject: git: fa397e50fd88 - stable/13 - Hyper-V: vPCI: fix cpu id mis-mapping in vmbus_pcib_map_msi() List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: whu X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: fa397e50fd8820446d44b90cf4017bd31e264c76 Auto-Submitted: auto-generated The branch stable/13 has been updated by whu: URL: https://cgit.FreeBSD.org/src/commit/?id=fa397e50fd8820446d44b90cf4017bd31e264c76 commit fa397e50fd8820446d44b90cf4017bd31e264c76 Author: Wei Hu AuthorDate: 2024-03-11 05:24:53 +0000 Commit: Wei Hu CommitDate: 2024-03-11 05:29:52 +0000 Hyper-V: vPCI: fix cpu id mis-mapping in vmbus_pcib_map_msi() The msi address contains apic id. The code in vmbus_pcib_map_msi() treats it as cpu id, which could cause mis-configuration of msix IRQs, leading to missing interrupts for SRIOV devices. This happens when apic id is not the same as cpu id on certain large VM sizes with multiple numa domains in Azure. Fix this issue by correctly mapping apic ids to cpu ids. On vPCI version before 1.4, it only supports up to 64 vcpus for msi/msix interrupt. This change also adds a check and returns error if the vcpu_id is greater than 63. (cherry picked from commit 999174ba03642fa63c9654752993a62db461afc9) Reported by: NetApp Tested by: whu Sponsored by: Microsoft --- sys/dev/hyperv/pcib/vmbus_pcib.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/sys/dev/hyperv/pcib/vmbus_pcib.c b/sys/dev/hyperv/pcib/vmbus_pcib.c index 037ea7032184..ec80d97a959f 100644 --- a/sys/dev/hyperv/pcib/vmbus_pcib.c +++ b/sys/dev/hyperv/pcib/vmbus_pcib.c @@ -63,6 +63,7 @@ #include #include +#include #include #include @@ -1804,10 +1805,17 @@ vmbus_pcib_map_msi(device_t pcib, device_t child, int irq, } } - cpu = (v_addr & MSI_INTEL_ADDR_DEST) >> 12; + cpu = apic_cpuid((v_addr & MSI_INTEL_ADDR_DEST) >> 12); vcpu_id = VMBUS_GET_VCPU_ID(device_get_parent(pcib), pcib, cpu); vector = v_data & MSI_INTEL_DATA_INTVEC; + if (vcpu_id > 63) { + /* We only support vcpu_id < 64 on current vPCI version*/ + device_printf(pcib, + "Error: vcpu_id %u overflowed\n", vcpu_id); + return (ENODEV); + } + init_completion(&comp.comp_pkt.host_event); memset(&ctxt, 0, sizeof(ctxt)); From nobody Mon Mar 11 11:38:55 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtZYC2SsHz5CpGn; Mon, 11 Mar 2024 11:38: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 4TtZYC1pxLz44mS; Mon, 11 Mar 2024 11:38:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710157135; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ImN+JYKObTusjPkCVtWnD7/RfI0DM0DcMNbRmHbQTic=; b=da/b1WP9P+Pqe6h/Bf74WS5vFajXgOP9twCSOhi0ShQsS4193t2NLcHgrgcyOwTIKdINO/ CkDAIUUaZK2bmDzPKauJXp8XrIP/rZp1D4zAjnIsZ7zqaAo+5tMrV+l660dkmnXF7pCYJa StgzCIAN9HAbM8UUfoWITUEwV02Ib4jlS41OaYXnkq0nlwMooQmlC6Hqo+h0BGsTWL+VtJ 6KMK2f6ZRdHvM1zjm83cLj2f5Oyx29ZThYfaYBbkCoULbT+Z7vfmf2xBHxufVk00bFk7wL q71j/Ewc1aj4UagrL9E6G1TwkBCEDm09cO/Mk3+OzYwp/M7X+0wlO3ljdcVjwA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710157135; a=rsa-sha256; cv=none; b=qmhN3t4WG0bSo3ORjRMJfu2sbzj3QgRYTghMynB4nYwCBM4p8/+ySF1AB2CrDZOQpMhF2E f4t6afAlyjt9J+HL/D7ewjg2bQVxsq2+E+fTlp0fkXokVNcNCHAoYGN92psu7Yynez1Cq6 IsD8GxuVsGkA2H/BqSNm7RVdYhN6TEVxzJKzWtaqg7YW7BDrU0OSTw0mDg8cULdnqn/EqE BaPzxJG14BZUn1NQ9rrDq483yKxWeLsnv3/UeigoQjgBAP/bXBR745dwJnx/Weonfs5Mbk feh+zccIqs9fy3iJ8eguUpCC46tUEaY98DZPSSoR+sMQwsKgdhsJjAokCwj+Iw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710157135; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ImN+JYKObTusjPkCVtWnD7/RfI0DM0DcMNbRmHbQTic=; b=l4sQAB8P/lR0RF/7kzpztriIM3ABD8J4Z5fZ+cHe9h8PRNokWnQQaNvW8LWwqRKViFBvQQ KJy1YEsvZElNKW+y0bmHBOKo8nxSl0kJ2Tc/FklbB3xnA78+11G7BFzmk075P+VnaeNBqB 087t4V3FA2/Qbduz9QkiZEWs1d9OrABNduF95fQW37416GgdreD0hZCKSV0tLQM4AgOKoQ xPW8BvaMz2e9dS4RPyPMmnAVKa5e5/EbtPVmf9WZjh3r4GSnxHw4qr5ICFDMxe/12Y6qhQ OlBEzyQHOFIrgSXNp1e1O5EXdMmK7Ebnxptxhcf5D8x5BpspjNJeB1Ur9go5FA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtZYC1Pp2zSW9; Mon, 11 Mar 2024 11:38: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 42BBctbc027968; Mon, 11 Mar 2024 11:38:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BBctkj027965; Mon, 11 Mar 2024 11:38:55 GMT (envelope-from git) Date: Mon, 11 Mar 2024 11:38:55 GMT Message-Id: <202403111138.42BBctkj027965@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Randall Stewart Subject: git: f6d489f402c3 - main - Update to bring the rack stack with all its fixes in. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rrs X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f6d489f402c320f1a6eaa473491a0b8c3878113e Auto-Submitted: auto-generated The branch main has been updated by rrs: URL: https://cgit.FreeBSD.org/src/commit/?id=f6d489f402c320f1a6eaa473491a0b8c3878113e commit f6d489f402c320f1a6eaa473491a0b8c3878113e Author: Randall Stewart AuthorDate: 2024-03-11 11:36:54 +0000 Commit: Randall Stewart CommitDate: 2024-03-11 11:36:54 +0000 Update to bring the rack stack with all its fixes in. This brings the rack stack up to the current level used at NF. Many fixes and improvements have been added. I also add in a fix to BBR to deal with the changes that have been in hpts for a while i.e. only one call no matter if mbuf queue or tcp_output. Note there is a new file that I can't figure out how to get in rack_pcm.c It basically does little except BBlogs and is a placemark for future work on doing path capacity measurements. Reviewed by: tuexen, glebius Sponsored by: Netflix Inc. Differential Revision:https://reviews.freebsd.org/D43986 --- sys/modules/tcp/rack/Makefile | 2 +- sys/netinet/tcp.h | 38 +- sys/netinet/tcp_log_buf.h | 9 +- sys/netinet/tcp_stacks/bbr.c | 4 +- sys/netinet/tcp_stacks/rack.c | 4443 +++++++++++++++++++++++++--------- sys/netinet/tcp_stacks/rack_pcm.c | 0 sys/netinet/tcp_stacks/sack_filter.h | 5 + sys/netinet/tcp_stacks/tailq_hash.c | 33 +- sys/netinet/tcp_stacks/tailq_hash.h | 8 +- sys/netinet/tcp_stacks/tcp_rack.h | 135 +- sys/netinet/tcp_subr.c | 57 +- sys/netinet/tcp_syncache.c | 5 +- sys/netinet/tcp_usrreq.c | 7 + sys/netinet/tcp_var.h | 12 +- 14 files changed, 3587 insertions(+), 1171 deletions(-) diff --git a/sys/modules/tcp/rack/Makefile b/sys/modules/tcp/rack/Makefile index c5bb20602337..d5f3ba170f68 100644 --- a/sys/modules/tcp/rack/Makefile +++ b/sys/modules/tcp/rack/Makefile @@ -5,7 +5,7 @@ STACKNAME= rack KMOD= tcp_${STACKNAME} -SRCS= rack.c sack_filter.c rack_bbr_common.c tailq_hash.c +SRCS= rack.c sack_filter.c rack_bbr_common.c tailq_hash.c rack_pcm.c SRCS+= opt_inet.h opt_inet6.h opt_ipsec.h SRCS+= opt_kern_tls.h diff --git a/sys/netinet/tcp.h b/sys/netinet/tcp.h index f9e561f6ce35..a8259fa30a3a 100644 --- a/sys/netinet/tcp.h +++ b/sys/netinet/tcp.h @@ -334,9 +334,22 @@ __tcp_set_flags(struct tcphdr *th, uint16_t flags) #define TCP_RACK_PACING_DIVISOR 1146 /* Pacing divisor given to rate-limit code for burst sizing */ #define TCP_RACK_PACE_MIN_SEG 1147 /* Pacing min seg size rack will use */ #define TCP_RACK_DGP_IN_REC 1148 /* Do we use full DGP in recovery? */ -#define TCP_RXT_CLAMP 1149 /* Do we apply a threshold to rack so if excess rxt clamp cwnd? */ +#define TCP_POLICER_DETECT 1149 /* Do we apply a thresholds to rack to detect and compensate for policers? */ +#define TCP_RXT_CLAMP TCP_POLICER_DETECT #define TCP_HYBRID_PACING 1150 /* Hybrid pacing enablement */ #define TCP_PACING_DND 1151 /* When pacing with rr_config=3 can sacks disturb us */ +#define TCP_SS_EEXIT 1152 /* Do we do early exit from slowtart if no b/w growth */ +#define TCP_DGP_UPPER_BOUNDS 1153 /* SS and CA upper bound in percentage */ +#define TCP_NO_TIMELY 1154 /* Disable/enable Timely */ +#define TCP_HONOR_HPTS_MIN 1155 /* Do we honor hpts min to */ +#define TCP_REC_IS_DYN 1156 /* Do we allow timely to change recovery multiplier? */ +#define TCP_SIDECHAN_DIS 1157 /* Disable/enable the side-channel */ +#define TCP_FILLCW_RATE_CAP 1158 /* Set a cap for DGP's fillcw */ +#define TCP_POLICER_MSS 1159 /* Policer MSS requirement */ +#define TCP_STACK_SPEC_INFO 1160 /* Get stack specific information (if present) */ +#define RACK_CSPR_IS_FCC 1161 +#define TCP_GP_USE_LTBW 1162 /* how we use lt_bw 0=not, 1=min, 2=max */ + /* Start of reserved space for third-party user-settable options. */ #define TCP_VENDOR SO_VENDOR @@ -447,6 +460,7 @@ struct tcp_info { u_int32_t tcpi_rcv_adv; /* Peer advertised window */ u_int32_t tcpi_dupacks; /* Consecutive dup ACKs recvd */ + u_int32_t tcpi_rttmin; /* Min observed RTT */ /* Padding to grow without breaking ABI. */ u_int32_t __tcpi_pad[14]; /* Padding. */ }; @@ -463,6 +477,20 @@ struct tcp_fastopen { #define TCP_FUNCTION_NAME_LEN_MAX 32 +struct stack_specific_info { + char stack_name[TCP_FUNCTION_NAME_LEN_MAX]; + uint64_t policer_last_bw; /* Only valid if detection enabled and policer detected */ + uint64_t bytes_transmitted; + uint64_t bytes_retransmitted; + uint32_t policer_detection_enabled: 1, + policer_detected : 1, /* transport thinks a policer is on path */ + highly_buffered : 1, /* transport considers the path highly buffered */ + spare : 29; + uint32_t policer_bucket_size; /* Only valid if detection enabled and policer detected */ + uint32_t current_round; + uint32_t _rack_i_pad[18]; +}; + struct tcp_function_set { char function_set_name[TCP_FUNCTION_NAME_LEN_MAX]; uint32_t pcbcnt; @@ -488,6 +516,7 @@ struct tcp_snd_req { uint64_t start; uint64_t end; uint32_t flags; + uint32_t playout_ms; }; union tcp_log_userdata { @@ -518,9 +547,12 @@ struct tcp_log_user { #define TCP_HYBRID_PACING_H_MS 0x0008 /* A client hint for maxseg is present */ #define TCP_HYBRID_PACING_ENABLE 0x0010 /* We are enabling hybrid pacing else disable */ #define TCP_HYBRID_PACING_S_MSS 0x0020 /* Clent wants us to set the mss overriding gp est in CU */ -#define TCP_HYBRID_PACING_SETMSS 0x1000 /* Internal flag that tellsus we set the mss on this entry */ +#define TCP_HAS_PLAYOUT_MS 0x0040 /* The client included the chunk playout milliseconds: deprecate */ +/* the below are internal only flags */ +#define TCP_HYBRID_PACING_USER_MASK 0x0FFF /* Non-internal flags mask */ +#define TCP_HYBRID_PACING_SETMSS 0x1000 /* Internal flag that tells us we set the mss on this entry */ #define TCP_HYBRID_PACING_WASSET 0x2000 /* We init to this to know if a hybrid command was issued */ - +#define TCP_HYBRID_PACING_SENDTIME 0x4000 /* Duplicate tm to last, use sendtime for catch up mode */ struct tcp_hybrid_req { struct tcp_snd_req req; diff --git a/sys/netinet/tcp_log_buf.h b/sys/netinet/tcp_log_buf.h index 1f5b7cf9b54f..2e91d9cbdf3c 100644 --- a/sys/netinet/tcp_log_buf.h +++ b/sys/netinet/tcp_log_buf.h @@ -267,7 +267,9 @@ enum tcp_log_events { TCP_RACK_TP_TRIGGERED, /* A rack tracepoint is triggered 68 */ TCP_HYBRID_PACING_LOG, /* Hybrid pacing log 69 */ TCP_LOG_PRU, /* TCP protocol user request 70 */ - TCP_LOG_END /* End (keep at end) 71 */ + TCP_POLICER_DET, /* TCP Policer detectionn 71 */ + TCP_PCM_MEASURE, /* TCP Path Capacity Measurement 72 */ + TCP_LOG_END /* End (keep at end) 72 */ }; enum tcp_log_states { @@ -371,10 +373,11 @@ struct tcp_log_dev_log_queue { #define TCP_TP_COLLAPSED_RXT 0x00000004 /* When we actually retransmit a collapsed window rsm */ #define TCP_TP_REQ_LOG_FAIL 0x00000005 /* We tried to allocate a Request log but had no space */ #define TCP_TP_RESET_RCV 0x00000006 /* Triggers when we receive a RST */ -#define TCP_TP_EXCESS_RXT 0x00000007 /* When we get excess RXT's clamping the cwnd */ +#define TCP_TP_POLICER_DET 0x00000007 /* When we detect a policer */ +#define TCP_TP_EXCESS_RXT TCP_TP_POLICER_DET /* alias */ #define TCP_TP_SAD_TRIGGERED 0x00000008 /* Sack Attack Detection triggers */ - #define TCP_TP_SAD_SUSPECT 0x0000000a /* A sack has supicious information in it */ +#define TCP_TP_PACED_BOTTOM 0x0000000b /* We have paced at the bottom */ #ifdef _KERNEL diff --git a/sys/netinet/tcp_stacks/bbr.c b/sys/netinet/tcp_stacks/bbr.c index 931beba7a262..934b35bd22d7 100644 --- a/sys/netinet/tcp_stacks/bbr.c +++ b/sys/netinet/tcp_stacks/bbr.c @@ -11529,7 +11529,9 @@ bbr_do_segment_nounlock(struct tcpcb *tp, struct mbuf *m, struct tcphdr *th, bbr_set_pktepoch(bbr, cts, __LINE__); bbr_check_bbr_for_state(bbr, cts, __LINE__, (bbr->r_ctl.rc_lost - lost)); if (nxt_pkt == 0) { - if (bbr->r_wanted_output != 0) { + if ((bbr->r_wanted_output != 0) || + (tp->t_flags & TF_ACKNOW)) { + bbr->rc_output_starts_timer = 0; did_out = 1; if (tcp_output(tp) < 0) diff --git a/sys/netinet/tcp_stacks/rack.c b/sys/netinet/tcp_stacks/rack.c index 49d946dbb63b..1fe07fa8d641 100644 --- a/sys/netinet/tcp_stacks/rack.c +++ b/sys/netinet/tcp_stacks/rack.c @@ -142,9 +142,12 @@ VNET_DECLARE(uint32_t, newreno_beta_ecn); #define V_newreno_beta VNET(newreno_beta) #define V_newreno_beta_ecn VNET(newreno_beta_ecn) +#define M_TCPFSB __CONCAT(M_TCPFSB, STACKNAME) +#define M_TCPDO __CONCAT(M_TCPDO, STACKNAME) -MALLOC_DEFINE(M_TCPFSB, "tcp_fsb", "TCP fast send block"); -MALLOC_DEFINE(M_TCPDO, "tcp_do", "TCP deferred options"); +MALLOC_DEFINE(M_TCPFSB, "tcp_fsb_" __XSTRING(STACKNAME), "TCP fast send block"); +MALLOC_DEFINE(M_TCPDO, "tcp_do_" __XSTRING(STACKNAME), "TCP deferred options"); +MALLOC_DEFINE(M_TCPPCM, "tcp_pcm_" __XSTRING(STACKNAME), "TCP PCM measurement information"); struct sysctl_ctx_list rack_sysctl_ctx; struct sysctl_oid *rack_sysctl_root; @@ -190,12 +193,24 @@ static int32_t rack_tlp_use_greater = 1; static int32_t rack_reorder_thresh = 2; static int32_t rack_reorder_fade = 60000000; /* 0 - never fade, def 60,000,000 * - 60 seconds */ -static uint32_t rack_clamp_ss_upper = 110; -static uint32_t rack_clamp_ca_upper = 105; -static uint32_t rack_rxt_min_rnds = 10; /* Min rounds if drastic rxt clamp is in place */ -static uint32_t rack_unclamp_round_thresh = 100; /* number of perfect rounds before we unclamp */ -static uint32_t rack_unclamp_rxt_thresh = 5; /* .5% and under */ -static uint64_t rack_rxt_clamp_thresh = 0; /* Do we do the rxt clamp thing */ +static uint16_t rack_policer_rxt_thresh= 0; /* 499 = 49.9%, 0 is off */ +static uint8_t rack_policer_avg_thresh = 0; /* 3.2 */ +static uint8_t rack_policer_med_thresh = 0; /* 1 - 16 */ +static uint16_t rack_policer_bucket_reserve = 20; /* How much % is reserved in the bucket */ +static uint64_t rack_pol_min_bw = 125000; /* 1mbps in Bytes per sec */ +static uint32_t rack_policer_data_thresh = 64000; /* 64,000 bytes must be sent before we engage */ +static uint32_t rack_policing_do_bw_comp = 1; +static uint32_t rack_pcm_every_n_rounds = 100; +static uint32_t rack_pcm_blast = 0; +static uint32_t rack_pcm_is_enabled = 1; +static uint8_t rack_req_del_mss = 18; /* How many segments need to be sent in a recovery episode to do policer_detection */ +static uint8_t rack_ssthresh_rest_rto_rec = 0; /* Do we restore ssthresh when we have rec -> rto -> rec */ + +static uint32_t rack_gp_gain_req = 1200; /* Amount percent wise required to gain to record a round has "gaining" */ +static uint32_t rack_rnd_cnt_req = 0x10005; /* Default number of rounds if we are below rack_gp_gain_req where we exit ss */ + + +static int32_t rack_rxt_scoreboard_clear_thresh = 2; static int32_t rack_dnd_default = 0; /* For rr_conf = 3, what is the default for dnd */ static int32_t rack_rxt_controls = 0; static int32_t rack_fill_cw_state = 0; @@ -217,9 +232,8 @@ static int32_t rack_do_hystart = 0; static int32_t rack_apply_rtt_with_reduced_conf = 0; static int32_t rack_hibeta_setting = 0; static int32_t rack_default_pacing_divisor = 250; -static int32_t rack_uses_full_dgp_in_rec = 1; static uint16_t rack_pacing_min_seg = 0; - +static int32_t rack_timely_off = 0; static uint32_t sad_seg_size_per = 800; /* 80.0 % */ static int32_t rack_pkt_delay = 1000; @@ -235,7 +249,7 @@ static int32_t rack_use_rsm_rfo = 1; static int32_t rack_max_abc_post_recovery = 2; static int32_t rack_client_low_buf = 0; static int32_t rack_dsack_std_based = 0x3; /* bit field bit 1 sets rc_rack_tmr_std_based and bit 2 sets rc_rack_use_dsack */ -static int32_t rack_bw_multipler = 2; /* Limit on fill cw's jump up to be this x gp_est */ +static int32_t rack_bw_multipler = 0; /* Limit on fill cw's jump up to be this x gp_est */ #ifdef TCP_ACCOUNTING static int32_t rack_tcp_accounting = 0; #endif @@ -247,8 +261,9 @@ static int32_t use_rack_rr = 1; static int32_t rack_non_rxt_use_cr = 0; /* does a non-rxt in recovery use the configured rate (ss/ca)? */ static int32_t rack_persist_min = 250000; /* 250usec */ static int32_t rack_persist_max = 2000000; /* 2 Second in usec's */ +static int32_t rack_honors_hpts_min_to = 1; /* Do we honor the hpts minimum time out for pacing timers */ +static uint32_t rack_max_reduce = 10; /* Percent we can reduce slot by */ static int32_t rack_sack_not_required = 1; /* set to one to allow non-sack to use rack */ -static int32_t rack_default_init_window = 0; /* Use system default */ static int32_t rack_limit_time_with_srtt = 0; static int32_t rack_autosndbuf_inc = 20; /* In percentage form */ static int32_t rack_enobuf_hw_boost_mult = 0; /* How many times the hw rate we boost slot using time_between */ @@ -282,7 +297,6 @@ static int32_t rack_rwnd_block_ends_measure = 0; static int32_t rack_def_profile = 0; static int32_t rack_lower_cwnd_at_tlp = 0; -static int32_t rack_limited_retran = 0; static int32_t rack_always_send_oldest = 0; static int32_t rack_tlp_threshold_use = TLP_USE_TWO_ONE; @@ -356,6 +370,7 @@ static int32_t rack_timely_no_stopping = 0; static int32_t rack_down_raise_thresh = 100; static int32_t rack_req_segs = 1; static uint64_t rack_bw_rate_cap = 0; +static uint64_t rack_fillcw_bw_cap = 3750000; /* Cap fillcw at 30Mbps */ /* Rack specific counters */ @@ -377,6 +392,7 @@ counter_u64_t rack_tlp_retran; counter_u64_t rack_tlp_retran_bytes; counter_u64_t rack_to_tot; counter_u64_t rack_hot_alloc; +counter_u64_t tcp_policer_detected; counter_u64_t rack_to_alloc; counter_u64_t rack_to_alloc_hard; counter_u64_t rack_to_alloc_emerg; @@ -440,7 +456,7 @@ rack_log_progress_event(struct tcp_rack *rack, struct tcpcb *tp, uint32_t tick, static int rack_process_ack(struct mbuf *m, struct tcphdr *th, struct socket *so, struct tcpcb *tp, struct tcpopt *to, - uint32_t tiwin, int32_t tlen, int32_t * ofia, int32_t thflags, int32_t * ret_val); + uint32_t tiwin, int32_t tlen, int32_t * ofia, int32_t thflags, int32_t * ret_val, int32_t orig_tlen); static int rack_process_data(struct mbuf *m, struct tcphdr *th, struct socket *so, struct tcpcb *tp, int32_t drop_hdrlen, int32_t tlen, @@ -454,6 +470,8 @@ static struct rack_sendmap *rack_alloc_limit(struct tcp_rack *rack, static struct rack_sendmap * rack_check_recovery_mode(struct tcpcb *tp, uint32_t tsused); +static uint32_t +rack_grab_rtt(struct tcpcb *tp, struct tcp_rack *rack); static void rack_cong_signal(struct tcpcb *tp, uint32_t type, uint32_t ack, int ); @@ -504,13 +522,14 @@ rack_log_ack(struct tcpcb *tp, struct tcpopt *to, static void rack_log_output(struct tcpcb *tp, struct tcpopt *to, int32_t len, uint32_t seq_out, uint16_t th_flags, int32_t err, uint64_t ts, - struct rack_sendmap *hintrsm, uint16_t add_flags, struct mbuf *s_mb, uint32_t s_moff, int hw_tls, int segsiz); + struct rack_sendmap *hintrsm, uint32_t add_flags, struct mbuf *s_mb, uint32_t s_moff, int hw_tls, int segsiz); static uint64_t rack_get_gp_est(struct tcp_rack *rack); + static void rack_log_sack_passed(struct tcpcb *tp, struct tcp_rack *rack, - struct rack_sendmap *rsm); + struct rack_sendmap *rsm, uint32_t cts); static void rack_log_to_event(struct tcp_rack *rack, int32_t to_num, struct rack_sendmap *rsm); static int32_t rack_output(struct tcpcb *tp); @@ -526,10 +545,10 @@ static int32_t rack_stopall(struct tcpcb *tp); static void rack_timer_cancel(struct tcpcb *tp, struct tcp_rack *rack, uint32_t cts, int line); static uint32_t rack_update_entry(struct tcpcb *tp, struct tcp_rack *rack, - struct rack_sendmap *rsm, uint64_t ts, int32_t * lenp, uint16_t add_flag, int segsiz); + struct rack_sendmap *rsm, uint64_t ts, int32_t * lenp, uint32_t add_flag, int segsiz); static void rack_update_rsm(struct tcpcb *tp, struct tcp_rack *rack, - struct rack_sendmap *rsm, uint64_t ts, uint16_t add_flag, int segsiz); + struct rack_sendmap *rsm, uint64_t ts, uint32_t add_flag, int segsiz); static int rack_update_rtt(struct tcpcb *tp, struct tcp_rack *rack, struct rack_sendmap *rsm, struct tcpopt *to, uint32_t cts, int32_t ack_type, tcp_seq th_ack); @@ -538,6 +557,10 @@ static int rack_do_close_wait(struct mbuf *m, struct tcphdr *th, struct socket *so, struct tcpcb *tp, struct tcpopt *to, int32_t drop_hdrlen, int32_t tlen, uint32_t tiwin, int32_t thflags, int32_t nxt_pkt, uint8_t iptos); + +static void +rack_peg_rxt(struct tcp_rack *rack, struct rack_sendmap *rsm, uint32_t segsiz); + static int rack_do_closing(struct mbuf *m, struct tcphdr *th, struct socket *so, struct tcpcb *tp, struct tcpopt *to, int32_t drop_hdrlen, @@ -720,6 +743,22 @@ rack_undo_cc_pacing(struct tcp_rack *rack) rack_swap_beta_values(rack, 4); } +static void +rack_remove_pacing(struct tcp_rack *rack) +{ + if (rack->rc_pacing_cc_set) + rack_undo_cc_pacing(rack); + if (rack->r_ctl.pacing_method & RACK_REG_PACING) + tcp_decrement_paced_conn(); + if (rack->r_ctl.pacing_method & RACK_DGP_PACING) + tcp_dec_dgp_pacing_cnt(); + rack->rc_always_pace = 0; + rack->r_ctl.pacing_method = RACK_PACING_NONE; + rack->dgp_on = 0; + rack->rc_hybrid_mode = 0; + rack->use_fixed_rate = 0; +} + static void rack_log_gpset(struct tcp_rack *rack, uint32_t seq_end, uint32_t ack_end_t, uint32_t send_end_t, int line, uint8_t mode, struct rack_sendmap *rsm) @@ -742,6 +781,8 @@ rack_log_gpset(struct tcp_rack *rack, uint32_t seq_end, uint32_t ack_end_t, log.u_bbr.pkts_out = line; log.u_bbr.cwnd_gain = rack->app_limited_needs_set; log.u_bbr.pkt_epoch = rack->r_ctl.rc_app_limited_cnt; + log.u_bbr.epoch = rack->r_ctl.current_round; + log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; if (rsm != NULL) { log.u_bbr.applimited = rsm->r_start; log.u_bbr.delivered = rsm->r_end; @@ -857,6 +898,7 @@ rack_init_sysctls(void) struct sysctl_oid *rack_measure; struct sysctl_oid *rack_probertt; struct sysctl_oid *rack_hw_pacing; + struct sysctl_oid *rack_policing; rack_attack = SYSCTL_ADD_NODE(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_sysctl_root), @@ -994,11 +1036,36 @@ rack_init_sysctls(void) "pacing", CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "Pacing related Controls"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_pacing), + OID_AUTO, "pcm_enabled", CTLFLAG_RW, + &rack_pcm_is_enabled, 1, + "Do we by default do PCM measurements?"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_pacing), + OID_AUTO, "pcm_rnds", CTLFLAG_RW, + &rack_pcm_every_n_rounds, 100, + "How many rounds before we need to do a PCM measurement"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_pacing), + OID_AUTO, "pcm_blast", CTLFLAG_RW, + &rack_pcm_blast, 0, + "Blast out the full cwnd/rwnd when doing a PCM measurement"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_pacing), + OID_AUTO, "rnd_gp_gain", CTLFLAG_RW, + &rack_gp_gain_req, 1200, + "How much do we have to increase the GP to record the round 1200 = 120.0"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_pacing), + OID_AUTO, "dgp_out_of_ss_at", CTLFLAG_RW, + &rack_rnd_cnt_req, 0x10005, + "How many rounds less than rnd_gp_gain will drop us out of SS"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), - OID_AUTO, "fulldgpinrec", CTLFLAG_RW, - &rack_uses_full_dgp_in_rec, 1, - "Do we use all DGP features in recovery (fillcw, timely et.al.)?"); + OID_AUTO, "no_timely", CTLFLAG_RW, + &rack_timely_off, 0, + "Do we not use timely in DGP?"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), OID_AUTO, "fullbufdisc", CTLFLAG_RW, @@ -1017,13 +1084,13 @@ rack_init_sysctls(void) SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), OID_AUTO, "divisor", CTLFLAG_RW, - &rack_default_pacing_divisor, 4, + &rack_default_pacing_divisor, 250, "What is the default divisor given to the rl code?"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), OID_AUTO, "fillcw_max_mult", CTLFLAG_RW, - &rack_bw_multipler, 2, - "What is the multiplier of the current gp_est that fillcw can increase the b/w too?"); + &rack_bw_multipler, 0, + "What is the limit multiplier of the current gp_est that fillcw can increase the b/w too, 200 == 200% (0 = off)?"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), OID_AUTO, "max_pace_over", CTLFLAG_RW, @@ -1039,11 +1106,6 @@ rack_init_sysctls(void) OID_AUTO, "limit_wsrtt", CTLFLAG_RW, &rack_limit_time_with_srtt, 0, "Do we limit pacing time based on srtt"); - SYSCTL_ADD_S32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_pacing), - OID_AUTO, "init_win", CTLFLAG_RW, - &rack_default_init_window, 0, - "Do we have a rack initial window 0 = system default"); SYSCTL_ADD_U16(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), OID_AUTO, "gp_per_ss", CTLFLAG_RW, @@ -1079,6 +1141,11 @@ rack_init_sysctls(void) OID_AUTO, "rate_cap", CTLFLAG_RW, &rack_bw_rate_cap, 0, "If set we apply this value to the absolute rate cap used by pacing"); + SYSCTL_ADD_U64(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_pacing), + OID_AUTO, "fillcw_cap", CTLFLAG_RW, + &rack_fillcw_bw_cap, 3750000, + "Do we have an absolute cap on the amount of b/w fillcw can specify (0 = no)?"); SYSCTL_ADD_U8(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_sysctl_root), OID_AUTO, "req_measure_cnt", CTLFLAG_RW, @@ -1317,11 +1384,6 @@ rack_init_sysctls(void) OID_AUTO, "send_oldest", CTLFLAG_RW, &rack_always_send_oldest, 0, "Should we always send the oldest TLP and RACK-TLP"); - SYSCTL_ADD_S32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_tlp), - OID_AUTO, "rack_tlimit", CTLFLAG_RW, - &rack_limited_retran, 0, - "How many times can a rack timeout drive out sends"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_tlp), OID_AUTO, "tlp_cwnd_flag", CTLFLAG_RW, @@ -1355,6 +1417,26 @@ rack_init_sysctls(void) "timers", CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "Timer related controls"); + SYSCTL_ADD_U8(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_timers), + OID_AUTO, "reset_ssth_rec_rto", CTLFLAG_RW, + &rack_ssthresh_rest_rto_rec, 0, + "When doing recovery -> rto -> recovery do we reset SSthresh?"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_timers), + OID_AUTO, "scoreboard_thresh", CTLFLAG_RW, + &rack_rxt_scoreboard_clear_thresh, 2, + "How many RTO's are allowed before we clear the scoreboard"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_timers), + OID_AUTO, "honor_hpts_min", CTLFLAG_RW, + &rack_honors_hpts_min_to, 1, + "Do rack pacing timers honor hpts min timeout"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_timers), + OID_AUTO, "hpts_max_reduce", CTLFLAG_RW, + &rack_max_reduce, 10, + "Max percentage we will reduce slot by for pacing when we are behind"); SYSCTL_ADD_U32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_timers), OID_AUTO, "persmin", CTLFLAG_RW, @@ -1434,11 +1516,6 @@ rack_init_sysctls(void) "features", CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "Feature controls"); - SYSCTL_ADD_U64(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_features), - OID_AUTO, "rxt_clamp_thresh", CTLFLAG_RW, - &rack_rxt_clamp_thresh, 0, - "Bit encoded clamping setup bits CCCC CCCCC UUUU UULF PPPP PPPP PPPP PPPP"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_features), OID_AUTO, "hybrid_set_maxseg", CTLFLAG_RW, @@ -1474,6 +1551,53 @@ rack_init_sysctls(void) OID_AUTO, "hystartplusplus", CTLFLAG_RW, &rack_do_hystart, 0, "Should RACK enable HyStart++ on connections?"); + /* Policer detection */ + rack_policing = SYSCTL_ADD_NODE(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_sysctl_root), + OID_AUTO, + "policing", + CTLFLAG_RW | CTLFLAG_MPSAFE, 0, + "policer detection"); + SYSCTL_ADD_U16(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "rxt_thresh", CTLFLAG_RW, + &rack_policer_rxt_thresh, 0, + "Percentage of retransmits we need to be a possible policer (499 = 49.9 percent)"); + SYSCTL_ADD_U8(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "avg_thresh", CTLFLAG_RW, + &rack_policer_avg_thresh, 0, + "What threshold of average retransmits needed to recover a lost packet (1 - 169 aka 21 = 2.1)?"); + SYSCTL_ADD_U8(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "med_thresh", CTLFLAG_RW, + &rack_policer_med_thresh, 0, + "What threshold of Median retransmits needed to recover a lost packet (1 - 16)?"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "data_thresh", CTLFLAG_RW, + &rack_policer_data_thresh, 64000, + "How many bytes must have gotten through before we can start doing policer detection?"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "bwcomp", CTLFLAG_RW, + &rack_policing_do_bw_comp, 1, + "Do we raise up low b/w so that at least pace_max_seg can be sent in the srtt?"); + SYSCTL_ADD_U8(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "recmss", CTLFLAG_RW, + &rack_req_del_mss, 18, + "How many MSS must be delivered during recovery to engage policer detection?"); + SYSCTL_ADD_U16(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "res_div", CTLFLAG_RW, + &rack_policer_bucket_reserve, 20, + "What percentage is reserved in the policer bucket?"); + SYSCTL_ADD_U64(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "min_comp_bw", CTLFLAG_RW, + &rack_pol_min_bw, 125000, + "Do we have a min b/w for b/w compensation (0 = no)?"); /* Misc rack controls */ rack_misc = SYSCTL_ADD_NODE(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_sysctl_root), @@ -1578,31 +1702,8 @@ rack_init_sysctls(void) OID_AUTO, "autoscale", CTLFLAG_RW, &rack_autosndbuf_inc, 20, "What percentage should rack scale up its snd buffer by?"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_misc), - OID_AUTO, "rnds_for_rxt_clamp", CTLFLAG_RW, - &rack_rxt_min_rnds, 10, - "Number of rounds needed between RTT clamps due to high loss rates"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_misc), - OID_AUTO, "rnds_for_unclamp", CTLFLAG_RW, - &rack_unclamp_round_thresh, 100, - "Number of rounds needed with no loss to unclamp"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_misc), - OID_AUTO, "rxt_threshs_for_unclamp", CTLFLAG_RW, - &rack_unclamp_rxt_thresh, 5, - "Percentage of retransmits we need to be under to unclamp (5 = .5 percent)\n"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_misc), - OID_AUTO, "clamp_ss_upper", CTLFLAG_RW, - &rack_clamp_ss_upper, 110, - "Clamp percentage ceiling in SS?"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_misc), - OID_AUTO, "clamp_ca_upper", CTLFLAG_RW, - &rack_clamp_ca_upper, 110, - "Clamp percentage ceiling in CA?"); + + /* Sack Attacker detection stuff */ SYSCTL_ADD_U32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_attack), @@ -1779,6 +1880,13 @@ rack_init_sysctls(void) OID_AUTO, "alloc_hot", CTLFLAG_RD, &rack_hot_alloc, "Total allocations from the top of our list"); + tcp_policer_detected = counter_u64_alloc(M_WAITOK); + SYSCTL_ADD_COUNTER_U64(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_counters), + OID_AUTO, "policer_detected", CTLFLAG_RD, + &tcp_policer_detected, + "Total policer_detections"); + rack_to_alloc = counter_u64_alloc(M_WAITOK); SYSCTL_ADD_COUNTER_U64(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_counters), @@ -1957,17 +2065,8 @@ rack_init_sysctls(void) static uint32_t rc_init_window(struct tcp_rack *rack) { - uint32_t win; + return (tcp_compute_initwnd(tcp_maxseg(rack->rc_tp))); - if (rack->rc_init_win == 0) { - /* - * Nothing set by the user, use the system stack - * default. - */ - return (tcp_compute_initwnd(tcp_maxseg(rack->rc_tp))); - } - win = ctf_fixed_maxseg(rack->rc_tp) * rack->rc_init_win; - return (win); } static uint64_t @@ -2071,6 +2170,7 @@ rack_log_hybrid_bw(struct tcp_rack *rack, uint32_t seq, uint64_t cbw, uint64_t t off = (uint64_t)(cur) - (uint64_t)(&rack->rc_tp->t_tcpreq_info[0]); log.u_bbr.bbr_substate = (uint8_t)(off / sizeof(struct tcp_sendfile_track)); #endif + log.u_bbr.inhpts = 1; log.u_bbr.flex4 = (uint32_t)(rack->rc_tp->t_sndbytes - cur->sent_at_fs); log.u_bbr.flex5 = (uint32_t)(rack->rc_tp->t_snd_rxt_bytes - cur->rxt_at_fs); log.u_bbr.flex7 = (uint16_t)cur->hybrid_flags; @@ -2116,9 +2216,24 @@ rack_log_hybrid_sends(struct tcp_rack *rack, struct tcp_sendfile_track *cur, int memset(&log, 0, sizeof(log)); log.u_bbr.timeStamp = tcp_get_usecs(&tv); - log.u_bbr.cur_del_rate = rack->rc_tp->t_sndbytes; log.u_bbr.delRate = cur->sent_at_fs; - log.u_bbr.rttProp = rack->rc_tp->t_snd_rxt_bytes; + + if ((cur->flags & TCP_TRK_TRACK_FLG_LSND) == 0) { + /* + * We did not get a new Rules Applied to set so + * no overlapping send occured, this means the + * current byte counts are correct. + */ + log.u_bbr.cur_del_rate = rack->rc_tp->t_sndbytes; + log.u_bbr.rttProp = rack->rc_tp->t_snd_rxt_bytes; + } else { + /* + * Overlapping send case, we switched to a new + * send and did a rules applied. + */ + log.u_bbr.cur_del_rate = cur->sent_at_ls; + log.u_bbr.rttProp = cur->rxt_at_ls; + } log.u_bbr.bw_inuse = cur->rxt_at_fs; log.u_bbr.cwnd_gain = line; off = (uint64_t)(cur) - (uint64_t)(&rack->rc_tp->t_tcpreq_info[0]); @@ -2138,6 +2253,7 @@ rack_log_hybrid_sends(struct tcp_rack *rack, struct tcp_sendfile_track *cur, int log.u_bbr.lt_epoch = (uint32_t)((cur->timestamp >> 32) & 0x00000000ffffffff); /* now set all the flags in */ log.u_bbr.pkts_out = cur->hybrid_flags; + log.u_bbr.lost = cur->playout_ms; log.u_bbr.flex6 = cur->flags; /* * Last send time = note we do not distinguish cases @@ -2146,6 +2262,20 @@ rack_log_hybrid_sends(struct tcp_rack *rack, struct tcp_sendfile_track *cur, int */ log.u_bbr.pkt_epoch = (uint32_t)(rack->r_ctl.last_tmit_time_acked & 0x00000000ffffffff); log.u_bbr.flex5 = (uint32_t)((rack->r_ctl.last_tmit_time_acked >> 32) & 0x00000000ffffffff); + /* + * Compose bbr_state to be a bit wise 0000ADHF + * where A is the always_pace flag + * where D is the dgp_on flag + * where H is the hybrid_mode on flag + * where F is the use_fixed_rate flag. + */ + log.u_bbr.bbr_state = rack->rc_always_pace; + log.u_bbr.bbr_state <<= 1; + log.u_bbr.bbr_state |= rack->dgp_on; + log.u_bbr.bbr_state <<= 1; + log.u_bbr.bbr_state |= rack->rc_hybrid_mode; + log.u_bbr.bbr_state <<= 1; + log.u_bbr.bbr_state |= rack->use_fixed_rate; log.u_bbr.flex8 = HYBRID_LOG_SENT_LOST; tcp_log_event(rack->rc_tp, NULL, @@ -2299,6 +2429,7 @@ normal_ratecap: #ifdef TCP_REQUEST_TRK if (rack->rc_hybrid_mode && rack->rc_catch_up && + (rack->r_ctl.rc_last_sft != NULL) && (rack->r_ctl.rc_last_sft->hybrid_flags & TCP_HYBRID_PACING_S_MSS) && (rack_hybrid_allow_set_maxseg == 1) && ((rack->r_ctl.rc_last_sft->hybrid_flags & TCP_HYBRID_PACING_SETMSS) == 0)) { @@ -2338,7 +2469,10 @@ rack_get_gp_est(struct tcp_rack *rack) */ uint64_t srtt; - lt_bw = rack_get_lt_bw(rack); + if (rack->dis_lt_bw == 1) + lt_bw = 0; + else + lt_bw = rack_get_lt_bw(rack); if (lt_bw) { /* * No goodput bw but a long-term b/w does exist @@ -2374,19 +2508,22 @@ rack_get_gp_est(struct tcp_rack *rack) /* Still doing initial average must calculate */ bw = rack->r_ctl.gp_bw / max(rack->r_ctl.num_measurements, 1); } + if (rack->dis_lt_bw) { + /* We are not using lt-bw */ + ret_bw = bw; + goto compensate; + } lt_bw = rack_get_lt_bw(rack); if (lt_bw == 0) { /* If we don't have one then equate it to the gp_bw */ lt_bw = rack->r_ctl.gp_bw; } - if ((rack->r_cwnd_was_clamped == 1) && (rack->r_clamped_gets_lower > 0)){ - /* if clamped take the lowest */ + if (rack->use_lesser_lt_bw) { if (lt_bw < bw) ret_bw = lt_bw; else ret_bw = bw; } else { - /* If not set for clamped to get lowest, take the highest */ if (lt_bw > bw) ret_bw = lt_bw; else @@ -2487,6 +2624,8 @@ rack_log_dsack_event(struct tcp_rack *rack, uint8_t mod, uint32_t flex4, uint32_ log.u_bbr.flex7 = rack->r_ctl.dsack_persist; log.u_bbr.flex8 = mod; log.u_bbr.timeStamp = tcp_get_usecs(&tv); + log.u_bbr.epoch = rack->r_ctl.current_round; + log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2535,6 +2674,8 @@ rack_log_hdwr_pacing(struct tcp_rack *rack, else log.u_bbr.cur_del_rate = 0; log.u_bbr.rttProp = rack->r_ctl.last_hw_bw_req; + log.u_bbr.epoch = rack->r_ctl.current_round; + log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2552,28 +2693,9 @@ rack_get_output_bw(struct tcp_rack *rack, uint64_t bw, struct rack_sendmap *rsm, uint64_t bw_est, high_rate; uint64_t gain; - if ((rack->r_pacing_discount == 0) || - (rack_full_buffer_discount == 0)) { - /* - * No buffer level based discount from client buffer - * level is enabled or the feature is disabled. - */ - gain = (uint64_t)rack_get_output_gain(rack, rsm); - bw_est = bw * gain; - bw_est /= (uint64_t)100; - } else { - /* - * We have a discount in place apply it with - * just a 100% gain (we get no boost if the buffer - * is full). - */ - uint64_t discount; - - discount = bw * (uint64_t)(rack_full_buffer_discount * rack->r_ctl.pacing_discount_amm); - discount /= 100; - /* What %% of the b/w do we discount */ - bw_est = bw - discount; - } + gain = (uint64_t)rack_get_output_gain(rack, rsm); + bw_est = bw * gain; + bw_est /= (uint64_t)100; /* Never fall below the minimum (def 64kbps) */ if (bw_est < RACK_MIN_BW) bw_est = RACK_MIN_BW; @@ -2659,6 +2781,8 @@ log_anyway: log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; + log.u_bbr.epoch = rack->r_ctl.current_round; + log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2698,6 +2822,10 @@ rack_log_to_start(struct tcp_rack *rack, uint32_t cts, uint32_t to, int32_t slot log.u_bbr.lt_epoch = rack->rc_tp->t_rxtshift; log.u_bbr.lost = rack_rto_min; log.u_bbr.epoch = rack->r_ctl.roundends; + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; + log.u_bbr.applimited = rack->rc_tp->t_flags2; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2731,6 +2859,9 @@ rack_log_to_event(struct tcp_rack *rack, int32_t to_num, struct rack_sendmap *rs log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2780,6 +2911,9 @@ rack_log_map_chg(struct tcpcb *tp, struct tcp_rack *rack, log.u_bbr.lost = 0; else log.u_bbr.lost = rack->r_ctl.rc_prr_sndcnt; + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2927,6 +3061,9 @@ rack_log_rtt_sample_calc(struct tcp_rack *rack, uint32_t rtt, uint32_t send_time log.u_bbr.flex4 = where; log.u_bbr.flex7 = 2; log.u_bbr.timeStamp = tcp_get_usecs(&tv); + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2939,7 +3076,7 @@ rack_log_rtt_sample_calc(struct tcp_rack *rack, uint32_t rtt, uint32_t send_time static void rack_log_rtt_sendmap(struct tcp_rack *rack, uint32_t idx, uint64_t tsv, uint32_t tsecho) { - if (tcp_bblogging_on(rack->rc_tp)) { + if (rack_verbose_logging && tcp_bblogging_on(rack->rc_tp)) { union tcp_log_stackspecific log; struct timeval tv; @@ -2951,6 +3088,9 @@ rack_log_rtt_sendmap(struct tcp_rack *rack, uint32_t idx, uint64_t tsv, uint32_t log.u_bbr.flex7 = 3; log.u_bbr.rttProp = tsv; log.u_bbr.timeStamp = tcp_get_usecs(&tv); + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2979,6 +3119,9 @@ rack_log_progress_event(struct tcp_rack *rack, struct tcpcb *tp, uint32_t tick, log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -3051,6 +3194,13 @@ rack_log_doseg_done(struct tcp_rack *rack, uint32_t cts, int32_t nxt_pkt, int32_ log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; + log.u_bbr.epoch = rack->rc_inp->inp_socket->so_snd.sb_hiwat; + log.u_bbr.lt_epoch = rack->rc_inp->inp_socket->so_rcv.sb_hiwat; + log.u_bbr.lost = rack->rc_tp->t_srtt; + log.u_bbr.pkt_epoch = rack->rc_tp->rfbuf_cnt; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -3112,6 +3262,9 @@ rack_log_type_just_return(struct tcp_rack *rack, uint32_t cts, uint32_t tlen, ui log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; log.u_bbr.cwnd_gain = rack->rc_has_collapsed; + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -3146,6 +3299,9 @@ rack_log_to_cancel(struct tcp_rack *rack, int32_t hpts_removed, int line, uint32 log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -3314,6 +3470,7 @@ rack_counter_destroy(void) counter_u64_free(rack_saw_enobuf_hw); counter_u64_free(rack_saw_enetunreach); counter_u64_free(rack_hot_alloc); + counter_u64_free(tcp_policer_detected); counter_u64_free(rack_to_alloc); counter_u64_free(rack_to_alloc_hard); counter_u64_free(rack_to_alloc_emerg); @@ -3475,6 +3632,8 @@ rack_free(struct tcp_rack *rack, struct rack_sendmap *rsm) rack->r_ctl.rc_num_split_allocs--; } if (rsm == rack->r_ctl.rc_first_appl) { + rack->r_ctl.cleared_app_ack_seq = rsm->r_start + (rsm->r_end - rsm->r_start); + rack->r_ctl.cleared_app_ack = 1; if (rack->r_ctl.rc_app_limited_cnt == 0) rack->r_ctl.rc_first_appl = NULL; else @@ -3490,7 +3649,7 @@ rack_free(struct tcp_rack *rack, struct rack_sendmap *rsm) rack->r_ctl.rc_sacklast = NULL; memset(rsm, 0, sizeof(struct rack_sendmap)); /* Make sure we are not going to overrun our count limit of 0xff */ - if ((rack->rc_free_cnt + 1) > 0xff) { + if ((rack->rc_free_cnt + 1) > RACK_FREE_CNT_MAX) { rack_free_trim(rack); } TAILQ_INSERT_HEAD(&rack->r_ctl.rc_free, rsm, r_tnext); @@ -3806,6 +3965,8 @@ rack_increase_bw_mul(struct tcp_rack *rack, int timely_says, uint64_t cur_bw, ui logged = 0; + if (rack->rc_skip_timely) + return; if (override) { /* * override is passed when we are @@ -3976,6 +4137,8 @@ rack_decrease_bw_mul(struct tcp_rack *rack, int timely_says, uint32_t rtt, int32 uint64_t logvar, logvar2, logvar3; uint32_t logged, new_per, ss_red, ca_red, rec_red, alt, val; + if (rack->rc_skip_timely) + return; if (rack->rc_gp_incr) { /* Turn off increment counting */ rack->rc_gp_incr = 0; @@ -4177,6 +4340,7 @@ rack_enter_probertt(struct tcp_rack *rack, uint32_t us_cts) */ uint32_t segsiz; + rack->r_ctl.rc_lower_rtt_us_cts = us_cts; if (rack->rc_gp_dyn_mul == 0) return; @@ -4203,7 +4367,6 @@ rack_enter_probertt(struct tcp_rack *rack, uint32_t us_cts) rack->r_ctl.rc_pace_min_segs); rack->in_probe_rtt = 1; rack->measure_saw_probe_rtt = 1; - rack->r_ctl.rc_lower_rtt_us_cts = us_cts; rack->r_ctl.rc_time_probertt_starts = 0; rack->r_ctl.rc_entry_gp_rtt = rack->r_ctl.rc_gp_srtt; if (rack_probertt_use_min_rtt_entry) @@ -4387,6 +4550,7 @@ static void rack_check_probe_rtt(struct tcp_rack *rack, uint32_t us_cts) { /* Check in on probe-rtt */ + if (rack->rc_gp_filled == 0) { /* We do not do p-rtt unless we have gp measurements */ return; @@ -4431,7 +4595,10 @@ no_exit: if (calc) { /* Maybe */ calc *= rack_per_of_gp_probertt_reduce; - rack->r_ctl.rack_per_of_gp_probertt = rack_per_of_gp_probertt - calc; + if (calc > rack_per_of_gp_probertt) + rack->r_ctl.rack_per_of_gp_probertt = rack_per_of_gp_lowthresh; + else + rack->r_ctl.rack_per_of_gp_probertt = rack_per_of_gp_probertt - calc; *** 6981 LINES SKIPPED *** From nobody Mon Mar 11 12:35:06 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Ttbp26FDxz5CtrK; Mon, 11 Mar 2024 12:35: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 4Ttbp25b8Xz4CSB; Mon, 11 Mar 2024 12:35:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710160506; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GtWfp9ybd0ohk61HD6gQrRV2asXQiC2HgrELwjoG9lo=; b=rwYILAqopR86W7YESFTq7KGlov7M8KSTqE/U15aZZc0a9GdbxFEVvS9wOOV5+273cX6qZE wDSYjtSEiEDE9wnXhSZpGbp8o/aBGkA+3g99u1JRk/chf16WFnVVK0Vcdc+Oi22WnvhD9Z Y1C4oom5ONXlqFx8FlAkEDE+SrB3CrXnAs5KK37nW8RTO3IxAy4HmGTVbTLyY3xLHFxfal e1UehWbdU2QLetHpV/bl2QdgGk3Yk6MPYLT1MeQsmjT4spTaalLvPqzRg93YCna9s1g2eY rQ975cbTryQAcmz7f3DQ/NsobGORfx7MjOt1gQ6nrCyyRD37hS4bLksnxh+2tQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710160506; a=rsa-sha256; cv=none; b=iBsol+XKhEjQWfqfLF0N/TepF/zg+ZLV+sTty5nJlffl+/ZtTr8IblcXEMhEJnDdOqjcBS K294t+MdUZT7dx6nk9oxLqtZzbk4GkmSZPsl4hOmS8qIVYzWxak0X+6sIooewjUjp+LRde SDO22U0at9hrYp7ZFo5u4iGDLGcZ/Aq2oFcI9wDV3R6/kNVShB4bjqnsgurTzQcOCLJ0QI qHoCPzkbgSw0rsEHNYm8sD6/q2YZbwcl80wPE8NZ3+If7WJZBysN+tbL5YmPrbmDYvkOLq 07W6yhU2phTROoTkyLxARv5q0rRlwfiuZFee7mNqryMLaAhcYjm1gFR1gYSSwg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710160506; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=GtWfp9ybd0ohk61HD6gQrRV2asXQiC2HgrELwjoG9lo=; b=gfpOt+meEwIqz1b8wSrvsKapiUAHhO/DTG5EopS+P653+UtFpeDR1MJQechQDuNV0B3nB/ 5tDxR2iSyJnGQ5RnR3lKA6VuOd5U4olWyEyGrae0rlQGIxYmqzkc9dNVTkndR5LpzOrOny vx/xRCRM7a2VVxCVYXKXD8cyfwtESTdTLZdOZIM3iNwO5F01jmoWLZrJR3B8+5EXCj7u1I kkOR8sepurEpTPSe5tixhwrTG7a6lYnHSjAvsGru/eSOfmprouPrNI/4hECLcbUY+8MbCI e+uZAThCWl5SxIit/KPorXxnUPK/RXuLVc2/r6mRtvQ3b7C1pwSQ5Ew1QuWv+Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Ttbp24tL0zVk2; Mon, 11 Mar 2024 12:35: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 42BCZ60p028901; Mon, 11 Mar 2024 12:35:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BCZ6Tf028898; Mon, 11 Mar 2024 12:35:06 GMT (envelope-from git) Date: Mon, 11 Mar 2024 12:35:06 GMT Message-Id: <202403111235.42BCZ6Tf028898@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: da2905289748 - stable/14 - diff: Fix --expand-tabs and --side-by-side. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: da290528974846d3ed49138ca0f2de7fff02eaf6 Auto-Submitted: auto-generated The branch stable/14 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=da290528974846d3ed49138ca0f2de7fff02eaf6 commit da290528974846d3ed49138ca0f2de7fff02eaf6 Author: Dag-Erling Smørgrav AuthorDate: 2024-02-26 18:08:06 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-03-11 12:19:06 +0000 diff: Fix --expand-tabs and --side-by-side. * Overhaul column width and padding calculation. * Rewrite print_space() so it is now a) correct and b) understandable. * Rewrite tab expansion in fetch() for the same reason. This brings us in line with GNU diff for all cases I could think of. Sponsored by: Klara, Inc. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44014 (cherry picked from commit 53de23f4d140becc3166e87665b0064f215a220e) diff: Bump manual page date. Sponsored by: Klara, Inc. (cherry picked from commit 312b1076c6b0aff9bbcaff058b93385eaf607685) --- usr.bin/diff/diff.1 | 11 ++++- usr.bin/diff/diff.c | 12 ++---- usr.bin/diff/diffreg.c | 113 ++++++++++++++++++++++++++++--------------------- 3 files changed, 79 insertions(+), 57 deletions(-) diff --git a/usr.bin/diff/diff.1 b/usr.bin/diff/diff.1 index e04aeb5d6d67..d3978158d1d1 100644 --- a/usr.bin/diff/diff.1 +++ b/usr.bin/diff/diff.1 @@ -29,7 +29,7 @@ .\" .\" @(#)diff.1 8.1 (Berkeley) 6/30/93 .\" -.Dd March 10, 2022 +.Dd February 26, 2024 .Dt DIFF 1 .Os .Sh NAME @@ -429,6 +429,15 @@ Output at most .Ar number columns when using side by side format. The default value is 130. +Note that unless +.It Fl t +was specified, +.Nm +will always align the second column to a tab stop, so values of +.Fl -width +smaller than approximately five times the value of +.Fl -tabsize +may yield surprising results. .It Fl -changed-group-format Ar GFMT Format input groups in the provided .Pp diff --git a/usr.bin/diff/diff.c b/usr.bin/diff/diff.c index 03eb363fc323..d947c1e01705 100644 --- a/usr.bin/diff/diff.c +++ b/usr.bin/diff/diff.c @@ -276,10 +276,8 @@ main(int argc, char **argv) break; case 'W': width = (int) strtonum(optarg, 1, INT_MAX, &errstr); - if (errstr) { - warnx("Invalid argument for width"); - usage(); - } + if (errstr) + errx(1, "width is %s: %s", errstr, optarg); break; case 'X': read_excludes_file(optarg); @@ -317,10 +315,8 @@ main(int argc, char **argv) break; case OPT_TSIZE: tabsize = (int) strtonum(optarg, 1, INT_MAX, &errstr); - if (errstr) { - warnx("Invalid argument for tabsize"); - usage(); - } + if (errstr) + errx(1, "tabsize is %s: %s", errstr, optarg); break; case OPT_STRIPCR: dflags |= D_STRIPCR; diff --git a/usr.bin/diff/diffreg.c b/usr.bin/diff/diffreg.c index 11aefb73cda6..8042003cd836 100644 --- a/usr.bin/diff/diffreg.c +++ b/usr.bin/diff/diffreg.c @@ -169,7 +169,6 @@ struct context_vec { enum readhash { RH_BINARY, RH_OK, RH_EOF }; -#define MIN_PAD 1 static FILE *opentemp(const char *); static void output(char *, FILE *, char *, FILE *, int); static void check(FILE *, FILE *, int); @@ -209,7 +208,7 @@ static int len[2]; static int pref, suff; /* length of prefix and suffix */ static int slen[2]; static int anychange; -static int hw, padding; /* half width and padding */ +static int hw, lpad, rpad; /* half width and padding */ static int edoffset; static long *ixnew; /* will be overlaid on file[1] */ static long *ixold; /* will be overlaid on klist */ @@ -254,21 +253,44 @@ diffreg(char *file1, char *file2, int flags, int capsicum) lastline = 0; lastmatchline = 0; - /* - * hw excludes padding and make sure when -t is not used, - * the second column always starts from the closest tab stop - */ + /* + * In side-by-side mode, we need to print the left column, a + * change marker surrounded by padding, and the right column. + * + * If expanding tabs, we don't care about alignment, so we simply + * subtract 3 from the width and divide by two. + * + * If not expanding tabs, we need to ensure that the right column + * is aligned to a tab stop. We start with the same formula, then + * decrement until we reach a size that lets us tab-align the + * right column. We then adjust the width down if necessary for + * the padding calculation to work. + * + * Left padding is half the space left over, rounded down; right + * padding is whatever is needed to match the width. + */ if (diff_format == D_SIDEBYSIDE) { - hw = width >> 1; - padding = tabsize - (hw % tabsize); - if ((flags & D_EXPANDTABS) != 0 || (padding % tabsize == 0)) - padding = MIN_PAD; - - hw = (width >> 1) - - ((padding == MIN_PAD) ? (padding << 1) : padding) - 1; + if (flags & D_EXPANDTABS) { + if (width > 3) { + hw = (width - 3) / 2; + } else { + /* not enough space */ + hw = 0; + } + } else if (width <= 3 || width <= tabsize) { + /* not enough space */ + hw = 0; + } else { + hw = (width - 3) / 2; + while (hw > 0 && roundup(hw + 3, tabsize) + hw > width) + hw--; + if (width - (roundup(hw + 3, tabsize) + hw) < tabsize) + width = roundup(hw + 3, tabsize) + hw; + } + lpad = (width - hw * 2 - 1) / 2; + rpad = (width - hw * 2 - 1) - lpad; } - if (flags & D_IGNORECASE) chrtran = cup2low; else @@ -869,7 +891,7 @@ output(char *file1, FILE *f1, char *file2, FILE *f2, int flags) while (i0 <= m && J[i0] == J[i0 - 1] + 1) { if (diff_format == D_SIDEBYSIDE && suppress_common != 1) { nc = fetch(ixold, i0, i0, f1, '\0', 1, flags); - print_space(nc, (hw - nc) + (padding << 1) + 1, flags); + print_space(nc, hw - nc + lpad + 1 + rpad, flags); fetch(ixnew, J[i0], J[i0], f2, '\0', 0, flags); printf("\n"); } @@ -1147,10 +1169,10 @@ proceed: else if (color && c > d) printf("\033[%sm", del_code); if (a > b) { - print_space(0, hw + padding , *pflags); + print_space(0, hw + lpad, *pflags); } else { nc = fetch(ixold, a, b, f1, '\0', 1, *pflags); - print_space(nc, hw - nc + padding, *pflags); + print_space(nc, hw - nc + lpad, *pflags); } if (color && a > b) printf("\033[%sm", add_code); @@ -1159,7 +1181,7 @@ proceed: printf("%c", (a > b) ? '>' : ((c > d) ? '<' : '|')); if (color && c > d) printf("\033[m"); - print_space(hw + padding + 1 , padding, *pflags); + print_space(hw + lpad + 1, rpad, *pflags); fetch(ixnew, c, d, f2, '\0', 0, *pflags); printf("\n"); } @@ -1265,30 +1287,24 @@ fetch(long *f, int a, int b, FILE *lb, int ch, int oldfile, int flags) printf("\n\\ No newline at end of file\n"); return (col); } - /* - * when using --side-by-side, col needs to be increased - * in any case to keep the columns aligned - */ if (c == '\t') { - if (flags & D_EXPANDTABS) { - newcol = ((col / tabsize) + 1) * tabsize; - do { - printf(" "); - } while (++col < newcol && col < hw); + /* + * Calculate where the tab would bring us. + * If it would take us to the end of the + * column, either clip it (if expanding + * tabs) or return right away (if not). + */ + newcol = roundup(col + 1, tabsize); + if ((flags & D_EXPANDTABS) == 0) { + if (hw > 0 && newcol >= hw) + return (col); + printf("\t"); } else { - if (diff_format == D_SIDEBYSIDE) { - if ((col + tabsize) > hw) { - printf("%*s", hw - col, ""); - col = hw; - } else { - printf("\t"); - col += tabsize - 1; - } - } else { - printf("\t"); - col++; - } + if (hw > 0 && newcol > hw) + newcol = hw; + printf("%*s", newcol - col, ""); } + col = newcol; } else { if (diff_format == D_EDIT && j == 1 && c == '\n' && lastc == '.') { @@ -1668,18 +1684,19 @@ print_header(const char *file1, const char *file2) * nc is the preceding number of characters */ static void -print_space(int nc, int n, int flags) { - int i, col; +print_space(int nc, int n, int flags) +{ + int col, newcol, tabstop; - col = n; + col = nc; + newcol = nc + n; + /* first, use tabs if allowed */ if ((flags & D_EXPANDTABS) == 0) { - /* first tabstop may be closer than tabsize */ - i = tabsize - (nc % tabsize); - while (col >= tabsize) { + while ((tabstop = roundup(col + 1, tabsize)) <= newcol) { printf("\t"); - col -= i; - i = tabsize; + col = tabstop; } } - printf("%*s", col, ""); + /* finish with spaces */ + printf("%*s", newcol - col, ""); } From nobody Mon Mar 11 12:35:07 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Ttbp371Ygz5Ctp2; Mon, 11 Mar 2024 12:35: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 4Ttbp369t5z4Bt9; Mon, 11 Mar 2024 12:35:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710160507; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E2XhIF8XnunSRuMQdZKzRzl2pq87tELQVU39kBbZkhY=; b=MhYzzv3Hgn0S8WVaeDl/0bZF6lg2twKeFnQaJomps461MpHYq7C1ZB82t3tfB10hJFPf/s AwEQBdR/CFtmM2llXq+QKPa1mvkSDHnlNtqMHZVs+hSAVGPN6Y7DS2O0M67FoUskwWKi05 zOytFyhirmK/tCNI/RyGO1Mh1dA73QnYWUv9esp/ZcXmxWOxdwz8pdZ+wU5C08UREZUCbP VHgy5gR+OzLKpc5qRMwIvDc2V6pgeiJMns8WYAEsm7Be4fZyGfo/3FDnCGd/4xt3SAHNvH HC51Dwi5hHF02z9nvL18noacXLEwQ8Jbzpx9i2EbMmJTfHiupJmgFuvvQBqOpQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710160507; a=rsa-sha256; cv=none; b=AS0EexoIoVUwn9ihvqFvx8FaO6qSbYGxmE1mq3LO40g7i/f8Vui7CBZuSzxqLQueKzng3d 39pL4mcBzrlSJuOu8edJvcv3toWdoZXm0Dd3FVTI/VfXbp6twIxoZjEgehqtCFyAr/P5yM 6knaHY9krWyg7ewJlgeAixpUy6wPGMRj7ouOm0pY4b2DsKC9aYPJB5yqIYTDLGjJpk0Qjm UvKp5LOc7UBzcxX3214hJVDl2XAFMcScF9GnncgUs97rjqgBWO3S75vLgKmBF7uI98LCpZ ZOv75GBx/gv+1vYuM/4uwrooONZIk4uneiWCWj8NQIkUBXZjiReL4CU04vEMTg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710160507; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E2XhIF8XnunSRuMQdZKzRzl2pq87tELQVU39kBbZkhY=; b=IfyHiK2mX+Mr30ViOMEaPwwcdBRL9ffJSPgpsd0qUNknWld+5oWXzYhlc1H9+M6iXITUs1 fVKHLHCQHu+xffLexRsJZC67jCYa6F+AJzCBeenJVfp504WgnD2sicb3tQnspUZ5HfUl87 qppZE1WBnixIf+SzuXYdMQXoYRqhnxl0qi3Up0PK/VhQLjw0vPH+nfH9nDF+Gc58TZFoJU kQHUXOwzjqy74P+0XIbQ5kQWBuiqk56Q4nJvwrC/1hGe8FyEFawaUk/1c2kcUrVpBk8AhP iErRN5Z0xc9abvoJekThIWeFG/7icXSLJ2A7LHND8ksQVQmwAvTdHVg78/I5tg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Ttbp35nCRzV8V; Mon, 11 Mar 2024 12:35: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 42BCZ73Z028953; Mon, 11 Mar 2024 12:35:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BCZ7F0028949; Mon, 11 Mar 2024 12:35:07 GMT (envelope-from git) Date: Mon, 11 Mar 2024 12:35:07 GMT Message-Id: <202403111235.42BCZ7F0028949@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: d85ea7e79b30 - stable/14 - lorder: Clean up and improve robustness. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: d85ea7e79b30dd51281f2fb8a457e5eccc3fc47e Auto-Submitted: auto-generated The branch stable/14 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=d85ea7e79b30dd51281f2fb8a457e5eccc3fc47e commit d85ea7e79b30dd51281f2fb8a457e5eccc3fc47e Author: Dag-Erling Smørgrav AuthorDate: 2024-02-28 15:37:36 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-03-11 12:19:06 +0000 lorder: Clean up and improve robustness. * Properly parse (no) command-line options. * Ensure that errors go to stderr and result in a non-zero exit. * Drop the special-case code for a single argument, as it will produce the wrong outcome if the file does not exist or is corrupted. * Don't print anything until after we've collected all the data. * Always create all temporary files before setting the trap. This ensures that the trap can safely fire at any moment, regardless of any previous definition of `T`. * Use a temporary file rather than a pipe between `nm` and `sed` to ensure proper termination if `nm` fails due to a missing or invalid input. * The check for self-referential entries was conditional on testing our argument list against a regex looking for archives. This was a needless and unreliable optimization; make the check unconditional. * Document that lorder will not work properly if any of its inputs have spaces in their name. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D44133 (cherry picked from commit 5c7b986c21ed47545203e8f630fe2281b83112d2) lorder: Add unit tests. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D44134 (cherry picked from commit 96da41b6dbf383436018f11ad8a672faab2d3789) lorder: Undeprecate. While lorder is not required by our current toolchain (or any toolchain we've used in the past decade or two), it still occasionally shows up in build systems of third party software, including The Open Group's UNIX conformance test suite, and the maintenance cost is negligible. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: imp, allanjude, emaste Differential Revision: https://reviews.freebsd.org/D44135 (cherry picked from commit cf4d9bf8b38819da12c6d686d5cf6dbd6353cd61) lorder: Don't rely on legacy syntax. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D44155 (cherry picked from commit aedb37dc49319a7cd1faf34f312a8a9fc01e611d) lorder: Tweak invalid file test. Different implementations of `nm` have different ways of telling you that your file is not a valid object or library, but they all seem to have “not recognized” as a common substring. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D44154 (cherry picked from commit aa80cfadff0bb715ca090cbd1b3561a1619251d5) --- etc/mtree/BSD.tests.dist | 2 + usr.bin/lorder/Makefile | 4 ++ usr.bin/lorder/lorder.1 | 37 ++++++------ usr.bin/lorder/lorder.sh | 94 ++++++++++++++++++------------ usr.bin/lorder/tests/Makefile | 4 ++ usr.bin/lorder/tests/lorder_test.sh | 111 ++++++++++++++++++++++++++++++++++++ 6 files changed, 195 insertions(+), 57 deletions(-) diff --git a/etc/mtree/BSD.tests.dist b/etc/mtree/BSD.tests.dist index 8b985f3b4682..8a3b097c4162 100644 --- a/etc/mtree/BSD.tests.dist +++ b/etc/mtree/BSD.tests.dist @@ -1087,6 +1087,8 @@ .. lockf .. + lorder + .. m4 .. mkimg diff --git a/usr.bin/lorder/Makefile b/usr.bin/lorder/Makefile index a94860b51c6a..6b3fa2c829d6 100644 --- a/usr.bin/lorder/Makefile +++ b/usr.bin/lorder/Makefile @@ -1,6 +1,10 @@ # @(#)Makefile 8.1 (Berkeley) 6/6/93 +.include SCRIPTS=lorder.sh MAN= lorder.1 +HAS_TESTS= +SUBDIR.${MK_TESTS}= tests + .include diff --git a/usr.bin/lorder/lorder.1 b/usr.bin/lorder/lorder.1 index e268f81d7254..478b7f493e03 100644 --- a/usr.bin/lorder/lorder.1 +++ b/usr.bin/lorder/lorder.1 @@ -27,17 +27,12 @@ .\" .\" @(#)lorder.1 8.2 (Berkeley) 4/28/95 .\" -.Dd March 21, 2023 +.Dd February 27, 2024 .Dt LORDER 1 .Os .Sh NAME .Nm lorder .Nd list dependencies for object files -.Sh DEPRECATION NOTICE -.Nm -is obsolete and may not be present in -.Fx 14 -and later. .Sh SYNOPSIS .Nm .Ar @@ -46,13 +41,10 @@ The .Nm utility uses .Xr nm 1 -to determine interdependencies in the list of object files -and library archives -specified on the command line. -The -.Nm -utility outputs a list of file names where the first file contains a symbol -which is defined by the second file. +to determine interdependencies between object files and library +archives listed on its command line. +It then outputs a list of pairs of file names such that the first file +in each pair references at least one symbol defined by the second. .Pp The output is normally used with .Xr tsort 1 @@ -60,18 +52,16 @@ when a library is created to determine the optimum ordering of the object modules so that all references may be resolved in a single pass of the loader. .Pp -When linking static binaries, +Similarly, when linking static binaries, .Nm and .Xr tsort 1 -can be used to properly order library archives automatically. +can be used to sort libraries in order of dependency. .Pp -The use of -.Nm -is not required by contemporary linkers, and -.Nm -may be removed from a future version of -.Fx . +While contemporary linkers no longer require the use of +.Nm , +it is provided for the benefit of legacy code bases and build +systems which still insist on it. .Sh ENVIRONMENT .Bl -tag -width indent .It Ev NM @@ -99,3 +89,8 @@ A .Nm utility appeared in .At v7 . +.Sh CAVEATS +The +.Nm +utility will not work properly if given file names with spaces or +newlines in them. diff --git a/usr.bin/lorder/lorder.sh b/usr.bin/lorder/lorder.sh index 640e128b0cb9..c0a7dbbd43e6 100644 --- a/usr.bin/lorder/lorder.sh +++ b/usr.bin/lorder/lorder.sh @@ -33,35 +33,50 @@ # # -# only one argument is a special case, just output the name twice -case $# in - 0) - echo "usage: lorder file ..."; - exit ;; - 1) - echo $1 $1; - exit ;; -esac +export LC_CTYPE=C +export LC_COLLATE=C +set -e -# temporary files +usage() { + echo "usage: lorder file ..." >&2 + exit 1 +} + +while getopts "" opt ; do + case $opt in + *) + usage + ;; + esac +done +shift $(($OPTIND - 1)) +if [ $# -eq 0 ] ; then + usage +fi + +# +# Create temporary files. +# +N=$(mktemp -t _nm_) R=$(mktemp -t _reference_) S=$(mktemp -t _symbol_) +T=$(mktemp -t _temp_) NM=${NM:-nm} -# remove temporary files on HUP, INT, QUIT, PIPE, TERM -trap "rm -f $R $S $T; exit 1" 1 2 3 13 15 - -# make sure all the files get into the output -for i in $*; do - echo $i $i -done +# +# Remove temporary files on termination. +# +trap "rm -f $N $R $S $T" EXIT 1 2 3 13 15 -# if the line has " [RTDW] " it's a globally defined symbol, put it -# into the symbol file. # -# if the line has " U " it's a globally undefined symbol, put it into -# the reference file. -${NM} ${NMFLAGS} -go $* | sed " +# A line matching " [RTDW] " indicates that the input defines a symbol +# with external linkage; put it in the symbol file. +# +# A line matching " U " indicates that the input references an +# undefined symbol; put it in the reference file. +# +${NM} ${NMFLAGS} -go "$@" >$N +sed -e " / [RTDW] / { s/:.* [RTDW] / / w $S @@ -72,21 +87,28 @@ ${NM} ${NMFLAGS} -go $* | sed " w $R } d -" +" <$N -export LC_ALL=C -# eliminate references that can be resolved by the same library. -if [ $(expr "$*" : '.*\.a[[:>:]]') -ne 0 ]; then - sort -u -o $S $S - sort -u -o $R $R - T=$(mktemp -t _temp_) - comm -23 $R $S >$T - mv $T $R -fi +# +# Elide entries representing a reference to a symbol from within the +# library that defines it. +# +sort -u -o $S $S +sort -u -o $R $R +comm -23 $R $S >$T +mv $T $R + +# +# Make sure that all inputs get into the output. +# +for i ; do + echo "$i" "$i" +done -# sort references and symbols on the second field (the symbol), -# join on that field, and print out the file names. +# +# Sort references and symbols on the second field (the symbol), join +# on that field, and print out the file names. +# sort -k 2 -o $R $R sort -k 2 -o $S $S -join -j 2 -o 1.1 2.1 $R $S -rm -f $R $S +join -j 2 -o 1.1 -o 2.1 $R $S diff --git a/usr.bin/lorder/tests/Makefile b/usr.bin/lorder/tests/Makefile new file mode 100644 index 000000000000..21207f413a8d --- /dev/null +++ b/usr.bin/lorder/tests/Makefile @@ -0,0 +1,4 @@ +PACKAGE= tests +ATF_TESTS_SH= lorder_test + +.include diff --git a/usr.bin/lorder/tests/lorder_test.sh b/usr.bin/lorder/tests/lorder_test.sh new file mode 100644 index 000000000000..a4276b2dcfe6 --- /dev/null +++ b/usr.bin/lorder/tests/lorder_test.sh @@ -0,0 +1,111 @@ +# +# Copyright (c) 2024 Klara, Inc. +# +# SPDX-License-Identifier: BSD-2-Clause +# + +atf_test_case noargs +noargs_head() { + atf_set descr "No arguments" +} +noargs_body() { + atf_check -s exit:1 -e match:"^usage:" \ + lorder +} + +atf_test_case onearg +onearg_head() { + atf_set descr "One argument" +} +onearg_body() { + echo "void a(void) { }" >a.c + cc -o a.o -c a.c + echo "a.o a.o" >output + atf_check -o file:output \ + lorder *.o +} + +atf_test_case dashdash +dashdash_head() { + atf_set descr "One argument" +} +dashdash_body() { + echo "void a(void) { }" >a.c + cc -o a.o -c a.c + echo "a.o a.o" >output + atf_check -o file:output \ + lorder -- *.o +} + +atf_test_case nonexistent +nonexistent_head() { + atf_set descr "Nonexistent file" +} +nonexistent_body() { + atf_check -s not-exit:0 -e match:"No such file" -o empty \ + lorder nonexistent.o +} + +atf_test_case invalid +invalid_head() { + atf_set descr "Invalid file" +} +invalid_body() { + echo "not an object file" >invalid.o + atf_check -s not-exit:0 -e match:"not recognized" -o empty \ + lorder invalid.o +} + +atf_test_case objects +objects_head() { + atf_set descr "Order objects" +} +objects_body() { + echo "void a(void) { }" >a.c + echo "void a(void); void b(void) { a(); }" >b.c + echo "void b(void); void c(void) { b(); }" >c.c + for n in a b c ; do + cc -o $n.o -c $n.c + echo "$n.o $n.o" + done >output + echo "b.o a.o" >>output + echo "c.o b.o" >>output + atf_check -o file:output \ + lorder *.o +} + +atf_test_case archives +archives_head() { + atf_set descr "Order archives" +} +archives_body() { + echo "void a(void) { }" >a.c + echo "void a(void); void b(void) { a(); }" >b.c + echo "void b(void); void c(void) { b(); }" >c.c + echo "void e(void); void d(void) { e(); }" >d.c + echo "void d(void); void e(void) { d(); }" >e.c + for n in a b c d e ; do + cc -o $n.o -c $n.c + done + for n in a b c ; do + ar -crs $n.a $n.o + echo "$n.a $n.a" + done >output + ar -crs z.a d.o e.o + echo "z.a z.a" >>output + echo "b.a a.a" >>output + echo "c.a b.a" >>output + atf_check -o file:output \ + lorder *.a +} + +atf_init_test_cases() +{ + atf_add_test_case noargs + atf_add_test_case onearg + atf_add_test_case dashdash + atf_add_test_case nonexistent + atf_add_test_case invalid + atf_add_test_case objects + atf_add_test_case archives +} From nobody Mon Mar 11 12:35:08 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Ttbp51HwDz5Ctp3; Mon, 11 Mar 2024 12: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 4Ttbp46rD9z4BsQ; Mon, 11 Mar 2024 12:35:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710160508; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2v9X75eRtpRGi+TFs9z1S+f2Z/z6GApYz0SVpAKnShU=; b=AiaUZ7WcOgr5S+Eugx86nfBLHr+KnhqnefNIpQD64x42frE6MiBFtuFv5nQO6SuwYKXQK+ ZdJxjpPb9JXMRu0f7FkzmpGT+Pknte7B7TthpCX4+fad4nqzWurITDfqak7aR8upmUTwpC FXcFTxIyWBXtjE+XvKa/CT6YQd+VTvm0dOITIXei7wt2a0XFc5bSS6b3Vnv/h9/FaCcSIO GaqSCDoQo1s5J6uDy5r/4iTwO0YLIJlpYXvAzJX0d+dLEwqUekIaT5XJvBWg4JwRqYplfC 1w7priAW5J7bWC0pNG3VCpzm+y5POn5gOWO42aYCJwuMxKpw3zjm/bDMESLEoQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710160508; a=rsa-sha256; cv=none; b=evREWOGg6cnHUG8XbqO+XNzP8yeQT3SfFWxCD6fCdMfFtkqx03qqffCG6Vt9SsOR8OK1Gl ETEOcMbjrOxasPlzE1gV4pxXEM99/2f/HQZPDGuf8BRR1qUCpZugEMnr3E4wk124exqWK0 wL0oBXrRdBxNwII5F+xrXvkzXfh06Xkp7Z5t5ukcS4AkIJgZ94CLvaI63qVL2NGL9W85u5 ITFGTvmPPvm1vEctAzcq3m/mP51qakwrODgfhDd8XEfm5qIMs+ZBf/8A+ryHaH3OI7kluM 4n9t5UZzJV54/cuw1PYWL6Z6zTSC0Gr3jqsYlXbywBU09WIRnH30PeaNDdaxMA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710160508; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=2v9X75eRtpRGi+TFs9z1S+f2Z/z6GApYz0SVpAKnShU=; b=dpcAAM+23cEkqR3FYQBt/zNaVII4tsJG0LA55JTI4LE+wzOIq4srCuAEcmSO6+Foso9E6A SxSsqqYy1kDkvYNnqgWBgUm5kqvcUvGREP/9Ikt9PPRa6r924IMYUmiwOG5PtylxyEAEZ3 WCBEFc4F2//KMgCdYhUlVByCwm3HOGmqf0N1JNnWc3Nzha1Rw03gVNU+NM8mT7G4B6KpTu bHX6w7Zz1FK1areLL+xiKBzT2f8oklTfK1EvgfeD0JbziMWMKDMI4wd/8s1+KLX3NRDbQT qLTC4C6jTQBjSmHouvRcAkHuDGhwZ9d3mZg9DIOnaYGk8KFqehdbyhsRydfxPw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Ttbp46CkkzT73; Mon, 11 Mar 2024 12: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 42BCZ8xu029001; Mon, 11 Mar 2024 12: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 42BCZ8wA028998; Mon, 11 Mar 2024 12:35:08 GMT (envelope-from git) Date: Mon, 11 Mar 2024 12:35:08 GMT Message-Id: <202403111235.42BCZ8wA028998@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 08e799c0cc23 - stable/14 - tarfs: Fix two input validation issues. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 08e799c0cc235b8c5a98921653127a915a985220 Auto-Submitted: auto-generated The branch stable/14 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=08e799c0cc235b8c5a98921653127a915a985220 commit 08e799c0cc235b8c5a98921653127a915a985220 Author: Dag-Erling Smørgrav AuthorDate: 2024-03-06 16:13:42 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-03-11 12:19:06 +0000 tarfs: Fix two input validation issues. * Reject hard or soft links with an empty target path. Currently, a debugging kernel will hit an assertion in tarfs_lookup_path() while a non-debugging kernel will happily create a link to the mount root. * Use a temporary variable to store the result of the link target path, and copy it to tnp->other only once we have found it to be valid. Otherwise we error out after creating a reference to the target but before incrementing the target's reference count, which results in a use-after-free situation in the cleanup code. * Correctly return ENOENT from tarfs_lookup_path() if the requested path was not found and create_dirs is false. Luckily, existing callers did not rely solely on the return value. MFC after: 3 days PR: 277360 Sponsored by: Juniper Networks, Inc. Sponsored by: Klara, Inc. Reviewed by: sjg Differential Revision: https://reviews.freebsd.org/D44161 (cherry picked from commit 38b3683592d4c20a74f52a6e8e29368e6fa61858) tarfs: Improve validation of numeric fields. MFC after: 3 days Sponsored by: Juniper Networks, Inc. Sponsored by: Klara, Inc. Reviewed by: sjg, allanjude Differential Revision: https://reviews.freebsd.org/D44166 (cherry picked from commit 8427d94ce05682abb6c75e2a27c8c497962c0dc5) tarfs: Avoid overflow in exthdr calculation. MFC after: 3 days PR: 277420 Sponsored by: Juniper Networks, Inc. Sponsored by: Klara, Inc. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D44202 (cherry picked from commit c291b7914e1db9469cc820abcb1f5dde7a6f7f28) tarfs: Remove unnecessary hack and obsolete comment. MFC after: 3 days Sponsored by: Juniper Networks, Inc. Sponsored by: Klara, Inc. Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D44203 (cherry picked from commit e212f0c0666e7d3a24dce03b8c88920d14b80e47) tarfs: Fix checksum calculation. The checksum code assumed that struct ustar_header filled an entire block and calculcated the checksum based on the size of the structure. The header is in fact only 500 bytes long while the checksum covers the entire block (“logical record” in POSIX terms). Add padding and an assertion, and clean up the checksum code. MFC after: 3 days Sponsored by: Juniper Networks, Inc. Sponsored by: Klara, Inc. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44226 (cherry picked from commit 0118b0c8e58a438a931a5ce1bf8d7ae6208cc61b) tarfs: Factor out common test code. MFC after: 3 days Sponsored by: Juniper Networks, Inc. Sponsored by: Klara, Inc. Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D44227 (cherry picked from commit 32b8aac6f9b77a1c4326083472d634e5de427547) tarfs: Fix checksum on 32-bit platforms. MFC after: 3 days Fixes: b56872332e47786afc09515a4daaf1388da4d73c Sponsored by: Juniper Networks, Inc. Sponsored by: Klara, Inc. Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D44261 (cherry picked from commit cbddb2f02c7687d1039abcffd931e94e481c11a5) --- sys/fs/tarfs/tarfs_vfsops.c | 222 ++++++++++++++++++++++----------------- tests/sys/fs/tarfs/Makefile | 2 +- tests/sys/fs/tarfs/tarfs_test.sh | 120 ++++++++++++++++++--- tests/sys/fs/tarfs/tarsum.c | 128 ++++++++++++++++++++++ 4 files changed, 357 insertions(+), 115 deletions(-) diff --git a/sys/fs/tarfs/tarfs_vfsops.c b/sys/fs/tarfs/tarfs_vfsops.c index 4489b41699ec..d1af7070e706 100644 --- a/sys/fs/tarfs/tarfs_vfsops.c +++ b/sys/fs/tarfs/tarfs_vfsops.c @@ -2,7 +2,7 @@ * SPDX-License-Identifier: BSD-2-Clause * * Copyright (c) 2013 Juniper Networks, Inc. - * Copyright (c) 2022-2023 Klara, Inc. + * Copyright (c) 2022-2024 Klara, Inc. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -56,7 +56,7 @@ #include #include -CTASSERT(ZERO_REGION_SIZE > TARFS_BLOCKSIZE); +CTASSERT(ZERO_REGION_SIZE >= TARFS_BLOCKSIZE); struct ustar_header { char name[100]; /* File name */ @@ -75,8 +75,11 @@ struct ustar_header { char major[8]; /* Device major number */ char minor[8]; /* Device minor number */ char prefix[155]; /* Path prefix */ + char _pad[12]; }; +CTASSERT(sizeof(struct ustar_header) == TARFS_BLOCKSIZE); + #define TAR_EOF ((off_t)-1) #define TAR_TYPE_FILE '0' @@ -113,58 +116,46 @@ static const char *tarfs_opts[] = { }; /* - * Reads a len-width signed octal number from strp. Returns the value. - * XXX Does not report errors. + * Reads a len-width signed octal number from strp. Returns 0 on success + * and non-zero on error. */ -static int64_t -tarfs_str2octal(const char *strp, size_t len) +static int +tarfs_str2octal(const char *strp, size_t len, int64_t *num) { int64_t val; size_t idx; int sign; - /* - * Skip leading spaces or tabs. - * XXX why? POSIX requires numeric fields to be 0-padded. - */ - for (idx = 0; idx < len; idx++) - if (strp[idx] != ' ' && strp[idx] != '\t') - break; - - if (idx == len) - return (0); - + idx = 0; if (strp[idx] == '-') { sign = -1; idx++; - } else + } else { sign = 1; + } val = 0; - for (; idx < len; idx++) { + for (; idx < len && strp[idx] != '\0' && strp[idx] != ' '; idx++) { if (strp[idx] < '0' || strp[idx] > '7') - break; + return (EINVAL); val <<= 3; - val += (strp[idx] - '0'); - - /* Truncate on overflow */ - if (val > INT64_MAX / 8) { - val = INT64_MAX; - break; - } + val += strp[idx] - '0'; + if (val > INT64_MAX / 8) + return (ERANGE); } - return (sign > 0) ? val : -val; + *num = val * sign; + return (0); } /* * Reads a len-byte extended numeric value from strp. The first byte has * bit 7 set to indicate the format; the remaining 7 bits + the (len - 1) * bytes that follow form a big-endian signed two's complement binary - * number. Returns the value. XXX Does not report errors. + * number. Returns 0 on success and non-zero on error; */ -static int64_t -tarfs_str2base256(const char *strp, size_t len) +static int +tarfs_str2base256(const char *strp, size_t len, int64_t *num) { int64_t val; size_t idx; @@ -183,37 +174,27 @@ tarfs_str2base256(const char *strp, size_t len) for (idx = 1; idx < len; idx++) { val <<= 8; val |= (0xff & (int64_t)strp[idx]); - - /* Truncate on overflow and underflow */ - if (val > INT64_MAX / 256) { - val = INT64_MAX; - break; - } else if (val < INT64_MAX / 256) { - val = INT64_MIN; - break; - } + if (val > INT64_MAX / 256 || val < INT64_MIN / 256) + return (ERANGE); } - return (val); + *num = val; + return (0); } /* * Read a len-byte numeric field from strp. If bit 7 of the first byte it * set, assume an extended numeric value (signed two's complement); * otherwise, assume a signed octal value. - * - * XXX practically no error checking or handling */ -static int64_t -tarfs_str2int64(const char *strp, size_t len) +static int +tarfs_str2int64(const char *strp, size_t len, int64_t *num) { - if (len < 1) - return (0); - + return (EINVAL); if ((strp[0] & 0x80) != 0) - return (tarfs_str2base256(strp, len)); - return (tarfs_str2octal(strp, len)); + return (tarfs_str2base256(strp, len, num)); + return (tarfs_str2octal(strp, len, num)); } /* @@ -225,21 +206,26 @@ tarfs_checksum(struct ustar_header *hdrp) { const unsigned char *ptr; int64_t checksum, hdrsum; - size_t idx; - hdrsum = tarfs_str2int64(hdrp->checksum, sizeof(hdrp->checksum)); - TARFS_DPF(CHECKSUM, "%s: header checksum %lx\n", __func__, hdrsum); + if (tarfs_str2int64(hdrp->checksum, sizeof(hdrp->checksum), &hdrsum) != 0) { + TARFS_DPF(CHECKSUM, "%s: invalid header checksum \"%.*s\"\n", + __func__, (int)sizeof(hdrp->checksum), hdrp->checksum); + return (false); + } + TARFS_DPF(CHECKSUM, "%s: header checksum \"%.*s\" = %#lo\n", __func__, + (int)sizeof(hdrp->checksum), hdrp->checksum, hdrsum); checksum = 0; for (ptr = (const unsigned char *)hdrp; ptr < (const unsigned char *)hdrp->checksum; ptr++) checksum += *ptr; - for (idx = 0; idx < sizeof(hdrp->checksum); idx++) + for (; + ptr < (const unsigned char *)hdrp->typeflag; ptr++) checksum += 0x20; - for (ptr = (const unsigned char *)hdrp->typeflag; + for (; ptr < (const unsigned char *)(hdrp + 1); ptr++) checksum += *ptr; - TARFS_DPF(CHECKSUM, "%s: calc unsigned checksum %lx\n", __func__, + TARFS_DPF(CHECKSUM, "%s: calc unsigned checksum %#lo\n", __func__, checksum); if (hdrsum == checksum) return (true); @@ -252,12 +238,13 @@ tarfs_checksum(struct ustar_header *hdrp) for (ptr = (const unsigned char *)hdrp; ptr < (const unsigned char *)&hdrp->checksum; ptr++) checksum += *((const signed char *)ptr); - for (idx = 0; idx < sizeof(hdrp->checksum); idx++) + for (; + ptr < (const unsigned char *)&hdrp->typeflag; ptr++) checksum += 0x20; - for (ptr = (const unsigned char *)&hdrp->typeflag; + for (; ptr < (const unsigned char *)(hdrp + 1); ptr++) checksum += *((const signed char *)ptr); - TARFS_DPF(CHECKSUM, "%s: calc signed checksum %lx\n", __func__, + TARFS_DPF(CHECKSUM, "%s: calc signed checksum %#lo\n", __func__, checksum); if (hdrsum == checksum) return (true); @@ -379,8 +366,10 @@ tarfs_lookup_path(struct tarfs_mount *tmp, char *name, size_t namelen, tnp = tarfs_lookup_node(parent, NULL, &cn); if (tnp == NULL) { do_lookup = false; - if (!create_dirs) + if (!create_dirs) { + error = ENOENT; break; + } } } name += cn.cn_namelen; @@ -451,7 +440,7 @@ tarfs_alloc_one(struct tarfs_mount *tmp, off_t *blknump) int64_t num; int endmarker = 0; char *namep, *sep; - struct tarfs_node *parent, *tnp; + struct tarfs_node *parent, *tnp, *other; size_t namelen = 0, linklen = 0, realsize = 0, sz; ssize_t res; dev_t rdev; @@ -519,42 +508,47 @@ again: } /* get standard attributes */ - num = tarfs_str2int64(hdrp->mode, sizeof(hdrp->mode)); - if (num < 0 || num > (S_IFMT|ALLPERMS)) { + if (tarfs_str2int64(hdrp->mode, sizeof(hdrp->mode), &num) != 0 || + num < 0 || num > (S_IFMT|ALLPERMS)) { TARFS_DPF(ALLOC, "%s: invalid file mode at %zu\n", __func__, TARFS_BLOCKSIZE * (blknum - 1)); mode = S_IRUSR; } else { mode = num & ALLPERMS; } - num = tarfs_str2int64(hdrp->uid, sizeof(hdrp->uid)); - if (num < 0 || num > UID_MAX) { - TARFS_DPF(ALLOC, "%s: UID out of range at %zu\n", + if (tarfs_str2int64(hdrp->uid, sizeof(hdrp->uid), &num) != 0 || + num < 0 || num > UID_MAX) { + TARFS_DPF(ALLOC, "%s: invalid UID at %zu\n", __func__, TARFS_BLOCKSIZE * (blknum - 1)); uid = tmp->root->uid; mode &= ~S_ISUID; } else { uid = num; } - num = tarfs_str2int64(hdrp->gid, sizeof(hdrp->gid)); - if (num < 0 || num > GID_MAX) { - TARFS_DPF(ALLOC, "%s: GID out of range at %zu\n", + if (tarfs_str2int64(hdrp->gid, sizeof(hdrp->gid), &num) != 0 || + num < 0 || num > GID_MAX) { + TARFS_DPF(ALLOC, "%s: invalid GID at %zu\n", __func__, TARFS_BLOCKSIZE * (blknum - 1)); gid = tmp->root->gid; mode &= ~S_ISGID; } else { gid = num; } - num = tarfs_str2int64(hdrp->size, sizeof(hdrp->size)); - if (num < 0) { - TARFS_DPF(ALLOC, "%s: negative size at %zu\n", + if (tarfs_str2int64(hdrp->size, sizeof(hdrp->size), &num) != 0 || + num < 0) { + TARFS_DPF(ALLOC, "%s: invalid size at %zu\n", + __func__, TARFS_BLOCKSIZE * (blknum - 1)); + error = EINVAL; + goto bad; + } + sz = num; + if (tarfs_str2int64(hdrp->mtime, sizeof(hdrp->mtime), &num) != 0) { + TARFS_DPF(ALLOC, "%s: invalid modification time at %zu\n", __func__, TARFS_BLOCKSIZE * (blknum - 1)); error = EINVAL; goto bad; - } else { - sz = num; } - mtime = tarfs_str2int64(hdrp->mtime, sizeof(hdrp->mtime)); + mtime = num; rdev = NODEV; TARFS_DPF(ALLOC, "%s: [%c] %zu @%jd %o %d:%d\n", __func__, hdrp->typeflag[0], sz, (intmax_t)mtime, mode, uid, gid); @@ -598,7 +592,8 @@ again: error = EINVAL; goto bad; } - if (line + len > exthdr + sz) { + if ((uintptr_t)line + len < (uintptr_t)line || + line + len > exthdr + sz) { TARFS_DPF(ALLOC, "%s: exthdr overflow\n", __func__); error = EINVAL; @@ -732,43 +727,82 @@ again: link = hdrp->linkname; linklen = strnlen(link, sizeof(hdrp->linkname)); } - error = tarfs_alloc_node(tmp, namep, sep - namep, VREG, - 0, 0, 0, 0, 0, 0, 0, NULL, 0, parent, &tnp); - if (error != 0) { + if (linklen == 0) { + TARFS_DPF(ALLOC, "%s: %.*s: link without target\n", + __func__, (int)namelen, name); + error = EINVAL; goto bad; } error = tarfs_lookup_path(tmp, link, linklen, NULL, - NULL, NULL, &tnp->other, false); - if (tnp->other == NULL || - tnp->other->type != VREG || - tnp->other->other != NULL) { - TARFS_DPF(ALLOC, "%s: %.*s: dead hard link to %.*s\n", + NULL, NULL, &other, false); + if (error != 0 || other == NULL || + other->type != VREG || other->other != NULL) { + TARFS_DPF(ALLOC, "%s: %.*s: invalid link to %.*s\n", __func__, (int)namelen, name, (int)linklen, link); error = EINVAL; goto bad; } - tnp->other->nlink++; + error = tarfs_alloc_node(tmp, namep, sep - namep, VREG, + 0, 0, 0, 0, 0, 0, 0, NULL, 0, parent, &tnp); + if (error == 0) { + tnp->other = other; + tnp->other->nlink++; + } break; case TAR_TYPE_SYMLINK: if (link == NULL) { link = hdrp->linkname; linklen = strnlen(link, sizeof(hdrp->linkname)); } + if (linklen == 0) { + TARFS_DPF(ALLOC, "%s: %.*s: link without target\n", + __func__, (int)namelen, name); + error = EINVAL; + goto bad; + } error = tarfs_alloc_node(tmp, namep, sep - namep, VLNK, 0, linklen, mtime, uid, gid, mode, flags, link, 0, parent, &tnp); break; case TAR_TYPE_BLOCK: - major = tarfs_str2int64(hdrp->major, sizeof(hdrp->major)); - minor = tarfs_str2int64(hdrp->minor, sizeof(hdrp->minor)); + if (tarfs_str2int64(hdrp->major, sizeof(hdrp->major), &num) != 0 || + num < 0 || num > INT_MAX) { + TARFS_DPF(ALLOC, "%s: %.*s: invalid device major\n", + __func__, (int)namelen, name); + error = EINVAL; + goto bad; + } + major = num; + if (tarfs_str2int64(hdrp->minor, sizeof(hdrp->minor), &num) != 0 || + num < 0 || num > INT_MAX) { + TARFS_DPF(ALLOC, "%s: %.*s: invalid device minor\n", + __func__, (int)namelen, name); + error = EINVAL; + goto bad; + } + minor = num; rdev = makedev(major, minor); error = tarfs_alloc_node(tmp, namep, sep - namep, VBLK, 0, 0, mtime, uid, gid, mode, flags, NULL, rdev, parent, &tnp); break; case TAR_TYPE_CHAR: - major = tarfs_str2int64(hdrp->major, sizeof(hdrp->major)); - minor = tarfs_str2int64(hdrp->minor, sizeof(hdrp->minor)); + if (tarfs_str2int64(hdrp->major, sizeof(hdrp->major), &num) != 0 || + num < 0 || num > INT_MAX) { + TARFS_DPF(ALLOC, "%s: %.*s: invalid device major\n", + __func__, (int)namelen, name); + error = EINVAL; + goto bad; + } + major = num; + if (tarfs_str2int64(hdrp->minor, sizeof(hdrp->minor), &num) != 0 || + num < 0 || num > INT_MAX) { + TARFS_DPF(ALLOC, "%s: %.*s: invalid device minor\n", + __func__, (int)namelen, name); + error = EINVAL; + goto bad; + } + minor = num; rdev = makedev(major, minor); error = tarfs_alloc_node(tmp, namep, sep - namep, VCHR, 0, 0, mtime, uid, gid, mode, flags, NULL, rdev, @@ -856,16 +890,8 @@ tarfs_alloc_mount(struct mount *mp, struct vnode *vp, tmp->vfs = mp; tmp->mtime = mtime; - /* - * XXX The decompression layer passes everything through the - * buffer cache, and the buffer cache wants to know our blocksize, - * but mnt_stat normally isn't populated until after we return, so - * we have to cheat a bit. - */ + /* Initialize I/O layer */ tmp->iosize = 1U << tarfs_ioshift; - mp->mnt_stat.f_iosize = tmp->iosize; - - /* Initialize decompression layer */ error = tarfs_io_init(tmp); if (error != 0) goto bad; diff --git a/tests/sys/fs/tarfs/Makefile b/tests/sys/fs/tarfs/Makefile index b16c6544d33f..72355a08a158 100644 --- a/tests/sys/fs/tarfs/Makefile +++ b/tests/sys/fs/tarfs/Makefile @@ -3,7 +3,7 @@ PACKAGE= tests TESTSDIR= ${TESTSBASE}/sys/fs/tarfs BINDIR= ${TESTSDIR} -PROGS+= mktar +PROGS+= mktar tarsum ATF_TESTS_SH+= tarfs_test diff --git a/tests/sys/fs/tarfs/tarfs_test.sh b/tests/sys/fs/tarfs/tarfs_test.sh index 15354aac501a..2a5dfc434201 100644 --- a/tests/sys/fs/tarfs/tarfs_test.sh +++ b/tests/sys/fs/tarfs/tarfs_test.sh @@ -2,7 +2,7 @@ #- # SPDX-License-Identifier: BSD-2-Clause # -# Copyright (c) 2023 Klara, Inc. +# Copyright (c) 2023-2024 Klara, Inc. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions @@ -43,15 +43,27 @@ mktar() { "$(atf_get_srcdir)"/mktar ${TARFS_USE_GNU_TAR+-g} "$@" } +tarsum() { + "$(atf_get_srcdir)"/tarsum +} + +tarfs_setup() { + kldload -n tarfs || atf_skip "This test requires tarfs and could not load it" + mkdir "${mnt}" +} + +tarfs_cleanup() { + umount -f "${mnt}" 2>/dev/null || true +} + atf_test_case tarfs_basic cleanup tarfs_basic_head() { atf_set "descr" "Basic function test" atf_set "require.user" "root" } tarfs_basic_body() { + tarfs_setup local tarball="${PWD}/tarfs_test.tar.zst" - kldload -n tarfs || atf_skip "This test requires tarfs and could not load it" - mkdir "${mnt}" mktar "${tarball}" atf_check mount -rt tarfs "${tarball}" "${mnt}" atf_check -o match:"^${tarball} on ${mnt} \(tarfs," mount @@ -68,7 +80,7 @@ tarfs_basic_body() { atf_check -o inline:"3,40755\n" stat -f%l,%p "${mnt}" } tarfs_basic_cleanup() { - umount "${mnt}" || true + tarfs_cleanup } atf_test_case tarfs_basic_gnu cleanup @@ -91,8 +103,7 @@ tarfs_notdir_device_head() { atf_set "require.user" "root" } tarfs_notdir_device_body() { - kldload -n tarfs || atf_skip "This test requires tarfs and could not load it" - mkdir "${mnt}" + tarfs_setup atf_check mknod d b 0xdead 0xbeef tar -cf tarfs_notdir.tar d rm d @@ -103,7 +114,7 @@ tarfs_notdir_device_body() { mount -rt tarfs tarfs_notdir.tar "${mnt}" } tarfs_notdir_device_cleanup() { - umount "${mnt}" || true + tarfs_cleanup } atf_test_case tarfs_notdir_device_gnu cleanup @@ -126,8 +137,7 @@ tarfs_notdir_dot_head() { atf_set "require.user" "root" } tarfs_notdir_dot_body() { - kldload -n tarfs || atf_skip "This test requires tarfs and could not load it" - mkdir "${mnt}" + tarfs_setup echo "hello" >d tar -cf tarfs_notdir.tar d rm d @@ -138,7 +148,7 @@ tarfs_notdir_dot_body() { mount -rt tarfs tarfs_notdir.tar "${mnt}" } tarfs_notdir_dot_cleanup() { - umount "${mnt}" || true + tarfs_cleanup } atf_test_case tarfs_notdir_dot_gnu cleanup @@ -161,8 +171,7 @@ tarfs_notdir_dotdot_head() { atf_set "require.user" "root" } tarfs_notdir_dotdot_body() { - kldload -n tarfs || atf_skip "This test requires tarfs and could not load it" - mkdir "${mnt}" + tarfs_setup echo "hello" >d tar -cf tarfs_notdir.tar d rm d @@ -173,7 +182,7 @@ tarfs_notdir_dotdot_body() { mount -rt tarfs tarfs_notdir.tar "${mnt}" } tarfs_notdir_dotdot_cleanup() { - umount "${mnt}" || true + tarfs_cleanup } atf_test_case tarfs_notdir_dotdot_gnu cleanup @@ -196,8 +205,7 @@ tarfs_notdir_file_head() { atf_set "require.user" "root" } tarfs_notdir_file_body() { - kldload -n tarfs || atf_skip "This test requires tarfs and could not load it" - mkdir "${mnt}" + tarfs_setup echo "hello" >d tar -cf tarfs_notdir.tar d rm d @@ -208,7 +216,7 @@ tarfs_notdir_file_body() { mount -rt tarfs tarfs_notdir.tar "${mnt}" } tarfs_notdir_file_cleanup() { - umount "${mnt}" || true + tarfs_cleanup } atf_test_case tarfs_notdir_file_gnu cleanup @@ -225,6 +233,82 @@ tarfs_notdir_file_gnu_cleanup() { tarfs_notdir_file_cleanup } +atf_test_case tarfs_emptylink cleanup +tarfs_emptylink_head() { + atf_set "descr" "Regression test for PR 277360: empty link target" + atf_set "require.user" "root" +} +tarfs_emptylink_body() { + tarfs_setup + touch z + ln -f z hard + ln -fs z soft + tar -cf - z hard soft | dd bs=512 skip=1 | tr z '\0' | \ + tarsum >> tarfs_emptylink.tar + atf_check -s not-exit:0 -e match:"Invalid" \ + mount -rt tarfs tarfs_emptylink.tar "${mnt}" +} +tarfs_emptylink_cleanup() { + tarfs_cleanup +} + +atf_test_case tarfs_linktodir cleanup +tarfs_linktodir_head() { + atf_set "descr" "Regression test for PR 277360: link to directory" + atf_set "require.user" "root" +} +tarfs_linktodir_body() { + tarfs_setup + mkdir d + tar -cf - d | dd bs=512 count=1 > tarfs_linktodir.tar + rmdir d + touch d + ln -f d link + tar -cf - d link | dd bs=512 skip=1 >> tarfs_linktodir.tar + atf_check -s not-exit:0 -e match:"Invalid" \ + mount -rt tarfs tarfs_linktodir.tar "${mnt}" +} +tarfs_linktodir_cleanup() { + tarfs_cleanup +} + +atf_test_case tarfs_linktononexistent cleanup +tarfs_linktononexistent_head() { + atf_set "descr" "Regression test for PR 277360: link to nonexistent target" + atf_set "require.user" "root" +} +tarfs_linktononexistent_body() { + tarfs_setup + touch f + ln -f f link + tar -cf - f link | dd bs=512 skip=1 >> tarfs_linktononexistent.tar + atf_check -s not-exit:0 -e match:"Invalid" \ + mount -rt tarfs tarfs_linktononexistent.tar "${mnt}" +} +tarfs_linktononexistent_cleanup() { + tarfs_cleanup +} + +atf_test_case tarfs_checksum cleanup +tarfs_checksum_head() { + atf_set "descr" "Verify that the checksum covers header padding" + atf_set "require.user" "root" +} +tarfs_checksum_body() { + tarfs_setup + touch f + tar -cf tarfs_checksum.tar f + truncate -s 500 tarfs_checksum.tar + printf "\1\1\1\1\1\1\1\1\1\1\1\1" >> tarfs_checksum.tar + dd if=/dev/zero bs=512 count=2 >> tarfs_checksum.tar + hexdump -C tarfs_checksum.tar + atf_check -s not-exit:0 -e match:"Invalid" \ + mount -rt tarfs tarfs_checksum.tar "${mnt}" +} +tarfs_checksum_cleanup() { + tarfs_cleanup +} + atf_init_test_cases() { atf_add_test_case tarfs_basic atf_add_test_case tarfs_basic_gnu @@ -236,4 +320,8 @@ atf_init_test_cases() { atf_add_test_case tarfs_notdir_dotdot_gnu atf_add_test_case tarfs_notdir_file atf_add_test_case tarfs_notdir_file_gnu + atf_add_test_case tarfs_emptylink + atf_add_test_case tarfs_linktodir + atf_add_test_case tarfs_linktononexistent + atf_add_test_case tarfs_checksum } diff --git a/tests/sys/fs/tarfs/tarsum.c b/tests/sys/fs/tarfs/tarsum.c new file mode 100644 index 000000000000..73ead2230a5e --- /dev/null +++ b/tests/sys/fs/tarfs/tarsum.c @@ -0,0 +1,128 @@ +/*- + * Copyright (c) 2024 Klara, Inc. + * + * SPDX-License-Identifier: BSD-2-Clause + * + * This program reads a tarball from stdin, recalculates the checksums of + * all ustar records within it, and writes the result to stdout. + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +static bool opt_v; + +static int +verbose(const char *fmt, ...) +{ + va_list ap; + int ret; + + if (!opt_v) + return (0); + va_start(ap, fmt); + ret = vfprintf(stderr, fmt, ap); + va_end(ap); + return (ret); +} + +static void +tarsum(FILE *in, const char *ifn, FILE *out, const char *ofn) +{ + union { + uint8_t bytes[512]; + struct { + uint8_t prelude[148]; + char checksum[8]; + uint8_t interlude[101]; + char magic[6]; + char version[2]; + char postlude[]; + }; + } ustar; + unsigned long sum; + off_t offset = 0; + ssize_t ret; + size_t i; + + for (;;) { + if ((ret = fread(&ustar, 1, sizeof(ustar), in)) < 0) + err(1, "%s", ifn); + else if (ret == 0) + break; + else if ((size_t)ret < sizeof(ustar)) + errx(1, "%s: Short read", ifn); + if (strcmp(ustar.magic, "ustar") == 0 && + ustar.version[0] == '0' && ustar.version[1] == '0') { + verbose("header found at offset %#lx\n", offset); + verbose("current checksum %.*s\n", + (int)sizeof(ustar.checksum), ustar.checksum); + memset(ustar.checksum, ' ', sizeof(ustar.checksum)); + for (sum = i = 0; i < sizeof(ustar); i++) + sum += ustar.bytes[i]; + verbose("calculated checksum %#lo\n", sum); + sprintf(ustar.checksum, "%#lo", sum); + } + if ((ret = fwrite(&ustar, 1, sizeof(ustar), out)) < 0) + err(1, "%s", ofn); + else if ((size_t)ret < sizeof(ustar)) + errx(1, "%s: Short write", ofn); + offset += sizeof(ustar); + } + verbose("%lu bytes processed\n", offset); +} + +static void +usage(void) +{ + fprintf(stderr, "usage: tarsum [-v] [-o output] [input]\n"); + exit(1); +} + +int +main(int argc, char *argv[]) +{ + const char *ifn, *ofn = NULL; + FILE *in, *out; + int opt; + + while ((opt = getopt(argc, argv, "o:v")) != -1) { + switch (opt) { + case 'o': + ofn = optarg; + break; + case 'v': + opt_v = true; + break; + default: + usage(); + } + } + argc -= optind; + argv += optind; + if (argc == 0 || strcmp(*argv, "-") == 0) { + ifn = "stdin"; + in = stdin; + } else if (argc == 1) { + ifn = *argv; + if ((in = fopen(ifn, "rb")) == NULL) + err(1, "%s", ifn); + } else { + usage(); + } + if (ofn == NULL || strcmp(ofn, "-") == 0) { + ofn = "stdout"; + out = stdout; + } else { + if ((out = fopen(ofn, "wb")) == NULL) + err(1, "%s", ofn); + } + tarsum(in, ifn, out, ofn); + return (0); +} From nobody Mon Mar 11 13:44:59 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtdLh1Jj6z5D1mx for ; Mon, 11 Mar 2024 13:45: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 4TtdLg5m3mz4LnN; Mon, 11 Mar 2024 13:44:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710164699; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CoTJEQnmy9HY31hPQzeaZBOZVm8ChXWou+s8pp2XPAc=; b=VUQrr/5AQt3B0iV/1eVWuzolB5PKr2ApSWkVWyj74DEh7gUWvn0o1EGWQ3ykEt9c3bw+wd mXlvUeEzZ0YXrArAlpdn8VQEDSJYhlAbjlnznzAbW7airdqD9Qdu2ePVaDj+51O/WJM5E1 hPI3FsPGMv4Qz+Xe+0GPK/4GcLWb7y274Od9kVqvQtpuu9q/c5Y5sJqxnwscgFWvtbUTDV scWapJj63WOt/45sacLOJ/XtY1hf+oOIttxArbVbANRGfgPxQ/E8PqROw3P6GH0FGOB8P3 j43GC6Mt0ZXtPngAouhhURMNkrbeBKTfdUT8h6DOmCUi3SQdGj8GcgypppPmtQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710164699; a=rsa-sha256; cv=none; b=ll0ZryefN7JfBd653gji6l5C/1wNhqS4VJ12lRri3GKISmLQFCvbGF/HOW3hQQq0V4W65E /dHksOfMIZo/SxrB0KeQ1wHd5octq9JZj6PnTM0BeuKFx5Qu/Q152vftYXZIaDesNZarXK c3IgfJaoh0XQA+adgzCxAliiEdMaT9bWgl1cfRT+evvz0GqMD0vgjhrV5m+8bLYoUn35ZD NnKbBXEuCRDsQHjLOwxrEfyAT7+Oz7g5xDOEbNfpvRkya2xRx1oaDMNnnYjpz9ewCwu/Yr mTbbtTbTSdkuQb3Oqh+4Rc6RWyQcD/NsdfdiiSqeouc8fQWn8eCf1q9ZWPrVDA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710164699; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CoTJEQnmy9HY31hPQzeaZBOZVm8ChXWou+s8pp2XPAc=; b=qXH+IOfW1mmzT/GRVtfdMyALPNLz6g/n27kAYTC2kOL2w0IrOdYffDZmj6aopagM4oDYAA P9ESUSQqJKbKyliMF+gPXg57YWd13O/xEIGtoj9+yzqygJ+gUffw2sEzQMd3/FyqoiLPwL Q0BAtHok306e4ES3tu+kLQEZy3t7fiTo0sJJMJsGrDZ1C8RtiyGWaTmdKC6htd139xl9BY YAtim2/wIzmVS2OVWMJg10EWfAu+6sj6jLY26Zi4mgyMaTpAuYg6DBJactENMQQ57X/nwv AQCF1PS6Y4p0Ystf1Wt/y6OxKPNs7PvEz/VKePiwd2E5gUjgTomAjfdNazv5vg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtdLg5CkDzXwv; Mon, 11 Mar 2024 13:44: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 42BDixVk046449; Mon, 11 Mar 2024 13:44:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BDixu8046448; Mon, 11 Mar 2024 13:44:59 GMT (envelope-from git) Date: Mon, 11 Mar 2024 13:44:59 GMT Message-Id: <202403111344.42BDixu8046448@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 1a21ce9285f4 - Create tag vendor/got/diff/2023-09-15 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/tags/vendor/got/diff/2023-09-15 X-Git-Reftype: annotated tag X-Git-Commit: 1a21ce9285f48723462fa5e434eb85ba85e56fed Auto-Submitted: auto-generated The annotated tag vendor/got/diff/2023-09-15 has been created by des: URL: https://cgit.FreeBSD.org/src/tag/?h=vendor/got/diff/2023-09-15 tag vendor/got/diff/2023-09-15 Tagger: Dag-Erling Smørgrav TaggerDate: 2024-03-07 11:32:36 +0000 Import GoT diff 2023-09-15 commit 9eb461aa4b61ab47855b2cee9e5b626a76888b5e Author: Dag-Erling Smørgrav AuthorDate: 2024-03-07 11:32:03 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-03-07 11:32:03 +0000 Vendor import of diff from OpenBSD's Game of Trees Repository: ssh://anonymous@got.gameoftrees.org/diff.git Commit hash: b5a9c15f4d68c06ec3bf839529b3ed2def0a6af6 Commit date: 2023-09-15 From nobody Mon Mar 11 13:44:59 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtdLh1Jmqz5D1wB for ; Mon, 11 Mar 2024 13:45: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 4TtdLg5cH7z4Ly0; Mon, 11 Mar 2024 13:44:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710164699; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mY6dasUFAfu3S45Fh2H46WwH7aCNwB59qZ+c1fqwOwc=; b=Pq8INcUQQabk/NYCVCn89PTMW84q2LLCVGlYAlSJy5qzweV/UNz2b0HWVDP4PGCU9Vblkr COuCD36Z897vjS0SSIztoMN8vSBUjBeAzlkSJL7CvTlMe1tVdiw4Qoj/bM6lMVkAFNaY2a sA1h1EBnC+HMKfOzxy+hXROvXynAgkggaKJBtgXevC6udWQwsYxnj13Uc/ZucnsFxLvAZG o2iXJMdhNRomHupBUdhrTXEcd/86DBtm1KO0f8MYPeUZRhsFgM5ZTlB0jpzQZenreJB2UB oQ9ce0q57dTkcUOqJOP8DdmFbx7BXekBDRDTuXAEkK3YeVGzTKAq/Ay+1vFsiA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710164699; a=rsa-sha256; cv=none; b=csdJnU61V0U9YnBUhDjV4ZVhWGo/uuwnXEVK9xGco/L2Dzw8l1MbtVA3AU8aNXRuZHekjT YmW99d1ncMUE9FpDyWMAlRxkGAPgW+xsX51BzKRi8VyjofFNePdVDGf8gmHyjGcbvYKtBK CmmnGAHJkFx4n297CemIs2rsY+FZQDj6g9WAugPCX0mXFQwqZptZZ7sBbEiR4nEBRcJN3p Spzf6jHBhGWYoizXrDp3mxip0PpN8ekIjQ2t2XJBBEiW+HWyUsgQezWlG3D8V36f9eo3ho rbuRGh0F6/Sa0W/hJxq0RJi5x1jtgyI2XakE8eYEj2Hxn8UqMw1OolImPicXtw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710164699; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mY6dasUFAfu3S45Fh2H46WwH7aCNwB59qZ+c1fqwOwc=; b=sP8urR7r4U+mXCXOHfu49z8UuonUMX0/iZBRjDrS8Kgk1eSnz4ITgQQCww+UBPxSveKsRg wUxVrMBajS+QgKaCapJUn7AclZH7AX/0ndeI7rxkuAUlgmKpxSGcDfbolqvNZs5XpTiXSQ cjS9XPJranZtItSJ2pZTSeUdpck2PNOcE4u+ohUXPyMFu9HKWj0lSS3siQFQ2CyhBbQ2UE RBW8PoprpHl3kB0j3YR/dv1T24t1M/9mJVINBAs11k3yu1XRV7EYm+MZ/p0TCnYLxnwHQp pPobcZmtp99mK3xQjfMRAGmcy2HLzde0SyY7BnnHJOjnc5Sz5vnRcXN9MtavxA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtdLg4nQ8zY1s; Mon, 11 Mar 2024 13:44: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 42BDixnE046417; Mon, 11 Mar 2024 13:44:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BDixW1046416; Mon, 11 Mar 2024 13:44:59 GMT (envelope-from git) Date: Mon, 11 Mar 2024 13:44:59 GMT Message-Id: <202403111344.42BDixW1046416@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 9eb461aa4b61 - vendor/got/diff - vendor branch created List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/vendor/got/diff X-Git-Reftype: branch X-Git-Commit: 9eb461aa4b61ab47855b2cee9e5b626a76888b5e X-Git-Oldrev: 0000000000000000000000000000000000000000 X-Git-Newrev: 9eb461aa4b61ab47855b2cee9e5b626a76888b5e Auto-Submitted: auto-generated The branch vendor/got/diff has been created by des: URL: https://cgit.FreeBSD.org/src/log/?id=9eb461aa4b61 9eb461aa4b61 Vendor import of diff from OpenBSD's Game of Trees From nobody Mon Mar 11 13:48:37 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtdQs6Pjhz5D1vR; Mon, 11 Mar 2024 13:48:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TtdQs6BL5z4MGT; Mon, 11 Mar 2024 13:48:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710164917; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UnYYAZfUgEPHt/LTgi/sERBeTdPOGaikvye0dLlkJ3U=; b=xsyKH9rjUijdQOr6eMSyJcwaw0mUFdKNJhkCPmzP4D0xa9bIhei+GqWFsZUQTEOTimiiB0 aWmljaeBSD75gDPIXPud5BAI0VQES4/COgSc/UxWdMbXZe+HteySdDkCgcq7DE1jLibtUV hVoV2CZkh9KTSFEjAMgHYudSAZytKfWaQXTWcmjwOUsn7pbDMjP1VNj5Eufys3W4vfyALa QxL6dWs7dvweqGpYHTOz6bwiOMCu93ZuDu8ZJJ4QanrUYgC1J1cQ6vmYmdLch0k96eRIL6 R5PnLOLV75W6eMC67sqtbKO3I5SaBqoxIlgQbeTMEdqSyaz2JSnXgyIj4B3ZAA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710164917; a=rsa-sha256; cv=none; b=xMEz1aD85sFjd+4l+49FLDAKOAtnzaWXfzvT1rHnO6BCeZj9C+oerAI3muI1oS89giBHQ/ GR95p50/Ka+6QqMSBVhke4MlT3v0hM6ZzCkpKDbJGCFVlj1UPjTvAy5d1Hu9TqvoVbsK0r eOOgWs/cpctYDKEziGq8yycNYphnGx9vdMtpBhAJc8tVYwPjwtR0b7y4jMktidERLAdkpz AO6G+dZVbOzjux/5O0vliRG8UnMJN2qnj2X52mQZlVtyYQR9A5lTKq5NyFBAq3rQlR0UXm FAombimyajEpxwkorUNNEoLhTUrchGZmv27r9baSZmvGVlTD7a5jBi6tQXJsvw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710164917; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UnYYAZfUgEPHt/LTgi/sERBeTdPOGaikvye0dLlkJ3U=; b=CLGL3X3pcpxlFvJkMjivBHETEDoITmwtgpJmKzhyFFemBtB9oig/9LIjehxf/d/ZRPWZAD 4plfT8hNzDsC/hZLSDMAWx7yjdDWVlEjw4TVeYcxFeznCDGJqMVyqodC3sQpETy8eOJb57 m4GiGM+t4TTDUKY/GCRgbBr0F+rnHKtd+E7Q/xDVtQjwrK5CBPburkizqFQSW9fzi5grf8 Ls3UWBwkqVl+CUGotBDKiUTdLJ0gc5FnuwiqueRy0dYnKYe6arNOs08SXQR1C24SbpAplq CM2XI0o9053YUPNvPMOeUn/jiPb22EXBaN4eYD60+yp9vPezmZipcaBNwlG58g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtdQs5gz1zXVX; Mon, 11 Mar 2024 13:48:37 +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 42BDmbcp047103; Mon, 11 Mar 2024 13:48:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BDmb3f047100; Mon, 11 Mar 2024 13:48:37 GMT (envelope-from git) Date: Mon, 11 Mar 2024 13:48:37 GMT Message-Id: <202403111348.42BDmb3f047100@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 59c8e88e7263 - main - Add 'contrib/libdiff/' from commit '9eb461aa4b61ab47855b2cee9e5b626a76888b5e' List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 59c8e88e72633afbc47a4ace0d2170d00d51f7dc Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=59c8e88e72633afbc47a4ace0d2170d00d51f7dc commit 59c8e88e72633afbc47a4ace0d2170d00d51f7dc Merge: f6d489f402c3 9eb461aa4b61 Author: Dag-Erling Smørgrav AuthorDate: 2024-03-11 13:44:36 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-03-11 13:48:08 +0000 Add 'contrib/libdiff/' from commit '9eb461aa4b61ab47855b2cee9e5b626a76888b5e' git-subtree-dir: contrib/libdiff git-subtree-mainline: f6d489f402c320f1a6eaa473491a0b8c3878113e git-subtree-split: 9eb461aa4b61ab47855b2cee9e5b626a76888b5e Reviewed by: imp Sponsored by: Klara, Inc. contrib/libdiff/.gitignore | 13 + contrib/libdiff/LICENCE | 13 + contrib/libdiff/README | 26 + contrib/libdiff/compat/getprogname_linux.c | 8 + contrib/libdiff/compat/include/stdlib.h | 20 + contrib/libdiff/compat/include/string.h | 16 + contrib/libdiff/compat/include/sys/types.h | 15 + contrib/libdiff/compat/merge.c | 338 + contrib/libdiff/compat/reallocarray.c | 38 + contrib/libdiff/compat/recallocarray.c | 80 + contrib/libdiff/compat/strlcat.c | 55 + contrib/libdiff/compat/strlcpy.c | 50 + contrib/libdiff/diff-version.mk | 8 + contrib/libdiff/diff/GNUmakefile | 19 + contrib/libdiff/diff/Makefile | 41 + contrib/libdiff/diff/diff.c | 280 + contrib/libdiff/include/arraylist.h | 121 + contrib/libdiff/include/diff_main.h | 264 + contrib/libdiff/include/diff_output.h | 112 + contrib/libdiff/lib/GNUmakefile | 32 + contrib/libdiff/lib/diff_atomize_text.c | 197 + contrib/libdiff/lib/diff_debug.h | 226 + contrib/libdiff/lib/diff_internal.h | 157 + contrib/libdiff/lib/diff_main.c | 663 + contrib/libdiff/lib/diff_myers.c | 1425 +++ contrib/libdiff/lib/diff_output.c | 371 + contrib/libdiff/lib/diff_output_edscript.c | 190 + contrib/libdiff/lib/diff_output_plain.c | 246 + contrib/libdiff/lib/diff_output_unidiff.c | 602 + contrib/libdiff/lib/diff_patience.c | 647 + contrib/libdiff/man/diff.1 | 47 + contrib/libdiff/test/GNUmakefile | 11 + contrib/libdiff/test/Makefile | 12 + contrib/libdiff/test/README | 7 + contrib/libdiff/test/arraylist_test.c | 58 + contrib/libdiff/test/arraylist_test/GNUmakefile | 20 + contrib/libdiff/test/arraylist_test/Makefile | 11 + contrib/libdiff/test/expect.arraylist_test | 76 + contrib/libdiff/test/expect.results_test | 14 + contrib/libdiff/test/expect001.diff | 12 + contrib/libdiff/test/expect002.diff | 16 + contrib/libdiff/test/expect003.diff | 10 + contrib/libdiff/test/expect004.diff | 24 + contrib/libdiff/test/expect005.diff | 12 + contrib/libdiff/test/expect006.diff | 24 + contrib/libdiff/test/expect007.diff | 5 + contrib/libdiff/test/expect008.diff | 9 + contrib/libdiff/test/expect009.diff | 13 + contrib/libdiff/test/expect010.diff | 19 + contrib/libdiff/test/expect011.diff | 19 + contrib/libdiff/test/expect012.diff | 21 + contrib/libdiff/test/expect013.diff | 10 + contrib/libdiff/test/expect014.diff | 4 + contrib/libdiff/test/expect015.diff | 4 + contrib/libdiff/test/expect016.diff | 30 + contrib/libdiff/test/expect018.diff | 16 + contrib/libdiff/test/expect019.diff | 204 + contrib/libdiff/test/expect021.diff | 868 ++ contrib/libdiff/test/expect101.diff | 12 + contrib/libdiff/test/expect102.diff | 16 + contrib/libdiff/test/expect103.diff | 10 + contrib/libdiff/test/expect104.diff | 24 + contrib/libdiff/test/expect105.diff | 12 + contrib/libdiff/test/expect106.diff | 24 + contrib/libdiff/test/expect107.diff | 5 + contrib/libdiff/test/expect108.diff | 9 + contrib/libdiff/test/expect109.diff | 13 + contrib/libdiff/test/expect110.diff | 19 + contrib/libdiff/test/expect111.diff | 19 + contrib/libdiff/test/expect112.diff | 21 + contrib/libdiff/test/expect113.diff | 10 + contrib/libdiff/test/expect114.diff | 4 + contrib/libdiff/test/expect115.diff | 4 + contrib/libdiff/test/expect116.diff | 30 + contrib/libdiff/test/expect117.diff | 64 + contrib/libdiff/test/expect123.diff | 1 + contrib/libdiff/test/expect124.diff | 9 + contrib/libdiff/test/expect125.diff | 12 + contrib/libdiff/test/expect126.diff | 28 + contrib/libdiff/test/results_test.c | 178 + contrib/libdiff/test/results_test/GNUmakefile | 20 + contrib/libdiff/test/results_test/Makefile | 11 + contrib/libdiff/test/test001.left.txt | 7 + contrib/libdiff/test/test001.right.txt | 6 + contrib/libdiff/test/test002.left.txt | 10 + contrib/libdiff/test/test002.right.txt | 9 + contrib/libdiff/test/test003.left.txt | 5 + contrib/libdiff/test/test003.right.txt | 4 + contrib/libdiff/test/test004.left.txt | 14 + contrib/libdiff/test/test004.right.txt | 14 + contrib/libdiff/test/test005.left.txt | 7 + contrib/libdiff/test/test005.right.txt | 7 + contrib/libdiff/test/test006.left.txt | 25 + contrib/libdiff/test/test006.right.txt | 25 + contrib/libdiff/test/test007.left.txt | 1 + contrib/libdiff/test/test007.right.txt | 1 + contrib/libdiff/test/test008.left.txt | 1 + contrib/libdiff/test/test008.right.txt | 6 + contrib/libdiff/test/test009.left.txt | 3 + contrib/libdiff/test/test009.right.txt | 10 + contrib/libdiff/test/test010.left.txt | 14197 +++++++++++++++++++++ contrib/libdiff/test/test010.right.txt | 14201 ++++++++++++++++++++++ contrib/libdiff/test/test011.left.txt | 393 + contrib/libdiff/test/test011.right.txt | 397 + contrib/libdiff/test/test012.left.txt | 23 + contrib/libdiff/test/test012.right.txt | 29 + contrib/libdiff/test/test013.left-w.txt | 7 + contrib/libdiff/test/test013.right-w.txt | 7 + contrib/libdiff/test/test014.left.txt | 0 contrib/libdiff/test/test014.right.txt | 1 + contrib/libdiff/test/test015.left.txt | 1 + contrib/libdiff/test/test015.right.txt | 0 contrib/libdiff/test/test016.left.txt | 298 + contrib/libdiff/test/test016.right.txt | 301 + contrib/libdiff/test/test017.left-U0.txt | 15 + contrib/libdiff/test/test017.right-U0.txt | 19 + contrib/libdiff/test/test018.left-T.txt | 7 + contrib/libdiff/test/test018.right-T.txt | 6 + contrib/libdiff/test/test019.left.txt | 845 ++ contrib/libdiff/test/test019.right.txt | 904 ++ contrib/libdiff/test/test020.left.txt | 919 ++ contrib/libdiff/test/test020.right.txt | 935 ++ contrib/libdiff/test/test021.left.txt | 1367 +++ contrib/libdiff/test/test021.right.txt | 1251 ++ contrib/libdiff/test/test101.left-P.txt | 7 + contrib/libdiff/test/test101.right-P.txt | 6 + contrib/libdiff/test/test102.left-P.txt | 10 + contrib/libdiff/test/test102.right-P.txt | 9 + contrib/libdiff/test/test103.left-P.txt | 5 + contrib/libdiff/test/test103.right-P.txt | 4 + contrib/libdiff/test/test104.left-P.txt | 14 + contrib/libdiff/test/test104.right-P.txt | 14 + contrib/libdiff/test/test105.left-P.txt | 7 + contrib/libdiff/test/test105.right-P.txt | 7 + contrib/libdiff/test/test106.left-P.txt | 25 + contrib/libdiff/test/test106.right-P.txt | 25 + contrib/libdiff/test/test107.left-P.txt | 1 + contrib/libdiff/test/test107.right-P.txt | 1 + contrib/libdiff/test/test108.left-P.txt | 1 + contrib/libdiff/test/test108.right-P.txt | 6 + contrib/libdiff/test/test109.left-P.txt | 3 + contrib/libdiff/test/test109.right-P.txt | 10 + contrib/libdiff/test/test110.left-P.txt | 14197 +++++++++++++++++++++ contrib/libdiff/test/test110.right-P.txt | 14201 ++++++++++++++++++++++ contrib/libdiff/test/test111.left-P.txt | 393 + contrib/libdiff/test/test111.right-P.txt | 397 + contrib/libdiff/test/test112.left-P.txt | 23 + contrib/libdiff/test/test112.right-P.txt | 29 + contrib/libdiff/test/test113.left-Pw.txt | 7 + contrib/libdiff/test/test113.right-Pw.txt | 7 + contrib/libdiff/test/test114.left-P.txt | 0 contrib/libdiff/test/test114.right-P.txt | 1 + contrib/libdiff/test/test115.left-P.txt | 1 + contrib/libdiff/test/test115.right-P.txt | 0 contrib/libdiff/test/test116.left-P.txt | 298 + contrib/libdiff/test/test116.right-P.txt | 301 + contrib/libdiff/test/test117.left-P.txt | 1237 ++ contrib/libdiff/test/test117.right-P.txt | 1251 ++ contrib/libdiff/test/test122.left-P.txt | 1338 ++ contrib/libdiff/test/test122.right-P.txt | 1251 ++ contrib/libdiff/test/test123.left-e.txt | 1 + contrib/libdiff/test/test123.right-e.txt | 2 + contrib/libdiff/test/test124.left-p.txt | 15 + contrib/libdiff/test/test124.right-p.txt | 15 + contrib/libdiff/test/test125.left.txt | 7 + contrib/libdiff/test/test125.right.txt | 7 + contrib/libdiff/test/test126.left.txt | 171 + contrib/libdiff/test/test126.right.txt | 170 + contrib/libdiff/test/verify_all.sh | 115 + 169 files changed, 80272 insertions(+) diff --cc contrib/libdiff/.gitignore index 000000000000,000000000000..4ecef24b8c23 new file mode 100644 --- /dev/null +++ b/contrib/libdiff/.gitignore @@@ -1,0 -1,0 +1,13 @@@ ++.*.sw? ++diff/diff ++*.o ++*.d ++*.a ++**/*.o ++**/*.d ++***/.a ++tags ++test/got*.diff ++test/verify.* ++test/arraylist_test/arraylist_test ++test/results_test/results_test diff --cc contrib/libdiff/LICENCE index 000000000000,d908088b90fc..d908088b90fc mode 000000,100644..100644 --- a/contrib/libdiff/LICENCE +++ b/contrib/libdiff/LICENCE diff --cc contrib/libdiff/README index 000000000000,4e99e6e3c2e2..4e99e6e3c2e2 mode 000000,100644..100644 --- a/contrib/libdiff/README +++ b/contrib/libdiff/README diff --cc contrib/libdiff/compat/getprogname_linux.c index 000000000000,0957c6bc106b..0957c6bc106b mode 000000,100644..100644 --- a/contrib/libdiff/compat/getprogname_linux.c +++ b/contrib/libdiff/compat/getprogname_linux.c diff --cc contrib/libdiff/compat/include/stdlib.h index 000000000000,75b18881a7b7..75b18881a7b7 mode 000000,100644..100644 --- a/contrib/libdiff/compat/include/stdlib.h +++ b/contrib/libdiff/compat/include/stdlib.h diff --cc contrib/libdiff/compat/include/string.h index 000000000000,75190903aba8..75190903aba8 mode 000000,100644..100644 --- a/contrib/libdiff/compat/include/string.h +++ b/contrib/libdiff/compat/include/string.h diff --cc contrib/libdiff/compat/include/sys/types.h index 000000000000,f580c7c593a8..f580c7c593a8 mode 000000,100644..100644 --- a/contrib/libdiff/compat/include/sys/types.h +++ b/contrib/libdiff/compat/include/sys/types.h diff --cc contrib/libdiff/compat/merge.c index 000000000000,a5b0d88aa337..a5b0d88aa337 mode 000000,100644..100644 --- a/contrib/libdiff/compat/merge.c +++ b/contrib/libdiff/compat/merge.c diff --cc contrib/libdiff/compat/reallocarray.c index 000000000000,43f0b69158ac..43f0b69158ac mode 000000,100644..100644 --- a/contrib/libdiff/compat/reallocarray.c +++ b/contrib/libdiff/compat/reallocarray.c diff --cc contrib/libdiff/compat/recallocarray.c index 000000000000,d93abd2da5fd..d93abd2da5fd mode 000000,100644..100644 --- a/contrib/libdiff/compat/recallocarray.c +++ b/contrib/libdiff/compat/recallocarray.c diff --cc contrib/libdiff/compat/strlcat.c index 000000000000,c94e90deeeeb..c94e90deeeeb mode 000000,100644..100644 --- a/contrib/libdiff/compat/strlcat.c +++ b/contrib/libdiff/compat/strlcat.c diff --cc contrib/libdiff/compat/strlcpy.c index 000000000000,2fa498c3978b..2fa498c3978b mode 000000,100644..100644 --- a/contrib/libdiff/compat/strlcpy.c +++ b/contrib/libdiff/compat/strlcpy.c diff --cc contrib/libdiff/diff-version.mk index 000000000000,1d14cd7ecfcc..1d14cd7ecfcc mode 000000,100644..100644 --- a/contrib/libdiff/diff-version.mk +++ b/contrib/libdiff/diff-version.mk diff --cc contrib/libdiff/diff/GNUmakefile index 000000000000,63d0b8795665..63d0b8795665 mode 000000,100644..100644 --- a/contrib/libdiff/diff/GNUmakefile +++ b/contrib/libdiff/diff/GNUmakefile diff --cc contrib/libdiff/diff/Makefile index 000000000000,4a7f3a9755f5..4a7f3a9755f5 mode 000000,100644..100644 --- a/contrib/libdiff/diff/Makefile +++ b/contrib/libdiff/diff/Makefile diff --cc contrib/libdiff/diff/diff.c index 000000000000,eded4163df8d..eded4163df8d mode 000000,100644..100644 --- a/contrib/libdiff/diff/diff.c +++ b/contrib/libdiff/diff/diff.c diff --cc contrib/libdiff/include/arraylist.h index 000000000000,453b71cedd7f..453b71cedd7f mode 000000,100644..100644 --- a/contrib/libdiff/include/arraylist.h +++ b/contrib/libdiff/include/arraylist.h diff --cc contrib/libdiff/include/diff_main.h index 000000000000,04a6c6e748c9..04a6c6e748c9 mode 000000,100644..100644 --- a/contrib/libdiff/include/diff_main.h +++ b/contrib/libdiff/include/diff_main.h diff --cc contrib/libdiff/include/diff_output.h index 000000000000,d2568c5a2b50..d2568c5a2b50 mode 000000,100644..100644 --- a/contrib/libdiff/include/diff_output.h +++ b/contrib/libdiff/include/diff_output.h diff --cc contrib/libdiff/lib/GNUmakefile index 000000000000,cb35f757e09d..cb35f757e09d mode 000000,100644..100644 --- a/contrib/libdiff/lib/GNUmakefile +++ b/contrib/libdiff/lib/GNUmakefile diff --cc contrib/libdiff/lib/diff_atomize_text.c index 000000000000,32023105af94..32023105af94 mode 000000,100644..100644 --- a/contrib/libdiff/lib/diff_atomize_text.c +++ b/contrib/libdiff/lib/diff_atomize_text.c diff --cc contrib/libdiff/lib/diff_debug.h index 000000000000,4b7ec8090638..4b7ec8090638 mode 000000,100644..100644 --- a/contrib/libdiff/lib/diff_debug.h +++ b/contrib/libdiff/lib/diff_debug.h diff --cc contrib/libdiff/lib/diff_internal.h index 000000000000,46bbadf3cb64..46bbadf3cb64 mode 000000,100644..100644 --- a/contrib/libdiff/lib/diff_internal.h +++ b/contrib/libdiff/lib/diff_internal.h diff --cc contrib/libdiff/lib/diff_main.c index 000000000000,e64b1320e553..e64b1320e553 mode 000000,100644..100644 --- a/contrib/libdiff/lib/diff_main.c +++ b/contrib/libdiff/lib/diff_main.c diff --cc contrib/libdiff/lib/diff_myers.c index 000000000000,c886d1a28586..c886d1a28586 mode 000000,100644..100644 --- a/contrib/libdiff/lib/diff_myers.c +++ b/contrib/libdiff/lib/diff_myers.c diff --cc contrib/libdiff/lib/diff_output.c index 000000000000,7ac63bb6c433..7ac63bb6c433 mode 000000,100644..100644 --- a/contrib/libdiff/lib/diff_output.c +++ b/contrib/libdiff/lib/diff_output.c diff --cc contrib/libdiff/lib/diff_output_edscript.c index 000000000000,42d4d5b39ef5..42d4d5b39ef5 mode 000000,100644..100644 --- a/contrib/libdiff/lib/diff_output_edscript.c +++ b/contrib/libdiff/lib/diff_output_edscript.c diff --cc contrib/libdiff/lib/diff_output_plain.c index 000000000000,7b0082bd1b84..7b0082bd1b84 mode 000000,100644..100644 --- a/contrib/libdiff/lib/diff_output_plain.c +++ b/contrib/libdiff/lib/diff_output_plain.c diff --cc contrib/libdiff/lib/diff_output_unidiff.c index 000000000000,d480a022a9a7..d480a022a9a7 mode 000000,100644..100644 --- a/contrib/libdiff/lib/diff_output_unidiff.c +++ b/contrib/libdiff/lib/diff_output_unidiff.c diff --cc contrib/libdiff/lib/diff_patience.c index 000000000000,a06df2c36c9d..a06df2c36c9d mode 000000,100644..100644 --- a/contrib/libdiff/lib/diff_patience.c +++ b/contrib/libdiff/lib/diff_patience.c diff --cc contrib/libdiff/man/diff.1 index 000000000000,b4a9acb0cdc7..b4a9acb0cdc7 mode 000000,100644..100644 --- a/contrib/libdiff/man/diff.1 +++ b/contrib/libdiff/man/diff.1 diff --cc contrib/libdiff/test/GNUmakefile index 000000000000,c88d884448ed..c88d884448ed mode 000000,100644..100644 --- a/contrib/libdiff/test/GNUmakefile +++ b/contrib/libdiff/test/GNUmakefile diff --cc contrib/libdiff/test/Makefile index 000000000000,f42511784ccd..f42511784ccd mode 000000,100644..100644 --- a/contrib/libdiff/test/Makefile +++ b/contrib/libdiff/test/Makefile diff --cc contrib/libdiff/test/README index 000000000000,60764f106146..60764f106146 mode 000000,100644..100644 --- a/contrib/libdiff/test/README +++ b/contrib/libdiff/test/README diff --cc contrib/libdiff/test/arraylist_test.c index 000000000000,da5542e8d629..da5542e8d629 mode 000000,100644..100644 --- a/contrib/libdiff/test/arraylist_test.c +++ b/contrib/libdiff/test/arraylist_test.c diff --cc contrib/libdiff/test/arraylist_test/GNUmakefile index 000000000000,9f781ee997b3..9f781ee997b3 mode 000000,100644..100644 --- a/contrib/libdiff/test/arraylist_test/GNUmakefile +++ b/contrib/libdiff/test/arraylist_test/GNUmakefile diff --cc contrib/libdiff/test/arraylist_test/Makefile index 000000000000,f088f4767c92..f088f4767c92 mode 000000,100644..100644 --- a/contrib/libdiff/test/arraylist_test/Makefile +++ b/contrib/libdiff/test/arraylist_test/Makefile diff --cc contrib/libdiff/test/expect.arraylist_test index 000000000000,6b255ecbe78e..6b255ecbe78e mode 000000,100644..100644 --- a/contrib/libdiff/test/expect.arraylist_test +++ b/contrib/libdiff/test/expect.arraylist_test diff --cc contrib/libdiff/test/expect.results_test index 000000000000,93755ac42bd2..93755ac42bd2 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect.results_test +++ b/contrib/libdiff/test/expect.results_test diff --cc contrib/libdiff/test/expect001.diff index 000000000000,7dd803c57dde..7dd803c57dde mode 000000,100644..100644 --- a/contrib/libdiff/test/expect001.diff +++ b/contrib/libdiff/test/expect001.diff diff --cc contrib/libdiff/test/expect002.diff index 000000000000,d6c64921df76..d6c64921df76 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect002.diff +++ b/contrib/libdiff/test/expect002.diff diff --cc contrib/libdiff/test/expect003.diff index 000000000000,1694445da790..1694445da790 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect003.diff +++ b/contrib/libdiff/test/expect003.diff diff --cc contrib/libdiff/test/expect004.diff index 000000000000,061a76ad650b..061a76ad650b mode 000000,100644..100644 --- a/contrib/libdiff/test/expect004.diff +++ b/contrib/libdiff/test/expect004.diff diff --cc contrib/libdiff/test/expect005.diff index 000000000000,9ce014a67eb6..9ce014a67eb6 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect005.diff +++ b/contrib/libdiff/test/expect005.diff diff --cc contrib/libdiff/test/expect006.diff index 000000000000,70233e0337e1..70233e0337e1 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect006.diff +++ b/contrib/libdiff/test/expect006.diff diff --cc contrib/libdiff/test/expect007.diff index 000000000000,a6a06181d840..a6a06181d840 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect007.diff +++ b/contrib/libdiff/test/expect007.diff diff --cc contrib/libdiff/test/expect008.diff index 000000000000,c4dc6791528b..c4dc6791528b mode 000000,100644..100644 --- a/contrib/libdiff/test/expect008.diff +++ b/contrib/libdiff/test/expect008.diff diff --cc contrib/libdiff/test/expect009.diff index 000000000000,c2dae93ed893..c2dae93ed893 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect009.diff +++ b/contrib/libdiff/test/expect009.diff diff --cc contrib/libdiff/test/expect010.diff index 000000000000,868a057dec4d..868a057dec4d mode 000000,100644..100644 --- a/contrib/libdiff/test/expect010.diff +++ b/contrib/libdiff/test/expect010.diff diff --cc contrib/libdiff/test/expect011.diff index 000000000000,7ad8f311b3e6..7ad8f311b3e6 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect011.diff +++ b/contrib/libdiff/test/expect011.diff diff --cc contrib/libdiff/test/expect012.diff index 000000000000,e9a704b8c534..e9a704b8c534 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect012.diff +++ b/contrib/libdiff/test/expect012.diff diff --cc contrib/libdiff/test/expect013.diff index 000000000000,139970c971d6..139970c971d6 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect013.diff +++ b/contrib/libdiff/test/expect013.diff diff --cc contrib/libdiff/test/expect014.diff index 000000000000,43af317b26f1..43af317b26f1 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect014.diff +++ b/contrib/libdiff/test/expect014.diff diff --cc contrib/libdiff/test/expect015.diff index 000000000000,fd5d0482ba38..fd5d0482ba38 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect015.diff +++ b/contrib/libdiff/test/expect015.diff diff --cc contrib/libdiff/test/expect016.diff index 000000000000,17299d578095..17299d578095 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect016.diff +++ b/contrib/libdiff/test/expect016.diff diff --cc contrib/libdiff/test/expect018.diff index 000000000000,c948e6210e5c..c948e6210e5c mode 000000,100644..100644 --- a/contrib/libdiff/test/expect018.diff +++ b/contrib/libdiff/test/expect018.diff diff --cc contrib/libdiff/test/expect019.diff index 000000000000,ee242a032fca..ee242a032fca mode 000000,100644..100644 --- a/contrib/libdiff/test/expect019.diff +++ b/contrib/libdiff/test/expect019.diff diff --cc contrib/libdiff/test/expect021.diff index 000000000000,076ccd4d4a2d..076ccd4d4a2d mode 000000,100644..100644 --- a/contrib/libdiff/test/expect021.diff +++ b/contrib/libdiff/test/expect021.diff diff --cc contrib/libdiff/test/expect101.diff index 000000000000,eca02621faf8..eca02621faf8 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect101.diff +++ b/contrib/libdiff/test/expect101.diff diff --cc contrib/libdiff/test/expect102.diff index 000000000000,58ec6b7744c8..58ec6b7744c8 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect102.diff +++ b/contrib/libdiff/test/expect102.diff diff --cc contrib/libdiff/test/expect103.diff index 000000000000,dae017d8028e..dae017d8028e mode 000000,100644..100644 --- a/contrib/libdiff/test/expect103.diff +++ b/contrib/libdiff/test/expect103.diff diff --cc contrib/libdiff/test/expect104.diff index 000000000000,c48183f5fa9c..c48183f5fa9c mode 000000,100644..100644 --- a/contrib/libdiff/test/expect104.diff +++ b/contrib/libdiff/test/expect104.diff diff --cc contrib/libdiff/test/expect105.diff index 000000000000,82d3b52ee97e..82d3b52ee97e mode 000000,100644..100644 --- a/contrib/libdiff/test/expect105.diff +++ b/contrib/libdiff/test/expect105.diff diff --cc contrib/libdiff/test/expect106.diff index 000000000000,c48cf3199188..c48cf3199188 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect106.diff +++ b/contrib/libdiff/test/expect106.diff diff --cc contrib/libdiff/test/expect107.diff index 000000000000,f658b89fd21e..f658b89fd21e mode 000000,100644..100644 --- a/contrib/libdiff/test/expect107.diff +++ b/contrib/libdiff/test/expect107.diff diff --cc contrib/libdiff/test/expect108.diff index 000000000000,a9b93e784e4e..a9b93e784e4e mode 000000,100644..100644 --- a/contrib/libdiff/test/expect108.diff +++ b/contrib/libdiff/test/expect108.diff diff --cc contrib/libdiff/test/expect109.diff index 000000000000,ee94eff22a3e..ee94eff22a3e mode 000000,100644..100644 --- a/contrib/libdiff/test/expect109.diff +++ b/contrib/libdiff/test/expect109.diff diff --cc contrib/libdiff/test/expect110.diff index 000000000000,40e1d155b0f2..40e1d155b0f2 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect110.diff +++ b/contrib/libdiff/test/expect110.diff diff --cc contrib/libdiff/test/expect111.diff index 000000000000,dd53220bf3cc..dd53220bf3cc mode 000000,100644..100644 --- a/contrib/libdiff/test/expect111.diff +++ b/contrib/libdiff/test/expect111.diff diff --cc contrib/libdiff/test/expect112.diff index 000000000000,680fe1ac37c5..680fe1ac37c5 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect112.diff +++ b/contrib/libdiff/test/expect112.diff diff --cc contrib/libdiff/test/expect113.diff index 000000000000,882171f0cbb5..882171f0cbb5 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect113.diff +++ b/contrib/libdiff/test/expect113.diff diff --cc contrib/libdiff/test/expect114.diff index 000000000000,538b475acd17..538b475acd17 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect114.diff +++ b/contrib/libdiff/test/expect114.diff diff --cc contrib/libdiff/test/expect115.diff index 000000000000,64d4f35f2582..64d4f35f2582 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect115.diff +++ b/contrib/libdiff/test/expect115.diff diff --cc contrib/libdiff/test/expect116.diff index 000000000000,35c3a14b2f70..35c3a14b2f70 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect116.diff +++ b/contrib/libdiff/test/expect116.diff diff --cc contrib/libdiff/test/expect117.diff index 000000000000,63df381db814..63df381db814 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect117.diff +++ b/contrib/libdiff/test/expect117.diff diff --cc contrib/libdiff/test/expect123.diff index 000000000000,77d05518ee95..77d05518ee95 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect123.diff +++ b/contrib/libdiff/test/expect123.diff diff --cc contrib/libdiff/test/expect124.diff index 000000000000,82713c206aff..82713c206aff mode 000000,100644..100644 --- a/contrib/libdiff/test/expect124.diff +++ b/contrib/libdiff/test/expect124.diff diff --cc contrib/libdiff/test/expect125.diff index 000000000000,dc9ca80aa498..dc9ca80aa498 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect125.diff +++ b/contrib/libdiff/test/expect125.diff diff --cc contrib/libdiff/test/expect126.diff index 000000000000,ddf0066b6822..ddf0066b6822 mode 000000,100644..100644 --- a/contrib/libdiff/test/expect126.diff +++ b/contrib/libdiff/test/expect126.diff diff --cc contrib/libdiff/test/results_test.c index 000000000000,02856a39c249..02856a39c249 mode 000000,100644..100644 --- a/contrib/libdiff/test/results_test.c +++ b/contrib/libdiff/test/results_test.c diff --cc contrib/libdiff/test/results_test/GNUmakefile index 000000000000,f5b14b1f6648..f5b14b1f6648 mode 000000,100644..100644 --- a/contrib/libdiff/test/results_test/GNUmakefile +++ b/contrib/libdiff/test/results_test/GNUmakefile diff --cc contrib/libdiff/test/results_test/Makefile index 000000000000,4cb496ada0aa..4cb496ada0aa mode 000000,100644..100644 --- a/contrib/libdiff/test/results_test/Makefile +++ b/contrib/libdiff/test/results_test/Makefile diff --cc contrib/libdiff/test/test001.left.txt index 000000000000,fd113b0f7150..fd113b0f7150 mode 000000,100644..100644 --- a/contrib/libdiff/test/test001.left.txt +++ b/contrib/libdiff/test/test001.left.txt diff --cc contrib/libdiff/test/test001.right.txt index 000000000000,0075e6d23de0..0075e6d23de0 mode 000000,100644..100644 --- a/contrib/libdiff/test/test001.right.txt +++ b/contrib/libdiff/test/test001.right.txt diff --cc contrib/libdiff/test/test002.left.txt index 000000000000,de77f56f2d47..de77f56f2d47 mode 000000,100644..100644 --- a/contrib/libdiff/test/test002.left.txt +++ b/contrib/libdiff/test/test002.left.txt diff --cc contrib/libdiff/test/test002.right.txt index 000000000000,a9b4b8b851dd..a9b4b8b851dd mode 000000,100644..100644 --- a/contrib/libdiff/test/test002.right.txt +++ b/contrib/libdiff/test/test002.right.txt diff --cc contrib/libdiff/test/test003.left.txt index 000000000000,940532533944..940532533944 mode 000000,100644..100644 --- a/contrib/libdiff/test/test003.left.txt +++ b/contrib/libdiff/test/test003.left.txt diff --cc contrib/libdiff/test/test003.right.txt index 000000000000,d9f266e14574..d9f266e14574 mode 000000,100644..100644 --- a/contrib/libdiff/test/test003.right.txt +++ b/contrib/libdiff/test/test003.right.txt diff --cc contrib/libdiff/test/test004.left.txt index 000000000000,72d95cf6331a..72d95cf6331a mode 000000,100644..100644 --- a/contrib/libdiff/test/test004.left.txt +++ b/contrib/libdiff/test/test004.left.txt diff --cc contrib/libdiff/test/test004.right.txt index 000000000000,cfe8f2ed6be0..cfe8f2ed6be0 mode 000000,100644..100644 --- a/contrib/libdiff/test/test004.right.txt +++ b/contrib/libdiff/test/test004.right.txt diff --cc contrib/libdiff/test/test005.left.txt index 000000000000,b77fc41c4c87..b77fc41c4c87 mode 000000,100644..100644 --- a/contrib/libdiff/test/test005.left.txt +++ b/contrib/libdiff/test/test005.left.txt diff --cc contrib/libdiff/test/test005.right.txt index 000000000000,2480cecfba48..2480cecfba48 mode 000000,100644..100644 --- a/contrib/libdiff/test/test005.right.txt +++ b/contrib/libdiff/test/test005.right.txt diff --cc contrib/libdiff/test/test006.left.txt index 000000000000,e01fce04d5ef..e01fce04d5ef mode 000000,100644..100644 --- a/contrib/libdiff/test/test006.left.txt +++ b/contrib/libdiff/test/test006.left.txt diff --cc contrib/libdiff/test/test006.right.txt index 000000000000,40a0f253dd2e..40a0f253dd2e mode 000000,100644..100644 --- a/contrib/libdiff/test/test006.right.txt +++ b/contrib/libdiff/test/test006.right.txt diff --cc contrib/libdiff/test/test007.left.txt index 000000000000,587be6b4c3f9..587be6b4c3f9 mode 000000,100644..100644 --- a/contrib/libdiff/test/test007.left.txt +++ b/contrib/libdiff/test/test007.left.txt diff --cc contrib/libdiff/test/test007.right.txt index 000000000000,47b0ccb04734..47b0ccb04734 mode 000000,100644..100644 --- a/contrib/libdiff/test/test007.right.txt +++ b/contrib/libdiff/test/test007.right.txt diff --cc contrib/libdiff/test/test008.left.txt index 000000000000,587be6b4c3f9..587be6b4c3f9 mode 000000,100644..100644 --- a/contrib/libdiff/test/test008.left.txt +++ b/contrib/libdiff/test/test008.left.txt diff --cc contrib/libdiff/test/test008.right.txt index 000000000000,70b67eef4500..70b67eef4500 mode 000000,100644..100644 --- a/contrib/libdiff/test/test008.right.txt +++ b/contrib/libdiff/test/test008.right.txt diff --cc contrib/libdiff/test/test009.left.txt index 000000000000,e4e5238f8e5d..e4e5238f8e5d mode 000000,100644..100644 --- a/contrib/libdiff/test/test009.left.txt +++ b/contrib/libdiff/test/test009.left.txt diff --cc contrib/libdiff/test/test009.right.txt index 000000000000,3a4386800dba..3a4386800dba mode 000000,100644..100644 --- a/contrib/libdiff/test/test009.right.txt +++ b/contrib/libdiff/test/test009.right.txt diff --cc contrib/libdiff/test/test010.left.txt index 000000000000,f68ae6a8ceaa..f68ae6a8ceaa mode 000000,100644..100644 --- a/contrib/libdiff/test/test010.left.txt +++ b/contrib/libdiff/test/test010.left.txt diff --cc contrib/libdiff/test/test010.right.txt index 000000000000,46844afad663..46844afad663 mode 000000,100644..100644 --- a/contrib/libdiff/test/test010.right.txt +++ b/contrib/libdiff/test/test010.right.txt diff --cc contrib/libdiff/test/test011.left.txt index 000000000000,2fbc5affa850..2fbc5affa850 mode 000000,100644..100644 --- a/contrib/libdiff/test/test011.left.txt +++ b/contrib/libdiff/test/test011.left.txt diff --cc contrib/libdiff/test/test011.right.txt index 000000000000,417db010011c..417db010011c mode 000000,100644..100644 --- a/contrib/libdiff/test/test011.right.txt +++ b/contrib/libdiff/test/test011.right.txt diff --cc contrib/libdiff/test/test012.left.txt index 000000000000,1081d16c6e49..1081d16c6e49 mode 000000,100644..100644 --- a/contrib/libdiff/test/test012.left.txt +++ b/contrib/libdiff/test/test012.left.txt diff --cc contrib/libdiff/test/test012.right.txt index 000000000000,dee7f5e68de3..dee7f5e68de3 mode 000000,100644..100644 --- a/contrib/libdiff/test/test012.right.txt +++ b/contrib/libdiff/test/test012.right.txt diff --cc contrib/libdiff/test/test013.left-w.txt index 000000000000,53b3adf33dac..53b3adf33dac mode 000000,100644..100644 --- a/contrib/libdiff/test/test013.left-w.txt +++ b/contrib/libdiff/test/test013.left-w.txt diff --cc contrib/libdiff/test/test013.right-w.txt index 000000000000,1509b4b4fdfa..1509b4b4fdfa mode 000000,100644..100644 --- a/contrib/libdiff/test/test013.right-w.txt +++ b/contrib/libdiff/test/test013.right-w.txt diff --cc contrib/libdiff/test/test014.left.txt index 000000000000,000000000000..e69de29bb2d1 new file mode 100644 --- /dev/null +++ b/contrib/libdiff/test/test014.left.txt diff --cc contrib/libdiff/test/test014.right.txt index 000000000000,f70f10e4db19..f70f10e4db19 mode 000000,100644..100644 --- a/contrib/libdiff/test/test014.right.txt +++ b/contrib/libdiff/test/test014.right.txt diff --cc contrib/libdiff/test/test015.left.txt index 000000000000,f70f10e4db19..f70f10e4db19 mode 000000,100644..100644 --- a/contrib/libdiff/test/test015.left.txt +++ b/contrib/libdiff/test/test015.left.txt diff --cc contrib/libdiff/test/test015.right.txt index 000000000000,000000000000..e69de29bb2d1 new file mode 100644 --- /dev/null +++ b/contrib/libdiff/test/test015.right.txt diff --cc contrib/libdiff/test/test016.left.txt index 000000000000,9a6e925fd9fb..9a6e925fd9fb mode 000000,100644..100644 --- a/contrib/libdiff/test/test016.left.txt +++ b/contrib/libdiff/test/test016.left.txt diff --cc contrib/libdiff/test/test016.right.txt index 000000000000,005c3dbd02ea..005c3dbd02ea mode 000000,100644..100644 --- a/contrib/libdiff/test/test016.right.txt +++ b/contrib/libdiff/test/test016.right.txt diff --cc contrib/libdiff/test/test017.left-U0.txt index 000000000000,e622c0db8bdf..e622c0db8bdf mode 000000,100644..100644 --- a/contrib/libdiff/test/test017.left-U0.txt +++ b/contrib/libdiff/test/test017.left-U0.txt diff --cc contrib/libdiff/test/test017.right-U0.txt index 000000000000,9495dcd762b8..9495dcd762b8 mode 000000,100644..100644 --- a/contrib/libdiff/test/test017.right-U0.txt +++ b/contrib/libdiff/test/test017.right-U0.txt diff --cc contrib/libdiff/test/test018.left-T.txt index 000000000000,fd113b0f7150..fd113b0f7150 mode 000000,100644..100644 --- a/contrib/libdiff/test/test018.left-T.txt +++ b/contrib/libdiff/test/test018.left-T.txt diff --cc contrib/libdiff/test/test018.right-T.txt index 000000000000,0075e6d23de0..0075e6d23de0 mode 000000,100644..100644 --- a/contrib/libdiff/test/test018.right-T.txt +++ b/contrib/libdiff/test/test018.right-T.txt diff --cc contrib/libdiff/test/test019.left.txt index 000000000000,ac4b5ececbb3..ac4b5ececbb3 mode 000000,100644..100644 --- a/contrib/libdiff/test/test019.left.txt +++ b/contrib/libdiff/test/test019.left.txt diff --cc contrib/libdiff/test/test019.right.txt index 000000000000,69c2895af058..69c2895af058 mode 000000,100644..100644 --- a/contrib/libdiff/test/test019.right.txt +++ b/contrib/libdiff/test/test019.right.txt diff --cc contrib/libdiff/test/test020.left.txt index 000000000000,7e5ee06994a5..7e5ee06994a5 mode 000000,100644..100644 --- a/contrib/libdiff/test/test020.left.txt +++ b/contrib/libdiff/test/test020.left.txt diff --cc contrib/libdiff/test/test020.right.txt index 000000000000,9ed331be5c5b..9ed331be5c5b mode 000000,100644..100644 --- a/contrib/libdiff/test/test020.right.txt +++ b/contrib/libdiff/test/test020.right.txt diff --cc contrib/libdiff/test/test021.left.txt index 000000000000,952d28523094..952d28523094 mode 000000,100644..100644 --- a/contrib/libdiff/test/test021.left.txt +++ b/contrib/libdiff/test/test021.left.txt diff --cc contrib/libdiff/test/test021.right.txt index 000000000000,7e2cc400cddb..7e2cc400cddb mode 000000,100644..100644 --- a/contrib/libdiff/test/test021.right.txt +++ b/contrib/libdiff/test/test021.right.txt diff --cc contrib/libdiff/test/test101.left-P.txt index 000000000000,fd113b0f7150..fd113b0f7150 mode 000000,100644..100644 --- a/contrib/libdiff/test/test101.left-P.txt +++ b/contrib/libdiff/test/test101.left-P.txt diff --cc contrib/libdiff/test/test101.right-P.txt index 000000000000,0075e6d23de0..0075e6d23de0 mode 000000,100644..100644 --- a/contrib/libdiff/test/test101.right-P.txt +++ b/contrib/libdiff/test/test101.right-P.txt diff --cc contrib/libdiff/test/test102.left-P.txt index 000000000000,de77f56f2d47..de77f56f2d47 mode 000000,100644..100644 --- a/contrib/libdiff/test/test102.left-P.txt +++ b/contrib/libdiff/test/test102.left-P.txt diff --cc contrib/libdiff/test/test102.right-P.txt index 000000000000,a9b4b8b851dd..a9b4b8b851dd mode 000000,100644..100644 --- a/contrib/libdiff/test/test102.right-P.txt +++ b/contrib/libdiff/test/test102.right-P.txt diff --cc contrib/libdiff/test/test103.left-P.txt index 000000000000,940532533944..940532533944 mode 000000,100644..100644 --- a/contrib/libdiff/test/test103.left-P.txt +++ b/contrib/libdiff/test/test103.left-P.txt diff --cc contrib/libdiff/test/test103.right-P.txt index 000000000000,d9f266e14574..d9f266e14574 mode 000000,100644..100644 --- a/contrib/libdiff/test/test103.right-P.txt +++ b/contrib/libdiff/test/test103.right-P.txt diff --cc contrib/libdiff/test/test104.left-P.txt index 000000000000,72d95cf6331a..72d95cf6331a mode 000000,100644..100644 --- a/contrib/libdiff/test/test104.left-P.txt +++ b/contrib/libdiff/test/test104.left-P.txt diff --cc contrib/libdiff/test/test104.right-P.txt index 000000000000,cfe8f2ed6be0..cfe8f2ed6be0 mode 000000,100644..100644 --- a/contrib/libdiff/test/test104.right-P.txt +++ b/contrib/libdiff/test/test104.right-P.txt diff --cc contrib/libdiff/test/test105.left-P.txt index 000000000000,b77fc41c4c87..b77fc41c4c87 mode 000000,100644..100644 --- a/contrib/libdiff/test/test105.left-P.txt +++ b/contrib/libdiff/test/test105.left-P.txt diff --cc contrib/libdiff/test/test105.right-P.txt index 000000000000,2480cecfba48..2480cecfba48 mode 000000,100644..100644 --- a/contrib/libdiff/test/test105.right-P.txt +++ b/contrib/libdiff/test/test105.right-P.txt diff --cc contrib/libdiff/test/test106.left-P.txt index 000000000000,e01fce04d5ef..e01fce04d5ef mode 000000,100644..100644 --- a/contrib/libdiff/test/test106.left-P.txt +++ b/contrib/libdiff/test/test106.left-P.txt diff --cc contrib/libdiff/test/test106.right-P.txt index 000000000000,40a0f253dd2e..40a0f253dd2e mode 000000,100644..100644 --- a/contrib/libdiff/test/test106.right-P.txt +++ b/contrib/libdiff/test/test106.right-P.txt diff --cc contrib/libdiff/test/test107.left-P.txt index 000000000000,587be6b4c3f9..587be6b4c3f9 mode 000000,100644..100644 --- a/contrib/libdiff/test/test107.left-P.txt +++ b/contrib/libdiff/test/test107.left-P.txt diff --cc contrib/libdiff/test/test107.right-P.txt index 000000000000,47b0ccb04734..47b0ccb04734 mode 000000,100644..100644 --- a/contrib/libdiff/test/test107.right-P.txt +++ b/contrib/libdiff/test/test107.right-P.txt diff --cc contrib/libdiff/test/test108.left-P.txt index 000000000000,000000000000..587be6b4c3f9 new file mode 100644 --- /dev/null +++ b/contrib/libdiff/test/test108.left-P.txt @@@ -1,0 -1,0 +1,1 @@@ ++x diff --cc contrib/libdiff/test/test108.right-P.txt index 000000000000,70b67eef4500..70b67eef4500 mode 000000,100644..100644 --- a/contrib/libdiff/test/test108.right-P.txt +++ b/contrib/libdiff/test/test108.right-P.txt diff --cc contrib/libdiff/test/test109.left-P.txt index 000000000000,e4e5238f8e5d..e4e5238f8e5d mode 000000,100644..100644 --- a/contrib/libdiff/test/test109.left-P.txt +++ b/contrib/libdiff/test/test109.left-P.txt diff --cc contrib/libdiff/test/test109.right-P.txt index 000000000000,3a4386800dba..3a4386800dba mode 000000,100644..100644 --- a/contrib/libdiff/test/test109.right-P.txt +++ b/contrib/libdiff/test/test109.right-P.txt diff --cc contrib/libdiff/test/test110.left-P.txt index 000000000000,f68ae6a8ceaa..f68ae6a8ceaa mode 000000,100644..100644 --- a/contrib/libdiff/test/test110.left-P.txt +++ b/contrib/libdiff/test/test110.left-P.txt diff --cc contrib/libdiff/test/test110.right-P.txt index 000000000000,46844afad663..46844afad663 mode 000000,100644..100644 --- a/contrib/libdiff/test/test110.right-P.txt +++ b/contrib/libdiff/test/test110.right-P.txt diff --cc contrib/libdiff/test/test111.left-P.txt index 000000000000,2fbc5affa850..2fbc5affa850 mode 000000,100644..100644 --- a/contrib/libdiff/test/test111.left-P.txt +++ b/contrib/libdiff/test/test111.left-P.txt diff --cc contrib/libdiff/test/test111.right-P.txt index 000000000000,417db010011c..417db010011c mode 000000,100644..100644 --- a/contrib/libdiff/test/test111.right-P.txt +++ b/contrib/libdiff/test/test111.right-P.txt diff --cc contrib/libdiff/test/test112.left-P.txt index 000000000000,1081d16c6e49..1081d16c6e49 mode 000000,100644..100644 --- a/contrib/libdiff/test/test112.left-P.txt +++ b/contrib/libdiff/test/test112.left-P.txt diff --cc contrib/libdiff/test/test112.right-P.txt index 000000000000,dee7f5e68de3..dee7f5e68de3 mode 000000,100644..100644 --- a/contrib/libdiff/test/test112.right-P.txt +++ b/contrib/libdiff/test/test112.right-P.txt diff --cc contrib/libdiff/test/test113.left-Pw.txt index 000000000000,53b3adf33dac..53b3adf33dac mode 000000,100644..100644 --- a/contrib/libdiff/test/test113.left-Pw.txt +++ b/contrib/libdiff/test/test113.left-Pw.txt diff --cc contrib/libdiff/test/test113.right-Pw.txt index 000000000000,1509b4b4fdfa..1509b4b4fdfa mode 000000,100644..100644 --- a/contrib/libdiff/test/test113.right-Pw.txt +++ b/contrib/libdiff/test/test113.right-Pw.txt diff --cc contrib/libdiff/test/test114.left-P.txt index 000000000000,000000000000..e69de29bb2d1 new file mode 100644 --- /dev/null +++ b/contrib/libdiff/test/test114.left-P.txt diff --cc contrib/libdiff/test/test114.right-P.txt index 000000000000,f70f10e4db19..f70f10e4db19 mode 000000,100644..100644 --- a/contrib/libdiff/test/test114.right-P.txt +++ b/contrib/libdiff/test/test114.right-P.txt diff --cc contrib/libdiff/test/test115.left-P.txt index 000000000000,f70f10e4db19..f70f10e4db19 mode 000000,100644..100644 --- a/contrib/libdiff/test/test115.left-P.txt +++ b/contrib/libdiff/test/test115.left-P.txt diff --cc contrib/libdiff/test/test115.right-P.txt index 000000000000,000000000000..e69de29bb2d1 new file mode 100644 --- /dev/null +++ b/contrib/libdiff/test/test115.right-P.txt diff --cc contrib/libdiff/test/test116.left-P.txt index 000000000000,9a6e925fd9fb..9a6e925fd9fb mode 000000,100644..100644 --- a/contrib/libdiff/test/test116.left-P.txt +++ b/contrib/libdiff/test/test116.left-P.txt diff --cc contrib/libdiff/test/test116.right-P.txt index 000000000000,005c3dbd02ea..005c3dbd02ea mode 000000,100644..100644 --- a/contrib/libdiff/test/test116.right-P.txt *** 66 LINES SKIPPED *** From nobody Mon Mar 11 14:13:33 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Ttdzf0q0lz5D45Z; Mon, 11 Mar 2024 14:13: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 4Ttdzf0CFrz4PYS; Mon, 11 Mar 2024 14:13:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710166414; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gi7D0+x4nCftzwxigxiuMKGnNpPwd5TnZm5qTTE+DBI=; b=kBfULzGPS8sRb79zWGoYH9KLRgAsSnEIel0cisa30f1IcXYhuLlDNVUHi3YktfYkJRD+lV /Haqs/SiMwYHWAkn9wO2SsTkURB8Ast9qJGcY69/Ng4s8moY1yXWJBWJ22DngqFwaREkSB AUSY5a2P3xjgjQWPmeJIpnRXuQ/cUPHgy2w4zlIAF9Stt6gIEVFkSfPs1i4kGF9RuFI8ui NkzP4RBzcj2gBEWZ4z/VQclJJwfJXnOT+loYSDFLG7M+g5+17Au0Pfjay0CvgDyjMbZrq+ 4wPPqMDFB62XLslyOSJnVtmgaT3KYABSGPh0lj/FkX7VApwVzCfhxAybLKv/QQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710166414; a=rsa-sha256; cv=none; b=xxl7hrCmT0kmvnodiWTI9PmYj/0edKhLMRA6rnScmgmSa5N6h6FaVllwRpC7+dfAHYR2wg ZC8o4bI4hZUFgM2PUhRzwJa59WYyMiIdaD+jvvBeyaj7L8pGevT4xtj8z7MLM825Dv7HM8 Oj0Jn1GmWAPghv2bXnURzsgJB4WkbHCCR0G3dRAwwjMkjg5io5bB0XYs72sFlI01CC17fR 2q1l0MKTxfEYIyd3+4MzrGXfvNwKN4cwBbV2cludCbLfHeVSDWH+hFyx7KYtkeHd6TejiV YdAIiLPhNCs5qk7zkCu4ZlYegWX/8Dr+nl7gc2/sbMYy4ikl5wMsp+MSQpt8zA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710166414; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gi7D0+x4nCftzwxigxiuMKGnNpPwd5TnZm5qTTE+DBI=; b=jmYDb3A1m/UwSn2q4ZUOLPEFLq1IgasUf8Kw2Ncm+oXp/zYY4ZeMc54H4X0f6bk+lIoQ/C FJM8sN5A4FTljvkggHMkIcMLlVGyLrrghH6LLnW6qWXm/VkIrRBTHauF0X0ix+YZUelMz3 QwmpYzRPyb9jVwAwLz0QBuAR+jVi6dryk2Zr9VKJiQ94fg/jI/15n0XWueIfxZqYrDt6qc yoBTcbU9TPCfEqJQ6vURwRsJQvSy/MnQWxOqgXJdfMzkEVVRQghnS3V3xPgzLk4/2j8dvN fVSltvF1hqJ00pFAlZTe9kWtT52w6ro7CISVJAVDDJW3bcPCSZHdmHdo/Ok/cw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Ttdzd6sHDzYQS; Mon, 11 Mar 2024 14:13: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 42BEDXFk097451; Mon, 11 Mar 2024 14:13:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BEDXHJ097447; Mon, 11 Mar 2024 14:13:33 GMT (envelope-from git) Date: Mon, 11 Mar 2024 14:13:33 GMT Message-Id: <202403111413.42BEDXHJ097447@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Toomas Soome Subject: git: 0148ccb95a8d - stable/14 - loader: we can only env_discard() existing variable List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: tsoome X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 0148ccb95a8df13d8a1234083490655d40550527 Auto-Submitted: auto-generated The branch stable/14 has been updated by tsoome: URL: https://cgit.FreeBSD.org/src/commit/?id=0148ccb95a8df13d8a1234083490655d40550527 commit 0148ccb95a8df13d8a1234083490655d40550527 Author: Toomas Soome AuthorDate: 2024-02-25 22:34:00 +0000 Commit: Toomas Soome CommitDate: 2024-03-11 14:08:50 +0000 loader: we can only env_discard() existing variable While dropping nvpair from nvstore, we also remove the corresponding environment variable. By doing so, we should be careful not to try to unset non-existing variable. Reviewed by: imp MFC after: 2 week Differential revision: https://reviews.freebsd.org/D44083 (cherry picked from commit 1b3f4ccb7dd8600d010fc6a09b09ee7d74872809) --- stand/libsa/zfs/zfs.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/stand/libsa/zfs/zfs.c b/stand/libsa/zfs/zfs.c index af938fbe1b2b..f3cf60786a23 100644 --- a/stand/libsa/zfs/zfs.c +++ b/stand/libsa/zfs/zfs.c @@ -1265,8 +1265,12 @@ zfs_nvstore_unset_impl(void *vdev, const char *name, bool unset_env) rv = zfs_set_bootenv(vdev, spa->spa_bootenv); } - if (unset_env) - env_discard(env_getenv(name)); + if (unset_env) { + struct env_var *ev = env_getenv(name); + + if (ev != NULL) + env_discard(ev); + } return (rv); } From nobody Mon Mar 11 14:53:19 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtfsW5GqYz5D7Hj; Mon, 11 Mar 2024 14:53: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 4TtfsW44jdz4SMr; Mon, 11 Mar 2024 14:53:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710168799; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LrD+bvk7M/oW4KkS7olVg3Fj/FRPdIupZ61nhHI8Ztk=; b=Qw/gOTNDITAfq6yHEPfxj3u7j0Lx5t53Yp2gsJ51ajPSDSgPuWshWiguzolVMaf4ERPPyz 9febH/Xy5Qe3tvPa45kygWY2CNn+d7vpZw/uSPkdM/AvFXkPsIPR9Odg+p2Pzfjio5kWQO kPoQ8dLFPatOkK65YUPgBaV1NyyeYdrRTqF8NqkL2RFMi0XricVGSCn4UxVSzRhjM4MNyp 1qxxCyJk7VbaDodLhOHrQiVvm+nInIgGI/3W2G/X5CCNL7zdpA7CLboT7aMwmMP5csG/dW 6eTiNPIWFaZOQPhNTniPALSiye/AeRx9bVFAeevU4VB5LfIhdPyW29/1u4T+hw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710168799; a=rsa-sha256; cv=none; b=bwvu/EaCl9Y2xxJ3vMLntBxOIehzj236dseTkoHyRDTzBCBiLtR5Ff9+2PVTXkfrqu2UQ5 j5iRGh6L/HL24ATso46/KmFh8UwfjUuzZ/iS6qhjfGQc5kGCNDcy/ntzgMy+1Y4WUiYVWA 0IA4PcWhi6izlkWBCboQqCahBVjdYF8cvF0of2IykFVX8qccQ+m3gKnB2dAreyQ7UDZpRg ZOURNVWne98EP65vKRq0UzxLbHcY71Ua/KSjqP3XOGHCpyEZk6HUJMxoN1jXy8OBl33amU frEmWiOUhwhEXzNmpke9aljTJuZbAEPTWAG3Ke00eJ/DExSoZBEtiTBLjynDnw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710168799; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LrD+bvk7M/oW4KkS7olVg3Fj/FRPdIupZ61nhHI8Ztk=; b=Y9JbyiwAyRXdNUfmt9vUKPuT0cnfMkxTVLnowux0cwSxIJX4kr5EWZ7Neo3sAo70xMNCqA L1d2xr3ijXSWReXpwzJ75lXOdVr7obXJ8vLpsaJgfLVilzQQwVn6CUWhUFIgh4f02zrHln I2Fs781OIoqDLWPvZVw4K2AvDf6AD/4Zh4di4kSk3d3G/e6Aj+vWVv/zZ1244y391XMVLI 1nfsCkR2hOZm5BNfZ5qeq5N/xPaLg8DSOJdCGeYGWLbSnvz7ng4m4L/wd/qKSWFdX8OzLk yY1AF/pVAtq3k72STA6lgVTM7YCGM/b8QiXMNsaUNCAvF0Supw3NeAQOoIUFlQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtfsW3gryzZHc; Mon, 11 Mar 2024 14:53: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 42BErJ3k064423; Mon, 11 Mar 2024 14:53:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BErJ6E064420; Mon, 11 Mar 2024 14:53:19 GMT (envelope-from git) Date: Mon, 11 Mar 2024 14:53:19 GMT Message-Id: <202403111453.42BErJ6E064420@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 55951611e49a - main - tests/unix_seqpacket: mk_pair_of_sockets() requires a valid argument List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 55951611e49a5a43ba151582505019c38558c0e7 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=55951611e49a5a43ba151582505019c38558c0e7 commit 55951611e49a5a43ba151582505019c38558c0e7 Author: Gleb Smirnoff AuthorDate: 2024-03-11 14:50:29 +0000 Commit: Gleb Smirnoff CommitDate: 2024-03-11 14:50:29 +0000 tests/unix_seqpacket: mk_pair_of_sockets() requires a valid argument All callers do it right. Don't be overprotective against a stupid caller and thus don't look like a code that leaks a resource. Reported by: Coverity Scan CID: 1539210 --- tests/sys/kern/unix_seqpacket_test.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/tests/sys/kern/unix_seqpacket_test.c b/tests/sys/kern/unix_seqpacket_test.c index e93bdfe7e0b1..ca3fcdef9e6a 100644 --- a/tests/sys/kern/unix_seqpacket_test.c +++ b/tests/sys/kern/unix_seqpacket_test.c @@ -124,10 +124,8 @@ mk_pair_of_sockets(int *sv) atf_tc_fail("accept(2) failed"); } - if (sv != NULL) { - sv[0] = s1; - sv[1] = s2; - } + sv[0] = s1; + sv[1] = s2; close(s); From nobody Mon Mar 11 15:53:06 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TthBV298sz5DCyq; Mon, 11 Mar 2024 15:53:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TthBV1fFjz4ZvD; Mon, 11 Mar 2024 15:53:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710172386; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MgsdD4MWnpBPQ8+RkgM3R27gdPUREGNF6QDrGTAQ7E4=; b=TqsDqiNbm15bjj1JHtyzfvfZpkRTs/AM3HDyoHGMV1o/GUA+oegsT1up7FHtf9YtybdPfa pm2gXKYlF7GW/2yWaBIpBvP+HgErUqeNCDA5r9YRDOGs7mHMHK3j2PTmKph2eOzkxt9Cce 8U9uAFNpTaKWWpkr2HvqjW8lgLtQByEgq11UmBnIrjFL9aseabSF46Pv+2DHiQnFjQaxhm T/Qq4u43MWMA3pP3IXD9Xpup7rb+emmR0ZF2+oekLeZkkR8Uv2CUmYtFz00hy2jRzLXxoW cESW3pjdbGLICeXn9i/36Vet4dpIy6dCWtFE3lFQPRNcywlWiZWNvPghAGCzdQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710172386; a=rsa-sha256; cv=none; b=oqLjzJEmsixVVJ4Jw3zgnkKiF5UUfU8zTS/AJPKId8+oR5nAs+sRNQjwG5I2d8bN0flHhS Cvrk1pkKpUpYq7OF9GUjAj+1T2hWp7FziAB+9RhlMuROZ9mlLqxI9C1X95zuLDALTOnPyy jLdfnr7BUnRgn3n/6swkH3BSLespK26jK75HR6BsRxf32KvBVprQlAmPMsr6dcBgpjhM1J LRI0tEe5gK5CxlZRRwJvHcfZhjdwTvaKwNQa1FVq/GPanMDg8RopGHzMjRBEJByRfdThGW yF+rYUr2k9XfFNwiJaZnQXqmZ93Vg5XW320HIOkH3XN09EPNtifbhc0/sXoKHQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710172386; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MgsdD4MWnpBPQ8+RkgM3R27gdPUREGNF6QDrGTAQ7E4=; b=iYYWN/Lcz7y1VAP6z/2PryTZl+s+ruViPJLLdOMp1g/3G3xSp06WjFKKZ3iYyWdKXGfhw1 CSxBNb64OqHgK02SoDsua2bl+q0PONaSACehlU077Zp7iLFKIKJq9J5mne8vjkA71QteB9 PZPdxs/45I3sSOnQnEOI2s/Sd/k3exXbXS0ivMugdcyGEc5d1z4Ab2WvfQJH7a3SzWLZJe 09KiH6JelyUfTQPFXH4iDkdnm+tzuF2gZTkd9D4shjg8r1+o+PPJd0HcEl95S+BSaw6wg5 kvQyIvIHjl8fdAT5VjWfV7razVKuAvxuX2uHj+dOhDtWgvzXZgN1ZaxlygDguQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TthBV1Fs9zc52; Mon, 11 Mar 2024 15:53: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 42BFr6Xp065377; Mon, 11 Mar 2024 15:53:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BFr6JF065374; Mon, 11 Mar 2024 15:53:06 GMT (envelope-from git) Date: Mon, 11 Mar 2024 15:53:06 GMT Message-Id: <202403111553.42BFr6JF065374@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 16f8d8829472 - main - netlink: fix route protocol constant values to match Linux List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 16f8d8829472dfdf6b3b2bb21d652f0bafefccbc Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=16f8d8829472dfdf6b3b2bb21d652f0bafefccbc commit 16f8d8829472dfdf6b3b2bb21d652f0bafefccbc Author: Marek Zarychta AuthorDate: 2024-03-11 15:50:46 +0000 Commit: Gleb Smirnoff CommitDate: 2024-03-11 15:50:46 +0000 netlink: fix route protocol constant values to match Linux Although these particular constants aren't supported, the incorrect values break bird 2.15 operation. PR: 277618 Reported by: Ondrej Zajicek --- sys/netlink/route/route.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/netlink/route/route.h b/sys/netlink/route/route.h index 9247a59855bb..1d4149e23d2f 100644 --- a/sys/netlink/route/route.h +++ b/sys/netlink/route/route.h @@ -282,8 +282,8 @@ struct rtvia { NL_RTAX_RTO_MIN = 13, /* not supported */ NL_RTAX_INITRWND = 14, /* not supported */ NL_RTAX_QUICKACK = 15, /* not supported */ - NL_RTAX_CC_ALGO = 15, /* not supported */ - NL_RTAX_FASTOPEN_NO_COOKIE = 16, /* not supported */ + NL_RTAX_CC_ALGO = 16, /* not supported */ + NL_RTAX_FASTOPEN_NO_COOKIE = 17, /* not supported */ __NL_RTAX_MAX }; #define NL_RTAX_MAX (__NL_RTAX_MAX - 1) From nobody Mon Mar 11 16:12:05 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TthcQ33ygz5DF6t; Mon, 11 Mar 2024 16:12: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 4TthcQ0R3jz4dGq; Mon, 11 Mar 2024 16:12:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710173526; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=csH8jvCbMMXbn1GLq7VdsY0lG/7lVKp2ySCy8czWUmc=; b=XaQtdX+QO9jq38ehI8z6KQ7dtbCYfYjZw61xba6UF20hzexix7pc7zIC/R2b8EZr8hOlg9 9u2nryMwY4+GOsfa3DUMtfKQBbx9YH3GdFpQKO+ppIxYoQ5zO/K6BIboA4xqQlMZxvwAkB 1diGl3GXZPeFPCSD0oNJ6aNg3YhCXcYCagtMMd/EIHyDnMvIXIAEvsaK2YYiufc/uLy0wp k9QrsIIcuECnN8vEnxK+fzvY2jW3fBlUZbENF/Wuks8DChsprUs1cBrCOcXJbMmOUF8cPL UkocfSOsm0NpspYA5p9jlPby8z4rSiQsgUGcQ1pNOeBkS9BSFfeHK2Hd9eYS+A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710173526; a=rsa-sha256; cv=none; b=MAxe/XfPYqiGowqQidWuSBDS5+gK09GVMurxKGUh+JrTcFmgiF5FDjtkCEgP6luy6yuULw MXvIWBQ+w/7Cd9BsrV9RIn7yecvxyJWDROCekosrDim1UWFNdsjnnCnmnNXalCpGWMKf3u POoAEw6AmDlBA464ziwWdVlfiFQgtMG+0U+i97JTRhve/y1PoL+ZLR1i1IFDlhEwGgDc8U DwQ43Aqb4XkN4VCM25Bp+1FjEYHV/BBAnwGKdDRbe4/9yxJmy6PRApEAg7U1qmYa1QA48R ULWu3OAL5f6rKcGuV1rpxtI1SxaQ4KN9XEM/3GzNSFQ6O0o3Zwh90ONYgBvx0A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710173526; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=csH8jvCbMMXbn1GLq7VdsY0lG/7lVKp2ySCy8czWUmc=; b=cBBIVYGY7RUiQuR+wHbBncdo83Qty3vqHm6PU3qTmEXlvCrNhlupaRQEfWbS0U2rg2bYUL bj+VMzoznYF2dNtlPY4z2b/p+KGC2Rd7/qGihLx2hHwv63r9Y0BM934P87Hg+t3fOtz2MK oG+Egvkr31e63KQw1FTN7/cuzP45WJSs2gOImdoHyoWuXsCWQHUbwAX5ZxomtKNOKnt3me C3zOcRWuXnDCxDK1lUgGTlvO6CWi2IuOTzPgZ+Xc3joQ4qUw51CWpZ2Z6h6N51Yf+/R1BV lj8e0/Unyy0xPr5gueNRGKrib1LVs3LjS6U7tpBDh3/AYRTyVSdNwPPqET6cxQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TthcQ02yJzcHC; Mon, 11 Mar 2024 16:12: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 42BGC58K099193; Mon, 11 Mar 2024 16:12:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BGC5T5099190; Mon, 11 Mar 2024 16:12:05 GMT (envelope-from git) Date: Mon, 11 Mar 2024 16:12:05 GMT Message-Id: <202403111612.42BGC5T5099190@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gleb Smirnoff Subject: git: f45ecf5fe407 - stable/14 - linux: require vnet(9) context in ifname_bsd_to_linux_name() List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: f45ecf5fe4076fac300cd1e2e93877ff1762c93a Auto-Submitted: auto-generated The branch stable/14 has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=f45ecf5fe4076fac300cd1e2e93877ff1762c93a commit f45ecf5fe4076fac300cd1e2e93877ff1762c93a Author: Gleb Smirnoff AuthorDate: 2024-03-03 20:56:58 +0000 Commit: Gleb Smirnoff CommitDate: 2024-03-11 16:11:56 +0000 linux: require vnet(9) context in ifname_bsd_to_linux_name() This function is used by netlink(9) only. The netlink(9) taskqueue thread runs in the vnet of the socket whose request the thread is processing right now. This is a correct vnet and resetting it to vnet0 is incorrect. If the function is to be used by any other caller in addition to netlink(9), it would be caller's responsiblity to provide correct vnet(9). Reviewed by: melifaro, dchagin Differential Revision: https://reviews.freebsd.org/D44191 PR: 277286 (cherry picked from commit 2f5a315b307447f91891c96fb23c7333fa406f2f) --- sys/compat/linux/linux.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/compat/linux/linux.c b/sys/compat/linux/linux.c index 569f9ffe1617..69849b1d98ad 100644 --- a/sys/compat/linux/linux.c +++ b/sys/compat/linux/linux.c @@ -253,14 +253,14 @@ ifname_bsd_to_linux_name(const char *bsdname, char *lxname, size_t len) struct ifnet *ifp; int ret; + CURVNET_ASSERT_SET(); + ret = 0; - CURVNET_SET(TD_TO_VNET(curthread)); NET_EPOCH_ENTER(et); ifp = ifunit(bsdname); if (ifp != NULL) ret = ifname_bsd_to_linux_ifp(ifp, lxname, len); NET_EPOCH_EXIT(et); - CURVNET_RESTORE(); return (ret); } From nobody Mon Mar 11 16:12:53 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TthdK2ZR4z5DFdM; Mon, 11 Mar 2024 16:12: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 4TthdK21TQz4f2b; Mon, 11 Mar 2024 16:12:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710173573; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uYEmVXhF65rG0EOYq+gPcJA0eYn1KFPNDZpxmoC1OjU=; b=ELYPlbdYZudOhH99wGBpoOqjhuz5se/ecDy3voxvaFfttHU+HsqTEpxuwfZ7Rk06eb5jC9 goVw9bWzSbHEBP72nnaGuE4JhN5GqThbjNf6aaVDed8faWHnOnOK4eJA6gmM17i/oh9Z3u kTLaAug5lVGRnwg90suOYAvR+29xmnDuwcWTm/SsdDt3HAj0xG88nbw09RRILmkrj1km8k D3y2iisXqwXhSSLQlbxHXasWBENR5MouaKhHoBCj2cX9UcGJ2v2wmNLQgPqyX0KzMo5TqJ J2+89UFHyoyDC7a37W4o/yNb6V5q4vkR2EkuOCMObY3jWuNcH8dXeD/xsVTOLg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710173573; a=rsa-sha256; cv=none; b=U9tq6g7byrhsZFCC73fA5jnqJiQdZYikx0sjvHuJhx/iRAtpl/pnGC4rCXIugif2mXut3q 7C3sVybmjSbgTzLY0bL/44rr0qjmlrrT+MTSac8gLOIEgPqvQ+lQGWMwtIIxKMuJASt3nB sGNwf7+taGOoyrkIeaEVWRU4FD3Qzc2U4iCplMszedwWAAQobOeiZ7g2kfdaUZspsQC3B2 JnklYFc1CA9lMwwTWWRBpqjXP2tMhSMoeTWK2uTMgxURHSBPMvUke8JD0yesFWI89/Funm lS0L/LS81ooQz26klt4Sh9Xyf8t+QJv26mB5IC3njtn+M9zKDTzuEtE79XGnZg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710173573; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uYEmVXhF65rG0EOYq+gPcJA0eYn1KFPNDZpxmoC1OjU=; b=nYtx7JbYu08hm98qSQGEzrWkybMAO/EUxiDyL5XBThRLLG9KycyGj1rw8ywTjVFbWiIRRD jfMKRIw4l9tS5QdnipfJXV01s7cReFFNAbclXUgQcZ2v6HoLzsvHA5uBPLz1vbax4q8sOD luYsSJONG1+v2xpsIZw7RquBN+7Q3a+5sSm4JYSA0EdMsObazO7lRHg3/ehCEjdWNs1Vsg gkyHkk/B4hm0ekGO5p53HxvPbOE6mua5aLKhwMkeEWIUMVGbpQIbOKUQimKZStxDleeVQ5 PH7lemzWDRZZqFfmgQH/PsUTf3dN9EjU6has755CQLLyOdpmUbpsaWiYP33Qrg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TthdK1dWNzcm2; Mon, 11 Mar 2024 16:12: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 42BGCrjh000299; Mon, 11 Mar 2024 16:12:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BGCrZd000296; Mon, 11 Mar 2024 16:12:53 GMT (envelope-from git) Date: Mon, 11 Mar 2024 16:12:53 GMT Message-Id: <202403111612.42BGCrZd000296@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gleb Smirnoff Subject: git: db4429d00f0d - stable/13 - linux: require vnet(9) context in ifname_bsd_to_linux_name() List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: db4429d00f0d95a1532f8707f8b828a744586dc7 Auto-Submitted: auto-generated The branch stable/13 has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=db4429d00f0d95a1532f8707f8b828a744586dc7 commit db4429d00f0d95a1532f8707f8b828a744586dc7 Author: Gleb Smirnoff AuthorDate: 2024-03-03 20:56:58 +0000 Commit: Gleb Smirnoff CommitDate: 2024-03-11 16:12:36 +0000 linux: require vnet(9) context in ifname_bsd_to_linux_name() This function is used by netlink(9) only. The netlink(9) taskqueue thread runs in the vnet of the socket whose request the thread is processing right now. This is a correct vnet and resetting it to vnet0 is incorrect. If the function is to be used by any other caller in addition to netlink(9), it would be caller's responsiblity to provide correct vnet(9). Reviewed by: melifaro, dchagin Differential Revision: https://reviews.freebsd.org/D44191 PR: 277286 (cherry picked from commit 2f5a315b307447f91891c96fb23c7333fa406f2f) --- sys/compat/linux/linux.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/compat/linux/linux.c b/sys/compat/linux/linux.c index 6191372b6312..141fa715c7c1 100644 --- a/sys/compat/linux/linux.c +++ b/sys/compat/linux/linux.c @@ -250,14 +250,14 @@ ifname_bsd_to_linux_name(const char *bsdname, char *lxname, size_t len) struct ifnet *ifp; int ret; + CURVNET_ASSERT_SET(); + ret = 0; - CURVNET_SET(TD_TO_VNET(curthread)); NET_EPOCH_ENTER(et); ifp = ifunit(bsdname); if (ifp != NULL) ret = ifname_bsd_to_linux_ifp(ifp, lxname, len); NET_EPOCH_EXIT(et); - CURVNET_RESTORE(); return (ret); } From nobody Mon Mar 11 16:18:51 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TthmD1JKZz5DGgs; Mon, 11 Mar 2024 16:18: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 4TthmC6MCPz4fqv; Mon, 11 Mar 2024 16:18:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710173931; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=h8RBDpVgXDhhq2wQGxZuLKRmiEDU+O8wl+s48njRoFs=; b=MD0+4jLlolt/CqqMO9iYOlNn9a/UW/7GObOJi6xXgR/+3Z8Eis0mS0K8PfM67rvWViI3Jc xe9uHbFACLgXPJt0Y759EJLEd6LLz+B03Pexl7rbHjCDtSndlEPgjHgCe9xGJNvd689PJ+ N9DT71OLT+nDqUyg2YKZkDGVp3HDQzKdKlm27HY21yz+ucR50OA6cXMj6laO28dvPQL79a mfwsf6w4MiTVA98cza03BLqeyGnJEmx/WAds5fL9ZZbZ0ZQ6hqcguNSA87FjuoyijGotM8 v/PrywfoVXrxqfLl4Et/f+GrbBksbTum+Vg/K6zrr3W7+vX+sjUIoqq0zr6+Xw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710173931; a=rsa-sha256; cv=none; b=X2tYozPAt22acpV6T2kNgCqf3OtEbNpe2Dob+OqHj8qCAh/a7wZf01pPEueYjLP0xYCTgV zk2HxiQEG8jq0+W8DyNgJu8UAC4LwYctlcfWhzPTDWYkygOwzhYJd1WDQ9Y7ExR9OhshOp 3Aim2gbDuYZ5/019NMkEcJj56W4nH5m7GboUSOulrGqZEvmZyAWT+dKOVdYcVe/pR3JalB OMGCVpUDdt9xjKVJzVlqxXz3R9R5V3kpjySZvv4510Xg+kiWF4cxrwsfj2Zoe596+6xQLb Dd9DEFJpp6cGOtMWj2/cU26AIXyoq2Z9NjjdcW1aJRSKRn07RGdMsQs31FWKrA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710173931; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=h8RBDpVgXDhhq2wQGxZuLKRmiEDU+O8wl+s48njRoFs=; b=QAGJGaeD3KRg7bdX8d5jnFPEi1KXmjQ8AHd1GAlwK82x1Ca/Gn8Ij9MoC7ijFzeT4VMm80 MxoL7c/swBrjy46H3mYh6A/cBGZy0QGoLP28hoPhoDWVxsh5UBlWpnBBYuZi36r8HlxXRj H4s4JXMDjsoZaQl7o8qVs01S8wQQGku/PEMpo8dxURqzospn7yOLDKo5MEej7HUNzKR6zt 8/qj5KMMDiWcE08Q3b+pdKcBRfr1yb8VlTFw7tF5W0rKLKBmE2jx3uhs9VAled1gK9LFAh LvQejRgU5jiVnX2N2P2HX6hX76ANjJGktm0T6+qBXTGhGYgrxxT4G3vPmqWkcQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TthmC5yqKzcV3; Mon, 11 Mar 2024 16:18: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 42BGIpHl001193; Mon, 11 Mar 2024 16:18:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BGIpku001190; Mon, 11 Mar 2024 16:18:51 GMT (envelope-from git) Date: Mon, 11 Mar 2024 16:18:51 GMT Message-Id: <202403111618.42BGIpku001190@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gleb Smirnoff Subject: git: a15b8e32942b - stable/14 - snd_hda: add 32-bit memory quirk for Creative Sound Blaster Audigy FX List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: a15b8e32942b2cbf70c7fc71e9c82d2b292e82c3 Auto-Submitted: auto-generated The branch stable/14 has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=a15b8e32942b2cbf70c7fc71e9c82d2b292e82c3 commit a15b8e32942b2cbf70c7fc71e9c82d2b292e82c3 Author: Gleb Smirnoff AuthorDate: 2024-02-23 19:30:13 +0000 Commit: Gleb Smirnoff CommitDate: 2024-03-11 16:18:42 +0000 snd_hda: add 32-bit memory quirk for Creative Sound Blaster Audigy FX Despite still being in production the device appeared not able to use memory above BUS_SPACE_MAXADDR_32BIT, and if your desktop has a lot of memory there is a high chance driver would allocate inaccessible memory. Submitted by: wulf Reviewed by: mav (cherry picked from commit 89189224adb560af6de2bb2e13a2b1831b89101d) --- sys/dev/sound/pci/hda/hdac.c | 1 + sys/dev/sound/pci/hda/hdac.h | 1 + 2 files changed, 2 insertions(+) diff --git a/sys/dev/sound/pci/hda/hdac.c b/sys/dev/sound/pci/hda/hdac.c index 1f06692ba36e..704bcad3822c 100644 --- a/sys/dev/sound/pci/hda/hdac.c +++ b/sys/dev/sound/pci/hda/hdac.c @@ -201,6 +201,7 @@ static const struct { { HDA_VMWARE, "VMware", 0, 0 }, { HDA_SIS_966, "SiS 966/968", 0, 0 }, { HDA_ULI_M5461, "ULI M5461", 0, 0 }, + { HDA_CREATIVE_SB1570, "Creative SB Audigy FX", 0, HDAC_QUIRK_64BIT }, /* Unknown */ { HDA_INTEL_ALL, "Intel", 0, 0 }, { HDA_NVIDIA_ALL, "NVIDIA", 0, 0 }, diff --git a/sys/dev/sound/pci/hda/hdac.h b/sys/dev/sound/pci/hda/hdac.h index 31bdc9130d9b..53c101f3119b 100644 --- a/sys/dev/sound/pci/hda/hdac.h +++ b/sys/dev/sound/pci/hda/hdac.h @@ -192,6 +192,7 @@ /* Creative */ #define CREATIVE_VENDORID 0x1102 +#define HDA_CREATIVE_SB1570 HDA_MODEL_CONSTRUCT(CREATIVE, 0x0012) #define HDA_CREATIVE_ALL HDA_MODEL_CONSTRUCT(CREATIVE, 0xffff) /* VIA */ From nobody Mon Mar 11 16:20:18 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tthnt54gKz5DH2X; Mon, 11 Mar 2024 16:20: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 4Tthnt4GRlz4gLq; Mon, 11 Mar 2024 16:20:18 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710174018; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Cuy2S+T39aYSttK3KOvipq95bIf/8vMGDbaNbRM5/nE=; b=E/5LFa7zXEEwQk30ptUxwvtT4bVu7hmph+PogwlnLPRERqhUWUUTF10+H+3Bbsr6mbTsqR D7xVSZYoBXRET0k0dp/0MRYaLBPutA6ZRznZKeFwKd+ii/s8a0v54KvsNVkl7xNrtnK76O CHruMuwLR4KI9kd7u2EeMbbEIfaSZ9HBpI1onq3PF9EluP2zF8pPXOHZcTgrOAmuouWUjQ 73aa5plbFongvU6loLlef8yAd7dJL6kQBlRrWfUkSjI3G7TWD8KiMwItqG3VjzBnclv4KR vhKyKy9LsVgKe0MK4rnQeNFzfhSZ3rnnjBzpJHQMPH9wx3AZMOySiBnSkRk7vg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710174018; a=rsa-sha256; cv=none; b=Vw1LqyVIf/uPhy5Bm5I8RspQlyjmgA5bPFktBPR/ZSe5neQZ1AYXlVi7kjy66bCOLUqVYn Dfgr64eRXxCvlElY3ww2U0osLRbWFPtIGsP8sLWyPGmY1MC7oMqYc48MufXyRvc9cMNiph qrGOgGwkJuAGL0ky71616b0hM8J7xM3TY24RVz8Cj0bOJyvtOeBgznY5p5q1S8hqMdCr5T wnQRG7500HnOsG7h72fBQvBKC1VgYdPp0PKGX2E+Cmidbd44yubkpeSubXFtagIyaz0qyk qFIuVDVEfEHuWXbyT05wmUDea3bmcJLwaknT79YBlnGFoyqk3aFeFa6E4zNHWQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710174018; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Cuy2S+T39aYSttK3KOvipq95bIf/8vMGDbaNbRM5/nE=; b=QbVsW+Xeh/R5nZm/bCpxgVEjDCiYmU/ScKg46gIRpZCCOFIw7vIKJfth3pOhTuIB5F5kps TYX37QjiYZA7xKDxBZb7bBdHmsVPM0DXCjGBqUZEVa8c7grfPiPjFQODwB77L88+7Nae1J XfeOCJZjJ+j5mrsWXi998z3dGPt0Ad3DR1KfVAD/cWxoAEFuLgJwnYPHou61WJ3eHPUIVs ZevU41yuYKog9ljGeoWoXifpaB1e2bu4FYqCtvi0FA42DM2Qaiba7BWx3fyQ9DN7ZkLfsX DHlh2B++BZOWWf5FMckfpH6TYxOtY5siVqWiyNtbZFROY7jwVve28y2caAv6NQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tthnt3sxKzcjj; Mon, 11 Mar 2024 16:20: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 42BGKIuf010145; Mon, 11 Mar 2024 16:20:18 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BGKI87010142; Mon, 11 Mar 2024 16:20:18 GMT (envelope-from git) Date: Mon, 11 Mar 2024 16:20:18 GMT Message-Id: <202403111620.42BGKI87010142@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gleb Smirnoff Subject: git: c0d9fab3c45b - stable/13 - snd_hda: add 32-bit memory quirk for Creative Sound Blaster Audigy FX List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: c0d9fab3c45b3de19ec6c969bbd1d148a9e8a295 Auto-Submitted: auto-generated The branch stable/13 has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=c0d9fab3c45b3de19ec6c969bbd1d148a9e8a295 commit c0d9fab3c45b3de19ec6c969bbd1d148a9e8a295 Author: Gleb Smirnoff AuthorDate: 2024-02-23 19:30:13 +0000 Commit: Gleb Smirnoff CommitDate: 2024-03-11 16:20:10 +0000 snd_hda: add 32-bit memory quirk for Creative Sound Blaster Audigy FX Despite still being in production the device appeared not able to use memory above BUS_SPACE_MAXADDR_32BIT, and if your desktop has a lot of memory there is a high chance driver would allocate inaccessible memory. Submitted by: wulf Reviewed by: mav (cherry picked from commit 89189224adb560af6de2bb2e13a2b1831b89101d) --- sys/dev/sound/pci/hda/hdac.c | 1 + sys/dev/sound/pci/hda/hdac.h | 1 + 2 files changed, 2 insertions(+) diff --git a/sys/dev/sound/pci/hda/hdac.c b/sys/dev/sound/pci/hda/hdac.c index 3d2c4001d68d..f5be149ae117 100644 --- a/sys/dev/sound/pci/hda/hdac.c +++ b/sys/dev/sound/pci/hda/hdac.c @@ -203,6 +203,7 @@ static const struct { { HDA_VMWARE, "VMware", 0, 0 }, { HDA_SIS_966, "SiS 966/968", 0, 0 }, { HDA_ULI_M5461, "ULI M5461", 0, 0 }, + { HDA_CREATIVE_SB1570, "Creative SB Audigy FX", 0, HDAC_QUIRK_64BIT }, /* Unknown */ { HDA_INTEL_ALL, "Intel", 0, 0 }, { HDA_NVIDIA_ALL, "NVIDIA", 0, 0 }, diff --git a/sys/dev/sound/pci/hda/hdac.h b/sys/dev/sound/pci/hda/hdac.h index a1ddd19a518c..bcda5d563524 100644 --- a/sys/dev/sound/pci/hda/hdac.h +++ b/sys/dev/sound/pci/hda/hdac.h @@ -192,6 +192,7 @@ /* Creative */ #define CREATIVE_VENDORID 0x1102 +#define HDA_CREATIVE_SB1570 HDA_MODEL_CONSTRUCT(CREATIVE, 0x0012) #define HDA_CREATIVE_ALL HDA_MODEL_CONSTRUCT(CREATIVE, 0xffff) /* VIA */ From nobody Mon Mar 11 17:57:08 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Ttkxh19Sjz5DQwJ; Mon, 11 Mar 2024 17:57:12 +0000 (UTC) (envelope-from gbe@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Ttkxh0dgWz4qv2; Mon, 11 Mar 2024 17:57:12 +0000 (UTC) (envelope-from gbe@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710179832; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Aii3rDzofKI8R/IrS1lhdAUmkja16ruiHqGjgSuQ1ac=; b=K1VqOdjb4agnonana4bJcuyJ06UWQqfKw3rZEUpWsqo+zGmNnH5UVnOpgx14VRekyQK6aH 6zEZimhWNzTI4fB48qeCx4m+oWIzJGN5cytUEw7w+UCURkaUKN15ULLQwFj0227k4DNhmq sA3NvMlGyi9koRDEPUEPQAJQsgkWePPvG2ymIkSlDqVS4/RDveZZioO876tsH92JsZYMLA Lstx3cWcNBmjcFxkDrTrDyWMgl8f1F9k+6rI9hujDR7o9Orybgv2xQDx0XX1EL4FNZsRvb VW7X/LlF3g/v57bgvQJjPV912V9g622n+3C7P5h1jTOw+yzSWDGTzetBUy1ZRA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710179832; a=rsa-sha256; cv=none; b=xrMEyWdOiHGUmAKEWkmalTigyc/MYhZTMwnSCJunQtWiqnx7RzjZycPp4+UxWRDfjWj26y WGm60kvM7c1t15qIuoMt6idnA15D9C8Bnx8cV9OYBUtbb79jG8GYsSuv7eI8U38Aiqv9Wn 7OPPxcPxQirnvsarM4/EL4B7ugJwTI8LkfxPAxE11OJFuAh6rMoEkVaN2mm8cC+lgh4Gkw 4ieK0F5PAJAwJeJ/uCvvcQSmZRU4dq6kj6Cpn/D8WiAgjqYTle/mkgw+xaomZ7sypKWRYk xpV4auXVew9bE1wl04jy0OyHO6l7ACtC8/HqbFSsTw6cdi9wTeLO1sf+dRr3Yw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710179832; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=Aii3rDzofKI8R/IrS1lhdAUmkja16ruiHqGjgSuQ1ac=; b=ax3KRpWofLDAiztNRiD9NwHgR2E5R/dLnRtXFE24l/fBBBsph0GGpGD08dFN44by2jJ7g1 CMPJsgjuGsgiqMGfv0IaY7Gbt9ZQ/+17U7GK1mO1HQL6qDddpQT4NSlEyZj5/OtJKJZbiV 0tO8E3slOWdZExSCp2iQgm+rPqBmbFOb6M7pbKWj56KVCeaHJbNhWgtiCpJJha18fIRwAh F8/hcNwyiNFnRNi69SkceBXCZA1onJXiWtKWDfT0mRnNIJ6Qw4cadnJpEMi6QLA1CBmO6y ZMRAiSt9OTdLr4YunOY2Qn3wZt//tgyJMmtXc3jHEjYqCmxcnud7cbWWw1aAfg== Received: from localhost (p200300cb87078288d9d1a7fad7f0250b.dip0.t-ipconnect.de [IPv6:2003:cb:8707:8288:d9d1:a7fa:d7f0:250b]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: gbe) by smtp.freebsd.org (Postfix) with ESMTPSA id 4Ttkxg462kz19Ss; Mon, 11 Mar 2024 17:57:11 +0000 (UTC) (envelope-from gbe@freebsd.org) Date: Mon, 11 Mar 2024 18:57:08 +0100 From: Gordon Bergling To: Randall Stewart Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: f6d489f402c3 - main - Update to bring the rack stack with all its fixes in. Message-ID: References: <202403111138.42BBctkj027965@gitrepo.freebsd.org> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="fimVM8nccGBLPuSg" Content-Disposition: inline In-Reply-To: <202403111138.42BBctkj027965@gitrepo.freebsd.org> X-Url: X-Operating-System: FreeBSD 14.0-RELEASE-p5 amd64 X-Host-Uptime: 6:52PM up 4 days, 1:51, 3 users, load averages: 0.18, 0.34, 0.83 --fimVM8nccGBLPuSg Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hi Randall, thanks for updating the RACK stack. On Mon, Mar 11, 2024 at 11:38:55AM +0000, Randall Stewart wrote: > The branch main has been updated by rrs: >=20 > URL: https://cgit.FreeBSD.org/src/commit/?id=3Df6d489f402c320f1a6eaa47349= 1a0b8c3878113e >=20 > commit f6d489f402c320f1a6eaa473491a0b8c3878113e > Author: Randall Stewart > AuthorDate: 2024-03-11 11:36:54 +0000 > Commit: Randall Stewart > CommitDate: 2024-03-11 11:36:54 +0000 >=20 > Update to bring the rack stack with all its fixes in. > =20 > This brings the rack stack up to the current level used at NF. Many f= ixes > and improvements have been added. I also add in a fix to BBR to deal = with > the changes that have been in hpts for a while i.e. only one call no = matter > if mbuf queue or tcp_output. > =20 > Note there is a new file that I can't figure out how to get in rack_p= cm.c > =20 > It basically does little except BBlogs and is a placemark for future = work on > doing path capacity measurements. Regarding rack_pcm.c, this file was actually committed, but has 0-bytes in = size. You could just copy the current file over it, or copy-and-past the code to = the already existing file. Just tried it on my development tree. --Gordon --fimVM8nccGBLPuSg Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEYbWI0KY5X7yH/Fy4OQX2V8rP09wFAmXvRfAACgkQOQX2V8rP 09x96wf8Cu4GqMkosEPlv/SPkEoNFUa1wLRjjM2MIMX39O9WKJGoxGp0/B+UFYli 9J1K/vSZPCLcdr9B+YOxi4a2Tu+XF25sH6HOXRWai7+x4fPuBQxjU1ejXG0tlvY4 BeODYEDFBejanD3cDb+Y/7EAJ6hfdAFpaQu1Fmk0ZcwSYyaeQqSiLxakZ4CuR8YM XbFWVegbMWpsJFvPjPS+Q9onNXE6J4wHu/hHug7OsOPA0GhymKTqWg4blSRcRynU Ro4ew47EUyxulBwBiY3jobJJIj8nxJ7RBr541eLWH+LecjN3OnXCEQlSOidVA1JV GNB2A2l6B9li70VL4wcB6E37JWQuLw== =+XuD -----END PGP SIGNATURE----- --fimVM8nccGBLPuSg-- From nobody Mon Mar 11 19:15:15 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Ttmgq4Jw1z5DXTd; Mon, 11 Mar 2024 19:15:19 +0000 (UTC) (envelope-from des@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Ttmgq3RH2z4xCc; Mon, 11 Mar 2024 19:15:19 +0000 (UTC) (envelope-from des@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710184519; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=2Y3yVZJDM/iLfaABctKtuLBMCOfPaxigOfTEsVdHQiA=; b=aOxhwrqbeoFplQI/+y5slnSc8KM/vgnE65dKe12/faWqPhfftDWr/TWaGyut1R9I/wi/EL Z6ENz9q6DhPi5S40V+xo8e2CQhoW/ggtwNHMG5xFkM0DJL+RveXSrdXkh8gObwnddDNXkd zf+i/YeMywf840wDC7hph1gnc4WVpaf9FsKJ4uXprlQMvxioCgQxGns2aX/kMkNsBu9eZy k5QFZT1tK62M6KbwFnPXr51nhjC9DHY+aiM3IWEduKV0XeRXsZyqTBkAVJ7bjmVkzCiAsp AQMkEyrAQZiUWzMfjXD/O7CB5HCatNO84bfLFDVVc8WIK0wrqcix7qeQaDyMiQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710184519; a=rsa-sha256; cv=none; b=cu0B+mYOQ373NDwCiGZPVln3x9aIKPeZxFTsNoH6R7hqKUd28/57jlXjd11ltfAzelf8oe 8LMaKoCNL94K19Ba89vqd7VV19qTVZSAQYeUL79MN0N5ZfH4k3E3HzJ/TruBdhHrFJoaJf cU8DxTi8wyivpQf8fo399QyKRemYYMoyGvuIf0K0QFyOjuQeBEjLpsd5Fcf8hxK2mCbBLT W6niAePsXApS7pl6EVHjBryx76oiHQ7YRYAOuKP7naNPm3PPvU7R8AgnZs6Cv7070zgyZe 5Fef+Y6yq1nbe3uneL/a8S+YcFH8oZL1RcJGJKDiXOxw94TAHUAHs2m6Cj42/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=1710184519; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=2Y3yVZJDM/iLfaABctKtuLBMCOfPaxigOfTEsVdHQiA=; b=rLDMri/oFMdwCgFvWusfieMi9iMr4fcBIwA6YBSjGYtOpJ3/dExODMv6gORokwkVaIc1KS Whgb1AZXBzBNOMv1JuYPqeYyoYDUzMdVB/fi5Yq6uH5kYKCkvXVVFF1BPzMdWlNJ6RmN9B frUyFXwaCuHAnq+IrgdFeoAX4rksZQaU5zPy0xFncFWdp1UJD8e2wRuBR5mQ9pqWUHrNKF q6U+OYBXFJKB/C6OrcD+WjfQu2yy/6hPxXW4vcZkwN4o6rWOxcgWlW9wvlazZtFisj2czx 0ind+kSA+A7rcN3Qt6176bl4l2Zz8g8MqD5uN7mQyOiBu972yeWYP4Rq9WgxDg== Received: from ltc.des.dev (2a02-8428-0993-f001-922e-16ff-fef1-acef.rev.sfr.net [IPv6:2a02:8428:993:f001:922e:16ff:fef1:acef]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: des) by smtp.freebsd.org (Postfix) with ESMTPSA id 4Ttmgq2JDxz1B0Q; Mon, 11 Mar 2024 19:15:19 +0000 (UTC) (envelope-from des@freebsd.org) Received: by ltc.des.dev (Postfix, from userid 1001) id BAA3378789; Mon, 11 Mar 2024 20:15:15 +0100 (CET) From: =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= To: Randall Stewart Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: Re: git: f6d489f402c3 - main - Update to bring the rack stack with all its fixes in. In-Reply-To: <202403111138.42BBctkj027965@gitrepo.freebsd.org> (Randall Stewart's message of "Mon, 11 Mar 2024 11:38:55 GMT") References: <202403111138.42BBctkj027965@gitrepo.freebsd.org> User-Agent: Gnus/5.13 (Gnus v5.13) Date: Mon, 11 Mar 2024 20:15:15 +0100 Message-ID: <861q8glgvw.fsf@ltc.des.dev> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Randall Stewart writes: > commit f6d489f402c320f1a6eaa473491a0b8c3878113e > Author: Randall Stewart > AuthorDate: 2024-03-11 11:36:54 +0000 > Commit: Randall Stewart > CommitDate: 2024-03-11 11:36:54 +0000 > > Update to bring the rack stack with all its fixes in. >=20=20=20=20=20 > This brings the rack stack up to the current level used at NF. Many f= ixes > and improvements have been added. I also add in a fix to BBR to deal = with > the changes that have been in hpts for a while i.e. only one call no = matter > if mbuf queue or tcp_output. >=20=20=20=20=20 > Note there is a new file that I can't figure out how to get in rack_p= cm.c >=20=20=20=20=20 > It basically does little except BBlogs and is a placemark for future = work on > doing path capacity measurements. >=20=20=20=20=20 > Reviewed by: tuexen, glebius > Sponsored by: Netflix Inc. > Differential Revision:https://reviews.freebsd.org/D43986 This was not ready and should not have been committed. If you can't figure out how to commit the missing file (despite clearly being able to commit an empty file in its place) please email it to me me so I can fix the build. DES --=20 Dag-Erling Sm=C3=B8rgrav - des@FreeBSD.org From nobody Mon Mar 11 20:28:53 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtpJj5BnSz5DfZR; Mon, 11 Mar 2024 20:28: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 4TtpJj4vBNz5682; Mon, 11 Mar 2024 20:28:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710188933; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JzxVdt+OfIHIQ/HpAyN/UlSRuWtUbNedpYiyuniJEHc=; b=apNOSm6RvNOYV2emDR6V4CCHa+zeiGLRxHynIXkRKCurihGadw4RSq+HBT6ajc1W1EBeBI b1L4R7s7Yw5uAvuy/nrBtcbTpT3l3xbtOaMvHJRQ/y1DTPvzAp+EjBr3/56WwLmxxD49AZ Jj2BlHWGqj9lo7Rg4YLufOVkSUpUCS6WT4SZ4nZi0Gi33G188mpOAL/TTUxRuk/5uP8uqQ JFr06U6hJ8XgJi4bN3BLvdSpnj7wz0eFtaCIinGSUOBZXmwRNgY2/6w80BKHIvJN7UhNG0 njFMtrdbb95iUiprTNstaOYiJ0wFGxKJmxMDuMZpRclRwdTi6G6n0GMnO4TWUg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710188933; a=rsa-sha256; cv=none; b=JM3atpDnrPqQiBz+/mDoZQmzxZ5CfesKzrOLSnGwIHzCX0Nf0EomwwyNoPG8nEboy2si21 oE6SJ++snkw3znLqRn5OHpfOw2zmIZ3e0sW0c883W53m4uaO7FIWTNW+z+vUd7EmQBLz/P Pz7oIYlDTcSFVniLW/Uo3njWb8PNPSqjqLAsoYk+O0MX1ZRU2jvNdocRtrd7gQMYKJIbNX 05Urw8trWWuuITf8PRvy/z5gvOD35iJuaZb9sRprZVPyuZHtWozP3S4DvreJCnxEHn21UI OBhGLNSRa/m3SHrAMtywVIXJxjCeJ5h3+qpMrS5qV5paaBq6odS5h2owatetnQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710188933; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JzxVdt+OfIHIQ/HpAyN/UlSRuWtUbNedpYiyuniJEHc=; b=oAkFvMRkk/zrEGXYL+AbAzrH84EPeg9Q3p9s/gZZ8PxHXnK4xVwJm5NlkEyJAjaOhnoDGu 9zrpAcP60MltLpR2HpFTRcDe5htaaPf0TZ7AmjrQ/SG5CzkgawH6okGy3+F1SEWV4A4Dqz eZWZwdFX1g9sKJ8DmZTjZyqX4ijj6MRl6yjgaFy/PzpCA8elOi/9iPbhgsTPWlkL3MF/Sa 2tgCTWxYqjDCri2qzNk1vHD4KGFyC4SLrwyY4WtjX1MOLmKDsMP5SR0PnPUgJF2lwISBed NAkIkWBmvGasbdc12ybCWHG129MiKyQqhK2g+EEv8ia8lYOrJiEamaGKu1B/cw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtpJj4TyszkrM; Mon, 11 Mar 2024 20:28: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 42BKSrnC024813; Mon, 11 Mar 2024 20:28:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BKSrqq024810; Mon, 11 Mar 2024 20:28:53 GMT (envelope-from git) Date: Mon, 11 Mar 2024 20:28:53 GMT Message-Id: <202403112028.42BKSrqq024810@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: c112243f6bd3 - main - Revert "Update to bring the rack stack with all its fixes in." List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c112243f6bd3738ab1ca0fc56ba1accef66c9d7a Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=c112243f6bd3738ab1ca0fc56ba1accef66c9d7a commit c112243f6bd3738ab1ca0fc56ba1accef66c9d7a Author: Brooks Davis AuthorDate: 2024-03-11 20:15:20 +0000 Commit: Brooks Davis CommitDate: 2024-03-11 20:28:24 +0000 Revert "Update to bring the rack stack with all its fixes in." This commit was incomplete and breaks LINT kernels. The tree has been broken for 8+ hours. This reverts commit f6d489f402c320f1a6eaa473491a0b8c3878113e. --- sys/modules/tcp/rack/Makefile | 2 +- sys/netinet/tcp.h | 38 +- sys/netinet/tcp_log_buf.h | 9 +- sys/netinet/tcp_stacks/bbr.c | 4 +- sys/netinet/tcp_stacks/rack.c | 4447 +++++++++------------------------- sys/netinet/tcp_stacks/rack_pcm.c | 0 sys/netinet/tcp_stacks/sack_filter.h | 5 - sys/netinet/tcp_stacks/tailq_hash.c | 33 +- sys/netinet/tcp_stacks/tailq_hash.h | 8 +- sys/netinet/tcp_stacks/tcp_rack.h | 135 +- sys/netinet/tcp_subr.c | 57 +- sys/netinet/tcp_syncache.c | 5 +- sys/netinet/tcp_usrreq.c | 7 - sys/netinet/tcp_var.h | 12 +- 14 files changed, 1173 insertions(+), 3589 deletions(-) diff --git a/sys/modules/tcp/rack/Makefile b/sys/modules/tcp/rack/Makefile index d5f3ba170f68..c5bb20602337 100644 --- a/sys/modules/tcp/rack/Makefile +++ b/sys/modules/tcp/rack/Makefile @@ -5,7 +5,7 @@ STACKNAME= rack KMOD= tcp_${STACKNAME} -SRCS= rack.c sack_filter.c rack_bbr_common.c tailq_hash.c rack_pcm.c +SRCS= rack.c sack_filter.c rack_bbr_common.c tailq_hash.c SRCS+= opt_inet.h opt_inet6.h opt_ipsec.h SRCS+= opt_kern_tls.h diff --git a/sys/netinet/tcp.h b/sys/netinet/tcp.h index a8259fa30a3a..f9e561f6ce35 100644 --- a/sys/netinet/tcp.h +++ b/sys/netinet/tcp.h @@ -334,22 +334,9 @@ __tcp_set_flags(struct tcphdr *th, uint16_t flags) #define TCP_RACK_PACING_DIVISOR 1146 /* Pacing divisor given to rate-limit code for burst sizing */ #define TCP_RACK_PACE_MIN_SEG 1147 /* Pacing min seg size rack will use */ #define TCP_RACK_DGP_IN_REC 1148 /* Do we use full DGP in recovery? */ -#define TCP_POLICER_DETECT 1149 /* Do we apply a thresholds to rack to detect and compensate for policers? */ -#define TCP_RXT_CLAMP TCP_POLICER_DETECT +#define TCP_RXT_CLAMP 1149 /* Do we apply a threshold to rack so if excess rxt clamp cwnd? */ #define TCP_HYBRID_PACING 1150 /* Hybrid pacing enablement */ #define TCP_PACING_DND 1151 /* When pacing with rr_config=3 can sacks disturb us */ -#define TCP_SS_EEXIT 1152 /* Do we do early exit from slowtart if no b/w growth */ -#define TCP_DGP_UPPER_BOUNDS 1153 /* SS and CA upper bound in percentage */ -#define TCP_NO_TIMELY 1154 /* Disable/enable Timely */ -#define TCP_HONOR_HPTS_MIN 1155 /* Do we honor hpts min to */ -#define TCP_REC_IS_DYN 1156 /* Do we allow timely to change recovery multiplier? */ -#define TCP_SIDECHAN_DIS 1157 /* Disable/enable the side-channel */ -#define TCP_FILLCW_RATE_CAP 1158 /* Set a cap for DGP's fillcw */ -#define TCP_POLICER_MSS 1159 /* Policer MSS requirement */ -#define TCP_STACK_SPEC_INFO 1160 /* Get stack specific information (if present) */ -#define RACK_CSPR_IS_FCC 1161 -#define TCP_GP_USE_LTBW 1162 /* how we use lt_bw 0=not, 1=min, 2=max */ - /* Start of reserved space for third-party user-settable options. */ #define TCP_VENDOR SO_VENDOR @@ -460,7 +447,6 @@ struct tcp_info { u_int32_t tcpi_rcv_adv; /* Peer advertised window */ u_int32_t tcpi_dupacks; /* Consecutive dup ACKs recvd */ - u_int32_t tcpi_rttmin; /* Min observed RTT */ /* Padding to grow without breaking ABI. */ u_int32_t __tcpi_pad[14]; /* Padding. */ }; @@ -477,20 +463,6 @@ struct tcp_fastopen { #define TCP_FUNCTION_NAME_LEN_MAX 32 -struct stack_specific_info { - char stack_name[TCP_FUNCTION_NAME_LEN_MAX]; - uint64_t policer_last_bw; /* Only valid if detection enabled and policer detected */ - uint64_t bytes_transmitted; - uint64_t bytes_retransmitted; - uint32_t policer_detection_enabled: 1, - policer_detected : 1, /* transport thinks a policer is on path */ - highly_buffered : 1, /* transport considers the path highly buffered */ - spare : 29; - uint32_t policer_bucket_size; /* Only valid if detection enabled and policer detected */ - uint32_t current_round; - uint32_t _rack_i_pad[18]; -}; - struct tcp_function_set { char function_set_name[TCP_FUNCTION_NAME_LEN_MAX]; uint32_t pcbcnt; @@ -516,7 +488,6 @@ struct tcp_snd_req { uint64_t start; uint64_t end; uint32_t flags; - uint32_t playout_ms; }; union tcp_log_userdata { @@ -547,12 +518,9 @@ struct tcp_log_user { #define TCP_HYBRID_PACING_H_MS 0x0008 /* A client hint for maxseg is present */ #define TCP_HYBRID_PACING_ENABLE 0x0010 /* We are enabling hybrid pacing else disable */ #define TCP_HYBRID_PACING_S_MSS 0x0020 /* Clent wants us to set the mss overriding gp est in CU */ -#define TCP_HAS_PLAYOUT_MS 0x0040 /* The client included the chunk playout milliseconds: deprecate */ -/* the below are internal only flags */ -#define TCP_HYBRID_PACING_USER_MASK 0x0FFF /* Non-internal flags mask */ -#define TCP_HYBRID_PACING_SETMSS 0x1000 /* Internal flag that tells us we set the mss on this entry */ +#define TCP_HYBRID_PACING_SETMSS 0x1000 /* Internal flag that tellsus we set the mss on this entry */ #define TCP_HYBRID_PACING_WASSET 0x2000 /* We init to this to know if a hybrid command was issued */ -#define TCP_HYBRID_PACING_SENDTIME 0x4000 /* Duplicate tm to last, use sendtime for catch up mode */ + struct tcp_hybrid_req { struct tcp_snd_req req; diff --git a/sys/netinet/tcp_log_buf.h b/sys/netinet/tcp_log_buf.h index 2e91d9cbdf3c..1f5b7cf9b54f 100644 --- a/sys/netinet/tcp_log_buf.h +++ b/sys/netinet/tcp_log_buf.h @@ -267,9 +267,7 @@ enum tcp_log_events { TCP_RACK_TP_TRIGGERED, /* A rack tracepoint is triggered 68 */ TCP_HYBRID_PACING_LOG, /* Hybrid pacing log 69 */ TCP_LOG_PRU, /* TCP protocol user request 70 */ - TCP_POLICER_DET, /* TCP Policer detectionn 71 */ - TCP_PCM_MEASURE, /* TCP Path Capacity Measurement 72 */ - TCP_LOG_END /* End (keep at end) 72 */ + TCP_LOG_END /* End (keep at end) 71 */ }; enum tcp_log_states { @@ -373,11 +371,10 @@ struct tcp_log_dev_log_queue { #define TCP_TP_COLLAPSED_RXT 0x00000004 /* When we actually retransmit a collapsed window rsm */ #define TCP_TP_REQ_LOG_FAIL 0x00000005 /* We tried to allocate a Request log but had no space */ #define TCP_TP_RESET_RCV 0x00000006 /* Triggers when we receive a RST */ -#define TCP_TP_POLICER_DET 0x00000007 /* When we detect a policer */ -#define TCP_TP_EXCESS_RXT TCP_TP_POLICER_DET /* alias */ +#define TCP_TP_EXCESS_RXT 0x00000007 /* When we get excess RXT's clamping the cwnd */ #define TCP_TP_SAD_TRIGGERED 0x00000008 /* Sack Attack Detection triggers */ + #define TCP_TP_SAD_SUSPECT 0x0000000a /* A sack has supicious information in it */ -#define TCP_TP_PACED_BOTTOM 0x0000000b /* We have paced at the bottom */ #ifdef _KERNEL diff --git a/sys/netinet/tcp_stacks/bbr.c b/sys/netinet/tcp_stacks/bbr.c index 934b35bd22d7..931beba7a262 100644 --- a/sys/netinet/tcp_stacks/bbr.c +++ b/sys/netinet/tcp_stacks/bbr.c @@ -11529,9 +11529,7 @@ bbr_do_segment_nounlock(struct tcpcb *tp, struct mbuf *m, struct tcphdr *th, bbr_set_pktepoch(bbr, cts, __LINE__); bbr_check_bbr_for_state(bbr, cts, __LINE__, (bbr->r_ctl.rc_lost - lost)); if (nxt_pkt == 0) { - if ((bbr->r_wanted_output != 0) || - (tp->t_flags & TF_ACKNOW)) { - + if (bbr->r_wanted_output != 0) { bbr->rc_output_starts_timer = 0; did_out = 1; if (tcp_output(tp) < 0) diff --git a/sys/netinet/tcp_stacks/rack.c b/sys/netinet/tcp_stacks/rack.c index 1fe07fa8d641..49d946dbb63b 100644 --- a/sys/netinet/tcp_stacks/rack.c +++ b/sys/netinet/tcp_stacks/rack.c @@ -142,12 +142,9 @@ VNET_DECLARE(uint32_t, newreno_beta_ecn); #define V_newreno_beta VNET(newreno_beta) #define V_newreno_beta_ecn VNET(newreno_beta_ecn) -#define M_TCPFSB __CONCAT(M_TCPFSB, STACKNAME) -#define M_TCPDO __CONCAT(M_TCPDO, STACKNAME) -MALLOC_DEFINE(M_TCPFSB, "tcp_fsb_" __XSTRING(STACKNAME), "TCP fast send block"); -MALLOC_DEFINE(M_TCPDO, "tcp_do_" __XSTRING(STACKNAME), "TCP deferred options"); -MALLOC_DEFINE(M_TCPPCM, "tcp_pcm_" __XSTRING(STACKNAME), "TCP PCM measurement information"); +MALLOC_DEFINE(M_TCPFSB, "tcp_fsb", "TCP fast send block"); +MALLOC_DEFINE(M_TCPDO, "tcp_do", "TCP deferred options"); struct sysctl_ctx_list rack_sysctl_ctx; struct sysctl_oid *rack_sysctl_root; @@ -193,24 +190,12 @@ static int32_t rack_tlp_use_greater = 1; static int32_t rack_reorder_thresh = 2; static int32_t rack_reorder_fade = 60000000; /* 0 - never fade, def 60,000,000 * - 60 seconds */ -static uint16_t rack_policer_rxt_thresh= 0; /* 499 = 49.9%, 0 is off */ -static uint8_t rack_policer_avg_thresh = 0; /* 3.2 */ -static uint8_t rack_policer_med_thresh = 0; /* 1 - 16 */ -static uint16_t rack_policer_bucket_reserve = 20; /* How much % is reserved in the bucket */ -static uint64_t rack_pol_min_bw = 125000; /* 1mbps in Bytes per sec */ -static uint32_t rack_policer_data_thresh = 64000; /* 64,000 bytes must be sent before we engage */ -static uint32_t rack_policing_do_bw_comp = 1; -static uint32_t rack_pcm_every_n_rounds = 100; -static uint32_t rack_pcm_blast = 0; -static uint32_t rack_pcm_is_enabled = 1; -static uint8_t rack_req_del_mss = 18; /* How many segments need to be sent in a recovery episode to do policer_detection */ -static uint8_t rack_ssthresh_rest_rto_rec = 0; /* Do we restore ssthresh when we have rec -> rto -> rec */ - -static uint32_t rack_gp_gain_req = 1200; /* Amount percent wise required to gain to record a round has "gaining" */ -static uint32_t rack_rnd_cnt_req = 0x10005; /* Default number of rounds if we are below rack_gp_gain_req where we exit ss */ - - -static int32_t rack_rxt_scoreboard_clear_thresh = 2; +static uint32_t rack_clamp_ss_upper = 110; +static uint32_t rack_clamp_ca_upper = 105; +static uint32_t rack_rxt_min_rnds = 10; /* Min rounds if drastic rxt clamp is in place */ +static uint32_t rack_unclamp_round_thresh = 100; /* number of perfect rounds before we unclamp */ +static uint32_t rack_unclamp_rxt_thresh = 5; /* .5% and under */ +static uint64_t rack_rxt_clamp_thresh = 0; /* Do we do the rxt clamp thing */ static int32_t rack_dnd_default = 0; /* For rr_conf = 3, what is the default for dnd */ static int32_t rack_rxt_controls = 0; static int32_t rack_fill_cw_state = 0; @@ -232,8 +217,9 @@ static int32_t rack_do_hystart = 0; static int32_t rack_apply_rtt_with_reduced_conf = 0; static int32_t rack_hibeta_setting = 0; static int32_t rack_default_pacing_divisor = 250; +static int32_t rack_uses_full_dgp_in_rec = 1; static uint16_t rack_pacing_min_seg = 0; -static int32_t rack_timely_off = 0; + static uint32_t sad_seg_size_per = 800; /* 80.0 % */ static int32_t rack_pkt_delay = 1000; @@ -249,7 +235,7 @@ static int32_t rack_use_rsm_rfo = 1; static int32_t rack_max_abc_post_recovery = 2; static int32_t rack_client_low_buf = 0; static int32_t rack_dsack_std_based = 0x3; /* bit field bit 1 sets rc_rack_tmr_std_based and bit 2 sets rc_rack_use_dsack */ -static int32_t rack_bw_multipler = 0; /* Limit on fill cw's jump up to be this x gp_est */ +static int32_t rack_bw_multipler = 2; /* Limit on fill cw's jump up to be this x gp_est */ #ifdef TCP_ACCOUNTING static int32_t rack_tcp_accounting = 0; #endif @@ -261,9 +247,8 @@ static int32_t use_rack_rr = 1; static int32_t rack_non_rxt_use_cr = 0; /* does a non-rxt in recovery use the configured rate (ss/ca)? */ static int32_t rack_persist_min = 250000; /* 250usec */ static int32_t rack_persist_max = 2000000; /* 2 Second in usec's */ -static int32_t rack_honors_hpts_min_to = 1; /* Do we honor the hpts minimum time out for pacing timers */ -static uint32_t rack_max_reduce = 10; /* Percent we can reduce slot by */ static int32_t rack_sack_not_required = 1; /* set to one to allow non-sack to use rack */ +static int32_t rack_default_init_window = 0; /* Use system default */ static int32_t rack_limit_time_with_srtt = 0; static int32_t rack_autosndbuf_inc = 20; /* In percentage form */ static int32_t rack_enobuf_hw_boost_mult = 0; /* How many times the hw rate we boost slot using time_between */ @@ -297,6 +282,7 @@ static int32_t rack_rwnd_block_ends_measure = 0; static int32_t rack_def_profile = 0; static int32_t rack_lower_cwnd_at_tlp = 0; +static int32_t rack_limited_retran = 0; static int32_t rack_always_send_oldest = 0; static int32_t rack_tlp_threshold_use = TLP_USE_TWO_ONE; @@ -370,7 +356,6 @@ static int32_t rack_timely_no_stopping = 0; static int32_t rack_down_raise_thresh = 100; static int32_t rack_req_segs = 1; static uint64_t rack_bw_rate_cap = 0; -static uint64_t rack_fillcw_bw_cap = 3750000; /* Cap fillcw at 30Mbps */ /* Rack specific counters */ @@ -392,7 +377,6 @@ counter_u64_t rack_tlp_retran; counter_u64_t rack_tlp_retran_bytes; counter_u64_t rack_to_tot; counter_u64_t rack_hot_alloc; -counter_u64_t tcp_policer_detected; counter_u64_t rack_to_alloc; counter_u64_t rack_to_alloc_hard; counter_u64_t rack_to_alloc_emerg; @@ -456,7 +440,7 @@ rack_log_progress_event(struct tcp_rack *rack, struct tcpcb *tp, uint32_t tick, static int rack_process_ack(struct mbuf *m, struct tcphdr *th, struct socket *so, struct tcpcb *tp, struct tcpopt *to, - uint32_t tiwin, int32_t tlen, int32_t * ofia, int32_t thflags, int32_t * ret_val, int32_t orig_tlen); + uint32_t tiwin, int32_t tlen, int32_t * ofia, int32_t thflags, int32_t * ret_val); static int rack_process_data(struct mbuf *m, struct tcphdr *th, struct socket *so, struct tcpcb *tp, int32_t drop_hdrlen, int32_t tlen, @@ -470,8 +454,6 @@ static struct rack_sendmap *rack_alloc_limit(struct tcp_rack *rack, static struct rack_sendmap * rack_check_recovery_mode(struct tcpcb *tp, uint32_t tsused); -static uint32_t -rack_grab_rtt(struct tcpcb *tp, struct tcp_rack *rack); static void rack_cong_signal(struct tcpcb *tp, uint32_t type, uint32_t ack, int ); @@ -522,14 +504,13 @@ rack_log_ack(struct tcpcb *tp, struct tcpopt *to, static void rack_log_output(struct tcpcb *tp, struct tcpopt *to, int32_t len, uint32_t seq_out, uint16_t th_flags, int32_t err, uint64_t ts, - struct rack_sendmap *hintrsm, uint32_t add_flags, struct mbuf *s_mb, uint32_t s_moff, int hw_tls, int segsiz); + struct rack_sendmap *hintrsm, uint16_t add_flags, struct mbuf *s_mb, uint32_t s_moff, int hw_tls, int segsiz); static uint64_t rack_get_gp_est(struct tcp_rack *rack); - static void rack_log_sack_passed(struct tcpcb *tp, struct tcp_rack *rack, - struct rack_sendmap *rsm, uint32_t cts); + struct rack_sendmap *rsm); static void rack_log_to_event(struct tcp_rack *rack, int32_t to_num, struct rack_sendmap *rsm); static int32_t rack_output(struct tcpcb *tp); @@ -545,10 +526,10 @@ static int32_t rack_stopall(struct tcpcb *tp); static void rack_timer_cancel(struct tcpcb *tp, struct tcp_rack *rack, uint32_t cts, int line); static uint32_t rack_update_entry(struct tcpcb *tp, struct tcp_rack *rack, - struct rack_sendmap *rsm, uint64_t ts, int32_t * lenp, uint32_t add_flag, int segsiz); + struct rack_sendmap *rsm, uint64_t ts, int32_t * lenp, uint16_t add_flag, int segsiz); static void rack_update_rsm(struct tcpcb *tp, struct tcp_rack *rack, - struct rack_sendmap *rsm, uint64_t ts, uint32_t add_flag, int segsiz); + struct rack_sendmap *rsm, uint64_t ts, uint16_t add_flag, int segsiz); static int rack_update_rtt(struct tcpcb *tp, struct tcp_rack *rack, struct rack_sendmap *rsm, struct tcpopt *to, uint32_t cts, int32_t ack_type, tcp_seq th_ack); @@ -557,10 +538,6 @@ static int rack_do_close_wait(struct mbuf *m, struct tcphdr *th, struct socket *so, struct tcpcb *tp, struct tcpopt *to, int32_t drop_hdrlen, int32_t tlen, uint32_t tiwin, int32_t thflags, int32_t nxt_pkt, uint8_t iptos); - -static void -rack_peg_rxt(struct tcp_rack *rack, struct rack_sendmap *rsm, uint32_t segsiz); - static int rack_do_closing(struct mbuf *m, struct tcphdr *th, struct socket *so, struct tcpcb *tp, struct tcpopt *to, int32_t drop_hdrlen, @@ -743,22 +720,6 @@ rack_undo_cc_pacing(struct tcp_rack *rack) rack_swap_beta_values(rack, 4); } -static void -rack_remove_pacing(struct tcp_rack *rack) -{ - if (rack->rc_pacing_cc_set) - rack_undo_cc_pacing(rack); - if (rack->r_ctl.pacing_method & RACK_REG_PACING) - tcp_decrement_paced_conn(); - if (rack->r_ctl.pacing_method & RACK_DGP_PACING) - tcp_dec_dgp_pacing_cnt(); - rack->rc_always_pace = 0; - rack->r_ctl.pacing_method = RACK_PACING_NONE; - rack->dgp_on = 0; - rack->rc_hybrid_mode = 0; - rack->use_fixed_rate = 0; -} - static void rack_log_gpset(struct tcp_rack *rack, uint32_t seq_end, uint32_t ack_end_t, uint32_t send_end_t, int line, uint8_t mode, struct rack_sendmap *rsm) @@ -781,8 +742,6 @@ rack_log_gpset(struct tcp_rack *rack, uint32_t seq_end, uint32_t ack_end_t, log.u_bbr.pkts_out = line; log.u_bbr.cwnd_gain = rack->app_limited_needs_set; log.u_bbr.pkt_epoch = rack->r_ctl.rc_app_limited_cnt; - log.u_bbr.epoch = rack->r_ctl.current_round; - log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; if (rsm != NULL) { log.u_bbr.applimited = rsm->r_start; log.u_bbr.delivered = rsm->r_end; @@ -898,7 +857,6 @@ rack_init_sysctls(void) struct sysctl_oid *rack_measure; struct sysctl_oid *rack_probertt; struct sysctl_oid *rack_hw_pacing; - struct sysctl_oid *rack_policing; rack_attack = SYSCTL_ADD_NODE(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_sysctl_root), @@ -1036,36 +994,11 @@ rack_init_sysctls(void) "pacing", CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "Pacing related Controls"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_pacing), - OID_AUTO, "pcm_enabled", CTLFLAG_RW, - &rack_pcm_is_enabled, 1, - "Do we by default do PCM measurements?"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_pacing), - OID_AUTO, "pcm_rnds", CTLFLAG_RW, - &rack_pcm_every_n_rounds, 100, - "How many rounds before we need to do a PCM measurement"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_pacing), - OID_AUTO, "pcm_blast", CTLFLAG_RW, - &rack_pcm_blast, 0, - "Blast out the full cwnd/rwnd when doing a PCM measurement"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_pacing), - OID_AUTO, "rnd_gp_gain", CTLFLAG_RW, - &rack_gp_gain_req, 1200, - "How much do we have to increase the GP to record the round 1200 = 120.0"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_pacing), - OID_AUTO, "dgp_out_of_ss_at", CTLFLAG_RW, - &rack_rnd_cnt_req, 0x10005, - "How many rounds less than rnd_gp_gain will drop us out of SS"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), - OID_AUTO, "no_timely", CTLFLAG_RW, - &rack_timely_off, 0, - "Do we not use timely in DGP?"); + OID_AUTO, "fulldgpinrec", CTLFLAG_RW, + &rack_uses_full_dgp_in_rec, 1, + "Do we use all DGP features in recovery (fillcw, timely et.al.)?"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), OID_AUTO, "fullbufdisc", CTLFLAG_RW, @@ -1084,13 +1017,13 @@ rack_init_sysctls(void) SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), OID_AUTO, "divisor", CTLFLAG_RW, - &rack_default_pacing_divisor, 250, + &rack_default_pacing_divisor, 4, "What is the default divisor given to the rl code?"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), OID_AUTO, "fillcw_max_mult", CTLFLAG_RW, - &rack_bw_multipler, 0, - "What is the limit multiplier of the current gp_est that fillcw can increase the b/w too, 200 == 200% (0 = off)?"); + &rack_bw_multipler, 2, + "What is the multiplier of the current gp_est that fillcw can increase the b/w too?"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), OID_AUTO, "max_pace_over", CTLFLAG_RW, @@ -1106,6 +1039,11 @@ rack_init_sysctls(void) OID_AUTO, "limit_wsrtt", CTLFLAG_RW, &rack_limit_time_with_srtt, 0, "Do we limit pacing time based on srtt"); + SYSCTL_ADD_S32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_pacing), + OID_AUTO, "init_win", CTLFLAG_RW, + &rack_default_init_window, 0, + "Do we have a rack initial window 0 = system default"); SYSCTL_ADD_U16(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), OID_AUTO, "gp_per_ss", CTLFLAG_RW, @@ -1141,11 +1079,6 @@ rack_init_sysctls(void) OID_AUTO, "rate_cap", CTLFLAG_RW, &rack_bw_rate_cap, 0, "If set we apply this value to the absolute rate cap used by pacing"); - SYSCTL_ADD_U64(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_pacing), - OID_AUTO, "fillcw_cap", CTLFLAG_RW, - &rack_fillcw_bw_cap, 3750000, - "Do we have an absolute cap on the amount of b/w fillcw can specify (0 = no)?"); SYSCTL_ADD_U8(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_sysctl_root), OID_AUTO, "req_measure_cnt", CTLFLAG_RW, @@ -1384,6 +1317,11 @@ rack_init_sysctls(void) OID_AUTO, "send_oldest", CTLFLAG_RW, &rack_always_send_oldest, 0, "Should we always send the oldest TLP and RACK-TLP"); + SYSCTL_ADD_S32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_tlp), + OID_AUTO, "rack_tlimit", CTLFLAG_RW, + &rack_limited_retran, 0, + "How many times can a rack timeout drive out sends"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_tlp), OID_AUTO, "tlp_cwnd_flag", CTLFLAG_RW, @@ -1417,26 +1355,6 @@ rack_init_sysctls(void) "timers", CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "Timer related controls"); - SYSCTL_ADD_U8(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_timers), - OID_AUTO, "reset_ssth_rec_rto", CTLFLAG_RW, - &rack_ssthresh_rest_rto_rec, 0, - "When doing recovery -> rto -> recovery do we reset SSthresh?"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_timers), - OID_AUTO, "scoreboard_thresh", CTLFLAG_RW, - &rack_rxt_scoreboard_clear_thresh, 2, - "How many RTO's are allowed before we clear the scoreboard"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_timers), - OID_AUTO, "honor_hpts_min", CTLFLAG_RW, - &rack_honors_hpts_min_to, 1, - "Do rack pacing timers honor hpts min timeout"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_timers), - OID_AUTO, "hpts_max_reduce", CTLFLAG_RW, - &rack_max_reduce, 10, - "Max percentage we will reduce slot by for pacing when we are behind"); SYSCTL_ADD_U32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_timers), OID_AUTO, "persmin", CTLFLAG_RW, @@ -1516,6 +1434,11 @@ rack_init_sysctls(void) "features", CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "Feature controls"); + SYSCTL_ADD_U64(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_features), + OID_AUTO, "rxt_clamp_thresh", CTLFLAG_RW, + &rack_rxt_clamp_thresh, 0, + "Bit encoded clamping setup bits CCCC CCCCC UUUU UULF PPPP PPPP PPPP PPPP"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_features), OID_AUTO, "hybrid_set_maxseg", CTLFLAG_RW, @@ -1551,53 +1474,6 @@ rack_init_sysctls(void) OID_AUTO, "hystartplusplus", CTLFLAG_RW, &rack_do_hystart, 0, "Should RACK enable HyStart++ on connections?"); - /* Policer detection */ - rack_policing = SYSCTL_ADD_NODE(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_sysctl_root), - OID_AUTO, - "policing", - CTLFLAG_RW | CTLFLAG_MPSAFE, 0, - "policer detection"); - SYSCTL_ADD_U16(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_policing), - OID_AUTO, "rxt_thresh", CTLFLAG_RW, - &rack_policer_rxt_thresh, 0, - "Percentage of retransmits we need to be a possible policer (499 = 49.9 percent)"); - SYSCTL_ADD_U8(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_policing), - OID_AUTO, "avg_thresh", CTLFLAG_RW, - &rack_policer_avg_thresh, 0, - "What threshold of average retransmits needed to recover a lost packet (1 - 169 aka 21 = 2.1)?"); - SYSCTL_ADD_U8(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_policing), - OID_AUTO, "med_thresh", CTLFLAG_RW, - &rack_policer_med_thresh, 0, - "What threshold of Median retransmits needed to recover a lost packet (1 - 16)?"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_policing), - OID_AUTO, "data_thresh", CTLFLAG_RW, - &rack_policer_data_thresh, 64000, - "How many bytes must have gotten through before we can start doing policer detection?"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_policing), - OID_AUTO, "bwcomp", CTLFLAG_RW, - &rack_policing_do_bw_comp, 1, - "Do we raise up low b/w so that at least pace_max_seg can be sent in the srtt?"); - SYSCTL_ADD_U8(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_policing), - OID_AUTO, "recmss", CTLFLAG_RW, - &rack_req_del_mss, 18, - "How many MSS must be delivered during recovery to engage policer detection?"); - SYSCTL_ADD_U16(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_policing), - OID_AUTO, "res_div", CTLFLAG_RW, - &rack_policer_bucket_reserve, 20, - "What percentage is reserved in the policer bucket?"); - SYSCTL_ADD_U64(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_policing), - OID_AUTO, "min_comp_bw", CTLFLAG_RW, - &rack_pol_min_bw, 125000, - "Do we have a min b/w for b/w compensation (0 = no)?"); /* Misc rack controls */ rack_misc = SYSCTL_ADD_NODE(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_sysctl_root), @@ -1702,8 +1578,31 @@ rack_init_sysctls(void) OID_AUTO, "autoscale", CTLFLAG_RW, &rack_autosndbuf_inc, 20, "What percentage should rack scale up its snd buffer by?"); - - + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_misc), + OID_AUTO, "rnds_for_rxt_clamp", CTLFLAG_RW, + &rack_rxt_min_rnds, 10, + "Number of rounds needed between RTT clamps due to high loss rates"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_misc), + OID_AUTO, "rnds_for_unclamp", CTLFLAG_RW, + &rack_unclamp_round_thresh, 100, + "Number of rounds needed with no loss to unclamp"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_misc), + OID_AUTO, "rxt_threshs_for_unclamp", CTLFLAG_RW, + &rack_unclamp_rxt_thresh, 5, + "Percentage of retransmits we need to be under to unclamp (5 = .5 percent)\n"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_misc), + OID_AUTO, "clamp_ss_upper", CTLFLAG_RW, + &rack_clamp_ss_upper, 110, + "Clamp percentage ceiling in SS?"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_misc), + OID_AUTO, "clamp_ca_upper", CTLFLAG_RW, + &rack_clamp_ca_upper, 110, + "Clamp percentage ceiling in CA?"); /* Sack Attacker detection stuff */ SYSCTL_ADD_U32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_attack), @@ -1880,13 +1779,6 @@ rack_init_sysctls(void) OID_AUTO, "alloc_hot", CTLFLAG_RD, &rack_hot_alloc, "Total allocations from the top of our list"); - tcp_policer_detected = counter_u64_alloc(M_WAITOK); - SYSCTL_ADD_COUNTER_U64(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_counters), - OID_AUTO, "policer_detected", CTLFLAG_RD, - &tcp_policer_detected, - "Total policer_detections"); - rack_to_alloc = counter_u64_alloc(M_WAITOK); SYSCTL_ADD_COUNTER_U64(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_counters), @@ -2065,8 +1957,17 @@ rack_init_sysctls(void) static uint32_t rc_init_window(struct tcp_rack *rack) { - return (tcp_compute_initwnd(tcp_maxseg(rack->rc_tp))); + uint32_t win; + if (rack->rc_init_win == 0) { + /* + * Nothing set by the user, use the system stack + * default. + */ + return (tcp_compute_initwnd(tcp_maxseg(rack->rc_tp))); + } + win = ctf_fixed_maxseg(rack->rc_tp) * rack->rc_init_win; + return (win); } static uint64_t @@ -2170,7 +2071,6 @@ rack_log_hybrid_bw(struct tcp_rack *rack, uint32_t seq, uint64_t cbw, uint64_t t off = (uint64_t)(cur) - (uint64_t)(&rack->rc_tp->t_tcpreq_info[0]); log.u_bbr.bbr_substate = (uint8_t)(off / sizeof(struct tcp_sendfile_track)); #endif - log.u_bbr.inhpts = 1; log.u_bbr.flex4 = (uint32_t)(rack->rc_tp->t_sndbytes - cur->sent_at_fs); log.u_bbr.flex5 = (uint32_t)(rack->rc_tp->t_snd_rxt_bytes - cur->rxt_at_fs); log.u_bbr.flex7 = (uint16_t)cur->hybrid_flags; @@ -2216,24 +2116,9 @@ rack_log_hybrid_sends(struct tcp_rack *rack, struct tcp_sendfile_track *cur, int memset(&log, 0, sizeof(log)); log.u_bbr.timeStamp = tcp_get_usecs(&tv); + log.u_bbr.cur_del_rate = rack->rc_tp->t_sndbytes; log.u_bbr.delRate = cur->sent_at_fs; - - if ((cur->flags & TCP_TRK_TRACK_FLG_LSND) == 0) { - /* - * We did not get a new Rules Applied to set so - * no overlapping send occured, this means the - * current byte counts are correct. - */ - log.u_bbr.cur_del_rate = rack->rc_tp->t_sndbytes; - log.u_bbr.rttProp = rack->rc_tp->t_snd_rxt_bytes; - } else { - /* - * Overlapping send case, we switched to a new - * send and did a rules applied. - */ - log.u_bbr.cur_del_rate = cur->sent_at_ls; - log.u_bbr.rttProp = cur->rxt_at_ls; - } + log.u_bbr.rttProp = rack->rc_tp->t_snd_rxt_bytes; log.u_bbr.bw_inuse = cur->rxt_at_fs; log.u_bbr.cwnd_gain = line; off = (uint64_t)(cur) - (uint64_t)(&rack->rc_tp->t_tcpreq_info[0]); @@ -2253,7 +2138,6 @@ rack_log_hybrid_sends(struct tcp_rack *rack, struct tcp_sendfile_track *cur, int log.u_bbr.lt_epoch = (uint32_t)((cur->timestamp >> 32) & 0x00000000ffffffff); /* now set all the flags in */ log.u_bbr.pkts_out = cur->hybrid_flags; - log.u_bbr.lost = cur->playout_ms; log.u_bbr.flex6 = cur->flags; /* * Last send time = note we do not distinguish cases @@ -2262,20 +2146,6 @@ rack_log_hybrid_sends(struct tcp_rack *rack, struct tcp_sendfile_track *cur, int */ log.u_bbr.pkt_epoch = (uint32_t)(rack->r_ctl.last_tmit_time_acked & 0x00000000ffffffff); log.u_bbr.flex5 = (uint32_t)((rack->r_ctl.last_tmit_time_acked >> 32) & 0x00000000ffffffff); - /* - * Compose bbr_state to be a bit wise 0000ADHF - * where A is the always_pace flag - * where D is the dgp_on flag - * where H is the hybrid_mode on flag - * where F is the use_fixed_rate flag. - */ - log.u_bbr.bbr_state = rack->rc_always_pace; - log.u_bbr.bbr_state <<= 1; - log.u_bbr.bbr_state |= rack->dgp_on; - log.u_bbr.bbr_state <<= 1; - log.u_bbr.bbr_state |= rack->rc_hybrid_mode; - log.u_bbr.bbr_state <<= 1; - log.u_bbr.bbr_state |= rack->use_fixed_rate; log.u_bbr.flex8 = HYBRID_LOG_SENT_LOST; tcp_log_event(rack->rc_tp, NULL, @@ -2429,7 +2299,6 @@ normal_ratecap: #ifdef TCP_REQUEST_TRK if (rack->rc_hybrid_mode && rack->rc_catch_up && - (rack->r_ctl.rc_last_sft != NULL) && (rack->r_ctl.rc_last_sft->hybrid_flags & TCP_HYBRID_PACING_S_MSS) && (rack_hybrid_allow_set_maxseg == 1) && ((rack->r_ctl.rc_last_sft->hybrid_flags & TCP_HYBRID_PACING_SETMSS) == 0)) { @@ -2469,10 +2338,7 @@ rack_get_gp_est(struct tcp_rack *rack) */ uint64_t srtt; - if (rack->dis_lt_bw == 1) - lt_bw = 0; - else - lt_bw = rack_get_lt_bw(rack); + lt_bw = rack_get_lt_bw(rack); if (lt_bw) { /* * No goodput bw but a long-term b/w does exist @@ -2508,22 +2374,19 @@ rack_get_gp_est(struct tcp_rack *rack) /* Still doing initial average must calculate */ bw = rack->r_ctl.gp_bw / max(rack->r_ctl.num_measurements, 1); } - if (rack->dis_lt_bw) { - /* We are not using lt-bw */ - ret_bw = bw; - goto compensate; - } lt_bw = rack_get_lt_bw(rack); if (lt_bw == 0) { /* If we don't have one then equate it to the gp_bw */ lt_bw = rack->r_ctl.gp_bw; } - if (rack->use_lesser_lt_bw) { + if ((rack->r_cwnd_was_clamped == 1) && (rack->r_clamped_gets_lower > 0)){ + /* if clamped take the lowest */ if (lt_bw < bw) ret_bw = lt_bw; else ret_bw = bw; } else { + /* If not set for clamped to get lowest, take the highest */ if (lt_bw > bw) ret_bw = lt_bw; else @@ -2624,8 +2487,6 @@ rack_log_dsack_event(struct tcp_rack *rack, uint8_t mod, uint32_t flex4, uint32_ log.u_bbr.flex7 = rack->r_ctl.dsack_persist; log.u_bbr.flex8 = mod; log.u_bbr.timeStamp = tcp_get_usecs(&tv); - log.u_bbr.epoch = rack->r_ctl.current_round; - log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2674,8 +2535,6 @@ rack_log_hdwr_pacing(struct tcp_rack *rack, else log.u_bbr.cur_del_rate = 0; log.u_bbr.rttProp = rack->r_ctl.last_hw_bw_req; - log.u_bbr.epoch = rack->r_ctl.current_round; - log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2693,9 +2552,28 @@ rack_get_output_bw(struct tcp_rack *rack, uint64_t bw, struct rack_sendmap *rsm, uint64_t bw_est, high_rate; uint64_t gain; - gain = (uint64_t)rack_get_output_gain(rack, rsm); - bw_est = bw * gain; - bw_est /= (uint64_t)100; + if ((rack->r_pacing_discount == 0) || + (rack_full_buffer_discount == 0)) { + /* + * No buffer level based discount from client buffer + * level is enabled or the feature is disabled. + */ + gain = (uint64_t)rack_get_output_gain(rack, rsm); + bw_est = bw * gain; + bw_est /= (uint64_t)100; + } else { + /* + * We have a discount in place apply it with + * just a 100% gain (we get no boost if the buffer + * is full). + */ + uint64_t discount; + + discount = bw * (uint64_t)(rack_full_buffer_discount * rack->r_ctl.pacing_discount_amm); + discount /= 100; + /* What %% of the b/w do we discount */ + bw_est = bw - discount; + } /* Never fall below the minimum (def 64kbps) */ if (bw_est < RACK_MIN_BW) bw_est = RACK_MIN_BW; @@ -2781,8 +2659,6 @@ log_anyway: log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; - log.u_bbr.epoch = rack->r_ctl.current_round; - log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2822,10 +2698,6 @@ rack_log_to_start(struct tcp_rack *rack, uint32_t cts, uint32_t to, int32_t slot log.u_bbr.lt_epoch = rack->rc_tp->t_rxtshift; log.u_bbr.lost = rack_rto_min; log.u_bbr.epoch = rack->r_ctl.roundends; - log.u_bbr.bw_inuse = rack->r_ctl.current_round; - log.u_bbr.bw_inuse <<= 32; - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; - log.u_bbr.applimited = rack->rc_tp->t_flags2; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2859,9 +2731,6 @@ rack_log_to_event(struct tcp_rack *rack, int32_t to_num, struct rack_sendmap *rs log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; - log.u_bbr.bw_inuse = rack->r_ctl.current_round; - log.u_bbr.bw_inuse <<= 32; - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2911,9 +2780,6 @@ rack_log_map_chg(struct tcpcb *tp, struct tcp_rack *rack, log.u_bbr.lost = 0; else log.u_bbr.lost = rack->r_ctl.rc_prr_sndcnt; - log.u_bbr.bw_inuse = rack->r_ctl.current_round; - log.u_bbr.bw_inuse <<= 32; - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -3061,9 +2927,6 @@ rack_log_rtt_sample_calc(struct tcp_rack *rack, uint32_t rtt, uint32_t send_time log.u_bbr.flex4 = where; log.u_bbr.flex7 = 2; log.u_bbr.timeStamp = tcp_get_usecs(&tv); - log.u_bbr.bw_inuse = rack->r_ctl.current_round; - log.u_bbr.bw_inuse <<= 32; - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -3076,7 +2939,7 @@ rack_log_rtt_sample_calc(struct tcp_rack *rack, uint32_t rtt, uint32_t send_time static void rack_log_rtt_sendmap(struct tcp_rack *rack, uint32_t idx, uint64_t tsv, uint32_t tsecho) { - if (rack_verbose_logging && tcp_bblogging_on(rack->rc_tp)) { + if (tcp_bblogging_on(rack->rc_tp)) { union tcp_log_stackspecific log; struct timeval tv; @@ -3088,9 +2951,6 @@ rack_log_rtt_sendmap(struct tcp_rack *rack, uint32_t idx, uint64_t tsv, uint32_t log.u_bbr.flex7 = 3; log.u_bbr.rttProp = tsv; log.u_bbr.timeStamp = tcp_get_usecs(&tv); - log.u_bbr.bw_inuse = rack->r_ctl.current_round; - log.u_bbr.bw_inuse <<= 32; - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -3119,9 +2979,6 @@ rack_log_progress_event(struct tcp_rack *rack, struct tcpcb *tp, uint32_t tick, log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; - log.u_bbr.bw_inuse = rack->r_ctl.current_round; - log.u_bbr.bw_inuse <<= 32; - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -3194,13 +3051,6 @@ rack_log_doseg_done(struct tcp_rack *rack, uint32_t cts, int32_t nxt_pkt, int32_ log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; - log.u_bbr.bw_inuse = rack->r_ctl.current_round; - log.u_bbr.bw_inuse <<= 32; - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; - log.u_bbr.epoch = rack->rc_inp->inp_socket->so_snd.sb_hiwat; - log.u_bbr.lt_epoch = rack->rc_inp->inp_socket->so_rcv.sb_hiwat; - log.u_bbr.lost = rack->rc_tp->t_srtt; - log.u_bbr.pkt_epoch = rack->rc_tp->rfbuf_cnt; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -3262,9 +3112,6 @@ rack_log_type_just_return(struct tcp_rack *rack, uint32_t cts, uint32_t tlen, ui log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; log.u_bbr.cwnd_gain = rack->rc_has_collapsed; - log.u_bbr.bw_inuse = rack->r_ctl.current_round; - log.u_bbr.bw_inuse <<= 32; - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -3299,9 +3146,6 @@ rack_log_to_cancel(struct tcp_rack *rack, int32_t hpts_removed, int line, uint32 log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; - log.u_bbr.bw_inuse = rack->r_ctl.current_round; - log.u_bbr.bw_inuse <<= 32; - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -3470,7 +3314,6 @@ rack_counter_destroy(void) counter_u64_free(rack_saw_enobuf_hw); counter_u64_free(rack_saw_enetunreach); counter_u64_free(rack_hot_alloc); - counter_u64_free(tcp_policer_detected); counter_u64_free(rack_to_alloc); counter_u64_free(rack_to_alloc_hard); counter_u64_free(rack_to_alloc_emerg); @@ -3632,8 +3475,6 @@ rack_free(struct tcp_rack *rack, struct rack_sendmap *rsm) rack->r_ctl.rc_num_split_allocs--; } if (rsm == rack->r_ctl.rc_first_appl) { - rack->r_ctl.cleared_app_ack_seq = rsm->r_start + (rsm->r_end - rsm->r_start); - rack->r_ctl.cleared_app_ack = 1; if (rack->r_ctl.rc_app_limited_cnt == 0) rack->r_ctl.rc_first_appl = NULL; else @@ -3649,7 +3490,7 @@ rack_free(struct tcp_rack *rack, struct rack_sendmap *rsm) rack->r_ctl.rc_sacklast = NULL; memset(rsm, 0, sizeof(struct rack_sendmap)); /* Make sure we are not going to overrun our count limit of 0xff */ - if ((rack->rc_free_cnt + 1) > RACK_FREE_CNT_MAX) { + if ((rack->rc_free_cnt + 1) > 0xff) { rack_free_trim(rack); } TAILQ_INSERT_HEAD(&rack->r_ctl.rc_free, rsm, r_tnext); @@ -3965,8 +3806,6 @@ rack_increase_bw_mul(struct tcp_rack *rack, int timely_says, uint64_t cur_bw, ui logged = 0; - if (rack->rc_skip_timely) - return; if (override) { /* * override is passed when we are @@ -4137,8 +3976,6 @@ rack_decrease_bw_mul(struct tcp_rack *rack, int timely_says, uint32_t rtt, int32 uint64_t logvar, logvar2, logvar3; uint32_t logged, new_per, ss_red, ca_red, rec_red, alt, val; - if (rack->rc_skip_timely) - return; if (rack->rc_gp_incr) { /* Turn off increment counting */ rack->rc_gp_incr = 0; @@ -4340,7 +4177,6 @@ rack_enter_probertt(struct tcp_rack *rack, uint32_t us_cts) */ uint32_t segsiz; - rack->r_ctl.rc_lower_rtt_us_cts = us_cts; if (rack->rc_gp_dyn_mul == 0) return; @@ -4367,6 +4203,7 @@ rack_enter_probertt(struct tcp_rack *rack, uint32_t us_cts) rack->r_ctl.rc_pace_min_segs); rack->in_probe_rtt = 1; rack->measure_saw_probe_rtt = 1; + rack->r_ctl.rc_lower_rtt_us_cts = us_cts; rack->r_ctl.rc_time_probertt_starts = 0; rack->r_ctl.rc_entry_gp_rtt = rack->r_ctl.rc_gp_srtt; if (rack_probertt_use_min_rtt_entry) @@ -4550,7 +4387,6 @@ static void rack_check_probe_rtt(struct tcp_rack *rack, uint32_t us_cts) { /* Check in on probe-rtt */ - if (rack->rc_gp_filled == 0) { /* We do not do p-rtt unless we have gp measurements */ return; @@ -4595,10 +4431,7 @@ no_exit: if (calc) { /* Maybe */ calc *= rack_per_of_gp_probertt_reduce; - if (calc > rack_per_of_gp_probertt) - rack->r_ctl.rack_per_of_gp_probertt = rack_per_of_gp_lowthresh; - else - rack->r_ctl.rack_per_of_gp_probertt = rack_per_of_gp_probertt - calc; + rack->r_ctl.rack_per_of_gp_probertt = rack_per_of_gp_probertt - calc; /* Limit it too */ if (rack->r_ctl.rack_per_of_gp_probertt < rack_per_of_gp_lowthresh) rack->r_ctl.rack_per_of_gp_probertt = rack_per_of_gp_lowthresh; @@ -4639,9 +4472,7 @@ no_exit: rack_exit_probertt(rack, us_cts); } - } else if ((rack->rc_skip_timely == 0) && - (TSTMP_GT(us_cts, rack->r_ctl.rc_lower_rtt_us_cts)) && *** 6977 LINES SKIPPED *** From nobody Mon Mar 11 20:33:04 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtpPY46d0z5DfkY; Mon, 11 Mar 2024 20:33:05 +0000 (UTC) (envelope-from brooks@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TtpPY3YWSz570K; Mon, 11 Mar 2024 20:33:05 +0000 (UTC) (envelope-from brooks@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710189185; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=aTLEbkb9DP4D//CzgZOV9iHsj/mwIolb7kdjTUQqMKo=; b=vzO1xUOgAOnbYasy+13GWnpk+gcaa5R/G7lDpebCy622+Ma5nx0qnB7xr9mU4049ybYooq Yjdb2e2dCbNkugNLqunONL3EK53s0GEsxsRR8tcrOZxzDQy6N1hbiRJKomLprH+8RALYPy Eiugg9tUiTQO6bSpafd5bCsW6nmBIA+S1fDHnmu1LqfyrRx33kregePi3ah52k1r/OVTbI sLRN4H9qDzXiqlOoDCjT+j2oE+eFw+MR7u3F77pxnheKFeIakWmVqKMzZfzZR1/3eaBuDy rEn74Z+etyJhJvxzjPrEQ7YyB7nLghPXSaW+OexjXZ3aFkSEexXOjJ0suQEh7A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710189185; a=rsa-sha256; cv=none; b=Trz1yIOKZjA/chiVfZ6RAXgsrkxCbSFKvvVLz7q2hafQ76pf3n4eaIUjttLMZo7tv6evWC u8JY3g+yFZLaDB2BZslRDcJE5zKxoQbTucCgxg2zdcwkDeFPyuNjSO5mBLLYN3M6CXZ128 68TbCtV6pD/GdXuCbhJ/oqZ20iV8SraZ6YwppFeK8TDDJKusZnrYVnU3/xKnc5zYbDQ1u7 MnW1S1ad8m2mx23KyRJcF07i3rE9o8oG3oN2Ke6pqf1v2XUy3Lp2/vATLpyxqXu5v7Ddzc 7k0TvqhmvGYV8FgaZ8Y4j46b9Efpx3QOGoEBTSTPxnT8VIsjt4y2ieFKS+p4+Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710189185; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=aTLEbkb9DP4D//CzgZOV9iHsj/mwIolb7kdjTUQqMKo=; b=GNlMIx0cisyxYkX4HDm6G4GprjwT5UMvfFTwXwXD4aRVZ+tHZwCMfyosb9eHEZzYvlu3Kq CQ90OwMo3KpEJZarWwotQn4AFFNnPvvaYzAWCfUskn7s5W7rZhPeGXPA7QY0N6kQ2NfPJ0 Ylj/3IOc6d8R9sM8INfxcBIm0eQVHc0G+NGqNCWEKiFvvTUzDjNO2UxbzXVNnp2LfyFq9w m23QwmJTBABAyJNwKWdnvjoKoNyMNuOo0IkYsMCv2LrW1YwoBXRkWq1orquT99qHhEeGnO XyasNnd7X3ucyrZdUbaouKHjsUYNQStGS5qRkrPbuJvLRBe1skE7G/wpSztX8g== Received: from spindle.one-eyed-alien.net (spindle.one-eyed-alien.net [199.48.129.229]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: brooks/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4TtpPY2ks8z1DQT; Mon, 11 Mar 2024 20:33:05 +0000 (UTC) (envelope-from brooks@freebsd.org) Received: by spindle.one-eyed-alien.net (Postfix, from userid 3001) id D37533C019B; Mon, 11 Mar 2024 20:33:04 +0000 (UTC) Date: Mon, 11 Mar 2024 20:33:04 +0000 From: Brooks Davis To: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: c112243f6bd3 - main - Revert "Update to bring the rack stack with all its fixes in." Message-ID: References: <202403112028.42BKSrqq024810@gitrepo.freebsd.org> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202403112028.42BKSrqq024810@gitrepo.freebsd.org> Beyond the breakage, due to the empty rack_pcm.c, a casual review of the diff in git showed several whitespace errors (spaces at EOL or before tabs), and the Differential Revision line was misformatted causing phabricator not to process the commit properly. All this lead me to deem it best to revert to a fresh commit can be done correctly. -- Brooks On Mon, Mar 11, 2024 at 08:28:53PM +0000, Brooks Davis wrote: > The branch main has been updated by brooks: > > URL: https://cgit.FreeBSD.org/src/commit/?id=c112243f6bd3738ab1ca0fc56ba1accef66c9d7a > > commit c112243f6bd3738ab1ca0fc56ba1accef66c9d7a > Author: Brooks Davis > AuthorDate: 2024-03-11 20:15:20 +0000 > Commit: Brooks Davis > CommitDate: 2024-03-11 20:28:24 +0000 > > Revert "Update to bring the rack stack with all its fixes in." > > This commit was incomplete and breaks LINT kernels. The tree has been > broken for 8+ hours. > > This reverts commit f6d489f402c320f1a6eaa473491a0b8c3878113e. > --- > sys/modules/tcp/rack/Makefile | 2 +- > sys/netinet/tcp.h | 38 +- > sys/netinet/tcp_log_buf.h | 9 +- > sys/netinet/tcp_stacks/bbr.c | 4 +- > sys/netinet/tcp_stacks/rack.c | 4447 +++++++++------------------------- > sys/netinet/tcp_stacks/rack_pcm.c | 0 > sys/netinet/tcp_stacks/sack_filter.h | 5 - > sys/netinet/tcp_stacks/tailq_hash.c | 33 +- > sys/netinet/tcp_stacks/tailq_hash.h | 8 +- > sys/netinet/tcp_stacks/tcp_rack.h | 135 +- > sys/netinet/tcp_subr.c | 57 +- > sys/netinet/tcp_syncache.c | 5 +- > sys/netinet/tcp_usrreq.c | 7 - > sys/netinet/tcp_var.h | 12 +- > 14 files changed, 1173 insertions(+), 3589 deletions(-) > > diff --git a/sys/modules/tcp/rack/Makefile b/sys/modules/tcp/rack/Makefile > index d5f3ba170f68..c5bb20602337 100644 > --- a/sys/modules/tcp/rack/Makefile > +++ b/sys/modules/tcp/rack/Makefile > @@ -5,7 +5,7 @@ > > STACKNAME= rack > KMOD= tcp_${STACKNAME} > -SRCS= rack.c sack_filter.c rack_bbr_common.c tailq_hash.c rack_pcm.c > +SRCS= rack.c sack_filter.c rack_bbr_common.c tailq_hash.c > > SRCS+= opt_inet.h opt_inet6.h opt_ipsec.h > SRCS+= opt_kern_tls.h > diff --git a/sys/netinet/tcp.h b/sys/netinet/tcp.h > index a8259fa30a3a..f9e561f6ce35 100644 > --- a/sys/netinet/tcp.h > +++ b/sys/netinet/tcp.h > @@ -334,22 +334,9 @@ __tcp_set_flags(struct tcphdr *th, uint16_t flags) > #define TCP_RACK_PACING_DIVISOR 1146 /* Pacing divisor given to rate-limit code for burst sizing */ > #define TCP_RACK_PACE_MIN_SEG 1147 /* Pacing min seg size rack will use */ > #define TCP_RACK_DGP_IN_REC 1148 /* Do we use full DGP in recovery? */ > -#define TCP_POLICER_DETECT 1149 /* Do we apply a thresholds to rack to detect and compensate for policers? */ > -#define TCP_RXT_CLAMP TCP_POLICER_DETECT > +#define TCP_RXT_CLAMP 1149 /* Do we apply a threshold to rack so if excess rxt clamp cwnd? */ > #define TCP_HYBRID_PACING 1150 /* Hybrid pacing enablement */ > #define TCP_PACING_DND 1151 /* When pacing with rr_config=3 can sacks disturb us */ > -#define TCP_SS_EEXIT 1152 /* Do we do early exit from slowtart if no b/w growth */ > -#define TCP_DGP_UPPER_BOUNDS 1153 /* SS and CA upper bound in percentage */ > -#define TCP_NO_TIMELY 1154 /* Disable/enable Timely */ > -#define TCP_HONOR_HPTS_MIN 1155 /* Do we honor hpts min to */ > -#define TCP_REC_IS_DYN 1156 /* Do we allow timely to change recovery multiplier? */ > -#define TCP_SIDECHAN_DIS 1157 /* Disable/enable the side-channel */ > -#define TCP_FILLCW_RATE_CAP 1158 /* Set a cap for DGP's fillcw */ > -#define TCP_POLICER_MSS 1159 /* Policer MSS requirement */ > -#define TCP_STACK_SPEC_INFO 1160 /* Get stack specific information (if present) */ > -#define RACK_CSPR_IS_FCC 1161 > -#define TCP_GP_USE_LTBW 1162 /* how we use lt_bw 0=not, 1=min, 2=max */ > - > > /* Start of reserved space for third-party user-settable options. */ > #define TCP_VENDOR SO_VENDOR > @@ -460,7 +447,6 @@ struct tcp_info { > u_int32_t tcpi_rcv_adv; /* Peer advertised window */ > u_int32_t tcpi_dupacks; /* Consecutive dup ACKs recvd */ > > - u_int32_t tcpi_rttmin; /* Min observed RTT */ > /* Padding to grow without breaking ABI. */ > u_int32_t __tcpi_pad[14]; /* Padding. */ > }; > @@ -477,20 +463,6 @@ struct tcp_fastopen { > > #define TCP_FUNCTION_NAME_LEN_MAX 32 > > -struct stack_specific_info { > - char stack_name[TCP_FUNCTION_NAME_LEN_MAX]; > - uint64_t policer_last_bw; /* Only valid if detection enabled and policer detected */ > - uint64_t bytes_transmitted; > - uint64_t bytes_retransmitted; > - uint32_t policer_detection_enabled: 1, > - policer_detected : 1, /* transport thinks a policer is on path */ > - highly_buffered : 1, /* transport considers the path highly buffered */ > - spare : 29; > - uint32_t policer_bucket_size; /* Only valid if detection enabled and policer detected */ > - uint32_t current_round; > - uint32_t _rack_i_pad[18]; > -}; > - > struct tcp_function_set { > char function_set_name[TCP_FUNCTION_NAME_LEN_MAX]; > uint32_t pcbcnt; > @@ -516,7 +488,6 @@ struct tcp_snd_req { > uint64_t start; > uint64_t end; > uint32_t flags; > - uint32_t playout_ms; > }; > > union tcp_log_userdata { > @@ -547,12 +518,9 @@ struct tcp_log_user { > #define TCP_HYBRID_PACING_H_MS 0x0008 /* A client hint for maxseg is present */ > #define TCP_HYBRID_PACING_ENABLE 0x0010 /* We are enabling hybrid pacing else disable */ > #define TCP_HYBRID_PACING_S_MSS 0x0020 /* Clent wants us to set the mss overriding gp est in CU */ > -#define TCP_HAS_PLAYOUT_MS 0x0040 /* The client included the chunk playout milliseconds: deprecate */ > -/* the below are internal only flags */ > -#define TCP_HYBRID_PACING_USER_MASK 0x0FFF /* Non-internal flags mask */ > -#define TCP_HYBRID_PACING_SETMSS 0x1000 /* Internal flag that tells us we set the mss on this entry */ > +#define TCP_HYBRID_PACING_SETMSS 0x1000 /* Internal flag that tellsus we set the mss on this entry */ > #define TCP_HYBRID_PACING_WASSET 0x2000 /* We init to this to know if a hybrid command was issued */ > -#define TCP_HYBRID_PACING_SENDTIME 0x4000 /* Duplicate tm to last, use sendtime for catch up mode */ > + > > struct tcp_hybrid_req { > struct tcp_snd_req req; > diff --git a/sys/netinet/tcp_log_buf.h b/sys/netinet/tcp_log_buf.h > index 2e91d9cbdf3c..1f5b7cf9b54f 100644 > --- a/sys/netinet/tcp_log_buf.h > +++ b/sys/netinet/tcp_log_buf.h > @@ -267,9 +267,7 @@ enum tcp_log_events { > TCP_RACK_TP_TRIGGERED, /* A rack tracepoint is triggered 68 */ > TCP_HYBRID_PACING_LOG, /* Hybrid pacing log 69 */ > TCP_LOG_PRU, /* TCP protocol user request 70 */ > - TCP_POLICER_DET, /* TCP Policer detectionn 71 */ > - TCP_PCM_MEASURE, /* TCP Path Capacity Measurement 72 */ > - TCP_LOG_END /* End (keep at end) 72 */ > + TCP_LOG_END /* End (keep at end) 71 */ > }; > > enum tcp_log_states { > @@ -373,11 +371,10 @@ struct tcp_log_dev_log_queue { > #define TCP_TP_COLLAPSED_RXT 0x00000004 /* When we actually retransmit a collapsed window rsm */ > #define TCP_TP_REQ_LOG_FAIL 0x00000005 /* We tried to allocate a Request log but had no space */ > #define TCP_TP_RESET_RCV 0x00000006 /* Triggers when we receive a RST */ > -#define TCP_TP_POLICER_DET 0x00000007 /* When we detect a policer */ > -#define TCP_TP_EXCESS_RXT TCP_TP_POLICER_DET /* alias */ > +#define TCP_TP_EXCESS_RXT 0x00000007 /* When we get excess RXT's clamping the cwnd */ > #define TCP_TP_SAD_TRIGGERED 0x00000008 /* Sack Attack Detection triggers */ > + > #define TCP_TP_SAD_SUSPECT 0x0000000a /* A sack has supicious information in it */ > -#define TCP_TP_PACED_BOTTOM 0x0000000b /* We have paced at the bottom */ > > #ifdef _KERNEL > > diff --git a/sys/netinet/tcp_stacks/bbr.c b/sys/netinet/tcp_stacks/bbr.c > index 934b35bd22d7..931beba7a262 100644 > --- a/sys/netinet/tcp_stacks/bbr.c > +++ b/sys/netinet/tcp_stacks/bbr.c > @@ -11529,9 +11529,7 @@ bbr_do_segment_nounlock(struct tcpcb *tp, struct mbuf *m, struct tcphdr *th, > bbr_set_pktepoch(bbr, cts, __LINE__); > bbr_check_bbr_for_state(bbr, cts, __LINE__, (bbr->r_ctl.rc_lost - lost)); > if (nxt_pkt == 0) { > - if ((bbr->r_wanted_output != 0) || > - (tp->t_flags & TF_ACKNOW)) { > - > + if (bbr->r_wanted_output != 0) { > bbr->rc_output_starts_timer = 0; > did_out = 1; > if (tcp_output(tp) < 0) > diff --git a/sys/netinet/tcp_stacks/rack.c b/sys/netinet/tcp_stacks/rack.c > index 1fe07fa8d641..49d946dbb63b 100644 > --- a/sys/netinet/tcp_stacks/rack.c > +++ b/sys/netinet/tcp_stacks/rack.c > @@ -142,12 +142,9 @@ VNET_DECLARE(uint32_t, newreno_beta_ecn); > #define V_newreno_beta VNET(newreno_beta) > #define V_newreno_beta_ecn VNET(newreno_beta_ecn) > > -#define M_TCPFSB __CONCAT(M_TCPFSB, STACKNAME) > -#define M_TCPDO __CONCAT(M_TCPDO, STACKNAME) > > -MALLOC_DEFINE(M_TCPFSB, "tcp_fsb_" __XSTRING(STACKNAME), "TCP fast send block"); > -MALLOC_DEFINE(M_TCPDO, "tcp_do_" __XSTRING(STACKNAME), "TCP deferred options"); > -MALLOC_DEFINE(M_TCPPCM, "tcp_pcm_" __XSTRING(STACKNAME), "TCP PCM measurement information"); > +MALLOC_DEFINE(M_TCPFSB, "tcp_fsb", "TCP fast send block"); > +MALLOC_DEFINE(M_TCPDO, "tcp_do", "TCP deferred options"); > > struct sysctl_ctx_list rack_sysctl_ctx; > struct sysctl_oid *rack_sysctl_root; > @@ -193,24 +190,12 @@ static int32_t rack_tlp_use_greater = 1; > static int32_t rack_reorder_thresh = 2; > static int32_t rack_reorder_fade = 60000000; /* 0 - never fade, def 60,000,000 > * - 60 seconds */ > -static uint16_t rack_policer_rxt_thresh= 0; /* 499 = 49.9%, 0 is off */ > -static uint8_t rack_policer_avg_thresh = 0; /* 3.2 */ > -static uint8_t rack_policer_med_thresh = 0; /* 1 - 16 */ > -static uint16_t rack_policer_bucket_reserve = 20; /* How much % is reserved in the bucket */ > -static uint64_t rack_pol_min_bw = 125000; /* 1mbps in Bytes per sec */ > -static uint32_t rack_policer_data_thresh = 64000; /* 64,000 bytes must be sent before we engage */ > -static uint32_t rack_policing_do_bw_comp = 1; > -static uint32_t rack_pcm_every_n_rounds = 100; > -static uint32_t rack_pcm_blast = 0; > -static uint32_t rack_pcm_is_enabled = 1; > -static uint8_t rack_req_del_mss = 18; /* How many segments need to be sent in a recovery episode to do policer_detection */ > -static uint8_t rack_ssthresh_rest_rto_rec = 0; /* Do we restore ssthresh when we have rec -> rto -> rec */ > - > -static uint32_t rack_gp_gain_req = 1200; /* Amount percent wise required to gain to record a round has "gaining" */ > -static uint32_t rack_rnd_cnt_req = 0x10005; /* Default number of rounds if we are below rack_gp_gain_req where we exit ss */ > - > - > -static int32_t rack_rxt_scoreboard_clear_thresh = 2; > +static uint32_t rack_clamp_ss_upper = 110; > +static uint32_t rack_clamp_ca_upper = 105; > +static uint32_t rack_rxt_min_rnds = 10; /* Min rounds if drastic rxt clamp is in place */ > +static uint32_t rack_unclamp_round_thresh = 100; /* number of perfect rounds before we unclamp */ > +static uint32_t rack_unclamp_rxt_thresh = 5; /* .5% and under */ > +static uint64_t rack_rxt_clamp_thresh = 0; /* Do we do the rxt clamp thing */ > static int32_t rack_dnd_default = 0; /* For rr_conf = 3, what is the default for dnd */ > static int32_t rack_rxt_controls = 0; > static int32_t rack_fill_cw_state = 0; > @@ -232,8 +217,9 @@ static int32_t rack_do_hystart = 0; > static int32_t rack_apply_rtt_with_reduced_conf = 0; > static int32_t rack_hibeta_setting = 0; > static int32_t rack_default_pacing_divisor = 250; > +static int32_t rack_uses_full_dgp_in_rec = 1; > static uint16_t rack_pacing_min_seg = 0; > -static int32_t rack_timely_off = 0; > + > > static uint32_t sad_seg_size_per = 800; /* 80.0 % */ > static int32_t rack_pkt_delay = 1000; > @@ -249,7 +235,7 @@ static int32_t rack_use_rsm_rfo = 1; > static int32_t rack_max_abc_post_recovery = 2; > static int32_t rack_client_low_buf = 0; > static int32_t rack_dsack_std_based = 0x3; /* bit field bit 1 sets rc_rack_tmr_std_based and bit 2 sets rc_rack_use_dsack */ > -static int32_t rack_bw_multipler = 0; /* Limit on fill cw's jump up to be this x gp_est */ > +static int32_t rack_bw_multipler = 2; /* Limit on fill cw's jump up to be this x gp_est */ > #ifdef TCP_ACCOUNTING > static int32_t rack_tcp_accounting = 0; > #endif > @@ -261,9 +247,8 @@ static int32_t use_rack_rr = 1; > static int32_t rack_non_rxt_use_cr = 0; /* does a non-rxt in recovery use the configured rate (ss/ca)? */ > static int32_t rack_persist_min = 250000; /* 250usec */ > static int32_t rack_persist_max = 2000000; /* 2 Second in usec's */ > -static int32_t rack_honors_hpts_min_to = 1; /* Do we honor the hpts minimum time out for pacing timers */ > -static uint32_t rack_max_reduce = 10; /* Percent we can reduce slot by */ > static int32_t rack_sack_not_required = 1; /* set to one to allow non-sack to use rack */ > +static int32_t rack_default_init_window = 0; /* Use system default */ > static int32_t rack_limit_time_with_srtt = 0; > static int32_t rack_autosndbuf_inc = 20; /* In percentage form */ > static int32_t rack_enobuf_hw_boost_mult = 0; /* How many times the hw rate we boost slot using time_between */ > @@ -297,6 +282,7 @@ static int32_t rack_rwnd_block_ends_measure = 0; > static int32_t rack_def_profile = 0; > > static int32_t rack_lower_cwnd_at_tlp = 0; > +static int32_t rack_limited_retran = 0; > static int32_t rack_always_send_oldest = 0; > static int32_t rack_tlp_threshold_use = TLP_USE_TWO_ONE; > > @@ -370,7 +356,6 @@ static int32_t rack_timely_no_stopping = 0; > static int32_t rack_down_raise_thresh = 100; > static int32_t rack_req_segs = 1; > static uint64_t rack_bw_rate_cap = 0; > -static uint64_t rack_fillcw_bw_cap = 3750000; /* Cap fillcw at 30Mbps */ > > > /* Rack specific counters */ > @@ -392,7 +377,6 @@ counter_u64_t rack_tlp_retran; > counter_u64_t rack_tlp_retran_bytes; > counter_u64_t rack_to_tot; > counter_u64_t rack_hot_alloc; > -counter_u64_t tcp_policer_detected; > counter_u64_t rack_to_alloc; > counter_u64_t rack_to_alloc_hard; > counter_u64_t rack_to_alloc_emerg; > @@ -456,7 +440,7 @@ rack_log_progress_event(struct tcp_rack *rack, struct tcpcb *tp, uint32_t tick, > static int > rack_process_ack(struct mbuf *m, struct tcphdr *th, > struct socket *so, struct tcpcb *tp, struct tcpopt *to, > - uint32_t tiwin, int32_t tlen, int32_t * ofia, int32_t thflags, int32_t * ret_val, int32_t orig_tlen); > + uint32_t tiwin, int32_t tlen, int32_t * ofia, int32_t thflags, int32_t * ret_val); > static int > rack_process_data(struct mbuf *m, struct tcphdr *th, > struct socket *so, struct tcpcb *tp, int32_t drop_hdrlen, int32_t tlen, > @@ -470,8 +454,6 @@ static struct rack_sendmap *rack_alloc_limit(struct tcp_rack *rack, > static struct rack_sendmap * > rack_check_recovery_mode(struct tcpcb *tp, > uint32_t tsused); > -static uint32_t > -rack_grab_rtt(struct tcpcb *tp, struct tcp_rack *rack); > static void > rack_cong_signal(struct tcpcb *tp, > uint32_t type, uint32_t ack, int ); > @@ -522,14 +504,13 @@ rack_log_ack(struct tcpcb *tp, struct tcpopt *to, > static void > rack_log_output(struct tcpcb *tp, struct tcpopt *to, int32_t len, > uint32_t seq_out, uint16_t th_flags, int32_t err, uint64_t ts, > - struct rack_sendmap *hintrsm, uint32_t add_flags, struct mbuf *s_mb, uint32_t s_moff, int hw_tls, int segsiz); > + struct rack_sendmap *hintrsm, uint16_t add_flags, struct mbuf *s_mb, uint32_t s_moff, int hw_tls, int segsiz); > > static uint64_t rack_get_gp_est(struct tcp_rack *rack); > > - > static void > rack_log_sack_passed(struct tcpcb *tp, struct tcp_rack *rack, > - struct rack_sendmap *rsm, uint32_t cts); > + struct rack_sendmap *rsm); > static void rack_log_to_event(struct tcp_rack *rack, int32_t to_num, struct rack_sendmap *rsm); > static int32_t rack_output(struct tcpcb *tp); > > @@ -545,10 +526,10 @@ static int32_t rack_stopall(struct tcpcb *tp); > static void rack_timer_cancel(struct tcpcb *tp, struct tcp_rack *rack, uint32_t cts, int line); > static uint32_t > rack_update_entry(struct tcpcb *tp, struct tcp_rack *rack, > - struct rack_sendmap *rsm, uint64_t ts, int32_t * lenp, uint32_t add_flag, int segsiz); > + struct rack_sendmap *rsm, uint64_t ts, int32_t * lenp, uint16_t add_flag, int segsiz); > static void > rack_update_rsm(struct tcpcb *tp, struct tcp_rack *rack, > - struct rack_sendmap *rsm, uint64_t ts, uint32_t add_flag, int segsiz); > + struct rack_sendmap *rsm, uint64_t ts, uint16_t add_flag, int segsiz); > static int > rack_update_rtt(struct tcpcb *tp, struct tcp_rack *rack, > struct rack_sendmap *rsm, struct tcpopt *to, uint32_t cts, int32_t ack_type, tcp_seq th_ack); > @@ -557,10 +538,6 @@ static int > rack_do_close_wait(struct mbuf *m, struct tcphdr *th, > struct socket *so, struct tcpcb *tp, struct tcpopt *to, int32_t drop_hdrlen, > int32_t tlen, uint32_t tiwin, int32_t thflags, int32_t nxt_pkt, uint8_t iptos); > - > -static void > -rack_peg_rxt(struct tcp_rack *rack, struct rack_sendmap *rsm, uint32_t segsiz); > - > static int > rack_do_closing(struct mbuf *m, struct tcphdr *th, > struct socket *so, struct tcpcb *tp, struct tcpopt *to, int32_t drop_hdrlen, > @@ -743,22 +720,6 @@ rack_undo_cc_pacing(struct tcp_rack *rack) > rack_swap_beta_values(rack, 4); > } > > -static void > -rack_remove_pacing(struct tcp_rack *rack) > -{ > - if (rack->rc_pacing_cc_set) > - rack_undo_cc_pacing(rack); > - if (rack->r_ctl.pacing_method & RACK_REG_PACING) > - tcp_decrement_paced_conn(); > - if (rack->r_ctl.pacing_method & RACK_DGP_PACING) > - tcp_dec_dgp_pacing_cnt(); > - rack->rc_always_pace = 0; > - rack->r_ctl.pacing_method = RACK_PACING_NONE; > - rack->dgp_on = 0; > - rack->rc_hybrid_mode = 0; > - rack->use_fixed_rate = 0; > -} > - > static void > rack_log_gpset(struct tcp_rack *rack, uint32_t seq_end, uint32_t ack_end_t, > uint32_t send_end_t, int line, uint8_t mode, struct rack_sendmap *rsm) > @@ -781,8 +742,6 @@ rack_log_gpset(struct tcp_rack *rack, uint32_t seq_end, uint32_t ack_end_t, > log.u_bbr.pkts_out = line; > log.u_bbr.cwnd_gain = rack->app_limited_needs_set; > log.u_bbr.pkt_epoch = rack->r_ctl.rc_app_limited_cnt; > - log.u_bbr.epoch = rack->r_ctl.current_round; > - log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; > if (rsm != NULL) { > log.u_bbr.applimited = rsm->r_start; > log.u_bbr.delivered = rsm->r_end; > @@ -898,7 +857,6 @@ rack_init_sysctls(void) > struct sysctl_oid *rack_measure; > struct sysctl_oid *rack_probertt; > struct sysctl_oid *rack_hw_pacing; > - struct sysctl_oid *rack_policing; > > rack_attack = SYSCTL_ADD_NODE(&rack_sysctl_ctx, > SYSCTL_CHILDREN(rack_sysctl_root), > @@ -1036,36 +994,11 @@ rack_init_sysctls(void) > "pacing", > CTLFLAG_RW | CTLFLAG_MPSAFE, 0, > "Pacing related Controls"); > - SYSCTL_ADD_U32(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_pacing), > - OID_AUTO, "pcm_enabled", CTLFLAG_RW, > - &rack_pcm_is_enabled, 1, > - "Do we by default do PCM measurements?"); > - SYSCTL_ADD_U32(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_pacing), > - OID_AUTO, "pcm_rnds", CTLFLAG_RW, > - &rack_pcm_every_n_rounds, 100, > - "How many rounds before we need to do a PCM measurement"); > - SYSCTL_ADD_U32(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_pacing), > - OID_AUTO, "pcm_blast", CTLFLAG_RW, > - &rack_pcm_blast, 0, > - "Blast out the full cwnd/rwnd when doing a PCM measurement"); > - SYSCTL_ADD_U32(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_pacing), > - OID_AUTO, "rnd_gp_gain", CTLFLAG_RW, > - &rack_gp_gain_req, 1200, > - "How much do we have to increase the GP to record the round 1200 = 120.0"); > - SYSCTL_ADD_U32(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_pacing), > - OID_AUTO, "dgp_out_of_ss_at", CTLFLAG_RW, > - &rack_rnd_cnt_req, 0x10005, > - "How many rounds less than rnd_gp_gain will drop us out of SS"); > SYSCTL_ADD_S32(&rack_sysctl_ctx, > SYSCTL_CHILDREN(rack_pacing), > - OID_AUTO, "no_timely", CTLFLAG_RW, > - &rack_timely_off, 0, > - "Do we not use timely in DGP?"); > + OID_AUTO, "fulldgpinrec", CTLFLAG_RW, > + &rack_uses_full_dgp_in_rec, 1, > + "Do we use all DGP features in recovery (fillcw, timely et.al.)?"); > SYSCTL_ADD_S32(&rack_sysctl_ctx, > SYSCTL_CHILDREN(rack_pacing), > OID_AUTO, "fullbufdisc", CTLFLAG_RW, > @@ -1084,13 +1017,13 @@ rack_init_sysctls(void) > SYSCTL_ADD_S32(&rack_sysctl_ctx, > SYSCTL_CHILDREN(rack_pacing), > OID_AUTO, "divisor", CTLFLAG_RW, > - &rack_default_pacing_divisor, 250, > + &rack_default_pacing_divisor, 4, > "What is the default divisor given to the rl code?"); > SYSCTL_ADD_S32(&rack_sysctl_ctx, > SYSCTL_CHILDREN(rack_pacing), > OID_AUTO, "fillcw_max_mult", CTLFLAG_RW, > - &rack_bw_multipler, 0, > - "What is the limit multiplier of the current gp_est that fillcw can increase the b/w too, 200 == 200% (0 = off)?"); > + &rack_bw_multipler, 2, > + "What is the multiplier of the current gp_est that fillcw can increase the b/w too?"); > SYSCTL_ADD_S32(&rack_sysctl_ctx, > SYSCTL_CHILDREN(rack_pacing), > OID_AUTO, "max_pace_over", CTLFLAG_RW, > @@ -1106,6 +1039,11 @@ rack_init_sysctls(void) > OID_AUTO, "limit_wsrtt", CTLFLAG_RW, > &rack_limit_time_with_srtt, 0, > "Do we limit pacing time based on srtt"); > + SYSCTL_ADD_S32(&rack_sysctl_ctx, > + SYSCTL_CHILDREN(rack_pacing), > + OID_AUTO, "init_win", CTLFLAG_RW, > + &rack_default_init_window, 0, > + "Do we have a rack initial window 0 = system default"); > SYSCTL_ADD_U16(&rack_sysctl_ctx, > SYSCTL_CHILDREN(rack_pacing), > OID_AUTO, "gp_per_ss", CTLFLAG_RW, > @@ -1141,11 +1079,6 @@ rack_init_sysctls(void) > OID_AUTO, "rate_cap", CTLFLAG_RW, > &rack_bw_rate_cap, 0, > "If set we apply this value to the absolute rate cap used by pacing"); > - SYSCTL_ADD_U64(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_pacing), > - OID_AUTO, "fillcw_cap", CTLFLAG_RW, > - &rack_fillcw_bw_cap, 3750000, > - "Do we have an absolute cap on the amount of b/w fillcw can specify (0 = no)?"); > SYSCTL_ADD_U8(&rack_sysctl_ctx, > SYSCTL_CHILDREN(rack_sysctl_root), > OID_AUTO, "req_measure_cnt", CTLFLAG_RW, > @@ -1384,6 +1317,11 @@ rack_init_sysctls(void) > OID_AUTO, "send_oldest", CTLFLAG_RW, > &rack_always_send_oldest, 0, > "Should we always send the oldest TLP and RACK-TLP"); > + SYSCTL_ADD_S32(&rack_sysctl_ctx, > + SYSCTL_CHILDREN(rack_tlp), > + OID_AUTO, "rack_tlimit", CTLFLAG_RW, > + &rack_limited_retran, 0, > + "How many times can a rack timeout drive out sends"); > SYSCTL_ADD_S32(&rack_sysctl_ctx, > SYSCTL_CHILDREN(rack_tlp), > OID_AUTO, "tlp_cwnd_flag", CTLFLAG_RW, > @@ -1417,26 +1355,6 @@ rack_init_sysctls(void) > "timers", > CTLFLAG_RW | CTLFLAG_MPSAFE, 0, > "Timer related controls"); > - SYSCTL_ADD_U8(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_timers), > - OID_AUTO, "reset_ssth_rec_rto", CTLFLAG_RW, > - &rack_ssthresh_rest_rto_rec, 0, > - "When doing recovery -> rto -> recovery do we reset SSthresh?"); > - SYSCTL_ADD_U32(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_timers), > - OID_AUTO, "scoreboard_thresh", CTLFLAG_RW, > - &rack_rxt_scoreboard_clear_thresh, 2, > - "How many RTO's are allowed before we clear the scoreboard"); > - SYSCTL_ADD_U32(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_timers), > - OID_AUTO, "honor_hpts_min", CTLFLAG_RW, > - &rack_honors_hpts_min_to, 1, > - "Do rack pacing timers honor hpts min timeout"); > - SYSCTL_ADD_U32(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_timers), > - OID_AUTO, "hpts_max_reduce", CTLFLAG_RW, > - &rack_max_reduce, 10, > - "Max percentage we will reduce slot by for pacing when we are behind"); > SYSCTL_ADD_U32(&rack_sysctl_ctx, > SYSCTL_CHILDREN(rack_timers), > OID_AUTO, "persmin", CTLFLAG_RW, > @@ -1516,6 +1434,11 @@ rack_init_sysctls(void) > "features", > CTLFLAG_RW | CTLFLAG_MPSAFE, 0, > "Feature controls"); > + SYSCTL_ADD_U64(&rack_sysctl_ctx, > + SYSCTL_CHILDREN(rack_features), > + OID_AUTO, "rxt_clamp_thresh", CTLFLAG_RW, > + &rack_rxt_clamp_thresh, 0, > + "Bit encoded clamping setup bits CCCC CCCCC UUUU UULF PPPP PPPP PPPP PPPP"); > SYSCTL_ADD_S32(&rack_sysctl_ctx, > SYSCTL_CHILDREN(rack_features), > OID_AUTO, "hybrid_set_maxseg", CTLFLAG_RW, > @@ -1551,53 +1474,6 @@ rack_init_sysctls(void) > OID_AUTO, "hystartplusplus", CTLFLAG_RW, > &rack_do_hystart, 0, > "Should RACK enable HyStart++ on connections?"); > - /* Policer detection */ > - rack_policing = SYSCTL_ADD_NODE(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_sysctl_root), > - OID_AUTO, > - "policing", > - CTLFLAG_RW | CTLFLAG_MPSAFE, 0, > - "policer detection"); > - SYSCTL_ADD_U16(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_policing), > - OID_AUTO, "rxt_thresh", CTLFLAG_RW, > - &rack_policer_rxt_thresh, 0, > - "Percentage of retransmits we need to be a possible policer (499 = 49.9 percent)"); > - SYSCTL_ADD_U8(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_policing), > - OID_AUTO, "avg_thresh", CTLFLAG_RW, > - &rack_policer_avg_thresh, 0, > - "What threshold of average retransmits needed to recover a lost packet (1 - 169 aka 21 = 2.1)?"); > - SYSCTL_ADD_U8(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_policing), > - OID_AUTO, "med_thresh", CTLFLAG_RW, > - &rack_policer_med_thresh, 0, > - "What threshold of Median retransmits needed to recover a lost packet (1 - 16)?"); > - SYSCTL_ADD_U32(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_policing), > - OID_AUTO, "data_thresh", CTLFLAG_RW, > - &rack_policer_data_thresh, 64000, > - "How many bytes must have gotten through before we can start doing policer detection?"); > - SYSCTL_ADD_U32(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_policing), > - OID_AUTO, "bwcomp", CTLFLAG_RW, > - &rack_policing_do_bw_comp, 1, > - "Do we raise up low b/w so that at least pace_max_seg can be sent in the srtt?"); > - SYSCTL_ADD_U8(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_policing), > - OID_AUTO, "recmss", CTLFLAG_RW, > - &rack_req_del_mss, 18, > - "How many MSS must be delivered during recovery to engage policer detection?"); > - SYSCTL_ADD_U16(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_policing), > - OID_AUTO, "res_div", CTLFLAG_RW, > - &rack_policer_bucket_reserve, 20, > - "What percentage is reserved in the policer bucket?"); > - SYSCTL_ADD_U64(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_policing), > - OID_AUTO, "min_comp_bw", CTLFLAG_RW, > - &rack_pol_min_bw, 125000, > - "Do we have a min b/w for b/w compensation (0 = no)?"); > /* Misc rack controls */ > rack_misc = SYSCTL_ADD_NODE(&rack_sysctl_ctx, > SYSCTL_CHILDREN(rack_sysctl_root), > @@ -1702,8 +1578,31 @@ rack_init_sysctls(void) > OID_AUTO, "autoscale", CTLFLAG_RW, > &rack_autosndbuf_inc, 20, > "What percentage should rack scale up its snd buffer by?"); > - > - > + SYSCTL_ADD_U32(&rack_sysctl_ctx, > + SYSCTL_CHILDREN(rack_misc), > + OID_AUTO, "rnds_for_rxt_clamp", CTLFLAG_RW, > + &rack_rxt_min_rnds, 10, > + "Number of rounds needed between RTT clamps due to high loss rates"); > + SYSCTL_ADD_U32(&rack_sysctl_ctx, > + SYSCTL_CHILDREN(rack_misc), > + OID_AUTO, "rnds_for_unclamp", CTLFLAG_RW, > + &rack_unclamp_round_thresh, 100, > + "Number of rounds needed with no loss to unclamp"); > + SYSCTL_ADD_U32(&rack_sysctl_ctx, > + SYSCTL_CHILDREN(rack_misc), > + OID_AUTO, "rxt_threshs_for_unclamp", CTLFLAG_RW, > + &rack_unclamp_rxt_thresh, 5, > + "Percentage of retransmits we need to be under to unclamp (5 = .5 percent)\n"); > + SYSCTL_ADD_U32(&rack_sysctl_ctx, > + SYSCTL_CHILDREN(rack_misc), > + OID_AUTO, "clamp_ss_upper", CTLFLAG_RW, > + &rack_clamp_ss_upper, 110, > + "Clamp percentage ceiling in SS?"); > + SYSCTL_ADD_U32(&rack_sysctl_ctx, > + SYSCTL_CHILDREN(rack_misc), > + OID_AUTO, "clamp_ca_upper", CTLFLAG_RW, > + &rack_clamp_ca_upper, 110, > + "Clamp percentage ceiling in CA?"); > /* Sack Attacker detection stuff */ > SYSCTL_ADD_U32(&rack_sysctl_ctx, > SYSCTL_CHILDREN(rack_attack), > @@ -1880,13 +1779,6 @@ rack_init_sysctls(void) > OID_AUTO, "alloc_hot", CTLFLAG_RD, > &rack_hot_alloc, > "Total allocations from the top of our list"); > - tcp_policer_detected = counter_u64_alloc(M_WAITOK); > - SYSCTL_ADD_COUNTER_U64(&rack_sysctl_ctx, > - SYSCTL_CHILDREN(rack_counters), > - OID_AUTO, "policer_detected", CTLFLAG_RD, > - &tcp_policer_detected, > - "Total policer_detections"); > - > rack_to_alloc = counter_u64_alloc(M_WAITOK); > SYSCTL_ADD_COUNTER_U64(&rack_sysctl_ctx, > SYSCTL_CHILDREN(rack_counters), > @@ -2065,8 +1957,17 @@ rack_init_sysctls(void) > static uint32_t > rc_init_window(struct tcp_rack *rack) > { > - return (tcp_compute_initwnd(tcp_maxseg(rack->rc_tp))); > + uint32_t win; > > + if (rack->rc_init_win == 0) { > + /* > + * Nothing set by the user, use the system stack > + * default. > + */ > + return (tcp_compute_initwnd(tcp_maxseg(rack->rc_tp))); > + } > + win = ctf_fixed_maxseg(rack->rc_tp) * rack->rc_init_win; > + return (win); > } > > static uint64_t > @@ -2170,7 +2071,6 @@ rack_log_hybrid_bw(struct tcp_rack *rack, uint32_t seq, uint64_t cbw, uint64_t t > off = (uint64_t)(cur) - (uint64_t)(&rack->rc_tp->t_tcpreq_info[0]); > log.u_bbr.bbr_substate = (uint8_t)(off / sizeof(struct tcp_sendfile_track)); > #endif > - log.u_bbr.inhpts = 1; > log.u_bbr.flex4 = (uint32_t)(rack->rc_tp->t_sndbytes - cur->sent_at_fs); > log.u_bbr.flex5 = (uint32_t)(rack->rc_tp->t_snd_rxt_bytes - cur->rxt_at_fs); > log.u_bbr.flex7 = (uint16_t)cur->hybrid_flags; > @@ -2216,24 +2116,9 @@ rack_log_hybrid_sends(struct tcp_rack *rack, struct tcp_sendfile_track *cur, int > memset(&log, 0, sizeof(log)); > > log.u_bbr.timeStamp = tcp_get_usecs(&tv); > + log.u_bbr.cur_del_rate = rack->rc_tp->t_sndbytes; > log.u_bbr.delRate = cur->sent_at_fs; > - > - if ((cur->flags & TCP_TRK_TRACK_FLG_LSND) == 0) { > - /* > - * We did not get a new Rules Applied to set so > - * no overlapping send occured, this means the > - * current byte counts are correct. > - */ > - log.u_bbr.cur_del_rate = rack->rc_tp->t_sndbytes; > - log.u_bbr.rttProp = rack->rc_tp->t_snd_rxt_bytes; > - } else { > - /* > - * Overlapping send case, we switched to a new > - * send and did a rules applied. > - */ > - log.u_bbr.cur_del_rate = cur->sent_at_ls; > - log.u_bbr.rttProp = cur->rxt_at_ls; > - } > + log.u_bbr.rttProp = rack->rc_tp->t_snd_rxt_bytes; > log.u_bbr.bw_inuse = cur->rxt_at_fs; > log.u_bbr.cwnd_gain = line; > off = (uint64_t)(cur) - (uint64_t)(&rack->rc_tp->t_tcpreq_info[0]); > @@ -2253,7 +2138,6 @@ rack_log_hybrid_sends(struct tcp_rack *rack, struct tcp_sendfile_track *cur, int > log.u_bbr.lt_epoch = (uint32_t)((cur->timestamp >> 32) & 0x00000000ffffffff); > /* now set all the flags in */ > log.u_bbr.pkts_out = cur->hybrid_flags; > - log.u_bbr.lost = cur->playout_ms; > log.u_bbr.flex6 = cur->flags; > /* > * Last send time = note we do not distinguish cases > @@ -2262,20 +2146,6 @@ rack_log_hybrid_sends(struct tcp_rack *rack, struct tcp_sendfile_track *cur, int > */ > log.u_bbr.pkt_epoch = (uint32_t)(rack->r_ctl.last_tmit_time_acked & 0x00000000ffffffff); > log.u_bbr.flex5 = (uint32_t)((rack->r_ctl.last_tmit_time_acked >> 32) & 0x00000000ffffffff); > - /* > - * Compose bbr_state to be a bit wise 0000ADHF > - * where A is the always_pace flag > - * where D is the dgp_on flag > - * where H is the hybrid_mode on flag > - * where F is the use_fixed_rate flag. > - */ > - log.u_bbr.bbr_state = rack->rc_always_pace; > - log.u_bbr.bbr_state <<= 1; > - log.u_bbr.bbr_state |= rack->dgp_on; > - log.u_bbr.bbr_state <<= 1; > - log.u_bbr.bbr_state |= rack->rc_hybrid_mode; > - log.u_bbr.bbr_state <<= 1; > - log.u_bbr.bbr_state |= rack->use_fixed_rate; > > log.u_bbr.flex8 = HYBRID_LOG_SENT_LOST; > tcp_log_event(rack->rc_tp, NULL, > @@ -2429,7 +2299,6 @@ normal_ratecap: > #ifdef TCP_REQUEST_TRK > if (rack->rc_hybrid_mode && > rack->rc_catch_up && > - (rack->r_ctl.rc_last_sft != NULL) && > (rack->r_ctl.rc_last_sft->hybrid_flags & TCP_HYBRID_PACING_S_MSS) && > (rack_hybrid_allow_set_maxseg == 1) && > ((rack->r_ctl.rc_last_sft->hybrid_flags & TCP_HYBRID_PACING_SETMSS) == 0)) { > @@ -2469,10 +2338,7 @@ rack_get_gp_est(struct tcp_rack *rack) > */ > uint64_t srtt; > > - if (rack->dis_lt_bw == 1) > - lt_bw = 0; > - else > - lt_bw = rack_get_lt_bw(rack); > + lt_bw = rack_get_lt_bw(rack); > if (lt_bw) { > /* > * No goodput bw but a long-term b/w does exist > @@ -2508,22 +2374,19 @@ rack_get_gp_est(struct tcp_rack *rack) > /* Still doing initial average must calculate */ > bw = rack->r_ctl.gp_bw / max(rack->r_ctl.num_measurements, 1); > } > - if (rack->dis_lt_bw) { > - /* We are not using lt-bw */ > - ret_bw = bw; > - goto compensate; > - } > lt_bw = rack_get_lt_bw(rack); > if (lt_bw == 0) { > /* If we don't have one then equate it to the gp_bw */ > lt_bw = rack->r_ctl.gp_bw; > } > - if (rack->use_lesser_lt_bw) { > + if ((rack->r_cwnd_was_clamped == 1) && (rack->r_clamped_gets_lower > 0)){ > + /* if clamped take the lowest */ > if (lt_bw < bw) > ret_bw = lt_bw; > else > ret_bw = bw; > } else { > + /* If not set for clamped to get lowest, take the highest */ > if (lt_bw > bw) > ret_bw = lt_bw; > else > @@ -2624,8 +2487,6 @@ rack_log_dsack_event(struct tcp_rack *rack, uint8_t mod, uint32_t flex4, uint32_ > log.u_bbr.flex7 = rack->r_ctl.dsack_persist; > log.u_bbr.flex8 = mod; > log.u_bbr.timeStamp = tcp_get_usecs(&tv); > - log.u_bbr.epoch = rack->r_ctl.current_round; > - log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; > TCP_LOG_EVENTP(rack->rc_tp, NULL, > &rack->rc_inp->inp_socket->so_rcv, > &rack->rc_inp->inp_socket->so_snd, > @@ -2674,8 +2535,6 @@ rack_log_hdwr_pacing(struct tcp_rack *rack, > else > log.u_bbr.cur_del_rate = 0; > log.u_bbr.rttProp = rack->r_ctl.last_hw_bw_req; > - log.u_bbr.epoch = rack->r_ctl.current_round; > - log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; > TCP_LOG_EVENTP(rack->rc_tp, NULL, > &rack->rc_inp->inp_socket->so_rcv, > &rack->rc_inp->inp_socket->so_snd, > @@ -2693,9 +2552,28 @@ rack_get_output_bw(struct tcp_rack *rack, uint64_t bw, struct rack_sendmap *rsm, > uint64_t bw_est, high_rate; > uint64_t gain; > > - gain = (uint64_t)rack_get_output_gain(rack, rsm); > - bw_est = bw * gain; > - bw_est /= (uint64_t)100; > + if ((rack->r_pacing_discount == 0) || > + (rack_full_buffer_discount == 0)) { > + /* > + * No buffer level based discount from client buffer > + * level is enabled or the feature is disabled. > + */ > + gain = (uint64_t)rack_get_output_gain(rack, rsm); > + bw_est = bw * gain; > + bw_est /= (uint64_t)100; > + } else { > + /* > + * We have a discount in place apply it with > + * just a 100% gain (we get no boost if the buffer > + * is full). > + */ > + uint64_t discount; > + > + discount = bw * (uint64_t)(rack_full_buffer_discount * rack->r_ctl.pacing_discount_amm); > + discount /= 100; > + /* What %% of the b/w do we discount */ > + bw_est = bw - discount; > + } > /* Never fall below the minimum (def 64kbps) */ > if (bw_est < RACK_MIN_BW) > bw_est = RACK_MIN_BW; > @@ -2781,8 +2659,6 @@ log_anyway: > log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; > log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; > log.u_bbr.pacing_gain = rack->r_must_retran; > - log.u_bbr.epoch = rack->r_ctl.current_round; > - log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; > TCP_LOG_EVENTP(rack->rc_tp, NULL, > &rack->rc_inp->inp_socket->so_rcv, > &rack->rc_inp->inp_socket->so_snd, > @@ -2822,10 +2698,6 @@ rack_log_to_start(struct tcp_rack *rack, uint32_t cts, uint32_t to, int32_t slot > log.u_bbr.lt_epoch = rack->rc_tp->t_rxtshift; > log.u_bbr.lost = rack_rto_min; > log.u_bbr.epoch = rack->r_ctl.roundends; > - log.u_bbr.bw_inuse = rack->r_ctl.current_round; > - log.u_bbr.bw_inuse <<= 32; > - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; > - log.u_bbr.applimited = rack->rc_tp->t_flags2; > TCP_LOG_EVENTP(rack->rc_tp, NULL, > &rack->rc_inp->inp_socket->so_rcv, > &rack->rc_inp->inp_socket->so_snd, > @@ -2859,9 +2731,6 @@ rack_log_to_event(struct tcp_rack *rack, int32_t to_num, struct rack_sendmap *rs > log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; > log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; > log.u_bbr.pacing_gain = rack->r_must_retran; > - log.u_bbr.bw_inuse = rack->r_ctl.current_round; > - log.u_bbr.bw_inuse <<= 32; > - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; > TCP_LOG_EVENTP(rack->rc_tp, NULL, > &rack->rc_inp->inp_socket->so_rcv, > &rack->rc_inp->inp_socket->so_snd, > @@ -2911,9 +2780,6 @@ rack_log_map_chg(struct tcpcb *tp, struct tcp_rack *rack, > log.u_bbr.lost = 0; > else > log.u_bbr.lost = rack->r_ctl.rc_prr_sndcnt; > - log.u_bbr.bw_inuse = rack->r_ctl.current_round; > - log.u_bbr.bw_inuse <<= 32; > - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; > TCP_LOG_EVENTP(rack->rc_tp, NULL, > &rack->rc_inp->inp_socket->so_rcv, > &rack->rc_inp->inp_socket->so_snd, > @@ -3061,9 +2927,6 @@ rack_log_rtt_sample_calc(struct tcp_rack *rack, uint32_t rtt, uint32_t send_time > log.u_bbr.flex4 = where; > log.u_bbr.flex7 = 2; > log.u_bbr.timeStamp = tcp_get_usecs(&tv); > - log.u_bbr.bw_inuse = rack->r_ctl.current_round; > - log.u_bbr.bw_inuse <<= 32; > - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; > TCP_LOG_EVENTP(rack->rc_tp, NULL, > &rack->rc_inp->inp_socket->so_rcv, > &rack->rc_inp->inp_socket->so_snd, > @@ -3076,7 +2939,7 @@ rack_log_rtt_sample_calc(struct tcp_rack *rack, uint32_t rtt, uint32_t send_time > static void > rack_log_rtt_sendmap(struct tcp_rack *rack, uint32_t idx, uint64_t tsv, uint32_t tsecho) > { > - if (rack_verbose_logging && tcp_bblogging_on(rack->rc_tp)) { > + if (tcp_bblogging_on(rack->rc_tp)) { > union tcp_log_stackspecific log; > struct timeval tv; > > @@ -3088,9 +2951,6 @@ rack_log_rtt_sendmap(struct tcp_rack *rack, uint32_t idx, uint64_t tsv, uint32_t > log.u_bbr.flex7 = 3; > log.u_bbr.rttProp = tsv; > log.u_bbr.timeStamp = tcp_get_usecs(&tv); > - log.u_bbr.bw_inuse = rack->r_ctl.current_round; > - log.u_bbr.bw_inuse <<= 32; > - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; > TCP_LOG_EVENTP(rack->rc_tp, NULL, > &rack->rc_inp->inp_socket->so_rcv, > &rack->rc_inp->inp_socket->so_snd, > @@ -3119,9 +2979,6 @@ rack_log_progress_event(struct tcp_rack *rack, struct tcpcb *tp, uint32_t tick, > log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; > log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; > log.u_bbr.pacing_gain = rack->r_must_retran; > - log.u_bbr.bw_inuse = rack->r_ctl.current_round; > - log.u_bbr.bw_inuse <<= 32; > - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; > TCP_LOG_EVENTP(tp, NULL, > &rack->rc_inp->inp_socket->so_rcv, > &rack->rc_inp->inp_socket->so_snd, > @@ -3194,13 +3051,6 @@ rack_log_doseg_done(struct tcp_rack *rack, uint32_t cts, int32_t nxt_pkt, int32_ > log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; > log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; > log.u_bbr.pacing_gain = rack->r_must_retran; > - log.u_bbr.bw_inuse = rack->r_ctl.current_round; > - log.u_bbr.bw_inuse <<= 32; > - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; > - log.u_bbr.epoch = rack->rc_inp->inp_socket->so_snd.sb_hiwat; > - log.u_bbr.lt_epoch = rack->rc_inp->inp_socket->so_rcv.sb_hiwat; > - log.u_bbr.lost = rack->rc_tp->t_srtt; > - log.u_bbr.pkt_epoch = rack->rc_tp->rfbuf_cnt; > TCP_LOG_EVENTP(rack->rc_tp, NULL, > &rack->rc_inp->inp_socket->so_rcv, > &rack->rc_inp->inp_socket->so_snd, > @@ -3262,9 +3112,6 @@ rack_log_type_just_return(struct tcp_rack *rack, uint32_t cts, uint32_t tlen, ui > log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; > log.u_bbr.pacing_gain = rack->r_must_retran; > log.u_bbr.cwnd_gain = rack->rc_has_collapsed; > - log.u_bbr.bw_inuse = rack->r_ctl.current_round; > - log.u_bbr.bw_inuse <<= 32; > - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; > TCP_LOG_EVENTP(rack->rc_tp, NULL, > &rack->rc_inp->inp_socket->so_rcv, > &rack->rc_inp->inp_socket->so_snd, > @@ -3299,9 +3146,6 @@ rack_log_to_cancel(struct tcp_rack *rack, int32_t hpts_removed, int line, uint32 > log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; > log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; > log.u_bbr.pacing_gain = rack->r_must_retran; > - log.u_bbr.bw_inuse = rack->r_ctl.current_round; > - log.u_bbr.bw_inuse <<= 32; > - log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; > TCP_LOG_EVENTP(rack->rc_tp, NULL, > &rack->rc_inp->inp_socket->so_rcv, > &rack->rc_inp->inp_socket->so_snd, > @@ -3470,7 +3314,6 @@ rack_counter_destroy(void) > counter_u64_free(rack_saw_enobuf_hw); > counter_u64_free(rack_saw_enetunreach); > counter_u64_free(rack_hot_alloc); > - counter_u64_free(tcp_policer_detected); > counter_u64_free(rack_to_alloc); > counter_u64_free(rack_to_alloc_hard); > counter_u64_free(rack_to_alloc_emerg); > @@ -3632,8 +3475,6 @@ rack_free(struct tcp_rack *rack, struct rack_sendmap *rsm) > rack->r_ctl.rc_num_split_allocs--; > } > if (rsm == rack->r_ctl.rc_first_appl) { > - rack->r_ctl.cleared_app_ack_seq = rsm->r_start + (rsm->r_end - rsm->r_start); > - rack->r_ctl.cleared_app_ack = 1; > if (rack->r_ctl.rc_app_limited_cnt == 0) > rack->r_ctl.rc_first_appl = NULL; > else > @@ -3649,7 +3490,7 @@ rack_free(struct tcp_rack *rack, struct rack_sendmap *rsm) > rack->r_ctl.rc_sacklast = NULL; > memset(rsm, 0, sizeof(struct rack_sendmap)); > /* Make sure we are not going to overrun our count limit of 0xff */ > - if ((rack->rc_free_cnt + 1) > RACK_FREE_CNT_MAX) { > + if ((rack->rc_free_cnt + 1) > 0xff) { > rack_free_trim(rack); > } > TAILQ_INSERT_HEAD(&rack->r_ctl.rc_free, rsm, r_tnext); > @@ -3965,8 +3806,6 @@ rack_increase_bw_mul(struct tcp_rack *rack, int timely_says, uint64_t cur_bw, ui > > logged = 0; > > - if (rack->rc_skip_timely) > - return; > if (override) { > /* > * override is passed when we are > @@ -4137,8 +3976,6 @@ rack_decrease_bw_mul(struct tcp_rack *rack, int timely_says, uint32_t rtt, int32 > uint64_t logvar, logvar2, logvar3; > uint32_t logged, new_per, ss_red, ca_red, rec_red, alt, val; > > - if (rack->rc_skip_timely) > - return; > if (rack->rc_gp_incr) { > /* Turn off increment counting */ > rack->rc_gp_incr = 0; > @@ -4340,7 +4177,6 @@ rack_enter_probertt(struct tcp_rack *rack, uint32_t us_cts) > */ > uint32_t segsiz; > > - rack->r_ctl.rc_lower_rtt_us_cts = us_cts; > if (rack->rc_gp_dyn_mul == 0) > return; > > @@ -4367,6 +4203,7 @@ rack_enter_probertt(struct tcp_rack *rack, uint32_t us_cts) > rack->r_ctl.rc_pace_min_segs); > rack->in_probe_rtt = 1; > rack->measure_saw_probe_rtt = 1; > + rack->r_ctl.rc_lower_rtt_us_cts = us_cts; > rack->r_ctl.rc_time_probertt_starts = 0; > rack->r_ctl.rc_entry_gp_rtt = rack->r_ctl.rc_gp_srtt; > if (rack_probertt_use_min_rtt_entry) > @@ -4550,7 +4387,6 @@ static void > rack_check_probe_rtt(struct tcp_rack *rack, uint32_t us_cts) > { > /* Check in on probe-rtt */ > - > if (rack->rc_gp_filled == 0) { > /* We do not do p-rtt unless we have gp measurements */ > return; > @@ -4595,10 +4431,7 @@ no_exit: > if (calc) { > /* Maybe */ > calc *= rack_per_of_gp_probertt_reduce; > - if (calc > rack_per_of_gp_probertt) > - rack->r_ctl.rack_per_of_gp_probertt = rack_per_of_gp_lowthresh; > - else > - rack->r_ctl.rack_per_of_gp_probertt = rack_per_of_gp_probertt - calc; > + rack->r_ctl.rack_per_of_gp_probertt = rack_per_of_gp_probertt - calc; > /* Limit it too */ > if (rack->r_ctl.rack_per_of_gp_probertt < rack_per_of_gp_lowthresh) > rack->r_ctl.rack_per_of_gp_probertt = rack_per_of_gp_lowthresh; > @@ -4639,9 +4472,7 @@ no_exit: > rack_exit_probertt(rack, us_cts); > } > > - } else if ((rack->rc_skip_timely == 0) && > - (TSTMP_GT(us_cts, rack->r_ctl.rc_lower_rtt_us_cts)) && > *** 6977 LINES SKIPPED *** > From nobody Mon Mar 11 20:51:00 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtppD4kwvz5DhZd; Mon, 11 Mar 2024 20:51: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 4TtppD4FZ1z57x7; Mon, 11 Mar 2024 20:51:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710190260; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JHJYzEcD2xAuF76RLSwJpM+BZy4bGPGKnVw+T72DjT0=; b=Dp3CwJfGADwiL4AsgM04Gt4gnK5JEoYP0a/4jnAs+iNJEdL9RgM38FBwQaa3IRXZ8xYkMG 0qcCHY8nNGZ25WYVOyRTNBKLMoqQ3hp0Zh2ibGottxLIW9d0fR1W5aRcmacVMGX7CFRCyo otE3xtEqvoLjcbqEroC302yUcfwbB2F8h3XN/pSjMEZjFRu0nvwBapXu53WYMhigxIsGRT /xXkdqz5wQ61e8UH6Ns0hFKcn2ts8GVJF5d+8Rvl0i8J0kdsWrAPnuUuKvMKO4uc/80GD6 dXLLj+fD1hSiqM7ztN0Fr8Ch23pE6xIfXWqPvl/VhvRq0DUNDQAiMQEnmfBwOA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710190260; a=rsa-sha256; cv=none; b=CCVyc/d6ppA0l0ogOB0vXB+wY6iN8/y0Y3XsMdUMFkpMVgtPm0VHIJX/cPoKNRjMD8srM+ uCFh/iqeDFUMoTTQPZZKCEF8DQYFUiX7FDMdgg59D9kzhU9x8MK+2D1VtSRrosct50rmNn xOX2vTvrB0Dx+NQWZ0D7U1rVXKNMWdQqf6Zu9a73GERqyGXLGzO3hgvUg77tH4z14gkKCK 0FN6aIQbTU5v4f1T4HaXzMCm2XkaN4wNCw/WwdcHFKKHputCq4wbgOxM9yo3+CL07zatfw zGqANJEDsx28iazdecEjo+fxcmBJFsR9VSusM72uJB6/xghBR/yNb0yxLBZwRw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710190260; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JHJYzEcD2xAuF76RLSwJpM+BZy4bGPGKnVw+T72DjT0=; b=pLR2XRjBPyGUgVf4kTm3gJwdY8htNZsC1Ao/NxkTwx1+4og58LwkffG61auHC/41FNEwCW UTuzIASGHaLzzR8lFzVyaDdT7JgmY8Lqh1h6IAeCcnGBCAaWSjCMcaweYbyeUnWYLbiByM E7LPZvytFGafUrXr0o2OIjcnGRqOjBf13WZQG8BrO9tSWZ7L40UIcauF2JLvQOY/+Q03+x UqGjnxjdcXf2FsUxGZxqDo1k3fZBbaaT5gfvQjgi1DytXAbG8Ix5elS94sn43rQXGOB9dp edlMwtIc4bawUZX0Y+K1YtIfBxoXGBkQ4wNfy7DM6SdPCdj3e3rIX4mkRNZW9w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtppD3rxrzlNk; Mon, 11 Mar 2024 20:51: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 42BKp012066775; Mon, 11 Mar 2024 20:51:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BKp0PP066772; Mon, 11 Mar 2024 20:51:00 GMT (envelope-from git) Date: Mon, 11 Mar 2024 20:51:00 GMT Message-Id: <202403112051.42BKp0PP066772@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Kirk McKusick Subject: git: 9cfb9a34bf15 - stable/13 - Eliminate unnecessary UFS1 integrity checks. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mckusick X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 9cfb9a34bf154b27d21f9e2dfe8d2704ab664ed4 Auto-Submitted: auto-generated The branch stable/13 has been updated by mckusick: URL: https://cgit.FreeBSD.org/src/commit/?id=9cfb9a34bf154b27d21f9e2dfe8d2704ab664ed4 commit 9cfb9a34bf154b27d21f9e2dfe8d2704ab664ed4 Author: Kirk McKusick AuthorDate: 2024-03-11 20:49:57 +0000 Commit: Kirk McKusick CommitDate: 2024-03-11 20:50:48 +0000 Eliminate unnecessary UFS1 integrity checks. This was missed in the cited cherry pick. This is a follow-on report to bug report 264450 (comments 21-33). Reported by: slb@sonnet.com Tested by: slb@sonnet.com PR: 264450 (cherry picked from commit b241767f8ef38f9ca7c109fe2fccd11ccbfaa4f0) --- sys/ufs/ffs/ffs_subr.c | 1 - 1 file changed, 1 deletion(-) diff --git a/sys/ufs/ffs/ffs_subr.c b/sys/ufs/ffs/ffs_subr.c index ad9128f06266..ca595ed5bd80 100644 --- a/sys/ufs/ffs/ffs_subr.c +++ b/sys/ufs/ffs/ffs_subr.c @@ -392,7 +392,6 @@ validate_sblock(struct fs *fs, int isaltsblk) CHK(fs->fs_old_rotdelay, !=, 0, %jd); CHK(fs->fs_old_rps, !=, 60, %jd); CHK(fs->fs_old_nspf, !=, fs->fs_fsize / sectorsize, %jd); - CHK(fs->fs_old_cpg, !=, 1, %jd); CHK(fs->fs_old_interleave, !=, 1, %jd); CHK(fs->fs_old_trackskew, !=, 0, %jd); CHK(fs->fs_old_cpc, !=, 0, %jd); From nobody Mon Mar 11 21:05:29 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Ttq6y2Ymqz5Djnj; Mon, 11 Mar 2024 21:05: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 4Ttq6y0YVyz3x6V; Mon, 11 Mar 2024 21:05:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710191130; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XKrcqXn0Bj1AOEke5jrYJp+LwGL1Vql5Tt9NKDcIGb0=; b=s9LeJEWoUZnKAyiw0tJ4gDZY8wcgeXmtxAEADTfI9FSfF3hBHBkFiX67ERYMHUnKVSH2B/ HXrf7LLO235YMZ8ay7ACjNaSUYA/PVI9jN2o4WnguON9ugSFaJsH5TEZ5Fz2KJAz/sFWC1 twkxnFgExOGGQRPnNe1qIZXfRDPVSjzTeFHKX+61o+aXAReifyUPxFZ1ihbvcEwWuJa9do bk+kc8ufQRYQQNPUHQLednnY0s2C4axSGMx076DsiBxZRg7yf29pOor5q1GrcHLk068qXH eBtB3L61TTWvf5ZA+26YIt0dvTL1GFz6U3NGwmkNdsLFruot0hdxKLeGlEVb4w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710191130; a=rsa-sha256; cv=none; b=L+1tjqnM1DGMqkUR4eGQO2XdKXYRVZRA5LB6rSo15TLnCxRRJls2AwicxwWvpuvGXHvNwF hxMMrH3K8VNfvqIIB0Cq2wVzFOxFoWRMFL8u73RcFyKCoJPy2G8Hms1RqkdUl8BxaO0h19 8sNtXjqPSomjgK0wCP1HJQFqj7p+tia3zVyVu2TBa1INnlm3qNkN6eRfbJKO4g8khGlN1R YKWaouVALvWy1YHj0HzQ6bVclHfC7vp2D7qj55woQxbFq5GqTJJztyxekgRmedkchFTfJY Glh7xPW8XhawGrEISyJkOY0xAr/Hp7rSkc0FwTpOtx1ZHBAStvfcTdpkb1NmNg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710191130; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=XKrcqXn0Bj1AOEke5jrYJp+LwGL1Vql5Tt9NKDcIGb0=; b=CIWkJEqsTy6IpKlkJTDkVjnFwXST9UG9cxTlbqV96dIjk6ttGK8ZFKIASXjYpb5Q1LfKae tFWgc6pxbPgGpS3/kCQn6EG3QZN5vGhdOJcOdZE2aLl6Pq2aS9b+M98qFGCS8gC8d6x8Cp BMouYQn2vbBW1QKJbuOwztNlDDPDVgs6gKDz4Hempx2A+KfTEX5UrR37zpzYQ6zA2hi2y4 mw7oraiNK9Yr/sl9NwN65DhPZRYSW5XT7uPBHnCwdLUFE4M6nbO7fyWxYxAJMPdACFpbgz dFh9NDUIns/n36ZpxfFsH7S1Xo6DcFIuoQVA7bPTjmhmdDonvWIxaYP+dFywkA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Ttq6y06hrzlgr; Mon, 11 Mar 2024 21:05: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 42BL5TM7091965; Mon, 11 Mar 2024 21:05:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BL5TrU091962; Mon, 11 Mar 2024 21:05:29 GMT (envelope-from git) Date: Mon, 11 Mar 2024 21:05:29 GMT Message-Id: <202403112105.42BL5TrU091962@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gleb Smirnoff Subject: git: 6766a47c0211 - stable/13 - vnet: add CURVNET_ASSERT_SET List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6766a47c02117a4935c097dc8996c9faf7b42d4f Auto-Submitted: auto-generated The branch stable/13 has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=6766a47c02117a4935c097dc8996c9faf7b42d4f commit 6766a47c02117a4935c097dc8996c9faf7b42d4f Author: Mateusz Guzik AuthorDate: 2022-02-17 16:48:45 +0000 Commit: Gleb Smirnoff CommitDate: 2024-03-11 20:58:00 +0000 vnet: add CURVNET_ASSERT_SET Reviewed by: kp Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D34312 (cherry picked from commit 75cde1f872a4dc2187e6d172e5a5e69a2b3a59cf) --- sys/net/vnet.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/net/vnet.h b/sys/net/vnet.h index 12bf0d83c119..fb26077e694c 100644 --- a/sys/net/vnet.h +++ b/sys/net/vnet.h @@ -236,6 +236,10 @@ void vnet_log_recursion(struct vnet *, const char *, int); curvnet = saved_vnet; #endif /* VNET_DEBUG */ +#define CURVNET_ASSERT_SET() \ + VNET_ASSERT(curvnet != NULL, ("vnet is not set at %s:%d %s()", \ + __FILE__, __LINE__, __func__)) + extern struct vnet *vnet0; #define IS_DEFAULT_VNET(arg) ((arg) == vnet0) From nobody Mon Mar 11 21:23:23 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtqWb6b6Pz5DlMj; Mon, 11 Mar 2024 21:23: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 4TtqWb5ky2z413C; Mon, 11 Mar 2024 21:23:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710192203; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=L7Kyc6AA5xx3X9mcAJoRjoTEP6FljAzY/uJnXBwW10k=; b=Kpvz8zTDB9lV5ei3TDGFjzYYD9EMliF0kI+Yu17CmTYSde/P+6ga+DoBwlG1R1xz0ZFLRZ HphF9On7IRPKtFE5xi3PthUZFVtJhpE+P6qqRT19EeiiFfeoozel92hfTIV2u/uemIyUtQ 1HXMoRB2PR4JlP9fj7hkBZUWTGMhGV/wHA5C+nCKOBIpI5mS+M6tVw9xAWdluqjo7XrdFW ZwYX5A8GpjCS56grGK3UISF9YhecqkbUidOhsRTDDkFEB4d7WBR3Rzoie6VzmfdUayeivs 08ONtwsLbDeq4ZDORV++thEPOKF0sJ2bG2kaU+uIWZR06i1cP4DPAmIj1sgD7w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710192203; a=rsa-sha256; cv=none; b=GePh/hEcu1GvsJnbLbAurlJboz09LZuTmKzZspOZ/pYo7BK0wpKdowRdrrzmeyjhp3/D6Y o2CUZzQT1lwuj8q+UmdHvWwS6OsOQ8bp9MQxtZJGE3BJh8Ow+41Q7GQ4ZOytwakPOWssda oNIYpnP+EHTTZR0hwVIyeSx0d9+0HNmzHHvVanXwyVBO6ncuhk499bvga9Mk6/MdYYkXaU 1C5ImIhLE+4xDvHsDTkV8Z3cPHcmEsu9aLmD1TfQjqVKLyqw1x/uN/v0FYoRi2DybuNORT Dr9DxWRQXYST47HjG+mYGoRuY5+HYd+WL7KBWvvl2gW1LNrqpeTseH5lDs9nbw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710192203; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=L7Kyc6AA5xx3X9mcAJoRjoTEP6FljAzY/uJnXBwW10k=; b=ChrpXQ/F5BjZBwlePmQHrK+BI/RJ0LGvsNB/f9eBQwMxj4wOF6s1CLwIqPAGi2d65zH155 T1yDw0Fwk1RYhgDQ3x/0Cr84f6ptivhU4bbZu6VGW3ZzgOSmzhUW+gkE1cfFAiKDa2TLUP QVryoBCljF243cDctigUCYUewpfEcDyblzJU5MXwqbpvtH/hpaNG9IZ+Sg4iFAKFoeDHCf KiIUHm8uEbNados7WOoV7xcWvPnZ5QMyvuppkFU99o8Eeu40uSIL7QG5X+1o9/mK/eJAyi Djp3rCTVolHZlQSO5909Mla9zKTcDIXMpZ/URy134deVnl+yuXjF96EnOx110A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtqWb51tTzmXC; Mon, 11 Mar 2024 21:23: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 42BLNNaC025480; Mon, 11 Mar 2024 21:23:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BLNNDg025477; Mon, 11 Mar 2024 21:23:23 GMT (envelope-from git) Date: Mon, 11 Mar 2024 21:23:23 GMT Message-Id: <202403112123.42BLNNDg025477@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 3ae18fdfbcaa - main - kboot: Create function for error checking. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3ae18fdfbcaad827defdc217386e73c993beeba0 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=3ae18fdfbcaad827defdc217386e73c993beeba0 commit 3ae18fdfbcaad827defdc217386e73c993beeba0 Author: Warner Losh AuthorDate: 2024-03-11 20:15:03 +0000 Commit: Warner Losh CommitDate: 2024-03-11 21:21:51 +0000 kboot: Create function for error checking. Linux has the convention of returning -ERRNO to flag errors from its system calls. Sometimes other negative values are returned that are success... However, only values -1 to -4096 (inclusive) are really errors. The rest are either truncated values that only look negative (so use long instead of int), or are things like addresses or legal unsigned file offsets or similar that are successful returns. Filter out the latter. Sponsored by: Netflix --- stand/kboot/include/host_syscall.h | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/stand/kboot/include/host_syscall.h b/stand/kboot/include/host_syscall.h index fd3b7a0f362b..68106093ce1f 100644 --- a/stand/kboot/include/host_syscall.h +++ b/stand/kboot/include/host_syscall.h @@ -190,20 +190,36 @@ ssize_t host_write(int fd, const void *buf, size_t nbyte); host_mmap(0, size, HOST_PROT_READ | HOST_PROT_WRITE, \ HOST_MAP_PRIVATE | HOST_MAP_ANONYMOUS, -1, 0); +/* + * Since we have to interface with the 'raw' system call, we have to cope with + * Linux's conventions. To run on the most architectures possible, they don't + * return errors through some CPU flag, but instead, return a negative value for + * an error, and a positive one for success. However, there's some issues since + * addresses have to be returned, some of which are also negative, so Linus + * declared that no successful result could be -4096 to 0. This implements + * that quirk so we can check return values easily. + */ +static __inline bool +is_linux_error(long e) +{ + return (e < 0 && e >= -4096); +} + /* * Translate Linux errno to FreeBSD errno. The two system have idenitcal errors * for 1-34. After that, they differ. Linux also has errno that don't map * exactly to FreeBSD's errno, plus the Linux errno are arch dependent > * 34. Since we just need to do this for simple cases, use the simple mapping * function where -1 to -34 are translated to 1 to 34 and all others are EINVAL. - * Pass the linux return value, which will be the -errno. + * Pass the linux return value, which will be the -errno. Linux returns these + * values as a 'long' which has to align to CPU register size, so accept that + * size as the error so the assert can catch more values. */ static __inline int -host_to_stand_errno(int e) +host_to_stand_errno(long e) { - assert(e < 0); + assert(is_linux_error(e)); return((-e) > 34 ? EINVAL : (-e)); } - #endif From nobody Mon Mar 11 21:23:24 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtqWd041Jz5DlHp; Mon, 11 Mar 2024 21:23:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TtqWc66F0z41PH; Mon, 11 Mar 2024 21:23:24 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710192204; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MdEELzIMXpUVb7gsmXc1Ce11t8PDhdhwErscbM/ZjZE=; b=UXeM2sExIYdm40C0OLTdVnQN3llT4nWftS0z3URPq42f3mVt1npvNaHNDIczMI1I3Loaat jXTFx6OChMRmnDF20w8bDlY3wQrqOyAbh873CuVzahgGW+cF/pRRZz9NzQt/MlcELmadeN M1CTRWnXG8FaIUyfeISqBqfo7Y9PgWdrw98aK11N9fM/TXV4J6ewO/4FZRqHxCin8ztrbI /CNehnI+Xjs7kxGKNJioVq5Z2YbuZFTDvt5OBFpDMrJFbrWaQgnPXmGe1G44rcQq6gNmtQ qyZV1EpzJG1YaJZ01xBFUsuNerhJbsecY9QojY5aIehAXtTjlGkDDD4FxYYcRw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710192204; a=rsa-sha256; cv=none; b=wcHh9kwU2wm4+7gRvRt0Q5lnAfo95qQR2A+lsDvADiilSUlW4FM6aDUg478nxOV1xwZ8YW 02U7ibNR0HViGFihpyPgKBfe55AiJTl4RTdLY57Z/qcbtKMQPiKVnNMxgPYhutp1YapK1v ilsyIOLmqckkXTbh9osSvFiRBEr8arGW6+popjywUQSeFxAm3ZVdJgSsqkiLmMJhqbmWOs +0KRHLox+jjJeWHglOb7FmwMrJN8P2DsHWON8McDU13AMqTIDomB7thZnAZ93Kr5ZUdc49 SYxTG0SblZ+S+G4wwtbNx3qRIBe6od7dBnMHhwZlFjH16l/DbkZbtk9uuLUccQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710192204; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=MdEELzIMXpUVb7gsmXc1Ce11t8PDhdhwErscbM/ZjZE=; b=kzFk8iGkFq45rgLN3UH/xy7GMTf6N63UIOxvgedIcRupMZgEgUYuF2Z8TxwjFVlBeuMvOG 9j5Wo11sb3nLumJv8QfVjQnyJf3JegPDLDEd28nS60Fh1BPTQIBud3qCM2QN77BT6nQdna qVpxgWQyBAwrWFhLSgYSbeC7CfewVa6uF6fbNtO6EFGrpuGIXN2iW2+ozbabdUgcei+Gd3 4xIiAsFBVnItX1IZ7gmB6hAIgWYA4fNL9NpjlwsntBMAyE2c1uKqSfR2ZGf6q70kjLqSeg nTCJr29U6toE9sviXA0taJ8VkGhLjO6aXjTMM8uv3eGnIvGhEL/8RW7FyALg9g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtqWc5jkXzlql; Mon, 11 Mar 2024 21:23: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 42BLNOxA025527; Mon, 11 Mar 2024 21:23:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BLNOFi025524; Mon, 11 Mar 2024 21:23:24 GMT (envelope-from git) Date: Mon, 11 Mar 2024 21:23:24 GMT Message-Id: <202403112123.42BLNOFi025524@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 8b1925f29c54 - main - kboot: Avoid UB in signed shift List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8b1925f29c54f5791db3c8dcdf2b67541bb8ab32 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=8b1925f29c54f5791db3c8dcdf2b67541bb8ab32 commit 8b1925f29c54f5791db3c8dcdf2b67541bb8ab32 Author: Warner Losh AuthorDate: 2024-03-11 20:15:10 +0000 Commit: Warner Losh CommitDate: 2024-03-11 21:21:51 +0000 kboot: Avoid UB in signed shift offset is signed. Copy it to the unsigned res before shifting. This avoids any possible undefined behavior for right shifting signed numbers. No functional change intended (and the code generated is the nearly same for aarch64). Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D44285 --- stand/kboot/kboot/hostfs.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/stand/kboot/kboot/hostfs.c b/stand/kboot/kboot/hostfs.c index 02afa885d833..7c0600fc35a0 100644 --- a/stand/kboot/kboot/hostfs.c +++ b/stand/kboot/kboot/hostfs.c @@ -133,8 +133,9 @@ hostfs_seek(struct open_file *f, off_t offset, int whence) * from V7 later ISO-C). Also assumes we have to support powerpc still, * it's interface is weird for legacy reasons.... */ - offl = offset & 0xffffffff; - offh = (offset >> 32) & 0xffffffff; + res = (uint64_t)offset; + offl = res & 0xfffffffful; + offh = (res >> 32) & 0xfffffffful; err = host_llseek(hf->hf_fd, offh, offl, &res, whence); if (err < 0) return (err); From nobody Mon Mar 11 21:23:25 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtqWf1ghPz5Dl70; Mon, 11 Mar 2024 21:23:26 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TtqWd74CVz41RY; Mon, 11 Mar 2024 21:23:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710192206; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6SwwY58pNv/P0YEuSyeAwo7fUXnLUGC3xdIbXLXmRiE=; b=csnBfIedYI7M+13UIq3jAU/73Vup+3Hi+Ij6QP4WZj6r8NE6xE4/53MOfjguj2G+j8tDg7 xZxL4gspQnbWWg/rlJ98GRjPhVw75vYUqoHjk9b6ksoYYeVaRjq+e3XNF+Sv63kOhoD7BE utKk6gTLCXDnfiYLP/slMUs5wDN/0ggwT9bZ8UyOnAGf541OHRUE8nKLd+M8a95236BO26 rMZh5/pkFu5STGuRsnB28lBEt9rUaLEOBPzdaTGccLB53C88PS4ycQ628SOashDULhpqPu 2LtUhXGzV/ZB0MAfKEuLNJaJU06R/APkJOI81yrJs5g8yegA2DTMKU95NYSFGA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710192206; a=rsa-sha256; cv=none; b=TeRKCUd2N2vNLnw0XF0boU+MPICFHV0M/PBknjb5mY8sg1GoY53CHC0CcoNBeDVB1e9xO3 8ia08FHYJUdyRIpmdNMuWC/n1BMBTFghL4/ZXGf2UVvZDAzd+LUXidmZmQhAfUscpUGEj9 /LbEH0TiUofKiqPJrrqcjXRSUZ89yrOG7/dDfhSzd3CPHeUGE1ItNFrhFr+rD9KzPmf9ce ofnBzOVh3RlttQWlwmp2YTT75YTVvfpXN9SWsyYCvJIllID1Tn5QBPU3mBuPlFwrMXJ6rC z3VbYmcMbVz8ZKK/BDcxabeHXvNGkjgrEmu6w2vNKIrw1FOlx9SflBE/FqSj0Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710192206; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6SwwY58pNv/P0YEuSyeAwo7fUXnLUGC3xdIbXLXmRiE=; b=x9kjdgejp97a/NqVHRrYi+89FVr53f0W6vWoMyTI5AmL61kfAS6S0g4JWvjnE+HRbi7kkU MDDDNL5V3cCan9Mr7/XsVFjPFovSP1ysQNGY/B8CzmgJndKVycBD7kZewq/8H3erPPHRo+ KGLWP0q+Thi4j1lE52RtRmWc8wB98gc2QVfhcUmU+N0iKR3xCdAO9f1njjX0rEGz5oEetj DG3VNm3KNkDSxQdKYS70zqlzBlBm6XQekntgHD/sQTSwIs1DyZFDvJ0Ib9BvVJuMFJnD46 NsYShOrLpPohD7tM/yaShubiUF6+mCSxUlpq9R3WnfMZQEVwKlnFWAgxwt1mCQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtqWd6gKtzmZZ; Mon, 11 Mar 2024 21:23: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 42BLNPQi025578; Mon, 11 Mar 2024 21:23:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BLNPOq025575; Mon, 11 Mar 2024 21:23:25 GMT (envelope-from git) Date: Mon, 11 Mar 2024 21:23:25 GMT Message-Id: <202403112123.42BLNPOq025575@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: d650c3efb638 - main - kboot: hostfs -- check for llseek failure correctly List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d650c3efb638f1b2742429a5fb8e7c087839868b Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=d650c3efb638f1b2742429a5fb8e7c087839868b commit d650c3efb638f1b2742429a5fb8e7c087839868b Author: Warner Losh AuthorDate: 2024-03-11 20:15:24 +0000 Commit: Warner Losh CommitDate: 2024-03-11 21:21:51 +0000 kboot: hostfs -- check for llseek failure correctly The host_* syscalls are all raw Linux system calls, not the POSIX wrappers that glibc / musl create. So we have to ranage change the return value of host_llseek correctly to use the negative value hack that all Linux system calls use. This fixes a false positive error detection when we do something like lseek(fd, 0xf1234567, ...); This returns 0xf1234567, which is a negative value which used to trigger the error path. Instead, we check using the is_linux_error() and store the return value in a long. Translate that errno to a host errno and set the global errno to that and return -1. lseek can't otherwise return a negative number, since it's the offset after seeking into the file, which by definition is positive. This kept the 'read the UEFI memory map out of physical memory' from working on aarch64 (whose boot loader falls back to reading it since there are restrictive kernel options that can also prevent it), since the physical address the memory map was at on my platform was like 0xfa008018. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D44286 --- stand/kboot/kboot/hostfs.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/stand/kboot/kboot/hostfs.c b/stand/kboot/kboot/hostfs.c index 7c0600fc35a0..cfd3476b3c84 100644 --- a/stand/kboot/kboot/hostfs.c +++ b/stand/kboot/kboot/hostfs.c @@ -124,7 +124,7 @@ hostfs_seek(struct open_file *f, off_t offset, int whence) { hostfs_file *hf = f->f_fsdata; uint32_t offl, offh; - int err; + long err; uint64_t res; /* @@ -137,8 +137,15 @@ hostfs_seek(struct open_file *f, off_t offset, int whence) offl = res & 0xfffffffful; offh = (res >> 32) & 0xfffffffful; err = host_llseek(hf->hf_fd, offh, offl, &res, whence); - if (err < 0) - return (err); + /* + * Since we're interfacing to the raw linux system call, we have to + * carefully check. We have to translate the errno value from the host + * to libsa's conventions. + */ + if (is_linux_error(err)) { + errno = host_to_stand_errno(err); + return (-1); + } return (res); } From nobody Mon Mar 11 21:23:26 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtqWg2kPrz5Dl1p; Mon, 11 Mar 2024 21:23: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 4TtqWg0xkJz41Rl; Mon, 11 Mar 2024 21:23:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710192207; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0CrnF2pZB9OXXxtH+RonzgxUyHyxr5nFevjih+fwfV8=; b=ebF4fJOXpnG9FdOwaBpjIqudm7DXbhUTfpXcp/VtBRZtOnCzrEmraVdSVxS1aaq4BC8Mml tQGEojyXdqF1IYyN8uduFHWr+6EYSXQ+6HPVBkcx6QE8+aFAHyGnUrS7ihsob5MoIOfbSY lq96rpv4i0hwC49nY4JXGNHQWfxQcsMUlOxpIsfIT4tzn+IHYTZRal3MgDtlkEsKZFeWqH vwgtTf1WKXAWgViZfJgneS8xw8H1/Xe2ZG/vhMNE6GrSTH/CFI4RWa2J/MZlc6L2i/vbW7 844lpA3SQMr0FFJ1B1oE2OSgrNxMviVmVC+zeC+n/CKsccbORXp7sfZ3/sRfsA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710192207; a=rsa-sha256; cv=none; b=BTlr1tywjROT+cegLVEr7dh5XDq8j1R9Nv5OpDGWFODMOSxmwTXa+mcayEzYhbJnKRbvd6 1ONr4KUmvtjm4FMOAmV56XIG5EfpmyJSFdpZHe6FlVzI1sdYD40oacpruR/FHzI13vuU59 BLqTyWtAErRNwe6aa1rUepiXeNHBXhwmpnqkw+nRy8bw/u96hZWYRZy0fDiJ9JCt3gNk5u X1Pa8QgSdCmN2lb++nhDoB+jlVhRPesFrYz/vITfMFwxfSCHFD3uSez983KXVBfvlXP1Ow di6mRF/Q14vboIjhLRURVO5MP15x1QtCj2oqpTLadPl69smcSRhIrdG3323vHg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710192207; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=0CrnF2pZB9OXXxtH+RonzgxUyHyxr5nFevjih+fwfV8=; b=ZbAiuFHL9RkgjkXBXq5emHiZXvpBqBDhw2YPYfaPL4448rjLJF7MJCJqNgT11y5VLTFzPX kHncmQLW7zLq3VHyGpRBYYq4VJwu2OZ74BWA685xPuL7FFxt0hJsF7yUPMQmsalma7wVt3 IysTrvy7ywBbJj3DL8DSW7oXWFueh2/mrdAySX5veBaTvUeGnXxiPJwIj44sMbn36dvOF8 jDU4lsA1cIXvkvxfi+utK94qcZfCINKEdTiBcW6dtlKClNXje+QqoGdZruiy36TjSQDmsw 9boBs5wrBZbbnV6BIIc5f2BKSWbKzKpREClaTsIo0Y913CYdn/3HhUUznrVKnw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtqWg0Xwwzlqm; Mon, 11 Mar 2024 21:23: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 42BLNQwc025620; Mon, 11 Mar 2024 21:23:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BLNQKo025617; Mon, 11 Mar 2024 21:23:26 GMT (envelope-from git) Date: Mon, 11 Mar 2024 21:23:26 GMT Message-Id: <202403112123.42BLNQKo025617@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: a9cd3b675e24 - main - kboot: Print UEFI memory map List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a9cd3b675e243648aa681bc6ce1bf3e788be88c8 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=a9cd3b675e243648aa681bc6ce1bf3e788be88c8 commit a9cd3b675e243648aa681bc6ce1bf3e788be88c8 Author: Warner Losh AuthorDate: 2024-03-11 20:15:34 +0000 Commit: Warner Losh CommitDate: 2024-03-11 21:21:52 +0000 kboot: Print UEFI memory map If we can read the UEFI memory map, go ahead and print the memory map. While the kernel prints this with bootverbose, having it at this stage is useful for debugging other problems. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D44287 --- stand/kboot/kboot/arch/aarch64/load_addr.c | 85 ++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) diff --git a/stand/kboot/kboot/arch/aarch64/load_addr.c b/stand/kboot/kboot/arch/aarch64/load_addr.c index 4cbbd5192f5b..8ea3516a5cff 100644 --- a/stand/kboot/kboot/arch/aarch64/load_addr.c +++ b/stand/kboot/kboot/arch/aarch64/load_addr.c @@ -23,6 +23,87 @@ uint32_t efi_map_size; vm_paddr_t efi_map_phys_src; /* From DTB */ vm_paddr_t efi_map_phys_dst; /* From our memory map metadata module */ +typedef void (*efi_map_entry_cb)(struct efi_md *, void *argp); + +static void +foreach_efi_map_entry(struct efi_map_header *efihdr, efi_map_entry_cb cb, void *argp) +{ + struct efi_md *map, *p; + size_t efisz; + int ndesc, i; + + /* + * Memory map data provided by UEFI via the GetMemoryMap + * Boot Services API. + */ + efisz = (sizeof(struct efi_map_header) + 0xf) & ~0xf; + map = (struct efi_md *)((uint8_t *)efihdr + efisz); + + if (efihdr->descriptor_size == 0) + return; + ndesc = efihdr->memory_size / efihdr->descriptor_size; + + for (i = 0, p = map; i < ndesc; i++, + p = efi_next_descriptor(p, efihdr->descriptor_size)) { + cb(p, argp); + } +} + +static void +print_efi_map_entry(struct efi_md *p, void *argp __unused) +{ + const char *type; + static const char *types[] = { + "Reserved", + "LoaderCode", + "LoaderData", + "BootServicesCode", + "BootServicesData", + "RuntimeServicesCode", + "RuntimeServicesData", + "ConventionalMemory", + "UnusableMemory", + "ACPIReclaimMemory", + "ACPIMemoryNVS", + "MemoryMappedIO", + "MemoryMappedIOPortSpace", + "PalCode", + "PersistentMemory" + }; + + if (p->md_type < nitems(types)) + type = types[p->md_type]; + else + type = ""; + printf("%23s %012lx %012lx %08lx ", type, p->md_phys, + p->md_virt, p->md_pages); + if (p->md_attr & EFI_MD_ATTR_UC) + printf("UC "); + if (p->md_attr & EFI_MD_ATTR_WC) + printf("WC "); + if (p->md_attr & EFI_MD_ATTR_WT) + printf("WT "); + if (p->md_attr & EFI_MD_ATTR_WB) + printf("WB "); + if (p->md_attr & EFI_MD_ATTR_UCE) + printf("UCE "); + if (p->md_attr & EFI_MD_ATTR_WP) + printf("WP "); + if (p->md_attr & EFI_MD_ATTR_RP) + printf("RP "); + if (p->md_attr & EFI_MD_ATTR_XP) + printf("XP "); + if (p->md_attr & EFI_MD_ATTR_NV) + printf("NV "); + if (p->md_attr & EFI_MD_ATTR_MORE_RELIABLE) + printf("MORE_RELIABLE "); + if (p->md_attr & EFI_MD_ATTR_RO) + printf("RO "); + if (p->md_attr & EFI_MD_ATTR_RT) + printf("RUNTIME"); + printf("\n"); +} + static bool do_memory_from_fdt(int fd) { @@ -130,6 +211,10 @@ do_memory_from_fdt(int fd) printf("Read UEFI mem map from physmem\n"); efi_map_phys_src = 0; /* Mark MODINFOMD_EFI_MAP as valid */ close(fd2); + printf("UEFI MAP:\n"); + printf("%23s %12s %12s %8s %4s\n", + "Type", "Physical", "Virtual", "#Pages", "Attr"); + foreach_efi_map_entry(efihdr, print_efi_map_entry, NULL); return true; /* OK, we really have the memory map */ no_read: From nobody Mon Mar 11 21:23:28 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtqWh3bM9z5Dl1t; Mon, 11 Mar 2024 21:23: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 4TtqWh1ZTRz415q; Mon, 11 Mar 2024 21:23:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710192208; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8qo+09UDvcFEM7X4znxj6BUQUpBKBLYceMu03DJI12A=; b=vUZVGMPIioa9X4/Mw5ui8vN/UArt32uvKEcTBhhweH86K//2Lm55s4oIGV3/d+YNwLgQ8i RgAikF7KFCagTzimANXBS2K2N2PqUzwqE16t2MVJ0jYaPWk+aHfRMdjPonfGbXMPFdxdBQ V1ZQOJM5aGUNIgo/fC0QQovaPNivs6jQNNd3HkwlRlatG1tt+bNLCYJKvZ6oEyqRJGBny7 lhEmOyjK2vJhxQ+yqbAbymGnNFjg8TYIKbCjrzCm1ql9TfadYL4RTaL6xoyAcQu7NdFGRg OvZQ2ayvRrsuGuP4RXEBTv6IbAacqq9YjEzgcW60tTtQ6iAkjfDp+kQhSFi1hw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710192208; a=rsa-sha256; cv=none; b=iZbxWJrNjTJ7vjZWmc3CkouqREzm1V61z2MArkn8u/IvHOWPjYbj2/miXd1JKAygNMrMrY 4OiwgJP9g2lwIl+PtNimHSLpbERetDrT9RXNnGmZqtHj3Pk39JrZVZ2CJgelzIgYoQpQLa 6VQq/2Gj/sq0NF8JJau2OU4DTpodW3G1PfelJGZ87QMeS0JKR5DVh+ggrG4i+sPJeHLemn jSmhhk+GmqRaoMl8BESzbwYtpnTlHsQKlyKvKB9w2GTe3zzOsHR4iNI4ALBFirpmwWozi/ en0KQ/3T3D3SAm07yQFs9t1EGlNMCAONPLGW9uqfc7wTgidX+IGcIt5Zv2Tsyg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710192208; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=8qo+09UDvcFEM7X4znxj6BUQUpBKBLYceMu03DJI12A=; b=daVZd1wTVK6IzB6sbAG+h6fEMfMpqzCoNBzZslO3rb64dY0jM46RBQpc09egRzGw2T+Fvv upVwU+yKTQFx6K9Bd3UKBNRUdWOACx3cn3Okh8YtJHgEeBikmq25GqoodzwYnoV0U4Lx8x JBGWfrtcf+dq5HJtSb3lby56+cwXmtR9RVvzLUlPtXf/1DINce9jkSoo2oOfsllxQ5elrP REQ1rGQdYnP/af9OUlDB4Vi3ZzDsmuuKOBYOdw2orDTbVl6TYbgnfqPIO6JwkafvzAXSEc WdyjereQ83iqCRZ0Zy9TcS9G9C9H9k1S+7GHlSAaa3EjM+I0TWFmqeL2i5NdeQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtqWh1BKLzmLR; Mon, 11 Mar 2024 21:23: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 42BLNSMS025671; Mon, 11 Mar 2024 21:23:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BLNSrH025668; Mon, 11 Mar 2024 21:23:28 GMT (envelope-from git) Date: Mon, 11 Mar 2024 21:23:28 GMT Message-Id: <202403112123.42BLNSrH025668@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: d75524b3fe21 - main - kboot: Use is_linux_error to check mmap return error List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d75524b3fe21752b233f66ae8e9d6450d507f75c Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=d75524b3fe21752b233f66ae8e9d6450d507f75c commit d75524b3fe21752b233f66ae8e9d6450d507f75c Author: Warner Losh AuthorDate: 2024-03-11 20:15:39 +0000 Commit: Warner Losh CommitDate: 2024-03-11 21:21:52 +0000 kboot: Use is_linux_error to check mmap return error Rather than checking against the (incorrect) -511, use the is_linux_error() function to check to see if host_mmap failed. Sponsored by: Netflix --- stand/kboot/kboot/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stand/kboot/kboot/main.c b/stand/kboot/kboot/main.c index c397e573fc75..e57446baa47d 100644 --- a/stand/kboot/kboot/main.c +++ b/stand/kboot/kboot/main.c @@ -232,7 +232,7 @@ caddr_t ptov(uintptr_t pa) * the raw system call we have to do that ourselves. */ va = host_mmap(0, PAGE, HOST_PROT_READ, HOST_MAP_SHARED, smbios_fd, pa2); - if ((intptr_t)va < 0 && (intptr_t)va >= -511) + if (is_linux_error((long)va)) panic("smbios mmap offset %#jx failed", (uintmax_t)pa2); m = &map[nmap++]; m->pa = pa2; From nobody Mon Mar 11 21:23:29 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtqWj5k7Vz5DlFC; Mon, 11 Mar 2024 21:23: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 4TtqWj311xz41QF; Mon, 11 Mar 2024 21:23:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710192209; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Bpx44nnydK3F8rAx2pq7mtCglq2zGNsizL8SmBaJ8y8=; b=GqU541Lg2L14wBnKQ5L946RP57r3pNdaiKtqckndcUYo+elDo8L9f7z1S7JjDDPuxEeEsr whBR25ZYow35ezSOy54FmTb9nywnxEjIvGBOMeruvVzmZPBEZkwW0TG9uOOpjAbLzUZiZm 7oAHuc0uXKws4faAEtYXQQ+EnCKAjAqkVZYyc9ItVFQESD/lNLiDZGuKXPKQ2wR4hM7XOe qoXsDHNijAxrmOqTFfkRd+Ja9dzd9Fu6bkj0aEjUIeH+A92VhTKYOBPbT/5gBGq8WQxVOq n7gq91DAu4hnkh+4Cf1IYcNW4218peMe3ylkpMSvtSDKQSTCb9gZtwxdCr4y3A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710192209; a=rsa-sha256; cv=none; b=Kso6k1q0k+ABZuuESYNBJTwIFZ5wl70BNtU4PWO0ZJ5MGCGO1/+xAcYODGiYpuRndkNXkO HZb1ieejLh3FouO/AkWZSM9zPNZHUpzAGs4jmbhjKI0w91cMKEjUoYov9sHnNEtqU9hFKT gzRjAruZtX+vY/HTQ8D4vyLIyaC7XCVXFyVIehLmwc251ReBdF5i7tL6/Trlel+1flVdiJ WDu/pqEtcBRScn3TM8/Cxpkb2leyR+M23LETdpNtvL+Lv7zFf6SLoUIxcDTdtOJN0knDxk /Zt8HSUDvdYzbcYAGwKxRtxMXV6hWzklga/zaFAivTTjM6l0akwRk3ADYONBJQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710192209; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Bpx44nnydK3F8rAx2pq7mtCglq2zGNsizL8SmBaJ8y8=; b=KDja19wwOf4X7ayIOatlUlrYYuMXtdSIdJhas1iymOGhJbnm5VsyNsWzlzxhnMiAyPR8yk RtL945RH3j/HeF49AkLvWFBemmNYizG07/bfT0xgaXHL5mSohDcrd0iuTwelkJL3k+jyeA A1FKdi3E4mSYhgKc0vzFYmETkulfJzwAbgZBP+Av4XMifDFJkjnCOeWK5F4FUndbpv0YEc 5MEkiiEy62BZ/IxegI/ROqUhqEFq8mz65g5ouQ8sKeN/rOxywcgGmiPF5WGR6EId03fbZm IhyUjnq+ft1bc1hZXfp1HMndiTVfEm2PqaE+xUCI469WQEOCKrbWtw1mPspleA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtqWj26TLzmWK; Mon, 11 Mar 2024 21:23: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 42BLNTvv025720; Mon, 11 Mar 2024 21:23:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42BLNTLf025717; Mon, 11 Mar 2024 21:23:29 GMT (envelope-from git) Date: Mon, 11 Mar 2024 21:23:29 GMT Message-Id: <202403112123.42BLNTLf025717@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 462af7676b3e - main - kboot: kbootfdt: fix error handling List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 462af7676b3ee8a8bd9ee9b55a35c0cf815a351f Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=462af7676b3ee8a8bd9ee9b55a35c0cf815a351f commit 462af7676b3ee8a8bd9ee9b55a35c0cf815a351f Author: Warner Losh AuthorDate: 2024-03-11 20:15:44 +0000 Commit: Warner Losh CommitDate: 2024-03-11 21:21:52 +0000 kboot: kbootfdt: fix error handling If we are able to open /sys/firmware/fdt, but aren't able to read it, fall back to /proc/device-tree. Remove comment that's not really true, it turns out. Sponsored by: Netflix --- stand/kboot/kboot/kbootfdt.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/stand/kboot/kboot/kbootfdt.c b/stand/kboot/kboot/kbootfdt.c index 70844820d345..e4c378423585 100644 --- a/stand/kboot/kboot/kbootfdt.c +++ b/stand/kboot/kboot/kbootfdt.c @@ -91,22 +91,21 @@ fdt_platform_load_dtb(void) { void *buffer; size_t buflen = 409600; - int fd; + int fd, err = 0; /* * Should load /sys/firmware/fdt if it exists, otherwise we walk the * tree from /proc/device-tree. The former is much easier than the * latter and also the newer interface. But as long as we support the - * PS3 boot, we'll need the latter due to that kernel's age. It likely - * would be better to script the decision between the two, but that - * turns out to be tricky... + * PS3 boot, we'll need the latter due to that kernel's age. */ buffer = malloc(buflen); fd = host_open("/sys/firmware/fdt", O_RDONLY, 0); - if (fd != -1) { - buflen = host_read(fd, buffer, buflen); + if (fd >= 0) { + err = host_read(fd, buffer, buflen); close(fd); - } else { + } + if (fd < 0 || err < 0) { fdt_create_empty_tree(buffer, buflen); add_node_to_fdt(buffer, "/proc/device-tree", fdt_path_offset(buffer, "/")); From nobody Tue Mar 12 01:00:04 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TtwKd1KMtz5Csgj; Tue, 12 Mar 2024 01:00:05 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TtwKd0g4sz4QZj; Tue, 12 Mar 2024 01:00:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710205205; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aeRyif73frr3JdZc+oHBSCVmKc/0pG3prxLhkdiNDfk=; b=nHpdjnazgaA/jdBMRHjGAnnlna3Ar4TJ+RZuIxzHbCVi7lCalGZfw7Tn6GavMRCSUppBwN bEh6uBZc5Npldef3jFS//FODX5lLErOUnlYDuSCd2se2t3CfmeSOt3K2rNMm4i95/heaAU zqftEEI65HyjCQvrtqZf8wHHeVz3mVanxD21mVn7aBGuYaiNxGVfQhpdW/m8HcVO77fJ+5 UeTQuN1B2d4vKW2bTwAeIrg6UU28H8gapKFJaBjn8M0Ny6vqtDNq0PMj05Nxl+H/53gwUj uLxfOH9J6ZxfwWXOcAGBCCkIhICQXILPpFehMn4iZMk+S8ao1c09Ijvh4HFAYg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710205205; a=rsa-sha256; cv=none; b=s4qss5lgQickN03ihdXIB/KAa5Ys7L5zK+qEeHurb1R1Jo5MjtSNB6HVDyqcMq8uVcIdEp NXnDBzgvUfJI5z3+dQVx82siIEfzD5rQ00okmPHRaPXwpBPB6zroRD1GVsJ3B6145+n8K4 +1ev50HC807u4s886B33LrcQWBwFJLJAZarsz+TNEphn+O9xLfDfNRDGqdq7fC2hrcIlpI 4YNvBVMuqiimxO2bfyfs+vzEWruEUnWXWLlRRhLlO7eMzyTtYgYaz9lBR5SuFp0us6yoY6 50NefPU1uvHrRp2sqFDfUc8dDcgcAWPUzZQqKHV+iRxhH9vG2djoD+KAQNpFPw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710205205; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aeRyif73frr3JdZc+oHBSCVmKc/0pG3prxLhkdiNDfk=; b=ACAt3hD3K6AbvDjDZop05VkuZ7dxD1M63tRV0p1cdL7e4teaWT+7lK4CeRM8H3vcRh25he uWrKkwmi+T5VDAGNQT0Uajm25bgZ3sc59WVOLRGzMXf/62ZMlYdPCMs7r3petN22sifHzF HmtYnxGDB0zkn3jZrDYJXJ83DClJ0+qPQek9K0fZR7ikQFlaDmkPOC/7Ofk9yHHBa6bIMm 0yqGtcf9HKPVPyGwZZr7kKqAiFdya+fzpRfJJKPV+ugLCS8PHKyRld558hD3Gu2V0XNjfv D1rFl4n5to8jLu8q1rEYZgAsBTjWlwVFROZbZfZRMacpyDZieIzdBDUGC+qgtQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TtwKd0DQ7zsTf; Tue, 12 Mar 2024 01:00: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 42C104DA085415; Tue, 12 Mar 2024 01:00:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42C104UN085409; Tue, 12 Mar 2024 01:00:04 GMT (envelope-from git) Date: Tue, 12 Mar 2024 01:00:04 GMT Message-Id: <202403120100.42C104UN085409@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 7b133b34f8e8 - main - vmm: fix standalone module build List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7b133b34f8e8508838c3ce334a632715efc2f547 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=7b133b34f8e8508838c3ce334a632715efc2f547 commit 7b133b34f8e8508838c3ce334a632715efc2f547 Author: Gleb Smirnoff AuthorDate: 2024-03-12 00:59:03 +0000 Commit: Gleb Smirnoff CommitDate: 2024-03-12 00:59:03 +0000 vmm: fix standalone module build --- sys/modules/vmm/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/modules/vmm/Makefile b/sys/modules/vmm/Makefile index a67797276bae..075e594c4da1 100644 --- a/sys/modules/vmm/Makefile +++ b/sys/modules/vmm/Makefile @@ -3,7 +3,8 @@ KMOD= vmm -SRCS= opt_acpi.h opt_ddb.h device_if.h bus_if.h pci_if.h pcib_if.h acpi_if.h +SRCS= opt_acpi.h opt_bhyve_snapshot.h opt_ddb.h \ + acpi_if.h bus_if.h device_if.h pci_if.h pcib_if.h vnode_if.h CFLAGS+= -DVMM_KEEP_STATS CFLAGS+= -I${SRCTOP}/sys/${MACHINE}/vmm From nobody Tue Mar 12 04:19:43 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tv0lz6JBCz5DC9J; Tue, 12 Mar 2024 04:19: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 4Tv0lz5ll0z4hwH; Tue, 12 Mar 2024 04:19:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710217183; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mX7X/bOlGB+E4PA7pTOzaw3QWwlKtIGdROqpCji49oU=; b=v7gPpZp6ct5AqMYhZAYDgmez0YtCQN7LHETw8/jrobfZJMlIU/WLxM0z86Htw+QweMdfAg qRKnVIHqJBmI07IwDte17JHkeFCzu3EQmbU8qNDltRmoQ8GiTyJQY+PUIf9PVyntLQOnQm t1UlbcqYJ3Kh42T9nz375HLK5e5x9jxqiskpXcE3lUt8a2/JLB0U4KFFC8SgHlBFM4INqb kj5wFIBkmW/fPRXcZq51FQlznyF8BFOpiUx6ossvJw9t9/5KA3ekBK2GxRUa1+JdoSc3Ge X9YIFN5gbVrpe5rrT+RI3/RH0GdYXf+aYxis37kNrTCD8J+e4rTzdZTsk77g1A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710217183; a=rsa-sha256; cv=none; b=s+kp4Q34fWu75q+xI4BUDd0v7CDvh+mjeO4M43o6ArfARzkpfQVFGl4mh3LeSvq0KcX6cM TlQ5HvV3Ob0/XWhWh0nomKik35F6aek0OoAcAs4ax41hZgRsTUhNway9GV3GxxbTYuVtgm Lg1u0x3XRn+NP4z3XQkJEuFxZ0jU3rgpsaSvpyQJgVI4nB8osL3dBBtxA7VOA45oVf+ur4 6hUtETOFDQECARPQocGR9yFuY79OZ0OqgBVSCfTJvlYOiE+rWwn1PshNm08ILsbN72b9Q6 WlrKk09k5UQWJF9Oc9GlC5pGgKpeohuQ4eueAEMTlJq5EyQDViMH/nzaUdIUwQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710217183; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mX7X/bOlGB+E4PA7pTOzaw3QWwlKtIGdROqpCji49oU=; b=p2J2CIyowTcKjEmpfcLMpXi5rXirXnlWHsRoMWZukoxycdZuEbUstaeF5P0VlxFeX7jLfX FIOpPh1MZbO3rwNxZrOgsqH0YyGgg/hOhiUfVABOikNC/1x3y8TAJsuwASbidBwmSO/1Wc ET6S/In4DbaAtSmgCLtctL+HPGgVRQ2bheynO6c7E7uQEl9n4COIKDEZ7U7l8v3UTPk6fV Ub0M89Ml2MZVnSe/+NGvhyaZTztKqdJe19PRakiYOANHQ9ZB2N8SZyM0cm0mUMUnHg0IKh XjS2y2C58ufR2XBDHHCEaiG9aATs1Q07sM1FFeSK8QN4KXp4YRhOARLEY4eM+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 4Tv0lz5Lmxzysp; Tue, 12 Mar 2024 04:19: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 42C4Jhmg022279; Tue, 12 Mar 2024 04:19:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42C4JhvU022276; Tue, 12 Mar 2024 04:19:43 GMT (envelope-from git) Date: Tue, 12 Mar 2024 04:19:43 GMT Message-Id: <202403120419.42C4JhvU022276@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: a34940a9756a - main - timezone: Move to the XSI/POSIX definition for timezone. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a34940a9756ac8edce36fec176949ee82e9235b4 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=a34940a9756ac8edce36fec176949ee82e9235b4 commit a34940a9756ac8edce36fec176949ee82e9235b4 Author: Warner Losh AuthorDate: 2024-03-12 04:19:05 +0000 Commit: Warner Losh CommitDate: 2024-03-12 04:19:31 +0000 timezone: Move to the XSI/POSIX definition for timezone. The old timezone(3) function has long since been obsolete and has a fatally flawed interface. Retain this function for compatibility purposes, but shift to providing the offset from UTC in the timezone variable, whether or not the timezone observes summer time in the 'daylight' variable. Document the tzname variable that's already been set. Also make _tztab() static. It's not used in libc (or anywhere in the tree) and it's not exported as a public dynamic symbol. Sponsored by: Netflix Reviewed by: brooks, kib Differential Revision: https://reviews.freebsd.org/D44281 --- contrib/tzcode/tzconfig.h | 2 +- include/time.h | 3 ++- lib/libc/gen/Makefile.inc | 3 ++- lib/libc/gen/Symbol.map | 1 - lib/libc/gen/timezone.3 | 66 --------------------------------------------- lib/libc/gen/timezone.c | 7 ++--- lib/libc/gen/tzset.3 | 23 +++++++++++++++- lib/libc/stdtime/Symbol.map | 5 ++++ 8 files changed, 36 insertions(+), 74 deletions(-) diff --git a/contrib/tzcode/tzconfig.h b/contrib/tzcode/tzconfig.h index 730043b36526..c692d06953a2 100644 --- a/contrib/tzcode/tzconfig.h +++ b/contrib/tzcode/tzconfig.h @@ -13,7 +13,7 @@ #define NETBSD_INSPIRED 0 #define STD_INSPIRED 1 #define HAVE_TZNAME 2 -#define USG_COMPAT 0 +#define USG_COMPAT 2 #define ALTZONE 0 #endif /* !TZCONFIG_H_INCLUDED */ diff --git a/include/time.h b/include/time.h index 0ba685426f82..defad96907bf 100644 --- a/include/time.h +++ b/include/time.h @@ -162,10 +162,11 @@ struct tm *localtime_r(const time_t *, struct tm *); #if __XSI_VISIBLE char *strptime(const char * __restrict, const char * __restrict, struct tm * __restrict); +extern long timezone; +extern int daylight; #endif #if __BSD_VISIBLE -char *timezone(int, int); /* XXX XSI conflict */ time_t timelocal(struct tm * const); time_t timegm(struct tm * const); int timer_oshandle_np(timer_t timerid); diff --git a/lib/libc/gen/Makefile.inc b/lib/libc/gen/Makefile.inc index 3a8b4e57420a..9c79cd589395 100644 --- a/lib/libc/gen/Makefile.inc +++ b/lib/libc/gen/Makefile.inc @@ -307,7 +307,6 @@ MAN+= alarm.3 \ times.3 \ timespec_get.3 \ timespec_getres.3 \ - timezone.3 \ ttyname.3 \ tzset.3 \ ualarm.3 \ @@ -535,6 +534,8 @@ MLINKS+=tcsetattr.3 cfgetispeed.3 \ tcsetattr.3 tcgetattr.3 MLINKS+=ttyname.3 isatty.3 \ ttyname.3 ttyname_r.3 +MLINKS+=tzset.3 daylight.3 \ + tzset.3 timezone.3 MLINKS+=unvis.3 strunvis.3 \ unvis.3 strunvisx.3 MLINKS+=vis.3 nvis.3 \ diff --git a/lib/libc/gen/Symbol.map b/lib/libc/gen/Symbol.map index 0c58411168af..43d9c36c789e 100644 --- a/lib/libc/gen/Symbol.map +++ b/lib/libc/gen/Symbol.map @@ -261,7 +261,6 @@ FBSD_1.0 { setlogmask; ttyname_r; ttyname; - timezone; times; time; telldir; diff --git a/lib/libc/gen/timezone.3 b/lib/libc/gen/timezone.3 deleted file mode 100644 index e469f18346bf..000000000000 --- a/lib/libc/gen/timezone.3 +++ /dev/null @@ -1,66 +0,0 @@ -.\" Copyright (c) 1991, 1993 -.\" The Regents of the University of California. All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of the University nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS 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 REGENTS 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 April 19, 1994 -.Dt TIMEZONE 3 -.Os -.Sh NAME -.Nm timezone -.Nd return the timezone abbreviation -.Sh LIBRARY -.Lb libc -.Sh SYNOPSIS -.Ft char * -.Fn timezone "int zone" "int dst" -.Sh DESCRIPTION -.Bf Sy -This interface is for compatibility only; it is impossible to reliably -map timezone's arguments to a time zone abbreviation. -See -.Xr ctime 3 . -.Ef -.Pp -The -.Fn timezone -function returns a pointer to a time zone abbreviation for the specified -.Fa zone -and -.Fa dst -values. -The -.Fa zone -argument -is the number of minutes west of GMT and -.Fa dst -is non-zero if daylight savings time is in effect. -.Sh SEE ALSO -.Xr ctime 3 -.Sh HISTORY -A -.Fn timezone -function appeared in -.At v7 . diff --git a/lib/libc/gen/timezone.c b/lib/libc/gen/timezone.c index 1adc9aa1e988..2809067eb8d8 100644 --- a/lib/libc/gen/timezone.c +++ b/lib/libc/gen/timezone.c @@ -36,7 +36,7 @@ #include #define TZ_MAX_CHARS 255 -char *_tztab(int, int); +static char *_tztab(int, int); /* * timezone -- @@ -49,7 +49,7 @@ char *_tztab(int, int); static char czone[TZ_MAX_CHARS]; /* space for zone name */ char * -timezone(int zone, int dst) +__timezone_compat(int zone, int dst) { char *beg, *end; @@ -68,6 +68,7 @@ timezone(int zone, int dst) } return(_tztab(zone,dst)); /* default: table or created zone */ } +__sym_compat(timezone, __timezone_compat, FBSD_1.0); static struct zone { int offset; @@ -99,7 +100,7 @@ static struct zone { * aren't in place in /etc. DO NOT USE THIS ROUTINE OUTSIDE OF THE * STANDARD LIBRARY. */ -char * +static char * _tztab(int zone, int dst) { struct zone *zp; diff --git a/lib/libc/gen/tzset.3 b/lib/libc/gen/tzset.3 index 1207818d4057..94ccbec9aba7 100644 --- a/lib/libc/gen/tzset.3 +++ b/lib/libc/gen/tzset.3 @@ -28,16 +28,22 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd March 6, 2023 +.Dd December 25, 2023 .Dt TZSET 3 .Os .Sh NAME +.Nm daylight , +.Nm timezone , +.Nm tzname , .Nm tzset .Nd initialize time conversion information .Sh LIBRARY .Lb libc .Sh SYNOPSIS .In time.h +.Vt extern int daylight ; +.Vt extern long timezone ; +.Vt extern char *tzname[2] ; .Ft void .Fn tzset void .Sh DESCRIPTION @@ -93,6 +99,21 @@ environment variable does not specify a file and cannot be interpreted as a direct specification, .Tn UTC is used. +.Pp +After the first call to +.Nm tzset , +the +.Vt timezone +variable is set to the difference, in seconds, between Coordinated Universal +Time (UTC) and the local time. +The +.Vt daylight +variable is set to 0 if the local timezone is observing standard time. +It is set to 1 if the local timezone ever observes an alternate time, such as summer time. +The first element of the +.Vt tzname +array is the timezone name of standard time, while the second element is the +name of the altnerative time zone. .Sh SPECIFICATION FORMAT When .Ev TZ diff --git a/lib/libc/stdtime/Symbol.map b/lib/libc/stdtime/Symbol.map index 0dca02903a1a..669d4d47907b 100644 --- a/lib/libc/stdtime/Symbol.map +++ b/lib/libc/stdtime/Symbol.map @@ -30,3 +30,8 @@ FBSD_1.0 { asctime_r; asctime; }; + +FBSD_1.8 { + daylight; + timezone; +}; From nobody Tue Mar 12 04:19:44 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tv0m10WBPz5DCLX; Tue, 12 Mar 2024 04:19: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 4Tv0m06rYzz4hyW; Tue, 12 Mar 2024 04:19:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710217185; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3CQ8tpROTbhlrgexx8xkmZ4fyPICtRks/cf9DBVS0u0=; b=W0YJQe47t3OzpoMXEKKjG+CnEN2zxE1Ru3s9ibyzbVaLknzxJpSi/cB7HOOPXLYCcLpcxC oCsYdZxZ9xNe3IzDWLKlF5EQObp7MkHywovEUOb7l44qkNywVnkxI4FmfILaSUzglPyXsJ Zxv3j3GbQpAg3EU/S3mLnp/0rBBxzq5x5YA5i+4fNcuqOwG9yz9LFdt/v6C/RG4o2YHP2e rAvZDD9PqKHVg/odhTVuZ/ffe9JyxKCuiTK24A6j8hjZXhkobUXFcjTXXn1Ml9VbSkQb0t JIeE9U0GkkOcuhrg1Z9p+qJh4fA6WhTLvfzOY0koSdjE1CM7p/dZQsf7nLNyYA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710217185; a=rsa-sha256; cv=none; b=suXbkF5cwaop7PXBA/gnBC8PYTxdyME+cX3O8xdE7cWOgtzOBl+9C83X1ahvmS7F8x6Ewe mAX7yNQCvvqfkphrm9gDiZBOtcAi3PHq96uXDJ8VqKgvA1C+/C4ElzyCBX4aZC/mA+m3ON hsZHD54Y+JlJ6LuSYWvSSXnNtaIhjUBVK/SPwpUqyVXUjXXX7Znm113+bMXDyLTodjK1lG LRK4RfVHkWnIUIXpr3l06cLzdls+mN2GNGw2e6dRWaRY+/yVtPOEyMn2HzNi1JuQf9oW9i 23OgQHUO4KJ3Z2dn7ksmKu8QzRZLiB3kvDxyDSCfPs4UCnU1sP9zuAmFUKMoig== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710217185; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3CQ8tpROTbhlrgexx8xkmZ4fyPICtRks/cf9DBVS0u0=; b=ZWxTDqINarSLSN7UxAoBFjDl+RAsBh/SNY86k0CtOJD4xfRQyTInU5PEnbilYqjUp+YBOw dEwn/RaSNXQAPojPYcg1H3GUoINAFYh7Ez+pnEyTRlVoQQWJ4D4ucCc4dHnN2XUvcAFMXh o1oMpN11c3424k07YWxqjNOtFUvj311rnkCqMlOApIpDiBLUnak//6duHvviXtg5KFMyzL 0wN5nGtjyIaH58EGPtlpd/cmuAMiymTOuWzAn1AekPqtHFdt/wdi9kGfx0oVNTtuo+jgvC /V1lLqjcsMHqArTMGeJOfn0rBR8ZBnHGppu0SU9tM67lJugLAi/XGmeIQ+36Cw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tv0m06KbKzylQ; Tue, 12 Mar 2024 04:19: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 42C4Ji2f022321; Tue, 12 Mar 2024 04:19:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42C4JiWR022318; Tue, 12 Mar 2024 04:19:44 GMT (envelope-from git) Date: Tue, 12 Mar 2024 04:19:44 GMT Message-Id: <202403120419.42C4JiWR022318@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 7a0a6b276cfd - main - libc: Move tzset.3 to stdtime List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7a0a6b276cfd7e072346842fe4746d08ee30e617 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=7a0a6b276cfd7e072346842fe4746d08ee30e617 commit 7a0a6b276cfd7e072346842fe4746d08ee30e617 Author: Warner Losh AuthorDate: 2024-03-12 04:19:15 +0000 Commit: Warner Losh CommitDate: 2024-03-12 04:19:31 +0000 libc: Move tzset.3 to stdtime This really belongs in stddime, since it documents interfaces implemented in stdtime. Suggested by: brooks Sponsored by: Netflix --- lib/libc/gen/Makefile.inc | 3 --- lib/libc/stdtime/Makefile.inc | 4 +++- lib/libc/{gen => stdtime}/tzset.3 | 0 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/lib/libc/gen/Makefile.inc b/lib/libc/gen/Makefile.inc index 9c79cd589395..2f034e7d476a 100644 --- a/lib/libc/gen/Makefile.inc +++ b/lib/libc/gen/Makefile.inc @@ -308,7 +308,6 @@ MAN+= alarm.3 \ timespec_get.3 \ timespec_getres.3 \ ttyname.3 \ - tzset.3 \ ualarm.3 \ ucontext.3 \ ulimit.3 \ @@ -534,8 +533,6 @@ MLINKS+=tcsetattr.3 cfgetispeed.3 \ tcsetattr.3 tcgetattr.3 MLINKS+=ttyname.3 isatty.3 \ ttyname.3 ttyname_r.3 -MLINKS+=tzset.3 daylight.3 \ - tzset.3 timezone.3 MLINKS+=unvis.3 strunvis.3 \ unvis.3 strunvisx.3 MLINKS+=vis.3 nvis.3 \ diff --git a/lib/libc/stdtime/Makefile.inc b/lib/libc/stdtime/Makefile.inc index 07ca69aab4c5..5d0ce7765b63 100644 --- a/lib/libc/stdtime/Makefile.inc +++ b/lib/libc/stdtime/Makefile.inc @@ -20,7 +20,7 @@ CFLAGS.localtime.c+= -DALL_STATE -DTHREAD_SAFE CFLAGS.localtime.c+= -DDETECT_TZ_CHANGES .endif -MAN+= ctime.3 strftime.3 strptime.3 time2posix.3 +MAN+= ctime.3 strftime.3 strptime.3 time2posix.3 tzset.3 MAN+= tzfile.5 MLINKS+=ctime.3 asctime.3 ctime.3 difftime.3 ctime.3 gmtime.3 \ @@ -30,3 +30,5 @@ MLINKS+=ctime.3 asctime.3 ctime.3 difftime.3 ctime.3 gmtime.3 \ MLINKS+=strftime.3 strftime_l.3 MLINKS+=strptime.3 strptime_l.3 MLINKS+=time2posix.3 posix2time.3 +MLINKS+=tzset.3 daylight.3 \ + tzset.3 timezone.3 diff --git a/lib/libc/gen/tzset.3 b/lib/libc/stdtime/tzset.3 similarity index 100% rename from lib/libc/gen/tzset.3 rename to lib/libc/stdtime/tzset.3 From nobody Tue Mar 12 04:51:57 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tv1TB12dZz5DG2w; Tue, 12 Mar 2024 04:51:58 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Tv1TB0ZNsz4ltb; Tue, 12 Mar 2024 04:51:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710219118; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=m4yYx+FYA0QeY8GIB64BVJwpKrXTdbNLeyYgWNibQ9A=; b=yc0QNetx/aVy+bFKLEqnLmphevO3gqV1sMaIIEo39qpobixsn96tySM8P1DjWndLZqAWqP xr9A47TFcTPV3qdyAJ4bqDGrgwT0PviT9M1hWULXttrs/yuzouGeQKJPuKw6wjuo75dzrL f6hNNO+cmdvE/qWoWCHSY+wefBQbZnFtq0yToYNAp5azHqEVTkk2ouLxUNbLKzHRrIIIXf 1/G7sjkB4rrVhz3qx8POBf2Jyi92LWobiFvAIGfZ6vbdQlMv6xRFFH0zdAX+dFutIT8My3 UAdRWkON3a++ZORk0zf4WtEzrYN/gADrwwfFw2wp4mnCDt5mzIGZSO11KC9V7w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710219118; a=rsa-sha256; cv=none; b=KHjIh+Wl+VIw2HTCkz99mg8IOFvMsqYENqMiNmhSUvj6+Dg0zM9S5Y6L7YaQ8/6sTavcvn tKqRK6na4GylLhEZmanQhaf0Nd3vl7nRd2yQjiUlAqCH90ttV/xyXcXrzKUdIIjfZppDUl QHeFcfhF810LBEClIW4KzYciF7nFw4U1Hcoov01o9TQiDhxEGotcjm9PUtj01j4cnMostX o7scDUNYm5dSBFELUBpWQmH821shY4GT8broUd/KZCxzZyl8Z2AP0LRcqa7TvxccWx0RWc HspnCEvKKKAJMkB7uYN4y8TxGVeJFC/cG6ZB0+D/+ONpvpkqvIKJeF1IsaRXfg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710219118; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=m4yYx+FYA0QeY8GIB64BVJwpKrXTdbNLeyYgWNibQ9A=; b=eCwt237ajFl8wdbmTteJeMXpPCUZhK2ADjMKzxwtygrhoI08AtgMgXKV6NFU5YUlQdF1W6 PUaMfg0DbKBMb+z18mhghNLexrl4k9VfEblUGawGZQLydicBRAKLD55v54bkeOLWc+k0m9 A5OwD0vE7YxNL4LKGzeQLGulJft/i2qFK2T9BHhZn7Hz/aPstembgXy9gBO4kxkJRY6WjF 8BNPOafK0Z6hUM7qj8vqPfsrkxU/fcUUyLDhNqzi7gRvsygmoMACgT4DzrEmPGEK/fgxfu R95qo47yihHU5eufSszi6lzS+qAMPWPzhTye7BsdeRr+axwRpqAY/9N46Ofa0Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tv1TB09gHz10b1; Tue, 12 Mar 2024 04:51: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 42C4pvFE085979; Tue, 12 Mar 2024 04:51:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42C4pviX085976; Tue, 12 Mar 2024 04:51:57 GMT (envelope-from git) Date: Tue, 12 Mar 2024 04:51:57 GMT Message-Id: <202403120451.42C4pviX085976@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Warner Losh Subject: git: 47fff7407c22 - stable/14 - ada: Another NCQ Trim instability drive List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 47fff7407c22c2c4b36b4f9f27ddfa70bb8f3fee Auto-Submitted: auto-generated The branch stable/14 has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=47fff7407c22c2c4b36b4f9f27ddfa70bb8f3fee commit 47fff7407c22c2c4b36b4f9f27ddfa70bb8f3fee Author: Warner Losh AuthorDate: 2024-02-19 05:10:55 +0000 Commit: Warner Losh CommitDate: 2024-03-12 04:46:28 +0000 ada: Another NCQ Trim instability drive The Seagate IronWolf 110 SATA SSD drive has been reported to be unstable with NCQ trim enabled. PR: 264139 Sponsored by: Netflix (cherry picked from commit a6cef617660a424fcaa8343787f96d0ae720a284) --- sys/cam/ata/ata_da.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sys/cam/ata/ata_da.c b/sys/cam/ata/ata_da.c index e9a1c175f333..fc4dc91f9d54 100644 --- a/sys/cam/ata/ata_da.c +++ b/sys/cam/ata/ata_da.c @@ -814,6 +814,11 @@ static struct ada_quirk_entry ada_quirk_table[] = { T_DIRECT, SIP_MEDIA_FIXED, "*", "WDC WDS?????G0*", "*" }, /*quirks*/ADA_Q_4K | ADA_Q_NCQ_TRIM_BROKEN }, + { + /* Seagate IronWolf 110 SATA SSD NCQ Trim is unstable */ + { T_DIRECT, SIP_MEDIA_FIXED, "*", "ZA*NM*", "*" }, + /*quirks*/ADA_Q_4K | ADA_Q_NCQ_TRIM_BROKEN + }, { /* Default */ { From nobody Tue Mar 12 05:14:25 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tv1z62FxJz5DJZ3; Tue, 12 Mar 2024 05:14: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 4Tv1z56PhBz4ngB; Tue, 12 Mar 2024 05: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=1710220465; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E5cPFzEl0lTbf3YTFnDJ5STsHasTtKLwwbx+IK1TjWo=; b=T9T1EnuJ8rUpjSiHnz9Y8Kb2gJxi5zEjzWY/bvcLjsIMNmO+yTJwfb26nTLrYCu0FxsJzr mW7bm/jb2S6hkGoc5tqDSQ7wWQ8ZMDV+74NLP56ypiPqSFRnw+r3mywtXXGT/lxibz8mzJ 1k3e8+GGSx2DoyHzVuZSC2EOKxGyB7POhzanLT4qxjqxnZ6UIrnC7JBo7J32U4j7T0eM61 U41PFsw4vc1Cv7VMTMtUATmuxDtvmQ5tw9utVTFvFv5oaRV2RMotoP/R4DF/gTbzVT2joM f/iVWdD/O1k3SbjQKAOh+zlmg/PeUTzKc9481RB2VX6cyygoCxBE0KPaMXjoCA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710220465; a=rsa-sha256; cv=none; b=Osvw4laIUnlHvnCGe6gD7v3Ga94Q/ZIR9R2cIKWzxcZolhvEqGsApzIGJ2G8fcCSE9Nqsy 4iShhix8406ISt5ZWQpUToVuHARAVYlr2RZmQupNoY4vMFp5ESQt9P9w1MQbKyZpNv0IHU 0eC3yJgQk7wlVnt4bNMhqBt2wU4RRKDRy40CixPVS6oCWPwrAxOyfVSd5IQu9Fii8IkyN+ djeJizLGwp0rS8OagS6Y/JA5PwRdeG5dVvXNUvZiIsnzLZDi2Zc7fArLALyYrmPi/cWRFd +azzBmmjlJo9pXkDZEFcfZwGpYMGntcTtZSY5ntV7TwfGzPM5bcffVbRde7e/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=1710220465; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=E5cPFzEl0lTbf3YTFnDJ5STsHasTtKLwwbx+IK1TjWo=; b=JpJ1vlaT9DAWY5jGStk4X+0alrzB8lFlr8XdmUF4+LAQCO1NmuPph16PNRkrgaQhpOsvWB DKZyeMx0v5peVEW2WNwKfQT8sZ5yZ0e2JJKqux35NpDLhe7MLVgqWOoherBi5an5/eVALs /5NsBSrrFfezFgPML5A54nTEEqsedwAqxmbujpl0Vd/F1YMsHsZPQTOFWxvNHZ2/gwCklk pvo1Hy6Eb7mkUoWqMqUL05Kexy4lHS/YMGndAFrTfFGJQd4qCfTE6JhxacL9gpJeJ7/+3D xdPXNAiDYdR82FajJMYh8wqMZhqQIw4N6TeLpQDG3GgtRCfiXq1VFisZf2LRZQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tv1z561qnz11M9; Tue, 12 Mar 2024 05: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 42C5EPcg022298; Tue, 12 Mar 2024 05: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 42C5EPls022295; Tue, 12 Mar 2024 05:14:25 GMT (envelope-from git) Date: Tue, 12 Mar 2024 05:14:25 GMT Message-Id: <202403120514.42C5EPls022295@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Wei Hu Subject: git: e4b8828947b1 - stable/13 - Hyper-V: vPCI: limit 64 cpus for msi/msix interrupt handling List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: whu X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: e4b8828947b1135fba411f58cac123c85bb24093 Auto-Submitted: auto-generated The branch stable/13 has been updated by whu: URL: https://cgit.FreeBSD.org/src/commit/?id=e4b8828947b1135fba411f58cac123c85bb24093 commit e4b8828947b1135fba411f58cac123c85bb24093 Author: Wei Hu AuthorDate: 2024-03-11 10:15:09 +0000 Commit: Wei Hu CommitDate: 2024-03-12 05:04:59 +0000 Hyper-V: vPCI: limit 64 cpus for msi/msix interrupt handling On older Hyper-V vPCI protocol version 1.1, only the first 64 cpus are able to handle msi/msix. This is true on FreeBSD 13.x and earlier releases. If MSI IRQ is assigned to cpu id greater than 63, it would lead to missing interrupts. Add check in set_interrupt_apic_ids() to only add first 64 cpus into the interrupt cpu set. Reported by: NetApp Tested by: NetApp Reviewed by: kib Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D44297 --- sys/x86/x86/mp_x86.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sys/x86/x86/mp_x86.c b/sys/x86/x86/mp_x86.c index 1f4caf07f979..56cf7e426076 100644 --- a/sys/x86/x86/mp_x86.c +++ b/sys/x86/x86/mp_x86.c @@ -1184,6 +1184,13 @@ set_interrupt_apic_ids(void) !hyperthreading_intr_allowed) continue; + /* + * Currently Hyper-V only supports intr on first + * 64 cpus. + */ + if (vm_guest == VM_GUEST_HV && i > 63) + continue; + intr_add_cpu(i); } } From nobody Tue Mar 12 10:08:14 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tv8V61hCVz5DXBL; Tue, 12 Mar 2024 10:08: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 4Tv8V61DjQz4K4S; Tue, 12 Mar 2024 10:08:14 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710238094; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+du4xYwOBCrJKJ+9gdNgJVPtnQkUky5Pi0J5/yBMWys=; b=d71q6v4uLG4yfJ0BeAVovDEryEP9WN3eU+yV6qWmbXoOJeO45v2mk4wUqDKJNqBj29vJ9C xmhoCV9v3dcSz7kTQH2lDM/6rt6Y7Rz55b6I2RFNtDSus3QFzQBZmpr0TtJAYyN4+Uffxm RydTbbnqMqXW2Bz+nh11sgB+0xOjLZ0HZ7V6ex1yOSaF84df0EbJuzQ6Qlk/PNOgnHlepO NRsGmp6bt1zVEVVsYr8tjvPi84NniK61KdDMlOuit4Nq99RiQS1JiMsDLmPEcjsdpfGo64 1IzahCSrgHjAImiRTLx21xKFdgivUJsYr3Nn8goMmW3dwLi4AAsYPcDuxImkAg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710238094; a=rsa-sha256; cv=none; b=D6u0MnJINQgSGwj3LVSrqtndk2IBBrCrot4bKG8hYc92hdwp/xNL1ZUbtSBmyK2TxeDme/ 8Qdu4R/39KqovsASdn7US7e+PogogkZKYsz3CiyGkho9DEM+gb4Tkwb9AAAT7jUnT9kZ/J Z2bszgK4NxswR/Ax9/S2JSw8QmCSEiFfO8eR5Kio5JKJRvyPy8LH+uRKbyvTRcIu90qQeS Xa4URtioj0SUnzMQbOKyYREHDSWPublYWfHq54/2B0rOkFJcjTlJI+UfNKJRLwsaLPwCpd JaPMOEsj89zAou9qBipm1ECvGzigR/F0Z+98DltvyMrgJMh7qwlFntWVPWVYRw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710238094; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=+du4xYwOBCrJKJ+9gdNgJVPtnQkUky5Pi0J5/yBMWys=; b=jlmuhGtTZ/WuubLP/4f24xa9hYPjGiD18fKTM1IBBQDkgG8WpMme6VFL4hO5VddKiBvsc3 5iasrvy1JQAEz0x4SX0xXJovNao+jRmMocw6ageVerY8vc2eLK56t5mBBI6IAfFEL8pwPi Wk6ov+wE9Xi4lWjNe55MvnWaiKLDH/PrH6csZ9jNfnhgvdAqGI9Xx6QERrbt8Hjhs7+3NG KUMhXJkfvZNWrl0sgPKehiW8bRIuq/0wzrys/0BAxYKUZnWjHwz+EZDhq1PdMxVztOmVOk tqpxrTn2+4SlHmLDxEaApDegAuYXQYpxjRVrez4Owqi071oNswJng+LLv+o1mA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tv8V60nKqz18mb; Tue, 12 Mar 2024 10:08: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 42CA8EFg011496; Tue, 12 Mar 2024 10:08:14 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CA8ElU011493; Tue, 12 Mar 2024 10:08:14 GMT (envelope-from git) Date: Tue, 12 Mar 2024 10:08:14 GMT Message-Id: <202403121008.42CA8ElU011493@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Sumit Saxena Subject: git: 835b12a5f9c5 - main - mrsas: don't reference the removed physical disk of RAID1 during IO submission List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ssaxena X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 835b12a5f9c5dfaec3bcd9446369fdad995ee538 Auto-Submitted: auto-generated The branch main has been updated by ssaxena: URL: https://cgit.FreeBSD.org/src/commit/?id=835b12a5f9c5dfaec3bcd9446369fdad995ee538 commit 835b12a5f9c5dfaec3bcd9446369fdad995ee538 Author: Sumit Saxena AuthorDate: 2024-03-12 06:51:09 +0000 Commit: Sumit Saxena CommitDate: 2024-03-12 09:51:48 +0000 mrsas: don't reference the removed physical disk of RAID1 during IO submission When a physical disk(PD) [belonging to a RAID1 Virtual disk(VD)] is removed, driver may still use the reference to the removed PD while submitting IO to the controller. Controller firmware faults upon receipt of such IO. This patch fixes this issue by not using any reference to the removed PD. Reviewed by: imp Approved by: imp Sponsored by: Broadcom Inc Differential Revision: https://reviews.freebsd.org/D44282 --- sys/dev/mrsas/mrsas_fp.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sys/dev/mrsas/mrsas_fp.c b/sys/dev/mrsas/mrsas_fp.c index 9fdb24cc0569..c08558e78b46 100644 --- a/sys/dev/mrsas/mrsas_fp.c +++ b/sys/dev/mrsas/mrsas_fp.c @@ -964,7 +964,8 @@ mr_spanset_get_phy_params(struct mrsas_softc *sc, u_int32_t ld, u_int64_t stripR raid->regTypeReqOnRead != REGION_TYPE_UNUSED))) pRAID_Context->regLockFlags = REGION_TYPE_EXCLUSIVE; else if (raid->level == 1) { - pd = MR_ArPdGet(arRef, physArm + 1, map); + physArm++; + pd = MR_ArPdGet(arRef, physArm, map); if (pd != MR_PD_INVALID) { *pDevHandle = MR_PdDevHandleGet(pd, map); *pPdInterface = MR_PdInterfaceTypeGet(pd, map); @@ -1711,7 +1712,8 @@ MR_GetPhyParams(struct mrsas_softc *sc, u_int32_t ld, pRAID_Context->regLockFlags = REGION_TYPE_EXCLUSIVE; else if (raid->level == 1) { /* Get Alternate Pd. */ - pd = MR_ArPdGet(arRef, physArm + 1, map); + physArm++; + pd = MR_ArPdGet(arRef, physArm, map); if (pd != MR_PD_INVALID) { /* Get dev handle from Pd. */ *pDevHandle = MR_PdDevHandleGet(pd, map); From nobody Tue Mar 12 11:56:47 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvBvN1QqJz5Dhx5; Tue, 12 Mar 2024 11:56: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 4TvBvN1BPjz4Tym; Tue, 12 Mar 2024 11:56:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710244608; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=B9UeDM6EHSSzWQmAmUD6MobtfJZDo1VJXmsAy4MQjHA=; b=bOdSWzqm2vd1puu3kGTLn2/NAx+Znyk6kMHyLD2Q6Gs+TjAQt4041iYqwfvOTNhtwT2vhj xA3kDCeQd9FXpXWD2tcH7g9PtvOuBviDOYvKYhErDI7osrF52xdiShgSBK3Mx/ha54jKi4 Uxxuht4V04ROy4rKRHllNhpL9pg8QqvUgjyGvz1CK3nrYdhndI/jXLYNnSnsLrUyf6K8W/ IJb2U4sE99YW4mAK8K8EURJ5Gj0XeN7r3wgzHTVoPLjm9TKTh+6Ff9THQTKto5qowBMpOP 7HDc0A/Jfc0x7RJA28UJfMYSrTushM8yqOsTtBv1+bEp5Lp2P0v+EMzHsiZ6vg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710244608; a=rsa-sha256; cv=none; b=jo2WHrluLDPQXI+akOcagbhEeawP27SRiJK8Z3SidlhUkUtFgqbJnCqGV7EVUbSPF8snyG H83fTMFvRtosTZ2haAiaQMt/vZ7T5EWZGaQQY+WFQv6HARmZPS7tT84sfPYgvCDP8TJEvW 05IcTr9h/xy110JK8ZJQ1b46M9nkuHvru6CRWGybKs9kkL1NfNbcnjbLPrV5qp7TJ4N9Pe IwGBANVQ9MC+ZbpRp+K946xYbBid4YIoxI/6GmOEgAKdka8I20fDWID6gycUnH1Gz1Rr4F He9TIfPN0CcX/cfzF4ka5RJO75gvDfrNyG2lQlIrierOkI1aloE+e0/V/ZZnKA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710244608; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=B9UeDM6EHSSzWQmAmUD6MobtfJZDo1VJXmsAy4MQjHA=; b=i+p7zNYOrhxU8UQ8g5O9jo7jp4ScankctGtu3AYMA2lkXuCZZiwddEU8RO+7E0BdSV++zg ti7lDzhE9Ws9IIwzuydN7gnKMq6NPiCNVV2AIl1h+LRPsSdlq8gVptZmHlM0rEOcCxJ0PL fG6yZabzRG6fBF81HG6UcjxmUE8HIUx/IwoK8hGTZERa6uyhwfcT45rMCVOBlv84gdkN+g Cmvdt2GvYUJAiqkqags4QGL/rvkt2KL9JwdE2tFlGHedCDs8hJxCDRO/LUoGbpxcP5TTqk C6Ds5HViP5lJuCt3IdvB94iiYxU4p/K5RKmV7aRfaioOlBeMv+t3tr93jzk8SA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvBvN0nL5z1C6x; Tue, 12 Mar 2024 11:56: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 42CBuma2095821; Tue, 12 Mar 2024 11:56:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CBulX6095818; Tue, 12 Mar 2024 11:56:47 GMT (envelope-from git) Date: Tue, 12 Mar 2024 11:56:47 GMT Message-Id: <202403121156.42CBulX6095818@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Randall Stewart Subject: git: e18b97bd63a8 - main - Update to bring the rack stack with all its fixes in. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rrs X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e18b97bd63a8112625f7014d2326ecf533b710dd Auto-Submitted: auto-generated The branch main has been updated by rrs: URL: https://cgit.FreeBSD.org/src/commit/?id=e18b97bd63a8112625f7014d2326ecf533b710dd commit e18b97bd63a8112625f7014d2326ecf533b710dd Author: Randall Stewart AuthorDate: 2024-03-12 11:55:02 +0000 Commit: Randall Stewart CommitDate: 2024-03-12 11:55:02 +0000 Update to bring the rack stack with all its fixes in. This brings the rack stack up to the current level used at NF. Many fixes and improvements have been added. I also add in a fix to BBR to deal with the changes that have been in hpts for a while i.e. only one call no matter if mbuf queue or tcp_output. It basically does little except BBlogs and is a placemark for future work on doing path capacity measurements. With a bit of a struggle with git I finally got rack_pcm.c into place (apologies for not noticing this error). The LINT kernel is running on my box now .. sigh. Reviewed by: tuexen, glebius Sponsored by: Netflix Inc. Differential Revision:https://reviews.freebsd.org/D43986 --- sys/conf/files | 1 + sys/modules/tcp/rack/Makefile | 2 +- sys/netinet/tcp.h | 38 +- sys/netinet/tcp_log_buf.h | 9 +- sys/netinet/tcp_stacks/bbr.c | 4 +- sys/netinet/tcp_stacks/rack.c | 4443 +++++++++++++++++++++++++--------- sys/netinet/tcp_stacks/rack_pcm.c | 332 +++ sys/netinet/tcp_stacks/sack_filter.h | 5 + sys/netinet/tcp_stacks/tailq_hash.c | 33 +- sys/netinet/tcp_stacks/tailq_hash.h | 8 +- sys/netinet/tcp_stacks/tcp_rack.h | 135 +- sys/netinet/tcp_subr.c | 57 +- sys/netinet/tcp_syncache.c | 5 +- sys/netinet/tcp_usrreq.c | 7 + sys/netinet/tcp_var.h | 12 +- 15 files changed, 3920 insertions(+), 1171 deletions(-) diff --git a/sys/conf/files b/sys/conf/files index e57c82238380..c902bcfdbd52 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -4374,6 +4374,7 @@ netinet/tcp_stacks/rack.c optional inet tcphpts tcp_rack | inet6 tcphpts tcp_rac netinet/tcp_stacks/rack_bbr_common.c optional inet tcphpts tcp_bbr | inet tcphpts tcp_rack | inet6 tcphpts tcp_bbr | inet6 tcphpts tcp_rack netinet/tcp_stacks/sack_filter.c optional inet tcphpts tcp_bbr | inet tcphpts tcp_rack | inet6 tcphpts tcp_bbr | inet6 tcphpts tcp_rack netinet/tcp_stacks/tailq_hash.c optional inet tcphpts tcp_bbr | inet tcphpts tcp_rack | inet6 tcphpts tcp_bbr | inet6 tcphpts tcp_rack +netinet/tcp_stacks/rack_pcm.c optional inet tcphpts tcp_rack | inet6 tcphpts tcp_rack netinet/tcp_stats.c optional stats inet | stats inet6 netinet/tcp_subr.c optional inet | inet6 netinet/tcp_syncache.c optional inet | inet6 diff --git a/sys/modules/tcp/rack/Makefile b/sys/modules/tcp/rack/Makefile index c5bb20602337..d5f3ba170f68 100644 --- a/sys/modules/tcp/rack/Makefile +++ b/sys/modules/tcp/rack/Makefile @@ -5,7 +5,7 @@ STACKNAME= rack KMOD= tcp_${STACKNAME} -SRCS= rack.c sack_filter.c rack_bbr_common.c tailq_hash.c +SRCS= rack.c sack_filter.c rack_bbr_common.c tailq_hash.c rack_pcm.c SRCS+= opt_inet.h opt_inet6.h opt_ipsec.h SRCS+= opt_kern_tls.h diff --git a/sys/netinet/tcp.h b/sys/netinet/tcp.h index f9e561f6ce35..a8259fa30a3a 100644 --- a/sys/netinet/tcp.h +++ b/sys/netinet/tcp.h @@ -334,9 +334,22 @@ __tcp_set_flags(struct tcphdr *th, uint16_t flags) #define TCP_RACK_PACING_DIVISOR 1146 /* Pacing divisor given to rate-limit code for burst sizing */ #define TCP_RACK_PACE_MIN_SEG 1147 /* Pacing min seg size rack will use */ #define TCP_RACK_DGP_IN_REC 1148 /* Do we use full DGP in recovery? */ -#define TCP_RXT_CLAMP 1149 /* Do we apply a threshold to rack so if excess rxt clamp cwnd? */ +#define TCP_POLICER_DETECT 1149 /* Do we apply a thresholds to rack to detect and compensate for policers? */ +#define TCP_RXT_CLAMP TCP_POLICER_DETECT #define TCP_HYBRID_PACING 1150 /* Hybrid pacing enablement */ #define TCP_PACING_DND 1151 /* When pacing with rr_config=3 can sacks disturb us */ +#define TCP_SS_EEXIT 1152 /* Do we do early exit from slowtart if no b/w growth */ +#define TCP_DGP_UPPER_BOUNDS 1153 /* SS and CA upper bound in percentage */ +#define TCP_NO_TIMELY 1154 /* Disable/enable Timely */ +#define TCP_HONOR_HPTS_MIN 1155 /* Do we honor hpts min to */ +#define TCP_REC_IS_DYN 1156 /* Do we allow timely to change recovery multiplier? */ +#define TCP_SIDECHAN_DIS 1157 /* Disable/enable the side-channel */ +#define TCP_FILLCW_RATE_CAP 1158 /* Set a cap for DGP's fillcw */ +#define TCP_POLICER_MSS 1159 /* Policer MSS requirement */ +#define TCP_STACK_SPEC_INFO 1160 /* Get stack specific information (if present) */ +#define RACK_CSPR_IS_FCC 1161 +#define TCP_GP_USE_LTBW 1162 /* how we use lt_bw 0=not, 1=min, 2=max */ + /* Start of reserved space for third-party user-settable options. */ #define TCP_VENDOR SO_VENDOR @@ -447,6 +460,7 @@ struct tcp_info { u_int32_t tcpi_rcv_adv; /* Peer advertised window */ u_int32_t tcpi_dupacks; /* Consecutive dup ACKs recvd */ + u_int32_t tcpi_rttmin; /* Min observed RTT */ /* Padding to grow without breaking ABI. */ u_int32_t __tcpi_pad[14]; /* Padding. */ }; @@ -463,6 +477,20 @@ struct tcp_fastopen { #define TCP_FUNCTION_NAME_LEN_MAX 32 +struct stack_specific_info { + char stack_name[TCP_FUNCTION_NAME_LEN_MAX]; + uint64_t policer_last_bw; /* Only valid if detection enabled and policer detected */ + uint64_t bytes_transmitted; + uint64_t bytes_retransmitted; + uint32_t policer_detection_enabled: 1, + policer_detected : 1, /* transport thinks a policer is on path */ + highly_buffered : 1, /* transport considers the path highly buffered */ + spare : 29; + uint32_t policer_bucket_size; /* Only valid if detection enabled and policer detected */ + uint32_t current_round; + uint32_t _rack_i_pad[18]; +}; + struct tcp_function_set { char function_set_name[TCP_FUNCTION_NAME_LEN_MAX]; uint32_t pcbcnt; @@ -488,6 +516,7 @@ struct tcp_snd_req { uint64_t start; uint64_t end; uint32_t flags; + uint32_t playout_ms; }; union tcp_log_userdata { @@ -518,9 +547,12 @@ struct tcp_log_user { #define TCP_HYBRID_PACING_H_MS 0x0008 /* A client hint for maxseg is present */ #define TCP_HYBRID_PACING_ENABLE 0x0010 /* We are enabling hybrid pacing else disable */ #define TCP_HYBRID_PACING_S_MSS 0x0020 /* Clent wants us to set the mss overriding gp est in CU */ -#define TCP_HYBRID_PACING_SETMSS 0x1000 /* Internal flag that tellsus we set the mss on this entry */ +#define TCP_HAS_PLAYOUT_MS 0x0040 /* The client included the chunk playout milliseconds: deprecate */ +/* the below are internal only flags */ +#define TCP_HYBRID_PACING_USER_MASK 0x0FFF /* Non-internal flags mask */ +#define TCP_HYBRID_PACING_SETMSS 0x1000 /* Internal flag that tells us we set the mss on this entry */ #define TCP_HYBRID_PACING_WASSET 0x2000 /* We init to this to know if a hybrid command was issued */ - +#define TCP_HYBRID_PACING_SENDTIME 0x4000 /* Duplicate tm to last, use sendtime for catch up mode */ struct tcp_hybrid_req { struct tcp_snd_req req; diff --git a/sys/netinet/tcp_log_buf.h b/sys/netinet/tcp_log_buf.h index 1f5b7cf9b54f..2e91d9cbdf3c 100644 --- a/sys/netinet/tcp_log_buf.h +++ b/sys/netinet/tcp_log_buf.h @@ -267,7 +267,9 @@ enum tcp_log_events { TCP_RACK_TP_TRIGGERED, /* A rack tracepoint is triggered 68 */ TCP_HYBRID_PACING_LOG, /* Hybrid pacing log 69 */ TCP_LOG_PRU, /* TCP protocol user request 70 */ - TCP_LOG_END /* End (keep at end) 71 */ + TCP_POLICER_DET, /* TCP Policer detectionn 71 */ + TCP_PCM_MEASURE, /* TCP Path Capacity Measurement 72 */ + TCP_LOG_END /* End (keep at end) 72 */ }; enum tcp_log_states { @@ -371,10 +373,11 @@ struct tcp_log_dev_log_queue { #define TCP_TP_COLLAPSED_RXT 0x00000004 /* When we actually retransmit a collapsed window rsm */ #define TCP_TP_REQ_LOG_FAIL 0x00000005 /* We tried to allocate a Request log but had no space */ #define TCP_TP_RESET_RCV 0x00000006 /* Triggers when we receive a RST */ -#define TCP_TP_EXCESS_RXT 0x00000007 /* When we get excess RXT's clamping the cwnd */ +#define TCP_TP_POLICER_DET 0x00000007 /* When we detect a policer */ +#define TCP_TP_EXCESS_RXT TCP_TP_POLICER_DET /* alias */ #define TCP_TP_SAD_TRIGGERED 0x00000008 /* Sack Attack Detection triggers */ - #define TCP_TP_SAD_SUSPECT 0x0000000a /* A sack has supicious information in it */ +#define TCP_TP_PACED_BOTTOM 0x0000000b /* We have paced at the bottom */ #ifdef _KERNEL diff --git a/sys/netinet/tcp_stacks/bbr.c b/sys/netinet/tcp_stacks/bbr.c index 931beba7a262..934b35bd22d7 100644 --- a/sys/netinet/tcp_stacks/bbr.c +++ b/sys/netinet/tcp_stacks/bbr.c @@ -11529,7 +11529,9 @@ bbr_do_segment_nounlock(struct tcpcb *tp, struct mbuf *m, struct tcphdr *th, bbr_set_pktepoch(bbr, cts, __LINE__); bbr_check_bbr_for_state(bbr, cts, __LINE__, (bbr->r_ctl.rc_lost - lost)); if (nxt_pkt == 0) { - if (bbr->r_wanted_output != 0) { + if ((bbr->r_wanted_output != 0) || + (tp->t_flags & TF_ACKNOW)) { + bbr->rc_output_starts_timer = 0; did_out = 1; if (tcp_output(tp) < 0) diff --git a/sys/netinet/tcp_stacks/rack.c b/sys/netinet/tcp_stacks/rack.c index 49d946dbb63b..1fe07fa8d641 100644 --- a/sys/netinet/tcp_stacks/rack.c +++ b/sys/netinet/tcp_stacks/rack.c @@ -142,9 +142,12 @@ VNET_DECLARE(uint32_t, newreno_beta_ecn); #define V_newreno_beta VNET(newreno_beta) #define V_newreno_beta_ecn VNET(newreno_beta_ecn) +#define M_TCPFSB __CONCAT(M_TCPFSB, STACKNAME) +#define M_TCPDO __CONCAT(M_TCPDO, STACKNAME) -MALLOC_DEFINE(M_TCPFSB, "tcp_fsb", "TCP fast send block"); -MALLOC_DEFINE(M_TCPDO, "tcp_do", "TCP deferred options"); +MALLOC_DEFINE(M_TCPFSB, "tcp_fsb_" __XSTRING(STACKNAME), "TCP fast send block"); +MALLOC_DEFINE(M_TCPDO, "tcp_do_" __XSTRING(STACKNAME), "TCP deferred options"); +MALLOC_DEFINE(M_TCPPCM, "tcp_pcm_" __XSTRING(STACKNAME), "TCP PCM measurement information"); struct sysctl_ctx_list rack_sysctl_ctx; struct sysctl_oid *rack_sysctl_root; @@ -190,12 +193,24 @@ static int32_t rack_tlp_use_greater = 1; static int32_t rack_reorder_thresh = 2; static int32_t rack_reorder_fade = 60000000; /* 0 - never fade, def 60,000,000 * - 60 seconds */ -static uint32_t rack_clamp_ss_upper = 110; -static uint32_t rack_clamp_ca_upper = 105; -static uint32_t rack_rxt_min_rnds = 10; /* Min rounds if drastic rxt clamp is in place */ -static uint32_t rack_unclamp_round_thresh = 100; /* number of perfect rounds before we unclamp */ -static uint32_t rack_unclamp_rxt_thresh = 5; /* .5% and under */ -static uint64_t rack_rxt_clamp_thresh = 0; /* Do we do the rxt clamp thing */ +static uint16_t rack_policer_rxt_thresh= 0; /* 499 = 49.9%, 0 is off */ +static uint8_t rack_policer_avg_thresh = 0; /* 3.2 */ +static uint8_t rack_policer_med_thresh = 0; /* 1 - 16 */ +static uint16_t rack_policer_bucket_reserve = 20; /* How much % is reserved in the bucket */ +static uint64_t rack_pol_min_bw = 125000; /* 1mbps in Bytes per sec */ +static uint32_t rack_policer_data_thresh = 64000; /* 64,000 bytes must be sent before we engage */ +static uint32_t rack_policing_do_bw_comp = 1; +static uint32_t rack_pcm_every_n_rounds = 100; +static uint32_t rack_pcm_blast = 0; +static uint32_t rack_pcm_is_enabled = 1; +static uint8_t rack_req_del_mss = 18; /* How many segments need to be sent in a recovery episode to do policer_detection */ +static uint8_t rack_ssthresh_rest_rto_rec = 0; /* Do we restore ssthresh when we have rec -> rto -> rec */ + +static uint32_t rack_gp_gain_req = 1200; /* Amount percent wise required to gain to record a round has "gaining" */ +static uint32_t rack_rnd_cnt_req = 0x10005; /* Default number of rounds if we are below rack_gp_gain_req where we exit ss */ + + +static int32_t rack_rxt_scoreboard_clear_thresh = 2; static int32_t rack_dnd_default = 0; /* For rr_conf = 3, what is the default for dnd */ static int32_t rack_rxt_controls = 0; static int32_t rack_fill_cw_state = 0; @@ -217,9 +232,8 @@ static int32_t rack_do_hystart = 0; static int32_t rack_apply_rtt_with_reduced_conf = 0; static int32_t rack_hibeta_setting = 0; static int32_t rack_default_pacing_divisor = 250; -static int32_t rack_uses_full_dgp_in_rec = 1; static uint16_t rack_pacing_min_seg = 0; - +static int32_t rack_timely_off = 0; static uint32_t sad_seg_size_per = 800; /* 80.0 % */ static int32_t rack_pkt_delay = 1000; @@ -235,7 +249,7 @@ static int32_t rack_use_rsm_rfo = 1; static int32_t rack_max_abc_post_recovery = 2; static int32_t rack_client_low_buf = 0; static int32_t rack_dsack_std_based = 0x3; /* bit field bit 1 sets rc_rack_tmr_std_based and bit 2 sets rc_rack_use_dsack */ -static int32_t rack_bw_multipler = 2; /* Limit on fill cw's jump up to be this x gp_est */ +static int32_t rack_bw_multipler = 0; /* Limit on fill cw's jump up to be this x gp_est */ #ifdef TCP_ACCOUNTING static int32_t rack_tcp_accounting = 0; #endif @@ -247,8 +261,9 @@ static int32_t use_rack_rr = 1; static int32_t rack_non_rxt_use_cr = 0; /* does a non-rxt in recovery use the configured rate (ss/ca)? */ static int32_t rack_persist_min = 250000; /* 250usec */ static int32_t rack_persist_max = 2000000; /* 2 Second in usec's */ +static int32_t rack_honors_hpts_min_to = 1; /* Do we honor the hpts minimum time out for pacing timers */ +static uint32_t rack_max_reduce = 10; /* Percent we can reduce slot by */ static int32_t rack_sack_not_required = 1; /* set to one to allow non-sack to use rack */ -static int32_t rack_default_init_window = 0; /* Use system default */ static int32_t rack_limit_time_with_srtt = 0; static int32_t rack_autosndbuf_inc = 20; /* In percentage form */ static int32_t rack_enobuf_hw_boost_mult = 0; /* How many times the hw rate we boost slot using time_between */ @@ -282,7 +297,6 @@ static int32_t rack_rwnd_block_ends_measure = 0; static int32_t rack_def_profile = 0; static int32_t rack_lower_cwnd_at_tlp = 0; -static int32_t rack_limited_retran = 0; static int32_t rack_always_send_oldest = 0; static int32_t rack_tlp_threshold_use = TLP_USE_TWO_ONE; @@ -356,6 +370,7 @@ static int32_t rack_timely_no_stopping = 0; static int32_t rack_down_raise_thresh = 100; static int32_t rack_req_segs = 1; static uint64_t rack_bw_rate_cap = 0; +static uint64_t rack_fillcw_bw_cap = 3750000; /* Cap fillcw at 30Mbps */ /* Rack specific counters */ @@ -377,6 +392,7 @@ counter_u64_t rack_tlp_retran; counter_u64_t rack_tlp_retran_bytes; counter_u64_t rack_to_tot; counter_u64_t rack_hot_alloc; +counter_u64_t tcp_policer_detected; counter_u64_t rack_to_alloc; counter_u64_t rack_to_alloc_hard; counter_u64_t rack_to_alloc_emerg; @@ -440,7 +456,7 @@ rack_log_progress_event(struct tcp_rack *rack, struct tcpcb *tp, uint32_t tick, static int rack_process_ack(struct mbuf *m, struct tcphdr *th, struct socket *so, struct tcpcb *tp, struct tcpopt *to, - uint32_t tiwin, int32_t tlen, int32_t * ofia, int32_t thflags, int32_t * ret_val); + uint32_t tiwin, int32_t tlen, int32_t * ofia, int32_t thflags, int32_t * ret_val, int32_t orig_tlen); static int rack_process_data(struct mbuf *m, struct tcphdr *th, struct socket *so, struct tcpcb *tp, int32_t drop_hdrlen, int32_t tlen, @@ -454,6 +470,8 @@ static struct rack_sendmap *rack_alloc_limit(struct tcp_rack *rack, static struct rack_sendmap * rack_check_recovery_mode(struct tcpcb *tp, uint32_t tsused); +static uint32_t +rack_grab_rtt(struct tcpcb *tp, struct tcp_rack *rack); static void rack_cong_signal(struct tcpcb *tp, uint32_t type, uint32_t ack, int ); @@ -504,13 +522,14 @@ rack_log_ack(struct tcpcb *tp, struct tcpopt *to, static void rack_log_output(struct tcpcb *tp, struct tcpopt *to, int32_t len, uint32_t seq_out, uint16_t th_flags, int32_t err, uint64_t ts, - struct rack_sendmap *hintrsm, uint16_t add_flags, struct mbuf *s_mb, uint32_t s_moff, int hw_tls, int segsiz); + struct rack_sendmap *hintrsm, uint32_t add_flags, struct mbuf *s_mb, uint32_t s_moff, int hw_tls, int segsiz); static uint64_t rack_get_gp_est(struct tcp_rack *rack); + static void rack_log_sack_passed(struct tcpcb *tp, struct tcp_rack *rack, - struct rack_sendmap *rsm); + struct rack_sendmap *rsm, uint32_t cts); static void rack_log_to_event(struct tcp_rack *rack, int32_t to_num, struct rack_sendmap *rsm); static int32_t rack_output(struct tcpcb *tp); @@ -526,10 +545,10 @@ static int32_t rack_stopall(struct tcpcb *tp); static void rack_timer_cancel(struct tcpcb *tp, struct tcp_rack *rack, uint32_t cts, int line); static uint32_t rack_update_entry(struct tcpcb *tp, struct tcp_rack *rack, - struct rack_sendmap *rsm, uint64_t ts, int32_t * lenp, uint16_t add_flag, int segsiz); + struct rack_sendmap *rsm, uint64_t ts, int32_t * lenp, uint32_t add_flag, int segsiz); static void rack_update_rsm(struct tcpcb *tp, struct tcp_rack *rack, - struct rack_sendmap *rsm, uint64_t ts, uint16_t add_flag, int segsiz); + struct rack_sendmap *rsm, uint64_t ts, uint32_t add_flag, int segsiz); static int rack_update_rtt(struct tcpcb *tp, struct tcp_rack *rack, struct rack_sendmap *rsm, struct tcpopt *to, uint32_t cts, int32_t ack_type, tcp_seq th_ack); @@ -538,6 +557,10 @@ static int rack_do_close_wait(struct mbuf *m, struct tcphdr *th, struct socket *so, struct tcpcb *tp, struct tcpopt *to, int32_t drop_hdrlen, int32_t tlen, uint32_t tiwin, int32_t thflags, int32_t nxt_pkt, uint8_t iptos); + +static void +rack_peg_rxt(struct tcp_rack *rack, struct rack_sendmap *rsm, uint32_t segsiz); + static int rack_do_closing(struct mbuf *m, struct tcphdr *th, struct socket *so, struct tcpcb *tp, struct tcpopt *to, int32_t drop_hdrlen, @@ -720,6 +743,22 @@ rack_undo_cc_pacing(struct tcp_rack *rack) rack_swap_beta_values(rack, 4); } +static void +rack_remove_pacing(struct tcp_rack *rack) +{ + if (rack->rc_pacing_cc_set) + rack_undo_cc_pacing(rack); + if (rack->r_ctl.pacing_method & RACK_REG_PACING) + tcp_decrement_paced_conn(); + if (rack->r_ctl.pacing_method & RACK_DGP_PACING) + tcp_dec_dgp_pacing_cnt(); + rack->rc_always_pace = 0; + rack->r_ctl.pacing_method = RACK_PACING_NONE; + rack->dgp_on = 0; + rack->rc_hybrid_mode = 0; + rack->use_fixed_rate = 0; +} + static void rack_log_gpset(struct tcp_rack *rack, uint32_t seq_end, uint32_t ack_end_t, uint32_t send_end_t, int line, uint8_t mode, struct rack_sendmap *rsm) @@ -742,6 +781,8 @@ rack_log_gpset(struct tcp_rack *rack, uint32_t seq_end, uint32_t ack_end_t, log.u_bbr.pkts_out = line; log.u_bbr.cwnd_gain = rack->app_limited_needs_set; log.u_bbr.pkt_epoch = rack->r_ctl.rc_app_limited_cnt; + log.u_bbr.epoch = rack->r_ctl.current_round; + log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; if (rsm != NULL) { log.u_bbr.applimited = rsm->r_start; log.u_bbr.delivered = rsm->r_end; @@ -857,6 +898,7 @@ rack_init_sysctls(void) struct sysctl_oid *rack_measure; struct sysctl_oid *rack_probertt; struct sysctl_oid *rack_hw_pacing; + struct sysctl_oid *rack_policing; rack_attack = SYSCTL_ADD_NODE(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_sysctl_root), @@ -994,11 +1036,36 @@ rack_init_sysctls(void) "pacing", CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "Pacing related Controls"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_pacing), + OID_AUTO, "pcm_enabled", CTLFLAG_RW, + &rack_pcm_is_enabled, 1, + "Do we by default do PCM measurements?"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_pacing), + OID_AUTO, "pcm_rnds", CTLFLAG_RW, + &rack_pcm_every_n_rounds, 100, + "How many rounds before we need to do a PCM measurement"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_pacing), + OID_AUTO, "pcm_blast", CTLFLAG_RW, + &rack_pcm_blast, 0, + "Blast out the full cwnd/rwnd when doing a PCM measurement"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_pacing), + OID_AUTO, "rnd_gp_gain", CTLFLAG_RW, + &rack_gp_gain_req, 1200, + "How much do we have to increase the GP to record the round 1200 = 120.0"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_pacing), + OID_AUTO, "dgp_out_of_ss_at", CTLFLAG_RW, + &rack_rnd_cnt_req, 0x10005, + "How many rounds less than rnd_gp_gain will drop us out of SS"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), - OID_AUTO, "fulldgpinrec", CTLFLAG_RW, - &rack_uses_full_dgp_in_rec, 1, - "Do we use all DGP features in recovery (fillcw, timely et.al.)?"); + OID_AUTO, "no_timely", CTLFLAG_RW, + &rack_timely_off, 0, + "Do we not use timely in DGP?"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), OID_AUTO, "fullbufdisc", CTLFLAG_RW, @@ -1017,13 +1084,13 @@ rack_init_sysctls(void) SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), OID_AUTO, "divisor", CTLFLAG_RW, - &rack_default_pacing_divisor, 4, + &rack_default_pacing_divisor, 250, "What is the default divisor given to the rl code?"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), OID_AUTO, "fillcw_max_mult", CTLFLAG_RW, - &rack_bw_multipler, 2, - "What is the multiplier of the current gp_est that fillcw can increase the b/w too?"); + &rack_bw_multipler, 0, + "What is the limit multiplier of the current gp_est that fillcw can increase the b/w too, 200 == 200% (0 = off)?"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), OID_AUTO, "max_pace_over", CTLFLAG_RW, @@ -1039,11 +1106,6 @@ rack_init_sysctls(void) OID_AUTO, "limit_wsrtt", CTLFLAG_RW, &rack_limit_time_with_srtt, 0, "Do we limit pacing time based on srtt"); - SYSCTL_ADD_S32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_pacing), - OID_AUTO, "init_win", CTLFLAG_RW, - &rack_default_init_window, 0, - "Do we have a rack initial window 0 = system default"); SYSCTL_ADD_U16(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_pacing), OID_AUTO, "gp_per_ss", CTLFLAG_RW, @@ -1079,6 +1141,11 @@ rack_init_sysctls(void) OID_AUTO, "rate_cap", CTLFLAG_RW, &rack_bw_rate_cap, 0, "If set we apply this value to the absolute rate cap used by pacing"); + SYSCTL_ADD_U64(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_pacing), + OID_AUTO, "fillcw_cap", CTLFLAG_RW, + &rack_fillcw_bw_cap, 3750000, + "Do we have an absolute cap on the amount of b/w fillcw can specify (0 = no)?"); SYSCTL_ADD_U8(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_sysctl_root), OID_AUTO, "req_measure_cnt", CTLFLAG_RW, @@ -1317,11 +1384,6 @@ rack_init_sysctls(void) OID_AUTO, "send_oldest", CTLFLAG_RW, &rack_always_send_oldest, 0, "Should we always send the oldest TLP and RACK-TLP"); - SYSCTL_ADD_S32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_tlp), - OID_AUTO, "rack_tlimit", CTLFLAG_RW, - &rack_limited_retran, 0, - "How many times can a rack timeout drive out sends"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_tlp), OID_AUTO, "tlp_cwnd_flag", CTLFLAG_RW, @@ -1355,6 +1417,26 @@ rack_init_sysctls(void) "timers", CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "Timer related controls"); + SYSCTL_ADD_U8(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_timers), + OID_AUTO, "reset_ssth_rec_rto", CTLFLAG_RW, + &rack_ssthresh_rest_rto_rec, 0, + "When doing recovery -> rto -> recovery do we reset SSthresh?"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_timers), + OID_AUTO, "scoreboard_thresh", CTLFLAG_RW, + &rack_rxt_scoreboard_clear_thresh, 2, + "How many RTO's are allowed before we clear the scoreboard"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_timers), + OID_AUTO, "honor_hpts_min", CTLFLAG_RW, + &rack_honors_hpts_min_to, 1, + "Do rack pacing timers honor hpts min timeout"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_timers), + OID_AUTO, "hpts_max_reduce", CTLFLAG_RW, + &rack_max_reduce, 10, + "Max percentage we will reduce slot by for pacing when we are behind"); SYSCTL_ADD_U32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_timers), OID_AUTO, "persmin", CTLFLAG_RW, @@ -1434,11 +1516,6 @@ rack_init_sysctls(void) "features", CTLFLAG_RW | CTLFLAG_MPSAFE, 0, "Feature controls"); - SYSCTL_ADD_U64(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_features), - OID_AUTO, "rxt_clamp_thresh", CTLFLAG_RW, - &rack_rxt_clamp_thresh, 0, - "Bit encoded clamping setup bits CCCC CCCCC UUUU UULF PPPP PPPP PPPP PPPP"); SYSCTL_ADD_S32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_features), OID_AUTO, "hybrid_set_maxseg", CTLFLAG_RW, @@ -1474,6 +1551,53 @@ rack_init_sysctls(void) OID_AUTO, "hystartplusplus", CTLFLAG_RW, &rack_do_hystart, 0, "Should RACK enable HyStart++ on connections?"); + /* Policer detection */ + rack_policing = SYSCTL_ADD_NODE(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_sysctl_root), + OID_AUTO, + "policing", + CTLFLAG_RW | CTLFLAG_MPSAFE, 0, + "policer detection"); + SYSCTL_ADD_U16(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "rxt_thresh", CTLFLAG_RW, + &rack_policer_rxt_thresh, 0, + "Percentage of retransmits we need to be a possible policer (499 = 49.9 percent)"); + SYSCTL_ADD_U8(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "avg_thresh", CTLFLAG_RW, + &rack_policer_avg_thresh, 0, + "What threshold of average retransmits needed to recover a lost packet (1 - 169 aka 21 = 2.1)?"); + SYSCTL_ADD_U8(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "med_thresh", CTLFLAG_RW, + &rack_policer_med_thresh, 0, + "What threshold of Median retransmits needed to recover a lost packet (1 - 16)?"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "data_thresh", CTLFLAG_RW, + &rack_policer_data_thresh, 64000, + "How many bytes must have gotten through before we can start doing policer detection?"); + SYSCTL_ADD_U32(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "bwcomp", CTLFLAG_RW, + &rack_policing_do_bw_comp, 1, + "Do we raise up low b/w so that at least pace_max_seg can be sent in the srtt?"); + SYSCTL_ADD_U8(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "recmss", CTLFLAG_RW, + &rack_req_del_mss, 18, + "How many MSS must be delivered during recovery to engage policer detection?"); + SYSCTL_ADD_U16(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "res_div", CTLFLAG_RW, + &rack_policer_bucket_reserve, 20, + "What percentage is reserved in the policer bucket?"); + SYSCTL_ADD_U64(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_policing), + OID_AUTO, "min_comp_bw", CTLFLAG_RW, + &rack_pol_min_bw, 125000, + "Do we have a min b/w for b/w compensation (0 = no)?"); /* Misc rack controls */ rack_misc = SYSCTL_ADD_NODE(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_sysctl_root), @@ -1578,31 +1702,8 @@ rack_init_sysctls(void) OID_AUTO, "autoscale", CTLFLAG_RW, &rack_autosndbuf_inc, 20, "What percentage should rack scale up its snd buffer by?"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_misc), - OID_AUTO, "rnds_for_rxt_clamp", CTLFLAG_RW, - &rack_rxt_min_rnds, 10, - "Number of rounds needed between RTT clamps due to high loss rates"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_misc), - OID_AUTO, "rnds_for_unclamp", CTLFLAG_RW, - &rack_unclamp_round_thresh, 100, - "Number of rounds needed with no loss to unclamp"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_misc), - OID_AUTO, "rxt_threshs_for_unclamp", CTLFLAG_RW, - &rack_unclamp_rxt_thresh, 5, - "Percentage of retransmits we need to be under to unclamp (5 = .5 percent)\n"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_misc), - OID_AUTO, "clamp_ss_upper", CTLFLAG_RW, - &rack_clamp_ss_upper, 110, - "Clamp percentage ceiling in SS?"); - SYSCTL_ADD_U32(&rack_sysctl_ctx, - SYSCTL_CHILDREN(rack_misc), - OID_AUTO, "clamp_ca_upper", CTLFLAG_RW, - &rack_clamp_ca_upper, 110, - "Clamp percentage ceiling in CA?"); + + /* Sack Attacker detection stuff */ SYSCTL_ADD_U32(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_attack), @@ -1779,6 +1880,13 @@ rack_init_sysctls(void) OID_AUTO, "alloc_hot", CTLFLAG_RD, &rack_hot_alloc, "Total allocations from the top of our list"); + tcp_policer_detected = counter_u64_alloc(M_WAITOK); + SYSCTL_ADD_COUNTER_U64(&rack_sysctl_ctx, + SYSCTL_CHILDREN(rack_counters), + OID_AUTO, "policer_detected", CTLFLAG_RD, + &tcp_policer_detected, + "Total policer_detections"); + rack_to_alloc = counter_u64_alloc(M_WAITOK); SYSCTL_ADD_COUNTER_U64(&rack_sysctl_ctx, SYSCTL_CHILDREN(rack_counters), @@ -1957,17 +2065,8 @@ rack_init_sysctls(void) static uint32_t rc_init_window(struct tcp_rack *rack) { - uint32_t win; + return (tcp_compute_initwnd(tcp_maxseg(rack->rc_tp))); - if (rack->rc_init_win == 0) { - /* - * Nothing set by the user, use the system stack - * default. - */ - return (tcp_compute_initwnd(tcp_maxseg(rack->rc_tp))); - } - win = ctf_fixed_maxseg(rack->rc_tp) * rack->rc_init_win; - return (win); } static uint64_t @@ -2071,6 +2170,7 @@ rack_log_hybrid_bw(struct tcp_rack *rack, uint32_t seq, uint64_t cbw, uint64_t t off = (uint64_t)(cur) - (uint64_t)(&rack->rc_tp->t_tcpreq_info[0]); log.u_bbr.bbr_substate = (uint8_t)(off / sizeof(struct tcp_sendfile_track)); #endif + log.u_bbr.inhpts = 1; log.u_bbr.flex4 = (uint32_t)(rack->rc_tp->t_sndbytes - cur->sent_at_fs); log.u_bbr.flex5 = (uint32_t)(rack->rc_tp->t_snd_rxt_bytes - cur->rxt_at_fs); log.u_bbr.flex7 = (uint16_t)cur->hybrid_flags; @@ -2116,9 +2216,24 @@ rack_log_hybrid_sends(struct tcp_rack *rack, struct tcp_sendfile_track *cur, int memset(&log, 0, sizeof(log)); log.u_bbr.timeStamp = tcp_get_usecs(&tv); - log.u_bbr.cur_del_rate = rack->rc_tp->t_sndbytes; log.u_bbr.delRate = cur->sent_at_fs; - log.u_bbr.rttProp = rack->rc_tp->t_snd_rxt_bytes; + + if ((cur->flags & TCP_TRK_TRACK_FLG_LSND) == 0) { + /* + * We did not get a new Rules Applied to set so + * no overlapping send occured, this means the + * current byte counts are correct. + */ + log.u_bbr.cur_del_rate = rack->rc_tp->t_sndbytes; + log.u_bbr.rttProp = rack->rc_tp->t_snd_rxt_bytes; + } else { + /* + * Overlapping send case, we switched to a new + * send and did a rules applied. + */ + log.u_bbr.cur_del_rate = cur->sent_at_ls; + log.u_bbr.rttProp = cur->rxt_at_ls; + } log.u_bbr.bw_inuse = cur->rxt_at_fs; log.u_bbr.cwnd_gain = line; off = (uint64_t)(cur) - (uint64_t)(&rack->rc_tp->t_tcpreq_info[0]); @@ -2138,6 +2253,7 @@ rack_log_hybrid_sends(struct tcp_rack *rack, struct tcp_sendfile_track *cur, int log.u_bbr.lt_epoch = (uint32_t)((cur->timestamp >> 32) & 0x00000000ffffffff); /* now set all the flags in */ log.u_bbr.pkts_out = cur->hybrid_flags; + log.u_bbr.lost = cur->playout_ms; log.u_bbr.flex6 = cur->flags; /* * Last send time = note we do not distinguish cases @@ -2146,6 +2262,20 @@ rack_log_hybrid_sends(struct tcp_rack *rack, struct tcp_sendfile_track *cur, int */ log.u_bbr.pkt_epoch = (uint32_t)(rack->r_ctl.last_tmit_time_acked & 0x00000000ffffffff); log.u_bbr.flex5 = (uint32_t)((rack->r_ctl.last_tmit_time_acked >> 32) & 0x00000000ffffffff); + /* + * Compose bbr_state to be a bit wise 0000ADHF + * where A is the always_pace flag + * where D is the dgp_on flag + * where H is the hybrid_mode on flag + * where F is the use_fixed_rate flag. + */ + log.u_bbr.bbr_state = rack->rc_always_pace; + log.u_bbr.bbr_state <<= 1; + log.u_bbr.bbr_state |= rack->dgp_on; + log.u_bbr.bbr_state <<= 1; + log.u_bbr.bbr_state |= rack->rc_hybrid_mode; + log.u_bbr.bbr_state <<= 1; + log.u_bbr.bbr_state |= rack->use_fixed_rate; log.u_bbr.flex8 = HYBRID_LOG_SENT_LOST; tcp_log_event(rack->rc_tp, NULL, @@ -2299,6 +2429,7 @@ normal_ratecap: #ifdef TCP_REQUEST_TRK if (rack->rc_hybrid_mode && rack->rc_catch_up && + (rack->r_ctl.rc_last_sft != NULL) && (rack->r_ctl.rc_last_sft->hybrid_flags & TCP_HYBRID_PACING_S_MSS) && (rack_hybrid_allow_set_maxseg == 1) && ((rack->r_ctl.rc_last_sft->hybrid_flags & TCP_HYBRID_PACING_SETMSS) == 0)) { @@ -2338,7 +2469,10 @@ rack_get_gp_est(struct tcp_rack *rack) */ uint64_t srtt; - lt_bw = rack_get_lt_bw(rack); + if (rack->dis_lt_bw == 1) + lt_bw = 0; + else + lt_bw = rack_get_lt_bw(rack); if (lt_bw) { /* * No goodput bw but a long-term b/w does exist @@ -2374,19 +2508,22 @@ rack_get_gp_est(struct tcp_rack *rack) /* Still doing initial average must calculate */ bw = rack->r_ctl.gp_bw / max(rack->r_ctl.num_measurements, 1); } + if (rack->dis_lt_bw) { + /* We are not using lt-bw */ + ret_bw = bw; + goto compensate; + } lt_bw = rack_get_lt_bw(rack); if (lt_bw == 0) { /* If we don't have one then equate it to the gp_bw */ lt_bw = rack->r_ctl.gp_bw; } - if ((rack->r_cwnd_was_clamped == 1) && (rack->r_clamped_gets_lower > 0)){ - /* if clamped take the lowest */ + if (rack->use_lesser_lt_bw) { if (lt_bw < bw) ret_bw = lt_bw; else ret_bw = bw; } else { - /* If not set for clamped to get lowest, take the highest */ if (lt_bw > bw) ret_bw = lt_bw; else @@ -2487,6 +2624,8 @@ rack_log_dsack_event(struct tcp_rack *rack, uint8_t mod, uint32_t flex4, uint32_ log.u_bbr.flex7 = rack->r_ctl.dsack_persist; log.u_bbr.flex8 = mod; log.u_bbr.timeStamp = tcp_get_usecs(&tv); + log.u_bbr.epoch = rack->r_ctl.current_round; + log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2535,6 +2674,8 @@ rack_log_hdwr_pacing(struct tcp_rack *rack, else log.u_bbr.cur_del_rate = 0; log.u_bbr.rttProp = rack->r_ctl.last_hw_bw_req; + log.u_bbr.epoch = rack->r_ctl.current_round; + log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2552,28 +2693,9 @@ rack_get_output_bw(struct tcp_rack *rack, uint64_t bw, struct rack_sendmap *rsm, uint64_t bw_est, high_rate; uint64_t gain; - if ((rack->r_pacing_discount == 0) || - (rack_full_buffer_discount == 0)) { - /* - * No buffer level based discount from client buffer - * level is enabled or the feature is disabled. - */ - gain = (uint64_t)rack_get_output_gain(rack, rsm); - bw_est = bw * gain; - bw_est /= (uint64_t)100; - } else { - /* - * We have a discount in place apply it with - * just a 100% gain (we get no boost if the buffer - * is full). - */ - uint64_t discount; - - discount = bw * (uint64_t)(rack_full_buffer_discount * rack->r_ctl.pacing_discount_amm); - discount /= 100; - /* What %% of the b/w do we discount */ - bw_est = bw - discount; - } + gain = (uint64_t)rack_get_output_gain(rack, rsm); + bw_est = bw * gain; + bw_est /= (uint64_t)100; /* Never fall below the minimum (def 64kbps) */ if (bw_est < RACK_MIN_BW) bw_est = RACK_MIN_BW; @@ -2659,6 +2781,8 @@ log_anyway: log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; + log.u_bbr.epoch = rack->r_ctl.current_round; + log.u_bbr.lt_epoch = rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2698,6 +2822,10 @@ rack_log_to_start(struct tcp_rack *rack, uint32_t cts, uint32_t to, int32_t slot log.u_bbr.lt_epoch = rack->rc_tp->t_rxtshift; log.u_bbr.lost = rack_rto_min; log.u_bbr.epoch = rack->r_ctl.roundends; + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; + log.u_bbr.applimited = rack->rc_tp->t_flags2; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2731,6 +2859,9 @@ rack_log_to_event(struct tcp_rack *rack, int32_t to_num, struct rack_sendmap *rs log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2780,6 +2911,9 @@ rack_log_map_chg(struct tcpcb *tp, struct tcp_rack *rack, log.u_bbr.lost = 0; else log.u_bbr.lost = rack->r_ctl.rc_prr_sndcnt; + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2927,6 +3061,9 @@ rack_log_rtt_sample_calc(struct tcp_rack *rack, uint32_t rtt, uint32_t send_time log.u_bbr.flex4 = where; log.u_bbr.flex7 = 2; log.u_bbr.timeStamp = tcp_get_usecs(&tv); + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2939,7 +3076,7 @@ rack_log_rtt_sample_calc(struct tcp_rack *rack, uint32_t rtt, uint32_t send_time static void rack_log_rtt_sendmap(struct tcp_rack *rack, uint32_t idx, uint64_t tsv, uint32_t tsecho) { - if (tcp_bblogging_on(rack->rc_tp)) { + if (rack_verbose_logging && tcp_bblogging_on(rack->rc_tp)) { union tcp_log_stackspecific log; struct timeval tv; @@ -2951,6 +3088,9 @@ rack_log_rtt_sendmap(struct tcp_rack *rack, uint32_t idx, uint64_t tsv, uint32_t log.u_bbr.flex7 = 3; log.u_bbr.rttProp = tsv; log.u_bbr.timeStamp = tcp_get_usecs(&tv); + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -2979,6 +3119,9 @@ rack_log_progress_event(struct tcp_rack *rack, struct tcpcb *tp, uint32_t tick, log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -3051,6 +3194,13 @@ rack_log_doseg_done(struct tcp_rack *rack, uint32_t cts, int32_t nxt_pkt, int32_ log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; + log.u_bbr.epoch = rack->rc_inp->inp_socket->so_snd.sb_hiwat; + log.u_bbr.lt_epoch = rack->rc_inp->inp_socket->so_rcv.sb_hiwat; + log.u_bbr.lost = rack->rc_tp->t_srtt; + log.u_bbr.pkt_epoch = rack->rc_tp->rfbuf_cnt; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -3112,6 +3262,9 @@ rack_log_type_just_return(struct tcp_rack *rack, uint32_t cts, uint32_t tlen, ui log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; log.u_bbr.cwnd_gain = rack->rc_has_collapsed; + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -3146,6 +3299,9 @@ rack_log_to_cancel(struct tcp_rack *rack, int32_t hpts_removed, int line, uint32 log.u_bbr.pkts_out = rack->r_ctl.rc_out_at_rto; log.u_bbr.delivered = rack->r_ctl.rc_snd_max_at_rto; log.u_bbr.pacing_gain = rack->r_must_retran; + log.u_bbr.bw_inuse = rack->r_ctl.current_round; + log.u_bbr.bw_inuse <<= 32; + log.u_bbr.bw_inuse |= rack->r_ctl.rc_considered_lost; TCP_LOG_EVENTP(rack->rc_tp, NULL, &rack->rc_inp->inp_socket->so_rcv, &rack->rc_inp->inp_socket->so_snd, @@ -3314,6 +3470,7 @@ rack_counter_destroy(void) counter_u64_free(rack_saw_enobuf_hw); counter_u64_free(rack_saw_enetunreach); counter_u64_free(rack_hot_alloc); + counter_u64_free(tcp_policer_detected); counter_u64_free(rack_to_alloc); counter_u64_free(rack_to_alloc_hard); counter_u64_free(rack_to_alloc_emerg); @@ -3475,6 +3632,8 @@ rack_free(struct tcp_rack *rack, struct rack_sendmap *rsm) rack->r_ctl.rc_num_split_allocs--; } if (rsm == rack->r_ctl.rc_first_appl) { + rack->r_ctl.cleared_app_ack_seq = rsm->r_start + (rsm->r_end - rsm->r_start); + rack->r_ctl.cleared_app_ack = 1; if (rack->r_ctl.rc_app_limited_cnt == 0) rack->r_ctl.rc_first_appl = NULL; else @@ -3490,7 +3649,7 @@ rack_free(struct tcp_rack *rack, struct rack_sendmap *rsm) rack->r_ctl.rc_sacklast = NULL; memset(rsm, 0, sizeof(struct rack_sendmap)); /* Make sure we are not going to overrun our count limit of 0xff */ - if ((rack->rc_free_cnt + 1) > 0xff) { + if ((rack->rc_free_cnt + 1) > RACK_FREE_CNT_MAX) { rack_free_trim(rack); } TAILQ_INSERT_HEAD(&rack->r_ctl.rc_free, rsm, r_tnext); @@ -3806,6 +3965,8 @@ rack_increase_bw_mul(struct tcp_rack *rack, int timely_says, uint64_t cur_bw, ui logged = 0; + if (rack->rc_skip_timely) + return; if (override) { /* * override is passed when we are @@ -3976,6 +4137,8 @@ rack_decrease_bw_mul(struct tcp_rack *rack, int timely_says, uint32_t rtt, int32 uint64_t logvar, logvar2, logvar3; uint32_t logged, new_per, ss_red, ca_red, rec_red, alt, val; + if (rack->rc_skip_timely) + return; if (rack->rc_gp_incr) { /* Turn off increment counting */ rack->rc_gp_incr = 0; @@ -4177,6 +4340,7 @@ rack_enter_probertt(struct tcp_rack *rack, uint32_t us_cts) */ uint32_t segsiz; + rack->r_ctl.rc_lower_rtt_us_cts = us_cts; if (rack->rc_gp_dyn_mul == 0) return; @@ -4203,7 +4367,6 @@ rack_enter_probertt(struct tcp_rack *rack, uint32_t us_cts) rack->r_ctl.rc_pace_min_segs); rack->in_probe_rtt = 1; rack->measure_saw_probe_rtt = 1; - rack->r_ctl.rc_lower_rtt_us_cts = us_cts; rack->r_ctl.rc_time_probertt_starts = 0; rack->r_ctl.rc_entry_gp_rtt = rack->r_ctl.rc_gp_srtt; if (rack_probertt_use_min_rtt_entry) @@ -4387,6 +4550,7 @@ static void rack_check_probe_rtt(struct tcp_rack *rack, uint32_t us_cts) { *** 7330 LINES SKIPPED *** From nobody Tue Mar 12 13:56:43 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvFYl5Q22z5Dt9H for ; Tue, 12 Mar 2024 13:56: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 4TvFYl4y8bz4kGg; Tue, 12 Mar 2024 13:56:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710251803; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PLLsReJX9ijUKK1D4pwMZn+QePtoe1r2L7AI3gRa324=; b=okl6nkn97AGaQF0DFqOFJOqCZj0V3/eHKWQ+u71eHir3D08bh6RIku7h8blyzpblzJ6Fhn OlT7/Mi+O3gEQ73gJDc/IBp6pkWvM4AxObF3L/GLnG6vXp7R6NuLKIRZiqgPPzFRVTTp4H MVnjDU5d+Rg0v2YSnENy32v/Wchzq5UKRpch/TDrQ8+pFIE6Xy7j3yxXwzh0R+enQlpuiY sOFCBzuwG/Yip73b5U7wdOp3r99QhdCKxB9MNbF3xySbAhLNHtkLdS8JHqtkx+mTvKnTBq IR9kfy/CRuKGVzUQajxXQwoYzCue+/ukwxlxxnH9afLRwvvBFnPDEhDgHfCsBg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710251803; a=rsa-sha256; cv=none; b=Jjab//doZvwLWaAS1LjkIUHsvsf7HLQbtQodxXEi42+YkBOtDgRJ/WvJCjlv86QN6QD8KI OpCfopRrsR7edhPIcb77fmAhGa9xjyira7QbrECcZNkWCjBIRUwxyKbwI8a/CyfB4+haDn Mb2k93zrbpVR6cAcOzHqwYhH2VzgNGCeP8slmnZXIEXifDQ5AFPI3GYWXS9tO+GpZGFj0C hfFh8gnA5/lfzt2s77U1BqIHgt8jFY4X/fyFCvlBWK4IBuAukHPZYQUNB/QiCzBLs7qpFE 2dJrPJlFf1L7JQ6mEzsz4U1LJbfmfbcelqG1lR3rwSjrRbW8u20EFxHciUhyVw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710251803; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PLLsReJX9ijUKK1D4pwMZn+QePtoe1r2L7AI3gRa324=; b=MoQX14DBonj/O958bCvZx7BKhz1vW43bAdvGWhT6dgoITkYuhduZYHac0RBrOMgFsuaufk XLwmuONoq4qzNbeem+uAPHFy75BSXQNOd+fs1u/c8HBpNUbbK01n6PnwnZFvV0RBkBGj9a UAl54UWzJEoLMfLgDgqj0UJFHQzankCWLDhCAQKLlWDYfUFW4YyH8DNKah4iOVVIlC67i0 SnxD3HXTGxkbwe7MKsqYUPdeXoVtLBO/AFgfTRQ92wZkpDLpt7N6To4Q8VJnLB9GDBPTfn H9a/lFWk4FL8XE5obEbE6FFZON8GuT8jDMVyE9nOUJf/oSkaUJLuvteKPZ9d8w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvFYl4FsNz1Gff; Tue, 12 Mar 2024 13:56: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 42CDuhO6098875; Tue, 12 Mar 2024 13:56:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CDuhsk098874; Tue, 12 Mar 2024 13:56:43 GMT (envelope-from git) Date: Tue, 12 Mar 2024 13:56:43 GMT Message-Id: <202403121356.42CDuhsk098874@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: Cy Schubert Subject: git: cdad538768db..1e59a00476c9 - vendor/sqlite3 - vendor branch updated List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/vendor/sqlite3 X-Git-Reftype: branch X-Git-Commit: 1e59a00476c9801952e7319719fcdb095a0cd007 X-Git-Oldrev: cdad538768db9e2c8258d19e9282fb5aaae80e46 X-Git-Newrev: 1e59a00476c9801952e7319719fcdb095a0cd007 Auto-Submitted: auto-generated The branch vendor/sqlite3 has been updated by cy: URL: https://cgit.FreeBSD.org/src/log/?id=cdad538768db..1e59a00476c9 1e59a00476c9 sqlite3: Vendor import of sqlite3 3.45.1 From nobody Tue Mar 12 13:56:43 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvFYl6hRrz5Dt76 for ; Tue, 12 Mar 2024 13:56: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 4TvFYl57GJz4kGh; Tue, 12 Mar 2024 13:56:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710251803; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hWg0qp55Ug3on8p1/DJ6bVh17oeywalIXS31nvJYTVE=; b=QyfER2Z720jKPlIj/9/Mc52fr12BBteBIfWEskjWECt15PS9c+Ilb3P1Onj6XECZJ9H+LN gt/PChHAtL+omk4SEeaWqiKuSorXoyWswEGrufuMX6E6ozeYhuJ23Z7sngGaC/rxv7thk4 ZbZanU9xd2l+kKl5llA6/wc7LWBoQWTEZ0PjQ33AIU7XuBp/IPNwgOdyATsiNWVPnTiaVK 9C0NZr812XXIu1b47sSApLtqwp82Ud3Yhf7ip2BVtnBf3DgtTRBcn7nW+3DpqS4MqD9ReV SDGq+dUiOM4un/FOh383GHJRJqm0Z92nTCbt3Wgue/ZIB4oqo85L+Y5swwPK4A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710251803; a=rsa-sha256; cv=none; b=giiNuSFu15lwTSEnsMFlzEf0Pjfn76mAhrZLy3YYND2NbycSwyJ//j/2LZ4W6oF9DzfK+Z ATxzml1ZhUotUOXZwozeVzctzwaVqSQTvVieFMfLQWGyqu6NBDFIShGBRXgAnugWaN2Fzq QbiBz71JNb4VvOnxgninbjC5id6ePu2Sclr0OBgUFShCD4KoasSXtS7S7owGtbl2lXXght jALgUmThrOchsYYQA5Xn0xTPYOATimS7EWuQSd43l+eNzYL+gUoDPgRN+yyyP1PUBktxl1 mCBKPn3xB+INWhTrRrxxjJ/LbxaLUtMqiRGWI/0JISm/B916O3wSwPcUYEPRlg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710251803; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hWg0qp55Ug3on8p1/DJ6bVh17oeywalIXS31nvJYTVE=; b=QrKumjK50OVaDd0/v7/bCo4gnOtt0/WjJXHMz+2LbIvjLsgfB0EqpbwVIYlJ3xwvZuonWC wFGj4fa9ZGn0Tl8YIWyfaSBFhcWwAFwuufgPmMw4+rzQXGoVy9qHZFw+4QadnmjfzeCglp DLG3VXYHZk5kaoOIGeJrdE4VXvjPTGHqMEJEP1QGgJ4Doj7AK4Z/v+VVT3toAhyFBB3efW WhwRzvrCFsO8GjlJ3no9GAOaoSLJBIqeuV1WmjBQjBUsymPH6sYFxiQycqUhiR/Vgg8Bwk 63el4+WhLCNP8mz8YsZd+Qp+8EP0RdxcIdSIoFqDywZG8dn24grJBg1QKD+dUw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvFYl4hjqz1GVN; Tue, 12 Mar 2024 13:56: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 42CDuhfg098894; Tue, 12 Mar 2024 13:56:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CDuhNS098893; Tue, 12 Mar 2024 13:56:43 GMT (envelope-from git) Date: Tue, 12 Mar 2024 13:56:43 GMT Message-Id: <202403121356.42CDuhNS098893@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: Cy Schubert Subject: git: 27c4fd574281 - Create tag vendor/sqlite3/sqlite-3450100 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/tags/vendor/sqlite3/sqlite-3450100 X-Git-Reftype: annotated tag X-Git-Commit: 27c4fd5742817355e1298d851bf83e22e2a5ec41 Auto-Submitted: auto-generated The annotated tag vendor/sqlite3/sqlite-3450100 has been created by cy: URL: https://cgit.FreeBSD.org/src/tag/?h=vendor/sqlite3/sqlite-3450100 tag vendor/sqlite3/sqlite-3450100 Tagger: Cy Schubert TaggerDate: 2024-03-12 13:56:05 +0000 sqlite3: Tag 3.45.1 commit 1e59a00476c9801952e7319719fcdb095a0cd007 Author: Cy Schubert AuthorDate: 2024-03-12 13:54:12 +0000 Commit: Cy Schubert CommitDate: 2024-03-12 13:54:12 +0000 sqlite3: Vendor import of sqlite3 3.45.1 Release notes at https://www.sqlite.org/releaselog/3_45_1.html. Obtained from: https://www.sqlite.org/2024/sqlite-autoconf-3450100.tar.gz From nobody Tue Mar 12 14:45:08 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvGdc43XCz5DxgN; Tue, 12 Mar 2024 14:45: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 4TvGdc3K3cz4pFp; Tue, 12 Mar 2024 14:45:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710254708; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NOC24ikXxPuZvmCvXeqAx+aDjUha+CMqJM9hMj48Wqw=; b=EmBbYU15dZ9GZp+KHFPG7lH9fHJag4pV2em6CUderzCvxh3MVv6bPGONCcMu+RTfFwj/G4 fgQ9PZtt/vuzBszebi6/7wdi9copdh5TXnMUnk1WCr1i7YS2wUtCFAjYnAeK9ge45ZkovS bu4DnTnZs95ILfgLTTOSVSD5CQRsEeOOPSXKDsRlua6cUUQlAbM1ZYkXPXywGcBuKUA+lK wscXiuzTtiO6Q9xlaBdIEFqAiBPyplJZbNk/KLoGdszs/UxLRF29nxDi1ZZ7L2bk77rh54 2P0avE/N4AkQeBoemz/yrFQ6Y7sDCOZX39dI8rqXI+4jaFaXW2GfZikYWujzWQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710254708; a=rsa-sha256; cv=none; b=xAt6g7t2Lz6Z2B8INkC6+q/eszTRKvjr6oOFq0ehoEegwrHUNhlYPeJVk6nQtJK5vrFy03 g4OxLnSJuDe7HPS+g2n586c5wEKmG4Wo2Jkc8KOqw1YViENbakiE0IbAANvzvLZBMi/V5K Cz4tlJoWBTfFdNDVQOhbovAqR0yXX7A6JAijSqe+AoyCgY3s3FxLFVpjL7skRI45x7iZaz +KP3bfytlvqUIQvIsOjiqfJdUeI3j5y2LE4M5tCLEZomQVAThCWKYg/pcnOcg05nWfOSzd d3AcbvLoFmRJP5m8Rrue/AbUM6U59YND2QnoQQe17g/di2O84RNvnk+km0KVRw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710254708; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NOC24ikXxPuZvmCvXeqAx+aDjUha+CMqJM9hMj48Wqw=; b=WWfQa7h/F7eUILWjj6xHgvZVwge/CYM9DzgQhiYAty1DAUkx/dryNpebLXEGEJApfgeREr 09zMIe/P5qzwWvYNnHrK74TLi+SECvQ1ApmKr5BMooCgXQYmkYW7Dqdub42FyxV+GuhTuk xDiKihiEphbtWZpWznbPDVmMbqVLGUpKtS8K4fCjFtCT2Uj1WjjqpYgDRQG0768kcbNwe4 NLaXboqw72BeOPGOw5NSppiKvohWf2kWBEPb6f/HeyvYgh/f/NOZEcCPyLrJBicQsuarSp eoo0Qqijn2YKewQ9Cf82AnmukxhWHKg6tgPi7+CdTIAhBfimfkZoL9GK9u6acw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvGdc2wMpz1Hbt; Tue, 12 Mar 2024 14:45: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 42CEj8xu083157; Tue, 12 Mar 2024 14:45:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CEj8it083154; Tue, 12 Mar 2024 14:45:08 GMT (envelope-from git) Date: Tue, 12 Mar 2024 14:45:08 GMT Message-Id: <202403121445.42CEj8it083154@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gordon Bergling Subject: git: f3343fe4a64f - main - md5.1: Fix the GNU mode example when using a digest file List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gbe X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f3343fe4a64fe6a25b4e09ab9061a45f82e5abc1 Auto-Submitted: auto-generated The branch main has been updated by gbe: URL: https://cgit.FreeBSD.org/src/commit/?id=f3343fe4a64fe6a25b4e09ab9061a45f82e5abc1 commit f3343fe4a64fe6a25b4e09ab9061a45f82e5abc1 Author: Gordon Bergling AuthorDate: 2024-03-12 14:44:48 +0000 Commit: Gordon Bergling CommitDate: 2024-03-12 14:44:48 +0000 md5.1: Fix the GNU mode example when using a digest file The last example in the manpage md5(1) wants to demonstrate GNU mode (md5sum), but uses BSD mode (md5) instead. In GNU mode, the -c option does not compare against a hash string passed as parameter. Instead, it expects a digest file, as created under the name digest for /boot/loader.conf in the example above. PR: 276560 Reviewed by: mhorne, des MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D44098 --- sbin/md5/md5.1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sbin/md5/md5.1 b/sbin/md5/md5.1 index 0a8dc46f3b1f..b530292c8269 100644 --- a/sbin/md5/md5.1 +++ b/sbin/md5/md5.1 @@ -1,4 +1,4 @@ -.Dd February 13, 2024 +.Dd March 12, 2024 .Dt MD5 1 .Os .Sh NAME @@ -367,7 +367,7 @@ for .Pa /boot/loader.conf in the example above. .Bd -literal -offset indent -$ md5 -c digest /boot/loader.conf +$ md5sum -c digest /boot/loader.conf: OK .Ed .Pp From nobody Tue Mar 12 14:49:09 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvGkF2KlSz5Dxy2; Tue, 12 Mar 2024 14:49:09 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TvGkF24csz4ptQ; Tue, 12 Mar 2024 14:49:09 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710254949; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OjJDO1jAEAOb2nEEiQbxvNNXurlyR5ujeByqeIr5+EY=; b=lJgtikfEEgy4DVUWXN/OQwQsaF9b7hwwaDEXxDn4EOHm6rrvK1+DT8DcOxmuTvc3DN0o6E Nm5laiAOclrbCMBEza3ekWg2oPmuEU6+bqXG1vmD/EPO7x9c6F+E0sW85ZnaP+VROa9Cwy fjGsK6rRHihtmI9XEFXvLZD9frBeN8CvgQwsteXn5qQuMEII/gridejNBHJ5/Z75hsJ43Q 9wKw0gnL9igTZ8qnoc8Ah/qEhAENagrG0dPIHESPWPdSazFKze4oNwudHgOvjRpW6mhvcr 2hF7BpSAIfmSB8k9qtDBjTOKdAVyamkAJP5AqTBKeSP+RlgD50BS9vsSTjMiJQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710254949; a=rsa-sha256; cv=none; b=DdCxri5yBvK8X0I67L0k0QJcO+af2SvCxkftcIxc0+ZOI1snPsrkbUQAz5P51/sTUhNnpa z3t0JdeWpzZDmWNpTTBtVh1dvjqbj/vfkjnS4ic36lU3iuA/kq4wPoOKygu1OBIAnGeUcq 5Ub42QgY+vQRu2xDmTCkjIIV6KX+i4jgCb4BGyNG5cnjwJM66lA3xdE7LILlY2ugAiwKvg /UMH/L/xLXubIUlqDlurxAubmTN244FOtt9Nhro42HAXlNr2pl/JZFvuF/viZYQ0eafGAh kivCGQZ7X1APjK3NwCF3V599+b1dFkawcXr8j6YvtsL2nJbt1tERQZtvijFf3g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710254949; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OjJDO1jAEAOb2nEEiQbxvNNXurlyR5ujeByqeIr5+EY=; b=H6/7rPDrkLKKF+zVhjbISVVXcpjBCoWba88MOCVbzJKhtLQJTJ24YIQtzhkBK6Y4EBwd53 Ku/RimxmOSvJUOnDUlgxHBa50MzLYoLW6L8czGAGue+iCEH/H6BbF8K+UTkDiBTAdy4Pey lvUCGrS7wyyL//dp2yrMTXS56ExgdOaMmNLdBG7soAA5xLuUJgE8+5iNBqOMA3lteC4WMG dTTzy6OYapfJNxFFi8AeEr6ttcpvGmGultxvGpx/w4BJdamc1RRKN7ugsSTaF341i+7/Ff txQZxwBsna0xnGWrIH5dQ7BCi80mwC9DgJ1FOQNQpUE7LCjI9YTrqEJaulJcZg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvGkF1gjKz1H1l; Tue, 12 Mar 2024 14:49: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 42CEn9P2083854; Tue, 12 Mar 2024 14:49:09 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CEn9ta083851; Tue, 12 Mar 2024 14:49:09 GMT (envelope-from git) Date: Tue, 12 Mar 2024 14:49:09 GMT Message-Id: <202403121449.42CEn9ta083851@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Warner Losh Subject: git: daf917daba9c - stable/14 - Merge one true awk from 2024-01-22 for the Awk Second Edition support List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: daf917daba9c41c2e11dd5470e632a6ebf4f38e1 Auto-Submitted: auto-generated The branch stable/14 has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=daf917daba9c41c2e11dd5470e632a6ebf4f38e1 commit daf917daba9c41c2e11dd5470e632a6ebf4f38e1 Author: Warner Losh AuthorDate: 2024-02-28 15:16:16 +0000 Commit: Warner Losh CommitDate: 2024-03-12 04:53:18 +0000 Merge one true awk from 2024-01-22 for the Awk Second Edition support This brings in Unicode support, CSV support and a number of bug fixes. They are described in _The AWK Programming Language_, Second Edition, by Al Aho, Brian Kernighan, and Peter Weinberger (Addison-Wesley, 2024, ISBN-13 978-0138269722, ISBN-10 0138269726). Sponsored by: Netflix (cherry picked from commit f32a6403d34654ac6e61182d09abb5e85850e1ee) --- contrib/one-true-awk/FIXES | 1429 ++------------------ contrib/one-true-awk/FIXES.1e | 1429 ++++++++++++++++++++ contrib/one-true-awk/README.md | 80 +- contrib/one-true-awk/awk.1 | 34 +- contrib/one-true-awk/awk.h | 23 +- contrib/one-true-awk/awkgram.y | 49 +- contrib/one-true-awk/b.c | 409 ++++-- contrib/one-true-awk/bugs-fixed/REGRESS | 8 +- .../one-true-awk/bugs-fixed/getline-corruption.awk | 5 + .../one-true-awk/bugs-fixed/getline-corruption.in | 1 + .../one-true-awk/bugs-fixed/getline-corruption.ok | 1 + contrib/one-true-awk/bugs-fixed/matchop-deref.awk | 11 + contrib/one-true-awk/bugs-fixed/matchop-deref.bad | 2 + contrib/one-true-awk/bugs-fixed/matchop-deref.in | 1 + contrib/one-true-awk/bugs-fixed/matchop-deref.ok | 2 + .../one-true-awk/bugs-fixed/missing-precision.ok | 2 + contrib/one-true-awk/bugs-fixed/negative-nf.ok | 2 + contrib/one-true-awk/bugs-fixed/pfile-overflow.ok | 4 + contrib/one-true-awk/bugs-fixed/rstart-rlength.awk | 10 + contrib/one-true-awk/bugs-fixed/rstart-rlength.ok | 4 + contrib/one-true-awk/bugs-fixed/system-status.awk | 19 + contrib/one-true-awk/bugs-fixed/system-status.bad | 3 + contrib/one-true-awk/bugs-fixed/system-status.ok | 3 + contrib/one-true-awk/bugs-fixed/system-status.ok2 | 3 + .../one-true-awk/bugs-fixed/unicode-fs-rs-1.awk | 6 + contrib/one-true-awk/bugs-fixed/unicode-fs-rs-1.in | 2 + contrib/one-true-awk/bugs-fixed/unicode-fs-rs-1.ok | 5 + .../one-true-awk/bugs-fixed/unicode-fs-rs-2.awk | 7 + contrib/one-true-awk/bugs-fixed/unicode-fs-rs-2.in | 2 + contrib/one-true-awk/bugs-fixed/unicode-fs-rs-2.ok | 4 + .../one-true-awk/bugs-fixed/unicode-null-match.awk | 6 + .../one-true-awk/bugs-fixed/unicode-null-match.bad | 1 + .../one-true-awk/bugs-fixed/unicode-null-match.ok | 1 + contrib/one-true-awk/lex.c | 60 +- contrib/one-true-awk/lib.c | 158 ++- contrib/one-true-awk/main.c | 23 +- contrib/one-true-awk/makefile | 8 +- contrib/one-true-awk/maketab.c | 4 +- contrib/one-true-awk/parse.c | 2 +- contrib/one-true-awk/proto.h | 10 +- contrib/one-true-awk/run.c | 942 +++++++++---- contrib/one-true-awk/testdir/Compare.tt | 2 +- contrib/one-true-awk/testdir/REGRESS | 2 +- contrib/one-true-awk/testdir/T.argv | 6 + contrib/one-true-awk/testdir/T.csv | 80 ++ contrib/one-true-awk/testdir/T.flags | 5 +- contrib/one-true-awk/testdir/T.misc | 20 + contrib/one-true-awk/testdir/T.overflow | 2 + contrib/one-true-awk/testdir/T.split | 1 + contrib/one-true-awk/testdir/T.utf | 194 +++ contrib/one-true-awk/testdir/T.utfre | 234 ++++ contrib/one-true-awk/testdir/tt.15 | 2 +- contrib/one-true-awk/tran.c | 26 +- 53 files changed, 3525 insertions(+), 1824 deletions(-) diff --git a/contrib/one-true-awk/FIXES b/contrib/one-true-awk/FIXES index 8a2befccd624..a043b356fafa 100644 --- a/contrib/one-true-awk/FIXES +++ b/contrib/one-true-awk/FIXES @@ -22,1354 +22,87 @@ ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ****************************************************************/ -This file lists all bug fixes, changes, etc., made since the AWK book -was sent to the printers in August, 1987. +This file lists all bug fixes, changes, etc., made since the +second edition of the AWK book was published in September 2023. -July 27, 2021: - As per IEEE Std 1003.1-2008, -F "str" is now consistent with - -v FS="str" when str is null. Thanks to Warner Losh. - -July 24, 2021: - Fix readrec's definition of a record. This fixes an issue - with NetBSD's RS regular expression support that can cause - an infinite read loop. Thanks to Miguel Pineiro Jr. - - Fix regular expression RS ^-anchoring. RS ^-anchoring needs to - know if it is reading the first record of a file. This change - restores a missing line that was overlooked when porting NetBSD's - RS regex functionality. Thanks to Miguel Pineiro Jr. - - Fix size computation in replace_repeat() for special case - REPEAT_WITH_Q. Thanks to Todd C. Miller. - -February 15, 2021: - Small fix so that awk will compile again with g++. Thanks to +Jan 22, 2024: + Restore the ability to compile with g++. Thanks to Arnold Robbins. -January 06, 2021: - Fix a decision bug with trailing stuff in lib.c:is_valid_number - after recent changes. Thanks to Ozan Yigit. - -December 18, 2020: - Fix problems converting inf and NaN values in lib.c:is_valid_number. - Enhance number to string conversion to do the right thing for - NaN and inf values. Things are now pretty much the same as in - gawk. (Found a gawk bug while we're at it.) Added a torture - test for these values. Thanks to Arnold Robbins. Allows closing - of PR #101. - -December 15, 2020: - Merge PR #99, which gets the right header for strcasecmp. - Thanks to GitHub user michaelforney. - -December 8, 2020: - Merge PR #98: Disallow hex data. Allow only +nan, -nan, - +inf, -inf (case independent) to give NaN and infinity values. - Improve things so that string to double conversion is only - done once, yielding something of a speedup. This obviate - PR #95. Thanks to Arnold Robbins. - -December 3, 2020: - Fix to argument parsing to avoid printing spurious newlines. - Thanks to Todd Miller. Merges PR #97. - -October 13, 2020: - Add casts before all the calls to malloc/calloc/realloc in order - to get it to compile with g++. Thanks to Arnold Robbins. - -August 16, 2020: - Additional fixes for DJGPP. Thanks to Eli Zaretskii for - the testing. - -August 7, 2020: - Merge PR #93, which adds casts to (void*) for debug prints - using the %p format specifier. Thanks to GitHub user YongHaoWu - ("Chris") for the fixes. - -August 4, 2020: - In run.c, use non-restartable multibyte routines to attain - portability to DJGPP. Should fix Issue 92. Thanks to Albert Wik - for the report and to Todd Miller for the suggested fix. - -July 30, 2020: - Merge PRs 88-91 which fix small bugs. Thanks to Todd Miller and - Tim van der Molen for the fixes. - - In order to make life easier, we move exclusively to bison - as the parser generator. - -July 2, 2020: - Merge PRs 85 and 86 which fix regressions. Thanks to - Tim van der Molen for the fixes. - -June 25, 2020: - Merge PRs 82 and 84. The latter fixes issue #83. Thanks to - Todd Miller and awkfan77. - -June 12, 2020: - Clear errno before calling errcheck to avoid any spurious errors - left over from previous calls that may have set it. Thanks to - Todd Miller for the fix, from PR #80. - - Fix Issue #78 by allowing \r to follow floating point numbers in - lib.c:is_number. Thanks to GitHub user ajcarr for the report - and to Arnold Robbins for the fix. - -June 5, 2020: - In fldbld(), make sure that inputFS is set before trying to - use it. Thanks to Steffen Nurpmeso - for the report. - -May 5, 2020: - Fix checks for compilers that can handle noreturn. Thanks to - GitHub user enh-google for pointing it out. Closes Issue #79. - -April 16, 2020: - Handle old compilers that don't support C11 (for noreturn). - Thanks to Arnold Robbins. - -April 5, 2020: - Use and noreturn instead of GCC attributes. - Thanks to GitHub user awkfan77. Closes PR #77. - -February 28, 2020: - More cleanups from Christos Zoulas: notably backslash continuation - inside strings removes the newline and a fix for RS = "^a". - Fix for address sanitizer-found problem. Thanks to GitHub user - enh-google. - -February 19, 2020: - More small cleanups from Christos Zoulas. - -February 18, 2020: - Additional cleanups from Christos Zoulas. It's no longer necessary - to use the -y flag to bison. - -February 6, 2020: - Additional small cleanups from Christos Zoulas. awk is now - a little more robust about reporting I/O errors upon exit. - -January 31, 2020: - Merge PR #70, which avoids use of variable length arrays. Thanks - to GitHub user michaelforney. Fix issue #60 ({0} in interval - expressions doesn't work). Also get all tests working again. - Thanks to Arnold Robbins. - -January 24, 2020: - A number of small cleanups from Christos Zoulas. Add the close - on exec flag to files/pipes opened for redirection; courtesy of - Arnold Robbins. - -January 19, 2020: - If POSIXLY_CORRECT is set in the environment, then sub and gsub - use POSIX rules for multiple backslashes. This fixes Issue #66, - while maintaining backwards compatibility. - -January 9, 2020: - Input/output errors on closing files are now fatal instead of - mere warnings. Thanks to Martijn Dekker . - -January 5, 2020: - Fix a bug in the concatentation of two string constants into - one done in the grammar. Fixes GitHub issue #61. Thanks - to GitHub user awkfan77 for pointing out the direction for - the fix. New test T.concat added to the test suite. - Fix a few memory leaks reported by valgrind, as well. - -December 27, 2019: - Fix a bug whereby a{0,3} could match four a's. Thanks to - "Anonymous AWK fan" for the report. - -December 11, 2019: - Further printf-related fixes for 32 bit systems. - Thanks again to Christos Zoulas. - -December 8, 2019: - Fix the return value of sprintf("%d") on 32 bit systems. - Thanks to Jim Lowe for the report and to Christos Zoulas - for the fix. - -November 10, 2019: - Convert a number of Boolean integer variables into - actual bools. Convert compile_time variable into an - enum and simplify some of the related code. Thanks - to Arnold Robbins. - -November 8, 2019: - Fix from Ori Bernstein to get UTF-8 characters instead of - bytes when FS = "". This is currently the only bit of - the One True Awk that understands multibyte characters. - From Arnold Robbins, apply some cleanups in the test suite. - -October 25, 2019: - More fixes and cleanups from NetBSD, courtesy of Christos - Zoulas. Merges PRs 54 and 55. - -October 24, 2019: - Import second round of code cleanups from NetBSD. Much thanks - to Christos Zoulas (GitHub user zoulasc). Merges PR 53. - Add an optimization for string concatenation, also from - Christos. - -October 17, 2019: - Import code cleanups from NetBSD. Much thanks to Christos - Zoulas (GitHub user zoulasc). Merges PR 51. - -October 6, 2019: - Import code from NetBSD awk that implements RS as a regular - expression. - -September 10, 2019: - Fixes for various array / memory overruns found via gcc's - -fsanitize=unknown. Thanks to Alexander Richardson (GitHub - user arichardson). Merges PRs 47 and 48. - -July 28, 2019: - Import grammar optimization from NetBSD: Two string constants - concatenated together get turned into a single string. - -July 26, 2019: - Support POSIX-specified C-style escape sequences "\a" (alarm) - and "\v" (vertical tab) in command line arguments and regular - expressions, further to the support for them in strings added on - Apr 9, 1989. These now no longer match as literal "a" and "v" - characters (as they don't on other awk implementations). - Thanks to Martijn Dekker. - -July 17, 2019: - Pull in a number of code cleanups and minor fixes from - Warner Losh's bsd-ota branch. The only user visible change - is the use of random(3) as the random number generator. - Thanks to Warner Losh for collecting all these fixes in - one easy place to get them from. - -July 16, 2019: - Fix field splitting to use FS value as of the time a record - was read or assigned to. Thanks to GitHub user Cody Mello (melloc) - for the fix. (Merged from his branch, via PR #42.) Updated - testdir/T.split per said PR as well. - -June 24, 2019: - Extract awktest.tar into testdir directory. Add some very - simple mechanics to the makefile for running the tests and - for cleaning up. No changes to awk itself. - -June 17, 2019: - Disallow deleting SYMTAB and its elements, which creates - use-after-free bugs. Thanks to GitHub user Cody Mello (melloc) - for the fix. (Merged from PR #43.) - -June 5, 2019: - Allow unmatched right parenthesis in a regular expression to - be treated literally. Fixes Issue #40. Thanks to GitHub user - Warner Losh (bsdimp) for the report. Thanks to Arnold Robbins - for the fix. - -May 29,2019: - Fix check for command line arguments to no longer require that - first character after '=' not be another '='. Reverts change of - August 11, 1989. Thanks to GitHub user Jamie Landeg Jones for - pointing out the issue; from Issue #38. - -Apr 7, 2019: - Update awktest.tar(p.50) to use modern options to sort. Needed - for Android development. Thanks to GitHub user mohd-akram (Mohamed - Akram). From Issue #33. - -Mar 12, 2019: - Added very simplistic support for cross-compiling in the - makefile. We are NOT going to go in the direction of the - autotools, though. Thanks to GitHub user nee-san for - the basic change. (Merged from PR #34.) - -Mar 5, 2019: - Added support for POSIX-standard interval expressions (a.k.a. - bounds, a.k.a. repetition expressions) in regular expressions, - backported (via NetBSD) from Apple awk-24 (20070501). - Thanks to Martijn Dekker for the port. - (Merged from PR #30.) - -Mar 3, 2019: - Merge PRs as follows: - #12: Avoid undefined behaviour when using ctype(3) functions in - relex(). Thanks to GitHub user iamleot. - #31: Make getline handle numeric strings, and update FIXES. Thanks - to GitHub user arnoldrobbins. - #32: maketab: support build systems with read-only source. Thanks - to GitHub user enh. - -Jan 25, 2019: - Make getline handle numeric strings properly in all cases. - (Thanks, Arnold.) - -Jan 21, 2019: - Merged a number of small fixes from GitHub pull requests. - Thanks to GitHub users Arnold Robbins (arnoldrobbins), - Cody Mello (melloc) and Christoph Junghans (junghans). - PR numbers: 13-21, 23, 24, 27. - -Oct 25, 2018: - Added test in maketab.c to prevent generating a proctab entry - for YYSTYPE_IS_DEFINED. It was harmless but some gcc settings - generated a warning message. Thanks to Nan Xiao for report. - -Aug 27, 2018: - Disallow '$' in printf formats; arguments evaluated in order - and printed in order. - - Added some casts to silence warnings on debugging printfs. - (Thanks, Arnold.) - -Aug 23, 2018: - A long list of fixes courtesy of Arnold Robbins, - to whom profound thanks. - - 1. ofs-rebuild: OFS value used to rebuild the record was incorrect. - Fixed August 19, 2014. Revised fix August 2018. - - 2. system-status: Instead of a floating-point division by 256, use - the wait(2) macros to create a reasonable exit status. - Fixed March 12, 2016. - - 3. space: Use provided xisblank() function instead of ispace() for - matching [[:blank:]]. - - 4. a-format: Add POSIX standard %a and %A to supported formats. Check - at runtime that this format is available. - - 5. decr-NF: Decrementing NF did not change $0. This is a decades-old - bug. There are interactions with the old and new value of OFS as well. - Most of the fix came from the NetBSD awk. - - 6. string-conv: String conversions of scalars were sticky. Once a - conversion to string happened, even with OFMT, that value was used until - a new numeric value was assigned, even if OFMT differed from CONVFMT, - and also if CONVFMT changed. - - 7. unary-plus: Unary plus on a string constant returned the string. - Instead, it should convert the value to numeric and give that value. - - Also added Arnold's tests for these to awktest.tar as T.arnold. - -Aug 15, 2018: - fixed mangled awktest.tar (thanks, Arnold), posted all - current (very minor) fixes to github / onetrueawk - -Jun 7, 2018: - (yes, a long layoff) - Updated some broken tests (beebe.tar, T.lilly) - [thanks to Arnold Robbins] - -Mar 26, 2015: - buffer overflow in error reporting; thanks to tobias ulmer - and john-mark gurney for spotting it and the fix. - -Feb 4, 2013: - cleaned up a handful of tests that didn't seem to actually - test for correct behavior: T.latin1, T.gawk. - -Jan 5, 2013: - added ,NULL initializer to static Cells in run.c; not really - needed but cleaner. Thanks to Michael Bombardieri. - -Dec 20, 2012: - fiddled makefile to get correct yacc and bison flags. pick yacc - (linux) or bison (mac) as necessary. - - added __attribute__((__noreturn__)) to a couple of lines in - proto.h, to silence someone's enthusiastic checker. - - fixed obscure call by value bug in split(a[1],a) reported on - 9fans. the management of temporary values is just a mess; i - took a shortcut by making an extra string copy. thanks - to paul patience and arnold robbins for passing it on and for - proposed patches. - - tiny fiddle in setfval to eliminate -0 results in T.expr, which - has irritated me for 20+ years. - -Aug 10, 2011: - another fix to avoid core dump with delete(ARGV); again, many thanks - to ruslan ermilov. - -Aug 7, 2011: - split(s, a, //) now behaves the same as split(s, a, "") - -Jun 12, 2011: - /pat/, \n /pat/ {...} is now legal, though bad style to use. - - added checks to new -v code that permits -vnospace; thanks to - ruslan ermilov for spotting this and providing the patch. - - removed fixed limit on number of open files; thanks to aleksey - cheusov and christos zoulos. - - fixed day 1 bug that resurrected deleted elements of ARGV when - used as filenames (in lib.c). - - minor type fiddles to make gcc -Wall -pedantic happier (but not - totally so); turned on -fno-strict-aliasing in makefile. - -May 6, 2011: - added #ifdef for isblank. - now allows -ffoo as well as -f foo arguments. - (thanks, ruslan) - -May 1, 2011: - after advice from todd miller, kevin lo, ruslan ermilov, - and arnold robbins, changed srand() to return the previous - seed (which is 1 on the first call of srand). the seed is - an Awkfloat internally though converted to unsigned int to - pass to the library srand(). thanks, everyone. - - fixed a subtle (and i hope low-probability) overflow error - in fldbld, by adding space for one extra \0. thanks to - robert bassett for spotting this one and providing a fix. - - removed the files related to compilation on windows. i no - longer have anything like a current windows environment, so - i can't test any of it. - -May 23, 2010: - fixed long-standing overflow bug in run.c; many thanks to - nelson beebe for spotting it and providing the fix. - - fixed bug that didn't parse -vd=1 properly; thanks to santiago - vila for spotting it. - -Feb 8, 2010: - i give up. replaced isblank with isspace in b.c; there are - no consistent header files. - -Nov 26, 2009: - fixed a long-standing issue with when FS takes effect. a - change to FS is now noticed immediately for subsequent splits. - - changed the name getline() to awkgetline() to avoid yet another - name conflict somewhere. - -Feb 11, 2009: - temporarily for now defined HAS_ISBLANK, since that seems to - be the best way through the thicket. isblank arrived in C99, - but seems to be arriving at different systems at different - times. - -Oct 8, 2008: - fixed typo in b.c that set tmpvec wrongly. no one had ever - run into the problem, apparently. thanks to alistair crooks. - -Oct 23, 2007: - minor fix in lib.c: increase inputFS to 100, change malloc - for fields to n+1. - - fixed memory fault caused by out of order test in setsval. - - thanks to david o'brien, freebsd, for both fixes. - -May 1, 2007: - fiddle in makefile to fix for BSD make; thanks to igor sobrado. - -Mar 31, 2007: - fixed some null pointer refs calling adjbuf. - -Feb 21, 2007: - fixed a bug in matching the null RE in sub and gsub. thanks to al aho - who actually did the fix (in b.c), and to wolfgang seeberg for finding - it and providing a very compact test case. - - fixed quotation in b.c; thanks to Hal Pratt and the Princeton Dante - Project. - - removed some no-effect asserts in run.c. - - fiddled maketab.c to not complain about bison-generated values. - - removed the obsolete -V argument; fixed --version to print the - version and exit. - - fixed wording and an outright error in the usage message; thanks to igor - sobrado and jason mcintyre. - - fixed a bug in -d that caused core dump if no program followed. - -Jan 1, 2007: - dropped mac.code from makefile; there are few non-MacOSX - mac's these days. - -Jan 17, 2006: - system() not flagged as unsafe in the unadvertised -safe option. - found it while enhancing tests before shipping the ;login: article. - practice what you preach. - - removed the 9-years-obsolete -mr and -mf flags. - - added -version and --version options. - - core dump on linux with BEGIN {nextfile}, now fixed. - - removed some #ifdef's in run.c and lex.c that appear to no - longer be necessary. - -Apr 24, 2005: - modified lib.c so that values of $0 et al are preserved in the END - block, apparently as required by posix. thanks to havard eidnes - for the report and code. - -Jan 14, 2005: - fixed infinite loop in parsing, originally found by brian tsang. - thanks to arnold robbins for a suggestion that started me - rethinking it. - -Dec 31, 2004: - prevent overflow of -f array in main, head off potential error in - call of SYNTAX(), test malloc return in lib.c, all with thanks to - todd miller. - -Dec 22, 2004: - cranked up size of NCHARS; coverity thinks it can be overrun with - smaller size, and i think that's right. added some assertions to b.c - to catch places where it might overrun. the RE code is still fragile. - -Dec 5, 2004: - fixed a couple of overflow problems with ridiculous field numbers: - e.g., print $(2^32-1). thanks to ruslan ermilov, giorgos keramidas - and david o'brien at freebsd.org for patches. this really should - be re-done from scratch. - -Nov 21, 2004: - fixed another 25-year-old RE bug, in split. it's another failure - to (re-)initialize. thanks to steve fisher for spotting this and - providing a good test case. - -Nov 22, 2003: - fixed a bug in regular expressions that dates (so help me) from 1977; - it's been there from the beginning. an anchored longest match that - was longer than the number of states triggered a failure to initialize - the machine properly. many thanks to moinak ghosh for not only finding - this one but for providing a fix, in some of the most mysterious - code known to man. - - fixed a storage leak in call() that appears to have been there since - 1983 or so -- a function without an explicit return that assigns a - string to a parameter leaked a Cell. thanks to moinak ghosh for - spotting this very subtle one. - -Jul 31, 2003: - fixed, thanks to andrey chernov and ruslan ermilov, a bug in lex.c - that mis-handled the character 255 in input. (it was being compared - to EOF with a signed comparison.) - -Jul 29, 2003: - fixed (i think) the long-standing botch that included the beginning of - line state ^ for RE's in the set of valid characters; this led to a - variety of odd problems, including failure to properly match certain - regular expressions in non-US locales. thanks to ruslan for keeping - at this one. - -Jul 28, 2003: - n-th try at getting internationalization right, with thanks to volker - kiefel, arnold robbins and ruslan ermilov for advice, though they - should not be blamed for the outcome. according to posix, "." is the - radix character in programs and command line arguments regardless of - the locale; otherwise, the locale should prevail for input and output - of numbers. so it's intended to work that way. - - i have rescinded the attempt to use strcoll in expanding shorthands in - regular expressions (cclenter). its properties are much too - surprising; for example [a-c] matches aAbBc in locale en_US but abBcC - in locale fr_CA. i can see how this might arise by implementation - but i cannot explain it to a human user. (this behavior can be seen - in gawk as well; we're leaning on the same library.) - - the issue appears to be that strcoll is meant for sorting, where - merging upper and lower case may make sense (though note that unix - sort does not do this by default either). it is not appropriate - for regular expressions, where the goal is to match specific - patterns of characters. in any case, the notations [:lower:], etc., - are available in awk, and they are more likely to work correctly in - most locales. - - a moratorium is hereby declared on internationalization changes. - i apologize to friends and colleagues in other parts of the world. - i would truly like to get this "right", but i don't know what - that is, and i do not want to keep making changes until it's clear. - -Jul 4, 2003: - fixed bug that permitted non-terminated RE, as in "awk /x". - -Jun 1, 2003: - subtle change to split: if source is empty, number of elems - is always 0 and the array is not set. - -Mar 21, 2003: - added some parens to isblank, in another attempt to make things - internationally portable. - -Mar 14, 2003: - the internationalization changes, somewhat modified, are now - reinstated. in theory awk will now do character comparisons - and case conversions in national language, but "." will always - be the decimal point separator on input and output regardless - of national language. isblank(){} has an #ifndef. - - this no longer compiles on windows: LC_MESSAGES isn't defined - in vc6++. - - fixed subtle behavior in field and record splitting: if FS is - a single character and RS is not empty, \n is NOT a separator. - this tortuous reading is found in the awk book; behavior now - matches gawk and mawk. - -Dec 13, 2002: - for the moment, the internationalization changes of nov 29 are - rolled back -- programs like x = 1.2 don't work in some locales, - because the parser is expecting x = 1,2. until i understand this - better, this will have to wait. - -Nov 29, 2002: - modified b.c (with tiny changes in main and run) to support - locales, using strcoll and iswhatever tests for posix character - classes. thanks to ruslan ermilov (ru@freebsd.org) for code. - the function isblank doesn't seem to have propagated to any - header file near me, so it's there explicitly. not properly - tested on non-ascii character sets by me. - -Jun 28, 2002: - modified run/format() and tran/getsval() to do a slightly better - job on using OFMT for output from print and CONVFMT for other - number->string conversions, as promised by posix and done by - gawk and mawk. there are still places where it doesn't work - right if CONVFMT is changed; by then the STR attribute of the - variable has been irrevocably set. thanks to arnold robbins for - code and examples. - - fixed subtle bug in format that could get core dump. thanks to - Jaromir Dolecek for finding and fixing. - minor cleanup in run.c / format() at the same time. - - added some tests for null pointers to debugging printf's, which - were never intended for external consumption. thanks to dave - kerns (dkerns@lucent.com) for pointing this out. - - GNU compatibility: an empty regexp matches anything (thanks to - dag-erling smorgrav, des@ofug.org). subject to reversion if - this does more harm than good. - - pervasive small changes to make things more const-correct, as - reported by gcc's -Wwrite-strings. as it says in the gcc manual, - this may be more nuisance than useful. provoked by a suggestion - and code from arnaud desitter, arnaud@nimbus.geog.ox.ac.uk - - minor documentation changes to note that this now compiles out - of the box on Mac OS X. - -Feb 10, 2002: - changed types in posix chars structure to quiet solaris cc. - -Jan 1, 2002: - fflush() or fflush("") flushes all files and pipes. - - length(arrayname) returns number of elements; thanks to - arnold robbins for suggestion. - - added a makefile.win to make it easier to build on windows. - based on dan allen's buildwin.bat. - -Nov 16, 2001: - added support for posix character class names like [:digit:], - which are not exactly shorter than [0-9] and perhaps no more - portable. thanks to dag-erling smorgrav for code. - -Feb 16, 2001: - removed -m option; no longer needed, and it was actually - broken (noted thanks to volker kiefel). - -Feb 10, 2001: - fixed an appalling bug in gettok: any sequence of digits, +,-, E, e, - and period was accepted as a valid number if it started with a period. - this would never have happened with the lex version. - - other 1-character botches, now fixed, include a bare $ and a - bare " at the end of the input. - -Feb 7, 2001: - more (const char *) casts in b.c and tran.c to silence warnings. - -Nov 15, 2000: - fixed a bug introduced in august 1997 that caused expressions - like $f[1] to be syntax errors. thanks to arnold robbins for - noticing this and providing a fix. - -Oct 30, 2000: - fixed some nextfile bugs: not handling all cases. thanks to - arnold robbins for pointing this out. new regressions added. - - close() is now a function. it returns whatever the library - fclose returns, and -1 for closing a file or pipe that wasn't - opened. - -Sep 24, 2000: - permit \n explicitly in character classes; won't work right - if comes in as "[\n]" but ok as /[\n]/, because of multiple - processing of \'s. thanks to arnold robbins. - -July 5, 2000: - minor fiddles in tran.c to keep compilers happy about uschar. - thanks to norman wilson. - -May 25, 2000: - yet another attempt at making 8-bit input work, with another - band-aid in b.c (member()), and some (uschar) casts to head - off potential errors in subscripts (like isdigit). also - changed HAT to NCHARS-2. thanks again to santiago vila. - - changed maketab.c to ignore apparently out of range definitions - instead of halting; new freeBSD generates one. thanks to - jon snader for pointing out the problem. - -May 2, 2000: - fixed an 8-bit problem in b.c by making several char*'s into - unsigned char*'s. not clear i have them all yet. thanks to - Santiago Vila for the bug report. - -Apr 21, 2000: - finally found and fixed a memory leak in function call; it's - been there since functions were added ~1983. thanks to - jon bentley for the test case that found it. - - added test in envinit to catch environment "variables" with - names beginning with '='; thanks to Berend Hasselman. - -Jul 28, 1999: - added test in defn() to catch function foo(foo), which - otherwise recurses until core dump. thanks to arnold - robbins for noticing this. - -Jun 20, 1999: - added *bp in gettok in lex.c; appears possible to exit function - without terminating the string. thanks to russ cox. - -Jun 2, 1999: - added function stdinit() to run to initialize files[] array, - in case stdin, etc., are not constants; some compilers care. - -May 10, 1999: - replaced the ERROR ... FATAL, etc., macros with functions - based on vprintf, to avoid problems caused by overrunning - fixed-size errbuf array. thanks to ralph corderoy for the - impetus, and for pointing out a string termination bug in - qstring as well. - -Apr 21, 1999: - fixed bug that caused occasional core dumps with commandline - variable with value ending in \. (thanks to nelson beebe for - the test case.) - -Apr 16, 1999: - with code kindly provided by Bruce Lilly, awk now parses - /=/ and similar constructs more sensibly in more places. - Bruce also provided some helpful test cases. - -Apr 5, 1999: - changed true/false to True/False in run.c to make it - easier to compile with C++. Added some casts on malloc - and realloc to be honest about casts; ditto. changed - ltype int to long in struct rrow to reduce some 64-bit - complaints; other changes scattered throughout for the - same purpose. thanks to Nelson Beebe for these portability - improvements. - - removed some horrible pointer-int casting in b.c and elsewhere - by adding ptoi and itonp to localize the casts, which are - all benign. fixed one incipient bug that showed up on sgi - in 64-bit mode. - - reset lineno for new source file; include filename in error - message. also fixed line number error in continuation lines. - (thanks to Nelson Beebe for both of these.) - -Mar 24, 1999: - Nelson Beebe notes that irix 5.3 yacc dies with a bogus - error; use a newer version or switch to bison, since sgi - is unlikely to fix it. - -Mar 5, 1999: - changed isnumber to is_number to avoid the problem caused by - versions of ctype.h that include the name isnumber. - - distribution now includes a script for building on a Mac, - thanks to Dan Allen. - -Feb 20, 1999: - fixed memory leaks in run.c (call) and tran.c (setfval). - thanks to Stephen Nutt for finding these and providing the fixes. - -Jan 13, 1999: - replaced srand argument by (unsigned int) in run.c; - avoids problem on Mac and potentially on Unix & Windows. - thanks to Dan Allen. - - added a few (int) casts to silence useless compiler warnings. - e.g., errorflag= in run.c jump(). - - added proctab.c to the bundle outout; one less thing - to have to compile out of the box. - - added calls to _popen and _pclose to the win95 stub for - pipes (thanks to Steve Adams for this helpful suggestion). - seems to work, though properties are not well understood - by me, and it appears that under some circumstances the - pipe output is truncated. Be careful. - -Oct 19, 1998: - fixed a couple of bugs in getrec: could fail to update $0 - after a getline var; because inputFS wasn't initialized, - could split $0 on every character, a misleading diversion. - - fixed caching bug in makedfa: LRU was actually removing - least often used. - - thanks to ross ridge for finding these, and for providing - great bug reports. - -May 12, 1998: - fixed potential bug in readrec: might fail to update record - pointer after growing. thanks to dan levy for spotting this - and suggesting the fix. - -Mar 12, 1998: - added -V to print version number and die. - -[notify dave kerns, dkerns@dacsoup.ih.lucent.com] - -Feb 11, 1998: - subtle silent bug in lex.c: if the program ended with a number - longer than 1 digit, part of the input would be pushed back and - parsed again because token buffer wasn't terminated right. - example: awk 'length($0) > 10'. blush. at least i found it - myself. - -Aug 31, 1997: - s/adelete/awkdelete/: SGI uses this in malloc.h. - thanks to nelson beebe for pointing this one out. - -Aug 21, 1997: - fixed some bugs in sub and gsub when replacement includes \\. - this is a dark, horrible corner, but at least now i believe that - the behavior is the same as gawk and the intended posix standard. - thanks to arnold robbins for advice here. - -Aug 9, 1997: - somewhat regretfully, replaced the ancient lex-based lexical - analyzer with one written in C. it's longer, generates less code, - and more portable; the old one depended too much on mysterious - properties of lex that were not preserved in other environments. - in theory these recognize the same language. - - now using strtod to test whether a string is a number, instead of - the convoluted original function. should be more portable and - reliable if strtod is implemented right. - - removed now-pointless optimization in makefile that tries to avoid - recompilation when awkgram.y is changed but symbols are not. - - removed most fixed-size arrays, though a handful remain, some - of which are unchecked. you have been warned. - -Aug 4, 1997: - with some trepidation, replaced the ancient code that managed - fields and $0 in fixed-size arrays with arrays that grow on - demand. there is still some tension between trying to make this - run fast and making it clean; not sure it's right yet. - - the ill-conceived -mr and -mf arguments are now useful only - for debugging. previous dynamic string code removed. - - numerous other minor cleanups along the way. - -Jul 30, 1997: - using code provided by dan levy (to whom profuse thanks), replaced - fixed-size arrays and awkward kludges by a fairly uniform mechanism - to grow arrays as needed for printf, sub, gsub, etc. - -Jul 23, 1997: - falling off the end of a function returns "" and 0, not 0. - thanks to arnold robbins. - -Jun 17, 1997: - replaced several fixed-size arrays by dynamically-created ones - in run.c; added overflow tests to some previously unchecked cases. - getline, toupper, tolower. - - getline code is still broken in that recursive calls may wind - up using the same space. [fixed later] - - increased RECSIZE to 8192 to push problems further over the horizon. - - added \r to \n as input line separator for programs, not data. - damn CRLFs. - - modified format() to permit explicit printf("%c", 0) to include - a null byte in output. thanks to ken stailey for the fix. - - added a "-safe" argument that disables file output (print >, - print >>), process creation (cmd|getline, print |, system), and - access to the environment (ENVIRON). this is a first approximation - to a "safe" version of awk, but don't rely on it too much. thanks - to joan feigenbaum and matt blaze for the inspiration long ago. - -Jul 8, 1996: - fixed long-standing bug in sub, gsub(/a/, "\\\\&"); thanks to *** 5975 LINES SKIPPED *** From nobody Tue Mar 12 14:49:10 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvGkG4HRMz5DxtD; Tue, 12 Mar 2024 14:49:10 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TvGkG2kbbz4pwB; Tue, 12 Mar 2024 14:49:10 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710254950; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mnseIHzRdZLQH+HbCnDxxtV+bUYlMqCXodG6Nl6T4QU=; b=h3CCQjx/8EPiTzvAO07hamqv/qwd+UT7OMDCnFzGDxXzzgiN8s9I+6+zlXNNKHqPEyBTlu 8fqplIGW6XsRbdisbGmK+cYHJHNtI56YW32w9LgkWKMhI43Tp6Ni+sy8c9OwGYEzUV5mG/ e4H+jAW06zTgiTAradum45YYazumM/XyoOTMTBlc9P41rOxLfKujrS/j0+xHp8P4ov+w7R AraYU9ViEyK9PRfVh+YcZV+dugb82FEFI0uI5Noe5gtU7a9A817bcShUBsocMWTdCtxNay p5COtAKZL6/GBIG4UDBfO4HJjGnxbGSRyKtljHiSe6pimf/HixbdM4D2rffdOw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710254950; a=rsa-sha256; cv=none; b=q72pn8T0jYdKOnB81Fl6CaKMqtUEiFjn3OF4xWxvsLynIoBIoCwBkhpq5KySleIAzR+K++ sRDZ2FpXQvub5c9iTWorDVfaAPpeifyg9yd+Ra/QTPecMtqZl7umXfwEI2U42O0uJDMw4b y1c0xJLPEcK0aeQ3HxlFrScVkPbtaAfWLglWMghrryWD5H/KeOKO09bmvGAY0IukoOvTdx AIwzAwtxoekm6iKxor81+uzfGzCKRe3OucDc8SBjZy4qT6470tFH11Q40VmwYr2PDccXjF J5B+w1QkED4hTkodaXVXxeJOIlrsRPo//kOoApzg7ijzdyidKNmE+8z52FBmcA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710254950; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mnseIHzRdZLQH+HbCnDxxtV+bUYlMqCXodG6Nl6T4QU=; b=YzzcaxNeCiWnB6LqupZ2OPIYUThC98ZL/xof5Mt2OcyqGvBcwr3z1r6LHI5Ga2YN1KI9Lu S/NG7BwbW00Ul/7GRMujSKqn7zzg9SIUoHjTN7U1utMqiFzbnE1UeQPpmqGGhgUf0sSumB yWSQ6akFWBF3vS8YUxCjv9BSoTPDhR9iJaEG8oQ9tPS5RtfsHlKLlXzldsqBkn1BnIp/RT jkl5vIIXLY9ROmweawbyb6aewSyxZmwoEZwIyJFldhOD/CpX0YRuIQJ64KS3vBZkCNFcMn FZEwLr/slq5qVrIG+haWap6SAnWwCinm7XY1uUVqatGRwwbyA45NsA0r1jDS4Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvGkG2LSsz1H1m; Tue, 12 Mar 2024 14:49: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 42CEnAp8083903; Tue, 12 Mar 2024 14:49:10 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CEnApj083900; Tue, 12 Mar 2024 14:49:10 GMT (envelope-from git) Date: Tue, 12 Mar 2024 14:49:10 GMT Message-Id: <202403121449.42CEnApj083900@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Warner Losh Subject: git: b0f058525b5b - stable/14 - awk: Fix the tests List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b0f058525b5b67e140b6c1ae9415092175290d97 Auto-Submitted: auto-generated The branch stable/14 has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=b0f058525b5b67e140b6c1ae9415092175290d97 commit b0f058525b5b67e140b6c1ae9415092175290d97 Author: Warner Losh AuthorDate: 2024-03-08 05:40:43 +0000 Commit: Warner Losh CommitDate: 2024-03-12 04:53:47 +0000 awk: Fix the tests I'd forgotten that we have to adjust the stderr tests from upstream. Remove the OK files. Also remove system-status.*. These restore the fixes I made in 517e52b6c21c which were lost when I imported the last version of awk. Also, force LANG to be C.UTF-8 when testing to ensure that stray lang settings don't fail tests. Sponsored by: Netflix (cherry picked from commit ba7b7f94c239ce43343d7af403734fdc941b7664) --- contrib/one-true-awk/bugs-fixed/missing-precision.ok | 2 -- contrib/one-true-awk/bugs-fixed/negative-nf.ok | 2 -- contrib/one-true-awk/bugs-fixed/pfile-overflow.ok | 4 ---- contrib/one-true-awk/bugs-fixed/system-status.awk | 19 ------------------- contrib/one-true-awk/bugs-fixed/system-status.bad | 3 --- contrib/one-true-awk/bugs-fixed/system-status.ok | 3 --- contrib/one-true-awk/bugs-fixed/system-status.ok2 | 3 --- usr.bin/awk/tests/bugs-fixed/bug_fix_test.sh | 1 + 8 files changed, 1 insertion(+), 36 deletions(-) diff --git a/contrib/one-true-awk/bugs-fixed/missing-precision.ok b/contrib/one-true-awk/bugs-fixed/missing-precision.ok deleted file mode 100644 index 75e1e3d00446..000000000000 --- a/contrib/one-true-awk/bugs-fixed/missing-precision.ok +++ /dev/null @@ -1,2 +0,0 @@ -../a.out: not enough args in printf(%*s) - source line number 1 diff --git a/contrib/one-true-awk/bugs-fixed/negative-nf.ok b/contrib/one-true-awk/bugs-fixed/negative-nf.ok deleted file mode 100644 index de97f8b27def..000000000000 --- a/contrib/one-true-awk/bugs-fixed/negative-nf.ok +++ /dev/null @@ -1,2 +0,0 @@ -../a.out: cannot set NF to a negative value - source line number 1 diff --git a/contrib/one-true-awk/bugs-fixed/pfile-overflow.ok b/contrib/one-true-awk/bugs-fixed/pfile-overflow.ok deleted file mode 100644 index a0de50f9007f..000000000000 --- a/contrib/one-true-awk/bugs-fixed/pfile-overflow.ok +++ /dev/null @@ -1,4 +0,0 @@ -../a.out: syntax error at source line 1 source file pfile-overflow.awk - context is - >>> <<< -../a.out: bailing out at source line 1 source file pfile-overflow.awk diff --git a/contrib/one-true-awk/bugs-fixed/system-status.awk b/contrib/one-true-awk/bugs-fixed/system-status.awk deleted file mode 100644 index 8daf563e6f4f..000000000000 --- a/contrib/one-true-awk/bugs-fixed/system-status.awk +++ /dev/null @@ -1,19 +0,0 @@ -# Unmodified nawk prints the 16 bit exit status divided by 256, but -# does so using floating point arithmetic, yielding strange results. -# -# The fix is to use the various macros defined for wait(2) and to -# use the signal number + 256 for death by signal, or signal number + 512 -# for death by signal with core dump. - -BEGIN { - status = system("exit 42") - print "normal status", status - - status = system("kill -HUP $$") - print "death by signal status", status - - status = system("kill -ABRT $$") - print "death by signal with core dump status", status - - system("rm -f core*") -} diff --git a/contrib/one-true-awk/bugs-fixed/system-status.bad b/contrib/one-true-awk/bugs-fixed/system-status.bad deleted file mode 100644 index a1317dba54a8..000000000000 --- a/contrib/one-true-awk/bugs-fixed/system-status.bad +++ /dev/null @@ -1,3 +0,0 @@ -normal status 42 -death by signal status 0.00390625 -death by signal with core dump status 0.523438 diff --git a/contrib/one-true-awk/bugs-fixed/system-status.ok b/contrib/one-true-awk/bugs-fixed/system-status.ok deleted file mode 100644 index 737828f5ed7a..000000000000 --- a/contrib/one-true-awk/bugs-fixed/system-status.ok +++ /dev/null @@ -1,3 +0,0 @@ -normal status 42 -death by signal status 257 -death by signal with core dump status 518 diff --git a/contrib/one-true-awk/bugs-fixed/system-status.ok2 b/contrib/one-true-awk/bugs-fixed/system-status.ok2 deleted file mode 100644 index f1f631e1cb33..000000000000 --- a/contrib/one-true-awk/bugs-fixed/system-status.ok2 +++ /dev/null @@ -1,3 +0,0 @@ -normal status 42 -death by signal status 257 -death by signal with core dump status 262 diff --git a/usr.bin/awk/tests/bugs-fixed/bug_fix_test.sh b/usr.bin/awk/tests/bugs-fixed/bug_fix_test.sh index 7c8cfa47f99e..588e2f86b0b7 100644 --- a/usr.bin/awk/tests/bugs-fixed/bug_fix_test.sh +++ b/usr.bin/awk/tests/bugs-fixed/bug_fix_test.sh @@ -25,6 +25,7 @@ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # +export LANG=C.UTF-8 SRCDIR=$(atf_get_srcdir) check() From nobody Tue Mar 12 15:21:22 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvHRQ3Zyjz5F1Lc; Tue, 12 Mar 2024 15:21: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 4TvHRQ38ZCz4tMt; Tue, 12 Mar 2024 15:21:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710256882; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UkUgJxvCAHQmwaiHIe6nCOvn+DM9L+6eSqxPs2wHhwQ=; b=s8R/nOAVvDDC4y0kkOJxGzxBaQnpjgAKohTvWBrTneJlLMw0/QIqGIbXpcAOuaekDZ31rF ySJq0B/X4vHKABVunAoaMHjb3VcRARSdN6N19ErD4xGTN2srXiJH0xZMPCGnVTolw2DOXA dSg9XQE/Hb6lqNn08Hqh3JsYws9DUMHWzrHobogqy+BVcUaldPkkamY7rgUoBEKGL5+CWi gPd4qLmO4iL0T3284zHztr+GKmEXzA2AQSaidx6aUuOzQQ+uhqAPA+wqD7HSaIiI2pNxO/ lNureDFnsJ2ku3aENbOAQbl/CNaVAGmQEaw+oHJxllTF+LyNGQCJ3yMJ99G3PQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710256882; a=rsa-sha256; cv=none; b=GEwu7ZXqJlK6wWpncn+ssKOS9OcewnL47GFdS0T+QjGK8izYwBkjv/6iG32NOk8odMXT1E bG7viMhYfMbxvqmPm3oL6GiUzD9KnkcG8h2Dk/xIjuKmdosh41wg+Q5Z4fkuzbIa7l2uZ4 /69pVIJR5Qhfpu+7FqbeQnX/BYBO9S/f3f23xZvuw3inqu/nk0Zarx8GNJfwEStXkkHS9/ xnIGOYkmFX0i/xZ24ex5w0IPrpjU+EEB809QQLbFVyjRAwZP0LVr4BdH9/PGGbOt4+c57K mWQb8njrETFm0vh0rse31Cms4Yi/Aadq2/hp+UZzydL/RFPe+2TVbwxqc6rR3g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710256882; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UkUgJxvCAHQmwaiHIe6nCOvn+DM9L+6eSqxPs2wHhwQ=; b=pLsMRjc5+TmKC4iwKWDhC6QIkXTuAe8JlSkx+T5feMe3MGKhLoAttIzOAcXwunL7XawRn9 ZK66uyj3B6JkCDKZHVjyB5YIT8KsLqOiIBV+0nQIqXCTd95S7wzS1i/Z+9a+nATUoa7P4G 1okvtSJg1wU+cjdD2OIGIWDN1yY/QGGNucWpo/qDG4gFLcNJ8WxnD8GDVrcvbXcnaR+eE9 albJVdfvWSgsFBpMjoSr73NlwxTqroWmBc4NwyDm/MuQEgg3235rxH5nxSIM8w+GqlVQYq EoKeFEUEa+brPomPcpJxKlzsFZ29Kg9G7gV8ooc+gJHpVBHmuUSbiLuQxkSBtw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvHRQ2lpKz1JLT; Tue, 12 Mar 2024 15:21: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 42CFLMmC048572; Tue, 12 Mar 2024 15:21:22 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CFLMn1048569; Tue, 12 Mar 2024 15:21:22 GMT (envelope-from git) Date: Tue, 12 Mar 2024 15:21:22 GMT Message-Id: <202403121521.42CFLMn1048569@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Warner Losh Subject: git: 10f1eebd2c61 - stable/14 - Add info about one true awk 2nd edition. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 10f1eebd2c610f2c2aca8ecaca3caedebee27445 Auto-Submitted: auto-generated The branch stable/14 has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=10f1eebd2c610f2c2aca8ecaca3caedebee27445 commit 10f1eebd2c610f2c2aca8ecaca3caedebee27445 Author: Warner Losh AuthorDate: 2024-03-12 15:02:10 +0000 Commit: Warner Losh CommitDate: 2024-03-12 15:10:47 +0000 Add info about one true awk 2nd edition. See https://awk.dev/ for information about the features added in the 2nd edition. Sponsored by: Netflix --- RELNOTES | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/RELNOTES b/RELNOTES index 3a3edc500152..b92174354789 100644 --- a/RELNOTES +++ b/RELNOTES @@ -10,6 +10,10 @@ newline. Entries should be separated by a newline. Changes to this file should not be MFCed. +daf917daba9c: + One True Awk updated to 2nd Edition with new -csv support and UTF-8 + support. + b8e137d8d32d: This commit added some statistics collection to the NFS-over-TLS code in the NFS server so that sysadmins can moditor usage. From nobody Tue Mar 12 15:23:20 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvHTh2S0Wz5F1Xp; Tue, 12 Mar 2024 15:23: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 4TvHTh1PXTz4vCh; Tue, 12 Mar 2024 15:23:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710257000; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aXelMXmFt1qb7GLGSABVb3D7kiWTMrysU838tCbN/1w=; b=biQ5PTCrkGv8xHNToA/GB2tV9nnPV5hq1s1syrs80yMIRf9klZQ0paWRANOErUt8R4r8VI iK5aJaUKV0hNnWhAd+pG4TqijpkTF+FFqCKTUcLLSdq7aAhBt0x5kjenE+l7g00Tan9XSb /PICJyJ6e+gJyiex108iAQ5Gyz8PfvQOg9RFMsgtYEUEV7wWZUrjC3NAwUqNIqE3RKNde6 0H+VroVLbbjK4lPIVr32MT8MIN3hhecIk0A+8z4HypfH/Z31k8fhpUzCEQzVHf1vihq29n GRfCbc2oWEbqYNNXwMML7kOMNXTFXrt3OhzHU3WopvkEhYHJJtZb6FzvaaMqQA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710257000; a=rsa-sha256; cv=none; b=JCZEnxI4tPU3Er2oLnsLGTe4nV2itrgGQbfjFj/v+gxgN5MA+gtvEE2ECwW9QTHO8vXSW0 90FoLx+U0a9faMkBHVQAgK991EOrL+JrUE6TqHlFBfbcpAVf1DtmstJc4BIm7gwAolrei1 5Ko3uHXqeTE4g1GuHU727mSbneJOBaFbVBBDJNlKk6SQG4h65MGRbVGEkQQEeznnsZ/oCD 0bIol33/Fb9wfO4VEzIM+UQxb58kVIjIKbSHtt+Xo4uW6RswwviDlg2BRSNYQHTSXoTby2 Q30kU4Ny+74Rbs0DYxLtXRa60qe1mXjNMKzpAVMqbuyifaY7nB1jE5YxHY8gGg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710257000; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aXelMXmFt1qb7GLGSABVb3D7kiWTMrysU838tCbN/1w=; b=xF0oHpRBGTtY94iNJoAUK1ayWKjHsNkDhWgC+avAQz/fRDv8DDBy2pjRn47hCbqSJ3On0o LnCrhMD13hzrHkcKYrn3iDX5J3jOQPeCrW6RY0W+B0pitKY8F9drJZTHlakLwxTd5BjCxU arQcJG/IhRek+65LgBSY5+Bw/8WYz1xOyYwL1g2Td7dtOLADDl/DG+Op/RdhaEFBWjkhME YqNCzplbxtcAduNH7OFRgJJw62Np66Rl5OLOeew/L4H11iiIb4KXxabUjXEtlDHw0v9e8P BWnq7M5fiDg7en+Py/YA3LggEpacEaxb4luQzNshIo/12VHNk7bvcb7JfpCcxQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvHTh10nWz1Jhf; Tue, 12 Mar 2024 15:23: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 42CFNKEv050806; Tue, 12 Mar 2024 15:23:20 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CFNKMU050803; Tue, 12 Mar 2024 15:23:20 GMT (envelope-from git) Date: Tue, 12 Mar 2024 15:23:20 GMT Message-Id: <202403121523.42CFNKMU050803@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Warner Losh Subject: git: e36906ac1a4d - stable/14 - RELNOTES: Add pointer to awk info. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: e36906ac1a4d7a30c2f5d9e27ae292c7108ede74 Auto-Submitted: auto-generated The branch stable/14 has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=e36906ac1a4d7a30c2f5d9e27ae292c7108ede74 commit e36906ac1a4d7a30c2f5d9e27ae292c7108ede74 Author: Warner Losh AuthorDate: 2024-03-12 15:22:40 +0000 Commit: Warner Losh CommitDate: 2024-03-12 15:22:40 +0000 RELNOTES: Add pointer to awk info. Sponsored by: Netflix --- RELNOTES | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELNOTES b/RELNOTES index b92174354789..6a32876351ea 100644 --- a/RELNOTES +++ b/RELNOTES @@ -12,7 +12,7 @@ Changes to this file should not be MFCed. daf917daba9c: One True Awk updated to 2nd Edition with new -csv support and UTF-8 - support. + support. See https://awk.dev for more details. b8e137d8d32d: This commit added some statistics collection to the NFS-over-TLS From nobody Tue Mar 12 15:25:25 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvHX552Qcz5F1dr; Tue, 12 Mar 2024 15:25: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 4TvHX54B1fz4vBx; Tue, 12 Mar 2024 15:25:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710257125; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=M3HK7i1mD5G8UnjXmW13YjNP4WCyRbbN1bUvghFbxPY=; b=KuMmAWdnPUd8tRM/ApfR936Xr8ec2W6xF/84jzKueDWcX2zta9BOVnE8oxJPLiudAmA646 NEjVPxVha1pjZGj29TCi1PBJsjdSt4b9EoNGJfroOwxOM8bF1v/BJXtkk4hvoy5MLfpqky tenL1LnuaXERYAmzyk6rm8lUiHXI7RYJEIfwvvuyAnXLNSsJY2YGgFMD89lH+OC3gjfygr +r9oQBVwiLfyWag5kszmT7HBAKza7hge+ki+yZh++cyHW+L03BJgOONsNwvAYYYebGPWUg +QXX5m8tcd1Z08ezyVDwgo8zgoZHrjnRf2xXyqvqo1DcILYjOX2cvBAZzRTxxA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710257125; a=rsa-sha256; cv=none; b=qX9XN3+NgZJ2IOrmzZXel7PNyMofs1Ym8bWXPuDtw+sxYYzVF13LrYglB8L7wBgzkS74Ng Ck89OLLo3iaog7j9x0H9sHWCy6y5L322IioOglWgLGe64K4NfaPsbWLvellAsuUBgSB+cY ImIABLmyjNSMs6Y6ne7N0NrKjM1GaiAdfZXLjb0oXXzSlpY0R43qaKsiBIojeYvEP88UDv F5Qaqm4G1Doj4Bk2CdvgWKwBz+sLIS7PlS6ZeFW8UBh6ntgFq3ecFulLCkZtA3sBIn+YnS mfEKb41vHxaG6JjMXmaBiypkQVWYk1Vzyea9dnwmLnLRWrCDkaWISQbS+RS0MA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710257125; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=M3HK7i1mD5G8UnjXmW13YjNP4WCyRbbN1bUvghFbxPY=; b=jsB1VhboHQLh3bn8SfM8uYbx8b1oNpL/MVRv1DmN+PUqGcxgn6oZZOVHCvgbm/5q3Mw2P8 45E62EpphUOcza43JLb4SZA2bs71g1IHdNsmrp1jOFnZ7iyxAoJ+W53/z1WgEwnZqM0Fcu 8LzxCuirP8YQUYeQxIJnRQQrNGV8y/3sUDu6qLWwwPHfu2FO5ExCyjnZIjKaLOvLiA/rfM nC21M9xulUo0XGIX5il1w41Fu2Dbv2nNUGeuivX+bh4ZGI3oUlMKG2JAfAPuo4to6aUQRy 4NvawOAynbfK6stpAq2byJhwYzXVVvFVC9TSVqz9DfS3ydRkOjny7BeCs8i/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 4TvHX53nl3z1Jtq; Tue, 12 Mar 2024 15:25: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 42CFPP1M051215; Tue, 12 Mar 2024 15:25:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CFPPgw051212; Tue, 12 Mar 2024 15:25:25 GMT (envelope-from git) Date: Tue, 12 Mar 2024 15:25:25 GMT Message-Id: <202403121525.42CFPPgw051212@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: 5b35479e3ede - main - RELNOTES: Add awk update from 2 weeks ago. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5b35479e3ede4649ec41d553a9e45c6640f5baf9 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=5b35479e3ede4649ec41d553a9e45c6640f5baf9 commit 5b35479e3ede4649ec41d553a9e45c6640f5baf9 Author: Warner Losh AuthorDate: 2024-03-12 15:24:39 +0000 Commit: Warner Losh CommitDate: 2024-03-12 15:24:39 +0000 RELNOTES: Add awk update from 2 weeks ago. Sponsored by: Netflix --- RELNOTES | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/RELNOTES b/RELNOTES index 9e9152f888db..c6e7732582ae 100644 --- a/RELNOTES +++ b/RELNOTES @@ -10,6 +10,11 @@ newline. Entries should be separated by a newline. Changes to this file should not be MFCed. +f32a6403d346: + One True Awk updated to 2nd Edition. See https://awk.dev for details + on the additions. Unicode and CSVs (Comma Separated Values) are now + supported. + fe86d923f83f: usbconfig(8) now reads the descriptions of the usb vendor and products from usb.ids when available, similarly to what pciconf(8) does. From nobody Tue Mar 12 16:00:24 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvJJT1XM3z5F4KF; Tue, 12 Mar 2024 16:00: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 4TvJJT10g0z3y1L; Tue, 12 Mar 2024 16:00:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710259225; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=W0STMcKL0kTYg0DGuLJtJc8sD70W1esoi9YQppaqW+M=; b=XnQBALtGTEw8P7yzXqNkIISda0DwMQ30Wub9BMtx71o9q/Y8KQZEHb+bUAySOjvGGD7jwL 4+GfBAR4O/X5/FYlc36ECYY5o6Dbb5FOA15iM9Lxj4OzSlNoQIn4NmBwagfu5tllHDNQaX XLI0+yVUYVAye+Bf0YTMFzZbCrdlMNnbGDVvFz4s1YI2siHmba/iFoFYnopTP9FKqWjbxi 9H/WOgcZd6HMif+J0Fqs2Uk+ruZD5CphgNZsnKs2dG+kMGd7G1YU+zPLofgqLVdNNnPbYr RHuXKaecPCmqYzDuk6WDwKUSCFddbI7rePKyX0JwJWQmdOSXKpw/y+9FExGIxg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710259225; a=rsa-sha256; cv=none; b=XMqL6JItFB1u/MID4yuBnC/KPrDL/JQYn7aK/LhmlMhGQ/hDi1xuN9frGaVDr6MgkWC2Gr DEpDleC2x9LejD/qEMOizuC7KjE4WL6MTQ6Vh6IHxhp3h4rRgO5gDg1LZgRXhBQpY8waVK v0+x4DaEq3npIn0vRZV/ir/YIdR9yEP20PPgO0M3VL+JfAn0Hus7q2vMlZf9u8/kelkBOg 5CGXXsJcWEz4cs0d9CJZKKeFTqaF6qdGK6+Emm16wPkoN5oYvi4shbTw2TVUCxOAbuPw0V D+K8HgcQk+h5kfWEuVHPg3TCwXiwmTjYmoDNrhsfL4nlEfEEtexqVjHFNT+X6g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710259225; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=W0STMcKL0kTYg0DGuLJtJc8sD70W1esoi9YQppaqW+M=; b=b74k44I38gAbmxo5sttD4NDSEYRAN+WbB4MyCf/9BksBmej+shlrKSwIRex+TYlqu6XEIs yn/oVE1kmDgEDIeRPOqtBR2nj6zx4mo2lMew6mAYtk/yFZhqoa1Ucf5R16c57asw0oGVRu GueE0ujDMLPEgWDKierdMcEWMyRF0AT9rBpeUf/qdJ/Vl1YAjx+CHP6APcI6tcs0PZK+ku ezZh+ZhD9G5H5Kic90EJ2NgXTJ5Z5Ta/hBPekqElI5cTLUnv6swmrzMZ4KBkdxPGOyWFm5 fQCIIHP0WFfB5HLstQjvLMn2v7BoKPmSjLKatcyUvDc/Un1dq1/W7B4NqjPPXw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvJJT0by5z1K78; Tue, 12 Mar 2024 16:00: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 42CG0OZX011956; Tue, 12 Mar 2024 16:00:24 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CG0OKT011953; Tue, 12 Mar 2024 16:00:24 GMT (envelope-from git) Date: Tue, 12 Mar 2024 16:00:24 GMT Message-Id: <202403121600.42CG0OKT011953@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Eugene Grosbein Subject: git: 7f0dc6e2cdfa - main - mkimg(1): process non-seekable output gracefully List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: eugen X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7f0dc6e2cdfa0317c9917dd46e9da9d3897a8fbb Auto-Submitted: auto-generated The branch main has been updated by eugen: URL: https://cgit.FreeBSD.org/src/commit/?id=7f0dc6e2cdfa0317c9917dd46e9da9d3897a8fbb commit 7f0dc6e2cdfa0317c9917dd46e9da9d3897a8fbb Author: Eugene Grosbein AuthorDate: 2024-03-12 15:55:42 +0000 Commit: Eugene Grosbein CommitDate: 2024-03-12 16:00:21 +0000 mkimg(1): process non-seekable output gracefully mkimg may make severe load only to fail in the end if output is non-seekable pipe, socket or FIFO unless output format is raw disk image. Check it out and fail early. Make it clear in the manual. MFC after: 1 week --- usr.bin/mkimg/mkimg.1 | 3 ++- usr.bin/mkimg/mkimg.c | 14 +++++++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/usr.bin/mkimg/mkimg.1 b/usr.bin/mkimg/mkimg.1 index 820fb9ad1d5a..82bbee53a267 100644 --- a/usr.bin/mkimg/mkimg.1 +++ b/usr.bin/mkimg/mkimg.1 @@ -22,7 +22,7 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd February 28, 2024 +.Dd March 12, 2024 .Dt MKIMG 1 .Os .Sh NAME @@ -64,6 +64,7 @@ The image file is a raw disk image by default, but the format of the image file can be specified with the .Ar format argument. +Most formats require seekable output, except of raw disk image. .Pp The disk image can be made bootable by specifying the scheme-specific boot block contents with the diff --git a/usr.bin/mkimg/mkimg.c b/usr.bin/mkimg/mkimg.c index 541d534f967f..3cd9b03c06e9 100644 --- a/usr.bin/mkimg/mkimg.c +++ b/usr.bin/mkimg/mkimg.c @@ -555,6 +555,7 @@ mkimg(void) int main(int argc, char *argv[]) { + const char *format_name; int bcfd, outfd; int c, error; @@ -699,6 +700,7 @@ main(int argc, char *argv[]) errc(EX_DATAERR, error, "boot code"); } + format_name = format_selected()->name; if (verbose) { fprintf(stderr, "Logical sector size: %u\n", secsz); fprintf(stderr, "Physical block size: %u\n", blksz); @@ -709,10 +711,20 @@ main(int argc, char *argv[]) fprintf(stderr, "Partitioning scheme: %s\n", scheme_selected()->name); fprintf(stderr, "Output file format: %s\n", - format_selected()->name); + format_name); fputc('\n', stderr); } +#if defined(SPARSE_WRITE) + /* + * sparse_write() fails if output is not seekable so fail early + * not wasting some load unless output format is raw + */ + if (strcmp("raw", format_name) && + lseek(outfd, (off_t)0, SEEK_CUR) == -1 && errno == ESPIPE) + errx(EX_USAGE, "%s: output must be seekable", format_name); +#endif + error = image_init(); if (error) errc(EX_OSERR, error, "cannot initialize"); From nobody Tue Mar 12 16:27:18 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvJvW5898z5F676; Tue, 12 Mar 2024 16:27: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 4TvJvW38cWz42Ff; Tue, 12 Mar 2024 16:27:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710260839; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=C2/s4XXxTpdS+UUHWzR5Nwa3bA7kD6FyUrcwfLzT6MU=; b=AWNgha4J+x45m1mS/NWZwEwU0t1qc2Wk5Q1ONrg5wUAEwAWw4POakAc0iMU5BV3j1XSsaZ xqEDja7nZ2e/ixhrRJVd8l/R9blay/g49VWWJpUO7YLQMmtq66QBeC7RhiWvZlgF4mQfLd o5mqYpBpSU2wQW6obTuPbKQcJjn+cow/Md1bvSNIG3O/lSUaPF7ZtSc+7QfOSiLb3Mxlxv qpzkxLd+yCEYy+7aGyvRCFRl9keLul/p0KfQXR4j1G7KetrJDdlVILOWmQPSJrB48gNyjC WUOss6AsLxExVSeQp1VIN46Sl2M4VBuVF4uQ1XPBkrdVAx3EBvkOBAXWP0OrHA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710260839; a=rsa-sha256; cv=none; b=tnNids1BWwUKy4vVvAQMnTvoY2lxoF6yy4W44iq7eJvUl+eOcMcnE8QIapLzlxRs8T0XjG 0vS3GKZdikaN/Vgkv5p7zhywTju8tZsyIRYW1lsyDnMcpKxfCdc8b0SBgPk0DVmna2AJs9 lrJ7XgO1RzSDIG04B5tqKLpotRAPDRcZgaIkyzf7tFQKdJPjVrlCbswBgLeYMdiigFbiy5 6Wt76XB92eiNh0vRrOJdtC0VsEn5Ynex5cc/jCm8y65Any949x7cZGj9Kxo/UwbHJJxoKq K+SQW3vbPRid8lxWE7E4f4IjWwBfrSCzJHRE/9jpyP+wxMMFqXElhA7FBMesWg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710260839; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=C2/s4XXxTpdS+UUHWzR5Nwa3bA7kD6FyUrcwfLzT6MU=; b=JOMwAzQ8mkywZ2NX61889/dh0ZFZuJf/UkC4KQ8Uud7ACu2YdoUU+Q9Ak7Nc7fqeg6nMt+ B63ulHCJUFuiSDa/71VBEg+puOK8/WYWKlJ2aAcvFGpn7vtz1aGkNxvQGDhZ26ZUempd2D 353nhMCudFa+IlFZitS4iA12wKJ5qda8gv36mxQh5T/z3LPNvn0f6iMJgfSzTKAbGnmZMn TYgz/AiIkKwuPUvXXLTZL1Ftec9Oc51t+dXmgb0jEf+MIybgNCKx9hLz4uhhdlHwzS1ZJ2 b/XV7bGPkteBxZzsKZ01OzkWDP2F+tWCEVmvXqBIMGyPMlpgVlzA4GtvY8JgpA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvJvW1mn2z1L9k; Tue, 12 Mar 2024 16:27: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 42CGRJGg053194; Tue, 12 Mar 2024 16:27:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CGRI89053191; Tue, 12 Mar 2024 16:27:18 GMT (envelope-from git) Date: Tue, 12 Mar 2024 16:27:18 GMT Message-Id: <202403121627.42CGRI89053191@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Cy Schubert Subject: git: 937a0055858a - main - sqlite3: Vendor import of sqlite3 3.45.1 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 937a0055858a098027f464abf0b2b1ec5d36748f Auto-Submitted: auto-generated The branch main has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=937a0055858a098027f464abf0b2b1ec5d36748f commit 937a0055858a098027f464abf0b2b1ec5d36748f Merge: 7f0dc6e2cdfa 1e59a00476c9 Author: Cy Schubert AuthorDate: 2024-03-12 14:01:21 +0000 Commit: Cy Schubert CommitDate: 2024-03-12 16:06:50 +0000 sqlite3: Vendor import of sqlite3 3.45.1 Release notes at https://www.sqlite.org/releaselog/3_45_1.html. Obtained from: https://www.sqlite.org/2024/sqlite-autoconf-3450100.tar.gz MFC after: 1 week Merge commit '1e59a00476c9801952e7319719fcdb095a0cd007' into main contrib/sqlite3/configure | 20 ++-- contrib/sqlite3/configure.ac | 2 +- contrib/sqlite3/sqlite3.c | 220 +++++++++++++++++++++++---------------- contrib/sqlite3/sqlite3.h | 6 +- contrib/sqlite3/sqlite3rc.h | 2 +- contrib/sqlite3/tea/configure | 18 ++-- contrib/sqlite3/tea/configure.ac | 2 +- 7 files changed, 157 insertions(+), 113 deletions(-) From nobody Tue Mar 12 16:58:32 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvKbY0fJNz5F8Pt; Tue, 12 Mar 2024 16:58:33 +0000 (UTC) (envelope-from brooks@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TvKbY05j9z4541; Tue, 12 Mar 2024 16:58:33 +0000 (UTC) (envelope-from brooks@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710262713; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=rhNa/1esXg6BmG4m1qM+ogec0RKGTkD00hzXJNwbyAc=; b=pjq+bUCB7GMhddsnpDMq2tZh/5M2lDXlYytQriH3+upHMtnll9qMV2ETyxpjt4Tsg+EPha DfCKW7c3sa3TNGmzZK4YBEA0Sj080m76DGQR5Jo09ql/1n/ePGGZGC8a3KTCMvL7pSV+9Z XpI1DRrGOahHilZ9IvQDLQ30Wr4DlQ08WaGSMVgyAadBMg/2099yCNtX35dtAW10Mx6ZlC gDlnyGdg1Qc+QeG1mKxCS5TI4QtPAdtdacBGeYIc0ZAN4peZMqCcea2CmnGiRluS+bimOM qlkZm9VMPYnZvZ0Iz8fkb5Tp9vQZPYcQ7oS/EvmBvEyLXG7RARZ1MhrdFskuiw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710262713; a=rsa-sha256; cv=none; b=k/NYbzpDlLg+ZFyfi07YXtnjqkBwDFkgftEaFnvU24UxcQDjnBpn9rY4RmAtcUZXoAQme1 tw/0I/gw29rrU5u+xA/p8U1rg6++/KUzBhqjAmbxuA20ugyNESDVyRL4qGGVraBLk9Jb/N ZHvfmbzI1R9GzGoXD2ZSJ92Mx8R3FrPRCTohWtljqhMhEfveS5ZR3Gt8nxnYJao8v3ARx4 PLCIm4xsjGrEQaKkasRULelXFD4eJXTl1866rWYtzeDRV2JgeQgbDmkdsv7h1r5AtuF0aM oBEeLSBxvQ308kPdOMiDTmreGGjYU9+rKxIZ4hY1BRVAl4RXTFeF3cKYJaYD2A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710262713; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=rhNa/1esXg6BmG4m1qM+ogec0RKGTkD00hzXJNwbyAc=; b=p0d8ieQxPcC71iYl1qSVmPGR6j5jL0/vhMQudJfXV/Et9kG4rCb1mR5DSU5Nf7ugFBC/4U z15qZ/FdCumDAvLnwaxvNAzMFA4n6OtizvQe3jEE/ko/U5XVk8YDZQ5XIdUF0YEbFh9nX7 JkM0RWgVF5eeboORIGKNnBdyOfzvosbLcH2BHno86UI1TJE4GsHhuCW5o897fcwlYICrnA l8qJ5l7YEIfG8KoAc2EnHBDzNwBRcd4zq9IA36uhTSD32xwpcBVmxQ22BDpUS0JjZctVi6 wLBcBYuRUjwTu76CM9ZiorHOeAdsdgMHinVbAA5gTs9/QVN67r2tCDiRnO4jlg== Received: from spindle.one-eyed-alien.net (spindle.one-eyed-alien.net [199.48.129.229]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: brooks/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4TvKbX6ggPzPFQ; Tue, 12 Mar 2024 16:58:32 +0000 (UTC) (envelope-from brooks@freebsd.org) Received: by spindle.one-eyed-alien.net (Postfix, from userid 3001) id 5ECA43C019B; Tue, 12 Mar 2024 16:58:32 +0000 (UTC) Date: Tue, 12 Mar 2024 16:58:32 +0000 From: Brooks Davis To: Eugene Grosbein Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 7f0dc6e2cdfa - main - mkimg(1): process non-seekable output gracefully Message-ID: References: <202403121600.42CG0OKT011953@gitrepo.freebsd.org> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202403121600.42CG0OKT011953@gitrepo.freebsd.org> On Tue, Mar 12, 2024 at 04:00:24PM +0000, Eugene Grosbein wrote: > The branch main has been updated by eugen: > > URL: https://cgit.FreeBSD.org/src/commit/?id=7f0dc6e2cdfa0317c9917dd46e9da9d3897a8fbb > > commit 7f0dc6e2cdfa0317c9917dd46e9da9d3897a8fbb > Author: Eugene Grosbein > AuthorDate: 2024-03-12 15:55:42 +0000 > Commit: Eugene Grosbein > CommitDate: 2024-03-12 16:00:21 +0000 > > mkimg(1): process non-seekable output gracefully > > mkimg may make severe load only to fail in the end > if output is non-seekable pipe, socket or FIFO > unless output format is raw disk image. > > Check it out and fail early. Make it clear in the manual. > > MFC after: 1 week > --- > usr.bin/mkimg/mkimg.1 | 3 ++- > usr.bin/mkimg/mkimg.c | 14 +++++++++++++- > 2 files changed, 15 insertions(+), 2 deletions(-) > > diff --git a/usr.bin/mkimg/mkimg.1 b/usr.bin/mkimg/mkimg.1 > index 820fb9ad1d5a..82bbee53a267 100644 > --- a/usr.bin/mkimg/mkimg.1 > +++ b/usr.bin/mkimg/mkimg.1 > @@ -22,7 +22,7 @@ > .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF > .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. > .\" > -.Dd February 28, 2024 > +.Dd March 12, 2024 > .Dt MKIMG 1 > .Os > .Sh NAME > @@ -64,6 +64,7 @@ The image file is a raw disk image by default, but the format of the > image file can be specified with the > .Ar format > argument. > +Most formats require seekable output, except of raw disk image. > .Pp > The disk image can be made bootable by specifying the scheme-specific boot > block contents with the > diff --git a/usr.bin/mkimg/mkimg.c b/usr.bin/mkimg/mkimg.c > index 541d534f967f..3cd9b03c06e9 100644 > --- a/usr.bin/mkimg/mkimg.c > +++ b/usr.bin/mkimg/mkimg.c > @@ -555,6 +555,7 @@ mkimg(void) > int > main(int argc, char *argv[]) > { > + const char *format_name; const struct mkimg_format* format; It seems weird to cache a single member. For that matter, caching anyting seems like overkill given than format_selected() just returns a global variable's value. > int bcfd, outfd; > int c, error; > > @@ -699,6 +700,7 @@ main(int argc, char *argv[]) > errc(EX_DATAERR, error, "boot code"); > } > > + format_name = format_selected()->name; > if (verbose) { > fprintf(stderr, "Logical sector size: %u\n", secsz); > fprintf(stderr, "Physical block size: %u\n", blksz); > @@ -709,10 +711,20 @@ main(int argc, char *argv[]) > fprintf(stderr, "Partitioning scheme: %s\n", > scheme_selected()->name); > fprintf(stderr, "Output file format: %s\n", > - format_selected()->name); > + format_name); > fputc('\n', stderr); > } > > +#if defined(SPARSE_WRITE) > + /* > + * sparse_write() fails if output is not seekable so fail early > + * not wasting some load unless output format is raw > + */ > + if (strcmp("raw", format_name) && > + lseek(outfd, (off_t)0, SEEK_CUR) == -1 && errno == ESPIPE) > + errx(EX_USAGE, "%s: output must be seekable", format_name); > +#endif Maybe add a flag for non-seeking formats rather than hardcoding a strcmp? -- Brooks From nobody Tue Mar 12 19:40:53 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvPBs2vnlz5FMmg; Tue, 12 Mar 2024 19:40: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 4TvPBs2SgQz4PKt; Tue, 12 Mar 2024 19:40:53 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710272453; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WB3/CPyEZ+AOqtLA1J06+qr14R/ndzNSArEZITTx6p0=; b=Gd6fOkFAvRov9J25Bmg5rYxoCdRgvWL9YTfiTWcu6xipZJbmL7HJg13EIYg1zh9wEuo4Hx nAqKnnF4Jk4l+Tzvj8ijL90HslSpjjzAOz6JW1XUgdX27TyteU2KydFCTvAUTc9uDf8H62 FIm5NAYo2q/TlIWFeqFIiEEgyCXJ1hfe6wzzzKwgiD567tjZgHkUF3bTNKj27ON2Ygen7/ 7ynJ+linHmq7HwdeRutCiPgm0Wv5BF2gAKxpKiDPT5AUOyNEH1EF3AQMYHIi1WzgPw5UYe KkrzNEEaHgkyCtYffeD4JW9YcTlqABZ19Kxx77yjIhpZcRI0NrxOaQY8BSVhFQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710272453; a=rsa-sha256; cv=none; b=dWM6I23fDdKqqF0E8Pp/8Z/qu1zl3+T7UaD61boHibYy1L5601+Rv2Myvs6A2WKk3KAs9f 0Vaw8hxH40qmoGYR29GZpGobc5PHyVaTqHHwq931r4tTmDvrLfXcskDMB4ohk9xtSyloTA mzhy8aLP+58jtfxRLS4sIB+C6bxY2Rn2S8SluBHAm4ZnINR6ZU1kHGpFLAoEyncnZjma4Z KcJS3IIWlnMT9XI2eAFFyfL4dnu20Wl6Oc11mbDMSGO0hPXtGOEbhSTCOeDvUfh3uhHC3O TuThveVpYg7t3oLRSql/dK/V0WJs4rSRT7Bd0bDdUP7SAtmW2Keo44H0wQBSOg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710272453; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=WB3/CPyEZ+AOqtLA1J06+qr14R/ndzNSArEZITTx6p0=; b=t6boIZxn5TdenKcv/RbTGaa/Mma64go+S318d9G4gmhtjsnVmdcEEiGSmkeL1dSi/R4AY6 I/G2fyBI/Yrabk5ocKSwWCL/lpGycPiYhrLUsTPA3QiC7IeUxKJE2cyfdFK/NvYFwsl3ar TTugwSwBOId/ZZPfQlC55rmiMdbyBlyB9KSveEc7TDiD8e4StuL207RugCMxvkRhJTZQs+ LwapO9XHJ7+SD7oZFd3FbOf2TpNfRYdnnD4s8H3aVtZL3eP7BVhxU/3zzZuytGgN8QnJ16 YHCmf8HX0H1WRi34GIkv9VUzQO+iSyFGwuGqTiwpuymhPz+Fmz1cSgwjzMwJqA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvPBs24rmz1RBy; Tue, 12 Mar 2024 19:40: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 42CJere3084307; Tue, 12 Mar 2024 19:40:53 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CJerAw084304; Tue, 12 Mar 2024 19:40:53 GMT (envelope-from git) Date: Tue, 12 Mar 2024 19:40:53 GMT Message-Id: <202403121940.42CJerAw084304@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: b53ae8a8333d - main - ping: Fix protocol selection with NOINET6 kernel. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b53ae8a8333d730bb977276c511743b98c881423 Auto-Submitted: auto-generated The branch main has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=b53ae8a8333d730bb977276c511743b98c881423 commit b53ae8a8333d730bb977276c511743b98c881423 Author: Dag-Erling Smørgrav AuthorDate: 2024-03-12 19:40:36 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-03-12 19:40:36 +0000 ping: Fix protocol selection with NOINET6 kernel. A missing else caused the correct resolver hint (AF_INET) to be overwritten with AF_UNSPEC when the kernel supports IPv4 but not IPv6. MFC after: 3 days PR: 277592 Sponsored by: NetApp, Inc. Sponsored by: Klara, Inc. Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D44304 --- sbin/ping/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/ping/main.c b/sbin/ping/main.c index 1d1816361788..8a572cb3c914 100644 --- a/sbin/ping/main.c +++ b/sbin/ping/main.c @@ -149,7 +149,7 @@ main(int argc, char *argv[]) hints.ai_socktype = SOCK_RAW; if (feature_present("inet") && !feature_present("inet6")) hints.ai_family = AF_INET; - if (feature_present("inet6") && !feature_present("inet")) + else if (feature_present("inet6") && !feature_present("inet")) hints.ai_family = AF_INET6; else hints.ai_family = AF_UNSPEC; From nobody Tue Mar 12 21:03:37 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvR2K5Mj7z5FTtw; Tue, 12 Mar 2024 21:03:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TvR2K4Bcnz4cMR; Tue, 12 Mar 2024 21:03:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710277417; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I2g5+MNyV0usWxRybl04KW/1ofges2poszgH+KFEAys=; b=vS2ELj1TOt8Dpk6yqWxjjvMJvtr0kSxKAnpg61OjhtYO0TZO0vLYdVmt6FSEb2fKB4HtUD gBMcb6Olj6Eefj8PYtDikcRG6+GwO/O3/n+AesNqO3/I2mpoG2sOz/P36bFqbWn5VLXuRH zGGLfF5Yb/OKWR/zJTqvVpnDldJrKXmMADgFSQyxYL8dgELB8JbJbvUGjMdEXsROXrc3Ej Jn1NWCyAQkx8lp0Je7CvO5rcoLEYkECCIECQ+kUIeYtpLCxMk+k4qfZUmAMqvaUMDBZn0I AZiSLuPsZUHvrCoBwWyQ8Y07nl3tGBUVJtUt/M1/0nJ0PeKXO8IP5aLBjVhcvQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710277417; a=rsa-sha256; cv=none; b=qDQapaBDIdE6PCaX6odFsYOaD+YNzrs1JxfVcny1GfJxg19gW8IIFF8AWRHN6PfKmSFMZJ qxBOxygZac7uGmRWuoRIE8TjnsIGphx42xk+W3vwFt+PBDlLKUpENG2r6E8lz0060mlHV9 cVTQwbf9T5lKfhpELpr4hG1NLDcsK9eK87ltsYzdsUXmhkn9fJ+1hES9DXI3XTYi/jioSM /gf8vEMPWkeyInbWFMkScFQQcLzJhm6tJbnPcgeMdLPv4OwE2p01kgunTkRVp0tmJ2bCZz QbyfdLaPK2N3Gp3DuLL/Y6GyITbRLEvCEkjkFjBzEE/1FcPEFrlNghKuhR6rVg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710277417; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=I2g5+MNyV0usWxRybl04KW/1ofges2poszgH+KFEAys=; b=IJB6g+tazLSNkRxQQSvDsYZceqrrHKQco/yngQ8Aw3JnkRfLhsPQgM5jLn2kwcX5SqGDrG Ej1uHS5CVJIklR4rfS8Pwl3FGwKEdD9yZnYjPFbxxQc2MtyBRMd5QYvRdJnXJeHVEQkS1h 2xDJC6b0e7cmnhLJKONvYFdxsXAW0NRNCIhlCgOoEpqiVVvSe3n5KoAgunVwZfSvk8OddZ p6J7xgD42v9Fv4KscQ9wkkHhhlFuleeGbEUQrhS4w6yFfgSjnKsWb4egUyzFhZDz3qdsZ0 BWV6TVM1XWI1UREQxZUHBZcuK8G6fRf/+1P8YgnNVFBSHOwlCfBMs2JbTRFFvw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvR2K3pBjzFMg; Tue, 12 Mar 2024 21:03:37 +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 42CL3bAJ026119; Tue, 12 Mar 2024 21:03:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CL3bro026116; Tue, 12 Mar 2024 21:03:37 GMT (envelope-from git) Date: Tue, 12 Mar 2024 21:03:37 GMT Message-Id: <202403122103.42CL3bro026116@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: 8f86c1082197 - main - libthr: restore _pthread_cond_timedwait List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8f86c108219779337905c871312d85aab9322ff3 Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=8f86c108219779337905c871312d85aab9322ff3 commit 8f86c108219779337905c871312d85aab9322ff3 Author: Brooks Davis AuthorDate: 2024-03-12 21:01:47 +0000 Commit: Brooks Davis CommitDate: 2024-03-12 21:03:14 +0000 libthr: restore _pthread_cond_timedwait The function was renamed to _thr_cond_timedwait in commit 0ab1bfc7b28f and for some reason did not get the same __weak_reference treatment as other _pthread_cond symbols. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D44244 --- lib/libthr/thread/thr_cond.c | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/libthr/thread/thr_cond.c b/lib/libthr/thread/thr_cond.c index c1cbd546350e..0eb3dac068ca 100644 --- a/lib/libthr/thread/thr_cond.c +++ b/lib/libthr/thread/thr_cond.c @@ -63,6 +63,7 @@ __weak_reference(__thr_cond_wait, pthread_cond_wait); __weak_reference(__thr_cond_wait, __pthread_cond_wait); __weak_reference(_thr_cond_wait, _pthread_cond_wait); __weak_reference(__pthread_cond_timedwait, pthread_cond_timedwait); +__weak_reference(_thr_cond_timedwait, _pthread_cond_timedwait); __weak_reference(_thr_cond_init, pthread_cond_init); __weak_reference(_thr_cond_init, _pthread_cond_init); __weak_reference(_thr_cond_destroy, pthread_cond_destroy); From nobody Tue Mar 12 21:58:30 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvSFg1vvKz5Cc5J; Tue, 12 Mar 2024 21:58:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TvSFg15V0z4j6w; Tue, 12 Mar 2024 21:58:31 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710280711; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jjo1dn33qfrjJJjM7tg7t+uAs5Pm9vayjZJ+SLqpUtU=; b=qkS0GzOU0tyXE3/kv4O8hJRSWq+3XST1ReWpywwhn2okeHbPTlu4eaGQaBUlrC5tUnyRt6 4Gbk2Ft38ARQx0vlzz6w7JG5+GDPSOCQyuAXPGFFPVPqnPSEv1r2OTHmHd2jMNHWtg5t2e sZdQ96h/wz2n84wZA/aiMe4P3sl0wEoVmHZsZ6C1lpRbwolig7JEqTyalsKEhmvsCTUyuw KKTIFDrSTyRC7IYSBQu4Wqwmx5pruYa1lQ3jBlLJEXiJxcBiLmiBKpV3qa/SwJfPJggr/g 4HQg+awfsR+GbTr0L709HwyhqXt4101inCMput1QdRuDbM8W+7jfS2P3jMfA5Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710280711; a=rsa-sha256; cv=none; b=yvvo58qfOkkvgQazEERXyhvd68aTDut6b21WNPPg7pkD7xHWuQEwlvCTUP6DujFZBoea72 Wz/YPlgjnRFOwr2CeT6QsopHXPZPtXlpx1BL3Dmx4f67cc5j/6fUEhrFzZeyGKWyfwFZK+ up2kpXSAFcwYff12cdCYLdG5VRJY0UssPLXtIS5FtbAaEPgQ2ckBaz1hIEbnxYCfDQOnHv H0/xwbwlVzxky2lOdpGs8zSuGWCjh/wG4oF5W90z4Y2IJ97sFwLVlWX2892bgogKTiNTQH XSVeSO85Npv0wwi9S0O3kNjhdk0B2QjuL9/Qi6RCx/GRFiL+BSwn45eU2YKPdA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710280711; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jjo1dn33qfrjJJjM7tg7t+uAs5Pm9vayjZJ+SLqpUtU=; b=p6KRRbmtQ2hK85uWxOrm6UnkksyfjOiiwUt1waIMmupH5Xvsa9gC6cpoN9BlBXrmXkgZ0a RLGsNLxRiL4ozzepuBqtKkT0H9E08sqHD57HC5XhTVNhlJGQhXaUESiPy1Yzr/Hbum+eGv OcBhAB/V93mwhFf7HM2ZDzcBjmH66XCn3M1DMa6zScfwuzqUef8xdlCFbnQpisgyxNb0RX ou770eQmxsF43DT1gMpvL1oREf2vyRY14RJZpHw/e2R0ZGQtcQM4D/REDfYQgIUxJED5ik +XQHYIbdtFwl2WERA8enoloRegkV4SPzG0G3yUVqHgwL0rb+ZEm+cr1qsLnXEA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvSFg0ZSbzFxF; Tue, 12 Mar 2024 21:58: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 42CLwUnd010614; Tue, 12 Mar 2024 21:58:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CLwUcU010611; Tue, 12 Mar 2024 21:58:30 GMT (envelope-from git) Date: Tue, 12 Mar 2024 21:58:30 GMT Message-Id: <202403122158.42CLwUcU010611@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: f254aad33dfb - main - ath_hal/ar9300: allow JUPITER cards to read eeprom List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f254aad33dfb5ce18b6b97b7d036b420310e9ed5 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=f254aad33dfb5ce18b6b97b7d036b420310e9ed5 commit f254aad33dfb5ce18b6b97b7d036b420310e9ed5 Author: Bjoern A. Zeeb AuthorDate: 2024-03-12 21:22:36 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-03-12 21:56:56 +0000 ath_hal/ar9300: allow JUPITER cards to read eeprom Summary: In ar9300_eeprom_read_word() also allow JUPITER cards read the eeprom instead of returning an error. While this will not help all the 9462, 9485, 9565 OEM cards to work, it will make debugging of the next steps a lot easier. While here fix a typo in the error message if we do not get CAL. PR: 255337 Tested by: John Nielsen (john jnielsen net) Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D44328 --- sys/contrib/dev/ath/ath_hal/ar9300/ar9300_eeprom.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_eeprom.c b/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_eeprom.c index 0251222c50b4..073428c8fa71 100644 --- a/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_eeprom.c +++ b/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_eeprom.c @@ -225,7 +225,7 @@ ar9300_eeprom_restore_something(struct ath_hal *ah, ar9300_eeprom_t *mptr, HAL_BOOL ar9300_eeprom_read_word(struct ath_hal *ah, u_int off, u_int16_t *data) { - if (AR_SREV_OSPREY(ah) || AR_SREV_POSEIDON(ah)) + if (AR_SREV_OSPREY(ah) || AR_SREV_POSEIDON(ah) || AR_SREV_JUPITER(ah)) { (void) OS_REG_READ(ah, AR9300_EEPROM_OFFSET + (off << AR9300_EEPROM_S)); if (!ath_hal_wait(ah, @@ -4319,7 +4319,7 @@ ar9300_eeprom_restore_internal(struct ath_hal *ah, ar9300_eeprom_t *mptr, } #endif if (nptr < 0) { - ath_hal_printf(ah, "%s[%d] No vaid CAL, calling default template\n", + ath_hal_printf(ah, "%s[%d] No valid CAL, calling default template\n", __func__, __LINE__); nptr = ar9300_eeprom_restore_something(ah, mptr, mdata_size); } From nobody Tue Mar 12 23:00:36 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvTdJ3ytxz5ChgH; Tue, 12 Mar 2024 23:00: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 4TvTdJ3W36z4n58; Tue, 12 Mar 2024 23:00:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710284436; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=z4NhnjIjHC3N0rIfmD/ieS24D8Yc2KblOECAUNF1tGE=; b=dKDLtAPSDn1nfmD5Npgk1VPJTs5GlbTakjf+NXPYWEaLiukdOf5UP69Qhka0Je/tTBO45R N0tVF7UgxGCfowCOC5clqQfiyKq8BrS9XYgNRO5chE5qYjoj2/q0j6JJGtTl/Ltru099MH M112TXlkAVw9Nzpo6HrTpHacV4FBuEvXuAnbyjTsOG62+bBfTZcJZrIVv8JAoIYtqLBddb Ddb+823Hwny9q56FEmWfwJnSMqzxNfrQzhPTaITR2BODy6m+02CNz3PdJVbEkBd1FOY1dJ EWwVAs+AV9G3A/Faj09o4slDo8hGlfEFHkDXWZGwX4DZzL47Ean3IUxbPfziIg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710284436; a=rsa-sha256; cv=none; b=tgncmW+MFyUB2I1vncv/mHKP6Ft3LdjNRFf1679ntWYxMyyq5e9Q1n7bC06QZqWsr8ZpUK rYkhV0sXi+5PyikDscWeS6IN6gC7vpaDlSu8hYaRlmXZCZ5nrDJCf8Ngji7jf+PAgvCffz TuyNgIKA44jot2nBhfNrTCQTDLcOxMRiOBnYmwPp6/E0/I8jfpDnyfKVW1+ogXp43IWzfM COXC5H1xblMIJNx/+u8wB8Z/UNmXR9FbP4aIPsvAjjqrnG0DzgcHrsWpu4WWEED1GqVBDE qzmHhjRH8i9jTZeS85qgUz8VW5LesGzpo3qf0gIczbpHrMF41bxhPUD1LFdoAg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710284436; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=z4NhnjIjHC3N0rIfmD/ieS24D8Yc2KblOECAUNF1tGE=; b=W8UlmMz7mKRlogZEnKoHLnDpivzYL4TqbMbDjmHeWLh9Bc33qcBJdPqQ7DoKDftLslMFeX 7GuPMrsmEIqakzKgsiq3iUtKfrm+87OTOeH5FAyo2l+9WvdHMEF1cuqqJoOMeJaj1J2/3F /Ebb1Iesh6tIUvbi6x1RnmKpFi6IGeRqgL6y1Yx2Bm/HoShMaiMGHZxKNdsut1y7iGXf4A JTfTDaphvG1McUw8tEIHA7SxV6fmv7UFuoTrFs8rTpDWLY6ivZLYG787vMhh3MOrsRhOcl FVn/2wPQl7ZNNGAJzDfh9vsApv0DZU3JkUikXbkL3bO+Dy6u76Q3GKgTH78CFg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvTdJ36PQzJPy; Tue, 12 Mar 2024 23:00:36 +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 42CN0aim022482; Tue, 12 Mar 2024 23:00:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42CN0afu022479; Tue, 12 Mar 2024 23:00:36 GMT (envelope-from git) Date: Tue, 12 Mar 2024 23:00:36 GMT Message-Id: <202403122300.42CN0afu022479@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 906521f8176b - main - LinuxKPI: 802.11: return proper value for IEEE80211_CRYPTO_AES_CCM List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 906521f8176b13533556d742db4ab28e847b85c0 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=906521f8176b13533556d742db4ab28e847b85c0 commit 906521f8176b13533556d742db4ab28e847b85c0 Author: Bjoern A. Zeeb AuthorDate: 2024-03-04 23:03:58 +0000 Commit: Bjoern A. Zeeb CommitDate: 2024-03-12 22:59:11 +0000 LinuxKPI: 802.11: return proper value for IEEE80211_CRYPTO_AES_CCM In case of LKPI_80211_HW_CRYPTO we convert from LinuxKPI cipher_suites to net80211 ic_cryptocaps fields. For WLAN_CIPHER_SUITE_CCMP we accidentally returned the bit number instead of the shifted value which leads to ieee80211_crypto_newkey() setting IEEE80211_KEY_SWCRYPT, which in turned lead to us trying to decode the frame again despite HW had already done it. This was found out of a discussion in D43634. MFC after: 3 days Reviewed by: cc, adrian Differential Revision: https://reviews.freebsd.org/D44208 --- sys/compat/linuxkpi/common/src/linux_80211.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index ced2f2dc8cca..df3b0bc467f2 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -546,7 +546,7 @@ lkpi_l80211_to_net80211_cyphers(uint32_t wlan_cipher_suite) case WLAN_CIPHER_SUITE_TKIP: return (IEEE80211_CRYPTO_TKIP); case WLAN_CIPHER_SUITE_CCMP: - return (IEEE80211_CIPHER_AES_CCM); + return (IEEE80211_CRYPTO_AES_CCM); case WLAN_CIPHER_SUITE_WEP104: return (IEEE80211_CRYPTO_WEP); case WLAN_CIPHER_SUITE_AES_CMAC: From nobody Wed Mar 13 00:31:11 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvWdr0t06z5CrMw; Wed, 13 Mar 2024 00:31: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 4TvWdr0fzkz4tPb; Wed, 13 Mar 2024 00:31:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710289872; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YrRnJ9gF3g4uBGlPt38+RsImv2DVlpeWiUaqpgiYyJ8=; b=CQC3hFd6IlNo2dXujQNJRH7LcPAdhfa1avdFhA2OsWn/XnRO2kOsgBx0nQYuvzjRQpmPHF T6Lb9KbFj5Ua9BMJqE3SDxTbxXvk/OSTwD4VRpp/ub1YOzVUNM1Q5SAoDeRil0FzFS3hw/ 92pUfx55hDY/727MMvigHwXI+0u/md+fKysleYj+s3v9JJxjHB1lUI52r1/ZyYbkxI8rks BA4kgyg0bgGKTrGoc+deyaMgH7M8a6SKYN+dCG5M/0HReY+1RR67kSE1GyMxRMf0GLgSxz s1m1tcauvmbNAOZ7lGNCfPGkNXmRV+aO3QJsyLNguqqbwUwKor0HHyqZ9aj1rA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710289872; a=rsa-sha256; cv=none; b=ctRtZo+2JbSIW2Ec9ofVPy9NK2V9lSUjuopaf22AdTKnddt1NMs0ibeeyNBHm3jRp9wjKB TLbQoo/Mp8ZsAcBPbH30mELPjxX3rXXdBtmT1Woln9HLOfTHjq6DhdDKb86NWa/SMv9mth 8RY7oiqDMgtLI9B+B6hva1+WdaVzeueJ85rKlPD+rI8mNU40HcdtvMouJwXqIsYnHy6/ir WzDuZAIzDwHmq2shT2VvdeMNZ3RiWK2yz5r7e3e42jOHu6J96eLZf1SizphXJ/Nia68gQj zphH3r8x3mAOsDwFtKhPZ0VBtC95R5Efgbk7tO/pimziM51ammIlVK84oIGRQg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710289872; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YrRnJ9gF3g4uBGlPt38+RsImv2DVlpeWiUaqpgiYyJ8=; b=K/D1HUMnsyVn5f8/tDSDRs/7bB2nrjEvVSWMH8CR1W01ijBMGWVYKtIat2KqvK31qBemfe 02xnHGs+6ExGQTKyPgBjlOm6HrRaNJrfeUW8tUUWB/sOLI9Aa0ukEAIwCmSbd3R6SJPfPx 8LryL3BYCicT3aCBt67tALXeFWwsyZonPYRsUV53IpWHn92q8hMa3nDGZhyM4Um0fFCChX p6v9h46L/XaRat+nRJOvbZTJ/RMnebAxT9u40IwYWFiawNS/FtHSS9zTZRpO67BHM70Dc4 9AGm+l72CxK1aOCpGs28JT4Yk42/IPLEUZmtNeGydJMH6L/sjr1rmlHt945MOA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvWdr0GmPzLJM; Wed, 13 Mar 2024 00:31: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 42D0VBkd072379; Wed, 13 Mar 2024 00:31:11 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42D0VBWB072376; Wed, 13 Mar 2024 00:31:11 GMT (envelope-from git) Date: Wed, 13 Mar 2024 00:31:11 GMT Message-Id: <202403130031.42D0VBWB072376@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: 91c1c36102a6 - stable/14 - libthr: remove explicit sys/cdefs.h includes List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 91c1c36102a6cded3848e46fd2d242db46a76684 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=91c1c36102a6cded3848e46fd2d242db46a76684 commit 91c1c36102a6cded3848e46fd2d242db46a76684 Author: Konstantin Belousov AuthorDate: 2024-03-06 07:06:35 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-13 00:30:40 +0000 libthr: remove explicit sys/cdefs.h includes (cherry picked from commit f8bbbce458194ff4312c610d32a64ff4a3a71d45) --- lib/libthr/Makefile | 5 ----- lib/libthr/thread/thr_affinity.c | 1 - lib/libthr/thread/thr_attr.c | 1 - lib/libthr/thread/thr_autoinit.c | 1 - lib/libthr/thread/thr_barrier.c | 1 - lib/libthr/thread/thr_barrierattr.c | 1 - lib/libthr/thread/thr_cancel.c | 1 - lib/libthr/thread/thr_clean.c | 1 - lib/libthr/thread/thr_concurrency.c | 1 - lib/libthr/thread/thr_cond.c | 1 - lib/libthr/thread/thr_condattr.c | 1 - lib/libthr/thread/thr_create.c | 1 - lib/libthr/thread/thr_detach.c | 1 - lib/libthr/thread/thr_equal.c | 1 - lib/libthr/thread/thr_event.c | 1 - lib/libthr/thread/thr_exit.c | 1 - lib/libthr/thread/thr_fork.c | 1 - lib/libthr/thread/thr_getcpuclockid.c | 1 - lib/libthr/thread/thr_getprio.c | 1 - lib/libthr/thread/thr_getschedparam.c | 1 - lib/libthr/thread/thr_getthreadid_np.c | 1 - lib/libthr/thread/thr_info.c | 1 - lib/libthr/thread/thr_init.c | 1 - lib/libthr/thread/thr_join.c | 1 - lib/libthr/thread/thr_kill.c | 1 - lib/libthr/thread/thr_main_np.c | 1 - lib/libthr/thread/thr_multi_np.c | 1 - lib/libthr/thread/thr_mutex.c | 1 - lib/libthr/thread/thr_mutexattr.c | 1 - lib/libthr/thread/thr_once.c | 1 - lib/libthr/thread/thr_printf.c | 1 - lib/libthr/thread/thr_private.h | 1 - lib/libthr/thread/thr_pspinlock.c | 1 - lib/libthr/thread/thr_resume_np.c | 1 - lib/libthr/thread/thr_rtld.c | 2 -- lib/libthr/thread/thr_rwlock.c | 1 - lib/libthr/thread/thr_rwlockattr.c | 1 - lib/libthr/thread/thr_self.c | 1 - lib/libthr/thread/thr_sem.c | 1 - lib/libthr/thread/thr_setprio.c | 1 - lib/libthr/thread/thr_setschedparam.c | 1 - lib/libthr/thread/thr_sig.c | 1 - lib/libthr/thread/thr_single_np.c | 1 - lib/libthr/thread/thr_sleepq.c | 1 - lib/libthr/thread/thr_spec.c | 1 - lib/libthr/thread/thr_suspend_np.c | 1 - lib/libthr/thread/thr_switch_np.c | 1 - lib/libthr/thread/thr_syscalls.c | 1 - lib/libthr/thread/thr_umtx.c | 1 - lib/libthr/thread/thr_yield.c | 1 - 50 files changed, 55 deletions(-) diff --git a/lib/libthr/Makefile b/lib/libthr/Makefile index dde2a9dce94e..2f20934bb351 100644 --- a/lib/libthr/Makefile +++ b/lib/libthr/Makefile @@ -1,8 +1,3 @@ -# -# All library objects contain FreeBSD revision strings by default; they may be -# excluded as a space-saving measure. To produce a library that does -# not contain these strings, add -DSTRIP_FBSDID (see ) to CFLAGS -# below. PACKAGE= clibs SHLIBDIR?= /lib diff --git a/lib/libthr/thread/thr_affinity.c b/lib/libthr/thread/thr_affinity.c index 89f654ebffc2..78c89e146a79 100644 --- a/lib/libthr/thread/thr_affinity.c +++ b/lib/libthr/thread/thr_affinity.c @@ -26,7 +26,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_attr.c b/lib/libthr/thread/thr_attr.c index 3c03225c33cb..1d0bc8cb7b91 100644 --- a/lib/libthr/thread/thr_attr.c +++ b/lib/libthr/thread/thr_attr.c @@ -93,7 +93,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_autoinit.c b/lib/libthr/thread/thr_autoinit.c index f18f53517e06..b0b4e601eff7 100644 --- a/lib/libthr/thread/thr_autoinit.c +++ b/lib/libthr/thread/thr_autoinit.c @@ -33,7 +33,6 @@ * SUCH DAMAGE. */ -#include #include #include "thr_private.h" diff --git a/lib/libthr/thread/thr_barrier.c b/lib/libthr/thread/thr_barrier.c index 8f5936409c05..13dec864e2f6 100644 --- a/lib/libthr/thread/thr_barrier.c +++ b/lib/libthr/thread/thr_barrier.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_barrierattr.c b/lib/libthr/thread/thr_barrierattr.c index 7af7e40f9159..6e5de86973f2 100644 --- a/lib/libthr/thread/thr_barrierattr.c +++ b/lib/libthr/thread/thr_barrierattr.c @@ -28,7 +28,6 @@ * DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_cancel.c b/lib/libthr/thread/thr_cancel.c index 86632e41449b..b1b95e54b46f 100644 --- a/lib/libthr/thread/thr_cancel.c +++ b/lib/libthr/thread/thr_cancel.c @@ -26,7 +26,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include "un-namespace.h" diff --git a/lib/libthr/thread/thr_clean.c b/lib/libthr/thread/thr_clean.c index ba699f0376d8..43fd570fd1df 100644 --- a/lib/libthr/thread/thr_clean.c +++ b/lib/libthr/thread/thr_clean.c @@ -30,7 +30,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_concurrency.c b/lib/libthr/thread/thr_concurrency.c index cc0d1075b92d..64c605f7d058 100644 --- a/lib/libthr/thread/thr_concurrency.c +++ b/lib/libthr/thread/thr_concurrency.c @@ -32,7 +32,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_cond.c b/lib/libthr/thread/thr_cond.c index bec7933537b3..c1cbd546350e 100644 --- a/lib/libthr/thread/thr_cond.c +++ b/lib/libthr/thread/thr_cond.c @@ -30,7 +30,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_condattr.c b/lib/libthr/thread/thr_condattr.c index c5f675f0023d..0dc3e52bab5e 100644 --- a/lib/libthr/thread/thr_condattr.c +++ b/lib/libthr/thread/thr_condattr.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_create.c b/lib/libthr/thread/thr_create.c index 4b9f45ac49de..4de9bd84ca5b 100644 --- a/lib/libthr/thread/thr_create.c +++ b/lib/libthr/thread/thr_create.c @@ -27,7 +27,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_detach.c b/lib/libthr/thread/thr_detach.c index 214d5e76262e..c7a60bb26129 100644 --- a/lib/libthr/thread/thr_detach.c +++ b/lib/libthr/thread/thr_detach.c @@ -27,7 +27,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_equal.c b/lib/libthr/thread/thr_equal.c index 2a4cc9f6d049..e5b2ab881138 100644 --- a/lib/libthr/thread/thr_equal.c +++ b/lib/libthr/thread/thr_equal.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include "un-namespace.h" diff --git a/lib/libthr/thread/thr_event.c b/lib/libthr/thread/thr_event.c index afe0b307423c..f0b1805894fb 100644 --- a/lib/libthr/thread/thr_event.c +++ b/lib/libthr/thread/thr_event.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include "thr_private.h" void diff --git a/lib/libthr/thread/thr_exit.c b/lib/libthr/thread/thr_exit.c index 001b30f6671a..5a9dcf99fa21 100644 --- a/lib/libthr/thread/thr_exit.c +++ b/lib/libthr/thread/thr_exit.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #ifdef _PTHREAD_FORCED_UNWIND diff --git a/lib/libthr/thread/thr_fork.c b/lib/libthr/thread/thr_fork.c index fc7d77180e8b..614841cc314f 100644 --- a/lib/libthr/thread/thr_fork.c +++ b/lib/libthr/thread/thr_fork.c @@ -57,7 +57,6 @@ * */ -#include #include #include "namespace.h" #include diff --git a/lib/libthr/thread/thr_getcpuclockid.c b/lib/libthr/thread/thr_getcpuclockid.c index 0281fc626882..dee3a2a9447a 100644 --- a/lib/libthr/thread/thr_getcpuclockid.c +++ b/lib/libthr/thread/thr_getcpuclockid.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_getprio.c b/lib/libthr/thread/thr_getprio.c index 5ab147af212c..d338287342ac 100644 --- a/lib/libthr/thread/thr_getprio.c +++ b/lib/libthr/thread/thr_getprio.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_getschedparam.c b/lib/libthr/thread/thr_getschedparam.c index 557bcc834950..3abe9be6937b 100644 --- a/lib/libthr/thread/thr_getschedparam.c +++ b/lib/libthr/thread/thr_getschedparam.c @@ -32,7 +32,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_getthreadid_np.c b/lib/libthr/thread/thr_getthreadid_np.c index 1fe927435b02..ade332519dfb 100644 --- a/lib/libthr/thread/thr_getthreadid_np.c +++ b/lib/libthr/thread/thr_getthreadid_np.c @@ -25,7 +25,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_info.c b/lib/libthr/thread/thr_info.c index 41ab7f0bcf0c..f6bf81203f9c 100644 --- a/lib/libthr/thread/thr_info.c +++ b/lib/libthr/thread/thr_info.c @@ -33,7 +33,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_init.c b/lib/libthr/thread/thr_init.c index b59678c3f6c3..007cf5be81c9 100644 --- a/lib/libthr/thread/thr_init.c +++ b/lib/libthr/thread/thr_init.c @@ -33,7 +33,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_join.c b/lib/libthr/thread/thr_join.c index 4b48249489f6..53f28daa258d 100644 --- a/lib/libthr/thread/thr_join.c +++ b/lib/libthr/thread/thr_join.c @@ -26,7 +26,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_kill.c b/lib/libthr/thread/thr_kill.c index dd7beddd5c33..5fb40b3bc496 100644 --- a/lib/libthr/thread/thr_kill.c +++ b/lib/libthr/thread/thr_kill.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_main_np.c b/lib/libthr/thread/thr_main_np.c index 9dd8b1820acd..1d34dc21b84c 100644 --- a/lib/libthr/thread/thr_main_np.c +++ b/lib/libthr/thread/thr_main_np.c @@ -27,7 +27,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_multi_np.c b/lib/libthr/thread/thr_multi_np.c index cbd3f31fddf0..bac58ca85dca 100644 --- a/lib/libthr/thread/thr_multi_np.c +++ b/lib/libthr/thread/thr_multi_np.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_mutex.c b/lib/libthr/thread/thr_mutex.c index 5dd624a269e4..ca8971cc720a 100644 --- a/lib/libthr/thread/thr_mutex.c +++ b/lib/libthr/thread/thr_mutex.c @@ -38,7 +38,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_mutexattr.c b/lib/libthr/thread/thr_mutexattr.c index 6d38f164df52..d78aad518ee8 100644 --- a/lib/libthr/thread/thr_mutexattr.c +++ b/lib/libthr/thread/thr_mutexattr.c @@ -59,7 +59,6 @@ * */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_once.c b/lib/libthr/thread/thr_once.c index 065781907771..89b76ee58c1e 100644 --- a/lib/libthr/thread/thr_once.c +++ b/lib/libthr/thread/thr_once.c @@ -26,7 +26,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include "un-namespace.h" diff --git a/lib/libthr/thread/thr_printf.c b/lib/libthr/thread/thr_printf.c index 5304cc00c5c8..e1edffe5acb2 100644 --- a/lib/libthr/thread/thr_printf.c +++ b/lib/libthr/thread/thr_printf.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include #include #include diff --git a/lib/libthr/thread/thr_private.h b/lib/libthr/thread/thr_private.h index 3fc4d02c611e..e590fb0c1e7a 100644 --- a/lib/libthr/thread/thr_private.h +++ b/lib/libthr/thread/thr_private.h @@ -37,7 +37,6 @@ */ #include #include -#include #include #include #include diff --git a/lib/libthr/thread/thr_pspinlock.c b/lib/libthr/thread/thr_pspinlock.c index 37f14d22909d..4820490ab6af 100644 --- a/lib/libthr/thread/thr_pspinlock.c +++ b/lib/libthr/thread/thr_pspinlock.c @@ -30,7 +30,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_resume_np.c b/lib/libthr/thread/thr_resume_np.c index 6dac28ab1f4b..1e69bfa7358b 100644 --- a/lib/libthr/thread/thr_resume_np.c +++ b/lib/libthr/thread/thr_resume_np.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_rtld.c b/lib/libthr/thread/thr_rtld.c index 767b4735e1fa..54560a2f7df2 100644 --- a/lib/libthr/thread/thr_rtld.c +++ b/lib/libthr/thread/thr_rtld.c @@ -26,11 +26,9 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include /* * A lockless rwlock for rtld. */ -#include #include #include #include diff --git a/lib/libthr/thread/thr_rwlock.c b/lib/libthr/thread/thr_rwlock.c index f8d5fa4f673f..b482dc8b732a 100644 --- a/lib/libthr/thread/thr_rwlock.c +++ b/lib/libthr/thread/thr_rwlock.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include #include #include diff --git a/lib/libthr/thread/thr_rwlockattr.c b/lib/libthr/thread/thr_rwlockattr.c index 068ad7d3acbf..34bbbb20e611 100644 --- a/lib/libthr/thread/thr_rwlockattr.c +++ b/lib/libthr/thread/thr_rwlockattr.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_self.c b/lib/libthr/thread/thr_self.c index f5b1ce8fdb98..cbdadb13ccc4 100644 --- a/lib/libthr/thread/thr_self.c +++ b/lib/libthr/thread/thr_self.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include "un-namespace.h" diff --git a/lib/libthr/thread/thr_sem.c b/lib/libthr/thread/thr_sem.c index c7b5ac009a8c..76180604c183 100644 --- a/lib/libthr/thread/thr_sem.c +++ b/lib/libthr/thread/thr_sem.c @@ -30,7 +30,6 @@ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_setprio.c b/lib/libthr/thread/thr_setprio.c index 6ee60ffeb205..fddf664457bd 100644 --- a/lib/libthr/thread/thr_setprio.c +++ b/lib/libthr/thread/thr_setprio.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include "un-namespace.h" diff --git a/lib/libthr/thread/thr_setschedparam.c b/lib/libthr/thread/thr_setschedparam.c index e3e4174c753b..49ec2ae7a7fd 100644 --- a/lib/libthr/thread/thr_setschedparam.c +++ b/lib/libthr/thread/thr_setschedparam.c @@ -32,7 +32,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_sig.c b/lib/libthr/thread/thr_sig.c index e082f0601be1..ad291d106001 100644 --- a/lib/libthr/thread/thr_sig.c +++ b/lib/libthr/thread/thr_sig.c @@ -26,7 +26,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_single_np.c b/lib/libthr/thread/thr_single_np.c index e772fb5d3bb7..3aa7adba954d 100644 --- a/lib/libthr/thread/thr_single_np.c +++ b/lib/libthr/thread/thr_single_np.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_sleepq.c b/lib/libthr/thread/thr_sleepq.c index b3feef8c9381..d7de9ab4e25a 100644 --- a/lib/libthr/thread/thr_sleepq.c +++ b/lib/libthr/thread/thr_sleepq.c @@ -26,7 +26,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include #include "thr_private.h" diff --git a/lib/libthr/thread/thr_spec.c b/lib/libthr/thread/thr_spec.c index ee58bb37f6f7..44a124785085 100644 --- a/lib/libthr/thread/thr_spec.c +++ b/lib/libthr/thread/thr_spec.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_suspend_np.c b/lib/libthr/thread/thr_suspend_np.c index b594ea562480..b272c7b2a169 100644 --- a/lib/libthr/thread/thr_suspend_np.c +++ b/lib/libthr/thread/thr_suspend_np.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_switch_np.c b/lib/libthr/thread/thr_switch_np.c index cbf959f161e3..80cd34c15650 100644 --- a/lib/libthr/thread/thr_switch_np.c +++ b/lib/libthr/thread/thr_switch_np.c @@ -32,7 +32,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_syscalls.c b/lib/libthr/thread/thr_syscalls.c index d68ca60e5993..69fb4b45fce5 100644 --- a/lib/libthr/thread/thr_syscalls.c +++ b/lib/libthr/thread/thr_syscalls.c @@ -65,7 +65,6 @@ * */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_umtx.c b/lib/libthr/thread/thr_umtx.c index 37b378e74405..ba73fd906232 100644 --- a/lib/libthr/thread/thr_umtx.c +++ b/lib/libthr/thread/thr_umtx.c @@ -26,7 +26,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "thr_private.h" #include "thr_umtx.h" diff --git a/lib/libthr/thread/thr_yield.c b/lib/libthr/thread/thr_yield.c index b391e69cabc1..057fc789de02 100644 --- a/lib/libthr/thread/thr_yield.c +++ b/lib/libthr/thread/thr_yield.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include From nobody Wed Mar 13 00:31:37 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvWfK6cngz5CrYk; Wed, 13 Mar 2024 00:31:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TvWfK6NCNz4tj7; Wed, 13 Mar 2024 00:31:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710289897; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rAA6OiV51iZ8f2veZL+xnQswurVIWY8+1ByAWO6BBcg=; b=ulM+MGvdDGYa314m0+lWNIHIPenzJFcEpMBMbza8Xr75542nyVPV7uekEMQliNaYnKtqMD 2OVJwZcdgETuEfSuocbaOgTZe9e7+EJ5Rm7qG6a3W//3a0yItTdX/HeynU4nYWIVyeRZpi eeWkPAQdyQHICIm/xA8T2fb3kxZhSIohO2wN+lOdf1i5Ym3JgDAQqXjoyZNga8UNuN12Fv zLpw5bMiy87dXaMqly4K7iJcgkDl3m/44lO4Lb6oov2K5uly/g5U7NBvbswd/PZ29Kh8WC VCXk5d2cepb/8TgOW+QEujlgOBdYRnOTqclQ+6Lo5vGS+rjaIbgRaSL1gcjHcA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710289897; a=rsa-sha256; cv=none; b=fYk1748GmbERJ/SDgfp8yEMUyRyz40/bNez9zMSOG7UpRsJHIMljvc2BSquzRCu8d9WqKW 1oPcGMpn5Wx6k47uSdH/0NksoWaUGs9qieHI7qe206y/xkMdJ8x2X2w1qXoX/+4ZeZZOE5 sL8HJuLcSM7JToM40MBeSNSPanB8N88ASHEZ/TiLEvWNWf5JtWFvgVKITZek1v3PEq3pCG U2MBQraKdheHh7gufhj8HWDQ8pVhit4LgwNPUWAkXd0lXAfJM3EHRVyXIZGK3ThUAL1hyV q+lHgGsZH/LDiG4Lv4JuEmoc2kV+oIGqGo4cBIrLDGJnQwEy9GzW3EpHX14wQQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710289897; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rAA6OiV51iZ8f2veZL+xnQswurVIWY8+1ByAWO6BBcg=; b=qV+ofHg8aC8Ys6WBLKXcR9J6ROsu9Dn3LifVKfd6Mc6VYnRp35FD7BTAm2qC+uNB3AaP3f JlX75gD4jN3h7nARW4JBbMV0Golp8TZOT/6LWSCT3ktfRltrcZGNevceh4Pmkc64UL5C9r 1O2Naqvt6F/DJysPj1DXcs484rVcPAKmx83M/LqsXql85QQ0ZpscA3RR3Lxs3f2eesmuoW +D+Ik2XZA8977cm251n7EhjG37phguiKaCJwGaajGe+yRUBS51LE0+sGr+3gh3qpFTQ9J9 4iwKuCDXM+F2ue3a0r9kUOa5TOb0fzBvRAy2f6pbYq1NEFrufGDVRO0TVFZ+vQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvWfK5zFszLSP; Wed, 13 Mar 2024 00:31:37 +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 42D0VbS1072563; Wed, 13 Mar 2024 00:31:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42D0Vbip072560; Wed, 13 Mar 2024 00:31:37 GMT (envelope-from git) Date: Wed, 13 Mar 2024 00:31:37 GMT Message-Id: <202403130031.42D0Vbip072560@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: 32651946de0d - stable/13 - libthr: remove explicit sys/cdefs.h includes List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 32651946de0d354f2cb15bb0bf4e86a73ecbe493 Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=32651946de0d354f2cb15bb0bf4e86a73ecbe493 commit 32651946de0d354f2cb15bb0bf4e86a73ecbe493 Author: Konstantin Belousov AuthorDate: 2024-03-06 07:06:35 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-13 00:31:20 +0000 libthr: remove explicit sys/cdefs.h includes (cherry picked from commit f8bbbce458194ff4312c610d32a64ff4a3a71d45) --- lib/libthr/Makefile | 5 ----- lib/libthr/thread/thr_affinity.c | 1 - lib/libthr/thread/thr_attr.c | 1 - lib/libthr/thread/thr_autoinit.c | 1 - lib/libthr/thread/thr_barrier.c | 1 - lib/libthr/thread/thr_barrierattr.c | 1 - lib/libthr/thread/thr_cancel.c | 1 - lib/libthr/thread/thr_clean.c | 1 - lib/libthr/thread/thr_concurrency.c | 1 - lib/libthr/thread/thr_cond.c | 1 - lib/libthr/thread/thr_condattr.c | 1 - lib/libthr/thread/thr_create.c | 1 - lib/libthr/thread/thr_detach.c | 1 - lib/libthr/thread/thr_equal.c | 1 - lib/libthr/thread/thr_event.c | 1 - lib/libthr/thread/thr_exit.c | 1 - lib/libthr/thread/thr_fork.c | 1 - lib/libthr/thread/thr_getcpuclockid.c | 1 - lib/libthr/thread/thr_getprio.c | 1 - lib/libthr/thread/thr_getschedparam.c | 1 - lib/libthr/thread/thr_getthreadid_np.c | 1 - lib/libthr/thread/thr_info.c | 1 - lib/libthr/thread/thr_init.c | 1 - lib/libthr/thread/thr_join.c | 1 - lib/libthr/thread/thr_kill.c | 1 - lib/libthr/thread/thr_main_np.c | 1 - lib/libthr/thread/thr_multi_np.c | 1 - lib/libthr/thread/thr_mutex.c | 1 - lib/libthr/thread/thr_mutexattr.c | 1 - lib/libthr/thread/thr_once.c | 1 - lib/libthr/thread/thr_printf.c | 1 - lib/libthr/thread/thr_private.h | 1 - lib/libthr/thread/thr_pspinlock.c | 1 - lib/libthr/thread/thr_resume_np.c | 1 - lib/libthr/thread/thr_rtld.c | 2 -- lib/libthr/thread/thr_rwlock.c | 1 - lib/libthr/thread/thr_rwlockattr.c | 1 - lib/libthr/thread/thr_self.c | 1 - lib/libthr/thread/thr_sem.c | 1 - lib/libthr/thread/thr_setprio.c | 1 - lib/libthr/thread/thr_setschedparam.c | 1 - lib/libthr/thread/thr_sig.c | 1 - lib/libthr/thread/thr_single_np.c | 1 - lib/libthr/thread/thr_sleepq.c | 1 - lib/libthr/thread/thr_spec.c | 1 - lib/libthr/thread/thr_suspend_np.c | 1 - lib/libthr/thread/thr_switch_np.c | 1 - lib/libthr/thread/thr_syscalls.c | 1 - lib/libthr/thread/thr_umtx.c | 1 - lib/libthr/thread/thr_yield.c | 1 - 50 files changed, 55 deletions(-) diff --git a/lib/libthr/Makefile b/lib/libthr/Makefile index dbd64c210470..126214393e29 100644 --- a/lib/libthr/Makefile +++ b/lib/libthr/Makefile @@ -1,8 +1,3 @@ -# -# All library objects contain FreeBSD revision strings by default; they may be -# excluded as a space-saving measure. To produce a library that does -# not contain these strings, add -DSTRIP_FBSDID (see ) to CFLAGS -# below. PACKAGE= clibs SHLIBDIR?= /lib diff --git a/lib/libthr/thread/thr_affinity.c b/lib/libthr/thread/thr_affinity.c index 89f654ebffc2..78c89e146a79 100644 --- a/lib/libthr/thread/thr_affinity.c +++ b/lib/libthr/thread/thr_affinity.c @@ -26,7 +26,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_attr.c b/lib/libthr/thread/thr_attr.c index 3c03225c33cb..1d0bc8cb7b91 100644 --- a/lib/libthr/thread/thr_attr.c +++ b/lib/libthr/thread/thr_attr.c @@ -93,7 +93,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_autoinit.c b/lib/libthr/thread/thr_autoinit.c index f18f53517e06..b0b4e601eff7 100644 --- a/lib/libthr/thread/thr_autoinit.c +++ b/lib/libthr/thread/thr_autoinit.c @@ -33,7 +33,6 @@ * SUCH DAMAGE. */ -#include #include #include "thr_private.h" diff --git a/lib/libthr/thread/thr_barrier.c b/lib/libthr/thread/thr_barrier.c index 8f5936409c05..13dec864e2f6 100644 --- a/lib/libthr/thread/thr_barrier.c +++ b/lib/libthr/thread/thr_barrier.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_barrierattr.c b/lib/libthr/thread/thr_barrierattr.c index 7af7e40f9159..6e5de86973f2 100644 --- a/lib/libthr/thread/thr_barrierattr.c +++ b/lib/libthr/thread/thr_barrierattr.c @@ -28,7 +28,6 @@ * DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_cancel.c b/lib/libthr/thread/thr_cancel.c index 86632e41449b..b1b95e54b46f 100644 --- a/lib/libthr/thread/thr_cancel.c +++ b/lib/libthr/thread/thr_cancel.c @@ -26,7 +26,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include "un-namespace.h" diff --git a/lib/libthr/thread/thr_clean.c b/lib/libthr/thread/thr_clean.c index ba699f0376d8..43fd570fd1df 100644 --- a/lib/libthr/thread/thr_clean.c +++ b/lib/libthr/thread/thr_clean.c @@ -30,7 +30,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_concurrency.c b/lib/libthr/thread/thr_concurrency.c index cc0d1075b92d..64c605f7d058 100644 --- a/lib/libthr/thread/thr_concurrency.c +++ b/lib/libthr/thread/thr_concurrency.c @@ -32,7 +32,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_cond.c b/lib/libthr/thread/thr_cond.c index bec7933537b3..c1cbd546350e 100644 --- a/lib/libthr/thread/thr_cond.c +++ b/lib/libthr/thread/thr_cond.c @@ -30,7 +30,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_condattr.c b/lib/libthr/thread/thr_condattr.c index c5f675f0023d..0dc3e52bab5e 100644 --- a/lib/libthr/thread/thr_condattr.c +++ b/lib/libthr/thread/thr_condattr.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_create.c b/lib/libthr/thread/thr_create.c index 4b9f45ac49de..4de9bd84ca5b 100644 --- a/lib/libthr/thread/thr_create.c +++ b/lib/libthr/thread/thr_create.c @@ -27,7 +27,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_detach.c b/lib/libthr/thread/thr_detach.c index 214d5e76262e..c7a60bb26129 100644 --- a/lib/libthr/thread/thr_detach.c +++ b/lib/libthr/thread/thr_detach.c @@ -27,7 +27,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_equal.c b/lib/libthr/thread/thr_equal.c index 2a4cc9f6d049..e5b2ab881138 100644 --- a/lib/libthr/thread/thr_equal.c +++ b/lib/libthr/thread/thr_equal.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include "un-namespace.h" diff --git a/lib/libthr/thread/thr_event.c b/lib/libthr/thread/thr_event.c index afe0b307423c..f0b1805894fb 100644 --- a/lib/libthr/thread/thr_event.c +++ b/lib/libthr/thread/thr_event.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include "thr_private.h" void diff --git a/lib/libthr/thread/thr_exit.c b/lib/libthr/thread/thr_exit.c index 001b30f6671a..5a9dcf99fa21 100644 --- a/lib/libthr/thread/thr_exit.c +++ b/lib/libthr/thread/thr_exit.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #ifdef _PTHREAD_FORCED_UNWIND diff --git a/lib/libthr/thread/thr_fork.c b/lib/libthr/thread/thr_fork.c index fc7d77180e8b..614841cc314f 100644 --- a/lib/libthr/thread/thr_fork.c +++ b/lib/libthr/thread/thr_fork.c @@ -57,7 +57,6 @@ * */ -#include #include #include "namespace.h" #include diff --git a/lib/libthr/thread/thr_getcpuclockid.c b/lib/libthr/thread/thr_getcpuclockid.c index 0281fc626882..dee3a2a9447a 100644 --- a/lib/libthr/thread/thr_getcpuclockid.c +++ b/lib/libthr/thread/thr_getcpuclockid.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_getprio.c b/lib/libthr/thread/thr_getprio.c index 5ab147af212c..d338287342ac 100644 --- a/lib/libthr/thread/thr_getprio.c +++ b/lib/libthr/thread/thr_getprio.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_getschedparam.c b/lib/libthr/thread/thr_getschedparam.c index 557bcc834950..3abe9be6937b 100644 --- a/lib/libthr/thread/thr_getschedparam.c +++ b/lib/libthr/thread/thr_getschedparam.c @@ -32,7 +32,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_getthreadid_np.c b/lib/libthr/thread/thr_getthreadid_np.c index 1fe927435b02..ade332519dfb 100644 --- a/lib/libthr/thread/thr_getthreadid_np.c +++ b/lib/libthr/thread/thr_getthreadid_np.c @@ -25,7 +25,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_info.c b/lib/libthr/thread/thr_info.c index 41ab7f0bcf0c..f6bf81203f9c 100644 --- a/lib/libthr/thread/thr_info.c +++ b/lib/libthr/thread/thr_info.c @@ -33,7 +33,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_init.c b/lib/libthr/thread/thr_init.c index b59678c3f6c3..007cf5be81c9 100644 --- a/lib/libthr/thread/thr_init.c +++ b/lib/libthr/thread/thr_init.c @@ -33,7 +33,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_join.c b/lib/libthr/thread/thr_join.c index 4b48249489f6..53f28daa258d 100644 --- a/lib/libthr/thread/thr_join.c +++ b/lib/libthr/thread/thr_join.c @@ -26,7 +26,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_kill.c b/lib/libthr/thread/thr_kill.c index dd7beddd5c33..5fb40b3bc496 100644 --- a/lib/libthr/thread/thr_kill.c +++ b/lib/libthr/thread/thr_kill.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_main_np.c b/lib/libthr/thread/thr_main_np.c index 9dd8b1820acd..1d34dc21b84c 100644 --- a/lib/libthr/thread/thr_main_np.c +++ b/lib/libthr/thread/thr_main_np.c @@ -27,7 +27,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_multi_np.c b/lib/libthr/thread/thr_multi_np.c index cbd3f31fddf0..bac58ca85dca 100644 --- a/lib/libthr/thread/thr_multi_np.c +++ b/lib/libthr/thread/thr_multi_np.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_mutex.c b/lib/libthr/thread/thr_mutex.c index 5dd624a269e4..ca8971cc720a 100644 --- a/lib/libthr/thread/thr_mutex.c +++ b/lib/libthr/thread/thr_mutex.c @@ -38,7 +38,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_mutexattr.c b/lib/libthr/thread/thr_mutexattr.c index 6d38f164df52..d78aad518ee8 100644 --- a/lib/libthr/thread/thr_mutexattr.c +++ b/lib/libthr/thread/thr_mutexattr.c @@ -59,7 +59,6 @@ * */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_once.c b/lib/libthr/thread/thr_once.c index 065781907771..89b76ee58c1e 100644 --- a/lib/libthr/thread/thr_once.c +++ b/lib/libthr/thread/thr_once.c @@ -26,7 +26,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include "un-namespace.h" diff --git a/lib/libthr/thread/thr_printf.c b/lib/libthr/thread/thr_printf.c index 5304cc00c5c8..e1edffe5acb2 100644 --- a/lib/libthr/thread/thr_printf.c +++ b/lib/libthr/thread/thr_printf.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include #include #include diff --git a/lib/libthr/thread/thr_private.h b/lib/libthr/thread/thr_private.h index 3fc4d02c611e..e590fb0c1e7a 100644 --- a/lib/libthr/thread/thr_private.h +++ b/lib/libthr/thread/thr_private.h @@ -37,7 +37,6 @@ */ #include #include -#include #include #include #include diff --git a/lib/libthr/thread/thr_pspinlock.c b/lib/libthr/thread/thr_pspinlock.c index 37f14d22909d..4820490ab6af 100644 --- a/lib/libthr/thread/thr_pspinlock.c +++ b/lib/libthr/thread/thr_pspinlock.c @@ -30,7 +30,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_resume_np.c b/lib/libthr/thread/thr_resume_np.c index 6dac28ab1f4b..1e69bfa7358b 100644 --- a/lib/libthr/thread/thr_resume_np.c +++ b/lib/libthr/thread/thr_resume_np.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_rtld.c b/lib/libthr/thread/thr_rtld.c index 9026abf941e2..3bc07638e6bf 100644 --- a/lib/libthr/thread/thr_rtld.c +++ b/lib/libthr/thread/thr_rtld.c @@ -26,11 +26,9 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include /* * A lockless rwlock for rtld. */ -#include #include #include #include diff --git a/lib/libthr/thread/thr_rwlock.c b/lib/libthr/thread/thr_rwlock.c index f8d5fa4f673f..b482dc8b732a 100644 --- a/lib/libthr/thread/thr_rwlock.c +++ b/lib/libthr/thread/thr_rwlock.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include #include #include diff --git a/lib/libthr/thread/thr_rwlockattr.c b/lib/libthr/thread/thr_rwlockattr.c index 068ad7d3acbf..34bbbb20e611 100644 --- a/lib/libthr/thread/thr_rwlockattr.c +++ b/lib/libthr/thread/thr_rwlockattr.c @@ -26,7 +26,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_self.c b/lib/libthr/thread/thr_self.c index f5b1ce8fdb98..cbdadb13ccc4 100644 --- a/lib/libthr/thread/thr_self.c +++ b/lib/libthr/thread/thr_self.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include "un-namespace.h" diff --git a/lib/libthr/thread/thr_sem.c b/lib/libthr/thread/thr_sem.c index c7b5ac009a8c..76180604c183 100644 --- a/lib/libthr/thread/thr_sem.c +++ b/lib/libthr/thread/thr_sem.c @@ -30,7 +30,6 @@ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_setprio.c b/lib/libthr/thread/thr_setprio.c index 6ee60ffeb205..fddf664457bd 100644 --- a/lib/libthr/thread/thr_setprio.c +++ b/lib/libthr/thread/thr_setprio.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include "un-namespace.h" diff --git a/lib/libthr/thread/thr_setschedparam.c b/lib/libthr/thread/thr_setschedparam.c index e3e4174c753b..49ec2ae7a7fd 100644 --- a/lib/libthr/thread/thr_setschedparam.c +++ b/lib/libthr/thread/thr_setschedparam.c @@ -32,7 +32,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_sig.c b/lib/libthr/thread/thr_sig.c index e082f0601be1..ad291d106001 100644 --- a/lib/libthr/thread/thr_sig.c +++ b/lib/libthr/thread/thr_sig.c @@ -26,7 +26,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_single_np.c b/lib/libthr/thread/thr_single_np.c index e772fb5d3bb7..3aa7adba954d 100644 --- a/lib/libthr/thread/thr_single_np.c +++ b/lib/libthr/thread/thr_single_np.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_sleepq.c b/lib/libthr/thread/thr_sleepq.c index b3feef8c9381..d7de9ab4e25a 100644 --- a/lib/libthr/thread/thr_sleepq.c +++ b/lib/libthr/thread/thr_sleepq.c @@ -26,7 +26,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include #include "thr_private.h" diff --git a/lib/libthr/thread/thr_spec.c b/lib/libthr/thread/thr_spec.c index ee58bb37f6f7..44a124785085 100644 --- a/lib/libthr/thread/thr_spec.c +++ b/lib/libthr/thread/thr_spec.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_suspend_np.c b/lib/libthr/thread/thr_suspend_np.c index b594ea562480..b272c7b2a169 100644 --- a/lib/libthr/thread/thr_suspend_np.c +++ b/lib/libthr/thread/thr_suspend_np.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_switch_np.c b/lib/libthr/thread/thr_switch_np.c index cbf959f161e3..80cd34c15650 100644 --- a/lib/libthr/thread/thr_switch_np.c +++ b/lib/libthr/thread/thr_switch_np.c @@ -32,7 +32,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_syscalls.c b/lib/libthr/thread/thr_syscalls.c index d68ca60e5993..69fb4b45fce5 100644 --- a/lib/libthr/thread/thr_syscalls.c +++ b/lib/libthr/thread/thr_syscalls.c @@ -65,7 +65,6 @@ * */ -#include #include "namespace.h" #include #include diff --git a/lib/libthr/thread/thr_umtx.c b/lib/libthr/thread/thr_umtx.c index 37b378e74405..ba73fd906232 100644 --- a/lib/libthr/thread/thr_umtx.c +++ b/lib/libthr/thread/thr_umtx.c @@ -26,7 +26,6 @@ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include #include "thr_private.h" #include "thr_umtx.h" diff --git a/lib/libthr/thread/thr_yield.c b/lib/libthr/thread/thr_yield.c index b391e69cabc1..057fc789de02 100644 --- a/lib/libthr/thread/thr_yield.c +++ b/lib/libthr/thread/thr_yield.c @@ -29,7 +29,6 @@ * SUCH DAMAGE. */ -#include #include "namespace.h" #include #include From eugen@freebsd.org Wed Mar 13 08:09:30 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tvjps0jnnz5DZpR for ; Wed, 13 Mar 2024 08:09:41 +0000 (UTC) (envelope-from eugen@freebsd.org) Received: from mail.rdtc.ru (mail.rdtc.ru [62.231.190.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4Tvjpr5S46z4bMP for ; Wed, 13 Mar 2024 08:09:40 +0000 (UTC) (envelope-from eugen@freebsd.org) Authentication-Results: mx1.freebsd.org; none Received: by mail.rdtc.ru (RDTC Post Office Server, from userid 1000) id B02BA1CF18; Wed, 13 Mar 2024 15:09:37 +0700 (+07) Received: from eg.sd.rdtc.ru (eg.sd.rdtc.ru [62.231.161.221]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: egrosbein@rdtc.ru) by mail.rdtc.ru (RDTC Post Office Server) with ESMTPSA id 338661CF2C; Wed, 13 Mar 2024 15:09:36 +0700 (+07) X-Envelope-From: eugen@freebsd.org X-Envelope-To: brooks@freebsd.org Received: from [10.58.0.10] (dadvw [10.58.0.10]) by eg.sd.rdtc.ru (8.17.1/8.17.1) with ESMTPS id 42D89WTV066491 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT); Wed, 13 Mar 2024 15:09:33 +0700 (+07) (envelope-from eugen@freebsd.org) Subject: Re: git: 7f0dc6e2cdfa - main - mkimg(1): process non-seekable output gracefully To: Brooks Davis References: <202403121600.42CG0OKT011953@gitrepo.freebsd.org> Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org From: Eugene Grosbein Message-ID: <7ddc5445-3afe-2447-b400-60f21366935f@freebsd.org> Date: Wed, 13 Mar 2024 15:09:30 +0700 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-3.5 required=5.0 tests=BAYES_00,NICE_REPLY_A, SPF_SOFTFAIL,T_DATE_IN_FUTURE_96_Q,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=4.0.0 X-Spam-Report: * 0.7 SPF_SOFTFAIL SPF: sender does not match SPF record (softfail) * -2.3 BAYES_00 BODY: Bayes spam probability is 0 to 1% * [score: 0.0000] * 0.0 T_DATE_IN_FUTURE_96_Q Date: is 4 days to 4 months after Received: * date * -1.9 NICE_REPLY_A Looks like a legit reply (A) * -0.0 T_SCC_BODY_TEXT_LINE No description available. X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on eg.sd.rdtc.ru X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:29072, ipnet:62.231.184.0/21, country:RU] X-Rspamd-Queue-Id: 4Tvjpr5S46z4bMP 12.03.2024 23:58, Brooks Davis wrote: [skip] > It seems weird to cache a single member. For that matter, caching > anyting seems like overkill given than format_selected() just returns a > global variable's value. It is a habit. Why not? :-) I do not like calling a method multiple times after an object settled. [skip] >> +#if defined(SPARSE_WRITE) >> + /* >> + * sparse_write() fails if output is not seekable so fail early >> + * not wasting some load unless output format is raw >> + */ >> + if (strcmp("raw", format_name) && >> + lseek(outfd, (off_t)0, SEEK_CUR) == -1 && errno == ESPIPE) >> + errx(EX_USAGE, "%s: output must be seekable", format_name); >> +#endif > > Maybe add a flag for non-seeking formats rather than hardcoding a > strcmp? I thought about it. A change would be much more invasive without real benefits. I believe there will not be any more non-sparse formats other than raw. If there will, we can improve the code later. For now, I prefer keeping the code and the change as simple as possible. Eugene From nobody Wed Mar 13 16:54:49 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvxSn6Hvgz5DG2j; Wed, 13 Mar 2024 16:54: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 4TvxSn5l2Qz4HXQ; Wed, 13 Mar 2024 16:54:49 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710348889; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ks3Pop3yk6YynKZRkaNjPR2pucQZ0zq3ngzqFu9HrGk=; b=lL2qwdJikkGY/boOn4bZsAVZfj8OJD1sQ2MRsLJvJ0RYHwBIzFNyaNXnZE/vj77PRUunwa wNyeK1jckR1pp/i9IQxWU2IGw0nN21J+7FdDsqJP4cjlHVq4Ka92REkbnBfeqzaVJr212q BnoK823v+fBKq9Tv3dxZlCn1wGr8uLZetsCQ0Lfl08c4uqB6+NtuzSiXUNkq9Rzmbha5tp DXBICWr8U0zHsG2Qf5gt+V0thWPj86DDaimdgeaA6oophZlGGpfJS6oz65GqmlZgPOthRj ink7FR1mu5u9qfg3wbTUmdxq+w0cM5EBudA4OA9CHYQ6AFPTo3fsGROYkuLFfQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710348889; a=rsa-sha256; cv=none; b=xln/jcjQaTdKJ5XucijhiUmKW+Kb0gcj/5L6gozdIaFUDx+LjqYnD7N+wnnqwy2BD667mI wAfErnUDOq03hjBH5bw/xeDAHWtRE5wET0+7F5XXhfXrAEht8jGwBkQfi/BxY95+9LS9tZ wdIRN7yGk25+fjDxmCtL02diskUO3JCzTDj7xGQ/GPcDpBXOOVxUm3szSFmOOqDYqbt7+P 2gnIiMnipvAPA4fpx8NPW66PTtTY26g3j61J2D1EV9ym4vyGTM2ms/GopmtqL+Hd7fA/7E wbDTcRUXlgtEP9GxXVmPUPTC8UJZG9dahRxY+UIm4+SlBz3Ni9ZO6v+1YFF59w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710348889; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Ks3Pop3yk6YynKZRkaNjPR2pucQZ0zq3ngzqFu9HrGk=; b=KGIK2chpBaps9tAtf+C6GdotGvz3mfsyVJ34R0A6GsorVhnrNbjg1GuF8xKlxgwC7BiW00 WNaI1HCemEm/byYNLyOsMqJ0AoJN/AtobXOdkGHRjg+UnP/1HLYWvb6Ad2PYucHpOlHakI yeeRezZUw6N15chceBpSvdjMoQrEdsz+7z7ceRybiDlsPDf8iflTwVOMGk+Az4YeD/e2N1 WO+WDPNhbntW8xyvZnug6GEJBbb2Qk29cxoEjvF0Tg90NSMVg+oeF5cx/xEo8w3U/mjvGv MPh2ulQxwY2K8V/UJYPvfyxDyBtVP4fyBByFFJKMhpTQdxS4ffbyAVnzK9ihMA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvxSn5LZKzqTb; Wed, 13 Mar 2024 16:54: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 42DGsn5e032472; Wed, 13 Mar 2024 16:54:49 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DGsnT9032469; Wed, 13 Mar 2024 16:54:49 GMT (envelope-from git) Date: Wed, 13 Mar 2024 16:54:49 GMT Message-Id: <202403131654.42DGsnT9032469@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: a3a4bea49c31 - main - libc: remove remnants of __fcntl_compat List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a3a4bea49c31f880dc50b51bbadc0c0a444d5183 Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=a3a4bea49c31f880dc50b51bbadc0c0a444d5183 commit a3a4bea49c31f880dc50b51bbadc0c0a444d5183 Author: Brooks Davis AuthorDate: 2024-03-13 16:52:49 +0000 Commit: Brooks Davis CommitDate: 2024-03-13 16:52:49 +0000 libc: remove remnants of __fcntl_compat Reviewed by: kib Fixes: 60b2e2d3ee82 libc: stop exposing __fcntl_compat Differential Revision: https://reviews.freebsd.org/D44326 --- lib/libc/include/compat.h | 2 -- lib/libc/include/libc_private.h | 1 - 2 files changed, 3 deletions(-) diff --git a/lib/libc/include/compat.h b/lib/libc/include/compat.h index fe940701e356..70fb8dcd97f3 100644 --- a/lib/libc/include/compat.h +++ b/lib/libc/include/compat.h @@ -74,8 +74,6 @@ __sym_compat(swapoff, freebsd13_swapoff, FBSD_1.0); #define __weak_reference(sym,alias) \ .weak alias;.equ alias,sym -__weak_reference(__sys_fcntl, __fcntl_compat) - #undef __weak_reference #endif /* __LIBC_COMPAT_H__ */ diff --git a/lib/libc/include/libc_private.h b/lib/libc/include/libc_private.h index b2284d2df5c6..7b5b987c22a3 100644 --- a/lib/libc/include/libc_private.h +++ b/lib/libc/include/libc_private.h @@ -418,7 +418,6 @@ int __libc_sigwait(const __sigset_t * __restrict, int * restrict sig); int __libc_system(const char *); int __libc_tcdrain(int); -int __fcntl_compat(int fd, int cmd, ...); int __sys_futimens(int fd, const struct timespec *times) __hidden; int __sys_utimensat(int fd, const char *path, From nobody Wed Mar 13 18:36:32 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tvzk90lFrz5DRLG; Wed, 13 Mar 2024 18:36: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 4Tvzk907Vqz4Scw; Wed, 13 Mar 2024 18:36:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710354993; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jwD01VNexUp0weYXrk4T5hpFdKZEkQlv5cPpv1nzoVc=; b=QUaIfiWDkATULr8Hdj+8+wDP0tEsx+14dk5ZnMTNFTDgF3SfafaBAFsWJSgsCwLdO0kQdo MJDRWU4e7VGT+xkNwlWhceGtn7Wk7bRYRCZX0KbjS1s7bUQBPBFu9QnErKaL/xr4BeHypI DiRG1sdiqOgmb1q+IfL0L5pqD5tPu5H7qrl6go4PPp3z+QfrmPsJYd/nXSPinG1G4TOZZy wBP2QCoL8fOsSQavqPuGfAypr4fBEpniSEvC0cNZfxYj6cE6++Zz6641rlrnLk/GWjp+aB RIIFGuxAkB4zkgPc9RbSieWJG/hZ+EUI6D6BL+2T1M9QQQmNLu0rKGSeuD5bXg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710354993; a=rsa-sha256; cv=none; b=RoHyfOW06Rps37JTQBrNBoNf2mIPCSF0wqc5y6sGV4VNS5gFq2y9pD6hDntf3WCqjunlFd YiiC07i+fnrXvzRobP72Lg5SabW08+RRkNWcH6lEIJB269SHwRwAEPqovWmU8ueWCkfYiy avQKKQ8FpXOLyN+488KQUoMc/B411aO4pVu/3oB403NmSiGcyAsXhuEby1A434OqYUEf14 HbEeC+qxmWhj+Loe/Nh+49QmSyrYu5B08MsBbb0EKqoW+9S3Ni7vxsLap7UOswTzflhF3n tzV8iyOc/e2FGIZg5egKJ/ndzeZLcPmsipc7IgDrJQNSgrUfBv4O61uixf8M0A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710354993; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jwD01VNexUp0weYXrk4T5hpFdKZEkQlv5cPpv1nzoVc=; b=faQQZfPOB8VXo6aTVKboDiiiGsUc1nO5TYBXeMnwFgBgI0UbytzBkxM4y4cmY255jYZWPY IAa9LD5ZO6aclHkOVmpUZPFZCZW62SzTQedT5rc4TXaXIEXKw61csOBukiqkc7j4kxo8Nl ZzIEG08aoQFwgqzEJIFDPwy1aG+zGWbrqD5oB021vKOHASPZpiLqvYt6JxuEIZiFHqfeaj E2zTEh3Syw/evRsoP5dZOoTOUfuc3WC/q1QfyBHbpUtBRBwg9LFg3jBfJ8W7xjR4AWKQGL PYgA+zwTSNmG1wGX/my9cjapDmB7p49NKbJWZNheD0WpgsRhtQwufprjJ0w+FA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tvzk86qb2ztlD; Wed, 13 Mar 2024 18:36: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 42DIaWv9002497; Wed, 13 Mar 2024 18:36:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DIaWxA002494; Wed, 13 Mar 2024 18:36:32 GMT (envelope-from git) Date: Wed, 13 Mar 2024 18:36:32 GMT Message-Id: <202403131836.42DIaWxA002494@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: f7dbbbd1762f - main - libsys: don't expose sigwait wrapper List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f7dbbbd1762f8f74d5a585230c56eca92e4fdb8b Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=f7dbbbd1762f8f74d5a585230c56eca92e4fdb8b commit f7dbbbd1762f8f74d5a585230c56eca92e4fdb8b Author: Brooks Davis AuthorDate: 2024-03-13 17:04:07 +0000 Commit: Brooks Davis CommitDate: 2024-03-13 17:04:07 +0000 libsys: don't expose sigwait wrapper Long ago (e129c18a83ef) __sys_sigwait was wrapped to prevent sigwait() from returning with EINTR. Through a series of changes this wrapper become __libc_sigwait which was internal to libc and used solely in the interposing table. To support a move of sigwait back to libc, move this wrapper into libsys and rename it with an __libsys_ prefix. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D44238 --- lib/libc/include/libc_private.h | 3 +-- lib/libsys/Makefile.sys | 3 ++- lib/libsys/Symbol.sys.map | 1 - lib/libsys/interposing_table.c | 2 +- lib/libsys/libsys_sigwait.c | 45 +++++++++++++++++++++++++++++++++++++++++ lib/libsys/sigwait.c | 15 -------------- 6 files changed, 49 insertions(+), 20 deletions(-) diff --git a/lib/libc/include/libc_private.h b/lib/libc/include/libc_private.h index 7b5b987c22a3..6a6de5b5645d 100644 --- a/lib/libc/include/libc_private.h +++ b/lib/libc/include/libc_private.h @@ -414,8 +414,7 @@ int __libc_sigaction(int, const struct sigaction *, int __libc_sigprocmask(int, const __sigset_t *, __sigset_t *) __hidden; int __libc_sigsuspend(const __sigset_t *) __hidden; -int __libc_sigwait(const __sigset_t * __restrict, - int * restrict sig); +int __libsys_sigwait(const __sigset_t *, int *) __hidden; int __libc_system(const char *); int __libc_tcdrain(int); diff --git a/lib/libsys/Makefile.sys b/lib/libsys/Makefile.sys index b3d41c804290..e798a94e4ae0 100644 --- a/lib/libsys/Makefile.sys +++ b/lib/libsys/Makefile.sys @@ -37,7 +37,8 @@ SRCS+= \ __getosreldate.c \ getpagesize.c \ getpagesizes.c \ - interposing_table.c + interposing_table.c \ + libsys_sigwait.c SRCS+= getdents.c lstat.c mknod.c stat.c diff --git a/lib/libsys/Symbol.sys.map b/lib/libsys/Symbol.sys.map index ff368ebfac44..fa27dc95aea4 100644 --- a/lib/libsys/Symbol.sys.map +++ b/lib/libsys/Symbol.sys.map @@ -433,7 +433,6 @@ FBSD_1.8 { FBSDprivate_1.0 { /* Add entries in sort(1) order */ - __libc_sigwait; __libsys_interposing_slot; __set_error_selector; __sigwait; diff --git a/lib/libsys/interposing_table.c b/lib/libsys/interposing_table.c index 4ee36da4c4c4..e285def70fad 100644 --- a/lib/libsys/interposing_table.c +++ b/lib/libsys/interposing_table.c @@ -59,7 +59,7 @@ interpos_func_t __libsys_interposing[INTERPOS_MAX] = { SLOT(sigaction, __sys_sigaction), SLOT(sigprocmask, __sys_sigprocmask), SLOT(sigsuspend, __sys_sigsuspend), - SLOT(sigwait, __libc_sigwait), + SLOT(sigwait, __libsys_sigwait), SLOT(sigtimedwait, __sys_sigtimedwait), SLOT(sigwaitinfo, __sys_sigwaitinfo), SLOT(swapcontext, __sys_swapcontext), diff --git a/lib/libsys/libsys_sigwait.c b/lib/libsys/libsys_sigwait.c new file mode 100644 index 000000000000..ce1a416d76b3 --- /dev/null +++ b/lib/libsys/libsys_sigwait.c @@ -0,0 +1,45 @@ +/*- + * SPDX-License-Identifier: BSD-2-Clause + * + * Copyright (c) 2010 davidxu@freebsd.org + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +#include +#include "libc_private.h" + +/* XXX: why does this symbol exist? */ +__weak_reference(__libsys_sigwait, __sigwait); + +int +__libsys_sigwait(const sigset_t *set, int *sig) +{ + int ret; + + /* POSIX does not allow EINTR to be returned */ + do { + ret = __sys_sigwait(set, sig); + } while (ret == EINTR); + return (ret); +} diff --git a/lib/libsys/sigwait.c b/lib/libsys/sigwait.c index 4b863eb04db0..412a9206b821 100644 --- a/lib/libsys/sigwait.c +++ b/lib/libsys/sigwait.c @@ -25,12 +25,9 @@ * SUCH DAMAGE. */ -#include #include #include "libc_private.h" -__weak_reference(__libc_sigwait, __sigwait); - #pragma weak sigwait int sigwait(const sigset_t *set, int *sig) @@ -38,15 +35,3 @@ sigwait(const sigset_t *set, int *sig) return (((int (*)(const sigset_t *, int *)) __libsys_interposing[INTERPOS_sigwait])(set, sig)); } - -int -__libc_sigwait(const sigset_t *set, int *sig) -{ - int ret; - - /* POSIX does not allow EINTR to be returned */ - do { - ret = __sys_sigwait(set, sig); - } while (ret == EINTR); - return (ret); -} From nobody Wed Mar 13 18:36:33 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvzkB1dvQz5DRFf; Wed, 13 Mar 2024 18:36: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 4TvzkB0ZqMz4SJj; Wed, 13 Mar 2024 18:36:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710354994; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ceW6+mOtt8YC2aKx1WCfFf3z4E0WwpRN7YlqAwu/3gQ=; b=sZv5Kw3vG7dxjgtRrpQh9wH+6+qbyhAipaENWua1lYstmy+Y2aq262ELsudAgW56ZdHIRi 59G3TH5tjnnSvATw8XJGSqmM2tmWkESKl6T09Q6zdZ5Z16D9Zwe+/G2dAZeVZHEI+FYTPQ LFAgjDCj+tOIK+2Z/pUgJSIsgzvniXtkXwWWe38MBqAuRIEVpOLOsUWHKzYwIoReU+h/Fj dUrXd5HzJhLWhABZN6PQx8hQSO/9UrJQM+5qIFrlzOzxDxNw332dcLaNPQurs9Jbsh1DG5 sKCfDfAJvASyrvgmBEoqEIq1zRunX39nXwVPWmzWgHVJkdCVi7vbs8QjjoF8AQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710354994; a=rsa-sha256; cv=none; b=Gq0tZwKgX2Q5krvHRbdf79lSMF6li0TNusOdKOU8EaqLvpY08h+XnDTJBRhsuWx3zvfFYF cWO7E/Crf2KkDtfcfI4/bVkZZw5tQLYEHGdsVpKPCRDZNtKDIwvGDdlCXdtoO9iww+QN0G tsnaQxUR+B0sJLeqLdq4Q+leMNcpqSnZK7KIbWHAsNxRh6bqR4oPPiAg9r+9rISnNRHj6Q eHwarGbEn5Z/ckQ54dFFQ8kW/AlQqsMbov3hmUSJ4f3JzWJkucZF2yC5qmiR2+nO6ql6Tj JjtccZo5ICgJPbHJKgqnQrQEeycL/tPeBgvN/GPfZuNwWSOatYhBCvq/yCvsvw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710354994; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ceW6+mOtt8YC2aKx1WCfFf3z4E0WwpRN7YlqAwu/3gQ=; b=hqmC5TPFWepXL45ONJ9JOV+8YL0Joi+GbvJHREbPNV/NO0GE1xtKytmfhutYcWdQBamYot YkUiQ9O+nPEHMQ1xKsPM4T8nLb4cZ9Wgz4OdjfzeCBL7P3xQPhYwrsTWVlMLMSYr6NUKvX pDayPpQwNbObcS0Wa5GlxsjtBgqfvp/UuHNmwciOuTYGZpZJbwsJ9pBtgGb0IOPF89I82r aZv6e4nGHus5+CW5BcwOb9VK8W8aZ4eEDctE0Gg59TKI7GkWpLhnAI9YPyPK20h+vuGAWy bsE4zYP9UdvTon21jGfWcA/7KaCNo0fNNbJWnwe2QV3vngT+v7KzR632hSdMaQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvzkB09ZBztX9; Wed, 13 Mar 2024 18:36: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 42DIaXXl002546; Wed, 13 Mar 2024 18:36:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DIaXRt002543; Wed, 13 Mar 2024 18:36:33 GMT (envelope-from git) Date: Wed, 13 Mar 2024 18:36:33 GMT Message-Id: <202403131836.42DIaXRt002543@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: ef5fddd3440c - main - libsys: make __libsys_interposing static List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ef5fddd3440cc726db2acb85ca55fdc9c996ea64 Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=ef5fddd3440cc726db2acb85ca55fdc9c996ea64 commit ef5fddd3440cc726db2acb85ca55fdc9c996ea64 Author: Brooks Davis AuthorDate: 2024-03-13 17:31:48 +0000 Commit: Brooks Davis CommitDate: 2024-03-13 17:31:48 +0000 libsys: make __libsys_interposing static Access __libsys_interposing with __libc_interposing_slot() in all cases to support a move of these wrappers back to libc. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D44239 --- lib/libc/gen/libc_interposing_table.c | 1 - lib/libc/gen/sleep.c | 2 +- lib/libc/gen/usleep.c | 2 +- lib/libc/include/libc_private.h | 1 - lib/libsys/accept.c | 2 +- lib/libsys/accept4.c | 3 ++- lib/libsys/aio_suspend.c | 3 ++- lib/libsys/clock_nanosleep.c | 4 ++-- lib/libsys/close.c | 2 +- lib/libsys/connect.c | 2 +- lib/libsys/creat.c | 4 ++-- lib/libsys/fcntl.c | 2 +- lib/libsys/fdatasync.c | 3 ++- lib/libsys/fork.c | 2 +- lib/libsys/fsync.c | 2 +- lib/libsys/interposing_table.c | 2 +- lib/libsys/kevent.c | 4 ++-- lib/libsys/lockf.c | 6 +++--- lib/libsys/msync.c | 2 +- lib/libsys/nanosleep.c | 2 +- lib/libsys/open.c | 4 ++-- lib/libsys/openat.c | 3 ++- lib/libsys/pdfork.c | 3 ++- lib/libsys/poll.c | 2 +- lib/libsys/ppoll.c | 4 ++-- lib/libsys/pselect.c | 2 +- lib/libsys/read.c | 2 +- lib/libsys/readv.c | 2 +- lib/libsys/recv.c | 4 ++-- lib/libsys/recvfrom.c | 4 ++-- lib/libsys/recvmsg.c | 2 +- lib/libsys/select.c | 2 +- lib/libsys/send.c | 2 +- lib/libsys/sendmsg.c | 2 +- lib/libsys/sendto.c | 4 ++-- lib/libsys/setcontext.c | 2 +- lib/libsys/sigaction.c | 2 +- lib/libsys/sigprocmask.c | 2 +- lib/libsys/sigsuspend.c | 2 +- lib/libsys/sigtimedwait.c | 2 +- lib/libsys/sigwait.c | 2 +- lib/libsys/sigwaitinfo.c | 2 +- lib/libsys/swapcontext.c | 2 +- lib/libsys/wait.c | 3 ++- lib/libsys/wait3.c | 4 ++-- lib/libsys/wait4.c | 3 ++- lib/libsys/wait6.c | 4 ++-- lib/libsys/waitid.c | 4 ++-- lib/libsys/waitpid.c | 3 ++- lib/libsys/write.c | 2 +- lib/libsys/writev.c | 2 +- 51 files changed, 70 insertions(+), 64 deletions(-) diff --git a/lib/libc/gen/libc_interposing_table.c b/lib/libc/gen/libc_interposing_table.c index 6997dce86569..d15d32711910 100644 --- a/lib/libc/gen/libc_interposing_table.c +++ b/lib/libc/gen/libc_interposing_table.c @@ -49,7 +49,6 @@ interpos_func_t __libc_interposing[INTERPOS_MAX] = { interpos_func_t * __libc_interposing_slot(int interposno) { - /* XXX: forward compat. Remove after 15.0-RELEASE. */ if (__libc_interposing[interposno] == NULL) return (__libsys_interposing_slot(interposno)); return (&__libc_interposing[interposno]); diff --git a/lib/libc/gen/sleep.c b/lib/libc/gen/sleep.c index 46a7dcc4dbca..7b6e80353c6e 100644 --- a/lib/libc/gen/sleep.c +++ b/lib/libc/gen/sleep.c @@ -56,7 +56,7 @@ __sleep(unsigned int seconds) time_to_sleep.tv_sec = seconds; time_to_sleep.tv_nsec = 0; if (((int (*)(const struct timespec *, struct timespec *)) - (*__libsys_interposing_slot(INTERPOS_nanosleep)))( + (*__libc_interposing_slot(INTERPOS_nanosleep)))( &time_to_sleep, &time_remaining) != -1) return (0); if (errno != EINTR) diff --git a/lib/libc/gen/usleep.c b/lib/libc/gen/usleep.c index e312e55c6541..f58d81d978e3 100644 --- a/lib/libc/gen/usleep.c +++ b/lib/libc/gen/usleep.c @@ -46,7 +46,7 @@ __usleep(useconds_t useconds) time_to_sleep.tv_nsec = (useconds % 1000000) * 1000; time_to_sleep.tv_sec = useconds / 1000000; return (((int (*)(const struct timespec *, struct timespec *)) - (*__libsys_interposing_slot(INTERPOS_nanosleep)))(&time_to_sleep, + (*__libc_interposing_slot(INTERPOS_nanosleep)))(&time_to_sleep, NULL)); } diff --git a/lib/libc/include/libc_private.h b/lib/libc/include/libc_private.h index 6a6de5b5645d..b3f31f6e4e87 100644 --- a/lib/libc/include/libc_private.h +++ b/lib/libc/include/libc_private.h @@ -201,7 +201,6 @@ typedef int (*interpos_func_t)(void); interpos_func_t *__libc_interposing_slot(int interposno); extern interpos_func_t __libc_interposing[] __hidden; interpos_func_t *__libsys_interposing_slot(int interposno); -extern interpos_func_t __libsys_interposing[] __hidden; enum { INTERPOS_accept, diff --git a/lib/libsys/accept.c b/lib/libsys/accept.c index 974d26eeaa6b..609cb31b140e 100644 --- a/lib/libsys/accept.c +++ b/lib/libsys/accept.c @@ -41,5 +41,5 @@ int accept(int s, struct sockaddr *addr, socklen_t *addrlen) { return (((int (*)(int, struct sockaddr *, socklen_t *)) - __libsys_interposing[INTERPOS_accept])(s, addr, addrlen)); + *(__libc_interposing_slot(INTERPOS_accept)))(s, addr, addrlen)); } diff --git a/lib/libsys/accept4.c b/lib/libsys/accept4.c index d69e843e28e6..c789d0a63250 100644 --- a/lib/libsys/accept4.c +++ b/lib/libsys/accept4.c @@ -41,5 +41,6 @@ int accept4(int s, struct sockaddr *addr, socklen_t *addrlen, int flags) { return (((int (*)(int, struct sockaddr *, socklen_t *, int)) - __libsys_interposing[INTERPOS_accept4])(s, addr, addrlen, flags)); + *(__libc_interposing_slot(INTERPOS_accept4))) + (s, addr, addrlen, flags)); } diff --git a/lib/libsys/aio_suspend.c b/lib/libsys/aio_suspend.c index 41872fbdd049..499d2a349c3c 100644 --- a/lib/libsys/aio_suspend.c +++ b/lib/libsys/aio_suspend.c @@ -42,5 +42,6 @@ aio_suspend(const struct aiocb * const iocbs[], int niocb, { return (((int (*)(const struct aiocb * const[], int, const struct timespec *)) - __libsys_interposing[INTERPOS_aio_suspend])(iocbs, niocb, timeout)); + *(__libc_interposing_slot(INTERPOS_aio_suspend))) + (iocbs, niocb, timeout)); } diff --git a/lib/libsys/clock_nanosleep.c b/lib/libsys/clock_nanosleep.c index 58d76243f42c..ad996220d19f 100644 --- a/lib/libsys/clock_nanosleep.c +++ b/lib/libsys/clock_nanosleep.c @@ -43,6 +43,6 @@ clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *rqtp, { return (((int (*)(clockid_t, int, const struct timespec *, struct timespec *)) - __libsys_interposing[INTERPOS_clock_nanosleep])(clock_id, flags, - rqtp, rmtp)); + *(__libc_interposing_slot(INTERPOS_clock_nanosleep))) + (clock_id, flags, rqtp, rmtp)); } diff --git a/lib/libsys/close.c b/lib/libsys/close.c index 923339f06e71..5017f6e3d745 100644 --- a/lib/libsys/close.c +++ b/lib/libsys/close.c @@ -40,5 +40,5 @@ __weak_reference(__sys_close, __close); int close(int fd) { - return (((int (*)(int))__libsys_interposing[INTERPOS_close])(fd)); + return (((int (*)(int))*(__libc_interposing_slot(INTERPOS_close)))(fd)); } diff --git a/lib/libsys/connect.c b/lib/libsys/connect.c index c908ec5dc493..70fc4682b06d 100644 --- a/lib/libsys/connect.c +++ b/lib/libsys/connect.c @@ -41,5 +41,5 @@ int connect(int s, const struct sockaddr *addr, socklen_t addrlen) { return (((int (*)(int, const struct sockaddr *, socklen_t)) - __libsys_interposing[INTERPOS_connect])(s, addr, addrlen)); + *(__libc_interposing_slot(INTERPOS_connect)))(s, addr, addrlen)); } diff --git a/lib/libsys/creat.c b/lib/libsys/creat.c index 9bc1db19de1d..bcb750e93d38 100644 --- a/lib/libsys/creat.c +++ b/lib/libsys/creat.c @@ -44,7 +44,7 @@ int __creat(const char *path, mode_t mode) { return (((int (*)(int, const char *, int, ...)) - __libsys_interposing[INTERPOS_openat])(AT_FDCWD, path, O_WRONLY | - O_CREAT | O_TRUNC, mode)); + *(__libc_interposing_slot(INTERPOS_openat))) + (AT_FDCWD, path, O_WRONLY | O_CREAT | O_TRUNC, mode)); } diff --git a/lib/libsys/fcntl.c b/lib/libsys/fcntl.c index 52e041003b4d..308d144a4426 100644 --- a/lib/libsys/fcntl.c +++ b/lib/libsys/fcntl.c @@ -50,5 +50,5 @@ fcntl(int fd, int cmd, ...) va_end(args); return (((int (*)(int, int, ...)) - __libsys_interposing[INTERPOS_fcntl])(fd, cmd, arg)); + *(__libc_interposing_slot(INTERPOS_fcntl)))(fd, cmd, arg)); } diff --git a/lib/libsys/fdatasync.c b/lib/libsys/fdatasync.c index dc6927eae324..2dd81ec1a215 100644 --- a/lib/libsys/fdatasync.c +++ b/lib/libsys/fdatasync.c @@ -37,5 +37,6 @@ int fdatasync(int fd) { - return (((int (*)(int))__libsys_interposing[INTERPOS_fdatasync])(fd)); + return (((int (*)(int))*(__libc_interposing_slot(INTERPOS_fdatasync))) + (fd)); } diff --git a/lib/libsys/fork.c b/lib/libsys/fork.c index 4feecb355a56..1c70c2587c32 100644 --- a/lib/libsys/fork.c +++ b/lib/libsys/fork.c @@ -39,5 +39,5 @@ __weak_reference(__sys_fork, __fork); pid_t fork(void) { - return (((pid_t (*)(void))__libsys_interposing[INTERPOS_fork])()); + return (((pid_t (*)(void))*(__libc_interposing_slot(INTERPOS_fork)))()); } diff --git a/lib/libsys/fsync.c b/lib/libsys/fsync.c index 92e3ae89bccc..aa33bbdf69e7 100644 --- a/lib/libsys/fsync.c +++ b/lib/libsys/fsync.c @@ -39,5 +39,5 @@ __weak_reference(__sys_fsync, __fsync); int fsync(int fd) { - return (((int (*)(int))__libsys_interposing[INTERPOS_fsync])(fd)); + return (((int (*)(int))*(__libc_interposing_slot(INTERPOS_fsync)))(fd)); } diff --git a/lib/libsys/interposing_table.c b/lib/libsys/interposing_table.c index e285def70fad..31cdb1511ab8 100644 --- a/lib/libsys/interposing_table.c +++ b/lib/libsys/interposing_table.c @@ -34,7 +34,7 @@ #define SLOT(a, b) \ [INTERPOS_##a] = (interpos_func_t)b -interpos_func_t __libsys_interposing[INTERPOS_MAX] = { +static interpos_func_t __libsys_interposing[INTERPOS_MAX] = { SLOT(accept, __sys_accept), SLOT(accept4, __sys_accept4), SLOT(aio_suspend, __sys_aio_suspend), diff --git a/lib/libsys/kevent.c b/lib/libsys/kevent.c index 4be825e5c078..e81bcabc568a 100644 --- a/lib/libsys/kevent.c +++ b/lib/libsys/kevent.c @@ -43,6 +43,6 @@ kevent(int kq, const struct kevent *changelist, int nchanges, { return (((int (*)(int, const struct kevent *, int, struct kevent *, int, const struct timespec *)) - __libsys_interposing[INTERPOS_kevent])(kq, changelist, nchanges, - eventlist, nevents, timeout)); + *(__libc_interposing_slot(INTERPOS_kevent))) + (kq, changelist, nchanges, eventlist, nevents, timeout)); } diff --git a/lib/libsys/lockf.c b/lib/libsys/lockf.c index bb98ebc1be82..3701cebbc190 100644 --- a/lib/libsys/lockf.c +++ b/lib/libsys/lockf.c @@ -63,8 +63,8 @@ lockf(int filedes, int function, off_t size) case F_TEST: fl.l_type = F_WRLCK; if (((int (*)(int, int, ...)) - __libsys_interposing[INTERPOS_fcntl])(filedes, F_GETLK, &fl) - == -1) + *(__libc_interposing_slot(INTERPOS_fcntl))) + (filedes, F_GETLK, &fl) == -1) return (-1); if (fl.l_type == F_UNLCK || (fl.l_sysid == 0 && fl.l_pid == getpid())) @@ -79,5 +79,5 @@ lockf(int filedes, int function, off_t size) } return (((int (*)(int, int, ...)) - __libsys_interposing[INTERPOS_fcntl])(filedes, cmd, &fl)); + *(__libc_interposing_slot(INTERPOS_fcntl)))(filedes, cmd, &fl)); } diff --git a/lib/libsys/msync.c b/lib/libsys/msync.c index 6836d4db265c..bda60db5c333 100644 --- a/lib/libsys/msync.c +++ b/lib/libsys/msync.c @@ -41,5 +41,5 @@ int msync(void *addr, size_t len, int flags) { return (((int (*)(void *, size_t, int)) - __libsys_interposing[INTERPOS_msync])(addr, len, flags)); + *(__libc_interposing_slot(INTERPOS_msync)))(addr, len, flags)); } diff --git a/lib/libsys/nanosleep.c b/lib/libsys/nanosleep.c index 83d54a1ca04a..daa4784363db 100644 --- a/lib/libsys/nanosleep.c +++ b/lib/libsys/nanosleep.c @@ -40,5 +40,5 @@ int nanosleep(const struct timespec *rqtp, struct timespec *rmtp) { return (((int (*)(const struct timespec *, struct timespec *)) - __libsys_interposing[INTERPOS_nanosleep])(rqtp, rmtp)); + *(__libc_interposing_slot(INTERPOS_nanosleep)))(rqtp, rmtp)); } diff --git a/lib/libsys/open.c b/lib/libsys/open.c index 0ab3e9c4501e..6ea18727c876 100644 --- a/lib/libsys/open.c +++ b/lib/libsys/open.c @@ -51,6 +51,6 @@ open(const char *path, int flags, ...) mode = 0; } return (((int (*)(int, const char *, int, ...)) - __libsys_interposing[INTERPOS_openat])(AT_FDCWD, path, flags, - mode)); + *(__libc_interposing_slot(INTERPOS_openat))) + (AT_FDCWD, path, flags, mode)); } diff --git a/lib/libsys/openat.c b/lib/libsys/openat.c index 4d8a0fc627cb..d49aafe35e62 100644 --- a/lib/libsys/openat.c +++ b/lib/libsys/openat.c @@ -54,5 +54,6 @@ openat(int fd, const char *path, int flags, ...) mode = 0; } return (((int (*)(int, const char *, int, ...)) - __libsys_interposing[INTERPOS_openat])(fd, path, flags, mode)); + *(__libc_interposing_slot(INTERPOS_openat))) + (fd, path, flags, mode)); } diff --git a/lib/libsys/pdfork.c b/lib/libsys/pdfork.c index 12cf6d858826..6830d878b414 100644 --- a/lib/libsys/pdfork.c +++ b/lib/libsys/pdfork.c @@ -37,6 +37,7 @@ pid_t pdfork(int *fdp, int flags) { - return (((pid_t (*)(int *, int))__libsys_interposing[INTERPOS_pdfork]) + return (((pid_t (*)(int *, int)) + *(__libc_interposing_slot(INTERPOS_pdfork))) (fdp, flags)); } diff --git a/lib/libsys/poll.c b/lib/libsys/poll.c index 58fbb64fdda5..93b0e1b3c8ed 100644 --- a/lib/libsys/poll.c +++ b/lib/libsys/poll.c @@ -40,5 +40,5 @@ int poll(struct pollfd pfd[], nfds_t nfds, int timeout) { return (((int (*)(struct pollfd *, nfds_t, int)) - __libsys_interposing[INTERPOS_poll])(pfd, nfds, timeout)); + *(__libc_interposing_slot(INTERPOS_poll)))(pfd, nfds, timeout)); } diff --git a/lib/libsys/ppoll.c b/lib/libsys/ppoll.c index 2ff693fc5b19..50e83975da2a 100644 --- a/lib/libsys/ppoll.c +++ b/lib/libsys/ppoll.c @@ -41,6 +41,6 @@ ppoll(struct pollfd pfd[], nfds_t nfds, const struct timespec *__restrict timeout, const sigset_t *__restrict newsigmask) { return (((int (*)(struct pollfd *, nfds_t, const struct timespec *, - const sigset_t *)) __libsys_interposing[INTERPOS_ppoll])(pfd, nfds, - timeout, newsigmask)); + const sigset_t *))*(__libc_interposing_slot(INTERPOS_ppoll))) + (pfd, nfds, timeout, newsigmask)); } diff --git a/lib/libsys/pselect.c b/lib/libsys/pselect.c index dfd918b4c6d2..a7776049013f 100644 --- a/lib/libsys/pselect.c +++ b/lib/libsys/pselect.c @@ -42,5 +42,5 @@ pselect(int n, fd_set *rs, fd_set *ws, fd_set *es, const struct timespec *t, { return (((int (*)(int, fd_set *, fd_set *, fd_set *, const struct timespec *, const sigset_t *)) - __libsys_interposing[INTERPOS_pselect])(n, rs, ws, es, t, s)); + *(__libc_interposing_slot(INTERPOS_pselect)))(n, rs, ws, es, t, s)); } diff --git a/lib/libsys/read.c b/lib/libsys/read.c index 846e7185bc02..2b8185975a6a 100644 --- a/lib/libsys/read.c +++ b/lib/libsys/read.c @@ -41,5 +41,5 @@ ssize_t read(int fd, void *buf, size_t nbytes) { return (((ssize_t (*)(int, void *, size_t)) - __libsys_interposing[INTERPOS_read])(fd, buf, nbytes)); + *(__libc_interposing_slot(INTERPOS_read)))(fd, buf, nbytes)); } diff --git a/lib/libsys/readv.c b/lib/libsys/readv.c index 5493f7964098..62a8fa976e2b 100644 --- a/lib/libsys/readv.c +++ b/lib/libsys/readv.c @@ -42,5 +42,5 @@ ssize_t readv(int fd, const struct iovec *iov, int iovcnt) { return (((ssize_t (*)(int, const struct iovec *, int)) - __libsys_interposing[INTERPOS_readv])(fd, iov, iovcnt)); + *(__libc_interposing_slot(INTERPOS_readv)))(fd, iov, iovcnt)); } diff --git a/lib/libsys/recv.c b/lib/libsys/recv.c index db3d6216ed61..21caf2f841f6 100644 --- a/lib/libsys/recv.c +++ b/lib/libsys/recv.c @@ -44,6 +44,6 @@ recv(int s, void *buf, size_t len, int flags) */ return (((ssize_t (*)(int, void *, size_t, int, struct sockaddr *, socklen_t *)) - __libsys_interposing[INTERPOS_recvfrom])(s, buf, len, flags, - NULL, NULL)); + *(__libc_interposing_slot(INTERPOS_recvfrom))) + (s, buf, len, flags, NULL, NULL)); } diff --git a/lib/libsys/recvfrom.c b/lib/libsys/recvfrom.c index 630b27404b7a..0bb3c4c3b719 100644 --- a/lib/libsys/recvfrom.c +++ b/lib/libsys/recvfrom.c @@ -43,6 +43,6 @@ recvfrom(int s, void *buf, size_t len, int flags, { return (((ssize_t (*)(int, void *, size_t, int, struct sockaddr *, socklen_t *)) - __libsys_interposing[INTERPOS_recvfrom])(s, buf, len, flags, - from, fromlen)); + *(__libc_interposing_slot(INTERPOS_recvfrom))) + (s, buf, len, flags, from, fromlen)); } diff --git a/lib/libsys/recvmsg.c b/lib/libsys/recvmsg.c index 69b71c54e636..c8d631ebe56e 100644 --- a/lib/libsys/recvmsg.c +++ b/lib/libsys/recvmsg.c @@ -41,5 +41,5 @@ ssize_t recvmsg(int s, struct msghdr *msg, int flags) { return (((int (*)(int, struct msghdr *, int)) - __libsys_interposing[INTERPOS_recvmsg])(s, msg, flags)); + *(__libc_interposing_slot(INTERPOS_recvmsg)))(s, msg, flags)); } diff --git a/lib/libsys/select.c b/lib/libsys/select.c index 4b5862f72100..27f4ff10a1bb 100644 --- a/lib/libsys/select.c +++ b/lib/libsys/select.c @@ -40,5 +40,5 @@ int select(int n, fd_set *rs, fd_set *ws, fd_set *es, struct timeval *t) { return (((int (*)(int, fd_set *, fd_set *, fd_set *, struct timeval *)) - __libsys_interposing[INTERPOS_select])(n, rs, ws, es, t)); + *(__libc_interposing_slot(INTERPOS_select)))(n, rs, ws, es, t)); } diff --git a/lib/libsys/send.c b/lib/libsys/send.c index 94983553b1c3..4e945f969a65 100644 --- a/lib/libsys/send.c +++ b/lib/libsys/send.c @@ -44,6 +44,6 @@ send(int s, const void *msg, size_t len, int flags) */ return (((ssize_t (*)(int, const void *, size_t, int, const struct sockaddr *, socklen_t)) - __libsys_interposing[INTERPOS_sendto])(s, msg, len, flags, + *__libc_interposing_slot(INTERPOS_sendto))(s, msg, len, flags, NULL, 0)); } diff --git a/lib/libsys/sendmsg.c b/lib/libsys/sendmsg.c index 769bb4d2d136..488e0c736801 100644 --- a/lib/libsys/sendmsg.c +++ b/lib/libsys/sendmsg.c @@ -41,5 +41,5 @@ ssize_t sendmsg(int s, const struct msghdr *msg, int flags) { return (((int (*)(int, const struct msghdr *, int)) - __libsys_interposing[INTERPOS_sendmsg])(s, msg, flags)); + *(__libc_interposing_slot(INTERPOS_sendmsg)))(s, msg, flags)); } diff --git a/lib/libsys/sendto.c b/lib/libsys/sendto.c index 60104ba2e5c7..93d336cfca11 100644 --- a/lib/libsys/sendto.c +++ b/lib/libsys/sendto.c @@ -43,6 +43,6 @@ sendto(int s, const void *msg, size_t len, int flags, { return (((ssize_t (*)(int, const void *, size_t, int, const struct sockaddr *, socklen_t)) - __libsys_interposing[INTERPOS_sendto])(s, msg, len, flags, - to, tolen)); + *(__libc_interposing_slot(INTERPOS_sendto))) + (s, msg, len, flags, to, tolen)); } diff --git a/lib/libsys/setcontext.c b/lib/libsys/setcontext.c index 734bd9c186fe..e54d4ba82395 100644 --- a/lib/libsys/setcontext.c +++ b/lib/libsys/setcontext.c @@ -43,5 +43,5 @@ int setcontext(const ucontext_t *uc) { return (((int (*)(const ucontext_t *)) - __libsys_interposing[INTERPOS_setcontext])(uc)); + *(__libc_interposing_slot(INTERPOS_setcontext)))(uc)); } diff --git a/lib/libsys/sigaction.c b/lib/libsys/sigaction.c index 4fa7b5d8699b..07593a4e540d 100644 --- a/lib/libsys/sigaction.c +++ b/lib/libsys/sigaction.c @@ -41,5 +41,5 @@ int sigaction(int sig, const struct sigaction *act, struct sigaction *oact) { return (((int (*)(int, const struct sigaction *, struct sigaction *)) - __libsys_interposing[INTERPOS_sigaction])(sig, act, oact)); + *(__libc_interposing_slot(INTERPOS_sigaction)))(sig, act, oact)); } diff --git a/lib/libsys/sigprocmask.c b/lib/libsys/sigprocmask.c index c0d86de4b156..6b20065ff6d1 100644 --- a/lib/libsys/sigprocmask.c +++ b/lib/libsys/sigprocmask.c @@ -41,5 +41,5 @@ int sigprocmask(int how, const sigset_t *set, sigset_t *oset) { return (((int (*)(int, const sigset_t *, sigset_t *)) - __libsys_interposing[INTERPOS_sigprocmask])(how, set, oset)); + *(__libc_interposing_slot(INTERPOS_sigprocmask)))(how, set, oset)); } diff --git a/lib/libsys/sigsuspend.c b/lib/libsys/sigsuspend.c index de57d645354d..32125eb846be 100644 --- a/lib/libsys/sigsuspend.c +++ b/lib/libsys/sigsuspend.c @@ -41,5 +41,5 @@ int sigsuspend(const sigset_t *set) { return (((int (*)(const sigset_t *)) - __libsys_interposing[INTERPOS_sigsuspend])(set)); + *(__libc_interposing_slot(INTERPOS_sigsuspend)))(set)); } diff --git a/lib/libsys/sigtimedwait.c b/lib/libsys/sigtimedwait.c index 0cfcbb9811bc..4b449407e754 100644 --- a/lib/libsys/sigtimedwait.c +++ b/lib/libsys/sigtimedwait.c @@ -42,5 +42,5 @@ sigtimedwait(const sigset_t * __restrict set, siginfo_t * __restrict info, { return (((int (*)(const sigset_t *, siginfo_t *, const struct timespec *)) - __libsys_interposing[INTERPOS_sigtimedwait])(set, info, t)); + *(__libc_interposing_slot(INTERPOS_sigtimedwait)))(set, info, t)); } diff --git a/lib/libsys/sigwait.c b/lib/libsys/sigwait.c index 412a9206b821..23c341461639 100644 --- a/lib/libsys/sigwait.c +++ b/lib/libsys/sigwait.c @@ -33,5 +33,5 @@ int sigwait(const sigset_t *set, int *sig) { return (((int (*)(const sigset_t *, int *)) - __libsys_interposing[INTERPOS_sigwait])(set, sig)); + *(__libc_interposing_slot(INTERPOS_sigwait)))(set, sig)); } diff --git a/lib/libsys/sigwaitinfo.c b/lib/libsys/sigwaitinfo.c index 277bd96a06a1..d8a0780441d1 100644 --- a/lib/libsys/sigwaitinfo.c +++ b/lib/libsys/sigwaitinfo.c @@ -40,5 +40,5 @@ int sigwaitinfo(const sigset_t * __restrict set, siginfo_t * __restrict info) { return (((int (*)(const sigset_t *, siginfo_t *)) - __libsys_interposing[INTERPOS_sigwaitinfo])(set, info)); + *(__libc_interposing_slot(INTERPOS_sigwaitinfo)))(set, info)); } diff --git a/lib/libsys/swapcontext.c b/lib/libsys/swapcontext.c index 28f7c9f769a7..0793dd838526 100644 --- a/lib/libsys/swapcontext.c +++ b/lib/libsys/swapcontext.c @@ -45,5 +45,5 @@ int swapcontext(ucontext_t *oucp, const ucontext_t *ucp) { return (((int (*)(ucontext_t *, const ucontext_t *)) - __libsys_interposing[INTERPOS_swapcontext])(oucp, ucp)); + *(__libc_interposing_slot(INTERPOS_swapcontext)))(oucp, ucp)); } diff --git a/lib/libsys/wait.c b/lib/libsys/wait.c index c400d07f9dd5..7c847a616003 100644 --- a/lib/libsys/wait.c +++ b/lib/libsys/wait.c @@ -44,7 +44,8 @@ pid_t __wait(int *istat) { return (((pid_t (*)(pid_t, int *, int, struct rusage *)) - __libsys_interposing[INTERPOS_wait4])(WAIT_ANY, istat, 0, NULL)); + *(__libc_interposing_slot(INTERPOS_wait4))) + (WAIT_ANY, istat, 0, NULL)); } __weak_reference(__wait, wait); diff --git a/lib/libsys/wait3.c b/lib/libsys/wait3.c index 40baf70ac6e6..5d7d7bc22a67 100644 --- a/lib/libsys/wait3.c +++ b/lib/libsys/wait3.c @@ -44,8 +44,8 @@ pid_t __wait3(int *istat, int options, struct rusage *rup) { return (((pid_t (*)(pid_t, int *, int, struct rusage *)) - __libsys_interposing[INTERPOS_wait4])(WAIT_ANY, istat, options, - rup)); + *(__libc_interposing_slot(INTERPOS_wait4))) + (WAIT_ANY, istat, options, rup)); } __weak_reference(__wait3, wait3); diff --git a/lib/libsys/wait4.c b/lib/libsys/wait4.c index bbd866a8bb16..eab2e9b6e2c0 100644 --- a/lib/libsys/wait4.c +++ b/lib/libsys/wait4.c @@ -40,5 +40,6 @@ pid_t wait4(pid_t pid, int *status, int options, struct rusage *ru) { return (((pid_t (*)(pid_t, int *, int, struct rusage *)) - __libsys_interposing[INTERPOS_wait4])(pid, status, options, ru)); + *(__libc_interposing_slot(INTERPOS_wait4))) + (pid, status, options, ru)); } diff --git a/lib/libsys/wait6.c b/lib/libsys/wait6.c index eab11d4a6212..eff40eae3b76 100644 --- a/lib/libsys/wait6.c +++ b/lib/libsys/wait6.c @@ -42,6 +42,6 @@ wait6(idtype_t idtype, id_t id, int *status, int options, struct __wrusage *ru, siginfo_t *infop) { return (((pid_t (*)(idtype_t, id_t, int *, int, struct __wrusage *, - siginfo_t *))__libsys_interposing[INTERPOS_wait6])(idtype, id, - status, options, ru, infop)); + siginfo_t *))*(__libc_interposing_slot(INTERPOS_wait6))) + (idtype, id, status, options, ru, infop)); } diff --git a/lib/libsys/waitid.c b/lib/libsys/waitid.c index b6e5ca33eed3..f885e8f55912 100644 --- a/lib/libsys/waitid.c +++ b/lib/libsys/waitid.c @@ -47,8 +47,8 @@ __waitid(idtype_t idtype, id_t id, siginfo_t *info, int flags) pid_t ret; ret = ((pid_t (*)(idtype_t, id_t, int *, int, struct __wrusage *, - siginfo_t *))__libsys_interposing[INTERPOS_wait6])(idtype, id, - &status, flags, NULL, info); + siginfo_t *))*(__libc_interposing_slot(INTERPOS_wait6))) + (idtype, id, &status, flags, NULL, info); /* * According to SUSv4, waitid() shall not return a PID when a diff --git a/lib/libsys/waitpid.c b/lib/libsys/waitpid.c index ba7e667218cf..971c598d6a93 100644 --- a/lib/libsys/waitpid.c +++ b/lib/libsys/waitpid.c @@ -44,7 +44,8 @@ pid_t __waitpid(pid_t pid, int *istat, int options) { return (((pid_t (*)(pid_t, int *, int, struct rusage *)) - __libsys_interposing[INTERPOS_wait4])(pid, istat, options, NULL)); + *(__libc_interposing_slot(INTERPOS_wait4))) + (pid, istat, options, NULL)); } __weak_reference(__waitpid, waitpid); diff --git a/lib/libsys/write.c b/lib/libsys/write.c index 5bb372c2b8f4..c2050374431b 100644 --- a/lib/libsys/write.c +++ b/lib/libsys/write.c @@ -41,5 +41,5 @@ ssize_t write(int fd, const void *buf, size_t nbytes) { return (((ssize_t (*)(int, const void *, size_t)) - __libsys_interposing[INTERPOS_write])(fd, buf, nbytes)); + *(__libc_interposing_slot(INTERPOS_write)))(fd, buf, nbytes)); } diff --git a/lib/libsys/writev.c b/lib/libsys/writev.c index d311cb075e3c..40f6f2f211ae 100644 --- a/lib/libsys/writev.c +++ b/lib/libsys/writev.c @@ -42,5 +42,5 @@ ssize_t writev(int fd, const struct iovec *iov, int iovcnt) { return (((ssize_t (*)(int, const struct iovec *, int)) - __libsys_interposing[INTERPOS_writev])(fd, iov, iovcnt)); + *(__libc_interposing_slot(INTERPOS_writev)))(fd, iov, iovcnt)); } From nobody Wed Mar 13 18:36:35 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TvzkC2XT5z5DRN5; Wed, 13 Mar 2024 18:36: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 4TvzkC1TT5z4Sd8; Wed, 13 Mar 2024 18:36:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710354995; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xlPUJimje2t70H860P/bvpkOFhN0v9gbj9Kmo8zZTl8=; b=Fy/93P4NY09vlBcA4NP1ybbioJ9d5drckC5eIQDXN8b8VgMl4MlVPaCJpfddlATSX2Ky26 BfK5W+cFhzYKQ8QcYry5PWve9OZGFp0K55SYHY9/IA5HQP+mvT36blyRRgjeEFmx43NgUT RLY6Veu2ojhaTemXZ0J52wg4hpklDy5rr8HjTGYVcs5Oivl+LZqlo4bF4S5Nvq8l9uK4uk ooF+NmRLoHaf/GqggLdD+COq+xO0lj/pwWSN/cvSCme1kO6oK0s99npAkXakQRmExu5I3R ozwNJhp99Akm6UHIC1f+Znu7cXBeFX0s12FPJzO/vhMCaNaCYyWCVUJr3OCxog== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710354995; a=rsa-sha256; cv=none; b=LVJB48h2OG5kCsQPfqZDueKbIJ+RsSWucbx/mkjEH3tn4yZdDgpICfo1dwiSBxBOfa1J1F ToO8nBKvQoN5Of3Fxu1QHi+75tdCb2vqa2tOROc5+I52R6MXJf8GPd0W+Mn6l3RrjvK8qm wkmfqqxt1NwpVA6BJ3gCgKK157lDQbl4AuG+WJxWJ65cDZdB7AVMWrtAOiN4nVgSy+nIGB 4UjnxyLdXZp2jXENzyZ3vUU2F/fbQlMstNJvGIKFCjLMo/SkCCeiKoffmelZkN58XNx+oo 9yxw9dRNCkJ9AhOfVgAdDjO45NGf2e/tkRIQbux3a+lz8kmJMjlrOj/Zn2TEpw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710354995; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xlPUJimje2t70H860P/bvpkOFhN0v9gbj9Kmo8zZTl8=; b=jUlW40SinLCKHnDS/+JkwBvwMBmvTcQdX+j4D85aGeqEZuQR70O5puNvvruIS51vNOdWMv syuDkOCJmIoy08mZhJ7oKwycP/ZCf4iGJ0LZFF1lthWzzsEz2IAOL6HDadv2XnMXRzF6Ri sxnYWcy8IjBB/Wn1GLRW3vrIrVKvW46k6TFF0X2NGzYdHYihAv5CDHfCEoItR6fjiD+dnN uZcopYApin4QZIHcDvbuPQrZ8w3e35QVv0wI1NZ+fDGJKOvwwuJBcTeXzpnRwMUybyXMJa mBkhF50/txnkhKoEiKNApl58QKN3kfCrjc7t7nYi0MIz5cv8sCtqYWXI2+SfNA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TvzkC0y4vztYk; Wed, 13 Mar 2024 18:36: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 42DIaZE5002601; Wed, 13 Mar 2024 18:36:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DIaZT4002598; Wed, 13 Mar 2024 18:36:35 GMT (envelope-from git) Date: Wed, 13 Mar 2024 18:36:35 GMT Message-Id: <202403131836.42DIaZT4002598@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: d7847a8d3514 - main - lib{c,sys}: return wrapped syscall APIs to libc List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d7847a8d351436a4654bd2c746bc9c04401160ee Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=d7847a8d351436a4654bd2c746bc9c04401160ee commit d7847a8d351436a4654bd2c746bc9c04401160ee Author: Brooks Davis AuthorDate: 2024-03-13 17:42:01 +0000 Commit: Brooks Davis CommitDate: 2024-03-13 18:36:02 +0000 lib{c,sys}: return wrapped syscall APIs to libc These provide standard APIs, but are implemented using another system call (e.g., pipe implemented in terms of pipe2) or are interposed by the threading library to support cancelation. After discussion with kib (see D44111), I've concluded that it is better to keep most public interfaces in libc with as little as possible in libsys. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D44241 --- lib/libc/Makefile | 3 +- lib/libc/amd64/Symbol.map | 3 ++ lib/libc/arm/Symbol.map | 3 ++ lib/libc/i386/Symbol.map | 3 ++ lib/libc/powerpc/Symbol.map | 2 + lib/libc/powerpc64/Symbol.map | 2 + lib/libc/sys/Makefile.inc | 38 ++++++++++++++++ lib/{libsys => libc/sys}/POSIX2x_Fork.c | 0 lib/libc/sys/Symbol.map | 73 ++++++++++++++++++++++++++++++ lib/{libsys => libc/sys}/accept.c | 0 lib/{libsys => libc/sys}/accept4.c | 0 lib/{libsys => libc/sys}/aio_suspend.c | 0 lib/{libsys => libc/sys}/brk.c | 0 lib/{libsys => libc/sys}/clock_nanosleep.c | 0 lib/{libsys => libc/sys}/close.c | 0 lib/{libsys => libc/sys}/closefrom.c | 0 lib/{libsys => libc/sys}/compat-stub.c | 0 lib/{libsys => libc/sys}/connect.c | 0 lib/{libsys => libc/sys}/creat.c | 0 lib/{libsys => libc/sys}/fcntl.c | 0 lib/{libsys => libc/sys}/fdatasync.c | 0 lib/{libsys => libc/sys}/fork.c | 0 lib/{libsys => libc/sys}/fsync.c | 0 lib/{libsys => libc/sys}/getdents.c | 0 lib/{libsys => libc/sys}/kevent.c | 0 lib/{libsys => libc/sys}/lockf.c | 0 lib/{libsys => libc/sys}/lstat.c | 0 lib/{libsys => libc/sys}/mknod.c | 0 lib/{libsys => libc/sys}/msync.c | 0 lib/{libsys => libc/sys}/nanosleep.c | 0 lib/{libsys => libc/sys}/open.c | 0 lib/{libsys => libc/sys}/openat.c | 0 lib/{libsys => libc/sys}/pdfork.c | 0 lib/{libsys => libc/sys}/pipe.c | 0 lib/{libsys => libc/sys}/poll.c | 0 lib/{libsys => libc/sys}/ppoll.c | 0 lib/{libsys => libc/sys}/pselect.c | 0 lib/{libsys => libc/sys}/read.c | 0 lib/{libsys => libc/sys}/readv.c | 0 lib/{libsys => libc/sys}/recv.c | 0 lib/{libsys => libc/sys}/recvfrom.c | 0 lib/{libsys => libc/sys}/recvmsg.c | 0 lib/{libsys => libc/sys}/select.c | 0 lib/{libsys => libc/sys}/send.c | 0 lib/{libsys => libc/sys}/sendmsg.c | 0 lib/{libsys => libc/sys}/sendto.c | 0 lib/{libsys => libc/sys}/setcontext.c | 0 lib/{libsys => libc/sys}/shm_open.c | 0 lib/{libsys => libc/sys}/sigaction.c | 0 lib/{libsys => libc/sys}/sigprocmask.c | 0 lib/{libsys => libc/sys}/sigsuspend.c | 0 lib/{libsys => libc/sys}/sigtimedwait.c | 0 lib/{libsys => libc/sys}/sigwait.c | 0 lib/{libsys => libc/sys}/sigwaitinfo.c | 0 lib/{libsys => libc/sys}/stat.c | 0 lib/{libsys => libc/sys}/swapcontext.c | 0 lib/{libsys => libc/sys}/vadvise.c | 0 lib/{libsys => libc/sys}/wait.c | 0 lib/{libsys => libc/sys}/wait3.c | 0 lib/{libsys => libc/sys}/wait4.c | 0 lib/{libsys => libc/sys}/wait6.c | 0 lib/{libsys => libc/sys}/waitid.c | 0 lib/{libsys => libc/sys}/waitpid.c | 0 lib/{libsys => libc/sys}/write.c | 0 lib/{libsys => libc/sys}/writev.c | 0 lib/libsys/Makefile.sys | 16 ------- lib/libsys/Symbol.sys.map | 50 -------------------- lib/libsys/amd64/Symbol.sys.map | 8 ---- lib/libsys/arm/Symbol.sys.map | 7 --- lib/libsys/i386/Symbol.sys.map | 3 -- lib/libsys/powerpc/Symbol.sys.map | 4 -- lib/libsys/powerpc64/Symbol.sys.map | 4 -- 72 files changed, 125 insertions(+), 94 deletions(-) diff --git a/lib/libc/Makefile b/lib/libc/Makefile index aa6a737002c4..674986a7e065 100644 --- a/lib/libc/Makefile +++ b/lib/libc/Makefile @@ -122,8 +122,7 @@ NOASM= .include "${LIBC_SRCTOP}/stdlib/Makefile.inc" .include "${LIBC_SRCTOP}/stdtime/Makefile.inc" .include "${LIBC_SRCTOP}/string/Makefile.inc" -SHARED_CFLAGS+= -D'_SYSCALL_BODY(name)=' -.include "${LIBSYS_SRCTOP}/Makefile.sys" +.include "${LIBC_SRCTOP}/sys/Makefile.inc" .include "${LIBC_SRCTOP}/secure/Makefile.inc" .include "${LIBC_SRCTOP}/rpc/Makefile.inc" .include "${LIBC_SRCTOP}/uuid/Makefile.inc" diff --git a/lib/libc/amd64/Symbol.map b/lib/libc/amd64/Symbol.map index 2fc723102f90..36f54de24fbd 100644 --- a/lib/libc/amd64/Symbol.map +++ b/lib/libc/amd64/Symbol.map @@ -6,6 +6,7 @@ FBSD_1.0 { .mcount; __flt_rounds; + brk; fpgetmask; fpgetprec; fpgetround; @@ -13,6 +14,7 @@ FBSD_1.0 { fpsetmask; fpsetprec; fpsetround; + sbrk; }; /* @@ -26,4 +28,5 @@ FBSDprivate_1.0 { __signalcontext; signalcontext; __siglongjmp; + _brk; }; diff --git a/lib/libc/arm/Symbol.map b/lib/libc/arm/Symbol.map index ac5a7184b2a1..d8a62c367514 100644 --- a/lib/libc/arm/Symbol.map +++ b/lib/libc/arm/Symbol.map @@ -6,6 +6,8 @@ FBSD_1.0 { __mcount; alloca; + brk; + sbrk; }; FBSD_1.3 { @@ -23,6 +25,7 @@ FBSD_1.6 { }; FBSDprivate_1.0 { + _brk; __aeabi_read_tp; ___longjmp; __longjmp; diff --git a/lib/libc/i386/Symbol.map b/lib/libc/i386/Symbol.map index 2278db54c583..d7961009417e 100644 --- a/lib/libc/i386/Symbol.map +++ b/lib/libc/i386/Symbol.map @@ -5,8 +5,10 @@ */ FBSD_1.0 { .mcount; + brk; __flt_rounds; ___tls_get_addr; + sbrk; }; FBSDprivate_1.0 { @@ -15,4 +17,5 @@ FBSDprivate_1.0 { __signalcontext; signalcontext; __siglongjmp; + _brk; }; diff --git a/lib/libc/powerpc/Symbol.map b/lib/libc/powerpc/Symbol.map index 0996b79369f3..f836a08ae0d4 100644 --- a/lib/libc/powerpc/Symbol.map +++ b/lib/libc/powerpc/Symbol.map @@ -6,11 +6,13 @@ FBSD_1.0 { _mcount; __flt_rounds; + brk; fpgetmask; fpgetround; fpgetsticky; fpsetmask; fpsetround; + sbrk; }; FBSD_1.3 { diff --git a/lib/libc/powerpc64/Symbol.map b/lib/libc/powerpc64/Symbol.map index edccb69e960b..62f20e7f352c 100644 --- a/lib/libc/powerpc64/Symbol.map +++ b/lib/libc/powerpc64/Symbol.map @@ -6,9 +6,11 @@ FBSD_1.0 { _mcount; __flt_rounds; + brk; fpgetmask; fpgetround; fpgetsticky; fpsetmask; fpsetround; + sbrk; }; diff --git a/lib/libc/sys/Makefile.inc b/lib/libc/sys/Makefile.inc new file mode 100644 index 000000000000..ee761ce5ff55 --- /dev/null +++ b/lib/libc/sys/Makefile.inc @@ -0,0 +1,38 @@ +# libc-specific portion of the system call interface + +.PATH: ${LIBC_SRCTOP}/sys + +# Most of the implementation is shared with libsys: +.include "${LIBSYS_SRCTOP}/Makefile.sys" + +# emit empty assembly stubs for syscalls in dynamic libc +SHARED_CFLAGS+= -D'_SYSCALL_BODY(name)=' + +SYM_MAPS+= ${LIBC_SRCTOP}/sys/Symbol.map + +# Add the interposer wrappers +SRCS+= ${INTERPOSED:S/$/.c/} + +# Pseudo system calls implemented atop other interfaces. +SRCS+= \ + POSIX2x_Fork.c \ + brk.c \ + closefrom.c \ + compat-stub.c \ + creat.c \ + getdents.c \ + lockf.c \ + lstat.c \ + mknod.c \ + pipe.c \ + recv.c \ + recvmmsg.c \ + send.c \ + sendmmsg.c \ + shm_open.c \ + stat.c \ + vadvise.c \ + wait.c \ + wait3.c \ + waitid.c \ + waitpid.c diff --git a/lib/libsys/POSIX2x_Fork.c b/lib/libc/sys/POSIX2x_Fork.c similarity index 100% rename from lib/libsys/POSIX2x_Fork.c rename to lib/libc/sys/POSIX2x_Fork.c diff --git a/lib/libc/sys/Symbol.map b/lib/libc/sys/Symbol.map new file mode 100644 index 000000000000..32b1b0ecee05 --- /dev/null +++ b/lib/libc/sys/Symbol.map @@ -0,0 +1,73 @@ +FBSD_1.0 { + accept; + aio_suspend; + close; + connect; + fcntl; + fork; + fsync; + msync; + nanosleep; + open; + pipe; + poll; + pselect; + ptrace; + read; + readv; + recvfrom; + recvmsg; + select; + sendmsg; + sendto; + shm_open; + sigaction; + sigprocmask; + sigsuspend; + sigtimedwait; + sigwait; + sigwaitinfo; + vadvise; + wait4; + write; + writev; +}; + +FBSD_1.1 { + closefrom; +}; + +FBSD_1.2 { + pdfork; +}; + +FBSD_1.3 { + accept4; + wait6; +}; + +FBSD_1.4 { + ppoll; + numa_setaffinity; + numa_getaffinity; + sendmmsg; + recvmmsg; +}; + +FBSD_1.5 { + clock_nanosleep; + fdatasync; + getdents; + kevent; + lstat; + mknod; + stat; +}; + +FBSD_1.6 { + shm_create_largepage; +}; + +FBSD_1.7 { + _Fork; +}; diff --git a/lib/libsys/accept.c b/lib/libc/sys/accept.c similarity index 100% rename from lib/libsys/accept.c rename to lib/libc/sys/accept.c diff --git a/lib/libsys/accept4.c b/lib/libc/sys/accept4.c similarity index 100% rename from lib/libsys/accept4.c rename to lib/libc/sys/accept4.c diff --git a/lib/libsys/aio_suspend.c b/lib/libc/sys/aio_suspend.c similarity index 100% rename from lib/libsys/aio_suspend.c rename to lib/libc/sys/aio_suspend.c diff --git a/lib/libsys/brk.c b/lib/libc/sys/brk.c similarity index 100% rename from lib/libsys/brk.c rename to lib/libc/sys/brk.c diff --git a/lib/libsys/clock_nanosleep.c b/lib/libc/sys/clock_nanosleep.c similarity index 100% rename from lib/libsys/clock_nanosleep.c rename to lib/libc/sys/clock_nanosleep.c diff --git a/lib/libsys/close.c b/lib/libc/sys/close.c similarity index 100% rename from lib/libsys/close.c rename to lib/libc/sys/close.c diff --git a/lib/libsys/closefrom.c b/lib/libc/sys/closefrom.c similarity index 100% rename from lib/libsys/closefrom.c rename to lib/libc/sys/closefrom.c diff --git a/lib/libsys/compat-stub.c b/lib/libc/sys/compat-stub.c similarity index 100% rename from lib/libsys/compat-stub.c rename to lib/libc/sys/compat-stub.c diff --git a/lib/libsys/connect.c b/lib/libc/sys/connect.c similarity index 100% rename from lib/libsys/connect.c rename to lib/libc/sys/connect.c diff --git a/lib/libsys/creat.c b/lib/libc/sys/creat.c similarity index 100% rename from lib/libsys/creat.c rename to lib/libc/sys/creat.c diff --git a/lib/libsys/fcntl.c b/lib/libc/sys/fcntl.c similarity index 100% rename from lib/libsys/fcntl.c rename to lib/libc/sys/fcntl.c diff --git a/lib/libsys/fdatasync.c b/lib/libc/sys/fdatasync.c similarity index 100% rename from lib/libsys/fdatasync.c rename to lib/libc/sys/fdatasync.c diff --git a/lib/libsys/fork.c b/lib/libc/sys/fork.c similarity index 100% rename from lib/libsys/fork.c rename to lib/libc/sys/fork.c diff --git a/lib/libsys/fsync.c b/lib/libc/sys/fsync.c similarity index 100% rename from lib/libsys/fsync.c rename to lib/libc/sys/fsync.c diff --git a/lib/libsys/getdents.c b/lib/libc/sys/getdents.c similarity index 100% rename from lib/libsys/getdents.c rename to lib/libc/sys/getdents.c diff --git a/lib/libsys/kevent.c b/lib/libc/sys/kevent.c similarity index 100% rename from lib/libsys/kevent.c rename to lib/libc/sys/kevent.c diff --git a/lib/libsys/lockf.c b/lib/libc/sys/lockf.c similarity index 100% rename from lib/libsys/lockf.c rename to lib/libc/sys/lockf.c diff --git a/lib/libsys/lstat.c b/lib/libc/sys/lstat.c similarity index 100% rename from lib/libsys/lstat.c rename to lib/libc/sys/lstat.c diff --git a/lib/libsys/mknod.c b/lib/libc/sys/mknod.c similarity index 100% rename from lib/libsys/mknod.c rename to lib/libc/sys/mknod.c diff --git a/lib/libsys/msync.c b/lib/libc/sys/msync.c similarity index 100% rename from lib/libsys/msync.c rename to lib/libc/sys/msync.c diff --git a/lib/libsys/nanosleep.c b/lib/libc/sys/nanosleep.c similarity index 100% rename from lib/libsys/nanosleep.c rename to lib/libc/sys/nanosleep.c diff --git a/lib/libsys/open.c b/lib/libc/sys/open.c similarity index 100% rename from lib/libsys/open.c rename to lib/libc/sys/open.c diff --git a/lib/libsys/openat.c b/lib/libc/sys/openat.c similarity index 100% rename from lib/libsys/openat.c rename to lib/libc/sys/openat.c diff --git a/lib/libsys/pdfork.c b/lib/libc/sys/pdfork.c similarity index 100% rename from lib/libsys/pdfork.c rename to lib/libc/sys/pdfork.c diff --git a/lib/libsys/pipe.c b/lib/libc/sys/pipe.c similarity index 100% rename from lib/libsys/pipe.c rename to lib/libc/sys/pipe.c diff --git a/lib/libsys/poll.c b/lib/libc/sys/poll.c similarity index 100% rename from lib/libsys/poll.c rename to lib/libc/sys/poll.c diff --git a/lib/libsys/ppoll.c b/lib/libc/sys/ppoll.c similarity index 100% rename from lib/libsys/ppoll.c rename to lib/libc/sys/ppoll.c diff --git a/lib/libsys/pselect.c b/lib/libc/sys/pselect.c similarity index 100% rename from lib/libsys/pselect.c rename to lib/libc/sys/pselect.c diff --git a/lib/libsys/read.c b/lib/libc/sys/read.c similarity index 100% rename from lib/libsys/read.c rename to lib/libc/sys/read.c diff --git a/lib/libsys/readv.c b/lib/libc/sys/readv.c similarity index 100% rename from lib/libsys/readv.c rename to lib/libc/sys/readv.c diff --git a/lib/libsys/recv.c b/lib/libc/sys/recv.c similarity index 100% rename from lib/libsys/recv.c rename to lib/libc/sys/recv.c diff --git a/lib/libsys/recvfrom.c b/lib/libc/sys/recvfrom.c similarity index 100% rename from lib/libsys/recvfrom.c rename to lib/libc/sys/recvfrom.c diff --git a/lib/libsys/recvmsg.c b/lib/libc/sys/recvmsg.c similarity index 100% rename from lib/libsys/recvmsg.c rename to lib/libc/sys/recvmsg.c diff --git a/lib/libsys/select.c b/lib/libc/sys/select.c similarity index 100% rename from lib/libsys/select.c rename to lib/libc/sys/select.c diff --git a/lib/libsys/send.c b/lib/libc/sys/send.c similarity index 100% rename from lib/libsys/send.c rename to lib/libc/sys/send.c diff --git a/lib/libsys/sendmsg.c b/lib/libc/sys/sendmsg.c similarity index 100% rename from lib/libsys/sendmsg.c rename to lib/libc/sys/sendmsg.c diff --git a/lib/libsys/sendto.c b/lib/libc/sys/sendto.c similarity index 100% rename from lib/libsys/sendto.c rename to lib/libc/sys/sendto.c diff --git a/lib/libsys/setcontext.c b/lib/libc/sys/setcontext.c similarity index 100% rename from lib/libsys/setcontext.c rename to lib/libc/sys/setcontext.c diff --git a/lib/libsys/shm_open.c b/lib/libc/sys/shm_open.c similarity index 100% rename from lib/libsys/shm_open.c rename to lib/libc/sys/shm_open.c diff --git a/lib/libsys/sigaction.c b/lib/libc/sys/sigaction.c similarity index 100% rename from lib/libsys/sigaction.c rename to lib/libc/sys/sigaction.c diff --git a/lib/libsys/sigprocmask.c b/lib/libc/sys/sigprocmask.c similarity index 100% rename from lib/libsys/sigprocmask.c rename to lib/libc/sys/sigprocmask.c diff --git a/lib/libsys/sigsuspend.c b/lib/libc/sys/sigsuspend.c similarity index 100% rename from lib/libsys/sigsuspend.c rename to lib/libc/sys/sigsuspend.c diff --git a/lib/libsys/sigtimedwait.c b/lib/libc/sys/sigtimedwait.c similarity index 100% rename from lib/libsys/sigtimedwait.c rename to lib/libc/sys/sigtimedwait.c diff --git a/lib/libsys/sigwait.c b/lib/libc/sys/sigwait.c similarity index 100% rename from lib/libsys/sigwait.c rename to lib/libc/sys/sigwait.c diff --git a/lib/libsys/sigwaitinfo.c b/lib/libc/sys/sigwaitinfo.c similarity index 100% rename from lib/libsys/sigwaitinfo.c rename to lib/libc/sys/sigwaitinfo.c diff --git a/lib/libsys/stat.c b/lib/libc/sys/stat.c similarity index 100% rename from lib/libsys/stat.c rename to lib/libc/sys/stat.c diff --git a/lib/libsys/swapcontext.c b/lib/libc/sys/swapcontext.c similarity index 100% rename from lib/libsys/swapcontext.c rename to lib/libc/sys/swapcontext.c diff --git a/lib/libsys/vadvise.c b/lib/libc/sys/vadvise.c similarity index 100% rename from lib/libsys/vadvise.c rename to lib/libc/sys/vadvise.c diff --git a/lib/libsys/wait.c b/lib/libc/sys/wait.c similarity index 100% rename from lib/libsys/wait.c rename to lib/libc/sys/wait.c diff --git a/lib/libsys/wait3.c b/lib/libc/sys/wait3.c similarity index 100% rename from lib/libsys/wait3.c rename to lib/libc/sys/wait3.c diff --git a/lib/libsys/wait4.c b/lib/libc/sys/wait4.c similarity index 100% rename from lib/libsys/wait4.c rename to lib/libc/sys/wait4.c diff --git a/lib/libsys/wait6.c b/lib/libc/sys/wait6.c similarity index 100% rename from lib/libsys/wait6.c rename to lib/libc/sys/wait6.c diff --git a/lib/libsys/waitid.c b/lib/libc/sys/waitid.c similarity index 100% rename from lib/libsys/waitid.c rename to lib/libc/sys/waitid.c diff --git a/lib/libsys/waitpid.c b/lib/libc/sys/waitpid.c similarity index 100% rename from lib/libsys/waitpid.c rename to lib/libc/sys/waitpid.c diff --git a/lib/libsys/write.c b/lib/libc/sys/write.c similarity index 100% rename from lib/libsys/write.c rename to lib/libc/sys/write.c diff --git a/lib/libsys/writev.c b/lib/libc/sys/writev.c similarity index 100% rename from lib/libsys/writev.c rename to lib/libc/sys/writev.c diff --git a/lib/libsys/Makefile.sys b/lib/libsys/Makefile.sys index e798a94e4ae0..98a9688e58a1 100644 --- a/lib/libsys/Makefile.sys +++ b/lib/libsys/Makefile.sys @@ -40,21 +40,6 @@ SRCS+= \ interposing_table.c \ libsys_sigwait.c -SRCS+= getdents.c lstat.c mknod.c stat.c - -SRCS+= creat.c -SRCS+= lockf.c wait.c wait3.c waitpid.c waitid.c -SRCS+= recv.c recvmmsg.c send.c sendmmsg.c - -SRCS+= brk.c -SRCS+= closefrom.c -SRCS+= pipe.c -SRCS+= shm_open.c -SRCS+= vadvise.c -SRCS+= POSIX2x_Fork.c - -SRCS+= compat-stub.c - .if ${LIB} == "c" # Trapping stubs in dynamic libc to be filtered by libsys. SOBJS+= libc_stubs.pico @@ -113,7 +98,6 @@ INTERPOSED = \ write \ writev -SRCS+= ${INTERPOSED:S/$/.c/} PSEUDO+= ${INTERPOSED} # Add machine dependent asm sources: diff --git a/lib/libsys/Symbol.sys.map b/lib/libsys/Symbol.sys.map index fa27dc95aea4..8d68d23686a8 100644 --- a/lib/libsys/Symbol.sys.map +++ b/lib/libsys/Symbol.sys.map @@ -33,7 +33,6 @@ FBSD_1.0 { _exit; _umtx_op; abort2; - accept; access; acct; adjtime; @@ -42,7 +41,6 @@ FBSD_1.0 { aio_fsync; aio_read; aio_return; - aio_suspend; aio_waitcomplete; aio_write; audit; @@ -57,8 +55,6 @@ FBSD_1.0 { clock_getres; clock_gettime; clock_settime; - close; - connect; dup; dup2; eaccess; @@ -81,12 +77,9 @@ FBSD_1.0 { fchflags; fchmod; fchown; - fcntl; fhopen; flock; - fork; fpathconf; - fsync; futimes; getaudit; getaudit_addr; @@ -173,32 +166,21 @@ FBSD_1.0 { msgrcv; msgsnd; msgsys; - msync; munlock; munlockall; munmap; - nanosleep; nfssvc; nmount; ntp_adjtime; ntp_gettime; - open; pathconf; - pipe; - poll; posix_openpt; preadv; profil; - pselect; - ptrace; pwritev; quotactl; - read; readlink; - readv; reboot; - recvfrom; - recvmsg; rename; revoke; rfork; @@ -213,13 +195,10 @@ FBSD_1.0 { sched_setparam; sched_setscheduler; sched_yield; - select; semget; semop; semsys; sendfile; - sendmsg; - sendto; setaudit; setaudit_addr; setauid; @@ -240,23 +219,16 @@ FBSD_1.0 { setsockopt; settimeofday; setuid; - shm_open; shm_unlink; shmat; shmdt; shmget; shmsys; shutdown; - sigaction; sigaltstack; sigpending; - sigprocmask; sigqueue; sigreturn; - sigsuspend; - sigtimedwait; - sigwait; - sigwaitinfo; socket; socketpair; swapon; @@ -285,11 +257,7 @@ FBSD_1.0 { utimes; utrace; uuidgen; - vadvise; vfork; - wait4; - write; - writev; __error; ftruncate; @@ -302,7 +270,6 @@ FBSD_1.0 { FBSD_1.1 { __semctl; - closefrom; cpuset; cpuset_getid; cpuset_setid; @@ -334,7 +301,6 @@ FBSD_1.2 { cap_getmode; getloginclass; getpagesizes; - pdfork; pdgetpid; pdkill; posix_fallocate; @@ -347,7 +313,6 @@ FBSD_1.2 { }; FBSD_1.3 { - accept4; aio_mlock; bindat; cap_fcntls_get; @@ -365,37 +330,24 @@ FBSD_1.3 { pipe2; posix_fadvise; procctl; - wait6; }; FBSD_1.4 { futimens; - ppoll; utimensat; - numa_setaffinity; - numa_getaffinity; - sendmmsg; - recvmmsg; }; FBSD_1.5 { - clock_nanosleep; elf_aux_info; - fdatasync; fhstat; fhstatfs; fstat; fstatat; fstatfs; - getdents; getdirentries; getfsstat; getrandom; - kevent; - lstat; - mknod; mknodat; - stat; statfs; cpuset_getdomain; cpuset_setdomain; @@ -412,12 +364,10 @@ FBSD_1.6 { fhreadlink; getfhat; funlinkat; - shm_create_largepage; shm_rename; }; FBSD_1.7 { - _Fork; fspacectl; kqueuex; membarrier; diff --git a/lib/libsys/amd64/Symbol.sys.map b/lib/libsys/amd64/Symbol.sys.map index 5e0714aef35d..5f463c85f872 100644 --- a/lib/libsys/amd64/Symbol.sys.map +++ b/lib/libsys/amd64/Symbol.sys.map @@ -4,8 +4,6 @@ FBSD_1.0 { amd64_get_gsbase; amd64_set_fsbase; amd64_set_gsbase; - brk; - sbrk; }; FBSD_1.6 { @@ -15,12 +13,6 @@ FBSD_1.6 { x86_pkru_unprotect_range; }; -/* - * - * FreeBSD private ABI - * - */ FBSDprivate_1.0 { - _brk; _vfork; }; diff --git a/lib/libsys/arm/Symbol.sys.map b/lib/libsys/arm/Symbol.sys.map index 179889b60832..a9445ae7ba23 100644 --- a/lib/libsys/arm/Symbol.sys.map +++ b/lib/libsys/arm/Symbol.sys.map @@ -1,10 +1,3 @@ -FBSD_1.0 { - brk; - sbrk; -}; - FBSDprivate_1.0 { _vfork; - _brk; - _sbrk; }; diff --git a/lib/libsys/i386/Symbol.sys.map b/lib/libsys/i386/Symbol.sys.map index 7d8c4ef61c11..303804935435 100644 --- a/lib/libsys/i386/Symbol.sys.map +++ b/lib/libsys/i386/Symbol.sys.map @@ -1,6 +1,5 @@ FBSD_1.0 { rfork_thread; - brk; i386_clr_watch; i386_get_fsbase; i386_get_gsbase; @@ -12,7 +11,6 @@ FBSD_1.0 { i386_set_ldt; i386_set_watch; i386_vm86; - sbrk; }; FBSD_1.6 { @@ -24,5 +22,4 @@ FBSD_1.6 { FBSDprivate_1.0 { _vfork; - _brk; }; diff --git a/lib/libsys/powerpc/Symbol.sys.map b/lib/libsys/powerpc/Symbol.sys.map deleted file mode 100644 index f241c4ed0984..000000000000 --- a/lib/libsys/powerpc/Symbol.sys.map +++ /dev/null @@ -1,4 +0,0 @@ -FBSD_1.0 { - brk; - sbrk; -}; diff --git a/lib/libsys/powerpc64/Symbol.sys.map b/lib/libsys/powerpc64/Symbol.sys.map deleted file mode 100644 index f241c4ed0984..000000000000 --- a/lib/libsys/powerpc64/Symbol.sys.map +++ /dev/null @@ -1,4 +0,0 @@ -FBSD_1.0 { - brk; - sbrk; -}; From nobody Wed Mar 13 19:14:33 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw0Z20cmQz5DV2N; Wed, 13 Mar 2024 19:14: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 4Tw0Z206Vhz4YFx; Wed, 13 Mar 2024 19:14:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710357274; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5T/dGT/51uecTHq97Wlhgil9hHbzWZHzlHeqQaYLYpI=; b=ZFssOGNz6KmtZEYzTvoWUtFh8XgizYoyVjBpg9TkHAOxGB7Ylt+qWlmgKho9H6qcbNFOTi t4uhrxdgaSRXBSkIQBYtw/HSNlMbAAi0QkPqcuPfqpxWkiTosNaBtA0wtDZMIz9Bf0NGfm pPF943ME4RoGhmTI5o4S52GmOKTJmhB7kkyeJP4L5XRRCBhhX4tJDgeYk5FlHK5SM4i7Ea gto3bGsV85voPYwf75c/Dxk8hrkGWqVBeZJQxsWN4X7I2nKc+51qF945X1eJopj8UKR5aF kwHajtouGDypra1Xfq1KAtd3hEbB2FyNyMVkZc7j1iXdNeHdFoRQz3ylC/bAOg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710357274; a=rsa-sha256; cv=none; b=IViOnC/OOim9sU5jzPn4dkIDxEyVORM6FeX3Fq1ToskanLtt8TBlEVTxaZPZzyULGHLO3D uQy1pRMZzw1lue1AiN/gUR5MRyhMn6ZyV0irzxZEBSMqHPDNJy40hJL/xjHc8hz6VoBJ5y NkiwnzpQxIOpt6/IKA9dNdtSWpuL+JJRYYEYl2FEW100MuDtG37D3eapoHV8n7rDloNFAq TRvDsGcI0uWTPukRPgUGZlRvQzft2RLO40zHObT9IerqTUppQ1A6xEvyBIy0nIGKd4gXGy t5HEAqLxe57Txj8AJQFFS4i7us8VF3RIPLbGaCKssq+X+gThBbGN4Sd0uxkLDg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710357274; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5T/dGT/51uecTHq97Wlhgil9hHbzWZHzlHeqQaYLYpI=; b=u39LrGYKqb5NmAmYtgFI4HQre9rp7iWogOJpJyER6Vip4WKoyQMtxJkrLmYltJSLx4CFqC uRmzcPrcc83rRhW5DvoiGkAqyFg0H1mKuAKhLZZiEWxUVPow2/PumSDHBDvFFCNNH2/mRv IOBOR2981sFzbZd/p8f0wF3WjdOFa29bLrHOj4kH4J1kVBXxofMdXcIzkAFamUuCpsLa9J 8rxqOVhrNeYq+7emJlzC36H8IbP/DDm0NQneQD+Ak6mEMYKnSK1imb19kFdM/hUz2ZB+R6 seW/KldApkGvex+7/j0hgQFfCzGDqZfBPjDRXsmzCF0bGzGtPY5crCQ166Gn2w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw0Z16qkczvl7; Wed, 13 Mar 2024 19:14: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 42DJEXhG069828; Wed, 13 Mar 2024 19:14:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DJEXIE069825; Wed, 13 Mar 2024 19:14:33 GMT (envelope-from git) Date: Wed, 13 Mar 2024 19:14:33 GMT Message-Id: <202403131914.42DJEXIE069825@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: e4315bbc85b7 - main - tcp: move struct tcp_ifcap declaration under _KERNEL List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e4315bbc85b7b0cf4c92d27b261f5ccf97bd1ed1 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=e4315bbc85b7b0cf4c92d27b261f5ccf97bd1ed1 commit e4315bbc85b7b0cf4c92d27b261f5ccf97bd1ed1 Author: Gleb Smirnoff AuthorDate: 2024-03-13 19:14:18 +0000 Commit: Gleb Smirnoff CommitDate: 2024-03-13 19:14:18 +0000 tcp: move struct tcp_ifcap declaration under _KERNEL Reviewed by: rscheff, tuexen, kib Differential Revision: https://reviews.freebsd.org/D44340 --- sys/netinet/tcp_var.h | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/sys/netinet/tcp_var.h b/sys/netinet/tcp_var.h index b2603f97e6f9..6f7f7115c2f4 100644 --- a/sys/netinet/tcp_var.h +++ b/sys/netinet/tcp_var.h @@ -895,17 +895,6 @@ struct hc_metrics_lite { /* must stay in sync with hc_metrics */ uint32_t rmx_recvpipe; /* inbound delay-bandwidth product */ }; -/* - * Used by tcp_maxmtu() to communicate interface specific features - * and limits at the time of connection setup. - */ -struct tcp_ifcap { - int ifcap; - u_int tsomax; - u_int tsomaxsegcount; - u_int tsomaxsegsize; -}; - #ifndef _NETINET_IN_PCB_H_ struct in_conninfo; #endif /* _NETINET_IN_PCB_H_ */ @@ -1438,8 +1427,19 @@ extern int32_t tcp_attack_on_turns_on_logging; extern uint32_t tcp_ack_war_time_window; extern uint32_t tcp_ack_war_cnt; +/* + * Used by tcp_maxmtu() to communicate interface specific features + * and limits at the time of connection setup. + */ +struct tcp_ifcap { + int ifcap; + u_int tsomax; + u_int tsomaxsegcount; + u_int tsomaxsegsize; +}; uint32_t tcp_maxmtu(struct in_conninfo *, struct tcp_ifcap *); uint32_t tcp_maxmtu6(struct in_conninfo *, struct tcp_ifcap *); + void tcp6_use_min_mtu(struct tcpcb *); u_int tcp_maxseg(const struct tcpcb *); u_int tcp_fixed_maxseg(const struct tcpcb *); From nobody Wed Mar 13 20:09:51 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw1nr0lmZz5DZjH; Wed, 13 Mar 2024 20: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 4Tw1nq70z0z4dld; Wed, 13 Mar 2024 20:09:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710360592; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IWeb9tloBrvdZdEMWJbSA4u3t0et47OF8WmqVdo9Z7w=; b=jqjbzhZMdrESxeJHxJMKUoHhs2Kxkaaeh6gbT3NQzoKIeFjNaF0FAq8CCtZRegPNCsY1q6 X2U+eyMDmFpQbe1kt9pP39geV2x1x8bAU/yEIt7xaaT8C/BfY5DDN7u6R1av5F9voiOIp9 0rmYE2yMjDdai0fHx7QNnzQTcgpnIrck3Oygtmu0x3JWaV3blbqnAGUTMv1yfIYbb/ru1y o2svM/ZxcTeCcmp+VnRfprcdjm8rh3LQ7bmB/oBBpG6FVQBS/QrTXNSlmDmQvHANJWnGbs Gwiy4Hs+vksnVRTqc8JizS3WrG2ZSj6qjn4Yi813DLxlTln1H5mtudoWhycu3w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710360592; a=rsa-sha256; cv=none; b=thM4NgqMTi+M1i1eYVebXYP2ybBRK2N8ZKhcAa1AiZ9b2O9Qv+YwDgC3MF/iSpanvuEVC0 Y3AVleUvOlQO5D/+aLYrOVEDMZdneV7XmZ2Es9G5OxJ/Z3OYf0HKDtEmfjiYDXlZ/JhgAt er2ykgQiprNXv42wmfgpGeVCSR1p99n7hA0L2KL4N57b36aqfZh2U5pwKAi2Xknmtio5Nq +DFwtI2ecnPmmwPq9ujOKCsucmV07WBFaoYhHGy2RjY6fWfUWJRpF/9XR5+BqUEYqkrQ01 RW11l092t7eXGcbWnSq25njJSPBpXrF6VuGNj/JOn9N6Vda2NYbhi2qvOBl/Ig== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710360592; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IWeb9tloBrvdZdEMWJbSA4u3t0et47OF8WmqVdo9Z7w=; b=QW3HVln3sxfK5VIJw+v1d0Zfsh5sewXIHKI+2GirhS5kZVNqFcPs+69MV++kj2UxF85TgY t9hlrZ+TXoEehOWXzG0MIS5VmIa9cpIpomBgi6cnNy+rd0+ON9hTe+xObt+kHCEdrILdta qUrOE5/j3IlJogviIxmZ2P+wPB+purpLVbKSPqXiU70BCTkY5IILZ6zLlh93ND6Qx+ELIk 9cKexIFwc3vQSggs0INpCiYQhOaHix5UHXiQgn9eOc+5kEF8RPTXkydd5vYKtwG1VIvYiQ 4jj6CpWo/EF29WeL0YV5AZLlKYzlbvI2T62A0oGcXsmV02n18BYPQiBPD3tz2Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw1nq6cJdzxTw; Wed, 13 Mar 2024 20:09: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 42DK9pDs055680; Wed, 13 Mar 2024 20:09:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DK9pqF055677; Wed, 13 Mar 2024 20:09:51 GMT (envelope-from git) Date: Wed, 13 Mar 2024 20:09:51 GMT Message-Id: <202403132009.42DK9pqF055677@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: ccf4d5eed25b - main - lib{c,sys}: fix powerpcspe build List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ccf4d5eed25b5edc6807ac2eb5047929f61dfd0a Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=ccf4d5eed25b5edc6807ac2eb5047929f61dfd0a commit ccf4d5eed25b5edc6807ac2eb5047929f61dfd0a Author: Brooks Davis AuthorDate: 2024-03-13 20:07:02 +0000 Commit: Brooks Davis CommitDate: 2024-03-13 20:09:41 +0000 lib{c,sys}: fix powerpcspe build libsys/powerpc/Symbol.sys.map was removed due to all symbols moving to libc. Fixes: d7847a8d3514 lib{c,sys}: return wrapped syscall APIs to libc --- lib/libsys/powerpcspe/Makefile.sys | 2 -- 1 file changed, 2 deletions(-) diff --git a/lib/libsys/powerpcspe/Makefile.sys b/lib/libsys/powerpcspe/Makefile.sys index 3ab87bf3ded8..35909d68cd5e 100644 --- a/lib/libsys/powerpcspe/Makefile.sys +++ b/lib/libsys/powerpcspe/Makefile.sys @@ -1,7 +1,5 @@ CFLAGS+= -I${LIBC_SRCTOP}/powerpc CFLAGS+= -I${LIBSYS_SRCTOP}/powerpc -SYM_MAPS+= ${LIBSYS_SRCTOP}/powerpc/Symbol.sys.map - .PATH: ${LIBSYS_SRCTOP}/powerpc .include "${LIBSYS_SRCTOP}/powerpc/Makefile.sys" From nobody Wed Mar 13 20:19:31 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw2100pztz5Db3Q; Wed, 13 Mar 2024 20:19: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 4Tw2100CjHz4frm; Wed, 13 Mar 2024 20:19:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710361172; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kIE9eGavlKWTxn1A5nYDmUwh0n2XuEbgDKiyBzNIvfM=; b=nKE7/ZaOn36PNqnDSRP0bg0s++s8CLfpQsIkd3HgBmXlDvkWfUEVvA8zFWU7VEqKy2YzCm VrDa8DE/pi3c3nSy6sWQ4BS4kvcHNy5OPil/uMln++PFLSGtLf4DB2U85Uz4ZAFHnIzQ6T EpgaH6Zu0v+AWZsGQ7JjAQYnG1JKZ86UKiPSxbZQY5vcXNP7zPk6cHg3ugIoZaApQFdRZA fLEGRzIGk5agRIF13qpf6RJlnntUukOIpJ9dc13J4aimCfofdibQzRj8xolPYNbqmb7QPA DPnnTAr39C0gGY+a8psU39HpxUh4MPcSgSOEaFUsTEoQKfdvN6pRhD319SPhiQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710361172; a=rsa-sha256; cv=none; b=Cco26+edg85Bu9XuykCbw4okZbYywak/8YThlV2fBHw74EE4KlBxwMv2X5OdfrFmfyqILW ne+gWzON7Y3ih+wusdgrWQ18WEJkxbIgdTsvvVVetZNhpSXvCcWge69Ln2rtkJQqMoC2Qs cZjkrJVNbbYiuopuZ3o6Co5gq0vXBz1axrJlpDtJr9BoPgXL9rqIlBp8j2fzxi+Vc5ywn6 Uqhd1vojWFzoeDqo1bVlsGfiqzzP15R19avUZqZya+BQ67HODb14IYJQeUw5scIa5QvRT+ foy9wCAkrBBDwVJu1JD03/aN9ZCMw6sA/lxW0+glxFaHnIY9p6V4Ei+QqeUxBA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710361172; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kIE9eGavlKWTxn1A5nYDmUwh0n2XuEbgDKiyBzNIvfM=; b=mRTtZJ6MNnISL/1DqK8pCdKU7FPin05xx8aIO7zMxgnhNV/vcSsuNEQFg43t7H0jY+J6pn g3k4dNsL5bLnCErl3w9ve84nyTX14TFEminy4APgH5Fwdn6qYsp3NEuMHoQSQA56jq4K3p ar8suKINuj1hUONPOrWrVENA1sHkvHqTQssyp3dVw/OakZIYDyD8CCqDACSTbLtGoFEiTm 0TThaHMFho/r7ECCKo7CfeqrRsUGyuhdbrlrqsvLGGZmQmuIej8vKqQ3vvG5/evOp9BGfO TlNxuGzKoSyRcI7gWXUYLjYKBIgefMi/7dQLfJvfgECk5iUeJyy7zFyYwUiFTg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw20z6wcJzxT2; Wed, 13 Mar 2024 20:19: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 42DKJVZZ073008; Wed, 13 Mar 2024 20:19:31 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DKJVAr073005; Wed, 13 Mar 2024 20:19:31 GMT (envelope-from git) Date: Wed, 13 Mar 2024 20:19:31 GMT Message-Id: <202403132019.42DKJVAr073005@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: f980f48f1369 - main - Revert "new-bus: Disable assertions for rman mismatches for activate/deactivate" List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f980f48f1369cda3f1f5e84e54e45b738bf0dd0b Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=f980f48f1369cda3f1f5e84e54e45b738bf0dd0b commit f980f48f1369cda3f1f5e84e54e45b738bf0dd0b Author: John Baldwin AuthorDate: 2024-03-13 20:19:10 +0000 Commit: John Baldwin CommitDate: 2024-03-13 20:19:10 +0000 Revert "new-bus: Disable assertions for rman mismatches for activate/deactivate" With recent fixes to the ACPI and pcib drivers to translate mapping requests of child resources into mappings of sub-ranges of parent resources these assertions should now be true. This reverts commit ed88eef140a1c3d57d546f409c216806dd3da809. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D43691 --- sys/kern/subr_bus.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c index c06f3df0c9c9..a485e6dd2641 100644 --- a/sys/kern/subr_bus.c +++ b/sys/kern/subr_bus.c @@ -4322,12 +4322,12 @@ bus_generic_rman_activate_resource(device_t dev, device_t child, int type, int rid, struct resource *r) { struct resource_map map; -#ifdef INVARIANTS_XXX +#ifdef INVARIANTS struct rman *rm; #endif int error; -#ifdef INVARIANTS_XXX +#ifdef INVARIANTS rm = BUS_GET_RMAN(dev, type, rman_get_flags(r)); KASSERT(rman_is_region_manager(r, rm), ("%s: rman %p doesn't match for resource %p", __func__, rm, r)); @@ -4361,12 +4361,12 @@ bus_generic_rman_deactivate_resource(device_t dev, device_t child, int type, int rid, struct resource *r) { struct resource_map map; -#ifdef INVARIANTS_XXX +#ifdef INVARIANTS struct rman *rm; #endif int error; -#ifdef INVARIANTS_XXX +#ifdef INVARIANTS rm = BUS_GET_RMAN(dev, type, rman_get_flags(r)); KASSERT(rman_is_region_manager(r, rm), ("%s: rman %p doesn't match for resource %p", __func__, rm, r)); From nobody Wed Mar 13 20:35:54 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw2Mt4sGfz5DchL; Wed, 13 Mar 2024 20:35: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 4Tw2Mt2f3Xz4hHd; Wed, 13 Mar 2024 20:35:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710362154; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5OAUkMU6wzA6oiEDlMW/uy8rDtc6MMmpwUT7fFS/i3Y=; b=mK1EuQGr5/qQfFrJenTf5M/JaoQoHC6kSoY/a6gTNYxLzqc3iJAoBvi72mqcK8pLJPhPk+ 6pI+jV3EtV8I7Oc4jDo5GwyVTwGDjeAIBxEE/hLsGFC9KaTrxqQKkgc0b1gUjJlnxpBUnV M8uyAnpLe/AZM0etZ1F8cTgeX3Nv7eyIo4TjW8UAxezJ4BuJni/Qg9Ep7tSHrwb0OicteH 9E8m/Pwf88cUU8njqUvc32hU/YkpI8F4kWap8+MKRIXuaTCPnWoCCTUWh3rjjW0r4clH2R pWUr2nGDix7avjXX0Sl+u2KPtCpbd/wtz2xzed+e8ILXY8ewjF5q+4Mzf6sm0g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710362154; a=rsa-sha256; cv=none; b=sD16jHhUU5rOAjV3KntkPye/6LBN9fwAMgZwjIJbC306tlXWxW20eaQMFzrixQBooSgsMf nI74mrVGn+FD3fyUynYIQXNBmWI7v9CACPhRSbc1kbMr0Gk+t28aFUstzKohvC50igkLFh btakKSUjW7EXXHscqsJyqbOrTUE0IWKVILUgy9/+DrqW38JilIAMc9EROKk1ffV2hinDno Il6M21xDz54jOnpD2Fz6/gpygbynue446Abcluq1yeV5Ub8abkeVbU4UptIi8nIV3atBM8 GZwq0iNOFoUGrVCFcv6J8j2E98IZ8DQNzL/SULvPkcIALKbxcbwA6FWBbyZ8gw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710362154; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5OAUkMU6wzA6oiEDlMW/uy8rDtc6MMmpwUT7fFS/i3Y=; b=rNrOQusydLT0wHrbiA0wB104X+6RQHFqwpTqGc15lHXd36Apa+Vc9IxZ8ptBcZO8wVudCB C4llpDwP7fCN1oP0EsZUdDTdWf2Kd6aO72uChfxPDcTKT9dsDxnkv/sIXVAsVxu+fjjUrn VuQ0BWZjU4d6ozkcHMQM5+O0zkgdHASX3fweH6qL+tKw9F0AtFs+4zcZxsEQZebHh1/YoH o5HczX7LjSP6kzDKoKmwpDj0MJH4jmLSsSwYztVWegKPX+TJhJIKINtf8JSdHkO1OMn5PH 4NMliJQmtcL+ZAoVpuGIiQ9b9zrCPDommHdPB+yqDuwcqUCunlD64hIyvYY3IA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw2Mt2FWvzy5Q; Wed, 13 Mar 2024 20:35: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 42DKZsAL005586; Wed, 13 Mar 2024 20:35:54 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DKZs7Y005583; Wed, 13 Mar 2024 20:35:54 GMT (envelope-from git) Date: Wed, 13 Mar 2024 20:35:54 GMT Message-Id: <202403132035.42DKZs7Y005583@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: bf8a3a816d4b - main - libc/softfloat: we don't export _fp[gs]et* symbols List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bf8a3a816d4b3ca79d78c437b60bb4d169e590ad Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=bf8a3a816d4b3ca79d78c437b60bb4d169e590ad commit bf8a3a816d4b3ca79d78c437b60bb4d169e590ad Author: Brooks Davis AuthorDate: 2024-03-13 20:34:46 +0000 Commit: Brooks Davis CommitDate: 2024-03-13 20:35:41 +0000 libc/softfloat: we don't export _fp[gs]et* symbols Remove attempts to use NetBSD __weak_alias macros to export _-prefixed versions of various fp[sg]et* symbols under softfloat. __weak_alias isn't defined so we didn't export them and thus the Symbol.map entries were wrong. Reviewed by: jhibbits Differential Revision: https://reviews.freebsd.org/D44327 --- lib/libc/arm/gen/fpgetmask_vfp.c | 4 ---- lib/libc/arm/gen/fpgetsticky_vfp.c | 4 ---- lib/libc/powerpc/Symbol.map | 1 - lib/libc/powerpc/gen/fpgetsticky.c | 4 ---- lib/libc/powerpc64/gen/fpgetsticky.c | 4 ---- lib/libc/powerpcspe/gen/fpgetsticky.c | 4 ---- lib/libc/softfloat/Symbol.map | 6 ------ lib/libc/softfloat/fpgetmask.c | 5 ----- lib/libc/softfloat/fpgetsticky.c | 5 ----- 9 files changed, 37 deletions(-) diff --git a/lib/libc/arm/gen/fpgetmask_vfp.c b/lib/libc/arm/gen/fpgetmask_vfp.c index a4ed8d1afbec..5e73a274dafa 100644 --- a/lib/libc/arm/gen/fpgetmask_vfp.c +++ b/lib/libc/arm/gen/fpgetmask_vfp.c @@ -28,10 +28,6 @@ #include #include -#ifdef __weak_alias -__weak_alias(fpgetmask,_fpgetmask) -#endif - #define FP_X_MASK (FP_X_INV | FP_X_DZ | FP_X_OFL | FP_X_UFL | FP_X_IMP) fp_except_t diff --git a/lib/libc/arm/gen/fpgetsticky_vfp.c b/lib/libc/arm/gen/fpgetsticky_vfp.c index 7d278c3ad849..651610dddf83 100644 --- a/lib/libc/arm/gen/fpgetsticky_vfp.c +++ b/lib/libc/arm/gen/fpgetsticky_vfp.c @@ -28,10 +28,6 @@ #include #include -#ifdef __weak_alias -__weak_alias(fpgetsticky,_fpgetsticky) -#endif - #define FP_X_MASK (FP_X_INV | FP_X_DZ | FP_X_OFL | FP_X_UFL | FP_X_IMP) fp_except diff --git a/lib/libc/powerpc/Symbol.map b/lib/libc/powerpc/Symbol.map index f836a08ae0d4..ccf74c1748e4 100644 --- a/lib/libc/powerpc/Symbol.map +++ b/lib/libc/powerpc/Symbol.map @@ -20,7 +20,6 @@ FBSD_1.3 { }; FBSDprivate_1.0 { - _fpgetsticky; __longjmp; signalcontext; __signalcontext; diff --git a/lib/libc/powerpc/gen/fpgetsticky.c b/lib/libc/powerpc/gen/fpgetsticky.c index d609586360fe..3512c97f8cf9 100644 --- a/lib/libc/powerpc/gen/fpgetsticky.c +++ b/lib/libc/powerpc/gen/fpgetsticky.c @@ -38,10 +38,6 @@ #include #ifndef _SOFT_FLOAT -#ifdef __weak_alias -__weak_alias(fpgetsticky,_fpgetsticky) -#endif - fp_except_t fpgetsticky() { diff --git a/lib/libc/powerpc64/gen/fpgetsticky.c b/lib/libc/powerpc64/gen/fpgetsticky.c index d609586360fe..3512c97f8cf9 100644 --- a/lib/libc/powerpc64/gen/fpgetsticky.c +++ b/lib/libc/powerpc64/gen/fpgetsticky.c @@ -38,10 +38,6 @@ #include #ifndef _SOFT_FLOAT -#ifdef __weak_alias -__weak_alias(fpgetsticky,_fpgetsticky) -#endif - fp_except_t fpgetsticky() { diff --git a/lib/libc/powerpcspe/gen/fpgetsticky.c b/lib/libc/powerpcspe/gen/fpgetsticky.c index 58bdc43cef38..a97c27296cab 100644 --- a/lib/libc/powerpcspe/gen/fpgetsticky.c +++ b/lib/libc/powerpcspe/gen/fpgetsticky.c @@ -37,10 +37,6 @@ #include #ifndef _SOFT_FLOAT -#ifdef __weak_alias -__weak_alias(fpgetsticky,_fpgetsticky) -#endif - fp_except_t fpgetsticky() { diff --git a/lib/libc/softfloat/Symbol.map b/lib/libc/softfloat/Symbol.map index 9c5229a18066..d412eb417765 100644 --- a/lib/libc/softfloat/Symbol.map +++ b/lib/libc/softfloat/Symbol.map @@ -1,15 +1,9 @@ FBSD_1.0 { - _fpgetmask; fpgetmask; - _fpgetround; fpgetround; - _fpgetsticky; fpgetsticky; - _fpsetmask; fpsetmask; - _fpsetround; fpsetround; - _fpsetsticky; fpsetsticky; }; diff --git a/lib/libc/softfloat/fpgetmask.c b/lib/libc/softfloat/fpgetmask.c index c417e163d770..86cf89020668 100644 --- a/lib/libc/softfloat/fpgetmask.c +++ b/lib/libc/softfloat/fpgetmask.c @@ -40,13 +40,8 @@ #include "milieu.h" #include "softfloat.h" -#ifdef __weak_alias -__weak_alias(fpgetmask,_fpgetmask) -#endif - fp_except fpgetmask(void) { - return float_exception_mask; } diff --git a/lib/libc/softfloat/fpgetsticky.c b/lib/libc/softfloat/fpgetsticky.c index 2d31d9149a21..f42c348784e1 100644 --- a/lib/libc/softfloat/fpgetsticky.c +++ b/lib/libc/softfloat/fpgetsticky.c @@ -40,13 +40,8 @@ #include "milieu.h" #include "softfloat.h" -#ifdef __weak_alias -__weak_alias(fpgetsticky,_fpgetsticky) -#endif - fp_except fpgetsticky(void) { - return float_exception_flags; } From nobody Wed Mar 13 21:08:29 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw35T1ZHyz5DgGQ; Wed, 13 Mar 2024 21:08: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 4Tw35T14Knz4k3D; Wed, 13 Mar 2024 21:08:29 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710364109; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9ZdQOPBwyrqhb/VrJycxjKgwhX9XwbqQKknDK+mA5lM=; b=ganBytNqd9b+JVFixfVuEv4YGK863PvJUETn1f8P847kojZFHkaftnhGiidc8sftn1QfkB vaCF5rZI3EGSpvb+Vk+fH0qej2ZLAGB2S0vI7lgHExVOuM5Fka/ZWdWOvOXPH75X6VKa90 9Bu/HrAr8cSC30pNWZhUiCkdZJpapalf23zljNExfUbU/OUZHsbsCU19mgTAmBZC3pHFFs BsOq0zbqvASYkQBDTdXFWUnAUb/c5l7prYU55AJMHgsjBpk3+n61xqJ9ZSnUVU30QiX6lR 7ZR4pEjcZNDbhGt+ZSS3QClHbzQP7XkLz0fDBY+i+F5WzzYp87sfh2tSfRdR/g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710364109; a=rsa-sha256; cv=none; b=KaS4HzXjCKXQyW2cRyjW+o54gGnkn74UY9QA+dEXvGeSRJCvlMQFHmWiT2ppvzaXHEee6S gXfXDx6Vc4BWeuXxcr0o616gFqisC1jWlERpRW7tO99RTLOktPns4JPrMMR5QwC9NXhQAd C9zjpFeSU/rybOjWDqfNu6lkdgjtCRqqowGogSYVYNzR9Qni06jlm9bYAUqxREyeUAVkYF /fevzmrkpiea493flKuO+MAmDY6WcfqDth4ttET0JZM8KeFLwcTKR7WZFsQqgh3ynYDutQ 0D3ksfZl7jjqGh28yNEAFR1hbeA+IWj0DQ63xLFiQFriVYdys8Ejh+ddSSBrIg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710364109; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=9ZdQOPBwyrqhb/VrJycxjKgwhX9XwbqQKknDK+mA5lM=; b=qu83iq9JQ2UeDtdV/cb0Wlx6yf9Nw8kU869/XBRpPDKEqnhI/NrlX51GoLCc+ZTlr+oZtG lF5mMxbbkxMi5aO2RBa74030qqGqN6W8eGV5KHpzBY1f6EIQLuA1ykpPHqZ9asx2SbOJAp siNiofhjrGvpUfisiFwOMVEolFC5jx4yQcgren7Kwv7nvAUndjlZcMvYzLQZJ2+0p/kU4S 0GOAfgJQ/M8weZshx3+Nt3dD1in7KcawlLQXq9jN7ICVyV1POfNcaTOBtW/Z9Un6o2+Rkb jMJ7TZmOUPvOa1kUAH34vRnaKsVfPuOD8BlUvLyF66jib+0KwCZDjxm81+JAUw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw35T0gWwzyGn; Wed, 13 Mar 2024 21:08: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 42DL8Tu6057296; Wed, 13 Mar 2024 21:08:29 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DL8TbO057293; Wed, 13 Mar 2024 21:08:29 GMT (envelope-from git) Date: Wed, 13 Mar 2024 21:08:29 GMT Message-Id: <202403132108.42DL8TbO057293@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Richard Scheffenegger Subject: git: 85df11a1dec6 - main - ktls: deep copy tls_enable struct for in-kernel tcp consumers List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rscheff X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 85df11a1dec6eab9efbce9fd20712402a8e7ac7c Auto-Submitted: auto-generated The branch main has been updated by rscheff: URL: https://cgit.FreeBSD.org/src/commit/?id=85df11a1dec6eab9efbce9fd20712402a8e7ac7c commit 85df11a1dec6eab9efbce9fd20712402a8e7ac7c Author: Richard Scheffenegger AuthorDate: 2024-03-13 11:35:51 +0000 Commit: Richard Scheffenegger CommitDate: 2024-03-13 12:23:13 +0000 ktls: deep copy tls_enable struct for in-kernel tcp consumers Doing a deep copy of the keys early allows users of the tls_enable structure to assume kernel memory. This enables the socket options to be set by kernel threads. Reviewed By: #transport, tuexen, jhb, rrs Sponsored by: NetApp, Inc. X-NetApp-PR: #79 Differential Revision: https://reviews.freebsd.org/D44250 --- sys/kern/uipc_ktls.c | 96 ++++++++++++++++++++++++++++++++++++++++-------- sys/netinet/tcp_usrreq.c | 44 ++++------------------ sys/sys/ktls.h | 17 +++++---- 3 files changed, 97 insertions(+), 60 deletions(-) diff --git a/sys/kern/uipc_ktls.c b/sys/kern/uipc_ktls.c index deba6940bbee..df296090ec97 100644 --- a/sys/kern/uipc_ktls.c +++ b/sys/kern/uipc_ktls.c @@ -297,10 +297,86 @@ SYSCTL_COUNTER_U64(_kern_ipc_tls_toe, OID_AUTO, chacha20, CTLFLAG_RD, static MALLOC_DEFINE(M_KTLS, "ktls", "Kernel TLS"); +static void ktls_reclaim_thread(void *ctx); static void ktls_reset_receive_tag(void *context, int pending); static void ktls_reset_send_tag(void *context, int pending); static void ktls_work_thread(void *ctx); -static void ktls_reclaim_thread(void *ctx); + +int +ktls_copyin_tls_enable(struct sockopt *sopt, struct tls_enable *tls) +{ + struct tls_enable_v0 tls_v0; + int error; + uint8_t *cipher_key = NULL, *iv = NULL, *auth_key = NULL; + + if (sopt->sopt_valsize == sizeof(tls_v0)) { + error = sooptcopyin(sopt, &tls_v0, sizeof(tls_v0), sizeof(tls_v0)); + if (error != 0) + goto done; + memset(tls, 0, sizeof(*tls)); + tls->cipher_key = tls_v0.cipher_key; + tls->iv = tls_v0.iv; + tls->auth_key = tls_v0.auth_key; + tls->cipher_algorithm = tls_v0.cipher_algorithm; + tls->cipher_key_len = tls_v0.cipher_key_len; + tls->iv_len = tls_v0.iv_len; + tls->auth_algorithm = tls_v0.auth_algorithm; + tls->auth_key_len = tls_v0.auth_key_len; + tls->flags = tls_v0.flags; + tls->tls_vmajor = tls_v0.tls_vmajor; + tls->tls_vminor = tls_v0.tls_vminor; + } else + error = sooptcopyin(sopt, tls, sizeof(*tls), sizeof(*tls)); + + if (error != 0) + goto done; + + /* + * Now do a deep copy of the variable-length arrays in the struct, so that + * subsequent consumers of it can reliably assume kernel memory. This + * requires doing our own allocations, which we will free in the + * error paths so that our caller need only worry about outstanding + * allocations existing on successful return. + */ + cipher_key = malloc(tls->cipher_key_len, M_KTLS, M_WAITOK); + iv = malloc(tls->iv_len, M_KTLS, M_WAITOK); + auth_key = malloc(tls->auth_key_len, M_KTLS, M_WAITOK); + if (sopt->sopt_td != NULL) { + error = copyin(tls->cipher_key, cipher_key, tls->cipher_key_len); + if (error != 0) + goto done; + error = copyin(tls->iv, iv, tls->iv_len); + if (error != 0) + goto done; + error = copyin(tls->auth_key, auth_key, tls->auth_key_len); + if (error != 0) + goto done; + } else { + bcopy(tls->cipher_key, cipher_key, tls->cipher_key_len); + bcopy(tls->iv, iv, tls->iv_len); + bcopy(tls->auth_key, auth_key, tls->auth_key_len); + } + tls->cipher_key = cipher_key; + tls->iv = iv; + tls->auth_key = auth_key; + +done: + if (error != 0) { + zfree(cipher_key, M_KTLS); + zfree(iv, M_KTLS); + zfree(auth_key, M_KTLS); + } + + return (error); +} + +void +ktls_cleanup_tls_enable(struct tls_enable *tls) +{ + zfree(__DECONST(void *, tls->cipher_key), M_KTLS); + zfree(__DECONST(void *, tls->iv), M_KTLS); + zfree(__DECONST(void *, tls->auth_key), M_KTLS); +} static u_int ktls_get_cpu(struct socket *so) @@ -702,18 +778,12 @@ ktls_create_session(struct socket *so, struct tls_enable *en, tls->params.auth_key_len = en->auth_key_len; tls->params.auth_key = malloc(en->auth_key_len, M_KTLS, M_WAITOK); - error = copyin(en->auth_key, tls->params.auth_key, - en->auth_key_len); - if (error) - goto out; + bcopy(en->auth_key, tls->params.auth_key, en->auth_key_len); } tls->params.cipher_key_len = en->cipher_key_len; tls->params.cipher_key = malloc(en->cipher_key_len, M_KTLS, M_WAITOK); - error = copyin(en->cipher_key, tls->params.cipher_key, - en->cipher_key_len); - if (error) - goto out; + bcopy(en->cipher_key, tls->params.cipher_key, en->cipher_key_len); /* * This holds the implicit portion of the nonce for AEAD @@ -722,9 +792,7 @@ ktls_create_session(struct socket *so, struct tls_enable *en, */ if (en->iv_len != 0) { tls->params.iv_len = en->iv_len; - error = copyin(en->iv, tls->params.iv, en->iv_len); - if (error) - goto out; + bcopy(en->iv, tls->params.iv, en->iv_len); /* * For TLS 1.2 with GCM, generate an 8-byte nonce as a @@ -740,10 +808,6 @@ ktls_create_session(struct socket *so, struct tls_enable *en, *tlsp = tls; return (0); - -out: - ktls_free(tls); - return (error); } static struct ktls_session * diff --git a/sys/netinet/tcp_usrreq.c b/sys/netinet/tcp_usrreq.c index a73d2a15c1d5..916fe33e8704 100644 --- a/sys/netinet/tcp_usrreq.c +++ b/sys/netinet/tcp_usrreq.c @@ -1914,37 +1914,6 @@ CTASSERT(TCP_CA_NAME_MAX <= TCP_LOG_ID_LEN); CTASSERT(TCP_LOG_REASON_LEN <= TCP_LOG_ID_LEN); #endif -#ifdef KERN_TLS -static int -copyin_tls_enable(struct sockopt *sopt, struct tls_enable *tls) -{ - struct tls_enable_v0 tls_v0; - int error; - - if (sopt->sopt_valsize == sizeof(tls_v0)) { - error = sooptcopyin(sopt, &tls_v0, sizeof(tls_v0), - sizeof(tls_v0)); - if (error) - return (error); - memset(tls, 0, sizeof(*tls)); - tls->cipher_key = tls_v0.cipher_key; - tls->iv = tls_v0.iv; - tls->auth_key = tls_v0.auth_key; - tls->cipher_algorithm = tls_v0.cipher_algorithm; - tls->cipher_key_len = tls_v0.cipher_key_len; - tls->iv_len = tls_v0.iv_len; - tls->auth_algorithm = tls_v0.auth_algorithm; - tls->auth_key_len = tls_v0.auth_key_len; - tls->flags = tls_v0.flags; - tls->tls_vmajor = tls_v0.tls_vmajor; - tls->tls_vminor = tls_v0.tls_vminor; - return (0); - } - - return (sooptcopyin(sopt, tls, sizeof(*tls), sizeof(*tls))); -} -#endif - extern struct cc_algo newreno_cc_algo; static int @@ -2292,15 +2261,16 @@ unlock_and_done: #ifdef KERN_TLS case TCP_TXTLS_ENABLE: INP_WUNLOCK(inp); - error = copyin_tls_enable(sopt, &tls); - if (error) + error = ktls_copyin_tls_enable(sopt, &tls); + if (error != 0) break; error = ktls_enable_tx(so, &tls); + ktls_cleanup_tls_enable(&tls); break; case TCP_TXTLS_MODE: INP_WUNLOCK(inp); error = sooptcopyin(sopt, &ui, sizeof(ui), sizeof(ui)); - if (error) + if (error != 0) return (error); INP_WLOCK_RECHECK(inp); @@ -2309,11 +2279,11 @@ unlock_and_done: break; case TCP_RXTLS_ENABLE: INP_WUNLOCK(inp); - error = sooptcopyin(sopt, &tls, sizeof(tls), - sizeof(tls)); - if (error) + error = ktls_copyin_tls_enable(sopt, &tls); + if (error != 0) break; error = ktls_enable_rx(so, &tls); + ktls_cleanup_tls_enable(&tls); break; #endif case TCP_MAXUNACKTIME: diff --git a/sys/sys/ktls.h b/sys/sys/ktls.h index 693864394ffe..9b3433f4b1fd 100644 --- a/sys/sys/ktls.h +++ b/sys/sys/ktls.h @@ -174,6 +174,7 @@ struct m_snd_tag; struct mbuf; struct sockbuf; struct socket; +struct sockopt; struct ktls_session { struct ktls_ocf_session *ocf_session; @@ -213,27 +214,29 @@ typedef enum { } ktls_mbuf_crypto_st_t; void ktls_check_rx(struct sockbuf *sb); -ktls_mbuf_crypto_st_t ktls_mbuf_crypto_state(struct mbuf *mb, int offset, int len); +void ktls_cleanup_tls_enable(struct tls_enable *tls); +int ktls_copyin_tls_enable(struct sockopt *sopt, struct tls_enable *tls); void ktls_disable_ifnet(void *arg); int ktls_enable_rx(struct socket *so, struct tls_enable *en); int ktls_enable_tx(struct socket *so, struct tls_enable *en); +void ktls_enqueue(struct mbuf *m, struct socket *so, int page_count); +void ktls_enqueue_to_free(struct mbuf *m); void ktls_destroy(struct ktls_session *tls); void ktls_frame(struct mbuf *m, struct ktls_session *tls, int *enqueue_cnt, uint8_t record_type); -bool ktls_permit_empty_frames(struct ktls_session *tls); -void ktls_seq(struct sockbuf *sb, struct mbuf *m); -void ktls_enqueue(struct mbuf *m, struct socket *so, int page_count); -void ktls_enqueue_to_free(struct mbuf *m); int ktls_get_rx_mode(struct socket *so, int *modep); -int ktls_set_tx_mode(struct socket *so, int mode); int ktls_get_tx_mode(struct socket *so, int *modep); int ktls_get_rx_sequence(struct inpcb *inp, uint32_t *tcpseq, uint64_t *tlsseq); void ktls_input_ifp_mismatch(struct sockbuf *sb, struct ifnet *ifp); -int ktls_output_eagain(struct inpcb *inp, struct ktls_session *tls); +ktls_mbuf_crypto_st_t ktls_mbuf_crypto_state(struct mbuf *mb, int offset, int len); #ifdef RATELIMIT int ktls_modify_txrtlmt(struct ktls_session *tls, uint64_t max_pacing_rate); #endif +int ktls_output_eagain(struct inpcb *inp, struct ktls_session *tls); bool ktls_pending_rx_info(struct sockbuf *sb, uint64_t *seqnop, size_t *residp); +bool ktls_permit_empty_frames(struct ktls_session *tls); +void ktls_seq(struct sockbuf *sb, struct mbuf *m); +int ktls_set_tx_mode(struct socket *so, int mode); static inline struct ktls_session * ktls_hold(struct ktls_session *tls) From nobody Wed Mar 13 22:13:33 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw4XY2fqlz5DXVN; Wed, 13 Mar 2024 22:13: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 4Tw4XY1sxvz4qV6; Wed, 13 Mar 2024 22:13:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368013; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=puSl6nrbJVw1SWBFUK0enim06ITsEJxde5lugFvIth4=; b=LIk/6qOHAQ6flqLfRE/newREreEoS07VswOcFFFBMQG/0jXxw7v38aoVHaj0mGov+A8rsN lablBaEYcSfU5tl++i8b2KQDm9Lk7bXJwDuHL8oXvW2dyY0kYMEWQwkXUflEFOXdryTzy3 nFyiY+dgydTFY1NFuYdXOzn7Db98zwADX6IsVfrJkzE5llpLLOMkhOn5Xvt6Ei9ei2n7R6 KcvNLSydOyB/n+L3EckHt69dxP+vwc25JPwzt+GWH1aTM8i4ey7rwIbpQbhvbPPNT1euuy DT6sw5Liw9dwcQxDLODdZ9Zfnh71RujX8jHG70f3Ujjq7kEZ7bg+AJu7FzqyRA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710368013; a=rsa-sha256; cv=none; b=UcEPz9RGCpYe37AbHVaLVEae7rUF8YWBFneJu8I6cUZspPrH+Yr2vihVFQK2TQ43TtBCqd vci6KHMEIipPtf0OzYAzzEVxM8RrzMN0qGGEJ+0tWWpAvQJhjtombO6GpTKuRiLa6oaS9r rqT+V5QnthgLCA1VqPY4gNMx3d/JjX4MYj00T+eksFG0KMLaJm+op8m+JBMmfgq6iV/1Oj OMkrj94peiaRXYjGLNiNaO007ZUSIVYpuR3Nm7D5XgVnO0SJTWA8dTUU90azRJxdnlj4MT 0vmgYWVhkyY1fzPjFeB9li9Ev9KhEDrX1XWLbefc1RuMAdDO2mD/57EE7p+5eQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368013; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=puSl6nrbJVw1SWBFUK0enim06ITsEJxde5lugFvIth4=; b=xm6GUXZzyySuoTJCyBQhG5l+CxeuUrol57XJy6C008B2uTeFvgytLLH7JX8w00PKCdJAO+ VO4uqnP+EUoTwPU5u9ROi1w2KgGWhEkPGXqgxeGeHs+ujSPghZdipaxpb7btlvrOZIb8Jo SUhZ/K7ul55JSOzIfk6NlNcqwc5oiAH7fsD3x2JV85zf2mhUXwCZAeQrlHjGlaJDzHmMtK o8W9VsX7EgTLVH2pigPnpz/WYXUQPKa37FxBXO+U7TQ7tq5OOnsMwV9wpAeZHwrGC2C2Zb OLwB0uUbtaGvCqkC8nlCi7cBpwAqeSKWKCShLjm7B4cotIbNNjd1eK/yhps6QA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw4XY1TJ1z11nJ; Wed, 13 Mar 2024 22:13: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 42DMDXrQ074744; Wed, 13 Mar 2024 22:13:33 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DMDXdj074741; Wed, 13 Mar 2024 22:13:33 GMT (envelope-from git) Date: Wed, 13 Mar 2024 22:13:33 GMT Message-Id: <202403132213.42DMDXdj074741@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: b30a80b65587 - main - rman: Add rman_get/set_type List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b30a80b65587fb9fd4a5f012d606dbd0c6239a46 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=b30a80b65587fb9fd4a5f012d606dbd0c6239a46 commit b30a80b65587fb9fd4a5f012d606dbd0c6239a46 Author: John Baldwin AuthorDate: 2024-03-13 22:05:53 +0000 Commit: John Baldwin CommitDate: 2024-03-13 22:05:53 +0000 rman: Add rman_get/set_type This permits associating a resource type (e.g. SYS_RES_MEMORY) with a struct resource. I considered adding a new field to struct rman to store the type and only providing rman_get_type as an accessor. However, changing 'struct rman' is an ABI breakage. I might revisit this in main, but the current approach is MFC'able. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44122 --- share/man/man9/Makefile | 2 ++ share/man/man9/rman.9 | 18 ++++++++++++++++-- sys/kern/subr_rman.c | 13 +++++++++++++ sys/sys/rman.h | 2 ++ 4 files changed, 33 insertions(+), 2 deletions(-) diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile index c98849b42a7b..d6732a4e15f7 100644 --- a/share/man/man9/Makefile +++ b/share/man/man9/Makefile @@ -1869,6 +1869,7 @@ MLINKS+=rman.9 rman_activate_resource.9 \ rman.9 rman_get_rid.9 \ rman.9 rman_get_size.9 \ rman.9 rman_get_start.9 \ + rman.9 rman_get_type.9 \ rman.9 rman_get_virtual.9 \ rman.9 rman_init.9 \ rman.9 rman_init_from_resource.9 \ @@ -1883,6 +1884,7 @@ MLINKS+=rman.9 rman_activate_resource.9 \ rman.9 rman_set_bustag.9 \ rman.9 rman_set_mapping.9 \ rman.9 rman_set_rid.9 \ + rman.9 rman_set_type.9 \ rman.9 rman_set_virtual.9 MLINKS+=rmlock.9 rm_assert.9 \ rmlock.9 rm_destroy.9 \ diff --git a/share/man/man9/rman.9 b/share/man/man9/rman.9 index 095cd2760b8c..35a2d176233c 100644 --- a/share/man/man9/rman.9 +++ b/share/man/man9/rman.9 @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd May 20, 2016 +.Dd March 13, 2024 .Dt RMAN 9 .Os .Sh NAME @@ -56,7 +56,9 @@ .Nm rman_set_bushandle , .Nm rman_get_bushandle , .Nm rman_set_rid , -.Nm rman_get_rid +.Nm rman_get_rid , +.Nm rman_set_type , +.Nm rman_get_type .Nd resource management functions .Sh SYNOPSIS .In sys/types.h @@ -125,6 +127,10 @@ .Fn rman_set_rid "struct resource *r" "int rid" .Ft int .Fn rman_get_rid "struct resource *r" +.Ft void +.Fn rman_set_type "struct resource *r" "int type" +.Ft int +.Fn rman_get_type "struct resource *r" .Sh DESCRIPTION The .Nm @@ -457,6 +463,14 @@ The function retrieves this RID. .Pp The +.Fn rman_set_type +function associates a resource type with a resource +.Fa r . +The +.Fn rman_get_type +function retrieves this type. +.Pp +The .Fn rman_get_device function returns a pointer to the device which reserved the resource .Fa r . diff --git a/sys/kern/subr_rman.c b/sys/kern/subr_rman.c index 792d03726c74..1393781a66fe 100644 --- a/sys/kern/subr_rman.c +++ b/sys/kern/subr_rman.c @@ -91,6 +91,7 @@ struct resource_i { device_t r_dev; /* device which has allocated this resource */ struct rman *r_rm; /* resource manager from whence this came */ int r_rid; /* optional rid for this resource. */ + int r_type; /* optional type for this resource. */ }; static int rman_debug = 0; @@ -927,6 +928,18 @@ rman_get_rid(struct resource *r) return (r->__r_i->r_rid); } +void +rman_set_type(struct resource *r, int type) +{ + r->__r_i->r_type = type; +} + +int +rman_get_type(struct resource *r) +{ + return (r->__r_i->r_type); +} + void rman_set_device(struct resource *r, device_t dev) { diff --git a/sys/sys/rman.h b/sys/sys/rman.h index 9e8e3b878c5a..b8b2016cc94a 100644 --- a/sys/sys/rman.h +++ b/sys/sys/rman.h @@ -134,6 +134,7 @@ void rman_get_mapping(struct resource *, struct resource_map *); int rman_get_rid(struct resource *); rman_res_t rman_get_size(struct resource *); rman_res_t rman_get_start(struct resource *); +int rman_get_type(struct resource *); void *rman_get_virtual(struct resource *); int rman_deactivate_resource(struct resource *r); int rman_fini(struct rman *rm); @@ -156,6 +157,7 @@ void rman_set_device(struct resource *_r, device_t _dev); void rman_set_irq_cookie(struct resource *_r, void *_c); void rman_set_mapping(struct resource *, struct resource_map *); void rman_set_rid(struct resource *_r, int _rid); +void rman_set_type(struct resource *_r, int _type); void rman_set_virtual(struct resource *_r, void *_v); extern struct rman_head rman_head; From nobody Wed Mar 13 22:13:34 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw4XZ36r4z5DX2n; Wed, 13 Mar 2024 22:13: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 4Tw4XZ2Tvnz4qG5; Wed, 13 Mar 2024 22:13:34 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368014; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qfeHyIcRayAZ0pVIdHFj7H5PIluA1GtTobxuIDfAWOM=; b=B1ihrBd/2Lwj/xZr46HzobjP+6obtjOdSRFpmbx9LB9TD/nh3HJa3SKB52FPBknS5N9TQr 6B3xpxx0fIFcNQl+slETqI9h3mr1QQPPKu/GBIcfqZ7JQQGus++LFUixS7ZXdf/bsiOB1s vWKQ+qI0A9kVUJJhJQcRSERN41nzLXeYOtfm4iMW7uWG6x88a+v/NWJpyEPE2lyCASkXyn IAGbuCGYBe80YdAHlE+h8KjagHbND3ooZ7ihZVogJVWOwbDLbdyI0QbRdRQ4h2FUrYWRtU kBOF/D/mJ2Ce0nM8WT/z5HF08iaJYKYVa5C7EXus/WaVB3Uhn3tTItiuD/qm6w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710368014; a=rsa-sha256; cv=none; b=faO+b/kbhGaJRMfQ9FKlLbqhm7TltAdh927SkhxBDFBu6rpElCEn8gj3RWTMSDU9OVwA2c 89qK8c7dOTKJMnSmwirkrvJKib5Fot87PVNhJV0BL0yNtbX0c3ujQL26B2TCmJNy9YohU8 8e4jz6aGZlzsagyJnk0g6uor14GEhNwDB8NavsWtJcJvfsWHRt+J+g9PnSiBynLofBG9v4 Er+h/wIs6wdv3P8NEhDbnqppv/T8tPL5J5OJ6Qzb0QPxsnHjzKpoRZq4XE1BEBaiKTZa20 ZR1U2xK1vjpW7ScLb1pU1oJlzFNS9pwtu+tft4HfOLdPSOda0IGzb+WUElcpVA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368014; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qfeHyIcRayAZ0pVIdHFj7H5PIluA1GtTobxuIDfAWOM=; b=H0JgyM2R9e6gXRi08V26DtdcTl1dPu3Zr2uR6nh5P9aSA53k3/Df5iK1VQAFGxiT/AXAGN Ik8uo+wL3NDBR5niFx8akKtGEh6sbB1mkFRGILsE+YsSAEb9F1iP4LFnMpxF4yy5tDzSQ1 aD1GU/riYcEkrPjeSDPjNaSs0L65h2s4sMhah7gokJJt9oufdpz4CefDCcDKm/dJ9E4TG6 wFpxngCiIIuNmQHw1JHQcvJOJ3l8J1AFGYBlNx33wge9Q0RfUoGnIZbjW/Ue9tdEkMhbd/ jM8qeZGJd3caXz9az8vTDgnZv2weYao0pMtrMZLa01CQxBvdyVq2JI0RC1anhw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw4XZ25hsz11l4; Wed, 13 Mar 2024 22:13: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 42DMDYCd074795; Wed, 13 Mar 2024 22:13:34 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DMDYGt074792; Wed, 13 Mar 2024 22:13:34 GMT (envelope-from git) Date: Wed, 13 Mar 2024 22:13:34 GMT Message-Id: <202403132213.42DMDYGt074792@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 1b9bcffff39a - main - sys: Set the type of allocated bus resources List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1b9bcffff39a817b77401d1b975f374781adfaf8 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=1b9bcffff39a817b77401d1b975f374781adfaf8 commit 1b9bcffff39a817b77401d1b975f374781adfaf8 Author: John Baldwin AuthorDate: 2024-03-13 22:05:53 +0000 Commit: John Baldwin CommitDate: 2024-03-13 22:05:53 +0000 sys: Set the type of allocated bus resources Use rman_set_type to set the type of allocated resources everywhere rman_set_rid is currently called. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44123 --- sys/dev/bhnd/bhndb/bhndb.c | 1 + sys/dev/dpaa/fman.c | 1 + sys/dev/pci/pci_iov.c | 1 + sys/dev/pci/pci_pci.c | 2 ++ sys/dev/pci/pci_subr.c | 1 + sys/kern/subr_bus.c | 1 + 6 files changed, 7 insertions(+) diff --git a/sys/dev/bhnd/bhndb/bhndb.c b/sys/dev/bhnd/bhndb/bhndb.c index 4e631f85b3b6..978ad9c3e62b 100644 --- a/sys/dev/bhnd/bhndb/bhndb.c +++ b/sys/dev/bhnd/bhndb/bhndb.c @@ -1005,6 +1005,7 @@ bhndb_alloc_resource(device_t dev, device_t child, int type, return (NULL); rman_set_rid(rv, *rid); + rman_set_type(rv, type); /* Activate */ if (flags & RF_ACTIVE) { diff --git a/sys/dev/dpaa/fman.c b/sys/dev/dpaa/fman.c index 6f3e85636e95..7c8122a03ce7 100644 --- a/sys/dev/dpaa/fman.c +++ b/sys/dev/dpaa/fman.c @@ -191,6 +191,7 @@ fman_alloc_resource(device_t bus, device_t child, int type, int *rid, if (res == NULL) return (NULL); rman_set_rid(res, *rid); + rman_set_type(res, type); if ((flags & RF_ACTIVE) != 0 && bus_activate_resource( child, type, *rid, res) != 0) { rman_release_resource(res); diff --git a/sys/dev/pci/pci_iov.c b/sys/dev/pci/pci_iov.c index ff3ac0e64271..d52e534b9ab5 100644 --- a/sys/dev/pci/pci_iov.c +++ b/sys/dev/pci/pci_iov.c @@ -1049,6 +1049,7 @@ pci_vf_alloc_mem_resource(device_t dev, device_t child, int *rid, } rman_set_rid(res, *rid); + rman_set_type(res, SYS_RES_MEMORY); if (flags & RF_ACTIVE) { error = bus_activate_resource(child, SYS_RES_MEMORY, *rid, res); diff --git a/sys/dev/pci/pci_pci.c b/sys/dev/pci/pci_pci.c index cda1597ac76e..68eab2a6633b 100644 --- a/sys/dev/pci/pci_pci.c +++ b/sys/dev/pci/pci_pci.c @@ -727,6 +727,7 @@ pcib_suballoc_bus(struct pcib_secbus *bus, device_t child, int *rid, rman_get_start(res), rman_get_end(res), *rid, pcib_child_name(child)); rman_set_rid(res, *rid); + rman_set_type(res, PCI_RES_BUS); return (res); } @@ -1930,6 +1931,7 @@ pcib_suballoc_resource(struct pcib_softc *sc, struct pcib_window *w, w->name, rman_get_start(res), rman_get_end(res), *rid, pcib_child_name(child)); rman_set_rid(res, *rid); + rman_set_type(res, type); if (flags & RF_ACTIVE) { if (bus_activate_resource(child, type, *rid, res) != 0) { diff --git a/sys/dev/pci/pci_subr.c b/sys/dev/pci/pci_subr.c index d0f6c9500b17..e2583a75e303 100644 --- a/sys/dev/pci/pci_subr.c +++ b/sys/dev/pci/pci_subr.c @@ -344,6 +344,7 @@ pci_domain_alloc_bus(int domain, device_t dev, int *rid, rman_res_t start, return (NULL); rman_set_rid(res, *rid); + rman_set_type(res, PCI_RES_BUS); return (res); } diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c index a485e6dd2641..ecd5ad44959d 100644 --- a/sys/kern/subr_bus.c +++ b/sys/kern/subr_bus.c @@ -4250,6 +4250,7 @@ bus_generic_rman_alloc_resource(device_t dev, device_t child, int type, if (r == NULL) return (NULL); rman_set_rid(r, *rid); + rman_set_type(r, type); if (flags & RF_ACTIVE) { if (bus_activate_resource(child, type, *rid, r) != 0) { From nobody Wed Mar 13 22:13:35 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw4Xb5Wxhz5DXRx; Wed, 13 Mar 2024 22:13: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 4Tw4Xb3cr9z4qfr; Wed, 13 Mar 2024 22:13:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368015; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ryWXNt0z4fSnsZeW/Xp2o1uiZ2+sHgrwabHe/MPvx0s=; b=fRnkkXLfdzbEAhG+Mj3MOIQqCFubLZ0xfIK2lGtQX2zI62MUgGXVqRtrrSfBoYQjeIQ6f2 +LaXWg3X5Bd2R+dK0snoYvU0EPOZ9dqHfr3hWSto8RBLwyfvF/wYm6Q8F1ZQiCFEawPCeT X1DGRjMM2kMZ8f4Iy6SHsDKg27N3P3lKotXvo1chwawVEumKA/mv/yL944bkg472UuWkFm Y2JXRTJ4Pu7n6v5SHqVriErlQHU5YNJlIJTK/1VBbHTwU7nr0aAER2d7BLkmPROMJQ4ts1 ETxgEPzNZSGZPyYTZ7+jTvy5fUI7rRbw+cQKFBwrdE7TvHslZ3xYDAA06jJiiw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710368015; a=rsa-sha256; cv=none; b=Ibk81bWOWBJZyDPLiSiYd4yf45F1R/XNPQybERfxQN3ltdWauPvrn3sLyceJFJ/JZyrFKB 6O+ovd8t5pIxNNUauEfs7WOLLjvzHubV39f1pEx50zxamAThdowoMPNatIz6Y3LIiBd7hM fRaDmWmBSxPHXDkSRcEkWzw+UdJOzlcJt9d/cwnfkEa0lJXEQvoIvthi+92ONVvDZz9iNY n4LPQm1gPJwzWW/KNq7tVHAHD6P30NajF5xX1LcHe3UV5M3wiMz9coiHOQlPHOffIuGS8z sYwoI35NJTU/nX5AbU6d5SHZfjYNEPOJJEgHYhxsLl0tOTsMF3Kki8szF5X4fA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368015; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ryWXNt0z4fSnsZeW/Xp2o1uiZ2+sHgrwabHe/MPvx0s=; b=wKIU7Z0KY+Ve0eRJ4foUDe1a3bjfg6/a8mLiNB13CP5qrAHZl3jlNgxtSTl9DCvelUdJB3 OBpmD5x9LodE9WNCdCxvYidBeu2ckTVMlauJB1sbpEEFcVcqX2Cb7iIWHBHdlDyxef5vQ9 YPxkOXRIEmym7j4EyXzT9sk7C6DQPAh8HR4Ka9j7ZmCba/lrJXGBVfumqVk/FDYxr6tqp6 Zgty2vQF1DJJLOZc8+VUNp1hmKd7+u2rkA/D8JFIHFylxC1MNRaj9EGqmT8QIODrdJc+0T CgqzI7mmEZmZvgf5JOiJZB3rCpN2SxusG9mRfTOVED9gAtvPn0Z2lcFzRYtXtA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw4Xb3BW7z11hl; Wed, 13 Mar 2024 22:13: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 42DMDZMP074849; Wed, 13 Mar 2024 22:13:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DMDZ6A074846; Wed, 13 Mar 2024 22:13:35 GMT (envelope-from git) Date: Wed, 13 Mar 2024 22:13:35 GMT Message-Id: <202403132213.42DMDZ6A074846@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 9edb8d0aedef - main - new-bus: Introduce a simpler bus API for managing resources List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9edb8d0aedef2f1e13ed1f8134deb3f8291d2fe9 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=9edb8d0aedef2f1e13ed1f8134deb3f8291d2fe9 commit 9edb8d0aedef2f1e13ed1f8134deb3f8291d2fe9 Author: John Baldwin AuthorDate: 2024-03-13 22:05:53 +0000 Commit: John Baldwin CommitDate: 2024-03-13 22:05:53 +0000 new-bus: Introduce a simpler bus API for managing resources Remove the 'type' and 'rid' arguments from the wrapper bus API functions (e.g. bus_release_resource) that accept a struct resource. The "new" versions extract the 'type' and/or 'rid' from the passed in resource object via rman_get_type and rman_get_rid. This commit adds the new API as functions with a _new suffix. Wrapper macros choose between the old and new functions based on the number of arguments provided to the macro. This commit does not change the ABI but can be safely MFCd to older branches so long as older kernels use rman_set_type when allocating resources. Future commits will push the removal of these extraneous arguments through the bus implementation. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44124 --- sys/kern/subr_bus.c | 42 ++++++++++++++++++++++++++++++++++++++++++ sys/sys/bus.h | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 79 insertions(+) diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c index ecd5ad44959d..25cb5fba2108 100644 --- a/sys/kern/subr_bus.c +++ b/sys/kern/subr_bus.c @@ -4545,6 +4545,13 @@ bus_adjust_resource(device_t dev, int type, struct resource *r, rman_res_t start return (BUS_ADJUST_RESOURCE(dev->parent, dev, type, r, start, end)); } +int +bus_adjust_resource_new(device_t dev, struct resource *r, rman_res_t start, + rman_res_t end) +{ + return (bus_adjust_resource(dev, rman_get_type(r), r, start, end)); +} + /** * @brief Wrapper function for BUS_TRANSLATE_RESOURCE(). * @@ -4574,6 +4581,13 @@ bus_activate_resource(device_t dev, int type, int rid, struct resource *r) return (BUS_ACTIVATE_RESOURCE(dev->parent, dev, type, rid, r)); } +int +bus_activate_resource_new(device_t dev, struct resource *r) +{ + return (bus_activate_resource(dev, rman_get_type(r), rman_get_rid(r), + r)); +} + /** * @brief Wrapper function for BUS_DEACTIVATE_RESOURCE(). * @@ -4588,6 +4602,13 @@ bus_deactivate_resource(device_t dev, int type, int rid, struct resource *r) return (BUS_DEACTIVATE_RESOURCE(dev->parent, dev, type, rid, r)); } +int +bus_deactivate_resource_new(device_t dev, struct resource *r) +{ + return (bus_deactivate_resource(dev, rman_get_type(r), rman_get_rid(r), + r)); +} + /** * @brief Wrapper function for BUS_MAP_RESOURCE(). * @@ -4603,6 +4624,13 @@ bus_map_resource(device_t dev, int type, struct resource *r, return (BUS_MAP_RESOURCE(dev->parent, dev, type, r, args, map)); } +int +bus_map_resource_new(device_t dev, struct resource *r, + struct resource_map_request *args, struct resource_map *map) +{ + return (bus_map_resource(dev, rman_get_type(r), r, args, map)); +} + /** * @brief Wrapper function for BUS_UNMAP_RESOURCE(). * @@ -4618,6 +4646,13 @@ bus_unmap_resource(device_t dev, int type, struct resource *r, return (BUS_UNMAP_RESOURCE(dev->parent, dev, type, r, map)); } +int +bus_unmap_resource_new(device_t dev, struct resource *r, + struct resource_map *map) +{ + return (bus_unmap_resource(dev, rman_get_type(r), r, map)); +} + /** * @brief Wrapper function for BUS_RELEASE_RESOURCE(). * @@ -4635,6 +4670,13 @@ bus_release_resource(device_t dev, int type, int rid, struct resource *r) return (rv); } +int +bus_release_resource_new(device_t dev, struct resource *r) +{ + return (bus_release_resource(dev, rman_get_type(r), rman_get_rid(r), + r)); +} + /** * @brief Wrapper function for BUS_SETUP_INTR(). * diff --git a/sys/sys/bus.h b/sys/sys/bus.h index 581e81352be4..6fcd414dc7be 100644 --- a/sys/sys/bus.h +++ b/sys/sys/bus.h @@ -613,6 +613,43 @@ bus_alloc_resource_anywhere(device_t dev, int type, int *rid, return (bus_alloc_resource(dev, type, rid, 0, ~0, count, flags)); } +/* Compat shims for simpler bus resource API. */ +int bus_adjust_resource_new(device_t child, struct resource *r, + rman_res_t start, rman_res_t end); +int bus_activate_resource_new(device_t dev, struct resource *r); +int bus_deactivate_resource_new(device_t dev, struct resource *r); +int bus_map_resource_new(device_t dev, struct resource *r, + struct resource_map_request *args, struct resource_map *map); +int bus_unmap_resource_new(device_t dev, struct resource *r, + struct resource_map *map); +int bus_release_resource_new(device_t dev, struct resource *r); + +#define _BUS_API_MACRO(_1, _2, _3, _4, _5, NAME, ...) NAME + +#define bus_adjust_resource(...) \ + _BUS_API_MACRO(__VA_ARGS__, bus_adjust_resource, \ + bus_adjust_resource_new)(__VA_ARGS__) + +#define bus_activate_resource(...) \ + _BUS_API_MACRO(__VA_ARGS__, INVALID, bus_activate_resource, \ + INVALID, bus_activate_resource_new)(__VA_ARGS__) + +#define bus_deactivate_resource(...) \ + _BUS_API_MACRO(__VA_ARGS__, INVALID, bus_deactivate_resource, \ + INVALID, bus_deactivate_resource_new)(__VA_ARGS__) + +#define bus_map_resource(...) \ + _BUS_API_MACRO(__VA_ARGS__, bus_map_resource, \ + bus_map_resource_new)(__VA_ARGS__) + +#define bus_unmap_resource(...) \ + _BUS_API_MACRO(__VA_ARGS__, INVALID, bus_unmap_resource, \ + bus_unmap_resource_new)(__VA_ARGS__) + +#define bus_release_resource(...) \ + _BUS_API_MACRO(__VA_ARGS__, INVALID, bus_release_resource, \ + INVALID, bus_release_resource_new)(__VA_ARGS__) + /* * Access functions for device. */ From nobody Wed Mar 13 22:13:36 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw4Xc6YXfz5DXPk; Wed, 13 Mar 2024 22:13: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 4Tw4Xc4wLbz4qRR; Wed, 13 Mar 2024 22:13:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368016; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=olDJHTTgHzzKvRi7dwHFkViPgDqDBGbCwZOfWVvV3SQ=; b=upA2lVj0JpDUF+3VFS6ze2eau+1EHKhD5SbpWM2vOVaVz6Wk/A1Ynx6QNiUphekGPTBO8C IwFA43EXF6AJhBUDrI7Jz1X4zIzT1bYqzKMj2XHmOwiCy4iouOLjaxOFiyPgONH+/ALy0O QWaYicQSqV6RuPsX7Lg7GfHB6IDaBoWOUoPKXK5c9Wb9GlpFZigybl/0X7bE/QC+v7vbPd 1S9uZhNX5YOEI4Vi2KrhCUzurIPlqE97OY4ZpNstKfq2ddNKE2FxTe0TT8WKaAxuGVgsDc 58FUuv5wLntjK3N4+gooHY7Z34/1rVcMhBmJl9owP/4A1rM/B/Bdc6jFXGLdaA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710368016; a=rsa-sha256; cv=none; b=E4r2w6K5VMLKL315rMQrA2Ret7LENSvMlPY5gY6jcfYsXE+FWBMQ1rpbvfo1ioEdrLVvne 1JL+YX7HXreMNHuqzwhspiKxFR657y1+VuCyOuUie1GWz12ho8+09KzJD2bFyRcIFhLhJf UdjueZPSldoVzt+AjDXaa/mOIcmzbW4rtc5dfIy3kiy2MH+7m5FQgFrfExgU5s944hePkL J/D0pJe51bHwn0Ne6/bfolTAKi7bNOBgcFpSjb317vEywETzqdlCJZyrq3edr5vxWPJ+W2 gIH9u07E+EQdR9RK26SIwUDxGuDLX1Cd1tYUvbwLd+JeWaelHIq/DeVPRWPRIw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368016; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=olDJHTTgHzzKvRi7dwHFkViPgDqDBGbCwZOfWVvV3SQ=; b=ghEmgACtuRYx4gWGb/VfYIYZ991GkoyXJI5zOBckygxMgpK2Hcdo86kZhX0vpjnm5YdTH9 sI+vqifwsrP3lvGvl/O+wgp9jm8QJvO1ckkmIWkd6NTcqpCf4SB3JMFsNtySQprRq8O0+y zCMrBUgzL14o3XQQxPbB6xLsAoX+cvnU18EXJaom6RirP/euj5gHGKJKzjJrUhMMbH6wxo SQu3a8W69wpdVG+DS3PL6vjQwhJyd+mahsNtv/AsklluCq8wj6LIK1oxdtb4qEqn6rCbkm NgkD77/YOvhZaKgc+B+Zt2YO3CWyF9DfovO6D1csB6Gf1wKh1ke+P13Ug0O75A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw4Xc4Djsz11nK; Wed, 13 Mar 2024 22:13:36 +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 42DMDaOJ074894; Wed, 13 Mar 2024 22:13:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DMDaKw074891; Wed, 13 Mar 2024 22:13:36 GMT (envelope-from git) Date: Wed, 13 Mar 2024 22:13:36 GMT Message-Id: <202403132213.42DMDaKw074891@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 0ecee1602e19 - main - acpi: Use rman_get_type in acpi_is_resource_managed List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0ecee1602e195933a39da65d34440399129e19fb Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=0ecee1602e195933a39da65d34440399129e19fb commit 0ecee1602e195933a39da65d34440399129e19fb Author: John Baldwin AuthorDate: 2024-03-13 22:05:53 +0000 Commit: John Baldwin CommitDate: 2024-03-13 22:05:53 +0000 acpi: Use rman_get_type in acpi_is_resource_managed Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44125 --- sys/dev/acpica/acpi.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/sys/dev/acpica/acpi.c b/sys/dev/acpica/acpi.c index defca923e36c..0ea9a32b1589 100644 --- a/sys/dev/acpica/acpi.c +++ b/sys/dev/acpica/acpi.c @@ -1540,11 +1540,11 @@ acpi_alloc_resource(device_t bus, device_t child, int type, int *rid, } static bool -acpi_is_resource_managed(device_t bus, int type, struct resource *r) +acpi_is_resource_managed(device_t bus, struct resource *r) { struct rman *rm; - rm = acpi_get_rman(bus, type, 0); + rm = acpi_get_rman(bus, rman_get_type(r), rman_get_flags(r)); if (rm == NULL) return (false); return (rman_is_region_manager(r, rm)); @@ -1556,7 +1556,7 @@ acpi_managed_resource(device_t bus, int type, struct resource *r) struct acpi_softc *sc = device_get_softc(bus); struct resource_list_entry *rle; - KASSERT(acpi_is_resource_managed(bus, type, r), + KASSERT(acpi_is_resource_managed(bus, r), ("resource %p is not suballocated", r)); STAILQ_FOREACH(rle, &sc->sysres_rl, link) { @@ -1574,7 +1574,7 @@ acpi_adjust_resource(device_t bus, device_t child, int type, struct resource *r, rman_res_t start, rman_res_t end) { - if (acpi_is_resource_managed(bus, type, r)) + if (acpi_is_resource_managed(bus, r)) return (rman_adjust_resource(r, start, end)); return (bus_generic_adjust_resource(bus, child, type, r, start, end)); } @@ -1587,7 +1587,7 @@ acpi_release_resource(device_t bus, device_t child, int type, int rid, * If this resource belongs to one of our internal managers, * deactivate it and release it to the local pool. */ - if (acpi_is_resource_managed(bus, type, r)) + if (acpi_is_resource_managed(bus, r)) return (bus_generic_rman_release_resource(bus, child, type, rid, r)); return (bus_generic_rl_release_resource(bus, child, type, rid, r)); @@ -1613,7 +1613,7 @@ static int acpi_activate_resource(device_t bus, device_t child, int type, int rid, struct resource *r) { - if (acpi_is_resource_managed(bus, type, r)) + if (acpi_is_resource_managed(bus, r)) return (bus_generic_rman_activate_resource(bus, child, type, rid, r)); return (bus_generic_activate_resource(bus, child, type, rid, r)); @@ -1623,7 +1623,7 @@ static int acpi_deactivate_resource(device_t bus, device_t child, int type, int rid, struct resource *r) { - if (acpi_is_resource_managed(bus, type, r)) + if (acpi_is_resource_managed(bus, r)) return (bus_generic_rman_deactivate_resource(bus, child, type, rid, r)); return (bus_generic_deactivate_resource(bus, child, type, rid, r)); @@ -1638,7 +1638,7 @@ acpi_map_resource(device_t bus, device_t child, int type, struct resource *r, rman_res_t length, start; int error; - if (!acpi_is_resource_managed(bus, type, r)) + if (!acpi_is_resource_managed(bus, r)) return (bus_generic_map_resource(bus, child, type, r, argsp, map)); @@ -1664,7 +1664,7 @@ static int acpi_unmap_resource(device_t bus, device_t child, int type, struct resource *r, struct resource_map *map) { - if (acpi_is_resource_managed(bus, type, r)) { + if (acpi_is_resource_managed(bus, r)) { r = acpi_managed_resource(bus, type, r); if (r == NULL) return (ENOENT); From nobody Wed Mar 13 22:13:37 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw4Xd6z0cz5DXS3; Wed, 13 Mar 2024 22:13:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Tw4Xd5YfZz4qjT; Wed, 13 Mar 2024 22:13:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368017; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jbDf+XpzLAMyv+Vta6VEJFIrS6EnH5QjxGxhG3C3Bok=; b=NElqmw0TsvZ9XBhEqDAuXRvsbeAJq9ShbJ9YotCB1EkOpbZ0Ax2KXW2bSZ0mtEesUI6Cip 5CsForN84i4h0YVauUS+dcAzyCb/QIzlq/YKl7o1pomq5uLiF1k2d94fPBbaD0kQ/s+AZI HP0RumsLMc+5nlonCdzPY0DHvYT5BKb8F+aG5MAExrPZc9iwla88tgmwRETSMe2iJProfE LHOcgiwwErRpSLgchRcY+DEuhyc5nsfL/hD3AcQYp/Uyw8mbm86CEOiG4+SzDCi1IYnaC7 PaI54RXoL27tC7P1tezPg3Ws3aMphz+iY3MTBQMF3IoY5ouZOtloXkmgKTo18g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710368017; a=rsa-sha256; cv=none; b=gc9GPNvFomZPZgsSIdvMuj7TjlOrCumyrhGWGNFchPd1+ndLggAJSUz9pbFVEiQKgNdNFf RvnVDnvxZ7KexC+AG5bRdKmo9VBb07Dk0hJRp/TxCkMFvAbCa3+29xId4ecsKldIyYhS0a GOlUkdDGIK3OBT57PRYwDHeUtl1MMjQ+oBZh0bnqYzMlKi2I7iomYf8if/vXX/IKmeOQCD aTwgYsVv/5kmRabfFxZHmxb2FjFCuzRo/Opy9a1rq72LXaWY0JXYizQLdl9fm7wT9PYe0C pj+lZuu33pqxJHcQ19uV8EryyFpmw30qwq9cLb2BGIfwakHxKURA1ZW/oZBIgA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368017; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jbDf+XpzLAMyv+Vta6VEJFIrS6EnH5QjxGxhG3C3Bok=; b=wnLQ9cLKTtbpYydDfbl4OPtNn2yW2ARxTN5RVTvKBhUybex9Q1ZArNsEt9GlPX2aeyqOsN 74rXiRqbbEu+KjePU09ZPplYfnvFlH2HiC0xwYR1o7/ZHjqeXNrto2xiarO0GD1wq3aaRx jow2sK9gLjpz0gAaanL8ih/LutjP11pyYvGGAJKRFDlXrVywUS5voJHdj9DsiLoTAY81XL JPDZWodFpiM1Kw2WuSz1sPUaVWwNs2iKq8L+0Gv13gH2rPq/3C1lQ1pYgVDYq9AmyP/Lnd HYakCvETq9quFDFpYttRl+/N43KlO7Jco/tZUQXhfK5VTRqJ3Y9om/P+tfa20Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw4Xd5B95z11l5; Wed, 13 Mar 2024 22:13:37 +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 42DMDbOj074942; Wed, 13 Mar 2024 22:13:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DMDbnX074939; Wed, 13 Mar 2024 22:13:37 GMT (envelope-from git) Date: Wed, 13 Mar 2024 22:13:37 GMT Message-Id: <202403132213.42DMDbnX074939@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 3351964c5e5d - main - bhnd: Use rman_get_type in bhndb_find_resource_limits List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3351964c5e5d29ef93b3f26b7fc31a4972aa9af7 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=3351964c5e5d29ef93b3f26b7fc31a4972aa9af7 commit 3351964c5e5d29ef93b3f26b7fc31a4972aa9af7 Author: John Baldwin AuthorDate: 2024-03-13 22:05:53 +0000 Commit: John Baldwin CommitDate: 2024-03-13 22:05:53 +0000 bhnd: Use rman_get_type in bhndb_find_resource_limits Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44126 --- sys/dev/bhnd/bhndb/bhndb.c | 2 +- sys/dev/bhnd/bhndb/bhndb_private.h | 2 +- sys/dev/bhnd/bhndb/bhndb_subr.c | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/sys/dev/bhnd/bhndb/bhndb.c b/sys/dev/bhnd/bhndb/bhndb.c index 978ad9c3e62b..ea5230bf459b 100644 --- a/sys/dev/bhnd/bhndb/bhndb.c +++ b/sys/dev/bhnd/bhndb/bhndb.c @@ -1113,7 +1113,7 @@ bhndb_adjust_resource(device_t dev, device_t child, int type, goto done; /* Otherwise, the range is limited by the bridged resource mapping */ - error = bhndb_find_resource_limits(sc->bus_res, type, r, &mstart, + error = bhndb_find_resource_limits(sc->bus_res, r, &mstart, &mend); if (error) goto done; diff --git a/sys/dev/bhnd/bhndb/bhndb_private.h b/sys/dev/bhnd/bhndb/bhndb_private.h index 851cbe82d3a7..7b56f0b05c84 100644 --- a/sys/dev/bhnd/bhndb/bhndb_private.h +++ b/sys/dev/bhnd/bhndb/bhndb_private.h @@ -73,7 +73,7 @@ int bhndb_add_resource_region( const struct bhndb_regwin *static_regwin); int bhndb_find_resource_limits( - struct bhndb_resources *br, int type, + struct bhndb_resources *br, struct resource *r, rman_res_t *start, rman_res_t *end); diff --git a/sys/dev/bhnd/bhndb/bhndb_subr.c b/sys/dev/bhnd/bhndb/bhndb_subr.c index f5253b3ecaca..df8f39048201 100644 --- a/sys/dev/bhnd/bhndb/bhndb_subr.c +++ b/sys/dev/bhnd/bhndb/bhndb_subr.c @@ -987,7 +987,6 @@ bhndb_find_intr_handler(struct bhndb_resources *br, void *cookiep) * returned. * * @param br The resource state to search. - * @param type The resource type (see SYS_RES_*). * @param r The resource to search for in @p br. * @param[out] start On success, the minimum supported start address. * @param[out] end On success, the maximum supported end address. @@ -996,14 +995,14 @@ bhndb_find_intr_handler(struct bhndb_resources *br, void *cookiep) * @retval ENOENT no active mapping found for @p r of @p type */ int -bhndb_find_resource_limits(struct bhndb_resources *br, int type, +bhndb_find_resource_limits(struct bhndb_resources *br, struct resource *r, rman_res_t *start, rman_res_t *end) { struct bhndb_dw_alloc *dynamic; struct bhndb_region *sregion; struct bhndb_intr_handler *ih; - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IRQ: /* Is this one of ours? */ STAILQ_FOREACH(ih, &br->bus_intrs, ih_link) { @@ -1042,7 +1041,8 @@ bhndb_find_resource_limits(struct bhndb_resources *br, int type, } default: - device_printf(br->dev, "unknown resource type: %d\n", type); + device_printf(br->dev, "unknown resource type: %d\n", + rman_get_type(r)); return (ENOENT); } } From nobody Wed Mar 13 22:13:38 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw4Xg1jKLz5DX2s; Wed, 13 Mar 2024 22:13: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 4Tw4Xf6bftz4qVw; Wed, 13 Mar 2024 22:13:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368018; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mSrjkYM2Dek0hJ8uwmS2JVeZ9xZ3WGkSbkeOm3TkV3A=; b=SYic3FnRMrm8OrWiPpyiEw/eOWeDCWr14XAsga6n8LeMMhUoyWbfeNmijdS9OOFY+UaGZS vebpdjke/nI0Umqj7BpM8L2SDCZZArg703E6+laL3UPiYaZBVbV23kVvySh+8/lZXmzv+E c6i7J+Mk6Wzd01NYnKydYnYWM6TRNEM10GhDR51AMghWSADUJk9A4XjeMbML2rJPQKZZHt 1KhB9EIHQF7rUGxH+pF8Q3nfqm8v8kNfUg0/ahc4iHFXGE/JhsMQqigl/zQgPAgAq4sLSY LUiwQv/bgUG1pgfDOwmOnlfwUgEnpiPeicS+qKfCw+VMSG7GT3e7F/9MoOrA5g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710368018; a=rsa-sha256; cv=none; b=ZblFFw2xEucOOipT5udQ1RpFa85kx6M4z1pifOy36WEKrCMPJfLD9YIKdXyon33E0U6MU5 DfM0krLdRiDmzc1z00nntDbzWLJ55zQGa8fKjjvcVa8BckMCQXZIX7i8+C/jpgAX677NEh UK2XFdU/W392EaM0JSImrN+LOpttgspQFLgv0qc0IjrMvnVXHEHo1pqLWk6dfM/2AQTnKz qwA557z3eSTeLgcNJOUesn/sHW0C4K42WL213ocHWR1CQpbOv3Fe0+JqNttkdcbUVmrc+A fK6Agrxb96yArYCFBFpTENbmv57CuZk4dS7hDBqvJM3J1stQVWKsqsFsVQ0DXg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368018; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=mSrjkYM2Dek0hJ8uwmS2JVeZ9xZ3WGkSbkeOm3TkV3A=; b=OvsS7+ctq+Qf055Q60eHh9g8lgVegwOHZiWlSRVHoMu3q3B0HZqlV2RWYJMsGg50YN7zqH FS9MuMjGIaNcBGHK5ngCQyj19c57oXnU6FpLiGbAyMToZ+Ck2FwRJX4OdMrUHvDumjqdU1 Zm0PSN8sfqwhRwhbQaTzSppdxAEphXPxl01fd71lM2QM8t0/fAp1LWJ5LvMlMdobPGkPUn cme34YUfR5WQzpnOPptaLwRp/0MuIH1dYMHlQRd9DxJyklk2888/+qNeedMLTpDjHtmoyl bsXfPvyB/Z5CO7+EEsGdWCklFd5BGatknblYA8oRbVGtMetuNErI7EDNh2rl5A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw4Xf69Q0z11hm; Wed, 13 Mar 2024 22:13: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 42DMDcTl074987; Wed, 13 Mar 2024 22:13:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DMDcJZ074984; Wed, 13 Mar 2024 22:13:38 GMT (envelope-from git) Date: Wed, 13 Mar 2024 22:13:38 GMT Message-Id: <202403132213.42DMDcJZ074984@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 582b84cd252d - main - pcib: Use rman_get_type in internal functions List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 582b84cd252d56f06556134b1103da3a0425fdbd Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=582b84cd252d56f06556134b1103da3a0425fdbd commit 582b84cd252d56f06556134b1103da3a0425fdbd Author: John Baldwin AuthorDate: 2024-03-13 22:05:54 +0000 Commit: John Baldwin CommitDate: 2024-03-13 22:05:54 +0000 pcib: Use rman_get_type in internal functions Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44127 --- sys/dev/pci/pci_pci.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/sys/dev/pci/pci_pci.c b/sys/dev/pci/pci_pci.c index 68eab2a6633b..da09a917b9bc 100644 --- a/sys/dev/pci/pci_pci.c +++ b/sys/dev/pci/pci_pci.c @@ -164,9 +164,9 @@ SYSCTL_INT(_hw_pci, OID_AUTO, clear_pcib, CTLFLAG_RDTUN, &pci_clear_pcib, 0, * sub-allocated from one of our window resource managers. */ static struct pcib_window * -pcib_get_resource_window(struct pcib_softc *sc, int type, struct resource *r) +pcib_get_resource_window(struct pcib_softc *sc, struct resource *r) { - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: if (rman_is_region_manager(r, &sc->io.rman)) return (&sc->io); @@ -188,14 +188,14 @@ pcib_get_resource_window(struct pcib_softc *sc, int type, struct resource *r) * resource managers? */ static int -pcib_is_resource_managed(struct pcib_softc *sc, int type, struct resource *r) +pcib_is_resource_managed(struct pcib_softc *sc, struct resource *r) { #ifdef PCI_RES_BUS - if (type == PCI_RES_BUS) + if (rman_get_type(r) == PCI_RES_BUS) return (rman_is_region_manager(r, &sc->bus.rman)); #endif - return (pcib_get_resource_window(sc, type, r) != NULL); + return (pcib_get_resource_window(sc, r) != NULL); } static int @@ -2386,7 +2386,7 @@ pcib_adjust_resource(device_t bus, device_t child, int type, struct resource *r, * If the resource wasn't sub-allocated from one of our region * managers then just pass the request up. */ - if (!pcib_is_resource_managed(sc, type, r)) + if (!pcib_is_resource_managed(sc, r)) return (bus_generic_adjust_resource(bus, child, type, r, start, end)); @@ -2411,7 +2411,7 @@ pcib_adjust_resource(device_t bus, device_t child, int type, struct resource *r, * Resource is managed and not a secondary bus number, must * be from one of our windows. */ - w = pcib_get_resource_window(sc, type, r); + w = pcib_get_resource_window(sc, r); KASSERT(w != NULL, ("%s: no window for resource (%#jx-%#jx) type %d", __func__, rman_get_start(r), rman_get_end(r), type)); @@ -2447,7 +2447,7 @@ pcib_release_resource(device_t dev, device_t child, int type, int rid, int error; sc = device_get_softc(dev); - if (pcib_is_resource_managed(sc, type, r)) { + if (pcib_is_resource_managed(sc, r)) { if (rman_get_flags(r) & RF_ACTIVE) { error = bus_deactivate_resource(child, type, rid, r); if (error) @@ -2466,7 +2466,7 @@ pcib_activate_resource(device_t dev, device_t child, int type, int rid, struct resource_map map; int error; - if (!pcib_is_resource_managed(sc, type, r)) + if (!pcib_is_resource_managed(sc, r)) return (bus_generic_activate_resource(dev, child, type, rid, r)); @@ -2495,7 +2495,7 @@ pcib_deactivate_resource(device_t dev, device_t child, int type, int rid, struct resource_map map; int error; - if (!pcib_is_resource_managed(sc, type, r)) + if (!pcib_is_resource_managed(sc, r)) return (bus_generic_deactivate_resource(dev, child, type, rid, r)); @@ -2533,7 +2533,7 @@ pcib_map_resource(device_t dev, device_t child, int type, struct resource *r, rman_res_t length, start; int error; - w = pcib_get_resource_window(sc, type, r); + w = pcib_get_resource_window(sc, r); if (w == NULL) return (bus_generic_map_resource(dev, child, type, r, argsp, map)); @@ -2563,7 +2563,7 @@ pcib_unmap_resource(device_t dev, device_t child, int type, struct resource *r, struct pcib_softc *sc = device_get_softc(dev); struct pcib_window *w; - w = pcib_get_resource_window(sc, type, r); + w = pcib_get_resource_window(sc, r); if (w != NULL) { r = pcib_find_parent_resource(w, r); if (r == NULL) From nobody Wed Mar 13 22:13:41 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw4Xj218Pz5DXVW; Wed, 13 Mar 2024 22:13: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 4Tw4Xj1DyJz4qmj; Wed, 13 Mar 2024 22:13:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368021; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qEOvfBixTZxKATR8XJx7qnkPe6bIpy+hbOM6RMc6g3M=; b=DqEi+uIh5Y78ryuzm1eBLRcMPtZk0DgR9QyjNzJLySnTM5MsCm9jIQpCdEZmJGSCY3IVhf Ip4oMD78P4rlL59+Cq3qjUcioSFejL672Tdvxim0hjhpCiqDrzOYs8rgbNb3o7Z5MuRIlw VGg6TTp9lIX5ke3miJtcJl2TCSy8PG2jBaLzetzNmWrRqfmD/dh8sbdslVteZKU5azFlRv HW2AEmQ2O7+fJASAcCwjG2YNCejHlWeC1mP8aGmLqwWKEMmRnasRdu8BvLgDgGB6PmO6yt PYXgWBck0zZ8Tsl9WzvsiP8nuaCMKxhwQqShJfpGiTJD/ZsIzZB8BPyvfq/Frg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710368021; a=rsa-sha256; cv=none; b=cMyjQKXmTMILHl8Oge64RuEi53GPS8H1TK3PnyxeUC/v+Bi9GZZT4JCjFn0Sf+o32Akwa8 vHxsMTyjj9FkGDB+tGQDejglXzlb76BgTFXepxsSJY0Ht+0PX/3bekqGkIAZXpzYuHEGyP 3SEnSkIMSdniGhI5T3Iu6vJOx5DoTBfdOgPFcoErMlpfMAvYFpFWiKxvMs2UJy0AwR+ZnP rlOzNQuXvXrrFXA07k2sT4I8z0jy9GtM1w0RGla9Jg7w8Qirt6GgWftJwQWAdbKQviGJHx ieE8U4WeyPPNGhTCW2pLQcQz58m6/frs2kKMOkgfIRfpDz/fUTOVkYLHK+vIQw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368021; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qEOvfBixTZxKATR8XJx7qnkPe6bIpy+hbOM6RMc6g3M=; b=cQaaCv+/pAu1rGnKEIuYE/m9uMH/7M3COVIgpvSW9pWdYxdMUc5VyazCLL+/FsWf7yOkUS zvzVVvdqd3b4IrUBxrxtAt+yXymoo0GKHfLAKjWCtqyPtjo1boaerpM1ZzIfUz5QC3Ici3 Vs2CdtZ3xlSIqgKWP2jPib/kH+SNoJeBxDFAuyv8bv7zjsHAcdRYoeWWeMs3g11SARAhsr VbCL5pPwyIQlxkolmvRASfhZdyPE6Ku+IqemwwfmX/pC3i1M9qm41EJqqdjdfTYwwPe6FL WgWE83blDG1Mz3atASmsbNcH4RBJSlLgIB1eZCP25raeh7fVpCtoYsXBV4jm2Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw4Xj0qNPz11hn; Wed, 13 Mar 2024 22:13: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 42DMDfAd075092; Wed, 13 Mar 2024 22:13:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DMDfJc075089; Wed, 13 Mar 2024 22:13:41 GMT (envelope-from git) Date: Wed, 13 Mar 2024 22:13:41 GMT Message-Id: <202403132213.42DMDfJc075089@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: d77f2092ceeb - main - new-bus: Remove the 'type' argument from BUS_MAP/UNMAP_RESOURCE List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d77f2092ceebaba115e6be53410428f6f5f6ae83 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=d77f2092ceebaba115e6be53410428f6f5f6ae83 commit d77f2092ceebaba115e6be53410428f6f5f6ae83 Author: John Baldwin AuthorDate: 2024-03-13 22:05:54 +0000 Commit: John Baldwin CommitDate: 2024-03-13 22:05:54 +0000 new-bus: Remove the 'type' argument from BUS_MAP/UNMAP_RESOURCE The public bus_map/unmap_resource() API still accepts both forms, but the internal kobj methods no longer pass the argument. Implementations which need the type now use rman_get_type() to fetch the value from the allocated resource. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44129 --- share/man/man9/bus_map_resource.9 | 16 +++------------- sys/arm/arm/nexus.c | 8 ++++---- sys/arm/mv/mv_pci.c | 14 +++++++------- sys/arm64/arm64/nexus.c | 11 +++++------ sys/arm64/cavium/thunder_pcie_pem.c | 19 +++++++++---------- sys/dev/acpica/acpi.c | 19 +++++++++---------- sys/dev/fdt/simplebus.c | 30 ++---------------------------- sys/dev/ofw/ofw_pcib.c | 19 +++++++++---------- sys/dev/pci/pci_host_generic.c | 22 +++++++++++----------- sys/dev/pci/pci_pci.c | 15 +++++++-------- sys/dev/vmd/vmd.c | 8 ++++---- sys/kern/bus_if.m | 4 ---- sys/kern/subr_bus.c | 35 ++++++++++++++++------------------- sys/powerpc/mpc85xx/lbc.c | 12 ++++++------ sys/powerpc/powermac/macio.c | 17 ++++++++--------- sys/powerpc/powermac/uninorth.c | 17 ++++++++--------- sys/powerpc/powerpc/nexus.c | 10 +++++----- sys/powerpc/ps3/ps3bus.c | 14 +++++++------- sys/powerpc/psim/iobus.c | 12 ++++++------ sys/riscv/riscv/nexus.c | 8 ++++---- sys/sys/bus.h | 25 +++++++++++++------------ sys/x86/x86/nexus.c | 9 +++++---- 22 files changed, 148 insertions(+), 196 deletions(-) diff --git a/share/man/man9/bus_map_resource.9 b/share/man/man9/bus_map_resource.9 index bf86e7805964..5cccb815b73b 100644 --- a/share/man/man9/bus_map_resource.9 +++ b/share/man/man9/bus_map_resource.9 @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd February 5, 2018 +.Dd March 13, 2024 .Dt BUS_MAP_RESOURCE 9 .Os .Sh NAME @@ -38,12 +38,12 @@ .In machine/resource.h .Ft int .Fo bus_map_resource -.Fa "device_t dev" "int type" "struct resource *r" +.Fa "device_t dev" "struct resource *r" .Fa "struct resource_map_request *args" "struct resource_map *map" .Fc .Ft int .Fo bus_unmap_resource -.Fa "device_t dev" "int type" "struct resource *r" "struct resource_map *map" +.Fa "device_t dev" "struct resource *r" "struct resource_map *map" .Fc .Ft void .Fn resource_init_map_request "struct resource_map_request *args" @@ -58,16 +58,6 @@ The arguments are as follows: .Bl -tag -width indent .It Fa dev The device that owns the resource. -.It Fa type -The type of resource to map. -It is one of: -.Pp -.Bl -tag -width ".Dv SYS_RES_MEMORY" -compact -.It Dv SYS_RES_IOPORT -for I/O ports -.It Dv SYS_RES_MEMORY -for I/O memory -.El .It Fa r A pointer to the .Vt "struct resource" diff --git a/sys/arm/arm/nexus.c b/sys/arm/arm/nexus.c index eb0d1a5b7ded..0cb896ce346e 100644 --- a/sys/arm/arm/nexus.c +++ b/sys/arm/arm/nexus.c @@ -331,7 +331,7 @@ nexus_activate_resource(device_t bus, device_t child, int type, int rid, } static int -nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, +nexus_map_resource(device_t bus, device_t child, struct resource *r, struct resource_map_request *argsp, struct resource_map *map) { struct resource_map_request args; @@ -342,7 +342,7 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, if (!(rman_get_flags(r) & RF_ACTIVE)) return (ENXIO); - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: case SYS_RES_IOPORT: break; @@ -374,11 +374,11 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, } static int -nexus_unmap_resource(device_t bus, device_t child, int type, struct resource *r, +nexus_unmap_resource(device_t bus, device_t child, struct resource *r, struct resource_map *map) { - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: case SYS_RES_IOPORT: #ifdef FDT diff --git a/sys/arm/mv/mv_pci.c b/sys/arm/mv/mv_pci.c index 42ee3180a942..a8a6d1d50002 100644 --- a/sys/arm/mv/mv_pci.c +++ b/sys/arm/mv/mv_pci.c @@ -353,9 +353,9 @@ static int mv_pcib_activate_resource(device_t, device_t, int, int, struct resource *r); static int mv_pcib_deactivate_resource(device_t, device_t, int, int, struct resource *r); -static int mv_pcib_map_resource(device_t, device_t, int, struct resource *, +static int mv_pcib_map_resource(device_t, device_t, struct resource *, struct resource_map_request *, struct resource_map *); -static int mv_pcib_unmap_resource(device_t, device_t, int, struct resource *, +static int mv_pcib_unmap_resource(device_t, device_t, struct resource *, struct resource_map *); static int mv_pcib_read_ivar(device_t, device_t, int, uintptr_t *); static int mv_pcib_write_ivar(device_t, device_t, int, uintptr_t); @@ -1034,7 +1034,7 @@ mv_pcib_deactivate_resource(device_t dev, device_t child, int type, int rid, } static int -mv_pcib_map_resource(device_t dev, device_t child, int type, struct resource *r, +mv_pcib_map_resource(device_t dev, device_t child, struct resource *r, struct resource_map_request *argsp, struct resource_map *map) { struct resource_map_request args; @@ -1046,7 +1046,7 @@ mv_pcib_map_resource(device_t dev, device_t child, int type, struct resource *r, return (ENXIO); /* Mappings are only supported on I/O and memory resources. */ - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: break; @@ -1066,10 +1066,10 @@ mv_pcib_map_resource(device_t dev, device_t child, int type, struct resource *r, } static int -mv_pcib_unmap_resource(device_t dev, device_t child, int type, - struct resource *r, struct resource_map *map) +mv_pcib_unmap_resource(device_t dev, device_t child, struct resource *r, + struct resource_map *map) { - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: return (0); diff --git a/sys/arm64/arm64/nexus.c b/sys/arm64/arm64/nexus.c index d2081d40d26a..ed500ba5ea6d 100644 --- a/sys/arm64/arm64/nexus.c +++ b/sys/arm64/arm64/nexus.c @@ -350,8 +350,7 @@ nexus_activate_resource_flags(device_t bus, device_t child, int type, int rid, &use_np); if (use_np) args.memattr = VM_MEMATTR_DEVICE_NP; - err = nexus_map_resource(bus, child, type, r, &args, - &map); + err = nexus_map_resource(bus, child, r, &args, &map); if (err != 0) { rman_deactivate_resource(r); return (err); @@ -408,7 +407,7 @@ nexus_deactivate_resource(device_t bus, device_t child, int type, int rid, } static int -nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, +nexus_map_resource(device_t bus, device_t child, struct resource *r, struct resource_map_request *argsp, struct resource_map *map) { struct resource_map_request args; @@ -420,7 +419,7 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, return (ENXIO); /* Mappings are only supported on I/O and memory resources. */ - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: break; @@ -445,11 +444,11 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, } static int -nexus_unmap_resource(device_t bus, device_t child, int type, struct resource *r, +nexus_unmap_resource(device_t bus, device_t child, struct resource *r, struct resource_map *map) { - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: case SYS_RES_IOPORT: pmap_unmapdev(map->r_vaddr, map->r_size); diff --git a/sys/arm64/cavium/thunder_pcie_pem.c b/sys/arm64/cavium/thunder_pcie_pem.c index 78fcf333d825..b53f70696ff1 100644 --- a/sys/arm64/cavium/thunder_pcie_pem.c +++ b/sys/arm64/cavium/thunder_pcie_pem.c @@ -136,10 +136,10 @@ static int thunder_pem_get_id(device_t, device_t, enum pci_id_type, static int thunder_pem_attach(device_t); static int thunder_pem_deactivate_resource(device_t, device_t, int, int, struct resource *); -static int thunder_pem_map_resource(device_t, device_t, int, struct resource *, +static int thunder_pem_map_resource(device_t, device_t, struct resource *, struct resource_map_request *, struct resource_map *); -static int thunder_pem_unmap_resource(device_t, device_t, int, - struct resource *, struct resource_map *); +static int thunder_pem_unmap_resource(device_t, device_t, struct resource *, + struct resource_map *); static bus_dma_tag_t thunder_pem_get_dma_tag(device_t, device_t); static int thunder_pem_detach(device_t); static uint64_t thunder_pem_config_reg_read(struct thunder_pem_softc *, int); @@ -302,9 +302,8 @@ thunder_pem_deactivate_resource(device_t dev, device_t child, int type, int rid, } static int -thunder_pem_map_resource(device_t dev, device_t child, int type, - struct resource *r, struct resource_map_request *argsp, - struct resource_map *map) +thunder_pem_map_resource(device_t dev, device_t child, struct resource *r, + struct resource_map_request *argsp, struct resource_map *map) { struct resource_map_request args; struct thunder_pem_softc *sc; @@ -315,7 +314,7 @@ thunder_pem_map_resource(device_t dev, device_t child, int type, if (!(rman_get_flags(r) & RF_ACTIVE)) return (ENXIO); - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: case SYS_RES_IOPORT: break; @@ -340,11 +339,11 @@ thunder_pem_map_resource(device_t dev, device_t child, int type, } static int -thunder_pem_unmap_resource(device_t dev, device_t child, int type, - struct resource *r, struct resource_map *map) +thunder_pem_unmap_resource(device_t dev, device_t child, struct resource *r, + struct resource_map *map) { - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: case SYS_RES_IOPORT: bus_space_unmap(map->r_bustag, map->r_bushandle, map->r_size); diff --git a/sys/dev/acpica/acpi.c b/sys/dev/acpica/acpi.c index 93bce7df70d5..ab34009bf654 100644 --- a/sys/dev/acpica/acpi.c +++ b/sys/dev/acpica/acpi.c @@ -1551,7 +1551,7 @@ acpi_is_resource_managed(device_t bus, struct resource *r) } static struct resource * -acpi_managed_resource(device_t bus, int type, struct resource *r) +acpi_managed_resource(device_t bus, struct resource *r) { struct acpi_softc *sc = device_get_softc(bus); struct resource_list_entry *rle; @@ -1560,7 +1560,7 @@ acpi_managed_resource(device_t bus, int type, struct resource *r) ("resource %p is not suballocated", r)); STAILQ_FOREACH(rle, &sc->sysres_rl, link) { - if (rle->type != type || rle->res == NULL) + if (rle->type != rman_get_type(r) || rle->res == NULL) continue; if (rman_get_start(r) >= rman_get_start(rle->res) && rman_get_end(r) <= rman_get_end(rle->res)) @@ -1630,7 +1630,7 @@ acpi_deactivate_resource(device_t bus, device_t child, int type, int rid, } static int -acpi_map_resource(device_t bus, device_t child, int type, struct resource *r, +acpi_map_resource(device_t bus, device_t child, struct resource *r, struct resource_map_request *argsp, struct resource_map *map) { struct resource_map_request args; @@ -1639,8 +1639,7 @@ acpi_map_resource(device_t bus, device_t child, int type, struct resource *r, int error; if (!acpi_is_resource_managed(bus, r)) - return (bus_generic_map_resource(bus, child, type, r, argsp, - map)); + return (bus_generic_map_resource(bus, child, r, argsp, map)); /* Resources must be active to be mapped. */ if (!(rman_get_flags(r) & RF_ACTIVE)) @@ -1651,25 +1650,25 @@ acpi_map_resource(device_t bus, device_t child, int type, struct resource *r, if (error) return (error); - sysres = acpi_managed_resource(bus, type, r); + sysres = acpi_managed_resource(bus, r); if (sysres == NULL) return (ENOENT); args.offset = start - rman_get_start(sysres); args.length = length; - return (bus_generic_map_resource(bus, child, type, sysres, &args, map)); + return (bus_generic_map_resource(bus, child, sysres, &args, map)); } static int -acpi_unmap_resource(device_t bus, device_t child, int type, struct resource *r, +acpi_unmap_resource(device_t bus, device_t child, struct resource *r, struct resource_map *map) { if (acpi_is_resource_managed(bus, r)) { - r = acpi_managed_resource(bus, type, r); + r = acpi_managed_resource(bus, r); if (r == NULL) return (ENOENT); } - return (bus_generic_unmap_resource(bus, child, type, r, map)); + return (bus_generic_unmap_resource(bus, child, r, map)); } /* Allocate an IO port or memory resource, given its GAS. */ diff --git a/sys/dev/fdt/simplebus.c b/sys/dev/fdt/simplebus.c index 940f93f56274..2bd1a1402797 100644 --- a/sys/dev/fdt/simplebus.c +++ b/sys/dev/fdt/simplebus.c @@ -52,11 +52,6 @@ static int simplebus_activate_resource(device_t bus, device_t child, int type, int rid, struct resource *r); static int simplebus_deactivate_resource(device_t bus, device_t child, int type, int rid, struct resource *r); -static int simplebus_map_resource(device_t bus, device_t child, - int type, struct resource *r, struct resource_map_request *args, - struct resource_map *map); -static int simplebus_unmap_resource(device_t bus, device_t child, - int type, struct resource *r, struct resource_map *map); static void simplebus_probe_nomatch(device_t bus, device_t child); static int simplebus_print_child(device_t bus, device_t child); static device_t simplebus_add_child(device_t dev, u_int order, @@ -98,8 +93,8 @@ static device_method_t simplebus_methods[] = { DEVMETHOD(bus_activate_resource, simplebus_activate_resource), DEVMETHOD(bus_deactivate_resource, simplebus_deactivate_resource), DEVMETHOD(bus_adjust_resource, bus_generic_adjust_resource), - DEVMETHOD(bus_map_resource, simplebus_map_resource), - DEVMETHOD(bus_unmap_resource, simplebus_unmap_resource), + DEVMETHOD(bus_map_resource, bus_generic_map_resource), + DEVMETHOD(bus_unmap_resource, bus_generic_unmap_resource), DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), DEVMETHOD(bus_get_resource, bus_generic_rl_get_resource), DEVMETHOD(bus_delete_resource, bus_generic_rl_delete_resource), @@ -524,27 +519,6 @@ simplebus_deactivate_resource(device_t bus, device_t child, int type, int rid, return (bus_generic_deactivate_resource(bus, child, type, rid, r)); } -static int -simplebus_map_resource(device_t bus, device_t child, int type, - struct resource *r, struct resource_map_request *args, - struct resource_map *map) -{ - - if (type == SYS_RES_IOPORT) - type = SYS_RES_MEMORY; - return (bus_generic_map_resource(bus, child, type, r, args, map)); -} - -static int -simplebus_unmap_resource(device_t bus, device_t child, int type, - struct resource *r, struct resource_map *map) -{ - - if (type == SYS_RES_IOPORT) - type = SYS_RES_MEMORY; - return (bus_generic_unmap_resource(bus, child, type, r, map)); -} - static int simplebus_print_res(struct simplebus_devinfo *di) { diff --git a/sys/dev/ofw/ofw_pcib.c b/sys/dev/ofw/ofw_pcib.c index e95a5f029140..4f373030dc33 100644 --- a/sys/dev/ofw/ofw_pcib.c +++ b/sys/dev/ofw/ofw_pcib.c @@ -75,9 +75,9 @@ static int ofw_pcib_deactivate_resource(device_t, device_t, int, int, struct resource *); static int ofw_pcib_adjust_resource(device_t, device_t, struct resource *, rman_res_t, rman_res_t); -static int ofw_pcib_map_resource(device_t, device_t, int, struct resource *, +static int ofw_pcib_map_resource(device_t, device_t, struct resource *, struct resource_map_request *, struct resource_map *); -static int ofw_pcib_unmap_resource(device_t, device_t, int, struct resource *, +static int ofw_pcib_unmap_resource(device_t, device_t, struct resource *, struct resource_map *); static int ofw_pcib_translate_resource(device_t bus, int type, rman_res_t start, rman_res_t *newstart); @@ -535,9 +535,8 @@ ofw_pcib_activate_resource(device_t bus, device_t child, int type, int rid, } static int -ofw_pcib_map_resource(device_t dev, device_t child, int type, - struct resource *r, struct resource_map_request *argsp, - struct resource_map *map) +ofw_pcib_map_resource(device_t dev, device_t child, struct resource *r, + struct resource_map_request *argsp, struct resource_map *map) { struct resource_map_request args; struct ofw_pci_softc *sc; @@ -549,7 +548,7 @@ ofw_pcib_map_resource(device_t dev, device_t child, int type, if (!(rman_get_flags(r) & RF_ACTIVE)) return (ENXIO); - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: case SYS_RES_IOPORT: break; @@ -583,7 +582,7 @@ ofw_pcib_map_resource(device_t dev, device_t child, int type, space = -1; } - if (type == space) { + if (rman_get_type(r) == space) { start += (rp->host - rp->pci); break; } @@ -608,10 +607,10 @@ ofw_pcib_map_resource(device_t dev, device_t child, int type, } static int -ofw_pcib_unmap_resource(device_t dev, device_t child, int type, - struct resource *r, struct resource_map *map) +ofw_pcib_unmap_resource(device_t dev, device_t child, struct resource *r, + struct resource_map *map) { - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: case SYS_RES_IOPORT: bus_space_unmap(map->r_bustag, map->r_bushandle, map->r_size); diff --git a/sys/dev/pci/pci_host_generic.c b/sys/dev/pci/pci_host_generic.c index f4fccc7b8277..3657be018c99 100644 --- a/sys/dev/pci/pci_host_generic.c +++ b/sys/dev/pci/pci_host_generic.c @@ -639,15 +639,15 @@ generic_pcie_adjust_resource(device_t dev, device_t child, } static int -generic_pcie_map_resource(device_t dev, device_t child, int type, - struct resource *r, struct resource_map_request *argsp, - struct resource_map *map) +generic_pcie_map_resource(device_t dev, device_t child, struct resource *r, + struct resource_map_request *argsp, struct resource_map *map) { struct resource_map_request args; struct pcie_range *range; rman_res_t length, start; - int error; + int error, type; + type = rman_get_type(r); switch (type) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) case PCI_RES_BUS: @@ -657,8 +657,7 @@ generic_pcie_map_resource(device_t dev, device_t child, int type, case SYS_RES_MEMORY: break; default: - return (bus_generic_map_resource(dev, child, type, r, argsp, - map)); + return (bus_generic_map_resource(dev, child, r, argsp, map)); } /* Resources must be active to be mapped. */ @@ -677,16 +676,17 @@ generic_pcie_map_resource(device_t dev, device_t child, int type, args.offset = start - range->pci_base; args.length = length; - return (bus_generic_map_resource(dev, child, type, range->res, &args, - map)); + return (bus_generic_map_resource(dev, child, range->res, &args, map)); } static int -generic_pcie_unmap_resource(device_t dev, device_t child, int type, - struct resource *r, struct resource_map *map) +generic_pcie_unmap_resource(device_t dev, device_t child, struct resource *r, + struct resource_map *map) { struct pcie_range *range; + int type; + type = rman_get_type(r); switch (type) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) case PCI_RES_BUS: @@ -703,7 +703,7 @@ generic_pcie_unmap_resource(device_t dev, device_t child, int type, default: break; } - return (bus_generic_unmap_resource(dev, child, type, r, map)); + return (bus_generic_unmap_resource(dev, child, r, map)); } static bus_dma_tag_t diff --git a/sys/dev/pci/pci_pci.c b/sys/dev/pci/pci_pci.c index b4c02bfeca37..146b67c70801 100644 --- a/sys/dev/pci/pci_pci.c +++ b/sys/dev/pci/pci_pci.c @@ -2476,7 +2476,7 @@ pcib_activate_resource(device_t dev, device_t child, int type, int rid, if ((rman_get_flags(r) & RF_UNMAPPED) == 0 && (type == SYS_RES_MEMORY || type == SYS_RES_IOPORT)) { - error = BUS_MAP_RESOURCE(dev, child, type, r, NULL, &map); + error = BUS_MAP_RESOURCE(dev, child, r, NULL, &map); if (error != 0) { rman_deactivate_resource(r); return (error); @@ -2506,7 +2506,7 @@ pcib_deactivate_resource(device_t dev, device_t child, int type, int rid, if ((rman_get_flags(r) & RF_UNMAPPED) == 0 && (type == SYS_RES_MEMORY || type == SYS_RES_IOPORT)) { rman_get_mapping(r, &map); - BUS_UNMAP_RESOURCE(dev, child, type, r, &map); + BUS_UNMAP_RESOURCE(dev, child, r, &map); } return (0); } @@ -2523,7 +2523,7 @@ pcib_find_parent_resource(struct pcib_window *w, struct resource *r) } static int -pcib_map_resource(device_t dev, device_t child, int type, struct resource *r, +pcib_map_resource(device_t dev, device_t child, struct resource *r, struct resource_map_request *argsp, struct resource_map *map) { struct pcib_softc *sc = device_get_softc(dev); @@ -2535,8 +2535,7 @@ pcib_map_resource(device_t dev, device_t child, int type, struct resource *r, w = pcib_get_resource_window(sc, r); if (w == NULL) - return (bus_generic_map_resource(dev, child, type, r, argsp, - map)); + return (bus_generic_map_resource(dev, child, r, argsp, map)); /* Resources must be active to be mapped. */ if (!(rman_get_flags(r) & RF_ACTIVE)) @@ -2553,11 +2552,11 @@ pcib_map_resource(device_t dev, device_t child, int type, struct resource *r, args.offset = start - rman_get_start(pres); args.length = length; - return (bus_generic_map_resource(dev, child, type, pres, &args, map)); + return (bus_generic_map_resource(dev, child, pres, &args, map)); } static int -pcib_unmap_resource(device_t dev, device_t child, int type, struct resource *r, +pcib_unmap_resource(device_t dev, device_t child, struct resource *r, struct resource_map *map) { struct pcib_softc *sc = device_get_softc(dev); @@ -2569,7 +2568,7 @@ pcib_unmap_resource(device_t dev, device_t child, int type, struct resource *r, if (r == NULL) return (ENOENT); } - return (bus_generic_unmap_resource(dev, child, type, r, map)); + return (bus_generic_unmap_resource(dev, child, r, map)); } #else /* diff --git a/sys/dev/vmd/vmd.c b/sys/dev/vmd/vmd.c index c258ef7a7047..a0a021c7d367 100644 --- a/sys/dev/vmd/vmd.c +++ b/sys/dev/vmd/vmd.c @@ -525,7 +525,7 @@ vmd_find_parent_resource(struct vmd_softc *sc, struct resource *r) } static int -vmd_map_resource(device_t dev, device_t child, int type, struct resource *r, +vmd_map_resource(device_t dev, device_t child, struct resource *r, struct resource_map_request *argsp, struct resource_map *map) { struct vmd_softc *sc = device_get_softc(dev); @@ -549,11 +549,11 @@ vmd_map_resource(device_t dev, device_t child, int type, struct resource *r, args.offset = start - rman_get_start(pres); args.length = length; - return (bus_generic_map_resource(dev, child, type, pres, &args, map)); + return (bus_generic_map_resource(dev, child, pres, &args, map)); } static int -vmd_unmap_resource(device_t dev, device_t child, int type, struct resource *r, +vmd_unmap_resource(device_t dev, device_t child, struct resource *r, struct resource_map *map) { struct vmd_softc *sc = device_get_softc(dev); @@ -561,7 +561,7 @@ vmd_unmap_resource(device_t dev, device_t child, int type, struct resource *r, r = vmd_find_parent_resource(sc, r); if (r == NULL) return (ENOENT); - return (bus_generic_unmap_resource(dev, child, type, r, map)); + return (bus_generic_unmap_resource(dev, child, r, map)); } static int diff --git a/sys/kern/bus_if.m b/sys/kern/bus_if.m index 497b98ca4601..375aeebd1835 100644 --- a/sys/kern/bus_if.m +++ b/sys/kern/bus_if.m @@ -332,7 +332,6 @@ METHOD int activate_resource { * * @param _dev the parent device of @p _child * @param _child the device which allocated the resource - * @param _type the type of resource * @param _r the resource to map * @param _args optional attributes of the mapping * @param _map the mapping @@ -340,7 +339,6 @@ METHOD int activate_resource { METHOD int map_resource { device_t _dev; device_t _child; - int _type; struct resource *_r; struct resource_map_request *_args; struct resource_map *_map; @@ -356,14 +354,12 @@ METHOD int map_resource { * * @param _dev the parent device of @p _child * @param _child the device which allocated the resource - * @param _type the type of resource * @param _r the resource * @param _map the mapping to release */ METHOD int unmap_resource { device_t _dev; device_t _child; - int _type; struct resource *_r; struct resource_map *_map; } DEFAULT bus_generic_unmap_resource; diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c index 33d7b1e4af88..34712ae511e5 100644 --- a/sys/kern/subr_bus.c +++ b/sys/kern/subr_bus.c @@ -3979,14 +3979,12 @@ bus_generic_deactivate_resource(device_t dev, device_t child, int type, * BUS_MAP_RESOURCE() method of the parent of @p dev. */ int -bus_generic_map_resource(device_t dev, device_t child, int type, - struct resource *r, struct resource_map_request *args, - struct resource_map *map) +bus_generic_map_resource(device_t dev, device_t child, struct resource *r, + struct resource_map_request *args, struct resource_map *map) { /* Propagate up the bus hierarchy until someone handles it. */ if (dev->parent) - return (BUS_MAP_RESOURCE(dev->parent, child, type, r, args, - map)); + return (BUS_MAP_RESOURCE(dev->parent, child, r, args, map)); return (EINVAL); } @@ -3997,12 +3995,12 @@ bus_generic_map_resource(device_t dev, device_t child, int type, * BUS_UNMAP_RESOURCE() method of the parent of @p dev. */ int -bus_generic_unmap_resource(device_t dev, device_t child, int type, - struct resource *r, struct resource_map *map) +bus_generic_unmap_resource(device_t dev, device_t child, struct resource *r, + struct resource_map *map) { /* Propagate up the bus hierarchy until someone handles it. */ if (dev->parent) - return (BUS_UNMAP_RESOURCE(dev->parent, child, type, r, map)); + return (BUS_UNMAP_RESOURCE(dev->parent, child, r, map)); return (EINVAL); } @@ -4339,7 +4337,7 @@ bus_generic_rman_activate_resource(device_t dev, device_t child, int type, if ((rman_get_flags(r) & RF_UNMAPPED) == 0 && (type == SYS_RES_MEMORY || type == SYS_RES_IOPORT)) { - error = BUS_MAP_RESOURCE(dev, child, type, r, NULL, &map); + error = BUS_MAP_RESOURCE(dev, child, r, NULL, &map); if (error != 0) { rman_deactivate_resource(r); return (error); @@ -4379,7 +4377,7 @@ bus_generic_rman_deactivate_resource(device_t dev, device_t child, int type, if ((rman_get_flags(r) & RF_UNMAPPED) == 0 && (type == SYS_RES_MEMORY || type == SYS_RES_IOPORT)) { rman_get_mapping(r, &map); - BUS_UNMAP_RESOURCE(dev, child, type, r, &map); + BUS_UNMAP_RESOURCE(dev, child, r, &map); } return (0); } @@ -4615,19 +4613,19 @@ bus_deactivate_resource_new(device_t dev, struct resource *r) * parent of @p dev. */ int -bus_map_resource(device_t dev, int type, struct resource *r, +bus_map_resource(device_t dev, struct resource *r, struct resource_map_request *args, struct resource_map *map) { if (dev->parent == NULL) return (EINVAL); - return (BUS_MAP_RESOURCE(dev->parent, dev, type, r, args, map)); + return (BUS_MAP_RESOURCE(dev->parent, dev, r, args, map)); } int -bus_map_resource_new(device_t dev, struct resource *r, +bus_map_resource_old(device_t dev, int type, struct resource *r, struct resource_map_request *args, struct resource_map *map) { - return (bus_map_resource(dev, rman_get_type(r), r, args, map)); + return (bus_map_resource(dev, r, args, map)); } /** @@ -4637,19 +4635,18 @@ bus_map_resource_new(device_t dev, struct resource *r, * parent of @p dev. */ int -bus_unmap_resource(device_t dev, int type, struct resource *r, - struct resource_map *map) +bus_unmap_resource(device_t dev, struct resource *r, struct resource_map *map) { if (dev->parent == NULL) return (EINVAL); - return (BUS_UNMAP_RESOURCE(dev->parent, dev, type, r, map)); + return (BUS_UNMAP_RESOURCE(dev->parent, dev, r, map)); } int -bus_unmap_resource_new(device_t dev, struct resource *r, +bus_unmap_resource_old(device_t dev, int type, struct resource *r, struct resource_map *map) { - return (bus_unmap_resource(dev, rman_get_type(r), r, map)); + return (bus_unmap_resource(dev, r, map)); } /** diff --git a/sys/powerpc/mpc85xx/lbc.c b/sys/powerpc/mpc85xx/lbc.c index afac89b7597a..20f0baf8c395 100644 --- a/sys/powerpc/mpc85xx/lbc.c +++ b/sys/powerpc/mpc85xx/lbc.c @@ -69,9 +69,9 @@ static MALLOC_DEFINE(M_LBC, "localbus", "localbus devices information"); static int lbc_probe(device_t); static int lbc_attach(device_t); static int lbc_shutdown(device_t); -static int lbc_map_resource(device_t, device_t, int, struct resource *, +static int lbc_map_resource(device_t, device_t, struct resource *, struct resource_map_request *, struct resource_map *); -static int lbc_unmap_resource(device_t, device_t, int, struct resource *, +static int lbc_unmap_resource(device_t, device_t, struct resource *, struct resource_map *map); static int lbc_activate_resource(device_t bus, device_t child, int type, int rid, struct resource *r); @@ -831,7 +831,7 @@ lbc_deactivate_resource(device_t bus, device_t child, int type, int rid, } static int -lbc_map_resource(device_t bus, device_t child, int type, struct resource *r, +lbc_map_resource(device_t bus, device_t child, struct resource *r, struct resource_map_request *argsp, struct resource_map *map) { struct resource_map_request args; @@ -843,7 +843,7 @@ lbc_map_resource(device_t bus, device_t child, int type, struct resource *r, return (ENXIO); /* Mappings are only supported on I/O and memory resources. */ - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: break; @@ -864,12 +864,12 @@ lbc_map_resource(device_t bus, device_t child, int type, struct resource *r, } static int -lbc_unmap_resource(device_t bus, device_t child, int type, struct resource *r, +lbc_unmap_resource(device_t bus, device_t child, struct resource *r, struct resource_map *map) { /* Mappings are only supported on I/O and memory resources. */ - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: break; diff --git a/sys/powerpc/powermac/macio.c b/sys/powerpc/powermac/macio.c index b443f277ec89..cb4471bbcca1 100644 --- a/sys/powerpc/powermac/macio.c +++ b/sys/powerpc/powermac/macio.c @@ -92,10 +92,10 @@ static int macio_deactivate_resource(device_t, device_t, int, int, struct resource *); static int macio_release_resource(device_t, device_t, int, int, struct resource *); -static int macio_map_resource(device_t, device_t, int, struct resource *, +static int macio_map_resource(device_t, device_t, struct resource *, struct resource_map_request *, struct resource_map *); -static int macio_unmap_resource(device_t, device_t, int, struct resource *, +static int macio_unmap_resource(device_t, device_t, struct resource *, struct resource_map *); static struct resource_list *macio_get_resource_list (device_t, device_t); static ofw_bus_get_devinfo_t macio_get_devinfo; @@ -663,9 +663,8 @@ macio_deactivate_resource(device_t bus, device_t child, int type, int rid, } static int -macio_map_resource(device_t bus, device_t child, int type, - struct resource *r, struct resource_map_request *argsp, - struct resource_map *map) +macio_map_resource(device_t bus, device_t child, struct resource *r, + struct resource_map_request *argsp, struct resource_map *map) { struct resource_map_request args; struct macio_softc *sc; @@ -677,7 +676,7 @@ macio_map_resource(device_t bus, device_t child, int type, return (ENXIO); /* Mappings are only supported on I/O and memory resources. */ - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: break; @@ -705,13 +704,13 @@ macio_map_resource(device_t bus, device_t child, int type, } static int -macio_unmap_resource(device_t bus, device_t child, int type, - struct resource *r, struct resource_map *map) +macio_unmap_resource(device_t bus, device_t child, struct resource *r, + struct resource_map *map) { /* * If this is a memory resource, unmap it. */ - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: pmap_unmapdev(map->r_vaddr, map->r_size); diff --git a/sys/powerpc/powermac/uninorth.c b/sys/powerpc/powermac/uninorth.c index b9cb4814b986..c7842311d730 100644 --- a/sys/powerpc/powermac/uninorth.c +++ b/sys/powerpc/powermac/uninorth.c @@ -82,10 +82,10 @@ static int unin_chip_activate_resource(device_t, device_t, int, int, struct resource *); static int unin_chip_deactivate_resource(device_t, device_t, int, int, struct resource *); -static int unin_chip_map_resource(device_t, device_t, int, struct resource *, +static int unin_chip_map_resource(device_t, device_t, struct resource *, struct resource_map_request *, struct resource_map *); -static int unin_chip_unmap_resource(device_t, device_t, int, struct resource *, +static int unin_chip_unmap_resource(device_t, device_t, struct resource *, struct resource_map *); static int unin_chip_release_resource(device_t, device_t, int, int, struct resource *); @@ -621,9 +621,8 @@ unin_chip_deactivate_resource(device_t bus, device_t child, int type, int rid, } static int -unin_chip_map_resource(device_t bus, device_t child, int type, - struct resource *r, struct resource_map_request *argsp, - struct resource_map *map) +unin_chip_map_resource(device_t bus, device_t child, struct resource *r, + struct resource_map_request *argsp, struct resource_map *map) { struct resource_map_request args; rman_res_t length, start; @@ -634,7 +633,7 @@ unin_chip_map_resource(device_t bus, device_t child, int type, return (ENXIO); /* Mappings are only supported on I/O and memory resources. */ - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: break; @@ -661,13 +660,13 @@ unin_chip_map_resource(device_t bus, device_t child, int type, } static int -unin_chip_unmap_resource(device_t bus, device_t child, int type, - struct resource *r, struct resource_map *map) +unin_chip_unmap_resource(device_t bus, device_t child, struct resource *r, + struct resource_map *map) { /* * If this is a memory resource, unmap it. */ - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: pmap_unmapdev(map->r_vaddr, map->r_size); diff --git a/sys/powerpc/powerpc/nexus.c b/sys/powerpc/powerpc/nexus.c index 55afadcb4e20..2f7b2ba055ff 100644 --- a/sys/powerpc/powerpc/nexus.c +++ b/sys/powerpc/powerpc/nexus.c @@ -242,7 +242,7 @@ nexus_get_rman(device_t bus, int type, u_int flags) } static int -nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, +nexus_map_resource(device_t bus, device_t child, struct resource *r, struct resource_map_request *argsp, struct resource_map *map) { struct resource_map_request args; @@ -254,7 +254,7 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, return (ENXIO); /* Mappings are only supported on I/O and memory resources. */ - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: break; @@ -270,7 +270,7 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, /* * If this is a memory resource, map it into the kernel. */ - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: panic("%s:%d SYS_RES_IOPORT handling not implemented", __func__, __LINE__); /* XXX: untested @@ -299,14 +299,14 @@ nexus_map_resource(device_t bus, device_t child, int type, struct resource *r, } static int -nexus_unmap_resource(device_t bus, device_t child, int type, struct resource *r, +nexus_unmap_resource(device_t bus, device_t child, struct resource *r, struct resource_map *map) { /* * If this is a memory resource, unmap it. */ - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: pmap_unmapdev(map->r_vaddr, map->r_size); /* FALLTHROUGH */ diff --git a/sys/powerpc/ps3/ps3bus.c b/sys/powerpc/ps3/ps3bus.c index c3f46d4942ad..62687aa5b6ff 100644 --- a/sys/powerpc/ps3/ps3bus.c +++ b/sys/powerpc/ps3/ps3bus.c @@ -61,10 +61,10 @@ static struct rman *ps3bus_get_rman(device_t bus, int type, u_int flags); static struct resource *ps3bus_alloc_resource(device_t bus, device_t child, int type, int *rid, rman_res_t start, rman_res_t end, rman_res_t count, u_int flags); -static int ps3bus_map_resource(device_t bus, device_t child, int type, +static int ps3bus_map_resource(device_t bus, device_t child, struct resource *r, struct resource_map_request *argsp, struct resource_map *map); -static int ps3bus_unmap_resource(device_t bus, device_t child, int type, +static int ps3bus_unmap_resource(device_t bus, device_t child, struct resource *r, struct resource_map *map); *** 230 LINES SKIPPED *** From nobody Wed Mar 13 22:13:39 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw4Xh2PLTz5DXVV; Wed, 13 Mar 2024 22:13: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 4Tw4Xh0J8vz4qW7; Wed, 13 Mar 2024 22:13:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368020; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=olm+zOSUZZDsYcO14puSHq1zKrIN6L/2tGugtHWvkRI=; b=W4IVa7jhqoQtVT7+GfFfsGpTD42PG/RHEZx6f0EHVrLkUBsALCidwlMWjGeIdVgZu0sZ3r scJXuE6/Suxt6e8Wz4sp30eENFCzP3KqPa872hYzrTgvk4dUcpBNxdbzyOUMHxVBwawYLd oWikc5UpUCKEo0SC9G1paytU6N5Ohsz14fpQyHzTX4GsxfbrVhsWPyVEpJZOhHmKkEDHvP dYJ+cz4SBwqIU7Dsd0lLDw5fkwxZHmVpjorvW1JiMXQ94uw6GiyzXzkEaeONGgHbccV46l AuDxcan8atGyBK05i/lYM+Frm6DXh4GJihUNbInSh4e1ohrjOc6zUtXmik9y8w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710368020; a=rsa-sha256; cv=none; b=V81qffCUY4qbSnWwJ+UZAPMQbQEDIJhbiZwEBDvpisuVjJdLrBAgndM3Fd2kvG/cnlKz4B 9ZEVDeN+mX/MvlPaa/jxNXTH87xhq+E0WaydkAgTaARn2rDvj6xmnpCs4zt+0aq8sUcSeJ ATx/4xGyCSyXuzvqW8pLK2NuMla1UzOoBzi2EVrvIqNcTcG4idqyp2LduSBKbeYDjxpCt0 slmuSUofWM6AGe2eIAr0f3AMejpAOzEYTHw9XlyL1bmwkty3kFlIAbXA4NhQtIrKt/d5UB 9OxI6fhYnlf6lxGmrFZLSt29cHGX92sM34iGjZJZAi9wCqtlbMrH6GgelRSGMQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368020; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=olm+zOSUZZDsYcO14puSHq1zKrIN6L/2tGugtHWvkRI=; b=NEgCK+1ZdmbtMkcg7bY9ITsJkLV//Gu84N00/7F8yq2SHXRexYwg7RE7yJD+TwgIVkSRlB Qel8nDtuV4CfZ6mtcgenYReU0LvHmyY1uL6L8mKwAXxNzM8JXCHZX6ZgvkVo4x9hiOtIk4 HrT396wU/4JfB81HhtHNwQHmWTxiBcGrJnZE/csPC4vjGHuSHPAVEwdRb7C6yL7N2LWkxb UupvloaaavLWC5MU/5bc5pHtxjrrKkY8FwRbOqbSU3q1WXLyZ3C4YP7xRC5GdDUkvuvyAS Prxt6vsen6nQBFeCdYJhYFEhy+Nf9TDtSHNDm96JAVji08qaYChpbotPSZtHIg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw4Xg713Jz11TZ; Wed, 13 Mar 2024 22:13: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 42DMDdO5075043; Wed, 13 Mar 2024 22:13:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DMDdKX075040; Wed, 13 Mar 2024 22:13:39 GMT (envelope-from git) Date: Wed, 13 Mar 2024 22:13:39 GMT Message-Id: <202403132213.42DMDdKX075040@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: fef01f0498aa - main - new-bus: Remove the 'type' argument from BUS_ADJUST_RESOURCE List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: fef01f0498aa7b256bc37bbf28ee0e8ac9b2536f Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=fef01f0498aa7b256bc37bbf28ee0e8ac9b2536f commit fef01f0498aa7b256bc37bbf28ee0e8ac9b2536f Author: John Baldwin AuthorDate: 2024-03-13 22:05:54 +0000 Commit: John Baldwin CommitDate: 2024-03-13 22:05:54 +0000 new-bus: Remove the 'type' argument from BUS_ADJUST_RESOURCE The public bus_adjust_resource() API still accepts both forms, but the internal kobj method no longer passes the argument. Implementations which need the type now use rman_get_type() to fetch the value from the allocated resource. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44128 --- share/man/man9/bus_adjust_resource.9 | 15 ++++----------- sys/arm/mv/mv_pci.c | 13 ++++++------- sys/arm64/cavium/thunder_pcie_pem.c | 16 ++++++++-------- sys/dev/acpica/acpi.c | 4 ++-- sys/dev/acpica/acpi_pcib_acpi.c | 9 ++++----- sys/dev/bhnd/bhndb/bhndb.c | 6 +++--- sys/dev/bhnd/cores/chipc/chipc.c | 7 +++---- sys/dev/dpaa2/dpaa2_mc.c | 8 ++++---- sys/dev/dpaa2/dpaa2_mc.h | 2 +- sys/dev/fdt/simplebus.c | 14 +------------- sys/dev/hyperv/pcib/vmbus_pcib.c | 6 +++--- sys/dev/ofw/ofw_pcib.c | 12 ++++++------ sys/dev/pccbb/pccbb_pci.c | 6 +++--- sys/dev/pci/pci_host_generic.c | 10 +++++----- sys/dev/pci/pci_pci.c | 8 ++++---- sys/dev/pci/pci_subr.c | 10 +++++----- sys/dev/pci/pcib_private.h | 2 +- sys/dev/vmd/vmd.c | 10 ++++------ sys/kern/bus_if.m | 2 -- sys/kern/subr_bus.c | 21 ++++++++++----------- sys/powerpc/mpc85xx/lbc.c | 16 ++++++---------- sys/powerpc/powermac/macio.c | 15 +++++++-------- sys/powerpc/powermac/uninorth.c | 15 +++++++-------- sys/powerpc/psim/iobus.c | 15 +++++++-------- sys/sys/bus.h | 12 ++++++------ sys/x86/include/legacyvar.h | 2 +- sys/x86/pci/pci_bus.c | 6 +++--- sys/x86/x86/mptable_pci.c | 7 +++---- 28 files changed, 117 insertions(+), 152 deletions(-) diff --git a/share/man/man9/bus_adjust_resource.9 b/share/man/man9/bus_adjust_resource.9 index 6afc31cfb35c..27173894e0ec 100644 --- a/share/man/man9/bus_adjust_resource.9 +++ b/share/man/man9/bus_adjust_resource.9 @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd April 23, 2016 +.Dd March 13, 2024 .Dt BUS_ADJUST_RESOURCE 9 .Os .Sh NAME @@ -40,7 +40,7 @@ .In machine/resource.h .Ft int .Fo bus_adjust_resource -.Fa "device_t dev" "int type" "struct resource *r" +.Fa "device_t dev" "struct resource *r" .Fa "rman_res_t start" "rman_res_t end" .Fc .Sh DESCRIPTION @@ -52,13 +52,6 @@ should have been allocated by a previous call to .Xr bus_alloc_resource 9 . The new resource range must overlap the existing range of .Fa r . -The -.Fa type -argument should match the -.Fa type -argument passed to -.Xr bus_alloc_resource 9 -when the resource was initially allocated. .Pp Note that none of the constraints of the original allocation request such as alignment or boundary restrictions are checked by @@ -74,8 +67,8 @@ Grow an existing memory resource by 4096 bytes. struct resource *res; int error; - error = bus_adjust_resource(dev, SYS_RES_MEMORY, res, - rman_get_start(res), rman_get_end(res) + 0x1000); + error = bus_adjust_resource(dev, res, rman_get_start(res), + rman_get_end(res) + 0x1000); .Ed .Sh ERRORS .Fn bus_adjust_resource diff --git a/sys/arm/mv/mv_pci.c b/sys/arm/mv/mv_pci.c index 76da1c4da7a7..42ee3180a942 100644 --- a/sys/arm/mv/mv_pci.c +++ b/sys/arm/mv/mv_pci.c @@ -345,7 +345,7 @@ static int mv_pcib_attach(device_t); static struct rman *mv_pcib_get_rman(device_t, int, u_int); static struct resource *mv_pcib_alloc_resource(device_t, device_t, int, int *, rman_res_t, rman_res_t, rman_res_t, u_int); -static int mv_pcib_adjust_resource(device_t, device_t, int, struct resource *, +static int mv_pcib_adjust_resource(device_t, device_t, struct resource *, rman_res_t, rman_res_t); static int mv_pcib_release_resource(device_t, device_t, int, int, struct resource *); @@ -941,26 +941,25 @@ mv_pcib_alloc_resource(device_t dev, device_t child, int type, int *rid, } static int -mv_pcib_adjust_resource(device_t dev, device_t child, int type, +mv_pcib_adjust_resource(device_t dev, device_t child, struct resource *r, rman_res_t start, rman_res_t end) { #ifdef PCI_RES_BUS struct mv_pcib_softc *sc = device_get_softc(dev); #endif - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: - return (bus_generic_rman_adjust_resource(dev, child, type, r, - start, end)); + return (bus_generic_rman_adjust_resource(dev, child, r, start, + end)); #ifdef PCI_RES_BUS case PCI_RES_BUS: return (pci_domain_adjust_bus(sc->ap_segment, child, r, start, end)); #endif default: - return (bus_generic_adjust_resource(dev, child, type, r, - start, end)); + return (bus_generic_adjust_resource(dev, child, r, start, end)); } } diff --git a/sys/arm64/cavium/thunder_pcie_pem.c b/sys/arm64/cavium/thunder_pcie_pem.c index 5060b6e79d97..78fcf333d825 100644 --- a/sys/arm64/cavium/thunder_pcie_pem.c +++ b/sys/arm64/cavium/thunder_pcie_pem.c @@ -122,7 +122,7 @@ static int thunder_pem_activate_resource(device_t, device_t, int, int, struct resource *); -static int thunder_pem_adjust_resource(device_t, device_t, int, +static int thunder_pem_adjust_resource(device_t, device_t, struct resource *, rman_res_t, rman_res_t); static struct resource * thunder_pem_alloc_resource(device_t, device_t, int, int *, rman_res_t, rman_res_t, rman_res_t, u_int); @@ -355,26 +355,26 @@ thunder_pem_unmap_resource(device_t dev, device_t child, int type, } static int -thunder_pem_adjust_resource(device_t dev, device_t child, int type, - struct resource *res, rman_res_t start, rman_res_t end) +thunder_pem_adjust_resource(device_t dev, device_t child, struct resource *res, + rman_res_t start, rman_res_t end) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) struct thunder_pem_softc *sc; sc = device_get_softc(dev); #endif - switch (type) { + switch (rman_get_type(res)) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) case PCI_RES_BUS: return (pci_domain_adjust_bus(sc->id, child, res, start, end)); #endif case SYS_RES_MEMORY: case SYS_RES_IOPORT: - return (bus_generic_rman_adjust_resource(dev, child, type, res, - start, end)); + return (bus_generic_rman_adjust_resource(dev, child, res, start, + end)); default: - return (bus_generic_adjust_resource(dev, child, type, res, - start, end)); + return (bus_generic_adjust_resource(dev, child, res, start, + end)); } } diff --git a/sys/dev/acpica/acpi.c b/sys/dev/acpica/acpi.c index 0ea9a32b1589..93bce7df70d5 100644 --- a/sys/dev/acpica/acpi.c +++ b/sys/dev/acpica/acpi.c @@ -1570,13 +1570,13 @@ acpi_managed_resource(device_t bus, int type, struct resource *r) } static int -acpi_adjust_resource(device_t bus, device_t child, int type, struct resource *r, +acpi_adjust_resource(device_t bus, device_t child, struct resource *r, rman_res_t start, rman_res_t end) { if (acpi_is_resource_managed(bus, r)) return (rman_adjust_resource(r, start, end)); - return (bus_generic_adjust_resource(bus, child, type, r, start, end)); + return (bus_generic_adjust_resource(bus, child, r, start, end)); } static int diff --git a/sys/dev/acpica/acpi_pcib_acpi.c b/sys/dev/acpica/acpi_pcib_acpi.c index 451a8d8b736d..235670076dae 100644 --- a/sys/dev/acpica/acpi_pcib_acpi.c +++ b/sys/dev/acpica/acpi_pcib_acpi.c @@ -97,7 +97,7 @@ static struct resource *acpi_pcib_acpi_alloc_resource(device_t dev, u_int flags); #ifdef NEW_PCIB static int acpi_pcib_acpi_adjust_resource(device_t dev, - device_t child, int type, struct resource *r, + device_t child, struct resource *r, rman_res_t start, rman_res_t end); #ifdef PCI_RES_BUS static int acpi_pcib_acpi_release_resource(device_t dev, @@ -745,19 +745,18 @@ acpi_pcib_acpi_alloc_resource(device_t dev, device_t child, int type, int *rid, #ifdef NEW_PCIB int -acpi_pcib_acpi_adjust_resource(device_t dev, device_t child, int type, +acpi_pcib_acpi_adjust_resource(device_t dev, device_t child, struct resource *r, rman_res_t start, rman_res_t end) { struct acpi_hpcib_softc *sc; sc = device_get_softc(dev); #ifdef PCI_RES_BUS - if (type == PCI_RES_BUS) + if (rman_get_type(r) == PCI_RES_BUS) return (pci_domain_adjust_bus(sc->ap_segment, child, r, start, end)); #endif - return (pcib_host_res_adjust(&sc->ap_host_res, child, type, r, start, - end)); + return (pcib_host_res_adjust(&sc->ap_host_res, child, r, start, end)); } #ifdef PCI_RES_BUS diff --git a/sys/dev/bhnd/bhndb/bhndb.c b/sys/dev/bhnd/bhndb/bhndb.c index ea5230bf459b..f8a1467894d1 100644 --- a/sys/dev/bhnd/bhndb/bhndb.c +++ b/sys/dev/bhnd/bhndb/bhndb.c @@ -1080,7 +1080,7 @@ bhndb_release_resource(device_t dev, device_t child, int type, int rid, * Default bhndb(4) implementation of BUS_ADJUST_RESOURCE(). */ static int -bhndb_adjust_resource(device_t dev, device_t child, int type, +bhndb_adjust_resource(device_t dev, device_t child, struct resource *r, rman_res_t start, rman_res_t end) { struct bhndb_softc *sc; @@ -1093,10 +1093,10 @@ bhndb_adjust_resource(device_t dev, device_t child, int type, /* Delegate to our parent device's bus if the requested resource type * isn't handled locally. */ - rm = bhndb_get_rman(sc, child, type); + rm = bhndb_get_rman(sc, child, rman_get_type(r)); if (rm == NULL) { return (BUS_ADJUST_RESOURCE(device_get_parent(sc->parent_dev), - child, type, r, start, end)); + child, r, start, end)); } /* Verify basic constraints */ diff --git a/sys/dev/bhnd/cores/chipc/chipc.c b/sys/dev/bhnd/cores/chipc/chipc.c index f99f42fb3ac3..2d1440e5c987 100644 --- a/sys/dev/bhnd/cores/chipc/chipc.c +++ b/sys/dev/bhnd/cores/chipc/chipc.c @@ -913,7 +913,7 @@ chipc_release_resource(device_t dev, device_t child, int type, int rid, } static int -chipc_adjust_resource(device_t dev, device_t child, int type, +chipc_adjust_resource(device_t dev, device_t child, struct resource *r, rman_res_t start, rman_res_t end) { struct chipc_softc *sc; @@ -923,10 +923,9 @@ chipc_adjust_resource(device_t dev, device_t child, int type, sc = device_get_softc(dev); /* Handled by parent bus? */ - rm = chipc_get_rman(dev, type, rman_get_flags(r)); + rm = chipc_get_rman(dev, rman_get_type(r), rman_get_flags(r)); if (rm == NULL || !rman_is_region_manager(r, rm)) { - return (bus_generic_adjust_resource(dev, child, type, r, start, - end)); + return (bus_generic_adjust_resource(dev, child, r, start, end)); } /* The range is limited to the existing region mapping */ diff --git a/sys/dev/dpaa2/dpaa2_mc.c b/sys/dev/dpaa2/dpaa2_mc.c index 6d11e50b1f98..0dbb282399ae 100644 --- a/sys/dev/dpaa2/dpaa2_mc.c +++ b/sys/dev/dpaa2/dpaa2_mc.c @@ -343,16 +343,16 @@ dpaa2_mc_alloc_resource(device_t mcdev, device_t child, int type, int *rid, } int -dpaa2_mc_adjust_resource(device_t mcdev, device_t child, int type, +dpaa2_mc_adjust_resource(device_t mcdev, device_t child, struct resource *r, rman_res_t start, rman_res_t end) { struct rman *rm; - rm = dpaa2_mc_rman(mcdev, type, rman_get_flags(r)); + rm = dpaa2_mc_rman(mcdev, rman_get_type(r), rman_get_flags(r)); if (rm) - return (bus_generic_rman_adjust_resource(mcdev, child, type, r, + return (bus_generic_rman_adjust_resource(mcdev, child, r, start, end)); - return (bus_generic_adjust_resource(mcdev, child, type, r, start, end)); + return (bus_generic_adjust_resource(mcdev, child, r, start, end)); } int diff --git a/sys/dev/dpaa2/dpaa2_mc.h b/sys/dev/dpaa2/dpaa2_mc.h index 40b318c4c9e7..23b18f8d2ca6 100644 --- a/sys/dev/dpaa2/dpaa2_mc.h +++ b/sys/dev/dpaa2/dpaa2_mc.h @@ -183,7 +183,7 @@ struct rman *dpaa2_mc_rman(device_t mcdev, int type, u_int flags); struct resource * dpaa2_mc_alloc_resource(device_t mcdev, device_t child, int type, int *rid, rman_res_t start, rman_res_t end, rman_res_t count, u_int flags); -int dpaa2_mc_adjust_resource(device_t mcdev, device_t child, int type, +int dpaa2_mc_adjust_resource(device_t mcdev, device_t child, struct resource *r, rman_res_t start, rman_res_t end); int dpaa2_mc_release_resource(device_t mcdev, device_t child, int type, int rid, struct resource *r); diff --git a/sys/dev/fdt/simplebus.c b/sys/dev/fdt/simplebus.c index ceb5fdde4bb7..940f93f56274 100644 --- a/sys/dev/fdt/simplebus.c +++ b/sys/dev/fdt/simplebus.c @@ -46,8 +46,6 @@ static int simplebus_probe(device_t dev); static struct resource *simplebus_alloc_resource(device_t, device_t, int, int *, rman_res_t, rman_res_t, rman_res_t, u_int); -static int simplebus_adjust_resource(device_t bus, device_t child, - int type, struct resource *r, rman_res_t start, rman_res_t end); static int simplebus_release_resource(device_t bus, device_t child, int type, int rid, struct resource *r); static int simplebus_activate_resource(device_t bus, @@ -99,7 +97,7 @@ static device_method_t simplebus_methods[] = { DEVMETHOD(bus_release_resource, simplebus_release_resource), DEVMETHOD(bus_activate_resource, simplebus_activate_resource), DEVMETHOD(bus_deactivate_resource, simplebus_deactivate_resource), - DEVMETHOD(bus_adjust_resource, simplebus_adjust_resource), + DEVMETHOD(bus_adjust_resource, bus_generic_adjust_resource), DEVMETHOD(bus_map_resource, simplebus_map_resource), DEVMETHOD(bus_unmap_resource, simplebus_unmap_resource), DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), @@ -496,16 +494,6 @@ simplebus_alloc_resource(device_t bus, device_t child, int type, int *rid, count, flags)); } -static int -simplebus_adjust_resource(device_t bus, device_t child, int type, - struct resource *r, rman_res_t start, rman_res_t end) -{ - - if (type == SYS_RES_IOPORT) - type = SYS_RES_MEMORY; - return (bus_generic_adjust_resource(bus, child, type, r, start, end)); -} - static int simplebus_release_resource(device_t bus, device_t child, int type, int rid, struct resource *r) diff --git a/sys/dev/hyperv/pcib/vmbus_pcib.c b/sys/dev/hyperv/pcib/vmbus_pcib.c index 3fa349b0c0c5..3d3041ee76b3 100644 --- a/sys/dev/hyperv/pcib/vmbus_pcib.c +++ b/sys/dev/hyperv/pcib/vmbus_pcib.c @@ -1713,15 +1713,15 @@ vmbus_pcib_alloc_resource(device_t dev, device_t child, int type, int *rid, } static int -vmbus_pcib_adjust_resource(device_t dev, device_t child, int type, +vmbus_pcib_adjust_resource(device_t dev, device_t child, struct resource *r, rman_res_t start, rman_res_t end) { struct vmbus_pcib_softc *sc = device_get_softc(dev); - if (type == PCI_RES_BUS) + if (rman_get_type(r) == PCI_RES_BUS) return (pci_domain_adjust_bus(sc->hbus->pci_domain, child, r, start, end)); - return (bus_generic_adjust_resource(dev, child, type, r, start, end)); + return (bus_generic_adjust_resource(dev, child, r, start, end)); } static int diff --git a/sys/dev/ofw/ofw_pcib.c b/sys/dev/ofw/ofw_pcib.c index f8d0fc8e7029..e95a5f029140 100644 --- a/sys/dev/ofw/ofw_pcib.c +++ b/sys/dev/ofw/ofw_pcib.c @@ -73,7 +73,7 @@ static int ofw_pcib_activate_resource(device_t, device_t, int, int, struct resource *); static int ofw_pcib_deactivate_resource(device_t, device_t, int, int, struct resource *); -static int ofw_pcib_adjust_resource(device_t, device_t, int, +static int ofw_pcib_adjust_resource(device_t, device_t, struct resource *, rman_res_t, rman_res_t); static int ofw_pcib_map_resource(device_t, device_t, int, struct resource *, struct resource_map_request *, struct resource_map *); @@ -656,7 +656,7 @@ ofw_pcib_deactivate_resource(device_t bus, device_t child, int type, int rid, } static int -ofw_pcib_adjust_resource(device_t bus, device_t child, int type, +ofw_pcib_adjust_resource(device_t bus, device_t child, struct resource *res, rman_res_t start, rman_res_t end) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) @@ -664,7 +664,7 @@ ofw_pcib_adjust_resource(device_t bus, device_t child, int type, sc = device_get_softc(bus); #endif - switch (type) { + switch (rman_get_type(res)) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) case PCI_RES_BUS: return (pci_domain_adjust_bus(sc->sc_pci_domain, child, res, @@ -672,11 +672,11 @@ ofw_pcib_adjust_resource(device_t bus, device_t child, int type, #endif case SYS_RES_MEMORY: case SYS_RES_IOPORT: - return (bus_generic_rman_adjust_resource(bus, child, type, res, + return (bus_generic_rman_adjust_resource(bus, child, res, start, end)); default: - return (bus_generic_adjust_resource(bus, child, type, res, - start, end)); + return (bus_generic_adjust_resource(bus, child, res, start, + end)); } } diff --git a/sys/dev/pccbb/pccbb_pci.c b/sys/dev/pccbb/pccbb_pci.c index 1a07ff8a4e98..08014fb210ed 100644 --- a/sys/dev/pccbb/pccbb_pci.c +++ b/sys/dev/pccbb/pccbb_pci.c @@ -803,18 +803,18 @@ cbb_pci_alloc_resource(device_t bus, device_t child, int type, int *rid, } static int -cbb_pci_adjust_resource(device_t bus, device_t child, int type, +cbb_pci_adjust_resource(device_t bus, device_t child, struct resource *r, rman_res_t start, rman_res_t end) { struct cbb_softc *sc; sc = device_get_softc(bus); - if (type == PCI_RES_BUS) { + if (rman_get_type(r) == PCI_RES_BUS) { if (!rman_is_region_manager(r, &sc->bus.rman)) return (EINVAL); return (rman_adjust_resource(r, start, end)); } - return (bus_generic_adjust_resource(bus, child, type, r, start, end)); + return (bus_generic_adjust_resource(bus, child, r, start, end)); } static int diff --git a/sys/dev/pci/pci_host_generic.c b/sys/dev/pci/pci_host_generic.c index da49edcf91f5..f4fccc7b8277 100644 --- a/sys/dev/pci/pci_host_generic.c +++ b/sys/dev/pci/pci_host_generic.c @@ -614,7 +614,7 @@ generic_pcie_deactivate_resource(device_t dev, device_t child, int type, } static int -generic_pcie_adjust_resource(device_t dev, device_t child, int type, +generic_pcie_adjust_resource(device_t dev, device_t child, struct resource *res, rman_res_t start, rman_res_t end) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) @@ -622,7 +622,7 @@ generic_pcie_adjust_resource(device_t dev, device_t child, int type, sc = device_get_softc(dev); #endif - switch (type) { + switch (rman_get_type(res)) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) case PCI_RES_BUS: return (pci_domain_adjust_bus(sc->ecam, child, res, start, @@ -630,11 +630,11 @@ generic_pcie_adjust_resource(device_t dev, device_t child, int type, #endif case SYS_RES_IOPORT: case SYS_RES_MEMORY: - return (bus_generic_rman_adjust_resource(dev, child, type, res, + return (bus_generic_rman_adjust_resource(dev, child, res, start, end)); default: - return (bus_generic_adjust_resource(dev, child, type, res, - start, end)); + return (bus_generic_adjust_resource(dev, child, res, start, + end)); } } diff --git a/sys/dev/pci/pci_pci.c b/sys/dev/pci/pci_pci.c index da09a917b9bc..b4c02bfeca37 100644 --- a/sys/dev/pci/pci_pci.c +++ b/sys/dev/pci/pci_pci.c @@ -2372,23 +2372,23 @@ pcib_alloc_resource(device_t dev, device_t child, int type, int *rid, } static int -pcib_adjust_resource(device_t bus, device_t child, int type, struct resource *r, +pcib_adjust_resource(device_t bus, device_t child, struct resource *r, rman_res_t start, rman_res_t end) { struct pcib_softc *sc; struct pcib_window *w; rman_res_t wmask; - int error; + int error, type; sc = device_get_softc(bus); + type = rman_get_type(r); /* * If the resource wasn't sub-allocated from one of our region * managers then just pass the request up. */ if (!pcib_is_resource_managed(sc, r)) - return (bus_generic_adjust_resource(bus, child, type, r, - start, end)); + return (bus_generic_adjust_resource(bus, child, r, start, end)); #ifdef PCI_RES_BUS if (type == PCI_RES_BUS) { diff --git a/sys/dev/pci/pci_subr.c b/sys/dev/pci/pci_subr.c index e2583a75e303..4be3e3f166eb 100644 --- a/sys/dev/pci/pci_subr.c +++ b/sys/dev/pci/pci_subr.c @@ -260,26 +260,26 @@ restart: } int -pcib_host_res_adjust(struct pcib_host_resources *hr, device_t dev, int type, +pcib_host_res_adjust(struct pcib_host_resources *hr, device_t dev, struct resource *r, rman_res_t start, rman_res_t end) { struct resource_list_entry *rle; - rle = resource_list_find(&hr->hr_rl, type, 0); + rle = resource_list_find(&hr->hr_rl, rman_get_type(r), 0); if (rle == NULL) { /* * No decoding ranges for this resource type, just pass * the request up to the parent. */ - return (bus_generic_adjust_resource(hr->hr_pcib, dev, type, r, - start, end)); + return (bus_generic_adjust_resource(hr->hr_pcib, dev, r, start, + end)); } /* Only allow adjustments that stay within a decoded range. */ for (; rle != NULL; rle = STAILQ_NEXT(rle, link)) { if (rle->start <= start && rle->end >= end) return (bus_generic_adjust_resource(hr->hr_pcib, dev, - type, r, start, end)); + r, start, end)); } return (ERANGE); } diff --git a/sys/dev/pci/pcib_private.h b/sys/dev/pci/pcib_private.h index bc0b48d9f031..1f4f18d921e5 100644 --- a/sys/dev/pci/pcib_private.h +++ b/sys/dev/pci/pcib_private.h @@ -56,7 +56,7 @@ struct resource *pcib_host_res_alloc(struct pcib_host_resources *hr, device_t dev, int type, int *rid, rman_res_t start, rman_res_t end, rman_res_t count, u_int flags); int pcib_host_res_adjust(struct pcib_host_resources *hr, - device_t dev, int type, struct resource *r, rman_res_t start, + device_t dev, struct resource *r, rman_res_t start, rman_res_t end); #endif diff --git a/sys/dev/vmd/vmd.c b/sys/dev/vmd/vmd.c index d885cd15ac26..c258ef7a7047 100644 --- a/sys/dev/vmd/vmd.c +++ b/sys/dev/vmd/vmd.c @@ -469,16 +469,14 @@ vmd_alloc_resource(device_t dev, device_t child, int type, int *rid, } static int -vmd_adjust_resource(device_t dev, device_t child, int type, +vmd_adjust_resource(device_t dev, device_t child, struct resource *r, rman_res_t start, rman_res_t end) { - if (type == SYS_RES_IRQ) { - return (bus_generic_adjust_resource(dev, child, type, r, - start, end)); + if (rman_get_type(r) == SYS_RES_IRQ) { + return (bus_generic_adjust_resource(dev, child, r, start, end)); } - return (bus_generic_rman_adjust_resource(dev, child, type, r, start, - end)); + return (bus_generic_rman_adjust_resource(dev, child, r, start, end)); } static int diff --git a/sys/kern/bus_if.m b/sys/kern/bus_if.m index 7078683911b8..497b98ca4601 100644 --- a/sys/kern/bus_if.m +++ b/sys/kern/bus_if.m @@ -399,7 +399,6 @@ METHOD int deactivate_resource { * * @param _dev the parent device of @p _child * @param _child the device which allocated the resource - * @param _type the type of resource * @param _res the resource to adjust * @param _start the new starting address of the resource range * @param _end the new ending address of the resource range @@ -407,7 +406,6 @@ METHOD int deactivate_resource { METHOD int adjust_resource { device_t _dev; device_t _child; - int _type; struct resource *_res; rman_res_t _start; rman_res_t _end; diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c index 25cb5fba2108..33d7b1e4af88 100644 --- a/sys/kern/subr_bus.c +++ b/sys/kern/subr_bus.c @@ -3877,13 +3877,12 @@ bus_generic_resume_intr(device_t dev, device_t child, struct resource *irq) * BUS_ADJUST_RESOURCE() method of the parent of @p dev. */ int -bus_generic_adjust_resource(device_t dev, device_t child, int type, - struct resource *r, rman_res_t start, rman_res_t end) +bus_generic_adjust_resource(device_t dev, device_t child, struct resource *r, + rman_res_t start, rman_res_t end) { /* Propagate up the bus hierarchy until someone handles it. */ if (dev->parent) - return (BUS_ADJUST_RESOURCE(dev->parent, child, type, r, start, - end)); + return (BUS_ADJUST_RESOURCE(dev->parent, child, r, start, end)); return (EINVAL); } @@ -4270,12 +4269,12 @@ bus_generic_rman_alloc_resource(device_t dev, device_t child, int type, * BUS_GET_RMAN(). */ int -bus_generic_rman_adjust_resource(device_t dev, device_t child, int type, +bus_generic_rman_adjust_resource(device_t dev, device_t child, struct resource *r, rman_res_t start, rman_res_t end) { struct rman *rm; - rm = BUS_GET_RMAN(dev, type, rman_get_flags(r)); + rm = BUS_GET_RMAN(dev, rman_get_type(r), rman_get_flags(r)); if (rm == NULL) return (ENXIO); if (!rman_is_region_manager(r, rm)) @@ -4537,19 +4536,19 @@ bus_alloc_resource(device_t dev, int type, int *rid, rman_res_t start, * parent of @p dev. */ int -bus_adjust_resource(device_t dev, int type, struct resource *r, rman_res_t start, +bus_adjust_resource(device_t dev, struct resource *r, rman_res_t start, rman_res_t end) { if (dev->parent == NULL) return (EINVAL); - return (BUS_ADJUST_RESOURCE(dev->parent, dev, type, r, start, end)); + return (BUS_ADJUST_RESOURCE(dev->parent, dev, r, start, end)); } int -bus_adjust_resource_new(device_t dev, struct resource *r, rman_res_t start, - rman_res_t end) +bus_adjust_resource_old(device_t dev, int type __unused, struct resource *r, + rman_res_t start, rman_res_t end) { - return (bus_adjust_resource(dev, rman_get_type(r), r, start, end)); + return (bus_adjust_resource(dev, r, start, end)); } /** diff --git a/sys/powerpc/mpc85xx/lbc.c b/sys/powerpc/mpc85xx/lbc.c index f6f38f22beb6..afac89b7597a 100644 --- a/sys/powerpc/mpc85xx/lbc.c +++ b/sys/powerpc/mpc85xx/lbc.c @@ -81,7 +81,7 @@ static int lbc_deactivate_resource(device_t bus, static struct rman *lbc_get_rman(device_t, int, u_int); static struct resource *lbc_alloc_resource(device_t, device_t, int, int *, rman_res_t, rman_res_t, rman_res_t, u_int); -static int lbc_adjust_resource(device_t, device_t, int, struct resource *, +static int lbc_adjust_resource(device_t, device_t, struct resource *, rman_res_t, rman_res_t); static int lbc_print_child(device_t, device_t); static int lbc_release_resource(device_t, device_t, int, int, @@ -762,19 +762,15 @@ lbc_print_child(device_t dev, device_t child) } static int -lbc_adjust_resource(device_t dev, device_t child, int type, struct resource *r, +lbc_adjust_resource(device_t dev, device_t child, struct resource *r, rman_res_t start, rman_res_t end) { - switch (type) { - case SYS_RES_IOPORT: - type = SYS_RES_MEMORY; - /* FALLTHROUGH */ + switch (rman_get_type(r)) { case SYS_RES_MEMORY: - return (bus_generic_rman_adjust_resource(dev, child, type, r, - start, end)); - case SYS_RES_IRQ: - return (bus_generic_adjust_resource(dev, child, type, r, start, + return (bus_generic_rman_adjust_resource(dev, child, r, start, end)); + case SYS_RES_IRQ: + return (bus_generic_adjust_resource(dev, child, r, start, end)); default: return (EINVAL); } diff --git a/sys/powerpc/powermac/macio.c b/sys/powerpc/powermac/macio.c index f6ad815064e8..b443f277ec89 100644 --- a/sys/powerpc/powermac/macio.c +++ b/sys/powerpc/powermac/macio.c @@ -84,7 +84,7 @@ static struct rman *macio_get_rman(device_t, int, u_int); static struct resource *macio_alloc_resource(device_t, device_t, int, int *, rman_res_t, rman_res_t, rman_res_t, u_int); -static int macio_adjust_resource(device_t, device_t, int, struct resource *, +static int macio_adjust_resource(device_t, device_t, struct resource *, rman_res_t, rman_res_t); static int macio_activate_resource(device_t, device_t, int, int, struct resource *); @@ -596,17 +596,16 @@ macio_alloc_resource(device_t bus, device_t child, int type, int *rid, } static int -macio_adjust_resource(device_t bus, device_t child, int type, - struct resource *r, rman_res_t start, rman_res_t end) +macio_adjust_resource(device_t bus, device_t child, struct resource *r, + rman_res_t start, rman_res_t end) { - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: - return (bus_generic_rman_adjust_resource(bus, child, type, r, - start, end)); - case SYS_RES_IRQ: - return (bus_generic_adjust_resource(bus, child, type, r, start, + return (bus_generic_rman_adjust_resource(bus, child, r, start, end)); + case SYS_RES_IRQ: + return (bus_generic_adjust_resource(bus, child, r, start, end)); default: return (EINVAL); } diff --git a/sys/powerpc/powermac/uninorth.c b/sys/powerpc/powermac/uninorth.c index b64bbc8ade62..b9cb4814b986 100644 --- a/sys/powerpc/powermac/uninorth.c +++ b/sys/powerpc/powermac/uninorth.c @@ -75,7 +75,7 @@ static struct rman *unin_chip_get_rman(device_t, int, u_int); static struct resource *unin_chip_alloc_resource(device_t, device_t, int, int *, rman_res_t, rman_res_t, rman_res_t, u_int); -static int unin_chip_adjust_resource(device_t, device_t, int, +static int unin_chip_adjust_resource(device_t, device_t, struct resource *, rman_res_t, rman_res_t); static int unin_chip_activate_resource(device_t, device_t, int, int, @@ -554,17 +554,16 @@ unin_chip_alloc_resource(device_t bus, device_t child, int type, int *rid, } static int -unin_chip_adjust_resource(device_t bus, device_t child, int type, - struct resource *r, rman_res_t start, rman_res_t end) +unin_chip_adjust_resource(device_t bus, device_t child, struct resource *r, + rman_res_t start, rman_res_t end) { - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: - return (bus_generic_rman_adjust_resource(bus, child, type, r, - start, end)); - case SYS_RES_IRQ: - return (bus_generic_adjust_resource(bus, child, type, r, start, + return (bus_generic_rman_adjust_resource(bus, child, r, start, end)); + case SYS_RES_IRQ: + return (bus_generic_adjust_resource(bus, child, r, start, end)); default: return (EINVAL); } diff --git a/sys/powerpc/psim/iobus.c b/sys/powerpc/psim/iobus.c index eea0255aa21c..79befbc8bd86 100644 --- a/sys/powerpc/psim/iobus.c +++ b/sys/powerpc/psim/iobus.c @@ -74,7 +74,7 @@ static struct rman *iobus_get_rman(device_t, int, u_int); static struct resource *iobus_alloc_resource(device_t, device_t, int, int *, rman_res_t, rman_res_t, rman_res_t, u_int); -static int iobus_adjust_resource(device_t, device_t, int, struct resource *, +static int iobus_adjust_resource(device_t, device_t, struct resource *, rman_res_t, rman_res_t); static int iobus_activate_resource(device_t, device_t, int, int, struct resource *); @@ -342,18 +342,17 @@ iobus_alloc_resource(device_t bus, device_t child, int type, int *rid, } static int -iobus_adjust_resource(device_t bus, device_t child, int type, - struct resource *r, rman_res_t start, rman_res_t end) +iobus_adjust_resource(device_t bus, device_t child, struct resource *r, + rman_res_t start, rman_res_t end) { - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: case SYS_RES_IOPORT: - return (bus_generic_rman_adjust_resource(bus, child, type, r, - start, end)); - case SYS_RES_IRQ: - return (bus_generic_adjust_resource(bus, child, type, r, start, + return (bus_generic_rman_adjust_resource(bus, child, r, start, end)); + case SYS_RES_IRQ: + return (bus_generic_adjust_resource(bus, child, r, start, end)); default: return (EINVAL); } diff --git a/sys/sys/bus.h b/sys/sys/bus.h index 6fcd414dc7be..310b3646f49f 100644 --- a/sys/sys/bus.h +++ b/sys/sys/bus.h @@ -432,7 +432,7 @@ int bus_generic_activate_resource(device_t dev, device_t child, int type, device_t bus_generic_add_child(device_t dev, u_int order, const char *name, int unit); -int bus_generic_adjust_resource(device_t bus, device_t child, int type, +int bus_generic_adjust_resource(device_t bus, device_t child, struct resource *r, rman_res_t start, rman_res_t end); struct resource * @@ -504,7 +504,7 @@ struct resource * int *rid, rman_res_t start, rman_res_t end, rman_res_t count, u_int flags); -int bus_generic_rman_adjust_resource(device_t dev, device_t child, int type, +int bus_generic_rman_adjust_resource(device_t dev, device_t child, struct resource *r, rman_res_t start, rman_res_t end); int bus_generic_rman_release_resource(device_t dev, device_t child, @@ -554,7 +554,7 @@ int bus_alloc_resources(device_t dev, struct resource_spec *rs, void bus_release_resources(device_t dev, const struct resource_spec *rs, struct resource **res); -int bus_adjust_resource(device_t child, int type, struct resource *r, +int bus_adjust_resource(device_t child, struct resource *r, rman_res_t start, rman_res_t end); int bus_translate_resource(device_t child, int type, rman_res_t start, rman_res_t *newstart); @@ -614,7 +614,7 @@ bus_alloc_resource_anywhere(device_t dev, int type, int *rid, } /* Compat shims for simpler bus resource API. */ -int bus_adjust_resource_new(device_t child, struct resource *r, +int bus_adjust_resource_old(device_t child, int type, struct resource *r, rman_res_t start, rman_res_t end); int bus_activate_resource_new(device_t dev, struct resource *r); int bus_deactivate_resource_new(device_t dev, struct resource *r); @@ -627,8 +627,8 @@ int bus_release_resource_new(device_t dev, struct resource *r); #define _BUS_API_MACRO(_1, _2, _3, _4, _5, NAME, ...) NAME #define bus_adjust_resource(...) \ - _BUS_API_MACRO(__VA_ARGS__, bus_adjust_resource, \ - bus_adjust_resource_new)(__VA_ARGS__) + _BUS_API_MACRO(__VA_ARGS__, bus_adjust_resource_old, \ + bus_adjust_resource)(__VA_ARGS__) #define bus_activate_resource(...) \ _BUS_API_MACRO(__VA_ARGS__, INVALID, bus_activate_resource, \ diff --git a/sys/x86/include/legacyvar.h b/sys/x86/include/legacyvar.h index 5627e9b90306..789c6c55f198 100644 --- a/sys/x86/include/legacyvar.h +++ b/sys/x86/include/legacyvar.h @@ -58,7 +58,7 @@ int legacy_pcib_write_ivar(device_t dev, device_t child, int which, struct resource *legacy_pcib_alloc_resource(device_t dev, device_t child, int type, int *rid, rman_res_t start, rman_res_t end, rman_res_t count, u_int flags); -int legacy_pcib_adjust_resource(device_t dev, device_t child, int type, +int legacy_pcib_adjust_resource(device_t dev, device_t child, struct resource *r, rman_res_t start, rman_res_t end); int legacy_pcib_release_resource(device_t dev, device_t child, int type, int rid, struct resource *r); diff --git a/sys/x86/pci/pci_bus.c b/sys/x86/pci/pci_bus.c index cfe0a3974187..c7715c47d3c8 100644 --- a/sys/x86/pci/pci_bus.c +++ b/sys/x86/pci/pci_bus.c @@ -607,13 +607,13 @@ legacy_pcib_alloc_resource(device_t dev, device_t child, int type, int *rid, #if defined(NEW_PCIB) && defined(PCI_RES_BUS) int -legacy_pcib_adjust_resource(device_t dev, device_t child, int type, +legacy_pcib_adjust_resource(device_t dev, device_t child, struct resource *r, rman_res_t start, rman_res_t end) { - if (type == PCI_RES_BUS) + if (rman_get_type(r) == PCI_RES_BUS) return (pci_domain_adjust_bus(0, child, r, start, end)); - return (bus_generic_adjust_resource(dev, child, type, r, start, end)); + return (bus_generic_adjust_resource(dev, child, r, start, end)); } int diff --git a/sys/x86/x86/mptable_pci.c b/sys/x86/x86/mptable_pci.c index 5792b0cb7387..de659ca75163 100644 --- a/sys/x86/x86/mptable_pci.c +++ b/sys/x86/x86/mptable_pci.c @@ -139,18 +139,17 @@ mptable_hostb_alloc_resource(device_t dev, device_t child, int type, int *rid, } static int -mptable_hostb_adjust_resource(device_t dev, device_t child, int type, +mptable_hostb_adjust_resource(device_t dev, device_t child, struct resource *r, rman_res_t start, rman_res_t end) { struct mptable_hostb_softc *sc; #ifdef PCI_RES_BUS - if (type == PCI_RES_BUS) + if (rman_get_type(r) == PCI_RES_BUS) return (pci_domain_adjust_bus(0, child, r, start, end)); #endif sc = device_get_softc(dev); - return (pcib_host_res_adjust(&sc->sc_host_res, child, type, r, start, - end)); + return (pcib_host_res_adjust(&sc->sc_host_res, child, r, start, end)); } #endif From nobody Wed Mar 13 22:13:42 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw4Xk4MzVz5DXPs; Wed, 13 Mar 2024 22:13: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 4Tw4Xk2QKhz4qhS; Wed, 13 Mar 2024 22:13:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368022; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=y1VbecpBR/qDYcIzsUGD3T4uLWU8X2dpK57gXkQVW1U=; b=rzvPQGdrq6leOSVVTp0YcSFbdsp6e9J42wj+/oMbOF7MxBnBfUkP/u96lr48GHwQkUomb4 eeztfLWfxxKhhIgl29yTev2ZNYafrRZr6cxyKzZ/cWZablWsNlgxFsXkAVWpR2QfVjJbyF yipeR7cIWmNwsBN5yAGzNMtpkw0J224ETuvlVr6cQi33cOK7ASlxuHOWqkCrFitg6Ap506 MkcYX7mTBjX7uYkBujNT3ldyzEVPc2NO5Rti4DX1UJFym22LV7tmNtwo4zCPJHWRf4dyWu K7gT9F8Y9LK0QMjft1nlX49spXg5ThHmoemoFSoZM7rBivm+AKfW8qdxNITO9Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710368022; a=rsa-sha256; cv=none; b=rliHhwjqtucYFjLjdo7PaW0HkR3WhktQnSPsaCFLR1iXwXkVXkS+sUu9k9252VE8ZCIiKt yoE+qJlxhPyD14PrBMdwCuhqMSE/aVAkOQJvYq6QlQCSddrJIE6HEfmU8pVPX75sBIzVly j9N3kPrierR4ms3gDKhDIWxlZ14bo8MY6+XZJr+FeqoTRkogIkdDPo1/cJ/2cEyyrU7Ccl W2pxW0h46DjcAP2KBKrVij4RjDpp1Y3Ox3RBpnKz4U2rq7iVHlVH4Qr2y1hYf2C3FHWCQr vspp4I3+BQ6PndfbAUz9eiw2+SIilJ3UHOtS3SEUm/l5Q6/VXP033Pdu1sUnhQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368022; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=y1VbecpBR/qDYcIzsUGD3T4uLWU8X2dpK57gXkQVW1U=; b=mY0djhLO/rCo6+XFTpPyM495CdUW784rbTfnwrGxW2UgugI/ua9GxMrwf8Pc6pYrTOcLNT S5C5UwH/y75+fjdit3pxbJJ+UkExtAPfWymj7RaUR2DLmbwG/SEIkusKnWNmeHrkYIJkcY 9aR7eh4dP9A3pjWzsNRnipnkR0QCb9lpzZxe4eqoMpvWuVOqfYRkuztLxC8jvzAdaTgLeE YaeiInNz8h4QxhbOuv0QcuOgAHqK8pOuMbZYt96o9CvCHbUrY5KPNTMuayJDWnFYje6JKv 6CsBC7C1g7yKy7rXcVgobLrTTFH3AdE9XH0Aks5Xsu83UH0mftXEKXhYX7W+IQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw4Xk1pPjz11Tb; Wed, 13 Mar 2024 22:13: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 42DMDg5M075148; Wed, 13 Mar 2024 22:13:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DMDgsN075145; Wed, 13 Mar 2024 22:13:42 GMT (envelope-from git) Date: Wed, 13 Mar 2024 22:13:42 GMT Message-Id: <202403132213.42DMDgsN075145@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 2baed46e85d3 - main - new-bus: Remove the 'rid' and 'type' arguments from BUS_*ACTIVATE_RESOURCE List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2baed46e85d33b1f99e6f96033acc85a9a6fbba4 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=2baed46e85d33b1f99e6f96033acc85a9a6fbba4 commit 2baed46e85d33b1f99e6f96033acc85a9a6fbba4 Author: John Baldwin AuthorDate: 2024-03-13 22:05:54 +0000 Commit: John Baldwin CommitDate: 2024-03-13 22:05:54 +0000 new-bus: Remove the 'rid' and 'type' arguments from BUS_*ACTIVATE_RESOURCE The public bus_activate/deactivate_resource() API still accepts both forms, but the internal kobj methods no longer pass the arguments. Implementations which need the rid or type now use rman_get_rid() or rman_get_type() to fetch the value from the allocated resource. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44130 --- share/man/man9/bus_activate_resource.9 | 24 ++-------------- sys/arm/arm/nexus.c | 16 ++++------- sys/arm/mv/mv_pci.c | 33 ++++++++-------------- sys/arm64/arm64/nexus.c | 26 ++++++++---------- sys/arm64/cavium/thunder_pcie_pem.c | 30 ++++++++------------ sys/dev/acpica/acpi.c | 16 ++++------- sys/dev/acpica/acpi_pcib_acpi.c | 25 ++++++++--------- sys/dev/agp/agp_i810.c | 4 +-- sys/dev/bhnd/bhndb/bhndb.c | 50 ++++++++++++++-------------------- sys/dev/bhnd/cores/chipc/chipc.c | 34 ++++++++++------------- sys/dev/bhnd/cores/usb/bhnd_usb.c | 16 ++++------- sys/dev/dpaa/fman.c | 7 ++--- sys/dev/dpaa/fman.h | 2 +- sys/dev/dpaa2/dpaa2_mc.c | 20 ++++++-------- sys/dev/dpaa2/dpaa2_mc.h | 8 +++--- sys/dev/exca/exca.c | 18 ++++++------ sys/dev/exca/excavar.h | 8 +++--- sys/dev/fdt/simplebus.c | 28 ++----------------- sys/dev/hyperv/pcib/vmbus_pcib.c | 18 ++++++------ sys/dev/ofw/ofw_pcib.c | 33 ++++++++-------------- sys/dev/pccbb/pccbb.c | 49 +++++++++++++++------------------ sys/dev/pccbb/pccbbvar.h | 4 +-- sys/dev/pci/pci.c | 18 ++++++------ sys/dev/pci/pci_host_generic.c | 27 ++++++++---------- sys/dev/pci/pci_pci.c | 18 ++++++------ sys/dev/pci/pci_private.h | 8 +++--- sys/dev/pci/pci_subr.c | 4 +-- sys/dev/pci/pcib_private.h | 4 +-- sys/dev/vmd/vmd.c | 20 ++++++-------- sys/kern/bus_if.m | 8 ------ sys/kern/subr_bus.c | 45 ++++++++++++++---------------- sys/powerpc/mpc85xx/lbc.c | 31 +++++++-------------- sys/powerpc/powermac/macgpio.c | 18 ++++++------ sys/powerpc/powermac/macio.c | 28 +++++++------------ sys/powerpc/powermac/uninorth.c | 25 +++++++---------- sys/powerpc/psim/iobus.c | 26 +++++++----------- sys/riscv/riscv/nexus.c | 16 ++++------- sys/sys/bus.h | 30 ++++++++++---------- sys/x86/include/legacyvar.h | 8 +++--- sys/x86/pci/pci_bus.c | 17 ++++++------ 40 files changed, 325 insertions(+), 495 deletions(-) diff --git a/share/man/man9/bus_activate_resource.9 b/share/man/man9/bus_activate_resource.9 index be878349ab3c..7b87197b8d11 100644 --- a/share/man/man9/bus_activate_resource.9 +++ b/share/man/man9/bus_activate_resource.9 @@ -22,7 +22,7 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd May 20, 2016 +.Dd March 13, 2024 .Dt BUS_ACTIVATE_RESOURCE 9 .Os .Sh NAME @@ -37,11 +37,11 @@ .In machine/resource.h .Ft int .Fo bus_activate_resource -.Fa "device_t dev" "int type" "int rid" "struct resource *r" +.Fa "device_t dev" "struct resource *r" .Fc .Ft int .Fo bus_deactivate_resource -.Fa "device_t dev" "int type" "int rid" "struct resource *r" +.Fa "device_t dev" "struct resource *r" .Fc .Sh DESCRIPTION These functions activate or deactivate a previously allocated resource. @@ -58,24 +58,6 @@ The arguments are as follows: .It Fa dev The device that requests ownership of the resource. Before allocation, the resource is owned by the parent bus. -.It Fa type -The type of resource you want to allocate. -It is one of: -.Pp -.Bl -tag -width ".Dv SYS_RES_MEMORY" -compact -.It Dv PCI_RES_BUS -for PCI bus numbers -.It Dv SYS_RES_IRQ -for IRQs -.It Dv SYS_RES_DRQ -for ISA DMA lines -.It Dv SYS_RES_IOPORT -for I/O ports -.It Dv SYS_RES_MEMORY -for I/O memory -.El -.It Fa rid -A pointer to a bus specific handle that identifies the resource being allocated. .It Fa r A pointer to the .Vt "struct resource" diff --git a/sys/arm/arm/nexus.c b/sys/arm/arm/nexus.c index 0cb896ce346e..8274a792839d 100644 --- a/sys/arm/arm/nexus.c +++ b/sys/arm/arm/nexus.c @@ -305,16 +305,14 @@ nexus_bind_intr(device_t dev, device_t child, struct resource *irq, int cpu) #endif static int -nexus_activate_resource(device_t bus, device_t child, int type, int rid, - struct resource *r) +nexus_activate_resource(device_t bus, device_t child, struct resource *r) { int err; - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: case SYS_RES_IOPORT: - return (bus_generic_rman_activate_resource(bus, child, type, - rid, r)); + return (bus_generic_rman_activate_resource(bus, child, r)); case SYS_RES_IRQ: err = rman_activate_resource(r); if (err != 0) @@ -393,16 +391,14 @@ nexus_unmap_resource(device_t bus, device_t child, struct resource *r, } static int -nexus_deactivate_resource(device_t bus, device_t child, int type, int rid, - struct resource *r) +nexus_deactivate_resource(device_t bus, device_t child, struct resource *r) { int error; - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: case SYS_RES_IOPORT: - return (bus_generic_rman_deactivate_resource(bus, child, type, - rid, r)); + return (bus_generic_rman_deactivate_resource(bus, child, r)); case SYS_RES_IRQ: error = rman_deactivate_resource(r); if (error) diff --git a/sys/arm/mv/mv_pci.c b/sys/arm/mv/mv_pci.c index a8a6d1d50002..a24a71cd4ecf 100644 --- a/sys/arm/mv/mv_pci.c +++ b/sys/arm/mv/mv_pci.c @@ -349,10 +349,8 @@ static int mv_pcib_adjust_resource(device_t, device_t, struct resource *, rman_res_t, rman_res_t); static int mv_pcib_release_resource(device_t, device_t, int, int, struct resource *); -static int mv_pcib_activate_resource(device_t, device_t, int, int, - struct resource *r); -static int mv_pcib_deactivate_resource(device_t, device_t, int, int, - struct resource *r); +static int mv_pcib_activate_resource(device_t, device_t, struct resource *); +static int mv_pcib_deactivate_resource(device_t, device_t, struct resource *); static int mv_pcib_map_resource(device_t, device_t, struct resource *, struct resource_map_request *, struct resource_map *); static int mv_pcib_unmap_resource(device_t, device_t, struct resource *, @@ -987,49 +985,42 @@ mv_pcib_release_resource(device_t dev, device_t child, int type, int rid, } static int -mv_pcib_activate_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +mv_pcib_activate_resource(device_t dev, device_t child, struct resource *r) { #ifdef PCI_RES_BUS struct mv_pcib_softc *sc = device_get_softc(dev); #endif - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: - return (bus_generic_rman_activate_resource(dev, child, type, - rid, r)); + return (bus_generic_rman_activate_resource(dev, child, r)); #ifdef PCI_RES_BUS case PCI_RES_BUS: - return (pci_domain_activate_bus(sc->ap_segment, child, rid, r)); + return (pci_domain_activate_bus(sc->ap_segment, child, r)); #endif default: - return (bus_generic_activate_resource(dev, child, type, rid, - r)); + return (bus_generic_activate_resource(dev, child, r)); } } static int -mv_pcib_deactivate_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +mv_pcib_deactivate_resource(device_t dev, device_t child, struct resource *r) { #ifdef PCI_RES_BUS struct mv_pcib_softc *sc = device_get_softc(dev); #endif - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: - return (bus_generic_rman_deactivate_resource(dev, child, type, - rid, r)); + return (bus_generic_rman_deactivate_resource(dev, child, r)); #ifdef PCI_RES_BUS case PCI_RES_BUS: - return (pci_domain_deactivate_bus(sc->ap_segment, child, rid, - r)); + return (pci_domain_deactivate_bus(sc->ap_segment, child, r)); #endif default: - return (bus_generic_deactivate_resource(dev, child, type, rid, - r)); + return (bus_generic_deactivate_resource(dev, child, r)); } } diff --git a/sys/arm64/arm64/nexus.c b/sys/arm64/arm64/nexus.c index ed500ba5ea6d..3e9399384855 100644 --- a/sys/arm64/arm64/nexus.c +++ b/sys/arm64/arm64/nexus.c @@ -324,8 +324,8 @@ nexus_get_bus_tag(device_t bus __unused, device_t child __unused) } static int -nexus_activate_resource_flags(device_t bus, device_t child, int type, int rid, - struct resource *r, int flags) +nexus_activate_resource_flags(device_t bus, device_t child, struct resource *r, + int flags) { struct resource_map_request args; struct resource_map map; @@ -337,7 +337,7 @@ nexus_activate_resource_flags(device_t bus, device_t child, int type, int rid, /* * If this is a memory resource, map it into the kernel. */ - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: if ((rman_get_flags(r) & RF_UNMAPPED) == 0) { @@ -370,10 +370,9 @@ nexus_activate_resource_flags(device_t bus, device_t child, int type, int rid, } static int -nexus_activate_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +nexus_activate_resource(device_t dev, device_t child, struct resource *r) { - return (nexus_activate_resource_flags(dev, child, type, rid, r, 0)); + return (nexus_activate_resource_flags(dev, child, r, 0)); } static struct resource_list * @@ -385,16 +384,14 @@ nexus_get_reslist(device_t dev, device_t child) } static int -nexus_deactivate_resource(device_t bus, device_t child, int type, int rid, - struct resource *r) +nexus_deactivate_resource(device_t bus, device_t child, struct resource *r) { int error; - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: case SYS_RES_IOPORT: - return (bus_generic_rman_deactivate_resource(bus, child, type, - rid, r)); + return (bus_generic_rman_deactivate_resource(bus, child, r)); case SYS_RES_IRQ: error = rman_deactivate_resource(r); if (error) @@ -500,14 +497,13 @@ nexus_fdt_attach(device_t dev) } static int -nexus_fdt_activate_resource(device_t bus, device_t child, int type, int rid, - struct resource *r) +nexus_fdt_activate_resource(device_t bus, device_t child, struct resource *r) { phandle_t node, parent; int flags; flags = 0; - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: case SYS_RES_IOPORT: /* @@ -529,7 +525,7 @@ nexus_fdt_activate_resource(device_t bus, device_t child, int type, int rid, break; } - return (nexus_activate_resource_flags(bus, child, type, rid, r, flags)); + return (nexus_activate_resource_flags(bus, child, r, flags)); } static int diff --git a/sys/arm64/cavium/thunder_pcie_pem.c b/sys/arm64/cavium/thunder_pcie_pem.c index b53f70696ff1..f7c3c5ee1c0a 100644 --- a/sys/arm64/cavium/thunder_pcie_pem.c +++ b/sys/arm64/cavium/thunder_pcie_pem.c @@ -120,8 +120,7 @@ #define RID_PEM_SPACE 1 -static int thunder_pem_activate_resource(device_t, device_t, int, int, - struct resource *); +static int thunder_pem_activate_resource(device_t, device_t, struct resource *); static int thunder_pem_adjust_resource(device_t, device_t, struct resource *, rman_res_t, rman_res_t); static struct resource * thunder_pem_alloc_resource(device_t, device_t, int, @@ -134,7 +133,7 @@ static int thunder_pem_map_msi(device_t, device_t, int, uint64_t *, uint32_t *); static int thunder_pem_get_id(device_t, device_t, enum pci_id_type, uintptr_t *); static int thunder_pem_attach(device_t); -static int thunder_pem_deactivate_resource(device_t, device_t, int, int, +static int thunder_pem_deactivate_resource(device_t, device_t, struct resource *); static int thunder_pem_map_resource(device_t, device_t, struct resource *, struct resource_map_request *, struct resource_map *); @@ -254,31 +253,28 @@ thunder_pem_write_ivar(device_t dev, device_t child, int index, } static int -thunder_pem_activate_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +thunder_pem_activate_resource(device_t dev, device_t child, struct resource *r) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) struct thunder_pem_softc *sc; sc = device_get_softc(dev); #endif - switch (type) { + switch (rman_get_type(r)) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) case PCI_RES_BUS: - return (pci_domain_activate_bus(sc->id, child, rid, r)); + return (pci_domain_activate_bus(sc->id, child, r)); #endif case SYS_RES_MEMORY: case SYS_RES_IOPORT: - return (bus_generic_rman_activate_resource(dev, child, type, - rid, r)); + return (bus_generic_rman_activate_resource(dev, child, r)); default: - return (bus_generic_activate_resource(dev, child, type, rid, - r)); + return (bus_generic_activate_resource(dev, child, r)); } } static int -thunder_pem_deactivate_resource(device_t dev, device_t child, int type, int rid, +thunder_pem_deactivate_resource(device_t dev, device_t child, struct resource *r) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) @@ -286,18 +282,16 @@ thunder_pem_deactivate_resource(device_t dev, device_t child, int type, int rid, sc = device_get_softc(dev); #endif - switch (type) { + switch (rman_get_type(r)) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) case PCI_RES_BUS: - return (pci_domain_deactivate_bus(sc->id, child, rid, r)); + return (pci_domain_deactivate_bus(sc->id, child, r)); #endif case SYS_RES_MEMORY: case SYS_RES_IOPORT: - return (bus_generic_rman_deactivate_resource(dev, child, type, - rid, r)); + return (bus_generic_rman_deactivate_resource(dev, child, r)); default: - return (bus_generic_deactivate_resource(dev, child, type, rid, - r)); + return (bus_generic_deactivate_resource(dev, child, r)); } } diff --git a/sys/dev/acpica/acpi.c b/sys/dev/acpica/acpi.c index ab34009bf654..df2017e69a86 100644 --- a/sys/dev/acpica/acpi.c +++ b/sys/dev/acpica/acpi.c @@ -1610,23 +1610,19 @@ acpi_delete_resource(device_t bus, device_t child, int type, int rid) } static int -acpi_activate_resource(device_t bus, device_t child, int type, int rid, - struct resource *r) +acpi_activate_resource(device_t bus, device_t child, struct resource *r) { if (acpi_is_resource_managed(bus, r)) - return (bus_generic_rman_activate_resource(bus, child, type, - rid, r)); - return (bus_generic_activate_resource(bus, child, type, rid, r)); + return (bus_generic_rman_activate_resource(bus, child, r)); + return (bus_generic_activate_resource(bus, child, r)); } static int -acpi_deactivate_resource(device_t bus, device_t child, int type, int rid, - struct resource *r) +acpi_deactivate_resource(device_t bus, device_t child, struct resource *r) { if (acpi_is_resource_managed(bus, r)) - return (bus_generic_rman_deactivate_resource(bus, child, type, - rid, r)); - return (bus_generic_deactivate_resource(bus, child, type, rid, r)); + return (bus_generic_rman_deactivate_resource(bus, child, r)); + return (bus_generic_deactivate_resource(bus, child, r)); } static int diff --git a/sys/dev/acpica/acpi_pcib_acpi.c b/sys/dev/acpica/acpi_pcib_acpi.c index 235670076dae..fdf8e84d14e0 100644 --- a/sys/dev/acpica/acpi_pcib_acpi.c +++ b/sys/dev/acpica/acpi_pcib_acpi.c @@ -104,11 +104,9 @@ static int acpi_pcib_acpi_release_resource(device_t dev, device_t child, int type, int rid, struct resource *r); static int acpi_pcib_acpi_activate_resource(device_t dev, - device_t child, int type, int rid, - struct resource *r); + device_t child, struct resource *r); static int acpi_pcib_acpi_deactivate_resource(device_t dev, - device_t child, int type, int rid, - struct resource *r); + device_t child, struct resource *r); #endif #endif static int acpi_pcib_request_feature(device_t pcib, device_t dev, @@ -773,28 +771,27 @@ acpi_pcib_acpi_release_resource(device_t dev, device_t child, int type, int rid, } int -acpi_pcib_acpi_activate_resource(device_t dev, device_t child, int type, int rid, +acpi_pcib_acpi_activate_resource(device_t dev, device_t child, struct resource *r) { struct acpi_hpcib_softc *sc; sc = device_get_softc(dev); - if (type == PCI_RES_BUS) - return (pci_domain_activate_bus(sc->ap_segment, child, rid, r)); - return (bus_generic_activate_resource(dev, child, type, rid, r)); + if (rman_get_type(r) == PCI_RES_BUS) + return (pci_domain_activate_bus(sc->ap_segment, child, r)); + return (bus_generic_activate_resource(dev, child, r)); } int -acpi_pcib_acpi_deactivate_resource(device_t dev, device_t child, int type, - int rid, struct resource *r) +acpi_pcib_acpi_deactivate_resource(device_t dev, device_t child, + struct resource *r) { struct acpi_hpcib_softc *sc; sc = device_get_softc(dev); - if (type == PCI_RES_BUS) - return (pci_domain_deactivate_bus(sc->ap_segment, child, rid, - r)); - return (bus_generic_deactivate_resource(dev, child, type, rid, r)); + if (rman_get_type(r) == PCI_RES_BUS) + return (pci_domain_deactivate_bus(sc->ap_segment, child, r)); + return (bus_generic_deactivate_resource(dev, child, r)); } #endif #endif diff --git a/sys/dev/agp/agp_i810.c b/sys/dev/agp/agp_i810.c index 6ed04297f6c8..a83189ca7bc8 100644 --- a/sys/dev/agp/agp_i810.c +++ b/sys/dev/agp/agp_i810.c @@ -2051,8 +2051,8 @@ agp_i915_chipset_flush_free_page(device_t dev) vga = device_get_parent(dev); if (sc->sc_flush_page_res == NULL) return; - BUS_DEACTIVATE_RESOURCE(device_get_parent(vga), dev, SYS_RES_MEMORY, - sc->sc_flush_page_rid, sc->sc_flush_page_res); + BUS_DEACTIVATE_RESOURCE(device_get_parent(vga), dev, + sc->sc_flush_page_res); BUS_RELEASE_RESOURCE(device_get_parent(vga), dev, SYS_RES_MEMORY, sc->sc_flush_page_rid, sc->sc_flush_page_res); } diff --git a/sys/dev/bhnd/bhndb/bhndb.c b/sys/dev/bhnd/bhndb/bhndb.c index f8a1467894d1..5148c1c8452b 100644 --- a/sys/dev/bhnd/bhndb/bhndb.c +++ b/sys/dev/bhnd/bhndb/bhndb.c @@ -104,13 +104,11 @@ static int bhndb_init_child_resource(struct resource *r, static int bhndb_activate_static_region( struct bhndb_softc *sc, struct bhndb_region *region, - device_t child, int type, int rid, - struct resource *r); + device_t child, struct resource *r); static int bhndb_try_activate_resource( struct bhndb_softc *sc, device_t child, - int type, int rid, struct resource *r, - bool *indirect); + struct resource *r, bool *indirect); static inline struct bhndb_dw_alloc *bhndb_io_resource(struct bhndb_softc *sc, bus_addr_t addr, bus_size_t size, @@ -755,8 +753,7 @@ bhndb_resume_resource(device_t dev, device_t child, int type, device_printf(child, "resume resource type=%d 0x%jx+0x%jx\n", type, rman_get_start(r), rman_get_size(r)); - return (bhndb_try_activate_resource(sc, rman_get_device(r), type, - rman_get_rid(r), r, NULL)); + return (bhndb_try_activate_resource(sc, rman_get_device(r), r, NULL)); } /** @@ -1057,7 +1054,7 @@ bhndb_release_resource(device_t dev, device_t child, int type, int rid, /* Deactivate resources */ if (rman_get_flags(r) & RF_ACTIVE) { - error = BUS_DEACTIVATE_RESOURCE(dev, child, type, rid, r); + error = BUS_DEACTIVATE_RESOURCE(dev, child, r); if (error) return (error); } @@ -1186,8 +1183,7 @@ bhndb_init_child_resource(struct resource *r, */ static int bhndb_activate_static_region(struct bhndb_softc *sc, - struct bhndb_region *region, device_t child, int type, int rid, - struct resource *r) + struct bhndb_region *region, device_t child, struct resource *r) { struct resource *bridge_res; const struct bhndb_regwin *win; @@ -1287,8 +1283,6 @@ bhndb_retain_dynamic_window(struct bhndb_softc *sc, struct resource *r) * * @param sc The bhndb driver state. * @param child The child holding ownership of @p r. - * @param type The type of the resource to be activated. - * @param rid The resource ID of @p r. * @param r The resource to be activated * @param[out] indirect On error and if not NULL, will be set to 'true' if * the caller should instead use an indirect resource mapping. @@ -1297,21 +1291,22 @@ bhndb_retain_dynamic_window(struct bhndb_softc *sc, struct resource *r) * @retval non-zero activation failed. */ static int -bhndb_try_activate_resource(struct bhndb_softc *sc, device_t child, int type, - int rid, struct resource *r, bool *indirect) +bhndb_try_activate_resource(struct bhndb_softc *sc, device_t child, + struct resource *r, bool *indirect) { struct bhndb_region *region; struct bhndb_dw_alloc *dwa; bhndb_priority_t dw_priority; rman_res_t r_start, r_size; rman_res_t parent_offset; - int error; + int error, type; BHNDB_LOCK_ASSERT(sc, MA_NOTOWNED); if (indirect != NULL) *indirect = false; + type = rman_get_type(r); switch (type) { case SYS_RES_IRQ: /* IRQ resources are always directly mapped */ @@ -1367,8 +1362,7 @@ bhndb_try_activate_resource(struct bhndb_softc *sc, device_t child, int type, /* Prefer static mappings over consuming a dynamic windows. */ if (region && region->static_regwin) { - error = bhndb_activate_static_region(sc, region, child, type, - rid, r); + error = bhndb_activate_static_region(sc, region, child, r); if (error) device_printf(sc->dev, "static window allocation " "for 0x%llx-0x%llx failed\n", @@ -1425,41 +1419,40 @@ failed: * Default bhndb(4) implementation of BUS_ACTIVATE_RESOURCE(). */ static int -bhndb_activate_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +bhndb_activate_resource(device_t dev, device_t child, struct resource *r) { struct bhndb_softc *sc = device_get_softc(dev); /* Delegate directly to our parent device's bus if the requested * resource type isn't handled locally. */ - if (bhndb_get_rman(sc, child, type) == NULL) { + if (bhndb_get_rman(sc, child, rman_get_type(r)) == NULL) { return (BUS_ACTIVATE_RESOURCE(device_get_parent(sc->parent_dev), - child, type, rid, r)); + child, r)); } - return (bhndb_try_activate_resource(sc, child, type, rid, r, NULL)); + return (bhndb_try_activate_resource(sc, child, r, NULL)); } /** * Default bhndb(4) implementation of BUS_DEACTIVATE_RESOURCE(). */ static int -bhndb_deactivate_resource(device_t dev, device_t child, int type, - int rid, struct resource *r) +bhndb_deactivate_resource(device_t dev, device_t child, struct resource *r) { struct bhndb_dw_alloc *dwa; struct bhndb_softc *sc; struct rman *rm; - int error; + int error, type; sc = device_get_softc(dev); + type = rman_get_type(r); /* Delegate directly to our parent device's bus if the requested * resource type isn't handled locally. */ rm = bhndb_get_rman(sc, child, type); if (rm == NULL) { return (BUS_DEACTIVATE_RESOURCE( - device_get_parent(sc->parent_dev), child, type, rid, r)); + device_get_parent(sc->parent_dev), child, r)); } /* Mark inactive */ @@ -1534,7 +1527,7 @@ bhndb_activate_bhnd_resource(device_t dev, device_t child, /* Delegate directly to BUS_ACTIVATE_RESOURCE() if the requested * resource type isn't handled locally. */ if (bhndb_get_rman(sc, child, type) == NULL) { - error = BUS_ACTIVATE_RESOURCE(dev, child, type, rid, r->res); + error = BUS_ACTIVATE_RESOURCE(dev, child, r->res); if (error == 0) r->direct = true; return (error); @@ -1574,8 +1567,7 @@ bhndb_activate_bhnd_resource(device_t dev, device_t child, } /* Attempt direct activation */ - error = bhndb_try_activate_resource(sc, child, type, rid, r->res, - &indirect); + error = bhndb_try_activate_resource(sc, child, r->res, &indirect); if (!error) { r->direct = true; } else if (indirect) { @@ -1615,7 +1607,7 @@ bhndb_deactivate_bhnd_resource(device_t dev, device_t child, ("RF_ACTIVE not set on direct resource")); /* Perform deactivation */ - error = BUS_DEACTIVATE_RESOURCE(dev, child, type, rid, r->res); + error = BUS_DEACTIVATE_RESOURCE(dev, child, r->res); if (!error) r->direct = false; diff --git a/sys/dev/bhnd/cores/chipc/chipc.c b/sys/dev/bhnd/cores/chipc/chipc.c index 2d1440e5c987..bdba61a2b942 100644 --- a/sys/dev/bhnd/cores/chipc/chipc.c +++ b/sys/dev/bhnd/cores/chipc/chipc.c @@ -124,8 +124,8 @@ static int chipc_enable_sprom_pins(struct chipc_softc *sc); static void chipc_disable_sprom_pins(struct chipc_softc *sc); static int chipc_try_activate_resource(device_t dev, - device_t child, int type, int rid, - struct resource *r, bool req_direct); + device_t child, struct resource *r, + bool req_direct); static int chipc_init_rman(struct chipc_softc *sc); static void chipc_free_rman(struct chipc_softc *sc); @@ -949,16 +949,14 @@ chipc_adjust_resource(device_t dev, device_t child, * * @param sc Driver instance state. * @param child Requesting child device. - * @param type resource type of @p r. - * @param rid resource id of @p r * @param r resource to be activated. * @param req_direct If true, failure to allocate a direct bhnd resource * will be treated as an error. If false, the resource will not be marked * as RF_ACTIVE if bhnd direct resource allocation fails. */ static int -chipc_try_activate_resource(device_t dev, device_t child, int type, - int rid, struct resource *r, bool req_direct) +chipc_try_activate_resource(device_t dev, device_t child, + struct resource *r, bool req_direct) { struct chipc_softc *sc = device_get_softc(dev); struct rman *rm; @@ -967,7 +965,7 @@ chipc_try_activate_resource(device_t dev, device_t child, int type, rman_res_t r_start, r_end, r_size; int error; - rm = chipc_get_rman(dev, type, rman_get_flags(r)); + rm = chipc_get_rman(dev, rman_get_type(r), rman_get_flags(r)); if (rm == NULL || !rman_is_region_manager(r, rm)) return (EINVAL); @@ -1024,8 +1022,7 @@ chipc_activate_bhnd_resource(device_t dev, device_t child, int type, } /* Try activating the chipc region resource */ - error = chipc_try_activate_resource(dev, child, type, rid, r->res, - false); + error = chipc_try_activate_resource(dev, child, r->res, false); if (error) return (error); @@ -1038,28 +1035,26 @@ chipc_activate_bhnd_resource(device_t dev, device_t child, int type, } static int -chipc_activate_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +chipc_activate_resource(device_t dev, device_t child, struct resource *r) { struct rman *rm; /* Delegate non-locally managed resources to parent */ - rm = chipc_get_rman(dev, type, rman_get_flags(r)); + rm = chipc_get_rman(dev, rman_get_type(r), rman_get_flags(r)); if (rm == NULL || !rman_is_region_manager(r, rm)) { - return (bus_generic_activate_resource(dev, child, type, rid, - r)); + return (bus_generic_activate_resource(dev, child, r)); } /* Try activating the chipc region-based resource */ - return (chipc_try_activate_resource(dev, child, type, rid, r, true)); + return (chipc_try_activate_resource(dev, child, r, true)); } /** * Default bhndb(4) implementation of BUS_DEACTIVATE_RESOURCE(). */ static int -chipc_deactivate_resource(device_t dev, device_t child, int type, - int rid, struct resource *r) +chipc_deactivate_resource(device_t dev, device_t child, + struct resource *r) { struct chipc_softc *sc; struct chipc_region *cr; @@ -1069,10 +1064,9 @@ chipc_deactivate_resource(device_t dev, device_t child, int type, sc = device_get_softc(dev); /* Handled by parent bus? */ - rm = chipc_get_rman(dev, type, rman_get_flags(r)); + rm = chipc_get_rman(dev, rman_get_type(r), rman_get_flags(r)); if (rm == NULL || !rman_is_region_manager(r, rm)) { - return (bus_generic_deactivate_resource(dev, child, type, rid, - r)); + return (bus_generic_deactivate_resource(dev, child, r)); } /* Find the corresponding chipc region */ diff --git a/sys/dev/bhnd/cores/usb/bhnd_usb.c b/sys/dev/bhnd/cores/usb/bhnd_usb.c index 68701df14c50..fa9e6d7ec31a 100644 --- a/sys/dev/bhnd/cores/usb/bhnd_usb.c +++ b/sys/dev/bhnd/cores/usb/bhnd_usb.c @@ -345,23 +345,19 @@ bhnd_usb_release_resource(device_t dev, device_t child, int type, } static int -bhnd_usb_activate_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +bhnd_usb_activate_resource(device_t dev, device_t child, struct resource *r) { if (type != SYS_RES_MEMORY) - return (bus_generic_activate_resource(dev, child, type, rid, - r)); - return (bus_generic_rman_activate_resource(dev, child, type, rid, r)); + return (bus_generic_activate_resource(dev, child, r)); + return (bus_generic_rman_activate_resource(dev, child, r)); } static int -bhnd_usb_deactivate_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +bhnd_usb_deactivate_resource(device_t dev, device_t child, struct resource *r) { if (type != SYS_RES_MEMORY) - return (bus_generic_deactivate_resource(dev, child, type, rid, - r)); - return (bus_generic_rman_deactivate_resource(dev, child, type, rid, r)); + return (bus_generic_deactivate_resource(dev, child, r)); + return (bus_generic_rman_deactivate_resource(dev, child, r)); } static int diff --git a/sys/dev/dpaa/fman.c b/sys/dev/dpaa/fman.c index 7c8122a03ce7..2364df0be801 100644 --- a/sys/dev/dpaa/fman.c +++ b/sys/dev/dpaa/fman.c @@ -86,8 +86,7 @@ const uint32_t fman_firmware[] = FMAN_UC_IMG; const uint32_t fman_firmware_size = sizeof(fman_firmware); int -fman_activate_resource(device_t bus, device_t child, int type, int rid, - struct resource *res) +fman_activate_resource(device_t bus, device_t child, struct resource *res) { struct fman_softc *sc; bus_space_tag_t bt; @@ -95,7 +94,7 @@ fman_activate_resource(device_t bus, device_t child, int type, int rid, int i, rv; sc = device_get_softc(bus); - if (type != SYS_RES_IRQ) { + if (rman_get_type(res) != SYS_RES_IRQ) { for (i = 0; i < sc->sc_base.nranges; i++) { if (rman_is_region_manager(res, &sc->rman) != 0) { bt = rman_get_bustag(sc->mem_res); @@ -113,7 +112,7 @@ fman_activate_resource(device_t bus, device_t child, int type, int rid, } return (EINVAL); } - return (bus_generic_activate_resource(bus, child, type, rid, res)); + return (bus_generic_activate_resource(bus, child, res)); } int diff --git a/sys/dev/dpaa/fman.h b/sys/dev/dpaa/fman.h index c7b57c60171d..b201b9fd9355 100644 --- a/sys/dev/dpaa/fman.h +++ b/sys/dev/dpaa/fman.h @@ -56,7 +56,7 @@ struct fman_softc { struct resource * fman_alloc_resource(device_t bus, device_t child, int type, int *rid, rman_res_t start, rman_res_t end, rman_res_t count, u_int flags); int fman_activate_resource(device_t bus, device_t child, - int type, int rid, struct resource *res); + struct resource *res); int fman_release_resource(device_t bus, device_t child, int type, int rid, struct resource *res); int fman_attach(device_t dev); diff --git a/sys/dev/dpaa2/dpaa2_mc.c b/sys/dev/dpaa2/dpaa2_mc.c index 0dbb282399ae..3e0920cbf8a5 100644 --- a/sys/dev/dpaa2/dpaa2_mc.c +++ b/sys/dev/dpaa2/dpaa2_mc.c @@ -369,29 +369,25 @@ dpaa2_mc_release_resource(device_t mcdev, device_t child, int type, int rid, } int -dpaa2_mc_activate_resource(device_t mcdev, device_t child, int type, int rid, - struct resource *r) +dpaa2_mc_activate_resource(device_t mcdev, device_t child, struct resource *r) { struct rman *rm; - rm = dpaa2_mc_rman(mcdev, type, rman_get_flags(r)); + rm = dpaa2_mc_rman(mcdev, rman_get_type(r), rman_get_flags(r)); if (rm) - return (bus_generic_rman_activate_resource(mcdev, child, type, - rid, r)); - return (bus_generic_activate_resource(mcdev, child, type, rid, r)); + return (bus_generic_rman_activate_resource(mcdev, child, r)); + return (bus_generic_activate_resource(mcdev, child, r)); } int -dpaa2_mc_deactivate_resource(device_t mcdev, device_t child, int type, int rid, - struct resource *r) +dpaa2_mc_deactivate_resource(device_t mcdev, device_t child, struct resource *r) { struct rman *rm; - rm = dpaa2_mc_rman(mcdev, type, rman_get_flags(r)); + rm = dpaa2_mc_rman(mcdev, rman_get_type(r), rman_get_flags(r)); if (rm) - return (bus_generic_rman_deactivate_resource(mcdev, child, type, - rid, r)); - return (bus_generic_deactivate_resource(mcdev, child, type, rid, r)); + return (bus_generic_rman_deactivate_resource(mcdev, child, r)); + return (bus_generic_deactivate_resource(mcdev, child, r)); } /* diff --git a/sys/dev/dpaa2/dpaa2_mc.h b/sys/dev/dpaa2/dpaa2_mc.h index 23b18f8d2ca6..7af3b2a4eb24 100644 --- a/sys/dev/dpaa2/dpaa2_mc.h +++ b/sys/dev/dpaa2/dpaa2_mc.h @@ -187,10 +187,10 @@ int dpaa2_mc_adjust_resource(device_t mcdev, device_t child, struct resource *r, rman_res_t start, rman_res_t end); int dpaa2_mc_release_resource(device_t mcdev, device_t child, int type, int rid, struct resource *r); -int dpaa2_mc_activate_resource(device_t mcdev, device_t child, int type, - int rid, struct resource *r); -int dpaa2_mc_deactivate_resource(device_t mcdev, device_t child, int type, - int rid, struct resource *r); +int dpaa2_mc_activate_resource(device_t mcdev, device_t child, + struct resource *r); +int dpaa2_mc_deactivate_resource(device_t mcdev, device_t child, + struct resource *r); /* For pseudo-pcib interface. */ diff --git a/sys/dev/exca/exca.c b/sys/dev/exca/exca.c index 5a5a68b7dc62..98e0ffdf9d18 100644 --- a/sys/dev/exca/exca.c +++ b/sys/dev/exca/exca.c @@ -811,18 +811,18 @@ exca_removal(struct exca_softc *exca) } int -exca_activate_resource(struct exca_softc *exca, device_t child, int type, - int rid, struct resource *res) +exca_activate_resource(struct exca_softc *exca, device_t child, + struct resource *res) { int err; if (rman_get_flags(res) & RF_ACTIVE) return (0); err = BUS_ACTIVATE_RESOURCE(device_get_parent(exca->dev), child, - type, rid, res); + res); if (err) return (err); - switch (type) { + switch (rman_get_type(res)) { case SYS_RES_IOPORT: err = exca_io_map(exca, PCCARD_WIDTH_AUTO, res); break; @@ -832,16 +832,16 @@ exca_activate_resource(struct exca_softc *exca, device_t child, int type, } if (err) BUS_DEACTIVATE_RESOURCE(device_get_parent(exca->dev), child, - type, rid, res); + res); return (err); } int -exca_deactivate_resource(struct exca_softc *exca, device_t child, int type, - int rid, struct resource *res) +exca_deactivate_resource(struct exca_softc *exca, device_t child, + struct resource *res) { if (rman_get_flags(res) & RF_ACTIVE) { /* if activated */ - switch (type) { + switch (rman_get_type(res)) { case SYS_RES_IOPORT: if (exca_io_unmap_res(exca, res)) return (ENOENT); @@ -853,7 +853,7 @@ exca_deactivate_resource(struct exca_softc *exca, device_t child, int type, } } return (BUS_DEACTIVATE_RESOURCE(device_get_parent(exca->dev), child, - type, rid, res)); + res)); } #if 0 diff --git a/sys/dev/exca/excavar.h b/sys/dev/exca/excavar.h index b301ab5ab26b..07cf2701c4a4 100644 --- a/sys/dev/exca/excavar.h +++ b/sys/dev/exca/excavar.h @@ -121,10 +121,10 @@ void exca_removal(struct exca_softc *); void exca_reset(struct exca_softc *, device_t child); /* bus/device interfaces */ -int exca_activate_resource(struct exca_softc *exca, device_t child, int type, *** 1246 LINES SKIPPED *** From nobody Wed Mar 13 22:13:43 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw4Xl4SrQz5DX31; Wed, 13 Mar 2024 22:13: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 4Tw4Xl3M1rz4qsP; Wed, 13 Mar 2024 22:13:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368023; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Hpo8aP4xt7pZQSjfMs4Que8EOMSyTU7XvfnAhFTSs/U=; b=nfycKw/h3hkg2nrgJKLpBMQZ6vmdBEEYGT3VM6P6MPc/Vpvugcwd3ER6yvQ/9EpBTJ8E6C xaTSC0p0zeVWHATUYWRl0GfOVzYzYYR9L1aMYEef8cP7u5LwpJV2EPgaTr4EcjtCj+s4WS WFNxbjgGYgSiCs3jWeKAWrkhAyF20iRZEiEfGKYf4t0E5mS59NEAPBpNsA1tj+giYBdsE7 vjpfMIKyF8BOzSm9cTGOqfTgW3yTL2xlq041VWQZ5zWJDrr3q+UMi3x+oT6N9oEKEkC2+k 1b4svA0caxMlKCCD4JxuDRb5+OU+hctERQWfo61tD4heCguVvKrMMFy6PrNbsg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710368023; a=rsa-sha256; cv=none; b=bEx835UNa8t7xO3P2hhAq85x577bvBm9z8ySxkl1ntmGzDOoxHKT1aSkGsvWS/zNy7uQO3 +KcnyPL8edkqyAjgmkVufTuhZO62/6BuLMy+lc3NkBR/0AvSgdA8Ufru29Y4X4lxA8Pq7G 4BQfQhko1ky1SXMK3Wxd98zIZ/c71OLKFN28arF63UzbeXylEoUMMYbpKBfO2qwyY9+R6v oSV954koaW1quQRZO3OEObkDyKjtDWPMn0ki9sa7W/XiLxTudMXiFP+3LleIBjCj07Jr/9 ej+OuSiQ5cVR0JaQRgnuZMr21fMA1+2yHz/BAIcjUvCGQE8Nj5sjTNeFh+GdJQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368023; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Hpo8aP4xt7pZQSjfMs4Que8EOMSyTU7XvfnAhFTSs/U=; b=HETGno7yrMYMytjkmjxRza0dAOTPRkBb5xT526yT8T/5Zr5DWLLuBkEsf9x/u3+Xon53SA sCq+8tnJc0UyLAMndQoL+V7Cdnfy+fFW6KrA72F1hONQrcgvIzHVbDcBb/jAKSyClvMhXy j2SDKQCzkU4QivVEq9SAf9lnuAwEGo8FvUKgvOh8NmKa/3Ofrubeai2CWdp9346OEYJiWi DVlexwLTRoq9AtlREXSsXTmAZxgP/7udCleiOA8m0LPwq7Mu4vO5dL+eyb5EOXFZDA3xw/ fcs0FUbZafFtU248vxucVrIeJ3KD+jiPj17uevK/S7cCCkd42/+2EUxoVYHl7g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw4Xl2xglz11hp; Wed, 13 Mar 2024 22:13: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 42DMDhc1075202; Wed, 13 Mar 2024 22:13:43 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DMDhcH075199; Wed, 13 Mar 2024 22:13:43 GMT (envelope-from git) Date: Wed, 13 Mar 2024 22:13:43 GMT Message-Id: <202403132213.42DMDhcH075199@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 9dbf5b0e6876 - main - new-bus: Remove the 'rid' and 'type' arguments from BUS_RELEASE_RESOURCE List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9dbf5b0e6876d8c93890754bcc9c748339de79c0 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=9dbf5b0e6876d8c93890754bcc9c748339de79c0 commit 9dbf5b0e6876d8c93890754bcc9c748339de79c0 Author: John Baldwin AuthorDate: 2024-03-13 22:05:54 +0000 Commit: John Baldwin CommitDate: 2024-03-13 22:05:54 +0000 new-bus: Remove the 'rid' and 'type' arguments from BUS_RELEASE_RESOURCE The public bus_release_resource() API still accepts both forms, but the internal kobj method no longer passes the arguments. Implementations which need the rid or type now use rman_get_rid() or rman_get_type() to fetch the value from the allocated resource. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44131 --- share/man/man9/bus_release_resource.9 | 24 +++-------------- sys/arm/mv/mv_pci.c | 16 +++++------ sys/arm64/cavium/thunder_pcie_fdt.c | 12 ++++----- sys/arm64/cavium/thunder_pcie_pem.c | 16 +++++------ sys/dev/acpica/acpi.c | 7 +++-- sys/dev/acpica/acpi_pcib_acpi.c | 13 +++++---- sys/dev/agp/agp_i810.c | 4 +-- sys/dev/ahci/ahci.c | 7 +++-- sys/dev/ahci/ahci.h | 3 +-- sys/dev/ata/ata-pci.c | 16 +++++------ sys/dev/ata/ata-pci.h | 2 +- sys/dev/atkbdc/atkbdc_isa.c | 9 +++---- sys/dev/bhnd/bhnd_subr.c | 4 +-- sys/dev/bhnd/bhndb/bhndb.c | 9 +++---- sys/dev/bhnd/cores/chipc/chipc.c | 13 +++++---- sys/dev/bhnd/cores/usb/bhnd_usb.c | 14 +++++----- sys/dev/dpaa/fman.c | 12 ++++----- sys/dev/dpaa/fman.h | 3 +-- sys/dev/dpaa2/dpaa2_mc.c | 10 +++---- sys/dev/dpaa2/dpaa2_mc.h | 4 +-- sys/dev/dpaa2/dpaa2_rc.c | 7 +++-- sys/dev/fdt/simplebus.c | 14 +--------- sys/dev/hyperv/pcib/vmbus_pcib.c | 17 ++++++------ sys/dev/mvs/mvs_pci.c | 7 +++-- sys/dev/mvs/mvs_soc.c | 5 ++-- sys/dev/ofw/ofw_pcib.c | 17 +++++------- sys/dev/ofw/ofwbus.c | 7 +++-- sys/dev/pccbb/pccbb.c | 27 +++++++++---------- sys/dev/pccbb/pccbb_pci.c | 9 +++---- sys/dev/pccbb/pccbbvar.h | 2 +- sys/dev/pci/hostb_pci.c | 5 ++-- sys/dev/pci/isa_pci.c | 16 +++++------ sys/dev/pci/pci.c | 21 +++++++-------- sys/dev/pci/pci_host_generic.c | 14 +++++----- sys/dev/pci/pci_host_generic.h | 2 +- sys/dev/pci/pci_iov.c | 16 +++++------ sys/dev/pci/pci_pci.c | 7 +++-- sys/dev/pci/pci_private.h | 6 ++--- sys/dev/pci/pci_subr.c | 2 +- sys/dev/pci/pcib_private.h | 2 +- sys/dev/pci/vga_pci.c | 24 +++++++---------- sys/dev/ppc/ppc.c | 16 +++-------- sys/dev/ppc/ppcvar.h | 3 +-- sys/dev/puc/puc.c | 14 +++------- sys/dev/puc/puc_bfe.h | 2 +- sys/dev/quicc/quicc_bfe.h | 2 +- sys/dev/quicc/quicc_core.c | 6 ++--- sys/dev/scc/scc_bfe.h | 2 +- sys/dev/scc/scc_core.c | 6 ++--- sys/dev/siis/siis.c | 7 +++-- sys/dev/sound/pci/csa.c | 6 ++--- sys/dev/sound/pci/fm801.c | 3 +-- sys/dev/vmd/vmd.c | 10 +++---- sys/isa/isa_common.c | 2 -- sys/isa/isa_common.h | 2 +- sys/kern/bus_if.m | 4 --- sys/kern/subr_bus.c | 51 +++++++++++++++-------------------- sys/powerpc/mpc85xx/isa.c | 5 ++-- sys/powerpc/mpc85xx/lbc.c | 16 ++++------- sys/powerpc/powermac/macio.c | 14 ++++------ sys/powerpc/powermac/uninorth.c | 14 ++++------ sys/powerpc/psim/ata_iobus.c | 6 ++--- sys/powerpc/psim/iobus.c | 13 ++++----- sys/sys/bus.h | 18 ++++++------- sys/x86/include/legacyvar.h | 4 +-- sys/x86/isa/isa.c | 5 ++-- sys/x86/pci/pci_bus.c | 9 +++---- 67 files changed, 260 insertions(+), 405 deletions(-) diff --git a/share/man/man9/bus_release_resource.9 b/share/man/man9/bus_release_resource.9 index 9abc9fca1e6f..5203295a7488 100644 --- a/share/man/man9/bus_release_resource.9 +++ b/share/man/man9/bus_release_resource.9 @@ -26,7 +26,7 @@ .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd May 18, 2000 +.Dd March 13, 2024 .Dt BUS_RELEASE_RESOURCE 9 .Os .Sh NAME @@ -40,7 +40,7 @@ .In sys/rman.h .In machine/resource.h .Ft int -.Fn bus_release_resource "device_t dev" "int type" "int rid" "struct resource *r" +.Fn bus_release_resource "device_t dev" "struct resource *r" .Sh DESCRIPTION Free a resource allocated by .Xr bus_alloc_resource 9 . @@ -53,20 +53,6 @@ for IRQs). .Fa dev is the device that owns the resource. .It -.Fa type -is the type of resource that is released. -It must be of the same type you allocated it as before. -See -.Xr bus_alloc_resource 9 -for valid types. -.It -.Fa rid -is the resource ID of the resource. -The -.Fa rid -value must be the same as the one returned by -.Xr bus_alloc_resource 9 . -.It .Fa r is the pointer to .Va struct resource , @@ -88,12 +74,10 @@ The kernel will panic, if it cannot release the resource. bus_teardown_intr(dev, foosoftc->irqres, foosoftc->irqid); /* release IRQ resource */ - bus_release_resource(dev, SYS_RES_IRQ, foosoftc->irqid, - foosoftc->irqres); + bus_release_resource(dev, foosoftc->irqres); /* release I/O port resource */ - bus_release_resource(dev, SYS_RES_IOPORT, foosoftc->portid, - foosoftc->portres); + bus_release_resource(dev, foosoftc->portres); .Ed .Sh SEE ALSO .Xr bus_alloc_resource 9 , diff --git a/sys/arm/mv/mv_pci.c b/sys/arm/mv/mv_pci.c index a24a71cd4ecf..eb1af5a4e237 100644 --- a/sys/arm/mv/mv_pci.c +++ b/sys/arm/mv/mv_pci.c @@ -347,8 +347,7 @@ static struct resource *mv_pcib_alloc_resource(device_t, device_t, int, int *, rman_res_t, rman_res_t, rman_res_t, u_int); static int mv_pcib_adjust_resource(device_t, device_t, struct resource *, rman_res_t, rman_res_t); -static int mv_pcib_release_resource(device_t, device_t, int, int, - struct resource *); +static int mv_pcib_release_resource(device_t, device_t, struct resource *); static int mv_pcib_activate_resource(device_t, device_t, struct resource *); static int mv_pcib_deactivate_resource(device_t, device_t, struct resource *); static int mv_pcib_map_resource(device_t, device_t, struct resource *, @@ -962,25 +961,22 @@ mv_pcib_adjust_resource(device_t dev, device_t child, } static int -mv_pcib_release_resource(device_t dev, device_t child, int type, int rid, - struct resource *res) +mv_pcib_release_resource(device_t dev, device_t child, struct resource *res) { #ifdef PCI_RES_BUS struct mv_pcib_softc *sc = device_get_softc(dev); #endif - switch (type) { + switch (rman_get_type(res)) { case SYS_RES_IOPORT: case SYS_RES_MEMORY: - return (bus_generic_rman_release_resource(dev, child, type, - rid, res)); + return (bus_generic_rman_release_resource(dev, child, res)); #ifdef PCI_RES_BUS case PCI_RES_BUS: - return (pci_domain_release_bus(sc->ap_segment, child, rid, res)); + return (pci_domain_release_bus(sc->ap_segment, child, res)); #endif default: - return (BUS_RELEASE_RESOURCE(device_get_parent(dev), child, - type, rid, res)); + return (bus_generic_release_resource(dev, child, res)); } } diff --git a/sys/arm64/cavium/thunder_pcie_fdt.c b/sys/arm64/cavium/thunder_pcie_fdt.c index bf00688fb041..f173a28b637d 100644 --- a/sys/arm64/cavium/thunder_pcie_fdt.c +++ b/sys/arm64/cavium/thunder_pcie_fdt.c @@ -57,7 +57,7 @@ static struct resource * thunder_pcie_fdt_alloc_resource(device_t, device_t, int, int *, rman_res_t, rman_res_t, rman_res_t, u_int); static int thunder_pcie_fdt_release_resource(device_t, device_t, - int, int, struct resource*); + struct resource*); #endif static int thunder_pcie_fdt_attach(device_t); static int thunder_pcie_fdt_probe(device_t); @@ -288,14 +288,14 @@ thunder_pcie_fdt_alloc_resource(device_t dev, device_t child, int type, } static int -thunder_pcie_fdt_release_resource(device_t dev, device_t child, int type, - int rid, struct resource *res) +thunder_pcie_fdt_release_resource(device_t dev, device_t child, + struct resource *res) { if ((int)ofw_bus_get_node(child) <= 0) - return (pci_host_generic_core_release_resource(dev, child, type, - rid, res)); + return (pci_host_generic_core_release_resource(dev, child, + res)); - return (bus_generic_release_resource(dev, child, type, rid, res)); + return (bus_generic_release_resource(dev, child, res)); } #endif diff --git a/sys/arm64/cavium/thunder_pcie_pem.c b/sys/arm64/cavium/thunder_pcie_pem.c index f7c3c5ee1c0a..dd6ef14f1a6e 100644 --- a/sys/arm64/cavium/thunder_pcie_pem.c +++ b/sys/arm64/cavium/thunder_pcie_pem.c @@ -149,8 +149,7 @@ static uint32_t thunder_pem_read_config(device_t, u_int, u_int, u_int, u_int, int); static int thunder_pem_read_ivar(device_t, device_t, int, uintptr_t *); static void thunder_pem_release_all(device_t); -static int thunder_pem_release_resource(device_t, device_t, int, int, - struct resource *); +static int thunder_pem_release_resource(device_t, device_t, struct resource *); static struct rman * thunder_pem_get_rman(device_t, int, u_int); static void thunder_pem_slix_s2m_regx_acc_modify(struct thunder_pem_softc *, int, int); @@ -716,28 +715,25 @@ thunder_pem_alloc_resource(device_t dev, device_t child, int type, int *rid, } static int -thunder_pem_release_resource(device_t dev, device_t child, int type, int rid, - struct resource *res) +thunder_pem_release_resource(device_t dev, device_t child, struct resource *res) { device_t parent_dev; #if defined(NEW_PCIB) && defined(PCI_RES_BUS) struct thunder_pem_softc *sc = device_get_softc(dev); #endif - switch (type) { + switch (rman_get_type(res)) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) case PCI_RES_BUS: - return (pci_domain_release_bus(sc->id, child, rid, res)); + return (pci_domain_release_bus(sc->id, child, res)); #endif case SYS_RES_MEMORY: case SYS_RES_IOPORT: - return (bus_generic_rman_release_resource(dev, child, type, - rid, res)); + return (bus_generic_rman_release_resource(dev, child, res)); default: /* Find parent device. On ThunderX we know an exact path. */ parent_dev = device_get_parent(device_get_parent(dev)); - return (BUS_RELEASE_RESOURCE(parent_dev, child, - type, rid, res)); + return (BUS_RELEASE_RESOURCE(parent_dev, child, res)); } } diff --git a/sys/dev/acpica/acpi.c b/sys/dev/acpica/acpi.c index df2017e69a86..ad1af9373fb7 100644 --- a/sys/dev/acpica/acpi.c +++ b/sys/dev/acpica/acpi.c @@ -1580,17 +1580,16 @@ acpi_adjust_resource(device_t bus, device_t child, struct resource *r, } static int -acpi_release_resource(device_t bus, device_t child, int type, int rid, - struct resource *r) +acpi_release_resource(device_t bus, device_t child, struct resource *r) { /* * If this resource belongs to one of our internal managers, * deactivate it and release it to the local pool. */ if (acpi_is_resource_managed(bus, r)) - return (bus_generic_rman_release_resource(bus, child, type, rid, r)); + return (bus_generic_rman_release_resource(bus, child, r)); - return (bus_generic_rl_release_resource(bus, child, type, rid, r)); + return (bus_generic_rl_release_resource(bus, child, r)); } static void diff --git a/sys/dev/acpica/acpi_pcib_acpi.c b/sys/dev/acpica/acpi_pcib_acpi.c index fdf8e84d14e0..4c3d62a66d58 100644 --- a/sys/dev/acpica/acpi_pcib_acpi.c +++ b/sys/dev/acpica/acpi_pcib_acpi.c @@ -101,8 +101,7 @@ static int acpi_pcib_acpi_adjust_resource(device_t dev, rman_res_t start, rman_res_t end); #ifdef PCI_RES_BUS static int acpi_pcib_acpi_release_resource(device_t dev, - device_t child, int type, int rid, - struct resource *r); + device_t child, struct resource *r); static int acpi_pcib_acpi_activate_resource(device_t dev, device_t child, struct resource *r); static int acpi_pcib_acpi_deactivate_resource(device_t dev, @@ -516,7 +515,7 @@ acpi_pcib_acpi_attach(device_t dev) return (ENXIO); } sc->ap_bus = rman_get_start(bus_res); - pci_domain_release_bus(sc->ap_segment, dev, rid, bus_res); + pci_domain_release_bus(sc->ap_segment, dev, bus_res); } } else { /* @@ -759,15 +758,15 @@ acpi_pcib_acpi_adjust_resource(device_t dev, device_t child, #ifdef PCI_RES_BUS int -acpi_pcib_acpi_release_resource(device_t dev, device_t child, int type, int rid, +acpi_pcib_acpi_release_resource(device_t dev, device_t child, struct resource *r) { struct acpi_hpcib_softc *sc; sc = device_get_softc(dev); - if (type == PCI_RES_BUS) - return (pci_domain_release_bus(sc->ap_segment, child, rid, r)); - return (bus_generic_release_resource(dev, child, type, rid, r)); + if (rman_get_type(r) == PCI_RES_BUS) + return (pci_domain_release_bus(sc->ap_segment, child, r)); + return (bus_generic_release_resource(dev, child, r)); } int diff --git a/sys/dev/agp/agp_i810.c b/sys/dev/agp/agp_i810.c index a83189ca7bc8..df977889a9c0 100644 --- a/sys/dev/agp/agp_i810.c +++ b/sys/dev/agp/agp_i810.c @@ -2053,8 +2053,8 @@ agp_i915_chipset_flush_free_page(device_t dev) return; BUS_DEACTIVATE_RESOURCE(device_get_parent(vga), dev, sc->sc_flush_page_res); - BUS_RELEASE_RESOURCE(device_get_parent(vga), dev, SYS_RES_MEMORY, - sc->sc_flush_page_rid, sc->sc_flush_page_res); + BUS_RELEASE_RESOURCE(device_get_parent(vga), dev, + sc->sc_flush_page_res); } static int diff --git a/sys/dev/ahci/ahci.c b/sys/dev/ahci/ahci.c index 27860f9ee570..b1f9c85141bb 100644 --- a/sys/dev/ahci/ahci.c +++ b/sys/dev/ahci/ahci.c @@ -640,16 +640,15 @@ ahci_alloc_resource(device_t dev, device_t child, int type, int *rid, } int -ahci_release_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +ahci_release_resource(device_t dev, device_t child, struct resource *r) { - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: rman_release_resource(r); return (0); case SYS_RES_IRQ: - if (rid != ATA_IRQ_RID) + if (rman_get_rid(r) != ATA_IRQ_RID) return (ENOENT); return (0); } diff --git a/sys/dev/ahci/ahci.h b/sys/dev/ahci/ahci.h index 04d0cccc31f9..8b51b1e0b3ae 100644 --- a/sys/dev/ahci/ahci.h +++ b/sys/dev/ahci/ahci.h @@ -656,8 +656,7 @@ int ahci_setup_interrupt(device_t dev); int ahci_print_child(device_t dev, device_t child); struct resource *ahci_alloc_resource(device_t dev, device_t child, int type, int *rid, rman_res_t start, rman_res_t end, rman_res_t count, u_int flags); -int ahci_release_resource(device_t dev, device_t child, int type, int rid, - struct resource *r); +int ahci_release_resource(device_t dev, device_t child, struct resource *r); int ahci_setup_intr(device_t dev, device_t child, struct resource *irq, int flags, driver_filter_t *filter, driver_intr_t *function, void *argument, void **cookiep); diff --git a/sys/dev/ata/ata-pci.c b/sys/dev/ata/ata-pci.c index 3a2a0f640f62..9cc815150665 100644 --- a/sys/dev/ata/ata-pci.c +++ b/sys/dev/ata/ata-pci.c @@ -273,24 +273,20 @@ ata_pci_alloc_resource(device_t dev, device_t child, int type, int *rid, } int -ata_pci_release_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +ata_pci_release_resource(device_t dev, device_t child, struct resource *r) { + int rid = rman_get_rid(r); + int type = rman_get_type(r); if (device_get_devclass(child) == ata_devclass) { struct ata_pci_controller *controller = device_get_softc(dev); - int unit = ((struct ata_channel *)device_get_softc(child))->unit; if (type == SYS_RES_IOPORT) { switch (rid) { case ATA_IOADDR_RID: - return BUS_RELEASE_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IOPORT, - PCIR_BAR(0) + (unit << 3), r); case ATA_CTLADDR_RID: return BUS_RELEASE_RESOURCE(device_get_parent(dev), dev, - SYS_RES_IOPORT, - PCIR_BAR(1) + (unit << 3), r); + r); default: return ENOENT; } @@ -300,7 +296,7 @@ ata_pci_release_resource(device_t dev, device_t child, int type, int rid, return ENOENT; if (controller->legacy) { return BUS_RELEASE_RESOURCE(device_get_parent(dev), child, - SYS_RES_IRQ, rid, r); + r); } else return 0; } @@ -311,7 +307,7 @@ ata_pci_release_resource(device_t dev, device_t child, int type, int rid, return (0); } else { return (BUS_RELEASE_RESOURCE(device_get_parent(dev), child, - type, rid, r)); + r)); } } return (EINVAL); diff --git a/sys/dev/ata/ata-pci.h b/sys/dev/ata/ata-pci.h index 95e7dd113fec..cad9441a21ae 100644 --- a/sys/dev/ata/ata-pci.h +++ b/sys/dev/ata/ata-pci.h @@ -538,7 +538,7 @@ void ata_pci_write_config(device_t dev, device_t child, int reg, int ata_pci_print_child(device_t dev, device_t child); int ata_pci_child_location(device_t dev, device_t child, struct sbuf *sb); struct resource * ata_pci_alloc_resource(device_t dev, device_t child, int type, int *rid, rman_res_t start, rman_res_t end, rman_res_t count, u_int flags); -int ata_pci_release_resource(device_t dev, device_t child, int type, int rid, struct resource *r); +int ata_pci_release_resource(device_t dev, device_t child, struct resource *r); int ata_pci_setup_intr(device_t dev, device_t child, struct resource *irq, int flags, driver_filter_t *filter, driver_intr_t *function, void *argument, void **cookiep); int ata_pci_teardown_intr(device_t dev, device_t child, struct resource *irq, void *cookie); int ata_pci_ch_attach(device_t dev); diff --git a/sys/dev/atkbdc/atkbdc_isa.c b/sys/dev/atkbdc/atkbdc_isa.c index cb42c8bda40c..2f7b9eceda94 100644 --- a/sys/dev/atkbdc/atkbdc_isa.c +++ b/sys/dev/atkbdc/atkbdc_isa.c @@ -53,7 +53,7 @@ static struct resource *atkbdc_isa_alloc_resource(device_t dev, device_t child, int type, int *rid, rman_res_t start, rman_res_t end, rman_res_t count, u_int flags); static int atkbdc_isa_release_resource(device_t dev, device_t child, - int type, int rid, struct resource *r); + struct resource *r); static device_method_t atkbdc_isa_methods[] = { DEVMETHOD(device_probe, atkbdc_isa_probe), @@ -306,15 +306,14 @@ atkbdc_isa_alloc_resource(device_t dev, device_t child, int type, int *rid, } static int -atkbdc_isa_release_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +atkbdc_isa_release_resource(device_t dev, device_t child, struct resource *r) { atkbdc_softc_t *sc; sc = *(atkbdc_softc_t **)device_get_softc(dev); - if (type == SYS_RES_IRQ && rid == KBDC_RID_KBD && r == sc->irq) + if (r == sc->irq) return (0); - return (bus_generic_rl_release_resource(dev, child, type, rid, r)); + return (bus_generic_rl_release_resource(dev, child, r)); } DRIVER_MODULE(atkbdc, isa, atkbdc_isa_driver, 0, 0); diff --git a/sys/dev/bhnd/bhnd_subr.c b/sys/dev/bhnd/bhnd_subr.c index 44f8ae9cc0a2..0d38c1ca8a24 100644 --- a/sys/dev/bhnd/bhnd_subr.c +++ b/sys/dev/bhnd/bhnd_subr.c @@ -2241,7 +2241,7 @@ bhnd_bus_generic_alloc_resource(device_t dev, device_t child, int type, failed: if (res != NULL) - BUS_RELEASE_RESOURCE(dev, child, type, *rid, res); + BUS_RELEASE_RESOURCE(dev, child, res); free(br, M_BHND); return (NULL); @@ -2259,7 +2259,7 @@ bhnd_bus_generic_release_resource(device_t dev, device_t child, int type, { int error; - if ((error = BUS_RELEASE_RESOURCE(dev, child, type, rid, r->res))) + if ((error = BUS_RELEASE_RESOURCE(dev, child, r->res))) return (error); free(r, M_BHND); diff --git a/sys/dev/bhnd/bhndb/bhndb.c b/sys/dev/bhnd/bhndb/bhndb.c index 5148c1c8452b..af62057690ac 100644 --- a/sys/dev/bhnd/bhndb/bhndb.c +++ b/sys/dev/bhnd/bhndb/bhndb.c @@ -1034,8 +1034,7 @@ bhndb_alloc_resource(device_t dev, device_t child, int type, * Default bhndb(4) implementation of BUS_RELEASE_RESOURCE(). */ static int -bhndb_release_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +bhndb_release_resource(device_t dev, device_t child, struct resource *r) { struct bhndb_softc *sc; struct resource_list_entry *rle; @@ -1047,9 +1046,9 @@ bhndb_release_resource(device_t dev, device_t child, int type, int rid, /* Delegate to our parent device's bus if the requested resource type * isn't handled locally. */ - if (bhndb_get_rman(sc, child, type) == NULL) { + if (bhndb_get_rman(sc, child, rman_get_type(r)) == NULL) { return (BUS_RELEASE_RESOURCE(device_get_parent(sc->parent_dev), - child, type, rid, r)); + child, r)); } /* Deactivate resources */ @@ -1065,7 +1064,7 @@ bhndb_release_resource(device_t dev, device_t child, int type, int rid, if (!passthrough) { /* Clean resource list entry */ rle = resource_list_find(BUS_GET_RESOURCE_LIST(dev, child), - type, rid); + rman_get_type(r), rman_get_rid(r)); if (rle != NULL) rle->res = NULL; } diff --git a/sys/dev/bhnd/cores/chipc/chipc.c b/sys/dev/bhnd/cores/chipc/chipc.c index bdba61a2b942..60cb04400cb0 100644 --- a/sys/dev/bhnd/cores/chipc/chipc.c +++ b/sys/dev/bhnd/cores/chipc/chipc.c @@ -873,8 +873,7 @@ chipc_alloc_resource(device_t dev, device_t child, int type, } static int -chipc_release_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +chipc_release_resource(device_t dev, device_t child, struct resource *r) { struct chipc_softc *sc; struct chipc_region *cr; @@ -885,10 +884,9 @@ chipc_release_resource(device_t dev, device_t child, int type, int rid, sc = device_get_softc(dev); /* Handled by parent bus? */ - rm = chipc_get_rman(dev, type, rman_get_flags(r)); + rm = chipc_get_rman(dev, rman_get_type(r), rman_get_flags(r)); if (rm == NULL || !rman_is_region_manager(r, rm)) { - return (bus_generic_rl_release_resource(dev, child, type, rid, - r)); + return (bus_generic_rl_release_resource(dev, child, r)); } /* Locate the mapping region */ @@ -897,7 +895,7 @@ chipc_release_resource(device_t dev, device_t child, int type, int rid, return (EINVAL); /* Deactivate resources */ - error = bus_generic_rman_release_resource(dev, child, type, rid, r); + error = bus_generic_rman_release_resource(dev, child, r); if (error != 0) return (error); @@ -905,7 +903,8 @@ chipc_release_resource(device_t dev, device_t child, int type, int rid, chipc_release_region(sc, cr, RF_ALLOCATED); /* Clear reference from the resource list entry if exists */ - rle = resource_list_find(BUS_GET_RESOURCE_LIST(dev, child), type, rid); + rle = resource_list_find(BUS_GET_RESOURCE_LIST(dev, child), + rman_get_type(r), rman_get_rid(r)); if (rle != NULL) rle->res = NULL; diff --git a/sys/dev/bhnd/cores/usb/bhnd_usb.c b/sys/dev/bhnd/cores/usb/bhnd_usb.c index fa9e6d7ec31a..7a86db79731f 100644 --- a/sys/dev/bhnd/cores/usb/bhnd_usb.c +++ b/sys/dev/bhnd/cores/usb/bhnd_usb.c @@ -69,8 +69,7 @@ static struct resource * bhnd_usb_alloc_resource(device_t bus, rman_res_t start, rman_res_t end, rman_res_t count, u_int flags); static int bhnd_usb_release_resource(device_t dev, - device_t child, int type, int rid, - struct resource *r); + device_t child, struct resource *r); static struct resource_list * bhnd_usb_get_reslist(device_t dev, device_t child); @@ -311,8 +310,8 @@ bhnd_usb_get_reslist(device_t dev, device_t child) } static int -bhnd_usb_release_resource(device_t dev, device_t child, int type, - int rid, struct resource *r) +bhnd_usb_release_resource(device_t dev, device_t child, + struct resource *r) { struct bhnd_usb_softc *sc; struct resource_list_entry *rle; @@ -325,18 +324,17 @@ bhnd_usb_release_resource(device_t dev, device_t child, int type, /* Delegate to our parent device's bus if the requested resource type * isn't handled locally. */ if (type != SYS_RES_MEMORY) { - return (bus_generic_rl_release_resource(dev, child, type, rid, - r)); + return (bus_generic_rl_release_resource(dev, child, r)); } - error = bus_generic_rman_release_resource(dev, child, type, rid, r); + error = bus_generic_rman_release_resource(dev, child, r); if (error != 0) return (error); if (!passthrough) { /* Clean resource list entry */ rle = resource_list_find(BUS_GET_RESOURCE_LIST(dev, child), - type, rid); + rman_get_type(r), rman_get_rid(r)); if (rle != NULL) rle->res = NULL; } diff --git a/sys/dev/dpaa/fman.c b/sys/dev/dpaa/fman.c index 2364df0be801..9dc4ac151789 100644 --- a/sys/dev/dpaa/fman.c +++ b/sys/dev/dpaa/fman.c @@ -116,8 +116,7 @@ fman_activate_resource(device_t bus, device_t child, struct resource *res) } int -fman_release_resource(device_t bus, device_t child, int type, int rid, - struct resource *res) +fman_release_resource(device_t bus, device_t child, struct resource *res) { struct resource_list *rl; struct resource_list_entry *rle; @@ -125,9 +124,9 @@ fman_release_resource(device_t bus, device_t child, int type, int rid, passthrough = (device_get_parent(child) != bus); rl = BUS_GET_RESOURCE_LIST(bus, child); - if (type != SYS_RES_IRQ) { + if (rman_get_type(res) != SYS_RES_IRQ) { if ((rman_get_flags(res) & RF_ACTIVE) != 0 ){ - rv = bus_deactivate_resource(child, type, rid, res); + rv = bus_deactivate_resource(child, res); if (rv != 0) return (rv); } @@ -135,7 +134,8 @@ fman_release_resource(device_t bus, device_t child, int type, int rid, if (rv != 0) return (rv); if (!passthrough) { - rle = resource_list_find(rl, type, rid); + rle = resource_list_find(rl, rman_get_type(res), + rman_get_rid(res)); KASSERT(rle != NULL, ("%s: resource entry not found!", __func__)); KASSERT(rle->res != NULL, @@ -144,7 +144,7 @@ fman_release_resource(device_t bus, device_t child, int type, int rid, } return (0); } - return (resource_list_release(rl, bus, child, type, rid, res)); + return (resource_list_release(rl, bus, child, res)); } struct resource * diff --git a/sys/dev/dpaa/fman.h b/sys/dev/dpaa/fman.h index b201b9fd9355..4c30a633ae3e 100644 --- a/sys/dev/dpaa/fman.h +++ b/sys/dev/dpaa/fman.h @@ -57,8 +57,7 @@ struct resource * fman_alloc_resource(device_t bus, device_t child, int type, int *rid, rman_res_t start, rman_res_t end, rman_res_t count, u_int flags); int fman_activate_resource(device_t bus, device_t child, struct resource *res); -int fman_release_resource(device_t bus, device_t child, int type, int rid, - struct resource *res); +int fman_release_resource(device_t bus, device_t child, struct resource *res); int fman_attach(device_t dev); int fman_detach(device_t dev); int fman_suspend(device_t dev); diff --git a/sys/dev/dpaa2/dpaa2_mc.c b/sys/dev/dpaa2/dpaa2_mc.c index 3e0920cbf8a5..66867a18068c 100644 --- a/sys/dev/dpaa2/dpaa2_mc.c +++ b/sys/dev/dpaa2/dpaa2_mc.c @@ -356,16 +356,14 @@ dpaa2_mc_adjust_resource(device_t mcdev, device_t child, } int -dpaa2_mc_release_resource(device_t mcdev, device_t child, int type, int rid, - struct resource *r) +dpaa2_mc_release_resource(device_t mcdev, device_t child, struct resource *r) { struct rman *rm; - rm = dpaa2_mc_rman(mcdev, type, rman_get_flags(r)); + rm = dpaa2_mc_rman(mcdev, rman_get_type(r), rman_get_flags(r)); if (rm) - return (bus_generic_rman_release_resource(mcdev, child, type, - rid, r)); - return (bus_generic_release_resource(mcdev, child, type, rid, r)); + return (bus_generic_rman_release_resource(mcdev, child, r)); + return (bus_generic_release_resource(mcdev, child, r)); } int diff --git a/sys/dev/dpaa2/dpaa2_mc.h b/sys/dev/dpaa2/dpaa2_mc.h index 7af3b2a4eb24..5ddac7aa2720 100644 --- a/sys/dev/dpaa2/dpaa2_mc.h +++ b/sys/dev/dpaa2/dpaa2_mc.h @@ -185,8 +185,8 @@ struct resource * dpaa2_mc_alloc_resource(device_t mcdev, device_t child, u_int flags); int dpaa2_mc_adjust_resource(device_t mcdev, device_t child, struct resource *r, rman_res_t start, rman_res_t end); -int dpaa2_mc_release_resource(device_t mcdev, device_t child, int type, - int rid, struct resource *r); +int dpaa2_mc_release_resource(device_t mcdev, device_t child, + struct resource *r); int dpaa2_mc_activate_resource(device_t mcdev, device_t child, struct resource *r); int dpaa2_mc_deactivate_resource(device_t mcdev, device_t child, diff --git a/sys/dev/dpaa2/dpaa2_rc.c b/sys/dev/dpaa2/dpaa2_rc.c index d14187e0c58f..49ed8944b64b 100644 --- a/sys/dev/dpaa2/dpaa2_rc.c +++ b/sys/dev/dpaa2/dpaa2_rc.c @@ -263,19 +263,18 @@ dpaa2_rc_alloc_resource(device_t rcdev, device_t child, int type, int *rid, } static int -dpaa2_rc_release_resource(device_t rcdev, device_t child, int type, int rid, - struct resource *r) +dpaa2_rc_release_resource(device_t rcdev, device_t child, struct resource *r) { struct resource_list *rl; struct dpaa2_devinfo *dinfo; if (device_get_parent(child) != rcdev) return (BUS_RELEASE_RESOURCE(device_get_parent(rcdev), child, - type, rid, r)); + r)); dinfo = device_get_ivars(child); rl = &dinfo->resources; - return (resource_list_release(rl, rcdev, child, type, rid, r)); + return (resource_list_release(rl, rcdev, child, r)); } static void diff --git a/sys/dev/fdt/simplebus.c b/sys/dev/fdt/simplebus.c index 8069d3af69cf..37db238f2108 100644 --- a/sys/dev/fdt/simplebus.c +++ b/sys/dev/fdt/simplebus.c @@ -46,8 +46,6 @@ static int simplebus_probe(device_t dev); static struct resource *simplebus_alloc_resource(device_t, device_t, int, int *, rman_res_t, rman_res_t, rman_res_t, u_int); -static int simplebus_release_resource(device_t bus, device_t child, - int type, int rid, struct resource *r); static void simplebus_probe_nomatch(device_t bus, device_t child); static int simplebus_print_child(device_t bus, device_t child); static device_t simplebus_add_child(device_t dev, u_int order, @@ -85,7 +83,7 @@ static device_method_t simplebus_methods[] = { DEVMETHOD(bus_setup_intr, bus_generic_setup_intr), DEVMETHOD(bus_teardown_intr, bus_generic_teardown_intr), DEVMETHOD(bus_alloc_resource, simplebus_alloc_resource), - DEVMETHOD(bus_release_resource, simplebus_release_resource), + DEVMETHOD(bus_release_resource, bus_generic_release_resource), DEVMETHOD(bus_activate_resource, bus_generic_activate_resource), DEVMETHOD(bus_deactivate_resource, bus_generic_deactivate_resource), DEVMETHOD(bus_adjust_resource, bus_generic_adjust_resource), @@ -485,16 +483,6 @@ simplebus_alloc_resource(device_t bus, device_t child, int type, int *rid, count, flags)); } -static int -simplebus_release_resource(device_t bus, device_t child, int type, int rid, - struct resource *r) -{ - - if (type == SYS_RES_IOPORT) - type = SYS_RES_MEMORY; - return (bus_generic_release_resource(bus, child, type, rid, r)); -} - static int simplebus_print_res(struct simplebus_devinfo *di) { diff --git a/sys/dev/hyperv/pcib/vmbus_pcib.c b/sys/dev/hyperv/pcib/vmbus_pcib.c index fd8a7feae984..f6237535cce3 100644 --- a/sys/dev/hyperv/pcib/vmbus_pcib.c +++ b/sys/dev/hyperv/pcib/vmbus_pcib.c @@ -1725,19 +1725,18 @@ vmbus_pcib_adjust_resource(device_t dev, device_t child, } static int -vmbus_pcib_release_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +vmbus_pcib_release_resource(device_t dev, device_t child, struct resource *r) { struct vmbus_pcib_softc *sc = device_get_softc(dev); - if (type == PCI_RES_BUS) - return (pci_domain_release_bus(sc->hbus->pci_domain, child, - rid, r)); - - if (type == SYS_RES_IOPORT) + switch (rman_get_type(r)) { + case PCI_RES_BUS: + return (pci_domain_release_bus(sc->hbus->pci_domain, child, r)); + case SYS_RES_IOPORT: return (EINVAL); - - return (bus_generic_release_resource(dev, child, type, rid, r)); + default: + return (bus_generic_release_resource(dev, child, r)); + } } static int diff --git a/sys/dev/mvs/mvs_pci.c b/sys/dev/mvs/mvs_pci.c index 9578c5ea5e7e..be9351403a0d 100644 --- a/sys/dev/mvs/mvs_pci.c +++ b/sys/dev/mvs/mvs_pci.c @@ -422,16 +422,15 @@ mvs_alloc_resource(device_t dev, device_t child, int type, int *rid, } static int -mvs_release_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +mvs_release_resource(device_t dev, device_t child, struct resource *r) { - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: rman_release_resource(r); return (0); case SYS_RES_IRQ: - if (rid != ATA_IRQ_RID) + if (rman_get_rid(r) != ATA_IRQ_RID) return ENOENT; return (0); } diff --git a/sys/dev/mvs/mvs_soc.c b/sys/dev/mvs/mvs_soc.c index 36b3f5222cdc..696b65d54359 100644 --- a/sys/dev/mvs/mvs_soc.c +++ b/sys/dev/mvs/mvs_soc.c @@ -366,11 +366,10 @@ mvs_alloc_resource(device_t dev, device_t child, int type, int *rid, } static int -mvs_release_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) +mvs_release_resource(device_t dev, device_t child, struct resource *r) { - switch (type) { + switch (rman_get_type(r)) { case SYS_RES_MEMORY: rman_release_resource(r); return (0); diff --git a/sys/dev/ofw/ofw_pcib.c b/sys/dev/ofw/ofw_pcib.c index f9f17b21cdc2..ebc09fccd93e 100644 --- a/sys/dev/ofw/ofw_pcib.c +++ b/sys/dev/ofw/ofw_pcib.c @@ -67,8 +67,7 @@ static struct rman *ofw_pcib_get_rman(device_t, int, u_int); static struct resource * ofw_pcib_alloc_resource(device_t, device_t, int, int *, rman_res_t, rman_res_t, rman_res_t, u_int); -static int ofw_pcib_release_resource(device_t, device_t, int, int, - struct resource *); +static int ofw_pcib_release_resource(device_t, device_t, struct resource *); static int ofw_pcib_activate_resource(device_t, device_t, struct resource *); static int ofw_pcib_deactivate_resource(device_t, device_t, struct resource *); static int ofw_pcib_adjust_resource(device_t, device_t, @@ -444,27 +443,23 @@ ofw_pcib_alloc_resource(device_t bus, device_t child, int type, int *rid, } static int -ofw_pcib_release_resource(device_t bus, device_t child, int type, int rid, - struct resource *res) +ofw_pcib_release_resource(device_t bus, device_t child, struct resource *res) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) struct ofw_pci_softc *sc; sc = device_get_softc(bus); #endif - switch (type) { + switch (rman_get_type(res)) { #if defined(NEW_PCIB) && defined(PCI_RES_BUS) case PCI_RES_BUS: - return (pci_domain_release_bus(sc->sc_pci_domain, child, rid, - res)); + return (pci_domain_release_bus(sc->sc_pci_domain, child, res)); #endif case SYS_RES_MEMORY: case SYS_RES_IOPORT: - return (bus_generic_rman_release_resource(bus, child, type, rid, - res)); + return (bus_generic_rman_release_resource(bus, child, res)); default: - return (bus_generic_release_resource(bus, child, type, rid, - res)); + return (bus_generic_release_resource(bus, child, res)); } } diff --git a/sys/dev/ofw/ofwbus.c b/sys/dev/ofw/ofwbus.c index 48e865b5b52d..51e6072ad4ba 100644 --- a/sys/dev/ofw/ofwbus.c +++ b/sys/dev/ofw/ofwbus.c @@ -170,8 +170,7 @@ ofwbus_alloc_resource(device_t bus, device_t child, int type, int *rid, } static int -ofwbus_release_resource(device_t bus, device_t child, int type, - int rid, struct resource *r) +ofwbus_release_resource(device_t bus, device_t child, struct resource *r) { struct resource_list_entry *rle; bool passthrough; @@ -180,11 +179,11 @@ ofwbus_release_resource(device_t bus, device_t child, int type, if (!passthrough) { /* Clean resource list entry */ rle = resource_list_find(BUS_GET_RESOURCE_LIST(bus, child), - type, rid); + rman_get_type(r), rman_get_rid(r)); if (rle != NULL) rle->res = NULL; } /* Let nexus handle the release. */ - return (bus_generic_release_resource(bus, child, type, rid, r)); + return (bus_generic_release_resource(bus, child, r)); } diff --git a/sys/dev/pccbb/pccbb.c b/sys/dev/pccbb/pccbb.c index 302b9d75c864..c40261be4724 100644 --- a/sys/dev/pccbb/pccbb.c +++ b/sys/dev/pccbb/pccbb.c @@ -162,7 +162,7 @@ static struct resource *cbb_cardbus_alloc_resource(device_t brdev, device_t child, int type, int *rid, rman_res_t start, rman_res_t end, rman_res_t count, u_int flags); static int cbb_cardbus_release_resource(device_t brdev, device_t child, - int type, int rid, struct resource *res); + struct resource *res); static int cbb_cardbus_power_enable_socket(device_t brdev, device_t child); static int cbb_cardbus_power_disable_socket(device_t brdev, @@ -1263,20 +1263,20 @@ cbb_cardbus_alloc_resource(device_t brdev, device_t child, int type, } static int -cbb_cardbus_release_resource(device_t brdev, device_t child, int type, - int rid, struct resource *res) +cbb_cardbus_release_resource(device_t brdev, device_t child, + struct resource *res) { struct cbb_softc *sc = device_get_softc(brdev); int error; if (rman_get_flags(res) & RF_ACTIVE) { - error = bus_deactivate_resource(child, type, rid, res); + error = bus_deactivate_resource(child, res); if (error != 0) return (error); } cbb_remove_res(sc, res); *** 1285 LINES SKIPPED *** From nobody Wed Mar 13 22:16:03 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw4bR3SSFz5DXYX; Wed, 13 Mar 2024 22:16: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 4Tw4bR2qJwz4tSV; Wed, 13 Mar 2024 22:16:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368163; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=q/m+zH3e0Yx28xxGxg4Upz2SSKcEC3Afhm7BYTawtms=; b=xNDVNX0s1qfJkjEi3VKx60AcKBJt/PtRJTNLWjmXDa3NozGNlM3Kd9dvucxIKnFkryDb/V W8Gkim1OLqnVv0C0iDIu6v1p3OPjVAUK67urYQGSG2/a8q1yDOukoKx9Cnak8WK2LGHGQp AL8Qtn0V7SqC5wNsFdNhRbAyfnY/EmXe56aOX4kh2YYuWB0SA3IciwFPM5QVPXQYZ0di9T iOzxwFsYv/MEPynzSzdz21y1u2LUr88+7ofA22AKrahfRZokgAPrVOeYfNvkTTaB17144m y0SlJM2ra45hZw0/OY2bgeM6mUNvKbUXONp8xa463bN2sruAnU6Z88QFT7/4cA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710368163; a=rsa-sha256; cv=none; b=wTH+KtRCV3l7UpUE3fBrKuaQyVhH0f3y0xeJZJIc5QrU3jFMXyDA2WQo1lHQomqjqh8tqs 52G8wkbNen5Ge7kEonGcRcpu4nQEOYMGf9tEDQ8OI9ahIWoQqtGExovd1fNjjoEKDAr056 hzcf/5U75eowSl1o/gVrOrMgqV+yzZLen1RVd/jxLZT5eNFN+jb2PgbHNYOZQFS2nav4vE K5Y5ULZTPGKHYz36h4phVD3vX4cDnUMUQg8dUQtlYZM6xSCFMQ81GGbXoJI1LbnccOAVDK c3GV+TEx0ir+1zZw8QhtAW0DMvJtu471eVyzlb5u1MRCzAXuysShKHhaAffg1g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710368163; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=q/m+zH3e0Yx28xxGxg4Upz2SSKcEC3Afhm7BYTawtms=; b=FVFh4BabvzTaBBr9rO2RqtZjmSlajQEHCx52Gbk/ONdVHXXe5r+hjuaQZC+t9P/IhllIZk HNvFR0XSV4eR3KKz2qtBWnpS7QsHGom203BXy1Z+k9PLLdFVCVkHaF16IkLYb66fC97RBi 4iQ51NZbDjX222QA+8wdFJOhJ3dmgFUWED6rZNMa9oKBDj0RvhcxG3X2HHJNu1uGzY9k2Z R5oNPisnfXP7oiJ2o6lemma3oNVeJ/e75H4yKA6LKq0r1KIv2ukr3THnMwn8uBC3Bt740R VlJ6bPKiVfSQbd/pfilLKYt8yMaZXqYUu6ppVPwIWl643pIDcDNLQzy+FAkgLw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw4bR2QCPz11Jn; Wed, 13 Mar 2024 22:16: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 42DMG3o0075680; Wed, 13 Mar 2024 22:16:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DMG3nL075677; Wed, 13 Mar 2024 22:16:03 GMT (envelope-from git) Date: Wed, 13 Mar 2024 22:16:03 GMT Message-Id: <202403132216.42DMG3nL075677@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: a7b9f4d96e8b - main - Bump __FreeBSD_version for bus resource API change List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a7b9f4d96e8bdc30db27ec7a193a8d8fdf7c652c Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=a7b9f4d96e8bdc30db27ec7a193a8d8fdf7c652c commit a7b9f4d96e8bdc30db27ec7a193a8d8fdf7c652c Author: John Baldwin AuthorDate: 2024-03-13 22:14:23 +0000 Commit: John Baldwin CommitDate: 2024-03-13 22:14:23 +0000 Bump __FreeBSD_version for bus resource API change Specifically, the change to remove redundant rid and type arguments from bus_* when passing an allocated struct resource. --- sys/sys/param.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/sys/param.h b/sys/sys/param.h index ff932e6c60dd..4369aba9bb46 100644 --- a/sys/sys/param.h +++ b/sys/sys/param.h @@ -73,7 +73,7 @@ * cannot include sys/param.h and should only be updated here. */ #undef __FreeBSD_version -#define __FreeBSD_version 1500014 +#define __FreeBSD_version 1500015 /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, From nobody Wed Mar 13 23:21:23 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw62r02Yfz5Df0C; Wed, 13 Mar 2024 23:21: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 4Tw62q6gzPz46Gq; Wed, 13 Mar 2024 23:21:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710372083; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zIBEfQc5vPxqHZVGKKMnvFlW0xolZVCrnchZZ9XH80o=; b=wJJZk0u9q9LYOK6nvAAQdGNR+iGE4gLLuRrdBwz0pQs5r72RM+SSTZ7OJYWV9dmc458VL+ 4nXhKt+6dTOYl6Dp526f3mhkziDEWV6X2rZdf+HT752jMWUUJGvC4MNLlfaWCyfwXLGk/R 1J7I4ZmCHZfq7V9YlZbQcDFOb/kyBUCJn2YakWrRBQPab6SCsulChQBt4C7MVYThrwa2g8 xNp9yUQkdWU6jw/edRgnl6QLkMHjwLQlizqLAzFG6wJciZhvay/tRHeizelgjB2T62R7Uj BlHqNpfK4evqzEVKAj1ntarm67V3uNqU6LyyjZ/NBG6PpZJwUV2xtSbLxzYg6Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710372083; a=rsa-sha256; cv=none; b=c5mCfk6SpU5qc5d2mR3cElS1KMJpuC+Fy6PddHbNVgLf30VXpsZHu7xqXp2bzc4UpNW6tX 1LhJt9YbgTJoL1ylnSUeQFjNStuEcowWAtgh6hvdB1TJ2RF/oJa91Q5GDAxGg/PquJX67P 6+rl833c/n/TOHDTmqe8z9NCa+pDl8RJBvlJrBK4jv1Grnsssg02btdGc2I0mk2NJZjsJn jSyJEsBmSrKms3ksa+AQ+zcHdTMtd5oT3Li0eKjkliPk2IxHGMWoEYrIcfPC94kfh/XguU pxiVH5kHUNipvfRYNKaGDVH8VkT1/oTHCE08hXNYK2+vIfp8w1YiLpcT+5ydYA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710372083; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zIBEfQc5vPxqHZVGKKMnvFlW0xolZVCrnchZZ9XH80o=; b=PDN0fvjuvLx0e3Prw7hcDNRvFTHvScvtvcrG+118UmbaWgGNoUlyxYHNkeQrANfZjI9076 /283G/jixa+FF855iqIrG2RefqR/5bnN1IaKAsBdRlKaqI1c+oPGYXfHWI+ZHRruDE5YSM ECVG264Ir7kOQe8xC/srvwoNZNEVZfuzUpc3yNzyTlQK4CJQbCpG4BbIPJ9D/+PXe4ye5f BHbmTzJEXdfWToE39U0yvnSW0hLvZBRz0RMEfL0zgrBzjlPk9WINKjZYOZZfQrkmZd+NXp q8KxNrqQP+NoyTGwXE9gGwxO6But4wbmGolTSAV8tK0bb3/gGUWy96kbWehMRQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw62q6HvTz13Kk; Wed, 13 Mar 2024 23:21: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 42DNLNG4087788; Wed, 13 Mar 2024 23:21:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42DNLNIX087785; Wed, 13 Mar 2024 23:21:23 GMT (envelope-from git) Date: Wed, 13 Mar 2024 23:21:23 GMT Message-Id: <202403132321.42DNLNIX087785@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: 220ee18f1964 - main - netinet/tcp_var.h: always define IS_FASTOPEN() for kernel compilation env List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 220ee18f196482c534a659d1eb50db26c54ca7d0 Auto-Submitted: auto-generated The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=220ee18f196482c534a659d1eb50db26c54ca7d0 commit 220ee18f196482c534a659d1eb50db26c54ca7d0 Author: Konstantin Belousov AuthorDate: 2024-03-13 11:54:50 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-13 23:20:58 +0000 netinet/tcp_var.h: always define IS_FASTOPEN() for kernel compilation env and drop the definition for userspace (which matched TCP_RFC7413) since it depends on presence of the kernel option. Reviewed by: glebius, rscheff Sponsored by: NVIDIA networking MFC after: 1 week Differential revision: https://reviews.freebsd.org/D44349 --- sys/netinet/tcp_var.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/netinet/tcp_var.h b/sys/netinet/tcp_var.h index 6f7f7115c2f4..7b5c57d39213 100644 --- a/sys/netinet/tcp_var.h +++ b/sys/netinet/tcp_var.h @@ -812,11 +812,13 @@ tcp_packets_this_ack(struct tcpcb *tp, tcp_seq ack) #define ENTER_RECOVERY(t_flags) t_flags |= (TF_CONGRECOVERY | TF_FASTRECOVERY) #define EXIT_RECOVERY(t_flags) t_flags &= ~(TF_CONGRECOVERY | TF_FASTRECOVERY) -#if defined(_KERNEL) && !defined(TCP_RFC7413) +#if defined(_KERNEL) +#if !defined(TCP_RFC7413) #define IS_FASTOPEN(t_flags) (false) #else #define IS_FASTOPEN(t_flags) (t_flags & TF_FASTOPEN) #endif +#endif #define BYTES_THIS_ACK(tp, th) (th->th_ack - tp->snd_una) From nobody Thu Mar 14 00:11:00 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw7844yL5z5DkXc; Thu, 14 Mar 2024 00: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 4Tw7843XbPz49dR; Thu, 14 Mar 2024 00: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=1710375060; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=itgAGvqGcyFtlZdeVrPjh6+KgfTk9XEnsGm+ZHTVuA4=; b=r/G+sl47kZiNiAOsDSoximNZ/0DTsgEkMou9yuydqhZJ1pCNd2LGA8W0ARneEncj8eTzb+ A9i7RtL+J0xnqlDWE/TTpPTXSlOHbp2/4tdWX4CIDquJI+nkwtxGOqLJciWtvEckk+QxKc 9gdBwaIVf/8o+HSG6i6xA3fOxGVZW1uy/KOIIFAMDkwJh/Nd2WEBSeaiNb1VCjsM1FAOXc aglsCenjN9OYkS4Kd7m+Vd77NsnXyGjmOZStJg+zyaiayghOg3NmvJWDoyzAdL1v7FxEB3 cPukwa4PMqcv90Zoc8n+PVXQEX5Jcl3qyvlFdpPz59paNfj7e/BM9w+GUp+Y2A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710375060; a=rsa-sha256; cv=none; b=iNpP/DHqhxjhdZsgtJjD51YuCp9p/Zl5dVG1UejbuaDlJ5bWeCfPtkbdm5kXuYvPAlsCHk EJjJ57rkPtCMP3rdX6w4OxvvGDCpgc7XOV9E3hdBjU6liEDu2OhLqFeCBcuAdWGB9B02+Z kncEvgskpDie32Mv4OHDIcG9huEqo+zqjeoduKtGmG0R1MKvzqdJD2qs+TRLuHRsrW3dPt DAGRFIr+G158IbPW7pYfESuyhF7UoJj20Q8cvehjUETcUTsuGu2E6PUKdwoDml7fE/MYmu 2eXc5Scrv+xWLKOrSylBYDyNLBk2qbcYteV+04+DJFMk1vSLIBfNwTN90EUCaQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710375060; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=itgAGvqGcyFtlZdeVrPjh6+KgfTk9XEnsGm+ZHTVuA4=; b=YmApuHixLo9/V/SS4O1Uhv59BzgsPIVwmn5hex41vlEmkprxzw3dsHa6oO64m6M/+DxzOD ZO4xAGHmT48z7uffYWA56rqP3KS4qEvnN50vXg/JextCkpXnSkwc25hd+XmdNdEQVF4aVX GegiiMGsNXCt0+Ietfmp3ArLXrzIFp8Q7H6OK9K3ptEZCcEJ69QD61lN0dqDtMmJHkTPCo /FHv2qUruwnC8LvB1/arM2ZBycoLlr0tXrZ1PS6JsMC3NIjR10+FDHlcvxNV5dQhvw6n3N HzTVB/baPd4bZmnm+1ml7+o5w2YEhFXeNldnxpPwMHOSASxjpMBbvBEL+sscNQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw78438t7z14X7; Thu, 14 Mar 2024 00: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 42E0B0VR071362; Thu, 14 Mar 2024 00: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 42E0B0On071359; Thu, 14 Mar 2024 00:11:00 GMT (envelope-from git) Date: Thu, 14 Mar 2024 00:11:00 GMT Message-Id: <202403140011.42E0B0On071359@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Mark Peek Subject: git: 63a7c4be4ad5 - main - hyperv/hn: Don't return error when setting media to autoselect List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: mp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 63a7c4be4ad524629292eee659d6542f1c5e9c21 Auto-Submitted: auto-generated The branch main has been updated by mp: URL: https://cgit.FreeBSD.org/src/commit/?id=63a7c4be4ad524629292eee659d6542f1c5e9c21 commit 63a7c4be4ad524629292eee659d6542f1c5e9c21 Author: Mark Peek AuthorDate: 2024-03-13 23:53:07 +0000 Commit: Mark Peek CommitDate: 2024-03-14 00:05:19 +0000 hyperv/hn: Don't return error when setting media to autoselect Setting media to autoselect would always return EOPNOTSUPP. As autoselect is the only valid media, this change now returns success instead. PR: 264253 Reported by: Prakash Shiva Reviewed by: Dexuan Cui , whu Approved by: whu MFC after: 2 weeks --- sys/dev/hyperv/netvsc/if_hn.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/dev/hyperv/netvsc/if_hn.c b/sys/dev/hyperv/netvsc/if_hn.c index 9949e0a16ab1..9f51f5b32199 100644 --- a/sys/dev/hyperv/netvsc/if_hn.c +++ b/sys/dev/hyperv/netvsc/if_hn.c @@ -1103,7 +1103,8 @@ static int hn_ifmedia_upd(if_t ifp __unused) { - return EOPNOTSUPP; + /* Ignore since autoselect is the only defined and valid media */ + return (0); } static void From nobody Thu Mar 14 00:24:17 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw7RT04x6z5Dlvn; Thu, 14 Mar 2024 00:24:21 +0000 (UTC) (envelope-from glebius@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Tw7RS6b4xz4DmL; Thu, 14 Mar 2024 00:24:20 +0000 (UTC) (envelope-from glebius@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710375860; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=cHnGYxE0M/yAkN5dzrFBgbrmkhgAGkgNzs+9S4gZjcM=; b=O40dfpe1/MkHvdJ8t74w/6L5r3PsbMfoxi4jfLzmc6JeKYoAWx9Ik/pCwZcZ+cWtSqcaJo iFqWFDGYsFbalVxBjrRHmnp8xdI/kRwuEua7DGrQa5F7nek+J6eEPX5RhMR/pEwmexLMtn qC2rIGRYL+MnY6hXCQxKyLC7OM/O06/LtAbOvbauDQtljsPpYrQIt3ZDPZlb1SFn8Ib+II WpK0zSX+/A10STrGNWNxZ6maZDyJve2jKogyWfNYwofVqCK7Ba3SsbU/WhGcxgvc08ta3f 6zjZ9GbL5Q9iTw2R+1mBdTOWww7QltvTGFTYr+DTgfn95V1Uh9m5lqsxj3QZdw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710375860; a=rsa-sha256; cv=none; b=RoNgrAdNEwlUax55lnUmZewnGK4gszeh7GUDl39iIgWlDnrzuVXZWxy5L6v15fu7fHgO3t nF+Vjk1D5X+Df0r1n4L0l04jPB7wTr0MoNtUeKDLCQrd5dAfwDn4LinVAV3k9GMJ7uZbbq g53E4aVYN3ADKM1qKHLR0mCT2y32U4cUfvMVDjGvMHW5QO/MSwF/dH9r/+P3FMbCu/6e0N q6ywS+Ibrhoak4bl3CJc1KveLZKIneMwzbWB17/O+Hx7XED7IPWbRUYVi/qBp89MrVEza3 4avFhFCDDGOVl5mpucPTQpPtaz0mF9GlWrv3E0i+setG/VGODPaDkSi+R8WUbg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710375860; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=cHnGYxE0M/yAkN5dzrFBgbrmkhgAGkgNzs+9S4gZjcM=; b=Ne6FtcV1XCqMXtOX51I8nkLmsBQXMT7RK6ZHdqCNoi9ooYz2Xcba/LVDr1rHzkNcsAVoU3 K5dVSYUHnE3d7wX4QWz+Bw0tMYtgM31eoRxP31edOEqzUCUT1mbW0GrgoYh5gqlQf7sl9z 4pemWilkLFKjBkBHQmAYZZ1aQDXiJvr3v0YQakSo/a+mVhnim/E70ypRAPDEFUieQjDehx EZxj0kFuiOmwOy7MS+Pa3aym6cfha40+W7xgxxR4vw5vlnC4erLqY0x0M/sBQfyxuAgjEf nzjlMYtp5gx0bS3YX3INYRPE1PsQa6dmXG2MKjloSrPg5Llc1yWDojET3kOfrQ== Received: from cell.glebi.us (glebi.us [162.251.186.162]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: glebius) by smtp.freebsd.org (Postfix) with ESMTPSA id 4Tw7RS2SPYz1Hh3; Thu, 14 Mar 2024 00:24:20 +0000 (UTC) (envelope-from glebius@freebsd.org) Date: Wed, 13 Mar 2024 17:24:17 -0700 From: Gleb Smirnoff To: Konstantin Belousov Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 220ee18f1964 - main - netinet/tcp_var.h: always define IS_FASTOPEN() for kernel compilation env Message-ID: References: <202403132321.42DNLNIX087785@gitrepo.freebsd.org> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202403132321.42DNLNIX087785@gitrepo.freebsd.org> On Wed, Mar 13, 2024 at 11:21:23PM +0000, Konstantin Belousov wrote: K> diff --git a/sys/netinet/tcp_var.h b/sys/netinet/tcp_var.h K> index 6f7f7115c2f4..7b5c57d39213 100644 K> --- a/sys/netinet/tcp_var.h K> +++ b/sys/netinet/tcp_var.h K> @@ -812,11 +812,13 @@ tcp_packets_this_ack(struct tcpcb *tp, tcp_seq ack) K> #define ENTER_RECOVERY(t_flags) t_flags |= (TF_CONGRECOVERY | TF_FASTRECOVERY) K> #define EXIT_RECOVERY(t_flags) t_flags &= ~(TF_CONGRECOVERY | TF_FASTRECOVERY) K> K> -#if defined(_KERNEL) && !defined(TCP_RFC7413) K> +#if defined(_KERNEL) K> +#if !defined(TCP_RFC7413) K> #define IS_FASTOPEN(t_flags) (false) K> #else K> #define IS_FASTOPEN(t_flags) (t_flags & TF_FASTOPEN) K> #endif K> +#endif K> K> #define BYTES_THIS_ACK(tp, th) (th->th_ack - tp->snd_una) I know Konstantin in doing that to clear path for IPSEC changes, and the patch does improve code. So the message isn't addressed to him, rather it is for other src-committers. Using ifdefs that come from the kernel config inside include files that are not ephemeral opt_foo.h is laying out a minefield for the future. Best case - for yourself, worst case - for somebody else. In the best case this ends in cryptic kernel failure builds, where your custom kernel doesn't build, but GENERIC builds and it is not clear why. In the worst case this creates runtime failures even more cryptic in their nature. In this particular case TCP_RFC7413 comes via opt_inet.h. Thus, if you got a userland tool, e.g. netstat(1) using IS_FASTOPEN() it will always be false. Again, netstat would be a best case. A worst case would be netinet6 kernel compilation unit that does not include opt_inet.h, but uses IS_FASTOPEN(). Other than that, we got 32 flags for t_flags and only one is obfuscated via a macro. I'd really like to remove the macro and test the flag directly. Any objections? -- Gleb Smirnoff From nobody Thu Mar 14 00:45:58 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw7wR0MdTz5DnGM; Thu, 14 Mar 2024 00:45:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Tw7wQ56TKz4FhC; Thu, 14 Mar 2024 00:45:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377158; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aAlL1/oLAE4KdpO3aduQq/LdiMs1bRTAhvFNgxO+B1o=; b=YoZ7alhWS05IpkjcHIt4j0slGzolNPXqVcmAjSy77Lwd4Hlu2SO6jSopT065LD/vZpNBr6 /c9/aYxUJ3Lt1LepMPFv7qyBNeI1FRBv4gA4Lsy+2sqdJme+nK0A7tKUGzaBJXSvVZOvZx uuB1li0R1/48bHTR2z+YleYuyw9ge5i1DyzSSyuwJ9YDdTUeiuAFoX1TdBZZgvEMUM9RVX tc/hMrInDnEynZSdQIInCbwMEgv9N/IeTG9lo+C2bofC6kGzY6uNk051uaUOBnRC4aYNn0 EfiloVC4yCyoPU4eoQJhZSKYeFDExJkWS1y0E0WfDwn20wq5Fg381ozSlnOJyw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710377158; a=rsa-sha256; cv=none; b=HA4bmwTMLJmJZ1thSMbwnHs+zNGVePpzYEAOsnMXECj9Lh3RfxRoLMM/Tob1Utq7TpeDBZ 4w6Fc+TXqiIHKrY1kwHsZh2faYWbkLGmtzf2+awY5vjIx6biqzedLluWShJrzBPPoLYYY9 60LNYtcHKYnf1qCB8wyDQqtjsdsLSXPXutp3Y+e63ZcYETzL7vxT0DTVXdDFygj/0w66j9 aMbisa8vj2cRQhAN3cVJe/vQfHAXmnD9+lUnpVCKnNqfqmQdt0JJ/d6IRPwKkmWfFh1nho wrXJgfuJ6vhSYOPeHrTqbVHY3bz0stybp0VbZs+/ICu3FKBbnE10muNgIb/Qcw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377158; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=aAlL1/oLAE4KdpO3aduQq/LdiMs1bRTAhvFNgxO+B1o=; b=ZWm9UcZ7tOOYQW30FuQEq+oefof891ozkfhpNo0jK89NYJyVRq+xZjqp1KTWrjFw2rwaTC zrB/9sAePYl2vah8f9ktjDXoLdtG6tS9Vgg23veHiGf6iI2O2niaDvZ2Tz5JMUSfDKGj/M EqPXBjp5mUXXHbH9j/5e8tLN3s9k7qEZ972kyomg1rVh5d+qAXXcyYep3IUwefu5dQwOTL Qlx+C78coCGvQoXJPlhzYhGMrv9gc42ZfJLTDXqWAoZXlz9GMbSVttkzMUBPSOe3QdQY8D SByCpY1kYLBwWJPac/VqZ/F86sKWeYuzlk2OMbL6cTE4Kfm3QUaltJJpD6qlJQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw7wQ4jtDz14yt; Thu, 14 Mar 2024 00:45: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 42E0jwQN028562; Thu, 14 Mar 2024 00:45:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E0jwUs028560; Thu, 14 Mar 2024 00:45:58 GMT (envelope-from git) Date: Thu, 14 Mar 2024 00:45:58 GMT Message-Id: <202403140045.42E0jwUs028560@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: 3ba93b50d6fa - stable/14 - nullfs: Add the vfs.nullfs.cache_nodes sysctl to control nocache default List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 3ba93b50d6fa7733dd80158f162faf33a216b5b0 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=3ba93b50d6fa7733dd80158f162faf33a216b5b0 commit 3ba93b50d6fa7733dd80158f162faf33a216b5b0 Author: Seigo Tanimura AuthorDate: 2024-03-04 13:50:25 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-13 00:30:40 +0000 nullfs: Add the vfs.nullfs.cache_nodes sysctl to control nocache default (cherry picked from commit c849eb8f1925f95ebfb8dbbe00672d902486a973) --- sys/fs/nullfs/null_vfsops.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/sys/fs/nullfs/null_vfsops.c b/sys/fs/nullfs/null_vfsops.c index 6acff89189f5..9d4a9588fed9 100644 --- a/sys/fs/nullfs/null_vfsops.c +++ b/sys/fs/nullfs/null_vfsops.c @@ -50,6 +50,7 @@ #include #include #include +#include #include #include @@ -67,6 +68,13 @@ static vfs_unmount_t nullfs_unmount; static vfs_vget_t nullfs_vget; static vfs_extattrctl_t nullfs_extattrctl; +SYSCTL_NODE(_vfs, OID_AUTO, nullfs, CTLFLAG_RW, 0, "nullfs"); + +static bool null_cache_vnodes = true; +SYSCTL_BOOL(_vfs_nullfs, OID_AUTO, cache_vnodes, CTLFLAG_RWTUN, + &null_cache_vnodes, 0, + "cache free nullfs vnodes"); + /* * Mount null layer */ @@ -202,7 +210,8 @@ nullfs_mount(struct mount *mp) } xmp->nullm_flags |= NULLM_CACHE; - if (vfs_getopt(mp->mnt_optnew, "nocache", NULL, NULL) == 0 || + if (!null_cache_vnodes || + vfs_getopt(mp->mnt_optnew, "nocache", NULL, NULL) == 0 || (xmp->nullm_vfs->mnt_kern_flag & MNTK_NULL_NOCACHE) != 0) xmp->nullm_flags &= ~NULLM_CACHE; From nobody Thu Mar 14 00:45:59 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw7wS1Dz3z5DnM1; Thu, 14 Mar 2024 00:46: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 4Tw7wR64GPz4G1w; Thu, 14 Mar 2024 00:45:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377159; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yWNYPH3z9SIJd3B5bBci5U4z5As7fsFa26JX0h70N7k=; b=F+8AMPz68NrTIwEySRK3duAPKqyTSt18PJO2cKKEoWJ9Wjzkvpxw93tb49dVjz20BZ6dsJ NzzJp5kob3F9t07Nwjo31a8rMe0jtBAugQ2TNk/zImaYrtfV4el7wwRBqtdkjbgqQGkic6 76rgQbZFv6w3yqGdl+vYPgM5v+GSqSxCRjvmvdcoft9pZyTZAb3iuVvdIYdjOGhVHps8NX e7loG+cKnJeemq7ASjUwRhjE0ni3Cd1GSZ/7VexS3bKsnzXz6ZmSvKKrcKz3AsIwwAzhSD ZGSlwM8Gizx4YzgodjsItpB/9WZ8T1zaBmiueJU4eVkifQ1lk5cxRFT+cEaMrA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710377159; a=rsa-sha256; cv=none; b=b5nqI3PTjI/uig0XUmIM/xLWu15UiZrDTC4N3Y1l8N5/isfsgeB24gugen3KTvoadDuvBU hIh7KalmZHhRi4wJ/dqqYAOZVhdZm2cLTQ9OhD131x3MiMeeQ0Vz7xnfnROd285LE4IO1S nJPLwezBnTLFT1iXgywl1asmC3pPm8CIqhpWKQnR1B+J2I60E+7BnyhwJ/BtHkR0YbTxjz GMKkPSssFTglPlO5PpAA3HUE1vNUrMkPT3AGvyxqY/LSF/6VIq8c/YaWFaljYup3PiDZvJ 2z1Pc/XkBl1BwhdHCGrj+c0l3TMcINyC39ylkiaCGLE7Pg7HCMQMTr1SxA4e2g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377159; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yWNYPH3z9SIJd3B5bBci5U4z5As7fsFa26JX0h70N7k=; b=N4KtGT+2+NlT7sku/JJoMemeEajX0/CoP0ij0lWign2aEK9YT83PfRNznvhPfl2t5uEc2j 4epMWfkQyb49owsYrcn45XfYgFAcmetdKiSPmPVK1uRyuIvZvIKqepCieBXcKTTAyKxbXL LJhZgRRp99ZfXbPoKeoa+II8e+MzkxUCojlnl42A4MH8XPema6HkYgI0YQHAt6sLlIf4go 7xIniOkW4P7F20rv6qlW6loKKWtm8xlRLCDFN6WR/R57lrEjv0uAhG54Bianqcl+PI07nm mhqUKHbtLUxyp5lSBypNGJv8xwDAlBPyUPS2MEM4E4WDLX9az2hRY66Vo6+HEQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw7wR5hdzz152Z; Thu, 14 Mar 2024 00:45: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 42E0jx14028602; Thu, 14 Mar 2024 00:45:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E0jx1x028599; Thu, 14 Mar 2024 00:45:59 GMT (envelope-from git) Date: Thu, 14 Mar 2024 00:45:59 GMT Message-Id: <202403140045.42E0jx1x028599@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: a79bb016d9cf - stable/14 - nullfs_mount(): remove unneeded cast List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: a79bb016d9cf261a4afa0f6fe1a0c8d3ce43f298 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=a79bb016d9cf261a4afa0f6fe1a0c8d3ce43f298 commit a79bb016d9cf261a4afa0f6fe1a0c8d3ce43f298 Author: Konstantin Belousov AuthorDate: 2024-03-08 18:37:43 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-13 00:30:41 +0000 nullfs_mount(): remove unneeded cast (cherry picked from commit 0724293331e4c35c0a8cc5b8922a153545725c24) --- sys/fs/nullfs/null_vfsops.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/fs/nullfs/null_vfsops.c b/sys/fs/nullfs/null_vfsops.c index 9d4a9588fed9..dde69d444923 100644 --- a/sys/fs/nullfs/null_vfsops.c +++ b/sys/fs/nullfs/null_vfsops.c @@ -174,8 +174,8 @@ nullfs_mount(struct mount *mp) return (EINVAL); } - xmp = (struct null_mount *) malloc(sizeof(struct null_mount), - M_NULLFSMNT, M_WAITOK | M_ZERO); + xmp = malloc(sizeof(struct null_mount), M_NULLFSMNT, + M_WAITOK | M_ZERO); /* * Save pointer to underlying FS and the reference to the From nobody Thu Mar 14 00:46:00 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw7wT0TSbz5DmwW; Thu, 14 Mar 2024 00:46: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 4Tw7wS73Wfz4G48; Thu, 14 Mar 2024 00:46:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377161; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wg2gauSTfKrouZjk0lvMg/3bmPxY3P7vOPUU8DiOv6I=; b=FiBpq0OtOBqit5ApqfIgU+XzkazkUoagCH5AR/i0/qxyglOHffXN8ImkACIuPe31ahxZdS W4+9s6vqOYZVdeDj90x6pnXi4Fx1qDGoTz+xiJ5vJfmkjZbkLjofWqXXfWOzZAmKkBB6cU G5Z4Si0/do3+0rtdGs36nir4XMEMGvHs3J7aPZRpFSmfI++mts0sMmcxHPNcm2qaT95f+q SkXncj2Ne4e7qH/yuA4K5quXe7iD/U0a+uc9vEwl1HabDjKMWsatZ0BTjgKSTEWHK2xA3m y/1ULg20WB9i1ihREMgVNVtgYzmpeJSf3HV3oqZXd9nfX5/1z8qwJM/mzhjvNQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710377161; a=rsa-sha256; cv=none; b=Gkzxd+R7MS1EnYG5zjkoGhhjenVC53c4gQKIwXEoI4Fe930N9m/XQnHQGYDNDiAX/xcX1b KfXJYNQVBkaqEQjF3waKCoTQ6pkxoF7aZuxUCuw1ZC+VDc2YzNuuP/x7DQfq+cwRiM6qG4 NP26af3OWJTxVEiq7jV/d0TvyXRb8/qCKTVtE1IILR/AZwgusGqE5AKVoz/05TiiMAvKm7 jM6DkRplyORCXRFdpyehMfRJ5Dkt25VHpaV8igMSdYsm5V+qfclHkYnSePXMV7+Hci/6Gi 6yVKhL4HxUd54rgBowL7s8uHxLJsG0MoRA+veYThCkwEH2biKA7YheEYevyz+g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377161; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wg2gauSTfKrouZjk0lvMg/3bmPxY3P7vOPUU8DiOv6I=; b=DJhyIoEOjI0CGj5zNCYcmaxcWcGgtQ/IgfWBh1j0aSiTviA5V7QPmuXvawCMVEvmSRCTq3 /TqvtV8isxK6joKW0vrFFQnpgbKzf5hNYKmgubRGEzLxLwIpGZAuWz2uJSY3egEdNFJcJn Fs48l7q2DU3xE/KvSmZy5wuoztVuh/JF/97nI+YVi8qR6qEAaZtEcZalzaq5u1anEnd8f7 5Q69TmlhtPL7gimSybQZHjW26QetHvWUAOVNYOVSPg93p8fRqyl1HwBosKpBadj+MzthUO LvuSH4v9rqFlmu2v/Hy+LJdkQyeZ8yHUEVuL3rD9mjOvvJlQHFWHW/kcFq6phA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw7wS6gYgz14yv; Thu, 14 Mar 2024 00:46: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 42E0k0VJ028652; Thu, 14 Mar 2024 00:46:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E0k0oJ028649; Thu, 14 Mar 2024 00:46:00 GMT (envelope-from git) Date: Thu, 14 Mar 2024 00:46:00 GMT Message-Id: <202403140046.42E0k0oJ028649@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: adcb01c08e84 - stable/14 - nullfs: add -o cache List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: adcb01c08e849bee32b10b214f59d6bcf8ea46ea Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=adcb01c08e849bee32b10b214f59d6bcf8ea46ea commit adcb01c08e849bee32b10b214f59d6bcf8ea46ea Author: Konstantin Belousov AuthorDate: 2024-03-08 18:26:02 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-13 00:30:41 +0000 nullfs: add -o cache (cherry picked from commit 8921216dbee6884532e22d5347cff4d9ed23e782) --- sys/fs/nullfs/null_vfsops.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/sys/fs/nullfs/null_vfsops.c b/sys/fs/nullfs/null_vfsops.c index dde69d444923..3df24305f3ff 100644 --- a/sys/fs/nullfs/null_vfsops.c +++ b/sys/fs/nullfs/null_vfsops.c @@ -209,12 +209,15 @@ nullfs_mount(struct mount *mp) MNT_IUNLOCK(mp); } - xmp->nullm_flags |= NULLM_CACHE; - if (!null_cache_vnodes || - vfs_getopt(mp->mnt_optnew, "nocache", NULL, NULL) == 0 || - (xmp->nullm_vfs->mnt_kern_flag & MNTK_NULL_NOCACHE) != 0) - xmp->nullm_flags &= ~NULLM_CACHE; - + if (vfs_getopt(mp->mnt_optnew, "cache", NULL, NULL) == 0) { + xmp->nullm_flags |= NULLM_CACHE; + } else if (vfs_getopt(mp->mnt_optnew, "nocache", NULL, NULL) == 0) { + ; + } else if (null_cache_vnodes && + (xmp->nullm_vfs->mnt_kern_flag & MNTK_NULL_NOCACHE) == 0) { + xmp->nullm_flags |= NULLM_CACHE; + } + if ((xmp->nullm_flags & NULLM_CACHE) != 0) { vfs_register_for_notification(xmp->nullm_vfs, mp, &xmp->notify_node); From nobody Thu Mar 14 00:46:01 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw7wV27kPz5DmyX; Thu, 14 Mar 2024 00:46: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 4Tw7wV0by6z4Fq0; Thu, 14 Mar 2024 00:46:02 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377162; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qQwXxC0U1M2fXiiZbsLilAMbZ7NmTXLZhIsPkRwSEkg=; b=B94JRh5yVXqwB5HC7HGrCIFxvmcjENEF7wGrH1fyTEJFH6Vmz0YDDncMErHRoKkupQqOFp 4kBiluthQbwfe8jTvjeK0DA1zSl8NzbIJ3+aj8BBN+g03mroLTEwKxGyWrKu2CQ1hLXwIk Inth1l/rgTYeS3f9/LxnAwikyxKUWMza5kksYcQWx1e3Y1fXp0q5l6rIpNqZn3HCB+nIsk 9yxCiLngXGAAwZABJEwInqalkL+DPjQG5WdxEeMlvW0oQpXDcQXskzZkkizUTAYh7TYoYJ x1iEjntgkW2vZG9I8QplhbnK8YX0N8Ex41Z+ehCLQXIERi27Z24DicqVKfD3Ew== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710377162; a=rsa-sha256; cv=none; b=wjrETeqlzQtApE6t+A5RPpTu9PuewBPgrKwXq+0nqM4WygGHFBNyRcdGA2vJEptjG7Spj3 E9rs8BSyOfMIJutffL3EBTW40Y9Dubx7hDw6OLkkXodJ0xwGy8eixZpt9OshZciooH47b9 9wKSHsialHlhRol3TLgK9tpt1FOUWPGCcwKPrWewqZ2w1IEGmirLA8r1fCIzB7UdGOTn8R YC1CRQGbaGEUrhSqMt77K8LvA2ScrcRbbxm9Rl5Ra3XnScszq7av2M7H6T8HhWtHPrT5bC PBC69pAQHqZMJoXg1a8LQQmn3aLPSHnqPUVYA6Lt68daEr1l4R9O0/N7Icmgcg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377162; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qQwXxC0U1M2fXiiZbsLilAMbZ7NmTXLZhIsPkRwSEkg=; b=DH1PqUmUUjIAyoa18YPzuf++InS/1veyoXaWbRU8U+QD563FCSkx1Ok2WwmJ3xjqZFIckg aI6IW9ouBY6K5fhT/pzaB+5vsp5XJwnnpPrNpf8vWnvBOg61yA1OSSaUquLWAIqg/Rf5m3 XdzgtFXd2TRkIMVcV78cXs3Ggyz7jAoQXvw3MUEn2IzG0hSuH+ypfSA9Rhkz/fcWDmOulh Yihf8CjrGvD+t8hbfgVSYA1VsXWOpcQnFXpXRDL6ySzR0EFgsszmXSMYiS2veRG9piIp3i aF1Mc98VnVG+XY8U7ft87x7T53pyWB6BPUgHeVH18sJP6ka48VJsATuqynSTEA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw7wV0BFqz15LQ; Thu, 14 Mar 2024 00:46: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 42E0k1xt028712; Thu, 14 Mar 2024 00:46:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E0k1rp028708; Thu, 14 Mar 2024 00:46:01 GMT (envelope-from git) Date: Thu, 14 Mar 2024 00:46:01 GMT Message-Id: <202403140046.42E0k1rp028708@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: ea8d7263d93e - stable/14 - mount_nullfs(8): document -o cache and vfs.nullfs.cache_vnodes List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: ea8d7263d93e3e32d8123da5f711446a37cd1722 Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=ea8d7263d93e3e32d8123da5f711446a37cd1722 commit ea8d7263d93e3e32d8123da5f711446a37cd1722 Author: Konstantin Belousov AuthorDate: 2024-03-08 18:26:48 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-13 00:30:41 +0000 mount_nullfs(8): document -o cache and vfs.nullfs.cache_vnodes (cherry picked from commit 4a2a69c4472cf677f8dfc026fff3dd33c83580cb) --- sbin/mount_nullfs/mount_nullfs.8 | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/sbin/mount_nullfs/mount_nullfs.8 b/sbin/mount_nullfs/mount_nullfs.8 index e3648a2fb2f2..b4b862b6c979 100644 --- a/sbin/mount_nullfs/mount_nullfs.8 +++ b/sbin/mount_nullfs/mount_nullfs.8 @@ -32,7 +32,7 @@ .\" .\" @(#)mount_null.8 8.6 (Berkeley) 5/1/95 .\" -.Dd June 11, 2023 +.Dd March 24, 2024 .Dt MOUNT_NULLFS 8 .Os .Sh NAME @@ -92,15 +92,21 @@ See the .Xr mount 8 man page for possible options and their meanings. Additionally the following option is supported: -.Bl -tag -width indent +.Bl -tag -width nocache .It Cm nocache Disable metadata caching in the null layer. Some lower-layer file systems may force this option. Depending on the access pattern, this may result in increased lock contention. +.It Cm cache +Force enable metadate caching. .El .El .Pp +The +.Dv vfs.nullfs.cache_vnodes +sysctl specifies global default for mount-specific cache/nocache option. +.Pp The null layer has two purposes. First, it serves as a demonstration of layering by providing a layer which does nothing. From nobody Thu Mar 14 00:46:03 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw7wW3mKRz5Dmyb; Thu, 14 Mar 2024 00:46: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 4Tw7wW2qZzz4G84; Thu, 14 Mar 2024 00:46:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377163; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AhlGkq/EelPf+CCkaNMHPqr7Q/P3gEQwN/h5wqWy6zo=; b=AmL0Q0umFEL7aoWsRR6FtlCW1QYKYF9+hiwgGQGUE8PzCbs1+HZi75CVZWCwb2mEgZVtJZ CisE4MtdAqPoeMiVHQ2KgurIpp+KKU/5ksR3SHm5j+XnE5J+5Vowi05hyPO5Fe1IuyyZbv uNXgVdQLQzhz4Z+aXaJMsamJv60IoucKnY4Dx5aohUEne9pZKkQXie6OZS1MWxGr6f/lVa eKlRQO6GbqGRdvPDTqAzuTMWH65jEa6nQFaEdwzpEU6qnJVJrD6fMcaNiu95E7aWpaE4cK ax8crYLGrRn9vZqYf0O4tMqNNH864meutOdBHdl/FhWfMkuJkzDu00OFsGPLkg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710377163; a=rsa-sha256; cv=none; b=MiJ480TQUotaMo9kRliAdKdNx39bvH8TD8umUYt5vN8xvsHufUrc8E6eyoU41j9ZLeNiKX sYukxCZ51WZMq96XUukHJDCWn8Tb7bF0ffr+UIjH6aVtnyc0hloFaBAggw3P8Gd4Gmpxbg ZLarp5PVs++w7SU4ZfdzlmEW54k4EFCPLfYz2NDPmLAwElGRcduckGIH0m2WDEdzLnYFkO q4hVED0NmI5MynUXh4dQUqrJqXrLIFeAlEF+TaOK+BWFNP+MWDMWCAb3ozkUEeOtdpkT6A ncHdXCJi5GOU3fMZN8lI2DsgxtE7qxRzGpt7KLxAbSmb4i4u9XgC+iUMkavMCg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377163; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AhlGkq/EelPf+CCkaNMHPqr7Q/P3gEQwN/h5wqWy6zo=; b=V39W7NfTCQ8iMGiSBojGiwK7UupjS3I8hxi1RzSkZ3k+Giw1pHD6IxD+5q/gCJiNMD86pI 8J3DXGsLoTNf7KTaWR0qlY3LC/KGjU340O8Z9a8HDXPnOpYF67ThY8WCKPrMHiZGJXzcgJ sU/Fl/RsdY4uT7Jgl6TkNojpoFzh3M3tVlUzRGMJfHDJRkRz0ggXWytx7n04vyiTUnhduq Ib1YXOqcNiyVnoaRZ7KLFHTOtVIomU+xcMgCszQ5zwyBmj/1MYuBXe4Vlf416h2GHdwJKZ WzaJmO0i0Dt3ds6EQXZ8Z+5tb3vy0Lbha7ecrzHLTyaV/D1vSb9poJykQd6VzQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw7wW0qRwz15VL; Thu, 14 Mar 2024 00:46: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 42E0k3R6028757; Thu, 14 Mar 2024 00:46:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E0k3M8028753; Thu, 14 Mar 2024 00:46:03 GMT (envelope-from git) Date: Thu, 14 Mar 2024 00:46:03 GMT Message-Id: <202403140046.42E0k3M8028753@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: 37ab169e38e2 - stable/14 - nullfs_mount(): fix whitespace List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 37ab169e38e2df7dbb9a8cae24add6f2bff83eda Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=37ab169e38e2df7dbb9a8cae24add6f2bff83eda commit 37ab169e38e2df7dbb9a8cae24add6f2bff83eda Author: Konstantin Belousov AuthorDate: 2024-03-08 18:51:04 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-13 00:30:41 +0000 nullfs_mount(): fix whitespace (cherry picked from commit 4e8d264b0057e80ed2c1086da30d5e2391d82ffc) --- sys/fs/nullfs/null_vfsops.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/fs/nullfs/null_vfsops.c b/sys/fs/nullfs/null_vfsops.c index 3df24305f3ff..262a6793b285 100644 --- a/sys/fs/nullfs/null_vfsops.c +++ b/sys/fs/nullfs/null_vfsops.c @@ -217,7 +217,7 @@ nullfs_mount(struct mount *mp) (xmp->nullm_vfs->mnt_kern_flag & MNTK_NULL_NOCACHE) == 0) { xmp->nullm_flags |= NULLM_CACHE; } - + if ((xmp->nullm_flags & NULLM_CACHE) != 0) { vfs_register_for_notification(xmp->nullm_vfs, mp, &xmp->notify_node); From nobody Thu Mar 14 00:46:04 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw7wX4P0dz5Dmwh; Thu, 14 Mar 2024 00:46: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 4Tw7wX2KKkz4GFF; Thu, 14 Mar 2024 00:46:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377164; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kgHGQyu/E73Ae6f+E4pSwnjSDHwPLQK2GDWQXfKRYgw=; b=hgxnwif0dJrTFoVgtaHxk/8h2xmtAe/EWQ36AF/A0OM8EGN2ec0mxCCR/Lx5UdGFs4d3JJ buMSz03lOKtZpG0kHwQrqUxYxVonWyBIUNRFCIKxjUQJox+BS+N+WBHpLrRdFXwtKWr/MQ cHsDmJ5SaTFf3AWhKJAqyfz7uGPvXQq4TbHHuHx8R++l7LYP9OC+DuhMV6J9/h8nnhYi7Z uXjHwVBKKEynwVb5eAhpegtw1s9PufMXoN/q6o4doTtCUOdswi/mr9Yh5AU/qbXCr38vrU JmBZUnwa3iUuHiPf/5TNHLrdu2UE4oF/f1v4rYIeq2CRZMXxcnAC8f10ZkTDVw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710377164; a=rsa-sha256; cv=none; b=Al32HDVYlgTiNZmovgKNtFd6jY+eitXHRWzmqhBu2GfjvP7G0ZuyujEDeaH2aqyDBU4oWP tvhDwArbPtDMv1hOObAWlv83xEFn/xm2n+lq3AJCL4QNMPC07KdUK+Xv75tunbCRQiIDXy 6uaAKTFiBhRMr0uDENkRh+HC9V8QlTwMi1D0wnhH7/fiJxemn5JMEGKq1XAOyRO7jyQPFx BZefNds5ZTRiim66hPaRHaU3mvbHXkEXjEwIdVUJH0XuzdJ658RWgQ3sH0f6C1DSfLdM9o ozew6DzSQinN/2VPsSIYAh+zYD4lqoDortpdF+1zeYuspJqdxxhRyszAGjCDZw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377164; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kgHGQyu/E73Ae6f+E4pSwnjSDHwPLQK2GDWQXfKRYgw=; b=DoA+xjEaHxSWBZVXrto5wK4yaJTSuYRQD8XN4vxxjj3/bmNAxZWeujxBlHosqZIsoEPU9h CBfkg1pEBymu3/OIYQhD5JvNWrXmZLQkb9Rpn9uqmrWYJN3knfQLsLHgarFkninIM7KaNp 24KZrQ2UYWYn1sg4yIF+bYG/95SNGyRXZG+f4n0fEMmfnDz3gZ4R1Jp6U2/TIKWvHm0YT1 +XY495Uwyn1chmS3+MQ8lrWVQsBNntG/b0dN2YXLDZBMYTi49ltI/fsGyHTIn+5X+rgmwU kbdGeQerEfrGAkbWjxnAh6l9hMrFYjwEBETslLBAqKbI28fecmcEpP73NLDpOg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw7wX1nf4z14yw; Thu, 14 Mar 2024 00:46: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 42E0k4sX028805; Thu, 14 Mar 2024 00:46:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E0k4bj028800; Thu, 14 Mar 2024 00:46:04 GMT (envelope-from git) Date: Thu, 14 Mar 2024 00:46:04 GMT Message-Id: <202403140046.42E0k4bj028800@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: 47ee352ffda9 - stable/14 - mount_nullfs(8): fix typo List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 47ee352ffda9f5fbd872ea926e721b7b7cde936b Auto-Submitted: auto-generated The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=47ee352ffda9f5fbd872ea926e721b7b7cde936b commit 47ee352ffda9f5fbd872ea926e721b7b7cde936b Author: Konstantin Belousov AuthorDate: 2024-03-09 21:18:11 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-13 00:30:41 +0000 mount_nullfs(8): fix typo (cherry picked from commit bdf1587a4973df2f012278b4e975da1cd8766f83) --- sbin/mount_nullfs/mount_nullfs.8 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/mount_nullfs/mount_nullfs.8 b/sbin/mount_nullfs/mount_nullfs.8 index b4b862b6c979..68ff6beb8eaf 100644 --- a/sbin/mount_nullfs/mount_nullfs.8 +++ b/sbin/mount_nullfs/mount_nullfs.8 @@ -99,7 +99,7 @@ Some lower-layer file systems may force this option. Depending on the access pattern, this may result in increased lock contention. .It Cm cache -Force enable metadate caching. +Force enable metadata caching. .El .El .Pp From nobody Thu Mar 14 00:47:36 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw7yJ4GdDz5DnDn; Thu, 14 Mar 2024 00:47: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 4Tw7yJ2tpnz4HcV; Thu, 14 Mar 2024 00:47:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377256; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3aSuQzXlD5fA1liuU7AsVVYzxDyb8Hk21KbW6mteZB4=; b=Gn1aQQ3iMmy4f3rZA25dECczcxXEuE5nlh8xYWiY9PS7qfJvU6dhTr4QTg1nemhPFgepIq wNObiX7SIoNE4yd1W+W0RJ6mOPI7NKWYTu+rvC8P/1y7Eoj77jUzsSAGZ9Daf9Iz+NVBqX MKcS3iq45mPN3ESUdE8p9xj/vt6xdMaYDNgke7k4L5CJRDyntdoV9N4c14/Dq4oFVAzMal bn8Xc9ddx7VcMzNXgXZHQ3Y0Cf2zGfte/hhbigEzN857Wed3Pdft/kByk90lfPnMuCscc3 KxsAChrgTFOvWP9fGMw5o7aC0syBv+w5EfuvPPeiDlyMMZcSfUe6kWqMNa8CcA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710377256; a=rsa-sha256; cv=none; b=ZOhY1oJ9Zr6QIc6+Y6WdjW2e969W3dYcrB3r6lFbmM8V/BRPvXjKnmxn4IP3liYdxhDcDP 5hWYbycZE8euFUD+YSO5US8zJ38PkNzz3bbRJMp0lH5a3O6P4tTaFRhMndp9tPdAA8ygXC ME6Ddlei8MOahXcH7J0f2HGRAhbGnmWE18IHlW0u4VR71TPU5/vn4t2D6XPF0HfToLGDym xHl8dlBrFHDFNc/ks8ze1C9YVIBVQvsqy53rHd2QFlVQ0+zHQmDm5ZONKSgpNPiiZn4MnK kxnZozK0yjbApRRse6Y3XCFn5G5qPkHgbVwsMWYCNpLgfA2CPcFrD0/GT0GF3Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377256; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=3aSuQzXlD5fA1liuU7AsVVYzxDyb8Hk21KbW6mteZB4=; b=WUQnp0FeupDvfaeT6+LwGG8Uf4kTTfVzrnfU1vagwI8qRoREJkp3+aksnWsXASfa7FNMds OBfmlldjxANCUf1T2zrsUQQsKUHdM4WQOpcl6IRZZM127ejWEPZ379Bw0QelAryr7jwJNj youpQKPrLSGhQAyDrcNOuriVJbKQDfta4qbnfUVhg8phu0s4zftvjHayIiq7yVb2YF7Iek 4hGBpjBymW5AptK9t3Mp+s7A4753mou64hkqDos4f0uk0uS7+Ol0p9If0yauHj2a+kRBP9 /hJgadndBH/NU9JadsLsG8IqSkCJYnzM9s2HSXKttVpq1a1B+DvGiR6G4AnkzQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw7yJ2VKtz15Jt; Thu, 14 Mar 2024 00:47:36 +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 42E0laun029258; Thu, 14 Mar 2024 00:47:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E0laYm029255; Thu, 14 Mar 2024 00:47:36 GMT (envelope-from git) Date: Thu, 14 Mar 2024 00:47:36 GMT Message-Id: <202403140047.42E0laYm029255@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: d119f5a194fe - stable/13 - nullfs: Add the vfs.nullfs.cache_nodes sysctl to control nocache default List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: d119f5a194fe0dd81e43f8ab7470b1b0a51b932d Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=d119f5a194fe0dd81e43f8ab7470b1b0a51b932d commit d119f5a194fe0dd81e43f8ab7470b1b0a51b932d Author: Seigo Tanimura AuthorDate: 2024-03-04 13:50:25 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-13 00:31:20 +0000 nullfs: Add the vfs.nullfs.cache_nodes sysctl to control nocache default (cherry picked from commit c849eb8f1925f95ebfb8dbbe00672d902486a973) --- sys/fs/nullfs/null_vfsops.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/sys/fs/nullfs/null_vfsops.c b/sys/fs/nullfs/null_vfsops.c index 500352338f6d..0285a5e45e51 100644 --- a/sys/fs/nullfs/null_vfsops.c +++ b/sys/fs/nullfs/null_vfsops.c @@ -50,6 +50,7 @@ #include #include #include +#include #include #include @@ -67,6 +68,13 @@ static vfs_unmount_t nullfs_unmount; static vfs_vget_t nullfs_vget; static vfs_extattrctl_t nullfs_extattrctl; +SYSCTL_NODE(_vfs, OID_AUTO, nullfs, CTLFLAG_RW, 0, "nullfs"); + +static bool null_cache_vnodes = true; +SYSCTL_BOOL(_vfs_nullfs, OID_AUTO, cache_vnodes, CTLFLAG_RWTUN, + &null_cache_vnodes, 0, + "cache free nullfs vnodes"); + /* * Mount null layer */ @@ -195,7 +203,8 @@ nullfs_mount(struct mount *mp) } xmp->nullm_flags |= NULLM_CACHE; - if (vfs_getopt(mp->mnt_optnew, "nocache", NULL, NULL) == 0 || + if (!null_cache_vnodes || + vfs_getopt(mp->mnt_optnew, "nocache", NULL, NULL) == 0 || (xmp->nullm_vfs->mnt_kern_flag & MNTK_NULL_NOCACHE) != 0) xmp->nullm_flags &= ~NULLM_CACHE; From nobody Thu Mar 14 00:47:37 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw7yK4WV6z5Dmwt; Thu, 14 Mar 2024 00:47:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Tw7yK3sgbz4HPh; Thu, 14 Mar 2024 00:47:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377257; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=L4JAnC1CQDoZjWCuaY5PISEGHdiItF9r04yWvdYGR7c=; b=nGsi76WDa/itHEkqETWaJ5BfiiFqItS0C3aQ5Ca3H0bcQDq4qPnMnya61cpp8swq3MwRkn JSzaVjNEht4JLs/KfH2UqGlGjF/IaGEVzufA4SwkKriC/Oo8z/cSuVwI7aqWExf4vqEaBn sNcwAL3GnlotIquk9E45ypH7r5+NM4et0kGCs4WdHQNy8DUMFIqLk2+Ws8HLHfsSlo9vHP ZO6Fqbg5h9swZCB4PzFPEAuZKGbtFHqLGLhYdaeKrLw0KZk5dggO1LkSjpWV3U1L3qTYQ1 ijNfw7E0mSgO9X0b3L4U4J/89k8HtgvE4FgOEh3tiDQH0sr/o3enojersKQNPA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710377257; a=rsa-sha256; cv=none; b=A7UBJsnukvcfzxTeQ/qFg+F+6/gj8Z0xGvxSV48FxZBAmZOzI6Dq4UOMIQbpk8BK2hqEmY tqTTocUsSC/C8eEiccrovQNWUnLv8WVb/5CZ//hI2P4IWx26zwDRFhUxeyyTH+goLjWRFb T3VnBcd931lPjWTwu96Kv8xIMk/LOW25W3Sq3IK8hzgDjicpufivmI2pczhUs+juFw40Gg NFlcgXB6VMQDA1I61xP/XVa/GUmCiJeWzHC+gbaN3ZeVBdRw8EIw1TEUKvwLUxhZpDDf/k 2vHkk5vc0ZVoc/LKAs2fvHXa7uX5I3HlOacGWxut4RmNthke2ctXwp58GsvHOw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377257; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=L4JAnC1CQDoZjWCuaY5PISEGHdiItF9r04yWvdYGR7c=; b=qaLAMCgDvg9IYu9VTiUIzdYJ1catgyI11Y65kWIJzTtkFN7PKL2h1PxMpukvb02Zk0CEdS 5INaYm7IMOmMW1Igfpu+63qcWSyizT52yrOnmnK1h7megTSMs6L0ARBmLMKDbRbcgQ0Exu yNP1zBagqLPVXhDUYMVtRelKiKI6YB054rGMcziURAq0KdJFzvWIQVSQEZT3XQhKVd7IOi SNCCtWY5qARY8xpc4eLIRP5X6LrjuZC68uaLrkd3gRMcS6cOg8Au5ooo3hjjK57HwDlEnF OeWPOYvRWsaw4HSzetIiSrwba0lTcyzR5fNXP/u5taclXuJDMpKLx6pxelJXUg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw7yK3TcBz152b; Thu, 14 Mar 2024 00:47:37 +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 42E0lb4B029299; Thu, 14 Mar 2024 00:47:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E0lbvK029296; Thu, 14 Mar 2024 00:47:37 GMT (envelope-from git) Date: Thu, 14 Mar 2024 00:47:37 GMT Message-Id: <202403140047.42E0lbvK029296@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: 4794e34384f0 - stable/13 - nullfs_mount(): remove unneeded cast List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 4794e34384f00577e7eaf9dbf8be7724f3a39ef6 Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=4794e34384f00577e7eaf9dbf8be7724f3a39ef6 commit 4794e34384f00577e7eaf9dbf8be7724f3a39ef6 Author: Konstantin Belousov AuthorDate: 2024-03-08 18:37:43 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-13 00:31:20 +0000 nullfs_mount(): remove unneeded cast (cherry picked from commit 0724293331e4c35c0a8cc5b8922a153545725c24) --- sys/fs/nullfs/null_vfsops.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/fs/nullfs/null_vfsops.c b/sys/fs/nullfs/null_vfsops.c index 0285a5e45e51..e08ed2f55d38 100644 --- a/sys/fs/nullfs/null_vfsops.c +++ b/sys/fs/nullfs/null_vfsops.c @@ -174,8 +174,8 @@ nullfs_mount(struct mount *mp) return (EINVAL); } - xmp = (struct null_mount *) malloc(sizeof(struct null_mount), - M_NULLFSMNT, M_WAITOK | M_ZERO); + xmp = malloc(sizeof(struct null_mount), M_NULLFSMNT, + M_WAITOK | M_ZERO); /* * Save pointer to underlying FS and the reference to the From nobody Thu Mar 14 00:47:38 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw7yM12cMz5Dmyr; Thu, 14 Mar 2024 00:47: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 4Tw7yL5BWnz4HML; Thu, 14 Mar 2024 00:47:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377258; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sqC2qHeWcbAzAOtXgc9P+mNSBWumbcunK0KxR9Ttcu8=; b=Icn1ecD0xmzVbc2OUYj1G5THFfCy+u/s8pLpZDaeRpkxjQT5jyD/HssPezwSZ8cRh1MwiM DztTovSNzg8FOIbwekPjTq7Jeiwz9NLeT8NQ93wpP+kRq3p7V8U8Yh5n176poDxWvqB/Ae GsTA6XKld4OxMDJ5VimOrpy7B8hP+w6qEXHsm7oOSbCQ8AqP9QCoSdUnenj9ll5ygkimKd tQ8h6UDV5EQAiFXq+/WpFcawAe1sQykFvMsgcdWSX9uIjZyqvxM/Q+ktsl3ibZ4aQEK6AE NeZvNwiNE2zsoVdsx5QiVKRBlAiGEyNrfHMDJwDdOaMkVCef3fgHt595yEGMSg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710377258; a=rsa-sha256; cv=none; b=sSe18M0KbCoHPNPpCBgINiSm5HCPCnGOKqui9Y0Ljw3AoiOEVtqD9VNVH5ySbIh9LbO5oH QQWsklzExY3dLLVMvqUYLfHkIj0FQO97RIqRos/M0f0JK2IgwAyXxM3FP0TyH2gm5G8epA iiNMcxxtVuKgOg4YM6JK4of6ug6QqMCnlvLd/XPMtbM4L4Jpgefq6stVsaP3H+fHYmMU7R Uvxr57sl5gGJAkJe+Bf+s0xoxgvtTnY8T9CPQ1q9COpJjS4vcmN6LczgFdIFMLBbPAG3xw YdnORM+q2z408ADyXVlMZySRncHTPBD6wyYEkM1n9wdccVQ4bKBQiawYNv8xTA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377258; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sqC2qHeWcbAzAOtXgc9P+mNSBWumbcunK0KxR9Ttcu8=; b=FEMJE1FpcQfKYb3WB2xPuf9sPwjpHzrpHgQIXjK/PrYeq4LLkZIhueHRkvE+rfNtZf79AY Waty4HEMT/0FX1dWdmnlDVd69VQoeeXJuSaCf4Xg0bbTonzs0qsKYAHRq6zgJ95AYAY5mQ a2YCLCkiqtWDKF0RFDUOgaH0irHG4gvyYht6UjI/6kk0wxDbAJAOI06b2vkFjf4P5MQbsw G+Dyo5vbry+whl5a/oy3i+W7vUWLBZ2c614D6nZt1UQkp7nwBhpSW0xoD0Zkndigub4xci EDiJWwlfyGIKSzc2vvt7upljzMrKapnh3Ap5JCaCyJct0vPFOq+xes9HvRjWaA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw7yL4WSlz15X0; Thu, 14 Mar 2024 00:47: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 42E0lc0J029343; Thu, 14 Mar 2024 00:47:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E0lc2m029340; Thu, 14 Mar 2024 00:47:38 GMT (envelope-from git) Date: Thu, 14 Mar 2024 00:47:38 GMT Message-Id: <202403140047.42E0lc2m029340@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: cfa5b2a501c9 - stable/13 - nullfs: add -o cache List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: cfa5b2a501c9062d3495aa73d5deac8a33992146 Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=cfa5b2a501c9062d3495aa73d5deac8a33992146 commit cfa5b2a501c9062d3495aa73d5deac8a33992146 Author: Konstantin Belousov AuthorDate: 2024-03-08 18:26:02 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-13 00:31:20 +0000 nullfs: add -o cache (cherry picked from commit 8921216dbee6884532e22d5347cff4d9ed23e782) --- sys/fs/nullfs/null_vfsops.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/sys/fs/nullfs/null_vfsops.c b/sys/fs/nullfs/null_vfsops.c index e08ed2f55d38..6a3f77a11734 100644 --- a/sys/fs/nullfs/null_vfsops.c +++ b/sys/fs/nullfs/null_vfsops.c @@ -202,12 +202,15 @@ nullfs_mount(struct mount *mp) MNT_IUNLOCK(mp); } - xmp->nullm_flags |= NULLM_CACHE; - if (!null_cache_vnodes || - vfs_getopt(mp->mnt_optnew, "nocache", NULL, NULL) == 0 || - (xmp->nullm_vfs->mnt_kern_flag & MNTK_NULL_NOCACHE) != 0) - xmp->nullm_flags &= ~NULLM_CACHE; - + if (vfs_getopt(mp->mnt_optnew, "cache", NULL, NULL) == 0) { + xmp->nullm_flags |= NULLM_CACHE; + } else if (vfs_getopt(mp->mnt_optnew, "nocache", NULL, NULL) == 0) { + ; + } else if (null_cache_vnodes && + (xmp->nullm_vfs->mnt_kern_flag & MNTK_NULL_NOCACHE) == 0) { + xmp->nullm_flags |= NULLM_CACHE; + } + MNT_ILOCK(mp); if ((xmp->nullm_flags & NULLM_CACHE) != 0) { mp->mnt_kern_flag |= lowerrootvp->v_mount->mnt_kern_flag & From nobody Thu Mar 14 00:47:39 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw7yN3ydXz5DnPQ; Thu, 14 Mar 2024 00:47: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 4Tw7yM5ymcz4HVL; Thu, 14 Mar 2024 00:47:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377259; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uf79luq7RNV7kv813LUHp2vzbTuxJvcHCnRwgu/2CXY=; b=ilB8Y8MFXdRAeMH+LgNm8W05QoKCi57K2ekgMHLHV/9jaTM3JxVebjDVfnyIgaLOOQC5NN XVFsDZl93acJPqhKSDrGHHohWCGifnen9WtVW2aSc+MYdvzu+Qb/UhK5kzzYsAz/u957ym VGMrTS6JwxeAjdsIEhDKU91SO9ImGLU0xKY7zBYRd5/PJzH4CWtpt+ujR7apMIGDxjEkpA MxX+hPKXqpD9l4oG7gIB00XycxNBHk0lpxHK7g1oQyKRYyuEU3DY37AQ/gArQRB1Ee1l5Q /63eMii1Eh7YRyTg5On3aqShHnWhyxis2LrLgCmZX+WbMszQlfY6InXI+M/A6w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710377259; a=rsa-sha256; cv=none; b=FWme+BKv2Vt4P1t+eA1W0YohBizvlUggi+qpf8n3FE+xhuhhZpl7TttSgVkc2tL8uoTOf3 wjXUXjenQ9XJspnBFLN/a1V7BL+ZLk0EIaKmAmTARmofmiGuV4RiFNizC3hKX5692CqihR MjE/qcU6vt75DnWqT44dsg/fZRtUCorFxvFXUfFtPq1KsDIEXqLWn3o3ThUyQHRbbiNtf/ m48r+zAn6dVPF1T4EKDooT+YBDV6Hjd8TRDOU17z6gSO2oh/2KsZMa7FWtaTmyfCX8bkCU By/Abbb3/aW1mibTVciLGNHL4RYt3wmG8tk7tHi7UE2QNMAqKpBobeLPyTYuog== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377259; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uf79luq7RNV7kv813LUHp2vzbTuxJvcHCnRwgu/2CXY=; b=k6l09IjHi20It2nlkuYxQcuqzM2bNI9DxFmIjCBypRXhOYEhrs7yA+8N/CXIeBPEcpO2Lq tUcO/bCO+xfR2NttdtjJkp/snEM2ZdN117No/Iif2T2ArDFkSdL2b+yjElgttlIDsMz3Np 1yrXxbGj84YSgr7gO4Q+anCJeTRZ7RstT9BpEfWIdqVk0Z1PTcrfLv0RZmheROeGB/2e0U Df3JTeINeysIgtff+hGaq795U5RzySoPD2BFuKn7lNE9FGqv739uRr17o/CDYFbOP5s2aR C9KiHpoa9u3+ITWsf1NuvXAmUXnCB9z1yBAyuYYAeXep7F/Cgt69KtaJkdjghw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw7yM5Xn3z15LS; Thu, 14 Mar 2024 00:47: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 42E0ldOn029388; Thu, 14 Mar 2024 00:47:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E0ldif029385; Thu, 14 Mar 2024 00:47:39 GMT (envelope-from git) Date: Thu, 14 Mar 2024 00:47:39 GMT Message-Id: <202403140047.42E0ldif029385@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: ff4196ad0bb2 - stable/13 - mount_nullfs(8): document -o cache and vfs.nullfs.cache_vnodes List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: ff4196ad0bb25c8bfababd6e1ee31362aef92283 Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=ff4196ad0bb25c8bfababd6e1ee31362aef92283 commit ff4196ad0bb25c8bfababd6e1ee31362aef92283 Author: Konstantin Belousov AuthorDate: 2024-03-08 18:26:48 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-13 00:31:20 +0000 mount_nullfs(8): document -o cache and vfs.nullfs.cache_vnodes (cherry picked from commit 4a2a69c4472cf677f8dfc026fff3dd33c83580cb) --- sbin/mount_nullfs/mount_nullfs.8 | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/sbin/mount_nullfs/mount_nullfs.8 b/sbin/mount_nullfs/mount_nullfs.8 index d515decff211..fc33e64e2902 100644 --- a/sbin/mount_nullfs/mount_nullfs.8 +++ b/sbin/mount_nullfs/mount_nullfs.8 @@ -32,7 +32,7 @@ .\" .\" @(#)mount_null.8 8.6 (Berkeley) 5/1/95 .\" -.Dd December 19, 2022 +.Dd March 24, 2024 .Dt MOUNT_NULLFS 8 .Os .Sh NAME @@ -90,8 +90,34 @@ flag followed by a comma separated string of options. See the .Xr mount 8 man page for possible options and their meanings. +<<<<<<< HEAD +||||||| parent of 4a2a69c4472c (mount_nullfs(8): document -o cache and vfs.nullfs.cache_vnodes) +Additionally the following option is supported: +.Bl -tag -width indent +.It Cm nocache +Disable metadata caching in the null layer. +Some lower-layer file systems may force this option. +Depending on the access pattern, +this may result in increased lock contention. +.El +======= +Additionally the following option is supported: +.Bl -tag -width nocache +.It Cm nocache +Disable metadata caching in the null layer. +Some lower-layer file systems may force this option. +Depending on the access pattern, +this may result in increased lock contention. +.It Cm cache +Force enable metadate caching. +.El +>>>>>>> 4a2a69c4472c (mount_nullfs(8): document -o cache and vfs.nullfs.cache_vnodes) .El .Pp +The +.Dv vfs.nullfs.cache_vnodes +sysctl specifies global default for mount-specific cache/nocache option. +.Pp The null layer has two purposes. First, it serves as a demonstration of layering by providing a layer which does nothing. From nobody Thu Mar 14 00:47:40 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw7yP6ks4z5DnPT; Thu, 14 Mar 2024 00:47: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 4Tw7yP2l2bz4HSQ; Thu, 14 Mar 2024 00:47:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377261; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zpK2QOtC++BXVh757GptLTFo3QbTcInAG62q0rQW4Kk=; b=wrmrIEuh8eQwZvRZdS4bGEH7Aabxelo1HUtWDAbpyBbqwItvwGonZ6+tJTTkqI+RjPxsIB y9fwQLCdLMEvbw9mtnEd5ILQYxlnWxq5ehogQC/Bg5EUnpOlo/qPm4b2FQUVZehc34Au57 dimmV6eC0T9skmoWt8LHVzcRbpjbviiFGIZm/+4egDrR0M46LMdpo3NrIDZ6pJdHzQErNQ CZN2V4I++e4oyNXs2gh7ISpYWsfyGchVLCQruUggJZ6p3UhT1rg4Z4s6vUQOZfSL2yrDME UTdk/VMv/vHn4aDEVd03OJ5MldDCE+rNp2uoW5bU2APlmUvEVmTgGKrG9tJbow== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710377261; a=rsa-sha256; cv=none; b=O0GgSIlBYkOV/gNJ1IOL6mRm0in/WkHb4NHeumsJdD2pOrm8tMI/oGMlC9U1Cohhhsvw8F j2PTvELqFuyEHJlMNmLx4LrNp3wZ8AqHHrIs2+cuRBMHEkDC3J7th7LMEW+/cDisgIaNUG Ku0NWJkuJETIddwhhkCAnc6VC4OkXL9fTXPs1JLtfG/TKhWKRyLXxzzR///gESLwiMJMp7 ErfZLqYhlnrU3OtQrElyNW+EWTE4eD9+Od02QcmWgerj4X80XyFnEegQHWecwHxu06Rt50 XiXMzeSZUaKL2zbAOSfi/yzwHUO4I9iWglsJBfzg1NosrXlG60WzJbkUa5y/uw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377261; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zpK2QOtC++BXVh757GptLTFo3QbTcInAG62q0rQW4Kk=; b=dCAjJgaA4+VEFRoBG6LDXyd2f4VJAnyBsetyN6P5Rj9bggb+g5raLUiBU8X/OPXe1iaaOZ qanu6x74YlPKEE+GR7nlTPzPudwOqVXCgEte2UjZT/ajqILVfKD9u3akxUUaNTVnD4Yzuu zU5Hv+LMSFXzZb9wReaTvFtLtpYk0t59qrLBB7vjYoQo2ho9LonBN9YVogu2lCo75x9uJT wU1D/ozlNUaaVroYVkwrq/Zc66FZLkjZ8q4DMmPsUgFUTxz4Tuu/pHgjSdeW9yAyb+1EZm MboEESqCw9fnvQx6F+PdGTomTi689Sh66T6WPQ44UWbyRKz1xT7JvjA7wwg2dw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw7yN6ZDHz152c; Thu, 14 Mar 2024 00:47: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 42E0lep4029424; Thu, 14 Mar 2024 00:47:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E0lepM029421; Thu, 14 Mar 2024 00:47:40 GMT (envelope-from git) Date: Thu, 14 Mar 2024 00:47:40 GMT Message-Id: <202403140047.42E0lepM029421@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: de21d08e9e31 - stable/13 - nullfs_mount(): fix whitespace List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: de21d08e9e31059d0a387bd2cf180528adb473ff Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=de21d08e9e31059d0a387bd2cf180528adb473ff commit de21d08e9e31059d0a387bd2cf180528adb473ff Author: Konstantin Belousov AuthorDate: 2024-03-08 18:51:04 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-13 00:31:21 +0000 nullfs_mount(): fix whitespace (cherry picked from commit 4e8d264b0057e80ed2c1086da30d5e2391d82ffc) --- sys/fs/nullfs/null_vfsops.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/fs/nullfs/null_vfsops.c b/sys/fs/nullfs/null_vfsops.c index 6a3f77a11734..77ead04b1616 100644 --- a/sys/fs/nullfs/null_vfsops.c +++ b/sys/fs/nullfs/null_vfsops.c @@ -210,7 +210,7 @@ nullfs_mount(struct mount *mp) (xmp->nullm_vfs->mnt_kern_flag & MNTK_NULL_NOCACHE) == 0) { xmp->nullm_flags |= NULLM_CACHE; } - + MNT_ILOCK(mp); if ((xmp->nullm_flags & NULLM_CACHE) != 0) { mp->mnt_kern_flag |= lowerrootvp->v_mount->mnt_kern_flag & From nobody Thu Mar 14 00:47:41 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw7yQ34VRz5DnPV; Thu, 14 Mar 2024 00:47: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 4Tw7yQ186Rz4HVp; Thu, 14 Mar 2024 00:47:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377262; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R16L/CzbQHv404e/JvZ9/XHqZjzPeaVEt0vAGz1F2hE=; b=Xc4/YJB4srze9EbXOfkE0ux0OzUlAEPcESA+iXi5pBl4KEmaK3tlTmL/2Di7iLBTwnaOt7 33K6slFDUi5zNHGe1T01nJEWX1cad3G7HLuJGgVa1OjN7CYtKwgTPe9fko9IUmA2d2vYc6 SXVBe65jgOEXnAV8JgXno/lA+OjzpWLq+/EbnHH8FEkmgc7quSRkUk677/Ge9ARN7ysEKM 2sl9dSprQnrYmH8mhtAMtWehw3yneS+BZOJiXWloOAGDMdHcgPFGamapEkLs+mX6YPG3yq wwSE9cazw7sEpLSddOYGMgtUEa8XL5MjdoHgKxQhaxfdOqy25eZu2kUHpkTTBg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710377262; a=rsa-sha256; cv=none; b=iknwEkWp8WcMySNmqW6XgF9Id8m9D2EVjOh2DpOPe/sfcAcpbwRtcufwUx3vufBe6hBD7t mqpXiLrahlOAUWlF1Kt4tl2BFHQxJQSmL8fXApmYRDE2XYWyGx3ELQ/u6btsdn/+Letm60 wDti0Qo9/AgyqQW406ITAFzXEwDeMqngYi2CQr4VUDvc/PeJBnBE4orPWOAIPOVfR7KKYI bUxkYL7TfjeScYm3WlpSjmNzv5RlYjE0lRPmq4ICvsluriAzH8awT9pNw6Xje5tWQ38Bid NfnUWeSk6+GIFzMzFDjI0q/UkbBnOSZ9LosAZaaIe9180Ok9gq4jrBHggX5hAA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710377262; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R16L/CzbQHv404e/JvZ9/XHqZjzPeaVEt0vAGz1F2hE=; b=q+Jz7iGdngs0uOGEFXWIlZMm5jXvUZyrV1qrbv5nNUJ73Bj866DRj6nviyfkDGfN+tGjkh rVA15EVyApU1az9AkQP3QrGmwoqIDyh7hRHh5DfD3cCouFwJgUAcvyooHS0mRKTuOg3vhZ VefzM7lMCIHDM7NBGfhPrAfpp9QnSyp54jYzmq9kcEXLS70m4bur9jMmIqekTZAOkRjKnJ BwYvEeeND99B4bP+kZlZCL5dgWsJJwypXrrQVuGbf7VaMpTnaebCpsuHh9jiHqLioSAUjR kqTepeXpPdzXMlKdPWJK8QA0y5grpQjt94VjEiQIjW/2CuFF1g8WNj6vSEHrAg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw7yQ099pz15ZL; Thu, 14 Mar 2024 00:47: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 42E0lfjO029460; Thu, 14 Mar 2024 00:47:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E0lfIG029457; Thu, 14 Mar 2024 00:47:41 GMT (envelope-from git) Date: Thu, 14 Mar 2024 00:47:41 GMT Message-Id: <202403140047.42E0lfIG029457@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: 6bf21b4c0c61 - stable/13 - mount_nullfs(8): fix typo List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 6bf21b4c0c616e627a685bab58bf884ebf33e031 Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=6bf21b4c0c616e627a685bab58bf884ebf33e031 commit 6bf21b4c0c616e627a685bab58bf884ebf33e031 Author: Konstantin Belousov AuthorDate: 2024-03-09 21:18:11 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-13 00:31:21 +0000 mount_nullfs(8): fix typo (cherry picked from commit bdf1587a4973df2f012278b4e975da1cd8766f83) --- sbin/mount_nullfs/mount_nullfs.8 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/mount_nullfs/mount_nullfs.8 b/sbin/mount_nullfs/mount_nullfs.8 index fc33e64e2902..759f7546c49a 100644 --- a/sbin/mount_nullfs/mount_nullfs.8 +++ b/sbin/mount_nullfs/mount_nullfs.8 @@ -109,7 +109,7 @@ Some lower-layer file systems may force this option. Depending on the access pattern, this may result in increased lock contention. .It Cm cache -Force enable metadate caching. +Force enable metadata caching. .El >>>>>>> 4a2a69c4472c (mount_nullfs(8): document -o cache and vfs.nullfs.cache_vnodes) .El From nobody Thu Mar 14 02:17:26 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw9xz1RpVz5DwXs for ; Thu, 14 Mar 2024 02:17: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 4Tw9xz0ZJ2z4TD3; Thu, 14 Mar 2024 02:17:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710382647; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VOQSY4529Fz/CPnX5Tl4mWka8sZHOWcvCI7QU8rlqKA=; b=F3lzrLWJD8jYUCot1P05Q+E6gf56OY3cYTptEcDa68u91XfOstRamSP4CKaoe2+kH5B/3D 7vkj8iDC0Zn4Obb4CygpJBE+AUAHuxMnb3sBTjOwT1G4e9CY55A/h4wq1H8mH/Xsuuormy 4gJWu8hfuqGsvv7OoeRRGoSitF7onE+XDG8bf9uLUwoC6oxNG5JZjU17dZeuKWg0+tSxva UcQE0MpSVIOG5tL8g1zwiR+KgzqpyMGpotF/DIzbz9A1J8T3J+LTLmPQF7HxqP6UiHN68X mxKgheFagq2MCIkcCR0FRa3RWQRsptmD/KPNJ4y7gDXSXSETBD7RLWomOzgY7w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710382647; a=rsa-sha256; cv=none; b=IEqkZWl+pxA/jbIAgYuiVj17cvoYP8g4nWNgnRvyLftHnVrqFCdrIDbY9LvT1So+4ScMDK AdxR38aN/NGNHLZ2QR3ff4hzOvfw5R/2vWTaenqmNAdSrUC442IQprcvhm11ZL2oevU7O5 PoO6okhfN0uQ+x1dhbfHngWu16kwSCD5TIJBsgpgmoNRJTktGA+AOsdwdANNPNg0W/OAUd UQFc9TlijPoo+O//JbrOjO/97hO+gNY5ypdFi9fY5JmwBx/NqaFqVERAdnvKcjoz3JnH6R YBhU7iEg1k0iKya/3J0g+DcqV9H++lzPdqW0CJiVT6kDGFLXbt6zneOkq0k3eA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710382647; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VOQSY4529Fz/CPnX5Tl4mWka8sZHOWcvCI7QU8rlqKA=; b=u31bqaSouAFj4oj1Kj05bx0Ph4vNXyINnHelg0yWbqvl0wYOod6onfoFb35ss6l5+KZzRm DgkF/QakNJhmMgP2gXiGLPjeDFJI9M6odBtOr5x7Fe5ehe2Zzsr89v/BkI9P/3/MhvCw/C G1AIO6LtL8jkdmlIevdHsPdjzzyyYLqZnILf42Rt9zZCQLSQj/Mz0ZhrLXYAvO4VVLsXRx qpY93dZ6I/SdvqZkUQ2rCtSRAEXt0pK9sie4Acq6oU87kWebHQ8+ESVtEuFlfKFblORK8K eMs+pWz40dZo16Vhpy6l9ff7FfIJq+mpVKgQwvGHHI+xHJSUttHciPQ7p0U4Lg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw9xy6zYgz17j8; Thu, 14 Mar 2024 02:17: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 42E2HQIO081815; Thu, 14 Mar 2024 02:17:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E2HQZB081814; Thu, 14 Mar 2024 02:17:26 GMT (envelope-from git) Date: Thu, 14 Mar 2024 02:17:26 GMT Message-Id: <202403140217.42E2HQZB081814@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: "Simon J. Gerraty" Subject: git: 7a05a7153af6..368b06ce6b01 - vendor/NetBSD/bmake - vendor branch updated List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sjg X-Git-Repository: src X-Git-Refname: refs/heads/vendor/NetBSD/bmake X-Git-Reftype: branch X-Git-Commit: 368b06ce6b0135d6de13f7265f6dcbaeb791b3bb X-Git-Oldrev: 7a05a7153af649605e1ebde33aac94a14ed2a4cd X-Git-Newrev: 368b06ce6b0135d6de13f7265f6dcbaeb791b3bb Auto-Submitted: auto-generated The branch vendor/NetBSD/bmake has been updated by sjg: URL: https://cgit.FreeBSD.org/src/log/?id=7a05a7153af6..368b06ce6b01 a6b892e1c76a Import bmake-20240309 368b06ce6b01 Need a blank line after brief summary From nobody Thu Mar 14 02:17:26 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tw9xz1T93z5Dwkk for ; Thu, 14 Mar 2024 02:17: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 4Tw9xz0h1kz4T9f; Thu, 14 Mar 2024 02:17:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710382647; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=f5PTrS2faqxUsGlI0ocPXuFQ79dIxrHEOXnzpKGnP90=; b=EG/A+pKQCsOrc18WjIFM/aC8Fyv0b5UCPqVFSSCI2YJ92/rRjewSk+m48q86DUwOjXNJ5x Twr2/W/gy6tnFPKSxeI2jhEyAn4le7XnNjwHh8UxhTWM+lHfiN8oLassIH3RrGXszKdtPg jsIqq3A+RoEdYJXTM1nadlZbvtk/BqDKFM+eL+1+OQJk0/q5KydFpdytzy9smBHdYtLntQ VL6VMO8cngjA32xA714ZthBhQTDHFJ7eunoTxGfr73Rg0PpHBI5T7ioVkd5e1HKTM0z+SK zuUFI0b18Bsg5veTu7TgvK3o3b6n/jOgsc3jlE6UPGZKrdkkrzO9XOtyoHOQNw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710382647; a=rsa-sha256; cv=none; b=GHmHoA4UHW2WEtnMGzJcuCJz/d6Kimu1+gIVnJ/6fj8wEWuw0JMjh3G/vVAEXDHI6mqelT XJnPwh5or0UdsfZfyEnhV9eWw6sT3GB/4zlLvm3XJoLO6mS1T9lBlndMfcei7+Nv11jRn3 rdeSiij5+vdBYi+VLr/IQUP5uMsKsvJkMFB6ftqcTADrrd52ZhGqAirlU9JESn2jW/H12I chn2NLYZdnyQ7l/NPYCMGONp5smNOwZfW1MeBBsketN6HpPPGsiKLQf0jlqB+5caegJ7A8 qDpLJL+pxijE4urV+WFVpGb+wWC6Xj/1n9V8Z6OEx4wqP3x8p6Qjk0eUVJabCA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710382647; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=f5PTrS2faqxUsGlI0ocPXuFQ79dIxrHEOXnzpKGnP90=; b=E89dudJR7KUJxt1Eyq9FMLsCaQLYVWCaYvIiGp9NY2YumZ24yLMWjrqctWCjqZngOFFOm+ O1AMDl0Jj/zpa2SjDV0CtWdG4hb4mk0i3uGrEc1i1OH1JEjzzq/D6LJITO+badJSZNAmqW fTr3+asr/ZNGnSj2QwUMcuNIh4Xf6JBGwWvOBxQsjDjpl8TmTBihm6JN4Pzk2Skk0XnmKd 10/E8/futQ493BKBAtsMpMANT5ELiyp7r/+pLoT7DHINSllQaBQi/vK4UvRcoS4wf80rl1 IaRG3gtRra3tLYflWc8Jve9RjcWTrN3uOXi9f/XsYVVTnCAPMbrbJgYL5P/pQQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tw9xz0Hwzz17ww; Thu, 14 Mar 2024 02:17: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 42E2HQTR081834; Thu, 14 Mar 2024 02:17:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E2HQVX081833; Thu, 14 Mar 2024 02:17:26 GMT (envelope-from git) Date: Thu, 14 Mar 2024 02:17:26 GMT Message-Id: <202403140217.42E2HQVX081833@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: "Simon J. Gerraty" Subject: git: 68a8dbc90092 - Create tag vendor/NetBSD/bmake/20240309 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sjg X-Git-Repository: src X-Git-Refname: refs/tags/vendor/NetBSD/bmake/20240309 X-Git-Reftype: annotated tag X-Git-Commit: 68a8dbc900922b93e80348c8f0b968297f41affa Auto-Submitted: auto-generated The annotated tag vendor/NetBSD/bmake/20240309 has been created by sjg: URL: https://cgit.FreeBSD.org/src/tag/?h=vendor/NetBSD/bmake/20240309 tag vendor/NetBSD/bmake/20240309 Tagger: Simon J. Gerraty TaggerDate: 2024-03-14 02:17:08 +0000 Tag bmake/20240309 commit 368b06ce6b0135d6de13f7265f6dcbaeb791b3bb Author: Simon J. Gerraty AuthorDate: 2024-03-14 02:16:35 +0000 Commit: Simon J. Gerraty CommitDate: 2024-03-14 02:16:35 +0000 Need a blank line after brief summary From nobody Thu Mar 14 04:08:37 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TwDQF3GWyz5F5cc; Thu, 14 Mar 2024 04:08:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TwDQF2hr0z4d0N; Thu, 14 Mar 2024 04:08:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710389317; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=geCUy4hwt4QAV1Y05buTL9BUsWf7NsAsb/ZEUOpAzQg=; b=RE3J6Krksu1s7PhawFthdVrUJLmndDtZEeJ2D6lBXlACFeZuCT3uGVmJqdPexe3FocsteJ f+fxA6iHLltx9NyGwqqb5Gc4JNsMe9brTSa8vF91hYd8G5zfHPqvbyKMSfoCiyg/+zS67G Hf5Tijo6G9//eVIo0FwfOD8MsqtitqkdscE+7NvtIhEogjxlKXLS50MWJtGqTGc13P0K50 hcjNSXhKefqNyYGlMWJp7RBWVEcmE4GJ1OO80utY7IUL/+yhdytvB93PxT9RUgnGAkUEpr mjrlv3AbVgM1xtS/KPw/oBoPxljzyHckNKLSPpmYah9Rr4s/iyLhcIg2gJrdnw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710389317; a=rsa-sha256; cv=none; b=Qa908h65ZOgab4vOCfHHKelRVNds+p1NvfPZy2AUFUHJRhW/rjIZog/28XXpgt8fRJgRC5 8cqqeC0sbPmSsGARHLQ78a7y4Qf5yEb2l9rBdDn2GAqdvBxJsbyQk1lAku8ArcK5nxQtoe ORu00DFBUgCHiqSU3HZrRgOso1GyiCGu+zogXDliFj+Rp4EwJwRLnBDSX3gzqOruNAk03i Wlz2xnLlD/H1TTS7dKMxaUOdCzeo5Ox1uBMngWRQbEFCuFarGKi1dtBfgWeRobt0k0nvJN Wzkj9R0VrXip6bMhZDwtt/QxOLV7p18hdJKuCZIK9GRH0CdW07mQqDLGXp5VsQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710389317; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=geCUy4hwt4QAV1Y05buTL9BUsWf7NsAsb/ZEUOpAzQg=; b=mGrCh6dCIqjJf9+U2haf7/pz/Ryrr+rzmIXKR1Mr9r5pSKVUJn3Va/sR6m2uGYJ52o83HD 9K6adBnaNZxMfoeyjIPZ2GZzdVMPQIs6RBWu+iQq30+VzAPZKBy3OcU38G7sXjnnhEqE0+ qUU5DhccykpRwTS55bvjtrjjqX2S38qfTXHLGjPPzsdqgZmTFcP/GrJUdFvWN7hNs58C5m y0T4/lSh5fRETdiui9mwAPlW90SxVqovRf/m2LI7a0xzd1OxQDG2681w2qffhzZHUgfp7G t6+M3ZiuHRSRiqaIR31Psctj7y/S0iSHYQHVzYhmjTrQNUnCDmuXJKqQ7cCr4g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TwDQF2JKHz1BYP; Thu, 14 Mar 2024 04:08:37 +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 42E48bJF068577; Thu, 14 Mar 2024 04:08:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E48bl5068574; Thu, 14 Mar 2024 04:08:37 GMT (envelope-from git) Date: Thu, 14 Mar 2024 04:08:37 GMT Message-Id: <202403140408.42E48bl5068574@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: ab8f59ceaf70 - main - rack: don't define TCPOUTFLAGS List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ab8f59ceaf7028d4e420820deeac180b4f743524 Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=ab8f59ceaf7028d4e420820deeac180b4f743524 commit ab8f59ceaf7028d4e420820deeac180b4f743524 Author: Gleb Smirnoff AuthorDate: 2024-03-14 04:07:59 +0000 Commit: Gleb Smirnoff CommitDate: 2024-03-14 04:07:59 +0000 rack: don't define TCPOUTFLAGS as the code doesn't use tcp_outflags. This should fix gcc builds. --- sys/netinet/tcp_stacks/rack_pcm.c | 1 - 1 file changed, 1 deletion(-) diff --git a/sys/netinet/tcp_stacks/rack_pcm.c b/sys/netinet/tcp_stacks/rack_pcm.c index be3028837c44..09e90da88895 100644 --- a/sys/netinet/tcp_stacks/rack_pcm.c +++ b/sys/netinet/tcp_stacks/rack_pcm.c @@ -85,7 +85,6 @@ #include #include #include -#define TCPOUTFLAGS #include #include #include From nobody Thu Mar 14 04:57:35 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TwFVs1cSMz5F9Ll; Thu, 14 Mar 2024 04:57: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 4TwFVs1Nwgz4hPQ; Thu, 14 Mar 2024 04:57:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710392261; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ifbF8yWAkS7HnIrjS+EG1KJ5zamfQE4GVg6Y78M/fR4=; b=bZKmAqRwqBGM9ByXMtuQU9U+7naxakppBt0ZHbqRpCMte9t0CvApLjFXowBzYNjGn09eIS ex//eaEv540tr0MX7uiJloumYA1EJsNQoNrMuDpy6sb/BDIe1qZ5TiQxdWB2tPddJEzO7n j2X9EvKil89qFzMXEfx3xwHamrSDPJleKB4Bp8nqwOYSGKlyIowtnkTy0stJQ7BjlLvhg/ z64WfszG193dhCkfvwGz1tWOOw0deEm5Bq+vGYOeIXXJfdnmoQBIAsF/SsBPXePf13wZR6 pz+EwMmNIppO22GR30tFErqqq/n7W4+baJwoy6P5wOu1fbnUGpSAnYS3B3rFWA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710392261; a=rsa-sha256; cv=none; b=Pb6UQiGGou2ff3KUCKPAjPNr/9DaKhx2+g+pWkts03KYLlEL4F22Ffa199FF+EAySMb6MV HozJxBSL7M/RZsSsyQAJvjMYjJPZ7Zr7Uu3S5lthNP4SnLEguq/4iKM2UR9jwz27xBGUwq hWDfaxbrt2QRzc3SGGmAebIKKfQimFwgd1Pju2ZiPEpFcMi6B9EAI97+aVPRJ1wcGqkJMC lxLQPi4lwbpoUG4pciZTSqtpKql4oDnWQq6t4/F3GQT/vIfGv/vMdfGjjVMd00YRfHjMms z3kMRaA9BlkXz3WUZneMg9HupyFzMwGQkltGuql4yQhWO6ewkBduPSECJCkYOQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710392261; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ifbF8yWAkS7HnIrjS+EG1KJ5zamfQE4GVg6Y78M/fR4=; b=SY7hFCA9H7/OGNSGy74jCOCmq6R0MfcA5f3wpFvmP3UCsbAAJBBcfYZnXRdUCiDdbJdC5e +E8OmjgUZPPCxtVCkRU83oN6Q4j/c20hUD/AMiF/DOwuTtbCekDW3ksocEErXh+10cwJIZ wlP9m1K0XXNBJ0gs6EkjxPfNmMvheFrQEWqjS59Dzw2Fcz2AA0iUbrfH87GPxtmmVXhAzU 13qNokwC0HTGxt4pir5KMC63pDKBH56uTIgvc1M1FVOSWg1/6drcadPA0CjWbx85ZVD2s1 0XO22zSMkOkf1X4kGNiLmv6fJzrvhKRPFynsb8pUlbyZYKuz7RTiYy4w4g0uew== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TwFVs0srzz1Cvy; Thu, 14 Mar 2024 04:57: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 42E4vfLS051666; Thu, 14 Mar 2024 04:57:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E4vZmx051657; Thu, 14 Mar 2024 04:57:35 GMT (envelope-from git) Date: Thu, 14 Mar 2024 04:57:35 GMT Message-Id: <202403140457.42E4vZmx051657@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Simon J. Gerraty" Subject: git: c59c3bf34db3 - main - Merge bmake-20240309 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sjg X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c59c3bf34db360695f07735bebc76a768cac5afc Auto-Submitted: auto-generated The branch main has been updated by sjg: URL: https://cgit.FreeBSD.org/src/commit/?id=c59c3bf34db360695f07735bebc76a768cac5afc commit c59c3bf34db360695f07735bebc76a768cac5afc Merge: ab8f59ceaf70 368b06ce6b01 Author: Simon J. Gerraty AuthorDate: 2024-03-14 04:54:47 +0000 Commit: Simon J. Gerraty CommitDate: 2024-03-14 04:56:57 +0000 Merge bmake-20240309 Merge commit '368b06ce6b0135d6de13f7265f6dcbaeb791b3bb' contrib/bmake/ChangeLog | 57 + contrib/bmake/Makefile | 7 +- contrib/bmake/VERSION | 2 +- contrib/bmake/arch.c | 8 +- contrib/bmake/bmake.1 | 22 +- contrib/bmake/bmake.cat1 | 2564 +++++++++----------------- contrib/bmake/boot-strap | 17 +- contrib/bmake/compat.c | 8 +- contrib/bmake/cond.c | 66 +- contrib/bmake/config.h.in | 3 + contrib/bmake/configure | 24 +- contrib/bmake/configure.in | 5 +- contrib/bmake/for.c | 6 +- contrib/bmake/import.sh | 2 + contrib/bmake/install-sh | 4 +- contrib/bmake/job.c | 8 +- contrib/bmake/main.c | 39 +- contrib/bmake/make-conf.h | 50 +- contrib/bmake/make.1 | 22 +- contrib/bmake/make.h | 5 +- contrib/bmake/mk/ChangeLog | 80 + contrib/bmake/mk/FILES | 2 + contrib/bmake/mk/auto.dep.mk | 6 +- contrib/bmake/mk/auto.obj.mk | 4 +- contrib/bmake/mk/autoconf.mk | 21 +- contrib/bmake/mk/autodep.mk | 91 +- contrib/bmake/mk/cc-wrap.mk | 4 +- contrib/bmake/mk/ccm.dep.mk | 60 + contrib/bmake/mk/compiler.mk | 6 +- contrib/bmake/mk/cython.mk | 4 +- contrib/bmake/mk/dep.mk | 19 +- contrib/bmake/mk/dirdeps-cache-update.mk | 4 +- contrib/bmake/mk/dirdeps-options.mk | 4 +- contrib/bmake/mk/dirdeps-targets.mk | 7 +- contrib/bmake/mk/doc.mk | 9 +- contrib/bmake/mk/dpadd.mk | 6 +- contrib/bmake/mk/files.mk | 4 +- contrib/bmake/mk/host-target.mk | 16 +- contrib/bmake/mk/inc.mk | 4 +- contrib/bmake/mk/init.mk | 29 +- contrib/bmake/mk/install-mk | 4 +- contrib/bmake/mk/install-new.mk | 4 +- contrib/bmake/mk/install-sh | 4 +- contrib/bmake/mk/java.mk | 3 +- contrib/bmake/mk/jobs.mk | 4 +- contrib/bmake/mk/ldorder.mk | 4 +- contrib/bmake/mk/lib.mk | 28 +- contrib/bmake/mk/libnames.mk | 4 +- contrib/bmake/mk/libs.mk | 4 +- contrib/bmake/mk/links.mk | 4 +- contrib/bmake/mk/man.mk | 22 +- contrib/bmake/mk/manifest.mk | 4 +- contrib/bmake/mk/meta.autodep.mk | 14 +- contrib/bmake/mk/meta.stage.mk | 6 +- contrib/bmake/mk/meta.subdir.mk | 4 +- contrib/bmake/mk/meta.sys.mk | 12 +- contrib/bmake/mk/meta2deps.py | 13 +- contrib/bmake/mk/meta2deps.sh | 4 +- contrib/bmake/mk/mkopt.sh | 4 +- contrib/bmake/mk/newlog.sh | 4 +- contrib/bmake/mk/obj.mk | 11 +- contrib/bmake/mk/options.mk | 4 +- contrib/bmake/mk/own.mk | 30 +- contrib/bmake/mk/posix.mk | 4 +- contrib/bmake/mk/prlist.mk | 4 +- contrib/bmake/mk/prog.mk | 46 +- contrib/bmake/mk/progs.mk | 4 +- contrib/bmake/mk/rst2htm.mk | 4 +- contrib/bmake/mk/scripts.mk | 4 +- contrib/bmake/mk/srctop.mk | 4 +- contrib/bmake/mk/stage-install.sh | 4 +- contrib/bmake/mk/subdir.mk | 131 +- contrib/bmake/mk/suffixes.mk | 195 ++ contrib/bmake/mk/sys.clean-env.mk | 4 +- contrib/bmake/mk/sys.debug.mk | 4 +- contrib/bmake/mk/sys.dependfile.mk | 4 +- contrib/bmake/mk/sys.dirdeps.mk | 9 +- contrib/bmake/mk/sys.mk | 19 +- contrib/bmake/mk/sys.vars.mk | 4 +- contrib/bmake/mk/sys/Generic.mk | 182 +- contrib/bmake/mk/target-flags.mk | 4 +- contrib/bmake/mk/warnings.mk | 4 +- contrib/bmake/mk/whats.mk | 4 +- contrib/bmake/mk/yacc.mk | 4 +- contrib/bmake/parse.c | 22 +- contrib/bmake/suff.c | 8 +- contrib/bmake/targ.c | 5 +- contrib/bmake/unit-tests/Makefile | 11 +- contrib/bmake/unit-tests/var-scope-local.exp | 14 +- contrib/bmake/unit-tests/var-scope-local.mk | 19 +- contrib/bmake/unit-tests/varmod-indirect.mk | 28 +- contrib/bmake/unit-tests/varmod.exp | 10 +- contrib/bmake/unit-tests/varmod.mk | 5 +- contrib/bmake/var.c | 75 +- 94 files changed, 1938 insertions(+), 2395 deletions(-) diff --cc contrib/bmake/Makefile index 22e92b4da9ac,000000000000..3332dcdeaf2d mode 100644,000000..100644 --- a/contrib/bmake/Makefile +++ b/contrib/bmake/Makefile @@@ -1,238 -1,0 +1,237 @@@ - # $Id: Makefile,v 1.125 2023/05/17 00:15:46 sjg Exp $ ++# $Id: Makefile,v 1.126 2024/03/10 17:46:44 sjg Exp $ + +PROG= bmake + +SRCS= \ + arch.c \ + buf.c \ + compat.c \ + cond.c \ + dir.c \ + for.c \ + hash.c \ + job.c \ + lst.c \ + main.c \ + make.c \ + make_malloc.c \ + meta.c \ + metachar.c \ + parse.c \ + str.c \ + suff.c \ + targ.c \ + trace.c \ + util.c \ + var.c + +.-include "VERSION" +.-include "Makefile.inc" + +# this file gets generated by configure +.-include "Makefile.config" + +.if !empty(LIBOBJS) +SRCS+= ${LIBOBJS:T:.o=.c} +.endif + +# just in case +prefix?= /usr +srcdir?= ${.CURDIR} + +DEFAULT_SYS_PATH?= ${prefix}/share/mk + +CPPFLAGS+= -DUSE_META +CFLAGS+= ${CPPFLAGS} +CFLAGS+= -D_PATH_DEFSYSPATH=\"${DEFAULT_SYS_PATH}\" +CFLAGS+= -I. -I${srcdir} ${XDEFS} -DMAKE_NATIVE +CFLAGS+= ${COPTS.${.ALLSRC:M*.c:T:u}} +COPTS.main.c+= "-DMAKE_VERSION=\"${_MAKE_VERSION}\"" + +.for x in FORCE_MACHINE FORCE_MACHINE_ARCH +.ifdef $x +COPTS.main.c+= "-D$x=\"${$x}\"" +.endif +.endfor + +# meta mode can be useful even without filemon +# should be set by now +USE_FILEMON ?= no +.if ${USE_FILEMON:tl} != "no" +.PATH: ${srcdir}/filemon +SRCS+= filemon_${USE_FILEMON}.c +COPTS.meta.c+= -DUSE_FILEMON -DUSE_FILEMON_${USE_FILEMON:tu} +COPTS.job.c+= ${COPTS.meta.c} + +.if ${USE_FILEMON} == "dev" +FILEMON_H ?= /usr/include/dev/filemon/filemon.h +.if exists(${FILEMON_H}) && ${FILEMON_H:T} == "filemon.h" +COPTS.filemon_dev.c += -DHAVE_FILEMON_H -I${FILEMON_H:H} +.endif +.elif ${USE_FILEMON} == "ktrace" +COPTS.filemon_ktrace.c += -Wno-error=unused-parameter +.endif + +.endif # USE_FILEMON + +.PATH: ${srcdir} + +.if make(obj) || make(clean) +SUBDIR+= unit-tests +.endif + +# start-delete1 for bsd.after-import.mk +# we skip a lot of this when building as part of FreeBSD etc. + +# list of OS's which are derrived from BSD4.4 +BSD44_LIST= NetBSD FreeBSD OpenBSD DragonFly MirBSD Bitrig +# we are... +OS := ${.MAKE.OS:U${uname -s:L:sh}} +# are we 4.4BSD ? +isBSD44:=${BSD44_LIST:M${OS}} + - .if ${isBSD44} == "" && ${OS:NDarwin:NLinux} != "" - MANTARGET= cat - INSTALL?=${srcdir}/install-sh ++.if ${isBSD44} == "" && ${OS:NCYGWIN*:NDarwin:NLinux} != "" ++MANTARGET?= cat +.if ${MACHINE} == "sun386" +# even I don't have one of these anymore :-) +CFLAGS+= -DPORTAR +.elif ${OS} != "SunOS" +# assume the worst +SRCS+= sigcompat.c +CFLAGS+= -DSIGNAL_FLAGS=SA_RESTART +.endif +.else +MANTARGET?= man +.endif + +# turn this on by default - ignored if we are root +WITH_INSTALL_AS_USER= + +# suppress with -DWITHOUT_* +OPTIONS_DEFAULT_YES+= \ + AUTOCONF_MK \ + INSTALL_MK \ + PROG_LINK + +OPTIONS_DEFAULT_NO+= \ + PROG_VERSION + +# process options now +.include + +.if ${MK_PROG_VERSION} == "yes" +PROG_NAME= ${PROG}-${_MAKE_VERSION} +.if ${MK_PROG_LINK} == "yes" +SYMLINKS+= ${PROG_NAME} ${BINDIR}/${PROG} +.endif +.endif + +EXTRACT_MAN=no +# end-delete1 + +MAN= ${PROG}.1 +MAN1= ${MAN} + +.if ${PROG} != "make" +CLEANFILES+= my.history +.if make(${MAN}) || !exists(${srcdir}/${MAN}) +my.history: + @(echo ".Nm"; \ + echo "is derived from NetBSD"; \ + echo ".Xr make 1 ."; \ + echo "It uses autoconf to facilitate portability to other platforms."; \ + echo ".Pp") > $@ + +.NOPATH: ${MAN} +${MAN}: make.1 my.history + @echo making $@ + @sed \ + -e '/^.Dt/s/MAKE/${PROG:tu}/' \ + -e 's/^.Nx/NetBSD/' \ + -e '/^.Nm/s/make/${PROG}/' \ + -e '/^.Sh HISTORY/rmy.history' \ + -e '/^.Sh HISTORY/,$$s,^.Nm,make,' ${srcdir}/make.1 > $@ + +all beforeinstall: ${MAN} +_mfromdir=. +.endif +.endif + +MANTARGET?= cat +MANDEST?= ${MANDIR}/${MANTARGET}1 + +.if ${MANTARGET} == "cat" +_mfromdir=${srcdir} +.endif + +.include + +CPPFLAGS+= -DMAKE_NATIVE -DHAVE_CONFIG_H +COPTS.var.c += -Wno-cast-qual +COPTS.job.c += -Wno-format-nonliteral +COPTS.parse.c += -Wno-format-nonliteral +COPTS.var.c += -Wno-format-nonliteral + +# Force these +SHAREDIR= ${SHAREDIR.bmake:U${prefix}/share} +BINDIR= ${BINDIR.bmake:U${prefix}/bin} +MANDIR= ${MANDIR.bmake:U${SHAREDIR}/man} + +${OBJS}: config.h + +# start-delete2 for bsd.after-import.mk + +# make sure that MAKE_VERSION gets updated. +main.o: ${srcdir}/VERSION + +.if ${MK_AUTOCONF_MK} == "yes" +CONFIGURE_DEPS += ${.CURDIR}/VERSION +# we do not need or want the generated makefile +CONFIGURE_ARGS += --without-makefile +AUTOCONF_GENERATED_MAKEFILE = Makefile.config +.include +.endif +SHARE_MK ?= ${SHAREDIR}/mk +MKSRC = ${srcdir}/mk +INSTALL ?= ${srcdir}/install-sh + +.if ${MK_INSTALL_MK} == "yes" +install: install-mk +.endif + +beforeinstall: + test -d ${DESTDIR}${BINDIR} || ${INSTALL} -m ${DIRMODE} -d ${DESTDIR}${BINDIR} + test -d ${DESTDIR}${MANDEST} || ${INSTALL} -m ${DIRMODE} -d ${DESTDIR}${MANDEST} + +install-mk: +.if exists(${MKSRC}/install-mk) + test -d ${DESTDIR}${SHARE_MK} || ${INSTALL} -m ${DIRMODE} -d ${DESTDIR}${SHARE_MK} + sh ${MKSRC}/install-mk -v -m ${NONBINMODE} ${DESTDIR}${SHARE_MK} +.else + @echo need to unpack mk.tar.gz under ${srcdir} or set MKSRC; false +.endif +# end-delete2 + +# A simple unit-test driver to help catch regressions +TEST_MAKE ?= ${.OBJDIR}/${PROG:T} +accept test: .NOMETA + cd ${.CURDIR}/unit-tests && \ + MAKEFLAGS= ${TEST_MAKE} -r -m / ${.TARGET} ${TESTS:DTESTS=${TESTS:Q}} + + +.if make(test) && ${MK_AUTO_OBJ} == "yes" +# The test target above visits unit-tests with -r -m / +# which prevents MK_AUTO_OBJ doing its job +# so do it here +.if defined(MAKEOBJDIRPREFIX) || ${MAKEOBJDIR:U:M*/*} != "" +_utobj = ${.OBJDIR}/unit-tests +.else +_utobj = ${.CURDIR}/unit-tests/${MAKEOBJDIR:Uobj} +.endif +utobj: .NOMETA + @test -d ${_utobj} && exit 0; \ + echo "[Creating ${_utobj}...]"; \ + umask ${OBJDIR_UMASK:U002}; \ + mkdir -p ${_utobj} +test: utobj +.endif diff --cc contrib/bmake/mk/ccm.dep.mk index 000000000000,1809a72e7310..1809a72e7310 mode 000000,100644..100644 --- a/contrib/bmake/mk/ccm.dep.mk +++ b/contrib/bmake/mk/ccm.dep.mk diff --cc contrib/bmake/mk/meta2deps.sh index d590a383f82e,000000000000..4c1b674f7b63 mode 100755,000000..100755 --- a/contrib/bmake/mk/meta2deps.sh +++ b/contrib/bmake/mk/meta2deps.sh @@@ -1,455 -1,0 +1,457 @@@ +#!/bin/sh + +# NAME: +# meta2deps.sh - extract useful info from .meta files +# +# SYNOPSIS: +# meta2deps.sh SB="SB" "meta" ... +# +# DESCRIPTION: +# This script looks each "meta" file and extracts the +# information needed to deduce build and src dependencies. +# +# To do this, we extract the 'CWD' record as well as all the +# syscall traces which describe 'R'ead, 'C'hdir and 'E'xec +# syscalls. +# +# The typical meta file looks like:: +#.nf +# +# # Meta data file "path" +# CMD "command-line" +# CWD "cwd" +# TARGET "target" +# -- command output -- +# -- filemon acquired metadata -- +# # buildmon version 2 +# V 2 +# E "pid" "path" +# R "pid" "path" +# C "pid" "cwd" +# R "pid" "path" +# X "pid" "status" +#.fi +# +# The fact that all the syscall entry lines start with a single +# character make these files quite easy to process using sed(1). +# +# To simplify the logic the 'CWD' line is made to look like a +# normal 'C'hdir entry, and "cwd" is remembered so that it can +# be prefixed to any "path" which is not absolute. +# +# If the "path" being read ends in '.srcrel' it is the content +# of (actually the first line of) that file that we are +# interested in. +# +# Any "path" which lies outside of the sandbox "SB" is generally +# not of interest and is ignored. +# +# The output, is a set of absolute paths with "SB" like: +#.nf +# +# $SB/obj-i386/bsd/include +# $SB/obj-i386/bsd/lib/csu/i386 +# $SB/obj-i386/bsd/lib/libc +# $SB/src/bsd/include +# $SB/src/bsd/sys/i386/include +# $SB/src/bsd/sys/sys +# $SB/src/pan-release/rtsock +# $SB/src/pfe-shared/include/jnx +#.fi +# +# Which can then be further processed by 'gendirdeps.mk' +# +# If we are passed 'DPDEPS='"dpdeps", then for each src file +# outside of "CURDIR" we read, we output a line like: +#.nf +# +# DPDEPS_$path += $RELDIR +#.fi +# +# with "$path" geting turned into reldir's, so that we can end +# up with a list of all the directories which depend on each src +# file in another directory. This can allow for efficient yet +# complete testing of changes. + + +# RCSid: - # $Id: meta2deps.sh,v 1.20 2023/01/18 01:35:24 sjg Exp $ ++# $Id: meta2deps.sh,v 1.21 2024/02/17 17:26:57 sjg Exp $ + ++# SPDX-License-Identifier: BSD-2-Clause ++# +# Copyright (c) 2010-2013, Juniper Networks, 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 THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +meta2src() { + cat /dev/null "$@" | + sed -n '/^R .*\.[chyl]$/s,^..[0-9]* ,,p' | + sort -u +} + +meta2dirs() { + cat /dev/null "$@" | + sed -n '/^R .*\/.*\.[a-z0-9][^\/]*$/s,^..[0-9]* \(.*\)/[^/]*$,\1,p' | + sort -u +} + +add_list() { + sep=' ' + suffix= + while : + do + case "$1" in + "|") sep="$1"; shift;; + -s) suffix="$2"; shift 2;; + *) break;; + esac + done + name=$1 + shift + eval list="\$$name" + for top in "$@" + do + case "$sep$list$sep" in + *"$sep$top$suffix$sep"*) continue;; + esac + list="${list:+$list$sep}$top$suffix" + done + eval "$name=\"$list\"" +} + +# some Linux systems have deprecated egrep in favor of grep -E +# but not everyone supports that +case "`echo bmake | egrep 'a|b' 2>&1`" in +bmake) ;; +*) egrep() { grep -E "$@"; } +esac + +_excludes_f() { + egrep -v "$EXCLUDES" +} + +error() { + echo "ERROR: $@" >&2 + exit 1 +} + +meta2deps() { + DPDEPS= + SRCTOPS=$SRCTOP + OBJROOTS= + EXCLUDES= + while : + do + case "$1" in + *=*) eval export "$1"; shift;; + -a) MACHINE_ARCH=$2; shift 2;; + -m) MACHINE=$2; shift 2;; + -C) CURDIR=$2; shift 2;; + -H) HOST_TARGET=$2; shift 2;; + -S) add_list SRCTOPS $2; shift 2;; + -O) add_list OBJROOTS $2; shift 2;; + -X) add_list EXCLUDES '|' $2; shift 2;; + -R) RELDIR=$2; shift 2;; + -T) TARGET_SPEC=$2; shift 2;; + *) break;; + esac + done + + _th= _o= + case "$MACHINE" in + host) _ht=$HOST_TARGET;; + esac + + for o in $OBJROOTS + do + case "$MACHINE,/$o/" in + host,*$HOST_TARGET*) ;; + *$MACHINE*|*${TARGET_SPEC:-$MACHINE}*) ;; + *) add_list _o $o; continue;; + esac + for x in $_ht $TARGET_SPEC $MACHINE + do + case "$o" in + "") continue;; + */$x/) add_list _o ${o%$x/}; o=;; + */$x) add_list _o ${o%$x}; o=;; + *$x/) add_list _o ${o%$x/}; o=;; + *$x) add_list _o ${o%$x}; o=;; + esac + done + done + OBJROOTS="$_o" + + case "$OBJTOP" in + "") + for o in $OBJROOTS + do + OBJTOP=$o${TARGET_SPEC:-$MACHINE} + break + done + ;; + esac + src_re= + obj_re= + add_list '|' -s '/*' src_re $SRCTOPS + add_list '|' -s '*' obj_re $OBJROOTS + + [ -z "$RELDIR" ] && unset DPDEPS + tf=/tmp/m2d$$-$USER + rm -f $tf.* + trap 'rm -f $tf.*; trap 0' 0 + + > $tf.dirdep + > $tf.qual + > $tf.srcdep + > $tf.srcrel + > $tf.dpdeps + + seenit= + seensrc= + lpid= + case "$EXCLUDES" in + "") _excludes=cat;; + *) _excludes=_excludes_f;; + esac + # handle @list files + case "$@" in + *@[!.]*) + for f in "$@" + do + case "$f" in + *.meta) cat $f;; + @*) xargs cat < ${f#@};; + *) cat $f;; + esac + done + ;; + *) cat /dev/null "$@";; + esac 2> /dev/null | + sed -e 's,^CWD,C C,;/^[#CREFLMVX] /!d' -e "s,',,g" | + $_excludes | ( version=no epids= xpids= eof_token=no + while read op pid path junk + do + : op=$op pid=$pid path=$path + # we track cwd and ldir (of interest) per pid + # CWD is bmake's cwd + case "$lpid,$pid" in + ,C) CWD=$path cwd=$path ldir=$path + if [ -z "$SB" ]; then + SB=`echo $CWD | sed 's,/obj.*,,'` + fi + SRCTOP=${SRCTOP:-$SB/src} + case "$verion" in + no) ;; # ignore + 0) error "no filemon data";; + *) ;; + esac + version=0 + case "$eof_token" in + no) ;; # ignore + 0) error "truncated filemon data";; + esac + eof_token=0 + continue + ;; + $pid,$pid) ;; + [1-9]*) + case "$lpid" in + "") ;; + *) eval ldir_$lpid=$ldir;; + esac + eval ldir=\${ldir_$pid:-$CWD} cwd=\${cwd_$pid:-$CWD} + lpid=$pid + ;; + esac + + : op=$op path=$path + case "$op,$path" in + V,*) version=$pid; continue;; + W,*srcrel|*.dirdep) continue;; + C,*) + case "$path" in + /*) cwd=$path;; + *) cwd=`cd $cwd/$path 2> /dev/null && /bin/pwd`;; + esac + # watch out for temp dirs that no longer exist + test -d ${cwd:-/dev/null/no/such} || cwd=$CWD + eval cwd_$pid=$cwd + continue + ;; + F,*) # $path is new pid + eval cwd_$path=$cwd ldir_$path=$ldir + continue + ;; + \#,bye) eof_token=1; continue;; + \#*) continue;; + *) dir=${path%/*} + case "$op" in + E) # setid apps get no tracing so we won't see eXit + case `'ls' -l $path 2> /dev/null | sed 's, .*,,'` in + *s*) ;; + *) epids="$epids $pid";; + esac + ;; + X) xpids="$xpids $pid"; continue;; + esac + case "$path" in + $src_re|$obj_re) ;; + /*/stage/*) ;; + /*) continue;; + *) for path in $ldir/$path $cwd/$path + do + test -e $path && break + done + dir=${path%/*} + ;; + esac + ;; + esac + # avoid repeating ourselves... + case "$DPDEPS,$seensrc," in + ,*) + case ",$seenit," in + *,$dir,*) continue;; + esac + ;; + *,$path,*) continue;; + esac + # canonicalize if needed + case "/$dir/" in + */../*|*/./*) + rdir=$dir + dir=`cd $dir 2> /dev/null && /bin/pwd` + seen="$rdir,$dir" + ;; + *) seen=$dir;; + esac + case "$dir" in + ${CURDIR:-.}|"") continue;; + $src_re) + # avoid repeating ourselves... + case "$DPDEPS,$seensrc," in + ,*) + case ",$seenit," in + *,$dir,*) continue;; + esac + ;; + esac + ;; + *) + case ",$seenit," in + *,$dir,*) continue;; + esac + ;; + esac + if [ -d $path ]; then + case "$path" in + */..) ldir=${dir%/*};; + *) ldir=$path;; + esac + continue + fi + [ -f $path ] || continue + case "$dir" in + $CWD) continue;; # ignore + $src_re) + seenit="$seenit,$seen" + echo $dir >> $tf.srcdep + case "$DPDEPS,$reldir,$seensrc," in + ,*) ;; + *) seensrc="$seensrc,$path" + echo "DPDEPS_$dir/${path##*/} += $RELDIR" >> $tf.dpdeps + ;; + esac + continue + ;; + esac + # if there is a .dirdep we cannot skip + # just because we've seen the dir before. + if [ -s $path.dirdep ]; then + # this file contains: + # '# ${RELDIR}.' + echo $path.dirdep >> $tf.qual + continue + elif [ -s $dir.dirdep ]; then + echo $dir.dirdep >> $tf.qual + seenit="$seenit,$seen" + continue + fi + seenit="$seenit,$seen" + case "$dir" in + $obj_re) + echo $dir;; + esac + done > $tf.dirdep + : version=$version + case "$version" in + 0) error "no filemon data";; + esac + : eof_token=$eof_token + case "$eof_token" in + 0) error "truncated filemon data";; + esac + for p in $epids + do + : p=$p + case " $xpids " in + *" $p "*) ;; + *) error "missing eXit for pid $p";; + esac + done ) || exit 1 + _nl=echo + for f in $tf.dirdep $tf.qual $tf.srcdep + do + [ -s $f ] || continue + case $f in + *qual) # a list of .dirdep files + # we can prefix everything with $OBJTOP to + # tell gendirdeps.mk that these are + # DIRDEP entries, since they are already + # qualified with . as needed. + # We strip .$MACHINE though + xargs cat < $f | sort -u | + sed "s,^# ,,;s,^,$OBJTOP/,;s,\.${TARGET_SPEC:-$MACHINE}\$,,;s,\.$MACHINE\$,," + ;; + *) sort -u $f;; + esac + _nl=: + done + if [ -s $tf.dpdeps ]; then + case "$DPDEPS" in + */*) ;; + *) echo > $DPDEPS;; # the echo is needed! + esac + sort -u $tf.dpdeps | + sed "s,${SRCTOP}/,,;s,${SB_BACKING_SB:-$SB}/src/,," >> $DPDEPS + fi + # ensure we produce _something_ else egrep -v gets upset + $_nl +} + +case /$0 in +*/meta2dep*) meta2deps "$@";; +*/meta2dirs*) meta2dirs "$@";; +*/meta2src*) meta2src "$@";; +esac diff --cc contrib/bmake/mk/suffixes.mk index 000000000000,4c4c85e68220..4c4c85e68220 mode 000000,100644..100644 --- a/contrib/bmake/mk/suffixes.mk +++ b/contrib/bmake/mk/suffixes.mk From nobody Thu Mar 14 05:04:04 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TwFfD6t99z5F9rT; Thu, 14 Mar 2024 05:04:04 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TwFfD66JCz4jcS; Thu, 14 Mar 2024 05:04:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710392644; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VlHqSF+HpAzoqxmQ0BKmweLNFiW2FIfHj7xziJrTbFQ=; b=cX4DUoiNdO4LOd9Fjfva6pFLJ3KJ8PY5VrzK58Kc7h1iwpRUjJINsz9o6XvxNAJCMtcD81 0B2gLHi+ips7cudpDywAFE2kKqlZeelkqwLsv2/xKAbYJusnuRTWBGR9F5eBQ2wi0pM5TX dBfEyrQwDKuQ/NmCaYfKLu9drbc/4cYdxEZ+Bp8x1fQRBPOrTwjxQ0a4Gq0v604HdqOh59 iXOmCKX6/DHxoenbTxgyc05udT+bW+JXroVzugnXgNxTYFPwTcViVIfSFpBlhiykNRK1hn reT/YVY31jEyysoKQHpff3pacyJhnxvgr2nqJNK5Ri7VAebBjY391/kpuVaNrA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710392644; a=rsa-sha256; cv=none; b=R2GpGCiaJUZfF8+lNJbbsruR35hGI/Svd7oAIlTAMzxsW8c2OYZ939qZuLB7d8NpkDTTmo XnC4XuJ8pUKM8r37Sen0kYCdDymAJ4oFNKeIGQpdSSo6cRY1mJBM7W+vDS5UcusTMOUafw npe11pEOZDTl6ttwzwIYE8+0c7X+encmcH2VGJdzGQQdpKtZtzpg0GqyyY6k1+x5a1XeIe t4un4F3EnsqEOEJHmhkALTUD4yJk9XFPQ2duLpLJmQ8njhyZ/ipEVEznO50J4TQdGF7Pos dDEEVTIiNPQzzTDUJsw+SlxWySe1kDDSDYoMW6t9Ww7WPkPd79u7UxXDInrxXQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710392644; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VlHqSF+HpAzoqxmQ0BKmweLNFiW2FIfHj7xziJrTbFQ=; b=XKSvmpsrhF/kbIJbztXuM4uOTdDU3pG7imRx2QfEW/39qlBE1CsEplJx0RcrXgtXJVzKo5 rZLPgxd6G5LTERfb/DCYL7aNxjtDRAkToeiXJEg/0MT6u4R8RBUEbHHq8P93GnT850Atgj 6j+rve6peWTUTpglkfS6eXvj/oENgyMcP5pUZ5ktECDLDhVsJHL2USKyySC2ic25GJr9cu AWo+Tm/JOC/zzQlz6RvU8NBQzjENTMi4exejhf+5+C1smrBBCOXFzJsToxsLR/uvarDWs4 kjNfMdgv3/rWdlBR1XU7AoVMwwfVJSgVP4LhHi83x7gO7fRH6xEGH/xA2VYvOQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TwFfD5jZPzDbW; Thu, 14 Mar 2024 05:04: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 42E544T0069467; Thu, 14 Mar 2024 05:04:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E544Ux069464; Thu, 14 Mar 2024 05:04:04 GMT (envelope-from git) Date: Thu, 14 Mar 2024 05:04:04 GMT Message-Id: <202403140504.42E544Ux069464@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Simon J. Gerraty" Subject: git: 51ca8a7a7da7 - main - bmake updated config.h List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sjg X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 51ca8a7a7da752d41bd91818169fc764dc8b1a42 Auto-Submitted: auto-generated The branch main has been updated by sjg: URL: https://cgit.FreeBSD.org/src/commit/?id=51ca8a7a7da752d41bd91818169fc764dc8b1a42 commit 51ca8a7a7da752d41bd91818169fc764dc8b1a42 Author: Simon J. Gerraty AuthorDate: 2024-03-14 05:03:50 +0000 Commit: Simon J. Gerraty CommitDate: 2024-03-14 05:03:50 +0000 bmake updated config.h --- usr.bin/bmake/config.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/usr.bin/bmake/config.h b/usr.bin/bmake/config.h index b9e169fad867..281e105d853d 100644 --- a/usr.bin/bmake/config.h +++ b/usr.bin/bmake/config.h @@ -96,6 +96,9 @@ /* Define to 1 if you have the `realpath' function. */ #define HAVE_REALPATH 1 +/* Define to 1 if you have the header file. */ +#define HAVE_REGEX_H 1 + /* Define to 1 if you have the `select' function. */ #define HAVE_SELECT 1 @@ -279,7 +282,7 @@ #define PACKAGE_NAME "bmake" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "bmake 20240101" +#define PACKAGE_STRING "bmake 20240212" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "bmake" @@ -288,7 +291,7 @@ #define PACKAGE_URL "" /* Define to the version of this package. */ -#define PACKAGE_VERSION "20240101" +#define PACKAGE_VERSION "20240212" /* Define to 1 if the `S_IS*' macros in do not work properly. */ /* #undef STAT_MACROS_BROKEN */ From nobody Thu Mar 14 05:08:43 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TwFlc2yNgz5FBFV; Thu, 14 Mar 2024 05:08: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 4TwFlc0vqWz4jfc; Thu, 14 Mar 2024 05: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=1710392924; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/VaDLermJkaJy6pTAWVi24UJLZNM1vOds/UYC/RoRpM=; b=r58SUE/34Z3WPxJ1zId1eqgr1ukSeLU9v/4eYhipe+WCX4FgAYB1fyiDmpiokd6LzZzs4q Hsr7oUq8pos+mBBeHohXWvBLroZTQ/cp9JrR1Kkl91LJ35BmT20rBj3DySMYokIO6CC+39 9XqsRcllBVbhygIMFOFJ0le0rpEHJ1eS8GFfnh6TeguRwoC/hBXlmkdBfjoP6lkmmkch3X HE2g7QhBSaNKAEE4Y9fgOwQeO20/kgbQ7CA65x/oDhwBSjsXVAUwcNENN9M6pUXkqkA03K aYIPKXlEQI1fslNtDE1F1ICpHN3m5XO0NHeDrhW2NciHU+3Kq+KWI955HRAUAg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710392924; a=rsa-sha256; cv=none; b=bg1tv8oWoOJ76nweFwhZpKPppiibPod1U9OazAqKAsjMSpHDAIpHPvk1KtZFk4THtXvKiL 1uj5U3nu7M3cTo3sLOfgB+guet6HW2jn1oaVDlV56GJPoEEZVxsWZtcaRM7SkjyB0jFuha fbXT+T1S/KrUHY0CQ57XlLayc8Ruy+TUJ+z+VY55qVGZg3jjezCfjPyr1lApamGgAY2dmb ctWH+VR6OmTT+AiViDuwfplrVVmSVF0n8gKEAGSQ3ps4RllM/1zJnPWECEJW5H+w+665yo KZf0nQNydsD949Z5he7X+ZJcwLqAfsJjZXfFs7qHORV0K1Tvzc9seLsmrUi40w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710392924; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/VaDLermJkaJy6pTAWVi24UJLZNM1vOds/UYC/RoRpM=; b=UkEmEKRpgHEbsUj5q6nrpZG5ZXW8OXPWUsJoIA0kHsOZ+vyfO9UHOc5lHCHye0x4onMTK9 j8TvN3tUOb5+pxG1pPLrzYDTZ0V0Wl+JhxLTs4uf9VEAmRNsaFXWbnJqNvImmrKohwt3u5 wGClu/2cEi+ve6NacaoNTB+RXBZEgZG19cd5VobXLKg6wRZtVgLXrHFHL0r1fvEOYw+9lM iQv24R5JM+sV3SqUGNQYRrS1Gjuw0Lax3tEi+hvuQ7kS92leHp91kmuItDE8oWSwdxETpK WGq2FKA9y4LZoB3D6PSq8NzG8O1mFC8NAPWmspcOAED8lLPpoC4f6u9IoK1PMw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TwFlc0MwQzDty; Thu, 14 Mar 2024 05: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 42E58heP070197; Thu, 14 Mar 2024 05: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 42E58hSk070194; Thu, 14 Mar 2024 05:08:43 GMT (envelope-from git) Date: Thu, 14 Mar 2024 05:08:43 GMT Message-Id: <202403140508.42E58hSk070194@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Simon J. Gerraty" Subject: git: 3ff501040ba7 - main - bmake Makefile.config List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sjg X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3ff501040ba79894a3b4ed712d7ae4252590fc84 Auto-Submitted: auto-generated The branch main has been updated by sjg: URL: https://cgit.FreeBSD.org/src/commit/?id=3ff501040ba79894a3b4ed712d7ae4252590fc84 commit 3ff501040ba79894a3b4ed712d7ae4252590fc84 Author: Simon J. Gerraty AuthorDate: 2024-03-14 05:08:29 +0000 Commit: Simon J. Gerraty CommitDate: 2024-03-14 05:08:29 +0000 bmake Makefile.config --- usr.bin/bmake/Makefile | 2 +- usr.bin/bmake/Makefile.config | 2 +- usr.bin/bmake/unit-tests/Makefile | 11 ++++++++++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/usr.bin/bmake/Makefile b/usr.bin/bmake/Makefile index b91394765301..5a0bf44fb0fb 100644 --- a/usr.bin/bmake/Makefile +++ b/usr.bin/bmake/Makefile @@ -11,7 +11,7 @@ CFLAGS+= -I${.CURDIR} CLEANDIRS+= FreeBSD CLEANFILES+= bootstrap -# $Id: Makefile,v 1.125 2023/05/17 00:15:46 sjg Exp $ +# $Id: Makefile,v 1.126 2024/03/10 17:46:44 sjg Exp $ PROG?= ${.CURDIR:T} diff --git a/usr.bin/bmake/Makefile.config b/usr.bin/bmake/Makefile.config index 4062f175f763..88ec643b8a4a 100644 --- a/usr.bin/bmake/Makefile.config +++ b/usr.bin/bmake/Makefile.config @@ -6,7 +6,7 @@ SRCTOP?= ${.CURDIR:H:H} # things set by configure -_MAKE_VERSION?=20240108 +_MAKE_VERSION?=20240309 prefix?= /usr srcdir= ${SRCTOP}/contrib/bmake diff --git a/usr.bin/bmake/unit-tests/Makefile b/usr.bin/bmake/unit-tests/Makefile index cf6c85809b9c..dcec9297828c 100644 --- a/usr.bin/bmake/unit-tests/Makefile +++ b/usr.bin/bmake/unit-tests/Makefile @@ -1,7 +1,7 @@ # This is a generated file, do NOT edit! # See contrib/bmake/bsd.after-import.mk # -# $Id: Makefile,v 1.210 2024/01/08 18:28:08 sjg Exp $ +# $Id: Makefile,v 1.211 2024/03/10 17:46:44 sjg Exp $ # # $NetBSD: Makefile,v 1.342 2024/01/07 02:07:44 sjg Exp $ # @@ -477,6 +477,15 @@ BROKEN_TESTS+= sh-flags BROKEN_TESTS+= varmod-localtime .endif +.if ${.MAKE.OS:NCYGWIN*} == "" +BROKEN_TESTS+= \ + export \ + opt-chdir \ + opt-keep-going-indirect \ + +.endif + + .if ${.MAKE.OS:NDarwin} == "" BROKEN_TESTS+= shell-ksh .endif From nobody Thu Mar 14 05:51:26 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TwGht1s9bz5FFW7; Thu, 14 Mar 2024 05:51: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 4TwGht1d4Dz4mXJ; Thu, 14 Mar 2024 05:51:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710395486; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DA/V4B4nJyxt4XlSsGPAapBgJNTwH/0RwKRv3OkZ5JE=; b=X80bz67oOpD60tqI3RZFE9+fMke5vA63TsJHrE3LDMAIm5K4h5T9+gkImnSp/SQ+qpqcmd G0LPdx0ALrRPeSMSrGuZG352aieSf4Yhw1TvItUWF7rCZ65OpJf6r3CteWhs3Mfpe0C/O2 cc8xRscmBhIm/2ru48Wv7p/5RVjzZQQSZxlk28j5HYsCB7U1BsxcM6KvsUCdT1sjoFhQne Ke/wy5PLWwoQ2gNxONUFSKsVrxmT8iCkeXcRvfB/c02+wNVkg9sUGS3ZTFbq8KBlkYhYr6 Uw/AoZvgYDsF1CXAxSoWyOJiAkqJ1KBB639iLeK/T+ODW44+xFkR0kA/+wRWWw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710395486; a=rsa-sha256; cv=none; b=U8k3oQ4lvvCbZc/wBz0UkpOrCtRbgDUksKmSetBeIhbBCwo+5TcgowbPfysNUyahFXveJ7 UvffBAZs0+hoSzmZkgkeuPDHHCQp28N3fGk2fEA2m/nO8kgbbNhaxJoD91OWYIrZqmR9w9 PuT98f4mLL0mU2kMV2d5l/3oXf9FF9YV2HJ/xFOCju5e0MNqWZFlZ1v+kkBTRTGu0hf25f Mem36MphudLCH0M0gianAf1pQUIq30BXiWxhibuRDUOX7l2kafqRFhQty/5dUyIkPunOvR aCNECMhf+/ftzi+uGLS3r9YCGdwwU3isrI8GiFM0r6BZTSWT3QbyhYE/XOuDcA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710395486; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DA/V4B4nJyxt4XlSsGPAapBgJNTwH/0RwKRv3OkZ5JE=; b=MTd1zUsmwqEwnCBZmqM9vUlVebeWS002gpKqAVjJUametfOB9+4OA2f1A42fQNLGPiCTrq LS7960fm2vEMToWnfATzajBWyZTtDH4Rc4Zn+owuOYC3OoC7eiq2s3LLPy/AS+roSwazr4 mBhcx880vBawLhWe8TWb1m1cUI6AYeyE2LRbEPqGmPvn6UfutxpB/OFXzOiIBno8Z8O8bU zuZmVO0yEo4LPwefXt28KFRHV7TnEiIr4vgM/sTEsU9vlYN4/RKZ97dReeh7L0ZTHpM8Z+ pE76wDUw5xJSavJiVv0nOa8IRcB0javEh6EK5/jQkgup86V1AO9aKgY9CJKpmA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TwGht1C2ZzFg6; Thu, 14 Mar 2024 05:51: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 42E5pQxM050906; Thu, 14 Mar 2024 05:51:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E5pQFQ050903; Thu, 14 Mar 2024 05:51:26 GMT (envelope-from git) Date: Thu, 14 Mar 2024 05:51:26 GMT Message-Id: <202403140551.42E5pQFQ050903@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Simon J. Gerraty" Subject: git: f974ced38a4a - main - Update dirdeps.mk et al List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sjg X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f974ced38a4a264bb78b4f067b44bf587f7887db Auto-Submitted: auto-generated The branch main has been updated by sjg: URL: https://cgit.FreeBSD.org/src/commit/?id=f974ced38a4a264bb78b4f067b44bf587f7887db commit f974ced38a4a264bb78b4f067b44bf587f7887db Author: Simon J. Gerraty AuthorDate: 2024-03-14 05:51:08 +0000 Commit: Simon J. Gerraty CommitDate: 2024-03-14 05:51:08 +0000 Update dirdeps.mk et al bmake-20240309 includes updates to dirdeps and meta mode makefiles --- share/mk/dirdeps-options.mk | 4 +++- share/mk/dirdeps-targets.mk | 7 ++++++- share/mk/dirdeps.mk | 37 +++++++++++++++++++++++++------------ share/mk/local.autodep.mk | 4 ---- share/mk/meta.autodep.mk | 16 ++++++++++------ share/mk/meta.stage.mk | 6 ++++-- share/mk/meta.subdir.mk | 4 +++- share/mk/meta.sys.mk | 12 +++++++++--- share/mk/meta2deps.py | 15 +++++++++++---- share/mk/meta2deps.sh | 8 ++++---- share/mk/sys.dirdeps.mk | 9 ++++++--- 11 files changed, 81 insertions(+), 41 deletions(-) diff --git a/share/mk/dirdeps-options.mk b/share/mk/dirdeps-options.mk index 9a97615bbeb8..e12dcec40ac7 100644 --- a/share/mk/dirdeps-options.mk +++ b/share/mk/dirdeps-options.mk @@ -1,4 +1,6 @@ -# $Id: dirdeps-options.mk,v 1.21 2022/09/06 22:18:45 sjg Exp $ +# SPDX-License-Identifier: BSD-2-Clause +# +# $Id: dirdeps-options.mk,v 1.22 2024/02/17 17:26:57 sjg Exp $ # # @(#) Copyright (c) 2018-2022, Simon J. Gerraty # diff --git a/share/mk/dirdeps-targets.mk b/share/mk/dirdeps-targets.mk index 821ae50e3ffa..9e3fb814fada 100644 --- a/share/mk/dirdeps-targets.mk +++ b/share/mk/dirdeps-targets.mk @@ -1,5 +1,7 @@ +# SPDX-License-Identifier: BSD-2-Clause +# # RCSid: -# $Id: dirdeps-targets.mk,v 1.25 2023/05/11 05:07:28 sjg Exp $ +# $Id: dirdeps-targets.mk,v 1.27 2024/02/25 19:12:13 sjg Exp $ # # @(#) Copyright (c) 2019-2020 Simon J. Gerraty # @@ -40,6 +42,9 @@ # pickup customizations .-include +# this is what we are here for +.MAIN: dirdeps + # for DIRDEPS_BUILD this is how we prime the pump # include . to allow any directory to work as a target DIRDEPS_TARGETS_DIRS ?= targets targets/pseudo diff --git a/share/mk/dirdeps.mk b/share/mk/dirdeps.mk index 2cf62bed3d9e..b3b34145e8e9 100644 --- a/share/mk/dirdeps.mk +++ b/share/mk/dirdeps.mk @@ -1,4 +1,4 @@ -# $Id: dirdeps.mk,v 1.162 2023/05/15 17:37:46 sjg Exp $ +# $Id: dirdeps.mk,v 1.166 2024/01/05 23:16:34 sjg Exp $ # SPDX-License-Identifier: BSD-2-Clause # @@ -155,7 +155,7 @@ # if any test fails, but without the risk of introducing # circular dependencies. -now_utc ?= ${%s:L:gmtime} +now_utc ?= ${%s:L:localtime} .if !defined(start_utc) start_utc := ${now_utc} .endif @@ -415,6 +415,8 @@ DIRDEPS_FILTER += M${_DEP_RELDIR} # this is what we run below DIRDEP_MAKE ?= ${.MAKE} DIRDEP_DIR ?= ${.TARGET:R} +# we normally want the default target +DIRDEP_TARGETS ?= # if you want us to report load averages during build # DIRDEP_USE_PRELUDE += ${DIRDEP_LOADAVG_REPORT}; @@ -442,7 +444,7 @@ _DIRDEP_USE: .USE .MAKE MACHINE_ARCH= NO_SUBDIR=1 ${DIRDEP_USE_ENV} \ TARGET_SPEC=${.TARGET:E} \ MACHINE=${.TARGET:E} \ - ${DIRDEP_MAKE} -C ${DIRDEP_DIR} || exit 1; \ + ${DIRDEP_MAKE} -C ${DIRDEP_DIR} ${DIRDEP_TARGETS} || exit 1; \ break; \ done @@ -680,7 +682,7 @@ _build_dirs += ${_machines:@m@${_CURDIR}.$m@} .if ${_debug_reldir} .info ${DEP_RELDIR}.${DEP_TARGET_SPEC}: nDIRDEPS=${DIRDEPS:[#]} -.info ${DEP_RELDIR}.${DEP_TARGET_SPEC}: DIRDEPS='${DIRDEPS}' +.info ${DEP_RELDIR}.${DEP_TARGET_SPEC}: DIRDEPS=${DIRDEPS:${DEBUG_DIRDEPS_LIST_FILTER:U:N/:ts:}} .info ${DEP_RELDIR}.${DEP_TARGET_SPEC}: _machines='${_machines}' .endif @@ -712,9 +714,9 @@ __qual_depdirs += ${__hostdpadd} .if ${_debug_reldir} .info DEP_DIRDEPS_FILTER=${DEP_DIRDEPS_FILTER:ts:} -.info depdirs=${__depdirs:S,^${SRCTOP}/,,} -.info qualified=${__qual_depdirs:S,^${SRCTOP}/,,} -.info unqualified=${__unqual_depdirs:S,^${SRCTOP}/,,} +.info depdirs=${__depdirs:S,^${SRCTOP}/,,:${DEBUG_DIRDEPS_LIST_FILTER:U:N/:ts:}} +.info qualified=${__qual_depdirs:S,^${SRCTOP}/,,:${DEBUG_DIRDEPS_LIST_FILTER:U:N/:ts:}} +.info unqualified=${__unqual_depdirs:S,^${SRCTOP}/,,:${DEBUG_DIRDEPS_LIST_FILTER:U:N/:ts:}} .endif # _build_dirs is what we will feed to _DIRDEP_USE @@ -726,14 +728,14 @@ _build_dirs += \ # qualify everything now .if ${_debug_reldir} -.info _build_dirs=${_build_dirs} +.info _build_dirs=${_build_dirs:${DEBUG_DIRDEPS_LIST_FILTER:U:N/:ts:}} .endif # make sure we do not mess with qualifying "host" entries _build_dirs := ${_build_dirs:M*.host*:${M_dep_qual_fixes.host:ts:}} \ ${_build_dirs:N*.host*:${M_dep_qual_fixes:ts:}} _build_dirs := ${_build_dirs:O:u} .if ${_debug_reldir} -.info _build_dirs=${_build_dirs} +.info _build_dirs=${_build_dirs:${DEBUG_DIRDEPS_LIST_FILTER:U:N/:ts:}} .endif .endif # empty DIRDEPS @@ -752,7 +754,6 @@ _cache_script = echo '\# ${DEP_RELDIR}.${DEP_TARGET_SPEC}'; # guard against _new_dirdeps being too big for a single command line _new_dirdeps := ${_build_all_dirs:@x@${target($x):?:$x}@:S,^${SRCTOP}/,,} _cache_xtra_deps := ${_build_xtra_dirs:S,^${SRCTOP}/,,} -.export _cache_xtra_deps _new_dirdeps .if !empty(DIRDEPS_EXPORT_VARS) || !empty(DEP_EXPORT_VARS) # Discouraged, but there are always exceptions. # Handle it here rather than explain how. @@ -767,7 +768,7 @@ dirdeps: ${_build_all_dirs} ${_build_all_dirs}: _DIRDEP_USE .if ${_debug_reldir} -.info ${DEP_RELDIR}.${DEP_TARGET_SPEC}: needs: ${_build_dirs:S,^${SRCTOP}/,,} +.info ${DEP_RELDIR}.${DEP_TARGET_SPEC}: needs: ${_build_dirs:S,^${SRCTOP}/,,:${DEBUG_DIRDEPS_LIST_FILTER:U:N/:ts:}} .endif .if !empty(DIRDEPS_EXPORT_VARS) || !empty(DEP_EXPORT_VARS) @@ -802,15 +803,27 @@ ${_this_dir}.$m: ${_build_dirs:M*.$q} .if ${BUILD_DIRDEPS_CACHE} == "yes" .if !empty(_build_dirs) _cache_deps += ${_build_dirs:M*.$m:N${_this_dir}.$m:S,^${SRCTOP}/,,} +# anything in _{build,env}_xtra_dirs is hooked to dirdeps: only +.if ${MAKE_VERSION} < 20240105 .if !empty(_cache_deps) .export _cache_deps _cache_script += for x in $$_cache_deps; do echo " _{SRCTOP}/$$x \\"; done; .endif -# anything in _{build,env}_xtra_dirs is hooked to dirdeps: only +.export _cache_xtra_deps _new_dirdeps x!= echo; { echo; ${_cache_script} echo; echo '${_this_dir}.$m: $${DIRDEPS.${_this_dir}.$m}'; \ echo; echo 'dirdeps: ${_this_dir}.$m \'; \ for x in $$_cache_xtra_deps; do echo " _{SRCTOP}/$$x \\"; done; \ echo; for x in $$_new_dirdeps; do echo "_{SRCTOP}/$$x: _DIRDEP_USE"; done; } >&3 +.else +# we do not have the same limits on command lines +.if !empty(_cache_deps) +_cache_script += for x in ${_cache_deps}; do echo " _{SRCTOP}/$$x \\"; done; +.endif +x!= echo; { echo; ${_cache_script} echo; echo '${_this_dir}.$m: $${DIRDEPS.${_this_dir}.$m}'; \ + echo; echo 'dirdeps: ${_this_dir}.$m \'; \ + for x in ${_cache_xtra_deps}; do echo " _{SRCTOP}/$$x \\"; done; \ + echo; for x in ${_new_dirdeps}; do echo "_{SRCTOP}/$$x: _DIRDEP_USE"; done; } >&3 +.endif .endif .else ${_this_dir}.$m: ${_build_dirs:M*.$m:N${_this_dir}.$m} diff --git a/share/mk/local.autodep.mk b/share/mk/local.autodep.mk index bc5bfd3e75db..f36fe6b11655 100644 --- a/share/mk/local.autodep.mk +++ b/share/mk/local.autodep.mk @@ -7,10 +7,6 @@ UPDATE_DEPENDFILE= no .endif .endif -NOSSPPICO?= .nossppico -PIEO?= .pieo -OBJ_EXTENSIONS+= ${NOSSPPICO} ${PIEO} - CLEANFILES+= .depend # handy for debugging diff --git a/share/mk/meta.autodep.mk b/share/mk/meta.autodep.mk index 6785d2ebf874..9824570ecc43 100644 --- a/share/mk/meta.autodep.mk +++ b/share/mk/meta.autodep.mk @@ -1,4 +1,6 @@ -# $Id: meta.autodep.mk,v 1.59 2023/08/19 17:35:32 sjg Exp $ +# SPDX-License-Identifier: BSD-2-Clause +# +# $Id: meta.autodep.mk,v 1.62 2024/02/17 17:26:57 sjg Exp $ # # @(#) Copyright (c) 2010, Simon J. Gerraty @@ -24,16 +26,16 @@ PICO?= .pico .if defined(SRCS) .if ${MAKE_VERSION:U0} >= 20211212 -OBJ_EXTENSIONS += ${.SUFFIXES:M*o} +OBJ_SUFFIXES += ${.SUFFIXES:M*o} .else # it would be nice to be able to query .SUFFIXES -OBJ_EXTENSIONS += .o .po .lo ${PICO} +OBJ_SUFFIXES += .o .po .lo ${PICO} .endif # explicit dependencies help short-circuit .SUFFIX searches SRCS_DEP_FILTER+= N*.[hly] .for s in ${SRCS:${SRCS_DEP_FILTER:O:u:ts:}} -.for e in ${OBJ_EXTENSIONS:O:u} +.for e in ${OBJ_SUFFIXES:O:u} .if !target(${s:T:R}$e) ${s:T:R}$e: $s .endif @@ -190,7 +192,7 @@ DEPEND_SUFFIXES += .c .h .cpp .hpp .cxx .hxx .cc .hh @case "${.MAKE.META.FILES:T:M*.po.*}" in \ *.po.*) mv $@.${.MAKE.PID} $@;; \ *) { cat $@.${.MAKE.PID}; \ - sed ${OBJ_EXTENSIONS:N.o:N.po:@o@-e 's,\$o:,.o:,'@} \ + sed ${OBJ_SUFFIXES:N.o:N.po:@o@-e 's,\$o:,.o:,'@} \ -e 's,\.o:,.po:,' $@.${.MAKE.PID}; } | sort -u > $@; \ rm -f $@.${.MAKE.PID};; \ esac @@ -305,7 +307,7 @@ ${_DEPENDFILE}: .PRECIOUS CLEANFILES += *.meta filemon.* *.db # these make it easy to gather some stats -now_utc = ${%s:L:localtime} +now_utc ?= ${%s:L:localtime} start_utc := ${now_utc} meta_stats= meta=${empty(.MAKE.META.FILES):?0:${.MAKE.META.FILES:[#]}} \ @@ -331,4 +333,6 @@ _reldir_failed: .NOMETA .ERROR: _reldir_failed .endif +.-include + .endif diff --git a/share/mk/meta.stage.mk b/share/mk/meta.stage.mk index 168e46d22a82..345df6aae16b 100644 --- a/share/mk/meta.stage.mk +++ b/share/mk/meta.stage.mk @@ -1,4 +1,6 @@ -# $Id: meta.stage.mk,v 1.67 2023/04/17 01:22:10 sjg Exp $ +# SPDX-License-Identifier: BSD-2-Clause +# +# $Id: meta.stage.mk,v 1.69 2024/02/17 17:26:57 sjg Exp $ # # @(#) Copyright (c) 2011-2017, Simon J. Gerraty # @@ -212,7 +214,7 @@ stage_files.$s: .dirdep STAGE_FILES ?= ${.ALLSRC:N.dirdep:Nstage_*} stage_files: .dirdep .endif - @${STAGE_FILE_SCRIPT}; StageFiles ${FLAGS.$@} ${STAGE_FILES_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_FILES.$s:O} + @${STAGE_FILE_SCRIPT}; StageFiles ${FLAGS.$@:U} ${STAGE_FILES_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_FILES.$s:O} @touch $@ .endif .endif diff --git a/share/mk/meta.subdir.mk b/share/mk/meta.subdir.mk index d9caae4edbcc..e2ece24515a4 100644 --- a/share/mk/meta.subdir.mk +++ b/share/mk/meta.subdir.mk @@ -1,4 +1,6 @@ -# $Id: meta.subdir.mk,v 1.13 2021/01/05 22:24:37 sjg Exp $ +# SPDX-License-Identifier: BSD-2-Clause +# +# $Id: meta.subdir.mk,v 1.14 2024/02/17 17:26:57 sjg Exp $ # # @(#) Copyright (c) 2010, Simon J. Gerraty diff --git a/share/mk/meta.sys.mk b/share/mk/meta.sys.mk index ba213dd49da4..6e4216ab5383 100644 --- a/share/mk/meta.sys.mk +++ b/share/mk/meta.sys.mk @@ -1,4 +1,6 @@ -# $Id: meta.sys.mk,v 1.51 2023/05/11 20:05:32 sjg Exp $ +# SPDX-License-Identifier: BSD-2-Clause +# +# $Id: meta.sys.mk,v 1.54 2024/03/10 15:53:51 sjg Exp $ # # @(#) Copyright (c) 2010-2023, Simon J. Gerraty @@ -82,6 +84,7 @@ META2DEPS := ${META2DEPS} MAKE_PRINT_VAR_ON_ERROR += \ .ERROR_TARGET \ + .ERROR_EXIT \ .ERROR_META_FILE \ .MAKE.LEVEL \ MAKEFILE \ @@ -98,10 +101,13 @@ SB = ${SRCTOP:H} ERROR_LOGDIR ?= ${SB}/error meta_error_log = ${ERROR_LOGDIR}/meta-${.MAKE.PID}.log -# we are not interested in make telling us a failure happened elsewhere .ERROR: _metaError +# We are interested here in the target(s) that caused the build to fail. +# We want to ignore targets that were "aborted" due to failure +# elsewhere per the message below or a sub-make may just exit 6. _metaError: .NOMETA .NOTMAIN - -@[ "${.ERROR_META_FILE}" ] && { \ + -@[ ${.ERROR_EXIT:U0} = 6 ] && exit 0; \ + [ "${.ERROR_META_FILE}" ] && { \ grep -q 'failure has been detected in another branch' ${.ERROR_META_FILE} && exit 0; \ mkdir -p ${meta_error_log:H}; \ cp ${.ERROR_META_FILE} ${meta_error_log}; \ diff --git a/share/mk/meta2deps.py b/share/mk/meta2deps.py index 334a008a2ab5..f188d0f01de8 100755 --- a/share/mk/meta2deps.py +++ b/share/mk/meta2deps.py @@ -36,8 +36,10 @@ We only pay attention to a subset of the information in the """ """ +SPDX-License-Identifier: BSD-2-Clause + RCSid: - $Id: meta2deps.py,v 1.45 2023/01/18 01:35:24 sjg Exp $ + $Id: meta2deps.py,v 1.47 2024/02/17 17:26:57 sjg Exp $ Copyright (c) 2011-2020, Simon J. Gerraty Copyright (c) 2011-2017, Juniper Networks, Inc. @@ -74,8 +76,10 @@ import stat def resolve(path, cwd, last_dir=None, debug=0, debug_out=sys.stderr): """ Return an absolute path, resolving via cwd or last_dir if needed. + + Cleanup any leading ``./`` and trailing ``/.`` """ - if path.endswith('/.'): + while path.endswith('/.'): path = path[0:-2] if len(path) > 0 and path[0] == '/': if os.path.exists(path): @@ -86,7 +90,9 @@ def resolve(path, cwd, last_dir=None, debug=0, debug_out=sys.stderr): if path == '.': return cwd if path.startswith('./'): - return cwd + path[1:] + while path.startswith('./'): + path = path[1:] + return cwd + path if last_dir == cwd: last_dir = None for d in [last_dir, cwd]: @@ -144,6 +150,7 @@ def abspath(path, cwd, last_dir=None, debug=0, debug_out=sys.stderr): return None if (path.find('/') < 0 or path.find('./') > 0 or + path.find('/../') > 0 or path.endswith('/..')): path = cleanpath(path) return path @@ -197,7 +204,7 @@ class MetaFile: def __init__(self, name, conf={}): """if name is set we will parse it now. - conf can have the following keys: + conf can have the follwing keys: SRCTOPS list of tops of the src tree(s). diff --git a/share/mk/meta2deps.sh b/share/mk/meta2deps.sh index 56367e0105f4..4c1b674f7b63 100755 --- a/share/mk/meta2deps.sh +++ b/share/mk/meta2deps.sh @@ -49,10 +49,8 @@ # The output, is a set of absolute paths with "SB" like: #.nf # -# $SB/obj-i386/bsd/gnu/lib/csu -# $SB/obj-i386/bsd/gnu/lib/libgcc # $SB/obj-i386/bsd/include -# $SB/obj-i386/bsd/lib/csu/i386-elf +# $SB/obj-i386/bsd/lib/csu/i386 # $SB/obj-i386/bsd/lib/libc # $SB/src/bsd/include # $SB/src/bsd/sys/i386/include @@ -77,8 +75,10 @@ # RCSid: -# $Id: meta2deps.sh,v 1.20 2023/01/18 01:35:24 sjg Exp $ +# $Id: meta2deps.sh,v 1.21 2024/02/17 17:26:57 sjg Exp $ +# SPDX-License-Identifier: BSD-2-Clause +# # Copyright (c) 2010-2013, Juniper Networks, Inc. # All rights reserved. # diff --git a/share/mk/sys.dirdeps.mk b/share/mk/sys.dirdeps.mk index a3d22d7c2e82..1e3363c22339 100644 --- a/share/mk/sys.dirdeps.mk +++ b/share/mk/sys.dirdeps.mk @@ -1,4 +1,6 @@ -# $Id: sys.dirdeps.mk,v 1.12 2023/05/14 16:16:03 sjg Exp $ +# SPDX-License-Identifier: BSD-2-Clause +# +# $Id: sys.dirdeps.mk,v 1.14 2024/02/25 19:12:13 sjg Exp $ # # @(#) Copyright (c) 2012-2023, Simon J. Gerraty # @@ -31,9 +33,10 @@ _PARSEDIR ?= ${.PARSEDIR:tA} .if ${.MAKE.LEVEL} == 0 # make sure dirdeps target exists and do it first +# init.mk will set .MAIN to 'dirdeps' if appropriate +# as will dirdeps-targets.mk for top-level builds. +# This allows a Makefile to have more control. dirdeps: -# first .MAIN is what counts -.MAIN: dirdeps .NOPATH: dirdeps all: dirdeps .WAIT .endif From nobody Thu Mar 14 06:03:03 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TwGyH6Ydrz5FG70; Thu, 14 Mar 2024 06:03: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 4TwGyH66wGz4p7f; Thu, 14 Mar 2024 06:03:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710396183; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eQTZtFRjwk+n4YObgaljR1B/0YGXMc7thYsLvpYY+WQ=; b=dAOMr19hoFvGMMm/s/SiaT/uOXrGXswHaO7hVwqYxKBGSU8UZZNnGuIsXsqTv+yq2zAmKb DETHqrghnxr3gWZE4vrJHclOtUGNM2M78Lwuyca2b7zkC4HpVKlnppIdchj/oGZuTdV8fa fpBERWEHWaPV/ntkePV3GldFbA2MsVPlnqYJQ8Y3pnIF0rJVY7Ze5en2QR3HnRzxMKi5Wr N+8O/iNbF4f3EHzQg57KokhhYoGa1OYJ8DdHfxRLt2y2xOH5hKSkPzDDrxVb2b6Ibe2yWu uqixX1q4TQ4uXhE2lf3b5rQ9iuVWy1+sFOpzXF62raFbexr4W7mxFzWlYEZPvw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710396183; a=rsa-sha256; cv=none; b=ungVfo9pjVyXS3fds3vya2hH6Wj3lnSB1ApPZLsLRkdjFd10Kf3yL/IURDl2J6ZHIeSNcM OJ0SfaIi8z00iQbHr8He211Eaxr37NmwB5LVFuAi6L/PT0PFUAyjgD5TMwHqCC87hZloYD 2OtDqXz2dPGwnXTQKAy5DV3wwj9mgiitPHrmpn5r18B1An/dQ7WFFU3eBV/LGriPMsJL5Z ppN8ToHpmZYQDirBBm9GH96DoTD+xmxLOgzGUgbuYuNgyePhbyJg6XKujAwiSSb84fpE9n EavlqlpljYbJC0M9vDOSCFXMZNIcZbFrIAfeusli/VDBFWmOxwTfKj3dVX+fUA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710396183; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eQTZtFRjwk+n4YObgaljR1B/0YGXMc7thYsLvpYY+WQ=; b=DMGT+Rmy+wAo/9zNYAoDg30/PCRocLUrkyAXgA73vXyhMcpK2vkbNp2HdNDIQWqRC93I0O TK/1Uetrq6CinFTB9Szdlk2zXDUz0XtOZu82/71WdhEjj2jm5QhYzvbVUAabCWM2ROPo+Y hKDaJNaG804uhxJpHlAU8Xn+GBnL2stOaIyXNQK7z34xEjTYS4bfglr5xFW1Ujg/R/ydN4 vkeqP9yUTDUUWHzUeBCfaUwuw4o7w15okZ0THrzSN5x6dLIuQKVE1A8if81v4uYSrVIvmL PxqiPoU9A2eNa5sAB57b5Vi/kt1v+drmgzPAwNDvQ+vopH0bk2vr7LVDEXJFwg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TwGyH5kHnzG7B; Thu, 14 Mar 2024 06:03: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 42E633ZH070042; Thu, 14 Mar 2024 06:03:03 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E63368070040; Thu, 14 Mar 2024 06:03:03 GMT (envelope-from git) Date: Thu, 14 Mar 2024 06:03:03 GMT Message-Id: <202403140603.42E63368070040@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gordon Bergling Subject: git: 6a6ec90681cf - main - OpenBSM: Remove $FreeSBD$ tags from the configuration files List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gbe X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 6a6ec90681cf30eac2512ab96362a35e259fab62 Auto-Submitted: auto-generated The branch main has been updated by gbe: URL: https://cgit.FreeBSD.org/src/commit/?id=6a6ec90681cf30eac2512ab96362a35e259fab62 commit 6a6ec90681cf30eac2512ab96362a35e259fab62 Author: Gordon Bergling AuthorDate: 2024-03-14 06:02:44 +0000 Commit: Gordon Bergling CommitDate: 2024-03-14 06:02:44 +0000 OpenBSM: Remove $FreeSBD$ tags from the configuration files In e61dc6cac4001f1abfc48ee27e4e623c2c044fa8 the configuration files were taken off the vendor branch to help mergemaster comparing them. Since mergemaster will be deprecated and $FreeBSD$ tags aren't used anymore, remove them. While here, sync audit_filter with upstream commit 5e6da76 (typo). Reviewed by: imp Approved by: imp MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D44318 --- contrib/openbsm/etc/audit_class | 3 --- contrib/openbsm/etc/audit_control | 3 --- contrib/openbsm/etc/audit_event | 5 +---- contrib/openbsm/etc/audit_filter | 3 --- contrib/openbsm/etc/audit_user | 3 --- contrib/openbsm/etc/audit_warn | 3 --- 6 files changed, 1 insertion(+), 19 deletions(-) diff --git a/contrib/openbsm/etc/audit_class b/contrib/openbsm/etc/audit_class index 47868b17d5da..4fdb14efeea0 100644 --- a/contrib/openbsm/etc/audit_class +++ b/contrib/openbsm/etc/audit_class @@ -1,6 +1,3 @@ -# -# $FreeBSD$ -# 0x00000000:no:invalid class 0x00000001:fr:file read 0x00000002:fw:file write diff --git a/contrib/openbsm/etc/audit_control b/contrib/openbsm/etc/audit_control index d71b9a817452..aec726820f1e 100644 --- a/contrib/openbsm/etc/audit_control +++ b/contrib/openbsm/etc/audit_control @@ -1,6 +1,3 @@ -# -# $FreeBSD$ -# dir:/var/audit dist:off flags:lo,aa diff --git a/contrib/openbsm/etc/audit_event b/contrib/openbsm/etc/audit_event index be3557597eee..31b4adc221a6 100644 --- a/contrib/openbsm/etc/audit_event +++ b/contrib/openbsm/etc/audit_event @@ -1,6 +1,3 @@ -# -# $FreeBSD$ -# # The mapping between event identifiers and values is also hard-coded in # audit_kevents.h and audit_uevents.h, so changes must occur in both places, # and programs, such as the kernel, may need to be recompiled to recognize @@ -442,7 +439,7 @@ 43079:AUE_CAPGET:capget(2):pc 43080:AUE_CAPSET:capset(2):pc 43081:AUE_PIVOT_ROOT:pivot_root(2):pc -43082:AUE_RTPRIO::rtprio(2):pc +43082:AUE_RTPRIO:rtprio(2):pc 43083:AUE_SCHED_GETPARAM:sched_getparam(2):ad 43084:AUE_SCHED_SETPARAM:sched_setparam(2):ad 43085:AUE_SCHED_GET_PRIORITY_MAX:sched_get_priority_max(2):ad diff --git a/contrib/openbsm/etc/audit_filter b/contrib/openbsm/etc/audit_filter index d0dc1c0baa5c..8e3fa719d232 100644 --- a/contrib/openbsm/etc/audit_filter +++ b/contrib/openbsm/etc/audit_filter @@ -1,5 +1,2 @@ -# -# $FreeBSD$ -# # modulename:various arguments here # diff --git a/contrib/openbsm/etc/audit_user b/contrib/openbsm/etc/audit_user index 035066228e91..303b0c137efd 100644 --- a/contrib/openbsm/etc/audit_user +++ b/contrib/openbsm/etc/audit_user @@ -1,4 +1 @@ -# -# $FreeBSD$ -# root:lo:no diff --git a/contrib/openbsm/etc/audit_warn b/contrib/openbsm/etc/audit_warn index 4b8498ea4144..8feb0fa4954f 100644 --- a/contrib/openbsm/etc/audit_warn +++ b/contrib/openbsm/etc/audit_warn @@ -1,6 +1,3 @@ #!/bin/sh -# -# $FreeBSD$ -# logger -p security.warning "audit warning: $@" From nobody Thu Mar 14 08:29:42 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TwLCW1TXNz5FSJl; Thu, 14 Mar 2024 08:29: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 4TwLCW0zh5z43DB; Thu, 14 Mar 2024 08:29:43 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710404983; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6ZKfxLHTUTUxiWlu+7ayETeuuokajA5tPfB1x2w7nRs=; b=ZyNckWSmyTiG1wmMj9RpSGzAjvuG32rvz+lkN5qYP/2AT/WZ5D+UImiCtUYnlLQRTtAdsL nJzg+c/iZef4CBpjjrs6L1kzG/fTiCT8FcRBHSYeWeVPoB1+TqRXs1OkmuiiQcIHzAQF99 V4Sd2snbw7wAcdC1UybqpTJ9SvSBBVsgXLmUpvViZKe7hc1DdD0Au8Rzz/dvvpLt6DFdLP al2taN6GrIvEVUk41mD5JoeJ7ZhreX0Ro5R/+BAnEGQrJGQtGoHAXK4fYHfZv9Zrt1cItD xDv3hG//5s93AB3FxQbS3sI0Z7FrjeZNGIMm8AeXFMP/GdoRcWinT/DVTxUIxQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710404983; a=rsa-sha256; cv=none; b=jNgr1vwLww/VN2DkW104YeRHyY/rI4X5qpqPeCUrLqQRkJYJQxHse+AxgERL5jZbAhXWdO 52oOY3pGMDW0k0qlYPbFYCX/ErEiG2j/+S+5D/TNCed4g94IecbfVkHifDAjlF3XBbXP2S GssnT65D0p8xIKSNZ6tOm1J+/e10LigLddPjO+dtfqpwZ0jFxK4RjcVRH8YaSDn/LU89Gu Ss5XXhUdcTI1GITvG13pTaiuzEOsa2TWQ+vPkWC68+tzbEBsV7iiP9r19cj4YTnPx82L3o Oc7/E+aeYdN8pxS1aTw+vOs5+mZmaNRlSS5Ex33VeWCCQp9386/nicQG+FN8Uw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710404983; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6ZKfxLHTUTUxiWlu+7ayETeuuokajA5tPfB1x2w7nRs=; b=bK1TQzHuE0Axh5/usXFj0XWcKqEpR7hVofzey9pRTgWaxDbF4zr6Ne2pdawQ0muBVHwA2b 6l39SjvZXBr5D2bYt5TfCAHDiWLx/fitbvsoDVr/rLUDM80d0+GpMdoprlcu+2za/gz3If PcIepPEQzpCl767rHP2fPb4eLUvhpiZKQ2KQYSAlEa4VR2+wW1vjNlvPU/HH/0h26wLL+S tRl9YwwZROWnXVR/A35tn4qRf5T1tua74tKP6T6FaxzW4T1CQEewBwwPoFKtilE96Y1fDx h3Pt7dSAvaUJhJI/I9QJaWHuPSi+sOD+O30otHhMnnw+JCO0SYcXGEntvB3vOg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TwLCW0SgNzKN2; Thu, 14 Mar 2024 08:29: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 42E8TgtX006366; Thu, 14 Mar 2024 08:29:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E8TgRp006363; Thu, 14 Mar 2024 08:29:42 GMT (envelope-from git) Date: Thu, 14 Mar 2024 08:29:42 GMT Message-Id: <202403140829.42E8TgRp006363@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: 7a4a122f9731 - stable/14 - netlink: fix adding an interface route List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 7a4a122f9731c589831e1c00d85588ff9813b338 Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=7a4a122f9731c589831e1c00d85588ff9813b338 commit 7a4a122f9731c589831e1c00d85588ff9813b338 Author: KUROSAWA Takahiro AuthorDate: 2023-11-28 18:14:50 +0000 Commit: Zhenlei Huang CommitDate: 2024-03-14 08:27:42 +0000 netlink: fix adding an interface route route add -iface " for a netif without an IPv4/IPv6 address fails with EINVAL. Need to use a link-level ifaddr for gw if an ifaddr for dst is not found as the rtsock-based implementation does. PR: 275341 Reported by: Sean Cody Reviewed by: rcm Tested by: rcm Approved by: kp (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D41330 (cherry picked from commit f818559774cb0c1516364c4beca361480fd68b5b) --- sys/netlink/route/rt.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/sys/netlink/route/rt.c b/sys/netlink/route/rt.c index cfaa2167b0d2..ed09748995dc 100644 --- a/sys/netlink/route/rt.c +++ b/sys/netlink/route/rt.c @@ -750,9 +750,14 @@ finalize_nhop(struct nhop_object *nh, const struct sockaddr *dst, int *perror) struct ifaddr *ifa = ifaof_ifpforaddr(gw_sa, nh->nh_ifp); if (ifa == NULL) { - NL_LOG(LOG_DEBUG, "Unable to determine ifa, skipping"); - *perror = EINVAL; - return (NULL); + /* Try link-level ifa. */ + gw_sa = &nh->gw_sa; + ifa = ifaof_ifpforaddr(gw_sa, nh->nh_ifp); + if (ifa == NULL) { + NL_LOG(LOG_DEBUG, "Unable to determine ifa, skipping"); + *perror = EINVAL; + return (NULL); + } } nhop_set_src(nh, ifa); } From nobody Thu Mar 14 08:29:44 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TwLCX2g4Hz5FSF2; Thu, 14 Mar 2024 08:29: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 4TwLCX1grgz437b; Thu, 14 Mar 2024 08:29:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710404984; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OHwzN5lg8+ERUzXWu2Y13ezi7gaa89zyYspAebusGVM=; b=HGlONhHvOKOvNhYwWwbF9Gukvm93OwFnkHZpqTbk3Sj/JKonWWqqZAEV73JpXTGggH+M7y 1ovVmP6N2AKlkd9HcacJZaS6PKqGI3V66NpOL+IMspvTAcAoS2JVNtaM8VyXRM2a40rj7l S1odTkhEcM50AtjGRulJgBwX9OGXfhqEDbpSwHS86hj3Kz7pO7P+aQThyOcqWedzeO2zXs TfYf2bMuxLUNv6XMPpsLaWlhl5AYxV04ZAf5XFsspWs6zOWLH1GYjuJgeQHGc9JzpgOBnV zX0C2mVJJ2msmxjp0aYgVyTqK2DfR5PwGWtTNR7e7DgowUo3FJcObFzrjQCrUQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710404984; a=rsa-sha256; cv=none; b=OW7QZihtTGSLffjlwtqLOI7uB3ET3trNDW4IAFk6B6tT3BYvYJou5Zm1GylPL7I7+mK9FL ZpGcmy2033e9swSQwQ7iX4KLrqrUqvjN6cyr2XqBGKSxn683EY1VzKMjd20moDXsrmhfGJ aT2lGcXkWl/RnBYY66QmJlRm5oSv+biGYAtRLbfTVxzh9uyBQV3hBO8kUp5Rv3JLGNTDL4 Xq+1xFZeIWgYijmfnARuLCfMv57Sc0eSSHlVQHiMMdGWkFXXBafjF4fyBH3GhGncwhCRfu QoyEQQrzmQbQBlvwT09p7/axGYkoOSRPRhEoJ9htBAjA1FyUCcQGfJj8AB5qxQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710404984; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=OHwzN5lg8+ERUzXWu2Y13ezi7gaa89zyYspAebusGVM=; b=q8YG2LGWrnApp7Xz5EX8b6podrlqstSqMZyiobMODX4+z066Dy3eVWb4v0t6ReKBiu6vYD K+rHd40RQVwDWw2tgZOjh01tBj7GZMWiF+wBXZ6qjWWEzMe7ECV04TaNR/0NjxMWMjOPEq I0moc/vKVVHtwddTxNF2rem9tnJ+7SIXPN7IodPHTk6s1xTZV81s94Kgdw7sih8CVXl4fJ 613jneMKoyceCAIq8gT7X8qcqVEZuVCnLilosbuh9gn+PnS5pPdYnLkq50/nMJ81YsOzab RQD1KiqivYaEtOlPQw433WVbYpPBZnfp7mBy1dD4ypjUtajIVDG1soNphnKLNg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TwLCX1HCPzK5T; Thu, 14 Mar 2024 08:29: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 42E8Tii1006417; Thu, 14 Mar 2024 08:29:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E8Ti7q006414; Thu, 14 Mar 2024 08:29:44 GMT (envelope-from git) Date: Thu, 14 Mar 2024 08:29:44 GMT Message-Id: <202403140829.42E8Ti7q006414@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: b2cb054dac62 - stable/14 - netlink: Add tests when adding an interface route List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: b2cb054dac62b2f976677d140700f7aa5c228f5e Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=b2cb054dac62b2f976677d140700f7aa5c228f5e commit b2cb054dac62b2f976677d140700f7aa5c228f5e Author: Jose Luis Duran AuthorDate: 2023-11-28 19:58:03 +0000 Commit: Zhenlei Huang CommitDate: 2024-03-14 08:27:54 +0000 netlink: Add tests when adding an interface route Add tests for adding a route using an interface only (without an IP address). Reviewed by: rcm Approved by: kp (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D41436 (cherry picked from commit 1db64f89363c97858961c4df0b7d02f3223723cf) --- tests/sys/netlink/test_rtnl_route.py | 41 ++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/tests/sys/netlink/test_rtnl_route.py b/tests/sys/netlink/test_rtnl_route.py index e6bbe7656eb4..20f2c3ce3ee2 100644 --- a/tests/sys/netlink/test_rtnl_route.py +++ b/tests/sys/netlink/test_rtnl_route.py @@ -3,6 +3,7 @@ import socket import pytest from atf_python.sys.net.tools import ToolsHelper +from atf_python.sys.net.vnet import IfaceFactory from atf_python.sys.net.vnet import SingleVnetTestTemplate from atf_python.sys.netlink.attrs import NlAttrIp from atf_python.sys.netlink.attrs import NlAttrU32 @@ -45,6 +46,46 @@ class TestRtNlRoute(NetlinkTestTemplate, SingleVnetTestTemplate): ToolsHelper.print_net_debug() ToolsHelper.print_output("netstat -6onW") + @pytest.mark.timeout(5) + def test_add_route6_ll_if_gw(self): + tun_ifname = IfaceFactory().create_iface("", "tun")[0].name + tun_ifindex = socket.if_nametoindex(tun_ifname) + + msg = NetlinkRtMessage(self.helper, NlRtMsgType.RTM_NEWROUTE) + msg.set_request() + msg.add_nlflags([NlmNewFlags.NLM_F_CREATE]) + msg.base_hdr.rtm_family = socket.AF_INET6 + msg.base_hdr.rtm_dst_len = 64 + msg.add_nla(NlAttrIp(RtattrType.RTA_DST, "2001:db8:2::")) + msg.add_nla(NlAttrU32(RtattrType.RTA_OIF, tun_ifindex)) + + rx_msg = self.get_reply(msg) + assert rx_msg.is_type(NlMsgType.NLMSG_ERROR) + assert rx_msg.error_code == 0 + + ToolsHelper.print_net_debug() + ToolsHelper.print_output("netstat -6onW") + + @pytest.mark.timeout(5) + def test_add_route4_ll_if_gw(self): + tun_ifname = IfaceFactory().create_iface("", "tun")[0].name + tun_ifindex = socket.if_nametoindex(tun_ifname) + + msg = NetlinkRtMessage(self.helper, NlRtMsgType.RTM_NEWROUTE) + msg.set_request() + msg.add_nlflags([NlmNewFlags.NLM_F_CREATE]) + msg.base_hdr.rtm_family = socket.AF_INET + msg.base_hdr.rtm_dst_len = 32 + msg.add_nla(NlAttrIp(RtattrType.RTA_DST, "192.0.2.1")) + msg.add_nla(NlAttrU32(RtattrType.RTA_OIF, tun_ifindex)) + + rx_msg = self.get_reply(msg) + assert rx_msg.is_type(NlMsgType.NLMSG_ERROR) + assert rx_msg.error_code == 0 + + ToolsHelper.print_net_debug() + ToolsHelper.print_output("netstat -4onW") + @pytest.mark.timeout(20) def test_buffer_override(self): msg_flags = ( From nobody Thu Mar 14 09:54:50 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TwN5l0Sdwz5Ccgx; Thu, 14 Mar 2024 09:54: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 4TwN5k74Jgz4DyQ; Thu, 14 Mar 2024 09:54:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710410091; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Jo7044ff+bzkVIrSfEn/bAGPvWabhMlMuJ5o0wNoSmA=; b=AKtGlLQ7GbUSOsd0BILpy3knr4SV1MlgiFiQECpwh+HSUDNUcCbDIvRfnJoNq0v0NrB82/ PH/HX+nMtV9CVIJg7Ja0s5u1qsHRM2s8tbI/s8XKvx5wCvhNzBViE9s1reapXD7ldjLqEj n3HBc87GwAFZ/PDeSBO6HKzCdaVfse/rZZkSeE/03Wy8zFmBwINCcPgyl0HlHCjLOLkOIo 8woflP/54NAwN3zWMEEhqjMH1LN25VTSOJjhgN8D4r727XF18hCButbUk6z5fGApbbDzom iNYxP8eUdUCZ1iHEIxxoA+XJ+PfoXryazzCzcTYM2arcHOrLlB6HtG1zireAxg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710410091; a=rsa-sha256; cv=none; b=AwCXfMxihUTQJqoXT6ilkImmda8W4lIy46dLxb7XRQ8Q0QqBB/j29aby4Iwm59t/nwATfo Us70fCkmJfoibqeIPvVZl6ZNss24Pp6kJvZMyLNpy/wen1Jdz90dJH7ZGfJ9WpSNhM0+MI dqFFOj7hqHmFcB5I0jJ6s6sWJY9nUNf5/LHYZX8e7GEtAScD9I4N8RRCIEVAnUUMVNE8Vs lMXEBKjKd1aiM+NjWn3YK8tfKP7mm7ovmtK0tSfG2dm5Ojs+lyuCmLWkG+czV75eiccrcc xqgtfuU/1rGtZtnp/2skJle4xOJyaNxi+j9K5Taf3bk4Ojp+ZyVI6b02jENLog== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710410091; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Jo7044ff+bzkVIrSfEn/bAGPvWabhMlMuJ5o0wNoSmA=; b=E11wG/sQXxxvASMFUsWKflM7N5b46TabR7c7T15pcdZcf5Cs+LQS9DrXGgax1oKAqNiTwb nRdvG2GTao3UStWrhHTV6soy1MhmuJGwEALA2FUNS+O9Euyesxg5t9gatdD7cRIk5Hjfb9 lQGIFHmSEylW4SDTgb1BWPTOUTfOr7gIBC9mJaqYIKTMENpQbYziwOl8XwRiWmynKh6AR1 /OgOlDS8WVJ5pcBV8cvnHzv5QAwgUttBSKIkzfSlmP/X9D/h9aX1nnvTUe+kwVmIDziisv 5vjrTn0yHZvgHCxyuIMaTZ2UiDzvtloFZv/YJBcUZYBNeA43eQmYNlEubSxM8Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TwN5k6g6pzLvt; Thu, 14 Mar 2024 09:54: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 42E9soWf058523; Thu, 14 Mar 2024 09:54:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42E9soZT058520; Thu, 14 Mar 2024 09:54:50 GMT (envelope-from git) Date: Thu, 14 Mar 2024 09:54:50 GMT Message-Id: <202403140954.42E9soZT058520@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: 9a2b4665958e - stable/14 - route: introduce add interface route test cases List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 9a2b4665958e25eccf06a3b8445eacc24c5be379 Auto-Submitted: auto-generated The branch stable/14 has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=9a2b4665958e25eccf06a3b8445eacc24c5be379 commit 9a2b4665958e25eccf06a3b8445eacc24c5be379 Author: R. Christian McDonald AuthorDate: 2023-11-28 18:18:15 +0000 Commit: Zhenlei Huang CommitDate: 2024-03-14 09:52:50 +0000 route: introduce add interface route test cases As a followup to D41330 and D41436, this patch introduces two new tests for sbin/route: interface_route_v[46]. These tests fail without D41330. Reviewed by: kp Approved by: kp (mentor) MFC after: 1 week Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit ca7edd0d2c339b8e6e5e52257ea6d4f22db02550) --- sbin/route/tests/basic.sh | 58 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/sbin/route/tests/basic.sh b/sbin/route/tests/basic.sh index bb432daa0793..2e2ab9dba97f 100644 --- a/sbin/route/tests/basic.sh +++ b/sbin/route/tests/basic.sh @@ -117,8 +117,66 @@ basic_v6_cleanup() vnet_cleanup } +atf_test_case "interface_route_v4" "cleanup" +interface_route_v4_head() +{ + atf_set descr 'add interface route for v4' + atf_set require.user root + atf_set require.progs jail jq +} + +interface_route_v4_body() +{ + epair=$(vnet_mkepair) + ifconfig ${epair}a up + vnet_mkjail alcatraz ${epair}b + + # add interface route + jexec alcatraz route add "192.0.2.1" -iface ${epair}b + gateway=$(check_route "alcatraz" "192.0.2.1") + + if [ -z "${gateway}" ]; then + atf_fail "Failed to add interface route." + fi +} + +interface_route_v4_cleanup() +{ + vnet_cleanup +} + +atf_test_case "interface_route_v6" "cleanup" +interface_route_v6_head() +{ + atf_set descr 'add interface route for v6' + atf_set require.user root + atf_set require.progs jail jq +} + +interface_route_v6_body() +{ + epair=$(vnet_mkepair) + ifconfig ${epair}a up + vnet_mkjail alcatraz ${epair}b + + # add interface route + jexec alcatraz route add -6 "2001:db8:cc4b::1" -iface ${epair}b + gateway=$(check_route "alcatraz" "2001:db8:cc4b::1") + + if [ -z "${gateway}" ]; then + atf_fail "Failed to add interface route." + fi +} + +interface_route_v6_cleanup() +{ + vnet_cleanup +} + atf_init_test_cases() { atf_add_test_case "basic_v4" atf_add_test_case "basic_v6" + atf_add_test_case "interface_route_v4" + atf_add_test_case "interface_route_v6" } From nobody Thu Mar 14 17:23:12 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TwZ363XQvz5DSNt; Thu, 14 Mar 2024 17:23:14 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TwZ361hDfz4DR3; Thu, 14 Mar 2024 17:23:14 +0000 (UTC) (envelope-from jhb@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710436994; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=fNbfguqjjfaWuFQaFbo3+YYZZOA/452mUOrIZ03ZGoA=; b=bEn5wbeVwcJ0G34z+6FfzgOBAygY7vzRPBubfAdFP/5ELDINEN7Un5ofgmuQ/dQNc7cBkU 35gjGA6kanbjPbU9+l8Y3hizkcpL3y7Q4WOqH6Uo9dAp3lDTzW/8mJybxbBVDNLwgYhhqR kzuZi9uGFuk3KVS2lnSNnFnkO3IHHkC/lTNhYh1JtlgLAtKtbq+4PrZuR1Z1OR0OUvTKjO Z/JEO52aO2zUEcdNCsoamZye8zcoHLcQG7PM7OTlnJKLMUIESuE23PG6DuOysPxcdcRI9u E/jL9Xi8ncKSPsfQQNcllFHYUeGu3WZ0diUl5ln5Oq1cWwfYpwv66j14i8i8wQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710436994; a=rsa-sha256; cv=none; b=X2Us50zeVXKavkQ5Xr29z/KJSdlO3djmt7hVJvv5a8jUODusLjZM+Hk9VMo03Y5uSYreXl 9GR34PuoXkpPJKlzstGqHWxquhN+CmLjCziyuhROVSDJBnPKkdUAxNoZ2tWzREH4F53E4z NdbKe+NEyIC5NfJHyAZiz5co2ANgFGpTdBNKpmXf8CBsu63ux45Wb+LraZvZX6MwiK/BIM MSYyZg8ShxVbdk2eiXgnPtUjrv7JKV208XlSHjd4bqQq7foUQGrvvSkJincIe+5lplNYQT 1ZuJstJPEY0Hw3dJmmeVFz+ToEg7KRmb2nyn1pGGgstKAkYgF14ANjiDNvRJiA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710436994; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=fNbfguqjjfaWuFQaFbo3+YYZZOA/452mUOrIZ03ZGoA=; b=gkdEji7Ye0cvGXF86nKhvjrfyv/9r9WoPb5Uts4M675w2d+qxE5jh/VkMk5kjIfXwlL5LU Q7z0p3HRhANdgUATgq7HQigRVuONc+57ye267C48OPN+d7Zy9xDOY5txBgUUJhEnf1iY1D bYt1xUUfC2e0z/nDycRYRM0K34ggMyXHb76lgP8RdMYuqy/vLr47esi+j9b2GY6TrPpIiG Ax+lucpXbcFkNMKkZpfVQmzvSAcKmzAej/tOjUOKwPZmEnIrdtaj6q1yH+OtEiwC0dqQgv 0C2oUvc/CaPZ6TUG1n0+uKxq/s76CGSiKa1h8ZS7SiGdox6CbAm/lkBcANDd7g== Received: from [IPV6:2601:644:937f:4c50:9159:2009:aff7:887a] (unknown [IPv6:2601:644:937f:4c50:9159:2009:aff7:887a]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) (Authenticated sender: jhb) by smtp.freebsd.org (Postfix) with ESMTPSA id 4TwZ354jkDzMMJ; Thu, 14 Mar 2024 17:23:13 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Message-ID: <56f538f1-d406-4095-972a-2022d48ffc73@FreeBSD.org> Date: Thu, 14 Mar 2024 10:23:12 -0700 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: git: 220ee18f1964 - main - netinet/tcp_var.h: always define IS_FASTOPEN() for kernel compilation env Content-Language: en-US To: Gleb Smirnoff , Konstantin Belousov Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org References: <202403132321.42DNLNIX087785@gitrepo.freebsd.org> From: John Baldwin In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 3/13/24 5:24 PM, Gleb Smirnoff wrote: > On Wed, Mar 13, 2024 at 11:21:23PM +0000, Konstantin Belousov wrote: > K> diff --git a/sys/netinet/tcp_var.h b/sys/netinet/tcp_var.h > K> index 6f7f7115c2f4..7b5c57d39213 100644 > K> --- a/sys/netinet/tcp_var.h > K> +++ b/sys/netinet/tcp_var.h > K> @@ -812,11 +812,13 @@ tcp_packets_this_ack(struct tcpcb *tp, tcp_seq ack) > K> #define ENTER_RECOVERY(t_flags) t_flags |= (TF_CONGRECOVERY | TF_FASTRECOVERY) > K> #define EXIT_RECOVERY(t_flags) t_flags &= ~(TF_CONGRECOVERY | TF_FASTRECOVERY) > K> > K> -#if defined(_KERNEL) && !defined(TCP_RFC7413) > K> +#if defined(_KERNEL) > K> +#if !defined(TCP_RFC7413) > K> #define IS_FASTOPEN(t_flags) (false) > K> #else > K> #define IS_FASTOPEN(t_flags) (t_flags & TF_FASTOPEN) > K> #endif > K> +#endif > K> > K> #define BYTES_THIS_ACK(tp, th) (th->th_ack - tp->snd_una) > > I know Konstantin in doing that to clear path for IPSEC changes, and the patch > does improve code. So the message isn't addressed to him, rather it is for > other src-committers. > > Using ifdefs that come from the kernel config inside include files that are not > ephemeral opt_foo.h is laying out a minefield for the future. Best case - for > yourself, worst case - for somebody else. +100 > In the best case this ends in cryptic kernel failure builds, where your custom > kernel doesn't build, but GENERIC builds and it is not clear why. In the worst > case this creates runtime failures even more cryptic in their nature. > > In this particular case TCP_RFC7413 comes via opt_inet.h. Thus, if you got a > userland tool, e.g. netstat(1) using IS_FASTOPEN() it will always be false. > Again, netstat would be a best case. A worst case would be netinet6 kernel > compilation unit that does not include opt_inet.h, but uses IS_FASTOPEN(). > > Other than that, we got 32 flags for t_flags and only one is obfuscated via a > macro. I'd really like to remove the macro and test the flag directly. Any > objections? +1 -- John Baldwin From nobody Thu Mar 14 17:34:23 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TwZJF5QGsz5DSt7 for ; Thu, 14 Mar 2024 17:34:37 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-ej1-x634.google.com (mail-ej1-x634.google.com [IPv6:2a00:1450:4864:20::634]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TwZJF3ZTkz4FWW for ; Thu, 14 Mar 2024 17:34:37 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-ej1-x634.google.com with SMTP id a640c23a62f3a-a46692ec303so169429766b.1 for ; Thu, 14 Mar 2024 10:34:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1710437675; x=1711042475; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=0xsFrvZFnflqLs9vZ2LdnHyafdvJwRt3mY3Az5BshKg=; b=kaVEwtj4yFYq6lIsua2B47pABIXQeU1BLd5h73zUFDKMN2KIJPZ1LZFqzncyKPi1zA fXJ4Ap4C7mV7Ax8wLakQk7L4WZEOZ3SNyH6gm48MUGRAT0UgzQlEo+xED513vJOFZWeJ 5+inQp6Km4MVVL3UmIPt6+SxorMG5u0ljVkOsuq0ZGUG9kMFeglXs52XYy1m4l/nIh8Q Av7bUToYZhMfJ0sGo2roku4//SSVWHxu42RrHP3I+qdIfl7X2Cz9iN4BLY4al5+/4sYg hzZTVAM3azIXm/p9x/0W56tQjqTE9Msr7JDQEX/aRvBr4sFVb6RyVH3TLJUaAzyVh/Hp xp9A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710437675; x=1711042475; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=0xsFrvZFnflqLs9vZ2LdnHyafdvJwRt3mY3Az5BshKg=; b=NG5xOblDpIbnPyjoKM1U4w1Gz8tMf2gOjUhdZJqTcFYTRWTCTGH1qCRRI39VuavEsJ Fzml0YYxod8BcKEJjKk8p7agnH2r1tyOc5fxaiyUbgBRAsAoHUZvDsZXinL1WoSwA243 7VJzLC62j8fBawMnkD26JjWKjyVUX4BRzh+lWrPDRkls+NHswlH53HWHPwpKyxb1OtrM d7tZ6n5T7OUrpXEcdukr65C4bgVSvkUPJpW5rSvJ1lhTlfQGV1fgpVCfPCPEStz4DpZm U4fae5/1KLmc8GQYYUNMk9v5C0KMw2vDdl83SWK9ksOqvNxZ7UaejAySOedBJgwJFbsm SQEA== X-Forwarded-Encrypted: i=1; AJvYcCUJmzLPv+jfM6Oj2nEarLt2XZyvvOQvEFzPD6E/6fkZOrpoFb8V9UuCWEJQfL3FQYeDsyQ3BA9AjiVIY/Gz9Jep5kh1HrwZru9suSUgWvgV X-Gm-Message-State: AOJu0Yyo+4a54gfG7c6v6VuzJU4nLP360uJ1EpGQGr1NLd/KYva6ehW7 M3+z/IN2ZgLILDtQtd+MMJpufoHBM7nN3+WEV0r2X2vyPdLQ62hN9vtTmAbJ3+I0wM0D35AAUmz R+YyAZhSgqQ0XZO1OGFJHhxGrwpiRRl1ijtZJjA== X-Google-Smtp-Source: AGHT+IEo/4DceIPZebvupagBXLp7XNqngudFw+dXck5et26R3gDpeZ7JF6mzu60lgUbhdEeXKkwS0UM4co0FM5LcAFY= X-Received: by 2002:a17:906:f145:b0:a45:f352:73b0 with SMTP id gw5-20020a170906f14500b00a45f35273b0mr1720262ejb.65.1710437674773; Thu, 14 Mar 2024 10:34:34 -0700 (PDT) List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 References: <202403132321.42DNLNIX087785@gitrepo.freebsd.org> <56f538f1-d406-4095-972a-2022d48ffc73@FreeBSD.org> In-Reply-To: <56f538f1-d406-4095-972a-2022d48ffc73@FreeBSD.org> From: Warner Losh Date: Thu, 14 Mar 2024 11:34:23 -0600 Message-ID: Subject: Re: git: 220ee18f1964 - main - netinet/tcp_var.h: always define IS_FASTOPEN() for kernel compilation env To: John Baldwin Cc: Gleb Smirnoff , Konstantin Belousov , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: multipart/alternative; boundary="000000000000040c370613a24e5b" X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US] X-Rspamd-Queue-Id: 4TwZJF3ZTkz4FWW --000000000000040c370613a24e5b Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Mar 14, 2024 at 11:23=E2=80=AFAM John Baldwin wro= te: > On 3/13/24 5:24 PM, Gleb Smirnoff wrote: > > On Wed, Mar 13, 2024 at 11:21:23PM +0000, Konstantin Belousov wrote: > > K> diff --git a/sys/netinet/tcp_var.h b/sys/netinet/tcp_var.h > > K> index 6f7f7115c2f4..7b5c57d39213 100644 > > K> --- a/sys/netinet/tcp_var.h > > K> +++ b/sys/netinet/tcp_var.h > > K> @@ -812,11 +812,13 @@ tcp_packets_this_ack(struct tcpcb *tp, tcp_seq > ack) > > K> #define ENTER_RECOVERY(t_flags) t_flags |=3D (TF_CONGRECOVERY | > TF_FASTRECOVERY) > > K> #define EXIT_RECOVERY(t_flags) t_flags &=3D ~(TF_CONGRECOVERY | > TF_FASTRECOVERY) > > K> > > K> -#if defined(_KERNEL) && !defined(TCP_RFC7413) > > K> +#if defined(_KERNEL) > > K> +#if !defined(TCP_RFC7413) > > K> #define IS_FASTOPEN(t_flags) (false) > > K> #else > > K> #define IS_FASTOPEN(t_flags) (t_flags & TF_FASTOPEN) > > K> #endif > > K> +#endif > > K> > > K> #define BYTES_THIS_ACK(tp, th) (th->th_ack - tp->snd_una) > > > > I know Konstantin in doing that to clear path for IPSEC changes, and th= e > patch > > does improve code. So the message isn't addressed to him, rather it is > for > > other src-committers. > > > > Using ifdefs that come from the kernel config inside include files that > are not > > ephemeral opt_foo.h is laying out a minefield for the future. Best case > - for > > yourself, worst case - for somebody else. > > +100 > +100 as well. I can't tell you how many times I've been burned by this, had to mop up for it after the fact, etc over the years. > > In the best case this ends in cryptic kernel failure builds, where your > custom > > kernel doesn't build, but GENERIC builds and it is not clear why. In th= e > worst > > case this creates runtime failures even more cryptic in their nature. > > > > In this particular case TCP_RFC7413 comes via opt_inet.h. Thus, if you > got a > > userland tool, e.g. netstat(1) using IS_FASTOPEN() it will always be > false. > > Again, netstat would be a best case. A worst case would be netinet6 > kernel > > compilation unit that does not include opt_inet.h, but uses > IS_FASTOPEN(). > > > > Other than that, we got 32 flags for t_flags and only one is obfuscated > via a > > macro. I'd really like to remove the macro and test the flag directly. > Any > > objections? > > +1 > Yea, this macro isn't that special, and there's no good reason from looking at the code it should get such special treatment. Warner --000000000000040c370613a24e5b Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Thu, Mar 14, 2024 at 11:23=E2=80= =AFAM John Baldwin <jhb@freebsd.org> wrote:
On= 3/13/24 5:24 PM, Gleb Smirnoff wrote:
> On Wed, Mar 13, 2024 at 11:21:23PM +0000, Konstantin Belousov wrote: > K> diff --git a/sys/netinet/tcp_var.h b/sys/netinet/tcp_var.h
> K> index 6f7f7115c2f4..7b5c57d39213 100644
> K> --- a/sys/netinet/tcp_var.h
> K> +++ b/sys/netinet/tcp_var.h
> K> @@ -812,11 +812,13 @@ tcp_packets_this_ack(struct tcpcb *tp, tcp= _seq ack)
> K>=C2=A0 #define=C2=A0 =C2=A0ENTER_RECOVERY(t_flags) t_flags |=3D (= TF_CONGRECOVERY | TF_FASTRECOVERY)
> K>=C2=A0 #define=C2=A0 =C2=A0EXIT_RECOVERY(t_flags) t_flags &= =3D ~(TF_CONGRECOVERY | TF_FASTRECOVERY)
> K>
> K> -#if defined(_KERNEL) && !defined(TCP_RFC7413)
> K> +#if defined(_KERNEL)
> K> +#if !defined(TCP_RFC7413)
> K>=C2=A0 #define=C2=A0 =C2=A0IS_FASTOPEN(t_flags)=C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 (false)
> K>=C2=A0 #else
> K>=C2=A0 #define=C2=A0 =C2=A0IS_FASTOPEN(t_flags)=C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 (t_flags & TF_FASTOPEN)
> K>=C2=A0 #endif
> K> +#endif
> K>
> K>=C2=A0 #define=C2=A0 =C2=A0BYTES_THIS_ACK(tp, th)=C2=A0 (th->t= h_ack - tp->snd_una)
>
> I know Konstantin in doing that to clear path for IPSEC changes, and t= he patch
> does improve code.=C2=A0 So the message isn't addressed to him, ra= ther it is for
> other src-committers.
>
> Using ifdefs that come from the kernel config inside include files tha= t are not
> ephemeral opt_foo.h is laying out a minefield for the future. Best cas= e - for
> yourself, worst case - for somebody else.

+100

> In the best case this ends in cryptic kernel failure builds, where you= r custom
> kernel doesn't build, but GENERIC builds and it is not clear why. = In the worst
> case this creates runtime failures even more cryptic in their nature.<= br> >
> In this particular case TCP_RFC7413 comes via opt_inet.h.=C2=A0 Thus, = if you got a
> userland tool, e.g. netstat(1) using IS_FASTOPEN() it will always be f= alse.
> Again, netstat would be a best case.=C2=A0 A worst case would be netin= et6 kernel
> compilation unit that does not include opt_inet.h, but uses IS_FASTOPE= N().
>
> Other than that, we got 32 flags for t_flags and only one is obfuscate= d via a
> macro.=C2=A0 I'd really like to remove the macro and test the flag= directly.=C2=A0 Any
> objections?

+1


--000000000000040c370613a24e5b-- From nobody Fri Mar 15 00:36:58 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Twlgb0cb7z5DwHk; Fri, 15 Mar 2024 00:36: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 4Twlgb0541z42lw; Fri, 15 Mar 2024 00:36:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710463019; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Nqfeskq4URHlxAsYFr+IThMzMMtt8adOj7ZVZ9SNWU8=; b=ymw0W7pXb7WKAh/MN/AiYV2vNhCFJHy+96M4OxDoXsLqPt0o62E8ZwiU66xWmjvw1x7+/V 6PhI4mdpUwurCAhu4fPxJInafoO9Ip/7Z781ZEBJ7KOxM3PyVYoGhln4Yu7418LG+/bsRA 0lB4UFiIWsh2TIfvvJLZz0YCAAoNyFcCPis0ozK3016S/he4BkiE2eVzqN3TQKIxacoORa AyUKnD+0Ib4ou3M3AyVWOFf6ns0WGouYoB6ufacqxVZo18t5ipsbMDp3/ZQMed8TN12yrV PRvaX9qmmb2juFry2goBIZr1WM2oHF6MDbyUwNFE/aGfySYksadjWiKEVGZFSQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710463019; a=rsa-sha256; cv=none; b=mXRdnkSIP1wOzce+IXboOvpbNZQoYYwmJn5tAKyNuljoGuEYtcvgiiSoikKyjtzlqY/mj2 t6b7gw7O6g7fTPd/SojnoO092nSxovQsg4i3dpYCm4g7gyrVR8wnG4ds6wqGJrqfnMtmpy f4UA6LksABNhOqrZdpWnJiFm4XYtpBvmY64IeJh5j0e8S2z7zqa27toN7jxlaWDxeNwv1Q xl8EibHoDsTcCSJWnimSBDPbDtSeAp2t4a5P9JTc7g3UFdqyjJOrTOp8VOj8inpjftIKgv r8YOtCiqgGPumHdAqWFCGvy0D1BbRI0HcF0Uoy+Thygi2vQG1TdwBTNBQOaCKg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710463019; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Nqfeskq4URHlxAsYFr+IThMzMMtt8adOj7ZVZ9SNWU8=; b=c3oO6ssojfLSyqNu3PDPlsYvAdTlWYfteyiWsjUAAMhRFcgmNhU92Tn7tuxEhl07WJyIYc MKWci24w4HfJGCsdrk5uO59XQ1nUXFjBooIQgphSVFYPmj08OFM3XSLf2sM2hf8CwyegY1 kHGxVQutArbVhMu1YZu1VvtzMdLfhLXIGk9XeNoiNBVuH6P34Cd4DbqJ0KElvWmppGZYWN fgNQC1bneGWL3DEVSc2MY/Omq+YazDjBCQYivoDMvPayxrsmLfuznUkNgdnoBAFJKWuz8S QP+kLgpOoAZWF8avKjEUAcMcM/856ag6xpP2Fd+1QMFz53Z7ixS7ZFEmMByMSg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TwlgZ6hGJzpvw; Fri, 15 Mar 2024 00:36: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 42F0awod044198; Fri, 15 Mar 2024 00:36:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42F0awkj044196; Fri, 15 Mar 2024 00:36:58 GMT (envelope-from git) Date: Fri, 15 Mar 2024 00:36:58 GMT Message-Id: <202403150036.42F0awkj044196@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Rick Macklem Subject: git: 89f1dcb3eb46 - main - vfs_vnops.c: Use va_bytes >= va_size hint to avoid SEEK_DATA/SEEKHOLE List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 89f1dcb3eb468e4cbaebd1ccde9a643d85f1282e Auto-Submitted: auto-generated The branch main has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=89f1dcb3eb468e4cbaebd1ccde9a643d85f1282e commit 89f1dcb3eb468e4cbaebd1ccde9a643d85f1282e Author: Rick Macklem AuthorDate: 2024-03-15 00:35:32 +0000 Commit: Rick Macklem CommitDate: 2024-03-15 00:35:32 +0000 vfs_vnops.c: Use va_bytes >= va_size hint to avoid SEEK_DATA/SEEKHOLE vn_generic_copy_file_range() tries to maintain holes in file ranges being copied, using SEEK_DATA/SEEK_HOLE where possible, Unfortunately SEEK_DATA/SEEK_HOLE operations can take a long time under certain circumstances. Although it is not currently possible to know if a file has unallocated data regions, the case where va_bytes >= va_size is a strong hint that there are no unallocated data regions. This hint does not work well for file systems doing compression, but since it is only a hint, it is still useful. For the case of va_bytes >= va_size, avoid doing SEEK_DATA/SEEK_HOLE. Reviewed by: kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D44509 --- sys/kern/vfs_vnops.c | 34 ++++++++++++++++++++++++++-------- 1 file changed, 26 insertions(+), 8 deletions(-) diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c index fd78b692b088..d79707555ac1 100644 --- a/sys/kern/vfs_vnops.c +++ b/sys/kern/vfs_vnops.c @@ -3334,14 +3334,15 @@ vn_generic_copy_file_range(struct vnode *invp, off_t *inoffp, struct vnode *outvp, off_t *outoffp, size_t *lenp, unsigned int flags, struct ucred *incred, struct ucred *outcred, struct thread *fsize_td) { + struct vattr inva; struct mount *mp; off_t startoff, endoff, xfer, xfer2; u_long blksize; int error, interrupted; - bool cantseek, readzeros, eof, lastblock, holetoeof; + bool cantseek, readzeros, eof, lastblock, holetoeof, sparse; ssize_t aresid, r = 0; size_t copylen, len, savlen; - off_t insize, outsize; + off_t outsize; char *dat; long holein, holeout; struct timespec curts, endts; @@ -3357,11 +3358,26 @@ vn_generic_copy_file_range(struct vnode *invp, off_t *inoffp, goto out; if (VOP_PATHCONF(invp, _PC_MIN_HOLE_SIZE, &holein) != 0) holein = 0; - error = vn_getsize_locked(invp, &insize, incred); + error = VOP_GETATTR(invp, &inva, incred); + if (error == 0 && inva.va_size > OFF_MAX) + error = EFBIG; VOP_UNLOCK(invp); if (error != 0) goto out; + /* + * Use va_bytes >= va_size as a hint that the file does not have + * sufficient holes to justify the overhead of doing FIOSEEKHOLE. + * This hint does not work well for file systems doing compression + * and may fail when allocations for extended attributes increases + * the value of va_bytes to >= va_size. + */ + sparse = true; + if (holein != 0 && inva.va_bytes >= inva.va_size) { + holein = 0; + sparse = false; + } + mp = NULL; error = vn_start_write(outvp, &mp, V_WAIT); if (error == 0) @@ -3395,9 +3411,9 @@ vn_generic_copy_file_range(struct vnode *invp, off_t *inoffp, error = vn_getsize_locked(outvp, &outsize, outcred); if (error == 0 && outsize > *outoffp && *outoffp <= OFF_MAX - len && outsize <= *outoffp + len && - *inoffp < insize && - *outoffp <= OFF_MAX - (insize - *inoffp) && - outsize <= *outoffp + (insize - *inoffp)) { + *inoffp < inva.va_size && + *outoffp <= OFF_MAX - (inva.va_size - *inoffp) && + outsize <= *outoffp + (inva.va_size - *inoffp)) { #ifdef MAC error = mac_vnode_check_write(curthread->td_ucred, outcred, outvp); @@ -3415,7 +3431,7 @@ vn_generic_copy_file_range(struct vnode *invp, off_t *inoffp, if (error != 0) goto out; - if (holein == 0 && holeout > 0) { + if (sparse && holein == 0 && holeout > 0) { /* * For this special case, the input data will be scanned * for blocks of all 0 bytes. For these blocks, the @@ -3486,7 +3502,7 @@ vn_generic_copy_file_range(struct vnode *invp, off_t *inoffp, error = VOP_IOCTL(invp, FIOSEEKDATA, &startoff, 0, incred, curthread); if (error == ENXIO) { - startoff = endoff = insize; + startoff = endoff = inva.va_size; eof = holetoeof = true; error = 0; } @@ -3549,6 +3565,8 @@ vn_generic_copy_file_range(struct vnode *invp, off_t *inoffp, cantseek = false; } else { cantseek = true; + if (!sparse) + cantseek = false; startoff = *inoffp; copylen = len; error = 0; From nobody Fri Mar 15 01:25:51 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Twmlz2Qfkz5F0QK; Fri, 15 Mar 2024 01:25: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 4Twmlz1wm7z478T; Fri, 15 Mar 2024 01:25:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710465951; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kd5frK3YffxEvHN9C/FozSpVLLUfaWt+r6aHQUEmqu4=; b=Ixg25t1yCp1i9PYl/OjQsRUoZanvVJ665H9Xer0X0f92k37Pz734QAFhjXKy4cnTmGvlk5 Om548HNk7U2vWyg3a5CrxauGrllJ6USD/eSsKjYkSkDjDlvQa/oKwhMvXpQZ593AZEcfzT Qq00QZl74aIrfGpxIAb+25W4GIQNLf8Qt8dg4inMHSlFV0CY7Khd2vQAmRvsCFMjgvJ0tU JW5j9fPK7OqVKHm9XWlrJM0vitrpLWFhPFWZtkLBEVVM6FfK0V34mHl4nhc0LMLf9b6HGr XeJSrC2iEoZa34HnLLiwu9PQOgx4QXIXHtgpHGQVOM5anr5ZByxUlqvbjpLDxQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710465951; a=rsa-sha256; cv=none; b=DfeeidtHBegRaAFLEt8KFd92KF8rS9xyRpVVAMenIhcdq9yFmtL/bCEnpNRjEjkibjzDwu F2Vhamm+7X68wUKRkOA/7goe2+5qHc4oeDG5WlfD87hcjjYzvr0rHAJTcMAI22w82mhhNy uhxrwKsnENvHrgkR040fkQF4wIPVesalvUrAukEkvBahpV+WoJMxMwouZJnqLfECJ8jHTd bjggbmpjmfuEIGZpMrgaFeTQdChT7Cf4YQDKuIhZbnsgOV2icaUbV0uZSlM4LoTubRiiWe uUtFE1cd9sDJIEdWKj6bjZbiPq0PDGGzxwI9x25mfYYDHZPJWnXHYfJe/05DaQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710465951; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kd5frK3YffxEvHN9C/FozSpVLLUfaWt+r6aHQUEmqu4=; b=T5zSt0Ju1smUaL3FKxN453raBTgxO+9ajctjsyVCsup+yxjUl91Hh9glrA0aiVhi+2rWQk AhOzetkbYjAaAee9DOYtOKBFkiFxwwckim1y2fnV93phK2zJFq1ZxzkYzn+Xa5DS5lmrFZ /28leBx/QCDczti6+oR7CVVCBYpn3q+aBuQg6rS5z75HPqXJxiYxk3EzOmnP314Jww3Yez GlAt7jQ4KvcHR/DISZUI0Z2OGNXAohEJH1mXVT7JZrybb1V4n7u8GQuXyzU1hthOO0STIl LGBnP1VyIZD3BGQwUdolv+HMQIGdrnDaWvRU352fYMtXdBtrhPhJtEtMM4mFTA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Twmlz1XG8zrTJ; Fri, 15 Mar 2024 01:25: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 42F1PpwH028446; Fri, 15 Mar 2024 01:25:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42F1PpGr028443; Fri, 15 Mar 2024 01:25:51 GMT (envelope-from git) Date: Fri, 15 Mar 2024 01:25:51 GMT Message-Id: <202403150125.42F1PpGr028443@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Kyle Evans Subject: git: 3705d679a634 - main - if_wg: use proper barriers around pkt->p_state List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kevans X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3705d679a6344c957cae7a1b6372a8bfb8c44f0e Auto-Submitted: auto-generated The branch main has been updated by kevans: URL: https://cgit.FreeBSD.org/src/commit/?id=3705d679a6344c957cae7a1b6372a8bfb8c44f0e commit 3705d679a6344c957cae7a1b6372a8bfb8c44f0e Author: Kyle Evans AuthorDate: 2024-03-15 01:19:18 +0000 Commit: Kyle Evans CommitDate: 2024-03-15 01:19:21 +0000 if_wg: use proper barriers around pkt->p_state Without appropriate load-synchronization to pair with store barriers in wg_encrypt() and wg_decrypt(), the compiler and hardware are often allowed to reorder these loads in wg_deliver_out() and wg_deliver_in() such that we end up with a garbage or intermediate mbuf that we try to pass on. The issue is particularly prevalent with the weaker memory models of !x86 platforms. Switch from the big-hammer wmb() to more explicit acq/rel atomics to both make it obvious what we're syncing up with, and to avoid somewhat hefty fences on platforms that don't necessarily need this. With this patch, my dual-iperf3 reproducer is dramatically more stable than it is without on aarch64. PR: 264115 MFC after: 1 week Reviewed by: andrew, zlei Differential Revision: https://reviews.freebsd.org/D44283 --- sys/dev/wg/if_wg.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/sys/dev/wg/if_wg.c b/sys/dev/wg/if_wg.c index c7649e2b4059..42c426ac1819 100644 --- a/sys/dev/wg/if_wg.c +++ b/sys/dev/wg/if_wg.c @@ -1517,8 +1517,7 @@ wg_encrypt(struct wg_softc *sc, struct wg_packet *pkt) state = WG_PACKET_CRYPTED; out: pkt->p_mbuf = m; - wmb(); - pkt->p_state = state; + atomic_store_rel_int(&pkt->p_state, state); GROUPTASK_ENQUEUE(&peer->p_send); noise_remote_put(remote); } @@ -1590,8 +1589,7 @@ wg_decrypt(struct wg_softc *sc, struct wg_packet *pkt) state = WG_PACKET_CRYPTED; out: pkt->p_mbuf = m; - wmb(); - pkt->p_state = state; + atomic_store_rel_int(&pkt->p_state, state); GROUPTASK_ENQUEUE(&peer->p_recv); noise_remote_put(remote); } @@ -1647,7 +1645,7 @@ wg_deliver_out(struct wg_peer *peer) wg_peer_get_endpoint(peer, &endpoint); while ((pkt = wg_queue_dequeue_serial(&peer->p_encrypt_serial)) != NULL) { - if (pkt->p_state != WG_PACKET_CRYPTED) + if (atomic_load_acq_int(&pkt->p_state) != WG_PACKET_CRYPTED) goto error; m = pkt->p_mbuf; @@ -1689,7 +1687,7 @@ wg_deliver_in(struct wg_peer *peer) struct epoch_tracker et; while ((pkt = wg_queue_dequeue_serial(&peer->p_decrypt_serial)) != NULL) { - if (pkt->p_state != WG_PACKET_CRYPTED) + if (atomic_load_acq_int(&pkt->p_state) != WG_PACKET_CRYPTED) goto error; m = pkt->p_mbuf; From nobody Fri Mar 15 08:22:58 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Twy1G4tY2z5Ct2D; Fri, 15 Mar 2024 08:22: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 4Twy1G3XSwz4lww; Fri, 15 Mar 2024 08:22:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710490978; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=khUh1DnpFYzDByMM74qBLTHLVAjyqZQSlhsRvvbN308=; b=kWsp2HGkroZQe6Mhs03XHZns2NcRkLam08mfLsilAp3Gkh3DrLCQg3W0flmCMW/hb5CHWc xwya0hBJJuVEBdqjZFlaIFRZg/30LZm1LttI7v5CtORp80B/zGpGhbweX9bDJzlbeyWLe8 tUWP9ypWoqO19aJSsingOIkEJZEkZ9qtrok13ROzt9su/mXNQh9qN4V67a2C6Dkmr/Sltg pXeKK2UBuQ7JHBKYHqpQPz5odncf1suDvZC+s++JeYcpKi5BRr2alcRBrqKUr3N/QWF24m zGS2f5EOX3UBYGhxgHC/2rn63qbMGEj1+uldHh/z8G8UjKb4ETwgQy+b28oSQA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710490978; a=rsa-sha256; cv=none; b=lHyS5yUZksKn/YX+Mh7yEU4+BxIZFYMfLr0Lr4+CKCPk/dOacD0maPUrEYL3TyNcWGtqYt Qo9FMNGGW4V+XApmztxKBohWiX4eDZWd/RBxggqgbvmFIJcWvUvo8PQq8YafiDfvb90NMJ 6hAf2btekwQ0w7yD3E6CmqbPJhUA9SNIsSwwKlZZazdj9HiqklAmMXqrHEqDZkejviSJ/f +l2JfPi85QGKQhDy/YlIVW/nd1KCqZAEHpEsLRi9BDOn/kh2/fBbktf9HnY7S/XXpIKFlb vwt31DcXSWCMMnKOs4tXh+PDaEikdK5AbBT6DChqnngwZlfCGzC9+ZjBmVXIUQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710490978; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=khUh1DnpFYzDByMM74qBLTHLVAjyqZQSlhsRvvbN308=; b=gosbilEtv1qcGQ6X6DpilHKrcT/N9teU07fOjXJrNtaoDDZ5+cS9CK2oZUUWE0ZC9oAAgB Cj7GG3FvL0btw+RatX4Q6Ftxxp4Boufp5uCvfC4+zV8DTvIb37QpPb07h+Wc0w6cYC5N3r m38QWWg9AsE3f1wC+B9IEW1ysweXsaQBgPWc0d7Cr530bxgzVa1muUcolit0AXVysArLWU aIA5DAoRwqKdsq9w9BhV4EMpOR9SKL9zeP0zONbAlHlB+PEy9wbJdhN8ryHgGaeA00efdh JIfNR5DsEVSyIpxNt8qhszrFgOdyU6hJ0gx5mzfZl5m1sh3b8In3UmrePE4HdA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Twy1G37w7z13pm; Fri, 15 Mar 2024 08:22: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 42F8Mw0v037873; Fri, 15 Mar 2024 08:22:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42F8Mwie037870; Fri, 15 Mar 2024 08:22:58 GMT (envelope-from git) Date: Fri, 15 Mar 2024 08:22:58 GMT Message-Id: <202403150822.42F8Mwie037870@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Baptiste Daroussin Subject: git: a42d6f76018e - main - nuageinit: add basic support for cloudinit. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a42d6f76018e4ed8324e319ab48aac904bda437c Auto-Submitted: auto-generated The branch main has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=a42d6f76018e4ed8324e319ab48aac904bda437c commit a42d6f76018e4ed8324e319ab48aac904bda437c Author: Baptiste Daroussin AuthorDate: 2022-11-23 19:00:39 +0000 Commit: Baptiste Daroussin CommitDate: 2024-03-15 08:22:16 +0000 nuageinit: add basic support for cloudinit. this is a very early script to support cloudinit, it does not intend to be a full featured cloudinit client, but will support a good enough subset to be viable in most case. It support nocloud and openstack config-2 config drive mode (iso9660 or msdosfs) The following features are currently supported: - adding users (including a default user named 'freebsd' with password 'freebsd' - adding groups - adding ssh keys - static ipv4, static ipv6, dynamic ipv4 With this one is able to use the 'bring your own image feature" out of box. It is expected that the script grows the support of other clouds supporting cloud-init, contributions are welcomed. It is designed to be only run once via the firstboot mecanism. Sponsored by: OVHCloud MFC After: 3 weeks Differential Revision: https://reviews.freebsd.org/D44141 --- libexec/Makefile | 5 + libexec/nuageinit/Makefile | 11 + libexec/nuageinit/nuage.lua | 214 +++++++++++ libexec/nuageinit/nuageinit | 312 ++++++++++++++++ libexec/nuageinit/tests/Makefile | 13 + libexec/nuageinit/tests/addgroup.lua | 15 + libexec/nuageinit/tests/addsshkey.lua | 2 + libexec/nuageinit/tests/adduser.lua | 15 + libexec/nuageinit/tests/dirname.lua | 8 + libexec/nuageinit/tests/err.lua | 4 + libexec/nuageinit/tests/nuage.sh | 52 +++ libexec/nuageinit/tests/nuageinit.sh | 338 ++++++++++++++++++ libexec/nuageinit/tests/sethostname.lua | 4 + libexec/nuageinit/tests/utils.sh | 21 ++ libexec/nuageinit/tests/warn.lua | 4 + libexec/nuageinit/yaml.lua | 586 +++++++++++++++++++++++++++++++ libexec/rc/rc.d/Makefile | 6 + libexec/rc/rc.d/nuageinit | 67 ++++ share/mk/src.opts.mk | 1 + tools/build/mk/OptionalObsoleteFiles.inc | 21 ++ tools/build/options/WITHOUT_NUAGEINIT | 1 + 21 files changed, 1700 insertions(+) diff --git a/libexec/Makefile b/libexec/Makefile index ee354fa60e79..8287690eeb3c 100644 --- a/libexec/Makefile +++ b/libexec/Makefile @@ -27,6 +27,7 @@ SUBDIR= ${_atf} \ ${_rshd} \ ${_rtld-elf} \ save-entropy \ + ${_nuageinit} \ ${_smrsh} \ ${_tests} \ ${_tftp-proxy} \ @@ -119,6 +120,10 @@ _atf= atf _tests= tests .endif +.if ${MK_NUAGEINIT} != "no" +_nuageinit= nuageinit +.endif + .include .include diff --git a/libexec/nuageinit/Makefile b/libexec/nuageinit/Makefile new file mode 100644 index 000000000000..64c5ec316f3d --- /dev/null +++ b/libexec/nuageinit/Makefile @@ -0,0 +1,11 @@ +PACKAGE= nuageinit +SCRIPTS= nuageinit +FILES= nuage.lua yaml.lua +FILESDIR= ${SHAREDIR}/flua + +.include + +HAS_TESTS= +SUBDIR.${MK_TESTS}+= tests + +.include diff --git a/libexec/nuageinit/nuage.lua b/libexec/nuageinit/nuage.lua new file mode 100644 index 000000000000..55486ae2b122 --- /dev/null +++ b/libexec/nuageinit/nuage.lua @@ -0,0 +1,214 @@ +-- SPDX-License-Identifier: BSD-2-Clause +-- +-- Copyright(c) 2022 Baptiste Daroussin + +local pu = require("posix.unistd") + +local function warnmsg(str) + io.stderr:write(str.."\n") +end + +local function errmsg(str) + io.stderr:write(str.."\n") + os.exit(1) +end + +local function dirname(oldpath) + if not oldpath then + return nil + end + local path = oldpath:gsub("[^/]+/*$", "") + if path == "" then + return nil + end + return path +end + +local function mkdir_p(path) + if lfs.attributes(path, "mode") ~= nil then + return true + end + local r,err = mkdir_p(dirname(path)) + if not r then + return nil,err.." (creating "..path..")" + end + return lfs.mkdir(path) +end + +local function sethostname(hostname) + if hostname == nil then return end + local root = os.getenv("NUAGE_FAKE_ROOTDIR") + if not root then + root = "" + end + local hostnamepath = root .. "/etc/rc.conf.d/hostname" + + mkdir_p(dirname(hostnamepath)) + local f,err = io.open(hostnamepath, "w") + if not f then + warnmsg("Impossible to open "..hostnamepath .. ":" ..err) + return + end + f:write("hostname=\""..hostname.."\"\n") + f:close() +end + +local function splitlist(list) + local ret = {} + if type(list) == "string" then + for str in list:gmatch("([^, ]+)") do + ret[#ret + 1] = str + end + elseif type(list) == "table" then + ret = list + else + warnmsg("Invalid type ".. type(list) ..", expecting table or string") + end + return ret +end + +local function adduser(pwd) + if (type(pwd) ~= "table") then + warnmsg("Argument should be a table") + return nil + end + local f = io.popen("getent passwd "..pwd.name) + local pwdstr = f:read("*a") + f:close() + if pwdstr:len() ~= 0 then + return pwdstr:match("%a+:.+:%d+:%d+:.*:(.*):.*") + end + if not pwd.gecos then + pwd.gecos = pwd.name .. " User" + end + if not pwd.home then + pwd.home = "/home/" .. pwd.name + end + local extraargs="" + if pwd.groups then + local list = splitlist(pwd.groups) + extraargs = " -G ".. table.concat(list, ',') + end + -- pw will automatically create a group named after the username + -- do not add a -g option in this case + if pwd.primary_group and pwd.primary_group ~= pwd.name then + extraargs = extraargs .. " -g " .. pwd.primary_group + end + if not pwd.no_create_home then + extraargs = extraargs .. " -m " + end + if not pwd.shell then + pwd.shell = "/bin/sh" + end + local precmd = "" + local postcmd = "" + if pwd.passwd then + precmd = "echo "..pwd.passwd .. "| " + postcmd = " -H 0 " + elseif pwd.plain_text_passwd then + precmd = "echo "..pwd.plain_text_passwd .. "| " + postcmd = " -H 0 " + end + local root = os.getenv("NUAGE_FAKE_ROOTDIR") + local cmd = precmd .. "pw " + if root then + cmd = cmd .. "-R " .. root .. " " + end + cmd = cmd .. "useradd -n ".. pwd.name .. " -M 0755 -w none " + cmd = cmd .. extraargs .. " -c '".. pwd.gecos + cmd = cmd .. "' -d '" .. pwd.home .. "' -s "..pwd.shell .. postcmd + + local r = os.execute(cmd) + if not r then + warnmsg("nuageinit: fail to add user "..pwd.name); + warnmsg(cmd) + return nil + end + if pwd.locked then + cmd = "pw " + if root then + cmd = cmd .. "-R " .. root .. " " + end + cmd = cmd .. "lock " .. pwd.name + os.execute(cmd) + end + return pwd.home +end + +local function addgroup(grp) + if (type(grp) ~= "table") then + warnmsg("Argument should be a table") + return false + end + local f = io.popen("getent group "..grp.name) + local grpstr = f:read("*a") + f:close() + if grpstr:len() ~= 0 then + return true + end + local extraargs = "" + if grp.members then + local list = splitlist(grp.members) + extraargs = " -M " .. table.concat(list, ',') + end + local root = os.getenv("NUAGE_FAKE_ROOTDIR") + local cmd = "pw " + if root then + cmd = cmd .. "-R " .. root .. " " + end + cmd = cmd .. "groupadd -n ".. grp.name .. extraargs + local r = os.execute(cmd) + if not r then + warnmsg("nuageinit: fail to add group ".. grp.name); + warnmsg(cmd) + return false + end + return true +end + +local function addsshkey(homedir, key) + local chownak = false + local chowndotssh = false + local ak_path = homedir .. "/.ssh/authorized_keys" + local dotssh_path = homedir .. "/.ssh" + local dirattrs = lfs.attributes(ak_path) + if dirattrs == nil then + chownak = true + dirattrs = lfs.attributes(dotssh_path) + if dirattrs == nil then + if not lfs.mkdir(dotssh_path) then + warnmsg("nuageinit: impossible to create ".. dotssh_path) + return + end + chowndotssh = true + dirattrs = lfs.attributes(homedir) + end + end + + local f = io.open(ak_path, "a") + if not f then + warnmsg("nuageinit: impossible to open "..ak_path) + return + end + f:write(key .. "\n") + f:close() + if chownak then + pu.chown(ak_path, dirattrs.uid, dirattrs.gid) + end + if chowndotssh then + pu.chown(dotssh_path, dirattrs.uid, dirattrs.gid) + end +end + +local n = { + warn = warnmsg, + err = errmsg, + sethostname = sethostname, + adduser = adduser, + addgroup = addgroup, + addsshkey = addsshkey, + dirname = dirname, + mkdir_p = mkdir_p, +} + +return n diff --git a/libexec/nuageinit/nuageinit b/libexec/nuageinit/nuageinit new file mode 100755 index 000000000000..08224061d1b1 --- /dev/null +++ b/libexec/nuageinit/nuageinit @@ -0,0 +1,312 @@ +#!/usr/libexec/flua + +-- SPDX-License-Identifier: BSD-2-Clause-FreeBSD +-- +-- Copyright(c) 2022 Baptiste Daroussin + +local nuage = require("nuage") +local yaml = require("yaml") + +if #arg ~= 2 then + nuage.err("Usage ".. arg[0] .." [config-2|nocloud]") +end +local path = arg[1] +local citype = arg[2] +local ucl = require("ucl") + +local default_user = { + name = "freebsd", + homedir = "/home/freebsd", + groups = "wheel", + gecos = "FreeBSD User", + shell = "/bin/sh", + plain_text_passwd = "freebsd" +} + +local root = os.getenv("NUAGE_FAKE_ROOTDIR") +if not root then + root = "" +end + +local function open_config(name) + nuage.mkdir_p(root .. "/etc/rc.conf.d") + local f,err = io.open(root .. "/etc/rc.conf.d/" .. name, "w") + if not f then + nuage.err("nuageinit: unable to open "..name.." config: " .. err) + end + return f +end + +local function get_ifaces() + local parser = ucl.parser() + -- grab ifaces + local ns = io.popen('netstat -i --libxo json') + local netres = ns:read("*a") + ns:close() + local res,err = parser:parse_string(netres) + if not res then + nuage.warn("Error parsing netstat -i --libxo json outout: " .. err) + return nil + end + local ifaces = parser:get_object() + local myifaces = {} + for _,iface in pairs(ifaces["statistics"]["interface"]) do + if iface["network"]:match("") then + local s = iface["address"] + myifaces[s:lower()] = iface["name"] + end + end + return myifaces +end + +local function config2_network(p) + local parser = ucl.parser() + local f = io.open(p .. "/network_data.json") + if not f then + -- silently return no network configuration is provided + return + end + f:close() + local res,err = parser:parse_file(p .. "/network_data.json") + if not res then + nuage.warn("nuageinit: error parsing network_data.json: " .. err) + return + end + local obj = parser:get_object() + + local ifaces = get_ifaces() + if not ifaces then + nuage.warn("nuageinit: no network interfaces found") + return + end + local mylinks = {} + for _,v in pairs(obj["links"]) do + local s = v["ethernet_mac_address"]:lower() + mylinks[v["id"]] = ifaces[s] + end + + nuage.mkdir_p(root .. "/etc/rc.conf.d") + local network = open_config("network") + local routing = open_config("routing") + local ipv6 = {} + local ipv6_routes = {} + local ipv4 = {} + for _,v in pairs(obj["networks"]) do + local interface = mylinks[v["link"]] + if v["type"] == "ipv4_dhcp" then + network:write("ifconfig_"..interface.."=\"DHCP\"\n") + end + if v["type"] == "ipv4" then + network:write("ifconfig_"..interface.."=\"inet "..v["ip_address"].." netmask " .. v["netmask"] .. "\"\n") + if v["gateway"] then + routing:write("defaultrouter=\""..v["gateway"].."\"\n") + end + if v["routes"] then + for i,r in ipairs(v["routes"]) do + local rname = "cloudinit" .. i .. "_" .. interface + if v["gateway"] and v["gateway"] == r["gateway"] then goto next end + if r["network"] == "0.0.0.0" then + routing:write("defaultrouter=\""..r["gateway"].."\"\n") + goto next + end + routing:write("route_".. rname .. "=\"-net ".. r["network"] .. " ") + routing:write(r["gateway"] .. " " .. r["netmask"] .. "\"\n") + ipv4[#ipv4 + 1] = rname + ::next:: + end + end + end + if v["type"] == "ipv6" then + ipv6[#ipv6+1] = interface + ipv6_routes[#ipv6_routes+1] = interface + network:write("ifconfig_"..interface.."_ipv6=\"inet6 "..v["ip_address"].."\"\n") + if v["gateway"] then + routing:write("ipv6_defaultrouter=\""..v["gateway"].."\"\n") + routing:write("ipv6_route_"..interface.."=\""..v["gateway"]) + routing:write(" -prefixlen 128 -interface "..interface.."\"\n") + end + -- TODO compute the prefixlen for the routes + --if v["routes"] then + -- for i,r in ipairs(v["routes"]) do + -- local rname = "cloudinit" .. i .. "_" .. mylinks[v["link"]] + -- -- skip all the routes which are already covered by the default gateway, some provider + -- -- still list plenty of them. + -- if v["gateway"] == r["gateway"] then goto next end + -- routing:write("ipv6_route_" .. rname .. "\"\n") + -- ipv6_routes[#ipv6_routes+1] = rname + -- ::next:: + -- end + --end + end + end + if #ipv4 > 0 then + routing:write("static_routes=\"") + routing:write(table.concat(ipv4, " ") .. "\"\n") + end + if #ipv6 > 0 then + network:write("ipv6_network_interfaces=\"") + network:write(table.concat(ipv6, " ") .. "\"\n") + network:write("ipv6_default_interface=\""..ipv6[1].."\"\n") + end + if #ipv6_routes > 0 then + routing:write("ipv6_static_routes=\"") + routing:write(table.concat(ipv6, " ") .. "\"\n") + end + network:close() + routing:close() +end + +if citype == "config-2" then + local parser = ucl.parser() + local res,err = parser:parse_file(path..'/meta_data.json') + + if not res then + nuage.err("nuageinit: error parsing config-2: meta_data.json: " .. err) + end + local obj = parser:get_object() + local sshkeys = obj["public_keys"] + if sshkeys then + local homedir = nuage.adduser(default_user) + for _,v in pairs(sshkeys) do + nuage.addsshkey(root .. homedir, v) + end + end + nuage.sethostname(obj["hostname"]) + + -- network + config2_network(path) +elseif citype == "nocloud" then + local f,err = io.open(path.."/meta-data") + if err then + nuage.err("nuageinit: error parsing nocloud meta-data: ".. err) + end + local obj = yaml.eval(f:read("*a")) + f:close() + if not obj then + nuage.err("nuageinit: error parsing nocloud meta-data") + end + local hostname = obj['local-hostname'] + if not hostname then + hostname = obj['hostname'] + end + if hostname then + nuage.sethostname(hostname) + end +else + nuage.err("Unknown cloud init type: ".. citype) +end + +-- deal with user-data +local f = io.open(path..'/user-data', "r") +if not f then + os.exit(0) +end +local line = f:read('*l') +f:close() +if line == "#cloud-config" then + f = io.open(path.."/user-data") + local obj = yaml.eval(f:read("*a")) + f:close() + if not obj then + nuage.err("nuageinit: error parsing cloud-config file: user-data") + end + if obj.groups then + for n,g in pairs(obj.groups) do + if (type(g) == "string") then + local r = nuage.addgroup({name = g}) + if not r then + nuage.warn("nuageinit: failed to add group: ".. g) + end + elseif type(g) == "table" then + for k,v in pairs(g) do + nuage.addgroup({name = k, members = v}) + end + else + nuage.warn("nuageinit: invalid type : "..type(g).." for users entry number "..n); + end + end + end + if obj.users then + for n,u in pairs(obj.users) do + if type(u) == "string" then + if u == "default" then + nuage.adduser(default_user) + else + nuage.adduser({name = u}) + end + elseif type(u) == "table" then + -- ignore users without a username + if u.name == nil then + goto unext + end + local homedir = nuage.adduser(u) + if u.ssh_authorized_keys then + for _,v in ipairs(u.ssh_authorized_keys) do + nuage.addsshkey(homedir, v) + end + end + else + nuage.warn("nuageinit: invalid type : "..type(u).." for users entry number "..n); + end + ::unext:: + end + else + -- default user if none are defined + nuage.adduser(default_user) + end + if obj.ssh_authorized_keys then + local homedir = nuage.adduser(default_user) + for _,k in ipairs(obj.ssh_authorized_keys) do + nuage.addsshkey(homedir, k) + end + end + if obj.network then + local ifaces = get_ifaces() + nuage.mkdir_p(root .. "/etc/rc.conf.d") + local network = open_config("network") + local routing = open_config("routing") + local ipv6={} + for _,v in pairs(obj.network.ethernets) do + if not v.match then goto next end + if not v.match.macaddress then goto next end + if not ifaces[v.match.macaddress] then + nuage.warn("nuageinit: not interface matching: "..v.match.macaddress) + goto next + end + local interface = ifaces[v.match.macaddress] + if v.dhcp4 then + network:write("ifconfig_"..interface.."=\"DHCP\"\n") + elseif v.addresses then + for _,a in pairs(v.addresses) do + if a:match("^(%d+)%.(%d+)%.(%d+)%.(%d+)") then + network:write("ifconfig_"..interface.."=\"inet "..a.."\"\n") + else + network:write("ifconfig_"..interface.."_ipv6=\"inet6 "..a.."\"\n") + ipv6[#ipv6 +1] = interface + end + end + end + if v.gateway4 then + routing:write("defaultrouter=\""..v.gateway4.."\"\n") + end + if v.gateway6 then + routing:write("ipv6_defaultrouter=\""..v.gateway6.."\"\n") + routing:write("ipv6_route_"..interface.."=\""..v.gateway6) + routing:write(" -prefixlen 128 -interface "..interface.."\"\n") + end + ::next:: + end + if #ipv6 > 0 then + network:write("ipv6_network_interfaces=\"") + network:write(table.concat(ipv6, " ") .. "\"\n") + network:write("ipv6_default_interface=\""..ipv6[1].."\"\n") + end + network:close() + routing:close() + end +else + local res,err = os.execute(path..'/user-data') + if not res then + nuage.err("nuageinit: error executing user-data script: ".. err) + end +end diff --git a/libexec/nuageinit/tests/Makefile b/libexec/nuageinit/tests/Makefile new file mode 100644 index 000000000000..d5b3bd9dcc82 --- /dev/null +++ b/libexec/nuageinit/tests/Makefile @@ -0,0 +1,13 @@ +PACKAGE= tests + +ATF_TESTS_SH= nuage utils nuageinit + +${PACKAGE}FILES+= warn.lua +${PACKAGE}FILES+= err.lua +${PACKAGE}FILES+= dirname.lua +${PACKAGE}FILES+= sethostname.lua +${PACKAGE}FILES+= addsshkey.lua +${PACKAGE}FILES+= adduser.lua +${PACKAGE}FILES+= addgroup.lua + +.include diff --git a/libexec/nuageinit/tests/addgroup.lua b/libexec/nuageinit/tests/addgroup.lua new file mode 100644 index 000000000000..60a0d8346793 --- /dev/null +++ b/libexec/nuageinit/tests/addgroup.lua @@ -0,0 +1,15 @@ +#!/usr/libexec/flua + +local n = require("nuage") +if n.addgroup() then + n.err("addgroup should not accept empty value") +end +if n.addgroup("plop") then + n.err("addgroup should not accept empty value") +end +local gr = {} +gr.name = "impossible_groupname" +local res = n.addgroup(gr) +if not res then + n.err("valid addgroup should return a path") +end diff --git a/libexec/nuageinit/tests/addsshkey.lua b/libexec/nuageinit/tests/addsshkey.lua new file mode 100644 index 000000000000..3aa5f7619ec2 --- /dev/null +++ b/libexec/nuageinit/tests/addsshkey.lua @@ -0,0 +1,2 @@ +local n = require("nuage") +n.addsshkey(".", "mykey") diff --git a/libexec/nuageinit/tests/adduser.lua b/libexec/nuageinit/tests/adduser.lua new file mode 100644 index 000000000000..9366d2abd0f4 --- /dev/null +++ b/libexec/nuageinit/tests/adduser.lua @@ -0,0 +1,15 @@ +#!/usr/libexec/flua + +local n = require("nuage") +if n.adduser() then + n.err("adduser should not accept empty value") +end +if n.adduser("plop") then + n.err("adduser should not accept empty value") +end +local pw = {} +pw.name = "impossible_username" +local res = n.adduser(pw) +if not res then + n.err("valid adduser should return a path") +end diff --git a/libexec/nuageinit/tests/dirname.lua b/libexec/nuageinit/tests/dirname.lua new file mode 100644 index 000000000000..d1268e48575c --- /dev/null +++ b/libexec/nuageinit/tests/dirname.lua @@ -0,0 +1,8 @@ +local n = require("nuage") +print(n.dirname("/my/path/path1")) +if n.dirname("path") then + nuage.err("Expecting nil for n.dirname(\"path\")") +end +if n.dirname() then + nuage.err("Expecting nil for n.dirname") +end diff --git a/libexec/nuageinit/tests/err.lua b/libexec/nuageinit/tests/err.lua new file mode 100644 index 000000000000..c62fa1098f09 --- /dev/null +++ b/libexec/nuageinit/tests/err.lua @@ -0,0 +1,4 @@ +#!/usr/libexec/flua + +local n = require("nuage") +n.err("plop") diff --git a/libexec/nuageinit/tests/nuage.sh b/libexec/nuageinit/tests/nuage.sh new file mode 100644 index 000000000000..bbf306eae51f --- /dev/null +++ b/libexec/nuageinit/tests/nuage.sh @@ -0,0 +1,52 @@ +atf_test_case sethostname +atf_test_case addsshkey +atf_test_case adduser +atf_test_case addgroup + +sethostname_body() { + export NUAGE_FAKE_ROOTDIR="$(pwd)" + atf_check /usr/libexec/flua $(atf_get_srcdir)/sethostname.lua + if [ ! -f etc/rc.conf.d/hostname ]; then + atf_fail "hostname not written" + fi + atf_check -o inline:"hostname=\"myhostname\"\n" cat etc/rc.conf.d/hostname +} + +addsshkey_body() { + atf_check /usr/libexec/flua $(atf_get_srcdir)/addsshkey.lua + if [ ! -f .ssh/authorized_keys ]; then + atf_fail "ssh key not added" + fi + atf_check -o inline:"mykey\n" cat .ssh/authorized_keys + atf_check /usr/libexec/flua $(atf_get_srcdir)/addsshkey.lua + atf_check -o inline:"mykey\nmykey\n" cat .ssh/authorized_keys +} + +adduser_body() { + export NUAGE_FAKE_ROOTDIR="$(pwd)" + if [ $(id -u) -ne 0 ]; then + atf_skip "root required" + fi + mkdir etc + printf "root:*:0:0::0:0:Charlie &:/root:/bin/csh\n" > etc/master.passwd + pwd_mkdb -d etc etc/master.passwd + printf "wheel:*:0:root\n" > etc/group + atf_check -e inline:"Argument should be a table\nArgument should be a table\n" /usr/libexec/flua $(atf_get_srcdir)/adduser.lua + test -d home/impossible_username || atf_fail "home not created" + atf_check -o inline:"impossible_username::1001:1001::0:0:impossible_username User:/home/impossible_username:/bin/sh\n" grep impossible_username etc/master.passwd +} + +addgroup_body() { + export NUAGE_FAKE_ROOTDIR="$(pwd)" + mkdir etc + printf "wheel:*:0:root\n" > etc/group + atf_check -e inline:"Argument should be a table\nArgument should be a table\n" /usr/libexec/flua $(atf_get_srcdir)/addgroup.lua + atf_check -o inline:"impossible_groupname:*:1001:\n" grep impossible_groupname etc/group +} + +atf_init_test_cases() { + atf_add_test_case sethostname + atf_add_test_case addsshkey + atf_add_test_case adduser + atf_add_test_case addgroup +} diff --git a/libexec/nuageinit/tests/nuageinit.sh b/libexec/nuageinit/tests/nuageinit.sh new file mode 100644 index 000000000000..926233bcf66d --- /dev/null +++ b/libexec/nuageinit/tests/nuageinit.sh @@ -0,0 +1,338 @@ +atf_test_case args +atf_test_case nocloud +atf_test_case nocloud_userdata_script +atf_test_case nocloud_userdata_cloudconfig +atf_test_case nocloud_userdata_cloudconfig_users +atf_test_case nocloud_network +atf_test_case config2 +atf_test_case config2_pubkeys +atf_test_case config2_network +atf_test_case config2_network_static_v4 + + +args_body() +{ + atf_check -s exit:1 -e inline:"Usage /usr/libexec/nuageinit [config-2|nocloud]\n" /usr/libexec/nuageinit + atf_check -s exit:1 -e inline:"Usage /usr/libexec/nuageinit [config-2|nocloud]\n" /usr/libexec/nuageinit bla + atf_check -s exit:1 -e inline:"Usage /usr/libexec/nuageinit [config-2|nocloud]\n" /usr/libexec/nuageinit bla meh plop + atf_check -s exit:1 -e inline:"Unknown cloud init type: meh\n" /usr/libexec/nuageinit bla meh +} + +nocloud_body() +{ + here=$(pwd) + mkdir -p media/nuageinit + atf_check -s exit:1 -e match:"nuageinit: error parsing nocloud.*" /usr/libexec/nuageinit ${here}/media/nuageinit/ nocloud + export NUAGE_FAKE_ROOTDIR=$(pwd) + printf "instance-id: iid-local01\nlocal-hostname: cloudimg\n" > ${here}/media/nuageinit/meta-data + atf_check -s exit:0 /usr/libexec/nuageinit ${here}/media/nuageinit nocloud + atf_check -o inline:"hostname=\"cloudimg\"\n" cat etc/rc.conf.d/hostname + cat > media/nuageinit/meta-data << EOF +instance-id: iid-local01 +hostname: myhost +EOF + atf_check -s exit:0 /usr/libexec/nuageinit ${here}/media/nuageinit nocloud + atf_check -o inline:"hostname=\"myhost\"\n" cat etc/rc.conf.d/hostname +} + +nocloud_userdata_script_body() +{ + here=$(pwd) + mkdir -p media/nuageinit + printf "instance-id: iid-local01\n" > ${here}/media/nuageinit/meta-data + printf "#!/bin/sh\necho "yeah"\n" > ${here}/media/nuageinit/user-data + chmod 755 ${here}/media/nuageinit/user-data + atf_check -s exit:0 -o inline:"yeah\n" /usr/libexec/nuageinit ${here}/media/nuageinit nocloud +} + +nocloud_userdata_cloudconfig_users_body() +{ + here=$(pwd) + export NUAGE_FAKE_ROOTDIR=$(pwd) + if [ $(id -u) -ne 0 ]; then + atf_skip "root required" + fi + mkdir -p media/nuageinit + printf "instance-id: iid-local01\n" > ${here}/media/nuageinit/meta-data + mkdir -p etc + cat > etc/master.passwd < etc/group < media/nuageinit/user-data < expectedgroup << EOF +wheel:*:0:root,freebsd +users:*:1:foobar +admingroup:*:1001:root,sys +cloud-users:*:1002: +freebsd:*:1003: +foobar:*:1004: +EOF + cat > expectedpasswd << EOF +root:*:0:0::0:0:Charlie &:/root:/bin/csh +sys:*:1:0::0:0:Sys:/home/sys:/bin/csh +freebsd:freebsd:1001:1003::0:0:FreeBSD User:/home/freebsd:/bin/sh +foobar:H/1LT4f9/N3wpgNunhsIqtMj62OKiS3nyNwuizouQc3u7MbYCarYeAHWYPYb2FT.lbioDm2RrkJPb9BZMN1O/:1002:1004::0:0:Foo B. Bar:/home/foobar:/bin/sh +EOF + atf_check -o file:expectedpasswd cat ${here}/etc/master.passwd + atf_check -o file:expectedgroup cat ${here}/etc/group +} + +nocloud_network_body() +{ + here=$(pwd) + mkdir -p media/nuageinit + mkdir -p etc + cat > etc/master.passwd < etc/group < ${here}/media/nuageinit/meta-data + cat > media/nuageinit/user-data < network < routing < media/nuageinit/meta_data.json + atf_check /usr/libexec/nuageinit ${here}/media/nuageinit config-2 + cat > media/nuageinit/meta_data.json << EOF +{ + "hostname": "cloudimg", +} +EOF + export NUAGE_FAKE_ROOTDIR=$(pwd) + atf_check /usr/libexec/nuageinit ${here}/media/nuageinit config-2 + atf_check -o inline:"hostname=\"cloudimg\"\n" cat etc/rc.conf.d/hostname +} + +config2_pubkeys_body() +{ + here=$(pwd) + if [ $(id -u) -ne 0 ]; then + atf_skip "root required" + fi + mkdir -p media/nuageinit + cat > media/nuageinit/meta_data.json << EOF +{ + "public_keys": { + "mykey": "ssh-rsa AAAAB3NzaC1y...== Generated by Nova" + }, +} +EOF + mkdir -p etc + cat > etc/master.passwd < To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gordon Bergling Subject: git: 406f9fd0a7d8 - stable/14 - md5.1: Fix the GNU mode example when using a digest file List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: gbe X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 406f9fd0a7d8051e2d461b4b5673a9116a993a25 Auto-Submitted: auto-generated The branch stable/14 has been updated by gbe: URL: https://cgit.FreeBSD.org/src/commit/?id=406f9fd0a7d8051e2d461b4b5673a9116a993a25 commit 406f9fd0a7d8051e2d461b4b5673a9116a993a25 Author: Gordon Bergling AuthorDate: 2024-03-12 14:44:48 +0000 Commit: Gordon Bergling CommitDate: 2024-03-15 09:12:48 +0000 md5.1: Fix the GNU mode example when using a digest file The last example in the manpage md5(1) wants to demonstrate GNU mode (md5sum), but uses BSD mode (md5) instead. In GNU mode, the -c option does not compare against a hash string passed as parameter. Instead, it expects a digest file, as created under the name digest for /boot/loader.conf in the example above. PR: 276560 Reviewed by: mhorne, des Differential Revision: https://reviews.freebsd.org/D44098 (cherry picked from commit f3343fe4a64fe6a25b4e09ab9061a45f82e5abc1) --- sbin/md5/md5.1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sbin/md5/md5.1 b/sbin/md5/md5.1 index 0a8dc46f3b1f..b530292c8269 100644 --- a/sbin/md5/md5.1 +++ b/sbin/md5/md5.1 @@ -1,4 +1,4 @@ -.Dd February 13, 2024 +.Dd March 12, 2024 .Dt MD5 1 .Os .Sh NAME @@ -367,7 +367,7 @@ for .Pa /boot/loader.conf in the example above. .Bd -literal -offset indent -$ md5 -c digest /boot/loader.conf +$ md5sum -c digest /boot/loader.conf: OK .Ed .Pp From nobody Fri Mar 15 09:43:25 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Twzp60PsWz5D2ms; Fri, 15 Mar 2024 09:43: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 4Twzp56lMsz3x2s; Fri, 15 Mar 2024 09:43:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710495805; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=r53nvJCc3WWapmoGphdHJaH3rQr/MrtpIU/WV6AZPgA=; b=SneNa0D0WYfH01ZlJQgTTVEFy08Xc0BNASFVOP2AdtwNjXIqivsJfjC0SXJiBS3BX5tMrz QdKt7GtTB/gcq5Je2MYvWnXzKM2u33N+M384afEMztBytn/R01wLSFRYHFfbc6FayD9dku 7grhFd3IB2gebE97l6OFLRrRG4AcOp0Ih1F4KKLP7kWOA6vD8NP2Cg7zmwByocML9zBq2z wLP7ivu3cCj4rZc1TZW/HuS3rsSMZkZjNuICNxbx13x0TI/c7PX72+4mQRjLCccniNXsC+ ffE0ZPhyrsN9TkmBQ7B1qsM/maW/aJ5jCHdtAfUW0P49cEzfGyb6lPue3GAYmw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710495805; a=rsa-sha256; cv=none; b=JT/ZaFj2Gjv0WVWFLTQ2stkAYjtoRaJ80ZhWxHQqV5uD1cWl9T/zN3W6WyRlbpwqD74ieN XpvyMSkuL2Dm+vXN1taBrp75WoQX74PpP49t8Tcl5OrdQrwT/CRqhlci8D/8GYokAeOmHM /fN4kmh2zZTXJzWB4jSNF+ZJ7QJtl+gdQORlPm8DbiAGnyDBjBIoIarzXDXxHHt5DaCD3q 8WEYXEtietflhStZLK5YMvOj41DJty7ex9OIpzK3c98Wmtqi11xZssaVZPpx42L81Lkz8N CROHcAgo/X2d+oICelSu88/E+3nBwiGNZGEGzH/VeAeeCzkBTRScQtQ/z8YqaQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710495805; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=r53nvJCc3WWapmoGphdHJaH3rQr/MrtpIU/WV6AZPgA=; b=FCnDGsPIYWtYK8jwfpq9+oAGUU9oGcBg0B136MTF0uoO4DLYzfl4IaWFOjqGlWkh89Lhmy k+VLX8bfv9idlUanA9A/HWO+fvvQDOEP2NBXlwbJ6HOZrRctFGnffJDEYf7ENT1MBXn9Af vK200yV7ypSynooD3e7tSQQ304i4CAyvyquQ1rWMfRmMY/JjNocFHeckf5S8VfWImpAuvK pb9QKlnX2K0aeEwvII8xraLvQfvRUelRm5s5xf9TCD/oHwvXuVd1t8UIXKX9bcPh9oECwu jwQnHi9EHTQYgiP041PypZyaPIFpPPXHlspiOp83QgbcabW7xxTdTo/bvMyFnA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Twzp56Lgdz15cl; Fri, 15 Mar 2024 09:43: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 42F9hPbG072766; Fri, 15 Mar 2024 09:43:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42F9hPp9072763; Fri, 15 Mar 2024 09:43:25 GMT (envelope-from git) Date: Fri, 15 Mar 2024 09:43:25 GMT Message-Id: <202403150943.42F9hPp9072763@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Baptiste Daroussin Subject: git: c051f22bce42 - main - mtree: add the directory for the nuageinit tests List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c051f22bce42d920abba61bd7cf4ef5b6a270ffa Auto-Submitted: auto-generated The branch main has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=c051f22bce42d920abba61bd7cf4ef5b6a270ffa commit c051f22bce42d920abba61bd7cf4ef5b6a270ffa Author: Baptiste Daroussin AuthorDate: 2024-03-15 09:42:53 +0000 Commit: Baptiste Daroussin CommitDate: 2024-03-15 09:42:53 +0000 mtree: add the directory for the nuageinit tests --- etc/mtree/BSD.tests.dist | 2 ++ 1 file changed, 2 insertions(+) diff --git a/etc/mtree/BSD.tests.dist b/etc/mtree/BSD.tests.dist index 64b5f88ff2cc..978b8910a2f4 100644 --- a/etc/mtree/BSD.tests.dist +++ b/etc/mtree/BSD.tests.dist @@ -459,6 +459,8 @@ atf-sh .. .. + nuageinit + .. rc .. rtld-elf From nobody Fri Mar 15 10:13:42 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tx0T24pslz5D5TL; Fri, 15 Mar 2024 10:13: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 4Tx0T24NqFz41Yx; Fri, 15 Mar 2024 10:13:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710497622; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wbNzJyKDzIqPUVHaXMZSvpVxr/KzIrAcPtPEYqCq0x0=; b=Mja3RkEr8Bt2t6RPMz+6B59+h+NxRd9o1pNcTfk6Ub9mHRXuzy9LfVo48G/EmSgSm+Prkm Z3LJ0uEI6/xOlJ4SJAdH7bFO/IZqOzbZjlQ/EeA8VqAnQtoTEgsWINOy6gWMuXyoilABf0 qAXBwCNnl3WCzhseMiwR24R/RGAM/9uBn7RmEzXQn9buv6ZbNU1O6KuHd6KC2l88XlSLE3 7ptfO3ZImN00YcFp7/c4WLckNOsnnEtYFCyEA6rB783nb6iRUrTR9s+CARpbMj5kRYlYXo b+znLAEHNvzy1gb4orv1uY7qbkAL9WY6fJAIy+M/ZxaRZ6+dGXb/1Qr2eD5Rug== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710497622; a=rsa-sha256; cv=none; b=oM96q1M0dO8hxaMz8568TZ9easkPqXbC546vqpzcDniVAzMEVjLbBV3XnbE5+bvLUB/SqT 1NCUuPeQpGGHxu2XtJUKxkSOoOiaCrIG6HGRHm/ZehyGAVJRRfItF98B9z/qSS1bZRD5sz llfCqHzoVJcSBfUhYj2wI9lJzWGGHWAdMY2/a4TYL9GRd2y3+bNpng+MxbX1MKjonBh1nY eqMJdOeEsArKxcUdtRKB2CD0NBtbIQQLIiLL0hK4llJKwooBPbPQ9nn6MJzubAyJmXROob UztOigmxuBgIZlg5o+jaMk//6bDFNBPXYEMeuPBRKXRH77zakDxT4bPfFzPhFw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710497622; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=wbNzJyKDzIqPUVHaXMZSvpVxr/KzIrAcPtPEYqCq0x0=; b=f25yxWz3Wc9ejX0z72WxPe9yjEZO5xrLGIOcw0x13KRRVsIy5fpIL8w5Ah0EtWk7EqHLYH Hkv7hqQ+4ByZAs4pWNANU4n7stLY+gdoCLlnRd+owGZsTfTHYyswM3AOQiu90VtLctLmF4 YTLnKAQLujcIEZaDZQBSmKLNcQOTlv4V4ibUv71YjSjg/+V2xzVtPVAY552vsn8p7e8gUS 2wWBdo1ds1rH9KrudKBwlnFqeD++zTAvCdimr7t1b4jbbixcj+kX0kY3K3hERqm1Zb2MTU mjl7Q+r680iPKQbPHgIq6NeubL0jFw7j94niYX+Hvmhy5klJ4rcXdGs3S0aIrw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tx0T2416Lz15lj; Fri, 15 Mar 2024 10:13: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 42FADgCS024293; Fri, 15 Mar 2024 10:13:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FADgbD024290; Fri, 15 Mar 2024 10:13:42 GMT (envelope-from git) Date: Fri, 15 Mar 2024 10:13:42 GMT Message-Id: <202403151013.42FADgbD024290@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: e1341e5318a8 - stable/13 - stable/13 sbin/mount_nullfs: Resolve conlict in man page List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: e1341e5318a8f6b2a2712fae799cb5c59194ea03 Auto-Submitted: auto-generated The branch stable/13 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=e1341e5318a8f6b2a2712fae799cb5c59194ea03 commit e1341e5318a8f6b2a2712fae799cb5c59194ea03 Author: Konstantin Belousov AuthorDate: 2024-03-15 10:10:46 +0000 Commit: Konstantin Belousov CommitDate: 2024-03-15 10:12:51 +0000 stable/13 sbin/mount_nullfs: Resolve conlict in man page Reported by: Seigo Tanimura Pointy hat to: kib --- sbin/mount_nullfs/mount_nullfs.8 | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/sbin/mount_nullfs/mount_nullfs.8 b/sbin/mount_nullfs/mount_nullfs.8 index 759f7546c49a..ed35ae310e63 100644 --- a/sbin/mount_nullfs/mount_nullfs.8 +++ b/sbin/mount_nullfs/mount_nullfs.8 @@ -90,17 +90,6 @@ flag followed by a comma separated string of options. See the .Xr mount 8 man page for possible options and their meanings. -<<<<<<< HEAD -||||||| parent of 4a2a69c4472c (mount_nullfs(8): document -o cache and vfs.nullfs.cache_vnodes) -Additionally the following option is supported: -.Bl -tag -width indent -.It Cm nocache -Disable metadata caching in the null layer. -Some lower-layer file systems may force this option. -Depending on the access pattern, -this may result in increased lock contention. -.El -======= Additionally the following option is supported: .Bl -tag -width nocache .It Cm nocache @@ -111,7 +100,6 @@ this may result in increased lock contention. .It Cm cache Force enable metadata caching. .El ->>>>>>> 4a2a69c4472c (mount_nullfs(8): document -o cache and vfs.nullfs.cache_vnodes) .El .Pp The From nobody Fri Mar 15 10:39:57 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tx13K3HfWz5D7dh; Fri, 15 Mar 2024 10: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 4Tx13K2ZQDz44xb; Fri, 15 Mar 2024 10: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=1710499197; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BsMIfmXCDQmxaEen4FBNGe3+UHYu/PvGKjgPOT5stEs=; b=u+zU5Bpl7IyvPVOTpnM83FqIhdLlvq+4+2w/Eo2wix/+Rp8zj3xbNH50D8N9maVTa2gson 8o2rQNDo3ycSvuKoew3BEkQWbgch16zDwQKSDDjZd3zXOwKiB9xbCgp1KKIJ51JShn3O4P lIn5q2wnJUxPdRCQ4o15VfcFWDpkhJkZRJNSUaMzobpE3voL+raZeqHJoNoxW77YPkp1qH V0EQU8WGccvao+pKWj6JuqEporFA/JbfS8csYf3RchQ/fisyQFhKp0XIDwAdlR9UJsGjkz 7Kskpn/1YdyhMRnkCxSlD8pFo4stx2wTmTXwp5kXpGv1bRGjzJPsuLP3uAhKsQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710499197; a=rsa-sha256; cv=none; b=bN4GIm2aQvRMgybN06Wvfphx5CwcBv4wD69H5t/yZnIvEoXg+aGceP0ZzVba1UDlLOd/I8 notrOSYGTxXuaBtY1Xn7M31VtQMpeUya+mGyB/MpipnGHpdpYOQ5L/Rlo/7LU9JoIuP/U9 K8cL0jWWcM7Ust2iXQPvrH/RgPh6R47NO/ranbqppCPjmYqKlhMBCmgFRmDR4QtH2OYOup fdAFDhcDA7s1wJaG5oDf7DFrxv7ONnmXNbxzG9Vl+ZsaGuyWxI5fxlNudY4xBVWpZQT48N +KxSVw6WupajAk4cDTFcDDB5jLwIip+6qcf3y8Mkcqqbd+I8NYz1+6nVzPypQQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710499197; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=BsMIfmXCDQmxaEen4FBNGe3+UHYu/PvGKjgPOT5stEs=; b=U4sQhQYwzaq6L1KDEOvjyrsAta4jyUlDTx5GOKEvHL9sIpB5Oog90HuZzxXzuom5/TccTj l+t4yZZWATxUtp4JXVqF1xD9bQqnDK/XzTkjs9N42zVrPoUFUh8ZKu7jEgYlrZlYZ+z/7O F3xMXbjlLKGDk02fY96UnwQy7XfTpza38nJxsmzMGaBqUlUmAYxhh1VLzVa3ffiIxvwxUW vUrVtpKeI1IUgEvSP+zIjfrOYV1xCuPcXh5Fptbi/G5Msv8qt7g6o1l+FNtZeM6s1jCdHl sGgXwB9d5CyjkpwBUL1T0UhyhhMiFops6PwtTC7z+ZR1Wbi4rfL9Jy0w8eJAuQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tx13K29Vyz1791; Fri, 15 Mar 2024 10:39: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 42FAdvSN059200; Fri, 15 Mar 2024 10:39:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FAdv1I059198; Fri, 15 Mar 2024 10:39:57 GMT (envelope-from git) Date: Fri, 15 Mar 2024 10:39:57 GMT Message-Id: <202403151039.42FAdv1I059198@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Baptiste Daroussin Subject: git: b8c053c9a612 - main - nuageinit: add missing comment and descriptions for the package List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b8c053c9a612651d4909f7a323088f3e92485b7b Auto-Submitted: auto-generated The branch main has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=b8c053c9a612651d4909f7a323088f3e92485b7b commit b8c053c9a612651d4909f7a323088f3e92485b7b Author: Baptiste Daroussin AuthorDate: 2024-03-15 10:39:20 +0000 Commit: Baptiste Daroussin CommitDate: 2024-03-15 10:39:20 +0000 nuageinit: add missing comment and descriptions for the package --- release/packages/Makefile.package | 2 ++ 1 file changed, 2 insertions(+) diff --git a/release/packages/Makefile.package b/release/packages/Makefile.package index 255ef648329d..d358298287db 100644 --- a/release/packages/Makefile.package +++ b/release/packages/Makefile.package @@ -116,6 +116,8 @@ newsyslog_COMMENT= Newsyslog Utility newsyslog_DESC= Newsyslog Utility nfs_COMMENT= NFS Utilities nfs_DESC= NFS Utilities +nuageinit_COMMENT= CloudInit support scripts +nuageinit_DESC= CloudInit support scripts nvme-tools_COMMENT= NVME Utilities nvme-tools_DESC= NVME Utilities openssl_COMMENT= OpenSSL Utility From nobody Fri Mar 15 11:02:15 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tx1YF1VPxz5D9XC; Fri, 15 Mar 2024 11:02:25 +0000 (UTC) (envelope-from markjdb@gmail.com) Received: from mail-pf1-x42b.google.com (mail-pf1-x42b.google.com [IPv6:2607:f8b0:4864:20::42b]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Tx1YD4BGjz47YK; Fri, 15 Mar 2024 11:02:24 +0000 (UTC) (envelope-from markjdb@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=gmail.com header.s=20230601 header.b=G1X1PvkQ; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=freebsd.org (policy=none); spf=pass (mx1.freebsd.org: domain of markjdb@gmail.com designates 2607:f8b0:4864:20::42b as permitted sender) smtp.mailfrom=markjdb@gmail.com Received: by mail-pf1-x42b.google.com with SMTP id d2e1a72fcca58-6e6b729669bso2070439b3a.3; Fri, 15 Mar 2024 04:02:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1710500540; x=1711105340; darn=freebsd.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:sender:from:to:cc:subject:date:message-id :reply-to; bh=s2Jt3SrTKpv3mydfkTLpkMiSqT8l1dx1rYm+ZGfIrOw=; b=G1X1PvkQfjNywHbtTNM0ArR0ks+I5Ch+Uq9gxT9oj2/kTraQLyCHWbuyij48pCw/HS voEQ/pQyN9yX6qGOfKP5WcTQDaAfYEJZs6kqyNbAcjqN1CFIOebe17jHz19x+faGeQIn BAY5M04SQ/CiUMozXwQfjCtaR1yaDxw6lAHNbIMXf+WhuANN5qezOP8w0wVJgAynKlwK gz4j7twGw3/yHP6RJhhZRzmLrq+sVXclos+6TH/kan8zVn3y+qQVHu5BIkuDxXJdU+Se kMFm+Y8quqfadYNH0r5GcrBso8eWjDjCp2dGhSLkLBN/2qx2qQUoB/BB1W1GLtqjZIVD MkdQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710500540; x=1711105340; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:sender:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=s2Jt3SrTKpv3mydfkTLpkMiSqT8l1dx1rYm+ZGfIrOw=; b=ENFu/tQDBIE08R7zWVBErtReysbyWc4fc5YTumeSuTDeUKdp78hm5Q6VkOD7ry/mI3 Nl6OculUk/DOOP+hMoPOQTe39MlMXkrGr+LljrvMNoW2vEC3QTxNpWrJ1adT5tM8Vl90 qycOcuyXXuNB06x/wUGcoSv714ykbtizuW+ZiHHhfc76SgQnikjDCibJyamZzvrjMfo/ kkF9qyC9LgGAbx7DDh5DZUoV3Wgs5/Ek6hwHzWm/wTdTBiOxU7/IeOSdDxAdHYdDqnuK BsiNOSB9zH8ENiaDb7DWCN4b/OllyoRa4dHYsmNn0DK17QWg1+hcZBUluK8eQ3QrvzIB AGdg== X-Forwarded-Encrypted: i=1; AJvYcCXTjPS2r2wmmks1g56FH5zqeJqmPoj07rNDjed3uCUyP7vvrk2T145ut6l7zsVAOE4g6b1UB4bbUceNTcH49iIN85SBruwIoulQb/Ud+47ZvZNbA7H3REc2txxIWO0udSjaFURnspqwv6ngxmD7gz8ztw== X-Gm-Message-State: AOJu0Yzr3VCU5sVwKOJJqMaikMRv0sh20vbvwDYeycIIeAyrz8IjbSux FB7c7wiy0hWokmFRgUMPymeUZyiKrNUujmf+24UhSJ4UOvEC04eCk5JI+7zh X-Google-Smtp-Source: AGHT+IGFidREzzzggtaEgJrrgkqbFq2ni2lsQwJumCyYEzZUBOtSIcyDIEro2iARZ1cdrsSSN0qQnw== X-Received: by 2002:a05:6a00:3991:b0:6e6:977e:6427 with SMTP id fi17-20020a056a00399100b006e6977e6427mr5123922pfb.8.1710500540016; Fri, 15 Mar 2024 04:02:20 -0700 (PDT) Received: from framework.home (36-224-168-33.dynamic-ip.hinet.net. [36.224.168.33]) by smtp.gmail.com with ESMTPSA id fi37-20020a056a0039a500b006e69a142458sm3105468pfb.213.2024.03.15.04.02.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 15 Mar 2024 04:02:19 -0700 (PDT) Date: Fri, 15 Mar 2024 07:02:15 -0400 From: Mark Johnston To: Richard Scheffenegger Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 85df11a1dec6 - main - ktls: deep copy tls_enable struct for in-kernel tcp consumers Message-ID: References: <202403132108.42DL8TbO057293@gitrepo.freebsd.org> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202403132108.42DL8TbO057293@gitrepo.freebsd.org> X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.10 / 15.00]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.996]; FORGED_SENDER(0.30)[markj@freebsd.org,markjdb@gmail.com]; R_DKIM_ALLOW(-0.20)[gmail.com:s=20230601]; R_SPF_ALLOW(-0.20)[+ip6:2607:f8b0:4000::/36:c]; MIME_GOOD(-0.10)[text/plain]; DMARC_POLICY_SOFTFAIL(0.10)[freebsd.org : SPF not aligned (relaxed), DKIM not aligned (relaxed),none]; RCVD_COUNT_TWO(0.00)[2]; MIME_TRACE(0.00)[0:+]; TO_DN_SOME(0.00)[]; FROM_HAS_DN(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; MISSING_XM_UA(0.00)[]; DWL_DNSWL_NONE(0.00)[gmail.com:dkim]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; RCVD_VIA_SMTP_AUTH(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::42b:from]; RCVD_TLS_LAST(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; ARC_NA(0.00)[]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; RCPT_COUNT_THREE(0.00)[4]; FROM_NEQ_ENVFROM(0.00)[markj@freebsd.org,markjdb@gmail.com]; DKIM_TRACE(0.00)[gmail.com:+] X-Rspamd-Queue-Id: 4Tx1YD4BGjz47YK On Wed, Mar 13, 2024 at 09:08:29PM +0000, Richard Scheffenegger wrote: > The branch main has been updated by rscheff: > > URL: https://cgit.FreeBSD.org/src/commit/?id=85df11a1dec6eab9efbce9fd20712402a8e7ac7c > > commit 85df11a1dec6eab9efbce9fd20712402a8e7ac7c > Author: Richard Scheffenegger > AuthorDate: 2024-03-13 11:35:51 +0000 > Commit: Richard Scheffenegger > CommitDate: 2024-03-13 12:23:13 +0000 > > ktls: deep copy tls_enable struct for in-kernel tcp consumers > > Doing a deep copy of the keys early allows users of the > tls_enable structure to assume kernel memory. > This enables the socket options to be set by kernel threads. > > Reviewed By: #transport, tuexen, jhb, rrs > Sponsored by: NetApp, Inc. > X-NetApp-PR: #79 > Differential Revision: https://reviews.freebsd.org/D44250 > --- > sys/kern/uipc_ktls.c | 96 ++++++++++++++++++++++++++++++++++++++++-------- > sys/netinet/tcp_usrreq.c | 44 ++++------------------ > sys/sys/ktls.h | 17 +++++---- > 3 files changed, 97 insertions(+), 60 deletions(-) > > diff --git a/sys/kern/uipc_ktls.c b/sys/kern/uipc_ktls.c > index deba6940bbee..df296090ec97 100644 > --- a/sys/kern/uipc_ktls.c > +++ b/sys/kern/uipc_ktls.c > @@ -297,10 +297,86 @@ SYSCTL_COUNTER_U64(_kern_ipc_tls_toe, OID_AUTO, chacha20, CTLFLAG_RD, > > static MALLOC_DEFINE(M_KTLS, "ktls", "Kernel TLS"); > > +static void ktls_reclaim_thread(void *ctx); > static void ktls_reset_receive_tag(void *context, int pending); > static void ktls_reset_send_tag(void *context, int pending); > static void ktls_work_thread(void *ctx); > -static void ktls_reclaim_thread(void *ctx); > + > +int > +ktls_copyin_tls_enable(struct sockopt *sopt, struct tls_enable *tls) > +{ > + struct tls_enable_v0 tls_v0; > + int error; > + uint8_t *cipher_key = NULL, *iv = NULL, *auth_key = NULL; > + > + if (sopt->sopt_valsize == sizeof(tls_v0)) { > + error = sooptcopyin(sopt, &tls_v0, sizeof(tls_v0), sizeof(tls_v0)); > + if (error != 0) > + goto done; > + memset(tls, 0, sizeof(*tls)); > + tls->cipher_key = tls_v0.cipher_key; > + tls->iv = tls_v0.iv; > + tls->auth_key = tls_v0.auth_key; > + tls->cipher_algorithm = tls_v0.cipher_algorithm; > + tls->cipher_key_len = tls_v0.cipher_key_len; > + tls->iv_len = tls_v0.iv_len; > + tls->auth_algorithm = tls_v0.auth_algorithm; > + tls->auth_key_len = tls_v0.auth_key_len; > + tls->flags = tls_v0.flags; > + tls->tls_vmajor = tls_v0.tls_vmajor; > + tls->tls_vminor = tls_v0.tls_vminor; > + } else > + error = sooptcopyin(sopt, tls, sizeof(*tls), sizeof(*tls)); > + > + if (error != 0) > + goto done; > + > + /* > + * Now do a deep copy of the variable-length arrays in the struct, so that > + * subsequent consumers of it can reliably assume kernel memory. This > + * requires doing our own allocations, which we will free in the > + * error paths so that our caller need only worry about outstanding > + * allocations existing on successful return. > + */ > + cipher_key = malloc(tls->cipher_key_len, M_KTLS, M_WAITOK); > + iv = malloc(tls->iv_len, M_KTLS, M_WAITOK); > + auth_key = malloc(tls->auth_key_len, M_KTLS, M_WAITOK); Hi Richard, These lengths need to be validated against some maximum and minimum values, as they are provided by userspace and thus aren't to be trusted. See https://syzkaller.appspot.com/bug?extid=72022fa9163fa958b66c > + if (sopt->sopt_td != NULL) { > + error = copyin(tls->cipher_key, cipher_key, tls->cipher_key_len); > + if (error != 0) > + goto done; > + error = copyin(tls->iv, iv, tls->iv_len); > + if (error != 0) > + goto done; > + error = copyin(tls->auth_key, auth_key, tls->auth_key_len); > + if (error != 0) > + goto done; > + } else { > + bcopy(tls->cipher_key, cipher_key, tls->cipher_key_len); > + bcopy(tls->iv, iv, tls->iv_len); > + bcopy(tls->auth_key, auth_key, tls->auth_key_len); > + } > + tls->cipher_key = cipher_key; > + tls->iv = iv; > + tls->auth_key = auth_key; > + > +done: > + if (error != 0) { > + zfree(cipher_key, M_KTLS); > + zfree(iv, M_KTLS); > + zfree(auth_key, M_KTLS); > + } > + > + return (error); > +} > + > +void > +ktls_cleanup_tls_enable(struct tls_enable *tls) > +{ > + zfree(__DECONST(void *, tls->cipher_key), M_KTLS); > + zfree(__DECONST(void *, tls->iv), M_KTLS); > + zfree(__DECONST(void *, tls->auth_key), M_KTLS); > +} > > static u_int > ktls_get_cpu(struct socket *so) > @@ -702,18 +778,12 @@ ktls_create_session(struct socket *so, struct tls_enable *en, > tls->params.auth_key_len = en->auth_key_len; > tls->params.auth_key = malloc(en->auth_key_len, M_KTLS, > M_WAITOK); > - error = copyin(en->auth_key, tls->params.auth_key, > - en->auth_key_len); > - if (error) > - goto out; > + bcopy(en->auth_key, tls->params.auth_key, en->auth_key_len); > } > > tls->params.cipher_key_len = en->cipher_key_len; > tls->params.cipher_key = malloc(en->cipher_key_len, M_KTLS, M_WAITOK); > - error = copyin(en->cipher_key, tls->params.cipher_key, > - en->cipher_key_len); > - if (error) > - goto out; > + bcopy(en->cipher_key, tls->params.cipher_key, en->cipher_key_len); > > /* > * This holds the implicit portion of the nonce for AEAD > @@ -722,9 +792,7 @@ ktls_create_session(struct socket *so, struct tls_enable *en, > */ > if (en->iv_len != 0) { > tls->params.iv_len = en->iv_len; > - error = copyin(en->iv, tls->params.iv, en->iv_len); > - if (error) > - goto out; > + bcopy(en->iv, tls->params.iv, en->iv_len); > > /* > * For TLS 1.2 with GCM, generate an 8-byte nonce as a > @@ -740,10 +808,6 @@ ktls_create_session(struct socket *so, struct tls_enable *en, > > *tlsp = tls; > return (0); > - > -out: > - ktls_free(tls); > - return (error); > } > > static struct ktls_session * > diff --git a/sys/netinet/tcp_usrreq.c b/sys/netinet/tcp_usrreq.c > index a73d2a15c1d5..916fe33e8704 100644 > --- a/sys/netinet/tcp_usrreq.c > +++ b/sys/netinet/tcp_usrreq.c > @@ -1914,37 +1914,6 @@ CTASSERT(TCP_CA_NAME_MAX <= TCP_LOG_ID_LEN); > CTASSERT(TCP_LOG_REASON_LEN <= TCP_LOG_ID_LEN); > #endif > > -#ifdef KERN_TLS > -static int > -copyin_tls_enable(struct sockopt *sopt, struct tls_enable *tls) > -{ > - struct tls_enable_v0 tls_v0; > - int error; > - > - if (sopt->sopt_valsize == sizeof(tls_v0)) { > - error = sooptcopyin(sopt, &tls_v0, sizeof(tls_v0), > - sizeof(tls_v0)); > - if (error) > - return (error); > - memset(tls, 0, sizeof(*tls)); > - tls->cipher_key = tls_v0.cipher_key; > - tls->iv = tls_v0.iv; > - tls->auth_key = tls_v0.auth_key; > - tls->cipher_algorithm = tls_v0.cipher_algorithm; > - tls->cipher_key_len = tls_v0.cipher_key_len; > - tls->iv_len = tls_v0.iv_len; > - tls->auth_algorithm = tls_v0.auth_algorithm; > - tls->auth_key_len = tls_v0.auth_key_len; > - tls->flags = tls_v0.flags; > - tls->tls_vmajor = tls_v0.tls_vmajor; > - tls->tls_vminor = tls_v0.tls_vminor; > - return (0); > - } > - > - return (sooptcopyin(sopt, tls, sizeof(*tls), sizeof(*tls))); > -} > -#endif > - > extern struct cc_algo newreno_cc_algo; > > static int > @@ -2292,15 +2261,16 @@ unlock_and_done: > #ifdef KERN_TLS > case TCP_TXTLS_ENABLE: > INP_WUNLOCK(inp); > - error = copyin_tls_enable(sopt, &tls); > - if (error) > + error = ktls_copyin_tls_enable(sopt, &tls); > + if (error != 0) > break; > error = ktls_enable_tx(so, &tls); > + ktls_cleanup_tls_enable(&tls); > break; > case TCP_TXTLS_MODE: > INP_WUNLOCK(inp); > error = sooptcopyin(sopt, &ui, sizeof(ui), sizeof(ui)); > - if (error) > + if (error != 0) > return (error); > > INP_WLOCK_RECHECK(inp); > @@ -2309,11 +2279,11 @@ unlock_and_done: > break; > case TCP_RXTLS_ENABLE: > INP_WUNLOCK(inp); > - error = sooptcopyin(sopt, &tls, sizeof(tls), > - sizeof(tls)); > - if (error) > + error = ktls_copyin_tls_enable(sopt, &tls); > + if (error != 0) > break; > error = ktls_enable_rx(so, &tls); > + ktls_cleanup_tls_enable(&tls); > break; > #endif > case TCP_MAXUNACKTIME: > diff --git a/sys/sys/ktls.h b/sys/sys/ktls.h > index 693864394ffe..9b3433f4b1fd 100644 > --- a/sys/sys/ktls.h > +++ b/sys/sys/ktls.h > @@ -174,6 +174,7 @@ struct m_snd_tag; > struct mbuf; > struct sockbuf; > struct socket; > +struct sockopt; > > struct ktls_session { > struct ktls_ocf_session *ocf_session; > @@ -213,27 +214,29 @@ typedef enum { > } ktls_mbuf_crypto_st_t; > > void ktls_check_rx(struct sockbuf *sb); > -ktls_mbuf_crypto_st_t ktls_mbuf_crypto_state(struct mbuf *mb, int offset, int len); > +void ktls_cleanup_tls_enable(struct tls_enable *tls); > +int ktls_copyin_tls_enable(struct sockopt *sopt, struct tls_enable *tls); > void ktls_disable_ifnet(void *arg); > int ktls_enable_rx(struct socket *so, struct tls_enable *en); > int ktls_enable_tx(struct socket *so, struct tls_enable *en); > +void ktls_enqueue(struct mbuf *m, struct socket *so, int page_count); > +void ktls_enqueue_to_free(struct mbuf *m); > void ktls_destroy(struct ktls_session *tls); > void ktls_frame(struct mbuf *m, struct ktls_session *tls, int *enqueue_cnt, > uint8_t record_type); > -bool ktls_permit_empty_frames(struct ktls_session *tls); > -void ktls_seq(struct sockbuf *sb, struct mbuf *m); > -void ktls_enqueue(struct mbuf *m, struct socket *so, int page_count); > -void ktls_enqueue_to_free(struct mbuf *m); > int ktls_get_rx_mode(struct socket *so, int *modep); > -int ktls_set_tx_mode(struct socket *so, int mode); > int ktls_get_tx_mode(struct socket *so, int *modep); > int ktls_get_rx_sequence(struct inpcb *inp, uint32_t *tcpseq, uint64_t *tlsseq); > void ktls_input_ifp_mismatch(struct sockbuf *sb, struct ifnet *ifp); > -int ktls_output_eagain(struct inpcb *inp, struct ktls_session *tls); > +ktls_mbuf_crypto_st_t ktls_mbuf_crypto_state(struct mbuf *mb, int offset, int len); > #ifdef RATELIMIT > int ktls_modify_txrtlmt(struct ktls_session *tls, uint64_t max_pacing_rate); > #endif > +int ktls_output_eagain(struct inpcb *inp, struct ktls_session *tls); > bool ktls_pending_rx_info(struct sockbuf *sb, uint64_t *seqnop, size_t *residp); > +bool ktls_permit_empty_frames(struct ktls_session *tls); > +void ktls_seq(struct sockbuf *sb, struct mbuf *m); > +int ktls_set_tx_mode(struct socket *so, int mode); > > static inline struct ktls_session * > ktls_hold(struct ktls_session *tls) > From nobody Fri Mar 15 13:51:56 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tx5Js0Rwyz5DSfj; Fri, 15 Mar 2024 13:51: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 4Tx5Jr5lHlz4NXC; Fri, 15 Mar 2024 13:51:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710510716; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=S3XLETgTOx8g6SW3Z9a1yqt/QAPrRfYzzNc7eyLlf5o=; b=Zgrp7fEPKdR36f4MyJNKGhBh5bH6tDqn4O/E3sqNdO0oIGPKbiIJpfL48OawUH17KPRGAn ow7eOualGHWebLJZrMYO9tpQNRU8HNdz7hpacGrRJ4ieCVHLbctLibBtt4Cg3hna8IzbU/ Jc3n9VbO7QaLp0c0rImGqOzzjGNTKuzNVOX2epC8y1ox0tjtiDbjdSoYuW8kAJKhO+8/Vt w0XrKd6JUmzCx//OjwFnUS+bXXNbGbFeGx6t+kE7H3ml2cUUiTT6mdatwimZH5A8FzKTs4 0FG8EKg9j/m1iJ4j9Aj0NJc+0oVwAnYu4XHUfnQJAtnJbhtTVRi49kM4TZcSPg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710510716; a=rsa-sha256; cv=none; b=jbaK2x/yQ6u7f5Q6f8h/LxOCOX86No4QqlnolmVDd6OCChYhecGhOtPK6+FE2DMxxEb7B7 /xtHCX9qZnrPzz9jttnWwmMAiqQFl9jRSdmHdE5aDuBmKsTFgGY/y3JcePQV+rgOCGLWaQ dKjB/0wb829LmE/toMqCkVejMoauNaO6J3U1/oMMsK/uILHv5Gh0suOxd2ucOhFX/y3KUm jZ6kVrpkWWc6agkN/QZOa5VgYQBQtJNSc/0XtnIvIBhmI+QFutSIYgpPC5nUbKrkKtg080 EJu4zv+A7aHRITn3tg0pWgUHKIftsHsRMjMbACYxYG0Exmu4auQYKzv++4wIjQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710510716; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=S3XLETgTOx8g6SW3Z9a1yqt/QAPrRfYzzNc7eyLlf5o=; b=Ssa8lZqq2FxNv/YdPlwoxwI8+bf9YZQhLAg8EHkBCFnMmswnZLDfpBGM5W1j8MtvAOlNbc 3uF3S9hqo2lqyRp9UlBcRjktxaVgS9jCCdcvj6R4TaYtua8NEgpUMRAeFexMnHekFpzQDk Nl5DiMOcfxohac6D7b23as6MojP1YO+HRsCvDWHcPOabmKHkXHGxZncfxJ6Dj8QS8CC2xd cTXjgXZ5SSaMjMsNkjc6n6jH7DLO3j14KHkcdpz7L11SPBAKcT65HloER7dT1Qb2MKyZw5 Nuq4A0BLeaZoQSf8xJYcIZuih/KsbeJILvhPTj2DcU5ON8zMUxCczYdAA19q8w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tx5Jr53B1zDhH; Fri, 15 Mar 2024 13:51: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 42FDpuBw092808; Fri, 15 Mar 2024 13:51:56 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FDpuZM092805; Fri, 15 Mar 2024 13:51:56 GMT (envelope-from git) Date: Fri, 15 Mar 2024 13:51:56 GMT Message-Id: <202403151351.42FDpuZM092805@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Baptiste Daroussin Subject: git: 5c318f5ce3e2 - main - pkgbase: remove packages which do not exists anymore List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 5c318f5ce3e293d8479d686da25c1a4460c09388 Auto-Submitted: auto-generated The branch main has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=5c318f5ce3e293d8479d686da25c1a4460c09388 commit 5c318f5ce3e293d8479d686da25c1a4460c09388 Author: Baptiste Daroussin AuthorDate: 2024-03-15 13:50:40 +0000 Commit: Baptiste Daroussin CommitDate: 2024-03-15 13:51:40 +0000 pkgbase: remove packages which do not exists anymore --- release/packages/Makefile.package | 6 ------ release/packages/gdb.ucl | 17 ----------------- release/packages/groff.ucl | 17 ----------------- release/packages/svn.ucl | 17 ----------------- 4 files changed, 57 deletions(-) diff --git a/release/packages/Makefile.package b/release/packages/Makefile.package index d358298287db..ed3da78665be 100644 --- a/release/packages/Makefile.package +++ b/release/packages/Makefile.package @@ -73,14 +73,10 @@ fwget_COMMENT= FWGET Utility fwget_DESC= FWGET Utility games_COMMENT= Games games_DESC= Games -gdb_COMMENT= GDB Utilities -gdb_DESC= GDB Utilities geom_COMMENT= GEOM Utilitites geom_DESC= GEOM Utilitites ggate_COMMENT= GEOM Gate Utilities ggate_DESC= GEOM Gate Utilities -groff_COMMENT= Groff Utilities -groff_DESC= Groff Utilities hast_COMMENT= Highly Available Storage daemon hast_DESC= Highly Available Storage daemon hostapd_COMMENT= 802.11 Access Point Daemon an Utilities @@ -153,8 +149,6 @@ smbutils_COMMENT= SMB Utilities smbutils_DESC= SMB Utilities ssh_COMMENT= Secure Shell Utilities ssh_DESC= Secure Shell Utilities -svn_COMMENT= Subversion Version Control System -svn_DESC= Subversion Version Control System syscons_COMMENT= Syscons Console syscons_DESC= Syscons Console syslogd_COMMENT= Syslog Daemon diff --git a/release/packages/gdb.ucl b/release/packages/gdb.ucl deleted file mode 100644 index ff2710862e03..000000000000 --- a/release/packages/gdb.ucl +++ /dev/null @@ -1,17 +0,0 @@ -# -# - -name = "%PKG_NAME_PREFIX%-%PKGNAME%" -origin = "base" -version = "%VERSION%" -comment = "%COMMENT%" -categories = [ base ] -maintainer = "%PKG_MAINTAINER%" -www = "%PKG_WWW%" -prefix = "/" -licenselogic = "single" -licenses = [ GPLv2 ] -desc = < To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Baptiste Daroussin Subject: git: 9eae9233fdcc - main - nuageinit: be case insentive when looking got labels List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bapt X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 9eae9233fdcc946945f4191e1413f548adfa2943 Auto-Submitted: auto-generated The branch main has been updated by bapt: URL: https://cgit.FreeBSD.org/src/commit/?id=9eae9233fdcc946945f4191e1413f548adfa2943 commit 9eae9233fdcc946945f4191e1413f548adfa2943 Author: Baptiste Daroussin AuthorDate: 2024-03-15 14:15:03 +0000 Commit: Baptiste Daroussin CommitDate: 2024-03-15 14:15:03 +0000 nuageinit: be case insentive when looking got labels Reported by: Marek Zarychta --- libexec/rc/rc.d/nuageinit | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libexec/rc/rc.d/nuageinit b/libexec/rc/rc.d/nuageinit index 9c914c340015..977b44e465fe 100755 --- a/libexec/rc/rc.d/nuageinit +++ b/libexec/rc/rc.d/nuageinit @@ -22,12 +22,12 @@ nuageinit_start() # it either formatted in vfat or iso9660 and labeled # config-2 for f in iso9660 msdosfs; do - drive=/dev/$f/config-2 + drive="/dev/$f/[cC][oO][nN][fF][iI][gG]-2" if [ -e $drive ]; then citype=config-2 break fi - drive=/dev/$f/cidata + drive="/dev/$f/[cC][iI][dD][aA][tT][aA]" if [ -e $drive ]; then citype=nocloud break From nobody Fri Mar 15 15:01:59 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tx6sg4MlNz5DZB6; Fri, 15 Mar 2024 15:01: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 4Tx6sg3qDKz4W4k; Fri, 15 Mar 2024 15:01:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710514919; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LVXYZs8oVcB7NPyuUkEuDqofktr2iPI0iQIXmP6VoAI=; b=aHpczg/gbktLsAq9TXVbuxbZIpmbBblcKgwUsBqMGX/5Cd4pdlEL0CaKj18D4fVedncGta VWff+6ISwSwlmkF68WGgh3QXNJQe3xVUkidx4eiQzmi+O85jQM9ZTVUFrHLqp38tkgIWAF DL00mZTs5blp/iVQZYKhSTkP44FNs0KPF0YO+tfVHl0k/bI36rsxJGgfpqWFVAXGhvPp/A An0fPOrj+FS2LEdDiBuXdLnIDOeTvXZbVo2JaRH/sKpWV4rSTnY3niba5+8Oh9KVQdx6Nz Q+BmEvRDOJVfG4wxcHrEp6JtTsYnJUpfVb+fTqzkiYoScJinB6CYkm4kLsUojg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710514919; a=rsa-sha256; cv=none; b=nwq5Jc6EcDOpZkx6u16pNi8YYbOifw98KtUgh6Dp/bdOQrsXpwO3gPRCZoQZ6KnkxvrkkB zJuQAs8yv+nS5UneZAEyTC58RrkoGF0Iz/0Fvi+ziKLOgMNJdYgVYHbdW0QERTb6cuD7Vv N1m8DFSnkH9BuZltg2s3oYc7gSNPzoRoI9zkHRxoVZlLeV+S+qhZC5FdNTjhOjGZfm6i+9 Gc9GXv0T8gbwGUUJhs5etEk0xFkKM6kwSIF7TXZVSALwZ7IcsY/lvIMv2RF1vNLLB/sv6b VVVsGyoveK7QtsattLm7OTXpWSGmK4772/h325Q9PGdbUfGzBqEA27iteG/TwQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710514919; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=LVXYZs8oVcB7NPyuUkEuDqofktr2iPI0iQIXmP6VoAI=; b=dXkfxzvM0eoFfBFYSrhlu12aYLGrf8Mq3hMRDx42kM8hLjFgNXodGvWFbUO1KcAGg17/Z5 yqEituSRp8ZeudnHVF8h6osnvW5dDe8VGgIO4yTXkExpZPx2CvxKGYNcd8/HzzR/XKpBAM OB0H0nQh7BmkD4z2UptuSIVGOta75pKWNjj8NqxqwRtIij2IapqMqbUBlItc3LSzMw3uyQ 7hlT+9B8grjX1l4ryuxaUuoy/RC/mY33yNEORId2HRvN1zlbH3abjQux28FexTrkt6ilrt sUTt+iVifm5NwLPH2NohYdte5S9DD7zzW8D1cVlYLBahpVjHnDnUmpL7N34e3A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tx6sg3QsczFlb; Fri, 15 Mar 2024 15:01: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 42FF1xSm013821; Fri, 15 Mar 2024 15:01:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FF1xMr013818; Fri, 15 Mar 2024 15:01:59 GMT (envelope-from git) Date: Fri, 15 Mar 2024 15:01:59 GMT Message-Id: <202403151501.42FF1xMr013818@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: a00f9e4e8181 - main - scsi: Stop installing both cam.4 and CAM.4 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a00f9e4e81810374755910ad7abf0fc335dcf86d Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=a00f9e4e81810374755910ad7abf0fc335dcf86d commit a00f9e4e81810374755910ad7abf0fc335dcf86d Author: Warner Losh AuthorDate: 2024-03-15 04:33:25 +0000 Commit: Warner Losh CommitDate: 2024-03-15 15:01:25 +0000 scsi: Stop installing both cam.4 and CAM.4 There's no real benefit from installing both cam.4 and CAM.4. The latter is not an kernel option. This hits a pathological case in mlinks: we're trying to link to another file and the second link fails on case-preserving, case-insensitive filesystems, like on MacOS by default. Since we don't need both, avoid this pathological case. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D44346 --- share/man/man4/Makefile | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile index cfa42afa6a71..c3f5e3223bf9 100644 --- a/share/man/man4/Makefile +++ b/share/man/man4/Makefile @@ -734,10 +734,9 @@ MLINKS+=re.4 if_re.4 MLINKS+=rl.4 if_rl.4 MLINKS+=rtwn_pci.4 if_rtwn_pci.4 MLINKS+=rue.4 if_rue.4 -MLINKS+=scsi.4 CAM.4 \ - scsi.4 cam.4 \ - scsi.4 scbus.4 \ - scsi.4 SCSI.4 +MLINKS+=scsi.4 cam.4 +MLINKS+=scsi.4 scbus.4 +MLINKS+=scsi.4 SCSI.4 MLINKS+=sge.4 if_sge.4 MLINKS+=sis.4 if_sis.4 MLINKS+=sk.4 if_sk.4 From nobody Fri Mar 15 15:02:00 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tx6sh6GpQz5DZGH; Fri, 15 Mar 2024 15:02: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 4Tx6sh595sz4WGj; Fri, 15 Mar 2024 15:02:00 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710514920; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=n4mjPW/qSRVzizOKK93HFWRKOj4KNfaVliqV6UX3wbk=; b=cG0526ezp3Anct6KlDiUNYeWG+qOEO4n6rz6E4lA4g8l76NeqSjJTcmRHczy2F7zvCfYVj Zg/lVidut3HtOz9w210BdaPnKVn91qD1kUITpQUUvaV2n59lDMwv3wzVM8xyCzg/mSeTkd t3e560loWW3gCYm2J+7pv++tJYLlv3yi+MYx+lgglBNY/ILM/qydi/HSryz4rH8hrJ3+/g tvq0OJnps19SAf6vuraUZESEZD7xflsprJeP0Gvc5RTL2NQpip6GGaxDLIPK7qd3/HA1nV JAztLXeHGmsO8o5vBxB9GOHqYfKGheykSR9bl3ERC54jxiJP7T5oV93aplwuiQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710514920; a=rsa-sha256; cv=none; b=iqqF7A7WQ+O6SWaCLl0xEyX7kOy+V2m+cDEw3DDFiqlUliFcufs3qiCaWqYBhGCYQBNQi2 BmYgvPDWFvcS8dGwkMZVEpPR7tSf3DB/BtVPJ4QehRh61O2EoZaB5682yta8CXCW51Dxaq W5P4E1qwYTYpLWDt/t+1BoDu8P3z3EzXZQrbiZym37GBcho1fr2d7oGFeyxFv6fvmFoMs9 e7ZBQnzlutYFdINfD3KdeywIPq6QAOY2j2l+O27mZksDAd0cWn4zEUeFrDd+7q/Diqb2f6 DigavY14zibw7afpyCCgo3N2UhvME+P3rGDo1cvijRgrPvFZLl8ap4t3msOeMQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710514920; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=n4mjPW/qSRVzizOKK93HFWRKOj4KNfaVliqV6UX3wbk=; b=TJ3MtP2UDjqnpDiStudnUd5WxLFTBKCth/9uz7N+FcAzJb+YE/RhJltxAgrTWqN1l/qnvX o/WPuxyba54VZo1u49AL/3Sgzoc/sOdpQA1cLg3y7Rgl1FbrBqbdeOiSffKXcWpa3QTLbA mO8clPUQZ6bdBbvarrfLjrfiJwt0x665AqmW39OFwy1sTVIeZuGAJpGUfD03ZAkch2is0C iuyVs6mx5kixpZ6TEnXHzQjDQIeL4QvnD0TdSwvG23Jk1SUQzMnnzzmgxzivr6EF5gth1e vPKy/QBb1eoMSU8EoGp9EscIJCkpWgFO0oJiUcvi0f2kuduw6nudbQxoz8x00A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tx6sh4V9tzG5g; Fri, 15 Mar 2024 15:02: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 42FF206W013890; Fri, 15 Mar 2024 15:02:00 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FF20ul013887; Fri, 15 Mar 2024 15:02:00 GMT (envelope-from git) Date: Fri, 15 Mar 2024 15:02:00 GMT Message-Id: <202403151502.42FF20ul013887@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: d2a824c29d69 - main - share/mk: Don't install only differing in case files on case insensitive fs List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d2a824c29d6925ba8675a811aa81f2ad7d92129d Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=d2a824c29d6925ba8675a811aa81f2ad7d92129d commit d2a824c29d6925ba8675a811aa81f2ad7d92129d Author: Warner Losh AuthorDate: 2024-03-15 04:33:33 +0000 Commit: Warner Losh CommitDate: 2024-03-15 15:01:25 +0000 share/mk: Don't install only differing in case files on case insensitive fs MacOS has case insensitive filesystems by default. So trying to link between foo.X and FOO.X causes an error of some sort since we unlink the old foo file destroying the newly installed foo due to the insensitive nature of the FS. Assume that this is true on darwin/macos, though it is only try by default there. Perhaps install should grow smarts to know when this is the case, though that looked much trickier. There didn't seem to be a flag to check. This would be better, imho, since we could still write the METALOG data correctly (images created from these metalogs are imperfect due to this relatively issue...). Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D44347 --- share/mk/bsd.links.mk | 6 ++++++ share/mk/bsd.man.mk | 3 +++ 2 files changed, 9 insertions(+) diff --git a/share/mk/bsd.links.mk b/share/mk/bsd.links.mk index 6070979612bf..437ffd0d3b34 100644 --- a/share/mk/bsd.links.mk +++ b/share/mk/bsd.links.mk @@ -14,16 +14,22 @@ afterinstall: _installlinks .ORDER: realinstall _installlinks _installlinks: .for s t in ${LINKS} +# On MacOS, assume case folding FS, and don't install links from foo.x to FOO.x. +.if ${.MAKE.OS} != "Darwin" || ${s:tu} != ${t:tu} .if defined(LINKTAGS) ${INSTALL_LINK} ${TAG_ARGS:D${TAG_ARGS},${LINKTAGS}} ${DESTDIR}${s} ${DESTDIR}${t} .else ${INSTALL_LINK} ${TAG_ARGS} ${DESTDIR}${s} ${DESTDIR}${t} .endif +.endif .endfor .for s t in ${SYMLINKS} +# On MacOS, assume case folding FS, and don't install links from foo.x to FOO.x. +.if ${.MAKE.OS} != "Darwin" || ${s:tu} != ${t:tu} .if defined(LINKTAGS) ${INSTALL_SYMLINK} ${TAG_ARGS:D${TAG_ARGS},${LINKTAGS}} ${s} ${DESTDIR}${t} .else ${INSTALL_SYMLINK} ${TAG_ARGS} ${s} ${DESTDIR}${t} .endif +.endif .endfor diff --git a/share/mk/bsd.man.mk b/share/mk/bsd.man.mk index c80c618e48db..2845d0c1fc1c 100644 --- a/share/mk/bsd.man.mk +++ b/share/mk/bsd.man.mk @@ -234,6 +234,8 @@ maninstall: ${MAN} .endif # ${MK_MANCOMPRESS} == "no" .endif .for l t in ${_MANLINKS} +# On MacOS, assume case folding FS, and don't install links from foo.x to FOO.x. +.if ${.MAKE.OS} != "Darwin" || ${l:tu} != ${t:tu} .if ${MK_MANSPLITPKG} == "no" rm -f ${DESTDIR}${t} ${DESTDIR}${t}${MCOMPRESS_EXT}; \ ${INSTALL_MANLINK} ${TAG_ARGS} ${DESTDIR}${l}${ZEXT} ${DESTDIR}${t}${ZEXT} @@ -241,6 +243,7 @@ maninstall: ${MAN} rm -f ${DESTDIR}${t} ${DESTDIR}${t}${MCOMPRESS_EXT}; \ ${INSTALL_MANLINK} ${TAG_ARGS:D${TAG_ARGS},man} ${DESTDIR}${l}${ZEXT} ${DESTDIR}${t}${ZEXT} .endif +.endif .endfor manlint: From nobody Fri Mar 15 15:26:58 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tx7QW0VZlz5DcFw; Fri, 15 Mar 2024 15:26: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 4Tx7QV6d2mz4Z2s; Fri, 15 Mar 2024 15:26:58 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710516418; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4XR+uVYoOhxrTK6DTiKl+e1iP3pU3fWcQdqUO0802n8=; b=iOkquUigAD5ovo877R4UglKVH5Y+wTXfRth34IDvCTx9yya2X8IIkM2W5l4ritKNMTzqU3 L0VhhYqtvYJrSNbOHiM1lq4u3OHocKbnrGMSOXs14hIC5eV2kgfYG5epYsFQ/5CBT76yXc Wub2hdk5ZZSnI0v6ySjdyTNjcZn5MsenQU4+2rfJEP2Mn3+LybbZ2ivJY/9kzAfzBCfySm qKoaRFklombWSPWwgQ0D595ZA2/KNRNUAxoGn3L9XRqbgAJKvOR47ULUX9+Lw7C8R4ckIk plpy8vhFBOGQjkkoJsnUNzYkR/ph8oQE+tTovMkYlCUzn2zfl/238917VkreBg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710516418; a=rsa-sha256; cv=none; b=SyrFVW9Xgta/wRK7rFyTyY47Ne0YqvG+J0LC5ve+BffJLVRgQDInHMQJvV5W2LOosBAW5o twL17C3A0T/sW1irKXFPDN93j3uuecjRpF4AFrCOd7/C3wNPFssVnOYFdej5+y4KU8mI5o +wLRneLEYfY1YzuMalr8/pDgRAqJzHBYTLVdGGXDRbuQvXo2LNM3ahW/mRn+BZl84HVXz2 Z11dWnAXByuVn5HafJotIxEIQWDUlARr5YUOfI9Mpsgnpx+SfuQCRe61pMgj4SBg4DV2KS o/Xz/ZFWGMujP2svw3fPBZBuody2AEi0xFhss0MP32tvg9HKZBWeW4z47sL6Lg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710516418; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4XR+uVYoOhxrTK6DTiKl+e1iP3pU3fWcQdqUO0802n8=; b=Y9qNKCt/+nGOLAkZNPcRa31t/J/SfL/wJFKZnxRsc8F9eTvfJmEQrQV87kG2+5fem2P8el JD93/N8UlrT+s6kiUYbm+bYEqlP3lkxXnWcbwuE0fEVygklxNR7Hq2nw1ks4TNqLY/17Hw i24dXHKFGooVCC/ofRSUsfpVyYIIIOiyY7jDSdcKanob7SfbNQ+3/TrCeLXEPPV6g12CdW ZJ5tSOzKIhD1eucKikayTF8pf+9X4KnWAxHPC0xzpvBTUt8XELdZEjEAEb7hHpctuMz1ms Aj19UBKDTfpeicQ1ZTg60VnVwIL0KLi4xBWYWEF5JZJKLen5Ze1N0h9wDPfUDg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tx7QV664FzGvM; Fri, 15 Mar 2024 15:26: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 42FFQw5H047701; Fri, 15 Mar 2024 15:26:58 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FFQwmJ047698; Fri, 15 Mar 2024 15:26:58 GMT (envelope-from git) Date: Fri, 15 Mar 2024 15:26:58 GMT Message-Id: <202403151526.42FFQwmJ047698@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 1b38f851d809 - main - nvmecontrol: Update the test for a valid firmare revision slot List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1b38f851d809950cfe112c705029f40edd0579b3 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=1b38f851d809950cfe112c705029f40edd0579b3 commit 1b38f851d809950cfe112c705029f40edd0579b3 Author: John Baldwin AuthorDate: 2024-03-15 15:18:47 +0000 Commit: John Baldwin CommitDate: 2024-03-15 15:18:47 +0000 nvmecontrol: Update the test for a valid firmare revision slot Reported by: Coverity Scan CID: 1539214 Fixes: 7485926e09a0 nvme: Firmware revisions in the firmware slot info logpage are ASCII strings --- sbin/nvmecontrol/firmware.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/nvmecontrol/firmware.c b/sbin/nvmecontrol/firmware.c index 9e60bd0cee37..9ce2daf28d65 100644 --- a/sbin/nvmecontrol/firmware.c +++ b/sbin/nvmecontrol/firmware.c @@ -104,7 +104,7 @@ slot_has_valid_firmware(int fd, int slot) read_logpage(fd, NVME_LOG_FIRMWARE_SLOT, NVME_GLOBAL_NAMESPACE_TAG, 0, 0, 0, &fw, sizeof(fw)); - if (fw.revision[slot-1] != 0LLU) + if (fw.revision[slot-1][0] != '\0') has_fw = true; return (has_fw); From nobody Fri Mar 15 17:10:38 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tx9k62cvxz5Dmsp; Fri, 15 Mar 2024 17:10: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 4Tx9k629klz4m6B; Fri, 15 Mar 2024 17:10:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710522638; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nXdgPSwbmGDLYktzR2KSG+fsB84oR/CXylGbtc2Ux8g=; b=Xeg7yfNCWTEsCAq9OJiWByz+fWL6nmQ1i0Me7A2rL9LPCajL6jwXZN88EtM0wV6BFOqEG3 uTxaO6R3dNsnMDrLuPpRsx4OpkXiFt7y8Rhyta4G2YmLXzAqBM4F6QvyuxwjjVAB6WBy8c D4fi8hzYzk+7fAvNvyL+v/lS0eVh0OdekuULFgghC67JivDuXYPnqGEjRnwIbRpy8itTGQ Vg6CxFqEbTSw+ZdTNdQpcca0MdOQORL8doOKsbY5eOrQ8+rOv/Ubod4RtuChxipowwxoy0 /Wxl31oN7T1mrnAd2NKKRHW8T0fCCX3VEPTYxpK/KCbt20dBvzz/bgNqXKzwHw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710522638; a=rsa-sha256; cv=none; b=EIibesInXNHpHU6gTh+E3oXrMmITkC184vjsJX/7DD1EzKtgMOlZkupY1+HJ4ENGQxk0sz FC1jxrGGlJg1jKeXCB59nNue/lnySCS4wIHnKCr+hq9xtz5RpKIFgough/N5PM5JeUaZ9t G0nngCz9IU0Bmpb6B7/cyRPbHNu0YXWFV4zUYKWp9dWTWcb1vZ1nr31P/aCm9sUolH9zVo vWGVAdRGQFi3PUqKWUFVQXcZlgh1cP5pE/6vDHtP1yIeGfbFXEvvn7MJbgX0VfvU1Bhkfa dJjoxXv4fbM9HkAx11C/ikJxm5s3Ehkcf1R42gIolJOzSnWSFe75QjseFgcS5Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710522638; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nXdgPSwbmGDLYktzR2KSG+fsB84oR/CXylGbtc2Ux8g=; b=UkYX7XwQl2Rbbi7zSv8hEJrJpQa4AnceTZIsyQrJEA6Aks/07bjiDbnnD7tBf1viPyD2yX ko2qSIK+1BpCEEPwzQgYjVFLgY/8FsnEfsKIt+ctko5crC4/p4pNdhMCooufAJtmYmLkbO LGAet1T/Y0aLc8pFi9dQjWPwnGklY1KvcpXPk97RB4l4v6b2pJChEh2yyBV6DRqhsrVraz XQHwObPrrq9iHLvt0VYq3XhTTFWMaMsaIFw6coRU1wj54Pqkbq3Cm85lBmGiVy0n+5n4rn N8rNHGvpipfMkhQMdeia1hm0wAO1WrTX2F74kzIki7v/a7Fg6TohNDheDcTNVw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tx9k61msTzKSy; Fri, 15 Mar 2024 17:10: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 42FHAcRf026111; Fri, 15 Mar 2024 17:10:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FHAchr026108; Fri, 15 Mar 2024 17:10:38 GMT (envelope-from git) Date: Fri, 15 Mar 2024 17:10:38 GMT Message-Id: <202403151710.42FHAchr026108@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: eab7ae7811f6 - main - arm64 gicv3: Use void pointers instead of vm_offset_t List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: eab7ae7811f6ce2db7721774b1a2b4f6db1d7f8c Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=eab7ae7811f6ce2db7721774b1a2b4f6db1d7f8c commit eab7ae7811f6ce2db7721774b1a2b4f6db1d7f8c Author: John Baldwin AuthorDate: 2024-03-15 17:09:29 +0000 Commit: John Baldwin CommitDate: 2024-03-15 17:09:29 +0000 arm64 gicv3: Use void pointers instead of vm_offset_t This removes the need for local diffs in CheriBSD where vm_offset_t is an address and not the same as a uintptr_t. No functional change. Reviewed by: imp, andrew Sponsored by: University of Cambridge, Google, Inc. Differential Revision: https://reviews.freebsd.org/D44341 --- sys/arm64/arm64/gicv3_its.c | 41 ++++++++++++++++++++--------------------- 1 file changed, 20 insertions(+), 21 deletions(-) diff --git a/sys/arm64/arm64/gicv3_its.c b/sys/arm64/arm64/gicv3_its.c index 9fcf13fe433b..2ad5cce68704 100644 --- a/sys/arm64/arm64/gicv3_its.c +++ b/sys/arm64/arm64/gicv3_its.c @@ -157,7 +157,7 @@ struct its_dev { /* List of assigned LPIs */ struct lpi_chunk lpis; /* Virtual address of ITT */ - vm_offset_t itt; + void *itt; size_t itt_size; }; @@ -221,7 +221,7 @@ struct its_cmd { /* An ITS private table */ struct its_ptable { - vm_offset_t ptab_vaddr; + void *ptab_vaddr; /* Size of the L1 and L2 tables */ size_t ptab_l1_size; size_t ptab_l2_size; @@ -267,7 +267,7 @@ struct gicv3_its_softc { * single copy of each across the interrupt controller. */ uint8_t *sc_conf_base; - vm_offset_t sc_pend_base[MAXCPU]; + void *sc_pend_base[MAXCPU]; /* Command handling */ struct mtx sc_its_cmd_lock; @@ -501,7 +501,7 @@ gicv3_its_table_supports_indirect(struct gicv3_its_softc *sc, int table) static int gicv3_its_table_init(device_t dev, struct gicv3_its_softc *sc) { - vm_offset_t table; + void *table; vm_paddr_t paddr; uint64_t cache, reg, share, tmp, type; size_t its_tbl_size, nitspages, npages; @@ -601,7 +601,7 @@ gicv3_its_table_init(device_t dev, struct gicv3_its_softc *sc) npages = howmany(its_tbl_size, PAGE_SIZE); /* Allocate the table */ - table = (vm_offset_t)contigmalloc_domainset(npages * PAGE_SIZE, + table = contigmalloc_domainset(npages * PAGE_SIZE, M_GICV3_ITS, sc->sc_ds, M_WAITOK | M_ZERO, 0, (1ul << 48) - 1, PAGE_SIZE_64K, 0); @@ -705,7 +705,7 @@ gicv3_its_conftable_init(struct gicv3_its_softc *sc) conf_pa &= GICR_PROPBASER_PA_MASK; /* * If there was a pre-existing PROPBASER, then we need to honor - * it because implemenetation defined behavior in gicv3 makes it + * it because implementation defined behavior in gicv3 makes it * impossible to quiesce to change it out. We will only see a * pre-existing one when we've been kexec'd from a Linux kernel, * or from a LinuxBoot environment. @@ -716,11 +716,11 @@ gicv3_its_conftable_init(struct gicv3_its_softc *sc) * so we panic for this case. */ if (!physmem_excluded(conf_pa, LPI_CONFTAB_SIZE)) - panic("gicv3 PROPBASER needs to reuse %#lx, but not reserved\n", + panic("gicv3 PROPBASER needs to reuse %#lx, but not reserved", conf_pa); conf_va = PHYS_TO_DMAP(conf_pa); if (!pmap_klookup(conf_va, NULL)) - panic("Can't mapped prior LPI mapping into VA\n"); + panic("Cannot map prior LPI mapping into KVA"); conf_table = (void *)conf_va; extra_flags = ITS_FLAGS_LPI_PREALLOC | ITS_FLAGS_LPI_CONF_FLUSH; if (bootverbose) @@ -728,7 +728,6 @@ gicv3_its_conftable_init(struct gicv3_its_softc *sc) "LPI enabled, conf table using pa %#lx va %lx\n", conf_pa, conf_va); } else { - /* * Otherwise just allocate contiguous pages. We'll configure the * PROPBASER register later in its_init_cpu_lpi(). @@ -757,12 +756,12 @@ gicv3_its_pendtables_init(struct gicv3_its_softc *sc) if (CPU_ISSET(i, &sc->sc_cpus) == 0) continue; - sc->sc_pend_base[i] = (vm_offset_t)contigmalloc( + sc->sc_pend_base[i] = contigmalloc( LPI_PENDTAB_SIZE, M_GICV3_ITS, M_WAITOK | M_ZERO, 0, LPI_PENDTAB_MAX_ADDR, LPI_PENDTAB_ALIGN, 0); /* Flush so the ITS can see the memory */ - cpu_dcache_wb_range(sc->sc_pend_base[i], + cpu_dcache_wb_range((vm_offset_t)sc->sc_pend_base[i], LPI_PENDTAB_SIZE); } } @@ -855,14 +854,14 @@ its_init_cpu_lpi(device_t dev, struct gicv3_its_softc *sc) /* Make sure the GIC has seen everything */ dsb(sy); } else { - KASSERT(sc->sc_pend_base[cpuid] == 0, + KASSERT(sc->sc_pend_base[cpuid] == NULL, ("PREALLOC too soon cpuid %d", cpuid)); tmp = gic_r_read_8(gicv3, GICR_PENDBASER); tmp &= GICR_PENDBASER_PA_MASK; if (!physmem_excluded(tmp, LPI_PENDTAB_SIZE)) panic("gicv3 PENDBASER on cpu %d needs to reuse 0x%#lx, but not reserved\n", cpuid, tmp); - sc->sc_pend_base[cpuid] = PHYS_TO_DMAP(tmp); + sc->sc_pend_base[cpuid] = (void *)PHYS_TO_DMAP(tmp); } @@ -1337,7 +1336,7 @@ static bool its_device_alloc(struct gicv3_its_softc *sc, int devid) { struct its_ptable *ptable; - vm_offset_t l2_table; + void *l2_table; uint64_t *table; uint32_t index; bool shareable; @@ -1392,12 +1391,12 @@ its_device_alloc(struct gicv3_its_softc *sc, int devid) if ((ptable->ptab_share & GITS_BASER_SHARE_MASK) == GITS_BASER_SHARE_NS) shareable = false; - l2_table = (vm_offset_t)contigmalloc_domainset(ptable->ptab_l2_size, + l2_table = contigmalloc_domainset(ptable->ptab_l2_size, M_GICV3_ITS, sc->sc_ds, M_WAITOK | M_ZERO, 0, (1ul << 48) - 1, ptable->ptab_page_size, 0); if (!shareable) - cpu_dcache_wb_range(l2_table, ptable->ptab_l2_size); + cpu_dcache_wb_range((vm_offset_t)l2_table, ptable->ptab_l2_size); table[index] = vtophys(l2_table) | GITS_BASER_VALID; if (!shareable) @@ -1453,10 +1452,10 @@ its_device_get(device_t dev, device_t child, u_int nvecs) * PA has to be 256 B aligned. At least two entries for device. */ its_dev->itt_size = roundup2(MAX(nvecs, 2) * esize, 256); - its_dev->itt = (vm_offset_t)contigmalloc_domainset(its_dev->itt_size, + its_dev->itt = contigmalloc_domainset(its_dev->itt_size, M_GICV3_ITS, sc->sc_ds, M_NOWAIT | M_ZERO, 0, LPI_INT_TRANS_TAB_MAX_ADDR, LPI_INT_TRANS_TAB_ALIGN, 0); - if (its_dev->itt == 0) { + if (its_dev->itt == NULL) { vmem_free(sc->sc_irq_alloc, its_dev->lpis.lpi_base, nvecs); free(its_dev, M_GICV3_ITS); return (NULL); @@ -1464,7 +1463,7 @@ its_device_get(device_t dev, device_t child, u_int nvecs) /* Make sure device sees zeroed ITT. */ if ((sc->sc_its_flags & ITS_FLAGS_CMDQ_FLUSH) != 0) - cpu_dcache_wb_range(its_dev->itt, its_dev->itt_size); + cpu_dcache_wb_range((vm_offset_t)its_dev->itt, its_dev->itt_size); mtx_lock_spin(&sc->sc_its_dev_lock); TAILQ_INSERT_TAIL(&sc->sc_its_dev_list, its_dev, entry); @@ -1495,8 +1494,8 @@ its_device_release(device_t dev, struct its_dev *its_dev) mtx_unlock_spin(&sc->sc_its_dev_lock); /* Free ITT */ - KASSERT(its_dev->itt != 0, ("Invalid ITT in valid ITS device")); - contigfree((void *)its_dev->itt, its_dev->itt_size, M_GICV3_ITS); + KASSERT(its_dev->itt != NULL, ("Invalid ITT in valid ITS device")); + contigfree(its_dev->itt, its_dev->itt_size, M_GICV3_ITS); /* Free the IRQ allocation */ vmem_free(sc->sc_irq_alloc, its_dev->lpis.lpi_base, From nobody Fri Mar 15 17:10:39 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tx9k75NDjz5Dn80; Fri, 15 Mar 2024 17:10: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 4Tx9k731L1z4mDX; Fri, 15 Mar 2024 17:10:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710522639; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5uxyZOHAR3EcxxVKESVggTj6aur6KgRj1EcrPtqCvtA=; b=C05DKTRDuwqwA+rOKU2tgDUk+bYvYJqJTVAtf8L5EdKU7X5tarhu6cZeYM6pKcAR6m4+7m wIK4avGmO+A/B5AJjIoZuHLYNGjRlLu0rzTX3iUNI5uMk4K5vzi1xzjNFJbi6KjVE2weF2 3L+a/Rm1OgLoLflX7SdKC8EQ5StjfCK+ir7ZnHmtqdB6EOEmrsK2PsZ9+qnsZ0NyO3Ih6u n9GUO+I5A7HNmEP4w1HTBcI+ZYxPir1hWRIF1PZQBCRorz62k469nDRWCtRAaBt7rpTTzg x3YkC8CVIPNCUK0/sDEHXMVJDr1tbt3iLu86COFgxiFGAPwJotz2keuv+Z3gXw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710522639; a=rsa-sha256; cv=none; b=yDBD55Ed5dKdCAJ5HyMmxBpPHp2A7tpAfccInIaDQeaXtZ3GuOV138+MdDLvite2SFg7e7 ZsvZJDhZpPaugYCanVxCCNA/o44RNP6mG+bHapP4gJ7Pz57jkrKhagLz2HD+dmyXvNKitA XUodWUQI9PFsOTxK6NfCsP80i136BeeLQZBLd3nJ34PBAcQfNOFB/2Fg4jhCfGC5rIXfPW InV8wggXrX/dbue2xsuW9oQ3FoCPdlIST3Nxbc+R52ASrvgoWrcuEMnGcQQ4Zy1aNGkioz pcgjRLGjE2NLW1XAx2xyMjhVojjujIChyvCf9B5jhyYLhHFOI58UikHgXekI6w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710522639; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5uxyZOHAR3EcxxVKESVggTj6aur6KgRj1EcrPtqCvtA=; b=IBEWTulEpi1ICC18hNtY4p88cn36vRiVhrZGM5H7M9Fpw62lReAw5YV/JIaBDlk8gZrBfo 9zv2jc3OWvmasrJAgVhk/C2GeqdlIpS2BKYlwj7nl5lofcYqtERDzOd2ZEew8caMgwHDzH jArR0JBIrPBHRcX1D8w5MDdY0EyPe4WISApTRJoNLzSW6NXMlw+c78z+onA8pyJ30mxQev s5CG0qx4bJjQLdRNwv2DXH+p92GluwlT0QTzYyf9q3ruuhdgr7tPBqJTO2r2RY4OEZP2/0 SPOzpPM7EU1dhGL1AIDRfRLJOwbPqKZja9rNEHeYn2RAKsZlUkbISGqCNNOtDA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tx9k72cbszKNC; Fri, 15 Mar 2024 17:10: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 42FHAdkg026170; Fri, 15 Mar 2024 17:10:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FHAdCD026166; Fri, 15 Mar 2024 17:10:39 GMT (envelope-from git) Date: Fri, 15 Mar 2024 17:10:39 GMT Message-Id: <202403151710.42FHAdCD026166@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 1e3f42b6bad5 - main - arm64: Switch the address argument to cpu_*cache* to a pointer List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1e3f42b6bad58f001b9c88404bd818991f34d398 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=1e3f42b6bad58f001b9c88404bd818991f34d398 commit 1e3f42b6bad58f001b9c88404bd818991f34d398 Author: John Baldwin AuthorDate: 2024-03-15 17:09:49 +0000 Commit: John Baldwin CommitDate: 2024-03-15 17:09:49 +0000 arm64: Switch the address argument to cpu_*cache* to a pointer No functional change, but this reduces diffs with CheriBSD downstream. Reviewed by: andrew Sponsored by: University of Cambridge, Google, Inc. Differential Revision: https://reviews.freebsd.org/D44342 --- sys/arm64/arm64/busdma_bounce.c | 18 +++++++++--------- sys/arm64/arm64/cpufunc_asm.S | 14 +++++++------- sys/arm64/arm64/db_interface.c | 2 +- sys/arm64/arm64/elf_machdep.c | 2 +- sys/arm64/arm64/freebsd32_machdep.c | 3 ++- sys/arm64/arm64/gicv3_its.c | 17 ++++++++--------- sys/arm64/arm64/identcpu.c | 2 +- sys/arm64/arm64/pmap.c | 16 +++++++++------- sys/arm64/include/cpufunc.h | 16 ++++++++-------- sys/arm64/include/kdb.h | 2 +- sys/cddl/dev/fbt/aarch64/fbt_isa.c | 2 +- sys/cddl/dev/kinst/aarch64/kinst_isa.c | 6 ++---- 12 files changed, 50 insertions(+), 50 deletions(-) diff --git a/sys/arm64/arm64/busdma_bounce.c b/sys/arm64/arm64/busdma_bounce.c index ec2dfe76894c..e62794da2753 100644 --- a/sys/arm64/arm64/busdma_bounce.c +++ b/sys/arm64/arm64/busdma_bounce.c @@ -985,15 +985,15 @@ bounce_bus_dmamap_unload(bus_dma_tag_t dmat, bus_dmamap_t map) } static void -dma_preread_safe(vm_offset_t va, vm_size_t size) +dma_preread_safe(char *va, vm_size_t size) { /* * Write back any partial cachelines immediately before and * after the DMA region. */ - if (va & (dcache_line_size - 1)) + if (!__is_aligned(va, dcache_line_size)) cpu_dcache_wb_range(va, 1); - if ((va + size) & (dcache_line_size - 1)) + if (!__is_aligned(va + size, dcache_line_size)) cpu_dcache_wb_range(va + size, 1); cpu_dcache_inv_range(va, size); @@ -1030,7 +1030,7 @@ dma_dcache_sync(struct sync_list *sl, bus_dmasync_op_t op) switch (op) { case BUS_DMASYNC_PREWRITE: case BUS_DMASYNC_PREWRITE | BUS_DMASYNC_PREREAD: - cpu_dcache_wb_range(va, len); + cpu_dcache_wb_range((void *)va, len); break; case BUS_DMASYNC_PREREAD: /* @@ -1043,11 +1043,11 @@ dma_dcache_sync(struct sync_list *sl, bus_dmasync_op_t op) * misalignment. Buffers which are not mbufs bounce if * they are not aligned to a cacheline. */ - dma_preread_safe(va, len); + dma_preread_safe((void *)va, len); break; case BUS_DMASYNC_POSTREAD: case BUS_DMASYNC_POSTREAD | BUS_DMASYNC_POSTWRITE: - cpu_dcache_inv_range(va, len); + cpu_dcache_inv_range((void *)va, len); break; default: panic("unsupported combination of sync operations: " @@ -1097,7 +1097,7 @@ bounce_bus_dmamap_sync(bus_dma_tag_t dmat, bus_dmamap_t map, if (tempvaddr != 0) pmap_quick_remove_page(tempvaddr); if ((map->flags & DMAMAP_COHERENT) == 0) - cpu_dcache_wb_range(bpage->vaddr, + cpu_dcache_wb_range((void *)bpage->vaddr, bpage->datacount); bpage = STAILQ_NEXT(bpage, links); } @@ -1105,7 +1105,7 @@ bounce_bus_dmamap_sync(bus_dma_tag_t dmat, bus_dmamap_t map, } else if ((op & BUS_DMASYNC_PREREAD) != 0) { while (bpage != NULL) { if ((map->flags & DMAMAP_COHERENT) == 0) - cpu_dcache_wbinv_range(bpage->vaddr, + cpu_dcache_wbinv_range((void *)bpage->vaddr, bpage->datacount); bpage = STAILQ_NEXT(bpage, links); } @@ -1114,7 +1114,7 @@ bounce_bus_dmamap_sync(bus_dma_tag_t dmat, bus_dmamap_t map, if ((op & BUS_DMASYNC_POSTREAD) != 0) { while (bpage != NULL) { if ((map->flags & DMAMAP_COHERENT) == 0) - cpu_dcache_inv_range(bpage->vaddr, + cpu_dcache_inv_range((void *)bpage->vaddr, bpage->datacount); tempvaddr = 0; datavaddr = bpage->datavaddr; diff --git a/sys/arm64/arm64/cpufunc_asm.S b/sys/arm64/arm64/cpufunc_asm.S index 8163e6c3d0d0..5a668aeb542e 100644 --- a/sys/arm64/arm64/cpufunc_asm.S +++ b/sys/arm64/arm64/cpufunc_asm.S @@ -104,7 +104,7 @@ ENTRY(arm64_tlb_flushID) END(arm64_tlb_flushID) /* - * void arm64_dcache_wb_range(vm_offset_t, vm_size_t) + * void arm64_dcache_wb_range(void *, vm_size_t) */ ENTRY(arm64_dcache_wb_range) cache_handle_range dcop = cvac @@ -112,7 +112,7 @@ ENTRY(arm64_dcache_wb_range) END(arm64_dcache_wb_range) /* - * void arm64_dcache_wbinv_range(vm_offset_t, vm_size_t) + * void arm64_dcache_wbinv_range(void *, vm_size_t) */ ENTRY(arm64_dcache_wbinv_range) cache_handle_range dcop = civac @@ -120,7 +120,7 @@ ENTRY(arm64_dcache_wbinv_range) END(arm64_dcache_wbinv_range) /* - * void arm64_dcache_inv_range(vm_offset_t, vm_size_t) + * void arm64_dcache_inv_range(void *, vm_size_t) * * Note, we must not invalidate everything. If the range is too big we * must use wb-inv of the entire cache. @@ -131,7 +131,7 @@ ENTRY(arm64_dcache_inv_range) END(arm64_dcache_inv_range) /* - * void arm64_dic_idc_icache_sync_range(vm_offset_t, vm_size_t) + * void arm64_dic_idc_icache_sync_range(void *, vm_size_t) * When the CTR_EL0.IDC bit is set cleaning to PoU becomes a dsb. * When the CTR_EL0.DIC bit is set icache invalidation becomes an isb. */ @@ -142,7 +142,7 @@ ENTRY(arm64_dic_idc_icache_sync_range) END(arm64_dic_idc_icache_sync_range) /* - * void arm64_idc_aliasing_icache_sync_range(vm_offset_t, vm_size_t) + * void arm64_idc_aliasing_icache_sync_range(void *, vm_size_t) * When the CTR_EL0.IDC bit is set cleaning to PoU becomes a dsb. */ ENTRY(arm64_idc_aliasing_icache_sync_range) @@ -154,7 +154,7 @@ ENTRY(arm64_idc_aliasing_icache_sync_range) END(arm64_idc_aliasing_icache_sync_range) /* - * void arm64_aliasing_icache_sync_range(vm_offset_t, vm_size_t) + * void arm64_aliasing_icache_sync_range(void *, vm_size_t) */ ENTRY(arm64_aliasing_icache_sync_range) /* @@ -170,7 +170,7 @@ ENTRY(arm64_aliasing_icache_sync_range) END(arm64_aliasing_icache_sync_range) /* - * int arm64_icache_sync_range_checked(vm_offset_t, vm_size_t) + * int arm64_icache_sync_range_checked(void *, vm_size_t) */ ENTRY(arm64_icache_sync_range_checked) adr x5, cache_maint_fault diff --git a/sys/arm64/arm64/db_interface.c b/sys/arm64/arm64/db_interface.c index 0b1c58ca88a0..1aaec9665550 100644 --- a/sys/arm64/arm64/db_interface.c +++ b/sys/arm64/arm64/db_interface.c @@ -175,7 +175,7 @@ db_write_bytes(vm_offset_t addr, size_t size, char *data) * Ensure the I & D cache are in sync if we wrote * to executable memory. */ - cpu_icache_sync_range(addr, (vm_size_t)size); + cpu_icache_sync_range((void *)addr, (vm_size_t)size); } } (void)kdb_jmpbuf(prev_jb); diff --git a/sys/arm64/arm64/elf_machdep.c b/sys/arm64/arm64/elf_machdep.c index 350651c42723..d5b420a8b519 100644 --- a/sys/arm64/arm64/elf_machdep.c +++ b/sys/arm64/arm64/elf_machdep.c @@ -299,7 +299,7 @@ elf_cpu_load_file(linker_file_t lf) { if (lf->id != 1) - cpu_icache_sync_range((vm_offset_t)lf->address, lf->size); + cpu_icache_sync_range(lf->address, lf->size); return (0); } diff --git a/sys/arm64/arm64/freebsd32_machdep.c b/sys/arm64/arm64/freebsd32_machdep.c index b25ebd50166d..fc979e193d1a 100644 --- a/sys/arm64/arm64/freebsd32_machdep.c +++ b/sys/arm64/arm64/freebsd32_machdep.c @@ -94,7 +94,8 @@ freebsd32_sysarch(struct thread *td, struct freebsd32_sysarch_args *uap) return (error); if ((uint64_t)args.addr + (uint64_t)args.size > 0xffffffff) return (EINVAL); - cpu_icache_sync_range_checked(args.addr, args.size); + cpu_icache_sync_range_checked( + (void *)(uintptr_t)args.addr, args.size); return 0; } case ARM_GET_VFPSTATE: diff --git a/sys/arm64/arm64/gicv3_its.c b/sys/arm64/arm64/gicv3_its.c index 2ad5cce68704..31a0ded6c95d 100644 --- a/sys/arm64/arm64/gicv3_its.c +++ b/sys/arm64/arm64/gicv3_its.c @@ -744,7 +744,7 @@ gicv3_its_conftable_init(struct gicv3_its_softc *sc) LPI_CONFTAB_SIZE); /* Flush the table to memory */ - cpu_dcache_wb_range((vm_offset_t)sc->sc_conf_base, LPI_CONFTAB_SIZE); + cpu_dcache_wb_range(sc->sc_conf_base, LPI_CONFTAB_SIZE); } static void @@ -761,7 +761,7 @@ gicv3_its_pendtables_init(struct gicv3_its_softc *sc) 0, LPI_PENDTAB_MAX_ADDR, LPI_PENDTAB_ALIGN, 0); /* Flush so the ITS can see the memory */ - cpu_dcache_wb_range((vm_offset_t)sc->sc_pend_base[i], + cpu_dcache_wb_range(sc->sc_pend_base[i], LPI_PENDTAB_SIZE); } } @@ -1158,7 +1158,7 @@ gicv3_its_disable_intr(device_t dev, struct intr_irqsrc *isrc) if ((sc->sc_its_flags & ITS_FLAGS_LPI_CONF_FLUSH) != 0) { /* Clean D-cache under command. */ - cpu_dcache_wb_range((vm_offset_t)&conf[girq->gi_lpi], 1); + cpu_dcache_wb_range(&conf[girq->gi_lpi], 1); } else { /* DSB inner shareable, store */ dsb(ishst); @@ -1182,7 +1182,7 @@ gicv3_its_enable_intr(device_t dev, struct intr_irqsrc *isrc) if ((sc->sc_its_flags & ITS_FLAGS_LPI_CONF_FLUSH) != 0) { /* Clean D-cache under command. */ - cpu_dcache_wb_range((vm_offset_t)&conf[girq->gi_lpi], 1); + cpu_dcache_wb_range(&conf[girq->gi_lpi], 1); } else { /* DSB inner shareable, store */ dsb(ishst); @@ -1396,12 +1396,11 @@ its_device_alloc(struct gicv3_its_softc *sc, int devid) ptable->ptab_page_size, 0); if (!shareable) - cpu_dcache_wb_range((vm_offset_t)l2_table, ptable->ptab_l2_size); + cpu_dcache_wb_range(l2_table, ptable->ptab_l2_size); table[index] = vtophys(l2_table) | GITS_BASER_VALID; if (!shareable) - cpu_dcache_wb_range((vm_offset_t)&table[index], - sizeof(table[index])); + cpu_dcache_wb_range(&table[index], sizeof(table[index])); dsb(sy); return (true); @@ -1463,7 +1462,7 @@ its_device_get(device_t dev, device_t child, u_int nvecs) /* Make sure device sees zeroed ITT. */ if ((sc->sc_its_flags & ITS_FLAGS_CMDQ_FLUSH) != 0) - cpu_dcache_wb_range((vm_offset_t)its_dev->itt, its_dev->itt_size); + cpu_dcache_wb_range(its_dev->itt, its_dev->itt_size); mtx_lock_spin(&sc->sc_its_dev_lock); TAILQ_INSERT_TAIL(&sc->sc_its_dev_list, its_dev, entry); @@ -1861,7 +1860,7 @@ its_cmd_sync(struct gicv3_its_softc *sc, struct its_cmd *cmd) if ((sc->sc_its_flags & ITS_FLAGS_CMDQ_FLUSH) != 0) { /* Clean D-cache under command. */ - cpu_dcache_wb_range((vm_offset_t)cmd, sizeof(*cmd)); + cpu_dcache_wb_range(cmd, sizeof(*cmd)); } else { /* DSB inner shareable, store */ dsb(ishst); diff --git a/sys/arm64/arm64/identcpu.c b/sys/arm64/arm64/identcpu.c index 7706c42f7fdb..c93b1292aca1 100644 --- a/sys/arm64/arm64/identcpu.c +++ b/sys/arm64/arm64/identcpu.c @@ -83,7 +83,7 @@ static void check_cpu_regs(u_int cpu, struct cpu_desc *desc, * The default implementation of I-cache sync assumes we have an * aliasing cache until we know otherwise. */ -void (*arm64_icache_sync_range)(vm_offset_t, vm_size_t) = +void (*arm64_icache_sync_range)(void *, vm_size_t) = &arm64_aliasing_icache_sync_range; static int diff --git a/sys/arm64/arm64/pmap.c b/sys/arm64/arm64/pmap.c index 21912535bb6a..ba72f1dac8d0 100644 --- a/sys/arm64/arm64/pmap.c +++ b/sys/arm64/arm64/pmap.c @@ -4738,10 +4738,11 @@ validate: m->md.pv_memattr == VM_MEMATTR_WRITE_BACK && (opa != pa || (orig_l3 & ATTR_S1_XN))) { PMAP_ASSERT_STAGE1(pmap); - cpu_icache_sync_range(PHYS_TO_DMAP(pa), PAGE_SIZE); + cpu_icache_sync_range((void *)PHYS_TO_DMAP(pa), + PAGE_SIZE); } } else { - cpu_dcache_wb_range(PHYS_TO_DMAP(pa), PAGE_SIZE); + cpu_dcache_wb_range((void *)PHYS_TO_DMAP(pa), PAGE_SIZE); } /* @@ -5006,7 +5007,7 @@ pmap_enter_l2(pmap_t pmap, vm_offset_t va, pd_entry_t new_l2, u_int flags, if ((new_l2 & ATTR_S1_XN) == 0 && (PTE_TO_PHYS(new_l2) != PTE_TO_PHYS(old_l2) || (old_l2 & ATTR_S1_XN) != 0) && pmap != kernel_pmap && m->md.pv_memattr == VM_MEMATTR_WRITE_BACK) { - cpu_icache_sync_range(PHYS_TO_DMAP(PTE_TO_PHYS(new_l2)), + cpu_icache_sync_range((void *)PHYS_TO_DMAP(PTE_TO_PHYS(new_l2)), L2_SIZE); } @@ -5219,7 +5220,7 @@ pmap_enter_quick_locked(pmap_t pmap, vm_offset_t va, vm_page_t m, /* Sync icache before the mapping is stored to PTE */ if ((prot & VM_PROT_EXECUTE) && pmap != kernel_pmap && m->md.pv_memattr == VM_MEMATTR_WRITE_BACK) - cpu_icache_sync_range(PHYS_TO_DMAP(pa), PAGE_SIZE); + cpu_icache_sync_range((void *)PHYS_TO_DMAP(pa), PAGE_SIZE); pmap_store(l3, l3_val); dsb(ishst); @@ -6990,7 +6991,7 @@ pmap_change_props_locked(vm_offset_t va, vm_size_t size, vm_prot_t prot, * the cache. */ if (mode == VM_MEMATTR_UNCACHEABLE) - cpu_dcache_wbinv_range(tmpva, pte_size); + cpu_dcache_wbinv_range((void *)tmpva, pte_size); tmpva += pte_size; } } @@ -7673,7 +7674,7 @@ pmap_sync_icache(pmap_t pmap, vm_offset_t va, vm_size_t sz) ("%s: Address not in canonical form: %lx", __func__, va)); if (ADDR_IS_KERNEL(va)) { - cpu_icache_sync_range(va, sz); + cpu_icache_sync_range((void *)va, sz); } else { u_int len, offset; vm_paddr_t pa; @@ -7686,7 +7687,8 @@ pmap_sync_icache(pmap_t pmap, vm_offset_t va, vm_size_t sz) /* Extract the physical address & find it in the DMAP */ pa = pmap_extract(pmap, va); if (pa != 0) - cpu_icache_sync_range(PHYS_TO_DMAP(pa), len); + cpu_icache_sync_range((void *)PHYS_TO_DMAP(pa), + len); /* Move to the next page */ sz -= len; diff --git a/sys/arm64/include/cpufunc.h b/sys/arm64/include/cpufunc.h index 4062da996ee3..1903af965a68 100644 --- a/sys/arm64/include/cpufunc.h +++ b/sys/arm64/include/cpufunc.h @@ -177,20 +177,20 @@ extern int64_t dczva_line_size; #define cpu_dcache_inv_range(a, s) arm64_dcache_inv_range((a), (s)) #define cpu_dcache_wb_range(a, s) arm64_dcache_wb_range((a), (s)) -extern void (*arm64_icache_sync_range)(vm_offset_t, vm_size_t); +extern void (*arm64_icache_sync_range)(void *, vm_size_t); #define cpu_icache_sync_range(a, s) arm64_icache_sync_range((a), (s)) #define cpu_icache_sync_range_checked(a, s) arm64_icache_sync_range_checked((a), (s)) void arm64_nullop(void); void arm64_tlb_flushID(void); -void arm64_dic_idc_icache_sync_range(vm_offset_t, vm_size_t); -void arm64_idc_aliasing_icache_sync_range(vm_offset_t, vm_size_t); -void arm64_aliasing_icache_sync_range(vm_offset_t, vm_size_t); -int arm64_icache_sync_range_checked(vm_offset_t, vm_size_t); -void arm64_dcache_wbinv_range(vm_offset_t, vm_size_t); -void arm64_dcache_inv_range(vm_offset_t, vm_size_t); -void arm64_dcache_wb_range(vm_offset_t, vm_size_t); +void arm64_dic_idc_icache_sync_range(void *, vm_size_t); +void arm64_idc_aliasing_icache_sync_range(void *, vm_size_t); +void arm64_aliasing_icache_sync_range(void *, vm_size_t); +int arm64_icache_sync_range_checked(void *, vm_size_t); +void arm64_dcache_wbinv_range(void *, vm_size_t); +void arm64_dcache_inv_range(void *, vm_size_t); +void arm64_dcache_wb_range(void *, vm_size_t); bool arm64_get_writable_addr(vm_offset_t, vm_offset_t *); #endif /* _KERNEL */ diff --git a/sys/arm64/include/kdb.h b/sys/arm64/include/kdb.h index e68c81824c15..aa36e7e756f9 100644 --- a/sys/arm64/include/kdb.h +++ b/sys/arm64/include/kdb.h @@ -44,7 +44,7 @@ static __inline void kdb_cpu_sync_icache(unsigned char *addr, size_t size) { - cpu_icache_sync_range((vm_offset_t)addr, size); + cpu_icache_sync_range(addr, size); } static __inline void diff --git a/sys/cddl/dev/fbt/aarch64/fbt_isa.c b/sys/cddl/dev/fbt/aarch64/fbt_isa.c index a3dad017e8b4..30117202f8e7 100644 --- a/sys/cddl/dev/fbt/aarch64/fbt_isa.c +++ b/sys/cddl/dev/fbt/aarch64/fbt_isa.c @@ -77,7 +77,7 @@ fbt_patch_tracepoint(fbt_probe_t *fbt, fbt_patchval_t val) panic("%s: Unable to write new instruction", __func__); *(fbt_patchval_t *)addr = val; - cpu_icache_sync_range((vm_offset_t)fbt->fbtp_patchpoint, 4); + cpu_icache_sync_range(fbt->fbtp_patchpoint, 4); } int diff --git a/sys/cddl/dev/kinst/aarch64/kinst_isa.c b/sys/cddl/dev/kinst/aarch64/kinst_isa.c index bf3ab1d35de3..0e5d5eee2979 100644 --- a/sys/cddl/dev/kinst/aarch64/kinst_isa.c +++ b/sys/cddl/dev/kinst/aarch64/kinst_isa.c @@ -153,8 +153,7 @@ kinst_trampoline_populate(struct kinst_probe *kp) kinst_memcpy(kp->kp_tramp, &kp->kp_savedval, INSN_SIZE); kinst_memcpy(&kp->kp_tramp[INSN_SIZE], &bpt, INSN_SIZE); - cpu_icache_sync_range((vm_offset_t)kp->kp_tramp, - (vm_size_t)KINST_TRAMP_SIZE); + cpu_icache_sync_range(kp->kp_tramp, KINST_TRAMP_SIZE); } /* @@ -241,8 +240,7 @@ kinst_patch_tracepoint(struct kinst_probe *kp, kinst_patchval_t val) if (!arm64_get_writable_addr((vm_offset_t)kp->kp_patchpoint, &addr)) panic("%s: Unable to write new instruction", __func__); *(kinst_patchval_t *)addr = val; - cpu_icache_sync_range((vm_offset_t)kp->kp_patchpoint, - (vm_size_t)INSN_SIZE); + cpu_icache_sync_range(kp->kp_patchpoint, INSN_SIZE); } static void From nobody Fri Mar 15 17:10:40 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tx9k85g6Tz5Dn6M; Fri, 15 Mar 2024 17:10: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 4Tx9k842jbz4mDb; Fri, 15 Mar 2024 17:10:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710522640; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bXkyxXWlrPTFVW7SzL5neDWcoZDHZRF5eg2rwyox0ps=; b=Z+w3MLyck2kWQF2h7vBTv0dhSZQrFmsudleFv90N1zolNy+PvYt61U2TL9vzE98WN/WZI4 PwRsu7UYJuNLz+LEZf90gcW/3PTS6TcILyu0CDKnFnboorr1rTdiXJlfsyB2fMlamNB88D HErGEXoXA/F9g2Uj2uzBykqxMDE+IHOqjGExGlthuxV4fDALpokXK61MwmGXjIEkeq5GLS 29BpdnGeywhdGhrismm8KAPw37lmvaJXgSBCp+Nig+S3pKN/Gmb2yfhiruz53wDRa2NbTU TRvc9/1/hhQurU7ZySruBe/RR8ngvKn1H+n0TUbHR3EUdeRbEtXoDRDe8vYQ0w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710522640; a=rsa-sha256; cv=none; b=OCyljCN8vz0afeEhqY3UY2EGvn+KJ6ng2MHD2bmI4IwryM/x4RHGf8Bd6q5iecgljlc4fu y7h+l9pOz4rpXVXrUuVIfG/PVowMJsk3maMsPpHG8pFCaY4+Dsb0zU7VN3AUSS3JsApwfr 658xwkjwvMKf0ulcmNdvPLyXff9OxGL3kt5B6skvqmyQ9ddqYpELE0ePsIFqUu3qBEN9yh KWDqIjO6kfis09BPB0wsJT7dq5ZGIABN62oRJkR2fc7Fbd2KdJwo16R1hsAcoBMudjJbew fH8DlZh6qEXlEZTCRnLV3/8RRxMMq1Y6MigneGT/HaQjqhgQ746zRSuiNiek5Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710522640; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=bXkyxXWlrPTFVW7SzL5neDWcoZDHZRF5eg2rwyox0ps=; b=edyjNsrZ8BW4czSy7WI9psfSDQapfr77dYwrdCiBzaqgLrJrK/mrruhRmTkVgt6z9dkvid Zwx3WmfW4YkS2H0d4K8+2Hkj5DPj0858S5EqSAsfjMqQyRyCx3JzAyzjNEGQ79FgAxgELF GxK2IZj8HKRaQLdEaM79xcs6/dwGXDnDfjX1mudMdCNSRz0Ua8X3abFS+VRHDLgNDnQUaT kOLLyrKaYh+/1i7VBpwMi8V/tN8nytmx0KP1erHAxTZ3mdiAb69DhVQDMggU8sKq5uohZY 7wk2N4P0XN77sctbigEtabWQIiTzupFPHyZ5oyHvAFZNCd4lYZhvsU1sI4Ca2w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tx9k83gCgzKBM; Fri, 15 Mar 2024 17:10: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 42FHAeWi026218; Fri, 15 Mar 2024 17:10:40 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FHAeSu026215; Fri, 15 Mar 2024 17:10:40 GMT (envelope-from git) Date: Fri, 15 Mar 2024 17:10:40 GMT Message-Id: <202403151710.42FHAeSu026215@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: 66658b0f2775 - main - arm busdma: Fix parameter types to exclusion_bounce_check List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 66658b0f2775824b2a80fb56ca15e6ceae2f8240 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=66658b0f2775824b2a80fb56ca15e6ceae2f8240 commit 66658b0f2775824b2a80fb56ca15e6ceae2f8240 Author: John Baldwin AuthorDate: 2024-03-15 17:10:07 +0000 Commit: John Baldwin CommitDate: 2024-03-15 17:10:07 +0000 arm busdma: Fix parameter types to exclusion_bounce_check These are bus addresses not CPU virtual addresses. Reviewed by: andrew Sponsored by: University of Cambridge, Google, Inc. Differential Revision: https://reviews.freebsd.org/D44343 --- sys/arm/arm/busdma_machdep.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/arm/arm/busdma_machdep.c b/sys/arm/arm/busdma_machdep.c index 9ae74892ebd4..44bc96bed734 100644 --- a/sys/arm/arm/busdma_machdep.c +++ b/sys/arm/arm/busdma_machdep.c @@ -240,7 +240,7 @@ SYSINIT(busdma, SI_SUB_KMEM+1, SI_ORDER_FIRST, busdma_init, NULL); * express, so we take a fast out. */ static int -exclusion_bounce_check(vm_offset_t lowaddr, vm_offset_t highaddr) +exclusion_bounce_check(bus_addr_t lowaddr, bus_addr_t highaddr) { int i; From nobody Fri Mar 15 17:10:41 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tx9k96FNsz5Dn3p; Fri, 15 Mar 2024 17:10: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 4Tx9k955J9z4mPT; Fri, 15 Mar 2024 17:10:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710522641; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NTz7/I5ETGnsZOL5gO0A9Cv5+J2rg9qTRAtw4xeFPj8=; b=K7KT3d/LRAPKZtg87KDjeqia62dB0pLPm54+9QipGLIwep8E402+iAcTVGUBoUbVvPezu2 yd6CWeqDSEBSD30Tv/oNv5JO9c8brsL5BDuZwE71xh1eXrs1+LKb66Ip4NinG5Z8YLVm39 FvD6bEvcCDJ3cORZm9DxFtT2vOR1B0ZlvjHIu+Cl39FtQonXaz5NMXUt1qQMNHeYAbIVb0 WaZJ3OSWoYs6s6uBwRjq66par5D3QtYSX9mTrwoS3h4EK0ykNA3ai0SaI/8I/DipSkmaD4 W9u4XDPA5xkMEJRpp/LRS1KEBLLpw2BVMmU9+lLlRRnY6HVoCHA1Vak/1B/rbA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710522641; a=rsa-sha256; cv=none; b=jj0ZuQOrSEkGk3gj1wBgW+in0ITwNjg6tjWoPU9ePAzY+za4IOgBkIUKLGL77QvgxKebpJ YKBwP3cHEcZbtNWpKSyv7eaLOO2H97P/iK5NZyuB6/clozX1tiSVofalZIaZ//SduRdoM4 /UFuV50gvqFyxlpHA/ZT80a7w3F9o+buc3hx2sOO/mOW7uUYK8jJf9W+Mu3kaDJy+rbjKa pxGVY7F8kA70CmTPGtjQ33SpZASmXEg80Qv6o8duEnKHZg9V1rxWxGuvjaHh5aVztc4IvL tOmZTFh+dj115YaGNxDcfuxqgWP/dbpOHb45Jp47OA26clZR0uuGAHhqKYIdng== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710522641; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=NTz7/I5ETGnsZOL5gO0A9Cv5+J2rg9qTRAtw4xeFPj8=; b=xQWMpYpV84I51oa6CAlSoE9DuXY20+tlO11gLk7w4t7Ssui/CbVi+QGa0TciV61UitPPOo h2fzdCjpI2vfgCTD2NE1M8IWinU406iL1uuhY3MtvXr2tYsjnns9Nnzqp9aYv2Sq0j5ZCl YtL+ChxIqq/SSgtb5fCygDdNuc5ns9CYJ7jL0AuZ5+0kI+BjyyTIvUjDe6VSN+/8gI90nY w1gOIbu9TVMuosYHtzqTEq5jGsSVFf3bXgySyr7mAJGSBEUhMxk0YfKwNAWtnnRIZEEupu pxL5AMHCDEFE3TngEeAcuEMSYJuzfZVYSMKNC5oNTjWHMcolOKs8HefngF0aIQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tx9k94jh0zKc2; Fri, 15 Mar 2024 17:10: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 42FHAfrK026271; Fri, 15 Mar 2024 17:10:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FHAfo6026268; Fri, 15 Mar 2024 17:10:41 GMT (envelope-from git) Date: Fri, 15 Mar 2024 17:10:41 GMT Message-Id: <202403151710.42FHAfo6026268@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: John Baldwin Subject: git: e48770de6831 - main - arm64: Use void pointers for arguments to arm64_get_writable_addr List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: e48770de6831dc152aaeb2c0b70fcfb2a346bb89 Auto-Submitted: auto-generated The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=e48770de6831dc152aaeb2c0b70fcfb2a346bb89 commit e48770de6831dc152aaeb2c0b70fcfb2a346bb89 Author: John Baldwin AuthorDate: 2024-03-15 17:10:24 +0000 Commit: John Baldwin CommitDate: 2024-03-15 17:10:24 +0000 arm64: Use void pointers for arguments to arm64_get_writable_addr No functional change, but this reduces diffs with CheriBSD downstream. Reviewed by: andrew Sponsored by: University of Cambridge, Google, Inc. Differential Revision: https://reviews.freebsd.org/D44344 --- sys/arm64/arm64/db_interface.c | 6 +++--- sys/arm64/arm64/machdep.c | 11 ++++++----- sys/arm64/include/cpufunc.h | 2 +- sys/cddl/dev/fbt/aarch64/fbt_isa.c | 4 ++-- sys/cddl/dev/kinst/aarch64/kinst_isa.c | 4 ++-- 5 files changed, 14 insertions(+), 13 deletions(-) diff --git a/sys/arm64/arm64/db_interface.c b/sys/arm64/arm64/db_interface.c index 1aaec9665550..79e81b210f49 100644 --- a/sys/arm64/arm64/db_interface.c +++ b/sys/arm64/arm64/db_interface.c @@ -155,7 +155,7 @@ int db_write_bytes(vm_offset_t addr, size_t size, char *data) { jmp_buf jb; - void *prev_jb; + void *prev_jb, *kaddr; char *dst; size_t i; int ret; @@ -163,7 +163,7 @@ db_write_bytes(vm_offset_t addr, size_t size, char *data) prev_jb = kdb_jmpbuf(jb); ret = setjmp(jb); if (ret == 0) { - if (!arm64_get_writable_addr(addr, &addr)) { + if (!arm64_get_writable_addr((void *)addr, &kaddr)) { ret = 1; } else { dst = (char *)addr; @@ -175,7 +175,7 @@ db_write_bytes(vm_offset_t addr, size_t size, char *data) * Ensure the I & D cache are in sync if we wrote * to executable memory. */ - cpu_icache_sync_range((void *)addr, (vm_size_t)size); + cpu_icache_sync_range(kaddr, size); } } (void)kdb_jmpbuf(prev_jb); diff --git a/sys/arm64/arm64/machdep.c b/sys/arm64/arm64/machdep.c index 2716182ca442..50b2cd15df3f 100644 --- a/sys/arm64/arm64/machdep.c +++ b/sys/arm64/arm64/machdep.c @@ -424,12 +424,12 @@ init_proc0(vm_offset_t kstack) * read-only, e.g. to patch kernel code. */ bool -arm64_get_writable_addr(vm_offset_t addr, vm_offset_t *out) +arm64_get_writable_addr(void *addr, void **out) { vm_paddr_t pa; /* Check if the page is writable */ - if (PAR_SUCCESS(arm64_address_translate_s1e1w(addr))) { + if (PAR_SUCCESS(arm64_address_translate_s1e1w((vm_offset_t)addr))) { *out = addr; return (true); } @@ -437,7 +437,7 @@ arm64_get_writable_addr(vm_offset_t addr, vm_offset_t *out) /* * Find the physical address of the given page. */ - if (!pmap_klookup(addr, &pa)) { + if (!pmap_klookup((vm_offset_t)addr, &pa)) { return (false); } @@ -445,8 +445,9 @@ arm64_get_writable_addr(vm_offset_t addr, vm_offset_t *out) * If it is within the DMAP region and is writable use that. */ if (PHYS_IN_DMAP(pa)) { - addr = PHYS_TO_DMAP(pa); - if (PAR_SUCCESS(arm64_address_translate_s1e1w(addr))) { + addr = (void *)PHYS_TO_DMAP(pa); + if (PAR_SUCCESS(arm64_address_translate_s1e1w( + (vm_offset_t)addr))) { *out = addr; return (true); } diff --git a/sys/arm64/include/cpufunc.h b/sys/arm64/include/cpufunc.h index 1903af965a68..ba712f48b262 100644 --- a/sys/arm64/include/cpufunc.h +++ b/sys/arm64/include/cpufunc.h @@ -191,7 +191,7 @@ int arm64_icache_sync_range_checked(void *, vm_size_t); void arm64_dcache_wbinv_range(void *, vm_size_t); void arm64_dcache_inv_range(void *, vm_size_t); void arm64_dcache_wb_range(void *, vm_size_t); -bool arm64_get_writable_addr(vm_offset_t, vm_offset_t *); +bool arm64_get_writable_addr(void *, void **); #endif /* _KERNEL */ #endif /* _MACHINE_CPUFUNC_H_ */ diff --git a/sys/cddl/dev/fbt/aarch64/fbt_isa.c b/sys/cddl/dev/fbt/aarch64/fbt_isa.c index 30117202f8e7..4f6d28c2f32b 100644 --- a/sys/cddl/dev/fbt/aarch64/fbt_isa.c +++ b/sys/cddl/dev/fbt/aarch64/fbt_isa.c @@ -71,9 +71,9 @@ fbt_invop(uintptr_t addr, struct trapframe *frame, uintptr_t rval) void fbt_patch_tracepoint(fbt_probe_t *fbt, fbt_patchval_t val) { - vm_offset_t addr; + void *addr; - if (!arm64_get_writable_addr((vm_offset_t)fbt->fbtp_patchpoint, &addr)) + if (!arm64_get_writable_addr(fbt->fbtp_patchpoint, &addr)) panic("%s: Unable to write new instruction", __func__); *(fbt_patchval_t *)addr = val; diff --git a/sys/cddl/dev/kinst/aarch64/kinst_isa.c b/sys/cddl/dev/kinst/aarch64/kinst_isa.c index 0e5d5eee2979..20ca26219a55 100644 --- a/sys/cddl/dev/kinst/aarch64/kinst_isa.c +++ b/sys/cddl/dev/kinst/aarch64/kinst_isa.c @@ -235,9 +235,9 @@ kinst_invop(uintptr_t addr, struct trapframe *frame, uintptr_t scratch) void kinst_patch_tracepoint(struct kinst_probe *kp, kinst_patchval_t val) { - vm_offset_t addr; + void *addr; - if (!arm64_get_writable_addr((vm_offset_t)kp->kp_patchpoint, &addr)) + if (!arm64_get_writable_addr(kp->kp_patchpoint, &addr)) panic("%s: Unable to write new instruction", __func__); *(kinst_patchval_t *)addr = val; cpu_icache_sync_range(kp->kp_patchpoint, INSN_SIZE); From nobody Fri Mar 15 17:33:25 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TxBDg4ZkPz5DppW for ; Fri, 15 Mar 2024 17:33:39 +0000 (UTC) (envelope-from freebsd@oldach.net) Received: from nuc.oldach.net (hmo.in-vpn.de [IPv6:2001:67c:1407:60::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "hmo.in-vpn.de", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TxBDg1cplz4q8Z; Fri, 15 Mar 2024 17:33:39 +0000 (UTC) (envelope-from freebsd@oldach.net) Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of freebsd@oldach.net designates 2001:67c:1407:60::1 as permitted sender) smtp.mailfrom=freebsd@oldach.net Received: from nuc.oldach.net (localhost [127.0.0.1]) by nuc.oldach.net (8.18.1/8.18.1) with ESMTPS id 42FHXPMx046236 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Fri, 15 Mar 2024 18:33:25 +0100 (CET) (envelope-from freebsd@oldach.net) Received: (from hmo@localhost) by nuc.oldach.net (8.18.1/8.18.1) id 42FHXPrI046235; Fri, 15 Mar 2024 18:33:25 +0100 (CET) (envelope-from freebsd@oldach.net) Message-Id: <202403151733.42FHXPrI046235@nuc.oldach.net> Subject: Re: git: db4429d00f0d - stable/13 - linux: require vnet(9) context in ifname_bsd_to_linux_name() In-Reply-To: <202403111612.42BGCrZd000296@gitrepo.freebsd.org> from Gleb Smirnoff at "11 Mar 2024 16:12:53" To: glebius@FreeBSD.org (Gleb Smirnoff) Date: Fri, 15 Mar 2024 18:33:25 +0100 (CET) Cc: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: freebsd@oldach.net (Helge Oldach) X-No-Archive: Yes List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable X-Greylist: inspected by milter-greylist-4.6.4 (nuc.oldach.net [0.0.0.0]); Fri, 15 Mar 2024 18:33:25 +0100 (CET) for IP:127.0.0.1 DOMAIN:localhost HELO:nuc.oldach.net FROM:freebsd@oldach.net RCPT: X-Spamd-Bar: --- X-Spamd-Result: default: False [-3.26 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.96)[-0.965]; R_SPF_ALLOW(-0.20)[+mx:c]; MIME_GOOD(-0.10)[text/plain]; ARC_NA(0.00)[]; ASN(0.00)[asn:29670, ipnet:2001:67c:1400::/45, country:DE]; MIME_TRACE(0.00)[0:+]; FROM_NO_DN(0.00)[]; MISSING_XM_UA(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; MLMMJ_DEST(0.00)[dev-commits-src-all@FreeBSD.org]; MID_RHS_MATCH_FROMTLD(0.00)[]; TO_DN_NONE(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DMARC_NA(0.00)[oldach.net]; RCVD_TLS_LAST(0.00)[]; RCPT_COUNT_THREE(0.00)[4] X-Rspamd-Queue-Id: 4TxBDg1cplz4q8Z Gleb Smirnoff wrote on Mon, 11 Mar 2024 17:12:53 +0100 (CET): > The branch stable/13 has been updated by glebius: >=20 > URL: https://cgit.FreeBSD.org/src/commit/?id=3Ddb4429d00f0d95a1532f8707f8= b828a744586dc7 >=20 > commit db4429d00f0d95a1532f8707f8b828a744586dc7 > Author: Gleb Smirnoff > AuthorDate: 2024-03-03 20:56:58 +0000 > Commit: Gleb Smirnoff > CommitDate: 2024-03-11 16:12:36 +0000 >=20 > linux: require vnet(9) context in ifname_bsd_to_linux_name() > =20 > This function is used by netlink(9) only. The netlink(9) taskqueue t= hread > runs in the vnet of the socket whose request the thread is processing > right now. This is a correct vnet and resetting it to vnet0 is incor= rect. > If the function is to be used by any other caller in addition to > netlink(9), it would be caller's responsiblity to provide correct vne= t(9). > =20 > Reviewed by: melifaro, dchagin > Differential Revision: https://reviews.freebsd.org/D44191 > PR: 277286 > =20 > (cherry picked from commit 2f5a315b307447f91891c96fb23c7333fa406f2f) > --- > sys/compat/linux/linux.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) >=20 > diff --git a/sys/compat/linux/linux.c b/sys/compat/linux/linux.c > index 6191372b6312..141fa715c7c1 100644 > --- a/sys/compat/linux/linux.c > +++ b/sys/compat/linux/linux.c > @@ -250,14 +250,14 @@ ifname_bsd_to_linux_name(const char *bsdname, char = *lxname, size_t len) > struct ifnet *ifp; > int ret; > =20 > + CURVNET_ASSERT_SET(); > + > ret =3D 0; > - CURVNET_SET(TD_TO_VNET(curthread)); > NET_EPOCH_ENTER(et); > ifp =3D ifunit(bsdname); > if (ifp !=3D NULL) > ret =3D ifname_bsd_to_linux_ifp(ifp, lxname, len); > NET_EPOCH_EXIT(et); > - CURVNET_RESTORE(); > return (ret); > } This bails out when option VIMAGE is not included: =3D=3D=3D> linux (all) =3D=3D=3D> linux64 (all) =3D=3D=3D> linux_common (all) cc -target x86_64-unknown-freebsd13.3 --sysroot=3D/usr/obj/usr/src/amd64.am= d64/tmp -B/usr/obj/usr/src/amd64.amd64/tmp/usr/bin -O2 -pipe -fno-common = -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE -DKLD_TIED -nostdinc = -DHAVE_KERNEL_OPTION_HEADERS -i= nclude /usr/obj/usr/src/amd64.amd64/sys/HMO/opt_global.h -I. -I/usr/src/sys= -I/usr/src/sys/contrib/ck/include -fno-common -g -fno-omit-frame-pointer -= mno-omit-leaf-frame-pointer -fdebug-prefix-map=3D./machine=3D/usr/src/sys/a= md64/include -fdebug-prefix-map=3D.= /x86=3D/usr/src/sys/x86/include -I/usr/obj/usr/src/amd64.amd64/sys/HMO = -MD -MF.depend.linux.o -MTlinux.o -mcmodel=3Dkernel -mno-red-zone -mno-mmx= -mno-sse -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -fwr= apv -fstack-protector -Wall -Wstr= ict-prototypes -Wmissing-prototypes -Wpointer-arith -Wcast-qual -Wundef -Wn= o-pointer-sign -D__printf__=3D__freebsd_kprintf__ -Wmissing-include-dirs -f= diagnostics-show-option -Wno-unknown-pragmas -Wno-error=3Dtautological-comp= are -Wno-error=3Dempty-body -Wno-er= ror=3Dparentheses-equality -Wno-error=3Dunused-function -Wno-error=3Dpointe= r-sign -Wno-error=3Dshift-negative-value -Wno-address-of-packed-member -Wno= -error=3Darray-parameter -Wno-error=3Ddeprecated-non-prototype -Wno-error= =3Dstrict-prototypes -Wno-error=3Dunused-but-se= t-variable -Wno-error=3Dunused-but-set-variable -Wno-format-zero-length -= mno-aes -mno-avx -std=3Diso9899:1999 -c /usr/src/sys/compat/linux/linux.c = -o linux.o /usr/src/sys/compat/linux/linux.c:253:2: error: call to undeclared function= 'CURVNET_ASSERT_SET'; ISO C99 and later do not support implicit function d= eclarations [-Werror,-Wimplicit-function-declaration] 253 | CURVNET_ASSERT_SET(); | ^ 1 error generated. *** Error code 1 Stop. make[4]: stopped in /usr/src/sys/modules/linux_common *** Error code 1 Stop. make[3]: stopped in /usr/src/sys/modules *** Error code 1 Stop. make[2]: stopped in /usr/obj/usr/src/amd64.amd64/sys/HMO *** Error code 1 Stop. make[1]: stopped in /usr/src *** Error code 1 Stop. make: stopped in /usr/src IMHO same behaviour with 14. Kind regards Helge From nobody Fri Mar 15 17:59:08 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TxBp43Mknz5DrhP; Fri, 15 Mar 2024 17:59: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 4TxBp42PVpz4rhf; Fri, 15 Mar 2024 17:59:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710525548; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VjBofwAlXEtry7AOyN/rUpsDLjL0R7phNOaj++K5DGg=; b=EF9qIdpUzpwd+rV7foZxksTJPjTDqqsqTn5se76rT/yMb0x/Q9grRzytVTojX0xqlAEfBa PYNbyrgRYTErheqh16w3eTUqDmwAYUfD5XNLlsXm45dEfzGUiSe6u5RtwA5IiK0Kbw12lR zdeZlG/glzrvL8O+EMdcku+3YuM2IVEN/VR7dEbyHFJcu/G16GPvEAbZWr8MvOMZ9VxKN5 ZBw+Wi53vqzz1pueOSQwccz2eF2AN76DMctuixrltKYSrUkhmfBizUmYOHQR40YeBkcpLG i5MV+70Lbob24FaaAdi2878VBIdj5Fyt66gmxXv/5zu/D3ZbucHWazRaKeU7VQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710525548; a=rsa-sha256; cv=none; b=tStQLqe8up9ORW4wNUsA/UrkvHPakBJQ7xgBCMTTt/wdx13nEFHpuprys8r8MNPfHfpKOh qkeFpP40W0pjiatkEDmjIHzrqKYRFrO+tlsnpNIHgmLlYa0cGVO1Nx0a+4lj4Uz4iTJpod vSSUEp17R68CrjbEir0JBGigVUbZZCa0WxbNFbMC465HENyur7W4OOt2gu5vPZ5cn5sVcw v42apKNRQ0aMMrAVnN3Kiyel5+yB/czkmoE3nUMEmqZbM1FUxgM4xkyQp/EFZaS9lhStFu x1dkf0JS695gcIBrnKLKO4FnvYlyzhNo+Mqzm2d8cokCflnf470UzpBsduiqRw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710525548; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=VjBofwAlXEtry7AOyN/rUpsDLjL0R7phNOaj++K5DGg=; b=HraOamGspNq/bTyOMIsO6c7SblO4scvpPCm7etFJ1fKsqs20EIUSl3WqvJaPrUeXpx6rry OkN8BDcxOtQ9Cj0L3+FosTBK4qeIIl47ms0JSXOKNrtIZj6aXDdIzslB7FAOtgb48XnTSa eIG9WGp65ErEOuGm2w/hXJ1PcZO0+mIqpzWzBjVzof8WaMQ3KRi3stHDdmbVGnw0ijkuh3 /KApwmlj9Nr+h79hGMMXzErsNMpMy533asksnCrSSLhOndeksOomx/cAhqWn3Zd7t1T9a1 EvML/Z0DNz1pxF17B3hpqv64/fgJXaYAQcK/d0wO3zLiX3hz34ap4Lp7FddTFA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TxBp41tPzzLhh; Fri, 15 Mar 2024 17:59: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 42FHx8p1000154; Fri, 15 Mar 2024 17:59:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FHx8Wi000151; Fri, 15 Mar 2024 17:59:08 GMT (envelope-from git) Date: Fri, 15 Mar 2024 17:59:08 GMT Message-Id: <202403151759.42FHx8Wi000151@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Gleb Smirnoff Subject: git: d68ccfb4ea2b - stable/13 - vnet: add CURVNET_ASSERT_SET for !VIMAGE List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: d68ccfb4ea2bf5245df1267377c35d9727c38264 Auto-Submitted: auto-generated The branch stable/13 has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=d68ccfb4ea2bf5245df1267377c35d9727c38264 commit d68ccfb4ea2bf5245df1267377c35d9727c38264 Author: Mateusz Guzik AuthorDate: 2022-02-19 21:00:00 +0000 Commit: Gleb Smirnoff CommitDate: 2024-03-15 17:58:54 +0000 vnet: add CURVNET_ASSERT_SET for !VIMAGE Reported by: ler Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 430e0e409ce94246bb252cbdddef866fc69dea95) --- sys/net/vnet.h | 1 + 1 file changed, 1 insertion(+) diff --git a/sys/net/vnet.h b/sys/net/vnet.h index fb26077e694c..f15669bca61a 100644 --- a/sys/net/vnet.h +++ b/sys/net/vnet.h @@ -399,6 +399,7 @@ do { \ #define CURVNET_SET(arg) #define CURVNET_SET_QUIET(arg) #define CURVNET_RESTORE() +#define CURVNET_ASSERT_SET() \ #define VNET_LIST_RLOCK() #define VNET_LIST_RLOCK_NOSLEEP() From nobody Fri Mar 15 19:17:50 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TxDXt4b00z5DyqN; Fri, 15 Mar 2024 19:17: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 4TxDXt43Vjz4265; Fri, 15 Mar 2024 19:17:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710530270; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CMNr3AXQjqnm5wDjfSmHObceeTmNll/4G95jN9NmxFQ=; b=UPCzv3z/1IRfSydTMIBIc3kNVXvpJ5DaBfdtFd0FNOmWKTtFH6AdUsGZ2PmYmw8P2xxJCd rL2P37r0jd2efS6tMrcQi7fDV48RY71steSdq+zPMxvglTJR7F3xqO+sZDjX8MghK5DPD6 MtV7OFSONrHoiMCF3dSnHSiRfYsxQ7SgVfvteRFYCibaN/Yt2tHRCuv/S7UXtJjmEPoBlJ JnSOtlsE6woC/6ponjos7urDlwEOMBbWRT+BSkYed2KTHFn6XlDcZ6ajSb6yHJQAjvIruq Or82DKLXPnP0Q5VSnSJ9W0LU66VxmulAw5mjGcjqGReWqBF5+Cl8fJA7ObQdEg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710530270; a=rsa-sha256; cv=none; b=WufUgBxpm8EBVlNyWQEr+t7PZNlPJfGV1pUHD6Dgfe5adsGiOrywgFUlf91EJMbLW3UaWJ SAbMSj8rN54uoh8NDD8icRjq7HxvxNZXu5nN2hqQOBIrC9qz31apSzpcBCG8TxiPiKTfyU 1BfYhgHfVEOTb2L0g3emhVqc/zN1gcVFLwX03EGQTmfzxiRQkW03/U4Se6YCeIOl5nchfU 1Ef1Okg9qmpRVWlRuXZjlPk8JlJnMjTFPLp+xgmDn+JvZgO5QWNoympAGSPZ5OZOWi1xwo PW8x9rFJ70Uqn7kRBu0HfEbd7XTixjvkZPaFbZwy6/x91+40XhbrzbsmJhzpFw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710530270; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=CMNr3AXQjqnm5wDjfSmHObceeTmNll/4G95jN9NmxFQ=; b=fLN0BZtofGFNJhRiINXM+1DDCyNwXDgNiXdu5WcHKylGdpFqGq4yNir3lmrp1L4FuddUiG 2lYZR2YZ/uQpitK0+qVngND7ZtfCfl31DsUN7ZR83WCTWfVc3t+SahhGuW/164qIpqXg9h DpYC+G8lTWYEtIl01twR+WyXOHfjct/NuE6Bl0fjgxzmawKxngF8q4nqCC3+XlpB6+EJzW 5chczizb9wY+QUcQrO0Wqiz5oPKijKVsjanj9gi2QdKnomdJYomzNADMb3qDIIUYB5U3i7 OCnFyz2yR1f/PnsoZC0FF44oBKeWwy8MAqOMnKaIo9sz4hwhuayWdDfNx24Usw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TxDXt3XD0zP3J; Fri, 15 Mar 2024 19:17: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 42FJHoDg036596; Fri, 15 Mar 2024 19:17:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FJHoDM036593; Fri, 15 Mar 2024 19:17:50 GMT (envelope-from git) Date: Fri, 15 Mar 2024 19:17:50 GMT Message-Id: <202403151917.42FJHoDM036593@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 2497c70f81b7 - main - vnet: remove unneeded backslash List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2497c70f81b757b8a4e6b642d242f713ecca17fa Auto-Submitted: auto-generated The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=2497c70f81b757b8a4e6b642d242f713ecca17fa commit 2497c70f81b757b8a4e6b642d242f713ecca17fa Author: Gleb Smirnoff AuthorDate: 2024-03-15 19:17:04 +0000 Commit: Gleb Smirnoff CommitDate: 2024-03-15 19:17:04 +0000 vnet: remove unneeded backslash Fixes: 430e0e409ce94246bb252cbdddef866fc69dea95 --- sys/net/vnet.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/net/vnet.h b/sys/net/vnet.h index 5485889ceaa7..670e99a455ae 100644 --- a/sys/net/vnet.h +++ b/sys/net/vnet.h @@ -406,7 +406,7 @@ do { \ #define CURVNET_SET(arg) #define CURVNET_SET_QUIET(arg) #define CURVNET_RESTORE() -#define CURVNET_ASSERT_SET() \ +#define CURVNET_ASSERT_SET() #define VNET_LIST_RLOCK() #define VNET_LIST_RLOCK_NOSLEEP() From nobody Fri Mar 15 21:17:05 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TxHBT2CDGz5Cx1T; Fri, 15 Mar 2024 21:17: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 4TxHBT1lJmz4F3j; Fri, 15 Mar 2024 21:17:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710537425; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w+Mw33F5egx5nvO/9tpnePJc4IOvn5AxmVT3r80WALc=; b=BE95mYVRQF0RU7cLc4TvA8xd/oA48ElvtLEhBLBPHTwBqr83p6d5NQTik5vThTsTVNf9ap hssfiKPSKyAKhWqQLNdkb+8h0+WDBev8Xso3HOHsJVQj6JaVV9A2m7+AFCWpOUgJpyEAuK UAcoXmQXF3lS4L0ysufh0BPL59vBlJ1z2ylClalICSPPguvdNbjyuq86ER01rijeOkhnyQ 4+Rsk88DI6aUpupxGU6e1qGWBQdtu9kEO/prXuC93vlQC1ec9Pu+8vX49d0VZGwi/OUOZE +OdBf+TCLaRg8kN8qpd6CgaH32IM4KXVaSHkot60A/vAEE0D9BzcfVZ0YiPDpw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710537425; a=rsa-sha256; cv=none; b=U1SAWts6PkIcpp6AbN0UxmFGSlhj3HoxWcFtFyaJdle1THDzvsE71Vp+7mZSJ4CS1gnJDB OdjT50nUnI0EbWKFkoAa24rw+Bap6bc8cyX+2M+qaioy6PrE9ZSm95oy52cAl+u4lMaJEu W6OCkcqQ6GGglGJ/Gy/Ta4OGZeEVl5jfaLbpGs+HpGm+UJNygh8zFWdiV2kiBvlzwUznBv PmwkyXWrv6ROpZUBw+MwBOv7RspI8IWibWhXjYXs1ZDWgEbC86nI5MCHpZ5B8nGudM/Mnp XvLSLKs4VEHovUVA+53iB+5smjFAAobdvlf0wSNRGcCxuex7mBj7gU8c/NYPeg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710537425; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=w+Mw33F5egx5nvO/9tpnePJc4IOvn5AxmVT3r80WALc=; b=f1b7sfFiJhj+iDI72BC8KMsNFEAjZe0m/zbuD87tSONJTex4A+usNqF72fCjLENOXwascj 73aBxFB90gNsqbd/3Eil5a57wRMCqcne4vKxYAPgmh3H2zUCWu+8anhqhrc4cy9VNk35rw mS+VsZHgknYT+P6iBGjgVoPH5xKzWaj4ilrOC+U1I2MHEP7ZYntvC59jjHAEXUdSMFMTGZ +2kUN215ct5wgFHrwmZaqPU6egXwfxDiZTJrWmnKvlQAGOKyG56zyorXENTOP+zCYyElAB TLbyY4wdf+CmMjGO1yEumCGhuWcJN8Bxya7rFfWHP+Q5JmV5E1gcU/hGpDEYBQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TxHBT1MMyzRM2; Fri, 15 Mar 2024 21:17: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 42FLH5Cx038964; Fri, 15 Mar 2024 21:17:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FLH5m2038961; Fri, 15 Mar 2024 21:17:05 GMT (envelope-from git) Date: Fri, 15 Mar 2024 21:17:05 GMT Message-Id: <202403152117.42FLH5m2038961@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Benjamin Kaduk Subject: git: 140119a60d96 - main - ifconfig.8: add missing "be" List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bjk X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 140119a60d967a05aafe80550aae28407db5ad79 Auto-Submitted: auto-generated The branch main has been updated by bjk: URL: https://cgit.FreeBSD.org/src/commit/?id=140119a60d967a05aafe80550aae28407db5ad79 commit 140119a60d967a05aafe80550aae28407db5ad79 Author: PauAmma AuthorDate: 2024-03-15 20:59:35 +0000 Commit: Benjamin Kaduk CommitDate: 2024-03-15 21:16:53 +0000 ifconfig.8: add missing "be" Reviewed by: allanjude, bjk MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D44022 --- sbin/ifconfig/ifconfig.8 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/ifconfig/ifconfig.8 b/sbin/ifconfig/ifconfig.8 index 1fe1b1876f81..b88772e0e5e9 100644 --- a/sbin/ifconfig/ifconfig.8 +++ b/sbin/ifconfig/ifconfig.8 @@ -1068,7 +1068,7 @@ Legacy .Cm wds devices have a fixed peer relationship and do not, for example, roam if their peer stops communicating. -For completeness a Dynamic WDS (DWDS) interface may marked as +For completeness a Dynamic WDS (DWDS) interface may be marked as .Fl wdslegacy . .It Cm bssid Request a unique local mac address for the cloned device. From nobody Fri Mar 15 21:53:48 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TxJ0s06T7z5D1TN; Fri, 15 Mar 2024 21:53: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 4TxJ0r6kdkz4LBY; Fri, 15 Mar 2024 21: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=1710539628; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v8VBg3tGT0fUII/n3mOVZjFFWWZWwbXrDP1unkfpRn8=; b=pP7+JfDSW2jA3yurHYCEBJR+kazjMxDjUdLq+RzhHhmFEg11BlURpoNBPjlvxy4MNpdPjx OSWyufFMjNtbq716KPlOnrRFrua7VgMLNAaVW/CF1zuExJXL5MrrPWZ1aGhsuqZoIcWzvz nCq2F2trl/5R7VWFpoAUkG2edwswDdtFTvz9O5Bmn+oHpGZoG5SigpUQdwJF1Ygxsp3UiA aNz6Ps/ZB7CPIgYZ6uHTaQrJGzRI9rP08Zyjvx8D++4ySUvZnjfDK710EQg6iiEEjfXmsL vwHsq5RmEDnt+0qdBvfHnrBO6U0P9Q2kQYTIVHKnz7llA3xAhVDvwTVOcJv/uA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710539628; a=rsa-sha256; cv=none; b=KekS9kZwQATdJtVxlUyjAbC+GTvWtKt9xxM6tQx/FHDnV8XkUDkQzwpnGCr0+ZSGg53uwX rOhFnsDBpisCidHLjk72UkcZfT8HuA3nOUivIFpc1VMoUUnjlj+MARksWGqasSFeE/7OmG DS9LowD9HTwZycU/jx351fdPtWXfILd6KE3cli44eKOGAoZrxVyqeqNtf/VHK+tbeWKhpQ 23epaUN6c2KLIwIizYezXgwUM+q4ZxtcUGSgcJh6BPzYlk1Ol/+FC/04AzxzN0Hxi4AuoE Hf3BI8O9Rf8k/oksDRgFCGyp5GeXPLLnOuqNazqT5WDOnuYOoH2Tl4KN3Qz+Rg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710539628; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=v8VBg3tGT0fUII/n3mOVZjFFWWZWwbXrDP1unkfpRn8=; b=BW+a6J3dkwQKzLsExb2sTYSRl9xigvZQWk7clZzT2yRehJ5lHfP6j4/4GSsFkSWCUJbySS yX9qf5eRxA0NYJbvpFSZjNnkOyjeOMARzGdNg1o904YZ39ekq7L/AS7EX3FINjz8u3TlLC DJMNrzoJd+Un5/rQ5BMT7DFI5OpSa+GwDfqhXuPioYL0Wy41AtM/qU+xg4I2v7X9vbYPdo y6FGzh3vVf3ILHT0PJPaIJBQWMJTHeXbs8TnUarkh5MI9q6MK/N8wP+LWg4TxtUkNsUPD9 ECAqOO6AF+/m1hJ2X4FKKdHNMzJ1EvS3EfOzuPXgO+JMVuMpryFwxWOI8re3bQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TxJ0r6KMlzStH; Fri, 15 Mar 2024 21: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 42FLrmaX005613; Fri, 15 Mar 2024 21: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 42FLrmwu005610; Fri, 15 Mar 2024 21:53:48 GMT (envelope-from git) Date: Fri, 15 Mar 2024 21:53:48 GMT Message-Id: <202403152153.42FLrmwu005610@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "David E. O'Brien" Subject: git: c4ff9276a969 - main - strnlen(3): add HISTORY List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: obrien X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: c4ff9276a969a3a691ee1f336ce4ed6c0c9b0b99 Auto-Submitted: auto-generated The branch main has been updated by obrien: URL: https://cgit.FreeBSD.org/src/commit/?id=c4ff9276a969a3a691ee1f336ce4ed6c0c9b0b99 commit c4ff9276a969a3a691ee1f336ce4ed6c0c9b0b99 Author: David E. O'Brien AuthorDate: 2024-01-30 20:55:20 +0000 Commit: David E. O'Brien CommitDate: 2024-03-15 21:52:47 +0000 strnlen(3): add HISTORY Complete 4b7f35db's HISTORY's train of thought --- lib/libc/string/strlen.3 | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/libc/string/strlen.3 b/lib/libc/string/strlen.3 index b65e7abd6423..91b82a085b01 100644 --- a/lib/libc/string/strlen.3 +++ b/lib/libc/string/strlen.3 @@ -96,3 +96,8 @@ and was ported to .At v7 . The .Fn strnlen +function first appeared in +.Fx 8.0 , +.Ox 4.8 , +and +.Nx 6.0 . From nobody Fri Mar 15 21:53:49 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TxJ0t1tyTz5D1R2; Fri, 15 Mar 2024 21: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 4TxJ0t0LWWz4L3N; Fri, 15 Mar 2024 21:53:50 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710539630; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1mnIlpXfRpjZ+0xny6KRdON08jVGV+qJHGDVCh/MAnM=; b=E4F6yPVA4MKiki4AZM3iaZduNMS5kkIyaowU+aKe05f00CfDPdDOanpvyAoAvzU68vRIYN wis+oGQpQbxutp7K/UOm5R+1lC3eWLOTbk738kN0pO+xxg698WHSDYHrGzLM2SwK4Twl0J IONCcgabbiAmk52pjO9Z91pmh4WqyLGht2xzS3QLykRCbyxAVabFJgM8vXdjfsmJe5E2Yn FB9FIKJHz7lfnRiVQHTDLaDIQno57LGsSu/QfonHb55dz/+hWTE6wq+9RDD/Vu5+vdrbW2 FxksWQ/KEfl1Mwd11Nope4/hRAyHkJI9Gy1a+Qg7RCAnh/rRcxIuY0n1V3nPMA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710539630; a=rsa-sha256; cv=none; b=xl17Cm0EctABZ9aKPiecWgr2JEKPGJbfNgLX8YSAdwlnwzGk0TPI4nH0YxBgSdv5UH/FwS qhC8ElCyv9OTZCwivdUq1s42h73FvpUz7Ys8Jo4zOfmD6/McVxeXY61bf6PjCFQb/cBVIv +HKu2vQK8bRIY0ApDhMZpDplGg6MVgazPf0D0/01xrhrNW7KAhoHiBKXrFr4CJ0TcsNav4 u3/e4itsFIZYMVg8beSEYNC4WNDdu0RhowEGbSHEzVoQf6/cz8IhAZ9vQHuqgidI/Gtp4D aPpdkBb0id9BzfSu6hyBJTm0CqUR071pblj0I7er6NfQVfieWNydlfSANbgN4A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710539630; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1mnIlpXfRpjZ+0xny6KRdON08jVGV+qJHGDVCh/MAnM=; b=tfTWlu0efNwK2y3AYQ2KVdrs9MrB+WPBpfPqGKG/vuCJtV40+8mC9EIMZ6i0fQcAX0gBkP mf67s9e0Gnk8seN5azgW5x/JswLJr6OdQlrFkfdYemYnUPiSP3HyQ04sR7Giz/Pv1A6xk4 QCk1PfDZdtHvSd84kBTwXmCRzYwSlXbjvAyUxoiS8Pnnv+hReXGQI4WDSL/lkQN2mqKmwx DdTG9jibFjOxxmHytuurcP/1t8BsggkKyoRUbGaZtDnL1HZ7oVTt4OU3FDjIqPwrL2H8G6 3nmVmJb8x4ULNxEUNi/g+vkXd3832kdG3BbUGRFiUbPDPBGFwSJssFTK0rOD1Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TxJ0s73b4zStJ; Fri, 15 Mar 2024 21: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 42FLrnlr005654; Fri, 15 Mar 2024 21: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 42FLrnLp005651; Fri, 15 Mar 2024 21:53:49 GMT (envelope-from git) Date: Fri, 15 Mar 2024 21:53:49 GMT Message-Id: <202403152153.42FLrnLp005651@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "David E. O'Brien" Subject: git: 63a6bd2fc8ee - main - SYSCTL(9): correct typo List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: obrien X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 63a6bd2fc8ee7451fdcd236c50056d939cab09d6 Auto-Submitted: auto-generated The branch main has been updated by obrien: URL: https://cgit.FreeBSD.org/src/commit/?id=63a6bd2fc8ee7451fdcd236c50056d939cab09d6 commit 63a6bd2fc8ee7451fdcd236c50056d939cab09d6 Author: David E. O'Brien AuthorDate: 2024-03-15 21:48:17 +0000 Commit: David E. O'Brien CommitDate: 2024-03-15 21:53:10 +0000 SYSCTL(9): correct typo --- share/man/man9/sysctl.9 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/share/man/man9/sysctl.9 b/share/man/man9/sysctl.9 index 83f526b349a1..2a4370a5d67c 100644 --- a/share/man/man9/sysctl.9 +++ b/share/man/man9/sysctl.9 @@ -704,7 +704,7 @@ macro or the function. If the .Fa len -argument in zero, the string length is computed at every access to the OID using +argument is zero, the string length is computed at every access to the OID using .Xr strlen 3 . Use the .Fn SYSCTL_CONST_STRING From nobody Fri Mar 15 22:28:26 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TxJmp2kJGz5D3t1; Fri, 15 Mar 2024 22:28: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 4TxJmp2HBkz4N9y; Fri, 15 Mar 2024 22:28:26 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710541706; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nKulR5e0uTE+MY9MUaNdOs1Bb8tHkMwPIY4grVfAfTM=; b=eKGusNbi46r/+psrO59gfhk47IxT6H8Tq5KcJUEocXiPptv0EX7sPMMH9cMHtdgYBr9t+u ndG8QhCp4SBb5kS84AMEhPTvYjlUm4uZKyPwmak1LsB/KRptgD+xIRgNZluqOw3TJxkzwy uFEL8Tn4Ui4ef3X4IV9Zh1FijeMbzJa5EJ6mm4uwKSpPL5ZeezWafhpUYQNJZevv2FEATZ XsXi+qCYfIEbSAJEtPPMU+mYFyjZ0LTXSVX7uJYtJfAIqTJ8awQA7dLVTgfvs8yv4S6BaX 2sbPILczByA/3MLI2wrv7pE1tQ7uoDTO0WiYHH4oDeWdOoPqVcfg/i1G6w10fA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710541706; a=rsa-sha256; cv=none; b=e/lsPaR5iff8KPpDFbkJLWZqkG5mrj8vX24jRjc/baJQjrmNWgYsb8l6xrTdpvKkuqhQhc jJI8OJolZKt8/6KGJ1U8CXJqZg3omsQ/jpvXJerIuEhlJMFvGBcLpbeIK+kQziY28VyXsx U6Q2kJNgA23HQ+m4Xaf481N4XNM5SdZQJ/dMnFGiYVcXn0AHu7VUZPTuxlDZQWhDDA6rO0 h1cfgfkPB5ZtUKEy5Nb/a4JEFgEWEwX1GB/0DXK7Cuu8o1LVBuXDBqrD5hQl9k1aBn5a10 YrbUiyclmtZuWa9V8HjfiLTH00GoFb2o5LBFoFYhAMFTnVwyBssdwqVLVJ9x0w== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710541706; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=nKulR5e0uTE+MY9MUaNdOs1Bb8tHkMwPIY4grVfAfTM=; b=bKamTFl2O+TU1zPHOFfNaijieBRyFniIpKfIcTRiiw1mVn4fO5qL3VsqL0eVeSvZsu/wM/ /9Wri0A/p1gFnWVPyz51QDkWRcNC+umROEEU2IGERJBTJvhZPhCG/w7Dd6j8Ay4ap9KWId ei+oV8JALgz+zWqbu0C+T7DfU6sUSqavq47DnWWmeR6sGBO4dmiNEnN4tYg1wHwjq46yyQ 7OPuRimUuOLh5Aiatl+jKZSvbhuKx//3NFoyBghY4eel0WyGSvAgQBxkrePHLMNvQovktg 5O2sgeZ9Dqv4e/DG11KviGaywYhlNvUMKkO9xX4izOzS1Er+lPqYx41TCkMi5g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TxJmp1vVHzTrR; Fri, 15 Mar 2024 22:28: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 42FMSQe7056983; Fri, 15 Mar 2024 22:28:26 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FMSQIo056979; Fri, 15 Mar 2024 22:28:26 GMT (envelope-from git) Date: Fri, 15 Mar 2024 22:28:26 GMT Message-Id: <202403152228.42FMSQIo056979@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "David E. O'Brien" Subject: git: 87740ff2ace8 - main - diff(1) add FreeBSD HISTORY List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: obrien X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 87740ff2ace86bbf77820c04531507b59a1db17c Auto-Submitted: auto-generated The branch main has been updated by obrien: URL: https://cgit.FreeBSD.org/src/commit/?id=87740ff2ace86bbf77820c04531507b59a1db17c commit 87740ff2ace86bbf77820c04531507b59a1db17c Author: David E. O'Brien AuthorDate: 2024-03-15 22:26:12 +0000 Commit: David E. O'Brien CommitDate: 2024-03-15 22:26:12 +0000 diff(1) add FreeBSD HISTORY --- usr.bin/diff/diff.1 | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/usr.bin/diff/diff.1 b/usr.bin/diff/diff.1 index 6351c58114e0..29ee32cb8d2b 100644 --- a/usr.bin/diff/diff.1 +++ b/usr.bin/diff/diff.1 @@ -748,3 +748,12 @@ A .Nm command appeared in .At v6 . +The +.Nm +implimentation in +.Fx 1.0 +until +.Fx 11.4 +was GNU diff. This was replaced in +.Fx 12.0 +by a BSD licensed diff implimentation. Some GNU'isms were lost in process. From nobody Fri Mar 15 22:57:07 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TxKPv2fY4z5D6md; Fri, 15 Mar 2024 22:57: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 4TxKPv22W8z4Stw; Fri, 15 Mar 2024 22:57:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710543427; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=35pSxxYlaikBRm08D+Hsa+SLBPakYczgZ8aRYh3GnEo=; b=st/HnZK9HKig4+3gS8glhIJ9cYMhtnPO/62xe+wNknh4YdzV9awCLs1H8NiJ33jvr+Wplw a33cePhB1lgmS5QwXrmZR11CwWJoJqVovSCaVRTrHD5F7VgP2TL9Nw3TJi7mslkqm9cdSs 28gH1NorKEYG6t9G5rOXx3v2DGKNqsjBc/B8JcPFBmikdjD0U/+sy24jmnapYHDQ0QQSlG 3+pA2Mo3Cp8vyvO4PElPj4/6csNk9n5uJLnkyig+RkRUYluTznfTlbwZP4IYqnAyyzqgtE ANhqaozN/Ik4pqUCiGoB6zhilGcsm7Iq2i6Tcmvzon4ifj42WiKStLHpVv9yvQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710543427; a=rsa-sha256; cv=none; b=gW+IHbaoXYicdZ+j9F6ukqIG3b1chwhG4c+iyrniomFekbN0MHEQRqqOSHFDgtNcdEHYbo aqeTT4YSprvpGYzqVa1ULUeQyigo2D32etY8HsxrzDVXFFygwP+JyF90xs+6iMXB6g2Y6X q+6m3cnEImtzqjJeZ0XypwgwxaBntSKgGrLXm0YGngHKFWFYA3kCZw1RgCqrcIAX++VQZU Tz0udAouc7EI8fTKxDpjqbTZpsjg3KAJdyJiDULufR2QF4aIgWYDvTJ4G66JOPlsHbGEIX gGHtslrEuWgm1wMm66o/15gNdcvszaReF1U6/fDt4daLQ+U/5dvDpff0rcoX1Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710543427; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=35pSxxYlaikBRm08D+Hsa+SLBPakYczgZ8aRYh3GnEo=; b=sNzF+7afgZvkPoMQGzj9wsQwTxvRlZ5R/OSYFi3NWILvk9P2xNLRWShrhs4uFN3ZRbD15D I1ZiMB849DTGQApX5nG66EPNHS37UHWgDxyIn7FMPlXRLWT0BZb1VAALMwvifQtuPfmn3O mwGgqpChCzP4pz34e1qWuq3PSXIghkdYKfwiW50t45TLPONtXkF0ZWbvVH9BoEM4HxsyEG oX05tmXV0AXKHhppgHLecsvPIcSL9UDmXQEodTdnxgJnTW0HblWEINzpJCC5z8T/qJNjO+ e/jKG6Z+onvshckaA3csWYf/tD6L5BGBO+u97i2yycSMDsOsnoweRI1aDpmgNQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TxKPv1dqTzWJf; Fri, 15 Mar 2024 22:57: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 42FMv7Sb006859; Fri, 15 Mar 2024 22:57:07 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FMv7v8006856; Fri, 15 Mar 2024 22:57:07 GMT (envelope-from git) Date: Fri, 15 Mar 2024 22:57:07 GMT Message-Id: <202403152257.42FMv7v8006856@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: b12090676c89 - main - lib{c,sys}: correctly expose sched_getcpu List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b12090676c8914ae576d9b5059c0683a7c1c75c5 Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=b12090676c8914ae576d9b5059c0683a7c1c75c5 commit b12090676c8914ae576d9b5059c0683a7c1c75c5 Author: Brooks Davis AuthorDate: 2024-03-15 22:52:07 +0000 Commit: Brooks Davis CommitDate: 2024-03-15 22:52:07 +0000 lib{c,sys}: correctly expose sched_getcpu When moving the implementation, I failed to move the symbol entry. Reviewed by: kib Fixes: 84dd0c080ba5 libc: libc/gen/sched_getcpu_gen.c -> libsys/ Differential Revision: https://reviews.freebsd.org/D44112 --- lib/libc/gen/Symbol.map | 1 - lib/libsys/Symbol.sys.map | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libc/gen/Symbol.map b/lib/libc/gen/Symbol.map index 43d9c36c789e..17d114c96677 100644 --- a/lib/libc/gen/Symbol.map +++ b/lib/libc/gen/Symbol.map @@ -447,7 +447,6 @@ FBSD_1.7 { scandirat; sched_getaffinity; sched_setaffinity; - sched_getcpu; versionsort; __cpuset_alloc; __cpuset_free; diff --git a/lib/libsys/Symbol.sys.map b/lib/libsys/Symbol.sys.map index 8d68d23686a8..822c007d32f1 100644 --- a/lib/libsys/Symbol.sys.map +++ b/lib/libsys/Symbol.sys.map @@ -371,6 +371,7 @@ FBSD_1.7 { fspacectl; kqueuex; membarrier; + sched_getcpu; swapoff; timerfd_create; timerfd_gettime; From nobody Fri Mar 15 23:07:01 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TxKdK2gL0z5D7tx; Fri, 15 Mar 2024 23:07: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 4TxKdK22Ylz4TM8; Fri, 15 Mar 2024 23: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=1710544021; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jSPhoZzzCZiJ+CfxkQDfPS91zxUesdS5HvMiZKghGUE=; b=JEQn4ubBEudzIKlwo67XYmh73wrAmeCi+KkMcMe6hLeQIbvmrZ1fjrPpWnQKM22Yr8Wy6t JDhrMxKwM9IjH8LCXMWHAlvhbCQEda/AoCleKU/S5HE7pm0sptq77xTF1Y0/CAauiOfW/4 MMafAtDQNawdK4RU5spDQNSxCH7opcKmELiwLwEQZ/dRi6g9HyGTZd033KyrVfr6VlLEl9 0a/MpktZ+q8efo6TbgbA/Z0oXV5yDAETxLhD1SWw33P7ZVwzek1zmCBWNZUZ5dE6wIXHoe AmBBgFSM+53IHydXRP2j0YBlFUeGoeXmjdbVZg4uQCABV0jUIkBo+GMhj+MlOg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710544021; a=rsa-sha256; cv=none; b=f03hXpA4LxWzf/y004bJu5i8wXO5fD8YczdaBR6WXrJIP5Lc9HOZ1RDXtpZ2MmpZuVTEvx Mgk3l20emI33w9tOslwW8ZC6GGBAWkNfo/sq50IcIbmXYewna3raofWJpEi76TxliQknO+ aMvUp4eONitbH22ihyXqV7tifuOw9mynhr9akeQJ/wml6Zp8FzUNkylr3ZPo0nUTSPDdBC wHPDDLg07So9Ro6rVKHFAZpUDY0pF8fa0LDPp0DOKWo/emuWdgmuCXozNUVNzo6JN7cQ0C n6Md9t7hpmogXFJioFHRjmKTcN3gh4/mCMEG9uBtfD+9J2xK3dTxV4hgp63aeg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710544021; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jSPhoZzzCZiJ+CfxkQDfPS91zxUesdS5HvMiZKghGUE=; b=El5LPaGhPmt8zW2bQo7OH6K1MzBunajtL1v5gPtikvWaGCR1eWEN06D23sob5vdNCIPYhi QQ1FdCXDVVz1MoYB0+0tSuzD80PaZ+O6xQJS4FQgNKDdd9NBboW4DFVvADwlDJPWhH0jfK dqL1VB+VGZy/ZM1a/HvsXWRQbV4IBBn+edd8ttx8ftk25Vd2TakqOrvDiD2zTI7V+VpEfa pkejOA4oMW6utfX1BAQIBVQDW/5nLoc40oPXRdrSxay9EXxk1/Wys7Zzo4QiBeIP0R1AHD TzN/VbLcDzWOc3zIGYsCHHZ1Rp2WcO55QZ62go6K7Dthehrfk0o/O8Fg/TDOXg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TxKdK1X1wzWBD; Fri, 15 Mar 2024 23: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 42FN71DE024713; Fri, 15 Mar 2024 23: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 42FN71LO024710; Fri, 15 Mar 2024 23:07:01 GMT (envelope-from git) Date: Fri, 15 Mar 2024 23:07:01 GMT Message-Id: <202403152307.42FN71LO024710@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: 66957ade1e57 - main - bsd.opts.mk: drop transtion aid for NO_* options List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 66957ade1e577092badf838ea04b3477ac5ffa0f Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=66957ade1e577092badf838ea04b3477ac5ffa0f commit 66957ade1e577092badf838ea04b3477ac5ffa0f Author: Brooks Davis AuthorDate: 2024-03-15 23:00:46 +0000 Commit: Brooks Davis CommitDate: 2024-03-15 23:00:46 +0000 bsd.opts.mk: drop transtion aid for NO_* options Setting NO_CTF, NO_DEBUG_FILES, NO_INSTALLLIB, NO_MAN, NO_PROFILE, and NO_WARNS was deprecated in 2014 and made an error prior to the 13.0.0 release in commit d3a5bf95f2013af081607abd91b5175f6eafa563. Likewise, NO_WERROR was made an error prior to 13.0.0 in commit 7fa2f2a62f04f095e1e27ad55aa22a8f59b1df8f. Remove this transition aid making these variables no-ops as setting them will result in an error on all supported releases. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44345 --- share/mk/bsd.opts.mk | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/share/mk/bsd.opts.mk b/share/mk/bsd.opts.mk index dcfe64ac1350..38d53cc6bf30 100644 --- a/share/mk/bsd.opts.mk +++ b/share/mk/bsd.opts.mk @@ -112,26 +112,6 @@ __INIT_ALL_DEFAULT= none .include -# -# Supported NO_* options (if defined, MK_* will be forced to "no", -# regardless of user's setting). -# -# These are transitional and will disappaer in the FreeBSD 12. -# -.for var in \ - CTF \ - DEBUG_FILES \ - INSTALLLIB \ - MAN \ - PROFILE \ - WARNS \ - WERROR -.if defined(NO_${var}) -.error NO_${var} is defined, but deprecated. Please use MK_${var}=no instead. -MK_${var}:=no -.endif -.endfor - .include .endif # !_WITHOUT_SRCCONF From nobody Fri Mar 15 23:11:59 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TxKl335Fhz5D8WZ; Fri, 15 Mar 2024 23:11: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 4TxKl32XQcz4VJk; Fri, 15 Mar 2024 23:11:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710544319; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DLBFpvhjfd6lh1K67FLAK1PMbqcB/75Hs6aiPnlGMEU=; b=v1bIcoBXGC9Sm/j4jl1vWwZTl0b7x2th0j6Fjky09261nOzAfi35QMeVHn8obHrgHjfhnq vlnJp9LyaiNoqpJZAX1WL5g5qunN8O1cBBLqoPRjkkpHolEfLv0MFozK6vGxEtlWp4qGeR gF+MqP4nTYSJ/9c0kmlzXQpgZLPjFxbvvctQxoponGixTzsNgWdfeRXv2vCUeL1jx6Hz7M sFBshAzsBcpe0XHhPqir/o3XcyEgo5AnhskZ8rv2A/WAgYeEpVx1hgPrbJTwdY3Br5aFjB DJ8TYwBvS9F1Wz16JdAdwJA+q6wVudu2is16no4VDSsEPtfdwQSUX/MoO6F56A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710544319; a=rsa-sha256; cv=none; b=JHB4zEagkdVKdiCUeWEC4AcVy7j75Bzp3BNx0++hKbBJwDeQVSv0ViGyzA5t6Waax86uWc 8IOq9dRxoKxcmc0xvxU2n/CL3OLjHhl9uEBlxuqeTf5pwItDncf2BZCC8EC2daB6kDch2I TovvnKNxCR9RwxHhJcxIA1erNuEeKiahLTc6xv/LjDoj9wXMsKdIveg5l3eOv12b8YPUl+ 9OAM9/XYzo4hynP7RDM/feQj144Dc/Ba5oHlg7BzSrJtwqzrvnLgAWvMaQLVMNEgSWQ5mj rVaOtLAW8M3j8lIfkx9KPfUOemnrsGSbFncE3fkDC7xfMQ5XywN4ZcrOjyT3qw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710544319; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DLBFpvhjfd6lh1K67FLAK1PMbqcB/75Hs6aiPnlGMEU=; b=QBBh46o+xnoTQNhb/iY035Tm4TUBuH14BIa+jwH/LAqmwPWKPCjmKJMRMEP0Z4M0pocNCI jqlfk7cOQvM48r/DuslOJiDhIQZlJzBHxGmrIJtrQ8tdvoOsEsQEaYGfcXqXqU3kyCScSm E4r4prHnRjKHX/Vu2mpfBl0bMV48bsmyrSJCml7saZfIyrc81emA74IMUEkUb4x3INngJX BZygYgonQR9vd+TJ9NNpW5SMizGBMAFM5EiO7qftnoigFpE+mnCOaJ5Hb+NFA3qQJnnu6k Y8kjNuqUgyF68om0NiVbttO6RvaIhibPG8i0ybMhwiDb1viqAnOpxjz8jytGWw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TxKl327ZLzX44; Fri, 15 Mar 2024 23:11: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 42FNBxaF039444; Fri, 15 Mar 2024 23:11:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42FNBxOL039441; Fri, 15 Mar 2024 23:11:59 GMT (envelope-from git) Date: Fri, 15 Mar 2024 23:11:59 GMT Message-Id: <202403152311.42FNBxOL039441@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Brooks Davis Subject: git: 4517b7a2d540 - main - Add another commit to .git-blame-ignore-revs List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: brooks X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4517b7a2d540d874ad69d397588194715039b7c5 Auto-Submitted: auto-generated The branch main has been updated by brooks: URL: https://cgit.FreeBSD.org/src/commit/?id=4517b7a2d540d874ad69d397588194715039b7c5 commit 4517b7a2d540d874ad69d397588194715039b7c5 Author: Brooks Davis AuthorDate: 2024-03-13 19:02:14 +0000 Commit: Brooks Davis CommitDate: 2024-03-15 23:11:52 +0000 Add another commit to .git-blame-ignore-revs --- .git-blame-ignore-revs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs index 5cc8ba2a300a..13f8bde24bce 100644 --- a/.git-blame-ignore-revs +++ b/.git-blame-ignore-revs @@ -18,6 +18,8 @@ e70ad278f45d72a8209e61a312481910d3e03b45 4ca5df80393e1f2bf6ac26af42fc7246acb59f71 # elfctl whitespace 828e50092ac84f50247fb3f400027fc7510d8141 +# Remove more quotes around Makefile .error/.warn/.info strings. +bca92be68309e9b0c8f1c1c0a9ca87081c4ab27d # regen syscall files after d51198d63b63 2c9764f36b6f20e9a6c71ce64a21988a394050b6 # Remove whitespace at EOL. From nobody Sat Mar 16 01:06:04 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TxNGh4mvGz5DMBx; Sat, 16 Mar 2024 01:06: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 4TxNGh4Gnbz4fWv; Sat, 16 Mar 2024 01:06:04 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710551164; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=je7LMkduv5t27buMd647aOS8Ns8/wxM03KJn3m9who0=; b=sYaKjjMDTxSgTYFHjVBx6CgI6A0z9MI6k9+VT7gnPMBQ2cGO+GL1R2DRG6ORIRYIeMB5R9 S/o6I6pNtVnJIP4cNqgoDL42j4Y9lUKpDOnvs9moMk5dn22Q+EoWlwcfzgn9Nzb7Zos/OR Gus9kThEHJkijZBKPgf+j3P7Rxl05+bHYgvVIaUlmuRUqgZkSJ2E7qy0BuR7YPEFakhfKv ZczcI3hTO39eENbVO+9bWLfLW7FtZsF7P9dG1PdHoCnn7JQ4STDmaNFMLV7gEPSn5zEBhd Ln/saSGvRDVkP3hhWU633NMtmI9NRmGFFlNVnHS4p//CtaLEP/1nInLEB6BnHQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710551164; a=rsa-sha256; cv=none; b=UdaCKW4GJYddtKV4ioca082W8PUSuyTo2EVLcIQoS/E8sGdRHTXSnmS3T8yjRtJPYJ81AX zxOXbxYr7DR4C0Yu5/mKPioQUcDFwuhSD4aZGqUqzGOOkuJ9/4qLgOkU5byojtXUJYtgy8 A9iHTv8mCXIeucgbQW28QlKNHKEof2PcuWFvgcq8sZn+v8Es0ScMRoKWu3WBDF5D0KhiFN AHaCQez1JyMz8PCyLeMzFffSubOcmeMtuZbpfX5/nfxRFa66tX7mnDfQEq6xaQ9Fu6U0vv Rzi/NTOF4ThYRabOnn296NKNY3oNGteolf0Jdgq570N4iHdK+lkdsQCWC9FR7Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710551164; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=je7LMkduv5t27buMd647aOS8Ns8/wxM03KJn3m9who0=; b=uvkyu5aggp3y4XxsNX+elSIsmqkEJkFraFzYKOj/Y83TxXevcSE9N71l+QDV3FBuu5VuB6 TluVMfvQifqkNyIWQnoGyGoQf8VR+0pxM7mtyo4a3wk7C2NNATY7wuaBPKOKC5h1xZp0Dd 9C/Ah5Kq3Iq3L+9TTMaEcDyRS3Q1AwIh6T846NxLrVNj1kW8z1Sh0pfeQXcv/gn/bDjsYi 7sQhxsizWRmeq12rKCjbAvXAeqcvj1a1sMeVn6sxELoTUNm++cm/3E59JjGMiJ9cLQAGB5 +8C+lO9OM2QHNmKK8qbDnCGrgGRQ4gYSq/ntAtTK/BIdH9oXtGi5a02icUVhLA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TxNGh3TRCzZPX; Sat, 16 Mar 2024 01:06: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 42G164jZ026717; Sat, 16 Mar 2024 01:06:04 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42G164vh026714; Sat, 16 Mar 2024 01:06:04 GMT (envelope-from git) Date: Sat, 16 Mar 2024 01:06:04 GMT Message-Id: <202403160106.42G164vh026714@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Rick Macklem Subject: git: 748f56c53f42 - main - nfsd: Add a sysctl to limit NFSv4.2 Copy RPC size List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 748f56c53f4286e0b140c1b779ff8ade1cf4fec9 Auto-Submitted: auto-generated The branch main has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=748f56c53f4286e0b140c1b779ff8ade1cf4fec9 commit 748f56c53f4286e0b140c1b779ff8ade1cf4fec9 Author: Rick Macklem AuthorDate: 2024-03-16 01:04:37 +0000 Commit: Rick Macklem CommitDate: 2024-03-16 01:04:37 +0000 nfsd: Add a sysctl to limit NFSv4.2 Copy RPC size NFSv4.2 supports a Copy operation, which avoids file data being read to the client and then written back to the server, if both input and output files are on the same NFSv4.2 mount for copy_file_range(2). Unfortunately, this Copy operation can take a long time under certain circumstances. If this occurs concurrently with a RPC that requires an exclusive lock on the nfsd such as ExchangeID done for a new mount, the result can be an nfsd "stall" until the Copy completes. This patch adds a sysctl that can be set to limit the size of a Copy operation or, if set to 0, disable Copy operations. The use of this sysctl and other ways to avoid Copy operations taking too long will be documented in the nfsd.4 man page by a separate commit. MFC after: 2 weeks --- sys/fs/nfsserver/nfs_nfsdserv.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/sys/fs/nfsserver/nfs_nfsdserv.c b/sys/fs/nfsserver/nfs_nfsdserv.c index 3daee65ab83a..899e88508b60 100644 --- a/sys/fs/nfsserver/nfs_nfsdserv.c +++ b/sys/fs/nfsserver/nfs_nfsdserv.c @@ -97,6 +97,9 @@ static bool nfsrv_doallocate = false; SYSCTL_BOOL(_vfs_nfsd, OID_AUTO, enable_v42allocate, CTLFLAG_RW, &nfsrv_doallocate, 0, "Enable NFSv4.2 Allocate operation"); +static uint64_t nfsrv_maxcopyrange = SSIZE_MAX; +SYSCTL_U64(_vfs_nfsd, OID_AUTO, maxcopyrange, CTLFLAG_RW, + &nfsrv_maxcopyrange, 0, "Max size of a Copy so RPC times reasonable"); /* * This list defines the GSS mechanisms supported. @@ -5598,10 +5601,11 @@ nfsrvd_copy_file_range(struct nfsrv_descript *nd, __unused int isdgram, void *rl_rcookie, *rl_wcookie; rl_rcookie = rl_wcookie = NULL; - if (nfsrv_devidcnt > 0) { + if (nfsrv_maxcopyrange == 0 || nfsrv_devidcnt > 0) { /* * For a pNFS server, reply NFSERR_NOTSUPP so that the client * will do the copy via I/O on the DS(s). + * If vfs.nfsd.maxcopyrange set to 0, disable Copy. */ nd->nd_repstat = NFSERR_NOTSUPP; goto nfsmout; @@ -5764,7 +5768,15 @@ nfsrvd_copy_file_range(struct nfsrv_descript *nd, __unused int isdgram, nd->nd_repstat = error; } - xfer = len; + /* + * Do the actual copy to an upper limit of vfs.nfsd.maxcopyrange. + * This size limit can be set to limit the time a copy RPC will + * take. + */ + if (len > nfsrv_maxcopyrange) + xfer = nfsrv_maxcopyrange; + else + xfer = len; if (nd->nd_repstat == 0) { nd->nd_repstat = vn_copy_file_range(vp, &inoff, tovp, &outoff, &xfer, COPY_FILE_RANGE_TIMEO1SEC, nd->nd_cred, nd->nd_cred, From nobody Sat Mar 16 01:50:45 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TxPGF3st3z5DRR6; Sat, 16 Mar 2024 01:50: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 4TxPGF2jznz4mCm; Sat, 16 Mar 2024 01:50:45 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710553845; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O9p0P3IPOOFuvSWNm+OjKpb4laJYChMhWbFjuHmXyq4=; b=MPT4mMaPtwawiIsHf1zeZkFwoC6GRzRnUWYviiv46SHbwZ8jztJiBZ2/2pk/2koP6pctio Rh6d825WJ0uOJJK+l0mR9BreKKxr/vUe5tkxvxW2F8YZ6SmoL+fmG0KOZZjueHZWv1PGgC OY8dKDo0hpCHmheVpvfTEaKmXN5mSKD5sBwLO6X2MRbOIRo6FfAHLSsrPAZxdftoMbNsfw +Bd9aBn3gQagcJiPiw/vpNGJahh6UTnPRZFxQp3hPnPR80qe9HBHKw7JmeGhYQOR43XShv w9mQKkWwR8jKL6eGEWtUHNRzy2RKorGWJTKenXlxP6zmlKwQGAjuMzKMRTx8uQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710553845; a=rsa-sha256; cv=none; b=jEGUFgD0MxhRoDb1AfpIp20skL9BzMCxhSvRdEDfjrYpXn+AqgUAYyjJd4Eozfi2zAPeTP gWHJzHXWqbtmmgHsGX7HclNIN5gK2iUXKV+Vf606865RC8gJrwyrj8+pUz07FTd5OqQVVG Nq9qAxxZnieiENXJVpFvDayxSbhj7ePFbeE/4PZPGlEcHQ6Mg2iZFRwVgilmEb7zbWRtmA N8XB6edYOp0/+vzV3FQcm3gYesjERUEez/wlLfjlMh+Nu0WIJLmMUjEnS1xDf4qp3XpzFT wWEk8+Ydhz1r1FOCbLRGxeuqdEeaMnggInjSlx5cCMqMYiKYjkCCV13qV8TDIw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710553845; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=O9p0P3IPOOFuvSWNm+OjKpb4laJYChMhWbFjuHmXyq4=; b=YwUcYdMQtZk2WQxk/1h4OwQBpjtP667DaDWA/vSNTV/IHFdsf41RkhpbexEFruOUx93+Xd tNnrmEbOJ6LsdcSBkqGPawWXedPHg9SpXc7BH8fyaR7AsgFDP0FYJ7kMjNAGK+ypqu3hHj aI3vGTwioLFZ849aaWbZxfME11IozxepQNluGc8s1LeOk3TbzVzJNtk4B7YqZvpuKABkUn dSxsGq9y5Qk4DmtvzwxdPd6F8iCKX6V5Yd17fGWcDf5a7JxUBMzeddNkTBQ0rdJtyq3d+1 9ap8oapEbkYx2M0TjhbKAtAtEF3ElmWaQWxcEu8EpBizPyYH1WVNH+RaAXoEhw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TxPGF2KqrzbRh; Sat, 16 Mar 2024 01:50: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 42G1ojR5003484; Sat, 16 Mar 2024 01:50:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42G1ojxR003481; Sat, 16 Mar 2024 01:50:45 GMT (envelope-from git) Date: Sat, 16 Mar 2024 01:50:45 GMT Message-Id: <202403160150.42G1ojxR003481@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jessica Clarke Subject: git: ce312ef72d91 - main - mandoc: Fix bootstrapping on macOS with Clang 16 / Apple Clang 15 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jrtc27 X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ce312ef72d91888d332f7f042298001794b66914 Auto-Submitted: auto-generated The branch main has been updated by jrtc27: URL: https://cgit.FreeBSD.org/src/commit/?id=ce312ef72d91888d332f7f042298001794b66914 commit ce312ef72d91888d332f7f042298001794b66914 Author: Jessica Clarke AuthorDate: 2024-03-16 01:50:20 +0000 Commit: Jessica Clarke CommitDate: 2024-03-16 01:50:20 +0000 mandoc: Fix bootstrapping on macOS with Clang 16 / Apple Clang 15 macOS, like Linux, does not include an outer const qualifier for its fts_open callback arguments, so -Wincompatible-function-pointer-types also picks this up and breaks the build now Clang 16 makes it an error by default. Extend the existing Linux support to fix this. MFC after: 1 week --- contrib/mandoc/config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/mandoc/config.h b/contrib/mandoc/config.h index 213513f1c87e..91957717b3fc 100644 --- a/contrib/mandoc/config.h +++ b/contrib/mandoc/config.h @@ -13,7 +13,7 @@ #define HAVE_ENDIAN 0 #define HAVE_ERR 1 #define HAVE_FTS 1 -#ifdef __GLIBC__ +#if defined(__GLIBC__) || defined(__APPLE__) #define HAVE_FTS_COMPARE_CONST 0 #else #define HAVE_FTS_COMPARE_CONST 1 From nobody Sat Mar 16 01:50:46 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TxPGG4Zlzz5DRWm; Sat, 16 Mar 2024 01:50: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 4TxPGG3mWcz4mP2; Sat, 16 Mar 2024 01:50:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710553846; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SFmZjt4X133B2nBpz3IrS6jVxJu8Sg1LqITyx6efHO0=; b=V+p+6R0KPAiP9UwtrGYKDFAf5CRoEXMlcLUS2iVPQXsyTGMDUNtgI46wBs50H2U8afDjrC LsJLzBfSeB+a9XObjRDl/Dvqf2bm08vwN7kkD6f+DVn4OmhJKg+JJFtl8tbaYMKSK5fUKK 4siP9mnpfPFFC9RXWzXp999AgSzwXMSjq0eo57MRZXUiYg/RnLloGSNlfz/FG34ldW9Sa/ Kp4N5+OI2e0wA7tQPqmLvru0Gf3VfxaTDTsuAqGDLyi6fEurG/PCsxbSA1JhfusvYYEnlt TtLiYawhRJ3K8I9ufqRTgztZe6fQv+4GoXvL4PvAn9bZletTinzUZSUbqvCE0w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710553846; a=rsa-sha256; cv=none; b=qruSJ9GAjRzPfKEwaP3/2+BkCMF0I3q0xLwZYbrvCfNhwW2bE+ZLmw5/yY84HWEtkRItSk p+plT6jhfELh8mwA2lbOeA7I1tmc+sTC984/jDA0nn9YX+Si/EyOAo/QHnX84ul7WYg4sk TfXJg8YPRHqxOqxvonwiPGX37un6GnKoM7v8y8chXanYLcAHXJzL4S2jx/gQUhHKtaJDCi rNbkhQINTHyX8iv5nT0BPYK9i64aU0kP4vcOYGEMhD0Zg2NQ0soix9DkhhsVNNGQMcXXjG 9PqZJ7z3DTirXWtIRy4GrB7oJhEN1kTmrvREDqkJA7g2ALfJJ7OdlTCX+L1l1Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710553846; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=SFmZjt4X133B2nBpz3IrS6jVxJu8Sg1LqITyx6efHO0=; b=NMatIQARkK+B/1iGNEUFfQx9UDqeDIcDnyl/NviX/PBtvtdY/8BfP0gwRRAllULJ2/z4DR co7x3CibV4hgbrrl16lP6WGTVYpiBWjgw6HlHxFJEgdeXyYEJfSRRMUASMNmXQi0+1C/4t IR4EOxT7PkKOi15MDJXkp2V3/zmNGQ/QRv+GmHhaWzsqUfN7w/3hsqAZJschqAEOQWD/3S pgbkkhv7YcsjOz32UTOQstRI86MTS9auyJpnd1C4hoYQys8qBDJGNEDLEtWBJtDU71waaT ufgzExp9dnWpErhlPLUSzLTLeCZ0w8fLca4JtOUZ6lSLMI1KUj2uH1to9IMbqw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TxPGG3Mmdzbdx; Sat, 16 Mar 2024 01:50: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 42G1ok50003547; Sat, 16 Mar 2024 01:50:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42G1okmT003544; Sat, 16 Mar 2024 01:50:46 GMT (envelope-from git) Date: Sat, 16 Mar 2024 01:50:46 GMT Message-Id: <202403160150.42G1okmT003544@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jessica Clarke Subject: git: d8c84215d767 - main - jevents: Fix bootstrapping on macOS with Clang 16 / Apple Clang 15 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jrtc27 X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d8c84215d7675b7940412122b6d7026bd193c9b5 Auto-Submitted: auto-generated The branch main has been updated by jrtc27: URL: https://cgit.FreeBSD.org/src/commit/?id=d8c84215d7675b7940412122b6d7026bd193c9b5 commit d8c84215d7675b7940412122b6d7026bd193c9b5 Author: Jessica Clarke AuthorDate: 2024-03-16 01:50:20 +0000 Commit: Jessica Clarke CommitDate: 2024-03-16 01:50:20 +0000 jevents: Fix bootstrapping on macOS with Clang 16 / Apple Clang 15 macOS, like Linux, does not include an outer const qualifier for its fts_open callback arguments, so -Wincompatible-function-pointer-types also picks this up and breaks the build now Clang 16 makes it an error by default. Extend the existing Linux support to fix this. MFC after: 1 week --- lib/libpmc/pmu-events/jevents.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/libpmc/pmu-events/jevents.c b/lib/libpmc/pmu-events/jevents.c index 590b465af400..7059b31da2ba 100644 --- a/lib/libpmc/pmu-events/jevents.c +++ b/lib/libpmc/pmu-events/jevents.c @@ -1355,7 +1355,7 @@ err_out: #include static int -#ifdef __GLIBC__ +#if defined(__GLIBC__) || defined(__APPLE__) fts_compare(const FTSENT **a, const FTSENT **b) #else fts_compare(const FTSENT * const *a, const FTSENT * const *b) From nobody Sat Mar 16 01:50:47 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TxPGH5vw3z5DRHx; Sat, 16 Mar 2024 01:50:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TxPGH4nKtz4mCv; Sat, 16 Mar 2024 01:50:47 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710553847; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1KF5zZuFPnvCDfkiodJ/bzEJ0YyR8Yz1o2iEgyN344s=; b=wCJxu3P1dUU+7rR3lZZ55gDDxJZyMEbDv5tfyOIXYTw2ZhiCosoWfaA+LY2oJjWA3yX5SB 1EtJY3vzd9ovBbrSZPsR5dGDdjkPjZkUQEnhrZIq0YSrpFAw1hAfEQzvg4X2zlXBY0VuGe ebrcUg1JeUJSs/9MVN/jrqqCltqspasgswQXb0V6FavgRfoRXfOHuYGGd0TsaNE5X4APR5 e2TwYaLuH0uUl5kacO/oRoI71I2OMKA8z5V3RXaCzqBk8vSodi5JY/VGJ6VIijIeoAHSSO +N+NS7q9ZcffgthqWfIMsodH3IV3ADfY2TqgwdSycxwIk8No/tHs5jMb7u2gsA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710553847; a=rsa-sha256; cv=none; b=TnCfOREJPR9YThDH9J79Yq4BoF0Lpc0p2rcOqefgjKPnk+gvH9wvOUQe/WLEzYLyCjXPcL v2QbRC/sq9UASEX6f3iksSkErlh5EYzemXmU88o2k7zL7tHGLRTc71nLNK4LoXl10xlnFu UOylJv8k5sLKbxev+tKynyTDkoBRj4Fib9Mtcw/cQGYKNb2IjdbSiIw3O80Fc+QzTlCQRI fngFEpz4IM8H8IwmdkEzPR+WiQCMXUh+id9SYVbuitUuKI9SLGAdk2DvqtvIRBWGYB20pm JSiPvyh+vglED+Wpko//HnQ6FA7+HjMtyB7WO1zeqotBM/TovWkcowy2BIfktw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710553847; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1KF5zZuFPnvCDfkiodJ/bzEJ0YyR8Yz1o2iEgyN344s=; b=kMofeWFoTN4ElpDM/yymTCwT/vkLZLpUfkyGM8MtLmzPU8fAfVgYnJvu8kBsdwWz1wNnFC PibxWFC4Iw0QuB4rIHYQZ4kGSWqIXfvw0QuxdseM7c8RHSTHd2O40UoDL6jRJRQ/Ez3ggJ o0TTewv39pv1PPIgc1L/+z+WniHSnOkTjWZmd5lJMfbttqsAK2XeNxwOAlIBzqMYFCPSnY b7bNI3W9ESz4qT/mg7qNVBKUEbUIkhQy4pWUxK5oe8xceBrhKWRzmqfvkY9GMJUpPyZsvY dLW1cUH2JFm8i1dqFplBz5QWpPhQQsYhJdQRaqEeSRFYVLxg3VCBo1s7Wt1VPA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TxPGH4PpWzbYf; Sat, 16 Mar 2024 01:50: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 42G1old6003619; Sat, 16 Mar 2024 01:50:47 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42G1ol8k003616; Sat, 16 Mar 2024 01:50:47 GMT (envelope-from git) Date: Sat, 16 Mar 2024 01:50:47 GMT Message-Id: <202403160150.42G1ol8k003616@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jessica Clarke Subject: git: 75464941dc17 - main - kldxref: Fix bootstrapping on macOS with Clang 16 / Apple Clang 15 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jrtc27 X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 75464941dc17876af2e99ea90c687bd7df873d73 Auto-Submitted: auto-generated The branch main has been updated by jrtc27: URL: https://cgit.FreeBSD.org/src/commit/?id=75464941dc17876af2e99ea90c687bd7df873d73 commit 75464941dc17876af2e99ea90c687bd7df873d73 Author: Jessica Clarke AuthorDate: 2024-03-16 01:50:21 +0000 Commit: Jessica Clarke CommitDate: 2024-03-16 01:50:21 +0000 kldxref: Fix bootstrapping on macOS with Clang 16 / Apple Clang 15 macOS, like Linux, does not include an outer const qualifier for its fts_open callback arguments, so -Wincompatible-function-pointer-types also picks this up and breaks the build now Clang 16 makes it an error by default. Extend the existing Linux support to fix this. MFC after: 1 week --- usr.sbin/kldxref/kldxref.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/kldxref/kldxref.c b/usr.sbin/kldxref/kldxref.c index 969d07e5677a..8f3d24718211 100644 --- a/usr.sbin/kldxref/kldxref.c +++ b/usr.sbin/kldxref/kldxref.c @@ -745,7 +745,7 @@ usage(void) } static int -#ifdef __GLIBC__ +#if defined(__GLIBC__) || defined(__APPLE__) compare(const FTSENT **a, const FTSENT **b) #else compare(const FTSENT *const *a, const FTSENT *const *b) From nobody Sat Mar 16 15:16:11 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Txl7c09tGz5F1Kp; Sat, 16 Mar 2024 15: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 4Txl7b6kktz4Fy6; Sat, 16 Mar 2024 15: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=1710602171; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4hsZwcCrG5LqBAdBSPIZcV/A6Piki1x4+vqAsWEBkKM=; b=goYZxSq6uH9i/H+ci9MUAPfoHuKwtHf3S7mMOSpW4gQlLrJXMBXEDlp8OgUL4sLOCo76JY Cr8Mh9ZzZGzWOvQoZTS7o3feUGOu5XU9aZSwz7amtgqCyh6cQFiu8Kn+CoyBurwPDz/gBS cm2qC1RhkNGLFVHUNhqY1WuE0tg6gMbR5tjy+toK/1yzYOf1tcqz9nTnIa2lW1LOkK4Xhu Ol7m+0MWlR1re/S9nz0g/ZlxnLxaDfHFQzAqkCK1JOcn5EpyPwv9/IdrgEcYXRPKArQEGf nTqJDilLNr4xOE2ZEmfcQtAAkRimssNhUSsVaC+59Hr2rELxGHJGQk5kYzAIQA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710602171; a=rsa-sha256; cv=none; b=kahYXKoWeN4nVcsq94YLPqY1FyYmj35hDY63s61w6CQkPfbjaWhLwXslGccGCUlsguxxku T3LpJx3LhMMk1ZdmkoWucy36A/C7Lw1mn48F17xg+B86kD+XcLOEeFjb7J8ns91MEpd2pR C25LJmwIqCR0gzXeKMV+dFJWMWt0RJEJDSqNmqHfcyMD3ABCbps6NvApD6yNAO73YeDiwp 4QbJmo4kdsTHxmqvZ2UDyGECq1zoXJPR/bl+fBE9s0zqN72eUnr828mXwyYbBbu09oTyc/ +akFBR1YENTP92aQ7Dffanu3XsYeWUyS3bUwaL3DMhrXddUbQvQX9RsHgdhx1Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602171; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4hsZwcCrG5LqBAdBSPIZcV/A6Piki1x4+vqAsWEBkKM=; b=w/4J2cbOGdY8lkMvozEQLGMZ5snxpka4PkYehnc5G2E6t638lWSOHA29vcR0mmuBUhZZ6J HfuW4GQsSnCHmO4tvqQMTjRZq1GWPgQR1m38kV3PYjUENSPwKZzCUgON1YlINaGgsScAXa RjyqhbsokABILUgulh+xKo00iDbNSEuf+xtOXavDWdcY98EviQj4cs3C4iGs/0rP0xtWED FSSgRJdKdfJl1djou7sd5lSEPAOxvVsHtm1Kz9SIVH8HF+RLgeinR4KgtPve7MZCyQMnxc BcNNf7udaXlxbN2VfZMaHofNdw1QmWh9EwTNjzqNb/+ExzxSgyx6k9iRGQAxIg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Txl7b6Kscz110w; Sat, 16 Mar 2024 15: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 42GFGBFC062504; Sat, 16 Mar 2024 15: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 42GFGBbt062501; Sat, 16 Mar 2024 15:16:11 GMT (envelope-from git) Date: Sat, 16 Mar 2024 15:16:11 GMT Message-Id: <202403161516.42GFGBbt062501@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andriy Gapon Subject: git: 98ee1305b692 - stable/14 - ugen: fix USB_IFACE_DRIVER_ACTIVE after detaching a driver List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: avg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 98ee1305b6924675c1dc612dff5f912a5a0d84e1 Auto-Submitted: auto-generated The branch stable/14 has been updated by avg: URL: https://cgit.FreeBSD.org/src/commit/?id=98ee1305b6924675c1dc612dff5f912a5a0d84e1 commit 98ee1305b6924675c1dc612dff5f912a5a0d84e1 Author: Andriy Gapon AuthorDate: 2024-02-19 10:44:00 +0000 Commit: Andriy Gapon CommitDate: 2024-03-16 15:11:37 +0000 ugen: fix USB_IFACE_DRIVER_ACTIVE after detaching a driver Previosuly, USB_IFACE_DRIVER_ACTIVE would report that the driver is active even after it detached. That's because a device(9) still remains. So, add device_is_alive(9) check for more accurate reporting. Reviewed by: markj (cherry picked from commit 8f374fa528d7643919bca1b4153dde03996305fe) --- sys/dev/usb/usb_generic.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/sys/dev/usb/usb_generic.c b/sys/dev/usb/usb_generic.c index d8bc3a828282..c0af27d77e5d 100644 --- a/sys/dev/usb/usb_generic.c +++ b/sys/dev/usb/usb_generic.c @@ -2377,12 +2377,10 @@ ugen_ioctl_post(struct usb_fifo *f, u_long cmd, void *addr, int fflags) break; case USB_IFACE_DRIVER_ACTIVE: - n = *u.pint & 0xFF; - iface = usbd_get_iface(f->udev, n); - - if (iface && iface->subdev) + if (iface != NULL && iface->subdev != NULL && + device_is_alive(iface->subdev)) error = 0; else error = ENXIO; From nobody Sat Mar 16 15:16:12 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Txl7d0wZNz5F1Qq; Sat, 16 Mar 2024 15: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 4Txl7d0Qtdz4Fq9; Sat, 16 Mar 2024 15: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=1710602173; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UYIxytQO0T+OZM/O2PwWZ1zEhwaZKKdiL4kSuOay9ug=; b=EeD9LlCYAj6VvZAJEFxI+0Dz5TYHRhXT9GjfMmUpk3ryO2pV5t0Bgzg3e+5bKFSoyJ+7KC 2Q/WsQ5WdGZSVO7Li8X/H/v8j5Tjxcey0No1Tgi7RCQWFcBYhphhmPu/gRCcexeaqL879D kT6hvO2dYY9Sfu2guiazztTbykn0SE0lRwVvPwTdJKJQik3+g4WM3z6mkIXTv3TEL+Kwpb pXYSw8dB8DZfTb0PLC9txyY0kcTo4CbsqtyhKhgU3M7XHXKy9GNj5o79JRRi6kji5CaJqC NsyUulSCoUkLjuL9pKrDDQGpwhuFmrUzkAvEyxeMAQMnF44XjeDjw9r5tD3Z+g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710602173; a=rsa-sha256; cv=none; b=Fyaj08IuT5VwPOEOLuuTzo+z8HaBk3PJJvEu+9kE0sw7bm45RcJoBus1C8UHxPTBej2v40 IIqDQYvMxfxItXskcLFH88c/2mb7neJZmPRpeuiLUWc1hdkqwS+Jh5dJyO2nG4WGOe2loR my3c6n/sKbKLp7W8K5hF8w3ut0GgQjeifLtfzgFbRJ6+QZmv2/RZjmW9wazcvkgTrSJ66b xyLAo0rqhGVKU8A/IPrpZUE9hiIgMo6mnVvaFFwgm8UjMRfZ1N/epAaj0DhYwqszB4LbXo n2sBU1ZT7E6HSJqOfN0qOmmTkkLE7DgOcqphvjbeHoHhE72mimFDipRW91tylA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602173; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=UYIxytQO0T+OZM/O2PwWZ1zEhwaZKKdiL4kSuOay9ug=; b=GVxxGe6ebJ1sTBVXkrQ0QzJETbEjPjDdzAR03Jaw9HTbS0hWXVc3BLnuC6Zg/hu+6PdFFu 11KauksMJIi3T36W8/qys+tNgYI+aDN7ma/L/e1XJ34kQfpXSX3uTA7dgmtysHWIU5acGo Y3VyScoTIGOHixw481BiO2u/xdup7nyxnZu/mgEfmS4WlLHH++TDV6GTTLG6N7cSQZMFDy EpihPxUmOjOmnSXq49qlCQQQ0ur+st/QOf/sdtBCRCe4ri6B7yXkR0xcez4eq66D/HDdNY nAATWI6jwavKpcW1RHZpw7YVjVhevXCA3RyBZyifKtCtKMgeo1zVn46GyzoGRQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Txl7d02ytz10XS; Sat, 16 Mar 2024 15: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 42GFGC9a062549; Sat, 16 Mar 2024 15: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 42GFGCqI062547; Sat, 16 Mar 2024 15:16:12 GMT (envelope-from git) Date: Sat, 16 Mar 2024 15:16:12 GMT Message-Id: <202403161516.42GFGCqI062547@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andriy Gapon Subject: git: 1269b002038c - stable/14 - rk8xx_poweroff: enable power-cycling on support hardware List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: avg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 1269b002038cead5af35d3fb94a008060246e5f6 Auto-Submitted: auto-generated The branch stable/14 has been updated by avg: URL: https://cgit.FreeBSD.org/src/commit/?id=1269b002038cead5af35d3fb94a008060246e5f6 commit 1269b002038cead5af35d3fb94a008060246e5f6 Author: Andriy Gapon AuthorDate: 2024-02-18 13:57:34 +0000 Commit: Andriy Gapon CommitDate: 2024-03-16 15:11:50 +0000 rk8xx_poweroff: enable power-cycling on support hardware Previously, the function would return early if RB_POWERCYCLE was specified without RB_POWEROFF. Those flags are exclusive at the moment, that is, they are never set together. Søren Schmidt (sos) uses a similar but extended patch locally. (cherry picked from commit 8b408fc6f2f6dab2bfc200edee96917abf425cb2) (cherry picked from commit a044cf60bd375f894b371fc87d148bf4704c05a8) --- sys/dev/iicbus/pmic/rockchip/rk8xx.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/iicbus/pmic/rockchip/rk8xx.c b/sys/dev/iicbus/pmic/rockchip/rk8xx.c index 54f4b289034d..7efa0f879506 100644 --- a/sys/dev/iicbus/pmic/rockchip/rk8xx.c +++ b/sys/dev/iicbus/pmic/rockchip/rk8xx.c @@ -109,7 +109,7 @@ rk8xx_poweroff(void *arg, int howto) int error; uint8_t val; - if ((howto & RB_POWEROFF) == 0) + if ((howto & (RB_POWEROFF | RB_POWERCYCLE)) == 0) return; device_printf(sc->dev, "Powering off...\n"); From nobody Sat Mar 16 15:16:13 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Txl7f44tTz5F1NN; Sat, 16 Mar 2024 15:16: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 4Txl7f16ZVz4G1Q; Sat, 16 Mar 2024 15: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=1710602174; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hXHkl9TgHquos59pwF1hb6O//9sIkJ0fJ4xpM4X1WAk=; b=dZSgGb3X30Se6WWSbDHcGyAT9YT4nmcPhFXsGFFYzeEPlypnpJJ+K57eOTBa2CNffs+QJO 3HbNTnz2+zkcACQgLLyvh/7ZKFmXOHwQyPiFTCoOQtw6wgqnm4uMyEqYRAVfpwpHD7aA0E lRStW2kgjPx0JsetEg9/Aq1LxZJXieiA/c0UcY2fQXuYI3gWm7BVFG7vFZYSula1sQ8pAM cl5e6VdTANv+khSSV/ir8HfQgHI1VRvrwdKN6tUsUlN7fTydOmbbMVO4TxP+uqvNFWJJrX VWQLHf+IM9ScNEZpvixxScvAlzlXRvU3BCki+V48hhr8YRSgwIUO7z+ccVCIRg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710602174; a=rsa-sha256; cv=none; b=YSm/202TXLmaMcLsYr/3R1HPolJ9ym/G51xfu+x4hD1c6k5Rq3cmfTY+bAzJMePoRmVtT8 ohFWCSgOX0OsrQdBIaIZ7hzwakHIxGVryyrIvokbRa4TvtgTSnqqSKVo8l9gzI7wmKVV/W 2ClP1DAedToEFQv1+kopExXGm6n4wSh9CcK2qq8chrbntrSQ3hFQ1ZQkWHPS2a6a8BGX8C KTYGtSVPxD5SNquzxbAD/8uAysI61Q+WTTcg20HghkgQ0uQEdVEIHr7Hb+BgF4d31c1G6q aPEwy+5cq7anRtA4ZbBTyvUlWh0M7wC0vcuqj7MhKA5x62H0TzknSZKud1Gp9g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602174; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=hXHkl9TgHquos59pwF1hb6O//9sIkJ0fJ4xpM4X1WAk=; b=ed9wjJ7n+G5KMuqit2VbDVKTneJiYUxtCpNLmlbkqT+O2CdME6SrU66YqNTx/TlFQIHJRP up7f0fzoHjd7+j4v2au/N9CH4qKQdfLe5+vWsSxNz6DQvzyW3t9mIVt/wtghn++H5bol1s OVf2o3NChEPaWVXaj4m0ZImEVSLclMwvc6fYu10NvPednCFfBL5xFGjrQxhE5R4yFy/Txm GXELod9kTFrM3tw7XWqccMJukiiCEA8wfGigwZ5Y8DLO4/aJ4OjXq7CRB1RgFlCPIE1uEO 34JXlTelsXKpr4dPrXTx7Ox/csa2TZ3+glmScSusMjsq3HJd/RWLSpYfmX0Pxw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Txl7f0hPTz10V8; Sat, 16 Mar 2024 15: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 42GFGD0D062609; Sat, 16 Mar 2024 15: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 42GFGDkl062606; Sat, 16 Mar 2024 15:16:13 GMT (envelope-from git) Date: Sat, 16 Mar 2024 15:16:13 GMT Message-Id: <202403161516.42GFGDkl062606@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andriy Gapon Subject: git: 50aa22323424 - stable/14 - scsi_da: add 4K quirks for Samsung SSD 860 and 870 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: avg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 50aa22323424ccea00ef5d8f24e729a480cc77eb Auto-Submitted: auto-generated The branch stable/14 has been updated by avg: URL: https://cgit.FreeBSD.org/src/commit/?id=50aa22323424ccea00ef5d8f24e729a480cc77eb commit 50aa22323424ccea00ef5d8f24e729a480cc77eb Author: Andriy Gapon AuthorDate: 2024-02-19 10:16:47 +0000 Commit: Andriy Gapon CommitDate: 2024-03-16 15:12:53 +0000 scsi_da: add 4K quirks for Samsung SSD 860 and 870 Although the actual flash page size is either 8K or 16K for those devices (according to different sources of various reliability), they seem to be optimized for the "industry-standard" emulated 4K block size. To do: consolidate very similar Samsung SSD entries for 830 - 870 models. (cherry picked from commit b7dce5b8e988f47784c55aa096541deda7b1aaeb) --- sys/cam/scsi/scsi_da.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/sys/cam/scsi/scsi_da.c b/sys/cam/scsi/scsi_da.c index df44d2279fbe..ae691520e157 100644 --- a/sys/cam/scsi/scsi_da.c +++ b/sys/cam/scsi/scsi_da.c @@ -1396,6 +1396,22 @@ static struct da_quirk_entry da_quirk_table[] = { T_DIRECT, SIP_MEDIA_FIXED, "ATA", "Samsung SSD 850*", "*" }, /*quirks*/DA_Q_4K }, + { + /* + * Samsung 860 SSDs + * 4k optimised & trim only works in 4k requests + 4k aligned + */ + { T_DIRECT, SIP_MEDIA_FIXED, "ATA", "Samsung SSD 860*", "*" }, + /*quirks*/DA_Q_4K + }, + { + /* + * Samsung 870 SSDs + * 4k optimised & trim only works in 4k requests + 4k aligned + */ + { T_DIRECT, SIP_MEDIA_FIXED, "ATA", "Samsung SSD 870*", "*" }, + /*quirks*/DA_Q_4K + }, { /* * Samsung 843T Series SSDs (MZ7WD*) From nobody Sat Mar 16 15:16:15 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Txl7g3Z64z5F1HR; Sat, 16 Mar 2024 15: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 4Txl7g24H2z4Fvh; Sat, 16 Mar 2024 15:16:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602175; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R/bPLA0Seq9ghF7eo1wS4XbR1q6FsBuN/VZVWqKsyL8=; b=o+EweDt4APCtfxBUi5+lbb5rXIarB8jKkaQzzO++TaaO12ojNav3emc59Di5l1/vS+F2m+ m91z0Q4mjaGO+02aZsbeCujh9wYG1fCTuw89wBQlxUA/bY6/XOfr4gpLI6QJ9PqA9xVIUq 5dVmvU38SJFRF+yJZLyqmLoxHU8k4jeTmxA18zhfJw+f7jQCOynetUnUS2wN6FGyihueCw 8UFvo5ODdQM6AQvzCh5VCJJ413aOikKdJyq6yk83huNYcULBdVVHkgbRue+IB/Kb1FCDYe c3b3wPgbX2m4XiP8Ugu6vAs+sIzA2/luS1klNAXlbVd7jjpqyA01gSGQcfsnqg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710602175; a=rsa-sha256; cv=none; b=bev0gJzEOxRiTcA9/av/12f462vL1k49nmeOeZZhCvCFef7gX50/gcPQeK4V6qR6eJEAuC gJXIbI3XK4B3H0tJKIybz6UBbtiFWJAt0OJPeMe4veoSRvqPVJOx5qmuMndehnXJtBT20d Ms6wqWTMIEUkdHhk9yOPn9c9jDIPNof0n9uZl55KGgkFUA12pJfJgORsOL5N1qU91IlWbk LQGqOZ6hkyKWnfh1DdKJ+/3o21MxBonlRIlMB0yfHBkGKHbaHOeL34nwMX1KGUlpYb63n7 k4ruASs5Q39wupLQhhx13SO6j/sMeNPOI695mKniM8C1xgEXAgK7YOODx/D/lQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602175; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=R/bPLA0Seq9ghF7eo1wS4XbR1q6FsBuN/VZVWqKsyL8=; b=Lg8B8ijjnpm/kw55fG6FZgH4iCwlhW3k0qxvRSzW7GYU1bW4JWM0R3FbCtxNYCUL+BOdUW cSMrfBIaW0x+3uXGJsZOaiTfgpu1nqNirpOnl+wZFjtxXT7dZdAOs17Kj1nmcy31Ntlpbg am+il0GLRMZtU14diF06Go1X30td1/g7DPuY1Gsj+eMJ3yRkLMby4wn6svtTKVvbuVDeNP JqVOQ/4uhHdFafcCu2rpC4r6oTjIXEI16XeNXh3M41toYmsWT4nOYdxoGt/HTjRpW/2LEq u12+XIjA2N76smqINoAkmXYsUnEB+XxAO1xdQA9jMZrj6X0ehv05sAf3fD36Ew== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Txl7g1bRkz106J; Sat, 16 Mar 2024 15: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 42GFGFZe062669; Sat, 16 Mar 2024 15: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 42GFGFZu062666; Sat, 16 Mar 2024 15:16:15 GMT (envelope-from git) Date: Sat, 16 Mar 2024 15:16:15 GMT Message-Id: <202403161516.42GFGFZu062666@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andriy Gapon Subject: git: bf11fee6a5cf - stable/14 - ata_da: add quirk to disable NCQ TRIM for Samsung 860/870 SSDs List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: avg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: bf11fee6a5cf97102f87695185cadb63d5a2a7de Auto-Submitted: auto-generated The branch stable/14 has been updated by avg: URL: https://cgit.FreeBSD.org/src/commit/?id=bf11fee6a5cf97102f87695185cadb63d5a2a7de commit bf11fee6a5cf97102f87695185cadb63d5a2a7de Author: Andriy Gapon AuthorDate: 2024-02-19 10:08:12 +0000 Commit: Andriy Gapon CommitDate: 2024-03-16 15:13:27 +0000 ata_da: add quirk to disable NCQ TRIM for Samsung 860/870 SSDs NCQ TRIM for Samsung 860/870 SSDs results in data corruption on systems with some SATA controllers. This can be easily reproduced using ZFS which uses TRIM and is able to detect block content changes. Linux bug report for this issue: https://bugzilla.kernel.org/show_bug.cgi?id=201693 Since at present we can not limit a quirk based on the contorller / SIM, apply the quirk in all cases. Reviewed by: imp (cherry picked from commit c01af41c3c8fdd570764ff9b6bfbad6ac9ca1664) --- sys/cam/ata/ata_da.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/sys/cam/ata/ata_da.c b/sys/cam/ata/ata_da.c index fc4dc91f9d54..6338d62577da 100644 --- a/sys/cam/ata/ata_da.c +++ b/sys/cam/ata/ata_da.c @@ -728,6 +728,22 @@ static struct ada_quirk_entry ada_quirk_table[] = { T_DIRECT, SIP_MEDIA_FIXED, "*", "Samsung SSD 850*", "*" }, /*quirks*/ADA_Q_4K | ADA_Q_NCQ_TRIM_BROKEN }, + { + /* + * Samsung 860 SSDs + * 4k optimised, NCQ TRIM broken (normal TRIM fine) + */ + { T_DIRECT, SIP_MEDIA_FIXED, "*", "Samsung SSD 860*", "*" }, + /*quirks*/ADA_Q_4K | ADA_Q_NCQ_TRIM_BROKEN + }, + { + /* + * Samsung 870 SSDs + * 4k optimised, NCQ TRIM broken (normal TRIM fine) + */ + { T_DIRECT, SIP_MEDIA_FIXED, "*", "Samsung SSD 870*", "*" }, + /*quirks*/ADA_Q_4K | ADA_Q_NCQ_TRIM_BROKEN + }, { /* * Samsung SM863 Series SSDs (MZ7KM*) From nobody Sat Mar 16 15:16:16 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Txl7h621Hz5F1Qv; Sat, 16 Mar 2024 15: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 4Txl7h35F3z4Fyp; Sat, 16 Mar 2024 15: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=1710602176; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1c9Vsr56Ifzw0ezQ+oNp/aMXX3G8WYdOyMVRs7+J37E=; b=OrEVbRG1+TnKhHpUgGKvBN8IIAmXQapud3wT6XqgtJV50OM1qr1jmNQZMeNK7Z+kGy8O18 csZWkM2QwHisVLWc1VxiWlSLLZAGy5zfxgIRNU01rN4A4dnWPw7hELdGCTLQQMTgRlNIk6 gGZ+LRr18qZhMH9P3G4rx+++oxNhJnlfwIN4Vy9AXN75wQEKbvy3BkSJtdyq4TbfJZ2M4R RbaBn5GNbA5j9tUsp/7WvuRNF9Yi6NPo4GoA2lbihyX5tS2N3AcffajBeiVxnvNsRM1nrP T/JMszI35ZKwUrDOIThUrY/CdVK2yRYg1gWn1/1YAwMEQzQ853AteHawGAATyg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710602176; a=rsa-sha256; cv=none; b=SwyTKAXQuH2DNicHiog/lt6/THOMHhg6IPivgZRfK29dzTFKWxTQTF8fnx/6wcB1sDYGw9 c646GIWRmQb2VpBhXYnOdHKY08QJO+Ut5lQT3Ia7XVaN/nhUBqp3VUgs95EXpyACspnBPh jCCsw29OSpRxvCRNeHskKAA/TtKD5wZZTvg13NwaCuSEJG41Cx/rlkD3BGPusQlHfOAHoL Kxkcw9EngmF4nm97wY7Kdct+euBSuBB5aNNr7F2Lk7b9Lh+OpLX8ySD6YhTUWCqdJmgFbJ OaMFq8PjZKiKqS4EhRjDo3l1JfCg/A5nZJsdjJZnZ6Feg6uD+ukH2Q9TsquqPw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602176; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=1c9Vsr56Ifzw0ezQ+oNp/aMXX3G8WYdOyMVRs7+J37E=; b=USZ2AsDdKtdm4PgwZIdpHFcXZXQ44DHduiA38VsXn9rBpMx0no5/e/43+lTJnwSq2v+7iq QwK0jIXBa0GxR13wJEK+rirkH4+fHaAjfqJnW1LsxIwHGplg1sD52mHUtS36mLVFDT5lRl 1cLQPfLSjOuAftqhZhzbNOTtg3VwJ2E+u9BB8ODoKkfAL82kPWc2GiZ/iGBZSi02B9dlsl D4XSloqkRQhwsZzdLqIaOv4nHdVNwAhgKRJSUWlS4caX8VOqQHgTOWf4wD+t9v4FPTNen8 H/24hM0TdSVbAruNwuc06qSiGyhrBMcG+lnBbzSXEjHcfDS74LS2jkJFX4QFFw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Txl7h2cDrz10xk; Sat, 16 Mar 2024 15: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 42GFGG7R062717; Sat, 16 Mar 2024 15: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 42GFGGXQ062714; Sat, 16 Mar 2024 15:16:16 GMT (envelope-from git) Date: Sat, 16 Mar 2024 15:16:16 GMT Message-Id: <202403161516.42GFGGXQ062714@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andriy Gapon Subject: git: 721b91d1715e - stable/14 - syscon_power: do reboot after shutdown_panic is executed List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: avg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 721b91d1715e3844b0372a2fc42c70853b91fa46 Auto-Submitted: auto-generated The branch stable/14 has been updated by avg: URL: https://cgit.FreeBSD.org/src/commit/?id=721b91d1715e3844b0372a2fc42c70853b91fa46 commit 721b91d1715e3844b0372a2fc42c70853b91fa46 Author: Andriy Gapon AuthorDate: 2021-07-09 15:00:21 +0000 Commit: Andriy Gapon CommitDate: 2024-03-16 15:14:09 +0000 syscon_power: do reboot after shutdown_panic is executed A syscon_power instance can handle either poweroff or reboot, but not both. If the instance handles reboot then set its priority to be after shutdown_panic. This is to provide uniform experience with other platforms. (cherry picked from commit 5f7312a0d70c607afa9ce24ccd757321d043e02c) --- sys/dev/extres/syscon/syscon_power.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/dev/extres/syscon/syscon_power.c b/sys/dev/extres/syscon/syscon_power.c index 9626adb52890..201d140963d2 100644 --- a/sys/dev/extres/syscon/syscon_power.c +++ b/sys/dev/extres/syscon/syscon_power.c @@ -162,9 +162,11 @@ syscon_power_attach(device_t dev) OF_getencprop(node, "value", &sc->value, sizeof(sc->value)); } + /* Handle reboot after shutdown_panic. */ sc->reboot = ofw_bus_is_compatible(dev, "syscon-reboot"); sc->shutdown_tag = EVENTHANDLER_REGISTER(shutdown_final, - syscon_power_shutdown_final, dev, SHUTDOWN_PRI_LAST); + syscon_power_shutdown_final, dev, + sc->reboot ? SHUTDOWN_PRI_LAST + 150 : SHUTDOWN_PRI_LAST); return (0); } From nobody Sat Mar 16 15:16:17 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Txl7j5KKmz5F1NQ; Sat, 16 Mar 2024 15: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 4Txl7j42cPz4G22; Sat, 16 Mar 2024 15: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=1710602177; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/Aoep055t7EaQYxYCch5ohJP6OlR0YbNzps5najm4vU=; b=OTb201w2JV0N0xH/cIWYRTThDOMspzwMgiABrAKxiQ69aOOartwPejQt1yFmIN1NLSeugX POAuNhMQja3DzHRsKg5bMPrqevb1MTNugwnZsT79vU0rSCJKXPdXBQMoTD6QDhsUgHr8WN T+JeQ+iKj2z88N632KXQeONS+yP0BkNlGPL5pXiRcyoEhrsFOFdw7eFbAq0fTW5yIUa6N/ YrQcnlTWZ2wwQ8DvnammsXCN6cMaWmJJJ75vHvICp4qYH2DgwA/gMxgfY2s7IFK6ZK5Vmd iXsHbXbJ9m09fmUHmnIwJt3shdZ9cnzZLWbi0OWkPVAMyECNoZCUg9+trPymzQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710602177; a=rsa-sha256; cv=none; b=vIaQ+TU5wp0qSo8ARm3heXXXTAa5Q0AfSiCmoUpxO1b5jwju5qaoXliTFFZEd2ahsAqQ2P bgwD9zitMIiZJeYfEVHyzXndKuXN1mrTGpFil7r73gYQ/M30C3/cFF6FwfBA1flTI99DYY P2Edtptm3OiowvQvmjcHISs8Hkf7vprixp1I8eatH8d6XhQITgK7mtwllj9nieTVVmy+9w ptJOrhffn6UHnlVmZaZOxiO1DStvIkYNdU5G6KZ1UcfolRsTeb2A3RBWTbAnha+UfX+FnR OWHRErud84S+537AQDLTDZD4TSW+slmOX38w1aCMsuTYXjHZcy8bAHp7WaOgXA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602177; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=/Aoep055t7EaQYxYCch5ohJP6OlR0YbNzps5najm4vU=; b=DUS8MWg9zaGwYjQ9N0xhkI24ChLaQm+Z/simjxRwjmc1R86imj3R2CVB/8ylRiNcmpKdSd rt5XbI7vepvx/hCA+UvvOjPd+sxVZSErvGQczqAwOeoN5b73xmMd7jJO9sKJQVwLs5y/fi P5wZsQYe62TmIqHmfWGhQV9q+vxV1np6eNnDOiI0n8hBdiPgcrOk6fiA4WjtUKo1PUKNrZ U9+aERbS2sJxRbJuAZwS9FzJv4F38CUZSWad2BGFh9NCSgFpC8KUU3Rg2pexYmzD3Bp+CV OgrmIWgO8zZdEsvxh2RJCtNlZ7C065xiwy1PO8RGq7xjl/XPc7glsaMw30y9Ew== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Txl7j3fp8z10Qr; Sat, 16 Mar 2024 15: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 42GFGHv4062769; Sat, 16 Mar 2024 15:16:17 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42GFGHQh062766; Sat, 16 Mar 2024 15:16:17 GMT (envelope-from git) Date: Sat, 16 Mar 2024 15:16:17 GMT Message-Id: <202403161516.42GFGHQh062766@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andriy Gapon Subject: git: 0cb72c25b01a - stable/14 - psci: split off psci_reboot from psci_shutdown List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: avg X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: 0cb72c25b01aadb3c6fdd62e58e5c89cdd1b855f Auto-Submitted: auto-generated The branch stable/14 has been updated by avg: URL: https://cgit.FreeBSD.org/src/commit/?id=0cb72c25b01aadb3c6fdd62e58e5c89cdd1b855f commit 0cb72c25b01aadb3c6fdd62e58e5c89cdd1b855f Author: Andriy Gapon AuthorDate: 2021-07-09 15:01:57 +0000 Commit: Andriy Gapon CommitDate: 2024-03-16 15:14:41 +0000 psci: split off psci_reboot from psci_shutdown Priority of psci_reboot set so that it is run after shutdown_panic is executed. This is to provide uniform experience with other platforms. (cherry picked from commit 0f354b2b588b60e2ef119ff2f480f7905c5db587) --- sys/dev/psci/psci.c | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/sys/dev/psci/psci.c b/sys/dev/psci/psci.c index 46d7a2f07181..4fd1cd62ed8c 100644 --- a/sys/dev/psci/psci.c +++ b/sys/dev/psci/psci.c @@ -124,7 +124,6 @@ static struct ofw_compat_data compat_data[] = { #endif static int psci_attach(device_t, psci_initfn_t, int); -static void psci_shutdown(void *, int); static int psci_find_callfn(psci_callfn_t *); static int psci_def_callfn(register_t, register_t, register_t, register_t, @@ -468,12 +467,24 @@ psci_shutdown(void *xsc, int howto) if (psci_softc == NULL) return; - /* PSCI system_off and system_reset werent't supported in v0.1. */ if ((howto & RB_POWEROFF) != 0) fn = psci_softc->psci_fnids[PSCI_FN_SYSTEM_OFF]; - else if ((howto & RB_HALT) == 0) - fn = psci_softc->psci_fnids[PSCI_FN_SYSTEM_RESET]; + if (fn) + psci_call(fn, 0, 0, 0); + + /* System reset and off do not return. */ +} +static void +psci_reboot(void *xsc, int howto) +{ + uint32_t fn = 0; + + if (psci_softc == NULL) + return; + + if ((howto & RB_HALT) == 0) + fn = psci_softc->psci_fnids[PSCI_FN_SYSTEM_RESET]; if (fn) psci_call(fn, 0, 0, 0); @@ -484,7 +495,7 @@ void psci_reset(void) { - psci_shutdown(NULL, 0); + psci_reboot(NULL, 0); } #ifdef FDT @@ -582,6 +593,10 @@ psci_v0_2_init(device_t dev, int default_version) EVENTHANDLER_REGISTER(shutdown_final, psci_shutdown, sc, SHUTDOWN_PRI_LAST); + /* Handle reboot after shutdown_panic. */ + EVENTHANDLER_REGISTER(shutdown_final, psci_reboot, sc, + SHUTDOWN_PRI_LAST + 150); + return (0); } From nobody Sat Mar 16 15:16:36 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Txl850wHxz5F1HW; Sat, 16 Mar 2024 15:16:37 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Txl845B3Fz4H8K; Sat, 16 Mar 2024 15:16:36 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602196; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IybmJIhCuD1cUAV7s9WZnaH8nLHErZMa84RHG0nZmMQ=; b=TRsE6oe9YEOFFR/uGFxgh+rbdEjD7mASy1HQ3wcq0u3RoBmCyx4x4RJJyFOWuwpuAISf0U a/620Y8Yw3T25SWWui82nOCisgs5taX9vxmnMsHaP8uYg18ao2TODzy+7JEesbL33iuqru AhN1Q7mfPKm6znLW6S0d8BdonijAT99Ew0kNgcQ1N764pjGX0O4bIDU28ZGAyUxdekTUQM 5Ho40NkvW/rOIR5UYcyNr3aiPJlmpeKQ3IbsrbIKwCNNYuZ90LpyCfCAsnTamLXW4ROAtP xrafSMBS7Ua+iZvMB3JqDDJ0kbad/h6lj+d5EZY6ZQU202QXeUDHZjpBnT3kVQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710602196; a=rsa-sha256; cv=none; b=ldVncprmIjAw/qOfJFe6pV84glE51WPi1a5dYbE4TRPD6MsgjYjbhpTNrdmJKS06rz6fps yt2eqivv0f6OMjjGrCSBoqQqFclC+KlPoJjo+QF2e8UmZerGB0xWIagh0+l7ucglRBquUo vN5Jh2opdAZ+gDMqduME4r2HwN9INIDG1FdWy2cw0SZbO3lQW6OdIO5U8mMoqMVVcK7b+U Ibi0TGafphiwreHAJm9KeRB0Qvv/fyE8X+SJDY8lHpbP075uHdky0cjlb3HfHovu4Ar6w0 5+sCjHI//8c3lx9ajgxQDbgsHMp5yXi1m/XcYTKRs7+kgU7DDoK3ApYlLuH0EQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602196; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=IybmJIhCuD1cUAV7s9WZnaH8nLHErZMa84RHG0nZmMQ=; b=YipD+WoAT6hRiLYMeG59evPFMpdTAtZRciFJK8838VtI8tOdcIMc3YmyZ+zJoggZYLDm3L U7zJjwQSZcsvbunwyB63xFqyv5VdgkntplJrQ0SetcrdCknC9geS53tujL08eu/i7WPOab RmKT+FQFgw3RM88D6tyWtmw5ntgZdUnZg07jLKtvPLu1SjRrjwj6KUW8RLbj1afKJIWHyh zEq4PLdOgKOyd5tPa3OcpqrF9iscF0nP63tQHkIQR5F7pmviHaoXocxzb8U9AWuMtNYEtM 4ocTZWOlwvOwBeEMzb7iskGOFEFwSmtMBR3Rxw0ub0M+kNltOZkpvPk68du/Bg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Txl844S3Lz10p7; Sat, 16 Mar 2024 15:16:36 +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 42GFGaSJ062974; Sat, 16 Mar 2024 15:16:36 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42GFGa06062971; Sat, 16 Mar 2024 15:16:36 GMT (envelope-from git) Date: Sat, 16 Mar 2024 15:16:36 GMT Message-Id: <202403161516.42GFGa06062971@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andriy Gapon Subject: git: 5578ace4a174 - stable/13 - ugen: fix USB_IFACE_DRIVER_ACTIVE after detaching a driver List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: avg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 5578ace4a174e6f6e4bce39f22472959cd4e745c Auto-Submitted: auto-generated The branch stable/13 has been updated by avg: URL: https://cgit.FreeBSD.org/src/commit/?id=5578ace4a174e6f6e4bce39f22472959cd4e745c commit 5578ace4a174e6f6e4bce39f22472959cd4e745c Author: Andriy Gapon AuthorDate: 2024-02-19 10:44:00 +0000 Commit: Andriy Gapon CommitDate: 2024-03-16 15:09:30 +0000 ugen: fix USB_IFACE_DRIVER_ACTIVE after detaching a driver Previosuly, USB_IFACE_DRIVER_ACTIVE would report that the driver is active even after it detached. That's because a device(9) still remains. So, add device_is_alive(9) check for more accurate reporting. Reviewed by: markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D43960 (cherry picked from commit 8f374fa528d7643919bca1b4153dde03996305fe) --- sys/dev/usb/usb_generic.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/sys/dev/usb/usb_generic.c b/sys/dev/usb/usb_generic.c index 1086e3daa0a6..6e5a00d37d4b 100644 --- a/sys/dev/usb/usb_generic.c +++ b/sys/dev/usb/usb_generic.c @@ -2377,12 +2377,10 @@ ugen_ioctl_post(struct usb_fifo *f, u_long cmd, void *addr, int fflags) break; case USB_IFACE_DRIVER_ACTIVE: - n = *u.pint & 0xFF; - iface = usbd_get_iface(f->udev, n); - - if (iface && iface->subdev) + if (iface != NULL && iface->subdev != NULL && + device_is_alive(iface->subdev)) error = 0; else error = ENXIO; From nobody Sat Mar 16 15:16:37 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Txl8611Xkz5F1NY; Sat, 16 Mar 2024 15:16: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 4Txl855gT9z4HBv; Sat, 16 Mar 2024 15:16:37 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602197; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TxPegUOSbB1GOvLMMVNhyXTDYX/ZEfZ/gJhcvU4aG1I=; b=C+hSZXuzsyacJS6QQNVQAmmQo03MteK87yTyuu3+s45Z4bJFMQvlMZQ/Gi2i2lXKjtExKs xNfCaqIR6riFiKO2dm7oCNuPQWGPiUbEgd8EE3kNpAXiyEznH1N42qtsQoTjSvOksk8wZd TSb0x9BxzHQZ5nLOtiMdN2YM0u2vE9e0fBMLFS0coLyA44mGAj+is4aTxIti7F0SvSFJH9 pli/CHSvaTXkcF/miOWx26PWLs/pEg1u8ERvNBB6TOlYT2GQL8h1EKSGp2JREJs6IUAHf5 9rikRPCnZZLCRcsPYnoPomfwfkOGP8MqVNR4d+VITZdYIH27qYh9wNr2ksY7uQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710602197; a=rsa-sha256; cv=none; b=GN5CYh04QHI1YA0IeyhTN6jPAR/X3ypIGB3dpYDV3kse9rSLXWpGV3ONvvMBo7PMALNv3v Z5Zd76EKB9zfBzVbLs9/W2/P0xBpRSyr8thD1ZLfslQ2OPuOfcL1YH9UdpGx6OCnJ1ZDZL aNlvhfQUR71QaBNelh05PLZ04V9HhkkagJFinfSe0czD7iSQmFgRt96eM7B7e0GHVfhyf6 E8HDxkVnYfJ5JzisaQQf3DvxasAhZDQllr6V0qL8gaAzQZ8wB9rKRet2s771UxHPGPOx/B odJX5gELnq7S9QDO0ScBgxxstuLTGRVL1OE6v4DFnLdq2jdRlaBclScSU7ifQA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602197; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TxPegUOSbB1GOvLMMVNhyXTDYX/ZEfZ/gJhcvU4aG1I=; b=lqye9WS70czfOaNo2GwqVI+GMILNVDOct7Tw2wrXMsO92tVUSFFiaXLt/ZVE+sj/A8W/Xv vPHZnRQaIbWNS1MYtCDS6NZCjMT9KNe55pwtBDjN4+S/C9t8BdmIfPS39PqQuVK6rmJ/xT ESnkIvAhZQfe6K6eCk1e5lpm44sdPekJDBYq3Gdsb5W92PgO9D9bB+6JwB3Mi/psz3g+XR eAhKvprXrssqnxEN0TwrZjQll0H1/HJpO+LI/aPQ8ksphMBXeEd4mQZuOZnUAlcdq6CuDZ nsiAHZoxIBIFQfoEAE4K5bRS5JBIjGfpqSCLIOZlfv8xQZZJ2kbc0nNmgMyiiQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Txl855J4Yz10XT; Sat, 16 Mar 2024 15:16:37 +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 42GFGbkB063032; Sat, 16 Mar 2024 15:16:37 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42GFGbpU063029; Sat, 16 Mar 2024 15:16:37 GMT (envelope-from git) Date: Sat, 16 Mar 2024 15:16:37 GMT Message-Id: <202403161516.42GFGbpU063029@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andriy Gapon Subject: git: 2e88c5c4b426 - stable/13 - scsi_da: add 4K quirks for Samsung SSD 860 and 870 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: avg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 2e88c5c4b4263d23c16a0a1baee881db83a30773 Auto-Submitted: auto-generated The branch stable/13 has been updated by avg: URL: https://cgit.FreeBSD.org/src/commit/?id=2e88c5c4b4263d23c16a0a1baee881db83a30773 commit 2e88c5c4b4263d23c16a0a1baee881db83a30773 Author: Andriy Gapon AuthorDate: 2024-02-19 10:16:47 +0000 Commit: Andriy Gapon CommitDate: 2024-03-16 15:13:13 +0000 scsi_da: add 4K quirks for Samsung SSD 860 and 870 Although the actual flash page size is either 8K or 16K for those devices (according to different sources of various reliability), they seem to be optimized for the "industry-standard" emulated 4K block size. To do: consolidate very similar Samsung SSD entries for 830 - 870 models. (cherry picked from commit b7dce5b8e988f47784c55aa096541deda7b1aaeb) --- sys/cam/scsi/scsi_da.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/sys/cam/scsi/scsi_da.c b/sys/cam/scsi/scsi_da.c index 260db5efd545..5782d414bd42 100644 --- a/sys/cam/scsi/scsi_da.c +++ b/sys/cam/scsi/scsi_da.c @@ -1395,6 +1395,22 @@ static struct da_quirk_entry da_quirk_table[] = { T_DIRECT, SIP_MEDIA_FIXED, "ATA", "Samsung SSD 850*", "*" }, /*quirks*/DA_Q_4K }, + { + /* + * Samsung 860 SSDs + * 4k optimised & trim only works in 4k requests + 4k aligned + */ + { T_DIRECT, SIP_MEDIA_FIXED, "ATA", "Samsung SSD 860*", "*" }, + /*quirks*/DA_Q_4K + }, + { + /* + * Samsung 870 SSDs + * 4k optimised & trim only works in 4k requests + 4k aligned + */ + { T_DIRECT, SIP_MEDIA_FIXED, "ATA", "Samsung SSD 870*", "*" }, + /*quirks*/DA_Q_4K + }, { /* * Samsung 843T Series SSDs (MZ7WD*) From nobody Sat Mar 16 15:16:38 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Txl871rxSz5F1Wx; Sat, 16 Mar 2024 15:16: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 4Txl866j5Nz4HC7; Sat, 16 Mar 2024 15:16:38 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602198; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iB1+hOlClMr6g/zJiKOMI2N9fm4g1Oz1P+t0234lWVg=; b=Pvuv66sTDaRqugN9FkGyY87QkXgvwGUZiWjUnd6PTSSLe9GKFzuyHbY68tx5bMGLAj/Uzo GvnOHeuhI1xJickMFqrd3K8YBZfjzvHW+aTKqSQWR+icBMAGm8N7TbqIfcv+SVaFPNcbb/ q+8H2lPYyOSIyLZo7i74KwcKW11tnRN/zTZD63l6BW+3/Xp0LhMFLeUp0+/pmAE5Qu2bQk QL+cVb66RDtne6+VoMPVBZy3fYrNNUYqFrjPFQ0wht98UM+i40rsXmggQ8Vj9F7IYHfiJj QWY/zyk4ZItuG/DmYXq1kuc8lTBVeOV9ijmHsvWqucXzF/hg1h7FTQIcYEoMNg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710602198; a=rsa-sha256; cv=none; b=WeAHtqW4qMDKKonFC8FmlVRcPw60LbwcMonKYiVbJn7gqFlz3131oL4F4VpqmKBhq09oQ8 NMgebsfS4WQKTUMcU4BUh+0uv7U64jQH8XIRI8BKd2xqc6vfvEY8ftmRbcEfI1Ia+q3Js3 nEjQgw2UE2S9BtbNjtPXUUrBLeF5VazdpMEcnYfvtunyr+bwRVCCmt0gQOj/m/EqvWLTzS sowND1gWeNDknKPksz9Metc+jS99dmu2+x0tS7fmcwWN7/fmAN9jV3TjsMNdSbFuEcjT3K UDLTPv2Xn4vet/QmRGwyMR67Wv9Puzw3gjZ6xYhRzqSjGBJj+6dI2hflnZOReA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602198; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iB1+hOlClMr6g/zJiKOMI2N9fm4g1Oz1P+t0234lWVg=; b=AAYPS3aeFDKwxpg/ioik59zYElFWMt6mglKaukNlMQ7aHO8rjRMXRt6GHjKs3JobE80Kjm /DueMty3lDWdyM+RuVsY9b0rn1Lz4qG+wOjONssEnmMfrQTIfUVJWSaknIh87RblEKMpzD 5wjPmkOoHXEXf8lG5PrPu1px4YIqthLdQm70dL988ibgoBFD7vlVdDycbtSrqtnFjyzMlS kw+wiyIY88nFCKPGamWSc9c2FdMRnLz4ejC22U5o3ExPqQK+YoDMgaVMubq2AH8VL3lsS7 N+Sw2RurS0/C+4GQka9oYZEcpSJzB9vevKaoH+Zn6qshlOgC2Xc3ZbrXy3BD/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 4Txl866KJNz10XV; Sat, 16 Mar 2024 15:16: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 42GFGcCC063095; Sat, 16 Mar 2024 15:16:38 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42GFGci7063092; Sat, 16 Mar 2024 15:16:38 GMT (envelope-from git) Date: Sat, 16 Mar 2024 15:16:38 GMT Message-Id: <202403161516.42GFGci7063092@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andriy Gapon Subject: git: 4eab6e77fc2a - stable/13 - ata_da: add quirk to disable NCQ TRIM for Samsung 860/870 SSDs List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: avg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 4eab6e77fc2a050e3da6bedcabb406f9596921d4 Auto-Submitted: auto-generated The branch stable/13 has been updated by avg: URL: https://cgit.FreeBSD.org/src/commit/?id=4eab6e77fc2a050e3da6bedcabb406f9596921d4 commit 4eab6e77fc2a050e3da6bedcabb406f9596921d4 Author: Andriy Gapon AuthorDate: 2024-02-19 10:08:12 +0000 Commit: Andriy Gapon CommitDate: 2024-03-16 15:13:42 +0000 ata_da: add quirk to disable NCQ TRIM for Samsung 860/870 SSDs NCQ TRIM for Samsung 860/870 SSDs results in data corruption on systems with some SATA controllers. This can be easily reproduced using ZFS which uses TRIM and is able to detect block content changes. Linux bug report for this issue: https://bugzilla.kernel.org/show_bug.cgi?id=201693 Since at present we can not limit a quirk based on the contorller / SIM, apply the quirk in all cases. Reviewed by: imp (cherry picked from commit c01af41c3c8fdd570764ff9b6bfbad6ac9ca1664) --- sys/cam/ata/ata_da.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/sys/cam/ata/ata_da.c b/sys/cam/ata/ata_da.c index 359ece18960e..c5c567645166 100644 --- a/sys/cam/ata/ata_da.c +++ b/sys/cam/ata/ata_da.c @@ -726,6 +726,22 @@ static struct ada_quirk_entry ada_quirk_table[] = { T_DIRECT, SIP_MEDIA_FIXED, "*", "Samsung SSD 850*", "*" }, /*quirks*/ADA_Q_4K | ADA_Q_NCQ_TRIM_BROKEN }, + { + /* + * Samsung 860 SSDs + * 4k optimised, NCQ TRIM broken (normal TRIM fine) + */ + { T_DIRECT, SIP_MEDIA_FIXED, "*", "Samsung SSD 860*", "*" }, + /*quirks*/ADA_Q_4K | ADA_Q_NCQ_TRIM_BROKEN + }, + { + /* + * Samsung 870 SSDs + * 4k optimised, NCQ TRIM broken (normal TRIM fine) + */ + { T_DIRECT, SIP_MEDIA_FIXED, "*", "Samsung SSD 870*", "*" }, + /*quirks*/ADA_Q_4K | ADA_Q_NCQ_TRIM_BROKEN + }, { /* * Samsung SM863 Series SSDs (MZ7KM*) From nobody Sat Mar 16 15:16:39 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Txl881YMVz5F1Ff; Sat, 16 Mar 2024 15:16: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 4Txl880VyBz4HCV; Sat, 16 Mar 2024 15:16:40 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602200; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kpgeZZ/GMfKF2/CUXXsfksIo5IyIGpq2JAZAhdw7x8c=; b=MRV6KXel5ZvGtWpFoqCOYTFxN2SXHQPjT7+H74GekEB1AdMWr0NR1H8BWOQELDZZQ+Q/N+ GKmb2VVQ2chQ7H+4yCVmeihV7LeM1SOpsT5+IvZDYJnmDRjXFrDhCmyI67aF7YGgQqI528 p50vEz42xzf3mLNdiXgcPgaZi/uoy9WPLzK5iDPWzT33Ubm35QneyFrAQn1iBHysrxodw7 4sIJ55D8ibNVvNqK/8zO86SWz0Kqh62ZI/AkOa8powP5Xi2Rd9gF+/B/WGdqlXr6ICePSr 4h4ewRHV10aunXj3hQv77xtMOOzRKzoJzB51AdcUsLA20auNfKVM+7A/lv+6Pg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710602200; a=rsa-sha256; cv=none; b=RRn8x/0Ar3kobnz7cgo3fxXzhLR+iOjVlW+Kuxw235cImMz2G8z+KairwFf6Gh/Cd4sc29 TduiNJ/9lN06hpv6eKi+P5W0VSctmaHnVXe09EB5iEpCb24PWZxs90FJSu1qRKvQL+ab06 ifI+CRR5v5vzwBbKAx+yfESCwBSjNMBdgQ6RoEJa0UkUkqW+zF/OMty72vBUtI/s5kY7aO 3z7lygFkcQdq7eHCp1pKndFtoCdHibpYObPFhtLJmNV3A6OBpGVVcwWcgrjNPBqrz18wHl oK08EJim4hhe20nwsfdwapXH9LBFpcsI838YlINOCVGnXhU5h8dtRXJ3ovZT0g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602200; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kpgeZZ/GMfKF2/CUXXsfksIo5IyIGpq2JAZAhdw7x8c=; b=iUpJaRI/qtLt2yErL0WRaG46ambM1THssvDTs/5GAgkBNUhboY94nqT//WgGjTPtw40UwK OO4NAjO1HABS0ktQ0gJqlILbJGTdqpSTVHapIpz9qKM1MU4jBQExKyG58O7p8appVOVicu nJjcEU9FDY4IwOGmSl7Z0DmZui1CTz8X7Y2pEvceqUKBEmNcvDEXT/8KUCXLWjZlSU/XGn X6x1jajgH6G8QDT+5kjO46C3u6Pk4lbb6YqERrGioUkXgvoyxo36wKgasz9HKUB7tCT5T7 YausRQREHhTC2MCAs1Y6srtDVtGyLvwg38X4DHQzlpYE0EVu3EqiZQT39pL19Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Txl8806C4z106K; Sat, 16 Mar 2024 15:16: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 42GFGdls063150; Sat, 16 Mar 2024 15:16:39 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42GFGdI3063147; Sat, 16 Mar 2024 15:16:39 GMT (envelope-from git) Date: Sat, 16 Mar 2024 15:16:39 GMT Message-Id: <202403161516.42GFGdI3063147@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andriy Gapon Subject: git: b2681df2294b - stable/13 - syscon_power: do reboot after shutdown_panic is executed List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: avg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: b2681df2294b54c9a293946482843c63455f8818 Auto-Submitted: auto-generated The branch stable/13 has been updated by avg: URL: https://cgit.FreeBSD.org/src/commit/?id=b2681df2294b54c9a293946482843c63455f8818 commit b2681df2294b54c9a293946482843c63455f8818 Author: Andriy Gapon AuthorDate: 2021-07-09 15:00:21 +0000 Commit: Andriy Gapon CommitDate: 2024-03-16 15:14:20 +0000 syscon_power: do reboot after shutdown_panic is executed A syscon_power instance can handle either poweroff or reboot, but not both. If the instance handles reboot then set its priority to be after shutdown_panic. This is to provide uniform experience with other platforms. (cherry picked from commit 5f7312a0d70c607afa9ce24ccd757321d043e02c) --- sys/dev/extres/syscon/syscon_power.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/dev/extres/syscon/syscon_power.c b/sys/dev/extres/syscon/syscon_power.c index 792b9c43773a..2615e3a8f5dd 100644 --- a/sys/dev/extres/syscon/syscon_power.c +++ b/sys/dev/extres/syscon/syscon_power.c @@ -162,9 +162,11 @@ syscon_power_attach(device_t dev) OF_getencprop(node, "value", &sc->value, sizeof(sc->value)); } + /* Handle reboot after shutdown_panic. */ sc->reboot = ofw_bus_is_compatible(dev, "syscon-reboot"); sc->shutdown_tag = EVENTHANDLER_REGISTER(shutdown_final, - syscon_power_shutdown_final, dev, SHUTDOWN_PRI_LAST); + syscon_power_shutdown_final, dev, + sc->reboot ? SHUTDOWN_PRI_LAST + 150 : SHUTDOWN_PRI_LAST); return (0); } From nobody Sat Mar 16 15:16:41 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Txl893mmMz5F1Fg; Sat, 16 Mar 2024 15:16:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Txl891FLxz4HWH; Sat, 16 Mar 2024 15:16:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602201; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lJ822N2NejGsFWjVXslw18GRgfek3CRGhfFDVlqLc5s=; b=fSiWExeJ+eeDg8tEZwssg7QbFsrvnPCfKpkbjoBU3kheoDZmT/iWAWAZSaQYwQUcY47ZUO LOwLWHtInzjlzVS4h7y3YGxIqQH4lT+YPuYtiur3aj0YmPWPl1jNobTMp1uCOKGNDB0T0c QRpIeZ5kSU5T4y+M+w53m/N2sgAjwpt9lJLQpYvhnFC1nVqAJy9p9oDwUJlUVO62xrKvXp GZnRA635fP+BpD4SnjcKU6sQR4nyQLHCiK9J8qfhSyxMwv9mbiIaZvdQA98akq38WVE6Va Aq0bwEOT/iFwr8nrg/igoL7iFGdabLyR7JD4zS42aP2rqzTYTpf/V6Ljso7S+Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710602201; a=rsa-sha256; cv=none; b=QLn+t2OYsL6Ifnh6zAcPRlnAvYesRq3RtxnsTFCy9ZuqzgV4wPJ+VLZZSUjzCOtrYfkDCT IivIIiUiYtZnaaE9CeFxCssm1QRIwqO5GxZvIItZ+VOwnNXWsuUjyUkJ3IRlqQmJWWtU3I VWwIp6xS+mG4nuQONjaJRUWkqV66YC0pvnf0RVTv+kKzViYcJ6cDlnD1oGQS1707M3FVlY MkABQKoIKc5IlmNFwpI6dbRM8pN51+IrDiCjZAXjIRuftTv/g044QeW3sbqqRvX57gu4Jo +CihOKneSfragSTn1+kxljuDj18rt1FgmlNNfWgQtRK/cNS8vT8Tp5gkcLnebA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710602201; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=lJ822N2NejGsFWjVXslw18GRgfek3CRGhfFDVlqLc5s=; b=u1TsWbePlxPjVqGyzwBwiM6LPlI6Sfa+9SJMKnKuYYqklpIRym9ySguol8JRkchaP73av9 BhGAl4Zz8RZGpAyp/9Ycqt/C8zcGg9RAYqrmlmwFHWezS0S0PVbaEH3t743hUkHiMeuEXg PZOn/JE61H8DGJWITGpRCAE7mVXI1m5EHKYOV0mzI0/FIeaHi9HVy3KzpwR23/+LcVYdXC F9MbHfKImwrR7aHeS6VQsNd/aaTIyu/A4kUzzZgF59/Lf+KgFwS8XVU6o2BuhnjcHl6mDG tiwLfMtGQOD4+4KtiGDZdi/TG4+MyyvCm3YGEhxBXJjxQYJyh/xXNGOwwuEjWg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Txl890qnbz106L; Sat, 16 Mar 2024 15:16: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 42GFGfqi063195; Sat, 16 Mar 2024 15:16:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42GFGfq1063192; Sat, 16 Mar 2024 15:16:41 GMT (envelope-from git) Date: Sat, 16 Mar 2024 15:16:41 GMT Message-Id: <202403161516.42GFGfq1063192@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Andriy Gapon Subject: git: d463f7c7a726 - stable/13 - psci: split off psci_reboot from psci_shutdown List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: avg X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: d463f7c7a726842dca50e87b79d401f5d09dd196 Auto-Submitted: auto-generated The branch stable/13 has been updated by avg: URL: https://cgit.FreeBSD.org/src/commit/?id=d463f7c7a726842dca50e87b79d401f5d09dd196 commit d463f7c7a726842dca50e87b79d401f5d09dd196 Author: Andriy Gapon AuthorDate: 2021-07-09 15:01:57 +0000 Commit: Andriy Gapon CommitDate: 2024-03-16 15:14:47 +0000 psci: split off psci_reboot from psci_shutdown Priority of psci_reboot set so that it is run after shutdown_panic is executed. This is to provide uniform experience with other platforms. (cherry picked from commit 0f354b2b588b60e2ef119ff2f480f7905c5db587) --- sys/dev/psci/psci.c | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/sys/dev/psci/psci.c b/sys/dev/psci/psci.c index 3d9fe230d1a2..a656a1365067 100644 --- a/sys/dev/psci/psci.c +++ b/sys/dev/psci/psci.c @@ -124,7 +124,6 @@ static struct ofw_compat_data compat_data[] = { #endif static int psci_attach(device_t, psci_initfn_t, int); -static void psci_shutdown(void *, int); static int psci_find_callfn(psci_callfn_t *); static int psci_def_callfn(register_t, register_t, register_t, register_t, @@ -472,12 +471,24 @@ psci_shutdown(void *xsc, int howto) if (psci_softc == NULL) return; - /* PSCI system_off and system_reset werent't supported in v0.1. */ if ((howto & RB_POWEROFF) != 0) fn = psci_softc->psci_fnids[PSCI_FN_SYSTEM_OFF]; - else if ((howto & RB_HALT) == 0) - fn = psci_softc->psci_fnids[PSCI_FN_SYSTEM_RESET]; + if (fn) + psci_call(fn, 0, 0, 0); + + /* System reset and off do not return. */ +} +static void +psci_reboot(void *xsc, int howto) +{ + uint32_t fn = 0; + + if (psci_softc == NULL) + return; + + if ((howto & RB_HALT) == 0) + fn = psci_softc->psci_fnids[PSCI_FN_SYSTEM_RESET]; if (fn) psci_call(fn, 0, 0, 0); @@ -488,7 +499,7 @@ void psci_reset(void) { - psci_shutdown(NULL, 0); + psci_reboot(NULL, 0); } #ifdef FDT @@ -586,6 +597,10 @@ psci_v0_2_init(device_t dev, int default_version) EVENTHANDLER_REGISTER(shutdown_final, psci_shutdown, sc, SHUTDOWN_PRI_LAST); + /* Handle reboot after shutdown_panic. */ + EVENTHANDLER_REGISTER(shutdown_final, psci_reboot, sc, + SHUTDOWN_PRI_LAST + 150); + return (0); } From nobody Sun Mar 17 00:01:42 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Txynz11tVz5Dqbq for ; Sun, 17 Mar 2024 00:01: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 4Txyny3CHHz4Ggp; Sun, 17 Mar 2024 00:01:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710633702; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eGTEIF3dz7u1/0ho6yQGNT56E/rXISXVEpvCsXVdGQ4=; b=KdZcsOUgLMPfs4ho0/2u9vCa1O/p6umArOX++0OFVpFmPXqXdfE8eUf2YEJSu89mjNDhRO G9qg914FD63vwhqXaPWT+0xkrClCeLk7coH1Pn5T92pFkNmwQsOfXCsNSq8FXVi8CMx6t/ qU5cGTnhhHcTc3dmVl6kczJxBzNhWzLuZRhYaRnMGKG788vxW0DIoM1sVyJBk5uHoleDqk qv9qi6WTz6R3VOxK3LmEZcjsgPFZde6LQbTeMrNHfd9HLEcxk+QiZVqgM3+BizopUHUfSg G3mXTuB3QJvBPTAO/cGlN8AiF40WAWbM4uwzKpr7RqGotfA2akWT9nlnp5su2g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710633702; a=rsa-sha256; cv=none; b=gnGW96ss25CocFalxmeo7Gb53m9WZ/GtPmdAEFf6YC29G2MAG04m2qKvnxTxaySDWOeWCL j/DEQgxEc0sWYS8qsHl2cn6OFzd7wUtwpVQcOJamfY2DD8IM0UaraE1KgTfyH7LElAptqq sozsbuiEpdtWvGBP6OUvhC48vJsQzbFIb4G7YRe2ECYOE4yKG0j0gQHg/r0rMUlDLJS9OL CcCqeMS+bHSytmkpTG8lmeWCA02x/+xAER11qhyppGZuplBqnJr68Q+bIW+W2fcqsIHFOc +MbbO3xja53mnat16vBkrpid+bYv3DENIN2BrW3EJaFtBURsadCEFTWy42R11A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710633702; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=eGTEIF3dz7u1/0ho6yQGNT56E/rXISXVEpvCsXVdGQ4=; b=UYUPqpy1lyshkHPC6/BVAsgKg9Aqiz9wxG2XeV32Sl7px4MqWaERQftOSWn5c9dngs69B5 dGuQnKzV1glBZN6dq5XVpEhP6uPHCEKLYr2875oFMrtv3zhQfz5yMKQoI5LOEX+uoa8W1O eVXRaLwl9vZhvuKo0/qpjMDZH2wr2kfnbexVAqtKbziCA5q6hN0eulFXkII9HGvYelOYjk 2PMhNgKennctWexk1CpyCy+FUtuEq0Hbe9RkKSLfSuIvzj3q3eB1LuEH8VjC0WdeRwSbpz dcmwVecuSRzBKbU8dmcMekz7sIj3hw/Xaf5nYQ3V5OCi17wISzjIf+5Auvm3gA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Txyny1kRdzGYr; Sun, 17 Mar 2024 00:01: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 42H01gRY053226; Sun, 17 Mar 2024 00:01:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42H01g1m053225; Sun, 17 Mar 2024 00:01:42 GMT (envelope-from git) Date: Sun, 17 Mar 2024 00:01:42 GMT Message-Id: <202403170001.42H01g1m053225@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: Cy Schubert Subject: git: 217a625642d3..5a33598e88ad - vendor/unbound - vendor branch updated List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/vendor/unbound X-Git-Reftype: branch X-Git-Commit: 5a33598e88ad8fbc0affa74dee0a2d8cc4010fbc X-Git-Oldrev: 217a625642d38bfc0d3d03192b013d4bc7a32458 X-Git-Newrev: 5a33598e88ad8fbc0affa74dee0a2d8cc4010fbc Auto-Submitted: auto-generated The branch vendor/unbound has been updated by cy: URL: https://cgit.FreeBSD.org/src/log/?id=217a625642d3..5a33598e88ad 5a33598e88ad unbound: Vendor import 1.19.3 From nobody Sun Mar 17 00:01:42 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Txynz2NDGz5Dqbv for ; Sun, 17 Mar 2024 00:01: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 4Txyny3RHYz4Gc4; Sun, 17 Mar 2024 00:01:42 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710633702; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EUh9RGUSvC4pY1sWK+ptMQDG9e4euYAYKuftekKxUzo=; b=H6lZZYc5ASf6xLN11C/aIU9gI3boQQ0eZqcw8EjW5+ObMr/mfOyoBehsIK+Ftkm8qWMkUU YvhEahIIGMt93EYPA9oaLQMLdDGTV2NaJbYH7rvL/Icyxpe17/ye1HXwGb1Ek2s0RNdS3h nrxPwzm2Zf++3GCO+TYMrxDF6wRXGT3DxKU6nC2pMp2kQMcQbBZWuaUencg5AgRDDukp3K XHkBAoSF222w7X8H+M1SomPgiaUFK0SpcajnJtDZMLFe09bxYtFYEbqQEVIAk0ampJv0Q5 MXSvOG0VVOLLDzKkESbhXlEEAFwPttn3pfL96lkrc2+Bx/t87G20FvMU3dDcaQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710633702; a=rsa-sha256; cv=none; b=W3wi6+1t/YmCzd10SRSBMRTY04XEpWZfYVrW0uoaH5zS1jP699H5bzfVBhc+VWOinlgxmt DoYzq/p5oYvVubRrB7dwBne4BbNeXOwU9yjI1m8U6CSgsAzOJoXcOy2D1+ywfg/gRLNWz1 is3tHzp1uu5eXl9/acPAdVjUNI/7GaCj0FQ8U0UcXZ1eZQ68o24Mq3vbjoGXA43RwdDiJY RjhU1TerIr/vZBDjZhKwNsUmtkZX3R9B2eSH3BPHzHM+uXW5QGAtZvzqIl89To2UiqjWhV 2GvIebIqQz0jB7lxUdFF6aBzCnwlZLlDd1juoR1+CaOUmWJtFnilOYbRShD5Gg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710633702; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=EUh9RGUSvC4pY1sWK+ptMQDG9e4euYAYKuftekKxUzo=; b=rRdqgvezcwyU/sPi8lrYRJKDc3JbpBmIxWVrO3wW6Kv/wJBuWEXbK5yxnNU6PmBiN8aQva hEkLh31zVMwWthZe4X7jEzm6cAZPYIivBuetYvu6wh6hUqtK2HuTUqtfALhXoGyFNEavY4 XmWazwOtJwdh2vZ3wJx1nSWaaSI+4hXG9CNNyZg2Q4Rzit/bozOL169B1yEsh4LF6Qs1a/ IfEQAoFDjefe17HIvTIsIkbLAn50HRSGoAMcK0ks256rREkVmu+k8WLduygkEzRt7zel7P Z2ECPBHKlcpujaw1+4Ym3/dCIcoYNLNH+2hk0rkK4qoXmU3v5Gk8HTRYWOAIsg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Txyny2YKnzG69; Sun, 17 Mar 2024 00:01: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 42H01gPR053245; Sun, 17 Mar 2024 00:01:42 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42H01gcr053244; Sun, 17 Mar 2024 00:01:42 GMT (envelope-from git) Date: Sun, 17 Mar 2024 00:01:42 GMT Message-Id: <202403170001.42H01gcr053244@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: Cy Schubert Subject: git: 1ebb6385d6ce - Create tag vendor/unbound/1.19.3 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/tags/vendor/unbound/1.19.3 X-Git-Reftype: annotated tag X-Git-Commit: 1ebb6385d6ceaf58a0eed979649a6fed58ec16cc Auto-Submitted: auto-generated The annotated tag vendor/unbound/1.19.3 has been created by cy: URL: https://cgit.FreeBSD.org/src/tag/?h=vendor/unbound/1.19.3 tag vendor/unbound/1.19.3 Tagger: Cy Schubert TaggerDate: 2024-03-17 00:01:19 +0000 unbound: tag 1.19.3 commit 5a33598e88ad8fbc0affa74dee0a2d8cc4010fbc Author: Cy Schubert AuthorDate: 2024-03-16 23:58:33 +0000 Commit: Cy Schubert CommitDate: 2024-03-17 00:00:52 +0000 unbound: Vendor import 1.19.3 Release notes at https://www.nlnetlabs.nl/news/2024/Mar/14/unbound-1.19.3-released/ From nobody Sun Mar 17 05:12:41 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Ty5hn3g8dz5FJWD; Sun, 17 Mar 2024 05:12: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 4Ty5hn1MV2z4jtf; Sun, 17 Mar 2024 05:12:41 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710652361; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cyoW4afAMa75h9krEcLiEU+Bv09H/IMvHwrzyYyU9Ek=; b=FvZPiDC2oszWLjU8d1bEXWdXs/TYFJuEx6PhBpUZFOXAf3DOd0+qGWwVMfD3PWuE0kmUPm 0PDz4xrNofgJG1CVEJNMiiO4DOek9FzGmGwzhVAfqIK39uFUNU2C/SstCzilYbdzP1KLnU 3+KkKdr3232fx9o3AifDp+JWwwZzH+pVrsSFkr4/cOaJ3JElYyhb/bGlNWNvi+gOZKKDfH k1xfvPqUPE9iYRHxBheqoXKK+fyjlpRpx3Kidy8EL6c8lOMbVJlnLhp1Dp4R4y39U7DU8L TBcCxum3dgwvUF2v2cNvp8VFkGuHdmojjRd+YcZEMJKlvtpu8cVF4ts3GogKig== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710652361; a=rsa-sha256; cv=none; b=L6cQr+I4Kd1o31etyKITOAtlcygyYw/qVTTpgnOs7jfWrz+VOBN8YKTWW4epc8yD9D5iqX HgqOYBqXnnz0I7iymGGfJP/iMkS15r3ydTDC3BkQ1BPwB6Tigt7/9R7IehaDji6yBjYgYV 7vxGcbKe2tSfJUM++y6/hZ3jVNeg+jXb/m0KfkpvFoNGW8/gF0DDJb4RTj2UL/gVJwf2Yo vXkDhNLVlAz+GQ8nbgFFBRLTfAsacp6zq5zzxED/oELYOgj2I34Imx4Rp8iU6dsMWzuOQ7 6nw+gNDehPHphqTTYcZWyjqo25m/nbGkb850HnGAZOnkygN+7L3HUkO6Kw9lIg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710652361; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=cyoW4afAMa75h9krEcLiEU+Bv09H/IMvHwrzyYyU9Ek=; b=NbxtjU/Eqtc4+jUFR9qIM4gPhGMOWL3V1fgOWhOY+HFGqoXJMN0RY0pCpBk973jHWMFwzC kzX4DNVXfJV5qllXBVMHY8I+ZR7W2pji65ktEdjuQqLM1TCyS9CF08WQ1O734ox9KKKKKw IqVkMjuxbPnrXbaThBwg9vGjdRdaynvwfsEmedR13podRoNjOR1MMG/EfMlV8JQ8atBB1X kmADFzwHl8l4DKXdT7gaTigxTxPTe9PYA/witdSbFy+68njgXJBeRyfaZAZmdM89pvVlWN o7FpLgSK7dtnMheFznq9Z3KV6Q9bv6fjKYDKHlyWv7/dNiBklRgNZ96bQ4OLqw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Ty5hn0yjrzQJ3; Sun, 17 Mar 2024 05:12: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 42H5CfhU080033; Sun, 17 Mar 2024 05:12:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42H5Cff2080030; Sun, 17 Mar 2024 05:12:41 GMT (envelope-from git) Date: Sun, 17 Mar 2024 05:12:41 GMT Message-Id: <202403170512.42H5Cff2080030@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jamie Gritton Subject: git: d50685b303e3 - main - jail: add the -C flag to clean up after a partially removed jail List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jamie X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d50685b303e3353aa1aeaea022a80f31e3732a29 Auto-Submitted: auto-generated The branch main has been updated by jamie: URL: https://cgit.FreeBSD.org/src/commit/?id=d50685b303e3353aa1aeaea022a80f31e3732a29 commit d50685b303e3353aa1aeaea022a80f31e3732a29 Author: Jamie Gritton AuthorDate: 2024-03-17 05:11:14 +0000 Commit: Jamie Gritton CommitDate: 2024-03-17 05:11:14 +0000 jail: add the -C flag to clean up after a partially removed jail Differential Revision: https://reviews.freebsd.org/D42670 --- usr.sbin/jail/jail.8 | 9 ++++++--- usr.sbin/jail/jail.c | 56 +++++++++++++++++++++++++++++++++++++++++---------- usr.sbin/jail/jailp.h | 1 + usr.sbin/jail/state.c | 4 ++-- 4 files changed, 54 insertions(+), 16 deletions(-) diff --git a/usr.sbin/jail/jail.8 b/usr.sbin/jail/jail.8 index e49c3fe95e7f..d58192623952 100644 --- a/usr.sbin/jail/jail.8 +++ b/usr.sbin/jail/jail.8 @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd January 17, 2024 +.Dd March 16, 2024 .Dt JAIL 8 .Os .Sh NAME @@ -33,13 +33,13 @@ .Ss From Configuration File .Nm .Op Fl cm -.Op Fl dqv +.Op Fl Cdqv .Op Fl f Ar conf_file .Op Fl p Ar limit .Op Ar jail .Nm .Op Fl r -.Op Fl qv +.Op Fl Cqv .Op Fl f Ar conf_file .Op Fl p Ar limit .Op Cm * | Ar jail ... @@ -144,6 +144,9 @@ jail if it does exist. .Pp Other available options are: .Bl -tag -width indent +.It Fl C +Clean up after an already-removed jail, running commands and operations +that are typically run following jail removal. .It Fl f Ar conf_file Use configuration file .Ar conf_file diff --git a/usr.sbin/jail/jail.c b/usr.sbin/jail/jail.c index df0a32321794..53e05870ff26 100644 --- a/usr.sbin/jail/jail.c +++ b/usr.sbin/jail/jail.c @@ -128,6 +128,24 @@ static const enum intparam stopcommands[] = { IP__NULL }; +static const enum intparam cleancommands[] = { + IP__NULL, + IP_EXEC_POSTSTOP, + IP_MOUNT_PROCFS, + IP_MOUNT_FDESCFS, + IP_MOUNT_DEVFS, + IP__MOUNT_FROM_FSTAB, + IP_MOUNT, +#ifdef INET6 + IP__IP6_IFADDR, +#endif +#ifdef INET + IP__IP4_IFADDR, +#endif + IP_EXEC_RELEASE, + IP__NULL +}; + int main(int argc, char **argv) { @@ -153,11 +171,14 @@ main(int argc, char **argv) cfname = CONF_FILE; JidFile = NULL; - while ((ch = getopt(argc, argv, "cde:f:hiJ:lmn:p:qrRs:u:U:v")) != -1) { + while ((ch = getopt(argc, argv, "cCde:f:hiJ:lmn:p:qrRs:u:U:v")) != -1) { switch (ch) { case 'c': op |= JF_START; break; + case 'C': + op |= JF_CLEANUP; + break; case 'd': dflag = 1; break; @@ -305,7 +326,7 @@ main(int argc, char **argv) note_remove = docf || argc > 1 || wild_jail_name(argv[0]); } else if (argc > 1 || (argc == 1 && strchr(argv[0], '='))) { /* Single jail specified on the command line */ - if (Rflag) + if (Rflag || (op & JF_CLEANUP)) usage(); docf = 0; for (i = 0; i < argc; i++) { @@ -355,7 +376,7 @@ main(int argc, char **argv) /* Find out which jails will be run. */ dep_setup(docf); error = 0; - if (op == JF_STOP) { + if ((op & JF_OP_MASK) == JF_STOP) { for (i = 0; i < argc; i++) if (start_state(argv[i], docf, op, Rflag) < 0) error = 1; @@ -415,22 +436,24 @@ main(int argc, char **argv) * depending on the jail's current status. */ case JF_START_SET: - j->flags = j->jid < 0 ? JF_START : JF_SET; + j->flags = j->jid < 0 + ? (j->flags & JF_CLEANUP) | JF_START : JF_SET; break; case JF_SET_RESTART: - if (j->jid < 0) { + if (j->jid < 0 && !(j->flags & JF_CLEANUP)) { jail_quoted_warnx(j, "not found", "no jail specified"); failed(j); continue; } - j->flags = rdtun_params(j, 0) ? JF_RESTART : JF_SET; + j->flags = rdtun_params(j, 0) + ? (j->flags & JF_CLEANUP) | JF_RESTART : JF_SET; if (j->flags == JF_RESTART) dep_reset(j); break; case JF_START_SET_RESTART: - j->flags = j->jid < 0 ? JF_START - : rdtun_params(j, 0) ? JF_RESTART : JF_SET; + j->flags = j->jid < 0 ? JF_START : rdtun_params(j, 0) + ? (j->flags & JF_CLEANUP) | JF_RESTART : JF_SET; if (j->flags == JF_RESTART) dep_reset(j); } @@ -449,11 +472,18 @@ main(int argc, char **argv) continue; if (j->jid > 0) goto jail_create_done; + if (j->flags & JF_CLEANUP) { + j->flags |= JF_STOP; + j->comparam = cleancommands; + } else + j->comparam = startcommands; j->comparam = startcommands; j->comstring = NULL; } if (next_command(j)) continue; + if (j->flags & JF_STOP) + goto jail_remove_done; jail_create_done: clear_persist(j); if (jfp != NULL) @@ -485,7 +515,10 @@ main(int argc, char **argv) if (j->comparam == NULL) { if (dep_check(j)) continue; - if (j->jid < 0) { + if (j->flags & JF_CLEANUP) { + j->comparam = j->jid < 0 + ? cleancommands : stopcommands; + } else if (j->jid < 0) { if (!(j->flags & (JF_DEPEND|JF_WILD))) { if (verbose >= 0) jail_quoted_warnx(j, @@ -494,7 +527,8 @@ main(int argc, char **argv) } goto jail_remove_done; } - j->comparam = stopcommands; + else + j->comparam = stopcommands; j->comstring = NULL; } else if ((j->flags & JF_FAILED) && j->jid > 0) goto jail_remove_done; @@ -504,7 +538,7 @@ main(int argc, char **argv) dep_done(j, 0); if ((j->flags & (JF_START | JF_FAILED)) == JF_START) { j->comparam = NULL; - j->flags &= ~JF_STOP; + j->flags &= ~(JF_STOP | JF_CLEANUP); dep_reset(j); requeue(j, j->ndeps ? &depend : &ready); } diff --git a/usr.sbin/jail/jailp.h b/usr.sbin/jail/jailp.h index 74ef2a8acab8..ccd96f5f247e 100644 --- a/usr.sbin/jail/jailp.h +++ b/usr.sbin/jail/jailp.h @@ -67,6 +67,7 @@ #define JF_TIMEOUT 0x0200 /* A command (or process kill) timed out */ #define JF_SLEEPQ 0x0400 /* Waiting on a command and/or timeout */ #define JF_FROM_RUNQ 0x0800 /* Has already been on the run queue */ +#define JF_CLEANUP 0x1000 /* -C Run post-removal commands */ #define JF_OP_MASK (JF_START | JF_SET | JF_STOP) #define JF_RESTART (JF_START | JF_STOP) diff --git a/usr.sbin/jail/state.c b/usr.sbin/jail/state.c index 6cbe879acc55..1d200beacef9 100644 --- a/usr.sbin/jail/state.c +++ b/usr.sbin/jail/state.c @@ -306,7 +306,7 @@ start_state(const char *target, int docf, unsigned state, int running) int jid; char namebuf[MAXHOSTNAMELEN]; - if (!target || (!docf && state != JF_STOP) || + if (!target || (!docf && (state & JF_OP_MASK) != JF_STOP) || (!running && !strcmp(target, "*"))) { /* * For a global wildcard (including no target specified), @@ -365,7 +365,7 @@ start_state(const char *target, int docf, unsigned state, int running) } } else { j = find_jail(target); - if (j == NULL && state == JF_STOP) { + if (j == NULL && (state & JF_OP_MASK) == JF_STOP) { /* Allow -[rR] to specify a currently running jail. */ j = running_jail(target, JAIL_DYING); } From nobody Sun Mar 17 07:59:07 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Ty9Nr212Vz4qJ82; Sun, 17 Mar 2024 07:59: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 4Ty9Nr1gjKz43c0; Sun, 17 Mar 2024 07:59:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710662348; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sH2GJlvaHx7lqKgof9pNkaCvEC0DE23APKk9HJuZSGk=; b=GUNZztiVli/VO6GM+q4rTSU+JuCTmO2lzjfkhw8iqz6Q9Z8rsge39O5E4TKEwVfc6qbRrF 1E4ZW0nSBQcogtz+QYsqRKPY5IFUsWgqN8h5C7T68BFecCZnL6fDyIwePNOx0A66tnkNVs I3n9qBAEmdFqeLTz1haTmyGh3+aoihskcUSlBOMAwBFKeRzR5rhTvNlsDua0KjpDMEqDJ7 GfFzJc0YTMRyCG0iNwr69HBrBnlENi6769VwgFWYidbKvwAj++IfyJWMA0t92EldUJKNmu UblffMSt6NCQQdE5TipX9Gs2Ie2eEpIyjg/yGPO4qNomBhxhEZWFfa4KweAnUQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710662348; a=rsa-sha256; cv=none; b=H9mIrfoBPamMuDZfBzVZJskbaFFSPoqi7F+vWm3WynGBWzSVB8j+G3s2n4khFb2MLUHlvN OdFNORSdOIY/Yy+R+0mziq0GfF0f0ybXskJ+4vrrk3JMtjySnghLF4mi2BbFdOhaYgWDdM ukr1PczI8BDYgRRIZzt+Ib7lAl3EEZL3zAq1f7ntysi7Ix0iVmrnq07Xs+b93PGWPyfmX+ aqepnnwyr7REPt+EMrXsRpLIaPBMDJttUGFA/o2BE8q8q6vJANSmIMDDoObynSC2IRlLms 9FTX+G2VfBaYicZbGMzSdMHq/dpE5V7ocQsJZJ+we9GkcJPif9Q0N2y7NGlclA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710662348; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=sH2GJlvaHx7lqKgof9pNkaCvEC0DE23APKk9HJuZSGk=; b=B94dlOgid3Mr1iEy/rPPyXPOS05ytScnPHfjTk9Bmh4CR5f0vn4V4OGYV7/szgrLz05a4G o5vZebYxtbPFi0FSjeWcV59FfHp2/3IFVMbH9rXbooIuAFPHqrrbAedOuc0VfXYyS0gQRW PqWhkpP8OCouPCmKDhMj0eHy6AZJRPGri7iijWAt6Rl9EHoawrwVzWMcVpEzH1UVr+bx7R hDztDJH+YbTaxijNwnjrGl89oQttuVdo/c11w9riK6wYi98Nj0IAbGEzLVw3CboVPpIEtH S5SpTdyHhwh38RcsdfZ49AAwa+v8/QaEoSiezFrbtMjAGkheBtqhppTFtjLv6A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Ty9Nr1GYmzWcc; Sun, 17 Mar 2024 07:59: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 42H7x840050485; Sun, 17 Mar 2024 07:59:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42H7x7EZ050470; Sun, 17 Mar 2024 07:59:07 GMT (envelope-from git) Date: Sun, 17 Mar 2024 07:59:07 GMT Message-Id: <202403170759.42H7x7EZ050470@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Cy Schubert Subject: git: b7c0c8c18e0f - main - unbound: Vendor import 1.19.3 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: b7c0c8c18e0f12bc22e251fbcabad719b364a38a Auto-Submitted: auto-generated The branch main has been updated by cy: URL: https://cgit.FreeBSD.org/src/commit/?id=b7c0c8c18e0f12bc22e251fbcabad719b364a38a commit b7c0c8c18e0f12bc22e251fbcabad719b364a38a Merge: d50685b303e3 5a33598e88ad Author: Cy Schubert AuthorDate: 2024-03-17 00:13:09 +0000 Commit: Cy Schubert CommitDate: 2024-03-17 07:57:42 +0000 unbound: Vendor import 1.19.3 Release notes at https://www.nlnetlabs.nl/news/2024/Mar/14/unbound-1.19.3-released/ MFC after: 1 week Merge commit '5a33598e88ad8fbc0affa74dee0a2d8cc4010fbc' into main contrib/unbound/acx_nlnetlabs.m4 | 121 +- contrib/unbound/configure | 350 +- contrib/unbound/configure.ac | 28 +- contrib/unbound/daemon/remote.c | 10 +- contrib/unbound/daemon/worker.c | 28 +- contrib/unbound/dnstap/dnstap.c | 32 +- contrib/unbound/dnstap/dnstap.h | 4 + contrib/unbound/dnstap/dnstap.m4 | 107 +- contrib/unbound/dnstap/dnstap.proto | 82 +- contrib/unbound/doc/Changelog | 140 +- contrib/unbound/doc/README | 11 +- contrib/unbound/doc/example.conf.in | 25 +- contrib/unbound/doc/libunbound.3.in | 4 +- contrib/unbound/doc/unbound-anchor.8.in | 2 +- contrib/unbound/doc/unbound-checkconf.8.in | 2 +- contrib/unbound/doc/unbound-control.8.in | 2 +- contrib/unbound/doc/unbound-host.1.in | 2 +- contrib/unbound/doc/unbound.8.in | 4 +- contrib/unbound/doc/unbound.conf.5.in | 24 +- contrib/unbound/iterator/iter_fwd.c | 1 - contrib/unbound/iterator/iter_hints.c | 5 +- contrib/unbound/iterator/iter_scrub.c | 3 +- contrib/unbound/iterator/iterator.c | 8 +- contrib/unbound/services/authzone.c | 2 +- contrib/unbound/services/cache/dns.c | 12 +- contrib/unbound/services/localzone.c | 6 +- contrib/unbound/services/mesh.c | 10 +- contrib/unbound/services/outside_network.c | 46 +- .../cachedb_no_store.tdir/cachedb_no_store.post | 2 +- .../cachedb_no_store.tdir/cachedb_no_store.test | 14 +- .../unbound/testdata/iter_cname_minimise_nx.rpl | 1 - contrib/unbound/testdata/iter_dname_ttl.rpl | 310 + .../testdata/root_zonemd.tdir/root_zonemd.test | 32 +- contrib/unbound/testdata/rrset_use_cached.rpl | 151 + .../unbound/testdata/serve_expired_0ttl_nodata.rpl | 2 +- .../testdata/serve_expired_0ttl_nxdomain.rpl | 2 +- .../testdata/serve_expired_0ttl_servfail.rpl | 2 +- .../testdata/serve_expired_cached_servfail.rpl | 2 +- .../serve_expired_cached_servfail_refresh.rpl | 2 +- .../unbound/testdata/subnet_scopezero_noedns.crpl | 441 ++ contrib/unbound/util/config_file.c | 3 + contrib/unbound/util/config_file.h | 2 + contrib/unbound/util/configlexer.c | 7627 +++++++++++++++++++ contrib/unbound/util/configlexer.lex | 1 + contrib/unbound/util/configparser.c | 7713 ++++++++++++++++++++ contrib/unbound/util/configparser.h | 781 ++ contrib/unbound/util/configparser.y | 13 +- contrib/unbound/util/data/msgencode.c | 3 + contrib/unbound/util/data/msgreply.c | 53 +- contrib/unbound/util/data/msgreply.h | 6 +- contrib/unbound/util/data/packed_rrset.c | 5 +- contrib/unbound/util/iana_ports.inc | 1 - contrib/unbound/util/netevent.c | 12 +- contrib/unbound/validator/autotrust.c | 8 +- contrib/unbound/validator/val_sigcrypt.c | 2 +- contrib/unbound/validator/val_utils.c | 55 +- contrib/unbound/validator/validator.c | 2 + lib/libunbound/config.h | 6 +- 58 files changed, 18038 insertions(+), 287 deletions(-) diff --cc contrib/unbound/testdata/iter_dname_ttl.rpl index 000000000000,115947af3ab3..115947af3ab3 mode 000000,100644..100644 --- a/contrib/unbound/testdata/iter_dname_ttl.rpl +++ b/contrib/unbound/testdata/iter_dname_ttl.rpl diff --cc contrib/unbound/testdata/rrset_use_cached.rpl index 000000000000,8420ae02afe6..8420ae02afe6 mode 000000,100644..100644 --- a/contrib/unbound/testdata/rrset_use_cached.rpl +++ b/contrib/unbound/testdata/rrset_use_cached.rpl diff --cc contrib/unbound/testdata/subnet_scopezero_noedns.crpl index 000000000000,25df0dd71cf2..25df0dd71cf2 mode 000000,100644..100644 --- a/contrib/unbound/testdata/subnet_scopezero_noedns.crpl +++ b/contrib/unbound/testdata/subnet_scopezero_noedns.crpl diff --cc contrib/unbound/util/config_file.c index 5d3cdfb669af,000000000000..e8de5119ba68 mode 100644,000000..100644 --- a/contrib/unbound/util/config_file.c +++ b/contrib/unbound/util/config_file.c @@@ -1,2721 -1,0 +1,2724 @@@ +/* + * util/config_file.c - reads and stores the config file for unbound. + * + * Copyright (c) 2007, NLnet Labs. All rights reserved. + * + * This software is open source. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * + * 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. + * + * Neither the name of the NLNET LABS nor the names of its contributors may + * be used to endorse or promote products derived from this software without + * specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * HOLDER 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. + */ + +/** + * \file + * + * This file contains functions for the config file. + */ + +#include "config.h" +#include +#include +#ifdef HAVE_TIME_H +#include +#endif +#include "util/log.h" +#include "util/configyyrename.h" +#include "util/config_file.h" +#include "configparser.h" +#include "util/net_help.h" +#include "util/data/msgparse.h" +#include "util/module.h" +#include "util/regional.h" +#include "util/fptr_wlist.h" +#include "util/data/dname.h" +#include "util/random.h" +#include "util/rtt.h" +#include "services/cache/infra.h" +#include "sldns/wire2str.h" +#include "sldns/parseutil.h" +#include "iterator/iterator.h" +#ifdef HAVE_GLOB_H +# include +#endif +#ifdef CLIENT_SUBNET +#include "edns-subnet/edns-subnet.h" +#endif +#ifdef HAVE_PWD_H +#include +#endif + +/** from cfg username, after daemonize setup performed */ +uid_t cfg_uid = (uid_t)-1; +/** from cfg username, after daemonize setup performed */ +gid_t cfg_gid = (gid_t)-1; +/** for debug allow small timeout values for fast rollovers */ +int autr_permit_small_holddown = 0; +/** size (in bytes) of stream wait buffers max */ +size_t stream_wait_max = 4 * 1024 * 1024; +size_t http2_query_buffer_max = 4 * 1024 * 1024; +size_t http2_response_buffer_max = 4 * 1024 * 1024; + +/** global config during parsing */ +struct config_parser_state* cfg_parser = 0; + +/** init ports possible for use */ +static void init_outgoing_availports(int* array, int num); + +/** init cookie with random data */ +static void init_cookie_secret(uint8_t* cookie_secret, size_t cookie_secret_len); + +struct config_file* +config_create(void) +{ + struct config_file* cfg; + cfg = (struct config_file*)calloc(1, sizeof(struct config_file)); + if(!cfg) + return NULL; + /* the defaults if no config is present */ + cfg->verbosity = 1; + cfg->stat_interval = 0; + cfg->stat_cumulative = 0; + cfg->stat_extended = 0; + cfg->stat_inhibit_zero = 1; + cfg->num_threads = 1; + cfg->port = UNBOUND_DNS_PORT; + cfg->do_ip4 = 1; + cfg->do_ip6 = 1; + cfg->do_udp = 1; + cfg->do_tcp = 1; + cfg->tcp_reuse_timeout = 60 * 1000; /* 60s in milisecs */ + cfg->max_reuse_tcp_queries = 200; + cfg->tcp_upstream = 0; + cfg->udp_upstream_without_downstream = 0; + cfg->tcp_mss = 0; + cfg->outgoing_tcp_mss = 0; + cfg->tcp_idle_timeout = 30 * 1000; /* 30s in millisecs */ + cfg->tcp_auth_query_timeout = 3 * 1000; /* 3s in millisecs */ + cfg->do_tcp_keepalive = 0; + cfg->tcp_keepalive_timeout = 120 * 1000; /* 120s in millisecs */ + cfg->sock_queue_timeout = 0; /* do not check timeout */ + cfg->ssl_service_key = NULL; + cfg->ssl_service_pem = NULL; + cfg->ssl_port = UNBOUND_DNS_OVER_TLS_PORT; + cfg->ssl_upstream = 0; + cfg->tls_cert_bundle = NULL; + cfg->tls_win_cert = 0; + cfg->tls_use_sni = 1; + cfg->https_port = UNBOUND_DNS_OVER_HTTPS_PORT; + if(!(cfg->http_endpoint = strdup("/dns-query"))) goto error_exit; + cfg->http_max_streams = 100; + cfg->http_query_buffer_size = 4*1024*1024; + cfg->http_response_buffer_size = 4*1024*1024; + cfg->http_nodelay = 1; + cfg->use_syslog = 1; + cfg->log_identity = NULL; /* changed later with argv[0] */ + cfg->log_time_ascii = 0; + cfg->log_queries = 0; + cfg->log_replies = 0; + cfg->log_tag_queryreply = 0; + cfg->log_local_actions = 0; + cfg->log_servfail = 0; ++ cfg->log_destaddr = 0; +#ifndef USE_WINSOCK +# ifdef USE_MINI_EVENT + /* select max 1024 sockets */ + cfg->outgoing_num_ports = 960; + cfg->num_queries_per_thread = 512; +# else + /* libevent can use many sockets */ + cfg->outgoing_num_ports = 4096; + cfg->num_queries_per_thread = 1024; +# endif + cfg->outgoing_num_tcp = 10; + cfg->incoming_num_tcp = 10; +#else + cfg->outgoing_num_ports = 48; /* windows is limited in num fds */ + cfg->num_queries_per_thread = 24; + cfg->outgoing_num_tcp = 2; /* leaves 64-52=12 for: 4if,1stop,thread4 */ + cfg->incoming_num_tcp = 2; +#endif + cfg->stream_wait_size = 4 * 1024 * 1024; + cfg->edns_buffer_size = 1232; /* from DNS flagday recommendation */ + cfg->msg_buffer_size = 65552; /* 64 k + a small margin */ + cfg->msg_cache_size = 4 * 1024 * 1024; + cfg->msg_cache_slabs = 4; + cfg->jostle_time = 200; + cfg->rrset_cache_size = 4 * 1024 * 1024; + cfg->rrset_cache_slabs = 4; + cfg->host_ttl = 900; + cfg->bogus_ttl = 60; + cfg->min_ttl = 0; + cfg->max_ttl = 3600 * 24; + cfg->max_negative_ttl = 3600; + cfg->prefetch = 0; + cfg->prefetch_key = 0; + cfg->deny_any = 0; + cfg->infra_cache_slabs = 4; + cfg->infra_cache_numhosts = 10000; + cfg->infra_cache_min_rtt = 50; + cfg->infra_cache_max_rtt = 120000; + cfg->infra_keep_probing = 0; + cfg->delay_close = 0; + cfg->udp_connect = 1; + if(!(cfg->outgoing_avail_ports = (int*)calloc(65536, sizeof(int)))) + goto error_exit; + init_outgoing_availports(cfg->outgoing_avail_ports, 65536); + if(!(cfg->username = strdup(UB_USERNAME))) goto error_exit; +#ifdef HAVE_CHROOT + if(!(cfg->chrootdir = strdup(CHROOT_DIR))) goto error_exit; +#endif + if(!(cfg->directory = strdup(RUN_DIR))) goto error_exit; + if(!(cfg->logfile = strdup(""))) goto error_exit; + if(!(cfg->pidfile = strdup(PIDFILE))) goto error_exit; + if(!(cfg->target_fetch_policy = strdup("3 2 1 0 0"))) goto error_exit; + cfg->fast_server_permil = 0; + cfg->fast_server_num = 3; + cfg->donotqueryaddrs = NULL; + cfg->donotquery_localhost = 1; + cfg->root_hints = NULL; + cfg->use_systemd = 0; + cfg->do_daemonize = 1; + cfg->if_automatic = 0; + cfg->if_automatic_ports = NULL; + cfg->so_rcvbuf = 0; + cfg->so_sndbuf = 0; + cfg->so_reuseport = REUSEPORT_DEFAULT; + cfg->ip_transparent = 0; + cfg->ip_freebind = 0; + cfg->ip_dscp = 0; + cfg->num_ifs = 0; + cfg->ifs = NULL; + cfg->num_out_ifs = 0; + cfg->out_ifs = NULL; + cfg->stubs = NULL; + cfg->forwards = NULL; + cfg->auths = NULL; +#ifdef CLIENT_SUBNET + cfg->client_subnet = NULL; + cfg->client_subnet_zone = NULL; + cfg->client_subnet_opcode = LDNS_EDNS_CLIENT_SUBNET; + cfg->client_subnet_always_forward = 0; + cfg->max_client_subnet_ipv4 = 24; + cfg->max_client_subnet_ipv6 = 56; + cfg->min_client_subnet_ipv4 = 0; + cfg->min_client_subnet_ipv6 = 0; + cfg->max_ecs_tree_size_ipv4 = 100; + cfg->max_ecs_tree_size_ipv6 = 100; +#endif + cfg->views = NULL; + cfg->acls = NULL; + cfg->tcp_connection_limits = NULL; + cfg->harden_short_bufsize = 1; + cfg->harden_large_queries = 0; + cfg->harden_glue = 1; + cfg->harden_dnssec_stripped = 1; + cfg->harden_below_nxdomain = 1; + cfg->harden_referral_path = 0; + cfg->harden_algo_downgrade = 0; + cfg->harden_unknown_additional = 0; + cfg->use_caps_bits_for_id = 0; + cfg->caps_whitelist = NULL; + cfg->private_address = NULL; + cfg->private_domain = NULL; + cfg->unwanted_threshold = 0; + cfg->hide_identity = 0; + cfg->hide_version = 0; + cfg->hide_trustanchor = 0; + cfg->hide_http_user_agent = 0; + cfg->identity = NULL; + cfg->version = NULL; + cfg->http_user_agent = NULL; + cfg->nsid_cfg_str = NULL; + cfg->nsid = NULL; + cfg->nsid_len = 0; + cfg->auto_trust_anchor_file_list = NULL; + cfg->trust_anchor_file_list = NULL; + cfg->trust_anchor_list = NULL; + cfg->trusted_keys_file_list = NULL; + cfg->trust_anchor_signaling = 1; + cfg->root_key_sentinel = 1; + cfg->domain_insecure = NULL; + cfg->val_date_override = 0; + cfg->val_sig_skew_min = 3600; /* at least daylight savings trouble */ + cfg->val_sig_skew_max = 86400; /* at most timezone settings trouble */ + cfg->val_max_restart = 5; + cfg->val_clean_additional = 1; + cfg->val_log_level = 0; + cfg->val_log_squelch = 0; + cfg->val_permissive_mode = 0; + cfg->aggressive_nsec = 1; + cfg->ignore_cd = 0; + cfg->disable_edns_do = 0; + cfg->serve_expired = 0; + cfg->serve_expired_ttl = 0; + cfg->serve_expired_ttl_reset = 0; + cfg->serve_expired_reply_ttl = 30; + cfg->serve_expired_client_timeout = 0; + cfg->ede_serve_expired = 0; + cfg->serve_original_ttl = 0; + cfg->zonemd_permissive_mode = 0; + cfg->add_holddown = 30*24*3600; + cfg->del_holddown = 30*24*3600; + cfg->keep_missing = 366*24*3600; /* one year plus a little leeway */ + cfg->permit_small_holddown = 0; + cfg->key_cache_size = 4 * 1024 * 1024; + cfg->key_cache_slabs = 4; + cfg->neg_cache_size = 1 * 1024 * 1024; + cfg->local_zones = NULL; + cfg->local_zones_nodefault = NULL; +#ifdef USE_IPSET + cfg->local_zones_ipset = NULL; +#endif + cfg->local_zones_disable_default = 0; + cfg->local_data = NULL; + cfg->local_zone_overrides = NULL; + cfg->unblock_lan_zones = 0; + cfg->insecure_lan_zones = 0; + cfg->python_script = NULL; + cfg->dynlib_file = NULL; + cfg->remote_control_enable = 0; + cfg->control_ifs.first = NULL; + cfg->control_ifs.last = NULL; + cfg->control_port = UNBOUND_CONTROL_PORT; + cfg->control_use_cert = 1; + cfg->minimal_responses = 1; + cfg->rrset_roundrobin = 1; + cfg->unknown_server_time_limit = 376; + cfg->max_udp_size = 1232; /* value taken from edns_buffer_size */ + if(!(cfg->server_key_file = strdup(RUN_DIR"/unbound_server.key"))) + goto error_exit; + if(!(cfg->server_cert_file = strdup(RUN_DIR"/unbound_server.pem"))) + goto error_exit; + if(!(cfg->control_key_file = strdup(RUN_DIR"/unbound_control.key"))) + goto error_exit; + if(!(cfg->control_cert_file = strdup(RUN_DIR"/unbound_control.pem"))) + goto error_exit; + +#ifdef CLIENT_SUBNET + if(!(cfg->module_conf = strdup("subnetcache validator iterator"))) goto error_exit; +#else + if(!(cfg->module_conf = strdup("validator iterator"))) goto error_exit; +#endif + if(!(cfg->val_nsec3_key_iterations = + strdup("1024 150 2048 150 4096 150"))) goto error_exit; +#if defined(DNSTAP_SOCKET_PATH) + if(!(cfg->dnstap_socket_path = strdup(DNSTAP_SOCKET_PATH))) + goto error_exit; +#endif + cfg->dnstap_bidirectional = 1; + cfg->dnstap_tls = 1; + cfg->disable_dnssec_lame_check = 0; + cfg->ip_ratelimit_cookie = 0; + cfg->ip_ratelimit = 0; + cfg->ratelimit = 0; + cfg->ip_ratelimit_slabs = 4; + cfg->ratelimit_slabs = 4; + cfg->ip_ratelimit_size = 4*1024*1024; + cfg->ratelimit_size = 4*1024*1024; + cfg->ratelimit_for_domain = NULL; + cfg->ratelimit_below_domain = NULL; + cfg->ip_ratelimit_factor = 10; + cfg->ratelimit_factor = 10; + cfg->ip_ratelimit_backoff = 0; + cfg->ratelimit_backoff = 0; + cfg->outbound_msg_retry = 5; + cfg->max_sent_count = 32; + cfg->max_query_restarts = 11; + cfg->qname_minimisation = 1; + cfg->qname_minimisation_strict = 0; + cfg->shm_enable = 0; + cfg->shm_key = 11777; + cfg->edns_client_strings = NULL; + cfg->edns_client_string_opcode = 65001; + cfg->dnscrypt = 0; + cfg->dnscrypt_port = 0; + cfg->dnscrypt_provider = NULL; + cfg->dnscrypt_provider_cert = NULL; + cfg->dnscrypt_provider_cert_rotated = NULL; + cfg->dnscrypt_secret_key = NULL; + cfg->dnscrypt_shared_secret_cache_size = 4*1024*1024; + cfg->dnscrypt_shared_secret_cache_slabs = 4; + cfg->dnscrypt_nonce_cache_size = 4*1024*1024; + cfg->dnscrypt_nonce_cache_slabs = 4; + cfg->pad_responses = 1; + cfg->pad_responses_block_size = 468; /* from RFC8467 */ + cfg->pad_queries = 1; + cfg->pad_queries_block_size = 128; /* from RFC8467 */ +#ifdef USE_IPSECMOD + cfg->ipsecmod_enabled = 1; + cfg->ipsecmod_ignore_bogus = 0; + cfg->ipsecmod_hook = NULL; + cfg->ipsecmod_max_ttl = 3600; + cfg->ipsecmod_whitelist = NULL; + cfg->ipsecmod_strict = 0; +#endif + cfg->do_answer_cookie = 0; + memset(cfg->cookie_secret, 0, sizeof(cfg->cookie_secret)); + cfg->cookie_secret_len = 16; + init_cookie_secret(cfg->cookie_secret, cfg->cookie_secret_len); +#ifdef USE_CACHEDB + if(!(cfg->cachedb_backend = strdup("testframe"))) goto error_exit; + if(!(cfg->cachedb_secret = strdup("default"))) goto error_exit; + cfg->cachedb_no_store = 0; +#ifdef USE_REDIS + if(!(cfg->redis_server_host = strdup("127.0.0.1"))) goto error_exit; + cfg->redis_server_path = NULL; + cfg->redis_server_password = NULL; + cfg->redis_timeout = 100; + cfg->redis_server_port = 6379; + cfg->redis_expire_records = 0; + cfg->redis_logical_db = 0; +#endif /* USE_REDIS */ +#endif /* USE_CACHEDB */ +#ifdef USE_IPSET + cfg->ipset_name_v4 = NULL; + cfg->ipset_name_v6 = NULL; +#endif + cfg->ede = 0; + return cfg; +error_exit: + config_delete(cfg); + return NULL; +} + +struct config_file* config_create_forlib(void) +{ + struct config_file* cfg = config_create(); + if(!cfg) return NULL; + /* modifications for library use, less verbose, less memory */ + free(cfg->chrootdir); + cfg->chrootdir = NULL; + cfg->verbosity = 0; + cfg->outgoing_num_ports = 16; /* in library use, this is 'reasonable' + and probably within the ulimit(maxfds) of the user */ + cfg->outgoing_num_tcp = 2; + cfg->msg_cache_size = 1024*1024; + cfg->msg_cache_slabs = 1; + cfg->rrset_cache_size = 1024*1024; + cfg->rrset_cache_slabs = 1; + cfg->infra_cache_slabs = 1; + cfg->use_syslog = 0; + cfg->key_cache_size = 1024*1024; + cfg->key_cache_slabs = 1; + cfg->neg_cache_size = 100 * 1024; + cfg->donotquery_localhost = 0; /* allow, so that you can ask a + forward nameserver running on localhost */ + cfg->val_log_level = 2; /* to fill why_bogus with */ + cfg->val_log_squelch = 1; + cfg->minimal_responses = 0; + cfg->harden_short_bufsize = 1; + return cfg; +} + +/** check that the value passed is >= 0 */ +#define IS_NUMBER_OR_ZERO \ + if(atoi(val) == 0 && strcmp(val, "0") != 0) return 0 +/** check that the value passed is > 0 */ +#define IS_NONZERO_NUMBER \ + if(atoi(val) == 0) return 0 +/** check that the value passed is not 0 and a power of 2 */ +#define IS_POW2_NUMBER \ + if(atoi(val) == 0 || !is_pow2((size_t)atoi(val))) return 0 +/** check that the value passed is yes or no */ +#define IS_YES_OR_NO \ + if(strcmp(val, "yes") != 0 && strcmp(val, "no") != 0) return 0 +/** put integer_or_zero into variable */ +#define S_NUMBER_OR_ZERO(str, var) if(strcmp(opt, str) == 0) \ + { IS_NUMBER_OR_ZERO; cfg->var = atoi(val); } +/** put integer_nonzero into variable */ +#define S_NUMBER_NONZERO(str, var) if(strcmp(opt, str) == 0) \ + { IS_NONZERO_NUMBER; cfg->var = atoi(val); } +/** put integer_or_zero into unsigned */ +#define S_UNSIGNED_OR_ZERO(str, var) if(strcmp(opt, str) == 0) \ + { IS_NUMBER_OR_ZERO; cfg->var = (unsigned)atoi(val); } +/** put integer_or_zero into size_t */ +#define S_SIZET_OR_ZERO(str, var) if(strcmp(opt, str) == 0) \ + { IS_NUMBER_OR_ZERO; cfg->var = (size_t)atoi(val); } +/** put integer_nonzero into size_t */ +#define S_SIZET_NONZERO(str, var) if(strcmp(opt, str) == 0) \ + { IS_NONZERO_NUMBER; cfg->var = (size_t)atoi(val); } +/** put yesno into variable */ +#define S_YNO(str, var) if(strcmp(opt, str) == 0) \ + { IS_YES_OR_NO; cfg->var = (strcmp(val, "yes") == 0); } +/** put memsize into variable */ +#define S_MEMSIZE(str, var) if(strcmp(opt, str)==0) \ + { return cfg_parse_memsize(val, &cfg->var); } +/** put pow2 number into variable */ +#define S_POW2(str, var) if(strcmp(opt, str)==0) \ + { IS_POW2_NUMBER; cfg->var = (size_t)atoi(val); } +/** put string into variable */ +#define S_STR(str, var) if(strcmp(opt, str)==0) \ + { free(cfg->var); return (cfg->var = strdup(val)) != NULL; } +/** put string into strlist */ +#define S_STRLIST(str, var) if(strcmp(opt, str)==0) \ + { return cfg_strlist_insert(&cfg->var, strdup(val)); } +/** put string into strlist if not present yet*/ +#define S_STRLIST_UNIQ(str, var) if(strcmp(opt, str)==0) \ + { if(cfg_strlist_find(cfg->var, val)) { return 0;} \ + return cfg_strlist_insert(&cfg->var, strdup(val)); } +/** append string to strlist */ +#define S_STRLIST_APPEND(str, var) if(strcmp(opt, str)==0) \ + { return cfg_strlist_append(&cfg->var, strdup(val)); } + +int config_set_option(struct config_file* cfg, const char* opt, + const char* val) +{ + char buf[64]; + if(!opt) return 0; + if(opt[strlen(opt)-1] != ':' && strlen(opt)+2stat_interval = 0; + else if(atoi(val) == 0) + return 0; + else cfg->stat_interval = atoi(val); + } else if(strcmp(opt, "num-threads:") == 0) { + /* not supported, library must have 1 thread in bgworker */ + return 0; + } else if(strcmp(opt, "outgoing-port-permit:") == 0) { + return cfg_mark_ports(val, 1, + cfg->outgoing_avail_ports, 65536); + } else if(strcmp(opt, "outgoing-port-avoid:") == 0) { + return cfg_mark_ports(val, 0, + cfg->outgoing_avail_ports, 65536); + } else if(strcmp(opt, "local-zone:") == 0) { + return cfg_parse_local_zone(cfg, val); + } else if(strcmp(opt, "val-override-date:") == 0) { + if(strcmp(val, "") == 0 || strcmp(val, "0") == 0) { + cfg->val_date_override = 0; + } else if(strlen(val) == 14) { + cfg->val_date_override = cfg_convert_timeval(val); + return cfg->val_date_override != 0; + } else { + if(atoi(val) == 0) return 0; + cfg->val_date_override = (uint32_t)atoi(val); + } + } else if(strcmp(opt, "local-data-ptr:") == 0) { + char* ptr = cfg_ptr_reverse((char*)opt); + return cfg_strlist_insert(&cfg->local_data, ptr); + } else if(strcmp(opt, "logfile:") == 0) { + cfg->use_syslog = 0; + free(cfg->logfile); + return (cfg->logfile = strdup(val)) != NULL; + } + else if(strcmp(opt, "log-time-ascii:") == 0) + { IS_YES_OR_NO; cfg->log_time_ascii = (strcmp(val, "yes") == 0); + log_set_time_asc(cfg->log_time_ascii); } + else S_SIZET_NONZERO("max-udp-size:", max_udp_size) + else S_YNO("use-syslog:", use_syslog) + else S_STR("log-identity:", log_identity) + else S_YNO("extended-statistics:", stat_extended) + else S_YNO("statistics-inhibit-zero:", stat_inhibit_zero) + else S_YNO("statistics-cumulative:", stat_cumulative) + else S_YNO("shm-enable:", shm_enable) + else S_NUMBER_OR_ZERO("shm-key:", shm_key) + else S_YNO("do-ip4:", do_ip4) + else S_YNO("do-ip6:", do_ip6) + else S_YNO("do-udp:", do_udp) + else S_YNO("do-tcp:", do_tcp) + else S_YNO("prefer-ip4:", prefer_ip4) + else S_YNO("prefer-ip6:", prefer_ip6) + else S_YNO("tcp-upstream:", tcp_upstream) + else S_YNO("udp-upstream-without-downstream:", + udp_upstream_without_downstream) + else S_NUMBER_NONZERO("tcp-mss:", tcp_mss) + else S_NUMBER_NONZERO("outgoing-tcp-mss:", outgoing_tcp_mss) + else S_NUMBER_NONZERO("tcp-auth-query-timeout:", tcp_auth_query_timeout) + else S_NUMBER_NONZERO("tcp-idle-timeout:", tcp_idle_timeout) + else S_NUMBER_NONZERO("max-reuse-tcp-queries:", max_reuse_tcp_queries) + else S_NUMBER_NONZERO("tcp-reuse-timeout:", tcp_reuse_timeout) + else S_YNO("edns-tcp-keepalive:", do_tcp_keepalive) + else S_NUMBER_NONZERO("edns-tcp-keepalive-timeout:", tcp_keepalive_timeout) + else S_NUMBER_OR_ZERO("sock-queue-timeout:", sock_queue_timeout) + else S_YNO("ssl-upstream:", ssl_upstream) + else S_YNO("tls-upstream:", ssl_upstream) + else S_STR("ssl-service-key:", ssl_service_key) + else S_STR("tls-service-key:", ssl_service_key) + else S_STR("ssl-service-pem:", ssl_service_pem) + else S_STR("tls-service-pem:", ssl_service_pem) + else S_NUMBER_NONZERO("ssl-port:", ssl_port) + else S_NUMBER_NONZERO("tls-port:", ssl_port) + else S_STR("ssl-cert-bundle:", tls_cert_bundle) + else S_STR("tls-cert-bundle:", tls_cert_bundle) + else S_YNO("tls-win-cert:", tls_win_cert) + else S_YNO("tls-system-cert:", tls_win_cert) + else S_STRLIST("additional-ssl-port:", tls_additional_port) + else S_STRLIST("additional-tls-port:", tls_additional_port) + else S_STRLIST("tls-additional-ports:", tls_additional_port) + else S_STRLIST("tls-additional-port:", tls_additional_port) + else S_STRLIST_APPEND("tls-session-ticket-keys:", tls_session_ticket_keys) + else S_STR("tls-ciphers:", tls_ciphers) + else S_STR("tls-ciphersuites:", tls_ciphersuites) + else S_YNO("tls-use-sni:", tls_use_sni) + else S_NUMBER_NONZERO("https-port:", https_port) + else S_STR("http-endpoint:", http_endpoint) + else S_NUMBER_NONZERO("http-max-streams:", http_max_streams) + else S_MEMSIZE("http-query-buffer-size:", http_query_buffer_size) + else S_MEMSIZE("http-response-buffer-size:", http_response_buffer_size) + else S_YNO("http-nodelay:", http_nodelay) + else S_YNO("http-notls-downstream:", http_notls_downstream) + else S_YNO("interface-automatic:", if_automatic) + else S_STR("interface-automatic-ports:", if_automatic_ports) + else S_YNO("use-systemd:", use_systemd) + else S_YNO("do-daemonize:", do_daemonize) + else S_NUMBER_NONZERO("port:", port) + else S_NUMBER_NONZERO("outgoing-range:", outgoing_num_ports) + else S_SIZET_OR_ZERO("outgoing-num-tcp:", outgoing_num_tcp) + else S_SIZET_OR_ZERO("incoming-num-tcp:", incoming_num_tcp) + else S_MEMSIZE("stream-wait-size:", stream_wait_size) + else S_SIZET_NONZERO("edns-buffer-size:", edns_buffer_size) + else S_SIZET_NONZERO("msg-buffer-size:", msg_buffer_size) + else S_MEMSIZE("msg-cache-size:", msg_cache_size) + else S_POW2("msg-cache-slabs:", msg_cache_slabs) + else S_SIZET_NONZERO("num-queries-per-thread:",num_queries_per_thread) + else S_SIZET_OR_ZERO("jostle-timeout:", jostle_time) + else S_MEMSIZE("so-rcvbuf:", so_rcvbuf) + else S_MEMSIZE("so-sndbuf:", so_sndbuf) + else S_YNO("so-reuseport:", so_reuseport) + else S_YNO("ip-transparent:", ip_transparent) + else S_YNO("ip-freebind:", ip_freebind) + else S_NUMBER_OR_ZERO("ip-dscp:", ip_dscp) + else S_MEMSIZE("rrset-cache-size:", rrset_cache_size) + else S_POW2("rrset-cache-slabs:", rrset_cache_slabs) + else S_YNO("prefetch:", prefetch) + else S_YNO("prefetch-key:", prefetch_key) + else S_YNO("deny-any:", deny_any) + else if(strcmp(opt, "cache-max-ttl:") == 0) + { IS_NUMBER_OR_ZERO; cfg->max_ttl = atoi(val); MAX_TTL=(time_t)cfg->max_ttl;} + else if(strcmp(opt, "cache-max-negative-ttl:") == 0) + { IS_NUMBER_OR_ZERO; cfg->max_negative_ttl = atoi(val); MAX_NEG_TTL=(time_t)cfg->max_negative_ttl;} + else if(strcmp(opt, "cache-min-ttl:") == 0) + { IS_NUMBER_OR_ZERO; cfg->min_ttl = atoi(val); MIN_TTL=(time_t)cfg->min_ttl;} + else if(strcmp(opt, "infra-cache-min-rtt:") == 0) { + IS_NUMBER_OR_ZERO; cfg->infra_cache_min_rtt = atoi(val); + RTT_MIN_TIMEOUT=cfg->infra_cache_min_rtt; + } + else if(strcmp(opt, "infra-cache-max-rtt:") == 0) { + IS_NUMBER_OR_ZERO; cfg->infra_cache_max_rtt = atoi(val); + RTT_MAX_TIMEOUT=cfg->infra_cache_max_rtt; + USEFUL_SERVER_TOP_TIMEOUT = RTT_MAX_TIMEOUT; + BLACKLIST_PENALTY = USEFUL_SERVER_TOP_TIMEOUT*4; + } + else S_YNO("infra-keep-probing:", infra_keep_probing) + else S_NUMBER_OR_ZERO("infra-host-ttl:", host_ttl) + else S_POW2("infra-cache-slabs:", infra_cache_slabs) + else S_SIZET_NONZERO("infra-cache-numhosts:", infra_cache_numhosts) + else S_NUMBER_OR_ZERO("delay-close:", delay_close) + else S_YNO("udp-connect:", udp_connect) + else S_STR("chroot:", chrootdir) + else S_STR("username:", username) + else S_STR("directory:", directory) + else S_STR("pidfile:", pidfile) + else S_YNO("hide-identity:", hide_identity) + else S_YNO("hide-version:", hide_version) + else S_YNO("hide-trustanchor:", hide_trustanchor) + else S_YNO("hide-http-user-agent:", hide_http_user_agent) + else S_STR("identity:", identity) + else S_STR("version:", version) + else S_STR("http-user-agent:", http_user_agent) + else if(strcmp(opt, "nsid:") == 0) { + free(cfg->nsid_cfg_str); + if (!(cfg->nsid_cfg_str = strdup(val))) + return 0; + /* Empty string is just validly unsetting nsid */ + if (*val == 0) { + free(cfg->nsid); + cfg->nsid = NULL; + cfg->nsid_len = 0; + return 1; + } + cfg->nsid = cfg_parse_nsid(val, &cfg->nsid_len); + return cfg->nsid != NULL; + } + else S_STRLIST("root-hints:", root_hints) + else S_STR("target-fetch-policy:", target_fetch_policy) + else S_YNO("harden-glue:", harden_glue) + else S_YNO("harden-short-bufsize:", harden_short_bufsize) + else S_YNO("harden-large-queries:", harden_large_queries) + else S_YNO("harden-dnssec-stripped:", harden_dnssec_stripped) + else S_YNO("harden-below-nxdomain:", harden_below_nxdomain) + else S_YNO("harden-referral-path:", harden_referral_path) + else S_YNO("harden-algo-downgrade:", harden_algo_downgrade) + else S_YNO("harden-unknown-additional:", harden_unknown_additional) + else S_YNO("use-caps-for-id:", use_caps_bits_for_id) + else S_STRLIST("caps-whitelist:", caps_whitelist) + else S_SIZET_OR_ZERO("unwanted-reply-threshold:", unwanted_threshold) + else S_STRLIST("private-address:", private_address) + else S_STRLIST("private-domain:", private_domain) + else S_YNO("do-not-query-localhost:", donotquery_localhost) + else S_STRLIST("do-not-query-address:", donotqueryaddrs) + else S_STRLIST("auto-trust-anchor-file:", auto_trust_anchor_file_list) + else S_STRLIST("trust-anchor-file:", trust_anchor_file_list) + else S_STRLIST("trust-anchor:", trust_anchor_list) + else S_STRLIST("trusted-keys-file:", trusted_keys_file_list) + else S_YNO("trust-anchor-signaling:", trust_anchor_signaling) + else S_YNO("root-key-sentinel:", root_key_sentinel) + else S_STRLIST("domain-insecure:", domain_insecure) + else S_NUMBER_OR_ZERO("val-bogus-ttl:", bogus_ttl) + else S_YNO("val-clean-additional:", val_clean_additional) + else S_NUMBER_OR_ZERO("val-log-level:", val_log_level) + else S_YNO("val-log-squelch:", val_log_squelch) + else S_YNO("log-queries:", log_queries) + else S_YNO("log-replies:", log_replies) + else S_YNO("log-tag-queryreply:", log_tag_queryreply) + else S_YNO("log-local-actions:", log_local_actions) + else S_YNO("log-servfail:", log_servfail) ++ else S_YNO("log-destaddr:", log_destaddr) + else S_YNO("val-permissive-mode:", val_permissive_mode) + else S_YNO("aggressive-nsec:", aggressive_nsec) + else S_YNO("ignore-cd-flag:", ignore_cd) + else S_YNO("disable-edns-do:", disable_edns_do) + else if(strcmp(opt, "serve-expired:") == 0) + { IS_YES_OR_NO; cfg->serve_expired = (strcmp(val, "yes") == 0); + SERVE_EXPIRED = cfg->serve_expired; } + else if(strcmp(opt, "serve-expired-ttl:") == 0) + { IS_NUMBER_OR_ZERO; cfg->serve_expired_ttl = atoi(val); SERVE_EXPIRED_TTL=(time_t)cfg->serve_expired_ttl;} + else S_YNO("serve-expired-ttl-reset:", serve_expired_ttl_reset) + else if(strcmp(opt, "serve-expired-reply-ttl:") == 0) + { IS_NUMBER_OR_ZERO; cfg->serve_expired_reply_ttl = atoi(val); SERVE_EXPIRED_REPLY_TTL=(time_t)cfg->serve_expired_reply_ttl;} + else S_NUMBER_OR_ZERO("serve-expired-client-timeout:", serve_expired_client_timeout) + else S_YNO("ede:", ede) + else S_YNO("ede-serve-expired:", ede_serve_expired) + else S_YNO("serve-original-ttl:", serve_original_ttl) + else S_STR("val-nsec3-keysize-iterations:", val_nsec3_key_iterations) + else S_YNO("zonemd-permissive-mode:", zonemd_permissive_mode) + else S_UNSIGNED_OR_ZERO("add-holddown:", add_holddown) + else S_UNSIGNED_OR_ZERO("del-holddown:", del_holddown) + else S_UNSIGNED_OR_ZERO("keep-missing:", keep_missing) + else if(strcmp(opt, "permit-small-holddown:") == 0) + { IS_YES_OR_NO; cfg->permit_small_holddown = (strcmp(val, "yes") == 0); + autr_permit_small_holddown = cfg->permit_small_holddown; } + else S_MEMSIZE("key-cache-size:", key_cache_size) + else S_POW2("key-cache-slabs:", key_cache_slabs) + else S_MEMSIZE("neg-cache-size:", neg_cache_size) + else S_YNO("minimal-responses:", minimal_responses) + else S_YNO("rrset-roundrobin:", rrset_roundrobin) + else S_NUMBER_OR_ZERO("unknown-server-time-limit:", unknown_server_time_limit) + else S_STRLIST("local-data:", local_data) + else S_YNO("unblock-lan-zones:", unblock_lan_zones) + else S_YNO("insecure-lan-zones:", insecure_lan_zones) + else S_YNO("control-enable:", remote_control_enable) + else S_STRLIST_APPEND("control-interface:", control_ifs) + else S_NUMBER_NONZERO("control-port:", control_port) + else S_STR("server-key-file:", server_key_file) + else S_STR("server-cert-file:", server_cert_file) + else S_STR("control-key-file:", control_key_file) + else S_STR("control-cert-file:", control_cert_file) + else S_STR("module-config:", module_conf) + else S_STRLIST("python-script:", python_script) + else S_STRLIST("dynlib-file:", dynlib_file) + else S_YNO("disable-dnssec-lame-check:", disable_dnssec_lame_check) +#ifdef CLIENT_SUBNET + /* Can't set max subnet prefix here, since that value is used when + * generating the address tree. */ + /* No client-subnet-always-forward here, module registration depends on + * this option. */ +#endif +#ifdef USE_DNSTAP + else S_YNO("dnstap-enable:", dnstap) + else S_YNO("dnstap-bidirectional:", dnstap_bidirectional) + else S_STR("dnstap-socket-path:", dnstap_socket_path) + else S_STR("dnstap-ip:", dnstap_ip) + else S_YNO("dnstap-tls:", dnstap_tls) + else S_STR("dnstap-tls-server-name:", dnstap_tls_server_name) + else S_STR("dnstap-tls-cert-bundle:", dnstap_tls_cert_bundle) + else S_STR("dnstap-tls-client-key-file:", dnstap_tls_client_key_file) + else S_STR("dnstap-tls-client-cert-file:", + dnstap_tls_client_cert_file) + else S_YNO("dnstap-send-identity:", dnstap_send_identity) + else S_YNO("dnstap-send-version:", dnstap_send_version) + else S_STR("dnstap-identity:", dnstap_identity) + else S_STR("dnstap-version:", dnstap_version) + else S_YNO("dnstap-log-resolver-query-messages:", + dnstap_log_resolver_query_messages) + else S_YNO("dnstap-log-resolver-response-messages:", + dnstap_log_resolver_response_messages) + else S_YNO("dnstap-log-client-query-messages:", + dnstap_log_client_query_messages) + else S_YNO("dnstap-log-client-response-messages:", + dnstap_log_client_response_messages) + else S_YNO("dnstap-log-forwarder-query-messages:", + dnstap_log_forwarder_query_messages) + else S_YNO("dnstap-log-forwarder-response-messages:", + dnstap_log_forwarder_response_messages) +#endif +#ifdef USE_DNSCRYPT + else S_YNO("dnscrypt-enable:", dnscrypt) + else S_NUMBER_NONZERO("dnscrypt-port:", dnscrypt_port) + else S_STR("dnscrypt-provider:", dnscrypt_provider) + else S_STRLIST_UNIQ("dnscrypt-provider-cert:", dnscrypt_provider_cert) + else S_STRLIST("dnscrypt-provider-cert-rotated:", dnscrypt_provider_cert_rotated) + else S_STRLIST_UNIQ("dnscrypt-secret-key:", dnscrypt_secret_key) + else S_MEMSIZE("dnscrypt-shared-secret-cache-size:", + dnscrypt_shared_secret_cache_size) + else S_POW2("dnscrypt-shared-secret-cache-slabs:", + dnscrypt_shared_secret_cache_slabs) + else S_MEMSIZE("dnscrypt-nonce-cache-size:", + dnscrypt_nonce_cache_size) + else S_POW2("dnscrypt-nonce-cache-slabs:", + dnscrypt_nonce_cache_slabs) +#endif + else if(strcmp(opt, "ip-ratelimit-cookie:") == 0) { + IS_NUMBER_OR_ZERO; cfg->ip_ratelimit_cookie = atoi(val); + infra_ip_ratelimit_cookie=cfg->ip_ratelimit_cookie; + } + else if(strcmp(opt, "ip-ratelimit:") == 0) { + IS_NUMBER_OR_ZERO; cfg->ip_ratelimit = atoi(val); + infra_ip_ratelimit=cfg->ip_ratelimit; + } + else if(strcmp(opt, "ratelimit:") == 0) { + IS_NUMBER_OR_ZERO; cfg->ratelimit = atoi(val); + infra_dp_ratelimit=cfg->ratelimit; + } + else S_MEMSIZE("ip-ratelimit-size:", ip_ratelimit_size) + else S_MEMSIZE("ratelimit-size:", ratelimit_size) + else S_POW2("ip-ratelimit-slabs:", ip_ratelimit_slabs) + else S_POW2("ratelimit-slabs:", ratelimit_slabs) + else S_NUMBER_OR_ZERO("ip-ratelimit-factor:", ip_ratelimit_factor) + else S_NUMBER_OR_ZERO("ratelimit-factor:", ratelimit_factor) + else S_YNO("ip-ratelimit-backoff:", ip_ratelimit_backoff) + else S_YNO("ratelimit-backoff:", ratelimit_backoff) + else S_NUMBER_NONZERO("outbound-msg-retry:", outbound_msg_retry) + else S_NUMBER_NONZERO("max-sent-count:", max_sent_count) + else S_NUMBER_NONZERO("max-query-restarts:", max_query_restarts) + else S_SIZET_NONZERO("fast-server-num:", fast_server_num) + else S_NUMBER_OR_ZERO("fast-server-permil:", fast_server_permil) + else S_YNO("qname-minimisation:", qname_minimisation) + else S_YNO("qname-minimisation-strict:", qname_minimisation_strict) + else S_YNO("pad-responses:", pad_responses) + else S_SIZET_NONZERO("pad-responses-block-size:", pad_responses_block_size) + else S_YNO("pad-queries:", pad_queries) + else S_SIZET_NONZERO("pad-queries-block-size:", pad_queries_block_size) + else S_STRLIST("proxy-protocol-port:", proxy_protocol_port) +#ifdef USE_IPSECMOD + else S_YNO("ipsecmod-enabled:", ipsecmod_enabled) + else S_YNO("ipsecmod-ignore-bogus:", ipsecmod_ignore_bogus) + else if(strcmp(opt, "ipsecmod-max-ttl:") == 0) + { IS_NUMBER_OR_ZERO; cfg->ipsecmod_max_ttl = atoi(val); } + else S_YNO("ipsecmod-strict:", ipsecmod_strict) +#endif +#ifdef USE_CACHEDB + else S_YNO("cachedb-no-store:", cachedb_no_store) +#endif /* USE_CACHEDB */ + else if(strcmp(opt, "define-tag:") ==0) { + return config_add_tag(cfg, val); + /* val_sig_skew_min, max and val_max_restart are copied into val_env + * during init so this does not update val_env with set_option */ + } else if(strcmp(opt, "val-sig-skew-min:") == 0) + { IS_NUMBER_OR_ZERO; cfg->val_sig_skew_min = (int32_t)atoi(val); } + else if(strcmp(opt, "val-sig-skew-max:") == 0) + { IS_NUMBER_OR_ZERO; cfg->val_sig_skew_max = (int32_t)atoi(val); } + else if(strcmp(opt, "val-max-restart:") == 0) + { IS_NUMBER_OR_ZERO; cfg->val_max_restart = (int32_t)atoi(val); } + else if (strcmp(opt, "outgoing-interface:") == 0) { + char* d = strdup(val); + char** oi = + (char**)reallocarray(NULL, (size_t)cfg->num_out_ifs+1, sizeof(char*)); + if(!d || !oi) { free(d); free(oi); return -1; } + if(cfg->out_ifs && cfg->num_out_ifs) { + memmove(oi, cfg->out_ifs, cfg->num_out_ifs*sizeof(char*)); + free(cfg->out_ifs); + } + oi[cfg->num_out_ifs++] = d; + cfg->out_ifs = oi; + } else { + /* unknown or unsupported (from the set_option interface): + * interface, outgoing-interface, access-control, + * stub-zone, name, stub-addr, stub-host, stub-prime + * forward-first, stub-first, forward-ssl-upstream, + * stub-ssl-upstream, forward-zone, auth-zone + * name, forward-addr, forward-host, + * ratelimit-for-domain, ratelimit-below-domain, + * local-zone-tag, access-control-view, interface-*, + * send-client-subnet, client-subnet-always-forward, + * max-client-subnet-ipv4, max-client-subnet-ipv6, + * min-client-subnet-ipv4, min-client-subnet-ipv6, + * max-ecs-tree-size-ipv4, max-ecs-tree-size-ipv6, ipsecmod_hook, + * ipsecmod_whitelist. */ + return 0; + } + return 1; +} + +void config_print_func(char* line, void* arg) +{ + FILE* f = (FILE*)arg; + (void)fprintf(f, "%s\n", line); +} + +/** collate func arg */ +struct config_collate_arg { + /** list of result items */ + struct config_strlist_head list; + /** if a malloc error occurred, 0 is OK */ + int status; +}; + +void config_collate_func(char* line, void* arg) +{ *** 3407 LINES SKIPPED *** From nobody Sun Mar 17 10:11:28 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TyDKX3kFKz5CmqQ; Sun, 17 Mar 2024 10:11: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 4TyDKX304Qz4KFX; Sun, 17 Mar 2024 10:11:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710670288; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jMId3PiMSFVPXLu4/m9g0zRCnj8F1Zmxe/gFlBKczeo=; b=MJBODYSPLkC5bDSw4NEmjKoeOp/FGT1NDkOZ0mCiR7166Ey/1whof85emqe7UlM/VmxBt5 6SZQI5ThNgFJILKyP+k+Xi2xoYyB34/uhn3QyUeydaVqW8CzsCMK9wPg/MnkoYHJSeRYR/ lcXmt/rKKJT8F4by6/7agVMNl0IqEpOvpfztia0umaTVXFsI86rAd2htrNs6liRzxcQdcw q/FvCfT4JSUuoFiI7sX9pTbChVHlDfwyGqr1KZmD5i2f+Y3vmUCrr8ESrOTkxzlAVpzG9p 5kSot+LfmR8TwwD6tdfJ3nm7ug3FeCCVFgoxfJ+LsxbumUfaEPXxmzonvZvntg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710670288; a=rsa-sha256; cv=none; b=d7KvZuBtf9A3Zh4gouRVqFqKH2PmcbrzR01APIkzE5YHEHwdyIDaWPWodYVQCMiq/9nWDX 27oRw/mI9uA41ds65vz1S10D2lx9NmdALcvKzWFHMxpPfCKss6KWdQQUaAWo1w0FVgJSfv yJkxjFmGJ/X8AJ5tuz4BgBOMW7Y172OlzuJjcjCvSJdrOEh3yKR0v/8rBQGvvmStUWd0nW XsFt0Ki89VX5MfUzmDEwdjiRJOFRrWJnQoTk6RCQAFhlljKh09flYebp45zu/kRL3qS3rC z/9qs2q7C0RXj+13Lh/MlcyRBuJFEaqZv0YKkHPANU5SIPQzX4D2duYxUO8ARg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710670288; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=jMId3PiMSFVPXLu4/m9g0zRCnj8F1Zmxe/gFlBKczeo=; b=QIBhu9fg7l5Lt/piJSvkn049FebV4830YZiupf6AF8fhvC6QbqYT8ldszJYBcAfrLQgGwf 0sw3oV41jodERtZxP8NHsZoYmDWgVfqJfSNnarb9f7XpSeveRyy6vNC/0ZlEZCFfnSdX+2 0NG080ZO5j/NGlo4rXdw48UrWyrgm1XN7daZ+szCqHCsQ6fLTA2y/2xhTFj5ZxzLmMgZhE /eUBnocyc92RvhRIuYOik1QU1dbn4RFu6xkxn2qDx3tinATbk57UJAwA/sMRiqHVhnEJdJ VP29Zf+SeFcVTbP4QvLuMZj+WAzQRfNXDQrkfre5+i3nS7qtkjMAVgaazQw95g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TyDKX2bPWzbGh; Sun, 17 Mar 2024 10:11: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 42HABSJ8084596; Sun, 17 Mar 2024 10:11:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42HABSW5084593; Sun, 17 Mar 2024 10:11:28 GMT (envelope-from git) Date: Sun, 17 Mar 2024 10:11:28 GMT Message-Id: <202403171011.42HABSW5084593@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Dmitry Salychev Subject: git: 65eb09f9d550 - main - Add myself (dsl) to the calendar.freebsd List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dsl X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 65eb09f9d55033ca80336ee3ffd048d238297425 Auto-Submitted: auto-generated The branch main has been updated by dsl: URL: https://cgit.FreeBSD.org/src/commit/?id=65eb09f9d55033ca80336ee3ffd048d238297425 commit 65eb09f9d55033ca80336ee3ffd048d238297425 Author: Dmitry Salychev AuthorDate: 2024-03-17 10:09:52 +0000 Commit: Dmitry Salychev CommitDate: 2024-03-17 10:09:52 +0000 Add myself (dsl) to the calendar.freebsd --- usr.bin/calendar/calendars/calendar.freebsd | 1 + 1 file changed, 1 insertion(+) diff --git a/usr.bin/calendar/calendars/calendar.freebsd b/usr.bin/calendar/calendars/calendar.freebsd index 20813eb17e09..71371fea5c89 100644 --- a/usr.bin/calendar/calendars/calendar.freebsd +++ b/usr.bin/calendar/calendars/calendar.freebsd @@ -126,6 +126,7 @@ 03/17 Alexander Motin born in Simferopol, Ukraine, 1979 03/18 Koop Mast born in Dokkum, the Netherlands, 1981 03/19 Mikhail Teterin born in Kyiv, Ukraine, 1972 +03/19 Dmitry Salychev born in Sverdlovsk, Sverdlovskaya oblast, USSR, 1991 03/20 Joseph S. Atkinson born in Batesville, Arkansas, United States, 1977 03/20 Henrik Brix Andersen born in Aarhus, Denmark, 1978 03/20 MANTANI Nobutaka born in Hiroshima, Japan, 1978 From nobody Sun Mar 17 12:00:39 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TyGlp62Mfz5CymN; Sun, 17 Mar 2024 12:00:54 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4TyGln0sSkz4W8C; Sun, 17 Mar 2024 12:00:52 +0000 (UTC) (envelope-from kostikbel@gmail.com) Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=fail reason="No valid SPF, No valid DKIM" header.from=gmail.com (policy=none); spf=softfail (mx1.freebsd.org: 2001:470:d5e7:1::1 is neither permitted nor denied by domain of kostikbel@gmail.com) smtp.mailfrom=kostikbel@gmail.com Received: from tom.home (kib@localhost [127.0.0.1] (may be forged)) by kib.kiev.ua (8.18.1/8.18.1) with ESMTP id 42HC0dh8029821; Sun, 17 Mar 2024 14:00:42 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua 42HC0dh8029821 Received: (from kostik@localhost) by tom.home (8.18.1/8.18.1/Submit) id 42HC0dJ7029820; Sun, 17 Mar 2024 14:00:39 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Sun, 17 Mar 2024 14:00:39 +0200 From: Konstantin Belousov To: "David E. O'Brien" Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 87740ff2ace8 - main - diff(1) add FreeBSD HISTORY Message-ID: References: <202403152228.42FMSQIo056979@gitrepo.freebsd.org> List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202403152228.42FMSQIo056979@gitrepo.freebsd.org> X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FORGED_GMAIL_RCVD,FREEMAIL_FROM, NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=4.0.0 X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-14) on tom.home X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.62 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.62)[-0.621]; MIME_GOOD(-0.10)[text/plain]; DMARC_POLICY_SOFTFAIL(0.10)[gmail.com : No valid SPF, No valid DKIM,none]; ARC_NA(0.00)[]; ASN(0.00)[asn:6939, ipnet:2001:470::/32, country:US]; MIME_TRACE(0.00)[0:+]; MISSING_XM_UA(0.00)[]; FREEMAIL_FROM(0.00)[gmail.com]; TO_DN_SOME(0.00)[]; HAS_XAW(0.00)[]; R_DKIM_NA(0.00)[]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org,dev-commits-src-main@freebsd.org]; FROM_EQ_ENVFROM(0.00)[]; FROM_HAS_DN(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; RCVD_COUNT_TWO(0.00)[2]; TO_MATCH_ENVRCPT_ALL(0.00)[]; R_SPF_SOFTFAIL(0.00)[~all]; RCVD_TLS_LAST(0.00)[]; RCPT_COUNT_THREE(0.00)[4] X-Rspamd-Queue-Id: 4TyGln0sSkz4W8C On Fri, Mar 15, 2024 at 10:28:26PM +0000, David E. O'Brien wrote: > The branch main has been updated by obrien: > > URL: https://cgit.FreeBSD.org/src/commit/?id=87740ff2ace86bbf77820c04531507b59a1db17c > > commit 87740ff2ace86bbf77820c04531507b59a1db17c > Author: David E. O'Brien > AuthorDate: 2024-03-15 22:26:12 +0000 > Commit: David E. O'Brien > CommitDate: 2024-03-15 22:26:12 +0000 > > diff(1) add FreeBSD HISTORY > --- > usr.bin/diff/diff.1 | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/usr.bin/diff/diff.1 b/usr.bin/diff/diff.1 > index 6351c58114e0..29ee32cb8d2b 100644 > --- a/usr.bin/diff/diff.1 > +++ b/usr.bin/diff/diff.1 > @@ -748,3 +748,12 @@ A > .Nm > command appeared in > .At v6 . > +The > +.Nm > +implimentation in > +.Fx 1.0 > +until > +.Fx 11.4 > +was GNU diff. This was replaced in > +.Fx 12.0 > +by a BSD licensed diff implimentation. Some GNU'isms were lost in process. New sentences should start at the new line. From nobody Sun Mar 17 12:15:05 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TyH49325Bz5D12t; Sun, 17 Mar 2024 12:15: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 4TyH492CCzz4Xmv; Sun, 17 Mar 2024 12:15:05 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710677705; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iZahJsrvmsrqjwter2tnuh8UPfGpHg9VtMdaowltdj8=; b=HgYQn1aEcV0CEBO670JDChCyWLjqusFL04zjnsFqe3s/shirQR4trmZT6WK3BqIjXxEPwu 9w4N/SFTOmKik2kXAUwudJaCNxImtnfBSsk7MM5qq0O1UWFp66XnwhbpVqGKpjmZM2zM+i kqew0nLV6LHPoV/CNeomtBqwRwObax/TXv4r5MTGTbqHnNf9pgXiC407CPmRe2FUZoXwwf F3bs143qw1MtcAfUIOhGErv3wTPCDO8nCkY4WzV3vEl4EcEb1SRb1kBVqFkUNqvOo49EQM cpns9VJoEvxzQJ7xVAgLOIaztkL0E5Au1hyRb4Gehl4Fwhl8PxCJoTlK6GYBcQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710677705; a=rsa-sha256; cv=none; b=OMmREGwTapvdABOl4XfVejtES0adOeKSGjvrAfFkQZddbWdZwhczYA0XNPqDDIPpLn6dk/ X4PyKcxXX4r/xh+nEnZKyekWvH2N7NPyNVFpRzwymMD2ZnsBT42/W2VKwg+AvXsOM2lZwP IwB0p8y4pPPzxyonVKuqlUznsgfQKQNDJSI9RTPXadToHBEEHrqJbHMfqQo4cWwcXhedhy qjvlBMtlCnk7yAktPMpwHYthfSo01O84PXnEZvS+RRrYRdlibUu0zIKrEoKpISNb1GA480 XvQol28xeiHW3Oxiq5UCOwOvMz2ywTcuwRBRl8AymtN8atWJFPKnorkml0KUig== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710677705; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=iZahJsrvmsrqjwter2tnuh8UPfGpHg9VtMdaowltdj8=; b=QfYynGogxoT56VAqIzeHimCfK7AgeybLdlfZA4vSAT38JlTdVRf/WjrMazMjehAUvFnQDI p8r46/zwenIUtWawV+P87+VYCkUN6ioY0mWHx21+FFq83z538k773NUnL8jf1SfONv/UcX R0GSM7fGQUi7vTY1tt0nzknCKhbGT5KtuMOFXO+rXV/llOaN2LyFNPVkEmGv+E3v9tfS5C r7sqORk4f8kq4oum9SViXIsRbWPxI1fginPyWjNNOD/w2CLNRGJMMp8NPeC6uOIpCYm0Uz 5PIihuEc8nvMdA27YWX1jUTgBqlNCbnL3hmomSOEGNbXv+bo15xsKxAVTvQw6A== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TyH491pj0zf15; Sun, 17 Mar 2024 12:15: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 42HCF57j090848; Sun, 17 Mar 2024 12:15:05 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42HCF5gk090845; Sun, 17 Mar 2024 12:15:05 GMT (envelope-from git) Date: Sun, 17 Mar 2024 12:15:05 GMT Message-Id: <202403171215.42HCF5gk090845@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Ed Maste Subject: git: 1e4cd5ed54d7 - main - release: remove binutils package data List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 1e4cd5ed54d73dcb8e9af92990e7bf005b9a5710 Auto-Submitted: auto-generated The branch main has been updated by emaste: URL: https://cgit.FreeBSD.org/src/commit/?id=1e4cd5ed54d73dcb8e9af92990e7bf005b9a5710 commit 1e4cd5ed54d73dcb8e9af92990e7bf005b9a5710 Author: Ed Maste AuthorDate: 2024-03-17 12:09:31 +0000 Commit: Ed Maste CommitDate: 2024-03-17 12:11:57 +0000 release: remove binutils package data GDB was the final GNU binutils component included in the base system, but was removed in 2020. Nothing provides a pkgbase binutils package any longer. Fixes: 1c0ea326aa6d ("Retire obsolete GDB 6.1.1") Sponsored by: The FreeBSD Foundation --- release/packages/binutils.ucl | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/release/packages/binutils.ucl b/release/packages/binutils.ucl deleted file mode 100644 index ff2710862e03..000000000000 --- a/release/packages/binutils.ucl +++ /dev/null @@ -1,17 +0,0 @@ -# -# - -name = "%PKG_NAME_PREFIX%-%PKGNAME%" -origin = "base" -version = "%VERSION%" -comment = "%COMMENT%" -categories = [ base ] -maintainer = "%PKG_MAINTAINER%" -www = "%PKG_WWW%" -prefix = "/" -licenselogic = "single" -licenses = [ GPLv2 ] -desc = < To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Zhenlei Huang Subject: git: 4319ccae876a - main - Add myself (zlei) to the calendar List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: zlei X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 4319ccae876ad057698e2900ffdb94bf90ac554a Auto-Submitted: auto-generated The branch main has been updated by zlei: URL: https://cgit.FreeBSD.org/src/commit/?id=4319ccae876ad057698e2900ffdb94bf90ac554a commit 4319ccae876ad057698e2900ffdb94bf90ac554a Author: Zhenlei Huang AuthorDate: 2024-03-17 15:07:53 +0000 Commit: Zhenlei Huang CommitDate: 2024-03-17 15:07:53 +0000 Add myself (zlei) to the calendar Reminded by: mckusick --- usr.bin/calendar/calendars/calendar.freebsd | 1 + 1 file changed, 1 insertion(+) diff --git a/usr.bin/calendar/calendars/calendar.freebsd b/usr.bin/calendar/calendars/calendar.freebsd index 71371fea5c89..bd085661f576 100644 --- a/usr.bin/calendar/calendars/calendar.freebsd +++ b/usr.bin/calendar/calendars/calendar.freebsd @@ -423,6 +423,7 @@ 10/27 Takanori Watanabe born in Numazu, Shizuoka, Japan, 1972 10/30 Olli Hauer born in Sindelfingen, Germany, 1968 10/31 Taras Korenko born in Cherkasy region, Ukraine, 1980 +11/01 Zhenlei Huang born in Jingmen, Hubei, People's Republic of China, 1986 11/03 Ryan Stone born in Ottawa, Ontario, Canada, 1985 11/04 John Hixson born in Burlingame, California, United States, 1974 11/05 M. Warner Losh born in Kansas City, Kansas, United States, 1966 From nobody Sun Mar 17 15:26:51 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TyMKR5nCsz5DYs7; Sun, 17 Mar 2024 15:26: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 4TyMKR3YdRz4vtc; Sun, 17 Mar 2024 15:26:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710689211; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QwXI+V7qVdNgtSjImycdV5hZDRQ5+pNlqF8+y2HP1ZI=; b=ABp8Xeu4I4i7dO+B7AH1GHHfc4YKXEQ7rGzG1eCofizWkQnoodMz3Fe9N1vh98WH5nJFWP IwX4RUb4KPdCx0usCxeS1QzLCofE9YaesYu639FlO38Nb1I27Nkoy44L3pGhW3zRlCmTec BH7MEbDc6hGPE1Ry7yhOIU5XQsmZMfiyUKURzN/zUrpDT0QIUfXSyP0BLqszAEmlnBAS9X 6ObIt13HKEI0v6Kj/xw7DSj2vxOILKYa6ygyG44VIso9xntsth+h3tS8mjan4wJ7gDcjMY g7pnwcPIgjHOzVJdePJVEC1I7W3xv7L5bA2N1Dz47lrYXQdzaqdJHNQVuUk+0A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710689211; a=rsa-sha256; cv=none; b=Yq6DNgzoYi8SmLHoqfYT5jYjO4LuHnTXswGbewNV8Vd9rF4RAgfPIA00KOFW2z7mwlB4tB y49hQ5yBRPSN2BPTj6E6DgrOllIb6Lol/6JRVVDVqTd9zuHFYgC9F+/Vm35eUIXuJauVgw UV+HHempmcdOAUByRs5tLSLbMr5ch55PUMAkzgpCZJ8fXiv5pzCIBMfzXoWoZmImHEQNy5 GqCsFXqOCZdMiDvWxEDklZb4JJXCX1tJSHSfOWZt5cg6uhuDHv8U1/VuJxB9dUeDWj1TgM 9JldWCjPdBZp9pAyePKrO4CoJYp5vpneSL4wvt3KUn4LEfhrjItlSPPExL6CgQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710689211; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=QwXI+V7qVdNgtSjImycdV5hZDRQ5+pNlqF8+y2HP1ZI=; b=Zk+XbkevSOE8s/LAZmownmI82jnfnv6Go31DibfDoKEHgEpay5UbSxmaLaySrKbPdB39Wh 6HrzKSV+9oDGevrZz9b7hMcr3Gfm1jxPM1yF9HQKdOZrbiKwTJDxWk5+B7LZBC8yR5/xoP owUGm5YYRdp7S8UuFJQjW1i5CHCM6x0RebowuAL4AfqPsoOlj61OpZSJgqL/jiClDDiqtV Piq8mOO3h6u5LlH78KbddeV8tceEwfI4pExIldK+SUPxk6BcYorUXrVoy8EmLDw2Mz/tUG EMxy8F/BCpoOYkBT8tcByZGikq38njLP3Jnc55wm8ucEbMYDofPM4U3EX3GNhw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TyMKR39RGzkJn; Sun, 17 Mar 2024 15:26: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 42HFQpAi014666; Sun, 17 Mar 2024 15:26:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42HFQpik014663; Sun, 17 Mar 2024 15:26:51 GMT (envelope-from git) Date: Sun, 17 Mar 2024 15:26:51 GMT Message-Id: <202403171526.42HFQpik014663@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: 4187a7dbbe79 - stable/13 - ping: Fix protocol selection with NOINET6 kernel. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 4187a7dbbe793cffaef2399b42aa557f21aa750b Auto-Submitted: auto-generated The branch stable/13 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=4187a7dbbe793cffaef2399b42aa557f21aa750b commit 4187a7dbbe793cffaef2399b42aa557f21aa750b Author: Dag-Erling Smørgrav AuthorDate: 2024-03-12 19:40:36 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-03-17 14:37:59 +0000 ping: Fix protocol selection with NOINET6 kernel. A missing else caused the correct resolver hint (AF_INET) to be overwritten with AF_UNSPEC when the kernel supports IPv4 but not IPv6. MFC after: 3 days PR: 277592 Sponsored by: NetApp, Inc. Sponsored by: Klara, Inc. Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D44304 (cherry picked from commit b53ae8a8333d730bb977276c511743b98c881423) --- sbin/ping/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/ping/main.c b/sbin/ping/main.c index 2e2d3170fd13..c91959e35634 100644 --- a/sbin/ping/main.c +++ b/sbin/ping/main.c @@ -126,7 +126,7 @@ main(int argc, char *argv[]) hints.ai_socktype = SOCK_RAW; if (feature_present("inet") && !feature_present("inet6")) hints.ai_family = AF_INET; - if (feature_present("inet6") && !feature_present("inet")) + else if (feature_present("inet6") && !feature_present("inet")) hints.ai_family = AF_INET6; else hints.ai_family = AF_UNSPEC; From nobody Sun Mar 17 15:26:55 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TyMKW4sLsz5DZP1; Sun, 17 Mar 2024 15:26: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 4TyMKW4RQFz3wsd; Sun, 17 Mar 2024 15:26:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710689215; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u+3hPU9tpJfYVczA1xTTRVwix+9ePYY45caASqjfeq8=; b=MgB5NpYeod9momX4CpRZfe8QxuKCxlXyUr2Qnr7EbvzL7+2FuLs5fouZ195nIcMCPNQ2DO nnizy4cI24vXVEy39nvqfSO+Fvm8jv5ZMMT0dwKOqHzWFmhkMY6gYCXJWJmFUZ/g+SFDcd g7zFTY3kMoSiHlbbeozPzDi34XFea6Yi23CyFve93dh+uFIC9nxmyeORA282cQg3ZgY71t hWKYA9LwCM0/hg+sBTmJk7oghZGNst0feNWF8YdqJke2GbPN11L8jLb0KGcvJPlWhLqgLW HztvU0CgP06bcKvsHvuI4gNyARj49+lsqSTuyDyvrhfn+RKMNFD2LJIx4O06MA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710689215; a=rsa-sha256; cv=none; b=wAcRhv38mK7RSIkaF9AqslhaeE+OwpTdu/rpCq85m0OzbXpEXO/P/ShnCl9WLv+6S/rtGg L4DCStqfIVeRuf8D6ETR1RELAM6ZzabAvURRBaY7JKdqGegKnLRUAONkX1CxLCW0/lw21B 0gkUQMy5hc3nJGcKxJxT5o0CYju4Da7oXhXz/fRpyF0s+ke6fVM5rmFcguqiA8XIWYgRB9 brtth3Z95f6lrVvVFdBQdWrDbOgiNUTY17D3g/MnNkh4M+ZszPfDKAJDkPzpsUY7UeXsc7 0BfqRRpO9D92609x7QGJQHkhk+jL+MG23ADqMD6Vo0owOTnTJCIBftUfB9xOfw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710689215; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=u+3hPU9tpJfYVczA1xTTRVwix+9ePYY45caASqjfeq8=; b=E5fc4RIzAhwzQvBpJWwZfzU9w4u8rvyfJb+aujGpCnhuMCuXad+oRM5k7nh77J/Yl8r4m2 K7gYsUmPvrg52tu0P1KPM9xbmBXzUXbB/0tn+ipkJgFcI6Ouf57a6rdoJpstwLlGJT6+YD boXkqCLNImNAAIT7h53uGRju6OVgQCbytYisr3o4o7unKcbDUkLDK+hwrjuIxN912QCfrB rWgeGLUgOvxKKiH6cm8/WbHhWjGMYftFscqqbmjs21WnbByCPE9j6x+d/0n+VObiDk4dbP ioGJwb2xi7dJsBBveb41YyoChiz8ZifMOnCYyvPPV2W45u2JeAfCIA3VNxj1wg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TyMKW3wsBzkbB; Sun, 17 Mar 2024 15:26: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 42HFQtfk014825; Sun, 17 Mar 2024 15:26:55 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42HFQtdm014822; Sun, 17 Mar 2024 15:26:55 GMT (envelope-from git) Date: Sun, 17 Mar 2024 15:26:55 GMT Message-Id: <202403171526.42HFQtdm014822@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dag-Erling =?utf-8?Q?Sm=C3=B8rgrav?= Subject: git: c3f4736f049c - stable/14 - ping: Fix protocol selection with NOINET6 kernel. List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/stable/14 X-Git-Reftype: branch X-Git-Commit: c3f4736f049cc469f081a5879097e391a56c728b Auto-Submitted: auto-generated The branch stable/14 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=c3f4736f049cc469f081a5879097e391a56c728b commit c3f4736f049cc469f081a5879097e391a56c728b Author: Dag-Erling Smørgrav AuthorDate: 2024-03-12 19:40:36 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2024-03-17 14:38:12 +0000 ping: Fix protocol selection with NOINET6 kernel. A missing else caused the correct resolver hint (AF_INET) to be overwritten with AF_UNSPEC when the kernel supports IPv4 but not IPv6. MFC after: 3 days PR: 277592 Sponsored by: NetApp, Inc. Sponsored by: Klara, Inc. Reviewed by: allanjude Differential Revision: https://reviews.freebsd.org/D44304 (cherry picked from commit b53ae8a8333d730bb977276c511743b98c881423) --- sbin/ping/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sbin/ping/main.c b/sbin/ping/main.c index 65896a5dba7b..eb8065cf8309 100644 --- a/sbin/ping/main.c +++ b/sbin/ping/main.c @@ -150,7 +150,7 @@ main(int argc, char *argv[]) hints.ai_socktype = SOCK_RAW; if (feature_present("inet") && !feature_present("inet6")) hints.ai_family = AF_INET; - if (feature_present("inet6") && !feature_present("inet")) + else if (feature_present("inet6") && !feature_present("inet")) hints.ai_family = AF_INET6; else hints.ai_family = AF_UNSPEC; From nobody Sun Mar 17 15:54:35 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TyMxR40sgz5DdSl; Sun, 17 Mar 2024 15:54: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 4TyMxR31Zcz44J1; Sun, 17 Mar 2024 15:54:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710690875; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=y+207ENTlLuHhogzsYJq4thRCix8o7UJ53VjjekJ8XA=; b=CtAqPuSaEufYtoUmZypHNKYqEFM3AgKln/we9W2aFWDTrPBFMz6JHfUOdaLKVpJJwvy2wJ WZT/BVcs93gB2LTwyHUhMIb+eqFW4dZ8iPTOTW1wSuFAw6liS0Y68/hE7k87n2SUs55CKS YzsyOpKKMSCaoaOEh+N/1dbLn71UOlk/4dl6fS8pAM5iHcfU/nEWgF16IaoUZi9iJhcJ73 edO02oSHdSUUEGQ4A2kYHbF9BBjYhWYR2Zyqx4CLHN+4qZ1aJB2FIv9yeUVk2PplgOQ47/ XCE7PENrrJxnO5CdNy2r0Eid8vgGFsPSciYhEa6bKOy8AuzfmSxnNs7ONZZ47Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710690875; a=rsa-sha256; cv=none; b=fLUhbc9Rg0Cqf7ahDM5sR9W0K6to1mRI1VQh8C+R7r+7Dzbxd6DWKNERQZuJlTRksehqck tH164NkniKzM1hrKiO18DT8muQAXG8SIAj3c3F2dEpXJnzvGZSSSifJo5WelhTRti8Rg3e 608Txp4zIprwq2OQlvib6jaT/XadHECqie9lT7Tg7hiCDgzDENLWy9R+xgLiqmUJY8GNzE RsTx3D5sLv56C9LQ39KIyRx2XsSgEhgytrNezALdf/MgQlTZMfPJnQ2TeCvscJCt9jtTXn Yur8waiS5Req1PG85G5HRrICEqrTCHtwxGnp/RXhJtI4zbUPDv51H4mkxc8XtA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710690875; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=y+207ENTlLuHhogzsYJq4thRCix8o7UJ53VjjekJ8XA=; b=VuptCnVF8tI+6b9u3Ylp4S5Cn5vXMbvzSSTeRWTSZNN+hnHdzQ9cQdF3ORuH57A8LvWKI2 zUR5chYfuPjNCNs8nm77eZjECPjqOgMw2KZSLmWiUI5k4znHbOCCgcyqx4LT+vgYLM002B aHoO0nHd+bw8qq+N+DpSIdhbwr9yC52mtzR5F1M2Q+3MK2oOT1R2s4t0THUAYuUz6xGthn e3ekF5Y+ESN1303qY2LnUwVPh4rJ7uCk1//qZvtw7f4JDuhwb+zJq2DRaNQ6ZjuV+lcJPr uZYP4iriMb/LlS1/VOgFDXVxdmqGcc68M5z96ndBxZx6ksCGeJqwj+YfVpTOag== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TyMxR2cWwzlhl; Sun, 17 Mar 2024 15:54: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 42HFsZSr065157; Sun, 17 Mar 2024 15:54:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42HFsZqp065154; Sun, 17 Mar 2024 15:54:35 GMT (envelope-from git) Date: Sun, 17 Mar 2024 15:54:35 GMT Message-Id: <202403171554.42HFsZqp065154@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Vladimir Druzenko Subject: git: 228fc43bcf4f - main - Add myself (vvd) to the calendar List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: vvd X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 228fc43bcf4f108fd6e031ba91254c90118d1a87 Auto-Submitted: auto-generated The branch main has been updated by vvd: URL: https://cgit.FreeBSD.org/src/commit/?id=228fc43bcf4f108fd6e031ba91254c90118d1a87 commit 228fc43bcf4f108fd6e031ba91254c90118d1a87 Author: Vladimir Druzenko AuthorDate: 2024-03-17 15:53:07 +0000 Commit: Vladimir Druzenko CommitDate: 2024-03-17 15:53:07 +0000 Add myself (vvd) to the calendar Reported by: mckusick Approved by: mckusick --- usr.bin/calendar/calendars/calendar.freebsd | 1 + 1 file changed, 1 insertion(+) diff --git a/usr.bin/calendar/calendars/calendar.freebsd b/usr.bin/calendar/calendars/calendar.freebsd index bd085661f576..ad6ff7277b80 100644 --- a/usr.bin/calendar/calendars/calendar.freebsd +++ b/usr.bin/calendar/calendars/calendar.freebsd @@ -411,6 +411,7 @@ 10/20 Dmitry Marakasov born in Moscow, Russian Federation, 1984 10/21 Ben Smithurst born in Sheffield, South Yorkshire, United Kingdom, 1981 10/21 Daniel Ebdrup Jensen born in Aalborg, Denmark, 19XX +10/21 Vladimir Vladimirovich Druzenko born in Kishinev, USSR, 1979 10/22 Jean-Sebastien Pedron born in Redon, Ille-et-Vilaine, France, 1980 10/23 Mario Sergio Fujikawa Ferreira born in Brasilia, Distrito Federal, Brazil, 1976 10/23 Romain Tartière born in Clermont-Ferrand, France, 1984 From nobody Sun Mar 17 17:48:45 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TyQTB138pz5DpR0 for ; Sun, 17 Mar 2024 17:48: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 4TyQTB0Tvhz4JRN; Sun, 17 Mar 2024 17:48:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710697726; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Q/th72RYedU3d1bYKp/h+VzaeFT/262tNYB1BtMvPuI=; b=nMrGqMA14HPXOPjvJGlb/hnyt9TVp09zPImV/KfyU6Fcy9SMtaBIfh9Nqal2N11xKHD87G Vn/sx8J3YCcedsYWWqy67W/ezqfoOwKIKrXeejc9+wWGJ04mxt+b8OF2/cQe5Y7ESoZYth h6IOowlgu9aLHUWcBak76yT2DaexsgD310BeiSnpNxJr3W8lMrJwckdkUW2JPqn2pfLmfO rMD39hlmIGCEY9+unZb4bBow8pwM8U8Eb2kULyIr0qpXT4Gunlfj4F5b3a28Mm8bHmULxm dAGfvv9C5qhnKoaV7bJIWZvQSCugAb2YqHjPb1rfo6Bwb1b3rLPJrj3zju1FEg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710697726; a=rsa-sha256; cv=none; b=Ys233iWhTvo0ln5Wel8BZSvWi+FZV6BY1lLGi15Towz2V9KwVtrW0iaoLrF2OY1Eu0VceO XeK/OVF+qxs1uqbV9lZ3WcC7VZl7qOnP55nglM2sJ4MDQa6KJerpVdaZiod49xSAwAmYf9 PrLB65IVTX5wYORit6SRyi2uAszj4WUlGGVS++N1RBm19t1+86+utxgLqI4Rk33FKKrj4Y azUBx4bywzfdyCS8MAspH52fXhy5NcaE6I0AJd7rfgVLJxLMVOeF98bJOKj2gGPjBU+LUK P1rAA/u+DSk50HZ9zYfH7cQcs0Hjksoz9BgWprxY+RQTTs8ch44HGojmJUGs6Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710697726; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=Q/th72RYedU3d1bYKp/h+VzaeFT/262tNYB1BtMvPuI=; b=h7UbnB6Secf2llyAGgg5klDMbML3ICcrW7l9JS2I5k0Efm/xBwitIyqJK3fAN0CPeXBLAB xcpKuhNhMuJL4mBJ81TAp1PUlTFejsbN2Q3PFnOrnmeZa2+KiIyhMAhatLYw/iAayY2/oT 2L2cumxXBlgqnG1IBEjxYGZpVR+F6581Oy+sOkCTIPYzB3+sXP/09CNtQWA2IMd1pQwpJ/ oCnKCgbyyTXO9tPWKEYpOEdoLipaW5cHlGsMnZEkdu0RENr1gNvbBepjTx6hx1Qhou87P1 sX5xT/ql5hsO/VgoKP1IdQC40r7/duPGZdlYX4woDpbqW/d/mqaIeiYKvsiutQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TyQT96mm1zpGc; Sun, 17 Mar 2024 17:48: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 42HHmj0r051393; Sun, 17 Mar 2024 17:48:45 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42HHmj8C051392; Sun, 17 Mar 2024 17:48:45 GMT (envelope-from git) Date: Sun, 17 Mar 2024 17:48:45 GMT Message-Id: <202403171748.42HHmj8C051392@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: Ed Maste Subject: git: 38f55691cb1b..9200ce3210fd - vendor/openssh - vendor branch updated List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/heads/vendor/openssh X-Git-Reftype: branch X-Git-Commit: 9200ce3210fdc00706904d2eb2d8a481ed84eef3 X-Git-Oldrev: 38f55691cb1b1029d9daac42fc5b6b1850eb19c3 X-Git-Newrev: 9200ce3210fdc00706904d2eb2d8a481ed84eef3 Auto-Submitted: auto-generated The branch vendor/openssh has been updated by emaste: URL: https://cgit.FreeBSD.org/src/log/?id=38f55691cb1b..9200ce3210fd 9200ce3210fd Vendor import of OpenSSH 9.7p1 From nobody Sun Mar 17 17:48:51 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TyQTH6Dt6z5Dp66 for ; Sun, 17 Mar 2024 17:48: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 4TyQTH5Pdgz4JZn; Sun, 17 Mar 2024 17:48:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710697731; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zf5nhpkW6uZJASj7/OsU9shwgJY2mF3yAhJVd2EXZbU=; b=TUo1xae9ZLtOUWOxCMI4c/9QnnASFlRxbh+tWHLKk04jITgN/DhsRYntU0vWZHZ02YbRUC XdcFLBfM5ZA7FTBYKyY2zGrHRWtdlZgvFftUplPCbTTJK507kexwMKvI6XOn8zIo0qzSAH Bmv+95jbmsmmU/TclcUohtKxM9Njnp+Qaa89CmAu6n+zEyHu2Ax8KjIEGO83z6Q42NeuoG TDCvOUegHCKjS2Awj0R5BMxuRAq74b+kM0FP4VR8L/ad5sxLNdA9fj2ABtkeK1+vQEzNRL ySkclABOY00GOMj22eg4WZ1v+RZZLvOEhu/RDjiQUz5W37KjyxLvcQ9D0lxSiw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710697731; a=rsa-sha256; cv=none; b=S1HWjS+RufVPHJ7O4LbMh9peuuNk7hnZ8+ZWjFLcfmL24lyLasGUn5tWfW/4K/pROxPP3o 5Ey1gUd2ci4KGE1hDy70j5cJexJ26rMgORUEjdK7WJ/g8qA5aBMtXKDUSg9+N0BIU1CG7g o+vB22S1uL8CteX4YVru0Rvm7yaxe+XgFJjN2Cox9Trjmddv7Nm3Up0tg8a0II8r0gZi8Q WgIfH5kQJgGnB6O0kFgaGFA7Kj1MzzahxiMAaKpcBIXp37FrQM3otxt72SBjiw3gXv7rHh 6zyNKoxPwEZR4cf5dbPGJ93huatQMwidMZqeNBbUTAbbRXYsfg4sd6yviE3RFg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710697731; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zf5nhpkW6uZJASj7/OsU9shwgJY2mF3yAhJVd2EXZbU=; b=UPvMqISu/xsC4xmCWNSfccUwtuwnkLXXyKnT/J4E+twrHs/xu3CjvMS1UFuLTg5kd4UwGT JvFwLNnBI1a93qzvdjcOCY0h3cZWnY4vYiRr0+dhnDn+METwhKEYIDll3R2pwN3qBda28l AYIOIV9r0pb5Nrh82eEJ1XXhDnAPg87Wx+MmZymYAUtB+w5ffWRGiYS5Ov2ySXdO3xkVvg hphY2BZ7UBVC9oMeg/VKFl6px/ZzpbW/tXjapcQgPy8kUmbgk7lR2Z081oOZpxgwzX88iF UkGSEVWfSqkb/8vIYcMnv36Dd9BepKgEeOydwqPuvrRuEOgqbcoNf4YdKc5I5w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TyQTH50MnzpCx; Sun, 17 Mar 2024 17:48: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 42HHmpm3051514; Sun, 17 Mar 2024 17:48:51 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42HHmp07051513; Sun, 17 Mar 2024 17:48:51 GMT (envelope-from git) Date: Sun, 17 Mar 2024 17:48:51 GMT Message-Id: <202403171748.42HHmp07051513@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org From: Ed Maste Subject: git: b8c1cfbc5020 - Create tag vendor/openssh/9.7p1 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: emaste X-Git-Repository: src X-Git-Refname: refs/tags/vendor/openssh/9.7p1 X-Git-Reftype: annotated tag X-Git-Commit: b8c1cfbc502034fbf4b73b1d71266b377f8a0bd1 Auto-Submitted: auto-generated The annotated tag vendor/openssh/9.7p1 has been created by emaste: URL: https://cgit.FreeBSD.org/src/tag/?h=vendor/openssh/9.7p1 tag vendor/openssh/9.7p1 Tagger: Ed Maste TaggerDate: 2024-03-17 17:47:22 +0000 Tag OpenSSH 9.7p1 commit 9200ce3210fdc00706904d2eb2d8a481ed84eef3 Author: Ed Maste AuthorDate: 2024-03-17 17:47:10 +0000 Commit: Ed Maste CommitDate: 2024-03-17 17:47:10 +0000 Vendor import of OpenSSH 9.7p1 From nobody Sun Mar 17 22:35:19 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TyXqq3L5Pz5F2tM; Sun, 17 Mar 2024 22:35:19 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TyXqq2X8pz4rtd; Sun, 17 Mar 2024 22:35:19 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710714919; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DIAl03QYIzdz++3YOg31d9F/0GzqwUM7owymIb6Wfqw=; b=Y6/wRKwKNdbDWnUM4CqqXbzVI3NaHUn2dacSuDaNhn5vRb+8jvNptvQPGOCwSjxzvB33Mg 39DKvLmB28mUkgeJtz4cqpfnCdAV4rVYIhVMcUnkkYY+IWqzpIaaeNAQL9zDzL8xzzBes8 jzFOyKjuzT/f5P+lRgsUWy03H7yJQ5/lwn7X5Gf+cTlOv3CZ0226wSHx02t5Qaclw/nK43 Mgmwfdi2qr+qx5uKm9d2cXYgXvWKiluHk9UCboAQfL2sWNoTYdyXJfC66TI4LvNeRKeEs/ VPKI1USYGopScon1Pcd/1DYvyACPCBwZsrtnwFpMULoiQhtRBJCXCvSUSE4b4A== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710714919; a=rsa-sha256; cv=none; b=Ktc+XWPcLl0DNQIM8UeecLU4KTPYOwkjRe+J8UtjFUgfTg6Y1WGr6HfZ3cT9fEobUkWINM o4cLXeRezGT35bfvtGTWGHICcnB8+VN51eG+kO/PcAacgUiNmV2rsxM32yVY4+AMH3QUPK +rae/wYMPM56uvUlMuNDkNWMbN88SpWOp3DmmvyUC9P8LxKP86dkUjKuwWSW0DNxOimNHK tv6m7jFvdD9SEKj9DVTwNSDq/pvyIIzvV/nHK+RPsZLvg5acGs0rDyH2XY9VGqF6rUwpq8 d2EFVkXSNNFSSaEaKZdJSvVbAg9qwV8Gm4KuV+dvZ9Jo9Pu4c0X00zyME5uUiw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710714919; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DIAl03QYIzdz++3YOg31d9F/0GzqwUM7owymIb6Wfqw=; b=b4u8YWLAowbTc/xAB4mHE2PK23NH3fmTQj2Kry23fIA4K/e+WlC2WYfj5NQMgPggByiugM M3f15vFf2yyhKvl7SIH6eR8JdkAujt/x56JQ8DDNKbU1BUoLUtt9cfTE2yko4J5Yd38UdT 9eTAZHXwyGy7zgAfV81MxARocP21D0uRWIo9rFxhbBP76vli35guXdFmEe7VBvnJOoUKFF +GW948RGimoBX+lCeKOiWUM+v4mGe8qnhe4vq9njcSlwTyRKwnCr9Rs9rEpoPZzs4KInwJ J8a5En/LZuVyCFM6PVXluKnc7BKyhX3jrjush+qT2jAPiLc0eYI2E3hCnhIhcQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TyXqq27Ymzwqp; Sun, 17 Mar 2024 22:35: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 42HMZJXH040502; Sun, 17 Mar 2024 22:35:19 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42HMZJmX040499; Sun, 17 Mar 2024 22:35:19 GMT (envelope-from git) Date: Sun, 17 Mar 2024 22:35:19 GMT Message-Id: <202403172235.42HMZJmX040499@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Neel Chauhan Subject: git: f526590a78c1 - main - Add myself (nc) to the calendar List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: nc X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f526590a78c1529d078f7845ffa54bf3b885719c Auto-Submitted: auto-generated The branch main has been updated by nc: URL: https://cgit.FreeBSD.org/src/commit/?id=f526590a78c1529d078f7845ffa54bf3b885719c commit f526590a78c1529d078f7845ffa54bf3b885719c Author: Neel Chauhan AuthorDate: 2024-03-17 22:34:59 +0000 Commit: Neel Chauhan CommitDate: 2024-03-17 22:34:59 +0000 Add myself (nc) to the calendar Reminded by: mckusick --- usr.bin/calendar/calendars/calendar.freebsd | 1 + 1 file changed, 1 insertion(+) diff --git a/usr.bin/calendar/calendars/calendar.freebsd b/usr.bin/calendar/calendars/calendar.freebsd index ad6ff7277b80..fe4f7cb285a8 100644 --- a/usr.bin/calendar/calendars/calendar.freebsd +++ b/usr.bin/calendar/calendars/calendar.freebsd @@ -140,6 +140,7 @@ 03/26 Jonathan Anderson born in Ottawa, Ontario, Canada, 1983 03/27 Josef El-Rayes born in Linz, Austria, 1982 03/28 Sean C. Farley born in Indianapolis, Indiana, United States, 1970 +03/29 Neel Chauhan born in Williamsville, New York, United States, 1997 03/29 Dave Cottlehuber born in Christchurch, New Zealand, 1973 03/29 Thierry Thomas born in Luxeuil les Bains, France, 1961 03/30 Po-Chuan Hsieh born in Taipei, Taiwan, Republic of China, 1978 From nobody Sun Mar 17 23:11:44 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TyYdr5kxRz5F5VZ; Sun, 17 Mar 2024 23:11: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 4TyYdr5By0z4vRd; Sun, 17 Mar 2024 23:11:44 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710717104; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gSaaiZp6s/HwdAUM1Nwuogs1gbsnr8T9+YhQVOsWSKI=; b=uZubnslkvrUm+ibGcL7XvJ3LzQVi8UU3I6U0HkvGAqrARG7Fc/yc+MDlpo3OlzQiy+k9wH VIPp4xCO3KXqumTu+GU3jm1sVKvVyOD38AMmdylbRbYCBsr0v9qkJFPVFh+5qtZzoHZBRK OFwVmTBY3UCwffWjW799bqofYx3Xsw6jl1vBIPb1Zkh4FtUgX6w7j+avtKdlE01QmKXE3Z ksqTV2ld1KimRDo7RAVDhUZ3S+pUbT3dFFKhDF5p1gQ0959QVJZ1JozCdN0iQGOj+nbD3c 6xA2FWXL+ugoNjftSEF62GOJSh1MBOJ9z+6OIiUgTOQPFXJEpipiM6Yt7wK4sw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710717104; a=rsa-sha256; cv=none; b=hcXmChACBJA1b2UAtkdTTQoK5M2VEeqIu7mJEvjajJjfL1KDtGJrAv4UDg51BiYq2y8Hx7 2fwF4rJewNy0/7ffwk8PSh/jhT2ztlksojpxbHwfbtaA3Fvej8gdfTGpi1fyZKcBPxZfQt 3znLz3PoXRr859e8fdJnoGPM48d2YQV5d8rqq4fdp2u3uTpqcvqpmkhfQFXBvJDI+vw10n YAQn7FcJMzCapNPLMH57BAjd6d+X2saDyzQdv8CDsMA7las2521I5pPdYNcdZmyeX7GiLP SvpJPxUOExEn0IyMobS+Prj+aMkDJCJQPKV4JVg3sbVht4ZORVmvUEtQFmiH6Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710717104; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=gSaaiZp6s/HwdAUM1Nwuogs1gbsnr8T9+YhQVOsWSKI=; b=WXaPv+hKuQULh7es+5ISRugSXIzy6b8pDcy4SVehS1OKD2MeqjCxcgjO6K8pRXFCTC1bED 6e7dNRlFUoNL1z4DECAUw+3tkz3393nwvV9SLIT4T/9cc2VQoQxexhzfTqCnANPvz63BjS 3v2UAVPGuaTPcC0q8Gm3lV72iI4JG9tFlHXhRXONPrGZ7CB8/4MH5Sp8vF2p6NwIwNZ3x6 J9yUE7XHMcUykcGQLgqMFjxzZJ/z1WSLHOfjQenfNJNBqqpTJGgl7TPABkJG4TuxBH7Guj XhFR5u0iOrho0Aslaj5a0FhILREiRT7RAB75xjG35xV4J8aQ41wJQbr+kCoGxA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TyYdr4pcLzy4b; Sun, 17 Mar 2024 23:11: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 42HNBiiA006591; Sun, 17 Mar 2024 23:11:44 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42HNBiEt006588; Sun, 17 Mar 2024 23:11:44 GMT (envelope-from git) Date: Sun, 17 Mar 2024 23:11:44 GMT Message-Id: <202403172311.42HNBiEt006588@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Jake Freeland Subject: git: 04473cfc4d07 - main - Add myself (jfree) to calendar.freebsd List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jfree X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 04473cfc4d07815cd286900327219dad45923dc2 Auto-Submitted: auto-generated The branch main has been updated by jfree: URL: https://cgit.FreeBSD.org/src/commit/?id=04473cfc4d07815cd286900327219dad45923dc2 commit 04473cfc4d07815cd286900327219dad45923dc2 Author: Jake Freeland AuthorDate: 2024-03-17 22:41:26 +0000 Commit: Jake Freeland CommitDate: 2024-03-17 23:10:42 +0000 Add myself (jfree) to calendar.freebsd Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D44400 --- usr.bin/calendar/calendars/calendar.freebsd | 1 + 1 file changed, 1 insertion(+) diff --git a/usr.bin/calendar/calendars/calendar.freebsd b/usr.bin/calendar/calendars/calendar.freebsd index fe4f7cb285a8..59945b13daa2 100644 --- a/usr.bin/calendar/calendars/calendar.freebsd +++ b/usr.bin/calendar/calendars/calendar.freebsd @@ -275,6 +275,7 @@ 07/02 Vasil Venelinov Dimov born in Shumen, Bulgaria, 1982 07/04 Motoyuki Konno born in Musashino, Tokyo, Japan, 1969 07/04 Florent Thoumie born in Montmorency, Val d'Oise, France, 1982 +07/04 Jake Freeland born in St. Paul, Minnesota, United States, 2003 07/05 Olivier Cochard-Labbe born in Brest, France, 1977 07/05 Sergey Kandaurov born in Gubkin, Russian Federation, 1985 07/07 Andrew Thompson born in Lower Hutt, Wellington, New Zealand, 1979